2011年09月21日

FFmpegでlibcdioを使ってみました


当サイトのFFmpeg rev.32736より、libcdioを使えるようにしてみました。
FFmpegから、音楽CDを直接読めるようになります。
おー、すごい!(のか?)

例えば、音楽CDが入っているドライブが「D:」で、サンプリングレート44.1kHz、ビットレート128kbpsのステレオmp3にエンコードしたい場合、

ffmpeg -y -f libcdio -i D: -acodec libmp3lame -ac 2 -ar 44100 -ab 128k temp.mp3

と、なります。
「-f libcdio」は「-i D:」の前に置かないといけないようです。

これだと、全曲つながった1個のデカイmp3になってしまうのですが、どうやって曲ごとに分割するの分かりません。

CDDBから曲名を取得してmp3に変換するだけなら、EACなどを使った方が簡単ですね。


ffmpeg -h でオプションを見てみると、

libcdio indev AVOptions:
-speed .D... Drive reading speed.
-paranoia_mode .D... Error recovery mode.
verify .D... Verify data integrity in overlap area
overlap .D... Perform overlapped reads.
neverskip .D... Do not skip failed reads.

というのが指定できます。

libcdioを追加してみたものの、使い方がよく分からなかったというお話でした。
posted by あべちん at 07:00 | Comment(0) | TrackBack(0) | 携帯動画変換君

2011年02月14日

FFmpeg内蔵AACエンコーダの使用例


FFmpeg内蔵AACエンコーダは、2011/02/14現在、実験段階ということになっています。

iPhoneやiPodなどのポータブルデバイスでヘッドホンで聴く分には、neroAacEncでエンコードしたものと比べても、たいして違いが分からないと、私は思います。

人によっては許せないという方もいらっしゃるようですので、ご自分の耳で判断していただければ良いかと思います。

ということで、携帯動画変換君での使用例を載せておきます。
Item番号、Title、解像度、ビットレートなどは、環境に合わせて変更してください。

画質の設定値は一例です。
とりあえず小さい画面で見られれば良いという感じです。

画質にこだわりたい方は、検索して他のサイトを参考にしてください。


[Item0]
Title=【動画】Xvid + 内蔵AAC(experimental) 320x240 768kbps 29.97fps 128kbps 44.1kHz
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -vcodec libxvid -flags +bitexact+mv4 -trellis 1 -me_method full -s 320x240 -aspect 4:3 -r 29.97 -b 768k -acodec aac -strict experimental -ab 128k -aprofile aac_low -ac 2 -ar 44100 -f 3gp -threads 3 "<%OutputFile%>.mp4""


[Item1]
Title=【動画】x264 + 内蔵AAC(experimental) 320x240 768kbps 29.97fps 128kbps 44.1kHz
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -vcodec libx264 -b 768k -s 320x240 -aspect 4:3 -r 29.97 -me_method umh -g 150 -qcomp 0.7 -qblur 0.5 -qmin 10 -qmax 51 -qdiff 4 -subq 6 -me_range 16 -coder vlc -trellis 2 -sc_threshold 50 -flags +loop -flags2 +mixed_refs+mbtree -keyint_min 30 -cmp chroma -level 30 -refs 3 -i_qfactor 0.714286 -acodec aac -strict experimental -ab 128k -aprofile aac_low -ac 2 -ar 44100 -f mp4 -threads 3 "<%OutputFile%>.mp4""


音声は以下の部分です。
-acodec aac -strict experimental -ab 128k -aprofile aac_low -ac 2 -ar 44100

-strict experimental は必須です。
プロファイルは、今のところ -aprofile aac_low のみ設定できます。(省略可)

参考にしていただければ幸いです。


2011/02/17 追記
kamedo2さんが、各種エンコーダについて詳しく検証されています。
とても参考になりますので、ぜひご覧ください。

・AACの音質比較
http://d.hatena.ne.jp/kamedo2/20110101
・携帯・スマホ等でのコーデックの音質評価
http://d.hatena.ne.jp/kamedo2/20110215



posted by あべちん at 22:02 | Comment(9) | TrackBack(0) | 携帯動画変換君

2010年11月17日

携帯動画変換君で、WebM(VP8)動画 v0.9.5


携帯動画変換君用の、WebM(VP8)動画エンコードオプションのサンプルです。
libvpx v0.9.5になって、オプションが一部変更されています。

設定値は、以下のファイルを参考にしました。
Additional options/presets for VP8 encodes under FFmpeg
http://code.google.com/p/webm/downloads/list
ffmpeg-HEAD-VP8_param_mapping-3.tar.gz


WebMの音声はVorbisのみです。
-acodecは省略、または、-acodec libvorbisのみ指定可能です。

[Item1]
Title=WebM/VP8動画 360p 768kbps 29.97fps 音声 128kbps 44.1kHz
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -vcodec libvpx -s 640x360 -r 29.97 -g 120 -rc_lookahead 16 -quality good -speed 0 -profile 0 -qmax 63 -qmin 0 -vb 768k -aq 4 -ac 2 -ar 44100 -threads 3 "<%OutputFile%>.webm""

[Item2]
Title=WebM/VP8動画 720p 2Mbps 29.97fps 音声 128kbps 44.1kHz
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -vcodec libvpx -s 1280x720 -r 29.97 -g 120 -rc_lookahead 16 -quality good -speed 0 -profile 0 -qmax 51 -qmin 11 -slices 4 -vb 2M -aq 4 -ac 2 -ar 44100 -threads 3 "<%OutputFile%>.webm""

[Item3]
Title=WebM/VP8動画 720p 2Mbps 59.94fps 音声 128kbps 44.1kHz
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -vcodec libvpx -s 1280x720 -r 59.94 -g 120 -rc_lookahead 25 -quality good -speed 0 -profile 0 -qmax 51 -qmin 11 -slices 4 -vb 2M -aq 4 -ac 2 -ar 44100 -threads 3 "<%OutputFile%>.webm""

[Item4]
Title=WebM/VP8動画 1080p 2Mbps 29.97fps 音声 128kbps 44.1kHz
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -vcodec libvpx -s 1920x1080 -r 29.97 -g 120 -rc_lookahead 16 -quality good -speed 0 -profile 1 -qmax 51 -qmin 11 -slices 4 -vb 2M -aq 4 -ac 2 -ar 44100 -threads 3 "<%OutputFile%>.webm""

[Item5]
Title=WebM/VP8動画 1080p 2Mbps 59.94fps 音声 128kbps 44.1kHz
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -vcodec libvpx -s 1920x1080 -r 59.94 -g 120 -rc_lookahead 25 -quality good -speed 0 -profile 1 -qmax 51 -qmin 11 -slices 4 -vb 2M -aq 4 -ac 2 -ar 44100 -threads 3 "<%OutputFile%>.webm""


【補足】
-quality オプションは、以下の3種類です。
best
good
realtime

画質は、
best > good > realtime
の順にbestが一番良いのですが、エンコードはかなり遅いです。
エンコード速度優先の場合は、realtimeにしてみてください。

2011/04/13 追記
Vorbis音声の、Quality(-aq)とNominal Bitrate(-ar)の関係は、Wikipediaをご覧ください。
http://en.wikipedia.org/wiki/Vorbis
posted by あべちん at 01:55 | Comment(0) | TrackBack(0) | 携帯動画変換君