← Back to docs

Audio Pipeline E2E Testbook

End-to-end test for the browser microphone to UE application audio path.

Prerequisites


Step 1: Start browser stream

Follow steps 1-7 from browser-streaming-e2e.md to establish a working video stream.

Expected: Video stream is active in the browser.

Step 2: Enable microphone permission

  1. In the browser stream UI, click the microphone icon / enable audio
  2. Browser will prompt for microphone permission — allow it

Expected: Browser shows microphone as active (not muted).

Step 3: Verify RTP packets flowing

On the hydraneckwebrtc server, check that mic relay is forwarding packets:

# Check for UDP traffic on the mic relay port
ss -ulnp | grep 47995

Expected: A UDP socket is listening on port 47995 for the active session. Traffic should be flowing from hydraneckwebrtc to the body.

Step 4: Verify ffmpeg process on body

On the body (render node):

# Check for ffmpeg audio decode process
ps aux | grep ffmpeg | grep -v grep

Expected: An ffmpeg process is running, decoding RTP audio input and outputting to the VB-Cable virtual audio device.

Step 5: Verify VB-Cable audio device

On the body (Windows render node):

# Check VB-Cable is installed and active
Get-PnpDevice | Where-Object { $_.FriendlyName -like "*VB-Cable*" }

Expected: VB-Cable Virtual Audio Device is present and enabled.

Step 6: Verify UE app receives audio

  1. In the UE application, trigger an audio-reactive feature (if available)
  2. Speak into the browser microphone
  3. Observe the UE application's response

Expected: The UE application receives audio input via VB-Cable. Audio-reactive features respond to microphone input.


Audio Pipeline Diagram

Browser Mic
    |
    v (WebRTC audio track)
hydraneckwebrtc (mic relay)
    |
    v (RTP/UDP :47995)
hydravoice (on body)
    |
    v (pipe to ffmpeg)
ffmpeg (decode RTP to PCM)
    |
    v (audio output)
VB-Cable Virtual Audio Device
    |
    v (virtual mic input)
UE Application

Troubleshooting

| Symptom | Check | |---------|-------| | No mic permission prompt | Browser settings, HTTPS requirement | | No UDP traffic on :47995 | hydraneckwebrtc mic relay config, firewall | | No ffmpeg process | hydravoice service status, ffmpeg binary path | | VB-Cable not found | VB-Cable driver installation on body | | UE app no audio | VB-Cable selected as input device in UE audio settings |