到目前为止,我使用这个脚本重新编码我的盒子(电视解码器):
^_^ ( ~ ) -> cat ~/++/src/convert.sh
#! /bin/bash
name=$(path -r "$1") # it gives the file name without the extension
[ "$1" = *.mp4 ] && ffmpeg -i "$name".mp4 -vcodec copy -acodec copy "$name".mkv
x264 --preset veryfast --tune animation --crf 18 --vf resize:720,576,16:15 -o "$name".tmp.mkv "$name".mkv
mkvmerge -o "$name [freeplayer sd]".mkv "$name".tmp.mkv --no-video "$1"
rm -rf "$name".tmp.mkv
[ "$1" = *.mp4 ] && rm -rf "$name".mkv
exit 0
#EOF
适用于我的ubuntu和archlinux笔记本电脑。但它并没有在我的桌面上运行fedora。 谷歌称,由rpmfusion支持的x264软件包并不支持lavf和ffms2。 而且我无法解除它,因为smplayer(我喜欢的女巫)需要它。
好的,所以我必须编译它。谷歌然后说“你必须建立ffmpeg,ffms2 tnen x264,以确保正确引用标志。”好吧,没有用(ffms2找不到LIBAV - 即使我在告诉哪里 - 而且x264没有用lavf配置......)
我的问题是:我可以单独使用ffmpeg来执行我的脚本所做的事情。 我有ffmpeg版本0.8.11,x264 0.116.2048 59cb2eb和gcc:4.6.1 20110804(Red Hat 4.6.1-7)
编辑:好的,我发现:ffmpeg -i输入文件-acodec copy -vcodec libx264 -preset veryfast -tune animation [我没有的部分]输出
答案 0 :(得分:1)
我自己找到了。
ffmpeg -i input -s 720x576 -aspect 4:3 -vcodec libx264 -preset veryfast -tune animation -crf 18 -acodec copy -scodec copy output
我的脚本变为:
#! /bin/bash
#
name=$(path -r "$1") # it gives the file name without the extension
ffmpeg -i "$1" -s 720x576 -aspect 4:3 -vcodec libx264 -preset veryfast -tune animation -crf 18 -acodec copy -scodec copy "$name".tmp.mkv
mkvmerge -o "$name [freeplayer sd]".mkv "$name".tmp.mkv --no-video "$1"
rm -rf "$name".tmp.mkv
exit 0
#
#EOF
它现在适用于任何容器!您可以更改曲调并删除“-scodec copy”部分,如果您将其用于除动画之外的其他内容(它将以任何方式工作)。你可能还会注意到我的电视比例为4:3。这也可能会改变。
见你。