logoGuilloの更新版をリリースしました。
マイナーバグFIXです。
変更点(v2.10 -> v2.12)
・処理完了後に、avs2yuv又はMOD(avs2yuv.exe/avs2pipe.exe/avs2pipemod.exe)の標準出力パイプにデータが残っているか確認せずに閉じていたのを修正
*"プロセスが、存在しないパイプに書き込もうとしました。"のエラーが出る場合があるので対策
・その他細かい実装上の問題点を修正
・32bit版を廃止
・開発環境をVS2008からVS2015に変更
*GUIフロントエンドの設定ファイル含め、v2.00-v2.10とは後方互換性があります。
*また、特に検出パラメータを再調整する必要はありません。
*GUIフロントエンドはv2.07から同じ物です。
入手先
Googleドライブ(旧Googleドキュメント)に置いておきます。リンク先のダウンロードボタンを押してください。
logoGuillo_v212_r1.zip
2016/04/03
2014/04/11
ロゴ検出型自動CMカットプログラム logoGuillo v2.10 を公開しました
v2.12を公開しました。
logoGuilloの更新版をリリースしました。
要望が数件あった対応動画形式の拡張です。
変更点(v2.09 -> v2.10)
・任意のAvisynthスクリプト経由での動画読み込みに対応
入力プラグインとして付属のUSE_AVSを指定し、動画ファイルとしてAvsファイルを指定してください。
*Avsファイルの最後でlogoGuilloが対応している形式のクリップを返す必要があります。
・DirectShow Filterでの動画読み込みに正式対応
入力プラグインとして付属のUSE_DSFを指定してください。
*GUIフロントエンドの設定ファイル含め、v2.00-v2.09とは後方互換性があります。
*また、特に検出パラメータを再調整する必要はありません。
*GUIフロントエンドはv2.07から同じ物です。
理論上はDirectShow Filter又はAvisynthで使用できる各種デコーダーさえ対応していれば、どんな動画形式でも読み込む事が可能ですが、デコーダーの動作がlogoGuilloの想定通りである事が大前提です。
そのためfpsや総フレーム数が正しく報告されなかったり、シーク動作が行えない、アスペクト、インターレース、YC伸張、色空間の変換等がデコーダー側で勝手に処理される場合には正常に動作しない場合があります。また、動作しても実用的なパフォーマンスが出ない場合があります。
入手先
Googleドライブ(旧Googleドキュメント)に置いておきます。リンク先の左上のボタンのFile->Downloadを選択してください。
logoGuillo_v210_r1.zip
logoGuilloの更新版をリリースしました。
要望が数件あった対応動画形式の拡張です。
変更点(v2.09 -> v2.10)
・任意のAvisynthスクリプト経由での動画読み込みに対応
入力プラグインとして付属のUSE_AVSを指定し、動画ファイルとしてAvsファイルを指定してください。
*Avsファイルの最後でlogoGuilloが対応している形式のクリップを返す必要があります。
・DirectShow Filterでの動画読み込みに正式対応
入力プラグインとして付属のUSE_DSFを指定してください。
*GUIフロントエンドの設定ファイル含め、v2.00-v2.09とは後方互換性があります。
*また、特に検出パラメータを再調整する必要はありません。
*GUIフロントエンドはv2.07から同じ物です。
理論上はDirectShow Filter又はAvisynthで使用できる各種デコーダーさえ対応していれば、どんな動画形式でも読み込む事が可能ですが、デコーダーの動作がlogoGuilloの想定通りである事が大前提です。
そのためfpsや総フレーム数が正しく報告されなかったり、シーク動作が行えない、アスペクト、インターレース、YC伸張、色空間の変換等がデコーダー側で勝手に処理される場合には正常に動作しない場合があります。また、動作しても実用的なパフォーマンスが出ない場合があります。
入手先
Googleドライブ(旧Googleドキュメント)に置いておきます。リンク先の左上のボタンのFile->Downloadを選択してください。
logoGuillo_v210_r1.zip
ラベル:
Avisynth,
logoGuillo,
エンコード,
日記
2014/04/05
ロゴ検出型自動CMカットプログラム logoGuillo v2.09 を公開しました
v2.10を公開しました。
logoGuilloの更新版をリリースしました。
変更点(v2.08b -> v2.09)
・動画のfpsを強制変換する機能を追加
(-fpsChg f) fpsの指定と強制変換(f = 小数[frame/sec])
・動画のfpsを任意の値で指定します。内部でAvisynthのChangeFPS(Linear=true)が呼び出されます。
デコーダーが出力するビデオのフレームレートが正常では無い場合に使用します。通常は指定する必要はありません。
29.97fpsを指定すると厳密な値(30000/1001)fpsに補正されます。
同様に以下のfpsを指定した場合も補正されます。
(23.98/25.00/29.97/30.00/50.00/59.94/60.00fps)
*GUIフロントエンドの設定ファイル含め、v2.00-v2.08bとは後方互換性があります。
*また、特に検出パラメータを再調整する必要はありません。
*GUIフロントエンドはv2.07から同じ物です。
入手先
Googleドライブ(旧Googleドキュメント)に置いておきます。リンク先の左上のボタンのFile->Downloadを選択してください。
logoGuillo_v209_r1.zip
logoGuilloの更新版をリリースしました。
変更点(v2.08b -> v2.09)
・動画のfpsを強制変換する機能を追加
(-fpsChg f) fpsの指定と強制変換(f = 小数[frame/sec])
・動画のfpsを任意の値で指定します。内部でAvisynthのChangeFPS(Linear=true)が呼び出されます。
デコーダーが出力するビデオのフレームレートが正常では無い場合に使用します。通常は指定する必要はありません。
29.97fpsを指定すると厳密な値(30000/1001)fpsに補正されます。
同様に以下のfpsを指定した場合も補正されます。
(23.98/25.00/29.97/30.00/50.00/59.94/60.00fps)
*GUIフロントエンドの設定ファイル含め、v2.00-v2.08bとは後方互換性があります。
*また、特に検出パラメータを再調整する必要はありません。
*GUIフロントエンドはv2.07から同じ物です。
入手先
Googleドライブ(旧Googleドキュメント)に置いておきます。リンク先の左上のボタンのFile->Downloadを選択してください。
logoGuillo_v209_r1.zip
ラベル:
Avisynth,
logoGuillo,
エンコード,
日記
2013/08/02
ロゴ検出型自動CMカットプログラム logoGuillo v2.08beta を公開しました
v2.10を公開しました。
logoGuilloの更新版をリリースしました。
パワーユーザー向けですが、ロゴ・シーンチェンジ・字幕に加えて無音情報を利用してのCMカットが可能になります。
全機能のデバッグが出来ていないのでβ版としました。オプションのデフォルト値も余り調整していないので必要なら変更して下さい。
変更点(v2.07b -> v2.08beta)
・無音フレームリストの外部読み込みに対応(CMカットモード)
無音フレーム情報を利用してシーンチェンジの検出精度を向上させます。
シーンチェンジが検出されても無音でなければシーンチェンジとして扱いません。
(-useSil "path") 無音フレームリストのフルパスを指定
・フォーマットは学習時に使用するフレームリストと同じです。
例:
3
5
10
12
*3-5、10-12フレームが無音区間
(-silRawFmt)
無音フレームリストのフォーマットが無音フレーム番号の列挙形式(1行1フレーム)の場合に指定します。
例:
3
4
5
10
11
12
(-silMrg int) 無音区間の拡張マージンを指定する
・値域 0 <= n <= 9999 (デフォルト:1)
*1を指定すると上記の例では2-6、9-13フレームが無音として扱われます。
*拡張処理は-silMinの処理後に行われます。
(-silMin int) 指定長さ未満の無音区間を無視する
・値域 0 <= n <= 9999 (デフォルト:4)
*GUIフロントエンドの設定ファイル含め、v2.00-v2.07bとは後方互換性があります。
*また、特に検出パラメータを再調整する必要はありません。
*GUIのフロントエンドはv2.07と同じ物です。
無音フレームリストの作り方
基本的にAvisynthからMinMaxAudioで音量が閾値以下のフレームを判定して書き出せば作成可能です。但し音ズレ等には注意して下さい。
具体的なコマンドの記述方法等はChikuzen氏の記事、Ch's barn:CM検出マクロ for AvsP等を参考にして下さい。
入手先
Googleドライブ(旧Googleドキュメント)に置いておきます。リンク先の左上のボタンのFile->Downloadを選択してください。
logoGuillo_v208beta_r4.zip
logoGuilloの更新版をリリースしました。
パワーユーザー向けですが、ロゴ・シーンチェンジ・字幕に加えて無音情報を利用してのCMカットが可能になります。
全機能のデバッグが出来ていないのでβ版としました。オプションのデフォルト値も余り調整していないので必要なら変更して下さい。
![]() |
| シーンチェンジ検出への無音フレーム情報の利用 |
変更点(v2.07b -> v2.08beta)
・無音フレームリストの外部読み込みに対応(CMカットモード)
無音フレーム情報を利用してシーンチェンジの検出精度を向上させます。
シーンチェンジが検出されても無音でなければシーンチェンジとして扱いません。
(-useSil "path") 無音フレームリストのフルパスを指定
・フォーマットは学習時に使用するフレームリストと同じです。
例:
3
5
10
12
*3-5、10-12フレームが無音区間
(-silRawFmt)
無音フレームリストのフォーマットが無音フレーム番号の列挙形式(1行1フレーム)の場合に指定します。
例:
3
4
5
10
11
12
(-silMrg int) 無音区間の拡張マージンを指定する
・値域 0 <= n <= 9999 (デフォルト:1)
*1を指定すると上記の例では2-6、9-13フレームが無音として扱われます。
*拡張処理は-silMinの処理後に行われます。
(-silMin int) 指定長さ未満の無音区間を無視する
・値域 0 <= n <= 9999 (デフォルト:4)
*GUIフロントエンドの設定ファイル含め、v2.00-v2.07bとは後方互換性があります。
*また、特に検出パラメータを再調整する必要はありません。
*GUIのフロントエンドはv2.07と同じ物です。
無音フレームリストの作り方
基本的にAvisynthからMinMaxAudioで音量が閾値以下のフレームを判定して書き出せば作成可能です。但し音ズレ等には注意して下さい。
具体的なコマンドの記述方法等はChikuzen氏の記事、Ch's barn:CM検出マクロ for AvsP等を参考にして下さい。
入手先
Googleドライブ(旧Googleドキュメント)に置いておきます。リンク先の左上のボタンのFile->Downloadを選択してください。
logoGuillo_v208beta_r4.zip
ラベル:
Avisynth,
logoGuillo,
エンコード,
日記
2013/04/07
ロゴ検出型自動CMカットプログラム logoGuillo v2.07b を公開しました
v2.08betaを公開しました。
今でも応援して下さっている方々、有り難う御座います。
logoGuilloの保守更新をリリースしました。
GUIフロントエンドの設定ファイル含め、v2.00-v2.07とは後方互換性があります。
また、特に検出パラメータを再調整する必要はありません。
変更点(v2.07 -> v2.07b)
・L-SMASH-Works/LSMASHSource.dll/LWLibavVideoSourceに対応しました。
*GUIフロントエンド側の表記はそのままです。
LSMASHSource.dllはPOP氏のビルド(r540)で確認しました。
内部でコマンド" LWLibavVideoSource("source file", dr=True) "を使用します。
fpsが正常に取得できない場合は -fps f オプションを指定して下さい。
高速な動作の為に事前にインデックスファイルを生成してください。
またlogoGuilloはシングルスレッドなので律速する可能性があります。
*SSE4.2に対応したintel製CPUでのみSIMD拡張命令が使用されます。
より高速に動作させたい場合は複数本同時処理してください。
・入力最大解像度を1920x1080から1920x1088に変更しました。
ベンチマーク結果
インデックスファイルが生成された状態でのfps比較結果。
m2v.vfp ver. 0.7.5 ( 53943 frame ,211.04 sec ,255.61 fps)
LSMASHSource.dll r540 ( 53947 frame ,113.07 sec ,477.12 fps)
m2v.vfp比で約87%高速化しました。まともにデバッグしていませんが動くと思います。
logoGuilloが動作しない方へ
基本的にAvisynthのプラグインはAvisynth直下のpluginsディレクトリ
Program Files\AviSynth 2.x\plugins
Program Files(x86)\AviSynth 2.x\plugins
等に配置して下さい。
またUAC無効の管理者権限推奨です。(開発環境と同じ)
入手先
Googleドライブ(旧Googleドキュメント)に置いておきます。リンク先の左上のボタンのFile->Downloadを選択してください。
logoGuillo_v207b.zip
今でも応援して下さっている方々、有り難う御座います。
logoGuilloの保守更新をリリースしました。
GUIフロントエンドの設定ファイル含め、v2.00-v2.07とは後方互換性があります。
また、特に検出パラメータを再調整する必要はありません。
変更点(v2.07 -> v2.07b)
・L-SMASH-Works/LSMASHSource.dll/LWLibavVideoSourceに対応しました。
*GUIフロントエンド側の表記はそのままです。
LSMASHSource.dllはPOP氏のビルド(r540)で確認しました。
内部でコマンド" LWLibavVideoSource("source file", dr=True) "を使用します。
fpsが正常に取得できない場合は -fps f オプションを指定して下さい。
高速な動作の為に事前にインデックスファイルを生成してください。
またlogoGuilloはシングルスレッドなので律速する可能性があります。
*SSE4.2に対応したintel製CPUでのみSIMD拡張命令が使用されます。
より高速に動作させたい場合は複数本同時処理してください。
・入力最大解像度を1920x1080から1920x1088に変更しました。
ベンチマーク結果
インデックスファイルが生成された状態でのfps比較結果。
m2v.vfp ver. 0.7.5 ( 53943 frame ,211.04 sec ,255.61 fps)
LSMASHSource.dll r540 ( 53947 frame ,113.07 sec ,477.12 fps)
m2v.vfp比で約87%高速化しました。まともにデバッグしていませんが動くと思います。
logoGuilloが動作しない方へ
基本的にAvisynthのプラグインはAvisynth直下のpluginsディレクトリ
Program Files\AviSynth 2.x\plugins
Program Files(x86)\AviSynth 2.x\plugins
等に配置して下さい。
またUAC無効の管理者権限推奨です。(開発環境と同じ)
入手先
Googleドライブ(旧Googleドキュメント)に置いておきます。リンク先の左上のボタンのFile->Downloadを選択してください。
logoGuillo_v207b.zip
ラベル:
Avisynth,
logoGuillo,
エンコード
2012/12/31
NeuronDoubler紹介映像を作成
動画制作の練習がてらNeuronDoublerの紹介動画を作成してみました。
内容はこれまでの開発結果のまとめとニューラルネットワークの学習過程での出力変化の映像等。
3分程度の尺に綺麗に押し込むのは難しいです。
動画はニコニコ動画にアップロード。いつの間にか一般会員でも1280x720まで投稿できるようになっています。
投稿動画は解像度が必要かつほぼスライドショー形式なので720pで作成しビットレート削減の為10fpsにしてみました。
余談ですが、現行仕様でのDbD表示に拘るよりも今後のプレイヤーのサイズ仕様変更を考えてビットレートと容量の許す範囲で大きめの解像度で作成しておくのが良さそうです。
しかしビットレート制限が厳しいので普通の動画だと960x540や640x360あたりが限界かと思います。
内容はこれまでの開発結果のまとめとニューラルネットワークの学習過程での出力変化の映像等。
3分程度の尺に綺麗に押し込むのは難しいです。
動画はニコニコ動画にアップロード。いつの間にか一般会員でも1280x720まで投稿できるようになっています。
投稿動画は解像度が必要かつほぼスライドショー形式なので720pで作成しビットレート削減の為10fpsにしてみました。
余談ですが、現行仕様でのDbD表示に拘るよりも今後のプレイヤーのサイズ仕様変更を考えてビットレートと容量の許す範囲で大きめの解像度で作成しておくのが良さそうです。
しかしビットレート制限が厳しいので普通の動画だと960x540や640x360あたりが限界かと思います。
ラベル:
NeuronDoubler,
エンコード,
ニコニコ動画,
日記
2012/12/20
PSNRによる画像拡大アルゴリズム7種の画質評価結果
この記事は古いので、
MSE・PSNRによる画像拡大アルゴリズム10種・ソフト8種、計14パターンの画質評価結果
を見て下さい。
各種画像拡大アルゴリズムとソフトウェアの紹介
評価に使用した超解像・画像拡大アルゴリズムの紹介です。Photoshop以外は無料で入手して使用できる物です。
「人工知能超解像プログラム NeuronDoubler」
当方の開発した超解像を行うフリーソフトウェアです。ニューラルネットワークを応用した独自アルゴリズム(連想記憶型人工知能による一種のデータベース型超解像)で動作します。
使用ソフト/設定:NeuronDoubler v3.10 / デフォルト設定
「100x100倍 超解像ソフト」
神戸大学の研究室が公開している超解像ソフト。データベース型超解像と思われます。
使用ソフト/設定:100x100倍 超解像ソフト Windows用 Version 2012.06.04 / デフォルト設定
「Lanczos-3(ランチョス3)」
高品質で有名な画像の拡大/縮小アルゴリズムです。実装しているソフトウェアは少なめです。
使用ソフト/設定:藤 -Resizer- v2.63.0 / Lanczos-3
「Bicubic(バイキュービック)」
下記のバイリニアと合わせ、一般的に普及している拡大アルゴリズム。
使用ソフト/設定:Photoshop CS5 / バイキュービック法 - 滑らか(拡大に最適)
「Bilinear(バイリニア)」
単純な線形補間による拡大アルゴリズム。
使用ソフト/設定:Photoshop CS5 / バイリニア
「Nearest neighbor(ニアレストネイバー)」
最も単純な拡大アルゴリズム。整数倍の拡大では元画像がそのまま引き延ばされます。
使用ソフト/設定:Photoshop CS5 / ニアレストネイバー
「SmillaEnlarger」
有名なオープンソースの画像拡大ソフト。アルゴリズムは独自のようです。
使用ソフト/設定:SmillaEnlarger version 0.9.0 / デフォルト設定
MSE・PSNRによる画像拡大アルゴリズム10種・ソフト8種、計14パターンの画質評価結果
を見て下さい。
各種画像拡大アルゴリズムとソフトウェアの紹介
評価に使用した超解像・画像拡大アルゴリズムの紹介です。Photoshop以外は無料で入手して使用できる物です。
「人工知能超解像プログラム NeuronDoubler」
当方の開発した超解像を行うフリーソフトウェアです。ニューラルネットワークを応用した独自アルゴリズム(連想記憶型人工知能による一種のデータベース型超解像)で動作します。
使用ソフト/設定:NeuronDoubler v3.10 / デフォルト設定
「100x100倍 超解像ソフト」
神戸大学の研究室が公開している超解像ソフト。データベース型超解像と思われます。
使用ソフト/設定:100x100倍 超解像ソフト Windows用 Version 2012.06.04 / デフォルト設定
「Lanczos-3(ランチョス3)」
高品質で有名な画像の拡大/縮小アルゴリズムです。実装しているソフトウェアは少なめです。
使用ソフト/設定:藤 -Resizer- v2.63.0 / Lanczos-3
「Bicubic(バイキュービック)」
下記のバイリニアと合わせ、一般的に普及している拡大アルゴリズム。
使用ソフト/設定:Photoshop CS5 / バイキュービック法 - 滑らか(拡大に最適)
「Bilinear(バイリニア)」
単純な線形補間による拡大アルゴリズム。
使用ソフト/設定:Photoshop CS5 / バイリニア
「Nearest neighbor(ニアレストネイバー)」
最も単純な拡大アルゴリズム。整数倍の拡大では元画像がそのまま引き延ばされます。
使用ソフト/設定:Photoshop CS5 / ニアレストネイバー
「SmillaEnlarger」
有名なオープンソースの画像拡大ソフト。アルゴリズムは独自のようです。
使用ソフト/設定:SmillaEnlarger version 0.9.0 / デフォルト設定
ラベル:
NeuronDoubler,
エンコード
2012/11/04
L字テロップを自動検出する方法を考える
・L字テロップが多い
最近の番組は結構な頻度でL字テロップが入ります。そこでL字テロップを自動検出出来ないか考えてみる事にしました。
・パターン認識で検出出来ないか考える
L字テロップは局や番組によってL字の向き・背景色・幅・表示内容の動静もまちまちです。
さらにコの字テロップやコの字ワイプテロップ(一部が半透明で映像部分に被る)も存在し、加えてテロップが2重3重の入れ子になる場合もあるようです。
これをまともに認識させるのは難易度が高そうなので没案に。認識出来ても劇中劇のような演出で枠が付いていると誤動作しそうです。
・ロゴ検出(logoGuillo)を利用してL字テロップを検出する
と言う訳で、安直な方法ですが現行技術の延長で解決を図ります。
最近の番組は結構な頻度でL字テロップが入ります。そこでL字テロップを自動検出出来ないか考えてみる事にしました。
![]() |
| そのテロップ、本当に必要ですか? |
・パターン認識で検出出来ないか考える
L字テロップは局や番組によってL字の向き・背景色・幅・表示内容の動静もまちまちです。
さらにコの字テロップやコの字ワイプテロップ(一部が半透明で映像部分に被る)も存在し、加えてテロップが2重3重の入れ子になる場合もあるようです。
これをまともに認識させるのは難易度が高そうなので没案に。認識出来ても劇中劇のような演出で枠が付いていると誤動作しそうです。
・ロゴ検出(logoGuillo)を利用してL字テロップを検出する
と言う訳で、安直な方法ですが現行技術の延長で解決を図ります。
ラベル:
logoGuillo,
エンコード,
日記
2012/09/23
著作権法改正案の施行に伴う当サイトの対応について
*当記事には法律に関する記載がありますが、当方は専門家ではない為誤認識や推測が含まれる場合があります。
2012年10月1日より著作権法の一部を改正する法律の下記項目が施行されるようです。
・公文書管理法等に基づく利用に係る規定の整備
・技術的保護手段に係る規定の整備並びに違法ダウンロードの刑事罰化に係る規定の整備(の一部)
参考:平成24年通常国会 著作権法改正について(文化庁)
PCでの録画に関する技術や開発には以下の項目が関係していると思われます。
・技術の開発又は実用化のための試験の用に供するための利用
・著作権等の技術的保護手段に係る規定の整備
しかし一体何が違法で何が合法なのかは私には判別できませんでした。とはいえ何もしない訳にはいきませんのでLoggia Logic(当サイト)においては以下の対応を行いました。
・一部ソフトウェアに関する記述の削除
・一部表現の修正及び削除
*一般的な技術であるMPEG2/H264の動画処理やロゴ認識等の画像処理、BATコマンドのTips、ファイル名の成形等に関する記事や記載は残してあります。
また上記対応に加えて当方の開発環境でも9月末より大幅に縮退運転及び使用中止をする事にしました。つきましては下記内容に関する問題や不具合、Out of date等の対応は基本的に行えませんのでご了承ください。
・ロゴ検出型自動CMカットプログラム logoGuillo
・setTsTitle(TSファイル名の成形)
・その他一部の記事
上記法律の内容及び影響範囲が認識できない為に過剰な対応を行っている部分もあるとは思いますが、公序良俗と法を遵守し常に安全側に行動する為ですのでご了承下さい。
本件に関しまして未だ対応不十分な点などが御座いましたら、御手数ですがご指摘頂ければ幸いです。
Wirewriggle
2012年10月1日より著作権法の一部を改正する法律の下記項目が施行されるようです。
・公文書管理法等に基づく利用に係る規定の整備
・技術的保護手段に係る規定の整備並びに違法ダウンロードの刑事罰化に係る規定の整備(の一部)
参考:平成24年通常国会 著作権法改正について(文化庁)
PCでの録画に関する技術や開発には以下の項目が関係していると思われます。
・技術の開発又は実用化のための試験の用に供するための利用
・著作権等の技術的保護手段に係る規定の整備
しかし一体何が違法で何が合法なのかは私には判別できませんでした。とはいえ何もしない訳にはいきませんのでLoggia Logic(当サイト)においては以下の対応を行いました。
・一部ソフトウェアに関する記述の削除
・一部表現の修正及び削除
*一般的な技術であるMPEG2/H264の動画処理やロゴ認識等の画像処理、BATコマンドのTips、ファイル名の成形等に関する記事や記載は残してあります。
また上記対応に加えて当方の開発環境でも9月末より大幅に縮退運転及び使用中止をする事にしました。つきましては下記内容に関する問題や不具合、Out of date等の対応は基本的に行えませんのでご了承ください。
・ロゴ検出型自動CMカットプログラム logoGuillo
・setTsTitle(TSファイル名の成形)
・その他一部の記事
上記法律の内容及び影響範囲が認識できない為に過剰な対応を行っている部分もあるとは思いますが、公序良俗と法を遵守し常に安全側に行動する為ですのでご了承下さい。
本件に関しまして未だ対応不十分な点などが御座いましたら、御手数ですがご指摘頂ければ幸いです。
Wirewriggle
ラベル:
logoGuillo,
setTsTitle,
エンコード,
日記
2012/09/16
エンコード終了後に休止状態に入るか選んでから処理するBAT
エンコードに限った話ではないのですが、PCで時間の掛かる処理をBAT処理する事はよくあります。
さらに処理が完了したら自動的に休止状態に移行してくれると気軽に無人稼働出来て便利です。
しかし別作業をしながらバックグラウンドで処理する場合等、毎回休止状態に入られると都合の悪い事もあります。
という訳で始めに休止状態に入るか選択してから処理を行うBATの紹介です。
最近は電気代も高いので夏は外出中、冬は就寝中に100GFLOPSの暖房器具を稼働する事で節電できます。
BATの処理内容
1.BATを実行
2.処理完了後に休止状態に入るか選択(Yes/No)する
3.処理が実行される
4.最初にYを選択した場合は休止状態に移行する
サンプルコード
さらに処理が完了したら自動的に休止状態に移行してくれると気軽に無人稼働出来て便利です。
しかし別作業をしながらバックグラウンドで処理する場合等、毎回休止状態に入られると都合の悪い事もあります。
という訳で始めに休止状態に入るか選択してから処理を行うBATの紹介です。
最近は電気代も高いので夏は外出中、冬は就寝中に100GFLOPSの暖房器具を稼働する事で節電できます。
BATの処理内容
1.BATを実行
2.処理完了後に休止状態に入るか選択(Yes/No)する
3.処理が実行される
4.最初にYを選択した場合は休止状態に移行する
サンプルコード
エンコード関連記事一覧
著作権法改正案の施行に伴う当サイトの対応について
エンコード関連の記事が増えた為、インデックスページを作成しました。
2012/09/16までに投稿した各記事へのリンクを纏めてあります。
*下記ソフトウェアに関する記事は以下のリンクから辿って下さい。
・ロゴ検出型自動CMカットプログラム logoGuillo
・setTsTitle(TSファイル名の成形)
エンコード関連記事一覧
エンコード関連の記事が増えた為、インデックスページを作成しました。
2012/09/16までに投稿した各記事へのリンクを纏めてあります。
*下記ソフトウェアに関する記事は以下のリンクから辿って下さい。
・ロゴ検出型自動CMカットプログラム logoGuillo
・setTsTitle(TSファイル名の成形)
エンコード関連記事一覧
2012/09/15
現在運用中のx264オプション
現在運用中のエンコード環境でのx264オプションに関する記事です。
前提条件と仕様
・AVSは以前の記事に掲載した物と組み合わせて使用しています。
*別記事:現在運用中のAvisynth Scriptのマスタ
・アニメ用(実写は縮みにくく時間が掛かるのでエンコードしません)
*別記事:MPEG2を再エンコードせずにCMスキップ用チャプター&字幕付の(m2v+aac).mp4を作成する
・24fps(24000/1001 fps) CFR
・x264のバージョンはr2085 64bitを使用(しばらく更新していないので古いです)
・ハードウェア環境
CPU:Intel Core i7-860
MEM:DDR3-1333 12GB
GPU:AMD Radeon HD5850 x2
x264オプション(ソース別の設定)
*解像度・ピクセルアスペクト、fps、最大ビットレートの制限設定
*別記事:x264でビットレートを制限するメリット
【1440x1080 24fps 16:9 (地上波)】
--vbv-maxrate 17254 --vbv-bufsize 17254
--input-res 1440x1080 --sar 4:3 --fps 23.976025
【1920x1080 24fps 16:9 (BS)】
--vbv-maxrate 24576 --vbv-bufsize 24576
--input-res 1920x1080 --sar 1:1 --fps 23.976025
【1920x1080 24fps 16:9 (BS11)】
--vbv-maxrate 18432 --vbv-bufsize 18432
--input-res 1920x1080 --sar 1:1 --fps 23.976025
x264オプション(共通の設定)
*画質の設定、キーフレーム挿入頻度、マルチスレッド関係等
前提条件と仕様
・AVSは以前の記事に掲載した物と組み合わせて使用しています。
*別記事:現在運用中のAvisynth Scriptのマスタ
・アニメ用(実写は縮みにくく時間が掛かるのでエンコードしません)
*別記事:MPEG2を再エンコードせずにCMスキップ用チャプター&字幕付の(m2v+aac).mp4を作成する
・24fps(24000/1001 fps) CFR
・x264のバージョンはr2085 64bitを使用(しばらく更新していないので古いです)
・ハードウェア環境
CPU:Intel Core i7-860
MEM:DDR3-1333 12GB
GPU:AMD Radeon HD5850 x2
x264オプション(ソース別の設定)
*解像度・ピクセルアスペクト、fps、最大ビットレートの制限設定
*別記事:x264でビットレートを制限するメリット
【1440x1080 24fps 16:9 (地上波)】
--vbv-maxrate 17254 --vbv-bufsize 17254
--input-res 1440x1080 --sar 4:3 --fps 23.976025
【1920x1080 24fps 16:9 (BS)】
--vbv-maxrate 24576 --vbv-bufsize 24576
--input-res 1920x1080 --sar 1:1 --fps 23.976025
【1920x1080 24fps 16:9 (BS11)】
--vbv-maxrate 18432 --vbv-bufsize 18432
--input-res 1920x1080 --sar 1:1 --fps 23.976025
x264オプション(共通の設定)
*画質の設定、キーフレーム挿入頻度、マルチスレッド関係等
2012/09/09
並列処理を行うBATでエンコードやCMカットを高速化する
はじめに
エンコード等の処理を高速化する手段としてはマルチスレッド化が一般的だと思います。
しかしAvisynthでのフィルタ処理をMT等でマルチスレッド化してもそれほど効果がない場合も多く、またx264はスレッド数を増やすと(僅かですが)ファイルサイズが増加したり画質が低下したりします。
デュアルコアの時代は簡単にCPUを使い切る事ができましたが、最近のCPUでは8スレッドや12スレッドを実行できるのでスレッドを埋めるだけでも大変です。
そこで、古典的ですがメモリやHDD等のリソースの限り何本も同時に処理する事で高速化を図ります。一本あたりのスレッド数を極端に増やす必要がないので効率が良いです。またlogoGuillo等のシングルスレッドアプリも高速化します。
では以下にBATの機能とサンプルを記載します。
主な機能と処理内容
・指定本数(2本以上)毎にペアを作成し並列エンコードする
・m2vファイルを探し、bat,aac,CMカットファイル(txt)があるか確認
・既にmp4ファイルやlogが生成されている場合は処理しない
・フォルダ名に"noenc"が含まれるディレクトリは処理しない
以下のように処理する動画毎にBATファイルが生成されている状態を想定しています。
*私の環境ではマスタBATとAVSを動画毎に自動コピーして処理しています。
・動画A.m2v
・動画A.bat
・動画B.m2v
・動画B.bat
このBATをn本ずつ纏めてパイプで繋いで実行することで並列処理します。
(call 動画A.bat) | (call 動画B.bat)
片方が早く終わるとパイプが存在しないとの警告が出ますが、今のところ100本以上処理した中では正常に動作しています。
また、組み合わせる動画の長さに差があると効率が落ちますが、ファイル名順に処理する場合は大抵同じ番組でペアが生成されるので問題ないと思います。
サンプルBATコード
エンコード等の処理を高速化する手段としてはマルチスレッド化が一般的だと思います。
しかしAvisynthでのフィルタ処理をMT等でマルチスレッド化してもそれほど効果がない場合も多く、またx264はスレッド数を増やすと(僅かですが)ファイルサイズが増加したり画質が低下したりします。
デュアルコアの時代は簡単にCPUを使い切る事ができましたが、最近のCPUでは8スレッドや12スレッドを実行できるのでスレッドを埋めるだけでも大変です。
そこで、古典的ですがメモリやHDD等のリソースの限り何本も同時に処理する事で高速化を図ります。一本あたりのスレッド数を極端に増やす必要がないので効率が良いです。またlogoGuillo等のシングルスレッドアプリも高速化します。
では以下にBATの機能とサンプルを記載します。
主な機能と処理内容
・指定本数(2本以上)毎にペアを作成し並列エンコードする
・m2vファイルを探し、bat,aac,CMカットファイル(txt)があるか確認
・既にmp4ファイルやlogが生成されている場合は処理しない
・フォルダ名に"noenc"が含まれるディレクトリは処理しない
以下のように処理する動画毎にBATファイルが生成されている状態を想定しています。
*私の環境ではマスタBATとAVSを動画毎に自動コピーして処理しています。
・動画A.m2v
・動画A.bat
・動画B.m2v
・動画B.bat
このBATをn本ずつ纏めてパイプで繋いで実行することで並列処理します。
(call 動画A.bat) | (call 動画B.bat)
片方が早く終わるとパイプが存在しないとの警告が出ますが、今のところ100本以上処理した中では正常に動作しています。
また、組み合わせる動画の長さに差があると効率が落ちますが、ファイル名順に処理する場合は大抵同じ番組でペアが生成されるので問題ないと思います。
サンプルBATコード
ラベル:
BAT,
logoGuillo,
エンコード
2012/08/02
setTsTitle v1.32を公開しました
setTsTitleのv1.32を公開しました。
setTsTitleにはTSファイルの内部データを参照解析抽出変更する機能はありません。
更新内容(v1.31 -> v1.32)
・*.errファイルにDropがある場合でのリネームに番組情報が使用されない事があるバグ修正
v1.3xの設定ファイルを引き継ぐ場合の更新方法
v1.32の以下のファイルをv1.3xのディレクトリに上書きして下さい。BATファイルを修正する必要はありません。
・stt03.class
・readme.txt
ダウンロード
Google ドキュメントに置いておきます。リンク先のFileボタン->Downloadを選択してください。
setTsTitle_v132_release.zip
File size: 19.9 KB ( 20331 bytes )
SHA256: 42fbe908fd9dd2f109cfcf213e591e95ee4caa31f03e1205e7ef2452b2e97648
SHA1: bbfb73a327da2da7683199cfbba148b05f9c24b3
MD5: 592eae3eeda867d116c7e0a192ebe7cd
setTsTitleにはTSファイルの内部データを参照解析抽出変更する機能はありません。
更新内容(v1.31 -> v1.32)
・*.errファイルにDropがある場合でのリネームに番組情報が使用されない事があるバグ修正
v1.3xの設定ファイルを引き継ぐ場合の更新方法
v1.32の以下のファイルをv1.3xのディレクトリに上書きして下さい。BATファイルを修正する必要はありません。
・stt03.class
・readme.txt
ダウンロード
Google ドキュメントに置いておきます。リンク先のFileボタン->Downloadを選択してください。
setTsTitle_v132_release.zip
File size: 19.9 KB ( 20331 bytes )
SHA256: 42fbe908fd9dd2f109cfcf213e591e95ee4caa31f03e1205e7ef2452b2e97648
SHA1: bbfb73a327da2da7683199cfbba148b05f9c24b3
MD5: 592eae3eeda867d116c7e0a192ebe7cd
ラベル:
setTsTitle,
エンコード
2012/08/01
setTsTitle v1.31を公開しました
setTsTitleのv1.31を公開しました。
更新内容はバグ修正のみです。
setTsTitleにはTSファイルの内部データを参照解析抽出変更する機能はありません。
更新内容 (v1.30 -> v1.31)
・サブタイトルの検索範囲の決定処理のバグ修正
v1.30の設定ファイルを引き継ぐ場合の更新方法
v1.31の以下のファイルをv1.30のディレクトリに上書きして下さい。BATファイルを修正する必要はありません。
・stt03.class
・readme.txt
ダウンロード
v1.32を公開しました。
Google ドキュメントに置いておきます。リンク先のFileボタン->Downloadを選択してください。
setTsTitle_v131_release.zip
File size: 19.8 KB ( 20252 bytes )
SHA256: b8a05b4272a7f90541818006b33b6341f2b90ba839a5424c689c7becde428b32
SHA1: 55004b89fd6293727b9299661ffc9b7cd2c1ea81
MD5: 87468659b1adb09638eeac58152f9dec
更新内容はバグ修正のみです。
setTsTitleにはTSファイルの内部データを参照解析抽出変更する機能はありません。
更新内容 (v1.30 -> v1.31)
・サブタイトルの検索範囲の決定処理のバグ修正
v1.30の設定ファイルを引き継ぐ場合の更新方法
v1.31の以下のファイルをv1.30のディレクトリに上書きして下さい。BATファイルを修正する必要はありません。
・stt03.class
・readme.txt
ダウンロード
v1.32を公開しました。
ラベル:
setTsTitle,
エンコード
2012/07/29
setTsTitle
2012/08/02更新 (for v1.32)
setTsTitleとは
setTsTitleはEpgDataCap_Bonが出力した各種ファイルに対して、番組情報ファイルを読み込んでのファイル名成形、ドロップの無いエラーログの削除等の補助処理を行います。
setTsTitleにはTSファイルの内部データを参照解析抽出変更する機能はありません。
またSCRenameとは異なり、EpgDataCap_Bonの出力したファイルのみを参照してリネームしますのでスタンドアロン環境で動作します。
setTsTitleは個人的な研究の過程で開発したソフトウェアです。今まで自分用に使用してきましたが、多少手直しして公開します。
フリーウェアですので非商用目的であれば個人・団体を問わず無料で使用可能です。
動作と機能
引数でディレクトリ又はファイルのフルパスを渡すと、以下の3つの処理を行います。その他の引数はありませんので処理の種類は選べません。
*ディレクトリ指定ではなく、ファイル単体で指定して処理する際は*.ts / *.err -> *.program.txtの順番に処理して下さい。(先に番組情報をリネームしてしまうと参照できない為)
setTsTitleとは
setTsTitleはEpgDataCap_Bonが出力した各種ファイルに対して、番組情報ファイルを読み込んでのファイル名成形、ドロップの無いエラーログの削除等の補助処理を行います。
setTsTitleにはTSファイルの内部データを参照解析抽出変更する機能はありません。
またSCRenameとは異なり、EpgDataCap_Bonの出力したファイルのみを参照してリネームしますのでスタンドアロン環境で動作します。
setTsTitleは個人的な研究の過程で開発したソフトウェアです。今まで自分用に使用してきましたが、多少手直しして公開します。
フリーウェアですので非商用目的であれば個人・団体を問わず無料で使用可能です。
動作と機能
引数でディレクトリ又はファイルのフルパスを渡すと、以下の3つの処理を行います。その他の引数はありませんので処理の種類は選べません。
*ディレクトリ指定ではなく、ファイル単体で指定して処理する際は*.ts / *.err -> *.program.txtの順番に処理して下さい。(先に番組情報をリネームしてしまうと参照できない為)
ラベル:
setTsTitle,
エンコード
2012/05/06
ロゴ検出型自動CMカットプログラム logoGuillo v2.07 を公開しました
v2.07bを公開しました。
logoGuilloのv2.07を公開しました。
β版での更新内容の統合と小改良です。大体の機能は実装できたので、概ね完成したと思います。
GUIフロントエンドの設定ファイル含め、v2.00-v2.06β2とは後方互換性があります。
また、特に検出パラメータを再調整する必要はありません。
主な変更点は以下の通りです。
・CMカットモードでフレーム毎のロゴ検出値等をCSV出力するようにした
・ログ出力を無効化する機能を追加
・チャプター出力を無効化する機能を追加
・後番組混入防止機能のデフォルト値を修正
・指定ファイルのフルパスをクリップボードにコピーする機能を追加(GUI)
また、下記のv2.06β及びv2.06β2での変更点も含んでいます。
・Dynamic Threshold Control 機能を追加
・CM出力モードの追加
・字幕データに対するネガティブ/ポジティブワード処理の実装
・外部フレームリストとの論理演算機能を追加
・アンチウイルスでの誤検出対策
logoGuilloのv2.07を公開しました。
β版での更新内容の統合と小改良です。大体の機能は実装できたので、概ね完成したと思います。
GUIフロントエンドの設定ファイル含め、v2.00-v2.06β2とは後方互換性があります。
また、特に検出パラメータを再調整する必要はありません。
主な変更点は以下の通りです。
・CMカットモードでフレーム毎のロゴ検出値等をCSV出力するようにした
・ログ出力を無効化する機能を追加
・チャプター出力を無効化する機能を追加
・後番組混入防止機能のデフォルト値を修正
・指定ファイルのフルパスをクリップボードにコピーする機能を追加(GUI)
また、下記のv2.06β及びv2.06β2での変更点も含んでいます。
・Dynamic Threshold Control 機能を追加
・CM出力モードの追加
・字幕データに対するネガティブ/ポジティブワード処理の実装
・外部フレームリストとの論理演算機能を追加
・アンチウイルスでの誤検出対策
ラベル:
logoGuillo,
エンコード
2012/05/04
logoGuilloの出力を加工してくれるスクリプトが登場
logoGuilloの出力を加工してくれるperlスクリプトが公開されていました。有り難う御座います。
つれづれ~努力と根性?~:続・TDFM2EVFR的な何か
logoGuilloの出力をシーンチェンジ検出と自動VFR用のfps判定を考慮して加工してくれるようです。
15秒単位でのシーンチェンジ検出を行う事で、本編->提供->CMの流れでのロゴ無し提供画面の取りこぼしを防止しているらしい。
*詳細はリンク先で確認して下さい。
ニュースや映画等では提供画面がCMの途中に単独で存在したりCM明け前に挿入されていたりする場合もあるので、アニメ向けでしょうか。
私はどんな番組でも妥協して24fpsか30fpsのCFRに押し込んでしまいますが、VFRを使えば自動で完成度の高いファイルを作成できそうです。
つれづれ~努力と根性?~:続・TDFM2EVFR的な何か
logoGuilloの出力をシーンチェンジ検出と自動VFR用のfps判定を考慮して加工してくれるようです。
15秒単位でのシーンチェンジ検出を行う事で、本編->提供->CMの流れでのロゴ無し提供画面の取りこぼしを防止しているらしい。
*詳細はリンク先で確認して下さい。
ニュースや映画等では提供画面がCMの途中に単独で存在したりCM明け前に挿入されていたりする場合もあるので、アニメ向けでしょうか。
私はどんな番組でも妥協して24fpsか30fpsのCFRに押し込んでしまいますが、VFRを使えば自動で完成度の高いファイルを作成できそうです。
ラベル:
Avisynth,
logoGuillo,
エンコード
2012/04/29
ロゴ検出型自動CMカットプログラム logoGuillo v2.06β2 を公開しました
v2.07を公開したのでそちらを使用して下さい。旧版は削除しました。
前回に続きlogoGuilloのβ版、v2.06β2を公開しました。またβ版につき、配布内容はバイナリのみですのでv2.05の配布パッケージと合わせてご利用下さい。
v2.06βからの主な変更点は、Dynamic Threshold Control 機能の実装です。
高輝度でロゴが見えない局でロゴの背景に高輝度のテロップ等が長期間表示されるとロゴが認識できず本編の一部が欠落する事がありますが、その場合は本編の割合が減少します。
通常は8割程度は本編の筈なので、本編が7割以下しか検出出来なかった場合にはDTCが検出漏れがあると判断しロゴ検出閾値を自動で下げます(増感します)。
また、今回の配布パッケージから実行ファイル名は全て"logoGuillo.exe"としてx64/x86それぞれをディレクトリ分けする事にしました。
前回に続きlogoGuilloのβ版、v2.06β2を公開しました。またβ版につき、配布内容はバイナリのみですのでv2.05の配布パッケージと合わせてご利用下さい。
v2.06βからの主な変更点は、Dynamic Threshold Control 機能の実装です。
高輝度でロゴが見えない局でロゴの背景に高輝度のテロップ等が長期間表示されるとロゴが認識できず本編の一部が欠落する事がありますが、その場合は本編の割合が減少します。
通常は8割程度は本編の筈なので、本編が7割以下しか検出出来なかった場合にはDTCが検出漏れがあると判断しロゴ検出閾値を自動で下げます(増感します)。
また、今回の配布パッケージから実行ファイル名は全て"logoGuillo.exe"としてx64/x86それぞれをディレクトリ分けする事にしました。
ラベル:
logoGuillo,
エンコード
2012/04/22
ロゴ検出型自動CMカットプログラム logoGuillo v2.06β を公開しました
v2.07を公開したのでそちらを使用して下さい。旧版は削除しました。
そろそろlogoGuilloを初公開してから半年です。ほぼ実証実験に近いv1.00の頃から利用されている方は少ないとは思いますが、今までお付き合い頂き有り難う御座います。
さて、今回logoGuilloのv2.06βを公開しました。v2.05からはポスト処理系の機能追加がメインの小改良ですが、あまりデバッグが出来ていないので人柱向けのβ版となっています。またβ版につき、配布内容はバイナリのみですのでv2.05の配布パッケージと合わせてご利用下さい。
主な変更点は以下の通りです。
・字幕データに対するネガティブ/ポジティブワード処理の実装
・外部フレームリストとの論理演算機能を追加
logoGuilloは自動的に不要なシーン(CM)を判定する事で、視聴時間と容量を節約する事を目指してきました。なるべく本編が欠けないよう安全側に設計してあるので、全自動で任せても不完全ながらそれなりの結果を得られるようにはなったと思います。
今回は更に一歩、字幕情報を元に内容にまで踏み込んで不愉快なシーンを取り除く実験です。某社のレコーダーのダイジェスト再生とは逆の発想です。
ネガティブワード機能は、不愉快なキーワード等を登録して、特定の話題周辺のシーンを削除する機能です。
嫌なら見るな、という言葉に習い番組内の興味のない話題を自動で排除してみましょう。
そろそろlogoGuilloを初公開してから半年です。ほぼ実証実験に近いv1.00の頃から利用されている方は少ないとは思いますが、今までお付き合い頂き有り難う御座います。
さて、今回logoGuilloのv2.06βを公開しました。v2.05からはポスト処理系の機能追加がメインの小改良ですが、あまりデバッグが出来ていないので人柱向けのβ版となっています。またβ版につき、配布内容はバイナリのみですのでv2.05の配布パッケージと合わせてご利用下さい。
主な変更点は以下の通りです。
・字幕データに対するネガティブ/ポジティブワード処理の実装
・外部フレームリストとの論理演算機能を追加
logoGuilloは自動的に不要なシーン(CM)を判定する事で、視聴時間と容量を節約する事を目指してきました。なるべく本編が欠けないよう安全側に設計してあるので、全自動で任せても不完全ながらそれなりの結果を得られるようにはなったと思います。
今回は更に一歩、字幕情報を元に内容にまで踏み込んで不愉快なシーンを取り除く実験です。某社のレコーダーのダイジェスト再生とは逆の発想です。
ネガティブワード機能は、不愉快なキーワード等を登録して、特定の話題周辺のシーンを削除する機能です。
嫌なら見るな、という言葉に習い番組内の興味のない話題を自動で排除してみましょう。
ラベル:
logoGuillo,
エンコード
登録:
投稿 (Atom)


