00_音视频介绍及常用命令行

一、音视频的应用范围

1、直播类:音视频会议、教育直播、娱乐/游戏直播等
2、短视频:抖音、快手、小咖秀
3、网络视频:优酷、腾讯视频、爱奇艺
4、音视频通话:微信、QQ、Skype等
5、视频监控:
6、人工智能:人脸识别,智能音箱等,更关注算法

二、音视频的处理流程在这里插入图片描述

三、播放器架构在这里插入图片描述

四、渲染的流程在这里插入图片描述

五、FFmpeg命令分类FFmpeg命令分类

1、基本信息查询命令

-version 显示版本
-demuxers 显示可用的demuxers
-muxers 显示可用的muxers
-devices 显示可用的设备
-codecs 显示所有编解码器
-decoders 显示可用的解码器
-encoders 显示可用的编码器
-bsfs 显示比特流filter
-formats 显示可用的格式
-protocols 显示可用的协议
-filters 显示可用的过滤器
-pix_fmts 显示可用的像素格式
-sample_fmts 显示可用的采样格式
-layouts 显示channel名称
-colors 显示识别的颜色名称

2、录制命令

查询avfoundation支持的设备列表

  • ffmpeg -f avfoundation -list_devices true -I “”
1、录制视频命令:
	ffmpeg -f avfoundation -i 1 -r 30 out.yuv
		-f:指定使用avfoundation采集数据
		-i:指定从哪采集数据,它是一个文件索引号
		-r:指定帧率
2、播放视频命令
	ffplay -s 2880x1800 -pix_fmt uyvy422  out.yuv
1、录制音频命令:
	ffmpeg -f avfoundation -i :0 out.wav
		: 冒号前设置视频,冒号后设置音频
2、播放音频命令
	ffplay out.wav
3、分解与复用命令
1、多媒体格式转换
	ffmpeg -i out.mp4 -vcodec copy -acodec  copy out.flv
2、抽取视频流
	ffmpeg -i f35.mov -an -vcodec  copy out.h264
	-an:不要音频
3、抽取音频
	ffmpeg -i f35.mov -acodec  copy -vn out.aac
4、处理原始数据命令
1、ffmpeg提取YUV数据
	ffmpeg -i input.mp4 -an -c:v rawvideo -pix_fmt  yuv420p out.yuv
		-i :指对哪个多媒体文件进行处理
		-an: a代表audio , n代表no
		-c:v:对视频进行编码
		-pix_fmt:像素格式
2、播放YUV
	ffplay -s  2880x1800 out.wav
1、ffmpeg提取PCM数据
	ffmpeg -i out.mp4 -vn -ar 44100 -ac2 -f s16le out.pcm
	-a:以a开头是表示与音频相关
	s16le: s表示有符号, 16表示16位,le表示小端
2、播放PCM数据
	ffplay -ar 44100 -ac 2  -f  s16le   out.pcm
5、滤镜命令

水印,画中画,裁剪,倍速

1、ffmpeg提取YUV数据
	ffmpeg -i in.mov -vf  crop=in_w-200:in_h-200 -c:v libx264 -c:a copy out.mp4
		-vf :表示视频滤镜
		in_w:视频宽
		in_h:视频高
		 -c:v: 视频编码器
		 -c:a  音频编码器
2、播放YUV
	ffplay  out.mp4
6、裁剪与合并命令
1、裁剪命令
	ffmpeg -i in.mp4 -ss 00:00:00 -t 10 out.ts
		-ss :从什么时间裁剪
		-t: 裁剪时长
2、合并命令
	ffmpeg -f concat -i inputs.txt out.flv
		concat:拼接
		inputs.txt:文件列表,所有要合并文件的名字。内容格式为file 'filename' 
7、图片与视频互转命令
1、视频转图片
	ffmpeg -i in.flv -r 1 -f image2 image-%3d.jpeg
		-r:指定转换图片的帧率,1秒1张
		-f: 转成什么格式的
2、图片转视频
	ffmpeg -i image-%3d.jpeg out.mp4
8、直播相关命令
1、推流
	ffmpeg -re -i out.mp4 -c copy -f flv rtmp://server/live/streamName
		-re :减慢帧率速度,帧率保持同步
		-f: 转成什么格式的
2、拉流
		ffmpeg -i  rtmp://server/live/streamName -c copy dump.flv 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值