simpleua and VAS on symbian

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I am trying to port simpleua example in symbian with VAS direct. The
invite session is fine and call get connected but problem with media.
Player and Recorder is created but failed when media playing. Looks
like frame buffer had not been initialized. It fails in play_cb
function in soundport.c and PlayCbPcm function in symb_vas_dev.cpp
where I get data abort exception.
In play_cb function it fails in

no_frame:

frame->type = *PJMEDIA_FRAME_TYPE_AUDIO*;

frame->size = required_size;

* pj_bzero*(frame->buf, frame->size);   /* IT FAILS HERE with Data error
exction*/

*if* (snd_port->ec_state && !snd_port->ec_suspended) {


Any idea what am I missing.


static void call_on_media_update( pjsip_inv_session *inv,
                                 pj_status_t status)
{
   pjmedia_session_info sess_info;
   const pjmedia_sdp_session *local_sdp;
   const pjmedia_sdp_session *remote_sdp;
   pjmedia_port *media_port;

   if (status != PJ_SUCCESS) {

       app_perror(THIS_FILE, "SDP negotiation has failed", status);
       return;
   }

   status = pjmedia_sdp_neg_get_active_local(inv->neg, &local_sdp);

   status = pjmedia_sdp_neg_get_active_remote(inv->neg, &remote_sdp);

   status = pjmedia_session_info_from_sdp(inv->dlg->pool, g_med_endpt,
                                          1, &sess_info,
                                          local_sdp, remote_sdp);
   if (status != PJ_SUCCESS) {
       app_perror( THIS_FILE, "Unable to create media session", status);
       return;
   }
   status = pjmedia_session_create( g_med_endpt, &sess_info,
                                    &g_med_transport, NULL,&g_med_session );
   if (status != PJ_SUCCESS) {
       app_perror( THIS_FILE, "Unable to create media session", status);
       return;
   }

   pjmedia_session_get_port(g_med_session, 0, &media_port);


   status = pjmedia_snd_port_create_player(
                   inv->pool,                          /* pool
*/
                   -1,                                 /* sound dev id
*/
                   media_port->info.clock_rate,        /* clock rate
*/
                   media_port->info.channel_count,     /* channel count
 */
                   media_port->info.samples_per_frame, /* samples per
frame*/
                   media_port->info.bits_per_sample,   /* bits per sample
 */
                   0,                                  /* options
 */
                   &g_snd_player);
   if (status != PJ_SUCCESS) {
       app_perror( THIS_FILE, "Unable to create sound player", status);
       PJ_LOG(3,(THIS_FILE, "%d %d %d %d",
                   media_port->info.clock_rate,        /* clock rate
*/
                   media_port->info.channel_count,     /* channel count
 */
                   media_port->info.samples_per_frame, /* samples per
frame*/
                   media_port->info.bits_per_sample    /* bits per sample
 */
           ));
       return;
   }

       status = pjmedia_snd_port_connect(g_snd_player, media_port);

   status = pjmedia_snd_port_create_rec(
                   inv->pool,                          /* pool
*/
                   -1,                                 /* sound dev id
*/
                   media_port->info.clock_rate,        /* clock rate
*/
                   media_port->info.channel_count,     /* channel count
 */
                   media_port->info.samples_per_frame, /* samples per
frame*/
                   media_port->info.bits_per_sample,   /* bits per sample
 */
                   0,                                  /* options
 */
                   &g_snd_rec);
   if (status != PJ_SUCCESS) {
       app_perror( THIS_FILE, "Unable to create sound recorder", status);
       return;
   }

   status = pjmedia_snd_port_connect(g_snd_rec, media_port);
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20110325/2a82cf96/attachment.html>


[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux