Hello again Pan and Thank You for looking at this!! Here is the pcap for the call that is
not showing video on either side of the call. As I mentioned I do get two way Audio, the
call stays connected, but just no Video. The Video ports look to be correct. Video
packets appear to go out (at least packets are going out over the Video ports). The screen
on the Caller (A WebRTC Client) and the Called (A Provider Phone) are both blank. The
WebRTC client is Registered in Kamailio
Note: when I sanitized the file using tcprewrite an extra RTP packet appeared (Unknown RTP
packet version 0), this was not here in the original.
I use Kamailio 5.2.0 and Asterisk 15.3
Thank you again!,
-Steve
From: sr-users [mailto:sr-users-bounces@lists.kamailio.org] On Behalf Of Pan Christensen
Sent: Friday, June 8, 2018 5:12 PM
To: Kamailio (SER) - Users Mailing List <sr-users(a)lists.kamailio.org>
Subject: Re: [SR-Users] Peculiar Kamailio Asterisk behavior on outbound calls
Dear Steve.
Asterisk is a B2BUA. It doesn't just route SIP messages like Kamailio does. Most of
the time, it answers the call, sets up a new call to the other party and then bridges the
two calls, making two separate call IDs (depending on your configuration).
Additional comments in blue inline below:
* INVITE from Caller to Kamailio (this is where the Caller is Registered) offering
VP8
* Kamailio will relay the INVITE to Asterisk
* Asterisk probably sends 183/200 back to callee, finalizing this codec negotiation.
VP8 is chosen for this call leg.
* Asterisk will INVITE Called
* Called sends '200 OK' to Asterisk requesting H264
* yes
* Asterisk Sends '200 OK' back to Kamailio to be relayed to Caller accepting
VP8
* No. I assume that the callee didn't accept VP8 because it doesn't support
it. It instead chose the highest priority codec it supported among the codecs that
Asterisk advertised.
* Asterisk accepts this codec because it supports it. There is no test checking
which codec was chosen on the caller side and there is no renegotiation. Hence, video is
broken forever.
Again, if you could show us the details (like attaching the SDPs that I asked for
previously), then we wouldn't have to guess what's happening. We could tell you
for sure.
Med vennlig hilsen
Pan B. Christensen
From: sr-users
<sr-users-bounces@lists.kamailio.org<mailto:sr-users-bounces@lists.kamailio.org>>
On Behalf Of Wilkins, Steve
Sent: fredag 8. juni 2018 22:27
To: Kamailio (SER) - Users Mailing List
<sr-users@lists.kamailio.org<mailto:sr-users@lists.kamailio.org>>
Subject: Re: [SR-Users] Peculiar Kamailio Asterisk behavior on outbound calls
Hi Pan,
If the Registered caller is a WebRTC client (Caller) whose preferred coded is VP8, calls a
Phone (Called) whose preferred Video is H264, I should see
* INVITE from Caller to Kamailio (this is where the Caller is Registered) offering
VP8
* Kamailio will relay the INVITE to Asterisk
* Asterisk will INVITE Called
* Called sends '200 OK' to Asterisk requesting H264
* Asterisk Sends '200 OK' back to Kamailio to be relayed to Caller accepting
VP8
Is this correct? Then I think one of the issues is that there is no fmtp line in the VP8.
The only codecs that have fmtp lines is for the H264 codecs.
Thank you,
-Steve
From: sr-users [mailto:sr-users-bounces@lists.kamailio.org] On Behalf Of Pan Christensen
Sent: Friday, June 8, 2018 11:06 AM
To: Kamailio (SER) - Users Mailing List
<sr-users@lists.kamailio.org<mailto:sr-users@lists.kamailio.org>>
Subject: Re: [SR-Users] Peculiar Kamailio Asterisk behavior on outbound calls
That's not strange. The soft phone probably doesn't advertise support for VP8, so
it's not chosen.
Calling from WebRTC, I assume that VP8 is the preferred codec and Asterisk accepts it.
Asterisk then finds out that the soft phone doesn't support VP8 and negotiates a
different codec with that client.
If you show us the SDPs of INVITE and 183/200 on both sides of Asterisk (in the order they
are sent), we can tell you exactly what happens. Failing that, I'd say that the
culprit is Asterisk, which probably negotiates two different codecs without the ability to
transcode.
With kind regards
Pan B. Christensen
Developer
Phonect AS
From: sr-users
<sr-users-bounces@lists.kamailio.org<mailto:sr-users-bounces@lists.kamailio.org>>
On Behalf Of Wilkins, Steve
Sent: fredag 8. juni 2018 15:09
To: Kamailio (SER) - Users Mailing List
<sr-users@lists.kamailio.org<mailto:sr-users@lists.kamailio.org>>
Subject: Re: [SR-Users] Peculiar Kamailio Asterisk behavior on outbound calls
Yes, for example a WebRTC Client (VP8) calls a Soft-Phone (H264). What is strange is that
if it is the other way around and the Soft-Phone calls the WebRTC client, it works.
Thank you
From: sr-users [mailto:sr-users-bounces@lists.kamailio.org] On Behalf Of Pan Christensen
Sent: Friday, June 8, 2018 9:00 AM
To: Kamailio (SER) - Users Mailing List
<sr-users@lists.kamailio.org<mailto:sr-users@lists.kamailio.org>>
Subject: Re: [SR-Users] Peculiar Kamailio Asterisk behavior on outbound calls
Hello Steve.
Does Asterisk negotiate different codecs with each client? If so, it needs to transcode,
which I believe is currently not supported for video. What does Asterisk send back to
device A?
With kind regards
Pan B. Christensen
Developer
Phonect AS
From: sr-users
<sr-users-bounces@lists.kamailio.org<mailto:sr-users-bounces@lists.kamailio.org>>
On Behalf Of Wilkins, Steve
Sent: fredag 8. juni 2018 14:03
To: Kamailio (SER) - Users Mailing List
<sr-users@lists.kamailio.org<mailto:sr-users@lists.kamailio.org>>
Subject: [SR-Users] Peculiar Kamailio Asterisk behavior on outbound calls
Hi All,
Issue: when a Call is made through Kamailio and Asterisk. Asterisk uses incorrect Video
RTP Payload Type when sending Video packets.
I have a situation where I make a call from Device A to Device B and Device A is
Registered in Kamailio. When Device A Calls Device B, Kamailio sends an 'INVITE'
to Asterisk, Asterisk then 'INVITES' Device B. I get two-way Audio, the call
stays connected, however, when Video packets are sent to Device B, the RTP Payload Type is
incorrect. The port is correct, but just not the Payload Type.
Here is where I think Kamailio is involved. In the first Invite from Kamailio to Asterisk,
one of the offered Video codecs is '100 H264'; interesting enough, Device B wants
to use '115 H264' and when Asterisk sends out Video packets, it is using
'100' instead of '115', and of course I have no Video. I don't know
if this is just a coincidence but it sure seems like that is where the issue may lie.
Has anyone ever seen this behavior? The Asterisk teams does not think it's an
Asterisk issue.
Thank you,
-Steve