Youtubeのフラッシュビデオをaviに変換 覚書    (2009.05.18)
youtubeからダウンロードしたFLVファイルのままで見れたら一番いいのだが、
flashプラグインを入れてもtcpmpでyoutube動画はみれなかった。

選択肢は2つ。
1)フラッシュ動画が見れるソフトを買う。
 Coreplayer なら youtubeサポートは組み込まれているが29.95ドルする。
 
2)FLV形式をaviやmp4に変換してからWS003に移す。

せっかくWS003が6000円だったのだから、なるたけお金を使わない方針で、
2)を選択する。
変換ソフトにも有料と無料があり、例えば Gom encoder は約5000円!
よって評判のよいフリーソフト「携帯動画」を、、と考えたが、これまたちょっと考えた。

ドラッグ&ドロップの簡単操作だとしても、これまで溜め込んでいたyoutube動画を
まとめて処理できないのは面倒ではないか?
やりたい事は単純で、youtube動画をW-zeroで見れるようにまとめて変換したいだけだ。

色々調べてみると、ファイルの変換そのものは ffmpeg.exe というプログラムが
やっている事がわかった。

試しにffmpeg.exe ウインドウズ版を開発元からダウンロードして使ってみたところ、
これ一つでFLVをaviやmp4に変換できるではないか。

最初「携帯動画」のなかのffmpeg.exeを使ったため、いろいろ悩んだので、覚書としてメモっておく。

ffmpeg.exe は、細かいリヴィジョンのアップデイトがある。(細かすぎる!!)
最終的に一括変換に使ったのは最新版 ffmpeg-18822
携帯動画.zip に入っているものは少し古い。9000番台か?
「携帯動画」のcores フォルダーの cygwin1.dll と cygz.dll をwindowsのsystem32へコピー。

古いリヴィジョンのものは
% ffmpeg -y -i in.flv -vcodec mpeg4(またはxvid) -acodec aac (または mp3) out.mp4

新しいリヴィジョンのものは
% ffmpeg -y -i in.flv -vcodec libxvid -acodec libfaac (または libmp3lame) out.mp4

これが基本形で、ビットレートをどうする、とか、サイズをどうするとか、
こだわる人は山ほどオプションをつける。
元々ちっこい画面のユーチューブ動画を変換したいだけなので、
わたしはデフォルトにまかせ、  -ab 128k (音声のビットレートを128k)だけつけた。

この変換を複数ファイルまとめてやってほしいので、perlで簡単なスクリプトを書いた。
--------------------------------
#! C:/Perl/bin/perl

my $path = "F:/ws003/sources/";
my $inpath = "F:\\ws003\\sources";
my $outpath = "F:\\ws003\\outputs";

opendir(DH, $path) or die;
while (my $file = readdir(DH)) {
    chomp $file;
    next if $file =~ /^\.+$/;
    if ($file =~ /(.*)\.flv/){
#       $namae = $1 . ".avi";
#       $meirei = "ffmpeg -y -i \"$inpath\\$file\" -vcodec libxvid -acodec libmp3lame -ab 128k -f avi  \"$outpath\\$namae\"";
#  mp4に変え、音声もシンプルにそのまま。

	$name = $1 . ".mp4";
	$meirei = "ffmpeg -y -i \"$inpath\\$file\" -vcodec libx264 -level 13 -acodec copy \"outpath\\$name\"";

       system("$meirei");
    }
}
closedir DH;

---------------------------------

ソースと名づけたフォルダーにyoutube動画ファイルを入れ、
コマンドプロンプトから上記のパールスクリプトを動かすと(activeperlをインストール済み)、
アウトプットフォルダーに変換済みのファイルがたまる。

一番手間がかかったのは、ファイル名を自分好みの半角アルファベットに直した事だった(爆!)。

書きっぱなしの部屋へ戻る