• avs2wav 1.0.3

    2013年08月13日 22時23分
    44Byteほどメモリリークするバグがあったので修正しました。

    avs2wav 1.0.3


    起動してすぐ終了するプログラムでたった44Byteリークしたところで
    特に何がどうというわけでもないので直すか迷いましたが
    一応バグには違いないので直しました。



    2013-11-05追記

    原因不明で再現も出来ないのですが
    ファイルがダウンロード出来ない場合があるようなので
    Blogプログラムを通さない場所にファイルを置きました。
    上のファイルと同じファイル

    こちらでも失敗するようだともうだめです。

    あと、このファイルは適当に置いただけなので
    将来的にサーバ再インストールとかしたときに存在を忘れてたら消えます。
  • avs2wav 1.0.2

    2012年12月01日 16時35分
                           _,.-‐"':" ̄~゙'ヽ、       __
          _,---‐" ̄\         /          ``ー‐-、   ノ   \
        /        ヽ      ;"                ) /      \
       /   ぐ バ   |      /                |ノ/        \
      /    ら グ     |     |                 )/.|   ・  オ   |
      |    .い を    |     |          ,;';;,,    /ノ |   ・   レ   |
      |     ・  い    |    |::::.................:::::::::;;,'^;、::::::'''..,,_;、丿 |   ・   に   |
      |     ・  れ    |    /:::::::::::::::::::::::::::;"゙, /゙~゙`''::;'゙;     |  ・   だ.  |
      |    あ  る    |    `、;;::::::::::::::::;/ ),;'   :.'.,、   |  ・   っ  |
      |    る  こ    |  ,へノ   `'''''"´   .:;     .:::_ヽ  |  ・   て   |
      |    ・  と     Y   \       .::;     ::::ゝ    .|  ・         |
      |    ・       ∧    \     ::::::、   .:;`     |         |
      |    ・       |ヽ丶    \;;  :::;;;;::..,,、. ::i       |          |
      |    ・       | `       \;;;;/    `゙"       \


    申し訳ありませんがバグってました。

    RIFFヘッダのファイルサイズが4Byte小さく書き出されていました。
    修正版がこちらになります。

    avs2wav 1.0.2


    他にも何かバグを見つけた方はご連絡ください。
    可能な限り修正したいと思います。
  • avs2wav 1.0.1

    2012年11月29日 20時14分
    前回作ったavs2wavですが
    動作が遅いのでメモリ量を調整したり書き出し処理を並列化したりしてみました。

    avs2wav 1.0.1 (バグ有り → 修正版)


    ただ、書き出し処理を並列化してもこの処理は本当に一瞬なので効果は無しに等しいです。
    処理が複雑になる分バグが出やすくなっただけかもしれません。

    書き出すデータに手を加える様な仕様を追加すれば多少は効果も出てくるのですが
    おそらくそういった追加はしないでしょう。


    ちなみに処理時間のほとんどはAVSからWAVEデータをロードする処理で
    ここはAPIを呼んでいるだけなので高速化しようがありません。
  • avs2wavの再開発

    2012年11月28日 00時04分
    機動戦士ガンダムオンラインのCβを必死にやっていたら
    200戦分(約6TB)ほど動画が貯まったのでせっせとエンコードしていました。

    エンコードの作業は次の通りです。
    1. 録画ファイルをVirtualDubに読み込み(手動)
    2. 最初と終わりに入っているロードとか待機画面をカットして出力(手動)
    3. エンコード(バッチ)

    ここで問題になるのが2の作業

    単純に指定範囲を別ファイルに出力するだけなので
    通常のファイルコピーとだいたい同じ100MB/秒程度の速度は出るのですが、
    1戦分のデータが2~30GBと大きいため、5分ほど待ち状態になるわけです。

    この5分の待ち時間が結構ばかにできません。
    100戦超えた辺りから俺は一体何をしているんだという気分になってきます。

    とりあえずCβ分はそのまま手動でやってしまったのですが、
    今後Oβ~サービス開始となった時にこんなことやってられません。

    俺は動画を見直したいだけでエンコしたいわけではないんだ!


    作戦


    カットする位置を調べるのはさすがに手動でやらねばならないのでこれは諦めます。
    ただし、カット位置を指定したらあとはコンピュータ君に全てやって貰います。

    調べたところ映像についてはAvisynthにTrimというそのものずばりな機能がありました。
    x264に渡すAVSファイルにTrimを追加して解決です。
    むしろ今まで何故使わなかったのか。

    音声はエンコーダに渡すためにカットした上でWaveで出力したいわけですが、
    AVSを渡すとWaveを出力してくれるavs2wavというのがありました。
    映像と同じAVSファイルを使えるのでこれを使うことにします。


    今日の本題


    嬉々としてavs2wavを落として来て使用してみたのですが、
    何故か9KBのファイルが出力されるだけという謎現象が発生。

    オプションなど色々試したのですが改善されず、仕方なくソースを読むことに。

    すると、とても短いコードだったので、
    いいや書き直しちゃえと要点だけ確認して書き直してみました

    avs2wav 1.0.0 (バグ有り → 修正版)

    思いっきり類似品なので本家と間違われぬよう
    64ビットバージョンも作って後ろに32とか64とか付けてみました。

    本家の音量調整機能は使わないのでばっさり切ってあります。

    本家と比べて有利な点としてメッセージが日本語です。日本人歓喜。

    同様の現象でお困りの方はご利用ください。