Loongson platform-based video call implementation method, video call system and equipment
By adopting a microservice architecture using Docker containers and PeerJS Server on the Loongson platform, a lightweight video call system was implemented, solving software and hardware compatibility and maintainability issues, reducing development and deployment costs, and improving ease of use.
Patent Information
- Application Number
- CN202511753524.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-26
- Publication Date
- 2026-03-06
AI Technical Summary
Video call software on the Loongson platform suffers from hardware and software compatibility issues, has a bloated client software size, low maintainability and scalability, and high development and deployment costs.
It adopts a microservice architecture based on Docker containers, combined with PeerJS Server to perform a lightweight wrapper around WebRTC, realizing front-end and back-end separation, enabling video calls through a browser, and supporting user information synchronization and dynamic device switching.
It reduces compatibility issues with video calling software, simplifies the development and deployment process, lowers costs, and improves ease of use and maintainability.
Smart Images

Figure CN121619404A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of computer software engineering technology, and specifically relates to a video call implementation method, video call system and device based on the Loongson platform. Background Technology
[0002] Because the Loongson platform uses the MIPS or LoongArch architecture, which differs from the mainstream x86 / ARM architecture, and needs to be compatible with the domestic operating system ecosystem, running video calling software on this platform faces a series of technical challenges, mainly in the following aspects: 1. Underlying hardware architecture limitations: The Loongson platform uses Loongson processors (such as the Loongson 3A series), which have limited performance. It needs to be optimized and compiled for the MIPS / LoongArch instruction set; otherwise, it cannot meet the performance requirements for real-time audio and video processing. 2. Difficulty in operating system and ecosystem adaptation: It runs on domestic operating systems, such as Loongnix, UnionTech UOS, and Galaxy Kylin, but the ecosystem of domestic systems differs from that of mainstream systems and lacks a mature foundation for audio and video software adaptation; 3. Complex audio and video technologies: The audio and video communication system needs to be adapted to domestic platforms and support multiple codecs (such as VP8, H.264); it may adopt open source technologies such as WebRTC or proprietary codec technologies. 4. Network transmission optimization requirements: Real-time audio and video data transmission needs to be optimized for LAN or private network scenarios, while being compatible with mainstream communication protocols such as SIP and RTP / RTCP to ensure call stability; Among these challenges, ecosystem compatibility and performance optimization are the main issues. The software needs to be fully compatible with domestic CPUs (Loongson, Zhaoxin, etc.), operating systems (Kylin, UOS, etc.), and databases (DM, etc.). Improper compatibility in any one of these areas will prevent the software from running properly.
[0003] Given the aforementioned technological background, existing traditional video calling software (mostly client / server architecture) based on the Loongson platform suffers from the following technical problems: Poor hardware and software compatibility: On the one hand, the underlying audio and video libraries lack MIPS / LoongArch architecture adaptation, making it difficult to guarantee compatibility; on the other hand, the parameters of cameras, sound cards and other devices from different hardware manufacturers vary greatly, requiring adaptation one by one to achieve basic call quality, resulting in high adaptation costs. Insufficient lightweight client software: In order to be compatible with different domestic operating systems, traditional C / S architecture software needs to be optimized for each system, resulting in complex software architecture and bloated size; at the same time, in order to balance the aesthetics of the interface and the call performance, the resource consumption of the client is further increased, highlighting the contradiction with the performance constraints of the Loongson platform. Low maintainability and scalability: The client software is tightly coupled with the deployment environment. Once the operating system version changes or the audio and video hardware is replaced, the client needs to be readjusted, optimized and redeployed, which severely restricts subsequent expansion and long-term maintenance. Summary of the Invention
[0004] The purpose of this invention is to overcome existing defects and provide a video call implementation method, system and device based on the Loongson platform. This invention can effectively reduce compatibility issues between different deployment environments and software and hardware products while ensuring the video call effect, and at the same time reduce the cost of software deployment and future maintenance and expansion.
[0005] To solve the above-mentioned technical problems, the present invention provides the following technical solution: The first objective of this invention is to provide a video call implementation method based on the Loongson platform, comprising the following steps: (1) Deploy a microservice architecture based on Docker containers on the Loongson platform server, and control the automatic startup of containers through convenient scripts. The microservice architecture includes at least the basic tools docker-compose and jdk; (2) PeerJS Server is used as the audio and video stream scheduling service. PeerJS is used to encapsulate WebRTC in a lightweight manner and automatically handle signaling exchange, NAT traversal and ICE candidate negotiation. (3) Log in to the system management backend, configure user information, and enable at least two Loongson platform clients to access the server through a browser; (4) The client invokes UserMedia permission through the browser. The first client initiates a video call request to the second client through the browser. After the second client accepts the request, it establishes a peer-to-peer video call connection based on WebRTC through the server.
[0006] Furthermore, in step (1), the server container and the Vue front-end container are configured through docker-compose to form a microservice deployment architecture with front-end and back-end separation.
[0007] Furthermore, in step (3), the user information configuration supports synchronization with a third-party basic information platform through a reserved interface.
[0008] Furthermore, during the video call in step (4), the browser's call interface displays a list of camera and sound card devices that the user can switch between in real time.
[0009] Another objective of this invention is to provide a video call system, employing the video call implementation method based on the Loongson platform provided in the first objective of this invention, comprising: The server-side module, deployed on the Loongson platform server, includes a signaling server deployed based on Docker containers, used to manage user connections and signaling exchange; The client module runs in the browser of the Loongson platform client. It communicates with the server module by calling the PeerJS library and is used for acquiring, encoding, transmitting, decoding and rendering audio and video streams. The client module provides a user interface for users to initiate / accept calls and switch audio and video capture devices in real time.
[0010] Furthermore, the server module includes: A containerized deployment unit that uses Docker and docker-compose to deploy server-side containers and Vue front-end containers and manage their automatic startup. The signaling service unit integrates PeerJS Server to handle signaling exchange, NAT traversal, and ICE candidate negotiation; The user synchronization unit provides third-party system interfaces to support cross-platform synchronization of user information.
[0011] Furthermore, the client module includes: The device management unit is used to dynamically detect and switch between camera and sound card devices; The user management unit supports account login, role permission verification, and user information synchronization.
[0012] Another objective of the present invention is to provide a video call device, wherein the device is equipped with the video call system provided in the first objective of the present invention, and the device is a server or terminal device equipped with a Loongson processor.
[0013] In combination with the above technical solutions, the beneficial effects of the present invention compared with the prior art are as follows: 1. This invention enables video calls between Loongson platforms at a lower cost and provides users with video call services through a richer interface. By reserving a user information synchronization interface on basic information such as user information, it facilitates users to synchronize user information from existing basic information platforms, resulting in reduced coupling between video call software and other systems, and greater flexibility in adapting to different information systems.
[0014] 2. This invention further simplifies and encapsulates WebRTC using PeerJS, combining Java's cross-platform capabilities, the convenience of Docker containerized deployment, and the excellent system compatibility of the B / S architecture. Coupled with an auto-start script for the service at boot, it greatly improves overall usability. While ensuring the core functionality of video calling, it meets the functional and performance requirements of video calling software on the Loongson platform in a more convenient way. This allows developers to complete the development of this video calling software without significant technical investment or in-depth understanding of the underlying systems, greatly reducing development costs.
[0015] 3. This invention uses Spring Boot, Vue, and NodeJS as the software framework, with front-end and back-end separation deployment. It only requires JDK and Docker environments to be well-compatible with various runtime environments. Through server-side containerized deployment and lightweight encapsulation of the WebRTC framework, it brings significant simplification to code and complexity, and facilitates operation and maintenance.
[0016] The native WebRTC API is powerful but also extremely complex; implementing a simple video call requires numerous boilerplate methods. PeerJS provides an abstract Peer object. Each user has a unique ID. To connect to someone, simply use `peer.connect(anotherPeerId)`. All the tedious signaling exchanges (SDP, ICE Candidates) are handled automatically by PeerJS's PeerServer. You only need to focus on the "connection" action, not the complex underlying protocols. Built-in signaling server: WebRTC itself doesn't provide methods for discovering and connecting clients; PeerJS provides a ready-made signaling server. More user-friendly abstract API: PeerJS's API design is very intuitive and easy to understand, and its event listening method is also very clear, greatly reducing the learning curve and development threshold. Automatic handling of NAT traversal and ICE candidates: WebRTC uses the ICE framework to establish peer-to-peer connections, requiring the collection and exchange of local and public network candidate addresses (ICE Candidates), a tedious process. PeerJS automatically handles the collection, exchange, and negotiation of ICE Candidates at the underlying level, requiring almost no concern for the details of STUN / TURN servers. PeerJS simplifies data channels and media streams, not only for video calls but also by unifying the way data channels and media channels are created.
[0017] The overall architecture of this invention is highly cohesive and loosely coupled, which improves its practicality. For R&D personnel, the overall technical route of this solution is smooth and more conducive to rapid prototype development. Attached Figure Description
[0018] The accompanying drawings are provided to further illustrate the invention and form part of the specification. They are used in conjunction with embodiments of the invention to explain the invention and do not constitute a limitation thereof. In the drawings: Figure 1 This is a flowchart of a video call implementation method based on the Loongson platform provided in an embodiment of the present invention; Figure 2 This is a schematic diagram of a video call implementation method based on the Loongson platform provided in an embodiment of the present invention; Figure 3 This is a schematic diagram of the structure of a video call system based on the Loongson platform provided in an embodiment of the present invention. Detailed Implementation
[0019] The preferred embodiments of the present invention will be described below with reference to the accompanying drawings. It should be understood that the preferred embodiments described herein are for illustration and explanation only and are not intended to limit the present invention.
[0020] Example 1: like Figure 1 The image shown is an embodiment of the video call implementation method based on the Loongson platform provided by the present invention, which specifically includes the following steps: S1: Deploy a microservice architecture based on Docker containers on the Loongson platform server, and control the containers to start automatically at boot through convenient scripts. The microservice architecture includes at least the basic tools docker-compose and jdk. S2: PeerJS Server is used as the audio and video stream scheduling service. PeerJS provides a lightweight wrapper around WebRTC and automatically handles signaling exchange, NAT traversal, and ICE candidate negotiation. S3: Log in to the system management backend, configure user information, and enable at least two Loongson platform clients to access the server through a browser; S4: The client invokes UserMedia permissions through the browser. The first client initiates a video call request to the second client through the browser. After the second client accepts the request, it establishes a peer-to-peer video call connection based on WebRTC through the server.
[0021] Specifically, such as Figure 2As shown, first, install the basic environment such as Docker, Docker Compose, and JDK. After importing the image and starting the service, log in to the management page with the administrator account to configure basic user information, including username, password, role permissions, etc. The server uses PeerJS server as the audio and video stream scheduling service. PeerJS, as a lightweight wrapper for WebRTC, greatly simplifies the complexity of video calls and compensates for the compatibility shortcomings of C / S architecture with its browser-based B / S architecture. After ensuring the video call software is configured with basic user information, set up multiple test machines as clients. Each machine needs to be equipped with the corresponding audio and video hardware devices, such as USB cameras, sound cards, etc. Open the browser and grant the corresponding UserMedia permissions according to different browser requirements to ensure the browser has permission to access the audio and video hardware. Client A logs in with a regular user account as the initiator, and Client B logs in with its own account as the receiver. Client A initiates a call request to Client B, and Client B receives the request and clicks to accept to establish a video call. The call page can display a list of the acquired machine's camera and sound card, allowing customers to switch between multiple hardware devices at any time.
[0022] Preferably, in step S1 of this embodiment of the invention, the server container and the Vue front-end container are configured by docker-compose to form a microservice deployment architecture with front-end and back-end separation.
[0023] Preferably, in step S3 of this embodiment of the invention, the user information configuration supports synchronization with a third-party basic information platform through a reserved interface.
[0024] Preferably, during the video call in step S4 of this embodiment of the invention, the browser's call interface displays a list of camera and sound card devices that the user can switch between in real time.
[0025] Example 2: like Figure 3 As shown, this embodiment of the invention provides a video call system, which adopts the video call implementation method based on the Loongson platform provided in Embodiment 1 of the invention, including: The server-side module, deployed on the Loongson platform server, includes a signaling server deployed based on Docker containers, used to manage user connections and signaling exchange; The client module runs in the browser of the Loongson platform client. It communicates with the server module by calling the PeerJS library and is used for acquiring, encoding, transmitting, decoding and rendering audio and video streams. The client module provides a user interface for users to initiate / accept calls and switch audio and video capture devices in real time.
[0026] Specifically, this invention is a video calling software solution based on the Loongson platform, implemented using Java Vue, with PeerJS as the core foundation for video calling, and combined with HTML5 web technology. This system is a lightweight B / S architecture software system. Considering the unified adaptation issues of domestic environments, the dependent environment only requires Docker and JDK to easily run microservices. The service can be started with a single click via a script, and the test client machines only need to be on the same local area network, interconnected, and have a mainstream browser installed.
[0027] This invention leverages the cross-platform compatibility of Java and Docker, supporting x86 Windows, Linux, and mainstream domestic environments. Combined with a startup script, it greatly enhances overall usability. While ensuring the core functionality of video calls, it provides the convenience and scalability of modern web applications, effectively reducing the barrier to entry and maintenance costs of projects.
[0028] This invention uses Spring Boot as the software framework, requiring only JDK and Docker environments for excellent compatibility with various runtime environments. It shields the differences between different hardware devices and ensures compatibility with different operating systems and browsers. The server-side of this invention packages the complex and large WebRTC architecture into a lightweight, interface-based PeerJS package and introduces it to the front end. PeerJS provides a ready-made signaling server, saving a significant amount of work compared to building a WebSocket signaling server from scratch. In terms of network architecture, it automatically handles the collection, exchange, and negotiation of ICE candidates at the underlying level, requiring almost no attention to the details of STUN / TURN servers. The overall architecture is highly cohesive and loosely coupled, making it easy for developers to learn and improving the practicality of this invention.
[0029] Preferably, the server module of this embodiment includes: A containerized deployment unit that uses Docker and docker-compose to deploy server-side containers and Vue front-end containers and manage their automatic startup. The signaling service unit integrates PeerJS Server to handle signaling exchange, NAT traversal, and ICE candidate negotiation; The user synchronization unit provides third-party system interfaces to support cross-platform synchronization of user information.
[0030] Preferably, the client module of this embodiment of the invention includes: The device management unit is used to dynamically detect and switch between camera and sound card devices; The user management unit supports account login, role permission verification, and user information synchronization.
[0031] Example 3: The present invention provides a video call device, which is equipped with the video call system provided by the first objective of the present invention. The device is a server or terminal device equipped with a Loongson processor.
[0032] It should be understood that although the steps in the flowcharts of the various embodiments of the present invention are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated in the present invention, there is no strict order restriction on the execution of these steps, and these steps can be executed in other orders. Moreover, at least some steps in the various embodiments may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least a portion of the sub-steps or stages of other steps.
[0033] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, storage, databases, or other media used in the embodiments provided by this invention can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
[0034] Finally, it should be noted that the above descriptions are merely preferred embodiments of the present invention and are not intended to limit the present invention. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art can still modify the technical solutions described in the foregoing embodiments or make equivalent substitutions for some of the technical features. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A method for implementing a video call based on a Loongson platform, characterized in that, The method comprises the following steps: (1) deploying a micro-service architecture based on a Docker container on a Loongson platform server, starting the container automatically through a convenient script, and the micro-service architecture comprising at least a basic environment docker-compose and jdk; (2) using PeerJS Server as an audio and video stream scheduling service, performing lightweight encapsulation of WebRTC through PeerJS, and automatically processing signaling exchange, NAT penetration and ICE candidate negotiation; (3) logging in a system management background, configuring user information, and enabling at least two Loongson platform clients to access the server through a browser; (4) calling a UserMedia permission through a browser on the client, initiating a video call request from a first client to a second client through the browser, and establishing a point-to-point video call connection based on WebRTC through the server after the second client accepts the request.
2. The video call implementation method based on the Loongson platform according to claim 1, wherein In step (1), the server container and the Vue front-end container are configured through docker-compose to form a micro-service deployment architecture with separated front-end and back-end.
3. The video call implementation method based on the Loongson platform according to claim 1, wherein, In step (3), the user information configuration supports synchronization with a third-party basic information platform through a reserved interface.
4. The video call implementation method based on the Loongson platform according to claim 1, wherein, In the video call process of step (4), the call interface of the browser displays a list of user-switchable camera and sound card devices in real time.
5. A video call system, characterized by The system adopts the video call implementation method based on the Loongson platform according to any one of claims 1-4.
6. The video call system of claim 5, wherein, The system comprises: a server module deployed on a Loongson platform server, comprising a signaling server based on a Docker container, for managing user connections and signaling exchange; a client module running in a browser of a Loongson platform client, communicating with the server module through a PeerJS library, for collecting, encoding, transmitting, decoding and rendering audio and video streams; wherein the client module provides a user interface for users to initiate / accept calls and switch audio and video collection devices in real time.
7. The video call system of claim 6, wherein, The server module comprises: a containerized deployment unit for deploying and starting the server container and the Vue front-end container automatically based on Docker and docker-compose; a signaling service unit integrating PeerJS Server to handle signaling exchange, NAT penetration and ICE candidate negotiation; a user synchronization unit providing a third-party system interface for supporting cross-platform synchronization of user information.
8. The video call system of claim 5, wherein, The client module comprises: a device management unit for dynamically detecting and switching camera and sound card devices; a user management unit supporting account login, role permission verification and user information synchronization.
9. A video call device, characterized by The device is configured with the video call system according to any one of claims 5-8, and the device is a server or terminal device equipped with a Loongson processor.