[asterisk-bugs] [Asterisk 0015484]: [branch] RTMP support in Asterisk

Asterisk Bug Tracker noreply at bugs.digium.com
Fri Nov 12 02:33:26 CST 2010


A NOTE has been added to this issue. 
====================================================================== 
https://issues.asterisk.org/view.php?id=15484 
====================================================================== 
Reported By:                phsultan
Assigned To:                phsultan
====================================================================== 
Project:                    Asterisk
Issue ID:                   15484
Category:                   Channels/NewFeature
Reproducibility:            N/A
Severity:                   feature
Priority:                   normal
Status:                     ready for testing
Target Version:             1.10
Asterisk Version:           SVN 
JIRA:                       SWP-1477 
Regression:                 No 
Reviewboard Link:            
SVN Branch (only for SVN checkouts, not tarball releases):  trunk 
SVN Revision (number only!):  
Request Review:              
====================================================================== 
Date Submitted:             2009-07-10 07:30 CDT
Last Modified:              2010-11-12 02:33 CST
====================================================================== 
Summary:                    [branch] RTMP support in Asterisk
Description: 
I created a new branch that implements Adobe's RTMP (Real Time Media
Protocol).

It allows Asterisk to connect as a client to an RTMP media server like
Red5 or FMS (Flash Media Server), and then publish or receive media streams
from such server. I only tested the connection with Red5.

To install the branch, you'll need several libavcodec, included in FFMPEG
version 0.6. Be careful to configure FFMPEG's sources with the
--enable-shared option activated in the configure script.

Prior to install Asterisk, you need to have librtmp on your system.
librtmp is part of the rtmpdump program : http://rtmpdump.mplayerhq.hu/

To install it :
# wget http://rtmpdump.mplayerhq.hu/download/rtmpdump-2.2e.tar.gz [^]
# tar zxvf rtmpdump-2.2e.tar.gz
# cd rtmpdump-2.2e/
# make
# make install

To install Asterisk :
# svn co http://svn.digium.com/svn/asterisk/team/phsultan/rtmp-support
asterisk-rtmp
# cd asterisk-rtmp
# ./configure
# make menuselect
[check here that chan_rtmp is eligible for installation]
# make
# make install
====================================================================== 

---------------------------------------------------------------------- 
 (0128818) cmendes0101 (reporter) - 2010-11-12 02:33
 https://issues.asterisk.org/view.php?id=15484#c128818 
---------------------------------------------------------------------- 
@deleolajide

Does that mean something like this:
struct rtmp_pvt {
        struct ast_channel *owner;
        pthread_t thread;
        AVCodec *encoder;
        AVCodec *decoder;
        AVCodecContext *encoding_context;
        AVCodecContext *decoding_context;
        ReSampleContext *tortmp_resample_context;
        ReSampleContext *fromrtmp_resample_context;
        unsigned int rtmpinputrate;                     /* default : 11000
Hz */
        unsigned int astinputrate;                      /* default : 8000
Hz */

        char readstream[AST_MAX_EXTENSION];
        char writestream[AST_MAX_EXTENSION];

        /* two RTMP connections : one read a stream from the server, the
other
         * to publish a stream */
        RTMP *rtmpin;
        RTMP *rtmpout;

        /* \brief Pipe file descriptor handles array.
         * Read from pipe[0], write to pipe[1]
         */
        int pipe[2];
        packet.m_nTimeStamp = (time(NULL) * 1000) - p->timestamp;
};

With that I actually get a error during make that stops it. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2010-11-12 02:33 cmendes0101    Note Added: 0128818                          
======================================================================




More information about the asterisk-bugs mailing list