Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

One way audio when Kernelizing media stream

Open
#1,840 9 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 2 days

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
15/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Quiet
Tech stack
c, linux, perl

Research direction

Reproduce the call and compare kernel mode against userspace forwarding; the /proc/rtpengine/0/list dump the reporter pasted shows 'src mismatch action: drop' on the kernel ports while the 'Kernelizing media stream' log lines mark the transition, so read how the kernel module matches source addresses and applies the PT filter and SSRC tracking there. One-way audio starts between the kernelize events (~1722008086) and the delete (~1722008090), and both call legs show it. Done means audio keeps flowing both ways after kernelization.

Written by the indexing model from the issue text.

Description

bug
rtpengine version the issue has been seen with

11.2.1.4+0~mr11.2.1.4 git-HEAD-1d93d9b4

Used distribution and its version

Ubuntu 22.04.3 LTS

Linux kernel version used

5.15.0-1048-gke

CPU architecture issue was seen on (see uname -m)

x86_64

Expected behaviour you didn't see

Audio continuing after entering kernel mode

Unexpected behaviour you saw

When kernelizing media stream happens (3-5 seconds after the call starts) one-way audio occurs.

Steps to reproduce the problem

Can reproduce on every call.

Additional program output to the terminal or logs illustrating the issue
[1722008079.782316] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [control] Received command 'offer' from 10.128.15.217:44476
[1722008079.782391] NOTICE: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] Creating new call
[1722008079.783197] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [control] Replying to 'offer' from 10.128.15.217:44476 (elapsed time 0.000863 sec)
[1722008081.345332] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [control] Received command 'answer' from 10.128.15.217:51727
[1722008081.346186] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [control] Replying to 'answer' from 10.128.15.217:51727 (elapsed time 0.000832 sec)
[1722008081.531392] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [control] Received command 'answer' from 10.128.15.217:60911
[1722008081.532306] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [control] Replying to 'answer' from 10.128.15.217:60911 (elapsed time 0.000888 sec)
[1722008082.722700] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [control] Received command 'answer' from 10.128.15.217:47254
[1722008082.723544] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [control] Replying to 'answer' from 10.128.15.217:47254 (elapsed time 0.000825 sec)
[1722008086.013362] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e port 20138]: [core] Confirmed peer address as 216.221.155.73:34438
[1722008086.013406] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e port 20138]: [core] Kernelizing media stream: 216.221.155.73:34438 -> 10.206.15.219:20138 | 10.206.15.219:20158 -> 10.12.1.2:14008
[1722008086.015473] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e port 20158]: [core] Confirmed peer address as 10.12.1.2:14008
[1722008086.015524] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e port 20158]: [core] Kernelizing media stream: 10.12.1.2:14008 -> 10.206.15.219:20158 | 10.206.15.219:20138 -> 216.221.155.73:34438
[1722008086.369899] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e port 20159]: [core] Confirmed peer address as 10.12.1.2:14009
[1722008086.369987] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e port 20159]: [core] Kernelizing media stream: 10.12.1.2:14009 -> 10.206.15.219:20159 | 10.206.15.219:20139 -> 216.221.155.73:34439
[1722008090.542910] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [control] Received command 'delete' from 10.128.15.217:41376
[1722008090.543055] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] Deleting call branch 'eb131e75-9998-4894-b8b7-ef3e20446bb6' (via-branch '')
[1722008090.543066] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] Removing media stream from kernel: local 10.206.15.219:20158
[1722008090.543080] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] Removing media stream from kernel: local 10.206.15.219:20138
[1722008090.543087] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] Removing media stream from kernel: local 10.206.15.219:20159
[1722008090.543115] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] Deleting call branch 'gK0485904b' (via-branch 'z9hG4bKPj9c61272d-2cfd-4a67-a3de-c0779b4071c40')
[1722008090.543132] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] Deleting entire call
[1722008090.543433] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] Final packet stats:
[1722008090.543530] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] --- Tag 'eb131e75-9998-4894-b8b7-ef3e20446bb6', created 0:11 ago for branch ''
[1722008090.543537] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] ---     subscribed to 'gK0485904b'
[1722008090.543541] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] ---     subscription for 'gK0485904b'
[1722008090.543548] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] ------ Media #1 (audio over RTP/AVP) using PCMU/8000
[1722008090.543556] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] --------- Port   10.206.15.219:20158 <>       10.12.1.2:14008, SSRC 67818910, in 162 p, 27864 b, 0 e, 3 ts, out 432 p, 74304 b, 0 e
[1722008090.543562] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] --------- Port   10.206.15.219:20159 <>       10.12.1.2:14009 (RTCP), SSRC 67818910, in 1 p, 100 b, 0 e, 4 ts, out 0 p, 0 b, 0 e
[1722008090.543569] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] --- Tag 'gK0485904b', created 0:11 ago for branch 'z9hG4bKPj9c61272d-2cfd-4a67-a3de-c0779b4071c40'
[1722008090.543572] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] ---     subscribed to 'eb131e75-9998-4894-b8b7-ef3e20446bb6'
[1722008090.543575] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] ---     subscription for 'eb131e75-9998-4894-b8b7-ef3e20446bb6'
[1722008090.543582] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] ------ Media #1 (audio over RTP/AVP) using PCMU/8000
[1722008090.543587] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] --------- Port   10.206.15.219:20138 <>  216.221.155.73:34438, SSRC 93c7fa89, in 432 p, 74304 b, 0 e, 0 ts, out 162 p, 27864 b, 0 e
[1722008090.543594] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [core] --------- Port   10.206.15.219:20139 <>  216.221.155.73:34439 (RTCP), SSRC 0, in 0 p, 0 b, 0 e, 8 ts, out 1 p, 100 b, 0 e
[1722008090.544326] INFO: [1e8344c1-4aaa-43b9-af71-fada6348ef5e]: [control] Replying to 'delete' from 10.128.15.217:41376 (elapsed time 0.001369 sec)

