携帯動画変換君の裏方

トップ

携帯動画変換君の裏方」→ダウンロードはこちら
ffmpeg(「携帯動画変換君」の変換エンジン)を利用した、フォルダ監視やタスク制御機能を持つ変換自動化ツール。
自動変換はよくありますが、録画中に変換しない(録画中変換中断)機能は便利です。
1.5〜残容量確保(古い録画ファイルの削除)機能も追加しました。
1.6〜複数入力フォルダを対応しました。
1.7〜DOSコマンドも指定できるようになりました。
ffmpegがあれば、「携帯動画変換君」インストールは不要です。
紹介サイト
  • 変換君の裏方でフォルダを監視して動画を自動変換(2009.3)
  • 「携帯動画変換君の裏方」〜自動変換した動画をiPodやPSPに入れて持ち歩こう(ALL FREE SOFT)
  • DLした動画フォルダを監視→携帯用動画に自動変換するテク(教えて君 2009.2)

  • ffmpeg最新
  • 「お気に入りの動画を携帯で見よう」【FFmpegダウンロード】

  • 目次
    18/02/19(月) リストウィンドウの高さを調整
    11/11/27(日) BonTsDemux[不具合] で m2v のサイズが 0 変換できない〜「アッコにおまかせ」「深夜食堂2」→古いバージョンで解決
    11/08/14(日) DOSコマンド対応について
    11/05/19(木) 1.6-195 (BUG-FIX)
    11/02/20(日) 複数入力フォルダ対応しました (1.6)
    11/02/12(土) 1.5リリース 残容量確保
    10/05/08(土) Windows7(x64)対策版
    

    PSP 再生用の設定 (*.tsが変換可能) 11/04/16(土) 11:56:13 (現状こちらで利用している設定)
    # === PSP 再生用の設定 ===
    #  TS ─<BonTsDemux>─┬→wav─<neroAacEnc> →aac┬─<ffmpeg>─→mp4
    #                     └→m2v────────→─┘
    ! -2,34 <%AppPath%>/cores/BonTsDemux -nogui -rf64 -i "<%InputFile%>" -o "<%TemporaryPath%>/<%Title%>"
    ! -1,13 <%AppPath%>/cores/neroAacEnc -if "<%TemporaryPath%>/<%Title%>.wav" -lc -br 128000 -of "<%TemporaryPath%>/<%Title%>.aac"
    ! -2  <%AppPath%>/cores/ffmpeg-28742 -y -i "<%TemporaryPath%>/<%Title%>.m2v" -i "<%TemporaryPath%>/<%Title%>.aac" -acodec copy -deinterlace -ab 128k -ar 48000 -s 480x272 -r 29.97 -vcodec libx264 -b 768k -flags +loop -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -subq 7 -trellis 2 -bidir_refine 1 -refs 2 -bf 1 -b_strategy 1 -coder 1 -me_range 16 -g 300 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -bt 768k -maxrate 4k -bufsize 4k  -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -level 21 -f psp -threads 4 -vsync 1 "<%OutputFile%>.mp4"
    ! 0  <%AppPath%>/cores/rm -f "<%TemporaryPath%>/<%Title%>.m2v" "<%TemporaryPath%>/<%Title%>.wav"  "<%TemporaryPath%>/<%Title%>.aac"
    
    ※ffmpegは、2011/4の Rev.28742(ffmpeg-28742にリネーム)を利用しています。
    BonTsDemuxを利用した理由は、音ずれ等の対策のため、 neroAacEnc を利用した理由等はここ(neroAacEncで3GP動画変換)を参照ください。
    →11/08/14(日) 19:03:28 記述!! rmは、cygwinの削除コマンドです。cygwinコマンドが動作する設定が必要です。(1.6-196以降であれば、cygwin無しで以下にて設定可能です)
    ! 0  cmd /c del "<\TemporaryPath\>/<%Title%>.m2v" "<\TemporaryPath\>/<%Title%>.wav"  "<\TemporaryPath\>/<%Title%>.aac"
    
    ※ <%XXX%> を <\XXX\> とすることでコマンドプロンプトのパス形式にて引数を取得可能です。
    履歴・メモ
    新しい順に記述しています

    18/02/19(月) 23:44:10 リストウィンドウの高さを調整

    リストウィンドウですが、変換するファイル数が多いと、表示を多く出したいと思いますが、スクロールしてもすぐに頭に戻ってしまい不便ですよね。
    本体を変えるのが筋なんですが、ソース変更がままならない状況になっていますので、別記事 winpos を使って以下を試してください。
        winpos -t"trescnv*list*" trescnv -g,,,600
        winpos -I+ -It "trescnv*list*" -t "" -g3,3,,565
      
    これで、50ファイル位は表示されるようになります。
    →18/03/25(日) 15:21:44
    winposを使わないでもいいように、trescnv 修正してサイズ変更できるようにしたバージョン 1.7-211 を公開しました。
    18/04/30(月) 1.7-214で再修正しました。

    □11/11/27(日) 14:15:20 BonTsDemux[不具合]で m2v のサイズが 0 変換できない〜「アッコにおまかせ」「深夜食堂2」→古いバージョンで解決

    BonTsDemuxで、m2vのサイズが0のものが出た。
    終了コードが 0 なので正常終了しているので、その後の ffmpegでエラーになっている。
    今日の「アッコにおまかせ」のts ファイル。11/13の 「アッコにおまかせ」でも同じ現象が出ていた。
    何回やってもだめなので、ダイレクトに ffmpeg で変換してみる。
    trescnv の プログレスの分母が 4989 と異様に小さいので、おかしなデータであることは確か。


    当方では、BonTsDemux - neroAacEnc - ffmpeg での 変換する、ts ファイルは、( で始まるファイルにしていて、
    ダイレクトに ffmpeg で変換する場合は、= で始まるファイルに設定している。
    設定はこれ。
    # 1 は、BonTsDemux - neroAacEnc - ffmpeg
    +1 (*.ts
    # = は direct変換  (ffmpeg)   
    +2 =*.ts
    
    !1 -2,34 <%AppPath%>/cores/BonTsDemux -nogui -rf64 -i "<%InputFile%>" -o "<%TemporaryPath%>/<%Title%>"
    !1 -1,13 <%AppPath%>/cores/neroAacEnc -if "<%TemporaryPath%>/<%Title%>.wav" -lc -br 128000 -of "<%TemporaryPath%>/<%Title%>.aac"
    !1 -2  <%AppPath%>/cores/ffmpeg-28742 -y -i "<%TemporaryPath%>/<%Title%>.m2v" -i "<%TemporaryPath%>/<%Title%>.aac" -acodec copy -deinterlace -ab 128k -ar 48000 -s 480x272 -r 29.97 -vcodec libx264 -b 768k -flags +loop -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -subq 7 -trellis 2 -bidir_refine 1 -refs 2 -bf 1 -b_strategy 1 -coder 1 -me_range 16 -g 300 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -bt 768k -maxrate 4k -bufsize 4k  -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -level 21 -f psp -threads 4 -vsync 1 "<%TemporaryPath%>/<%Title%>.mp4"
    !1  0 rm -f "<%TemporaryPath%>/<%Title%>.m2v" "<%TemporaryPath%>/<%Title%>.wav"  "<%TemporaryPath%>/<%Title%>.aac"
    !1 -2 mv -f --backup=numbered "<%TemporaryPath%>/<%Title%>.mp4" "<%OutputFile%>.mp4"
    
    !2 -2  <%AppPath%>/cores/ffmpeg-23100 -y -i "<%InputFile%>" -deinterlace -acodec aac -ab 128k -ar 48000 -s 480x272 -r 29.97 -vcodec libx264 -b 768k -flags +loop -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -subq 7 -trellis 2 -bidir_refine 1 -refs 2 -bf 1 -b_strategy 1 -coder 1 -me_range 16 -g 300 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -bt 768k -maxrate 4k -bufsize 4k  -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -level 21 -f psp -threads 4 "<%TemporaryPath%>/<%Title%>.mp4"
    !2 -2 mv -f --backup=numbered "<%TemporaryPath%>/<%Title%>.mp4" "<%OutputFile%>.mp4"
    
    (日TBS)アッコにおまかせ!(20111127-1145) → =(日TBS)アッコにおまかせ!(20111127-1145)
    にファイル名称を変えて、再度変換を掛けると、変換できた。
    →11/12/03(土) 06:37:38
    しかし、「深夜食堂2」も、3,4,5話が無いなと思っていたらこの症状で変換されていなかったことに気づいた!!
    →11/12/03(土) 08:56:32
    BonTsDemux のバージョンを変えて試した所、以下のことがわかりました。

     1.10-10k7fix05 (up1091.zip) ×
     1.10-10k7fix04 (up1089.zip) ×
     1.10-10k7fix02 (up1029.zip) ○
    

    上手く行かないときは、以下のようになります。
    $ BonTsDemux-110-10k7fix05.exe -nogui -rf64 -i "(日TBS)アッコにおまかせ!(20111127-1145).ts" -o d:/tmp/a/xxx
    FileSize=8882456680

    $ ls -l d:/tmp/a/xxx
    ----------+ 1 .... None 0 12月 3 08:50 xxx.m2v
    ----------+ 1 .... None 104 12月 3 08:50 xxx.wav

    上手く行くときは、

    $ BonTsDemux-110-10k7fix02.exe -nogui -rf64 -i "(日TBS)アッコにおまかせ!(20111127-1145).ts" -o d:/tmp/a/xxx
    FileSize=8882456680
    ServiceName:1048 TBS1
    ServiceName:1049 TBS2
    Progress:100%

    と、プログレスが出ています。

    $ ls -l d:/tmp/a/xxx
    ----------+ 1 .... None 65536000 12月 3 08:50 xxx.m2v
    ----------+ 1 .... None 8781928 12月 3 08:50 xxx.wav

    とりあえず、エラーすると面倒なので、1.10-10k7fix02 に戻して変換するようにしよう..と。

    □11/08/14(日) 18:28:37 DOSコマンド対応について

    現在のバージョン(1.6-195)でのコマンドラインの設定で通常のコマンドプロンプトのコマンドが上手く動作しないことがわかっています。
    こちらでは、常に Cygwin のコマンド (rm, mv, cpなど)を使っていたので気づきませんでした。
    ディレクトリ(フォルダ)名の区切りがスラッシュ('/')だと上手く動作しないことがあるようです。moveコマンドなど。
    trescnv.conf 内の設定
     ! 0 cmd /c move /Y "<%InputFile\%>" "<%InputPath%>/tmp"
    
    が、実際にファイルがあるけど動作しないようです。
    ↓ ログ (trescnv.log)
    $ cmd /c move /Y "e:/PT2-REC/yyy2dummyuuu.ts" "e:/PT2-REC/tmp"
    >指定されたパスが見つかりません。
    

    $ cmd /c move /Y "e:\PT2-REC\yyy2dummyuuu.ts" "e:\PT2-REC\tmp"
    であれば、ちゃんと動作するようです。

    これらの問題を対処したバージョンを現在作成中です。
    →11/08/14(日) 19:39:40
    対策バージョン(1.6-196)を作成しました。
    →11/08/20(土) 18:08:43
    1.7としてちょっと修正しました。
    →11/08/25(木) 19:50:53
    ベクターに登録されました。→ダウンロードはこちらから

    □11/05/19(木) 21:17:46

    変換中に、変換対象の入力ファイルをリネームや、削除すると、落ちる不具合を修正したバージョンをリリースします。
    □11/05/19(木) 21:17:46
     1.6-195 (1.6〜の変更点)
         - 変換中に、入力ファイルをrename,deleteすると落ちてしまうことがあった。
         - 処理の記述を0〜FFの256種類可能にした。
         - 待ちでrecordingとなるので表示をwaitingに変更。
         - コマンド数最大(!行の数)値を  128 → 256 に拡大。
     
      古いバージョンです。ダウンロード : trescnv16-195.zip

    □11/03/25(金) 20:32:18

    1.6をリリースしました。
    古いバージョンです。ダウンロード : trescnv16.zip

    □11/02/20(日) 18:04:50 複数入力フォルダ対応しました

    1.5を出したばかりですが、当方HDDを拡張したので、複数同時の録画の負荷を減らすために、半分をそのドライブに書くように設定しました。
    現行バージョン(1.5)では、入力位置が固定のため、他方に録画したものの変換が自動にかからないので、現在、複数のディレクトリを入力ディレクトリに指定できるように改良しています。
    動作が安定したら、公開したいと思います。
    →11/02/27(日) 00:17:39
    動作確認ができましたので、公開します。'i' のキーを複数書けば動作します。
    ダウンロード :
    trescnv15-182.zip(古いバージョンです)
    HDDは、日立の2TB を 2 台使っています。もっと安いのがありますが、回転数が 5400 とか、遅いものが多いので注意。
    こちらのサイトでは、 を使いました。性能は確かだと思います。

    □11/02/12(土) 16:40:13 1.5リリース

    残容量を常に自動に保つ機能を実装しましたので、ぜひ使ってみてください。
    機能は設定ファイルを追加で書けば利用可能です。設定の方法とかは、モジュール内の readme.txt を参照ください。
    とりあえず、残容量を例えば、e:/REC/Converted にあるファイルを古いものから削除して 100GBの容量を空けるには、
    R 100000,10,20  e:/REC/Converted
    
    と書けば、実行されます。
    10,20 は、1回に削除する制限数と、残しておきたい最少のファイル数になります。 なお、デフォルトでは、1時間単位でこの処理が動作します。複数記述できるので、別のディスクの空きも確保できます。
    容量の桁を間違えると大変です(ゴミ箱に入らず削除します)のでまず、消えていいフォルダで試してみてください。

    □10/05/08(土) 20:39:50


    [Windows7(x64)対策版]
    Windows7(x64)で落ちる問題を対応したバージョンを作りました。
    バッファーオーバーランが原因でした。他のOS(XPとか)で落ちないのは、壊すメモリ位置が違うからと思われます。ffmpegが出力する文字列の長さに影響するのでバージョン等で状況も変わっていました。
    Vectorから最新のものをダウンロードしてお使いください。
    [ffmpegの新しいものを利用しよう]
    「携帯動画変換君」(3GP_Converter034)に付属している、ffmpeg はかなり古いので、最新のモジュールを使うと、色々な変換が可能になると思います。ただ、オプションがかなり違うので、現在動作していて利用している場合、動作しなくなる可能性がありますのでご注意ください。
    複数のバージョンのffmpegを名称を変えて置いておくのが得策です。
    ffmpeg の 最新 revは、以下から DL できます。
    「お気に入りの動画を携帯で見よう」【FFmpegダウンロード】
    [紹介ページ]
    いつの間にか以下のサイト(ALL FREE SOFT)にも紹介(使い方)がありました。
    (ALL FREE SOFT)
    「携帯動画変換君の裏方」自動変換した動画をiPodやPSPに入れて持ち歩こう
    

    ※このツールのタイトルが「携帯動画変換君の...」となっているのは、売名行為です-:) 。実際は、ffmpegだけがあれば使えます。正しく言えば、ffmpegでなくても、変換ツールがコマンドラインからよぶことができれば、そのツールがあれば利用できます。
    [PT2 + TvRock + trescnv(携帯動画変換君の裏方) で地デジ]
    実は、今までFEATHERにてアナログ放送を録っていましたが、PCをWindows7(x64)に替え、ついに地上デジタル放送(+BS/CS)を録画する生活になりました。
    PT2を買って TvRock での録画に成功し、TSストリームをPSP用の AVC へ自動に変換ができるようになりました。(10/05/09(日) 16:48:33)

    □10/05/07(金) 20:15:41


    携帯動画変換君の裏方ですが、報告にあるとおり、Windows 7の x64 版で、落ちてしまうようです。やっと、Windows 7の 64ビット版の PCを買い替えたので、再現することができました。
      問題イベント名:       APPCRASH
      アプリケーション名:   trescnv.exe
      アプリケーションのバージョン: 0.0.0.0
      アプリケーションのタイムスタンプ:     4be3993c
      障害モジュールの名前: StackHash_0a9e
      障害モジュールのバージョン:   0.0.0.0
      障害モジュールのタイムスタンプ:       00000000
      例外コード:   c0000005
      例外オフセット:       4d20584d
      OS バージョン:        6.1.7600.2.0.0.256.48
      ロケール ID:  1041
      追加情報 1:   0a9e
      追加情報 2:   0a9e372d3b4ad19135b953a78882e789
      追加情報 3:   0a9e
      追加情報 4:   0a9e372d3b4ad19135b953a78882e789
    
    StackHash_0a9e のエラーですが、Windows7 64bit版で結構起きているようです。ちょっとデバッグしてみたのですが、落ちている箇所が限定できない状況です。

    □09/04/25(土) 22:45:21


    なんと、AUTO変数の領域を別スレッドに渡していました。メモリの状態で、変換コマンドが動作しなくなることがありました。
    ごめんなさい。修正しました。
    Vectorのページからダウンロードください。

    □09/02/27(金) 16:06:18

    携帯動画変換君の裏方が「教えて君」で紹介されました。
    こちらの説明の方が、ここの説明よりわかりやすいかも...
    DLした動画フォルダを監視→携帯用動画に自動変換するテク

    □08/08/30(土) 12:40:30

    お待たせしました。GUI化ができました。これで、皆さんに使ってもらえるようになったと思います。
    →9/4 Vectorに登録されました。
    GUIの画面サンプルを以下に引用します。
    使い方に関しては、ダウンロード後の Readme.txtを参照してください。既に利用している方は、そのまま実行し、タスクトレイのメニューを見れば、すぐ使えると思います。

    □08/06/15(日) 01:03:46

    「携帯動画変換君の裏方」のTIPSを書きます

    □08/06/09(月) 22:50:15

    「帯動画変換君の裏方」見栄えを良くするために、GUI化をトライしています....が
    Visual Studioも 数年使っていないので、ちょっと使い方から思い出しているので...

    □08/06/07(土) 17:07:01<

    携帯動画変換君の裏方」をベクター(ここ)に登録しました。よければお使いください。
    一言で言えば、
    「携帯動画変換君」のエンジンを利用した、フォルダ監視やタスク制御機能を持つ変換の自動化ツール

    □08/05/24(土) 17:17:31

    使えるようになった、「携帯動画変換君の裏方」を公開します。ダウンロード可能(ここ)になりました。ドキュメントも格納してありますので、使ってみてください。

    □08/05/21(水) 00:29:23

    trescnvを改名します。「携帯動画変換君の裏方」。
    で、現在のバージョンでは、Featherとか録画のソフト(指定可能)が動作中には、優先度を低くするのではなく、ffmpegプロセスをサスペンドするように改良しています。
    優先度を低くするだけでは、周期的に動作が重くなることがあり、非常に使いづらいものでしたが、サスペンドする機能をつけてからは、快適に使えています。
    時間ができたら、公開しようと思いますが.. まあ、自己満足の世界で、誰も欲しいと思わないかも知れないですが...

    ■08/01/13(日) 02:12:13

    最近、ドラマを自動変換して通勤時間にPSPで見ています。有名な「携帯動画変換君」を使っていましたが、FEATHERで録画したものを、ドラッグ&ドロップしないと変換が開始しないので、自作で、規定位置のフォルダに、動画の元のファイルが入ったら自動に変換できる ソフト trescnv を作ってみました。これで何も操作しなくても、朝になると、PSPに変換されたデータが入るので非常に便利になりました。
    誰か、使いたい要望があればまじめに書きますけど.. まあこのサイト余り、人気無いので見られてませんので...多分ないと思いますが... download ページにおいておきます。