CN102378003A - 信息处理装置和方法以及程序 - Google Patents

信息处理装置和方法以及程序 Download PDF

Info

Publication number
CN102378003A
CN102378003A CN2011102131367A CN201110213136A CN102378003A CN 102378003 A CN102378003 A CN 102378003A CN 2011102131367 A CN2011102131367 A CN 2011102131367A CN 201110213136 A CN201110213136 A CN 201110213136A CN 102378003 A CN102378003 A CN 102378003A
Authority
CN
China
Prior art keywords
time
unit
delay
data
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2011102131367A
Other languages
English (en)
Inventor
久礼嘉伸
村山秀明
宗像保
藤田千裕
吉村司
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of CN102378003A publication Critical patent/CN102378003A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/756Media network packet handling adapting media to device capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6375Control signals issued by the client directed to the server or network components for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明涉及提供了一种信息处理装置、信息处理方法和程序。该信息处理装置包括:调整单元,该调整单元调整与数据传送有关的多个不同延迟元件的使数据传送延迟的延迟时间的相应长度,以与多个延迟时间中的最长延迟时间或者等于或大于所述最长延迟时间的预定时间匹配;和设置单元,该设置单元在执行数据传送的处理的处理单元中设置由调整单元调整其长度的相应的多个延迟时间。

Description

