MP4ファイル結合時の音ズレを防止する為のMP4BOXフロントエンドです。
JoinMP4Files1.0.4.0 ・・・ download
ダウンロードはこちらから。
コメントで報告いただいた、ファイル名に「#」(シャープ)を含む場合に結合に失敗する不具合に対応しました。
(mp4chaps.exeを使用しないチャプタ追加の場合にも同じ症状が発生します。)
ちなみにこれはMP4BOXの仕様のようで、コマンドに送るファイル名の最後に「#」を付けることで回避しました。
下のサイト様が参考になりました。
mp4boxでファイル名に#(シャープ)がある場合の回避方法
ついでに作業状態をXMLファイルへ保存し、次回起動時に復元するようにしました。(結合元MP4ファイルを除く)
前バージョンのコメント欄で出力パスは前回のフォルダがどうこうと書きましたが、面倒なのでそのままファイル名を保存するようにしたので誤って上書きしないように注意してください。
毎度のことですが、ご利用は自己責任でお願いします~
コメント
リクエストした えーい です
希望通りの改善で満足してます。
>誤って上書きしないように注意してください。
自分は結合したらすぐ移動させちゃうタイプなので無問題ですよ~
@えーい さま
コメントありがとうございます。
#「シャープ」の件はご指摘いただかなければ気付かなかったので助かりました。
自分はたま~にしか使ってなかったりするので・・・(^ ^;;
便利なツールを公開して頂いて大変助かっています。
当方では数十チャプターにも及ぶ動画を1つのファイルにまとめる必要があるため手作業では不可能でした。
とても使いやすいツールなのですが、何点か気づいたことがあります。
まずmp4boxでの結合方法なのですが、毎回結合途中のファイルを頭から読み込まないといけないのでファイル数が多くなると指数関数的に時間がかかるようになってしまいます。
これはソートでいうところのバブルソートと同じで数の2乗に比例してしまいます。
これを二分分割法、つまりクイックソートと同じように対数的、つまり2を底とする数の対数に比例することで飛躍的に高速化できるだろうと思いますが、いかがでしょうか?
例えば、1~8を結合する場合1+2=a、3+4=b、5+6=c、7+8=dを結合、次にa+b=A、c+d=BとしてからA+Bとした方が頭から毎回全部を結合するよりも効率的だと思います。
実際、200ファイルほど結合しようとしたら途方にくれてしまいました。
次にチャプターに関してですが、チャプターファイルが存在している時は結合を飛ばしてチャプターを書き込むだけのオプションがあると便利だと思います。当方はコマンドラインでmp4boxやmp4chapsを使うことが全く苦にならないですが、そうじゃない人にとっては助かる機能ではないかと思います。
書き忘れていましたが、もう一つ提案があります。
結合する時にmp4boxを起動していますが、コマンドウィンドウが毎回開き、キーボードニュー力のフォーカスが奪われるのもとても困っています。
コマンドウィンドウを最小化する等、バックグラウンドで結合時に邪魔にならないように出来ませんでしょうか?
@かこん さま
コメントありがとうございます。
自分ではあまり使用していないので放置気味です。スミマセン。。
結合順序のロジックについては私も気付いておりまして手元の開発環境ではテスト済です。デメリットとして正確なチャプタ位置を取得できなくなってしまうので、現行の手法と選択式にしようかと思っております。
チャプタのみのオプションは検討してみます。
ただ、チャプタまわりはあくまで「オマケ」ですので、手動でチャプタを打つなら他のツールをオススメしたいトコロですが(^ ^;
フォーカスの件も考えてみます。
ちなみに最小化してもフォーカスは奪われるようなので、単純に非表示にするしかないかもしれません。
そうですか、結合順を変えるとチャプタ位置が正確じゃなくなるのなら本末転倒ですね。時間さえかければ良いのでしょうがないですね。
チャプターオプションに関しては個人的には全く問題ないので、ただ単に他のツール、特にコマンドラインのツールを使う人には助かるかもと思っただけでした。
フォーカスは最小化しても駄目でしたか、非表示できるならお願いします。
それからちょっと問題に気づいてしまいました。どうやらチャプター数ですが最大100チャプターまでしか対応していないみたいですが、増やしていただけないでしょうか?
200チャプターを結合したら出来上がったチャプターファイルの中身が100チャプターまでしか出力されていませんでした。どうやら上限が100チャプターに決め打ちされているようです。
よろしくお願いします。
@かこん さま
チャプター位置の取得はもう少し調整してみます。
許容範囲になればいいのですが・・・
ちなみにロジックを変更してテスト(15秒の動画を100個結合)してみたところ、所要時間は1/5になりました。
最大チャプタ数はDVDの最大99と勘違いしておりました(^ ^;
次のバージョンで修正しますのでしばらくお待ちください。