CN114363706A - Video data processing method, device, apparatus and storage medium - Google Patents

Video data processing method, device, apparatus and storage medium Download PDF

Info

Publication number
CN114363706A
CN114363706A CN202210107338.1A CN202210107338A CN114363706A CN 114363706 A CN114363706 A CN 114363706A CN 202210107338 A CN202210107338 A CN 202210107338A CN 114363706 A CN114363706 A CN 114363706A
Authority
CN
China
Prior art keywords
data
ith
video data
video
total
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.)
Pending
Application number
CN202210107338.1A
Other languages
Chinese (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202210107338.1A priority Critical patent/CN114363706A/en
Publication of CN114363706A publication Critical patent/CN114363706A/en
Pending 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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4621Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/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/437Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
    • 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server

Abstract

The disclosure provides a video data processing method, a device and a storage medium, and relates to the field of data processing, in particular to the field of big data. The specific implementation scheme is as follows: the method comprises the steps that a first device determines N second devices for uploading total video data in parallel; transmitting at least a portion of the data blocks in the total video data to an ith second device through a first communication link with the ith second device, so as to transmit at least a portion of the data blocks in the total video data to a video server through the ith second device; and sending at least part of data blocks in the total video data to the video server through a second communication link with the video server, wherein the video server can acquire the total video data based on the first device and the N second devices. Therefore, the problem that the video uploading is not instant is avoided to the maximum extent.

Description

Video data processing method, device, apparatus and storage medium
Technical Field
The present disclosure relates to the field of data processing technology, and in particular, to the field of big data.
Background
In the existing video uploading process, for example, for a live scene, the requirement on the instantaneity of video uploading is extremely high, and particularly when the definition of a video is improved, the number of video files required to be uploaded per second is increased, and the problem that the video uploading is not instant enough often occurs due to the limitation of the network speed.
Disclosure of Invention
The present disclosure provides a video data processing method, apparatus, device, and storage medium.
According to an aspect of the present disclosure, there is provided a video data processing method including:
the method comprises the steps that a first device determines N second devices for uploading total video data in parallel, wherein N is a natural number;
the first device sends at least part of data blocks in the total video data to an ith second device through a first communication link between the first device and the ith second device so as to send at least part of data blocks in the total video data to a video server through the ith second device, wherein i is an integer which is greater than or equal to 1 and less than or equal to N;
the first device sends at least part of data blocks in the total video data to the video server through a second communication link between the first device and the video server, wherein the video server can acquire the total video data based on the first device and the N second devices.
According to another aspect of the present disclosure, there is provided a first apparatus including:
the device comprises a first determining unit, a second determining unit and a control unit, wherein the first determining unit is used for determining N second devices for uploading total video data in parallel, and N is a natural number;
a first communication unit, configured to send at least part of data blocks in the total video data to an ith second device through a first communication link with the ith second device, so as to send at least part of data blocks in the total video data to a video server through the ith second device, where i is an integer greater than or equal to 1 and less than or equal to N;
and the second communication unit is used for sending at least part of data blocks in the total video data to the video server through a second communication link with the video server, wherein the video server can acquire the total video data based on the first equipment and the N second equipments.
According to still another aspect of the present disclosure, there is provided a video data processing apparatus including: a first device and N second devices; wherein the content of the first and second substances,
the first device is used for determining N second devices for uploading total video data in parallel, wherein N is a natural number; sending at least part of data blocks in the total video data to an ith second device through a first communication link with the ith second device so as to send at least part of data blocks in the total video data to a video server through the ith second device, wherein i is an integer greater than or equal to 1 and less than or equal to N; sending at least some of the total video data blocks to the video server over a second communication link with the video server;
the ith second device is used for receiving at least part of data blocks in the total video data through a first communication link with the first device and sending the received at least part of data blocks in the total video data to the video server; wherein the video server is capable of acquiring the total video data based on the first device and the N second devices.
According to still another aspect of the present disclosure, there is provided an electronic device including:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method described above.
According to yet another aspect of the present disclosure, there is provided a non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to perform the method described above.
According to yet another aspect of the disclosure, a computer program product is provided, comprising a computer program which, when executed by a processor, implements the method described above.
In this way, the problem of video uploading being not instant is avoided to the greatest extent.
It should be understood that the statements in this section do not necessarily identify key or critical features of the embodiments of the present disclosure, nor do they limit the scope of the present disclosure. Other features of the present disclosure will become apparent from the following description.
Drawings
The drawings are included to provide a better understanding of the present solution and are not to be construed as limiting the present disclosure. Wherein:
fig. 1 is a schematic flow chart of an implementation of a video data processing method according to an embodiment of the present disclosure;
fig. 2 is a schematic flow chart of an implementation of a video data processing method according to an embodiment of the present disclosure in a specific example;
FIG. 3 is a flow chart illustrating a prior art implementation of video data processing;
fig. 4 is a schematic flow chart of an implementation of a video data processing method according to an embodiment of the present disclosure in another specific example;
FIG. 5 is a schematic diagram of a video data processing apparatus according to an embodiment of the present disclosure;
FIG. 6 is a schematic block diagram of a video data processing system according to an embodiment of the present disclosure;
FIG. 7 is a schematic block diagram of a first apparatus according to an embodiment of the present disclosure;
fig. 8 is a block diagram of an electronic device for implementing a video data processing method according to an embodiment of the present disclosure.
Detailed Description
Exemplary embodiments of the present disclosure are described below with reference to the accompanying drawings, in which various details of the embodiments of the disclosure are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
The present disclosure provides a video data processing method applied to a first device, as shown in fig. 1, the method includes:
step S101: the first device determines N second devices for uploading the total video data in parallel, wherein N is a natural number.
Step S102: the first device sends at least part of data blocks in the total video data to an ith second device through a first communication link between the first device and the ith second device so as to send at least part of data blocks in the total video data to a video server through the ith second device, wherein i is an integer which is greater than or equal to 1 and less than or equal to N. That is, the first device sends at least part of data blocks in the total video data to be uploaded to the video server to the second device, and sends at least part of data blocks in the total video data to the video server through the second device.
Step S103: the first device sends at least part of data blocks in the total video data to the video server through a second communication link between the first device and the video server, wherein the video server can acquire the total video data based on the first device and the N second devices.
Therefore, the first equipment can send the total video data to be uploaded to the video server through the first equipment and the second equipment in parallel to the video server, namely, the first equipment can send the total video data to be uploaded to the video server in parallel by means of the second equipment, so that the problem that the video is not instant in uploading is avoided to the maximum extent, the physical limitation that the video data are uploaded by using a single line in the prior art is broken through, and a foundation is laid for ensuring smooth playing of the video.
In a specific example of the present disclosure, the uploading, by the first device, of the total video data to be uploaded to the second device, that is, the sending, by the first device, at least part of the data blocks in the total video data to the ith second device through the first communication link with the ith second device, so as to send at least part of the data blocks in the total video data to the video server through the ith second device specifically includes:
the first device sends the total video data to the ith second device through a first communication link between the first device and the ith second device, so that the total video data is sent to the video server through the ith second device. That is, the first device directly transmits the total video data to be uploaded to the video server to the second device, and transmits the total video data to the video server through the second device. In this way, by means of the N second devices, starting from multiple links (including the second communication link where the first device communicates with the video server, and the communication link where the ith second device communicates with the video server, that is, at least two communication links), the total video data to be uploaded to the video server is sent to the video server, so that the instantaneity of video uploading is maximally ensured, and especially for scenes with high real-time requirements, such as live scenes, smooth playing of videos can be maximally ensured. Moreover, the problem that the total video data cannot be effectively uploaded due to the fact that the second communication link between the first device and the video server is in a problem can be avoided to the greatest extent.
In a specific example of the disclosure, the first device may also directly upload the total video data to be uploaded to a video server, that is, the first device sends at least a part of data blocks in the total video data to the video server through a second communication link with the video server, and specifically includes: and the first equipment transmits the total video data to a video server through a second communication link between the first equipment and the video server.
Therefore, under the condition that the first device directly uploads the total video data to the video server, the data which needs to be uploaded to the video server can be uploaded in parallel by means of the second device, namely by means of a communication link between the second device and the video server, so that the instantaneity of video uploading is ensured, and especially for scenes with high real-time requirements, such as live scenes, smooth playing of videos can be ensured to the maximum extent.
In this example, the following two scenarios may be included:
scene one: the first device uploads the full amount of data to be uploaded to the video server, i.e., the total video data, directly to the video server. Correspondingly, the first device further sends a part of data blocks in the total video data to the ith second device, that is, the first device uploads the whole data, that is, the total video data, and the second device uploads the part of data blocks, so that under the condition that the video server receives the data uploaded by the first device, the data uploaded by the second device is supplemented, and thus the problem that the total video data cannot be effectively uploaded due to the problem of the second communication link between the first device and the video server is avoided to the greatest extent, and a foundation is laid for ensuring smooth playing of videos.
Scene two: the first device uploads the full data to be uploaded to the video server, namely the total video data to the video server directly, and correspondingly, the first device also sends the total video data to the ith second device, namely, the first device uploads the full data, namely the total video data, while the second device uploads the full data, namely, the data uploaded to the video server by the first device and the second device are the full data. Therefore, under the condition that the video server receives the data uploaded by the first device and is not instant, the data uploaded by the second device can be directly used as supplement, so that the problem that the total video data cannot be effectively uploaded due to the fact that the second communication link between the first device and the video server is in a problem is solved to the greatest extent, and a foundation is laid for ensuring smooth playing of videos.
It can be understood that, in a case where the data uploaded to the video server by the first device is full data, such as the case of the above scenario one or scenario two, a situation of data redundancy may occur on the video server side, and at this time, to avoid data redundancy, after receiving data blocks from a plurality of devices, such as the first device and the N second devices, the video server discards the redundant data blocks by using the data blocks in the total video data received for the first time, so as to effectively avoid data redundancy.
It should be noted that, in practical applications, whether block uploading is performed on the total video data uploaded to the video server side may be determined based on an actual communication link condition and a data size, for example, when block uploading is required, taking scene one or scene two as an example, at this time, before the first device uploads the total video data, the first device may divide the total video data into a plurality of data blocks, and upload the plurality of data blocks in parallel, or upload the plurality of data blocks sequentially, and the like. Or, the first device directly uploads the total video data to the video server without requiring block uploading.
For example, as shown in fig. 2, the device a (i.e., the first device) adds a video device sharing function in addition to the original video capturing and video uploading functions. For example, the a device shares the total video data to be uploaded to the video server to a plurality of second devices, such as the B device and the C device, which are in the vicinity of the a device, so that the total video data is uploaded to the video server in parallel by the B device and the C device in the vicinity of the a device. In this way, compared to the existing scheme shown in fig. 3, the example can upload video data based on the network lines of the a device, the B device, and the C device, indirectly extending the upload capability of the a device.
In this example, when the device a, the device B, and the device C upload data, the same data are uploaded, and all are total video data; in this case, the video server receives total video data of a plurality of devices, i.e., the a device, the B device, and the C device, at the same time. In this example, in order to avoid data redundancy, based on a processing manner of redundant data, the video server discards repeated data packets (i.e., data blocks) after receiving and using the fastest data packet (i.e., using the first received data block), so as to avoid redundant data occurring on the video server side.
Specifically, under the condition that the network bandwidths of the device a, the device B and the device C are sufficient, the fastest received data packet is selected by the video server by using a mode of uploading multiple pieces of data at the same time, so that the problem that the video uploading is not instant is avoided to the maximum extent. Here, for comparison with the subsequent schemes, in this example, the a device divides the uploaded total video data into a plurality of pieces including a packet 1, a packet 2, a packet 3, a packet 4, and a packet 5 (hereinafter, simply referred to as total video data), and based on this, the step of parallel multi-device redundancy transmission includes:
step 1, the device A sends the total video data (including a data packet 1, a data packet 2, a data packet 3, a data packet 4 and a data packet 5) to the device B, and the device B sends the received total video data to a video receiving server.
Step 2: the a device transmits the total video data (including the packet 1, the packet 2, the packet 3, the packet 4, and the packet 5) to the C device, and the C device transmits the received total video data to the video receiving server.
And step 3: the a device simultaneously transmits the total video data (including packet 1, packet 2, packet 3, packet 4, and packet 5) to the video receiving server.
Here, it should be noted that, in practical applications, the execution sequence of the three steps is not limited, for example, step 1 to step 3 may be performed synchronously; or, firstly executing the step 3, and then executing the step 1 and the step 2 in parallel; or, step 3 may be performed first, and then step 1 and step 2 are performed sequentially, which is not limited in the present disclosure.
As shown in fig. 2, after receiving the total amount of data, i.e., the total video data, the video receiving server transmits the total video data to the video processing server, and the total video data is processed by the video processing server and then displayed to the user for viewing. Here, the video receiving server and the video processing server may also be collectively referred to as a video server.
It should be further noted that, in the process of uploading the data packets by the devices, such as the device a, the device B, or the device C, at least two of the data packets 1 to 5 may be uploaded in parallel, and the data packets 1 to 5 may also be uploaded sequentially, which is not limited in this disclosure. Correspondingly, due to the uncertainty of the network communication condition, the order of the data packets received by the video receiving server may also be different, for example, the data packet 3 sent by the device a is received first, and at this time, if the data packet 3 sent by the device B or the device C is received again, the data packet is directly discarded; secondly, the data packet 1 and the data packet 2 sent by the device B are received, and at this time, if the data packet 1 and the data packet 2 sent by the device a or the device C are received again, the data packets are directly discarded; finally, the data packets 4 and 5 sent by the device C are received, and in the same way, if the data packets 4 and 5 sent by the device a or the device B are received again, the data packets are directly discarded. At this time, the video receiving server receives the full data, and sends the received full data, that is, the total video data to the video processing server for processing and then displaying to the user. The above is merely an exemplary illustration, in practical applications, the video receiving server may further send a complete data packet to the video processing server after receiving the complete data packet, so as to further improve the video processing efficiency, and the disclosure does not limit this.
In another example, the video receiving server receives the full amount of data sent by the B device, and at this time, the received data of the a device and the C device are directly discarded.
Therefore, data needing to be uploaded to the video server is uploaded in parallel effectively by other devices, such as the device B and the device C, namely by the communication link between the second device and the video server, so that the instantaneity of video uploading is ensured, and especially for scenes with high real-time requirements, such as live scenes, smooth playing of videos can be ensured to the maximum extent.
In a specific example of the disclosure, the first device may further perform blocking processing on total video data to be uploaded to the video server, and further upload the data blocks after the blocking processing to the video server via the second device. In particular, the amount of the solvent to be used,
the first equipment carries out blocking processing on the total video data to obtain N +1 data blocks;
correspondingly, the above first device sends at least part of data blocks in the total video data to an ith second device through a first communication link with the ith second device, so as to send at least part of data blocks in the total video data to a video server through the ith second device, and the method specifically includes:
the first device sends the ith data block in the N +1 data blocks to the ith second device through a first communication link between the first device and the ith second device, so that the ith data block is sent to a video server through the ith second device.
For example, the first device sends the 1 st data block to the 1 st second device, and uploads the 1 st data block to the video server via the 1 st second device, meanwhile, the first device sends the 2 nd data block to the 2 nd second device, and uploads the 2 nd data block to the video server via the 2 nd second device, and so on, and uploads the data blocks of the total video data to the video server via different second devices in parallel.
Therefore, by means of the first communication link between the second device and the video server, the total video data needing to be uploaded to the video server is uploaded in parallel, and the network communication capacity of the first device is indirectly expanded.
It can be understood that, in this example, the first device may directly upload the full amount of data to be uploaded to the video server, that is, the total video data, to the video server, and the second device uploads the partial data, that is, the received data block sent by the first device, so that, when the video server receives the data uploaded by the first device, the data is not instant, the data can be supplemented based on the data uploaded by the second device, so as to maximally avoid the problem that the total video data cannot be effectively uploaded due to a problem occurring in the second communication link between the first device and the video server, and lay a foundation for ensuring smooth playing of the video.
It can be understood that, under the condition that the data uploaded to the video server by the first device is full data, data redundancy may occur at the video server side, and at this time, to avoid data redundancy, after receiving data blocks from the first device and the N second devices, the video server discards redundant data blocks by using the data block in the total video data received for the first time, so as to effectively avoid data redundancy.
In a specific example of the disclosure, the first device may further upload a partial data block in the total video data, for example, after the first device performs block processing on the total video data and obtains N +1 data blocks, at this time, the first device uploads one of the N +1 data blocks, specifically,
the sending, by the first device, at least part of the data blocks in the total video data to the video server through the second communication link with the video server specifically includes:
and the first equipment sends the (N + 1) th data block in the (N + 1) th data block to total video data through a second communication link with the video server.
That is, the first device uploads a part of data blocks in the total video data, and the second device uploads other data blocks in the total video data, so as to ensure that the video server can receive the full amount of data; meanwhile, the total video data to be uploaded to the video server can be sent to the video server in parallel by the aid of the N second devices from multiple links (including a second communication link for communicating the first device with the video server and a communication link for communicating the ith second device with the video server, namely at least two communication links), so that the instantaneity of uploading the video is guaranteed to the maximum extent, and especially for scenes with high real-time requirements, such as live scenes, smooth playing of the video can be guaranteed to the maximum extent.
In a specific example of the disclosure, the N +1 data blocks are different data blocks. Therefore, invalid transmission is avoided, the problem that the video is not uploaded immediately is avoided to the greatest extent, and a foundation is laid for ensuring smooth playing of the video.
In a specific example of the disclosure, the above-mentioned first device performs block processing on the total video data to obtain N +1 data blocks, specifically including: and under the condition that a second communication link between the first device and the video server is in a preset state, for example, under the condition that the network bandwidth of the second communication link is lower than a bandwidth threshold, performing block processing on the total video data to obtain N +1 data blocks. That is, the first device may determine whether the blocking process is required based on the network condition of the first device, and then upload the data blocks after the blocking process to the video server side in parallel by the second device.
For example, as shown in fig. 4, the device a (i.e., the first device) adds a video device sharing function in addition to the original video capturing and video uploading function. For example, the device a divides the total video data to be uploaded to the video server into blocks, and shares the blocks to a plurality of second devices, such as device B and device C, located near the device a, so that different blocks in the total video data are uploaded to the video server in parallel by the device B and device C near the device a. In this way, compared to the existing scheme shown in fig. 3, the example can upload video data based on the network lines of the a device, the B device, and the C device, indirectly extending the upload capability of the a device.
In this example, when the network bandwidth of each device, i.e., a device a, a device B, and a device C, is insufficient and cannot meet the data amount requirement, or the uploaded data amount is affected by the network bandwidth, each device performs data sharing, i.e., the device a, the device B, and the device C upload different data blocks in the total video data. In this example, the a device divides the total video data uploaded into a plurality of blocks including packet 1, packet 2, packet 3, packet 4, and packet 5, and based on this, the step of parallel multi-device block transmission includes:
step 1: the device A sends the data packet 2 and the data packet 5 to the device B, and the device B sends the received data packet 2 and the data packet 5 to the video receiving server.
Step 2: the device A sends the data packet 3 to the device C, and the device C sends the received data packet 3 to the video receiving server.
And step 3: the a device uploads the data packet 1 and the data packet 4 to the video receiving server.
Here, it should be noted that, in practical applications, the execution sequence of the three steps is not limited, for example, step 1 to step 3 may be performed synchronously; or, firstly executing the step 3, and then executing the step 1 and the step 2 in parallel; or, step 3 may be performed first, and then step 1 and step 2 are performed sequentially, which is not limited in the present disclosure.
It should be further noted that, in the process of uploading a data packet by each device, such as the device a or the device B, the data packet that needs to be uploaded by each device may be uploaded in parallel or sequentially, which is not limited in the present disclosure.
Correspondingly, due to the uncertainty of the network communication condition, the order of the data packets received by the video receiving server may also be different, for example, the data packet 1 and the data packet 4 sent by the device a are received first, and then the data packet 3 sent by the device C is received; and finally, receiving the data packets 2 and 5 sent by the B device, wherein at the moment, the video receiving server receives the full data, and sends the received full data, namely the total video data to the video processing server for processing and then displaying to the user.
As shown in fig. 4, after receiving the total data, that is, the total video data, the video receiving server sends the total video data to the video processing server, and then the total video data is processed by the video processing server and displayed to the user for watching. Here, the video receiving server and the video processing server may also be collectively referred to as a video server. The example is merely an exemplary illustration, in practical applications, the video receiving server may further send a complete data packet to the video processing server after receiving the complete data packet, so as to further improve the video processing efficiency, and the disclosure is not limited thereto.
Therefore, the total video data which needs to be uploaded to the video server is uploaded in parallel effectively by other devices, such as the device B and the device C, namely by the communication link between the second device and the video server, so that the instantaneity of video uploading is ensured, and especially for scenes which are insufficient in network bandwidth but have high real-time requirements, such as live scenes, smooth playing of videos can be ensured to the maximum extent.
In a specific example of the disclosure, the second device may be selected in a manner that, for example, the first device performs a device search within a preset range, and a device that is searched and can establish a link is used as the second device for uploading the total video data in parallel. Therefore, at least part of data in the total video data to be uploaded can be rapidly sent to the second device, and then the total video data to be uploaded to the video server is uploaded in parallel by means of the communication link of the second device and the video server, so that a foundation is laid for effectively avoiding the situation that the data cannot be uploaded immediately.
Here, considering that the second device is a device within a preset range of the first device, compared with the distance from the video server, the first device can quickly transmit the data to be uploaded to the second device, in other words, the second device can more quickly and stably acquire the data to be uploaded by the first device, and further, the communication capability of the first device is indirectly expanded by means of a communication link between the second device and the video server, so that a solution is provided for effectively avoiding that the data cannot be uploaded immediately.
In a specific example of the disclosed aspect, the first communication link is a bluetooth link; and/or the second communication link is at least one of the following links: mobile communication links, Wi-Fi (wireless network communication technology) links, optical fiber links. Here, the communication link between each second device and the video server may also be at least one of: a mobile communication link, a Wi-Fi (Wireless Fidelity) link, a fiber optic link.
For example, the first device may upload the total video data to be uploaded, or a partial data block in the total video data, to the second device based on the bluetooth link. Correspondingly, the first equipment uploads the data to be uploaded to the video server through the mobile communication network and the second equipment through the Wi-Fi link in parallel.
Therefore, the first device can transmit at least part of data blocks to be uploaded to the video server to the second device more quickly and stably, the communication capacity of the first device is indirectly improved by effectively utilizing a communication link between the second device and the video server, and the data are uploaded in parallel based on multiple devices, so that the video uploading instantaneity is ensured, and especially for scenes with high real-time requirements, such as live scenes, smooth playing of videos can be ensured to the greatest extent.
Therefore, the first equipment can send the total video data to be uploaded to the video server through the first equipment and the second equipment in parallel to the video server, namely, the first equipment can send the total video data to be uploaded to the video server in parallel by means of the second equipment, so that the problem that the video is not instant in uploading is avoided to the maximum extent, the physical limitation that the video data are uploaded by using a single line in the prior art is broken through, and a foundation is laid for ensuring smooth playing of the video.
In addition, the scheme disclosed by the invention can also effectively utilize the advantage of close physical distance of the nearby equipment, share at least part of data blocks in the total video data to the nearby equipment (namely, the second equipment), further utilize the nearby equipment to realize parallel and multi-line uploading, break through the physical limitation of traditional single-line uploading, and be more suitable for scenes with high requirements on uploading speed, such as live scenes.
The present disclosure also provides a video data processing apparatus, as shown in fig. 5, including: a first device and N second devices; wherein the content of the first and second substances,
the first device is used for determining N second devices for uploading total video data in parallel, wherein N is a natural number; sending at least part of data blocks in the total video data to an ith second device through a first communication link with the ith second device so as to send at least part of data blocks in the total video data to a video server through the ith second device, wherein i is an integer greater than or equal to 1 and less than or equal to N; sending at least some of the total video data blocks to the video server over a second communication link with the video server;
the ith second device is used for receiving at least part of data blocks in the total video data through a first communication link with the first device and sending the received at least part of data blocks in the total video data to the video server; wherein the video server is capable of acquiring the total video data based on the first device and the N second devices.
The specific functions of the first device and the second device may be described with reference to the above method, and are not described herein again.
The present disclosure also provides a video data processing system, as shown in fig. 6, including: the system comprises a first device, N second devices and a video server; wherein the content of the first and second substances,
the first device is used for determining N second devices for uploading total video data in parallel, wherein N is a natural number; sending at least part of data blocks in the total video data to an ith second device through a first communication link with the ith second device so as to send at least part of data blocks in the total video data to a video server through the ith second device, wherein i is an integer greater than or equal to 1 and less than or equal to N; sending at least some of the total video data blocks to the video server over a second communication link with the video server;
the ith second device is used for receiving at least part of data blocks in the total video data through a first communication link with the first device and sending the received at least part of data blocks in the total video data to the video server;
the video server is configured to obtain the total video data based on the first device and the N second devices.
The specific functions of the first device, the second device and the video server may be described with reference to the above method, and are not described herein again.
The present disclosure also provides a first device, as shown in fig. 7, including:
a first determining unit 701, configured to determine N second devices for uploading total video data in parallel, where N is a natural number;
a first communication unit 702, configured to send at least part of data blocks in the total video data to an ith second device through a first communication link with the ith second device, so as to send at least part of data blocks in the total video data to a video server through the ith second device, where i is an integer greater than or equal to 1 and less than or equal to N;
a second communication unit 703, configured to send at least part of the data blocks in the total video data to the video server through a second communication link with the video server, where the video server is capable of acquiring the total video data based on the first device and the N second devices.
In a specific example of the disclosure, the first communication unit is specifically configured to send the total video data to an ith second device through a first communication link with the ith second device, so as to send the total video data to the video server through the ith second device.
In a specific example of the disclosure, the second communication unit is specifically configured to send the total video data to a video server through a second communication link with the video server.
In a specific example of the present disclosure, the method further includes: a data processing unit; wherein the content of the first and second substances,
the data processing unit is used for carrying out block processing on the total video data to obtain N +1 data blocks;
the first communication unit is specifically configured to send an ith data block of the N +1 data blocks to an ith second device through a first communication link with the ith second device, so that the ith data block is sent to a video server through the ith second device.
In a specific example of the disclosure, the second communication unit is specifically configured to send an N +1 th data block of the N +1 data blocks to the total video data through a second communication link with the video server.
In a specific example of the disclosure, the N +1 data blocks are different data blocks.
In a specific example of the disclosure, the data processing unit is specifically configured to perform block processing on the total video data to obtain N +1 data blocks when a second communication link between the first device and the video server is in a preset state.
In a specific example of the disclosure, the first determining unit is further configured to perform device search within a preset range, and use a searched device capable of establishing a link as the second device for uploading the total video data in parallel.
In a specific example of the disclosed aspect, the first communication link is a bluetooth link; and/or the second communication link is at least one of the following links: mobile communication links, Wi-Fi links, fiber optic links.
The specific functions of the units in the above device may be described with reference to the above method, and are not described herein again.
In the technical scheme of the disclosure, the acquisition, storage, application and the like of the personal information of the related user all accord with the regulations of related laws and regulations, and do not violate the good customs of the public order.
The present disclosure also provides an electronic device, a readable storage medium, and a computer program product according to embodiments of the present disclosure.
FIG. 8 illustrates a schematic block diagram of an example electronic device 800 that can be used to implement embodiments of the present disclosure. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be examples only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 8, the apparatus 800 includes a computing unit 801 that can perform various appropriate actions and processes according to a computer program stored in a Read Only Memory (ROM)802 or a computer program loaded from a storage unit 808 into a Random Access Memory (RAM) 803. In the RAM803, various programs and data required for the operation of the device 800 can also be stored. The calculation unit 801, the ROM 802, and the RAM803 are connected to each other by a bus 804. An input/output (I/O) interface 805 is also connected to bus 804.
A number of components in the device 800 are connected to the I/O interface 805, including: an input unit 806, such as a keyboard, a mouse, or the like; an output unit 807 such as various types of displays, speakers, and the like; a storage unit 808, such as a magnetic disk, optical disk, or the like; and a communication unit 809 such as a network card, modem, wireless communication transceiver, etc. The communication unit 809 allows the device 800 to exchange information/data with other devices via a computer network such as the internet and/or various telecommunication networks.
Computing unit 801 may be a variety of general and/or special purpose processing components with processing and computing capabilities. Some examples of the computing unit 801 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various dedicated Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, and the like. The calculation unit 801 executes the respective methods and processes described above, such as a video data processing method. For example, in some embodiments, the video data processing method may be implemented as a computer software program tangibly embodied in a machine-readable medium, such as storage unit 808. In some embodiments, part or all of the computer program can be loaded and/or installed onto device 800 via ROM 802 and/or communications unit 809. When the computer program is loaded into the RAM803 and executed by the computing unit 801, one or more steps of the video data processing method described above may be performed. Alternatively, in other embodiments, the computing unit 801 may be configured to perform the video data processing method by any other suitable means (e.g. by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), system on a chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the program codes, when executed by the processor or controller, cause the functions/operations specified in the flowchart and/or block diagram to be performed. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), Wide Area Networks (WANs), and the Internet.
The computer system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server may be a cloud server, a server of a distributed system, or a server with a combined blockchain.
It should be understood that various forms of the flows shown above may be used, with steps reordered, added, or deleted. For example, the steps described in the present disclosure may be executed in parallel or sequentially or in different orders, and are not limited herein as long as the desired results of the technical solutions disclosed in the present disclosure can be achieved.
The above detailed description should not be construed as limiting the scope of the disclosure. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may be made in accordance with design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present disclosure should be included in the scope of protection of the present disclosure.

