<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.m-8827279076902006552hoenzb
        {mso-style-name:m_-8827279076902006552hoenzb;}
span.E-MailFormatvorlage19
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="DE" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US">I did a quick check between what I have set and your settings below.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US">You can try the following and see if it helps<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US">In your endpoint:<br>
bind_rtp_to_media_address=yes<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:12.0pt;font-family:"Times New Roman",serif"> <o:p></o:p></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US" style="font-size:12.0pt;font-family:"Times New Roman",serif"> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt;font-family:"Arial",sans-serif;color:black">With best regards<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt;font-family:"Arial",sans-serif;color:black"><br>
</span><b><span lang="EN-US" style="font-size:10.0pt;font-family:"Arial",sans-serif;color:black">Florian Floimair<br>
</span></b><span lang="EN-US" style="font-size:10.0pt;font-family:"Arial",sans-serif;color:black">Innovation - Software-Development -  VoIP & DevOps</span><span lang="EN-US" style="font-size:10.0pt;font-family:"Arial",sans-serif;color:black"><br>
<br>
<b>COMMEND INTERNATIONAL GMBH<br>
</b>A-5020 Salzburg, Saalachstraße 51<br>
Tel: +43-662-85 62 25<br>
Fax: +43-662-85 62 26<br>
</span><span lang="DE-AT" style="font-size:10.0pt;font-family:"Arial",sans-serif;color:black"><a href="http://www.commend.com"><span lang="EN-US">http://www.commend.com</span></a></span><span lang="EN-US" style="font-size:10.0pt;font-family:"Arial",sans-serif;color:black"><br>
<br>
<b>Security and Communication by Commend<br>
<br>
</b></span><span lang="EN-US" style="font-size:8.0pt;font-family:"Arial",sans-serif;color:gray">FN 178618z | LG Salzburg</span><span lang="EN-US" style="font-size:12.0pt;font-family:"Times New Roman",serif"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><b>Von:</b> asterisk-users-bounces@lists.digium.com [mailto:asterisk-users-bounces@lists.digium.com]
<b>Im Auftrag von </b>Benjamin Marty<br>
<b>Gesendet:</b> Mittwoch, 11. April 2018 08:55<br>
<b>An:</b> Asterisk Users Mailing List - Non-Commercial Discussion <asterisk-users@lists.digium.com><br>
<b>Betreff:</b> Re: [asterisk-users] Asterisk behind NAT Early Media Video<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<div>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">I think I found the root cause. The H264 Early Media video is received successfully on the Asterisk Server. It also seems to get processed. But it's send to the private IP of the receipent SIP phone.<o:p></o:p></p>
</div>
<p class="MsoNormal">For clarification:<o:p></o:p></p>
</div>
<p class="MsoNormal">178.82.XX.XX is my Public IP of my Internet access. Both phones use this as Public IP via standard Source NAT.<o:p></o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt">159.89.XX.XX is the IP of the Asterisk Server. For this test I used a Server without Destination NAT. So the eth0 interface has this IP.<o:p></o:p></p>
</div>
<p class="MsoNormal">Packet capture:<o:p></o:p></p>
<div>
<div>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">No.     Time                          Source                Destination           Protocol Length Info<br>
    141 2018-04-11 06:40:03.306561    178.82.XX.XX          159.89.XX.XX        H264     64     PT=H264, SSRC=0x3CB1E12D, Seq=19561, Time=319121408 SPS<br>
<br>
Frame 141: 64 bytes on wire (512 bits), 64 bytes captured (512 bits)<br>
Ethernet II, Src: JuniperN_34:67:f0 (40:a6:77:34:67:f0), Dst: da:81:42:3d:d0:e7 (da:81:42:3d:d0:e7)<br>
Internet Protocol Version 4, Src: 178.82.169.0, Dst: 159.89.104.193<br>
User Datagram Protocol, Src Port: 5006, Dst Port: 13182<br>
Real-Time Transport Protocol<br>
H.264<br>
<br>
No.     Time                          Source                Destination           Protocol Length Info<br>
    142 2018-04-11 06:40:03.306682    159.89.XX.XX        192.168.XX.XX         H264     64     PT=H264, SSRC=0x5EE97C55, Seq=30572, Time=319121408 SPS<br>
