* .mp4ビデオファイル(MPEG4ビデオコーデック)があり、Linuxのffmpeg(バージョン-FFmpegバージョンSVN-r0.5.1-4: 0.5.1-1ubuntu1、著作権(c)2000-2009 Fabrice Bellard、)以下に示すコマンドラインを使用して、
ffmpeg -i input .mp4 output.h264
しかし、私は言ってエラーが表示されます-
Unsupported codec for output stream #0.0
次に、このオプションを試してみると:
ffmpeg -i input .mp4 -formats h264 output.h264
それはまだ動作せず、与える-
Seems stream 0 codec frame rate differs from container frame rate: 59.94 (5994/100) -> 29.97 (30000/1001)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Rapture.mp4':
Duration: 00:02:06.44, start: 0.000000, bitrate: 26574 kb/s
Stream #0.0(eng): Video: h264, yuv420p, 1920x1080, 29.97 tbr, 29.97 tbn, 59.94 tbc
Stream #0.1(eng): Audio: aac, 48000 Hz, stereo, s16
そして、それを行うときに得られる形式に関するヘルプを出力しますffmpeg -formats
ヘルプを確認したとき、ffmpeg -formats
、H264ファイル形式とコーデックに関連する以下の情報が表示されます。
File format :
DE h264 raw H.264 video format
Codecs:
D V D h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
私の質問:
ビデオをH264エンコードビデオ(生のH264ビデオ形式)に変換する方法
私がする時 ffmpeg -formats
、サポートされているコーデックの多くの頭字語が表示されます。コーデック名/タイプの前に多くの頭字語が表示されます-D V D S E A、何の略ですか?
Ffmpegオプションの使用方法-vcodec
および-formats
?
libx264
をインストールしてffmpeg
で構成し、ビデオをh264
に変換していると思います...その後、-vcodec libx264
...で試すことができます。-format
オプションは利用可能な形式を表示するためのもので、これは私が思う変換オプションではありません...
これらのオプションを使用して、HTML5再生用のH.264/AAC .mp4形式に変換しました(何らかの方法でこの問題を抱えている他の人に役立つと思います)。
ffmpeg -i input.flv -vcodec mpeg4 -acodec aac output.mp4
更新
@LordNeckbeardが述べたように、前の行はMPEG-4 Part 2
(なんとかして機能した2012年に戻ったが、その理由を覚えていない/理解できない)。使用 libx264
H.264/AACで適切なビデオを生成するエンコーダ。出力ファイルをテストするには、ブラウザウィンドウにドラッグするだけで、正常に再生されるはずです。
ffmpeg -i input.flv -vcodec libx264 -acodec aac output.mp4
私は今までのところ上記の答えは時代遅れである(または少なくとも不明瞭である)と信じているので、ここに私のちょっとした取り組みがあります。オプション--enable-encoders=libx264
を使用してffmpegをコンパイルしようとしましたが、エラーは発生しませんが、何も有効になりません(その提案を見つけた場所が見つからないようです)。
とにかく、ステップバイステップで、リポジトリのバージョンが古いため、まず自分でlibx264をコンパイルする必要があります。
wget ftp://ftp.videolan.org/pub/x264/snapshots/last_x264.tar.bz2
tar --bzip2 -xvf last_x264.tar.bz2
cd x264-snapshot-XXXXXXXX-XXXX/
./configure
make
Sudo make install
そして、libx264を有効にしてffmpegを取得してコンパイルします。私は「幸福」である最新リリースを使用しています:
wget http://ffmpeg.org/releases/ffmpeg-0.11.2.tar.bz2
tar --bzip2 -xvf ffmpeg-0.11.2.tar.bz2
cd ffmpeg-0.11.2/
./configure --enable-libx264 --enable-gpl
make
Sudo install
最後に、エンコードするlibx264コーデックがあります。これを確認するには、次を実行します。
ffmpeg -codecs | grep h264
最初のDはデコードを意味し、最初のEはエンコードを意味します。
"C:\Program Files (x86)\ffmpegX86shared\bin\ffmpeg.exe" -y -i "C:\testfile.ts" -an -vcodec libx264 -g 75 -keyint_min 12 -vb 4000k -vprofile high -level 40 -s 1920x1080 -y -threads 0 -r 25 "C:\testfile.h264"
上記は、Kyle SchwarzによるFFmpeg Win32共有ビルドを使用するWindowsマシンで機能しました。ビルドは2013年2月22日、01:09:53にコンパイルされました。
-anはオーディオをスキップすることを定義することに注意してください。