SVX日記
2013-10-22(Tue) 萌ゆ娘 率き連れ征くは 燃ゆ水面
というのも、先月に「艦これ」を始めてからというもの、なにしろオモシロすぎて「艦これ」が生活の一部になってしまい、なにも手につかなくなってしまったからである。さすがに仕事には影響させていないが、朝から「演習」を5戦ともキッチリこなすという「朝練」を含め、休日までベッタリ。何かをやるにも「遠征」「入渠」の待ち時間だったり「出撃」の戦闘中だったり……「艦これ」を楽しむ、というより「艦これ」の隙間で生活するような状況。
意外だったのは「艦船」がこれほどの魅力を持っていたことだ。個々の艦に、エピソードがあり、キャラが立っている。概念が歴史の武将に似ている。軍用機や戦車にはない個性がある。一時期、国家予算の半分が艦隊維持費だったとか……そら、かかるわな。
せめて「艦隊」を優良な「コンテンツ」と見て、いまこの時に国民が「楽しむ」ことで少しでも回収することは非常に有意義だと思う。当時の提督がどう思うか、また、良し悪しはともかく「戦争」にエンターティメントの格好のネタという側面があることは事実だし。
2013-10-23(Wed) チープなDTMアプリ・改二
ふと思い立って、三度、以前に自作したDTMアプリを引っ張り出してきた。2年半ぶりくらいだ。当時の環境はFedora12だったようだが、現在はMint15だ。Rubyも1.8から1.9になっている。そして……
$ padsp -d ./melod
utils/padsp.c: dsp_open()
utils/padsp.c: fd_info_new()
utils/padsp.c: dsp_open() succeeded, fd=5
utils/padsp.c: sample spec: u8 1ch 8000Hz
utils/padsp.c: fixated metrics to 12 fragments, 1024 bytes each.
7fff0009
utils/padsp.c: freeing fd info (fd=5)
utils/padsp.c: Draining.
./melod:24:in `ioctl': integer 3221508106 too big to convert to `int' (RangeError)
from ./melod:24:in `block in <main>'
from ./melod:17:in `open'
from ./melod:17:in `<main>'
まず、前回とエラーの内容が変わっている。発生箇所は、前回と同じく、サウンドデバイスへのioctlではあるが、サウンドデバイス側でなく、Ruby側でエラーこいている感じ。どうも、ioctlへ渡す引数が32bit intとして定義されているのが原因っぽい。
渡したいのは、0xc004500a(SNDCTL_DSP_SETFRAGMENT)等なので、unsignedでないと通りえない。前回は「勝手に64bit拡張して渡してしまうRuby」側の問題だと思いつつ、padsp側にパッチを当てて回避したが、これではRuby側に修正を入れるほかない……悪化しとるがな。
< p dsp.ioctl(0xc004500a, x) # SNDCTL_DSP_SETFRAGMENT
---
> p dsp.ioctl(0xc004500a - 0x100000000, x) # SNDCTL_DSP_SETFRAGMENT
$ padsp -d ./melod
utils/padsp.c: dsp_open()
utils/padsp.c: fd_info_new()
utils/padsp.c: dsp_open() succeeded, fd=5
7fff0009
utils/padsp.c: unknowned ioctl 0xffffffffc004500a
utils/padsp.c: freeing fd info (fd=5)
utils/padsp.c: Draining.
./melod:24:in `ioctl': Invalid argument - /dev/dsp (Errno::EINVAL)
from ./melod:24:in `block in <main>'
from ./melod:17:in `open'
from ./melod:17:in `<main>'
おぉ、前回と同じ結果になった。ゴマかして通すことには成功したといえよう。あとは前回と同じくpadspにパッチを当てれば回避できるだろう……が、Ubuntu系の修正ビルドはやったことがない。やってみる。
~ # cd /etc/apt/sources.list.d
sources.list.d # cp official-package-repositories.list official-package-repositories.sources.list
sources.list.d # vi official-package-repositories.sources.list
sources.list.d # apt-get update
sources.list.d # cd
~ # aptitude install dpkg-dev
~ # aptitude install devscripts
~ # mkdir build
~ # cd build
build # apt-get source pulseaudio-utils
build # cd pulseaudio-3.0/src/utils
utils # vi padsp.c
utils # cd ../..
pulseaudio-3.0 # dpkg-source --commit
Enter the desired patch name: 9999-padsp4ruby.patch
pulseaudio-3.0 # dch -i
* Add patch to padsp for ruby.
pulseaudio-3.0 # debuild -uc -us
pulseaudio-3.0 # debuild -uc -us
pulseaudio-3.0 # cd ..
build # dpkg -i pulseaudio-utils_3.0-0ubuntu7_amd64.deb
build # dpkg -i libpulsedsp_3.0-0ubuntu7_amd64.deb
パッケージを置いておく。しかし、Ruby1.9へのリライトもだいぶ慣れてきたな。
2013-10-28(Mon) 叛逆の★マギカ
むー、前半一時間は単なるデジャブ。必要なファンサービスなのだろうが、個人的には完全に余剰な印象。で、軽くガンダムを超えてるっぽいバトルシーンを挟んで、後半は……な、なるほど。蛇足感は完全には拭えないものの、いいとこを突いてくるなぁ。
2013-10-29(Tue) ダイエット必勝法
昨晩、映画を観た際、左側にも右側にもおデブに座られたせいで、どんどん心に穢れが貯めこまれていき、もう少しで魔女化するところだった。右側のデブ男はイチイチ仕草がうっとおしいし、左側のデブ女はずっと食い続けているし……オメもう食うなッ!! ……と、もう少しで叫ぶところだった。
減量を始めてしばらくすると、9月初旬に受けた、会社の健康診断の結果が到着した。総コレステロールが220と1オーバ、悪玉コレステロールが141と2オーバと、微妙ながら公式にデブ認定。どうも、減量を開始するには絶好のタイミングだったらしい。
やはり、いずれかの値が上下限値に近づいてきた時点で、その意味について、よく理解することが重要だ。以前、血圧で似たようなことがあった。原因は即席ラーメンの食い過ぎによる、塩分の摂りすぎ。食う頻度を下げたらすぐに戻った。一方で、コレステロール値の上昇の主な原因は油や卵だが、そもそも食い過ぎを改めればすぐ下がるだろう。