FFMPEG:将 WebM VP8/VP9 多分辨率视频转换为 MP4 (H.264)

FFMPEG: Convert WebM VP8/VP9 multi-resolution video to MP4 (H.264)

我一直在尝试将多分辨率 WebM 视频 ( VP9/VP8/H.264 )(1280 x 1080 到一半,之后是 1080 x 1280)转换为具有 H.264 视频编码的 MP4 容器。

当使用 FFMPEG 转码时,当使用 libvpx(对于 VP8 和 VP9)和 libx264(对于 H264)进行转码时,锁定到它在视频开头遇到的帧大小(在本例中为 1280 x 1080)。

我能做对的唯一一个例子是当输入 WebM 有 H.264 视频和 opus 音频时,ffmpeg 被指示只复制视频流并将音频仅转码为 aac。

有没有办法让ffmpeg支持多分辨率视频转码?

如何生成示例视频:在支持 mediaRecorder API 的 Chrome 或 Firefox(在支持自动旋转且纵向和横向分辨率不同的设备上)上转到此 link: https://webrtc.github.io/samples/src/content/getusermedia/record/ ,开始录制视频,录制视频时,改变方向,停止录制并下载视频。文件)

讨论参考:https://groups.google.com/a/webmproject.org/forum/#!topic/webm-discuss/IgumDyMAHY0

FFmpeg,截至撰写本文时,编码时不支持 resolution-changes mid-stream。有一个patchset来介绍这个能力。出于原始视频和 VP8/9 编码器的动机,但它已被废弃。

来自 videolan.org 的 Vlc Media Player 可以将 vp9 转换为 h264。在“媒体”菜单下,选择 Convert/Save。转换选项之一是带有 h264/mp3.

的 mp4 容器