classics.

2012/07/02 Monflickr

続うるう秒トラップ

社会人の皆さんは日曜日ちゃんと休んで月曜に出勤してから24時間以上遅れて慌てて対処とかしてた傾向があったようで、14時間遅れで気付いたのにすごい恥ずかしがっていた自分は何だったのだと思った。

2012/07/01 Sunflickr

うるう秒トラップに引っかかっていたのに14時間後に気づく

load-day

ちょっと音楽再生が詰まることがあるなと思ってはいたけれど、ジョークでうるう秒やばいみたいな感じの事言ってるのだと思っていたらガチだった。起きたのが9:05くらいだったのも敗因でしょうか。具体的には、Ruby(1.8.6 と 1.9.1)の常駐スクリプトのCPU負荷が跳ね上がってました。全くロジックを理解していないけれど、以下の通りにやったら治まった。いつの日かちゃんと理解したい。

2012/06/27 Wedflickr

JavaScript デバッグツール で $x で XPath セレクタ使えるのがいつの間にかメジャーになっていた

最近 Web 開発とかクロスブラウザ対応みたいなことから遠のいているので今更感ありそうだけれど、AutoPagerize の siteinfo を気まぐれに書いてたら $x で XPath セレクタ使えるのが定番化してたのを今知った。調べたのは Windows 7 のみ。

  • Firefox 13.01
    • Webコンソール ○
    • Firebug ○
  • Opera 12.00
    • Dragonfly ○
  • Google Chrom 19
    • デベロッパーツール ○
  • Internet Explorer 9
    • 開発者ツール ×

対応状況は上のような感じだった。Safari はめんどいので入れてないけど多分使えるんじゃないですかね。調べてみたものの、XPath セレクタは Web 開発にそんな大事というわけでもない(どうなんでしょう)と思うし、色々なブラウザのデバッグツールで使えるといってもその利点も特に大きくなさそうなので単純な好奇心で少し調べて終わりなだけだった。

2012/06/21 Thuflickr

最近の ID3 タグ

コマンドラインベースの ID3 管理には書き込みは Python + eyeD3、読み取りは eyeD3 コマンド + (Ruby + taglib2, id3lib) でやってて(cover image 周りが面倒)、Windows だと STEP_M を使っている。

そんなわけで、いまさらだけどマルチネなんかの zip 解凍した後にリネームするのにスクリプト書いた。

https://gist.github.com/2962683

2012/06/11 Monflickr

インターホン作った

http://oq.la/interphone/

mplayer だとちょっと重いっぽかったので mpg123 でインターホン.mp3 が自宅サーバーで再生されます。notify my android で通知するのもできるけどそれは有用かわからないので保留中。

2012/05/29 Tueflickr

Google Play Music に Labs 機能ができていた

http://googlesystem.blogspot.jp/2012/04/google-music-labs.html

基本的に再生は Android アプリから行うので最近まで気づかなかった。今のところ

  • 再生に Flash を使う代わりに HTML5 の audio API を使う
  • 再生曲のデスクトップ通知
  • レーティングを5つ星基準に

の3つがある。結局のところAndroid アプリだとレーティングの基準を変えても thumb up/down しかないので互換性中途半端だけれど、実験的機能なので仕方ないか。とりあえず、Last.fm との連携機能の登場を期待します。

2012/05/24 Thuflickr

Google Music Manager を Ubuntu サーバーに入れる

音楽ファイルはサーバーにあるし、できるっぽいのを知ったのでやってみた。

http://www.liberiangeek.net/2012/03/add-google-music-manager-repository-in-ubuntu-11-10-oneiric-ocelot/
上のようにして google-musicmanager コマンドを入れて、ついでに xvfb libqtgui4 libqt4-network libvorbisfile3 xdg-utils あたりも入れる。あとは下のようなコマンドを叩く感じで。
http://ubuntuforums.org/showthread.php?t=1923764
http://www.aeonity.com/frost/running-google-music-beta-headless-linux

ログファイルがなくてスキャンが終わっているのか分からず、まだちゃんとアップロードできてるのか確認できていないので(google-musicmanager プロセスは起動できているよう)、安定して動くようだったら Windows も Mac も Google Music Manager を捨てる。man でも見れないし、コマンドのドキュメントも見つからないので色々わかっていないのでちょっと困る。オープンソースっぽいリンクもあったけれどリンク先が死んでソースゲットできない http://music.google.com/about/thirdparty.html

追記

ログは
~/.config/google-musicmanager/
以下にあった。けどあまり吐かれていない。ログレベルとかないのかな。
と思ったらあった。
~/.config/google-musicmanager/Peer.db
に設定が書き込まれているので sqlite3 で編集。取り急ぎログレベルだけ。

