CN101795386A - 可视电话发送端的视频帧流控制方法 - Google Patents

可视电话发送端的视频帧流控制方法 Download PDF

Info

Publication number
CN101795386A
CN101795386A CN200910045735A CN200910045735A CN101795386A CN 101795386 A CN101795386 A CN 101795386A CN 200910045735 A CN200910045735 A CN 200910045735A CN 200910045735 A CN200910045735 A CN 200910045735A CN 101795386 A CN101795386 A CN 101795386A
Authority
CN
China
Prior art keywords
frame
video
time
compression
data
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
CN200910045735A
Other languages
English (en)
Other versions
CN101795386B (zh
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.)
Inventec Appliances Shanghai Corp
Original Assignee
Inventec Appliances Shanghai 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 Inventec Appliances Shanghai Corp filed Critical Inventec Appliances Shanghai Corp
Priority to CN2009100457355A priority Critical patent/CN101795386B/zh
Priority to US12/648,962 priority patent/US8320449B2/en
Publication of CN101795386A publication Critical patent/CN101795386A/zh
Application granted granted Critical
Publication of CN101795386B publication Critical patent/CN101795386B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • H04N7/148Interfacing a video terminal to a particular transmission medium, e.g. ISDN
    • 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/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42203Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS] sound input device, e.g. microphone
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/4223Cameras
    • 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/44008Processing 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 operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • 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/4402Processing 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 reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440281Processing 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 reformatting operations of video signals for household redistribution, storage or real-time display by altering the temporal resolution, e.g. by frame skipping
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4621Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
    • 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/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

本发明为一种可视电话发送端的视频帧流控制方法,该方法根据先前的视频帧发送处理状况以及压缩处理状况,预判当前帧的接收是否会引起延时,若会引起延时则抛弃该当前帧;若不会引起延时,则进行后续的压缩、复接及发送处理。采用此方法可以避免大量的视频帧滞留在系统中来不及发送,造成视频的延时到达,保证了视频和音频的同步,改善了可视电话的传送效果。

Description

可视电话发送端的视频帧流控制方法
技术领域
本发明涉及一种可视电话的视频传输方法,尤其是涉及一种可视电话发送端的视频帧流控制方法。
背景技术
随着3G网络的普及,具备视频电话功能的3G手机开始被越来越多的用户所青睐,因其不仅为用户提供了传统的音频电话体验,更能通过即时的视频图像来增加用户的视觉体验,从而大大增加了用户的使用乐趣。
但目前使用的视频电话在通话时主要存在视频延时的问题,原因是多方面的:有网络延时因素,有视频帧的本地捕获压后处理以及发送的延时等等。网络延时将会随着3G网络的性能提升得到有效的解决。本地视频帧数据的处理延时主要是由于本地视频帧数据在捕获后需要经过压缩和3G-324M的H.223复接协议复接后才能由无限网络发送出去。
在视频电话的通信过程中,每个终端设备应用程序既是发送端也是接收端,需要发送本方的视频和音频数据给对方,同时也需要将对方的视频和音频数据接收后显示和播放。对应发送端视频数据首先由系统设定视频设备帧取样频率。目前针对64K带宽的视频电话取样频率设定上限一般为每秒15帧左右。对摄像头捕获的视频帧数据首先经过压缩处理并经过3G-324M的H.223复接协议将视频和音频数据进行复接为二进制流数据。
图5所示为现有的可视电话发送端应用程序对音视频数据的处理流程。
可视电话呼叫接通后,首先进行的是3G-324M层的握手动作。在完成协议层的握手动作后,如果双方对视频电话的协商成功,双方系统的发送端将进入图3的处理流程。该流程包括以下步骤:由麦克风捕获音频数据100,对麦克风捕获的音频数据进行压缩处理110;由摄像头捕获视频帧数据200,将摄像头捕获的视频帧数据进行压缩处理220;基于3G-324M的H.223协议复接视频和音频数据流300;将复接数据流通过无线网络发送310。
通过上述流程,音视频数据经过各自的硬件设备捕获数据,并根据之前的握手协商结构进行各自格式的数据压缩处理,之后经过3G-324M协议的子协议H.223复接为单一的二进制数据流,最后经过无线网络设备发送到对方。
接收端的处理流程是一个反向的过程。接收端首先对接受到的二进制数据流进行H.223协议的分接处理,将其分解为音频和视频数据,并各自完成解压送到相应的硬件播放和显示。
由于目前的视频电话带宽固定工作在电路域的64K带宽之中,摄像头视频帧的采集频率在设定上限后一般会随着系统负荷的变化而呈现浮动。为此,单位时间内捕获的视频帧将是不固定的。常常会出现系统负载较大时从摄像头采集的数据无法及时地被压缩以及进行H.223复接。这将导致复接后的数据大量地滞留在发送队列中,从而导致接收端视频帧的延时到达。其结果是使得视频帧和音频的传输不同步,影响了可视电话的使用效果。
以下对视频延时的原因作简单的分析。
每一帧视频的处理过程包括两个阶段:获取视频数据阶段和数据发送阶段。获取视频数据阶段又分为视频帧获取阶段和视频帧压缩阶段。摄像头以预定时间间隔(例如在每秒15帧的情况下,每帧的间隔时间大约为为0.067秒)获取一帧视频,然后对获得的视频帧进行压缩,获得压缩后的视频帧数据,此为获取视频数据阶段。然后将压缩后的视频帧数据通过无线网络发送。
因此,在一帧视频帧数据压缩完成后,立刻就进行该帧视频数据的发送。即,正常情况下,第1帧视频数据压缩完成时,进行第1帧视频数据的发送;第2帧视频数据压缩完成时,第1帧视频数据的发送已经完成,此时可以进行第2帧视频数据的发送,以此类推。
参看图4,每隔规定时间t,摄像头依次获取一帧视频图像F1、F2、F3、...、F8;每帧视频图像被压缩完成的时间依次为C1、C2、C3、...、C8;并且发送每帧视频图像的时间依次为S1、S2、S3...、S8。
从第1帧视频F1的压缩时间C1完成的时间点起,紧接着的是第1帧视频的发送时间段S1。当第2帧视频F2的压缩时间C2完成的时间点起,紧接着的是第1帧视频的发送时间段S2。从图中可以看到,在发送顺利的情况下,在第2帧视频压缩时间C2完成的时间点之前,第1帧的发送时间S1已经完成,此时可以进行第2帧视频F2的发送S2;在第3帧视频压缩时间C3完成的时间点之前,第2帧的发送时间S2已经完成,此时可以进行第3帧视频F3的发送S3。如图中所示的第1-6帧的情况都是如此。
然而,在第7帧视频F7压缩时间C7完成的时间点时,第6帧F6的发送时间S6还未完成,则此时无法立刻进行S7的发送,必须将S7推迟到S6发送完成之后的时间点,这就造成了第7帧视频传输的延时。同样,在第8帧视频F8压缩时间C8完成的时间点时,第7帧F7的发送时间S7还未完成,则此时无法立刻进行S8的发送,必须将S8推迟到S7发送完成之后的时间点,这就造成了第8帧视频传输的延时。
从上述的例子可以看出,如果在当前帧视频数据压缩完成时,前一帧视频数据的发送尚未完成,则该当前帧的视频数据无法立刻进行发送,必须等到前一帧视频数据发送完成后,才能进行该第二视频数据的发送,这样就造成了视频传输的延时。而且,如果连续各帧都发生延迟,这些延时会形成累积,造成视频传输的严重滞后,影响使用效果。
发明内容
为此,本发明的目的在于提供一种可降低视频延时的可视电话发送端视频帧流控制方法。
为达成上述目的本发明提供了一种可视电话发送端的视频帧流控制方法,其包括以下步骤:a)捕获视频帧数据;b)判断该当前视频帧数据是否为第1帧数据;c)如果经判断为第1帧数据,则c1)进行该视频帧数据的压缩,c2)统计和暂存当前帧的压缩时间和压缩后的数据量,c3)将压缩后的视频数据通过无线网络发送;d)如果经判断不是第1帧数据,则d1)判断该当前视频帧的预计压缩完成时间间隔是否小于等于前一帧视频数据所需的发送时间,d2)如果当前帧的预计压缩完成时间间隔小于等于前一视频帧数据所需的发送时间,则抛弃当前帧,d3)如果当前帧的预计压缩完成时间间隔大于前一视频帧数据所需的发送时间,则执行上述c1)-c3)的步骤。
较佳地,上述当前视频帧的预计捕获时间间隔等于当前帧捕获时间点减去前一帧压缩完成时间点,再加上平均压缩时间。
较佳地,上述平均压缩时间等于所述当前帧之前的最近N帧的平均压缩时间。
较佳地,上述N大于等于5且小于等于10。
上述前一视频帧数据所需的发送时间等于前一视频帧数据比特数除以带宽减去单位时间内捕获的音频数据压缩后比特数总和的差得到的商。
根据本发明的方法,在视频帧发送处理中,根据先前的视频帧发送处理状况以及压缩处理状况,预判当前帧的接收是否会引起延时,若会引起延时则跳过该当前帧;若不会引起延时,则进行后续的压缩、复接及发送处理。这样,可以避免大量的视频帧滞留在系统中来不及发送,造成视频的延时到达,保证了视频和音频的同步,改善了可视电话的传送效果。
附图说明
图1为本发明的视频电话发送端处理流程图。
图2为本发明的视频帧流控模块工作流程图。
图3a-3b为本发明的视频帧的传输示意图。
图4为现有的视频帧传输示意图。
图5为现有的视频电话发送端处理流程图。
具体实施方式
为此,本发明提供了一种视频帧数据流控制方法,来解决视频传输延时的问题。
具体地,当可视电话呼叫接通后,进行3G-324M层的握手动作。在完成协议层的握手动作后,如果双方对视频电话的协商成功,双方系统的发送端将进入图1的处理流程。
该处理流程包括以下步骤:由麦克风捕获音频数据100,对麦克风捕获的音频数据进行压缩处理110;由摄像头捕获视频帧数据200,对摄像头捕获的视频帧数据进行流控处理210,将流控处理后的视频帧数据进行压缩处理220;基于3G-324M的H.223协议复接视频和音频数据流300;将复接数据流通过无线网络发送310。
从上述步骤可以看出,与现有的处理流程相比,本发明在压缩处理220之前增加了对摄像头捕获的视频帧数据进行流控处理的步骤210。其主要功能在于完成视频帧数据的实时调整,以保证在最大限度地利用64K带宽的同时不会出现视频帧数据的延时处理情况。
该视频帧数据流控处理的步骤如图2所示。
开始;摄像头捕获到一帧视频数据;判断该数据是否为第1帧数据。
若是第1帧数据,则执行以下步骤:进行视频帧数据压缩;统计并暂存本帧压缩时间和压缩后数据量;H.223复接;数据分割;无线发送;结束。
若不是第1帧数据,则需预估当前帧数据的压缩完成时间间隔T2,若当前帧的预估数据压缩完成时间间隔小于等于前一帧视频所需的发送时间间隔T3,则抛弃当前帧;若当前帧数据的压缩完成时间间隔T2大于前一帧视频数据所需的发送时间间隔T3,则执行与第1帧视频相同的步骤。
上述步骤中,预估当前帧数据压缩完成时间间隔T2是由以下方式确定的,即T2=(当前帧捕获时间点-上一帧数据完成压缩时间点)+T1,其中T1为当前帧预计完成时间。在本实施例中,该当前帧预计完成时间T1为最近N帧的平均压缩时间。该N可以根据需要设定为任意值,较佳地为5-10。
T3=前一视频帧数据比特数/(带宽-单位时间内捕获的音频数据压缩后比特数总和)。
若目前当前帧的帧数小于等于N,则按照先前累计的实际帧数计算出平均压缩时间。例如,在N取5的情况下,当前帧为第2帧时,则平均压缩时间即为第1帧的压缩时间;当前帧为第3帧时,则平均压缩时间为第1、2帧的平均压缩时间;当前帧为第4帧时,则平均压缩时间为第1-3帧的平均压缩时间;当前帧为第5帧时,则平均压缩时间为第1-4帧的平均压缩时间。
在当前帧为第6帧时,平均压缩时间为第1-5帧的平均压缩时间;其后则可按照最近5帧来计算平均压缩时间。
参看图3,每隔规定时间t,摄像头依次获取一帧视频图像F1、F2、F3...;每帧视频图像被压缩完成的时间依次为C1、C2、C3...。T1a、T1b、T1c...分别对应的是从当前帧起的最近N帧(例如,N为5)的平均压缩时间;T2a、T2b、T2c...分别对应的是预估的当前帧数据的压缩完成时间间隔;T3a、T3b、T3c...分别对应的是前一帧数据发送完成的时间间隔。
在图3所示的例子中,第1帧F1的捕获时间为0,完成压缩的时间为C1,从C1的完成时间点起进行发送,发送完成的时间间隔为T3a,即第1帧被压缩后的数据量/(带宽-单位时间内捕获的音频数据压缩后比特数总和)。
当捕获第2帧F2时,对该第2帧完成压缩时间T2a进行预估。该T2a=(第2帧捕获时间点-第1帧数据完成压缩时间点)+T1a,由于只进行了第1帧的压缩,所以该T1a即等于第1帧的压缩时间C1。将计算出的T2a和计算出的T3a相比,若T2a>T3a,则表明,当第2帧F2压缩完成准备发送时,第1帧视频数据已经发送完成,可以进行发送,则进行第2帧F2的实际压缩。若T2a<T3a,则表明,当第2帧F2压缩完成准备发送时,第1帧视频数据还未发送完成,此时将抛弃第2帧F2,不进行F2的压缩。
在图3所示的例子中,该T2a>T3a,则可以进行第2帧F2的压缩和传送。假设在第2帧到第6帧F2-F6中,T2都大于T3,即T2a>T3a;T2b>T3b;T2c>T3c;T2d>T3d;T2e>T3e;对第2帧到第6帧的视频数据都进行压缩和发送,如图3a所示。
在捕获第7帧F7时,预估的T2f=(第7帧捕获时间点-第6帧数据完成压缩时间点)+T1f,其中T1f等于第2帧F2至第6帧F6的平均压缩时间。假设T2f<T3f,即预估的第7帧F7压缩完成准备发送时,第6帧F6的发送还未完成,此时,抛弃第7帧F7,不进行F7的压缩,如图3a所示。
如图3b所示在捕获第8帧F8时,由于第7帧F7已经被抛弃,实际并没有被压缩和发送,所以平均压缩时间T1g=T1f。T2g=(第8帧捕获时间点-第6帧数据完成压缩时间点)+T1g,所以T2g比T2f多一帧的时间。因为第7帧F7已经被抛弃,所以前一帧发送时间T3g等于第6帧F6的发送时间间隔T3f。假设T2g>T3g,则进行第8帧F8的压缩和发送。
假设T2g仍然<T3g,则第8帧F8也被抛弃,进行第9帧F9的预估。在这种情况下,第9帧F9预估的压缩完成时间T2h会比T2f多两帧的时间,而前一帧发送时间T3h则不变,仍然等于第6帧F6的发送时间间隔T3f。此时,再比较T2h是否大于T3h。因为,在每抛弃一帧的情况下,T2会增大一帧,而T3保持不变,随着抛弃帧数的增大,T2最终必定会大于T3,此时不再抛弃帧,进行当前帧的压缩和发送。
以下再通过一个实例来进一步说明。该例子中,以每隔0.06秒捕获一帧视频数据,并以最近5帧的压缩时间来计算平均压缩时间为例来说明本发明的视频流控制方法。表1为每帧视频数据的相关参数的例子。
表1(单位:秒)
帧数 当前帧捕获时间点 当前帧压缩时间   前一帧压缩完成时间点   前5帧平均压缩时间T1   当前帧预估压缩完成时间T2   前一帧发送完成时间T3
  1   0   0.04   -   -   -   -
  2   0.06   0.06   0.04   0.04   0.06   0.04
  3   0.12   0.05   0.12   0.05   0.05   0.05
  4   0.18   0.06   0.17   0.05   0.06   0.055
  5   0.24   0.04   0.24   0.053   0.053   0.05
  6   0.30   0.06   0.28   0.05   0.07   0.06
  7   0.36   -   0.36   0.054   0.054   0.06
  8   0.42   0.05   0.36   0.054   0.114   0.06
  9   0.48   ...   ...   ...   ...   ...
