ffmpegを使って地デジtsファイルからPSPで再生可能な高画質ファイルを作成する

user-pic
0

長い題名ですが、覚書。
いろいろなサイトを参考にさせていただきましたが、一発でこれといったものがなかったので、いろいろ組み合わせました。
-flags以降を省略したところ再生できなかったため、とりあえずネタを頂いたサイトで付けていたオプションをすべて付けていますが、相当時間が掛かります。
省略可能なオプションはどれだろう。

いろんなオプションが付くと体感画質が落ちたので、(ファイルの容量も半分になった)却下。

ffmpeg -i $INPUT_TS -vcodec libx264 -s 720x480 -aspect 16:9 -r 29.97 -acodec libfaac -ar 48000 -b 768k -ab 128k -flags +loop -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -flags2 +mixed_refs+brdo -me umh -subq 7 -trellis 2 -bidir_refine 1 -refs 2 -bf 1 -b_strategy 1 -coder 1 -me_range 16 -g 300 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -bt 768k -maxrate 4k -bufsize 4k -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -level 21 $OUTPUT_MP4 -map 0.0 -map 0.1

追記:このあたりなら、エンコーディング速度も速く、再生も可能っぽい。

ffmpeg -y -i $INPUT_TS -vcodec libx264 -s 720x480 -aspect 16:9 -r 29.97 -acodec libfaac -ar 48000 -b 384k -ac 2 -ab 128k -coder 1 -qmin 10 -level 21 -g 250 -f psp $OUTPUT_MP4 -map 0.0 -map 0.1

さらに追記:上記のコマンドだと途中で再生が途切れてしまうファイルができてしまったので、問題ない動画が作成できたコマンドを記述。

720x480バージョン

ffmpeg -y -i $INPUT_TS -vcodec libx264 -s 720x480 -aspect 16:9 -r 29.97 -acodec libfaac -ar 44100 -b 384k -ac 2 -ab 64k -coder 1 -qmin 10 -bufsize 128k -level 21 -g 250 -f psp $OUTPUT_MP4 -map 0.0 -map 0.1

480x272バージョン ビットレートを調整しただけ。

ffmpeg -y -i $INPUT_TS -vcodec libx264 -s 480x272 -aspect 16:9 -r 29.97 -acodec libfaac -ar 44100 -b 192k -ac 2 -ab 64k -coder 1 -qmin 10 -bufsize 128k -level 21 -g 250 -f psp $OUTPUT_MP4 -map 0.0 -map 0.1

こんな感じだと、再生できるファイルができました。動画再生が途中で止まってしまう原因は、音声のビットレートとサンプリングレート指定だったのか、なぞ。

トラックバック(0)

トラックバックURL: http://dia-sea.dyndns.org/mt/mt-tb.cgi/233

コメントする

このブログ記事について

このページは、dia-seaが2008年10月15日 03:02に書いたブログ記事です。

ひとつ前のブログ記事は「EeePC 901 X のSSD換装をしたいけど・・・。」です。

次のブログ記事は「ffmpegのエンコーディング速度」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。