Android 根据视频网络地址获取视频的分辨率
要根据视频网络地址获取视频的分辨率,可以使用Android中的MediaPlayer类来实现。具体步骤如下:
-
创建一个MediaPlayer对象:
MediaPlayer mediaPlayer = new MediaPlayer(); -
设置视频源:
mediaPlayer.setDataSource(videoUrl);其中videoUrl是视频的网络地址。 -
异步准备MediaPlayer:
mediaPlayer.prepareAsync(); -
设置MediaPlayer的准备监听器,监听MediaPlayer的准备完成事件:
mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { @Override public void onPrepared(MediaPlayer mp) { int videoWidth = mp.getVideoWidth(); int videoHeight = mp.getVideoHeight(); // 在这里可以获取到视频的分辨率 } }); -
在监听器中,可以通过调用MediaPlayer的getVideoWidth()和getVideoHeight()方法获取到视频的宽度和高度,即分辨率。
注意:上述操作需要在后台线程中执行,可以使用AsyncTask或者Handler等方式来实现。
完整示例代码如下:
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource(videoUrl);
mediaPlayer.prepareAsync();
mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
int videoWidth = mp.getVideoWidth();
int videoHeight = mp.getVideoHeight();
// 在这里可以获取到视频的分辨率
}
});
希望能对你有所帮助
原文地址: http://www.cveoy.top/t/topic/izZR 著作权归作者所有。请勿转载和采集!