0

到目前为止,我使用此脚本为我的盒子(电视解码器)重新编码我的 rip:

^_^ ( ~ ) -> 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。Google 表示 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 input file -acodec copy -vcodec libx264 -preset veryfast -tune animation [that part I didn't have] output

4

1 回答 1

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 复制”部分(无论哪种方式都可以)。您可能还注意到,我的电视是 4:3 比例的 pal 电视。这也可能改变。

拜拜。

于 2012-05-25T23:40:23.377 回答