Ubuntu 10.04のffmpegでlibmp3lameを使用できるようにする

Ubuntu 10.04でffmpegコンパイルのコメントで、libmp3lame を使う為に ffmpeg をコンパイルしようとされている方がおられた。

しかし、、前回テストした時に、パッケージのffmpeg も libmp3lame が使えていたはずで、果たしてコンパイルが必要なのか?が気になったので、VirtualBoxにUbuntu 10.04を入れてインストールテストしてみた。

Synapticパッケージマネージャで ffmpeg をインストール指定。

ffmpeg に依存するパッケージをSynapticパッケージマネージャで unstripped をキーワードに検索して指定する

libavcodec-unstripped-52 (これを指定すると libmp3lame0がインストールされる)
libavdevice-unstripped-52
libavfilter-unstripped-0
libavformat-unstripped-52
libavutil-unstripped-49
libpostproc-unstripped-51
libswscale-unstripped-0

全部指定して「適用」を実行すると、ffmpegの他、次のパッケージがインストールされる。

インストールが完了したら、

noizumi@noizumi-desktop:~/share$ ffmpeg -formats |grep mp3
FFmpeg version SVN-r0.5.1-4:0.5.1-1ubuntu1, Copyright (c) 2000-2009 Fabrice Bellard, et al.
configuration: –extra-version=4:0.5.1-1ubuntu1 –prefix=/usr –enable-avfilter –enable-avfilter-lavf –enable-vdpau –enable-bzlib –enable-libgsm –enable-libschroedinger –enable-libspeex –enable-libtheora –enable-libvorbis –enable-pthreads –enable-zlib –disable-stripping –disable-vhook –enable-runtime-cpudetect –enable-gpl –enable-postproc –enable-swscale –enable-x11grab –enable-libdc1394 –enable-shared –disable-static
libavutil     49.15. 0 / 49.15. 0
libavcodec    52.20. 1 / 52.20. 1
libavformat   52.31. 0 / 52.31. 0
libavdevice   52. 1. 0 / 52. 1. 0
libavfilter    0. 4. 0 /  0. 4. 0
libswscale     0. 7. 1 /  0. 7. 1
libpostproc   51. 2. 0 / 51. 2. 0
built on Mar  4 2010 12:35:30, gcc: 4.4.3
DE mp3             MPEG audio layer 3
EA    libmp3lame      libmp3lame MP3 (MPEG audio layer 3)
D A    mp3             MP3 (MPEG audio layer 3)
D A    mp3adu          ADU (Application Data Unit) MP3 (MPEG audio layer 3)
D A    mp3on4          MP3onMP4
text2movsub remove_extra noise mov2textsub mp3decomp mp3comp mjpegadump imxdump h264_mp4toannexb dump_extra
noizumi@noizumi-desktop:~/share$

–enable-libmp3lame が有効になっていなくても、コーデックに libmp3lame が使用できるようになるようだ。
試しに mpeg1、mp2の動画ファイルの音声をmp3に変換してみると、

noizumi@noizumi-desktop:~/share$ ffmpeg -i bl25.mpg -vcodec copy -acodec libmp3lame -ab 128k test.mpg

Input #0, mpeg, from ‘bl25.mpg’:
Duration: 00:28:26.29, start: 0.500000, bitrate: 3804 kb/s
Stream #0.0[0x1e0]: Video: mpeg1video, yuv420p, 1280×720 [PAR 1:1 DAR 16:9], 104857 kb/s, 29.97 tbr, 90k tbn, 29.97 tbc
Stream #0.1[0x1c0]: Audio: mp2, 44100 Hz, stereo, s16, 128 kb/s
Output #0, mpeg, to ‘test.mpg’:
Stream #0.0: Video: mpeg1video, yuv420p, 1280×720 [PAR 1:1 DAR 16:9], q=2-31, 104857 kb/s, 90k tbn, 29.97 tbc
Stream #0.1: Audio: libmp3lame, 44100 Hz, stereo, s16, 128 kb/s

無事変換できて、プロパティで確認すると、ちゃんとmp3になっていた。