其中每帧视频数据的捕获间隔为0.06秒,以第1帧视频数据的捕获时间点为0秒,则第2帧视频数据的捕获时间点为0.06秒,第3帧视频数据的捕获时间点为0.12秒,第4帧视频数据的捕获时间点为0.18秒,...以此类推。
当前帧压缩时间为当前帧完成压缩实际所花的时间。前一帧压缩完成时间点为前一帧数据的捕获时间点加前一帧完成压缩所花的时间。
根据表内的例子,当前帧为第2帧时,则第1帧压缩完成的时间点为第1帧数据的捕获时间0加上第1帧完成压缩所花的时间0.04秒,等于0.04秒。即在0.04秒时,第1帧视频数据压缩完成。当前帧为第3帧时,则第2帧压缩完成的时间点为第2帧数据的捕获时间点0.06秒加上第2帧完成压缩所花的时间0.06秒,等于0.12秒。即在0.12秒时,第2帧视频数据压缩完成,以此类推。
该前一帧压缩完成时间点也即是前一帧数据开始发送的时间点。
平均压缩时间T1为最近5帧的平均压缩时间,在帧数小于等于5时,按照实际接收到的帧数计算平均压缩时间,因此,到第6帧之后时,平均压缩时间才为最近5帧的平均压缩时间。
当前帧预估压缩完成时间T2=(当前帧捕获时间点-上一帧数据完成压缩时间点)+T1。根据上式,例如,第2帧的预估压缩完成时间T2等于第2帧的捕获时间点减第1帧数据完成压缩时间点再加上平均压缩时间,即T2=0.06-0.04+0.04=0.06秒。该时间表示从前一帧压缩完成时间点(也是前一帧数据开始发送的时间点)起,理论上当前帧应该在此T2时间间隔后压缩完成并准备开始发送。
T3为前一帧视频数据的传送完成时间。例如第2帧所对应的T3为第1帧视频数据的发送时间,第3帧所对应的T3为第2帧视频数据的发送时间,以此类推。
在表1的例子中,第2-6帧所对应的T2都大于相应的T3,即当前帧视频压缩完成准备发送时,前一帧视频的发送已经完成,这时发送当前帧数据不会造成延时。
在第7帧时,所对应的T2=0.054,相应的T3=0.06。此时,T2小于T3,如果压缩第7帧,预计完成压缩时,第6帧的发送尚未完成,这样会造成第7帧数据发送的延时,故此,将第7帧抛弃,不进行压缩。
然后在第8帧时,因为第7帧抛弃未被压缩,所对应的T2比之前多了一个帧的时间(0.06),T2=0.114,而此时T3不变仍为0.06。这样,T2大于T3,可以对第8帧进行压缩,不会造成延时。
根据上述的例子,可以看出,采用本发明的方法,可以预先判断当前帧是否会引起延时,若不会引起延时,则进行后续的压缩、复接及发送处理;若会引起延时则跳过该当前帧,直到预估出当前帧满足条件不会引起延时。
在另一实施例中,本发明的平均压缩时间T1也可以不限于根据最近N帧的压缩时间求得,而是可以通过累加方式求得。即当前帧为N时,该平均时间T1可以为之前所有完成发送帧的平均值。例如,当前帧为第7帧时,则平均时间T1为第1-6帧(假如1-6帧没有发生过抛弃的情形)的平均压缩时间。
本领域技术人员应当了解,在此的例子及实施例应认为是说明性的而非限制性的,并且本发明不限于在此给出的细节,而是可在权利要求的范围及等同范围之内进行修改。

