CMカット スレ★4
■ このスレッドは過去ログ倉庫に格納されています
>>150 join_logo_scp試行環境フォルダ内のbinフォルダにある bat_intools.batを編集して64行目の >> "%file_avs_in%" echo LWLibavVideoSource(TSFilePath, repeat=true, dominance=%dominance%) を >> "%file_avs_in%" echo LWLibavVideoSource(TSFilePath, repeat=true, dominance=%dominance%, fpsnum=30000, fpsden=1001) にする LWLibavVideoSourceのオプションにfpsnum=30000, fpsden=1001を追記してるだけ join_logo_scp試行環境言えば、 DGIndexで分離した音声をそのまま使うように出来ませんか? FAWを通すとドロップによる無音部に後続のデータが詰め込まれ 音ズレするのでDGIndexで分離した音声をそのままaacfawで読み込みたいんですが L-Smash worksを使ってると思うからそれに対応したts_parserで分離すれば音ズレしないと思う fpsnum=30000, fpsden=1001を使うと repeat=true, dominance=%dominance%はいらないかもしれない。 RFFフラグがガン無視されるため。 >>153 ts_parserの動作は覚えてないんですが、ドロップ欠けがあるaacを fawclでwav(fake-aacに)変換するとドロップ箇所が詰められ音ズレするのは同じだと思います >>155 join_logo_scp試行環境をDGIndexを使うように改造 ttps://skalyriccokle.blogspot.com/2017/04/tscm-5-joinlogoscp-dgindex.html >>152 >>156 昔(Amatsukazeを使う前)使ってた頃に、DGindex対応した際は、ウチの環境では ディレイ修正にはFAWを使わずに、aacedit2 でトリミングと一緒にやるのが一番良かったと記憶してます。 ウチでは、 DGindexでだして DGIndex.exe -SD=? -AIF=?%~1? -OFD=?%named2v%? -IA=3 -hide -exit > "%file_avs_in%" echo TSFilePath="%nameinm2v%" >> "%file_avs_in%" echo LWLibavVideoSource(TSFilePath, seek_mode = 2, seek_threshold = 0, repeat=true, dominance=%dominance%) FAW使わずにbat_jlse_main.batで以下のようにトリミングしてました。 rem ##☆aacをトリミング FOR /F "delims=* usebackq" %%t IN (`dir /b "work_tsp *ms.aac" "work_d2v *ms.aac"`) DO set nameinaac=%%t if "%ADJUST_DELAY%" == "1" "%BINDIR%aacedit2.exe" "%nameinaac%" -x -t "%file_avs_cut%" if not "%ADJUST_DELAY%" == "1" "%BINDIR%aacedit2.exe" -o "work_manual 0ms.aac" "%nameinaac%" -t "%file_avs_cut%" >>151 ありがとうございます。音ズレしてた動画2本共に音ズレしなくなりました TSファイルをCUIで切り出し出来るソフトって無いでしょうか。 目的は沢山のTSファイルから(AT-Xの)ロゴがはっきり出てる部分だけをバッチ処理で切り出して保存する為です。 切り出し部分はフレーム数で指定したいですが、そこまで細かな切り出し出来なくてもGOP単位でも、時間指定でも問題ないです。 また欲しいのは映像部分だけですので、音ズレや無音であっても問題ないです。 何か良いアイデアかソフトありませんか? >>158 い、いったいどこの間に追記したらいいんだ・・って絶望してたけど、 intool.batのDGIndex箇所を改変して動くようになりました 数年前にセットアップしたときはチンプンカンプンだったんですが・・ こんな感じになりました rem ##(別ツール使用例)DGIndex動作 rem ##------------------------------------------------ :label_dgindex echo DGIndexを使用します set named2v=work_d2v DGIndex.exe -SD=? -AIF=?%~1? -OF=?%named2v%? -IA=3 -hide -exit dir /o-n /B | findstr "PID *.aac" >audio.txt set /P afile=<audio.txt > "%file_avs_in%" echo MPEG2Source("%named2v%.d2v", idct=3) >> "%file_avs_in%" echo AudioDub(last,AACFaw("%afile%")) >> "%file_avs_in%" echo ConvertToYUY2(interlaced=true) goto label_in_end 開幕KADOKAWAのロゴ残り AutoDelでフレーム数指定すればカットできた 例えばBS11 ゾンビランドサガ 第09話冒頭の場合 AutoDel S 15 5 25 -code 1 -Nauto 1 >>162 反応遅れてすいません。 すでに動いているようなので必要ないかもしれませんが、 こちらは↓こんな感じで導入してます。 https://www.axfc.net/u/3947457?key=157 join_logo_scpの試行環境をLinuxに移植してたので、公開しておきます。 https://github.com/sogaani/JoinLogoScp 作ってくれた人たちありがとう! >>164 詳しくありがとうざいます 今度、ドロップしたファイルに遭遇したら試してみます (読み込みプラグインとしてL-SMASH worksを試してみたいので) L-SMASH WorksをFFmpeg3.4.5でビルドし直した>>114 4.0.x使ったやつはRFFを認識しない不具合があって、 fps指定しないと音ズレするようになってた(>>143 )のが直ってるはず RFF無視でfps指定ってやり方だと、RFFが使用されてる区間が 縞なし24pになるから、あまり良くないかも 3.4.5はフィールドピクチャの修正が入ってないことがわかったから、 やっぱ4.0.3をRFF認識しない不具合直してビルドし直したわ >>168-169 更新ありがとうございます 録画の関係で明日確認してみます TBSチャンネル2またロゴ変わってやがった もうロゴ取り直し面倒くせぇ >>172 報告さんきゅ。というかよく気がついたね。 この時期サンタ帽子かぶるロゴとかならすぐに気がつく自身あるけど >>169 報告遅れてすみません いくつかエンコしてみたのですが問題はありませんでした 重ねて更新感謝致します TBSチャンネル2の地上波放送時のCM部分に入る5秒くらいのロゴ無し部分 をカットするにはどうしたらいいでしょうか? 特にカット周りでは不便起きてないからなぁ今のところ カット失敗も最近全然起こらんし join_logo_scpでロゴ情報を使わずに任意のシーンチェンジを手動で選んで処理とかできないでしょうか。 WOWOWで放映された映画などは最初に長々とライブラリ(?)の動画が表示されるのを カットするのが目的です。 以下のような JL ファイルで試すもうまくいかないのですが、何か間違ってますでしょうか。 # 本編 Start) 720 近辺 => 後述の場合は 739 スタート Select S 0 -1.2 1.2 -fromabs 00:24.0 -reset # 本編 End) 42750 近辺 => 後述の場合は 42718 エンド Select E 0 -5.2 5.2 -fromabs 23:45.0 -reset こんな感じになってしまいます。。。 2019-01-24 01:20:06 [CM解析結果 - TrimAVS] Trim(0,45052) 2019-01-24 01:20:06 [CM解析結果 - 詳細] 0 101 3 12 3 102 251 5 0 5 252 401 5 0 5 402 551 5 0 5 552 737 6 7 6 739 3425 90 -10 90 3426 18760 512 -10 512 18761 20556 60 -2 60 20557 42718 739 14 739 42719 43167 15 -1 12 43168 44067 30 1 0 44068 44217 5 0 0 44218 45052 28 -5 28 WOWOWソースはTSsplitter通すのが一番早いかな >>181 TSsplitter 一応試してみました。 番組情報・PMT情報・音声チャンネル切り替え 全部有効で分割試してみましたが、 望みのようにはならないようです。 全自動であることが望みなのではなく、 検知されたシーンチェンジから、自分の好みのところでカットしたいのですが、 どうすれば実現できるのでしょうか。。。 Find も試してみましたがうまくいきません。。。 ちなみに、手動なら動画編集ソフトを使えと言われそうなのですが、 Amatsukazeを使ってエンコードをすると、KFM&VFRで音声をそのままで エンコード(mp4コンテナ化)できるので、Amatsukazeとそこで使われている join_logo_scpで上手にカットしたいです。 >>183 ありがとうございます。 Amatsukaze側にこんな機能があったとは気づきませんでした。 さっそく trim ファイルで処理してうまくいくようになりました。 それとは別に、 「検知されたシーンチェンジから、自分の好みのところでカットしたい」 の手法は存在しないってことになるのでしょうか? trim ファイルのテンプレを作る bat ファイルも作ったので貼っておきます。 ts ファイルを D&D すればまとめてテンプレファイルが出来上がります。 @echo off setlocal disabledelayedexpansion set BASEDIR=%~dp0 cd /d %BASEDIR% if exist %1 goto loop goto end :loop if not exist %1.trim.avs echo Trim( , ) > %1.trim.avs shift if exist %1 goto loop :end >>185 横からだかサンクス こういうの欲しかった >>184 「検知されたシーンチェンジから、自分の好みのところでカットしたい」 として、JLスクリプトの最後にAutoDelを追加して使っています。 # 先頭10+5秒構成カット(5秒部分最後は無音あればシーンチェンジなしでもカット) GetPos S 20.0 0.0 40.0 -fromabs 0.0 -RSC -10.2 -9.8 -RSM 4.9 5.1 If $LASTEXE AutoDel S 5.0 4.8 5.2 -code 2 -fromabs $POSHOLD -force -EndHead EndIf >>187 非常に参考になりました。 自動推測は制御が難しいので、従来方式のみ使おうと、 GetPos→Forceでやったところうまくいきました。 GetPos S 0 -1.2 1.2 -fromabs If $LASTEXE Force S 0 -fromabs $POSHOLD EndIf うーん。 だったらSelectやFindでもできそうなのに。。。 一つはできる方法がわかったので、また試行錯誤してみます。 (単発なら、Trimファイルのほうが手っ取り早いですが、シリーズでやるときはこちらのほうが便利。) 一部欠けてました。 いかに修正します。 GetPos S 0 -1.2 1.2 -fromabs 24.0 If $LASTEXE Force S 0 -fromabs $POSHOLD EndIf >>188 従来方式のSelect位置決めはJL_ATXが参考になります。 おそらくSelectに-logoextつけて検索範囲を広げる必要あり、と思います。 >>189 いや、再度試したところ動かないですね。 推測ですが、もしかして -fromabs の後ろのフレーム数は時刻値不可で、 整数値しかうけいれてないのが原因かもしれません。。。 GetPos+Forceの >>188 テストのときには log からまんまフレーム番号をコピペしてて、 ここに貼るときに隠ぺいのために時刻値に書き直したので。 ちょっとテストします。 AmatsukazeでCM解析したらtrim.avsを出力してくれたらなぁって思いました。 >>191 -fromabs は時刻値でも動いている模様です。。。ごめんなさい。 私が勝手に混乱をきたしている原因はログに出てくる Trim() の値とは別に、 PMT 更新情報と、音声チャンネル変更情報を裏で使ってくれている模様で、 私が思うフレーム番号と内部処理のフレーム番号が違うためのようです。 力不足で私の手におえない感じになってきましたが、 ちょっとずつ試行錯誤して、何かわかったら報告します。 >>193 CMカット部分だけ確認するbat ファイルを貼ります。 設定ファイル場所に使うものを記載して (JL_CHAPはCMカット途中に出力される生成結果で"SCPos:"が含まれているファイル)、 jls_test.bat等ファイル名を付けて実行したら結果を確認できます。 REM 設定ファイル場所 set JL_BIN=join_logo_scp.exe set JL_NAME=JL_従来標準.txt set JL_CHAP=obs_chapterexe.txt set JL_LOGO= set OUT_TRIM=out_trim.avs set OUT_JLS=out_jls.txt "%JL_BIN%" -incmd "%JL_NAME%" -inscp "%JL_CHAP%" -inlogo "%JL_LOGO%" -o "%OUT_TRIM%" -oscp "%OUT_JLS%" logoframe単体で動かすのがどうもうまくいかない readmeに書いてある通り logoframe.exe in_org.avs -logo hoge.lgd -oa logoframe.txt としても、logoframe.txtには空ファイルが出力されるだけ 試行環境のバッチファイルでやると問題なく出力されるのに >>194 わざわざありがとうございます。 join_logo_scp 環境自体は持っていて、 それを使えばエンコードなしCMカットの処理結果をチェックできるのですが、 やっぱりはカット後(エンコード後)の動画があったほうが分かりやすいので、 毎回Amatsukazeにエンコード(リトライ)させてます。 フィルタ最低限・画質最低限でNVenc使うと 30分番組が5分ぐらいで終わるので、その方式でやってます。 (今もまさにやってます) わかりましたーーー!!! 「実験として先頭部分のみカットテスト」してたのが原因のようです。 Find S のみで、末尾の E が自動で入ると無意識に考えていました。 上から処理するという条件は読んでいたので、Eがどこにもマッチしなければ Sだけ適用されると考えていましたが、 SとEがセットになって初めて有効になるというのが大条件のようです。 >>191 ということで、こんな感じでSとEの両方を設定すると問題なく動作するようになりました。 GetPos S 0 -2.2 2.2 -fromabs 10.0 -RSMA -4.5 0 If $LASTEXE Force S 0 -fromabs $POSHOLD EndIf Find E 0 0 0 おそらく、Find でも動くようになるんじゃないかと思います。 (Find のときにうまくいかなかったのも同様の原因かと思うので) JLスクリプト部分を何度も修正する場合、join_logo_scp本体のみ起動すると効率が上がります。 (時間のかかるロゴと無音シーンチェンジ検出は最初に一度だけ実行) Amatsukazeでは「一時ファイルを削除せずに残す」にチェック入れたら 一時ファイルをロゴと無音シーンチェンジ入力に利用できました。 一瞬でCMカット結果位置が出力されるので、何度も気軽にJLスクリプト修正できます。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.4.7 2024/03/31 Walang Kapalit ★ | Donguri System Team 5ちゃんねる