码迷,mamicode.com
首页 > 移动开发 > 详细

Android 视频缩放/放大

时间:2015-03-13 20:47:34      阅读:195      评论:0      收藏:0      [点我收藏+]

标签:android   surface   videoplayer   zoom   

1. 原理

不直接改变Codec输出的视频宽高比,而是改变视频播放器窗口的大小。


2. 设置Window

需要将Window设置未可以超出屏幕尺寸

mWindow.setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);


3. SurfaceView保持宽高比

mSurfaceHolder.setFixedSize(mVideoWidth, mVideoHeight);


4. 改变Surface窗口大小

ViewGroup.LayoutParams layoutParams = (ViewGroup.LayoutParams) mSurface.getLayoutParams();
if (scale > 4.0f) {
    scale = 4.0f;
} else if (scale < 0.25f) {
    scale = 0.25f;
}
layoutParams.width = (int) (windowWidth * scale);
layoutParams.height = (int) (windowHeight * scale);

mSurface.setLayoutParams(layoutParams);




Android 视频缩放/放大

标签:android   surface   videoplayer   zoom   

原文地址:http://blog.csdn.net/matrix_laboratory/article/details/44245487

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!