classics.

2011/05/18 Wedflickr

オレオレ Gyazo で SVG も生成

一部でオレオレ Gyazo サーバーを立てるのが流行っていて、個性を出すために ImageMagick で PBM に変換して、その PBM を potrace で SVG に変換という処理で モノクロの SVG を自動生成するようにした。autotrace だとカラーで PNG から変換できるみたいなのがあったのだけれど、オプションがよくわからず、ベクター感のある画像がうまくできなかったのでやめておいたautotraceでカラー版も作った。SVG 見れない人は Opera でも入れてください。

サンプル



2011/05/03 Tueflickr

Android 版 Opera Mobile を使う際の注意点

まともな Android ユーザーならば低機能な標準ブラウザや高いスペックを要求してまともに動くかわからない Minimo の再来みたいな Firefox 、その他WebKitを使うしか能がないようなブラウザではなく Opera Mobile を常用しているものだと思いますが、調子に乗って opera:config をいじりすぎて Android 本体がおかしくなることがあったのでメモしておきます。

具体的には、本体メモリの空きが少ないのでディスクキャッシュの保存先を SD カード上にしていたら、恐らくプロセス自動終了なんかの影響でキャッシュ書き込みに失敗するかなにかして、SD カードが壊れたと認識され、SD カードが勝手にアンマウントされて、マウントしなおそうとしても失敗することが多々ありました。対処としては、SD カードリーダーを利用して PC でマウントしてみてから再度 Android でマウントしてみると大体直ったのですが、いちいち PC 起動しないといけなかったりして、大分不便でした。最初は原因もわからずに本体の不具合かと思っていましたが、Opera Mobile のキャッシュを SD カードに保存するのをやめてから再現しなくなったので、そこが原因だったようです。気をつけたいですね。

2011/04/17 Sunflickr

スマートフォンユーザーにはスペアバッテリーがぜったいにおすすめ

スマートフォンユーザー増えてるっぽいですが、聞き込み調査の結果、あまりスペアバッテリーを使ってる人がいなかったので。自分のHTC Ariaだと前書いたようにこんな感じです http://oquno.com/log/eid2385.html

特に海外製のスマートフォンだとそこそこ安いのが出回ってたりするので、2,3個携帯しておくと便利です。あとバッテリー単体で充電できるチャージャーもあるといいですね。スマートフォン買う際にはそのへんの値段とかも考慮して買うのがよさそう。さすがに安すぎるのはどうか知らないけれど、とくに公式のスペアバッテリーでなくても大体問題なく使えると思います。オンラインで買うなら

あたりから探せばそこそこ見つかるかと。バッテリーを取り外せない残念な似非スマートフォンユーザーにおかれましてはモバブーでも使っていてください。

2011/03/28 Monflickr

Beluga はじめた

Beluga

便利ですね

2011/03/27 Sunflickr

Kindleのブラウザでlivedoor Readerを見る

using livedoor Reader on Kindle built-in browser

Kindleに搭載されてるブラウザはタブブラウジングできなかったりと物足りない感じですが、一応JavaScriptも動くので、livedoor Readerを使ってみた。さすがに本気ブラウジングはできませんが、キーボードショートカットが使えるのがとても便利。Opera Mobileも初代W-ZERO3なんかに入っていた8.5あたりなんかだとJavaScriptでまともにキーイベント拾えたのですが、スマートフォンがフルタッチスクリーン全盛になったせいか、まともにキーボードショートカットを使えるモバイルブラウザをみかけなくなってしまったため、割と貴重です。ちなみに、ディスプレイサイズは十分でないので、zキー1回とShift+zキー2回で上のスクリーンショットのような表示方法に変更して閲覧。読み進めてるとメモリが足りなくなるせいかログイン画面に飛ばされたりしますが、全文配信してるフィードの閲覧メインでちょっとした時間ならありかも。

2011/02/25 Friflickr

Webページをpdfに変換してKindleに送る

別にmobiじゃなくてpdfでもいいよねということに気付いたので試してみたメモ。wkhtmltopdfを落として、

$ ./wkhtmltopdf --minimum-font-size 25 http://oquno.com/ oqunocom.pdf

みたいにやるだけ。あとはこれみたいにメールで送ればいい。minimum-font-sizeはKindleで見るならそのくらいがちょうどいいかなと自分が感じただけなので、不要ならオプションなしでも。

wkhtmltopdfは優秀でとても便利なのだけれど問題はあって、Kindleがpdfを思うようにレンダリングしてくれない。あまり多く試してはないけれど、このブログでもページ送ってたら画像の位置がずれたりして破滅したので。普通のPCで表示する分には問題なく見れるpdfなんだろうけれど、高機能過ぎる感が。あと、タイトルと作成者情報が自動でセットされない。Kindleだとpdfはファイル名がそのまま一覧表示で表示される。あとはmobiよりフォントが汚いとか。そんなわけで、pdfは諦めた。

2011/02/23 Wedflickr

Webページをmobiに変換してKindleに送る2

