tag:blogger.com,1999:blog-59682743487458449072024-03-06T04:32:50.455+09:00roomNo.810Pandoraは良いよね。でもやっぱりN810。NokiaばんざいSupercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.comBlogger52125tag:blogger.com,1999:blog-5968274348745844907.post-62778293087820666632010-03-25T00:33:00.000+09:002010-03-25T01:23:46.288+09:00[Nokia N900] 内蔵FMラジオを日本向け周波数帯にする。(失敗編)<div class="separator" style="float: none;"></div><img align="right" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/n900radioicon.jpg" /><div align="center" class="section"><img alt="美しき人間の日々" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/others/n900radio1.jpg" /></div><br />N900内蔵FMラジヲを日本向けの周波数帯にしようと試行錯誤した記録。<br />結論から言うと、周波数帯の変更には成功しましたが、受信は出来てません。<br />成功編は未定。<br /><br /><b>試行錯誤の道程</b><span style="font-size:small"><span style="color:red">*1</span></span><ul><li>FMRadio.pyを読んでみる</li><li>/sys/class/i2c-adapter/i2c-3/3-0022/以下をいじってみる</li><li>FMRadio.pyとFMRadioUI.pyを改変してみる</li><li>fmコマンドだとかradioコマンドだとかを試してみる</li></ul><br /><span style="color:red">*1</span><br />たたたっ高村光太郎ちゃうわ!<br /><br /><span style="font-weight: bold">わかったこと</span><br />さて、(たしかN800のFMラジオ界隈でも活躍されてた)Martin Grimmeさん(pycage)の<br />直球ネームアプリケーション、"FMRadio"のソースを読む限り、N900では改変カーネルを焼く必要は無いようです。<br />そのかわり、sysfs(/sys/以下)を適切にいじってやることでリージョンの設定が出来ます。<br />具体的に述べていくと<br />/sys/class/i2c-adapter/i2c-3/3-0022/region<br />に国別のコードnを書き込むわけです。[n=0,1,2,3,4]<br />このコードnはカーネルソース中<br />drivers/media/radio/radio-bcm2048.cに定義されており、抄出すれば<blockquote> /* USA */<br /> {<br /> .channel_spacing = 20,<br /> .bottom_frequency = 87500,<br /> .top_frequency = 108000,<br /> .deemphasis = 75,<br /> .region = 0,<br /> },<br /> /* Australia */<br /> {<br /> .channel_spacing = 20,<br /> .bottom_frequency = 87500,<br /> .top_frequency = 108000,<br /> .deemphasis = 50,<br /> .region = 1,<br /> },<br /> /* Europe */<br /> {<br /> .channel_spacing = 10,<br /> .bottom_frequency = 87500,<br /> .top_frequency = 108000,<br /> .deemphasis = 50,<br /> .region = 2,<br /> },<br /> /* Japan */<br /> {<br /> .channel_spacing = 10,<br /> .bottom_frequency = 76000,<br /> .top_frequency = 90000,<br /> .deemphasis = 50,<br /> .region = 3,<br /> },<br /> /* Japan wide band */<br /> {<br /> .channel_spacing = 10,<br /> .bottom_frequency = 76000,<br /> .top_frequency = 108000,<br /> .deemphasis = 50,<br /> .region = 4,<br /> },</blockquote>つまり日本向けの周波数にしたいなら、ルート権限で<blockquote>echo 3 > /sys/class/i2c-adapter/i2c-3/3-0022/region</blockquote>だとか<blockquote>echo 4 > /sys/class/i2c-adapter/i2c-3/3-0022/region</blockquote>とすればよく、実際にやってみると /sys/class/i2c-adapter/i2c-3/3-0022/以下<br />region_bottom_frequencyとregion_top_frequencyが上記の抄出範囲で定義された値になっていることが確認できます。<br />このうえで、リージョン決め打ちのFMRadio<span style="color:red"><span style="font-size:small">*2</span></span>を少々改造します。<br />改造したのは/opt/fmradio/components/fmradio/以下FMRadio.pyと<a href="http://repository.maemo.org/extras-devel/pool/fremantle/free/source/f/fmradio/">ソースtarボール</a>から抽出し、同ディレクトリに放りこんだFMRadioUI.py。<br />FMRadio.pyは258行目付近と268行目付近に追記およびコメントアウト<blockquote># return self.FM_BAND_EUR<br /> return self.FM_BAND_JPN</blockquote><blockquote># band = self.FM_BAND_EUR<br /> band = self.FM_BAND_JPN</blockquote>FMRadioUI.pyは124行目付近に追記およびコメントアウト。<blockquote># self.__fmscala.set_range(87500, 108000)<br /> self.__fmscala.set_range(76000, 108000)</blockquote><br />ここでコマンドラインからFMRadioを起動し、前出の方法でリージョンコードを4に書き換えてから、なるだけ素早くFMRadioを再起動。<span style="color:red"><span style="font-size:small">*3</span></span><br />指針は76.0Mhzを指し、成功か。と思いきや87.5Mhz以上でしか正常に選局できない。<br />エラー出力を読むと、V4l2インターフェースの_VIDIOC_S_FREQUENCYへの書き込みに失敗している。。。<br />改造<span style="color:red"><span style="font-size:small">*5</span></span>がまずいんだろうか、気を取り直して、次へ進む。<br />さて、N900のFMラジオにはv4lのAPIを使って、/dev/radio1経由でアクセスできます。<br />と言うことはつまり、TVカードにFMラジオが乗っていた頃からのソフトウェア資産がそのまま利用できる。素晴らしきかなLinux!<br />コンパイルも面倒なのでdebianのリポジトリから適当にバイナリをとってくる。素晴らしきかなDebian!<br />(以下の操作は裏でFMRadioを起動し、リージョンを書き換えてから行っています。)<br />数あるラジオ関連ツールの中から、初めに試したのはFMRadioに勝るとも劣らないド直球ネームの<a href="http://packages.debian.org/ja/lenny/radio">radio</a>。<br /><div align="center" class="section"><img alt="美しき人間の日々" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/others/n900radio2.jpg" /><div class="title"><center><span style="color: #38761d; font-size: 85%;">radio -c /dev/radio1</span></center></div></div>が、うまくいかない。(リージョンの問題ではないはず、というのもradioは周波数帯制限のないラジオソフトウェアとして紹介されているのをどっかで見たよな気がしなくもないから。)<br />特にエラーメッセージも出ないので、次に<a href="http://packages.debian.org/ja/lenny/fmtools">fmtools</a>を試してみる。<br />コマンドラインから<blockquote>fm -d /dev/radio1 xx.x</blockquote>するとまた出た!_VIDIOC_S_FREQUENCYのI/Oエラー!<br />ひょっとして、これはドライバのバグなんですかねぇ。<br />参考までにv4l-info /dev/radio1の出力(一部)は<blockquote>### v4l2 device info [/dev/radio1] ###<br />general info<br /> VIDIOC_QUERYCAP<br /> driver : "bcm2048"<br /> card : "Broadcom bcm2048 FM Radio Recei"<br /> bus_info : "I2C: 0x22"<br /> version : 0.0.1<br /> capabilities : 0x50400 [?,TUNER,?]<br /><br />standards<br /><br />inputs<br /><br />tuners<br /> VIDIOC_G_TUNER(0)<br /> index : 0<br /> name : "FM Receiver"<br /> type : RADIO<br /> capability : 0x11 [LOW,STEREO]<br /> rangelow : 1216000<br /> rangehigh : 1728000<br /> rxsubchans : 0x2 [STEREO]<br /> audmode : STEREO<br /> signal : 0<br /> afc : 0</blockquote>こんな感じ。<br />rangelowおよびrangehighは16で割ればそれぞれ76000/108000であり、一応適切に設定されているようだ。<br /><br /><span style="color:red">*2</span><br />将来的にはsysfsから読んでくれるようになるらしい。<br />set_fm_band(self, band)なる未使用関数が有ったり、着々と進歩している。いろいろと頭の下がる思いです。<br /><span style="color:red">*3</span><br />なぜこんな面倒な手順をとるかというと、<br />FMRadioを起動すると同時にカーネルモジュールradio-bcm2048.koが読み込まれ、デバイスノードや/sys/class/i2c-adapter/i2c-3/3-0022/以下が作成される訳ですが、FMRadioは起動時にv4l2インターフェースから周波数帯の上限と下限を読み込むので、リージョンコードの書き換えをFMRadioに反映させるためにはFMRadioをいったん終了し、(多分/usr/libexec/n900-fmrx-enablerあたりが)カーネルモジュールをアンロードする前に、もう一度FMRadioを起動するという手順を踏む必要があるからです。復文長い。<br />ちなみに/etc/modprobe.d/を使ってradio_bcm2048.koのロード時に<br />リージョンコードを書き込む様に設定<span style="color:red"><span style="font-size:small">*4</span></span>してみましたが、FMRadioによるロードではそれらの設定は無視されてしまいました。<br />というわけでFMRadio.pyの__init__内でos.systemとsudo echoを組み合わせて使うのが消極的かつそこそこマシな自動化だろうか。<br /><span style="color:red">*4</span><br />/etc/modprobe.d/radio-rx-jpnとして以下の内容のファイルを作成<blockquote>install radio_bcm2048 /sbin/modprobe --ignore-install radio_bcm2048 && echo 4 > /sys/class/i2c-adapter/i2c-3/3-0022/region</blockquote><br /><span style="color:red">*5</span><br />ざざざっ雑誌ちゃうわ!久米田康治やわ!<br /><br /><b>蛇足</b><br />FM送信機(/dev/radio0)の周波数帯を日本向けにしたい場合<blockquote>/sys/class/i2c-adapter/i2c-2/2-0063/region</blockquote>に上記と同じく3か4の値を書き込みます。<br />が、それだけでは設定UIは87.5Mhz〜108.0Mhzのままです。<br />周波数帯は決め打ちになっているのか、はたまたシステムのロケールにしたがって変更されるのか。<br />なかなか一筋縄には行きませんな。だがそれが良い。<br />Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com2tag:blogger.com,1999:blog-5968274348745844907.post-84981457209125735182010-03-18T02:15:00.000+09:002010-03-18T03:24:17.773+09:00[Nokia N900] MerをmicroSDから起動/LXDEをセットアップ<div class="separator" style="float: none;"></div><img align="right" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/mern900blogicon2.jpg" /><div align="center" class="section"><img alt="松本素生ソロ活動かよ!" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/men900/lxde_s.jpg" /></div><br />なんだか危ういMaemo5/Fremantle環境のバックアップとして、Mer(0.17testing11)をmicroSDにインストールしてみた記録です。<br />とりあえずLXDEおよび拙作clickhack900のセットアップまで。<br />お決まりの注意書きは一番下です。<br /><br /><b>必要なもの</b><br /><ul><li>N900</li><li>空のmicroSD(2GB以上)</li><li>転んでも泣かない根性</li></ul>microSDのフォーマットなどはN900単体でも可能ですが、Linuxの入ったPCがあると便利かもです。<br /><br /><b>下準備</b><br /><ul><li>microSDにext3フォーマットされた2GB以上のパーティションを作る</li></ul>ココらへんはサクッと書き飛ばしますが、参考までに、easy-debianでgpartedを使うなら、<blockquote>$sudo apt-get install gparted dosfstools<br />$sudo gpartedbin</blockquote>"Memeory card format unsupported"などと出ますが問題なくフォーマットできます。<br /><br /><div align="center" class="section"><img alt="松本素生ソロ活動かよ!" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/men900/n900mer_gparted.jpg" /><div class="title"><center><span style="color: #38761d; font-size: 85%;">1GBはどこへ消えた?/スペンサー・ジョンンソ</span></center></div></div><ul><li><a href="http://wiki.maemo.org/Mer/Releases/0.17">ここから</a>Merのrootfsをダウンロードする</li></ul>今回はmer-armel-n900-rootfs-v0.17testing11.tar.gzを/home/user/MyDocs/にダウンロードしました。<br /><ul><li>qole氏のrepositoryからfanoush氏製bootmenuをインストールする</li></ul><ol><li>AppMgrに登録してある人はAppMgrでbootmenuと検索、インストール</li><li>してない人は<a href="http://qole.org/repository/pool/fremantle/bootmenu_1.6_armel.deb">ここから</a>直接.debをダウンロードの上、root権限で<blockquote>dpkg -i bootmenu_1.6_armel.deb</blockquote></li></ol>ランチャーから"Install Bootmenu"。<br />キーボード全開の状態で起動するとブートメニューが出ます。<ul><li>gnuなtarをダウンロードする</li></ul>先のアーカイブをN900で展開するよ。って人には必要です。<br /><a href="http://repository.maemo.org/pool/fremantle/free/t/tar/tar_1.14-2.1osso_armel.deb">ここから</a>ダウンロードしたdebを<blockquote>dpkg-deb -X tar_1.14-2.1osso_armel.deb /opt/tmptar</blockquote>として展開しておきます。<br><br><b>インストール</b><ul><li>merのrootfsを展開する</li></ul>さきほど作ったパーティションをマウントします。<br />(少なくともext3な第二プライマリパーティションは自動でマウントしてくれない様です)<blockquote>mkdir /media/mmc2<br />mount -t ext3 -o noatime /dev/mmcblk1p2 /media/mmc2</blockquote>merのrootfsを展開します。<blockquote>cd /media/mmc2 <br />/opt/tmptar/usr/bin/tar --numeric-owner -pzxf /home/user/MyDocs/mer-armel-n900-rootfs-v0.17testing11.tar.gz</blockquote><ul><li>firmwareファイルをコピーする</li></ul>完全にオープン。とは言えないN900の、無線LAN等各種ハードウェアをMer上で動かすためにfirmwareファイルをコピーします。<br /><blockquote>cp -Ra /lib/firmware/* lib/firmware/</blockquote>どなたか俺はクローズドソースは好かん!という方がcatでゴリゴリとデバイスドライバなり書いていただけると皆ハッピーでラヴアンドピースになれるかと思います。<br /><ul><li>bootmenu用のコンフィグファイルを作成する</li></ul>bootmenuにmerを登録します。<br />/etc/bootmenu.d/以下に以下のような内容で拡張子.item(例:merp2.item)のファイルを作成します。<br />今回は2番目のパーティションにインストールしたので、<br />1行目のITEM_NAMEには"partition2"、3行目のITEM_DEVICEには"p2"という文字列が含まれています。<br /><blockquote>ITEM_NAME="Mer (external SD, partition 2)"<br />ITEM_ID="mer"<br />ITEM_DEVICE="${EXT_CARD}p2"<br />ITEM_MODULES="mbcache jbd ext3"<br />ITEM_FSTYPE="ext3"<br />ITEM_FSOPTIONS="noatime,ro"</blockquote>耐障害性は落ちてしまいますが、ITEM_FSOPTIONSにdata=writebackと付け加えるとちょっぴり高速かもしれません。<br /><ul><li>いったんMerを起動してユーザー登録などを済ませる</li></ul>ひとまずN900を再起動し、Merを立ち上げます。<br />起動直後バイブレーションが作動しNokiaのロゴが出ますが、このタイミングでキーボードが開いていればBootmenuに入れます。<br />方向キーとReturnキーで先ほど登録したMerを選択して起動します。<br />ただし、バックライトオフの状態でMerを起動するとヒドい目に会うので、ツいていなくて点いていない場合はShutdownを選択。<br />キャリブレーションに始まるユーザー登録が済んだら、重いhildon-desktop<span style="font-size:small"><span style="color:red">*1</span></span>を操作してxtermを起動し、<blockquote>sudo reboot</blockquote>と入力してCtrl+m。パスワードは先のウィザードで入力したモノです。<br />今度はキーボードを閉じた状態で起動するか、BootmenuでFlashを選ぶかしてMaemoを起動します。<br /><br /><span style="color:red">*1</span><br /><a href="http://www.blip.tv/file/3209258">ハードウェアアクセラレーションを効かせたMerの動画</a>なんかもあるのできっともうすぐサクサクしてくれるはず。<br /><ul><li>LXDEをインストール</li></ul>まずは先程と同様にしてマウント。<blockquote>mount -t ext3 -o noatime /dev/mmcblk1p2 /media/mmc2</blockquote>現状デフォルトのhildon-desktopはごらんの有り様なので、代わりにネットブック用軽量WMとして名を馳せたLXDEを使います。<br />まずeasy-debianに同梱のシェルスクリプト/sbin/debianを用いてmer環境にchrootします。<br />(多分chrootコマンド単体でも必要十分です。)<blockquote>debian(もしくはchroot) /media/mmc2</blockquote>なにはともあれupdateし、続けてLXDEをインストールします。<blockquote>apt-get update<br />apt-get install lxde lxlauncher</blockquote>一方グラフィカルなログイン画面なんていらねえ族は、代わりに<blockquote>apt-get --no-install-recommends install lxde libgtkstylus lxlauncher<br />su user<br />echo "exec startlxde" >> -/.xinitrc<br />chmod +x -/.xinitrc</blockquote>終わったらexitもしくはCtrl+dでMaemoに戻ります。<ul><li>LXDEでNetworkManager(nm-applet)のアイコンを出す</li></ul>デフォルトでは、無線LAN接続をGUIで設定可能にしてくれる便利アプリ<br />NetworkManagerがLXDEのタスクバーに出ません。<br />そこで/media/mmc2/etc/xdg/autostart/nm-applet.desktop内OnlyShowInの値を<blockquote>OnlyShowIn=GNOME;XFCE;LXDE</blockquote>と書き換えるか<blockquote>#OnlyShowIn=GNOME;XFCE;</blockquote>とコメントアウトすれば、この問題を解決できます。<br /><ul><li>キーマップを入れ換える</li></ul>Maemo環境のキーマップをMerに持っていきます。<blockquote>cd /media/mmc2/usr/share/X11/<br />mv xkb xkb.old<br />cp -Ra /usr/share/X11/xkb . </blockquote>しかしこの方法では”Shift+Fn+”という修飾が有効にならず、<br />またFn+方向キーのコンビネーションが無視されたり、GDMでログインできなかったり(!)するので、さらにXmodmapを利用します。<br />何処でもいいですが、例えば/media/mmc2/etc/gdm/Init/.Xmodmap.n900といったファイルを作成し、以下の内容を書き込みます。<br /><blockquote>keycode 36 = KP_Enter<br />keycode 74 = Tab<br />keycode 73 = Escape</blockquote>ついでに/media/mmc2/etc/gdm/Init/Defaultの冒頭9行目あたり(つまりgdm_which()の直前ですね)に<blockquote>xmodmap /etc/gdm/Init/.Xmodmap.n900</blockquote>という一文を挿入します。<br />これで一応F7(-キー)でEscape、F8(+キー)でTabが打てるようになり、GDMからログインが可能になりました。<br /><ul><li>右クリックを可能にする</li></ul>拙作のclickhack900で右クリックを可能にする。<br />というかインストールされたlibgtkstylusによって長押しによる右クリックは実現されているので、正確には”別の方法で”可能にします。<br /><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/men900/clickhack900.gz">ここから</a>clickhack900.gzをダウンロード後、<blockquote>mv clickhack900.gz /media/mmc2/usr/local/bin/<br />gunzip /media/mmc2/usr/local/bin/clickhack900.gz</blockquote>加えて前出の/media/mmc2/etc/gdm/Init/Defaultの冒頭に<blockquote>/usr/local/bin/clickhack900 &</blockquote>と書いておくことで、Fn(青い矢印キー)を押している間 タップが右クリックになります。<br />もちろんドラッグ<span style="font-size:small"><span style="color:red">*2</span></span>もできます。<br />(実際には単に/dev/input/event1の内容を拾って適宜xmodmapを実行するだけのhackと呼ぶのは憚られるシロモノだったりする)<br /><br /><span style="color:red">*2</span><br />(こんなのセキュリティ的に)ダメ・ゼッタイという方はlibgtkstylusをお使い下さい。<br /><ul><li>再起動してもう一度Merを立ち上げてみる</li></ul>以上でインストールは終了です。<br />再起動してBootmenuからMerを選択し、<br /><div align="center" class="section"><img alt="松本素生ソロ活動かよ!" width="384" height="288" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/men900/n900mer_s.jpg" /><div class="title"><center><span style="color: #38761d; font-size: 85%;">こんな画面(GDM)</span></center></div></div>がでてくれば成功です。<br />Mer0.17testing11自体が正式リリース前でややバギーだったり、キーマップの問題から目をそらしていたり、バッテリー残量表示がなかったり<span style="font-size:small"><span style="color:red">*3</span></span>しますが、ひとまず。<br /><br /><span style="color:red">*3</span><br />これとバックライト調節に関してはdeblet時代の遺産が使えるのかもしれない。<br /><br /><span style="font-weight: bold">ネタ元</span><br /><a href="http://mer-project.blogspot.com/2010/01/dual-booting-mer-on-nokia-n900.html">http://mer-project.blogspot.com/2010/01/dual-booting-mer-on-nokia-n900.html</a><br /><br />最後になりますが、お決まりの注意書きです。<br />この記事は、将来的にもっとボケが進行したり、トミー・リー・ジョーンズに記憶を消去されたり、自動車事故で15分ごとに記憶を失う障害を負い恋人の顔も思い出せない状況で進行する怒涛のクライム・サスペンス!な状況に陥ったときの備忘録であり、内容の正当性はまったく保証されません。過度な期待はしないでください。Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-8390113620809487512010-03-16T22:55:00.000+09:002010-03-25T10:20:18.436+09:00[Nokia N900] 雑多な雑感についての雑然たる雑文<div class="separator" style="float: none;"></div><img align="right" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/n900zakblogicon.jpg" /><b>ハードとソフト</b><br /><ul><li>画面はリナザウと似た構造で、表層から感圧パネルを挟んで2~3ミリ奥まった所に液晶がある感じ。<br>→感度がいいのもリナザウと似てるが、こっちは視野角がバッチリ広いし日光下でも見やすい。<br>→色温度が高いところは初代iPhoneと似てるのかもしれない。</li><li>N900をしばらく使ったあとN810を触ると、N810のタブレット感<span style="color: red; font-size: x-small;">*1</span>に少々ビビる。</li><li>てかキーが少ないよ!<br>→近接センサを修飾キーとして使うとかいうアレゲすぎる案があるらしい。</li><li>image-viewer(Photos)のResizeは劣化したのかも。特定の大きさにするのがより面倒になった。<br>→GraphicsMagick使えばいいんだが、n900ではサイズのデカいアプリをインストールするのが恐い<span style="color: red; font-size: x-small;">*2</span>。</li><li>販促?用に入ってるChick WinslowのMagic WordsはイントロがJPop(しかもアニソン)</li></ul><br /><span style="color: red;">*1</span><br />野性のモバイラーのみが持つといわれている第八感。<br />JobsがiPadと名付けて商品化した事でも知られる。<br /><span style="color: red;">*2</span><br />まんじゅう恐い的ないみではないです <br /><br /><b>mplayerとか</b><br /><ul><li>extrasのブツはnomenuでbulidされてるのがちょっと残念。</li><li>-ao alsaだと再生開始時に止まるが、-ao pulseなら無問題。<br>→ってことで~/.mplayer/configにao=pulse,alsaと書く。</li><li>/etc/mplayer以下のコンフィグファイルを読んでない?</li><li>スライドロックすると再生が止まる。省電力の弊害か。</li><li>せっかく-vo xvで再生してるので、タップで再生/一時停止出来るようにしておく<br>→~/.mplayer/input.confにMOUSE_BTN0 pauseと追記。</li><li><blockquote>dbus-send --print-reply --dest=com.nokia.mediaplayer /com/nokia/mediaplayer com.nokia.mediaplayer.mime_open string:hyper_egashirakoushien_s12e14.mp4</blockquote>でmediaplayerにファイルを渡せるので、<blockquote>#!/bin/sh<br>FILE=`realpath $1`<br>[ -e $FILE ] &&\<br>dbus-send --print-reply\<br> --dest=com.nokia.mediaplayer /com/nokia/mediaplayer\<br> com.nokia.mediaplayer.mime_open string:"$FILE"</blockquote>とかいう適当シェルスクリプトを置いておけば便利便利。</li></ul><br /><b>alsaとpulseaudio</b><br /><ul><li>alsamixerが最初から入っている<br>→暇な時はalsamixer -c0で楽しもう。</li><li>さすがesdの置き換えを狙うだけあってpulseaudioの互換性が凄い。<br>→/usr/bin/esdを用意するあたり、奴らは本気だ。</li><li>でもn900でpadspを使うにはちょっと作業が必要だった。<br>まずdebian/lennyの<a href="http://packages.debian.org/ja/lenny/armel/pulseaudio-utils/download">pulseaudio-utils</a>をダウンロードしてdpkg-deb -Xで展開、libpulsedsp.soを抽出し/usr/lib/に放りこむ。<br>このままだとgetoptsが無いと言われるので(getoptがコマンドでgetoptsがシェル関数らしい)<br>bashを入れて、/usr/bin/padspの冒頭を<blockquote>#!/bin/sh</blockquote>から<blockquote>#!/bin/bash</blockquote>に変更する。</li></ul><br /><b>Stability</b><br /><ul><li>/optから/usr/lib以下にシンボリックリンクを貼るとリブートループに突入する?<br>→wiki.maemo.orgを読めばそこらへん書いてありそう。</li><li>3~4回フラッシュを経験し、精神的に打ちのめされつつも<span style="font-size: x-small;"><span style="color: red;">*3</span></span>焼物職人としての自覚が芽生え始めたところでとある情報を手に入れた。<br>→なんでも、リブートループに入った後でflasherから--enable-rd-modeするとループから抜けられる(ことがある)らしい。<br> →ってことはパーミッションの関係なんだろうか。</li><li>N810と同じく、ブート画面にTuxとか出すにはkernel入れ換えが必要らしい。<br>→んでもPR1.1のカーネルソースはまだ出ていないらしい。</li><li>そんなわけで、レスキューのためにもSDブートのMerを入れてみたのだ。</li><li><a href="http://mer-project.blogspot.com/2010/01/dual-booting-mer-on-nokia-n900.html">このガイダンス</a>に従って入れる。</li><li>(ただし0.17testing11を使った。)</li><li>bootmenuのdebはお馴染みqole氏のrepository(http://qole.org/repository/)に<a href="http://qole.org/repository/pool/fremantle/bootmenu_1.6_armel.deb">ある</a>よ。</li><li>なんとmer簡単になったもので、bootmenuのためにinitflasherしなくても良くなったらしい。</li></ul><br /><span style="color: red;">*3</span><br />N900のmicroUSBポートも物理的に打ちのめされている。<br /><br /><b>その他</b><br /><ul><li>N810をsambaサーバーにしてじみちに環境移行してますが、やたらと転送速度が遅い。一方WANだと速度が出る。謎に満ちてんな。</li><li>内蔵32Gに書き込んでいると異常にもっさりする。swapの読み書きとあいまってIOが輻輳しているんだろうか。</li><li>D-Padがない<br> →センターキー(Return)がない<br> →一部アプリケーション(DilloとかXJPとか)はN900のリターンキー(KP_Enter)を認識しない<br> →N900ではxmodmapもつかえない<br> →どうするどうする</li><li>とりあえずXJPをKP_Enterに対応させてみました。<br>→xrandrで無理やり縦画面にすると、なぜだかフォントが大きくなるようです。 </li></ul><div align="center" class="section"><img alt="wayv" height="400" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/others/xjp2n900s.jpg" /><div class="title"><center><span style="color: #38761d; font-size: 85%;">まあ読みやすくていいけどさ。</span></center></div></div><br /><br /><span style="font-weight: bold">追記:</span>キーマップファイル/usr/share/X11/xkb/symbols/nokia_vndr/rx-51の397行目付近<blockquote>key <RTRN> { [ KP_Enter ] };</blockquote>を<blockquote>key <RTRN> { [ Return , KP_Enter ] };</blockquote><br />としてみました。<br />取り急ぎDilloとXJPで動作を確認しましたが、どうも動作がヤバそうだったらShift+Returnで回避しつつ書き戻すという方向で。<br /><br /><b>TODO</b><br /><ul><li>FMラジオを日本向け周波数帯にする。n800と同じならカーネルをいじる必要あり?先人たちの日本語記事を参考に。</li><li>N8x0ではNITDroidの人がグラフィカルなブートメニューとかカーネルを選択可能にするシステム(kexec)について研究していましたが、n900ではどうなんでしょう?</li></ul><br />Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-91960106236251102062010-02-28T18:48:00.001+09:002010-02-28T22:43:09.983+09:00[Nokia N810] 車輪(ahostwin)をつくろう、そしてあなたは画面を回す。(オマ
ケ:gst-playerのアップデート)<div class="separator" style="float: none;"><img align="right" border="0" height="0" alt="できっこないをやらなくちゃ" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/ahostwinblogicon.png" /></div><div align="center" class="section"><img alt="できっこないをやらなくちゃ" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/others/ahostwin.png" /></div><br><span class="Apple-style-span" style="color: #38761d; font-size: small;">hostwinをX11ネイティブにしてみました</span><br />Another hostwinで、ahostwin・・・名前のセンスはないです。(<a href="http://www.polysoma.net/poly/?aBookReader_Zau">オマージュ!</a><span class="Apple-style-span" style="color: #cc0000; font-size: small ;">*1</span>) <br>車輪の大発明がqole氏のeasydebianにおけるBundyo氏のhostwinだとすれば、こいつがまさに車輪の再発明。<br>hostwinと比べてちょっとだけ良い点は<ul><li>Gtkじゃないので立ち上がりが早い</li><li>背景色が指定できる</li><li>フルスクリーンオプション(-fs)でwmctrlとおさらば出来る</li></ul>所。悪い点は、、、悪い点を書くにはこの余白(ブログ)はあまりに狭すぎる。。。<br>じゃあそもそもなんでそんなモノを作ったかと言うと、<br />easydebian(Xephyr)がMaemo(Xomap)側の画面回転に応じてくれないのを何とかしたかったからなのです。<br />で、それは結局Xrandrの一連のコマンド<blockquote>xrandr --newmode portrait 0 480 0 0 0 800 0 0 0</blockquote><blockquote>xrandr --addmode default portrait</blockquote><blockquote>xrandr --output default --mode portrait</blockquote>によって実現できました。<br />かくして要らない子となったahostwinの記事を書く理由?それを書くにはこのネット(余白)はあまりに狭すぎる。。。<br /><br /><b>ファイル:</b><ul><li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/others/ahostwin.gz">ahostwin.gz</a></li><li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/others/ahostwin.c.gz">ahostwin.c.gz</a></li></ul><b>使い方:</b><br>ahostwin [-fs] [-wn windowname] [-ic iconname] [-bg #FFFFFF] [-e command]<br /><br /><b>ビルド:</b><blockquote>gunzip ahostwin.c.gz</blockquote><blockquote>chmod +x ahostwin.c</blockquote><blockquote>./ahostwin.c</blockquote><br /><br /><span class="Apple-style-span" style="color: #38761d; font-size: small;">gst-playerのアップデート</span><br /><a href="http://do1not3panic8.blogspot.com/2010/02/nokia-n810-gstreamergst-ffmpeg-vs.html">gstreamer vs mplayer (1)</a>に出てきたアレです。<br />実行中にバックライトがフェードするのを抑止するようにしました。<br /><b>ファイル:</b><br /><ul><li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/gst-player.gz">gst-player.gz</a></li><li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/gst-player_maemo.patch.gz">gst-player_maemo.patch.gz</a></li></ul><br /><span class="Apple-style-span" style="color: #cc0000;">*1</span><br >QuasarMediaPlayerのcompat/qt3とかを使って、かの伝説的アプリabookreaderの<br /><div align="center" class="section"><img alt="abookreader" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/others/abookreader.png" /><div class="title"><center><span style="color: #38761d; font-size: 85%;">ガワ<span class="Apple-style-span" style="color: #cc0000; font-size: small ;">*2</span></span></center></div></div><br />まではmakeできたんですが、<br>肝心の描画部分がQDirectPainterを使ってfbに書く事で実現されていて難題。つまり詰っている。<br>drawPixmapで置き換えるにはどーすればいいんだろう。<br><span class="Apple-style-span" style="color: #cc0000;">*2</span><br >ガワと言えばNintendo DSのピクトチャットを傍受するBSD(/Linux)向けアプリPictoSniffもガワだけmakeで放置されている。<br><div align="center" class="section"><img alt="pictosniff" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/others/pictsniff.png" /><div class="title"><center><span style="color: #38761d; font-size: 85%;">ピーピング・田代・トム(通称出歯ガメ)</span></center></div><br /></div>Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-25783576112860087342010-02-22T18:40:00.019+09:002010-02-22T22:39:30.438+09:00[Nokia N810] 810 / ロシアへ愛をこめて (PowerVR MBX SDKに関するメモ)<div class="separator" style="float: none;"><img align="right" alt="歌声よおこれ" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/pvrblogicon.png" /></div><div align="center" class="section"><img alt="歌声よおこれ" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/others/xegltest.png" /></div>To Russia with love. Спасибо Veska! <br>なにやら<s>カスペルスキーの名産地</s><a href="http://n8xx.com/">ロシア語圏のInternetTablet系フォーラム</a>で紹介して頂いた様で、ありがたい限りです。<br />いやぁ、google translateって本当にいいもんですねえ(<a href="http://www.google.ru/intl/ru/landing/transsib/en.html">google版シベリア超特急</a>)。<br />あまり内容の無いブログですが今後ともよろしくお願いします。<br />最初ロシアからのアクセスが増えているのに気付いた時は、(<a href="http://www.mtvjapan.com/usavich/movie.html">ウサビッチ</a>を薦めすぎた廉かなんかで)ついにKGBに目を付けられたかと大変おののきましたよ。<br /><br />さて、ざっとPowerVR MBX SDKを試してみた結果言えるのは、<br />現状、凄いものが見たいなら<b>liqflow</b>(↓)をインストールした方が良いということです。<br /><object height="344" width="425"><param name="movie" value="http://www.youtube.com/v/nQPhpbuEJGE&hl=ja_JP&fs=1&color1=0x234900&color2=0x4e9e00"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/nQPhpbuEJGE&hl=ja_JP&fs=1&color1=0x234900&color2=0x4e9e00" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object><br /><br />まあ人柱気質の開発者向けベータベータみたいなものですから当然なのですが、冒頭のスクリーンショット(xegltest)を撮るのに百億の再起動と千億のリセットが必要になった事は記しておきます。<br /><br />動作が確認できたのはservice_testとxegltest、power_test、成功率の高い手順を愚直に書けば<br /><ol><li>N810を起動</li><li>Xterm(mrxvt)起動</li><li><blockquote>cat /proc/kmsg</blockquote></li><li>新しいタブ(ウィンドウ)を開く</li><li><blockquote>/etc/init.d/rc.pvr start</blockquote></li><li><blockquote>lsmod<br />Module Size Used by<br />omaplcd 10832 2 - Live 0xbf099000<br />mbxaccess 25464 3 omaplcd, Live 0xbf091000</blockquote></li><li><blockquote>mbxdaemon</blockquote></li><li><blockquote>service_test q</blockquote></li><li><blockquote>xegltest</blockquote></li></ol><br />ただし、xegltestでは画面更新(expose関係?)が上手く行っていないのか、マウスカーソル以下しか更新されません。<br />また、ウィンドウマネージャのXボタンでxegltestを終了するとmbxdaemonが落ちるようです。<br /><br />ウチの環境ではglinfoをはじめ、egl_test等は<br />X Error of failed request: BadWindow (invalid Window parameter)<br />Major opcode of failed request: 3 (X_GetWindowAttributes)<br />Resource id in failed request: 0x0<br />Serial number of failed request: 7<br />と言って死んでしまいます。(Xephyr内でも同様)<br />バグ以外に怪しむべきは<br /><ul><li>Readme.txt流し読みのインストール方法</li><li>rotate対応版のXomap</li></ul><div>てな所ですかね。</div><br />TMOのスレッドでは盛んに報告がされてますが、いまだTIの受理待ちの人もいるみたいですし、<a href="http://mer-project.blogspot.com">Merのblog</a>に件のガイダンスが出てきたらいろいろわかってくるのではないでしょうか。<br />Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-35219971362696929372010-02-21T19:48:00.003+09:002010-02-23T17:46:26.345+09:00[Nokia N810] PowerVR MBX SDKをインストール<div class="separator" style="float: none;"><img align="right" alt="青春狂想曲" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/pvrblogicon.png" /></div>やはりというべきか、待ちきれず手を出してしまいました。<br />前回ダウンロードしたOMAP24xx_MBX_K2621_N8xx_v3535630.zipを展開するとOMAP24xx_MBX_Linux_N8xx-3.5.35.630.binなるInstallJammer製インストーラが出てきます。<br />(余談ですが名前の通りのInstall Shieldクローン(OSS)で見た目もそっくり。ウィンドウマネージャのqvwmとどえらい調和<span class="Apple-style-span" style="color: #cc0000; font-size: small ;">*1</span>してました。)<br />x86なLinux上で<br /><blockquote>chmod +x OMAP24xx_MBX_Linux_N8xx-3.5.35.630.bin</blockquote>として実行属性をつけ<br /><blockquote>./OMAP24xx_MBX_Linux_N8xx-3.5.35.630.bin</blockquote>でインストール開始。無事終了したらn810から操作<br />(今回はSambaで共有済みのディレクトリにインストールしました)<br /><blockquote>cd Graphics_SDK/OMAP24xx_MBX_SDK_N8xx/bin/binary_omap2420_linux_release/</blockquote>debugとreleaseがありますが、お好みで。<br />install.sh中の改行コード(^M)が鬱陶しいのでまず排除。<br /><blockquote>perl -i.old -npe 's/\r\n/\n/' install.sh</blockquote>あ、/etc/init.d/以下にインストールされるrc.pvrもついでに<br /><blockquote> perl -i.old -npe 's/\r\n/\n/' rc.pvr</blockquote><b>[追記:]</b>うっかりしてました。ここで<br /><blockquote>mv install.sh install.sh.old2</blockquote><blockquote>sed -e "s/2.6.21/2.6.21-omap1/g" install.sh.old2 > install.sh</blockquote><b>[/追記]</b><br />そしたら<br /><blockquote>chmod +x install.sh</blockquote><blockquote>chmod +x rc.pvr</blockquote><blockquote> ./install.sh</blockquote><br />ライブラリのパス追加が面倒なので手動で/usr/local/lib以下のライブラリを/usr/libに移動して<br /><blockquote>ldconfig</blockquote>次はkernelを焼く。rotateや高速MMCとはしばらくお別れ。<br /><blockquote>cp ../kernel/zImage /boot/</blockquote><blockquote>ln -fs /boot/zImage /etc/flash-and-reboot/kernel</blockquote><blockquote>flash-and-reboot</blockquote>自動で再起動がかかる。起動出来たら万歳三唱。神に感謝<span class="Apple-style-span" style="color: #cc0000; font-size: small; ">*2</span><br /><blockquote>/etc/init.d/rc.pvr start</blockquote> 後、/sys/module/mbxaccess/以下を見てニヤニヤするべし。<br /><br /><span class="Apple-style-span" style="color: #cc0000;">*1</span><br />キル・ビル好きのFSF信者が見たら発狂するレベル。<br /><span class="Apple-style-span" style="color: #cc0000;">*2</span><br /><div style="width: 460px; margin: 0 20px 10px; padding: 10px 10px 10px 30px; border: #D9D9D9 solid; border-width: 1px 0;">「あなたたちの神の名は、なんていうの?」<br />僕は深呼吸をして落ち着きを取り戻してから口を開いた。「ロックンロール」<br /><div align=right >-- <cite><a href="#">フミコフミオ</a></cite></div></backquote></div>Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-53578450341144861042010-02-21T07:27:00.001+09:002010-02-22T15:28:18.817+09:00[Nokia N810] ねんがんの PowerVRMBX SDK をてにいれた<div class="separator" style="float: none;"><img align="right" alt="世界をかえさせておくれよ" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/pvrblogicon.png" /></div>
メールしてから待つこと三日。<br />もっと気合いを入れて書くべきだったかメール、とSEAMO的倒置法を用いてウェルテルばりに悩んでいる所にTIから返事が来ました。<br />書かれたリンク先でTI-Passシステムに登録し、my.TIのトップページに行くと、そこには大きく片仮名で"エクストラネット"の文字が!<br />はやる気持ちを抑えつつ、間接を極められた高橋名人ばりの速度でタップして跳んだページからOpenGLES SDK for OMAP2420 NokiaN800<br />の文字を捜し出し、OMAP24xx_MBX_K2621_N8xx_v3535630.zipをダウンロードすることに成功しました。リビジョンは3.5.35.630。<br />今回のドライバのMaemoコミュニティ側開発者の一人であり、Merの偉い人でもあるStkeeps氏が手順とか書いてくれるらしいのでそれ待ち。<br /><br />Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-27422040507941623362010-02-19T18:40:00.000+09:002010-02-19T20:49:28.130+09:00[Nokia N810] apwal/アイコン/グリッド/ランチャー<div class="separator" style="float: none;"></div><img align="right" alt="世界をかえさせておくれよ" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/apwalblogicon.png" /><br /><div align="center" class="section"><img alt="世界をかえさせておくれよ" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/apwal/screenshot06_s.png" width="400" height="240" /></div><span class="Apple-style-span" style="color: #38761d;"><span class="Apple-style-span" style="font-size: small;">まえふり</span></span><br />はあまりに長いので後置されました。<br /><br /><span class="Apple-style-span" style="color: #38761d;"><span class="Apple-style-span" style="font-size: small;">ビデオ</span></span><br /><object height="344" width="425"><param name="movie" value="http://www.youtube.com/v/r5obwFyj8Yk&hl=ja_JP&fs=1&color1=0x234900&color2=0x4e9e00"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/r5obwFyj8Yk&hl=ja_JP&fs=1&color1=0x234900&color2=0x4e9e00" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object><br /><br /><span class="Apple-style-span" style="color: #38761d;"><span class="Apple-style-span" style="font-size: small;">インストール</span></span><br />Diablo/extras-devel/desktopセクション/apwal から<br /><br /><span class="Apple-style-span" style="color: #38761d;"><span class="Apple-style-span" style="font-size: small;">設定</span></span><br />apwalの設定はapwal configurationかコマンドラインから<blockquote>apwal --edit (--config)</blockquote><br>skippy-xd.rcでは <br><blockquote>rbottom = apwal ,NULL</blockquote><br>四隅で設定を変えたいなら<br><blockquote>lbottom = apwal --config /home/user/.apwalrc_lb.xml ,NULL</blockquote><br>といった具合に--configをつけて設定ファイルを読ませる。<br>(名前にNULLを設定しておくとポップアップが出ません。)<br><br>apwalは"カーソル位置を基点にアイコンを出す"ランチャーなのでハードキーに割り当てるとどこにアイコンが出るか判りません。(skippy-xd側でXWarpPointerとかを呼び出せば解決できる?)<br /><br /><span class="Apple-style-span" style="color: #38761d;"><span class="Apple-style-span" style="font-size: small;">本家</span></span><a href="http://apwal.free.fr/">http://apwal.free.fr/</a><br /><br /><span class="Apple-style-span" style="color: #38761d;"><span class="Apple-style-span" style="font-size: small;">変更点</span></span><br />オリジナルでMaemoのアイコンを使うと<div align="center" class="section"><img alt="wayv" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/apwal/screenshot05_s.png" width="400" /><div class="title"><center><span style="color: #38761d; font-size: 85%;">こういうこと</span></center></div></div>になるので原始的forループとgdk_pixbuf_scale_simpleを用いてアイコンを48x48内に等縮して表示するようにしました。<br />GDK_INTERP_NEARESTだし速度低下はそんなに無いと思うけど、気になる人は48x48のアイコンを自前でつくって設定すればよろし。<br />apwalのコンフィグ後にapwal自体が縮小したアイコンを作ってどこかに保存しておくのがベスト?<br /><br /><span class="Apple-style-span" style="color: #38761d;"><span class="Apple-style-span" style="font-size: small;">そのほか</span></span><br />apwalって発音がわからねえ(さすがフランス製だ!)<br />gtkじゃないNetbook Laucher(netbook-launcher-efl)があるらしいので試してみる予定。マツコDXの如き鈍重さで動くだろう<br /><br /><br /><span class="Apple-style-span" style="color: #38761d; font-size: small;">はてなユーザーのように長くて衒学趣味的でスノッブ丸出しに書いてみた持論<span class="Apple-style-span" style="color: #cc0000; font-size: small;">*1</span>、もしくはちんぷんかんぷんなキャプション</span><span class="Apple-style-span" style="color: #cc0000; font-size: small;">*2</span><br />最速インターフェースは紙とペンじゃないかと思っている門外漢ですが、<br />skipy-xd+wayvが技術的興味を他にしては実用性ゼロなのは明白です。<br />SwapKey押す -> キーを押すか四隅をタップ -> 図形を書く<br />この3ステップでは手の移動距離(=時間的コスト)があまりに大きい。<br />そのうえn8x0はサイズからして猪木とスタパ先生以外の日本人には片手で扱えない代物で<span class="Apple-style-span" style="color: #cc0000; font-size: small;">*3</span>、そもそものモバイル機器におけるジェスチャー認識のレーゾンデートル―すなわち"片手では厳しい正確なタップの代替"―を根本的に否定してしまっている。<br />いっぽうでSkippy-xd+dmenuは、なるほど<br />SwapKey押す -> キーを押して起動<br />という2ステップでのアプリ起動が可能だけれども、そもそも<br /><ul><li>キーボードを開くので片手操作不可能</li><li>n800ユーザーは使えない</li></ul><br />という難点がある。<br />ここで<br />SwapKey押す->SwapKey押す->ホーム画面<br />という多分Skippy-xdによってもたらされる最も大きな恩恵である所のショートカットを<br />SwapKey押す->SwapKey押す->なんらかのランチャ->SwapKey押す->ホーム画面<br />であるとか<br />SwapKey押す->SwapKey押す->ホーム画面->SwapKey押す->なんらかのランチャ<br />という風に組み換えるのが現時点で出しうる最適解だと考えるが、<br />最適解を出してしまうと手段の目的化というモバイラーにとっての最大の目的としばらくさよならしなくてはならなくなるので、<br />SwapKey押す -> キーを押すか四隅をタップ -> アイコン型ランチャー起動<br />という解決に落ち着きましたよ。<br />あ、Skippy-xd自体アイキャンディー以外の何者でもないという事実には目をつぶっている。<br /><br /><br /><span class="Apple-style-span" style="color: #cc0000;">*1</span><br />過度な一般化はいつも楽しく、後で読み返すとイヌのおとしもの並み<br /><span class="Apple-style-span" style="color: #cc0000;">*2</span><br />まるでスペインの宗教裁判のようだ<br /><span class="Apple-style-span" style="color: #cc0000;">*3</span><br />通称ドラゴンころし<br /><br /><br />Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-45090284176065356712010-02-18T00:24:00.002+09:002010-02-22T15:28:29.673+09:00[Nokia N810] PowerVRMBXドライバキター<div class="separator" style="float: none;"><img align="right" alt="世界をかえさせておくれよ" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/pvrblogicon.png" /></div>
<a href="http://focus.ti.com/general/docs/wtbu/wtbugencontent.tsp?templateId=6123&navigationId=12700&contentId=27458">TI's OMAP Gaming SDK and Tools</a><br />にはまだ出てないですが、gamingonomap@list.ti.comにかくメールしてExtraNetsのURLとパスワードをもらえばOMAP24xx_MBX_K2621_N8xx_v3535630.zipとやらが手に入るらしい。<br />my.TIのアカウントは大分前に取得しましたが、やっぱりメールする必要があるんですね。。。<br />依然エンドユーザー向け品質ではないし、カーネル焼直したり面倒っぽいので、いっそ<a href="http://wiki.maemo.org/Diablo_Community_Project">コミュニティSSU</a>出るまで待ってしまおうか。<br /><br /><b>追記:</b><s>メールしなくてもmy.TIトップページに出るっぽい?<br />areas of interestを適切に設定する必要があるとか?</s><br />それから本文に全然関係ないですが、QuasarMediaPlayer最新版( 0.96r188r31)がdiabloのextras-develいりしました。<br />maemo向けにもechoテーマ向けのQt3色設定とかQscrobblerが閉じられない問題の解決とかいろいろ更新があるのでぜひ。<br />それにしてもQt3をextras-develに入れるの大変でした。(debianのをほとんどそのままもってきただけなんだけど)<br /><b>追記2:</b>メール必須ですSupercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-7164951550345541562010-02-13T03:28:00.001+09:002010-02-14T14:47:30.668+09:00[Nokia N810] MPlayer SVN-r30541-4.3.2 (C) 2000-2010 MPlayer Team<div class="separator" style="float: none;"><br /><img align="right" alt="光のロック" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/mplayercacablogicon.png" /></div><br /><div style="width: 460px; margin: 0 20px 10px; padding: 10px 10px 10px 30px; border: #D9D9D9 solid; border-width: 1px 0;"> <backquote>たまには人に親切にしようよ楽しいよ、と言ったばかりにひとりの男が木に釘付けにされてから二千年近く<br /><div align=right >-- <cite><a href="#">銀河ヒッチハイクガイド</a></cite></div></backquote></div><br />いまだに人間はブログを書いてしまう罪な生き物でもあるので、こんな時間に更新。<br />MPlayer SVN-r30541-4.3.2<span class="Apple-style-span" style="color: #cc0000; font-size: small; font-weight: normal;"><a href="#f1" name="1"><span class="Apple-style-span" style="color: #cc0000; font-size: small; font-weight: normal;">*1</span></a></span>でH.264再生できました。<br />とはいえ、rc1,rc2よりは格段に軽いものの、gstreamerには勝てませんでした。DSPつよし<span class="Apple-style-span" style="color: #cc0000; font-size: small;">*2</span><br /><br /><b>ファイル:</b> <a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/mplayer_r30541-4.3.2.gz">mplayer_r30541-4.3.2.gz</a><br /><br /><b>いきさつ:</b><br /><a href="http://do1not3panic8.blogspot.com/2010/02/nokia-n810-gstreamergst-ffmpeg-vs_08.html">先日のポスト</a>にこんなコメント<br /><div style="width: 460px; margin: 0 20px 10px; padding: 10px 10px 10px 30px; border: #D9D9D9 solid; border-width: 1px 0;"><backquote>>r30479<br />1月終わりぐらいのものですか。ならもっと新しいrev使った方が良いかと。<br />ffmpegのr21696-r21705において、更なるarmv6向けの最適化が入ったようですし。<br /><div align=right >-- <cite><a href="#">匿名さん</a></cite></div></backquote></div><br />を頂いたので、さっそくsvn update。<br />出来上がったバイナリでh264なファイルを再生してみたところ、前回と同じでさっぱりダメ。<br />苦し紛れにlibavcodec以下h264と名の付くファイルを<br /> -mfpu=vfp -mfloat-abi=softfp -mcpu=arm1136jf-s<br />ではなく<br /> -mcpu=arm1136jf-s<br />オプション付きでリコンパイルしたところ、再生できるようになりました。<br /><br />それから前回書き忘れていたんですが、asは<a href="http://www.codesourcery.com/">CodeSourcery</a>(http://www.codesourcery.com/)の新しい奴(GNU assembler version 2.19.51 (armv6l-unknown-linux-gnueabi) using BFD version (GNU Binutils) 2.19.51.20090709)を使ってます。<br /><br /><span class="Apple-style-span" style="color: #cc0000; font-weight: normal;"><a name="f1" href="#1"><span class="Apple-style-span" style="color: #cc0000; font-weight: normal; ">*1</span></a></span><br />3.4.4だったのはmaemoパッチのせい?<br />俺の中の怠け者の血が騒ぐので(つまりめんどくさいので)未確認。<br /><span class="Apple-style-span" style="color: #cc0000;">*2</span><br />公園で全裸になって逮捕されてもテレビに復帰できるレベル<span class="Apple-style-span" style="color: #cc0000; font-size: small;">*3</span><br /><span class="Apple-style-span" style="color: #cc0000;">*3</span><br />誰とは言ってないし、鶴瓶師匠なんて生放送で”出し”ましたが大丈夫だったんですよ批判してる訳じゃないんですよジャニーズファンのみなさん<br /><br /><b>その他:</b><br /><ul><li>Maemo5向けにmplayerをポートしてる人がMaemo4向けにもポートするとかいう噂を聞きました</li><li>XDaliClockですが既にhidonizeされたポートがchinookのextrasにありました。有名アプリケーションだもんなぁ。。(S60でも動くとか)</li></ul>Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-55609723628947288992010-02-12T18:40:00.000+09:002010-02-12T18:56:22.273+09:00[Nokia N810] XDaliClockの記録残しつつ<div class="separator" style="float: none;"><img align="right" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/xdaliblogicon.png" /></div><div align="center" class="section"><img alt="その温もりに用がある" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/xdaliclock/xdalisc_s.png" /></div>記事タイトルにも潜む例の絵(<img alt="ラブソング" height="32" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjud3wNI9URGGYOQNAviwowmkcBk7qLHrAM7b4TmdH_F3uDh2vKOoT97RyTFMnCQx0z1jnEBpoyF8_xFtc8we28EoRiYxsz22icv3a7t4Z98dvOh3PdwM51r_zv2ul_A3TPW2Fr_V_1VAI/s220/dalicon64x64.png" width="32" />)の中のアナログ時計が動くアプリがあったらそれはそれで楽しく、かつ見辛いでしょうが、<br />XDaliClockならデジタル時計の文字がぐねぐね動くので楽しさと見易さが両立<span class="Apple-style-span" style="color: #cc0000; font-size: small;">*1</span>します。<br /><br /><b>ビデオ:</b><br /><object height="344" width="425"><param name="movie" value="http://www.youtube.com/v/sRD4t_siCpc&hl=ja_JP&fs=1&color1=0x234900&color2=0x4e9e00"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/sRD4t_siCpc&hl=ja_JP&fs=1&color1=0x234900&color2=0x4e9e00" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object><br />gst-lauch+ximagesrcでスクリーンキャストもどき<span class="Apple-style-span" style="color: #cc0000;"><span class="Apple-style-span" style="font-size: small;">*2</span></span>をしてみました。<br />再生速度がなんかはやい。<br /><br /><span class="Apple-style-span" style="font-weight: bold;">ファイル:</span><br /><ul><li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/xdaliclock/xdaliclock.gz?attredirects=0&d=1">xdaliclock.gz</a></li><li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/xdaliclock/xdaliclock-maemo1.patch?attredirects=0&d=1">xdaliclock-maemo1.patch</a></li></ul><div><b>オリジナルからの変更点:</b></div><div><ul><li>フルスクリーンキー(F6)でフルスクリーン</li><li>スワップキー(ESC)で終了</li><li>-fullscreenオプションでNetWMを使うように変更</li></ul></div><span class="Apple-style-span" style="font-weight: bold;">使い方:</span><br />gunzipして/usr/local/bin/とか適当にパスの通ったところに放り込む<br />オプションに関してはxdaliclock -h すれば全部判りますが、<br />-fg で文字色、-bg で背景色指定<br />-bulitinX でフォントサイズ指定。横画面なら-builtin3がいい感じ<br />-cycleでサイケな気分<br />-transparentはskippy-xdの画面で効果あり(重い)<br />-countdown で±百時間内でのカウントダウン/アップ<br /><br />上の動画でやってるように数字キーを押すと文字盤が変化します。<br />わあ!11じ11ぷん11びょうだ!とかやってともだちをおどろかせましょう。<br /><br /><b>ビルド:</b><br /><a href="http://www.jwz.org/xdaliclock/">本家</a>(http://www.jwz.org/xdaliclock/)からxdaliclock-2.30.tar.gzをダウンロード、展開して<br />cd X11 ; ./configure --prefix=/usr && make<br />gtkディレクトリにはgtkバージョンがありますが、まだ未完成のようです。(色指定などが出来ない)<br />フォントサイズを画面サイズに応じて変更してくれてたりと便利な部分もあるのでアップデートに期待。<br /><br /><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><span class="Apple-style-span" style="color: #cc0000;">*1</span></div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">正確には、楽しさと見易さとダリっぽさが三国鼎立している。</div><span class="Apple-style-span" style="color: #cc0000;">*2</span><br />gst-launch ximagesrc ! videoscale ! video/x-raw-rgb,width=400,height=240,framerate=15/1 ! ffmpegcolorspace ! jpegenc ! mux. avimux name=mux ! filesink location=sctest1.avi<br /><br /><br /><b>雑感:</b><br /><ul><li>Mac(Classic|OSX),PalmOS,WebOS,Linux(X)で動くらしい(javascriptのもあるね)</li><li>hildonタスクスイッチャに出るようにした方がいいかな</li><li>-countdownは恋人が東京タワーごと人質に取られた時とかに使えばいいんじゃない</li><li>記事の出だしがなんか翻訳サイトの訳文みたいになってしまった</li><li>記録残しつつ百変華でググッたら4番目にDQNネームのサイトが出てきた<br />ショックは大きく、わたしはかなしんでいる</li></ul><br /><br />Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-88747244590589551332010-02-11T18:49:00.004+09:002010-02-28T18:40:26.502+09:00[Nokia N810] [App Review] 百変華!SVGClock<div class="separator" style="float: none;">
<img align="right" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/svgclockblogicon.jpg" /></div>
<div align="center" class="section">
<img alt="wayv" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/svgclock/svg.png" width="480" />
<br /></div>
微妙に役に立たないアプリを排出(!輩出)する事で一部業界<span class="Apple-style-span" style="color: #cc0000; font-size: small;">*1</span>ではわりと有名らしいと聞かなくもないような気がするこのブログにも、<br />
とうとう、<b>有用なアプリケーション</b>を紹介する日が来てしまいましたまあ落ち着けっ!<br />
。。。息を吐いて、、、吸って、、、吐いて、、、吸って、、、、<br />
吐いて、、、扱って、、、吐いて、、、吸って、、、、<br />
吐いて、、、吐いて、、、吐いて、、、吸って、、、、<br />
<br />
<br />
はい。今"扱"が混じっている事に気付いた人はこんなどうでもいいブログをしっかり読んでしまった事を猛省すべきです。<br />
気付かなかった人は今一度ちゃんと人生を見つめ直してください。<br />
(あんまり見るとゲシュタルト崩壊しますよ)<br />
<br />
そういうわけで、今回紹介するのはSVGClock。<br />
(ユーザー数の少ない)Maemo環境にはありえべからざる100種類以上のスキンが手に入ってしまうデスクトップウィジェットです。<br />
<br />
<b>インストール:</b><br />
1.extras-develを有効にします<br />
2.<a href="http://talk.maemo.org/showthread.php?t=39356">TMOのこのスレッド</a>のファーストポストから<br />
<ul>
<li>SVGClock-1.0.0-1_all.deb</li>
<li>Themes.tar.gz</li>
</ul>
くわえて<a href="http://talk.maemo.org/attachment.php?attachmentid=6953&d=1265547504">svgclock.py.zip</a>
をダウンロード<span class="Apple-style-span" style="color: #cc0000; font-size: small;">*2</span> /home/user/MyDocs/あたりに保存しておきます<br />
3.Xtermを開き<br />
<backquote>$sudo apt-get install gnome-python-desktop librsvg2-2 librsvg2-common hildon-desktop-python-loader python2.5-hildondesktop python2.5-hildon python2.5-gobject python2.5-dbus python2.5-osso python2.5-cairo python2.5-gtk2</backquote><br />
4.SVGClockとデフォルトのテーマをインストール<br />
<backquote>$cd /home/user/MyDocs</backquote><br />
<backquote>$sudo dpkg -i SVGClock-1.0.0-1_all.deb</backquote><br />
<backquote>$tar xvzf Themes.tar.gz</backquote><br />
<s><backquote>$chown -R user:users Themes </backquote></s><br />
5.最新のスクリプトと入れ換え<br />
<backquote>$sudo mv svgclock.py.zip /usr/lib/hildon-desktop/svgclock.py</backquote><br />
(.zipは偽装なのでそのまま移動すればよし)<br />
6.ホーム画面-メニュー-Select applets-SVGClockにチェックを入れOK<br />
7.うまくいけば
<br />
<div align="center" class="section">
<img alt="wayv" height="218" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/svgclock/svg8.png" width="218" />
<div class="title">
<center><span style="color: #38761d; font-size: 85%;">こいつが出てくる</span></center></div>
</div>
<br />
<b>スキンの入れ換え:</b><br />
1.好みのCairo-Clock向けスキンを<a href="http://gnome-look.org/index.php?xcontentmode=186">ココ</a>(Gnome-Look.org)とかからダウンロード、/home/user/MyDocs/Themesに保存<br />
2.Xtermを開いて/home/user/MyDocs/Themes/に移動<br />
<backquote>$cd /home/user/MyDocs/Themes/</backquote><br />
3.デフォルトのテーマを移動<br />
<backquote>(スキン入れかえ一回目)$mv default old.default</backquote><br />
<backquote>(2回目から)$rm default</backquote><br />
4.<backquote>$tar xvzf ukagaka.tar.gz</backquote> だとか<backquote>$tar xvjf kiss.tar.bz2</backquote>だとかしてさっきダウンロードしたテーマを展開<br />
5.そのテーマを有効化(foobarは4.で展開して出てきたフォルダ名)<br />
<backquote>$ln -s foobar default </backquote><br />
6. インストールの6.と同様に今度はチェックをはずしてOK<br />
7. 6.と同様にチェックをいれてOK<br />
<br />
<span class="Apple-style-span" style="color: #cc0000;">*1</span> <br />
マリモ業界?あとガリ業界?
<br />
<span class="Apple-style-span" style="color: #cc0000;">*2</span> <br />
debのバージョンアップがあればsvgclock.py.zipのダウンロード及びインストールの5は必要ありません。<br />
<br />
<b>雑感:</b><br />
<ul>
<li>なにはともあれ作者さんに感謝</li>
<li>作者はTMOでお世話になっている<a href="http://talk.maemo.org/member.php?u=23436">shin</a>さんです。</li>
<li>インストールがやや頻雑(ああそうですか)ですね</li>
<li>まあいったん設定すればそう変えることは無いだろうから問題ないかも</li>
<li>各スキンフォルダ内の.svgファイルを雛形に<a href="http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=Inkscape">Inkscape</a>などでオリジナルの時計が作れます</li>
<li>共通部品である各スキンフォルダ内の.svgファイルを入れ替えればもっと手軽にオリジナルの時計が作れます</li>
<li>JapaneseThemeClockにはちょっと笑った。トトロいいですね</li>
<li>N900でも動くらしい</li>
</ul>Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-15671367508869309882010-02-10T23:50:00.006+09:002010-02-11T12:35:17.892+09:00[Nokia N810] gstreamer(gst-ffmpeg) vs mplayer (SVN-r30479-3.4.4)で H.264+aac再生対決 (2)<div class="separator" style="float: none;">
</div>
<img align="right" alt="言いたいことも言えずに!" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/mplayercacablogicon.png" />
(少ないキューブリック<span class="Apple-style-span" style="color: #cc0000; font-size: small;">*1</span>知識でがんばって書いています)<br />
ハイハイゼア!<br />
<a href="http://do1not3panic8.blogspot.com/2010/02/nokia-n810-gstreamergst-ffmpeg-vs.html">前回のラポスト</a>のグラフは<a href="http://graph.heartrails.com/">HeartRails Graph</a>てえハラーショーなWebサービスで作ったんだ。いくらグルーピーな俺でもこのサイトが如何にキューブリックを偏愛してるかはすぐにわかったぜウジ虫!<br />
ライティライト、今回はmplayerをbuildする訳だが、ソースコードをじっくりかわいがった結果、まるでオープンソース界にそびえ立つクソのようになって、なって、えーっと、<br />
(ハートマン語彙が尽きた)<br />
<br />
さりとてデイジィベルを歌う訳にもいかないので<br />
さっさと結論に入りますと、mplayerのrc1,rc2<span class="Apple-style-span" style="color: #cc0000; font-size: small;">*2</span>ではとても再生できず、最新svnはH.264の判別にすら失敗しました。<br />
(適当半手動パッチが原因?)<br />
かくして、前回の冒頭に戻ってgstreamerの勝ち。<br />
<br />
某不正献金問題に対するマスコミ各社同様に役に立たなくなってしまった(長い修辞)<br />
SMplay(<b>s</b>vnの<b>mplay</b>er)<span class="Apple-style-span" style="color: #cc0000; font-size: small;">*3</span>ですが、<br />
さすが最新ソースというべきか、はたまた例の魔法の呪文<span class="Apple-style-span" style="color: #cc0000; font-size: small;">*4</span>のおかげか、<br />
rc2よりキビキビ動くので、amrとlibcacaサポートを有効にしてコンパイルしてみました。<br />
多分libncurseswも要るのでextras-develにある奴を使ってください。<br />
オマケはlibgstcacasink.so。<br />
<br />
<b>ファイル:</b><br />
<ul>
<li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/libamr_7.0.0.2-maemo1_armel.deb">libamr_7.0.0.2-maemo1_armel.deb</a></li>
<li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/libcaca_0.99.16-maemo1_armel.deb">libcaca_0.99.16-maemo1_armel.deb</a></li>
<li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/mplayer_svn-r30479-3.4.4.gz">mplayer_svn-r30479-3.4.4.gz</a></li>
<li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/libgstcacasink.so.gz">libgstcacasink.so.gz</a></li>
</ul>
<br />
<br />
<b>インストール:</b><br />
<ul>
<li>*.deb : dpkg -i</li>
<li>*.gz : gunzip後、mplayerは/usr/local/bin/だとか適当な所へ、<br />libgstcacasink.soは/usr/lib/gstreamer-0.10/へ</li></ul>
<br />
<b>使いかた:</b><br />
<blockquote>
mplayer_svn-30479-3.4.4 -vo caca -vf scale -tv driver=v4l2:width=192:height=144:noaudio -fps 15 tv://</blockquote>
だとか<br />
<blockquote>
gst-launch v4l2src ! 'video/x-yuv-rgb,width=320,height=240,framerate=8/1' ! ffmpegcolorspace ! cacasink</blockquote>
<br />で前出のネオ拡張現実。<span class="Apple-style-span" style="color: #cc0000; font-size: small;">*5</span><br />
<div align="center" class="section">
<img alt="neoar" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/libcaca_gst.jpg" />
<div class="title">
<center><span style="color: #38761d; font-size: 85%;">コレです</span></center></div>
</div>
<br />libcaca_0.99.16-maemo1_armel.debに同梱の<br />
<div align="center" class="section">
<img alt="cacaview" height="397" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/cacaview.png" width="478" />
<div class="title">
<center><span style="color: #38761d; font-size: 85%;">cacaview</span></center></div>
</div>
<br />は"cacaview necofolder/koneko/*.jpg"(imlib2が要ります)<br /> <br /><br /><span class="Apple-style-span" style="color: #cc0000;">*1</span><br />声に出していってみよう!モバイラーならゾクッとするはず。<br />キュー、ブリック。<br /><span class="Apple-style-span" style="color: #cc0000;">*2</span><br />extrasにある1.0rc1と、TMOの<a href="http://forums.internettablettalk.com/showthread.php?t=18231">このスレッド</a>(http://forums.internettablettalk.com/showthread.php?t=18231 )にあるbundyo氏版rc2(SVN-r26265-3.4.4)<br />オプションはほとんどmaemoデフォルトのmplayer.conf +<br />-correct-pts -noframedrop -vfm ffmpeg -lavdopts fast:skiploopfilter=all<br /><span class="Apple-style-span" style="color: #cc0000;">*3</span><br />その長く果てしないコンパイルの間にN810が二回落ちたことで知られている。<br /><span class="Apple-style-span" style="color: #cc0000;">*4</span><br />
-mfpu=vfp -mfloat-abi=softfp -mcpu=arm1136jf-s<br />高度に発達した科学や愛の実在並に理解不能デス。<br /><span class="Apple-style-span" style="color: #cc0000;">*5</span><br />よくよく考えるとネオのは拡張<b>仮想</b>現実ですね。<br /><br /><b>ビルド:</b><br />libamr は<a href="http://www.penguin.cz/~utx/amr">ここ</a>(http://www.penguin.cz/~utx/amr)から<br />libcaca は<a href="http://caca.zoy.org/">こちら</a>(http://caca.zoy.org/)から<br />mplayer は<a href="http://www.mplayerhq.hu/MPlayer/releases/mplayer-export-snapshot.tar.bz2">あちら</a>(http://www.mplayerhq.hu/MPlayer/releases/mplayer-export-snapshot.tar.bz2)から<br />mplayerのmaemopatchは<a href="http://www.mediafire.com/?noc0lynd0gi">そこら</a>(http://www.mediafire.com/?noc0lynd0gi)から 持ってきました。<br />libgstcacasinkは<a href="http://www.gstreamer.net/src/gst-plugins-good/">このgstreamer-plugins-good</a>(http://www.gstreamer.net/src/gst-plugins-good/)の中にあります。<br /><br />mplayerのconfigureは<br />--enable-armv5te --enable-armv6 --enable-armvfp --enable-largefiles --prefix=/usr --confdir=/etc/mplayer --enable-alsa --disable-ossaudio --enable-menu --disable-md5sum --enable-freetype --enable-esd --enable-sdl --enable-mad --enable-caca --enable-fbdev --disable-mencoder --enable-libopencore_amrnb --enable-libopencore_amrwb<br />こんなかんじで、patchしてからconfig.makに例の呪文をつけました。<br />そのあと/usr/lib以下libamrnbからlibopencore_amrnbにシンボリックリンクしてmake。Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com1tag:blogger.com,1999:blog-5968274348745844907.post-35954284581709573662010-02-08T18:45:00.001+09:002010-02-08T18:45:00.877+09:00[Nokia N810] gstreamer(gst-ffmpeg) vs mplayer (SVN-r30479-3.4.4)でH.264+aac再生対決 (1)<div>
<div class="separator" style="float: none;">
<img align="right" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/libcacablogicon.jpg" /></div>
<div align="center" class="section" style="margin-bottom: 2px;">
<img alt="wayv" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/libcaca1.png" /><div class="title">
<center><span style="color: #38761d; font-size: 85%;">どうもみなさんボンジュール</span></center></div>
</div>
</div>
<div>
<br />
最近は動画共有サイトに高画質化の波が押し寄せてきているようで、N810ではちょっとつらい場面も増えてきたのでいろいろ試行錯誤しました。</div>
<div>
結論からいえば、gstreamerの勝ち。しかし試合に勝って勝負に負けた感じ。</div>
<div>
判りやすく言うと、gstreamerもmplayerも力不足でした。</div>
<div>
<br /></div>
<div>
収穫はmplayerでamr(nb/wb)が再生できるようになったこと。</div>
<div>
よくあるガラケーの.3gpで音が出るようになります。</div>
<div>
(標準のmediaplayerでは前から再生できたけど、あんなの重くて使ってられません。)</div>
<div>
動画を文字列で表示する、いわば<a href="http://aa-project.sourceforge.net/gallery/">aalib</a>(http://aa-project.sourceforge.net/gallery/)のカラー版、<a href="http://caca.zoy.org/">libcaca</a>(http://caca.zoy.org/)をくっつけてみたりもしました(↑↓)。<br />
<br /></div>
<div>
<div align="center" class="section">
<img alt="wayv" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/libcaca2.png" />
<div class="title"><center><span style="color: #38761d; font-size: 85%;">縮小するとわかりやすい</span></center></div>
</div>
</div>
<div>
<br /></div>
<div>
<div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
カメラと繋げば、コレが<a href="http://www.youtube.com/watch?v=WR2GUWrxTmU">拡張現実</a>(http://www.youtube.com/watch?v=WR2GUWrxTmU)ってやつだ!(<a href="http://onyx.chattanoogastate.edu/~jack/matrix/">ネオ的な意味で</a>)。</div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<div>
<div align="center" class="section">
<img alt="wayv" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/libcaca_gst.jpg" />
<div class="title">
<center><span style="color: #38761d; font-size: 85%;">某アニメ風にZaurus</span></center></div>
</div>
</div>
<br /></div>
N8x0とおなじCPU(OMAP2420)を搭載したガラケーでH.264再生してたりしますし、</div>
<div>
PowerVRMBXといっしょにIVAもオープンになったらもうちょっと望みが出てくるのかも。</div>
<div>
<br /></div>
<div>
<div>
<br /></div>
<div>
まずgtreamer。</div>
<div>
よさげなフロントエンドがなかったので<span class="Apple-style-span" style="color: #cc0000;"><span class="Apple-style-span" style="font-size: small;">*1</span></span>、今回はコマンドラインからgst-launchを使います。</div>
<div>
gst-lauchはべつだん動画再生ソフトという訳ではないので</div>
<div>
<ul>
<li>シークや音量調節ができない</li>
<li>今回はffmpegを使うので結局中身はmplayerと同じ(むしろバージョンが古い)</li>
</ul>
</div>
<div>
などはっきり言って良いとこ無しなのですが、</div>
<div>
<div align="right" class="section" style="float: right;">
<a href="http://graph.heartrails.com/"><img border="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/players.png" />
</a><div class="title">
<center><span style="color: #38761d; font-size: 85%;">修造本気出せ</span></center></div>
</div>
N810でのgstreamerにはmplayerにはない大きな利点がひとつあります。<br />
<br /></div>
<div>
そう、dspmp3sinkやdspaacsink、dsppcmsinkなどのエレメントから、dspにアクセス出来るのです。</div>
<div>
たとえばmp3ではmplayerの固定小数点化されたlibmadと、dspでの再生に大きな差はないのですが、</div>
<div>
これがaacとなると、現状手に入るmaemo向けmplayer(libfaad)ではやたらとCPUを食います。</div>
<div>
ただでさえ重いh264ですので、少しでも他の計算は少なくしておきたいところです。</div>
<div>
(ただし、フツーのカーネルではdspを使っている間cpuクロックが330Mhzに固定されるので、トレードオフではある)<br />
<br /></div>
<div>
さっそくやってみます。</div>
<div>
最初から入っているgst-ffmpegはいろいろ機能が削除されているので、<a href="http://www.gstreamer.net/src/gst-ffmpeg/">ここ</a>(http://www.gstreamer.net/src/gst-ffmpeg/)からソースを手に入れてbuildします。</div>
<div>
といってもあまりに新しいとgstreamer本体のバージョンが古すぎて怒られるのでちょい古めをチョイス。今回は0.10.2ぐらいにしておきました。</div>
<div>
展開してconfigureし、いざmake、といきたいところですが</div>
<div>
ここでMakefileに魔法の呪文を追加します。<br />
<blockquote>
-mfpu=vfp -mfloat-abi=softfp -mcpu=arm1136jf-s</blockquote>
</div>
<div>
これらをgccの引数にするとすこしだけarmに最適化されるらしいです。<br />
バイナリサイズは確実に小さくなりますね。(Autobuilderでつくったバイナリのサイズが自前ビルドと変わるのはコレのせい?)</div>
<div>
<blockquote>
for FIL in `find . -name Makefile` ; do cp $FIL $FIL.bak ; sed -e "s/-O2/-O2 -mfpu=vfp -mfloat-abi=softfp -mcpu=arm1136jf-s/g" $FIL.bak > $FIL ; done</blockquote>
</div>
<div>
こんなかんじで大雑把にやりましたが、環境変数とかで一括指定する方法がある気もする。</div>
<div>
makeできたら、<br />
<blockquote>
mv /usr/lib/gstreamer-0.10/libgstffmpeg.so /usr/lib/gstreamer-0.10/libgstffmpeg.so.old.maemo</blockquote>
として、 gstreamer0.10-ffmpeg-ossoのバックアップをとり、<br />
<blockquote>
mv .lib/libgstffmpeg.so /usr/lib/gstreamer-0.10/ </blockquote>
で出来上がったlibgstffmpeg.soを/usr/lib/gstreamer-0.10に放り込んでいよいよ再生。</div>
<div>
<blockquote>
gst-launch filesrc location=hyper_egashira_kousien_2nd_008.flv ! ffdemux_mov_mp4_m4a_3gp_3g2_mj2 name=demuxer demuxer. ! queue ! ffdec_h264 !xvimagesink force-aspect-ratio=yes demuxer. ! queue ! dspaacsink</blockquote>
</div>
<div>
うーん。試してみたのは512x288/H.264/128kAACで動きの少ない動画だったのでそこそこいけましたが、動きの激しいシーンではだいぶコマ落ちしました。</div>
<div>
好印象だったのは再生速度が変わらないところですね。<br />
mplayerだと間延びしたように音声の再生がおくれるのですが、gstreamerだと映像と音声がずれません。<br />
<b>ファイル: <span class="Apple-style-span" style="font-weight: normal;"><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/libgstffmpeg.so.gz">libgstffmpeg.so.gz</a></span></b><br />
<b><span class="Apple-style-span" style="font-weight: normal;"><br /></span></b><br />
<span class="Apple-style-span" style="color: red;">*1</span>Totem以外にも日本の方が作られている<a href="http://www.ryuuo.com/movie/">Yuumo</a>(http://www.ryuuo.com/movie/)なんてのがありますが、多分一番シンプルなのはMarc-André Lureauさんが書かれて<a href="http://felipec.wordpress.com/">Felipe Contrerasさん</a>(http://felipec.wordpress.com)がメンテしている<a href="http://github.com/felipec/gst-player">gst-player</a>(http://github.com/felipec/gst-player)。<br />
gnome関連のライブラリがいらなくてmakeは楽チン、Youtubeのflvだとかvimeoのmp4はdspを使って再生してくれますし、シークもできますが、今回再生した動画とはどうも相性がわるいようでした(自動判別が失敗する)。<br />
もちろん使い分ければ便利です。フルスクリーンキー(F6)が効くようにしたバイナリをおいておきます。使いかたはgst-player /path/to/yourfile.hoost.ernesto<br />
<b>ファイル: <span class="Apple-style-span" style="font-weight: normal;"><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/mplayerrc3/gst-player.gz">gst-player.gz</a></span></b><br />
<br />
以下もっと余談。Felipe氏は<a href="http://github.com/felipec/gst-omapfb">gst-omapfb</a>(http://github.com/felipec/gst-omapfb)なんてのにも関わっていて、こりゃ便利そうだとmakeしてみたのですが、N810では岸辺露伴ばりに動きません。<br />
<br />
<blockquote>
#gst-launch ~~~ ! omapfbsink</blockquote>
<blockquote>
Setting pipeline to PAUSED ...</blockquote>
<blockquote>
ERROR: Pipeline doesn't want to pause.</blockquote>
<blockquote>
Setting pipeline to NULL ...</blockquote>
<blockquote>
FREEING pipeline ...</blockquote>
<br />
どうやらフレームバッファのmmapで失敗してるようなので、mplayerのvo_nokia770.c(-vo omapfb)からコードを失敬していじっていると、ひとたび再生すればもれなく再起動まで画面をぶっ壊すおののき系最恐バイナリが出来てしまい、あえなくお蔵入りとなりました。<br />
<br />
<br />
さてと、随分と長くなりました(約500わたし彼女)。よってmplayerとlibcaca編は<a href="http://www.google.com/search?&q=%E3%82%AD%E3%83%BC%E3%83%88%E3%83%B3%E5%B1%B1%E7%94%B0">後半へつづく</a>。</div>
<div>
<br /></div>
</div>
</div>Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com4tag:blogger.com,1999:blog-5968274348745844907.post-35330877695247422152010-02-02T18:49:00.052+09:002010-03-01T19:12:31.536+09:00[Nokia N810] wayVは愉快なジェスチャなランチャ<div class="separator" style="float: none;">
<img align="right" border="0" height="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAIRg2nPstGuhcqyJpUgQZAGVGKNWsUIqZPhPRytTv9xHj5mnk9KgkK5Rl-93u01IRfsnnp3GMLkQcDlYyL-SfIest3b9OsFe4WGZMMVRAJDS1WP5bBEO0TKF2P__B4ekwR5TyBVKIPY8/s320/wayvicon.jpg" /></div>
<div align="center" class="section">
<img alt="wayv" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/wayv/wayv1.png" />
<div class="title">
<center><span style="color: #009900; font-size: 85%;"><span class="Apple-style-span" style="color: #38761d;"><span class="Apple-style-span" style="font-size: x-small;">eは</span></span><a href="http://kimitakeblog.net/item/658"><span class="Apple-style-span" style="font-size: x-small;">kimitakeさんとこのEBview</span></a><span class="Apple-style-span" style="color: #38761d;"><span class="Apple-style-span" style="font-size: x-small;">のe</span></span></span></center></div>
</div>
<br />
N900など当代の加速度センサ入りスマートフォンですと、<br />
例えばハルヒダンス(2番)を踊ってモバイル版AR-MMDアプリを起動するだとか、事態はまさに狂乱の様相を呈してくるのでありますが、<br />
これがN8x0のようなロートル旧世代PDAなら、タッチパネルにマルを描いてメモ帳を起動するくらいですむわけです。<br />
わけなのでwayV+skippy-xdで快適ジェスチャーランチャ生活。はじまる。
<br />
<br />
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<b>インストール:</b></div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
extras-develのdesktopカテゴリ、wayv-maemoより</div>
<div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">
<br /></div>
<b>ビデオ:</b><br />
<object height="344" width="425"><param name="movie" value="http://www.youtube.com/v/dVeRpnBSLvQ&hl=ja_JP&fs=1&color1=0x234900&color2=0x4e9e00">
</param>
<param name="allowFullScreen" value="true">
</param>
<param name="allowscriptaccess" value="always">
</param>
<embed src="http://www.youtube.com/v/dVeRpnBSLvQ&hl=ja_JP&fs=1&color1=0x234900&color2=0x4e9e00" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object><br />
<br />
<b>その他:<span class="Apple-style-span" style="font-weight: normal;"></span></b><br />
本家は<a href="http://www.stressbunny.com/wayv/">こちら</a>(http://www.stressbunny.com/wayv/)。<br />
<br />
skippy-xd.rcでの設定は<br />
<blockquote>
lbottom = /usr/bin/wayv /home/user/.wayv.skippy.conf ,wayV</blockquote>
てな感じでOK。
(.wayv.skippy.confは自動でインストールされます。)
<br />
<br />
設定はAppMenu - wayV configurationか、/home/user/.wayv.skippy.confを任意のエディタで編集することで出来ます。<br />
(wayV configurationの実体はleafpad(無ければosso-notes)に/home/user/wayv.skippy.confを渡すだけのシェルクスリプトです。)<br />
confファイルはデフォルトでは/etc/wayv/wayv.confですが、(上記のように)/usr/bin/wayvの第一引数に指定することで別の物も使えます。<br />
したがって、skippy-xd.rcにおけるrtop rbottom ltop lbottomにそれぞれ違う設定のwayVを割り当てるなんてことも可能です(覚えてらんないけど)。<br />
<br />
confファイルでは、<br />
プリセットされた各図形にconfファイル後部に記載されたactionを割り当てていきます。<br />
手軽で認識率が高い図形はc / i - L バックスラッシュ ダウンバックスラッシュ shape1(逆L)などですかね。<br />
コレだけではバリエーションが足りないという人は、confファイル冒頭の<br />
Think = "Pda"<br />
をコメントアウトし<br />
# Think = "Pda & Vector"<br />
の#を外すと、各図形の書き方向も考慮されるようになり、ちょっとハッピーです。<br />
<br />
<br />
本来、wayVは常駐型アプリケーションです。<br />
しかしながら、随時起動させても十分速く、またN810的にはその方が便利なので、若干改造しました。<br />
具体的にはsrc/process.cの分岐条件WA_EXEC(抄出)<br />
<br />
<blockquote>
case WA_EXEC:</blockquote>
<blockquote>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~</blockquote>
<blockquote>
/* Free up the parsed commandline */</blockquote>
<blockquote>
for(a = 0; temp[a] != NULL; a++)</blockquote>
<blockquote>
free(temp[a]);</blockquote>
<blockquote>
<br /></blockquote>
<blockquote>
free(temp);</blockquote>
<blockquote>
<b> exit(0); </b></blockquote>
<blockquote>
break:</blockquote>
のbreak一歩手前にexit()を挿入することで、アプリケーションが起動した後、すぐに終了するようになっています。<br />
<br />
そのほか、<br />
dbus-send --session --print-reply --dest=org.freedesktop.Notifications \<br />
/org/freedesktop/Notifications org.freedesktop.Notifications.SystemNoteInfoprint\<br />
string:<br />
を利用してwayv.skippy.conf内の各actionで指定されたprocess = exec "foo"のfoo部分をポップアップ表示します.。<br />
<br />
<br />
<br />
<br />
<br />Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-5937794969261719542010-01-27T23:23:00.002+09:002010-02-04T16:00:15.453+09:00[Nokia N810] minivmacでN810はサクサクレトロiTablet(iSlate)になる。<div class="separator" style="float: none;">
<img align="right" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/minivmac/minivmacicon.jpg?attredirects=0" /></div>
<table align="center" border="0" cellpadding="5" cellspacing="0"><tbody></tbody><tbody><tr><td><img border="2" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/minivmac/minivmacs.png" vspace="0" width="400" /></td></tr></tbody></table><br />BasiliskII(漢字Talk7)なんかより、もっとレトロフューチャーするために、MacintoshPlus on N810と洒落込んでみました。<br />使うのは<a href="http://minivmac.sourceforge.net/">minivmac</a>。<br />WindowsやOSX、Linuxは言うに及ばず、PocketPCだとかiPhoneにも移植されているマルチな奴です(メイドロボじゃないよ)。<br />既にTMO(というかITTの頃のハナシだけど)で<a href="http://talk.maemo.org/showthread.php?t=16361">配布されてます</a>が、画面が小さかったり、本家で新バージョンが出ていたりするので、自分でbuildしてみることにしました。<br /><br /><br /><span style="color:#2BB42D"><span style="font-size:x-small">minivmacのbuildはすさまじくハッキッシュ</span></span><br />あ…ありのまま 起こった事を話すぜ!<br />「ソースコードをダウンロードしたと思ったらディスクイメージが入っていた」<br />な、何を言っているかわからねーと思うが、俺も何が起こったのかわからなかった。<br />本家に「v3.1.3のソースコードはディスクイメージの形で配布され、buildするにはv3.0.0以降のminivmacが必要」<br />とか書いてあって頭がどうにかなりそうだった。<br /><br />が、よく考えると、もうどうにかなってるので大丈夫でした。<br /><br /><br /><span style="color:#2BB42D"><span style="font-size:x-small">さて整理すると、</span></span><br />*各プラットフォーム向けソースコードを別々に配布するのはもうメンドーだ<br /> →*マルチプラットフォームなconfigureみたいなのがあるといいよね<br /> →*必要なのは共通の実行環境か<br /> →*minivmac使いが共通して持ってるモノってなんだ?<br /> →*一つ前のバージョンのminivmacはあるよな<br /> →*minivmacを実行環境にしたソースコード生成アプリを書けばいいんだ!<br />ということなのではないでしょうか。(頭に*の付いた行は妄想です。)<br />なんか鶏卵問題というか、自己言及に陥りそうですが、<br />win/mac/linux向けには公式でバイナリ配布してるので、buildはあくまでもチューンしたい人向けのオプションということなんでしょう。<br /><br />このソースコードジェネレーター(たぶん言い方があるよなぁ)はBasiliskIIなど他のエミュレータ上のみならずMacPlus実機でも動いちゃったりします。<br />しかしながら、minivmacを使うと出来上がったソースコードのアーカイブをホストのディスクに書き出してくれるので便利がいいです。<br /><br /><br /><span style="color:#2BB42D"><span style="font-size:x-small">そういうわけで</span></span><br />とりあえず上記TMOのminivmacをつかってやってみます<br />(スクリーンショットは便宜上800x480ですが、ホントのTMO版minivmacは512x342です。)<br /><br />minivmac、Disk603.dsk、vMac.romを一つのディレクトリーにまとめて、<br /><code>minivmac Disk603.dsk /path/to/sourcecode/minivmac-x.x.x.src.dsk</code><br />として起動。<br /><table align="center" border="0" cellpadding="5" cellspacing="0"><tbody></tbody><tbody><tr><td><img border="2" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/minivmac/minivmac4s.png" vspace="0" width="400" /></td></tr><tr><td class="tx12px"><center><span style="color: #009900; font-size: 85%;">ちょっとかぶってますが</span></center></td></tr></tbody></table><br />buildをダブルタップするとテキストウィンドウが開くので<br />そこに<a href="http://minivmac.sourceforge.net/doc/build.html">本家のマニュアル</a>を読みつつオプションを入れます。<br />-t lx86 -e bgc -api xwn -no-asm -eol unx -hres 800 -vres 480 -arc tar<br />最終的にはこんな感じに。<br />-t lx86 x86とかついてますがアーキテクチャ依存のコードは吐きません。<br />-api gtk は微妙に機能が削れるのでやめて-api xwn。<br />-no-asm はpowerpc環境以外意味をなさないらしいですが気休めに。<br />-sound 1 だとalsaをつかって音をだしてくれるようですが、esddspも効き目無しで結局off(デフォルトでoff)<br /><table align="center" border="0" cellpadding="5" cellspacing="0"><tbody></tbody><tbody><tr><td><img border="2" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/minivmac/minivmac3s.png" vspace="0" width="400" /></td></tr><tr><td class="tx12px"><center><span style="color: #009900; font-size: 85%;">準備が出来たらGo.</span></center></td></tr></tbody></table><br />ウィンドウがアクティブでないと(前面にないと)処理が止まる?ので御注意を。<br />しばらくするとminivmacと同じディレクトリにソースコードのtarボールがつくられるので、tar xvfで展開してcd,make。<br />うまくいけばminivmacが完成。<br />N810上でも完成。<br />はしたのですが、動作速度がうまく調節できず、爆速で動いてしまうバイナリになりました。<br />まあどうってことはありません。使わないし(えっ)。<br />しかしながら、このままだと、n810ではフルスクリーン(ctrl+F)時にカーソルがヘンな動きをしてしまいます。<br />wmctrl でフルスクリーンにするとまともなので、windowmanagerの機能をつかってフルスクリーンになるように改造してみました。<br /><br /><span style="font-weight: bold">ファイル: </span><br /><ui><li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/minivmac/minivmac.xwn.hres.gz">minivmac.xwn.hres.gz</a></li><li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/minivmac/minivmac-3.1.3-lx86-xwn-fullscreen.patch.gz">minivmac-3.1.3-lx86-xwn-fullscreen.patch.gz</a></li></ui><br /><br /><table align="center" border="0" cellpadding="5" cellspacing="0"><tbody></tbody><tbody><tr><td><img border="2" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/minivmac/minivmac2s.png" vspace="0" width="400" /></td></tr><tr><td class="tx12px"><center><span style="color: #009900; font-size: 85%;">Linux Mac Mac 偽Mac(mlwm)!</span></center></td></tr></tbody></table><br /><br />*あんまり関係ないですが、appleからiTabletが送られてきました。テストして欲しいそうです。<br />Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-1775751059868390902010-01-24T07:40:00.000+09:002010-01-24T07:40:00.784+09:00[Nokia N810] [Nokia N900] N8x0に及ばぬ一点を越えるためN900はusbipの手を
借りてUSBホストになるメモメモ。<br /><a href="http://talk.maemo.org/showthread.php?p=490292">TMO</a><br /><a href="http://usbip.sourceforge.net/">本家</a><br />n8x0をサーバーにすればモバイルでもOK.<br />んでもUSBフラッシュメモリ/HDDはどうせWifi経由ならSambaのほうがオーバーヘッドが少なそう。<br />HIDもsynergyかBlueMaemoでOK.<br />当然マニアックな使いかた限定か。<br /><br />----<br />NexusOneは液晶綺麗すぎでしょう。OLEDスゴい。RAM512Mも魅力的だ。電子コンパスは3軸。どうするどうする。Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-89925656212874873442010-01-24T01:09:00.001+09:002010-01-24T01:25:27.367+09:00[Nokia N810] 結局dillo2.1.1は改造され適当なパッチが残される。<table align="center" border="0" cellpadding="5" cellspacing="0"><tbody></tbody><tbody><tr><td><img alt="dillo google" border="2" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/dillo_google/dillo.png" vspace="0" width="400" /><br /></td></tr></tbody></table><br /><a href="http://do1not3panic8.blogspot.com/2010/01/nokia-n810-googlecojpdillo.html">先日のポスト</a>ではローカルhtml設置で妥協しましたが、結局ソースコードに手を出しました。<br />反省はしていないが公開はしている(diffデス)。<br /><br /><span style="font-weight: bold">変更点 :</span><br /><ui><li>ショットカットキーにwebsearch2を追加<br />→ SelectionのPrimary(例:Dilloで選択した文字列)を新しいタブで検索</li><li>Shift+リンクタップでリンク先を新しいタブに開く機能を追加</li><li>新しいタブを開いたとき、focusがどっかにいってしまうのを修正<br />→ タブを開いた直後、Shift+左右キーでタブ移動可能に</li></ui><br /><br /><span style="font-weight: bold">ファイル :</span><br /><ui><li>dillo.moded.gz</li><li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/dillo2/dillo_maemo-1.diff.gz?attredirects=0">dillo_maemo-1.diff.gz</a></li></ui><br /><br /><span style="font-weight: bold">詳細 :</span><br /> - ~/.dillo/keysrcか/etc/dillo/keysrcのwebsearch2に設定したショートカットキーから、選択文字列を新しいタブで検索できます。<br />デフォルトはCtrl+g、でも検索ウィンドウを使わないならCtrl+sとかで良いと思います。<br />-----------以下無用のこと-------------<br />パッチを読めばマルわかりですが、バツボタンをミドルクリックしたときの処理をちょっと替えて、かつ、ショートカットキーからその処理を実行するようにしただけです。<br />したがってバツボタンをミドルクリックしてコピーしたURLを開いていたマニアック野郎は、このパッチをあてると、かなしみのひとになるでしょう。<br />ホントは別のwidgetにhandleさせるか、xembed.c辺りをいじくり倒すべきですね。まあ適当パッチですゆえ。<br />-------------------------------------------------<br /><br /> - shift + リンクタップでリンク先が新しいタブに開きます。<br />2.x以前のDilloとか、FirefoxだのchromeだのではフツーShiftではなくてCtrlですが、shift+左右キーがタブ移動に割り当てられていることを鑑みてこうしてみました。<br />ちゅーかデフォでは中クリックからしか新タブに開けないのですが、それってなんかヘン。<br /><br /> - 新しいタブを裏で開いたとき、focusがどっかにいってしまうのを修正。(?)<br />a_UIcmd_open_url_nt()にurlを渡すと新タブで開いてくれるわけですが、裏で開いた後、一度画面をタップしないとタブ移動が出来ないようだったのでmain_areaにfocusするようにしてみました。<br /><br />後は<br /><ui><li>~(チルダ)の処理</li><li>文字エンコード選択</li><li>MatchboxWM固有(たぶん)の問題(focusが変なせいでちょいちょいキー入力が死ぬ)</li></ui><br />あたりが実装/解決されたら嬉しい。<br />おまけで<br />インライン入力(これはfltk2周り?)とか、w3mライクにttp://とembed,objectタグを処理できたり、リンク先を別プログラムに渡せるようになったりしたら楽しいですね。<br />2.1.2が待ち遠しい。Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-68749073767243933202010-01-20T19:43:00.002+09:002010-02-04T17:02:32.660+09:00[Nokia N810] 筆圧検知できますよ (アップデート1)<div class="separator" style="float: none;">
<img align="right" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/xps2blogicon.jpg" /></div>
<a href="http://do1not3panic8.blogspot.com/2010/01/nokia-n810.html">前回</a>の続きです。<br /><br /><table align="center" border="0" cellpadding="5" cellspacing="0"><tbody></tbody><tbody><tr><td><img border="2" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/maemo-pressure-draw/xps5.png" vspace="0" width="400" /></td></tr><tr><td class="tx12px"><center><span style="color: #009900; font-size: 85%;">ポップ野郎!</span></center></td></tr></tbody></table><br />モバ絵するほどの絵心も風流心もないですが、なんとなくアップデート。<br /><br /><span style="font-weight: bold">ファイル :</span><ui><li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/maemo-pressure-draw/xpressure.gz">xpressure.gz</a></li><li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/maemo-pressure-draw/makai-zou.diff.gz">makai-zou.diff.gz</a></li></ui><br /><span style="font-weight: bold">現在のキーマップ :</span><ui><li>スワップキー(ESC) : 終了</li><li>フルスクリーンキー(F6) : ペン色がランダムに変化</li><li>プラスキー(F7) : ペン色の白黒きりかえ <span style="color:#D31C1C"> ←new</span></li><li>D-padセンター : キャンバスリセット</li><li>D-pad左右 : ペンサイズ変更1<span style="color:#D31C1C"> ←new</span></li><li>D-pad上下 : ペンサイズ変更2<span style="color:#D31C1C"> ←new</span></li></ui><br /><span style="font-weight: bold">変更点 :</span><br><ui><li>ペンサイズの調節機能追加</li><li>偽消しゴム機能追加</li><li>名前を変えました</li></ui><br />ペンサイズは<br /><code>(変数1 - 筆圧生データ) / 変数2 = ペン半径</code><br />という計算で決定されます。<br />この変数1および変数2を、それぞれD-Padの左右キー/上下キーで変更できるようにしてみました。<br />変数2が2.5ぐらいだといい感じですね。<br /><br />偽消しゴム機能はペン色の白黒を切替えます。<br />切替える前の色にもどったり、背景色を考慮したりしません。<br /><br />それから勝手にバイナリの名前を変えました。<br />オリジナリティはゼロだけどな!<br /><table align="center" border="0" cellpadding="5" cellspacing="0"><tbody></tbody><tbody><tr><td><img border="2" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/maemo-pressure-draw/xps8.png" vspace="0" /></td></tr><tr><td class="tx12px"><center><span style="color: #009900; font-size: 85%;">まさに外道!</span></center></td></tr></tbody></table><br />Xpressureって和訳すれば謎の重圧?みたいな感じでしょうか。しかも遊星からくるやつ。<br /><table align="center" border="0" cellpadding="5" cellspacing="0"><tbody></tbody><tbody><tr><td><img border="2" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/maemo-pressure-draw/xps6.png" vspace="0" width="400" /></td></tr><tr><td class="tx12px"><center><span style="color: #009900; font-size: 85%;">漫画もいいぜ</span></center></td></tr></tbody></table><br /><p style="text-align: right"><small>Technorati Tags: <a href="http://technorati.com/tag/N810" rel="tag">N810</a></small><br /></p>Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-51829035989176608402010-01-20T18:00:00.023+09:002010-02-04T16:13:47.208+09:00[Nokia N810] google.co.jp/dillo<div class="separator" style="float: none;">
<img align="right" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/dillo_google/dilloiconblog.jpg" /></div>
<div align="center" class="section">
<img alt="dillo1" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/dillo_google/dillo_3.png" vspace="0" width="400" />
<div class="title">
<center><span style="color: #009900; font-size: 85%;"><span class="Apple-style-span" style="font-size: x-small;">□を消します</span></span></center></div>
</div><br>Dilloを使っているとき、<br /><ol>1. 検索したい語句を選択ctrl+tで新タブ開く<br />2. ctrl+hでhomeになっているgoogleへ<br />3. goggle上部の謎フォームボックスの分スクロールダウン<br />4. プラスキーでミドルクリックオン<br />5. フォームをタップしてペースト、エンターで検索</ol>という一連の動作をよく行うのですが、4でなんやかんや間違って選択した結果、<br /><div align="center" class="section">
<img alt="dillo1" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/dillo_google/dillo_2.png" vspace="0" width="400" />
<div class="title">
<center><span style="color: #009900; font-size: 85%;"><span class="Apple-style-span" style="font-size: x-small;">こういう状況</span></span></center></div>
</div>
<br>におちいることが多々有るわけです。<br /><br /><span style="color: #38761d;"><span style="font-size: small;">どうすりゃいいんだ</span></span><br><span style="font-weight: bold;">A. dpiを駆使して<sup><span style="font-size: small;"><span style="color: #f03f2a;">*1</span></span></sup>w3mっぽく(or Firefoxぽく)google検索する<br /></span> → 技術力不足で無理<br /><span style="font-weight: bold;">B. form.cc回りを改造して<textarea>タグのstyle=display:noneに対応させる<br /></span> → コミュニケーション力不足(コミットとか無理)で無駄<br /><span style="font-weight: bold;">C. 中国の手を借りてgoogleをクラック、google.co.jp/dilloを作る<br /></span> → 人脈不足で無理<br /><span style="font-weight: bold;"><span style="font-weight: normal;"><br /></span>D. ローカルにgoogle.htmlとか置いてみる</span><br />56k時代を思わせるセピア色の消極的対応、Dで逃げることにしました。<br />DはダザイのDです。富嶽三十六計逃げるがなんとやら。<br />あとシンジは黙っとけ(映画版でも言うんですかね)<br /><br /><br /><span style="color: #38761d;"><span class="Apple-style-span" style="font-size: small;">つくってあそぶ</span></span><br><blockquote>wget -k google.co.jp -O google.html</blockquote><br>すると、相対リンクが絶対リンクに変換されたgoogle.htmlができます。<br />そのなかの<pre><script>,<textarea></pre>タグをざくざく消したら、<br /><blockquote>mv google.html /home/user/.dillo/</blockquote><br />と適当な所に移動し~/dillorcを<br /><blockquote>startpage=file:///home/user/.dillo/google.html<br />home=file:///home/user/.dillo/google.html</blockquote><br />と変更すれば<br />
<div align="center" class="section">
<img alt="dillo1" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/dillo_google/dillo.png" vspace="0" width="400" />
<div class="title">
<center><span style="color: #009900; font-size: 85%;"><span class="Apple-style-span" style="font-size: x-small;">記念日ロゴも見れるんじゃないでしょーか</span></span></center></div>
</div>
<br><b>追記:</b>記念日ロゴ見れませんでした。<br>
<br />6255byte → 3821byte へとサイズも減少して万々歳だ。<br />二つの意味で、dilloにシカク無し?<br /><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/dillo_google/dillo_google.html">dillo_google.html</a><br /><span style="font-size: small;"><span style="color: #f03f2a;"><br />*1</span></span>たとえば<a href="http://furaisanjin.blog.so-net.ne.jp/">風來散人さん</a>作の<a href="http://www.geocities.jp/dillojp/rss.html">rssリーダープラグイン(0.8.x向け)</a>などがあります。<br /> 2.x系だとdpidが洗練されてきていますし、いろいろ融通が効くっぽいです。<br />dpidにurlを送って新しいタブに開いたりできたら、いいなあ。<br />氏は2.x系にもパッチなど送られています。見習いたい。<br />Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-42435844702397988382010-01-18T00:15:00.002+09:002010-01-24T19:21:41.267+09:00[Nokia N810] 筆圧検知できるのです。<div style="text-align: right;">
追記*<a href="http://do1not3panic8.blogspot.com/2010/01/nokia-n810-1.html">アップデートしました。</a></div>
<table align="center" border="0" cellpadding="5" cellspacing="0"><tbody></tbody><tbody>
<tr><td><img border="2" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/maemo-pressure-draw/xps4.png" vspace="0" width="400" /><br />
</td></tr>
</tbody></table>
<br />
リナザウではスペカを入れる必要がありましたが、n810では特になにもせずに筆圧検知できるようです。<br />
と、いっても知る限り対応アプリケーションは一つもないので、デモコードで遊んでみました。<br />
<a href="http://wiki.maemo.org/Using_touch_screen_pressure_data">http://wiki.maemo.org/Using_touch_screen_pressure_data</a><br />
<a href="http://talk.maemo.org/attachment.php?attachmentid=516&d=1194414295">http://talk.maemo.org/attachment.php?attachmentid=516&d=1194414295</a><br />
とかからソースを入手後、適当にマ改造して、<br />
'apt-get install x11proto-xsp-dev libxsp-dev'したら<br />
'gcc -lX11 -lXsp filename.c -o touchdemo'でサクッとコンパイル。<br />
'./touchdemo'で起動。<br />
<br />
<b>マ改造点:</b><br />
<ui></ui><br />
<li>F6(フルスクリーンキー)でペン色がランダムに変化</li>
<li>Esc(スワップキー)で終了</li>
<li>Return(D-padセンター)でリセット</li>
<br />
<b>ファイル:</b><br />
<ui></ui><br />
<li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/maemo-pressure-draw/touchdemo.gz">touchdemo.gz</a></li>
<li><a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/maemo-pressure-draw/makai-zou.diff">makai-zou.diff</a></li>
<br />
<b>そのほか:</b><br />
<a href="http://gizmodo.com/5444514/smartphone-touch-screen-analysis-tests-finger-fidelity">http://gizmodo.com/5444514/smartphone-touch-screen-analysis-tests-finger-fidelity</a><br />
<a href="http://pocketgames.jp/blog/?p=5447">http://pocketgames.jp/blog/?p=5447</a><br />
こーゆの試してみましたが、n810はなかなか良好。(まあ感圧ですし)<br />
droidは千鳥足のおっさんなみですな。こんどから略して千のおっさんと呼ぼう。<br />
<br />
保存、Redoなどなど出来たらいいですね。<br />
<br />
ところで、マルチタッチっぽく画面を抑えると、筆圧が異常な値に跳ね上がるんですが、<br />
これは疑似マルチタッチの精度向上に活用できるんではなかろうか。<br />
(むしろそうやって実現してんのかな。)<br />
<table align="center" border="0" cellpadding="5" cellspacing="0"><tbody></tbody><tbody>
<tr><td><img border="5" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/maemo-pressure-draw/xps2.jpg" vspace="0" width="400" /><br />
</td></tr>
</tbody></table>
<br />Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-26190224869981849882010-01-05T23:59:00.013+09:002010-03-01T19:12:31.537+09:00[Nokia N810] expose(OSX) 或は Maemo5 っぽいタスクスイッチャ skippy-xd をmakeしてみる (ss集)<div class="separator" style="float: none;">
<img align="right" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/skippyblogicon.jpg" /></div>
<div align="center" class="section">
<img alt="wayv" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/skippy-xd/skippyxd4.png" />
<div class="title">
<center><span style="color: #38761d; font-size: 85%;">Quasar + mrxvt + Dillo2</span></center></div>
</div><br>
<div align="center" class="section">
<img alt="wayv" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/skippy-xd/skippyxd3.png" />
<div class="title">
<center><span style="color: #38761d; font-size: 85%;">mplayer(-vo x11) + mrxvt + Dillo2 + Quasar</span></center></div>
</div><br>
<div align="center" class="section">
<img alt="wayv" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/skippy-xd/skippyxd2.png" />
<div class="title">
<center><span style="color: #38761d; font-size: 85%;">Canola2 + Tear + XJP2 + mrxvt</span></center></div>
</div><br>
<div align="center" class="section">
<img alt="wayv" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/skippy-xd/skippyxd1.png" />
<div class="title">
<center><span style="color: #38761d; font-size: 85%;">Canola2 + Tear + mrxvt + easydebian(qvwm) + XJP2</span></center></div>
</div><br>
<br>
<div style="text-align: left;">
Xの意外な速度。あるいは如何にして私がhildonのタスクスイッチャを捨て、skippy-xdを愛するようになったか。<br />
</div>Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com2tag:blogger.com,1999:blog-5968274348745844907.post-15807506319780701072009-12-30T18:00:00.010+09:002010-02-04T16:40:23.109+09:00[Nokia N810] wiiリモコンをつないでみる (wiicontrol で)<div class="separator" style="float: none;">
<img align="right" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/wiimoteblogicon.jpg" /></div>
<b><span style="color: #38761d;"><span class="Apple-style-span" style="font-size: x-small;">まえふり</span></span></b><br />
某ショップでは「N810はWiiが遊べる」などと例によった表記をして先立つものをふんだくっていますが、<br />
(それがWiiリモコンをBluetooth HIDデバイスとして使うって意味なら)実際のところ、とても簡単です。<br />
maemo向けには<br />
<ol>
<li><a href="http://talk.maemo.org/showthread.php?t=17579">cwiid</a> (C)</li>
<li><a href="https://garage.maemo.org/projects/wiicontrol/">wiicontrol</a> (python)</li>
</ol>
<div>
という二つのソフトウェアがあります。<br />
<br />
</div>
<div>
<b>cwiid</b>は C製で高機能。<br />
</div>
<div>
<ul>
<li>Wiimoteをマウスとして使えたり</li>
<li>IR、加速度センサのデータをみたり</li>
</ul>
<div>
いろいろできますが、パッケージとGUIがないので導入がちょっと面倒です。<b>追記:</b>extras-develにあるようです<br />
<br />
</div>
</div>
<div>
<b>wiicontrol</b>は python製でシンプルながら、<br />
<ul>
<li>柔軟なキーコンフィグ</li>
<li>わかりやすいGUI</li>
<li>maemo向けのキーコンフィグ</li>
</ul>
を備えます。<br />
cwiidにはPC/linux向けの記事が既にありますから、<br />
今回はwiicontrolに絞って紹介したいと思います。<br />
</div>
<div>
<br />
</div>
<div>
<b><span style="color: #38761d;"><span class="Apple-style-span" style="font-size: x-small;">早速インストール</span></span></b><br />
</div>
<div>
1. 'apt-get install wiicontrol'なりAppManagerなりでwiicontrolをインストール<br />
</div>
<div>
2. [アプリケーションメニュー] - [Extras] - [Wiicontrol] で起動。(Bluetoothは自動でOnになります)<br />
<div align="center" class="section">
<img alt="wayv" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/wiiremote/wiicontrol1.png" />
<div class="title">
<center><span style="color: #38761d; font-size: 85%;">これは変造版wiicontrolです</span></center></div>
</div>
<br />
3 .すわ鎌倉と、wiiremoteの1と2を同時に押すか、電池近くの赤ボタンを押します。<br />
4. 問題なく接続されれば、各モード選択にしたがってキーに機能が割り当てられます。<br />
<br />
<span style="color: #38761d;"><b><span class="Apple-style-span" style="font-size: x-small;">自分でキーコンフィグ</span></b></span><br />
デフォルトの独特のキー配置(Bボタンは修飾キーです。気付いた?)を確認するためにも、<br />
変更するためにも、pythonらしく、漢らしく、スクリプトをそのまま編集します。<br />
とりあえず、バックアップをとっときましょう。(いざとなればapt-get --reinstall install wiicontrol)<br />
<blockquote>
$cp /usr/bin/wiicontrol /usr/bin/wiicontrol.backup<br />
</blockquote>
後は好きなエディタで/usr/bin/wiicontrolを編集するわけですが、<br />
読んでみると#Home button is broken . Do not use it なんてコメントがあります。<br />
これは/usr/bin/Wiimote.pyの213~215行目部分を<br />
<blockquote>
# if newmask & buttonmap['H'] and not self.buttonmask & buttonmap['H']:<br />
# print "Re-enabling IR"<br />
# self.enable_IR()<br />
</blockquote>
こんなかんじにコメントアウトすることで回避できたりしますので、まずやっつけておきましょう。<br />
さて、viだのemacsだのnanoだのありますが、leafpadもなかなかいいので<br />
<blockquote>
$sudo leafpad /usr/bin/wiicontrol
</blockquote>
<div align="center" class="section">
<img alt="wayv" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/wiiremote/wiicontrol2.png" />
</div>
<br />
mapping_p, mapping_lはそれぞれPortrait/Landscape Mode時のキーマップです。<br />
mapping_bはBボタンを押している間のキーマップですね。<br />
モード別に各ボタンごとの機能を記述します。<br />
機能には<br />
<ul>
<li>a (+ Up/Down/Left/Right : D-padの各キー)</li>
<li>k(+キーの名前 : アルファベットやF1などのキー)</li>
<li>m (+ x座標 + y座標 : カーソルの移動)</li>
<li>b (+ 1/2/3 : 右/左/中ボタンクリック)</li>
<li>t (+ x座標 + y座標 : 指定座標をタップ)</li>
<li>s (+ 秒 : 指定秒スリープ)</li>
<li>False (機能割り当て無し)</li>
</ul>
があり、たとえば Landscape(横持ち)時のU (Up)キーで言えば"a Left"つまりD-padの左キーが割り当てられています。<br />
</div>
<div>
300行目あたりの分岐を弄れば新たな機能を追加することも可能です。<br />
</div>
<div>
そこらへんは次回。
<br />
<br />
<span style="color: #38761d; font-size: x-small;"><b>蛇足</b></span><br />
加速度センサの情報をリアルタイムにプロットする<a href="http://pyaxelwii.garage.maemo.org/">pyaxelwii</a>なんてのもあります。<br />それから全然関係ない話。そろそろPowerVRドライバ公開されるらしいです。<s>年内とか。</s>訂正。年内には<b>出ない</b>そうです。<br />
</div>Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-69656265632494613892009-12-24T07:30:00.013+09:002010-02-04T16:49:26.386+09:00[Nokia N810] CUI的RSSリーダー Snownews ( + 無理サ*タシューティングゲー sunta hunta !)<div class="separator" style="float: none;">
<img align="right" border="0" height="0" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/blogicon/snownewsblogicon.jpg" /></div>
デフォルトのRSSリーダーはホームスクリーンのウィジェットと連携できたり、裏で自動更新してくれたりと高機能ですが、<br />
サクッと最新記事をみるには向いてません。<br />
dilloで見れば画像いっぱいのengadgetやgigazineもサクサクですが、こちらもヘッドラインを追うのが面倒。<br />
そこで、cuiむけncursesなRSSリーダーsnownewsをmakeしてみました。最近ターミナル生活が豊かです。<br />
<br />
<div align="center" class="section">
<img alt="wayv" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/snownews/snown1.png" /></div>
<br />
<b>ファイル:</b> <a href="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/snownews/snownews_1.5.12-maemo1_armel.deb">snownews_1.5.12-maemo1_armel.deb</a>
<br />
<br />
<b>make:</b> 普通に./configure --prefix=/usr;make, ただしMakefileを修正してlibncurseswをリンクしてあります。
<br />
<br />
<b>インストール:</b> ルート権限でdpkg -i , libncursesw5が必要です。
<br />
<br />
<ui>
<b>使いかた: </b><br>
<li>hキーでヘルプが出ます。</li>
<li>aキーで新規フィード追加。</li>
<li>'~/.snownews/browser'で外部ブラウザを指定できます。(dillo.ja %u > /dev/null & としてみました)</li>
<li>'LC_ALL=ja_JP.UTF-8 snownews'で日本語UIになります。</li>
<li>'snownews -u' で起動すると起動直後に更新してくれます。</li>
<li>'LC_ALL=ja_JP.euc-jp snownews'でeuc-jpな日も安心。</li></ui>
<br />
<b>おまけ:</b><br />
'touch ~/.snownews/santa_hunta' すると、<s>ルドルフごとサンタを撃ち落とす</s>サンタさんに探査子(プローブ)をつける <span style="color: red;"><span style="font-size: small;">*1</span></span> 愉快無理ゲー sunta hunta ! が遊べるようになります。
<br />
<div align="center" class="section">
<img alt="wayv" height="240" src="http://sites.google.com/site/tamanegimoyashi/home/tamanegi-files/snownews/snown2.png" />
<div class="title">
<center><span style="color: #38761d; font-size: 85%;">レベル10くらいからニュータイプ育成ゲームに</span></center></div>
</div>
<br />
<span style="color: red;">*1</span> 準偏光位相転移装置をつかって世界中に移動するサンタさん達をサポートする、簡単なお仕事です。(背景設定 : 花形職業であるサンタになれず、今ではしがないシューターの父デイヴィッド。
崩壊寸前の家族におこった小さな、クリスマスの奇跡。)<br />Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0tag:blogger.com,1999:blog-5968274348745844907.post-19206854760422884682009-12-23T21:13:00.003+09:002009-12-24T09:37:09.214+09:00[Nokia N810] Made in MADDE<a href="http://wiki.maemo.org/MADDE">なにやら面白げなツールがでてきました。</a>(<a href="http://wiki.maemo.org/MADDE">http://wiki.maemo.org/MADDE</a>)(TMO:<a href="http://talk.maemo.org/showthread.php?t=38075">http://talk.maemo.org/showthread.php?t=38075</a>)<br />
いちいち他に仮想マシンいれたりしなくてもLinux/Windows/OSXで動くってのは便利ですね。<br />
内部的にはqemuだったりするのだろうか。<br />
いまのところセルフコンパイラー道まっしぐらですが、ちゃんとリリースされたらMADDEに乗り換えたいなあ。<br />
<br />
さて、TMOには<a href="http://talk.maemo.org/showthread.php?p=438898#post438898">こんな</a>スレもありますが、N8x0向けMBXドライバもクリスマスにやってくると信じて待ってます。<br />
<span style="font-family: arial, sans-serif; line-height: 21px;">雨は夜更け過ぎに、雪へと変わるだろう♪ ドライバがこないどころかきっとJA$RACが来るぜ。</span>Supercalifragilisticexpialidocioushttp://www.blogger.com/profile/06426793442878335026noreply@blogger.com0