$ sqlite3 ~/.config/google-musicmanager/Peer.db
sqlite> .tables
CONFIG
sqlite> PRAGMA TABLE_INFO(CONFIG);
0|Name|text|1||1
1|Value|text|1||0
sqlite> select Name, Value from CONFIG;
TraceLevel|INFO
PauseDownloadTimeout|0
Username|YOURGMAILACCOUNT@gmail.com
MusicFilesSharing|0
PlaylistsSharing|0
SharedMusicFolders|/path/to/mp3
AppVersion|1.0.35.3998
ComputerPrettyName|SERVER_NAME
AccountAutologon|2
EnableCrashReporting|0
sqlite> update CONFIG SET Value="DEBUG" where Name="TraceLevel";
sqlite> select Name, Value from CONFIG;
TraceLevel|DEBUG
PauseDownloadTimeout|0
Username|YOURGMAILACCOUNT@gmail.com
MusicFilesSharing|0
PlaylistsSharing|0
SharedMusicFolders|/path/to/mp3
AppVersion|1.0.35.3998
ComputerPrettyName|SERVER_NAME
AccountAutologon|2
EnableCrashReporting|0
sqlite> .exit

MusicFilesSharing|0 が怪しい気がするけどどうなんですかね。

更に追記

いつまでもアップロード始まらないので色々調べた末、VNCで接続してみたら、パスワード入力待ちで止まっていたのパスワード入れてSubmitしたらスキャンとか始まって、ログが流れた。多分コマンドライン引数にパスワード渡すの頭おかしいだろうということに気付いてパスワードの引数廃止したんじゃないかと適当な予想。
スキャン途中だけどこんな感じになった。アカウント関係とか mp3 ディレクトリ関係のパラメータは変更したい場合以外いらない感じなんですかね。

sqlite> select Name, Value from CONFIG;
MusicFilesSharing|0
PlaylistsSharing|0
SharedMusicFolders|/path/to/mp3
AppVersion|1.0.35.3998
ComputerPrettyName|SERVER_NAME
EnableCrashReporting|0
Username|YOURGMAILACCOUNT@gmail.com
AccountAutologon|2
CurrentAUTH|{ハッシュっぽいの}
CurrentSID|{ハッシュっぽいの}
CurrentLSID|{ハッシュっぽいの}
ARPAddress|{IPv6っぽいの}
TraceLevel|DEBUG
FirstScanComplete|0
CurrentBatchRevision|2
MusicEstimationStatus|19
CommunicationProblems|0
PauseDownloadTimeout|0
MusicFilesUploaded|1756
MusicFilesWithErrors|0

2012/05/08 Tueflickr

Android 携帯を Bluetooth Web カメラにする WO Webcam

以前 W-ZERO3 を無線 Web カメラにするやつについて書いたりしましたが。以前 Mac メインにしてた頃に見つけたけれど Windows でしか使えなかったので諦め、忘れていたアプリを思い出したので使ってみてレビュー。

詳細は上のリンクを見れば分かるけれど一応書いておくと、Android 端末搭載のカメラのキャプチャーした映像をBluetooth、Wi-Fi、USB(+シリアル?)のいずれかによって接続された Windows マシンから Web カメラデバイスとして扱うことのできるアプリケーションです。160円程度だったので有料版(画質選択ができる+インカメラも利用できる)を購入した。

導入手順は、利用する Windows 端末に上記公式サイトからクライアント用ソフトウェア(WinXP/Vista/7対応)をインストールと上記Google Play ストアから好きな方の Android 用サーバーアプリをインストール。容量が少ない HTC Aria ユーザーとしては Android アプリの容量が小さいのが嬉しい(150KBくらい)。

そうしたら好きな方法(Bluetooth/Wi-Fi/USB)で接続(細かい手順は上記リンク先参照)し、Android 端末の方のサーバーアプリの配信(?)を開始。その後、PC の方のクライアントアプリを起動し、合わせて接続設定して Connect のメニューから接続。
wowebcam select transport
自分は Bluetooth だったのでこんな感じ。ペアリングは事前に済ませてある。

接続に成功したら、Skype とか Ustream 配信ツール(再起動が必要かも)なんかで確認するとカメラデバイスが追加されて使えるようになっている。

Windows 7 / Pavilion dm1-4000 と HTC Aria で使ってみた使用感としては、Webカメラの画素数とかチェックするツールがなくて細かいスペックはわからないけれど、少なくとも Bluetooth を使う場合は画質上げても対して Low の場合と変わらないしスライドショーみたいになるので Low がよさそう。携帯電話側のスペックの問題とかも絡んでくるので最適なのかはわからないけれど。Wi-Fi とかはめんどいので試していない。一応試しに撮った全く面白みのない画質比較動画
高画質
低画質

Ustream くらいスマートフォンからできる時代にわざわざスマートフォンを Web カメラにしてどうするんだというのはあるけれど、なんか面白い使い方考えたいですね。

2012/05/06 Sunflickr

焦った

alias crontab='crontab -i'

をとりあえず追加して、あと、オプションとか長めのコマンドは cron 用フォルダにシェルスクリプトファイル置いてそれ叩くようにした。あんまり長く crontab に書いてなくて、思い出すのに困らなくてよかった。

しかし crontab コマンドを実装したやつを許してはならない。

2012/05/05 Satflickr

今日の生活改善作業

必要ないと思っていたけれど、ないよりはあった方がいいかなということで自宅サーバーから音が出るオーディオプレイヤー(仮)にシーク機能つけた。プログレスバーのオンマウスでまともなツールチップ表示させるみたいな UI も実装したい。