FFmpeg demuxer如何
来源:互联网 发布:阿里云app服务器价格表 编辑:程序博客网 时间:2024/05/21 06:23
FFmpeg demuxer如何
注册demuxer
libavformat/allformats.c
增加一个demuxer:
REGISTER_DEMUXER(DEMUXERNAME, demuxername)
为一个muxer:
REGISTER_MUXER(MUXERNAME, muxername)
宏将增加_demuxer或任何适当的。在顶级目录中运行configure和make clean,as config.h将自动被修改。
make distclean
./configure
Make
libavforamt/Makefile
增加
OBJS-$(CONFIG_DEMUXERNAME_DEMUXER) += filename.o
demuxer代码
本节仅仅是一个概述;请看一个实际的demuxer来看它怎样做到这一点。
demuxername_probe
probe将被框架调用;这是你能检测该文件是不是你的格式的地方。不应依赖文件名,事实上你可能不能访问它。多数视频容器以一些固定字节序列开始。如果有4个字节和它们总是相同的与唯一的则返回AVPROBE_SCORE_MAX。否则返回0。如果该格式错误设计和没有这个则AVPROBE_SCORE_MAX除以某数(例如2)来对文件对应你的demuxer指定有限的信心。
demuxername_read_header
在这你应得到任何头信息,例如如果它是视频则是帧宽,如果它是音频则是采样速率等。你也应设置你的流(通常在例子说明大多数的事情,也许除了时间戳信息);设置codec_type、codec_id、视频的可能width、height、pix_fmt以及音频的channels、sample_rate、bits_per_sample和bit_rate。返回0。
demuxername_read_packet
多数格式被分成音频和视频块。read_packet函数设置pkt。这包括用av_new_packet或更好是av_get_packet(其也得到作为一个参数的文件流)初始化该包。你初始化该包后,你应设置(按任何顺序)pos和data(如果你使用了av_new_packet)、流索引(设置发送包到哪个解码器,通常音频或视频,其对应你初始化它们用的顺序)和pts,演示时间戳。
- FFmpeg demuxer如何
- ffmpeg demuxer and muxer document
- ffmpeg实例muxer/demuxer小结
- dtplayer如何添加demuxer
- FFmpeg codec howto and FFmpeg demuxer howto
- FFmpeg rmvb demuxer中COOK 音频解析
- ffmpeg代码实现自己的demuxer
- 把自定义的demuxer加入ffmpeg源码
- 把自定义的demuxer加入ffmpeg源码
- ffmpeg demuxer针对stream info的处理
- FFmpeg完美入门【7】-FFmpeg架构之Demuxer和muxer模块分析
- FFmpeg完美入门【7】-FFmpeg架构之Demuxer和muxer模块分析
- ffmpeg 基本数据结构和对象(二): muxer/demuxer 和 encoder/decoder
- 最简单的基于FFmpeg的封装格式处理:视音频分离器(demuxer)
- 最简单的基于FFmpeg的封装格式处理:视音频分离器(demuxer)
- 最简单的基于FFmpeg的封装格式处理:视音频分离器(demuxer)
- 最简单的基于FFmpeg的封装格式处理:视音频分离器(demuxer)
- 最简单的基于FFmpeg的封装格式处理:视音频分离器简化版(demuxer-simple)
- CListCtrl使用技巧
- Spring 你让我伤透了个心啊!
- 判断出栈序列是否合法
- CListCtrl应用介绍
- 阈值化 OTSU算法 cvAdaptiveThreshold 函数
- FFmpeg demuxer如何
- Solaris代码调试
- 图解Windows xp—FTP服务器配置
- IT公司面试宝典,全
- scannf的用法
- 常用的排序算法分析
- 我的编程生活-20120320
- 关于Android 数据库SQLite性能优化
- 黑马程序员 弱类型DataSet和弱类型DataSet