DVBdvb 是什么 iptv区别:dvb详细介绍

DVB是什么:dvb详细介绍
> DVB是什么:dvb详细介绍
DVB是什么:dvb详细介绍
广泛地说,DVB(Digital Video Broadcasting)技术就是指可以传输所有类型的数据的“数据容器”的广播[1]。DVB简单地通过这些“容器”传送压缩图像、声音或数据到接收端。DVB的“服务信息”扮演容器标题的角色,保证接收机知道如何解码。DVB方式与其他数据广播系统不同的的关键在于,容器中的不同数据单元可以承载独立的定时信息。例如声音和图像即便不是同时到达接收机,也能够使声音在接收机内与视频信息保持同步,这是与传统的电视节目不同的便利之处。 DVB方式有很强的适应性。例如,一个38Mbit/s的数据容器可以支持八个标准的电视节目(SDTV)通道、四个增强的电视节目(EDTV)通道,或一个高清晰度数字电视(HDTV)通道。目前,DVB卫星通信系统主要用来传送成倍的SDTV节目和相关的声音和数据。DVB也用于数据广播业务,例如接入到Internet。 MPEG-2标准被DVB采纳用于声音和视频信息等信源的编码,并且将一定数量的信源数据流和辅助信息多路复用到一个适于传输的单独数据流。因此,DVB基带处理中的许多参数、域和结构都与MPEG-2的定义相同。 DVB业务,它是一种基于信源编码为MPEG-2的数字广播技术[2],这种技术有三种标准: 1. DVB-S,它多用在卫星转发器上,带宽为26MHZ—72MHZ; 2. DVB-T,它是针对地面广播的; 3. DVB-C它主要用在有线电视上。DVB-C数字视频广播系统的信号通常采用QAM(正交幅相调制)方式进行传送。 MPEG-2同时兼顾了高质量的图像和高压缩比,从码率为2MB/s的VHS图像质量直到码率为18MB/s的高清晰度电视(HDTV)。一般的MPEG-2编码器都可由用户选择,把一个频道的电视信号压缩成2MB/s、3MB/s、4MB/s、5MB/s、6MB/s和8MB/s等的数字信号。实际观测表明,压缩为6MB/s和8MB/s的图像与没有压缩的图像基本没有区别,但在压缩为4MB/s的快速体育运动图像上,则能看到图像的缺陷。因此,体育节目一般采用5MB/s以上的码率,标准清晰度电视(SDTV)采用4MB/s的码率,而普通电视的影视节目则多采用2MB/s—3MB/s的码率。 MPEG-2的简化系统结构如图1所示,此图是MPEG-2的视音频数据信号处理流程图。其简单的工作过程描述如下: DVB-C机顶盒的硬件功能由八个功能模块实现,包括高频头、QAM解调器、MPEG-2解复用、MPEG-2解码、视频编码、音频D/A、用户控制接口。图2是DVB机顶盒的组成简图。 数字压缩有线电视接收机(机顶盒DVB-C)是实现电视信号数字化在有线电视电缆上传输接收的新技术。电视信号数字化传输具有抗干扰力强、无传输损失、加密方便可靠、接收音像质量高等优点。机顶盒在今后可以开通上行通道 ,为有线电视开设高速互联网等其他业务打下基础。 DVB技术先进的应用包括多媒体数据广播、Internet空中传送、交互式广播业务和结合GPRS技术应用于移动通信。
分享给小伙伴们:
我来说两句……
最新技术贴
微信公众号二
微信公众号一转载,介绍DVB
我的图书馆
转载,介绍DVB
一、MPEG-2系统原理&&&&&&&&&&&&&&&&&&&&& 第一章 MPEG-2简介&& 什么是MPEG和MPEG-2?&&&&&&& MPEG是Moving Picture Experts Group 的简称,MPEG-2是MPEG和ISO组织设计的一个数字视频压缩规范,主要用于DVD和DVB上,当前的标准文档是ISO13818.&& 什么是DVB?&& DVB是Digtal Video Broadcast的简称,是欧洲所有国家和其他部分国家和地区使用的数字电视标准.其中美国的ATSC标准也是在DVB标准的基础上实现的.&& 什么是TS码流和PS流?&&&&&&& TS是transport stream的简称,就是”传输流”.DVB数据广播采用的数据格式就是TS码流.&&&&&&& PS是program stream的简称,就是”节目流”.DVD中采用的数据格式就是PS流.&&&&&&& 这两种流的格式是不同的,TS格式具有很强的错误校正功能,适合传输,而PS格式适合存储在媒体中. 在这里,着重描述的是TS码流格式.&& 什么是PID?&&&&&&& PID是Packet identification的简称,就是”包标志符”.DVB系统把不同的数据打包成不同的数据包,用系统唯一的一个13 bits数字标志该数据的类型.例 如,PID=0x00表示是DVB系统中的PAT包,而PID=0x10表示是DVB系统的NIT包.不同的节目(包括Video和Audio)分别采用 不同的PID,例如,我们在PMT表中如果检测到PID=0x0120的PID是VIDEO数据,那么表示包号码是0x0120的所有包都是Video数 据,其他依此类推.&& 什么是PAT?&&&&&&& PAT是Program Association Table的简称,即”节目关联表”.PAT属于DVB系统流中的一个包,包号码(PID)是0x00.PAT表描述了DVB系统流中包含什么样的PID,主要是描述当前流的NIT表格的PID号码是多少,当前流中有多少个不同类型PMT表,每个PMT表对应的频道号等信息.&& 什么是PMT?&&&&&&& PMT是Program Map Table的简称,即”节目影射表”.PMT的PID 是服务器自由定义的(但不会和系统保留的PID冲突).这个PID是在PAT表中描述的,比如,如果在PAT表中有0x100项的内容,那么说明所有 PID是0x100的包都是PMT表.不同的频道有不同的PMT,也就是说,一个不同的PMT代表的是一个不同频道.PMT表格和PAT表格配合在一起, 就可以检测出DVB流中所有存在节目的所有PID,因此,数字电视搜台就是依靠这两个表格数据完成的.&& 什么是CAT?&&&&&&& CAT是Conditional Access Table的简称,即”条件访问表”,PID是0x01.CAT携带的是服务器的私有信息(CA系统就需要使用该表格实现节目的解密).&& 什么是SDT?&&&&&&& SDT是Service Description Table的简称,即”服务器描述表”,PID是0x11.SDT携带的是电视台名称和电视节目名称.DVB接收系统接收SDT表中的节目信息,实现比较友好的界面显示和操作.&& 什么是NIT和EIT?&&&&&&& NIT是Network Information Table的简称,即”网络信息表”.&&&&&&& EIT是Event Information Table的简称,即”环境信息表”.&&&&&&& NIT可以提供当前流的节目信息,也可以提供和当前流有关联的流的节目信息.&&&&&&& EIT提供的是流节目信息的改变,比如一个节目已经开始,或者已经结束的信息等.&& 什么是EPG?&&&&&&& EPG是Electronic Programme Guides的简称,即”电子节目指南”.该功能可实现预告近段时间即将播放的节目内容,同时支持基于内容的检索.&& 什么是teletext?&&&&&&& Teletext就 是我们常说的”图文电视”,当然在MPEG-2中,图文电视已经数字化,也就是说,图文信息已经做为数字化信息在TS流中传播.但最终,数字化的图文信息 都将转化为模拟的VBI信息插入到正常的电视信号中实现图文电视的显示.图文电视有很多标准,比如close caption,WSS等,欧洲的DVB使 用的teletext标准是ITU-R System B Teletext规格.该规格支持欧洲多种语言,支持简单图象和文本的混合显示.&&&&&&&&&&&&&&&&&&&&& 第二章 DVB系统的构成 && [本文不详细描述DVB系统的硬件构成,只是根据ISO13818中的描述,详细解释TS码流的格式和解复用原理.(够了,够了 呵呵)]&& DVB的分类&& DVB根据应用的不同,主要分为DVB-S,DVB-C,DVB-T,DVB-H等多种规格.不同的规格基本原理都是相同的,不同的主要是调制方式不同:&&& DVB-S,S是Satelite的首字母,应用于数字电视卫星广播,调制方式是QPSK.&&& DVB-C,C是Cable的首字母,应用于城市有线广播.调制方式是QAM所有格式: 16QAM,32QAM,64QAM,128QAM,256QAM.&&& DVB-T,T是Terrestrial的首字母,应用于陆地无线广播,调制方式是QPSK或者16QAM和64QAM.&&& DVB-H,H是Handheld的首字母,应用于手持无线广播,调制方式和DVB-T相同.&&& 总 的来说,不同的DVB系统只有前端系统是不同的,最终的数字信息都是相同的,也就是都是采用ISO13818描述的规格.前端系统主要是指调制方法和发射 方法等.因此,这里所叙述的内容,全部适用于所有的DVB系统,同时因为美国的ATSC系统也是在DVB系统上的小量更改和小部分功能增加,因此也适用于 ATSC标准.&&& 基本系统描述如下:&&& (1)编码系统:&&& 假 设信号源有6个节目,则DVB系统先对这6个节目的所有数据(Video,Audio)进行压缩处理,然后经过一个叫做"复用"的程序进行节目的复用 (PID分配,即对6个节目分别分配不同的PID号码)形成叫做"PES"的包,然后再经过TS流处理程序,把这些PES包全部封装成TS码流格式,最后 把获得的TS格式的数字信号经过调制(实现的是频率的复用),然后经过D/A转换成模拟信号,再次调制成高频信号,经传输系统发送出去.&&& (2)解码系统&&& 接 收系统接收到高频信号,先转化为中频信号,然后再经过一个高速的A/D转换成数字信号,接着经过一个反调制程序,这样就得到了TS码流. TS码流进入一 个称为"解复用"的程序,该程序实现自动分析TS流中的表格信息,读取所有可用的PID信息等,然后提取一个用户指定的PID(用户选择的节目),把该节 目的数字信号全部接收而忽略其他不需要的信号,然后Video,Audio信号分别进入不同的解压缩程序,分别对Video,Audio信号进行解压缩和 显示,如果该节目包含了Teletext和EPG,也有可能同时处理Teletext和EPG,并且把处理的结果和Video信号一起叠加到屏幕上.&& Packet的概念&&& (1)TS流是基于Packet的位流格式,每个包是188字节或者204字节(一般是188字节,204字节的格式仅仅是在188字节的Packet后部加上16字节的CRC数据,其他格式是一样的),整个TS流组成如下所示:&&&&& &&& &&& Packet 1&& Packet 2&& ..&& Packet n&& 在实际使用中,因为TS流已经内部具有很强的错误处理能力,所以一般使用较多的是188字节一个包的格式,204字节一个包的格式据说一般在高清节目中使用较多.&&& 所有的Packet格式都是统一的,包括一个Packet header和Packet datas.其中Packet header包含了同步字节(该字节固定是0x47,表示这个包的数据开始是正确的),该Packet的唯一号码(即PID)和其他一些信息.格式如下(用C格式表示)&& typedef struct&& {&&& unsigned sync_byte:8;/*8 bits的同步字节*/&&& unsigned transport_error_indicator:1;/*1 bit的错误指示信息,1表示当前Packet至少有1bit的传输错误,0表示所有数据都正确*/&&& unsigned payload_unit_start_indicator:1;/*负载单元开始标志,请参考ISO13818-1了解该标志作用*/&&& unsigned transport_priority:1;/*1 bit的传输优先级标志,1表示高优先级,0表示低优先级*/&&& unsigned PID:13;/*13 bits的Packet ID号码,唯一的号码对应不同的包*/&&& unsigned transport_scrambling_control:2;/*2 bits的加密标志,00表示没有加密,其他表示已被加密*/&&& unsigned adaptation_field_control:2;/* 2 bits的附加区域控制,请参考ISO13818-1了解该标志作用*/&&& unsigned continuity_counter:4;/*4 bits的包递增计数器*/&& }PACKET_HEADER;&& 以上结构刚好占用32 bits,即4个字节,因此一个TS流的Packet头部的4字节是header信息,分析该header信息就可以知道当前Packet的属性.剩下的184字节有可能是Video数据,也有可能是Audio数据,也有可能是DVB SI信息,怎 么区分呢?其实很简单,就是利用header中的PID信息.上一章说了PAT是节目关联表,它的PID是0x0000.这个PID就是对应这里 header的PID.换句话就是说,如果我们发现一个Packet的PID等于0x0000,那么说明这个Packet是DVB的PAT表格而不是 Video数据或者Audio数据.&& 实 际上,在信号编码成TS码流的时候,不同节目的Video,Audio等数据都分配了不同的PID.例如,一个节目有两路Video,三路Audio,那 么分配PID的时候可能是Video 1==0x100,Video 2==0x101,Audio 1==0x102,Audio 2==0x103, Audio 3==0x104,这样传输的TS码流中的PID就可能有以上的PID.因此,如果我们需要在程序中过滤出第一路Video和第二路 Audio就可以这样处理了(伪代码描述):&&& void Process_Packet(unsigned char*buff)&&& {&&& int PID=GETPID(buff);/*从当前的188字节缓冲区中获取PID信息*/&&& if(PID==0x100) /*PID等于第一路Video的PID,说明当前数据是Video数据*/&&& {&&&&& SaveToVideoBuffer(buff+4);/*把header后部的数据存到Video缓冲区,待后部处理*/&&& }&&& else if(PID==0x103)/*PID等于第二路Audio的PID,说明当前数据是Audio数据*/&&& {&&&&& SaveToAudioBuffer(buff+4);/*把header后部的数据存到Audio缓冲区*/&&& }&&& else/*其他PID则丢弃,当然如果PID是DVB系统保留的PID如PAT,PMT则必须处理*/&&& {&&&&& printf("unknown PID!\n");&&& }&& &&& }&& 现 在的问题是,编码的时候分配好的PID,在解码的时候是怎么知道什么PID对应什么数据呢?这就是DVB SI表格的分析与处理了,请参考第三章.这里先 看一个实际的TS码流的例子.这里的数据是用UltraEdit用16进制格式打开TS码流文件得到的.文件是Taiwan-551.ts.&& 这 里仅仅截取了3个Packet的信息,请注意图中用红色标注的部分,这就是TS流Packet的4个字节的头信息.这个TS流是采用每个包共188字节的 格式,因为两个头信息的间隔是188个字节(第一个0x47到第二个0x47的间隔).以后的所有的Packet都将是188字节的格式,这是 DVB TS标准规定的固定大小.那么这三个包分别包含的是什么数据,下面我们可以自己分析一下.&&& 先 看第一个包,头信息数据是"0x47 0x07 0xe5 0x12",刚才已经知道了,header信息都是按位操作的(这就是为什么TS码流也可以叫 做位流的原因),特别要注意的是定义和传输的时候都是MSB first,也就是说,先出现的位是数据的最高位.先转化成2进制格式:&&& 01 && 请对照上面的PACKET_HEADER结构:&& typedef struct&& {&&& unsigned sync_byte:8;&&& unsigned transport_error_indicator:1;&&& unsigned payload_unit_start_indicator:1;&&& unsigned transport_priority:1;&&& unsigned PID:13;&&& unsigned transport_scrambling_control:2;&&& unsigned adaptation_field_control:2;&&& unsigned continuity_counter:4;&& }PACKET_HEADER;&& 那么对照一下,我们可以发现:&&& sync_byte=,就是0x47,这是DVB TS规定的同步字节,固定是0x47.&&& transport_error_indicator=0,表示当前包没有发生传输错误.&&& payload_unit_start_indicator=0,含义请参考ISO13818-1标准文档&&& transport_priority=0,表示当前包是低优先级.&&& PID=01即0x07e5,这代表是什么呢,暂时还不知道(实际上是Video PID,参考下图)&&& transport_scrambling_control=00,表示节目没有加密&&& adaptation_field_control=01即0x01,具体含义请参考ISO13818-1&&& continuity_counte=,表示当前传送的相同类型的包是第3个&& 依此类推,再看一下第二个包"0x47 0x07 0xe5 0x13",2进制是01 &&& sync_byte=,就是0x47,这是DVB TS规定的同步字节,固定是0x47.&&& transport_error_indicator=0,表示当前包没有发生传输错误.&&& payload_unit_start_indicator=0,含义请参考ISO13818-1标准文档&&& transport_priority=0,表示当前包是低优先级.&&& PID=01即0x07e5,这代表是什么呢,暂时还不知道(实际上是Video PID,参考下图)&&& transport_scrambling_control=00,表示节目没有加密&&& adaptation_field_control=01即0x01,具体含义请参考ISO13818-1&&& continuity_counte=,表示当前传送的相同类型的包是第4个(注意到了吧,以上两个包的PID都是0x07e5,所以这里的continuity_counte就递增一次)&& 第三个包是"0x47 0x07 0xf1 0x18",2进制是01 .&&& sync_byte=,就是0x47,这是DVB TS规定的同步字节,固定是0x47.&&& transport_error_indicator=0,表示当前包没有发生传输错误.&&& payload_unit_start_indicator=0,含义请参考ISO13818-1标准文档&&& transport_priority=0,表示当前包是低优先级.&&& PID=01即0x07f1,这代表是什么呢,暂时还不知道(实际上是Audio PID,参考下图)&&& transport_scrambling_control=00,表示节目没有加密&&& adaptation_field_control=01即0x01,具体含义请参考ISO13818-1&&& continuity_counte=,表示当前传送的相同类型的包是第9个&& 请看解码程序&&Seekfor MPEG-2 decoder&&读取该文件的结果:&&& && 上图我们可以发现,Taiwan-551.ts有一个节目叫"DIMO",它的Video PID是0x07e5,Audio PID是0x07e6&& 还有一个节目叫"Service 1",没有Video PID,它的Audio PID是0x07f1(说明是一个广播节目而非电视节目)&& 这个数据刚好和我们刚才的分析是吻合的.但 是我想大家还有疑问,为什么0x07e5代表Video PID,0x07e6代表其中一个Audio PID呢?这就是刚才提到的,这是TS流在编码的 时候就分配好了的.但是,在解码的时候是怎么知道0x07e5就代表的是Video而不是Audio呢?这就是第三章的内容:DVB SI/PSI分析和 处理.文章出处:LCDHOME论坛网 原文地址:
TA的最新馆藏[转]&[转]&[转]&当前位置:&&&&dVb品牌信息
dVbDavid and Victoria Beckham
看了该品牌的人还看了
dVb品牌信息
David and Victoria Beckham
创建年代:
维多利亚?贝克汉姆 (Victoria Beckham)
dVb品牌介绍
DVB是维多利亚?贝克汉姆 (Victoria Beckham) 创建的新品牌,DVB――David Beckham的字母简写中间,镶嵌着Victoria的首字母,仿若大卫展开双臂,温柔环绕着爱妻。“这个创意是我们俩同时想到的,真的,它就像一个突如其来的念头,同时跳进我们的脑子里。”维多利亚?贝克汉姆 (Victoria Beckham) 说。 2006年,时尚品牌dVb正式推出了第一批产品,以太阳镜为主。不过,最受消费者欢迎的,还是DVB的牛仔裤, 也许女人们都对维多利亚?贝克汉姆 (Victoria Beckham) 那双修长挺拔的玉腿印象太深刻了吧。维多利亚?贝克汉姆 (Victoria Beckham) 将她设计的最新一款牛仔裤命名为“Naomi”。没错,就是用她的好友兼时尚偶像 Naomi Campbell的名字命名的。“我在心里把这个系列叫做'超模系列',因为我希望女孩们穿上它以后,都能塑造出一双超级修长的美腿。在我认识的所有人里,还有谁的腿能比Naomi Campbell的腿更长呢?我给Naomi打了电话,她非常开心地一口答应下来。”说实话,谁会不愿意呢?“
Copyright&2003- 深圳市明日网络科技有限公司版权所有 本站网络实名:品牌服装网
《中华人民共和国增值电信业务经营许可证》粤B2-号
为了您的权益不受侵害,品牌服装网提醒您在咨询企业品牌时, 请认真考察欲加盟代理经销企业的资信度!

我要回帖

更多关于 git使用详细介绍 的文章

 

随机推荐