MobileHackerz
HOME > ウェアラブル奮闘日記:ビデオ関係Pickup


2006/11/30

NXVTest-061130.zip
ちょうピンポイントな需要(つまり俺)向け。要するにMP4 Watch向け(専用)の動画に変換します(笑)
そんなことやってる暇があったら…とかいうのがいろいろあるのはわかってますが。スマン


・誰だMotion JPEGとか言ったやつは(←私です)まんまベタのビットマップでしたorz
・なかなか奇妙なファイルフォーマットです(解析してて理不尽さに何度か頭抱えそうになりました)。要するに動けばいーんですよ動けば!という感じ。いや面白かったんですけどね。
・「High」「Middle」と「Low」ではベタデータの扱い方が異なるようです。今回解析したのはMiddle/Highだけなので、このバージョンではLowに相当するファイルは作れません。でもLowにすると画質がかなり悲しいことになるので、あんまり解析する気もありません。
・ともかく動画をベタデータで持っているため、時間に比例して動画データのファイルサイズは炸裂します。腕につけて見るという姿勢的にもファイルサイズ的にも長時間の動画は向かないので、YouTubeなどの小物動画を放り込んで楽しむ系でしょうか。あ、あと、あまり長時間の動画だと音声と画像がずれる可能性があります。

・ffmpegが内部でYUV420処理しているせいか、128x128なんて小さいサイズにリサイズすると結構情報の欠落(色のにじみとか)が目立ちます。NXVそのものは全ピクセルRGB565で(16bit/pixel)持っているので、データ量のわりには画質がちょっと残念なことになっちゃってます。 詳しい人(かつ、標準の変換ツールNxvConverter以外のソリューションを求める人)は、AviSynthなどで前加工してあげるといいかもしれません。
・標準の変換ツールもそれなりによくできてるんだけど、やっぱり慣れた環境に対応すると楽だ(;´д`)

・NXVTest-061130でいくつか設定がわかれていますが、これは「元動画をリサイズする時のやり方」別になっています。
 フルサイズ:ともかく128x128にリサイズする。普通の4:3の動画を入力するとそのまま1:1にリサイズするので画面が縦長になります。
 (320x240→128x128):元動画の左右32ドットずつ(計64ドット)削ってから128x128にリサイズします。320x240の動画を入力すると、微妙に(気にならない程度に)縦長にしつつ左右を削って中央部を表示します。
 (640x480→128x128):元動画の左右64ドットずつ(計128ドット)削ってから128x128にリサイズします。640x480の動画を入力するとちょうどいい感じです。
 (720x480→128x128):元動画の左右72ドットずつ(計144ドット)削ってから128x128にリサイズします。720x480の動画を入力すると略。
 ffmpegは「リサイズした後にピクセル数を指定して左右を削る」ということができないので、こんなちょっと面倒なことになってます。
・Transcoding.iniをいじれば(「フルサイズ」の-s 128x128の前に-fixaspectを加える)、従来通りの「元動画の比率を維持したまま黒帯をつけて128x128におさめる」こともできますが、画面の小ささからいってあんまり実用的でないです。無念。







2006/11/22

変な時計そろい踏み
思いのほか画面は美しい

ざっくりと気づいたところを箇条書き。

・質感はそれなりというかプラスチッキー。それがかえって味になってる感じもするけど。
・イヤホンやUSBコネクタなどの開口部は開口しっぱなしという大雑把仕様。細かいことは気にしない
・USBコネクタはあまり見かけない形。いわゆるミニBとは形が違うので汎用品ケーブルが使えるかどうか不明
・画面は解像度はそれほどないものの、自己発光の有機ELで非常に美しい。液晶にない質感は良いかも
・フォントが若干怪しいが、日本語ファイル名もカナ含めてきちんと表示される。UNICODEで処理しているのだろう。試してないけど曲名なども大丈夫では。
・時計表示はカスタマイズできないものの標準状態のものがわりとセンス良い。電源OFF時からメニューボタン長押しで時計表示5秒間
・DISPLAYからBack Light設定を5秒とかにすると(有機ELだからバックライトは無いんだけど)規定時間後に時計表示になる。黒が多いデザインだから省電力なのか。
・同時にTIMEからSLEEP設定をOFF(ALWAYS ON)にすると、常時時計表示が可能。
・mp3のID3タグに含まれる日本語は表示できなかった。ただ文字コードにもよるかもしれないので要調査
・なんだかUSBが遅い気がする。未測定
・動画は128x128表示なので、4:3ソースのものを上下黒枠つけるか、中央クリッピングするかのどちらか。「微妙に縦につぶしつつ中央クリッピング」がいいかも。
・変換ツールはそれなりによくできてるけど、できれば携帯動画変換君にまとめたい。でも動画フォーマット(NXV)詳細不明。なんとなくバイナリは眺めてますが。
・独自動画形式NXVは、どうやらmp3音声+Motion JPEG?(Qualityを変えると画質も変わっている)長時間の動画はものすごくサイズが大きくなるが、変換はとても速い
・さすがに直射日光下ではほとんど見えない。自発光だから仕方ない。
・あまりにも画面(特に時計)が美しいので傷つけないように保護フィルム貼ったほうがいいかな。
・保護フィルムはNTT DoCoMo SO902iWP+用のものが幅ぴったりで(一辺カットするだけでいいので)使いやすい
・時計画面の周囲のリング部分の色は7色周期で分ごとに切り替わる。グレー?→白→シアン→緑→マゼンタ→ピンク→青→(戻る)。8bitパソコン時代の7色カラーを彷彿とさせつつ微妙に違うみたい。
・朝充電→10:00出勤しながら1時間ニュース番組1本再生→そのまま時計表示状態で放置→15時ごろバッテリー切れ
・満充電状態から常時時計表示のみ、まったく操作しないと11時間〜11時間半ほど持ちました。微妙な感じだけどギリギリ常時表示時計として使えるか?
・よくよく考えると「MP4 Watch」という名前のわりに「MP4」に相当するものは何も再生できないんじゃ…(笑)







2006/11/20

MP4 Watch
物欲終了の予定だったのにまさかこんなものが出るとは…。
仕様表にOLEDって書いてあったのでまさかなと思ったら本当に有機ELだった。びっくり。







2005/11/26

自宅メイン環境が完全に死んでしまっているので正直なんにもしてないですが
iPod with Eyetop Classic
とりあえずiPodを単眼ヘッドマウントディスプレイ(Eyetop Classic)に繋いでみました。
…とはいえ、ビデオ出力をただ単にDockコネクタのGNDとVideo Out(8番ピン)から引っ張り出しただけ。コネクタはいつもの(?)千石コネクタです。

この状態で普通にビデオ再生、ウェアラブル鑑賞できることは確認しましたが、やっぱりちょっとスマートじゃないなぁ。 2年以上前とやってること何も変わってないし(2003/07/04参照)
というか、実際Dockコネクタからビデオ出力出すよりも、2.5φ端子から出したほうがちょっと使い勝手いいかもしれない…。この時Jukebox Multimedia用に作ったケーブル使いまわせそうな気がするけど、これどこやったっけなー…

ほんとはiPodからの電源出力を使ってEyetopの制御ボックスも駆動しちゃおうと思ってたんですよ。ちょうどEyetop制御基板むき出しの状態のも持ってるし(2004/02/28参照)。 うまくパッケージングすればDockコネクタにカチャっと刺すだけでウェアラブル鑑賞準備完了!みたいな。そりゃ便利じゃん、みたいな。(みたいなって言うな)

で、実はこのケーブル作る前に電源出力をなんとかしようとして…
電圧足んないなー(Dockコネクタは3.3V出力、Eyetop制御ボックスは電池4本=5〜6V入力)→昇圧しないと駄目かー→手ごろなDC/DCとか売ってるかなー→あー、売ってないなー→昇圧回路作らなきゃいけないのかなー→あ!そういや、コンビニにぴったりの昇圧回路売ってるじゃん!→繋いでみよう→電流足んねorz
という経緯があったのは激しくひみつです。





2004/12/05

超憧れのMicroOptical社製VGA片眼HMD(を採用したSecondSight M1100)
買っちゃった…





2004/04/29

実験中

今日の作業。VLCをdll化して、libvlcのインターフェースを使いDelphiから制御する実験。
とりあえず簡単な制御はできたけど、家電ライク動画プレイヤーの動画エンジンとして突っ込むためにはもう何段か工夫が必要っぽいなぁ。うーん、どうしよう…。一旦保留。

次に気分転換にVLCの再生速度を変えてみる。
音声無しの可変長速度再生はもともと機能として備わっているので、ちょっとコードをいじって1.1倍,1.2倍あたりで再生してみると、わりとすんなり再生されている模様。
では…というわけで、さらにいじって音声をむりやり再生してみると……あー、やっぱりこれはダメ。音声の再生レートが無茶苦茶になって、音声と画像がずれまくり。やっぱそう うまくはいかないか…。音声と同期したちょい早再生はかなりの大改造が必要そう。うーん…これもどうしたものか。保留。

…と、いじっている最中にVLCのコードに(ごく単純簡単な)バグ発見。これ、フィードバックしたほうがいいのかなぁ?

というわけで、試行錯誤のうち1日が終了。寝る前に更新。(という元気が残っているというのがもう驚異的(笑))
そろそろちょっとハードウェアいじりに浮気しようかな。あーもう、時間があるってなんて幸せなんだろう…。





2004/04/28

連休だ!連休だ!やっとHackの時間が取れるぞ!ヽ(´ー`)ノ長かった…
というわけで、とりあえず手近なHack結果だけ仮Up。

