CN109819341B - Video playing method and device, computing equipment and storage medium - Google Patents

Video playing method and device, computing equipment and storage medium Download PDF

Info

Publication number
CN109819341B
CN109819341B CN201711160447.5A CN201711160447A CN109819341B CN 109819341 B CN109819341 B CN 109819341B CN 201711160447 A CN201711160447 A CN 201711160447A CN 109819341 B CN109819341 B CN 109819341B
Authority
CN
China
Prior art keywords
user
video
client
information
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711160447.5A
Other languages
Chinese (zh)
Other versions
CN109819341A (en
Inventor
刘思明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201711160447.5A priority Critical patent/CN109819341B/en
Priority to PCT/CN2018/116205 priority patent/WO2019096307A1/en
Publication of CN109819341A publication Critical patent/CN109819341A/en
Application granted granted Critical
Publication of CN109819341B publication Critical patent/CN109819341B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof

Abstract

The application provides a video playing method, which comprises the following steps: displaying first prompt information in a playing interface, wherein the first prompt information prompts whether to participate in a co-watching activity; in response to the received first instruction, sending a participation request to the video server to enable the video server to select a second user who is watching the video program from the users who participate in the co-watching activity; receiving information of a second user sent by the video server in response to the participation request; and displaying second prompt information in the playing interface, and interacting media data with the video client of the second user in response to a received second instruction indicating that the second user agrees to watch the video program together. The application also provides a corresponding device.

Description

Video playing method and device, computing equipment and storage medium
Technical Field
The present application relates to the field of information technology, and in particular, to a video playing method, a video playing apparatus, a computing device, and a storage medium.
Background
Along with the development of information technology, people have more and more abundant entertainment life; among them, online videos are concerned and loved by many users because of providing the users with a service of video contents that the users want to watch at any time and place; however, no matter what kind of playing form of video is watched by the user, the user wants to have other users to accompany himself or herself for watching, and at the same time, the user can communicate with other users at any time to express the feelings and moods of the watched video, but when the user watches the online video alone, the online video cannot meet the requirements of the user on expressing the feelings and moods of the watched video, thereby causing bad online video watching experience for the user.
Disclosure of Invention
The application provides the following technical scheme to improve the video watching effect.
The embodiment of the application provides a video playing method, which comprises the following steps: displaying first prompt information in a playing interface of a video program, wherein the first prompt information prompts whether to participate in a co-watching activity; sending a participation request to the video server in response to a received first instruction indicating that a first user participates in a co-watching activity, wherein the participation request carries information of the first user and information of the video program, so that the video server selects a second user who is watching the video program from users who participate in the co-watching activity; receiving information of the second user sent by the video server in response to the participation request; displaying second prompt information in the playing interface, wherein the second prompt information prompts whether the second user agrees to watch the video program together with the second user; and interacting media data with a video client of the second user in response to the received second instruction indicating consent to co-watch the video program with the second user.
In some examples, further comprising: acquiring a video stream of a video program from a video server and playing the video program; after the step of acquiring the media stream of the video program from the video server and playing the video program, the method further comprises the steps of acquiring image information of the first user through a local image acquisition device when the first user is detected to watch the video program; sending a judgment request carrying the image information to the video server, wherein the judgment request is used for requesting to judge whether the first user is in an independent state; receiving a judgment result returned by the video server in response to the judgment request, wherein the judgment result represents that the first user is in the independent state or the first user is not in the independent state; and if the judgment result shows that the first user is in the independent state, the step of displaying the first prompt message in the playing interface of the video program is executed.
In some examples, further comprising: establishing, by the video server, a media connection with a video client of the second user; and interacting media data with the video client of the second user through the media connection.
In some examples, the step of establishing, by the video server, a media connection with the video client of the second user comprises: in response to the second instruction, sending a request for establishing a media connection to the video server to request for establishing a media connection with the video client of the second user; receiving communication information returned by the video server in response to the establishment request, wherein the communication information comprises address information of a video client of a second user; and responding to the communication information, and establishing a media connection with the video client of the second user.
In some examples, the media data comprises video data; the interacting the media data with the video client of the second user via the media connection includes: displaying a video window in a first area of the playing interface; displaying the video image of the second user received through the media connection in the video window; and acquiring the video image of the first user through a local image acquisition device and sending the video image to the video client of the second user through the media connection.
In some examples, the presenting a video window in a first region of the playback interface includes: and when the media connection is detected to be established, pulling up a video window floating layer in the first area to display a video window.
In some examples, the media data includes audio data; the interacting the media data with the video client of the second user via the media connection includes: displaying a voice control in a second area of the playing interface; responding to the first operation of the voice control, acquiring the voice of the first user through a local voice acquisition device, and sending the voice to the video client of the second user through the media connection;
in response to a second operation on the voice control, playing the voice of the second user received through the media connection; wherein the voice control comprises at least an operation button; the first operation and the second operation are operations on the operation buttons.
In some examples, the voice control further comprises a voice state graphical element; the method further comprises: displaying a voice acquisition state through the voice state graphic element when the voice of the first user is acquired; and displaying the voice playing state through the voice state graphic element when the voice of the second user is played.
In some examples, the media data includes audio data; the interacting the media data with the video client of the second user via the media connection includes: and responding to the establishment of the media connection, acquiring the voice of the first user in real time through a local voice acquisition device, sending the voice to the video client of the second user through the media connection, and playing the voice of the second user received through the media connection in real time.
This application example correspondingly provides a video playback device, includes: the first display module is used for displaying first prompt information in a playing interface of the video program, wherein the first prompt information prompts whether to participate in a co-watching activity; the first request sending module is used for responding to a received first instruction for indicating that a first user participates in the co-watching activity, and sending a participation request to the video server, wherein the participation request carries information of the first user and information of the video program, so that the video server selects a second user watching the video program from users participating in the co-watching activity; an information receiving module, which receives the information of the second user sent by the video server in response to the participation request; the second display module displays second prompt information in the playing interface, wherein the second prompt information prompts whether the second user agrees to watch the video program together with the second user; and the connection module is used for responding to the received second instruction which indicates that the second user agrees to watch the video program together, and interacting the media data with the video client of the second user.
In some examples, the device further comprises a playing module, a playing module and a display module, wherein the playing module acquires a video stream of the video program from a video server and plays the video program; the acquisition module acquires image information of the first user through a local image acquisition device when the first user is detected to watch the video program; the second request sending module is used for sending a judgment request carrying the image information to the video server, wherein the judgment request is used for requesting to judge whether the first user is in an independent state; a result receiving module, configured to receive a determination result returned by the video server in response to the determination request, where the determination result indicates that the first user is in an independent state or that the first user is not in an independent state; and if the judgment result shows that the first user is in the independent state, executing the first display module.
In some examples, the connection module establishes a media connection with a video client of the second user through the video server; and after the media connection is established, interacting media data with the video client of the second user through the media connection.
In some examples, the connection module further comprises: a first response unit, responding to the second instruction, sending a request for establishing media connection to the video server to request for establishing media connection with the video client of the second user; the first receiving unit is used for receiving communication information returned by the video server in response to the establishment request, wherein the communication information comprises address information of a video client of a second user; and responding to the communication information, and establishing a media connection with the video client of the second user.
In some examples, the media data comprises video data; the connection module further includes: the first display unit displays a video window in a first area of the playing interface; a second presentation unit that presents the video image of the second user received through the media connection in the video window; and the first sending unit is used for acquiring the video image of the first user through a local image acquisition device and sending the video image to the video client of the second user through the media connection.
In some examples, the first display unit further comprises: and the pull-up unit is used for pulling up the video window floating layer in the first area to display the video window when the media connection is detected to be established.
In some examples, the media data includes audio data; the connection module further includes: the third display unit is used for displaying the voice control in a second area of the playing interface; the second sending unit responds to the first operation of the voice control, obtains the voice of the first user through a local voice acquisition device and sends the voice of the first user to the video client of the second user through the media connection; and the playing unit is used for responding to a second operation on the voice control and playing the voice of the second user received through the media connection.
In some examples, the voice controls include at least an operation button; the first operation and the second operation are operations on the operation buttons.
In some examples, the voice control further comprises a voice state graphical element; the apparatus further comprises: the third display module is used for displaying the voice acquisition state through the voice state graphic element when the voice of the first user is acquired; and the fourth display module is used for displaying the voice playing state through the voice state graphic element when the voice of the second user is played.
In some examples, the media data includes audio data; the connection module includes: and the third sending unit responds to the establishment of the media connection, acquires the voice of the first user through a local voice acquisition device in real time, sends the voice to the video client of the second user through the media connection, and plays the voice of the second user received through the media connection in real time.
The embodiment of the application correspondingly provides a video frequency playing method, which comprises the following steps: receiving a participation request sent by a video client of the first user, wherein the participation request represents that the first user requests to participate in the co-watching activity, and the participation request carries information of the first user and information of the video program; in response to receiving the participation request, selecting a second user who is watching the video program from the users participating in the co-watching activity, sending information of the second user to the video client of the first user, and sending information of the first user to the video client of the second user; receiving a first connection establishment request sent by a video client of the first user when the first user agrees to watch the video program together with the second user, wherein the first connection establishment request represents that the video client of the first user requests to establish media connection with the video client of the second user; receiving a second connection establishment request sent by the video client of the second user when the second user agrees to watch the video program together with the first user, wherein the second connection establishment request represents that the video client of the second user requests to establish media connection with the video client of the first user; and responding to the first connection establishment request and the second connection establishment request, and establishing media connection between the video client of the first user and the video client of the second user so that the video client of the first user and the video client of the second user interact media data through the media connection.
In some examples, further comprising: responding to a received playing request sent by a video client of a first user, and transmitting a video stream of a video program to the video client of the first user; after the step of transmitting the video stream of the video program to the video client of the first user, the method further comprises: receiving a judgment request sent by a video client of the first user, wherein the judgment request carries image information of the first user, and the judgment request is used for requesting to judge whether the first user is in an independent state; and in response to the received judgment request, inputting the image information of the first user into a face recognition model, determining the number of faces in the image information, judging whether the first user is in the independent state or not according to the number of the faces, and sending a judgment result to a video client of the first user, wherein the judgment result indicates that the first user is in the independent state or not.
In some examples, the selecting a second user that is watching the video program from among the users participating in the co-viewing activity includes: obtaining information of the candidate users participating in the co-viewing activity and viewing the video program; acquiring attribute information of a corresponding user from a user information database through the information of the candidate user; and selecting a second user matched with the characteristics of the first user from the candidate users according to the attribute information of the users.
In some examples, the establishing a media connection between the video client of the first user and the video client of the second user comprises: and sending first communication information to the video client of the first user, wherein the first communication information comprises address information of the video client of the second user, so that the video client of the first user establishes media connection with the video client of the second user through the first communication information.
In some examples, the establishing a media connection between the video client of the first user and the video client of the second user comprises: and responding to the first connection establishment request and the second connection establishment request, and sending second communication information to the video client of the second user, wherein the second communication information comprises address information of the video client of the first user, so that the video client of the second user establishes media connection with the video client of the first user through the second communication information.
This application example correspondingly provides a video playback device, includes: the first request receiving module is used for receiving a participation request sent by a video client of the first user, wherein the participation request represents that the first user requests to participate in the co-watching activity, and the participation request carries information of the first user and information of the video program; the information sending module is used for responding to the received participation request, selecting a second user watching the video program from the users participating in the co-watching activity, sending the information of the second user to the video client of the first user, and sending the information of the first user to the video client of the second user; a second request receiving module, configured to receive a first connection establishment request sent by a video client of the first user when the first user agrees to view the video program together with the second user, where the first connection establishment request indicates that the video client of the first user requests to establish a media connection with the video client of the second user; a third request receiving module, configured to receive a second connection establishment request sent by the video client of the second user when the second user agrees to view the video program together with the first user, where the second connection establishment request indicates that the video client of the second user requests to establish a media connection with the video client of the first user; and the establishing module responds to the first connection establishing request and the second connection establishing request, and establishes media connection between the video client of the first user and the video client of the second user so that the video client of the first user and the video client of the second user interact media data through the media connection.
In some examples, the apparatus further comprises: the transmission module is used for responding to a received playing request sent by a video client of a first user and transmitting a video stream of a video program to the video client of the first user; the fourth request receiving module is used for receiving a judgment request sent by the video client of the first user, wherein the judgment request carries the image information of the first user, and the judgment request is used for requesting to judge whether the first user is in an independent state; and the judging module is used for responding to the received judging request, inputting the matrix data of the image information into a face recognition model, determining the number of faces in the image information, judging whether the first user is in the independent state or not according to the number of the faces, and sending a judging result to the video client of the first user, wherein the judging result shows that the first user is in the independent state or not.
In some examples, the information sending module further comprises: a first acquisition unit that acquires information of the candidate user who participates in the common viewing activity and is viewing the video program; the second acquisition unit acquires the attribute information of the corresponding user from the user information database through the information of the candidate user; and the selection unit is used for selecting a second user matched with the characteristics of the first user from the candidate users according to the attribute information of the users.
In some examples, the establishing module further sends first communication information to the video client of the first user, where the first communication information includes address information of the video client of the second user, so that the video client of the first user establishes a media connection with the video client of the second user through the first communication information.
In some examples, the establishing module further sends, in response to the first connection establishment request and the second connection establishment request, second communication information to the video client of the second user, where the second communication information includes address information of the video client of the first user, so that the video client of the second user establishes a media connection with the video client of the first user through the second communication information.
The example of the present application also correspondingly proposes a computing device, which includes a memory, a processor, and a computer program stored in the memory and running on the processor; the processor implements the video playing method described above when executing the computer program.
The storage medium stores one or more programs, and the one or more programs include instructions which, when executed by a computing device, cause the computing device to execute the video playing method.
By adopting the technical scheme provided by the application, when a user watches a video program, the user can communicate with other users watching the same video program in real time, interaction such as real-time video chat and voice chat can be realized through media connection, a new interactive function in the video watching process can be provided, simultaneously, the loneliness of the user when watching the video program can be eliminated, and high-quality watching experience is brought to the user.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to these drawings without creative efforts.
Fig. 1 is a schematic structural diagram of a system to which a video playing method according to an embodiment of the present application is applied;
fig. 2 is a flowchart illustrating interaction between a video client and a video server in a video playing method according to an example of the present application;
fig. 3 is a flowchart of a video playing method of a video client according to an example of the present application;
FIG. 4 is an example of an interface for a client to display first prompt information in an example of the present application;
FIG. 5 is an example of an interface for a client to display second prompt information in an example of the application;
FIG. 6 is an example of an interface for a client to display a video window according to an example of the present application;
FIG. 7 is an example of an interface showing a voice control for capturing speech at a client according to an example of the present application;
FIG. 8 is an example of an interface showing a voice control for playing voice at a client according to an example of the present application;
FIG. 9 is an example of an interface for a client to display voice controls for a voice call in accordance with an example of the present application;
fig. 10 is a flowchart of a video playing method of a video server according to an example of the present application;
FIG. 11 is a schematic structural diagram of a video playback device according to an example of the present application;
FIG. 12 is a schematic structural diagram of a video playback device according to an example of the present application;
FIG. 13 is a diagram of a hardware configuration of a computing device according to an example of the present application;
fig. 14 is a hardware configuration diagram of a computing device according to an example of the present application.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
For simplicity and clarity of description, the invention will be described below by describing several representative embodiments. The numerous details of the examples are merely provided to assist in understanding the inventive arrangements. It will be apparent, however, that the invention may be practiced without these specific details. Some embodiments are not described in detail, but rather are merely provided as frameworks, in order to avoid unnecessarily obscuring aspects of the invention. Hereinafter, "including" means "including but not limited to", "according to … …" means "at least according to … …, but not limited to … … only". When the number of one component is not particularly specified hereinafter, it means that the component may be one or more, or may be understood as at least one.
At present, many users feel quite lonely when watching video programs independently, hope that someone can accompany the users to watch the video interfaces, and especially when the users watch the video interfaces independently, the users want to share the viewing thoughts of the users with other people urgently.
Aiming at the situation that the user watches the video program independently, particularly the situation that the user watches the movie program independently, the video playing method is provided by the application, and the method can be applied to various clients with the video playing function, such as a video client, a news client, a social application client and the like.
The embodiments of the present application will be described mainly with reference to a video client.
Fig. 1 shows a schematic system structure to which the video playing method of the embodiment of the present application is applied. The system comprises at least a terminal 11 comprising a video client, a network 12 and a video server 13.
The video client includes a first application program capable of implementing the video playing method of the present application, and the terminal 11 can run the first application program; the terminal 11 includes an electronic device such as a smart television, a tablet computer, and a smart phone. The video client receives various instructions sent by the user to the video client, and responds according to the received various instructions, and the video client in the terminal 11 realizes various information interactions with the video server 13 through the network 12.
The network 12 may be a wired network or a wireless network; the video client may perform information interaction with the video server 13 through a wired network, and the video client may also perform information interaction with the video server 13 through a wireless network.
The video server 13 is installed with a second application program capable of implementing the video playing method of the present application, the second application program corresponds to the first application program in the video client, the video server 13 receives information sent by the video client through the network 12, and the video server 13 analyzes, calculates, stores and the like the received information through the running second application program.
It should be noted that the client and the server included in the system are not limited to the video client and the video server 13, and may also be other clients having a video playing function and servers corresponding to the clients having the video playing function, such as a news client and a news server.
Based on the above system, the present application provides a video playing method, which is applied to a video client in the terminal 11. This method is described below with reference to fig. 2 and 3. As shown in fig. 3, the method comprises the steps of:
step 301: displaying a first prompt message in a playing interface 401 of the video program, where the first prompt message prompts whether to participate in a co-watching activity.
In some examples, the video client obtains a video stream of the video program from the video server 13 and plays the video program.
When a first user watches a video program through a terminal 11 alone, such as a smart television, a video client of the first user receives an instruction sent by the first user to play the video program, and in response to the play instruction, the video client of the first user sends a play request to a video server 13, where the play request carries an identifier of the video program, such as a name of the video program or an ID of the video program; when the video server 13 receives the play request, in response to the play request, the identifier of the video program obtained by analyzing the play request is searched for the target video program from the video database, and then step 201 in fig. 2 is executed: transmitting the video stream of the target video program to the video client of the first user, and after the video client of the first user receives the video stream transmitted by the video server 13, executing step 202 in fig. 2: the target video program is played, and the first user may view the current target video program through the terminal 11 (e.g., a smart television).
After the step of acquiring a media stream of a video program from the video server 13 and playing the video program, when the video client of the first user detects that the first user watches the video program, the video client of the first user acquires image information of the first user through a local image acquisition device (such as a front camera of a smart television or a tablet computer); sending a judgment request carrying the image information to the video server 13, wherein the judgment request is used for requesting to judge whether the first user is in an independent state, namely requesting to judge whether the first user independently watches the video program; receiving a judgment result returned by the video server 13 in response to the judgment request, wherein the judgment result indicates that the first user is in the independent state or the first user is not in the independent state; and if the judgment result shows that the first user is in the independent state, the step of displaying the first prompt message in the playing interface of the video program is executed.
In the above steps, as shown in fig. 2, the first user and the second user both need to watch the video program through their respective video clients, so the steps performed by the video client of the second user when playing the video program are the same as the steps performed by the video client of the first user when playing the video program. Only two users (a first user and a second user) are shown in the scenario of fig. 2, but in an actual scenario there will be a large number of users, each of whose video clients may perform the above-described process.
When the video client calls the camera of the terminal 11 (such as a front-facing camera of a mobile phone) to obtain the image information of the local user, authorization of the user of the terminal 11 needs to be obtained, and the video client can obtain the authorization of the user of the terminal 11 when the terminal 11 is installed with the video client, and can also prompt the local user to authorize the call of the camera before obtaining the image information of the local user.
When the video client of the first user receives a judgment result returned by the video server 13, and the judgment result indicates that the first user is in an independent state; the video client of the first user, in response to the determination result, performs step 203 as shown in fig. 2: displaying the first prompt message; fig. 4 shows, for example, a smart television, that the first prompt message is presented in the lower right corner of the playing interface 401 of the video program; the first prompt message may prompt the user whether to participate in the co-watching activity, i.e., the text message "pan-pan remote control co-watching" shown in fig. 4.
It should be noted that, in the above steps, as shown in fig. 2, the video client of the second user and the video client of the first user perform step 203: the first prompt information is displayed, and the specific processing mode is the same as that of the video client of the first user, which is not described herein again.
The display position of the first prompt message on the playing interface 401 is not limited to the lower right corner of the playing interface 401, and may be displayed in other positions of the playing interface 401 without affecting the user to watch the video program, or may be in other display forms, not limited to text messages, for example, may be various graphic elements capable of providing operation prompts for the user, for example: icons, animations and the like can also be controls, and the user is prompted to select or click the controls, and the controls are in the scope of the application as long as the user is prompted to participate in the activity of watching videos together.
Step 302: in response to receiving a first instruction indicating that the first user participates in the co-viewing activity, sending a participation request to the video server 13, wherein the participation request carries the information of the first user and the information of the video program, so that the video server 13 selects a second user who is viewing the video program from the users who participate in the co-viewing activity.
When the first user agrees to participate in the co-watching activity, the first instruction is sent to the video client of the first user (for example, the first user shakes the remote controller, and when an acceleration sensor built in the remote controller monitors that the remote controller is shaking, a signal is sent to the video client of the first user), and when the video client of the first user receives the first instruction sent by the first user, the step 204 shown in fig. 2 is executed in response to the first instruction: a participation request is sent to the video server 13, and the participation request includes the identification of the first user and the identification of the video program (such as the first user ID and the video program ID), so that the video server 13 selects other users who are watching the video program from the users participating in the co-watching activity, and then selects at least one other user as a second user according to the matching rule.
It should be noted that, the user refers to another user who participates in the joint viewing activity through another video client, so in the above step, a specific processing manner executed by the respective video client (including the video client of the second user) of the users while participating in the joint viewing activity is the same as the specific processing manner executed by the video client of the first user while participating in the joint viewing activity, and details thereof are omitted here.
Step 303: receiving the information of the second user sent by the video server 13 in response to the participation request.
The video client of the first user receives the video server 13 and performs step 206 shown in fig. 2 in response to the participation request: an identification of the second user (e.g., the second user's ID) is sent.
It should be noted that, in the above steps, fig. 2 shows that the video client of the second user receives the video server 13 and performs step 207 shown in fig. 2 in response to the participation request: the identity of the first user (the first user's ID) is sent.
Step 304: displaying a second prompt message in the playing interface 401, where the second prompt message prompts whether to agree with the second user to watch the video program.
When the video client of the first user receives the identification of the second user, step 208 shown in fig. 2 is performed in response to the identification of the second user: displaying the second prompt message; fig. 5 shows that the second prompt message is presented in the middle of the playing interface 401 of the video client of the first user, taking the smart phone as an example; the second prompt information prompts whether the first user agrees to watch the video program with the second user (e.g., "XX invites you to watch" XXXX "together as shown in fig. 5, where the ID of the second user is" XX ", the video program is" XXXX "), the first user sends a second instruction to the first video client of the first user (for example, the first user selects the approval instruction 502 on the playing interface 401 through a determination key in the remote controller, or the first user directly selects the approval instruction 502 on the playing interface 401 through a touch manner), if the first user does not approve the video program being viewed with the second user, the first user sends a third instruction (for example, the first user selects the rejection instruction 503 on the playing interface 401 through an exit key in the remote controller, or the first user directly selects the rejection instruction 503 on the playing interface 401 through a touch manner).
It should be noted that the second prompt information may also be displayed through a display interface in a pop-up window form, as shown in fig. 5, a pop-up window interface 501 is in the middle of the playing interface 401, and the second prompt information is displayed on the pop-up window 501; in addition, the second prompt message may also be presented in other presentation forms, and is not limited to a single text message and the pop-up interface 501, and may be various graphical elements capable of providing an operation prompt for the user, for example: icons, animations and the like can also be controls, and the users are prompted to select or click the controls, and the purposes that the first user and the second user watch the video programs together are achieved regardless of the forms of the controls.
The display position of the second prompt message may be displayed in the middle of the playing interface 401, or may be displayed in any position where the user can view the playing interface 401.
In the above steps, fig. 2 shows that the video client of the second user performs step 208: when the second prompt information is presented, the specific processing manner of the video client of the second user executing step 208 is the same as the specific processing manner of the video client of the first user executing step 208, and only the content of the presented second prompt information is different (for example, the second prompt information of the video client of the second user is "YY invite you to watch text information of" XXXX ", where the ID of the first user is" YY "and the video program is" XXXX "), and details are not repeated here.
Step 305: in response to receiving a second instruction indicating consent to co-watch the video program with the second user, interacting media data with a video client of the second user.
In some examples, may further include: and establishing media connection with the video client of the second user through the video server 13, and interacting media data with the video client of the second user through the media connection after the media connection is established.
When the video client of the first user receives the second instruction (for example, the agreement instruction 502 sent by the first user through the remote controller, or the agreement instruction 502 sent by the first user through the touch manner), the video client of the first user responds to the second instruction (for example, the agreement instruction 502), and the video client of the first user establishes a media connection with the video client of the second user through the video server 13.
It should be noted that the media connection mentioned above refers to video interactive connection, voice interactive connection, even text information interactive connection, etc. between video clients through the network 12 in this example, and the media connection capable of implementing interactive media data is within the protection scope of the present application.
In some examples, the step of establishing, by the video server 13, a media connection with the video client of the second user comprises: in response to the second instruction, (e.g., the consent instruction 502), the video client of the first user performs step 209 shown in fig. 2: sending a request for establishing a media connection to the video server 13 to request to establish a media connection with the video client of the second user; the video client of the first user receives communication information returned by the video server 13 in response to the establishment request, wherein the communication information comprises the IP address information, the communication port number and the like of the video client of the second user; the video client of the first user responds to the communication information to connect the IP address information and the port number of the video client of the second user according to a network communication protocol (such as a TCP/IP network protocol), so as to execute the step 210 shown in fig. 2: a media connection between a video client of a first user and a video client of a second user is established.
It should be noted that, in the above steps, fig. 2 shows that the video client of the second user performs step 209: sending a request for establishing a media connection to the video server 13, where a specific processing manner of this step is the same as the specific processing manner of the video client of the first user when performing step 209, and the difference is that only the second user requests to establish a media connection with the first user, which is not described herein again.
The media connection between the video clients can search the video client of the second user through the video client of the first user so as to carry out communication connection, can also search the video client of the first user through the video client of the second user so as to carry out communication connection, and can also search the video client of the first user and the video client of the second user simultaneously so as to carry out communication connection.
The step of interacting the media data with the video client of the second user through the media connection specifically includes the following implementation manners:
in some examples, the media data includes video data, i.e., the media connection is a video interactive connection between video clients via the network 12; fig. 6 shows, for example, a smart tv, which displays a playing interface 401 of a video client; interacting media data with the video client of the second user via a media connection, comprising: displaying a video window 601 in a first area of a play interface 401 of a video client of a first user; presenting a video image 602 of a second user received via a media connection (e.g., a video interactive connection) in the video window 601; acquiring a video image of a local first user through a local image acquisition device (such as a front camera of a smart television) and sending the video image to a video client of a second user through a media connection (such as a video interactive connection), so as to execute step 211 shown in fig. 2: the video client of the first user interacts with the video client of the second user for media data.
It should be noted that, as shown in fig. 6, the video window 601 may be displayed in the lower right corner of the playing interface 401, or may be displayed in another position of the playing interface 401 without affecting the user to watch the video program. The first area may be preset, or may be determined according to preset or real-time parameters.
In the above step, the specific processing manner of the video client of the second user when interacting the video data with the video client of the first user through the media connection (e.g., video interaction connection) is the same as the specific processing manner of the video client of the first user when interacting the video data with the video client of the second user through the media connection (e.g., video interaction connection), and is not repeated here.
In some examples, a video window is presented in a first region of the playback interface 401, including: when a video client of a first user detects that video interaction connection between video clients is established, a terminal 11 establishes a video window floating layer; after the terminal 11 has established the video window floating layer, the video client of the first user pulls up the video window floating layer to the lower right corner of the playing interface 401 for displaying.
It should be noted that, after the video client of the first user establishes the video interactive connection with the video client of the second user, the video client of the first user and the video client of the second user both establish the window floating layer through their respective terminals 11 in response to the video interactive connection, and the respective video clients pull up their respective window floating layers to the first areas of their respective playing interfaces 401.
In some examples, the media data includes audio data, i.e., the media connection is a voice interactive connection between video clients over network 12; interacting media data with the video client of the second user over the media connection, comprising: displaying a voice control in a second region of the playing interface 401 of the video client of the first user; responding to the first operation of the voice control, acquiring the voice of the first user through a local voice acquisition device (such as a microphone arranged in a smart television or a microphone arranged in a tablet personal computer) and sending the voice of the first user to a video client of the second user through media connection (such as voice interactive connection); in response to a second operation on the voice control, playing the voice of the second user received over a media connection (e.g., a voice interactive connection).
Wherein the voice control comprises at least an operation button; the first operation and the second operation are operations on the operation buttons.
Fig. 7 shows, for example, a tablet pc, where the tablet pc displays a voice control on a playing interface 401 of a video client of a first user, when a voice interaction connection between the video clients is established, a "press-and-talk" voice control 701 is displayed on a lower right corner of the playing interface 401, when a first user presses a determination key of a remote controller or triggers the "press-and-talk" voice control 701 in a touch manner, the "press-and-talk" voice control 701 is converted into a "release-end" voice control 702, a video client of the first user obtains and stores a voice of the first user through a local voice collecting device (such as a microphone built in the tablet pc) in response to a trigger operation of the first user, and when the first user releases the "release-end" voice control 702 through a determination key of the remote controller or a touch releasing action of the first user, the video client of the first user responds to a release operation of the first user, sending the acquired voice of the first user to a video client of a second user through voice interactive connection; fig. 8 illustrates a tablet pc as an example, when the video client of the first user receives the voice sent by the video client of the second user in the above manner, a "play voice" voice control 801 is displayed in the lower right corner of the playing interface 401 of the video client of the first user, and when it is detected that the first user presses and releases the enter key of the remote controller or triggers the "play voice" voice control 801 in a touch manner, the video client of the first user responds to the play operation, and plays the voice of the second user through a local voice playing device (e.g., a speaker built in the tablet pc).
It should be noted that, the trigger operation and the release operation belong to the first operation, and a combination of the trigger operation and the release operation may be regarded as one first operation.
The voice control may further include a voice state graphic element, and taking fig. 7 as an example, when the video client of the first user obtains the voice of the first user or when the video client of the second user obtains the voice of the second user, the voice collection state is displayed through the voice state graphic element 703 displayed on the playing interface 401; taking fig. 8 as an example, when the video client of the first user plays the voice of the second user or when the video client of the second user plays the voice of the first user, the voice playing state is displayed through the voice state graphic element 802 displayed on the playing interface 401.
It should be noted that a specific processing manner of the video client of the second user when sending the voice is the same as that of the video client of the first user when sending the voice, and details are not repeated here.
Fig. 9 illustrates, by taking a tablet computer as an example, a tablet computer displaying a voice control displayed on a playing interface 401 of a video client of a first user, where the video client of the first user interacts media data with a video client of a second user through a media connection, and the method includes: the method comprises the steps that a video client of a first user responds to the establishment of voice interaction connection, the voice of the first user is obtained in real time through a local voice collecting device (such as a built-in microphone of a tablet personal computer) and is sent to a video client of a second user through the voice interaction connection, and the voice of the second user received through the voice interaction connection is played in real time through a local voice playing device (such as a built-in loudspeaker of the tablet personal computer).
It should be noted that, the real-time voice interactive connection may be implemented by displaying a "hang-up" voice control 901 in the lower right corner of the playing interface 401, and when the first user presses a determination key of the remote controller or triggers the "hang-up" voice control 901 in a touch manner, the video client of the first user disconnects the voice interactive connection with the video client of the second user, that is, the first user ends the real-time call with the second user.
In the above step, the specific processing manner of the video client of the second user when interacting with the video client of the first user through the voice interaction connection is the same as the specific processing manner of the video client of the first user when interacting with the video client of the second user through the video interaction connection, and is not repeated here.
The voice control can be directly displayed in the lower right corner of the playing interface 401, or can be displayed on the lower right corner of the playing interface 401 through a voice window, the voice window is established below the playing interface 401, and is pulled up to the lower right corner of the playing interface 401 through the video client of the first user or the video client of the second user; and the voice control or the voice window can be displayed in other areas of the playing interface 401 without affecting the user's viewing of the video program.
The user can autonomously preset the form of the media connection in the respective video client.
When media connection is performed between the video clients in the above manner, if the media connection fails, the media data cannot be directly sent to the video client of the second user through the video client of the first user, the video server 13 is required to relay the media data, that is, the video client of the first user or the video client of the second user sends the media data to the video server 13, and the video server forwards the media data to the video client of the second user or the video client of the first user.
When the user watches the video program, other users interested in the video program can be found through the real-time communication mode, and a social relationship (such as WeChat friends and the like) can be further established through a social application to form a novel social mode.
Based on the above system, the present application further proposes a video playing method applied to the video server 13, which is described below with reference to fig. 2 and 10. As shown in fig. 10, the method comprises the steps of:
step 1001: and receiving a participation request sent by a video client of the first user, wherein the participation request represents that the first user requests to participate in the co-watching activity, and the participation request carries the information of the first user and the information of the video program.
In some examples, the video server 13 transmits a video stream of the video program to the video client of the first user in response to receiving a play request sent by the video client of the first user.
When the video server 13 receives the play request, in response to the play request, the identifier of the video program (such as the ID of the video program) obtained by parsing the play request is searched for the target video program from the video database, and then step 201 shown in fig. 2 is executed: the video stream of the target video program is transmitted to the video client of the first user, and when the video client of the first user receives the video stream transmitted by the video server 13, the video program is played, so that the first user can watch the current video program through the video client installed on the terminal 11 (such as a smart television).
In some examples, after the step of transmitting the video stream of the video program to the video client of the first user in response to the received play request sent by the video client of the first user, the video server 13 receives a determination request sent by the video client of the first user, where the determination request carries image information of the first user, and the determination request is used for requesting to determine whether the first user is in an independent state; the video server 13 generates corresponding two-dimensional matrix data from the image information in response to the received determination request, inputs the two-dimensional matrix data into a face recognition model in a face recognition model library, calculates the number of faces in the image information, i.e., the number of people of the first user, by using a face recognition algorithm in the face recognition model, determines whether the first user is in an independent state or not by using the number of faces, determines that the first user is in the independent state when the number of faces is one, otherwise, transmits a determination result to a video client of the first user, where the determination result indicates that the first user is in the independent state or that the first user is not in the independent state.
It should be noted that the face recognition model can be established by a support Vector machine (svm) (support Vector machine) and a principal Component analysis (pca) (principal Component analysis) algorithm.
In the above steps, fig. 2 only shows the first user and the second user, but in an actual scene, the video server 13 may receive the request and the information sent by the video clients of the mass users, and a specific processing manner of the video server 13 responding to the request and the information sent by the video clients of the mass users is the same as a specific processing manner of the video server 13 responding to the request and the information sent by the video client of the first user, and is not repeated here.
The video server 13 receives a participation request sent by the video client of the first user, and the participation request contains an identification of the first user (e.g., a first user ID) and an identification of the video program (e.g., an ID of the video program).
In the above steps, fig. 2 only shows the first user and the second user, but in an actual scene, the video server 13 may receive the request and the information sent by the video clients of the mass users, and a specific processing manner of the video server 13 responding to the request and the information sent by the video clients of the mass users is the same as a specific processing manner of the video server 13 responding to the request and the information sent by the video client of the first user, and is not repeated here.
Step 1002: in response to receiving the participation request, selecting a second user who is watching the video program from the users participating in the co-watching activity, sending information of the second user to the video client of the first user, and sending information of the first user to the video client of the second user.
In some examples, the video server 13, in response to receiving the above-mentioned participation request, selects a second user who is watching the video program from the users participating in the co-watching activity, including: by identification of the video program (e.g., ID of the video program), video server 13 obtains identification of the candidate users (e.g., candidate user ID or a list of candidate user IDs) participating in the co-viewing activity and watching the video program; acquiring attribute information (such as gender, geographic position, age and the like) of the corresponding candidate user from a user information database through the identification of the candidate user; calculating the attribute information score of the candidate user through a weighting algorithm, and executing the step 205 shown in fig. 2 through a selection rule: selecting a second user, step 206: the video server 13 sends the identification of the second user (such as the second user ID) to the video client of the first user, step 207: the video server 13 sends the identification of the first user (e.g., the first user ID) to the video client of the second user.
Wherein, the selection rule comprises any of the following items: selecting the candidate user with the highest attribute information score as the second user; selecting candidate users within the attribute information score threshold value range as second users; or sorting the attribute information scores of the candidate users from high to low, and selecting the candidate users with the preset number at the top as second users
It should be noted that, in an actual scenario, the candidate users should be multiple users.
The ranking of the weight of the attribute information from large to small may be: gender, geographic location, age; if the gender of the candidate user is the same as the gender of the first user, the gender attribute score of the candidate user is high or is not 0; if the geographic position of the candidate user is closer to the geographic position of the first user, the attribute score of the geographic position of the candidate user is higher, and if the age of the candidate user is closer to the age of the first user, the attribute score of the age of the candidate user is higher; and calculating the attribute information score of the candidate user according to a weight algorithm based on the weight of the attribute information. According to the requirement, attribute information of other candidate users (such as some network access behavior characteristics of the user, for example, interesting content tags, interesting commodity tags, interesting game/movie tags, etc.) can be added, and the attribute information score is calculated according to the same processing manner in the above steps, which is not described herein again. In summary, one or more second users that are closest to the certain feature or features of the first user may be determined according to a preconfigured algorithm, and such second users may be recommended to the first user as users who view the current video program together. Correspondingly, the video server 13 will also receive the participation request of the second user, and will determine the user most matched with the second user as the first user by using the same algorithm, so that the first user can be recommended to the second user as the user watching the current video program together. Optionally, the video server 13 may receive the participation requests of a plurality of users watching a certain video program, and the video server 13 may determine one or more co-watching user sets by using a pre-configured algorithm, where one user set at least includes two users (a first user and a second user), and the users in one user set have a relatively high matching degree with each other (e.g., a predetermined threshold or a highest matching degree, etc.), so that for any user, the other users in the user set may be recommended to co-watch the current video program. Considering the factors of saving network communication resources, guaranteeing the playing quality of the video program, etc., it is preferable that one user set includes two users, i.e. for one user, the user can watch the video program together with one user.
When the video server 13 selects multiple candidate users as the second user, the playing interface 401 of the video client may display an interactive interface connected with media such as a video window corresponding to each user, a voice control corresponding to each user, or a voice window.
In the above steps, fig. 2 only shows the first user and the second user, but in an actual scene, the video server 13 may receive the request and the information sent by the video clients of the mass users, and a specific processing manner of the video server 13 responding to the request and the information sent by the video clients of the mass users is the same as a specific processing manner of the video server 13 responding to the request and the information sent by the video client of the first user, and is not repeated here.
Step 1003: and receiving a first connection establishment request sent by the video client of the first user when the first user agrees to watch the video program together with the second user, wherein the first connection establishment request represents that the video client of the first user requests to establish media connection with the video client of the second user.
When the first user agrees to view the video program together with the second user, the video server 13 receives a first connection establishment request sent by the video client of the first user, where the first connection establishment request indicates that the video client of the first user requests to establish a media connection with the video client of the second user.
Step 1004: and receiving a second connection establishment request sent by the video client of the second user when the second user agrees to watch the video program together with the first user, wherein the second connection establishment request represents that the video client of the second user requests to establish media connection with the video client of the first user.
When the second user agrees to watch the video program together with the first user, the video server 13 receives a second connection establishment request sent by the video client of the second user, where the second connection establishment request indicates that the video client of the second user requests to establish a media connection with the video client of the first user.
It should be noted that the triggering condition for establishing the media connection between the video client of the first user and the video client of the second user through the video server 13 is as follows: the video server 13 receives both the first connection establishment request sent by the video client of the first user and the second connection establishment request sent by the video client of the second user.
Step 1005: and responding to the first connection establishment request and the second connection establishment request, and establishing a media connection between the video client of the first user and the video client of the second user so that the video client of the first user interacts media data with the video client of the second user through the media connection.
In some examples, the video server 13, in response to the first connection establishment request and the second connection establishment request, establishing a media connection between the video client of the first user and the video client of the second user, including: when the video server 13 receives the first connection establishment request sent by the video client of the first user and also receives the second connection establishment request sent by the video client of the second user, the video server 13 sends first communication information to the video client of the first user, where the first communication information includes IP address information, communication port number, and the like of the video client of the second user, so that the video client of the first user connects the IP address information and the port number of the video client of the second user according to a network communication protocol, thereby executing step 211 shown in fig. 2: a media connection between a video client of a first user and a video client of a second user is established.
When the video server 13 receives the first connection establishment request sent by the video client of the first user and also receives the second connection establishment request sent by the video client of the second user, the video server 13 sends second communication information to the video client of the second user in response to the second connection establishment request, wherein the second communication information includes IP address information, communication port number and the like of the video client of the first user, so that the video client of the second user is connected with the IP address information and the port number of the video client of the first user according to a network communication protocol, and thus the media connection between the media client of the second user and the video client of the first user is established.
It should be noted that, in the media connection between the video clients, the video client of the second user may be searched by the video client of the first user, so as to perform communication connection, the video client of the second user may also be searched by the video client of the first user, so as to perform communication connection, and the video client of the first user and the video client of the second user may also be simultaneously searched by each other, so as to perform communication connection.
An example of the present application further provides a video playing apparatus 1100 corresponding to a video playing method applied to a video client in a terminal 11, as shown in fig. 11, where the video playing apparatus 1100 includes: the display system comprises a first display module 1101, a first request sending module 1102, an information receiving module 1103, a second display module 1104 and a connecting module 1105, wherein the functions of the modules are as follows:
the first display module 1101 is configured to display first prompt information in a playing interface of the video program, where the first prompt information prompts whether to participate in a co-watching activity.
The first request sending module 1102 is configured to send a participation request to the video server in response to a received first instruction indicating that the first user participates in the co-viewing activity, where the participation request carries information of the first user and information of the video program, so that the video server selects a second user who is viewing the video program from users who participate in the co-viewing activity.
An information receiving module 1103, which receives the information of the second user sent by the video server in response to the participation request;
a second display module 1104 that displays second prompt information in the playing interface, where the second prompt information prompts whether to agree with the second user to watch the video program;
the connection module 1105, in response to receiving a second instruction indicating that the second user agrees to watch the video program in conjunction with the second user, interacts with the video client of the second user with media data.
In some examples, to complete the functions of the video playback apparatus 1100, the video playback apparatus 1100 further includes a playback module that obtains a video stream of a video program from a video server and plays back the video program; the acquisition module acquires image information of the first user through a local image acquisition device when the first user is detected to watch the video program; the second request sending module is used for sending a judgment request carrying the image information to the video server, wherein the judgment request is used for requesting to judge whether the first user is in an independent state; a result receiving module, configured to receive a determination result returned by the video server in response to the determination request, where the determination result indicates that the first user is in an independent state or that the first user is not in an independent state; and if the judgment result shows that the first user is in the independent state, executing the first display module.
In some examples, after the media connection is established, the connection module 1105 is executed to establish a media connection with the video client of the second user through the video server, and then interact media data with the video client of the second user through the media connection.
In some examples, the connection module 1105 further includes: a first response unit, responding to the second instruction, sending a request for establishing media connection to the video server to request for establishing media connection with the video client of the second user; the first receiving unit is used for receiving communication information returned by the video server in response to the establishment request, wherein the communication information comprises address information of a video client of a second user; and responding to the communication information, and establishing a media connection with the video client of the second user.
In some examples, the media data comprises video data; the connection module 1105 further includes: the first display unit displays a video window in a first area of the playing interface; a second presentation unit that presents the video image of the second user received through the media connection in the video window; and the first sending unit is used for acquiring the video image of the first user through a local image acquisition device and sending the video image to the video client of the second user through the media connection.
In some examples, the first display unit further comprises: and the pull-up unit is used for pulling up the video window floating layer in the first area to display the video window when the media connection is detected to be established.
In some examples, the media data includes audio data; the connection module 1105 further includes: the third display unit is used for displaying the voice control in a second area of the playing interface; the second sending unit responds to the first operation of the voice control, obtains the voice of the first user through a local voice acquisition device and sends the voice of the first user to the video client of the second user through the media connection; and the playing unit is used for responding to a second operation on the voice control and playing the voice of the second user received through the media connection.
In some examples, the voice controls include at least an operation button; the first operation and the second operation are operations on the operation buttons.
In some examples, the voice control further comprises a voice state graphical element; the apparatus further comprises: the third display module is used for displaying the voice acquisition state through the voice state graphic element when the voice of the first user is acquired; and the fourth display module is used for displaying the voice playing state through the voice state graphic element when the voice of the second user is played.
In some examples, the media data includes audio data; the connection module 1105 includes: and the third sending unit responds to the establishment of the media connection, acquires the voice of the first user through a local voice acquisition device in real time, sends the voice to the video client of the second user through the media connection, and plays the voice of the second user received through the media connection in real time.
Fig. 13 is a block diagram showing a configuration of a computing device 1300 in which the video playback apparatus 1100 is located. This computing device may be a terminal device. As shown in fig. 13, the computing device includes one or more processors (CPUs) 1302, a communication module 1304, memory 1306, a user interface 1310, and a communication bus 1308 for interconnecting these components.
The processor 1302 may receive and transmit data via the communication module 1304 to enable network communications and/or local communications.
The user interface 1310 includes one or more output devices 1312 including one or more speakers and/or one or more visual displays. The user interface 1310 also includes one or more input devices 1314, including, for example, a keyboard, mouse, voice command input unit or microphone, touch screen display, touch sensitive tablet, gesture capture camera or other input buttons or controls, and the like.
The memory 1306 may be a high-speed random access memory such as DRAM, SRAM, DDR RAM, or other random access solid state memory devices; or non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices.
Memory 1306 stores a set of instructions executable by processor 1302, including:
an operating system 1316, including programs for handling various basic system services and for performing hardware related tasks;
the application 1318 includes various application programs for video playback, which can implement the processing flow in the above examples, and may include, for example, part or all of the units in the video playback apparatus 1100 shown in fig. 11. At least one of the units 1101-1105 may store machine executable instructions. The processor 1302 can implement the functions of at least one of the units 1101-1105 by executing the machine-executable instructions in at least one of the units 1101-1105 in the memory 1306.
In response to a video playing method applied to the video server 13, an example of the present application further provides a video playing apparatus 1200 applied to the video server 13, as shown in fig. 12, where the video playing apparatus 1200 includes: the transmission module 1201, the first request receiving module 1202, the information sending module 1203, the second request receiving module 1204, the third request receiving module 1205 and the establishing module 1206, and the functions of each module are as follows:
a first request receiving module 1201, configured to receive a participation request sent by a video client of the first user, where the participation request indicates that the first user requests to participate in a co-watching activity, and the participation request carries information of the first user and information of the video program.
The information sending module 1202, in response to receiving the participation request, selects a second user who is watching the video program from the users participating in the co-watching activity, sends information of the second user to the video client of the first user, and sends information of the first user to the video client of the second user.
The second request receiving module 1203 is configured to receive a first connection establishment request sent by the video client of the first user when the first user agrees to watch the video program together with the second user, where the first connection establishment request indicates that the video client of the first user requests to establish a media connection with the video client of the second user.
A third request receiving module 1204, configured to receive a second connection establishment request sent by the video client of the second user when the second user agrees to watch the video program together with the first user, where the second connection establishment request indicates that the video client of the second user requests to establish a media connection with the video client of the first user.
The establishing module 1205, in response to the first connection establishing request and the second connection establishing request, establishes a media connection between the video client of the first user and the video client of the second user, so that the video client of the first user interacts with the video client of the second user through the media connection.
In some examples, to complete the functions of the video playback device 1200, the video playback device 1200 further includes: the transmission module is used for responding to a received playing request sent by a video client of a first user and transmitting a video stream of a video program to the video client of the first user; the fourth request receiving module is used for receiving a judgment request sent by the video client of the first user, wherein the judgment request carries the image information of the first user, and the judgment request is used for requesting to judge whether the first user is in an independent state; and the judging module is used for responding to the received judging request, inputting the matrix data of the image information into a face recognition model, determining the number of faces in the image information, judging whether the first user is in the independent state or not according to the number of the faces, and sending a judging result to the video client of the first user, wherein the judging result shows that the first user is in the independent state or not.
In some examples, the information sending module 1202 further comprises: a first acquisition unit that acquires information of the candidate user who participates in the common viewing activity and is viewing the video program; the second acquisition unit acquires the attribute information of the corresponding user from the user information database through the information of the candidate user; and the selection unit is used for selecting a second user matched with the characteristics of the first user from the candidate users according to the attribute information of the users.
In some examples, the establishing module 1205 further sends first communication information to the video client of the first user, where the first communication information includes address information of the video client of the second user, so that the video client of the first user establishes a media connection with the video client of the second user through the first communication information.
In some examples, the establishing module 1205 is further configured to send, in response to the first connection establishment request and the second connection establishment request, second communication information to the video client of the second user, where the second communication information includes address information of the video client of the first user, so that the video client of the second user establishes a media connection with the video client of the first user through the second communication information.
Fig. 14 shows a block diagram of a computing device 1400 in which the video playback apparatus 1200 is located. This computing device 1400 may be a video server. As shown in fig. 14, the computing device includes one or more processors (CPUs) 1402, a communication module 1404, a memory 1406, a user interface 1410, and a communication bus 1008 for interconnecting these components.
The processor 1402 can receive and transmit data via the communication module 1404 to enable network communication and/or local communication.
User interface 1410 includes one or more output devices 1412 including one or more speakers and/or one or more visual displays. User interface 1410 also includes one or more input devices 1414, including, for example, a keyboard, a mouse, a voice command input unit or microphone, a touch screen display, a touch-sensitive input pad, a gesture-capture camera or other input buttons or controls, and the like.
Memory 1406 may be high speed random access memory such as DRAM, SRAM, DDR RAM, or other random access solid state memory devices; or non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices.
Memory 1406 stores sets of instructions executable by processor 1402, including:
an operating system 1416, including programs for handling various basic system services and for performing hardware related tasks;
the application 1418 includes various application programs for video playing, which can implement the processing flow in the above examples, such as may include some or all of the modules in the video playing apparatus 1200 shown in fig. 12. At least one of the modules 1201-1205 may store machine executable instructions. The processor 1402 may further implement the functions of at least one of the modules 1201 and 1205 by executing the machine executable instructions in at least one of the modules 1201 and 1205 in the memory 1406.
It should be noted that not all steps and modules in the above flows and structures are necessary, and some steps or modules may be omitted according to actual needs. The execution order of the steps is not fixed and can be adjusted as required. The division of each module is only for convenience of describing adopted functional division, and in actual implementation, one module may be divided into multiple modules, and the functions of multiple modules may also be implemented by the same module, and these modules may be located in the same device or in different devices.
The hardware modules in the embodiments may be implemented in hardware or a hardware platform plus software. The software includes machine-readable instructions stored on a non-volatile storage medium. Thus, embodiments may also be embodied as software products.
In various examples, the hardware may be implemented by specialized hardware or hardware executing machine-readable instructions. For example, the hardware may be specially designed permanent circuits or logic devices (e.g., special purpose processors, such as FPGAs or ASICs) for performing the specified operations. Hardware may also include programmable logic devices or circuits temporarily configured by software (e.g., including a general purpose processor or other programmable processor) to perform certain operations.
In addition, each example of the present application can be realized by a data processing program executed by a data processing apparatus such as a computer. It is clear that a data processing program constitutes the present application. Further, the data processing program, which is generally stored in one storage medium, is executed by directly reading the program out of the storage medium or by installing or copying the program into a storage device (such as a hard disk and/or a memory) of the data processing device. Such a storage medium therefore also constitutes the present application, which also provides a non-volatile storage medium in which a data processing program is stored, which data processing program can be used to carry out any one of the above-mentioned method examples of the present application.
Machine-readable instructions corresponding to the modules in fig. 11 and 12 may cause an operating system or the like operating on the computer to perform some or all of the operations described herein. The nonvolatile computer-readable storage medium may be a memory provided in an expansion board inserted into the computer or written to a memory provided in an expansion unit connected to the computer. A CPU or the like mounted on the expansion board or the expansion unit may perform part or all of the actual operations according to the instructions.
In addition, the devices and modules in the examples of the present application may be integrated into one processing unit, or each module may exist alone physically, or two or more devices or modules may be integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.

Claims (14)

1. A video playback method, the method comprising:
acquiring a video stream of a video program from a video server and playing the video program;
when it is detected that a first user watches the video program, acquiring image information of the first user through a local image acquisition device;
sending a judgment request carrying the image information to a video server, wherein the judgment request is used for requesting to judge whether the first user is in an independent state; and
receiving a judgment result returned by the video server in response to the judgment request, wherein the judgment result represents that the first user is in the independent state or the first user is not in the independent state;
if the judgment result shows that the first user is in the independent state, displaying first prompt information in a playing interface of the video program, wherein the first prompt information prompts whether to participate in a co-watching activity;
sending a participation request to the video server in response to a received first instruction indicating that a first user participates in a co-watching activity, wherein the participation request carries information of the first user and information of the video program, so that the video server selects a second user who is watching the video program from users who participate in the co-watching activity;
receiving information of the second user sent by the video server in response to the participation request;
displaying second prompt information in the playing interface, wherein the second prompt information prompts whether the second user agrees to watch the video program together with the second user; and
in response to receiving a second instruction indicating consent to co-watch the video program with the second user, interacting media data with a video client of the second user.
2. The method of claim 1, further comprising:
establishing, by the video server, a media connection with a video client of the second user;
and interacting media data with the video client of the second user through the media connection.
3. The method of claim 2, wherein the step of establishing, by the video server, a media connection with the video client of the second user comprises:
in response to the second instruction, sending a request for establishing a media connection to the video server to request for establishing a media connection with the video client of the second user;
receiving communication information returned by the video server in response to the establishment request, wherein the communication information comprises address information of a video client of a second user;
and responding to the communication information, and establishing a media connection with the video client of the second user.
4. The method of claim 2, wherein the media data comprises video data; the interacting the media data with the video client of the second user via the media connection includes:
displaying a video window in a first area of the playing interface;
displaying the video image of the second user received through the media connection in the video window;
and acquiring the video image of the first user through a local image acquisition device and sending the video image to the video client of the second user through the media connection.
5. The method of claim 4, wherein said presenting a video window in a first area of said playback interface comprises:
and when the media connection is detected to be established, pulling up a video window floating layer in the first area to display a video window.
6. The method of claim 2 or 4, wherein the media data comprises audio data; the interacting the media data with the video client of the second user via the media connection includes:
displaying a voice control in a second area of the playing interface;
responding to the first operation of the voice control, acquiring the voice of the first user through a local voice acquisition device and sending the voice to the video client of the second user through the media connection;
in response to a second operation on the voice control, playing the voice of the second user received through the media connection;
wherein the voice control comprises at least an operation button; the first operation and the second operation are operations on the operation buttons.
7. The method of claim 6, wherein the voice control further comprises a voice state graphical element;
the method further comprises:
displaying a voice acquisition state through the voice state graphic element when the voice of the first user is acquired;
and displaying the voice playing state through the voice state graphic element when the voice of the second user is played.
8. The method of claim 2 or 4, wherein the media data comprises audio data;
the interacting the media data with the video client of the second user via the media connection includes:
and responding to the establishment of the media connection, acquiring the voice of the first user in real time through a local voice acquisition device, sending the voice to the video client of the second user through the media connection, and playing the voice of the second user received through the media connection in real time.
9. A video playback method, the method comprising:
responding to a received playing request sent by a video client of a first user, and transmitting a video stream of a video program to the video client of the first user;
receiving a judgment request sent by a video client of the first user, wherein the judgment request carries image information of the first user, and the judgment request is used for requesting to judge whether the first user is in an independent state; and
in response to the received judgment request, inputting image information of the first user into a face recognition model, determining the number of faces in the image information, judging whether the first user is in an independent state or not according to the number of the faces, and sending a judgment result to a video client of the first user, wherein the judgment result indicates that the first user is in the independent state or not;
receiving a participation request sent by a video client of the first user, wherein the participation request represents that the first user requests to participate in the co-watching activity, and the participation request carries information of the first user and information of the video program;
in response to receiving the participation request, selecting a second user who is watching the video program from the users participating in the co-watching activity, sending information of the second user to the video client of the first user, and sending information of the first user to the video client of the second user;
receiving a first connection establishment request sent by a video client of the first user when the first user agrees to watch the video program together with the second user;
receiving a second connection establishment request sent by a video client of the second user when the second user agrees to watch the video program together with the first user; and
and responding to the first connection establishment request and the second connection establishment request, and establishing a media connection between the video client of the first user and the video client of the second user so that the video client of the first user interacts media data with the video client of the second user through the media connection.
10. The method of claim 9, wherein selecting the second user that is watching the video program from the users participating in the co-viewing activity comprises:
obtaining information of the candidate users participating in the co-viewing activity and viewing the video program;
acquiring attribute information of a corresponding user from a user information database through the information of the candidate user; and
and selecting a second user matched with the characteristics of the first user from the candidate users according to the attribute information of the users.
11. A video playback apparatus, comprising:
the playing module is used for acquiring a video stream of a video program from a video server and playing the video program;
the acquisition module acquires image information of a first user through a local image acquisition device when the first user is detected to watch the video program;
the second request sending module is used for sending a judgment request carrying the image information to the video server, wherein the judgment request is used for requesting to judge whether the first user is in an independent state; and
a result receiving module, configured to receive a determination result returned by the video server in response to the determination request, where the determination result indicates that the first user is in an independent state or that the first user is not in an independent state;
the first display module displays first prompt information in a playing interface of the video program if the judgment result shows that the first user is in the independent state, and the first prompt information prompts whether to participate in a co-watching activity;
the first request sending module is used for responding to a received first instruction for indicating that a first user participates in the co-watching activity, and sending a participation request to the video server, wherein the participation request carries information of the first user and information of the video program, so that the video server selects a second user watching the video program from users participating in the co-watching activity;
an information receiving module, which receives the information of the second user sent by the video server in response to the participation request;
the second display module displays second prompt information in the playing interface, wherein the second prompt information prompts whether the second user agrees to watch the video program together with the second user;
and the connection module is used for responding to the received second instruction which indicates that the second user agrees to watch the video program together, and interacting the media data with the video client of the second user.
12. A video playback apparatus, comprising:
the transmission module is used for responding to a received playing request sent by a video client of a first user and transmitting a video stream of a video program to the video client of the first user;
the fourth request receiving module is used for receiving a judgment request sent by the video client of the first user, wherein the judgment request carries the image information of the first user, and the judgment request is used for requesting to judge whether the first user is in an independent state;
the judging module is used for responding to the received judging request, inputting the image information of the first user into a face recognition model, determining the number of faces in the image information, judging whether the first user is in the independent state or not according to the number of the faces, and sending a judging result to a video client of the first user, wherein the judging result indicates that the first user is in the independent state or not;
the first request receiving module is used for receiving a participation request sent by a video client of the first user, wherein the participation request represents that the first user requests to participate in the co-watching activity, and the participation request carries information of the first user and information of the video program;
the information sending module is used for responding to the received participation request, selecting a second user watching the video program from the users participating in the co-watching activity, sending the information of the second user to the video client of the first user, and sending the information of the first user to the video client of the second user;
a second request receiving module, configured to receive a first connection establishment request sent by a video client of the first user when the first user agrees to view the video program together with the second user, where the first connection establishment request indicates that the video client of the first user requests to establish a media connection with the video client of the second user;
a third request receiving module, configured to receive a second connection establishment request sent by the video client of the second user when the second user agrees to view the video program together with the first user, where the second connection establishment request indicates that the video client of the second user requests to establish a media connection with the video client of the first user; and
and the establishing module is used for responding to the first connection establishing request and the second connection establishing request, and establishing media connection between the video client of the first user and the video client of the second user so that the video client of the first user and the video client of the second user can interact media data through the media connection.
13. A storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a computing device, cause the computing device to perform the method of any of claims 1-10.
14. A computing device comprising a memory, a processor, and a set of instructions stored on the memory and executed on the processor; the processor, when executing the set of instructions, implements the method of any of claims 1-10.
CN201711160447.5A 2017-11-20 2017-11-20 Video playing method and device, computing equipment and storage medium Active CN109819341B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201711160447.5A CN109819341B (en) 2017-11-20 2017-11-20 Video playing method and device, computing equipment and storage medium
PCT/CN2018/116205 WO2019096307A1 (en) 2017-11-20 2018-11-19 Video playback method, apparatus, computing device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711160447.5A CN109819341B (en) 2017-11-20 2017-11-20 Video playing method and device, computing equipment and storage medium

Publications (2)

Publication Number Publication Date
CN109819341A CN109819341A (en) 2019-05-28
CN109819341B true CN109819341B (en) 2021-08-13

Family

ID=66540094

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711160447.5A Active CN109819341B (en) 2017-11-20 2017-11-20 Video playing method and device, computing equipment and storage medium

Country Status (2)

Country Link
CN (1) CN109819341B (en)
WO (1) WO2019096307A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110267104A (en) * 2019-07-02 2019-09-20 北京奇艺世纪科技有限公司 A kind of user matching method and device
CN111741350A (en) * 2020-07-15 2020-10-02 腾讯科技(深圳)有限公司 File display method and device, electronic equipment and computer readable storage medium
CN112015506B (en) * 2020-08-19 2023-08-22 北京字节跳动网络技术有限公司 Content display method and device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101394537A (en) * 2008-10-29 2009-03-25 中兴通讯股份有限公司 Mobile phone television terminal implementing interactive chat and implementation method thereof
CN102170584A (en) * 2011-03-14 2011-08-31 华为技术有限公司 Method, device and system for playing media between synchronic HS (HTTP (HyperText Transfer Protocol) Streaming) terminal equipment
CN103561288A (en) * 2013-10-17 2014-02-05 深圳市同洲电子股份有限公司 Method, device and system for correlating users through video

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW463503B (en) * 1998-08-26 2001-11-11 United Video Properties Inc Television chat system
DE60016594T2 (en) * 1999-07-12 2005-12-22 Thomson Licensing S.A. METHOD AND DEVICE FOR COMMUNICATION SETUP
US6874029B2 (en) * 2000-11-22 2005-03-29 Leap Wireless International, Inc. Method and system for mediating interactive services over a wireless communications network
WO2011087727A1 (en) * 2009-12-22 2011-07-21 Delta Vidyo, Inc. System and method for interactive synchronized video watching
US8893022B2 (en) * 2010-04-01 2014-11-18 Microsoft Corporation Interactive and shared viewing experience
US20120159527A1 (en) * 2010-12-16 2012-06-21 Microsoft Corporation Simulated group interaction with multimedia content
US9609043B2 (en) * 2013-10-02 2017-03-28 Dropbox, Inc. Facilitating access to content from group interactions
CN105898509A (en) * 2015-11-26 2016-08-24 乐视网信息技术(北京)股份有限公司 Video playing interaction method and system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101394537A (en) * 2008-10-29 2009-03-25 中兴通讯股份有限公司 Mobile phone television terminal implementing interactive chat and implementation method thereof
CN102170584A (en) * 2011-03-14 2011-08-31 华为技术有限公司 Method, device and system for playing media between synchronic HS (HTTP (HyperText Transfer Protocol) Streaming) terminal equipment
CN103561288A (en) * 2013-10-17 2014-02-05 深圳市同洲电子股份有限公司 Method, device and system for correlating users through video

Also Published As

Publication number Publication date
CN109819341A (en) 2019-05-28
WO2019096307A1 (en) 2019-05-23

Similar Documents

Publication Publication Date Title
EP3266190B1 (en) Presenting a message in a communication session
US11025967B2 (en) Method for inserting information push into live video streaming, server, and terminal
CN111918086B (en) Video connection method, device, terminal, server and readable storage medium
CN111835531B (en) Session processing method, device, computer equipment and storage medium
CN111343476A (en) Video sharing method and device, electronic equipment and storage medium
US11792241B2 (en) Method, system, and non-transitory computer-readable record medium for displaying reaction during VoIP-based call
CN109819341B (en) Video playing method and device, computing equipment and storage medium
CN112261481B (en) Interactive video creating method, device and equipment and readable storage medium
WO2021169432A1 (en) Data processing method and apparatus of live broadcast application, electronic device and storage medium
CN113518264A (en) Interaction method, device, terminal and storage medium
CN113840154A (en) Live broadcast interaction method and system based on virtual gift and computer equipment
CN114245221B (en) Interaction method and device based on live broadcasting room, electronic equipment and storage medium
CN112055252A (en) Multi-screen interaction method and device, computer readable medium and electronic equipment
CN114205633A (en) Live broadcast interaction method and device, storage medium and electronic equipment
CN113573092B (en) Live broadcast data processing method and device, electronic equipment and storage medium
CN113709022B (en) Message interaction method, device, equipment and storage medium
WO2020248627A1 (en) Video call method and display device
WO2023098011A1 (en) Video playing method and electronic device
CN114430494B (en) Interface display method, device, equipment and storage medium
US11656834B2 (en) Information processing device, non-transitory recording medium, and information processing system
CN115193043A (en) Game information sending method and device, computer equipment and storage medium
CN114666643A (en) Information display method and device, electronic equipment and storage medium
CN113518198A (en) Session interface display method, conference interface display method and device and electronic equipment
CN112528052A (en) Multimedia content output method, device, electronic equipment and storage medium
CN111768182A (en) Virtual object allocation method, device, equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant