jamulussoftware / jamulussoftware/jamulus

Improve the jitter buffer

Abierto
#545 17 comentarios 0 reacciones 0 asignados Ver en GitHub
feature request
Lenguaje dominante
C
Estrellas
1.1k
Forks
248
Merge medio
2 d 3 h
PR fusionados (30 d)
9

Descripción

The idea is:
A new jitter buffer uses a timing histogram to compute the actual jitter relative to the audio device or system clock timer.
A bit sequence will be added to all transmitted frames to improve the jitter histogram computation.

Open issues:
- What about compatibility to old Jamulus servers and clients?
- How does the new auto jitter buffer algorithm behave? For what situation is it optimized? See, e.g., https://github.com/corrados/jamulus/issues/417.
- The old algorithm was designed to measure the block error rate for different jitter buffer sizes. What is the metric for the new auto jitter buffer algorithm to set the buffer size?
- We are using an unused bit in the OPUS bit stream. Question: Why is this bit not used? Is it a reserved bit? Do we have a reference to the OPUS specification document, where this bit is mentioned? Is there a risk that at a later version of OPUS that this bit is then used by OPUS and we cannot upgrade Jamulus to a new OPUS version?
- A documentation of the algorithm should be added so that others can understand what's going on and can improve/tune the new algorithm.

A first patch is already available: https://github.com/corrados/jamulus/pull/539.

See also the discussion in the pull request: https://github.com/corrados/jamulus/pull/529#issuecomment-678292903

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza revisando el primer parche de pull request #539 y la discusión de pull request #529. Examina el histograma de tiempos propuesto, la secuencia de bits del frame transmitido, la compatibilidad con clientes y servidores antiguos y el uso de bits de OPUS. Para darlo por terminado, debe haber un algoritmo y una métrica establecidos, las cuestiones de compatibilidad y especificación resueltas y el algoritmo documentado.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
c
Área
audio-video-rtc
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
20/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.