FFmpeg基础知识了解

2020-01-07  本文已影响0人  吊浙

FFmpeg简介:
FFmpeg是一个自由软件项目的名称,采用LGPL或GPL许可证。提供了录制,转换以及流化音视频的完整解决方案。它包含非常先进的音频/视频编码库libavcodec,为了保证高可移植性和编码质量,libavcodec里面的很多代码都是新开发的。FFmpeg这个单词中FF指的是Fast Forvard 而mpeg指一种压缩率比较大的活动图像和声音的压缩指标准。

1 命令行工具概述(Command Line Tools Documentation)
    ffmpeg -i input.avi -r 24 output.avi
    把input.avi 中的帧率变成24,输入的output.avi就是24fps的视频
    
    ·ffmpeg:包含FFmpeg的各种功能 如gif/格式转换/截图/编码
    ·ffmpeg-all:包含FFmpeg工具及FFmpeg组件
    ·ffplay:一个使用FFmpeg和SDL库的,简单的,可移植的媒体播放器
    ·ffplay-all:包含ffplay工具及FFmpeg组件
    ·ffprobe:用来查看多媒体文件的信息
    ·ffprobe-all:包含ffprobe工具及组件
    ·ffserver:与流媒体服务器相关,负责响应客户端的流媒体请求,把流媒体数据发送给客户端
    ·ffserver-all:包含ffserver工具及组件

2 组件概述(Components Documentation)
    
    Utilities:libavutis 提供的通用的features及工具
    Video scaling and pixel format converter 视频缩放和像素格式转换器
    Audio resampler 音频重新取样
    Encoders and decoders(codecs) 编码和解码
    Bitstream filters 码流过滤器
    Muxers and demuxers(formats)数据合成及数据分离
    Protocols 协议
    Input and output devices 输入和输出设备
    Filters 过滤器

3 类库概述(Libraries Documentation)
    libavutil 包含一些公共的工具函数的使用库,包含算术运算。字符操作等
    libswscale (原始视频格式转换)用于视频厂家比例缩放,色彩映射转换。图像颜色空间或格式转换,如RGB565 RGB888等于YUV420等之间的转换。
    libswresample 原始音频格式转码
    libavcodec 用于各种声音/图像编码解码的生产和解析,包括获取解码所需信息以生成解码上下文结构读取音视频帧等功能; 音视频的格式解析协议,为libavcodec分析码流提供独立的音频或视频码流源
    libavdevice 硬件采集 加速 显示 操作计算机中常用的音视频捕获或输出设备有ALSZ AUDIO BEOS JACK OSS 1394 VFW 等。
    libavfilter filter(FileIO FPS、DrawText) 音视频波过滤的开发,比如宽高比 裁剪.格式化 非格式化 伸缩
    补充:
    libvresample:音视频疯转编码格式预设等。
    libposttproc(同步 时间计算的简单算法)用于后期效果处理,音视频应用的后处理 图像去块效应。

4 文件概述(General Documentation)
    Frequently asked Questions 常见问题
    Supported External Libaries, Formats ,Codecs or Features:支持扩展库 格式 编解码或特性
    Platform Specific Information 平台具体信息
    Developer Documentation 开发者概述
    Git How-To: Git
    FFmpeg Automated Testing Environment:FFmpeg 自动化测试环境

下期预告 如何在windows下编译FFmpeg

上一篇 下一篇

猜你喜欢

热点阅读