编码/解码库
模组
API
avcodec_alloc_context3
签名
AVCodecContext* avcodec_alloc_context3 ( const AVCodec * codec )
功能
- 分配一个AVCodecContext,并将其字段设置为默认值。
- 结果由avcodec_free_context()释放
参数
- 如果非null,分配私有数据并初始化给定编解码器的默认值。使用不同的编解码器调用avcodec_open2()是非法的。
- 如果为NULL,那么特定于编解码器的默认值将不会被初始化,这可能会导致默认设置不理想(这对于编码器(例如libx264)尤为重要)。
返回值
- 一个用默认值填充的AVCodecContext,失败时为NULL。
avcodec_free_context
签名
void avcodec_free_context ( AVCodecContext ** avctx )
功能
- 释放编解码器上下文以及与之关联的所有内容,然后将NULL写入提供的指针。
avcodec_parameters_from_context
签名
int avcodec_parameters_from_context ( AVCodecParameters * par,const AVCodecContext * codec )
功能
- 根据提供的解编码器上下文中的值填充参数结构
- par中任何已分配的字段都将被释放,并替换为编解码器中相应字段的副本。
返回值
- 成功时>= 0,失败时为负的AVERROR代码
avcodec_parameters_to_context
签名
int avcodec_parameters_to_context ( AVCodecContext * codec,const AVCodecParameters * par )
功能
- 根据提供的编解码器参数的值填充编解码器上下文。
- 在编解码器中,任何在par中有对应字段的已分配字段将被释放,并被替换为par中对应字段的副本。在编解码器中,没有对应字段的字段将不被修改。
返回值
- 成功时>= 0,失败时为负的AVERROR代码