Changeset 177:db43877d8d4c in mediastreamer2


Ignore:
Timestamp:
Nov 25, 2008 9:44:38 PM (4 years ago)
Author:
smorlat <smorlat@…>
Branch:
default
Message:

merge patch from telezorg

git-svn-id: svn+ssh://svn.savannah.nongnu.org/linphone/trunk@180 3f6dc0c8-ddfe-455d-9043-3cd528dc4637

Location:
linphone
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • linphone/coreapi/linphonecore.c

    r173 r177  
    13511351  lc->videostream=NULL; 
    13521352#endif 
     1353} 
     1354 
     1355static void linphone_core_dtmf_received(RtpSession* s, int dtmf, void* user_data){ 
     1356        LinphoneCore* lc = (LinphoneCore*)user_data; 
     1357        if (lc->vtable.dtmf_received != NULL) 
     1358                lc->vtable.dtmf_received(lc, dtmf); 
    13531359} 
    13541360 
     
    13971403                                lc->rec_file); 
    13981404                } 
     1405                if (lc->vtable.dtmf_received!=NULL){ 
     1406                        /* replace by our default action*/ 
     1407                        audio_stream_play_received_dtmfs(lc->audiostream,FALSE); 
     1408                        rtp_session_signal_connect(lc->audiostream->session,"telephone-event",(RtpCallback)linphone_core_dtmf_received,(unsigned long)lc); 
     1409                } 
    13991410                audio_stream_set_rtcp_information(lc->audiostream, cname, tool); 
    14001411        } 
  • linphone/coreapi/linphonecore.h

    r173 r177  
    405405typedef void (*TextMessageReceived)(struct _LinphoneCore *lc, LinphoneChatRoom *room, const char *from, const char *message); 
    406406typedef void (*GeneralStateChange)(struct _LinphoneCore *lc, LinphoneGeneralState *gstate); 
     407typedef void (*DtmfReceived)(struct _LinphoneCore* lc, int dtmf); 
    407408 
    408409typedef struct _LinphoneVTable 
     
    426427        TextMessageReceived text_received; 
    427428        GeneralStateChange general_state; 
     429        DtmfReceived dtmf_received; 
    428430} LinphoneCoreVTable; 
    429431 
  • linphone/mediastreamer2/include/mediastreamer2/mediastream.h

    r117 r177  
    4444        unsigned int last_packet_count; 
    4545        time_t last_packet_time; 
     46        bool_t play_dtmfs; 
    4647}; 
    4748 
     
    7879 
    7980void audio_stream_set_rtcp_information(AudioStream *st, const char *cname, const char *tool); 
     81 
     82void audio_stream_play_received_dtmfs(AudioStream *st, bool_t yesno); 
    8083 
    8184/* those two function do the same as audio_stream_start() but in two steps 
  • linphone/mediastreamer2/src/audiostream.c

    r157 r177  
    6363static void on_dtmf_received(RtpSession *s, int dtmf, void * user_data) 
    6464{ 
    65         MSFilter *dtmfgen=(MSFilter*)user_data; 
     65        AudioStream *stream=(AudioStream*)user_data; 
    6666        if (dtmf>15){ 
    6767                ms_warning("Unsupported telephone-event type."); 
     
    6969        } 
    7070        ms_message("Receiving dtmf %c.",dtmf_tab[dtmf]); 
    71         if (dtmfgen!=NULL){ 
    72                 ms_filter_call_method(dtmfgen,MS_DTMF_GEN_PUT,&dtmf_tab[dtmf]); 
     71        if (stream->dtmfgen!=NULL && stream->play_dtmfs){ 
     72                ms_filter_call_method(stream->dtmfgen,MS_DTMF_GEN_PUT,&dtmf_tab[dtmf]); 
    7373        } 
    7474} 
     
    210210         
    211211        stream->dtmfgen=ms_filter_new(MS_DTMF_GEN_ID); 
    212         rtp_session_signal_connect(rtps,"telephone-event",(RtpCallback)on_dtmf_received,(unsigned long)stream->dtmfgen); 
     212        rtp_session_signal_connect(rtps,"telephone-event",(RtpCallback)on_dtmf_received,(unsigned long)stream); 
    213213        rtp_session_signal_connect(rtps,"payload_type_changed",(RtpCallback)payload_type_changed,(unsigned long)stream); 
    214214         
     
    357357        stream->session=create_duplex_rtpsession(locport,ipv6); 
    358358        stream->rtpsend=ms_filter_new(MS_RTP_SEND_ID); 
     359        stream->play_dtmfs=TRUE; 
    359360        return stream; 
     361} 
     362 
     363void audio_stream_play_received_dtmfs(AudioStream *st, bool_t yesno){ 
     364        st->play_dtmfs=yesno; 
    360365} 
    361366 
  • linphone/mediastreamer2/src/msv4l2.c

    r163 r177  
    1818*/ 
    1919 
     20#ifdef HAVE_CONFIG_H 
    2021#include "mediastreamer-config.h" 
     22#endif 
    2123 
    2224#ifdef HAVE_LINUX_VIDEODEV2_H 
Note: See TracChangeset for help on using the changeset viewer.