FFmpeg简介
作者:互联网
1.FFmpeg简介
ffmpeg是一个跨平台的音视频处理库,为了跨平台那么需要编译出适应用于各个平台的ffmpeg库。
一般在 windows 平台下会进行 windows 开发和安卓开发,所以本文的目的就是在windows 平台下编译用于windows 和安卓使用的ffmpeg库。
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供录制、转换以及流行音视频的完整解决方案。它包含了非常先进的音频/视频编码编码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。
2.FFmpeg项目组成
FFmpeg是一套可以用来记录、转换数字音频、视频,并能够将其转化为流的开源计算机程序。它包括了领先的音/视频编码库libavcodec等。
- libavformat:用于各种音视频封装格式的生成和解析,包括获取解码所需信息以生成解码上下文结构
- libavcodec:用于各种类型声音/图像编解码;
- libavutil:包含一些公共的工具函数;
- libswscale:用于视频场景比例缩放、色彩映射转换;
- libpostproc:用于后期效果处理;
1.ffmpeg: 该项目提供的一个工具,可用于格式转换、解码或电视卡即使编码等。
2.ffserver: 一个HTTP对媒体即时广播串流服务器;
3.ffplay: 是一个简单的播放器,使用ffmpeg库解析和解码,通过SDL显示。
3.FFMPEG组成
官网介绍FFMPEG是一个多媒体框架,包含了多个模块库:AVFormat ,AVCodec ,AVFilter ,AVDevice ,AVUtil 等,并且提供了基于这些库的 三个命令行工具: ffmpeg,ffplay,ffprobe。
4.使用ffmpeg的方式分为两种
一种方式是直接使用ffmpeg提供的这三个命令行工具来进行多媒体处理,另一种是使用 ffmpeg封装的这些库封装的这些库进行 二次开发。
5.FFmpeg命令行
- 1.列出支持的格式
- 2.剪切一段媒体文件
- 3.提取一个视频文件中的音频文件
- 4.从 MP4 文件中抽取视频流导出为裸的 H264 数据
- 5.视频静音,即只保留视频 -an ,-vn
- 6.使用 AAC 音频数据和 H264 视频生成 MP4 文件
- 7.音频格式转换
- 8.从 WAV 音频文件中到处 PCM 裸数据
- 9.将一个 MP4 的文件转换为一个 GIF 动图
- 10.使用一组图片生成 gif
- 11.淡入效果器使用
- 12.淡出效果器使用
- 13.将两路声音合并,比如加背景音乐
- 14.为视频添加水印效果
- 15.视频提亮效果器
- 16.视频旋转效果器的使用
- 17.视频裁剪效果器的使用
- 18.将一段视频推送到流媒体服务器上
- 19.将流媒体服务器上的流 dump 到本地
- 20.将两个音频文件以两路流的形式封装到一个文件中
6.FFMpeg的编译、SDK、开发环境
下载地址:https://ffmpeg.zeranoe.com/builds/
开发环境为 win10 64bit +QT5.9.8 ,需下载 window 32 bit 对应的 shared 文件(包含 dll 文
件)和Dev文件(包含动态库和include的文件以及examples)。注意题主下载window-64bit
的开发库时,提示 “xxx undefined reference ”。.
更多内容请参考相关课程。
标签:视频,FFmpeg,效果器,libavcodec,简介,使用,ffmpeg 来源: https://blog.csdn.net/qq_38743494/article/details/113828082