Video transmission apparatus and video transmission method
Patent Information
- Application Number
- CN202110799800.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-07-15
- Publication Date
- 2026-10-27
- Estimated Expiration
- 2041-07-15
AI Technical Summary
[0013]本发明实施例提供一种视频传输设备和视频传输方法,用于解决现有的视频传输方法容易造成视频流延迟的问题
[0037]在本发明实施例中,通过路径规划管理模块规划视频流的转发路径以及通过SDN控制器控制底层的转发设备,实现视频流的转发,不需要由MCU对视频流进行重新编码、解码和混流,也不需要将视频流集中发送到SFU再进行转发,避免了网络拥塞和单点故障的风险,减小了视频流的延迟。
Smart Images

Figure CN115701097B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data service technology, and in particular to a video transmission device and a video transmission method. Background Technology
[0002] Video conferencing systems are mainly used in scenarios such as remote video communication and remote business operations for enterprises. In recent years, the mature application of cloud technology has expanded the application scenarios of video conferencing systems, and video conferencing has gradually covered multiple ways to join a meeting, including telephone, computer webpage, mobile APP, WeChat mini program, and professional conference room terminal.
[0003] Currently, video conferencing mainly uses MCU (Multipoint Conferencing Unit) and SFU (Selective Forwarding Unit) solutions.
[0004] 1. MCU solution
[0005] MCU technology appeared very early in the video conferencing field and is now quite mature. The main processing logic of an MCU is: receiving the audio and video streams from each shared terminal, decoding them, mixing them with other decoded audio and video streams, re-encoding them, and then sending the mixed audio and video streams to all terminals in the video conference. The MCU solution model is a star topology, such as... Figure 1 As shown, Figure 1 In the diagram, B1, B2, B3, and B4 are terminals.
[0006] The advantages of MCUs are as follows: the technology is very mature and widely used in hardware video conferencing. As an audio and video gateway, it can shield the differences between different codec devices through decoding and re-encoding, meet the integration needs of more customers, improve user experience and product competitiveness, and mix multiple video streams into one, so that all video conference participants see the same picture, resulting in a very good customer experience.
[0007] However, MCUs also have some shortcomings, mainly in that: re-decoding, encoding and mixing require a lot of computation, consume a lot of CPU (central processing unit) resources, and also bring latency.
[0008] 2. SFU Solution
[0009] An SFU (Streaming Service Unit) acts like a media streaming router, receiving audio and video streams from terminals and forwarding them to other terminals as needed. The topology and functional model of an SFU are as follows: Figure 2 As shown, Figure 2In this diagram, B1, B2, B3, and B4 represent four users. Each user shares one stream with the SFU, and the SFU forwards each stream to the other three users besides the one sharing the stream.
[0010] like Figure 3 The diagram illustrates a video conferencing implementation based on SFU. PC1 shares a single video stream, encoded using SVC (scalable video coding) and divided into three layers before being sent to SFU. SFU, depending on the receiving end's network conditions, determines whether PC2's network is good or not, and therefore sends layers 0, 1, and 2 to PC2. If it detects a poor network connection on the Phone, it only sends layer 0 to the Phone. This adapts to different network environments and terminal types.
[0011] The advantages of SFU are as follows: First, since data packets are forwarded directly without encoding or decoding, CPU resource consumption is minimal. Second, it offers great flexibility, better adapting to different network conditions and terminal types.
[0012] However, SFU also has some shortcomings, mainly: since data packets are forwarded directly, all video streams must first be concentrated at SFU, which poses a great challenge to the network bandwidth and network processing of SFU. The concentration of a large number of videos at one point leads to network congestion, and there are risks of single point of failure and increased video stream transmission delay. Summary of the Invention
[0013] This invention provides a video transmission device and a video transmission method to solve the problem that existing video transmission methods are prone to causing video stream delays.
[0014] To solve the above-mentioned technical problems, the present invention is implemented as follows:
[0015] In a first aspect, embodiments of the present invention provide a video transmission device, comprising:
[0016] The path planning and management module is used to obtain information reported by terminal users participating in the video conference sent by the video conferencing service platform. The terminal users include video stream sender users and receiver users. Based on the information reported by the terminal users, the module determines the network bandwidth of each receiver user. Based on the network bandwidth of each receiver user, the module determines the optimal path from each sender user to the corresponding receiver user. The path is a link between the forwarding devices from the sender user to the corresponding receiver user.
[0017] The SDN controller is used to control the forwarding devices in the optimal path to achieve the forwarding of the video stream from the sending user to the corresponding receiving user.
[0018] Optionally, the path planning management module includes an acquisition unit and a calculation unit;
[0019] The acquisition unit is used to acquire a set of sending end users, a set of receiving end users, all forwarding devices used for forwarding video streams, and the network bandwidth information corresponding to each receiving end user; the sending end users in the set of sending end users are sorted in descending order of the number of transmission paths; the set of receiving end users includes at least one receiving end user corresponding to each sending end user, and the receiving end users corresponding to each sending end user are sorted in descending order of the number of spatial enhancement layers they can receive; the network bandwidth information corresponding to each receiving end user is obtained based on the number of spatial enhancement layers that the receiving end user can receive.
[0020] The calculation unit is used to traverse each sending user in the set of sending users acquired by the acquisition unit, and for the currently traversed sending user, sequentially select the receiving user corresponding to the currently traversed sending user from the set of receiving users, and sequentially select a portion of the forwarding devices from the forwarding devices according to the network bandwidth of the receiving user corresponding to the currently traversed sending user, as the forwarding devices for the optimal path from the currently traversed sending user to each corresponding receiving user.
[0021] Optionally, the path planning management module communicates with the SDN controller via an API.
[0022] Optionally, the SDN controller communicates with the forwarding device via the OpenFlow protocol.
[0023] Secondly, embodiments of the present invention provide a video transmission method, including:
[0024] The system acquires information reported by terminal users participating in the video conference, sent by the video conferencing service platform. These terminal users include both sending and receiving users of the video stream. Based on the information reported by the terminal users, the system determines the network bandwidth of each receiving user. Based on the network bandwidth of each receiving user, the system determines the optimal path from each sending user to the corresponding receiving user. This path is a link between forwarding devices from the sending user to the corresponding receiving user.
[0025] The SDN controller controls the forwarding devices in the optimal path to achieve the forwarding of the video stream from the sending user to the corresponding receiving user.
[0026] Optionally, the information reported by the terminal user includes at least one of the following: the terminal user's status information, network bandwidth information, network latency information, which video streams from sending end users are received, and whether the terminal user shares its own video stream.
[0027] Optionally, the terminal user's information includes at least one of the following: the terminal user's display resolution, the terminal user's video stream processing capability, and the video stream processing capability including the number of spatial enhancement layers and / or temporal enhancement layers that the terminal user can receive.
[0028] Optionally, based on the information reported by the terminal users, the network bandwidth of each receiving user is determined; based on the network bandwidth of each receiving user, the optimal path from each sending user to the corresponding receiving user is determined, including:
[0029] The system acquires a set of sending users, a set of receiving users, all forwarding devices used for forwarding video streams, and the network bandwidth information corresponding to each receiving user. The sending users in the sending user set are sorted in descending order of the number of transmission paths. The receiving user set includes at least one receiving user corresponding to each sending user, and the receiving users corresponding to each sending user are sorted according to the number of spatial enhancement layers they can receive. The network bandwidth information corresponding to each receiving user is obtained based on the number of spatial enhancement layers that the receiving user can receive.
[0030] The system iterates through each sending user in the set of sending users acquired by the acquisition unit. For the currently traversed sending user, it sequentially selects the receiving user corresponding to the currently traversed sending user from the set of receiving users. Then, based on the network bandwidth of the receiving user corresponding to the currently traversed sending user, it selects a portion of the forwarding devices from the forwarding devices as the forwarding devices for the optimal path from the currently traversed sending user to each corresponding receiving user.
[0031] Optionally, the optimal path can be represented by the following formula:
[0032] path * delay * hc * =(peer, S, R, R) ij bw)
[0033] Where, path * The delay is the optimal path from the sender to the corresponding receiver. * hc is the transmission delay corresponding to the optimal path. *R represents the number of forwarding devices traversed by the optimal path, where peer is all forwarding devices controlled by the SDN controller. ij bw is the network bandwidth estimated by the receiving user based on the available spatial and / or temporal enhancement layers, and SD is the optimal path calculation function.
[0034] Optionally, in the set of receiving end users, if the number of spatial enhancement layers that the receiving end users corresponding to the sending end users can receive is the same, then they are sorted according to the number of temporal enhancement layers that the receiving end users can receive.
[0035] Thirdly, embodiments of the present invention provide a network device, including: a processor, a memory, and a program stored in the memory and executable on the processor, wherein the program, when executed by the processor, implements the steps of the video transmission method described in the second aspect above.
[0036] Fourthly, embodiments of the present invention provide a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the video transmission method described in the second aspect above.
[0037] In this embodiment of the invention, the forwarding path of the video stream is planned by the path planning management module and the underlying forwarding device is controlled by the SDN controller to realize the forwarding of the video stream. It is not necessary for the MCU to re-encode, decode and mix the video stream, nor is it necessary to send the video stream to the SFU for forwarding. This avoids the risk of network congestion and single point of failure and reduces the latency of the video stream. Attached Figure Description
[0038] Various other advantages and benefits will become apparent to those skilled in the art upon reading the following detailed description of preferred embodiments. The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. Furthermore, the same reference numerals denote the same parts throughout the drawings. In the drawings:
[0039] Figure 1 This is a schematic diagram of the architecture of an MCU network system;
[0040] Figure 2 This is a schematic diagram of the SFU network system architecture;
[0041] Figure 3 This is a schematic diagram of the SVC encoding method;
[0042] Figure 4 This is a schematic diagram of the SDN network structure according to an embodiment of the present invention;
[0043] Figure 5This is a schematic diagram of the structure of a video transmission device according to an embodiment of the present invention;
[0044] Figure 6 This is a flowchart illustrating the video transmission method according to an embodiment of the present invention;
[0045] Figure 7 This is a schematic diagram of the multicast tree structure according to an embodiment of the present invention;
[0046] Figure 8 This is a schematic diagram illustrating the interaction process between various devices in the video transmission device according to an embodiment of the present invention;
[0047] Figure 9 This is a schematic diagram of the structure of a network device according to an embodiment of the present invention. Detailed Implementation
[0048] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0049] SDN (Software Defined Network) is an emerging network architecture that separates control and forwarding and allows for direct programmability.
[0050] Please refer to Figure 4 In this invention, the traditional tightly coupled network architecture of network devices is decomposed into a three-layer SND (Software-Defined Network) architecture that separates application, control, and forwarding layers. The control layer is transferred to the server, and the upper-layer applications and lower-layer forwarding facilities are abstracted into multiple logical entities. This network structure has the following advantages:
[0051] 1) Control and forwarding separation: Supports third-party control plane devices to remotely control the switching / routing functions of general hardware through open protocols such as OpenFlow.
[0052] 2) Centralized control plane: Improves routing management flexibility, speeds up service activation, and simplifies operation and maintenance.
[0053] 3) Forwarding plane generalization: Multiple switching and routing functions share common hardware devices.
[0054] 4) The controller software is programmable: it can meet customer customization needs through software programming.
[0055] Please refer to Figure 5 This invention provides a video transmission device, comprising:
[0056] The path planning and management module is used to obtain information reported by terminal users participating in the video conference sent by the video conferencing service platform. The terminal users include video stream sender users and receiver users. Based on the information reported by the terminal users, the module determines the network bandwidth of each receiver user. Based on the network bandwidth of each receiver user, the module determines the optimal path from each sender user to the corresponding receiver user. The path is a link between forwarding devices from the sender user to the corresponding receiver user. In this embodiment of the invention, the forwarding devices may include routers and / or switches.
[0057] The SDN controller is used to control the forwarding devices in the optimal path to achieve the forwarding of the video stream from the sending user to the corresponding receiving user.
[0058] In this embodiment of the invention, end users can join video conferences via various methods such as telephone, computer webpage, mobile APP, WeChat mini-program, and professional conference room terminal.
[0059] In this embodiment of the invention, video stream forwarding is achieved through SDN (Software Defined Network). The video conferencing service platform, as the application layer, first establishes a video conference room and, based on the information reported by the participating terminal users, finds the optimal path planning between each terminal. Through the control of the forwarding device by the SDN controller, the forwarding of the video stream is realized at the infrastructure layer and forwarded to the terminal. It is not necessary for the MCU to re-encode, decode, and mix the video stream, nor is it necessary to centrally send the video stream to the SFU for forwarding. This avoids the risks of network congestion and single point of failure and reduces the latency of the video stream.
[0060] In this embodiment of the invention, optionally, the information reported by the terminal user includes at least one of the following: the terminal user's status information, network bandwidth status information, network latency status information, which video streams from sending end users are received, and whether the terminal user shares its own video stream.
[0061] Further optionally, the terminal user's information includes at least one of the following: the terminal user's display resolution, the terminal user's video stream processing capability, and the video stream processing capability including the number of spatial enhancement layers and / or temporal enhancement layers that the terminal user can receive.
[0062] In this embodiment of the invention, optionally, the path planning management module communicates with the SDN controller via an API (Application Programming Interface).
[0063] In this embodiment of the invention, optionally, the SDN controller communicates with the forwarding device via the OpenFlow protocol.
[0064] In this embodiment of the invention, optionally, the path planning management module includes an acquisition unit and a calculation unit;
[0065] The acquisition unit is used to acquire a set of sending end users, a set of receiving end users, all forwarding devices used for forwarding video streams, and the network bandwidth information corresponding to each receiving end user; the sending end users in the set of sending end users are sorted in descending order of the number of transmission paths; the set of receiving end users includes at least one receiving end user corresponding to each sending end user, and the receiving end users corresponding to each sending end user are sorted in descending order of the number of spatial enhancement layers they can receive; the network bandwidth information corresponding to each receiving end user is obtained based on the number of spatial enhancement layers that the receiving end user can receive.
[0066] The calculation unit is used to traverse each sending user in the set of sending users acquired by the acquisition unit, and for the currently traversed sending user, sequentially select the receiving user corresponding to the currently traversed sending user from the set of receiving users, and sequentially select a portion of the forwarding devices from the forwarding devices according to the network bandwidth of the receiving user corresponding to the currently traversed sending user, as the forwarding devices for the optimal path from the currently traversed sending user to each corresponding receiving user.
[0067] In this embodiment of the invention, the video stream can adopt the SVC (scalable video coding) method. Please refer to [reference needed]. Figure 3 PC1 shares one video stream, which is encoded using SVC and divided into three layers before being sent to SFU. PC2 can receive the three-layer encoded video stream, so PC2 can receive 3 layers of spatial enhancement layer. Phone can receive the one-layer encoded video stream, so PC2 can receive 1 layer of spatial enhancement layer.
[0068] Optionally, in the set of receiving users, if the number of spatial enhancement layers that the sending users and corresponding receiving users can receive is the same, then they are sorted according to the number of temporal enhancement layers that the receiving users can receive. The temporal enhancement layer refers to the frame rate of the video stream that the receiving end can receive.
[0069] Please refer to Figure 6 This invention also provides a video transmission method, comprising:
[0070] Step 1: Obtain the information reported by the terminal users participating in the video conference sent by the video conferencing service platform. The terminal users include the sending end user and the receiving end user of the video stream.
[0071] In this embodiment of the invention, optionally, the information reported by the terminal user includes at least one of the following: the terminal user's status information, network bandwidth status information, network latency status information, which video streams from sending end users are received, and whether the terminal user shares its own video stream.
[0072] In this embodiment of the invention, optionally, the terminal user's situation information includes at least one of the following: the terminal user's display resolution, the terminal user's video stream processing capability, and the video stream processing capability including the number of spatial enhancement layers and / or temporal enhancement layers that the terminal user can receive.
[0073] Step 2: Based on the information reported by the terminal users, determine the network bandwidth of each receiving user; based on the network bandwidth of each receiving user, determine the optimal path from each sending user to the corresponding receiving user, where the path is the link between the forwarding devices from the sending user to the corresponding receiving user.
[0074] Steps 1 and 2 above can be executed by the path planning management module in the above embodiments.
[0075] Step 3: Control the forwarding devices in the optimal path through the SDN controller to realize the forwarding of the video stream from the sending user to the corresponding receiving user.
[0076] In this embodiment of the invention, the forwarding path of the video stream is planned by the path planning management module and the underlying forwarding device is controlled by the SDN controller to realize the forwarding of the video stream. It is not necessary for the MCU to re-encode, decode and mix the video stream, nor is it necessary to send the video stream to the SFU for forwarding. This avoids the risk of network congestion and single point of failure and reduces the latency of the video stream.
[0077] In this embodiment of the invention, optionally, the network bandwidth situation corresponding to each receiving user is determined based on the information reported by the terminal user; determining the optimal path from each sending user to the corresponding receiving user based on the network bandwidth situation of each receiving user includes:
[0078] Step 21: Obtain the set of sending end users, wherein the sending end users in the set of sending end users are sorted in descending order of the number of sending paths;
[0079] The set of sending users can be represented as follows:
[0080] S = {S0, S1, S2, ...}
[0081] Here, S represents the set of sending users, and S0, S1, S2, ... represent sending users. Typically, S0 is the host of the video conference, and S1, S2, ... are ordered from most to least sending video streams. The number of sending streams refers to how many receiving users the video stream needs to be sent to.
[0082] Step 22: Obtain the set of receiving end users, wherein the set of receiving end users includes at least one receiving end user corresponding to each sending end user, and the receiving end users corresponding to each sending end user are sorted according to the number of spatial enhancement layers that can be received; specifically, they are arranged in descending order of the number of spatial enhancement layers that can be received.
[0083] The set of receiving users can be represented as follows:
[0084] R = {R 00 ,R 01 ,R 02 …R 0j ;R i0 ,R i1 ,R i2 ,R ij}
[0085] Where R represents the set of receiving users, where R 00 ,R 01 ,R 02 …R 0j For all receiving users corresponding to sending user S0, R i0 ,R i1 ,R i2 ,R ij For the sending user S i All corresponding receiving end users.
[0086] In this embodiment of the invention, the receiving end can determine the number of spatial enhancement layers that it can receive based on its own terminal information and / or network bandwidth information.
[0087] Optionally, in this embodiment of the invention, if the number of spatial enhancement layers that the sending users can receive is the same among the receiving users in the set of receiving users, then they are sorted according to the number of temporal enhancement layers that the receiving users can receive. Specifically, they are arranged in descending order of the number of temporal enhancement layers that can be received.
[0088] Step 23: Obtain all forwarding devices used to forward the video stream;
[0089] Step 24: Iterate through each sending user in the set of sending users acquired by the acquisition unit. For the currently iterated sending user, select the receiving user corresponding to the currently iterated sending user from the set of receiving users in sequence. Then, according to the network bandwidth of the receiving user corresponding to the currently iterated sending user, select a portion of the forwarding devices from the forwarding devices as the forwarding devices for the optimal path from the currently iterated sending user to each corresponding receiving user.
[0090] In this embodiment of the invention, for each sending user in the set of sending users, a multicast tree can be constructed between that sending user and each of its receiving users, such as... Figure 7 As shown.
[0091] In this embodiment of the invention, the optimal path for each sending user is output based on the constructed multicast tree. The transmission delay corresponding to the optimal path and the number of forwarding devices traversed can also be output simultaneously.
[0092] The output result can be as follows:
[0093] path * delay * hc * =SD(peer, S, R, R) ij bw)
[0094] Where, path * The delay is the optimal path from the sender to the corresponding receiver. * hc is the transmission delay corresponding to the optimal path. * R represents the number of forwarding devices traversed by the optimal path, where peer is all forwarding devices controlled by the SDN controller. ij bw represents the network bandwidth estimated by the receiving user based on the available spatial and temporal enhancement layers, and SD represents the optimal path calculation function, which may be, for example, the shortest path calculation function.
[0095] In this embodiment of the invention, the algorithm for calculating the optimal path can be as follows:
[0096]
[0097] Please refer to Figure 8 , Figure 8 This is a schematic diagram of the interaction process between various devices in a video transmission device according to an embodiment of the present invention. The process includes:
[0098] Step 1a: The host starts the video conference by sending a video conference start request to the video conferencing service platform.
[0099] Step 1b: The video conferencing service platform returns video conferencing information, etc., to the terminal user corresponding to the host;
[0100] Step 1c: The video conferencing service platform generates a contract record;
[0101] Step 2a: The terminal users participating in the video conference report information to the video conferencing service platform. The information reported by the terminal users includes at least one of the following: the terminal user's status information, network bandwidth information, network latency information, which video streams from sending end users are received, and whether they share their own video stream.
[0102] Step 2b: The video conferencing service platform forwards the information reported by the end user to the path planning and management module;
[0103] Step 2c: The path planning and management module determines the network bandwidth of each receiving end user based on the information reported by the end user; it calculates the optimal path for video transmission based on the network bandwidth of each receiving end user and sends the optimal path to the SDN controller.
[0104] Step 2d: The SDN controller sends control commands to the forwarding devices based on the optimal path, and controls the forwarding devices to establish the optimal path connection.
[0105] Steps 2e to 2h: After the forwarding device successfully connects, a success notification is sent to the end user.
[0106] Steps 3a-3b: The end user sends and receives the video stream through the forwarding device.
[0107] Once a new end-user joins the video conference, repeat steps 2a to 3b.
[0108] Please refer to Figure 9 This invention also provides a network device 90, including a processor 91, a memory 92, and a computer program stored in the memory 92 and executable on the processor 91. When the computer program is executed by the processor 91, it implements the various processes of the above-described video transmission method embodiments and achieves the same technical effects. To avoid repetition, it will not be described again here.
[0109] This invention also provides a computer-readable storage medium storing a computer program. When executed by a processor, the computer program implements the various processes of the above-described video transmission method embodiments and achieves the same technical effects. To avoid repetition, it will not be described again here. The computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, etc.
[0110] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
[0111] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes several instructions to cause a terminal (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of the present invention.
[0112] The embodiments of the present invention have been described above with reference to the accompanying drawings. However, the present invention is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of the present invention without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of the present invention.
Claims
1. A video transmission device, characterized in that, include: The path planning and management module is used to obtain information reported by terminal users participating in the video conference sent by the video conferencing service platform. The terminal users include video stream sender users and receiver users. Based on the information reported by the terminal users, the module determines the network bandwidth of each receiver user. Based on the network bandwidth of each receiving user, the optimal path from each sending user to the corresponding receiving user is determined, and the path is the link between the forwarding devices from the sending user to the corresponding receiving user. The SDN controller is used to control the forwarding devices in the optimal path to realize the forwarding of the video stream from the sending user to the corresponding receiving user. The path planning management module includes an acquisition unit and a calculation unit; The acquisition unit is used to acquire a set of sending end users, a set of receiving end users, all forwarding devices used for forwarding video streams, and the network bandwidth information corresponding to each receiving end user; the sending end users in the set of sending end users are sorted in descending order of the number of transmission paths; the set of receiving end users includes at least one receiving end user corresponding to each sending end user, and the receiving end users corresponding to each sending end user are sorted in descending order of the number of spatial enhancement layers they can receive; the network bandwidth information corresponding to each receiving end user is obtained based on the number of spatial enhancement layers that the receiving end user can receive. The calculation unit is used to traverse each sending user in the set of sending users acquired by the acquisition unit, and for the currently traversed sending user, sequentially select the receiving user corresponding to the currently traversed sending user from the set of receiving users, and sequentially select a portion of the forwarding devices from the forwarding devices according to the network bandwidth of the receiving user corresponding to the currently traversed sending user, as the forwarding devices for the optimal path from the currently traversed sending user to each corresponding receiving user.
2. The video transmission device according to claim 1, characterized in that, The path planning management module communicates with the SDN controller via API.
3. The video transmission device according to claim 1, characterized in that, The SDN controller communicates with the forwarding device via the OpenFlow protocol.
4. A video transmission method, characterized in that, include: Obtain information reported by terminal users participating in the video conference, sent by the video conferencing service platform. The terminal users include the sending end user and the receiving end user of the video stream. Based on the information reported by the terminal users, determine the network bandwidth status of each receiving terminal user; Based on the network bandwidth of each receiving user, the optimal path from each sending user to the corresponding receiving user is determined, and the path is the link between the forwarding devices from the sending user to the corresponding receiving user. The forwarding devices in the optimal path are controlled by the SDN controller to achieve the forwarding of the video stream from the sending user to the corresponding receiving user. Based on the information reported by the terminal users, determine the network bandwidth status of each receiving terminal user; Based on the network bandwidth of each receiving user, the optimal path from each sending user to the corresponding receiving user is determined as follows: The system acquires a set of sending users, a set of receiving users, all forwarding devices used for forwarding video streams, and the network bandwidth information corresponding to each receiving user. The sending users in the sending user set are sorted in descending order of the number of transmission paths. The receiving user set includes at least one receiving user corresponding to each sending user, and the receiving users corresponding to each sending user are sorted according to the number of spatial enhancement layers they can receive. The network bandwidth information corresponding to each receiving user is obtained based on the number of spatial enhancement layers that the receiving user can receive. The system iterates through each sending user in the set of sending users acquired by the acquisition unit. For the currently traversed sending user, it sequentially selects the receiving user corresponding to the currently traversed sending user from the set of receiving users. Then, based on the network bandwidth of the receiving user corresponding to the currently traversed sending user, it selects a portion of the forwarding devices from the forwarding devices as the forwarding devices for the optimal path from the currently traversed sending user to each corresponding receiving user.
5. The method according to claim 4, characterized in that, The information reported by the terminal user includes at least one of the following: the terminal user's status information, network bandwidth information, network latency information, which video streams from sending end users are received, and whether the terminal user shares its own video stream.
6. The method according to claim 4, characterized in that, The terminal user's information includes at least one of the following: the terminal user's display resolution, the terminal user's video stream processing capability, and the video stream processing capability including the number of spatial enhancement layers and / or temporal enhancement layers that the terminal user can receive.
7. The method according to claim 4, characterized in that, The optimal path is expressed by the following formula: ; in, This represents the optimal path from the sender to the corresponding receiver. The transmission delay corresponding to the optimal path. The number of forwarding devices traversed by the optimal path, where peer represents all forwarding devices controlled by the SDN controller. SD is the optimal path calculation function, which is the network bandwidth estimated by the receiving user based on the available spatial enhancement layer and / or temporal enhancement layer.
8. The method according to claim 4, characterized in that, In the set of receiving end users, if the number of spatial enhancement layers that the receiving end users corresponding to the sending end users can receive is the same, then they are sorted according to the number of temporal enhancement layers that the receiving end users can receive.
9. A network device, characterized in that, include: A processor, a memory, and a program stored in the memory and executable on the processor, wherein the program, when executed by the processor, implements the steps of the video transmission method as described in any one of claims 4 to 8.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the video transmission method as described in any one of claims 4 to 8.
Citation Information
Patent Citations
Video service transmission system and method based on SDN and in-network cache
CN112689163A
Mobile terminal conference system
CN113038064A