想要在日志猫中获取当前视频持续时间.使用外线玩家



我想获取视频的当前持续时间。我正在使用ExoPlayer(Exoplayer用于播放视频,它是一个视频播放器(,我想显示当前的视频播放持续时间。方法getCurrentDuration((用于获取视频的当前持续时间,因此我想在日志中获取该持续时间。这就是为什么我像这样编码,但它没有提供正确的持续时间。我希望在播放视频时,搜索栏上显示的当前持续时间也应该显示在日志中。

for (long x=0;x<10000000;x++){
long position = mPlayer.getCurrentPosition();
Log.d(">>>>AdPopUp", Long.toString(position));

有一种方法:

private PlayerView videoView;
Log.i("video_duration", 
((TextView)videoView.findViewById(R.id.exo_duration)).getText().toString());

切记不要立即打电话。它将返回 00:00,而不是在具有 postDelayed(可运行,长毫秒(的处理程序中使用它,如下所示:

videoView.postDelayed(new Runnable() {
@Override
public void run() {
Log.i("video_duration", 
((TextView)videoView.findViewById(R.id.exo_duration)).getText().toString());
}
}, 2000);

但是,您可以使用 MediaMetadataRetriever:

MediaMetadataRetriever retriever = new MediaMetadataRetriever();
try {
     retriever.setDataSource(mContext, Uri.fromFile(file));
     String time = retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION);
     } catch (Exception ignored) {
    } finally {
        retriever.release();
    }

最新更新