Xvidエンコードテスト
$ ffmpeg -i bl25.mpg -vcodec libxvid -acodec libmp3lame -ab 128k test.avi

はOK。

libfaac0パッケージを入れてH.264のAACエンコードテスト
$ ffmpeg -i bl25.mpg -vcodec libx264 -vpre hq -acodec libfaac -ab 128k test.mp4

Unknown encoder ‘libfaac’

はダメ。
今流行りのH.264、AACのMP4のファイルを作ろうとすると、–enable-libfaac 付きでコンパイルしないと使えないようだ。

Rythmbox 0.12.8

Ubuntu に入っている Rythmbox 0.12.8 を使ってみた。

以前、F905i に音楽データを転送する為、CDから落とした Windows Media Player のファイル群があったので、それを「ミュージック」のディレクトリへ放り込んだ。

Rythmbox を起動してみると、アルバムとかアーティストが分類されて出てきた。

ジャケットの絵が表示されているので、データ構造はWindows Media Player互換みたいだが、プレイリストは読み込めなかった。

Rythmboxはネットラジオが聞けるので、このページからJ-POP(主にアニメ)のラジオ局を新しく登録してみた。

登録の仕方は、リンクを辿って、ネットラジオのページまで行って、”Listen”とか”Tune in”をクリックして開いたページでstreamが選べるので、それをブラウザの右クリックで、URLをコピーする。

Rythmboxで「新しいインターネット・ラジオ局(R)…」で出てくるダイアログの「インターネット・ラジオ局の URL:」にURLをペースト。

Japan A Radioならこんな感じ。
追加すると、URLがタイトルになっている項目が新しく出来上がる。タイトルを変更するには、その項目を右クリックして、プロパティでタイトルを編集できる。

ジャンルは勝手に入るので、ネットラジオ局からデータを取ってるようだ。
Rythmboxでは曲名も出るので、ブラウザを開かなくても曲名が分かる。

しかし、聞いてても殆ど知らない曲ばかりだが、作業用BGMとしては最適だ。

Ubuntu 10.04でffmpegコンパイル

ffmpegで動画変換をやろうと思ったが、Ubuntu は、ライセンスに厳密なので、Non-free なものは公式には含まれない。

そう言えば、motion でmpegムービーを記録しようとして、できなかった時に

libavcodec-unstripped-52
libavformat-extra-52
libavformat-unstripped-52
libavutil-unstripped-49
libswscale-extra-0
libswscale-unstripped-0

を入れたらできるようになったが、ffmpegで、3GPをmpegに変換するのができない。

そこで、ffmpegをコンパイルしてみた。

◆Caution◆◆Caution◆◆Caution◆◆Caution◆◆Caution◆◆Caution◆◆Caution◆
ここで行う事は、Ubuntuの提供するパッケージ管理機能に重大な影響を与えます。
自分でセキュリティホールの対処、バージョン管理ができない場合は、クラックされたりする危険があります。また、ここに書かれた事を実施した結果、PCが再起不能に陥ったとしても、わしは一切の責任を負いません。
◆Caution◆◆Caution◆◆Caution◆◆Caution◆◆Caution◆◆Caution◆◆Caution◆

まず、ffmpeg野良ビルドする為に、開発系パッケージが必要なので、できるだけSynaptic パッケージ・マネージャで入れられるものを入れる。

libdirac-decoder0
libdirac-dev
libfaac-dev
libgsm1-dev
libmp3lame-dev
libopencore-amrnb-dev
libopencore-amrwb-dev
libspeex-dev
libtheora-dev
libxvidcore-dev
libdc1394-22-dev
libraw1394-dev

libvpxはパッケージに無いので、
http://code.google.com/p/webm/downloads/list から
libvpx-0.9.1.tar.bz2 を取得。

tar xvjf libvpx-0.9.1.tar.bz2
cd libvpx-0.9.1
./configure
make
sudo make install

libnutもパッケージに無く、x264はバージョンが古いと言われるので、

svn co svn://svn.mplayerhq.hu/nut/src/trunk libnut
cd libnut&&make
sudo make install

