Android 安卓:我可以在aspect radio中将视频裁剪成全屏吗?

Android 安卓:我可以在aspect radio中将视频裁剪成全屏吗?,android,video,zooming,crop,Android,Video,Zooming,Crop,我已经学会了如何调整视频播放在这个 使用gameowneranswer,它可以工作。它还强制保持纵横比,这样它的侧面就会有黑色条纹 我想要另一个可选的。也就是说,我不希望两边有黑色条纹。我希望视频高度仍然保持在屏幕高度。要保持纵横比,视频宽度应大于屏幕宽度。我不能看视频的“最左边部分”和“最右边部分”并不重要。 我想我只需要改变一下: if (videoProportion > screenProportion) { lp.width = screenWidth;

我已经学会了如何调整视频播放在这个

使用
gameowner
answer,它可以工作。它还强制保持纵横比,这样它的侧面就会有黑色条纹

我想要另一个可选的。也就是说,我不希望两边有黑色条纹。我希望视频高度仍然保持在屏幕高度。要保持纵横比,视频宽度应大于屏幕宽度。我不能看视频的“最左边部分”和“最右边部分”并不重要。 我想我只需要改变一下:

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

但这并不能解决问题。 可以播放比屏幕大的视频吗

编辑:确定。我已经意识到我的问题的术语。我想用aspect radio和全屏放大我的视频。也称为全屏裁剪视频

我试图在
FrameLayout
(必需)容器中使用
TextureView

我有安卓4.0设备,在这个解决方案中工作得很好,但我不确定它是否真的能在其他4.0设备上工作。另外,
TextureView
仅适用于Android 4.0或更高版本。如果安卓2.x有解决办法,我将不胜感激。

嘿,我也有同样的问题,你成功解决了吗?@shem。不需要。对于Android 4或更高版本,我们可以使用
TextureView
并像普通视图系统一样调整其大小。或者我们可以先对视频文件进行预处理(比如使用),然后加载到android设备上。在现代设备上测试不会有这种问题。
if (videoProportion < screenProportion) {
        lp.width = screenWidth;
        lp.height = (int) ((float) screenWidth / videoProportion);
} else {
        lp.width = (int) (videoProportion * (float) screenHeight);
        lp.height = screenHeight;
}
surfaceViewFrame.getHolder().setFixedSize(lp.width, lp.height);