Здравствуйте!
Дано:
Iskra JS с прошивкой Espruino 1v96.43
Troyka Shield
Джампер стоит на 5В.
Тройка модуль аудиовход с миниджеком подключена к пинам А0 и А1. Сигнал принимается с мобильного телефона (музыка с интернета).
Тройка модуль аудиовыход с миниджеком подключена к пинам А2 и А3. Сигнал снимается обычными наушниками «колокольчиками» без предварительного усиления.
Искру JS запитывал от ноутбука с помощью USB и с помощью PowerBank.
var inputWave = new Waveform(10000, {doubleBuffer:true, bits:16});
var outputWave = new Waveform(10000, {doubleBuffer:true, bits:16});
var inputPin = A0;
var outputPin = A2;
let checker = 1;
var firstBits, secondBits, otherBits;
inputWave.on("buffer", function(buf) {
if(checker === 1){
firstBits = buf;
checker++;
} else if(checker === 2){
secondBits = buf;
checker++;
} else if(checker === 3){
otherBits = buf;
outputWave.buffer.set(firstBits);
outputWave.buffer2.set(secondBits);
outputWave.on("buffer", function(buf) {
buf.set(otherBits);
});
checker++;
} else if(cheker === 4){
otherBits = buf;
}
});
inputWave.startInput(inputPin, 44100, {repeat:true});
analogWrite(outputPin, 0.5, {freq:44100});
outputWave.startOutput(outputPin,44100,{repeat:true});
Задача:
Полученную аудиодорожку на аудиовходе передать в аудиовыход
Что имеем:
Вполне себе хорошую аудиорожку, без компрессии, но с «гличами», которые очень похожи на склейки. При увеличении громкости на входе – на выходе «гличи» «прячутся» за песней (это к тому, что с увеличением громкости гличи не усиливаются).
Есть подозрение, что проблема в analogWrite, так как, играя с частотой в этой функции, гличи меняются (не в лучшую, не в худшую, - просто меняются).
Вопрос:
Как избавиться от гличей?