Hi guys, I’m working on pjmedia split audio channel left/right and I have the following issue. I don’t know how to send audio from wav audio file only on left channel of default my audio device. My source code is: //Test split left right channel pjmedia_snd_port *snd; pjmedia_port *sc, *sc_ch1; pjsua_conf_port_id sc_slot, sc_ch1_slot; pjmedia_port *conf; pj_status_t status; /* Disable existing sound device */ conf = pjsua_set_no_snd_dev(); /* Create stereo-mono splitter/combiner */ status = pjmedia_splitcomb_create( pool, PJMEDIA_PIA_SRATE(&conf->info) /* clock rate */, 2 /* stereo */, 2 * PJMEDIA_PIA_SPF(&conf->info), PJMEDIA_PIA_BITS(&conf->info), 0 /* options */, &sc); pj_assert(status == PJ_SUCCESS); /* Connect channel0 (left channel) to conference port slot0 */ status = pjmedia_splitcomb_set_channel(sc, 1 /* ch1 */, 0 /*options*/, conf); pj_assert(status == PJ_SUCCESS); /* Create reverse channel for channel1 (right channel?)... */ status = pjmedia_splitcomb_create_rev_channel(pool, sc, 0 /* ch0 */, 0 /* options */, &sc_ch1); pj_assert(status == PJ_SUCCESS); status = pjsua_conf_add_port(pool, sc_ch1, &sc_ch1_slot); pj_assert(status == PJ_SUCCESS); pj_caching_pool cp; pj_pool_t *poolAs; pjmedia_port *file_port; pjmedia_snd_port *snd_port; /* Must create a pool factory before we can allocate any memory. */ pj_caching_pool_init(&cp, &pj_pool_factory_default_policy, 0); /* Create memory pool for our file player */ poolAs = pj_pool_create(&cp.factory, /* pool factory */ "wav", /* pool name. */ 4000, /* init size */ 4000, /* increment size */ NULL /* callback on error */); /* Create file media port from the WAV file */ status = pjmedia_wav_player_port_create(pool, /* memory pool */ "testSound.wav", /* file to play */ 20, /* ptime. */ 0, /* flags */ 0, /* default buffer */ &file_port/* returned port */ ); if (status != PJ_SUCCESS) { error("Unable to use WAV file", status); } /* Create sound player port. */ status = pjmedia_snd_port_create_player(poolAs, /* pool */ -1, /* use default dev. */ PJMEDIA_PIA_SRATE(&file_port->info),/* clock rate. */ PJMEDIA_PIA_CCNT(&file_port->info),/* # of channels. */ PJMEDIA_PIA_SPF(&file_port->info), /* samples per frame. */ PJMEDIA_PIA_BITS(&file_port->info),/* bits per sample. */ 0, /* options */ &snd /* returned port */ ); if (status != PJ_SUCCESS) { error("Unable to open sound device", status); } /* Connect file port to the sound player. status = pjmedia_snd_port_connect(snd, file_sc); /* * File should be playing and looping now, using sound device's thread. */ /* Sleep to allow log messages to flush */ pj_thread_sleep(100); How can I solve the issue? Thanks in advice. Best regards Ll |
_______________________________________________ Visit our blog: http://blog.pjsip.org pjsip mailing list pjsip@xxxxxxxxxxxxxxx http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org