Claims (22)

1. A video data processing method, comprising:
the method comprises the steps that a first device determines N second devices for uploading total video data in parallel, wherein N is a natural number;
the first device sends at least part of data blocks in the total video data to an ith second device through a first communication link between the first device and the ith second device so as to send at least part of data blocks in the total video data to a video server through the ith second device, wherein i is an integer which is greater than or equal to 1 and less than or equal to N;
the first device sends at least part of data blocks in the total video data to the video server through a second communication link between the first device and the video server, wherein the video server can acquire the total video data based on the first device and the N second devices.
2. The method of claim 1, wherein the first device transmitting at least some of the total video data to an ith second device over a first communication link with the ith second device for transmission of at least some of the total video data to a video server by the ith second device comprises:
the first device sends the total video data to the ith second device through a first communication link between the first device and the ith second device, so that the total video data is sent to the video server through the ith second device.
3. The method of claim 1 or 2, wherein the first device sending at least some of the total video data blocks to the video server over a second communication link with the video server comprises:
and the first equipment transmits the total video data to a video server through a second communication link between the first equipment and the video server.
4. The method of claim 1, further comprising:
the first equipment carries out blocking processing on the total video data to obtain N +1 data blocks;
wherein the first device sends at least part of the data blocks in the total video data to an ith second device through a first communication link with the ith second device, so as to send at least part of the data blocks in the total video data to a video server through the ith second device, and the method comprises the following steps:
the first device sends the ith data block in the N +1 data blocks to the ith second device through a first communication link between the first device and the ith second device, so that the ith data block is sent to a video server through the ith second device.
5. The method of claim 4, wherein the first device sending at least some of the total video data blocks to the video server over a second communication link with the video server comprises:
and the first equipment sends the (N + 1) th data block in the (N + 1) th data block to total video data through a second communication link with the video server.
6. The method of claim 4 or 5, wherein the N +1 data blocks are mutually different data blocks.
7. The method of any of claims 4 to 6, wherein the first device performs a blocking process on the total video data to obtain N +1 data blocks, comprising:
and under the condition that a second communication link between the first equipment and the video server is in a preset state, carrying out block processing on the total video data to obtain N +1 data blocks.
8. The method of any of claims 1 to 7, further comprising:
and the first equipment searches equipment within a preset range, and the searched equipment capable of establishing the link is used as the second equipment for uploading the total video data in parallel.
9. The method of any one of claims 1 to 8, wherein the first communication link is a bluetooth link; and/or the presence of a gas in the gas,
the second communication link is at least one of the following links: mobile communication links, Wi-Fi links, fiber optic links.
10. A first device, comprising:
the device comprises a first determining unit, a second determining unit and a control unit, wherein the first determining unit is used for determining N second devices for uploading total video data in parallel, and N is a natural number;
a first communication unit, configured to send at least part of data blocks in the total video data to an ith second device through a first communication link with the ith second device, so as to send at least part of data blocks in the total video data to a video server through the ith second device, where i is an integer greater than or equal to 1 and less than or equal to N;
and the second communication unit is used for sending at least part of data blocks in the total video data to the video server through a second communication link with the video server, wherein the video server can acquire the total video data based on the first equipment and the N second equipments.
11. The device according to claim 10, wherein the first communication unit is specifically configured to transmit the total video data to an ith second device via a first communication link with the ith second device, so as to transmit the total video data to the video server via the ith second device.
12. The device according to claim 10 or 11, wherein the second communication unit is in particular configured to send the total video data to a video server over a second communication link with the video server.
13. The apparatus of claim 10, further comprising: a data processing unit; wherein the content of the first and second substances,
the data processing unit is used for carrying out block processing on the total video data to obtain N +1 data blocks;
the first communication unit is specifically configured to send an ith data block of the N +1 data blocks to an ith second device through a first communication link with the ith second device, so that the ith data block is sent to a video server through the ith second device.
14. The device according to claim 13, wherein the second communication unit is specifically configured to send an (N + 1) th data block of the (N + 1) th data blocks to the total video data via a second communication link with the video server.
15. The apparatus according to claim 13 or 14, wherein the N +1 data blocks are mutually different data blocks.
16. The device according to any one of claims 12 to 15, wherein the data processing unit is specifically configured to, when a second communication link between the first device and the video server is in a preset state, perform block processing on the total video data to obtain N +1 data blocks.
17. The device according to any one of claims 10 to 16, wherein the first determining unit is further configured to perform a device search within a preset range, and use the searched device capable of establishing a link as the second device for uploading the total video data in parallel.
18. The device of any one of claims 10 to 17, wherein the first communication link is a bluetooth link; and/or the second communication link is at least one of the following links: mobile communication links, Wi-Fi links, fiber optic links.
19. A video data processing apparatus comprising: a first device and N second devices; wherein the content of the first and second substances,
the first device is used for determining N second devices for uploading total video data in parallel, wherein N is a natural number; sending at least part of data blocks in the total video data to an ith second device through a first communication link with the ith second device so as to send at least part of data blocks in the total video data to a video server through the ith second device, wherein i is an integer greater than or equal to 1 and less than or equal to N; sending at least some of the total video data blocks to the video server over a second communication link with the video server;
the ith second device is used for receiving at least part of data blocks in the total video data through a first communication link with the first device and sending the received at least part of data blocks in the total video data to the video server; wherein the video server is capable of acquiring the total video data based on the first device and the N second devices.
20. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-9.
21. A non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to perform the method of any one of claims 1-9.
22. A computer program product comprising a computer program which, when executed by a processor, implements the method according to any one of claims 1-9.
CN202210107338.1A 2022-01-28 2022-01-28 Video data processing method, device, apparatus and storage medium Pending CN114363706A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210107338.1A CN114363706A (en) 2022-01-28 2022-01-28 Video data processing method, device, apparatus and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210107338.1A CN114363706A (en) 2022-01-28 2022-01-28 Video data processing method, device, apparatus and storage medium

