ChannelMergerNode

ChannelMergerNode - поєднує в собі канали з безлічі аудіопотоків в єдиний потік аудіо.

Синтаксис:

AudioContext.createChannelMerger(numberOfInputs);

Параметри:

AudioContext - об'єкт AudioContext.

numberOfInputs - не обов'язково вказувати. Кількість каналів у вхідних аудіопотоках, яке буде містити вихідний потік. Значення по замовчанню 6.

Опис:

ChannelMergerNode об'єкт який представляє собою аудіо вузол для поєднання кілька аудіопотоків в єдиний потік аудіо. Це дозволяє об'єднати кілька моно входів в один стрео вихід.

Для роз'єднання аудіо потоків використовуйте об'єкт ChannelSplitterNode.

Усі властивості і методи успадковуються у AudioNode.

Приклад:

Приклад об'єднання двох аудіо потоків в один. Відтворюємо один потік в правому стерео (R), а другий в лівому стерео (L) звуці:

<audio id="player1" src="/dani/test.ogg"></audio> <audio id="player2" src="/dani/test2.mp3"></audio> if(window.AudioContext){ var audio=new AudioContext(); var player1=document.getElementById('player1'), player2=document.getElementById('player2'); var source1=audio.createMediaElementSource(player1), source2=audio.createMediaElementSource(player2); var gain1=audio.createGain(), gain2=audio.createGain(); var mergen=audio.createChannelMerger(); //встановлюємо рівень звуку gain1.gain.value=0.5; //R gain2.gain.value=1; //L //встановлюємо з'єднання аудіо вузлів source1.connect(gain1); source2.connect(gain2); gain1.connect(mergen,0,0); //R gain2.connect(mergen,0,1); //L mergen.connect(audio.destination); //починаємо відтворення player1.play(); player2.play(); }else alert('Ваш браузер не підтримує Web Audio');