AviUtl エクスポートプラグイン「Libav-SMASH Exporter」公開

 先日リリースされた「Libav-SMASH File Reader」に続き、出力用のプラグイン「Libav-SMASH Exporter」もリリースされました。Libav-SMASH File Reader で読み込んだ MP4/MOVコンテナ等の映像・音声を無劣化(ストリームコピー)でエクスポートします。

なお、Libav-SMASH File Reader も更新しました(Libav-SMASH Exporter とセットになっています)。

使い方

 lsmash_export.auf ファイルを AviUtl のフォルダ、もしくは AviUtl 直下の Plugins フォルダにコピーします。AviUtl を起動し、[その他]→[プラグインフィルタ情報]を開き、Libav-SMASH Exporter が表示されていれば導入完了です(出力プラグインではない点にご注意ください)。

 あとは編集したいファイルを Libav-SMASH File Reader で読み込み、[ファイル]→[エクスポート]→[Libav-SMASH Exporter]で出力します。出力時はファイル名にコンテナの拡張子を入力するか「ファイルの種類」で選択してください。

また、編集用途でなくても、Libav-SMASH File Reader で読み込んだファイルをそのまま Libav-SMASH Exporter で別形式のコンテナとして出力する用途にも使えますので、MP4からMOVに入れ替えるといった操作も AviUtl の GUI で簡単に行えます。
# この件について開発者のVFR-maniac(muken)氏より指摘(*comment)があり、L-SMASH はストリームコピーをするだけであってコンテナフォーマット変換は今のところ実装していないとのことです。

編集時にキーフレームを確認する


↑[表示]→「ソースファイルのキーフレーム表示」を有効化すると、現在のフレームがキーフレーム(Iフレーム/Iピクチャ)の場合、フレームナンバー表示の右側にアスタリスクが表示される。MPEG系ストリームの場合、アスタリスクが表示されるフレーム単位での書き出しになる点を考慮しておこう。

 Libav-SMASH File Reader/Exporter で扱う映像ストリームがMPEG系の場合、編集結果のファイル出力は「キーフレーム単位」となります。これはMPEG系ストリームを再変換せず扱う上での制限であり、Libav-SMASH File Reader/Exporter の不具合や機能制限ではありません。キーフレーム以外のフレームでカットや範囲選択を行った場合、Libav-SMASH Exporter は近くのキーフレームをサーチして、そこから出力します。ゆえに、MPEG系ストリームでは1フレーム単位での正確な編集・出力は難しい点をご留意ください(すべてIフレーム/Iピクチャの映像ストリームであれば話は別ですが)。

なお、AviUtl でキーフレームを確認する方法として「ソースファイルのキーフレーム表示」という機能があり、これを有効にするとタイトルバーのフレームナンバー右にキーフレームのステータス(アスタリスク)を表示させることが可能です(詳しくは右の画像とキャプションを参照)。

「次(前)のキーフレームに移動」(編集→基本機能にある)をショートカットキーとして登録しておくと、MPEG系コーデックの場合は編集が捗るかもしれません。

追記(2011/12/11):
QuickTime やその系統の splitter/demuxer である場合、エクスポート開始フレームがキーフレームでなくても選択開始フレームからの再生に対応しており、これはMP4やMOVに実装されている edit list を利用して「ここから(選択開始フレームから)再生しなさい」と情報を指定しているためです(つまり、データそのものはキーフレームからの出力だが、再生開始フレームを別途指定できる)。これも VFR-maniac(muken)氏より追加情報としてコメントをいただきました。

ダウンロード

 今回より、Libav-SMASH File Reader と Libav-SMASH Exporter をセットにしてあります。ともに、その次点での最新バイナリですので、両方セットでの更新をお薦めいたします。

  • AviUtl プラグイン Libav-SMASH File Reader(r21) / Libav-SMASH Exporter(r7) セット
  • ソースコード
  • *現時点では追加読み込みによるストリーム結合書き出しができません

     なお、先日公開した Libav-SMASH File Reader も更新され、フルレンジのスケール変換問題が Libav-SMASH File Reader 側でクリアーされています(私は Libav 側のデコーダでフルレンジフラグ判定を無効化したが、Libav-SMASH File Reader の更新はフルレンジで渡される場合のピクセルフォーマットを無効化することで対処。結果、同じ挙動となっており、当方の記事で気付かれた方がパッチを提出されたようです)。

  • リンク
  • AviUtlのお部屋
    VFR-maniac/lsmashinput - GitHub
    l-smash - A simple tool for mp4. - Google Project Hosting
    Get ffmpeg

    VFR-maniac/lsmashexport - GitHub

    コメントを残す

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

    81 + = 85