我正在尝试转换不同的文件到一个闪存兼容的.mp4
文件,但我似乎不能得到它的工作。当然,我们的目标是以最小的文件大小获得最好的质量。
到目前为止,我有这个,它可以工作,但由于某些原因,它不能在flash播放器中播放。结果不是很好,我如何提高这个转换率呢?
这是我使用的命令:
ffmpeg -i input.file -f mp4 -vcodec mpeg4 -r 25 -b 560000 -s 610x340 -acodec aac -ac 2 -ab 64 -ar 44100 output.file
发布于 2009-04-20 17:04:04
要创建交错元数据(这将允许中流恢复和倒带/向前),请使用gpac实用程序(例如,包含在medibuntu中)重新交错文件。使用FFmpeg 0.5版或更高版本,按如下方式转换为mp4:
ffmpeg -f mp4 -i video.mov -b 400k video.mp4
然后
/usr/bin/MP4Box -inter 500 video.mp4
塔达!完成了!这将在JW Flv或其他flash播放器中正常流传输。
发布于 2009-03-06 10:19:05
FLV和MP4是媒体容器。
MPEG-4第2部分和H.264是视频编解码器。( H.264可以提供更好的质量)
libx264是H.264编解码器的编码器。
mpeg4是一种用于MPEG-4第二部分编解码器的编码器。
Flash只能在FLV容器中播放视频编解码器H.264。
所以参数应该是这样的:
-f flv -vcodec libx264
发布于 2010-05-18 19:44:08
在我的代码片段集合中,我为这项任务提供了以下内容。
ffmpeg第一次传递:
ffmpeg -y -i input.mp4 -pass 1 -vcodec libx264 -b 2000k -g 300 -bf 3 -refs 6 -b_strategy 1 -coder 1 -qmin 10 -qmax 51 -sc_threshold 40 -flags +loop -cmp +chroma -me_range 16 -me_method umh -subq 7 -i_qfactor 0.71 -qcomp 0.6 -qdiff 4 -directpred 3 -flags2 +dct8x8+wpred+bpyramid+mixed_refs -trellis 1 -partitions +parti8x8+parti4x4+partp8x8+partp4x4+partb8x8 -acodec libfaac -ab 128k output.mp4
ffmpeg第二次传递:
ffmpeg -y -i input.mp4 -pass 2 -vcodec libx264 -b 2000k -g 300 -bf 3 -refs 6 -b_strategy 1 -coder 1 -qmin 10 -qmax 51 -sc_threshold 40 -flags +loop -cmp +chroma -me_range 16 -me_method umh -subq 7 -i_qfactor 0.71 -qcomp 0.6 -qdiff 4 -directpred 3 -flags2 +dct8x8+wpred+bpyramid+mixed_refs -trellis 1 -partitions +parti8x8+parti4x4+partp8x8+partp4x4+partb8x8 -acodec libfaac -ab 128k output.mp4
质量设置为: 2000k =视频比特率,128k =音频比特率,300 = GOP。不要问我其他参数是什么。:)
与MP4Box交错:
MP4Box -inter 500 output.mp4
创建缩略图/海报图像(使用5可以获得您想要的图像)
ffmpeg -itsoffset -5 -i output.mp4 -vcodec mjpeg -vframes 1 -an -f rawvideo -s 1280x720 thumbnail.jpg
希望这能有所帮助。
https://stackoverflow.com/questions/453352
复制相似问题