繁体   English   中英

Camera2 API在录制过程中切换相机

[英]Camera2 API switching camera during recording

我正在使用Camera2 API,在我的应用中,在录制过程中切换相机非常重要。 每次切换摄像头后,我都将视频片段保存到磁盘,并在停止录制后,使用Android版FFmpeg的 -f concat -safe 0 -i listPath -c copy finalPath命令将视频合并为一个。 当我打开单独的视频片段时,它看起来是正确的,但是当我打开合并的视频时,后置摄像头上录制的视频会旋转180度。 问题仅在合并的视频中。

在视频的元标记中,如果视频记录在后置摄像头上,则“旋转”标记具有90度,否则为270度。

据我了解,当ffmpeg合并视频时,如果他的metatag中具有不同的“ rotate”标签,它将自动旋转视频。

我该如何解决这个问题?

PS另外,我尝试使用MP4Parser库进行合并,但是存在相同的问题。
PPS -noautorotate参数对我没有帮助。

恰恰相反, ffmpeg将输入片段合并在一起时忽略了它们的方向。 当使用-c copy时,这是不可避免的。 您的选择是旋转来自其中一台摄像机的视频,然后再将其添加到结果中。 就性能而言,不幸的是,这等效于完全转码。

另一种方法是使用MediaCodec而不是Recorder。 这是更多代码,但是您可以放弃ffmpeg并继续进行电影的无后处理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM