Media stream processing method and apparatus, related devices, storage medium, and computer program product

By setting up a remote assistance function module on the PC of the second terminal, the problems of requiring the installation of an APP and high performance requirements in existing technologies for remote assistance services are solved, and a convenient remote assistance experience without the need for an APP is realized.

CN119363720BActive Publication Date: 2026-03-24CHINA MOBILE COMM LTD RES INST +1
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-10-12
Publication Date
2026-03-24

AI Technical Summary

Technical Problem

In existing technologies, remote assistance services require users to download audio and video calling apps, increasing usage and communication costs, and also placing high demands on mobile phone performance, making it difficult for phones with poor performance to use smoothly.

Method used

By setting up a remote assistance module on the PC of the second terminal, the media stream from the first terminal can be forwarded to the PC for editing, avoiding the need to install an app, lowering the barrier to entry and reducing performance requirements.

Benefits of technology

It enables remote assistance services without the need to install an app, reducing user costs and performance requirements, and providing a more convenient and faster remote assistance experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119363720B_ABST
    Figure CN119363720B_ABST
Patent Text Reader

Abstract

A media stream processing method and apparatus, related device, storage medium and computer program product are disclosed. The method is applied to a service platform, and includes: receiving first signaling sent by a first function; the first signaling includes a first request representing a remote assistance request initiated by a first terminal; in response to the first request, obtaining a first media stream; the first media stream is provided by the first terminal; generating a pull stream address and sending the pull stream address to a second function, so that the second function obtains the first media stream based on the pull stream address and edits the first media stream to obtain a second media stream; the second function is set on a personal computer (PC) end of a second terminal, and a connection of a call service is established between the first terminal and the second terminal.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of remote control technology for equipment, and in particular to a media stream processing method, apparatus, related equipment, storage medium, and computer program product. Background Technology

[0002] Currently, when users of local devices encounter problems during calls, they can connect to the local device via network remote assistance technology to remotely control the device.

[0003] In related technologies, remote assistance relies on on-device audio and video calling applications (APPs). On the one hand, both local and remote users must download the corresponding APP to use the remote assistance function, increasing the cost of use. Moreover, in a remote customer service scenario, this undoubtedly increases the user's communication costs and causes inconvenience. At the same time, it makes it difficult for many users who are not familiar with using terminals such as mobile phones to use the remote assistance service. On the other hand, these APPs use the mobile device for rendering and processing, which places certain demands on the performance of the mobile device, making it difficult for mobile phones with poor performance to use the remote assistance service smoothly. Summary of the Invention

[0004] To address the technical problems existing in related technologies, embodiments of this application provide a media stream processing method, apparatus, related equipment, storage medium, and computer program product.

[0005] To achieve the above objectives, the technical solution of this application embodiment is implemented as follows:

[0006] In a first aspect, embodiments of this application provide a media stream processing method applied to a business platform, the method comprising:

[0007] Receive a first signaling sent by a first function; the first signaling includes a first request, the first request representing a remote assistance request initiated by a first terminal;

[0008] In response to the first request, a first media stream is obtained; the first media stream is provided by the first terminal.

[0009] A streaming address is generated and sent to a second function, so that the second function can obtain the first media stream based on the streaming address and edit the first media stream to obtain a second media stream; the second function is set on the personal computer (PC) of the second terminal, and a call service connection is established between the first terminal and the second terminal.

[0010] Secondly, embodiments of this application also provide another media stream processing method, applied to the second function, the method comprising:

[0011] Receive the pull stream address sent by the service platform; the pull stream address is generated by the service platform;

[0012] The first media stream is obtained based on the pull address, and the first media stream is edited to obtain the second media stream; the first media stream is provided by the first terminal, and the first media stream is obtained by the service platform in response to the first request, the first request representing a remote assistance request initiated by the first terminal;

[0013] The second function is set on the PC side of the second terminal, and a call service connection is established between the first terminal and the second terminal.

[0014] Thirdly, embodiments of this application provide a media stream processing apparatus applied to a service platform, the apparatus comprising:

[0015] The first receiving unit is configured to receive a first signaling sent by a first function; the first signaling includes a first request, which represents a remote assistance request initiated by a first terminal;

[0016] The first acquisition unit is configured to acquire a first media stream in response to the first request; the first media stream is provided by the first terminal.

[0017] The generation unit is used to generate the pull address;

[0018] The first sending unit is used to send the pull address to the second function, so that the second function can obtain the first media stream based on the pull address and edit the first media stream to obtain the second media stream; the second function is set on the PC of the second terminal, and a call service connection is established between the first terminal and the second terminal.

[0019] Fourthly, embodiments of this application also provide another media stream processing apparatus for the second function, the apparatus comprising:

[0020] The second receiving unit is used to receive the pull address sent by the service platform; the pull address is generated by the service platform.

[0021] The second acquisition unit is used to acquire the first media stream based on the pull address;

[0022] An editing unit is used to edit the first media stream to obtain a second media stream; the first media stream is provided by a first terminal and is obtained by the service platform in response to a first request, wherein the first request represents a remote assistance request initiated by the first terminal;

[0023] The second function is set on the PC side of the second terminal, and a call service connection is established between the first terminal and the second terminal.

[0024] Fifthly, embodiments of this application provide a business platform, including: a first processor and a first memory for storing computer programs capable of running on the first processor;

[0025] Wherein, when the first processor is used to run the computer program, it executes the steps of the media stream processing method on the service platform side described in the embodiments of this application.

[0026] In a sixth aspect, embodiments of this application provide a second function, including: a second processor and a second memory for storing a computer program capable of running on the second processor;

[0027] Wherein, when the second processor is used to run the computer program, it executes the steps of the media stream processing method of the second functional side described in the embodiments of this application.

[0028] In a seventh aspect, embodiments of this application also provide a storage medium storing a computer program thereon, wherein the computer program, when executed by a processor, implements the steps of the media stream processing method on the service platform side as described in embodiments of this application, or implements the steps of the media stream processing method on the second functional side as described in embodiments of this application.

[0029] Eighthly, embodiments of this application also provide a computer program product, including a computer program that, when executed by a processor, implements the steps of the media stream processing method on the service platform side as described in embodiments of this application, or implements the steps of the media stream processing method on the second functional side as described in embodiments of this application.

[0030] The media stream processing method, apparatus, related equipment, storage medium, and computer program product provided in this application embodiment include: a service platform receiving a first signaling sent by a first function; the first signaling includes a first request, which represents a remote assistance request initiated by a first terminal; in response to the first request, a first media stream is obtained; the first media stream is provided by the first terminal; a streaming address is generated and sent to a second function, so that the second function obtains the first media stream based on the streaming address and edits the first media stream to obtain a second media stream; the second function is set on the PC of the second terminal, and a call service connection is established between the first terminal and the second terminal. By adopting the technical solution of this application embodiment, the second function is set on the PC side of the second terminal. In this way, the first media stream provided by the first terminal is forwarded to the PC side of the second terminal, and then the PC side of the second terminal edits the first media stream to obtain the second media stream. Thus, no app needs to be installed, and the remote assistance service function can be realized simply by using the call service. This lowers the user's usage threshold, avoids the need to use an app to provide remote assistance services, and reduces the usage cost of the first terminal. This makes it more convenient and faster to provide remote assistance services to the first terminal users. At the same time, by setting the streaming editing function on the PC side of the second terminal, the performance requirements of the second terminal are reduced. Attached Figure Description

[0031] Figure 1 This is a flowchart illustrating the media stream processing method according to an embodiment of this application. Figure 1 ;

[0032] Figure 2 This is a flowchart illustrating the media stream processing method according to an embodiment of this application. Figure 2 ;

[0033] Figure 3 This is a flowchart illustrating the media stream processing method according to an embodiment of this application. Figure 3 ;

[0034] Figure 4 This is a schematic diagram of the first terminal and remote assistance function module according to an embodiment of this application;

[0035] Figure 5 This is a flowchart illustrating the remote assistance service process according to an embodiment of this application;

[0036] Figure 6 This is a schematic diagram of the media stream push process according to an embodiment of this application;

[0037] Figure 7 This is a schematic diagram of the composition structure of the media stream processing device according to an embodiment of this application. Figure 1 ;

[0038] Figure 8 This is a schematic diagram of the composition structure of the media stream processing device according to an embodiment of this application. Figure 2 ;

[0039] Figure 9 This is a schematic diagram of the hardware composition structure of the service platform according to an embodiment of this application;

[0040] Figure 10 This is a schematic diagram of the hardware structure of the second function in an embodiment of this application;

[0041] Figure 11 This is a schematic diagram of the composition structure of the media stream processing system according to an embodiment of this application. Detailed Implementation

[0042] The present application will now be described in further detail with reference to the accompanying drawings and embodiments.

[0043] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application.

[0044] Currently, remote video call assistance is generally implemented based on the audio and video call app on the local device. Specifically, the audio and video call app on the local device collects audio and video streams, pushes the collected audio and video streams to the other end, receives the audio and video streams on the other end, edits the audio and video streams related to assistance, and then pushes the edited audio and video streams back to the local device, thereby completing the business process of remote video call assistance.

[0045] In remote assistance workflows, the following methods can be used to edit audio and video streams: direct overlay, frozen screen overlay, whiteboard assistance, and augmented reality (AR) overlay. Taking video streams as an example, direct overlay adds various annotations to the video stream, but this can result in annotations moving with the video stream's movement, making accurate annotation positioning impossible. Frozen screen overlay freezes the video stream and then annotates individual video frames, providing a more stable and reliable editing experience. Whiteboard assistance involves annotating the video stream on a whiteboard. AR overlay involves collecting feature information of objects within the video content and then anchoring the marker signal onto the object to be marked.

[0046] Therefore, the advantages of this video call remote assistance implementation method are its ease of implementation, allowing the mobile phone to take over the other party's audio and video streams and easily implement various video call functions. However, the problems are also obvious: First, this video call remote assistance implementation method relies on a mobile phone-side audio and video call app. On the one hand, both the local user and the remote user must download the corresponding app to use the remote assistance function, increasing the user's cost. Moreover, in a remote customer service scenario, this undoubtedly increases the user's communication costs and causes inconvenience. At the same time, it makes it difficult for many users who are not familiar with using terminals such as mobile phones, especially the elderly and children, to use this remote assistance service. On the other hand, these apps use the mobile phone side for rendering and processing, which places certain demands on the mobile phone's performance, making it difficult for phones with poor performance to use the remote assistance service smoothly.

[0047] Based on this, this application proposes a media stream processing method. In various embodiments of this application, by setting the second function on the PC side of the second terminal, the first media stream provided by the first terminal is forwarded to the PC side of the second terminal, and then the PC side of the second terminal edits the first media stream to obtain the second media stream. In this way, no app needs to be installed, and remote assistance service can be realized simply by using the call service, which lowers the user's usage threshold, avoids the use of an app to provide remote assistance service, reduces the usage cost of the first terminal, and thus provides remote assistance service to the first terminal user more conveniently and quickly. At the same time, by setting the streaming editing function on the PC side of the second terminal, the performance requirements of the second terminal are reduced.

[0048] This application provides a media stream processing method, which is applied to a business platform. Figure 1 This is a flowchart illustrating the media stream processing method according to an embodiment of this application. Figure 1 ;like Figure 1 As shown, the method includes:

[0049] Step 101: Receive the first signaling sent by the first function; the first signaling includes a first request.

[0050] In this embodiment, the first request represents a remote assistance request initiated by a first terminal, which can be understood as the calling party, i.e., the party being assisted (hereinafter referred to as the assisted party). Here, the first function represents a Session Initiation Protocol (SIP) signaling server, and the service platform represents a media capability platform. That is, the media capability platform receives the first signaling sent by the SIP signaling server, which includes the remote assistance request initiated by the first terminal.

[0051] Here, the primary function is the SIP signaling server, which can be developed using the C++ language. The SIP signaling server is mainly responsible for the interaction between SIP signaling and Hypertext Transfer Protocol (HTTP) requests. The business platform, or media capability platform, can also be developed using the C++ language. The media capability platform is mainly responsible for receiving and pushing media streams and providing streaming addresses.

[0052] In practical applications, when a native call connection is established between the first terminal and the second terminal, a video call service is triggered during the native call, such as the video call service in a new call using 5G (5th Generation Mobile Communication Technology). After the video call connection is established, the first function sends a first signaling message to the service platform to initiate a remote assistance request to the service platform through the first signaling message.

[0053] Based on this, in one embodiment, receiving the first signaling sent by the first function includes: receiving the first signaling sent by the first function during a video call between the first terminal and the second terminal; wherein the video call is triggered by a native call between the first terminal and the second terminal.

[0054] Here, the second terminal can be understood as the called party, i.e., the party providing assistance (referred to as the assisting party). In this embodiment, the first terminal first initiates a native call request to the second terminal. After the second terminal agrees to the request, a native call connection is established between the first terminal and the second terminal. Next, the user of the first terminal makes a video call through the native call on the mobile phone. That is, the video call is triggered based on the native call between the first terminal and the second terminal, and remote assistance services are implemented during the video call. For example, remote assistance services are implemented in the 5G new call scenario without the need to install any APP, which lowers the user's usage threshold.

[0055] In practical applications, the first signaling sent by the first function to the business platform can be SIP signaling. SIP signaling includes remote assistance requests. In other words, the first function sends remote assistance requests to the business platform in the form of SIP signaling.

[0056] It should be noted that when a user on the first terminal initiates a video call via the native call function on their mobile phone, it triggers the core network equipment to send SIP signaling to the first function. The first function then forwards the SIP signaling to the service platform. This core network equipment may include the IP Multimedia Subsystem (IMS). Therefore, the first function, i.e., the SIP signaling server, acts as a signaling relay station. This is because the core network equipment uses SIP signaling communication, while the service platform uses HTTP communication. Thus, the first function, i.e., the SIP signaling server, needs to act as a signaling relay station to enable the interaction between SIP signaling and HTTP requests.

[0057] Step 102: In response to the first request, obtain the first media stream.

[0058] In this embodiment of the application, the first media stream is provided by the first terminal, wherein the first media stream includes an audio stream and a video stream provided by the first terminal, that is, an audio and video stream provided by the first terminal.

[0059] In practical applications, the business platform can obtain the first media stream based on the first information sent by the first function.

[0060] Based on this, in one embodiment, the step of obtaining the first media stream in response to the first request includes: in response to the first request, determining whether first information sent by the first function has been received; the first information represents a notification message notifying the service platform to receive the first media stream; and if it is determined that the first information sent by the first function has been received, obtaining the first media stream.

[0061] In one embodiment, determining whether the first information sent by the first function is received includes: if the first function and the service platform successfully negotiate the first signaling, determining that the first information sent by the first function has been received.

[0062] In practical applications, after receiving the first signaling, the service platform can negotiate the first signaling with the first function. If the negotiation between the first function and the service platform is successful, the first function will inform the service platform to prepare to receive the first media stream pushed by the core network equipment. That is, the first function will send the first information to the service platform, which represents a notification message to the service platform to receive the first media stream. At this time, the service platform begins to prepare to receive the first media stream.

[0063] Here, in one embodiment, the step of obtaining the first media stream when it is determined that the first information sent by the first function has been received includes: obtaining the first media stream pushed by the core network device when it is determined that the first information sent by the first function has been received.

[0064] In one embodiment, after the service platform acquires the first media stream, the method further includes: sending a confirmation message to the first function regarding the acquisition of the first media stream.

[0065] In practical applications, while the service platform receives the first media stream pushed by the core network device (i.e., the first terminal provided by the calling party), it may also receive the media stream pushed by the core network device (i.e., the second terminal provided by the called party). However, during remote assistance services, the calling party only needs to receive the media stream it is assisting and does not need to receive the media stream provided by the called party. Therefore, after receiving the media stream provided by the called party, the service platform will discard the media stream provided by the called party.

[0066] Based on this, in one embodiment, the method further includes: acquiring a third media stream when acquiring the first media stream; and discarding the third media stream if it is detected that the third media stream is provided by the second terminal.

[0067] In this embodiment of the application, the third media stream represents the media stream provided by the second terminal, i.e., the called party.

[0068] Step 103: Generate a streaming address and send the streaming address to the second function, so that the second function can obtain the first media stream based on the streaming address and edit the first media stream to obtain the second media stream.

[0069] In this embodiment, the second function is configured on the PC of the second terminal. The second function represents a remote assistance module, and the PC of the second terminal includes, but is not limited to, desktop computers, laptops, etc. Here, a call service connection is established between the first terminal and the second terminal; that is, a native call connection is established between the mobile phone of the first terminal and the mobile phone of the second terminal.

[0070] Here, the second function, namely the remote assistance module, is set on the second terminal, namely the PC of the assisting party. It can be developed based on Python language, ffmpeg-Python library and pyqt5. It serves as the core module for implementing remote assistance service functions, and the remote assistance module is mainly responsible for the editing function of media stream.

[0071] In practical applications, the business platform carries the streaming address in the HTTP request and sends the streaming address to the second function through the HTTP request.

[0072] Based on this, in one embodiment, sending the pull address to the second function includes:

[0073] A second request is sent to the second function; the second request carries the pull stream address;

[0074] Sending the second request to the second function includes:

[0075] A second request is sent to the second function via a first communication connection; the first communication connection represents an HTTP connection.

[0076] Here, since the business platform and the second function use HTTP communication, when the business platform sends the streaming address to the second function, it needs to do so via HTTP communication, i.e., through an HTTP connection established between the business platform and the second function. The streaming address can be carried in a second request, which represents an HTTP request.

[0077] In practical applications, after obtaining the first media stream and editing it to obtain the second media stream, the second function can send the second media stream to the service platform, so that the service platform can push the second media stream back to the core network equipment.

[0078] Based on this, in one embodiment, after sending the streaming address to the second function so that the second function can obtain the first media stream based on the streaming address and edit the first media stream to obtain the second media stream, the method further includes:

[0079] Receive the second media stream sent by the second function; the second media stream represents a media stream used for remote assistance;

[0080] The second media stream is sent to a core network device so that the core network device provides the second media stream to the first terminal; the core network device includes IMS.

[0081] Accordingly, embodiments of this application also provide another media stream processing method, which is applied to the second function. Figure 2 This is a flowchart illustrating the media stream processing method according to an embodiment of this application. Figure 2 ;like Figure 2 As shown, the method includes:

[0082] Step 201: Receive the pull stream address sent by the business platform.

[0083] In this embodiment, the streaming address is generated by the service platform. The second function is set on the PC of the second terminal, wherein the second function represents the remote assistance function module, and the PC of the second terminal includes, but is not limited to, desktop computers, laptops, etc. The service platform represents the media capability platform. The service platform, i.e., the media capability platform, can be developed based on the C++ language, and the media capability platform is mainly responsible for the functions of receiving and pushing media streams and providing streaming addresses.

[0084] Here, the second function, namely the remote assistance module, is set on the second terminal, namely the PC of the assisting party. It can be developed based on Python language, ffmpeg-Python library and pyqt5. It serves as the core module for implementing remote assistance service functions, and the remote assistance module is mainly responsible for the editing function of media stream.

[0085] In practical applications, the business platform carries the streaming address in the HTTP request and sends the streaming address to the second function through the HTTP request.

[0086] Based on this, in one embodiment, the receiving service platform's pull address includes:

[0087] Receive a second request sent by the service platform; the second request carries the pull stream address;

[0088] The second request is parsed to obtain the streaming address;

[0089] The receiving of the second request sent by the service platform includes:

[0090] The system receives a second request from the business platform via a first communication connection; the first communication connection represents an HTTP connection.

[0091] Here, since the business platform and the second function use HTTP communication, when the business platform sends the streaming address to the second function, it needs to send the second request to the second function through an HTTP connection established between the business platform and the second function. Upon receiving the second request, the second function parses it to obtain the streaming address. The streaming address is carried in the second request, which represents an HTTP request.

[0092] Step 202: Obtain the first media stream based on the pull address, and edit the first media stream to obtain the second media stream.

[0093] In this embodiment, the first media stream is provided by the first terminal, and the first media stream is obtained by the service platform in response to a first request, whereby the first request represents a remote assistance request initiated by the first terminal. Furthermore, a call service connection is established between the first terminal and the second terminal; that is, a native call connection is established between the mobile devices of the first terminal and the second terminal.

[0094] Here, the first terminal can be understood as the calling party, that is, the party being assisted (referred to as the assisted party), and the second terminal can be understood as the called party, that is, the party providing assistance (referred to as the assisting party).

[0095] In practical applications, when the service platform and the second function successfully negotiate the pull stream address, the second function obtains the first media stream sent by the service platform. This first media stream is pushed to the service platform by the core network equipment, and it is the media stream provided by the first terminal, i.e., the calling party.

[0096] Based on this, in one embodiment, obtaining the first media stream based on the pull address includes:

[0097] If the business platform and the second function successfully negotiate the streaming address, a third request is sent to the business platform; the third request is used to request the acquisition of the first media stream.

[0098] Receive the first media stream sent by the service platform in response to the third request.

[0099] Here, after receiving the streaming address sent by the business platform, the second function can negotiate with the business platform regarding the streaming address. If the negotiation between the business platform and the second function regarding the streaming address is successful, the second function sends a request to the business platform to obtain the first media stream (corresponding to the aforementioned third request). After receiving the third request, the business platform responds to the third request and sends the first media stream to the second function.

[0100] In practical applications, the second function can obtain the first media stream through a connection using the Real Time Streaming Protocol (RTSP).

[0101] Based on this, in one embodiment, obtaining the first media stream based on the pull address includes:

[0102] A fourth request is sent to the service platform corresponding to the streaming address; the fourth request is used to request the establishment of a second communication connection; the second communication connection represents a real-time streaming protocol connection.

[0103] The first media stream is obtained through the second communication connection.

[0104] In practical applications, in one embodiment, editing the first media stream to obtain a second media stream includes one or more of the following:

[0105] While the first media stream is in an encoded state, a decoding operation is performed on the first media stream to obtain the second media stream;

[0106] The first media stream is frozen to obtain the second media stream;

[0107] The first media stream is marked to obtain the second media stream.

[0108] Here, while the first media stream is in an encoded state, it can be decoded using the ffmpeg-Python library to obtain the second media stream. For example, if the second media stream is a video stream, the image format of the decoded video stream is converted. For instance, the image format of the video stream is converted from opecv to pixmap, and the converted video stream is played in real time. For screen freezing, a one-click screen freezing function can be implemented by pressing a button to stop updating. Marking the first media stream involves adding various markers at corresponding positions within the first media stream. For instance, this can be done by manually drawing or adding serial numbers at the corresponding positions within the first media stream.

[0109] In practical applications, after obtaining the first media stream and editing it to obtain the second media stream, the second function can send the second media stream to the service platform, so that the service platform can push the second media stream back to the core network equipment.

[0110] Based on this, in one embodiment, after editing the first media stream to obtain the second media stream, the method further includes:

[0111] The second media stream is sent to the service platform, so that the service platform sends the second media stream to the core network equipment, and the core network equipment provides the second media stream to the first terminal.

[0112] The core network equipment includes IMS, and the second media stream represents a media stream used for remote assistance.

[0113] This application also provides another media stream processing method, which is an interaction method between a business platform and a second function. Figure 3 This is a flowchart illustrating the media stream processing method according to an embodiment of this application. Figure 3 ;like Figure 3 As shown, the method includes:

[0114] Step 301: The service platform receives the first signaling sent by the first function; the first signaling includes a first request.

[0115] In this embodiment of the application, the first request represents a remote assistance request initiated by the first terminal.

[0116] Step 302: The business platform responds to the first request and obtains the first media stream.

[0117] In this embodiment of the application, the first media stream is provided by the first terminal.

[0118] Step 303: The business platform generates a streaming address and sends the streaming address to the second function.

[0119] In this embodiment of the application, the second function is set on the PC side of the second terminal, and a call service connection is established between the first terminal and the second terminal.

[0120] Step 304: The second function is to receive the pull stream address sent by the service platform.

[0121] Step 305: The second function obtains the first media stream based on the pull address, and edits the first media stream to obtain the second media stream.

[0122] It should be noted that the specific processing procedures for media stream processing completed by the business platform and the second function have been detailed above and will not be repeated here.

[0123] By adopting the technical solution of this application embodiment, the second function is set on the PC side of the second terminal. In this way, the first media stream provided by the first terminal is forwarded to the PC side of the second terminal, and then the PC side of the second terminal edits the first media stream to obtain the second media stream. Thus, no app needs to be installed, and the remote assistance service function can be realized simply by using the call service. This lowers the user's usage threshold, avoids the need to use an app to provide remote assistance services, and reduces the usage cost of the first terminal. This makes it more convenient and faster to provide remote assistance services to the first terminal users. At the same time, by setting the streaming editing function on the PC side of the second terminal, the performance requirements of the second terminal are reduced.

[0124] The present application will be described below with reference to application examples.

[0125] To address the aforementioned issues with video call remote assistance implementation methods in related technologies, this application provides a remote assistance service implemented under 5G new call technology. This service initiates a video call within the native call function of the mobile phone, collecting audio and video streams (corresponding to the aforementioned first media stream). The audio and video streams collected by the mobile phone (corresponding to the aforementioned first terminal) are forwarded to the PC at the other end (corresponding to the aforementioned second terminal). The PC then edits the audio and video streams to obtain the edited audio and video stream (corresponding to the aforementioned second media stream), which is then pushed to the user's mobile phone (corresponding to the aforementioned first terminal). This avoids the need for an app to provide remote assistance services, thus providing users with more convenient and faster remote assistance services.

[0126] The remote screen-freezing video assistance solution based on 5G new calls proposed in this application mainly involves three modules: a SIP signaling server (corresponding to the aforementioned first function), a media capability platform (corresponding to the aforementioned service platform), and a remote assistance function module (i.e., a stream editing function module, corresponding to the aforementioned second function). This video assistance solution primarily initiates a video call via the mobile phone's native call. After SIP signaling negotiation through the SIP signaling server, the audio and video streams are pushed to a designated address of the media capability platform. Upon receiving the audio and video streams, the media capability platform generates a pull address to provide to the remote assistance function module for pull and stream editing. The edited audio and video streams are then pushed back to the media capability platform, which then forwards them to the receiving end (corresponding to the aforementioned first terminal). The functions of each module are described below.

[0127] SIP Signaling Server: Developed in C++, this server is responsible for the interaction between SIP signaling and HTTP requests. Since the media capability platform and remote assistance module use HTTP communication, while IMS (corresponding to the aforementioned core network equipment) uses SIP signaling communication, the SIP signaling server is needed as a signaling relay station. In addition to receiving, parsing, and responding to SIP signaling as specified in the basic CM-IMS session initiation protocol, it also includes sending HTTP requests to the media capability platform and remote assistance module after parsing the received SIP signaling.

[0128] Media Capability Platform: Developed in C++, it is responsible for receiving and pushing audio and video streams and providing pull addresses. It sends audio and video streams pushed by IMS on demand, generates RTSP pull addresses, and forwards the data packets of the received audio and video streams to the remote assistance function module after negotiating through the RTSP protocol, so that the remote assistance function module can obtain the audio and video streams from the mobile terminal (corresponding to the aforementioned first terminal).

[0129] The remote assistance module, installed on the PC of the assisting party (corresponding to the aforementioned second terminal), is developed using Python, the ffmpeg-Python library, and PyQt5. As the core module for implementing remote assistance services, it provides media stream editing functions, such as RTSP streaming playback, screen freeze functionality, and tagging. Specifically, the RTSP streaming playback function negotiates with the streaming address generated in the media capability platform to receive audio and video streams. The ffmpeg-Python library decodes the audio and video streams into video frames, converts the decoded OPECV image format into pixmaps, and uses QLabel in PyQt5 to display the pixmaps on the application in real-time for real-time playback. A one-click screen freeze function is implemented by stopping the pixmap image format update with a button. Additionally, the QPainter module in PyQt5 implements tagging functionality, such as manual drawing and adding serial numbers.

[0130] Therefore, this application utilizes the 5G new call technology framework and relies on the native call functionality of the mobile phone to achieve remote assistance service. After a video call is established by triggering a connection through the native call, the audio and video streams provided by the caller can be pushed to the callee's host-side assistance software, i.e., the PC, by pushing the audio and video streams provided by the caller on demand. The PC can then perform operations such as freezing and annotation on the audio and video streams provided by the caller to complete the remote video assistance service function for the caller.

[0131] Figure 4 This is a schematic diagram of the first terminal and remote assistance function module according to an embodiment of this application, as shown below. Figure 4 As shown, the left figure is a schematic diagram of the first terminal, which in this application is a user-end mobile phone. This user-end mobile phone has a network cable interface, through which it can communicate with other devices and check the router status. The right figure is a schematic diagram of the remote assistance function module. The remote assistance function module is set on the expert-end host, that is, it can be set on the assisting party's PC. This expert-end host has a network cable interface, through which it can communicate with other devices and check the router status. The remote assistance function module can obtain the pull stream address and push the edited media stream back based on the push stream address. It should be noted that the media stream editing functions can include, for example, playback functions, screen freeze functions, and marking functions (such as manually drawing with a pen, adding serial numbers, adding text, etc.).

[0132] Figure 5 This is a flowchart illustrating the remote assistance service process according to an embodiment of this application, as shown below. Figure 5 As shown, the specific steps of the remote assistance service process in this application are as follows:

[0133] 1. When a mobile user (corresponding to the first terminal mentioned above) makes a video call, it triggers IMS to send SIP signaling to establish a connection.

[0134] When a mobile user makes a video call during a native call, IMS sends an INVITE request to the SIP signaling server. After parsing the INVITE request and obtaining the SIP signaling, the SIP signaling server successively replies to IMS with 100 Trying, 180 Ringing, etc., and informs the media capability platform to prepare to receive the media stream pushed by IMS (corresponding to the first media stream mentioned above). Finally, the SIP signaling server replies to IMS with 200 OK, completing the SIP signaling connection establishment process.

[0135] 2. The media capability platform generates the streaming address.

[0136] Since the caller only needs to obtain the media stream they are assisting during the remote assistance service, and does not need to obtain the media stream provided by the called party, the media capability platform will discard the media stream provided by the called party after receiving it. At the same time, it will receive the media stream provided by the caller and generate a pull stream address. The pull stream address and the edited media stream receiving address will be sent to the remote assistance function module via an HTTP request.

[0137] 3. The remote assistance module provides assistance services and pushes the stream.

[0138] The assisting party (corresponding to the aforementioned second terminal) pre-installs remote assistance function module software on the PC. After receiving the pull address, the remote assistance function module immediately sends an RTSP connection request to the pull address, establishes an RTSP connection, and receives the media stream. After receiving the media stream, it completes decoding and playback on the PC and completes the media stream editing function. The edited image is strung into a stream and sent to the designated push address, where the media capability platform completes the forwarding.

[0139] Figure 6 This is a schematic diagram of the media stream push process according to an embodiment of this application, such as... Figure 6As shown, taking video streams as an example, the calling party provides a video stream and uploads it to IMS. The stream is relayed through a SIP signaling server. IMS pushes the calling party's video stream to the media capability platform. It's important to note that as the video call is established, the called party's video stream is pushed to the media capability platform along with the calling party's. However, the media capability platform discards the called party's video stream and only pushes the calling party's. After receiving the video stream, the media capability platform generates a pull address. If the media capability platform and the remote assistance module successfully negotiate the pull address, the media capability platform pushes the video stream to the remote assistance module. The remote assistance module edits the video stream and then forwards the edited video stream completely through the media capability platform, ultimately pushing it to the calling party.

[0140] Compared with the methods of related technologies, the solution of this application has the following advantages:

[0141] (1) In response to the problem of remote assistance, this application adopts remote assistance based on the 5G new call scenario, that is, it proposes a video call remote assistance service based on native call using the 5G new call, which reduces the user's usage threshold.

[0142] (2) This application does not require the installation of any APP. It can realize the video call remote assistance function by using native calling. The installation of remote assistance function module and other tasks are all placed on the assisting party's side, which greatly reduces the usage cost of the assisted party and brings convenience to users. At the same time, by setting up the streaming editing function on the PC side of the assisting party, the problem of difficult user interaction in 5G new calls is solved.

[0143] To implement the media stream processing method on the service platform side of this application embodiment, this application embodiment also provides a media stream processing apparatus, which is installed on the service platform. Figure 7 This is a schematic diagram of the composition structure of the media stream processing device according to an embodiment of this application. Figure 1 ,like Figure 7 As shown, the device includes:

[0144] The first receiving unit 71 is configured to receive a first signaling sent by the first function; the first signaling includes a first request, which represents a remote assistance request initiated by the first terminal;

[0145] The first acquisition unit 72 is configured to acquire a first media stream in response to the first request; the first media stream is provided by the first terminal.

[0146] Generation unit 73 is used to generate pull address;

[0147] The first sending unit 74 is used to send the pull address to the second function, so that the second function can obtain the first media stream based on the pull address and edit the first media stream to obtain the second media stream; the second function is set on the PC of the second terminal, and a call service connection is established between the first terminal and the second terminal.

[0148] In one embodiment, the first receiving unit 71 is specifically used for:

[0149] During a video call between the first terminal and the second terminal, the first signaling sent by the first function is received;

[0150] The video call is triggered by a native call between the first terminal and the second terminal.

[0151] In one embodiment, the first acquisition unit 72 includes a determining subunit and an acquisition subunit; wherein,

[0152] The determining subunit is configured to, in response to the first request, determine whether it has received the first information sent by the first function; the first information represents a notification message notifying the service platform to receive the first media stream;

[0153] The acquisition subunit is used to acquire the first media stream when it is determined that the first information sent by the first function has been received.

[0154] In one embodiment, the determining subunit is specifically used for:

[0155] If the first function and the service platform successfully negotiate the first signaling, it is determined that the first information sent by the first function has been received.

[0156] In one embodiment, the first transmitting unit 74 is specifically used for:

[0157] Send a second request to the second function; the second request carries the pull stream address.

[0158] In one embodiment, the first transmitting unit 74 is further specifically used for:

[0159] A second request is sent to the second function via a first communication connection; the first communication connection represents an HTTP connection.

[0160] In one embodiment, the apparatus further includes: a third receiving unit and a second transmitting unit; wherein,

[0161] The third receiving unit is configured to receive the second media stream sent by the second function after the first sending unit 74 sends the pull address to the second function, so that the second function obtains the first media stream based on the pull address, edits the first media stream to obtain the second media stream; the second media stream represents a media stream used for remote assistance.

[0162] The second sending unit is configured to send the second media stream to a core network device, so that the core network device provides the second media stream to the first terminal; the core network device includes an IMS.

[0163] In one embodiment, the device further includes: a third acquisition unit and a discard unit; wherein,

[0164] The third acquisition unit is used to acquire the third media stream when the first acquisition unit 72 acquires the first media stream;

[0165] The discard unit is used to discard the third media stream when it is detected that the third media stream is provided by the second terminal.

[0166] In practical applications, the first receiving unit 71, the first acquiring unit 72, and the first sending unit 74 can be implemented by the communication interface in the media stream processing device, and the generating unit 73 can be implemented by the processor in the media stream processing device.

[0167] It should be noted that the media stream processing device provided in the above embodiments is only illustrated by the division of the above program modules when performing media stream processing. In actual applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the device can be divided into different program modules to complete all or part of the processing described above. In addition, the media stream processing device provided in the above embodiments and the media stream processing method embodiments on the service platform side belong to the same concept. For details of its specific implementation process, please refer to the media stream processing method embodiments on the service platform side, which will not be repeated here.

[0168] To implement the media stream processing method on the second functional side of this application embodiment, this application embodiment also provides another media stream processing apparatus, which is disposed on the second function. Figure 8 This is a schematic diagram of the composition structure of the media stream processing device according to an embodiment of this application. Figure 2 ,like Figure 8 As shown, the device includes:

[0169] The second receiving unit 81 is used to receive the pull address sent by the service platform; the pull address is generated by the service platform.

[0170] The second acquisition unit 82 is used to acquire the first media stream based on the pull address;

[0171] Editing unit 83 is used to edit the first media stream to obtain a second media stream; the first media stream is provided by the first terminal and is obtained by the service platform in response to a first request, the first request representing a remote assistance request initiated by the first terminal;

[0172] The second function is set on the PC side of the second terminal, and a call service connection is established between the first terminal and the second terminal.

[0173] In one embodiment, the second receiving unit 81 includes a receiving subunit and a parsing subunit; wherein,

[0174] The receiving subunit is used to receive a second request sent by the service platform; the second request carries the pull address;

[0175] The parsing subunit is used to parse the second request to obtain the streaming address;

[0176] Furthermore, the receiving subunit is specifically used for:

[0177] The system receives a second request from the business platform via a first communication connection; the first communication connection represents an HTTP connection.

[0178] In one embodiment, the second acquisition unit 82 is specifically used for:

[0179] If the business platform and the second function successfully negotiate the streaming address, a third request is sent to the business platform; the third request is used to request the acquisition of the first media stream.

[0180] Receive the first media stream sent by the service platform in response to the third request.

[0181] In one embodiment, the second acquisition unit 82 is further specifically used for:

[0182] A fourth request is sent to the service platform corresponding to the streaming address; the fourth request is used to request the establishment of a second communication connection; the second communication connection represents a real-time streaming protocol connection.

[0183] The first media stream is obtained through the second communication connection.

[0184] In one embodiment, the editing unit 83 is specifically used for one or more of the following:

[0185] While the first media stream is in an encoded state, a decoding operation is performed on the first media stream to obtain the second media stream;

[0186] The first media stream is frozen to obtain the second media stream;

[0187] The first media stream is marked to obtain the second media stream.

[0188] In one embodiment, the device further includes a third transmitting unit; wherein,

[0189] The third sending unit is used to edit the first media stream in the editing unit 83 to obtain the second media stream, and then send the second media stream to the service platform so that the service platform sends the second media stream to the core network equipment, and the core network equipment provides the second media stream to the first terminal.

[0190] The core network equipment includes IMS, and the second media stream represents a media stream used for remote assistance.

[0191] In practical applications, the second receiving unit 81 and the second acquiring unit 82 can be implemented by the communication interface in the media stream processing device, and the editing unit 83 can be implemented by the processor in the media stream processing device.

[0192] It should be noted that the media stream processing device provided in the above embodiments is only illustrated by the division of the above program modules when performing media stream processing. In actual applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the device can be divided into different program modules to complete all or part of the processing described above. In addition, the media stream processing device provided in the above embodiments and the media stream processing method embodiments on the second functional side belong to the same concept. For details of its implementation process, please refer to the media stream processing method embodiments on the second functional side, which will not be repeated here.

[0193] Based on the hardware implementation of the above program modules, and in order to implement the media stream processing method on the service platform side of this application embodiment, this application embodiment also provides a service platform. Figure 9 This is a schematic diagram of the hardware structure of the service platform according to an embodiment of this application, as shown below. Figure 9 As shown, the business platform 900 includes:

[0194] The first communication interface 901 is capable of exchanging information with the second function;

[0195] The first processor 902 is connected to the first communication interface 901 to enable information interaction with the second function. When running a computer program, it executes the methods provided by one or more technical solutions on the business platform side, and the computer program is stored on the first memory 903.

[0196] Specifically, the first communication interface 901 is used to receive a first signaling sent by a first function; the first signaling includes a first request, which represents a remote assistance request initiated by a first terminal; in response to the first request, a first media stream is obtained; the first media stream is provided by the first terminal;

[0197] The first processor 902 is used to generate pull stream addresses;

[0198] The first communication interface 901 is also used to send the pull address to the second function, so that the second function can obtain the first media stream based on the pull address and edit the first media stream to obtain the second media stream; the second function is set on the PC of the second terminal, and a call service connection is established between the first terminal and the second terminal.

[0199] In one embodiment, the first communication interface 901 is specifically used for:

[0200] During a video call between the first terminal and the second terminal, the first signaling sent by the first function is received;

[0201] The video call is triggered by a native call between the first terminal and the second terminal.

[0202] In one embodiment, the first communication interface 901 is specifically used for:

[0203] In response to the first request, determine whether the first information sent by the first function has been received; the first information represents a notification message notifying the service platform to receive the first media stream;

[0204] If it is determined that the first information sent by the first function has been received, the first media stream is acquired.

[0205] In one embodiment, the first communication interface 901 is specifically used for:

[0206] If the first function and the service platform successfully negotiate the first signaling, it is determined that the first information sent by the first function has been received.

[0207] In one embodiment, the first communication interface 901 is specifically used for:

[0208] A second request is sent to the second function; the second request carries the pull stream address;

[0209] The first communication interface 901 is also specifically used for:

[0210] A second request is sent to the second function via a first communication connection; the first communication connection represents an HTTP connection.

[0211] In one embodiment, the first communication interface 901 is further configured to receive the second media stream sent by the second function after the second function has sent the pull address to the second function so that the second function can obtain the first media stream based on the pull address and edit the first media stream to obtain the second media stream; the second media stream represents a media stream used for remote assistance.

[0212] The first communication interface 901 is further configured to send the second media stream to a core network device, so that the core network device provides the second media stream to the first terminal; the core network device includes IMS.

[0213] In one embodiment, the first communication interface 901 is further configured to acquire a third media stream when acquiring the first media stream;

[0214] The first processor 902 is further configured to discard the third media stream if it is detected that the third media stream is provided by the second terminal.

[0215] It should be noted that the specific processing procedures of the first communication interface 901 and the first processor 902 can be understood by referring to the media stream processing method on the service platform side mentioned above.

[0216] Of course, in practical applications, the various components in the business platform 900 are coupled together through the first bus system 904. It can be understood that the first bus system 904 is used to implement communication between these components. In addition to the data bus, the first bus system 904 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 9 The general designated all buses as the first bus system 904.

[0217] The first memory 903 in this embodiment is used to store various types of data to support the operation of the service platform 900. Examples of such data include any computer program used to operate on the service platform 900.

[0218] The media stream processing method on the service platform side disclosed in the above embodiments of this application can be applied to the first processor 902, or implemented by the first processor 902. The first processor 902 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above-mentioned media stream processing method on the service platform side can be completed by the integrated logic circuit of the hardware or by instructions in the form of software in the first processor 902. The first processor 902 may be a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The first processor 902 can implement or execute the media stream processing methods, steps, and logic block diagrams on the service platform side disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the media stream processing method on the service platform side disclosed in the embodiments of this application can be directly reflected as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software module can be located in a storage medium, which is located in the first memory 903. The first processor 902 reads the information in the first memory 903 and, in conjunction with its hardware, completes the steps of the aforementioned media stream processing method on the service platform side.

[0219] In an exemplary embodiment, the service platform 900 may be implemented by one or more application-specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), field-programmable gate arrays (FPGAs), general-purpose processors, controllers, microcontrollers (MCUs), microprocessors, or other electronic components to execute the aforementioned media stream processing method on the service platform side.

[0220] Based on the hardware implementation of the above program modules, and in order to implement the media stream processing method on the second functional side of this application embodiment, this application embodiment also provides a second function. Figure 10 This is a schematic diagram of the hardware composition structure of the second function in an embodiment of this application, as shown below. Figure 10 As shown, the second function 1000 includes:

[0221] The second communication interface 1001 is capable of exchanging information with the business platform;

[0222] The second processor 1002 is connected to the second communication interface 1001 to enable information interaction with the business platform. When running a computer program, it executes the methods provided by one or more technical solutions of the second functional side, and the computer program is stored on the second memory 1003.

[0223] Specifically, the second communication interface 1001 is used to receive a streaming address sent by the service platform; the streaming address is generated by the service platform; and a first media stream is obtained based on the streaming address.

[0224] The second processor 1002 is used to edit the first media stream to obtain a second media stream; the first media stream is provided by the first terminal and is obtained by the service platform in response to a first request, the first request representing a remote assistance request initiated by the first terminal;

[0225] The second function is set on the PC side of the second terminal, and a call service connection is established between the first terminal and the second terminal.

[0226] In one embodiment, the second communication interface 1001 is specifically used for:

[0227] Receive a second request sent by the service platform; the second request carries the pull stream address;

[0228] The second request is parsed to obtain the streaming address;

[0229] Furthermore, the second communication interface 1001 is specifically used for:

[0230] The system receives a second request from the business platform via a first communication connection; the first communication connection represents an HTTP connection.

[0231] In one embodiment, the second communication interface 1001 is specifically used for:

[0232] If the business platform and the second function successfully negotiate the streaming address, a third request is sent to the business platform; the third request is used to request the acquisition of the first media stream.

[0233] Receive the first media stream sent by the service platform in response to the third request.

[0234] In one embodiment, the second communication interface 1001 is specifically used for:

[0235] A fourth request is sent to the service platform corresponding to the streaming address; the fourth request is used to request the establishment of a second communication connection; the second communication connection represents a real-time streaming protocol connection.

[0236] The first media stream is obtained through the second communication connection.

[0237] In one embodiment, the second processor 1002 is specifically used for one or more of the following:

[0238] While the first media stream is in an encoded state, a decoding operation is performed on the first media stream to obtain the second media stream;

[0239] The first media stream is frozen to obtain the second media stream;

[0240] The first media stream is marked to obtain the second media stream.

[0241] In one embodiment, the second communication interface 1001 is further configured to send the second media stream to the service platform after the second processor 1002 edits the first media stream to obtain the second media stream, so that the service platform sends the second media stream to the core network device and provides the second media stream to the first terminal through the core network device;

[0242] The core network equipment includes IMS, and the second media stream represents a media stream used for remote assistance.

[0243] It should be noted that the specific processing procedure of the second communication interface 1001 can be understood by referring to the media stream processing method of the second functional side mentioned above.

[0244] Of course, in practical applications, the various components in the second function 1000 are coupled together through the second bus system 1004. It can be understood that the second bus system 1004 is used to implement communication between these components. In addition to a data bus, the second bus system 1004 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 10 The general designated all buses as the second bus system 1004.

[0245] The second memory 1003 in this embodiment is used to store various types of data to support the operation of the second function 1000. Examples of such data include any computer program used to operate on the second function 1000.

[0246] The media stream processing method for the second functional side disclosed in the above embodiments of this application can be applied to the second processor 1002, or implemented by the second processor 1002. The second processor 1002 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the media stream processing method for the second functional side can be completed by the integrated logic circuit of the hardware or by instructions in the form of software in the second processor 1002. The second processor 1002 may be a general-purpose processor, a DSP, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The second processor 1002 can implement or execute the media stream processing methods, steps, and logic block diagrams for the second functional side disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the media stream processing method for the second functional side disclosed in the embodiments of this application can be directly reflected as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software module can be located in a storage medium, which is located in the second memory 1003. The second processor 1002 reads the information in the second memory 1003 and, in conjunction with its hardware, completes the steps of the aforementioned media stream processing method on the second functional side.

[0247] In an exemplary embodiment, the second function 1000 may be implemented by one or more ASICs, DSPs, PLDs, CPLDs, FPGAs, general-purpose processors, controllers, MCUs, microprocessors, or other electronic components to perform the media stream processing method of the aforementioned second function side.

[0248] It is understood that the memory (including the first memory 903 and the second memory 1003) in the embodiments of this application can be volatile memory or non-volatile memory, or both. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), magnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disc, or compact disc read-only memory (CD-ROM); magnetic surface memory can be disk storage or magnetic tape storage. Volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), SyncLink Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM).The memories described in the embodiments of this application are intended to include, but are not limited to, these and any other suitable types of memories.

[0249] To implement the media stream processing method of this application embodiment, this application embodiment also provides a media stream processing system. Figure 11 This is a schematic diagram of the composition structure of the media stream processing system according to an embodiment of this application, as shown below. Figure 11 As shown, the system includes: a business platform 900 and a second function 1000; wherein,

[0250] The service platform 900 is configured to receive a first signaling sent by a first function, the first signaling including a first request; in response to the first request, obtain a first media stream; generate a streaming address, and send the streaming address to the second function 1000;

[0251] The second function 1000 is used to receive the pull address sent by the service platform 900; obtain the first media stream based on the pull address, and edit the first media stream to obtain the second media stream.

[0252] Here, the first request represents a remote assistance request initiated by the first terminal; the first media stream is provided by the first terminal; the second function is set on the PC of the second terminal, and a call service connection is established between the first terminal and the second terminal.

[0253] It should be noted that the specific processing procedures for media stream processing by the business platform 900 and the second function 1000 have been detailed above and will not be repeated here.

[0254] In an exemplary embodiment, this application also provides a storage medium, namely a computer storage medium, specifically a computer-readable storage medium. For example, it may include a first memory 903 storing a computer program, which can be executed by a first processor 902 in a service platform 900 to complete the steps of a media stream processing method on the service platform side. Alternatively, it may include a second memory 1003 storing a computer program, which can be executed by a second processor 1002 in a second function 1000 to complete the steps of a media stream processing method on the second function side. The computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disc, or CD-ROM.

[0255] In an exemplary embodiment, this application also provides a computer program product, including a computer program that can be executed by a first processor 902 in a service platform 900 to complete the steps of a media stream processing method on the service platform side, or the computer program can be executed by a second processor 1002 in a second function 1000 to complete the steps of a media stream processing method on the second function side.

[0256] It should be noted that terms such as "first," "second," and "third" are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.

[0257] Furthermore, the technical solutions described in the embodiments of this application can be combined arbitrarily without conflict.

[0258] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A media stream processing method, characterized by, The method is applied to a service platform, and comprises the following steps: receiving first signaling sent by a first function entity; the first signaling comprises a first request, and the first request represents a remote assistance request initiated by a first terminal; the first function entity represents a session initiation protocol (SIP) signaling server; in response to the first request, obtaining a first media stream; the first media stream is provided by the first terminal; generating a pull stream address, and sending the pull stream address to a second function entity, so that the second function entity sends a fourth request to the service platform corresponding to the pull stream address; the fourth request is used to request to establish a second communication connection; the second communication connection represents a real-time streaming protocol (RTSP) connection; the first media stream is obtained through the second communication connection, and the first media stream is edited to obtain a second media stream; the second function entity is arranged on a personal computer (PC) end of a second terminal; the second function entity represents a remote assistance function module; a connection of a call service is established between the first terminal and the second terminal.

2. The method of claim 1, wherein, The receiving first signaling sent by a first function entity comprises: receiving first signaling sent by a first function entity in a process of video call between the first terminal and the second terminal; wherein the video call is triggered by a native call between the first terminal and the second terminal.

3. The method of claim 1, wherein, The response to the first request to obtain a first media stream comprises: in response to the first request, determining whether first information sent by the first function entity is received; the first information represents a notification message for notifying the service platform to receive the first media stream; in a case where it is determined that the first information sent by the first function entity is received, obtaining the first media stream.

4. The method of claim 3, wherein, The determining whether the first information sent by the first function entity is received comprises: in a case where the first function entity and the service platform successfully negotiate the first signaling, it is determined that the first information sent by the first function entity is received.

5. The method of claim 1, wherein, The sending the pull stream address to the second function entity comprises: sending a second request to the second function entity; the second request carries the pull stream address; The sending the second request to the second function entity comprises: sending a second request to the second function entity through a first communication connection; the first communication connection represents a hypertext transfer protocol (HTTP) connection.

6. The method of claim 1, wherein, After the sending the pull stream address to the second function entity, so that the second function entity obtains the first media stream based on the pull stream address, and edits the first media stream to obtain a second media stream, the method further comprises: receiving the second media stream sent by the second function entity; the second media stream represents a media stream for remote assistance; sending the second media stream to a core network device, so that the core network device provides the second media stream to the first terminal; the core network device comprises an IP multimedia subsystem (IMS).

7. The method of claim 1, wherein, The method further comprises: obtaining a third media stream when the first media stream is obtained; In a case where it is detected that the third media stream is provided by the second terminal, the third media stream is discarded.

8. A media stream processing method, comprising: The method applied to the second function entity comprises: receiving a pull stream address sent by a service platform; the pull stream address is generated by the service platform; based on the pull stream address, acquiring a first media stream and editing the first media stream to obtain a second media stream; the first media stream is provided by a first terminal, and the first media stream is acquired by the service platform in response to a first request; the first request represents a remote assistance request initiated by the first terminal; wherein the second function entity is arranged on a personal computer (PC) end of the second terminal, and the second function entity represents a remote assistance function module; a connection of a call service is established between the first terminal and the second terminal; wherein the acquisition of the first media stream based on the pull stream address comprises: sending a fourth request to the service platform corresponding to the pull stream address; the fourth request is used to request the establishment of a second communication connection; the second communication connection represents a real-time streaming protocol connection; acquiring the first media stream through the second communication connection.

9. The method of claim 8, wherein, The receiving of the pull stream address sent by the service platform comprises: receiving a second request sent by the service platform; the second request carries the pull stream address; parsing the second request to obtain the pull stream address; The receiving of the second request sent by the service platform comprises: receiving a second request sent by the service platform through a first communication connection; the first communication connection represents a hypertext transfer protocol (HTTP) connection.

10. The method of claim 8, wherein, The acquisition of the first media stream based on the pull stream address comprises: in a case where the service platform and the second function entity successfully negotiate for the pull stream address, sending a third request to the service platform; the third request is used to request the acquisition of the first media stream; receiving the first media stream sent by the service platform in response to the third request.

11. The method of claim 8, wherein, The editing of the first media stream to obtain the second media stream comprises one or more of the following: in a case where the first media stream is in an encoded state, performing a decoding operation on the first media stream to obtain the second media stream; performing a freeze operation on the first media stream to obtain the second media stream; performing a marking operation on the first media stream to obtain the second media stream.

12. The method of claim 8, wherein, After the editing of the first media stream to obtain the second media stream, the method further comprises: sending the second media stream to the service platform, so that the service platform sends the second media stream to a core network device, and the core network device provides the second media stream to the first terminal; wherein the core network device comprises an IP multimedia subsystem (IMS), and the second media stream represents a media stream for remote assistance.

13. A media stream processing apparatus, characterized by, The device applied to a service platform comprises: a first receiving unit configured to receive a first signaling sent by a first function entity; the first signaling comprises a first request representing a remote assistance request initiated by a first terminal, and the first function entity represents a session initiation protocol (SIP) signaling server; The first acquisition unit is configured to acquire a first media stream in response to the first request; the first media stream is provided by the first terminal. The generation unit is used to generate the pull address; The first sending unit is used to send the streaming address to the second functional entity, so that the second functional entity sends a fourth request to the service platform corresponding to the streaming address; the fourth request is used to request the establishment of a second communication connection; the second communication connection represents a real-time streaming protocol connection; the first media stream is obtained through the second communication connection, and the first media stream is edited to obtain a second media stream; the second functional entity is set on the personal computer PC of the second terminal, and the second functional entity represents a remote assistance function module, and a call service connection is established between the first terminal and the second terminal.

14. A media stream processing apparatus, characterized by, Applied to a second functional entity, the device includes: The second receiving unit is used to receive the pull address sent by the service platform; the pull address is generated by the service platform. The second acquisition unit is used to acquire the first media stream based on the pull address; An editing unit is used to edit the first media stream to obtain a second media stream; the first media stream is provided by a first terminal and is obtained by the service platform in response to a first request, wherein the first request represents a remote assistance request initiated by the first terminal; The second functional entity is set on the personal computer PC of the second terminal, and the second functional entity represents the remote assistance function module. A call service connection is established between the first terminal and the second terminal. The second acquisition unit is specifically used for: A fourth request is sent to the service platform corresponding to the streaming address; the fourth request is used to request the establishment of a second communication connection; the second communication connection represents a real-time streaming protocol connection. The first media stream is obtained through the second communication connection.

15. A service platform, characterized in that include: A first processor and a first memory for storing computer programs capable of running on the first processor; Wherein, when the first processor is used to run the computer program, it performs the steps of the method according to any one of claims 1 to 7.

16. A second functional entity, characterized in that include: A second processor and a second memory for storing computer programs capable of running on the second processor; Wherein, when the second processor is used to run the computer program, it performs the steps of the method according to any one of claims 8 to 12.

17. A storage medium having stored thereon a computer program, characterized in that When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 7, or the steps of the method according to any one of claims 8 to 12.

18. A computer program product comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 7, or the steps of the method according to any one of claims 8 to 12.

Citation Information

Patent Citations

  • Remote assistance method, terminal equipment and readable storage medium

    CN111464787A

  • Terminal visualization remote assistance method, electronic equipment and storage medium

    CN116938891A