Multimedia information processing method and system

By filtering and grouping multiple clients, creating multicast nodes, and using cached data to crop video packets, the application difficulties of multicast technology on traditional video platforms are solved, and efficient multicasting of non-real-time videos is achieved Forwarding reduces network traffic.

CN119172612APending Publication Date: 2024-12-20SHANGHAI LEAPIDEAS MULTIMEDIA SYST CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411335644.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-24
Publication Date
2024-12-20

AI Technical Summary

Technical Problem

In the prior art, multicast technology is difficult to apply on traditional video platforms due to real-time requirements, and cannot meet the streaming media transmission needs of non-real-time videos.

Method used

By filtering multiple clients, multicast nodes are created based on playback time and network location, and using cached data to crop video data packets to achieve multicast forwarding of non-real-time videos.

Benefits of technology

Multicast forwarding of non-real-time videos is realized, reducing the number of connections and concurrent traffic between the master server and the client, and improving the efficiency of streaming media transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119172612A_ABST
    Figure CN119172612A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of streaming media transmission, in particular to a multimedia information processing method and system, and the method comprises the steps: S1, collecting a client which currently requests to play a to-be-processed streaming media for the to-be-processed streaming media; step S2, screening the clients so as to obtain a multicast client; and S3, distributing a multicast node to the multicast client, and pushing the streaming media to be processed to the multicast client in a multicast mode. Aiming at the problem that a multicast technology cannot be applied to a video platform in the prior art, in the scheme, a plurality of clients which currently request to play the same resource are screened, so that a plurality of clients of which the playing time points are close to the network positions are obtained, and a multicast node with a cache is created; the multicast node cuts the video data in the cache to form the data packets at the corresponding time points and distributes the data packets to the corresponding multicast clients, so that multicast forwarding of the non-real-time video is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of streaming media transmission, and in particular to a multimedia information processing method and system. Background Art

[0002] Streaming is a technology that transmits audio or video content over the Internet in real time, allowing users to start playing before downloading the entire file. It works by breaking the file into small segments and transmitting them in sequence. The segments are sent in order to the user's player, which buffers the segments and merges them when they are ready to play. This means that users can start watching or listening to the content immediately without having to wait for the entire file to be downloaded. Multicast technology refers to a type of network communication in which a single sender corresponds to multiple receivers. In multicast technology, by transmitting a single information stream to multiple receivers, the network communication traffic in the case where multiple receivers listen to or view the same resource at the same time can be reduced. For an n-party video conference, the bandwidth length used can be reduced by a(n-1) times. The more typical "multicast" is IP multicast using multicast addresses.

[0003] In the prior art, there are technical solutions for distributing streaming media data based on multicast technology. For example, Chinese patent CN201710211146.4 discloses a multicast implementation method and related network equipment, which are used to reduce the network bandwidth and outbound flow load of live streaming during network transmission. The embodiment method of the present application includes: a live streaming service server sends a live streaming injection request to a multicast resource management server; the live streaming service server receives a live streaming injection response sent by the multicast resource management server; the live streaming service server sends a live streaming injection indication to the live streaming injection node according to the live streaming injection node address; the live streaming service server receives the push stream address sent by the live streaming injection node; the live streaming service server notifies the live streaming source to send the live streaming to the live streaming injection node according to the push stream address, so that the live streaming injection node corresponding to the push stream address uses the multicast IP to multicast the live streaming.

[0004] However, in the actual implementation process, the inventors found that since the multicast technology itself sends a data packet to the multicast server close to the client, and the multicast server synchronously forwards it to the client, this leads to a certain demand for the real-time nature of the transmission resources during the transmission process, that is, multiple clients should request the same group of data packets at the same time. As a result, multicast technology is usually only used in scenarios such as sports events and news live broadcasts, and cannot be applied to non-real-time resources such as traditional video platforms. Summary of the invention

[0005] In view of the above problems existing in the prior art, a multimedia information processing method and system are now provided.

[0006] The specific technical solutions are as follows:

[0007] A multimedia information processing method, comprising:

[0008] Step S1: collecting the client currently requesting to play the streaming media to be processed;

[0009] Step S2: Screening the clients to obtain multicast clients;

[0010] Step S3: allocating a multicast node to the multicast client, and pushing the to-be-processed streaming media to the multicast client in a multicast manner.

[0011] On the other hand, the step S2 comprises:

[0012] Step S21: Obtaining the playback connection information of the client;

[0013] Step S22: extracting the current playback time according to the playback connection information;

[0014] Step S23: Grouping the clients according to the current playback time and cache time range to obtain the multicast clients.

[0015] On the other hand, the step S3 comprises:

[0016] Step S31: extracting network connection information for the multicast client;

[0017] Step S32: determining the network location of the multicast client according to the network connection information, and dividing the multicast client into multicast area groups according to the network location and a predetermined multicast range;

[0018] Step S33: creating the multicast node according to the multicast area grouping;

[0019] Step S34: Pushing the to-be-processed streaming media to the multicast client based on the multicast node.

[0020] On the other hand, after executing step S33 and before executing step S34, the method further includes:

[0021] Step A331: when there are multiple multicast nodes at the network location, respectively extract the multicast cache data allocated to each multicast node;

[0022] Step A332: comparing the cache time ranges of the multicast cache data to determine the multicast nodes whose cache time ranges overlap as nodes to be merged;

[0023] Step A333: Merge the nodes to be merged to form the new multicast node.

[0024] On the other hand, after executing step A333 and before executing step S34, the method further includes:

[0025] Step A334: Determine whether the number of the multicast clients corresponding to the multicast node exceeds the maximum number of connections;

[0026] If yes, go to step A335;

[0027] If not, go to step S34;

[0028] Step A335: Generate multiple load balancing nodes according to the multicast node, and point the multicast clients to the load balancing nodes as new multicast nodes respectively, and then turn to the step S34.

[0029] A multimedia information processing system, used to implement the above-mentioned multimedia information processing method, comprising:

[0030] A collection module, wherein the collection module collects the client currently requesting to play the streaming media to be processed;

[0031] A screening module, the screening module is connected to the collection module, and the screening module screens the clients to obtain multicast clients;

[0032] A distribution module is connected to the screening module, and the distribution module distributes a multicast node to the multicast client, and pushes the to-be-processed streaming media to the multicast client in a multicast manner.

[0033] On the other hand, the screening module comprises:

[0034] A connection information acquisition module, wherein the connection information acquisition module acquires the playback connection information of the client;

[0035] A timestamp extraction module, the timestamp extraction module is connected to the connection information acquisition module, and the timestamp extraction module extracts the current playback time according to the playback connection information;

[0036] A grouping module, the grouping module is connected to the timestamp extraction module, and the grouping module groups the clients according to the current playback time and the cache time range to obtain the multicast clients.

[0037] In another aspect, the allocation module comprises:

[0038] A connection extraction module, wherein the connection extraction module extracts network connection information from the multicast client;

[0039] a position grouping module, the position grouping module being connected to the connection extraction module, the position grouping module determining the network position of the multicast client according to the network connection information, and grouping the multicast client into multicast area groups according to the network position and a predetermined multicast range;

[0040] A node creation module, the node creation module is connected to the location grouping module, and the node creation module creates the multicast node according to the multicast area grouping;

[0041] A streaming module, wherein the streaming module is connected to the node creation module, and the streaming module pushes the to-be-processed streaming media to the multicast client based on the multicast node.

[0042] On the other hand, the allocation module further includes:

[0043] A cache extraction module, wherein when there are a plurality of the multicast nodes at the network location, the cache extraction module extracts the multicast cache data allocated to each of the multicast nodes respectively;

[0044] A cache comparison module, the cache comparison module is connected to the cache extraction module, and the cache comparison module compares the cache time ranges of the multicast cache data to determine the multicast nodes with overlapping cache time ranges as nodes to be merged;

