-
Kindleをe-inkモニターとして使う
-
1段階: Kindleを脱獄する
- mobileread.comのLanguageBreakスレッドの手順に従うのがおすすめ
- LanguageBreakの手順には従わず自力で試したが、LanguageBreakのGitHubリポジトリはデバッグに非常に役立った
- どのように脱獄するにせよ、rootシェルにアクセスできることが重要
-
2段階: Kindleにリスナーサーバーを設定する
- ポート8000でファイルを受信し、
eipsを呼び出すGoプログラムを書いた
- たとえばGoプログラムがJPGファイルを受信して
/tmp/img.jpgに保存したら、次のコマンドで画像を部分更新として画面に描画できる:
eips -g /tmp/img.jpg -w gc16 -x 128 -y 0
- フラグの意味はeipsのWikiを参照
- 最初のフレームの前に
eips -cで画面を消去しておくのがよい
- Goのソースコードは失くしてしまったが、30行未満のとても単純なものだった
-
3段階: スクリーンキャプチャ + ImageMagick
- macOSで
screencaptureを使って繰り返し画面をキャプチャし、ImageMagickを使ってKindleが好む形式・サイズ・色に変換してから、usbnet経由でnetcatで送信するスクリプトを書いた
/usr/sbin/screencapture -C -x /tmp/orig.png
convert /tmp/orig.png -rotate 270 -resize '810x1448!' -type GrayScale -depth 8 -colors 256 /tmp/gray.jpg
cat /tmp/gray.jpg | nc -w 0 192.168.15.244 8000
- 解像度とポートはリスナーサーバーに合わせて調整する必要がある
-
4段階: ???
- 昨夜、遊び半分でこの作業をやってみたが、性能と使い勝手の面で改善の余地がかなりある
- 連続フレーム間の差分の大半は空で、非常に圧縮しやすいため、各フレームごとに完全なjpegファイルを送るのはとても非効率
- h.264のようなコーデックやvncのようなプロトコルを再発明しなくても、既存のツールだけで素早く改善できるはず
- 楽しんでやってみてください!
-
その他の有用な資料
GN⁺のまとめ
- この記事はKindleをe-inkモニターとして使う方法を説明している
- 脱獄、リスナーサーバーの設定、スクリーンキャプチャと画像変換の手順を含む
- 性能と使い勝手の面で改善の余地が大きい
- Kindleを創造的に活用したい人にとって有用
- 類似の機能を持つ他のプロジェクトとしては、VNCやさまざまなリモートデスクトップソリューションがある
1件のコメント
Hacker Newsの意見
mobilereadフォーラムは良い出発点