再现设备和解码控制方法

文档序号:7628789阅读:126来源:国知局
专利名称:再现设备和解码控制方法
技术领域
本发明与一种再现压缩编码的数据的再现设备和适用于这种再现设备的解码控制方法有关。
背景技术
近年来,业已开发了一种通过网络将诸如数字压缩编码的音频/视频(AV)的数据流从服务器发送给客户机的系统。在这种系统中,通过网络例如将诸如广播数据之类的实时数据流从服务器发送给客户机。
此外,近来又需要通过网络不仅可以将诸如广播数据之类的实时数据流而且还可以将可以任意速率从存储媒体读出的非实时数据流从服务器发送给客户机的技术。
日本专利申请公报No.2003-134468揭示了一种数字信号处理设备,可以对从调谐器输出的传送流和从存储媒体读出的节目流解码。在这种数字信号处理设备中,在需对传送流解码时,解码处理与根据包含在传送流内的节目时钟基准(PCR)调整的时钟同步地执行。另一方面,在需对节目流解码时,解码处理与另一个稳定的时钟同步地执行。
然而,在日本专利申请公报No.2003-134468所揭示的数字信号处理设备中,时钟控制方法是按照传送流/节目流的类型改变的。这种设备不适用于从调谐器输出的数据流和从存储媒体读出的数据流都是传送流的情况。
例如,在由传送流组成的广播节目数据是记录在存储媒体上的情况下,从存储媒体读出的数据流也就成为一个传送流。
此外,日本专利申请公报No.2003-134468揭示的数字信号处理设备设计成对来自配置在数字信号处理设备内的调谐器和存储媒体的数据流解码,而没有考虑对从一个服务器通过网络发送的传送流/节目流解码的情况。
在数据流通过网络发送的系统中,发送数据流的发送设备侧的时钟与对数据流解码的接收设备侧的时钟是相互独立的。因此必需执行使接收设备侧的时钟与发送设备侧的时钟同步的时钟控制处理。然而,实际上很难使用利用以上所提到的节目时钟基准(PCR)的时钟调整。原因是在通过网络进行数据传输的情况下,延迟起伏导致使得一些各包括PCR的分组之间延迟时间不等的PCR抖动。
因此,在通过网络发送数据流的系统内,必须执行按照配置在发送设备内的缓存器的填充度(即数据填充程度)调整接收设备侧的时钟的时钟控制处理。如果缓存器的填充度大于预定程度,就要提高接收侧的时钟频率。另一方面,如果缓存器的填充度低于预定程度,就要降低接收侧的时钟频率。
如果不执行这种时钟控制处理,诸如广播数据之类的实时数据流的视频/音频由于在发送设备侧的数据发送速率与接收设备侧的解码速率之间出现误差而不能正常地被接收设备解码和再现。
例如,如果发送侧时钟与接收侧时钟之间的误差为在MPEG(运动图像专家组)内所规定的容限30ppm(百万分之几分),那么在1000秒(16分钟)内就要出现一个帧(30毫秒)的视频误差和音频误差。
另一方面,如果始终执行这样的时钟控制处理,就会无法正常再现从存储媒体读出的AV内容。
也就是说,由于所有组成AV内容的数据事先就存在于存储媒体内,因此只要接收侧缓冲器内有空闲区域,数据就会以比AV内容的正常传输速率高的传输速率从发送侧传输给接收侧。结果,接收侧缓冲器始终存储数据量超过预定程度的数据。在这种情况下,接收侧的时钟频率升高,接收侧时钟被控制成以可能的振荡频率范围内的最大频率振荡。因此,AV内容以很高的速率再现。

发明内容
本发明的目的是提供一种再现设备和解码控制方法,可以正确再现通过网络传输的实时数据流和非实时数据流。
按照本发明的一个实施例,提供了一种再现包括压缩编码数据的数据流的再现设备,这种再现设备包括一个请求发送单元,用来通过网络向服务器发送指示传送数据流的请求;一个接收单元,用来接收从服务器通过网络传送的数据流;一个缓存器,用来存储所接收的数据流;一个执行解码处理的解码器,用来从缓存器读出所接收的数据流和对所接收的数据流解码;一个时钟产生器,用来产生确定解码处理的速度的时钟信号;一个确定单元,用来确定所接收的数据流是一个从服务器以与所接收的数据流相应的传输速率实时发送的实时数据流,还是一个存储在服务器的存储媒体内的可以从服务器以比与所接收的数据流相应的传输速率高的速率发送的非实时数据流;以及一个时钟控制单元,用来在所接收的数据流为实时数据流时执行按照缓存器的填充度改变时钟信号的频率的处理,而在所接收的数据流为非实时数据流时执行将时钟信号的频率设置在一个固定值的处理。


作为本说明书的一个组成部分的这些附图例示了本发明的一些实施例,与以上给出的一般说明和下面给出的对这些实施例的详细说明一起用来说明本发明的原理。
图1为示出按照本发明的一个实施例设计的再现设备的系统配置的第一个实例的方框图;图2为示出配置在图1所示的再现设备内的网络客户机处理单元的结构的一个实例的方框图;图3为示出配置在图1所示的再现设备内的MPEG解码器的结构的一个实例的方框图;图4为示出配置在图1所示的再现设备内的振荡频率控制电压产生器的结构的一个实例的方框图;
图5为示出配置在图1所示的再现设备内的时钟产生器的结构的一个实例的方框图;图6为示出应用于图1所示再现设备的时钟控制处理的流程的第一个实例的流程图;图7为示出应用于图1所示再现设备的时钟控制处理的流程的第二个实例的流程图;图8示出了图1所示的再现设备接收的IP分组的数据结构的一个实例;图9为示出按照本发明的实施例设计的再现设备的系统配置的第二个实例的方框图;图10为示出配置在图9所示的再现设备内的TS再现处理单元的结构的一个实例的方框图;图11为示出配置在图9所示的再现设备内的MPEG解码器的结构的一个实例的方框图;图12为示出应用于图9所示的再现设备的时钟控制处理的流程的第三个实例的流程图;图13为示出按照本发明的实施例设计的再现设备的系统配置的第三个实例的方框图;以及图14为示出应用于图13所示的再现设备的时钟控制处理的流程的第四个实例的流程图。
具体实施例方式
下面将结合附图对按照本发明所设计的一些实施例进行说明。
图1示出了按照本发明的一个实施例设计的再现设备的配置。这个再现设备实现为一个可以与网络服务器11通信的网络客户机21。网络服务器11和网络客户机21接到一个诸如家庭LAN(局域网)之类的网络10上。网络服务器11起着一个家庭网络系统的服务器的作用。网络客户机21起着一个家庭网络系统的客户机终端的作用。
网络服务器11如图1所示包括广播接收单元12、存储媒体13和网络服务器处理单元14。广播接收单元12是一个接收诸如TV节目之类的广播节目数据的接收设备。广播接收单元12接收诸如地面数字广播信号之类的数字广播信号,从数字广播信号中提取与任意频道的广播节目数据相应的传送流(TS)。传送流包括压缩编码的广播节目数据。构成传送流的TS分组从广播接收单元12按与广播电台发送的定时相同的定时实时发送给网络服务器处理单元14。也就是说,广播接收部12输出的传送流是一个以与传送流的再现速率(帧速率)相应的传输速率通过网络10实时传送给网络客户机21的实时数据流。
存储媒体13是一个存储压缩编码的AV内容的存储设备。存储媒体13例如由一个硬盘驱动器(HDD)或DVD(数字多功能光盘)驱动器组成。广播接收单元12接收到的广播节目数据可以记录在存储媒体内。存储在存储媒体13内的AV内容的数据流是可以以任意速率从存储媒体13读出的非实时数据流,无论与AV内容数据流的再现速率相应的正常传输速率是多少。如果从网络客户机21接收到一个请求,存储在存储媒体13内的AV内容数据流就以比AV内容的正常传输速率高的速率通过网络10发送给网络客户机21。
网络服务器处理单元14起着例如一个HTTP(超文本传送协议)服务器的作用。根据网络客户机21的请求,网络服务器处理单元14将广播接收单元12接收的当前广播内容或存储在存储媒体13内的内容通过网络10传送给网络客户机21。
通过网络客户机21的请求,要求以一定的数据量为单位来传送需再现内容的数据流。在请求传送当前广播内容的情况下,每当网络服务器处理单元14从广播接收单元12接收到一个TS分组,网络服务器处理单元14就将所接收的这个TS分组传送给网络10。因此,每个TS分组以与广播电台发送定时相同的定时实时发送给网络10。这个发送处理反复进行,例如直到所有发送的TS分组的总数据量成为等于所请求的数据量。
另一方面,在所请求的是存储在存储媒体13内的内容时,网络服务器处理单元14从存储媒体13读出所请求的内容的数据流(传送流TS或节目流PS)。例如,作为节目流可用视频记录格式(VR格式)。由于组成所请求的内容的数据流的所有分组(TS分组或PS分组)都已经录在存储媒体13内,因此所请求数据量的分组立刻读出到网络服务器处理单元14。网络服务器处理单元14相继将读出的这些分组通过网络10传送给网络客户机21。因此,组成请求传送的数据流的这些分组立刻传送给网络客户机21,而不考虑数据流每个分组的再现定时。
通过网络10发送的每个分组都是IP分组。因此,每个TS/PS分组都要变换为IP分组。TS/PS分组存储在IP分组的净荷部分内。
在下面的说明中,假设从存储媒体13读出的数据流是传送流。
网络客户机21是一个再现包括压缩编码的AV数据的设备。网络客户机21包括系统控制单元22、网络客户机处理单元23、MPEG(活动图像专家组)解码器(#1)24、振荡频率控制电压产生器25、振荡频率控制开关27和时钟产生器26。
系统控制单元22控制网络客户机21的操作。系统控制单元22包括确定单元221和时钟控制单元222。确定单元221的功能是确定网络服务器11传送的数据流是诸如广播数据之类的实时数据流还是从网络服务器11的存储媒体13读出的非实时数据流。时钟控制单元222的功能是根据有关实时数据流/非实时数据流的确定结果切换控制时钟产生器26的方法。
网络客户机处理单元23通过网络10与网络服务器11进行通信。网络服务器11传送的数据流由网络客户机处理单元23接收。MPEG解码器(#1)24对网络客户机处理单元23接收到的数据流解码。MPEG解码器(#1)24包括一个暂时存储接收到的数据流的缓存器(BUFF)和一个从缓存器(BUFF)读出数据流和对数据流解码的解码处理单元。
振荡频率控制电压产生器25按照MPEG解码器(#1)24内的缓存器(BUFF)的填充度产生要加到时钟产生器26上的振荡频率控制电压。缓存器的填充度例如由系统控制单元22检测。缓存器的填充度是一个指示缓存器被所接收的数据流填充的程度的值。缓存器填充度可以用指示缓存器填充的比例的相对值或者指示缓存器内剩下的可用容量的绝对值表示。也可以用指示存储在缓存器内的数据量的绝对值作为填充度。
如果缓存器的填充度超过一个基准值,振荡频率控制电压产生器25输出的振荡频率控制电压的值就会升高。相反,如果缓存器的填充度低于这个基准值,振荡频率控制电压产生器25输出的振荡频率控制电压的值就会降低。
在系统控制单元22的时钟控制单元222的控制下,振荡频率控制开关27在振荡频率控制电压产生器25的输出电压和一个固定值之间切换加到时钟产生器26上的振荡频率控制电压。时钟产生器26产生一个确定MPEG解码器(#1)24的解码操作的速度的时钟信号。时钟产生器26是用一个压控晶体振荡器(VCXO)构成的。时钟产生器26的振荡频率按照输入到时钟产生器26的振荡频率控制电压改变。随着振荡频率控制电压的增大,时钟产生器26的振荡频率升高,从而时钟信号的频率升高。
在所接收的数据流是一个来自广播接收单元12的实时数据流的情况下,振荡频率控制开关27在系统控制单元22的时钟控制单元222的控制下选择振荡频率控制电压产生器25的输出电压。因此,来自时钟产生器26的时钟信号的频率按照缓存器(BUFF)当前填充度调整,使得缓存器的填充度保持在一个预定范围内。因此,可以实现在来自网络服务器11的实时数据流的发送定时与MPEG解码器(#)24的解码操作定时之间的同步。
另一方面,在所接收的数据流是一个来自存储媒体13的非实时数据流的情况下,振荡频率控制开关27在系统控制单元22的时钟控制单元222的控制下选择一个固定值。因此,来自时钟产生器26的时钟信号的频率保持在一个固定值,而不考虑缓存器(BUFF)的填充度。即使缓存器(BUFF)的填充度超过基准值,时钟信号的频率也不提高,这样就可以避免出现MPEG解码器(#1)24的解码操作速度升高的问题。
如上所述,在本实施例中,时钟控制方法是按照通过网络10传送的数据流是诸如从服务器11以与数据流相应的传输速率实时发送的诸如当前广播的节目数据之类的实时数据流还是存储在存储媒体内的可以从服务器11以比数据流的传输速率高的传输速率发送的非实时数据流而自动改变的。因此,无论是实时数据流还是非实时数据流都可以正确再现。
图2示出了网络客户机处理单元23的结构的一个实例。
网络客户机处理单元23包括接收单元231、接收缓存器232和请求发送单元233。接收单元231从网络10接收IP分组。在这种情况下,接收单元231对所接收的IP分组的头标进行分析,判定所接收的IP分组是否为一个包括作为传送目的地地址的指配给本网络客户机21的IP地址的IP分组。如果所接收的IP分组为包括作为传送目的地地址的指配给本网络客户机21的IP地址的IP分组,接收单元231就将一个包含在IP分组的净荷部分内的TS分组存储在接收缓存器232内。请求发送单元233通过网络10将一个指示传送要再现的数据的请求发送给网络服务器11。这个请求包括指定要再现的数据内容的标题的信息和指定传送数据量的信息。该请求例如在接收缓存器232具有预定的可用剩余容量时发送。
图3示出了MPEG解码器(#1)24的结构的一个实例。
MPEG解码器(#1)24包括缓存器读出单元241、分用器(TSDemux)242、视频缓存器243、视频解码器244、音频缓存器245和音频解码器246。
缓存器读出单元241从网络客户机处理单元23的接收缓存器232读出传送流,将它传送给分用器(TS Demux)242。从接收缓存器232读出传送流例如在音频缓存器245和音频解码器246都具有预定的可用剩余容量时执行。
分用器(TS Demux)242执行将传送流分离成视频数据(视频数据流)和音频数据(音频数据流)的处理。这个分离处理例如以TS分组为单位执行。视频数据存储在视频缓存器243内,而音频数据存储在音频缓存器245内。
视频解码器244从视频缓存器243读出视频数据,对它解码。视频解码器244接收视频时钟作为前面提到的时钟信号,与视频时钟同步地执行视频数据解码处理。视频解码器244包括一个与视频时钟同步执行计数操作的STC(系统时钟)计数器247。视频解码器244的解码处理的定时由STC计数器247的计数值控制。
音频解码器246从音频缓存器245读出音频数据,对它解码。音频解码器246接收音频时钟作为前面提到的时钟信号,与音频时钟同步地执行音频数据解码处理。音频解码器246包括一个与音频时钟同步执行计数操作的STC(系统时钟)计数器248。音频解码器246的解码处理的定时由STC计数器248的计数值控制。
在图3所示的MPEG解码器(#1)24内,视频缓存器243和音频缓存器245起着暂时存储从网络10接收到的传送流的缓存器的作用。在视频缓存器243和音频缓存器245的这个实施例中,音频缓存器245用作前面提到的缓存器(BUFF)。音频缓存器245的填充度的变化用于时钟控制处理。
由于视频数据是用可变速率编码压缩编码的,因此视频数据的数据量例如对于不同的场景是不同的。结果,在MPEG解码器(#1)24对实时数据流解码的情况下,视频缓存器243的填充度不仅由于时钟误差而且由于要再现的场景而改变。另一方面,由于音频数据是用固定比特速率编码压缩编码的,音频缓存器245的填充度只取决于时钟误差。因此,通过将音频缓存器245的填充度用于时钟控制处理,可以更为精确地调整确定解码处理速度的时钟信号的频率。
图4示出了振荡频率控制电压产生器25的结构的一个实例。
振荡频率控制电压产生器25包括比较器251和环路滤波器252。比较器251将音频缓存器245的填充度与一个基准值相比较,输出与填充度与基准值之差相应的电压。例如,可以将指示音频缓存器245的可用剩余容量的值作为音频缓存器245的填充度。环路滤波器252起着低通滤波器的作用,将比较器251的输出平滑后产生振荡频率控制电压。
图5示出了时钟产生器26的结构的一个实例。
时钟产生器26包括压控晶体振荡器(VCXO)261和PLL(锁相环)电路262。压控晶体振荡器(VCXO)261是一个在27MHz振荡的晶体振荡器,产生27MHz的时钟信号作为视频时钟。PLL电路262根据27MHz时钟信号产生音频时钟。音频时钟的频率例如为音频数据的采样频率的32倍左右。
下面,结合图6这个流程图来说明由系统控制单元22执行的时钟控制处理的流程的第一个实例。
如果开始接收一个传送流,系统控制单元22首先执行对视频解码器244的STC计数器247和音频解码器246的STC计数器248的初始化(步骤S101)。在步骤S101,系统控制单元22执行以下处理,以便在视频缓存器243和音频缓存器245内存储了一定数据量的数据的状态下启动解码处理。
系统控制单元22从存储在视频缓存器243和音频缓存器245内的视频数据流和音频数据流各提取一个PTS(显现时标)。PTS为用于同步再现视频数据和音频数据的时间信息。包含在视频数据流内的PTS表示视频数据再现的显现时间,而包含在音频数据流内的PTS表示音频数据再现的显现时间。
系统控制单元22在视频解码器244的STC计数器247内设置一个比从视频数据流提取的PTS的值小一个预置值的值,作为当前STC计数值。此外,系统控制单元22在音频解码器246的STC计数器248内设置一个比从音频数据流提取的PTS的值小一个预置值的值,作为当前STC计数值。
在进行STC计数器247的计数操作、而计数值成为等于存储在视频缓存器243内的视频数据的PTS时,视频解码器244对所关联的视频数据执行解码和再现。类似地,在进行STC计数器248的计数操作、而STC计数值成为等于存储在音频缓存器245内的音频数据的PTS时,音频解码器246对所关联的音频数据执行解码和再现。通过步骤S101的处理,解码处理可以在视频缓存器243和音频缓存器245内各存储了一定数据量的状态下启动。
随后,系统控制单元22的确定单元221监视音频缓存器245的填充度,例如音频缓存器245内的数据量(缓存器占用量),确定音频缓存器245在一段从开始接收传送流起的预定基准时间内是否被填满(步骤S102,S103)。基准时间的值按照音频缓存器245的缓存器容量确定。例如,在音频缓存器245的缓存器容量能存储与3秒的再现时间相应的音频数据的情况下,基准时间可以设置为1.5秒左右。
如果正在接收的数据流为一个诸如广播数据之类的实时数据流,至少需要3秒音频缓存器245才被填满。因此,音频缓存器245在基准时间内决不会被填满。
另一方面,如果所接收的数据流为一个从存储媒体13读出的非实时数据流,只要在音频缓存器245内剩有可用的区域,音频数据将接连写入音频缓存器245。因此,音频缓存器245在基准时间内会被填满。
如果音频缓存器245在基准时间内填满(步骤S103的确定结果为“是”),系统控制单元22的确定单元221就确定当前在接收的数据流为来自存储媒体13的非实时数据流。为了防止MPEG解码器(#1)24的解码操作速度不正常加快,系统控制单元22的时钟控制单元222通过振荡频率控制开关27选择固定值(步骤S104)。因此,将加到MPEG解码器(#)24上的时钟信号的频率保持在一个固定值。
如果音频缓存器245在基准时间内没有填满(步骤S103的确定结果为“否”),系统控制单元22的确定单元221就确定当前在接收的数据流为诸如广播数据之类的实时数据流。为了按照音频缓存器245的填充度调整时钟信号的频率,系统控制单元22的时钟控制单元222通过振荡频率控制开关27选择振荡频率控制电压产生器25的输出电压(步骤S105)。因此,使加到MPEG解码器(#)24上的时钟信号的频率相应于来自网络服务器11的实时数据流的传输速率。
或者,也可以不根据音频缓存器245是否实际填满而根据音频缓存器245在一段从开始接收数据流起的预定时间内的填充度是否超过一个基准值来鉴别在接收的数据流是一个非实时数据流还是一个实时数据流。
下面,结合图7这个流程图来说明由系统控制单元22执行的时钟控制处理的流程的第二个实例。
系统控制单元22与网络客户机处理单元23配合,对所接收的IP分组的头标部分进行分析,从所接收的IP分组提取一个标志(步骤S201)。该标志是指示包含在IP分组的净荷部分内的数据是一个诸如广播数据之类的实时数据流还是一个从存储媒体13读出的非实时数据流的标识信息。该标志由网络服务器11的网络服务器处理单元14插入每个IP分组。如图8所示,标志可以被记述在IP头标部分、HTTP头标部分或者一个配置在净荷部分内的保留区内。
根据该标志,系统控制单元22的确定单元221确定当前接收的数据流是一个诸如广播数据之类的实时数据流还是一个来自存储媒体13的非实时数据流(步骤S202)。
如果当前接收的数据流是来自存储媒体13的非实时数据流(步骤S203的确定结果为“否”),系统控制单元22的时钟控制单元222就通过振荡频率控制开关27选择固定值,以防止使NPEG解码器(#1)24的解码操作速度不正常加快(步骤S203)。因此,使加到MPEG解码器(#)24上的时钟信号的频率保持在固定值。
另一方面,如果当前接收的数据流是诸如广播数据之类的实时数据流(步骤S203的确定结果为“是”),系统控制单元22的时钟控制单元222就通过振荡频率控制开关27选择振荡频率控制电压产生器的输出电压,从而按照音频缓存器245的填充度调整时钟信号的频率(步骤S204)。因此,使加到MPEG解码器(#)24上的时钟信号的频率相应于来自网络服务器11的实时数据流的传输速率。
图9示出了网络客户机21的结构的第二实例。
在网络客户机21内,图1中所示的MPEG解码器(#1)24被替换为传送流(TS)再现处理单元31和MPEG解码器(#2)32。在传送流(TS)再现处理单元31内配置了一个缓存器,用作前面提到的缓存器(BUFF)。
具体地说,传送流(TS)再现处理单元31包括一个暂时存储所接收的传送流的缓存器(BUFF)和一个实时将存储在缓存器(BUFF)内的传送流从缓存器(BUFF)读给MPEG解码器(#2)32的读出单元。读出单元与时钟产生器26产生的时钟信号同步进行操作。MPEG解码器(#2)32配置成对传送流再现处理单元31实时发送的传送流解码。每当MPEG解码器(#2)32从传送流再现处理单元31接收到一个TS分组时,就对所接收的这个TS分组解码。因此,解码操作的速度由提供给传送流再现处理单元31的时钟信号的频率确定。
以上所说明的读出单元可以不配置在传送流再现处理单元31内而配置在MPEG解码器(#2)32内。
振荡频率控制电压产生器25按照传送流再现处理单元31内的缓存器(BUFF)的当前填充度产生振荡频率控制电压提供给时钟产生器26,使缓存器(BUFF)的填充度保持在一个预定的范围内。如果在再现处理单元31内的缓存器的填充度超过一个基准值,振荡频率控制电压产生器25输出的振荡频率控制电压的值就会升高。相反,如果在传送流再现处理单元31内的缓存器的填充度低于这个基准值,振荡频率控制电压产生器25输出的振荡频率控制电压的值就会降低。
图10示出了传送流再现处理单元31的结构的一个实例。
传送流再现处理单元31包括第一缓存器读出单元311、传送流缓存器(TS缓存器)312和第二缓存器读出单元313。
第一缓存器读出单元311执行读出处理,从配置在网络客户机处理单元23内的接收缓存器232读出TS分组,将所读出的TS分组存储在TS缓存器312内。这个读出处理在TS缓存器312内存在可用区域时执行。基本上,每当网络客户机处理单元23从网络10接收到一个TS分组时,所接收的这个TS分组就通过网络客户机处理单元23写入TS缓存器312。
TS缓存器312是一个暂时存储从网络10传来的传送流的缓存器,用作前面提到的缓存器(BUFF)。TS缓存器312的填充度发送给振荡频率控制电压产生器25。
第二缓存器读出单元313与时钟产生器26产生的时钟信号同步进行操作。第二缓存器读出单元313实时从TS缓存器312读出传送流,将它发送给MPEG解码器(#2)32。
具体地说,第二缓存器读出单元313按照时钟信号以预定的比特速率将存储在TS缓存器312内的传送流从TS缓存器312读给MPEG解码器(#2)32。这个比特速率等于要再现传送流的帧速率。因此,正从网络10接收的传送流无论是一个诸如广播数据实时数据流还是一个来自存储媒体13的非实时数据流,这个传送流基本上以等于传送流的再现速率(帧速率)的速率从TS缓存器312实时发送给MPEG解码器(#2)32。
如果组成从网络19接收到的传送流的这些TS分组中的每个分组都是一个带有时标的TS分组(TTS分组带有时标的传送流分组),第二缓存器读出单元313就按照存储在TS缓存器312内的每个TTS分组的时标确定每个TTS分组的读出定时。具体地说,第二缓存器读出单元313配有一个与时钟信号同步地执行计数操作的定时计数器314。第二缓存器读出单元313从TS缓存器312读出存储在TS缓存器312内的这些TTS分组中的时标值与定时计数器314的计数值一致的一个TTS分组的TS分组部分。因此,正从网络10接收的传送流无论是一个诸如广播数据实时数据流还是一个来自存储媒体13的非实时数据流,这个传送流以等于传送流的再现速率的速率从TS缓存器312实时发送给MPEG解码器(#2)32。
图11示出了MPEG解码器(#2)32的结构的一个实例。
MPEG解码器(#2)32包括分用器(TS Demux)321、视频缓存器322、视频解码器323、音频缓存器324、音频解码器325、比较器326、STC计数器328和时钟振荡器327。
分用器(TS Demux)321执行一个处理,将从TS再现处理单元31传来的传送流分离成视频数据(视频数据流)和音频数据(音频数据流)。这个分离处理例如以TS分组为单位执行。视频数据存储在视频缓存器322内,而音频数据存储在音频缓存器324内。此外,在分用器(TS Demux)321从传送流再现处理单元31接收到一个包括一个为时间基准信息的PCR(节目时钟基准)的TS分组时,分用器(TS Demux)321就从这个所接收的TS分组提取PCR。所提取的PCR发送给比较器326。
视频解码器323从视频缓存器322读出视频数据,对它解码。视频解码器323的解码处理与来自时钟振荡器327的27MHz的视频时钟同步地执行。音频解码器325从音频缓存器324读出音频数据,对它解码。音频解码器325的解码处理与来自时钟振荡器327的音频时钟同步地执行。
STC计数器328与来自时钟振荡器327的27MHz的时钟信号同步地执行计数操作。比较器326将STC计数器328的计数值与PCR的值相比较,根据比较结果控制时钟振荡器327的振荡频率,使得STC计数器328的计数值可以与PCR的值一致。
下面,结合图12这个流程图来说明由系统控制单元22执行的时钟控制处理的流程的第三实例。这个时钟控制处理与图9中所示的网络客户机21的结构相应。
系统控制单元22确定从网络10接收到的TS分组是否被附加有时标(步骤S301)。
如果从网络10接收到的TS分组附加有一个时标,也就是说如果所接收的TS分组是一个TTS分组(步骤S301的确定结果为“是”),系统控制单元22在第二缓存器读出单元313的定时计数器314内设置一个比TS分组的时标值小一个预置值的值,使得解码处理可以在TS缓存器312内存储了一定量的数据的状态下启动。
另一方面,如果从网络10接收到的TS分组没有附加时标,系统控制单元22就对第二缓存器读出单元313指示从TS缓存器312读出传送流的比特速率的值,并在TS缓存器312内存储了预定量的数据时对第二缓存器读出单元313指示开始读出传送流(步骤S303)。
随后,系统控制单元22的确定单元221监视TS缓存器312的填充度,例如TS缓存器312内的数据量(缓存器占用量),确定TS缓存器312在从开始接收传送流起的一段预定基准时间内是否被填满(步骤S304,S305)。该基准时间按照TS缓存器312的缓存器容量(大小)确定。
如果TS缓存器312在基准时间内被填满(步骤S305的确定结果为“是”),系统控制单元22的确定单元221就确定当前在接收的数据流为来自存储媒体13的非实时数据流。为了防止MPEG解码器(#2)32的解码操作速度不正常加快,系统控制单元22的时钟控制单元222通过振荡频率控制开关27选择固定值(步骤S306)。因此,使时钟信号的频率保持在一个固定值。
如果TS缓存器312在基准时间内没有被填满(步骤S305的确定结果为“否”),系统控制单元22的确定单元221就确定当前在接收的数据流为诸如广播数据之类的实时数据流。为了按照从网络服务器11的实时数据流发送定时调整时钟信号的频率,系统控制单元22的时钟控制单元222通过振荡频率控制开关27选择振荡频率控制电压产生器25的输出电压(步骤S307)。因此,使时钟信号的频率相应于从网络服务器11的实时数据流发送定时。
或者,也可以不根据TS缓存器312是否实际填满而根据TS缓存器312在从开始接收传送流起的一段预定时间内填充度是否超过一个基准值来确定在接收的数据流是一个非实时数据流还是一个实时数据流。
已结合图7的流程图说明的时钟控制处理的流程的第二实例可以用于图9中所示的网络客户机21。
图13示出了网络客户机21的结构的第三个实例。
在这个网络客户机21内,网络客户机处理单元23的接收缓存器232用作前面提到的缓存器(BUFF),而将接收缓存器232的填充度发送给振荡频率控制电压产生器25。在其他方面,网络客户机21的结构与图1中所示的相同。
下面,结合图14的流程图来说明由系统控制单元22执行的时钟控制处理的流程的第四个实例。这个时钟控制处理与图13中所示的网络客户机21的结构相应。
系统控制单元22的确定单元221监视配置在网络客户机处理单元23内的接收缓存器232的填充度,例如接收缓存器232内的数据量(缓存器占用量),确定接收缓存器312在从开始接收传送流起的一段预定基准时间内是否被填满(步骤S401,S402)。该基准时间的值按照接收缓存器232的缓存器容量(大小)确定。
如果接收缓存器232在基准时间内被填满(步骤S402的确定结果为“是”),系统控制单元22的确定单元221就确定当前在接收的数据流为来自存储媒体13的非实时数据流。为了防止MPEG解码器(#1)24的解码操作速度不正常加快,系统控制单元22的时钟控制单元222通过振荡频率控制开关27选择固定值(步骤S403)。因此,使时钟信号的频率保持在固定值。
如果接收缓存器232在基准时间内没有被填满(步骤S402的确定结果为“否”),系统控制单元22的确定单元221就确定当前在接收的数据流为诸如广播数据之类的实时数据流。为了按照从网络服务器11的实时数据流发送定时调整时钟信号的频率,系统控制单元22的时钟控制单元222通过振荡频率控制开关27选择振荡频率控制电压产生器25的输出电压(步骤S404)。因此,使时钟信号的频率相应于从网络服务器11的实时数据流发送定时。
或者,也可以不根据接收缓存器232是否实际填满而根据接收缓存器232在从开始接收传送流起的一段预定时间内填充度是否超过一个基准值来确定在接收的数据流是一个非实时数据流还是一个实时数据流。
已结合图7的流程图说明的时钟控制处理的流程的第二实例可以应用于图13中所示的网络客户机21。
如上所述,在这些实施例的网络客户机21内,时钟控制方法是根据从网络服务器11通过网络10传来的数据流是一个实时数据流还是一个非实时数据流自动改变的。因此,通过网络10传送的无论是实时数据流还是非实时数据流都可以正确得到再现。
熟悉该技术的人员很容易想到其他优点和变型。因此,本发明并不局限于在这里所示出和说明的这些具体情况和典型实施例。因此,可以有各种并不背离如由所附权利要求书及其等效表示所给出的本发明的精神实质或专利保护范围的变型。
权利要求
1.一种再现包括压缩编码的数据的数据流的再现设备,其特征是所述再现设备包括请求发送单元,用来通过网络向服务器发送指示传送所述数据流的请求;接收单元,用来接收从服务器通过网络传送的所述数据流;缓存器,用来存储所接收的数据流;执行解码处理的解码器,用来从缓存器读出所接收的数据流和对所接收的数据流解码;时钟产生器,用来产生一个确定所述解码处理的速度的时钟信号;确定单元,用来确定所接收的数据流是一个从服务器以与所接收的数据流相应的传输速率实时传送的实时数据流还是一个存储在服务器的存储媒体内的可以从服务器以比与所接收的数据流相应的传输速率高的速率传送的非实时数据流;以及时钟控制单元,用来在所接收的数据流为实时数据流时执行按照所述缓存器的填充度改变所述时钟信号的频率的处理,而在所接收的数据流为非实时数据流时执行将该时钟信号的频率设置在一个固定值的处理。
2.按照权利要求1所述的再现设备,其特征是所述确定单元被配置成根据在从开始接收所述数据流起的一段预定时间内所述缓存器的填充度是否超过一个基准值来确定所接收的数据流是实时数据流还是非实时数据流。
3.按照权利要求1所述的再现设备,其特征是所述再现设备还包括一个分用器,用来将所接收的数据流分离成音频数据和视频数据,其中,所述缓存器是一个存储分离出来的音频数据的音频缓存器,而所述确定单元根据在从开始接收所述数据流起的一段预定时间内该音频缓存器的填充度是否超过一个基准值来确定所接收的数据流是实时数据流还是非实时数据流。
4.按照权利要求3所述的再现设备,其特征是所述音频数据通过固定比特速率编码被压缩编码。
5.按照权利要求1所述的再现设备,其特征是所述再现设备还包括一个读出单元,用来与所述时钟信号同步地进行操作,以规定的比特速率将所接收的数据流从所述缓存器读出到所述解码器,其中,所述确定单元根据在从开始接收所述数据流起的一段预定时间内所述缓存器的填充度是否超过一个基准值来确定所接收的数据流是实时数据流还是非实时数据流。
6.按照权利要求1所述的再现设备,其特征是所接收的数据流是一个包括各被附加有一个时标的分组的传送流,所述再现设备还包括一个读出单元,所述读出单元包括一个与所述时钟信号同步地执行计数操作的计数器,所述读出单元将存储在所述缓存器内的各分组中时标值等于该计数器的计数值的一个分组从该缓存器读出到所述解码器,以及所述确定单元根据在从开始接收所述数据流起的一段预定时间内该缓存器的填充度是否超过一个基准值来确定所接收的数据流是实时数据流还是非实时数据流。
7.按照权利要求1所述的再现设备,其特征是所述压缩编码的数据从服务器用各包括一个头标部分和一个净荷部分的分组传送,其中每个分组的头标部分和净荷部分之一包括指示该压缩编码的数据是实时数据流还是非实时数据流的标识信息,以及所述确定单元根据该标识信息来确定所接收的数据流是实时数据流还是非实时数据流。
8.一种控制对压缩编码的数据解码的解码处理的方法,包括下列步骤通过网络向服务器发送指示传送包括该压缩编码的数据的数据流的请求;接收从服务器通过网络传送的数据流;与时钟信号同步地执行解码处理,以从存储所接收的数据流的缓存器读出所接收的数据流,并对所接收的数据流解码;确定所接收的数据流是一个从服务器以与所接收的数据流相应的传输速率实时传送的实时数据流还是一个存储在服务器的存储媒体内的可以从服务器以比与所接收的数据流相应的传输速率高的速率传送的非实时数据流;如果所接收的数据流是实时数据流,执行按照所述缓存器的填充度改变所述时钟信号的频率的处理;以及如果所接收的数据流是非实时数据流,执行将该时钟信号的频率设置为一个固定值的处理。
9.按照权利要求8所述的方法,其特征是所述确定步骤根据在从开始接收所述数据流起的一段预定时间内所述缓存器的填充度是否超过一个基准值来确定所接收的数据流是实时数据流还是非实时数据流。
10.按照权利要求8所述的方法,其特征是所述方法还包括将所接收的数据流分离成音频数据和视频数据的步骤,其中,所述缓存器是一个存储分离出来的音频数据的音频缓存器,而所述确定步骤根据在从开始接收所述数据流起的一段预定时间内该音频缓存器的填充度是否超过一个基准值来确定所接收的数据流是实时数据流还是非实时数据流。
11.按照权利要求10所述的方法,其特征是所述音频数据通过固定比特速率编码被压缩编码。
12.按照权利要求8所述的方法,其特征是所述解码处理包括与所述时钟信号同步地以规定的比特速率从所述缓存器读出所接收的数据流的处理,以及所述确定步骤根据在从开始接收所述数据流起的一段预定时间内该缓存器的填充度是否超过一个基准值来确定所接收的数据流是实时数据流还是非实时数据流。
13.按照权利要求8所述的方法,其特征是所接收的数据流是一个包括各被附加有一个时标的分组的传送流,所述解码处理包括从所述缓存器读出存储在该缓存器内的这些分组中时标值等于一个与所述时钟信号同步地执行计数操作的计数器的计数值的一个分组的读出处理,以及所述确定步骤根据在从开始接收所述数据流起的一段预定时间内该缓存器的填充度是否超过一个基准值来确定所接收的数据流是实时数据流还是非实时数据流。
14.按照权利要求8所述的方法,其特征是所述压缩编码的数据从服务器用各包括一个头标部分和一个净荷部分的分组传送,其中每个分组的头标部分和净荷部分之一包括指示该压缩编码的数据是实时数据流还是非实时数据流的标识信息,以及所述确定步骤根据该标识信息来确定所接收的数据流是实时数据流还是非实时数据流。
全文摘要
本发明所揭示的再现设备包括一个接收从服务器传来的数据流的单元(231);一个存储所接收的数据流的缓存器;一个执行从缓存器读出所接收的数据流和对所接收的数据流解码的解码处理的解码器(24或32);一个产生确定解码处理的速度的时钟信号的时钟产生器(26);一个确定所接收的数据流是一个实时数据流还是一个非实时数据流的单元(221);以及一个在所接收的数据流为实时数据流时执行按照缓存器的填充度改变时钟信号的频率的处理而在所接收的数据流为非实时数据流时执行一个将时钟信号的频率设置在固定值的处理的单元(222)。
文档编号H04N5/92GK1798318SQ200510129688
公开日2006年7月5日 申请日期2005年12月16日 优先权日2004年12月27日
发明者山田雅弘, 平山桂子 申请人:株式会社东芝
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1