[Asterisk-video] app_mp4

Ramtin Amin keytwho at hotmail.com
Wed May 24 10:18:16 MST 2006


I've already tryed with vlc to stream to my eyebeam. or wengophone (www.openwengo.fr download the classical one)
I basically look with ethereal what's the RTP port in the SDP and send the stream and it works, It would also be possible with vlc to say that the audio channel has to be asterisk and open a port with asterisk for listening the RTP for DTMF ( trying to get the DTMF from the media stream is so old that I doubt that any video SIP phone still uses that...)
Btw, I've made two patched for the SIP and RTP for asterisk since this one has a bug sending it's own IP for the RTP in the SDP instead of the IP it's listening to...
 
Would be cool to have a comment on it and eventually to co...
 
--- rtp.c       2006-05-24 15:14:42.000000000 +0200+++ rtp_patched.c       2006-05-24 15:28:50.000000000 +0200@@ -66,6 +66,15 @@ static int rtpend = 0; static int rtpdebug = 0;               /* Are we debugging? */ static struct sockaddr_in rtpdebugaddr;        /* Debug packets to/from this host */+++/* *** PATCHED *** */+static struct in_addr rtp_bindaddr;+/* ************** */++++ #ifdef SO_NO_CHECK static int nochecksums = 0; #endif@@ -958,7 +967,11 @@        for (;;) {                /* Must be an even port number by RTP spec */                rtp->us.sin_port = htons(x);-               rtp->us.sin_addr = addr;+++               //PATCHED ->>> rtp->us.sin_addr = addr;+               rtp->us.sin_addr = (rtp_bindaddr.s_addr != 0 ? rtp_bindaddr : addr);+                /* If there's rtcp, initialize it as well. */                if (rtp->rtcp)                        rtp->rtcp->us.sin_port = htons(x + 1);@@ -1825,6 +1838,12 @@        struct ast_config *cfg;        char *s;
+// PATCHED+       struct ast_hostent ahp;+        struct hostent *hp;+++        rtpstart = 5000;        rtpend = 31000;        dtmftimeout = DEFAULT_DTMF_TIMEOUT;@@ -1844,7 +1863,21 @@                        if (rtpend > 65535)                                rtpend = 65535;                }-               if ((s = ast_variable_retrieve(cfg, "general", "rtpchecksums"))) {+++               /* *** PATCHED *** */+                if ((s = ast_variable_retrieve(cfg, "general", "rtp_bindaddr"))) {+                               if (!(hp = ast_gethostbyname(s, &ahp))) {+                        ast_log(LOG_WARNING, "Invalid address: %s\n", s);+                               } else {+                        memcpy(&rtp_bindaddr, hp->h_addr, sizeof(rtp_bindaddr));+                               }+                }+                /* ************** */++++       if ((s = ast_variable_retrieve(cfg, "general", "rtpchecksums"))) { #ifdef SO_NO_CHECK                        if (ast_false(s))                                nochecksums = 1;
 
 
 
 
 
And for the chan_sip.c
 
 
 
--- chan_sip.c  2006-05-24 15:02:43.000000000 +0200+++ chan_sip_patched.c  2006-05-24 15:05:02.000000000 +0200@@ -4441,14 +4441,16 @@                if (p->redircodecs)                        capability = p->redircodecs;        } else {-               dest.sin_addr = p->ourip;+               //PATCHED HERE ->>> dest.sin_addr = p->ourip;+               dest.sin_addr = sin.sin_addr.s_addr !=0 ? sin.sin_addr:p->ourip;                dest.sin_port = sin.sin_port;        }
        /* Determine video destination */        if (p->vrtp) {                if (p->vredirip.sin_addr.s_addr) {-                       vdest.sin_port = p->vredirip.sin_port;+                       //PATCHED HERE ->>> vdest.sin_port = p->vredirip.sin_port;+                       vdest.sin_addr = vsin.sin_addr.s_addr != 0 ? vsin.sin_addr:p->ourip;                        vdest.sin_addr = p->vredirip.sin_addr;                } else {                        vdest.sin_addr = p->ourip;
 
 
 
 
 
 



> From: oej at edvina.net> Subject: Re: [Asterisk-video] app_mp4> Date: Wed, 24 May 2006 19:07:53 +0200> To: asterisk-video at lists.digium.com> > > 24 maj 2006 kl. 18.29 skrev Ramtin Amin:> > > Wouldn't it be possible to use VLC for transcoding the video ?  > > Everything is already done actually, we could in the vlm just tell  > > vlc to listen on a specific RTP port from where the h.263/h.264  > > stream comes, transcode it into whatever, and resend it.> >> > Is there any probleme using this method ?> Amin,> That's an idea I've also been discussing. If you have some time,  > please dive into this and> find out if it's possible, what the licensing is and what kind of API  > we could use for it.> > If we could have VLC on a separate machine doing transcoding, that  > would propably> be a solution.> > Maybe a generic way to signal that we need RTP with transcoding  > support to an> external device would be a way forward? We still need to be in the  > audio path for> DTMF - so how would we handle RTCP synching in such a scenario?> > /O> _______________________________________________> --Bandwidth and Colocation provided by Easynews.com --> > asterisk-video mailing list> To UNSUBSCRIBE or update options visit:>    http://lists.digium.com/mailman/listinfo/asterisk-video
_________________________________________________________________
Une chance par jour de gagner un voyage au soleil avec Magic Search !
http://www.magicsearch.fr
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.digium.com/pipermail/asterisk-video/attachments/20060524/cb3f3460/attachment-0001.htm


More information about the asterisk-video mailing list