WO2017107649A1 - 一种视频传输方法和装置 - Google Patents

一种视频传输方法和装置 Download PDF

Info

Publication number
WO2017107649A1
WO2017107649A1 PCT/CN2016/103343 CN2016103343W WO2017107649A1 WO 2017107649 A1 WO2017107649 A1 WO 2017107649A1 CN 2016103343 W CN2016103343 W CN 2016103343W WO 2017107649 A1 WO2017107649 A1 WO 2017107649A1
Authority
WO
WIPO (PCT)
Prior art keywords
frame
gop
queue
video
frames
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.)
Ceased
Application number
PCT/CN2016/103343
Other languages
English (en)
French (fr)
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.)
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing 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 Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Publication of WO2017107649A1 publication Critical patent/WO2017107649A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

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/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/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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • 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/2401Monitoring of the client 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2407Monitoring of transmitted content, e.g. distribution time, number of downloads
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Definitions

  • the present invention relates to the field of video technologies, and in particular, to a video transmission method and apparatus.
  • the present invention has been made in order to provide a video transmission method and apparatus that overcomes the above problems or at least partially solves the above problems.
  • a video transmission method including:
  • H is equal to the length of time of one picture group GOP plus a preset time offset value
  • L is greater than H and there are frames belonging to two GOPs in the buffer queue, one or more P frames are deleted from the last P frame of the previous GOP in the buffer queue such that L is less than or equal to H.
  • a video transmission apparatus comprising:
  • a receiving unit configured to receive a video stream of the collecting party, and sequentially put each video frame in the video stream into a buffer queue;
  • a cache unit adapted to cache the cache queue
  • a sending unit configured to sequentially take a video frame from the cache queue and transmit the data through the network
  • a monitoring unit configured to monitor a video frame queue length L in the cache queue
  • the congestion processing unit is adapted to perform a process of deleting a frame when L is less than or equal to H; wherein H is equal to a time length of a picture group GOP plus a preset time offset value; and is suitable when L is greater than H, and is cached When there are frames belonging to two GOPs in the queue, one or more P frames are deleted from the last P frame of the previous GOP in the buffer queue such that L is less than or equal to H.
  • a computer program comprising computer readable code that, when executed on a computing device, causes the computing device to perform a video transmission method according to the above.
  • a computer readable medium wherein a computer program as described above is stored.
  • the technical solution of the present invention sequentially takes video frames from the buffer queue and transmits them through the network, wherein the video frames are sequentially extracted from the video stream received by the collecting party and placed in the buffer pair column, and transmitted.
  • the length of the video frame queue L in the cache queue is monitored.
  • L is less than or equal to H, that is, the user can smoothly view the frame without processing, and L is greater than H, and the cache queue belongs to two.
  • the GOP frame that is, if the user has begun to appear unable to view smoothly, delete one or more P frames from the last P frame of the previous GOP in the buffer queue, such that L is less than or equal to H, where H is equal to one
  • the length of the GOP plus a preset time offset value Compared with the prior art, the technical solution provides a method for discarding video frames more efficiently, so that the user can watch more video content more smoothly in the case of poor network conditions, greatly Optimized user viewing experience.
  • FIG. 1 is a schematic flowchart diagram of a video transmission method according to an embodiment of the present invention
  • FIG. 2 is a schematic diagram showing that a video frame queue length L of a cache queue is greater than H, and a frame belonging to two GOPs exists in the buffer queue;
  • FIG. 3 is a schematic structural diagram of a video transmission apparatus according to an embodiment of the present invention.
  • Figure 4 shows schematically a block diagram of a computing device for performing the method according to the invention
  • Fig. 5 schematically shows a storage unit for holding or carrying program code implementing the method according to the invention.
  • FIG. 1 is a schematic flowchart diagram of a video transmission method according to an embodiment of the present invention. As shown in FIG. 1, the method includes:
  • Step S110 Receive a video stream of the collecting party, sequentially put each video frame in the video stream into a buffer queue, and sequentially take video frames from the buffer queue and transmit the data through the network.
  • the collecting party may be a user who performs a live webcast, and the video stream of the corresponding collecting party may be a video stream of e-sports game content, outdoor activity content, etc., which are all users who need the live broadcast platform to watch online in real time, and thus cannot be adopted. Buffered way to watch.
  • the collector can also be a live stream of live broadcasts, awards ceremonies, and the like.
  • the live content is pushed to the user, each video frame in the video stream needs to be sent to the user, and the user can watch through the player, and the size and function of the video frame are not necessarily the same, and the network transmission speed of the user usually exists. Fluctuations, so the video frames in the video stream need to be put into the buffer queue, and the video frames are sequentially taken from the queue for transmission through the network. That is to say, the cache queue is on the server side.
  • the reason that video card appears is that the user's network transmission rate is less than the video bit rate.
  • the user wants to watch the video content provided by the video provider synchronously.
  • the video provider is not considered here, such as the time taken by the collecting party to upload the collected video content and the video forwarding process on the server side. time spent.
  • the server needs to transmit the video stream to the user for viewing through the network, if the user's network transmission rate is high enough, the entire content in the video stream can be obtained very quickly.
  • the user's network transmission rate is 12500Kbps, and the video bit rate is only 1250kbps, so that the user can quickly receive all the frames in the video stream, that is, each video frame is placed in the buffer queue, and can be immediately The user takes it away.
  • the user's network transmission rate is lower than the video bit rate, a video frame is placed in the cache queue, and the user does not take it in time, resulting in more and more video frames being cached in the cache queue, and the cache queue is cached.
  • the length is limited. When the cache queue is full, some video frames in the cache queue need to be discarded.
  • the following two kinds of unsmooth experience will appear: First, since the network transmission rate is lower than the video bit rate, the video frame received on the terminal device has already been played, but no new one has been received. Video frame, then the video is stuck; second, the discarded video frame is impossible for the user to re Received, so the original dynamic video will skip this part of the video frame when it is played to the part of the video frame that has been discarded.
  • the user's network transmission rate is much smaller than the video bit rate
  • the combination of the above two situations may result in a situation where the video is almost static and the picture jumps to a picture, and the picture may be incomplete. The situation is often dubbed "card into a slide.”
  • the video stream of the collector is an H.264 video stream.
  • H.264 is a new generation of digital video compression format after MPEG4 jointly proposed by the International Organization for Standardization and the International Telecommunication Union. It has been widely used.
  • Step S120 monitoring the length L of the video frame queue in the cache queue.
  • Step S130 if L is less than or equal to H, no processing of deleting the frame is performed; wherein H is equal to the length of time of one GOP plus a preset time offset value.
  • a GOP refers to a group of consecutive pictures.
  • a video frame in an H.264 video stream includes an I frame (internal coded frame) and a P frame (forward predicted frame), and one GOP includes one I frame and multiple P frames.
  • the I frame contains a complete picture content, which is located at the front end of a GOP; and the P frame contains the difference between this frame and the previous I frame (or P frame), and the previously cached picture is needed for decoding.
  • the video length of a GOP is the time required for all frames to be played normally after decoding.
  • step S130 after the video frame in the video stream is transmitted to the terminal device of the user who views the video, for example, taking a GOP as an example, after all frames in the GOP are transmitted to the user's terminal device, the user needs to spend the video frame.
  • the time of the GOP is watched for the length of time. At this time, analysis is performed from the cache queue side. If L is less than or equal to H, it indicates that these video frames may be used during the time when the user views the transmitted GOP.
  • the preset time offset value is a case in which the idle time exists in the video transmission, and it may preferably be set to one tenth of the length of 200 ms or the GOP.
  • Step S140 if L is greater than H, and there are frames belonging to two GOPs in the buffer queue, one or more P frames are deleted from the last P frame of the previous GOP in the buffer queue, such that L is less than or equal to H.
  • the fluctuation range should be small. Therefore, the presence of frames belonging to two GOPs in the buffer queue indicates that the user does not have time to play a GOP that has been received by the user's terminal device. All frames of the next GOP can be removed from the cache queue. So this will only accumulate more and more frames in the cache queue, which will eventually lead to stuck. Therefore, in this step, one or more P frames are deleted from the last P frame of the previous GOP in the buffer queue until L is less than or equal to H. Since each P frame contains only the difference from the previous frame, deleting the P frame has the least impact on the user's viewing experience.
  • the video frames are sequentially taken from the buffer queue and transmitted through the network, wherein the video frames are sequentially extracted from the video stream received by the collecting party and placed in the cache pair column, in the transmission process.
  • the length of the video frame queue length L in the cache queue is monitored. When L is less than or equal to H, that is, the user can smoothly view the frame without processing, and L is greater than H, and the cache queue belongs to two frames.
  • the frame of the group GOP that is, if the user has begun to appear unable to view smoothly, one or more P frames are deleted from the last P frame of the previous GOP in the buffer queue, so that L is less than or equal to H, where H is equal to The length of a GOP plus a preset time offset value.
  • the technical solution provides a method for discarding video frames more efficiently, so that the user can watch more video content more smoothly in the case of poor network conditions, greatly Optimized user viewing experience.
  • the method shown in FIG. 1 further includes deleting all frames of the GOP located in the intermediate position in the buffer queue if L is greater than H and there are frames belonging to the three GOPs in the buffer queue.
  • the I frame is considered to contain the complete picture data
  • the amount of data is large, and the first I frame in the buffer queue may be being transmitted. Deleting it may cause the user to receive an incomplete I frame.
  • the picture is displayed, which reduces the user's viewing experience. When a complete GOP is deleted, only the picture jumps, and the experience is better than the flower screen.
  • detecting a video frame queue length L in the buffer queue includes: calculating, for each GOP in the buffer queue, a first frame belonging to the GOP in the cache queue The difference between the timestamp and the timestamp of the last frame, the length of time of the GOP in the cache queue is obtained; and the length of time of each GOP in the cache queue in the buffer queue is summed to obtain L.
  • a method of calculating a video frame queue length L which is actually a time length, is provided.
  • the time length of the GOP in the cache queue is calculated dynamically for each GOP in the cache queue to obtain the timestamp of the first frame and the last frame.
  • each GOP is in the cache queue.
  • the length of time in the sum is summed to get L.
  • the timestamp may be generated when it is added to the cache queue, but is not limited to this method.
  • the last P frame begins to delete one or more P frames, such that L is less than or equal to H.
  • the time frame of the first frame of the next GOP in the buffer queue is C, and the time stamp of the last frame is D; the buffer queue The timestamp of the first frame of the previous GOP is B; then the P frame in the previous GOP in the buffer queue with the timestamp greater than B+H-(DC) is deleted.
  • FIG. 2 shows a schematic diagram in which the video frame queue length L of the cache queue is greater than H, and there are frames belonging to two GOPs in the buffer queue.
  • the first frame in the latter GOP is an I frame, and its timestamp is C; the last frame is a P frame, and its timestamp is D.
  • the P frame in the previous GOP in the buffer queue with the time stamp greater than B+H-(D-C) is deleted.
  • the P frame after the time stamp X in the figure is deleted.
  • the method shown in FIG. 1 further includes: calculating a difference value of a timestamp carried by an I frame in two adjacent GOPs in the received video stream, and determining a time length of the GOP.
  • a method for dynamically calculating a GOP length in real time that is, calculating a difference of timestamps carried by I frames in two adjacent GOPs in a received video stream.
  • the timestamp may not be generated when the queue is added to the cache queue, and may be directly added to the corresponding video frame by the video stream collector.
  • FIG. 3 is a schematic structural diagram of a video transmission apparatus according to an embodiment of the present invention. As shown in FIG. 3, the video transmission apparatus 300 includes:
  • the receiving unit 310 is adapted to receive the H.264 video stream of the collecting party, and sequentially place each video frame in the video stream into a buffer queue.
  • the cache unit 320 is adapted to cache a cache queue.
  • the sending unit 330 is adapted to sequentially take video frames from the cache queue for transmission over the network.
  • the monitoring unit 340 is adapted to monitor the video frame queue length L in the buffer queue.
  • the congestion processing unit 350 is adapted to perform a process of deleting a frame when L is less than or equal to H; wherein H is equal to a time length of a GOP plus a preset time offset value; and is suitable when L is greater than H, and the buffer queue is Medium When there are frames belonging to two GOPs, one or more P frames are deleted from the last P frame of the previous GOP in the buffer queue such that L is less than or equal to H.
  • the device shown in FIG. 3 sequentially takes video frames from the buffer queue and transmits them through the network through mutual cooperation of the units, wherein the video frames are sequentially extracted from the video stream received by the collecting party and placed in the cache pair.
  • the length of the video frame queue L in the buffer queue is monitored, and when L is less than or equal to H, that is, the user can smoothly view the frame without performing the process of deleting the frame, and L is greater than H, and the buffer is There are two GOP frames in the queue, that is, if the user has to start to appear in a smooth view, one or more P frames are deleted from the last P frame of the previous GOP in the buffer queue, so that L is less than or equal to H, where H is equal to the length of time of one GOP plus a preset time offset value.
  • the technical solution provides a method for discarding video frames more efficiently, so that the user can watch more video content more smoothly in the case of poor network conditions, greatly Optimized user viewing experience.
  • the congestion processing unit 350 is further adapted to delete the cache queue in the middle when L is greater than H and there are frames belonging to the three GOPs in the buffer queue. All frames of the location of the GOP.
  • the monitoring unit 340 is adapted to calculate, for each GOP in the buffer queue, a timestamp of the first frame belonging to the GOP and a time of the last frame in the cache queue. The difference between the stamps gives the length of time that the GOP is in the cache queue; the length of time of each GOP in the cache queue in the cache queue is summed to obtain L.
  • the congestion processing unit 350 is adapted to: when there are frames belonging to two GOPs in the buffer queue, and L is greater than H, the previous GOP in the queue will be buffered.
  • the P frame with the timestamp greater than B+H-(DC) is deleted; wherein the timestamp of the first frame of the next GOP in the buffer queue is C, and the timestamp of the last frame is D; in the cache queue
  • the timestamp of the first frame of the previous GOP is B.
  • the apparatus shown in FIG. 3 further includes: a GOP length calculation unit adapted to calculate a difference of timestamps carried by I frames in two adjacent GOPs in the received video stream. , determine the length of time of the GOP.
  • the technical solution of the present invention sequentially takes video frames from the cache queue and transmits them through the network, wherein the video frames are sequentially extracted from the video stream received by the collecting party and placed in the cache pair column.
  • the length of the video frame queue L in the cache queue is monitored.
  • L is less than or equal to H, that is, the user can smoothly view the frame without performing the process of deleting the frame, and L is greater than H, and the cache queue belongs to two.
  • Frames of GOPs that is, if the user has begun to appear unable to view smoothly, one or more P frames are deleted from the last P frame of the previous GOP in the buffer queue, such that L is less than or equal to H, where H is equal to The length of a GOP plus a preset time offset value.
  • the technical solution provides a method for discarding video frames more efficiently, so that the user can watch more video content more smoothly in the case of poor network conditions, greatly Optimized user viewing experience.
  • modules in the devices of the embodiments can be adaptively changed and placed in one or more devices different from the embodiment.
  • the modules or units or components of the embodiments may be combined into one module or unit or component, and further they may be divided into a plurality of sub-modules or sub-units or sub-components.
  • any combination of the features disclosed in the specification, including the accompanying claims, the abstract and the drawings, and any methods so disclosed, or All processes or units of the device are combined.
  • Each feature disclosed in this specification (including the accompanying claims, the abstract and the drawings) may be replaced by alternative features that provide the same, equivalent or similar purpose.
  • Various component embodiments of the present invention may be implemented in hardware or on one or more processors
  • a microprocessor or digital signal processor may be used in practice to implement some or all of the functionality of some or all of the components of a video transmission device in accordance with embodiments of the present invention.
  • the invention can also be implemented as a device or device program (e.g., a computer program and a computer program product) for performing some or all of the methods described herein.
  • a program implementing the invention may be stored on a computer readable medium or may be in the form of one or more signals.
  • Such signals may be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
  • Figure 4 shows a block diagram of a computing device for performing the method in accordance with the present invention.
  • the computing device conventionally includes a processor 410 and a computer program product or computer readable medium in the form of a memory 420.
  • the memory 420 may be an electronic memory such as a flash memory, an EEPROM (Electrically Erasable Programmable Read Only Memory), an EPROM, a hard disk, or a ROM.
  • the memory 420 has a storage space 430 that stores program code 431 for performing any of the method steps described above.
  • the storage space 430 storing program code may store respective program codes 431 for implementing various steps in the above methods, respectively.
  • the program code can be read from or written to one or more computer program products.
  • These computer program products include program code carriers such as hard disks, compact disks (CDs), memory cards or floppy disks.
  • Such computer program products are typically portable or fixed storage units such as those shown in FIG.
  • the storage unit may have storage segments, storage spaces, and the like that are similarly arranged to memory 420 in the computing device of FIG.
  • the program code can be compressed, for example, in an appropriate form.
  • the storage unit stores computer readable program code 431', i.e., program code readable by a processor, such as 410, which, when executed by a computing device, causes the computing device to perform the operations described above. The various steps in the method.

Landscapes

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

Abstract

公开了一种视频传输方法和装置。其中所述方法包括:接收采集方的视频流,将该视频流中的各视频帧依次放入缓存队列中,以及从缓存队列中依次取视频帧通过网络进行传输;监测缓存队列中的视频帧队列长度L;如果L小于或等于H,则不做删除帧的处理;其中H等于一个画面组GOP的时间长度加上一个预设时间偏移值;如果L大于H,且缓存队列中存在属于两个GOP的帧,则从缓存队列中的前一个GOP的最后一个P帧开始删除一个或多个P帧,使得L小于或等于H。该技术方案与现有技术相比,提供了一种更有效率地丢弃视频帧的方法,使得用户在网络状况较差的情况下,可以更为流畅地观看到更多的视频内容,极大地优化了用户的观看体验。

Description

一种视频传输方法和装置 技术领域
本发明涉及视频技术领域领域,特别涉及一种视频传输方法和装置。
背景技术
用户在通过互联网观看视频时,即便是体现为“在线观看”,也需要从提供视频的服务器端获取数据,下载到本地才能进行观看,因此在用户网络状况不佳的情况下,由于接收视频传输的速度不足,无法在视频以正常速度播放的时间内获取到播放所需的视频数据,造成卡顿。此时很多视频网站都会提醒用户,使用清晰度更低,即视频数据量较小的视频分辨率格式进行观看,或将所观看的视频暂停,待缓冲到足够多的视频数据后再进行观看。但后一种方式并不适合直播视频的观看,即不能满足用户实时观看视频的需求;前一种方式在用户网络状况较差时也不能为用户提供较好的观看效果。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的视频传输方法和装置。
依据本发明的一个方面,提供了一种视频传输方法,包括:
接收采集方的视频流,将该视频流中的各视频帧依次放入缓存队列中,以及从缓存队列中依次取视频帧通过网络进行传输;
监测缓存队列中的视频帧队列长度L;
如果L小于或等于H,则不做删除帧的处理;其中H等于一个画面组GOP的时间长度加上一个预设时间偏移值;
如果L大于H,且缓存队列中存在属于两个GOP的帧,则从缓存队列中的前一个GOP的最后一个P帧开始删除一个或多个P帧,使得L小于或等于H。
依据本发明的另一方面,提供了一种视频传输装置,包括:
接收单元,适于接收采集方的视频流,将该视频流中的各视频帧依次放入缓存队列中;
缓存单元,适于缓存所述缓存队列;
发送单元,适于从缓存队列中依次取视频帧通过网络进行传输;
监测单元,适于监测缓存队列中的视频帧队列长度L;
拥塞处理单元,适于当L小于或等于H时,不做删除帧的处理;其中H等于一个画面组GOP的时间长度加上一个预设时间偏移值;适于当L大于H,且缓存队列中存在属于两个GOP的帧时,从缓存队列中的前一个GOP的最后一个P帧开始删除一个或多个P帧,使得L小于或等于H。
依据本发明的另一个方面,提供了一种计算机程序,包括计算机可读代码,当所述计算机可读代码在计算设备上运行时,导致所述计算设备执行根据上述的一种视频传输方法。
依据本发明的另一个方面,提供了一种计算机可读介质,其中存储了如上所述的计算机程序。
由上述可知,本发明的技术方案,从缓存队列中依次取视频帧并通过网络进行传输,其中视频帧是从采集方接收到的视频流中依次提取并放入缓存对列中的,在传输过程中,监测缓存队列中的视频帧队列长度L,在L小于或等于H,即用户可以流畅观看的情况下不做删除帧的处理,而在L大于H,且缓存队列中存在属于两个GOP的帧,即用户已经要开始出现不能流畅观看的情况下,从缓存队列中的前一个GOP的最后一个P帧开始删除一个或多个P帧,使得L小于或等于H,其中H等于一个GOP的时间长度加上一个预设时间偏移值。该技术方案与现有技术相比,提供了一种更有效率地丢弃视频帧的方法,使得用户在网络状况较差的情况下,可以更为流畅地观看到更多的视频内容,极大地优化了用户的观看体验。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特 征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的一种视频传输方法的流程示意图;
图2示出了缓存队列的视频帧队列长度L大于H,且缓存队列中存在属于两个GOP的帧的示意图;
图3示出了根据本发明一个实施例的一种视频传输装置的结构示意图;
图4示意性地示出了用于执行根据本发明的方法的计算设备的框图;以及
图5示意性地示出了用于保持或者携带实现根据本发明的方法的程序代码的存储单元。
具体实施例
下面结合附图和示例性实施例对本发明作进一步地描述,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。此外,如果已知技术的详细描述对于示出本发明的特征是不必要的,则将其省略。
图1示出了根据本发明一个实施例的一种视频传输方法的流程示意图,如图1所示,该方法包括:
步骤S110,接收采集方的视频流,将该视频流中的各视频帧依次放入缓存队列中,以及从缓存队列中依次取视频帧通过网络进行传输。
其中,采集方可以是进行网络直播的用户,对应的采集方的视频流可以是电子竞技游戏内容、户外活动内容等的视频流,这些都是需要直播平台的用户在线实时观看的,因此不能采用缓冲的方式进行观看。类似地,采集方还可以是直播晚会、颁奖典礼等现场直播采集的视频流。而向用户推送这些直播内容时,需要将视频流中的各视频帧发送给用户,用户才能通过播放器进行观看,而视频帧的大小和作用并不一定相同,用户的网络传输速度也通常存在波动,因此需要将视频流中的视频帧放入缓存队列,从该队列中依次取视频帧通过网络进行传输。也即是说,该缓存队列在服务器侧。
视频卡顿出现的原因是:用户的网络传输速率小于视频码率。以直播为例,用户希望同步观看到视频提供方提供的视频内容,为方便起见,在此不考虑视频提供方,如采集方上传采集的视频内容所要花费的时间和视频转发过程中在服务器侧花费的时间。当服务器需要将视频流通过网络传输给用户进行观看时,如果用户的网络传输速率足够高,就可以极快地获取到视频流中的全部内容。例如,用户的网络传输速率为12500Kbps,而视频码率仅为1250kbps,这样用户就可以很快地接收该视频流中的所有帧,即每向缓存队列中放入一个视频帧,都可以马上被用户取走。而在用户的网络传输速率小于视频码率的情况下,就会出现向缓存队列中放入一个视频帧,用户没有及时取走,导致缓存队列中缓存的视频帧越来越多,而缓存队列的长度是有限的,在缓存队列已满的情况下,就需要将缓存队列中的一些视频帧进行丢弃处理。这样在用户的终端设备上,会出现以下两种观看不流畅的体验:一,由于网络传输速率小于视频码率,就会出现终端设备上已接收的视频帧已播放完,但没有接收到新的视频帧,于是视频卡住;二,丢弃的视频帧由于不可能被用户再 接收到,因此原本动态的视频在播放到已被丢弃的视频帧部分时,就会直接跳过这部分内容。在用户的网络传输速率远小于视频码率的情况下,上述两种情况结合,更是会出现视频几乎为静态的一个画面跳到一个画面的情况,而且画面还可能是不完整的,这种情况往往被戏称为“卡成幻灯片”。
在本发明的一个优选实施例中采集方的视频流为H.264视频流。H.264是国际标准化组织和国际电信联盟共同提出的继MPEG4之后的新一代数字视频压缩格式,已经得到了广泛应用。
步骤S120,监测缓存队列中的视频帧队列长度L。
步骤S130,如果L小于或等于H,则不做删除帧的处理;其中H等于一个GOP的时间长度加上一个预设时间偏移值。
GOP(Group of Pictures,画面组)是指一组连续的画面,例如,H.264视频流中的视频帧包括I帧(内部编码帧)和P帧(前向预测帧),一个GOP包括一个I帧和多个P帧。其中I帧包含一个完整的画面内容,在一个GOP中位于最前端的位置;而P帧包含是这一帧跟之前的一个I帧(或P帧)的差别,解码时需要用之前缓存的画面叠加上该P帧定义的差别,生成最终画面。也即是说,P帧是差别帧,并不含有完整画面数据,只有与前一帧的画面差别的数据。因此可以看出,一个GOP如果缺少了I帧,那么该GOP中的其余P帧都因为缺少了其中包含的差别的对象帧,从而无法正常解码,出现花屏等现象。一个GOP的视频长度就是其中所有帧解码后正常播放所需的时间。
因此在步骤S130中,考虑到视频流中的视频帧传输到观看视频的用户的终端设备后,例如以一个GOP为例,该GOP中的所有帧传输到用户的终端设备后,用户需要花费该GOP的时间长度的时间进行观看。此时从缓存队列侧进行分析,如果L小于或等于H,则说明在用户观看已传输的GOP的时间内,还是可能将这些视频帧 传输到用户的终端设备上的,这样用户在播放完已接收的GOP中的所有帧后,马上可以继续播放其余视频帧(即原本处于缓存队列长度中的视频帧队列长度L内的视频帧),这样在用户的终端设备上就不存在卡顿的情况。因此,不对这种情况进行删除帧的处理。其中预设时间偏移值是考虑到视频传输中存在空闲时间的情况,优选地可以将其设置为200ms或GOP时间长度的十分之一。
步骤S140,如果L大于H,且缓存队列中存在属于两个GOP的帧,则从缓存队列中的前一个GOP的最后一个P帧开始删除一个或多个P帧,使得L小于或等于H。
考虑到用户的网络虽然可能存在波动,但波动范围应该很小,因此,缓存队列中存在属于两个GOP的帧就说明,在用户的终端设备播放已接收的一个GOP的时间内,用户并没有能够从缓存队列中取走下一个GOP的所有帧。因此这样只会在缓存队列中积攒越来越多的帧,最终导致卡顿。因此,在该步骤中,从缓存队列中的前一个GOP的最后一个P帧开始删除一个或多个P帧直到L小于或等于H。由于每个P帧只包含了与前一个帧的差别,因此删除P帧对用户的观看体验影响最小。
可见,图1所示的方法,从缓存队列中依次取视频帧并通过网络进行传输,其中视频帧是从采集方接收到的视频流中依次提取并放入缓存对列中的,在传输过程中,监测缓存队列中的视频帧队列长度L,在L小于或等于H,即用户可以流畅观看的情况下不做删除帧的处理,而在L大于H,且缓存队列中存在属于两个画面组GOP的帧,即用户已经要开始出现不能流畅观看的情况下,从缓存队列中的前一个GOP的最后一个P帧开始删除一个或多个P帧,使得L小于或等于H,其中H等于一个GOP的时间长度加上一个预设时间偏移值。该技术方案与现有技术相比,提供了一种更有效率地丢弃视频帧的方法,使得用户在网络状况较差的情况下,可以更为流畅地观看到更多的视频内容,极大地优化了用户的观看体验。
在本发明的一个实施例中,图1所示的方法进一步包括:如果L大于H,且缓存队列中存在属于三个GOP的帧,则删除缓存队列中的位于中间位置的GOP的所有帧。
由于在上述实施例中,只执行了对P帧的删除处理,则可能出现如下情形:缓存队列中存在一个I帧,该I帧对应的GOP的其余P帧已被全部删除。而缓存队列中在该I帧之后存在一个完整的GOP的所有帧,以及另一个GOP的部分帧。这时按照图1中的方法,由于缓存队列中的最前一个GOP中的所有P帧已被删除,因此不再执行任何操作,而此时缓存队列的长度由于包含了三个GOP的帧可能十分长,容易引起更严重的卡顿。因此在本实施例中需要对中间位置的GOP的所有帧进行删除,即删除了一个完整的GOP。这时因为考虑到I帧由于包含了完整的画面数据,其数据量较大,缓存队列中的最前一个I帧可能正在传输,将其删除可能会导致用户接收到一个不完整的I帧,将其解码后观看到花屏的画面,降低了用户的观看体验,而将一个完整的GOP删除,只会出现画面跳一下的情形,相比于花屏,体验较好一些。
具体地,在本发明的一个实施例中,上述方法中,检测缓存队列中的视频帧队列长度L包括:对于缓存队列中的每个GOP,计算缓存队列中的属于该GOP的第一个帧的时间戳和最后一个帧的时间戳的差值,得到该GOP在缓存队列中的时间长度;将缓存队列中的各GOP在缓存队列中的时间长度求和,得到L。
在本实施例中提供了计算视频帧队列长度L的方法,该长度L实际为时间长度。在该实施例中,动态地对缓存队列中每个GOP以获取其第一个帧和最后一个帧的时间戳的方式计算得到该GOP在缓存队列中的时间长度,最后将各GOP在缓存队列中的时间长度进行求和得到L。其中,时间戳可以是在加入缓存队列时对应生成的,但并不限于此种方法。
在本发明的一个实施例中,图1所示的方法中,从缓存队列中的前一个GOP的 最后一个P帧开始删除一个或多个P帧,使得L小于或等于H包括:缓存队列中的后一个GOP的第一个帧的时间戳为C,最后一个帧的时间戳为D;缓存队列中的前一个GOP的第一个帧的时间戳为B;则将缓存队列中的前一个GOP中的时间戳大于B+H-(D-C)的P帧都删除。
图2示出了缓存队列的视频帧队列长度L大于H,且缓存队列中存在属于两个GOP的帧的示意图。如图2所示,后一个GOP中的第一个帧为I帧,其时间戳为C;最后一个帧为P帧,其时间戳为D。则将缓存队列中的前一个GOP中的时间戳大于B+H-(D-C)的P帧都删除,例如,将图中时间戳为X之后的P帧都删除。
在本发明的一个实施例中,图1所示的方法进一步包括:计算所接收的视频流中的相邻两个GOP中的I帧所携带的时间戳的差值,确定GOP的时间长度。
在本实施例中,提供了一种实时动态地计算GOP长度的方法,即计算所接收的视频流中的相邻两个GOP中的I帧所携带的时间戳的差值。在此实施例中时间戳就不可以是在加入缓存队列时产生的,可以是在视频流采集方直接添加到相应的视频帧中。
图3示出了根据本发明一个实施例的一种视频传输装置的结构示意图,如图3所示,视频传输装置300包括:
接收单元310,适于接收采集方的H.264视频流,将该视频流中的各视频帧依次放入缓存队列中。
缓存单元320,适于缓存缓存队列。
发送单元330,适于从缓存队列中依次取视频帧通过网络进行传输。
监测单元340,适于监测缓存队列中的视频帧队列长度L。
拥塞处理单元350,适于当L小于或等于H时,不做删除帧的处理;其中H等于一个GOP的时间长度加上一个预设时间偏移值;适于当L大于H,且缓存队列中 存在属于两个GOP的帧时,从缓存队列中的前一个GOP的最后一个P帧开始删除一个或多个P帧,使得L小于或等于H。
可见,图3所示的装置,通过各单元的相互配合,从缓存队列中依次取视频帧并通过网络进行传输,其中视频帧是从采集方接收到的视频流中依次提取并放入缓存对列中的,在传输过程中,监测缓存队列中的视频帧队列长度L,在L小于或等于H,即用户可以流畅观看的情况下不做删除帧的处理,而在L大于H,且缓存队列中存在属于两个GOP的帧,即用户已经要开始出现不能流畅观看的情况下,从缓存队列中的前一个GOP的最后一个P帧开始删除一个或多个P帧,使得L小于或等于H,其中H等于一个GOP的时间长度加上一个预设时间偏移值。该技术方案与现有技术相比,提供了一种更有效率地丢弃视频帧的方法,使得用户在网络状况较差的情况下,可以更为流畅地观看到更多的视频内容,极大地优化了用户的观看体验。
在本发明的一个实施例中,图3所示的装置中,拥塞处理单元350,进一步适于当L大于H,且缓存队列中存在属于三个GOP的帧时,删除缓存队列中的位于中间位置的GOP的所有帧。
在本发明的一个实施例中,上述装置中,监测单元340,适于对于缓存队列中的每个GOP,计算缓存队列中的属于该GOP的第一个帧的时间戳和最后一个帧的时间戳的差值,得到该GOP在缓存队列中的时间长度;将缓存队列中的各GOP在缓存队列中的时间长度求和,得到L。
在本发明的一个实施例中,图3所示的装置中,拥塞处理单元350,适于当缓存队列中存在属于两个GOP的帧,且L大于H时,将缓存队列中的前一个GOP中的时间戳大于B+H-(D-C)的P帧都删除;其中,缓存队列中的后一个GOP的第一个帧的时间戳为C,最后一个帧的时间戳为D;缓存队列中的前一个GOP的第一个帧的时间戳为B。
在本发明的一个实施例中,图3所示的装置进一步包括:GOP长度计算单元,适于计算所接收的视频流中的相邻两个GOP中的I帧所携带的时间戳的差值,确定GOP的时间长度。
需要说明的是,上述各装置实施例的具体实施方式与前述对应方法实施例的具体实施方式相同,在此不再赘述。
综上所述,本发明的技术方案,从缓存队列中依次取视频帧并通过网络进行传输,其中视频帧是从采集方接收到的视频流中依次提取并放入缓存对列中的,在传输过程中,监测缓存队列中的视频帧队列长度L,在L小于或等于H,即用户可以流畅观看的情况下不做删除帧的处理,而在L大于H,且缓存队列中存在属于两个GOP的帧,即用户已经要开始出现不能流畅观看的情况下,从缓存队列中的前一个GOP的最后一个P帧开始删除一个或多个P帧,使得L小于或等于H,其中H等于一个GOP的时间长度加上一个预设时间偏移值。该技术方案与现有技术相比,提供了一种更有效率地丢弃视频帧的方法,使得用户在网络状况较差的情况下,可以更为流畅地观看到更多的视频内容,极大地优化了用户的观看体验。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
需要说明的是:
在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运 行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的视频传输装置的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
例如,图4示出了用于执行根据本发明的方法的计算设备的框图。该计算设备传统上包括处理器410和以存储器420形式的计算机程序产品或者计算机可读介质。存储器420可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器420具有存储用于执行上述方法中的任何方法步骤的程序代码431的存储空间430。例如,存储程序代码的存储空间430可以存储分别用于实现上面的方法中的各种步骤的各个程序代码431。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为例如图5所示的便携式或者固定存储单元。该存储单元可以具有与图4的计算设备中的存储器420类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元存储有计算机可读程序代码431’,即可以由例如诸如410之类的处理器读取的程序代码,当这些程序代码由计算设备运行时,导致该计算设备执行上面所描述的方法中的各个步骤。
本文中所称的“一个实施例”、“实施例”或者“一个或者多个实施例”意味着,结合实施例描述的特定特征、结构或者特性包括在本发明的至少一个实施例中。此外,请注意,这里“在一个实施例中”的词语例子不一定全指同一个实施例。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
此外,还应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。

