Changeset 3795 for pjproject/trunk


Ignore:
Timestamp:
Oct 6, 2011 6:37:46 AM (13 years ago)
Author:
nanang
Message:

Close #1381:

  • Added 'ignore_fmtp' field in pjmedia_vid_codec_param to allow application to omit SDP fmtp in codec param without risking video size and frame rate param being overridden with default values.
  • Updated sample app vid_streamutil.c to use that field, which currently not supplying SDP fmtp to video codec.
Location:
pjproject/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjmedia/include/pjmedia/vid_codec.h

    r3776 r3795  
    127127    pjmedia_codec_fmtp  dec_fmtp;       /**< Decoder fmtp params            */ 
    128128 
     129    pj_bool_t           ignore_fmtp;    /**< Ignore fmtp params. If set to 
     130                                             PJ_TRUE, the codec will apply 
     131                                             format settings specified in 
     132                                             enc_fmt and dec_fmt only.      */ 
     133 
    129134} pjmedia_vid_codec_param; 
    130135 
  • pjproject/trunk/pjmedia/src/pjmedia-codec/ffmpeg_codecs.c

    r3776 r3795  
    342342 
    343343    /* Apply SDP fmtp to format in codec param */ 
    344     status = pjmedia_vid_codec_h264_apply_fmtp(&ff->param); 
    345     if (status != PJ_SUCCESS) 
    346         return status; 
     344    if (!ff->param.ignore_fmtp) { 
     345        status = pjmedia_vid_codec_h264_apply_fmtp(&ff->param); 
     346        if (status != PJ_SUCCESS) 
     347            return status; 
     348    } 
    347349 
    348350    if (ff->param.dir & PJMEDIA_DIR_ENCODING) { 
     
    449451 
    450452    /* Apply fmtp settings to codec param */ 
    451     status = pjmedia_vid_codec_h263_apply_fmtp(&ff->param); 
     453    if (!ff->param.ignore_fmtp) { 
     454        status = pjmedia_vid_codec_h263_apply_fmtp(&ff->param); 
     455    } 
    452456 
    453457    return status; 
  • pjproject/trunk/pjsip-apps/src/samples/vid_streamutil.c

    r3776 r3795  
    709709            status = pjmedia_vid_dev_default_param( 
    710710                                        pool, 
    711                                         0,//PJMEDIA_VID_DEFAULT_CAPTURE_DEV, 
     711                                        PJMEDIA_VID_DEFAULT_CAPTURE_DEV, 
    712712                                        &vpp.vidparam); 
    713713            if (status != PJ_SUCCESS) 
     
    727727            status = pjmedia_vid_dev_default_param( 
    728728                                        pool, 
    729                                         1,//PJMEDIA_VID_DEFAULT_RENDER_DEV, 
     729                                        PJMEDIA_VID_DEFAULT_RENDER_DEV, 
    730730                                        &vpp.vidparam); 
    731731            if (status != PJ_SUCCESS) 
     
    741741        } 
    742742    } 
     743 
     744    /* Set to ignore fmtp */ 
     745    codec_param.ignore_fmtp = PJ_TRUE; 
    743746 
    744747    /* Create stream based on program arguments */ 
     
    796799        status = pjmedia_vid_dev_default_param( 
    797800                                pool, 
    798                                 1,//PJMEDIA_VID_DEFAULT_RENDER_DEV, 
     801                                PJMEDIA_VID_DEFAULT_RENDER_DEV, 
    799802                                &vpp.vidparam); 
    800803        if (status != PJ_SUCCESS) 
Note: See TracChangeset for help on using the changeset viewer.