CN113242438A - 视频数据传输方法和装置 - Google Patents

视频数据传输方法和装置 Download PDF

Info

Publication number
CN113242438A
CN113242438A CN202110387843.1A CN202110387843A CN113242438A CN 113242438 A CN113242438 A CN 113242438A CN 202110387843 A CN202110387843 A CN 202110387843A CN 113242438 A CN113242438 A CN 113242438A
Authority
CN
China
Prior art keywords
video
video data
code rate
data
network bandwidth
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.)
Withdrawn
Application number
CN202110387843.1A
Other languages
English (en)
Inventor
王三军
李涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Apas Digital Cloud Information Technology Co ltd
Original Assignee
Zhengzhou Apas Digital Cloud Information 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 Zhengzhou Apas Digital Cloud Information Technology Co ltd filed Critical Zhengzhou Apas Digital Cloud Information Technology Co ltd
Priority to CN202110387843.1A priority Critical patent/CN113242438A/zh
Publication of CN113242438A publication Critical patent/CN113242438A/zh
Withdrawn 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/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • 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/80Responding to QoS
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64746Control signals issued by the network directed to the server or the client
    • H04N21/64761Control signals issued by the network directed to the server or the client directed to the server
    • H04N21/64769Control signals issued by the network directed to the server or the client directed to the server for rate control

Landscapes

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

Abstract

本说明书一个实施例提供了一种视频数据传输方法和装置,其中方法包括:在视频数据传输前,获取视频数据播放端的网络带宽数据和屏幕分辨率;根据视频数据播放端的网络带宽数据,确定待传输的视频数据的视频编码格式,根据视频数据播放端的网络带宽数据和屏幕分辨率,确定待传输的视频数据的视频码率;根据视频编码格式,对待传输的视频数据进行编码;根据视频码率,向视频数据播放端传输编码后的视频数据。通过该实施例,能够满足不同带宽和屏幕分辨率对视频编码格式及视频码率的需求,保证在较好的网络环境中在不影响视频质量的前提下节省网络带宽,在较差的网络环境中最大限度的保证视频的传输质量。

Description

