このプロジェクトについて

## 概要 Tachikaze は、すでに mp4 に変換済みの録画ファイルを**再エンコードせずに CM カット**するツールです。Amatsukaze に強く影響を受けており、「一度 mp4 にしてしまった録画にも Amatsukaze 流の CM カットを後から適用したい」「同系統の処理を macOS / Linux でも動かしたい」という動機から作られています。 本体が担うのは主に「Trim リスト → ロスレスな mp4 切り出し」で、CM 検出自体は既存ツール(chapter_exe → join_logo_scp)に任せる構成です。 ## 使い方 最短の実行例: ```console $ tachikaze auto IN.mp4 -o OUT.mp4 ``` `auto` は `prepare` → `analyze` → gate → `cut` → `remap-subs` を対話なしで実行します。gate が疑わしいと判定した場合は cut せずに終了し、`--ignore-gate` で無視できます。`analyze`/`auto` はロゴ検出を既定で有効にし、ロゴ矩形も入力から自動推定します(`--no-logo` で無効化)。 判断を挟みたい場合は `analyze` で Trim リストを出力し、`cut` で切り出す二段階の使い方もできます。複数ファイルの処理はシェルのループに任せる想定で、出力名を `*_CMcut.mp4` に固定して glob の再取り込みを避ける例が示されています。 ## 依存 本体に加え、次の外部ツールが `PATH` 上に必要です。 - chapter_exe — 無音・シーンチェンジ検出 - join_logo_scp — CM 判定(Trim 生成) - dtvindex — 共通フレーム番号の索引 - ffmpeg / ffprobe — prepare・検証など ビルドは `cargo build --release --locked`、インストールは `make install`(既定は /usr/local、PREFIX の変更可)。macOS のツールチェーン手順や Docker のドキュメントも用意されています(Dockerfile は公開されていますが、ビルド済みイメージのレジストリ配布はしていません)。 ## 既知の制限 - 動作確認済みの環境は macOS(Apple Silicon)と Linux(arm64、Docker)。Windows は未対応 - 映像は H.264、音声は mp4-atom が認識する Codec(代表例 Opus / AAC) - GOP をキーフレーム境界に丸めるため、カット境界あたり平均 2.1〜2.5 秒の CM が残る(許容する方針) - 1 プロセスにつき入力は 1 本 ## ライセンスと帰属 本体は MIT(Copyright (c) 2026 Masayuki Mizuno)。Amatsukaze 本体は移植しておらず、アルゴリズムやパイプラインの参照元・着想源として扱っています。ロゴ検出の一部(src/logo/score.rs、src/logo/interval.rs)は Amatsukaze 由来の MIT コードの移植で、原典どおりの著作権表示を保持しています。ライセンス不明な delogo 由来コードは移植せず、数式から書き下ろしています。実行時に呼ぶ外部ツール(chapter_exe / join_logo_scp / dtvindex / ffmpeg)は GPL 系が多いものの、別プロセスとして起動するだけでリンクや同一アドレス空間の共有はなく、受け渡しはファイルとコマンドライン引数のみです。