Stream data processing method and system

The stream data processing method and system address the issue of packet loss in high traffic conditions by integrating code stream data and message signaling into the same thread task channel, caching, and efficiently processing data within the stream system, resulting in improved reception and transfer performance.

JP2025518249AActive Publication Date: 2025-06-12ZTE CORP
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2024570830
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-06-01
Filing Date
2023-05-09
Publication Date
2025-06-12
Estimated Expiration
2043-05-09

AI Technical Summary

Technical Problem

Existing stream systems face challenges with packet loss due to insufficient reception, processing, and transfer speeds, especially during high traffic conditions, which limits their development and causes system-level and application-level losses.

Method used

A stream data processing method and system that integrates code stream data and message signaling into the same thread task channel according to different file descriptors, caches them in a system buffer, and uses a packet receiving thread to acquire and store the data in a buffer inside the stream, where different service threads can read the data efficiently.

Benefits of technology

This approach significantly improves the reception and transfer performance of stream data, reducing packet loss and enabling faster data processing, even under high traffic conditions, thus enhancing the overall performance and reliability of stream systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025518249000001_ABST
    Figure 2025518249000001_ABST
Patent Text Reader

Abstract

Embodiments of the present invention provide a stream data processing method and system, which integrate code stream data and message signaling into the same thread task channel according to different file descriptors and integrate them into the system buffer, thereby improving the performance of receiving stream data, obtaining the code stream data from the system buffer by a packet receiving thread, and storing it in a buffer inside the stream. By different types of service threads reading the code stream data from the buffer inside the stream, the processing and transfer performance of the stream data is improved, and the effect of improving the speed of receiving and transferring the stream data is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present invention relate to the field of stream data processing, and more specifically, to a stream data processing method and system.

Background Art

[0002] Currently, the fifth-generation mobile communication technology (5G) is gradually entering the commercial era, bringing great impacts and changes to the global audio and video industries. Stream systems that provide services for products and services such as video conferencing, video IoT, and video platforms have also become important means of information dissemination. The quantitative change in speed brought about by 5G contributes to promoting a qualitative change in the entire industry and accelerating the development of stream systems.

[0003] Generally, stream systems in the industry mainly function as live distribution, recording, playback, etc. Their reception and transfer performance are important indicators for evaluating the quality of stream systems. Currently, the reception and transfer speed in the industry can reach 2 Gbps, but further improvement is difficult. In the case of high concurrency and high traffic, their processing capabilities are extremely limited. For example, if the speed of receiving packets is insufficient, it will cause system-level losses. For example, if the speed of transferring and processing packets is insufficient, it will cause application-level losses. The reception and transfer performance of stream systems has become an important bottleneck restricting their development.

Summary of the Invention

Problems to be Solved by the Invention

[0004] Embodiments of the present invention provide a stream data processing method and system that at least solve the problem of packet loss of link data due to reception, processing, and transfer of stream data in the case of high traffic in the prior art.

Means for Solving the Problems

[0005] According to one embodiment of the present invention, a method for processing stream data is provided, which integrates code stream data and message signaling into the same thread task channel according to different file descriptors, and caches them in a system buffer, and a packet receiving thread acquires the code stream data from the system buffer and stores it in a buffer inside the stream, and different types of service threads read the code stream data from the buffer inside the stream.

[0006] According to another embodiment of the present invention, a stream data processing system is provided, which includes a data processing module configured to integrate code stream data and message signaling into the same thread task channel according to different file descriptors and cache them in a system buffer, a data acquisition module configured to acquire the code stream data from the system buffer and store it in a buffer inside the stream, and a data reading module configured to read the code stream data from the buffer inside the stream based on different types of service threads.

[0007] According to still another embodiment of the present invention, a computer-readable storage medium storing a computer program configured to execute the steps in the method embodiment of any one of the above items during operation is further provided.

