【Aviutl】L-SMASHの設定が保存されないので対策した。

AviutlのプラグインであるL-SMASH WorksFileReaderの設定が保存されないので、対策しました。そのときの作業記録を書いておきたいと思います。

L-SMASHの設定を変更した経緯

L-SMASHの設定を変更した経緯としては、ゆっくりムービーメーカー3から出力した.exoファイルをAviutlに読み込むと音割れが発生してしまうために、YMM側のオーディオレートを8000Hzに下げて音割れ対策をした。しかしこの設定を行うと、Aviutl側でL-SMASHのオーディオサンプリングレートも変更しなければならないので、L-SMASHの設定を行うことにした。

しかし、作業をしているとAviutlを再起動したときなどに、「L-SMASHの設定が保存されていない」ということにきづきました。そのたL-SMASHめ設定ファイルを直接いじる方法で対策をおこいましたので次の見出しでその方法を紹介したいと思います。

なお、この記事とはあまり関係はないですが、ゆっくりムービーメーカー3の出力をAviutlに読みこんだとき音割れが発生します。これの本当の原因はたんにサンプルレートが高いからだという結論になりました。なのでYMMのサンプルレートを44100Hzからわざと8000Hzに落として音割れ対策をしています。その方法については以下に詳しく書いています。

L-SMASHの設定ファイルを直接編集し、デフォルトの値を変更する

さきほども書きましたが、AviutlでL-SMASHの設定を行ってもなぜか保存されないので(再起動したあたりで設定が元にもどっている)L-SMASHの設定ファイルを直接いじることで対策を行いました。

L-SMASHを導入しているのであれば、Aviutlフォルダ内にlsmash.iniというファイルがあるはずです。
lsmash 設定ファイル

このlsmash.iniを高機能テキストエディターなどで開きます。わたしはAtomを使いました。すると以下のような内容が表示されます。


わたしはサンプルレートが変更したかったのでもともと0であるものを44100に変更しました。書き換えたらファイルを保存します。これでデフォのサンプルレートの値が44100になります。(画像は44000になってるけど44100が正解です)

ここまで書いといてあれですが、このような変更は自己責任になるかと思いますので、バックアップをとるなど対策しておいてもよいかもしれません。もしこの記事の情報にまたなにか気づきがあった場合は追記したいと思います。

追記: ゆっくりムービーメーカー3の.exo出力時にAviutlを自動起動した場合 lsmash.iniが読み込まれない

いろいろためしたら以下のことがわかりました。

  • ゆっくりムービーメーカー側でAviutlを自動起動させるとなぜかlsmash.iniが読みこまれない
  • Aviutlを通常どおり起動した場合lsmash.iniが読みこれる

結局のところ、YMM側で.exo出力時にAviutlを起動させるケースにおいては、上記に書いたlsmash.iniを直接編集する方法は無意味であるという結果になります。なので、これからはもうaviutlと自動連携させない方向でいこうかと思いました。どうせただ起動するだけだし。

かなりぐだぐだになってしまいましたが、とりあえず事実としてこういうことがあるということは記録しておきたいと思います。でも他の人が混乱するかもしれないので、この記事をみてるひとはいないと思いますがもしこの記事を見ているなら話半分にとらえていただければと思います。

というかタイトルが保存されないになっているけど、これももしかすると、lsmash.iniが読み込まれないので、そう感じただけかもしれない。そこは検証してません。

追記 2019/2/21

結局lsmash.iniを直接いじらなくてもaviutlでlsmashの設定をおこなうだけで、ちゃんと保存されることがわかりました。この記事のタイトルはlsmashの設定が保存されないとなっていますが勘違いでした。ここまで書いてきましたがYMM3でaviutlを起動した場合lsmash.iniは読みこまれません。なのでlsmash.iniは保存されているけども読みこまれないので、YMM3から自動起動した場合は設定がデフォルトの状態になっています。

これは非常にややこしいトラブルではありますが、そういうもんと思うしかないでしょう