12

MediaMetadataRetrieverAndroid を使用して、録画したビデオの長さを mp4 形式で取得しようとしていますが、例外が発生しています。

07-13 13:54:32.686: E/AndroidRuntime(19790): FATAL EXCEPTION: main
07-13 13:54:32.686: E/AndroidRuntime(19790): java.lang.RuntimeException: setDataSource failed: status = 0x80000000

私のコードは次のとおりです。

MediaMetadataRetriever retriever = new MediaMetadataRetriever();
            retriever.setDataSource(video.getMediaUrl());
            String time = retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION);
            long timeInmillisec = Long.parseLong(time);

video.getMediaUrl()パスは次のようになります。

file:///storage/emulated/0/Foldername/Videos/VID_20130713_135318.mp4

私は何が間違っているのかわかりません - 誰か助けてください! また、このコードはオーディオ ファイルでは正常に機能しますが、ビデオでは機能しません。

4

4 に答える 4

3

setDataSourceメソッドに渡す前に、ビデオ URI からfile://を削除します。

于 2015-09-23T19:27:10.113 に答える