Android:我可以将方面广播中的视频裁剪为全屏吗?

Yeu*_*ung 5 video android crop zoom zooming

我已经学习如何在不延长视频的情况下在此全屏视频视图上调整视频播放的大小.

有了gameowner答案,它的确有效.它还强制保持方面无线电,使其最终在两侧留下黑色条纹.

我想要另一个可选项.那是我不希望两侧有黑色条纹.我希望视频高度仍然保持在屏幕高度.要保持方面无线电,视频宽度应大于屏幕宽度.我无法观看视频的"最左侧部分"和"最右侧部分"并不重要.我想我只需要改变:

if (videoProportion > screenProportion) {
        lp.width = screenWidth;
        lp.height = (int) ((float) screenWidth / videoProportion);
} else {
        lp.width = (int) (videoProportion * (float) screenHeight);
        lp.height = screenHeight;
}
Run Code Online (Sandbox Code Playgroud)

if (videoProportion < screenProportion) {
        lp.width = screenWidth;
        lp.height = (int) ((float) screenWidth / videoProportion);
} else {
        lp.width = (int) (videoProportion * (float) screenHeight);
        lp.height = screenHeight;
}
Run Code Online (Sandbox Code Playgroud)

没关系,但我没有.一旦surfaceView尺寸大于屏幕.这只是显示黑屏但保持aduio播放.

我还尝试将surfaceview持有者固定大小考虑在内:

surfaceViewFrame.getHolder().setFixedSize(lp.width, lp.height);
Run Code Online (Sandbox Code Playgroud)

但它没有解决问题.是否可以播放尺寸大于屏幕的视频?

编辑:好的.我已经意识到我的问题.我想在纵横广播中放大我的视频,但是全屏放大.也称为裁剪视频到全屏.

我尝试TextureView在一个FrameLayout(必需的)容器内使用: 在TextureView上播放视频 我有Android 4.0设备在这种解决方法中工作正常,但我不确定它是否真的适用于其他4.0设备.也TextureView仅限Android 4.0或更高版本.如果Android 2.x有解决方法,我将不胜感激.