1

所以,我正在使用这个简单的代码行:

public static boolean checkIfAudioFileIsValid(String filePath) {
    MediaMetadataRetriever retriever = new MediaMetadataRetriever();
    long duration;
    try {
        retriever.setDataSource(filePath);
        duration = Long.parseLong(retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION));
    } catch (Exception e ) {
        return false;
    }
    return duration > 1000;
}

所以我正在检查文件是否有效并且它的持续时间超过一秒。在大多数情况下它工作正常,但如果文件为空或持续时间低于 400 毫秒,我将得到相同的常量值1520

是否有人过期了这个问题并找到了解决方法?

4

0 回答 0