<br>
Frame 142: 64 bytes on wire (512 bits), 64 bytes captured (512 bits)<br>
Ethernet II, Src: da:81:42:3d:d0:e7 (da:81:42:3d:d0:e7), Dst: IETF-VRRP-VRID_6e (00:00:5e:00:01:6e)<br>
Internet Protocol Version 4, Src: 159.89.104.193, Dst: 192.168.1.185<br>
User Datagram Protocol, Src Port: 10298, Dst Port: 5022<br>
Real-Time Transport Protocol<br>
H.264<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">PJSIP.conf:<br>
[7004]<br>
type = endpoint<br>
context = internal<br>
rewrite_contact = yes<br>
direct_media = no<br>
rtp_symmetric = yes<br>
;force_rport = yes<br>
disallow = all<br>
allow = g722, alaw, ulaw, gsm, ilbc, h264<br>
aors = 7004<br>
auth = auth7004<br>
<br>
[7004]<br>
type = aor<br>
max_contacts = 2<br>
<br>
[auth7004]<br>
type=auth<br>
auth_type=userpass<br>
password=1234<br>
username=7004<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">extensions.conf:<br>
[internal]<br>
exten => _700X,1,Dial(PJSIP/${EXTEN})<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><o:p> </o:p></p>
</div>
</div>
</div>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">2018-04-10 16:43 GMT+02:00 Benjamin Marty <<a href="mailto:benjamin.marty@gmail.com" target="_blank">benjamin.marty@gmail.com</a>>:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">I just noticed, the calling device isn't even sending the early media video stream. It just sends an early media audio stream. Is there propably a change in the signaling needed?<o:p></o:p></p>
</div>
<p class="MsoNormal">(On another P2P SIP Server the early media video works.)<o:p></o:p></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">2018-04-10 12:29 GMT+02:00 Benjamin Marty <<a href="mailto:benjamin.marty@gmail.com" target="_blank">benjamin.marty@gmail.com</a>>:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<div>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">Hi Florian<o:p></o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt">I already have the external_media_address set in the PJSIP setup. Also the external_signaling_address is set to the Public IP. If I make a call from an Early Media (video&audio) capable device to an Early Media
 capable device (also video&audio) the Early Media audio works perfectly. But no video. If I sniff with wireshark on the recipent device I just see G711 (audio) RTP traffic. The h264 RTP traffic is missing before I accept the call. After accepting the call
 the h264 RTP traffic comes through.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">The 183 SIP protocoll comes through. Even Asterisk is noticing it:<br>
-- PJSIP/6002-00000013 is making progress passing it to PJSIP/6001-00000012<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt">I tried both Asterisk 15 with pjsip.conf configuration and Asterisk 13 with sip.conf (chan_sip). In both cases I just put the both case AST_FRAME_VIDEO: statements before the two voice cases, like in your diff
 and recompiled/reinstalled.<o:p></o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt">Regards<o:p></o:p></p>
</div>
<p class="MsoNormal"><span class="m-8827279076902006552hoenzb"><span style="color:#888888">Benjamin<o:p></o:p></span></span></p>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><o:p> </o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">2018-04-10 9:37 GMT+02:00 Floimair Florian <<a href="mailto:f.floimair@commend.com" target="_blank">f.floimair@commend.com</a>>:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<p class="MsoNormal">Hi Benjamin!<br>
<br>
You're obviously using a similar scenario that I have in place for testing.<br>
I initially had issues with early media (not only video also audio) as well in that scenario. What I had to do was to additionally set<br>
<br>
external_media_address=<your external IP><br>
<br>
in pjsip.conf<br>
<br>
Also, as I wrote the patch for early-media video I'd be interested in any feedback from it.<br>
<br>
<br>
 <br>
 <br>
With best regards<br>
<br>
Florian Floimair<br>
Innovation - Software-Development -  VoIP & DevOps<br>
<br>
COMMEND INTERNATIONAL GMBH<br>
A-5020 Salzburg, Saalachstraße 51<br>
Tel: +43-662-85 62 25<br>
Fax: +43-662-85 62 26<br>
<a href="https://linkprotect.cudasvc.com/url?a=http%3a%2f%2fwww.commend.com&c=E,1,3-QFS79bl07XJ1At9-FN042YWg_pIhOoaMJ3B13IzEVsdUP_-SFZDUg5wBrnkEzQgB7TrZRQzaiO0icSJ3UXSJSRnjIVOu0661La-Fj5_q1BczQlPWU_otM,&typo=1" target="_blank">http://www.commend.com</a><br>
<br>
Security and Communication by Commend<br>
<br>
FN 178618z | LG Salzburg<br>
<br>
-----Ursprüngliche Nachricht-----<br>
Von: <a href="mailto:asterisk-users-bounces@lists.digium.com" target="_blank">asterisk-users-bounces@lists.digium.com</a> [mailto:<a href="mailto:asterisk-users-bounces@lists.digium.com" target="_blank">asterisk-users-bounces@lists.digium.com</a>] Im Auftrag
 von Joshua Colp<br>
