CN112055174B - 一种视频传输方法、装置及计算机可读存储介质 - Google Patents

一种视频传输方法、装置及计算机可读存储介质 Download PDF

Info

Publication number
CN112055174B
CN112055174B CN202010875485.4A CN202010875485A CN112055174B CN 112055174 B CN112055174 B CN 112055174B CN 202010875485 A CN202010875485 A CN 202010875485A CN 112055174 B CN112055174 B CN 112055174B
Authority
CN
China
Prior art keywords
video
packet
transmission
video packet
time length
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.)
Active
Application number
CN202010875485.4A
Other languages
English (en)
Other versions
CN112055174A (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.)
Shenzhen Infinova Intelligent Technology Co Ltd
Original Assignee
Shenzhen Infinova Intelligent Technology 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 Shenzhen Infinova Intelligent Technology Co Ltd filed Critical Shenzhen Infinova Intelligent Technology Co Ltd
Priority to CN202010875485.4A priority Critical patent/CN112055174B/zh
Publication of CN112055174A publication Critical patent/CN112055174A/zh
Application granted granted Critical
Publication of CN112055174B publication Critical patent/CN112055174B/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/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex 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/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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • 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
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network

Landscapes

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

Abstract

本申请适用于通信技术领域,提供了一种视频传输方法和装置,其中,方法包括:确定待传输的第一视频包的大小,并基于第一视频包的大小从编码后的视频中获取第一视频包;第一视频包中包括至少一个关键视频帧;向目标终端发送第一视频包,并确定第一视频包的传输时长;若第一视频包的传输时长小于第一预设时长阈值,则根据第一视频包的大小和第一预设倍数确定待传输的第二视频包的大小;第一预设倍数大于1;基于第二视频包的大小从编码后的视频中获取第二视频包,并向目标终端发送第二视频包;第二视频包中包括至少一个关键视频帧,第二视频包中包括的关键视频帧与第一视频包中包括的所述关键视频帧不同。上述视频传输方法能够提高视频的传输效率。

Description

