Áudio distorcido no iOS 7.1 com a API WebAudio
o iOS 7.1, continuo recebendo um som zumbido / barulhento / distorcido ao reproduzir áudio usando a API de áudio da Web. Soadistorted como este, no lugar de normal assim.
Os mesmos arquivos estão corretos ao usar o áudio HTML5. Tudo funciona bem na área de trabalho (Firefox, Chrome, Safari.)
EDITAR
O áudio está distorcido nas versões do iOS Simulator iOS 7.1, 8.1, 8.2. O zumbido geralmente começa antes mesmo de eu reproduzir qualquer coisa. O áudio está distorcido em um iPhone físico executando o iOS 7.1, no Chrome e no Safar O áudio é bom em um iPhone físico com iOS 8.1, no Chrome e no Safarou seja: o áudio vibrante está no iOS 7.1. só
Howler.js não é o problema. O problema ainda está lá usando JS puro da seguinte forma:
var context;
var sound;
var extension = '.' + ( new Audio().canPlayType( 'audio/ogg' ) !== '' ? 'ogg' : 'mp3');
/** Test for WebAudio API support **/
try {
// still needed for Safari
window.AudioContext = window.AudioContext || window.webkitAudioContext;
// create an AudioContext
context = new AudioContext();
} catch(e) {
// API not supported
throw new Error( 'Web Audio API not supported.' );
}
function loadSound( url ) {
var request = new XMLHttpRequest();
request.open( 'GET', url, true );
request.responseType = 'arraybuffer';
request.onload = function() {
// request.response is encoded... so decode it now
context.decodeAudioData( request.response, function( buffer ) {
sound = buffer;
}, function( err ) {
throw new Error( err );
});
}
request.send();
}
function playSound(buffer) {
var source = context.createBufferSource();
source.buffer = buffer;
source.connect(context.destination);
source.start(0);
}
loadSound( '/tests/Assets/Audio/En-us-hello' + extension );
$(document).ready(function(){
$( '#clickme' ).click( function( event ) {
playSound(sound);
});
}); /* END .ready() */
Uma versão ao vivo deste código está disponível aqui:Web Audio API - Olá, mundo
@Google não apresentou nenhum resultado sobre um problema de som tão distorcido no iOS 7.
Alguém mais encontrou isso? Devo registrar um relatório de bug na Apple?