![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
FFmpeg 3.x API应用
码农小明
openHarmony多媒体领域开发者。
展开
-
【FFmpeg 3.x API应用〇】基于VS2017的FFmpeg开发环境的搭建
准备工作 在Windows平台上最强大的IDE非Visual Studio莫属了,虽然本人也非常喜欢并经常用Clion写一些小程序,鉴于VS的通用性还是选择使用VS来学习FFmpeg开发,可以使用免费的VS2017 Comminity社区版。 然后要下载FFmpeg Windows平台的开发工具,可以点这里下载 Dev版本。 把下载下来的incldue和lib目录放到VS工程目录下。开发...原创 2018-02-12 16:13:55 · 950 阅读 · 0 评论 -
【FFmpeg 3.x API应用一】视频解码
摘要 这篇文章介绍怎么实现视频解码,具体步骤为读取Sample.mkv视频文件,从中提取视频流,然后解码为YUV图像数据,把YUV数据存储为PGM灰度图像,或者存储为YUV420p RAW格式视频。 初始化FFmepg和FormatContext 使用FFmpeg API第一个操作就是执行初始化函数:av_register_all注册所有相关组件,然后使用avformat_open_in...原创 2018-02-12 14:07:04 · 651 阅读 · 0 评论 -
【FFmpeg 3.x API应用二】视频编码
摘要 这篇文章介绍使用FFmpeg实现视频解码,具体操作为读取上一节视频解码所生成的YUV420p格式视频文件,对其进行H.264格式视频编码,并将编码后的数据保存为H.264裸流文件Sample.h264。 初始化FFmpeg 所有操作之前必须先注册FFmpeg组件实现全局初始化。 void VideoEncoding::init() { avcodec_regis...原创 2018-02-12 15:25:06 · 567 阅读 · 0 评论 -
【FFmpeg 3.x API应用三】音频解码
摘要 这篇文章介绍音频解码,示例程序是读取一个mp3格式或者aac格式的音频文件,解码输出为未压缩的pcm音频文件。 初始化FFmepg和FormatContext 和视频解码一样,先使用av_register_all注册所有相关组件,然后使用avformat_open_input打开指定的媒体文件,并使用avformat_find_stream_info获取媒体流相关信息,把这些格式信...原创 2018-02-13 15:46:53 · 776 阅读 · 0 评论 -
【FFmpeg 3.x API应用四】音频编码
摘要 这篇文章介绍音频编码,示例程序是读取上一节生成的PCM格式的音频文件,对其进行编码输出。 初始化 这个必备的操作就不多说了。 void AudioEncoding::init() { avcodec_register_all(); } 配置编解码器CodecContext 查找编码器。在视频编码那一节我们使用avcodec_find_encoder_by_n...原创 2018-02-13 16:58:16 · 781 阅读 · 1 评论