Ich möchte aktuelles Spielen Audio mithilfe von Audio -Working -Prozessor und Web -Audio -API aufnehmen und in Echtzeit mit einer möglichen Verzögerung von 100 ms aktuellen Audioquellen abspielen, aber der Audio wird verzerrt und nicht richtig abgespielt. Was ist der richtige Weg, um die folgenden Probleme zu beheben. Audio im neuen Kontext. Der Audio aus dem Audio-Working-Prozessor.
[url=viewtopic.php?t=14917]Ich möchte[/url] aktuelles Spielen Audio mithilfe von Audio -Working -Prozessor und Web -Audio -API aufnehmen und in Echtzeit mit einer möglichen Verzögerung von 100 ms aktuellen Audioquellen abspielen, aber der Audio wird verzerrt und nicht richtig abgespielt. Was ist der richtige Weg, um die folgenden Probleme zu beheben. Audio im neuen Kontext. Der Audio aus dem Audio-Working-Prozessor.[code]
Real-Time Audio Processing
Real-Time Audio Processing
Your browser does not support the audio tag.
Start Processing Stop Processing
let originalAudio, audioContext, newAudioContext, workletNode, mediaStreamSource; let bufferQueue = []; let isPlaying = false; let processorNode; let startTime = 0; let lastAudioTime = 0;
document.getElementById('start').addEventListener('click', async () => { originalAudio = document.getElementById('audio'); originalAudio.volume = 0.01; // Mute original audio to 0.01 but still play
const stream = originalAudio.captureStream();
audioContext = new AudioContext(); newAudioContext = new AudioContext();
// Register WorkletProcessor await audioContext.audioWorklet.addModule(URL.createObjectURL(new Blob([` class RecorderProcessor extends AudioWorkletProcessor { constructor() { super(); this.port.start(); } process(inputs) { const input = inputs[0]; if (input.length > 0) { const outputBuffer = input[0]; // First channel data this.port.postMessage(outputBuffer); // Send to main thread } return true; } } registerProcessor("recorder-processor", RecorderProcessor); `], { type: "application/javascript" })));
workletNode = new AudioWorkletNode(audioContext, "recorder-processor");
workletNode.port.onmessage = (event) => { const data = event.data; bufferQueue.push(data); if (!isPlaying) { playBufferedAudio(); } };
Ich habe eine originale Klaviermusikdatei für die BGM meines iOS -Spiels. Das aktuelle Format beträgt 44,1 kHz, 16 -Bit -Tiefe, Stereo -WAV -Format. Ich habe die Datei in 8kHz, 16-Bit-Tiefe,...
Ich verwende die Splashscreen -Funktionalität in meiner WPF -App (z. B. 400x200px PNG -Datei). Auf Bildschirmen mit Standard-DPI wird der Splashscreen korrekt angezeigt, aber auf Retina-Displays oder...
ist dies möglich, um Shared_Container für die Verbindung mit verschiedenen Proxy wie diesem zu verwenden, jedoch ohne Verwendung von Lock
public static void main(String[] args)
{
ClientManager...