M2TSなアレをエンコする
どちらかというと自分用メモです。突っ込みどころがあっても気にしないでください。
ちなみにアレはアレですアレアレ。
諸事情でM2TSなアレをエンコードする事になったので
1,DGIndexNVが使えず(GeForce非搭載)DGIndexIMのライセンス持ってないのでL-SMASHのLSMASHSource_LWLibavVideoSource()関数で読み込む
2,いつもどおりavsを書く
3,Avs4x26xでx264で出力する
をできたところまでは良かったんです。問題は音声です。
情弱だったのでtsエンコ時は
1,aacedit2にavsとDGIndexで.d2vを出力させた時に出来た.aacファイルを突っ込む
2、CMカット済みの.aacファイルができるのでそれをL-SMASH muxerで.m4aにする
3,L-SMASH remuxerで.mp4と.m4aを統合して完成
で良かったのですがまず今回のM2TSがaacではなくWavなのでさあ大変。
本来はmp4出力時に処理できればいいもののそこまでうまくできるほどの頭でもないので今回は以下の方法でやりました。
必要なもの
DGAVCIndex(DGAVCDec 1.0.9)
AddHeader(LPCM と WAV の相互変換アプリ
(その4): 五十六億七千万の夜)
avs4wav(avs2wavの関連記事 : 傾き指向プログラミング)
お好みの形式に変換できるツール、今回はqaac(qaac導入方法はこちらが参考になりました(ちょっとだけエンコード [Avisynth] qaacの導入))
まず音声を処理します
1,DGAVCIndexでとりあえず.d2vを出力し、.pcmファイルも一緒に出力される
2,.pcmファイルはそのままだとアレなのでAddHeaderでWav化します。サンプリングやBitの設定はDGAVCIndexの出力時に出ているのでそこに出ている値を指定
3,音声も入力して処理したavsをavs4wavに入力してカットしたwavとして出力します。
4,wavを好みの形式に変換します。今回はalacに適当に変換しますのでqaacを使います。
5, コマンドプロンプトでrefalac64(32BitOSまたは導入したdllが32Bitな場合はrefalac) (入力する音声) -o (入力する音声+.alac)で出力します。
でalacファイルが無事出来たのでL-SMASH MuxerでMuxして完成です。