web-dev-qa-db-ja.com

一連のTSビデオセグメントをH.264ファイルに変換する

MP4ファイルでH.264に変換したいTSビデオフラグメントファイルのディレクトリがたくさんあります。各ディレクトリは、1つのビデオを構成する複数のフラグメントで構成されており、それらすべてをシーケンスするためのm3u8インデックスファイルがあります。

index.m3u8       
segment1_0_av.ts 
segment2_0_av.ts 
segment3_0_av.ts 
segment4_0_av.ts 
segment5_0_av.ts 
segment6_0_av.ts 
segment7_0_av.ts 
segment8_0_av.ts 
segment9_0_av.ts

私はMacを使用しており、自作を使用して必要なものをインストールできます。上記を単一のH.264ファイルに変換するために使用できるコマンドラインは何ですか?コマンドラインを使用すると、後で複数のフォルダーを自動変換するスクリプトを作成できます。

3
Ana

最初にセグメントをマージしてから、エンコードする必要があります。 TSファイルは、それらを連結するのと同じくらい簡単にマージできます。だから試してみてください:

$ cat segment*.ts > onefile.ts
$ ffmpeg -i onefile.ts -c:v libx264 -preset medium -tune film -crf 23 \
    -strict experimental -c:a aac -b:a 192k output.mp4

上記の例では、自作やmacports、または無料で入手できるOSXバイナリから「ffmpeg」を取得する必要があることは明らかです。

結果に満足できない場合は、「-crf 23」を2つのステップ21、19、...でより低い整数に変更して、品質を高めます。ただし、デフォルトの23で十分です。ただし、16を下回らないでください。これは、通常の人間の知覚基準では「実質的に無損失」であるためです。

楽しんで。

2
Paxsali