Results of cat /proc/rtpengine/0/list

local inet4 10.206.15.219:20114
    expect inet4 10.12.1.2:12426
    src mismatch action: drop
    stats:                  172 bytes,                    1 packets,                    0 errors
        RTP payload type   0:                  172 bytes,                    1 packets
    SSRC in: 694544a4
    option: RTP
    option: PT filter
    option: SSRC tracking
    output #0
       src inet4 10.206.15.219:20124
       dst inet4 142.190.3.138:4012
      stats:                  172 bytes,                    1 packets,                    0 errors
local inet4 10.206.15.219:20115
    expect inet4 10.12.1.2:12427
    src mismatch action: drop
    stats:                    0 bytes,                    0 packets,                    0 errors
    SSRC in: 694544a4
    option: RTP
    option: non forwarding
    option: SSRC tracking
local inet4 10.206.15.219:20124
    expect inet4 142.190.3.138:4012
    src mismatch action: drop
    stats:                17372 bytes,                  101 packets,                    0 errors
        RTP payload type   0:                17372 bytes,                  101 packets
        RTP payload type 101:                    0 bytes,                    0 packets
    SSRC in: 728c6747
    option: RTP
    option: PT filter
    option: SSRC tracking
    output #0
       src inet4 10.206.15.219:20114
       dst inet4 10.12.1.2:12426
      stats:                17372 bytes,                  101 packets,                    0 errors
local inet4 10.206.15.219:20125
    expect inet4 142.190.3.138:4013
    src mismatch action: drop
    stats:                    0 bytes,                    0 packets,                    0 errors
    SSRC in: 728c6747
    option: RTP
    option: non forwarding
    option: SSRC tracking
local inet4 10.206.15.219:20138
    expect inet4 216.221.155.73:34438
    src mismatch action: drop
    stats:                17372 bytes,                  101 packets,                    0 errors
        RTP payload type   0:                17372 bytes,                  101 packets
    SSRC in: 93c7fa89, 282beac
    option: RTP
    option: PT filter
    option: SSRC tracking
    output #0
       src inet4 10.206.15.219:20158
       dst inet4 10.12.1.2:14008
      stats:                17372 bytes,                  101 packets,                    0 errors
local inet4 10.206.15.219:20158
    expect inet4 10.12.1.2:14008
    src mismatch action: drop
    stats:                  172 bytes,                    1 packets,                    0 errors
        RTP payload type   0:                  172 bytes,                    1 packets
    SSRC in: 67818910
    option: RTP
    option: PT filter
    option: SSRC tracking
    output #0
       src inet4 10.206.15.219:20138
       dst inet4 216.221.155.73:34438
      stats:                  172 bytes,                    1 packets,                    0 errors
local inet4 10.206.15.219:20159
    expect inet4 10.12.1.2:14009
    src mismatch action: drop
    stats:                    0 bytes,                    0 packets,                    0 errors
    SSRC in: 67818910
    option: RTP
    option: non forwarding
    option: SSRC tracking


Other leg:

