ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

FFmpeg学习之 一 (音视频理论知识)

2019-07-19 19:09:35  阅读:208  来源: 互联网

标签:视频 FFmpeg 编码 解码 音视频 传输 理论知识 音频


FFmpeg学习之 一 (音视频理论知识)

1. 音视频理论知识

1.1 基本概念

1.1.1 音视频常见处理

  1. 采集
  • 为什么要采集数据

无论是iOS平台,还是安卓平台,我们都是需要借助官方的API实现一系列相关功能.首先我们要明白我们想要什么,最开始我们需要一部手机,智能手机中摄像头是不可缺少的一部分,所以我们通过一些系统API获取就要可以获取物理摄像头将采集到的视频数据与麦克风采集到的音频数据.

  • 如何采集数据

  • 注意点

  1. 处理
  • 常见的数据处理

音频和视频原始数据本质都是一大段数据,系统将其包装进自定义的结构体中,通常都以回调函数形式提供给我们,拿到音视频数据后,可以根据各自项目需求做一系列特殊处理,如: 视频的旋转,缩放,滤镜,美颜,裁剪等等功能, 音频的单声道降噪,消除回声,静音等等功能.

  • 数据处理工具

  • 注意点

  1. 编码
  • 为什么要编码数据

原始数据做完自定义处理后就可以进行传输,像直播这样的功能就是把采集好的视频数据发送给服务器,以在网页端供所有粉丝观看,而传输由于本身就是基于网络环境,庞大的原始数据就必须压缩后才能带走,可以理解为我们搬家要将物品都打包到行李箱这样理解.

  • 编码原理

  • 常用编码工具

  • 常用编码算法

  • 注意点

  1. 传输
  • 常用的传输协议

编码后的音视频数据通常以RTMP协议进行传输,这是一种专门用于传输音视频的协议,因为各种各样的视频数据格式无法统一,所以需要有一个标准作为传输的规则.协议就起到这样的作用.
常用传输协议:RTMP, FTP, TCP/IP, HTTP, XMMP
常用数据封装:json, xml,

  • 传输数据过程

  • 常用工具

  • 注意点

  1. 解码
  • 为什么要解码数据

服务端接收到我们送过去的编码数据后,需要对其解码成原始数据,因为编码的数据直接送给物理硬件的设备是不能直接播放的,只有解码为原始数据才能使用.

  • 常用解码算法

  • 常用解码工具

  • 解码原理

  • 注意点

  1. 渲染

  2. 常用音频编码格式

  3. 常用视频编码格式

  4. 常用编解码算法

  5. 视频音频同步算法

  • 音视频同步需求

解码后的每帧音视频中都含有最开始录制时候设置的时间戳,我们需要根据时间戳将它们正确的播放出来,但是在网络传输中可能会丢失一些数据,或者是延时获取,这时我们就需要一定的策略去实现音视频的同步,大体分为几种策略:缓存一定视频数据,视频追音频等等.

  • 常用音视频同步算法

  • 音视频处理工具

  • 注意点

  1. 录像

  2. 音频播放

  3. 视频播放

音视频专家博客收集:

  1. 肖雷华大神:https://blog.csdn.net/leixiaohua1020/article/details/18893769
  2. 小东邪大神:https://www.jianshu.com/u/23f3ec991fed

标签:视频,FFmpeg,编码,解码,音视频,传输,理论知识,音频
来源: https://blog.csdn.net/kyl282889543/article/details/96490778

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有