音视频知识


### 视频编码
常见的有: H.264、 MPEG4、  VP8
前端开发记住: 主流浏览器支持的视频编码是H.264

### 音频编码
CD音质 一分钟数据需要10M 
常见的有: WAV、 MP3、 AAC格式

### 封装格式
常见格式有 MP4 AVI RMVB

[image:D8440450-C7B5-4C1B-AC72-AE6CB984B9F2-371-0000B29995403C02/69EA78DF-A280-4002-84EE-AD2970F70E50.png]

视频封装格式和视频编码格式无关,同样的mp4文件,里面的视频流编码可以是 h264 也可以是mpeg-4 就会出现有的浏览器可以播放 有的浏览器放不了

### 码率
也叫比特率,帧率是1s播放多少帧,
比特率是1s的视频有多少bit

决定视频的大小与清晰程度。

Canvas播放视频的解决方案 比较出名的有JSMpeg
和PIXI一样 可以选择WebGL渲染视频也可以直接Canvas渲染视频。

JSMpeg 是没有 npm 包的,但是社区上有开发者基于 JSMpeg 封装了一个 npm 包:https://github.com/cycjimmy/jsmpeg-player


### 视频操作神器 FFmpeg
```shell
ffmpeg -i input.mp4 -f mpegts \
         -codec:v mpeg1video -s 640x360 -b:v 1500k -r 25 -bf 0 \
         -codec:a mp2 -ar 44100 -ac 1 -b:a 64k \
         output.ts
```
* -i:指定输入文件,这里指定为
input.mp4
* -f 指明输出文件的封装格式,这里为 jsmpeg 所需的 mpegts
* -codec:v 指明输出文件的视频编码,这里指明为 jsmpeg 所需的 mpeg1video
* -s 设置视频分辨率,参数格式为w*h或w×h
* -b:v 设置视频码率,一般如果想得到高清的效果,至少需要 4000k 以上,如果对视频体积有要求,可以视情况小一点
* -r 设置帧率(fps),一般都为 25
* -bf bframe 数目控制,一般为 0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值