一种视频传输方法、装置及计算机可读存储介质
技术领域
本申请属于通信技术领域,尤其涉及一种视频传输方法、装置及计算机可读存储介质。
背景技术
目前,为了实现对一些场景(如商场或超市等)的实时监控,可以在这些场景中安装监控设备。通常,监控设备需要将其采集到的视频传输至后台终端进行实时显示。监控设备在传输视频时,为了提高视频的传输效率,通常会对视频进行编码以压缩视频,再将编码后的视频传输至后台终端。编码后的视频通常包括I帧和P帧,I帧是一个全帧压缩编码帧,是将全帧图像信息进行压缩编码和传输,且在解码时仅用I帧的数据就可重构完整图像。P帧是前向预测编码帧,采用运动补偿的方法传送它与前面的I或P帧的差值及运动矢量(预测误差),且在解码时必须将I帧中的预测值与预测误差求和后才能重构完整的P帧图像。
由于I帧通常具有较大的码率,并且大小通常为P帧的几十倍或上百倍,因此,监控设备在传输视频时通常先传输视频的I帧,在视频的I帧传输完成后再传输视频的P帧。传统的监控设备在传输视频的I帧时,通常会以一个固定的视频码率进行传输,即传统的监控设备会将视频的所有I帧划分为多个大小相同的视频包,且每隔固定的时间间隔传输一个视频包,上述这种以固定的视频码率传输视频的方法,在网络质量变好时,会降低视频的传输效率。
发明内容
本申请实施例提供了一种视频传输方法、装置及计算机可读存储介质,可以解决现有的视频传输方法以固定的视频码率传输视频时,在网络质量变好的情况下,会降低视频的传输效率的问题。
第一方面,本申请实施例提供了一种视频传输方法,包括:
确定待传输的第一视频包的大小,并基于所述第一视频包的大小从编码后的视频中获取所述第一视频包;其中,所述编码后的视频中包括多个关键视频帧和多个非关键视频帧,所述关键视频帧为编码前的所述视频中的任意一个视频帧,所述非关键视频帧用于描述编码前的所述视频中除了所述关键视频帧之外的其余各个视频帧与所述关键视频帧之间的差异;所述第一视频包中包括至少一个所述关键视频帧;
向目标终端发送所述第一视频包,并确定所述第一视频包的传输时长;
若所述第一视频包的传输时长小于第一预设时长阈值,则根据所述第一视频包的大小和第一预设倍数确定待传输的第二视频包的大小;其中,所述第一预设倍数大于1;
基于所述第二视频包的大小从所述编码后的视频中获取所述第二视频包,并向所述目标终端发送所述第二视频包;其中,所述第二视频包中包括至少一个所述关键视频帧,所述第二视频包中包括的所述关键视频帧与所述第一视频包中包括的所述关键视频帧不同。
进一步的,所述确定所述第一视频包的传输时长之后,还包括:
若所述第一视频包的传输时长大于第二预设时长阈值且小于第三预设时长阈值,则根据所述第一视频包的大小和第二预设倍数确定待传输的第二视频包的大小;其中,所述第二预设时长阈值小于所述第一预设时长阈值,所述第三预设时长阈值大于所述第一预设时长阈值,所述第二预设倍数大于0且小于1;
基于所述第二视频包的大小从所述编码后的视频中获取所述第二视频包,并在所述第一视频包传输完成后的第一预设时长后向所述目标终端发送所述第二视频包。
进一步的,所述第一预设时长与所述第一视频包的传输时长呈正比例关系。
进一步的,所述在所述第一视频包传输完成后的第一预设时长后向所述目标终端发送所述第二视频包之后,还包括:
确定所述第二视频包的传输时长;
若所述第二视频包的传输时长大于第二预设时长,则在所有所述关键视频帧传输完成后,依次向所述目标终端发送所述非关键视频帧。
进一步的,所述确定所述第一视频包的传输时长之后,还包括:
若所述第一视频包的传输时长大于或等于第三预设时长阈值,则每隔预设时间间隔向所述目标终端发送一次所述第一视频包,并记录所述第一视频包的传输次数;
当所述传输次数等于预设传输次数阈值时,停止向所述目标终端发送所述第一视频包。
进一步的,所述向所述目标终端发送所述第二视频包之后,还包括:
在所有所述关键视频帧传输完成后,在每个所述非关键视频帧对应的目标传输时段向所述目标终端发送所述非关键视频帧。
进一步的,所述向目标终端发送所述第一视频包之后,还包括:
接收所述目标终端返回的针对所述第一视频包的第一应答信息;其中,所述第一应答信息用于表示所述目标终端已接收到所述第一视频包;
根据所述第一视频包的发送次数以及接收到所述第一应答信息的次数计算所述关键视频帧的丢包率;
若所述关键视频帧的丢包率大于预设丢包阈值,则在所有所述关键视频帧传输完成后,不向所述目标终端发送所述非关键视频帧。
第二方面,本申请实施例提供了一种视频传输装置,包括:
获取单元,用于确定待传输的第一视频包的大小,并基于所述第一视频包的大小从编码后的视频中获取所述第一视频包;其中,所述编码后的视频中包括多个关键视频帧和多个非关键视频帧,所述关键视频帧为编码前的所述视频中的任意一个视频帧,所述非关键视频帧用于描述编码前的所述视频中除了所述关键视频帧之外的其余各个视频帧与所述关键视频帧之间的差异;所述第一视频包中包括至少一个所述关键视频帧;
第一确定单元,用于向目标终端发送所述第一视频包,并确定所述第一视频包的传输时长;
第二确定单元,用于若所述第一视频包的传输时长小于第一预设时长阈值,则根据所述第一视频包的大小和第一预设倍数确定待传输的第二视频包的大小;其中,所述第一预设倍数大于1;
第一发送单元,用于基于所述第二视频包的大小从所述编码后的视频中获取所述第二视频包,并向所述目标终端发送所述第二视频包;其中,所述第二视频包中包括至少一个所述关键视频帧,所述第二视频包中包括的所述关键视频帧与所述第一视频包中包括的所述关键视频帧不同。
第三方面,本申请实施例提供了一种视频传输装置,包括:
存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,上述处理器执行所述计算机程序时实现如上述第一方面中任一项所述的视频传输方法的步骤。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面中任一项所述的视频传输方法的步骤。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在视频传输装置上运行时,使得视频传输装置执行上述第一方面中任一项所述的视频传输方法。
本申请实施例与现有技术相比存在的有益效果是:
本申请实施例提供的一种视频传输方法,通过确定待传输的第一视频包的大小,基于第一视频包的大小从编码后的视频中获取第一视频包,并向目标终端发送第一视频包;第一视频包中包括至少一个关键视频帧;当第一视频包的传输时长小于第一预设时长阈值时,根据第一视频包的大小和第一预设倍数确定待传输的第二视频包的大小;其中,第一预设倍数大于1;基于第二视频包的大小从编码后的视频中获取第二视频包,并向目标终端发送第二视频包;第二视频包中包括的关键视频帧与第一视频包中包括的关键视频帧不同。上述视频传输方法在传输完第一视频包后,可以根据第一视频包的传输时长与第一预设传输时长阈值之间的大小关系确定此时网络质量的好坏,当第一视频包的传输时长小于第一预设传输时长阈值时,说明此时的网络质量较好,因此通过向目标终端发送大小大于第一视频包的大小的第二视频包,可以节省编码后的视频中的关键视频帧的传输时长,提高视频的传输效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的一种视频传输系统的结构示意图;
图2是本申请一实施例提供的一种视频传输方法的实现流程图;
图3是本申请另一实施例提供的一种视频传输方法的实现流程图;
图4是本申请再一实施例提供的一种视频传输方法的实现流程图;
图5是本申请又一实施例提供的一种视频传输方法的实现流程图;
图6是本申请又一实施例提供的一种视频传输方法的实现流程图;
图7是本申请实施例提供的一种视频传输装置的结构示意图;
图8是本申请另一实施例提供的一种视频传输装置的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
请参阅图1,图1是本申请实施例提供的一种视频传输方法所适用的视频传输系统的结构示意图,如图1所示,该视频传输系统可以包括视频传输装置10以及与视频传输装置10通信连接的目标终端20。其中,视频传输装置10可以包括但不限于安防监控摄像机等各种具有监控功能的电子设备。目标终端20可以包括但不限于智能手机、平板电脑或台式电脑等。
在实际应用中,为了实现对一些场景(如商场或超市等)的实时监控,可以在这些场景中安装视频传输装置10,视频传输装置10可以对这些场景进行视频采集,且可以将采集到的视频传输至目标终端20进行实时显示。
本申请实施例中,为了提高视频的传输效率,视频传输装置10在传输视频时,可以对视频进行编码以压缩视频,再将编码后的视频传输至目标终端20。在实际应用中,视频传输装置10可以采用预设的视频压缩算法对传输的视频进行编码,作为示例而非限定,预设视频压缩算法可以是Smart265。
需要说明的是,编码后的视频可以包括关键视频帧和非关键视频帧。其中,关键视频帧也被称为内部画面(Intra-Picture,简称I帧),是一个全帧压缩编码帧,可以将全帧图像信息进行压缩编码并传输,且在解码时仅用I帧的数据就可以重构完整的图像,还是非关键视频帧的参考帧。
非关键视频帧也被称为预测画面(Predictive-Picture,简称P帧),是通过将低于图像序列中前面已编码帧的时间冗余信息来压缩传输数据量的编码图像,也叫预测帧。非关键视频帧不能单独作为图像进行观看,需要参考前面的关键视频帧或非关键视频帧来形成完整的图像。
本申请实施例中,由于编码后的视频中的关键视频帧通常具有较大的码率,并且大小通常为非关键视频帧的几十倍或上百倍,因此,视频传输装置在传输视频时通常先传输编码后的视频中的关键视频帧,在编码后的视频中的关键视频帧传输完成后再传输编码后的视频中的非关键视频帧。并且,由于关键视频帧的大小远远大于非关键视频帧,若将关键视频帧一次性传输完成,再传输非关键视频帧,容易造成视频抖动,基于此,本申请实施例中,视频传输装置可以将关键视频帧进行分包传输,在多个包含关键视频帧的视频包传输完成后,再向目标终端传输非关键视频帧。
请参阅图2,图2是本申请实施例提供的一种视频传输方法的实现流程图。本申请实施例中,视频传输方法的执行主体为视频传输装置。如图2所示,本申请实施例提供的一种视频传输方法可以包括S201~S204,详述如下:
在S201中,确定待传输的第一视频包的大小,并基于所述第一视频包的大小从编码后的视频中获取所述第一视频包;其中,所述编码后的视频中包括多个关键视频帧和多个非关键视频帧,所述关键视频帧为编码前的所述视频中的任意一个视频帧,所述非关键视频帧用于描述编码前的所述视频中除了所述关键视频帧之外的其余各个视频帧与所述关键视频帧之间的差异;所述第一视频包中包括至少一个所述关键视频帧。
本申请实施例中,视频传输装置在向目标终端传输视频时,可以先对需要传输的视频进行编码,得到编码后的视频,再从编码后的视频中先选取至少一个关键视频帧作为第一视频包,并向目标终端传输视频发送该第一视频包。
由于视频传输装置在开始传输编码后的视频时,并不清楚当前的网络质量,因此,第一视频包的大小可以根据实际需要确定。视频传输装置确定了第一视频包的大小后,可以基于第一视频包的大小从编码后的视频中获取该第一视频包。其中,第一视频包中包括编码后的视频中的至少一个关键视频帧。第一视频包的大小可以为第一视频包包括的所有关键视频帧的大小之和。
在本申请的一个实施例中,视频传输装置在向目标终端传输编码后的视频之前,可以先向目标终端发送一个提示信息,该提示信息用于提示目标终端该编码后的视频的大小,使得目标终端可以根据该编码后的视频的大小开辟相应大小的缓存空间以接收该编码后的视频,从而可以避免编码后的视频接收不完整,导致视频花屏的问题。
在S202中,向目标终端发送所述第一视频包,并确定所述第一视频包的传输时长。
本申请实施例中,视频传输装置从编码后的视频中获取到第一视频包后,可以向目标终端发送该第一视频包,并根据视频传输装置向目标终端发送该第一视频包的时刻和该第一视频包发送完成的时刻确定该第一视频包的传输时长。示例性的,假设视频传输装置向目标终端发送该第一视频包的时刻为t1,该第一视频包发送完成的时刻为t2,则该第一视频包的传输时长为t2-t1。
视频传输装置确定了第一视频包的传输时长后,可以将第一视频包的传输时长与第一预设时长阈值、第二预设时长阈值和/或第三预设时长阈值进行比较。
其中,第一预设时长阈值可以根据当前的网络带宽的大小和编码后的视频大小确定。示例性的,假设当前的网络带宽的大小为100兆,编码后的视频大小为10兆,编码后的视频的传输时长为10秒,由于考虑到视频前后的处理时长,则第一预设时长阈值可以设置为20秒,即第一预设时长阈值是编码后的视频的传输时长的2倍。
第二预设时长阈值小于第一预设时长阈值,第三预设时长阈值大于第一预设时长阈值。第二预设时长阈值和第三预设时长阈值均可以根据实际需要设置,示例性的,第二预设时长阈值可以是编码后的视频的传输时长的1.5倍,第三预设时长阈值可以是编码后的视频的传输时长的5倍。
在本申请的一个实施例中,视频传输装置若检测到该第一视频包的传输时长小于第一预设时长阈值,则执行步骤S203~S204。
在本申请的另一个实施例中,视频传输装置若检测到该第一视频包的传输时长大于第二预设时长阈值且小于第三预设时长阈值,则执行如图4所示的步骤S401~S402。
在本申请的又一个实施例中,视频传输装置若检测到该第一视频包的传输时长大于或等于第三预设时长阈值,则执行如图6所示的步骤S601~S602。
在S203中,若所述第一视频包的传输时长小于第一预设时长阈值,则根据所述第一视频包的大小和第一预设倍数确定待传输的第二视频包的大小;其中,所述第一预设倍数大于1。
本申请实施例中,视频传输装置在确定该第一视频包的传输时长小于第一预设时长阈值后,可以确定此时网络质量较好,因此,视频传输装置可以根据该第一视频包的大小和第一预设倍数确定待传输的第二视频包的大小。其中,第一预设倍数可以根据实际需要设置,此处不作限制。需要说明的是,第一预设倍数须大于1。第二视频包中包括至少一个关键视频帧,且该第二视频包中包括的关键视频帧与第一视频包中包括的关键视频帧不同。
在S204中,基于所述第二视频包的大小从所述编码后的视频中获取所述第二视频包,并向所述目标终端发送所述第二视频包;其中,所述第二视频包中包括至少一个所述关键视频帧,所述第二视频包中包括的所述关键视频帧与所述第一视频包中包括的所述关键视频帧不同。
本申请实施例中,由于网络质量较好,因此,视频传输装置在从编码后的视频中获取第二视频包后,可以立刻向目标终端发送该第二视频包,无需延迟发送。
需要说明的是,视频传输装置在向目标终端发送第二视频包之后,可以确定该第二视频包的传输时长,并重复上述S203~S204的步骤,直至视频传输装置将编码后的视频中的关键视频帧传输完成为止。
在实际应用中,为了降低目标终端显示视频时的时延,可以为编码后的视频中的每一个非关键视频帧都设置一个固定的传输时段(即目标传输时段),基于此,在本申请的又一个实施例中,视频传输装置传输完编码后的视频中的所有关键视频帧后,可以在编码后的视频中的每个非关键视频帧对应的目标传输时段向目标终端发送该非关键视频帧,直至编码后的视频中的所有非关键视频帧均传输完成为止。
其中,各个目标传输时段的时长可以根据实际需要设置。作为示例而非限定,所有目标传输时段的时长可以是相等的。
以上可以看出,本申请实施例提供的一种视频传输方法,通过确定待传输的第一视频包的大小,基于第一视频包的大小从编码后的视频中获取第一视频包,并向目标终端发送第一视频包;第一视频包中包括至少一个关键视频帧;当第一视频包的传输时长小于第一预设时长阈值时,根据第一视频包的大小和第一预设倍数确定待传输的第二视频包的大小;其中,第一预设倍数大于1;基于第二视频包的大小从编码后的视频中获取第二视频包,并向目标终端发送第二视频包;第二视频包中包括的关键视频帧与第一视频包中包括的关键视频帧不同。上述视频传输方法在传输完第一视频包后,可以根据第一视频包的传输时长与第一预设传输时长阈值之间的大小关系确定此时网络质量的好坏,当第一视频包的传输时长小于第一预设传输时长阈值时,说明此时的网络质量较好,因此通过向目标终端发送大小大于第一视频包的大小的第二视频包,可以节省编码后的视频中的关键视频帧的传输时长,提高视频的传输效率。
在本申请的另一个实施例中,目标终端在接收到视频传输装置发送的第一视频包之后,可以向视频传输装置返回针对该第一视频包的第一应答信息。其中,第一应答信息用于表示目标终端已接收到所述第一视频包。基于此,请参阅图3,图3是本申请另一实施例提供的一种视频传输方法的实现流程图。相对于图2对应的实施例,本实施例中的一种视频传输方法在S202之后,还可以包括S301~S303,详述如下:
在S301中,接收所述目标终端返回的针对所述第一视频包的第一应答信息;其中,所述第一应答信息用于表示所述目标终端已接收到所述第一视频包。
需要说明的是,本实施例中,视频传输装置在向目标终端发送第一视频包时,可以记录发送第一视频包的次数。
在S302中,根据所述第一视频包的发送次数以及接收到所述第一应答信息的次数计算所述关键视频帧的丢包率。
本实施例中,视频传输装置每向目标终端发送一次第一视频包后,均会统计此次发送了第一视频包后,第一包的发送次数,并根据该第一视频包的发送次数和接收到针对第一视频包的第一应答信息的次数计算编码后的视频中的关键视频帧的丢包率。其中,丢包率指视频传输过程中,丢失的第一视频包的数量占所发送的第一视频包的次数的比率。
视频传输装置在计算出编码后的视频中的关键视频帧的丢包率之后,可以将该丢包率与预设丢包阈值进行比较。视频传输装置若检测到该丢包率大于预设丢包阈值,则执行步骤S303。视频传输装置若检测到该丢包率小于预设丢包阈值,则在编码后的视频中的所有关键视频帧传输完成后,在每个非关键视频帧对应的目标传输时段向目标终端发送编码后的视频中的非关键视频帧。
在S303中,若所述关键视频帧的丢包率大于预设丢包阈值,则在所有所述关键视频帧传输完成后,不向所述目标终端发送所述非关键视频帧。
本实施例中,由于目标终端对非关键视频帧进行解码时,需要参考该非关键视频帧之前的关键视频帧和非关键视频帧,才能解码成功,得到非关键视频帧对应的完整的图像,因此,视频传输装置在确定关键视频帧的丢包率大于预设丢包阈值后,可以在编码后的视频中的所有关键视频帧传输完成后,不向目标终端发送编码后的视频中的非关键视频帧。
需要说明的是,由于目标终端在对编码后的视频进行解码时,仅用关键视频帧就可以重构完整的图像,即目标终端在未接收到编码后的视频中的非关键视频帧时,目标终端仍然可以显示编码后的视频,因此,视频传输装置在编码后的视频中的所有关键视频帧传输完成后,不向目标终端发送编码后的视频中的非关键视频帧,进一步提高了视频的传输效率。
以上可以看出,本申请实施例提供的一种视频传输方法,视频传输装置在向目标终端发送第一视频包后,可以接收目标终端返回的针对第一视频包的第一应答信息,再根据第一视频包的发送次数以及接收到第一应答信息的次数计算编码后的视频中的关键视频帧的丢包率,并通过丢包率和预设丢包阈值之间的比较,确定在编码后的视频中的所有关键视频帧传输完成后,是否向目标终端发送编码后的视频中的非关键视频帧,能够进一步提高编码后的视频的传输效率。
请参阅图4,图4是本申请再一实施例提供的一种视频传输方法的实现流程图。相对于图2对应的实施例,本实施例中的一种视频传输方法在S202之后,还可以包括S401~S402,详述如下:
在S401中,若所述第一视频包的传输时长大于第二预设时长阈值且小于第三预设时长阈值,则根据所述第一视频包的大小和第二预设倍数确定待传输的第二视频包的大小;其中,所述第二预设时长阈值小于所述第一预设时长阈值,所述第三预设时长阈值大于所述第一预设时长阈值,所述第二预设倍数大于0且小于1。
本实施例中,视频传输装置在确定第一视频包的传输时长大于第二预设时长阈值且小于第三预设时长阈值后,可以确定此时的网络质量较差,不适合传输较大的视频包,因此,视频传输装置可以根据视频包的大小和第二预设倍数确定待传输的第二视频包的大小。其中,第二预设倍数可以根据实际需要设置,此处不作限制。需要说明的是,第二预设倍数须大于0且小于1。
在S402中,基于所述第二视频包的大小从所述编码后的视频中获取所述第二视频包,并在所述第一视频包传输完成后的第一预设时长后向所述目标终端发送所述第二视频包。
本实施例中,由于此时网络质量较差,视频传输装置可以延迟一段时间再传输第二视频包。基于此,视频传输装置在从编码后的视频中获取第二视频包后,可以在第一视频包传输完成后的第一预设时长后,向目标终端发送该第二视频包。
其中,第一预设时长与第一视频包的传输时长呈正比例关系。即,假设第一视频包的传输时长越长,则第一预设时长也越长。第一预设时长与第一视频包的传输时长之间的正比例关系可以根据实际需求设置,此处不做限制。
在本申请的一个实施例中,在S402之后,视频传输方法还可以包括如图5所示的S501~S502,详述如下:
在S501中,确定所述第二视频包的传输时长。
本实施例中,由于此时网络质量较差,可能会导致第二视频包的传输时长较长,从而影响编码后的视频中的非关键视频帧的传输,因此,视频传输装置在向目标终端发送第二视频包后,需要确定该第二视频包的传输时长,并将该第二视频包的传输时长与第二预设时长进行比较。其中,第二预设时长可以根据实际需要设置,此处不作限制。
视频传输装置若检测到第二视频包的传输时长大于第二预设时长,则执行步骤S502。视频传输装置若检测到第二视频包的传输时长小于或等于第二预设时长,说明第二视频包的传输时长不会对编码后的视频中的非关键视频帧的传输造成影响,则在编码后的视频中的所有关键视频帧传输完成后,视频传输装置可以在编码后的视频中的每个非关键视频帧对应的目标传输时段向目标终端发送该非关键视频帧。
在S502中,若所述第二视频包的传输时长大于第二预设时长,则在所有所述关键视频帧传输完成后,依次向所述目标终端发送所述非关键视频帧。
本实施例中,视频传输装置在确定第二视频包的传输时长大于第二预设时长后,说明第二视频包的传输时长会对编码后的视频中的非关键视频帧的传输造成影响,进而增加了目标终端显示视频时的时延,因此,在编码后的视频中的所有关键视频帧传输完成后,视频传输装置可以依次向目标终端发送编码后的视频中的非关键视频帧,无需等到每个非关键视频帧对应的目标传输时段向目标终端发送该非关键视频帧,提高了编码后的视频的传输效率。
以上可以看出,本实施例提供的一种视频传输方法,通过将第一视频包的传输时长与第二预设时长阈值和第三预设时长阈值进行比较,并根据第一视频包的大小和第二预设倍数确定待传输的第二视频包的大小,基于第二视频包的大小从编码后的视频中获取第二视频包,并在第一视频包传输完成后的第一预设时长后向目标终端发送所述第二视频包,使得视频传输装置在网络质量较差时,目标终端接收到的视频不会产生视频卡顿的情况。
请参阅图6,图6是本申请另一实施例提供的一种视频传输方法的实现流程图。相对于图2对应的实施例,本实施例中的一种视频传输方法在S202之后,还可以包括S601~S602,详述如下:
在S601中,若所述第一视频包的传输时长大于或等于第三预设时长阈值,则每隔预设时间间隔向所述目标终端发送一次所述第一视频包,并记录所述第一视频包的传输次数。
本实施例中,视频传输装置在确定第一视频包的传输时长大于或等于第三预设时长阈值后,可以确定该第一视频包在传输过程中已经丢失,因此,视频传输装置可以每隔预设时间间隔向目标终端发送一次该第一视频包,并记录第一视频包的传输次数。其中,预设时间间隔可以根据实际需要设置,此处不作限制。
视频传输装置在每记录一次第一视频包的传输次数后,可以将记录的第一视频包的传输次数与预设传输次数阈值进行比较。视频传输装置若检测到记录的第一视频包的传输次数等于预设传输次数阈值,则执行步骤S602。视频传输装置若检测到记录的第一视频包的传输次数小于预设传输次数阈值,则每隔预设时间间隔继续向目标终端发送该第一视频包,直至该第一视频包满足预设要求为止。其中,预设传输次数阈值可以根据实际需要设置,此处不作限制。
在本实施例的一种实现方式中,预设要求可以是第一视频包的传输次数等于预设传输次数阈值。
在本实施例的另一种实现方法中,预设要求可以是视频传输装置接收到目标终端发送的针对该第一视频包的第一应答信息。当视频传输装置接收到目标终端发送的针对该第一视频包的第一应答信息时,说明视频传输装置已成功向目标终端发送该第一视频包,因此,视频传输装置可以停止向目标终端发送该第一视频包。
在S602中,当所述传输次数等于预设传输次数阈值时,停止向所述目标终端发送所述第一视频包。
本实施例中,视频传输装置在确定第一视频包的传输次数等于预设传输次数阈值后,可以确定该第一视频包发送失败,因此,视频传输装置停止向目标终端发送该第一视频包。
以上可以看出,本实施例提供的一种视频传输方法,通过将第一视频包的传输时长与第三预设时长阈值进行比较,并在第一视频包的传输时长大于或等于第三预设时长阈值时,每隔预设时间间隔向目标终端发送一次第一视频包,并记录第一视频包的传输次数;当传输次数等于预设传输次数阈值时,停止向目标终端发送所述第一视频包,使得视频传输装置在确定该第一视频包发送失败后,可以停止向目标终端发送该第一视频包,提高了视频的传输效率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的一种视频传输方法,图7示出了本申请实施例提供的一种视频传输装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。参照图7,该视频传输装置700包括:获取单元71、第一确定单元72、第二确定单元73及第一发送单元74。其中:
获取单元71用于确定待传输的第一视频包的大小,并基于所述第一视频包的大小从编码后的视频中获取所述第一视频包;其中,所述编码后的视频中包括多个关键视频帧和多个非关键视频帧,所述关键视频帧为编码前的所述视频中的任意一个视频帧,所述非关键视频帧用于描述编码前的所述视频中除了所述关键视频帧之外的其余各个视频帧与所述关键视频帧之间的差异;所述第一视频包中包括至少一个所述关键视频帧。
第一确定单元72用于向目标终端发送所述第一视频包,并确定所述第一视频包的传输时长。
第二确定单元73用于若所述第一视频包的传输时长小于第一预设时长阈值,则根据所述第一视频包的大小和第一预设倍数确定待传输的第二视频包的大小;其中,所述第一预设倍数大于1。
第一发送单元74用于基于所述第二视频包的大小从所述编码后的视频中获取所述第二视频包,并向所述目标终端发送所述第二视频包;其中,所述第二视频包中包括至少一个所述关键视频帧,所述第二视频包中包括的所述关键视频帧与所述第一视频包中包括的所述关键视频帧不同。
在本申请的一个实施例中,视频传输装置700还包括:第三确定单元和第二发送单元。其中:
第三确定单元用于若所述第一视频包的传输时长大于第二预设时长阈值且小于第三预设时长阈值,则根据所述第一视频包的大小和第二预设倍数确定待传输的第二视频包的大小;其中,所述第二预设时长阈值小于所述第一预设时长阈值,所述第三预设时长阈值大于所述第一预设时长阈值,所述第二预设倍数大于0且小于1。
第二发送单元用于基于所述第二视频包的大小从所述编码后的视频中获取所述第二视频包,并在所述第一视频包传输完成后的第一预设时长后向所述目标终端发送所述第二视频包。
在本申请的一个实施例中,所述第一预设时长与所述第一视频包的传输时长呈正比例关系。
在本申请的一个实施例中,视频传输装置700还包括:第四确定单元和第三发送单元。其中:
第四确定单元用于确定所述第二视频包的传输时长。
第三发送单元用于若所述第二视频包的传输时长大于第二预设时长,则在所有所述关键视频帧传输完成后,依次向所述目标终端发送所述非关键视频帧。
在本申请的一个实施例中,视频传输装置700还包括:记录单元和第四发送单元。其中:
记录单元用于若所述第一视频包的传输时长大于或等于第三预设时长阈值,则每隔预设时间间隔向所述目标终端发送一次所述第一视频包,并记录所述第一视频包的传输次数。
第四发送单元用于当所述传输次数等于预设传输次数阈值时,停止向所述目标终端发送所述第一视频包。
在本申请的一个实施例中,视频传输装置700还包括:第五发送单元。
第五发送单元用于在所有所述关键视频帧传输完成后,在每个所述非关键视频帧对应的目标传输时段向所述目标终端发送所述非关键视频帧。
在本申请的一个实施例中,视频传输装置700还包括:接收单元、计算单元及第六发送单元。其中:
接收单元用于接收所述目标终端返回的针对所述第一视频包的第一应答信息;其中,所述第一应答信息用于表示所述目标终端已接收到所述第一视频包。
计算单元用于根据所述第一视频包的发送次数以及接收到所述第一应答信息的次数计算所述关键视频帧的丢包率。
第六发送单元用于若所述关键视频帧的丢包率大于预设丢包阈值,则在所有所述关键视频帧传输完成后,不向所述目标终端发送所述非关键视频帧。
以上可以看出,本申请实施例提供的一种视频传输装置,通过确定待传输的第一视频包的大小,基于第一视频包的大小从编码后的视频中获取第一视频包,并向目标终端发送第一视频包;第一视频包中包括至少一个关键视频帧;当第一视频包的传输时长小于第一预设时长阈值时,根据第一视频包的大小和第一预设倍数确定待传输的第二视频包的大小;其中,第一预设倍数大于1;基于第二视频包的大小从编码后的视频中获取第二视频包,并向目标终端发送第二视频包;第二视频包中包括的关键视频帧与第一视频包中包括的关键视频帧不同。上述视频传输方法在传输完第一视频包后,可以根据第一视频包的传输时长与第一预设传输时长阈值之间的大小关系确定此时网络质量的好坏,当第一视频包的传输时长小于第一预设传输时长阈值时,说明此时的网络质量较好,因此通过向目标终端发送大小大于第一视频包的大小的第二视频包,可以节省编码后的视频中的关键视频帧的传输时长,提高视频的传输效率。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图8为本申请一实施例提供的视频传输装置的结构示意图。如图8所示,该实施例的视频传输装置8包括:至少一个处理器80(图8中仅示出一个)处理器、存储器81以及存储在所述存储器81中并可在所述至少一个处理器80上运行的计算机程序82,所述处理器80执行所述计算机程序82时实现上述任意各个视频传输方法实施例中的步骤。
所述视频传输装置8可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该视频传输装置可包括,但不仅限于,处理器80、存储器81。本领域技术人员可以理解,图8仅仅是视频传输装置8的举例,并不构成对视频传输装置8的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器80可以是中央处理单元(Central Processing Unit,CPU),该处理器80还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器81在一些实施例中可以是所述视频传输装置8的内部存储单元,例如视频传输装置8的硬盘或内存。所述存储器81在另一些实施例中也可以是所述视频传输装置8的外部存储设备,例如所述视频传输装置8上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器81还可以既包括所述视频传输装置8的内部存储单元也包括外部存储设备。所述存储器81用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器81还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的视频传输装置和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

