我正在使用这个类尝试获取远程视频的大小,但如果视频是远程的,则会出现IllegalArgumentException异常。
该视频是存储在一个服务器上的mp4文件...
如果我使用mediaplayer播放它,视频可以正常播放,但是如果我尝试执行以下操作,则会出错。
该视频是存储在一个服务器上的mp4文件...
如果我使用mediaplayer播放它,视频可以正常播放,但是如果我尝试执行以下操作,则会出错。
try {
MediaMetadataRetriever retriever = new MediaMetadataRetriever();
Bitmap bmp = null;
retriever.setDataSource(context, uri);
bmp = retriever.getFrameAtTime();
videoHeight = (int) (bmp.getHeight()*((float)getIntWidth()/bmp.getWidth()));
} catch (Exception e) {
e.printStackTrace();
}
错误发生在这一行:
retriever.setDataSource(context, uri);
代码有什么问题?
and uri contains Uri.parse("http://www.myweb.com/myvideo.mp4");
12-19 13:38:08.610: W/System.err(13333): java.lang.IllegalArgumentException
12-19 13:38:08.611: W/System.err(13333): at android.media.MediaMetadataRetriever.setDataSource(MediaMetadataRetriever.java:175)