2010-10-04 56 views
3

其实我试图将原始视频压缩成兼容MPEG-4 AVC/H.264 BD格式的High Profile/Level 4.1视频。我正在使用ffmpeg。ffmpeg中的实时视频编码

ffmpeg -threads 2 -f rawvideo -pix_fmt bgr24 -re -s 720x576 -i - -threads 2 -vcodec libx264 -deinterlace -s 720x576 -coder 1 -flags +loop -cmp +chroma -partitions -parti8x8-parti4x4-partp8x8-partb8x8 -me_method dia -subq 1 -me_range 16 -g 250 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -b_strategy 1 -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -bf 3 -refs 1 -directpred 1 -trellis 0 -flags2 +bpyramid-mixed_refs+wpred-dct8x8+fastpskip-mbtree -wpredp 0 -b 3000k -g 300 -an -f flv -y - 

它的工作原理(视频输出是1分钟21MB),而使用-f MP4错误显示(复用器不seekabe输出)的任何一个帮助我。它是正确的方式得到它啊?

非常感谢。

+1

属于superuser.com – 2010-10-04 13:19:27

回答

1

其实错误信息是正确的。 如果我正确理解命令行,则需要执行STDOUT。对于mp4来说这是不可能的,因为mp4是一种文件格式,不需要事后寻找并更新页眉/页脚就不能写入。

因此,改为mpegts或其他可以通过管道写入的东西。 或者给出输出文件的文件名,那么ffmpeg可以写一个mp4文件。