Claims (12)

  1. 一种视频传输方法,其中,该方法包括:
    接收采集方的视频流,将该视频流中的各视频帧依次放入缓存队列中,以及从缓存队列中依次取视频帧通过网络进行传输;
    监测缓存队列中的视频帧队列长度L;
    如果L小于或等于H,则不做删除帧的处理;其中H等于一个画面组GOP的时间长度加上一个预设时间偏移值;
    如果L大于H,且缓存队列中存在属于两个GOP的帧,则从缓存队列中的前一个GOP的最后一个P帧开始删除一个或多个P帧,使得L小于或等于H。
  2. 如权利要求1所述的方法,其中,该方法进一步包括:
    如果L大于H,且缓存队列中存在属于三个GOP的帧,则删除缓存队列中的位于中间位置的GOP的所有帧。
  3. 如权利要求1或2所述的方法,其中,所述检测缓存队列中的视频帧队列长度L包括:
    对于缓存队列中的每个GOP,计算缓存队列中的属于该GOP的第一个帧的时间戳和最后一个帧的时间戳的差值,得到该GOP在缓存队列中的时间长度;
    将缓存队列中的各GOP在缓存队列中的时间长度求和,得到L。
  4. 如权利要求1所述的方法,其中,所述从缓存队列中的前一个GOP的最后一个P帧开始删除一个或多个P帧,使得L小于或等于H包括:
    缓存队列中的后一个GOP的第一个帧的时间戳为C,最后一个帧的时间戳为D;缓存队列中的前一个GOP的第一个帧的时间戳为B;
    则将缓存队列中的前一个GOP中的时间戳大于B+H-(D-C)的P帧都删除。
  5. 如权利要求1所述的方法,其中,该方法进一步包括:
    计算所接收的视频流中的相邻两个GOP中的I帧所携带的时间戳的差值,确定GOP的时间长度。
  6. 一种视频传输装置,其中,该装置包括:
    接收单元,适于接收采集方的视频流,将该视频流中的各视频帧依次放入缓存队列中;
    缓存单元,适于缓存所述缓存队列;
    发送单元,适于从缓存队列中依次取视频帧通过网络进行传输;
    监测单元,适于监测缓存队列中的视频帧队列长度L;
    拥塞处理单元,适于当L小于或等于H时,不做删除帧的处理;其中H等于一个画面组GOP的时间长度加上一个预设时间偏移值;适于当L大于H,且缓存队列中存在属于两个GOP的帧时,从缓存队列中的前一个GOP的最后一个P帧开始删除一个或多个P帧,使得L小于或等于H。
  7. 如权利要求6所述的装置,其中,
    所述拥塞处理单元,进一步适于当L大于H,且缓存队列中存在属于三个GOP的帧时,删除缓存队列中的位于中间位置的GOP的所有帧。
  8. 如权利要求6或7所述的装置,其中,
    所述监测单元,适于对于缓存队列中的每个GOP,计算缓存队列中的属于该GOP的第一个帧的时间戳和最后一个帧的时间戳的差值,得到该GOP在缓存队列中的时间长度;将缓存队列中的各GOP在缓存队列中的时间长度求和,得到L。
  9. 如权利要求6所述的装置,其中,
    所述拥塞处理单元,适于当缓存队列中存在属于两个GOP的帧,且L大于H时,将缓存队列中的前一个GOP中的时间戳大于B+H-(D-C)的P帧都删除;
    其中,缓存队列中的后一个GOP的第一个帧的时间戳为C,最后一个帧的时间戳为D;缓存队列中的前一个GOP的第一个帧的时间戳为B。
  10. 如权利要求6所述的装置,其中,该装置进一步包括:
    GOP长度计算单元,适于计算所接收的视频流中的相邻两个GOP中的I帧所携带的时间戳的差值,确定GOP的时间长度。
  11. 一种计算机程序,包括计算机可读代码,当所述计算机可读代码在计算设备上运行时,导致所述计算设备执行根据权利要求1-5中的任一个所述的视频传输方法。
  12. 一种计算机可读介质,其中存储了如权利要求11所述的计算机程序。