Gesendet: Montag, 9. April 2018 18:15<br>
An: <a href="mailto:asterisk-users@lists.digium.com" target="_blank">asterisk-users@lists.digium.com</a><br>
Betreff: Re: [asterisk-users] Asterisk behind NAT Early Media Video<br>
<br>
On Mon, Apr 9, 2018, at 1:05 PM, Benjamin Marty wrote:<br>
> wohoo, so if I unterstand it correctly with that patch early media<br>
> video works over the Asterisk server? In other words the Asterisk<br>
> server get's able to (process/)forward the early media video stream with that patch?<br>
<br>
The patch forwards video while in an early media state before the call is answered and bridged, yes.<br>
<br>
--<br>
Joshua Colp<br>
Digium, Inc. | Senior Software Developer<br>
445 Jan Davis Drive NW - Huntsville, AL 35806 - US Check us out at: <a href="https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fwww.digium.com&c=E,1,fYho2t3OGEPSC6ILhV9IAhfyqyv57q-c2eodmmoTlhRYCnEpbgeqpqYbk39h-m_lDWff7UIltd0zakv3XGb858ysVJbX0qeWGwdsbcgvduNnaBqVCDk,&typo=1" target="_blank">
https://linkprotect.cudasvc.com/url?a=https%3a%2f%2fwww.digium.com&c=E,1,fYho2t3OGEPSC6ILhV9IAhfyqyv57q-c2eodmmoTlhRYCnEpbgeqpqYbk39h-m_lDWff7UIltd0zakv3XGb858ysVJbX0qeWGwdsbcgvduNnaBqVCDk,&typo=1</a> &
<a href="http://www.asterisk.org" target="_blank">www.asterisk.org</a><br>
<br>
--<br>
_____________________________________________________________________<br>
-- Bandwidth and Colocation Provided by <a href="https://linkprotect.cudasvc.com/url?a=http%3a%2f%2fwww.api-digital.com&c=E,1,XToemLgPy6NQVyb_dF1q0qXSk-3YylF6rmIrWQvPhspxagnF5G63VHCU2nB67YHjZewMQU1rUCME4JBQMFPmNOCpc6ESOin_3Al6kti-lRo,&typo=1" target="_blank">
https://linkprotect.cudasvc.com/url?a=http%3a%2f%2fwww.api-digital.com&c=E,1,XToemLgPy6NQVyb_dF1q0qXSk-3YylF6rmIrWQvPhspxagnF5G63VHCU2nB67YHjZewMQU1rUCME4JBQMFPmNOCpc6ESOin_3Al6kti-lRo,&typo=1</a> --<br>
<br>
Check out the new Asterisk community forum at: <a href="https://community.asterisk.org/" target="_blank">
https://community.asterisk.org/</a><br>
<br>
New to Asterisk? Start here:<br>
      <a href="https://wiki.asterisk.org/wiki/display/AST/Getting+Started" target="_blank">
https://wiki.asterisk.org/wiki/display/AST/Getting+Started</a><br>
<br>
asterisk-users mailing list<br>
To UNSUBSCRIBE or update options visit:<br>
   <a href="https://linkprotect.cudasvc.com/url?a=http%3a%2f%2flists.digium.com%2fmailman%2flistinfo%2fasterisk-users&c=E,1,6VfJH-ysYuWrel9Apl4EqHb4_MpDTQHdQ3lJU3_Zojgbn4stUdMfchlswYSSwVO9jmol-9H658j2bZr9JmLmb9WCM5OXKTsb_DsBIYKACtBorWRSU6-q1FjJkrbc&typo=1" target="_blank">https://linkprotect.cudasvc.com/url?a=http%3a%2f%2flists.digium.com%2fmailman%2flistinfo%2fasterisk-users&c=E,1,6VfJH-ysYuWrel9Apl4EqHb4_MpDTQHdQ3lJU3_Zojgbn4stUdMfchlswYSSwVO9jmol-9H658j2bZr9JmLmb9WCM5OXKTsb_DsBIYKACtBorWRSU6-q1FjJkrbc&typo=1</a><o:p></o:p></p>
<div>
<div>
<p class="MsoNormal"><br>
--<br>
_____________________________________________________________________<br>
-- Bandwidth and Colocation Provided by <a href="https://linkprotect.cudasvc.com/url?a=http%3a%2f%2fwww.api-digital.com&c=E,1,PnNwdEEyPY7U1qaNcxb8yUrJXcp8-NvkrDLCR364tWngtudmTLLLKMqIZMGStTHZj13smqfVh9i5NxlSKDrNcwhVpVtXB2PEy_r7vw_mFQVXvOTG6Ij1gYZW&typo=1" target="_blank">
http://www.api-digital.com</a> --<br>
<br>
Check out the new Asterisk community forum at: <a href="https://community.asterisk.org/" target="_blank">
https://community.asterisk.org/</a><br>
<br>
New to Asterisk? Start here:<br>
      <a href="https://wiki.asterisk.org/wiki/display/AST/Getting+Started" target="_blank">
https://wiki.asterisk.org/wiki/display/AST/Getting+Started</a><br>
<br>
asterisk-users mailing list<br>
To UNSUBSCRIBE or update options visit:<br>
   <a href="https://linkprotect.cudasvc.com/url?a=http%3a%2f%2flists.digium.com%2fmailman%2flistinfo%2fasterisk-users&c=E,1,uQCF0lb-FVg7pXggKAUTEtnGK1_1mGw0nOxXQuIjguKmln4FVUxJx5U_zKiUgjLJga4yYkV2gBkqpmYOax10QzZSczShffKMpqE2hPha_ocKhdu0Vdbm8Q,,&typo=1" target="_blank">http://lists.digium.com/mailman/listinfo/asterisk-users</a><o:p></o:p></p>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</body>
</html>