Publications (1)

Publication Number Publication Date
CN114363706A true CN114363706A (en) 2022-04-15

Family

ID=81092715

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210107338.1A Pending CN114363706A (en) 2022-01-28 2022-01-28 Video data processing method, device, apparatus and storage medium

Country Status (1)

Country Link
CN (1) CN114363706A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282669B1 (en) * 1997-01-16 2001-08-28 Yamatake-Honeywell Co., Ltd. Ethernet communication redundancy method
CN111193624A (en) * 2019-12-30 2020-05-22 视联动力信息技术股份有限公司 Data packet transmission method and device, terminal equipment and storage medium
CN111629452A (en) * 2020-04-02 2020-09-04 北京大米科技有限公司 Data transmission control method and device, storage medium and electronic equipment
CN113905248A (en) * 2021-09-29 2022-01-07 乐视云计算有限公司 Live video data transmission method, device, equipment and storage medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282669B1 (en) * 1997-01-16 2001-08-28 Yamatake-Honeywell Co., Ltd. Ethernet communication redundancy method
CN111193624A (en) * 2019-12-30 2020-05-22 视联动力信息技术股份有限公司 Data packet transmission method and device, terminal equipment and storage medium
CN111629452A (en) * 2020-04-02 2020-09-04 北京大米科技有限公司 Data transmission control method and device, storage medium and electronic equipment
CN113905248A (en) * 2021-09-29 2022-01-07 乐视云计算有限公司 Live video data transmission method, device, equipment and storage medium

Similar Documents

Publication Publication Date Title
US20220394316A1 (en) Message sending method and device, readable medium and electronic device
CN112769897B (en) Synchronization method and device of edge calculation message, electronic equipment and storage medium
EP3410302A1 (en) Graphic instruction data processing method, apparatus and system
CN114697391A (en) Data processing method, device, equipment and storage medium
CN117014379A (en) Code rate control method, device, electronic equipment and storage medium
CN114363706A (en) Video data processing method, device, apparatus and storage medium
US20220405213A1 (en) Data processing method and apparatus
EP4142258A1 (en) Edge computing network, data transmission method and apparatus, device and storage medium
CN113905248B (en) Live video data transmission method, device, equipment and storage medium
CN115514718A (en) Data interaction method, control layer and equipment based on data transmission system
CN115277684A (en) File transmission method, device, equipment and storage medium
CN113132758B (en) Control method, device and computer program product of content distribution network
CN115633037A (en) Method, device, virtual gateway equipment, medium and system for forwarding data packet
CN114501084A (en) Play starting method, device, equipment and medium of player
CN115016955A (en) Method and device for sharing information among multiple applications
CN114374703A (en) Method, device and equipment for acquiring cloud mobile phone information and storage medium
US11240161B2 (en) Data communication apparatus for high-speed identification of adaptive bit rate, communication system, data communication method, and program
CN112702660A (en) Multimedia data transmission method and device, automatic driving vehicle and cloud server
US10504482B2 (en) Smart small form-factor pluggable (SFP) transceiver
CN114157917B (en) Video editing method and device and terminal equipment
CN114267358B (en) Audio processing method, device, equipment and storage medium
CN113014656B (en) Private cloud information synchronization method and device
CN113783769B (en) Method and device for transmitting message in automatic driving and relay equipment
CN116033235B (en) Data transmission method, digital person production equipment and digital person display equipment
CN116614367A (en) Grouping method and model updating method of terminal equipment

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