当前位置: 首页 > wzjs >正文

法院网站建设app广告联盟平台

法院网站建设,app广告联盟平台,国内网站设计经典案例,网站备案信息真实核验单下载一、流程图 二、结构体 1 .AVOutputFormat 一、核心功能与作用 封装格式描述 AVOutputFormat保存了输出容器格式的元数据,包括: 短名称(name):如flv、mp4;易读名称(long_name)&…

一、流程图

在这里插入图片描述

二、结构体

1 .AVOutputFormat

一、核心功能与作用
  1. 封装格式描述
    AVOutputFormat保存了输出容器格式的元数据,包括:

    • 短名称name):如flvmp4
    • 易读名称long_name):如FLV (Flash Video)
    • MIME类型mime_type):如video/x-flv
    • 文件扩展名extensions):如flv
  2. 默认编码格式设置
    指定音视频流的默认编码格式ID(如audio_codecvideo_codec),例如FLV默认音频编码为MP3,视频编码为FLV1。

  3. 操作函数接口
    定义封装过程中的关键函数指针,包括:

    • write_header:写入文件头部;
    • write_packet:写入数据包;
    • write_trailer:写入尾部信息。
  4. 链表存储
    FFmpeg将所有支持的AVOutputFormat实例以链表形式存储,便于动态查找和管理。

二、结构体关键字段解析
typedef struct AVOutputFormat {const char *name;            // 格式短名称(如"flv")const char *long_name;       // 易读全称const char *mime_type;       // MIME类型const char *extensions;      // 文件扩展名enum AVCodecID audio_codec;  // 默认音频编码IDenum AVCodecID video_codec;  // 默认视频编码IDint flags;                   // 控制封装行为的标志位const struct AVCodecTag **codec_tag; // 支持的编码器标签列表struct AVOutputFormat *next; // 链表指针int priv_data_size;          // 私有数据大小// 函数指针(如write_header、write_packet等)
} AVOutputFormat;
三、 重要字段说明:
  • flags标志位
    控制封装行为,例如:

    • AVFMT_GLOBALHEADER:要求编码器生成全局头(如H.264的SPS/PPS);
    • AVFMT_VARIABLE_FPS:允许可变帧率封装,适用于直播流。
  • codec_tag编码器标签
    定义支持的编码器列表,按优先级排序,用于匹配最佳编码器。

  • priv_data_size私有数据
    存储格式特定的上下文信息(如FLV的FLVContext),用于自定义参数。

四、使用场景与示例
1. 获取输出格式

通过文件名或扩展名查找支持的封装器:

AVOutputFormat *fmt = av_guess_format("flv", NULL, NULL);  // 获取FLV封装器
2. 初始化封装上下文

AVOutputFormat绑定到AVFormatContext

AVFormatContext *oc = NULL;
avformat_alloc_output_context2(&oc, fmt, NULL, "output.flv");  // 关联格式并分配上下文
3. 自定义封装器实现

以FLV为例,需实现关键函数接口:

AVOutputFormat ff_flv_muxer = {.name = "flv",.long_name = "FLV (Flash Video)",.priv_data_size = sizeof(FLVContext),  // 私有上下文.audio_codec = AV_CODEC_ID_MP3,.video_codec = AV_CODEC_ID_FLV1,.write_header = flv_write_header,      // 自定义头部写入.write_packet = flv_write_packet,      // 数据包写入逻辑
};
五、与其他组件的关系
  1. AVFormatContext
    AVOutputFormat作为其oformat成员,驱动封装流程。

  2. AVCodecContext
    通过audio_codecvideo_codec关联默认编码器参数,影响流配置。

  3. 私有数据(如FLVContext
    存储格式特定的上下文信息,例如FLV的元数据或时间戳处理逻辑。

http://www.dtcms.com/wzjs/409362.html

相关文章:

  • 福州 网站开发公司高州网站seo
  • 浦江建设局网站seo快速培训
  • 网页设计 网站建设 哪个好seo数据分析
  • 广州建站网络公司电销精准客户资源
  • 做一网站多少钱福建seo排名
  • 普宁网站建设怎么创建网站免费建立个人网站
  • 怎么搭建免费网站中国疾控卫生应急服装
  • 公司怎么建网站做推广推广app的软文案例
  • 房山营销型网站制作开发seo推广骗局
  • 东营最新消息今天美国seo薪酬
  • 网站icp申请专业推广引流团队
  • 网站规划书包括哪些方面怎样推广品牌
  • 网站开发作为固定资产怎么摊销aso关键词覆盖优化
  • 武汉网站制作开发小说推广关键词怎么弄
  • 怎么做免费个人网站免费行情软件网站下载大全
  • 专门做外贸机械的网站百度百家号登录入口
  • 长沙百度搜索网站排名重庆人力资源和社会保障网官网
  • 天河建设网站平台专业网站建设
  • 视频网站开发工具网推app怎么推广
  • 佛山微网站建设多少钱seo免费课程视频
  • 市场营销策划公司排名网络推广优化工具
  • 请网站制作公司费用百度app在哪里找
  • 如何简单制作自己的网站免费软文发布平台有哪些
  • 专做代购的网站网络推广深圳有效渠道
  • 做美剧网站侵权网站免费软件
  • 动态网站建设方式seo关键词智能排名
  • 网站开发和网页设计的区别简单的seo
  • 东莞普工招聘最新招聘信息专业搜索引擎seo服务
  • 网站建设优化服务策划百度新闻
  • 中国电信备案网站 今日头条