PCT/CN2016/103343 2015-12-22 2016-10-26 一种视频传输方法和装置 Ceased WO2017107649A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510974709.6 2015-12-22
CN201510974709.6A CN105611309B (zh) 2015-12-22 2015-12-22 一种视频传输方法和装置

Publications (1)

Publication Number Publication Date
WO2017107649A1 true WO2017107649A1 (zh) 2017-06-29

Family

ID=55990802

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/103343 Ceased WO2017107649A1 (zh) 2015-12-22 2016-10-26 一种视频传输方法和装置

Country Status (2)

Country Link
CN (1) CN105611309B (zh)
WO (1) WO2017107649A1 (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110830838A (zh) * 2018-08-10 2020-02-21 高新兴科技集团股份有限公司 一种安防高清录像倒播方法及装置
CN111556010A (zh) * 2020-03-23 2020-08-18 北京达佳互联信息技术有限公司 直播流缓存方法、装置、电子设备及存储介质
CN111666195A (zh) * 2020-05-26 2020-09-15 上海连尚网络科技有限公司 一种用于提供视频信息或者图像信息的方法与设备
CN113068074A (zh) * 2021-03-24 2021-07-02 浙江大华技术股份有限公司 缓存方法和装置、计算机可读的存储介质及电子装置
CN114500944A (zh) * 2022-01-21 2022-05-13 浪潮软件集团有限公司 一种基于国产cpu和os的视频处理系统
CN114629996A (zh) * 2022-03-24 2022-06-14 咪咕音乐有限公司 视频彩铃推送方法、设备、存储介质及装置
CN115348418A (zh) * 2022-07-14 2022-11-15 成都中科创达软件有限公司 流媒体数据缓存方法,装置、电子设备、存储介质及产品
CN115866162A (zh) * 2021-09-26 2023-03-28 中移雄安信息通信科技有限公司 视频流生成方法、装置、电子设备及存储介质
CN116801034A (zh) * 2023-08-25 2023-09-22 海马云(天津)信息技术有限公司 客户端保存音视频数据的方法和装置
CN119052432A (zh) * 2024-10-31 2024-11-29 通号通信信息集团有限公司 一种视频监控系统中的视频流传输方法、设备及存储介质

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105611309B (zh) * 2015-12-22 2019-03-05 北京奇虎科技有限公司 一种视频传输方法和装置
CN106791899A (zh) * 2016-12-13 2017-05-31 飞狐信息技术(天津)有限公司 直播中减少观众端画面卡顿的方法及装置以及客户端
CN106792247A (zh) * 2016-12-13 2017-05-31 飞狐信息技术(天津)有限公司 减少时延的直播流推送方法及装置、直播系统
CN106713947A (zh) * 2016-12-13 2017-05-24 飞狐信息技术(天津)有限公司 减少直播时延和卡顿的方法及装置、直播系统
CN106604064A (zh) * 2016-12-30 2017-04-26 北京奇艺世纪科技有限公司 一种快速开播方法及装置
CN107347065A (zh) * 2017-06-29 2017-11-14 上海鋆创信息技术有限公司 一种数据推送方法及装置、一种终端及存储介质
CN107809682A (zh) * 2017-11-14 2018-03-16 北京威速科技有限公司 一种调节发送缓冲数据量的视频流量控制方法
CN108347645B (zh) * 2018-01-19 2021-02-26 浙江大华技术股份有限公司 一种视频帧解码显示的方法及装置
CN110062003B (zh) * 2019-04-30 2022-01-25 北京金山云网络技术有限公司 视频数据发送方法、装置、电子设备及存储介质
CN110312159B (zh) * 2019-05-24 2022-03-11 深圳市朗强科技有限公司 一种信号接收装置、流媒体传输系统及流媒体传输方法
CN112804579B (zh) * 2019-11-14 2023-02-28 上海哔哩哔哩科技有限公司 视频播放方法、装置、计算机设备和可读存储介质
CN111491201B (zh) * 2020-04-08 2023-04-25 深圳市昊一源科技有限公司 调整视频码流的方法及视频丢帧处理方法
CN113556505B (zh) * 2020-04-23 2022-11-25 杭州海康威视数字技术股份有限公司 数据处理方法、装置、电子设备及可读存储介质
CN112383771B (zh) * 2020-11-11 2025-05-23 中国传媒大学 Ip化视频制播系统中音视频监测方法
CN113873295B (zh) * 2021-10-26 2024-05-28 北京金山云网络技术有限公司 多媒体信息处理方法、装置、设备及存储介质
CN115134549B (zh) * 2022-05-27 2025-09-23 广州高新兴机器人有限公司 基于机器人的离线视频保存方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101360058A (zh) * 2008-09-08 2009-02-04 华为技术有限公司 一种控制缓存溢出的方法及装置
CN101626507A (zh) * 2008-07-07 2010-01-13 华为技术有限公司 一种识别rtp包的帧类型的方法、装置及系统
JP2013207375A (ja) * 2012-03-27 2013-10-07 Kddi Technology Corp ストリーミングデータ伝送システム、ストリーミングデータの伝送方法およびプログラム
CN104394421A (zh) * 2013-09-23 2015-03-04 贵阳朗玛信息技术股份有限公司 视频帧的处理方法及装置
CN104702968A (zh) * 2015-02-17 2015-06-10 华为技术有限公司 一种视频帧丢帧方法及视频发送装置
CN105611309A (zh) * 2015-12-22 2016-05-25 北京奇虎科技有限公司 一种视频传输方法和装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7221656B1 (en) * 2002-06-18 2007-05-22 Nortel Networks Limited Technique for implementing an admission control scheme for data flows
CN101232455B (zh) * 2008-02-04 2011-05-11 中兴通讯股份有限公司 一种拥塞控制方法及装置
CN101699867A (zh) * 2009-10-28 2010-04-28 武汉世纪信通通信产业有限公司 一种视频数据传输速率动态调整方法
CN102223218B (zh) * 2010-04-15 2014-06-25 华为技术有限公司 媒体报文重传抑制方法和设备
CN102695058B (zh) * 2012-05-30 2014-07-02 北京世纪鼎点软件有限公司 基于大尺度缓冲策略的音、视频编码流控方法
CN102970585B (zh) * 2012-11-30 2015-01-14 武汉市烽视威科技有限公司 一种流媒体快速频道切换的方法
CN104702972B (zh) * 2014-01-03 2018-04-20 杭州海康威视数字技术股份有限公司 一种自适应图像数据发送方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101626507A (zh) * 2008-07-07 2010-01-13 华为技术有限公司 一种识别rtp包的帧类型的方法、装置及系统
CN101360058A (zh) * 2008-09-08 2009-02-04 华为技术有限公司 一种控制缓存溢出的方法及装置
JP2013207375A (ja) * 2012-03-27 2013-10-07 Kddi Technology Corp ストリーミングデータ伝送システム、ストリーミングデータの伝送方法およびプログラム
CN104394421A (zh) * 2013-09-23 2015-03-04 贵阳朗玛信息技术股份有限公司 视频帧的处理方法及装置
CN104702968A (zh) * 2015-02-17 2015-06-10 华为技术有限公司 一种视频帧丢帧方法及视频发送装置
CN105611309A (zh) * 2015-12-22 2016-05-25 北京奇虎科技有限公司 一种视频传输方法和装置

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110830838B (zh) * 2018-08-10 2024-01-09 高新兴科技集团股份有限公司 一种安防高清录像倒播方法及装置
CN110830838A (zh) * 2018-08-10 2020-02-21 高新兴科技集团股份有限公司 一种安防高清录像倒播方法及装置
CN111556010A (zh) * 2020-03-23 2020-08-18 北京达佳互联信息技术有限公司 直播流缓存方法、装置、电子设备及存储介质
CN111666195A (zh) * 2020-05-26 2020-09-15 上海连尚网络科技有限公司 一种用于提供视频信息或者图像信息的方法与设备
CN111666195B (zh) * 2020-05-26 2024-06-04 上海连尚网络科技有限公司 一种用于提供视频信息或者图像信息的方法与设备
CN113068074A (zh) * 2021-03-24 2021-07-02 浙江大华技术股份有限公司 缓存方法和装置、计算机可读的存储介质及电子装置
CN113068074B (zh) * 2021-03-24 2023-03-24 浙江大华技术股份有限公司 缓存方法和装置、计算机可读的存储介质及电子装置
CN115866162A (zh) * 2021-09-26 2023-03-28 中移雄安信息通信科技有限公司 视频流生成方法、装置、电子设备及存储介质
CN114500944A (zh) * 2022-01-21 2022-05-13 浪潮软件集团有限公司 一种基于国产cpu和os的视频处理系统
CN114629996A (zh) * 2022-03-24 2022-06-14 咪咕音乐有限公司 视频彩铃推送方法、设备、存储介质及装置
CN115348418A (zh) * 2022-07-14 2022-11-15 成都中科创达软件有限公司 流媒体数据缓存方法,装置、电子设备、存储介质及产品
CN116801034B (zh) * 2023-08-25 2023-11-03 海马云(天津)信息技术有限公司 客户端保存音视频数据的方法和装置
CN116801034A (zh) * 2023-08-25 2023-09-22 海马云(天津)信息技术有限公司 客户端保存音视频数据的方法和装置
CN119052432A (zh) * 2024-10-31 2024-11-29 通号通信信息集团有限公司 一种视频监控系统中的视频流传输方法、设备及存储介质

Also Published As

Publication number Publication date
CN105611309A (zh) 2016-05-25
CN105611309B (zh) 2019-03-05

Similar Documents

Publication Publication Date Title
CN105611309A (zh) 一种视频传输方法和装置
TWI519150B (zh) 追蹤來自一接收裝置之使用者互動
CN106162235B (zh) 用于切换视频流的方法和装置
CN108270738B (zh) 一种视频处理方法及网络设备
CN109257631B (zh) 视频轮播播放方法、装置、计算机设备及存储介质
US20180376195A1 (en) Live streaming quick start method and system
EP3291551A1 (en) Image delay detection method and system
WO2017166509A1 (zh) 视频回看控制方法及装置
US20100242066A1 (en) Method of Performing Random Seek Preview for Streaming Video
CN110381326B (zh) 视频系统及处理方法、设备与计算机可读介质
CN110784740A (zh) 视频处理方法、装置、服务器及可读存储介质
WO2016131223A1 (zh) 一种视频帧丢帧方法及视频发送装置
KR20140008386A (ko) 매트릭스 코드를 이용한 플레이스쉬프팅 이용
CN109089154A (zh) 一种视频提取方法、装置、设备及介质
CN106411927A (zh) 一种监控录像方法和装置
US20130335447A1 (en) Electronic device and method for playing real-time images in a virtual reality
CN112423140A (zh) 视频播放方法、装置、电子设备和存储介质
CN106412677A (zh) 一种回放视频文件的生成方法和装置
US20170201353A1 (en) Backfill of video stream
CN109089127A (zh) 一种视频拼接方法、装置、设备及介质
US10021433B1 (en) Video-production system with social-media features
CN109040773A (zh) 一种视频改进方法、装置、设备及介质
US10033930B2 (en) Method of reducing a video file size for surveillance
CN112911343B (zh) 一种多路视频的播放方法、装置、电子设备及存储介质
CN106713941A (zh) 一种音视频直播的实现方法和服务器

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16877460

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16877460

Country of ref document: EP

Kind code of ref document: A1