Implement adaptive frame dropping (#10)

- Implement adaptive frame dropping to prevent latency from accumulating
- small packets are dropped and a crossfade is used to hide the dropping.
- still audible in some situations

Co-authored-by: pstruebi <struebin.patrick.com>
Reviewed-on: https://gitea.pstruebi.xyz/auracaster/bumble-auracast/pulls/10
This commit was merged in pull request #10.
This commit is contained in:
2025-11-04 17:16:33 +01:00
parent 5a1e1f13ac
commit 98dd00e653
7 changed files with 677 additions and 100 deletions
+1 -9
View File
@@ -1,6 +1,5 @@
import sounddevice as sd, pprint
from auracast.utils.sounddevice_utils import devices_by_backend, list_usb_pw_inputs, list_network_pw_inputs
from auracast.utils.sounddevice_utils import devices_by_backend
print("PortAudio library:", sd._libname)
print("PortAudio version:", sd.get_portaudio_version())
@@ -15,10 +14,3 @@ for i, d in devices_by_backend("PulseAudio"):
print(f"{i}: {d['name']} in={d['max_input_channels']} out={d['max_output_channels']}")
print("Network pw inputs:")
for i, d in list_network_pw_inputs():
print(f"{i}: {d['name']} in={d['max_input_channels']}")
print("USB pw inputs:")
for i, d in list_usb_pw_inputs():
print(f"{i}: {d['name']} in={d['max_input_channels']}")