Data processing method and device, computer equipment and readable storage medium
By outputting the terminal device list in the media output interface and realizing video interaction, the problem of single interaction mode in the prior art is solved, and the user experience is improved.
Patent Information
- Application Number
- CN202410017235.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-04
- Publication Date
- 2025-07-04
AI Technical Summary
In the existing videos together, the interaction between homeowners and friends is too single, and they can only interact through text, lacking rich interaction methods.
The terminal device list is output in the media output interface, and the interactive video data is output in the interactive area in response to the selection operation, so that the second terminal device synchronously outputs the first media data to realize video interaction.
It enriches the interaction methods between terminal devices, improves the user experience of synchronous output, and enhances interactivity through video interaction.
Smart Images

Figure CN120264083A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of Internet technologies, and in particular, to a data processing method, apparatus, computer device, and readable storage medium. Background Art
[0002] In an existing video watching together solution, after a room owner (the terminal device used by the room owner can be a first terminal device) creates a room and invites friends (the terminal devices used by the friends can be second terminal devices) to join the room, the room owner can select video data to play in the room, so that the friends can watch the video data selected and played by the room owner in the joined room. During the process of the room owner and friends watching the video data, the room owner and friends can only interact through text, resulting in a single way of interaction between the room owner and friends (that is, a single way of interaction between the first terminal device and the second terminal device). Summary of the Invention
[0003] Embodiments of this application provide a data processing method, apparatus, computer device, and readable storage medium, which can enrich the interaction methods of terminal devices.
[0004] On the one hand, an embodiment of this application provides a data processing method, which is executed by a first terminal device and includes:
[0005] Output first media data in a media output interface;
[0006] In response to a start operation for a media data synchronization output function in the media output interface, output a list of terminal devices in the media output interface; there is a binding relationship between the terminal devices in the list of terminal devices and the first terminal device;
[0007] In response to a first selection operation on the list of terminal devices, output first interactive video data associated with a second terminal device selected by the first selection operation in an interaction area of the media output interface, so that the second terminal device synchronously outputs the first media data; the first interactive video data is used for video interaction between the first terminal device and the second terminal device.
[0008] On the one hand, an embodiment of this application provides a data processing apparatus, which runs on a first terminal device and includes:
[0009] A media data output module, configured to output first media data in a media output interface;
[0010] A device list output module, configured to output a list of terminal devices in the media output interface in response to a start operation for a media data synchronization output function in the media output interface; there is a binding relationship between the terminal devices in the list of terminal devices and the first terminal device;
[0011] A video data output module, which is configured to respond to a first selection operation on a list of terminal devices, and output first interactive video data associated with a second terminal device selected by the first selection operation in an interaction area of a media output interface, so that the second terminal device synchronously outputs first media data; the first interactive video data is used for video interaction between the first terminal device and the second terminal device.
[0012] Wherein, the device list output module is specifically configured to output a synchronous output control control associated with the media data synchronous output function in the media output interface;
[0013] The device list output module is specifically configured to respond to a trigger operation on the synchronous output control control, and output a list of terminal devices in the media output interface.
[0014] Wherein, the video data output module is specifically configured to respond to a first selection operation on the list of terminal devices, and output default video data in an interaction area of the media output interface; the default video data is used to indicate that the first terminal device and the second terminal device selected by the first selection operation are in a video interaction waiting state;
[0015] The video data output module is specifically configured to, if the second terminal device confirms video interaction with the first terminal device, switch and output the default video data in the interaction area to first interactive video data associated with the second terminal device.
[0016] Wherein, the apparatus further includes:
[0017] A progress adjustment module, which is configured to respond to a control operation on the media data progress control function in the media output interface, and switch and output the media data corresponding to the first output progress of the first media data to the media data corresponding to the second output progress of the first media data; the first output progress is the current output progress of the first media data in the media output interface; the second output progress is the output progress before the first output progress, or the second output progress is the output progress after the first output progress; the second output progress is the output progress determined by the control operation; the second terminal device is configured to synchronously switch and output the media data corresponding to the first output progress of the first media data to the media data corresponding to the second output progress of the first media data.
[0018] Wherein, the apparatus further includes:
[0019] A media list output module, which is configured to respond to a control operation on the media data switching function in the media output interface, and output a recommended media data list associated with the first terminal device in the media output interface; the recommended media data list includes recommended media data associated with the first terminal device;
[0020] A media switching module, configured to respond to a second selection operation on a recommended media data list, and switch and output the first media data to the selected recommended media data selected by the second selection operation in the media output interface; a second terminal device is used to synchronously switch and output the selected recommended media data with the first terminal device.
[0021] Wherein, the display range of the interaction area is smaller than the display range of the media output interface;
[0022] The apparatus further includes:
[0023] A range switching module, configured to respond to a trigger operation on the interaction area, and switch the display range of the interaction area to the display range of the media output interface;
[0024] A range switching module, configured to output a first interactive video data, a second interactive video data associated with the first terminal device, and a video interaction closing control in the switched interaction area;
[0025] A video interaction ending module, configured to respond to a trigger operation on the video interaction closing control, and end the video interaction between the first terminal device and the second terminal device.
[0026] Wherein, the apparatus further includes:
[0027] A device binding module, configured to output a binding QR code in the device binding interface;
[0028] A device binding module, configured to respond to a QR code scanning operation of a third terminal device on the binding QR code, and output a binding success prompt in the device binding interface; the binding success prompt is used to indicate that a binding management relationship is successfully established between the first terminal device and the third terminal device; the binding management relationship between the first terminal device and the third terminal device is used to add the second terminal device to the terminal device list corresponding to the first terminal device.
[0029] Wherein, the third terminal device is used to create a first service organization including the first terminal device; the third terminal device is used to establish an association relationship between the first service organization and a second service organization to which the second terminal device belongs with a fourth terminal device; there is a binding management relationship between the second terminal device and the fourth terminal device; the association relationship is used to indicate that there is a binding relationship between the terminal devices in the first service organization and the terminal devices in the second service organization.
[0030] Wherein, the apparatus further includes:
[0031] A synchronization control module, configured to output a synchronization control control associated with a media data progress control function and a media data switching function in the media output interface;
[0032] A synchronization control module, which is used to respond to a trigger operation on a synchronization control control and enable a synchronization control function for a media data progress control function and a media data switching function in a media output interface; the synchronization control function is used to indicate that both the first terminal device and the second terminal device have the ability to respond to control operations for the media data progress control function and the media data switching function.
[0033] Among them, the first terminal device includes a media downloader and a media outputter;
[0034] A media data output module, specifically used to download media encapsulated data from a media data server through the media downloader;
[0035] A media data output module, specifically used to perform decompression processing on the media encapsulated data through the media outputter to obtain video encoded data and audio encoded data;
[0036] A media data output module, specifically used to perform decoding processing on the video encoded data through the media outputter to obtain video pixel data, and perform decoding processing on the audio encoded data through the media outputter to obtain audio sampling data;
[0037] A media data output module, specifically used to perform synchronous rendering on the video pixel data and the audio sampling data through the media outputter to obtain first media data;
[0038] A media data output module, specifically used to output the first media data in a media output interface.
[0039] Among them, the first terminal device includes an output synchronization controller;
[0040] The device further includes:
[0041] An output progress synchronization module, used to establish a long connection channel between the first terminal device and an output synchronization server through the output synchronization controller;
[0042] An output progress synchronization module, used to poll and send output progress information to the output synchronization server through the long connection channel; the output progress information includes a media data identifier of the first media data and a first output progress of the first media data; the output synchronization server is used to perform policy selection on the media data identifier, the first output progress, and a third output progress of the first media data to generate a fourth output progress of the first media data; the first output progress is the current output progress of the first media data in the media output interface; the third output progress is the current output progress of the first media data provided by the second terminal device;
[0043] An output progress synchronization module, configured to receive a fourth output progress polled and returned by an output synchronization server, and switch the media data corresponding to the first output progress of the first media data to the media data corresponding to the fourth output progress of the first media data.
[0044] Among them, the first terminal device includes an output synchronization controller;
[0045] A progress adjustment module, specifically configured to establish a long connection channel between the first terminal device and the output synchronization server through the output synchronization controller;
[0046] A progress adjustment module, specifically configured to respond to a trigger operation for the media data progress control function in the media output interface, and obtain a second output progress determined by the control operation through the output synchronization controller;
[0047] A progress adjustment module, specifically configured to send progress control information to the output synchronization server through the long connection channel; the progress control information includes a media data identifier of the first media data and a second output progress of the first media data; the output synchronization server is configured to forward the media data identifier and the second output progress of the first media data to the second terminal device;
[0048] A progress adjustment module, specifically configured to switch the media data corresponding to the first output progress of the first media data to the media data corresponding to the second output progress of the first media data.
[0049] Among them, the first terminal device includes an output synchronization controller;
[0050] A media switching module, specifically configured to establish a long connection channel between the first terminal device and the output synchronization server through the output synchronization controller;
[0051] A media switching module, specifically configured to respond to a second selection operation for a recommended media data list, and obtain a media data identifier of the selected recommended media data through the output synchronization controller;
[0052] A media switching module, specifically configured to send media control information to the output synchronization server through the long connection channel; the media control information includes a media data identifier of the selected recommended media data and a fifth output progress of the selected recommended media data; the output synchronization server is configured to forward the media data identifier and the fifth output progress of the selected recommended media data to the second terminal device;
[0053] A media switching module, specifically configured to switch the first media data to the selected recommended media data in the media output interface; the output progress of the selected recommended media data is the fifth output progress.
[0054] Among them, the first terminal device includes a synchronization scheduling component, a video interaction component, and a media outputter;
[0055] A video interaction closing module, specifically configured to respond to a triggering operation on a video interaction closing control, and end the video interaction between the first terminal device and the second terminal device through the video interaction component;
[0056] The device further includes:
[0057] An output control module, configured to send a video interaction end command to the synchronization scheduling component through the video interaction component, and forward the video interaction end command to the media outputter through the synchronization scheduling component;
[0058] The output control module is configured to perform output control related to the video interaction end command on the first media data through the media outputter.
[0059] Among them, the first terminal device includes a video interaction component; the video interaction component includes a downlink control sub-component;
[0060] A video data output module, specifically configured to respond to a first selection operation on a terminal device list, and obtain downlink video encapsulated data associated with the second terminal device selected by the first selection operation from a video interaction server through the downlink control sub-component; the downlink video encapsulated data is sent by the second terminal device to the video interaction server;
[0061] The video data output module is specifically configured to perform decompression processing on the downlink video encapsulated data through the downlink control sub-component to obtain downlink video encoded data and downlink audio encoded data;
[0062] The video data output module is specifically configured to perform decoding processing on the downlink video encoded data through the downlink control sub-component to obtain downlink video pixel data, and perform decoding processing on the downlink audio encoded data through the downlink control sub-component to obtain downlink audio sampling data;
[0063] The video data output module is specifically configured to perform synchronous rendering on the downlink video pixel data and the downlink audio sampling data through the downlink control sub-component to obtain first interactive video data;
[0064] The video data output module is specifically configured to output the first interactive video data in an interactive area of a media output interface.
[0065] Among them, the first terminal device includes a video interaction component; the video interaction component includes an uplink control sub-component;
[0066] The device further includes:
[0067] A video data upload module, configured to obtain second interactive video data associated with a first terminal device through an uplink control sub-component; the second interactive video data includes video data to be processed and audio data to be processed;
[0068] The video data upload module is configured to perform audio-visual pre-processing on the video data to be processed and the audio data to be processed through the uplink control sub-component, so as to obtain uplink video pixel data corresponding to the video data to be processed and uplink audio sampling data corresponding to the audio data to be processed;
[0069] The video data upload module is configured to perform encoding processing on the uplink video pixel data through the uplink control sub-component to obtain uplink video encoded data, and perform encoding processing on the uplink audio sampling data through the uplink control sub-component to obtain uplink audio encoded data;
[0070] The video data upload module is configured to perform encapsulation processing on the uplink video encoded data and the uplink audio encoded data through the uplink control sub-component to obtain uplink video encapsulated data;
[0071] The video data upload module is configured to send the uplink video encapsulated data to a video interaction server through the uplink control sub-component; the video interaction server is configured to forward the uplink video encapsulated data to a second terminal device.
[0072] Wherein, an output synchronization server is configured to obtain a first device weight corresponding to the first terminal device and a second device weight corresponding to the second terminal device; the output synchronization server is further configured to perform a difference operation on a first output progress and a third output progress to generate a progress difference between the first output progress and the third output progress; the output synchronization server is further configured to perform difference division on the progress difference through the first device weight and the second device weight to obtain a first division difference corresponding to the first device weight and a second division difference corresponding to the second device weight; the output synchronization server is further configured to determine a fourth output progress of the first media data according to the first division difference, the second division difference, the first output progress and the third output progress.
[0073] On the one hand, an embodiment of the present application provides a data processing method, which is executed by a second terminal device and includes:
[0074] Output a video interaction confirmation control associated with a media data synchronous output function in an application client; the video interaction confirmation control is indicated and output by a first terminal device; the first terminal device belongs to a terminal device list corresponding to the second terminal device; there is a binding relationship between the terminal devices in the terminal device list and the second terminal device;
[0075] In response to a trigger operation on a video interaction confirmation control, synchronously output the first media data currently output by the first terminal device in the application client, and output second interaction video data associated with the first terminal device in the interaction area of the application client; the second interaction video data is used for video interaction between the first terminal device and the second terminal device.
[0076] In one aspect, an embodiment of the present application provides a data processing device that runs on a second terminal device and includes:
[0077] A confirmation control output module, configured to output a video interaction confirmation control associated with a media data synchronous output function in the application client; the video interaction confirmation control is indicated and output by the first terminal device; the first terminal device belongs to a terminal device list corresponding to the second terminal device; there is a binding relationship between the terminal devices in the terminal device list and the second terminal device;
[0078] A synchronous output module, configured to, in response to a trigger operation on the video interaction confirmation control, synchronously output the first media data currently output by the first terminal device in the application client, and output second interaction video data associated with the first terminal device in the interaction area of the application client; the second interaction video data is used for video interaction between the first terminal device and the second terminal device.
[0079] Among them, the synchronous output module is specifically configured to, in response to a trigger operation on the video interaction confirmation control, output second interaction video data associated with the first terminal device, first interaction video data associated with the second terminal device, and a synchronous output confirmation control in the application client; the first interaction video data and the second interaction video data are used for video interaction between the first terminal device and the second terminal device;
[0080] The synchronous output module is specifically configured to, in response to a trigger operation on the synchronous output confirmation control, synchronously output the first media data currently output by the first terminal device in the application client, and output the second interaction video data in the interaction area of the application client.
[0081] In one aspect, an embodiment of the present application provides a computer device, including: a processor and a memory;
[0082] The processor is connected to the memory. Among them, the memory is used to store a computer program. When the computer program is executed by the processor, the computer device executes the method provided by the embodiment of the present application.
[0083] In one aspect, an embodiment of the present application provides a computer-readable storage medium storing a computer program, which is adapted to be loaded and executed by a processor so that a computer device having the processor executes the method provided by the embodiment of the present application.
[0084] In one aspect, an embodiment of the present application provides a computer program product, which includes a computer program stored in a computer-readable storage medium. The processor of the computer device reads the computer program from the computer-readable storage medium, and the processor executes the computer program so that the computer device executes the method provided by the embodiment of the present application.
[0085] In the embodiment of the present application, the first terminal device may output first media data in a media output interface. Further, the first terminal device may respond to a start operation for the media data synchronous output function in the media output interface and output a list of terminal devices in the media output interface. Among them, there is a binding relationship between the terminal devices in the list of terminal devices and the first terminal device. Further, the first terminal device may respond to a first selection operation for the list of terminal devices and output first interactive video data associated with a second terminal device selected by the first selection operation in an interaction area of the media output interface, so that the second terminal device synchronously outputs the first media data. Among them, the first interactive video data is used for video interaction between the first terminal device and the second terminal device, and the first terminal device and the second terminal device have the function of synchronously outputting the first media data. It can be seen that the embodiment of the present application can integrate video interaction into the scenario of synchronous output of media data. When the first terminal device outputs the first media data, the first terminal device can invite other terminal devices (for example, the second terminal device) to synchronously output the first media data, and perform video interaction between the first terminal device and the second terminal device during the process of synchronously outputting the first media data, thereby enriching the interaction method between the first terminal device and the second terminal device and improving the user experience of synchronous output. BRIEF DESCRIPTION OF THE DRAWINGS
[0086] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the following will briefly introduce the drawings required for the description of the embodiments or related technologies. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0087] Figure 1 It is a schematic structural diagram of a network architecture provided by an embodiment of the present application;
[0088] Figure 2It is a schematic flowchart of a data processing method provided by an embodiment of the present application;
[0089] Figure 3 It is a schematic diagram of a scenario for outputting a list of terminal devices provided by an embodiment of the present application;
[0090] Figure 4 It is a schematic diagram of a scenario for outputting first interactive video data provided by an embodiment of the present application;
[0091] Figure 5 It is a schematic diagram of a scenario for outputting a video interaction rejection prompt provided by an embodiment of the present application;
[0092] Figure 6a It is a schematic diagram of a scenario for adjusting the output progress provided by an embodiment of the present application;
[0093] Figure 6b It is a schematic diagram of a scenario for adjusting the output progress provided by an embodiment of the present application;
[0094] Figure 7a It is a schematic diagram of a scenario for switching video data provided by an embodiment of the present application;
[0095] Figure 7b It is a schematic diagram of a scenario for switching video data provided by an embodiment of the present application;
[0096] Figure 8 It is a schematic diagram of a scenario for ending video interaction provided by an embodiment of the present application;
[0097] Figure 9a It is a schematic diagram of a scenario for performing video interaction provided by an embodiment of the present application;
[0098] Figure 9b It is a schematic diagram of a scenario for selecting media data provided by an embodiment of the present application;
[0099] Figure 10 It is a schematic diagram of a scenario for performing synchronous output provided by an embodiment of the present application;
[0100] Figure 11 It is a schematic flowchart of a data processing method provided by an embodiment of the present application;
[0101] Figure 12a It is a schematic diagram of a scenario for performing synchronous output and video interaction provided by an embodiment of the present application;
[0102] Figure 12b It is a schematic diagram of a scenario for performing synchronous output and video interaction provided by an embodiment of the present application;
[0103] Figure 13It is a schematic flowchart of a data processing method provided by an embodiment of the present application;
[0104] Figure 14 It is a schematic diagram of a scenario for device management provided by an embodiment of the present application;
[0105] Figure 15 It is a schematic diagram of a scenario for device binding provided by an embodiment of the present application;
[0106] Figure 16 It is a schematic diagram of a scenario for business organization binding provided by an embodiment of the present application;
[0107] Figure 17 It is a schematic diagram of a scenario for agreeing to bind a business organization provided by an embodiment of the present application;
[0108] Figure 18 It is a schematic diagram of a scenario for an association relationship provided by an embodiment of the present application;
[0109] Figure 19 It is a schematic diagram of a scenario for a binding management relationship provided by an embodiment of the present application;
[0110] Figure 20 It is a schematic flowchart of a data processing method provided by an embodiment of the present application;
[0111] Figure 21 It is a schematic diagram of a scenario for terminal device interaction provided by an embodiment of the present application;
[0112] Figure 22 It is a schematic diagram of a scenario for terminal device processing provided by an embodiment of the present application;
[0113] Figure 23 It is a schematic diagram of the structure of a data processing device provided by an embodiment of the present application;
[0114] Figure 24 It is a schematic diagram of the structure of a data processing device provided by an embodiment of the present application;
[0115] Figure 25 It is a schematic diagram of the structure of a data processing device provided by an embodiment of the present application;
[0116] Figure 26 It is a schematic diagram of the structure of a computer device provided by an embodiment of the present application. Detailed implementation manners
[0117] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without making creative efforts belong to the scope of protection of the present application.
[0118] Specifically, please refer to Figure 1 , Figure 1 which is a schematic structural diagram of a network architecture provided by an embodiment of the present application. As Figure 1 shown, the network architecture may include a server 2000 and a cluster of terminal devices. Among them, the cluster of terminal devices may specifically include one or more terminal devices, and the number of terminal devices in the cluster of terminal devices will not be limited here. As Figure 1 shown, the multiple terminal devices may specifically include terminal device 3000a, terminal device 3000b, terminal device 3000c, …, terminal device 3000n; terminal device 3000a, terminal device 3000b, terminal device 3000c, …, terminal device 3000n may be directly or indirectly network-connected to the server 2000 through wired or wireless communication means, so that each terminal device can perform data interaction with the server 2000 through this network connection.
[0119] Among them, each terminal device in the cluster of terminal devices may include: intelligent terminals with data processing functions such as smart phones, tablet computers, laptop computers, desktop computers, intelligent voice interaction devices, smart home appliances (for example, smart TVs), wearable devices, vehicle-mounted terminals, aircraft, projectors, etc. It should be understood that, as Figure 1 shown, each terminal device in the cluster of terminal devices may be installed with an application client with data processing functions. When the application client runs on each terminal device, it can perform data interaction with the above-mentioned Figure 1 shown server 2000 respectively.
[0120] Among them, the application client may specifically include: browsers, vehicle-mounted clients, smart home clients, entertainment clients (for example, game clients), multimedia clients (for example, video clients, music clients, novel clients), social clients, and information-based clients (for example, news clients), etc. It can be understood that the vehicle-mounted terminal may be a terminal device in intelligent transportation scenarios and assisted driving scenarios, and the application client on the vehicle-mounted terminal may be a vehicle-mounted client.
[0121] It can be understood that, as Figure 1The server 2000 shown can be the server corresponding to the application client. The server 2000 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers. It can also be a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms.
[0122] For ease of understanding, in the embodiments of the present application, Figure 1 one terminal device can be selected from the multiple terminal devices shown as the first terminal device. In the embodiments of the present application, Figure 1 one terminal device can be selected from the multiple terminal devices shown as the second terminal device. For example, in the embodiments of the present application, Figure 1 the terminal device 3000b shown can be used as the first terminal device. In the embodiments of the present application, Figure 1 the terminal device 3000n shown can be used as the second terminal device. An application client with data processing capabilities can be installed in both the first terminal device and the second terminal device (for example, the application clients in the first terminal device and the second terminal device can be video clients). At this time, data interaction can be achieved between the first terminal device and the second terminal device and the server 2000 through the application client, and video interaction can be performed while synchronously outputting media data (for example, the first media data) through the application client.
[0123] For ease of understanding, in the embodiments of the present application, Figure 1 one terminal device can be selected from the multiple terminal devices shown as the third terminal device. In the embodiments of the present application, Figure 1 one terminal device can be selected from the multiple terminal devices shown as the fourth terminal device. For example, in the embodiments of the present application, Figure 1 the terminal device 3000a shown can be used as the third terminal device. In the embodiments of the present application, Figure 1 the terminal device 3000c shown can be used as the fourth terminal device. An application client with data processing capabilities can be installed in both the third terminal device and the fourth terminal device (for example, the application clients in the third terminal device and the fourth terminal device can be social clients). At this time, data interaction can be achieved between the third terminal device and the fourth terminal device and the server 2000 through the application client, and a business organization can be created through the application client (for example, a subroutine in the application client).
[0124] It can be understood that the application client can be referred to as the host application for integrating sub-programs, and the host application can be used to represent the application entity that provides a running environment for the sub-programs. For example, taking the host application running on the third terminal device and the fourth terminal device as a social client as an example, when a sub-program is integrated in the social client, the social client can have the ability to open and display the sub-program. Among them, the sub-program in the embodiments of the present application can be a mini-program integrated in the application client, or a video account, a public account, etc. integrated in the application client. The embodiments of the present application do not limit the type of the sub-program.
[0125] For ease of understanding, the embodiments of the present application can refer to the user as an object, and the object can be a user who logs in to the application client. The first terminal device and the third terminal device can be different terminal devices used by the same object (referred to as the first object) (for example, the first terminal device can be a smart TV used by the first object, and the third terminal device can be a smart phone used by the first object), and the second terminal device and the fourth terminal device can be different terminal devices used by the same object (referred to as the second object) (for example, the second terminal device can be a smart TV used by the second object, and the fourth terminal device can be a smart phone used by the second object).
[0126] Among them, the media data in the embodiments of the present application can be video data (for example, movie data), audio data (for example, music data), or text data (for example, novel data). There is no limitation here. For ease of understanding, the embodiments of the present application will take the media data as video data as an example for description.
[0127] Among them, the server 2000 in the embodiments of the present application can include but is not limited to a media data server (for example, a video data server), an output synchronization server (for example, a playback synchronization server), a video interaction server (i.e., an audio and video call server), and a service server. The media data server can be used to store media data (for example, video data), the output synchronization server can be used to control the output progress when the media data is synchronously output, the video interaction server can be used to control video interaction, and the service server can be used to implement the creation of a business organization.
[0128] It should be understood that the operations in the embodiments of the present application (for example, start operation, trigger operation, select operation, control operation, and view operation) can include contact operations such as clicking, long pressing, and swiping, and can also include non-contact operations such as voice and gestures. There is no limitation here. Among them, when the terminal device is a smart TV, the operations in the embodiments of the present application can be a click operation on the smart TV remote control or a click operation on the TV button on the smart TV.
[0129] It should be understood that the terminal devices (e.g., the first terminal device and the second terminal device) in the embodiments of the present application may have a built-in or external camera and a built-in or external microphone to implement audio and video calls (which may also be referred to as video interaction).
[0130] It should be understood that the service scenarios applicable to the above network framework may specifically include: entertainment program on-demand scenarios, online music listening scenarios, online novel reading scenarios, etc. The network framework can realize the synchronous output of media data and the video interaction of terminal devices in service scenarios such as entertainment program on-demand scenarios, online music listening scenarios, and online novel reading scenarios. The service scenarios applicable to the network framework will not be listed one by one here. For example, in an entertainment program on-demand scenario, the first terminal device and the second terminal device can perform video interaction while synchronously outputting entertainment programs (i.e., watching entertainment programs together); for another example, in an online music listening scenario, the first terminal device and the second terminal device can perform video interaction while synchronously outputting popular music (i.e., listening to popular music together); for another example, in an online novel reading scenario, the first terminal device and the second terminal device can perform video interaction while synchronously outputting popular novels (i.e., reading popular novels together). Among them, the video interaction in the embodiments of the present application may include voice interaction and video interaction, and the synchronous output of media data in the embodiments of the present application may include, but is not limited to, watching media data together, listening to media data together, or reading media data together.
[0131] Further, please refer to Figure 2 , Figure 2 is a schematic flowchart of a data processing method provided by an embodiment of the present application. This method can be executed by a server, or by a terminal device (e.g., the first terminal device), or jointly executed by a server and a terminal device (e.g., the first terminal device). The server may be the server 2000 in the corresponding embodiment of the above Figure 1 The first terminal device may be any terminal device (e.g., terminal device 3000b) in the corresponding embodiment of the above Figure 1 For ease of understanding, the embodiment of the present application takes the case where this method is executed by the first terminal device as an example. Among them, the data processing method may include the following steps S101 - step S103:
[0132] Step S101, output the first media data in the media output interface;
[0133] It can be understood that the first terminal device can output a recommended media data list (e.g., a recommended video data list) in a media recommendation interface (e.g., a video recommendation interface). Among them, the recommended media data list includes recommended media data associated with the first terminal device, and the recommended media data in the embodiments of the present application can be media data for recommendation to the first object. Further, the first terminal device can respond to a selection operation (i.e., the third selection operation) for the recommended media data list, switch the media recommendation interface to a media output interface (e.g., a video playback interface), and output the first media data selected by the selection operation (i.e., the third selection operation) in the media output interface.
[0134] Step S102, in response to a start operation for the media data synchronous output function in the media output interface, output a list of terminal devices in the media output interface;
[0135] Specifically, the first terminal device can output a synchronous output control control associated with the media data synchronous output function in the media output interface. Further, the first terminal device can respond to a trigger operation for the synchronous output control control and output a list of terminal devices (i.e., the first terminal device list) in the media output interface. Among them, there is a binding relationship between the terminal devices in the terminal device list and the first terminal device, and the embodiments of the present application do not limit the number of terminal devices in the terminal device list; the terminal device list can include a second terminal device. Optionally, the terminal device list can be empty, that is, the terminal device list does not include terminal devices.
[0136] Among them, the first terminal device can respond to a trigger operation for the media output interface (e.g., the first terminal device can respond to a click operation on the menu button of the smart TV remote control) and output a synchronous output control control associated with the media data synchronous output function in the media output interface.
[0137] For easy understanding, please refer to Figure 3 , Figure 3 which is a schematic diagram of a scenario for outputting a list of terminal devices provided by the embodiments of the present application. As Figure 3 shown, the media output interface 30a, the media output interface 30b, and the media output interface 30c can be the interfaces of the application client of the first terminal device at different times.
[0138] As Figure 3As shown, the first terminal device may output first media data in the media output interface 30a. When the first object needs to start the media data synchronous output function, a trigger operation may be performed on the media output interface 30a. In this way, the first terminal device may respond to the trigger operation performed by the first object on the media output interface 30a, switch the media output interface 30a to the media output interface 30b, and output a synchronous output control control 31c associated with the media data synchronous output function in the media output interface 30b.
[0139] Optionally, the first terminal device may also output a media data switching control 31a and a device binding control 31b in the media output interface 30b. The specific process of the first terminal device responding to the trigger operation on the media data switching control 31a may refer to the description of the corresponding embodiment below Figure 7a ; The specific process of the first terminal device responding to the trigger operation on the device binding control 31b may refer to the description of the corresponding embodiment below Figure 15 of the corresponding embodiment.
[0140] As Figure 3 shown, the first object may perform a trigger operation on the synchronous output control control 31c. In this way, the first terminal device may respond to the trigger operation performed by the first object on the synchronous output control control 31c, switch the media output interface 30b to the media output interface 30c, and output a terminal device list 32a in the media output interface 30c. The terminal device list 32a may include a terminal device 32c and a synchronous invitation control 33b corresponding to the terminal device 32c; optionally, the terminal device list 32a may include the first terminal device (i.e., the terminal device 32b) and a synchronous invitation control corresponding to the first terminal device (i.e., the synchronous invitation control 33a).
[0141] Step S103, in response to a first selection operation on the terminal device list, output first interactive video data associated with a second terminal device selected by the first selection operation in an interaction area of the media output interface, so that the second terminal device synchronously outputs the first media data.
[0142] Specifically, the first terminal device can respond to a first selection operation on the terminal device list and output default video data in the interaction area of the media output interface. The default video data is used to indicate that the first terminal device and the second terminal device selected by the first selection operation are in a video interaction waiting state. The video interaction waiting state means that the first terminal device and the second terminal device are waiting to perform a video interaction. The second terminal device can be any one of the terminal devices in the terminal device list. The first selection operation is used to indicate that the first terminal device invites the second terminal device to perform a video interaction. Further, if the second terminal device confirms to perform a video interaction with the first terminal device (i.e., the second terminal device agrees to perform a video interaction with the first terminal device), the first terminal device can switch the default video data in the interaction area to the first interaction video data associated with the second terminal device. The first interaction video data is used for the first terminal device and the second terminal device to perform a video interaction. The first interaction video data can be audio and video data recorded in real time through the camera and microphone corresponding to the second terminal device (for example, the first interaction video data can be audio and video data obtained by recording a little boy in the living room scene in real time, and the first interaction video data can be audio and video data obtained by recording the bedroom scene in real time). The first terminal device and the second terminal device have the function of synchronously outputting the first media data. At this time, the second terminal device can synchronously output the first media data.
[0143] For ease of understanding, please refer to Figure 4 , Figure 4 which is a schematic diagram of a scenario for outputting the first interaction video data provided by an embodiment of the present application. As Figure 4 shown, the media output interface 40a and the media output interface 40b can be the interfaces of the application client of the first terminal device at different times.
[0144] As Figure 4 shown, the first object can perform a first selection operation on the terminal device list in the media output interface 30c corresponding to the above Figure 3 embodiment (for example, the first object can perform a triggering operation on the synchronization invitation control 33b in the media output interface 30c). In this way, the first terminal device can respond to the triggering operation performed by the first object on the synchronization invitation control 33b, switch the media output interface 30c to the media output interface 40a, and output default video data in the interaction area 40c of the media output interface 40a. The second terminal device selected by the first selection operation can be the terminal device 32c in the above media output interface 30c (i.e., the terminal device corresponding to the synchronization invitation control 33b).
[0145] As Figure 4As shown, if the second terminal device agrees to perform video interaction with the first terminal device, the first terminal device can switch the media output interface 40a to the media output interface 40b, and switch the output of the default video data in the interaction area 40c to the first interaction video data associated with the second terminal device. Therefore, the embodiments of the present application can present the interaction video data (for example, the first interaction video data) in a picture-in-picture manner.
[0146] Optionally, if the second terminal device refuses to perform video interaction with the first terminal device, the first terminal device can cancel the display of the interaction area in the media output interface, and output a video interaction rejection prompt (for example, the video interaction rejection prompt can be "The other party has rejected the invitation") in the media output interface.
[0147] For easy understanding, please refer to Figure 5 , Figure 5 which is a schematic diagram of a scenario for outputting a video interaction rejection prompt provided by the embodiments of the present application. As Figure 5 shown, the media output interfaces 50a and 50b can be the interfaces of the application client of the first terminal device at different times. Among them, the media output interface 50a can be the media output interface 40a in the corresponding embodiment above, and the interaction area 50c can be the interaction area 40c in the corresponding embodiment above. Figure 4 corresponding to Figure 4 the corresponding embodiment.
[0148] As Figure 5 shown, if the second terminal device refuses to perform video interaction with the first terminal device, the first terminal device can switch the media output interface 50a to the media output interface 50b, cancel the display of the interaction area 50c in the media output interface 50b, and output a video interaction rejection prompt 50d in the media output interface 50b.
[0149] Among them, when the second terminal device is in an online state, the second terminal device can agree or refuse to perform video interaction with the first terminal device. Optionally, if the second terminal device is in an offline state, the first terminal device can cancel the display of the interaction area in the media output interface, and output a device offline prompt (for example, the device offline prompt can be "The other party is in an offline state") in the media output interface.
[0150] It can be understood that the first terminal device can respond to a control operation for the media data progress control function in the media output interface (for example, the first terminal device can respond to a click operation on the progress control button of the smart TV remote control), and switch the media data corresponding to the first output progress of the first media data to the media data corresponding to the second output progress of the first media data. Among them, the first output progress is the current output progress of the first media data in the media output interface; the second output progress is the output progress before the first output progress, or the second output progress is the output progress after the first output progress; the second output progress is the output progress determined by the control operation. Similarly, the second terminal device is used to synchronously switch the media data corresponding to the first output progress of the first media data to the media data corresponding to the second output progress of the first media data. For the specific process of the second terminal device synchronously switching the media data corresponding to the first output progress of the first media data to the media data corresponding to the second output progress of the first media data, reference can be made to the description of the corresponding embodiment below Figure 6b corresponding embodiment description.
[0151] For ease of understanding, please refer to Figure 6a , Figure 6a which is a schematic diagram of a scenario for adjusting the output progress provided by an embodiment of the present application. As Figure 6a shown, the media output interface 60a, the media output interface 60b, and the media output interface 60c can be the interfaces of the application client of the first terminal device at different times. Among them, the media output interface 60a can be the media output interface 40b in the corresponding embodiment above Figure 4 .
[0152] As Figure 6a shown, the first terminal device can output the first media data and the first interactive video data in the media output interface 60a. The first object can perform a control operation for the media data progress control function. In this way, the first terminal device can respond to the control operation performed by the first object for the media data progress control function in the media output interface 60a, switch the media output interface 60a to the media output interface 60b, and then switch the media output interface 60b to the media output interface 60c, and switch the media data corresponding to the first output progress (i.e., the output progress 61a) of the first media data to the media data corresponding to the second output progress (i.e., the output progress 61b) of the first media data. Among them, the output progress of the first media data in the media output interface 60a and the media output interface 60b is the first output progress, and the output progress of the first media data in the media output interface 60c is the second output progress.
[0153] It can be understood that the first terminal device can respond to a control operation for the media data switching function in the media output interface (for example, the first terminal device can output a media data switching control associated with the media data switching function in the media output interface and respond to a triggering operation for the media data switching control), and output a recommended media data list associated with the first terminal device in the media output interface. Among them, the recommended media data list includes recommended media data associated with the first terminal device, and the recommended media data list in the media output interface and the recommended media data list in the media recommendation interface may be the same or different. Further, the first terminal device can respond to a second selection operation for the recommended media data list and switch the output of the first media data to the selected recommended media data selected by the second selection operation in the media output interface. Among them, the second terminal device is used to synchronously switch the output of the selected recommended media data with the first terminal device (that is, the second terminal device is used to synchronously switch the output of the first media data to the selected recommended media data). For the specific process of the second terminal device synchronously switching the output of the first media data to the selected recommended media data, reference can be made to the description of the corresponding embodiment below Figure 7b corresponding embodiment description.
[0154] For ease of understanding, please refer to Figure 7a , Figure 7a which is a schematic diagram of a scenario for switching video data provided by an embodiment of the present application. As Figure 7a shown, the media output interface 70a, the media output interface 70b, and the media output interface 70c can be the interfaces of the application client of the first terminal device at different times. Among them, the media output interface 70a can be the media output interface 40b in the corresponding embodiment above Figure 4 .
[0155] As Figure 7a shown, the first terminal device can output the first media data and the first interactive video data in the media output interface 70a. The first terminal device can output a media data switching control associated with the media data switching function in the media output interface 70a (not shown in the figure, for example, the above Figure 3In the media switching control 31a) in the corresponding embodiment, the first object may perform a triggering operation on a media data switching control (not shown in the figure). In this way, the first terminal device may respond to the triggering operation performed by the first object on the media data switching control (not shown in the figure), and switch the media output interface 70a to the media output interface 70b, and output a recommended media data list associated with the first terminal device in the media output interface 70b. Among them, the recommended media data list includes recommended media data associated with the first terminal device. For example, the recommended media data may include video data 71a, video data 71b, video data 71c, and video data 71d, and the video data 71a may be the first media data.
[0156] As Figure 7a shown, the first object may perform a second selection operation on the recommended media data list (for example, the first object may perform a triggering operation on the video data 71b). In this way, the first terminal device may respond to the triggering operation performed by the first object on the video data 71b, and switch the media output interface 70b to the media output interface 70c, and switch and output the first media data to the selected recommended media data (i.e., the video data 71b) selected by the second selection operation in the media output interface 70c.
[0157] It should be understood that the first terminal device may output a synchronization control control associated with the media data progress control function and the media data switching function in the media output interface. Further, the first terminal device may respond to the triggering operation on the synchronization control control, and turn on the synchronization control function for the media data progress control function and the media data switching function in the media output interface. Among them, the synchronization control function is used to indicate that both the first terminal device and the second terminal device have the ability to respond to control operations for the media data progress control function and the media data switching function.
[0158] Further, optionally, the first terminal device may output a synchronization control control associated with the media data progress control function and the media data switching function in the media output interface. Further, the first terminal device may respond to the triggering operation on the synchronization control control, and turn off the synchronization control function for the media data progress control function and the media data switching function in the media output interface. Among them, the synchronization control function is used to indicate that the first terminal device has the ability to respond to control operations for the media data progress control function and the media data switching function, and the second terminal device does not have the ability to respond to control operations for the media data progress control function and the media data switching function.
[0159] Therefore, the embodiments of the present application can ensure that multiple parties (i.e., the first terminal device and the second terminal device) have equal rights to switch media data and drag the progress (i.e., control the progress of media data) through synchronous control of the control, so as to achieve a real-time synchronization mechanism for the output progress. Compared with one party (e.g., the first terminal device) controlling, it has higher freedom and interactivity, enabling the first object and the second object to have an experience of outputting the first media data as if they were outputting together at close range when in different locations, thereby improving the user experience of the first object and the second object.
[0160] Among them, the display range of the interaction area is smaller than the display range of the media output interface. It should be understood that the first terminal device can respond to the trigger operation for the interaction area and switch the display range of the interaction area to the display range of the media output interface. Further, the first terminal device can output the first interactive video data, the second interactive video data associated with the first terminal device, and the video interaction closing control in the switched interaction area. Further, the first terminal device can respond to the trigger operation for the video interaction closing control and end the video interaction between the first terminal device and the second terminal device.
[0161] For ease of understanding, please refer to Figure 8 , Figure 8 which is a schematic diagram of a scenario for ending video interaction provided by the embodiments of the present application. As Figure 8 shown, the media output interface 80a and the video interaction interface 80b can be the interfaces of the application client of the first terminal device at different times. Among them, the media output interface 80a can be the media output interface 40b in the corresponding embodiment above, and the interaction area 80c can be the interaction area 40c in the corresponding embodiment above. Figure 4 Figure 4
[0162] As Figure 8 shown, the first object can perform a trigger operation on the interaction area 80c in the media output interface 80a. In this way, the first terminal device can respond to the trigger operation performed by the first object on the interaction area 80c in the media output interface 80a, switch the media output interface 80a to the video interaction interface 80b, and switch the display range of the interaction area 80c to the display range of the media output interface 80a in the video interaction interface 80b. Among them, the display range of the media output interface 80a is the full-screen range, and the first terminal device can display the interaction area 80c full-screen in the video interaction interface 80b to obtain the switched interaction area 80c. At this time, the switched interaction area 80c can also be referred to as the video interaction interface 80b.
[0163] As Figure 8 As shown, the first terminal device may output first interactive video data 81a, second interactive video data 81b, and a video interaction closing control 81c in the switched interaction area 80c (i.e., the video interaction interface 80b). The first object may perform a triggering operation on the video interaction closing control 81c. In this way, the first terminal device may respond to the triggering operation performed by the first object on the video interaction closing control 81c and end the video interaction between the first terminal device and the second terminal device.
[0164] It should be understood that, optionally, the first terminal device may output a list of terminal devices in the terminal viewing interface. Further, the first terminal device may respond to a fourth selection operation on the list of terminal devices, switch the terminal viewing interface to a video interaction interface, and output second interactive video data, default video data, and a synchronization output invitation control associated with the first terminal device in the video interaction interface. The default video data is used to indicate that the first terminal device and the second terminal device selected by the fourth selection operation are in a video interaction waiting state. Further, if the second terminal device selected by the fourth selection operation confirms to perform video interaction with the first terminal device, the first terminal device may switch the output of the default video data in the video interaction interface to first interactive video data associated with the second terminal device. Further, the first terminal device may respond to a triggering operation on the synchronization output invitation control and output a waiting prompt message (for example, the waiting prompt message may be "Waiting for the other party to accept the invitation") in the video interaction interface. The waiting prompt message is used to indicate that the first terminal device and the second terminal device are in a synchronization output waiting state, and the synchronization output waiting state means that the first terminal device and the second terminal device are waiting to perform synchronization output. Further, if the second terminal device confirms to perform synchronization output with the first terminal device, the first terminal device may switch the video interaction interface to a media output interface, output a list of recommended media data associated with the first terminal device in the media output interface, and output first interactive video data in the interaction area of the media output interface. Further, the first terminal device may respond to a fifth selection operation on the list of recommended media data and output the selected recommended media data selected by the fifth selection operation (for example, the selected recommended media data may be the first media data) in the media output interface.
[0165] For ease of understanding, please refer to Figure 9a and Figure 9b , Figure 9a is a schematic diagram of a scenario for performing video interaction provided by an embodiment of the present application, Figure 9b is a schematic diagram of a scenario for selecting media data provided by an embodiment of the present application. As Figure 9a shown, the terminal viewing interface 90a, the video interaction interface 90b, and the video interaction interface 90c may be the interfaces of the application client of the first terminal device at different times. AsFigure 9b The video interaction interface 93a, media output interface 93b, and media output interface 93c shown may be the interfaces of the application client of the first terminal device at different times.
[0166] As Figure 9a shown, the first object may perform a viewing operation on the terminal device list. In this way, the first terminal device may respond to the viewing operation performed by the first object on the terminal device list and output the terminal device list (i.e., terminal device list 91a) in the terminal viewing interface 90a. Among them, the terminal device list 91a may include terminal devices having a binding relationship with the first terminal device (for example, terminal device 91b) and synchronization invitation controls (for example, synchronization invitation control 91c corresponding to terminal device 91b).
[0167] As Figure 9a shown, the first object may perform a fourth selection operation on the terminal device list 91a (for example, the first object may perform a triggering operation on the synchronization invitation control 91c). In this way, the first terminal device may respond to the triggering operation performed by the first object on the synchronization invitation control 91c, switch the terminal viewing interface 90a to the video interaction interface 90b, and output the second interaction video data 92b, default video data 92a, and synchronization output invitation control 92c associated with the first terminal device in the video interaction interface 90b. Among them, the terminal device 91b may be the second terminal device selected by the fourth selection operation, and the synchronization output invitation control 92c is in a non-selectable state.
[0168] As Figure 9a shown, if the second terminal device confirms to perform video interaction with the first terminal device, the first terminal device may switch the video interaction interface 90b to the video interaction interface 90c, switch the default video data 92a in the video interaction interface 90b to output the first interaction video data 92d associated with the second terminal device in the video interaction interface 90c, and switch the synchronization output invitation control 92c from a non-selectable state to a selectable state.
[0169] As Figure 9bAs shown, the first object can perform a triggering operation on the synchronous output invitation control 92c. In this way, the first terminal device can respond to the triggering operation performed by the first object on the synchronous output invitation control 92c, switch the video interaction interface 90c to the video interaction interface 93a, and output a waiting prompt message 93d in the video interaction interface 93a. Further, if the second terminal device confirms to perform synchronous output with the first terminal device, the first terminal device can switch the video interaction interface 93a to the media output interface 93b, output a list of recommended media data associated with the first terminal device in the media output interface 93b, and output the first interactive video data associated with the second terminal device in the interaction area of the media output interface 93b. Among them, the list of recommended media data includes recommended media data associated with the first terminal device. For example, the recommended media data may include video data 94a, video data 94b, video data 94c, and video data 94d, and the video data 94a may be the first media data.
[0170] As Figure 9b shown, the first object can perform a fifth selection operation on the list of recommended media data (for example, the first object can perform a triggering operation on the video data 94a). In this way, the first terminal device can respond to the triggering operation performed by the first object on the video data 94a, switch the media output interface 93b to the media output interface 93c, and output the selected recommended media data (i.e., the video data 94a) selected by the fifth selection operation in the media output interface 93c.
[0171] Optionally, during the synchronous output process between the first terminal device and the second terminal device, the first terminal device can also invite other terminal devices to perform synchronous output to achieve synchronous output among the first terminal device, the second terminal device, and other terminal devices. At the same time, during the synchronous output process among the first terminal device, the second terminal device, and other terminal devices, the first terminal device, the second terminal device, and other terminal devices can perform video interaction, so as to achieve multi-person synchronous output and multi-person video interaction. The embodiments of the present application do not limit the number of terminal devices participating in synchronous output and video interaction.
[0172] It can be seen that the embodiments of the present application can integrate video interaction into the media data synchronous output scenario. When the first terminal device outputs the first media data, the first terminal device can invite other terminal devices (such as the second terminal device) to synchronously output the first media data, and perform video interaction between the first terminal device and the second terminal device during the synchronous output process of the first media data, thereby enriching the interaction methods between the first terminal device and the second terminal device and improving the user experience of synchronous output.
[0173] Further, please refer to Figure 11 ,Figure 11 This is a schematic flowchart of a data processing method provided by an embodiment of the present application. This method can be executed by a server, or by a terminal device (e.g., a second terminal device), or jointly by a server and a terminal device (e.g., a second terminal device). The server can be the server 2000 in the corresponding embodiment above, and the second terminal device can be any terminal device (e.g., terminal device 3000n) in the corresponding embodiment above. For ease of understanding, the embodiment of the present application takes the execution of this method by the second terminal device as an example for description. Among them, the data processing method can include the following steps S401 - step S402: Figure 1 The server can be the server 2000 in the corresponding embodiment above, and the second terminal device can be any terminal device (e.g., terminal device 3000n) in the corresponding embodiment above. Figure 1 For ease of understanding, the embodiment of the present application takes the execution of this method by the second terminal device as an example for description. Among them, the data processing method can include the following steps S401 - step S402:
[0174] Step S401, output a video interaction confirmation control associated with the media data synchronous output function in the application client;
[0175] Among them, the first terminal device belongs to the terminal device list corresponding to the second terminal device (i.e., the second terminal device list). There is a binding relationship between the terminal devices in the terminal device list and the second terminal device. The embodiment of the present application does not limit the number of terminal devices in the terminal device list.
[0176] Among them, the video interaction confirmation control is indicated and output by the first terminal device; in other words, when the first terminal device responds to the first selection operation for the terminal device list (i.e., the first terminal device list), the second terminal device can output a video interaction confirmation control associated with the media data synchronous output function in the application client. Among them, the first terminal device's response to the first selection operation for the terminal device list can indicate that the first terminal device invites the second terminal device to perform a video interaction.
[0177] It can be understood that before the second terminal device outputs the video interaction confirmation control, it can output the second media data in the media output interface, or may not output the second media data in the media output interface (e.g., the second terminal device can display a media recommendation interface in the application client), that is, the second terminal device can accept the invitation for video interaction from the first terminal device on any interface of the application client. For ease of understanding, the embodiment of the present application takes the case where the second terminal device outputs the second media data in the media output interface and the first terminal device responds to the first selection operation for the terminal device list as an example for description, that is, the embodiment of the present application takes the case where the second terminal device accepts the invitation for video interaction from the first terminal device when outputting the second media data as an example for description.
[0178] Step S402: In response to a trigger operation on the video interaction confirmation control, synchronously output the first media data currently output by the first terminal device in the application client, and output the second interaction video data associated with the first terminal device in the interaction area of the application client.
[0179] Specifically, the second terminal device can, in response to a trigger operation on the video interaction confirmation control, output the second interaction video data associated with the first terminal device, the first interaction video data associated with the second terminal device, and the synchronous output confirmation control in the application client. The first interaction video data and the second interaction video data are used for video interaction between the first terminal device and the second terminal device. Further, the second terminal device can, in response to a trigger operation on the synchronous output confirmation control, synchronously output the first media data currently output by the first terminal device in the application client, and output the second interaction video data in the interaction area of the application client. The second interaction video data is used for video interaction between the first terminal device and the second terminal device, and the second interaction video data can be audio-video data recorded in real time through the camera and microphone corresponding to the first terminal device (for example, the second interaction video data can be audio-video data obtained by real-time recording of a little girl in the living room scene, and the second interaction video data can be audio-video data obtained by real-time recording of the dining room scene). The first terminal device and the second terminal device have the function of synchronously outputting the first media data.
[0180] Among them, optionally, when the second media data is output in the media output interface of the application client, the second terminal device can switch the media output interface to a video interaction interface. The video interaction interface is switched by the first terminal device (i.e., the first terminal device invites the second terminal device to perform video interaction), the first terminal device belongs to the terminal device list corresponding to the second terminal device, and the first terminal device can be any terminal device in the terminal device list corresponding to the second terminal device. Further, the second terminal device can output a video interaction confirmation control associated with the media data synchronous output function in the video interaction interface. Optionally, the second terminal device can output a video interaction rejection control associated with the media data synchronous output function in the video interaction interface. Further, the second terminal device can, in response to a trigger operation on the video interaction confirmation control, output the second interaction video data associated with the first terminal device, the first interaction video data associated with the second terminal device, and the synchronous output confirmation control in the video interaction interface. Further, the second terminal device can, in response to a trigger operation on the synchronous output confirmation control (i.e., the second terminal device agrees to synchronously output media data with the first terminal device), switch the video interaction interface to the media output interface, output the first media data currently output by the first terminal device in the media output interface, and output the second interaction video data in the interaction area of the media output interface.
[0181] Among them, if the second terminal device agrees to perform video interaction with the first terminal device, the second terminal device can respond to the trigger operation on the video interaction confirmation control (that is, the second object can perform the trigger operation on the video interaction confirmation control). Optionally, if the second terminal device refuses to perform video interaction with the first terminal device, the second terminal device can respond to the trigger operation on the video interaction rejection control (that is, the second object can perform the trigger operation on the video interaction rejection control), and continue to output the second media data in the video interaction interface.
[0182] Similarly, the second terminal device can send a video interaction invitation to the first terminal device (that is, the second terminal device can invite the first terminal device to perform video interaction). For the specific process of the second terminal device sending a video interaction invitation to the first terminal device, reference can be made to the description of the first terminal device sending a video interaction invitation to the second terminal device above, which will not be elaborated here.
[0183] For ease of understanding, please refer to Figure 12a and Figure 12b , Figure 12a and Figure 12b are schematic diagrams of a scenario for synchronous output and video interaction provided by an embodiment of the present application. As Figure 12a and Figure 12b shown, the media output interface 120a, the video interaction interface 120b, the media output interface 120c, and the video interaction interface 120e can be the interfaces of the application client of the second terminal device at different times.
[0184] As Figure 12a shown, the second terminal device can output the second media data in the media output interface 120a. When the first terminal device invites the second terminal device to perform video interaction, the second terminal device can switch the media output interface 120a to the video interaction interface 120b, and output the video interaction confirmation control 121b and the video interaction rejection control 121a in the video interaction interface 120b.
[0185] As Figure 12a shown, the second object can perform a trigger operation on the video interaction confirmation control 121b. In this way, the second terminal device can respond to the trigger operation performed by the second object on the video interaction confirmation control 121b, switch the video interaction interface 120b to the video output interface 120c, synchronously output the first media data currently output by the first terminal device in the video output interface 120c, and output the second interactive video data associated with the first terminal device in the interaction area 120d of the media output interface 120c.
[0186] Optionally, as Figure 12bAs shown, the second object may perform a triggering operation on the video interaction confirmation control 121b. In this way, the second terminal device may respond to the triggering operation performed by the second object on the video interaction confirmation control 121b, switch the video interaction interface 120b to the video interaction interface 120e, and output the second interactive video data 122a associated with the first terminal device, the first interactive video data 122b associated with the second terminal device, and the synchronous output confirmation control 122c in the video interaction interface 120e.
[0187] As Figure 12b shown, if the second terminal device agrees to synchronously output media data with the first terminal device (i.e., the second object agrees to synchronously output media data with the first terminal device), the second object may perform a triggering operation on the synchronous output confirmation control 122c. In this way, the second terminal device may respond to the triggering operation performed by the second object on the synchronous output confirmation control 122c, switch the video interaction interface 120e to the media output interface 120c, output the first media data in the media output interface 120c, and output the second interactive video data in the interaction area 120d of the media output interface 120c. Optionally, if the second terminal device refuses to synchronously output media data with the first terminal device (i.e., the second object refuses to synchronously output media data with the first terminal device), the second object does not need to perform a triggering operation on the synchronous output confirmation control 122c.
[0188] Optionally, the second terminal device may output a video interaction end control (not shown in the figure) in the video interaction interface 120e. If the second object performs a triggering operation on the video interaction end control (not shown in the figure), the second terminal device may respond to the triggering operation performed by the second object on the video interaction end control (not shown in the figure) and end the video interaction between the first terminal device and the second terminal device.
[0189] It should be understood that when the first terminal device responds to a control operation for the media data progress control function in the media output interface, the second terminal device may switch the output of the first media data corresponding to the first output progress to the first media data corresponding to the second output progress. Wherein, the first output progress is the current output progress of the first media data in the media output interface, the second output progress is the output progress before the first output progress, or the second output progress is the output progress after the first output progress; the second output progress is the output progress determined by the control operation.
[0190] For ease of understanding, please refer to Figure 6b , Figure 6b which is a schematic diagram of a scenario for adjusting the output progress provided by an embodiment of the present application. As Figure 6bThe media output interfaces 62a and 62b shown can be the interfaces of the application client of the second terminal device at different times. The media output interface 62a can be the media output interface displayed by the second terminal device when the first media data is synchronously output by the first terminal device and the second terminal device.
[0191] As Figure 6b shown, when the media output interface displayed by the first terminal device is the media output interface 60b (or the media output interface 60a), the media output interface displayed by the second terminal device is the media output interface 62a; when the media output interface displayed by the first terminal device is the media output interface 60c, the media output interface displayed by the second terminal device is the media output interface 62b. When the first terminal device switches the media output interface 60b in the corresponding embodiment above to the media output interface 60c, the second terminal device can switch the media output interface 62a to the media output interface 62b, and synchronously switch the media data corresponding to the first output progress (i.e., the output progress 61a) of the first media data to the media data corresponding to the second output progress (i.e., the output progress 61b) of the first media data. Figure 6a
[0192] Similarly, the second terminal device can respond to the control operation for the media data progress control function in the media output interface. For the specific process of the second terminal device responding to the control operation for the media data progress control function in the media output interface, reference can be made to the description of the first terminal device responding to the control operation for the media data progress control function in the media output interface above, and details will not be elaborated here.
[0193] It should be understood that when the first terminal device responds to the control operation for the media data switching function in the media output interface and the second selection operation for the recommended media data list, the second terminal device can switch the output of the first media data to the selected recommended media data selected by the second selection operation in the media output interface. Among them, the recommended media data list includes the recommended media data associated with the first terminal device.
[0194] For easy understanding, please refer to Figure 7b , Figure 7b which is a schematic diagram of a scenario for switching video data provided by an embodiment of the present application. As Figure 7b shown, the media output interfaces 72a and 72b can be the interfaces of the application client of the second terminal device at different times. The media output interface 72a can be the media output interface displayed by the second terminal device when the first media data is synchronously output by the first terminal device and the second terminal device.
[0195] As Figure 7b As shown, when the media output interface displayed on the first terminal device is the media output interface 70b (or media output interface 70a), the media output interface displayed on the second terminal device is the media output interface 72a; when the media output interface displayed on the first terminal device is the media output interface 70c, the media output interface displayed on the second terminal device is the media output interface 72b. When the first terminal device switches the media output interface 70b in the corresponding embodiment described above to the media output interface 70c, the second terminal device can switch the media output interface 72a to the media output interface 72b, and synchronously switch the output of the first media data to the selected recommended media data (i.e., video data 71b). Figure 7a When the media output interface 70b in the corresponding embodiment is switched to the media output interface 70c, the second terminal device can switch the media output interface 72a to the media output interface 72b, and synchronously switch the output of the first media data to the selected recommended media data (i.e., video data 71b).
[0196] Similarly, the second terminal device can respond to the control operation for the media data switching function in the media output interface. For the specific process of the second terminal device responding to the control operation for the media data switching function in the media output interface, reference can be made to the description of the first terminal device responding to the control operation for the media data switching function in the media output interface above, and details will not be elaborated here.
[0197] It should be understood that, optionally, the second terminal device may output the second media data in the media output interface. Further, the second terminal device may switch the media output interface to a video interaction interface. Among them, the video interaction interface is switched by the first terminal device (that is, the first terminal device invites the second terminal device to perform video interaction). Further, the second terminal device may output a video interaction confirmation control associated with the media data synchronous output function in the video interaction interface. Optionally, the second terminal device may output a video interaction rejection control associated with the media data synchronous output function in the video interaction interface. Further, the second terminal device may, in response to a trigger operation on the video interaction confirmation control, output second interaction video data associated with the first terminal device, first interaction video data associated with the second terminal device, and a synchronous output invitation control in the video interaction interface. Among them, the first interaction video data and the second interaction video data are used for video interaction between the first terminal device and the second terminal device. Further, the second terminal device may output a synchronous output acceptance control in the video interaction interface. Among them, the synchronous output acceptance control is indicated to be output by the first terminal device (that is, the first terminal device invites the second terminal device to perform synchronous output). Further, the second terminal device may, in response to a trigger operation on the synchronous output acceptance control, switch the video interaction interface to the media output interface, output a media data selection prompt in the media output interface (for example, the media data selection prompt may be "waiting for the other party to select media data"), and output the first interaction video data in the interaction area of the media output interface. Further, the second terminal device may output a selected recommended media data in the media output interface (for example, the selected recommended media data may be the first media data). Among them, the selected recommended media data is indicated to be output by the first terminal device (that is, the first terminal device selects the selected recommended media data from the recommended media data list).
[0198] Among them, if the second terminal device agrees to perform synchronous output with the first terminal device, the second terminal device may respond to the trigger operation on the synchronous output acceptance control (that is, the second object may perform a trigger operation on the synchronous output acceptance control).
[0199] Among them, for the specific process of the second terminal device responding to the trigger operation on the synchronous output invitation control, reference may be made to the description of the first terminal device responding to the trigger operation on the synchronous output invitation control above, which will not be elaborated here. Similarly, for the specific process of the first terminal device responding to the synchronous output invitation and video interaction invitation of the second terminal device, reference may be made to the description of the second terminal device responding to the synchronous output invitation and video interaction invitation of the first terminal device above, which will not be elaborated here.
[0200] For ease of understanding, please refer to Figure 10 ,Figure 10 This is a schematic diagram of a scenario for synchronous output provided by an embodiment of the present application. As Figure 10 shown, the video interaction interfaces 100a, 100b, media output interfaces 100c, and media output interfaces 100d can be the interfaces of the application client of the second terminal device at different times.
[0201] As Figure 10 shown, when the first terminal device responds to the fourth selection operation for the terminal device list (for example, the first terminal device responds to the triggering operation of the synchronous invitation control 91c in the corresponding embodiment above Figure 9a ), the second terminal device can output a video interaction confirmation control (for example, the video interaction confirmation control 121b in the corresponding embodiment above Figure 12a ) associated with the media data synchronous output function in the video interaction interface (for example, the video interaction interface 120b in the corresponding embodiment above Figure 12a ). Further, the second object can perform a triggering operation on the video interaction confirmation control 121b. In this way, the second terminal device can respond to the triggering operation performed by the second object on the video interaction confirmation control 121b, switch the video interaction interface 120b to the video interaction interface 100a, and output the second interactive video data 101a associated with the first terminal device, the first interactive video data 101b associated with the second terminal device, and the synchronous output invitation control 101c in the video interaction interface 100a.
[0202] As Figure 10 shown, when the first object performs a triggering operation on the synchronous output invitation control 92c in the corresponding embodiment above Figure 9a , the second terminal device can switch the video interaction interface 100a to the video interaction interface 100b and output a synchronous output acceptance control 101d in the video interaction interface. Among them, when the second terminal device switches the video interaction interface 100a to the video interaction interface 100b, it can cancel the output of the synchronous output invitation control 101c and output the synchronous output acceptance control 101d, that is, switch the synchronous output invitation control 101c to output the synchronous output acceptance control 101d. Further, the second object can perform a triggering operation on the synchronous output acceptance control 101d. In this way, the second terminal device can respond to the triggering operation performed by the second object on the synchronous output acceptance control 101d, switch the video interaction interface 100b to the media output interface 100c, output a media data selection prompt 101e in the media output interface 100c, and output the second interactive video data associated with the first terminal device in the interaction area 100e of the media output interface 100c.
[0203] Optionally, the second terminal device may also simultaneously output a synchronous output invitation control 101c and a synchronous output acceptance control 101d in the video interaction interface 100a, and simultaneously output a synchronous output invitation control 101c and a synchronous output acceptance control 101d in the video interaction interface 100b. At this time, the synchronous output invitation control 101c in the video interaction interface 100a is in a highlighted state (i.e., an optional state), and the synchronous output acceptance control 101d in the video interaction interface 100a is in a non-highlighted state (i.e., a non-selectable state); the synchronous output invitation control 101c in the video interaction interface 100b is in a non-highlighted state (i.e., a non-selectable state), and the synchronous output acceptance control 101d in the video interaction interface 100b is in a highlighted state (i.e., an optional state); a control in a non-selectable state cannot be triggered, and a control in an optional state can be triggered.
[0204] Optionally, the second terminal device may output a video interaction end control (not shown in the figure) in the video interaction interface 100a (or the video interaction interface 100b). If the second object performs a trigger operation on the video interaction end control (not shown in the figure), the second terminal device may respond to the trigger operation performed by the second object on the video interaction end control (not shown in the figure) and end the video interaction between the first terminal device and the second terminal device.
[0205] As Figure 10 shown, when the first object performs a fifth selection operation on the recommended media data list (for example, the first object performs a trigger operation on the video data 94a in the corresponding embodiment described above Figure 9b ), the second terminal device may switch the media output interface 100c to the media output interface 100d and output the selected recommended media data (i.e., the video data 94a) of the fifth selection operation in the media output interface 100d.
[0206] It can be seen that the embodiments of the present application can integrate video interaction into the media data synchronous output scenario. When the first terminal device outputs the first media data, the second terminal device can synchronously output the first media data currently output by the first terminal device, and perform video interaction between the first terminal device and the second terminal device during the synchronous output of the first media data, thereby enriching the interaction method between the first terminal device and the second terminal device and improving the user experience of synchronous output.
[0207] Further, please refer to Figure 13 , Figure 13 which is a schematic flowchart of a data processing method provided by an embodiment of the present application. This method may be executed by a server, or may be executed by a terminal device (for example, the first terminal device), or may be jointly executed by a server and a terminal device (for example, the first terminal device). The server may be the aboveFigure 1 In the server 2000 corresponding to the embodiment, the first terminal device may be any one of the terminal devices in the above Figure 1 corresponding embodiments (for example, the terminal device 3000b). For ease of understanding, this application embodiment is described by taking the method as being executed by the first terminal device as an example. Among them, the data processing method may include the following steps S201 to step S202:
[0208] Step S201, output a binding QR code on the device binding interface;
[0209] Step S202, in response to the QR code scanning operation of the third terminal device for the binding QR code, output a binding success prompt on the device binding interface.
[0210] Among them, the binding success prompt (for example, the binding success prompt may be "successfully bound the device") is used to indicate that a binding management relationship is successfully established between the first terminal device and the third terminal device; the binding management relationship between the first terminal device and the third terminal device is used to add the second terminal device to the terminal device list corresponding to the first terminal device. In other words, the binding management relationship between the first terminal device and the third terminal device is used to bind the terminal device in the terminal device list to the first terminal device.
[0211] It can be understood that the third terminal device is used to create a first service organization including the first terminal device, and the third terminal device is also used to create other service organizations other than the first service organization; similarly, the fourth terminal device is used to create a second service organization including the second terminal device, and the fourth terminal device is also used to create other service organizations other than the second service organization. Among them, the service organization in this application embodiment may be a family (realizing the output of media of different families together), a class (realizing the output of media of different classes together), an enterprise (realizing the output of media of different enterprises together), a department (realizing the output of media of different departments together), etc. This application embodiment does not limit the specific type of the service organization.
[0212] It should be understood that the third terminal device can output a business organization list (i.e., the first business organization list) and a business organization creation control in the client interface. Among them, the business organization list (i.e., the first business organization list) includes the business organizations created by the third terminal device. Further, the third terminal device can respond to the trigger operation for the business organization creation control and output in the client interface the business organization created by the business organization creation control. Among them, the business organization created by the business organization creation control can be the first business organization, and the third terminal device can add the first business organization to the business organization list (i.e., the first business organization list). Further, the third terminal device can respond to the viewing operation for the first business organization and output in the client interface the terminal devices and device addition controls in the first business organization. Further, the third terminal device can respond to the trigger operation for the device addition control and output in the client interface a scanning area (i.e., the first scanning area). Further, when the third terminal device responds to the scanning operation of the scanning area (i.e., the first scanning area) for the binding QR code in the device binding interface of the first terminal device, it outputs in the client interface a device binding prompt (for example, the device binding prompt can be "Whether to establish a binding management relationship"), a binding acceptance control, and a binding rejection control. Further, the third terminal device can respond to the trigger operation for the binding acceptance control and output in the client interface the added terminal device. Among them, the terminal device added by the third terminal device can be the first terminal device, and the third terminal device can add the first terminal device to the first business organization. Optionally, the third terminal device can respond to the trigger operation for the binding rejection control and continue to output in the client interface the terminal devices and device addition controls in the first business organization without adding the first terminal device to the first business organization.
[0213] For ease of understanding, please refer to Figure 14 and Figure 15 , Figure 14 which is a schematic diagram of a scenario for device management provided by an embodiment of the present application, Figure 15 and which is a schematic diagram of a scenario for device binding provided by an embodiment of the present application. As Figure 14 shown, the client interfaces 140a, 140b, 140c, and 140d can be the interfaces of the application client of the third terminal device at different times. As Figure 15 shown, the media output interfaces 150a, 150b, and 150c can be the interfaces of the application client of the first terminal device at different times. As Figure 15 shown, the client interface 150d can be the interface of the third terminal device. Among them, the media output interface 150a can be the above Figure 3In the media output interface 30b in the corresponding embodiment, the device binding control 151a can be the device binding control 31b in the above Figure 3 corresponding embodiment. Among them, the client interfaces 140a, 140b, 140c, 140d, and 150d can be the interfaces in the application client of the third terminal device or the interfaces in the subroutines of the application client.
[0214] As Figure 14 shown, the third terminal device can output a service organization list (i.e., the first service organization list) and a service organization creation control 141a in the client interface 140a. Among them, the service organization list (i.e., the first service organization list) can include the service organization 101, and the number of terminal devices in the service organization 101 can be 2. Further, the first object can perform a trigger operation on the service organization creation control 141a. In this way, the third terminal device can respond to the trigger operation performed by the first object on the service organization creation control 141a, switch the client interface 140a to the client interface 140b, and output the service organization created by the service organization creation control 141a in the client interface 140b. Among them, the service organization created by the service organization creation control 141a can be the first service organization (for example, the first service organization can be the service organization 102), and the third terminal device can add the service organization 102 to the service organization list (i.e., the first service organization list).
[0215] As Figure 14 shown, the first object can perform a viewing operation on the service organization 102 (for example, the first object can perform a trigger operation on the service organization control 141b corresponding to the service organization 102). In this way, the third terminal device can respond to the trigger operation performed by the first object on the service organization control 141b, switch the client interface 140b to the client interface 140c, and output the terminal devices and device addition control 141c in the service organization 102 in the client interface 140c. Among them, there are no terminal devices in the service organization 102, that is, the terminal devices in the service organization 102 are empty.
[0216] As Figure 14 and Figure 15 shown, the first object can perform a trigger operation on the device addition control 141c. In this way, the third terminal device can respond to the trigger operation performed by the first object on the device addition control 141c, output a scanning area (not shown in the figure) in the client interface, and then respond to the scanning area (not shown in the figure) for the binding two-dimensional code in the device binding interface of the first terminal device (for example, Figure 15The scanning operation of the binding QR code 151b in the device binding interface 150b of the corresponding embodiment switches the client interface 140c to Figure 15 the client interface 150d in the corresponding embodiment, and outputs a device binding prompt 152a, a binding acceptance control 152b, and a binding rejection control 152c in the client interface 150d.
[0217] As Figure 14 and Figure 15 shown, the first object can perform a trigger operation on the binding acceptance control 152b. In this way, the third terminal device can respond to the trigger operation performed by the first object on the binding acceptance control 152b, switch the client interface 150d to the client interface 140d, and output the added terminal device in the client interface 140d. Among them, the terminal device added by the third terminal device can be the first terminal device (for example, the first terminal device can be the terminal device 201), and the third terminal device can add the terminal device 201 to the service organization 102.
[0218] Similarly, the first object can continue to perform a trigger operation on the device addition control 141c in the client interface 140d to add other terminal devices to the service organization 102 except the terminal device 201; the first object can continue to perform a trigger operation on the service organization creation control 141a in the client interface 140b to create other service organizations for the third terminal device except the service organization 102.
[0219] As Figure 15 shown, the first object can perform a trigger operation on the device binding control 151a. In this way, the first terminal device can respond to the trigger operation performed by the first object on the device binding control 151a, switch the media output interface 150a to the media output interface 150b, and output the binding QR code 151b in the media output interface 150b. Further, the first terminal device can respond to the scanning operation of the third terminal device on the binding QR code 151b, switch the media output interface 150b to the media output interface 150c, and output a binding success prompt 151c in the media output interface 150c.
[0220] Among them, the third terminal device is used to establish an association relationship between the first service organization and the second service organization to which the second terminal device belongs; there is a binding management relationship between the second terminal device and the fourth terminal device; the association relationship (i.e., the association relationship between the first service organization and the second service organization) is used to indicate that there is a binding relationship between the terminal devices in the first service organization and the terminal devices in the second service organization (the binding relationship in the embodiments of the present application can also be referred to as an association relationship), and the association relationship (i.e., the association relationship between the first service organization and the second service organization) is used to indicate that there is a binding relationship between the first terminal device and the second terminal device.
[0221] Among them, for the specific process of the fourth terminal device creating the second service organization, reference can be made to the description of the third terminal device creating the first service organization above, and details will not be elaborated here. For the specific process of establishing a binding management relationship between the fourth terminal device and the second terminal device, reference can be made to the description of the first terminal device and the third terminal device establishing a binding management relationship above, and details will not be elaborated here.
[0222] It can be understood that when the third terminal device establishes an association relationship between the first service organization and the second service organization, the third terminal device can output a service organization association control associated with the first service organization (i.e., the first service organization association control) in the client interface. Further, the third terminal device can respond to a trigger operation on the service organization association control (i.e., the first service organization association control) and output a session list in the client interface. Among them, the session list can include sessions associated with the application client in the third terminal device. Further, the third terminal device can respond to a sixth selection operation on the session list and send an association invitation message to the fourth terminal device associated with the session selected by the sixth selection operation (the third terminal device can send the association invitation message to the fourth terminal device in the form of a link). Further, if the fourth terminal device agrees to establish an association relationship between the first service organization and the second service organization for the association invitation message (i.e., the fourth terminal device authorizes and confirms the association relationship between the first service organization and the second service organization), the third terminal device can output a device viewing control for the association relationship between the first service organization and the second service organization (i.e., the first device viewing control) in the client interface. Further, the third terminal device can respond to a trigger operation on the device viewing control (i.e., the first device viewing control) and output the terminal devices in the service organization associated with the first service organization in the client interface (for example, the terminal devices in the second service organization). Among them, the terminal devices in the second service organization can be the terminal devices having a binding relationship with the first terminal device, and the terminal devices in the second service organization belong to the terminal device list.
[0223] Among them, the fourth terminal device has the permission to view the session selected by the sixth selection operation, that is, both the third terminal device and the fourth terminal device are terminal devices participating in the session selected by the sixth selection operation. When the session selected by the sixth selection operation is a private chat session, the terminal devices associated with the session selected by the sixth selection operation may include the third terminal device and the fourth terminal device (that is, both the third terminal device and the fourth terminal device are terminal devices participating in the private chat session selected by the sixth selection operation); when the session selected by the sixth selection operation is a group chat session, the terminal devices associated with the session selected by the sixth selection operation may include the third terminal device and the fourth terminal device, and may also include other terminal devices (that is, both the third terminal device and the fourth terminal device are terminal devices participating in the group chat session selected by the sixth selection operation).
[0224] Correspondingly, when the fourth terminal device receives the association invitation information sent by the third terminal device, the fourth terminal device may output the association invitation information in the client interface. Further, the fourth terminal device may respond to the trigger operation for the association invitation information and output a service organization list (i.e., the second service organization list) in the client interface. Among them, the service organization list (i.e., the second service organization list) includes the service organizations created by the fourth terminal device, and the service organization list (i.e., the second service organization list) includes the second service organization. Further, the fourth terminal device may respond to the seventh selection operation for the service organization list (i.e., the second service organization list) and agree to establish an association relationship between the first service organization and the second service organization selected by the seventh selection operation (i.e., the fourth terminal device agrees to establish an association relationship between the first service organization and the second service organization for the association invitation information). Further, the fourth terminal device may output a device viewing control (i.e., the second device viewing control) for the association relationship between the first service organization and the second service organization in the client interface. Further, the fourth terminal device may respond to the trigger operation for the device viewing control (i.e., the second device viewing control) and output the terminal devices in the service organization associated with the second service organization in the client interface (for example, the terminal devices in the first service organization). Among them, the terminal devices in the first service organization may be the terminal devices having a binding relationship with the second terminal device.
[0225] For ease of understanding, please refer to Figure 16 , Figure 16 which is a schematic diagram of a scenario for performing service organization binding provided by an embodiment of the present application. As Figure 16 shown, the client interfaces 160a, 160b, 160c, and 160d may be the interfaces of the application client of the third terminal device at different times. Among them, the client interface 160a may be the above Figure 14The client interface 140d in the corresponding embodiment. The client interface 160a, the client interface 160b, the client interface 160c and the client interface 160d may be interfaces in the application client of the third terminal device, or may be interfaces in a subprogram in the application client.
[0226] like Figure 16 As shown, the third terminal device can output the business organization associated control 161a associated with the first business organization (i.e., business organization 102) in the client interface 160a. Further, the first object can perform a trigger operation on the business organization associated control 161a, so that the third terminal device can respond to the trigger operation performed by the first object on the business organization associated control 161a, switch the client interface 160a to the client interface 160b, and output a session list in the client interface 160b. The session list may include sessions (e.g., session 161b) associated with the application client in the third terminal device.
[0227] like Figure 16 As shown in the figure, the first object can perform a sixth selection operation on the session list (for example, the first object can perform a trigger operation on session 161b), so that the third terminal device can respond to the trigger operation performed by the first object on session 161b and send an association invitation message to the terminal device associated with session 161b (that is, the fourth terminal device) (not shown in the figure, for example, the following Figure 18 Further, if the fourth terminal device agrees to establish the association relationship between the first business organization and the second business organization in response to the association invitation information (not shown in the figure), the third terminal device can switch the client interface 160b to the client interface 160c, and output the device viewing control 161c for the association relationship between the first business organization and the second business organization in the client interface 160c.
[0228] like Figure 16 As shown, the first object can perform a trigger operation on the device viewing control 161c, so that the third terminal device can respond to the trigger operation performed by the first object on the device viewing control 161c, switch the client interface 160c to the client interface 160d, and output the terminal devices in the second business organization (i.e., business organization 103) in the client interface 160d. The terminal devices in the second business organization may include terminal devices 202 and terminal devices 203.
[0229] For easier understanding, see Figure 17 , Figure 17 Schematic diagram of a scenario of agreeing to bind a business organization provided by an embodiment of the present application. Figure 17The client interfaces 170a and 170b shown can be the interfaces of the application client of the fourth terminal device at different times.
[0230] As Figure 17 shown, when receiving the association invitation information sent by the third terminal device (i.e., the association invitation information 171a), the fourth terminal device can output the association invitation information 171a in the client interface 170a. Further, the second object can perform a trigger operation on the association invitation information 171a. In this way, the fourth terminal device can respond to the trigger operation performed by the second object on the association invitation information 171a, switch the client interface 170a to the client interface 170b, and output the second service organization list in the client interface 170b. Among them, the second service organization list can include the service organizations 103 and 104 created by the fourth terminal device, and the service organization 103 can be the second service organization.
[0231] As Figure 17 shown, the second object can perform a seventh selection operation on the second service organization list (for example, the second object can perform a trigger operation on the service organization confirmation control 171b corresponding to the service organization 103). In this way, the fourth terminal device can respond to the trigger operation performed by the second object on the service organization confirmation control 171b and agree to establish an association relationship between the first service organization (i.e., the service organization 102) and the second service organization (i.e., the service organization 103).
[0232] Optionally, when the third terminal device establishes an association relationship between the first service organization and the second service organization, the third terminal device can output a service organization association control (i.e., the second service organization association control) associated with the first service organization in the client interface. Further, the third terminal device can respond to the trigger operation on the service organization association control (i.e., the second service organization association control) and output a service organization association QR code in the client interface. Further, the third terminal device can respond to the QR code scanning operation of the fourth terminal device on the service organization association QR code and output a device viewing control (i.e., the third device viewing control) for the association relationship between the first service organization and the second service organization in the client interface. Further, the third terminal device can respond to the trigger operation on the device viewing control (i.e., the third device viewing control) and output the terminal devices in the service organization associated with the first service organization in the client interface (for example, the terminal devices in the second service organization). Among them, the terminal devices in the second service organization can be the terminal devices having a binding relationship with the first terminal device, and the terminal devices in the second service organization belong to the terminal device list.
[0233] Correspondingly, the fourth terminal device can output a business organization addition control for the second business organization in the client interface. Further, the fourth terminal device can respond to the trigger operation on the business organization addition control and output a scanning area (i.e., the second scanning area) in the client interface. Further, the fourth terminal device can respond to the scanning operation of the business organization association QR code in the client interface of the third terminal device by the scanning area (i.e., the second scanning area), and output a business organization association prompt (for example, the business organization association prompt can be "Whether to establish an association relationship between business organizations"), an association acceptance control, and an association rejection control in the client interface. Further, the fourth terminal device can respond to the trigger operation on the association acceptance control and output a device viewing control (i.e., the fourth device viewing control) for the association relationship between the first business organization and the second business organization in the client interface. Further, the fourth terminal device can respond to the trigger operation on the device viewing control (i.e., the fourth device viewing control) and output the terminal devices in the business organization associated with the second business organization (for example, the terminal devices in the first business organization) in the client interface. Among them, the terminal devices in the first business organization can be the terminal devices having a binding relationship with the second terminal device. At this time, the fourth terminal device agrees to establish the association relationship between the first business organization and the second business organization. Optionally, the fourth terminal device can respond to the trigger operation on the association rejection control and continue to output the business organization addition control for the second business organization in the client interface. At this time, the fourth terminal device does not agree to establish the association relationship between the first business organization and the second business organization.
[0234] Among them, for the specific process of the fourth terminal device establishing the association relationship between the second business organization and the first business organization, reference can be made to the description of the third terminal device establishing the association relationship between the first business organization and the second business organization above, and details will not be repeated here. Among them, for the specific process of the third terminal device responding to the request of the fourth terminal device to establish the association relationship between the second business organization and the first business organization, reference can be made to the description of the fourth terminal device responding to the request of the third terminal device to establish the association relationship between the first business organization and the second business organization above, and details will not be repeated here.
[0235] For easy understanding, please refer to Figure 18 , Figure 18 which is a schematic diagram of a scenario of an association relationship provided by an embodiment of the present application. As Figure 18As shown, object 180a may be the first object in the embodiments of the present application, terminal device 181a may be the third terminal device in the embodiments of the present application, object 181b may be the second object in the embodiments of the present application, and terminal device 180b may be the fourth terminal device in the embodiments of the present application. Object 180a may log in to the application client in terminal device 181a, object 181b may log in to the application client in terminal device 180b, and object 180a and object 181b may be friends with each other or not friends with each other.
[0236] As Figure 18 shown, terminal device 181a may implement the binding and management of terminal devices through the application client (for example, terminal device 181a may establish a binding management relationship with the first terminal device through the application client), and terminal device list 182a may be the terminal device list corresponding to the first terminal device (which may also be referred to as the first terminal device list), and there is a binding relationship between the terminal devices in the first terminal device list and the first terminal device. Among them, the TV 1 in Family A may be the first terminal device in the embodiments of the present application, and the TV 1 in Family B may be the second terminal device in the embodiments of the present application.
[0237] As Figure 18 shown, terminal device 180b may implement the binding and management of terminal devices through the application client (for example, terminal device 180b may establish a binding management relationship with the second terminal device through the application client), and terminal device list 182b may be the terminal device list corresponding to the second terminal device (which may also be referred to as the second terminal device list), and there is a binding relationship between the terminal devices in the second terminal device list and the second terminal device. Among them, the TV 1 in Family A may be the first terminal device in the embodiments of the present application, and the TV 1 in Family B may be the second terminal device in the embodiments of the present application.
[0238] For ease of understanding, please refer to Figure 19 , Figure 19 which is a schematic diagram of a scenario of a binding management relationship provided by the embodiments of the present application. As Figure 19 shown, taking the application clients in the third terminal device and the fourth terminal device as social clients as an example for illustration, a client subroutine (abbreviated as subroutine) may be integrated in the social client; as Figure 19 shown, taking the application clients in the first terminal device and the second terminal device as video clients as an example for illustration, the video client may be used to play video data (that is, the media data in the embodiments of the present application may be video data). When the first terminal device and the second terminal device are smart TVs, the client subroutine in the social client may be a TV assistant applet.
[0239] As Figure 19As shown, the social client in the third terminal device may include the client object identifier of the first object (i.e., client object identifier 190a), and the social client in the fourth terminal device may include the client object identifier of the second object (i.e., client object identifier 190b).
[0240] As Figure 19 shown, the third terminal device may establish a business organization (e.g., the first business organization) in the client subroutine through the client object identifier 190a, and the business organization identifier of the first business organization may be business organization identifier 191a; the fourth terminal device may establish a business organization (e.g., the second business organization) in the client subroutine through the client object identifier 190b, and the business organization identifier of the second business organization may be business organization identifier 191b. The client subroutine in the third terminal device and the client subroutine in the fourth terminal device may establish an association through the social client, that is, the third terminal device and the fourth terminal device may establish an association relationship between the first business organization and the second business organization through the social client. Among them, the same business organization may establish an association relationship with different business organizations. For example, the first business organization may establish an association relationship with business organizations other than the second business organization, and the second business organization may establish an association relationship with business organizations other than the first business organization.
[0241] As Figure 19 shown, the third terminal device may bind a terminal device to the first business organization (e.g., the third terminal device may establish a binding management relationship between the first terminal device and the third terminal device), that is, the third terminal device may add a terminal device to the first business organization, and the terminal device identifier of the first terminal device may be terminal device identifier 192a; the fourth terminal device may bind a terminal device to the second business organization (e.g., the fourth terminal device may establish a binding management relationship between the second terminal device and the fourth terminal device), that is, the fourth terminal device may add a terminal device to the second business organization, and the terminal device identifier of the second terminal device may be terminal device identifier 192b. Therefore, the embodiments of the present application can implement device management (i.e., binding association) between the first terminal device and the second terminal device, so that the first terminal device and the second terminal device can synchronously play video data in the video client and perform video interaction in the video client.
[0242] Optionally, the third terminal device may add other terminal devices to the first service organization, so that the other terminal devices in the first service organization have the permission to add terminal devices to the first service organization and the permission to bind (which may also be referred to as associate) other service organizations to the first service organization; the fourth terminal device may add other terminal devices to the second service organization, so that the other terminal devices in the second service organization have the permission to add terminal devices to the second service organization and the permission to bind (which may also be referred to as associate) other service organizations to the second service organization.
[0243] Optionally, in the embodiments of the present application, it is also possible not to establish a binding management relationship between the first terminal device and the third terminal device, not to establish a binding management relationship between the second terminal device and the fourth terminal device, and not to establish an association relationship between the first service organization and the second service organization, but directly establish a binding relationship between the first terminal device and the second terminal device. The specific process of directly establishing a binding relationship between the first terminal device and the second terminal device may refer to the description of establishing an association relationship between the first service organization and the second service organization by the third terminal device and the fourth terminal device above, and will not be elaborated here.
[0244] It should be understood that the first terminal device in the embodiments of the present application may store the created service organization and the terminal devices in the service organization (for example, the first service organization and the terminal devices in the first service organization) to the service server; the second terminal device in the embodiments of the present application may store the created service organization and the terminal devices in the service organization (for example, the second service organization and the terminal devices in the second service organization) to the service server. Similarly, the association relationship between service organizations (for example, the association relationship between the first service organization and the second service organization) may also be stored to the service server.
[0245] It can be seen that the embodiments of the present application can establish a binding management relationship between terminal devices by means of the device management ability of the application client, and establish an association relationship between service organizations by means of the IM (Instant Messaging) ability of the application client, so as to present a binding relationship between terminal devices (that is, a binding relationship is established between terminal devices and terminal devices based on service organizations) through the association relationship between service organizations and the binding management relationship between terminal devices, realize a call invitation for video interaction and synchronous output, and further enrich the interaction methods between the first terminal device and the second terminal device, and improve the user experience of synchronous output.
[0246] Further, please refer to Figure 20 , Figure 20It is a schematic flowchart of a data processing method provided by an embodiment of the present application. This method can be executed by a server, or by a terminal device (e.g., the first terminal device), or jointly by a server and a terminal device (e.g., the first terminal device). The server can be the server 2000 in the corresponding embodiment above. The first terminal device can be any one of the terminal devices (e.g., terminal device 3000b) in the corresponding embodiment above. For ease of understanding, in the embodiment of the present application, it is described by taking the example that this method is executed by the first terminal device. The first terminal device may include a media downloader (e.g., a video stream downloader, which can also be called a video stream downloader module), a media outputter (e.g., a video player, which can also be called a video player module), an output synchronization controller (e.g., a playback synchronization controller, which can also be called a playback synchronization controller module), a synchronization scheduling component (e.g., a video watch - together scheduling component, which can also be called a video watch - together scheduling module), and a video interaction component (i.e., an audio - video call component, which can also be called an audio - video call module). In other words, the application client in the first terminal device may include a media downloader, a media outputter, an output synchronization controller, a synchronization scheduling component, and a video interaction component. Among them, the video interaction component may include a downlink control sub - component (which can also be called a downlink control sub - module) and an uplink control sub - component (which can also be called an uplink control sub - module). Among them, the data processing method may include the following steps S301 - step S309: Figure 1 in the corresponding embodiment of the server 2000 above. The first terminal device can be any one of the terminal devices (e.g., terminal device 3000b) in the corresponding embodiment above. For ease of understanding, in the embodiment of the present application, it is described by taking the example that this method is executed by the first terminal device. The first terminal device may include a media downloader (e.g., a video stream downloader, which can also be called a video stream downloader module), a media outputter (e.g., a video player, which can also be called a video player module), an output synchronization controller (e.g., a playback synchronization controller, which can also be called a playback synchronization controller module), a synchronization scheduling component (e.g., a video watch - together scheduling component, which can also be called a video watch - together scheduling module), and a video interaction component (i.e., an audio - video call component, which can also be called an audio - video call module). In other words, the application client in the first terminal device may include a media downloader, a media outputter, an output synchronization controller, a synchronization scheduling component, and a video interaction component. Among them, the video interaction component may include a downlink control sub - component (which can also be called a downlink control sub - module) and an uplink control sub - component (which can also be called an uplink control sub - module). Among them, the data processing method may include the following steps S301 - step S309: Figure 1 in the corresponding embodiment of the server 2000 above. The first terminal device can be any one of the terminal devices (e.g., terminal device 3000b) in the corresponding embodiment above. For ease of understanding, in the embodiment of the present application, it is described by taking the example that this method is executed by the first terminal device. The first terminal device may include a media downloader (e.g., a video stream downloader, which can also be called a video stream downloader module), a media outputter (e.g., a video player, which can also be called a video player module), an output synchronization controller (e.g., a playback synchronization controller, which can also be called a playback synchronization controller module), a synchronization scheduling component (e.g., a video watch - together scheduling component, which can also be called a video watch - together scheduling module), and a video interaction component (i.e., an audio - video call component, which can also be called an audio - video call module). In other words, the application client in the first terminal device may include a media downloader, a media outputter, an output synchronization controller, a synchronization scheduling component, and a video interaction component. Among them, the video interaction component may include a downlink control sub - component (which can also be called a downlink control sub - module) and an uplink control sub - component (which can also be called an uplink control sub - module). Among them, the data processing method may include the following steps S301 - step S309:
[0247] Step S301, output the first media data in the media output interface;
[0248] Specifically, the first terminal device can download media encapsulation data from a media data server through a media downloader. Further, the first terminal device can perform a decompression process on the media encapsulation data through a media outputter to obtain video coding data and audio coding data. Further, the first terminal device can perform a decoding process on the video coding data through a media outputter to obtain video pixel data, and the first terminal device can perform a decoding process on the audio coding data through a media outputter to obtain audio sampling data. Further, the first terminal device can perform synchronous rendering on the video pixel data and the audio sampling data through a media outputter to obtain the first media data. Further, the first terminal device can output the first media data in the media output interface.
[0249] Among them, the media data server supports simultaneous access and download of multiple media data. The media downloader can ensure the early buffering of media data and avoid occupying invalid resources through pre-download mechanism, cache control mechanism and traffic control mechanism. The media downloader and the media outputter are together responsible for completing the media output function in the media output solution (for example, the video stream downloader and the video player are together responsible for completing the video playback function in the video watch-together solution).
[0250] Among them, the media outputter may include an audio-video extractor, a video decoder, an audio decoder, an audio-video synchronizer, a layer renderer and an audio track renderer. The audio-video extractor is responsible for decompressing and extracting the video coding data (i.e., video coding data) and the audio coding data (i.e., audio coding data) from the original video encapsulated data (i.e., media encapsulated data); the video decoder is responsible for decoding the video coding data into video pixel data, and the audio decoder is responsible for decoding the audio coding data into audio sampling data; the video pixel data and the audio sampling data are synchronized by the audio-video synchronizer and are respectively sent to the layer renderer and the audio track renderer for synchronous rendering (i.e., displayed on the display screen of the terminal device and sound is played).
[0251] Step S302, in response to the start operation for the media data synchronous output function in the media output interface, output a list of terminal devices in the media output interface;
[0252] Among them, there is a binding relationship between the terminal devices in the terminal device list and the first terminal device.
[0253] Step S303, in response to the first selection operation for the terminal device list, output the first interactive video data associated with the second terminal device selected by the first selection operation in the interaction area of the media output interface;
[0254] Specifically, the first terminal device can respond to a first selection operation for the terminal device list and obtain, through the downlink control sub-component, the downlink video encapsulated data associated with the second terminal device selected by the first selection operation from the video interaction server. The downlink video encapsulated data is sent by the second terminal device to the video interaction server. Further, the first terminal device can perform a de-encapsulation process on the downlink video encapsulated data through the downlink control sub-component to obtain downlink video encoded data and downlink audio encoded data. Further, the first terminal device can perform a decoding process on the downlink video encoded data through the downlink control sub-component to obtain downlink video pixel data, and the first terminal device can perform a decoding process on the downlink audio encoded data through the downlink control sub-component to obtain downlink audio sampling data. Further, the first terminal device can perform synchronous rendering on the downlink video pixel data and the downlink audio sampling data through the downlink control sub-component to obtain first interactive video data. Further, the first terminal device can output the first interactive video data in the interactive area of the media output interface. The first interactive video data is used for video interaction between the first terminal device and the second terminal device; the first terminal device and the second terminal device have the function of synchronously outputting the first media data.
[0255] Similarly, the first terminal device can obtain second interactive video data associated with the first terminal device through the uplink control sub-component. The second interactive video data includes video data to be processed and audio data to be processed. Further, the first terminal device can perform audio-video pre-processing on the video data to be processed and the audio data to be processed through the uplink control sub-component to obtain uplink video pixel data corresponding to the video data to be processed and uplink audio sampling data corresponding to the audio data to be processed. Further, the first terminal device can perform an encoding process on the uplink video pixel data through the uplink control sub-component to obtain uplink video encoded data, and the first terminal device can perform an encoding process on the uplink audio sampling data through the uplink control sub-component to obtain uplink audio encoded data. Further, the first terminal device can perform an encapsulation process on the uplink video encoded data and the uplink audio encoded data through the uplink control sub-component to obtain uplink video encapsulated data. Further, the first terminal device can send the uplink video encapsulated data to the video interaction server through the uplink control sub-component. The video interaction server is used to forward the uplink video encapsulated data to the second terminal device.
[0256] It is understandable that the video interaction component to which the downlink control sub-component and the uplink control sub-component belong has the ability of audio and video uplink and downlink, and is responsible for completing the video call interaction function in the media output together solution (for example, the video interaction component is responsible for completing the video call interaction function in the video watching together solution). The uplink (i.e., the uplink control sub-component) collects images through the camera of the first terminal device and collects audio through the microphone (the images collected by the camera and the audio collected by the microphone can be collectively referred to as the second interactive video data). The audio and video pre-processing module has the ability to perform audio and video pre-processing on the second interactive video data (for example, echo cancellation, double talk cancellation, and noise reduction). After the image (i.e., the uplink video pixel data corresponding to the video data to be processed) and the audio (i.e., the uplink audio sampling data corresponding to the audio data to be processed) are compressed and encoded by the video encoder and the audio encoder respectively, they are then encapsulated into a file format (i.e., the format of the uplink video encapsulated data) by the audio and video encapsulator for network transmission. The link control module provides the ability of flow control, forward error correction, and packet loss retransmission for network transmission. The video encapsulated data (i.e., the uplink video encapsulated data) is sent over the network after passing through the link control module. The downlink (i.e., the downlink control sub-component) correctly receives the downlink video encapsulated data (i.e., the downlink video encapsulated data) from the network under the control of the link control module. The downlink control module provides the ability of flow control, buffer queue, packet loss detection, and error correction verification. After the video encapsulated data (i.e., the downlink video encapsulated data) is de-encapsulated by the audio and video de-encapsulator, it is sent to the video decoder and the audio decoder for decoding, and is synchronously rendered for audio and video respectively under the control of the audio and video synchronizer.
[0257] Among them, for the specific process of the second terminal device outputting the first media data, reference can be made to the description of the first terminal device outputting the first media data above, and details will not be elaborated here. Among them, for the specific process of the second terminal device obtaining the second interactive video data and uploading the first interactive video data, reference can be made to the description of the first terminal device obtaining the first interactive video data and uploading the second interactive video data above, and details will not be elaborated here.
[0258] It should be understood that the first terminal device can establish a long connection channel between the first terminal device and the output synchronization server through an output synchronization controller. Further, the first terminal device can poll and send output progress information (i.e., the first output progress information) to the output synchronization server through the long connection channel. The output progress information (i.e., the first output progress information) includes the media data identifier of the first media data and the first output progress of the first media data; the output synchronization server is used to perform policy selection (i.e., policy selection and adjudication) on the media data identifier, the first output progress, and the third output progress of the first media data to generate the fourth output progress of the first media data; the first output progress is the current output progress of the first media data in the media output interface, and the third output progress is the current output progress of the first media data provided by the second terminal device. Further, the first terminal device can receive the fourth output progress polled and returned by the output synchronization server, and switch the output of the first media data corresponding to the first output progress to the first media data corresponding to the fourth output progress.
[0259] Similarly, the second terminal device can poll and send output progress information (i.e., the second output progress information) to the output synchronization server through the long connection channel. The output progress information (i.e., the second output progress information) includes the media data identifier of the first media data and the third output progress of the first media data; the second terminal device can receive the fourth output progress polled and returned by the output synchronization server, and switch the output of the first media data corresponding to the third output progress to the first media data corresponding to the fourth output progress.
[0260] Among them, the first terminal device can send the first output progress information (the first output progress information includes the current output progress of the first media data in the first terminal device) to the output synchronization server in real time, the second terminal device can send the second output progress information (the second output progress information includes the current output progress of the first media data in the second terminal device) to the output synchronization server in real time, and the output synchronization server can return the calculated output progress (for example, the above-mentioned fourth output progress) to the first terminal device and the second terminal device in real time. The current output progress can also be referred to as the current playback time progress position. Here, the real time can mean that the time interval is very short (for example, 1 second), and the real time here can also be understood as timing.
[0261] Among them, the first terminal device can receive a control instruction returned by the output synchronization server, and the second terminal device can receive a control instruction returned by the output synchronization server. The control instruction may include a fourth output progress, so as to ensure that the first terminal device and the second terminal device can synchronously output the first media data. For example, the first terminal device may experience output lag due to network reasons. At this time, the first output progress of the first terminal device is earlier than the third output progress of the second terminal device. Through the policy selection and adjudication of the output synchronization server, it can be ensured that the first terminal device and the second terminal device output the first media data simultaneously according to the fourth output progress.
[0262] Among them, optionally, the output synchronization server is used to obtain the first device weight corresponding to the first terminal device and the second device weight corresponding to the second terminal device; the output synchronization server is further used to perform a difference operation on the first output progress and the third output progress to generate a progress difference between the first output progress and the third output progress; the output synchronization server is further used to perform a difference division on the progress difference through the first device weight and the second device weight to obtain a first division difference corresponding to the first device weight and a second division difference corresponding to the second device weight; the output synchronization server is further used to determine the fourth output progress of the first media data according to the first division difference, the second division difference, the first output progress, and the third output progress. Therefore, the embodiments of the present application can implement determining the output progress according to the device weight of the terminal device. At this time, if the device weight corresponding to the terminal device is larger, the influence degree of the output progress corresponding to the terminal device is greater; if the device weight corresponding to the terminal device is smaller, the influence degree of the output progress corresponding to the terminal device is smaller.
[0263] Among them, the embodiments of the present application do not limit the specific manner of determining the first device weight and the second device weight. For example, the embodiments of the present application can determine the device weight by the number of digital assets owned by the terminal device on the blockchain. Digital assets refer to new intangible assets issued, registered, stored, held, or traded based on blockchain technology. Among them, if the first device weight is greater than the second device weight, the first division difference is less than the second division difference; if the first device weight is less than the second device weight, the first division difference is greater than the second division difference.
[0264] Among them, the output synchronization server is used to determine the fourth output progress of the first media data according to the first output progress and the first division difference, or the output synchronization server is used to determine the fourth output progress of the first media data according to the second output progress and the second division difference. For example, the first output progress can be 00:18, the third output progress can be 00:22, and the progress difference between the first output progress and the third output progress can be 4 seconds; the first device weight can be 3, the second device weight can be 1, and the first division difference obtained by dividing the progress difference by the first device weight and the second device weight can be 1, and the second division difference can be 3. Therefore, the fourth output progress can be determined according to the first output progress and the first division difference, that is, 00:18 + 1 second = 0:19, or the fourth output progress can be determined according to the second output progress and the second division difference, that is, 00:22 - 3 seconds = 0:19. Another example, the first output progress can be 00:22, the third output progress can be 00:18, and the progress difference between the first output progress and the third output progress can be 4 seconds; the first device weight can be 3, the second device weight can be 1, and the first division difference obtained by dividing the progress difference by the first device weight and the second device weight can be 1, and the second division difference can be 3. Therefore, the fourth output progress can be determined according to the first output progress and the first division difference, that is, 00:22 - 1 second = 0:21, or the fourth output progress can be determined according to the second output progress and the second division difference, that is, 00:18 + 3 seconds = 0:21.
[0265] It can be understood that when the media data progress control function needs to be implemented, the first terminal device can execute the following step S304; when the media data switching function needs to be implemented, the first terminal device can execute the following steps S305 - S306. Optionally, the first terminal device can also execute step S304 first and then execute steps S305 - S306; the first terminal device can also execute steps S305 - S306 first and then execute step S304. Optionally, the first terminal device can also directly execute the following steps S307 - S309 without executing steps S304 and steps S305 - S306.
[0266] Step S304, in response to the control operation for the media data progress control function in the media output interface, switch the media data corresponding to the first output progress of the first media data to the media data corresponding to the second output progress of the first media data;
[0267] Specifically, the first terminal device can establish a long connection channel between the first terminal device and the output synchronization server through an output synchronization controller. Further, the first terminal device can respond to a trigger operation for the media data progress control function in the media output interface, and obtain a second output progress determined by the control operation through the output synchronization controller (i.e., the second output progress is the output progress determined by the control operation). Further, the first terminal device can send progress control information to the output synchronization server through the long connection channel. The progress control information includes a media data identifier of the first media data and the second output progress of the first media data; the output synchronization server is configured to forward the media data identifier and the second output progress of the first media data to the second terminal device. Further, the first terminal device can switch the media data corresponding to the first output progress of the first media data to the media data corresponding to the second output progress of the first media data. The first output progress is the current output progress of the first media data in the media output interface; the second output progress is the output progress before the first output progress, or the second output progress is the output progress after the first output progress; the second terminal device is configured to synchronously switch the media data corresponding to the first output progress of the first media data to the media data corresponding to the second output progress of the first media data.
[0268] Similarly, for the specific process of the second terminal device responding to the control operation for the media data progress control function, reference can be made to the description of the first terminal device responding to the control operation for the media data progress control function, which will not be elaborated here.
[0269] Step S305: Respond to a control operation for the media data switching function in the media output interface, and output a recommended media data list associated with the first terminal device in the media output interface;
[0270] The recommended media data list includes recommended media data associated with the first terminal device.
[0271] Step S306: Respond to a second selection operation for the recommended media data list, and switch the output of the first media data to the selected recommended media data selected by the second selection operation in the media output interface;
[0272] Specifically, the first terminal device can establish a long connection channel between the first terminal device and the output synchronization server through the output synchronization controller. Further, the first terminal device can respond to a second selection operation for the recommended media data list, and obtain the media data identifier of the selected recommended media data through the output synchronization controller. Further, the first terminal device can send media control information to the output synchronization server through the long connection channel. The media control information includes the media data identifier of the selected recommended media data and the fifth output progress of the selected recommended media data; the output synchronization server is used to forward the media data identifier of the selected recommended media data and the fifth output progress to the second terminal device. Further, the first terminal device can switch the output of the first media data to the selected recommended media data in the media output interface. The output progress of the selected recommended media data is the fifth output progress; the second terminal device is used to synchronously switch the output of the selected recommended media data with the first terminal device.
[0273] Similarly, for the specific process of the second terminal device responding to the control operation for the media data switching function, reference can be made to the description of the first terminal device responding to the control operation for the media data switching function, which will not be elaborated here.
[0274] Step S307, in response to the triggering operation for the interaction area, switch the display range of the interaction area to the display range of the media output interface;
[0275] Among them, the display range of the interaction area is smaller than the display range of the media output interface.
[0276] Step S308, output the first interactive video data, the second interactive video data associated with the first terminal device, and the video interaction closing control in the switched interaction area;
[0277] Step S309, in response to the triggering operation for the video interaction closing control, end the video interaction between the first terminal device and the second terminal device.
[0278] Specifically, the first terminal device can respond to the triggering operation for the video interaction closing control and end the video interaction between the first terminal device and the second terminal device through the video interaction component. Further, the first terminal device can send a video interaction end command to the synchronization scheduling component through the video interaction component, and forward the video interaction end command to the media outputter through the synchronization scheduling component. Further, the first terminal device can perform output control related to the video interaction end command on the first media data through the media outputter.
[0279] It can be understood that the synchronization scheduling component can be responsible for coordinating the overall processes of synchronous output (e.g., synchronous playback) and video interaction (i.e., audio-video call), enabling communication between the media output device and the video interaction component, so as to complete joining for output together (i.e., synchronous output) after initiating a video interaction, ending the joint output (i.e., synchronous output) after hanging up the video interaction, and retaining the joint output for individual viewing or non-video interaction scenarios. Therefore, output control can represent ending the joint output, retaining individual outputs, or the joint output for non-video interaction scenarios.
[0280] For ease of understanding, please refer to Figure 21 , Figure 21 which is a schematic diagram of a scenario for terminal device interaction provided by an embodiment of the present application. As Figure 21 shown, the media data server 210a and the media data server 210b can be the same server or different servers. The terminal device 211a can be the first terminal device in the embodiment of the present application, and the terminal device 211b can be the second terminal device in the embodiment of the present application. Both the terminal device 211a and the terminal device 211b can include a media downloader, a media output device, an output synchronization controller, a synchronization scheduling component, and a video interaction component. In the embodiment of the present application, the terminal device 211a is taken as an example for illustration, and the terminal device 211b can refer to the description of the terminal device 211a.
[0281] As Figure 21 shown, the terminal device 211a can download media encapsulated data from the media data server 210a through the media downloader, and then output the first media data corresponding to the media encapsulated data through the media output device. During the process of outputting the first media data through the media output device, the terminal device 211a can establish a long connection channel with the output synchronization server 210c through the output synchronization controller, so that the output synchronization server 210c can control the output progress of the terminal device 211a through the long connection channel.
[0282] As Figure 21 shown, the terminal device 211a can implement video interaction through the video interaction component. The video interaction process involves the video interaction server 210d, and the video interaction server 210d can be responsible for forwarding the interactive video data during the video interaction process. In addition, the terminal device 211a can connect the media output device and the video interaction component through the synchronization scheduling component, that is, connect the synchronous output and the video interaction through the synchronization scheduling component.
[0283] Therefore, since the media output (for example, video playback) of terminal device 211a and terminal device 211b respectively follows the streaming media download and output process (that is, terminal device 211a and terminal device 211b can both download media data through the media downloader and output media data through the media outputter), the quality requirements of the media output of terminal device 211a and terminal device 211b (for example, image quality requirements, speed requirements) are guaranteed.
[0284] For easier understanding, see Figure 22 , Figure 22 Schematic diagram of a scenario for terminal device processing provided by an embodiment of the present application. Figure 22 As shown, the media data server 220a may be the above Figure 21 The media data server 210a or the media data server 210b in the corresponding embodiment, the output synchronization server 220b can be the above Figure 21 The output synchronization server 210c and the video interaction server 220c in the corresponding embodiment may be the above Figure 21 The video interaction server 210d and the terminal device 220d in the corresponding embodiment can be the above Figure 21 The corresponding terminal device 211a or terminal device 211b in the embodiment (the embodiment of the present application takes the terminal device 220d as the terminal device 211a as an example for explanation).
[0285] like Figure 22 As shown, the terminal device 220d can download the media encapsulation data from the media data server 220a through the media downloader, and then decapsulate the media encapsulation data through the audio and video extractor to obtain video encoding data and audio encoding data. Further, the terminal device 220d can decode the video encoding data through the video decoder to obtain video pixel data; the terminal device 220d can decode the audio encoding data through the audio decoder to obtain audio sampling data. Further, the terminal device 220d can synchronize the video pixel data and the audio sampling data through the audio and video synchronizer to obtain synchronized video pixel data and synchronized audio sampling data. Further, the terminal device 220d can input the synchronized video pixel data into the layer renderer and the synchronized audio sampling data into the audio track renderer, and realize the output of the first media data through the synchronized rendering of the layer renderer and the audio track renderer.
[0286] like Figure 22As shown, during the process of outputting the first media data through the media outputter, the terminal device 220d can establish a long connection channel between the output synchronization controller and the output synchronization server 220b, so that the output synchronization server 220b can control the output progress of the terminal device 220d through the long connection channel.
[0287] As Figure 22 shown, the terminal device 220d can implement video interaction through the video interaction component. The video interaction process involves the video interaction server 220c, and the video interaction server 220c can be responsible for forwarding the interactive video data during the video interaction process. Among them, the downlink control sub-component 221b in the video interaction component can be used to obtain the first interactive video data (i.e., implement the audio and video downlink channel), and the uplink control sub-component 221a in the video interaction component can be used to upload the second interactive video data (i.e., implement the audio and video uplink channel). In addition, the terminal device 220d can connect the media outputter and the video interaction component through the synchronization scheduling component, that is, connect the synchronous output and the video interaction through the synchronization scheduling component.
[0288] Among them, as Figure 22 shown, the terminal device 220d can collect audio and video through the camera and microphone to obtain the second interactive video data. Further, the terminal device 220d can perform audio and video pre-processing on the second interactive video data (including the video data to be processed and the audio data to be processed) through the audio and video pre-processing sub-module to obtain the pre-processed second interactive video data. Among them, the pre-processed second interactive video data can include the uplink video pixel data corresponding to the video data to be processed and the uplink audio sampling data corresponding to the audio data to be processed. Further, the terminal device 220d can encode the uplink video pixel data through the video encoder to obtain the uplink video encoded data, and the terminal device 220d can encode the uplink audio sampling data through the uplink control sub-component to obtain the uplink audio encoded data. Further, the terminal device 220d can encapsulate the uplink video encoded data and the uplink audio encoded data through the audio and video encapsulator to obtain the uplink video encapsulated data. Further, the terminal device 220d can send the uplink video encapsulated data to the video interaction server 220c through the link control sub-module in the uplink control sub-component 221a.
[0289] Among them, as Figure 22As shown, the terminal device 220d can obtain the downlink video encapsulated data from the video interaction server 220c through the link control sub-module in the downlink control sub-component 221b. Further, the terminal device 220d can perform decompression processing on the downlink video encapsulated data through the audio and video decompressor to obtain the downlink video encoded data and the downlink audio encoded data. Further, the terminal device 220d can perform decoding processing on the downlink video encoded data through a video decoder (different from the video decoder in the media player) to obtain the downlink video pixel data, and the terminal device 220d can perform decoding processing on the downlink audio encoded data through an audio decoder (different from the audio decoder in the media player) to obtain the downlink audio sampling data. Further, the terminal device 220d can synchronize the downlink video pixel data and the downlink audio sampling data through the audio-visual synchronizer to obtain the synchronized downlink video pixel data and the synchronized downlink audio sampling data. Further, the terminal device 220d can perform synchronized rendering output on the synchronized downlink video pixel data and the synchronized downlink audio sampling data to implement the output of the first interactive video data.
[0290] As Figure 22 shown, the video interaction component may include a call signaling control sub-module (which may also be referred to as a call information control sub-component). The terminal device 220d can establish a long connection signaling channel with the video interaction server 220c through the call signaling control sub-module, and send and receive instructions (or signals) for video interaction through the long connection signaling channel. Among them, the terminal device 220d can send a video interaction initiation instruction (for example, when the first terminal device responds to the trigger operation of the synchronization invitation control 33b in the corresponding embodiment described above Figure 3 it can send a video interaction initiation instruction to the video interaction server 220c) and a video interaction hang-up instruction (for example, when the first terminal device responds to the trigger operation of the video interaction close control 91c in the corresponding embodiment described above Figure 8 it can send a video interaction hang-up instruction to the video interaction server 220c), so that the video interaction server 220c forwards the video interaction initiation instruction and the video interaction hang-up instruction; the terminal device 220d can receive the video interaction initiation instruction and the video interaction hang-up instruction through the long connection signaling channel, and the video interaction initiation instruction and the video interaction hang-up instruction are forwarded by the video interaction server 220c.
[0291] It can be seen that the embodiment of the present application proposes a media co - output solution (for example, a video - watching - together solution applicable to the living - room TV scenario), and this solution provides a more interactive video interaction solution. In addition, in the media co - output solution, the output progress (such as the playback progress) of the terminal device can be interacted with the output synchronization server in real time to achieve the synchronization of the output content and the output progress, thereby enriching the interaction method between the first terminal device and the second terminal device and improving the user experience of co - output.
[0292] Further, please refer to Figure 23 , Figure 23 which is a schematic structural diagram of a data processing device provided by an embodiment of the present application. The data processing device 1 can run on the first terminal device. The data processing device 1 may include: a media data output module 11, a device list output module 12, and a video data output module 13;
[0293] The media data output module 11 is used to output the first media data in the media output interface;
[0294] The device list output module 12 is used to respond to the start operation of the media data synchronous output function in the media output interface and output the terminal device list in the media output interface; there is a binding relationship between the terminal devices in the terminal device list and the first terminal device;
[0295] The video data output module 13 is used to respond to the first selection operation on the terminal device list and output the first interactive video data associated with the second terminal device selected by the first selection operation in the interaction area of the media output interface, so that the second terminal device synchronously outputs the first media data; the first interactive video data is used for video interaction between the first terminal device and the second terminal device.
[0296] Among them, for the specific implementation manners of the media data output module 11, the device list output module 12, and the video data output module 13, reference can be made to the descriptions of steps S101 - S103 in the corresponding embodiments above, which will not be elaborated here. In addition, the description of the beneficial effects of using the same method will not be elaborated either. Figure 2 The description of the beneficial effects of using the same method will not be elaborated either.
[0297] Further, please refer to Figure 24 , Figure 24It is a schematic structural diagram of a data processing device provided by an embodiment of the present application. The data processing device 10 can run on a first terminal device. The data processing device 10 may include: a media data output module 101, a device list output module 102, and a video data output module 103. Further, the data processing device 10 may further include: a progress adjustment module 104, a media list output module 105, a media switching module 106, a range switching module 107, a video interaction end module 108, a device binding module 109, a synchronization control module 110, an output progress synchronization module 111, an output control module 112, and a video data upload module 113;
[0298] The media data output module 101 is configured to output first media data in a media output interface;
[0299] Wherein, the first terminal device includes a media downloader and a media outputter;
[0300] The media data output module 101 is specifically configured to download media encapsulation data from a media data server through the media downloader;
[0301] The media data output module 101 is specifically configured to perform de-encapsulation processing on the media encapsulation data through the media outputter to obtain video coding data and audio coding data;
[0302] The media data output module 101 is specifically configured to perform decoding processing on the video coding data through the media outputter to obtain video pixel data, and perform decoding processing on the audio coding data through the media outputter to obtain audio sampling data;
[0303] The media data output module 101 is specifically configured to perform synchronous rendering on the video pixel data and the audio sampling data through the media outputter to obtain first media data;
[0304] The media data output module is specifically configured to output first media data in a media output interface.
[0305] The device list output module 102 is configured to respond to a start operation for the media data synchronous output function in the media output interface, and output a terminal device list in the media output interface; there is a binding relationship between the terminal devices in the terminal device list and the first terminal device;
[0306] Wherein, the device list output module 102 is specifically configured to output a synchronous output control control associated with the media data synchronous output function in the media output interface;
[0307] The device list output module 102 is specifically configured to respond to a trigger operation on the synchronous output control control, and output a terminal device list in the media output interface.
[0308] The video data output module 103 is configured to respond to a first selection operation on the list of terminal devices and output first interactive video data associated with the second terminal device selected by the first selection operation in the interaction area of the media output interface, so that the second terminal device synchronously outputs first media data; the first interactive video data is used for video interaction between the first terminal device and the second terminal device.
[0309] Among them, the video data output module 103 is specifically configured to respond to a first selection operation on the list of terminal devices and output default video data in the interaction area of the media output interface; the default video data is used to indicate that the first terminal device and the second terminal device selected by the first selection operation are in a video interaction waiting state;
[0310] The video data output module 103 is specifically configured to, if the second terminal device confirms video interaction with the first terminal device, switch the default video data in the interaction area to the first interactive video data associated with the second terminal device.
[0311] Among them, the first terminal device includes a video interaction component; the video interaction component includes a downlink control sub-component;
[0312] The video data output module 103 is specifically configured to respond to a first selection operation on the list of terminal devices, and obtain downlink video encapsulated data associated with the second terminal device selected by the first selection operation from the video interaction server through the downlink control sub-component; the downlink video encapsulated data is sent by the second terminal device to the video interaction server;
[0313] The video data output module 103 is specifically configured to perform de-encapsulation processing on the downlink video encapsulated data through the downlink control sub-component to obtain downlink video encoded data and downlink audio encoded data;
[0314] The video data output module 103 is specifically configured to perform decoding processing on the downlink video encoded data through the downlink control sub-component to obtain downlink video pixel data, and perform decoding processing on the downlink audio encoded data through the downlink control sub-component to obtain downlink audio sampling data;
[0315] The video data output module 103 is specifically configured to perform synchronous rendering on the downlink video pixel data and the downlink audio sampling data through the downlink control sub-component to obtain the first interactive video data;
[0316] The video data output module 103 is specifically configured to output the first interactive video data in the interaction area of the media output interface.
[0317] Optionally, a progress adjustment module 104 is configured to, in response to a control operation for the media data progress control function in the media output interface, switch the media data corresponding to the first output progress of the first media data to the media data corresponding to the second output progress of the first media data; the first output progress is the current output progress of the first media data in the media output interface; the second output progress is the output progress before the first output progress, or the second output progress is the output progress after the first output progress; the second output progress is the output progress determined by the control operation; the second terminal device is configured to synchronously switch the media data corresponding to the first output progress of the first media data to the media data corresponding to the second output progress of the first media data.
[0318] Wherein, the first terminal device includes an output synchronization controller;
[0319] The progress adjustment module 104 is specifically configured to establish a long connection channel between the first terminal device and the output synchronization server through the output synchronization controller;
[0320] The progress adjustment module 104 is specifically configured to, in response to a trigger operation for the media data progress control function in the media output interface, obtain the second output progress determined by the control operation through the output synchronization controller;
[0321] The progress adjustment module 104 is specifically configured to send progress control information to the output synchronization server through the long connection channel; the progress control information includes the media data identifier of the first media data and the second output progress of the first media data; the output synchronization server is configured to forward the media data identifier and the second output progress of the first media data to the second terminal device;
[0322] The progress adjustment module 104 is specifically configured to switch the media data corresponding to the first output progress of the first media data to the media data corresponding to the second output progress of the first media data.
[0323] A media list output module 105 is configured to, in response to a control operation for the media data switching function in the media output interface, output a recommended media data list associated with the first terminal device in the media output interface; the recommended media data list includes recommended media data associated with the first terminal device;
[0324] A media switching module 106 is configured to, in response to a second selection operation for the recommended media data list, switch the first media data to the selected recommended media data selected by the second selection operation in the media output interface; the second terminal device is configured to synchronously switch and output the selected recommended media data with the first terminal device.
[0325] Wherein, the first terminal device includes an output synchronization controller;
[0326] The media switching module 106 is specifically configured to establish a long connection channel between the first terminal device and the output synchronization server through the output synchronization controller;
[0327] The media switching module 106 is specifically configured to respond to a second selection operation for the recommended media data list, and obtain the media data identifier of the selected recommended media data through the output synchronization controller;
[0328] The media switching module 106 is specifically configured to send media control information to the output synchronization server through the long connection channel; the media control information includes the media data identifier of the selected recommended media data and the fifth output progress of the selected recommended media data; the output synchronization server is configured to forward the media data identifier and the fifth output progress of the selected recommended media data to the second terminal device;
[0329] The media switching module 106 is specifically configured to switch the output of the first media data to the selected recommended media data in the media output interface; the output progress of the selected recommended media data is the fifth output progress.
[0330] Optionally, the display range of the interaction area is smaller than the display range of the media output interface;
[0331] The range switching module 107 is configured to respond to a trigger operation for the interaction area, and switch the display range of the interaction area to the display range of the media output interface;
[0332] The range switching module 107 is configured to output the first interactive video data, the second interactive video data associated with the first terminal device, and the video interaction closing control in the switched interaction area;
[0333] The video interaction ending module 108 is configured to respond to a trigger operation for the video interaction closing control, and end the video interaction between the first terminal device and the second terminal device.
[0334] Among them, the first terminal device includes a synchronization scheduling component, a video interaction component, and a media output device;
[0335] The video interaction closing module 108 is specifically configured to respond to a trigger operation for the video interaction closing control, and end the video interaction between the first terminal device and the second terminal device through the video interaction component;
[0336] The device binding module 109 is configured to output a binding QR code in the device binding interface;
[0337] The device binding module 109 is used to respond to the QR code scanning operation of the third terminal device for the binding QR code and output a binding success prompt in the device binding interface; the binding success prompt is used to indicate that a binding management relationship has been successfully established between the first terminal device and the third terminal device; the binding management relationship between the first terminal device and the third terminal device is used to add the second terminal device to the terminal device list corresponding to the first terminal device.
[0338] Among them, the third terminal device is used to create a first service organization including the first terminal device; the third terminal device is used to establish an association relationship between the first service organization and the second service organization to which the second terminal device belongs with the fourth terminal device; there is a binding management relationship between the second terminal device and the fourth terminal device; the association relationship is used to indicate that there is a binding relationship between the terminal devices in the first service organization and the terminal devices in the second service organization.
[0339] The synchronization control module 110 is used to output synchronization control controls associated with the media data progress control function and the media data switching function in the media output interface;
[0340] The synchronization control module 110 is used to respond to the triggering operation of the synchronization control control and enable the synchronization control function for the media data progress control function and the media data switching function in the media output interface; the synchronization control function is used to indicate that both the first terminal device and the second terminal device have the ability to respond to the control operations for the media data progress control function and the media data switching function.
[0341] Optionally, the first terminal device includes an output synchronization controller;
[0342] The output progress synchronization module 111 is used to establish a long connection channel between the first terminal device and the output synchronization server through the output synchronization controller;
[0343] The output progress synchronization module 111 is used to poll and send output progress information to the output synchronization server through the long connection channel; the output progress information includes the media data identifier of the first media data and the first output progress of the first media data; the output synchronization server is used to perform policy selection on the media data identifier of the first media data, the first output progress, and the third output progress to generate the fourth output progress of the first media data; the first output progress is the current output progress of the first media data in the media output interface; the third output progress is the current output progress of the first media data provided by the second terminal device;
[0344] The output progress synchronization module 111 is used to receive the fourth output progress polled and returned by the output synchronization server and switch the media data corresponding to the first output progress of the first media data to the media data corresponding to the fourth output progress of the first media data.
[0345] The output control module 112 is configured to send a video interaction end command to the synchronization scheduling component through the video interaction component, and forward the video interaction end command to the media output device through the synchronization scheduling component;
[0346] The output control module 112 is configured to perform output control related to the video interaction end command on the first media data through the media output device.
[0347] Optionally, the first terminal device includes a video interaction component; the video interaction component includes an uplink control sub-component;
[0348] The video data upload module 113 is configured to obtain second interaction video data associated with the first terminal device through the uplink control sub-component; the second interaction video data includes video data to be processed and audio data to be processed;
[0349] The video data upload module 113 is configured to perform audio-visual pre-processing on the video data to be processed and the audio data to be processed through the uplink control sub-component, to obtain uplink video pixel data corresponding to the video data to be processed and uplink audio sampling data corresponding to the audio data to be processed;
[0350] The video data upload module 113 is configured to perform encoding processing on the uplink video pixel data through the uplink control sub-component to obtain uplink video encoded data, and perform encoding processing on the uplink audio sampling data through the uplink control sub-component to obtain uplink audio encoded data;
[0351] The video data upload module 113 is configured to perform encapsulation processing on the uplink video encoded data and the uplink audio encoded data through the uplink control sub-component to obtain uplink video encapsulated data;
[0352] The video data upload module 113 is configured to send the uplink video encapsulated data to the video interaction server through the uplink control sub-component; the video interaction server is configured to forward the uplink video encapsulated data to the second terminal device.
[0353] Wherein, the output synchronization server is configured to obtain a first device weight corresponding to the first terminal device and a second device weight corresponding to the second terminal device; the output synchronization server is further configured to perform a difference operation on the first output progress and the third output progress to generate a progress difference between the first output progress and the third output progress; the output synchronization server is further configured to perform difference division on the progress difference through the first device weight and the second device weight to obtain a first division difference corresponding to the first device weight and a second division difference corresponding to the second device weight; the output synchronization server is further configured to determine a fourth output progress of the first media data according to the first division difference, the second division difference, the first output progress, and the third output progress.
[0354] Among them, for the specific implementation manners of the media data output module 101, the device list output module 102, the video data output module 103, the progress adjustment module 104, the media list output module 105, the media switching module 106, the range switching module 107, the video interaction end module 108, the device binding module 109, the synchronization control module 110, the output progress synchronization module 111, the output control module 112, and the video data upload module 113, reference may be made to the descriptions of steps S101 - step S103 in the corresponding embodiments above Figure 2 the descriptions of steps S201 - step S202 in the corresponding embodiments Figure 13 and Figure 20 the descriptions of steps S301 - step S309 in the corresponding embodiments, which will not be elaborated here. In addition, the descriptions of the beneficial effects of adopting the same method will not be elaborated either.
[0355] Furthermore, please refer to Figure 25 , Figure 25 FIG. is a schematic structural diagram of a data processing device provided by an embodiment of the present application. The data processing device 2 can run on a second terminal device. The data processing device 2 may include: a confirmation control output module 21 and a synchronous output module 22;
[0356] The confirmation control output module 21 is configured to output a video interaction confirmation control associated with the media data synchronous output function in the application client. The video interaction confirmation control is indicated and output by a first terminal device. The first terminal device belongs to the terminal device list corresponding to the second terminal device. There is a binding relationship between the terminal devices in the terminal device list and the second terminal device;
[0357] The synchronous output module 22 is configured to respond to a trigger operation on the video interaction confirmation control, synchronously output first media data currently output by the first terminal device in the application client, and output second interaction video data associated with the first terminal device in the interaction area of the application client. The second interaction video data is used for video interaction between the first terminal device and the second terminal device.
[0358] Among them, the synchronous output module 22 is specifically configured to respond to a trigger operation on the video interaction confirmation control, output second interaction video data associated with the first terminal device, first interaction video data associated with the second terminal device, and a synchronous output confirmation control in the application client. The first interaction video data and the second interaction video data are used for video interaction between the first terminal device and the second terminal device;
[0359] The synchronous output module 22 is specifically configured to respond to the triggering operation on the synchronous output confirmation control, synchronously output the first media data currently output by the first terminal device in the application client, and output the second interactive video data in the interaction area of the application client.
[0360] Among them, for the specific implementation manners of the confirmation control output module 21 and the synchronous output module 22, reference may be made to the descriptions of steps S401 - S402 in the corresponding embodiments above, which will not be elaborated here. In addition, the description of the beneficial effects of adopting the same method will not be elaborated either. Figure 11 In the embodiments of the present application, the term "module" or "unit" refers to a computer program with a predetermined function or a part of a computer program, which works together with other related parts to achieve a predetermined goal, and can be fully or partially implemented by using software, hardware (such as a processing circuit or a memory), or a combination thereof. Similarly, one processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be a part of the overall module or unit that includes the function of this module or unit.
[0361] Further, please refer to
[0362] which is a schematic structural diagram of a computer device provided by an embodiment of the present application. This computer device can be a terminal device or a server. As shown in Figure 26 Figure 26 As shown, the computer device 1000 may include: a processor 1001, a network interface 1004, and a memory 1005. In addition, the above computer device 1000 may further include: a user interface 1003, and at least one communication bus 1002. Among them, the communication bus 1002 is used to realize the connection and communication between these components. Among them, in some embodiments, the user interface 1003 may include a display screen (Display) and a keyboard (Keyboard). Optionally, the user interface 1003 may further include a standard wired interface and a wireless interface. Optionally, the network interface 1004 may include a standard wired interface and a wireless interface (such as a WI-FI interface). The memory 1005 may be a high-speed RAM memory, or a non-volatile memory, such as at least one disk memory. Optionally, the memory 1005 may further be at least one storage device located far from the aforementioned processor 1001. As shown in Figure 26 the memory 1005, as a computer-readable storage medium, may include an operating system, a network communication module, a user interface module, and a device control application program. Figure 26 In
[0363] As in Figure 26In the computer device 1000 shown, the network interface 1004 can provide network communication functions; the user interface 1003 is mainly used to provide an interface for users to input; and the processor 1001 can be used to call the computer program stored in the memory 1005 to implement the steps in the methods of the embodiments of the present application.
[0364] It should be understood that the computer device 1000 described in the embodiments of the present application can execute the descriptions of the data processing methods in the corresponding embodiments mentioned above Figure 2 、 Figure 11 、 Figure 13 and Figure 20 and can also execute the descriptions of the data processing devices 1, Figure 23 in the corresponding embodiments mentioned above, the data processing devices 10 Figure 24 in the corresponding embodiments mentioned above, and the data processing device 2 Figure 25 in the corresponding embodiments mentioned above. Details will not be described herein again. In addition, the descriptions of the beneficial effects of using the same method will not be repeated either.
[0365] In addition, it should be noted here that: the embodiments of the present application also provide a computer-readable storage medium, and the computer-readable storage medium stores the computer programs executed by the data processing device 1, the data processing device 10, and the data processing device 2 mentioned above. When the processor executes the computer program, it can execute the descriptions of the data processing methods in the corresponding embodiments mentioned above Figure 2 、 Figure 11 、 Figure 13 and Figure 20 Therefore, details will not be described herein again. In addition, the descriptions of the beneficial effects of using the same method will not be repeated either. For the technical details not disclosed in the embodiments of the computer-readable storage medium involved in the present application, please refer to the descriptions of the method embodiments of the present application.
[0366] In addition, it should be noted that: the embodiments of the present application also provide a computer program product. The computer program product can include a computer program, and the computer program can be stored in a computer-readable storage medium. The processor of the computer device reads the computer program from the computer-readable storage medium, and the processor can execute the computer program, so that the computer device executes the descriptions of the data processing methods in the corresponding embodiments mentioned above Figure 2 、 Figure 11 、 Figure 13 and Figure 20 Therefore, details will not be described herein again. In addition, the descriptions of the beneficial effects of using the same method will not be repeated either. For the technical details not disclosed in the embodiments of the computer program product involved in the present application, please refer to the descriptions of the method embodiments of the present application.
[0367] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the above various methods. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM), etc.
[0368] The above-disclosed are only the preferred embodiments of the present application. Of course, the scope of rights of the present application cannot be limited thereby. Therefore, equivalent changes made according to the claims of the present application still fall within the scope covered by the present application.
Claims
1. A data processing method, characterized in that, The method is executed by a first terminal device and includes: Output first media data in a media output interface; In response to a start operation for a media data synchronous output function in the media output interface, output a list of terminal devices in the media output interface; there is a binding relationship between the terminal devices in the list of terminal devices and the first terminal device; In response to a first selection operation on the list of terminal devices, output first interactive video data associated with a second terminal device selected by the first selection operation in an interaction area of the media output interface, so that the second terminal device synchronously outputs the first media data; the first interactive video data is used for video interaction between the first terminal device and the second terminal device.
2. The method according to claim 1, characterized in that, The step of, in response to a start operation for a media data synchronous output function in the media output interface, outputting a list of terminal devices in the media output interface includes: Output a synchronous output control control associated with the media data synchronous output function in the media output interface; In response to a trigger operation on the synchronous output control control, output a list of terminal devices in the media output interface.
3. The method according to claim 1, wherein The step of, in response to a first selection operation on the list of terminal devices, outputting first interactive video data associated with a second terminal device selected by the first selection operation in an interaction area of the media output interface includes: In response to a first selection operation on the list of terminal devices, output default video data in an interaction area of the media output interface; the default video data is used to indicate that the first terminal device and the second terminal device selected by the first selection operation are in a video interaction waiting state; If the second terminal device confirms video interaction with the first terminal device, switch and output the default video data in the interaction area to first interactive video data associated with the second terminal device.
4. The method according to claim 1, characterized in that The method further includes: In response to a control operation for a media data progress control function in the media output interface, switch and output the media data corresponding to a first output progress of the first media data to the media data corresponding to a second output progress of the first media data; the first output progress is the current output progress of the first media data in the media output interface; the second output progress is an output progress before the first output progress, or the second output progress is an output progress after the first output progress; the second output progress is the output progress determined by the control operation; the second terminal device is used to synchronously switch and output the media data corresponding to the first output progress of the first media data to the media data corresponding to the second output progress of the first media data.
5. The method according to claim 1, wherein The method further includes: In response to a control operation for a media data switching function in the media output interface, output a recommended media data list associated with the first terminal device in the media output interface; the recommended media data list includes recommended media data associated with the first terminal device. In response to a second selection operation for the list of recommended media data, switch and output the first media data as the selected recommended media data selected by the second selection operation in the media output interface; the second terminal device is used to synchronously switch and output the selected recommended media data with the first terminal device.
6. The method according to claim 1, wherein The display range of the interaction area is smaller than the display range of the media output interface; The method further includes: In response to a trigger operation for the interaction area, switch the display range of the interaction area to the display range of the media output interface; Output the first interactive video data, the second interactive video data associated with the first terminal device, and a video interaction closing control in the switched interaction area; In response to a trigger operation for the video interaction closing control, end the video interaction between the first terminal device and the second terminal device.
7. The method according to claim 1, characterized in that The method further includes: Output a binding QR code in the device binding interface; In response to a QR code scanning operation by a third terminal device for the binding QR code, output a binding success prompt in the device binding interface; the binding success prompt is used to indicate that a binding management relationship has been successfully established between the first terminal device and the third terminal device; the binding management relationship between the first terminal device and the third terminal device is used to add the second terminal device to the terminal device list corresponding to the first terminal device.
8. The method according to claim 7, characterized in that The third terminal device is used to create a first service organization including the first terminal device; the third terminal device is used to establish an association relationship between the first service organization and a second service organization to which the second terminal device belongs with a fourth terminal device; there is a binding management relationship between the second terminal device and the fourth terminal device; the association relationship is used to indicate that there is a binding relationship between the terminal devices in the first service organization and the terminal devices in the second service organization.
9. The method according to claim 1, characterized in that, The method further includes: Output a synchronization control control associated with a media data progress control function and a media data switching function in the media output interface; In response to a trigger operation for the synchronization control control, enable a synchronization control function for the media data progress control function and the media data switching function in the media output interface; the synchronization control function is used to indicate that both the first terminal device and the second terminal device have the ability to respond to control operations for the media data progress control function and the media data switching function.
10. The method according to claim 1, wherein The first terminal device includes a media downloader and a media outputter; The outputting the first media data in the media output interface includes: Downloading media encapsulation data from a media data server through the media downloader; Performing a decompression process on the media encapsulation data through the media outputter to obtain video coding data and audio coding data; Performing a decoding process on the video coding data through the media outputter to obtain video pixel data, and performing a decoding process on the audio coding data through the media outputter to obtain audio sampling data; Synchronously render the video pixel data and the audio sampling data through the media outputter to obtain first media data; Output the first media data in a media output interface.
11. The method according to claim 1, characterized in that, The first terminal device includes an output synchronization controller; The method further includes: Establish a long connection channel between the first terminal device and an output synchronization server through the output synchronization controller; Poll and send output progress information to the output synchronization server through the long connection channel; the output progress information includes a media data identifier of the first media data and a first output progress of the first media data; the output synchronization server is configured to perform policy selection on the media data identifier of the first media data, the first output progress, and a third output progress to generate a fourth output progress of the first media data; the first output progress is the current output progress of the first media data in the media output interface; the third output progress is the current output progress of the first media data provided by the second terminal device; Receive the fourth output progress polled and returned by the output synchronization server, and switch and output the media data corresponding to the first media data at the first output progress to the media data corresponding to the first media data at the fourth output progress.
12. The method according to claim 4, wherein The first terminal device includes an output synchronization controller; The step of, in response to a control operation for a media data progress control function in the media output interface, switching and outputting the media data corresponding to the first media data at a first output progress to the media data corresponding to the first media data at a second output progress includes: Establish a long connection channel between the first terminal device and an output synchronization server through the output synchronization controller; In response to a trigger operation for a media data progress control function in the media output interface, obtain the second output progress determined by the control operation through the output synchronization controller; Send progress control information to the output synchronization server through the long connection channel; the progress control information includes a media data identifier of the first media data and the second output progress of the first media data; the output synchronization server is configured to forward the media data identifier of the first media data and the second output progress to the second terminal device; Switch and output the media data corresponding to the first media data at the first output progress to the media data corresponding to the first media data at the second output progress.
13. The method according to claim 5, characterized in that, The first terminal device includes an output synchronization controller; The step of, in response to a second selection operation for the recommended media data list, switching and outputting the first media data to the selected recommended media data selected by the second selection operation in the media output interface includes: Establish a long connection channel between the first terminal device and an output synchronization server through the output synchronization controller; In response to a second selection operation for the recommended media data list, obtain a media data identifier of the selected recommended media data selected by the second selection operation through the output synchronization controller; Send media control information to the output synchronization server through the long connection channel; the media control information includes the media data identifier of the selected recommended media data and the fifth output progress of the selected recommended media data; the output synchronization server is used to forward the media data identifier of the selected recommended media data and the fifth output progress to the second terminal device; Switch the output of the first media data to the selected recommended media data in the media output interface; the output progress of the selected recommended media data is the fifth output progress.
14. The method according to claim 6, characterized in that The first terminal device includes a synchronization scheduling component, a video interaction component, and a media outputter; The response to the trigger operation for the video interaction close control to end the video interaction between the first terminal device and the second terminal device includes: In response to the trigger operation for the video interaction close control, end the video interaction between the first terminal device and the second terminal device through the video interaction component; The method further includes: Send a video interaction end command to the synchronization scheduling component through the video interaction component, and forward the video interaction end command to the media outputter through the synchronization scheduling component; Perform output control related to the video interaction end command on the first media data through the media outputter.
15. The method according to claim 1, characterized in that, The first terminal device includes a video interaction component; the video interaction component includes a downlink control sub-component; The response to the first selection operation for the terminal device list to output the first interactive video data associated with the second terminal device selected by the first selection operation in the interaction area of the media output interface includes: In response to the first selection operation for the terminal device list, obtain the downlink video encapsulated data associated with the second terminal device selected by the first selection operation from the video interaction server through the downlink control sub-component; the downlink video encapsulated data is sent by the second terminal device to the video interaction server; Perform decompression processing on the downlink video encapsulated data through the downlink control sub-component to obtain downlink video encoded data and downlink audio encoded data; Perform decoding processing on the downlink video encoded data through the downlink control sub-component to obtain downlink video pixel data, and perform decoding processing on the downlink audio encoded data through the downlink control sub-component to obtain downlink audio sampling data; Synchronously render the downlink video pixel data and the downlink audio sampling data through the downlink control sub-component to obtain the first interactive video data; Output the first interactive video data in the interaction area of the media output interface.
16. The method according to claim 1, wherein The first terminal device includes a video interaction component; the video interaction component includes an uplink control sub-component; The method further includes: Obtain the second interactive video data associated with the first terminal device through the uplink control sub-component; the second interactive video data includes video data to be processed and audio data to be processed; Performing audio and video pre-processing on the video data to be processed and the audio data to be processed by the uplink control subcomponent to obtain uplink video pixel data corresponding to the video data to be processed and uplink audio sampling data corresponding to the audio data to be processed; The uplink video pixel data is encoded by the uplink control subcomponent to obtain uplink video encoded data, and the uplink audio sample data is encoded by the uplink control subcomponent to obtain uplink audio encoded data; encapsulating the uplink video coded data and the uplink audio coded data through the uplink control subcomponent to obtain uplink video encapsulation data; The uplink video encapsulation data is sent to a video interaction server through the uplink control subcomponent; the video interaction server is used to forward the uplink video encapsulation data to the second terminal device.
17. The method according to claim 11, wherein The output synchronization server is used to obtain a first device weight corresponding to the first terminal device and a second device weight corresponding to the second terminal device; the output synchronization server is also used to perform a difference operation on the first output progress and the third output progress to generate a progress difference between the first output progress and the third output progress; the output synchronization server is also used to perform a difference division on the progress difference by using the first device weight and the second device weight to obtain a first division difference corresponding to the first device weight and a second division difference corresponding to the second device weight; the output synchronization server is also used to determine a fourth output progress of the first media data based on the first division difference, the second division difference, the first output progress and the third output progress.
18. A data processing method, characterized in that, The method is performed by a second terminal device, and includes: A video interaction confirmation control associated with a media data synchronous output function is output in an application client; the video interaction confirmation control is indicated and output by a first terminal device; the first terminal device belongs to a terminal device list corresponding to the second terminal device; and a binding relationship exists between the terminal device in the terminal device list and the second terminal device; In response to a trigger operation on the video interaction confirmation control, the first media data currently output by the first terminal device is synchronously output in the application client, and the second interactive video data associated with the first terminal device is output in the interactive area of the application client; the second interactive video data is used for video interaction between the first terminal device and the second terminal device.
19. The method according to claim 18, characterized in that, In response to the triggering operation of the video interaction confirmation control, synchronously outputting the first media data currently output by the first terminal device in the application client, and outputting the second interaction video data associated with the first terminal device in the interaction area of the application client, comprises: In response to a triggering operation on the video interaction confirmation control, output second interaction video data associated with the first terminal device, first interaction video data associated with the second terminal device, and a synchronous output confirmation control in the application client; the first interaction video data and the second interaction video data are used for video interaction between the first terminal device and the second terminal device. In response to a triggering operation on the synchronous output confirmation control, synchronously output first media data currently output by the first terminal device in the application client, and output the second interaction video data in the interaction area of the application client.
20. A data processing device, characterized in that, The device runs on a first terminal device and includes: A media data output module for outputting first media data in a media output interface. A device list output module for outputting a terminal device list in the media output interface in response to a start operation for the media data synchronous output function in the media output interface; there is a binding relationship between the terminal devices in the terminal device list and the first terminal device. A video data output module for outputting first interaction video data associated with a second terminal device selected by the first selection operation in the interaction area of the media output interface in response to a first selection operation on the terminal device list, so that the second terminal device synchronously outputs the first media data; the first interaction video data is used for video interaction between the first terminal device and the second terminal device.
21. A data processing device, characterized in that, The device runs on a second terminal device and includes: A confirmation control output module for outputting a video interaction confirmation control associated with the media data synchronous output function in the application client; the video interaction confirmation control is indicated and output by the first terminal device; the first terminal device belongs to the terminal device list corresponding to the second terminal device; there is a binding relationship between the terminal devices in the terminal device list and the second terminal device. A synchronous output module for synchronously outputting first media data currently output by the first terminal device in the application client and outputting second interaction video data associated with the first terminal device in the interaction area of the application client in response to a triggering operation on the video interaction confirmation control; the second interaction video data is used for video interaction between the first terminal device and the second terminal device.
22. A computer device, characterized in that, Includes: A processor and a memory; The processor is connected to the memory, wherein the memory is used to store a computer program, and the processor is used to call the computer program so that the computer device executes the method according to any one of claims 1-19.
23. A computer-readable storage medium, characterized in that, A computer program is stored in the computer-readable storage medium, and the computer program is adapted to be loaded and executed by a processor so that a computer device having the processor executes the method according to any one of claims 1-19.
24. A computer program product, characterized in that, The computer program product includes a computer program which is stored in a computer-readable storage medium and is adapted to be read and executed by a processor so that a computer device having the processor executes the method according to any one of claims 1-19.