为什么这里的我的电脑图标没了了

◆ 数字电视码流的监测标准规范
我的图书馆
◆ 数字电视码流的监测标准规范
◆ 数字电视码流的监测标准规范
◆ 数字电视码流的监测标准规范
DVB系统测量标准之一TR 101-290定义的三个优先级,是码流监测的一项主要内容。通过这三个优先级的监测,可以检验被监测的码流是否符合MPEG-2和DVB标准。这三个优先级都包含许多不同的参数。
TR 101-290的第一优先级
同步错误(TS Sync Loss)  同步错误是衡量传输流质量的最重要的指标。传输流失去同步,表明传输过程中有一部分数据丢失,将直接影响解码后画面的质量。严重的同步丢失现象则表明传输中断,同步字节出现错误。同步字节错误(Sync Byte Error)  同步字节错误和同步错误的区别在于传输数据包长为188字节或204字节,但同步字头的标准值为0×47,当出现同步字节错误时,同步字头的值为其他数值,表明在传输过程中部分数据出现错误,可能导致接收时出现马赛克,严重时导致解码器解不出信号。包识别丢失(PID Mssing)  检测数据流中各套电视节目的图像/声音数据是否正确。PID丢失,将导致该套节目无法正确解码。节目相关表(PAT)PAT在DVB标准中用于指示当前节目及其在数据流中的位置。PAT丢失,将导致解码器无法搜索到相应的节目包,使得接收端收不到图像。如果PAT超时,则解码器工作时间延长。节目对照表(PMT)PMT在DVB标准中用于指示该套节目视/音频数据在传输流中的位置。某一套节目的PMT丢失,将导致解码器找不到该套节目视/音频数据,使得接收端收不到图像或声音。PMT传输超时,将影响解码器切换节目时间。连续计数错误(Cont Count Error)  对于每一套节目的视/音频数据包而言,连续计数错误是一个很重要的指标。传输流包头连续计数不正确,表明当前传输流有丢包、错包、包重叠等现象,将导致解码器不能正确解码,图像出现马赛克等现象。
TR 101-290的第二优先级
数据传输错误(Transport Error)TS包数据在复用/传输过程中出现错误,包头标识位置被置为1,表明包已损坏,通过监测TS包的错误,可以监测码流是否连续及稳定。循环冗余校验(CRC)  节目专用信息(PSI)和服务信息(SI)出现错误,可以由CRC计算出来,以指明该包是否可用。PAT、PMT出现连续错误,将影响解码器对某一节目的正确解码。节目参考时钟间隔错误(PCR Discont)PCR用于恢复27MHz系统时钟,每40ms传输一个。PCR间隔错误,将导致接收端的时钟抖动或漂移,影响画面显示时间。节目参考时钟抖动错误(PCR Jitter Error)PCR抖动将影响接收端系统时钟的正确恢复,解码时会出现马赛克现象,严重时不能正常显示图像。播出时间标记(PTS)  在DVB标准中规定PTS每700ms传输一次,PTS传输超时将影响图像正确显示。
TR 101-290的第三优先级
网络信息表(NIT)NIT标识错误或传输超时,会导致解码器无法正确显示网络状态信息。业务描述表(SDT)SDT标识错误或传输超时,会导致解码器无法正确显示信道节目的信息。每路信息表(EIT)EIT标识错误或传输超时,会导致解码器无法正确显示每套节目的相关服务信息。此外,还有业务信息重复错误(SI Repletion Error)、缓冲器错误(Buffer Error)、运行状态表错误(RST Error)、TDT错误(TDT Error)、空缓冲器错误(Empty Buffer Error)和数据延迟错误(Data Delay Error)。  使用比较先进的监测设备,甚至可以检测NIT、SDT、EIT中具体错误的根源,例如NIT_Actual_Error、NIT_Other_ Error、SDT_Actual_Error、SDT_Other_ Error、EIT_Actual_Error、EIT_Other_Error、EIT_PF_Error等。相对而言,第三优先级相关数据的错误对接收端的解码及其图像质量产生的影响较小,因而一些监测设备对第三优先级中一些参数不做检测,或在监测设置上可以取消对其检测,例如缓冲器错误、空缓冲器错误和数据延迟错误。   由此可见,在数字电视系统中选择上述参数作为监测对象是十分必要的。其中第一、第二优先级中的参数直接关系到TS码流能否被正确解码,以及解码后节目图像和伴音的效果。这三个优先级是数字电视质量的客观技术指标,但它们不能直接用于图像质量的主观评价,这是数字电视监测与模拟电视监测的重要区别之一
数字电视码流的监测点
目前,尽管数字电视的节目平台、传输平台和服务平台在播出前端的系统构架有所不同,但TS流主要还是来自于卫星、地面、有线及局域网传输,经编码器、视频服务器和其它一些数据发生设备(比如EPG服务器)等,由播出前端的复用器对这些TS流进行组合、过滤,甚至再复用至155M群,然后对下行广播与传输。为了掌握TS流的工作状态,保证安全播出,在这些环节上都应该设置监测点。
数字电视码流监测的内容
 除了监测TR 101-290定义的三个优先级的内容外,数字电视码流监测还应该包括TS流的基本结构信息、带宽码率、PSI/SI信息、PCR分析和语法分析等内容。
TR 101-290的三个优先级
TR 101-290三个优先级的监测包括三个优先级下的所有参数。当然,也可以根据需要监测一个或几个参数,能够实时检测哪一个优先级下哪一个参数出现错误和错误的个数。特别是对于连续计数错误、传输字节错误、PCR抖动错误、PCR传输间隔错误,还应该通过监测系统获取其出现错误的PID号和包序号,以便进一步分析数字信号的错误信息与接收图像质量的对应关系。
TS流的基本结构信息
TS流的基本结构信息监测包括TS流的信息构成、TS包的包长、PSI/SI表的传输间隔、传输流的ID、PID的数量、网络ID和网络名称。
TS流的信息构成是指整个TS流所包含的节目数量、每个节目的节目号和节目名称、节目是否被加密等信息。其实,这些信息都是从PSI/SI中提取的简单信息。节目数量可以靠分析PMT表的数量而获得;节目号就是Service_ ID的值,并且应该和复用器、EPG上的配置相对应;节目名称来自SDT表下对应子表Service_Descriptor下的字段Service_ Name;而节目是否被加密可以通过CAT表和EMM、ECM确定。因为PSI/SI中包含了大量的信息,建议单独分出来,在需要的时候再进行细致的分析。
  对于一个有众多节目来源的播出前端来说,能够掌握传输流的ID、PID的数量、网络ID和网络名称是非常重要的。
带宽码率监测
  带宽码率监测包括整个TS流总码率的最小值、最大值、有效值、当前值、TS流中每路节目的码率和所占带宽的比率、PSI/SI中每个表的码率、空包率和其它数据的码率。
&&& 监测TS流的总码率,可以防止TS流瞬间超过带宽而影响传输和接收,同时也为一个通道的节目规划设置提供了重要的参考。
  监测TS流中每路节目的码率,可以掌握每路节目的播出状况。尤其是在统计复用的情况下,当不同优先级别的节目因瞬间码率过高而使预先设置的总带宽溢出时,可能会为了保证优先级高的节目的效果而强行对优先级低的节目降码率,结果影响优先级低的节目在接收端的效果。这些都可以通过监测TS流的节目码率而及时掌握和处理。
PSI/SI分析
  数字电视业务信息由PSI和SI两部分构成。PSI是MPEG-2规定的,它由PAT、PMT、CAT和NIT 4个表构成,其中PAT、PMT表最为重要。SI是DVB标准规定的,它由BAT、SDT、EIT、RST、TDT、TOT、ST、SIT和DIT 9个表构成,其中BAT、SDT、EIT和TDT是强制性的。PSI/SI由“表”和“描述符”构成。表是PSI/SI的基本结构,针对特定用途,PSI/SI中规定了一系列表来实现它;表由变量和描述符组成。描述符提供了更多的描述功能。
节目关联表(PAT)——针对复用的每一路业务,提供相应的PMT的位置(TS包的包标识符的值)和NIT的位置。
节目映射表(PMT)——标识并指示组成每路业务的流的位置,及每路业务的节目时钟参考(PCR)字段的位置。
条件接收表(CAT)——提供复用流中条件接收系统的有关信息。这些信息属于专用数据,并依赖于条件接收系统。当有EMM时,它还包括EMM流的位置。
网络信息表(NIT)——提供有关物理网络的信息。
业务群关联表(BAT)——提供业务群相关的信息,包括业务群的名称及每个业务群中的业务列表。业务描述表(SDT)——包含描述系统中业务的数据,例如业务名称、业务提供者等。
&&& 事件信息表(EIT)——包含与事件或节目相关的数据,例如事件名称、起始时间、持续时间等。不同的描述符用于不同类型的事件信息的传输,例如不同的业务类型。
时间和日期表(TDT)——给出与当前时间和日期相关的信息。由于这些信息更新频繁,所以需要使用一个单独的表。
  分析PSI/SI,可以了解被监测的TS流的复用结构、每个PMT表的PID、每路节目的PCR的PID、视/音频的PID、SDT和EIT的详细信息。如果被监测的是加密的TS流,还可以通过分析PSI/SI获取相关加密信息。
  一般的监测系统在TR 101-290第二优先级中,只是给出PCR的错误个数和出错PCR的PID,并把PCR的具体分析作为一个单独的模块。PCR分析包括PCR的精度分析和PCR的间隔分析。
PCR的错误范围是由允许偏离正确PCR值的最大值确定的,称为PCR精度。通常PCR的精度设置在?00ns到?00ns。
   指两个连续的PCR之间最大的间隔时间,DVB的默认值是40ms,MEPG-2的默认值是100ms。PCR的精度和间隔的设置会直接影响TR 101-290第二优先级中对PCR的监测,因此必须严格遵循TR 101-290的标准,不要随意修改这两项设置。
TA的最新馆藏[转]&[转]&[转]&[转]&[转]&[转]&503 Service Temporarily Unavailable
503 Service Temporarily Unavailable
openresty/1.9.7.4后使用快捷导航没有帐号?
查看: 2842|回复: 6
请问连续计数错误出现的原因?(NIT,SDT等表在报错)
& && &如题,小弟的单位最近正在换设备,结果人家工程师一走,问题就出现了。有这么一个TS流,调制复用后,用码流仪进行测试,不停地出现连续计数错误,如图所示:
未命名.jpg (69.79 KB, 下载次数: 68)
15:46 上传
& & 结果我折腾了一周也没折腾出个结果,想问各位大侠,为什么会出现这样的错误?而且只是针对sdt,nit,eit,tot这四个表的?我的偏移量也没有问题啊!谢谢各位了
这些都是290里面的第三类的错误,非传输类的,查源头吧...
这些都是290里面的第三类的错误,非传输类的,查源头吧...
这不是一级错误吗?
源头怎么查呢?
这不是一级错误吗?
源头怎么查呢?
会不会过来的信号源本身有问题呢?
这不是一级错误吗?
源头怎么查呢?
嗯,连续计数错误是一类,我说的是右边的错误;连续计数不正确,表明当前传输流有丢包、包重叠、包顺序错现象,从前段一级及插,复用器-调制器,注意看设备的log
再补充一下:
丢包:1~15的PID循环计数,丢1个or数个
重叠:同一数据包出现2次或以上
顺序错:不解释了~
再补充一下:
丢包:1~15的PID循环计数,丢1个or数个
重叠:同一数据包出现2次或以上
哎,今天节目出来了,但是epg却不能播发出来了,真崩溃
扫码免费注册本站账号帐号:密码:下次自动登录{url:/nForum/slist.json?uid=guest&root=list-section}{url:/nForum/nlist.json?uid=guest&root=list-section}
贴数:21&分页:)(发信人: supliu (勇气猪|Pig Have Dream|), 信区: DOS
标&&题: 请问一个批处理for循环计数的问题
发信站: 水木社区 (Sat Jun&&9 14:05:41 2012), 站内 && 我想通过批处理对一个文件的某些行做一些修改,我从网上找了一个例子改了一下,结果发现用于记录行号的变量n不更新,经过一些测试我发现如果去掉endlocal的话,n就能正常更新了,但是程序也不能满足要求了。我折腾了很长时间了,还是搞不定,所以上来请大神帮帮忙,在此先谢过了! && 另外,根据网上说的,setlocal enabledelayedexpansion放在循环内是为了确保!能被正确处理。 &&&& @echo off
cd.&output.txt && for /f "delims=" %%i in ('findstr /n .* test.txt') do ( &&&&&&&& set "var=%%i" &&&&&&&& setlocal enabledelayedexpansion &&&&&&&& set /a n=!n!+1 &&&&&&&& echo.!n! &&&&&&&& set var=!var:*:=!
::&&&&&&if !n!=%n1% ...
::&&&&&&if !n!=%n2% ... &&&&&&&& (echo.!var!)&&output.txt &&&&&&&& endlocal
start output.txt&& -- && ※ 来源:·水木社区 ·[FROM: 123.120.22.*]
wincss发信人: wincss (wincss), 信区: DOS
标&&题: Re: 请问一个批处理for循环计数的问题
发信站: 水木社区 (Sat Jun&&9 14:59:01 2012), 站内 && setlocal和endlocal都挪出循环。。。。。 && 【 在 supliu (勇气猪|Pig Have Dream|) 的大作中提到: 】
: 我想通过批处理对一个文件的某些行做一些修改,我从网上找了一个例子改了一下,结果发现用于记录行号的变量n不更新,经过一些测试我发现如果去掉endlocal的话,n就能正常更新了,但是程序也不能满足要求了。我折腾了很长时间了,还是搞不定,所以上来请大神帮帮忙,在此
: 另外,根据网上说的,setlocal enabledelayedexpansion放在循环内是为了确保!能被正确处理。
: @echo off
: ...................
&& -- && ╋╋╋╋┻┻╋┻╋╋┻┻╋┻┻╋┻┻╋
┫┃┃┣┓┏┫&&┃┃┏━┫&&━┫&&━╋
┫&&&&┣┛┗┫┃&&┃┗━╋━&&┣━&&┣
╋┳┳╋┳┳╋╋┳╋┳┳╋┳┳╋┳┳╋ &&&& ※ 来源:·水木社区 newsmth.net·[FROM: 111.165.38.*]
)(发信人: supliu (勇气猪|Pig Have Dream|), 信区: DOS
标&&题: Re: 请问一个批处理for循环计数的问题
发信站: 水木社区 (Sat Jun&&9 15:40:50 2012), 站内 && 挪出去之后,像!这种特殊字符就会被丢掉吧
关键问题是,为什么!var!更新了,而!n!不更新呢?
【 在 wincss (wincss) 的大作中提到: 】
: setlocal和endlocal都挪出循环。。。。。
&& -- && ※ 来源:·水木社区 ·[FROM: 123.120.22.*]
wincss发信人: wincss (wincss), 信区: DOS
标&&题: Re: 请问一个批处理for循环计数的问题
发信站: 水木社区 (Sat Jun&&9 17:48:03 2012), 站内 &&&& 【 在 supliu (勇气猪|Pig Have Dream|) 的大作中提到: 】
: 挪出去之后,像!这种特殊字符就会被丢掉吧
你试了么。。。。。。
: 关键问题是,为什么!var!更新了,而!n!不更新呢?
&&&& -- && ╋╋╋╋┻┻╋┻╋╋┻┻╋┻┻╋┻┻╋
┫┃┃┣┓┏┫&&┃┃┏━┫&&━┫&&━╋
┫&&&&┣┛┗┫┃&&┃┗━╋━&&┣━&&┣
╋┳┳╋┳┳╋╋┳╋┳┳╋┳┳╋┳┳╋ &&&& ※ 来源:·水木社区 newsmth.net·[FROM: 111.165.38.*]
)(发信人: supliu (勇气猪|Pig Have Dream|), 信区: DOS
标&&题: Re: 请问一个批处理for循环计数的问题
发信站: 水木社区 (Sat Jun&&9 17:56:16 2012), 站内 && 当然,你也可以用下面的代码试一下,要在同一目录建立一个包含半角感叹号!的文本文件a.txt && @echo off
:: set n1=10
:: set n2=20 && cd.&output.txt
setlocal enabledelayedexpansion
for /f "delims=" %%i in ('findstr /n .* a.txt') do ( &&&&&&set "var=%%i" &&&&set /a n=!n!+1 &&&&echo.!n! &&&& &&&&set var=!var:*:=!
rem if !n!=%n1% ...
rem if !n!=%n2% ... &&&&(echo.!var!)&&output.txt
start output.txt&& pause
【 在 wincss (wincss) 的大作中提到: 】
: 你试了么。。。。。。
&& -- && ※ 来源:·水木社区 ·[FROM: 123.120.22.*]
wincss发信人: wincss (wincss), 信区: DOS
标&&题: Re: 请问一个批处理for循环计数的问题
发信站: 水木社区 (Sat Jun&&9 20:18:25 2012), 站内 && 你能先说说你到底写这个程序要干嘛么。。。。 && 【 在 supliu (勇气猪|Pig Have Dream|) 的大作中提到: 】
: 当然,你也可以用下面的代码试一下,要在同一目录建立一个包含半角感叹号!的文本文件a.txt
: @echo off
: ...................
&& -- && ╋╋╋╋┻┻╋┻╋╋┻┻╋┻┻╋┻┻╋
┫┃┃┣┓┏┫&&┃┃┏━┫&&━┫&&━╋
┫&&&&┣┛┗┫┃&&┃┗━╋━&&┣━&&┣
╋┳┳╋┳┳╋╋┳╋┳┳╋┳┳╋┳┳╋ &&&& ※ 来源:·水木社区 newsmth.net·[FROM: 111.165.38.*]
)(发信人: supliu (勇气猪|Pig Have Dream|), 信区: DOS
标&&题: Re: 请问一个批处理for循环计数的问题
发信站: 水木社区 (Sat Jun&&9 21:27:21 2012), 站内 && 呃,我好像一开始就说了吧,可能还是没说清楚,不好意思。 && 不管怎样,具体来说,我想对一个大约200行的源文件的第100行和第150行进行一些有规律的修改,从而生成大约100个新的文件,这些新文件将用作其他数值计算软件的输入文件。为了减少工作量同时避免出错,我打算采用批处理。 && 目前我写的这个批处理程序仅用于生成一个新文件。 && 由于源文件中有特殊字符!,所以看起来只能把setlocal enabledelayedexpansion放在循环内;同时,由于需要判断行号,似乎必须在循环内设置一个计数器。 && 考虑到前面帖子里提到的问题,我实在不知道该怎么解决,想过在循环内用Call调用循环外面的计数器,但仍然没有效果。 &&&&&& 【 在 wincss (wincss) 的大作中提到: 】
: 你能先说说你到底写这个程序要干嘛么。。。。
&& -- && ※ 来源:·水木社区 ·[FROM: 119.57.96.*]
Oh! I see you!发信人: oicu (Oh! I see you!), 信区: DOS
标&&题: Re: 请问一个批处理for循环计数的问题
发信站: 水木社区 (Sat Jun&&9 21:31:34 2012), 站内 && 用sed、awk吧。。。 && 【 在 supliu (勇气猪|Pig Have Dream|) 的大作中提到: 】
: 我想通过批处理对一个文件的某些行做一些修改,我从网上找了一个例子改了一下,结果发现用于记录行号的变量n不更新,经过一些测试我发现如果去掉endlocal的话,n就能正常更新了,但是程序也不能满足要求了。我折腾了很长时间了,还是搞不定,所以上来请大神帮帮忙,在此
: 另外,根据网上说的,setlocal enabledelayedexpansion放在循环内是为了确保!能被正确处理。
: @echo off
: ...................
&& -- && ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁&& && ▏MM Hunter.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& × ▏ && ▏︹--+--︹&&Loading:19%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&▏ && ▏/\&&|&&/\&&▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁&&▁▁▁▁&& ▏ && ▏︺ _|_ ︺▕███&&&&搜寻ppmm中...&&&&&& ▏▏Stop&&▏ ▏ && ▏&&&&&&&&&& ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔&&▔▔▔▔&& ▏ &&&& ※ 来源:·水木社区 newsmth.net·[FROM: 182.148.111.*]
)(发信人: supliu (勇气猪|Pig Have Dream|), 信区: DOS
标&&题: Re: 请问一个批处理for循环计数的问题
发信站: 水木社区 (Sat Jun&&9 21:37:02 2012), 站内 && 呃,这些学起来快吗,或者哪一个学起来更快一些?最近需要进行大量工况的计算,可现在却困在了第一步。。。
另外,这个问题没搞明白总觉得不甘心。。。
【 在 oicu (Oh! I see you!) 的大作中提到: 】
: 用sed、awk吧。。。
&& -- && ※ 来源:·水木社区 ·[FROM: 119.57.96.*]
wincss发信人: wincss (wincss), 信区: DOS
标&&题: Re: 请问一个批处理for循环计数的问题
发信站: 水木社区 (Sat Jun&&9 21:41:23 2012), 站内 &&&& 我就说“有规律的修改”是啥。。。 && 我反正看,你把setlocal放在外面,echo !n!显示的内容符合我的预期 && 不知道你所谓“不行”到底是哪不行,从头到尾语焉不详,你就是不想让人解决 && 【 在 supliu (勇气猪|Pig Have Dream|) 的大作中提到: 】
: 呃,我好像一开始就说了吧,可能还是没说清楚,不好意思。
: 不管怎样,具体来说,我想对一个大约200行的源文件的第100行和第150行进行一些有规律的修改,从而生成大约100个新的文件,这些新文件将用作其他数值计算软件的输入文件。为了减少工作量同时避免出错,我打算采用批处理。
: 目前我写的这个批处理程序仅用于生成一个新文件。
: ...................
&& -- && ╋╋╋╋┻┻╋┻╋╋┻┻╋┻┻╋┻┻╋
┫┃┃┣┓┏┫&&┃┃┏━┫&&━┫&&━╋
┫&&&&┣┛┗┫┃&&┃┗━╋━&&┣━&&┣
╋┳┳╋┳┳╋╋┳╋┳┳╋┳┳╋┳┳╋ &&&& ※ 来源:·水木社区 newsmth.net·[FROM: 111.165.38.*]
文章数:21&分页:欢迎来到千里马论文发表网
当前位置: >
基于CPCI的有线数字电视信号监测系统
发布时间: 11:18
千里马论文网:/wx/dsdy/31322.html
  [摘要]文章针对有线数字信号的传输特点,应用cpci架构技术搭建有线数字电视信号传输的质量监测系统,以解决在pci架构的监测系统遇到的难以克服的问题,更好地提升系统性能。文中着重阐述构成监测系统的各个模块的功能和具体的实现。详细介绍无视频、无音频、图像静止、黑场、彩条等异态视音频的判别方法。   [关键词] cpci;嵌入式;音视频监测;ts流;编码解码;powerpc;fpga
  一、引言   随着全国各地广播电视有线网络数字化整体平台的转换,有线数字电视信号已进入千家万户,如何保障节目信号的安全传输,是广电网络传输部门和广电监管部门必须要考虑的事情,建立一套运行稳定、及时准确、高效率的监测系统势在必行。    目前,我国在对广播电视信号监测方面还广泛采用的是pci架构的通用工控机与windows操作系统以及测量板卡组建的专用监测系统,这样的系统存在如下问题:    1.windows操作系统的安全漏洞、内存溢出等问题。    2.通用硬件的稳定性、可靠性不能够满足长期全天候运行。    3.系统硬盘长时间工作反复读写对硬盘的机械磨损容易损坏磁盘。    4.ipc机的硬件和软件冗余使系统效率低、可靠性差、功耗大。    5.ipc机内的功能板卡不支持热插拔,维护时,必须要关机。    为解决pci架构存在的缺陷,当前的发展趋势是采用cpci架构研究方向发展。    采用标准的cpci架构,具有如下优点:    1.cpci开放的总线技术,有利于各类系统集成,可以随时增加具有不同功能的板卡放入一套机箱。    2.抛弃ipc传统机械结构,改用可靠的欧洲卡结构,改善了散热条件,提高了抗振动冲击能力,符合电磁兼容性要求。    3.灵活的连接方式,2mm密度的针孔连接器,具有气密性、防腐性、可靠性、高负载能力。    4.高效的热插拔技术,在系统运行没有断电的情况下,插拔功能模块板,而不破坏系统的正常运行。    cpci所具有高开放性、高可靠性、可热插拔的特点,使该技术除了可以广泛应用在通讯、网络、计算机、电话整合,也适合实时系统控制、产业自动化、实时数据采集、军事系统等需要高速运算、交通、航空航天、医疗器械、等模块化及高可靠度、可长期使用的应用领域。由于cpci拥有较高的带宽,它也适用于一些高速数据的应用,包括服务器、路由器、交换机等。    现在超大规模的集成电路飞速发展,嵌入式计算机的应用领域越来越广泛,构建基于cpci嵌入式系统具有体积小、结构紧凑、可靠性高的优点。    嵌入式系统采用模块化的设计思想,根据有线数字电视信号监测系统功能及其应用环境的特定要求,制作各种特定功能的板卡,安装在机箱内,通过cpci总线与主板相连,完成系统功能。      二、广电有线数字电视传输信号特点       目前我国数字有线电视系统采用dvb-c标准。在前端编码器将各种设备输出的视音频信号按照mpeg-2的编码标准,对a/d输出信号进行压缩编码,送入复用器完成多套节目的复用,通过qam调制,形成ts流或ps流 。在一个8mhz电视频道内传输多套(目前国内采用qam64调制方式,最多包含8套)数字电视节目。    ts流中业务信息具有特殊重要作用,它关系到嵌入式监测系统的频道调谐、节目选择和定位、电子节目指南、解码。      三、系统技术原理       (一)原理框架图(图1)    (二)功能模块原理分析    本方案由四部分组成,分别是:有线数字信号接口模块、码流分析模块、解码模块、编码模块。    1.有线数字信号接口模块    该模块主要由调谐器(tuner)和cam卡及各种内部总线组成。    基本原理:调谐器接收射频信号并下行变频为中频信号,接收的射频信号的频率是码流分析模块控制设定要接收的频率。码流分析模块中的cpu(powerpc)通过外部总线与flash、sdram相连,从flash中读取应用程序指令,如给调谐器设置频率指令,然后从sdram读取所需的数据,如频率参数,通过i2c总线控制调谐器。调谐器输出的中频信号,通过qam解调成ts流,送入cam卡专用芯片,得到解ca的ts流。cam卡芯片通过pci总线与码流分析模块的powerpc处理器连接。    解ca的ts流通过并行数据总线输入到解码模块的8块解码芯片,完成一个频点的8套节目pes流的分离。    2.码流分析模块    该模块主要由cpu、fpga、flash、sdram及各种内部总线组成。    fpga(field-programmable gate array),即现场可编程门阵列。它是作为专用集成电路(asic)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。fpga的基本特点:    (1)采用fpga设计asic电路(专用集成电路),用户不需要投片生产,就能得到合用的芯片。 (2)fpga可做其他全定制或半定制asic电路的中试样片。    (3)fpga内部有丰富的触发器和i/o引脚。    (4)fpga是asic电路中设计周期最短、开发费用最低、风险最小的器件之一。    (5) fpga采用高速cmos工艺,功耗低,可以与cmos、ttl电平兼容。    可以说,fpga芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。    码流分析模块的主要任务:    (1)通过执行应用程序给调谐器设置频率,并读取调谐器的数据有:翻转状态、该频点的电平值、qam类型、符号率、制式等。    (2)读出cam卡的模式(有无)。 cam卡座可以同时插2块cam卡,码流分析模块可以读出cam卡的使用数量及卡的位置。    (3)调谐器输出的一路ts流进入fpga,为了精确分析码流必须打上100mhz的计数时钟,得到ts流的pid包间隔,使pcr(解码时钟基准)的抖动消除、延时得到修正。    (4)码流分析是此模块最主要的任务。在mpeg-2的ts流中,可以包含多个节目,每个节目又可以包含多个基本码流,基本码流和其他的控制数据等都被打成固定长度的包,每个包都有一个包识别符(pid)。mpeg-2用节目特定信息(psi)来传送节目和pid之间的相互关系。psi必须以一定的频率不断发送。psi使用4个表来定义码流结构,分别是:节目关联表pat、节目映射表pmt、网络信息表nit、条件接收表cat。在监测方面, pat和pmt表特别重要。pat表的pid号为“0x00”,它包含了与多路节目复用有关的控制信息,用于指出ts流中包括哪些节目,每个节目的编号及相应的pmt的位置pid=0xxxxx,同时还提供网络信息表(nit)的位置。pat丢失将导致接收端无法解码ts流的任何节目。pmt完整地描述了一路节目是由哪些pes组成的及它们的pid号,如:某一路视频pes、音频pes、pcr的pes。pat和pmt在传输过程中是不加密的。对ts流的分析可作如下简述:首先从ts流中找到188b,包头占4b,包头中的同步字节为0x47的ts包,再从此包中找出pid=0x00的pat表,pat含有每套节目相对应的pmt的pid,查找到对应的一套pmt里的视频pid、音频pid、pcr的pid ,最后可以分析出对应视频流的基本数据:aspect、size、frate、brate等;音频流的基本数据:layer、brate、freq。
   (5)码流监测方面:根据etsi rt 101/290标准 通过执行应用程序读取ts流里的信息作出监测。一级错误有:ts流同步是否丢失;pat表格是否错误;连续计数是否错误;pmt表格错误;pid是否错误。二级错误有:ts流传输错误;pcr错误;crc错误;pcr错误;cat表错误。三级错误有:nit;eit; tdt; sdt; rst;服务信息si重复周期。    3.解码模块    该模块选用了8块解码芯片,属于硬件解压缩。支持解码全高清/标清mpeg-2、h.264 、avs等多种视频格式。    选择解码芯片的型号时,要考虑支持多种解码格式如:高清、标清等。虽然有的解码芯片能同时解多套节目,但为了长时间大负荷的稳定运行,还是选择1块芯片解1套节目的方式为好。    有线数字电视信号在传输时,1个频点(8mhz)最多含有8套节目,为了同时解出1个频道里的节目,在模块里设计了8块解码芯片,进行节目的一对一解码。    原理:有线数字电视信号模块输出的解ca的ts流,通过并行数据总线输入到解码模块里的8块解码芯片。此频点的ts流已在码流分析模块分析出了每套节目的视频、音频、pcr的pid,并通过程序自动对解码模块的每块解码芯片单独配置1套节目的视频、音频、pcr的pid,即可分别解出该套节目的视频、音频数字信号,并设定输出格式为itu-r bt.656视频信号和i2s格式音频信号,用于后续编码模块进一步处理。    4.编码模块    该模块是整个系统最重要的部分。对数字电视信号的质量监测,全靠这一部分完成。信号质量异态的判别有:无视频、无音频、黑场、彩条、图像静止。    芯片部分有:cpu、fpga、vw2010编码芯片、flash、sdram、pci桥芯片。    工作原理:解码模块输出的itu-r bt.656格式的视频信号和i2s格式的音频信号,输入到编码模块的fpga芯片进行无视频、无音频、黑场、彩条判断之后分别进入8块编码芯片,分别将视频编码(压缩)为mpeg-1、-2、-4、h.263视频格式,音频部分可接收双通道分立i2s格式的数据,经过滤波,可将每路音频转换为mpeg-1、-2、-3、aac、ac-3音频格式。在编码的过程中可作图像静止判断。编码后输出为网络应用的传输流(ts)或为储存应用的节目流(ps)。cpu将压缩(编码)后的音视频数据以文件的形式经过网络作存储或作实时播放。    这部分编码的特点是:属于硬件编码;一对一编码;编码的码率可调,范围可在128kbps到6mbps。    以下是对黑场、彩条、无视频(蓝场)、无音频、图像静止判断的原理介绍:    (1)用fpga判断黑场的原理    视频信号输入到fpga中,fpga对输入的704×576个点的yuv进行扫描,黑点的yuv特征是y值较小,uv值都是127,当此点的yuv值与黑点的yuv差值在一定范围内(范围可以设定),就可以认为此点是黑点,这样扫描一遍后,可以获得黑点数的百分比,如果大于设定的阀值,就判断为黑场。    (2)用fpga判断彩条的原理    视频信号输入到fpga中,fpga对输入的704×576个点的yuv进行分区域判断,按照彩条的特性依次划分为白、黄、靛、绿、紫、红、蓝、黑八个区域,当获得一个点后,先判断属于那个颜色的区域,然后根据此点yuv值跟这个区域对应颜色的yuv进行比较,当此点的yuv值与这个区域的yuv差值在一定范围内(范围可以设定),就可以认为此点符合此区域颜色,这样对704×576个点判断结束后,可以获得各个区域对应的点数,如果各个区域的符合条件的点数都大于设定的阀值,就认为当前是彩条。    (3)用fpga判断蓝场(无视频)的原理    判断蓝场与黑场的原理相似,视频信号输入到fpga中,fpga对输入的704×576个点阵的yuv进行扫描,所获得的值与蓝点的yuv差值在一定范围内(范围可以设定),就可以认为此点是蓝点,这样对704×576个点全部判断结束后,可以获得总共的蓝点数,如果黑点数大于设定的阀值,就报蓝场。    (4)用fpga判断无音频的原理    音频信号输入到fpga中,fpga对音频信号进行采样,每秒钟获得一个最大值,上位机应用程序获得这个值后与设定的阀值比较,当此音量值连续n秒小于设定的阀值时,就认为当前处于无音频状态。    (5)判断图形静止的原理    图像静止是指在电视节目正常播出过程中出现的图像静止不动的现象。解码芯片在编码时,对画面像素作了特征统计,进行了dct矩形变换块为变换编码单元,对dct块内图像的亮度和色度进行特征取样,提取像素,采用帧间编码,运动估算技术,在参考帧内dct编码的基础上,对dct块内图像的像素特征进行差值预测编码。上位机应用程序调用解码芯片对块的比较运算结果,通过设定阀值来判断图像静止。      四、结语       本系统基于cpci架构搭建起来,具有热插拔功能,给维护和调试带来极大的便利,比pci架构更具备高可靠、高稳定性。系统功能扩展方便快捷,只要开发不同的监测功能的模块,就可做到多个监测(如:有线电视、开路电视、广播等)系统融入一体,从而做成标准化的监测系统,具有很高的推广价值。      [参考文献]   [1]刘修文.数字电视有线传输原理与维修[m].北京:机械工业出版社,2007.   [2]苏志武,林定祥,文章辉.数字电视系统测量与监测[m].北京:电子工业出版社,2009.   [3]黎洪松 .数字视频处理[m].北京:北京邮电大学出版社,2006.   [4]刘剑波,李鉴增,王晖,关亚林,牛亚青.有线电视网络[m].北京:中国广播电视出版社,2003.   [5]俞建新,王健,宋健建.嵌入式系统基础教程[m].北京:机械工业出版社,2008.   [6]方尔正,王燕.嵌入式技术及其应用[m].哈尔滨:哈尔滨工业大学出版社,2008.
文学最热期刊
免责声明:本网站部分资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有
如有不愿意被转载的情况,请通知我们删除已转载的信息
鄂ICP备号-1

我要回帖

更多关于 win我的电脑图标没了 的文章

 

随机推荐