FFmpeg 向从图像生成的视频添加旋转

FFmpeg add rotation to a video generated from an image

我是 FFmpeg 的新手,我不知道如何将 rotate="90" 添加到我的命令中。我尝试在不同的地方添加它,但我得到了 Unable to find suitable output format for 'rotate=90' rotate=90: Invalid argument.

我想将介绍视频附加到使用 android 相机拍摄的一系列其他视频中,并将它们连接在一起。连接工作正常,除了旋转应该是纵向模式而不是横向模式。

这是我的命令:

const ffmpegCommand = `-hide_banner -loglevel error -loop 1 -i ${imageUri} -f lavfi -i anullsrc=cl=mono:r=48000 -c:v libx264 -profile:v high -level:v 4.0 -video_track_timescale 90k -t ${duration} -pix_fmt yuv420p -r ${resolution[0]/resolution[1]} ${outputUri}`;

  

找到解决办法。我不确定它是否是正确的解决方案,但对我来说它满足了我的需要。

const ffmpegCommand = `-i ${firstRecordedVideURL} -i ${generatedImageVideoURL} -map 1 -c copy \ -map_metadata 0 \ -map_metadata:s:v 0:s:v \ -map_metadata:s:a 0:s:a \ ${output}`;

我拍摄了通过 android 相机录制的第一个视频,并将元数据复制到我刚刚从图像文件生成的视频中。这样生成的视频将具有匹配的元数据,并且串联将按预期工作。