1.一种视频传输方法,其特征在于,包括:
确定待传输的第一视频包的大小,并基于所述第一视频包的大小从编码后的视频中获取所述第一视频包;其中,所述编码后的视频中包括多个关键视频帧和多个非关键视频帧,所述关键视频帧为编码前的所述视频中的任意一个视频帧,所述非关键视频帧用于描述编码前的所述视频中除了所述关键视频帧之外的其余各个视频帧与所述关键视频帧之间的差异;所述第一视频包中包括至少一个所述关键视频帧;
向目标终端发送所述第一视频包,并确定所述第一视频包的传输时长;
其中,确定了所述第一视频包的传输时长后,将所述第一视频包的传输时长与第一预设时长阈值、第二预设时长阈值和/或第三预设时长阈值进行比较;
当所述第一视频包的传输时长与第一预设时长阈值进行比较时,若所述第一视频包的传输时长小于第一预设时长阈值,则根据所述第一视频包的大小和第一预设倍数确定待传输的第二视频包的大小;其中,所述第一预设倍数大于1,所述第一预设时长阈值根据当前的网络带宽的大小和编码后的视频大小确定;
基于所述第二视频包的大小从所述编码后的视频中获取所述第二视频包,并向所述目标终端发送所述第二视频包;其中,所述第二视频包中包括至少一个所述关键视频帧,所述第二视频包中包括的所述关键视频帧与所述第一视频包中包括的所述关键视频帧不同。
2.如权利要求1所述的视频传输方法,其特征在于,所述确定所述第一视频包的传输时长之后,还包括:当所述第一视频包的传输时长与第二预设时长阈值和/或第三预设时长阈值进行比较时,若所述第一视频包的传输时长大于第二预设时长阈值且小于第三预设时长阈值,则根据所述第一视频包的大小和第二预设倍数确定待传输的第二视频包的大小;其中,所述第二预设时长阈值小于所述第一预设时长阈值,所述第三预设时长阈值大于所述第一预设时长阈值,所述第二预设倍数大于0且小于1;
基于所述第二视频包的大小从所述编码后的视频中获取所述第二视频包,并在所述第一视频包传输完成后的第一预设时长后向所述目标终端发送所述第二视频包。
3.如权利要求2所述的视频传输方法,其特征在于,所述第一预设时长与所述第一视频包的传输时长呈正比例关系。
4.如权利要求2所述的视频传输方法,其特征在于,所述在所述第一视频包传输完成后的第一预设时长后向所述目标终端发送所述第二视频包之后,还包括:
确定所述第二视频包的传输时长;
若所述第二视频包的传输时长大于第二预设时长,则在所有所述关键视频帧传输完成后,依次向所述目标终端发送所述非关键视频帧。
5.如权利要求1所述的视频传输方法,其特征在于,所述确定所述第一视频包的传输时长之后,还包括:
若所述第一视频包的传输时长大于或等于第三预设时长阈值,则每隔预设时间间隔向所述目标终端发送一次所述第一视频包,并记录所述第一视频包的传输次数;
当所述传输次数等于预设传输次数阈值时,停止向所述目标终端发送所述第一视频包。
6.如权利要求1所述的视频传输方法,其特征在于,所述向所述目标终端发送所述第二视频包之后,还包括:
在所有所述关键视频帧传输完成后,在每个所述非关键视频帧对应的目标传输时段向所述目标终端发送所述非关键视频帧。
7.如权利要求1至6任一项所述的视频传输方法,其特征在于,所述向目标终端发送所述第一视频包之后,还包括:
接收所述目标终端返回的针对所述第一视频包的第一应答信息;其中,所述第一应答信息用于表示所述目标终端已接收到所述第一视频包;
根据所述第一视频包的发送次数以及接收到所述第一应答信息的次数计算所述关键视频帧的丢包率;
若所述关键视频帧的丢包率大于预设丢包阈值,则在所有所述关键视频帧传输完成后,不向所述目标终端发送所述非关键视频帧。
8.一种视频传输装置,其特征在于,包括:
获取单元,用于确定待传输的第一视频包的大小,并基于所述第一视频包的大小从编码后的视频中获取所述第一视频包;其中,所述编码后的视频中包括多个关键视频帧和多个非关键视频帧,所述关键视频帧为编码前的所述视频中的任意一个视频帧,所述非关键视频帧用于描述编码前的所述视频中除了所述关键视频帧之外的其余各个视频帧与所述关键视频帧之间的差异;所述第一视频包中包括至少一个所述关键视频帧;
第一确定单元,用于向目标终端发送所述第一视频包,并确定所述第一视频包的传输时长;其中,在确定了所述第一视频包的传输时长后,将所述第一视频包的传输时长与第一预设时长阈值、第二预设时长阈值和/或第三预设时长阈值进行比较;
第二确定单元,用于当所述第一视频包的传输时长与第一预设时长阈值进行比较时,若所述第一视频包的传输时长小于第一预设时长阈值,则根据所述第一视频包的大小和第一预设倍数确定待传输的第二视频包的大小;其中,所述第一预设倍数大于1,所述第一预设时长阈值根据当前的网络带宽的大小和编码后的视频大小确定;
第一发送单元,用于基于所述第二视频包的大小从所述编码后的视频中获取所述第二视频包,并向所述目标终端发送所述第二视频包;其中,所述第二视频包中包括至少一个所述关键视频帧,所述第二视频包中包括的所述关键视频帧与所述第一视频包中包括的所述关键视频帧不同。
9.一种视频传输装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。
CN202010875485.4A 2020-08-27 2020-08-27 一种视频传输方法、装置及计算机可读存储介质 Active CN112055174B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010875485.4A CN112055174B (zh) 2020-08-27 2020-08-27 一种视频传输方法、装置及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010875485.4A CN112055174B (zh) 2020-08-27 2020-08-27 一种视频传输方法、装置及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN112055174A CN112055174A (zh) 2020-12-08
CN112055174B true CN112055174B (zh) 2022-07-05