信息处理装置和方法以及程序
技术领域
本发明涉及一种信息处理装置、信息处理方法和程序,更具体地讲,涉及一种能够抑制内容的质量的劣化的信息处理装置、信息处理方法和程序。
背景技术
近年来,日益需要经由互联网、LAN(局域网)或其它传送路径执行媒体基准信号同步(所谓的GENLOCK同步)以及以短延迟传送多媒体数据。
例如,存在这样的系统:在该系统中,在广播站中,照相机经HD-SDI(高清晰度串行数字接口)线缆连接到其控制单元(所谓的CCU(照相机控制单元)),并且执行非压缩同步传送。近年来,该系统中的HD-SDI线缆已由以太网(Ethernet,注册商标)线缆替代,并且在以太网上使用IP包执行GENLOCK同步的同时执行了传送。
在为了这个目的执行多媒体数据的IP传送的情况下,需要与经由HD-SDI线缆的传送中的可用性等同的可用性,因此,例如,请求高精度GENLOCK同步和等于或小于视频帧间隔的短延迟传送。
为了处理这些请求,已提出这样一种方法:通过小波变换针对作为一个编码块(行块)的运动图像的每个图片的几行执行编码(例如,参见日本专利No.4371120)。
在这种方法中,能够在不需要等待输入图片中的所有数据的情况下开始编码。由于这个原因,当经由网络传送产生的编码数据并且在接收侧对产生的编码数据解码时,能够在接收到图片中的所有数据之前开始解码处理。换句话说,如果网络传播延迟足够短,则可以以等于或小于帧间隔的延迟实时地(即时地)传送运动图像。
在数据传送中,为了执行稳定的数据传送而没有系统的失败,用于纠错或包重新传送的时间被设置为延迟时间。如此,需要确保延迟时间(诸如,数据的处理或缓冲的等待时间)的元件称为延迟元件。
通常,存在许多在数据传送中存在多个延迟元件的情况。关于这些延迟元件,在接收侧的装置中确保延迟时间,然而,在如上所述存在多个延迟元件的情况下,接收侧的装置中的延迟时间被设置为各个延迟元件的延迟时间中的最长时间(或更长的时间)。
换句话说,即使具有比接收侧的装置中设置的延迟时间短的延迟时间的延迟元件的延迟时间被扩展至等于所设置的延迟时间的时间,在接收侧设置的延迟时间也不改变。换句话说,整个数据传送中的延迟时间不增加。
发明内容
然而,在现有技术的方法中,由于上述的各个延迟元件的延迟时间被彼此独立地设置,所以存在这样的问题,即:在延迟时间被设置得不必要地短的状态下执行与延迟时间被设置得短的延迟元件相关的处理,并且在该处理之后,会发生不执行任何处理的不必要的等待时间。换句话说,存在这样的问题,即:内容的质量由于数据传送而会不必要地劣化。
希望能够通过使用各处理中的额外时间来减小浪费的延迟时间,以提高图像质量或传送质量。
根据实施例,提供一种信息处理装置,该信息处理装置包括:调整单元,该调整单元调整与数据传送有关的多个不同延迟元件的使数据传送延迟的延迟时间的相应长度,以与多个延迟时间中的最长延迟时间或者等于或大于所述最长延迟时间的预定时间匹配;和设置单元,该设置单元在执行数据传送的处理的处理单元中设置由调整单元调整其长度的相应的多个延迟时间。
所述延迟时间可以是数据传送中的QoS控制处理时间,所述调整单元可调整各个延迟时间的长度,以与作为QoS控制处理时间请求的QoS控制处理请求时间中的最长QoS控制处理请求时间或者等于或大于所述最长QoS控制处理请求时间的预定时间匹配。
所述QoS控制处理时间可包括:冗余编码块接收等待时间,该冗余编码块接收等待时间是从接收到冗余编码块的先导包到接收到冗余编码块的末端包的时间;重新传送包等待时间,该重新传送包等待时间是等待重新传送包的时间;和用于吸收网络抖动的网络抖动应对(network jitter handling)缓冲时间。
所述设置单元可在重新传送包的重新传送处理单元中设置重新传送包等待时间,并且在暂时保持传送数据的保持单元中设置网络抖动应对缓冲时间。
所述信息处理装置还可包括参数设置单元,该参数设置单元使用作为对数据传送中的传送质量的请求的传送质量请求和冗余编码块接收等待时间,设置用于数据发送侧的QoS控制处理的参数。
可以在传送源中对数据编码,可以传送获得的编码数据,并且可以在传送目的地中对编码数据解码。此时,延迟时间可包括当通过平滑化传送在编码中通过速率控制产生的编码数据时所需的可变压缩编码延迟请求时间。另外,所述信息处理装置还可包括参数设置单元,该参数设置单元使用作为对数据的图像质量的请求的图像质量请求和可变压缩编码延迟请求时间,设置包括编码的缓冲大小的编码参数。
所述信息处理装置还可包括接收单元,该接收单元接收作为对数据的图像质量的请求的图像质量请求和作为对数据传送的传送质量的请求的传送质量请求。在这种情况下,所述调整单元可基于由接收单元接收到的图像质量请求和传送质量请求来设置作为各个延迟时间请求的延迟请求时间。
所述信息处理装置还可包括输出单元,该输出单元显示帮助输入由接收单元接收到的图像质量请求和传送质量请求的GUI。
在从多个发送装置到一个接收装置执行的数据传送中,所述调整单元可针对每个发送装置调整延迟时间,并调整这些延迟时间,使得整个数据传送中的各个延迟时间在所述发送装置之间一致(align)。
根据另一实施例,提供了一种信息处理装置的信息处理方法,该信息处理方法包括:使所述信息处理装置的调整单元能够调整与数据传送有关的多个不同延迟元件的使数据传送延迟的延迟时间的相应长度,以与多个延迟时间中的最长延迟时间或者等于或大于所述最长延迟时间的预定时间匹配;和使所述信息处理装置的设置单元能够在执行数据传送的处理的处理单元中设置其长度被调整的相应的多个延迟时间。
根据另一实施例,提供了一种使执行数据传送的计算机能够用作以下单元的程序:调整单元,该调整单元调整与数据传送有关的多个不同延迟元件的使数据传送延迟的延迟时间的相应长度,以与多个延迟时间中的最长延迟时间或者等于或大于所述最长延迟时间的预定时间匹配;和设置单元,该设置单元在执行数据传送的处理的处理单元中设置由调整单元调整其长度的相应的多个延迟时间。
根据实施例,调整与数据传送有关的多个不同延迟元件的使数据传送延迟的延迟时间的相应长度,以与多个延迟时间中的最长延迟时间或者等于或大于所述最长延迟时间的预定时间匹配,并且,在执行数据传送的处理的处理单元中设置其长度被调整的相应的多个延迟时间。
根据本发明的实施例,能够传送数据。具体地讲,可以抑制内容的质量的劣化。
附图说明
图1是图示根据本发明实施例的传送系统的主要配置例子的框图。
图2是图示编码单元的主要配置例子的框图。
图3是图示分析滤波的概要的示图。
图4是图示分析滤波的概要的示图,并且是图3的续图。
图5是图示行块(line block)的示图。
图6是图示解码单元的主要配置例子的框图。
图7是图示数据传送处理的流程的例子的流程图。
图8是图示请求接收画面的显示例子的示图。
图9是图示接收缓冲时间确定处理的流程的例子的流程图。
图10是图示设置延迟时间的情况的例子的示图。
图11是图示接收缓冲时间和处理参数设置处理的流程的例子的流程图。
图12是图示数据传送处理的另一例子的流程图。
图13是图示接收缓冲动态改变传送处理的流程的例子的流程图。
图14是图示根据本发明另一实施例的传送系统的主要配置例子的框图。
图15是图示接收单元的主要配置例子的框图。
图16是图示数据传送处理的流程的另一例子的流程图。
图17是图示暂时接收缓冲时间确定处理的流程的例子的流程图。
图18是图示综合接收缓冲时间确定处理的流程的例子的流程图。
图19是图示设置接收缓冲时间的情况的例子的示图。
图20是图示接收缓冲动态改变传送处理的流程的另一例子的流程图。
图21是图示根据本发明实施例的个人计算机的主要配置例子的框图。
具体实施方式
以下,将描述本发明的实施例。将按照下面的次序进行描述。
1、第一实施例(传送系统)
2、第二实施例(传送系统)
3、第三实施例(传送系统)
4、第四实施例(个人计算机)
1、第一实施例
传送系统的概要
图1是图示根据本发明实施例的传送系统的主要配置例子的框图。传送系统100是这样的系统:该系统把输入到发送装置101的图像数据(视频数据(VIDEO IN))经由作为普通传送路径的网络102(诸如,互联网或LAN)实时地(即时地)传送给接收装置103,并从接收装置103输出图像数据(VIDEO OUT)。
发送装置101顺序地对从外部输入端子“VIDEO IN”输入的运动图像的图像数据编码而不需要等待输入所有的数据,并经由网络102把产生的编码数据的包发送给接收装置103。
网络102是普通的IP包网络,诸如互联网或LAN。经由网络102,不仅执行发送装置101和接收装置103之间的数据传送,还执行其它数据传送。
接收装置103接收从发送装置101传送的包,顺序地对获得的编码数据解码,并从外部输出端子“VIDEO OUT”输出解码图像的图像数据。另外,接收装置103在与输入到发送装置101的图像数据的采样频率同步的定时输出图像数据。换句话说,按照与图像数据输入到发送装置101时相同的帧率从接收装置103输出图像数据。传送系统100执行数据传送,以与输出定时一致。
近年来,日益需要经由普通传送路径(诸如,互联网或LAN(局域网))执行媒体基准信号同步(所谓的GENLOCK同步)以及以短延迟传送多媒体数据。
例如,在现有技术中,存在这样的系统:在该系统中,在广播站中,照相机经由HD-SDI线缆连接到其控制单元(所谓的CCU),并且在它们之间执行非压缩同步传送。近来,该系统中的HD-SDI线缆已由以太网(Ethernet,注册商标)线缆替代,并且在以太网上使用IP包执行GENLOCK同步的同时执行了传送。
在为了这个目的执行多媒体数据的IP传送的情况下,需要与经由HD-SDI线缆的传送中的可用性等同的可用性。由此,请求高精度GENLOCK同步和等于或小于视频帧间隔的短延迟传送。
为了处理这些请求,日本专利No.4371120已提出这样一种方法:通过把运动图像的每个图片的几行视为一个编码块(行块)来执行编码。在这种方法中,发送装置101能够在不需要等待输入图片中的所有数据的情况下开始编码。另外,发送装置101能够经由网络102顺序地把通过编码获得的编码数据传送给接收装置103。
接收装置103能够在接收图片中的所有数据之前开始解码。换句话说,如果网络传播延迟足够短,则可以以等于或小于帧间隔的延迟实时地传送运动图像(以数据输入到发送装置101的帧率传送能够从接收装置103输出的数据)。
运动图像的编码处理包括:CBR(恒定比特率)方法,其中按照短时间间隔(诸如,帧或行块)以恒定数据率执行编码;和VBR(可变比特率)方法,其中平均数据率以长时间间隔恒定不变,但数据率以短时间间隔变化。
在传送VBR方法中的压缩流数据的情况下,执行控制,使得通过使用ITU-T Y.1221中描述的令牌桶(token bucket)等并执行平滑化处理,数据不超过编码处理中的令牌桶的最大桶大小。此时,编码处理中的最大突发(瞬时)数据大小根据最大桶大小而被限制。
在VBR方法的情况下,通常,多个数据能够被分配给具有高图像复杂度的部分或具有低压缩效率的部分(诸如,包括剧烈运动的场景)。由于这个原因,通常,VBR方法具有比CBR方法高的压缩效率。换句话说,通常,在相同的平均数据率的情况下,VBR方法具有比CBR方法高的图像质量。
随着令牌桶中的最大桶大小增加,图像质量提高,然而,在考虑流传送之后的同步再现的情况下,直至同步再现的延迟时间变长。以下,在按照VBR方法执行编码处理的情况下由平滑化处理导致的延迟时间被称为可变压缩编码延迟时间。
作为适合于上述的实时传送的互联网技术,存在IETF RFC3550中定义的RTP(实时传输协议)。在使用RTP的数据传送中,时间戳作为时间信息被添加到包,并且使用该时间戳掌握发送侧和接收侧之间的时间关系,因此能够通过执行同步来执行再现,而不会受到包传送中的延迟波动(抖动)等的影响。
然而,RTP不保证实时数据传送。例如,在由RTP提供的传输服务的范围内不包括包传送的优先级的设置或管理等。因此,存在这样的可能性,即,以与其它协议包相同的方式在RTP包中发生传送延迟或包损失。然而,即使发生传送延迟或数据损失,接收装置103也能够仅使用在预期时间内到达的包再现数据。即使发生了或多或少的数据损失,也能够在一定程度上再现视频或音频数据。
另外,以延迟传送的包或发生错误的包被接收装置103丢弃。换句话说,虽然传送高质量数据,但存在这样的问题,即:接收装置103由于包损失或错误而未充分地再现高质量数据。据说,错误发生的概率在有线部分中为10-5或更大,在无线部分中为10-3或更大。因此,在保持传送的媒体的质量方面,在这种状态下使用RTP导致低的可靠性。
与此不同的,在数据的传送中存在这样的方法,即:请求重新传送,并使用具有高可靠性的TCP(传输控制协议)来发送重新传送的包。然而,虽然TCP对错误具有相当的抵抗性,但它具有低吞吐量和长延迟。由于这个原因,存在这样的问题,即,在与再现时间不一致的情况下执行重新传送的包的到达。
作为使用RTP提高数据传送中的可靠性的方法,存在前向纠错编码(ECC)方法(所谓的FEC(前向纠错)方法),其中,通过对数据执行冗余编码,能够提高可靠性。
在FEC方法中,多个包被指定为一个FEC块,并且使用纠错码(诸如,Reed-Solomon(RS)码等)执行冗余编码。例如,如果使用(n,k)RS码并且原始包的数量为k,则可以产生(n-k)个冗余包(其中n>k)。在这种情况下,发送装置101总共发送n个包,由此接收装置103接收n个包中的k个包,从而可以通过RS解码处理恢复k个原始包。
当使用FEC方法执行冗余编码时,包损失的恢复性能取决于FEC块原始数据单位和冗余包的数量(n-k)。特别地,在经由网络进行的数据传送的处理中发生的数据序列上的连续包中的损失(所谓的突发包损失)的恢复性能与FEC块原始数据单位密切相关。通常,随着FEC块原始数据单位增大,突发包损失的恢复性能得以提高。
然而,如果FEC块原始数据单位增大,则执行FEC编码处理和解码处理所需的块大小(数据量)变大。该处理所需的数据的累积量(即,等待时间)相应地增加,因此存在这样的问题,即:延迟时间增加。FEC编码处理或FEC解码处理所需的延迟时间被称为冗余编码块接收等待时间。
作为用于提高数据传送的可靠性的另一方法,存在自动重新传送方法,所谓的ARQ(自动重复请求)方法。ARQ方法是这样的方法:接收装置103使用RTP包的序号检测丢失的包并请求发送装置101重新传送丢失的包。作为扩展ARQ方法的方法,存在这样的方法:在接收装置103在与包损失有关的特定时间未接收到重新传送的包的情况下,再次发出重新传送请求。
在使用这种方法的情况下,当在接收装置103中把重新传送包等待时间设置得较大时,恢复性能得以提高,然而,到执行同步再现时的延迟相应地增加。
作为用于恢复传送质量的另一方法,存在这样的方法:接收装置103被设有用于吸收网络传送时间中的波动(所谓的网络抖动)的缓冲器(网络抖动应对缓冲器)。当用于使用网络抖动应对缓冲器执行缓冲的时间(所谓的网络抖动应对缓冲时间)增加时,可以抑制网络抖动影响在接收装置103中执行的各种处理。然而,到执行同步再现时的延迟相应地增加。
如上所述,通常,各种延迟元件存在于数据传送中,并且接收侧的装置必须确保每个延迟元件的延迟时间。
然而,在现有技术中,为了处理对解码图像的图像质量的请求(图像质量请求)、对在传送数据时的包损失率(传送质量)的请求,彼此独立地设置多种延迟时间,例如,可变压缩编码延迟时间、冗余编码块接收等待时间、ARQ重新传送包等待时间和网络抖动应对缓冲时间。
接收装置103将接收到的数据暂时保持等于或大于延迟时间中的最大值的时间,从而系统不会由于延迟而失败。换句话说,接收装置103必须确保每个延迟元件的延迟时间。保持数据的时间被称为接收缓冲时间。
在这种情况下,例如,假设可变压缩编码延迟时间是上述延迟时间中的最大值,并且这个值被设置为接收缓冲时间。此时,在冗余编码处理中,通过进一步增大冗余编码块来提高突发损失抵抗性,由此,即使冗余编码块接收等待时间增加到等于接收缓冲时间的程度,总延迟时间也不增加。
然而,假设冗余编码块接收等待时间按照与现有技术相同的方式被设置为独立于其它时间。在这种情况下,在冗余编码块接收等待时间小的状态下执行冗余编码处理。换句话说,在冗余编码处理中,存在这样的问题,即:产生不执行任何处理的不必要等待时间,因此发生浪费的延迟时间。
另外,如果冗余编码块接收等待时间是最大值,则可以通过把可变压缩编码延迟时间设置得较大来提高图像质量而不增加总延迟时间。然而,如果如现有技术中的上述方法一样彼此独立地设置各个延迟时间,则在可变压缩编码延迟时间小的状态下执行编码处理。换句话说,存在这样的问题,即:发生浪费的延迟时间。
接收装置103调整与数据传送有关的多个不同延迟元件的使数据传送延迟的每个延迟时间的长度,以与多个延迟时间中的最长延迟时间匹配。
发送装置101也基于从接收装置103提供的信息设置用于每个处理的参数,使得延迟时间不会增加为超过由接收装置103确保的延迟时间(接收缓冲时间),并且该延迟时间变长为超过所确保的延迟时间,由此提高图像质量或传送质量。
因此,传送系统100(发送装置101和接收装置103)能够通过抑制这种浪费的延迟时间来提高图像质量或传送质量,而不会增加整个数据传送中的延迟时间。
发送装置的配置
如图1中所示,发送装置101包括编码单元111、FEC单元112、RTP单元113、平滑化单元114、基准信号同步单元115、媒体同步单元116、RTCP(RTP控制协议)单元117、ARQ单元118以及接收缓冲时间和处理参数设置单元119。
经由摄像机等从视频输入端IF“VIDEO IN”输入的视频数据(运动图像数据)被提供给编码单元111。编码单元111按照预定编码方法对运动图像数据执行编码处理。编码方法是任意的,但优选地实现较短的延迟。稍后将描述编码方法的例子。
编码单元111具有速率控制单元121。速率控制单元121控制在编码单元111中产生的编码数据的比特率。编码单元111对产生的编码数据进行RTP分包以把其提供给FEC单元112。
FEC单元112产生从编码单元111提供的RTP包的冗余包。
RTP单元113对从FEC单元112提供的编码数据的冗余包进行RTP分包。
平滑化单元114暂时保持从RTP单元113提供的RTP包,并把RTP包平滑化至用于传送的预定数据率。
基准信号同步单元115经由网络102与作为传送目的地的接收装置103的基准信号同步单元139通信,并对基准信号时钟执行同步。基准信号同步单元115把与接收装置103同步的基准信号提供给媒体同步单元116。
媒体同步单元116把通过使用从基准信号同步单元115提供的时间点作为基准与输入到IF VIDEO IN的数据的采样时间点同步的时间点提供给编码单元111(其中的RTP单元)和RTP单元113。这个时间点作为RTP时间戳被添加到RTP包。
RTCP单元117向作为传送目的地的接收装置103的RTCP单元137发送RTCP消息并从该RTCP单元137接收RTCP消息,由此发送和接收用于QoS(服务质量)控制处理的控制消息(QoS控制消息)。RTCP单元117把获得的控制消息提供给ARQ单元118或接收缓冲时间和处理参数设置单元119。
ARQ单元118根据从RTCP单元117提供的重新传送请求消息重新传送所请求的RTP包。
接收缓冲时间和处理参数设置单元119根据从RTCP单元117提供的各种延迟时间的设置来设置用于编码单元111或FEC单元112的参数。
接收装置的配置
如图1中所示,接收装置103包括接收单元131、接收缓冲器132、RTP单元133、FEC单元134、解码单元135、ARQ单元136、RTCP单元137、接收缓冲时间设置单元138、基准信号同步单元139、媒体同步单元140、输入单元141和输出单元142。
接收单元131经由网络102接收从发送装置101传送的RTP包,并把接收到的RTP包提供给接收缓冲器132。为了吸收网络102上的包传送中的延迟时间的波动,接收缓冲器132暂时保持从接收单元131提供的RTP包,并随后在基于来自接收缓冲时间设置单元138或媒体同步单元140的信息确定的时间点把这些包提供给RTP单元133。
RTP单元133重新配置RTP包以产生作为包括冗余包的编码数据的FEC冗余编码数据,并把产生的FEC冗余编码数据提供给FEC单元134。
FEC单元134检测包的损失并根据需要通过冗余编码和解码处理恢复丢失的包数据。FEC单元134把处理的编码数据提供给解码单元135。
解码单元135按照与编码单元111中的编码方法对应的解码方法对编码数据解码。例如,将解码的视频数据(运动图像数据)从接收装置103的视频输出端IF(VIDEO OUT)输出到视频显示装置(未示出),诸如显示器。
当接收单元131通过对丢失的包(可能未接收到的包)的检测来检测到丢失的包时,ARQ单元136控制RTCP单元137向发送装置101的ARQ单元118传送重新传送请求消息。RTCP单元137把由ARQ单元136请求的重新传送请求消息或从接收缓冲时间设置单元138提供的各种设置信息作为RTCP消息提供给发送装置101的RTCP单元117。
接收缓冲时间设置单元138基于经由例如输入单元141输入的图像质量请求、传送质量请求等设置接收缓冲时间等。图像质量请求是对解码图像(从接收装置103输出的视频数据的图像)的图像质量的请求。传送质量请求是对网络102的包损失率等的请求。接收缓冲时间是在接收装置103中设置的延迟时间,使得系统不会失败并且稳定地执行数据传送。
基准信号同步单元139与基准信号同步单元115通信并使基准信号与发送装置101同步。媒体同步单元140基于由基准信号同步单元139同步的基准信号控制来自接收缓冲器132的RTP包输出定时、解码单元135中的解码处理开始定时等。
输入单元141包括例如任意输入装置(诸如,键盘、鼠标、触摸面板或开关、外部输入端子等),从接收装置103的外部(诸如,用户)接收图像质量请求或传送质量请求,并把它提供给接收缓冲时间设置单元138。
输出单元142包括例如任意输出装置(诸如,监视器或扬声器、外部输出端子等),显示从接收缓冲时间设置单元138提供的GUI图像或输出音频,由此引导图像质量请求或传送质量请求的输入或者输出输入结果。
编码单元的配置例子
接下来,将描述发送装置101的编码单元111的例子。图2是图示发送装置101的编码单元111的配置例子的框图。编码单元111关于图像数据的分辨率的重要程度按照降序产生图像数据的层级,并对每个层级执行层级编码以进行编码。例如,编码单元111关于空间分辨率的重要程度按照降序产生层级数据。另外,例如,编码单元111关于时间分辨率的重要程度按照降序产生层级数据。另外,例如,编码单元111关于SNR(信噪比)的重要程度按照降序产生层级数据。编码单元111针对每个层级对以这种方式产生的层级数据编码。
作为这种层级编码方法,存在例如JPEG(联合图像专家组)2000方案,其中运动图像数据的每个图片经受小波变换和熵编码。层级编码方法是任意的,但在下面将描述编码单元111针对每多行对运动图像数据执行小波变换和熵编码的情况。
如图2中所示,编码单元111包括小波变换单元161、量化单元162、熵编码单元163、速率控制单元121和RTP单元164。小波变换单元161针对每多行对运动图像的每个图片执行小波变换。
小波变换是执行用于在图像平面水平方向和图像平面垂直方向的两个方向上把输入数据分成高频分量和低频分量的分析滤波的处理。换句话说,小波变换处理的输入数据被分成四个分量(子带),该四个分量包括在水平方向和垂直方向上都具有低频的分量(LL分量)、在水平方向上具有高频而在垂直方向上具有低频的分量(HL分量)、在水平方向上具有低频而在垂直方向上具有高频的分量(LH分量)以及在水平方向和垂直方向上都具有高频的分量(HH分量)。
小波变换单元161按照预定次数对下述分量递归地重复小波变换处理:在水平方向和垂直方向上都具有低频并且通过分析滤波获得的分量(LL分量)。换句话说,通过小波变换处理,运动图像数据的每个图片被分成多个层级子带(频率分量)(产生层级数据)。熵编码单元163对每个子带进行编码。
从图像的上侧纵向地对于每一行把运动图像的每个图片的图像数据输入到小波变换单元161。另外,从图像的左侧横向地对于每个采样(一列)输入每一行的图像数据。
每当小波变换单元161被提供有能够对其执行分析滤波的采样的数量的数据时(一旦它被提供有这些采样),小波变换单元161对以这种方式输入的图像数据在图像平面水平方向上执行分析滤波(水平分析滤波)。例如,每当输入M列时,小波变换单元161对图3的左侧显示的基带中的图像数据171执行水平分析滤波,并对于每一行把它分成在水平方向上具有低频的分量L和具有高频的分量H。图3的右侧显示的水平分析滤波结果172指示与由小波变换单元161分割的N行的量对应的在水平方向上具有低频的分量L和具有高频的分量H。
接下来,小波变换单元161对水平分析滤波结果172的各分量在垂直方向上执行分析滤波(垂直分析滤波)。如果通过水平分析滤波产生了垂直分析滤波所需的垂直行的系数,则小波变换单元161针对每一列对于垂直分析滤波所需的垂直行的系数执行垂直分析滤波。
结果,水平分析滤波结果172被分成四个分量的小波变换系数(以下,被称为系数),该四个分量包括如图4中的左侧所示的在水平方向和垂直方向上都具有低频的分量(LL分量)、在水平方向上具有高频而在垂直方向上具有低频的分量(HL分量)、在水平方向上具有低频而在垂直方向上具有高频的分量(LH分量)以及在水平方向和垂直方向上都具有高频的分量(HH分量)(层级数据173)。
在获得预定层级(分割级别)的系数之前,获得的分析滤波结果中的HL分量、LH分量和HH分量被输出给外部装置。剩下的LL分量在小波变换单元161中经受第二分析滤波。换句话说,例如,图4中的左侧显示的层级数据173被变换成图4中的右侧显示的层级数据174。在层级数据174中,从LL分量产生包括LLLL分量、LLHL分量、LLLH分量和LLHH分量的四个分量。
小波变换单元161按照预定次数对运动图像数据递归地执行分析滤波,并产生被层级化至所希望的分割级别的层级数据。图5是图示被层级化至分割级别3(三个层级)的层级数据的例子的示图。在图5中,分割至分割级别3的层级数据175由各个子带构成,所述各个子带包括:分割级别1(层级编号3)的3HL分量、3LH分量和3HH分量;分割级别2(层级编号2)的2HL分量、2LH分量和2HH分量;以及分割级别3(层级编号1)的1LL分量、1HL分量、1LH分量和1HH分量。
在小波变换处理中,每当重复滤波时(每当层级向下减小一级别时),产生的行的数量与2的平方成反比地变小。产生最后分割级别(层级编号1)的一行系数所需的基带中的行的数量能够由重复滤波的次数(最后分割级别的层级的数量)确定。通常,预先设置层级的数量。
产生最后分割级别的一行系数或每个层级的一行系数所需的基带中的图像数据(多行的图像数据)被统称为行块(或分区(precinct))。
在图5中,以斜切线标记的部分是形成一个行块的系数。如图5中所示,该行块包括与层级编号1的各个分量的一行对应的系数、与层级编号2的各个分量的两行对应的系数和与层级编号3的各个分量的四行对应的系数。另外,在执行分析滤波之前与它们对应的图像数据(即,在这个例子中,与八行的量对应的图像数据)也被称为行块(或分区)。
再次参照图2,量化单元162通过按照例如量化步长分割系数来量化由小波变换单元161产生的各个分量的系数,并产生量化系数。此时,量化单元162可以针对每个行块(分区)设置量化步长。该行块包括某一图像区域中的所有频率分量的系数(在图5的情况下,从1LL到3HH的十个频率分量),因此,每个行块的量化能够实现作为小波变换的特征的多重分辨率分析的优点。另外,在整个图像平面上仅设置行块的数量,因此减小了量化的负荷。
另外,由于图像信号的能量通常集中于低频分量,并且人眼对低频分量的劣化敏感,所以优选的是在量化期间执行加权,使得低频分量的子带中的量化步长相应地具有小值。通过这种加权,相对较大量的信息被分配给低频分量,因此整体上提高主观图像质量。
熵编码单元163对由量化单元162产生的量化系数执行源编码以产生压缩编码数据,并把产生的压缩编码数据提供给速率控制单元121。例如,源编码可以使用JPEG方案或MPEG(运动图像专家组)方案中使用的Hoffman编码或者JPEG 2000方案中使用的高密度算术编码。
这里,对哪个范围中的系数执行熵编码是直接与压缩效率相关的非常主要的因素。例如,在JPEG方案或MPEG方案中,对8×8块执行DCT(离散余弦变换),并且通过对产生的64个DCT系数执行Huffman编码来压缩信息。换句话说,64个DCT系数属于熵编码的范围。
与DCT不同,小波变换单元161以行为单位对8×8块执行小波变换,因此,熵编码单元163针对每个频带(子带)和进一步针对每个频带中的每P行独立地对块执行源编码。
P最小为一行,然而,由于在行的数量较小的情况下参考信息很少,所以能够减少存储容量。相比之下,在行的数量较大的情况下,由于信息的量相应地增加,所以能够提高编码效率。然而,如果P变为超过每个频带中的行块中的行的数量的值,则甚至也需要下一行块中的行。由于这个原因,熵编码单元163等待要通过小波变换和量化产生的行块的量化系数数据,并且这个等待时间变为延迟时间。
因此,对于短延迟,p优选地等于或小于行块的行的数量。例如,在图5显示的例子中,由于行块的行的数量在1LL、1HL、1LH和1HH的频带中为一,所以P为1。另外,由于行块的行的数量在2HL、2LH和2HH的频带中为二,所以P为1或2。
速率控制单元121最后根据目标比特率或压缩比执行控制,并把速率控制之后的编码数据输出给RTP单元164。例如,速率控制单元121向量化单元162传送控制信号,以在增加比特率的情况下减小量化步长,在减小比特率的情况下增大量化步长。
RTP单元164对从速率控制单元121提供的编码数据进行RTP分包以把其提供给FEC单元112。
解码单元的配置例子
接下来,将描述与上述编码单元111的例子对应的解码单元135的例子。图6是图示接收装置103的解码单元135的配置例子的框图。在图6中,解码单元135包括RTP单元190、熵解码单元191、逆量化单元192和逆小波变换单元193。
RTP单元190把从FEC单元134提供的RTP包转换成编码数据并把编码数据提供给熵解码单元191。熵解码单元191按照与熵编码单元163中的编码方法对应的方法对编码数据解码,并产生量化系数数据。例如,可以使用Huffman解码或高效率算术解码。另外,当在熵编码单元163中针对每P行执行了编码时,熵解码单元191独立地针对每个子带和每个子带中的每P行执行解码。
逆量化单元192通过把量化系数数据乘以量化步长来执行逆量化,并产生系数数据。通常在从发送装置101提供的编码数据的头部中描述该量化步长。另外,当在量化单元162中针对每个行块设置了量化步长时,逆量化单元192以相同的方式通过针对每个行块设置逆量化步长来执行逆量化。
逆小波变换单元193执行与小波变换单元161中的处理相反的处理。换句话说,逆小波变换单元193执行在水平方向和垂直方向的两个方向上合成由小波变换单元161分成多个频带的系数数据的低频分量和高频分量的滤波(合成滤波)。逆小波变换单元193通过逆小波变换恢复基带中的视频数据,并从IF VIDEO OUT把恢复的视频数据输出到接收装置103的外部。
当然,上述的编码单元111和解码单元135仅是例子,并且可以使用其它编码和解码方法。
传送处理
接下来,将描述传送系统100中执行的每个处理。首先,将描述经由网络102从发送装置101向接收装置103传送视频数据的传送处理。
在发送装置101中,经由摄像机从视频输入端IF“VIDEO IN”输入的视频数据被输入到编码单元111并被编码,该编码单元111对运动图像数据执行编码处理。编码数据由编码单元111的RTP单元164进行RTP分包并被输出。输出的RTP包在FEC单元112中经受FEC冗余编码处理,FEC冗余编码数据由RTP单元113进行RTP分包,并作为RTP包被从平滑化单元114传送给网络102。
在每个RTP包中设置由媒体同步单元116指定的用于同步的RTP时间戳。
接收装置103使用接收单元131接收从发送装置101发送的RTP包,并把这些包存储在接收缓冲器132中。此时,如果检测到丢失的包,则接收装置103向ARQ单元136通知该检测,使得ARQ单元136执行重新传送请求处理。
接收缓冲器132基于由接收缓冲时间设置单元138确定的接收缓冲时间、从媒体同步单元140发送的时间点信息和在每个RTP包中设置的RTP时间戳来确定接收缓冲输出时间点,并在预定时间点把每个RTP包输出给RTP单元133。
RTP单元133执行把RTP包转换成FEC冗余编码数据的重新配置处理,并把转换的FEC冗余编码数据输出给FEC单元134。FEC单元134检测丢失的包。当检测到丢失的包时,FEC单元134通过冗余编码和解码处理来恢复丢失的包数据。
以这种方式处理的编码数据(RTP包)被提供给解码单元135。解码单元135通过转换提供的编码数据的RTP包来产生编码数据,并对编码数据解码。从视频输出端IF“VIDEO OUT”把解码的视频数据提供并输出给视频显示装置,诸如显示器。
基准信号同步处理
接下来,将描述使基准信号在发送装置101和接收装置103之间同步的基准信号同步处理。基准信号同步单元115和基准信号同步单元139相互通信,并使用IEEE 1588PTP(精确时间协议)使基准信号时钟在发送装置101和接收装置103之间同步。
作为基准信号时钟的频率,例如,使用输入视频图像的像素采样频率。另外,当从IF“VIDEO IN”输入从视频输出装置输出的视频数据时,可以使基准信号在发送装置101和该视频输出装置之间同步。
另外,由基准信号同步单元115和基准信号同步单元139进行的发送装置101和接收装置103之间的基准信号的同步是任意的,并且可以使基准信号在这些装置之间不同步。
媒体同步处理
接下来,将描述基于基准信号使视频数据同步的媒体同步处理。发送装置101的媒体同步单元116基于从基准信号同步单元115发送的时间点把与从IF“VIDEO IN”输入的数据的采样时间点同步的时间点转换成RTP时间戳的频率,并且,转换的频率在编码单元111的RTP单元164和RTP单元113中作为RTP时间戳被添加到每个RTP包。
接收装置103的媒体同步单元140保持从基准信号同步单元139发送的基准时钟时间点信息作为被转换成RTP时间戳频率的系统时间点。
当RTP包被存储在接收装置103的接收缓冲器132中时,接收缓冲器132基于RTP包的RTP时间戳值、从接收缓冲时间设置单元138发送的接收缓冲时间和从媒体同步单元140提供的RTP时间戳频率时间点来确定每个RTP包的接收缓冲输出时间点。
例如,如下确定RTP包的接收缓冲输出时间点。在从接收时间点已经过接收缓冲时间TSTIME_BUF的时间点之后,从接收缓冲器输出流数据的先导包。与此不同的是,与基于先导包的RTP时间戳值和对应包的RTP时间戳值之间的差值计算的时间点同步地输出随后的包。
使用例如下面的公式(1)计算RTP包n的接收缓冲输出时间点TSSYS_BO_n。流先导包的RTP时间戳值由TSPKT_init表示,接收时间点(系统时间点转换:频率是RTP时间戳频率)由TSSYS_init表示,并且RTP包n的RTP时间戳值由TSPKT_n表示。
TSSYS_BO_n=(TSPKT_n-TSPKT_init)+TSSYS_init+TSTIME_BUF  (1)
编码处理和解码处理
接下来,将描述由发送装置101和接收装置103执行的对视频数据的编解码处理(编码处理和解码处理)。编码单元111使用由日本专利No.4371120提出的对作为一个编码块的运动图像的每个图片的几行执行小波变换的层级编码方法和关联输入数据范围对于每个层级不同的编码方法。
编码单元111通过编码处理产生编码数据,解码单元135执行对编码数据解码的解码处理。
如上所述,编码单元111包括速率控制单元121。例如,在ITU-T Y.1221中描述的令牌桶行为中,速率控制单元121通过使用桶大小作为编码器预期缓冲大小B(字节)以及使用桶速率R(bps)作为编码率执行用于控制编码率以不超过桶的速率控制。当通过平滑化对此进行传送时的接收装置103中的必要缓冲时间被称为“可变压缩编码延迟请求时间”。
例如,按照下面公式(2)计算可变压缩编码延迟请求时间Bt_codec_req(秒)。
Bt_codec_req=B×8/R  (2)
根据由用户等指定的图像质量请求确定编码器预期缓冲大小B。在使用VBR方法的压缩编码的情况下,通过增大编码器预期缓冲大小B能够在具有高复杂度的图像部分中使用大量数据,由此提高图像质量。换句话说,如果图像质量请求较高,则可以通过增大编码器预期缓冲大小B处理该较高的请求。
然而,如果增大编码器预期缓冲大小B,则可变压缩编码延迟请求时间Bt_codec_req(秒)变大,因此存在延迟增加的问题。
RTCP处理
接下来,将描述在发送装置101和接收装置103之间执行的QoS控制处理的RTCP处理。RTCP单元117和RTCP单元137使用IETF RFC 3550中描述的RTCP执行发送装置101和接收装置103之间的RTCP消息的发送和接收,由此收集信息(诸如,包损失率信息、往返时间(RTT)信息和网络抖动信息)或者执行用于QoS控制处理的控制消息的发送和接收。QoS控制消息包括例如ARQ处理中的重新传送请求消息等。
FEC处理
接下来,将描述QoS控制处理的FEC处理。FEC单元112针对从编码单元111提供的编码数据的RTP包的单位执行FEC冗余编码。例如,FEC单元112使用擦除纠错码(erasure error correctioncode,ECC)(诸如,Reed-Solomon码等)执行冗余编码。
通过由例如用户等指定的传送质量请求确定FEC冗余编码中的冗余度。以(原始数据包的数量,冗余包的数量)的形式指定冗余度。用户还指定网络上的预期包损失率p。
以下,一组(原始数据包的数量,冗余包的数量)被指定为一个冗余编码单位(所谓的FEC块)。例如,如果(原始数据包的数量,冗余包的数量)被指定为(10,5),则发送装置101的FEC单元112对于十个原始数据包产生五个冗余包。换句话说,在这个FEC块中总共传送十五个包。
在这种情况下,当接收到FEC块包中的任意十个包时,接收装置103的FEC单元134能够通过FEC解码处理对原始数据解码。例如,如果假设由用户指定的包损失率是p,FEC块中的包的数量是n,原始数据包的数量是k,冗余包的数量是n-k,并且由用户指定作为传送质量请求的目标FEC块损失率是Pt,则目标FEC块损失率Pt被表达为下面的公式(3):
公式(3)
P t ≥ 1 - Σ j = 0 n - k n c j p j ( 1 - p ) n - j (n>k)
确定原始数据包的数量k和冗余包的数量n-k以满足公式(3)。
接收装置103(FEC单元134)必须把接收缓冲时间设置为等于或大于在FEC块的先导包到达接收装置103之后直至末端包到达的时间(所谓的冗余编码块接收等待时间),以便通过FEC冗余编码处理恢复丢失的包。
根据由用户等指定的传送质量请求设置的与FEC块对应的冗余编码块接收等待时间被称为“冗余编码块接收等待请求时间”。
ARQ处理
在接收装置103的ARQ处理中,接收单元131使用RTP包的序号检测丢失的包,ARQ单元136针对丢失的包产生重新传送请求消息,并且RTCP单元137把重新传送请求消息传送给发送装置101,由此请求重新传送。
另外,在接收装置103的ARQ单元136针对包损失执行重新传送请求,并且接收单元131甚至在经过往返时间(ARQ重新传送包等待时间)之后也未接收到重新传送的包的情况下,可以再次请求重新传送。另外,可以重复地请求重新传送,直至ARQ单元136确定重新传送的包与对应包的接收缓冲输出时间点不一致地到达。
在发送装置101的ARQ处理中,当RTCP单元117接收到重新传送请求消息时,ARQ单元118产生将要重新传送的RTP包(重新传送包),并把重新传送的包提供给平滑化单元114以便重新传送。
ARQ处理中的恢复性能取决于ARQ重新传送包等待时间,该ARQ重新传送包等待时间是接收装置103等待根据来自ARQ单元136的请求重新传送的重新传送包的时间。虽然根据大的ARQ重新传送包等待时间提高了恢复性能,但需要等于或大于ARQ重新传送包等待时间的接收缓冲时间,因此存在延迟增加的问题。
通过由用户等指定的传送质量请求确定“ARQ重新传送包等待时间”。
网络抖动应对处理(network jitter handling process)
接收装置103的接收缓冲器132常用作网络抖动应对处理机构。接收缓冲器132设置等于或大于通过由用户等指定的传送质量请求确定的“网络抖动应对缓冲请求时间”的时间作为接收缓冲时间。由此,可以对具有等于或小于“网络抖动应对缓冲请求时间”的抖动的包进行同步处理。
整体数据传送处理
接下来,将参照图7的流程图描述在传送系统100中执行的整体数据传送处理的流程的例子。
接收装置103的接收缓冲时间设置单元138在步骤S121中控制输入单元141和输出单元142接收图像质量请求和传送质量请求。
接收缓冲时间设置单元138在例如输出单元142的监视器上显示如图8中所示的GUI,并控制输入单元141接收基于GUI执行的用户操作。
图8是图示作为接收图像质量请求、传送质量请求等的GUI的请求接收画面的显示例子的示图。如图8中所示,请求接收画面201被设有显示部分202和请求部分203。请求部分203表示能够由用户输入的项目。显示部分202显示由用户输入的信息的结果。
请求部分203表示例如“图像质量请求”或“传送质量请求”能够作为“用户请求”被输入。例如,在指定图像质量的情况下,用户选择“图像质量请求”并输入所请求的质量(例如,PSR值等)。另外,例如,在指定传送质量的情况下,用户选择“传送质量请求”并输入所请求的质量(例如,QoS控制之后的包损失率等)。
用户可以从请求部分203指定接收缓冲时间。例如,用户选择“接收缓冲时间”并输入所请求的时间,由此设置可容许的最长时间作为“接收缓冲时间”。
显示部分202显示反映输入到请求部分203的信息的各种信息。
例如,显示部分202显示“传送延迟”、“包损失率”和“网络抖动”作为“网络状况”。
另外,例如,显示部分202显示“可变压缩编码延迟请求时间”、“冗余编码块接收等待时间”、“ARQ重新传送包等待请求时间”和“网络抖动应对缓冲请求时间”作为“处理请求时间”。
另外,例如,显示部分202显示被推荐作为接收缓冲时间的“推荐接收缓冲时间”。
基于GUI输入这些请求,由此用户能够更容易地设置图像质量请求、传送质量请求、接收缓冲时间等。
再次参照图7,当接收到图像质量请求或传送质量请求时,接收缓冲时间设置单元138在步骤S122中执行接收缓冲时间确定处理,并且,对ARQ单元136或接收缓冲器132执行设置,或者经由RTCP单元137向发送装置101通知确定的信息等。
当经由RTCP单元117接收到通知时,发送装置101的接收缓冲时间和处理参数设置单元119在步骤S101中基于该通知执行接收缓冲时间和处理参数设置处理,并对编码单元111或FEC单元112执行设置。
当设置完成时,发送装置101的各个单元在步骤S102中与接收装置103协作地执行数据传送(数据发送)。为了对应于这个处理,接收装置103的各个单元在步骤S123中与发送装置101协作地执行数据传送(数据接收)。
在这种数据传送中,适当地执行上述的各种处理。
如上所述,发送装置101和接收装置103相互协作地根据由用户等指定的图像质量请求或传送质量请求对各个单元执行设置。由此,发送装置101和接收装置103优化每个处理中的延迟时间,并且能够通过使用每个处理中的额外时间来减小浪费的延迟时间,以提高图像质量或传送质量。换句话说,可以抑制内容的质量的劣化。
接收缓冲时间确定处理
接下来,将参照图9的流程图描述图7的步骤S122中执行的接收缓冲时间确定处理的流程的例子。
当接收缓冲时间确定处理开始时,接收缓冲时间设置单元138在步骤S141中基于来自用户等的图像质量请求或传送质量请求设置各种延迟时间或等待时间。
例如,接收缓冲时间设置单元138基于图像质量请求或传送质量请求的设置值计算“可变压缩编码延迟请求时间”(该可变压缩编码延迟请求时间是作为“可变压缩编码延迟时间”请求的时间)、“冗余编码块接收等待请求时间”(该冗余编码块接收等待请求时间是作为“冗余编码块接收等待时间”请求的时间)、“ARQ重新传送包等待请求时间”(该ARQ重新传送包等待请求时间是作为“ARQ重新传送包等待时间”请求的时间)和“网络抖动应对缓冲请求时间”(该网络抖动应对缓冲请求时间是作为“网络抖动应对缓冲时间”请求的时间)。
虽然这些值如同它们在现有技术的方法中的情况一样用作设置值,但接收缓冲时间设置单元138重置这些值以便与其最大值一致。在步骤S142中,接收缓冲时间设置单元138设置“可变压缩编码延迟请求时间”、“冗余编码块接收等待请求时间”、“ARQ重新传送包等待请求时间”和“网络抖动应对缓冲请求时间”中的最大值作为“接收缓冲时间”,如下面的公式(4)中所示:
“接收缓冲时间”=MAX(“可变压缩编码延迟请求时间”,“冗余编码块接收等待请求时间”,“ARQ重新传送包等待请求时间”,“网络抖动应对缓冲请求时间”)(4)。
在公式(4)中,MAX()是用于计算最大值的函数。
当计算出“接收缓冲时间”时,接收缓冲时间设置单元138在步骤S143中设置“接收缓冲时间”作为“可变压缩编码延迟请求时间”、“冗余编码块接收等待请求时间”、“ARQ重新传送包等待请求时间”和“网络抖动应对缓冲请求时间”,如下面的公式(5)中所示:
“可变压缩编码延迟请求时间”=“冗余编码块接收等待请求时间”=“ARQ重新传送包等待请求时间”=“网络抖动应对缓冲请求时间”=“接收缓冲时间”(5)。
例如,假设可变压缩编码延迟请求时间221、冗余编码块接收等待请求时间222、ARQ重新传送包等待请求时间223和网络抖动应对缓冲请求时间224具有如图10的左侧所示的长度。
在这种情况下,可变压缩编码延迟请求时间221最长,因此,如图10的右侧所示,接收缓冲时间241被设置为与可变压缩编码延迟请求时间221相同的长度。可变压缩编码延迟时间231、冗余编码块接收等待时间232、ARQ重新传送包等待时间233和网络抖动应对缓冲时间234能够与接收缓冲时间241一致。
换句话说,在这种情况下,冗余编码块接收等待时间232、ARQ重新传送包等待时间233和网络抖动应对缓冲时间234分别被设置为比所请求的时间长。
再次参照图9,当设置了各个时间时,接收缓冲时间设置单元138在步骤S144中在ARQ单元136中设置“ARQ重新传送包等待时间”并使用它确定是否请求重新传送。
另外,在步骤S145中,接收缓冲时间设置单元138在接收缓冲器132中设置“网络抖动应对缓冲时间”。
在步骤S146中,接收缓冲时间设置单元138经由例如RTCP单元137向发送装置101通知“图像质量请求”、“传送质量请求”、“可变压缩编码延迟时间”和“冗余编码块接收等待时间”作为RTCP消息。
当该通知完成时,接收缓冲时间设置单元138完成接收缓冲时间确定处理,并且,流程返回到图7中的步骤S102,以执行步骤S103中的处理。
接收缓冲时间和处理参数设置处理
接下来,将参照图11的流程图描述图7的步骤S101中执行的接收缓冲时间和处理参数设置处理。
当接收缓冲时间和处理参数设置处理开始时,接收缓冲时间和处理参数设置单元119在步骤S161中获得经由RTCP单元117从接收装置103提供的RTCP消息中所包括的“图像质量请求”、“传送质量请求”、“可变压缩编码延迟时间”和“冗余编码块接收等待时间”。
在步骤S162中,接收缓冲时间和处理参数设置单元119在编码单元111中设置“可变压缩编码延迟时间”。在步骤S163中,接收缓冲时间和处理参数设置单元119在FEC单元112中设置“冗余编码块接收等待时间”。
在步骤S164中,速率控制单元121使用已提供的“图像质量请求”或“可变压缩编码延迟时间”来设置速率控制参数。例如,速率控制单元121设置编码器预期缓冲大小B(字节)以满足下面的公式(6)。另外,在公式(6)中,Bt_codec(秒)表示可变压缩编码延迟时间。另外,R(bps)表示包速率。
Bt_codec=B×8/R  (6)
在步骤S165中,FEC单元112使用“传送质量请求”和“冗余编码块接收等待时间”来设置FEC块参数。“冗余编码块接收等待时间”是通过平滑化传送FEC块中所包括的所有包所花费的时间的最大值。FEC单元112针对每个FEC块调整原始数据包的数量,使得该时间等于或小于“冗余编码块接收等待时间”。另外,FEC单元112设置例如冗余包的数量n-k以满足上述公式(3)。
当步骤S165中的处理完成时,接收缓冲时间和处理参数设置单元119完成接收缓冲时间和处理参数设置处理,并且流程返回到图7中的步骤S101以执行步骤S102中的处理。
如上所述,通过各种处理,发送装置101和接收装置103能够在不增加延迟的程度上确保每个延迟时间或等待时间尽可能长,由此使用额外时间来提高图像质量或传送质量。
更具体地讲,发送装置101在不增加延迟的程度上把编码单元111的“可变压缩编码延迟时间”设置得更长,并且能够由此把编码器预期缓冲大小B(字节)设置得更大。另外,发送装置101在不增加延迟的程度上把FEC单元112的“冗余编码块接收等待时间”设置得更长,并且能够由此把FEC块或冗余度设置得更大。
接收装置103能够在不增加延迟的程度上把ARQ单元136的“ARQ重新传送包等待时间”设置得更长。另外,接收装置103能够在不增加延迟的程度上把接收缓冲器132的“网络抖动应对缓冲时间”设置得更长。
如上所述,发送装置101和接收装置103能够通过使用每个处理中的额外时间来减少浪费的延迟时间,以提高图像质量或传送质量。换句话说,发送装置101和接收装置103能够抑制由于与数据传送有关的上述各种处理导致的内容的质量的劣化。
2、第二实施例
整体数据传送处理的另一例子
在以上描述中,虽然描述了仅通过来自用户等的请求确定接收缓冲时间或处理参数的情况,但本发明不限于此,而且,可以根据关于网络102的通信的状况设置接收缓冲时间或处理参数。
在这种情况下,通过RTCP单元117和RTCP单元137之间执行的包的发送和接收来观测关于网络102的通信的状况(网络状况信息)。因此,发送装置101和接收装置103的配置与上述的第一实施例(图1)中的发送装置101和接收装置103的配置相同。
在数据传送期间可以重复地执行网络状况信息的测量,并且可以根据最新的网络状况更新接收缓冲时间或处理参数。
在这种情况下,RTCP单元117和RTCP单元137也执行基本上与在第一实施例中描述的情况中的处理相同的处理。然而,在这种情况下,RTCP单元117在开始编码数据的传送之前传送用于网络状况预测量的伪数据。伪数据经由网络102被传送给RTCP单元137。RTCP单元137接收伪数据,并基于包中描述的当执行传送时的信息和当执行接收时的状况测量(预测量)网络状况。
在开始编码数据的传送之后,RTCP单元137使用传送的编码数据的RTP包来测量网络状况信息。
将参照图12的流程图描述在这种情况下的数据传送处理的流程的例子。在步骤S221中,以与图7中的步骤S121相同的方式,当接收装置103的接收缓冲时间设置单元138接收图像质量请求和传送质量请求时,RTCP单元137在步骤S222中向RTCP单元117发送各种数据(诸如,伪数据)以及从RTCP单元117接收各种数据以测量网络状况,并与RTCP单元117共享网络状况信息。在步骤S201中,发送装置101的RTCP单元117执行与步骤S222中的处理对应的处理。
当测量网络状况时,接收装置103的接收缓冲时间设置单元138执行接收缓冲时间确定处理。基本上以与参照图9的流程图描述的情况相同的方式执行这个处理。
然而,接收缓冲时间设置单元138不仅基于步骤S141中的图像质量请求和传送质量请求还基于在步骤S222中从RTCP单元137获得的网络状况信息计算各种请求时间。
例如,如果包损失率高,则“ARQ重新传送包等待请求时间”被设置为用于提高恢复性能的值。另外,例如,如果包损失率高,则“冗余编码块接收等待请求时间”被设置为满足公式(3)并与保持为等于或小于指定的冗余度的冗余包的数量和原始数据包的数量匹配的值。
另外,“网络抖动应对缓冲请求时间”被设置为等于或大于实际测量的网络抖动的值。
如上所述,根据已设置的请求时间设置各种延迟时间、等待时间等。发送装置101的接收缓冲时间和处理参数设置单元119在步骤S202中执行接收缓冲时间和处理参数设置处理。基本上以与参照图11的流程图描述的情况相同的方式执行这个处理。
换句话说,接收缓冲时间和处理参数设置单元119也使用由RTCP单元117获得的网络状况信息来确定冗余度或FEC块大小。在开始编码数据的传送之前,接收缓冲时间和处理参数设置单元119使用由RTCP单元117测量的网络状况预测量信息中所包括的包损失率p来确定原始数据包的数量k或冗余包的数量n-k以满足公式(3)。
当各种参数的设置完成时,接收装置103的各个单元在步骤S224中执行接收缓冲动态改变传送处理,其中动态地更新各种设置(诸如,接收缓冲时间)并且传送数据。为了对应于这个处理,发送装置101的各个单元在步骤S203中执行接收缓冲动态改变传送处理。
接收缓冲动态改变传送处理
参照图13的流程图,将描述由发送装置101和接收装置103执行的接收缓冲动态改变传送处理的流程的例子。
在步骤S241中,发送装置101的各个单元在特定时间传送数据。为了对应于这个处理,接收装置103的各个单元在步骤S261中在特定时间传送数据。
接收装置103的RTCP单元137在步骤S262中向RTCP单元117发送数据以及从RTCP单元117接收数据以测量网络状况并更新网络状况信息。为了对应于这个处理,发送装置101的RTCP单元117在步骤S242中测量网络状况并更新网络状况信息。
在步骤S263中,接收装置103的接收缓冲时间设置单元138基于更新的网络状况信息执行接收缓冲时间确定处理,以更新“可变压缩编码延迟请求时间”、“冗余编码块接收等待请求时间”、“ARQ重新传送包等待请求时间”和“网络抖动应对缓冲请求时间”,并根据各种更新的请求时间使用例如公式(4)或(5)来更新设置,诸如“可变压缩编码延迟时间”、“冗余编码块接收等待时间”、“ARQ重新传送包等待时间”和“网络抖动应对缓冲时间”。
以与图12中的步骤S223的情况相同的方式执行接收缓冲时间确定处理。
为了对应于这个处理,在步骤S243中,发送装置101的接收缓冲时间和处理参数设置单元119执行接收缓冲时间和处理参数设置处理。以与图12中的步骤S202的情况相同的方式执行这个处理。
在编码数据开始被传送之后,接收缓冲时间和处理参数设置单元119使用由RTCP单元117使用编码数据传送测量的网络状况信息中所包括的包损失率p来确定原始数据包的数量k或冗余包的数量n-k以满足公式(3)。
在步骤S244中,发送装置101确定传送是否完成,如果确定传送未完成,则流程返回到步骤S241以执行其后的处理。另外,在步骤S244中,如果确定传送完成,则发送装置101执行的接收缓冲动态改变传送处理完成。
在步骤S264中,接收装置103确定传送是否完成,如果确定传送未完成,则流程返回到步骤S261以执行其后的处理。另外,在步骤S264中,如果确定传送完成,则接收装置103执行的接收缓冲动态改变传送处理完成。
如上所述,通过根据网络状况以及来自用户等的请求执行参数的设置,发送装置101和接收装置103能够根据更实际的状况以更高的效率设置图像质量或传送质量,并且能够因此减少浪费的延迟时间。换句话说,发送装置101和接收装置103能够抑制内容的质量的劣化。
3、第三实施例
传送系统的配置
在以上描述中,虽然已描述了一对一地配置发送装置和接收装置的系统,但本发明不限于此,而且,形成传送系统的发送装置和接收装置的数量是任意的。例如,从多个发送装置发送的编码数据可以由单个接收装置接收。
图14是图示在这种情况下的传送系统的配置例子的示图。图14中显示的传送系统300基本上与传送系统100相同,但与传送系统100的情况不同的是,传送系统300包括多个发送装置(发送装置101-1到发送装置101-N(其中N是等于或大于2的整数))。
发送装置101-1到发送装置101-N分别具有与上述发送装置101相同的配置并执行相同的处理。如果在不对发送装置101-1到发送装置101-N进行彼此区分的情况下进行描述,则它们被简称为发送装置101。
传送系统300包括接收从每个发送装置101发送的RTP包的单个接收装置303,以替代接收装置103。
如图14中所示,接收装置303包括传送单元311、基准信号同步单元312、接收单元313-1到313-N、综合接收缓冲时间调整单元314和合成单元315。
通过与每个发送装置101的通信,传送单元311传送从基准信号同步单元312或接收单元313-1到313-N提供的信息,或者接收从每个发送装置101提供的信息并把该信息提供给基准信号同步单元312或接收单元313-1到313-N。
基准信号同步单元312通过与每个发送装置101的基准信号同步单元115的通信来对基准信号执行同步。同步的基准信号被提供给接收单元313-1到313-N。
如上所述,例如,当存在多个发送装置101时,用作主机(master)的接收装置303的基准信号同步单元312使所有的发送装置101与接收装置303同步,结果,所有的发送装置101能够与接收装置303同步。
接收单元313-1到313-N分别对应于发送装置101-1到发送装置101-N,接收从对应的发送装置101提供的RTP包,并通过解码输出视频数据。以下,如果在不对接收单元313-1到313-N进行彼此区分的情况下进行描述,则它们被简称为接收单元313。也就是说,预先准备等于或大于发送装置101的数量的接收单元313。换句话说,接收装置303能够接收从等于或小于嵌入的接收单元313的数量的发送装置101发送的包。
综合接收缓冲时间调整单元314使各个接收单元313中的接收缓冲时间一致。合成单元315合成从各个接收单元313输出的视频数据,并从接收装置303的视频输出端子“VIDEO OUT”输出合成的视频数据。
接收单元
图15是图示接收单元313的主要配置例子的框图。如图15中所示,接收单元313基本上具有与上述的接收装置103相同的配置。然而,接收单元313不具有接收装置103所具有的基准信号同步单元139。另外,接收单元313具有接收缓冲时间设置单元338以替代接收装置103所具有的接收缓冲时间设置单元138。
媒体同步单元140使用从接收单元313的外部基准信号同步单元312提供的基准信号(即,在各个发送装置101和各个接收单元313中同步的基准信号)控制接收缓冲器132或解码单元135中的RTP包的处理定时。
以与接收缓冲时间设置单元138相同的方式,接收缓冲时间设置单元338基于由用户等设置的图像质量请求或传送质量请求和由RTCP单元137收集的网络状况信息等设置各种时间或参数。
另外,如稍后所述,由综合接收缓冲时间调整单元314在接收单元313之间调整由接收缓冲时间设置单元338设置的各种时间。
输入单元141和输出单元142可以由各个接收单元313共享。例如,即使用户输入图像质量请求或传送质量请求到任何接收单元313,也可以使用相同的输入单元141和输出单元142。设置图像质量请求或传送质量请求的接收单元313的改变控制方法是任意的。例如,可以在GUI上设置用于改变的按钮。另外,用户可以一次在多个接收单元313中设置图像质量请求或传送质量请求。
整体数据传送处理
参照图16的流程图,将描述在这种情况下的数据传送处理的流程的例子。
在步骤S321中,接收装置303的每个接收单元313的接收缓冲时间设置单元338接收图像质量请求或传送质量请求。在步骤S322中,接收装置303的每个接收单元313的RTCP单元137与对应于每个接收单元313的每个发送装置101的RTCP单元117通信以测量网络状况,并产生网络状况信息。
为了对应于这个处理,每个发送装置101的RTCP单元117测量网络状况并获得网络状况信息。
在步骤S323中,基于该信息,接收装置303的每个接收单元313的接收缓冲时间设置单元338执行用于暂时设置接收缓冲时间的暂时接收缓冲时间确定处理。
当在每个接收单元313中确定暂时接收缓冲时间时,在步骤S324中,每个接收单元313的接收缓冲时间设置单元338和综合接收缓冲时间调整单元314相互协作地执行综合接收缓冲时间确定处理,并设置通过调整每个暂时接收缓冲时间获得的接收缓冲时间。
在步骤S325中,传送单元311向每个发送装置101通知通过上述处理获得的各种信息(例如,图像质量请求、传送质量请求、可变压缩编码延迟时间、冗余编码块接收等待时间等)。在步骤S302中,每个发送装置101接收该通知并执行接收缓冲时间和处理参数设置处理。
在步骤S303和S326中,每个发送装置101和接收装置303执行接收缓冲动态改变处理以测量最新的网络状况,并在基于所述状况更新各种设置的同时传送数据。
在以上描述中,虽然已描述了基于图像质量请求、传送质量请求和网络状况设置接收缓冲时间的情况,但本发明不限于此,而且,可以如第一实施例中一样仅基于图像质量请求和传送质量请求设置接收缓冲时间。在这种情况下,省略步骤S322或S301中的处理。
暂时接收缓冲时间确定处理
接下来,参照图17的流程图,将描述暂时接收缓冲时间确定处理的流程的例子。
在步骤S341中,接收装置303选择用于传送数据的接收单元313之中作为尚未执行处理的接收单元313的处理目标的接收单元313,以便对应于发送装置101。在步骤S342中,作为处理目标的接收单元313的接收缓冲时间设置单元338基于图像质量请求、传送质量请求、网络状况信息等来计算“可变压缩编码延迟请求时间”、“冗余编码块接收等待请求时间”、“ARQ重新传送包等待请求时间”和“网络抖动应对缓冲请求时间”。
另外,在步骤S343中,接收缓冲时间设置单元338设置“可变压缩编码延迟请求时间”、“冗余编码块接收等待请求时间”、“ARQ重新传送包等待请求时间”和“网络抖动应对缓冲请求时间”中的最大值作为暂时接收缓冲时间。
在步骤S344中,接收装置303确定是否所有的接收单元313已执行处理,如果确定存在尚未执行处理的接收单元313,则流程返回到选择新的接收单元313作为处理目标的步骤S341,并且重复执行其后的处理。
在步骤S344中,确定用于传送数据的所有的接收单元313已执行处理,接收装置303完成暂时接收缓冲时间确定处理,并且流程返回到图16中的步骤S323以执行步骤S324中的处理。
综合接收缓冲时间确定处理
接下来,将参照图18的流程图描述图16的步骤S324中执行的综合接收缓冲时间确定处理的流程的例子。
在步骤S361中,综合接收缓冲时间调整单元314获得在各个接收单元313中设置的暂时接收缓冲时间,并请求各个接收单元313获得暂时接收缓冲时间和传送延迟之和,从而把这些和的最大值设置为综合接收缓冲时间,如下面公式(7)中所示:
综合接收缓冲时间=MAX(暂时接收缓冲时间1+传送延迟时间1,暂时接收缓冲时间2+传送延迟时间2,......,暂时接收缓冲时间N+传送延迟时间N)(7)。
例如,如图19的上侧所示,由发送装置101中执行的处理引起的延迟时间由发送装置处理延迟351表示,由经由网络102的数据传送引起的延迟时间由传送延迟352表示,在接收装置303中设置的暂时接收缓冲时间由暂时接收缓冲时间353表示。
如图19的上部所示,发送装置101-1的发送装置处理延迟351由发送装置处理延迟351-1表示,发送装置101-1的传送延迟352由传送延迟352-1表示,发送装置101-1的暂时接收缓冲时间353由暂时接收缓冲时间353-1表示。
另外,发送装置101-2的发送装置处理延迟351由发送装置处理延迟351-2表示,发送装置101-2的传送延迟352由传送延迟352-2表示,发送装置101-2的暂时接收缓冲时间353由暂时接收缓冲时间353-2表示。
以下,这同样也适用于各个发送装置101,发送装置101-N的发送装置处理延迟351由发送装置处理延迟351-N表示,发送装置101-N的传送延迟352由传送延迟352-N表示,发送装置101-N的暂时接收缓冲时间353由暂时接收缓冲时间353-N表示。
为了方便描述,发送装置处理延迟351-1到发送装置处理延迟351-N具有相同的长度。
在这种情况下,关于发送装置101-1的和是暂时接收缓冲时间和传送延迟之和的最大值,因此把该和设置为综合接收缓冲时间。
再次参照图18,在步骤S362中,综合接收缓冲时间调整单元314选择用于传送数据的接收单元313之中作为尚未执行处理的接收单元313的处理目标的接收单元313,以便对应于几个发送装置101。
在步骤S363中,被选择为处理目标的接收单元313的接收缓冲时间设置单元338把在步骤S361中设置的综合接收缓冲时间和传送延迟之差设置为接收缓冲时间,如下面的公式(8)中所示:
接收缓冲时间K=综合接收缓冲时间-传送延迟K    (8)。
在图19中显示的例子的情况下,由于关于发送装置101-1的传送延迟352-1和暂时接收缓冲时间353-1之和为最大值,所以根据公式(7)和(8),如图19的下侧所示,发送装置101-1的接收缓冲时间354-1被设置为与暂时接收缓冲时间353-1相同。
分别以相同的方式计算发送装置101-2的接收缓冲时间354-2到发送装置101-N的接收缓冲时间354-N。结果,如图19的下侧所示,关于各个发送装置101的发送装置处理延迟351、传送延迟352和接收缓冲时间354之和彼此相同。
换句话说,在不增加延迟的程度上把各个发送装置101的接收缓冲时间354设置得更长。
再次参照图18,在步骤S364中,作为处理目标的接收单元313的接收缓冲时间设置单元338如公式(5)中一样把在步骤S363中设置的接收缓冲时间设置为可变压缩编码延迟时间、冗余编码块接收等待时间、ARQ重新传送包等待时间和网络抖动应对缓冲时间。
由此,在不增加延迟的程度上把各个延迟时间或等待时间设置得更长。
在步骤S365中,接收缓冲时间设置单元338在ARQ单元136中设置ARQ重新传送包等待时间。在步骤S366中,接收缓冲时间设置单元338在接收缓冲器132中设置网络抖动应对缓冲时间。
在步骤S367中,接收装置303确定是否所有的接收单元313已执行处理,如果确定存在尚未执行处理的接收单元313,则流程返回到选择尚未执行处理的新的接收单元313的步骤S362,并且所选择的接收单元313重复执行其后的处理。
在步骤S367中,确定用于传送数据的所有的接收单元313已执行处理,接收装置303完成综合接收缓冲时间确定处理,并且流程返回到图16中的步骤S324以执行步骤S325之后的处理。
另外,以与参照图11的流程图描述的情况相同的方式,执行图16的步骤S302中执行的各个发送装置101的接收缓冲时间和处理参数设置处理。
接收缓冲动态改变传送处理
接下来,将参照图20的流程图描述图16的步骤S303和S326中执行的接收缓冲动态改变传送处理的流程的例子。
另外,在每个发送装置101和与它对应的接收单元313之间执行接收缓冲动态改变传送处理。
虽然基本上以与参照图13描述的情况相同的方式执行这种情况,但在图13中显示的例子的情况下,接收装置103在步骤S263中执行接收缓冲时间确定处理,而在图20中显示的例子的情况下,接收装置303(接收单元313)在步骤S403中执行暂时接收缓冲时间确定处理,在步骤S404中执行综合接收缓冲时间确定处理,并在步骤S405中向对应的发送装置101通知通过上述处理获得的各种信息(例如,图像质量请求、传送质量请求、可变压缩编码延迟时间、冗余编码块接收等待时间等)。
换句话说,执行图16的步骤S323至S325中的处理(即,与开始数据传送之前相同的处理)。
以这种方法,发送装置101和接收装置303以与第二实施例相同的方式基于最新的网络状况更新各种设置,由此可以通过有效地使用各个处理中的额外时间来减小浪费的延迟时间,以提高图像质量或传送质量。换句话说,可以抑制内容的质量的劣化。
在仅基于来自用户等的请求执行各种设置的情况下,省略接收缓冲动态改变传送处理。
如上所述,传送系统100和传送系统300针对数据传送的每项处理使在接收装置中设置的延迟时间或等待时间与其最大值一致,以在不增加延迟时间的程度上对每个处理给予额外时间,并且,传送系统100和传送系统300使用该额外时间来设置用于每个处理的参数,以提高图像质量或传送质量。
以这种方法,传送系统100和传送系统300能够抑制内容的质量的劣化。
例如,通过有效地使用通过来自用户等的图像质量请求、传送质量请求、网络状况信息等确定的接收缓冲时间,可以在最大程度上提高视频质量或传送质量而不增加延迟时间。
另外,在可变压缩编码延迟时间是处理延迟时间的最大值并且这个值被设置为接收缓冲时间的情况下,冗余编码处理中的冗余编码块增大,并且冗余编码块接收等待时间被增加为与接收缓冲时间相同,由此提高突发损失抵抗性而不增加延迟时间。
另外,ARQ重新传送包等待请求时间和网络抖动应对缓冲请求时间也以这种方式增加,由此可以分别提高损失恢复性能或网络抖动可容许值。
另外,在冗余编码块接收等待时间是处理延迟时间的最大值的情况下,可变压缩编码延迟时间被增加为与接收缓冲时间相同,由此可以提高图像质量而不增加延迟时间。
在处理来自多个发送装置的传送以在接收装置中同步的情况下,调整接收缓冲时间使得能够处理多个编码数据以使其同步,并且调整处理参数使得根据调整的接收缓冲时间使实际压缩编码和解码处理时间或QoS控制处理时间等于或小于接收缓冲时间。由此,通过有效地使用设置为等于或大于通过为多个编码数据的同步处理设置的来自用户的图像质量请求、传送质量请求、网络状况信息等指定的时间的接收缓冲时间,可以在最大程度上提高视频质量或传送质量而不增加延迟时间。
另外,在以上描述中,虽然已描述了对传送的视频数据编码的情况,但本发明不限于此,而且可以在非压缩状态下传送视频数据。
4、第四实施例
个人计算机
上述的一系列处理可以由硬件或软件执行。在这种情况下,例如,如图21中所示,可以存在个人计算机的配置。
在图21中,个人计算机400的CPU(中央处理单元)401根据存储在ROM(只读存储器)402中的程序或从存储单元413载入到RAM(随机存取存储器)403的程序执行各种处理。RAM 403适当地存储CPU 401执行各种处理所需的数据等。
CPU 401、ROM 402和RAM 403经由总线404相互连接。总线404也连接到输入和输出接口410。
输入和输出接口410连接到输入单元411(由键盘、鼠标等构成)、输出单元412(由包括CRT(阴极射线管)或LCD(液晶显示器)的显示器、扬声器等构成)、存储单元413(由硬盘等构成)和通信单元414(由调制解调器等构成)。通信单元414经由包括互联网的网络执行通信。
驱动器415可选地连接到输入和输出接口410并在其上适当地装配可移动介质421(诸如,磁盘、光盘、磁光盘或半导体存储器),并且根据需要把从该可移动介质读取的程序或数据安装在存储单元413中。
当由软件执行上述一系列处理时,从网络或记录介质安装构成该软件的程序。
如图21中所示,例如,记录介质包括可移动介质421,诸如磁盘(包括软盘)、光盘(包括CD-ROM(压缩盘-只读存储器)和DVD(数字通用盘))、磁光盘(MD(迷你盘))或存储程序的半导体存储器,与装置主体分开地分布以便把程序传送给用户,并且还包括在嵌入在主体中的状态下的存储传送给用户的程序的ROM 402或存储单元413中所包括的硬盘。
由计算机执行的程序可以是根据本文描述的次序按时间顺序执行处理的程序,或者可以是并行地执行的程序或者在必要的定时(例如,当程序被访问时)执行处理的程序。
另外,在本说明书中,用于描述记录介质中记录的程序的步骤不仅包括根据描述的次序按时间顺序执行的处理,还包括即使不必按照时间顺序执行也并行地执行或分开地执行的处理。
在本说明书中,系统指的是由多个装置构成的整个装置。
在以上的描述中,使用单个装置(或处理单元)描述的配置可以由多个装置(或处理单元)构成。另一方面,使用多个装置(或处理单元)描述的配置可以由单个装置(或处理单元)一体地构成。另外,除了上述配置以外的其它配置可以被加入到每个设备(或每个处理单元)的配置。另外,如果作为整个系统的配置或操作基本上相同,则某一装置(或处理单元)的配置的一部分可以被包括在另一装置(或另一处理单元)的配置中。
本发明包含与2010年8月12日提交给日本专利局的日本在先专利申请JP 2010-180945公开的主题相关的主题,该专利申请的全部内容包含于此以资参考。
本领域技术人员应该理解,在不脱离所附权利要求或其等同物的范围的情况下,可以根据设计的需要和其它因素做出各种变型、组合、子组合和替换。

Claims (11)

1.一种信息处理装置,包括:
调整单元,该调整单元调整与数据传送有关的多个不同延迟元件的使数据传送延迟的延迟时间的相应长度,以与多个延迟时间中的最长延迟时间或者等于或大于所述最长延迟时间的预定时间匹配;和
设置单元,该设置单元在执行数据传送的处理的处理单元中设置由调整单元调整其长度的相应的多个延迟时间。
2.根据权利要求1所述的信息处理装置,其中,所述延迟时间是用于数据传送的QoS控制处理时间,并且
所述调整单元调整各个延迟时间的长度,以与作为QoS控制处理时间请求的QoS控制处理请求时间中的最长QoS控制处理请求时间或者等于或大于所述最长QoS控制处理请求时间的预定时间匹配。
3.根据权利要求2所述的信息处理装置,其中,所述QoS控制处理时间包括:
冗余编码块接收等待时间,该冗余编码块接收等待时间是从接收到冗余编码块的先导包到接收到冗余编码块的末端包的时间;
重新传送包等待时间,该重新传送包等待时间是等待重新传送包的时间;和
用于吸收网络抖动的网络抖动应对缓冲时间。
4.根据权利要求3所述的信息处理装置,其中,所述设置单元在重新传送包的重新传送处理单元中设置重新传送包等待时间,并且在暂时保持传送数据的保持单元中设置网络抖动应对缓冲时间。
5.根据权利要求3所述的信息处理装置,还包括参数设置单元,该参数设置单元使用作为对数据传送中的传送质量的请求的传送质量请求和冗余编码块接收等待时间,设置用于数据发送侧的QoS控制处理的参数。
6.根据权利要求3所述的信息处理装置,其中,在传送源中对数据编码,传送获得的编码数据,并且在传送目的地中对编码数据解码,
延迟时间包括当通过平滑化传送在编码中通过速率控制产生的编码数据时所需的可变压缩编码延迟请求时间,并且
所述信息处理装置还包括参数设置单元,该参数设置单元使用作为对数据的图像质量的请求的图像质量请求和可变压缩编码延迟请求时间,设置包括编码的缓冲大小的编码参数。
7.根据权利要求1所述的信息处理装置,还包括接收单元,该接收单元接收作为对数据的图像质量的请求的图像质量请求和作为对数据传送的传送质量的请求的传送质量请求,
其中,所述调整单元基于由所述接收单元接收到的图像质量请求和传送质量请求来设置作为各个延迟时间请求的延迟请求时间。
8.根据权利要求7所述的信息处理装置,还包括输出单元,该输出单元显示帮助输入由所述接收单元接收到的图像质量请求和传送质量请求的GUI。
9.根据权利要求1所述的信息处理装置,其中,在从多个发送装置到一个接收装置执行的数据传送中,所述调整单元针对每个发送装置调整延迟时间,并调整这些延迟时间,使得整个数据传送中的各个延迟时间在所述发送装置之间一致
10.一种信息处理装置的信息处理方法,包括:
使所述信息处理装置的调整单元能够调整与数据传送有关的多个不同延迟元件的使数据传送延迟的延迟时间的相应长度,以与多个延迟时间中的最长延迟时间或者等于或大于所述最长延迟时间的预定时间匹配;和
使所述信息处理装置的设置单元能够在执行数据传送的处理的处理单元中设置其长度被调整的相应的多个延迟时间。
11.一种能够使执行数据传送的计算机用作以下设备的程序:
调整单元,该调整单元调整与数据传送有关的多个不同延迟元件的使数据传送延迟的延迟时间的相应长度,以与多个延迟时间中的最长延迟时间或者等于或大于所述最长延迟时间的预定时间匹配;和
设置单元,该设置单元在执行数据传送的处理的处理单元中设置由调整单元调整其长度的相应的多个延迟时间。
CN2011102131367A 2010-08-12 2011-07-28 信息处理装置和方法以及程序 Pending CN102378003A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010-180945 2010-08-12
JP2010180945A JP5598155B2 (ja) 2010-08-12 2010-08-12 情報処理装置および方法、並びに送受信システム

