![如何在 Ubuntu 中的标准 2D 屏幕上观看 VR(虚拟现实)3D 视频?](https://linux22.com/image/998070/%E5%A6%82%E4%BD%95%E5%9C%A8%20Ubuntu%20%E4%B8%AD%E7%9A%84%E6%A0%87%E5%87%86%202D%20%E5%B1%8F%E5%B9%95%E4%B8%8A%E8%A7%82%E7%9C%8B%20VR%EF%BC%88%E8%99%9A%E6%8B%9F%E7%8E%B0%E5%AE%9E%EF%BC%893D%20%E8%A7%86%E9%A2%91%EF%BC%9F.png)
我有一个 3D 视频,我认为它是使用 GoPro 360 设置录制的。我希望能够与那些没有 VR 头戴设备的人分享内容,所以我需要一种在 2D 屏幕上观看它的方法。我如何使用 Ubuntu 实现这一点?(如果这有区别的话,我使用的是 16.04 Xenial)
答案1
一种方法是获取 GoPro VR 播放器,目前可在 deb 包中免费获取这里Linux 的最新版本是 2.3.1 - 2017-05-19,它以 v.2.1 或任何更高版本的 GPL 分发,您可以选择它基于 libvlc。此版本似乎不需要对任何设置进行修改即可获得良好的效果。您只需按下 即可切换全屏,F尽管视频会启动正中央分割,但只需按下<-或->键或从菜单中选择相机 -> 左或右,即可为您提供 3D 视频的 2D 视图。
64 位 deb 包的直接链接 (37.55MB) 在 Ubuntu 16.04.3 内核 4.4.0-112 上测试
实现此目的的另一种方法是利用 ffmpeg 和 stereo3d 滤镜它就是为此目的而设计的。
以下是一个例子:
ffmpeg -i input.mkv -vf stereo3d=sbsl:mr -metadata:s:v:0 stereo_mode="mono" output.mkv
这会产生一个 2D(仅右眼)输出.mkv 文件。
stereo3d 滤镜通过 InputType:OutputType 进行控制,详情请见stereo3d 过滤器文档
在上面的例子中,sbsl
表示 InputType 是并排平行(左眼在左,右眼在右),并且mr
表示 OutputType 应该是单声道输出(仅右眼)
在命令行中包含此命令的原因-metadata:s:v:0 stereo_mode="mono"
是为了删除立体标签,因为元数据未通过过滤系统传输,否则 ffmpeg 会尝试复制原始元数据。如果不包含此命令,某些播放器会将生成的视频识别为 3D,从而导致出现怪异现象。
然后您可以使用您最喜欢的 2D 视频播放器查看生成的文件。
资料来源:
https://video.stackexchange.com/questions/21084/how-to-convert-a-3d-movie-to-2d-using-ffmpeg