git clone git://git.videolan.org/x264.git
cd x264/
./configure
make
sudo make install

で、やっとffmpeg で configure ができる。ffmpegのコンパイルの参考サイト(後述)では、patchを当てているけど、マンドクセので当てない 🙂

svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk ffmpeg
cd ffmpeg
./configure –enable-gpl –enable-nonfree –enable-pthreads –disable-debug –disable-ffserver –disable-ffplay –enable-libdirac –enable-libschroedinger –enable-libdc1394 –enable-libfaac –enable-libgsm –enable-libmp3lame –enable-libtheora –enable-libvorbis –enable-libx264 –enable-libxvid –enable-zlib –enable-bzlib –enable-libopenjpeg –enable-libopencore-amrnb –enable-libopencore-amrwb –enable-version3 –enable-libnut –enable-libspeex –enable-libvpx –enable-avfilter –enable-avfilter-lavf
make
sudo make install

ffmpeg は –prefix 指定しないと、 /usr/local/bin にインストールされるが、

noizumi@purplecat:~$ echo $PATH
/home/noizumi/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

と、/usr/local の方が優先されるので、Ubuntuのパッケージと同居は可能。
ちなみに、パッケージのffmpegを削除しようとしたら、zoneminderが道連れにされるので、削除してない。

で、動画変換をやってみると、
ffmpeg -y -i MOL003.3GP -acodec libmp3lame test.mpg

[mpeg1video @ 0xa317670] MPEG1/2 does not support 15/1 fps

15fpsはmpegに変換できないのか。
エラーが赤表示で分かりやすい。

一応、パッケージのffmpegでも同じパラメータでやってみると、
/usr/bin/ffmpeg -y -i MOL003.3GP -acodec libmp3lame test.mpg

[mpeg1video @ 0x8186150]MPEG1/2 does not support 15/1 fps

結果は同じ。
うーむ…。凝ったエンコードしないなら、ffmpegコンパイルしなくても、libavcodec-unstripped-52入れた程度で良さそう。

参考にしたぺいづ
http://ubuntu.futene.net/build/ffmpeg.htm

http://d.hatena.ne.jp/amachang/20080624/1214315801

WordPress 3.0 アップデート

このブログのソフトウエアであるWordPressの管理ページに3.0へのアップデートの案内が出ていたので、アップデート。

前に、WordPress ME 日本語版からアップデートした時は、「ERROR!」の悲しいお知らせが出て終了してしまい、mySQLの残骸からサルベージして復旧したが、写真類はWebディレクトリに格納されていて、削除されてしまっていたので復旧できなかった。

今回は、Webコンテンツのバックアップと、DBのバックアップを取り、管理ページからアップデートを実行したら、あっさり成功した。しかし、まだ日本語化が進んでいないのか、英語表記が増えたな。

そして、せっかくだから、WordPress 3.0のデフォルトのテーマに変えてみた。

mpeg1/2 decoder

Wineで大戦略パーフェクト3.0のオープニングムービーが再生されないので、GPL MPEG-1/2 DirectShow Decoder FilterをWineにぶっこんでみた。

動画再生プログラムで、オープニングのムービーを開くと、再生されるようになったので、WineでのMPEG1再生は問題無いはずなのだが、大戦略パーフェクト3.0を起動すると、オープニングムービーが再生されず、まだDirectX絡みでうまくいってないようだ。

デスクトップはConkyを入れて、こんな感じ

Conkyを見ると、Core i7 740QMは独立してCPUクロックを可変させているようだ。擬似8コアなのに(笑)

ターボブーストは観測できていないが、多分効いているだろう。

Wine 1.2と戯れる

Wineと戯れる。

とりあえず、Ubuntu 10.04で大戦略パーフェクト3.0が動くようになった。

しかし、オープニングムービーはエラー出てダメだとか、リアルファイトがほとんど表示されないとかある。

まあ、遊べない事はない。

後で何設定したか追記しよう。

