Conference recording cross-terminal synchronization control method and system
Patent Information
- Application Number
- CN202611406781.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-09-11
- Publication Date
- 2026-10-16
AI Technical Summary
[0004]现有技术在处理移动控制端与桌面录音端之间的录音不同步时,通常采用重新发送控制指令或者重新获取录音状态的方式,但无法判断出现不同步是因为指令传输较慢,还是两端实际处理录音操作的时间已经产生较大差异,因此难以针对不同情况选择合适的同步处理方式
1、本发明通过分别计算控制信令的信令传递时间和跨端录音同步偏移量,能够区分由指令传输延迟造成的时间差与桌面录音端、移动控制端实际处理时间产生的不同步,避免仅根据单一时间差判断录音状态异常,进一步根据录音状态变化确定状态同步风险量,能够判断当前时间偏移对录音状态产生的实际影响。
Smart Images

Figure CN122933299A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of synchronization control technology, specifically to a cross-end synchronization control method and system for conference recording. Background Technology
[0002] In scenarios such as conference rooms, training rooms, review rooms, and remote conferences, desktop computers are typically connected to microphones, sound cards, and other devices for recording. Participants can remotely view and control the recording process using mobile devices such as smartphones and tablets. Control operations such as recording preparation, starting recording, and stopping recording generated by the mobile terminal need to be sent to the desktop computer via a signaling server. After completing the corresponding recording processing, the desktop computer then sends the recording status and processing results back to the mobile terminal.
[0003] Because the transmission and processing of control signaling between the mobile terminal, the signaling server, and the desktop computer takes time, even if the recording control process is normal, the time it takes for the mobile terminal and the desktop computer to complete the same control operation may differ. When there are delays in network transmission, signaling server processing, or terminal processing, this time difference may further increase, resulting in situations where the desktop computer has stopped recording while the mobile terminal still shows that recording is in progress, or the desktop computer has entered the saving state while the mobile terminal still shows the previous recording state.
[0004] Existing technologies typically address recording asynchrony between mobile control terminals and desktop recording terminals by resending control commands or re-acquiring recording status. However, they cannot determine whether the asynchrony is due to slow command transmission or significant differences in the actual recording processing time between the two ends. Therefore, it is difficult to select the appropriate synchronization method for different situations. Summary of the Invention
[0005] To achieve the above objectives, the present invention provides the following technical solution: A method for cross-end synchronization control of conference recording, the method comprising: S1: Establish signaling connections between the desktop recording terminal, multiple mobile control terminals and the signaling server; establish a recording session and session identifier for the current meeting; collect recording status, control signaling and corresponding time information of each terminal; and form a cross-terminal status dataset for meeting recording. S2: Based on the conference recording cross-end status dataset, determine the actual completion time difference of the same control signal between the desktop recording terminal and the mobile control terminal, and calculate the signal transmission time and cross-end recording synchronization offset. S3: Compare the signaling transmission time and the cross-end recording synchronization offset with the corresponding thresholds respectively to determine the signaling transmission status and cross-end recording synchronization status corresponding to the current control signaling. When the cross-end recording synchronization status is abnormal, determine the status synchronization risk amount based on the recording status and corresponding time information in the conference recording cross-end status dataset. S4: Determine the synchronization processing method corresponding to the current control signaling based on the signaling transmission status, cross-end recording synchronization status, and status synchronization risk level.
[0006] Furthermore, based on the conference recording cross-terminal status dataset, the actual completion time difference for the same control signaling between the desktop recording terminal and the mobile control terminal is determined, including: From the conference recording cross-terminal status dataset, obtain the first completion time point and the second completion time point when the same control signaling in the same recording session is processed on the desktop recording terminal and the mobile control terminal, respectively. Based on the time difference between the first completion time point and the second completion time point, the actual completion time difference between the same control signaling at the desktop recording terminal and the mobile control terminal is determined.
[0007] Furthermore, the signaling delivery time and cross-end recording synchronization offset are calculated, including: The system obtains the first time when the desktop recording terminal or mobile control terminal sends the same control signaling to the signaling server, and the second time when the other end receives the same control signaling forwarded by the signaling server. The system then determines the signaling transmission time corresponding to the same control signaling based on the time difference between the first time and the second time. The difference between the actual completion time difference and the signaling transmission time is calculated, and the portion of the actual completion time difference that exceeds the signaling transmission time is determined as the cross-end recording synchronization offset corresponding to the same control signaling.
[0008] Furthermore, determine the signaling transmission status and cross-end recording synchronization status corresponding to the current control signaling, including: Obtain a preset signaling transmission time threshold and a cross-end recording synchronization offset threshold, and compare the signaling transmission time with the signaling transmission time threshold and the cross-end recording synchronization offset with the cross-end recording synchronization offset threshold, respectively. When the signaling transmission time does not exceed the signaling transmission time threshold and the cross-end recording synchronization offset does not exceed the cross-end recording synchronization offset threshold, it is determined that the signaling transmission status is normal and the current cross-end recording synchronization status is normal. When the signaling transmission time exceeds the signaling transmission time threshold and the cross-end recording synchronization offset does not exceed the cross-end recording synchronization offset threshold, it is determined that there is a signaling transmission abnormality and the current cross-end recording synchronization status is normal. When the signaling transmission time does not exceed the signaling transmission time threshold and the cross-end recording synchronization offset exceeds the cross-end recording synchronization offset threshold, it is determined that the signaling transmission status is normal and there is a cross-end recording synchronization abnormality. When the signaling transmission time exceeds the signaling transmission time threshold and the cross-end recording synchronization offset exceeds the cross-end recording synchronization offset threshold, it is determined that there is both a signaling transmission abnormality and a cross-end recording synchronization abnormality.
[0009] Furthermore, based on the recording status and corresponding time information in the cross-end status dataset of the meeting recordings, the status synchronization risk is determined, including: In response to the current situation of cross-end recording synchronization anomaly, the recording status and corresponding time information of the current recording session are obtained from the conference recording cross-end status dataset. The recording status time sequence is formed according to the actual occurrence order of the recording status, and the state boundary time point is determined according to the actual change time between adjacent recording statuses. Based on the positions of the first completion time point and the second completion time point in the recording state time sequence, determine the number of state boundaries between them, and calculate the amount of time to cross the state boundaries based on the time relationship between each state boundary time point and the first completion time point and the second completion time point. The degree of state crossing is determined based on the ratio of the time taken to cross the state boundary to the difference between the actual completion time; the state synchronization risk is calculated based on the number of state boundaries actually crossed between the first completion time point and the second completion time point, as well as the degree of state crossing.
[0010] Furthermore, based on the signaling transmission status, cross-end recording synchronization status, and status synchronization risk level corresponding to the current control signaling, the synchronization processing method corresponding to the current control signaling is determined, including: A preset state synchronization risk threshold is set. When the cross-end recording synchronization state is abnormal and the state synchronization risk does not exceed the state synchronization risk threshold, the first synchronization processing method is determined to be executed. When the cross-end recording synchronization status is abnormal and the status synchronization risk exceeds the status synchronization risk threshold, it is determined to execute the second synchronization processing method. When both the signaling transmission status and the cross-end recording synchronization status are abnormal, the third synchronization processing method is determined to be executed.
[0011] Furthermore, the first synchronization processing method includes: Obtain the recording status, status time information, and session identifier corresponding to the current recording session from the cross-platform status dataset of the meeting recording; The corresponding recording status is determined based on the session identifier, and the recording status and status time information are sent to the end with a different status, so that end can update the current recording status.
[0012] Furthermore, the second synchronization processing method includes: The desktop recording terminal or mobile control terminal sends a status query signal carrying a session identifier to the other end; Receive the real-time recording status and status time information returned by the other end, and determine the corresponding current recording status based on the session identifier; Update the current recording status to the real-time recording status.
[0013] Furthermore, the third synchronization processing method includes: Re-establish the signaling connection between the desktop recording terminal, the mobile control terminal, and the signaling server; After the signaling connection is successfully established, the first synchronization processing method or the second synchronization processing method is executed according to the state synchronization risk amount.
[0014] Furthermore, a cross-terminal synchronous control system for conference recording includes: The status acquisition module is used to establish signaling connections between the desktop recording terminal, multiple mobile control terminals and the signaling server, establish a recording session and session identifier for the current meeting, collect the recording status, control signaling and corresponding time information of each terminal, and form a cross-terminal status dataset of the meeting recording. The offset calculation module is used to determine the actual completion time difference of the same control signal between the desktop recording terminal and the mobile control terminal based on the conference recording cross-terminal status dataset, and to calculate the signal transmission time and cross-terminal recording synchronization offset. The risk analysis module is used to compare the signaling transmission time and the cross-end recording synchronization offset with the corresponding thresholds to determine the signaling transmission status and cross-end recording synchronization status corresponding to the current control signaling. When the cross-end recording synchronization status is abnormal, the module determines the status synchronization risk amount based on the recording status and corresponding time information in the conference recording cross-end status dataset. The synchronization processing module is used to determine the synchronization processing method corresponding to the current control signaling based on the signaling transmission status, cross-end recording synchronization status, and status synchronization risk level of the current control signaling.
[0015] This invention provides a cross-end synchronous control method and system for conference recording. It has the following beneficial effects: 1. By calculating the signaling transmission time of the control signaling and the cross-end recording synchronization offset separately, this invention can distinguish the time difference caused by the instruction transmission delay from the asynchrony caused by the actual processing time of the desktop recording terminal and the mobile control terminal. This avoids judging the recording status abnormality based solely on a single time difference. Furthermore, it determines the status synchronization risk based on the changes in the recording status and can determine the actual impact of the current time offset on the recording status.
[0016] 2. The present invention adopts different methods for synchronization processing based on the state synchronization risk: directly updating existing state information, querying the real-time recording status of the other end, and performing synchronization processing after restoring the signaling connection. This can reduce unnecessary state queries and control signaling interactions, and obtain more accurate recording status information when the synchronization risk is high. When both signaling transmission and cross-end recording synchronization are abnormal, the reliability of synchronization processing can be improved by restoring the signaling connection first and then performing synchronization processing. Attached Figure Description
[0017] Figure 1 A schematic diagram illustrating an optional implementation environment provided by an embodiment of the present invention; Figure 2 This is a flowchart illustrating a cross-terminal synchronous control method for conference recording according to the present invention. Figure 3 This is a schematic diagram of the structure of a cross-end synchronous control system for conference recording according to the present invention.
[0018] Figure label annotations: 101-Desktop recording terminal; 102-Mobile control terminal; 103-Signaling server terminal. Detailed Implementation
[0019] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0020] This disclosure provides a cross-terminal synchronous control method and system for conference recording, applicable to scenarios such as conference rooms, remote conference rooms, training rooms, and review rooms where audio acquisition requires fixed equipment, while allowing participants to remotely view or control the recording process via mobile communication terminals. In these scenarios, desktop computers are typically connected to audio acquisition devices such as microphones and sound cards to perform conference audio acquisition and real-time speech-to-text transcription; participants can remotely control or view the recording process of the desktop recording terminal via mobile control terminals such as mobile phones, tablets, mobile web pages, or mini-programs.
[0021] Reference Figure 1 , Figure 1 This is a schematic diagram of an optional implementation environment provided by an embodiment of the present disclosure. In an optional implementation environment, the system includes a mobile control terminal 102, a signaling server 103, and a desktop recording terminal 101. The mobile control terminal 102, the signaling server 103, and the desktop recording terminal 101 are respectively electronic devices capable of executing corresponding computer programs or software programs running on electronic devices.
[0022] In one optional embodiment, the mobile control terminal 102 can be a mobile phone, tablet computer, mobile web client, mini-program, or other mobile communication terminal, used to receive operations generated by the user during the meeting recording process and convert the operations into corresponding control signals; the mobile control terminal 102 is also used to receive and display the meeting recording status and real-time transcribed text, and can be used to perform operations such as switching transcription models and managing speaker information; the mobile control terminal 102 is also used to receive control signals, recording status, and processing results forwarded by the signaling server, and update the corresponding local recording status and processing status according to the received control signals, recording status, and processing results.
[0023] In one optional embodiment, the desktop recording terminal 101 can be a desktop computer running a conference recording application, used to connect to audio acquisition devices such as microphones and sound cards, and to perform operations such as recording preparation, audio acquisition, recording stop, recording saving, and real-time speech transcription according to the received control signals; the desktop recording terminal 101 is also used to perform corresponding recording processing according to the received control signals, and to generate recording status and processing results corresponding to the control signals; the desktop recording terminal 101 can also generate control signals according to the current recording processing needs, and record the processing status and processing time corresponding to the control signals.
[0024] In an optional embodiment, the signaling server 103 can be deployed on a local area network server, cloud server or other computing device with network communication capabilities, and is used to provide bidirectional signaling communication between the mobile control terminal 102 and the desktop recording terminal 101, and to receive, forward and process the control signaling generated by the mobile control terminal 102 and the desktop recording terminal 101, as well as the corresponding recording status, processing results and time information.
[0025] In an optional embodiment, a WebSocket signaling connection is established between the mobile control terminal 102 and the signaling server 103, and a WebSocket signaling connection is established between the desktop recording terminal 101 and the signaling server 103. No direct point-to-point communication connection is established between the mobile control terminal 102 and the desktop recording terminal 101. Control signaling and recording status information between the mobile control terminal 102 and the desktop recording terminal 101 are relayed through the signaling server 103. Both the mobile control terminal 102 and the desktop recording terminal 101 can send control signaling to the signaling server 103. The control signaling generated by the mobile control terminal 102 includes recording preparation signaling, recording start signaling, recording stop signaling, recording pause signaling, recording resume signaling, saving and ending signaling, and management signaling related to the transcription model and speaker information. The control signaling generated by the desktop recording terminal 101 is used to synchronize the recording processing results or status changes generated by the desktop recording terminal 101 to the relevant mobile control terminal 102.
[0026] In an optional embodiment, the information returned by the desktop recording terminal 101 to the signaling server 103 includes recording preparation completion information, recording start information, recording stop information, recording save result, permission error information, and processing results related to speaker management and transcription model switching. The signaling server 103 sends the information to the corresponding mobile control terminal 102 so that the relevant mobile control terminal can update its local recording status according to the processing result of the corresponding control signaling. For the same conference, multiple mobile control terminals 102 can simultaneously access the signaling server 103. The signaling server 103 establishes a conference-specific communication range based on the conference identifier corresponding to the conference, enabling multiple mobile control terminals 102 belonging to the same conference and the corresponding desktop recording terminal 101 to receive the recording status, control signaling, and processing results corresponding to the same conference. Different conferences are distinguished by corresponding conference identifiers to avoid confusion of recording status information between different conferences.
[0027] In an optional embodiment, the same desktop recording terminal 101 can also participate in the recording process of different meetings at different times. Therefore, the signaling server 103 can establish a device-level communication range according to the device identifier, so as to know the device recording status of the desktop recording terminal 101 before the mobile control terminal 102 enters the specific meeting; after entering the specific meeting, it can receive the recording status and other meeting-related information within the current meeting range according to the meeting identifier of the current meeting.
[0028] In the above implementation environment, the mobile control terminal 102 is mainly used to generate conference recording control operations and receive conference recording status information, the desktop recording terminal 101 is mainly used to perform actual audio acquisition and recording processing, and the signaling server terminal 103 is used to establish bidirectional signaling communication between the mobile control terminal 102 and the desktop recording terminal 101. Therefore, when the mobile control terminal 102, the signaling server terminal 103, and the desktop recording terminal 101 transmit, process, and update the recording process corresponding to the same control signaling, the transmission of the control signaling between different terminals and the different times required for each terminal to accept, process, and update the status of the control signaling may result in differences in the completion time of the corresponding processing of the control signaling among the three terminals, which in turn leads to different perceptions of the same recording status among different terminals.
[0029] Reference Figure 2 , Figure 2 This is a flowchart illustrating a cross-terminal synchronous control method for conference recording according to the present invention. The method includes the following steps: S1: Establish signaling connections between the desktop recording terminal, multiple mobile control terminals and the signaling server; establish a recording session and session identifier for the current meeting; collect recording status, control signaling and corresponding time information of each terminal; and form a cross-terminal status dataset for meeting recording. S2: Based on the conference recording cross-end status dataset, determine the actual completion time difference of the same control signal between the desktop recording terminal and the mobile control terminal, and calculate the signal transmission time and cross-end recording synchronization offset. S3: Compare the signaling transmission time and the cross-end recording synchronization offset with the corresponding thresholds respectively to determine the signaling transmission status and cross-end recording synchronization status corresponding to the current control signaling. When the cross-end recording synchronization status is abnormal, determine the status synchronization risk amount based on the recording status and corresponding time information in the conference recording cross-end status dataset. S4: Determine the synchronization processing method corresponding to the current control signaling based on the signaling transmission status, cross-end recording synchronization status, and status synchronization risk level.
[0030] In one optional embodiment, the desktop recording terminal and multiple mobile control terminals establish bidirectional signaling connections with the signaling server. Each desktop recording terminal and each mobile control terminal initiates a connection request to the signaling server as one end of the signaling connection and maintains bidirectional communication with the signaling server after the connection is established. The signaling server records the terminal identifiers of the desktop recording terminal and multiple mobile control terminals that have established connections, and determines the corresponding device-level communication range based on the device identifier or user identifier corresponding to the terminal. When a mobile control terminal enters a specific conference, the signaling server further establishes a conference-specific communication range based on the conference identifier corresponding to the current conference, enabling the desktop recording terminal and multiple mobile control terminals associated with the same conference to receive control signaling, recording status, and processing information corresponding to the control signaling from the signaling server.
[0031] In one optional embodiment, after receiving a control signal from a mobile control terminal or a desktop recording terminal, the signaling server determines the corresponding communication range based on the session identifier and conference identifier carried in the control signal, and forwards the control signal to the corresponding desktop recording terminal or mobile control terminal. The desktop recording terminal or mobile control terminal receiving the control signal completes the corresponding processing of the control signal, generates the corresponding recording status and processing result, and sends them to the relevant terminal corresponding to the current conference through the signaling server. Therefore, a direct point-to-point connection does not need to be established between the desktop recording terminal and the mobile control terminal; instead, the control signal transmission and cross-terminal transmission of recording status and processing results are completed through the signaling server.
[0032] In one optional embodiment, after the recording session corresponding to the current meeting is established, the mobile control terminal matches the received session messages with the locally stored session identifier, and only processes session messages that match the locally stored session identifier; for historical session messages with inconsistent session identifiers, the mobile control terminal does not perform status update processing. Upon receiving a recording preparation signaling carrying a new session identifier, the desktop recording terminal determines the new session identifier as the session identifier corresponding to the current recording session, and associates the subsequently generated recording status, control signaling processing results, and corresponding processing times with the session identifier, thereby avoiding confusion between recording status and control signaling processing information between different recording sessions.
[0033] In one optional embodiment, after the mobile control terminal or desktop recording terminal generates a control signaling message, it is sent to the corresponding desktop recording terminal or mobile control terminal via a signaling server. Upon receiving the control signaling message, the desktop recording terminal or mobile control terminal performs corresponding processing based on the control signaling message. The control signaling message includes recording preparation signaling, recording start signaling, recording stop signaling, recording pause signaling, recording resume signaling, and save and end signaling. Different control signaling messages correspond to different processing operations in the current recording process and are used to trigger corresponding recording state transitions.
[0034] In one optional embodiment, the recording of the current meeting is initiated in stages: recording preparation and formal recording. The mobile control terminal first sends a recording preparation signal to the signaling server, which then forwards the signal to the desktop recording terminal. Upon receiving the recording preparation signal, the desktop recording terminal performs microphone permission checks, recording component initialization, and recording environment preparation. After meeting the corresponding execution conditions, it performs recording preparation processing and returns recording preparation completion information to the signaling server. The signaling server then sends the recording preparation completion information to the mobile control terminal. Upon receiving this information, the mobile control terminal sends a recording start signal, which the signaling server forwards to the desktop recording terminal. Upon receiving the recording start signal, the desktop recording terminal begins audio acquisition and enters the recording state. If microphone permission is not obtained or recording preparation is not completed within a preset waiting time, the desktop recording terminal does not enter the recording state.
[0035] In one optional embodiment, the recording state includes five states: idle state, waiting for confirmation state, recording in progress state, stopped state, and saving state. In the idle state, upon receiving a recording preparation signal, the system enters the waiting for confirmation state; in the waiting for confirmation state, upon completing recording preparation and receiving a recording start signal, the system enters the recording in progress state; in the recording in progress state, upon receiving a stop recording signal, the system enters the stopped state; in the stopped state, upon releasing the recording resources, the system enters the saving state; in the saving state, upon completing saving or canceling saving, the system returns to the idle state. If a timeout or permission error occurs in the waiting for confirmation state, the recording state reverts to the idle state.
[0036] In one optional embodiment, when a new recording preparation signaling is received while the recording is in progress or the saving is in progress, the desktop recording terminal does not perform the new recording preparation process, but returns a busy message to the signaling server, which then sends the busy message to the corresponding mobile control terminal. When a clear transcription control signaling is received while the recording is in progress, the desktop recording terminal does not perform the corresponding clear process, and the mobile control terminal simultaneously disables the operation entry corresponding to clear transcription, so that the control operations that the mobile control terminal can perform match the current recording status.
[0037] In one optional embodiment, the signaling server records the recording status, recording save status, current transcription status, and corresponding time information of the current conference according to the session identifier corresponding to the current recording session. When the mobile control terminal first connects to the signaling server or re-establishes a connection after an interruption, the signaling server obtains the corresponding recording status and related status information according to the session identifier corresponding to the current conference and sends it to the mobile control terminal; the mobile control terminal updates the current recording status according to the received recording status and related status information.
[0038] In one optional embodiment, for control signaling generated by a mobile control terminal or a desktop recording terminal, the signaling server records the time information corresponding to the generation, reception, and forwarding of the control signaling; the target terminal receiving the control signaling performs corresponding processing according to the current recording status and execution conditions, and records the corresponding completion time after completing the corresponding processing of the control signaling; when the mobile control terminal or desktop recording terminal receives the corresponding processing result or status information and completes the corresponding status update, it records the corresponding completion time.
[0039] In one optional embodiment, the signaling server receives control signaling generated by the mobile control terminal or the desktop recording terminal, as well as the processing result and recording status returned by the corresponding target terminal in response to the control signaling, and receives the recording status updated by the relevant terminal in response to the processing result; at the same time, it records the time information corresponding to the generation, reception, forwarding, processing completion and status update completion of the control signaling, and records the control signaling, recording status, processing result, time information and the session identifier corresponding to the current recording session accordingly to form a cross-terminal status dataset for conference recording.
[0040] The conference recording cross-terminal status dataset is continuously updated according to the current recording session. When the signaling server receives a new recording status, control signaling, or processing result corresponding to the same session identifier, it updates the conference recording cross-terminal status dataset to reflect the status changes, control operations, and processing completion status of different terminals during the current conference recording process. For the same control signaling, the conference recording cross-terminal status dataset retains the processing completion time corresponding to the desktop recording terminal and the mobile control terminal respectively, in order to determine the actual completion time difference of the control signaling between different terminals.
[0041] When multiple mobile control terminals exist in the same meeting, the signaling server records the reception, status update and corresponding completion time of each mobile control terminal for the same control signal according to the terminal identifier corresponding to different mobile control terminals. The control signal, recording status and corresponding processing time are associated with the session identifier corresponding to the same recording session. Thus, multiple sets of cross-terminal status datasets corresponding to the desktop recording terminal and different mobile control terminals are formed in the cross-terminal status dataset of the same meeting recording.
[0042] Based on the conference recording cross-terminal status dataset, determine the actual completion time difference of the same control signal between the desktop recording terminal and the mobile control terminal, including: From the conference recording cross-terminal status dataset, obtain the first completion time point and the second completion time point when the same control signaling in the same recording session is processed on the desktop recording terminal and the mobile control terminal, respectively. Based on the time difference between the first completion time point and the second completion time point, the actual completion time difference between the same control signaling at the desktop recording terminal and the mobile control terminal is determined.
[0043] In one optional embodiment, the actual completion time difference between the same control signaling on the desktop recording end and the mobile control end is determined based on the conference recording cross-end status dataset. For the same control signaling in the same recording session, a first completion time point corresponding to the control signaling on the desktop recording end and a second completion time point corresponding to the control signaling on the mobile control end are obtained from the conference recording cross-end status dataset. The first completion time point is used to characterize the time when the desktop recording end completes the corresponding processing of the control signaling, and the second completion time point is used to characterize the time when the mobile control end completes the corresponding processing or status update of the control signaling. The completion time points are associated with the corresponding control signaling and the recording session to ensure that the obtained first completion time point and second completion time point belong to the same control signaling in the same recording session, avoiding incorrect comparison of completion time points corresponding to different control signaling or different recording sessions.
[0044] It should be noted that the first completion time point and the second completion time point are recorded using a unified time base, so that the two completion time points corresponding to the same control signal can be compared sequentially and the time difference can be calculated on the same time scale, thereby avoiding deviations in the calculation of the completion time difference due to different time bases used by different ends.
[0045] In an optional embodiment, after obtaining the first completion time point and the second completion time point, the first completion time point and the second completion time point are compared sequentially, and the actual completion time difference is determined based on the length of time elapsed between them; when the first completion time point is earlier than the second completion time point, the length of time elapsed between the first completion time point and the second completion time point is determined as the actual completion time difference; when the second completion time point is earlier than the first completion time point, the length of time elapsed between the second completion time point and the first completion time point is determined as the actual completion time difference; when the first completion time point and the second completion time point are the same, the actual completion time difference is determined to be zero.
[0046] The first completion time point and the second completion time point represent the time when the same control signaling is processed at the desktop recording terminal and the mobile control terminal, respectively. The actual completion time difference is used to reflect the time difference between the desktop recording terminal and the mobile control terminal when the same control signaling is processed. The determination of the actual completion time difference is not affected by whether the control signaling is generated by the desktop recording terminal or the mobile control terminal, and is determined according to the processing completion time of the same control signaling at the two terminals.
[0047] For control signaling generated by the mobile control terminal, the first completion time point is recorded when the corresponding processing of the control signaling is completed at the desktop recording terminal, and the second completion time point is recorded when the corresponding processing of the control signaling is completed at the mobile control terminal; for control signaling generated by the desktop recording terminal, the time points when the corresponding processing of the control signaling is completed at the desktop recording terminal and the mobile control terminal are also recorded respectively, and the actual completion time difference is determined based on the two recorded completion time points.
[0048] Calculate signaling delivery time and cross-end recording synchronization offset, including: The system obtains the first time when the desktop recording terminal or mobile control terminal sends the same control signaling to the signaling server, and the second time when the other end receives the same control signaling forwarded by the signaling server. The system then determines the signaling transmission time corresponding to the same control signaling based on the time difference between the first time and the second time. The difference between the actual completion time difference and the signaling transmission time is calculated, and the portion of the actual completion time difference that exceeds the signaling transmission time is determined as the cross-end recording synchronization offset corresponding to the same control signaling.
[0049] In one optional embodiment, the signaling transmission time and cross-end recording synchronization offset are determined based on the control signaling. For the same control signaling in the same recording session, a first time corresponding to when the control signaling is sent from the desktop recording terminal or mobile control terminal to the signaling server, and a second time corresponding to when the control signaling is received by the other end after being forwarded by the signaling server are obtained.
[0050] In an optional embodiment, the first time is taken as the time when the control signaling begins to be transmitted from the signaling server to the other end, and the second time is taken as the time when the control signaling is transmitted from the signaling server to the other end and received. The signaling transmission time corresponding to the same control signaling is determined based on the time elapsed between the first time and the second time. For control signaling sent by the mobile control terminal, the first time is the time when the mobile control terminal sends the control signaling to the signaling server, and the second time is the time when the desktop recording terminal receives the control signaling forwarded by the signaling server; for control signaling sent by the desktop recording terminal, the first time is the time when the desktop recording terminal sends the control signaling to the signaling server, and the second time is the time when the mobile control terminal receives the control signaling forwarded by the signaling server.
[0051] It should be noted that the first and second times are recorded using a unified time base, enabling the desktop recording terminal, mobile control terminal, and signaling server to compare the time information recorded for the same control signaling on the same time scale and calculate the time difference, thereby determining the signaling transmission time corresponding to the control signaling.
[0052] In one optional embodiment, after determining the signaling transmission time corresponding to the same control signaling, the actual completion time difference corresponding to the same control signaling is obtained, and the difference between the actual completion time difference and the signaling transmission time is calculated to determine the portion of the actual completion time difference that exceeds the signaling transmission time. When the actual completion time difference is greater than the signaling transmission time, the difference between the actual completion time difference and the signaling transmission time is determined as the cross-end recording synchronization offset corresponding to the same control signaling. The cross-end recording synchronization offset represents the time offset that still exists when the same control signaling completes corresponding processing at the desktop recording end and the mobile control end after deducting the time difference generated by the cross-end transmission of the control signaling. When the actual completion time difference is equal to the signaling transmission time, it indicates that the actual completion time difference formed between the desktop recording end and the mobile control end for the same control signaling can be explained by the cross-end transmission time of the control signaling, and no cross-end recording synchronization offset exceeding the signaling transmission time is generated. When the actual completion time difference is less than the signaling transmission time, the difference between the actual completion time difference and the signaling transmission time is not determined as the cross-end recording synchronization offset; when a unified time base is used and the time information is recorded accurately, the actual completion time difference is usually not less than the signaling transmission time.
[0053] In one optional embodiment, taking the mobile control terminal sending a stop recording control signal as an example, the mobile control terminal sends a stop recording control signal to the signaling server, and the desktop recording terminal receives the control signal via the signaling server. If there is an actual completion time difference between the time when the desktop recording terminal and the mobile control terminal complete the processing corresponding to the stop recording control signal, the difference is calculated based on the signaling transmission time of the stop recording control signal from the mobile control terminal to the desktop recording terminal via the signaling server, and the portion exceeding the signaling transmission time is determined as the cross-terminal recording synchronization offset.
[0054] In an optional embodiment, for control signaling sent by the desktop recording terminal, the signaling transmission time and cross-end recording synchronization offset of the control signaling are determined in the same way. That is, the signaling transmission time is determined based on the time when the desktop recording terminal sends the control signaling to the signaling server and the time when the mobile control terminal receives the control signaling forwarded by the signaling server. The cross-end recording synchronization offset is determined based on the difference between the actual completion time difference formed when the same control signaling is processed by the desktop recording terminal and the mobile control terminal respectively and the signaling transmission time.
[0055] It should be noted that the cross-end recording synchronization offset does not represent the actual processing time of the control signaling at either end, but rather the cross-end time offset that still exists after deducting the signaling transmission time from the actual completion time difference, i.e. the part of the completion time difference between the two ends that cannot be explained by the signaling transmission time.
[0056] For example, taking the mobile control terminal sending a stop recording control signal as an example, the mobile control terminal sends the control signal at 10:00:00 and completes the corresponding control processing at 10:00:00.5; the desktop recording terminal receives the control signal forwarded by the signaling server at 10:00:00.3 and completes the corresponding control processing at 10:00:01.5. Therefore, the time difference between the mobile control terminal and the desktop recording terminal completing the processing corresponding to the same control signal is 1 second, and the actual completion time difference is determined to be 1 second; the time taken for the control signal to be sent from the mobile control terminal to be received by the desktop recording terminal is 0.3 seconds, and the signal transmission time is determined to be 0.3 seconds; the difference between the 1-second actual completion time difference and the 0.3-second signal transmission time is calculated to obtain 0.7 seconds, and the 0.7 seconds is determined as the cross-terminal recording synchronization offset corresponding to the control signal.
[0057] Determine the signaling transmission status and cross-end recording synchronization status corresponding to the current control signaling, including: Obtain a preset signaling transmission time threshold and a cross-end recording synchronization offset threshold, and compare the signaling transmission time with the signaling transmission time threshold and the cross-end recording synchronization offset with the cross-end recording synchronization offset threshold, respectively. When the signaling transmission time does not exceed the signaling transmission time threshold and the cross-end recording synchronization offset does not exceed the cross-end recording synchronization offset threshold, it is determined that the signaling transmission status is normal and the current cross-end recording synchronization status is normal. When the signaling transmission time exceeds the signaling transmission time threshold and the cross-end recording synchronization offset does not exceed the cross-end recording synchronization offset threshold, it is determined that there is a signaling transmission abnormality and the current cross-end recording synchronization status is normal. When the signaling transmission time does not exceed the signaling transmission time threshold and the cross-end recording synchronization offset exceeds the cross-end recording synchronization offset threshold, it is determined that the signaling transmission status is normal and there is a cross-end recording synchronization abnormality. When the signaling transmission time exceeds the signaling transmission time threshold and the cross-end recording synchronization offset exceeds the cross-end recording synchronization offset threshold, it is determined that there is both a signaling transmission abnormality and a cross-end recording synchronization abnormality.
[0058] It should be noted that when the signaling transmission time exceeds the signaling transmission time threshold, it indicates that the time taken for the current control signaling to travel from the sending end to the target end via the signaling server has exceeded the normal signaling transmission range. This suggests that the current signaling transmission process is affected by factors such as network transmission delay, signaling server processing delay, or signaling link congestion, causing the target end to receive the control signaling later than expected under normal transmission conditions. The signaling transmission anomaly is only used to characterize an anomaly in the control signaling transmission process and does not directly indicate that the desktop recording end and the mobile control end have become out of sync in their recording states. Whether a cross-end recording synchronization anomaly has occurred requires further judgment based on the cross-end recording synchronization offset.
[0059] In one optional embodiment, a preset signaling transmission time threshold and a cross-end recording synchronization offset threshold are obtained, wherein the signaling transmission time threshold and the cross-end recording synchronization offset threshold are set according to different determination criteria.
[0060] The signaling transmission time threshold is determined based on the signaling transmission time under normal signaling transmission conditions, meaning the signaling transmission time threshold is a normal standard value for network communication. Specifically, the signaling transmission time corresponding to multiple historical control signaling messages under conditions of normal network connection, normal operation of the signaling server, and no signaling congestion is obtained. A normal signaling transmission time benchmark is determined based on these multiple signaling transmission times, and the signaling transmission time threshold is determined based on the normal signaling transmission time benchmark. The signaling transmission time threshold is used to determine whether the transmission time of the current control signaling between the desktop recording terminal, the signaling server, and the mobile control terminal exceeds the normal communication range. Typically, the signaling transmission time threshold is determined based on multiple normal signaling transmission times. By obtaining the signaling transmission times corresponding to multiple historical control signaling messages under conditions of normal network connection and normal operation of the signaling server, the average value of these multiple signaling transmission times is calculated to obtain the normal signaling transmission time benchmark. The signaling transmission time threshold is determined based on the normal signaling transmission time benchmark and a preset normal fluctuation tolerance, so that the signaling transmission time threshold corresponds to the upper limit range of the normal signaling transmission time.
[0061] In one optional embodiment, the cross-end recording synchronization offset threshold is determined based on the maximum allowed time offset during the cross-end synchronization control of conference recording. That is, the cross-end recording synchronization offset threshold is a fixed allowed offset value predefined by the system and remains unchanged during the synchronization control of the current recording session. The cross-end recording synchronization offset threshold is used to limit the maximum allowed time offset when the desktop recording terminal and the mobile control terminal complete the corresponding processing of the same control signaling. For example, the cross-end recording synchronization offset threshold can be set to 1 second. When the cross-end recording synchronization offset exceeds 1 second, it is determined that the time offset between the two ends exceeds the allowed range.
[0062] In an optional embodiment, the signaling transmission time is compared with the signaling transmission time threshold, and the cross-end recording synchronization offset is compared with the cross-end recording synchronization offset threshold.
[0063] When the signaling transmission time does not exceed the signaling transmission time threshold and the cross-end recording synchronization offset does not exceed the cross-end recording synchronization offset threshold, it indicates that the control signaling can reach the corresponding end within the normal communication time, and the actual completion time difference of the two ends completing the processing of the same control signaling does not reach the level that affects the consistency of the recording status. Therefore, it is determined that the current cross-end recording synchronization status is normal. At this time, the current recording status and cross-end control process continue to be executed without additional synchronization processing for the mobile control end.
[0064] When the signaling transmission time exceeds the signaling transmission time threshold, and the cross-end recording synchronization offset does not exceed the cross-end recording synchronization offset threshold, it indicates that the current control signaling has experienced a communication delay exceeding the normal range during cross-end transmission. However, the delay has not yet caused a significant asynchrony in the time difference between the two ends completing the processing of the same control signaling. Therefore, the current situation mainly reflects an anomaly in the signaling transmission process, while the recording status has not yet been significantly misaligned. The current recording status can be maintained, and the subsequent control signaling transmission situation can be continuously monitored.
[0065] When the signaling transmission time does not exceed the signaling transmission time threshold, and the cross-end recording synchronization offset exceeds the cross-end recording synchronization offset threshold, it indicates that the control signaling can be transmitted normally to the corresponding end. However, after both ends complete the corresponding processing of the same control signaling, there is still a large time offset, indicating that the current asynchrony is not mainly caused by signaling transmission delay, but rather by an actual time misalignment in the cross-end control processing. Therefore, it is necessary to further analyze the impact of this time misalignment on the consistency of the current recording state to determine whether it has caused the two ends to be in different recording states.
[0066] When the signaling transmission time exceeds the signaling transmission time threshold and the cross-end recording synchronization offset exceeds the cross-end recording synchronization offset threshold, it indicates that the current control signaling has both cross-end transmission anomalies and cross-end processing completion time offsets exceeding the allowable range. The simultaneous existence of these two types of time anomalies further increases the possibility of desynchronization in the current recording state. Therefore, the current state is determined to be a state with a high synchronization risk, and cross-end state consistency is further analyzed in conjunction with the current recording state and state change time.
[0067] It should be noted that by applying threshold judgments to the signaling transmission time and the cross-end recording synchronization offset, it is possible to distinguish between communication delays caused by the signaling transmission process and cross-end recording asynchrony caused by the time difference between the completion of control processing at both ends, thus avoiding the need to judge the cross-end recording status based solely on a single time parameter. Furthermore, by combining the signaling transmission status and the cross-end recording synchronization status, it is possible to further distinguish between different situations: only communication delays, only cross-end recording asynchrony, and both types of anomalies coexisting. This provides a basis for subsequent judgment on appropriate state synchronization handling for different synchronization risks, improving the targeted nature of cross-end recording synchronization control.
[0068] The status synchronization risk is determined based on the recording status and corresponding time information in the cross-end status dataset of the meeting recordings, including: In response to the current situation of cross-end recording synchronization anomaly, the recording status and corresponding time information of the current recording session are obtained from the conference recording cross-end status dataset. The recording status time sequence is formed according to the actual occurrence order of the recording status, and the state boundary time point is determined according to the actual change time between adjacent recording statuses. Based on the positions of the first completion time point and the second completion time point in the recording state time sequence, determine the number of state boundaries between them, and calculate the amount of time to cross the state boundaries based on the time relationship between each state boundary time point and the first completion time point and the second completion time point. The degree of state crossing is determined based on the ratio of the time taken to cross the state boundary to the difference between the actual completion time; the state synchronization risk is calculated based on the number of state boundaries actually crossed between the first completion time point and the second completion time point, as well as the degree of state crossing.
[0069] In an optional embodiment, for situations where cross-end recording synchronization anomalies exist, specifically where the cross-end recording synchronization offset exceeds the cross-end recording synchronization offset threshold, a further determination of the state synchronization risk level is made. The cross-end recording synchronization offset threshold is used for a first-level screening of cross-end recording synchronization offsets. When the cross-end recording synchronization offset exceeds the threshold, it indicates that the time offset generated when the desktop recording terminal and the mobile control terminal complete the same control signaling processing has exceeded the maximum time offset range allowed by the system, and there is a relatively obvious cross-end recording synchronization anomaly at both ends.
[0070] However, the cross-end recording synchronization offset can only reflect the degree of time offset when both ends complete the processing of the same control signaling. It cannot further reflect whether the time offset crosses the state boundary in the current recording session, and the degree of impact on the consistency of the recording state after crossing the state boundary. Therefore, after confirming that the cross-end recording synchronization offset exceeds the cross-end recording synchronization offset threshold, the impact of the state boundary corresponding to the cross-end recording synchronization offset is further analyzed by combining the actual recording state and corresponding time information that have occurred in the current recording session.
[0071] In an optional embodiment, the recording status and corresponding time information of the current recording session are obtained from the conference recording cross-end status dataset, and arranged in chronological order according to the time information corresponding to the recording status to form a recording status time sequence; wherein, the recording status time sequence is used to record the actual recording status corresponding to each time position in the current recording session.
[0072] Specifically, for adjacent recording state records in the recording state time series, the corresponding state identifiers and time information are extracted respectively; when the state identifiers corresponding to adjacent recording state records are different, the time point at which the next recording state record first appears is determined as the corresponding state boundary time point; wherein, the state boundary time point is used to characterize the time position at which the current recording session enters the next recording state from the previous recording state.
[0073] For example, the current recording session sequentially records the recording status at 10:00:00, the recording status at 10:00:01, the stopped status at 10:00:01.5, and the saving status at 10:00:02. Among them, the status identifier corresponding to 10:00:01.5 changes relative to the previous record. Therefore, 10:00:01.5 is determined as the state boundary time point corresponding to the switch from the recording status to the stopped status. Similarly, 10:00:02 is determined as the state boundary time point corresponding to the switch from the stopped status to the saving status.
[0074] It should be noted that the state boundary time point is actually determined based on the state identifier and corresponding time information of the adjacent recording state records in the current recording session, without relying on the preset state duration, nor predicting the recording state switch that has not yet occurred, so that the state boundary time point can reflect the actual state switch process that has occurred in the current recording session.
[0075] In an optional embodiment, after determining the recording state time sequence and state boundary time points, the first completion time point and the second completion time point are compared with the state boundary time points in terms of time sequence. Based on the time interval between the first completion time point and the second completion time point, the state boundary time points located within the time interval are determined, and the number of state boundaries is determined based on the number of state boundary time points.
[0076] When there are no state boundary time points between the first completion time point and the second completion time point, the number of state boundaries is determined to be zero, indicating that the same control signaling is in the same recording state time interval when the desktop recording terminal and the mobile control terminal complete the corresponding processing; when there are one or more state boundary time points between the first completion time point and the second completion time point, the number of state boundary time points is determined as the number of state boundaries.
[0077] In an optional embodiment, for each state boundary time point located between the first completion time point and the second completion time point, the corresponding time amount for crossing the state boundary is calculated. Specifically, the earlier time point between the first completion time point and the second completion time point is taken as the start point of the time interval, and the later time point is taken as the end point of the time interval. The time length between any state boundary time point and the end point of the time interval is determined as the time amount for crossing the state boundary corresponding to that state boundary. When there are multiple state boundary time points within the time interval, the time amount for crossing the state boundary corresponding to each state boundary is calculated and recorded according to the actual occurrence order of each state boundary time point.
[0078] For example, if the second completion time is 10:00:00.5, the first completion time is 10:00:02.5, and 10:00:01.0 and 10:00:02.0 are two consecutive state boundary time points in the current recording session, then the number of state boundaries is 2; wherein, the time amount for crossing the state boundary corresponding to 10:00:01.0 is 1.5 seconds, and the time amount for crossing the state boundary corresponding to 10:00:02.0 is 0.5 seconds.
[0079] In an optional embodiment, when there are multiple state boundary time points between the first completion time point and the second completion time point, the earliest state boundary time point in chronological order is taken as the crossing start boundary, and the time length between the crossing start boundary time point and the later completion time point between the first completion time point and the second completion time point is determined as the total crossing state boundary time between the first completion time point and the second completion time point; wherein, the crossing state boundary time corresponding to each state boundary is used to characterize the length of time that the corresponding state boundary continues to be in the subsequent recording state after it occurs, and the total crossing state boundary time is used to characterize the total time range between the two completion time points that has entered the subsequent recording state.
[0080] In an optional embodiment, the degree of state crossing is determined based on the ratio of the total time amount of time crossing the state boundary to the actual completion time difference. Specifically, the degree of state crossing is obtained by dividing the total time amount of time crossing the state boundary by the actual completion time difference; wherein, the degree of state crossing represents the proportion of time after the earliest state boundary in the time interval between the first completion time point and the second completion time point, and the value range of the degree of state crossing is 0 to 1; when there is no state boundary time point between the first completion time point and the second completion time point, the total time amount of time crossing the state boundary is determined to be 0, and the degree of state crossing is determined to be 0.
[0081] In an optional embodiment, a state synchronization risk quantity is calculated based on the number of state boundaries and the degree of state crossing. Specifically, the state synchronization risk quantity is obtained by multiplying the degree of state crossing by the number of state boundaries; wherein, the state synchronization risk quantity is used to comprehensively characterize the degree of influence of the time offset between the first completion time point and the second completion time point on the recording state boundaries and the number of recording state boundaries crossed. The greater the degree of state crossing or the more state boundaries, the greater the state synchronization risk quantity; the state synchronization risk quantity is used as the basis for subsequently determining the synchronization processing method.
[0082] For example, if the first completion time is 10:00:02.5 and the second completion time is 10:00:00.5, the actual completion time difference between the two is 2 seconds, and there are two state boundary time points between them, namely 10:00:01.0 and 10:00:02.0, then the number of state boundaries is 2, the total time for crossing state boundaries is 1.5 seconds, and thus the state crossing degree is 1.5 / 2 = 0.75, and the state synchronization risk is 0.75 × 2 = 1.5.
[0083] It should be noted that by associating the completion time of the same control signaling on the desktop recording end and the mobile control end with the actual recording state time series formed in the current recording session, the simple cross-end time offset is further converted into the degree of influence on the actual recording state boundary. The state synchronization risk is characterized by the degree of state crossing and the number of state boundaries, thereby avoiding the need to judge whether synchronization processing is required solely based on the absolute size of the cross-end recording synchronization offset. For different control processes with the same synchronization offset, the determined state synchronization risk will also be different when the number of state boundaries crossed or the time range crossed in the recording state time series are different, so that the synchronization risk judgment can be combined with the actual state evolution process of the current meeting recording.
[0084] Based on the signaling transmission status, cross-end recording synchronization status, and status synchronization risk level corresponding to the current control signaling, the synchronization processing method corresponding to the current control signaling is determined, including: A preset state synchronization risk threshold is set. When the cross-end recording synchronization state is abnormal and the state synchronization risk does not exceed the state synchronization risk threshold, the first synchronization processing method is determined to be executed. When the cross-end recording synchronization status is abnormal and the status synchronization risk exceeds the status synchronization risk threshold, it is determined to execute the second synchronization processing method. When both the signaling transmission status and the cross-end recording synchronization status are abnormal, the third synchronization processing method is determined to be executed.
[0085] The first synchronization processing method includes: Obtain the recording status, status time information, and session identifier corresponding to the current recording session from the cross-platform status dataset of the meeting recording; The corresponding recording status is determined based on the session identifier, and the recording status and status time information are sent to the end with a different status, so that end can update the current recording status.
[0086] The second synchronization processing method includes: The desktop recording terminal or mobile control terminal sends a status query signal carrying a session identifier to the other end; Receive the real-time recording status and status time information returned by the other end, and determine the corresponding current recording status based on the session identifier; Update the current recording status to the real-time recording status.
[0087] The third synchronization processing method includes: Re-establish the signaling connection between the desktop recording terminal, the mobile control terminal, and the signaling server; After the signaling connection is successfully established, the first synchronization processing method or the second synchronization processing method is executed according to the state synchronization risk amount.
[0088] In one optional embodiment, a preset state synchronization risk threshold is used to determine whether to adopt a first synchronization processing method or a second synchronization processing method based on the state synchronization risk level.
[0089] Specifically, the system acquires the corresponding state synchronization risk quantity, recording status, state time information, and processing results during the cross-device synchronization of historical meeting recordings. It then statistically analyzes the processing results after adopting the first synchronization processing method under different state synchronization risk quantities. When the first synchronization processing method can complete the corresponding recording status update based on the acquired recording status and state time information, the corresponding state synchronization risk quantity is taken as the range for adopting the first synchronization processing method. The boundary value between the range and the state synchronization risk quantity that cannot complete the recording status update through the first synchronization processing method is determined as the state synchronization risk quantity threshold.
[0090] When the state synchronization risk amount does not exceed the state synchronization risk amount threshold, it indicates that the recording status and status time information already recorded in the cross-end status dataset of the conference recording can still be used to update the corresponding recording status, so the first synchronization processing method is adopted; when the state synchronization risk amount exceeds the state synchronization risk amount threshold, it indicates that the recorded recording status and status time information may not reflect the current recording status of the other end, so the second synchronization processing method is adopted, and the real-time recording status and status time information of the other end are obtained through status query signaling.
[0091] For example, cross-terminal synchronization data of historical meeting recordings shows that when the state synchronization risk is 0.4, 0.6, and 0.8, the re-determined state synchronization risk is lower than the state synchronization risk before processing after using the first synchronization processing method, indicating that the recording state can be updated using the acquired recording state and state time information; when the state synchronization risk is 1.2 and 1.5, the re-determined state synchronization risk does not decrease after using the first synchronization processing method, but the state synchronization risk can be reduced after using the second synchronization processing method, so 1.0 can be used as the state synchronization risk threshold.
[0092] In one optional embodiment, under normal circumstances, after the mobile control terminal or desktop recording terminal generates control signaling, the control signaling is sent to the corresponding terminal via the signaling server. The corresponding terminal completes the corresponding processing of the control signaling and generates recording status and status time information, which is then sent to the relevant terminal via the signaling server. The relevant terminal updates its own recording status based on the received recording status. During this process, the time for the two ends to complete the corresponding processing of the same control signaling may differ, but the signaling transmission time and cross-terminal recording synchronization offset are both within the corresponding threshold range, so no additional synchronization processing is required.
[0093] When the cross-end recording synchronization status is abnormal and the status synchronization risk amount does not exceed the status synchronization risk amount threshold, the first synchronization processing method is determined to be executed. The essence of the first synchronization processing method is: the end with the asynchronous status performs local recording status update, that is, using the already acquired recording status and status time information, directly updates the currently recorded recording status of that end, without re-executing the current control signaling.
[0094] Specifically, based on the session identifier corresponding to the current recording session, the recorded recording status and status time information are obtained from the conference recording cross-end status dataset, and the recording status, status time information and session identifier are sent to the end with a non-synchronized status; after the end confirms that it belongs to the current recording session based on the session identifier, it updates the recording status currently recorded on its end to the received recording status and updates the corresponding status time information.
[0095] For example, in the current recording session, the mobile control terminal sends a stop recording signal at 10:00:00.0 and completes the corresponding status update at 10:00:00.5; the desktop recording terminal receives the stop recording signal at 10:00:00.3, enters the stopped state at 10:00:01.0, enters the saving state at 10:00:02.0, and completes the corresponding processing of the stop recording signal at 10:00:02.2. At this time, the second completion time point corresponding to the mobile control terminal is 10:00:00.5, and the first completion time point corresponding to the desktop recording terminal is 10:00:02.2, with an actual completion time difference of 1.7 seconds; there are two state boundary time points, 10:00:01.0 and 10:00:02.0, between the first completion time point and the second completion time point, with a state boundary count of 2. Taking 10:00:01.0 as the earliest state boundary time point, the total time span across the state boundary is 1.2 seconds, the state crossing degree is 1.2 / 1.7≈0.706, and the state synchronization risk is approximately 0.706×2=1.412. Assuming the preset state synchronization risk threshold is 1, the state synchronization risk exceeds the state synchronization risk threshold, therefore, the second synchronization processing method is determined to be executed.
[0096] When executing the second synchronization processing method, the mobile control terminal sends a status query signal carrying the current session identifier to the desktop recording terminal. The desktop recording terminal obtains the current actual recording status according to the session identifier. At this time, the returned real-time recording status is "Saving", and the status time is 10:00:02.0. After receiving the real-time recording status and status time information, the mobile control terminal confirms that it belongs to the current recording session according to the session identifier, updates the current recording status of the terminal to "Saving", and updates the corresponding status time to 10:00:02.0.
[0097] In one optional embodiment, when the cross-end recording synchronization status is abnormal and the status synchronization risk exceeds the status synchronization risk threshold, a second synchronization processing method is determined to be executed. The essence of the second synchronization processing method is that one end actively queries the other end for the current recording status, and updates the current recording status based on the real-time recording status returned by the other end. In this case, the status synchronization risk is high, and the already recorded recording status and status time information may not reflect the current recording status of the other end. Therefore, the already recorded information is not used directly, but the real-time recording status of the other end is re-acquired.
[0098] Specifically, the desktop recording terminal or mobile control terminal sends a status query signaling carrying a session identifier to the other end; after receiving the status query signaling, the other end obtains the real-time recording status and status time information corresponding to the current recording session according to the session identifier, and returns the real-time recording status and status time information to the end that sent the status query signaling; the end that sent the status query signaling determines the corresponding current recording status according to the session identifier, updates the current recording status to the real-time recording status, and updates the corresponding status time information.
[0099] For example, in the current recording session, the mobile control terminal sends a stop recording signal at 10:00:00.0, the desktop recording terminal receives the stop recording signal at 10:00:00.3, and enters the stopped state at 10:00:01.0; subsequently, the desktop recording terminal enters the saving state at 10:00:02.0, while the mobile control terminal is still recorded as recording due to a state synchronization anomaly. Since multiple state boundaries pass between the first and second completion time points, the determined state synchronization risk exceeds the state synchronization risk threshold. If the already recorded stopped state in the conference recording cross-terminal state dataset is used for updates, it may not reflect that the desktop recording terminal has now entered the saving state. Therefore, the mobile control terminal sends a status query signal carrying the current session identifier to the desktop recording terminal. The desktop recording terminal obtains the current real-time recording status based on the session identifier and returns the "Saving" status and the corresponding status time information. After the mobile control terminal determines that the status belongs to the current recording session based on the session identifier, it updates the current recording status of the terminal to the "Saving" status and updates the corresponding status time to 10:00:02.0.
[0100] It should be noted that both the first and second synchronization processing methods are used to handle cross-end recording synchronization anomalies, but they use different sources of status information. When the status synchronization risk does not exceed the threshold, the recording status and status time information already recorded in the cross-end status dataset of the conference recording can be used to update the current recording status. Therefore, directly using the recorded information can reduce additional status queries and signaling interactions. When the status synchronization risk exceeds the threshold, there may be a large time interval between the recorded recording status and the current recording status at the other end. In this case, re-obtaining the real-time recording status at the other end through status query signaling can avoid using the outdated recording status for updates.
[0101] It should be noted that the first synchronization processing method focuses on updating the status using the already acquired recording status information, while the second synchronization processing method focuses on updating the status after reacquiring the current real-time recording status of the other end. By selecting different synchronization processing methods according to the risk of status synchronization, unnecessary status queries are reduced while ensuring the consistency of cross-end recording status.
[0102] It should also be noted that the second synchronization processing method requires one end to send a status query signaling to the other end and wait for the other end to return the real-time recording status and status time information. Compared with directly using the already obtained recording status for updating, this adds an extra cross-end signaling interaction and corresponding processing waiting time. When the status synchronization risk is low, the recording status and status time information already recorded in the conference recording cross-end status dataset can still be used to update the current recording status. If the second synchronization processing method is still used in this case, it not only adds an extra status query process, but may also introduce new time offsets due to the added signaling transmission and processing time. Therefore, the first synchronization processing method is used when the status synchronization risk does not exceed the status synchronization risk threshold, and the second synchronization processing method is used to obtain the real-time recording status of the other end only when the status synchronization risk exceeds the status synchronization risk threshold. This reduces the extra signaling interaction while improving the accuracy of recording status updates under high-risk conditions.
[0103] In an optional embodiment, when both the signaling transmission status and the cross-end recording synchronization status are abnormal, a third synchronization processing method is determined to be executed. At this time, the current control signaling transmission process is abnormal, and there is already a cross-end recording synchronization abnormality between the desktop recording client and the mobile control client. If the first or second synchronization processing method is executed directly, the relevant status information may not be transmitted normally. Therefore, the signaling connection between the desktop recording client, the mobile control client, and the signaling server is restored first.
[0104] Specifically, the signaling connection between the desktop recording terminal, the mobile control terminal, and the signaling server is re-established; after the signaling connection is successfully established, the currently determined state synchronization risk quantity is used, and the first synchronization processing method or the second synchronization processing method is executed according to the state synchronization risk quantity.
[0105] For example, in the current recording session, a cross-terminal recording synchronization anomaly has occurred between the mobile control terminal and the desktop recording terminal, and the signaling transmission time exceeds the signaling transmission time threshold, indicating that the current signaling connection itself has a transmission anomaly. In this case, the signaling connection between the desktop recording terminal, the mobile control terminal, and the signaling server is first re-established. If the signaling connection is successfully established, and the current state synchronization risk does not exceed the state synchronization risk threshold, then the first synchronization processing method is executed, updating the recording state using the already recorded recording state and state time information. If the current state synchronization risk exceeds the state synchronization risk threshold, then the second synchronization processing method is executed, updating the recording state after obtaining the real-time recording state and state time information returned by the other end through state query signaling.
[0106] It should be noted that the third synchronization processing method is mainly used when both signaling transmission anomalies and cross-end recording synchronization anomalies exist simultaneously. By first restoring the signaling connection to ensure the normal transmission of subsequent recording status and status time information, the first or second synchronization processing method is selected based on the status synchronization risk level, thereby handling the signaling connection anomaly and recording status asynchrony issues respectively.
[0107] Reference Figure 3 , Figure 3 This is a schematic diagram of a cross-terminal synchronous control system for conference recording according to the present invention. The system includes: The status acquisition module is used to establish signaling connections between the desktop recording terminal, multiple mobile control terminals and the signaling server, establish a recording session and session identifier for the current meeting, collect the recording status, control signaling and corresponding time information of each terminal, and form a cross-terminal status dataset of the meeting recording. The offset calculation module is used to determine the actual completion time difference of the same control signal between the desktop recording terminal and the mobile control terminal based on the conference recording cross-terminal status dataset, and to calculate the signal transmission time and cross-terminal recording synchronization offset. The risk analysis module is used to compare the signaling transmission time and the cross-end recording synchronization offset with the corresponding thresholds to determine the signaling transmission status and cross-end recording synchronization status corresponding to the current control signaling. When the cross-end recording synchronization status is abnormal, the module determines the status synchronization risk amount based on the recording status and corresponding time information in the conference recording cross-end status dataset. The synchronization processing module is used to determine the synchronization processing method corresponding to the current control signaling based on the signaling transmission status, cross-end recording synchronization status, and status synchronization risk level of the current control signaling.
[0108] This application also provides an electronic device. The electronic device may include one or more processors and one or more memories. The memories store computer-readable code, which, when executed by the one or more processors, can perform the conference recording cross-end synchronization control method and system described above.
[0109] The system and method according to the embodiments of this application can also be implemented using the architecture of the electronic device shown in this application. The electronic device may include a bus, one or more CPUs, ROM, RAM, a communication port connected to a network, input / output, a hard disk, etc. The storage device in the electronic device, such as a ROM or hard disk, may store the conference recording cross-end synchronization control method and system provided in this application. Furthermore, the electronic device may also include a user interface. Of course, the architecture shown in this application is merely exemplary; when implementing different devices, one or more components in the electronic device shown in this application may be omitted according to actual needs.
[0110] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising a reference structure" does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes the element.
[0111] Although embodiments of the invention have been shown and described, it will be understood by those skilled in the art that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention.
Claims
1. A method for cross-end synchronous control of conference recording, characterized in that, The method includes: S1: Establish signaling connections between the desktop recording terminal, multiple mobile control terminals and the signaling server; establish a recording session and session identifier for the current meeting; collect recording status, control signaling and corresponding time information of each terminal; and form a cross-terminal status dataset for meeting recording. S2: Based on the conference recording cross-end status dataset, determine the actual completion time difference of the same control signal between the desktop recording terminal and the mobile control terminal, and calculate the signal transmission time and cross-end recording synchronization offset. S3: Compare the signaling transmission time and the cross-end recording synchronization offset with the corresponding thresholds respectively to determine the signaling transmission status and cross-end recording synchronization status corresponding to the current control signaling. When the cross-end recording synchronization status is abnormal, determine the status synchronization risk amount based on the recording status and corresponding time information in the conference recording cross-end status dataset. S4: Determine the synchronization processing method corresponding to the current control signaling based on the signaling transmission status, cross-end recording synchronization status, and status synchronization risk level.
2. The cross-end synchronous control method for conference recording according to claim 1, characterized in that, Based on the conference recording cross-terminal status dataset, determine the actual completion time difference of the same control signal between the desktop recording terminal and the mobile control terminal, including: From the conference recording cross-terminal status dataset, obtain the first completion time point and the second completion time point when the same control signaling in the same recording session is processed on the desktop recording terminal and the mobile control terminal, respectively. Based on the time difference between the first completion time point and the second completion time point, the actual completion time difference between the same control signaling at the desktop recording terminal and the mobile control terminal is determined.
3. The cross-end synchronous control method for conference recording according to claim 2, characterized in that, Calculate signaling delivery time and cross-end recording synchronization offset, including: The system obtains the first time when the desktop recording terminal or mobile control terminal sends the same control signaling to the signaling server, and the second time when the other end receives the same control signaling forwarded by the signaling server. The system then determines the signaling transmission time corresponding to the same control signaling based on the time difference between the first time and the second time. The difference between the actual completion time difference and the signaling transmission time is calculated, and the portion of the actual completion time difference that exceeds the signaling transmission time is determined as the cross-end recording synchronization offset corresponding to the same control signaling.
4. The cross-end synchronous control method for conference recording according to claim 3, characterized in that, Determine the signaling transmission status and cross-end recording synchronization status corresponding to the current control signaling, including: Obtain a preset signaling transmission time threshold and a cross-end recording synchronization offset threshold, and compare the signaling transmission time with the signaling transmission time threshold and the cross-end recording synchronization offset with the cross-end recording synchronization offset threshold, respectively. When the signaling transmission time does not exceed the signaling transmission time threshold and the cross-end recording synchronization offset does not exceed the cross-end recording synchronization offset threshold, it is determined that the signaling transmission status is normal and the current cross-end recording synchronization status is normal. When the signaling transmission time exceeds the signaling transmission time threshold and the cross-end recording synchronization offset does not exceed the cross-end recording synchronization offset threshold, it is determined that there is a signaling transmission abnormality and the current cross-end recording synchronization status is normal. When the signaling transmission time does not exceed the signaling transmission time threshold and the cross-end recording synchronization offset exceeds the cross-end recording synchronization offset threshold, it is determined that the signaling transmission status is normal and there is a cross-end recording synchronization abnormality. When the signaling transmission time exceeds the signaling transmission time threshold and the cross-end recording synchronization offset exceeds the cross-end recording synchronization offset threshold, it is determined that there is both a signaling transmission abnormality and a cross-end recording synchronization abnormality.
5. The cross-end synchronous control method for conference recording according to claim 4, characterized in that, The status synchronization risk is determined based on the recording status and corresponding time information in the cross-end status dataset of the meeting recordings, including: In response to the current situation of cross-end recording synchronization anomaly, the recording status and corresponding time information of the current recording session are obtained from the conference recording cross-end status dataset. The recording status time sequence is formed according to the actual occurrence order of the recording status, and the state boundary time point is determined according to the actual change time between adjacent recording statuses. Based on the positions of the first completion time point and the second completion time point in the recording state time sequence, determine the number of state boundaries between them, and calculate the amount of time to cross the state boundaries based on the time relationship between each state boundary time point and the first completion time point and the second completion time point. The degree of state crossing is determined based on the ratio of the time taken to cross the state boundary to the difference between the actual completion time; the state synchronization risk is calculated based on the number of state boundaries actually crossed between the first completion time point and the second completion time point, as well as the degree of state crossing.
6. The cross-end synchronous control method for conference recording according to claim 5, characterized in that, Based on the signaling transmission status, cross-end recording synchronization status, and status synchronization risk level corresponding to the current control signaling, the synchronization processing method corresponding to the current control signaling is determined, including: A preset state synchronization risk threshold is set. When the cross-end recording synchronization state is abnormal and the state synchronization risk does not exceed the state synchronization risk threshold, the first synchronization processing method is determined to be executed. When the cross-end recording synchronization status is abnormal and the status synchronization risk exceeds the status synchronization risk threshold, it is determined to execute the second synchronization processing method. When both the signaling transmission status and the cross-end recording synchronization status are abnormal, the third synchronization processing method is determined to be executed.
7. The cross-end synchronous control method for conference recording according to claim 6, characterized in that, The first synchronization processing method includes: Obtain the recording status, status time information, and session identifier corresponding to the current recording session from the cross-platform status dataset of the meeting recording; The corresponding recording status is determined based on the session identifier, and the recording status and status time information are sent to the end with a different status, so that end can update the current recording status.
8. The cross-end synchronous control method for conference recording according to claim 7, characterized in that, The second synchronization processing method includes: The desktop recording terminal or mobile control terminal sends a status query signal carrying a session identifier to the other end; Receive the real-time recording status and status time information returned by the other end, and determine the corresponding current recording status based on the session identifier; Update the current recording status to the real-time recording status.
9. A cross-end synchronous control method for conference recording according to claim 8, characterized in that, The third synchronization processing method includes: Re-establish the signaling connection between the desktop recording terminal, the mobile control terminal, and the signaling server; After the signaling connection is successfully established, the first synchronization processing method or the second synchronization processing method is executed according to the state synchronization risk amount.
10. A cross-terminal synchronous control system for conference recording, characterized in that, The system, applied to a cross-end synchronous control method for conference recording as described in any one of claims 1-9, comprises: The status acquisition module is used to establish signaling connections between the desktop recording terminal, multiple mobile control terminals and the signaling server, establish a recording session and session identifier for the current meeting, collect the recording status, control signaling and corresponding time information of each terminal, and form a cross-terminal status dataset of the meeting recording. The offset calculation module is used to determine the actual completion time difference of the same control signal between the desktop recording terminal and the mobile control terminal based on the conference recording cross-terminal status dataset, and to calculate the signal transmission time and cross-terminal recording synchronization offset. The risk analysis module is used to compare the signaling transmission time and the cross-end recording synchronization offset with the corresponding thresholds to determine the signaling transmission status and cross-end recording synchronization status corresponding to the current control signaling. When the cross-end recording synchronization status is abnormal, the module determines the status synchronization risk amount based on the recording status and corresponding time information in the conference recording cross-end status dataset. The synchronization processing module is used to determine the synchronization processing method corresponding to the current control signaling based on the signaling transmission status, cross-end recording synchronization status, and status synchronization risk level of the current control signaling.