2014年2月24日月曜日

TSファイル自動CMカット&mp4エンコード その1 ~自動エンコード環境構築編~

久々の更新です。
TSファイルのCMを自動で除去し、mp4にエンコードする方法について、ちょこっと書いてみます。



SC06D破壊してからroot関連全く触ってないんでKitKatが書けない

TSファイルの自動CMカットツールを探していた時に、「備忘録とか色々ブログ」様にあるツールを見つけました。ここではTVRockと連携して使うようになっていますが、これをEDCBとでも連携できるような方法を紹介します。
※これは自分が試行錯誤した結果、たまたま動いてしまっている可能性があるので、このツールの作者様に問い合わせをしないで下さい。※
問題点は
①EDCBは録画後batを実行する際、マクロを適用してコピーを作成し…(詳しくはEDCBのreadme)、つまりbat実行の際予期せぬ動作をする可能性がある。
②EDCBが直接実行するbatは常にEDCBのexeのあるフォルダにある。(理由はEDCBのreadme)
③このbatで使われるファイル名の形式には、EDCBのマクロをどうこねくり回しても出来ない。
④↑とかぶるが、タイトルに話数が入る場合(TBSなど)はフォルダ分けがカオスになる。
があります。
(他にもあると思いますが)


<解決方法>
①AutoEncord2.batがコピーされ、書き換えられないように、Autoencord2.batを呼び出すだけのbatを作成し、それを録画後batに指定する。
AutoEncode2.bat→(マクロが適用され、該当部分が書き換わる)→EpgTimer_Bon_RecEnd.bat
となることを防ぐために
Encord.bat(任意のファイル名/AutoEncode2.batを呼び出すだけ)→(マクロに該当する部分がないので書き換わらない)→EpgTimer_Bon_RecEnd.bat→呼び出されたAutoEncode2.bat(書き換わってない)を実行


というふうにします。呼び出しは callでいいと思います。
②EpgTimer_Bon_RecEnd.batはEDCBのexeのあるフォルダに作成されるので、混乱を避けるためにAutoEncode2.batも同じ場所にインストールする。
もちろん、そもそもの設定として「録画フォルダでインストール」というのも無視できませんから、exeのあるフォルダにtsを録画させます。「exeのあるフォルダに実行するbatがある」「AutoEncord2.batはtsファイルと同じフォルダに存在する」を同時に満たすようにするわけです。
また、最終的な録画の保存場所はこのbatで指定できるのでそこで振り分けます。
③、④外部のリネームバッチ<SCRename>を使用する。
このリネームバッチの設定は各自調べて欲しいですが、このツール自体はEDCB対応しているのでEDCBのrenamemacro.dllで付けられたファイル名を利用できます。このbatも実行時に書き換えが起こると怖いので、マクロが入らないようにコマンドを書くか、Encord.batで呼び出すようにします。
以上の方法でひと通りは解決できますが、環境によっては出来ないこともあるのであえて曖昧な書き方をしました。参考にならないかもしれないですが、ご容赦下さい。
繰り返しになりますが、現状で対応させる苦肉の策なので、作者様のご迷惑にならないようお願い致します。
お疲れ様でした。次回もお楽しみに!!

1 件のコメント:

  1. お返事が遅くなってしまいすみません。
    こちらでPC移行を試したところ、通常よりはるかに手間がかかったので、おすすめできないです。
    最初から設定したほうが簡単にすみます。
    ご期待に添えず申し訳ありません

    返信削除