2012年1月5日木曜日

avs2pipemod その10

更新しました。

avs2pipemod-0.1.1.7z
https://github.com/chikuzen/avs2pipemod

コードの大部分を書き直しました。

* avisynth.libが要らなくなった。
これまではビルドするためにavisynth.libを使う必要がありましたが、これをやめてLoadLibrary()を使うようにしました。
これにより64bit用もビルド出来るようになりました。

* avisynth.dllのバージョンを検出し、挙動を切り替えるようにした。
てなわけでavs2pipe26modはなくなりました。

* おまけ
SetMTModeに応じてDistributor()を自動追加する機能もコードには存在します。
もし、この機能が欲しい人は、make時に'XCFLAGS=-DBLAME_THE_FLUFF'を追加して自ビルドして下さい。

4 件のコメント:

  1. はじめまして
    日頃よりavs2pipemodを便利に使用させて頂いております
    不躾なお願いで大変恐縮なのですがavs2pipemodを使用してのx264エンコード時に残り時間を表示させるようにして頂けないでしょうか?

    返信削除
    返信
    1. うーん、残り時間ですか。
      残り時間の表示を行うには、(その時点での残りフレーム数)/(その時点での平均スピード(fps))を計算して表示すればいいだけなので、実装自体は簡単なのですが、
      1. 処理全体においても特に比重の大きな部分で追加処理が発生するため、スピードが落ちる。
      2. x264であれ、ffmpeg/avconvであれ、出力をpipeでエンコーダに渡すのであれば、途中経過の表示はエンコーダが行うべきである。
      3. そもそもエンコード中には、CPU温度やHDDの読み書きといった要因から、処理速度は頻繁に上下するため、残り時間の表示はあまり意味が無い。
      といった理由から、あえて実装しないことにしています。
      ですから、どうしても欲しい機能であれば、(筆者自身がそうしているように)ご自分で改造してください。

      削除
  2. バグ?
    スクリプトに問題(スクリプトエラーになる等)のあるavsを読み込むと必ずavs2pipemodが落ちます。

    返信削除
    返信
    1. 報告ありがとうございます。
      修正版(0.1.2)をリリースしました。

      削除