原材料

vlc-0.7.1.tar.gz
contrib-20040229-win32-bin-gcc3.3.1-only.tar.bz2
http.c.diff ( vlc-0.7.1/modules/access/http.c にこのパッチを当ててください)


結果

libaccess_http_plugin.dll


使用方法

上記改造済libaccess_http_plugin.dllを、VLC for Windows (0.7.1)C:\Program Files\VideoLAN\VLC\pluginsにある同名ファイルと置き換えるだけです。


効能

VLCでCoCoon内の動画をストリーミング再生した時に、シークが可能になります。






2004/04/12

いやほんとなんでこんなに時間が無いんだろう(;つД`)

とりあえずメモ:
・CoCoon→Proxomitron→VLC、と経由すればダイレクトに再生できる。
・VLCに突っ込むURLはCCBrowseでゲットする。
・ヘッダ見てもいったい何が違うんだか…。HTTP/1.0?
・実験用にVLC書き換えたいけど、Buildする環境整えるのに一苦労。時間が足りないーヽ(`Д´)ノ
・というわけでProxomitron相当の機能をCCClientに突っ込もうとしたまま2ヶ月放置中。マイッタ

CCClientのドネーションはかなりの方にご協力いただき、ありがたく機材などにつかわせていただいてます。
お礼は開発の成果で出すのが一番いいんですけど(´Д⊂ゴメン




2004/02/28

NOAX Harddisk Player えーと…、買ってしまいました。NOAX HDD Player。2.5インチのHDDが入るHDDケースなのですが、なんとDivXなどの再生機能がついていて、単体で動画プレイヤーとして動作する代物です。
HDDケース兼動画プレイヤーとして一部で人気があるようですが…別の思惑もあって入手してみました。

CFカードを入れてみる とりあえず、まず最初に実験君。CF-IDE(2.5inch)変換基板(若松通商でだいぶ前に買ったもの)を経由してCFを刺してみます。これで動作すればシリコンビデオプレイヤーのいっちょあがり…のはず。

結果としては、認識はするが、どうしてもWindows(XP)上からディスクをきちんとディスクとして認識しない。しかし、CFをこのケースから抜いてCFとしてFAT32でフォーマットし、あらかじめファイルを入れておけばプレイヤーから再生することはできました。うーん、微妙…
とりあえず壊してもいいや、なSanDiskの16MBが今刺さってますが、MicroDriveや他のCFだとどういう挙動を示すかも興味深いところ。


久しぶりに登場Eyetop まぁ、全く使えないわけではなさそうだ、ということで、ひさびさにEyetop(改)を引っ張り出してきました。以前より脱落防止ストラップをゴムひもで新調して使い勝手がさらに上がってたりします。
NOAX HDD Playerは、これと組み合わせるといい感じかもー!というわけです。


Eyetop制御ボックス内部基板 さて、買ってしまってから半年以上、保証を考えていつでも戻せるような改造を中心にやってきましたが、そろそろ腹を据えて、制御ボックスそのものを部品として使うことにします(ひぃー


Eyetop制御ボックス内部基板・電池側 Eyetop制御ボックス内部基板・スイッチ側 Eyetopの制御ボックスを開けて、中の基板を取り出すと、このような一枚モノの基板が収まってます。大きさはちょうど2.5inch HDDくらい。電源スイッチやディスプレイが刺さるコネクタ、ビデオ入力端子、LED、そして電池ホルダーまですべて一枚の基板の表裏に実装されていて、 他にケーブルなどが一切ないとてもシンプルな構造になっています。

電源スイッチの無効化 今回、この基板を部品として使っちまえー、という決意(笑)をしましたので、余分なでっぱり(電池ホルダーやビデオ入力のピンジャック)などを全部取り外します。(なんというか、全面GNDベタ基板にやられたというか…熱が逃げて逃げて部品の外しにくいったら…)
ついでに、電源スイッチの部分をショートして、「電源が供給されたら常に電源入りっぱなし」という状態にしておきます。(このスイッチは本来トグル動作しますが、ショートするだけで意図したとおりに動いてくれました)


NOAX & Eyetop 基板表 NOAX & Eyetop 基板裏 さていよいよNOAX HDD Playerとの接続です。NOAX HDD PlayerはACアダプタ端子から給電された時のみプレイヤー動作をする(USBからの電源供給の場合はHDD動作)ので、ACアダプタ給電からEyetop側に電源をくれてやれば良い感じになりそうです。
というわけで、ACアダプタ側の電源からEyetopへ、そしてNOAXのビデオ出力をEyetopのビデオ入力にそれぞれ配線します。
この段階でテストしてみましたが、なかなかいーい感じに表示が出ました。よしよし。


NOAX & Eyetop 基板 というわけで2枚の基板を重ねてみます。絶縁はあとでしっかりやるとして、寸法は…うん、予想していたとおり基板の大きさが似たようなものなので、わりとしっくりきます。
HDDを入れずにCFを刺してみたのは、ここでスペースを確保できるからという狙いがあったのでした。


NOAX & Eyetop 基板 さあいよいよクライマックス…!
NOAX HDD Player基板+HDD代替CF+Eyetop基板をまとめて、NOAX HDD Playerの(それなりにかっちょよい)ケースに収めることができれば、相当使い勝手の良いビデオプレイヤーになるはず…!
と、これを期待して作業してきたわけですが…
…あああ、微妙に危惧していたとおり、ケースの高さがちょっと足りませんでした…(とほほ…


NOAX & Eyetop
しかたない、なんとか収まりのいいケースを別に探してこなければいけません。ので、現在のところはここで中断。
NOAX HDD Player + Eyetop + MyBatteryでウェアラブルビデオプレイヤーのひとつの到達点にできると思うんですけどねぇ…





2003/07/13

今日はちょこっとだけ小技な環境改善を図ってみました。

レンズ固定 ちょっと抜けやすかった「ディプレイユニット」と「レンズ」の間に細く切った強力両面テープを挟み込みました。クッション性のあるテープで、かつ強力なものなので これでとりあえず簡単には抜けなくなるでしょう。


ベルトポーチ 次にEyetopの外部ユニット+Jukebox Multimedia(などのデバイス)という組み合わせがぴったり入るベルトポーチを購入。近所のお店で980円。
なんだかんだとやっぱりデバイスが2個になると邪魔ですねぇ…。


スポーツバンド そして眼鏡用のスポーツバンドを購入。ドンキホーテで680円。(高い…)
眼鏡の後ろにつけるベルトで、スポーツなど激しく動くようなことをしている時に、眼鏡が落ちるのを防ぐためのものです。やっぱり結構Eyetopは重いので、ちょっとしたしぐさでズレてしまうことがあります。このバンドがあればそれも少なくなるだろうと期待してみました。(まだ実地テストはしていません)


さて、ウェアラブル・ビデオという使用方法ではこれでほぼ環境が整いました。何日か運用してみましたが、かなり感触としては良好です。
今までJukebox Multimediaではちょっと躊躇したような動画(アニメとか…いや、まぁ、気にしなければいいといえばいいんですが)も、Eyetop+Jukebox Multimediaという組み合わせでは 周囲を気にせず鑑賞することができます。…あー、いや、鑑賞している姿そのものが怪しい、というツッコミは忘れてください…。

というわけで(?)いよいよ、さらに一歩進んで「ウェアラブル・ビデオ」から「ウェアラブル・コンピューティング」へ踏み出すことにします。

「ウェアラブル・コンピューティング」。こんなプロジェクトとかこんな人とか、日本だとこんな人とかが有名です。
要は彼らと同じよーなことをしたいわけですが…さて、どこから手をつけましょう?
ただ「コンピュータを着ている」だけではコンピューティングとはいえません。実際に歩きながら、移動しながら、いつでもどこでもコンピュータが自在に使えて、はじめてウェアラブルコンピューティングを実現したと言えるのではないでしょうか。
そんな中先述の人たち(ウェアラブル・コンピューティングを研究している方々)は、Twiddlerなどといった片手キーボードや、腕に装着する小型キーボードなどを装着しているわけですが…

これらのデバイスは、正直言って、高い!んです。キーボードだけで2〜3万はあたりまえ。

いや、キーボードに2万出すというメンタリティがわからない、というわけではありません。私も初代Happy Hacking Keyboardを持ってますし、一方こんな(普通の人から見たらなんでこんなもんに8万も9万も出すのか理解できないような)Eyetopなんてシロモノを 買ったりしています。
わからない、というわけではないんですが…さすがに、お金がありません。(笑)

もともとEyetopはNTSC入力しかない、320x240画素のディスプレイです。これに一般的なコンピュータをぶら下げて可搬運用しようと思うと…わりと洒落にならないくらい手間とお金がかかりそうです。
バッテリーで動作し、腰にぶら下げられる重量とサイズで、NTSC出力を持っているコンピュータ…(あるのか?)それに外付けで片手キーボード…そして、320x240で運用できるようなソフトウェアの開発…。などなど、その研究を目的としているなら面白いでしょうが、仕事しながら片手間で遊ぶには、ちょっと大変そうです。

そこで、3秒くらい悩んだ結果、格安でウェアラブルなインターフェースを持つコンピュータを接続することにしました。
このコンピュータは、いわゆるWindowsのような汎用OSが動作するものではありませんが、豊富なソフトウェア資産がある上に、それなりのコンピューティング能力もあり、バッテリー駆動もばっちりで、外付けオプションでNTSC出力も可能で、使用するユーザインタフェースがもともと非常に洗練されているため片手操作も充分可能な上にすごく安いのです。信じられないような話ですが、本当です。






というわけで早速ヤフオクなどで材料を物色・購入。

液晶が壊れたゲームボーイアドバンス
ゲームボーイアドバンス(液晶が壊れたもの) 購入価格:810円

片手用ジョイスティック
ファミコン用片手ジョイスティック(なんと新品未開封) 購入価格:80円

テレビdeアドバンス
テレビdeアドバンス 購入価格:5800円(高…)

そう、ゲームボーイアドバンスだってコンピュータです。しかも、誰でも簡単に扱えるようインターフェースは非常に練りこまれた簡単なものになっています。…別に茶化すつもりはなく、大真面目に「ウェアラブル環境ではせいぜい十字キーのコントローラか、携帯電話のキーパッドくらいが快適に操作できる限界だろう」という気はしています。そこで、とりあえずゲームボーイをウェアラブル化してみることにしました。


割れた液晶の除去 まずちょっと見苦しいのでゲームボーイ本体から割れた液晶を除去しました。分解して、液晶を取り外すだけです。本体内にちょっと隙間ができましたが、この隙間、有効活用できるかなぁ…
ついでにテレビdeアドバンスの裏蓋装着もやっておきます。


テレビdeアドバンス側の改造 次に、テレビdeアドバンス側を改造です。
不要なオーディオケーブル(ゲームボーイアドバンス本体のヘッドホン端子に差し込み、テレビのRCAピンジャックに出力するためのヘッドホンケーブルがついていますが、今回はヘッドホンで運用するので不要です)をばっさり根元から切り取り、取り去ります。
また、テレビ側のケーブルも一旦根元から切り離し、写真のようにビデオケーブルだけ一本つけなおしました。(この部分、コネクタ状になっているのでコネクタ差し替えができるかと思ったのですが、しっかり半田付けされているようでした。思い切りよくニッパで切ってしまいましょう。もちろん保証は効かなくなりますが。)


改造済テレビdeアドバンス 改造が終わった状態のテレビdeアドバンスです。必要最小限のケーブルが出ている感じですね。


改造済テレビdeアドバンス+本体 そしてゲームボーイ本体、Eyetopの外部モジュールと組み合わせるとこんな感じになります。


さて、とりあえず今日はここまで。あとはテレビdeアドバンスの電源をバッテリー運用可能にする改造と、ゲームボーイ本体のコントローラをどうにかする(片手コントローラで遊べるようにしたい…)改造を一応予定しています。


液晶が壊れたゲームボーイアドバンス
えへ♪




2003/07/04

ケーブル原材料 今日はJukebox Multimedia 20とEyetopを繋ぐケーブルの作成です。Jukebox Multimediaは外部にビデオ出力を出せますが、特殊なケーブルを使い、ヘッドホンと共通の端子からの出力になります。
で、そうなると、その付属のケーブルを使用してビデオ出力を出すと、ヘッドホンが使えないという事態に…。まぁ、通常「ビデオ出力を使う状況」っていうのはヘッドホンが必要ではないので、普段はこれで困ることはないんですが。
というわけで、とりあえずヘッドホンとビデオ出力が同時に使えるケーブルを自作することにしました。
Jukebox Multimedia側は4端子3.5φミニプラグ、Eyetop側はRCAピンジャックのビデオ、そしてヘッドホンは3端子3.5φミニジャック、という構成になります。これに相当する部品を用意します。(秋葉原の千石電商で揃えました)
完成図 これを適当にはんだ付けして、ホットボンド(ホットメルト)で適当に固めて、変換ケーブル風にまとめます。微妙にビデオケーブルが短すぎてしまいましたが、まぁ、なんとかこれで実用になるでしょう。


こんな感じに見えます 早速このケーブルを使ってJukebox Multimediaの画像を表示してみた様子がこの写真です。もともとのJukebox Multimediaの液晶の品質があまりよくなかったこともあり、正直、Jukebox Multimedia本体の液晶よりきれいに見えます。
写真に撮った際の都合上、字幕がつぶれて見えますが、このサイズの字幕であれば実際にははっきりと読むことができます。移動中に(他の人に見られずに)映画を見る、というのも十分実用的でしょう。
それよりもむしろ問題なのが、7/3でも挙げた「サングラス部のレンズの歪み」です。この写真でも背景に写りこんでいるパソコンが妙に歪んでいますが、これはデジカメの性能によるものではありません。実際に、レンズごしに見るとこれくらい歪んでしまうのです(!)
正直本当にこの「歪み問題」はなんとかしたいです。今日、第二弾差し替え用安物サングラスを買ってきたので、またぼちぼちレンズの差し替えを狙ってみようかと思います。


実体配線図












管理人へのメールについてはこちら
MobileHackerz - It is not cracking but happy hacking!