视频数据传输方法和装置
技术领域
本文件涉及计算机技术领域,尤其涉及一种视频数据传输方法和装置。
背景技术
目前,在实时传输视频数据并播放的场景中,视频数据传输端将视频数据传输给视频数据播放端,视频数据播放端通过实时播放的方式播放接收到的视频数据。现有技术中,通常对视频数据设置默认不变的视频码率和视频编码格式,视频数据传输端根据该默认不变的视频码率和视频编码格式,将视频数据传输给视频数据播放端。然而,视频数据播放场景并不唯一,各场景下视频数据播放端的网络带宽和屏幕分辨率各不相同,默认的不变的视频码率和视频编码格式,可能与视频数据播放端的网络带宽和屏幕分辨率并不匹配,采用默认的不变的视频码率和视频编码格式,容易引起视频传输卡顿或者浪费网络带宽等问题。
发明内容
本说明书一个实施例的目的是提供一种视频数据传输方法和装置,根据视频数据播放端的网络带宽和屏幕分辨率,动态确定视频数据的视频编码格式和视频码率,从而保证采用与视频数据播放端最为匹配的视频编码格式和视频码率进行视频的编码与传输,满足不同带宽和屏幕分辨率对视频编码格式及视频码率的需求,解决视频传输卡顿或者浪费网络带宽等问题,保证在较好的网络环境中在不影响视频质量的前提下节省网络带宽,在较差的网络环境中最大限度的保证视频的传输质量。
为解决上述技术问题,本说明书一个实施例是这样实现的:
第一方面,本说明书一个实施例提供了一种视频数据传输方法,应用于视频数据传输端,包括:
在视频数据传输前,获取视频数据播放端的网络带宽数据和所述视频数据播放端的屏幕分辨率;
根据所述视频数据播放端的网络带宽数据,确定待传输的视频数据的视频编码格式,根据所述视频数据播放端的网络带宽数据和屏幕分辨率,确定所述待传输的视频数据的视频码率;
根据所述视频编码格式,对所述待传输的视频数据进行编码;
根据所述视频码率,向所述视频数据播放端传输编码后的视频数据,以便于所述视频数据播放端通过在线的方式实时播放接收到的视频数据。
第二方面,本说明书另一个实施例提供了一种视频数据传输方法,应用于视频数据播放端,包括:
在视频数据传输前,向视频数据传输端通知自身的网络带宽数据和屏幕分辨率,所述网络带宽数据用于所述视频数据传输端确定待发送的视频数据的视频编码格式;所述屏幕分辨率用于所述视频数据传输端确定所述待发送的视频数据的视频码率;
接收所述视频数据传输端根据所述视频编码格式和所述视频码率发送的编码后的视频数据,编码后的所述视频数据根据所述视频编码格式编码得到;
根据所述视频编码格式,对编码后的所述视频数据进行解码;
通过在线的方式实时播放解码得到的视频数据。
第三方面,本说明书另一个实施例提供了一种视频数据传输装置,应用于视频数据传输端,包括:
数据获取模块,用于在视频数据传输前,获取视频数据播放端的网络带宽数据和所述视频数据播放端的屏幕分辨率;
数据确定模块,用于根据所述视频数据播放端的网络带宽数据,确定待传输的视频数据的视频编码格式,根据所述视频数据播放端的网络带宽数据和屏幕分辨率,确定所述待传输的视频数据的视频码率;
视频编码模块,用于根据所述视频编码格式,对所述待传输的视频数据进行编码;
视频传输模块,用于根据所述视频码率,向所述视频数据播放端传输编码后的视频数据,以便于所述视频数据播放端通过在线的方式实时播放接收到的视频数据。
第四方面,本说明书另一个实施例提供了一种视频数据传输装置,应用于视频数据播放端,包括:
数据通知模块,用于在视频数据传输前,向视频数据传输端通知自身的网络带宽数据和屏幕分辨率,所述网络带宽数据用于所述视频数据传输端确定待发送的视频数据的视频编码格式;所述屏幕分辨率用于所述视频数据传输端确定所述待发送的视频数据的视频码率;
视频接收模块,用于接收所述视频数据传输端根据所述视频编码格式和所述视频码率发送的编码后的视频数据,编码后的所述视频数据根据所述视频编码格式编码得到;
视频解码模块,用于根据所述视频编码格式,对编码后的所述视频数据进行解码;
视频播放模块,用于通过在线的方式实时播放解码得到的视频数据。
第五方面,本说明书另一个实施例提供了一种视频数据传输设备,包括:存储器、处理器和存储在所述存储器上并可在所述处理器上运行的计算机可执行指令,所述计算机可执行指令被所述处理器执行时实现如上述第一方面所述的视频数据传输方法的步骤。
第六方面,本说明书另一个实施例提供了一种视频数据播放设备,包括:存储器、处理器和存储在所述存储器上并可在所述处理器上运行的计算机可执行指令,所述计算机可执行指令被所述处理器执行时实现如上述第二方面所述的视频数据传输方法的步骤。
第七方面,本说明书再一个实施例提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机可执行指令,所述计算机可执行指令被处理器执行时实现如上述第一方面所述的视频数据传输方法的步骤。
第八方面,本说明书再一个实施例提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机可执行指令,所述计算机可执行指令被处理器执行时实现如上述第二方面所述的视频数据传输方法的步骤。
通过本实施例中的技术方案,根据视频数据播放端的网络带宽和屏幕分辨率,动态确定视频数据的视频编码格式和视频码率,从而保证采用与视频数据播放端最为匹配的视频编码格式和视频码率进行视频的编码与传输,满足不同带宽和屏幕分辨率对视频编码格式及视频码率的需求,解决视频传输卡顿或者浪费网络带宽等问题,保证在较好的网络环境中在不影响视频质量的前提下节省网络带宽,在较差的网络环境中最大限度的保证视频的传输质量。
附图说明
为了更清楚地说明本说明书一个或多个实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一实施例提供的视频数据传输方法的场景示意图;
图2为本说明书一实施例提供的一种视频数据传输方法的流程示意图;
图3为本说明书另一实施例提供的视频数据传输方法的流程示意图;
图4为本说明书另一实施例提供的视频数据传输方法的流程示意图;
图5为本说明书另一实施例提供的视频数据传输方法的流程示意图;
图6为本说明书一实施例提供的视频数据传输装置的结构示意图;
图7为本说明书一实施例提供的视频数据传输装置的结构示意图;
图8为本说明书一实施例提供的视频数据传输设备的结构示意图;
图9为本说明书一实施例提供的视频数据播放设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书一个或多个实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本文件的保护范围。
现有技术中,通常对视频数据设置默认不变的视频码率和视频编码格式,视频数据传输端根据该默认不变的视频码率和视频编码格式,将视频数据传输给视频数据播放端。然而,视频数据播放场景并不唯一,各场景下视频数据播放端的网络带宽和屏幕分辨率各不相同,默认的不变的视频码率和视频编码格式,可能与视频数据播放端的网络带宽和屏幕分辨率并不匹配,采用默认的不变的视频码率和视频编码格式,容易引起视频传输卡顿或者浪费网络带宽等问题。
比如,视频码率过大,视频数据播放端的屏幕分辨率过低,导致视频数据的清晰度无法完全展示出来,而且浪费网络带宽;或者,在不同的网络带宽下,采用相同的视频编码格式,可能使得视频数据的数据量与网络带宽不匹配,引起视频传输卡顿。
基于此,本说明书实施例提供了一种视频数据传输方法,以解决以上问题。图1为本说明书一实施例提供的视频数据传输方法的场景示意图,如图1所示,该场景包括:视频数据传输端、视频传输服务器和视频数据播放端,视频数据传输端包括但不限于手机、电脑、平板电脑、车载电脑、可穿戴设备等电子产品,视频传输服务器包括但不限于单独的服务器或者服务器集群,视频数据播放端包括但不限于手机、电脑、平板电脑、车载电脑、可穿戴设备等电子产品。
图1中,视频数据传输端可以通过视频传输服务器获取视频数据播放端的网络带宽数据和屏幕分辨率,根据视频数据播放端的网络带宽数据,确定待传输的视频数据的视频编码格式,根据视频数据播放端的网络带宽数据和屏幕分辨率,确定待传输的视频数据的视频码率,根据该视频编码格式,对待传输的视频数据进行编码,根据该视频码率,通过视频数据传输端向视频数据播放端传输编码后的视频数据,视频数据播放端可以对接收到的视频数据进行解码,通过在线的方式实时播放接收到的视频数据。
在图1所示的场景中,根据视频数据播放端的网络带宽和屏幕分辨率,动态确定视频数据的视频编码格式和视频码率,从而保证采用与视频数据播放端最为匹配的视频编码格式和视频码率进行视频的编码与传输,满足不同带宽和屏幕分辨率对视频编码格式及视频码率的需求,解决视频传输卡顿或者浪费网络带宽等问题,保证在较好的网络环境中在不影响视频质量的前提下节省网络带宽,在较差的网络环境中最大限度的保证视频的传输质量。
图2为本说明书一实施例提供的一种视频数据传输方法的流程示意图,图2中的方法应用于视频数据传输端,由视频数据传输端执行,如图2所示,该方法包括以下步骤:
步骤S202,在视频数据传输前,获取视频数据播放端的网络带宽数据和视频数据播放端的屏幕分辨率;
步骤S204,根据视频数据播放端的网络带宽数据,确定待传输的视频数据的视频编码格式,根据视频数据播放端的网络带宽数据和屏幕分辨率,确定待传输的视频数据的视频码率;
步骤S206,根据该视频编码格式,对待传输的视频数据进行编码;
步骤S208,根据该视频码率,向视频数据播放端传输编码后的视频数据,以便于视频数据播放端通过在线的方式实时播放接收到的视频数据。
通过本实施例中的技术方案,根据视频数据播放端的网络带宽和屏幕分辨率,动态确定视频数据的视频编码格式和视频码率,从而保证采用与视频数据播放端最为匹配的视频编码格式和视频码率进行视频的编码与传输,满足不同带宽和屏幕分辨率对视频编码格式及视频码率的需求,解决视频传输卡顿或者浪费网络带宽等问题,保证在较好的网络环境中在不影响视频质量的前提下节省网络带宽,在较差的网络环境中最大限度的保证视频的传输质量。
上述步骤S202中,视频数据传输端在视频数据传输前,获取视频数据播放端的网络带宽数据和视频数据播放端的屏幕分辨率。其中,获取视频数据播放端的网络带宽数据和视频数据播放端的屏幕分辨率,具体包括:
(a1)向视频传输服务器发送针对视频数据播放端的网络带宽数据探测请求和针对视频数据播放端的第一屏幕分辨率获取请求;
(a2)接收视频传输服务器根据网络带宽数据探测请求探测视频数据播放端的网络带宽数据后,返回的视频数据播放端的网络带宽数据;
(a3)接收视频传输服务器根据第一屏幕分辨率获取请求获取视频数据播放端的屏幕分辨率后,返回的视频数据播放端的屏幕分辨率。
动作(a1)中,视频数据传输端向视频传输服务器发送网络带宽数据探测请求,以请求获取视频数据播放端的网络带宽数据。视频数据传输端还向视频传输服务器发送第一屏幕分辨率获取请求,以请求获取视频数据播放端的屏幕分辨率。视频传输服务器接收到网络带宽数据探测请求后,向视频数据播放端发送网络带宽数据探测协商请求,以探测视频数据播放端的网络带宽数据。视频传输服务器接收到第一屏幕分辨率获取请求后,向视频数据播放端发送第二屏幕分辨率获取请求,以请求获取视频数据播放端的屏幕分辨率。第一屏幕分辨率获取请求和第二屏幕分辨率获取请求可以为相同的请求,也可以为不同的请求,这里不做限定。
视频数据播放端接收到网络带宽数据探测协商请求后,响应于该网络带宽数据探测协商请求,使视频传输服务器探测得到自身的网络带宽数据。视频传输服务器将探测得到的网络带宽数据发送给视频数据传输端。视频数据播放端接收到第二屏幕分辨率获取请求后,向视频传输服务器发送自身的屏幕分辨率,视频传输服务器将接收到的屏幕分辨率发送至视频数据传输端。
相应地,动作(a2)中,视频数据传输端接收视频传输服务器根据网络带宽数据探测请求,探测视频数据播放端的网络带宽数据后,返回的视频数据播放端的网络带宽数据。动作(a3)中,视频数据传输端接收视频传输服务器根据第一屏幕分辨率获取请求,获取视频数据播放端的屏幕分辨率后,返回的视频数据播放端的屏幕分辨率。上述所描述的网络带宽数据,指的是网络带宽的值。
在一个具体的实施例中,上述的视频数据传输方法基于WebRTC和SocketIO实现。上述的视频数据传输端和视频数据播放端为基于WebRTC进行视频传输与播放,基于SocketIO进行通信的终端设备。上述的视频传输服务器为基于WebRTC进行视频传输,基于SocketIO进行通信的服务器。视频传输服务器包括WebRTC中的信令服务器,用于在视频数据传输端和视频数据播放端之间传输视频数据以及SDP(Session Description Protocol,描述会话的协议)信息。
该实施例中,由于在WebRTC框架下,终端设备之间通讯需要先进行注册,因此,在获取网络带宽数据之前,视频数据传输端和视频数据播放端还向账号服务器进行注册。注册完成后,视频数据传输端和视频数据播放端分别具有唯一的用户ID。接着,视频数据传输端向视频传输服务器发送针对视频数据播放端的网络带宽数据探测请求,该请求中携带有视频数据播放端的用户ID,视频数据传输端还设置视频传输服务器返回的带宽数据的监听接口,该监听接口用于在视频传输服务器返回视频数据播放端的网络带宽数据时,获取该网络带宽数据并保存。
具体地,视频数据传输端和视频数据播放端基于SocketIO框架,采用长连接的方式进行通信。视频数据传输端通过emit方法传入带宽数据检测的事件名peer_brand_width_detection和视频数据播放端的用户ID,从而向视频传输服务器发送针对视频数据播放端的网络带宽数据探测请求。视频数据传输端通过on方法传入要监听的事件名peer_brand_width_detection,视频传输服务器获取到视频数据播放端的网络带宽数据后,发送peer_brand_width_detection事件,并将网络带宽数据作为参数传入,视频数据传输端在on方法的监听回调中获取到该网络带宽数据,存入内存缓存中。
该实施例中,视频传输服务器接收到视频数据传输端发送的网络带宽数据探测请求后,向视频数据播放端发送协商消息,协商消息中携带有带宽数据检测的时间间隔和总检测时间。视频数据播放端接收该协商消息,设置带宽数据检测定时器,并按照协商请求中携带的时间间隔定期向视频传输服务器发送带宽数据检测请求,直至达到总检测时间为止。视频数据播放端还将自身的屏幕分辨率作为参数携带在带宽数据检测请求中发送给视频传输服务器。
具体地,基于SocketIO框架,视频数据播放端通过调用on方法传入协商事件名c_brand_with_detection,视频传输服务器接收到视频数据传输端的网络带宽数据探测请求后,向视频数据播放端发送c_brand_with_detection事件,并将视频数据播放端的用户ID、要检测的时间间隔、要检测的总时间作为参数传入。视频数据播放端在on方法的回调中收到该事件,通过获取到的检测时间间隔及检测总时间参数设置带宽数据检测定时器,该定时器会根据该时间间隔定时以特定速率向视频传输服务器发送brand_with_detection事件,该事件中携带有检测网络带宽数据所用的数据包,并将获取到的屏幕分辨率作为参数传入,直至检测总时间结束停止发送。视频传输服务器可以将该数据包再返回至视频数据播放端,视频传输服务器和视频数据播放端之间重复传输数据包多次,视频传输服务器就可以通过预定的方式比如SLoPS算法探测得到视频数据播放端的网络带宽数据,并通过发送brand_with_detection_result事件将网络带宽数据和视频数据播放端的屏幕分辨率发送给视频数据传输端。
上述步骤S204中,视频数据传输端根据视频数据播放端的网络带宽数据,确定待传输的视频数据的视频编码格式。该步骤具体包括:
(b1)获取预设的网络带宽数据与视频编码格式之间的映射关系;
(b2)在映射关系中查找视频数据播放端的网络带宽数据,将查找到的网络带宽数据所映射的视频编码格式,确定为待传输的视频数据的视频编码格式。
动作(b1)中,获取预设的网络带宽数据与视频编码格式之间的映射关系,该映射关系可以表示相同传输质量的情况下不同视频编码格式对带宽的要求。一个实施例中,以VMAF=80(质量良好)为标准,设置网络带宽数据与视频编码格式之间的映射关系,该映射关系如下表1所示。
表1
Figure BDA0003015567830000081
从表1可见,对于VP9-Opt,只需要相比AVCMain不足1/3的带宽即可实现相同质量的流播,而如果使用AVCHi-Mobile和VP9-Mobile,分别也可以节约17%和30%的带宽。因此,本实施例中通过根据网络带宽动态调整视频编码格式,能够达到在有限的网络环境中获取最佳视频传输质量的效果。
动作(b2)中,在映射关系中查找视频数据播放端的网络带宽数据,将查找到的网络带宽数据所映射的视频编码格式,确定为待传输的视频数据的视频编码格式。比如,视频数据播放端的网络带宽数据为580kbps,则在上述表1中查找得到待传输的视频数据的视频编码格式为VP9-Mobile。上述表1只是一种示意性举例,网络带宽数据与视频编码格式之间的映射关系还可以有其他形式,这里不再赘述。
上述步骤S204中,视频数据传输端还根据视频数据播放端的网络带宽数据和屏幕分辨率,确定待传输的视频数据的视频码率,该步骤具体包括:
(c1)获取预设的屏幕分辨率与视频码率之间的映射关系;
(c2)在该映射关系中查找视频数据播放端的屏幕分辨率,将查找到的屏幕分辨率所映射的视频码率,确定为待传输的视频数据的最小视频码率;
(c3)根据视频数据播放端的网络带宽数据,确定待传输的视频数据的最大视频码率;
(c4)根据最小视频码率和最大视频码率,确定待传输的视频数据的初始视频码率。
动作(c1)中,获取预设的屏幕分辨率与视频码率之间的映射关系。本实施例中预设有屏幕分辨率与视频码率之间的映射关系。该映射关系可以表示相同传输质量的情况下不同屏幕分辨率对视频码率的要求。一个实施例中,以VMAF=80(质量良好)为标准,设置屏幕分辨率与视频码率之间的映射关系。
动作(c2)中,在该映射关系中查找视频数据播放端的屏幕分辨率,将查找到的屏幕分辨率所映射的视频码率,确定为待传输的视频数据的最小视频码率。最小视频码率为传输视频数据时的视频码率下限值。
动作(c3)中,根据视频数据播放端的网络带宽数据,确定待传输的视频数据的最大视频码率。可以将视频数据播放端的网络带宽数据的数值,作为待传输的视频数据的最大视频码率值。最大视频码率为传输视频数据时的视频码率上限值。
动作(c4)中,根据最小视频码率和最大视频码率,确定待传输的视频数据的初始视频码率。计算最小视频码率的预设倍数如1.2倍,若该值小于最大视频码率,则将该值作为待传输的视频数据的初始视频码率,若该值大于等于最大视频码率,则将最大视频码率作为待传输的视频数据的初始视频码率。初始视频码率为传输视频数据的初始码率,该码率会在视频数据的传输过程中实时调整。
上述步骤S206中,根据确定的视频编码格式,对待传输的视频数据进行编码。
上述步骤S208中,根据确定的视频码率,向视频数据播放端传输编码后的视频数据,该动作可以为:根据初始视频码率,向视频数据播放端传输编码后的视频数据。其中,视频数据播放端能够通过在线的方式实时播放接收到的视频数据。
在一个具体的实施例中,上述的视频数据传输方法基于WebRTC和SocketIO实现。上述的视频数据传输端和视频数据播放端为基于WebRTC进行视频传输与播放,基于SocketIO进行通信的终端设备。上述的视频传输服务器为基于WebRTC进行视频传输,基于SocketIO进行通信的服务器。视频传输服务器包括WebRTC中的信令服务器,用于在视频数据传输端和视频数据播放端之间传输视频数据以及SDP信息。
该实施例中,视频数据传输端预先存储有网络带宽数据和预设的网络带宽数据与视频编码格式之间的映射关系,以及,预先存储有屏幕分辨率与视频码率之间的映射关系,这两个映射关系可以提前从视频传输服务器中下载到本地并以map的形式分别存入缓存中。视频数据传输端提前设置on方法监听brand_with_detection_result事件的信息,当该回调执行时获取视频传输服务器返回的视频数据播放端的网络带宽数据和屏幕分辨率。视频数据传输端监听到视频传输服务器返回的视频数据播放端的网络带宽数据和屏幕分辨率之后,以网络带宽数据为key值,从预设的网络带宽数据与视频编码格式之间的映射关系中确定最佳的视频编码格式,以屏幕分辨率为key值,从预设的屏幕分辨率与视频码率之间的映射关系中确定最小视频码率。
视频数据传输端确定最佳的视频编码格式后,将该视频编码格式以参数的方式传入,通过WebRTC提供的API设置待传输的视频数据的视频编码格式,并且修改SDP信息中的视频编码格式字段,用于视频数据播放端的视频解码,保证视频数据播放端收到SDP信息后能获取到正确的视频编码格式,并通过该视频编码格式对接收到的视频数据进行正确解码后播放相应的视频信息。视频数据传输端还修改SDP协议中的视频编码字段中的视频编码优先级,将确定的视频编码格式的优先级放至最高。具体地,视频数据传输端通过WebRTC提供的PeerConnectionFactory.setVideoEncoder方法传入确定的视频编码格式,并且修改SessionDescription类中的description字段,该字段包含了一个a字段,如a=rtpmap:107H264/90000,替换成确定的视频编码格式即可,比如确定的视频编码格式为VP9,则替换成a=rtpmap:101VP9/90000,每一种视频编码都有固定的模式,这个不再赘述。视频数据传输端确定最佳的视频编码格式后,还根据该视频编码格式对待传输的视频数据进行编码,可以通过WebRTC提供的API对视频流数据进行编码。
视频数据传输端确定最小视频码率后,还将视频数据播放端的网络带宽值作为最大视频码率,并判断最小视频码率的1.2倍与最大视频码率之间的大小关系,在最小视频码率的1.2倍小于最大视频码率时,将最小视频码率的1.2倍作为初始视频码率,在最小视频码率的1.2倍大于等于最大视频码率时,将最大视频码率作为初始视频码率。视频数据传输端还修改SDP信息中的最小视频码率、最大视频码率及初始视频码率的值,设置最大视频码率可以防止视频码率过大,造成服务器带宽的巨大浪费,设置最小视频码率可以保证视频的基本清晰度和流畅度,达到使用最低码率达到最佳视频质量的目的,设置初始视频码率作为一开始传输视频数据时的初始码率,可以保证视频数据有较好的清晰度和流畅度。
视频数据传输端在视频数据传输前,还通过视频传输服务器向视频数据播放端发送修改过的SDP信息,该SDP信息中的视频编码格式、最大视频码率、最小视频码率、视频码率初始值被修改过。视频数据播放端提前设置on方法监听视频数据传输端发送的SDP信息,事件名为offer。视频数据播放端接收到SDP信息后,从该回调中获取视频编码字段中的视频编码格式,调用PeerConnectionFactory.setVideoDecoder方法设置解码器,对视频流数据进行解码,然后回调WebRTC的onAddStream方法,通过WebRTC提供的SurfaceView组件对视频进行展示,视频数据播放端具体以在线的方式播放接收到的视频数据。
一个实施例中,视频数据传输端在向视频数据播放端传输编码后的视频数据的过程中,实时监控视频数据播放端的视频丢包率和网络抖动值,若视频丢包率小于第一丢包率门限值,且,网络抖动值小于第一抖动值门限值,则按照预设的码率调节规则,在最小视频码率和最大视频码率之间增大初始视频码率;若视频丢包率大于第二丢包率门限值,或者,网络抖动值大于第二抖动值门限值,则按照预设的码率调节规则,在最小视频码率和最大视频码率之间减小所述初始视频码率。
具体地,第一丢包率门限值、第一抖动值门限值、第二丢包率门限值、第二抖动值门限值可以根据需要设定。当视频丢包率小于第一丢包率门限值,且,网络抖动值小于第一抖动值门限值时,说明网络流畅,视频传输效果好,则可以考虑按照预设的码率调节规则,在最小视频码率和最大视频码率之间增大初始视频码率,比如,将初始视频码率增大预设比例如10%,并再次监测视频丢包率和网络抖动值,若视频丢包率还小于第一丢包率门限值,且,网络抖动值还小于第一抖动值门限值,则再次将初始视频码率增大预设比例如10%,直至视频丢包率不小于第一丢包率门限值,或者,网络抖动值不小于第一抖动值门限值或者,或者,直至增大后的初始视频码率大于等于最大视频码率,最后将增大后的初始视频码率退回到前次值,完成视频码率的调节。
当视频丢包率大于第二丢包率门限值,或者,网络抖动值大于第二抖动值门限值时,说明网络不流畅,视频传输效果差,则可以考虑按照预设的码率调节规则,在最小视频码率和最大视频码率之间减小初始视频码率,比如,将初始视频码率减小预设比例如10%,并再次监测视频丢包率和网络抖动值,若视频丢包率还大于第二丢包率门限值,或者,网络抖动值还大于第二抖动值门限值,则再次将初始视频码率减小预设比例如10%,直至视频丢包率不大于第二丢包率门限值,并且,网络抖动值不大于第二抖动值门限值或者,或者,直至减小后的初始视频码率小于等于最大视频码率。若减小后的初始视频码率小于等于最小视频码率,则将最小视频码率确定为减小后的初始视频码率,完成视频码率的调节。
本实施例中,可以在向视频数据播放端传输编码后的视频数据的过程中,实时监控视频数据播放端的视频丢包率和网络抖动值,根据监控结果反馈增大或减小初始视频码率,达到实时动态反馈调节初始视频码率的效果。
再一个实施例中,在向视频数据播放端传输编码后的视频数据的过程中,实时监控视频数据播放端的视频丢包率、网络抖动值、网络类型、网络带宽数据和屏幕分辨率;若视频丢包率不在预设的丢包率范围内,或者,若网络抖动值不在预设的抖动值范围内,或者,若视频数据播放端的网络类型发生改变,或者,若视频数据播放端的网络带宽数据发生改变,或者,若视频数据播放端的屏幕分辨率发生改变,则重新获取视频数据播放端的网络带宽数据和屏幕分辨率,重新确定视频数据的编码格式、最小视频码率、最大视频码率和初始视频码率,根据重新确定的编码格式、最小视频码率、最大视频码率和初始视频码率,对未传输的视频数据进行编码和传输。
具体地,丢包率范围和抖动值范围可以根据需要设定。若视频丢包率不在预设的丢包率范围内,则说明视频数据传输的网速很快,视频传输质量超过预期,或者说明网速很慢,视频传输质量交底,若网络抖动值不在预设的抖动值范围内,也说明视频数据传输的网速很快,视频传输质量超过预期,或者说明网速很慢,视频传输质量交底,若视频数据播放端的网络类型发生改变,则可能引起网络带宽的变化。因此,若视频丢包率不在预设的丢包率范围内,或者,若网络抖动值不在预设的抖动值范围内,或者,若视频数据播放端的网络类型发生改变,或者,若视频数据播放端的网络带宽数据发生改变,或者,若视频数据播放端的屏幕分辨率发生改变,则重新获取视频数据播放端的网络带宽数据和屏幕分辨率,重新确定视频数据的编码格式、最小视频码率、最大视频码率和初始视频码率,根据重新确定的编码格式、最小视频码率、最大视频码率和初始视频码率,对未传输的视频数据进行编码和传输。根据重新确定的编码格式、最小视频码率、最大视频码率和初始视频码率,对未传输的视频数据进行编码和传输的过程可以参考前面的描述,这里不再重复。
本实施例中,可以在向视频数据播放端传输编码后的视频数据的过程中,实时监控视频数据播放端的视频丢包率、网络抖动值、网络类型、网络带宽数据和屏幕分辨率,并在必要的时候重新确定视频数据的编码格式、最小视频码率、最大视频码率和初始视频码率,根据重新确定的编码格式、最小视频码率、最大视频码率和初始视频码率,对未传输的视频数据进行编码和传输,从而达到实时动态反馈调节视频编码格式和视频码率的效果。
在一个具体的实施例中,上述的视频数据传输方法基于WebRTC和SocketIO实现。上述的视频数据传输端和视频数据播放端为基于WebRTC进行视频传输与播放,基于SocketIO进行通信的终端设备。上述的视频传输服务器为基于WebRTC进行视频传输,基于SocketIO进行通信的服务器。视频传输服务器包括WebRTC中的信令服务器,用于在视频数据传输端和视频数据播放端之间传输视频数据以及SDP信息。
该实施例中,在视频传输过程中,视频数据播放端会实时计算本地的网络抖动值和丢包率,当抖动值和丢包率均大于对应阀值时,会重复前文的操作重新向视频传输服务器发送带宽检测请求,重新确定视频编码格式和视频码率。具体地,在进行视频传输过程中,因为有数据包的传输,WebRTC会获取到实时的丢包率和抖动值。视频数据播放端会每隔1000ms会检测这两个值,如果5s内这两个值始终高于阀值,就可以认为当前的网络环境非常差,视频数据播放端会重新向视频传输服务器发送带宽检测请求,视频传输服务器重新探测视频数据播放端的网络带宽,探测完毕视频传输服务器会把带宽通知给视频数据传输端,视频数据传输端完成码率和编码格式的动态调整。
一个具体的实施例中,WebRTC提供了RTCStatsReport类用于获取丢包和抖动值的方法,视频数据播放端使用Handler定时获取这两个值,通过实验算出,当丢包率大于10%或者抖动大于500毫秒时视频会有明显的延迟,所以视频数据播放端每隔1000ms定时检测这两个数据指标,在5秒内计算这两个的平均值,如果大于前述阀值,就会重新发起带宽检测请求,直至重新生成新的视频编码和最小码率,尽量保证视频的流畅和清晰度。
图3为本说明书另一实施例提供的视频数据传输方法的流程示意图,该方法应用于视频数据播放端,由视频数据播放端执行,如图3所示,该方法包括:
步骤S302,在视频数据传输前,向视频数据传输端通知自身的网络带宽数据和屏幕分辨率,网络带宽数据用于视频数据传输端确定待发送的视频数据的视频编码格式;屏幕分辨率用于视频数据传输端确定待发送的视频数据的视频码率;
步骤S304,接收视频数据传输端根据视频编码格式和视频码率发送的编码后的视频数据,编码后的视频数据根据视频编码格式编码得到;
步骤S306,根据视频编码格式,对编码后的视频数据进行解码;
步骤S308,通过在线的方式实时播放解码得到的视频数据。
通过本实施例中的技术方案,根据视频数据播放端的网络带宽和屏幕分辨率,动态确定视频数据的视频编码格式和视频码率,从而保证采用与视频数据播放端最为匹配的视频编码格式和视频码率进行视频的编码与传输,满足不同带宽和屏幕分辨率对视频编码格式及视频码率的需求,解决视频传输卡顿或者浪费网络带宽等问题,保证在较好的网络环境中在不影响视频质量的前提下节省网络带宽,在较差的网络环境中最大限度的保证视频的传输质量。
步骤S302中,向视频数据传输端通知自身的网络带宽数据和屏幕分辨率,包括:
(d1)接收视频传输服务器发送的网络带宽数据探测协商请求和第二屏幕分辨率获取请求;网络带宽数据探测协商请求由视频传输服务器在接收到视频数据传输端发送的针对视频数据播放端的网络带宽数据探测请求后生成;第二屏幕分辨率获取请求由视频传输服务器在接收到视频数据传输端发送的针对视频数据播放端的第一屏幕分辨率获取请求后生成;
(d2)响应于网络带宽数据探测协商请求,使视频传输服务器探测得到自身的网络带宽数据;网络带宽数据由视频传输服务器发送至视频数据传输端;
(d3)根据第二屏幕分辨率获取请求,向视频传输服务器发送自身的屏幕分辨率;屏幕分辨率由视频传输服务器发送至视频数据传输端。
动作(d1)至(d3)的具体过程可以参考前面针对动作(a1)至(a3)的描述,这里不再重复。
本实施例中,视频码率包括最大视频码率、最小视频码率和初始视频码率;上述方法还包括:
在接收视频数据传输端根据视频编码格式和视频码率发送的编码后的视频数据的过程中,实时监控自身的视频丢包率和网络抖动值;
若视频丢包率小于第一丢包率门限值,且,网络抖动值小于第一抖动值门限值,则向视频数据传输端发送第一通知消息,第一通知消息用于视频数据传输端按照预设的码率调节规则,在最小视频码率和所述最大视频码率之间增大初始视频码率;
若视频丢包率大于第二丢包率门限值,或者,网络抖动值大于第二抖动值门限值,则向视频数据传输端发送第二通知消息,第二通知消息用于视频数据传输端按照预设的码率调节规则,在最小视频码率和最大视频码率之间减小初始视频码率。
第一通知消息和第二通知消息可以基于长连接的形式发送,本实施例不做具体限定。上述动作的具体过程可以参考前面针对图2中的方法的解释,这里不再重复。
本实施例中,视频码率包括最大视频码率、最小视频码率和初始视频码率;上述方法还包括:
在接收视频数据传输端根据视频编码格式和视频码率发送的编码后的视频数据的过程中,实时监控自身的视频丢包率、网络抖动值、网络类型、网络带宽数据和屏幕分辨率;
若视频丢包率不在预设的丢包率范围内,或者,若网络抖动值不在预设的抖动值范围内,或者,若视频数据播放端的网络类型发生改变,或者,若视频数据播放端的网络带宽数据发生改变,或者,若视频数据播放端的屏幕分辨率发生改变,则向视频数据传输端发送第三通知消息,第三通知消息用于视频数据传输端重新获取视频数据播放端的网络带宽数据和屏幕分辨率,重新确定视频数据的编码格式、最小视频码率、最大视频码率和初始视频码率,根据重新确定的编码格式、最小视频码率、最大视频码率和初始视频码率,对未传输的视频数据进行编码和传输。
第三通知消息可以基于长连接的形式发送,本实施例不做具体限定。上述动作的具体过程可以参考前面针对图2中的方法的解释,这里不再重复。
图4为本说明书另一实施例提供的视频数据传输方法的流程示意图,如图4所示,该方法包括:
步骤S402,视频数据传输端向视频传输服务器发送针对视频数据播放端的网络带宽数据探测请求;
步骤S404,视频数据传输端向视频传输服务器发送针对视频数据播放端的第一屏幕分辨率获取请求;
步骤S406,视频传输服务器向视频数据播放端发送网络带宽数据探测协商请求;
步骤S408,视频传输服务器向视频数据播放端发送第二屏幕分辨率获取请求;
步骤S410,视频数据播放端响应网络带宽数据探测协商请求,进行带宽探测;
步骤S412,视频数据播放端向视频传输服务器发送自身的屏幕分辨率;
步骤S414,视频传输服务器向视频数据传输端发送视频数据播放端的网络带宽数据;
步骤S416,视频传输服务器向视频数据传输端发送视频数据播放端的屏幕分辨率;
步骤S418,视频数据传输端确定待传输的视频数据的视频编码格式和待传输的视频数据的视频码率;
步骤S420,视频数据传输端对视频数据进行编码;
步骤S422,视频数据传输端向视频传输服务器发送编码后的视频数据;
步骤S424,视频传输服务器向视频数据播放端发送编码后的视频数据;
步骤S426,视频数据播放端对接收的视频数据进行解码并播放。
综上,通过以上图1至图4的实施例,采用带宽探测的方式检测对端网络情况,并结合对端可用带宽和屏幕分辨率,通过动态调整视频编码格式和视频传输码率,达到了在保证视频传输质量不变的前提下最大限度的节省服务器带宽的效果,一方面可以最大限度的利用和节省服务器带宽资源,降低码率,提高视频传输速度,另一方面可以最大限度的保证视频的传输质量,保证视频的基本清晰度和流畅度,解决了目前进行视频传输中无法根据对端网络情况和具体分辨率动态更改视频编码和视频码率的困境。
在一个具体的实施例中,上述的视频数据传输方法基于WebRTC和SocketIO实现。上述的视频数据传输端和视频数据播放端为基于WebRTC进行视频传输与播放,基于SocketIO进行通信的终端设备。上述的视频传输服务器为基于WebRTC进行视频传输,基于SocketIO进行通信的服务器。视频传输服务器包括WebRTC中的信令服务器,用于在视频数据传输端和视频数据播放端之间传输视频数据以及SDP信息。基于该实施例,图5为本说明书另一实施例提供的视频数据传输方法的流程示意图,如图5所示,该方法包括以下几个流程:
1、注册:视频数据传输端和视频数据播放端在账号服务器上进行账号注册;
2、建立长连接:视频数据传输端与视频传输服务器建立长连接,视频数据播放端与视频传输服务器建立长连接;
3、带宽探测:视频数据传输端发起带宽检测请求,视频传输服务器与视频数据播放端之间通过协商并发送数据包的形式进行带宽探测;视频传输服务器向视频数据传输端返回视频数据播放端的屏幕分辨率和网络带宽数据;
4、确定视频编码方式和视频码率:视频数据传输端根据网络带宽数据确定视频编码方式,根据网络带宽数据和屏幕分辨率确定视频码率;
5、传递SDP信息:视频数据传输端和视频数据播放端通过视频传输服务器传输SDP信息;
6、发送视频流:视频数据传输端通过视频传输服务器向视频数据播放端传输编码后的视频流,视频数据播放端接收视频流解码并在线播放。
经过实验证明,在整体请求量变化不大的前提下,通过上述视频数据传输方法视频传输服务器的带宽和流量下降了50%,成功降低了视频传输服务器带宽资源的消耗,节省了大量成本,而且,在局域网内的视频传输效果、视频质量没有明显降低。
图6为本说明书一实施例提供的视频数据传输装置的结构示意图,该装置应用于上述的视频数据传输端,如图6所示,该装置包括:
数据获取模块61,用于在视频数据传输前,获取视频数据播放端的网络带宽数据和所述视频数据播放端的屏幕分辨率;
数据确定模块62,用于根据所述视频数据播放端的网络带宽数据,确定待传输的视频数据的视频编码格式,根据所述视频数据播放端的网络带宽数据和屏幕分辨率,确定所述待传输的视频数据的视频码率;
视频编码模块63,用于根据所述视频编码格式,对所述待传输的视频数据进行编码;
视频传输模块64,用于根据所述视频码率,向所述视频数据播放端传输编码后的视频数据,以便于所述视频数据播放端通过在线的方式实时播放接收到的视频数据。
可选地,数据获取模块61具体用于:
向视频传输服务器发送针对所述视频数据播放端的网络带宽数据探测请求和针对所述视频数据播放端的第一屏幕分辨率获取请求;
接收所述视频传输服务器根据所述网络带宽数据探测请求探测所述视频数据播放端的网络带宽数据后,返回的所述视频数据播放端的网络带宽数据;
接收所述视频传输服务器根据所述第一屏幕分辨率获取请求获取所述视频数据播放端的屏幕分辨率后,返回的所述视频数据播放端的屏幕分辨率。
可选地,数据确定模块62具体用于:
获取预设的网络带宽数据与视频编码格式之间的映射关系;
在所述映射关系中查找所述视频数据播放端的网络带宽数据,将查找到的网络带宽数据所映射的视频编码格式,确定为待传输的视频数据的视频编码格式。
可选地,数据确定模块62具体用于:
获取预设的屏幕分辨率与视频码率之间的映射关系;
在所述映射关系中查找所述视频数据播放端的屏幕分辨率,将查找到的屏幕分辨率所映射的视频码率,确定为所述待传输的视频数据的最小视频码率;
根据所述视频数据播放端的网络带宽数据,确定所述待传输的视频数据的最大视频码率;
根据所述最小视频码率和所述最大视频码率,确定所述待传输的视频数据的初始视频码率。
可选地,视频传输模块64具体用于:
根据所述初始视频码率,向所述视频数据播放端传输编码后的视频数据。
可选地,所述装置还包括第一反馈调节模块,用于:
在向所述视频数据播放端传输编码后的视频数据的过程中,实时监控所述视频数据播放端的视频丢包率和网络抖动值;
若所述视频丢包率小于第一丢包率门限值,且,所述网络抖动值小于第一抖动值门限值,则按照预设的码率调节规则,在所述最小视频码率和所述最大视频码率之间增大所述初始视频码率;
若所述视频丢包率大于第二丢包率门限值,或者,所述网络抖动值大于第二抖动值门限值,则按照所述预设的码率调节规则,在所述最小视频码率和所述最大视频码率之间减小所述初始视频码率。
可选地,所述装置还包括第二反馈调节模块,用于:
在向所述视频数据播放端传输编码后的视频数据的过程中,实时监控所述视频数据播放端的视频丢包率、网络抖动值、网络类型、网络带宽数据和屏幕分辨率;
若所述视频丢包率不在预设的丢包率范围内,或者,若所述网络抖动值不在预设的抖动值范围内,或者,若所述视频数据播放端的网络类型发生改变,或者,若所述视频数据播放端的网络带宽数据发生改变,或者,若所述视频数据播放端的屏幕分辨率发生改变,则重新获取所述视频数据播放端的网络带宽数据和屏幕分辨率,重新确定所述视频数据的编码格式、最小视频码率、最大视频码率和初始视频码率,根据重新确定的编码格式、最小视频码率、最大视频码率和初始视频码率,对未传输的视频数据进行编码和传输。
本实施例中的视频数据传输装置能够实现前述应用于视频数据传输端上的视频数据传输方法中的各个过程,并达到相同的效果和功能,这里不再重复。
图7为本说明书一实施例提供的视频数据传输装置的结构示意图,该装置应用于上述的视频数据播放端,如图7所示,该装置包括:
数据通知模块71,用于在视频数据传输前,向视频数据传输端通知自身的网络带宽数据和屏幕分辨率,所述网络带宽数据用于所述视频数据传输端确定待发送的视频数据的视频编码格式;所述屏幕分辨率用于所述视频数据传输端确定所述待发送的视频数据的视频码率;
视频接收模块72,用于接收所述视频数据传输端根据所述视频编码格式和所述视频码率发送的编码后的视频数据,编码后的所述视频数据根据所述视频编码格式编码得到;
视频解码模块73,用于根据所述视频编码格式,对编码后的所述视频数据进行解码;
视频播放模块74,用于通过在线的方式实时播放解码得到的视频数据。
可选地,数据通知模块71具体用于:
接收视频传输服务器发送的网络带宽数据探测协商请求和第二屏幕分辨率获取请求;所述网络带宽数据探测协商请求由所述视频传输服务器在接收到所述视频数据传输端发送的针对所述视频数据播放端的网络带宽数据探测请求后生成;所述第二屏幕分辨率获取请求由所述视频传输服务器在接收到所述视频数据传输端发送的针对所述视频数据播放端的第一屏幕分辨率获取请求后生成;
响应于所述网络带宽数据探测协商请求,使所述视频传输服务器探测得到自身的网络带宽数据;所述网络带宽数据由所述视频传输服务器发送至所述视频数据传输端;
根据所述第二屏幕分辨率获取请求,向所述视频传输服务器发送自身的屏幕分辨率;所述屏幕分辨率由所述视频传输服务器发送至所述视频数据传输端。
可选地,所述视频码率包括最大视频码率、最小视频码率和初始视频码率;所述装置还包括第一通知模块,用于:
在接收所述视频数据传输端根据所述视频编码格式和所述视频码率发送的编码后的视频数据的过程中,实时监控自身的视频丢包率和网络抖动值;
若所述视频丢包率小于第一丢包率门限值,且,所述网络抖动值小于第一抖动值门限值,则向所述视频数据传输端发送第一通知消息,所述第一通知消息用于所述视频数据传输端按照预设的码率调节规则,在所述最小视频码率和所述最大视频码率之间增大所述初始视频码率;
若所述视频丢包率大于第二丢包率门限值,或者,所述网络抖动值大于第二抖动值门限值,则向所述视频数据传输端发送第二通知消息,所述第二通知消息用于所述视频数据传输端按照所述预设的码率调节规则,在所述最小视频码率和所述最大视频码率之间减小所述初始视频码率。
可选地,所述视频码率包括最大视频码率、最小视频码率和初始视频码率;所述装置还包括第二通知模块,用于:
在接收所述视频数据传输端根据所述视频编码格式和所述视频码率发送的编码后的视频数据的过程中,实时监控自身的视频丢包率、网络抖动值、网络类型、网络带宽数据和屏幕分辨率;
若所述视频丢包率不在预设的丢包率范围内,或者,若所述网络抖动值不在预设的抖动值范围内,或者,若所述视频数据播放端的网络类型发生改变,或者,若所述视频数据播放端的网络带宽数据发生改变,或者,若所述视频数据播放端的屏幕分辨率发生改变,则向所述视频数据传输端发送第三通知消息,所述第三通知消息用于所述视频数据传输端重新获取所述视频数据播放端的网络带宽数据和屏幕分辨率,重新确定所述视频数据的编码格式、最小视频码率、最大视频码率和初始视频码率,根据重新确定的编码格式、最小视频码率、最大视频码率和初始视频码率,对未传输的视频数据进行编码和传输。
本实施例中的视频数据传输装置能够实现前述应用于视频数据播放端上的视频数据传输方法中的各个过程,并达到相同的效果和功能,这里不再重复。
进一步地,本说明书一个实施例还提供了一种视频数据传输设备,图8为本说明书一实施例提供的视频数据传输设备的结构示意图,如图8所示,该设备包括:存储器801、处理器802、总线803和通信接口804。存储器801、处理器802和通信接口804通过总线803进行通信,通信接口804可以包括输入输出接口,输入输出接口包括但不限于键盘、鼠标、显示器、麦克风、扩音器等。
图8中,所述存储器801上存储有可在所述处理器802上运行的计算机可执行指令,所述计算机可执行指令被所述处理器802执行时实现以下流程:
在视频数据传输前,获取视频数据播放端的网络带宽数据和所述视频数据播放端的屏幕分辨率;
根据所述视频数据播放端的网络带宽数据,确定待传输的视频数据的视频编码格式,根据所述视频数据播放端的网络带宽数据和屏幕分辨率,确定所述待传输的视频数据的视频码率;
根据所述视频编码格式,对所述待传输的视频数据进行编码;
根据所述视频码率,向所述视频数据播放端传输编码后的视频数据,以便于所述视频数据播放端通过在线的方式实时播放接收到的视频数据。
可选地,所述计算机可执行指令被所述处理器执行时,获取视频数据播放端的网络带宽数据和所述视频数据播放端的屏幕分辨率,包括:
向视频传输服务器发送针对所述视频数据播放端的网络带宽数据探测请求和针对所述视频数据播放端的第一屏幕分辨率获取请求;
接收所述视频传输服务器根据所述网络带宽数据探测请求探测所述视频数据播放端的网络带宽数据后,返回的所述视频数据播放端的网络带宽数据;
接收所述视频传输服务器根据所述第一屏幕分辨率获取请求获取所述视频数据播放端的屏幕分辨率后,返回的所述视频数据播放端的屏幕分辨率。
可选地,所述计算机可执行指令被所述处理器执行时,根据所述视频数据播放端的网络带宽数据,确定待传输的视频数据的视频编码格式,包括:
获取预设的网络带宽数据与视频编码格式之间的映射关系;
在所述映射关系中查找所述视频数据播放端的网络带宽数据,将查找到的网络带宽数据所映射的视频编码格式,确定为待传输的视频数据的视频编码格式。
可选地,所述计算机可执行指令被所述处理器执行时,根据所述视频数据播放端的网络带宽数据和屏幕分辨率,确定所述待传输的视频数据的视频码率,包括:
获取预设的屏幕分辨率与视频码率之间的映射关系;
在所述映射关系中查找所述视频数据播放端的屏幕分辨率,将查找到的屏幕分辨率所映射的视频码率,确定为所述待传输的视频数据的最小视频码率;
根据所述视频数据播放端的网络带宽数据,确定所述待传输的视频数据的最大视频码率;
根据所述最小视频码率和所述最大视频码率,确定所述待传输的视频数据的初始视频码率。
可选地,所述计算机可执行指令被所述处理器执行时,根据所述视频码率,向所述视频数据播放端传输编码后的视频数据,包括:
根据所述初始视频码率,向所述视频数据播放端传输编码后的视频数据。
可选地,所述计算机可执行指令被所述处理器执行时,还包括:
在向所述视频数据播放端传输编码后的视频数据的过程中,实时监控所述视频数据播放端的视频丢包率和网络抖动值;
若所述视频丢包率小于第一丢包率门限值,且,所述网络抖动值小于第一抖动值门限值,则按照预设的码率调节规则,在所述最小视频码率和所述最大视频码率之间增大所述初始视频码率;
若所述视频丢包率大于第二丢包率门限值,或者,所述网络抖动值大于第二抖动值门限值,则按照所述预设的码率调节规则,在所述最小视频码率和所述最大视频码率之间减小所述初始视频码率。
可选地,所述计算机可执行指令被所述处理器执行时,还包括:
在向所述视频数据播放端传输编码后的视频数据的过程中,实时监控所述视频数据播放端的视频丢包率、网络抖动值、网络类型、网络带宽数据和屏幕分辨率;
若所述视频丢包率不在预设的丢包率范围内,或者,若所述网络抖动值不在预设的抖动值范围内,或者,若所述视频数据播放端的网络类型发生改变,或者,若所述视频数据播放端的网络带宽数据发生改变,或者,若所述视频数据播放端的屏幕分辨率发生改变,则重新获取所述视频数据播放端的网络带宽数据和屏幕分辨率,重新确定所述视频数据的编码格式、最小视频码率、最大视频码率和初始视频码率,根据重新确定的编码格式、最小视频码率、最大视频码率和初始视频码率,对未传输的视频数据进行编码和传输。
本实施例中的视频数据传输设备能够实现前述应用于视频数据传输端上的视频数据传输方法中的各个过程,并达到相同的效果和功能,这里不再重复。
进一步地,本说明书一个实施例还提供了一种视频数据播放设备,图9为本说明书一实施例提供的视频数据播放设备的结构示意图,如图9所示,该设备包括:存储器901、处理器902、总线903和通信接口904。存储器901、处理器902和通信接口904通过总线903进行通信,通信接口904可以包括输入输出接口,输入输出接口包括但不限于键盘、鼠标、显示器、麦克风、扩音器等。
图9中,所述存储器901上存储有可在所述处理器902上运行的计算机可执行指令,所述计算机可执行指令被所述处理器902执行时实现以下流程:
在视频数据传输前,向视频数据传输端通知自身的网络带宽数据和屏幕分辨率,所述网络带宽数据用于所述视频数据传输端确定待发送的视频数据的视频编码格式;所述屏幕分辨率用于所述视频数据传输端确定所述待发送的视频数据的视频码率;
接收所述视频数据传输端根据所述视频编码格式和所述视频码率发送的编码后的视频数据,编码后的所述视频数据根据所述视频编码格式编码得到;
根据所述视频编码格式,对编码后的所述视频数据进行解码;
通过在线的方式实时播放解码得到的视频数据。
可选地,所述计算机可执行指令被所述处理器执行时,向视频数据传输端通知自身的网络带宽数据和屏幕分辨率,包括:
接收视频传输服务器发送的网络带宽数据探测协商请求和第二屏幕分辨率获取请求;所述网络带宽数据探测协商请求由所述视频传输服务器在接收到所述视频数据传输端发送的针对所述视频数据播放端的网络带宽数据探测请求后生成;所述第二屏幕分辨率获取请求由所述视频传输服务器在接收到所述视频数据传输端发送的针对所述视频数据播放端的第一屏幕分辨率获取请求后生成;
响应于所述网络带宽数据探测协商请求,使所述视频传输服务器探测得到自身的网络带宽数据;所述网络带宽数据由所述视频传输服务器发送至所述视频数据传输端;
根据所述第二屏幕分辨率获取请求,向所述视频传输服务器发送自身的屏幕分辨率;所述屏幕分辨率由所述视频传输服务器发送至所述视频数据传输端。
可选地,所述计算机可执行指令被所述处理器执行时,所述视频码率包括最大视频码率、最小视频码率和初始视频码率;所述流程还包括:
在接收所述视频数据传输端根据所述视频编码格式和所述视频码率发送的编码后的视频数据的过程中,实时监控自身的视频丢包率和网络抖动值;
若所述视频丢包率小于第一丢包率门限值,且,所述网络抖动值小于第一抖动值门限值,则向所述视频数据传输端发送第一通知消息,所述第一通知消息用于所述视频数据传输端按照预设的码率调节规则,在所述最小视频码率和所述最大视频码率之间增大所述初始视频码率;
若所述视频丢包率大于第二丢包率门限值,或者,所述网络抖动值大于第二抖动值门限值,则向所述视频数据传输端发送第二通知消息,所述第二通知消息用于所述视频数据传输端按照所述预设的码率调节规则,在所述最小视频码率和所述最大视频码率之间减小所述初始视频码率。
可选地,所述计算机可执行指令被所述处理器执行时,所述视频码率包括最大视频码率、最小视频码率和初始视频码率;所述流程还包括:
在接收所述视频数据传输端根据所述视频编码格式和所述视频码率发送的编码后的视频数据的过程中,实时监控自身的视频丢包率、网络抖动值、网络类型、网络带宽数据和屏幕分辨率;
若所述视频丢包率不在预设的丢包率范围内,或者,若所述网络抖动值不在预设的抖动值范围内,或者,若所述视频数据播放端的网络类型发生改变,或者,若所述视频数据播放端的网络带宽数据发生改变,或者,若所述视频数据播放端的屏幕分辨率发生改变,则向所述视频数据传输端发送第三通知消息,所述第三通知消息用于所述视频数据传输端重新获取所述视频数据播放端的网络带宽数据和屏幕分辨率,重新确定所述视频数据的编码格式、最小视频码率、最大视频码率和初始视频码率,根据重新确定的编码格式、最小视频码率、最大视频码率和初始视频码率,对未传输的视频数据进行编码和传输。
本实施例中的视频数据播放设备能够实现前述应用于视频数据播放端上的视频数据传输方法中的各个过程,并达到相同的效果和功能,这里不再重复。
进一步地,本说明书另一个实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机可执行指令,所述计算机可执行指令被处理器执行时实现以下流程:
在视频数据传输前,获取视频数据播放端的网络带宽数据和所述视频数据播放端的屏幕分辨率;
根据所述视频数据播放端的网络带宽数据,确定待传输的视频数据的视频编码格式,根据所述视频数据播放端的网络带宽数据和屏幕分辨率,确定所述待传输的视频数据的视频码率;
根据所述视频编码格式,对所述待传输的视频数据进行编码;
根据所述视频码率,向所述视频数据播放端传输编码后的视频数据,以便于所述视频数据播放端通过在线的方式实时播放接收到的视频数据。
其中,所述的计算机可读存储介质包括只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
本说明书一实施例提供的存储介质能够实现前述应用于视频数据传输端上的视频数据传输方法中的各个过程,并达到相同的效果和功能,这里不再重复。
进一步地,本说明书另一个实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机可执行指令,所述计算机可执行指令被处理器执行时实现以下流程:
在视频数据传输前,向视频数据传输端通知自身的网络带宽数据和屏幕分辨率,所述网络带宽数据用于所述视频数据传输端确定待发送的视频数据的视频编码格式;所述屏幕分辨率用于所述视频数据传输端确定所述待发送的视频数据的视频码率;
接收所述视频数据传输端根据所述视频编码格式和所述视频码率发送的编码后的视频数据,编码后的所述视频数据根据所述视频编码格式编码得到;
根据所述视频编码格式,对编码后的所述视频数据进行解码;
通过在线的方式实时播放解码得到的视频数据。
其中,所述的计算机可读存储介质包括只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
本说明书一实施例提供的存储介质能够实现前述应用于视频数据播放端上的视频数据传输方法中的各个过程,并达到相同的效果和功能,这里不再重复。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本文件。对于本领域技术人员来说,本说明书的实施例可以有各种更改和变化。凡在本文件的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本文件的权利要求范围之内。