Publications (1)

Publication Number Publication Date
CN102378003A true CN102378003A (zh) 2012-03-14

Family

ID=45564758

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011102131367A Pending CN102378003A (zh) 2010-08-12 2011-07-28 信息处理装置和方法以及程序

Country Status (3)

Country Link
US (1) US10306268B2 (zh)
JP (1) JP5598155B2 (zh)
CN (1) CN102378003A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103716718A (zh) * 2013-12-16 2014-04-09 广州华多网络科技有限公司 数据包的传输方法及装置
CN104221317A (zh) * 2012-06-04 2014-12-17 松下知识产权经营株式会社 发送装置、接收装置、发送方法及接收方法
WO2016107215A1 (zh) * 2014-12-30 2016-07-07 华为技术有限公司 一种图像处理方法与装置
CN107251564A (zh) * 2015-03-05 2017-10-13 三菱电机株式会社 数据处理装置、数据处理方法及数据处理程序

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013062624A (ja) * 2011-09-12 2013-04-04 Sharp Corp 再生装置、再生方法、配信装置、配信システム、再生プログラムおよび記録媒体
JP5899518B2 (ja) * 2012-02-06 2016-04-06 パナソニックIpマネジメント株式会社 サーバ装置、システム制御方法及びシステム制御プログラム
CN104247317B (zh) * 2012-06-04 2018-06-15 松下知识产权经营株式会社 发送装置、接收装置、发送方法及接收方法
JP2014093584A (ja) * 2012-11-01 2014-05-19 Sony Corp 送信装置、送信方法、受信装置、受信方法およびコンピュータプログラム
JP2015002462A (ja) 2013-06-17 2015-01-05 ソニー株式会社 画像圧縮回路、画像圧縮方法、および伝送システム
US10320520B2 (en) * 2013-11-15 2019-06-11 Hitachi, Ltd. Communication device, system and method
US20150143439A1 (en) * 2013-11-19 2015-05-21 Sony Corporation Providing increased bandwidth for transmission of audio video content and supplemental content associated therewith
GB2521441B (en) * 2013-12-20 2016-04-20 Imagination Tech Ltd Packet loss mitigation
WO2016203870A1 (ja) * 2015-06-17 2016-12-22 ソニー株式会社 送信装置、送信方法、及び通信システム
US20170187635A1 (en) * 2015-12-28 2017-06-29 Qualcomm Incorporated System and method of jitter buffer management
JP6533761B2 (ja) 2016-05-18 2019-06-19 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、情報処理システム、および情報処理方法
JP6796233B2 (ja) * 2016-09-05 2020-12-09 株式会社メディアリンクス 映像切替システム
EP3382918B1 (en) * 2017-03-30 2022-09-28 ADVA Optical Networking SE System and method of clock management in a packet data network
CN112702630A (zh) * 2017-05-27 2021-04-23 华为技术有限公司 一种故障检测方法、监控设备及网络设备
US10521881B1 (en) * 2017-09-28 2019-12-31 Apple Inc. Error concealment for a head-mountable device
FR3072237B1 (fr) * 2017-10-10 2019-10-25 Bull Sas Procede et dispositif pour la gestion dynamique du delai de retransmission de message sur un reseau d'interconnexion
US11876790B2 (en) * 2020-01-21 2024-01-16 The Boeing Company Authenticating computing devices based on a dynamic port punching sequence
US20210400338A1 (en) * 2020-06-19 2021-12-23 Apple Inc. Systems and methods of video jitter estimation

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002185850A (ja) * 2000-12-11 2002-06-28 Nippon Telegr & Teleph Corp <Ntt> 遠隔映像選択混合方法及びシステム
US20080273520A1 (en) * 2007-05-04 2008-11-06 Samsung Electronics Co. Ltd. NETWORK ARCHITECTURE FOR DYNAMICALLY SETTING END-TO-END QUALITY OF SERVICE (QoS) IN A BROADBAND WIRELESS COMMUNICATION SYSTEM
WO2009133019A2 (en) * 2008-04-30 2009-11-05 Thomson Licensing Delivery delay compensation on synchronised communication devices in a packet switching network
WO2010013376A1 (ja) * 2008-07-30 2010-02-04 パナソニック株式会社 デジタル放送再生装置およびデジタル放送再生方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6985501B2 (en) * 2000-04-07 2006-01-10 Ntt Docomo, Inc. Device and method for reducing delay jitter in data transmission
US8842555B2 (en) * 2005-10-21 2014-09-23 Qualcomm Incorporated Methods and systems for adaptive encoding of real-time information in packet-switched wireless communication systems
JP4840365B2 (ja) * 2005-11-28 2011-12-21 日本電気株式会社 通信装置、通信システム、通信方法、および、通信プログラム
JP4371120B2 (ja) 2006-05-16 2009-11-25 ソニー株式会社 画像処理装置及び画像処理方法、プログラム及び記録媒体
JP4670902B2 (ja) * 2008-05-30 2011-04-13 ソニー株式会社 送信装置、送信方法および受信装置
US8468426B2 (en) * 2008-07-02 2013-06-18 Apple Inc. Multimedia-aware quality-of-service and error correction provisioning
US8929443B2 (en) * 2009-01-09 2015-01-06 Microsoft Corporation Recovering from dropped frames in real-time transmission of video over IP networks
US8289870B2 (en) * 2009-09-23 2012-10-16 Avaya Inc. Priority-based, dynamic optimization of utilized bandwidth
JP5672840B2 (ja) * 2010-08-12 2015-02-18 ソニー株式会社 情報処理装置および方法、並びにプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002185850A (ja) * 2000-12-11 2002-06-28 Nippon Telegr & Teleph Corp <Ntt> 遠隔映像選択混合方法及びシステム
US20080273520A1 (en) * 2007-05-04 2008-11-06 Samsung Electronics Co. Ltd. NETWORK ARCHITECTURE FOR DYNAMICALLY SETTING END-TO-END QUALITY OF SERVICE (QoS) IN A BROADBAND WIRELESS COMMUNICATION SYSTEM
WO2009133019A2 (en) * 2008-04-30 2009-11-05 Thomson Licensing Delivery delay compensation on synchronised communication devices in a packet switching network
WO2010013376A1 (ja) * 2008-07-30 2010-02-04 パナソニック株式会社 デジタル放送再生装置およびデジタル放送再生方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104221317A (zh) * 2012-06-04 2014-12-17 松下知识产权经营株式会社 发送装置、接收装置、发送方法及接收方法
CN104221317B (zh) * 2012-06-04 2018-01-23 松下知识产权经营株式会社 发送装置、接收装置、发送方法及接收方法
CN103716718A (zh) * 2013-12-16 2014-04-09 广州华多网络科技有限公司 数据包的传输方法及装置
CN103716718B (zh) * 2013-12-16 2017-03-01 广州华多网络科技有限公司 数据包的传输方法及装置
WO2016107215A1 (zh) * 2014-12-30 2016-07-07 华为技术有限公司 一种图像处理方法与装置
CN107251564A (zh) * 2015-03-05 2017-10-13 三菱电机株式会社 数据处理装置、数据处理方法及数据处理程序
CN107251564B (zh) * 2015-03-05 2018-08-28 三菱电机株式会社 数据处理装置及数据处理方法

Also Published As

Publication number Publication date
US10306268B2 (en) 2019-05-28
JP5598155B2 (ja) 2014-10-01
JP2012044252A (ja) 2012-03-01
US20120039194A1 (en) 2012-02-16

Similar Documents

Publication Publication Date Title
CN102378003A (zh) 信息处理装置和方法以及程序
CN103069835B (zh) 信息处理装置和方法
JP5493471B2 (ja) 情報処理装置および方法
JP4883076B2 (ja) 情報処理装置および方法
JP5162939B2 (ja) 情報処理装置および方法、並びにプログラム
JP5482178B2 (ja) 送信装置および方法、並びに、受信装置および方法
JP5397700B2 (ja) 情報処理装置および方法
CN102215320A (zh) 发送设备、接收设备、控制方法和通信系统
CN102215319A (zh) 延迟控制器、控制方法和通信系统
CN101754018A (zh) 信息处理器及其方法
CN101174918B (zh) 发送设备、发送方法和通信系统
JP5610199B2 (ja) 受信装置、受信方法、及び通信システム
CN103813175A (zh) 传输装置、传输方法、接收装置、接收方法和计算机程序
WO2013154025A1 (ja) 情報処理装置および方法、並びに、プログラム
CN100527699C (zh) 通过无线网络进行通信的服务器系统
CN104205851A (zh) 信息处理装置和方法以及程序
US20110176742A1 (en) Image processing apparatus and image processing method
CN103460697A (zh) 显示控制装置、显示控制方法和程序
JP4541758B2 (ja) 画像伝送装置
JP2006054562A (ja) パケット伝送システム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20120314