green-nx 1.0.5
Audio fixed
The scratchy / stuttering / freezing sound present since 1.0.0 is gone. It had three root causes, all below the app's own playback code:
- SDL2's Switch audio backend is broken: it queues one hardware buffer at a time and busy-waits for it to start playing before accepting more audio, in 5 ms audio-renderer steps. The device ends up consuming audio at ~85% of real time with a 5 ms gap whenever a cycle loses the race. green-nx now feeds the console's
audoutservice directly, keeping four 10 ms buffers queued at all times — gapless by construction. - Packet reordering: Opus audio packets are now reordered by RTP sequence number before decoding (Opus is stateful — decoding out of order is audible). Required a libpeer fix to stop stripping the RTP header from generic payloads.
- Clock-skew servo: the server's 48 kHz and the console's 48 kHz are different physical clocks. A depth servo now stretches/shrinks decoded audio by up to 0.2% (inaudible) to hold buffering at a 100 ms target, so drift can never accumulate into a dropout.
Also adds per-second audio telemetry to stream-log.txt — if you ever hear an issue, the log now shows exactly which stage caused it.
Install
Copy green-nx.nro to /switch/ on your SD card.