ll tiger 2010 (ltの虎 1)
TRANSCRIPT
gyuque
自己紹介
http://twitter.com/gyuque
2010年7月31日土曜日
きょうのテーマ
Javascript でモデム/音響カプラを作ろう
2010年7月31日土曜日
やや誇大表現
モ デムModulator Demodulator
現行のブラウザでできること:
◯ 可 音声の動的な生成、出力 (audio要素による)
× 不可 音声の入力、解析 (Capture API 策定中)
×2010年7月31日土曜日
モデムの実装について
モデムの実装方法が書いてある貴重な本ですがおそらく絶版なので図書館で探しましょう
2010年7月31日土曜日
モデムの実装について
0 / 1あるいは
1 / 0
• 周波数の高低(要するに音の高低)でビットを表現• 電話回線用モデム、マイコン用データレコーダ
FSK (Frequency Shift Keying)
2010年7月31日土曜日
モデムの実装について送信側(生成)処理 : 位相が連続した信号の生成
ダメ 良い
2010年7月31日土曜日
モデムの実装について送信側(生成)処理 : 位相が連続した信号の生成
テーブル
出力
読み出しポインタを速く進める読み出しポインタを
遅く進めるどこで周波数を切り替えても位相が連続する
2010年7月31日土曜日
モデムの実装について受信側処理 (バンドパスフィルタを使う場合)
分離
pow1 = ∑ f1(t)^2
pow2 = ∑ f2(t)^2
2乗値の総和
比較
※今回は iPhone の native code で実装しましたが、参考に
2010年7月31日土曜日
デモジュレータのテストプログラム
2010年7月31日土曜日
Javascript FSK Modulator
20 3A 4B 50 20 4F ...
000010001011100....
<audio>
data:audio/wav...
- - 送信バイト列(+誤り訂正符号等)
- - ビット列
- - 変調された信号
wavファイルを含むdatauri - とっても簡単ですね
2010年7月31日土曜日
•無線LANモジュールが破滅した
たとえば……
2010年7月31日土曜日
•無線LANモジュールが破滅した•有線LANケーブルも千切れた
たとえば……
2010年7月31日土曜日
•無線LANモジュールが破滅した•有線LANケーブルも千切れた•3G回線も入らない
たとえば……
2010年7月31日土曜日
•無線LANモジュールが破滅した•有線LANケーブルも千切れた•3G回線も入らない
たとえば……
こんな時でも Shibuya.JS は通信を諦めない
2010年7月31日土曜日
Demonstration
2010年7月31日土曜日
今 後 の 野 望
2010年7月31日土曜日
HTML Media Capture APIhttp://www.w3.org/TR/html-media-capture/
2010/7/20 更新
http://www.youtube.com/watch?v=IY3U2GXhz44
•いわゆる「アップロードフォーム」で、カメラで撮った画像を直接指定できる•だけでなく、画像・音声に直接アクセスできる(ハズ)• Android に”実装中”(Android 2.2 では未実装)
→ デモジュレータ(受信側)もできるかも
2010年7月31日土曜日
HTML Media Capture API の野望
HTTPサーバ
Client
2010年7月31日土曜日
HTML Media Capture API の野望
データリンク・物理層
TCP/IP
HTTPサーバ }全部JSClient
Full Stack Javascript Server2010年7月31日土曜日
Javascript FAX も可能に?
test
canvas
2010年7月31日土曜日
お 知 ら せ
本日、MSX実機(できれば 1chip MSX)をカバンに忍ばせている方がおられましたら声をおかけください
2010年7月31日土曜日