[0045] A node merging module, wherein the node merging module is connected to the cache comparison module, and the node merging module merges the nodes to be merged to form a new multicast node.

[0046] On the other hand, the allocation module further includes:

[0047] A connection number determination module, wherein the connection number determination module determines whether the number of the multicast clients corresponding to the multicast node exceeds a maximum connection number;

[0048] A load balancing module generates multiple load balancing nodes for multicast nodes exceeding the maximum number of connections, and points the multicast clients to the load balancing nodes as new multicast nodes.

[0049] The above technical solution has the following advantages or beneficial effects:

[0050] In response to the problem that video platforms in the prior art cannot apply multicast technology, in this solution, multiple clients that are currently requesting to play the same resource are screened, thereby obtaining multiple clients with relatively close playback time points and network locations, and creating a multicast node with cache. The multicast node cuts the video data in the cache into data packets at corresponding time points and distributes them to corresponding multicast clients, thereby realizing multicast forwarding of non-real-time video. BRIEF DESCRIPTION OF THE DRAWINGS

[0051] The embodiments of the present invention will be described more fully with reference to the attached drawings, which are provided for illustration and description only and are not intended to limit the scope of the present invention.

[0052] Figure 1 is an overall schematic diagram of an embodiment of the present invention;

[0053] Figure 2 This is a schematic diagram of step S1 in an embodiment of the present invention;

[0054] Figure 3 This is a schematic diagram of step S2 in an embodiment of the present invention;

[0055] Figure 4 This is a schematic diagram of step S3 in an embodiment of the present invention;

[0056] Figure 5 This is a schematic diagram of step S3 in an embodiment of the present invention;

[0057] Figure 6 A schematic diagram of a system in an embodiment of the present invention;

[0058] Figure 7 This is a schematic diagram of a screening module in an embodiment of the present invention;

[0059] Figure 8 This is a schematic diagram of an allocation module in an embodiment of the present invention;

[0060] Fig. 9 This is a schematic diagram of an allocation module in an embodiment of the present invention;

[0061] Fig.10 It is a schematic diagram of an allocation module in an embodiment of the present invention. DETAILED DESCRIPTION

[0062] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0063] It should be noted that, in the absence of conflict, the embodiments of the present invention and the features in the embodiments may be combined with each other.

[0064] The present invention will be further described below in conjunction with the accompanying drawings and specific embodiments, but they are not intended to limit the present invention.

[0065] The present invention comprises:

[0066] A multimedia information processing method, such as Figure 1 As shown, including:

[0067] Step S1: collecting the client currently requesting to play the streaming media to be processed;

[0068] Step S2: Screening the clients to obtain multicast clients;

[0069] Step S3: Allocate a multicast node to the multicast client, and push the streaming media to be processed to the multicast client in a multicast manner.

[0070] Specifically, in response to the problem that video platforms in the prior art cannot apply multicast technology, in this solution, multiple clients that are currently requesting to play the same streaming media to be processed are screened, thereby obtaining multiple multicast clients that are relatively close to the current playback time point and network location, and creating a multicast node with cache for this group of multicast clients.

[0071] The multicast node is a multicast server, and its improvement over the prior art is to cache streaming media data packets sent within a period of time by occupying a certain amount of memory resources, and maintain a client list that needs to be multicast.

[0072] The client list records multiple multicast clients that are in the same network segment of the multicast node and can perform multicast forwarding. Each multicast client plays the same streaming media to be processed, but there are certain differences in the playing time points. This difference is resolved by caching data.

[0073] In the actual multicast process, the multicast node requests and receives the cached data packets of the streaming media from the superior server in turn according to the existing multicast process, and adds them to the local cache. Then, in the local cache, the video data in the cache is cut according to the client list to form data packets at the corresponding time point, and then distributed to the corresponding multicast client, realizing the multicast forwarding of non-real-time video. When this technology is used for a large number of client requests, it can reduce the number of connections and concurrent traffic between the main server and multiple clients in a specific area.