http://oquno.com/log/eid2392.html
これの続き。

実運用してみたところ、文字化けと、kindlegenがsegmentation faultとかJSのエラーっぽいので失敗するパターンが発生。文字化けはUTF-8に強制変換で大体対応した。segmentation faultはよくわからないし、JSはscriptタグ除去しても残ったままなのでわからない。まあそんな頻繁にある事例じゃなければいいけれど。

URL投げたらメール送るまでのシェルスクリプトも一応公開しておく。https://gist.github.com/840249

2011/02/23 Wedflickr

Webページをmobiに変換してKindleに送る

単純にページをmobiに変換してKindleに送るというのがあったらいいかと思ったので作ってみるテスト。画像なしだったり自分の管理下でなくてもいいのならばSend to Kindleを使えばいいけれど、画像も欲しかったり個人サービスだと持続しない気がするので。

wgetとかcURLだと別ドメインの画像を含めて一気にダウンロードというのができなかった(調査不足?)ので、pavukとやらを入れた。デフォルトだと再帰的にページ取得しちゃったり、link rel="openid.delegate" のURL取得しちゃったので、以下のようなオプションに落ち着いた。

$ pavuk -singlepage -index_name index.html -fnrules F '*' '1234/%n' -quiet -disable_html_tag link 'http://oquno.com/'

1234のところにはページごとにユニークなIDを入れるとして、ダウンロードが終わったら(カレントディレクトリにkindlegenがあるとして)

$ ./kindlegen '1234/index.html' -o '1234.mobi'

を実行すると 1234/1234.mobi が作成される。これが5MB以下ならば(まあページ1枚なら大体大丈夫だろうけれど) @free.kindle.comで無料でKindle 3 WiFiに送れるのでメールで送信する。送信するメールアドレスはMange Your Kindleのページで追加しておく必要がある。Kindle上では表示されないので、mobiのファイル名は気にしていない。

$ uuencode '1234/1234.mobi' '1234.mobi' |  mail -s 'new page2mobi file' 'YOURACCOUNT@free.kindle.com'

でいけるかと思いきや、できなかった。> kindle3 で無料ニュース配信をする(さくらインターネット編)その1 | moiblog
のでここを参考にスクリプトを改変して、あるいはrubyとかでこのあたりを参考に

$ perl sendmail.pl '1234/1234.mobi'
こんなのをシェルスクリプトにまとめて、CGIかなんかからURLを引数に呼び出せるようにするとか、定期的にソーシャルブックマークの新着URLを投げたりすればいける。

2011/02/19 Satflickr

自宅サーバープレイヤー改良

new version

Last.fm の track.love と、ディレクトリ構造のインクリメンタル検索(incsearch.jsに少し手を加えた)から、プレイリスト自動生成と再生とか追加。

これ http://oquno.com/log/eid2188.html とかradiko予約録音とか組み合わさって、そこそこ便利になった。音楽流しながら寝落ち率が上がってきている。

2011/02/10 Thuflickr

自宅のLinuxサーバーでmp3を再生してLast.fmにもscrobbleするのをwebから操作

というのを作った。

経緯

  • 自宅のスピーカーで音楽聴きたい
  • デスクトップマシン(普段スピーカーに繋がっている)を起動させるの面倒
  • こたつから出て操作とか面倒
  • Last.fmにscrobbleしたい
  • SSHつないで操作も面倒
  • というようなことを前々から思っていたため、やってみた。

実装

web audio player

レイアウトとか全然凝ってないけどこんな感じ。HTML5で音量コントロールがそれっぽくできるようになったのがいいですね。あと、それっぽい気がしたので再生中にはmarqueeしてみている。

フロントエンドは、適宜XMLHttpRequestでAPIへリクエストして、返ってきたJSONに曲情報とか再生情報が入ってるので適宜反映といった感じ。バックエンドでは、RubyでMPlayerを動かしてるデーモンがあってそれをAPI経由でソケットでコマンド送って操作する。mplayer-rubyを使ってはいるのだけど、結構バグがあったり機能が足りなかったりと色々とひどい感じだったので改造しまくったたこともあり、公開しても動かないのでコードは公開しません。通信部分については、わざわざWeb APIを作らずにWebSocket使ったほうがシンプルにできそうではあったけれど、WebSocketは終わコン説があるのでスルーした。また、Cometはよくわからないのでスルーした。

仕組み

あと、mplayer-rubyでコマンドごとに同じプロセスの標準出力を読み取っているせいなのか、全然スケールしない様子(秒間1リクエストくらいならいけるか?)なので、Webの操作ページは公開しません。まあ家にいないと音楽も聞こえないし。

その他

Webでの操作はスケールしないけど、Twitter botでも作って、replyで曲のリクエストを受け付けるとかならありかも。データベースはmt-daapd用のを使いまわせるので、検索も難しくはない。

参考

http://blog.meganelab.net/archives/2006/11/21/043150
結構前に見てやろうと思ったけどサウンドカードがなくて諦めた