CN107580781A - 视频编码器 - Google Patents

视频编码器 Download PDF

Info

Publication number
CN107580781A
CN107580781A CN201580078782.3A CN201580078782A CN107580781A CN 107580781 A CN107580781 A CN 107580781A CN 201580078782 A CN201580078782 A CN 201580078782A CN 107580781 A CN107580781 A CN 107580781A
Authority
CN
China
Prior art keywords
video
data
packet
video data
channel
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.)
Granted
Application number
CN201580078782.3A
Other languages
English (en)
Other versions
CN107580781B (zh
Inventor
R·兰博特
G·英尼斯
A·迪兹伯里
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.)
Emperor Shun Security Co Ltd
Original Assignee
Emperor Shun Security Co Ltd
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 Emperor Shun Security Co Ltd filed Critical Emperor Shun Security Co Ltd
Publication of CN107580781A publication Critical patent/CN107580781A/zh
Application granted granted Critical
Publication of CN107580781B publication Critical patent/CN107580781B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234354Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering signal-to-noise ratio parameters, e.g. requantization
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6131Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via a mobile phone network
    • 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6583Acknowledgement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8126Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts
    • H04N21/814Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts comprising emergency warnings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/183Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a single remote source
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/183Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a single remote source
    • H04N7/185Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a single remote source from a mobile camera, e.g. for remote control

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • Emergency Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

公开了一种用于通过信道将视频数据发送到服务器(4)的视频编码器(2)。视频压缩器(16)可以使用可调整的压缩系数来压缩视频数据。复用器/包构造器(18)可以从该压缩器接收压缩视频以及非视频数据,并且可以使数据排队以供传输。提供了带宽监视器(20),用于基于传输的数据分组的特性(包括它们往返于服务器的往返行进时间)来监视信道的性能。该压缩器(16)可以基于由该带宽监视器确定的该信道的性能以及由分组构造器接收的非视频数据的量来修改可调整的压缩系数。具体地,该压缩系数可以被改变以使得如果可用带宽较少,并且如果在信道中需要空间用于非视频数据,则可以迅速地但以降低的质量来传输视频数据。这可以允许传输非视频数据,而不会中断直播视频馈送或引入任何延延时。

Description

视频编码器
本发明涉及一种通信系统,该通信系统包括视频编码器或自适应视频复用器,用于通过信道传输压缩视频数据,所述压缩视频数据可以与其它数据复用。具体地,本发明涉及一种视频编码器,该视频编码器可以调节数据在信道中传输的速率,以确保能够以低延迟(latency)提供视频。
已经开发出多种技术来允许通过低带宽信道传输视频。这些技术具有许多应用,包括视频电话呼叫、视频流式传输(video streaming)和远程视频监控。
在一些应用中,能够通过这些低带宽信道提供“直播”视频是重要的。“直播”视频是通用术语,但是因为多种因素引入小延时,所以实际上不可能在通信系统中提供真正的“直播”视频。这意味着,与摄像机捕获的视频相比,在观看者的屏幕上显示的视频通常稍微具有延时。延时可以通过传输、压缩/解压缩、用户设备处的渲染、丢帧以及排队/缓冲引入。在一个实施例中,如果传输系统试图传输数据大小超过立即可用带宽的视频帧,则可以引入延时;如果通过具有可变带宽的链路(诸如蜂窝链路)来传输视频,则此情况可以发生。在这些情况下,必须使大视频帧排队和缓冲,这意味着,只能延时接收大视频帧。随着时间的推移,这可以产生累积的延迟,这意味着,在观看者的屏幕上显示的视频实际上稍微落后于实时。在一些安全监控应用中,传输视频中的此种类型的延迟可能是一个关键问题。
如果通过无线信道传输其他类型的数据存在压力,则也可以在观看者的设备处将延时引入到视频。这会减小可提供给视频的带宽,而这会增大需要在传输之前使视频帧排队和缓冲的可能性。
降低延时的风险的一个选择是对视频数据使用高速率压缩,以使得其数据速率被维持在信道的平均带宽以下。这可以允许视频数据被成功地传输,即使带宽变化或在信道中传输附加数据。此方法的缺点是,视频可能被压缩地超过必要的压缩,这意味着可用的带宽可能未被充分地利用。
本发明的一个目的是提供可以使通过低带宽信道传输视频延时最小化的视频编码器或自适应视频复用器以及方法。
根据本发明,提供了一种被配置为通过信道发送视频数据的视频编码器,该编码器包括:一个压缩器,被配置为使用可调整的压缩系数来压缩视频数据;一个分组构造器(packet constructor),被配置为从该压缩器接收压缩视频、使数据排队以供传输、由排队的数据构造数据分组以及通过该信道传输构造的数据分组;以及一个带宽监视器,被配置为基于传输的数据分组的特性来监视该信道的性能,其中视频压缩器被配置为基于排队的数据的至少一个属性并且响应于由该带宽监视器确定的该信道的性能来修改该压缩系数。
以此方式,该解码器可以优化视频数据的压缩,以使得它可以适应信道中的可用带宽。因此,对于可变带宽信道(诸如蜂窝链路)可以优化视频传输。如果该带宽监视器检测到信道中的可用带宽低,例如信道正挣扎,则该带宽监视器可以指示该视频压缩器使用较高的压缩系数。这可以允许以降低的质量来发送视频,以使得不超过可用带宽。另一个方面,如果该带宽监视器检测到信道中存在额外的带宽可用,则该带宽监视器可以指示该视频压缩器使用较低的压缩系数。这可以允许以由信道条件所允许的最高质量传输直播视频数据。
也可以根据排队的数据的至少一个属性来修改可调整的压缩系数。例如,如果数据已经被排队以供发送但尚未发送,则可以调整该压缩系数。在这些情况下,可以增大该压缩系数。这可以允许以降低的数据速率发送视频。这可以降低视频对信道的需求,从而允许信道中有空间用于发送排队的数据。排队的数据可以是视频数据或非视频数据。
该带宽监视器优选地被配置为测量通过信道传输数据分组所需的时间。这可以指示信道的性能。如果数据分组的传输时间高或增加了,则这可以指示信道的带宽可用性低。在这些情况下,可以增大压缩系数以降低传输的视频的数据速率(和质量),从而降低信道上的数据要求。
视频编码器可以包括一个接收器,该接收器被配置为从服务器接收确认,所述确认是响应于传输的数据分组发送的。优选地,该带宽监视器被配置为测量在传输数据分组之后接收到确认所需的时间。以此方式,视频编码器可以测量向服务器发送数据分组和从服务器发送确认的往返时间。
在一个优选的实施方案中,排队但尚未传输的数据的数目被用来调整视频压缩器使用的压缩系数。替代地或附加地,排队的数据的类型可能是相关的。在一个实施例中,可以根据排队的数据是视频数据、时间关键数据还是非时间关键数据来调整该压缩系数。排队的数据的量也可以是有影响的,并且如果队列中存在大量未发送的数据,则可以使用较高的压缩系数。
在一些实施方案中,如果没有从服务器接收到确认,则可以使数据重新排队以供传输。如果重新排队的数据是待定的(pending),则该压缩器可以使用较高的压缩系数。这可以降低直播视频的数据速率,以允许信道中有空间用于重新发送数据。这可以允许重新发送数据,而不会中断直播视频数据的连续提供。
该分组构造器优选地被配置为接收非视频数据以供在信道中传输。该压缩器可以响应于该信道的性能和该分组构造器接收的(并且被排队以供传输的)非视频数据的量来修改该压缩系数。如果该分组构造器接收到非视频数据,则可以通过调整压缩系数来降低视频质量,以释放信道中用于非视频数据的带宽。因此,非视频数据可以与视频数据一起在信道中发送,而不会在直播视频馈送中引入任何时间延时。从观看者的角度来看,这可以被几乎看不出地实现。视频质量当然会略有下降,但是观看者将不太可能注意到这一点,原因是视频质量反正是基于信道的性能而动态地改变的。
优选地,在视频编码器中的单个端口和服务器中的单个端口之间传输视频数据和非视频数据。以此方式,所有类型的数据都可以在单个信道中复用。
该分组构造器可以包括用于视频数据和非视频数据的至少一个缓冲器。优选地,该带宽监视器被配置为指示该视频压缩器响应于在相关的缓冲器中存在排队的非视频数据来修改该压缩系数。以此方式,非视频数据可以被优先传输。如果缓冲器中存在任何非视频数据,则这可以被检测到,并且该压缩系数可以相应地被调整以在信道中为非视频数据留出空间。
非视频数据可以包括较高优先级数据和较低优先级数据,所述较高优先级数据可以是时间关键数据,所述较低优先级数据可以是非时间关键数据。在一个布置中,每当分组构造器接收到较高优先级数据,就无延时地发送较高优先级数据。在一个实施例中,较高优先级数据可以包括时间关键数据(诸如报警),所述时间关键数据在监控情景中必须被尽可能快地传达。迅速传输时间关键数据可能中断直播视频的提供,导致数据在缓冲器中排队。检测到排队的数据可能会引起压缩系数的修改。这可以允许以较低的数据速率传输直播视频数据,从而允许有时间传输排队的数据。
较低优先级的数据可以是非时间关键的。在一个布置中,当分组构造器接收到非时间关键数据时,可以调整压缩系数。这可以允许信道中有空间用于非时间关键数据。
优选地,仅当已经传输所有排队的视频数据时才传输非视频数据,诸如非时间关键数据。因此,仅当视频缓冲器已经被清空并且在信道中存在可用的带宽时,才可以传输非时间关键数据。换句话说,当分组构造器接收到非视频数据时可以修改该压缩系数,以清空视频数据的队列并且使带宽可用于非视频数据。以此方式,可以传输非视频数据,而不会在视频数据中引入任何延迟,这在一些安全监控应用中是至关重要的。通过修改该压缩系数,可以迅速地但以略微较低的质量传输视频数据,以使得可以使带宽可用于非视频数据,而不会中断直播视频馈送。
根据本发明的另一个方面,提供了一种通信系统,该通信系统包括如先前所限定的视频编码器和用于通过信道接收数据分组的服务器。该服务器可以通过互联网信道将接收的数据分组转发给观看者。优选地,在服务器和观看者之间提供宽带信道。该宽带信道优选地具有比服务器和编码器之间的信道明显更高的带宽,这意味着,此信道中的数据优化不那么重要。在一些情况下,该服务器和观看客户端之间的带宽也可能需要管理。在一个实施方案中,该服务器指示该编码器降低用作带宽适应过程的上限的最大带宽值。
通常,从服务器到观看客户端的信道带宽高于编码器和服务器之间的信道带宽。如果不是这种情况,则可以利用类似的机制来管理带宽,其中由服务器指示编码器降低它可以生成数据的最大带宽。
根据本发明的又一个方面,提供了一种通过信道发送视频数据的方法,所述方法包括以下步骤:使用可调整的压缩系数压缩视频数据;使数据排队以供传输;构造包括压缩视频的数据分组;通过该信道传输构造的数据分组;基于传输的数据分组的特性来监视该信道的性能;以及基于该信道的性能和排队的数据的至少一个属性来修改该压缩系数。
根据本发明的又一个方面,提供了一种其上存储有计算机程序的非暂时性计算机可读存储介质,该计算机程序包括处理器可读指令,所述处理器可读指令在被执行时指导设备执行动作,所述动作包括:使用可调整的压缩系数压缩视频数据;使数据排队以供传输;构造包括压缩视频的数据分组;通过信道传输构造的数据分组;基于传输的数据分组的特性监视该信道的性能;以及基于该信道的性能和排队的数据的至少一个属性来修改该压缩系数。
方法特征可以被设置为对应的设备特征,且反之亦然。
现在将仅通过实施例的方式参考附图来描述本发明的实施方案,其中:
图1是本发明的一个实施方案中的传输系统的示意图;
图2是本发明的一个实施方案中的编码器和服务器之间的通信架构的示意图;
图3是示出视频编码器中的数据流动的示意图;
图4是示出与视频编码器通信的服务器中的数据流动的示意图;
图5至图11示出编码器中的缓冲器的实施例,并且描绘展示如何分配和删除数据块的情景;
图12至14示出服务器中的已接收数据缓冲器的实施例,并且描绘展示如何分配和删除数据块的情景;
图15是示出编码器中的带宽监视器的操作的流程图;以及
图16是示出编码器中的判定块的逻辑流程图。
图1是包括视频编码器2和服务器4的传输系统的示意图,该视频编码器2具有蜂窝收发器6,该服务器4具有蜂窝收发器8。编码器2可操作以通过蜂窝链路向服务器4发送视频数据、时间关键数据和非时间关键数据。服务器4可操作以通过蜂窝链路向编码器2发送时间关键数据和非时间关键数据。
服务器4通过常规网络24(诸如互联网)连接到用户设备22。可以在服务器4和用户设备22之间使用许多替代连接,包括低带宽信道。服务器4被配置为通过互联网向用户设备22转发从编码器2接收的视频数据和/或其他数据。通常,服务器4和用户设备22之间提供的连接容量高于在服务器4和编码器2之间的蜂窝链路中可能的连接容量。因此,通常可以将视频数据转发到用户设备22,而不会因为可用带宽低而在视频中引入任何进一步的延时。
编码器2被连接到视频摄像机10和安全传感器12。安全传感器12可以包括温度传感器、绊线传感器(trip wire sensor)、应变仪等。传感器12可以进行检测并且向编码器2中的CPU 14发送数据。视频摄像机10包括麦克风13和扬声器11。麦克风13可以捕获声音数据以供传输到服务器4,并且扬声器11可以被用来播放从服务器4接收的声音数据。
视频摄像机10被配置为从场景捕获视频并且将其提供给编码器2中的压缩器16。压缩器16可操作以使用可调整的压缩系数来压缩视频。复用器18从视频压缩器16接收压缩视频,并且还从CPU 14接收时间关键数据和非时间关键数据。这些数据被复用到单个信道中,并且通过蜂窝链路被传输到服务器4。
所述编码器包括带宽监视器20,该带宽监视器被配置为监视已经在信道中传输的数据分组的特性。带宽监视器20还可操作以指示视频压缩器16响应于信道中改变的条件来改变所述可调整的压缩系数。下文进一步详细描述带宽监视器20的操作。
图2是编码器2和服务器4之间的通信架构的示意图。使用单个TCP链路和单个UDP流来在编码器2和服务器4之间传送数据。对于所有UDP流量,在服务器4和编码器2上使用单个端口。
提供TCP链路来建立从编码器2到服务器4的连接,以提供动态IP地址分配。然后,此控制信道被用来启动UDP流。其后,TCP链路上的唯一流量是周期性保持有效的消息,以确保为编码器2和服务器4之间的链路维持路由表。
一旦建立UDP流,编码器2中的复用器18以维持编码器2和服务器4之间的数据报路由表所必需的最小频率发出分组。如果没有数据可供传输,则有效载荷将不多于几个字节。当生成数据以供传输时,分组速率和分组大小将增大到最高定额。服务器4将类似地将UDP分组发回到编码器2,但是通常将仅响应于接收的分组来发出分组。
如果没有数据供交换,则UDP流可以被关闭,其中这样将减小“保持有效”数据的容积,从而降低任何数据使用成本。一旦UDP流被关闭,服务器4必须使用TCP链路来重新打开UDP流才可以启动正常操作。在UDP流被关闭的情况下,编码器2可以经由TCP控制链路发送时间关键数据,诸如报警信号。
图3是示出编码器2中的数据流动的示意图。复用器18从相应的缓冲器26、28、30接收三种类型的数据,并且每种类型的数据被以不同方式处理。首先,复用器18从视频缓冲器26接收视频。视频被视频压缩器16压缩,并且所得到的数据分组被直接加载到视频缓冲器26中。其次,复用器18从非时间关键数据缓冲器28接收非时间关键数据。再次,复用器18从时间关键数据缓冲器30接收时间关键数据。编码器2中的非时间关键数据的实施例包括高分辨率图像,高分辨率图像可以应请求被传输到服务器4,或从编码器2数据存储的其他数据检索到。编码器2中的时间关键数据的实施例包括可以由传感器12触发的报警事件或来自麦克风13的音频数据。
每个缓冲器26,28,30向复用器18提供数据块。缓冲器26,28,30还响应于数据分组的成功传输从服务器4接收确认。这些确认允许从相应的缓冲器移除数据块,如参考图5-图11更详细地解释的。
视频缓冲器26将其流出速率报告给带宽监视器20。此外,非时间关键数据缓冲器28将其待定的数据块的数目报告给带宽监视器20。此外,复用器18将估计的可用信道带宽报告给带宽监视器20。这允许带宽监视器20指示压缩器16响应于信道中的数据分组的特性以及非视频数据的带宽要求来调整其压缩系数。
所有缓冲器26、28、30还将排队的数据块的数目报告给带宽监视器。相应的缓冲器26、28、30中排队的数据块的此数目还被用来调整压缩器16中的压缩比率,如下文将进一步详细地解释的。
除了向服务器4发送数据之外,复用器18还从服务器4接收数据,并且向已接收数据缓冲器32提供数据块。因此,复用器18实际上是复用器/解复用器设备。接收的数据可以包括视频摄像机10遥测、用于扬声器11的音频数据和固件更新,所述视频摄像机10遥测包括转向指令和/或平移、倾斜、缩放(PTZ)指令。
图4是示出服务器4中的数据流动的示意图。服务器4可操作以向编码器2发送非时间关键数据和时间关键数据。服务器4中的复用器36可以向编码器2发送数据和从编码器2接收数据(从而既是复用器又是解复用器)。当向编码器2发送数据时,复用器36从非时间关键数据缓冲器38和时间关键数据缓冲器40接收数据分组。时间关键数据的实施例包括摄像机遥测指令和/或将待要通过编码器2中的扬声器11重复的音频消息。非时间关键数据的一个实施例是用于编码器2的软件更新。来自这些缓冲器38、40的数据在复用器36中被组合,并且通过蜂窝链路和UDP流被传输到编码器2。缓冲器38、40向复用器36提供数据块,并且如果在编码器2处成功地接收相关的数据分组,则接收确认。只有在成功接收数据块时,才将它们从缓冲器38、40删除。
服务器4还包括用于从编码器2接收数据的已接收数据缓冲器42。当然,接收的数据包括视频流以及任何时间关键数据或非时间关键数据。
服务器4包括用于建立和控制服务器4和编码器2之间的TCP链路的TCP信道控制器44。在编码器2中设置对应的TCP信道控制器34。
下文参考图5-图11解释对编码器2中的缓冲器26、28、30和服务器4中的缓冲器38、40中的数据块的管理。
在图5中,示出一个循环缓冲器,该循环缓冲器具有十六个可以分配数据的可用块。在一个实施例中,向缓冲器分配两个消息,消息A是103字节,消息B是37字节。在视频缓冲器26的该实施例中,消息A可以对应于第一视频帧,并且消息B可以对应于第二视频帧。在此实施例中,该缓冲器中的每个块可以容纳32字节。因此,消息A分裂到四个块,并且消息B被分裂到两个块。在此实施例中,复用器18能够发送待被发出的下一个UDP有效载荷(分组N)中的96字节的数据。因此,复用器18将来自缓冲器的前三个块复制。这些块被标记为被发送但未被接收,并且它们尚未从缓冲器删除。
在图6中,向该缓冲器分配一个新消息。该消息是240字节,并且分配到五个块。在此实施例中,复用器18具有在下一个UDP分组N+1的有效载荷中发送五个块的能力。因此,复用器18复制消息A的剩余部分、消息B的全部和消息C的前两个块,以被分配给UDP分组N+1。
在接收到UDP分组N时,服务器4将作为UDP分组的一部分的确认发送回到编码器2。在此实施例中,来自服务器4的确认将识别到缓冲器中的前三个块已经被正确地发送。因此,可以从该缓冲器删除这些块,如图7中示出的。在图7的实施例中,又一个消息D被分配给缓冲器。消息D是190字节,并且被分裂在六个块上。然而,该缓冲器仅具有五个块可用。因此,最后一个块尚不能够被分配给缓冲器。然后,复用器18可以准备下一个UDP分组N+2。在此实施例中,复用器18具有在分组N+2中发送四个块的能力。这对应于由复用器18复制并且通过蜂窝信道发送到服务器4的块C3-C6。
在图8中,由于该缓冲器满了,因此没有更多的块可以被分配给该缓冲器。然后,复用器18准备包括块C7、C8、D1、D2和D3的数据分组N+3。这些块被复制在分组N+3中,该分组N+3然后被发送到服务器4。在此实施例中,服务器4未能接收到UDP分组N+1。然而,成功接收到分组N+2。图8示出在分组N+2的确认之后的此过程,其中从缓冲器删除对应的块(C3-C6)。然而,在分组N+1中发送的块保持在该缓冲器中。下一步是复用器准备分组N+4,该分组N+4在此实施例中包括单个数据块(D4)。
由于分组N+1未被服务器4接收,所以必需启动重新发送,否则数据将丢失。在此实施例中,如果编码器2接收到指定数目的后续分组确认,则启动重新发送。附加地或替代地,如果在预定时间周期内没有接收到确认,则可以启动重新发送。图9示出启动重新发送分组N+1,其中相关的块被标记为已重新发送。这些块优先于缓冲器中的任何未发送块,并且根据后续分组中的空间而被分配。因此,分组N+1不是必须以相同的形式被重新发送。相反,根据可用的空间,原始分组N+1中的块被分配给新的分组。在此实施例中,复用器18准备分组N+5。在此实施例中,分组N+5具有用于三个块的空间,并且块A4、B1和B2被分配。
如图10中示出的,在分组N+6中,复用器18分配被标记为已重新发送的块C1和C2。分组N+6中存在用于再多一个块的空间,从而未发送的块D5被分配。图10还示出了,服务器4将分组N+5确认为已接收。因此,可以从缓冲器删除与分组N+5相关联的块。缓冲器现在存在可用空间。图10示出,消息D的剩余部分与包括单个块的新消息E一起被写入缓冲器。
图11示出用于此实施例的过程的最后一部分。在此实施例中,复用器18准备分组N+7,该分组N+7包括两个块:D6和E1。然后从服务器接收到对于分组N+6的确认,并且从缓冲器删除对应的块。最后,对应于分组N+4的块被标记为已重新发送,这是因为没有从服务器4接收到对应的确认。
以上实施例中的假设是,需要可靠传输消息数据。因此,未确认的分组被仔细标记为已重新发送。事实上,音频/视频流并不总是需要可靠的消息传输,并且可靠的消息传输可能适合于实施视频的变体。基于正在使用的链路配置文件,重新发送的数目可以被限制到最大数目。可能地,这可能是零,使得块在第一次发送之后被删除。
编码器2和服务器4包括相应的已接收数据缓冲器32、42。这些数据缓冲器32、42使得能够对接收的消息进行重新构造以寻址乱序接收的和丢弃的分组。消息报头被构造成允许接收器对完整消息长度和类型进行推断,即使仅从UDP分组的有效载荷提取一个片段。
图12示出分割成32字节块的循环已接收数据缓冲器42的一个实施例。在此实施例中,已经接收到对应于分组N、N+2和N+3的三个不完整的消息。分组N中的信息指定消息A被保存在四个块中,从而四个块被保留,即使在分组中仅提供三个块。类似地,分组N+2将消息C编码为长度为八个块,其中块3至6包含在该分组中。分组N+3提供用于消息C的最后的块和消息D的前三个块,该消息D被识别为长度为六个块。在每种情况下,保留适当数目的块。
图13示出在N+4之前接收分组N+5的结果。分组N+5由消息A提供遗漏的前三个块并且由消息B提供在丢弃分组N+1时丢失的两个块。消息A和B在它们完整时被从缓冲器提取。图14通过在N+5之后接收分组N+4和N+6完成序列。这使得从缓冲器提取的消息C完整。
将存在不重新发送数据块的情况。具体地,在视频数据被认为不值得重新发送的情况下,接收缓冲器将保留导致缓冲器实际上阻塞的部分消息。此设计假设,如果由于现有的不完整消息导致不能够将新消息添加到接收缓冲器,则删除该不完整消息从而为新消息留出空间。以此方式,旧的消息将被丢弃。接收缓冲器应该足够大,以使得不丢弃不完整消息,同时重新发送过程仍然试图恢复遗漏的块。
现在参考图15中的流程图描述编码器2中带宽监视器20的操作。在步骤50处,带宽监视器20确定信道中的瞬时带宽BI(t)。在生成一个UDP数据分组之后,根据如下等式,对每个时元(epoch)计算瞬时带宽:
其中,
SNS(t)-视频缓冲器中当前等待被发送的字节的数目
SNS(t-1)-视频缓冲器中在先前时元中等待被发送的字节的数目
NNS(t)-非时间关键缓冲器中当前等待被发送的字节的数目
NNS(t-1)-非时间关键缓冲器中在先前时元中等待被发送的字节的数目
SA(t)-分配给视频缓冲器的当前总字节数目
SA(t-1)-分配给视频缓冲器的先前总字节数目
NA(t)-分配给非时间关键缓冲器的当前总字节数目
NA(t-1)-分配给非时间关键缓冲器的先前总字节数目
T(t)-当前采样间隔的时间,以毫秒为单位
T(t-1)-先前采样间隔的时间,以毫秒为单位
BA(t-1)-对平均带宽的先前估计,以比特/秒为单位
BE-信道中的最大可允许带宽
BL(t)-信道中的瞬时带宽
因此,信道中的瞬时带宽BI(t)是复用器18在发送最新的UDP分组时所使用的带宽。
实际上,未以相等的时间间隔传输分组。因此,为了提供对瞬时带宽的更稳健的测量,根据如下等式在取s个采样点的滑动窗口上测量瞬时带宽:
在步骤52处,带宽监视器20被配置为测量编码器2和服务器4之间的UDP分组的往返时间。这通过测量在编码器2传输UDP分组之后从服务器4接收确认所花费的时间来实现。测量的往返时间RC(t)对于信道性能是有用的指标。在稳定的信道中,往返时间低,并且具有低变化性。如果往返时间增加,则这可能指示信道中的带宽可用性小于编码器2所需的带宽可用性。
在步骤54处,带宽监视器20被配置为更新往返时间的衰减(damped)平均值RB(t)。如果往返时间的当前值大于衰减平均值的前一个值(即,RC(t)>RB(t-1)),则根据下面的等式计算RB(t)。
否则,根据下面的等式计算RB(t)。
在这些等式中,
RB(t)-是对当前时元的往返时间的估计
RB(t-1)-是对基准往返时间的先前估计
RC(t)-是往返时间的当前测量,以毫秒为单位
κ-是控制适应速率的衰减系数
往返时间的衰减平均值可以是比往返时间的当前值更有用的度量,这是因为信道中的易变性可产生不在正常限制内的个别结果。以上等式允许快速向下调整RB(t)以匹配往返时间的当前观测值。然而,对RB(t)的向上调整更缓慢。为了最佳性能可能需要仔细选择衰减系数κ,这取决于蜂窝信道的特性。
在步骤56处,带宽监视器20被配置为基于观察到的往返时间来更新信道中的平均带宽的平滑平均值BA(t)。平均带宽可以根据下面的等式来计算。
其中,
BA(t-1)-是对平均带宽的先前估计,以比特/秒为单位
BA(t-是对平均带宽的新的估计,以比特/秒为单位
BE-是带宽的指定上限,以比特/秒为单位
F-是控制适应速率的系数
并且
因此,BA(t)可以提供对信道中的当前可用带宽的有用估计。从以上等式可以理解的是,如果当前往返时间相对于衰减平均往返时间是低的(即,RC(t)<RB(t)),则BA(t)将增大。BA(t)的最大值是BE,BE是根据信道的属性对信道的带宽限定的极限。相反地,如果当前的往返时间相对于衰减平均值往返时间是高的(即,RC(t)>RB(t)),则BA(t)将减小。
在步骤58处,带宽监视器20被配置为监视分配给视频缓冲器26的视频块的数目和分配给非时间关键数据缓冲器28但尚未发送的非时间关键数据块的数目(SNS(t)和NNS(t))。这些系数可以在步骤60中在计算流式传输带宽BS中使用。
在步骤60处,带宽监视器20被配置为计算流式传输带宽BS。流式传输带宽对应于应该由压缩器16输出压缩数据的速率。因此,如果需要较低的流式传输带宽,则压缩器16必须使用较高的压缩系数以在所需带宽下将输入视频流转换为压缩数据。相反地,如果需要较高的流式传输带宽,则压缩器16可以在压缩输入视频流时使用较低的压缩系数。由压缩器16执行的压缩是有损的,这意味着在使用较高的压缩系数时产生较低质量的输出。
根据如下等式来计算流式传输带宽BS
其中σ表示已发送但在基于当前基准往返时间的容限以上未确认的数据量;
其中
SSU(t)-是已发送但未确认的视频字节的当前数目
NSU(t)-是已发送但未确认的非时间关键字节的当前数目
可以理解,当往返时间与往返时间的衰减平均值相比较高时(即,当RC(t)>RB(t)时),BS是小的。这意味着,当往返时间高时,使用较低的流式传输带宽,这指示信道中平均带宽的较低。当检测到信道中的条件改变时,编码器2能够通过降低压缩视频的质量并且增大压缩系数来适应这些条件。
当往返时间与往返时间的衰减平均值相比低时(即,当RC(t)<RB(t)时),BS的值趋向于BA。换句话说,当条件有利并且往返时间低时,流式传输带宽取接近于信道中的平均带宽的值。当带宽表现为可用时,这允许压缩器16使用较低的压缩系数并且允许传输较高质量的视频。
BS的计算还考虑了SNS(t),SNS(t)是视频缓冲器26中正等待被发送的字节的数目。具体地,如果在视频缓冲器26中存在排队的视频数据,则降低BS。这意味着,较高的压缩系数被用于压缩后续视频帧,这降低信道上来自视频数据的压力。通过降低由压缩器16产生的数据速率,复用器18能够更好地在随后的时元中清除视频缓冲器26。通常,为了最小化视频延迟而计算BS,这是因为通常不期望数据在视频缓冲器26中排队。这些字节可以在视频缓冲器26中累积的一种方式是是否从时间关键数据缓冲器30发送时间关键数据。分配给时间关键缓冲器30的数据优先于视频缓冲器26和非时间关键数据缓冲器28中的数据。因此,当发送时间关键数据时,这通常导致数据块累积在视频缓冲器26中。以上等式示出在这些情况下向下调整BS。这可以降低直播视频的数据速率,以允许发送视频缓冲器26中的排队数据。此设计允许将时间关键数据优先于视频数据,并且作为紧急事件发送到服务器4。在监控应用中,时间关键数据可以包括触发开关或红外(IR)传感器。当数据可用时,可以立即发送包含这些数据的警报。有利地,对直播视频馈送的影响对于用户设备22处的人类观看者通常将是不可察觉的。
传输失败还可能导致视频数据在视频缓冲器26中排队。如参考图5至图11所描述的,如果没有从服务器2接收到确认,则可以在视频缓冲器26中激活块以重新传输。如果任何这样的块存在于视频缓冲器26中,则这可向下调整导致BS。通过降低直播视频的数据速率,可以在信道中创建空间以重新传输相关的块。
不考虑的是,在正常操作条件下数据将在时间关键数据缓冲器30中排队,因为这将使时间关键数据的传输延时。这仅可以在时间关键数据的生成速率大于信道中的瞬时带宽BI(t)的情况下发生。在大多数情况下,这不太可能发生,这是因为时间关键数据的生成速率与信道的带宽相比很可能是小的。然而,如果发生这种情况,则视频编码器2将停止发送视频数据,以使得能够清除在时间关键数据缓冲器30中排队的数据。然后可以重新开始视频数据的传输。
BS的计算还考虑了NNS(t),NNS(t)是非时间关键数据缓冲器28中的非时间关键数据块的数目。如从以上等式可以理解的,每当非时间关键数据在缓冲器28中排队时,BS的值被减小。这降低了信道中由视频文件消耗的带宽量,以使得带宽可用于非视频数据。在复用器18中使用此带宽,以每当需要非时间关键数据时发送非时间关键数据。这通过修改压缩系数来让非时间关键数据与视频数据一起传输,而不会中断直播馈送。仅当视频缓冲器26为空并且信道中的带宽可用时,才传输非时间关键数据。以此方式,视频数据可以总是优先于非时间关键数据,并且只有一旦已经在信道中创建空间并且已经将BS调整成使得视频缓冲器26被完全清空,才传输非时间关键数据。这可以允许传输非视频数据,而不会对视频数据引入任何延迟,这在一些安全监控应用中是至关重要的。
在步骤62处,带宽监视器20将其对BS的计算发送到压缩器16。然后,压缩器16调整其压缩系数,以使得以期望的流式传输带宽输出压缩视频。
以上用于计算BA(t)和BS的等式涉及使用tan-1x函数,该函数在某些平台上不可用并且求值可能是复杂的。可以对这两个计算取近似以提高计算速度。
如果RB(t)≤RC(t),则δ可以被近似为
否则,
为了简化BS的计算,可以将Q定义为等待被发送的总数据加上已发送但在基于基准往返时间的容限以上未确认的数据的加权和,其中加权是基于比例当前往返时间与基准往返时间的比率;即,
然后可以从Q和BA(t)导出流式传输带宽BS,如下:
如果Q≤BA(t),则
否则
图16是示出在编码器2中作出的决定的逻辑流程图。在步骤70处,视频摄像机10开始记录视频,并且复用器18开始生成用于发送到服务器4的UDP分组。在步骤72处,将“等待时间”标志设置为等于当前系统时间。在步骤74处,复用器18增加分组序列号并且构造UDP有效载荷分组报头。在步骤76处,复用器18分析时间关键数据缓冲器30中是否存在任何块。如果在该缓冲器30中存在任何块,则它们被优先包含在UDP分组中。因此,如果在UDP有效载荷中存在备用容量(即,存在不止37字节的可用空间),则在步骤78处将来自时间关键数据缓冲器30的消息块复制到UDP有效载荷中。如果时间关键数据缓冲器30中不存在块,则复用器18再次分析UDP有效载荷中是否存在任何备用容量。如果存在备用容量,则复用器18在步骤80分析视频缓冲器26中是否存在任何待定的块。如果存在任何视频块,则在步骤82处通过复用器18将它们复制到UDP有效载荷中。如果在UDP有效载荷中存在任何备用容量,则复用器18在步骤84处分析在非时间关键数据缓冲器28中是否存在任何待定的消息块。在步骤86处将这些块复制到UDP有效载荷中;实际上,复制到有效载荷中的块的数目取决于其备用容量。当UDP有效载荷是满的或在任何缓冲器26、28、30中不存在数据块时,UDP数据分组在步骤88处被发送到服务器4。以此方式,复用器18可以使UDP分组中的时间关键数据优先,之后是视频数据和非时间关键数据。这可以允许在存在时间关键数据时无延时地发送时间关键数据。每当UDP分组中存在可用空间时,非时间关键数据可以被用来使得UDP分组完整。这可以允许在长时间内下载非时间关键数据,而不会导致用户设备22处的直播视频的体验中断,或者在必要时迅速报告时间关键数据。
在步骤90处,复用器18分析是否已经从服务器4接收到UDP分组。如果接收到分组,则在步骤92处读取该分组。在步骤94处提取任何UDP分组确认,并且将其传达到相关的缓冲器26、28、30,以使得可以删除块。然后在步骤96处提取UDP分组中的消息块并且将其分配给已接收数据缓冲器32。
在步骤98处,编码器2一直等到当前系统时间大于或等于“等待时间”标志。这允许编码器2在足够的时间内从服务器4接收期望的UDP分组。如果超过“等待时间”时期,则在步骤100处带宽监视器20根据图14中阐明的过程计算平均带宽BA(t)和流式传输带宽BS。然后,该过程返回到步骤74,以使得复用器18可以开始构造下一个UDP分组。

Claims (14)

1.一种被配置为通过信道发送视频数据的视频编码器,该编码器包括:
一个压缩器,被配置为使用可调整的压缩系数来压缩视频数据;
一个分组构造器,被配置为从该压缩器接收压缩视频、使数据排队以供传输、由排队的数据构造数据分组以及通过该信道传输构造的数据分组;以及
一个带宽监视器,被配置为基于传输的数据分组的特性来监视该信道的性能,其中该压缩器被配置为基于排队的数据的至少一个属性并且响应于由该信道监视器确定的该信道的性能来修改该可调整的压缩系数,其中该分组构造器被配置为接收非视频数据以供在该信道中传输,并且其中该带宽监视器被配置为指示该视频压缩器响应于该信道的性能和该分组构造器接收的非视频数据的量来修改该压缩系数。
2.根据权利要求1所述的视频编码器,其中该带宽监视器被配置为测量通过该信道传输数据分组所需的时间。
3.根据权利要求2所述的视频编码器,包括一个接收器,该接收器被配置为从服务器接收确认,所述确认是响应于传输的数据分组发送的,其中所述带宽监视器被配置为测量在传输一个数据分组之后接收确认所需的时间。
4.根据前述权利要求中任一项所述的视频编码器,其中排队的数据的至少一个属性是排队但尚未被传输的数据的数量。
5.根据前述权利要求中任一项所述的视频编码器,其中排队的数据的至少一个属性是排队但尚未被传输的数据的类型。
6.根据前述权利要求中任一项所述的视频编码器,包括一个接收器,该接收器被配置为从服务器接收确认,所述确认是响应于传输的数据分组发送的,并且其中该分组构造器被配置为,如果未接收到对传输的数据分组的确认,则使数据重新排队以供传输。
7.根据前述权利要求中任一项所述的视频编码器,其中在该视频编码器中的单个端口和服务器中的单个端口之间传输视频数据和非视频数据。
8.根据前述权利要求中任一项所述的视频编码器,其中该分组构造器包括用于视频数据和非视频数据的至少一个缓冲器。
9.根据权利要求8所述的视频编码器,其中该带宽监视器被配置为指示该视频压缩器响应于该缓冲器中存在非视频数据来修改该压缩系数。
10.根据前述权利要求中任一项所述的视频编码器,其中该信道是无线蜂窝链路。
11.根据前述权利要求中任一项所述的视频编码器,其中该带宽监视器被配置为当该分组构造器接收到非视频数据时修改该压缩系数,以清空视频数据的队列,从而使带宽可用于非视频数据。
12.一种传输系统,包括:根据前述权利要求中任一项所述的视频编码器;以及被配置为接收通过所述信道传输的构造的数据分组的服务器。
13.一种通过信道发送视频数据的方法,该方法包括以下步骤:
使用可调整的压缩系数压缩视频数据;
使视频数据排队以供传输;
使非视频数据排队以供传输;
构造包括压缩视频和所述非视频数据的数据分组;
通过该信道传输构造的数据分组;
基于传输的数据分组的特性监视该信道的性能;以及
基于该信道的性能和队列中的非视频数据的量来修改该压缩系数。
14.一种非暂时性计算机可读存储介质,该非暂时性计算机可读存储介质上存储有计算机程序,所述计算机程序包括处理器可读指令,所述处理器可读指令在被执行时指导设备执行动作,所述动作包括:
使用可调整的压缩系数压缩视频数据;
使视频数据排队以供传输;
使非视频数据排队以供传输;
构造包括压缩视频和所述非视频数据的数据分组;
通过该信道传输构造的数据分组;
基于传输的数据分组的特性监视该信道的性能;以及
基于该信道的性能和队列中的非视频数据的量来修改该压缩系数。
CN201580078782.3A 2015-02-13 2015-10-21 视频编码器 Active CN107580781B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB1502434.2 2015-02-13
GB201502434A GB201502434D0 (en) 2015-02-13 2015-02-13 Video encoder
PCT/GB2015/053149 WO2016128701A1 (en) 2015-02-13 2015-10-21 Video encoder

Publications (2)

Publication Number Publication Date
CN107580781A true CN107580781A (zh) 2018-01-12
CN107580781B CN107580781B (zh) 2020-04-17

Family

ID=52781568

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580078782.3A Active CN107580781B (zh) 2015-02-13 2015-10-21 视频编码器

Country Status (11)

Country Link
US (1) US10951924B2 (zh)
EP (1) EP3257251B1 (zh)
JP (1) JP6669765B2 (zh)
KR (1) KR102414155B1 (zh)
CN (1) CN107580781B (zh)
AU (1) AU2015382316B2 (zh)
CA (1) CA2976431C (zh)
ES (1) ES2827255T3 (zh)
GB (1) GB201502434D0 (zh)
IL (1) IL253940B (zh)
WO (1) WO2016128701A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10951924B2 (en) 2015-02-13 2021-03-16 Digital Barriers Services Ltd. Video encoder

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2543492B (en) 2015-10-16 2021-11-10 Digital Barriers Services Ltd Data Compression
GB2577689B (en) 2018-10-01 2023-03-22 Digital Barriers Services Ltd Video surveillance and object recognition
KR102287274B1 (ko) * 2019-12-05 2021-08-06 울산과학기술원 비디오 인코딩 장치 및 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1588909A (zh) * 2004-07-15 2005-03-02 复旦大学 一种控制网络数字电视节目组播发送速率的方法
US20100246395A1 (en) * 2009-03-30 2010-09-30 Sony Corporation Information processing device and method
US20130156095A1 (en) * 2011-12-15 2013-06-20 Imerj LLC Networked image/video processing system

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5237610A (en) * 1990-02-01 1993-08-17 Scientific-Atlanta, Inc. Independent external security module for a digitally upgradeable television signal decoder
US6469741B2 (en) * 1993-07-26 2002-10-22 Pixel Instruments Corp. Apparatus and method for processing television signals
US5761438A (en) 1993-08-31 1998-06-02 Canon Kabushiki Kaisha Apparatus for measuring the amount of traffic of a network at a predetermined timing and compressing data in the packet without changing the size of the packet
JPH07170292A (ja) 1993-12-15 1995-07-04 Sony Corp 送信装置
CN1155240C (zh) 1996-04-15 2004-06-23 索尼公司 图像信号送出装置
US6052384A (en) * 1997-03-21 2000-04-18 Scientific-Atlanta, Inc. Using a receiver model to multiplex variable-rate bit streams having timing constraints
US6490250B1 (en) 1999-03-09 2002-12-03 Conexant Systems, Inc. Elementary stream multiplexer
JP2005027208A (ja) * 2003-07-01 2005-01-27 Sony Corp 送信装置および方法、記録媒体、並びにプログラム
EP1603339A1 (en) 2004-06-01 2005-12-07 STMicroelectronics S.r.l. Method and system for communicating video data in a packet-switched network, related network and computer program product therefor
JP2008504793A (ja) * 2004-06-07 2008-02-14 スリング メディア,インク. パーソナルメディア放送システム
US7784076B2 (en) 2004-10-30 2010-08-24 Sharp Laboratories Of America, Inc. Sender-side bandwidth estimation for video transmission with receiver packet buffer
JP4834013B2 (ja) 2008-02-29 2011-12-07 日本放送協会 送信装置、送信プログラム、受信装置及び受信プログラム
FR2946820B1 (fr) 2009-06-16 2012-05-11 Canon Kk Procede de transmission de donnees et dispositif associe.
JP2011091715A (ja) 2009-10-26 2011-05-06 Sanyo Electric Co Ltd コンテンツ処理装置
US8941706B2 (en) 2010-04-07 2015-01-27 Apple Inc. Image processing for a dual camera mobile device
US8520728B2 (en) * 2010-09-23 2013-08-27 Intel Corporation Adaptive data transmission rate control for a wireless display device
US9078017B2 (en) 2010-11-26 2015-07-07 Telefonaktiebolaget L M Ericsson (Publ) Method and device for buffering data for multiplexing
US9113141B2 (en) 2010-12-09 2015-08-18 Intel Corporation Wireless channel aware adaptive video bit rate encoding
WO2013046698A1 (ja) 2011-09-28 2013-04-04 パナソニック株式会社 データ処理装置及びデータ処理方法
US11700211B2 (en) * 2012-04-10 2023-07-11 Comcast Cable Communications, Llc Data network traffic management
JP2013229831A (ja) 2012-04-27 2013-11-07 Nippon Hoso Kyokai <Nhk> データ放送生成装置、放送システム及びプログラム
GB201502434D0 (en) 2015-02-13 2015-04-01 Digital Barriers Services Ltd Video encoder

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1588909A (zh) * 2004-07-15 2005-03-02 复旦大学 一种控制网络数字电视节目组播发送速率的方法
US20100246395A1 (en) * 2009-03-30 2010-09-30 Sony Corporation Information processing device and method
US20130156095A1 (en) * 2011-12-15 2013-06-20 Imerj LLC Networked image/video processing system
CN103281526A (zh) * 2011-12-15 2013-09-04 弗莱克斯电子有限责任公司 网络图像/视频处理系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10951924B2 (en) 2015-02-13 2021-03-16 Digital Barriers Services Ltd. Video encoder

Also Published As

Publication number Publication date
IL253940B (en) 2021-05-31
GB201502434D0 (en) 2015-04-01
US10951924B2 (en) 2021-03-16
AU2015382316B2 (en) 2019-10-03
JP2018509085A (ja) 2018-03-29
IL253940A0 (en) 2017-10-31
CA2976431C (en) 2023-02-14
ES2827255T3 (es) 2021-05-20
KR102414155B1 (ko) 2022-06-28
WO2016128701A1 (en) 2016-08-18
US20180035135A1 (en) 2018-02-01
JP6669765B2 (ja) 2020-03-18
CN107580781B (zh) 2020-04-17
EP3257251B1 (en) 2020-09-16
AU2015382316A1 (en) 2017-08-31
CA2976431A1 (en) 2016-08-18
EP3257251A1 (en) 2017-12-20
KR20170137062A (ko) 2017-12-12

Similar Documents

Publication Publication Date Title
CN109587510B (zh) 一种直播方法、装置、设备和存储介质
CN104519325B (zh) 一种基于4g网络的无线视频监控系统自适应保障方法
US6700893B1 (en) System and method for controlling the delay budget of a decoder buffer in a streaming data receiver
Bolot et al. Experience with control mechanisms for packet video in the Internet
CN110248256B (zh) 数据的处理方法及装置、存储介质和电子装置
KR100941562B1 (ko) 미디어 스트리밍 분배 시스템, 패킷 분석 장치, 네트워크 중계 장치, 미디어 분배 장치, 중계 장치 및 미디어 스트림 분배 시스템
JP2648418B2 (ja) 可変レート符号器を制御する方法
DE60020672T2 (de) Verfahren und Vorrichtung zur Wiederholung der Videodatenrahmen mit Prioritätsstufen
US8089514B2 (en) Moving image communication device, moving image communication system and semiconductor integrated circuit used for communication of moving image
US20100005178A1 (en) Method and system for firewall friendly real-time communication
CN107580781A (zh) 视频编码器
JPH07107096A (ja) Atmネットワーク用ビデオ信号の二層符号化方法とその装置
JP5874730B2 (ja) コンテンツ配信システム、キャッシュサーバおよびコンテンツ配信方法
EP1802050A1 (en) Discarded packet indicator
US20020054635A1 (en) Image transmitting method and apparatus and image receiving method and apparatus
CN106210785B (zh) 媒体流网络自适应单向控制方法及系统
CN109688425A (zh) 直播数据推流方法
JP2008271378A (ja) 映像監視装置
JP2018537885A (ja) コンテンツによって制御されたストリーミングネットワークにおけるフローレート調節の方法及びシステム
CN114938439A (zh) 丢包重传方法、装置、系统与计算机可读存储介质
JP6083964B2 (ja) 送信装置、送信方法、及びプログラム
US20020174437A1 (en) Method and apparatus for controlling image quality by culling transmitted image information
CN107483220B (zh) 一种服务质量控制方法、装置及系统
WO2013100754A1 (en) A system and method for adaptive media content delivery
KR100701032B1 (ko) 네트워크 상의 동영상 데이터 전송 조절 시스템과 그 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant