[go: up one dir, main page]

CN110769380A - Video distribution method and device - Google Patents

Video distribution method and device Download PDF

Info

Publication number
CN110769380A
CN110769380A CN201911050608.4A CN201911050608A CN110769380A CN 110769380 A CN110769380 A CN 110769380A CN 201911050608 A CN201911050608 A CN 201911050608A CN 110769380 A CN110769380 A CN 110769380A
Authority
CN
China
Prior art keywords
video
transmitted
electronic device
video data
supplementary transmission
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
CN201911050608.4A
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.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing 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 Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN201911050608.4A priority Critical patent/CN110769380A/en
Publication of CN110769380A publication Critical patent/CN110769380A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • H04W12/106Packet or message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
    • H04W28/065Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information using assembly or disassembly of packets

Landscapes

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

Abstract

The application provides a video distribution method and a device, under the condition that a first electronic device and a plurality of second electronic devices in a WIFI network need to send videos to each second electronic device, the first electronic device divides each video frame to be transmitted into a plurality of smaller video data packets and then sends the video data packets to the second electronic devices in a multicast mode, compared with the traditional scheme that the first electronic device directly sends the whole video frame to be transmitted to each second electronic device, the bandwidth requirement is reduced, the data transmission speed is improved, in addition, the summary data of the video frame to be transmitted are firstly sent to each second electronic device, the second electronic devices can conveniently verify the received video data packets according to the summary data, so that the problem of packet loss can be found in time, and measures can be taken in time, to ensure the integrity of the required data.

Description

