RFC 2833 issue - tripling of digits due to final 2 payloads getting new timestamp
Los mantenedores suelen responder en 2 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 28/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Área
- audio-video-rtc
Línea de trabajo
The report names no code paths, only pcaps and frame numbers (frame 581 in both). First locate rtpengine's RFC 2833 DTMF relay and timestamp translation logic, then replay rtpengine-input.pcap through the daemon and compare outgoing packet timestamps. The last two end-bit packets getting distinct timestamps while the first ten share one points at the end-of-event timestamp handling; done means all twelve packets for one '1' press carry the same timestamp on output.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
rtpengine version the issue has been seen with
mr11.2.1.2
Used distribution and its version
Debian 11
Linux kernel version used
No response
CPU architecture issue was seen on (see uname -m)
x86_64
Expected behaviour you didn't see
The incoming RTP stream had 12 RFC 2833 packets corresponding to a single digit press (of '1') by the user. The first packet had the marker bit set and the last 3 had the end bit set. They all had the same timestamp (different duration) indicating this was a single dtmf event.
The outgoing stream relayed by rtpengine also had 12 RFC 2833 packets. Again, the final 3 packets had the end bit set, but the last 2 had different timestamps. In other words, the first 10 packets all had the same timestamp but packet 11 had a different timestamp and packet 12 yet a different timestamp.
As a result, the far end system detected that the user had pressed '1' three times instead of once.
Unexpected behaviour you saw
Final 2 RFC payloads have a different timestamp from the others that were part of the same dtmf event
Steps to reproduce the problem
For some reason, this is recreatable against a Genesys sip trunk, but I can see no issues with the rtp that they are sending. I will attach links to the two pcaps (coming into rtpengine, and leaving it below).
Note: we are not using the kernel module.
Additional program output to the terminal or logs illustrating the issue
No response
Anything else?
I am attaching links to two pcaps - one showing the rtp stream coming into rtpengine, and one showing the rtp stream leaving rtp engine.
Notes:
- rfc 2833 dtmf events start at frame 581 in rtpengine-input.pcap. All 12 packets have the same timestamp of 626536140
- rfc 2833 dtmf events start at frame 581 in rtpengine-output.pcap. The first 10 packets have the same timestamp of 626536418, the 11th has 626536578, and the 12th has 626536738.
- Lenguaje dominante
- Perl
- Estrellas
- 992
- Forks
- 459
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de sipwise/rtpengine
-
bug
Dificultad 1/5 Menos de una hora Aptitud para principiantes 75/100
Los mantenedores suelen responder en 2 días
-
HTTP/WS worker threads spin forever in `__websocket_write_done()` (`sched_yield` loop) — 100% CPU with `--listen-http`Posiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertobug
Dificultad 4/5 3-5 días Aptitud para principiantes 15/100
sipwise/rtpengine#2197 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
Kernel NULL pointer dereference in target_put() during target deletionPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertobug
Dificultad 4/5 3-5 días Aptitud para principiantes 38/100
sipwise/rtpengine#2190 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
Calls using a third logical interface are silently never written to Redis (breaks keyspace-notification HA)Posiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
sipwise/rtpengine#2181 · 4 comentarios ·
Los mantenedores suelen responder en 2 días
-
bug
Dificultad 3/5 1-2 días Aptitud para principiantes 45/100
sipwise/rtpengine#2162 · 1 comentario ·
Los mantenedores suelen responder en 2 días
Todos los issues de sipwise/rtpengine
Issues similares
-
Add .gitattributes so share/skel keeps LF on a Windows git checkoutPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
PerlDancer/Dancer2#1854 ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
major/MySQLTuner-perl#1007 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 69/100
bioconda/bioconda-recipes#70187 ·
Los mantenedores suelen responder en 2 días