ICode9

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

ffmpeg 音视频概念

2021-01-23 17:01:12  阅读:156  来源: 互联网

标签:码流 PS ffmpeg 传输 TS 音视频 概念 RTP ES


编码,解码,转码

封装(mux):复用,按一定格式组织原音视频

街封装(demux):解复用,按一定格式解析出原始音视频流。  

                                原始的?  yuv? 不对吧,是不是解出编码后的音视频?

 

 

ES流:原始流,直接从编码器出来的数据流

PES流:ES形成的分组称为PES分组,用来传递ES的一种数据布局。相当于打了个包,有时间戳等等

TS流:ES形成的分组称为TS分组,是用来传递ES的一种数据布局。任一段丢了,不影响下面的数据

RTSP流:RTPS(Real Time Streaming Protocol)RFC2326,实时流传输协议,是TCP/IP协议体系中的一个 应用层协议

RTMP流:Real Time Messaging Protocol 实时消息传输协议,是adobe公司的协议

HLS流:HLS是Apple的动态码率自适应技术,主要用于PC和Apple终端的音视频服务,包括一个m3u8索引文件,TS媒体分片文件。

流媒体:采用流式传输方式在Internet播放的媒体格式

数字信号实际传送的是数据流,一般数据流包括以下三种:ES是原始码流,包含视频、音频或数据的连续码流。TS是传输流,是由固定长度为188字节的包组成,含有独立时基的一个或多个节目,适用于误码较多的环境。
大家都知道TS包是以0x47开始,是一个同步字节。而且每个包长都是188个字节。于是我们可以非常方便的同步TS流,比如说有丢包的情况。只要找连续的n个(比如说5个)188个长度的TS包,如果都是以0x47开始的话,那么基本上可以认为这些包是TS的合法包。PES是打包生成的基本码流,是将基本的码流ES流根据需要分成长度不等的数据包,并加上包头就形成了打包的基本码流PES流。PS是节目流,PS流与TS流的区别在于,PS流的包结构是可变长度的,而TS流的包结构是固定长度的。在MPEG-2系统中,由视频,音频的ES流和辅助数据复接生成的用于实际传输的标准信息流称为MPEG-2传送流。信息复合/分离的过程称为系统复接/分接,据传输媒体的质量不同,MPEG-2中定义了两种复合信息流:传送流(TS)和节目流(PS:ProgramStream)

TS流与PS流的区别在于TS流的包结构是固定长度的,而PS流的包结构是可变长度。 PS包与TS包在结构上的这种差异,导致了它们对传输误码具有不同的抵抗能力,因而应用的环境也有所不同。TS码流由于采用了固定长度的包结构,当传输误码破坏了某一TS包的同步信息时,接收机可在固定的位置检测它后面包中的同步信息,从而恢复同步,避免了信息丢失。而PS包由于长度是变化的,一旦某一 PS包的同步信息丢失,接收机无法确定下一包的同步位置,就会造成失步,导致严重的信息丢失。因此,在信道环境较为恶劣,传输误码较高时,一般采用TS码流;而在信道环境较好,传输误码较低时,一般采用PS码流由于TS码流具有较强的抵抗传输误码的能力,因此目前在传输媒体中进行传输的MPEG-2码流基本上都采用了TS码流的包
编码器出来的是TS流,传输接口为asi口,编码器整个作用过程是把模拟信号变成ES,再打包成PES,再打包成TS流输出。复用器是把多路单节目或多节目TS流合称1路多节目TS流,再给调制器。数字卫星接收机出来的是TS流,也是asi接口,可能包含一路或多路节目,有的还同时有一路模拟信号视音频输出。模拟卫星接收机出来的是模拟视音频信号。 
RTP实时传送协议(Real-time Transport Protocol或简写RTP,也可以写成RTTP)是一个网络传输协议。RTP协议详细说明了在互联网上传递音频和视频的标准数据包格式。它一开始被设计为一个多播协议,但后来被用在很多单播应用中。RTP协议常用于流媒体系统(配合RTCP协议),视频会议和一键通(Push to Talk)系统(配合H.323或SIP),使它成为IP电话产业的技术基础。RTP协议和RTP控制协议RTCP一起使用,而且它是建立在用户数据报协议上的。 RTP包,前面是一个12字节的固定字节,然后是可选的n个CSRC(个数由前面12个字节的某个字段决定)。然后结下来可能存在extension包,字节个数也在extension(延长)的字段中决定。

 

2,基本模块

1,AVCodec 

2,AVFormat 

3,AVFilter 

4,SwrResample 

5,Swrscale  

基本流程:

 

 

 

 

 

 

 

标签:码流,PS,ffmpeg,传输,TS,音视频,概念,RTP,ES
来源: https://blog.csdn.net/kingda008/article/details/113048333

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

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

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

ICode9版权所有