java.io.IOException:setdatasource сбой, состояние = 0xFFF

Я пытаюсь получить продолжительность файла.amr с помощью MediaMetadataRetriever.Bur Каждый раз, когда я использую, он выдает ошибку. Ниже приведен код для расчета длительности. Но это дает ошибку в SETDATASOURCE.newfile - файл, который я создал во время выполнения.

MediaMetadataRetriever mmr = new MediaMetadataRetriever();
            mmr.setDataSource(newfile.toString());
            int duration =  
Integer.parseInt(mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION));


            int durSec = duration;
            durSec = durSec/1000;
            int durHour = durSec/3600;
            durSec = durSec%3600;
            int durMin = durSec/60;
            durSec = durSec%60;
            String Time = durHour+":"+durMin+":"+durSec;
            tv_duration.setText(""+Time);
            mmr.release();

1 ответ

Решение

Я не думаю, что вы хотите "newFile.toString()", попробуйте использовать java.io.File.getAbsolutePath (). Я не уверен, что такое "newFile", поэтому я хватаюсь за это. .toString() будет использовать метод для объекта, который не обязательно обеспечивает краткий путь.

Другие вопросы по тегам