[1722008079.724665] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [control] Received command 'offer' from 10.128.15.217:50951
[1722008079.724762] NOTICE: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] Creating new call
[1722008079.725665] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [control] Replying to 'offer' from 10.128.15.217:50951 (elapsed time 0.000979 sec)
[1722008082.747001] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [control] Received command 'answer' from 10.128.15.217:41671
[1722008082.747769] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [control] Replying to 'answer' from 10.128.15.217:41671 (elapsed time 0.000748 sec)
[1722008086.009228] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx port 20114]: [core] Confirmed peer address as 10.12.1.2:12426
[1722008086.009307] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx port 20114]: [core] Kernelizing media stream: 10.12.1.2:12426 -> 10.206.15.219:20114 | 10.206.15.219:20124 -> 142.190.3.138:4012
[1722008086.020324] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx port 20124]: [core] Confirmed peer address as 142.190.3.138:4012
[1722008086.020376] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx port 20124]: [core] Kernelizing media stream: 142.190.3.138:4012 -> 10.206.15.219:20124 | 10.206.15.219:20114 -> 10.12.1.2:12426
[1722008087.577916] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx port 20125]: [core] Confirmed peer address as 142.190.3.138:4013
[1722008087.577987] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx port 20125]: [core] Kernelizing media stream: 142.190.3.138:4013 -> 10.206.15.219:20125 | 10.206.15.219:20115 -> 10.12.1.2:12427
[1722008087.749392] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx port 20115]: [core] Confirmed peer address as 10.12.1.2:12427
[1722008087.749466] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx port 20115]: [core] Kernelizing media stream: 10.12.1.2:12427 -> 10.206.15.219:20115 | 10.206.15.219:20125 -> 142.190.3.138:4013
[1722008090.522533] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [control] Received command 'delete' from 10.128.15.217:34650
[1722008090.522659] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] Deleting call branch 'egxMm-CpY-xfSYsxYnkpndcE2V50T0.l' (via-branch '')
[1722008090.522676] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] Removing media stream from kernel: local 10.206.15.219:20124
[1722008090.522688] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] Removing media stream from kernel: local 10.206.15.219:20114
[1722008090.522697] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] Removing media stream from kernel: local 10.206.15.219:20125
[1722008090.522702] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] Removing media stream from kernel: local 10.206.15.219:20115
[1722008090.522728] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] Deleting call branch 'e283b39a-1c6e-4d2e-babb-fe4097a56ad7' (via-branch 'z9hG4bKPjgKVhXvSe3ZIa4.eraGnEQzx70swzh.W60')
[1722008090.522740] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] Deleting entire call
[1722008090.523101] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] Final packet stats:
[1722008090.523113] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] --- Tag 'egxMm-CpY-xfSYsxYnkpndcE2V50T0.l', created 0:11 ago for branch ''
[1722008090.523116] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] ---     subscribed to 'e283b39a-1c6e-4d2e-babb-fe4097a56ad7'
[1722008090.523118] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] ---     subscription for 'e283b39a-1c6e-4d2e-babb-fe4097a56ad7'
[1722008090.523124] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] ------ Media #1 (audio over RTP/AVP) using PCMU/8000
[1722008090.523138] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] --------- Port   10.206.15.219:20124 <>   142.190.3.138:4012 , SSRC 728c6747, in 361 p, 62092 b, 0 e, 0 ts, out 165 p, 28380 b, 0 e
[1722008090.523144] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] --------- Port   10.206.15.219:20125 <>   142.190.3.138:4013  (RTCP), SSRC 728c6747, in 4 p, 280 b, 0 e, 3 ts, out 1 p, 100 b, 0 e
[1722008090.523149] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] --- Tag 'e283b39a-1c6e-4d2e-babb-fe4097a56ad7', created 0:11 ago for branch 'z9hG4bKPjgKVhXvSe3ZIa4.eraGnEQzx70swzh.W60'
[1722008090.523152] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] ---     subscribed to 'egxMm-CpY-xfSYsxYnkpndcE2V50T0.l'
[1722008090.523155] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] ---     subscription for 'egxMm-CpY-xfSYsxYnkpndcE2V50T0.l'
[1722008090.523161] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] ------ Media #1 (audio over RTP/AVP) using PCMU/8000
[1722008090.523170] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] --------- Port   10.206.15.219:20114 <>       10.12.1.2:12426, SSRC 694544a4, in 165 p, 28380 b, 0 e, 3 ts, out 361 p, 62092 b, 0 e
[1722008090.523175] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [core] --------- Port   10.206.15.219:20115 <>       10.12.1.2:12427 (RTCP), SSRC 694544a4, in 1 p, 100 b, 0 e, 3 ts, out 4 p, 280 b, 0 e
[1722008090.523803] INFO: [qp1McBxQmj.TueQaVEpY0z28-pihSvFx]: [control] Replying to 'delete' from 10.128.15.217:34650 (elapsed time 0.001228 sec)
Anything else?

rtpengine.conf:

[rtpengine]
interface=internal/10.206.15.219;external/10.206.15.219!34.174.151.15
listen-ng=10.206.15.219:22222
foreground=true
log-stderr=true
port-min=10001
port-max=59999
recording-dir=/tmp
recording-method=pcap
recording-format=eth
log-level=5
delete-delay=0
offer-timeout=1800
final-timeout=21600
listen-http=10.206.15.219:22223
redis=10.206.15.219:6379/1
redis-connect-timeout=3000

This call is controlled by kamailio.

Dominant language
Perl
Stars
992
Forks
459
PR merge metrics
No merged PRs in 30d

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from sipwise/rtpengine

All issues in sipwise/rtpengine

Similar issues

More Perl issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.