亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? codec.h

?? 基于sip協議的網絡電話源碼
?? H
?? 第 1 頁 / 共 2 頁
字號:
			   struct pjmedia_frame *output);} pjmedia_codec_op;/* * Forward declaration for pjmedia_codec_factory. */typedef struct pjmedia_codec_factory pjmedia_codec_factory;/** * This structure describes a codec instance.  */struct pjmedia_codec{    /** Entries to put this codec instance in codec factory's list. */    PJ_DECL_LIST_MEMBER(struct pjmedia_codec);    /** Codec's private data. */    void		    *codec_data;    /** Codec factory where this codec was allocated. */    pjmedia_codec_factory   *factory;    /** Operations to codec. */    pjmedia_codec_op	    *op;};/** * This structure describes operations that must be supported by codec  * factories. */typedef struct pjmedia_codec_factory_op{    /**      * Check whether the factory can create codec with the specified      * codec info.     *     * @param factory	The codec factory.     * @param info	The codec info.     *     * @return		PJ_SUCCESS if this factory is able to create an     *			instance of codec with the specified info.     */    pj_status_t	(*test_alloc)(pjmedia_codec_factory *factory, 			      const pjmedia_codec_info *info );    /**      * Create default attributes for the specified codec ID. This function     * can be called by application to get the capability of the codec.     *     * @param factory	The codec factory.     * @param info	The codec info.     * @param attr	The attribute to be initialized.     *     * @return		PJ_SUCCESS if success.     */    pj_status_t (*default_attr)(pjmedia_codec_factory *factory,     				const pjmedia_codec_info *info,    				pjmedia_codec_param *attr );    /**      * Enumerate supported codecs that can be created using this factory.     *      *  @param factory	The codec factory.     *  @param count	On input, specifies the number of elements in     *			the array. On output, the value will be set to     *			the number of elements that have been initialized     *			by this function.     *  @param info	The codec info array, which contents will be      *			initialized upon return.     *     *  @return		PJ_SUCCESS on success.     */    pj_status_t (*enum_info)(pjmedia_codec_factory *factory, 			     unsigned *count, 			     pjmedia_codec_info codecs[]);    /**      * Create one instance of the codec with the specified codec info.     *     * @param factory	The codec factory.     * @param info	The codec info.     * @param p_codec	Pointer to receive the codec instance.     *     * @return		PJ_SUCCESS on success.     */    pj_status_t (*alloc_codec)(pjmedia_codec_factory *factory, 			       const pjmedia_codec_info *info,			       pjmedia_codec **p_codec);    /**      * This function is called by codec manager to return a particular      * instance of codec back to the codec factory.     *     * @param factory	The codec factory.     * @param codec	The codec instance to be returned.     *     * @return		PJ_SUCCESS on success.     */    pj_status_t (*dealloc_codec)(pjmedia_codec_factory *factory, 				 pjmedia_codec *codec );} pjmedia_codec_factory_op;/** * Codec factory describes a module that is able to create codec with specific * capabilities. These capabilities can be queried by codec manager to create * instances of codec. */struct pjmedia_codec_factory{    /** Entries to put this structure in the codec manager list. */    PJ_DECL_LIST_MEMBER(struct pjmedia_codec_factory);    /** The factory's private data. */    void		     *factory_data;    /** Operations to the factory. */    pjmedia_codec_factory_op *op;};/** * Declare maximum codecs */#define PJMEDIA_CODEC_MGR_MAX_CODECS	    32/** * Specify these values to set the codec priority, by calling * #pjmedia_codec_mgr_set_codec_priority(). */typedef enum pjmedia_codec_priority{    /**     * This priority makes the codec the highest in the order.     * The last codec specified with this priority will get the     * highest place in the order, and will change the priority     * of previously highest priority codec to NEXT_HIGHER.     */    PJMEDIA_CODEC_PRIO_HIGHEST = 255,    /**     * This priority will put the codec as the next codec after     * codecs with this same priority.     */    PJMEDIA_CODEC_PRIO_NEXT_HIGHER = 254,    /**     * This is the initial codec priority when it is registered to     * codec manager by codec factory.     */    PJMEDIA_CODEC_PRIO_NORMAL = 128,    /**     * This priority makes the codec the lowest in the order.     * The last codec specified with this priority will be put     * in the last place in the order.     */    PJMEDIA_CODEC_PRIO_LOWEST = 1,    /**     * This priority will prevent the codec from being listed in the     * SDP created by media endpoint, thus should prevent the codec     * from being used in the sessions. However, the codec will still     * be listed by #pjmedia_codec_mgr_enum_codecs() and other codec     * query functions.     */    PJMEDIA_CODEC_PRIO_DISABLED = 0} pjmedia_codec_priority;/**  * Codec identification (e.g. "pcmu/8000/1"). * See @ref codec_ident for more info. */typedef char pjmedia_codec_id[32];/**  * Codec manager maintains array of these structs for each supported * codec. */struct pjmedia_codec_desc{    pjmedia_codec_info	    info;	/**< Codec info.	    */    pjmedia_codec_id	    id;		/**< Fully qualified name   */    pjmedia_codec_priority  prio;	/**< Priority.		    */    pjmedia_codec_factory  *factory;	/**< The factory.	    */};/** * The declaration for codec manager. Application doesn't normally need * to see this declaration, but nevertheless this declaration is needed * by media endpoint to instantiate the codec manager. */typedef struct pjmedia_codec_mgr{    /** List of codec factories registered to codec manager. */    pjmedia_codec_factory	factory_list;    /** Number of supported codesc. */    unsigned			codec_cnt;    /** Array of codec descriptor. */    struct pjmedia_codec_desc	codec_desc[PJMEDIA_CODEC_MGR_MAX_CODECS];} pjmedia_codec_mgr;/** * Initialize codec manager. Normally this function is called by pjmedia * endpoint's initialization code. * * @param mgr	    Codec manager instance. * * @return	    PJ_SUCCESS on success. */PJ_DECL(pj_status_t) pjmedia_codec_mgr_init(pjmedia_codec_mgr *mgr);/**  * Register codec factory to codec manager. This will also register * all supported codecs in the factory to the codec manager. * * @param mgr	    The codec manager instance. Application can get the *		    instance by calling #pjmedia_endpt_get_codec_mgr(). * @param factory   The codec factory to be registered. * * @return	    PJ_SUCCESS on success. */PJ_DECL(pj_status_t) pjmedia_codec_mgr_register_factory( pjmedia_codec_mgr *mgr,				    pjmedia_codec_factory *factory);/** * Unregister codec factory from the codec manager. This will also * remove all the codecs registered by the codec factory from the * codec manager's list of supported codecs. * * @param mgr	    The codec manager instance. Application can get the *		    instance by calling #pjmedia_endpt_get_codec_mgr(). * @param factory   The codec factory to be unregistered. * * @return	    PJ_SUCCESS on success. */PJ_DECL(pj_status_t) pjmedia_codec_mgr_unregister_factory( pjmedia_codec_mgr *mgr, 				      pjmedia_codec_factory *factory);/** * Enumerate all supported codecs that have been registered to the * codec manager by codec factories. * * @param mgr	    The codec manager instance. Application can get the *		    instance by calling #pjmedia_endpt_get_codec_mgr(). * @param count	    On input, specifies the number of elements in *		    the array. On output, the value will be set to *		    the number of elements that have been initialized *		    by this function. * @param info	    The codec info array, which contents will be  *		    initialized upon return. * @param prio	    Optional pointer to receive array of codec priorities. * * @return	    PJ_SUCCESS on success. */PJ_DECL(pj_status_t) pjmedia_codec_mgr_enum_codecs( pjmedia_codec_mgr *mgr, 						    unsigned *count, 						    pjmedia_codec_info info[],						    unsigned *prio);/** * Get codec info for the specified static payload type. Note that * this can only find codec with static payload types. This function can * be used to find codec info for a payload type inside SDP which doesn't * have the corresponding rtpmap attribute. * * @param mgr	    The codec manager instance. Application can get the *		    instance by calling #pjmedia_endpt_get_codec_mgr(). * @param pt	    Static payload type/number. * @param inf	    Pointer to receive codec info. * * @return	    PJ_SUCCESS on success. */PJ_DECL(pj_status_t) pjmedia_codec_mgr_get_codec_info( pjmedia_codec_mgr *mgr,				  unsigned pt,				  const pjmedia_codec_info **inf);/** * Convert codec info struct into a unique codec identifier. * A codec identifier looks something like "L16/44100/2". * * @param info	    The codec info * @param id	    Buffer to put the codec info string. * @param max_len   The length of the buffer. * * @return	    The null terminated codec info string, or NULL if *		    the buffer is not long enough. */PJ_DECL(char*) pjmedia_codec_info_to_id(const pjmedia_codec_info *info,				        char *id, unsigned max_len );/** * Find codecs by the unique codec identifier. This function will find * all codecs that match the codec identifier prefix. For example, if * "L16" is specified, then it will find "L16/8000/1", "L16/16000/1", * and so on, up to the maximum count specified in the argument. * * @param mgr	    The codec manager instance. Application can get the *		    instance by calling #pjmedia_endpt_get_codec_mgr(). * @param codec_id  The full codec ID or codec ID prefix. If an empty *		    string is given, it will match all codecs. * @param count	    Maximum number of codecs to find. On return, it *		    contains the actual number of codecs found. * @param p_info    Array of pointer to codec info to be filled. This *		    argument may be NULL, which in this case, only *		    codec count will be returned. * @param prio	    Optional array of codec priorities. * * @return	    PJ_SUCCESS if at least one codec info is found. */PJ_DECL(pj_status_t) pjmedia_codec_mgr_find_codecs_by_id( pjmedia_codec_mgr *mgr,				     const pj_str_t *codec_id,				     unsigned *count,				     const pjmedia_codec_info *p_info[],				     unsigned prio[]);/** * Set codec priority. The codec priority determines the order of * the codec in the SDP created by the endpoint. If more than one codecs * are found with the same codec_id prefix, then the function sets the * priorities of all those codecs. * * @param mgr	    The codec manager instance. Application can get the *		    instance by calling #pjmedia_endpt_get_codec_mgr(). * @param codec_id  The full codec ID or codec ID prefix. If an empty *		    string is given, it will match all codecs. * @param prio	    Priority to be set. The priority can have any value *		    between 1 to 255. When the priority is set to zero, *		    the codec will be disabled. * * @return	    PJ_SUCCESS if at least one codec info is found. */PJ_DECL(pj_status_t)pjmedia_codec_mgr_set_codec_priority(pjmedia_codec_mgr *mgr, 				     const pj_str_t *codec_id,				     pj_uint8_t prio);/** * Get default codec param for the specified codec info. * * @param mgr	    The codec manager instance. Application can get the *		    instance by calling #pjmedia_endpt_get_codec_mgr(). * @param info	    The codec info, which default parameter's is being *		    queried. * @param param	    On return, will be filled with the default codec *		    parameter. * * @return	    PJ_SUCCESS on success. */PJ_DECL(pj_status_t) pjmedia_codec_mgr_get_default_param( pjmedia_codec_mgr *mgr,				     const pjmedia_codec_info *info,				     pjmedia_codec_param *param );/** * Request the codec manager to allocate one instance of codec with the * specified codec info. The codec will enumerate all codec factories * until it finds factory that is able to create the specified codec. * * @param mgr	    The codec manager instance. Application can get the *		    instance by calling #pjmedia_endpt_get_codec_mgr(). * @param info	    The information about the codec to be created. * @param p_codec   Pointer to receive the codec instance. * * @return	    PJ_SUCCESS on success. */PJ_DECL(pj_status_t) pjmedia_codec_mgr_alloc_codec( pjmedia_codec_mgr *mgr, 			       const pjmedia_codec_info *info,			       pjmedia_codec **p_codec);/** * Deallocate the specified codec instance. The codec manager will return * the instance of the codec back to its factory. * * @param mgr	    The codec manager instance. Application can get the *		    instance by calling #pjmedia_endpt_get_codec_mgr(). * @param codec	    The codec instance. * * @return	    PJ_SUCESS on success. */PJ_DECL(pj_status_t) pjmedia_codec_mgr_dealloc_codec(pjmedia_codec_mgr *mgr, 						     pjmedia_codec *codec);/** * @} */PJ_END_DECL#endif	/* __PJMEDIA_CODEC_H__ */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美亚一区二区| 麻豆精品一区二区三区| 成人av电影免费观看| 久久一二三国产| 丁香六月综合激情| 日韩一区日韩二区| 欧美色偷偷大香| 秋霞午夜鲁丝一区二区老狼| 精品播放一区二区| 欧美日韩三级一区二区| 亚洲午夜在线视频| 日韩一卡二卡三卡| 国产91在线|亚洲| 亚洲卡通欧美制服中文| 欧美夫妻性生活| 久久精品国产99久久6| 国产午夜精品久久| 欧美色综合久久| 另类小说色综合网站| 中文字幕一区二区三区在线观看| 91成人在线观看喷潮| 精品综合免费视频观看| 中文字幕字幕中文在线中不卡视频| 色综合一区二区| 美国十次综合导航| 日韩美女视频一区二区| 91精品国产福利在线观看| 成人伦理片在线| 日韩福利电影在线| 亚洲视频一区二区在线| 欧美一区二区三区四区高清| 成人av网站在线| 日本成人在线不卡视频| 18成人在线观看| 日韩三级电影网址| 色八戒一区二区三区| 久久99久久精品| 亚洲狠狠爱一区二区三区| 久久精品亚洲精品国产欧美 | 精品一区二区三区影院在线午夜| 国产精品家庭影院| 精品区一区二区| 欧美亚洲国产bt| 成人app软件下载大全免费| 久久电影网站中文字幕 | 亚洲国产精品久久久男人的天堂| 久久精品亚洲国产奇米99| 欧美日韩精品二区第二页| 欧美日韩久久一区| 97久久精品人人做人人爽| 国内欧美视频一区二区 | 欧美亚洲一区二区在线观看| 日韩视频国产视频| 国模冰冰炮一区二区| 国产日产欧美一区二区三区| 在线精品视频一区二区| 亚洲美女一区二区三区| www久久久久| 懂色av中文一区二区三区| 日本欧美久久久久免费播放网| 亚洲三级电影网站| 国产丝袜欧美中文另类| 制服丝袜中文字幕一区| 欧美在线免费播放| fc2成人免费人成在线观看播放| 国产一区二区三区高清播放| 日本亚洲欧美天堂免费| 香蕉av福利精品导航| 尤物视频一区二区| 亚洲精品视频一区二区| 亚洲人成网站在线| 亚洲美女区一区| 一区二区免费视频| 亚洲一区二区三区激情| 夜夜揉揉日日人人青青一国产精品| 国产精品理论片在线观看| 欧美色男人天堂| 天使萌一区二区三区免费观看| 国产精品伦理在线| 日本一区二区三区国色天香| 久久亚洲捆绑美女| 国产欧美一区二区精品婷婷| 国产偷国产偷亚洲高清人白洁| 久久人人爽爽爽人久久久| 久久久久久久久久看片| 精品处破学生在线二十三| 26uuu色噜噜精品一区| 久久久久久亚洲综合| 久久久亚洲国产美女国产盗摄 | 国产日韩v精品一区二区| 精品国产自在久精品国产| 日韩视频一区二区在线观看| 欧美mv日韩mv国产| 久久精子c满五个校花| 成人免费一区二区三区在线观看 | 久久亚洲精品国产精品紫薇| 日韩精品综合一本久道在线视频| 日韩欧美一级二级三级久久久| 精品国产91洋老外米糕| 欧美国产1区2区| 尤物av一区二区| 久久成人免费电影| 高清国产一区二区| 日本高清视频一区二区| 欧美精品一卡二卡| 精品国产成人系列| 国产精品视频一二三区| 亚洲精品乱码久久久久久黑人 | 亚洲日本一区二区| 亚洲成人你懂的| 国产乱子伦视频一区二区三区| www.在线成人| 91久久精品日日躁夜夜躁欧美| 欧美一区二区三区爱爱| 欧美国产乱子伦 | 色女孩综合影院| 日韩欧美中文字幕精品| 中文字幕亚洲视频| 青娱乐精品视频在线| 成人av电影免费在线播放| 欧美三级在线播放| 国产日韩欧美精品一区| 亚洲6080在线| www.色综合.com| 日韩一区二区电影在线| 亚洲三级在线免费观看| 狠狠色丁香久久婷婷综| 欧美性videosxxxxx| 久久久久国色av免费看影院| 一区二区三区日韩| 精品视频一区二区三区免费| 国产日产欧美一区二区视频| 丝袜诱惑制服诱惑色一区在线观看| 丁香一区二区三区| 日韩一级大片在线| 一区二区三区在线视频播放| 激情深爱一区二区| 欧美丰满一区二区免费视频| 国产精品国产a级| 国产伦理精品不卡| 欧美一区二区美女| 香蕉av福利精品导航| 91亚洲国产成人精品一区二三| 久久女同精品一区二区| 日日摸夜夜添夜夜添国产精品| 国产精品理伦片| 成人一区二区视频| 国产日韩欧美a| 欧美亚洲高清一区| 人人精品人人爱| 中文文精品字幕一区二区| 蜜臀va亚洲va欧美va天堂| 国产色综合一区| 成人免费高清在线| 精品国产一区二区三区不卡 | 天堂av在线一区| 91九色02白丝porn| 国产精品传媒入口麻豆| 国产成人免费xxxxxxxx| 精品国产免费人成在线观看| 日韩成人伦理电影在线观看| 91久久精品一区二区三| 亚洲日本va午夜在线影院| 国产成人超碰人人澡人人澡| 欧美精品一区视频| 麻豆freexxxx性91精品| 欧美一区二区三区四区高清| 日韩国产欧美三级| 宅男噜噜噜66一区二区66| 丝袜诱惑亚洲看片| 欧美一级国产精品| 麻豆91小视频| 久久中文娱乐网| 国产一区二区精品久久99| 久久久综合九色合综国产精品| 激情综合色综合久久| 国产无一区二区| 国产99精品在线观看| 国产精品久久久久久户外露出| av在线播放成人| 亚洲人xxxx| 91精品免费观看| 另类小说综合欧美亚洲| 久久久国产综合精品女国产盗摄| 国产一区在线观看麻豆| 国产精品视频九色porn| jlzzjlzz欧美大全| 亚洲成人黄色影院| 日韩一区国产二区欧美三区| 精品一区二区三区在线播放视频| 久久精品亚洲麻豆av一区二区| a美女胸又www黄视频久久| 亚洲欧美另类图片小说| 欧美日韩精品一区二区三区蜜桃 | 一本一道久久a久久精品| 亚洲国产精品久久人人爱| 欧美xfplay| 不卡一区二区三区四区| 亚洲小说欧美激情另类| 精品国产伦一区二区三区免费|