Claims (5)

1.一种可视电话发送端的视频帧流控制方法,其特征在于,包括以下步骤:
a)捕获视频帧数据;
b)判断该当前视频帧数据是否为第1帧数据;
c)如果经判断为第1帧数据,则
c1)进行该视频帧数据的压缩,
c2)统计和暂存当前帧的压缩时间和压缩后的数据量,
c3)将压缩后的视频数据通过无线网络发送;
d)如果经判断不是第1帧数据,则
d1)判断该当前视频帧的预计压缩完成时间间隔(T2)是否小于等于前一帧视频数据所需的发送时间(T3),
d2)如果当前帧的预计压缩完成时间间隔(T2)小于等于前一视频帧数据所需的发送时间(T3),则抛弃当前帧,
d3)如果当前帧的预计压缩完成时间间隔(T2)大于前一视频帧数据所需的发送时间(T3),则执行上述c1)-c3)的步骤。
2.如权利要求1所述的可视电话发送端的视频帧流控制方法,其特征在于:所述当前视频帧的预计捕获时间间隔(T2)等于当前帧捕获时间点减去前一帧压缩完成时间点,再加上平均压缩时间(T1)。
3.如权利要求2所述的可视电话发送端的视频帧流控制方法,其特征在于:所述平均压缩时间(T1)等于所述当前帧之前的最近N帧的平均压缩时间。
4.如权利要求3所述的可视电话发送端的视频帧流控制方法,其特征在于:所述N大于等于5且小于等于10。
5.如权利要求1-4中任意一项所述的可视电话发送端的视频帧流控制方法,其特征在于:所述前一视频帧数据所需的发送时间(T3)等于前一视频帧数据比特数除以带宽减去单位时间内捕获的音频数据压缩后比特数总和的差得到的商。
CN2009100457355A 2009-02-03 2009-02-03 可视电话发送端的视频帧流控制方法 Active CN101795386B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2009100457355A CN101795386B (zh) 2009-02-03 2009-02-03 可视电话发送端的视频帧流控制方法
US12/648,962 US8320449B2 (en) 2009-02-03 2009-12-29 Method for controlling video frame stream

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100457355A CN101795386B (zh) 2009-02-03 2009-02-03 可视电话发送端的视频帧流控制方法

