毎回コマンド叩くのは面倒すぎる!Auto-Editor GUIを自分好みに大改造してみた話

みなさん、こんにちは。

Linuxを使ってクローラーラジコンの動画編集を劇的にラクにするプロジェクト。

前回までに、「360度カメラでラフに撮影」→「現地タブレットでリフレーム書き出し」→「Auto-Editorで動きのない部分を自動カット」→「Shotcutで最終仕上げ」という、私の中での最強ワークフローが完成しました。

このシステムのおかげで動画の量産体制は整ったのですが……人間、ラクを覚えるとさらに欲が出るものです(笑)。

今このワークフローの中で一番気になっているのが、「Auto-Editorにかける部分」

今のままだと、毎回動画ファイルを指定して、閾値(threshold)やマージンのオプションを手動でタイピングしてコマンドを実行する必要があります。いくらLinuxが好きとはいえ、動画をサクッと繋ぎたいだけのときに、毎回ターミナルを開いて長々としたコマンドを打ち込むのは正直ちょっと面倒です。

「やっぱりGUIでポチポチ操作したい!」

Auto-Editor本家ではGUI版を有償販売しているのですが、誰かがオープンソースで実装していないかGitHubで探してみたところ、なんとAuto-EditorをGUI化してくれる素晴らしいPythonプロジェクトを発見しました。その名もAerell Auto Editor GUI

さっそく使ってみたのですが、非常に惜しいことに、私のクローラー動画量産ワークフローには微妙に合わない点がいくつかありました。

「無ければ、コードを書き換えてしまえばいいじゃない」

ということで、オープンソースの醍醐味を活かして、本家コードをForkして自分好みにフルリメイクしてみました!今回はその改造の記録をまとめてみたいと思います。

「細かいコードの話はいいから、すぐ使いたい!」という方へ

改修済みのソースコードは私のGitHubに公開しています。以下のリポジトリからダウンロードして試してみてくださいね。

taoman26/Aerell-Auto-Editor-GUI

インストールには uv が必要ですので、まだ uv をインストールしていない方は過去記事を参考にどうぞ。


元のプログラムで気になった3つの問題点

Aerell版を実際に使ってみて、クローラー撮影においてどうしても引っかかったのは主に以下の3点でした。

1. ファイルを1つしか選べない

元々の実装では、ファイル選択ダイアログから動画ファイルを「1つだけ」しか選べない仕様になっていました。複数の動画をまとめて1本に繋ぎたいクローラー動画の場合、一本一本読み込んでは「Execute」を押さなければならず、コマンドを叩くより手間がかかる状態でした。

2. 「音声カット」しか設定できない

Auto-Editorの真骨頂は、音声の無音カットだけでなく、映像の動きを検知する「Motion Cut」や、カット前後に絶妙な余白を残す「Margin」の設定です。しかし、元のGUIには書き出し(Export)の選択肢しかなく、これらの重要なパラメータを調整する画面がありませんでした。

3. 実行中に何も表示されない

「Execute」ボタンを押すと裏で処理が走るのですが、今動いているのか、それとも終わったのかが全く分かりません。完了の通知もないため、処理が終わるまでずっと不安にさせられる仕様でした。

オリジナル版のAerell-Auto-Editor-GUI
オリジナル版のAerell-Auto-Editor-GUIは非常にシンプル

ギークの本領発揮 – こうやって改造しました!

これらの不満点を解消すべく、Python(Tkinter)のコードにメスを入れました。といってもClaudeに指示を出しただけですが…

複数ファイルの選択と直感的な順番入れ替え

ファイル選択をリスト形式に変更し、複数の動画ファイルを一括でインポートできるようにしました。

さらに、読み込んだファイルは「↑ / ↓」ボタンで直感的に順番を入れ替えられるようにし、不要なファイルは「Remove」ボタンで即座に削除できるようにしています。

内部的には、Auto-Editorに複数ファイルを渡す際はコマンドライン上でパスを並べるだけでよいため、引数リストにファイルパスを順番通り追加していく実装で綺麗に対応できました。

クローラー動画の肝「Motion Cut」と「Margin」の調整機能

