最近WOWOWを契約したりBSが見れるようになって、
映画の録画が増え続けてるえーみるです。
過去にもtsの変換方法については書いていたのですが、
一部の録画ファイルが変換をミスするようになり...
DGIndexで分離した後の「m2v」ファイルの変換は、
うまくいっているのですが、その後の「FAW」を使った、
疑似「wav」の変換ができず、下記のエラーが表示されました。
「mux後ファイルが小さすぎます。muxに失敗したものと思われます。」
このエラーが発生するとどうしようもなくなってしまうので、
出たものについては諦めてたりしていたのですが、
使用していた「DGIndex 1.5.8」は、
音声出力に不具合があるのを知っていて修正版を使うことも無かったので、
今回ビルドをしてその修正版を使ってみたところ、
音声エンコードにエラーが出ず、うまく変換することが出来ました。
![](https://ssl-stat.amebame.com/pub/content/9477400408/amebapick/item/picktag_autoAd_302.jpg)
修正版を使う場合は自分にてビルドが必要となります。
参考にさせて頂いたのは、「ココ」になります。
- VisualStudio 2019 コミュニティをダウンロード
- DGIndexのソースコードをダウンロード
- NASMをダウンロード
- バッチファイルの修正
- DGIndexのビルド
[1]
VisualStudio 2019 コミュニティをダウンロードします。
「ココ」にアクセスして「無料ダウンロード」を押下します。
「vs_community__1298107860.1552917305.exe」が
ダウンロードされるので起動します。
※ダウンロード時期で「vs_community__」以下は変わります。
ワークロードの箇所で、「.NET」と「C++」の箇所に
チェックを入れてインストールを行います。
[2]
DGIndexのソースコードをダウンロードします。
「ココ」にアクセスして、「Clone or Download > Download ZIP」の順に押下します。
ソースコードがダウンロードされるので
解凍して分かりやすいフォルダに配置します。
上記だと「C:\DGMPGDec-workaround」に配置をしています。
[3]
NASMをダウンロードします。「ココ」へアクセスして、「2.14.02」を押下します。
「win64」を押下します。
「nasm-2.14.02-win64.zip」を押下してダウンロードします。
ダウンロードしたら解凍して分かりやすいフォルダに配置します。
上記だと「C:\nasm-2.14.02」に配置をしています。
![](https://ssl-stat.amebame.com/pub/content/9477400408/amebapick/item/picktag_autoAd_302.jpg)
[4]
バッチファイルを修正します。
「C:\DGMPGDec-workaround」の中の
「DGMPGDec_Build_Release_msvc16.bat」を修正します。
45行目の「rem set WINXPISDEAD=1」を
「set WINXPISDEAD=1」に変更して保存します。
[5]
「DGIndex」のソースファイルのあるpathで「cmd」と入力して、
コマンドプロンプトを起動します。
「set NASMPATH=C:\nasm-2.14.02\」
「DGMPGDec_Build_Release_msvc16.bat」の順にコマンドを入力します。
最後に「ビルドに成功しました」が表示されれば完了です。
ビルドされた「DGIndex」は、
「C:\DGMPGDec-workaround\bin\msvc16.0\Release」の中にあります。
あとはこのビルドした「DGIndex」を使って映像と音声を分けるだけです。
FakeAACWavで出力したaacを変換してエラーが出なければ、
正常に出力できていると考えて良いと思います。
またなんかエラーとか出たら記載します...。
![](https://ssl-stat.amebame.com/pub/content/9477400408/amebapick/item/picktag_autoAd_302.jpg)
FakeAACWavの変換がうまくいかなくて下記のエラーが出たものがありました。
この場合は、aacのファイルをwavに変換してその後、
音ズレを調整するために表示されている秒数を元に
音声をカット又は追加する必要があります。
この手順をしないと、変換後のファイルに音ズレが発生します。
まずは、DGIndexで分離したaacファイルをwavに変換します。
追加したファイルを右クリックして
Convert > Quick convertの順に選んでクリックします。
表示されたポップアップでWAVを選択してConvertを押下します。
保存先を選んで、保存を押下します。
変換が完了したら、このファイルをAudacityで読み込みます。
読み込むと下記のように表示されます。
ファイル名のDELAYの箇所を見て時間調整を行います。
今回のファイルの場合だと、『DELAY -354ms』の為、
-364ms短くする必要があります。
右下にある、選択範囲の開始点と終了点の箇所に
364と入力してEnterキーを押下します。
編集>削除の順に選んで選択範囲をカットします。
カットができたら、ファイル>書き出し>WAVとして書き出しの順で選んで、
保存先を決めて書き出しをします。
書き出しが完了したらAviUtlで読み込んで編集すればOKです。
出力の際は、FAWを使用していませんので、
音声の箇所は別のエンコーダーを指定してくださいね。
無音を追加したい場合は、ジェネレーター>無音の順に押下します。
出てきたポップアップで追加したい無音の秒数を入力して
OKを押下すれば追加されます。
以上がエラーが出た時の対応の仕方でした。