しばらく前に、VideoLAN、OSX版VLCプロジェクト終了の危機 - 開発者不足が原因と報じられていましたが、いよいよこれが現実のものになったようです。VLC 1.0.6 がリリースされていますが、Mac OS X 版のバイナリは一向に公開されません。
VLC は巨大なソフトウェアで、ソースコードから自分で make するのは途方もなく大変です。正直、そこまでやる元気はないです。
また、私が使用していた VLC 1.0.3 から 1.0.5 までMPEG4-AAC エンコーダのバグ (※) で、音が割れるという障害が発生していましたが、これも一向に修正される気配がありません。
※ 同一の .ts ファイルから MPEG2 Video + MPEG Audio の設定で MPEG2 プログラムストリームを生成したときは、音は割れませんでした。
生 .ts を保存し続けるには HDD の容量が厳しくなってきたので、これからはHandBreak というソフトでエンコードすることにします。日本語版もあります。コマンドライン版も配布されているので、こちらを使えば Automator を使ってエンコードできます。
HandBreadkCLI は /usr/local/bin にインストールされているものと仮定します。以下のようなサービスを Automator で作って、「iPhone 用にエンコード」とでも名前を付けて保存しておきます。
以下はコピペ用のコードです。お好みで、ビットレートをいじるなり、2パス解析をやらせるなりしてください。
HANDBRAKE=/usr/local/bin/HandBrakeCLI SIZE='--width 480 --height 272' VIDEO='--format m4v --vb 896' AUDIO='--ab 128 --arate 48' FILTER='--deinterlace slow' ENCODER='--encoder x264 --aencoder faac' X264_OPTS="--x264opts 'level=30:cabac=0:ref=2:mixed-refs=1:analyse=all:me=umh:no-fast-pskip=1'" while [ $# -gt 0 ] ; do FN=`basename "$1" .mpg`.m4v DIR=`dirname "$1"` cd "$DIR" $HANDBRAKE $ENCODER $VIDEO $X264_OPTS $SIZE $AUDIO $FILTER -i "$1" -o "$FN" \ > /dev/null 2> /dev/null shift done
VLC 新しいのでてますね
返信削除V1.1.0
tsからmpg(ps)への変換にはやはりVLCを使っておられるのでしょうか?
返信削除でなければ上のスクリプトはbasename のmpgのところがtsの間違いではないでしょうか??
VLC1.1.0が出ていることを、報告しましたがVLC1.1.0は64bit化されたアプリのようで、変換作業が5〜10%高速化されました。ただし次のような問題がありました。
ts->mpg(ps)問題なし。
mpg->mp4 問題あり。動画はできるが、音声(AAC)がでない(QuickTime Player& iPad)。QuickTime 7ではちゃんと再生される。
一応そのスクリプトを載せておきます。
#!/bin/sh
VLC=/Applications/VLC.app/Contents/MacOS/VLC
OUTPUT=`basename ${1} .mpg`.mp4
SIZE="width=480,height=270"
ASPECT="canvas-aspect=1:1"
FPS="fps=29.97"
CROPPADD="cropbottom=2,paddtop=2,paddbottom=2"
X264_OPTS="profile=baseline,level=30,keyint=30,bframes=0,ref=1,nocabac"
VIDEO="venc=x264{$X264_OPTS},vcode=h264,vb=1536"
AUDIO="acodec=mp4a,ab=128"
OPTS="deinterlace,audio-sync"
MUX="mux=mp4"
$VLC --intf=dummy --sout="#transcode{$SIZE,$FPS,$ASPECT,vfilter=croppadd{$CROPPADD},$VIDEO,$AUDIO,$OPTS}:standard{$MUX,dst=$OUTPUT,access=file}" ${1} vlc://quit
mv ${1} $HOME/.Trash/
massaさん、コメントありがとうございます。
返信削除説明が足りませんでした。私のやり方では、tssplitter_lite で目的のストリームを抽出した後、Windows 用のMPEGエディタで .ts ファイルをカット編集しています。編集後の出力は、.mpg(ps) 形式にしています。
ご指摘の VLC 1.1.0 で音声が出ないという問題ですが、HandBreak でも同様の障害が発生しています。(まだ試していませんが) これらのソフトは、同じスプリッタやエンコーダを使用しているため、どちらを使用しても状況は変わらないと思います。なお、カット編集後は支障なくエンコードできています。
なるほど。
返信削除僕の場合、生tsをVLCでpsにします。その後VLC(1.0.5)でmp4などにしています。この時、Handbrakeを使っても目的のファイルはできますが、同じ品質の動画ファイルを作るのに、Handbrakeは多少時間がかかるようです。音などはちゃんとでています。