Claims (13)

1.一种视频数据传输方法,其特征在于,应用于视频数据传输端,包括:
在视频数据传输前,获取视频数据播放端的网络带宽数据和所述视频数据播放端的屏幕分辨率;
根据所述视频数据播放端的网络带宽数据,确定待传输的视频数据的视频编码格式,根据所述视频数据播放端的网络带宽数据和屏幕分辨率,确定所述待传输的视频数据的视频码率;
根据所述视频编码格式,对所述待传输的视频数据进行编码;
根据所述视频码率,向所述视频数据播放端传输编码后的视频数据,以便于所述视频数据播放端通过在线的方式实时播放接收到的视频数据。
2.根据权利要求1所述的方法,其特征在于,获取视频数据播放端的网络带宽数据和所述视频数据播放端的屏幕分辨率,包括:
向视频传输服务器发送针对所述视频数据播放端的网络带宽数据探测请求和针对所述视频数据播放端的第一屏幕分辨率获取请求;
接收所述视频传输服务器根据所述网络带宽数据探测请求探测所述视频数据播放端的网络带宽数据后,返回的所述视频数据播放端的网络带宽数据;
接收所述视频传输服务器根据所述第一屏幕分辨率获取请求获取所述视频数据播放端的屏幕分辨率后,返回的所述视频数据播放端的屏幕分辨率。
3.根据权利要求1所述的方法,其特征在于,根据所述视频数据播放端的网络带宽数据,确定待传输的视频数据的视频编码格式,包括:
获取预设的网络带宽数据与视频编码格式之间的映射关系;
在所述映射关系中查找所述视频数据播放端的网络带宽数据,将查找到的网络带宽数据所映射的视频编码格式,确定为待传输的视频数据的视频编码格式。
4.根据权利要求1所述的方法,其特征在于,根据所述视频数据播放端的网络带宽数据和屏幕分辨率,确定所述待传输的视频数据的视频码率,包括:
获取预设的屏幕分辨率与视频码率之间的映射关系;
在所述映射关系中查找所述视频数据播放端的屏幕分辨率,将查找到的屏幕分辨率所映射的视频码率,确定为所述待传输的视频数据的最小视频码率;
根据所述视频数据播放端的网络带宽数据,确定所述待传输的视频数据的最大视频码率;
根据所述最小视频码率和所述最大视频码率,确定所述待传输的视频数据的初始视频码率。
5.根据权利要求4所述的方法,其特征在于,根据所述视频码率,向所述视频数据播放端传输编码后的视频数据,包括:
根据所述初始视频码率,向所述视频数据播放端传输编码后的视频数据。
6.根据权利要求5所述的方法,其特征在于,还包括:
在向所述视频数据播放端传输编码后的视频数据的过程中,实时监控所述视频数据播放端的视频丢包率和网络抖动值;
若所述视频丢包率小于第一丢包率门限值,且,所述网络抖动值小于第一抖动值门限值,则按照预设的码率调节规则,在所述最小视频码率和所述最大视频码率之间增大所述初始视频码率;
若所述视频丢包率大于第二丢包率门限值,或者,所述网络抖动值大于第二抖动值门限值,则按照所述预设的码率调节规则,在所述最小视频码率和所述最大视频码率之间减小所述初始视频码率。
7.根据权利要求5所述的方法,其特征在于,还包括:
在向所述视频数据播放端传输编码后的视频数据的过程中,实时监控所述视频数据播放端的视频丢包率、网络抖动值、网络类型、网络带宽数据和屏幕分辨率;
若所述视频丢包率不在预设的丢包率范围内,或者,若所述网络抖动值不在预设的抖动值范围内,或者,若所述视频数据播放端的网络类型发生改变,或者,若所述视频数据播放端的网络带宽数据发生改变,或者,若所述视频数据播放端的屏幕分辨率发生改变,则重新获取所述视频数据播放端的网络带宽数据和屏幕分辨率,重新确定所述视频数据的编码格式、最小视频码率、最大视频码率和初始视频码率,根据重新确定的编码格式、最小视频码率、最大视频码率和初始视频码率,对未传输的视频数据进行编码和传输。
8.一种视频数据传输方法,其特征在于,应用于视频数据播放端,包括:
在视频数据传输前,向视频数据传输端通知自身的网络带宽数据和屏幕分辨率,所述网络带宽数据用于所述视频数据传输端确定待发送的视频数据的视频编码格式;所述屏幕分辨率用于所述视频数据传输端确定所述待发送的视频数据的视频码率;
接收所述视频数据传输端根据所述视频编码格式和所述视频码率发送的编码后的视频数据,编码后的所述视频数据根据所述视频编码格式编码得到;
根据所述视频编码格式,对编码后的所述视频数据进行解码;
通过在线的方式实时播放解码得到的视频数据。
9.根据权利要求8所述的方法,其特征在于,向视频数据传输端通知自身的网络带宽数据和屏幕分辨率,包括:
接收视频传输服务器发送的网络带宽数据探测协商请求和第二屏幕分辨率获取请求;所述网络带宽数据探测协商请求由所述视频传输服务器在接收到所述视频数据传输端发送的针对所述视频数据播放端的网络带宽数据探测请求后生成;所述第二屏幕分辨率获取请求由所述视频传输服务器在接收到所述视频数据传输端发送的针对所述视频数据播放端的第一屏幕分辨率获取请求后生成;
响应于所述网络带宽数据探测协商请求,使所述视频传输服务器探测得到自身的网络带宽数据;所述网络带宽数据由所述视频传输服务器发送至所述视频数据传输端;
根据所述第二屏幕分辨率获取请求,向所述视频传输服务器发送自身的屏幕分辨率;所述屏幕分辨率由所述视频传输服务器发送至所述视频数据传输端。
10.根据权利要求8或9所述的方法,其特征在于,所述视频码率包括最大视频码率、最小视频码率和初始视频码率;所述方法还包括:
在接收所述视频数据传输端根据所述视频编码格式和所述视频码率发送的编码后的视频数据的过程中,实时监控自身的视频丢包率和网络抖动值;
若所述视频丢包率小于第一丢包率门限值,且,所述网络抖动值小于第一抖动值门限值,则向所述视频数据传输端发送第一通知消息,所述第一通知消息用于所述视频数据传输端按照预设的码率调节规则,在所述最小视频码率和所述最大视频码率之间增大所述初始视频码率;
若所述视频丢包率大于第二丢包率门限值,或者,所述网络抖动值大于第二抖动值门限值,则向所述视频数据传输端发送第二通知消息,所述第二通知消息用于所述视频数据传输端按照所述预设的码率调节规则,在所述最小视频码率和所述最大视频码率之间减小所述初始视频码率。
11.根据权利要求8或9所述的方法,其特征在于,所述视频码率包括最大视频码率、最小视频码率和初始视频码率;所述方法还包括:
在接收所述视频数据传输端根据所述视频编码格式和所述视频码率发送的编码后的视频数据的过程中,实时监控自身的视频丢包率、网络抖动值、网络类型、网络带宽数据和屏幕分辨率;
若所述视频丢包率不在预设的丢包率范围内,或者,若所述网络抖动值不在预设的抖动值范围内,或者,若所述视频数据播放端的网络类型发生改变,或者,若所述视频数据播放端的网络带宽数据发生改变,或者,若所述视频数据播放端的屏幕分辨率发生改变,则向所述视频数据传输端发送第三通知消息,所述第三通知消息用于所述视频数据传输端重新获取所述视频数据播放端的网络带宽数据和屏幕分辨率,重新确定所述视频数据的编码格式、最小视频码率、最大视频码率和初始视频码率,根据重新确定的编码格式、最小视频码率、最大视频码率和初始视频码率,对未传输的视频数据进行编码和传输。
12.一种视频数据传输装置,其特征在于,应用于视频数据传输端,包括:
数据获取模块,用于在视频数据传输前,获取视频数据播放端的网络带宽数据和所述视频数据播放端的屏幕分辨率;
数据确定模块,用于根据所述视频数据播放端的网络带宽数据,确定待传输的视频数据的视频编码格式,根据所述视频数据播放端的网络带宽数据和屏幕分辨率,确定所述待传输的视频数据的视频码率;
视频编码模块,用于根据所述视频编码格式,对所述待传输的视频数据进行编码;
视频传输模块,用于根据所述视频码率,向所述视频数据播放端传输编码后的视频数据,以便于所述视频数据播放端通过在线的方式实时播放接收到的视频数据。
13.一种视频数据传输装置,其特征在于,应用于视频数据播放端,包括:
数据通知模块,用于在视频数据传输前,向视频数据传输端通知自身的网络带宽数据和屏幕分辨率,所述网络带宽数据用于所述视频数据传输端确定待发送的视频数据的视频编码格式;所述屏幕分辨率用于所述视频数据传输端确定所述待发送的视频数据的视频码率;
视频接收模块,用于接收所述视频数据传输端根据所述视频编码格式和所述视频码率发送的编码后的视频数据,编码后的所述视频数据根据所述视频编码格式编码得到;
视频解码模块,用于根据所述视频编码格式,对编码后的所述视频数据进行解码;
视频播放模块,用于通过在线的方式实时播放解码得到的视频数据。
CN202110387843.1A 2021-04-12 2021-04-12 视频数据传输方法和装置 Withdrawn CN113242438A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110387843.1A CN113242438A (zh) 2021-04-12 2021-04-12 视频数据传输方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110387843.1A CN113242438A (zh) 2021-04-12 2021-04-12 视频数据传输方法和装置

