ffmpeg入门(二)
FFmpeg的库函数常用代码罗列:
Fmpeg主要能完成的功能:解码和编码
【总体功能】
1)解码 decode —-》视频行业有DC(硬解码器), SDC(软解码器),相当于从视频流到yuv到图像,由DC或者SDC来处理,DC的话相当于有个硬件,来释放播放器的电脑的CPU或者那种大屏的CPU,而SDC这种软解码器其实就是最普通的播放器。
2)编码 encode—-》视频行业里面为了解放前端视频设备的CPU,这样前端只要采集到视频后,通过模拟线给后端的EC,EC相当于是编码器,统一编码成H.264并打包成TS,然后转成TS + RTP转发给对应的播放器或者服务器。
入门FFmpeg库,首先了解了上面的后,需要掌握函数的使用。(下面的罗列的函数,是从雷霄骅,雷哥的blog里面摘录过来,路径:http://blog.csdn.net/leixiaohua1020/article/details/8661601)
【通用的】
1)av_register_all()
2)avcodec_register_all()
3)内存的分配和释放(av_malloc(), av_free()等)
4)常用结构体的初始化和销毁(AVFormatContext,AVFrame等)
5)avio_open2()
6)av_find_decoder()和av_find_encoder()
7)avcodec_open2()
8)avcodec_close()
【解码】
1)avformat_open_input()
2)avformat_find_stream_info()
3)avformat_read_frame()
4)avcodec_decode_video2()
5)avformat_close_input()
【编码】
1)avformat_alloc_output_context2()
2)avformat_write_header()
3)avcodec_encode_video()
4)av_write_frame()
5)av_write_trailer()
【其他】
1)av_log() 日志输出系统
2)结构体成员管理系统 - AVClass
3)结构体成员管理系统- AVOption
4)libswscale的sws_getContext()
5)libswscale的sws_scale()
6)libavdevice的avdevice_register_all()
7)libavdevice的gdigrab
【脚本】
1)makefile
2)configure
还没有评论,来说两句吧...