1

使用 LG MS840,如果我以横向拍摄视频,然后将其显示在 VideoView 中,它看起来与以前一样。

但是,如果以纵向拍摄视频,然后将其显示在 VideoView 中,则视频的宽度和高度将被交换,并且图像将被缩放以适应交换后的大小。

例如,如果我拍摄的视频中的图像是:

--------
| 一个|
| |
| |
| |
|BC|
 --------

录制文件中的图像仍然是:

------------
| 交流 |   
| |   
| 乙|
 ------------

由于在报告视频大小时已经考虑了旋转,所以我看到的是:

--------
|交流|
| |
| |
| |
| 乙|
 --------

任何线索如何解决这个问题?

4

1 回答 1

1

VideoView 不支持视频旋转,即使组合矩阵设置正确并使用了旋转属性。

您可以做的是使用 TextureView 并设置其属性 rotation="90" (例如)。然后它会旋转帧,但纵横比是你需要自己处理的。为此,您可以使用 textTureView.setScaleX((screenHeight * 1.0f) / screenWidth)

更多细节在这里:旋转一个android VideoView

于 2013-05-10T20:02:16.040 回答