Playback method, electronic device and server
By recording and synchronizing video playback progress through a playback history server, the problem of inconsistent playback progress across video operation platforms is solved, enabling automatic video continuation and improving user experience.
Patent Information
- Application Number
- PCT/CN2025/106035
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-07-23
- Filing Date
- 2025-06-30
- Publication Date
- 2026-01-29
AI Technical Summary
In online video operations, the playback progress of videos across different video operation platforms cannot be unified, forcing users to manually adjust the playback progress, which affects the user experience.
By recording the relationship between the playback progress of electronic devices and video content through a playback record server, automatic video continuation can be achieved across video operation platforms. The video content is uniquely identified by identification information and key frames, and the playback progress is obtained and synchronized through a communication module.
It enables synchronization of video playback progress across different video operation platforms, improving user experience and avoiding the hassle of manually adjusting playback progress.
Smart Images

Figure CN2025106035_29012026_PF_FP_ABST
Abstract
Description
Playing method, electronic device and server
[0001] The present application claims priority to the Chinese patent application No. 202410996472.0, filed on July 23, 2024, and entitled "Playing method, electronic device and server", the whole content of which is incorporated herein by reference. TECHNICAL FIELD
[0002] Embodiments of the present application relate to the field of media technology, in particular to a playing method, an electronic device and a server. BACKGROUND
[0003] In the operation of online video, the copyright party of video content usually provides video content to different video operation platforms (also referred to as video platforms or operation platforms) for operation. At the user side, each video operation platform provides an application program (application, APP, referred to as video APP) for users, so that users can watch videos on the video APP corresponding to each video operation platform.
[0004] However, in actual use, when the video APP of each video operation platform provides playing service for users, it provides the ability of playing record management, that is, each time the playing is exited, the video APP records the position (i.e., the playing progress) of the playing video content watched by the user in the APP, and then when the user opens the video content in the APP for playing next time, the video APP will continue playing from the position where the playing is terminated last time (referred to as continuous playing). If the user opens another video APP to watch the same video, the video APP will start playing from the position of the video content recorded by the video APP, and if the user wants to continue playing from the position where the playing is terminated last time (i.e., the position of watching the video in the other APP), the user needs to manually adjust the playing progress, which affects the user experience. SUMMARY
[0005] The present application provides a playing method, an electronic device and a server. In the method, the electronic device can realize cross-video operation platform continuous playing.
[0006] In a first aspect, the present application provides a playing method. The method is applied to an electronic device, and the electronic device comprises a first video application and a second video application. The first video application belongs to a first video operation platform, and the second video application belongs to a second video operation platform. The method comprises: when the first video application ends playing a first video, the electronic device acquires a first playing progress corresponding to the end of playing the first video. The identification information of the first video in the first video operation platform is different from the identification information of the first video in the second video operation platform. The electronic device sends playing progress information to a playing record server. The playing progress information is used to indicate the first playing progress of the first video in the electronic device. The electronic device acquires the first playing progress from the playing record server in response to a received first operation, so that the second video application starts playing the first video from the first playing progress. In this way, the present application can realize the synchronization of playing progress when the same video content is played on the video applications corresponding to different video operation platforms on the same electronic device. The user can continue playing the video from the position where the user ended playing the video last time in any video application when watching the same video content in different video applications, that is, the electronic device realizes the automatic video continuation playing function across video operation platforms, and improves the user experience.
[0007] For example, the cross-video operation platform can be understood as crossing different video operation platforms. For example, the first video application provided by the first video operation platform can continue playing the first video from the position where the second video application provided by the second video operation platform ends playing the first video. Thus, the problem that the playing records of the same video content played on the same electronic device in different video operation platforms are not unified due to the independent recording of the playing progress of the video in different video operation platforms is overcome.
[0008] For example, the identification information of the video in the video operation platform can comprise a VodID.
[0009] For example, the video operation platform can also be referred to as a video platform or an operation platform.
[0010] For example, the playing record server can be an independent server, for example, a server provided by an electronic device manufacturer or a server provided by other third parties (for example, any video operation platform).
[0011] For example, the playing progress can be the relative time length from the start of playing the video to the end of playing the video.
[0012] In a possible implementation, the playing progress information includes: the identification information of the electronic device, the identification information of the first video application, the identification information of the first video in the first video operation platform, and the first playing progress. In this way, a video content is uniquely identified by the identification information of the video application and the identification information of the video. That is, the same video content can be uniquely identified by the above-mentioned identification in the case that the video identification is different in different platforms. The playing record server can find the corresponding video content based on the identification information of the video application and the identification information of the video. The association between the playing progress of the electronic device and the video content can be further recorded based on the identification information of the electronic device. Therefore, in the case that the same video is played by the electronic device through different video applications, the playing record server always records the association between the playing progress of the electronic device and the video content, so that the playing progress obtained by playing the video content on any video application in the electronic device is the playing progress associated with the electronic device, and cross-video operation platform continuation playing on the electronic device is realized.
[0013] For example, the identification information of the electronic device can be the name, ID or network address of the electronic device.
[0014] For example, the identification information of the video application can be AppID.
[0015] In a possible implementation, the playing progress information includes: the identification information of the electronic device, the first key frame of the first video, and the first playing progress. In this way, a video content is uniquely identified by the key frame. That is, the same video content can be uniquely identified by the above-mentioned identification in the case that the video identification is different in different platforms. The playing record server can find the corresponding video content based on the key frame. The association between the playing progress of the electronic device and the video content can be further recorded based on the identification information of the electronic device. Therefore, in the case that the same video is played by the electronic device through different video applications, the playing record server always records the association between the playing progress of the electronic device and the video content, so that the playing progress obtained by playing the video content on any video application in the electronic device is the playing progress associated with the electronic device, and cross-video operation platform continuation playing on the electronic device is realized.
[0016] In a possible implementation, the first play progress is obtained from the play record server in response to the received first operation, including: the electronic device sends a play progress query request message to the play record server in response to the received first operation, the play progress query request message being used to request a play progress of playing the first video in the electronic device, the play progress query request including identification information of the electronic device, identification information of the second video application, and identification information of the first video in the second video operating platform. The electronic device receives a play progress query response message sent by the play record server, the play progress query response message being used to indicate the first play progress. In this way, by setting the play record server, videos of various operating platforms can be integrated, and a video content can be uniquely identified based on a video identification and an application identification. Moreover, the play progress of the video content of different platforms in the same electronic device can be uniquely identified based on the electronic device identification, the application identification, and the video identification.
[0017] In a possible implementation, the first play progress is obtained from the play record server in response to the received first operation, including: the electronic device sends a play progress query request message to the play record server in response to the received first operation, the play progress query request message being used to request a play progress of playing the first video in the electronic device, the play progress query request including identification information of the electronic device and a second key frame of the first video. The electronic device receives a play progress query response message sent by the play record server, the play progress query response message being used to indicate the first play progress. In this way, by setting the play record server, videos of various operating platforms can be integrated, and a video content can be uniquely identified based on a key frame and a device identification. Moreover, the play progress of the video content of different platforms in the same electronic device can be uniquely identified based on the electronic device identification, the application identification, and the video identification.
[0018] In a possible implementation, the first key frame is an arbitrary key frame before the first play progress, and the second key frame is an arbitrary key frame in the second video. In this way, by capturing an arbitrary key frame, the play record server can identify the corresponding video content based on the key frame, and record an association between the electronic device and the play progress of the video content.
[0019] In a possible implementation, the first play progress is obtained from the play record server in response to the received first operation, including: the electronic device displays a search result and obtains the first play progress from the play record server in response to the received first operation of searching for the first video in the search interface, the search result including a search control of the first video application and a search control of the second video application. In this way, by obtaining the play progress in the search process, the efficiency of obtaining the play progress can be effectively improved, the waiting time corresponding to the interaction with the server can be avoided, and the visual experience can be improved.
[0020] In a possible implementation, the method further includes: in response to the received second operation of clicking the search control of the second video application, causing the second video application to play the first video from the first play progress. In this way, the acquisition efficiency of the play progress is effectively improved in the manner of acquiring the play progress in the search process, the waiting time corresponding to the interaction with the server is avoided, and the visual experience is improved.
[0021] In a second aspect, the present application provides a playing method. The method is applied to a playing record server, and the method includes: receiving play progress information sent by an electronic device, the play progress information being used to indicate a first play progress of a first video played by a first video application in the electronic device; based on the play progress information, saving the first play progress of the first video played by the electronic device; receiving a play progress query request message sent by the electronic device, the play progress query request message being used to request a play progress of the first video to be played by a second video application in the electronic device; wherein the first video application belongs to a first video operation platform, the second video application belongs to a second video operation platform, and identification information of the first video in the first video operation platform is different from identification information of the first video in the second video operation platform; based on the play progress query request message, determining that the play progress of the first video to be played by the second video application in the electronic device is the first play progress; and sending a play progress query response message to the electronic device, the play progress query response message being used to indicate the first play progress. In this way, the present application maintains the association relationship of the same video content in different video operation platforms through the playing record server, thereby providing the recording function and the query function of the play progress of the video for the electronic device. The electronic device can request the playing record server for the association relationship of the play progress of the video and the electronic device, and can also request the playing record server for the play progress of the video in the electronic device. Therefore, through the service provided by the playing record server, the cross-video operation platform play-continuation function on the terminal side is realized, that is, when the same video content is played on different video applications on the same electronic device, the synchronization of the play progress can be realized.
[0022] In a possible implementation, the play progress information includes: identification information of the electronic device, identification information of the first video application, identification information of the first video in the first video operation platform, and the first play progress.
[0023] The playing record server can pre-store the identification information of different video contents on different video operation platforms and the corresponding relationship with the identification information of the corresponding video application. The playing record server can uniquely identify a video content based on the identification information of the video application and the identification information of the video. Further, the playing record server can store the association relationship between the electronic device and the playing progress of the video content based on the identification information of the electronic device, thereby providing the electronic device with the record service of the association relationship between the electronic device and the playing progress of the video.
[0024] In a possible implementation, the playing progress information includes the identification information of the electronic device, the first key frame of the first video, and the first playing progress. The playing record server can pre-store all key frames of different video contents. The playing record server can uniquely identify a video content based on the key frame of the video. Further, the playing record server can store the association relationship between the electronic device and the playing progress of the video content based on the identification information of the electronic device, thereby providing the electronic device with the record service of the association relationship between the electronic device and the playing progress of the video.
[0025] In a possible implementation, based on the playing progress information, the first playing progress of the electronic device playing the first video is stored, including: determining the all-platform first video identification information based on the identification information of the first video in the first video operation platform and the identification information of the first video application, through a first corresponding relationship, the first corresponding relationship including the corresponding relationship among the all-platform first video identification information, the identification information of the first video in the first video operation platform, and the identification information of the first video application. A second corresponding relationship of the all-platform first video identification information, the identification information of the electronic device, and the first playing progress is stored. In this way, the playing record server can generate an all-platform identification information for each video content, to uniquely identify the video content. The playing record server can record the corresponding relationship among the all-platform identification information, the video identification information, and the identification information of the video application, so as to find the all-platform identification information of the video content, that is, find the corresponding video content, based on the video identification information and the identification information of the video application reported by the electronic device, in response to the query request of the electronic device. The association relationship between the electronic device and the playing progress of the video content is recorded based on the corresponding relationship between the identification information of the electronic device and the all-platform identification information, thereby providing the electronic device with the record function of the playing progress of the video across the video operation platforms.
[0026] In a possible implementation, the playing progress query request message includes the identification information of the electronic device, the identification information of the second video application, and the identification information of the first video in the second video operation platform.
[0027] In a possible implementation, based on the playback progress query request message, determining that the playback progress corresponding to the first video to be played by the second video application in the electronic device is the first playback progress includes: based on the identification information of the first video in the second video operation platform and the identification information of the second video application, determining the all-platform first video identification information through a third correspondence relationship, the third correspondence relationship including a correspondence relationship among the all-platform first video identification information, the identification information of the first video in the second video operation platform, and the identification information of the second video application. Based on the identification information of the electronic device and the all-platform first video identification information, obtaining the first playback progress through a second correspondence relationship. In this way, the playback record server can provide the query function of the playback record for the electronic device based on the identification information of the electronic device and the all-platform identification information, so that the electronic device implements the resume service across the video operation platforms.
[0028] In a possible implementation, based on the playback progress information, saving the first playback progress of the first video played by the electronic device includes: based on the first key frame of the first video, determining the all-platform first video identification information through a fourth correspondence relationship, the fourth correspondence relationship including a correspondence relationship between the all-platform first video identification information and any key frame of the first video. Saving a fifth correspondence relationship among the all-platform first video identification information, the identification information of the electronic device, and the first playback progress. In this way, the playback record server can generate an all-platform identification information for each video content, to uniquely identify the video content. The playback record server can record the correspondence relationship between the all-platform identification information and the video key frame, so as to find the all-platform identification information of the video content, that is, find the corresponding video content, based on the key frame of the video reported by the electronic device, in response to the query request of the electronic device. The correspondence relationship between the identification information of the electronic device and the all-platform identification information is recorded, to record the association relationship between the electronic device and the playback progress of the video content, so as to provide the recording function of the video playback progress across the video operation platforms for the electronic device.
[0029] In a possible implementation, the playback progress query request message includes the identification information of the electronic device and the second key frame of the first video.
[0030] In a possible implementation, the first key frame is any key frame before the first playback progress, and the second key frame is any key frame in the first video.
[0031] In a possible implementation, based on the playback progress query request message, it is determined that the playback progress corresponding to the first video to be played by the second video application in the electronic device is the first playback progress, including: determining the full-platform first video identifier information based on the second key frame of the first video through the fourth corresponding relationship; and obtaining the first playback progress based on the identifier information of the electronic device and the full-platform first video identifier information through the fifth corresponding relationship. In this way, the playback record server can provide the query function of the playback record for the electronic device based on the identifier information of the electronic device and the full-platform identifier information, so that the electronic device implements the continuous playback service across the video operation platforms.
[0032] In a third aspect, the present application provides a playback device. The device is applied to an electronic device, and the electronic device includes a first video application and a second video application. The first video application belongs to a first video operation platform, and the second video application belongs to a second video operation platform. The device includes: a playback record processing module, configured to obtain a first playback progress corresponding to the end of the playback of a first video when the first video application ends the playback of the first video; and a communication module, configured to send playback progress information to a playback record server, the playback progress information being used to indicate the first playback progress of the first video played in the electronic device; and the communication module is further configured to obtain the first playback progress from the playback record server in response to a received first operation, so that the second video application starts playing the first video from the first playback progress.
[0033] In a possible implementation, the playback progress information includes: the identifier information of the electronic device, the identifier information of the first video application, the identifier information of the first video in the first video operation platform, and the first playback progress.
[0034] In a possible implementation, the playback progress information includes: the identifier information of the electronic device, the first key frame of the first video, and the first playback progress.
[0035] In a possible implementation, the communication module is specifically configured to: in response to the received first operation, send a playback progress query request message to the playback record server, the playback progress query request message being used to request the playback progress of the first video played in the electronic device, the playback progress query request including the identifier information of the electronic device, the identifier information of the second video application, and the identifier information of the first video in the second video operation platform; and receive a playback progress query response message sent by the playback record server, the playback progress query response message being used to indicate the first playback progress.
[0036] In a possible implementation, the communication module is specifically configured to: in response to the received first operation, send a play progress query request message to the play record server, the play progress query request message being used to request a play progress of the first video in the electronic device, the play progress query request comprising identification information of the electronic device and a second key frame of the first video; and receive a play progress query response message sent by the play record server, the play progress query response message being used to indicate the first play progress.
[0037] In a possible implementation, the first key frame is an arbitrary key frame before the first play progress, and the second key frame is an arbitrary key frame in the second video.
[0038] In a possible implementation, the play record module is configured to: in response to a first operation of searching for the first video in a search interface being received, display a search result, and obtain the first play progress from the play record server, the search result comprising a search control of the first video application and a search control of the second video application.
[0039] In a possible implementation, the play record module is further configured to: in response to a second operation of clicking the search control of the second video application being received, cause the second video application to play the first video from the first play progress.
[0040] In a fourth aspect, the present application provides a play device applied to a play record server, the device comprising: a communication module configured to receive play progress information sent by an electronic device, the play progress information being used to indicate a first play progress of a first video played by a first video application in the electronic device; and a play record management module configured to save the first play progress of the first video played by the electronic device based on the play progress information. The communication module is further configured to receive a play progress query request message sent by the electronic device, the play progress query request message being used to request a play progress corresponding to the first video to be played by a second video application in the electronic device; wherein the first video application belongs to a first video operation platform, the second video application belongs to a second video operation platform, and identification information of the first video in the first video operation platform is different from identification information of the first video in the second video operation platform. The play record management module is further configured to determine that the play progress corresponding to the first video to be played by the second video application in the electronic device is the first play progress based on the play progress query request message. The communication module is further configured to send a play progress query response message to the electronic device, the play progress query response message being used to indicate the first play progress.
[0041] In a possible implementation, the play progress information comprises: identification information of the electronic device, identification information of the first video application, identification information of the first video in the first video operation platform, and the first play progress.
[0042] In a possible implementation, the playback progress information includes: identification information of the electronic device, a first key frame of the first video, and the first playback progress.
[0043] In a possible implementation, the playback record management module is specifically configured to: determine the all-platform first video identification information based on the identification information of the first video in the first video operation platform and the identification information of the first video application, by using a first correspondence relationship, the first correspondence relationship including a correspondence relationship among the all-platform first video identification information, the identification information of the first video in the first video operation platform, and the identification information of the first video application. Save a second correspondence relationship among the all-platform first video identification information, the identification information of the electronic device, and the first playback progress.
[0044] In a possible implementation, the playback progress query request message includes the identification information of the electronic device, the identification information of the second video application, and the identification information of the first video in the second video operation platform.
[0045] In a possible implementation, the playback record management module is specifically configured to: determine the all-platform first video identification information based on the identification information of the first video in the second video operation platform and the identification information of the second video application, by using a third correspondence relationship, the third correspondence relationship including a correspondence relationship among the all-platform first video identification information, the identification information of the first video in the second video operation platform, and the identification information of the second video application; and obtain the first playback progress based on the identification information of the electronic device and the all-platform first video identification information, by using a second correspondence relationship.
[0046] In a possible implementation, the playback record management module is specifically configured to: determine the all-platform first video identification information based on the first key frame of the first video, by using a fourth correspondence relationship, the fourth correspondence relationship including a correspondence relationship between the all-platform first video identification information and any key frame of the first video; and save a fifth correspondence relationship among the all-platform first video identification information, the identification information of the electronic device, and the first playback progress.
[0047] In a possible implementation, the playback progress query request message includes the identification information of the electronic device and the second key frame of the first video.
[0048] In a possible implementation, the first key frame is any key frame before the first playback progress, and the second key frame is any key frame in the first video.
[0049] In a possible implementation, the playback record management module is specifically configured to: determine the all-platform first video identification information based on the second key frame of the first video, by using the fourth correspondence relationship; and obtain the first playback progress based on the identification information of the electronic device and the all-platform first video identification information, by using the fifth correspondence relationship.
[0050] In a fifth aspect, the present application provides an electronic device, comprising: one or more processors, a memory, and one or more computer programs, wherein the one or more computer programs are stored in the memory and, when executed by the one or more processors, cause the electronic device to perform the method of the first aspect or any possible implementation of the first aspect.
[0051] In a sixth aspect, the present application provides a server, comprising: one or more processors, a memory, and one or more computer programs, wherein the one or more computer programs are stored in the memory and, when executed by the one or more processors, cause the server to perform the method of the second aspect or any possible implementation of the second aspect.
[0052] In a seventh aspect, the present application provides a computer storage medium, comprising computer instructions, when the computer instructions are run on an electronic device, cause the electronic device to perform the method of the first aspect or any possible implementation of the first aspect.
[0053] In an eighth aspect, the present application provides a computer storage medium, comprising computer instructions, when the computer instructions are run on a server, cause the server to perform the method of the second aspect or any possible implementation of the second aspect.
[0054] In a ninth aspect, the present application provides a computer program product, when the computer program product is run on an electronic device, cause the electronic device to perform the method of the first aspect or any possible implementation of the first aspect.
[0055] In a tenth aspect, the present application provides a computer program product, when the computer program product is run on a server, cause the server to perform the method of the second aspect or any possible implementation of the second aspect.
[0056] In an eleventh aspect, the present application provides a chip, comprising a processing circuit, a transceiving pin. Wherein the transceiving pin and the processing circuit communicate with each other through an internal connection path, the processing circuit executes the method in the first aspect or any possible implementation of the first aspect to control the receiving pin to receive a signal and control the sending pin to send a signal.
[0057] In a twelfth aspect, the present application provides a chip, comprising a processing circuit, a transceiving pin. Wherein the transceiving pin and the processing circuit communicate with each other through an internal connection path, the processing circuit executes the method in the second aspect or any possible implementation of the second aspect to control the receiving pin to receive a signal and control the sending pin to send a signal.
[0058] In a thirteenth aspect, an embodiment of the present application provides a video playing system, which comprises the electronic device and the playing record server according to the first aspect and the second aspect. BRIEF DESCRIPTION OF DRAWINGS
[0059] FIG. 1 is a schematic diagram of an application scenario;
[0060] FIG. 2 is a schematic diagram of a hardware structure of an electronic device;
[0061] FIG. 3 is a schematic diagram of a software structure of an electronic device;
[0062] FIG. 4 is a schematic diagram of a software structure of a playing record server;
[0063] FIG. 5 is a schematic diagram of a user interface;
[0064] FIG. 6 is a schematic diagram of a user interface;
[0065] FIG. 7 is a schematic diagram of a playing method flow;
[0066] FIG. 8 is a schematic diagram of a playing method flow;
[0067] FIG. 9 is a schematic diagram of a user interface;
[0068] FIG. 10 is a schematic diagram of module interaction;
[0069] FIG. 11 is a schematic diagram of a playing progress record flow;
[0070] FIG. 12 is a schematic diagram of a full-platform video corresponding relationship structure;
[0071] FIG. 13 is a schematic diagram of a user interface;
[0072] FIG. 14 is a schematic diagram of module interaction;
[0073] FIG. 15 is a schematic diagram of a playing progress record flow;
[0074] FIG. 16 is a schematic diagram of a playing method flow;
[0075] FIG. 17 is a schematic diagram of module interaction;
[0076] FIG. 18 is a schematic diagram of a playing progress record flow;
[0077] FIG. 19 is a schematic diagram of a full-platform video corresponding relationship structure;
[0078] FIG. 20 is a schematic diagram of module interaction;
[0079] FIG. 21 is a schematic diagram of an example of a playing progress recording process;
[0080] FIG. 22 is a schematic diagram of an example of a user interface;
[0081] FIG. 23 is a schematic diagram of an example of a device structure. DETAILED DESCRIPTION
[0082] The technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the accompanying drawings in the embodiments of the present application.
[0083] FIG. 1 is a schematic diagram of an application scenario provided by the embodiments of the present application, please refer to FIG. 1, the application scenario includes but is not limited to: at least one electronic device, a playing record server (which can also be referred to as a server), at least one video operation platform server. In the scenario shown in FIG. 1, the video operation platform server includes a first video operation platform server and a second video operation platform server.
[0084] In the embodiments of the present application, the electronic device is a mobile phone for illustration, the playing method in the embodiments of the present application can also be applied to a television, a tablet, a computer, a wearable electronic device, a smart home device (such as a projector, etc.), a vehicle-mounted device, etc. electronic device with multimedia playing function, the present application does not make limitation.
[0085] The provider of the playing record server in the embodiments of the present application can be the same provider as the electronic device, can also be a server provided by the video operation platform and independent of the video operation platform server, and can also be provided by other third parties, which is not limited by the present application.
[0086] Still referring to FIG. 1, the electronic device, the playing record server, the first video operation platform server and the second video operation platform server communicate with each other, and the playing record server, the first video operation platform server, the second video operation platform server and the electronic device communicate with each other.
[0087] It should be noted that in actual application, the number of electronic devices, playing record servers and video operation platform servers can be one or more, and the number of devices in the application scenario shown in FIG. 1 is only an example, which is not limited by the present application. Alternatively, the servers corresponding to each operation platform can be independent servers or server clusters (i.e. including multiple servers), which is not limited by the present application.
[0088] FIG. 2 shows a structural schematic diagram of the electronic device 100. It should be understood that the electronic device 100 shown in FIG. 2 is only an example of the electronic device, and the electronic device 100 can have more or fewer components than those shown in the figure, can combine two or more components, or can have a different component configuration. The various components shown in FIG. 2 can be implemented in hardware, software, or a combination of hardware and software including one or more signal processing and / or application-specific integrated circuits.
[0089] The electronic device 100 can include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headset interface 170D, a sensor module 180, a key 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 can include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.
[0090] The processor 110 can include one or more processing units, for example: the processor 110 can include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Different processing units can be independent devices, or can be integrated in one or more processors.
[0091] The controller can be the nerve center and command center of the electronic device 100. The controller can generate operation control signals according to instruction operation codes and timing signals, and complete the control of fetching and executing instructions.
[0092] The processor 110 can also be provided with a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory can hold instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to use the instructions or data again, it can be directly called from the memory. This avoids repeated access and reduces the waiting time of the processor 110, thereby improving the efficiency of the system.
[0093] In some embodiments, the processor 110 can include one or more interfaces. The interfaces can include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.
[0094] The I2C interface is a bidirectional synchronous serial bus, including a serial data line (SDA) and a serial clock line (SCL). In some embodiments, the processor 110 can contain multiple sets of I2C buses. The processor 110 can be coupled to the touch sensor 180K, the charger, the flash, the camera 193, etc. through different I2C bus interfaces respectively. For example: the processor 110 can be coupled to the touch sensor 180K through the I2C interface, so that the processor 110 and the touch sensor 180K communicate through the I2C bus interface, realizing the touch function of the electronic device 100.
[0095] The I2S interface can be used for audio communication. In some embodiments, the processor 110 can include multiple sets of I2S buses. The processor 110 can be coupled with the audio module 170 through the I2S buses to enable communication between the processor 110 and the audio module 170. In some embodiments, the audio module 170 can deliver audio signals to the wireless communication module 160 through the I2S interface to enable the function of answering a phone call through a Bluetooth earphone.
[0096] The PCM interface can also be used for audio communication to sample, quantize, and encode analog signals. In some embodiments, the audio module 170 can be coupled with the wireless communication module 160 through a PCM bus interface. In some embodiments, the audio module 170 can also deliver audio signals to the wireless communication module 160 through the PCM interface to enable the function of playing music through a Bluetooth earphone. Both the I2S interface and the PCM interface can be used for audio communication.
[0097] The UART interface is a universal serial bus for asynchronous communication. The bus can be a bidirectional communication bus. It converts data to be transmitted between serial communication and parallel communication. In some embodiments, the UART interface is usually used to connect the processor 110 and the wireless communication module 160. For example, the processor 110 communicates with the Bluetooth module in the wireless communication module 160 through the UART interface to enable Bluetooth functionality. In some embodiments, the audio module 170 can deliver audio signals to the wireless communication module 160 through the UART interface to enable the function of playing music through a Bluetooth earphone.
[0098] The MIPI interface can be used to connect the processor 110 and peripheral devices such as the display screen 194 and the camera 193. The MIPI interface includes a camera serial interface (CSI), a display serial interface (DSI), and the like. In some embodiments, the processor 110 and the camera 193 communicate through the CSI interface to enable the camera function of the electronic device 100. The processor 110 and the display screen 194 communicate through the DSI interface to enable the display function of the electronic device 100.
[0099] The GPIO interface can be configured through software. The GPIO interface can be configured as a control signal or as a data signal. In some embodiments, the GPIO interface can be used to connect the processor 110 and the camera 193, the display screen 194, the wireless communication module 160, the audio module 170, the sensor module 180, and the like. The GPIO interface can also be configured as an I2C interface, an I2S interface, a UART interface, a MIPI interface, and the like.
[0100] The USB interface 130 is an interface conforming to the USB standard specification, and can be a Mini USB interface, a Micro USB interface, a USB Type C interface, etc. The USB interface 130 can be used to connect a charger to charge the electronic device 100, and can also be used to transmit data between the electronic device 100 and a peripheral device. It can also be used to connect a headset to play audio through the headset. The interface can also be used to connect other electronic devices, such as AR devices, etc.
[0101] It can be understood that the interface connection relationship between the modules shown in the embodiments of the present application is only illustrative and does not constitute a structural limitation on the electronic device 100. In some other embodiments of the present application, the electronic device 100 can also use different interface connection modes or combinations of multiple interface connection modes in the above embodiments.
[0102] The charging management module 140 is used to receive charging input from a charger. The charger can be a wireless charger or a wired charger. In some wired charging embodiments, the charging management module 140 can receive charging input from a wired charger through the USB interface 130. In some wireless charging embodiments, the charging management module 140 can receive wireless charging input through the wireless charging coil of the electronic device 100. The charging management module 140 can charge the battery 142 while also supplying power to the electronic device through the power management module 141.
[0103] The power management module 141 is used to connect the battery 142, the charging management module 140, and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140 to supply power to the processor 110, the internal memory 121, the external memory, the display screen 194, the camera 193, and the wireless communication module 160, etc. The power management module 141 can also be used to monitor parameters such as battery capacity, battery cycle count, battery health status (leakage, impedance), etc. In some other embodiments, the power management module 141 can also be disposed in the processor 110. In some other embodiments, the power management module 141 and the charging management module 140 can also be disposed in the same device.
[0104] The wireless communication function of the electronic device 100 can be realized through the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor, and the baseband processor, etc.
[0105] The antenna 1 and the antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in the electronic device 100 can be used to cover a single or multiple communication frequency bands. Different antennas can also be multiplexed to improve the utilization rate of the antennas. For example, the antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in combination with a tuning switch.
[0106] The mobile communication module 150 can provide a solution for wireless communication including 2G / 3G / 4G / 5G, etc. applied to the electronic device 100. The mobile communication module 150 can include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves by the antenna 1, and perform filtering, amplification, etc. on the received electromagnetic waves, and transfer the same to the modem processor for demodulation. The mobile communication module 150 can also amplify signals modulated by the modem processor, and radiate the same as electromagnetic waves through the antenna 1. In some embodiments, at least part of the functional modules of the mobile communication module 150 can be disposed in the processor 110. In some embodiments, at least part of the functional modules of the mobile communication module 150 can be disposed in the same device as at least part of the modules of the processor 110.
[0107] The modem processor can include a modulator and a demodulator. The modulator is configured to modulate a low-frequency baseband signal to be transmitted into a medium-high frequency signal. The demodulator is configured to demodulate a received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. The low-frequency baseband signal processed by the baseband processor is transmitted to the application processor. The application processor outputs a sound signal through an audio device (not limited to the speaker 170A, the microphone 170B, etc.), or displays an image or a video through the display screen 194. In some embodiments, the modem processor can be a separate device. In other embodiments, the modem processor can be independent of the processor 110, and disposed in the same device as the mobile communication module 150 or other functional modules.
[0108] The wireless communication module 160 can provide a solution for wireless communication including wireless local area networks (WLAN) (e.g., wireless fidelity (Wi-Fi) network), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR) technology, etc. applied to the electronic device 100. The wireless communication module 160 can be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives an electromagnetic wave via the antenna 2, frequency-modulates and filters the electromagnetic wave signal, and transmits the processed signal to the processor 110. The wireless communication module 160 can also receive a signal to be transmitted from the processor 110, frequency-modulate it, amplify it, and radiate it as an electromagnetic wave via the antenna 2.
[0109] In some embodiments, the antenna 1 and the mobile communication module 150 of the electronic device 100 are coupled, and the antenna 2 and the wireless communication module 160 are coupled, so that the electronic device 100 can communicate with a network and other devices through wireless communication technology. The wireless communication technology can include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), wideband code division multiple access (WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technology, etc. The GNSS can include a global positioning system (GPS), a global navigation satellite system (GLONASS), a beidou navigation satellite system (BDS), a quasi-zenith satellite system (QZSS), and / or a satellite based augmentation systems (SBAS).
[0110] The electronic device 100 implements a display function through a GPU, a display screen 194, and an application processor, etc. The GPU is a microprocessor for image processing, which is connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 110 can include one or more GPUs, which execute program instructions to generate or change display information.
[0111] The display screen 194 is configured to display images, videos, and the like. The display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flex light-emitting diode (FLED), a Miniled, a MicroLed, a Micro-oLed, a quantum dot light emitting diodes (QLED), or the like. In some embodiments, the electronic device 100 can include one or N display screens 194, where N is a positive integer greater than 1.
[0112] The electronic device 100 can implement the photographing function through the ISP, the camera 193, the video codec, the GPU, the display screen 194, and the application processor.
[0113] The ISP is configured to process the data fed back by the camera 193. For example, when taking a photo, the shutter is opened, the light is transmitted to the camera photosensitive element through the lens, the light signal is converted into an electrical signal, and the camera photosensitive element transmits the electrical signal to the ISP for processing to convert it into an image visible to the naked eye. The ISP can also optimize the noise, brightness, and skin color of the image. The ISP can also optimize the exposure, color temperature, and other parameters of the shooting scene. In some embodiments, the ISP can be disposed in the camera 193.
[0114] The camera 193 is configured to capture still images or videos. An object generates an optical image through a lens and projects it onto a photosensitive element. The photosensitive element can be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the light signal into an electrical signal, which is then transmitted to the ISP to convert it into a digital image signal. The ISP outputs the digital image signal to the DSP for processing. The DSP converts the digital image signal into an image signal in a standard RGB, YUV, or the like format. In some embodiments, the electronic device 100 can include one or N cameras 193, where N is a positive integer greater than 1.
[0115] The digital signal processor is used to process digital signals, in addition to being able to process digital image signals, it can also process other digital signals. For example, when the electronic device 100 selects a frequency point, the digital signal processor is used to perform Fourier transform on the frequency point energy, etc.
[0116] The video codec is used to compress or decompress digital video. The electronic device 100 can support one or more video codecs. In this way, the electronic device 100 can play or record videos in multiple encoding formats, such as: moving picture experts group (MPEG) 1, MPEG 2, MPEG 3, MPEG 4, etc.
[0117] The NPU is a neural-network (NN) calculation processor, which can quickly process input information by drawing on the structure of a biological neural network, such as drawing on the transmission mode between human brain neurons, and can also constantly self-learn. Through the NPU, the electronic device 100 can realize intelligent cognition applications such as image recognition, face recognition, voice recognition, text understanding, etc.
[0118] The external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device 100. The external memory card communicates with the processor 110 through the external memory interface 120 to realize data storage functions. For example, music, video, etc. Files are saved in the external memory card.
[0119] The internal memory 121 can be used to store computer executable program codes, which include instructions. The processor 110 executes various function applications and data processing of the electronic device 100 by running the instructions stored in the internal memory 121. The internal memory 121 can include a program storage area and a data storage area. The program storage area can store an operating system, at least one application program required by a function (such as a sound playing function, an image playing function, etc.), etc. The data storage area can store data created during the use of the electronic device 100 (such as audio data, a phone book, etc.), etc. In addition, the internal memory 121 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, a universal flash memory (UFS), etc.
[0120] The electronic device 100 can realize audio functions through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the earphone interface 170D, and the application processor, etc. For example, music playing, recording, etc.
[0121] The audio module 170 is configured to convert digital audio information into an analog audio signal output, and to convert an analog audio input into a digital audio signal. The audio module 170 can also be configured to encode and decode audio signals. In some embodiments, the audio module 170 can be disposed in the processor 110, or some functional modules of the audio module 170 can be disposed in the processor 110.
[0122] The software system of the electronic device 100 can adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture. Embodiments of the present application take an Android system with a layered architecture as an example to illustrate the software structure of the electronic device 100.
[0123] FIG. 3 is a software structure block diagram of the electronic device 100 according to an embodiment of the present application.
[0124] The layered architecture of the electronic device 100 divides software into several layers, each of which has a clear role and division of labor. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers, from top to bottom, the application layer (also known as the application program layer), the framework layer, the Android runtime and system library, and the kernel layer.
[0125] The application program layer can include a series of application packages.
[0126] As shown in FIG. 3, the application packages can include camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, first video, second video, short message, etc.
[0127] In embodiments of the present application, the video APPs (such as the first video application and the second video application) belong to different video operation platforms, i.e., the video APPs are application programs developed and published by the video operation platforms and can run independently on terminal devices. For example, the first video application is provided by a first video operation platform, and the second video application is provided by a second video operation platform.
[0128] In embodiments of the present application, the video APPs have functions such as obtaining video content data from the video operation platform server, providing user video content list browsing, and playing video content. For example, the first video application can perform data interaction with the first video operation platform through the electronic device to upload or obtain data, for example, the first video application can download videos from the first video operation platform server. Similarly, the second video application can perform data interaction with the second video operation platform through the electronic device to upload or obtain data, for example, the second video application can download videos from the second video operation platform server. The data interaction process between the video application and the video operation platform (i.e., the video operation platform server) can refer to prior art embodiments, and the present application will not be described in detail.
[0129] Optionally, when providing video content playing, the video APP usually provides user playing history record and the function of jumping to the last stop playing position for continuous playing according to the user's history record.
[0130] Optionally, in some instances, the electronic device can also include a plurality of video applications belonging to the same video operation platform, which is not limited in the present application.
[0131] In the embodiments of the present application, only the electronic device including the first video application and the second video application is taken as an example for description, and in other embodiments, the electronic device can also include more video applications, which is not limited in the present application.
[0132] The application framework layer provides application programming interface (API) and programming framework for the application of the application layer. The application framework layer includes some pre-defined functions.
[0133] As shown in FIG. 3, the application framework layer can include window manager, content provider, view system, playing record processing module, resource manager, notification manager, etc.
[0134] The window manager is used to manage window program. The window manager can acquire display screen size, judge whether there is status bar, lock screen, intercept screen, etc.
[0135] The content provider is used to store and acquire data, and make the data accessible by the application. The data can include video, image, audio, dialed and received phone, browsing history and bookmark, phone book, etc.
[0136] The view system includes visual control, such as control for displaying text, control for displaying picture, etc. The view system can be used to build application. The display interface can be composed of one or more views. For example, the display interface including short message notification icon can include view for displaying text and view for displaying picture.
[0137] The resource manager provides various resources for the application, such as localized string, icon, picture, layout file, video file, etc.
[0138] The notification manager enables applications to display notification information in the status bar, which can be used to convey alert-type messages that can automatically disappear after a brief stay without user interaction. For example, the notification manager is used to notify download completion, message reminders, etc. The notification manager can also be a notification that appears in the form of a figure or a scroll bar text in the top status bar of the system, such as a notification of a background running application, and can also be a notification that appears in the form of a dialog window on the screen. For example, the status bar prompts text information, emits a prompt sound, the electronic device vibrates, the indicator light flashes, etc.
[0139] The play record processing module is a functional module for providing play record reporting and query services for multiple video APPs. The play record processing module can be independently deployed on a terminal device in a single instance manner (for example, deployed in the framework layer of the electronic device as shown in FIG. 3), or can be integrated by each video APP in a multi-instance manner, that is, each video APP can include program code corresponding to the play record processing module in the corresponding computer program, and each video APP can execute the steps performed by the play record processing module in the embodiments of the present application by running the program code. In FIG. 3, a single instance manner is taken as an example for description, and the present application is not limited thereto.
[0140] For example, the play record processing module provides at least two interface services of play record reporting and play record query. When each video APP calls the interface service of the play record processing module, the related play progress information (for example, including identification information of the video application, key frames of the video, and / or identification information of the video, etc.) can be input to the play processing module to complete the play record reporting and query service. For specific implementation, please refer to the embodiments below.
[0141] The Android Runtime includes a core library and a virtual machine. The Android runtime is responsible for scheduling and managing the Android system.
[0142] The core library includes two parts: one part is the function function that the java language needs to call, and the other part is the core library of Android.
[0143] The application layer and the application framework layer run in the virtual machine. The virtual machine executes the java files of the application layer and the application framework layer into binary files. The virtual machine is used to manage the object lifecycle, stack management, thread management, security and exception management, and garbage collection.
[0144] The system library can include multiple functional modules. For example: surface manager, media library, three-dimensional graphics processing library (for example: OpenGL ES), 2D graphics engine (for example: SGL), etc.
[0145] The surface manager is used to manage the display subsystem and provides a fusion of 2D and 3D layers for multiple applications.
[0146] The media library supports playback and recording of a variety of commonly used audio, video formats, and static image files. The media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.
[0147] The three-dimensional graphics processing library is used to implement three-dimensional graphics drawing, image rendering, composition, and layer processing, etc.
[0148] The 2D graphics engine is a drawing engine for 2D drawing.
[0149] The kernel layer is a layer between hardware and software. The kernel layer at least includes display drivers, camera drivers, audio drivers, and sensor drivers.
[0150] It can be understood that the components included in the system framework layer, the system library, and the runtime layer shown in FIG. 3 do not constitute a specific limitation on the electronic device 100. In some other embodiments of the present application, the electronic device 100 can include more or fewer components than shown, or combine certain components, or split certain components, or different component arrangements.
[0151] FIG. 4 is a structural diagram of an exemplary playback record server. Referring to FIG. 4, the playback record server is used to perform cross-platform (i.e., between different video operation platforms) playback record processing (including recording (i.e., saving) and querying). The playback record server can include an application layer and a kernel layer (only for illustrative purposes, and the present application is not limited thereto). The application layer includes but is not limited to a playback record management module. The kernel layer includes but is not limited to a storage driver, etc.
[0152] For example, the playback record management module is used to respond to a playback record reporting request (which can also be referred to as a playback record saving request, a video progress record request, or a playback progress record request, etc., and the present application is not limited thereto) and a playback record querying request (which can also be referred to as a video progress querying request or a playback progress querying request, etc., and the present application is not limited thereto) sent by the electronic device, and manage the playback record of the electronic device, including saving the playback record and querying the playback record.
[0153] Exemplarily, the playing record management module maintains (i.e. performs saving, updating, deleting, querying, etc.) playing record corresponding relationship and all-platform video corresponding relationship. In the embodiment of the present application, each corresponding relationship is taken as an example in the form of a list, and in other embodiments, it can also be stored in other forms, which is not limited in the present application. Exemplarily, the playing record corresponding relationship is used to indicate the playing progress of each video content in the electronic device, and the playing record corresponding relationship includes but is not limited to the corresponding relationship among the identification information of the electronic device (referred to as DevID), the all-platform video identification information (referred to as AgVodID, which can also be referred to as aggregated content identification), and the video playing progress (which can also be referred to as playing progress).
[0154] In the embodiment of the present application, the playing record server establishes an association relationship between the content identification of the same video content in each video operation platform by assigning a unique aggregated content identification (i.e. all-platform video identification information (AgVodID)) to each video content. The all-platform video corresponding relationship is used to indicate the corresponding relationship between the all-platform video identification and the video content. In the embodiment of the present application, the video content can be represented by the identification information of the video application and the identification information of the video, or by the video key frame. Specifically, in the embodiment of the present application, the all-platform video corresponding relationship (which can also be referred to as cross-platform content relationship) includes but is not limited to the corresponding relationship among the all-platform video identification information, the identification information of the video application (referred to as AppID), and the identification information of the video (referred to as VodID), or the all-platform video corresponding relationship includes but is not limited to the corresponding relationship between the all-platform video identification information and the video key frame.
[0155] Optionally, the playing record corresponding relationship is saved as a playing record data table, and the data table is stored in a specified storage space (such as memory).
[0156] Optionally, the all-platform video corresponding relationship is saved as a cross-platform content relationship database, and the database is stored in a specified storage space.
[0157] In the embodiment of the present application, only the playing record reporting and querying of one electronic device are taken as an example for description, and in other embodiments, a plurality of electronic devices can be included in the system, and the playing record server can be used to process the playing record reporting and querying request of the plurality of electronic devices.
[0158] Currently, the video App of each video operation platform provides the ability of playing record management when providing playing service for users, that is, the position of the currently played video content of the user is recorded when playing is exited each time, and then the playing is continued from the position of the last playing termination when the user reopens the video content for playing next time. In order to persistently manage the playing record of the user, the video operation platform usually uploads the playing record to the server of the video operation platform for storage, and the user queries and continues playing from the server next time.
[0159] FIG. 5 is a schematic diagram of a user interface, please refer to (1) of FIG. 5, in this example, the user opens the first video application in the electronic device, and clicks to play video A in the first video application. The first video application will initiate a request to its server (for example, the first video operation platform server in FIG. 1) to obtain the playing data and playing record data of video A. When video A is played to progress-1, the user clicks to end playing video A, wherein the way of ending playing video A can be that the user clicks to play other video, or the user clicks to exit option to end playing video A, or the user closes the first video application to end playing video A, the above user operation types are only illustrative examples, the purpose is to end playing video A, the specific operation can be set according to actual demand, and the present application is not limited.
[0160] Please refer to (2) of FIG. 5, the user opens the second video application in the electronic device, and clicks to play video A in the second video application. The second video application will initiate a request to its server (for example, the second video operation platform server in FIG. 1) to obtain the playing data and playing record data of video A. Assuming that the progress of video A played in the second video application recorded in the server is progress-2, the second video application plays video A from progress-2.
[0161] Since the same video content is uploaded to different video operation platforms for operation, each video operation platform generates a corresponding VodID for different video content, and manages the playing progress of each electronic device based on the VodID, that is, the identification information of the same video content in each video operation platform is different. For example, in (1) of FIG. 5, the first video operation platform server generates VodID-1 for video A, and the second video operation platform generates VodID-2 for video A. The first video operation platform server can save the playing progress corresponding to each video application user account and VodID-1, and the second video operation platform server can save the playing progress corresponding to each video application user account and VodID-2. In this way, after the user logs in the video account in each video application and clicks to play video A, each video application can obtain the playing progress of video A corresponding to the user account and VodID from the corresponding server. Therefore, in the technical solution, if the user first selects the content of the first video operation platform for playing, exits in the middle, and then selects the same video content of the second video operation platform for playing the second time, the second video application cannot continue playing from the position where the user exits in the first video application. At this time, if the user is playing the content in the second video application for the first time, the second video application plays from the starting position of the video. If the user wants to continue playing from the position where the previous watching is terminated (i.e., the position where the playing in the first video application is ended), the user needs to drag the progress bar, which affects the user experience.
[0162] The present application provides a playing method, in which different video applications in an electronic device can realize cross-platform continuous playing, that is, the same video content can realize continuous playing in different video applications, and the user experience is improved. The cross-platform mentioned in the embodiments of the present application refers to the scenario that the identification information (i.e., VodID) of the same video content in different video operation platforms is different. Alternatively, the encoding format, resolution, etc. of the same video in different video operation platforms can be the same or different.
[0163] FIG. 6 is a schematic diagram of a user interface, please refer to (1) of FIG. 6. In the embodiments of the present application, the user plays video A in the first video application, and ends playing video A when the playing progress is progress-1. Then, the user clicks to play video A in the second video application (the second video application in the same electronic device), and the second video application continues to play video A from the position where the previous playing is ended, i.e., progress-1, to realize the continuous playing of the same video content in cross-platform video applications.
[0164] It should be noted that, in the embodiments of the present application, only the cross-platform continuation playing scenario between the first video application provided by the first video operation platform and the second video application provided by the second video operation platform is taken as an example for description, and the playing method in the embodiments of the present application can be applied to the cross-platform continuation playing scenario between three or more different video applications, for example, the third video application in the electronic device can also realize the continuation playing scenario of the second video application, and the present application will not be described one by one.
[0165] It should be further noted that, in the embodiments of the present application, only the video content video A is taken as an example for description, and the playing method in the embodiments of the present application can be applied to any video content, which is not limited by the present application.
[0166] It should be further noted that, in the embodiments of the present application, only the continuation playing scenario between video applications is taken as an example for description, and the playing method in the embodiments of the present application can also be applied to the continuation playing scenario between fast applications, programs, meta services and the like. For example, the playing method in the embodiments of the present application can be applied to the continuation playing of the same video content between the first video program and the second video program. For another example, the playing method in the embodiments of the present application can be applied to the continuation playing of the same video content between the first video meta service and the second video meta service. Of course, in some examples, the playing method in the embodiments of the present application can also be applied to the continuation playing scenario between different types of programs (or services), for example, the playing method in the embodiments of the present application can be applied to the continuation playing scenario of the same video content between the first video application, the second video program, the third meta service and the like. The specific implementation is the same as that of the continuation playing scenario between the first video application and the second video application, and the present application will not be described one by one.
[0167] It can be understood that the first video application in the embodiments of the present application can also be understood as an application program independently installed in the electronic device, or a fast application that can run on the electronic device or the middleware platform of the electronic device without installation, or a lightweight application program such as a program or a meta service, which is not limited by the present application.
[0168] FIG. 7 is a flowchart of the playing method, which is shown as an example, and specifically includes but is not limited to the following steps:
[0169] S701, the first video application receives the operation of the user clicking to exit playing the video A.
[0170] Exemplarily, during playing video A by the first video application, the electronic device receives an operation of a user clicking to quit playing (or ending playing) video A. The operation of ending playing video A can be that the user clicks (or performs a gesture such as swiping, which is not limited in the present application) to play another video, or that the user clicks an exit option to end playing video A, or that the user clicks (or swipes) to close the first video application to end playing video A. The above types of user operations are only exemplary and are intended to end playing video A. The specific operation can be set according to actual needs, and the present application is not limited.
[0171] The first video application ends playing video A in response to the operation of the user clicking to quit playing video A, and the first video application obtains the playing progress of video A when playing video A ends. The playing progress can be the playing time length of the video content of video A when playing video A ends. For example, the playing time length of video A is 10 minutes and 20 seconds, the first video application ends playing video A in response to the received user operation, and the playing progress of video A in the first video application of the electronic device is 10 minutes and 20 seconds. In the embodiments of the present application, the time length at the end of playing is taken as an example to illustrate the playing progress, and in other embodiments, the playing progress can also be in other forms, which is not limited in the present application, and will not be repeated in the following.
[0172] S702, the playing record processing module obtains the playing progress of video A.
[0173] Exemplarily, the first video application ends playing video A, and outputs the playing progress of video A to the playing record processing module to indicate that video A ends playing in the first video application, and the playing progress is the indicated playing progress. In the embodiments of the present application, the playing record processing module provides a playing record reporting interface and a playing record querying interface, and each video application can call the corresponding interface to obtain the corresponding service. Specifically, the first video application can call the playing record reporting interface to report the playing progress of video A in the first video application to the playing record processing module. The playing record processing module obtains the playing progress of video A when playing video A ends in the first video application through the playing record reporting interface.
[0174] S703, the electronic device sends the playing progress information to the playing record server.
[0175] Exemplarily, after the playing record processing module obtains the playing progress of video A in the first video application, the playing record processing module can send the playing progress information to the playing record server through other modules (such as a communication module) of the electronic device. The playing progress information is used to indicate the playing progress of video A in the first video application of the electronic device.
[0176] The playing record server saves the playing progress of video A in the electronic device.
[0177] S704, the second video application receives the user's action of clicking to play video A.
[0178] For example, a user clicks to play video A in a second video application, and the second video application receives the user's click to play video A.
[0179] S705, the second video application queries the playback record processing module for the playback progress of video A.
[0180] For example, in response to the received user operation, the second video application queries the playback record processing module for the playback progress of video A.
[0181] Specifically, the second video application calls the playback record query interface of the playback record processing module and sends a query request to the playback record processing module to request the playback progress of video A in the electronic device, which can also be understood as the playback progress of video A to be played by the second video application.
[0182] S706, the electronic device queries the playback record server for playback progress.
[0183] For example, the playback record processing module can send a query request message to the playback record server through other modules of the electronic device (such as a communication module) to query the playback progress of video A in the electronic device.
[0184] The playback record server can provide feedback on the playback progress of video A to the electronic device based on the previously saved playback progress of video A on the electronic device.
[0185] S707, the playback record processing module sends feedback on the playback progress of video A to the second video application.
[0186] For example, the playback record processing module obtains the playback progress of video A and sends the playback progress of video A to the second video application. The second video application then starts playing video A from this playback progress. This playback progress is the same as the playback progress at which the first video application finishes playing video A, thus enabling resume playback between video applications on different operating platforms.
[0187] In this embodiment, the first video application and the second video application belong to different video operating platforms. The identification information of video A in the first video operating platform is different from the identification information of video A in the second video operating platform. That is, this application can realize cross-platform video playback within the same electronic device.
[0188] Figure 8 is a schematic flowchart illustrating an exemplary playback method. The process in Figure 7 will be described in detail below with reference to Figure 8. Please refer to Figure 8, and the specific steps include, but are not limited to, the following:
[0189] S801a, the electronic device sends a video progress query request to the playback record server.
[0190] Figure 9 is an exemplary schematic diagram of a user interface. Referring to (1) of Figure 9, for example, the electronic device displays a first video application interface 901. The first video application interface 901 includes video controls corresponding to different video content. The video controls can be posters, etc., which are not limited in this application.
[0191] The user clicks control 902 on video A to instruct the first video application to play the video content corresponding to video A. The first video application receives the user's click on control 902 on video A and determines that the video to be played is video A.
[0192] The electronic device sends a video progress query request message (which may also be called a playback progress query request, but this application does not limit it) to the playback record server. The video progress query request message is used to query the playback progress of video A in the electronic device. The video progress query request message includes, but is not limited to: the identification information of video A, the identification information of the electronic device, and the identification information of the first video application.
[0193] S802, the playback record server queries the playback progress of video A on electronic device based on the video progress query request.
[0194] For example, the playback record receives a video progress query request message and queries the playback progress of video A on the electronic device based on the video progress query request message, which can also be understood as the playback progress of video A on the electronic device.
[0195] S801b, the playback record server sends a video progress query response.
[0196] For example, after the playback record server queries the playback progress of video A on the electronic device, it sends a video progress query response message to the electronic device, which includes the playback progress of video A (denoted as playback progress - 1). In this example, assuming that video A is being played for the first time on the electronic device, the playback progress - 1 returned by the playback record server represents the starting position of the video content of video A.
[0197] The steps in S801a, S802 and S803 are only briefly described here. To avoid repetition, the specific details will be explained in detail in S809a, S810 and S809b.
[0198] S803a, the electronic device sends a video playback request to the first video operation platform server.
[0199] For example, an electronic device sends a video playback request message to the first video operation platform server. The message includes, but is not limited to, the user account, the identification information of video A (VodID-A), and the playback progress -1. This message is used to indicate the retrieval of video content from playback progress -1 in video A. Specific interactions between the electronic device and the server can be found in existing technical embodiments; this application is only a brief description and will not elaborate further.
[0200] S804b, the first video operation platform server sends a video playback response to the electronic device.
[0201] For example, the first video operation platform server sends a video playback response message to the electronic device, the message including the video content (i.e. the corresponding image frame) of video A starting from the playback progress -1.
[0202] S805, the first video application plays video A (playback progress -1).
[0203] Please refer to Figure 9(2). For example, the first video application obtains the video content (i.e. the corresponding image frame) starting from the playback progress -1, and starts playing video A from the playback progress -1 (e.g., 00 minutes 00 seconds).
[0204] S806, the first video application has finished playing video A (playback progress -2).
[0205] Please refer to Figure 9(3). When video A reaches the playback progress -2 (for example, 40 minutes and 00 seconds), the user clicks the close button 903, and the electronic device receives the user's operation of clicking the close button 903.
[0206] Figure 10 is an exemplary schematic diagram of module interaction. Referring to Figure 10, in response to user operation, the first video application ends playback of video A and obtains the playback progress as playback progress -2. The first video application calls the playback record reporting interface of the playback record processing module to input playback record reporting information into the playback record processing module. The playback record reporting information is used to indicate the playback progress of video A in the first video application. The playback record reporting information includes, but is not limited to: the identification information of the first video application (denoted as AppID-1), the identification information of video A in the first video application (which can also be understood as the first video operation platform) (denoted as VodID-A), and the playback progress -2.
[0207] The playback record processing module obtains the playback record reporting information and acquires the identification information of the electronic device (denoted as DevID). Optionally, the identification information of the electronic device can be stored in other modules or memory space. The method by which the playback record processing module acquires the identification information of the electronic device can be set according to actual needs, and this application does not limit it.
[0208] S807, the electronic device sends a video progress recording request to the playback record server.
[0209] Referring again to Figure 10, the playback recording processing module can send a video progress recording request message to the playback recording server through the communication module of the electronic device. The video progress recording request message is used to indicate the playback progress of the recorded video A in the electronic device. The video progress recording request message includes, but is not limited to: the identification information of the electronic device (DevID), the identification information of the first video application (AppID-1), the identification information of video A in the first video application (VodID-A), and playback progress information such as playback progress-2.
[0210] S808, the playback record server saves the playback progress of video A on the electronic device based on the video progress record request.
[0211] For example, the playback record server receives a video progress recording request message and obtains the electronic device's identification information (DevID), the first video application's identification information (AppID-1), the video A's identification information in the first video application (VodID-A), and playback progress information such as -2. Based on the video progress recording request, the playback record server saves the playback progress of video A on the electronic device.
[0212] Figure 11 is an exemplary schematic diagram of the playback progress recording process. Please refer to Figure 11, which includes, but is not limited to, the following steps:
[0213] S1101, obtain DevID, AppID-1, VodID-A and playback progress.
[0214] For example, the playback record management module in the playback record server obtains playback progress information reported by the electronic device, including but not limited to: DevID, AppID, VodID, and playback progress. For instance, in this example, the playback progress information obtained by the playback record management module includes but is not limited to: the identification information of the electronic device (DevID), the identification information of the first video application (AppID-1), the identification information of video A in the first video application (VodID-A), and the playback progress -2.
[0215] S1102, based on AppID-1 and VodID-A, find AgVodID.
[0216] For example, the playback history management module determines the platform-wide video identification information (denoted as AgVodID) based on AppID-1 and VodID-A through the platform-wide video correspondence.
[0217] In this embodiment, the playback record server assigns a unique aggregated content identifier (i.e., platform-wide video identifier information (AgVodID)) to each video content, and uses AgVodID to establish an association between the content identifiers of the same video content on various operating platforms. The platform-wide video correspondence is used to indicate the correspondence between platform-wide video identifiers and video content. In this embodiment, video content can be represented by the identifier information of the video application and the identifier information of the video.
[0218] Figure 12 is an exemplary diagram of the cross-platform video correspondence structure. Referring to Figure 12, the cross-platform video correspondence (which can also be called cross-platform content relationship) includes, but is not limited to, the correspondence between cross-platform video identification information, video application identification information (AppID), and identification information (VodID) of the same video in the video application.
[0219] For example, as shown in Figure 12, video operation platforms 1 through N can all provide the video content of video A. The identifier for video A on the first video operation platform is VodID-A, and the identifier for video A on the second video operation platform is VodID-B, etc. The playback record server assigns a unique platform-wide video identifier, AgVodID, to video A. The generation method can be set according to actual needs, and this application does not impose any limitations. The playback record server stores the AgVodID, along with the identifiers of video A in each video application and their corresponding video application identifiers, in a cross-platform content relationship database.
[0220] In one possible implementation, before executing the playback method of this application, the playback record server first obtains the VodID corresponding to each video and the video metadata (such as video name, video description, episode number of the TV series, etc.) provided by each video operation platform. The playback record server performs similarity calculation on the video metadata through an algorithm (which can be set according to actual needs, and this application does not limit it) to group the VodIDs corresponding to multiple videos belonging to the same video content into a group and generate a corresponding AgVodID, that is, the data of the VodIDs of a video content in multiple operation platforms is associated through AgVodId. Figure 12 only shows the structural diagram of the correspondence of AgVodIDs corresponding to video A. The correspondence structure of other video content can be referred to video A, and this application will not provide examples for each one.
[0221] S1103 records playback progress based on AgVodID and DevID.
[0222] For example, after the playback record management module finds the AgVodID corresponding to video A, it can record (or save) the playback progress based on the AgVodID and DevID (i.e., the identification information of the electronic device).
[0223] Specifically, the playback history data table stores the identification information of the electronic device, the video identification information of the entire platform, and the correspondence between playback progress. The playback history management module uses AgVodID and DevID as keys to search the playback history data table to see if a correspondence between AgVodID and DevID already exists (also known as a correspondence table entry).
[0224] In one example, if no corresponding entry exists for AgVodID and DevID, the playback record management module creates a new corresponding entry in the playback progress data table, as shown in Table 1:
[0225] Table 1
[0226] For example, referring to Table 1, assuming the playback history management module finds AgVodID-3 corresponding to video A, and using AgVodID-3 and DevID as key-value pairs, the module searches the correspondence table and determines that no corresponding entry exists for AgVodID-3 and DevID. The playback history management module then creates new entries for AgVodID-3 and DevID in the correspondence table and records the playback progress as playback progress -2. That is, this entry indicates that on the electronic device identified by DevID, the playback progress of video A identified by AgVod-3 is playback progress -2. Table 1 only illustrates the example of an entry corresponding to one electronic device. The playback history management module can maintain entries corresponding to different electronic devices. Of course, different electronic devices can also be in the same list, which can be set according to actual needs; this application does not impose any limitations.
[0227] In another example, if a mapping table of AgVodID and DevID already exists, the corresponding playback progress in that table entry is updated.
[0228] S809a, the electronic device sends a video progress query request to the playback record server.
[0229] Figure 13 is an exemplary schematic diagram of a user interface. Referring to (1) of Figure 13, for example, the electronic device displays a second video application interface 1301. The second video application interface 1301 includes video controls corresponding to different video content. The video controls can be posters, etc., which are not limited in this application.
[0230] The user clicks control 1302 for video A to instruct the second video application to play the video content corresponding to video A. The second video application receives the user's click on control 1302 for video A and determines that the video to be played is video A.
[0231] Figure 14 is an exemplary schematic diagram of module interaction. Referring to Figure 14, in response to user operation, the second video application calls the playback record query interface of the playback record processing module and inputs playback progress query information into the playback record processing module. The playback progress query information is used to request the playback progress of video A in the electronic device, or it can be understood as requesting the playback progress of video A in the second video application. The playback progress query information includes, but is not limited to: the identification information of the second video application (denoted as AppID-2), and the identification information of video A in the second video application (which can also be understood as the second video operation platform) (denoted as VodID-B), etc.
[0232] Referring again to Figure 14, the playback record processing module obtains the playback progress query information and the identification information of the electronic device (denoted as DevID). Optionally, the identification information of the electronic device can be stored in other modules or memory space. The method by which the playback record processing module obtains the identification information of the electronic device can be set according to actual needs, and this application does not limit it.
[0233] The playback record processing module can send a video progress query request message to the playback record server via the electronic device's communication module. This message requests the playback progress of video A on the electronic device, or more specifically, the playback progress of video A within the electronic device's secondary video application. The video progress query request message includes, but is not limited to, the electronic device's identifier (DevID), the secondary video application's identifier (AppID-2), and the identifier of video A within the secondary video application (or secondary video operating platform) (VodID-B), among other playback progress query information.
[0234] S810, the playback record server queries the progress of video A on the electronic device based on the video progress query request.
[0235] Figure 15 is an exemplary schematic diagram of the playback progress recording process. Please refer to Figure 15, which includes, but is not limited to, the following steps:
[0236] S1501, obtain DevID, AppID-2 and VodID-B.
[0237] For example, the playback record management module in the playback record server obtains playback progress query information reported by the electronic device, including but not limited to: DevID, AppID, and VodID. For instance, in this example, the information obtained by the playback record management module includes but is not limited to: the identification information of the electronic device (DevID), the identification information of the second video application (AppID-2), and the identification information of video A in the second video application (VodID-B).
[0238] S1502, based on AppID-2 and VodID-B, look up AgVodID.
[0239] For example, the playback history management module determines the platform-wide video identifier information (denoted as AgVodID) based on AppID-2 and VodID-B through the platform-wide video correspondence. The lookup method can be found in S1102, and will not be repeated here.
[0240] S1503, based on AgVodID and DevID, queries playback progress.
[0241] For example, after the playback record management module finds the AgVodID corresponding to video A, it can query the playback progress based on the AgVodID and DevID (i.e., the identification information of the electronic device).
[0242] Specifically, the playback history data table stores the corresponding relationships between the electronic device's identification information, the video identification information across all platforms, and the playback progress. The playback history management module uses AgVodID and DevID as keys to look up the corresponding entries in the playback history data table. For example, in Table 1, the playback history management module, based on DevID and AgVodID (e.g., AgVodID-3), finds the corresponding playback progress as playback progress -2.
[0243] S809b, the playback record server sends a video progress query response to the electronic device.
[0244] For example, after the playback record server queries the playback progress of video A on the electronic device, it sends a video progress query response message to the electronic device, which includes the playback progress of video A (i.e., playback progress - 2).
[0245] S810a, the electronic device sends a video playback request to the second video operation platform server.
[0246] For example, the electronic device sends a video playback request message to the second video operation platform server. The message includes, but is not limited to, the user account, the identification information of video A (VodID-B), and the playback progress -2. This message is used to instruct the user to retrieve the video content of video A starting from playback progress -2. Specific interactions between the electronic device and the server can be found in existing technical embodiments; this application is only a brief description and will not elaborate further.
[0247] S810b, the second video operation platform server, sends video playback responses to electronic devices.
[0248] For example, the second video operation platform server sends a video playback response message to the electronic device, the message including the video content (i.e. the corresponding image frame) starting from the playback progress -2 in video A.
[0249] S811, the second video application plays video A (playback progress -2).
[0250] Please refer to Figure 13(2). For example, the second video application obtains the video content (i.e. the corresponding image frame) starting from the playback progress -2, and starts playing video A from the playback progress -2 (e.g., 40 minutes and 00 seconds).
[0251] In one possible implementation, the electronic device can display the buffer interface of video A before executing S810a. The content of the buffer interface can be set according to actual needs, and this application does not limit it. That is, the electronic device displays the buffer interface of video A before (2) in Figure 13. After the electronic device obtains the video content of video A, it can jump to the playback progress of video A-2 to start playback.
[0252] In another possible implementation, before (or simultaneously with, or after) executing S809a, the electronic device can obtain the playback progress position and subsequent video content recorded by the second video operation platform server. This could be starting from the beginning position or another position, which is not limited in this application. After obtaining the video content from the second video operation platform server, the electronic device can play the corresponding video content. After the electronic device executes S810b, the second video application can jump from the current playback position to the position corresponding to playback progress -2 to begin playback.
[0253] In another possible implementation, the electronic device can periodically execute a playback record reporting process (e.g., S807-S808) during video playback in a video application, for example, with an execution period of 1 minute (this can be set according to actual needs and is not limited in this application). In this way, even in scenarios where the video application crashes or abnormally exits, the playback record server can still record the playback progress of the video on the electronic device. Optionally, in this example, the playback progress recorded by the playback record server may have a time difference less than the reporting period (e.g., 1 minute) from the playback progress at the time of abnormal video exit. For example, if the electronic device reports a playback record when video A has played for 40 minutes and 00 seconds, the playback record server records the playback progress of video A on the electronic device as 40 minutes and 00 seconds. If the first video application abnormally exits at 40 minutes and 40 seconds, in this example, the playback progress recorded by the playback record server is 40 minutes and 00 seconds. If the user opens a second video application to continue playing video A, the second video application will obtain the playback record from the playback record server as 40 minutes and 00 seconds.
[0254] In this embodiment, the playback record server can also record and query the playback progress of the video on the electronic device based on the key frames of the video, which will be described below with specific embodiments.
[0255] Figure 16 is a schematic diagram of an exemplary playback method. Please refer to Figure 16, which includes, but is not limited to, the following steps:
[0256] S1601, the first video application has finished playing video A (playback progress -2).
[0257] For example, as shown in Figure 9(3), the first video application plays video A. When video A reaches the playback progress -2 (e.g., 40 minutes and 00 seconds), the user clicks the close button 903, and the electronic device receives the user's click of the close button 903. Other descriptions can be found in Figure 9 and will not be repeated here. The playback steps of the first video application before ending the playback of video A can be found in S1604a to S1608 and will not be repeated here.
[0258] Figure 17 is an exemplary schematic diagram of module interaction. Referring to Figure 17, in response to a user operation, the first video application ends playback of video A and obtains the playback progress as playback progress -2. The first video application calls the playback record reporting interface of the playback record processing module to input playback record reporting information to the playback record processing module. The playback record reporting information is used to indicate the playback progress of video A in the first video application. The playback record reporting information includes, but is not limited to: keyframes of the first video (e.g., keyframe -1) and playback progress -2, etc. Among them, the reported keyframe of the first video can be the most recent keyframe before playback progress -2. In some examples, the reported keyframe of the first video can also be any keyframe before playback progress -2, which is not limited in this application.
[0259] The playback record processing module obtains the playback record reporting information and the identification information of the electronic device (denoted as DevID). For example, the playback record processing module processes keyframe-1 to obtain the feature data corresponding to keyframe-1, denoted as FFi-1.
[0260] Optionally, the identification information of the electronic device can be stored in other modules or memory space. The method by which the playback record processing module obtains the identification information of the electronic device can be set according to actual needs, and this application does not limit it.
[0261] S1602, the electronic device sends a video progress recording request to the playback recording server.
[0262] Referring again to Figure 17, the playback recording processing module can send a video progress recording request message to the playback recording server through the communication module of the electronic device. The video progress recording request message is used to indicate the playback progress of the recorded video A in the electronic device. The video progress recording request message includes, but is not limited to: the identification information (DevID) of the electronic device, the key frame (FFi-1) of the first video, and playback progress information such as playback progress-2.
[0263] S1603, The playback record server saves the playback progress of video A on the electronic device based on the video progress record request.
[0264] For example, the playback record server receives a video progress recording request message and obtains the electronic device's identification information (DevID), the first video application's identification information (AppID-1), the video A's identification information in the first video application (VodID-A), and playback progress information such as -2. Based on the video progress recording request, the playback record server saves the playback progress of video A on the electronic device.
[0265] Figure 18 is an exemplary schematic diagram of the playback progress recording process. Please refer to Figure 18, which includes, but is not limited to, the following steps:
[0266] S1801, obtain DevID, Fi-1 and playback progress -2.
[0267] For example, the playback record management module in the playback record server obtains playback progress information reported by the electronic device, including but not limited to: DevID, Fi-1, and playback progress-2.
[0268] S1802, based on FFi-1, look up AgVodID.
[0269] For example, the playback record management module is based on Fi-1 and determines the video identification information (denoted as AgVodID) across the entire platform through the video correspondence across the entire platform.
[0270] Figure 19 is an exemplary diagram of the cross-platform video correspondence structure. Referring to Figure 19, in this embodiment of the application, the playback record server maintains a list of feature data of key frames of the same video content in the time series, where FFi and Ti are the feature data and time axis data of the i-th key frame in the time series of the video content, respectively, and AgVodId is used to uniquely identify the video content.
[0271] Specifically, the correspondence between videos across all platforms (which can also be called cross-platform content relationships) includes, but is not limited to: the correspondence between video identification information across all platforms, the feature data of each keyframe of the video (e.g., FFi1~FFin), and the time corresponding to each keyframe (e.g., T1~Tn).
[0272] In one possible implementation, before executing the playback method of this application, the playback record server can obtain the feature data and corresponding time of all keyframes in each video. The feature data extraction algorithm can refer to existing technologies, and this application is not limited thereto. The playback record management module generates an AgVodID for each video content and establishes a correspondence between the AgVodID and all keyframe feature data and time of the corresponding video content.
[0273] S1803 records playback progress based on AgVodID and DevID.
[0274] For specific details, please refer to S1103, which will not be repeated here.
[0275] S1604a, the electronic device sends a video playback request to the second video operation server.
[0276] S1604b, the second video operation server sends a video playback response to the electronic device.
[0277] For example, referring to (1) of Figure 13, the electronic device displays a second video application interface 1301. The user clicks the control 1302 of video A to instruct the second video application to play the video content corresponding to video A. The second video application receives the user's click on the control 1302 of video A and determines that the video to be played is video A. For the descriptive part, please refer to Figure 13, which will not be repeated here.
[0278] The second video application can send a video playback request to the second video operation server. This request may include user information of the second video application. The second video operation server can query the locally recorded playback progress and send a video playback response message to the electronic device. This message includes the video content (i.e., image frames) after the start of the playback progress recorded by the second video operation server. Optionally, the playback progress recorded by the operation server can also be set to a default value, such as the starting position; this application does not impose any limitations on this.
[0279] The second video application obtains the video stream corresponding to the video content and can play the video stream within the second video application. Optionally, the second video application may also display a buffering interface; this application does not impose any limitations on this.
[0280] S1605a, the electronic device sends a video progress query request to the playback record server.
[0281] Figure 20 is an exemplary schematic diagram of module interaction. Referring to Figure 20, in response to user operation, the second video application calls the playback record query interface of the playback record processing module, inputting playback progress query information into the playback record processing module. This playback progress query information is used to request the playback progress of video A on the electronic device, or in other words, to request the playback progress of video A in the second video application. The playback progress query information includes, but is not limited to, one or more keyframes of video A. This can be understood as follows: after obtaining the video stream from the second video operation platform server, the second video application can obtain one or more keyframes from the video stream for playback record querying. This example only uses keyframe-2 as an example.
[0282] Referring again to Figure 20, the playback record processing module obtains the playback progress query information and the identification information of the electronic device (denoted as DevID). For example, the playback record processing module processes keyframe-2 to obtain the feature data corresponding to keyframe-2, denoted as Fi-2. Optionally, the identification information of the electronic device can be stored in other modules or memory space. The method by which the playback record processing module obtains the identification information of the electronic device can be set according to actual needs, and this application does not limit it.
[0283] The playback record processing module can send a video progress query request message to the playback record server via the electronic device's communication module. This message requests the playback progress of video A on the electronic device; it can also be understood as requesting the playback progress of video A in the electronic device's secondary video application. The video progress query request message includes, but is not limited to, the electronic device's identification information (DevID), the feature data Fi-2 corresponding to keyframe-2, and other playback progress query information.
[0284] S1606, Based on the video progress query request, query the playback progress of video A on the electronic device.
[0285] Figure 21 is an exemplary schematic diagram of the playback progress recording process. Please refer to Figure 21, which includes, but is not limited to, the following steps:
[0286] S2101, obtain DevID and Fi-2.
[0287] For example, the playback record management module in the playback record server obtains playback progress query information reported by electronic devices, including but not limited to: DevID and Fi-2.
[0288] S2102, based on AppID-2 and VodID-B, find AgVodID.
[0289] For example, the playback history management module is based on Fi-2 and determines the platform-wide video identifier information (denoted as AgVodID) through the platform-wide video correspondence. The lookup method can be referred to above, and will not be repeated here.
[0290] S2103, based on AgVodID and DevID, queries playback progress.
[0291] For example, after the playback record management module finds the AgVodID corresponding to video A, it can query the playback progress based on the AgVodID and DevID (i.e., the identification information of the electronic device).
[0292] Specifically, the playback history data table stores the corresponding relationships between the electronic device's identification information, the video identification information across all platforms, and the playback progress. The playback history management module uses AgVodID and DevID as keys to look up the corresponding entries in the playback history data table. For example, in Table 1, the playback history management module, based on DevID and AgVodID (e.g., AgVodID-3), finds the corresponding playback progress as playback progress -2.
[0293] S1605b, the playback record server sends a video progress query response to the electronic device.
[0294] For example, after the playback record server queries the playback progress of video A on the electronic device, it sends a video progress query response message to the electronic device, which includes the playback progress of video A (i.e., playback progress - 2).
[0295] S1607a, the electronic device sends a video playback request to the second video operation platform server.
[0296] For example, the electronic device sends a video playback request message to the second video operation platform server. The message includes, but is not limited to, the user account, the identification information of video A (VodID-B), and the playback progress -2. This message is used to instruct the user to retrieve the video content of video A starting from playback progress -2. Specific interactions between the electronic device and the server can be found in existing technical embodiments; this application is only a brief description and will not elaborate further.
[0297] S1607b, the second video operation platform server sends a video playback response to the electronic device.
[0298] For example, the second video operation platform server sends a video playback response message to the electronic device, the message including the video content (i.e. the corresponding image frame) starting from the playback progress -2 in video A.
[0299] S1608, the second video application is playing video A (playback progress -2).
[0300] Please refer to Figure 13(2). For example, the second video application obtains the video content (i.e. the corresponding image frame) starting from the playback progress -2, and starts playing video A from the playback progress -2 (e.g., 40 minutes and 00 seconds).
[0301] In this embodiment, users can launch video applications by clicking their icons and then operate within the applications to play the corresponding videos, thus implementing the playback method described in this embodiment. In some instances, users can also directly click to play videos in the video application using the search function on their electronic devices.
[0302] Figure 22 is an exemplary user interface diagram. Referring to (1) of Figure 22, the search interface 2201 of the electronic device includes, but is not limited to, a search bar 2202. The user can enter a video name, such as video A, in the search bar 2202. The electronic device responds to the received user operation by performing a search and displaying the search results. The search results include multiple controls (or cards, which are not limited in this application) corresponding to the search results. For example, the electronic device finds video content for video A provided in both the first video application and the second video application. Accordingly, the search results include search results 2203-1 (which can also be called search controls, which are not limited in this application) corresponding to video A in the first video application and search results 2203-2 corresponding to video A in the second video application. The user can click the corresponding search result control to call the corresponding video application to play video A. For example, the user clicks search result 2203-2 corresponding to video A in the second video application. The electronic device responds to the received user operation by opening the second video application and playing video A in the second video application. In the implementation of the second video application playing video A, the second video application can perform playback query and playback reporting processes according to Figure 7, Figure 8 or Figure 16. In this way, when the user searches for video A again using the search function and clicks on the search result 2203-1 corresponding to video A in the first video application, the first video application can resume playing video A from the position where the second video application ended playback.
[0303] Optionally, in the scenario shown in Figure 22, the video progress query step performed by the electronic device can be executed after the user clicks the search result control. In some instances, the video progress query step performed by the electronic device can also begin as soon as the electronic device obtains the search result, thereby speeding up the playback progress query step, reducing buffering time, and further improving the user experience.
[0304] In one possible implementation, the playback method in this application embodiment can also be applied to offline playback scenarios. For example, in an offline scenario (where the video application is disconnected from the video operation server, for example, after the electronic device has pre-cached some video content, the electronic device is not connected to the internet), the user uses the first video application to watch video A, and after watching, the playback record processing module saves the playback progress information that needs to be reported. After the electronic device connects to the internet, the playback record processing module can execute the playback record reporting process.
[0305] Figure 23 shows a schematic block diagram of a playback device 2300 according to an embodiment of this application. The playback device may include a processor 2301 and a transceiver / transceiver pin 2302, and optionally, a memory 2303. The processor 2301 can be used to execute the steps performed by the electronic device or the playback recording server in the methods of the foregoing embodiments, and control the receiving pin to receive signals and control the transmitting pin to transmit signals.
[0306] The various components of the playback device 2300 are coupled together via a bus 2304, which includes a data bus, a power bus, a control bus, and a status signal bus. However, for clarity, all buses are labeled as bus system 2304 in the figure.
[0307] Optionally, the memory 2303 can be used for storage instructions in the foregoing method embodiments.
[0308] It should be understood that the playback device 2300 according to the embodiments of this application may correspond to the electronic device in the methods of the foregoing embodiments, or it may correspond to the playback recording server in the methods of the foregoing embodiments. Furthermore, the above-mentioned and other management operations and / or functions of each element in the playback device 2300 are respectively for implementing the corresponding steps of the foregoing methods, and for the sake of brevity, they will not be described in detail here.
[0309] All relevant content of each step involved in the above method embodiments can be referenced from the functional description of the corresponding functional module, and will not be repeated here.
[0310] Based on the same technical concept, embodiments of this application also provide a computer-readable storage medium storing a computer program containing at least one piece of code that can be executed by a playback device to control the playback device to implement the above-described method embodiments.
[0311] Based on the same technical concept, this application also provides a computer program, which, when executed by a playback device, is used to implement the above-described method embodiments.
[0312] The program may be stored, in whole or in part, on a storage medium packaged with the processor, or in part or in whole on a memory not packaged with the processor.
[0313] Based on the same technical concept, this application also provides a processor for implementing the above-described method embodiments. The processor can be a chip.
[0314] The steps of the methods or algorithms described in conjunction with the embodiments of this application can be implemented in hardware or by a processor executing software instructions. The software instructions can consist of corresponding software modules, which can be stored in random access memory (RAM), flash memory, read-only memory (ROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), registers, hard disks, portable hard disks, CD-ROMs, or any other form of storage medium well known in the art. An exemplary storage medium is coupled to a processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and storage medium can reside in an ASIC. Additionally, the ASIC can reside in a network device. Alternatively, the processor and storage medium can exist as discrete components in the network device.
[0315] Those skilled in the art will recognize that the functions described in the embodiments of this application in one or more of the above examples can be implemented using hardware, software, firmware, or any combination thereof. When implemented using software, these functions can be stored in a computer-readable medium or transmitted as one or more instructions or code on a computer-readable medium. Computer-readable media include computer storage media and communication media, wherein communication media include any medium that facilitates the transfer of a computer program from one place to another. Storage media can be any available medium that can be accessed by a general-purpose or special-purpose computer.
[0316] In this article, the term "and / or" is merely a description of the relationship between related objects, indicating that there can be three relationships. For example, A and / or B can represent three situations: A exists alone, A and B exist simultaneously, and B exists alone.
[0317] The terms "first" and "second," etc., used in the specification and claims of this application are used to distinguish different objects, not to describe a specific order of objects. For example, "first target object" and "second target object," etc., are used to distinguish different target objects, not to describe a specific order of target objects.
[0318] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of the terms "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.
[0319] In the description of the embodiments in this application, unless otherwise stated, "multiple" means two or more. For example, multiple processing units means two or more processing units; multiple systems means two or more systems.
[0320] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of this application.
Claims
A method of playing, characterized in that The method is applied to an electronic device including a first video application and a second video application, the first video application belongs to a first video operation platform, and the second video application belongs to a second video operation platform, and the method comprises the following steps: When the first video application ends playing a first video, acquiring a first playing progress corresponding to the end of playing the first video, wherein the identification information of the first video in the first video operation platform is not the same as the identification information of the first video in the second video operation platform; Sending playing progress information to a playing record server, the playing progress information being used for indicating the first playing progress of playing the first video in the electronic device; In response to the received first operation, acquiring the first playing progress from the playing record server, so that the second video application plays the first video from the first playing progress. The method of claim 1, wherein The playing progress information comprises: The identification information of the electronic device, the identification information of the first video application, the identification information of the first video in the first video operation platform, and the first playing progress. The method of claim 1, wherein The playing progress information comprises: The identification information of the electronic device, the first key frame of the first video, and the first playing progress. The method according to claim 2, characterized in that The response to the received first operation, acquiring the first playing progress from the playing record server, comprises: In response to the received first operation, sending a playing progress query request message to the playing record server, the playing progress query request message being used for requesting the playing progress of playing the first video in the electronic device, the playing progress query request comprising the identification information of the electronic device, the identification information of the second video application, and the identification information of the first video in the second video operation platform; Receiving a playing progress query response message sent by the playing record server, the playing progress query response message being used for indicating the first playing progress. The method according to claim 3, characterized in that The response to the received first operation, acquiring the first playing progress from the playing record server, comprises: In response to the received first operation, sending a playing progress query request message to the playing record server, the playing progress query request message being used for requesting the playing progress of playing the first video in the electronic device, the playing progress query request comprising the identification information of the electronic device and the second key frame of the first video; Receiving a playing progress query response message sent by the playing record server, the playing progress query response message being used for indicating the first playing progress. The method according to claim 5, characterized in that The first key frame is any key frame before the first playing progress, and the second key frame is any key frame in the second video. The method of claim 1, wherein The response to the received first operation, acquiring the first playing progress from the playing record server, comprises: In response to a received first operation of searching for the first video in a search interface, display a search result, and obtain the first play progress from the play record server, the search result including a search control of the first video application and a search control of the second video application. The method of claim 7, wherein The method further includes: In response to a received second operation of clicking the search control of the second video application, causing the second video application to play the first video from the first play progress. A method of playing, characterized in that Applied to a play record server, the method includes: Receiving play progress information sent by an electronic device, the play progress information indicating a first play progress of a first video played by a first video application in the electronic device; Based on the play progress information, saving the first play progress of the first video played by the electronic device; Receiving a play progress query request message sent by the electronic device, the play progress query request message requesting a play progress corresponding to the first video to be played by a second video application in the electronic device; wherein the first video application belongs to a first video operation platform, the second video application belongs to a second video operation platform, and the identification information of the first video in the first video operation platform is different from the identification information of the first video in the second video operation platform; Based on the play progress query request message, determining that the play progress corresponding to the first video to be played by the second video application in the electronic device is the first play progress; Sending a play progress query response message to the electronic device, the play progress query response message indicating the first play progress. The method of claim 9, wherein The play progress information includes: The identification information of the electronic device, the identification information of the first video application, the identification information of the first video in the first video operation platform, and the first play progress. The method of claim 9, wherein The play progress information includes: The identification information of the electronic device, the first key frame of the first video, and the first play progress. The method of claim 10, wherein The play progress information includes: Based on the identification information of the first video in the first video operation platform and the identification information of the first video application, determining a full-platform first video identification information through a first correspondence relationship, the first correspondence relationship including a correspondence relationship between the full-platform first video identification information, the identification information of the first video in the first video operation platform, and the identification information of the first video application; Saving a second correspondence relationship between the full-platform first video identification information, the identification information of the electronic device, and the first play progress. The method of claim 12, wherein The play progress query request message includes the identification information of the electronic device, the identification information of the second video application, and the identification information of the first video in the second video operation platform. The method of claim 13, wherein The play progress query request message includes the identification information of the electronic device, the identification information of the second video application, and the identification information of the first video in the second video operation platform. determine the first video identification information of the whole platform based on the identification information of the first video in the second video operation platform and the identification information of the second video application, the third corresponding relationship comprising a corresponding relationship among the first video identification information of the whole platform, the identification information of the first video in the second video operation platform and the identification information of the second video application; obtain the first play progress based on the identification information of the electronic device and the first video identification information of the whole platform through the second corresponding relationship. The method of claim 11, wherein The saving of the first play progress of the first video played by the electronic device based on the play progress information comprises: determine the first video identification information of the whole platform based on the first key frame of the first video through a fourth corresponding relationship, the fourth corresponding relationship comprising a corresponding relationship between the first video identification information of the whole platform and any key frame of the first video; save a fifth corresponding relationship among the first video identification information of the whole platform, the identification information of the electronic device and the first play progress. The method of claim 15, wherein The play progress query request message comprises the identification information of the electronic device and the second key frame of the first video. The method of claim 16, wherein The first key frame is any key frame before the first play progress, and the second key frame is any key frame in the first video. The method of claim 16, wherein The determination of the first play progress corresponding to the first video to be played by the second video application in the electronic device based on the play progress query request message comprises: determine the first video identification information of the whole platform based on the second key frame of the first video through the fourth corresponding relationship; obtain the first play progress based on the identification information of the electronic device and the first video identification information of the whole platform through the fifth corresponding relationship. An electronic device, characterized by comprising: comprise: one or more processors, a memory; and one or more computer programs, wherein the one or more computer programs are stored in the memory and, when the computer programs are executed by the one or more processors, cause the electronic device to perform the method of any one of claims 1-8. A server, characterized in that comprise: one or more processors, a memory; and one or more computer programs, wherein the one or more computer programs are stored in the memory and, when the computer programs are executed by the one or more processors, cause the server to perform the method of any one of claims 9-18. A computer storage medium, characterized in that, comprise computer instructions, which, when executed on an electronic device, cause the electronic device to perform the method of any one of claims 1-8. A computer storage medium, characterized by comprise computer instructions, which, when executed on a server, cause the server to perform the method of any one of claims 9-18. A computer program product, characterized in that when the computer program product is executed on an electronic device, cause the electronic device to perform the method of any one of claims 1-8. A computer program product, characterized in that when the computer program product is executed on a server, cause the server to perform the method of any one of claims 9-18.
Citation Information
Patent Citations
Method of playing contents and terminals
CN108733458A
An information interaction method and system between different applications
CN109918206A
Video access method and device
CN112887802A
Display device, server and media asset playing progress synchronization method
CN116600161A