[0008] According to still another embodiment of the present invention, an electronic device including a memory storing a computer program and a processor configured to operate the computer program to execute the steps in the method embodiment of any one of the above items is further provided. BRIEF DESCRIPTION OF THE DRAWINGS

[0009]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

Embodiments for Carrying Out the Invention

[0010] Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings and in combination with embodiments.

[0011] In addition, terms such as "first" and "second" in the description, claims, and the above drawings of the present invention are used to distinguish similar objects and do not need to be used to describe a specific order or sequence.

[0012] The method embodiments according to the embodiments of the present application can be executed on a mobile terminal, a computer terminal, or a similar computing device. Taking the case of operating on a mobile terminal as an example, FIG. 1 is a hardware structure block diagram of a mobile terminal for the stream data processing method according to the embodiments of the present invention. As shown in FIG. 1, the mobile terminal includes one or more (only one is shown in FIG. 1) processors 102 (the processor 102 may include, but is not limited to, a processing device such as a microprocessor MCU or a programmable logic device FPGA), and a memory 104 for storing data. Here, the mobile terminal may further include a transmission device 106 used for communication functions and an input / output device 108. As can be understood by those skilled in the art, the structure shown in FIG. 1 is merely schematic and does not limit the structure of the above mobile terminal. For example, the mobile terminal may further include more or fewer components than those shown in FIG. 1, or may have an arrangement different from that shown in FIG. 1.

[0013] The memory 104 can be used to store computer programs, such as software programs and modules of application software, and computer programs corresponding to the stream data processing method in the embodiments of the present invention. The processor 102 executes various functional applications and data processing by operating the computer programs stored in the memory 104, that is, realizes the above method. The memory 104 may include high-speed random access memory, and may further include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memories. In some embodiments, the memory 104 may further include a memory installed remotely with respect to the processor 102, and these remote memories may be connected to the mobile terminal via a network. Examples of the above network include, but are not limited to, the Internet, intranet, local area network, mobile communication network, and combinations thereof.

[0014] The transmission device 106 is used to receive or transmit data via a network. Specific examples of the above network may include a wireless network provided by a communication supplier of the mobile terminal. In one embodiment, the transmission device 106 includes a network adapter (abbreviated as NIC), which can be connected to other network devices by a base station and communicate with the Internet. In one embodiment, the transmission device 106 may be a radio frequency (RF) module and is used to communicate with the Internet in a wireless manner.

[0015] Embodiments of the present application may operate on the network architecture shown in FIG. 2. As shown in FIG. 2, the network architecture operates on a server, and the server may be a physical machine, a virtual machine, or even a Docker containerized environment. The network architecture is divided into two parts: the kernel space and the user space. Here, the kernel space refers to the environment in which the operating system and device drivers operate. When code stream data enters the server, it first enters the kernel space. The user space refers to the environment in which the stream operates, and the stream takes the code stream data from the kernel space to the user space. The Socket Buffer system buffer is between the kernel space and the user space, and the system buffer is used to realize a temporary buffer when the code stream data transitions from the kernel space to the user space. In the user space, each functional module of the stream is included, for example, the packet receiving thread RECEIVE, the buffer rBuffer inside the stream, the recording thread RECORD, the storage IO buffer IO Buffer, and the live streaming thread PLAY.

[0016] In this embodiment, a method for processing stream data operating on the mobile terminal or the network architecture is provided. FIG. 3 is a flowchart of the method for processing stream data according to an embodiment of the present invention. As shown in FIG. 3, the flow includes: Step S302 of integrating code stream data and message signaling into the same thread task channel according to different file descriptors and caching them in the system buffer; Step S304 in which the packet receiving thread obtains the code stream data from the system buffer and stores it in the buffer inside the stream; Step S306 in which different types of service threads read the code stream data from the buffer inside the stream.