Publications (1)

Publication Number Publication Date
CN113242438A true CN113242438A (zh) 2021-08-10

Family

ID=77127934

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110387843.1A Withdrawn CN113242438A (zh) 2021-04-12 2021-04-12 视频数据传输方法和装置

Country Status (1)

Country Link
CN (1) CN113242438A (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006012911A1 (en) * 2004-08-03 2006-02-09 Fg Microtec Gmbh Dynamic optimization of wireless real-time video data flow
CN103517137A (zh) * 2013-09-30 2014-01-15 广州华多网络科技有限公司 网络视频传输方法和系统、发送/接收端处理方法和装置
CN104717555A (zh) * 2013-12-11 2015-06-17 华为技术有限公司 视频码流的获取方法及装置
CN105872615A (zh) * 2016-06-27 2016-08-17 北京邮电大学 一种视频传输码率调整方法及装置
CN107734282A (zh) * 2017-08-25 2018-02-23 北京元心科技有限公司 视频通讯方法及装置
CN109195010A (zh) * 2018-08-15 2019-01-11 咪咕视讯科技有限公司 一种码率调节方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006012911A1 (en) * 2004-08-03 2006-02-09 Fg Microtec Gmbh Dynamic optimization of wireless real-time video data flow
CN103517137A (zh) * 2013-09-30 2014-01-15 广州华多网络科技有限公司 网络视频传输方法和系统、发送/接收端处理方法和装置
CN104717555A (zh) * 2013-12-11 2015-06-17 华为技术有限公司 视频码流的获取方法及装置
CN105872615A (zh) * 2016-06-27 2016-08-17 北京邮电大学 一种视频传输码率调整方法及装置
CN107734282A (zh) * 2017-08-25 2018-02-23 北京元心科技有限公司 视频通讯方法及装置
CN109195010A (zh) * 2018-08-15 2019-01-11 咪咕视讯科技有限公司 一种码率调节方法及装置

Similar Documents

Publication Publication Date Title
CN108881780B (zh) 视频通话中动态调整清晰度模式的方法、服务器
US8402158B2 (en) Adaptive variable fidelity media distribution system and method
US8218439B2 (en) Method and apparatus for adaptive buffering
US8594184B2 (en) Method and apparatus for controlling video-audio data playing
JP2015133701A (ja) クライアント端末においてマルチメディアコンテンツのセグメントの来るシーケンスをダウンロードする方法、及び対応する端末
TW201021576A (en) System and method for dynamic video encoding in multimedia streaming
EP2364017A1 (en) Method, system and user device for obtaining key frame in streaming media service
US11283849B2 (en) Adaptive bitrate streaming of live content
JP2005191949A (ja) 映像配信装置及び映像閲覧装置
CN111083536B (zh) 调节视频码率的方法和装置
CN110602519B (zh) 连麦视频处理方法及装置、存储介质、电子设备
US10404606B2 (en) Method and apparatus for acquiring video bitstream
CN102111381A (zh) 一种流媒体码率动态调整方法、终端及流媒体服务器
US9692801B2 (en) Method and apparatus for controlling traffic using adaptive streaming in multi-media content transmission system
CN111617466A (zh) 编码格式的确定方法、装置及云游戏的实现方法
CN106791714B (zh) 网络摄像头与服务端设备的匹配方法和设备
CN113242438A (zh) 视频数据传输方法和装置
CN105991469B (zh) 一种异构网络传输下的动态时间窗口及缓存机制
CN113852866B (zh) 媒体流的处理方法、装置及系统
CN113326019B (zh) 音量控制方法、装置、电子设备及存储介质
CN114302142A (zh) 视频编码方法、图像发送设备及存储介质
CN110536145B (zh) 直播时移处理方法、电子设备和存储介质
CN112261625A (zh) 比特率自适应的数据传输方法及装置、设备、存储介质
CN105245946B (zh) 可变码率媒体流的流量控制方法、装置以及系统
CN110572703A (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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20210810