[0074] In one embodiment, Figure 2 As shown, step S2 includes:

[0075] Step S21: Obtaining the playback connection information of the client;

[0076] Step S22: extracting the current playback time according to the playback connection information;

[0077] Step S23: Group the clients according to the current play time and cache time range to obtain multicast clients.

[0078] Specifically, in order to achieve a better screening effect, in this embodiment, the cache time range is first determined around the server resources that can establish multicast nodes. Subsequently, for the clients that are playing the same streaming media to be processed, the playback connection information is extracted, and the current playback time is extracted from the playback connection information. Then, the clients are grouped according to the current playback time and the cache time range, and the multicast clients that can be multicasted based on the cache are determined. The multicast clients in the group have similar playback times, and multicast can be achieved through caching.

[0079] In one embodiment, Figure 3 As shown, step S3 includes:

[0080] Step S31: extracting network connection information for the multicast client;

[0081] Step S32: determining the network location of the multicast client according to the network connection information, and dividing the multicast client into multicast area groups according to the network location and the predetermined multicast range;

[0082] Step S33: creating multicast nodes according to the multicast area groups;

[0083] Step S34: Pushing the streaming media to be processed to the multicast client based on the multicast node.

[0084] Specifically, to achieve the establishment of a multicast node, in this embodiment, after the clients are grouped to form a multicast client, the network connection information of the multicast client is first extracted, and then the network location of the multicast client is determined according to the network connection information, mainly including the region and network segment where the access point of the multicast client is located. Generally speaking, the media platform will pre-configure multiple servers in multiple regions as multicast devices, and configure the multicast range of each multicast device.

[0085] In the actual transmission process, when the media platform screens the multicast clients that can perform multicast and determines their network locations, the multicast clients are divided into multicast area groups according to the network locations and the predetermined multicast range, and a multicast node is created on the server corresponding to the multicast range.

[0086] Subsequently, the multicast node starts from the time point of the multicast client with the latest playback time, requests data packets in sequence according to the preset data packet length, and adds them to the cache queue until the time point of the multicast client with the earliest playback time is reached, and then adds cache according to the time point of the multicast client.

[0087] After the cache is established, the multicast node extracts the corresponding data packets from the cache in sequence according to the playback time of the multicast client recorded in the client list, and then forwards them, and updates the playback time recorded in the client list;

[0088] When the multicast client with the latest playback time obtains the forwarded multicast data packet, the multicast data packet is deleted from the cache.

[0089] In one embodiment, Figure 4 As shown, after executing step S33 and before executing step S34, the following steps are also included:

[0090] Step A331: when there are multiple multicast nodes in the multicast range, extract the multicast cache data allocated to each multicast node respectively;

[0091] Step A332: Compare the cache time ranges of the multicast cache data to determine the multicast nodes with overlapping cache time ranges as nodes to be merged;

[0092] Step A333: Merge the nodes to be merged to form a new multicast node.

[0093] Specifically, in order to achieve lower bandwidth occupancy, in this embodiment, when multiple multicast nodes are created on the same multicast range, that is, on the same multicast server physical carrier, the multicast cache data is extracted respectively, mainly including the time segments corresponding to the multicast data. Then, the time segments are compared, and when there is an overlap in the cache time range, the overlapping multicast nodes are used as nodes to be merged, and then a new multicast node is created, and the client list corresponding to the new multicast node is the overlapping multicast node, and the cache length corresponds to the sum of the cache time ranges before merging.

[0094] In one embodiment, Figure 5 As shown, after executing step A333 and before executing step S34, the following steps are also included:

[0095] Step A334: Determine whether the number of multicast clients corresponding to the multicast node exceeds the maximum number of connections;

[0096] If yes, go to step A335;

[0097] If not, go to step S34;

[0098] Step A335: Generate multiple load balancing nodes according to the multicast node, and point the multicast clients to the load balancing nodes as new multicast nodes respectively, and then go to step S34.

[0099] Specifically, after the multicast nodes are merged, in order to avoid the problem of too large a number of concurrent connections for a single node, in this embodiment, after the multicast nodes are merged, it is also determined whether the number of multicast clients corresponding to the multicast node exceeds the maximum number of connections. When the maximum number of connections is exceeded, a load balancing node is generated for the multicast node, and the multicast clients are allocated to avoid the problem of too large a concurrent number.

[0100] A multimedia information processing system, used to implement the above-mentioned multimedia information processing method, such as Figure 6 As shown, including:

[0101] Collection module 1, collection module 1 collects the client currently requesting to play the streaming media to be processed;

[0102] The screening module 2 is connected to the collection module 1, and the screening module 2 screens the clients to obtain the multicast clients;

[0103] The allocation module 3 is connected to the screening module 2, and the allocation module 3 allocates a multicast node to the multicast client, and pushes the streaming media to be processed to the multicast client in a multicast manner.

[0104] In one embodiment, Figure 7 As shown, the screening module 2 includes:

[0105] The connection information acquisition module 21 acquires the playback connection information of the client;

[0106] A timestamp extraction module 22, the timestamp extraction module 22 is connected to the connection information acquisition module 21, and the timestamp extraction module 22 extracts the current playback time according to the playback connection information;

[0107] The grouping module 23 is connected to the timestamp extraction module 22. The grouping module 23 groups the clients according to the current play time and the cache time range to obtain multicast clients.

[0108] In one embodiment, Figure 8 As shown, the allocation module 3 includes:

[0109] A connection extraction module 31, the connection extraction module 31 extracts network connection information from a multicast client;

[0110] A location grouping module 32, the location grouping module 32 is connected to the connection extraction module 31, the location grouping module 32 determines the network location of the multicast client according to the network connection information, and divides the multicast client into multicast area groups according to the network location and the predetermined multicast range;

[0111] The node creation module 33 is connected to the position grouping module 32, and the node creation module 33 creates multicast nodes according to the multicast area grouping;

[0112] The streaming module 34 is connected to the node creation module 33 and pushes the streaming media to be processed to the multicast client based on the multicast node.

[0113] In one embodiment, Fig. 9 As shown, the allocation module 3 also includes:

[0114] The cache extraction module 35 extracts the multicast cache data allocated to each multicast node respectively when there are multiple multicast nodes in the multicast range;

[0115] The cache comparison module 36 is connected to the cache extraction module 35. The cache comparison module 36 compares the cache time ranges of the multicast cache data to determine the multicast nodes with overlapping cache time ranges as nodes to be merged;

[0116] The node merging module 37 is connected to the cache comparison module 36, and the node merging module 37 merges the nodes to be merged to form a new multicast node.

[0117] In one embodiment, Fig.10 As shown, the allocation module 3 also includes:

[0118] A connection number determination module 38, the connection number determination module 38 determines whether the number of multicast clients corresponding to the multicast node exceeds the maximum number of connections;

[0119] The load balancing module 39 generates multiple load balancing nodes for the multicast nodes that exceed the maximum number of connections, and points the multicast clients to the load balancing nodes as new multicast nodes.

[0120] The above are only preferred embodiments of the present invention, and are not intended to limit the implementation methods and protection scope of the present invention. Those skilled in the art should be aware that all solutions obtained by equivalent substitutions and obvious changes made using the description and illustrations of the present invention should be included in the protection scope of the present invention.

Claims

1. A multimedia information processing method, It is characterized in that include: Step S1: collecting the client currently requesting to play the streaming media to be processed; Step S2: Screening the clients to obtain multicast clients; Step S3: allocating a multicast node to the multicast client, and pushing the to-be-processed streaming media to the multicast client in a multicast manner.

2. The multimedia information processing method according to claim 1, It is characterized in that The step S2 comprises: Step S21: Obtaining the playback connection information of the client; Step S22: extracting the current playback time according to the playback connection information; Step S23: Grouping the clients according to the current playback time and cache time range to obtain the multicast clients.

3. The multimedia information processing method according to claim 1, It is characterized in that The step S3 comprises: Step S31: extracting network connection information for the multicast client; Step S32: determining the network location of the multicast client according to the network connection information, and dividing the multicast client into multicast area groups according to the network location and a predetermined multicast range; Step S33: creating the multicast node according to the multicast area grouping; Step S34: Pushing the to-be-processed streaming media to the multicast client based on the multicast node.

4. The multimedia information processing method according to claim 3, It is characterized in that After executing step S33 and before executing step S34, the method further includes: Step A331: when there are multiple multicast nodes in the multicast range, respectively extract the multicast cache data allocated to each multicast node; Step A332: comparing the cache time ranges of the multicast cache data to determine the multicast nodes whose cache time ranges overlap as nodes to be merged; Step A333: Merge the nodes to be merged to form the new multicast node.

5. The multimedia information processing method according to claim 4, It is characterized in that After executing step A333 and before executing step S34, the method further includes: Step A334: Determine whether the number of the multicast clients corresponding to the multicast node exceeds the maximum number of connections; If yes, go to step A335; If not, go to step S34; Step A335: Generate multiple load balancing nodes according to the multicast node, and point the multicast clients to the load balancing nodes as new multicast nodes respectively, and then turn to the step S34.

6. A multimedia information processing system, It is characterized in that Used to implement the multimedia information processing method according to any one of claims 1 to 5, comprising: A collection module, wherein the collection module collects the client currently requesting to play the streaming media to be processed; A screening module, the screening module is connected to the collection module, and the screening module screens the clients to obtain multicast clients; A distribution module is connected to the screening module, and the distribution module distributes a multicast node to the multicast client, and pushes the to-be-processed streaming media to the multicast client in a multicast manner.

7. The multimedia information processing method according to claim 6, It is characterized in that The screening module comprises: A connection information acquisition module, wherein the connection information acquisition module acquires the playback connection information of the client; A timestamp extraction module, the timestamp extraction module is connected to the connection information acquisition module, and the timestamp extraction module extracts the current playback time according to the playback connection information; A grouping module, the grouping module is connected to the timestamp extraction module, and the grouping module groups the clients according to the current playback time and the cache time range to obtain the multicast clients.

8. The multimedia information processing system according to claim 6, It is characterized in that The allocation module comprises: A connection extraction module, wherein the connection extraction module extracts network connection information from the multicast client; a position grouping module, the position grouping module being connected to the connection extraction module, the position grouping module determining the network position of the multicast client according to the network connection information, and grouping the multicast client into multicast area groups according to the network position and a predetermined multicast range; A node creation module, the node creation module is connected to the location grouping module, and the node creation module creates the multicast node according to the multicast area grouping; A streaming module, wherein the streaming module is connected to the node creation module, and the streaming module pushes the to-be-processed streaming media to the multicast client based on the multicast node.

9. The multimedia information processing method according to claim 8, It is characterized in that The allocation module also includes: A cache extraction module, wherein when there are multiple multicast nodes in the multicast range, the cache extraction module extracts the multicast cache data allocated to each multicast node respectively; A cache comparison module, the cache comparison module is connected to the cache extraction module, and the cache comparison module compares the cache time ranges of the multicast cache data to determine the multicast nodes with overlapping cache time ranges as nodes to be merged; A node merging module, wherein the node merging module is connected to the cache comparison module, and the node merging module merges the nodes to be merged to form a new multicast node.

10. The multimedia information processing system according to claim 9, It is characterized in that The allocation module also includes: A connection number determination module, wherein the connection number determination module determines whether the number of the multicast clients corresponding to the multicast node exceeds a maximum connection number; A load balancing module generates multiple load balancing nodes for multicast nodes exceeding the maximum number of connections, and points the multicast clients to the load balancing nodes as new multicast nodes.

Citation Information

Patent Citations

  • Multicast realizing method and relevant network equipment

    CN108668178A