int main(int argc, char *argv[]) { RingStream *r; const char *file; MSSndCard *sc; const char * card_id=NULL; MSFactory *factory; ortp_init(); ortp_set_log_level_mask(ORTP_LOG_DOMAIN, ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); factory = ms_factory_new_with_voip(); if (argc>1) { file=argv[1]; } else file="/usr/share/sounds/linphone/rings/oldphone.wav"; if (argc>2) { card_id=argv[2]; } sc=ms_snd_card_manager_get_card(ms_factory_get_snd_card_manager(factory),card_id); #ifdef __linux if (sc==NULL) sc = ms_alsa_card_new_custom(card_id, card_id); #endif r=ring_start(factory, file,2000,sc); ms_sleep(10); ring_stop(r); ms_factory_destroy(factory); return 0; }
int main(int argc, char *argv[]){ MSFilter *f1,*f2; MSSndCard *card_capture; MSSndCard *card_playback; MSTicker *ticker; MSFactory *factory; char *capt_card=NULL,*play_card=NULL; int rate = 8000; int i; #ifdef __linux const char *alsadev=NULL; #endif ortp_init(); ortp_set_log_level_mask(ORTP_LOG_DOMAIN, ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); factory = ms_factory_new_with_voip(); #ifndef _WIN32_WCE signal(SIGINT,stop); #endif #ifdef __linux alsadev=getenv("MS2_ALSADEV"); if (alsadev!=NULL){ ms_snd_card_manager_add_card( ms_factory_get_snd_card_manager(factory), ms_alsa_card_new_custom (alsadev,alsadev)); } #endif for(i=1;i<argc;++i){ if (strcmp(argv[i],"--help")==0){ print_usage(); }else if (strcmp(argv[i],"--card")==0){ i++; capt_card=play_card=argv[i]; }else if (strcmp(argv[i],"--capt-card")==0){ i++; capt_card=argv[i]; }else if (strcmp(argv[i],"--play-card")==0){ i++; play_card=argv[i]; } } if (capt_card) card_capture = ms_snd_card_manager_get_card(ms_factory_get_snd_card_manager(factory),capt_card); else card_capture = ms_snd_card_manager_get_default_capture_card(ms_factory_get_snd_card_manager(factory)); if (play_card) card_playback = ms_snd_card_manager_get_card(ms_factory_get_snd_card_manager(factory),play_card); else card_playback = ms_snd_card_manager_get_default_playback_card(ms_factory_get_snd_card_manager(factory)); if (card_playback==NULL || card_capture==NULL){ ms_error("No card."); return -1; } f1=ms_snd_card_create_reader(card_capture); f2=ms_snd_card_create_writer(card_playback); ms_filter_call_method (f1, MS_FILTER_SET_SAMPLE_RATE, &rate); ms_filter_call_method (f2, MS_FILTER_SET_SAMPLE_RATE, &rate); ticker=ms_ticker_new(); ms_filter_link(f1,0,f2,0); ms_ticker_attach(ticker,f1); #ifndef _WIN32_WCE while(run) ms_sleep(1); #else ms_sleep(5); #endif ms_ticker_detach(ticker,f1); ms_ticker_destroy(ticker); ms_filter_unlink(f1,0,f2,0); ms_filter_destroy(f1); ms_filter_destroy(f2); ms_factory_destroy(factory); return 0; }
int main(int argc, char *argv[]){ MSFilter *f1,*f2,*g729en,*g729de; MSSndCard *card_capture; MSSndCard *card_playback; MSTicker *ticker; char *capt_card=NULL,*play_card=NULL; int rate = 8000; int loop = -2; int i; const char *name="test.wav"; #ifdef __linux const char *alsadev=NULL; #endif ortp_init(); ortp_set_log_level_mask(ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); ms_init(); #ifndef _WIN32_WCE signal(SIGINT,stop); #endif #ifdef __linux alsadev=getenv("MS2_ALSADEV"); if (alsadev!=NULL){ ms_snd_card_manager_add_card(ms_snd_card_manager_get(), ms_alsa_card_new_custom (alsadev,alsadev)); } #endif for(i=1;i<argc;++i){ if (strcmp(argv[i],"--help")==0){ print_usage(); }else if (strcmp(argv[i],"--card")==0){ i++; capt_card=play_card=argv[i]; }else if (strcmp(argv[i],"--capt-card")==0){ i++; capt_card=argv[i]; }else if (strcmp(argv[i],"--file-name")==0){ i++; name=argv[i]; }else if (strcmp(argv[i],"--play-card")==0){ i++; play_card=argv[i]; } } if (capt_card) card_capture = ms_snd_card_manager_get_card(ms_snd_card_manager_get(),capt_card); else card_capture = ms_snd_card_manager_get_default_capture_card(ms_snd_card_manager_get()); if (play_card) card_playback = ms_snd_card_manager_get_card(ms_snd_card_manager_get(),play_card); else card_playback = ms_snd_card_manager_get_default_playback_card(ms_snd_card_manager_get()); if (card_playback==NULL || card_capture==NULL){ ms_error("No card."); return -1; } f1=ms_filter_new(MS_FILE_PLAYER_ID); f2=ms_snd_card_create_writer(card_playback); g729de=ms_filter_create_decoder("G729"); ms_filter_call_method (f1, MS_FILTER_SET_SAMPLE_RATE, &rate); ms_filter_call_method (f2, MS_FILTER_SET_SAMPLE_RATE, &rate); ms_filter_call_method(g729de, MS_FILTER_SET_SAMPLE_RATE, &rate); ms_filter_call_method_noarg(f1,MS_FILE_PLAYER_CLOSE); ms_filter_call_method(f1,MS_FILE_PLAYER_OPEN,(void*)name); ms_filter_call_method_noarg(f1,MS_FILE_PLAYER_START); ms_filter_call_method(f1,MS_FILE_PLAYER_LOOP,&loop); ticker=ms_ticker_new(); ms_filter_link(f1,0,g729de,0); ms_filter_link(g729de,0,f2,0); ms_ticker_attach(ticker,f1); #ifndef _WIN32_WCE while(run) ms_sleep(1); #else ms_sleep(5); #endif ms_ticker_detach(ticker,f1); ms_ticker_destroy(ticker); ms_filter_unlink(g729de,0,f2,0); ms_filter_unlink(f1,0,g729de,0); ms_filter_destroy(f1); ms_filter_destroy(g729de); ms_filter_destroy(f2); return 0; }