2006/05/17

Youtube動画[FLV形式]をAvi形式動画に変換する(FFMpegを使う)

Youtubeファイル(FLV形式)をウインドウズの動画ファイル(Avi形式)に変換する方法を説明します。
変換には、オープンソースソフト FFMpegを使います。

Avi形式に変換すると、オープンソースソフト Virtualdubでの編集が速くなります。

同じようにMPEG1Wavに変換MP3に変換は別ページを見てください。

【準備】

MS-DOSの知識が必要になります。
オープンソースソフト FFmpegを導入(フリーソフト 携帯電話変換君を推奨)
ffmpeg.exeがあるパスにMS-DOS上でディレクトリーを移動します。
(間違った入力をすると元の動画消えるのでバックアップを取って試しましょう)


【オプションについて】


変換時に以下のオプションを使います。
値をこれより上げても品質が変わらない場合があります。

映像のコーデック -vcodecで指定します。値は他との連携を考えて msmpeg4v2 とします。
(xvidはvfwじゃないし、mjpegは標準で入ってないからです。他におすすめあれば教えてください)

音声のコーデック -acodecで指定します。値はAviでの定番のMP3とします。

映像のビットレート
-b で指定します。値は、900ぐらいでいいと思います。

音声のビットレート
-ab で指定します。値は96ぐらいでいいと思います。

オプション:音声のチャンネル
-ac で指定します。2を推奨(他のソフトでもうまく編集できるように)
オプション:音声のサンプルレート
-ar で指定します。44100を推奨(他のソフトでもうまく編集できるように)

【Aviに変換】
こんな風になります。



ffmpegと入力した後(以後単語の区切りではスペースを入れてね)
あとは、-iの後にダブルコーテションで区切ったファイルパスを入力します。(あるいはMS-DOSウインドウにファイルをドラッグ&ドロップします。) そして -b 900 -ab 96 その後に、
-vcodec msmpeg4v2 -acodec mp3入れた後に
出力ファイル名を入れます。(例:output.avi)

ffmpeg -i "c:\duff.flv" -b 900 -ab 96 -vcodec msmpeg4v2 -acodec mp3 output.avi


すると
C:\Program Files\3GP_Converter032\cores の中か、
指定した場所にファイルが出来てます。

【上書きについて】



こんな画面が出る時があります。これはすでに同じ名前のファイルがあって上書きしていいか聞いています。いい場合はyを押します。
この表示を出さないで上書きするには、ffmpegと入力した後で -y オプションを追加します。

【編集したら】
オープンソースソフト Virtualdubで遊びましょう。

【エラー】
Error while opening codec for output stream #0.1 - maybe incorrect parameters such as bit_rate, rate, width or height
これは、-abの値が高い場合におきます。
この場合は、-ar 44100などをして、サンプリングレートも上げましょう。

[msmpeg4v2 @ 0x7aee38]warning, clipping 1 dct coefficients to -127..127
原因不明、僕は気にしてません。

4 comments:

Anonymous said...

Hi, I tried your method with WinXP's "cmd" (instead of MSDOS) but it didn't worked. Do you have a method for the cmd?

aki said...

hi,I'm afraid I don't know the difference ot them.

Was there any error message?

Anonymous said...
This comment has been removed by a blog administrator.
Anonymous said...

これも"-vcodec copy -acodec copy"が使えるみたいですね。(flv4だと上下左右が逆になりますが。)