Video distribution method and device
Technical Field
The application mainly relates to the field of online teaching application, in particular to a video distribution method and device.
Background
In recent years, with the development of computer technology and internet communication technology, a new development direction is brought to the education field, the online of teaching resources gradually becomes a development trend, more and more users learn anytime and anywhere through online classrooms, convenience is brought, and the teaching resources of high-level schools and high-level teachers are fully utilized.
In the actual teaching process, a teacher usually projects a screen of his electronic device onto electronic devices of all students, so that the students can see operations of the teacher on the screen of his electronic device, and in the process, the electronic devices of the teacher need to transmit one piece of data to the electronic devices of the students, so that the more electronic devices receive data, the greater the requirement on bandwidth, and in the current scenario that a wireless fidelity (WIFI) network commonly used by users realizes data transmission, the data receiving speed is very low, which greatly affects the online teaching efficiency, and results in poor online learning experience of the users.
Disclosure of Invention
In view of this, the present application provides a video distribution method and apparatus, where for a first electronic device and a plurality of second electronic devices in a WIFI network, the first electronic device sends a video data packet obtained by splitting each video frame to each second electronic device in a multicast manner, so as to reduce a requirement for bandwidth, improve a data transmission speed, and find a packet loss situation in time, so as to perform a remedial measure in time, and ensure integrity of required data.
In order to achieve the above object, the present application provides the following technical solutions:
in one aspect, an embodiment of the present application provides a video distribution method, which is applied to a first electronic device, where the first electronic device and a plurality of second electronic devices implement data interaction through a wireless fidelity network, and the method includes:
splitting a video frame to be transmitted to obtain a plurality of video data packets and video abstract data of the video frame to be transmitted, wherein the video abstract data comprises identification information and capacity of the video frame to be transmitted;
sending the video summary data to each second electronic device in a target play group;
and multicasting the plurality of video data packets so that the second electronic equipment accesses the multicast address of the target play group to acquire the plurality of video data packets, and performing integrity verification on the received video data packets by using the video abstract data.
In some embodiments, the method further comprises:
receiving a supplementary transmission request sent by any one of the second electronic devices, wherein the supplementary transmission request comprises identification information of the video frame to be transmitted and index information of the video data packet in the video frame to be transmitted, and the supplementary transmission request is generated according to a preset supplementary transmission strategy under the condition that the integrity verification of the received video data packet by the second electronic device is not passed;
and responding to the supplementary transmission request, and sending a supplementary transmission video data packet generated by using the identification information and the index information to the second electronic equipment, wherein the supplementary transmission video data packet comprises a video data packet which is not successfully received by the second electronic equipment or the plurality of video data packets.
In some embodiments, said responding to said request for retransmission comprises:
analyzing the identification information and the index information in the supplementary transmission requests sent by the second electronic devices to obtain supplementary transmission analysis results;
responding to a plurality of supplementary transmission requests, and generating supplementary transmission video data packets by using corresponding supplementary transmission analysis results; or, according to the supplementary transmission analysis result, responding to at least one supplementary transmission request according to a supplementary transmission response strategy to generate a supplementary transmission video data packet;
the supplementary transmission response strategy comprises supplementary transmission response priorities aiming at different types of video frames to be transmitted and/or response priorities aiming at supplementary transmission requests sent by second electronic equipment in different network states.
In another aspect, an embodiment of the present application further provides a video distribution method, which is applied to a second electronic device, where the second electronic device and a first electronic device implement data interaction through a wireless fidelity network, and the method includes:
responding to the multicast notification, and receiving video summary data of a video frame to be transmitted, which is sent by first electronic equipment, wherein the video summary data comprises identification information and capacity of the video frame to be transmitted;
accessing a multicast address of a target play group, and acquiring a plurality of video data packets obtained by splitting the video frame to be transmitted;
and carrying out integrity verification on the obtained video data packets by utilizing the video abstract data, and assembling the obtained video data packets into the video frame to be transmitted.
In some embodiments, if the integrity verification of the plurality of video data packets fails, the method further comprises:
generating a supplementary transmission request according to a preset supplementary transmission strategy, wherein the supplementary transmission request comprises identification information of the video frame to be transmitted and index information of the video data packet in the video frame to be transmitted;
sending the retransmission supplementing request to the first electronic equipment;
and receiving a supplementary transmission video data packet fed back by the first electronic equipment in response to the supplementary transmission request.
In some embodiments, the generating a supplementary transmission request according to a preset supplementary transmission policy includes:
acquiring index information of unsuccessfully received video data packets in the video frames to be transmitted;
and generating a supplementary transmission request by using the index information and the identification information of the video frame to be transmitted.
In some embodiments, the generating a retransmission-supplementing request according to a preset retransmission-supplementing policy further includes:
acquiring the type of the video frame to be transmitted, and if the type of the video frame to be transmitted is a key frame, executing the step of acquiring the index information of the video data packet which is not successfully received in the video frame to be transmitted;
or,
and acquiring the network state information of the second electronic equipment and the type of the video frame to be transmitted, and if the network state information and the type of the video frame to be transmitted meet the requirement of supplementary transmission, executing the step of acquiring the index information of the video data packet which is not successfully received in the video frame to be transmitted.
In some embodiments, the generating a supplementary transmission request according to a preset supplementary transmission policy includes:
acquiring network state information and historical packet loss data of second electronic equipment;
determining index information and a supplementary transmission mode of a supplementary transmission video data packet according to the network state information and the historical packet loss data;
generating a supplementary transmission request by using the index information of the supplementary transmission video data packet and the identification information of the video frame to be transmitted;
the sending the retransmission supplementing request to the first electronic device includes:
and sending the supplementary transmission request to the first electronic equipment according to the determined supplementary transmission mode.
In some embodiments, the video summary data further includes:
the type and the transmission time length of the video frame to be transmitted, the number of the plurality of split video data packets and one or more combinations of the capacity of each video data packet.
In another aspect, an embodiment of the present application further provides a video distribution apparatus, which is applied to a first electronic device, where the first electronic device and a plurality of second electronic devices implement data interaction through a wireless fidelity network, and the apparatus includes:
the device comprises a splitting module, a receiving module and a transmitting module, wherein the splitting module is used for splitting a video frame to be transmitted to obtain a plurality of video data packets and video abstract data of the video frame to be transmitted, and the video abstract data comprises identification information and capacity of the video frame to be transmitted;
the data sending module is used for sending the video abstract data to each second electronic device in a target play group;
and the multicast module is used for multicasting the plurality of video data packets so that the second electronic equipment accesses the multicast address of the target play group to acquire the plurality of video data packets, and integrity verification is performed on the received video data packets by using the video abstract data.
In another aspect, an embodiment of the present application further provides a video distribution apparatus, which is applied to a second electronic device, where the second electronic device and a first electronic device implement data interaction through a wireless fidelity network, and the apparatus includes:
the data receiving module is used for responding to the multicast notification and receiving video summary data of a video frame to be transmitted, which is sent by the first electronic equipment, wherein the video summary data comprises identification information and capacity of the video frame to be transmitted;
the video data packet acquisition module is used for accessing the multicast address of the target play group and acquiring a plurality of video data packets obtained by splitting the video frame to be transmitted;
the integrity verification module is used for verifying the integrity of the acquired video data packets by utilizing the video abstract data;
and the video data packet assembly module is used for acquiring a plurality of video data packets and assembling the video data packets into the video frame to be transmitted.
In another aspect, an embodiment of the present application further provides an electronic device, where the electronic device includes: a communication interface;
a memory for storing a program for implementing the video distribution method as described above;
and the processor is used for loading and executing the program stored in the memory so as to realize the steps of the video distribution method.
Therefore, compared with the prior art, the application provides a video distribution method and a device, for a first electronic device and a plurality of second electronic devices in a WIFI network, under the condition that the first electronic device needs to send a video to each second electronic device, the first electronic device divides each video frame to be transmitted into a plurality of smaller video data packets and then sends the video data packets to the plurality of second electronic devices in a multicast mode, compared with the traditional scheme that the first electronic device directly sends the whole video frame to be transmitted to each second electronic device, the bandwidth requirement is reduced, the data transmission speed is improved, in addition, the summary data of the video frame to be transmitted are firstly sent to each second electronic device, the integrity verification of the received video data packets can be conveniently carried out by the second electronic devices, so that the problem of packet loss can be found in time, and taking measures in time to ensure the integrity of the required data.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly introduced below, it is obvious that the drawings in the following description are only embodiments of the present application, and for those skilled in the art, other drawings can be obtained according to the provided drawings without creative efforts.
Fig. 1 shows a schematic diagram of a system architecture for implementing the video distribution method proposed in the present application;
fig. 2 is a schematic diagram illustrating a hardware structure of an electronic device according to an embodiment of the present application;
fig. 3 shows a signaling flow diagram of an alternative example of the video distribution method proposed by the present application;
fig. 4 shows a flow chart of yet another alternative example of the video distribution method proposed by the present application;
fig. 5 shows a flow chart of yet another alternative example of the video distribution method proposed by the present application;
fig. 6 shows a flow chart of yet another alternative example of the video distribution method proposed by the present application;
fig. 7 is a flowchart illustrating an alternative example of generating a supplementary transmission request by a second electronic device in the video distribution method proposed in the present application;
fig. 8 is a flowchart illustrating still another alternative example of generating a supplementary transmission request by a second electronic device in the video distribution method proposed in the present application;
fig. 9 is a flowchart illustrating still another alternative example of generating a supplementary transmission request by a second electronic device in the video distribution method proposed by the present application;
fig. 10 is a block diagram showing an alternative example of a video distribution apparatus described from the viewpoint of the first electronic device proposed in the present application;
fig. 11 is a block diagram showing still another alternative example of a video distribution apparatus described from the viewpoint of the first electronic device proposed in the present application;
fig. 12 is a block diagram showing an alternative example of a video distribution apparatus described from the perspective of a second electronic device proposed by the present application;
fig. 13 is a block diagram showing still another alternative example of the video distribution apparatus described from the viewpoint of the second electronic device proposed by the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
It should be noted that, for convenience of description, only the portions related to the related invention are shown in the drawings. The embodiments and features of the embodiments in the present application may be combined with each other without conflict.
It should be understood that "system", "apparatus", "unit" and/or "module" as used herein is a method for distinguishing different components, elements, parts or assemblies at different levels. However, other words may be substituted by other expressions if they accomplish the same purpose.
As used in this application and the appended claims, the terms "a," "an," "the," and/or "the" are not intended to be inclusive in the singular, but rather are intended to be inclusive in the plural unless the context clearly dictates otherwise. In general, the terms "comprises" and "comprising" merely indicate that steps and elements are included which are explicitly identified, that the steps and elements do not form an exclusive list, and that a method or apparatus may include other steps or elements. An element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in the process, method, article, or apparatus that comprises the element.
In the description of the embodiments herein, "/" means "or" unless otherwise specified, for example, a/B may mean a or B; "and/or" herein is merely an association describing an associated object, and means that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, in the description of the embodiments of the present application, "a plurality" means two or more than two. The terms "first", "second" and the like are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature.
Additionally, flow charts are used herein to illustrate operations performed by systems according to embodiments of the present application. It should be understood that the preceding or following operations are not necessarily performed in the exact order in which they are performed. Rather, the various steps may be processed in reverse order or simultaneously. Meanwhile, other operations may be added to the processes, or a certain step or several steps of operations may be removed from the processes.
Referring to fig. 1, a schematic diagram of a system structure for implementing a video distribution method proposed in the present application is shown, where the system may include: a first electronic device 100, a plurality of second electronic devices 200, and a server 300 in a wireless fidelity (WIFI) network, wherein:
the first electronic device 100 may be an electronic device that distributes video data to at least one second electronic device 200, and accordingly, the second electronic device 200 may be an electronic device that receives the video data distributed by the first electronic device 200, and the product types of the first electronic device 100 and the second electronic device 200 are not limited in this application, such as various terminal devices with displays, such as a mobile phone, a notebook computer, a desktop computer, a tablet computer, and the like, and the product types of the first electronic device 100 and the second electronic device 200, and the product types of the second electronic device 200 used by different users to receive videos may be the same or different.
It should be understood that, for the same electronic device, in one application scenario, it may be the first electronic device 100 for distributing video, and in another application scenario, it may also be the second electronic device 200 for receiving video, that is, for any electronic device as exemplified above, it may be used as both the first electronic device 100 and the second electronic device 200, which is determined according to the requirements of the specific application scenario.
Taking an online teaching application scenario as an example, the first electronic device 100 may be an electronic device used by a teacher for teaching, and the second electronic device 200 is an electronic device used by each student participating in the teaching of the teacher, during the teaching process, the first electronic device 100 needs to distribute a teaching video to the second electronic device 200 of each student for displaying, so as to implement synchronous teaching, and as for the distribution process of the teaching video, reference may be made to the description of the corresponding part of the following embodiment.
The server 300 may be a service device that performs data transmission between a first electronic device and a plurality of second electronic devices in a multicast manner, that is, it may provide a multicast address of a target play group, after the first electronic device splits a video frame to be transmitted into a plurality of video data packets, the plurality of video data packets may be uploaded to the server 300 having the multicast address, and the server 300 stores the video data packets, responds to an access request of the second electronic device, and sends the video data packets to the second electronic device.
In practical application of this embodiment, the first electronic device 100 and each second electronic device 200 may establish a TCP (Transmission Control Protocol) connection to implement data interaction between the first electronic device 100 and each second electronic device 200, and details about a specific data Transmission principle between the first electronic device 100 and each second electronic device 200 are not described in detail.
In order to solve the technical problems that in the prior art, under a WIFI network environment, a first electronic device 100 directly sends a teaching video to a second electronic device 200 of each student, the requirement on bandwidth is high, the data receiving speed is very low, and the online learning efficiency is affected, the method provides that a multicast mode is used, each frame of teaching video is split into a plurality of video data packets, the video data packets are sent to a multicast address, and a user of the second electronic device 200 selects to receive the video data packets. Compared with the prior art of directly transmitting multi-frame videos, the method and the device for transmitting the multi-frame videos greatly reduce the data volume of data transmitted at the same time, reduce the requirements on bandwidth and improve the data transmission speed; and the data transmission is realized by adopting a multicast mode, and the packet loss condition can be found in time, so that the packet loss condition can be remedied in time according to the requirement, and the integrity of the data received by the second electronic equipment is ensured.
Exemplarily, referring to fig. 2, a schematic structural diagram of an embodiment of an electronic device for implementing the video distribution method proposed by the present application is shown, where the electronic device may be the first electronic device 100 or the second electronic device 200, and as shown in fig. 2, the electronic device may include: communication interface 1, memory 2, processor 3, input device 4, output device 5, wherein:
the number of the communication interface 1, the memory 2, the processor 3, the input device 4 and the output device 5 may be at least one, the memory 2 and the processor 3 may be connected to each other through a communication bus, and the communication interface 1, the input device 4 and the output device 5 may also be connected to the communication bus, and the specific connection manner of these parts is not limited in the present application.
The communication interface 1 may be an interface of a communication module, such as an interface of a GSM module, and may implement data interaction with other devices, and may further include interfaces such as a USB interface and a serial/parallel interface, which are used to implement data interaction between internal components of an electronic device, and may be determined according to a product type of the electronic device, which is not described in detail herein.
In the embodiment of the present application, the memory 2 may include a high-speed random access memory, and may further include a nonvolatile memory, such as at least one magnetic disk storage device or other volatile solid-state storage device. The processor 3 may be a Central Processing Unit (CPU), an application-specific integrated circuit (ASIC), a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf programmable gate array (FPGA), or other programmable logic devices.
In one possible implementation, the memory 2 may include a program storage area and a data storage area, and the program storage area may store an operating system, and application programs required for at least one function (such as a video distribution function, a video playback function), programs for implementing the video distribution method proposed in the present application, and the like; the data storage area can store data generated in the using process of the electronic equipment, such as video data to be distributed, received video data packets and the like. It should be noted that, the step contents of the video distribution method implemented by the program stored in the memory 2 may be determined according to whether the electronic device currently executes a video distribution role or a video role, that is, in the case that the electronic device is a first electronic device and a second electronic device, the program contents for implementing the corresponding video distribution method may be different, and accordingly, the data contents stored in the program execution process may also be different, and may be determined according to a specific application scenario.
In practical applications of this embodiment, the processor 3 may load and execute the program stored in the memory 2 to implement each step of the video distribution method proposed in any optional embodiment of this application, and the specific implementation process may refer to the description of the corresponding part of the corresponding embodiment below.
The input device 4 may include at least one of a touch sensing unit sensing a touch event on the touch display panel, a keyboard, a mouse, a camera, a microphone, and the like, and may be determined according to a product type of the electronic device, a usage habit of a user inputting information using the electronic device, and the like.
The output device 5 may include: at least one of a display, a speaker, a light, etc., the display may include a display panel, such as a touch display panel, etc.; the brightness and/or color of the lamp can be adjusted, and in a possible implementation manner, different information can be embodied through at least one of the on-off, brightness and color of the lamp, for example, the alarm information is embodied through the red light emitted by the lamp, and the like.
It should be understood that the structure of the electronic device shown in fig. 2 does not constitute a limitation of the electronic device in the embodiment of the present application, and in practical applications, the electronic device may include more or less components than those shown in fig. 2, or some components in combination, which is not listed here.
Referring to fig. 3, a signaling flow diagram illustrating an optional example of a video distribution method proposed in the present application is shown, where the method may be applied to a system architecture as described above, and a first electronic device in the system may implement data interaction with a plurality of second electronic devices through a WIFI network, that is, how to implement video distribution between the first electronic device and the plurality of second electronic devices in a WIFI network environment is described in this embodiment, and the present embodiment does not limit product types of the first electronic device and the second electronic devices, as shown in fig. 3, the video distribution method proposed in this embodiment may include, but is not limited to, the following steps:
step S11, the first electronic device splits a video frame to be transmitted to obtain a plurality of video data packets and video abstract data of the video frame to be transmitted;
when a first electronic device needs to send a video to a plurality of second electronic devices, the video may be recorded as a to-be-transmitted video, and a multi-frame video included in the to-be-transmitted video may be recorded as a to-be-transmitted video frame.
Specifically, in this embodiment, the whole video frame to be transmitted is not directly transmitted, but the video frame to be transmitted is first split into a plurality of video data packets, and for the whole video frame to be transmitted, any video data packet has a small data capacity, so that the bandwidth requirement for data transmission in the WIFI network environment is reduced, and the transmission speed of subsequent data transmission is ensured.
It should be noted that, in step S11, how to implement the splitting method for any video frame to be transmitted is not limited, and the splitting method may be determined according to parameters such as the capacity of the video frame to be transmitted, a preset requirement for the number of split video data packets, a preset requirement for the capacity of each split video data packet, a preset transmission duration of each split video data packet, and the like, and specifically may be determined according to requirements of an actual application scenario, and detailed descriptions are not given in this application.
After the splitting processing of the current video frame to be transmitted is completed, in order to facilitate a receiver, namely the second electronic device, to perform integrity verification on the received video data packet, the first electronic device generates video summary data of the video frame to be transmitted according to a splitting result, so that the second electronic device performs integrity verification on the received video data packet by using the video summary data. Therefore, the video summary data of the video frame to be transmitted may include identification information and capacity of the video frame to be transmitted, where the identification information may be used to identify the video frame to be transmitted, that is, to distinguish different video frames to be transmitted, and has uniqueness.
In some embodiments, the video summary data of the video frame to be transmitted may further include: the type of the video frame to be transmitted (e.g., I frame, P frame, B frame, etc.), the transmission duration, the number of the split video data packets, the capacity of each video data packet, and other parameters may be combined together, and the content of the video summary data of the video frame to be transmitted obtained at this time may be determined according to the requirements of the specific application scenarios, and is not limited to the above-listed content in this embodiment.
Step S12, the first electronic device sends the video summary data to each second electronic device in the target play group;
in combination with the above description of the inventive concept of the present application, in this embodiment, a multicast mode (i.e., a point-to-multipoint communication mode) is adopted to implement data transmission between a first electronic device and a plurality of second electronic devices, specifically, a TCP/IP multicast address may be predetermined, and a play group having the multicast address is defined as a target play group, where the first electronic device and the plurality of second electronic devices may both join the target play group, i.e., establish a communication connection with the multicast address, it should be understood that any second electronic device that joins may withdraw from the target play group at any time, and a new second electronic device may also apply to join the target play group at any time, and the multicast communication principle of the present application is not described in detail.
Following the above description of the function of the video summary data, the first electronic device needs to send the video summary data of the corresponding video frame to be transmitted to each second electronic device in the target play group before sending the split video data packet to the second electronic device, so as to ensure that the second electronic device can reliably verify the integrity of the received video data packet. Therefore, in this embodiment, the first electronic device may send the video summary data to each second electronic device in the target play group by using a TCP protocol, but is not limited to this data transmission manner.
For each electronic device in the target play group, the TCP/IP protocol may be utilized to implement communication with the multicast address of the target play group, so as to implement data transmission between the first electronic device and each second electronic device. Therefore, for the video summary data of the video frame to be transmitted, in an implementation manner of some embodiments, the first electronic device may also upload the video summary data to the target play group first, so that any second electronic device that joins the target play group selects to receive the video summary data reported by the first electronic device by accessing the multicast address of the target play group.
Step S13, the first electronic device multicasts a plurality of video data packets;
step S14, the second electronic device accesses the multicast address of the target play group to obtain a plurality of video data packets;
in step S15, the second electronic device performs integrity verification on the received video data packet by using the video summary data.
After the first electronic device sends the video summary data of the video frame to be transmitted to each second electronic device added to the target play group, a plurality of video data packets obtained by splitting the video frame to be transmitted can be uploaded to the target play group, each second electronic device added to the target play group can usually receive a corresponding notification message, and therefore it is known that at least one first electronic device reports the video data packets to the target play group, and a user of the second electronic device can select whether to receive the plurality of video data packets reported by the first electronic device according to actual requirements.
In this embodiment, in the process that each second electronic device receives a plurality of video data packets, integrity verification may be performed on the video data packet corresponding to the received video frame to be transmitted by using the video summary data of the received video frame to be transmitted, so as to ensure that each second electronic device can receive all video data of the required video frame to be transmitted. The second electronic device may specifically determine a specific implementation process of the integrity verification in combination with the content included in the video summary data, and the implementation method of the integrity verification is not limited in this application.
In some embodiments, if the video summary data includes identification information and a capacity of a video frame to be transmitted, after receiving a video data packet sent by a first electronic device, a second electronic device may first screen out a plurality of video data packets corresponding to the same identification information (e.g., position identifications such as a frame number and a number of the video frame), that is, a plurality of video data packets obtained by splitting the same video frame to be transmitted, then sum the capacities of the plurality of video data packets, and compare the obtained total capacity with the capacity of the video frame to be transmitted, thereby implementing integrity verification, if a capacity difference is smaller than a first threshold, the first threshold is usually a very small value, even zero, and if the capacity difference is smaller than the first threshold, the integrity verification may be considered to pass; otherwise, the integrity verification may be considered as failed.
In some embodiments, the video summary data may further include information such as the number of the video data packets obtained by splitting, the capacity of each video data packet, and the like, in this case, when the second electronic device performs integrity verification, in addition to verifying the capacity of the received multiple video data packets as described above, the number of the received video data packets and/or the capacity of each video data packet may also be verified to determine whether all the video data packets into which the video frame to be transmitted is split are received, the capacity of each received video data packet is the same as the capacity of the corresponding video data packet obtained by splitting, and the like, if the number of the video data packets corresponding to the video frame to be transmitted is received and is smaller than the number of all the video data packets split by the video data packet to be transmitted, it may be directly determined that the integrity verification fails, and further verifying whether the video data packet which is not received is a preset important video data packet, if not, determining that the integrity verification passes, and if so, determining that the integrity verification fails.
It should be noted that, the present application does not limit how to determine that a video data packet is a preset important video data packet, and when a video data packet is split, a corresponding attribute identifier is added to each video data packet, and the attribute identifier distinguishes whether the video data packet is an important video data packet, that is, a video data packet containing important content of a corresponding video frame to be transmitted, otherwise, if the video data packet contains unimportant image information in the video frame to be transmitted, the video data packet can be regarded as an unimportant video data packet, which can allow the second electronic device not to receive such video data packet, and can also ensure that the second electronic device plays smooth video data.
In some embodiments, the video summary data may further include parameters such as a type of a video frame to be transmitted and a transmission duration, and in this case, in addition to integrity verification of the parameters given above, the duration of each received video data packet may be monitored, a sum of transmission durations of a plurality of video data packets corresponding to the same video frame to be transmitted is counted, and the sum is compared with the transmission duration of the video frame to be transmitted, and if a difference between the durations is smaller than a second threshold, it may be considered that the parameter of the transmission duration satisfies the integrity verification, and the second threshold is usually a small value, and may even be zero.
In combination with the above analysis, in the integrity verification process of the received multiple video data packets, the second electronic device may select one or more parameter combinations from the video summary data according to specific scene requirements to implement the integrity verification, and the specific verification process may be determined according to the content of the selected parameters, and is not limited to the above listed content.
In summary, in this embodiment, for a first electronic device and a plurality of second electronic devices in a WIFI network environment, in a scenario where the first electronic device needs to transmit video data to the plurality of second electronic devices, the embodiment implements data transmission between the first electronic device and each second electronic device in a multicast manner, so that the first electronic device only needs to send data to a target play group once for the same piece of data, and compared with sending the data to the plurality of second electronic devices many times in a conventional scheme, the bandwidth requirement is greatly reduced, and the data transmission speed is improved.
In addition, in this embodiment, each frame of video to be transmitted is divided into a plurality of video data packets, the video summary data of the video frame to be transmitted is sent to the second electronic device, and then the video data packet with small capacity is reported to the target playing group, so that compared with directly reporting the whole frame of video data with larger capacity, the requirement on bandwidth is further reduced, the data transmission speed is increased, and the second electronic device can also utilize the video summary data, the integrity verification is carried out on the plurality of video data packets which are selected to be received so as to find out the lost important video data packets in time, the first electronic equipment is requested to resend the lost video data packets, the packet loss rate is reduced, the reliability of video data transmission is improved, and then satisfy the video transmission requirement of application scene, if under the online teaching scene, guarantee the video synchronization between mr and every student, improve online teaching efficiency.
After the above analysis, in some embodiments, if the second electronic device verifies the integrity of the received video data packet, and determines that the received video data packet is incomplete, if the application requirement cannot be met, a corresponding supplementary transmission request may be sent to the first electronic device, the first electronic device may respond to the supplementary request, and generate a corresponding supplementary video data packet by using information carried by the request, and feed back the supplementary video data packet to the second electronic device, where the supplementary video data packet may be a video data packet that the second electronic device has not successfully received.
Certainly, in some embodiments, in response to the supplement request, the first electronic device may also determine a plurality of video data packets into which the corresponding to-be-transmitted video frame is split as the supplement transmission video data packets, that is, under the condition that a certain second electronic device loses a packet, the first electronic device may transmit the video data packets to the first electronic device again, that is, the plurality of video data packets into which the to-be-transmitted video frame is split are sent to the second electronic device again, so that the integrity of the video data packets received by the second electronic device is ensured.
Based on the foregoing analysis, referring to fig. 4, a flowchart of yet another optional example of the video distribution method provided in the present application is shown, where the method may be applied to a first electronic device, and it needs to be explained, where this embodiment mainly describes how to implement a process of the video distribution method in a case that integrity verification of a second electronic device is not passed, and regarding operation steps before integrity verification, reference may be made to descriptions of corresponding parts in the foregoing embodiment, which is not described again in this embodiment, as shown in fig. 4, the video distribution method provided in this embodiment may include, but is not limited to, the following steps:
step S21, receiving supplementary transmission requests sent by a plurality of second electronic devices;
as described above, in a certain scenario of a target play group, a first electronic device generally corresponds to a plurality of second electronic devices, so for a video data packet uploaded to the target play group by the first electronic device, the plurality of second electronic devices may all select to receive the video data packet, and during the integrity verification process of the received data, there may be a case that the integrity verification performed by one or more second electronic devices fails, and if the second electronic device needs the first electronic device to re-patch the lost video data packet, a corresponding re-transmission request may be initiated to the first electronic device, where the re-transmission request may be specifically generated according to a preset re-transmission policy, but specific content of the preset re-transmission policy is not limited.
The supplementary transmission request can include identification information of a video frame to be transmitted, index information of a video data packet in the video frame to be transmitted, and the like, the identification information can be used for indicating which video data packet split from the video frame to be transmitted needs to be supplemented by the first electronic device, the index information can further indicate on the basis, and which one or more video data packets of the video frame to be transmitted need to be supplemented by the first electronic device, and the specific content of the identification information and the index information is not limited in the application.
Step S22, analyzing the identification information and index information contained in each of the multiple supplementary transmission requests to obtain a supplementary transmission analysis result;
after receiving the supplementary transmission request sent by the second electronic device, the first electronic device may analyze information carried by each supplementary transmission request, such as identification information of the video frame to be transmitted and index information of the video data packet in the video frame to be transmitted, to obtain a supplementary analysis result of the second electronic device for each supplementary request, where the supplementary analysis result may indicate related attribute information of the video data packet that needs to be supplemented by the corresponding second electronic device, and may also indicate a network state of the corresponding second electronic device, and the like, and the detailed description of the specific implementation method of step S22 is omitted.
Step S23, according to the result of the complementary transmission analysis, responding at least one complementary transmission request according to the complementary transmission response strategy, and generating a complementary transmission video data packet;
and step S24, feeding back the supplementary transmission video data packet to the corresponding second electronic device.
When the first electronic device receives the supplementary transmission requests sent by the second electronic devices, after analyzing to obtain a supplementary transmission analysis result, it may determine whether to respond to the supplementary transmission requests according to a preset supplementary transmission response policy, and if so, it specifically responds to which one or more supplementary transmission requests, and in a scene of responding to the supplementary transmission requests, it responds to the supplementary transmission requests in what order, and so on, and then this embodiment may generate a supplementary transmission video data packet for each supplementary transmission request according to the determined responding supplementary transmission request, and in a process of responding to the supplementary transmission request, according to the supplementary transmission response policy, and feed back the supplementary transmission video data packet to the second electronic device initiating the supplementary transmission request, and for the supplementary transmission video data packet, the multicast mode described above may still be adopted for transmission, or the supplementary transmission video data packet may be directly sent to the second electronic device according to the TCP protocol, the present embodiment does not limit the data transmission method for executing step S24.
In this embodiment, the supplementary transmission response policy may include supplementary transmission response priorities for different types of video frames to be transmitted, for example, the supplementary transmission response priority for a key frame is higher than the supplementary transmission response priority for a normal frame, and/or a response priority for a supplementary transmission request sent by second electronic equipment in different network states, for example, in a 5G network or a wired ethernet network, a supplementary transmission request with a medium priority may be responded, and in a 2.4G network environment, a supplementary transmission request with a low priority may not be responded; the method may further determine, according to a frame type of the video frame to be transmitted that requires complementary transmission, that, for example, the video data packet that requires complementary transmission belongs to a key frame (I frame), may respond to the complementary transmission request, and if the video data packet that requires complementary transmission is a normal frame (P frame or B frame), may not respond to the complementary transmission request or determine whether to respond to the complementary transmission request or the like in combination with other parameters such as a network state, and the content included in the complementary transmission response policy is not limited in the present application.
In some embodiments, after the complementary transmission analysis results of the multiple complementary transmission requests are obtained according to the above steps S21 and S22, the multiple complementary transmission requests may also be directly responded, and the complementary transmission analysis result is used to generate a complementary transmission video data packet, that is, after the first electronic device receives the complementary transmission request sent by the second electronic device, the first electronic device may directly respond to the complementary transmission request, and feed back the generated corresponding complementary video data packet to the second electronic device.
The supplementary transmission video data packet of the embodiment may include a supplementary transmission video data packet for each supplementary transmission request, and the supplementary transmission video data packets corresponding to multiple supplementary transmission requests may be completely different, may also have at least part of corresponding video data, and may be determined according to the specific application scene requirements; of course, the supplementary transmission video data packet may also be a video data packet corresponding to a plurality of supplementary transmission requests, for example, the supplementary transmission video data packet requested by a plurality of supplementary transmission requests is collected and generated according to the collected result, and the content and the generation mode of the supplementary transmission video data packet are not limited in the present application.
To sum up, after splitting a video frame to be transmitted, the first electronic device sends the video frame to a plurality of second electronic devices in a multicast mode, so that the transmission efficiency is improved, then the second electronic devices perform integrity verification on the received video data packets, can generate a complementary transmission request according to a preset complementary transmission strategy under the condition that the integrity verification fails, and send the complementary transmission request to the first electronic devices, so that the first electronic devices analyze information carried by the received complementary transmission requests, respond to the complementary transmission requests according to a preset complementary transmission response strategy, send the complementary transmission video data packets generated by complementary transmission analysis results to the corresponding second electronic devices, and ensure that the second electronic devices obtain complete video data.
Referring to fig. 5, a flowchart of yet another optional example of the video distribution method proposed in the present application is shown, where the method is applicable to a second electronic device, the present application does not limit a product type of the second electronic device, and multiple second electronic devices may implement data interaction with a first electronic device through a WIFI network, as shown in fig. 5, the video distribution method proposed in this embodiment may include:
step S31, responding to the multicast notification, receiving video summary data of a video frame to be transmitted sent by the first electronic device;
the method for acquiring video summary data of a video frame to be transmitted by the first electronic device may refer to the description of the corresponding part of the above embodiment, which is not described in detail in this embodiment, and the video summary data may include at least identification information and capacity of the video frame to be transmitted, and may further include one or more combinations of parameters, such as the type of the video frame to be transmitted, the transmission duration, the number of split video data packets, and the capacity of each video data packet, as needed, and the data content included in the video summary data is not limited in this application.
In the above analysis, the first electronic device sends the plurality of video data packets to the plurality of second electronic devices in a multicast manner, specifically, after uploading the plurality of video data packets to the multicast address of the target play group, the multicast notification can be sent to each second electronic device currently joining the target play group, so that a user of the second electronic device can know that the first electronic device sends the video data according to the multicast notification, the present application does not limit the representation form of the multicast notification, for example, the second electronic device may output a prompt window to display the multicast notification, or may output a notification interface including contents of "receive", "reject", and the like, and a user of the second electronic device may flexibly select whether to receive a plurality of video data packets sent by the first electronic device according to actual requirements.
Step S32, accessing the multicast address of the target play group, and obtaining a plurality of video data packets obtained by splitting the video frame to be transmitted;
after determining to receive the plurality of video data packets uploaded by the first electronic device, the second electronic device may obtain, by accessing the multicast address of the target play group, the plurality of video data packets that have been uploaded to the multicast address by the first electronic device, where the plurality of video data packets may be obtained by splitting any video frame to be transmitted, and the specific implementation process is not repeated.
It should be understood that one video is generally composed of a plurality of video frames, the first electronic device may sequentially split the plurality of video frames and report the split video frames to a multicast address of a target play group, therefore, a storage space of the multicast address generally stores video data packets obtained by splitting the plurality of video frames, the second electronic device accesses the multicast address, the obtained plurality of video data packets may include a plurality of video packets corresponding to the same video frame to be transmitted, and also may include a plurality of video data packets corresponding to different video frames, and this embodiment may record a currently transmitted video frame as a video frame to be transmitted.
And step S33, carrying out integrity verification on the obtained video data packets by using the video abstract data, and obtaining a plurality of video data packets to be assembled into video frames to be transmitted.
In combination with the above description of the content of the video summary data, the identification information of the video frame to be transmitted, such as a frame number or other numbers, may be used to determine which video frame the received video data packet belongs to, and then perform integrity verification on a plurality of video data packets corresponding to the same video frame, where the specific verification content may be determined according to the content included in the video summary data.
After the integrity verification of the received multiple video data packets is passed, the multiple video data packets (which correspond to the same video frame to be transmitted) may form a video frame to be transmitted, and then the video frame to be transmitted may be processed according to the requirements of a specific application scenario, for example, the video frame is converted into a video format required by a video playing application and then output.
It should be understood that, since the integrity verification implemented by the second electronic device is not limited to receiving a plurality of video data packets, and is completely consistent with the corresponding information of the plurality of video data packets into which the first electronic device splits the video frame to be transmitted, there may be slight differences between the content of the video frame to be transmitted assembled by the second electronic device and the video data contained in the video frame to be transmitted obtained by the first electronic device, but this does not affect the smooth and reliable video data output by the second electronic device.
In summary, in a WIFI network environment, after a first electronic device sends, in a multicast manner, a plurality of video data obtained by splitting a video frame to be transmitted to a play address of a target play group, the first electronic device serves as each second electronic device of the target play group, and can flexibly select when to respond to a multicast notification according to an actual situation, and receive video summary data of the video frame to be transmitted sent by the first electronic device first, so that integrity verification of a plurality of video data packets obtained from the multicast address is achieved, integrity of the video data packets obtained by splitting the video frame to be transmitted by the second electronic device is guaranteed, reliability of video synchronization output between the second electronic device and the first electronic device is guaranteed, and application requirements such as online teaching are met.
In practical application, any second electronic device added to the target play group performs integrity verification on a plurality of received video data packets in the manner described in the above embodiment, and if the integrity verification passes, the plurality of video data packets may be subjected to subsequent processing, for example, a plurality of video data packets corresponding to the same identification information are assembled into one video frame, and the processing is performed in such a circulating manner, so that the second electronic device may obtain a plurality of video frames of the target video, and output the plurality of video frames, thereby implementing playing of the target video.
However, in the video data packet transmission process, it is often caused by multiple factors such as a network condition, that the video data packet transmission fails, that is, the second electronic device cannot successfully receive each video data packet, and then, the second electronic device performs integrity verification on multiple received video data packets corresponding to the same identification information, which is often not passed, in this case, the second electronic device may request the first electronic device to resend the corresponding supplementary transmission video data packet according to a preset supplementary transmission policy, and a specific implementation process may refer to a flowchart of another optional example of the video distribution method shown in fig. 6, but is not limited to the implementation manner described in this embodiment, as shown in fig. 6, the method may include:
step S41, generating a supplementary transmission request according to a preset supplementary transmission strategy;
the content of the preset supplementary transmission strategy is not limited, and the content can be determined by combining a specific application scene according to the frame type of the video frame to be transmitted, the network state of the second electronic device, the unsuccessfully received video data packet and other information, and the detailed description is not given one by one. The supplementary transmission request generated in step S14 may include identification information of the video frame to be transmitted, index information of the video data packet in the video frame to be transmitted, and the like, and the supplementary transmission request may be determined according to specific content of a preset supplementary transmission policy according to which the supplementary transmission video data is obtained this time, and the specific content included in the supplementary transmission request is not limited in this application.
In some embodiments, step S41 may include: and acquiring index information of the video data packet which is not successfully received in the video frame to be transmitted, and generating a supplementary transmission request by using the index information and the identification information of the video frame to be transmitted, wherein the specific generation process is not described in detail.
In some implementations, as shown in fig. 7, the step S41 may specifically include:
step A1, obtaining the type of video frame to be transmitted;
step A2, detecting the type of the video frame to be transmitted as a key frame, and acquiring the index information of the video data packet which is not successfully received in the video frame to be transmitted;
step A3, generating a supplementary transmission request by using the index information and the identification information of the video frame to be transmitted.
Therefore, under the condition that the integrity verification is not passed, the second electronic device may first detect whether the video frame to be transmitted is a key frame (e.g., an I frame) of the target video, and if so, may request to complement the video data packet; if not, namely the video frame to be transmitted is a P frame or a B frame, the video data packet can not be requested to be transmitted again, under the condition, the video frame to be transmitted is not considered to be an important frame in the target video, the playing content and effect of the whole target video cannot be influenced by the lost part of the video data packet, the first electronic equipment does not need to occupy resources to send the video data packet again, and the video transmission efficiency is improved. It should be noted that the present application does not describe in detail how to detect whether a video frame to be transmitted is a key frame.
It should be understood that, in the case that the integrity verification fails, the second electronic device may also directly generate the supplementary transmission request in the above manner without distinguishing the type of the video frame to be transmitted, so as to request the supplementary transmission of the video data packet. Moreover, in a scene where the first electronic device sends the non-video data to the plurality of second electronic devices in the manner described above, data supplementary transmission can be directly realized in the manner described in this paragraph, and it is ensured that the second electronic devices can obtain complete data.
In implementation manners of still other embodiments, on the basis of the foregoing embodiments, the present application may further determine whether to generate the supplementary transmission request by combining parameters of other aspects such as a network state of the second electronic device, a historical packet loss condition, and the like, and specifically referring to fig. 8, the step S41 may include:
step B1, acquiring the network state information of the second electronic equipment and the type of the video frame to be transmitted;
the network state information of the second electronic device itself may indicate a network type currently used by the second electronic device, such as a WIFI 2.4G network, a WIFI5G network, a wired ethernet network, and the like.
Step B2, detecting that the network state information and the type of the video frame to be transmitted meet the supplement transmission requirement, and acquiring the index information of the video data packet which is not successfully received in the video frame to be transmitted;
in this embodiment, different types of video frame supplementary transmission can be preset, and the network state of the second electronic device in which network type is required, for example, for a video frame to be transmitted in the type of key frame, no matter what the content of the network state information of the second electronic device is, the supplementary transmission requirement can be met, and supplementary transmission can be requested; for a video frame to be transmitted, which is a common frame, in this embodiment, network state information of the second electronic device may be further detected, if the second electronic device is in the WIFI5G network or the wired ethernet network, it may be considered that the complementary transmission requirement is met, and a video data packet may be requested to be transmitted to the first electronic device, and if the second electronic device is in the WIFI 2.4G network, it may be considered that the complementary transmission requirement is not met, and it is not necessary to initiate a complementary transmission request to the first electronic device.
The video frame to be transmitted can be further divided into an I frame with a high priority, a P frame with a medium priority and a B frame with a low priority according to the importance degree, in the supplementary transmission requirement described in the above paragraph, the video frame to be transmitted can be further defined as a P frame, the second electronic device is in a WIFI5G network, the supplementary transmission requirement is met, the supplementary transmission request can be initiated, and if the second electronic device is in the WIFI 2.4G network, the supplementary transmission requirement is not met, the supplementary transmission request is not initiated; under the condition that the video frame to be transmitted is a B frame, no matter what type of WIFI network the second electronic equipment is in, the second electronic equipment can be considered not to meet the complementary transmission requirement, and a complementary transmission request cannot be initiated.
Therefore, for different preset supplementary transmission strategies, the content meeting the supplementary transmission requirement in the step B2 is also different, the network state information and the type of the video frame to be transmitted in the step B2 meet the supplementary transmission requirement, and the specific content is not limited.
And step B3, generating a supplementary transmission request by using the index information and the identification information of the video frame to be transmitted.
In implementation manners of still other embodiments, referring to a flow diagram of generating a supplementary transmission request in a video distribution method shown in fig. 9, the method may include:
step C1, acquiring network state information and historical packet loss data of the second electronic device;
the historical packet loss data of the second electronic device may include: the second electronic device may further include data such as packet loss frequency, packet loss number, packet loss time, and the like, and the content included in the historical packet loss data is not limited in this embodiment.
Step C2, determining the index information and supplementary transmission mode of the supplementary transmission video data packet according to the network state information and the historical packet loss data;
in this embodiment, it is described by taking an example that the historical packet loss data includes packet loss frequency, if the packet loss frequency of the second electronic device is greater than a frequency threshold and the network quality is poor (for example, the network rate is low, and the like, the embodiment does not describe in detail how to determine the network quality, and does not limit the network rate, which is a parameter reflecting the network quality), a supplementary transmission request may be initiated to the first electronic device after a first time period, and at this time, the first electronic device may be requested to report all video data packets of a corresponding video frame to be transmitted again, and a lost part of video data packets may also be requested to be subjected to supplementary transmission; if the packet loss frequency of the second electronic device is less than the frequency threshold and the network quality is good, the first electronic device may be directly requested to retransmit the video data packet, and specifically, the lost video data packet, that is, the video data packet that the second electronic device has not successfully received, may be directly requested to retransmit the video data packet, but is not limited to the retransmission implementation manner described in this embodiment.
As can be seen, the supplementary transmission mode may include requesting the first electronic device to report all video data packets of the video frame to be transmitted again, requesting the first electronic device to report video data packets that are not successfully received by the second electronic device, and the like.
And step C3, generating a supplementary transmission request by using the index information of the supplementary transmission video data packet and the identification information of the video frame to be transmitted.
It should be understood that, for the implementation method for generating the supplementary transmission request according to the preset supplementary transmission policy, the implementation method is not limited to the above-listed implementation manners, and the above-listed implementation manners may be combined and adjusted to obtain a new implementation manner, and the specific implementation method of the step S41 may be flexibly determined according to the implementation concept described above and according to the requirements of the specific application scenario, and the detailed description is not given in this application.
The method includes the steps that no matter which preset supplementary transmission strategy is adopted to generate a supplementary transmission request, identification information of a corresponding video frame to be transmitted and index information of a video data packet in the video frame to be transmitted are generally contained, so that first electronic equipment can determine which video frame the video data packet which is requested to be subjected to supplementary transmission by second electronic equipment belongs to by utilizing the identification information, a plurality of video data packets obtained by splitting the video frame are obtained by utilizing the index information, which video data packet and the like which are not successfully received by the second electronic equipment can also be obtained according to needs, and the content of the identification information and the index information is not limited.
Step S42, sending the supplementary transmission request to the first electronic equipment;
and step S43, receiving a retransfer video data packet fed back by the first electronic device in response to the retransfer request.
For a specific implementation process of the first electronic device responding to the retransmission request and obtaining the retransmission video data packet, reference may be made to the description of the corresponding parts in the above embodiments, and details are not repeated.
In summary, under the condition that the integrity verification of the received video data packet by the second electronic device fails, a corresponding supplementary transmission request may be generated according to a preset supplementary transmission policy, such as a frame type of a corresponding video frame to be transmitted, a network state of the second electronic device, historical packet loss data, and the like, to timely request the first electronic device to upload the supplementary transmission video data packet again, so as to ensure the integrity of the video data packet obtained by the second electronic device, thereby ensuring that the video synchronous playing between the first electronic device and the plurality of second electronic devices can be realized, and meeting the application requirements of online teaching.
Referring to fig. 10, a block diagram of an alternative example of a video distribution apparatus proposed in the present application is shown, where the apparatus may be applied to a first electronic device, and the first electronic device may implement data interaction with a plurality of second electronic devices through a WIFI network, and as shown in fig. 10, the apparatus may include:
the splitting module 11 is configured to split a video frame to be transmitted to obtain a plurality of video data packets and video summary data of the video frame to be transmitted, where the video summary data includes identification information and a capacity of the video frame to be transmitted;
the data sending module 12 is configured to send the video summary data to each of the second electronic devices in the target play group;
the multicast module 13 is configured to multicast the multiple video data packets, so that the second electronic device accesses the multicast address of the target play group to obtain the multiple video data packets, and performs integrity verification on the received video data packets by using the video summary data.
In some embodiments, as shown in fig. 11, the apparatus may further include:
a supplementary transmission request receiving module 14, configured to receive a supplementary transmission request sent by any one of the second electronic devices, where the supplementary transmission request includes identification information of the video frame to be transmitted and index information of the video data packet in the video frame to be transmitted, and the supplementary transmission request is generated according to a preset supplementary transmission policy when the integrity verification of the received video data packet by the second electronic device is failed;
and a supplementary transmission request response module 15, configured to respond to the supplementary transmission request, and send a supplementary transmission video data packet generated by using the identification information and the index information to the second electronic device, where the supplementary transmission video data packet includes a video data packet that is not successfully received by the second electronic device, or the plurality of video data packets.
In an implementation manner of some embodiments, the supplementary transmission request response module 15 may include:
the information analysis unit is used for analyzing the identification information and the index information in the supplementary transmission requests sent by the plurality of second electronic devices to obtain a supplementary transmission analysis result;
the first supplementary transmission video data packet generating unit is used for responding to the plurality of supplementary transmission requests and generating supplementary transmission video data packets by using corresponding supplementary transmission analysis results;
or, the second supplementary transmission video data packet generating unit is configured to respond to at least one supplementary transmission request according to the supplementary transmission analysis result and a supplementary transmission response policy, and generate a supplementary transmission video data packet;
the supplementary transmission response strategy comprises supplementary transmission response priorities aiming at different types of video frames to be transmitted and/or response priorities aiming at supplementary transmission requests sent by second electronic equipment in different network states.
It should be noted that, various modules, units, and the like applied in the embodiments of the apparatuses of the first electronic device may be stored in the memory as program modules, and the processor executes the program modules stored in the memory to implement corresponding functions, and for the functions implemented by the program modules and their combinations and the achieved technical effects, reference may be made to the description of corresponding parts of the embodiments of the methods, which is not described in detail in this embodiment.
Referring to fig. 12, a block diagram of still another alternative example of a video distribution apparatus is provided for the present application, where the apparatus may be applied to a second electronic device, and a first electronic device may implement data interaction with a plurality of second electronic devices through a WIFI network, as shown in fig. 12, the apparatus may include:
the data receiving module 21 is configured to respond to the multicast notification and receive video summary data of a to-be-transmitted video frame sent by the first electronic device;
the video summary data may include identification information and capacity of the video frame to be transmitted, and may further include one or more combinations of parameters such as the type of the video frame to be transmitted, transmission duration, the number of the plurality of split video data packets, and capacity of each video data packet, as required.
A video data packet obtaining module 22, configured to access a multicast address of a target play group, and obtain a plurality of video data packets obtained by splitting the to-be-transmitted video frame;
the integrity verification module 23 is configured to perform integrity verification on the obtained multiple video data packets by using the video summary data;
and the video data packet assembling module 24 is configured to obtain a plurality of video data packets and assemble the video data packets into the video frame to be transmitted.
In some embodiments, if the integrity verification of the plurality of video data packets fails, as shown in fig. 13, the apparatus may further include:
a supplementary transmission request generating module 25, configured to generate a supplementary transmission request according to a preset supplementary transmission policy, where the supplementary transmission request includes identification information of the video frame to be transmitted and index information of the video data packet in the video frame to be transmitted;
in practical applications, in some implementations, the supplementary transmission request generating module 25 may include:
the index information acquisition unit is used for acquiring the index information of the video data packet which is not successfully received in the video frame to be transmitted;
and the first supplementary transmission request generating unit is used for generating a supplementary transmission request by using the index information and the identification information of the video frame to be transmitted.
In some embodiments, the supplementary transmission request generating module 25 may further include:
the first frame type obtaining unit is used for obtaining the type of the video frame to be transmitted, and if the type of the video frame to be transmitted is a key frame, the index information obtaining unit is triggered to obtain the index information of the video data packet which is not successfully received in the video frame to be transmitted.
Alternatively, the supplementary transmission request generating module 25 may further include:
a second frame type obtaining unit for obtaining the type of the video frame to be transmitted,
the first network state information acquisition unit is used for acquiring the network state information of the second electronic equipment;
and the detection unit is used for detecting whether the network state information and the type of the video frame to be transmitted meet the complementary transmission requirement, and if so, triggering the index information acquisition unit to acquire the index information of the video data packet which is not successfully received in the video frame to be transmitted.
In another implementation manner, the supplementary transmission request generating module 25 may include:
the second network state information acquisition unit is used for acquiring the network state information of the second electronic equipment;
the packet loss data acquisition unit is used for acquiring historical packet loss data of the second electronic equipment;
and the supplementary transmission mode determining unit is used for determining the index information and the supplementary transmission mode of the supplementary transmission video data packet according to the network state information and the historical packet loss data.
The second supplementary transmission request generating unit is used for generating a supplementary transmission request by using the index information of the supplementary transmission video data packet and the identification information of the video frame to be transmitted;
in this case, the second electronic device may send the generated retransmission supplement request to the first electronic device according to the determined retransmission supplement manner, so as to request the first electronic device to upload the video data packet again.
For the above different preset supplementary transmission policies, the specific implementation process of generating the supplementary transmission request may refer to the description of the corresponding parts of the above method embodiments, and will not be described again.
A transmission supplement request sending module 26, configured to send the transmission supplement request to the first electronic device;
and a supplementary transmission video data receiving module 27, configured to receive a supplementary transmission video data packet fed back by the first electronic device in response to the supplementary transmission request.
For the implementation process of the first electronic device responding to the retransmission request and obtaining the retransmission video data packet, reference may be made to the description of the corresponding part of the above embodiment of the method.
It should be understood that, regarding various modules, units, and the like applied in the apparatus embodiments of the second electronic device, which may be stored in the memory as program modules, the processor executes the program modules stored in the memory to implement corresponding functions, and regarding functions implemented by the program modules and their combinations and achieved technical effects, reference may be made to the description of corresponding parts of the method embodiments, and this embodiment is not described again.
The embodiment of the present application further provides a storage medium, on which a program is stored, where the program can be called by a processor to implement the steps of the video distribution method described from the perspective of the first electronic device or the second electronic device, and the specific implementation process may refer to the description of the corresponding parts of the above method embodiments.
Finally, it should be noted that, in the present specification, the embodiments are described in a progressive or parallel manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments may be referred to each other. For the device disclosed by the embodiment, the description is relatively simple because the device corresponds to the method disclosed by the embodiment, and the relevant part can be referred to the method part for description.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the application. Thus, the present application is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (11)

