CMカット スレ★7
join_logo_scp(ver5.0) https://github.com/yobibi/join_logo_scp/releases/ ■修正内容(ver 5.0) JLスクリプトの強化(検索機能強化および不明確仕様の見直し) (機能追加) ・位置指定関連の検索機能を強化 (検索機能が増えたことによりAutoIns/AutoDelで可能な制御が増加) ・環境変数内容と設定データから実行スクリプトを選択するJLスクリプト追加 ・Memory機能を強化 ・リスト演算機能を強化 ・文字列操作機能を追加 ・共通で最初に読み込まれるJLスクリプトを追加(JL_common.txt) ・変数設定をCMカット結果位置として直接出力する機能を追加(変数名:OUTDIRECT) ・Unicodeに対応 ・その他多数のコマンド/オプションを追加 (仕様見直し・動作修正) 詳細は修正内容.txtを参照(不明確仕様の見直し、細かい修正) CMSkip関連NGワードに入っててテンプレが引き継げないんで前スレを ※ DTV板は即死判定があり、即死を回避するためには、スレを立ててから1時間以内に最低12コメントが必要です (即死回避以降は、30日間書き込みがないと強制的にdat落ちします) 前スレで.keyframeからdiv.txt変換とか使わせてもらって最初からややこしいファイルもだいぶ楽にできるようになった ところでdiv.txtが 3238 29909 29910 39201 となっている場合Trim(3238,29909) ++ Trim(29910,39200) とする方法はないだろうか JL_位置読込をの場合だと Trim(0,3237) ++ Trim(3238,29909) ++ Trim(29910,39200) ++ Trim(39201,54207[最終フレーム]) となってしまい、不要な最初と最後がついてしまう >>21 2変数設定で対応できそう(Trim位置をlist読み込み。JL_位置読込に機能存在) Set file_trim "${file_ts}.div.txt" # Trim位置記載の入力ファイル名 Set type_trim_in 1 # ロゴ位置入力ファイル(0=なし 1=list 2=avs-Trim 3=keyframe) | /\ . l \ 彡 ⌒ ミ . (/\ \_(´・ω・`) 彡 \ /  ̄ ̄ ̄ ̄ ̄ ̄|\ _,/| ̄ ̄ ̄ ̄ ̄ ̄ | (/ ヽ) | | ミ 彡 .| :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::: :::::::::: _____ ∧_∧ :| |....___ | ( ´・ω・) | |.:::| |::::::::::::|| ┌/::::::: l :| |._.|_|___l| | |:: |:::: | ∠二二l┌━━┷┐ ____ / \ / ─ ─\ / ⌒ ⌒ \ ハハッ わろす | ,ノ(、_, )ヽ | \ トェェェイ / / _ ヽニソ, く ___ /\ /\ _ /((◯)(◯))\ / | ゚~ (__人__)~゚ | \ \ |r┬、| /  ̄ / `⌒´ ヽ amatsukazeのjoin_logo_scpの質問いいですか? 今AmatsukazeでJL_MBS.txtのようにチャンネルごとに設定を追加しています 番組ごとに振り分けたいのですが、何か書き方あるでしょうか? #薬屋のひとりごと用 AutoDel S 75.0 74.00 76.0 -code 1 AutoEdge S -code 1012 -scope 75 -period 75 AutoEdge E -Nauto -1 -code 1012 -period 3 今は番組ごとに手動で書き換えています、これをIf文とかで書けないでしょうか? 私はhookAmatsukazeCLIを改良してif文で振り分けられるようにしました。 >>33 サンクスです hookAmatsukazeCLIを使うと、環境変数でファイルPathを取得できるのですね あとは含まれる文字列をIf文で書くんですね、文字列処理がむずそう join_logoの作者は、60代と伺ったのですが、本当ですか?尊敬します。 >>32 私の場合はhookAmatsukazeCLI導入後、ChParamJL2.csvに記載して振り分けています ・JL/data/ChParamJL2.csvに番組名と使用ファイルを記載して振り分け ・JL_run_sample1.txtが参考例。AmatsukazeからはJL_ANYSELを指定 未確認ですが、If文で書く場合は次のような感じかな Call "JL_ini_外部環境取得.txt" # 環境変数からタイトル取得(file_title) #薬屋のひとりごと用 LocalSet EXTCHAR "薬屋のひとりごと" If ${file_title:Cm}>0 { # タイトルに文字列(EXTCHAR)が含まれる 設定を記載 } >>36 JL_ANYSELを指定されてるのですね、 新番組が始まったらすべての番組名をChParamJL2.csvに振り分け書かないとダメそうで大変じゃないですか? If文で困ってました、文字列の抽出はこんな風にするんですね このまま使いますね、ありがとうございます >>37 放送局別の設定はChParamJL1.csvで振り分けて、 それでは対応できない番組のみChParamJL2.csvに記載する、という使い方をしています。 フラグ追加はJL作成不要で私の場合はChParamJL2に記載で完了が多いですが、 個別JLが多い場合はIf文で振り分けた方がいいでしょうね。 >>36 は動作確認して、If文の最後にセミコロンを忘れていました。下のどちらかに修正で If 条件式 { }; If 条件式 EndIf >>38 なるほどAmatsukazeのJLはチャンネル設定に従う、の動作をChParamJL1.csvがやってくれるから、 新番組きてもほとんどが何もしなくてもいいんですね 自分の場合もほとんどがフラグ追加で間に合うので、ChParamJL2.csvを使うほうがよさそうですね 動作確認もありがとうございます、長く困ってた事が解決しそうです UPLIFT プレミアム・サービスのお知らせ https://uplift.5ch.net/ UPLIFT 主な特典 ・連続投稿の規制を緩和します。 ・スレッド作成時の規制を緩和します。 ・5ch.netのスレッド表示画面に表示される広告を除去します。 ・5ch.net専用ブラウザで5ch.netの過去ログを閲覧できるようになります。 ・海外からのアクセス・ホスト経由からでも書き込みができるようになります。 ・書き込みが規制されているプロバイダーからでも書き込みができるようになります。 ・5ch.netを安定して利用できるように運営を支援できます。 5ちゃんねるを存続させるためには、皆様のご協力が必要です。 最後まで御精読いただきありがとうございました。 chapter_exeにあたるものでより便利なツールを作り始めて1年近く経った 1か月ちょいで最初の物が出来た それから既存のものと組み合わせてチャプターファイル作成が手軽にそして低負荷で自動的に行える統合環境を作った その後は既存のものの置き換えを試行錯誤しながら繰り返した チャプター判定、画像のシーンチェンジ判定も適当なものだけど自前でできるようになった 最終的に全部自前でもできるようになった 部分的に既存のものと差し替えて使うこともできるので結果に満足できなければ即座にやり直すこともできる あまり詳しくないジャンルだったけど1年でいろいろと勉強になった シーンチェンジとか関係なく強制的に5秒カットするコマンドない? 時代劇の冒頭で出てくる「不適切な~当時の時代背景云々」をカットしたいんだけど。 冒頭5秒の強制カットはフラグ追加(vHCF:5)で可能 AutoDelコマンドで記載する場合は5秒カットに-forceを追加 本編が切れる可能性がゼロじゃないからようやらんわ。 夢グループとかの通販を自動でカットできるようにしてくれ Autoedgeについて聞きたいんだけど下の部分のみ残したいから AutoEdge B -code 1005 -period 5 -maxprd 95 で5秒から95秒の構成をカットをやってみたんだけど 0 269 9 0 0 :Nologo 270 449 6 0 6 :Sponsor(add) 450 629 6 0 6 :L 630 809 6 0 6 :L 810 989 6 0 6 :L 990 53553 1754 -3 1754 :L ←ここのみ残す 53554 54605 35 3 35 :L 54606 54905 10 0 10 :L 54906 55355 15 0 15 :L 55356 58051 90 -1 90 :L 58052 58951 30 1 0 :CM 58952 59401 15 0 0 :CM 59402 61199 60 0 0 :CM 61200 62097 30 -1 0 :CM 62098 62997 30 1 0 :CM 62998 63169 6 -9 0 :Nologo >>49 結果は以下になった 0 269 9 0 0 :Nologo 270 449 6 0 6 :L-Edge(cut) 450 629 6 0 6 :L-Edge(cut) 630 809 6 0 6 :L-Edge(cut) 810 989 6 0 6 :L-Edge(cut) 990 53553 1754 -3 1754 :L 53554 54605 35 3 35 :L 54606 54905 10 0 10 :L 54906 55355 15 0 15 :L 55356 58051 90 -1 90 :L-Edge(cut) 58052 58951 30 1 0 :CM 58952 59401 15 0 0 :CM 59402 61199 60 0 0 :CM 61200 62097 30 -1 0 :CM 62098 62997 30 1 0 :CM 62998 63169 6 -9 0 :Nologo AutoDelやらほかのコマンドで結果としてはカットできるんだけど AutoEdgeがなぜ想定の動きをしないかわからない わかる人教えて 色々試して自己解決しました AutoEdgeの上限時間は通算時間になるんで 35+10+15+90で-maxprd は150以上の指定が必要 加えて既存カットが90秒までの指定があるので -scope も150以上が必要になるんですね なのでこの場合はこうすればいいんですね #ロゴの開始または終了を起点に通算200秒以下の構成をカット AutoEdge B -code 1005 -scope 200 -period 5 -maxprd 200 >>48 夢グループがある番組って試しになに? 年末年始暇だし実験してみたい >>52 来週から通常通りに戻ればかかるはずの報道1930とかプライムニュース(午後7時台のBSニュース番組)とか2時間ドラマに入るはず >>53 ありがとう正月終わったけど試しに録画してみる 既存パラメータで対応出来なかったら下の感じでできないかな 通常解析→全時間内の18%以上がCMの場合解析時怪しかった部分を再調査 具体的には通販はBGMがなく、会話の合間の無音区間が多くなるから30xN回の構成内で無音回数が一定回数以上あった場合CMとする といった処理ができれば通販潰せそうだけどJLSの改造も必要になるのかな 以下のようなCM解析結果で、Mixの一部にロゴがないCMが含まれているのですが、 ここをうまく分割する方法はないでしょうか。 DivLogoやMkLogoコマンドでどうにかするのかと思ったのですが、 やり方がよく分かりませんでした。 他の方法を含め、よい方法があれば教えてください。 AMT [info] [CM解析結果 - 詳細] 0 15 1 -14 0 :Nologo 16 464 15 -1 0 :CM 465 914 15 0 0 :CM 915 3611 90 1 90 :L 3613 45870 1410 0 1376 :Mix 45871 48566 90 -1 68 :L 48567 49016 15 0 0 :CM 49017 49465 15 -1 0 :CM 49466 49915 15 0 0 :CM >>55 ダンジョン飯だね、俺も困ってる Default logo_level 8 # 構成推測時のロゴ使用(1:なし 2-8:ロゴ情報使用-大きい程ロゴ情報優先) でMixを分けられるんだけど、30秒CMが29秒になって困ってる >>56 ありがとうございます。 参考にします。 後で試行錯誤してうまくいったら報告します。 >>56 試してみたところ、BS11は解析に変化なし。SBSは以下のようになりました。 局、環境、設定などで違うのかもしれません。 AMT [info] [CM解析結果 - 詳細] 0 21 1 -8 0 :Nologo 22 471 15 0 0 :CM 472 920 15 -1 0 :CM 921 1070 5 0 5 :Nologo 1071 3767 90 1 90 :L 3769 30927 906 6 878 :L ←ここの最後30秒がCM 30928 46026 504 -6 504 :L 46027 48722 90 -1 90 :L 48723 49172 15 0 0 :CM 906秒の後ろ30秒を削ろうと思って以下のコマンドを追加してみたのですが、変化なかったです。 もうちょっとの気がしますが、どなたか分かりますか。 AutoDel E -30.0 -EndLen 30.0 -Nauto -3 -force BS11は本編とCMどちらも頭と尻が暗転した画面だからシーンチェンジの検出ができないのが原因 シーンチェンジを手動で追加するか自分でtrimを書くのが簡単 BS11ではよくある奴だな 最近のガンダムseedリマスターで一時期よくあった trimviewerでtrimファイル作ってamatsukazeでエンコして対応した >>58 もう少し原因を解析するなら、次の2つの情報確認が必要です。(ログのCM解析結果直前) 原因がわかれば対策できるかも。 (1)[無音・シーンチェンジ解析結果] CM切り替わり(両側)に無音検出あるか 例: mute17: 13694 - 26フレーム SCPos: 13699 意味は、13694から26フレーム無音検出。シーンチェンジは13699フレーム (2)[ロゴ解析結果] ロゴ認識位置の確認 例: 18878 E 0 ALL 18878 18878 21577 S 0 ALL 21577 21577 意味は、18878フレームに前のロゴ終了、21577フレームに次のロゴ開始 >>61 >>58 のSBSです、 mute15が(1)に該当しますかね。 見方がよく分かっていないからか、CM解析の結果とあまり一致が見られないような? mute13: 25159 - 20フレーム SCPos: 25171 mute14: 26847 - 20フレーム SCPos: 26847 _ mute15: 30036 - 32フレーム SCPos: 30069 _ mute16: 30929 - 53フレーム SCPos: 30928 _ mute17: 31174 - 13フレーム SCPos: 31187 こちらが(2)ですね。 これはすべてコピーしました。 927 S 0 ALL 926 927 30044 E 0 ALL 30044 30045 30957 S 0 ALL 30956 30957 48752 E 0 ALL 48020 48752 >>58 俺もBS11でやってるけど分離はできてもうまくいかない AutoDel E 30.0 -code 2 -Nlogo 2 -force 2番目の実際のロゴ終了で30秒強制カット これも-forceで無理やりするとうまく切れない あと、30秒CMがある位置は -Nauto -3じゃなくて-1だと思うけど、それはうまい切り方わかんね >>62 ・CM後側は(1)(2)ともに正常、 ・CM前側は正確に30秒なら30029ですが(1)(2)共に少し後側にずれている CMが続くことなく単独で29秒弱構成から、誤検出と認識されているのでしょう。 思い付く方法としては (a)29秒弱でいいので検出させる (b)-forceで決め打ち (c)chapter_exeで無音位置を拡張 (a)は、他に考えられそうなものは Default logo_revise 24 # ロゴ使用関連の構成変更(0-4:ロゴ端の削除-大きい程削除 +10:ロゴ内削除あり +20:ロゴ外広域削除あり) Default param_wlogo_cmmin 20.0 # 推測時のロゴ無情報確定と認識する期間 (b)は、>>62 のケースでは AutoDel S -30.0 -Nlogo 2 -force # 2番目の実ロゴ開始位置から30秒前まで強制カット この方法は毎回使えるか不明 (c)は今回mute15は30036からで、ここを本来の30029付近まで含めたい。 chapet_exeオプションとしては-eが存在するが、拡張で副作用もあると思うし使えるか不明 データ持ってなく、どれも動作未確認です >>64 ありがとうございます。 とりあえず手っ取り早く以下のコマンドで対応しました。 30秒ちょうどだと少しCMが残ってしまうようなので31秒で。 AutoDel S -31.0 -Nlogo 2 -force 教えていただいたその他の定数については今後検証していきたいと思います。 今回はもう妥協してCMは残したままにしようかと思っていたのですが、助かりました。 >>65 AutoDelの位置検索範囲はデフォルト1.2秒なので、30秒では29秒弱の所が対象になりますね。 次から0.1秒ずれのシーンチェンジまでは誤差とするなら、-Dmargin 0.1で設定できます。-Dmでも同じ AutoDel S -30.0 -Nlogo 2 -force -Dm 0.1 >>66 29秒弱の所は28.7秒なので、たぶん1.2秒対象は間違いでした。 少し大きく設定でいいと思います。 >>66 ありがとうございます。 -Dmを知っているといろいろなところで役立ちそう。 もう何年も使ってるのに今更-forceの存在と有用性に気づき今まで諦めてたものでもいけたなぁ…と凹む CMカットロゴ認識が間違ってる場合ってどうすればいいんだ CM CM L L CM L L ←ここがCM L CM AutodelにEndlen指定で無理やり削ることはできるけど何かほかに方法はないのかな 通販番組つぶしまだ1個しかできてないけど下でそこそこいい感じになりそう #ロゴ区間に120秒区切りがあれば全カット AutoDel S 120.0 -fromL -underC 1 構成じゃなくて区切りでカットするんで 90 L 120 L ←ここだけカットできる 30 L ただ問題が2点 ・本編で120秒区切りがあるとカットされること ・通販のLが90秒+30秒みたいに認識された場合は対応しない (-underC 1を消せば跨った場合も消せるけど誤爆率上がる) 時間は120や150などの複数を書いておけば、なんとかなるんじゃないだろうか (OPが89秒なんで90秒は設定しない方がいい) 120秒区切りに限定してるんでよっぽど運が悪くない限りは大丈夫だろうけど確実性がある訳でもないね このコード使うとAutodelでもNologo判定じゃなくて、CM判定になるのなんでなんだろう >>46 あ、vHCF:5なんてコマンドがあるんですね。 無事削除するように出来ました。 ありがとうございます。 後、BSよしもとの30分番組で本編終了後にまるっきり関係なMVビデオが入るんですが、 例えば26分以降は解析しないなんて実現できるでしょうか? >>74 CMと判定される15秒単位であればCM判定になりますね。それ以外の期間ではNologo >>75 その動作は、JL_前後大幅カット.txt がありますね。 このファイル内を参照ですが、先頭と最後のカット時間、区切り種類を指定、 カットした後にJL_フラグ指定.txtを呼び出しています。 CMカット用の.lgdを編集できるのはlgdeditor位しかない? 輝度データはshortで取って値は4096()までしかないと言う話だったけどそれ以上あるんだけど… フォーマットの解釈が違うのかなあ 自分でロゴデータ検出してみるかな… 無駄だけど amatsukazeの場合、番組ごとに微妙に違う処理する場合JL_ANYSELでできるのかな? 例だけどそれぞれ以下のような処理が必要なとき毎回JLS書き換えないといけないのかな? 番組A AutoDel S -30.0 -Nlogo 2 番組B AutoDel S -15.0 -Nlogo 1 番組C AutoDel S -15.0 -Nlogo 1 AutoDel S -30.0 -Nlogo 2 amatsukazeの場合、番組ごとに微妙に違う処理する場合JL_ANYSELでできるのかな? 例だけどそれぞれ以下のような処理が必要なとき毎回JLS書き換えないといけないのかな? 番組A AutoDel S -30.0 -Nlogo 2 番組B AutoDel S -15.0 -Nlogo 1 番組C AutoDel S -15.0 -Nlogo 1 AutoDel S -30.0 -Nlogo 2 ロゴ検出を隙間時間でやってる 既存のものはソース見るのがめんどい系なので独自でやってるんだけどまあ精度が不安定 逆変換でやったけどいまいちで応用したパターンマッチもいまいち それで今エッジ検出やってるけどこれは調整に時間がかかる可能性が… うまくいったら唯一無二の物が出来るんだけど >>80 放送局別の設定はChParamJL1.csvで振り分け それでは対応できない番組のみChParamJL2.csvに記載する じゃダメ? >>83 やっぱり両csvファイルを読み込みに行けるの? amatsukazeからだとどうやったらChParamJLが読み込まれるのかそこの設定がわからない >>84 AmatsukazeからはJL_ANYSELを指定で自動的に両csvファイルが読み込まれる Amatsukazeが1か月以上前のバージョンであればhookAmatsukazeCLIを入れる必要ある (最新にしたらこの作業は不要) >>85 JL_ANYSELでタイトル検索できない場合、 Amatsukazeログの検索対象(JL_ANYSEL指定時のみ出力)に違う文字列が入っていたら下記理由 ファイル名にUnicode文字を使っていたり、NASにコピーしてそれをソースの設定していると AmatsukazeCLI実行前に名前が変更されてタイトルが取得できない (最初の名前を環境変数に格納できればUnicode含め可能になるが、現状簡単な実用的方法ない) チャプター作成アプリに動画のロゴ検出機能を追加した 思ったよりうまくロゴのあるフレームを検出出来ている(こともある) 他にない仕組みだと思うので大事に育てていきたい ロゴ検出を行うと遅い場合にシーンチェンジベースで数%余計に時間が掛かってる そんなに時間がかかる処理でもないはずなので速度的にもチューンが必要 いまいちcsvの書き方がわからない 以下のような結果が出たんで 0 253 8 14 0 :Nologo 254 6815 219 -1 219 :L 6816 7115 10 1 0 :Sponsor(add) 7117 8016 30 1 0 :CM 8017 8466 15 0 0 :CM OPTION欄にAutoDel S 219.0 -code 1 -NAuto 1と書いたんだけど消えない 追加オプション : AutoDel S 219.0 -code 1 -NAuto 1 とはなってるから読み込まれてはいるみたいなんだけど何か違うのかな? >>88 OPTION欄は-で始まる起動オプションで、AutoDel記述はJLファイル作成が必要です (今回の作成例) JL/user/にJL_run_aa.txtを新規作成で下記記述し、ChParamJL2.csvのJL_RUN欄にこのファイル名を記載する Call "JL_フラグ指定.txt" AutoDel S 219.0 -code 1 -NAuto 1 Echo 実行されました # ログ確認用(削除してもよい) >>86 Amatsukazeでオリジナルtsファイル名追加に対応してくれました。ありがたい 更新したらJLに1行追加で、制約なくタイトル取得できるようになります 変更箇所は、JL/common/JL_ini_外部環境取得.txt の設定先頭(CLI_IN_PATHの前)に下記追加 EnvGet TS_IN_PATH -RegOut file_ts -default # 環境変数から(変数未定義時のみ更新) シーンチェンジのみをCMカットの情報に使うことってできないのかな? バラエティーのCM前の「こんなのやるよ」要素をカットしたいけど、無音入らずにシーンチェンジだけだからいい方法が浮かばない forceだと強制だしさすがにそこまでは無理かな シーンチェンジのみをCMカットの情報に使うことってできないのかな? バラエティーのCM前の「こんなのやるよ」要素をカットしたいけど、無音入らずにシーンチェンジだけだからいい方法が浮かばない forceだと強制だしさすがにそこまでは無理かな ロゴ検出結果をチャプタ作成に軽く反映させてみた 例の120秒CMには有効 でも判定がかな~り雑なのでCMカットが変な結果になることがある もう少し真面目にロゴ判定をしなければw 金曜日はシンデレラ「薬屋のひとりごと/1×8いこうよ!」 目的のアニメ+バラエティの構成 アニメとバラエティの間がCMはさむことなく、ロゴの切れ目もない、番組の切れ目は63101フレーム 41464 41914 15 1 0 :CM 41915 59804 597 -1 597 :L 59806 62502 90 0 90 :L ←アニメエンディング 62503 85698 774 -1 774 :L ←(5秒アニメの番組提供、(番組切り替わり)、769秒バラエティ 85699 86148 15 0 0 :CM 169 S 0 ALL 121 169 3009 E 0 ALL 3009 3009 13806 S 0 ALL 13805 13806 31123 E 0 ALL 31121 31153 41917 S 0 ALL 41917 41917 85698 E 0 ALL 85696 85698 92444 S 0 ALL 92444 92446 774から5秒の番組提供をLogoにして、それ以降はカットしたいんですけどうまい方法ありますでしょか? 59806 62502 90 0 90 :L は毎回不変です >>96 番組の切れ目は63101フレームということは、90秒の後に予告15秒、番組提供5秒かな? まずは[無音・シーンチェンジ解析結果]のSCPos:で無音シーンチェンジ検出できているか確認 検出できているならJL/common/JL_set_フラグ指定標準2の vTRC5E90M:n を参考に可能 たぶんこんな感じ(15分の所は90秒まで含めた最後からの時間で余裕を持って) GetPos S 90.0 -fromC -underC -Ftail 00:15:00 -pick 1 -clear AutoDel 20.0 -fromAbs ${POSHOLD} -RSC -5.0 -EndTail -keepC >>97 レスありがとうございます > 90秒の後に予告15秒、番組提供5秒かな その通りです間違ってました、合計20秒です 無音シーンチェンジ検出はおそらくできてる模様 mute57: 62476 - 30フレーム SCPos: 62503 mute58: 63091 - 26フレーム SCPos: 63102 mute59: 64525 - 10フレーム SCPos: 64533 動画時間1:10:07 90秒のエンディング始まりが後ろから数えて36:51の位置に、 GetPos S 90.0 -fromC -underC -Ftail 00:40:00 -pick 1 -clear AutoDel 20.0 -fromAbs ${POSHOLD} -RSC -5.0 -EndTail -keepC -force -Ftailを40分に変更、うまく切れませんでした、-forceを付けてみても切れません ちなみに-Ftail 00:40:00を削ると、OPの90秒に反応してSponsor以降全部Nologoに Set vTRC5E90M 45 #ためしにやってみましたがNG もうちょいやってみます >>98 本文が長すぎるとのことで分割 0 166 6 -13 0 :Nologo 167 2862 90 -1 90 :L 2863 3011 5 -1 5 :Sponsor(add) 3012 3461 15 0 0 :CM 13352 13802 15 2 0 :CM 13804 31123 578 -3 578 :L 31124 31573 15 0 0 :CM 41464 41914 15 1 0 :CM 41915 59804 597 -1 597 :L 59806 62502 90 0 90 :L 62503 85698 774 -1 774 :L ←予告15秒、提供5秒、それ以降他の番組 85699 86148 15 0 0 :CM 91993 92443 15 1 0 :CM 92444 102122 323 -1 0 :L 102123 102572 15 0 0 :CM 108417 108867 15 1 0 :CM 108868 117946 303 -2 0 :L 117947 118846 30 1 0 :CM 124691 125141 15 1 0 :CM 125142 126071 31 0 0 :L 終わり、CM部分は空白にして省略 >>98 予告と番組提供の間(62952付近)に無音シーンチェンジがありませんね。 -RSC -5.0は対象位置の5秒前にあることの条件なので、これを外したらできそう。 -forceでも無音シーンチェンジ以外の条件は満たす必要あるので、この部分が条件外でダメ。 GetPosで90秒後地点を取得していますが、この段階の確認をEchoコマンドで把握できます。 ここが異常ならGetPosの問題、正常ならAutoDelの問題です。 これらを合わせると GetPos S 90.0 -fromC -underC -Ftail 00:15:00 -pick 1 -clear Echo 90秒地点:${POSHOLD} # 90秒構成後側の認識位置 AutoDel 20.0 -fromAbs ${POSHOLD} -EndTail -keepC >>100 ありがとうございます 教えてもらった3行は、そのままではうまくいきませんでした >90秒地点:-1 # 90秒構成後側の認識位置 GetPos S 90.0 -fromC -underC -F 10000 90000 -pick 1 -clear Echo 90秒地点:${POSHOLD} # 90秒構成後側の認識位置 AutoDel 20.0 -fromAbs ${POSHOLD} -EndTail -keepC ↑これはうまくいきました 85699 86148 15 0 0 :CM 41915 59804 597 -1 597 :L 59806 62502 90 0 90 :L 62503 63101 20 0 20 :L 63102 85698 754 0 754 :Nologo 41464 41914 15 1 0 :CM GetPos S 90.0 -F 10000 90000 -pick 1 -clear -fromC -underC # AutoDel 20.0 -fromAbs ${POSHOLD} -RSC -5.0 -EndTail -keepC -force #これもうまくきました -Ftail 00:40:00 も -Fhead 10000 90000 も数字を変えてやってみましたが、なぜかうまくいきません -Fはうまくいきます やりたいことは出来るようになりましたありがとう >>101 -Ftailは後半の半分までに位置制限かかるので(-Fheadは前半半分)、半分以上となるとダメですね。 -FtailXや-FheadXで制限なしもありますが、今回のケースは前半後半で指定よりも -Fの直接位置指定でOP領域を外すことが自然ですね >>102 長く付き合ってもらって感謝です -FtailX 00:40:00でもうまくいきました、 問題の箇所がちょうど真ん中だったので-Ftail-Fheadが使えなかったのかな 今回の切り方は可能性を感じる方法でした CM検出後のエンコには興味がなかったがTrimを出力してみた それで次にavsを出力してそれを○○EncCシリーズに突っ込んでとやってみたが読み込めない 結局utf8の問題だったらしく何とかエンコードできるようになった サイズが減るのはいいが時間がかかるしそのまま突っ込んだだけだからか音ズレが発生したり 音声ストリームはあるが無音になったりする >>105 ありがとう 最初なんのことかわからなかったけどamaにTRIMでカットする機能があったんだな 試したらtrim指定してるのにCMとロゴ検出しだしてうまくいかず試行錯誤の繰り返し よく見たら天津が微妙に古いバージョンだったので新しいのに変えて新しい設定をしたら希望する動作になった ログ見てるだけだと無駄なことをやってる気もするけどログがすべてじゃないと思うので… と思ったけど出来たhevcがtvtplayで再生できない んでhvc1にしてもフラッシュしてダメ これはおま環だな 最弱テイマーはゴミ拾いの旅を始めました。 第04話 (BSA) 0 296 10 -3 0 :Nologo 297 4222 131 0 131 :L 4223 4521 10 -1 0 :Sponsor(add) 4522 17468 432 1 432 :L 17470 18369 30 1 0 :CM 18370 19269 30 1 0 :CM 19270 19717 15 -2 0 :CM 19718 20165 15 -1 0 :CM 20167 43152 767 0 767 :L 43154 45850 90 0 90 :L 45851 46750 30 1 0 :CM 46751 47207 15 7 0 :CM 47208 48547 45 -9 0 :Trailer(add) ←バンテリン1分CM、カットしたい 48548 48846 10 0 0 :Sponsor(add) 48848 49747 30 1 0 :CM trailer カット Set cuttr_code 0 #動作設定(0:検出なし 1:CM明けから数える 2:CM明け/CM直前を自動 3:CM直前) 47208 48547 45 -9 0 :L AutoEdge S -code 1012 -period 45 -force AutoDel S 45.0 -force ↑試しに無理やりカットしようとしても出来ませんでした、実際にロゴがないからカットできないのでしょうか? >>109 AutoDelでロゴなしを無理やりカットする場合は -final が必要 15秒+45秒を1分CMとする場合は、フラグ指定2のfAMcN60Aを改良して下記で可能と思います # 15秒+45秒のロゴなし構成は結合 MemSet AUTO -order 30 { # 結合の実行順位は早く AutoDel 60.0 -Dm 0.25 -fromC -ZoneN -Fmid 2.0 2.0 -underC 2 -AC 15.0 }; Call "JL_フラグ指定.txt" >>110 ありがとうございます -finalでカットできました # 15秒+45秒のロゴなし構成は結合 MemSet AUTO -order 30 { # 結合の実行順位は早く AutoDel 60.0 -Dm 0.25 -fromC -ZoneN -Fmid 2.0 2.0 -underC 2 -AC 15.0 }; 46751 48547 60 -1 0 :CM ←カットできました ためしにfAMcN60Aもやってみましたが失敗しました @CM → A本編 → BCM(ロゴなし 15秒or30秒) → C本編 → DCM という動画があります。 Amatsukaze(join_logo_scp)で@とDのみをカットするフラグはありますか? 本編の間にあるCMは残したいのです。 「-flags fAMcN15,fAMcN30A」でいけるかなと思ったのですがうまくいかず。。 (具体例)下記の場合、Trim(481,51724)になってほしいです。 AMT [info] [CM解析結果 - TrimAVS] Trim(481,19779) ++ Trim(21579,32157) ++ Trim(33956,43216) ++ Trim(45914,51724) AMT [info] [CM解析結果 - 詳細] 0 479 16 1 0 :Nologo 481 19329 629 -2 629 :L 19330 19779 15 1 0 :Border15s 19781 20678 30 -1 0 :CM 20679 21577 30 1 0 :CM 21579 32157 353 0 353 :L 32158 32606 15 -1 0 :CM 32607 33056 15 0 0 :CM 33057 33955 30 0 0 :CM 33956 43216 309 0 309 :L 43217 44115 30 0 0 :CM 44116 44564 15 -1 0 :CM 44565 45014 15 0 0 :CM 45015 45464 15 0 0 :CM 45465 45913 15 -1 0 :CM 45914 50700 160 -8 160 :L 50701 51158 15 8 0 :Border15s 51159 51724 19 -3 19 :Trailer(add) 51725 52175 15 1 0 :CM 52176 52625 15 0 0 :CM 52626 53524 30 0 0 :CM 53525 53973 15 -1 0 :CM 53974 54423 15 0 0 :CM 54424 54545 4 1 0 :Nologo >>112 GetPosでTrimの終点を取得してAutoInsで-EndAbsを使って指定する方法もありますが、 下の1コマンドで可能 # 各ロゴ(一番最後は除く)最後から次のロゴまでの間を残す AutoIns E -Nauto 1..-2 -DstNextL -keepC >>115 下記手順を実施しましたが途中のBもカットされてしまいました。 初めてJLファイルを書くのでそもそも手順に誤りがあるかもしれませんが。。 (1) Amatsukaze\JL\JL_test.txtに下記コマンドだけを書いて保存する。 AutoIns E -Nauto 1..-2 -DstNextL -keepC (2) プロファイルを下記設定にする。 JoinLogoScpコマンドファイル に直接 JL_test.txt を指定する。 JoinLogoScpのオプション は空欄にし、チャンネル設定に従う のチェックを外す。 チャプター・CM解析を無効にする のチェックを外す。 (3) 上記プロファイルを指定してキューに投入する。 >>116 (1)で補正前の処理を合わせて記載が必要です。 JL_フラグ指定.txtを使っていたら下の通り。 [Amatsukaze\JL\JL_test.txt] Call "JL_フラグ指定.txt" AutoIns E -Nauto 1..-2 -DstNextL -keepC 3行目に>>89 のようにEchoを入れたらログで(2)(3)が正常実行されていること確認できます。 >>117 本編の間にあるCMがうまく残りました。ありがとうございました。 # 最初うまくいかずログファイルを検索しても「実行されました」がヒットせず。 # ログファイルを見ると「error: failed to open」の後ろに文字化けした文字列が並んでいたので # JLファイルの文字コードを見たらSJISじゃなかったというオチでした。 >>118 もしJLファイル内でUnicode文字を使いたいことがあれば、 BOM付きUTF-8(またはUTF-16)でファイル保存したら正常に読み込みます。BOM付きが重要 >>119 BOM付きUTF-8で実行できました。 ありがとうございます。覚えておきます。 一昨日と昨日で動画をトリムするコマンドを作った 久しぶりに動画の入出力を扱ったので苦労した メモリリークさせていたが一番厳しかった 今日は何もする気が起きない これは新しいアイデアの全体の3分の1位なのでまだまだ時間がかかりそうだ ロゴなし15秒構成のCMが予告と認識されてしまう 51897 51988 3 3 3 :L 51990 52194 7 -5 7 :L 52195 52643 15 0 15 :L 52645 52794 5 0 0 :Sponsor(add) 52795 53243 15 -1 15 :Trailer(cut-cancel) 53244 53694 15 1 0 :CM 53695 54141 15 -3 0 :CM やったこと Default use_autocmtr 0 # ロゴなし時の予告検出拡張(0:なし 1:あり) Default use_addtr 0 # 予告が見つからない時のロゴなし予告検出(0:検出しない 1:検出する) フラグ指定:TPTRLIM0 : 予告構成数=0 全部うまくいかない Autodelで消すことはできるけどCM判定なる回とならない回あるから 汎用性のあるパラメータ変更かフラグで対応したいけどどこいじればいいんだ? あまりにうまくいかないんでもう一度確認したらロゴありだった・・・ 失礼しました >>122 参考までにTrailer(cut-cancel)は設定でカットできます(この設定を使っているJL_MBS.txtでも) Default param_cuttr 1 # 予告終了後のロゴ付き15秒単位構成(0:残す 1:カット) aacedit2のxオプションが時々でDELAYプラスに行くのどうすれば直せる…? PID 1010 DELAY -999ms.aacだと正常だけどPID 104e DELAY -999.msとか末尾abcdefだと999に持ってかれる 新しいの来てるのか Unicodeとread系の強化か 質問いいですか、シャングリラフロンティア21話、後半部分 44755 45203 15 -1 0 :CM 45204 45652 15 0 0 :CM 45654 48710 102 0 102 :L 48711 49158 15 -2 15 :Trailer(add) ←CM、ここだけCUTしたい 49159 49459 10 1 10 :Sponsor(add) 49460 49909 15 0 0 :CM 新番組のロゴ付き番宣だけをカットしたいのですが、前後のLは残したいのでうまくいきません Set TPCUTTR1 1 # : 予告等終了後のロゴ付き15秒単位構成をカット ↑10秒のSponsorも消えてしまいうまくいきませんでした 何かいい方法はあるでしょか mute45: 45837 - 50フレーム SCPos: 45870 mute46: 48672 - 57フレーム SCPos: 48711 mute47: 49147 - 28フレーム SCPos: 49159 ★ mute48: 49447 - 29フレーム SCPos: 49460 mute49: 49895 - 31フレーム SCPos: 49910 ★ >>129 「15秒の予告構成をカット」でよければ下記を最後に追加が簡単 AutoDel 15.0 -fromTR -underC >>130 書き込んだ本人ではないですが、-fromTRaとは違うのでしょうか。 >>131 -fromTR = -fromTRa + -fromTRr :Trailer :Trailer(cut-cancel)も含めるかどうかで、今回はどちらでもいいですね。 -fromTR # Trailerで残す構成 -fromTRa # Trailer(add)構成 -fromTRr # Trailer(add)以外のTrailerで残す構成 >>132 なるほど。 -fromTRは全部包含するような感じなんですね。 >>130 さんくすです、うまくいきました 最初うまくいかなかったのですが、JL_標準ファイルの後半に書けば機能しました 前半部分に記述する場合でも、-lazyか-final付ければうまく動きました -fromTRがうまく動かなかった謎がとけました Amatsukaze改良版で、TVMW7でキーフレームを出力してエンコードしてみたんですが、 コンソールに出てくるメッセージのTrimの指定はばっちり本編のフレームになっているんですが、 エンコードすると微妙にCMの数フレームが混ざっているんですが、何か解決方法はありますか? コンソールの結果はこんな感じですが、11522、28100、52464からの数フレームが残ってエンコされました。 Trim(3163,11521) ++ Trim(15720,28099) ++ Trim(32144,52463) TrimViewerでみたらずれがありました。 TVMW7 Trim(3163,11521) ++ Trim(15720,28099) ++ Trim(32144,52463) TrimViewerで修正後 Trim(3139,11497) ++ Trim(15696,28075) ++ Trim(32120,52438) このずれは何故だ…。 フレームの数え方に統一的な基準はないから何とも言えないので経験で何とかしてるんじゃないの? まず0フレームから数えるか1フレームから数えるか 最初のIフレームまでの無効フレームをカウントするのか その場合間で前後したり抜けたりしたフレームをどのようにカウントするか その後でもドロップがあった場合どう数えるか アプリによって扱いが全部違う あとは24fps→30fps換算した場合に誤差が出る場合も 自分で作ったトリムエンコードアプリではどうしても大体2フレームずれるので強制的に2フレームオフセットにしたけど 結局BFFがらみでそれも上手くいかない場合が出て来たので結局放置した 知識が足りないのでここまででお手上げ 関西テレビの番組のロゴ消しだけAviutlやらAmatsukazeとか使って取得したの使っても消すのに失敗してしまうんだがなんか必要な手段ってありましたっけ? CMカット自体は取得したlgdファイルで問題なく出来てるんだけど出来上がったlogo消し済みavsとCMカットのみavs比較して見ると消し済みの方にもしっかりロゴが残ってるんよね 奇麗に消せないのはAT-Xとファミリー劇場だな ビットレート低いCSはそもそもロゴが潰れてる時あるしね >>140 マジかぁアニメソースにしてYV12to422云々もしっかりしてlgdファイル作ってやってるのにいつからかのロゴ更新の時からCMカットだけ成功してロゴ消しに関テレだけ失敗してるんだよなぁ >>141 ファミ劇はまだボヤけたり薄っすら残るレベルで消えようとしてる方だけど関テレに至っては終始全く消えてないんよねうちの環境だと 質問いいですか、ぽんのみち8話、新番組宣伝がうまくカットできません 48625 49523 30 0 0 :CM 49524 49973 15 0 15 :Trailer(add) 49974 50423 15 0 15 :Trailer(cut-cancel) ←ロゴ付き番宣、ここだけカットしたい 50424 50512 3 -1 3 :Endcard(add) 50513 54108 120 1 0 :CM 何かうまい方法あるでしょうか? >>143 >>130 をベースに候補限定方法の違いで2種類。JLの最後に挿入(最初に追加するケースは>>134 ) (1) AutoDel 15.0 -fromTR -underC -pick 2 # 15秒Trailerの2番目をカット (2) AutoDel 15.0 -fromTRr -underC # Trailer(add)以外で残るTrailer これ以外に単に JL_MBS.txt 使用で可能かも >>144 ありがとうございます、うまくいきました (1)(2)ともにうまく動きました、自分の環境では-finalをつけています あとcall "JL_MBS.txt"でもうまくいきました カンテレのロゴ消えない問題なぜか解決した 一旦jlscp通さず完全に生のTSのまま拡張編集に投げ込んでロゴを作ってロゴの消えが不完全なのを確認してこのロゴだけ残す それからjlscpに通して出来たavsにYV12to422云々追記してロゴ作ったらちゃんと消えるようになった 全然ロゴ消しには興味も知識もない自分には何が何なのか意味がわからなーい ので以下は勘違いに基づくものであったりなんの意味もない可能性が高い そもそもAviutlと元のAmatsukazeのlgdはフォーマット流用した別物なのは理解してる? うっかり混ぜたらいけない jlscpじゃなくてlogoframeって知ってる? avsは手順が書いてあるだけなのでそれぞれで作業するにはそれぞれのlgd作成が必用 と書いたけどrigaya師が後から統一してたらこの限りではない 多分透過度のデータは同じで色情報のフォーマットが違うんじゃないかと勝手に思ってる 単色で計算の幅が狭いとか偶然使える場合もあったりするかもしれない fig read.cgi ver 07.5.1 2024/04/28 Walang Kapalit ★ | Donguri System Team 5ちゃんねる