WO2023185499A1 - 多用户的多媒体控制方法、装置、系统、设备及介质 - Google Patents

多用户的多媒体控制方法、装置、系统、设备及介质 Download PDF

Info

Publication number
WO2023185499A1
WO2023185499A1 PCT/CN2023/082031 CN2023082031W WO2023185499A1 WO 2023185499 A1 WO2023185499 A1 WO 2023185499A1 CN 2023082031 W CN2023082031 W CN 2023082031W WO 2023185499 A1 WO2023185499 A1 WO 2023185499A1
Authority
WO
WIPO (PCT)
Prior art keywords
client
time
control
multimedia
instruction
Prior art date
Application number
PCT/CN2023/082031
Other languages
English (en)
French (fr)
Inventor
陈杰生
陈海云
Original Assignee
北京字跳网络技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 北京字跳网络技术有限公司 filed Critical 北京字跳网络技术有限公司
Publication of WO2023185499A1 publication Critical patent/WO2023185499A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4305Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43076Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of the same content streams on multiple devices, e.g. when family members are watching the same movie on different devices

Definitions

  • the present disclosure relates to the field of multimedia control technology, and in particular, to a multi-user multimedia control method, device, system, equipment and medium.
  • the present disclosure provides a multi-user multimedia control method, device, system, equipment and medium.
  • embodiments of the present disclosure provide a multi-user multimedia control method.
  • the method is applied to a first client and includes:
  • Client alignment wherein the number of the second client is at least one, and the multimedia sharing is an interactive function between multiple clients;
  • the target control instruction is determined based on each instruction time
  • embodiments of the present disclosure also provide a multi-user multimedia control method.
  • the method is applied to the second client and includes:
  • a control instruction carrying an instruction time is sent to the first client, so that the first client A client receives at least two control instructions carrying instruction times within a preset time, determines the target control instruction according to each instruction time, and performs corresponding control operations on the target multimedia corresponding to the target control instruction;
  • embodiments of the present disclosure also provide a multi-user multimedia control method, which method is applied to a system including a first client and at least one second client, including:
  • the second client sends a time alignment request to the first client in response to a multimedia sharing join operation
  • the first client obtains the time alignment request and sends time information to the second client;
  • the second client aligns the time of the second client with the first client according to the time information, and sends a control instruction carrying the instruction time to the first client in response to a control trigger operation;
  • the first client When the first client receives at least two control instructions carrying instruction times within the preset time, determines the target control instruction according to each instruction time, and performs corresponding control operations on the target multimedia corresponding to the target control instruction, Send the target control instruction to the second client;
  • the second client receives the target control instruction and performs the same control operation as the first client on the target multimedia.
  • embodiments of the present disclosure also provide a multi-user multimedia control device.
  • the device is provided on the first client and includes:
  • a first alignment module configured to obtain a time alignment request sent by the second client in response to the multimedia sharing joining operation, and send time information to the second client, so that the second client can align it according to the time information.
  • the time is aligned with the first client, wherein the number of the second client is at least one, and the multimedia sharing is an interactive function between multiple clients;
  • the first instruction module is used to determine the target control instruction according to each instruction time when at least two control instructions carrying instruction times are received within a preset time;
  • the first control module is configured to perform corresponding control operations on the target multimedia corresponding to the target control instruction, and send the target control instruction to the second client, so that the second client synchronizes all The target multimedia performs the same control operations.
  • embodiments of the present disclosure also provide a multi-user multimedia control device.
  • the device is provided on the second client and includes:
  • An information module configured to send a time alignment request to the first client in response to the multimedia sharing join operation, and obtain the time information returned by the first client;
  • a second alignment module configured to align the time of the second client with the first client according to the time information
  • the second instruction module is configured to send a control instruction carrying instruction time to the first client in response to a control triggering operation, so that the first client receives at least two instructions carrying instruction time within a preset time.
  • control instructions determine the target control instructions according to each instruction time, and perform corresponding control operations on the target multimedia corresponding to the target control instructions;
  • the second control module is configured to receive the target control instruction and perform the same control operation as the first client on the target multimedia.
  • embodiments of the present disclosure also provide a multi-user multimedia control system, including a first client and at least one second client.
  • the first client is used to execute the multi-user control system described in the first aspect.
  • a user's multimedia control method the second client is configured to execute the multi-user multimedia control method described in the second aspect.
  • embodiments of the present disclosure further provide an electronic device, the electronic device comprising: a processor; a memory for storing instructions executable by the processor; and the processor, for extracting instructions from the memory.
  • the executable instructions are read and executed to implement the multi-user multimedia control method provided by the embodiments of the present disclosure.
  • embodiments of the disclosure further provide a computer-readable storage medium, the storage medium stores a computer program, and the computer program is used to execute the multi-user multimedia control method provided by the embodiments of the disclosure.
  • embodiments of the present disclosure also provide a computer program, including:
  • the computer-readable instructions when executed by the processor, cause the processor to implement the multi-user multimedia control method provided by the embodiments of the present disclosure.
  • embodiments of the present disclosure also provide a computer program product, including computer readable instructions. When executed by a processor, the computer readable instructions cause the processor to implement the multi-user multimedia control method as provided in the embodiments of the present disclosure. .
  • Figure 1 is a schematic flowchart of a multi-user multimedia control method provided by an embodiment of the present disclosure
  • Figure 2 is a schematic diagram of a multimedia control provided by an embodiment of the present disclosure
  • FIG. 3 is a schematic flowchart of another multi-user multimedia control method provided by an embodiment of the present disclosure.
  • Figure 4 is a schematic diagram of time alignment provided by an embodiment of the present disclosure.
  • FIG. 5 is a schematic flowchart of yet another multi-user multimedia control method provided by an embodiment of the present disclosure.
  • Figure 6 is a schematic structural diagram of a multi-user multimedia control device provided by an embodiment of the present disclosure.
  • Figure 7 is a schematic structural diagram of another multi-user multimedia control device provided by an embodiment of the present disclosure.
  • FIG. 8 is a schematic structural diagram of an electronic device provided by an embodiment of the present disclosure.
  • the term “include” and its variations are open-ended, ie, “including but not limited to.”
  • the term “based on” means “based at least in part on.”
  • the term “one embodiment” means “at least one embodiment”; the term “another embodiment” means “at least one additional embodiment”; and the term “some embodiments” means “at least some embodiments”. Relevant definitions of other terms will be given in the description below.
  • Figure 1 is a schematic flowchart of a multi-user multimedia control method provided by an embodiment of the present disclosure.
  • the method can be executed by a multi-user multimedia control device.
  • the device can be implemented using software and/or hardware, and can generally be integrated into an electronic device. in the device.
  • the method is applied to the first client, including:
  • Step 101 Obtain the time alignment request sent by the second client in response to the multimedia sharing joining operation, and send the time information to the second client so that the second client can align its time with the first client based on the time information.
  • multimedia sharing can be an interactive function between multiple clients.
  • the first client can be a control terminal in a multi-user multimedia control scenario, and the corresponding first user can be understood as an initiating user for multi-user simultaneous viewing of multimedia, and can actively send viewing invitations.
  • the second client can be a joining terminal in a multi-user multimedia control scenario, and the corresponding second user can actively join or be invited to join by the first user.
  • the number of second clients is at least one.
  • the embodiments of the present disclosure can realize multi-user simultaneous viewing of multimedia through a multimedia room or live broadcast, which is determined based on the actual situation.
  • the multimedia sharing joining operation can be understood as an operation performed by the second user in the second client in response to the multimedia sharing invitation request sent by the first client to indicate acceptance of the invitation, or an operation actively joined based on the notification that the first user is in the multimedia sharing state. Operations may specifically include gesture control operations or voice control operations, etc.
  • the time alignment request may be a request sent by the second client for time alignment with the first client.
  • the time information may be the current time sent by the first client when the time alignment request is received.
  • Time alignment also known as clock alignment, can be understood as setting the time of two clients on the same timeline, which also represents time synchronization. In the embodiment of the present disclosure, each second client needs to perform time synchronization with the first client. Alignment.
  • the second client can send a time alignment request to the first client.
  • the first client can send time information of the current time to The second client; the second client determines the delay between the second client and the first client based on the time information and the preset delay formula, and determines the delay between the second client and the first client based on the time information and the preset delay formula.
  • the delay adjustment time is aligned with the time of the first client.
  • Step 102 When at least two control instructions carrying instruction times are received within a preset time, determine the target control instruction according to each instruction time.
  • the preset time can be a time period for the first client to determine the target control instruction, that is, the first client performs an operation of deciding the target multimedia control instruction every preset time.
  • the specific time of the preset time can be based on the actual situation. Settings, for example the preset time can be set to 1 second.
  • the instruction time may be the sending time of the control instruction, and the control instruction may be understood as an instruction used to control a multimedia.
  • the instruction time, targeted multimedia, and specific control operations of different control instructions may be different.
  • the target control instruction may be the final control instruction determined by the first client as the control end.
  • the instruction times of at least two control instructions are located on the same time axis, that is, after the time alignment in step 101, the time between the first client and the second client is realized. Synchronize.
  • the at least two control instructions may come from the first client and/or the second client, and at this time, it is determined that an instruction conflict occurs.
  • the target control instruction can be determined based on the instruction time of each control instruction.
  • determining the target control instruction based on each instruction time may include: comparing the instruction times of at least two control instructions, and determining the control instruction with the latest instruction time as the target control instruction based on the comparison result.
  • the first client can compare the instruction times to obtain the comparison result, and determine the last control instruction among the instruction times as the final target control instruction. For example, assume that the first client receives three control instructions, the time of the first control instruction is 10:05 minutes and 1 second, the time of the second control instruction is 10:05 minutes and 2 seconds, and the time of the third control instruction is 10 If it reaches 5 minutes and 3 seconds, the third control command is the target control command.
  • Step 103 Execute corresponding control operations on the target multimedia corresponding to the target control instruction, and send the target control instruction to the second client, so that the second client synchronously performs the same control operation on the target multimedia.
  • the control operation may include at least one of a play operation, a pause operation, a progress control operation, and an interactive operation.
  • Multimedia includes videos, media files composed of images and/or texts that support playback, etc.
  • the interactive operation may include a like operation, Comment operations, etc.
  • the target multimedia may be the multimedia targeted by the target control instruction.
  • the first client can perform a control operation on the target multimedia corresponding to the target control instruction, and can send the target control instruction to each second client, so that the first client and the third client
  • the two clients simultaneously perform the same control operation on the same target multimedia.
  • the target control instruction is a pause operation for the current video
  • the first client and the second client synchronize to implement the pause operation for the current video.
  • Reasonable The solution is that if a second client receives a pause operation for a video before it is played, the video rendering can be displayed in a paused state.
  • the multi-user multimedia control method may further include: when the sending end of the target control instruction is the first client, sending a rejection instruction to at least two corresponding control instructions.
  • the second client among the clients.
  • the first client determines the target control instruction, when it determines that the sending end of the target control instruction is itself, it means that the first user is in a busy state.
  • the second user's request can be rejected, that is, the rejection instruction is sent to at least two
  • the second client among the clients corresponding to the control instruction enables the user at the control end to block other users from controlling the multimedia when controlling the multimedia.
  • time alignment can be used to ensure that all users are on the same timeline in a scenario where multiple users watch multimedia simultaneously. Therefore, when controlling the client to make instruction decisions, the last instruction of all users is guaranteed to be consistent, regardless of intermediate processes. order, correctness, etc., thereby ensuring the consistency of multimedia control results; and by using a client, such as the client where the user is invited, as the control end for command decision-making and control, the command and screen errors caused by failure to send commands are improved.
  • the problem of inconsistency improves the experience of watching multimedia simultaneously.
  • the first client can obtain the time alignment request sent by the second client in response to the multimedia sharing joining operation, and send the time information to the second client, so that the second client Align its time with the first client according to the time information, where the number of the second client is at least one, and multimedia sharing is an interactive function between multiple clients; when at least two clients carrying instructions are received within a preset time time control instructions, determine the target control instructions according to the time of each instruction; perform corresponding control operations on the target multimedia corresponding to the target control instructions, and send the target control instructions to the second client, so that the second client synchronizes the target multimedia Perform the same control operations.
  • the client of one user can serve as the control end. After the client of another user joins, it sends time information to align it with the control end, and then when When the control terminal receives multiple control instructions, it can make decisions based on the instruction time, determine the final response control instruction and control the multimedia, which solves the problem of multimedia control chaos when the control instructions conflict. When the instructions conflict, the instruction decision-making can be realized. Enable multiple users who watch multimedia simultaneously to realize synchronized control of multimedia control, which improves the obvious jump, thereby improving the experience of simultaneous viewing of multimedia.
  • FIG. 2 is a schematic diagram of a multimedia control provided by an embodiment of the present disclosure.
  • the multimedia in the figure takes video as an example, showing a situation in which a first user and three second users watch videos simultaneously.
  • the first client can be used as the control end to decide the final successful instruction;
  • the specific video control process can include: The second user 1 plays video 3 and sends command 1 (that is, request1 in the figure) to the first user.
  • the requested instruction is sent successfully; the second user 1 pauses video 3 and sends instruction 2 to the first user (that is, request2 in the figure),
  • the second user's request will be rejected and the instruction will be rejected (reject); otherwise, the size of the clock will be checked. If If an instruction with a clock smaller than the currently committed clock is received, it will be discarded directly; if an instruction with a clock larger than the currently committed clock is received, the instruction with the current clock will be approved and the instruction will not be received with a smaller clock than the currently committed clock. .
  • the first user can reply to the second user 1 to approve the instruction (that is, apply in the figure).
  • SEI Supplemental Enhancement information
  • the clock is a small notification instruction.
  • both the second user 1 and the second user 2 sent video control instructions to the first user within 1 second.
  • the first user only received two video control instructions sent by the second user 1 and determined which one The pause at the end of the instruction time
  • the video control instruction of video 3 is the target video control instruction.
  • the target video control instruction of pausing video 3 is issued to the second user 1, the second user 2 and the second user 3, so that the first user, the second user 1 and the second user 3 Both the second user 2 and the second user 3 perform a pause operation on the video 3.
  • both the host state and the guest state can control the video.
  • the main state When the main state is in the idle state, it can receive the request sent by the guest state and give an approval receipt.
  • the idle state represents itself.
  • the main state touches the screen, it can receive the request sent by the guest state and give a rejection receipt; when the main state lets go, if it is a valid command, it will send a notification signaling, otherwise the currently committed command will be executed; the guest state In the idle state, it can receive the notification signaling sent by the main state and process it; when the guest state touches the screen, it can receive the notification signaling sent by other guest states or the main state, and commit to using the last instruction, but does not do any processing. ; If the guest state is a valid command when letting go, the request will be sent, otherwise the currently committed command will be executed. That is to say, when the main state controls the video, all other guest states' operations on the video are blocked; when the guest state controls the video, it does not block the operations of other guest states and the main state, but its own player display is still the current one. Control the video.
  • FIG 3 is a schematic flowchart of another multi-user multimedia control method provided by an embodiment of the present disclosure. This method can be executed by a multi-user multimedia control device, where the device can be implemented by software and/or hardware, and can generally be integrated in in electronic equipment. As shown in Figure 3, this method is applied to the second client, including:
  • Step 301 Send a time alignment request to the first client in response to the multimedia sharing joining operation, and obtain the time information returned by the first client.
  • the second client can be a joining terminal in a multi-user multimedia control scenario, and the corresponding second user can actively join or can be invited to join by the first user.
  • the number of second clients is at least one.
  • the multimedia sharing joining operation can be understood as an operation performed by the second user in the second client in response to the multimedia sharing invitation request sent by the first client to indicate acceptance of the invitation, or an operation actively joined based on the notification that the first user is in the multimedia sharing state. Operations may specifically include gesture control operations or voice control operations, etc.
  • the time alignment request may be a request sent by the second client for time alignment with the first client.
  • the time information may be the time sent by the first client when the time alignment request is received.
  • the second client after the second client receives the multimedia sharing invitation request, it can be displayed to the second user. If the second user wants to accept the invitation, the multimedia sharing joining operation can be triggered, or the second user can watch the first user being After the multimedia sharing status is notified, the multimedia sharing joining operation can be actively triggered; after detecting the multimedia sharing joining operation of the second user, the second client can send a time alignment request to the first client. After receiving the time alignment request, the client can send the time information of the current time to the second client, and the second client can receive the time information.
  • Step 302 Align the time of the second client with the first client according to the time information.
  • the above time alignment request includes the first time when the request is sent, and the time information includes the second time when the first client receives the time alignment request.
  • Time alignment also known as clock alignment, can be understood as setting the time of two clients on the same timeline, which also represents time synchronization.
  • each second client needs to perform time synchronization with the first client. Alignment, and time alignment also needs to be re-aligned when the first user changes.
  • aligning the time of the second client with the first client according to the time information may include: determining the first time, the second time, the third time of the received time information and the delay formula. The delay between the second client and the first client; add the delay to the real-time time of the second client to achieve time alignment with the first client.
  • the delay can be understood as the time difference between the two clients.
  • the second client After determining the delay between itself and the first client, the second client can add the delay to its own real-time time to achieve time synchronization with the first client.
  • Figure 4 is a schematic diagram of time alignment provided by an embodiment of the present disclosure.
  • the figure shows the time alignment process between the second client and the first client.
  • the specific process may include :
  • the first client can initiate an invitation to the second client to watch together. When the second client joins to watch together, it will actively time align with the first client.
  • the second client obtains the current time t1 and sends it to the first client.
  • Client, the first client sends the current time t2 when receiving t1 to the second client.
  • the second client After the second client receives t2 sent by the first client, it can obtain the current time t3 and combine t1, t2 and Enter t3 into the delay formula to obtain the delay between the second client and the first client, and adjust the real-time time of the second client from curTime to curTime+delay.
  • the step of aligning the second client's time with the first client's time is executed a preset number of times at a set time interval.
  • the set time can be understood as the time period for time alignment, and the preset number of times can be the number of time alignments per round.
  • the set time can be set to 2 minutes, and the preset number of times is 5 times, with an interval of two minutes.
  • a round of time alignment is performed, with 5 time alignments performed in each round.
  • multi-user multimedia control may also include: displaying an alignment failure notification when the delay is greater than or equal to the delay threshold.
  • the delay threshold can be set in advance, for example, the delay threshold can be set to 300 milliseconds.
  • the second client can compare the delay with the delay threshold and determine whether the delay is greater than or equal to the delay threshold. If not, then Time alignment can be performed; if so, it means that time alignment cannot be performed, and an alignment failure notification can be displayed to the second user, so that the second user knows that time alignment cannot be performed and needs to manually troubleshoot.
  • Step 303 In response to the control triggering operation, send a control instruction carrying the instruction time to the first client, so that the first client receives at least two control instructions carrying the instruction time within a preset time. According to each instruction time, Determine the target control instruction, and perform corresponding control operations on the target multimedia corresponding to the target control instruction.
  • the instruction time may be the time after time alignment of the second client.
  • the control triggering operation of the second user may be the triggering operation of the multimedia performed by the second user in a scenario where multiple users watch multimedia simultaneously. Specifically, it may include gesture control operations or voice control operations, for example, the control triggering operation of the second user. It can be an upward sliding operation on the current multimedia, and this operation can also represent a playback operation on the previous video of the current video.
  • the second client can send a control instruction carrying the instruction time to the first client; when the first client receives at least two control instructions within a preset time, it is determined at this time
  • the control command with the latest command time can be determined as the target control command according to the command time of each control command; the first client performs a control operation on the target multimedia corresponding to the target control command, and can control the target Instructions are sent to each second client.
  • Step 304 Receive the target control instruction and perform the same control operation as the first client on the target multimedia.
  • the second client can receive the target control instruction sent by the first client, and perform the same control operation as the first client on the target multimedia according to the target control instruction. For example, when the target control instruction is a pause operation for the current video, the first client and the second client synchronize to implement the pause operation for the current video.
  • step 302 if the second user does not perform a playback control triggering operation, the second client may not perform step 303 and directly perform step 304, which is determined based on the actual situation.
  • the second client sends a time alignment request to the first client in response to the multimedia sharing joining operation, and obtains the time information returned by the first client; according to the time information, the second client The client's time is aligned with the first client; in response to the control triggering operation, a control instruction carrying the instruction time is sent to the first client, so that the first client receives at least two instructions carrying the instruction time within a preset time.
  • control finger command determine the target control instruction according to each instruction time, and perform corresponding control operations on the target multimedia corresponding to the target control instruction; receive the target control instruction, and perform the same control operations on the target multimedia as the first client.
  • a user's client when multiple users watch multimedia simultaneously, a user's client can be time aligned with the control client after joining. After the time alignment, when the control client receives multiple control instructions, it can proceed according to the instruction time.
  • Decision-making determining the final response control instruction and controlling multimedia, solves the problem of multimedia control confusion when control instructions conflict. Instruction decision-making can be implemented when instructions conflict, so that multiple users who watch multimedia simultaneously can achieve synchronous control of multimedia, improving There is a significant jump, thereby improving the experience of watching multimedia simultaneously.
  • FIG. 5 is a schematic flowchart of yet another multi-user multimedia control method provided by an embodiment of the present disclosure. This method can be executed by a multi-user multimedia control device, where the device can be implemented using software and/or hardware, and can generally be integrated in in electronic equipment. As shown in Figure 5, the method is applied to a system including a first client and at least one second client, including:
  • Step 501 The second client sends a time alignment request to the first client in response to a multimedia sharing join operation.
  • Step 502 The first client obtains the time alignment request and sends the time information to the second client.
  • Step 503 The second client aligns the time of the second client with the first client according to the time information, and sends a control instruction carrying the instruction time to the first client in response to the control triggering operation.
  • Step 504 When the first client receives at least two control instructions carrying instruction time within the preset time, determine the target control instruction according to each instruction time, and perform corresponding control operations on the target multimedia corresponding to the target control instruction, and Target control instructions are sent to the second client.
  • Step 505 The second client receives the target control instruction and performs the same control operation as the first client on the target multimedia.
  • the client of one user can serve as the control end, and after the client of another user joins, it sends time information to make it consistent with the multi-user multimedia control scheme.
  • the control end performs time alignment, and then when the control end receives multiple control instructions, it can make decisions based on the instruction time, determine the final response control instruction and control the multimedia, which solves the problem of multimedia control confusion when control instructions conflict.
  • command decision-making can be implemented so that multiple users viewing multimedia simultaneously can achieve synchronous control of multimedia, which improves apparent jumps and thereby enhances the experience of synchronously viewing multimedia.
  • Embodiments of the present disclosure also provide a multi-user multimedia control system, including the above-mentioned first client and at least one above-mentioned second client.
  • the first client is used to execute the above-mentioned multi-user multimedia control method as shown in Figure 1,
  • the second client is used to execute the above multi-user multimedia control method as shown in Figure 3.
  • FIG. 6 is a schematic structural diagram of a multi-user multimedia control device provided by an embodiment of the present disclosure.
  • the device can be implemented by software and/or hardware, and can generally be integrated in electronic equipment. As shown in Figure 6, the device is installed on the first client and includes:
  • the first alignment module 601 is configured to obtain a time alignment request sent by the second client in response to the multimedia sharing joining operation, and send time information to the second client, so that the second client can Its time is aligned with the first client, wherein the number of the second client is at least one, and the multimedia sharing is an interactive function between multiple clients;
  • the first instruction module 602 is configured to determine the target control instruction according to each instruction time when at least two control instructions carrying instruction times are received within a preset time;
  • the first control module 603 is configured to perform corresponding control operations on the target multimedia corresponding to the target control instruction, and send the target control instruction to the second client, so that the second client synchronizes the The target multimedia performs the same control operations.
  • the first instruction module 602 is used for:
  • the instruction times of at least two control instructions are compared, and the control instruction with the latest instruction time is determined as the target control instruction based on the comparison result.
  • the instruction times of at least two control instructions are located on the same time axis.
  • the device also includes a rejection module, configured to: after determining the target control instruction according to each instruction time,
  • a rejection instruction is sent to the second client among at least two clients corresponding to the control instruction.
  • the preset time is a time period during which the first client determines the target control instruction.
  • control operation includes at least one of a play operation, a pause operation, a progress control operation and an interactive operation
  • the multimedia includes video, media files composed of images and/or text and supporting playback.
  • the multi-user multimedia control device provided by the embodiments of the present disclosure can execute the multi-user multimedia control method provided by any embodiment of the present disclosure, and has functional modules and beneficial effects corresponding to the execution method.
  • Figure 7 is a schematic structural diagram of another multi-user multimedia control device provided by an embodiment of the present disclosure.
  • the device can It is implemented by software and/or hardware and can generally be integrated in electronic equipment.
  • the device is provided on the second client and includes:
  • Information module 701 configured to send a time alignment request to the first client in response to the multimedia sharing joining operation, and obtain the time information returned by the first client;
  • the second alignment module 702 is used to align the time of the second client with the first client according to the time information
  • the second instruction module 703 is configured to send a control instruction carrying an instruction time to the first client in response to a control triggering operation, so that the first client receives at least two instructions carrying the instruction within a preset time.
  • Time control instructions determine the target control instructions according to each instruction time, and perform corresponding control operations on the target multimedia corresponding to the target control instructions;
  • the second control module 704 is configured to receive the target control instruction and perform the same control operation as the first client on the target multimedia.
  • the time alignment request includes the first time when the request is sent, and the time information includes the second time when the first client receives the time alignment request;
  • the second alignment module 702 is used for:
  • the real-time time of the second client is added to the delay to achieve time alignment with the first client.
  • the device also includes an alignment failure module, used for:
  • the step of aligning the second client time with the first client time is executed a preset number of times at a set time interval.
  • the multi-user multimedia control device provided by the embodiments of the present disclosure can execute the multi-user multimedia control method provided by any embodiment of the present disclosure, and has functional modules and beneficial effects corresponding to the execution method.
  • Embodiments of the present disclosure also provide a computer program product, which includes a computer program/instruction.
  • a computer program product which includes a computer program/instruction.
  • the computer program/instruction is executed by a processor, the multi-user multimedia control method provided by any of the disclosed embodiments is implemented.
  • FIG. 8 is a schematic structural diagram of an electronic device provided by an embodiment of the present disclosure.
  • a schematic structural diagram of an electronic device 800 suitable for implementing an embodiment of the present disclosure is shown.
  • Electronic devices in embodiments of the present disclosure The device 800 may include, but is not limited to, mobile phones, notebook computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMP (portable multimedia players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc. mobile terminals as well as fixed terminals such as digital TVs, desktop computers, etc.
  • the electronic device shown in FIG. 8 is only an example and should not impose any limitations on the functions and scope of use of the embodiments of the present disclosure.
  • the electronic device 800 may include a processing device (eg, central processing unit, graphics processor, etc.) 801, which may be loaded into a random access device according to a program stored in a read-only memory (ROM) 802 or from a storage device 808.
  • the program in the memory (RAM) 803 executes various appropriate actions and processes.
  • various programs and data required for the operation of the electronic device 800 are also stored.
  • the processing device 801, ROM 802 and RAM 803 are connected to each other via a bus 804.
  • An input/output (I/O) interface 805 is also connected to bus 804.
  • the following devices may be connected to the I/O interface 805: input devices 806 including, for example, a touch screen, touch pad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; including, for example, a liquid crystal display (LCD), speakers, vibration An output device 807 such as a computer; a storage device 808 including a magnetic tape, a hard disk, etc.; and a communication device 809.
  • the communication device 809 may allow the electronic device 800 to communicate wirelessly or wiredly with other devices to exchange data.
  • FIG. 8 illustrates an electronic device 800 having various means, it should be understood that implementation or availability of all illustrated means is not required. More or fewer means may alternatively be implemented or provided.
  • embodiments of the present disclosure include a computer program product including a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the method illustrated in the flowchart.
  • the computer program may be downloaded and installed from the network via communication device 809, or from storage device 808, or from ROM 802.
  • the processing device 801 the above functions defined in the multi-user multimedia control method of the embodiment of the present disclosure are executed.
  • the computer-readable medium mentioned above in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the above two.
  • the computer-readable storage medium may be, for example, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus or device, or any combination thereof. More specific examples of computer readable storage media may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard drive, random access memory (RAM), read only memory (ROM), removable Programmd read-only memory (EPROM or flash memory), fiber optics, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program for use by or in connection with an instruction execution system, apparatus, or device. used in combination.
  • a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code therein. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above.
  • a computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device .
  • Program code embodied on a computer-readable medium may be transmitted using any suitable medium, including but not limited to: wire, optical cable, RF (radio frequency), etc., or any suitable combination of the above.
  • the client and server can communicate using any currently known or future developed network protocol such as HTTP (HyperText Transfer Protocol), and can communicate with digital data in any form or medium.
  • Communications e.g., communications network
  • communications networks include local area networks (“LAN”), wide area networks (“WAN”), the Internet (e.g., the Internet), and end-to-end networks (e.g., ad hoc end-to-end networks), as well as any currently known or developed in the future network of.
  • the above-mentioned computer-readable medium may be included in the above-mentioned electronic device; it may also exist independently without being assembled into the electronic device.
  • the computer-readable medium carries one or more programs.
  • the electronic device obtains the time alignment request sent by the second client in response to the multimedia sharing joining operation, and sends time information to the second client, so that the second client aligns its time with the first client according to the time information, wherein the number of the second client is at least one, and the Multimedia sharing is an interactive function between multiple clients; when at least two control instructions carrying instruction time are received within a preset time, the target control instruction is determined according to each instruction time; the target multimedia corresponding to the target control instruction is Perform corresponding control operations, and send the target control instructions to the second client, so that the second client synchronously performs the same control operations on the target multimedia.
  • the computer-readable medium carries one or more programs.
  • the electronic device sends a time alignment request to the first client in response to the multimedia sharing joining operation, And obtain the time information returned by the first client; align the time of the second client with the first client according to the time information; send a control instruction carrying the instruction time to the control trigger operation in response to the control trigger operation
  • the first client is configured so that the first client receives at least two control instructions carrying instruction times within a preset time, determines the target control instruction according to each instruction time, and performs the corresponding control instructions corresponding to the target control instructions.
  • the target multimedia performs corresponding control operations; receives the target control instruction, and performs the same operation as the first client on the target multimedia. control operations.
  • the computer-readable medium carries one or more programs.
  • the electronic device causes the second client to send a time alignment request in response to the multimedia sharing join operation. to the first client; the first client obtains the time alignment request and sends time information to the second client; the second client converts the time alignment request of the second client to the second client according to the time information.
  • the time is aligned with the first client, and in response to the control triggering operation, a control instruction carrying the instruction time is sent to the first client; when the first client receives at least two instructions carrying the instruction time within a preset time, control instructions at the instruction time, determine the target control instruction according to each instruction time, perform corresponding control operations on the target multimedia corresponding to the target control instruction, and send the target control instruction to the second client; the second client The client receives the target control instruction and performs the same control operation as the first client on the target multimedia.
  • the first client can obtain the time alignment sent by the second client in response to the multimedia sharing join operation.
  • Request to send time information to the second client so that the second client aligns its time with the first client according to the time information, wherein the number of second clients is at least one, and multimedia sharing is between multiple clients Interactive function; when at least two control instructions carrying instruction time are received within the preset time, the target control instruction is determined according to the instruction time; the corresponding control operation is performed on the target multimedia corresponding to the target control instruction, and the target control instruction is Sent to the second client, so that the second client synchronizes and performs the same control operation on the target multimedia.
  • the client of one user can serve as the control end. After the client of another user joins, it sends time information to align it with the control end, and then when When the control terminal receives multiple control instructions, it can make decisions based on the instruction time, determine the final response control instruction and control the multimedia, which solves the problem of multimedia control chaos when the control instructions conflict.
  • the instruction decision-making can be realized. This enables multiple users to simultaneously watch multimedia to achieve synchronous control of multimedia, improves apparent jumps, and thereby enhances the experience of synchronously watching multimedia.
  • Computer program code for performing the operations of the present disclosure may be written in one or more programming languages, including but not limited to object-oriented programming languages—such as Java, Smalltalk, C++, and Includes conventional procedural programming languages—such as "C” or similar programming languages.
  • the program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer can be connected over any kind of network - including a local area network (LAN) or Wide Area Network (WAN)—connects to the user's computer, or may connect to an external computer (such as through the Internet using an Internet service provider).
  • LAN local area network
  • WAN Wide Area Network
  • each block in the flowchart or block diagram may represent a module, segment, or portion of code that contains one or more logic functions that implement the specified executable instructions.
  • the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown one after another may actually execute substantially in parallel, or they may sometimes execute in the reverse order, depending on the functionality involved.
  • each block of the block diagram and/or flowchart illustration, and combinations of blocks in the block diagram and/or flowchart illustration can be implemented by special purpose hardware-based systems that perform the specified functions or operations. , or can be implemented using a combination of specialized hardware and computer instructions.
  • the units involved in the embodiments of the present disclosure can be implemented in software or hardware. Among them, the name of a unit does not constitute a limitation on the unit itself under certain circumstances.
  • FPGAs Field Programmable Gate Arrays
  • ASICs Application Specific Integrated Circuits
  • ASSPs Application Specific Standard Products
  • SOCs Systems on Chips
  • CPLD Complex Programmable Logical device
  • a machine-readable medium may be a tangible medium that may contain or store a program for use by or in connection with an instruction execution system, apparatus, or device.
  • the machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium.
  • Machine-readable media may include, but are not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or devices, or any suitable combination of the foregoing.
  • machine-readable storage media would include one or more wire-based electrical connections, laptop disks, hard drives, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.
  • RAM random access memory
  • ROM read only memory
  • EPROM or flash memory erasable programmable read only memory
  • CD-ROM portable compact disk read-only memory
  • magnetic storage device or any suitable combination of the above.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本公开实施例涉及一种多用户的多媒体控制方法、装置、系统、设备及介质,其中该方法应用于第一客户端,包括:获取第二客户端响应于多媒体共享加入操作发送的时间对齐请求,发送时间信息至第二客户端,以使第二客户端根据时间信息将其时间与第一客户端对齐,其中,第二客户端的数量为至少一个,多媒体共享为多个客户端之间的互动功能;当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令;对目标控制指令对应的目标多媒体执行相应的控制操作,并将目标控制指令发送至第二客户端,以使第二客户端同步对目标多媒体执行相同的控制操作。

Description

多用户的多媒体控制方法、装置、系统、设备及介质
本申请是以申请号为202210346489.2,申请日为2022年3月31日的中国申请为基础,并主张其优先权,该中国申请的公开内容在此作为整体引入本申请中。
技术领域
本公开涉及多媒体控制技术领域,尤其涉及一种多用户的多媒体控制方法、装置、系统、设备及介质。
背景技术
随着互联网技术和多媒体技术的不断发展,多个用户可以实时同步观看多媒体,使多媒体观看体验与交互体验得到很大提升。
发明内容
本公开提供了一种多用户的多媒体控制方法、装置、系统、设备及介质。
第一方面,本公开实施例提供了一种多用户的多媒体控制方法,所述方法应用于第一客户端,包括:
获取第二客户端响应于多媒体共享加入操作发送的时间对齐请求,发送时间信息至所述第二客户端,以使所述第二客户端根据所述时间信息将其时间与所述第一客户端对齐,其中,所述第二客户端的数量为至少一个,所述多媒体共享为多个客户端之间的互动功能;
当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令;
对所述目标控制指令对应的目标多媒体执行相应的控制操作,并将所述目标控制指令发送至所述第二客户端,以使所述第二客户端同步对所述目标多媒体执行相同的控制操作。
第二方面,本公开实施例还提供了一种多用户的多媒体控制方法,所述方法应用于第二客户端,包括:
响应于多媒体共享加入操作发送时间对齐请求至第一客户端,并获取所述第一客户端返回的时间信息;
根据所述时间信息将所述第二客户端的时间与所述第一客户端对齐;
响应于控制触发操作发送携带有指令时间的控制指令至所述第一客户端,以使所述第 一客户端当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令,并对所述目标控制指令对应的目标多媒体执行相应的控制操作;
接收所述目标控制指令,并对所述目标多媒体执行与所述第一客户端相同的控制操作。
第三方面,本公开实施例还提供了一种多用户的多媒体控制方法,所述方法应用于包括第一客户端和至少一个第二客户端的系统,包括:
所述第二客户端响应于多媒体共享加入操作发送时间对齐请求至所述第一客户端;
所述第一客户端获取所述时间对齐请求,发送时间信息至所述第二客户端;
所述第二客户端根据所述时间信息将所述第二客户端的时间与所述第一客户端对齐,并响应于控制触发操作发送携带有指令时间的控制指令至所述第一客户端;
当预设时间内所述第一客户端接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令,并且对所述目标控制指令对应的目标多媒体执行相应的控制操作,将所述目标控制指令发送至所述第二客户端;
所述第二客户端接收所述目标控制指令,并对所述目标多媒体执行与所述第一客户端相同的控制操作。
第四方面,本公开实施例还提供了一种多用户的多媒体控制装置,所述装置设置于第一客户端,包括:
第一对齐模块,用于获取第二客户端响应于多媒体共享加入操作发送的时间对齐请求,发送时间信息至所述第二客户端,以使所述第二客户端根据所述时间信息将其时间与所述第一客户端对齐,其中,所述第二客户端的数量为至少一个,所述多媒体共享为多个客户端之间的互动功能;
第一指令模块,用于当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令;
第一控制模块,用于对所述目标控制指令对应的目标多媒体执行相应的控制操作,并将所述目标控制指令发送至所述第二客户端,以使所述第二客户端同步对所述目标多媒体执行相同的控制操作。
第五方面,本公开实施例还提供了一种多用户的多媒体控制装置,所述装置设置于第二客户端,包括:
信息模块,用于响应于多媒体共享加入操作发送时间对齐请求至第一客户端,并获取所述第一客户端返回的时间信息;
第二对齐模块,用于根据所述时间信息将所述第二客户端的时间与所述第一客户端对齐;
第二指令模块,用于响应于控制触发操作发送携带有指令时间的控制指令至所述第一客户端,以使所述第一客户端当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令,并对所述目标控制指令对应的目标多媒体执行相应的控制操作;
第二控制模块,用于接收所述目标控制指令,并对所述目标多媒体执行与所述第一客户端相同的控制操作。
第六方面,本公开实施例还提供了一种多用户的多媒体控制系统,包括第一客户端和至少一个第二客户端,所述第一客户端用于执行上述第一方面所述的多用户的多媒体控制方法,所述第二客户端用于执行上述第二方面所述的多用户的多媒体控制方法。
第七方面,本公开实施例还提供了一种电子设备,所述电子设备包括:处理器;用于存储所述处理器可执行指令的存储器;所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现如本公开实施例提供的多用户的多媒体控制方法。
第八方面,本公开实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行如本公开实施例提供的多用户的多媒体控制方法。
第九方面,本公开实施例还提供了一种计算机程序,包括:
计算机可读指令,计算机可读指令当由处理器执行时使处理器实现如本公开实施例提供的多用户的多媒体控制方法。
第十方面,本公开实施例还提供了一种计算机程序产品,包括计算机可读指令,计算机可读指令当由处理器执行时使处理器实现如本公开实施例提供的多用户的多媒体控制方法。
附图说明
结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
图1为本公开实施例提供的一种多用户的多媒体控制方法的流程示意图;
图2为本公开实施例提供的一种多媒体控制的示意图;
图3为本公开实施例提供的另一种多用户的多媒体控制方法的流程示意图;
图4为本公开实施例提供的一种时间对齐的示意图;
图5为本公开实施例提供的又一种多用户的多媒体控制方法的流程示意图;
图6为本公开实施例提供的一种多用户的多媒体控制装置的结构示意图;
图7为本公开实施例提供的另一种多用户的多媒体控制装置的结构示意图;
图8为本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
目前,在多个用户实时同步看相同的多媒体的情况下,每个用户都能够支持对多媒体的控制,但是当多个用户的控制指令存在冲突时,可能会造成多媒体播放混乱、出现明显跳变的问题,影响用户体验。
具体而言,在多个用户实时同步看相同的多媒体的情况下,能够支持每个用户对多媒体的控制,也即任意时刻均允许同步看多媒体的多个用户中的任意用户执行对多媒体的各种控制操作,当各用户控制操作的控制指令不冲突时可以采用回合制的方式依次操作,但是当多个用户的控制指令存在冲突时,可能会造成多媒体播放混乱、出现明显跳变的问题,影响用户体验。为了解决上述问题,本公开实施例提供了一种多用户的多媒体控制方法,下面结合具体的实施例对该方法进行介绍。
图1为本公开实施例提供的一种多用户的多媒体控制方法的流程示意图,该方法可以由多用户的多媒体控制装置执行,其中该装置可以采用软件和/或硬件实现,一般可集成在电子设备中。如图1所示,该方法应用于第一客户端,包括:
步骤101、获取第二客户端响应于多媒体共享加入操作发送的时间对齐请求,发送时间信息至第二客户端,以使第二客户端根据时间信息将其时间与第一客户端对齐。
其中,多媒体共享可以为多个客户端之间的互动功能。第一客户端可以是多用户的多媒体控制场景下的控制端,对应的第一用户可以理解为多用户同步观看多媒体的发起用户,可以主动发出观看邀请。第二客户端可以为多用户的多媒体控制场景下的加入端,对应的第二用户可以主动加入也可以被第一用户邀请加入。第二客户端的数量为至少一个。本公开实施例可以通过多媒体房间或直播的方式实现多用户同步观看多媒体,具体根据实际情况确定。
多媒体共享加入操作可以理解为第二用户在第二客户端中针对第一客户端发送的多媒体共享邀请请求执行的表征接受邀请的操作,或者基于第一用户正在多媒体共享状态的通知而主动加入的操作,具体可以包括手势控制操作或语音控制操作等等。时间对齐请求可以是第二客户端发送的用于与第一客户端进行时间对齐的请求。时间信息可以是第一客户端发送的接收到时间对齐请求的当前时间。时间对齐,又称时钟对齐,可以理解为将两个客户端的时间设置在同一时间轴,也即表征时间同步,本公开实施例中针对每个第二客户端均需要与第一客户端进行时间对齐。
具体地,第二客户端在检测到第二用户的多媒体共享加入操作之后,可以发送时间对齐请求至第一客户端,第一客户端接收到该时间对齐请求之后可以发送当前时间的时间信息至第二客户端;第二客户端根据该时间信息以及预设的时延公式确定第二客户端与第一客户端之间的时延,并根据第二客户端与第一客户端之间的时延调整时间与第一客户端的时间对齐。
步骤102、当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令。
其中,预设时间可以为第一客户端确定目标控制指令的时间周期,也即第一客户端每间隔预设时间进行一次决策目标多媒体控制指令的操作,预设时间的具体时间可以根据实际情况设置,例如预设时间可以设置为1秒。指令时间可以是控制指令的发送时间,控制指令可以理解为用于对一个多媒体进行控制操作的指令,不同控制指令的指令时间、针对的多媒体以及具体地控制操作可以不同。目标控制指令可以是第一客户端作为控制端确定的最终的控制指令。
当第二客户端的时间与第一客户端对齐之后,至少两个控制指令的指令时间位于同一时间轴,也即经过步骤101的时间对齐,第一客户端与第二客户端之间实现了时间同步。
在本公开实施例中,第一客户端在预设时间内接收到至少两个控制指令时,至少两个控制指令可以来自第一客户端和/或第二客户端,此时确定出现指令冲突场景,可以根据各控制指令的指令时间确定目标控制指令。可选的,根据各指令时间确定目标控制指令,可以包括:将至少两个控制指令的指令时间进行对比,根据对比结果将指令时间最靠后的控制指令确定为目标控制指令。
第一客户端在根据各指令时间确定目标控制指令时,可以将各指令时间进行对比,得到对比结果,将各指令时间中时间最靠后的控制指令确定为最终的目标控制指令。例如,假设第一客户端接收到三个控制指令,第一控制指令的时间为10点5分1秒,第二控制指令的时间为10点5分2秒,第三控制指令的时间为10点5分3秒,则第三控制指令为目标控制指令。
步骤103、对目标控制指令对应的目标多媒体执行相应的控制操作,并将目标控制指令发送至第二客户端,以使第二客户端同步对目标多媒体执行相同的控制操作。
其中,控制操作可以包括播放操作、暂停操作、进度控制操作以及交互操作中的至少一个,多媒体包括视频、由图像和/或文本组成且支持播放的媒体文件等,交互操作可以包括点赞操作、评论操作等。目标多媒体可以是目标控制指令针对的多媒体。
具体地,第一客户端在确定目标控制指令之后,可以针对目标控制指令对应的目标多媒体进行控制操作,并且可以将目标控制指令发送至每个第二客户端,以使第一客户端和第二客户端同步对同一个目标多媒体进行相同的控制操作。例如,当目标控制指令为针对当前视频的暂停操作,第一客户端和第二客户端同步实现对当前视频的暂停操作。可以理 解的是,如果一个第二客户端在还未播放一个视频时接收到对该视频的暂停操作,此时可以将该视频渲染保持暂停状态展示。
在一些实施例中,根据各指令时间确定目标控制指令之后,多用户的多媒体控制方法还可以包括:当目标控制指令的发送端为第一客户端,则发送拒绝指令到至少两个控制指令对应的客户端中的第二客户端。
第一客户端在确定目标控制指令之后,当确定该目标控制指令的发送端为自身,说明第一用户处于忙碌状态,此时可以拒绝第二用户的请求,也即发送拒绝指令到至少两个控制指令对应的客户端中的第二客户端,实现了控制端的用户在控制多媒体时,阻塞其他用户对多媒体的控制操作。
相关技术中,在多个用户同步观看多媒体的情况下,当多个用户同时进行频繁滑动时,会出现明显跳变;并且当邀请用户所在客户端为控制端,对于其他用户的控制指令,如果未同步到控制端则是一个失败的指令,会导致该用户信任了错误的指令,进而出现指令与画面不一致的情况。
本方案中,通过时间对齐,可以保证在多个用户同步观看多媒体的场景下的全部用户位于同一时间轴,因此在控制客户端进行指令决策时保证所有用户的最后一条指令一致,不考虑中间过程的顺序性、正确性等,从而保证对多媒体控制的结果的一致性;并且通过将一个客户端例如邀请用户所在客户端作为控制端进行指令决策和控制,改善了因指令发送失败导致指令与画面不一致的问题,进而提升了同步观看多媒体的体验效果。
本公开实施例提供的多用户的多媒体控制方案,第一客户端可以获取第二客户端响应于多媒体共享加入操作发送的时间对齐请求,发送时间信息至第二客户端,以使第二客户端根据时间信息将其时间与第一客户端对齐,其中,第二客户端的数量为至少一个,多媒体共享为多个客户端之间的互动功能;当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令;对目标控制指令对应的目标多媒体执行相应的控制操作,并将目标控制指令发送至第二客户端,以使第二客户端同步对目标多媒体执行相同的控制操作。采用上述技术方案,在多个用户同步观看多媒体的情况下,一个用户所在的客户端可以作为控制端,在另一用户所在客户端加入之后发送时间信息使其与控制端进行时间对齐,之后当控制端接收到多个控制指令时,可以根据指令时间进行决策,确定最终响应的控制指令并控制多媒体,解决了控制指令存在冲突时的多媒体控制混乱的问题,在指令冲突时可以实现指令决策以使同步观看多媒体的多个用户实现多媒体的同步控 制,改善了明显跳变,进而提升了同步观看多媒体的体验效果。
接下来通过一个具体的示例对本公开实施例的多用户的多媒体控制方法进行进一步说明。示例性的,图2为本公开实施例提供的一种多媒体控制的示意图,如图2所示,图中多媒体以视频为例,展示了第一用户与3个第二用户同步观看视频的情况下的视频控制过程,由于指令发送与接收存在一定成功率且视频的播放是由第一用户决定,可以将第一客户端作为控制端去决策最终成功的指令;具体视频控制过程可以包括:第二用户1播放视频3,向第一用户发送指令1(也即图中request1),该request1的clock=1,cmd=1,aweme_id=3,其中,clock表示指令时间,cmd表示指令对应的控制操作,1表示播放操作,aweme_id表示指令针对的视频,并开始3s超时等待,该请求的指令发送成功;第二用户1暂停视频3,向第一用户发送指令2(也即图中request2),该request2的clock=2,cmd=2,2表示暂停操作,aweme_id=3,并开始3s超时等待,该请求的指令发送成功;第二用户2播放视频1,向第一用户发送指令3(也即图中request3),该request3的clock=3,cmd=1,aweme_id=1),并开始3s超时等待,该请求的指令发送失败。
第一用户接收到指令之后,如果当前处于忙碌状态(也即第一用户当前也在进行控制触发操作),则拒绝第二用户的请求,回执拒绝指令(reject);否则检查clock的大小,如果收到clock比当前承诺的clock较小的指令,则直接丢弃;如果收到clock比当前承诺的clock较大的指令,则批准当前clock的指令,并承诺不会接收比该clock更小的指令。第一用户可以回执给第二用户1以批准指令(也即图中apply),该批准指令的clock=2,指令时间最靠后;并下发第二用户2和第二用户2以通知指令(也即图中的notify),该通知指令的clock=2,cmd=2,aweme=3,并开始推暂停aweme_id=3的信息(Supplemental Enhancement information,SEI)流。第一用户每决策完一次指令,需要等1s频控后去处理下一条指令。
第二用户1收到批准指令后,承诺不会接收比该clock小的notify,并等待对应SEI流到达;第二用户2在等待批准指令超时则执行最新的通知指令;并且第二用户2和第三用户2收到第一用户的clock=2的通知指令之后,如果收到clock比当前承诺clock更小的通知指令,则直接丢弃;否则选择当前clock的通知指令,并承诺不会接收比该clock小的通知指令。
如图2中,第二用户1和第二用户2均在1秒内容发送了视频控制指令给第一用户,第一用户仅收到第二用户1发送的两个视频控制指令,并确定其中指令时间最靠后的暂停 视频3的视频控制指令为目标视频控制指令,下发暂停视频3的目标视频控制指令给第二用户1、第二用户2和第二用户3,以使第一用户和第二用户1、第二用户2和第二用户3均执行对视频3的暂停操作。
本方案中如果将第一用户称为主态,第二用户称为客态,主客态均能控制视频,主态在空闲状态时能够接收客态发送的请求并给予批准回执,空闲状态表征自身没有操作视频;主态在触屏时能够接收客态发送的请求并给予拒绝回执;主态在松手时如果是一次有效的指令,则发送通知信令,否则取当前承诺的指令执行;客态在空闲状态时能够接收主态发送的通知信令,并处理;客态在触屏时能够接收其他客态或主态发送的通知信令,并去承诺使用最后一条指令,但不做任何处理;客态在松手时如果是一次有效的指令,则发送请求,否则取当前承诺的指令执行。也即,主态在控制视频时,其他所有客态对视频的操作是被阻塞的;客态在控制视频时,不阻塞其他客态和主态的操作,但自己的播放器展示仍为当前控制视频。
图3为本公开实施例提供的另一种多用户的多媒体控制方法的流程示意图,该方法可以由多用户的多媒体控制装置执行,其中该装置可以采用软件和/或硬件实现,一般可集成在电子设备中。如图3所示,该方法应用于第二客户端,包括:
步骤301、响应于多媒体共享加入操作发送时间对齐请求至第一客户端,并获取第一客户端返回的时间信息。
其中,第二客户端可以为多用户的多媒体控制场景下的加入端,对应的第二用户可以主动加入也可以被第一用户邀请加入。第二客户端的数量为至少一个。多媒体共享加入操作可以理解为第二用户在第二客户端中针对第一客户端发送的多媒体共享邀请请求执行的表征接受邀请的操作,或者基于第一用户正在多媒体共享状态的通知而主动加入的操作,具体可以包括手势控制操作或语音控制操作等等。时间对齐请求可以是第二客户端发送的用于与第一客户端进行时间对齐的请求。时间信息可以是第一客户端发送的接收到时间对齐请求时的时间。
具体地,第二客户端接收到多媒体共享邀请请求之后,可以展示给第二用户,如果第二用户想要接受邀请,则可以触发多媒体共享加入操作,或者第二用户在观看到第一用户正在多媒体共享状态的通知之后,可以主动触发多媒体共享加入操作;第二客户端在检测到第二用户的多媒体共享加入操作之后,可以发送时间对齐请求至第一客户端,第一客户 端接收到该时间对齐请求之后可以发送当前时间的时间信息至第二客户端,第二客户端可以接收到该时间信息。
步骤302、根据时间信息将第二客户端的时间与第一客户端对齐。
上述时间对齐请求中包括发送请求时的第一时间,时间信息包括第一客户端接收到时间对齐请求的第二时间。时间对齐,又称时钟对齐,可以理解为将两个客户端的时间设置在同一时间轴,也即表征时间同步,本公开实施例中针对每个第二客户端均需要与第一客户端进行时间对齐,并且当第一用户发生变化时也需要重新进行时间对齐。
在本公开实施例中,根据时间信息将第二客户端的时间与第一客户端对齐,可以包括:根据第一时间、第二时间以及接收到时间信息的第三时间以及时延公式,确定第二客户端与第一客户端之间的时延;将第二客户端的实时时间加上时延,以与第一客户端实现时间对齐。
其中,时延可以理解为两个客户端之间的时间差。时延公式可以表示为delay=((t2-t1)+(t2-t3))/2=t2-(t1+t3)/2,delay表示第二客户端与第一客户端之间的时延,t1表示上述第一时间,t2表示上述第二时间,t3表示上述第三时间。第二客户端在确定自身与第一客户端之间的时延之后,可以将自身的实时时间加上该时延,以与第一客户端之间实现时间同步。
示例性的,图4为本公开实施例提供的一种时间对齐的示意图,如图4所示,图中展示了第二客户端与第一客户端之间的时间对齐过程,具体过程可以包括:第一客户端可以向第二客户端发起一起看的邀请,当第二客户端加入一起看时便会主动与第一客户端进行时间对齐,第二客户端获取当前时间t1发送给第一客户端,第一客户端将接收到t1时的当前时间t2发送给第二客户端,第二客户端接收到第一客户端发送的t2后,可以获取当前时间t3,并将t1、t2和t3输入时延公式中,得到第二客户端与第一客户端的时延,将第二客户端的实时时间从curTime调整为curTime+delay。
可选的,将第二客户端时间与第一客户端对齐的步骤每间隔设定时间执行预设次数。设定时间可以理解为进行时间对齐的时间周期,预设次数可以为每轮进行时间对齐的次数,例如该设定时间可以设置为2分钟,预设次数为5次,此时每间隔两分钟进行一轮时间对齐,每轮执行5次时间对齐。通过将时间对齐的步骤周期性的多次执行,能够提升时延确定的准确性,提升时间对齐的准确性,进而能够提升后续多媒体控制的准确性。
可以理解的是,上述时延主要受通道以及网络等因素的影响,但影响较小,本公开实 施例中可以将该影响忽略。
可选的,多用户的多媒体控制还可以包括:当时延大于或等于时延阈值,则展示对齐失败通知。其中,时延阈值可以预先进行设置,例如时延阈值可以设置为300毫秒。第二客户端在确定第二客户端与第一客户端之间的时延之后,可以将该时延与时延阈值进行对比,判断该时延是否大于或等于时延阈值,若否,则可以进行时间对齐;若是,则说明不能进行时间对齐,可以展示对齐失败通知给第二用户,以使第二用户获知不能进行时间对齐,需要手动排除故障。
步骤303、响应于控制触发操作发送携带有指令时间的控制指令至第一客户端,以使第一客户端当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令,并对目标控制指令对应的目标多媒体执行相应的控制操作。
其中,指令时间可以是第二客户端经过时间对齐后的时间。其中,第二用户的控制触发操作可以是第二用户在多用户同步观看多媒体的场景下对多媒体进行的触发操作,具体可以包括手势控制操作或语音控制操作等,例如第二用户的控制触发操作可以为对当前多媒体的向上滑动操作,该操作也可以表示对当前视频的上一视频的播放操作。
第二客户端响应于第二用户的控制触发操作,可以发送携带有指令时间的控制指令至第一客户端;第一客户端在预设时间内接收到至少两个控制指令时,此时确定出现指令冲突场景,可以根据各控制指令的指令时间,将指令时间最靠后的控制指令确定为目标控制指令;第一客户端针对目标控制指令对应的目标多媒体进行控制操作,并且可以将目标控制指令发送至每个第二客户端。
步骤304、接收目标控制指令,并对目标多媒体执行与第一客户端相同的控制操作。
第二客户端可以接收第一客户端发送的目标控制指令,并根据该目标控制指令针对目标多媒体执行与第一客户端相同的控制操作。例如,当目标控制指令为针对当前视频的暂停操作,第一客户端和第二客户端同步实现对当前视频的暂停操作。
可选的,在步骤302之后,如果第二用户没有进行播放控制触发操作,则第二客户端可以不执行步骤303,直接执行步骤304,具体根据实际情况确定。
本公开实施例提供的多用户的多媒体控制方案,第二客户端响应于多媒体共享加入操作发送时间对齐请求至第一客户端,并获取第一客户端返回的时间信息;根据时间信息将第二客户端的时间与第一客户端对齐;响应于控制触发操作发送携带有指令时间的控制指令至第一客户端,以使第一客户端当预设时间内接收到至少两个携带有指令时间的控制指 令,根据各指令时间确定目标控制指令,并对目标控制指令对应的目标多媒体执行相应的控制操作;接收目标控制指令,并对目标多媒体执行与第一客户端相同的控制操作。采用上述技术方案,在多个用户同步观看多媒体的情况下,一个用户所在客户端加入之后可以与控制客户端进行时间对齐,时间对齐之后控制端接收到多个控制指令时,可以根据指令时间进行决策,确定最终响应的控制指令并控制多媒体,解决了控制指令存在冲突时的多媒体控制混乱的问题,在指令冲突时可以实现指令决策以使同步观看多媒体的多个用户实现多媒体的同步控制,改善了明显跳变,进而提升了同步观看多媒体的体验效果。
图5为本公开实施例提供的又一种多用户的多媒体控制方法的流程示意图,该方法可以由多用户的多媒体控制装置执行,其中该装置可以采用软件和/或硬件实现,一般可集成在电子设备中。如图5所示,该方法应用于包括第一客户端和至少一个第二客户端的系统,包括:
步骤501、第二客户端响应于多媒体共享加入操作发送时间对齐请求至第一客户端。
步骤502、第一客户端获取时间对齐请求,发送时间信息至第二客户端。
步骤503、第二客户端根据时间信息将第二客户端的时间与第一客户端对齐,并响应于控制触发操作发送携带有指令时间的控制指令至第一客户端。
步骤504、当预设时间内第一客户端接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令,并且对目标控制指令对应的目标多媒体执行相应的控制操作,将目标控制指令发送至第二客户端。
步骤505、第二客户端接收目标控制指令,并对目标多媒体执行与第一客户端相同的控制操作。
本公开实施例提供的多用户的多媒体控制方案,在多个用户同步观看多媒体的情况下,一个用户所在的客户端可以作为控制端,在另一用户所在客户端加入之后发送时间信息使其与控制端进行时间对齐,之后当控制端接收到多个控制指令时,可以根据指令时间进行决策,确定最终响应的控制指令并控制多媒体,解决了控制指令存在冲突时的多媒体控制混乱的问题,在指令冲突时可以实现指令决策以使同步观看多媒体的多个用户实现多媒体的同步控制,改善了明显跳变,进而提升了同步观看多媒体的体验效果。
本公开实施例还提供了一种多用户的多媒体控制系统,包括上述第一客户端和至少一个上述第二客户端,第一客户端用于执行上述如图1的多用户的多媒体控制方法,所述第 二客户端用于执行上述如图3的多用户的多媒体控制方法。
图6为本公开实施例提供的一种多用户的多媒体控制装置的结构示意图,该装置可由软件和/或硬件实现,一般可集成在电子设备中。如图6所示,该装置设置于第一客户端,包括:
第一对齐模块601,用于获取第二客户端响应于多媒体共享加入操作发送的时间对齐请求,发送时间信息至所述第二客户端,以使所述第二客户端根据所述时间信息将其时间与所述第一客户端对齐,其中,所述第二客户端的数量为至少一个,所述多媒体共享为多个客户端之间的互动功能;
第一指令模块602,用于当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令;
第一控制模块603,用于对所述目标控制指令对应的目标多媒体执行相应的控制操作,并将所述目标控制指令发送至所述第二客户端,以使所述第二客户端同步对所述目标多媒体执行相同的控制操作。
可选的,所述第一指令模块602用于:
将至少两个所述控制指令的指令时间进行对比,根据对比结果将指令时间最靠后的控制指令确定为所述目标控制指令。
可选的,所述第二客户端的时间与所述第一客户端对齐之后,至少两个所述控制指令的指令时间位于同一时间轴。
可选的,所述装置还包括拒绝模块,用于:根据各指令时间确定目标控制指令之后,
当所述目标控制指令的发送端为所述第一客户端,则发送拒绝指令到至少两个所述控制指令对应的客户端中的所述第二客户端。
可选的,所述预设时间为所述第一客户端确定所述目标控制指令的时间周期。
可选的,所述控制操作包括播放操作、暂停操作、进度控制操作以及交互操作中的至少一个,所述多媒体包括视频、由图像和/或文本组成且支持播放的媒体文件。
本公开实施例所提供的多用户的多媒体控制装置可执行本公开任意实施例所提供的多用户的多媒体控制方法,具备执行方法相应的功能模块和有益效果。
图7为本公开实施例提供的另一种多用户的多媒体控制装置的结构示意图,该装置可 由软件和/或硬件实现,一般可集成在电子设备中。如图7所示,该装置设置于第二客户端,包括:
信息模块701,用于响应于多媒体共享加入操作发送时间对齐请求至第一客户端,并获取所述第一客户端返回的时间信息;
第二对齐模块702,用于根据所述时间信息将所述第二客户端的时间与所述第一客户端对齐;
第二指令模块703,用于响应于控制触发操作发送携带有指令时间的控制指令至所述第一客户端,以使所述第一客户端当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令,并对所述目标控制指令对应的目标多媒体执行相应的控制操作;
第二控制模块704,用于接收所述目标控制指令,并对所述目标多媒体执行与所述第一客户端相同的控制操作。
可选的,所述时间对齐请求中包括发送请求时的第一时间,所述时间信息包括所述第一客户端接收到时间对齐请求的第二时间;
所述第二对齐模块702用于:
根据所述第一时间、所述第二时间以及接收到所述时间信息的第三时间以及时延公式,确定所述第二客户端与所述第一客户端之间的时延;
将所述第二客户端的实时时间加上所述时延,以与所述第一客户端实现时间对齐。
可选的,所述装置还包括对齐失败模块,用于:
当所述时延大于或等于时延阈值,则展示对齐失败通知。
可选的,将所述第二客户端时间与所述第一客户端对齐的步骤每间隔设定时间执行预设次数。
本公开实施例所提供的多用户的多媒体控制装置可执行本公开任意实施例所提供的多用户的多媒体控制方法,具备执行方法相应的功能模块和有益效果。
本公开实施例还提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现公开任意实施例所提供的多用户的多媒体控制方法。
图8为本公开实施例提供的一种电子设备的结构示意图。下面具体参考图8,其示出了适于用来实现本公开实施例中的电子设备800的结构示意图。本公开实施例中的电子设 备800可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图8示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图8所示,电子设备800可以包括处理装置(例如中央处理器、图形处理器等)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储装置808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM 803中,还存储有电子设备800操作所需的各种程序和数据。处理装置801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
通常,以下装置可以连接至I/O接口805:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置806;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置807;包括例如磁带、硬盘等的存储装置808;以及通信装置809。通信装置809可以允许电子设备800与其他设备进行无线或有线通信以交换数据。虽然图8示出了具有各种装置的电子设备800,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置809从网络上被下载和安装,或者从存储装置808被安装,或者从ROM 802被安装。在该计算机程序被处理装置801执行时,执行本公开实施例的多用户的多媒体控制方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与 其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText Transfer Protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取第二客户端响应于多媒体共享加入操作发送的时间对齐请求,发送时间信息至所述第二客户端,以使所述第二客户端根据所述时间信息将其时间与所述第一客户端对齐,其中,所述第二客户端的数量为至少一个,所述多媒体共享为多个客户端之间的互动功能;当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令;对所述目标控制指令对应的目标多媒体执行相应的控制操作,并将所述目标控制指令发送至所述第二客户端,以使所述第二客户端同步对所述目标多媒体执行相同的控制操作。
或者,上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:响应于多媒体共享加入操作发送时间对齐请求至第一客户端,并获取所述第一客户端返回的时间信息;根据所述时间信息将所述第二客户端的时间与所述第一客户端对齐;响应于控制触发操作发送携带有指令时间的控制指令至所述第一客户端,以使所述第一客户端当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令,并对所述目标控制指令对应的目标多媒体执行相应的控制操作;接收所述目标控制指令,并对所述目标多媒体执行与所述第一客户端相同 的控制操作。
或者,上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:所述第二客户端响应于多媒体共享加入操作发送时间对齐请求至所述第一客户端;所述第一客户端获取所述时间对齐请求,发送时间信息至所述第二客户端;所述第二客户端根据所述时间信息将所述第二客户端的时间与所述第一客户端对齐,并响应于控制触发操作发送携带有指令时间的控制指令至所述第一客户端;当预设时间内所述第一客户端接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令,并且对所述目标控制指令对应的目标多媒体执行相应的控制操作,将所述目标控制指令发送至所述第二客户端;第二客户端接收所述目标控制指令,并对所述目标多媒体执行与所述第一客户端相同的控制操作。
本公开实施例提供的技术方案与相关技术相比具有如下优点:本公开实施例提供的多用户的多媒体控制方案,第一客户端可以获取第二客户端响应于多媒体共享加入操作发送的时间对齐请求,发送时间信息至第二客户端,以使第二客户端根据时间信息将其时间与第一客户端对齐,其中,第二客户端的数量为至少一个,多媒体共享为多个客户端之间的互动功能;当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令;对目标控制指令对应的目标多媒体执行相应的控制操作,并将目标控制指令发送至第二客户端,以使第二客户端同步对目标多媒体执行相同的控制操作。采用上述技术方案,在多个用户同步观看多媒体的情况下,一个用户所在的客户端可以作为控制端,在另一用户所在客户端加入之后发送时间信息使其与控制端进行时间对齐,之后当控制端接收到多个控制指令时,可以根据指令时间进行决策,确定最终响应的控制指令并控制多媒体,解决了控制指令存在冲突时的多媒体控制混乱的问题,在指令冲突时可以实现指令决策以使同步观看多媒体的多个用户实现多媒体的同步控制,改善了明显跳变,进而提升了同步观看多媒体的体验效果。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网 (LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组 合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

Claims (18)

  1. 一种多用户的多媒体控制方法,应用于第一客户端,所述多媒体控制方法包括:
    获取第二客户端响应于多媒体共享加入操作发送的时间对齐请求,发送时间信息至所述第二客户端,以使所述第二客户端根据所述时间信息将其时间与所述第一客户端对齐,其中,所述第二客户端的数量为至少一个,所述多媒体共享为多个客户端之间的互动功能;
    当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令;
    对所述目标控制指令对应的目标多媒体执行相应的控制操作,并将所述目标控制指令发送至所述第二客户端,以使所述第二客户端同步对所述目标多媒体执行相同的控制操作。
  2. 根据权利要求1所述的多媒体控制方法,其中,根据各指令时间确定目标控制指令,包括:
    将至少两个所述控制指令的指令时间进行对比,根据对比结果将指令时间最靠后的控制指令确定为所述目标控制指令。
  3. 根据权利要求1所述的多媒体控制方法,其中,所述第二客户端的时间与所述第一客户端对齐之后,至少两个所述控制指令的指令时间位于同一时间轴。
  4. 根据权利要求1所述的多媒体控制方法,其中,根据各指令时间确定目标控制指令之后,所述多媒体控制方法还包括:
    当所述目标控制指令的发送端为所述第一客户端,则发送拒绝指令到至少两个所述控制指令对应的客户端中的所述第二客户端。
  5. 根据权利要求1所述的多媒体控制方法,其中,所述预设时间为所述第一客户端确定所述目标控制指令的时间周期。
  6. 根据权利要求1所述的多媒体控制方法,其中,所述控制操作包括播放操作、暂停操作、进度控制操作以及交互操作中的至少一个,所述多媒体包括视频、由图像和/或文本组成且支持播放的媒体文件。
  7. 一种多用户的多媒体控制方法,应用于第二客户端,所述多媒体控制方法包括:
    响应于多媒体共享加入操作发送时间对齐请求至第一客户端,并获取所述第一客户端返回的时间信息;
    根据所述时间信息将所述第二客户端的时间与所述第一客户端对齐;
    响应于控制触发操作发送携带有指令时间的控制指令至所述第一客户端,以使所述第一客户端当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令,并对所述目标控制指令对应的目标多媒体执行相应的控制操作;
    接收所述目标控制指令,并对所述目标多媒体执行与所述第一客户端相同的控制操作。
  8. 根据权利要求7所述的多媒体控制方法,其中,所述时间对齐请求中包括发送请求时的第一时间,所述时间信息包括所述第一客户端接收到时间对齐请求的第二时间;
    根据所述时间信息将所述第二客户端的时间与所述第一客户端对齐,包括:
    根据所述第一时间、所述第二时间以及接收到所述时间信息的第三时间以及时延公式,确定所述第二客户端与所述第一客户端之间的时延;
    将所述第二客户端的实时时间加上所述时延,以与所述第一客户端实现时间对齐。
  9. 根据权利要求8所述的多媒体控制方法,还包括:
    当所述时延大于或等于时延阈值,则展示对齐失败通知。
  10. 根据权利要求7所述的多媒体控制方法,其中,将所述第二客户端时间与所述第一客户端对齐的步骤每间隔设定时间执行预设次数。
  11. 一种多用户的多媒体控制方法,应用于包括第一客户端和至少一个第二客户端的系统,所述多媒体控制方法包括:
    所述第二客户端响应于多媒体共享加入操作发送时间对齐请求至所述第一客户端;
    所述第一客户端获取所述时间对齐请求,发送时间信息至所述第二客户端;
    所述第二客户端根据所述时间信息将所述第二客户端的时间与所述第一客户端对齐,并响应于控制触发操作发送携带有指令时间的控制指令至所述第一客户端;
    当预设时间内所述第一客户端接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令,并且对所述目标控制指令对应的目标多媒体执行相应的控制操作,将所述目标控制指令发送至所述第二客户端;
    所述第二客户端接收所述目标控制指令,并对所述目标多媒体执行与所述第一客户端相同的控制操作。
  12. 一种多用户的多媒体控制装置,设置于第一客户端,所述多媒体控制装置包括:
    第一对齐模块,用于获取第二客户端响应于多媒体共享加入操作发送的时间对齐请求,发送时间信息至所述第二客户端,以使所述第二客户端根据所述时间信息将其时间与所述第一客户端对齐,其中,所述第二客户端的数量为至少一个,所述多媒体共享为多个客户 端之间的互动功能;
    第一指令模块,用于当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令;
    第一控制模块,用于对所述目标控制指令对应的目标多媒体执行相应的控制操作,并将所述目标控制指令发送至所述第二客户端,以使所述第二客户端同步对所述目标多媒体执行相同的控制操作。
  13. 一种多用户的多媒体控制装置,设置于第二客户端,所述多媒体控制装置包括:
    信息模块,用于响应于多媒体共享加入操作发送时间对齐请求至第一客户端,并获取所述第一客户端返回的时间信息;
    第二对齐模块,用于根据所述时间信息将所述第二客户端的时间与所述第一客户端对齐;
    第二指令模块,用于响应于控制触发操作发送携带有指令时间的控制指令至所述第一客户端,以使所述第一客户端当预设时间内接收到至少两个携带有指令时间的控制指令,根据各指令时间确定目标控制指令,并对所述目标控制指令对应的目标多媒体执行相应的控制操作;
    第二控制模块,用于接收所述目标控制指令,并对所述目标多媒体执行与所述第一客户端相同的控制操作。
  14. 一种多用户的多媒体控制系统,包括第一客户端和至少一个第二客户端,所述第一客户端用于执行上述权利要求1-6中任一所述的多用户的多媒体控制方法,所述第二客户端用于执行上述权利要求8-10中任一所述的多用户的多媒体控制方法。
  15. 一种电子设备,包括:
    处理器;
    用于存储所述处理器可执行指令的存储器;
    所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述权利要求1-11中任一所述的多用户的多媒体控制方法。
  16. 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-11中任一所述的多用户的多媒体控制方法。
  17. 一种计算机程序,包括:
    计算机可读指令,所述计算机可读指令当由处理器执行时使所述处理器执行上述权利 要求1-11中任一所述的多用户的多媒体控制方法。
  18. 一种计算机程序产品,包括计算机可读指令,所述计算机可读指令当由处理器执行时使所述处理器执行上述权利要求1-11中任一所述的多用户的多媒体控制方法。
PCT/CN2023/082031 2022-03-31 2023-03-17 多用户的多媒体控制方法、装置、系统、设备及介质 WO2023185499A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210346489.2 2022-03-31
CN202210346489.2A CN116939260A (zh) 2022-03-31 2022-03-31 多用户的多媒体控制方法、装置、系统、设备及介质

Publications (1)

Publication Number Publication Date
WO2023185499A1 true WO2023185499A1 (zh) 2023-10-05

Family

ID=88199081

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/082031 WO2023185499A1 (zh) 2022-03-31 2023-03-17 多用户的多媒体控制方法、装置、系统、设备及介质

Country Status (2)

Country Link
CN (1) CN116939260A (zh)
WO (1) WO2023185499A1 (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100153577A1 (en) * 2008-12-17 2010-06-17 At&T Intellectual Property I, L.P. Multiple media coordination
CN109379617A (zh) * 2018-09-18 2019-02-22 平安科技(深圳)有限公司 基于数据处理的多媒体文件同步播放方法、终端和介质
US20190110091A1 (en) * 2016-09-14 2019-04-11 Boe Technology Group Co., Ltd. Method and device for synchronously performing an operation on contents
CN109819302A (zh) * 2019-03-05 2019-05-28 北京奇艺世纪科技有限公司 多媒体文件播放控制方法及装置
CN110267084A (zh) * 2019-07-25 2019-09-20 北京奇艺世纪科技有限公司 一种同步信号处理方法以及相关设备
CN110798745A (zh) * 2019-11-19 2020-02-14 深圳传音控股股份有限公司 多媒体播放的控制方法、服务器及存储介质
CN111107412A (zh) * 2019-12-30 2020-05-05 北京奇艺世纪科技有限公司 媒体播放进度同步方法、装置及存储介质
CN113596570A (zh) * 2021-07-26 2021-11-02 广州引力波信息科技有限公司 一种一对一3d带看软件系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100153577A1 (en) * 2008-12-17 2010-06-17 At&T Intellectual Property I, L.P. Multiple media coordination
US20190110091A1 (en) * 2016-09-14 2019-04-11 Boe Technology Group Co., Ltd. Method and device for synchronously performing an operation on contents
CN109379617A (zh) * 2018-09-18 2019-02-22 平安科技(深圳)有限公司 基于数据处理的多媒体文件同步播放方法、终端和介质
CN109819302A (zh) * 2019-03-05 2019-05-28 北京奇艺世纪科技有限公司 多媒体文件播放控制方法及装置
CN110267084A (zh) * 2019-07-25 2019-09-20 北京奇艺世纪科技有限公司 一种同步信号处理方法以及相关设备
CN110798745A (zh) * 2019-11-19 2020-02-14 深圳传音控股股份有限公司 多媒体播放的控制方法、服务器及存储介质
CN111107412A (zh) * 2019-12-30 2020-05-05 北京奇艺世纪科技有限公司 媒体播放进度同步方法、装置及存储介质
CN113596570A (zh) * 2021-07-26 2021-11-02 广州引力波信息科技有限公司 一种一对一3d带看软件系统

Also Published As

Publication number Publication date
CN116939260A (zh) 2023-10-24

Similar Documents

Publication Publication Date Title
US20150067536A1 (en) Gesture-based Content Sharing Between Devices
US8849900B2 (en) Method and system supporting mobile coalitions
US8516143B2 (en) Transmitting data within remote application
WO2021190557A1 (zh) 交互方法、装置和电子设备
CN112312064B (zh) 语音交互方法及相关设备
WO2024094130A1 (zh) 内容分享方法、装置、设备、计算机可读存储介质及产品
US20220269714A1 (en) Multimedia information processing method, apparatus, electronic device, and medium
US20240241626A1 (en) Message display method and apparatus, device and storage medium
WO2021135684A1 (zh) 直播间互动方法、装置、可读介质及电子设备
WO2023155716A1 (zh) 视频播放方法、装置、电子设备、存储介质和程序产品
CN112306595A (zh) 交互方法、装置和电子设备
WO2023045973A1 (zh) 直播礼物云渲染方法、装置、电子设备及存储介质
CN114727146A (zh) 信息处理方法、装置、设备及存储介质
WO2022037552A1 (zh) 内容展示方法及装置
CN113144620B (zh) 帧同步游戏的检测方法、装置、平台、可读介质和设备
US20240103802A1 (en) Method, apparatus, device and medium for multimedia processing
US20240007591A1 (en) Method and apparatus of interaction video connection, electronic device, and storage medium
CN114489891A (zh) 云应用程序的控制方法、系统、装置、可读介质和设备
WO2024067114A1 (zh) 一种投屏方法、装置、电子设备及存储介质
WO2024041556A1 (zh) 一种连麦展示方法、装置、电子设备、计算机可读介质
WO2024060942A1 (zh) 会话列表的显示方法、装置、电子设备和存储介质
WO2023165384A1 (zh) 一种同步播放方法、装置、终端设备和存储介质
WO2023185499A1 (zh) 多用户的多媒体控制方法、装置、系统、设备及介质
WO2023155708A1 (zh) 视角的切换方法、装置、电子设备、存储介质和程序产品
WO2023134509A1 (zh) 视频推流方法、装置、终端设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23777874

Country of ref document: EP

Kind code of ref document: A1