Family

ID=73600485

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010875485.4A Active CN112055174B (zh) 2020-08-27 2020-08-27 一种视频传输方法、装置及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN112055174B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114697610B (zh) * 2020-12-30 2023-08-18 成都鼎桥通信技术有限公司 视频传输方法及电子设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101562615A (zh) * 2009-05-20 2009-10-21 宁波大学 基于mpeg-4编码的多媒体数据流自适应网络带宽的传输方法
US8665724B2 (en) * 2009-06-12 2014-03-04 Cygnus Broadband, Inc. Systems and methods for prioritizing and scheduling packets in a communication network
CN102457714A (zh) * 2010-11-01 2012-05-16 中国移动通信集团上海有限公司 对摄像机采集的音视频数据进行传输的方法、系统及设备
CN106792895B (zh) * 2016-12-05 2019-12-13 中国联合网络通信集团有限公司 一种确定数据包大小的方法及设备
CN109327279A (zh) * 2017-08-01 2019-02-12 徐州天荣医疗通讯设备有限公司 一种用于医疗的低质量移动通信网络数据包大小控制方法
CN110417669B (zh) * 2018-07-09 2022-08-26 腾讯科技(深圳)有限公司 数据包重传控制、网络拥塞检测方法和装置
CN109951722A (zh) * 2019-02-27 2019-06-28 腾讯科技(深圳)有限公司 视频数据的传输方法及传输装置
CN111107297B (zh) * 2019-12-30 2021-06-01 广州市百果园网络科技有限公司 一种视频传输方法、装置、资源服务器和存储介质
CN111343098B (zh) * 2020-02-13 2022-04-08 腾讯科技(深圳)有限公司 数据交互方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN112055174A (zh) 2020-12-08

