ffmpeg
dengjoe
这个作者很懒,什么都没留下…
展开
-
ffmpeg中的时间单位转换
一、ffmpeg中的时间单位1、AV_TIME_BASE ffmpeg中的内部计时单位(时间基),ffmepg中的所有时间都是于它为一个单位,比如AVStream中的duration即以为着这个流的长度为duration个AV_TIME_BASE。AV_TIME_BASE定义为:#define AV_TIME_BASE 10000002、AV_TIME_原创 2016-09-13 14:14:22 · 711 阅读 · 1 评论 -
ffmpeg常用命令
一、ffmpeg语法ffmpeg使用语法: ffmpeg [[options][`-i' input_file]]... {[options] output_file}...如果没有输入文件,那么视音频捕捉就会起作用。常用选项:-h 帮助-i filename 输入文件-y 覆盖输出文件-vcodec 指定视频编码器,如libx26原创 2016-09-13 13:03:12 · 919 阅读 · 0 评论 -
ffmpeg读取H264的sps、pps
sps、pps在avcC中,保存为:AVFormatContext->streams[H264Index]->codec->extradata1、读取代码 for(int i=0; inb_streams; i++) { AVCodecContext *codec = ifmt_ctx->streams原创 2016-09-16 21:04:16 · 1826 阅读 · 0 评论 -
ffmpeg解封装后的帧处理(H.264,AAC)
一、H.264的处理1、分离某些封装格式(例如MP4/FLV/MKV等)中的H.264的时候,需要首先写入SPS和PPS,否则会导致分离出来的数据没有SPS、PPS而无法播放。这些信息存储在AVCodecContext的extradata里面。并且需要使用FFMPEG中的名为"h264_mp4toannexb"的bitstream filter 进行处理,然后使用处理后的extrada原创 2016-09-16 21:08:25 · 1261 阅读 · 0 评论 -
ffmpeg的编程笔记1 - 基本函数与流程
两年前自己的工作记录,没有整理,有些乱了。分两部分来记录下ffmpeg编程中基本的东西。AVInputFormatAVOutputFormat一、初始化及常用函数、结构:av_register_all(); //注册所有的compiled muxers, demuxers and protocols.avformat_network_init原创 2016-09-16 21:20:20 · 335 阅读 · 0 评论 -
ffmpeg的编程笔记2 -帧数据处理流程解析
一、AVPacket的用法1、直接使用AVPacket packet;...av_read_frame(ifmt_ctx, &packet);...av_free_packet(&packet);2、使用指针,则麻烦些://AVPacket *packet=(AVPacket *)av_malloc(sizeof(AVPacket));//av_init原创 2016-09-16 21:25:07 · 484 阅读 · 0 评论 -
用ffmpeg处理UDP时Circular buffer overrun错误
用ffmpeg实现udp流的中转,命令如下:ffmpeg -re -i udp://192.168.1.2:5000 -acodec copy -vcodec copy -f mpegts -muxrate 4200k udp://192.168.1.136:5004运行一会儿,会提示如下错误并停止:Circular buffer overrun. To avoid, incr原创 2016-09-23 17:17:00 · 2979 阅读 · 0 评论 -
ffmpeg处理hls
ffmpeg处理m3u8格式一、处理m3u8的常用命令1、保存m3u8为flvffmpeg -re -i http://192.168.14.102:8080/live/2012.m3u8 -vcodec copy -acodec copy -bsf:a aac_adtstoasc -f flv d:\2012.flv2、使用segment切片ts文件为m3u8原创 2016-10-14 14:42:14 · 1764 阅读 · 0 评论