Ignore:
Timestamp:
Jul 1, 2015 2:20:12 AM (9 years ago)
Author:
riza
Message:

Re #1863: Initial implementation of PJSUA2 Video Codec API and Video Device API.

  • Codec management (enum codec, set prio, get param, set param)
  • Device management (enum dev, dev count, dev info).
File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjsip/include/pjsua2/endpoint.hpp

    r5120 r5123  
    10701070    AudDevManager &audDevManager(); 
    10711071 
     1072    /** 
     1073     * Get the instance of Video Device Manager. 
     1074     * 
     1075     * @return          The Video Device Manager. 
     1076     */ 
     1077    VidDevManager &vidDevManager(); 
     1078 
    10721079    /************************************************************************* 
    10731080     * Codec management operations 
     
    10961103     * Get codec parameters. 
    10971104     * 
    1098      * @param codec_id          Codec ID. 
    1099      * 
    1100      * @return                  Codec parameters. If codec is not found, Error 
    1101      *                          will be thrown. 
     1105     * @param codec_id  Codec ID. 
     1106     * 
     1107     * @return          Codec parameters. If codec is not found, Error 
     1108     *                  will be thrown. 
    11021109     * 
    11031110     */ 
     
    11151122                       const CodecParam param) throw(Error); 
    11161123 
     1124    /** 
     1125     * Enum all supported video codecs in the system. 
     1126     *   
     1127     * @return          Array of video codec info. 
     1128     */ 
     1129    const CodecInfoVector &videoCodecEnum() throw(Error); 
     1130 
     1131    /** 
     1132     * Change video codec priority. 
     1133     * 
     1134     * @param codec_id  Codec ID, which is a string that uniquely identify 
     1135     *                  the codec (such as "H263/90000"). Please see pjsua 
     1136     *                  manual or pjmedia codec reference for details. 
     1137     * @param priority  Codec priority, 0-255, where zero means to disable 
     1138     *                  the codec. 
     1139     * 
     1140     */ 
     1141    void videoCodecSetPriority(const string &codec_id, 
     1142                               pj_uint8_t priority) throw(Error); 
     1143 
     1144    /** 
     1145     * Get video codec parameters. 
     1146     * 
     1147     * @param codec_id  Codec ID. 
     1148     * 
     1149     * @return          Codec parameters. If codec is not found, Error  
     1150     *                  will be thrown. 
     1151     * 
     1152     */ 
     1153    CodecParam videoCodecGetParam(const string &codec_id) const throw(Error); 
     1154 
     1155    /** 
     1156     * Set video codec parameters. 
     1157     * 
     1158     * @param codec_id  Codec ID. 
     1159     * @param param     Codec parameter to set. Set to NULL to reset 
     1160     *                  codec parameter to library default settings. 
     1161     * 
     1162     */ 
     1163    void videoCodecSetParam(const string &codec_id, 
     1164                            const CodecParam param) throw(Error); 
    11171165 
    11181166public: 
     
    11831231    AudioMediaVector             mediaList; 
    11841232    AudDevManager                audioDevMgr; 
     1233    VidDevManager                videoDevMgr; 
    11851234    CodecInfoVector              codecInfoList; 
     1235    CodecInfoVector              videoCodecInfoList; 
    11861236    std::map<pj_thread_t*, pj_thread_desc*> threadDescMap; 
    11871237 
     
    13171367 
    13181368private: 
    1319     void clearCodecInfoList(); 
     1369    void clearCodecInfoList(CodecInfoVector &codec_list); 
     1370    void updateCodecInfoList(pjsua_codec_info pj_codec[], unsigned count, 
     1371                             CodecInfoVector &codec_list); 
    13201372 
    13211373}; 
Note: See TracChangeset for help on using the changeset viewer.