1. A video distribution method is applied to a first electronic device, the first electronic device and a plurality of second electronic devices realize data interaction through a wireless fidelity network, and the method comprises the following steps:
splitting a video frame to be transmitted to obtain a plurality of video data packets and video abstract data of the video frame to be transmitted, wherein the video abstract data comprises identification information and capacity of the video frame to be transmitted;
sending the video summary data to each second electronic device in a target play group;
and multicasting the plurality of video data packets so that the second electronic equipment accesses the multicast address of the target play group to acquire the plurality of video data packets, and performing integrity verification on the received video data packets by using the video abstract data.
2. The method of claim 1, further comprising:
receiving a supplementary transmission request sent by any one of the second electronic devices, wherein the supplementary transmission request comprises identification information of the video frame to be transmitted and index information of the video data packet in the video frame to be transmitted, and the supplementary transmission request is generated according to a preset supplementary transmission strategy under the condition that the integrity verification of the received video data packet by the second electronic device is not passed;
and responding to the supplementary transmission request, and sending a supplementary transmission video data packet generated by using the identification information and the index information to the second electronic equipment, wherein the supplementary transmission video data packet comprises a video data packet which is not successfully received by the second electronic equipment or the plurality of video data packets.
3. The method of claim 2, said responding to said request for retransmission comprising:
analyzing the identification information and the index information in the supplementary transmission requests sent by the second electronic devices to obtain supplementary transmission analysis results;
responding to a plurality of supplementary transmission requests, and generating supplementary transmission video data packets by using corresponding supplementary transmission analysis results; or, according to the supplementary transmission analysis result, responding to at least one supplementary transmission request according to a supplementary transmission response strategy to generate a supplementary transmission video data packet;
the supplementary transmission response strategy comprises supplementary transmission response priorities aiming at different types of video frames to be transmitted and/or response priorities aiming at supplementary transmission requests sent by second electronic equipment in different network states.
4. A video distribution method is applied to a second electronic device, and the second electronic device and a first electronic device realize data interaction through a wireless fidelity network, and the method comprises the following steps:
responding to the multicast notification, and receiving video summary data of a video frame to be transmitted, which is sent by first electronic equipment, wherein the video summary data comprises identification information and capacity of the video frame to be transmitted;
accessing a multicast address of a target play group, and acquiring a plurality of video data packets obtained by splitting the video frame to be transmitted;
and carrying out integrity verification on the obtained video data packets by utilizing the video abstract data, and assembling the obtained video data packets into the video frame to be transmitted.
5. The method of claim 4, if the integrity verification of the plurality of video data packets fails, further comprising:
generating a supplementary transmission request according to a preset supplementary transmission strategy, wherein the supplementary transmission request comprises identification information of the video frame to be transmitted and index information of the video data packet in the video frame to be transmitted;
sending the retransmission supplementing request to the first electronic equipment;
and receiving a supplementary transmission video data packet fed back by the first electronic equipment in response to the supplementary transmission request.
6. The method of claim 5, wherein generating the supplementary transmission request according to a preset supplementary transmission policy comprises:
acquiring index information of unsuccessfully received video data packets in the video frames to be transmitted;
and generating a supplementary transmission request by using the index information and the identification information of the video frame to be transmitted.
7. The method of claim 6, wherein generating the retransmission-supplementing request according to a preset retransmission-supplementing policy further comprises:
acquiring the type of the video frame to be transmitted, and if the type of the video frame to be transmitted is a key frame, executing the step of acquiring the index information of the video data packet which is not successfully received in the video frame to be transmitted;
or,
and acquiring the network state information of the second electronic equipment and the type of the video frame to be transmitted, and if the network state information and the type of the video frame to be transmitted meet the requirement of supplementary transmission, executing the step of acquiring the index information of the video data packet which is not successfully received in the video frame to be transmitted.
8. The method of claim 5, wherein generating the supplementary transmission request according to a preset supplementary transmission policy comprises:
acquiring network state information and historical packet loss data of second electronic equipment;
determining index information and a supplementary transmission mode of a supplementary transmission video data packet according to the network state information and the historical packet loss data;
generating a supplementary transmission request by using the index information of the supplementary transmission video data packet and the identification information of the video frame to be transmitted;
the sending the retransmission supplementing request to the first electronic device includes:
and sending the supplementary transmission request to the first electronic equipment according to the determined supplementary transmission mode.
9. The method according to any one of claims 1 to 8, wherein the video summary data further comprises:
the type and the transmission time length of the video frame to be transmitted, the number of the plurality of split video data packets and one or more combinations of the capacity of each video data packet.
10. A video distribution device is applied to a first electronic device, the first electronic device and a plurality of second electronic devices realize data interaction through a wireless fidelity network, and the device comprises:
the device comprises a splitting module, a receiving module and a transmitting module, wherein the splitting module is used for splitting a video frame to be transmitted to obtain a plurality of video data packets and video abstract data of the video frame to be transmitted, and the video abstract data comprises identification information and capacity of the video frame to be transmitted;
the data sending module is used for sending the video abstract data to each second electronic device in a target play group;
and the multicast module is used for multicasting the plurality of video data packets so that the second electronic equipment accesses the multicast address of the target play group to acquire the plurality of video data packets, and integrity verification is performed on the received video data packets by using the video abstract data.
11. A video distribution device is applied to a second electronic device, and the second electronic device and a first electronic device realize data interaction through a wireless fidelity network, and the device comprises:
the data receiving module is used for responding to the multicast notification and receiving video summary data of a video frame to be transmitted, which is sent by the first electronic equipment, wherein the video summary data comprises identification information and capacity of the video frame to be transmitted;
the video data packet acquisition module is used for accessing the multicast address of the target play group and acquiring a plurality of video data packets obtained by splitting the video frame to be transmitted;
the integrity verification module is used for verifying the integrity of the acquired video data packets by utilizing the video abstract data;
and the video data packet assembly module is used for acquiring a plurality of video data packets and assembling the video data packets into the video frame to be transmitted.
CN201911050608.4A 2019-10-31 2019-10-31 Video distribution method and device Pending CN110769380A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911050608.4A CN110769380A (en) 2019-10-31 2019-10-31 Video distribution method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911050608.4A CN110769380A (en) 2019-10-31 2019-10-31 Video distribution method and device

