2013/09/27 (2013年09月 のアーカイブ)
iOS7のWebAudioAPIサポート状況
iOS7がリリースされてまだ日も浅いですが、ユーザーのアップデート率はかなり高いらしいですね。既にiOS6ユーザーよりiOS7ユーザーの方が多いのだとか。
という事でiOS7ではWebAudioAPI周りのサポートどうなってるのでしょうか?
上のスナップショットのようにかなり良くなっています。10日ほど前にMac向けSafari 6.1 Seed 8がリリースされていますがそれとほぼ同じ状態のようです。AudioContextとして後、足りないのはcreateMediaStreamSource()とcreatePeriodicWave()くらいです。createMediaStreamSource()はgetUserMedia()との絡みですのでiPhoneのような環境では難しいのかも知れませんね? マイクは付いているのでやれば出来るはずではありますが。
またcreatePeriodicWave()は最近APIが変更されたためだと思いますが、旧API名のcreateWaveTableでサポートされています。これはまあタイミングが悪かったとも言えます。Chrome/Firefoxでは新APIに移行して既に旧APIがサポートされていないというあたりがちょっとやっかいです。
もう1つ残っている注意点としては、AudioContextのtypeofを取ると他のブラウザは"function"を返すのですが、iOS7 Safariは以前と同じく"object"となりますので起動時の判定などでちょっと気をつける必要があります。
その他、今までのSafariで問題だった一部のパラメータの型が数値から文字列に変更されている点(例えばBiquadFilterのtypeやOscillatorのtype)、ノードからパラメータに接続した場合の値の加算の仕方が違う点も修正されてChrome等と同じになっています。
これでSafari向けの余計な小細工をあまりしなくてよくなりそうですね。
iPhone向けのオーディオWebアプリも捗りそうではありますが、下の写真みたいに全画面表示したりしてなんか結構使えそうじゃん、と思っていると実は上端1行分、下端1行分くらいは見えないけどタッチでメニューが出てきてアプリの操作はできないという罠はあったりします...これはしょうがないのかなぁ
Posted by g200kg : 2013/09/27 19:39:43