使用ffmpeg将一组YUV图像转换为视频?
我正在尝试使用ffmpeg将一组YUV帧转换为mp4视频。 我有一组YUV框架,命名为(每个框架都是一个图像): 是的 是的 . . 是的 代码是:使用ffmpeg将一组YUV图像转换为视频?,ffmpeg,h.264,yuv,Ffmpeg,H.264,Yuv,我正在尝试使用ffmpeg将一组YUV帧转换为mp4视频。 我有一组YUV框架,命名为(每个框架都是一个图像): 是的 是的 . . 是的 代码是: ffmpeg -s 3840x2160 -pix_fmt yuv420p -i YUV%d.yuv -vcodec libx264 -r 30 -s 3840x2160 output.mp4 它表明YUV%d.YUV没有这样的文件或目录。 我知道png或jpeg或bmp可以命名为Img%d.png/jpeg/bmp,但可能无法用于.yuv。 那么
ffmpeg -s 3840x2160 -pix_fmt yuv420p -i YUV%d.yuv -vcodec libx264 -r 30 -s 3840x2160 output.mp4
它表明YUV%d.YUV没有这样的文件或目录。
我知道png或jpeg或bmp可以命名为Img%d.png/jpeg/bmp,但可能无法用于.yuv。
那么有没有办法在ffmpeg中输入一组yuv图像呢?
ffmpeg
的通配符语法对yuv或其他视频格式不起作用,我想。你可以像这样看着他们:
cat*.yuv>all.yuv
#或者猫'ls | grep“\d*.yuv”`>all.yuv,如果您愿意的话
#或任何其他复杂命令来获取文件列表
ffmpeg-i all.yuv-c:v libx264。。。
来自ffmpeg文档:
您可以使用YUV文件作为输入:
ffmpeg -i /tmp/test%d.Y /tmp/out.mpg
它将使用以下文件:
/tmp/test0.Y, /tmp/test0.U, /tmp/test0.V,
/tmp/test1.Y, /tmp/test1.U, /tmp/test1.V, etc...
我发现我需要用这句话:
-r, 21, -pix_fmt, yuv420p, -s, 1280x720, -i, file.Y
您可以跳过文件创建(并且流道具必须发出信号):
cat*.yuv|ffmpeg-f rawvideo-s 3840x2160-pix_fmt yuv420p-framerate 30-i--c:v libx264…
感谢您的代码。我试过这个代码,但它总是显示找不到“cat”。那么你应该问问自己?