[0017] By the above steps, the code stream data and message signaling are integrated into the same thread task channel according to different file descriptors, and cached in the system buffer, thereby improving the performance of receiving the stream data. The packet receiving thread obtains the code stream data from the system buffer, stores it in the buffer inside the stream, and different types of service threads read the code stream data from the buffer inside the stream, thereby improving the processing and transfer performance of the stream data, and achieving the effect of improving the receiving and transfer speed of the stream data.

[0018] Here, the execution entity of the above steps may be, but is not limited to, a base station, a terminal, etc.

[0019] In one exemplary embodiment, the code stream data and the message signaling are distinguished by a socket file descriptor and a named pipe file descriptor respectively in the same thread task channel.

[0020] In one exemplary embodiment, the packet receiving thread obtaining the code stream data from the system buffer includes that the packet structure of the code stream data is transmitted using a pointer, the packet receiving thread uses an asynchronous IO event trigger to obtain the code stream data from the system buffer, and adjusts the number of packets obtained and the maximum number of events based on the magnitude of the traffic of the code stream data.

[0021] In one exemplary embodiment, the packet receiving thread obtaining the code stream data from the system buffer further includes adopting a multi-packet receiving thread to obtain the code stream data from the system buffer, transmitting it to a predetermined CPU among multi-core CPUs for processing, and improving the priority of the packet receiving thread.

[0022] In one exemplary embodiment, the different types of service threads reading the code stream data from a buffer inside the stream includes that the packet receiving thread and the service threads transfer packets of the code stream data in a producer / consumer mode centered around the buffer inside the stream, where the packet receiving thread is the producer and the service threads are the consumers.

[0023] In one exemplary embodiment, FIG. 4 is a flowchart of a service thread reading code stream data according to an embodiment of the present invention. As shown in FIG. 4, the different types of service threads reading the code stream data from a buffer inside the stream includes step S402 of fusing and processing the different types of service threads with the same packet receiving thread and the CPU; and further includes step S404 of selecting and processing the packet receiving thread with the smallest load based on the number of tasks of the different types of service threads.

[0024] In one exemplary embodiment, the buffer inside the stream is an annular resource pool.

[0025] In one exemplary embodiment, FIG. 5 is a flowchart of a stream data processing method according to an embodiment of the present invention. As shown in FIG. 5, after the different types of service threads read the code stream data from a buffer inside the stream, the different types of service threads further include storing the code stream data in a storage device to perform persistent storage of the data, that is, the flow includes step S502 of integrating code stream data and message signaling into the same thread task channel according to different file descriptors and caching in a system buffer; The packet receiving thread obtains the code stream data from the system buffer and stores it in the buffer inside the stream in step S504, different types of service threads read the code stream data from the buffer inside the stream in step S506, and the different types of service threads include step S508 of storing the code stream data in a storage device to permanently store the data.

[0026] According to the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by means of software and a general-purpose hardware platform that is essential. Of course, it can also be implemented by hardware. However, in many cases, the former is a more preferred embodiment. Based on such an understanding, the technical solution of the present invention, in essence or the part that contributes to the prior art, can be reflected in the form of a software product. The computer software product is stored in a storage medium (for example, ROM / RAM, magnetic disk, optical disk), and includes a plurality of instructions for causing a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the embodiments of the present invention.

[0027] In this embodiment, a stream data processing system is further provided. The system is used to implement the above embodiments and preferred embodiments, and will not be described further for those already described. For example, the term "module" used below may be a combination of software and / or hardware that realizes a preset function. The devices described in the following embodiments are preferably realized by software, but it is also conceivable to be realized by hardware or a combination of software and hardware.

[0028] FIG. 6 is a structural block diagram of a stream data processing system according to an embodiment of the present invention. As shown in FIG. 6, the stream data processing system 60 includes a data processing module 610 configured to integrate code stream data and message signaling into the same thread task channel according to different file descriptors and cache them in a system buffer, a data acquisition module 620 configured to acquire the code stream data from the system buffer and store it in a buffer inside the stream, and a data reading module 630 configured to read the code stream data from the buffer inside the stream based on different types of business threads.

[0029] In one exemplary embodiment, FIG. 7 is a structural block diagram of a data processing module according to an embodiment of the present invention. As shown in FIG. 7, the data processing module 70 divides the data processing module 610 in the stream data processing system 60 shown in FIG. 6 into two parts. The first data processing unit 710 is configured to integrate the code stream data into the thread task channel according to a socket file descriptor, and the second data processing unit 720 is configured to integrate the message signaling into the thread task channel according to a named pipe file descriptor.

[0030] As those skilled in the art will understand, depending on the content of the data, in the actual implementation process, the data processing module can be further divided into multiple data processing units, which is not limited here.

[0031] In one exemplary embodiment, FIG. 8 is a structural block diagram of a data reading module according to an embodiment of the present invention. As shown in FIG. 8, the data reading module 80 divides the data reading module 630 in the stream data processing system 60 shown in FIG. 6 into three parts. After the code stream data is stored in the buffer inside the stream, each part is installed to immediately read the code stream data from the buffer inside the stream based on different types of the service threads. It includes a first reading unit 810, a second reading unit 820 installed to simultaneously read the code stream data from the buffer inside the stream based on different types of the service threads after the code stream data is stored in the buffer inside the stream, and a third reading unit 830 installed to read the code stream data from the buffer inside the stream at any time based on the demands of different types of the service threads after the code stream data is stored in the buffer inside the stream.

[0032] As those skilled in the art will understand, depending on the content of the data, in the actual implementation process, the data reading module can be further divided into multiple data reading units, which is not limited here.

[0033] In one exemplary embodiment, FIG. 9 is a structural block diagram of a stream data processing system according to an embodiment of the present invention. As shown in FIG. 9, in addition to including each module shown in FIG. 6, the stream data processing system 90 further includes a data storage module 910 installed to store the code stream data read by the data reading module in a storage device.

[0034] As those skilled in the art will understand, each module and unit according to the above embodiments may be combined integrally, or some may be combined as needed, or concentrated in one or more devices or systems, as long as the corresponding functions can be realized.

[0035] Note that each of the above modules may be implemented by software or hardware. When implemented by hardware, each of the above modules may be located in the same processor, or each of the above modules may be located in different processors in any combination, but not limited thereto.

[0036] The embodiments of the present invention further provide a computer-readable storage medium storing a computer program installed to execute the steps in the method embodiment of any one of the above items during operation.

[0037] In one exemplary embodiment, the computer-readable storage medium may include, but is not limited to, media capable of storing computer programs such as USB disks, read-only memories (abbreviated as ROM), random access memories (abbreviated as RAM), removable hard disks, magnetic disks, or optical disks.

[0038] The embodiments of the present invention further provide an electronic device including a memory storing a computer program and a processor installed to operate the computer program to execute the steps in the method embodiment of any one of the above items.

[0039] In one exemplary embodiment, the electronic device may further include a transmission device connected to the processor and an input / output device connected to the processor.

[0040] For specific examples in this embodiment, reference may be made to the examples described in the above embodiments and exemplary embodiments, and this embodiment will not be further described here.

[0041] In order for those skilled in the art to better understand the technical solution of the present invention, the technical solution of the present invention will be described below in combination with specific scenario embodiments.

[0042] Scene Embodiment 1 FIG. 10 is a flowchart of stream data processing according to the scene embodiment of the present invention. As shown in FIG. 10, taking the stream data transmission model as an example, first, a thread management mechanism is established link-wide, a channel convergence technology is provided, the threads are reasonably managed and optimized, and then, the stream packet receiving thread retrieves packets from the buffer of the operating system, provides a packet acquisition technology in the vertical and horizontal directions, and improves the performance of the packet receiving stage. Next, the packet receiving thread stores the retrieved packets in a stream ring-shaped buffer. Then, the stream service thread copies the packets from the ring-shaped buffer to related services for data processing, provides a technology for integrating producers and consumers, improves the data transfer performance, and finally, the data is permanently stored. Hereinafter, the specific steps shown in FIG. 10 will be described in detail in combination with each other.

[0043] Step S1002: Establish a thread management mechanism.

[0044] Establish a thread management mechanism link-wide for transmitting stream data, reasonably manage and optimize the threads, reduce system jams, and improve transmission performance.

[0045] FIG. 11 is a schematic diagram of a thread management mechanism according to the scene embodiment of the present invention. As shown in FIG. 11, the packet code stream and message signaling are integrated and processed by the same receiving thread for overall management, but are distinguished when entering the channel. The signaling passes through a named pipe file fd, and the code stream passes through a socket fd. Avoid preventing multi-threaded access by locks, reduce the cost of managing information, and reduce CPU jams and code redundancy. Thread task channel.

[0046] Step S1004: The packet receiving thread adopts a packet acquisition technology in the vertical and horizontal directions to receive code stream data.

[0047] Before the media data enters the stream module, it first arrives at the operating system buffer. The packet receiving thread RECEIVE of the stream, that is, the entry of the coded stream data, needs to be responsible for taking out the coded stream data from the system buffer, that is, receiving the data.

[0048] In order to improve the performance of the link, it is advantageous to explore the maximum processing performance of the receiving thread vertically, schedule the hardware and system resources sufficiently horizontally, and combine the vertical and horizontal directions to improve the performance at the packet receiving thread stage.

[0049] FIG. 12 is a schematic diagram of the principle of the packet receiving thread according to the scene embodiment of the present invention adopting the packet acquisition technology in the vertical and horizontal directions. As shown in FIG. 12, in the vertical direction, the packet structure is transmitted using a pointer, avoiding large memory copies. The packet receiving thread RECEIVE uses an asynchronous I / O event trigger to adjust the packet acquisition number and the maximum event number based on the magnitude of the traffic, thereby improving the packet acquisition ability of a single thread.

[0050] In the horizontal direction, the number of receiving threads is increased, a multi-thread and system multi-core CPU affinity policy is adopted, the packet receiving thread RECEIVE is sent to a predetermined CPU core for processing, and the priority of the packet receiving thread is improved, thereby making great use of the system core resources and processing them preferentially and promptly.

[0051] Step S1006: Store the coded stream data in the buffer inside the stream.

[0052] After the packet receiving thread extracts the data, it stores the packet in the circular buffer rBuffer inside the stream. rBuffer uses a resource pool, eliminating the need to increase the storage capacity for recycling and avoiding memory fragmentation. This module is responsible for temporarily caching the packets retrieved from the system buffer by the packet receiving thread RECEIVE. This is equivalent to a backup for the packets, making it easy for subsequent different operations to read the data simultaneously. For example, RECORD storage and PLAY transfer are facilitated, enabling playback while storing.

[0053] Step S1008: The service thread processes the code stream data by adopting the technology of integrating producers and consumers.

[0054] The service thread is logically located after rbuffer. Various service threads can simultaneously read the data in rbuffer and use it for their own service flows, such as RECORD thread storage, PLAY thread transfer, etc.

[0055] To improve the performance of this link, the producer - consumer mode is utilized, with the packet receiving thread as the producer and the service thread as the consumer. These operating threads are actually integrated into the same thread and used to improve the performance of the rbuffer module, thereby enhancing the performance of the service thread in processing data.

[0056] Figure 13 is a schematic diagram of the technical principle of integrating producers and consumers by the scene embodiment of the present invention. As shown in Figure 13, regarding rbuffer as the center point, regarding the packet receiving thread RECEIVE as the producer, and regarding the service threads RECORD, PLAY, etc. as consumers, the packets are transmitted from the producer RECEIVE thread to the consumer RECORD, PLAY, etc. threads by rBuffer. This technology decouples different operating threads by an asynchronous scheduling method, reduces the mutual influence between threads, and reduces the delay of the digestion time.

[0057] Based on this technology, each abstract operating thread is regarded as an operating task, and actually merged and processed on the same thread and CPU. When allocating tasks, according to the number of tasks of the current thread, the task is allocated to the thread with the lowest load, making more full use of hardware resources and reducing the unnecessary consumption for the operating system to generate and manage threads.

[0058] Step S1010: Permanently store the code stream data.

[0059] This link is the end of the transmission of the code stream data. After going through processes such as reception and transfer, it needs to be stored in a storage device for permanent storage. As shown in Figure 2, after the recording thread RECORD reads the packet from rBuffer, first, the packet is written into the IO Buffer buffer, and when the file is closed or the buffer is full, the buffer data is introduced into local storage or target storage, thereby reducing the load of reading and writing I0.

[0060] As described above, the embodiments of the present invention provide a stream data processing method and system, which can theoretically process a data code stream at the full bandwidth speed at a 10 gigabit bandwidth (10 Gbps). The embodiments of the present invention greatly improve the reception and transfer performance of the stream system, and can significantly save resources and costs for the industries related to audio and video. In the case of a large traffic volume, for the problem of packet loss of link data caused by the reception and processing transfer of stream data, in the embodiments of the present invention, first, a thread management mechanism is established across the link, and the code stream and signaling are integrated and processed in the same reception thread for overall management, but distinguished when entering the channel, and it is advantageous to avoid preventing multi-threaded access by locking, optimize thread management, and reduce system jams. That is, a channel convergence technology is provided to reasonably manage and optimize the threads. And vertically, the packet acquisition performance of a single packet reception thread is improved, and horizontally, the utilization of core resources is greatly expanded, which is advantageous for accelerating taking out the code stream data from the system buffer and storing it in the buffer inside the stream. That is, a packet acquisition technology in the vertical and horizontal directions is provided to improve the performance in the data reception stage. Finally, different operating threads are decoupled by an asynchronous scheduling method to reduce the mutual influence and the delay of the digestion time between the threads, and the abstract threads are actually fused and processed in the same thread and core to reduce the unnecessary consumption of the threads, make full use of the system resources, and accelerate the data processing by the internal cache module. That is, a technology for fusing the producer and the consumer is provided to improve the performance in the data processing stage.

[0061] Embodiments of the present invention are applicable to related industries of audio and video based on streaming data processing, such as video conferencing, video IOT, video platforms, etc. Specifically, it can be applied to scenes with a large number of access links and high-concurrency traffic, can be applied to high-performance data transfer, and can be applied to services that do not require packet loss. The stream link flow, analysis idea, technology for optimizing performance step by step, and solution design of the embodiments of the present invention have obvious features. Realizing the same or the same purpose as the embodiments of the present invention by means such as packet capture and business call chain tracing tools shall be deemed to be within the protection scope of the present invention.

[0062] Obviously, as can be understood by those skilled in the art, each module or each step of the above-mentioned present invention may be realized by a general-purpose computing device, may be concentrated in a single computing device, or may be distributed in a network composed of a plurality of computing devices. They may also be realized by program codes executable by the computing device, whereby they may be stored in a storage device and executed by the computing device. In some cases, the steps shown or described in a different order here may be executed, or they may be created as each integrated circuit module respectively, or a plurality of them may be created and realized as a single integrated circuit module. Thus, the present invention is not limited to any specific combination of hardware and software.

[0063] The above are merely preferred embodiments of the present invention and are not intended to limit the present invention. For those skilled in the art, the present invention can have various changes and modifications. Any modifications, equivalent replacements, and improvements made without departing from the spirit of the present invention shall all be deemed to be within the protection scope of the present invention.

Claims

1. A method for processing stream data, comprising: integrating code stream data and message signaling into the same thread task channel according to different file descriptors and caching them in a system buffer; a packet receiving thread obtaining the code stream data from the system buffer and storing it in a buffer inside the stream; different types of service threads reading the code stream data from the buffer inside the stream.

2. The method according to claim 1, wherein the code stream data and the message signaling are distinguished by a socket file descriptor and a named pipe file descriptor, respectively, in the same thread task channel.

3. The packet receiving thread obtaining the code stream data from the system buffer, as described in claim 1, further comprises: the packet structure of the code stream data being transmitted using a pointer, the packet receiving thread obtaining the code stream data from the system buffer using an asynchronous IO event trigger, and adjusting the number of packets obtained and the maximum number of events based on the magnitude of the flow rate of the code stream data.

4. The packet receiving thread obtaining the code stream data from the system buffer, as described in claim 1, further comprises: adopting a multi-packet receiving thread to obtain the code stream data from the system buffer, transmitting it to a predetermined CPU among multi-core CPUs for processing, and further improving the priority of the packet receiving thread.

5. The different types of service threads reading the code stream data from the buffer inside the stream, as described in claim 4, further comprises: the packet receiving thread and the service threads transmitting the packets of the code stream data using a producer / consumer mode centered around the buffer inside the stream, where the packet receiving thread is the producer and the service threads are the consumers.

6. The different types of service threads reading the code stream data from the buffer inside the stream, as described in claim 1, further comprises: Fusing and processing the different types of service threads with the same packet receiving thread and CPU; The method according to claim 5, further comprising selecting and processing the packet receiving thread with the lowest load based on the number of tasks of the different types of service threads.

7. The method according to claim 6, wherein the buffer inside the stream is an annular resource pool.

8. After the different types of service threads read the code stream data from the buffer inside the stream, The method according to claim 1, further comprising storing the code stream data in a storage device by the different types of service threads to perform persistent storage of the data.

9. A stream data processing system, A data processing module configured to integrate code stream data and message signaling into the same thread task channel according to different file descriptors and cache them in a system buffer; A data acquisition module configured to acquire the code stream data from the system buffer and store it in a buffer inside the stream; A system comprising a data reading module configured to read the code stream data from the buffer inside the stream based on different types of service threads.

10. The data processing module, A first data processing unit configured to integrate the code stream data into the thread task channel according to a socket file descriptor and enter; The system according to claim 9, comprising at least one of a second data processing unit configured to integrate the message signaling into the thread task channel according to a named pipe file descriptor and enter.

11. The data reading module, A first reading unit configured to immediately read the code stream data from the buffer inside the stream based on different types of service threads after the code stream data is stored in the buffer inside the stream; After the code stream data is stored in the buffer inside the stream, a second reading unit installed to simultaneously read the code stream data from the buffer inside the stream based on different types of the service threads; The system according to claim 9, comprising at least one of: a third reading unit installed to read the code stream data from the buffer inside the stream at any time based on demands of different types of the service threads after the code stream data is stored in the buffer inside the stream.

12. The system according to claim 9, further comprising a data storage module installed to store the code stream data read by the data reading module in a storage device.

13. A computer-readable storage medium storing a computer program that realizes the method according to any one of claims 1 to 8 when executed by a processor.

14. An electronic device including a memory, a processor, and a computer program stored in the memory and operable on the processor, wherein the processor realizes the method according to any one of claims 1 to 8 when executing the computer program.

Citation Information

Patent Citations

  • Packet receiving method, device and system for network media stream

    CN106302372A

  • Court hearing recording system and method

    CN107731230A

  • Media stream distribution method, CDN node server, CDN system and readable storage medium

    CN112995753A

  • Large-scale real-time data stream integrated processing, forwarding and storage method and system

    CN113553346A

  • Real-time communication RTC connection method, server and storage medium

    CN113630439A