FFmpeg学习资料

ffmpeg介绍

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流(什么是流?)的开源计算机程序。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OS X等。FFmpeg是用于处理多媒体内容(例如音频,视频,字幕和相关元数据)的库和工具的集合。

项目组成功能介绍

  • libavformat:用于各种音视频封装格式的生成和解析,包括获取解码所需信息以生成解码上下文结构 和读取音视频帧等功能;
  • libvcodec:用于各种类型声音/图像编解码;
  • libavutil:包含一些公共的工具函数;
  • libswscale:用于视频场景比例缩放、色彩映射转换;
  • libpostproc:用于后期效果处理;
  • ffmpeg:该项目提供的一个工具,可用于格式转换、解码或电视卡即时编码等;
  • ffsever:一个 HTTP 多媒体即时广播串流服务器;
  • ffplay:是一个简单的播放器,使用ffmpeg 库解析和解码,通过SDL显示;

Windows下的FFMPEG已编译版本安装

下载链接:https://ffmpeg.zeranoe.com/builds/

https://ffmpeg.org/

ffmpeg官网网站

https://ffmpeg.org/documentation.html

ffmpeg官网文档

Download FFmpeg

https://sourceforge.net/projects/ffmpeg/

https://github.com/FFmpeg/FFmpeg

FFmpeg中文网站-夏曹俊

FFmpeg Builds

FFmpeg is the leading multimedia framework to decode, encode, transcode, mux, demux, stream, filter and play. All builds require at least Windows 7 or Mac OS X 10.10.
https://ffmpeg.zeranoe.com/builds/这个网站提供了各种平台( Windows 32-bit、 Windows 64-bit、Mac OS X 64-bit)不同版本下的FFmpeg的Static、Shared、Dev版本的下载。所有版本都至少需要Windows 7或Mac OS X 10.10。

雷霄骅的相关资料

雷霄骅 Lei Xiaohua
leixiaohua1020@126.com
中国传媒大学/数字电视技术
Communication University of China / Digital TV Technology
http://blog.csdn.net/leixiaohua1020
可惜了,雷神已经不在了,不然可以既然从CSDN上吸取他的音视频相关的学习了。

雷霄骅的CSDN博客

雷霄骅的Github

雷霄骅的知乎

http://jhdr.xhby.net/content/201608/03/c213550.html

[总结]FFMPEG视音频编解码零基础学习方法

相关资料

FFMpeg README

FFmpeg README

FFmpeg is a collection of libraries and tools to process multimedia content
such as audio, video, subtitles and related metadata.

Libraries

  • libavcodec provides implementation of a wider range of codecs.
  • libavformat implements streaming protocols, container formats and basic I/O access.
  • libavutil includes hashers, decompressors and miscellaneous utility functions.
  • libavfilter provides a mean to alter decoded Audio and Video through chain of filters.
  • libavdevice provides an abstraction to access capture and playback devices.
  • libswresample implements audio mixing and resampling routines.
  • libswscale implements color conversion and scaling routines.

Tools

  • ffmpeg is a command line toolbox to
    manipulate, convert and stream multimedia content.
  • ffplay is a minimalistic multimedia player.
  • ffprobe is a simple analysis tool to inspect
    multimedia content.
  • Additional small tools such as aviocat, ismindex and qt-faststart.

Documentation

The offline documentation is available in the doc/ directory.

The online documentation is available in the main website
and in the wiki.

Examples

Coding examples are available in the doc/examples directory.

License

FFmpeg codebase is mainly LGPL-licensed with optional components licensed under
GPL. Please refer to the LICENSE file for detailed information.

Contributing

Patches should be submitted to the ffmpeg-devel mailing list using
git format-patch or git send-email. Github pull requests should be
avoided because they are not part of our review process and will be ignored.

常用命令集举例

  • 1、获取视频的信息
    ffmpeg -i video.avi
  • 2、图片序列合成视频
    ffmpeg -f image2 -i image%d.jpg video.mpg
    上面的命令会把当前目录下的图片(名字如:image1.jpg. image2.jpg. 等…)合并成video.mpg
  • 3、将视频分解成图片序列
    ffmpeg -i video.mpg image%d.jpg
    上面的命令会生成image1.jpg. image2.jpg. …
    支持的图片格式有:PGM. PPM. PAM. PGMYUV. JPEG. GIF. PNG. TIFF. SGI
  • 4、输出YUV420原始数据
    ffmpeg -i input.mp4 output.yuv(yuv播放软件RawPlayer,YUVview)
  • 5、抓取视频的一些帧,存为jpeg图片
    ffmpeg -i input.mp4 -r 1 -q:v 2 -f image2 pic-%03d.jpeg
    -ss 表示开始时间
    -t表示共要多少时间。
  • 6\图片转YUV
    ffmpeg -i pic.jpeg -s 1024x2048 -pix_fmt yuv420p pic.yuv
©️2020 CSDN 皮肤主题: 护眼 设计师:闪电赇 返回首页