v0.3.2
スマートレンダリング対応のカットツールです。**カット点にかかる部分 GOP だけを再エンコードし、残りはビット単位でそのままコピーします。**放送録画(MPEG-2 TS)から CM を落とす用途を主眼に置いています。
0.3.2 で、録画済み Blu-ray(BDAV)を読めるようになりました。ディスクをフォルダーのまま、あるいは .iso のままマウントせずに開き、中の録画を番組名で一覧します。
ダウンロード
| ファイル | 対象 |
|---|---|
SmartCut_0.3.2_amd64.AppImage |
Linux x64。glibc 2.39 以上(Ubuntu 24.04 / Debian 13 / Fedora 40 以降)。FUSE が必要です |
SmartCut-0.3.2-linux-x86_64.tar.gz |
Linux x64 可搬版。解凍して ./smartcut。中身は AppImage と同じ一式で、FUSE は不要です |
smartcut_0.3.2_amd64.deb |
Debian 13 / Ubuntu 25.04 以降。3.0MB。GUI を smartcut、コマンドライン版を smartcut-cli として入れます |
SmartCut_0.3.2_x64-setup.exe |
Windows x64 インストーラ。WebView2 ランタイムが必要です |
smartcut-portable-x64-0.3.2.zip |
Windows x64 可搬版。解凍して smartcut.exe を実行します |
FFmpeg を別途入れる必要があるのは deb だけです。ほかの配布物には同梱しています。
0.3.1 からの変更
録画済み Blu-ray(BDAV)を、そのまま開きます
BDAV は Blu-ray の録画側の形式です。レコーダーが書くもの、オーサリングツールが「録画を詰めたディスク」として書くものであって、市販ソフトの BDMV ではありません。フォルダーでも .iso でも、ウィンドウにドロップすれば中の録画が 1 行ずつ並びます。名前は 00001.m2ts ではなく番組名で、その情報はディスク自身の索引にあります。
$ smartcut Anime_Test.iso
disc : Anime_Test.iso
3 recording(s)
1 00:08:30.010 2026年08月17日01時00分-BS11イレブン-アズールレーン びそくぜんしんっ!にっ!! #07 2 mark(s)
2 00:08:30.010 2026年08月24日01時00分-BS11イレブン-アズールレーン びそくぜんしんっ!にっ!! #08 2 mark(s)
3 00:08:29.976 2026年08月31日01時00分-BS11イレブン-アズールレーン びそくぜんしんっ!にっ!! #09 2 mark(s)
name one with --title N to open it
smartcut Anime.iso # 何が入っているか
smartcut Anime.iso --title 2 --cut 8.0-20.0 -o out.ts- **マウントしません。**イメージはその場で読みます。マウントには root とループデバイスが必要で、編集の間じゅうマウントを保持するのは、落ちた後に取り残されたマウントを意味します。
.m2tsはイメージの中で 1 本の連続したバイト列なので、必要なのは「イメージの何バイト目から何バイト」だけであり、それは libavformat のsubfileにそのまま渡せます。以降の走査・シーク・コピーは通常のファイルと同じ経路を通ります。 - **番組名は ARIB STD-B24 から読みます。**番組名を持っているのはディスクの索引だけで、それは UTF-8 ではありません。文字符号を解釈するのはここだけで、放送のバイトはそのまま運ぶという方針は変わっていません。
- **レコーダーが打ったチャプターが、キーフレームとしてタイムラインに載ります。**日本の録画では CM の境目そのものであることが多いためです。読むのは初めて開いたときだけで、
.keyframeがあればそちらが優先されます。 - **カットはディスクと同じ場所に、番組名で書かれます。**イメージの中には書けないためです。
- フォルダーに
.isoを並べておけば、一晩分のディスクがそのまま一覧になります。 - 暗号化されたディスクは対象外です。
読み方と、できないことは BDAV discs(日本語)にあります。
.m2ts に書くときは、その旨を表示します
拡張子を .m2ts にすると、libavformat は Blu-ray 自身の枠で書きます。192 バイトのパケットと、Blu-ray の PID 配置です。どちらも多重化器が決めるものであり、SmartCut が戻すテーブルが説明しているものとは違います。そこで .m2ts に書くときは放送のテーブルを多重化器に任せ、後から気づくのではなくその場で表示します。テーブルを残したければ .ts で書いてください。
テスト
tests/run_bdav_tests.sh を追加しました(12 本)。通常のフィクスチャから BDAV ディスクを組み立てます。MPEG-2 TS を 192 バイトのパケットに詰め直し、索引ファイルを書き、genisoimage で UDF イメージに包みます。そのうえで、フォルダーから作ったカットと、イメージの中から作ったカットがバイト単位で一致することを要求します。これがこの機能の主張そのものだからです。
既存の 13 スイートと合わせ、開発 VM ですべて通っています(144 本)。Linux と Windows の配布物はこのツリーから作られ、AppImage は VM のデスクトップで素材を開いてカットするところまで確認しました。