今天遇到一个问题,视频播放不能居中。
在设置VideoView的Layout时候,把整个屏幕分配给VideoView。
不过Video在播放的时候,对于成宽比和屏幕不一样的视频,却没有把视频播放到。
采用相同的策略,ImageView就可以把图像放到屏幕最,感觉是ViewView的问题。
但是VideoView是FrameWork层的功用组件,所以就想到一个办法来规避。
每次获取视频分辨率和屏幕长宽,比较屏幕视频长宽比和屏幕长宽比,以此来判断视频应该以长度为基准还是以宽度为基准来压缩。
进而判断出空白区域的面积,以此来设置View layout的位置。因此就需要获取视频的分辨率。
MediaMetadataRetriever retr = new MediaMetadataRetriever();
retr.setDataSource(mContext , video.getUriWithDrmCheck());
retr.setMode(MediaMetadataRetriever.MODE_CAPTURE_FRAME_ONLY);
Bitmap bm = retr.captureFrame();
int wVideo = bm.getWidth();
int hVideo = bm.getHeight();
觉得这个代码还比较有用,在此做个记录。
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务