Publications (2)

Publication Number Publication Date
CN101795386A true CN101795386A (zh) 2010-08-04
CN101795386B CN101795386B (zh) 2013-07-31

Family

ID=42397708

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100457355A Active CN101795386B (zh) 2009-02-03 2009-02-03 可视电话发送端的视频帧流控制方法

Country Status (2)

Country Link
US (1) US8320449B2 (zh)
CN (1) CN101795386B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103945230A (zh) * 2013-01-18 2014-07-23 鸿富锦精密工业(深圳)有限公司 影片传输系统及方法
CN103945229A (zh) * 2013-01-18 2014-07-23 鸿富锦精密工业(深圳)有限公司 影片传输系统及方法
CN105187688A (zh) * 2015-09-01 2015-12-23 福建富士通信息软件有限公司 一种对手机采集的实时视频和音频进行同步的方法及系统
CN111212308A (zh) * 2020-01-15 2020-05-29 珠海安联锐视科技股份有限公司 一种无线网络自适应调节的方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2975853B1 (fr) * 2011-05-27 2013-05-31 Blanc Philippe Le Systeme de telecommunication multimedia multimodal
US8949488B2 (en) * 2013-02-15 2015-02-03 Compellent Technologies Data replication with dynamic compression

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6031584A (en) * 1997-09-26 2000-02-29 Intel Corporation Method for reducing digital video frame frequency while maintaining temporal smoothness
US6526097B1 (en) * 1999-02-03 2003-02-25 Sarnoff Corporation Frame-level rate control for plug-in video codecs
JP4390112B2 (ja) * 2002-09-05 2009-12-24 エージェンシー フォー サイエンス,テクノロジー アンド リサーチ ビデオシーケンスのレートを制御する方法及び装置並びにビデオ符号化装置
US7539219B2 (en) * 2005-05-12 2009-05-26 Radioshack Corporation Method and apparatus for synchronization of digital multimedia packets
US20070152908A1 (en) * 2005-12-30 2007-07-05 Khan Mionul H Adaptive image block fusion
US8355452B2 (en) * 2006-02-27 2013-01-15 Sharp Laboratories Of America, Inc. Selective frame dropping for initial buffer delay reduction

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103945230A (zh) * 2013-01-18 2014-07-23 鸿富锦精密工业(深圳)有限公司 影片传输系统及方法
CN103945229A (zh) * 2013-01-18 2014-07-23 鸿富锦精密工业(深圳)有限公司 影片传输系统及方法
CN105187688A (zh) * 2015-09-01 2015-12-23 福建富士通信息软件有限公司 一种对手机采集的实时视频和音频进行同步的方法及系统
CN105187688B (zh) * 2015-09-01 2018-03-23 福建富士通信息软件有限公司 一种对手机采集的实时视频和音频进行同步的方法及系统
CN111212308A (zh) * 2020-01-15 2020-05-29 珠海安联锐视科技股份有限公司 一种无线网络自适应调节的方法
CN111212308B (zh) * 2020-01-15 2020-09-25 珠海安联锐视科技股份有限公司 一种无线网络自适应调节的方法