Publications (1)

Publication Number Publication Date
CN110769380A true CN110769380A (en) 2020-02-07

Family

ID=69334882

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911050608.4A Pending CN110769380A (en) 2019-10-31 2019-10-31 Video distribution method and device

Country Status (1)

Country Link
CN (1) CN110769380A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111565331A (en) * 2020-04-10 2020-08-21 苏州鑫竹智能建筑科技有限公司 Optimization method for wireless transmission of video image data
CN113316028A (en) * 2020-02-27 2021-08-27 华为技术有限公司 Screen projection method, screen projection equipment and storage medium
CN114390007A (en) * 2021-12-23 2022-04-22 西安诺瓦星云科技股份有限公司 Data processing method, device, storage medium and processor
WO2022142835A1 (en) * 2021-01-04 2022-07-07 腾讯科技(深圳)有限公司 Data transmission method and apparatus, computer-readable storage medium, electronic device, and computer program product
CN114885373A (en) * 2022-05-26 2022-08-09 杭州矩视科技有限公司 Node data uploading method, device, equipment and storage medium
CN115633020A (en) * 2022-09-30 2023-01-20 联想(北京)有限公司 Data distribution method and device, electronic equipment and storage medium
WO2023001129A1 (en) * 2021-07-23 2023-01-26 维沃移动通信有限公司 Image frame transmission method and device

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101014050A (en) * 2007-02-02 2007-08-08 浙江大学 Connection-based communication protocol of CAN bus applied for a great deal of data
US20080130617A1 (en) * 2006-12-04 2008-06-05 Samsung Information Systems America System and method for wireless communication of uncompressed video having delay-insensitive data transfer
CN102316145A (en) * 2010-09-17 2012-01-11 苏州阔地网络科技有限公司 Method for realizing video multicasting
CN104284135A (en) * 2013-07-02 2015-01-14 华为技术有限公司 Video transmission method and device
WO2015008023A1 (en) * 2013-07-19 2015-01-22 Sony Corporation Seamless switching between multicast video streams
CN104660308A (en) * 2015-01-26 2015-05-27 武汉健坤科技有限公司 File transfer method and file transfer system based on Bluetooth low power consumption technology
CN105430529A (en) * 2015-11-26 2016-03-23 航天恒星科技有限公司 Method and system for sending video data
CN106303693A (en) * 2015-05-25 2017-01-04 北京视联动力国际信息技术有限公司 A kind of method and device of video data decoding
CN106412801A (en) * 2016-08-31 2017-02-15 西安电子科技大学 Video frame structure and D2D communication based video multicast method
CN106411894A (en) * 2016-09-29 2017-02-15 天脉聚源(北京)传媒科技有限公司 Video transmission method and system
CN107231328A (en) * 2016-03-23 2017-10-03 福建星网锐捷通讯股份有限公司 Method for real-time video transmission, device, equipment and system
CN109660549A (en) * 2018-12-29 2019-04-19 贵阳朗玛信息技术股份有限公司 A kind of video requency frame data packet sending, receiving method and device
CN111263239A (en) * 2018-12-03 2020-06-09 北京新唐思创教育科技有限公司 Video frame packet loss processing method and related device

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080130617A1 (en) * 2006-12-04 2008-06-05 Samsung Information Systems America System and method for wireless communication of uncompressed video having delay-insensitive data transfer
CN101014050A (en) * 2007-02-02 2007-08-08 浙江大学 Connection-based communication protocol of CAN bus applied for a great deal of data
CN102316145A (en) * 2010-09-17 2012-01-11 苏州阔地网络科技有限公司 Method for realizing video multicasting
CN104284135A (en) * 2013-07-02 2015-01-14 华为技术有限公司 Video transmission method and device
WO2015008023A1 (en) * 2013-07-19 2015-01-22 Sony Corporation Seamless switching between multicast video streams
CN104660308A (en) * 2015-01-26 2015-05-27 武汉健坤科技有限公司 File transfer method and file transfer system based on Bluetooth low power consumption technology
CN106303693A (en) * 2015-05-25 2017-01-04 北京视联动力国际信息技术有限公司 A kind of method and device of video data decoding
CN105430529A (en) * 2015-11-26 2016-03-23 航天恒星科技有限公司 Method and system for sending video data
CN107231328A (en) * 2016-03-23 2017-10-03 福建星网锐捷通讯股份有限公司 Method for real-time video transmission, device, equipment and system
CN106412801A (en) * 2016-08-31 2017-02-15 西安电子科技大学 Video frame structure and D2D communication based video multicast method
CN106411894A (en) * 2016-09-29 2017-02-15 天脉聚源(北京)传媒科技有限公司 Video transmission method and system
CN111263239A (en) * 2018-12-03 2020-06-09 北京新唐思创教育科技有限公司 Video frame packet loss processing method and related device
CN109660549A (en) * 2018-12-29 2019-04-19 贵阳朗玛信息技术股份有限公司 A kind of video requency frame data packet sending, receiving method and device

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113316028A (en) * 2020-02-27 2021-08-27 华为技术有限公司 Screen projection method, screen projection equipment and storage medium
CN113316028B (en) * 2020-02-27 2022-03-08 华为技术有限公司 Screen projection method, screen projection equipment and storage medium
CN111565331A (en) * 2020-04-10 2020-08-21 苏州鑫竹智能建筑科技有限公司 Optimization method for wireless transmission of video image data
CN111565331B (en) * 2020-04-10 2022-05-31 苏州鑫竹智能建筑科技有限公司 Optimization method for wireless transmission of video image data
WO2022142835A1 (en) * 2021-01-04 2022-07-07 腾讯科技(深圳)有限公司 Data transmission method and apparatus, computer-readable storage medium, electronic device, and computer program product
WO2023001129A1 (en) * 2021-07-23 2023-01-26 维沃移动通信有限公司 Image frame transmission method and device
CN114390007A (en) * 2021-12-23 2022-04-22 西安诺瓦星云科技股份有限公司 Data processing method, device, storage medium and processor
CN114390007B (en) * 2021-12-23 2024-03-15 西安诺瓦星云科技股份有限公司 Data processing method, device, storage medium and processor
CN114885373A (en) * 2022-05-26 2022-08-09 杭州矩视科技有限公司 Node data uploading method, device, equipment and storage medium
CN115633020A (en) * 2022-09-30 2023-01-20 联想(北京)有限公司 Data distribution method and device, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
CN110769380A (en) Video distribution method and device
US11316909B2 (en) Data transmission method and apparatus, and computer storage medium
US8144632B1 (en) Methods, systems and program products for efficient communications during data sharing event
CN111949822A (en) An intelligent educational video service system based on cloud computing and mobile terminal and its operation method
CN111432158B (en) Load balancing method and device for media nodes, storage medium and electronic device
US9706170B2 (en) Communication apparatus, communication system, and communication management system
CN114900662A (en) Method, system, device and medium for determining video stream transmission quality information
EP3207666B1 (en) Broadcast readiness testing in distributed content delivery networks
CN110830763A (en) Monitoring video inspection method and device
CN113032223A (en) Server state detection method and device
CN113676695A (en) A kind of audio and video conference management method and device
EP2634995A1 (en) Apparatus and method of displaying contents using key frames in a terminal
US8161113B2 (en) Rich signaling feedback mechanism for group communication
CN111897657B (en) Remote teaching method, scheduling device, server and electronic device
US8489688B2 (en) Managing delivery of electronic meeting content
CN113765745A (en) Service performance testing method and device, terminal equipment and storage medium
CN111131749A (en) A video conference control method and device
CN112202616B (en) Fault processing method, readable storage medium and electronic device
CN112055365B (en) Method and device for terminal networking, terminal and readable storage medium
CN110611663A (en) A detection method, device and system
CN111050104A (en) Cloud recording and broadcasting system, method and device
CN111212253A (en) Monitoring processing method and device in video conference, electronic equipment and storage medium
CN111385509A (en) Course patrol method and device and electronic equipment
CN112511811B (en) A multi-camera processing method, device and electronic device
CN112218147B (en) Recording and broadcasting system and control method and device thereof

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200207

RJ01 Rejection of invention patent application after publication