【2010/6/16 追記:ここから】
大戦略パーフェクト3.0のCDを入れて、デスクトップに表示されるCDを開いてマウント。
$wine /media/DSP3/AutoRun.exe

でインストーラが起動するけど、そこでDirectXのセットアップでインストール。エラー出まくりで、Wineの方にはDLLの設定ができていないので、ツールで設定する。

$wget http://www.kegel.com/wine/winetricks
$sh winetricks

d3dx9、d3dx10、d3dxof、dinput8、directmusic、directplay、quartz にチェックを入れて[OK]を押す。
※directx9などにチェックを入れてはいけない

Wine設定のライブラリタブで、設定が追加されているか確認する。

で、もう一度
$wine /media/DSP3/AutoRun.exe

を実行して、大戦略パーフェクト3.0をインストールで完了。

【2010/6/16 追記:ここまで】

COREGA CG-WLBARG退役

COREGA CG-WLBARGという無線LANルータを使用していたが、無線LAN機能をONにしていると、ハングアップしたり、DNSでIPアドレスが逆順になるという奇妙な現象が出てきた。

まあ、W-ZERO3を買った時、無線LANを使用して暫く接続したらハングアップしていたので、思えば灼熱地獄の部屋での稼動で、この時から壊れていたのかもしれない。

W-ZERO3を無線LANに接続する為に、BUFFALOのWHR-AM54G54をCG-WLBARGにぶら下げて、2段ルータにしてたので、今回はCG-WLBARGを退役させ、WHR-AM54G54をメインルータにした。

こいつはどれくらいもつかねえ 🙂

compiz fusion

新しく買ったDELL studio 1558のグラフィックボードはMobility RADEON HD 5470なので、compiz fusionのデスクトップキューブを使ってみた。

Ubuntu 10.04LTSだと、ctrl+alt+button1 でデスクトップをぐるぐる回せる。

スカイドームに画像指定しておくと、回転するキューブの背景がその画像になる。

わしのは、RX-7をスカイドームに指定してみたが、回転中のデスクトップの透明度を上げていないので、スカイドームの画像が透けて見えてないな。

驚くべき事に、回転中もブラウザで再生している動画など、すべて動いて見える。

グラフィック処理をGPUに任せると、ここまでできるのかと驚かされた。

Playstationの開発話でCPU+GPUで、GPUの部分に力を入れたって聞いたけど、納得だなあ。

DELL studio 1558にUbuntu 10.04LTSを入れた

Ubuntu 9.04の入ったUSBのディスクをStudio 1558に繋いだ時は画面出しに苦労したが、Ubuntu 10.04 LTSのCDからのインストールは、画面表示が出ないなんて事は無く、あっさりインストールできた。

しかし、Windows 7を起動した後、再起動すると、

no module name found Aborted Press any key to exit

などと表示されて起動不能に。

一応、嫌な予感がしてたので、
dd if=/dev/sda of=mbr.img bs=512 count=1

などとやって、Master Boot Recordのバックアップは取っておいたので、USB起動のUbuntuでMBRを復旧した。

再度インストールするも、やはり、Windows 7を起動すると、起動不能になる。
Google先生にご教示を願ったところ、全く同じ症状が…

ディスクのsignatureをGRUB2が破壊しているので、Windows 7が直してるけど、それでGRUB2が破壊されるので起動不能になるのか。

解決策は、前のバージョンのGRUBを入れてMBRに書くのがいいみたいだが、めんどくせえなあ…。

選択起動式にする場合は、GRUB2をMBRに入れずに、USBメモリとかに入れて、それでUbuntu起動した方がいいかもしれんね。わしの場合は、当面、USB外付けディスクのGRUBで起動するか。

https://forums.ubuntulinux.jp/viewtopic.php?id=8001

Dell studio 1558+Ubuntu 9.04でDVD再生いけた

DELLのサイトでは、Panasonic BD-RE UJ235Aのアップデートは無かった。

Windows 7のメディアセンターでDVDを再生してから、Ubuntu 9.04のVLCで再生してみると…

Windows 環境で一旦再生しないとLinux環境で再生できないってどんな地雷や?