1

Android の Chrome で getUserMedia を使用してメディア ストリームを使用しようとしています。テストするために、入力ストリームを出力に単純に接続する以下のスクリプトを作成しました。このコードは Windows の Chrome では期待どおりに動作しますが、Android では何も聞こえません。ユーザーはマイクへのアクセスを許可するように求められますが、スピーカー、ハンドセット スピーカー、またはヘッドフォン ジャックから音声が出力されません。

navigator.webkitGetUserMedia({
    video: false,
    audio: true
}, function (stream) {
    var audioContext = new webkitAudioContext();
    var input = audioContext.createMediaStreamSource(stream);
    input.connect(audioContext.destination);
});

さらに、Chrome がシステムにオーディオを再生しているかのように、音量を上げ下げするときのフィードバック ビープ音は鳴りません。

この機能が Chrome for Android でまだサポートされていないというのは本当ですか? 次の質問は似たようなものですが、どちらにも決定的な答えや説明はありません。

getUserMedia を使用するのは初めてなので、互換性を損なう可能性のあるコードを実行していないことを確認したかったのです。

また、この問題は getUserMedia 自体には当てはまらないようです。<audio>次のコード (jQuery を使用) で示されているように、タグで getUserMedia を使用することができます。

navigator.webkitGetUserMedia({
    video: false,
    audio: true
}, function (stream) {
    $('body').append(
        $('<audio>').attr('autoplay', 'true').attr('src', webkitURL.createObjectURL(stream))
    );
});
4

1 に答える 1

1

Android 上の Chrome が getUserMedia を適切にサポートするようになりました。これは元々、録音と再生のサンプルレートの違いに関係していたのではないかと思います (デスクトップ Chrome でも同じ問題が発生します)。いずれにせよ、全員が 2014 年 2 月頃に最新の安定版に取り組み始めました。

于 2014-07-31T15:50:41.557 に答える