博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ffmpeg.exe 笔记
阅读量:6718 次
发布时间:2019-06-25

本文共 1327 字,大约阅读时间需要 4 分钟。

hot3.png

open_input_file:

avformat_open_input 打开了输入文件

av_dict_get 获取信息

setup_find_stream_info_opts

avformat_find_stream_info

codec = avcodec_find_decoder

open_output_file

avformat_alloc_output_context2(&oc, NULL, o->format, filename)

new_output_stream(o, oc, AVMEDIA_TYPE_VIDEO, source_index)

avcodec_get_context_defaults3(st->codec, ost->enc);

init_input_stream:

有个if (ist->decoding_needed)判断,需要解码就 avcodec_open2;但是咱这里不需要,它只简单的初始化了以下几个:

ist->next_pts = AV_NOPTS_VALUE;

    ist->next_dts = AV_NOPTS_VALUE;

    ist->is_start = 1;

关于output_stream的初始化:

    /* open each encoder */

    for (i = 0; i < nb_output_streams; i++) {

        ost = output_streams[i];

        if (ost->encoding_needed) {

  ....  咱这里并不需要编码。

  } else {

     av_opt_set_dict(ost->st->codec, &ost->opts);

  }

 

在output_packet函数里判断是否需要编码:

if (ist->decoding_needed) { 如果需要编码:decode_audio    (ist, &avpkt, &got_output); decode_video    (ist, &avpkt, &got_output);

否则do_streamcopy(最终调用av_interleaved_write_frame)

在transcode_init 函数里从 input_xxx 拷贝到 ouput_xxx里的信息:

ost->st->disposition

codec->bits_per_raw_sample

codec->chroma_sample_location

codec->codec_id

codec->codec_type

有一个if判断的拷贝;

codec->bit_rate

codec->rc_max_rate

codec->rc_buffer_size

codec->field_order

codec->extradata ;这里分配内存

codec->extradata_size

codec->bits_per_coded_sample

codec->time_base

有个switch分支内拷贝:

 

转载于:https://my.oschina.net/mingyuejingque/blog/494068

你可能感兴趣的文章
查找当前薪水(to_date='9999-01-01')排名第二多的员工编号emp_no、薪水salary、last_name以及first_name,不准使用order by...
查看>>
[SQL in Azure] Windows Azure Virtual Machine Readiness and Capacity Assessment
查看>>
关于CCR测评器的自定义校验器(Special Judge)
查看>>
java设计模式之 装饰器模式
查看>>
利息力(force of interest)
查看>>
Oracle 角色及其权限
查看>>
NiftyDialogEffects:集成了多种动画效果的Dialog控件
查看>>
《世界是数字的》读后感
查看>>
AD软件原理图封装过程(即由原理图转换到PCB)
查看>>
cocos2d-x lua table与json的转换
查看>>
mysql的基本原理
查看>>
《面向对象分析与设计》——抽象
查看>>
linux学习记录-------jdk安装配置
查看>>
查看dll依赖项
查看>>
ansible普通用户su切换问题
查看>>
2017.10.1
查看>>
洛谷——P1187 3D模型
查看>>
温度传感器,ds18b20
查看>>
ecshop为什么删不掉商品分类
查看>>
bzoj1941[Sdoi2010]Hide and Seek
查看>>