2018-12-05-FFmpeg
- FFmpeg
1.简介
FFmpeg 是视频编解码和编辑框架,同时支持解封装绝大多种视频格式, 支持window,mac和linux等大多数操作系统.
2.视频基础知识
1)视频处理主要包括格式解封装和内容编解码. 解封装是指将视频内容,音频内容和字幕等流信息进行解压缩的过程(demux/mux) 格式编解码主要指视频内容的解压缩过程.(decode/encode)
2)主流视频 文件格式:AVI,MPEG-4,flv,RTMP 图片格式:YUV,WebP 网络传输格式:HLS,RTMP 视频压缩格式:FLV,MPEG-4 part 2 音频压缩格式:AAC
3.内容介绍
1)命令行工具
- ffmpeg
可以从摄像头和麦克风等工具或者网络和文件获取视频内容,也可以对视频内容进行格式转换,帧率修改,视频剪辑合并,加入字幕滤镜等操作.
- ffplay
ffmpge的测试播放工具,支持各种播放调试参数和常用播放设置
/Users/jiecao/Downloads/ffplay http://pl3.live.chongdingdahui.com/cddh/online.flv
Input #0, flv, from 'http://pl3.live.chongdingdahui.com/cddh/online.flv':
Metadata:
fileSize : 0
audiochannels : 2
2.1 : false
3.1 : false
4.0 : false
4.1 : false
5.1 : false
7.1 : false
encoder : obs-output module (libobs version 22.0.2)
Duration: 00:00:00.00, start: 0.015000, bitrate: N/A
Stream #0:0: Audio: aac (LC), 48000 Hz, stereo, fltp, 163 kb/s
Stream #0:1: Video: h264 (High), yuv420p(progressive), 444x960, 2048 kb/s, nan : 0.0030 fps, 30 tbr, 1k tbn, 60 tbcB sq= 0B f=0/0
148.44 A-V: -0.027 fd= 2 aq= 27KB vq= 229KB sq= 0B f=0/0
- ffprobe
网络视频信息探测工具,检测视频格式和视频流信息和内容.
例如:
/Users/jiecao/Downloads/ffprobe https://media.w3.org/2010/05/sintel/trailer.mp4
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'https://media.w3.org/2010/05/sintel/trailer.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
creation_time : 1970-01-01T00:00:00.000000Z
title : Sintel Trailer
artist : Durian Open Movie Team
encoder : Lavf52.62.0
copyright : (c) copyright Blender Foundation | durian.blender.org
description : Trailer for the Sintel open movie project
Duration: 00:00:52.21, start: 0.000000, bitrate: 669 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 854x480, 537 kb/s, 24 fps, 24 tbr, 24 tbn, 48 tbc (default)
Metadata:
creation_time : 1970-01-01T00:00:00.000000Z
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 126 kb/s (default)
Metadata:
creation_time : 1970-01-01T00:00:00.000000Z
handler_name : SoundHandler
/Users/jiecao/Downloads/ffprobe http://pl3.live.chongdingdahui.com/cddh/online.flv
Input #0, flv, from 'http://pl3.live.chongdingdahui.com/cddh/online.flv':
Metadata:
fileSize : 0
audiochannels : 2
2.1 : false
3.1 : false
4.0 : false
4.1 : false
5.1 : false
7.1 : false
encoder : obs-output module (libobs version 22.0.2)
Duration: 00:00:00.00, start: 0.005000, bitrate: N/A
Stream #0:0: Audio: aac (LC), 48000 Hz, stereo, fltp, 163 kb/s
Stream #0:1: Video: h264 (High), yuv420p(progressive), 444x960, 2048 kb/s, 30 fps, 30 tbr, 1k tbn, 60 tbc
2)主要库文件
- libavcodec
视频编解码库
- libavformat
视频格式解封装
- libavdevice
视频录制和视频播放终端
- libavfilter
视频流处理
- 其他
- 函数 文档 http://ffmpeg.org/doxygen/trunk/group__lavf__decoding.html#ga31d601155e9035d5b0e7efedc894ee49
- 支持联网传输格式 http://ffmpeg.org/general.html#Network-Protocols https://blog.csdn.net/HAOMCU/article/details/7072707