WO2019165789A1 - 一种视频数据的传输方法、装置及介质 - Google Patents
一种视频数据的传输方法、装置及介质 Download PDFInfo
- Publication number
- WO2019165789A1 WO2019165789A1 PCT/CN2018/112002 CN2018112002W WO2019165789A1 WO 2019165789 A1 WO2019165789 A1 WO 2019165789A1 CN 2018112002 W CN2018112002 W CN 2018112002W WO 2019165789 A1 WO2019165789 A1 WO 2019165789A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- client
- data frame
- target data
- transmission
- video
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000005540 biological transmission Effects 0.000 claims abstract description 75
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012546 transfer Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 7
- 238000004891 communication Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 235000008694 Humulus lupulus Nutrition 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/643—Communication protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/643—Communication protocols
- H04N21/64322—IP
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing 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/4402—Processing 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/647—Control 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/64723—Monitoring of network processes or resources, e.g. monitoring of network load
Definitions
- the present application relates to the field of data processing, and in particular, to a method, an apparatus, and a medium for transmitting video data.
- video technology is widely used in people's daily lives.
- video conferencing of enterprises live broadcast of video news by TV stations, and video on demand on video websites all need to involve network transmission of video data.
- the current transmission method is based on a KVM (Keyboard Video Mouse) switch, which receives video data transmitted by the server through the video port of the KVM switch, and then transmits the video data to the client and compiles it into a video signal for playback through the client.
- KVM Keyboard Video Mouse
- the amount of video data to be transmitted is also increasing. Since current KVM switches do not have a large amount of video data transmission mechanism in a single case, they can only adapt to a small amount of data and coherent.
- Video transmission in the case of limited network bandwidth, large number of clients acquiring video data or intermittent acquisition of data, it is easy to cause delays in data transmission and loss of data frames, etc., which will lead to video playback. Carton and the inconsistency between the screen and audio playback, which in turn affect the user experience.
- the method for transmitting video data provides a network delay and a data frame loss in the process of relatively avoiding a large amount of video data transmission, thereby ensuring normal playback of the video, which is urgently needed to be solved by those skilled in the art.
- the problem is to be seen that the method for transmitting video data provides a network delay and a data frame loss in the process of relatively avoiding a large amount of video data transmission, thereby ensuring normal playback of the video, which is urgently needed to be solved by those skilled in the art. The problem.
- the purpose of the application is to provide a method, a device and a medium for transmitting video data, so as to avoid network delay and data frame loss in the process of relatively avoiding a large amount of video data transmission, thereby ensuring normal playback of the video.
- the embodiment of the present application provides a method for transmitting video data, including:
- the transmission object consisting of the target data frame and the arrangement order is transmitted to the corresponding clients by asynchronous transmission, so as to guide the client to sort the target data frames and generate video signals by the arrangement order.
- the method before acquiring the corresponding target data frame according to the collection interval, the method further includes:
- the video signal in the graphics card is acquired by the FPGA, and the video signal is encoded by the JPEG IP Core to generate a data frame.
- the method before acquiring the collection interval of the data frame sent by each client, the method further includes:
- the link connection is specifically a TCP/IP link connection.
- the method further includes:
- the transmission object consisting of the target data frame and the arrangement order is transmitted to the corresponding clients by means of asynchronous transmission, specifically:
- a transmission frequency consistent with the client is established according to the symbol synchronization information, so that the transmission object is transmitted to the corresponding clients by means of asynchronous transmission.
- the embodiment of the present application further provides a video data transmission apparatus, including:
- An obtaining module configured to acquire an acquisition interval of a data frame sent by each client
- An acquisition module configured to collect corresponding target data frames according to the collection interval, and a corresponding arrangement order
- a transmission module configured to transmit, by means of asynchronous transmission, a transmission object consisting of the target data frame and the arrangement order to the corresponding clients, so as to guide the client to sort the target data frames and generate a video signal by the arrangement order.
- the device further comprises:
- the encoding module is configured to acquire a video signal in the graphics card through the FPGA, and encode the video signal by using the JPEG IP Core to generate a data frame.
- the device further comprises:
- the connection establishment module is configured to acquire the link load degree of all links with the client, and establish a link connection with the client through the target link with the lowest load.
- the embodiment of the present application further provides a video data transmission apparatus, including:
- a memory for storing a computer program
- a processor the step of implementing a method of transmitting video data as described above when executing a computer program.
- the embodiment of the present application further provides a computer readable storage medium, where the computer readable storage medium stores a computer program, and when the computer program is executed by the processor, the steps of the video data transmission method are implemented.
- the method for transmitting video data acquires a target data frame in the interval by acquiring an acquisition interval of the data frame sent by the client, and then asynchronously transmits the target data frame and the target data frame.
- the method is transmitted to the client, and after obtaining the target data frame and the sorting order, the client can sort the data frames according to the sorting order, and then generate a video signal for use.
- the transmission efficiency of each client can be balanced in a limited bandwidth, and the network delay is relatively avoided as a whole.
- the method since the method obtains the target data frame and transmits it to the client, it will be arranged according to the arrangement order, thereby reducing the loss of part of the data frame due to the error of the data frame sorting, and being able to obtain accurate and efficient data.
- the target data frame the correctness of the video signal generated by the client is ensured, thereby ensuring the normal playback of the video.
- the embodiment of the present application further provides a video data transmission apparatus and a medium, and the beneficial effects are as described above.
- FIG. 1 is a flowchart of a method for transmitting video data according to an embodiment of the present application
- FIG. 2 is a flowchart of another method for transmitting video data according to an embodiment of the present application
- FIG. 3 is a structural diagram of a video data transmission apparatus according to an embodiment of the present application.
- the core of the embodiment of the present application is to provide a method for transmitting video data, so as to avoid network delay and data frame loss in the process of relatively avoiding a large amount of video data transmission, thereby ensuring normal playback of the video.
- Another core of the embodiment of the present application provides a video data transmission apparatus and medium.
- FIG. 1 is a flowchart of a method for transmitting video data according to an embodiment of the present application. Referring to FIG. 1, the specific steps of the video data transmission method include:
- Step S10 Acquire an acquisition interval of a data frame sent by each client.
- the object that receives the collection interval sent by the client is often the server device that responds to the client.
- the client initiates access to the target data frame through the collection interval, and the server device responds to the collection interval sent by the client. Perform subsequent analysis and response.
- the collection interval of the data frame sent by the client characterizes the specific range of the target data frame obtained in the complete video data frame, and the collection interval of the target data frame may also cover all the video data frames, or only part of the video.
- Data Frame For example, when acquiring a data frame from the beginning of the video, the collection interval of the target data frame may be set as a whole video data frame; when the video data is played to the middle and then the target data frame is continuously acquired, the target data may be acquired.
- the acquisition interval of the frame is determined as a frame from the middle of the entire data frame to the end of the frame. It should be based on the actual data acquisition requirements, and is not specifically limited here.
- Step S11 Collect corresponding target data frames according to the collection interval, and corresponding arrangement order.
- the collection interval of the data frame sent by the client is obtained, and the target data frame in the interval is collected.
- the client since the location of the target data frame in all data frames is fixed, the client may not be able to acquire the target data frame in sequence due to factors such as network quality and capacity difference of the data frame, so to ensure When the client uses the target data frame, the order of the target data frame combination is ensured to be accurate.
- the order of the data obtained in this step is used as the basis for arranging the target data frame for the client to use.
- Step S12 The transmission object consisting of the target data frame and the arrangement order is transmitted to the corresponding clients by means of asynchronous transmission, so as to guide the client to sort the target data frames and generate video signals by the arrangement order.
- the transmission object composed of the target data frame and the arrangement order is transmitted to the corresponding clients by means of asynchronous transmission.
- the data transmission to each client is taken into account in a unit time, which is relatively balanced and reduces the delay of data acquisition by the client.
- the target data frame may be arranged according to the order of the target data frame and a video signal is generated for use.
- the method for transmitting video data acquires a target data frame in the interval by acquiring an acquisition interval of the data frame sent by the client, and then asynchronously transmits the target data frame and the target data frame.
- the method is transmitted to the client, and after obtaining the target data frame and the sorting order, the client can sort the data frames according to the sorting order, and then generate a video signal for use.
- the transmission efficiency of each client can be balanced in a limited bandwidth, and the network delay is relatively avoided as a whole.
- the method since the method obtains the target data frame and transmits it to the client, it will be arranged according to the arrangement order, thereby reducing the loss of part of the data frame due to the error of the data frame sorting, and being able to obtain accurate and efficient data.
- the correctness of the video signal generated by the client is ensured, thereby ensuring the normal playback of the video.
- FIG. 2 is a flowchart of another method for transmitting video data according to an embodiment of the present application. Steps S10 to S12 in FIG. 2 are the same as those in FIG. 1, and are not described herein again.
- the method before acquiring the corresponding target data frame according to the collection interval, the method further includes:
- Step S20 Acquire a video signal in the graphics card through the FPGA, and encode the video signal by using the JPEG IP Core to generate a data frame.
- the method before acquiring an acquisition interval of data frames sent by each client, the method further includes:
- Step S21 Acquire a link load degree of all links with the client, and establish a link connection with the client through the target link with the lowest load degree.
- the link that can initiate the connection should be filtered to obtain the link with the lowest load and establish a link with the client.
- the load of the two target links may be the same. In this case, in order to ensure less occupied communication resources, you can select a target link with a relatively small number of hops to establish a connection. .
- the link connection is specifically a TCP/IP link connection.
- the TCP/IP protocol can establish a connection across the system platform and the structure is relatively simple, the TCP/IP protocol is more efficient to execute; in addition, the TCP/IP protocol does not depend on a specific network transmission hardware; When the link of the TCP/IP protocol is connected, a "three-way handshake" connection mechanism is required to ensure that the connection between the client and the server is stable, and the data can be completely and correctly transmitted. Therefore, establishing a TCP/IP link connection can improve the stability of data frame transmission and transmission efficiency.
- the method further includes:
- the transmission object consisting of the target data frame and the arrangement order is transmitted to the corresponding clients by means of asynchronous transmission, specifically:
- a transmission frequency consistent with the client is established according to the symbol synchronization information, so that the transmission object is transmitted to the corresponding clients by means of asynchronous transmission.
- each data frame can be regarded as a symbol.
- the data frame is continuously transmitted to the client, it can be established by means of symbol synchronization.
- a consistent transmission frequency between the server and the client thereby further ensuring a correct and stable data communication relationship between the server and the client, and enabling the server to issue when the transmission of each data frame is started and ended.
- the data frame further accurately corresponds to the data frame acquired by the client, thereby further ensuring the reliability of data transmission.
- an embodiment of a method for transmitting video data is described in detail.
- the embodiment of the present application further provides a transmission apparatus for video data corresponding to the method, and the embodiments of the apparatus part and the method part are mutually
- the embodiment of the device part please refer to the description of the embodiment of the method part, which will not be described here.
- FIG. 3 is a structural diagram of a video data transmission apparatus according to an embodiment of the present application.
- the device for transmitting video data provided by the embodiment of the present application specifically includes:
- the obtaining module 10 is configured to acquire an acquisition interval of a data frame sent by each client.
- the collecting module 11 is configured to collect corresponding target data frames according to the collection interval, and a corresponding sorting order.
- the transmission module 12 is configured to transmit the transmission object composed of the target data frame and the arrangement order to the corresponding clients by means of asynchronous transmission, so as to guide the client to sort the target data frames and generate a video signal by the arrangement order.
- the device for transmitting video data acquires a target data frame in the interval by acquiring an acquisition interval of the data frame sent by the client, and then asynchronously transmits the sequence of the target data frame and the target data frame.
- the method is transmitted to the client, and after obtaining the target data frame and the sorting order, the client can sort the data frames according to the sorting order, and then generate a video signal for use.
- the transmission efficiency of each client can be balanced in a limited bandwidth, and the network delay is relatively avoided as a whole.
- the device since the device arranges the target data frames and transmits them to the client, they are arranged according to the arrangement order, thereby reducing the loss of part of the data frames due to the error of the data frame sorting, and being able to obtain accurate and efficient data.
- the correctness of the video signal generated by the client is ensured, thereby ensuring the normal playback of the video.
- the device further includes:
- the encoding module is configured to acquire a video signal in the graphics card through the FPGA, and encode the video signal by using the JPEG IP Core to generate a data frame.
- the device further includes:
- the connection establishment module is configured to acquire the link load degree of all links with the client, and establish a link connection with the client through the target link with the lowest load.
- the embodiment of the present application further provides a video data transmission apparatus, including:
- a memory for storing a computer program
- a processor the step of implementing a method of transmitting video data as described above when executing a computer program.
- the device for transmitting video data acquires a target data frame in the interval by acquiring an acquisition interval of the data frame sent by the client, and then asynchronously transmits the sequence of the target data frame and the target data frame.
- the method is transmitted to the client, and after obtaining the target data frame and the sorting order, the client can sort the data frames according to the sorting order, and then generate a video signal for use.
- the transmission efficiency of each client can be balanced in a limited bandwidth, and the network delay is relatively avoided as a whole.
- the device since the device arranges the target data frames and transmits them to the client, they are arranged according to the arrangement order, thereby reducing the loss of part of the data frames due to the error of the data frame sorting, and being able to obtain accurate and efficient data.
- the correctness of the video signal generated by the client is ensured, thereby ensuring the normal playback of the video.
- the embodiment of the present application further provides a computer readable storage medium.
- the computer readable storage medium stores a computer program. When the computer program is executed by the processor, the steps of the video data transmission method are implemented.
- the computer readable storage medium for transmitting the video data acquires the target data frame in the interval by acquiring the collection interval of the data frame sent by the client, and then arranges the target data frame and the target data frame.
- the sequence is transmitted to the client in an asynchronous transmission manner, and after obtaining the target data frame and the sorting order, the client can sort the data frames according to the arrangement order, and then generate a video signal for use.
- the transmission efficiency of each client can be balanced in a limited bandwidth, and the network delay is relatively avoided as a whole.
- the computer readable storage medium is arranged according to the arrangement order after the target data frame is acquired and transmitted to the client, thereby reducing the loss of part of the data frame due to the error of the data frame sorting. Accurate and efficient acquisition of the target data frame, while ensuring the correctness of the video signal generated by the client, thereby ensuring the normal playback of the video.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请实施例公开了一种视频数据的传输方法、装置及介质,该方法的步骤包括:获取各客户端发送的数据帧的采集区间;根据采集区间采集相应的目标数据帧,以及对应的排列顺序;通过异步传输的方式将由目标数据帧以及排列顺序组成的传输对象传输至对应的各客户端,以通过排列顺序引导客户端对目标数据帧进行排序并生成视频信号。相对避免了进行大量视频数据传输的过程中,出现网络延时以及数据帧丢失等情况,进而保证了视频的正常播放。此外,本申请实施例还提供一种视频数据的传输装置及介质。
Description
本申请要求于2018年3月1日提交中国专利局、申请号为201810171211.X、发明名称为“一种视频数据的传输方法、装置及介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及数据处理领域,特别是涉及一种视频数据的传输方法、装置及介质。
随着社会发展,视频技术被广泛应用于人们的日常生活中。如企业的视频会议、电视台的视频新闻直播以及在视频网站上对视频点播等,都需要涉及到视频数据的网络传输。
当前所采用的传输方式是以KVM(Keyboard Video Mouse)交换机为基础,通过KVM交换机的视频端口接收服务器传输的视频数据,进而将视频数据传输至客户端并编译为视频信号以通过客户端进行播放。但是随着人们对于视频质量的要求不断提高,进行传输的视频数据量也在不断增加,由于当前的KVM交换机没有应对单次情况下大量视频数据的传输机制,仅能够适应数据量较少且连贯的视频传输,在网络带宽有限、获取视频数据的客户端数量较大或断续获取数据的情况下,极易造成数据传输的延时以及数据帧的丢失等情况,进而将导致视频播放时的卡顿以及画面与音频播放不一致等问题,进而影响用户的使用体验。
由此可见,提供一种视频数据的传输方法,以相对避免进行大量视频数据传输的过程中,出现网络延时以及数据帧丢失等情况,进而保证视频的正常播放,是本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种视频数据的传输方法、装置及介质,以相对避免进行大量视频数据传输的过程中,出现网络延时以及数据帧丢失等情况,进而 保证视频的正常播放。
为解决上述技术问题,本申请实施例提供一种视频数据的传输方法,包括:
获取各客户端发送的数据帧的采集区间;
根据采集区间采集相应的目标数据帧,以及对应的排列顺序;
通过异步传输的方式将由目标数据帧以及排列顺序组成的传输对象传输至对应的各客户端,以通过排列顺序引导客户端对目标数据帧进行排序并生成视频信号。
优选的,在根据采集区间采集相应的目标数据帧前,该方法进一步包括:
通过FPGA获取显卡中的视频信号,并采用JPEG IP Core对视频信号进行编码以生成数据帧。
优选的,在获取各客户端发送的数据帧的采集区间前,该方法进一步包括:
获取与客户端之间所有链路的链路负载程度,并通过负载程度最低的目标链路建立与客户端的链路连接。
优选的,链路连接具体为TCP/IP链路连接。
优选的,在通过异步传输的方式将由目标数据帧以及排列顺序组成的传输对象传输至对应的各客户端前,该方法进一步包括:
获取各客户端发送的码元同步信息;
相应的,通过异步传输的方式将由目标数据帧以及排列顺序组成的传输对象传输至对应的各客户端具体为:
根据码元同步信息建立与客户端一致的传输频率,以通过异步传输的方式将传输对象传输至对应的各客户端。
此外,本申请实施例还提供一种视频数据的传输装置,包括:
获取模块,用于获取各客户端发送的数据帧的采集区间;
采集模块,用于根据采集区间采集相应的目标数据帧,以及对应的排列顺序;
传输模块,用于通过异步传输的方式将由目标数据帧以及排列顺序组成的传输对象传输至对应的各客户端,以通过排列顺序引导客户端对目标数据帧进行排序并生成视频信号。
优选的,该装置进一步包括:
编码模块,用于通过FPGA获取显卡中的视频信号,并采用JPEG IP Core对视频信号进行编码以生成数据帧。
优选的,该装置进一步包括:
连接建立模块,用于获取与客户端之间所有链路的链路负载程度,并通过负载程度最低的目标链路建立与客户端的链路连接。
此外,本申请实施例还提供一种视频数据的传输装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上述的视频数据的传输方法的步骤。
此外,本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述的视频数据的传输方法的步骤。
本申请实施例所提供的视频数据的传输方法,通过获取客户端发送的数据帧的采集区间,采集该区间内的目标数据帧,进而将目标数据帧以及目标数据帧的排列顺序以异步传输的方式传输至客户端,客户端在获取到目标数据帧以及排列顺序后,即可依照排列顺序对数据帧进行排序,进而生成视频信号进行使用。另外,通过异步传输的方式分别对各客户端进行数据帧的传输,能够在有限的带宽中均衡对每一个客户端的传输效率,进而在整体上相对避免了网络延时的情况出现,在此基础上,由于本方法在获取到目标数据帧并传输至客户端后会依照排列顺序进行排列,因此也减少了由于数据帧排序错误所导致的部分数据帧丢失的情况发生,能够在准确高效的获取到目标数据帧的同时,保证客户端所生成的视频信号的正确性,进而确保了视频的正常播放。此外,本申请实施例还提供一种视频数据的传输装置及介质,有益效果如上所述。
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种视频数据的传输方法的流程图;
图2为本申请实施例提供的另一种视频数据的传输方法的流程图;
图3为本申请实施例提供的一种视频数据的传输装置结构图。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请实施例的保护范围。
本申请实施例的核心是提供一种视频数据的传输方法,以相对避免进行大量视频数据传输的过程中,出现网络延时以及数据帧丢失等情况,进而保证视频的正常播放。本申请实施例的另一核心提供一种视频数据的传输装置及介质。
为了使本技术领域的人员更好地理解本申请实施例方案,下面结合附图和具体实施方式对本申请实施例作进一步的详细说明。
实施例一
图1为本申请实施例提供的一种视频数据的传输方法的流程图。请参考图1,视频数据的传输方法的具体步骤包括:
步骤S10:获取各客户端发送的数据帧的采集区间。
可以理解的是,接收客户端所发送的采集区间的对象往往是对其进行响应的服务端设备,客户端通过采集区间发起对目标数据帧的访问,服务端设备响应客户端发送的采集区间以进行后续的分析及响应。本步骤中客户端发送的数据帧的采集区间表征的是在完整视频数据帧中获取目标数据帧的具体范围,目标数据帧的采集区间也可以涵盖全部的视频数据帧,也可以仅为部分视频数据帧。例如,在从视频开始时获取数据帧,则可以将对目标数据帧的采集区间定为全部的视频数据帧;当视频播放至中部经暂停后继续获取目标数据帧时,则可以将对目标数据帧的采集区间定为整体数据帧中部的某一帧直至末尾的帧。应根据实际的数据获取需求而定,在此不做具体限定。
步骤S11:根据采集区间采集相应的目标数据帧,以及对应的排列顺序。
在本步骤中,获取客户端发送的数据帧的采集区间,采集该区间内的目标数据帧。此外,由于目标数据帧在全部数据帧中的位置是固定的,而在传输过程中可能由于网络质量以及数据帧的容量差异等因素而导致客户端无法按序获取到目标数据帧,因此为了确保客户端在使用目标数据帧时保证目标数据帧组合的顺序准确无误,在本步骤中获取的排列顺序,作为排列目标数据帧的依据以供客户端使用。
步骤S12:通过异步传输的方式将由目标数据帧以及排列顺序组成的传输对象传输至对应的各客户端,以通过排列顺序引导客户端对目标数据帧进行排序并生成视频信号。
需要说明的是,由于考虑到异步传输操作能够适用于一对多的通信模式,在本步骤中采用异步传输的方式将由目标数据帧以及排列顺序组成的传输对象传输至对应的各客户端,能够在单位时间内顾及到对每一个客户端的数据传输,相对均衡并减轻客户端进行数据获取的延时程度。而在客户端在获取到目标数据帧后,则可以根据目标数据帧的排列顺序对目标数据帧进行排列并生成视频信号以使用。
本申请实施例所提供的视频数据的传输方法,通过获取客户端发送的数据帧的采集区间,采集该区间内的目标数据帧,进而将目标数据帧以及目标数据帧的排列顺序以异步传输的方式传输至客户端,客户端在获取到目标数据帧以及排列顺序后,即可依照排列顺序对数据帧进行排序,进而生成视频信号进行使用。另外,通过异步传输的方式分别对各客户端进行数据帧的传输,能够在有限的带宽中均衡对每一个客户端的传输效率,进而在整体上相对避免了网络延时的情况出现,在此基础上,由于本方法在获取到目标数据帧并传输至客户端后会依照排列顺序进行排列,因此也减少了由于数据帧排序错误所导致的部分数据帧丢失的情况发生,能够在准确高效的获取到目标数据帧的同时,保证客户端所生成的视频信号的正确性,进而确保了视频的正常播放。
实施例二
图2为本申请实施例提供的另一种视频数据的传输方法的流程图。图2中步骤S10至S12与图1相同,在此不再赘述。
如图2所示,作为一种优选的实施方式,在根据采集区间采集相应的目标 数据帧前,该方法进一步包括:
步骤S20:通过FPGA获取显卡中的视频信号,并采用JPEG IP Core对视频信号进行编码以生成数据帧。
需要说明的是,考虑到FPGA具有硬件并行的优势,在每个时钟周期内都能够完成更多的处理任务,在性能方面高于数字信号处理器,因此通过FPGA获取显卡视频信号以进行编码,能够提高数据帧的生成效率。另外,在使用FPGA编码的基础上,考虑到FPGA在将视频信号编码为JPEG格式的数据帧时,对于数据的压缩程度更高,因此减少了在传输数据帧时所需要占用的带宽,从而进一步避免网络传输延时的情况。另外,由于在FPGA中具有既定的JPEG IP Core逻辑块,因此采用JPEG IP Core实现对视频信号的编码,执行的稳定性更高。
如图2所示,作为一种优选的实施方式,在获取各客户端发送的数据帧的采集区间前,该方法进一步包括:
步骤S21:获取与客户端之间所有链路的链路负载程度,并通过负载程度最低的目标链路建立与客户端的链路连接。
需要说明的是,考虑到由于客户端与服务端之间往往可以通过多条链路进行连通,但是由于链路之间的路由跳数以及网络状态各不相同,因此在此基础上,各条链路的链路负载也有所差异,负载程度越高的链路传输数据的效率相对低下。因此,在与客户端建立链路连接前应先对可发起连接的链路进行筛选,获取负载程度最低的目标链路建立与客户端的链路连接。在对链路进行筛选时,可能会出现两条目标链路的负载相同的情况,在此情况下,为了保证更少的占用通信资源,可以选择路由跳数相对更少的目标链路建立连接。
在上述实施方式的基础上,作为一种优选的实施方式,链路连接具体为TCP/IP链路连接。
需要说明的是,由于TCP/IP协议可以跨系统平台建立连接,并且结构相对简单,因此TCP/IP协议执行效率较高;另外,TCP/IP协议不依赖特定的网络传输硬件;并且在建立基于TCP/IP协议的链路连接时,需要进行“三次握手”的连接机制,确保客户端与服务端之间的连接稳定,数据能够完整且正确的传输。因此建立TCP/IP链路连接能够提高数据帧传输的稳定性以及传输效 率。
此外,作为一种优选的实施方式,在通过异步传输的方式将由目标数据帧以及排列顺序组成的传输对象传输至对应的各客户端前,该方法进一步包括:
获取各客户端发送的码元同步信息;
相应的,通过异步传输的方式将由目标数据帧以及排列顺序组成的传输对象传输至对应的各客户端具体为:
根据码元同步信息建立与客户端一致的传输频率,以通过异步传输的方式将传输对象传输至对应的各客户端。
需要说明的是,码元是承载信息量的基本信号单位,因此每一个数据帧均可以被视为码元,考虑到由于数据帧被连续传输至客户端,因此可以通过码元同步的方式建立服务端与客户端之间一致的传输频率,从而进一步保证服务端与客户端之间正确稳定的数据通信关系,通过得知每一个数据帧的传输何时开始及结束,进而能够使服务端发出的数据帧与客户端获取的数据帧进一步准确对应,从而进一步保证数据传输的可靠性。
实施例三
在上文中对于视频数据的传输方法的实施例进行了详细的描述,本申请实施例还提供一种与该方法对应的视频数据的传输装置,由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
图3为本申请实施例提供的一种视频数据的传输装置结构图。本申请实施例提供的视频数据的传输装置,具体包括:
获取模块10,用于获取各客户端发送的数据帧的采集区间。
采集模块11,用于根据采集区间采集相应的目标数据帧,以及对应的排列顺序。
传输模块12,用于通过异步传输的方式将由目标数据帧以及排列顺序组成的传输对象传输至对应的各客户端,以通过排列顺序引导客户端对目标数据帧进行排序并生成视频信号。
本申请实施例所提供的视频数据的传输装置,通过获取客户端发送的数据帧的采集区间,采集该区间内的目标数据帧,进而将目标数据帧以及目标数据 帧的排列顺序以异步传输的方式传输至客户端,客户端在获取到目标数据帧以及排列顺序后,即可依照排列顺序对数据帧进行排序,进而生成视频信号进行使用。另外,通过异步传输的方式分别对各客户端进行数据帧的传输,能够在有限的带宽中均衡对每一个客户端的传输效率,进而在整体上相对避免了网络延时的情况出现,在此基础上,由于本装置在获取到目标数据帧并传输至客户端后会依照排列顺序进行排列,因此也减少了由于数据帧排序错误所导致的部分数据帧丢失的情况发生,能够在准确高效的获取到目标数据帧的同时,保证客户端所生成的视频信号的正确性,进而确保了视频的正常播放。
在实施例三的基础上,该装置还包括:
编码模块,用于通过FPGA获取显卡中的视频信号,并采用JPEG IP Core对视频信号进行编码以生成数据帧。
在实施例三的基础上,该装置还包括:
连接建立模块,用于获取与客户端之间所有链路的链路负载程度,并通过负载程度最低的目标链路建立与客户端的链路连接。
实施例四
本申请实施例还提供一种视频数据的传输装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上述的视频数据的传输方法的步骤。
本申请实施例所提供的视频数据的传输装置,通过获取客户端发送的数据帧的采集区间,采集该区间内的目标数据帧,进而将目标数据帧以及目标数据帧的排列顺序以异步传输的方式传输至客户端,客户端在获取到目标数据帧以及排列顺序后,即可依照排列顺序对数据帧进行排序,进而生成视频信号进行使用。另外,通过异步传输的方式分别对各客户端进行数据帧的传输,能够在有限的带宽中均衡对每一个客户端的传输效率,进而在整体上相对避免了网络延时的情况出现,在此基础上,由于本装置在获取到目标数据帧并传输至客户端后会依照排列顺序进行排列,因此也减少了由于数据帧排序错误所导致的部分数据帧丢失的情况发生,能够在准确高效的获取到目标数据帧的同时,保证客户端所生成的视频信号的正确性,进而确保了视频的正常播放。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述的视频数据的传输方法的步骤。
本申请实施例所提供的视频数据的传输的计算机可读存储介质,通过获取客户端发送的数据帧的采集区间,采集该区间内的目标数据帧,进而将目标数据帧以及目标数据帧的排列顺序以异步传输的方式传输至客户端,客户端在获取到目标数据帧以及排列顺序后,即可依照排列顺序对数据帧进行排序,进而生成视频信号进行使用。另外,通过异步传输的方式分别对各客户端进行数据帧的传输,能够在有限的带宽中均衡对每一个客户端的传输效率,进而在整体上相对避免了网络延时的情况出现,在此基础上,由于本计算机可读存储介质在获取到目标数据帧并传输至客户端后会依照排列顺序进行排列,因此也减少了由于数据帧排序错误所导致的部分数据帧丢失的情况发生,能够在准确高效的获取到目标数据帧的同时,保证客户端所生成的视频信号的正确性,进而确保了视频的正常播放。
以上对本申请实施例所提供的一种视频数据的传输方法、装置及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请实施例原理的前提下,还可以对本申请实施例进行若干改进和修饰,这些改进和修饰也落入本申请实施例权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包 括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
- 一种视频数据的传输方法,其特征在于,包括:获取各客户端发送的数据帧的采集区间;根据所述采集区间采集相应的目标数据帧,以及对应的排列顺序;通过异步传输的方式将由所述目标数据帧以及所述排列顺序组成的传输对象传输至对应的各所述客户端,以通过所述排列顺序引导所述客户端对所述目标数据帧进行排序并生成视频信号。
- 根据权利要求1所述的方法,其特征在于,在所述根据所述采集区间采集相应的目标数据帧前,该方法进一步包括:通过FPGA获取显卡中的视频信号,并采用JPEG IP Core对所述视频信号进行编码以生成数据帧。
- 根据权利要求1所述的方法,其特征在于,在所述获取各客户端发送的数据帧的采集区间前,该方法进一步包括:获取与所述客户端之间所有链路的链路负载程度,并通过负载程度最低的目标链路建立与所述客户端的链路连接。
- 根据权利要求3所述的方法,其特征在于,所述链路连接具体为TCP/IP链路连接。
- 根据权利要求1-4任意一项所述的方法,其特征在于,在所述通过异步传输的方式将由所述目标数据帧以及所述排列顺序组成的传输对象传输至对应的各所述客户端前,该方法进一步包括:获取各所述客户端发送的码元同步信息;相应的,所述通过异步传输的方式将由所述目标数据帧以及所述排列顺序组成的传输对象传输至对应的各所述客户端具体为:根据所述码元同步信息建立与所述客户端一致的传输频率,以通过异步传输的方式将所述传输对象传输至对应的各所述客户端。
- 一种视频数据的传输装置,其特征在于,包括:获取模块,用于获取各客户端发送的数据帧的采集区间;采集模块,用于根据所述采集区间采集相应的目标数据帧,以及对应的排列顺序;传输模块,用于通过异步传输的方式将由所述目标数据帧以及所述排列顺序组成的传输对象传输至对应的各所述客户端,以通过所述排列顺序引导所述客户端对所述目标数据帧进行排序并生成视频信号。
- 根据权利要求6所述的装置,其特征在于,该装置进一步包括:编码模块,用于通过FPGA获取显卡中的视频信号,并采用JPEG IP Core对所述视频信号进行编码以生成数据帧。
- 根据权利要求6所述的装置,其特征在于,该装置进一步包括:连接建立模块,用于获取与所述客户端之间所有链路的链路负载程度,并通过负载程度最低的目标链路建立与所述客户端的链路连接。
- 一种视频数据的传输装置,其特征在于,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如权利要求1至5任一项所述的视频数据的传输方法的步骤。
- 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的视频数据的传输方法的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810171211.XA CN108322774A (zh) | 2018-03-01 | 2018-03-01 | 一种视频数据的传输方法、装置及介质 |
CN201810171211.X | 2018-03-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019165789A1 true WO2019165789A1 (zh) | 2019-09-06 |
Family
ID=62901040
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2018/112002 WO2019165789A1 (zh) | 2018-03-01 | 2018-10-26 | 一种视频数据的传输方法、装置及介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108322774A (zh) |
WO (1) | WO2019165789A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108322774A (zh) * | 2018-03-01 | 2018-07-24 | 郑州云海信息技术有限公司 | 一种视频数据的传输方法、装置及介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1138801A (zh) * | 1995-04-10 | 1996-12-25 | 计数设备公司 | 独立于传送定时进行调整和传送定时程序数据的方法和设备 |
CN1234689A (zh) * | 1998-03-02 | 1999-11-10 | 株式会社东芝 | 通信系统 |
US20050286863A1 (en) * | 2004-06-23 | 2005-12-29 | Howarth Rolf M | Reliable capture of digital video images for automated indexing, archiving and editing |
CN102595199A (zh) * | 2011-01-11 | 2012-07-18 | 中兴通讯股份有限公司 | 一种流媒体数据包的封装、传输方法及流媒体处理装置 |
CN103024453A (zh) * | 2012-12-26 | 2013-04-03 | 广东威创视讯科技股份有限公司 | 非直接获取视频应用场合拼接视频同步播放方法及装置 |
CN103607665A (zh) * | 2013-11-27 | 2014-02-26 | 四川九洲电器集团有限责任公司 | 一种多链路的无线实时视频传输方法及系统 |
CN108322774A (zh) * | 2018-03-01 | 2018-07-24 | 郑州云海信息技术有限公司 | 一种视频数据的传输方法、装置及介质 |
-
2018
- 2018-03-01 CN CN201810171211.XA patent/CN108322774A/zh active Pending
- 2018-10-26 WO PCT/CN2018/112002 patent/WO2019165789A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1138801A (zh) * | 1995-04-10 | 1996-12-25 | 计数设备公司 | 独立于传送定时进行调整和传送定时程序数据的方法和设备 |
CN1234689A (zh) * | 1998-03-02 | 1999-11-10 | 株式会社东芝 | 通信系统 |
US20050286863A1 (en) * | 2004-06-23 | 2005-12-29 | Howarth Rolf M | Reliable capture of digital video images for automated indexing, archiving and editing |
CN102595199A (zh) * | 2011-01-11 | 2012-07-18 | 中兴通讯股份有限公司 | 一种流媒体数据包的封装、传输方法及流媒体处理装置 |
CN103024453A (zh) * | 2012-12-26 | 2013-04-03 | 广东威创视讯科技股份有限公司 | 非直接获取视频应用场合拼接视频同步播放方法及装置 |
CN103607665A (zh) * | 2013-11-27 | 2014-02-26 | 四川九洲电器集团有限责任公司 | 一种多链路的无线实时视频传输方法及系统 |
CN108322774A (zh) * | 2018-03-01 | 2018-07-24 | 郑州云海信息技术有限公司 | 一种视频数据的传输方法、装置及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108322774A (zh) | 2018-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110300056B (zh) | 一种实时响应式api网关及其请求处理方法 | |
JP6686033B2 (ja) | メッセージをプッシュするための方法および装置 | |
CN110730105A (zh) | 图片数据传输方法、装置、设备及存储介质 | |
WO2018166415A1 (zh) | 云存储系统、媒体数据存储方法及系统 | |
WO2020248649A1 (zh) | 音视频数据同步播放方法、装置、系统、电子设备及介质 | |
CN113489805B (zh) | 一种云桌面系统的对接方法、装置、设备及存储介质 | |
US10645140B2 (en) | Method for processing transcoding task, system and task management server | |
EP3754998B1 (en) | Streaming media quality monitoring method and system | |
CN112953850B (zh) | 数据传输方法、装置、计算机可读介质及电子设备 | |
CN108156223A (zh) | 一种基于websocket的消息精准推送系统及方法 | |
CN109451078A (zh) | 一种分布式架构下的事务处理方法和装置 | |
CN112486707A (zh) | 基于Redis的消息异步消费方法及装置 | |
JP2022546108A (ja) | 情報処理方法、装置、設備及びコンピュータ読み取り可能な記憶媒体 | |
Zhang et al. | Speeding up short data transfers: Theory, architectural support, and simulation results | |
WO2019165789A1 (zh) | 一种视频数据的传输方法、装置及介质 | |
KR102423039B1 (ko) | 대용량 네트워크 모니터링을 위한 실시간 패킷 데이터 저장 방법 및 장치 | |
WO2024066938A1 (zh) | 直播截图方法、装置、设备及存储介质 | |
CN115514682B (zh) | 一种数据传输方法、装置、设备及存储介质 | |
CN114866827B (zh) | 音视频同步的检测方法和装置、存储介质及电子设备 | |
CN113810629B (zh) | 一种融合平台多媒体信号的视频帧处理方法及装置 | |
CN111935316B (zh) | 一种前端设备目录获取方法及装置 | |
CN112584134B (zh) | 视频会议码流的测试方法、装置、计算机设备和存储介质 | |
CN108259393B (zh) | 一种流数据处理中乱序纠正方法及系统 | |
CN102170562A (zh) | 网络视频服务装置 | |
WO2024082882A1 (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: 18908260 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: 18908260 Country of ref document: EP Kind code of ref document: A1 |