部屋のファイルサーバはIntel D945GCLF2というマザーボードです。ここにDebian GNU/Linux 5.0(Lenny) を入れ、カーネルだけLinux 2.6.28に入れ替えて使っています。
しかしこのボード、買った当初からどうにもネットワークが不安定で、通信中に突然リンクダウンしたり、NETDEV WATCHDOG: transmit timed outというOopsが出てNICごと撃沈します。
あまりに調子が悪くていい加減イライラしてきたので、解決に向けて調べることにしました。
調べてみるとD945GCLF2のNICはRealtek RTL8168BというPCI Express接続(※)のギガビットイーサネットインタフェースです。
それに対して今使っているドライバは、Realtek RTL816「9」SというPCI接続のギガビットイーサネットのドライバです。つまり不調の原因はドライバが間違っていたせいだったのです。しかし間違ったドライバなのに中途半端に動いてしまうのでタチが悪いです。
なんで動いちゃうの?という疑問はさておき、正しいドライバ(RTL8111/8168シリーズ用のドライバ)はRealtekのサイトのこの辺からダウンロードできます。
トップページからの行き方は [上のメニューDownloads] - [左のメニューCommunications Network ICs] - [Network Interface Controllers] - [10/100/1000M Gigabit Ethernet] - [PCI Express] - [Software] - [LINUX driver for kernel 2.6.x and 2.4.x (Support x86 and x64) 8.012.00] です。長い。
ビルドの仕方やインストールの仕方はアーカイブを展開したときにできるreadmeファイルに詳しく書いてあります。下記に一例を示します。
# rmmod r8169 # cd /usr/src # tar xjvf r8168-8.012.00.tar.bz2 # make clean make -C src/ clean make[1]: Entering directory `/usr/src/r8168-8.012.00/src' rm -rf *.o *.ko *~ core* .dep* .*.d .*.cmd *.mod.c *.a *.s .*.flags .tmp_versions Module.symvers Modules.symvers Module.markers *.order make[1]: Leaving directory `/usr/src/r8168-8.012.00/src' # make modules make -C src/ modules make[1]: Entering directory `/usr/src/r8168-8.012.00/src' make -C /lib/modules/2.6.28-r8168/build SUBDIRS=/usr/src/r8168-8.012.00/src modules make[2]: Entering directory `/usr/src/linux-2.6.28-r8168' CC [M] /usr/src/r8168-8.012.00/src/r8168_n.o /usr/src/r8168-8.012.00/src/r8168_n.c:5076: warning: 'rtl8168_reinit_task' defined but not used CC [M] /usr/src/r8168-8.012.00/src/r8168_asf.o LD [M] /usr/src/r8168-8.012.00/src/r8168.o Building modules, stage 2. MODPOST 1 modules CC /usr/src/r8168-8.012.00/src/r8168.mod.o LD [M] /usr/src/r8168-8.012.00/src/r8168.ko make[2]: Leaving directory `/usr/src/linux-2.6.28-r8168' strip --strip-debug r8168.ko make[1]: Leaving directory `/usr/src/r8168-8.012.00/src' # make install make -C src/ install make[1]: Entering directory `/usr/src/r8168-8.012.00/src' install -m 744 -c r8168.ko /lib/modules/2.6.28-r8168/kernel/drivers/net/ make[1]: Leaving directory `/usr/src/r8168-8.012.00/src' # depmod -a # modprobe r8168
手順はRTL8169用のドライバを削除してから、RTL8111/8168用のドライバをインストールしているだけです。
(※)個人的にはギガビットイーサをPCI接続にして、PCI Expressを拡張スロットに出して欲しかったなあ…と思う。
フルセットとまでは行きませんが、メジャーどころのコーデックライブラリを追加したffmpegのビルドの手順です。
具体的には追加ライブラリは以下の通り。
ビルド作業は以下の通りです。事前準備としてaptitudeでyasmとnasmを追加していますが、環境によってさらに追加すべきパッケージが出てくると思います。
どちらかというとビルド作業よりライブラリを揃える作業が面倒でしたので、ライブラリ置き場のURLも併記(※)してあります。ご活用ください。
$ aptitude install yasm nasm $ git clone git://git.videolan.org/x264.git $ cd x264 $ ./configure --prefix=/home/username/usr/ \ --enable-shared \ --enable-pic \ --enable-pthread \ --enable-mp4-output $ make $ make install $ wget http://downloads.xvid.org/downloads/xvidcore-1.2.1.tar.gz $ tar xzvf xvidcore-1.2.1.tar.gz $ cd xvidcore/build/generic/ $ ./configure --prefix=/home/username/usr/ \ --enable-shared $ make $ make install $ wget http://downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz $ tar xzvf libogg-1.1.3.tar.gz $ cd libogg-1.1.3 $ ./configure --prefix=/home/username/usr/ \ --enable-shared $ make $ make install $ wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.2.0.tar.gz $ tar xzvf libvorbis-1.2.0.tar.gz $ cd libvorbis-1.2.0 $ ./configure --prefix=/home/username/usr/ \ --enable-shared \ --with-ogg=/home/username/usr \ --with-vorbis=/home/username/usr $ make $ make install $ wget http://downloads.xiph.org/releases/theora/libtheora-1.0.tar.bz2 $ tar xjvf libtheora-1.0.tar.bz2 $ cd libtheora-1.0 $ ./configure --prefix=/home/username/usr/ \ --enable-shared $ make $ make install $ wget http://ftp.penguin.cz/pub/users/utx/amr/amrnb-7.0.0.2.tar.bz2 $ tar xjvf amrnb-7.0.0.2.tar.bz2 $ cd amrnb-7.0.0.2 $ ./configure --prefix=/home/username/usr/ $ make install $ wget http://ftp.penguin.cz/pub/users/utx/amr/amrwb-7.0.0.3.tar.bz2 $ tar xjvf amrwb-7.0.0.3.tar.bz2 $ cd amrwb-7.0.0.3 $ ./configure --prefix=/home/username/usr/ $ make install $ wget http://nchc.dl.sourceforge.net/sourceforge/lame/lame-398-2.tar.gz $ tar xzvf lame-398-2.tar.gz $ cd lame-398-2 $ ./configure --prefix=/home/username/usr/ $ make install $ wget http://nchc.dl.sourceforge.net/sourceforge/faac/faac-1.28.tar.gz $ tar xzvf faac-1.28.tar.gz $ cd faac-1.28 $ ./bootstrap $ ./configure --prefix=/home/username/usr/ \ --enable-shared $ make install $ wget http://nchc.dl.sourceforge.net/sourceforge/faac/faad2-2.7.tar.gz $ tar xzvf faad2-2.7.tar.gz $ cd faad2-2.7 $ ./configure --prefix=/home/username/usr/ \ --enable-shared $ make install $ cd ffmpeg $ ./configure --prefix=/home/katsuhiro/usr/ \ --enable-nonfree --enable-gpl \ --enable-pthreads --enable-shared \ --extra-cflags="-I/home/username/usr/include" \ --extra-libs="-L/home/username/usr/lib" \ --enable-libx264 --enable-libxvid \ --enable-libamr-nb --enable-libamr-wb \ --enable-libtheora --enable-libvorbis \ --enable-libmp3lame \ --enable-libfaac --enable-libfaad $ ffmpeg FFmpeg version git-74371d6, Copyright (c) 2000-2009 Fabrice Bellard, et al. configuration: --prefix=/home/username/usr/ --enable-nonfree --enable-gpl --enable-pthreads --enable-shared --extra-cflags=-I/home/username/usr/include --extra-libs=-L/home/username/usr/lib --enable-libx264 --enable-libxvid --enable-libamr-nb --enable-libamr-wb --enable-libtheora --enable-libvorbis --enable-libmp3lame --enable-libfaac --enable-libfaad libavutil 50. 3. 0 / 50. 3. 0 libavcodec 52.29. 0 / 52.29. 0 libavformat 52.33. 0 / 52.33. 0 libavdevice 52. 2. 0 / 52. 2. 0 libswscale 0. 7. 1 / 0. 7. 1 built on May 22 2009 21:38:40, gcc: 4.3.2 At least one output file must be specified
(※)ライブラリのURLはそのうち移動されるかもしれません。あくまでも現時点での情報ということでよろしくお願いいたします。
いつものようにPCを起動して、メールを見ようと思ってThunderbirdを起動したら、メールの振り分けフィルタが「〜〜がない」とエラーを出して怒っています。
何事かと思って確認すると、メインのプロバイダ(WAKWAK)のメールボックスが綺麗さっぱり消えていました。んん?んんんん??
メールボックスには今まで受け取ったメールが全て入っていたのですが、全て跡形もなく消し飛びました。気のせいかな?メーラーの画面が広く感じるよ、アハーハ〜。
Thunderbirdよ、俺に一体何の恨みが…ほんと勘弁してください…。
第一弾のDVDをTSUTAYAに送り返したら、即スチュアート・リトル2とファンタスティック・フォーが送られてきました。やたら早い。
スチュアート・リトル2は子供向けってほどではないにせよ、アラサーのおっさんが見るもんではないです。見ているこっちが恥ずかしくなるというか…そんな映画。この手の映画を見ていると背中が痒くなるよ。
ファンタスティック・フォーはもっと切った張ったの世界かと思っていたのですが、恋愛話がかなりの部分を占めていました。決して映画自体は悪くないです。以前見たX-MENのような展開を(私が勝手に)想像していたせいで、アクションがちょっと物足りなかったな。
そんでもって予約リストの順番を忘れてしまったので、次に何が来るかわからない。確認するのも野暮だ、来てのお楽しみということにしましょう。
昨日に引き続き、DVD素材をいじろうと思います。今日は音声です。
DVDの音声ですが、圧縮方式はDolby AC3またはDolby DTS、サンプリング周波数は48kHz、ビットレートは160kbps程度(2.0chいわゆるステレオの場合)です。
これを他の形式に変換してさらに圧縮することはできますが、元々が2.0chで160kbpsくらい、5.1chでも640kbpsくらいですので、圧縮する意味があまりないです。
というわけで音声はそのまま使うことにして、次のステップに行きます。
昨日は私の趣味で映像をTS形式にしました。ここに音声をマルチプレクス(多重化)して、音声付きの映像を作ります。
ffmpeg.exe -i c:\4mbps.ts -i audio.ac3 -acodec copy -vcodec copy c:\video_audio.ts
私の理解が足りないのかffmpegでは映像1ストリーム+音声1ストリームしか多重化できませんでした。もし音声を2ストリーム以上多重化したい場合は、別のツールを使った方が良いと思います。
今回使ったのはtsMuxeRです。映像、音声1、音声2をInput filesと書いてあるリストボックスに放り込みます。
Tracksから映像、音声1、音声2の設定をします。映像の方の設定はデフォルトで大丈夫なはずですが、音声は設定が必要です。特に音声のディレイを正確に指定しないと、未来の音が聞こえたり、音が遅れて腹話術みたいになります。
ちなみに昨日紹介した方法で作成したMPEG4 AVCの映像ストリームは、映像の設定をデフォルトのまま多重化すると再生時の画がおかしくなることがあります。
もし映像ストリームのみを再生すると正常なのに、多重化したストリームを再生すると画が崩壊している場合は、「Add picture timing info」と「Continually insert SPS/PPS」のチェックを外して多重化してみてください。
せっかくDVDという長めの映像コンテンツが手元にあるので、ffmpegで変換してどのくらい小さくできるか実験してみました。
DVDの映像は解像度が720x480で圧縮方式はMPEG2です。ビットレートは8Mbps前後です。
さてffmpegは多数のエンコーダを持っていますが、今回使うのはlibx264です。x264はフリーのMPEG4 AVC(H.264)のエンコーダで、ffmpegでエンコードできる形式の中で最も画質対ビットレートのパフォーマンスが良いと予想されます。
余談ですがx264はエンコードの速度が売りらしいです。でも、うちのデスクトップだと20fpsしか出ません。買った当初はかなり速い部類に入っていたマシンなのに、時代の流れとは悲しいもんです。
下記のコマンドでビットレートを指定した変換をかけました。
ffmpeg.exe -i video.m2v -an -vcodec libx264 -b 4000000 c:\4mbps.ts
MPEG2-TS形式にしているのは単なる趣味です。フリーのコンテナが良いならMatroskaやOggを、Windows向けならAVIやASFにするのが普通ですね、たぶん。
ま、コンテナの話はさておき、まずはビットレート1Mbpsで圧縮しました。確認してみると、一見良さそうですがシーンチェンジやキラキラした場面で画が激しく崩壊しました。1Mbpsはかなり厳しいようです。
とはいえ、WMV2やMPEG-2で1Mbpsなんて全くもって見られたもんではないので、x264の頑張りは素晴らしいです。
次に4Mbpsで圧縮してみると、画は綺麗でサイズも半分になります。それでも十分に素敵だと思いますが、x264ならもっといけるはずだ…!
というわけで、ビットレート2Mbps〜3Mbpsが安心ラインかと思います。それでも画が崩壊するかも?という恐怖は拭いきれませんが、サイズが減る方が優先です。より良い画質を求めるのであれば、2-passエンコーディングをやってみると良いかも。
昨日の夜ポストを見たらTSUTAYA DISCASからDVDが届いていたので、ついつい遅くまで見てしまいました。眠いわー。
昨日買ったマックの12,000円商品券ですが、なぜ20,000円「相当」という微妙な表現がされているのでしょう?何となく引っかかる表現なので、調べてみました。
まず調べてびっくりしたのが、マクドナルドは公式サイトに値段を載せていません。理由は同じ商品でも販売地域により値段が違うから、みたいです。どちらかというと載せないではなく、載せられないのですね。
じゃあ具体的にいくら違うか?これも調べてびっくりね。ビッグマックを例に取ると、最高値(東京都、大阪府など)は320円、最安値(島根県、鳥取県など)は290円だとか。その差約1割です(※)。
すると気になるのは「最も得な組み合わせ」と「最も損な組み合わせ」ですよね。計算してみましょう。
まずおさらいとして、クーポンの中身は下記の通り。
最も得な組み合わせは、価格最高の地域である東京都や大阪府で以下の組み合わせで頼むことです。
商品券 | 注文するもの | 単価 | 枚数 | 価格 |
---|---|---|---|---|
セットA | クォーターパウンダー・チーズセット | 680 | 10 | 6800 |
セットB | ダブルチーズバーガーorチキンフィレオセット | 620 | 10 | 6200 |
セットC | チーズバーガーセット | 490 | 10 | 4900 |
デザート | ナゲット | 260 | 3 | 780 |
チキン | シャカシャカチキン | 100 | 1 | 100 |
コーヒー | プレミアムローストコーヒーS | 120 | 30 | 3600 |
ドリンク | ドリンクS x 2 | 200 | 4 | 800 |
合計 | 23180 |
頑張って高い物ばかり選べば、額面として謳われている20,000円を15%程度上回ることも可能です。…とはいっても、普段から同じ商品を高く売りつけられている時点で、既に損している気がしないでもない。
逆に最も損な組み合わせは、価格最低の地域である鳥取県や島根県で以下の組み合わせで頼むことです。
商品券 | 注文するもの | 単価 | 枚数 | 価格 |
---|---|---|---|---|
セットA | ビッグマックorえびフィレオセット | 610 | 10 | 6100 |
セットB | てりやきマックorチキンフィレオセット | 580 | 10 | 5800 |
セットC | ハッピーセット(ハンバーガー) | 420 | 10 | 4200 |
デザート | サンデー | 150 | 3 | 450 |
チキン | シャカシャカチキン | 100 | 1 | 100 |
コーヒー | プレミアムローストコーヒーS | 120 | 30 | 3600 |
ドリンク | ドリンクS x 2 | 200 | 4 | 800 |
合計 | 21050 |
以上のように最安の組み合わせでも額面として謳われている20,000円を上回るようにできています。
正直なところ、調べる前はもっと差があるかなと思っていましたが、さほど差がなくてあまり面白くない結果となりました…。
(※)詳しくはマクドナルドデータベース メニュー・価格一覧をご覧ください。
Sena氏と金を出し合って、マックの「景気をつかもう」商品券を買いました。20,000円相当の商品券が12,000円で買える、というキャンペーンです。
中身は以下の通り。
額面にして約1.6倍というお得な商品券に見えますが、定価換算なので20,000円相当といってもさほど量がありません。しかもマックって年中クーポンがあって、何かしらのセットが安く買えるので、商品券でむちゃくちゃ得したか?というと正直、微妙です。
他にも、商品券の期限が短い(2009年11月14日まで)のに、コーヒー券30枚なんてどうやって使い切るの?
セットにドリンクM付いてるのに、ドリンクS 2杯券4枚っていつ使うの?
など、疑問が尽きません。全部セットA/B/Cにしてくれればどんなに嬉しかったか。
あと困ったことは、二人で買ったのに奇数枚の商品券がいくつもあって、うまく分けられなかったこと。セットCだけ9枚だったり、シャカシャカチキンが1枚だけ入っていたりね。
買ったときは嬉しいというか、得した気分だったけど、改めて書いてみるとあまり得した気がしないな、うーむ…。
レンタルCD/DVDショップで有名なTSUTAYAがオンラインでのDVDレンタルを始めました。TSUTAYA DISCAS というレンタルサービスです。ネットで注文すると、家に郵便(宅配便もある?)で届けてくれて、返すときも郵便で送るだけのお手軽レンタルサービスです今なら無料で借りられるらしいので、早速、登録しました。
契約条項を斜め読みしてみると、無料なのは「今月だけ」で来月からは勝手に有料コースに変更されるそうです。そういえばユーザー登録の時に、住所や名前の他にクレジットカードの番号まで聞かれたっけ…。あれは来月からの料金徴収のためだったんですね。
さて、TSUTAYA DISCASでDVDを借りるときの基本的な流れは、
予約リストに登録、2枚借りる、見る、2枚返す、2枚借りる、見る、2枚返す…(リストが空になるまで続く)
です。もう少し詳しく書くと、以下のようになります。
ちょっと仕組みが難しい気がします。単に借りるまでの手順が多いだけか、予約リストという概念が難しいだけなのか…どうもしっくりこない。
ポイントは、手元にくるのは2枚だけ、次を見たければ手元の2枚を返さなければならない、の2点です。一度に2枚しか来ないのは借りパク対策でしょうか。予約リストの上位から送ってくる、ことも知っていると便利です。
とりあえず上限の8枚まで予約リストを埋めました。CDなら幾度となく借りたけど、DVDを借りるのは初めてかも…。
下記の参考記事にもあるように、Virtual Box 2.1からOpenGLへの対応が始まっています。個人的にはOpenGLよりDirectXに対応して欲しいところですが…それはさておき。
参考記事: OpenGLやIntel Core i7に対応した「Sun xVM VirtualBox」v2.1が公開
OpenGLへの対応といってもOpenGLのフル機能をサポートしているわけではありません。というのもOpenGLは過去何度も仕様が拡張(※)されており、様々なバージョンが存在するうえに、各GPUメーカーが独自拡張を施しているためです。
というわけでVirtualBoxはどの機能に対応しているのか、OpenGL Extensions Viewer を使って調べてみました。
ホストOS(Windows XP)でOpenGL Extensions Viewerを実行した結果
まず、ホストOS(Windows XP)でOpenGL Extensions Viewerを実行した結果です。ホストマシンではNVIDIA GeForce6600を使っています。
結果はOpenGL 2.1までフル対応です。Rendering Testを走らせてみると、きちんと2.1のテストまで完走します。
VirtualBox内のゲストOS(Windows 2000)でOpenGL Extensions Viewerを実行した結果
次に、VirtualBox内のゲストOS(Windows 2000)でOpenGL Extensions Viewerを実行した結果です。
結果はOpenGL 1.5までフル対応です。しかしRendering Testを走らせようとすると、OpenGL Extensions Viewerがエラーを吐いてしまい、テストができません。しかも不思議なことに、OpenGL Extensions Viewerを起動させるとVirtualBoxごと死んでしまう場合があります。よくわからんな…。OSがWindows 2000だからかなあ…?
VirtualBoxの名誉のために書いておくと、巷にあるOpenGLのアプリケーションは正常に実行できます。OpenGL Extensions Viewerが何か変わったことをしているだけかもしれません。
(※)OpenGLの公式サイトによると現時点での最新版はOpenGL 3.1 のようです。
大下さんちでシュークリームを作って食べました。
今回はカスタードクリームが若干粉っぽかったけど、シュー皮がうまくいってました。おいしかったです。
シュークリームというと難しそうなイメージがあったのですが、作り始めてからできあがるまで、2時間かからなかったです。材料もクッキーと大差ない(レシピによっては特殊な材料が入っているかも)ので、揃えるのも簡単です。
昼から作って3時のおやつに間に合う、お手軽おやつです。みなさんもいかが?
< | 2009 | > | ||||
<< | < | 05 | > | >> | ||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
- | - | - | - | - | 1 | 2 |
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 | - | - | - | - | - | - |
合計:
本日: