TSのエンコードをしていたところ、FakeAacWavで
「無題ファイルのシークに失敗しました」というエラーが発生しました。
原因はよく分かりませんが、なんとか対処してエンコードができたので、
対処法のメモを残しておきます。
目次
無視してAviUtlで読み込んでみる
FakeAacWavでエラーが出ているものの、wavファイルは作成されていたので
無視してAviUtlに読み込ませてみました。
FakeAacWavの対処
エラーになったTSは4時間と長く、wavファイルが2GBを超えていたので、
wavファイルのサイズが大きすぎることが問題ではないかと考えました。
そこで試しにFAWサイズを1/2にしてみたところ、
エラーが発生せずに変換することができました。
x264guiExの設定
FAWサイズを1/2にしたので、x264guiExの設定も合わせて変更します。
AviUtlからx264guiExの設定画面を開いて、
モードをFAW解除(half size mix)に設定します。
エンコードしてみる
以上の設定でエンコードしてみました。
エラーメッセージがでていました。
Muxに失敗しているようです。うーん…
XMedia RecodeでMuxする
出力フォルダを見ると、これらのファイルが出力されていました。
mp4は映像のみで再生可能。
audio.mp4は音声のみで再生可能。
audio1.aacは明らかにサイズが小さく、再生しても無音でした。
mp4(映像)とaudio.mp4(音声)は問題なさそうだったので、
これらをXMedia RecodeでMuxしてみることにしました。
XMedia Recodeの準備
- 公式サイトからダウンロードします。
ここではPortable版を使用しています。 - XMediaRecodexxxx.zipを適当なフォルダに解凍します。
Muxする
- XMedia Recode.exeを起動します。
- XMedia Recodeに映像(mp4)と音声(audio.mp4)のファイルを
ドラッグ&ドロップして読み込ませます。
- 映像の方のファイルを選択し、
形式をMP4、ファイル拡張子をmp4、
出力ストリーム形式を映像+音声に設定します。
- 映像タブを開き、モードをコピーに設定します。
- 音声トラックタブを開き、インポートを押します。
- ストリームにAACが表示されている方を選択し、OKを押します。
- ソースを選択してモードをコピーに設定し、>ボタンを押します。
- 映像の方のファイルを選択し、リストに追加ボタンを押します。
保存先を変更する場合は、リストに追加する前に変更しておきます。
- リストタブを開き、映像と音声トラックがコピーになっていることを確認します。
問題がなければエンコードボタンを押します。
- 成功しました!が表示されたら完了です。
MP4を確認する
MuxしたMP4を確認したところ、問題なく再生でき、音ズレもありませんでした。
MPC-BEでプロパティを見ても大丈夫そうです。
原因はよく分かりませんが、FakeAacWavでエラーが発生した場合は
この手順でエンコードできそうです。