編集オプションとして、クローラー動画に絶対に欠かせない以下の3つのパラメータ調整用UI(チェックボックスとスピンボックス)を追加しました。

  • Silent Cut(音声カット)
    無音部分を検出してカット。閾値(Threshold)を0.00〜1.00の間で調整可能(デフォルト 0.04)。
  • Motion Cut(動きカット)
    映像の動きが少ない箇所をカット。我らがクローラー動画の主役機能です(デフォルト 0.02)。
  • Margin(余白秒数)
    カットされた前後に残す余白を秒単位で指定可能(デフォルト 0.2秒)。

ちなみに、音声と動きのバインドにもこだわり、両方にチェックを入れた場合は内部で --edit "(or audio:threshold=X motion:threshold=Y)" という論理和(or)の形式でAuto-Editorへコマンドを渡すようにしています。

リアルタイムログ表示と完了メッセージ

「Execute」ボタンの下に、読み取り専用のテキストボックス(ログエリア)をドカンと新設しました。

実行ボタンを押すと、まず内部で生成された実行コマンドが出力され、その後Auto-Editorの進捗ログがリアルタイムで1行ずつ追記されていきます。

無事に処理が完了すると Done.、万が一エラーで終了した場合は Failed (exit code: N) とハッキリ表示されるようにしました。処理中は「Execute」ボタンをグレーアウト(無効化)して二重実行を防ぐなど、UIとしての優しさも忘れていません。

副次的な大収穫 – 日本語パスのエラー解消

元の実装を読んでみると、sys.argv を直接書き換えて Python 内から直接 auto_editor のメイン関数を呼び出す力技を使っていました。実はこの方式、ファイルパスやフォルダ名に日本語(全角文字)が含まれていると、'ascii' codec can't decode byte というお馴染みの文字コードエラーで爆死します。

そこで、処理の呼び出し部分を subprocess.run 経由で別プロセスとして呼び出す方式へ根本的にお直ししました。OSネイティブのUnicodeパス処理に任せる形になったため、日本語のファイル名でも何食わぬ顔で正常に動作するようになっています!

改造版を実行したところ
改造版Aerell-Auto-Editor-GUIを実行したところ

⚠️ 【重要】複数ファイル一括処理に関する注意事項

前々回の記事でもお話しした通り、最新のAuto-Editor(2025〜2026年現在)で複数ファイルを一括処理しようとすると、本家仕様によりライセンスキーの入力を求められます。

そのため、最新版のAuto-Editor環境のままこのGUIを使ってもエラーになります。一括結合GUIの便利さを100%享受したい場合は、ライセンス制限が導入される前の過去バージョンのAuto-Editorを組み合わせて使用してくださいね(OSS文化における、わかる人だけ勝手にやるスタイルです)。


改修のまとめ

元のプログラムが持っていたシンプルで軽量な構成はそのまま活かしつつ、私のラジコン動画量産システムに必要な機能を全部盛り込むことができました。

項目変更前(オリジナル)変更後(今回リメイク)
ファイル選択1ファイルのみ複数ファイル一括選択・順番入れ替え可
編集オプションExport(書き出し形式)のみSilent Cut / Motion Cut / Margin を追加
実行中の表示なしリアルタイムログ表示 + 完了メッセージ
日本語パスエラーで強制終了するOSネイティブ対応で正常に動作する

Auto-Editor自体、コマンドラインだけでも十分に生産性を上げてくれる素晴らしいツールですが、こうして自分好みのGUIを一枚被せてあげるだけで、使いやすさが劇的に向上しますね。PCを開いて、動画を選んで、ポチッ。これだけでShotcut用のタイムラインが完成する快感はひとしおです。

Python環境があればLinux(もちろんWSLでも)環境でサクッと動きますので、同じような悩みを抱えていた方はぜひフォークしたリポジトリから試してみてください!

リポジトリはこちら:taoman26/Aerell-Auto-Editor-GUI

本日も最後までお読みいただきありがとうございました。

それでは、よい動画編集ライフを!

カテゴリ: その他

コメントする

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

上部へスクロール