Ignore:
Timestamp:
Mar 2, 2011 8:37:31 AM (13 years ago)
Author:
nanang
Message:

Re #1182:

  • Added remote frame-rate detection in to video stream.
  • Fixed bitrate settings in ffmpeg codec.
  • Fixed SDL dev to update internal SDL info when format changed.
  • Minor fixes/updates, e.g:
    • added cleanup steps, fixed logs, etc, in sample app simpleua.c and vid_streamutil.c
    • fixed/added docs of the new APIs in the jitter buffer.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/branches/projects/2.0-dev/pjsip-apps/src/samples/vid_streamutil.c

    r3432 r3435  
    126126} 
    127127 
     128/*  
     129 * Register all codecs.  
     130 */ 
     131static void deinit_codecs() 
     132{ 
     133#if defined(PJMEDIA_HAS_FFMPEG_CODEC) && PJMEDIA_HAS_FFMPEG_CODEC != 0 
     134    pjmedia_codec_ffmpeg_deinit(); 
     135#endif 
     136} 
     137 
    128138static pj_status_t create_file_player( pj_pool_t *pool, 
    129139                                       const char *file_name, 
     
    616626        file_vfd = pjmedia_format_get_video_format_detail(&play_port->info.fmt, 
    617627                                                          PJ_TRUE); 
    618         PJ_LOG(2, (THIS_FILE, "Reading video stream %dx%d %c%c%c%c @%.2dfps", 
     628        PJ_LOG(2, (THIS_FILE, "Reading video stream %dx%d %c%c%c%c @%.2ffps", 
    619629                   file_vfd->size.w, file_vfd->size.h, 
    620630                   ((play_port->info.fmt.id & 0x000000FF) >> 0), 
     
    622632                   ((play_port->info.fmt.id & 0x00FF0000) >> 16), 
    623633                   ((play_port->info.fmt.id & 0xFF000000) >> 24), 
    624                    file_vfd->fps.num/file_vfd->fps.denum)); 
     634                   (1.0*file_vfd->fps.num/file_vfd->fps.denum))); 
    625635 
    626636        /* Allocate file read buffer */ 
     
    658668                goto on_exit; 
    659669 
     670            codec_param2.dir = PJMEDIA_DIR_DECODING; 
    660671            status = play_decoder->op->open(play_decoder, &codec_param2); 
    661672            if (status != PJ_SUCCESS) 
     
    706717                goto on_exit; 
    707718 
    708             pjmedia_format_copy(&vpp.vidparam.fmt, &codec_param.dec_fmt); 
     719            pjmedia_format_copy(&vpp.vidparam.fmt, &codec_param.enc_fmt); 
     720            vpp.vidparam.fmt.id = codec_param.dec_fmt.id; 
    709721            vpp.vidparam.dir = PJMEDIA_DIR_CAPTURE; 
    710722             
     
    836848 
    837849    if (dir & PJMEDIA_DIR_ENCODING) 
    838         PJ_LOG(2, (THIS_FILE, "Sending %dx%d %.*s @%.2dfps", 
     850        PJ_LOG(2, (THIS_FILE, "Sending %dx%d %.*s @%.2ffps", 
    839851                   codec_param.enc_fmt.det.vid.size.w, 
    840852                   codec_param.enc_fmt.det.vid.size.h, 
    841853                   codec_info->encoding_name.slen, 
    842854                   codec_info->encoding_name.ptr, 
    843                    codec_param.enc_fmt.det.vid.fps.num/ 
    844                    codec_param.enc_fmt.det.vid.fps.denum)); 
     855                   (1.0*codec_param.enc_fmt.det.vid.fps.num/ 
     856                    codec_param.enc_fmt.det.vid.fps.denum))); 
    845857 
    846858    for (;;) { 
     
    880892 
    881893    /* Destroy file decoder */ 
    882     if (play_decoder) 
     894    if (play_decoder) { 
    883895        play_decoder->op->close(play_decoder); 
     896        pjmedia_vid_codec_mgr_dealloc_codec(NULL, play_decoder); 
     897    } 
    884898 
    885899    /* Destroy video devices */ 
     
    899913    } 
    900914 
     915    /* Deinit codecs */ 
     916    deinit_codecs(); 
     917 
    901918    /* Shutdown video subsystem */ 
    902919    pjmedia_vid_subsys_shutdown(); 
Note: See TracChangeset for help on using the changeset viewer.