Similar Documents

Publication Publication Date Title
CN106998485B (zh) 视频直播方法及装置
CN110248192B (zh) 编码器切换、解码器切换、屏幕分享方法和屏幕分享系统
CN112351285B (zh) 视频编码、解码方法和装置、电子设备和存储介质
CN112423140A (zh) 视频播放方法、装置、电子设备和存储介质
WO2021057697A1 (zh) 视频编解码方法和装置、存储介质及电子装置
CN111726657A (zh) 直播视频的播放处理方法、装置及服务器
CN107566794B (zh) 一种视频数据的处理方法、系统及终端设备
CN113794903A (zh) 视频图像处理方法、装置及服务器
CN104053002A (zh) 视频解码方法和视频解码装置
CN112055174B (zh) 一种视频传输方法、装置及计算机可读存储介质
CN111385576B (zh) 视频编码方法、装置、移动终端及存储介质
CN115134629A (zh) 视频传输方法、系统、设备及存储介质
CN113259729B (zh) 数据切换的方法、服务器、系统及存储介质
CN110572672B (zh) 视频编解码方法和装置、存储介质及电子装置
CN112291591A (zh) 一种视频数据回放方法、电子设备和存储介质
CN109104581B (zh) 一种无线传屏的方法、系统及接收终端
CN110545431B (zh) 视频解码方法及装置、视频编码方法及装置
CN106937168B (zh) 一种利用长期参考帧的视频编码方法、电子设备及系统
CN113473125A (zh) 码率控制方法、设备、存储介质及产品
US9451288B2 (en) Inferred key frames for fast initiation of video coding sessions
CN105959798A (zh) 视频流的帧定位方法、装置和设备
CN110602507A (zh) 丢帧处理方法、设备及系统
CN110798700A (zh) 视频处理方法、视频处理装置、存储介质与电子设备
CN115379158B (zh) 视频播放方法、装置、电子设备及计算机可读存储介质
CN117579843B (zh) 视频编码处理方法及电子设备

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