Also Published As

Publication number Publication date
US8320449B2 (en) 2012-11-27
CN101795386B (zh) 2013-07-31
US20100195732A1 (en) 2010-08-05

Similar Documents

Publication Publication Date Title
CN101795386B (zh) 可视电话发送端的视频帧流控制方法
CN105472477B (zh) 一种数据传输方法、装置及设备
CN102377730A (zh) 音视频信号的处理方法及移动终端
CN101433086A (zh) 动态控制视频会议系统中的图像捕获的系统和方法
CN105163059B (zh) 一种基于智能家居设备的视频通话方法及视频通话系统
CN103260026B (zh) 在摄像机设备中拍摄移动画面的装置和方法
CN111432169B (zh) 视频传输方法、装置、设备和系统
US20090015711A1 (en) Relay apparatus and communication system
CN101547343A (zh) 一种远程视频监控的系统及方法
CN101272482A (zh) 一种网络媒体通信远程控制的方法、系统及媒体采集设备
CN109168059A (zh) 一种在不同设备上分别播放音频与视频的唇音同步方法
CN101854520A (zh) 一种无线传输视频监控系统及方法
CN114466194A (zh) 视频编码的调整方法和装置、存储介质及电子设备
US7502417B2 (en) Data transmission device and method
CN103297725A (zh) 一种电子设备控制方法及装置、遥控器
CN103826084A (zh) 一种音频编码方法
CN108712407A (zh) 一种基于浏览器的音频/视频直播方法及其系统
CN107071125A (zh) 利用云端实现智能摄像机自动拨号的方法
CN101087406A (zh) 一种监控系统即时快照的方法和系统
CN102724469A (zh) 一种利用Android终端摄像头实现视频采集的方法
EP2469851A1 (en) System and method for generating interactive voice and video response menu
US8125511B2 (en) Three-party video conference system and method
CN108924465B (zh) 视频会议发言人终端的确定方法、装置、设备和存储介质
CN108476345A (zh) 内容控制流媒体网络中的流量速率调节的方法和系统
CN114257820A (zh) 数据传输方法及相关装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant