SSブログ

字幕付きTSファイルのエンコード [PCで地デジ]

前回の記事の続きです。めでたく多重音声のままエンコードすることが出来ましたが、
音声を英語に切り替えると話がわからなくなるという根本的欠点が露呈。
なので今回は字幕付きファイルをエンコードする方法です。

2012/01/19追記:新しい方法始めました→多重音声&字幕付きのTSファイルをCMカットしてMP4にエンコード手順は前回のやり方に一手間加えればOK。

1.TSから字幕データを抽出
2.エンコードしたMP4ファイルに字幕データをMUX(多重音声をMUXするときに同時にできる)

後は前回と同様にカット、結合をすれば完成です。
字幕抽出ソフトはCaption2Ass_PCR_0201を使いました。データ形式はsrtです。これもコマンドライン操作ですがバッチファイルを作っておけば(ry。
MP4へのMUXも-addオプションでできるのでMUXすれば(ry……と言いたいところですが、まだバッチスクリプト内で入力ファイルを見分けて順番にMP4Boxに入力する部分が書けてません。バッチスクリプトの構文の構造についての縛りがやたら多くて、例えばif文の途中で 「)else(」と書くとエラーになります。elseの前後に半角空白を入れて「) else (」 書かないと駄目だったりするのでちょっと苦戦中です。


ここで解説。この字幕データというものは映像データと独立しており、動画開始地点から何秒後にどの字幕を表示させるか、という風に記録されています。なので前回解説したとおりにカット編集すると字幕表示がズレてしまう場合があります。原因究明のためにセガール映画でいろいろ試したところ、CMの前と後で同じシーンやってる箇所がありますよね?あそこで字幕表示の時間同期が上手く言ってないのが問題のようです。CM明けに、前のパートの最後のシーンの途中、最後のキーフレームが表示された後のタイミングから始まる場合に字幕表示ズレが発生していました。

ここからは私の想像なのですが、MP4はキーフレームを基準点として字幕表示のタイミングを計算してるのに対し、TSではMP4とは違うタイミングでキーフレームがあったり、別の基準で字幕のタイミングを基準にしているのでMP4にすると字幕がずれるのではないでしょうか。

これを回避するには、映画などのCM明けで、重複部分をカットして別のカットのキーフレームから始まるようにするといいでしょう。


しかし、MP4 exportで切り出した実映像時間と、ファイル情報に表記される時間がずれる問題が発生。これが解決すれば完璧なのですが。
nice!(0)  コメント(1)  トラックバック(0) 

nice! 0

コメント 1

Mattrar

Levitra Vs Levitra Professional http://cheapcialisir.com - tadalafil cialis from india Viagra Pas Cher Payement SСЂС–РІВ©curisСЂС–РІВ© <a href=http://cheapcialisir.com>cialis for sale</a> Cialis Generico En Valencia
by Mattrar (2020-02-21 16:37) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。