Sto sperimentando con Web Audio API per controllare la riproduzione di musica interattiva in una configurazione multicanale. Finora sono riuscito a dirigere il suono di un massimo di 8 oscillatori su 8 canali diversi sulla mia scheda audio a 12 canali, ma non appena provo a usare più di 8 canali, improvvisamente tutti i canali vengono disattivati. Dopo molte ricerche, noto anche che audioContext.currentTime
rimane bloccato su un valore vicino allo zero.È possibile produrre più di 8 canali con l'API Web Audio?
Questo è il mio risultato da Mac OSX 10.8.5 Google Chrome versione 39.0.2171.27 beta (64-bit) e versione 40.0.2192.0 canarino (64-bit).
Safari non mi permette di affrontare più di 2 canali FireFox trova miei 12 canali con audioContext.destination.maxChannelCount
ma continua a instradamento mio suono al canale 1 & 2, non importa se provo a collegare l'oscillatore ad un numero più elevato con gain.connect(channelMerger, 0, i)
.
Qualcuno si è imbattuto in qualcosa di simile? Esistono soluzioni alternative?
Ecco il codice:
var AudioContext = window.AudioContext || window.webkitAudioContext;
var audioContext = new AudioContext();
var maxChannelCount = audioContext.destination.maxChannelCount;
// if set to max 8 it works fine in Chrome, but this line
// breaks the audio if the sound card has got more than 8 channels
audioContext.destination.channelCount = maxChannelCount;
audioContext.destination.channelCountMode = "explicit";
audioContext.destination.channelInterpretation = "discrete";
var channelMerger = audioContext.createChannelMerger(maxChannelCount);
channelMerger.channelCount = 1;
channelMerger.channelCountMode = "explicit";
channelMerger.channelInterpretation = "discrete";
channelMerger.connect(audioContext.destination);
for(var i = 0; i < maxChannelCount; i++){
var oscillator = audioContext.createOscillator();
oscillator.connect(channelMerger, 0, i);
oscillator.start(0);
}
possibile duplicato di [Registra audio su Web, preimpostato: 16000Hz 16 bit] (http://stackoverflow.com/questions/28969304/record-audio-on-web-preset-16000hz-16bit) –