CN110719516A - Video synchronization method and device, terminal and storage medium - Google Patents

Video synchronization method and device, terminal and storage medium Download PDF

Info

Publication number
CN110719516A
CN110719516A CN201911001111.3A CN201911001111A CN110719516A CN 110719516 A CN110719516 A CN 110719516A CN 201911001111 A CN201911001111 A CN 201911001111A CN 110719516 A CN110719516 A CN 110719516A
Authority
CN
China
Prior art keywords
information
video file
playing
video
playing progress
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911001111.3A
Other languages
Chinese (zh)
Inventor
方迟
朱海舟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing ByteDance Network Technology Co Ltd
Original Assignee
Beijing ByteDance Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing ByteDance Network Technology Co Ltd filed Critical Beijing ByteDance Network Technology Co Ltd
Priority to CN201911001111.3A priority Critical patent/CN110719516A/en
Publication of CN110719516A publication Critical patent/CN110719516A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream

Landscapes

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

Abstract

The present disclosure provides a method and apparatus for video synchronization, a terminal, and a storage medium. The video synchronization method comprises the following steps: acquiring information of a video file to be played, and directly or indirectly sending the information to at least one receiving end to enable the at least one receiving end to play the video file; playing the video file, and acquiring first playing progress information of the video file; and directly or indirectly synchronizing the first playing progress information to the at least one receiving terminal, so that the at least one receiving terminal can play the progress in a unified manner according to the first playing progress information. The video synchronization method can achieve the technical effect that one end controls multi-end synchronous playing and operation.

Description

Video synchronization method and device, terminal and storage medium
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a method and an apparatus for video synchronization, a terminal, and a storage medium.
Background
Playing the same video from multiple terminals in different places may require synchronizing the viewing progress of multiple terminals, and synchronizing operations such as pause, review, fast forward, etc. The prior art can not realize the effect, and the requirement of diversity is limited.
Disclosure of Invention
To solve the existing problems, the present disclosure provides a method and apparatus for video synchronization, a terminal, and a storage medium.
The present disclosure adopts the following technical solutions.
In some embodiments, the present disclosure provides a method of video synchronization, comprising:
acquiring information of a video file to be played, and directly or indirectly sending the information to at least one receiving end to enable the at least one receiving end to play the video file;
playing the video file, and acquiring first playing progress information of the video file; and
and directly or indirectly synchronizing the first playing progress information to the at least one receiving terminal, so that the at least one receiving terminal can play the progress uniformly according to the first playing progress information.
In some embodiments, the present disclosure provides a method of video synchronization, comprising:
receiving information of a video file to be played;
playing the video file according to the information;
receiving play progress information of the video file transmitted from a server or another terminal; and
and synchronizing the playing progress of the video file according to the playing progress information.
In some embodiments, the present disclosure provides an apparatus for video synchronization, comprising:
the system comprises an acquisition module, a display module and a display module, wherein the acquisition module is used for acquiring information of a video file to be played and playing progress information of the video file;
a sending module, configured to send the information and the playing progress information, where the information and the playing progress information are used to instruct a device that receives the information and the playing progress information to play the video file according to the playing progress information; and
and the playing module is used for playing the video file.
In some embodiments, the present disclosure provides an apparatus for video synchronization, comprising:
the receiving module is used for receiving information of a video file to be played and playing progress information of the video file;
the playing module is used for playing the video file according to the information; and
and the synchronization module is used for synchronizing the playing progress of the video file according to the playing progress information.
In some embodiments, the present disclosure provides a terminal comprising: at least one memory and at least one processor;
the memory is used for storing program codes, and the processor is used for calling the program codes stored in the memory to execute the method.
In some embodiments, the present disclosure provides a storage medium for storing program code for performing the above-described method.
The video synchronization method, the video synchronization device, the terminal and the storage medium provided by the disclosure can at least realize multi-end synchronous playing of the same video file, and improve the use efficiency and use experience of users.
Drawings
The above and other features, advantages and aspects of various embodiments of the present disclosure will become more apparent by referring to the following detailed description when taken in conjunction with the accompanying drawings. Throughout the drawings, the same or similar reference numbers refer to the same or similar elements. It should be understood that the drawings are schematic and that elements and elements are not necessarily drawn to scale.
Fig. 1 is a flow chart of a video synchronization method of an embodiment of the present disclosure.
Fig. 2 is a flowchart of a video synchronization method according to another embodiment of the present disclosure.
Fig. 3 is a flowchart of a video synchronization method according to yet another embodiment of the present disclosure.
Fig. 4 is a flowchart of a video synchronization method according to still another embodiment of the present disclosure.
Fig. 5 is a schematic diagram of a window position relationship of an embodiment of the present disclosure.
Fig. 6 is a schematic diagram of a window position relationship according to another embodiment of the present disclosure.
Fig. 7 is a schematic structural diagram of a video synchronization apparatus according to an embodiment of the disclosure.
Fig. 8 is a schematic structural diagram of a video synchronization apparatus according to another embodiment of the present disclosure.
Fig. 9 is a schematic structural diagram of a video synchronization apparatus according to yet another embodiment of the present disclosure.
Fig. 10 is a schematic structural diagram of an electronic device according to an embodiment of the present disclosure.
Detailed Description
Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure are shown in the drawings, it is to be understood that the present disclosure may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but rather are provided for a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the disclosure are for illustration purposes only and are not intended to limit the scope of the disclosure.
It should be understood that various steps recited in method embodiments of the present disclosure may be performed in parallel and/or in parallel. Moreover, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present disclosure is not limited in this respect.
The term "include" and variations thereof as used herein are open-ended, i.e., "including but not limited to". The term "based on" is "based, at least in part, on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Relevant definitions for other terms will be given in the following description.
It should be noted that the terms "first", "second", and the like in the present disclosure are only used for distinguishing different devices, modules or units, and are not used for limiting the order or interdependence relationship of the functions performed by the devices, modules or units.
It is noted that references to "a" or "an" in this disclosure are intended to be illustrative rather than limiting, and that those skilled in the art will recognize that reference to "one or more" unless the context clearly dictates otherwise.
The names of messages or information exchanged between devices in the embodiments of the present disclosure are for illustrative purposes only, and are not intended to limit the scope of the messages or information.
As shown in fig. 1, fig. 1 is a flowchart of a video synchronization method according to an embodiment of the present disclosure, which includes the following steps.
S100, acquiring information of a video file to be played, and directly or indirectly sending the information to at least one receiving terminal to enable the at least one receiving terminal to play the video file.
Specifically, in the embodiment of the present disclosure, the video file may be stored in a server or a local (sending end), and accordingly, the video file may be obtained by, for example, reading from the server or directly opening from the local. After the video file is obtained or read, the video file can be shared. For example, when a video file is stored locally, the video file may be transmitted to one or more receiving terminals, specifically, the video file may be subjected to audio/video stream separation, the audio stream and the video stream are encoded at a transmitting terminal to form audio data and video data, and then the video data and the audio data are transmitted to the receiving terminals respectively or are transferred to the receiving terminals via a server. The audio data may include an audio clock, where the audio clock refers to a clock corresponding to an audio stream, and is used to represent a rate of the audio stream and control playing of the audio stream; the video data may include a video clock, which refers to a clock corresponding to the video stream, and is used to indicate the rate of the video stream and control the playing of the video stream. The audio clock and the video clock may also be referred to as timestamps. When a video file is stored in the server, the location information of the video file may be shared, for example, through the application app or the sharing address link url. It should be emphasized that the direct sending may be, for example, transmitting data information in a point-to-point streaming (streaming) manner, for example, a sending end streams video frames to other receiving ends, so that screens of other receiving ends synchronously display video images played by the sending end; the indirect sending may be, for example, data information transmitted by a server, for example, a sending end first uploads a data packet to the server, and the server sends the data packet to other receiving ends according to a destination address in the data packet; and other receiving ends can play the video file after receiving the video file.
S200, playing the video file and acquiring the playing progress information of the video file.
Specifically, when a video file is stored locally and other receiving terminals also store the video file, real-time information of video playing of the sending terminal, such as a time stamp of the video information or a time stamp of the audio information, may be obtained to determine the playing progress of the video file of the sending terminal. When the video file is stored on the server, the playing progress of the video file can be uniquely determined by acquiring the coordinates of the time axis of the playing video.
S300, the playing progress information is directly or indirectly synchronized to the at least one receiving terminal, so that the playing progress information is unified by the at least one receiving terminal.
Specifically, in the embodiment of the present disclosure, when the video file is locally stored, the timestamp may be sent to other receiving ends, so that the purpose of synchronous playing is achieved in a manner that the timestamps are aligned. In another embodiment of the present disclosure, the playing progress can be unified in a manner of synchronizing coordinates, that is, the playing time can be unified, and the positioning can be performed according to the time axis coordinates obtained as described above. In addition, the video images can be pushed in a point-to-point streaming manner, and at this time, because the pushed video image frames are video image frames played by the current sending end, a uniform playing progress is achieved between the sending end and at least one receiving end. It can be understood that, when the playing progress information is sent, the playing progress information may still be in a direct or indirect manner as described above, and details are not described here.
In particular, during the process of synchronous video playing, the sending end may adjust the playing progress, such as fast forward, fast backward, pause, etc. At this time, each receiving end also needs to correspondingly adjust the playing progress according to the received playing progress information, so as to synchronize the playing among the sending end, the receiving end and each receiving end. Specifically, when it is detected that the parameter received by the receiving end has a difference with the real-time playing progress, the playing progress of the receiving end is adjusted according to the received playing progress information. For example, after receiving a fast forward instruction, a jump operation may be performed, that is, skipping over the video image frame in the middle segment and directly jumping to the video image frame located at the sending end according to the parameters; or it is also possible to perform a double speed play operation, i.e., shorten the play time of each frame and the interval time between frames. For another example, after receiving the pause instruction, the playing of the video stream and the audio stream is synchronously stopped, that is, the time stamps of the corresponding video data and audio data are fixed. In the above manner, only the instruction of video progress adjustment can be transmitted, video image frames do not need to be transmitted, image quality compression in transmission does not exist, and occupied bandwidth is small, so that the advantages of clear image quality, smooth playing, good real-time performance and the like can be obtained in the embodiment of the disclosure. In addition, embodiments of the present disclosure may also include other synchronization operations, which are not specifically limited herein.
In addition, in addition to synchronizing the play progress, embodiments of the present disclosure may also include synchronizing video editing operations. As shown in fig. 2, fig. 2 is a flowchart of a video synchronization method according to another embodiment of the present disclosure.
S401, editing the video file in playing.
S402, acquiring the editing information, and directly or indirectly synchronizing the editing information to at least one receiving terminal, so that the at least one receiving terminal uniformly executes editing operation according to the editing information.
Specifically, acquiring contact track information generated by adding pictures on video image frames of the video file; and/or acquiring visual element information characters added on a video image frame of the video file and the adding positions of the visual element information; and/or obtaining progressive dummy degradation information for tone scale details of at least a portion of video image frames of the video file. More specifically, for example, if a sending end user performs a circling operation to define a certain area of a video image frame, the starting coordinates (x, y) of the circling operation are obtained, and then the path of the circling operation is synchronously obtained, specifically, a continuous coordinate set (x, y) is obtained1,y1),(x2,y2)……(xn,yn) And synchronizing the continuous coordinate set to other coordinate sets directly or indirectlyAnd the receiving ends enable the corresponding positions of the corresponding video image frames of other receiving ends to repeat the coordinate forming path so as to present the same circled area. Specifically, the sending end receives the first operation, and locates the coordinate (x)1,y1) The coordinate can be marked as the point A, and the coordinate is sent to other receiving ends at the same time; other receiving ends obtain the coordinate, and the A' point at the same position is positioned according to the coordinate; similarly, the second operation is, for example, positioned at (x)2,y2) If the point is marked as point B, then a straight line from the point A to the point B can be arranged at the transmitting end; correspondingly, the same straight line from the point A 'to the point B' is repeated at the receiving end; it will be appreciated that the above operations may continue to locate C, D and more points, and that the lines formed by these points may be organized into a pattern or text to present various effects. For another example, when the sending-end user performs a mosaic operation, the position information of the mosaic may be first obtained as described above, and after the position information is obtained, the details of the color level of the video image frame in the region are degraded to cause a disturbing effect of the color block. The information of the demarcated area and the information of the color gradation detail deterioration are packaged and sent to other receiving terminals, or the information of the demarcated area, the information of the color gradation detail deterioration and the address information of the destination terminal are sent out through a server, so that the receiving terminals can display the mosaic effect together. In the embodiment of the present disclosure, the editing operation includes adding a drawing, such as graffiti, adding a text, such as a label, adding a subtitle, and the like, to the video image frame, which may be performed separately or together, and is not limited herein.
In the embodiment of the present disclosure, the sending end may be a control end, that is, an authority tag may be set at the sending end, and the synchronization instruction is sent based on the authority tag, and the other ends without the authority tag are receiving ends, and perform corresponding operations according to the synchronization instruction. It is understood that the permission label can be transferred, as shown in fig. 3, and fig. 3 is a flowchart of a video synchronization method according to another embodiment of the disclosure, including the following steps:
s501, setting an authority label, and sending the playing progress information according to the authority label.
S502, transferring the authority label to a first receiving terminal of the at least one receiving terminal, so that the first receiving terminal sends the playing progress information according to the authority label.
S503, receiving the playing progress information, and synchronizing the playing progress according to the playing progress information.
Specifically, the authority of the sending end is determined at first, and an authority tag is set, so that the sending end can control synchronous operation. And after the authority label is transferred from the sending end to one of the receiving ends, the control end is correspondingly changed from the sending end to the receiving end, at this time, the original sending end does not have the control authority any more, and the control authority is transferred to the receiving end along with the authority label, namely, the receiving end is considered as a new control end, and synchronous playing and control are controlled by the receiving end for receiving the authority label, including instruction sending, reference for synchronization and the like. The transfer of the authority label in the embodiment of the present disclosure is not particularly limited, and may be automatically specified by the control end. The issue of the operation instruction of the new control end and the synchronization of other ends after the permission label transfer are as described above, and are not described herein again.
In another embodiment of the present disclosure, the sending end and the receiving ends may be connected in communication while playing synchronously. As shown in fig. 4, fig. 4 is a flowchart of a video synchronization method according to still another embodiment of the present disclosure, which includes the following steps.
S601, playing the video file in the first window.
S602, a call connection with the at least one receiving end is created in a second window.
Specifically, a video file may be played through a first window and a call connection, such as a chat interface, may be displayed through a second window. More specifically, synchronized video file playback may be as previously described; the call connection can take many forms such as text, voice, video chat, etc. Similarly, the push of the content of the second window may also be direct or indirect. For example, the text chat interface (second window) can be directly transmitted to other receiving terminals in a streaming manner, or indirectly transmitted to other receiving terminals through the server; if the chat is a video chat, the encoded video image frame may be pushed to be directly or indirectly transmitted, and the specific manner is as described above, and is not described here again.
The first window and the second window may be arranged in various ways, for example, the first window and the second window may be located in the same display layer, for example, tiled non-overlapping display, as shown in fig. 5, and the first window and the second window are displayed side by side in the display area. It can be understood that the size relationship of the first window and the second window may be the same or different, the tiled arrangement is not limited to being displayed side by side, and the first window and the second window may have different arrangements. In addition, the first window and the second window may also be located on different display layers, as shown in fig. 6, the second window may be suspended above the first window, and it can be understood that, in order to not block the video playing, the area of the second window is smaller than the area of the first window at this time, and the position of the second window is not limited to the upper right corner of the first window, and other overlapping position relationships may also be included in the embodiments of the present disclosure.
The video synchronization method provided by the disclosure can at least realize the synchronous playing of the same video file at multiple ends, and can support the playing operation and editing of the video file at the multiple ends according to one end, and the communication connection is carried out while the video file is played, so that the use efficiency and the use experience of a user are improved.
The embodiment of the present disclosure further provides a device for video synchronization, which may be a sending end, for example. As shown in fig. 7, the apparatus 10 includes an acquisition module 101, a transmission module 103, and a play module 105. The obtaining module 101 may be configured to obtain information of a video file to be played and playing progress information of the video file. The sending module 103 may be configured to send the information and the playing progress information. The play module 105 may be used to play the video file.
As shown in fig. 8, an embodiment of the present disclosure further provides an apparatus for video synchronization. The difference between the present embodiment and the previous embodiment is that the apparatus 20 of the present embodiment further includes an editing module 207 and a setting module 209. The editing module 207 may be configured to edit the video file being played. The setting module 209 may be used to set the permission label. It can be understood that the newly added modules may be added simultaneously or separately, and only need to exert their functions, and the embodiments of the present disclosure are not particularly limited.
As shown in fig. 9, the embodiment of the present disclosure further provides a device for video synchronization, which may be a receiving end, for example. As shown in fig. 9, the apparatus 30 includes a receiving module 302, a playing module 304, and a synchronizing module 306. The receiving module 302 may be configured to receive information of a video file to be played and playing progress information of the video file. The playing module 304 may be configured to play the video file according to the information. The synchronization module 306 may be configured to synchronize the playing progress of the video file according to the playing progress information.
For the embodiments of the apparatus, since they correspond substantially to the method embodiments, reference may be made to the partial description of the method embodiments for relevant points. The above-described apparatus embodiments are merely illustrative, wherein the modules described as separate modules may or may not be separate. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment. One of ordinary skill in the art can understand and implement it without inventive effort.
The video synchronization method and apparatus of the present disclosure are described above based on the embodiments and application examples. In addition, the present disclosure also provides a terminal and a storage medium, which are described below.
Referring now to fig. 10, a schematic diagram of an electronic device (e.g., a terminal device or server) 800 suitable for use in implementing embodiments of the present disclosure is shown. The terminal device in the embodiments of the present disclosure may include, but is not limited to, a mobile terminal such as a mobile phone, a notebook computer, a digital broadcast receiver, a PDA (personal digital assistant), a PAD (tablet computer), a PMP (portable multimedia player), a vehicle terminal (e.g., a car navigation terminal), and the like, and a stationary terminal such as a digital TV, a desktop computer, and the like. The electronic device shown in fig. 10 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present disclosure.
As shown in fig. 10, the electronic device 800 may include a processing means (e.g., a central processing unit, a graphics processor, etc.) 801 that may perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM)802 or a program loaded from a storage means 808 into a Random Access Memory (RAM) 803. In the RAM803, various programs and data necessary for the operation of the electronic apparatus 800 are also stored. The processing apparatus 801, the ROM 802, and the RAM803 are connected to each other by a bus 804. An input/output (I/O) interface 805 is also connected to bus 804.
Generally, the following devices may be connected to the I/O interface 805: input devices 806 including, for example, a touch screen, touch pad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; output devices 807 including, for example, a Liquid Crystal Display (LCD), speakers, vibrators, and the like; storage 808 including, for example, magnetic tape, hard disk, etc.; and a communication device 809. The communication means 809 may allow the electronic device 800 to communicate wirelessly or by wire with other devices to exchange data. While fig. 10 illustrates an electronic device 800 having various means, it is to be understood that not all illustrated means are required to be implemented or provided. More or fewer devices may alternatively be implemented or provided.
In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through the communication means 809, or installed from the storage means 808, or installed from the ROM 802. The computer program, when executed by the processing apparatus 801, performs the above-described functions defined in the methods of the embodiments of the present disclosure.
It should be noted that the computer readable medium in the present disclosure can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In contrast, in the present disclosure, a computer readable signal medium may comprise a propagated data signal with computer readable program code embodied therein, either in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, optical cables, RF (radio frequency), etc., or any suitable combination of the foregoing.
In some embodiments, the clients, servers may communicate using any currently known or future developed network protocol, such as HTTP (HyperText transfer protocol), and may be interconnected with any form or medium of digital data communication (e.g., a communications network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), the Internet (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed network.
The computer readable medium may be embodied in the electronic device; or may exist separately without being assembled into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to perform the methods of the present disclosure as described above.
Computer program code for carrying out operations for aspects of the present disclosure may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + +, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present disclosure may be implemented by software or hardware. Where the name of an element does not in some cases constitute a limitation on the element itself.
The functions described herein above may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), systems on a chip (SOCs), Complex Programmable Logic Devices (CPLDs), and the like.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
According to one or more embodiments of the present disclosure, there is provided a method of video synchronization, including:
acquiring information of a video file to be played, and directly or indirectly sending the information to at least one receiving end to enable the at least one receiving end to play the video file;
playing the video file, and acquiring first playing progress information of the video file; and
and directly or indirectly synchronizing the first playing progress information to the at least one receiving terminal, so that the at least one receiving terminal can play the progress uniformly according to the first playing progress information.
According to one or more embodiments of the present disclosure, there is provided a method, where the obtaining information of a video file to be played includes:
acquiring video data and audio data of the video file; or
And acquiring the address of the video file.
In accordance with one or more embodiments of the present disclosure, there is provided a method, wherein the directly or indirectly transmitting the information to at least one receiving end includes:
sending the video data and the audio data, or the address to the at least one receiving end; or
Sending the video data and the audio data or the address to a server; wherein the server is configured to synchronize the audio data with the audio data, or the address, to the at least one receiving end.
According to one or more embodiments of the present disclosure, there is provided a method, wherein the obtaining of first play progress information of the video file includes:
acquiring a time stamp of a video frame or a time stamp of an audio frame of the video file played in real time; or
And acquiring the coordinates of the real-time playing time axis of the video file.
According to one or more embodiments of the present disclosure, there is provided a method, wherein the synchronizing the first play progress information to the at least one receiving end directly or indirectly includes:
synchronizing the timestamp or the coordinates to the at least one receiving end; or
Synchronizing the timestamp or the coordinates to a server; wherein the server is configured to synchronize the timestamp or the coordinates to the at least one receiving end.
According to one or more embodiments of the present disclosure, there is provided a method, where the obtaining of the first playing progress information of the video file further includes:
and acquiring at least one of fast forward, fast backward and pause parameters of the video file in playing.
According to one or more embodiments of the present disclosure, there is provided a method, characterized in that the method further comprises:
editing the video file in playing, acquiring editing information, and directly or indirectly synchronizing the editing information to the at least one receiving terminal, so that the at least one receiving terminal uniformly executes editing operation according to the editing information.
According to one or more embodiments of the present disclosure, there is provided a method, wherein editing the video file in play includes:
acquiring contact track information generated on a video image frame of the video file; and/or
Acquiring visual element information added on a video image frame of the video file and an adding position of the visual element information; and/or
Degradation information of the tone scale details of at least a portion of the video image frames of the video file is obtained.
According to one or more embodiments of the present disclosure, there is provided a method, characterized in that the method further comprises:
setting an authority label, and sending the first playing progress information according to the authority label; and
transferring the authority label to a first receiving end of the at least one receiving end, so that the first receiving end sends second playing progress information of the first receiving end according to the authority label; and
and receiving the second playing progress information, and synchronizing the playing progress according to the second playing progress information.
According to one or more embodiments of the present disclosure, there is provided a method, characterized in that the method further comprises:
playing the video file in a first window; and
and establishing a call connection with the at least one receiving end in at least one second window.
In accordance with one or more embodiments of the present disclosure, a method is provided wherein the first window is non-overlapping with the second window.
According to one or more embodiments of the present disclosure, there is provided a method, wherein an area of the second window is smaller than an area of the first window and the second window floats on the first window.
According to one or more embodiments of the present disclosure, there is provided a method of video synchronization, including:
receiving information of a video file to be played;
playing the video file according to the information;
receiving play progress information of the video file transmitted from a server or another terminal; and
and synchronizing the playing progress of the video file according to the playing progress information.
According to one or more embodiments of the present disclosure, there is provided an apparatus for video synchronization, including:
the system comprises an acquisition module, a display module and a display module, wherein the acquisition module is used for acquiring information of a video file to be played and playing progress information of the video file;
a sending module, configured to send the information and the playing progress information, where the information and the playing progress information are used to instruct a device that receives the information and the playing progress information to play the video file according to the playing progress information; and
and the playing module is used for playing the video file.
According to one or more embodiments of the present disclosure, there is provided an apparatus, characterized in that the apparatus further comprises:
the editing module is used for editing the video file in playing; and/or
The setting module is used for setting an authority label which is used for indicating that a device provided with the authority label has the authority to send the information and the playing progress information;
the acquisition module is further used for acquiring editing information; the sending module is further configured to send the editing information and/or the permission label.
According to one or more embodiments of the present disclosure, there is provided an apparatus for video synchronization, including:
the receiving module is used for receiving information of a video file to be played and playing progress information of the video file;
the playing module is used for playing the video file according to the information; and
and the synchronization module is used for synchronizing the playing progress of the video file according to the playing progress information.
According to one or more embodiments of the present disclosure, there is provided a terminal including: at least one memory and at least one processor;
wherein the at least one memory is configured to store program code and the at least one processor is configured to invoke the program code stored in the at least one memory to perform any of the methods described above.
According to one or more embodiments of the present disclosure, there is provided a storage medium for storing program code for performing the above-described method.
The foregoing description is only exemplary of the preferred embodiments of the disclosure and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the disclosure herein is not limited to the particular combination of features described above, but also encompasses other embodiments in which any combination of the features described above or their equivalents does not depart from the spirit of the disclosure. For example, the above features and (but not limited to) the features disclosed in this disclosure having similar functions are replaced with each other to form the technical solution.
Further, while operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order. Under certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are included in the above discussion, these should not be construed as limitations on the scope of the disclosure. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims (18)

1. A method of video synchronization, comprising:
acquiring information of a video file to be played, and directly or indirectly sending the information to at least one receiving end to enable the at least one receiving end to play the video file;
playing the video file, and acquiring first playing progress information of the video file; and
and directly or indirectly synchronizing the first playing progress information to the at least one receiving terminal, so that the at least one receiving terminal can play the progress uniformly according to the first playing progress information.
2. The method according to claim 1, wherein the obtaining information of the video file to be played comprises:
acquiring video data and audio data of the video file; or
And acquiring the address of the video file.
3. The method of claim 2, wherein the directly or indirectly sending the information to at least one receiving end comprises:
sending the video data and the audio data, or the address to the at least one receiving end; or
Sending the video data and the audio data or the address to a server; wherein the server is configured to synchronize the video data and the audio data, or the address, to the at least one receiving end.
4. The method according to claim 1, wherein the obtaining the first playing progress information of the video file comprises:
acquiring a time stamp of a video frame or a time stamp of an audio frame of the video file played in real time; or
And acquiring the coordinates of the real-time playing time axis of the video file.
5. The method according to claim 4, wherein the synchronizing the first playing progress information directly or indirectly to the at least one receiving end comprises:
synchronizing the timestamp or the coordinates to the at least one receiving end; or
Synchronizing the timestamp or the coordinates to a server; wherein the server is configured to synchronize the timestamp or the coordinates to the at least one receiving end.
6. The method of claim 1, wherein the obtaining the first playing progress information of the video file further comprises:
and acquiring at least one of fast forward, fast backward and pause parameters of the video file in playing.
7. The method of claim 1, further comprising:
editing the video file in playing; and
and acquiring editing information, and directly or indirectly synchronizing the editing information to the at least one receiving terminal, so that the at least one receiving terminal uniformly executes editing operation according to the editing information.
8. The method of claim 7, wherein said editing the video file being played comprises:
acquiring contact track information generated on a video image frame of the video file; and/or
Acquiring visual element information added on a video image frame of the video file and an adding position of the visual element information; and/or
Degradation information of the tone scale details of at least a portion of the video image frames of the video file is obtained.
9. The method of claim 1, further comprising:
setting an authority label, and sending the first playing progress information according to the authority label; and
transferring the authority label to a first receiving end of the at least one receiving end, so that the first receiving end sends second playing progress information of the first receiving end according to the authority label; and
and receiving the second playing progress information, and synchronizing the playing progress according to the second playing progress information.
10. The method of claim 1, further comprising:
playing the video file in a first window; and
and establishing a call connection with the at least one receiving end in a second window.
11. The method of claim 10, wherein the first window and the second window do not overlap.
12. The method of claim 10, wherein the second window has an area smaller than the area of the first window and the second window floats above the first window.
13. A method of video synchronization, comprising:
receiving information of a video file to be played;
playing the video file according to the information;
receiving play progress information of the video file transmitted from a server or another terminal; and
and synchronizing the playing progress of the video file according to the playing progress information.
14. An apparatus for video synchronization, comprising:
the system comprises an acquisition module, a display module and a display module, wherein the acquisition module is used for acquiring information of a video file to be played and playing progress information of the video file;
a sending module, configured to send the information and the playing progress information, where the information and the playing progress information are used to instruct a device that receives the information and the playing progress information to play the video file according to the playing progress information; and
and the playing module is used for playing the video file.
15. The apparatus of claim 14, further comprising:
the editing module is used for editing the video file in playing; the acquisition module is also used for acquiring editing information; and/or
The setting module is used for setting an authority label which is used for indicating that a device provided with the authority label has the authority to send the information and the playing progress information;
the sending module is further configured to send the editing information and/or the permission label.
16. An apparatus for video synchronization, comprising:
the receiving module is used for receiving information of a video file to be played and playing progress information of the video file;
the playing module is used for playing the video file according to the information; and
and the synchronization module is used for synchronizing the playing progress of the video file according to the playing progress information.
17. A terminal, comprising:
at least one memory and at least one processor;
wherein the at least one memory is configured to store program code and the at least one processor is configured to invoke the program code stored in the at least one memory to perform the method of any of claims 1 to 13.
18. A storage medium for storing program code for performing the method of any one of claims 1 to 13.
CN201911001111.3A 2019-10-21 2019-10-21 Video synchronization method and device, terminal and storage medium Pending CN110719516A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911001111.3A CN110719516A (en) 2019-10-21 2019-10-21 Video synchronization method and device, terminal and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911001111.3A CN110719516A (en) 2019-10-21 2019-10-21 Video synchronization method and device, terminal and storage medium

Publications (1)

Publication Number Publication Date
CN110719516A true CN110719516A (en) 2020-01-21

Family

ID=69213952

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911001111.3A Pending CN110719516A (en) 2019-10-21 2019-10-21 Video synchronization method and device, terminal and storage medium

Country Status (1)

Country Link
CN (1) CN110719516A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111818383A (en) * 2020-07-14 2020-10-23 北京字节跳动网络技术有限公司 Video data generation method, system, device, electronic equipment and storage medium
CN112383795A (en) * 2021-01-12 2021-02-19 北京清奇科技有限公司 Video synchronous playing system
CN112418934A (en) * 2020-11-24 2021-02-26 盐城工业职业技术学院 Control system and method based on Internet electronic commerce information publishing and promotion
CN112954380A (en) * 2021-02-10 2021-06-11 北京达佳互联信息技术有限公司 Video playing processing method and device
CN113766303A (en) * 2021-05-08 2021-12-07 北京字节跳动网络技术有限公司 Multi-screen interaction method, device, equipment and storage medium
CN114584822A (en) * 2022-03-03 2022-06-03 北京字跳网络技术有限公司 Synchronous playing method, device, terminal equipment and storage medium

Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102970589A (en) * 2012-11-26 2013-03-13 中国联合网络通信集团有限公司 Control method and device for multi-terminal-based synergetic media stream play
CN103324605A (en) * 2013-06-25 2013-09-25 北京网梯科技发展有限公司 Method, equipment and system for collaborative editing of multiple users
CN103533388A (en) * 2013-10-25 2014-01-22 潘伟洲 Method and system for synchronously playing multimedia files
CN103561356A (en) * 2013-05-31 2014-02-05 华为技术有限公司 Multi-terminal synchronous playing method and device
CN103795967A (en) * 2014-03-12 2014-05-14 中国科学院地理科学与资源研究所 Multi-person multi-dimensional remote sensing consultation collaborative studying and judging method and device
CN105142029A (en) * 2015-08-10 2015-12-09 北京彩云动力教育科技有限公司 Interactive video clipping system and interactive video clipping method
CN105530535A (en) * 2014-09-29 2016-04-27 中兴通讯股份有限公司 Method and system capable of realizing multi-person video watching and real-time interaction
CN105743973A (en) * 2016-01-22 2016-07-06 上海科牛信息科技有限公司 Multi-user multi-device real-time synchronous cloud cooperation method and system
CN105872660A (en) * 2016-03-30 2016-08-17 北京奇艺世纪科技有限公司 Synchronous play method and device
CN106162236A (en) * 2015-03-23 2016-11-23 腾讯科技(深圳)有限公司 A kind of method and device of sharing video frequency
CN106303648A (en) * 2015-06-11 2017-01-04 阿里巴巴集团控股有限公司 A kind of method and device synchronizing to play multi-medium data
CN106507202A (en) * 2016-11-11 2017-03-15 传线网络科技(上海)有限公司 Control method for playing back and device
CN106658136A (en) * 2016-12-29 2017-05-10 北京小米移动软件有限公司 Smart TV control method and apparatus
CN106681976A (en) * 2017-01-12 2017-05-17 北京华夏电通科技有限公司 Multi-client-side real-time synchronous editing and display method
CN106998490A (en) * 2017-04-18 2017-08-01 腾讯科技(深圳)有限公司 A kind of multi-medium data synchronous method and device
CN107241640A (en) * 2017-06-26 2017-10-10 中广热点云科技有限公司 The method that a kind of mobile device and television equipment are synchronously played
CN107333146A (en) * 2017-07-12 2017-11-07 易视腾科技股份有限公司 video group viewing control method and system
CN107395763A (en) * 2017-08-30 2017-11-24 郑州云海信息技术有限公司 A kind of method, service end and the system of multi-client synchronization process file
CN107769881A (en) * 2017-10-10 2018-03-06 北京小米移动软件有限公司 Information synchronization method, apparatus and system, storage medium
CN109194572A (en) * 2018-10-18 2019-01-11 腾讯音乐娱乐科技(深圳)有限公司 Audio file play method, device, terminal and storage medium
CN109640164A (en) * 2018-11-02 2019-04-16 重庆爱奇艺智能科技有限公司 A kind of playback method and device between multiple virtual reality devices

Patent Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102970589A (en) * 2012-11-26 2013-03-13 中国联合网络通信集团有限公司 Control method and device for multi-terminal-based synergetic media stream play
CN103561356A (en) * 2013-05-31 2014-02-05 华为技术有限公司 Multi-terminal synchronous playing method and device
CN103324605A (en) * 2013-06-25 2013-09-25 北京网梯科技发展有限公司 Method, equipment and system for collaborative editing of multiple users
CN103533388A (en) * 2013-10-25 2014-01-22 潘伟洲 Method and system for synchronously playing multimedia files
CN103795967A (en) * 2014-03-12 2014-05-14 中国科学院地理科学与资源研究所 Multi-person multi-dimensional remote sensing consultation collaborative studying and judging method and device
CN105530535A (en) * 2014-09-29 2016-04-27 中兴通讯股份有限公司 Method and system capable of realizing multi-person video watching and real-time interaction
CN106162236A (en) * 2015-03-23 2016-11-23 腾讯科技(深圳)有限公司 A kind of method and device of sharing video frequency
CN106303648A (en) * 2015-06-11 2017-01-04 阿里巴巴集团控股有限公司 A kind of method and device synchronizing to play multi-medium data
CN105142029A (en) * 2015-08-10 2015-12-09 北京彩云动力教育科技有限公司 Interactive video clipping system and interactive video clipping method
CN105743973A (en) * 2016-01-22 2016-07-06 上海科牛信息科技有限公司 Multi-user multi-device real-time synchronous cloud cooperation method and system
CN105872660A (en) * 2016-03-30 2016-08-17 北京奇艺世纪科技有限公司 Synchronous play method and device
CN106507202A (en) * 2016-11-11 2017-03-15 传线网络科技(上海)有限公司 Control method for playing back and device
CN106658136A (en) * 2016-12-29 2017-05-10 北京小米移动软件有限公司 Smart TV control method and apparatus
CN106681976A (en) * 2017-01-12 2017-05-17 北京华夏电通科技有限公司 Multi-client-side real-time synchronous editing and display method
CN106998490A (en) * 2017-04-18 2017-08-01 腾讯科技(深圳)有限公司 A kind of multi-medium data synchronous method and device
CN107241640A (en) * 2017-06-26 2017-10-10 中广热点云科技有限公司 The method that a kind of mobile device and television equipment are synchronously played
CN107333146A (en) * 2017-07-12 2017-11-07 易视腾科技股份有限公司 video group viewing control method and system
CN107395763A (en) * 2017-08-30 2017-11-24 郑州云海信息技术有限公司 A kind of method, service end and the system of multi-client synchronization process file
CN107769881A (en) * 2017-10-10 2018-03-06 北京小米移动软件有限公司 Information synchronization method, apparatus and system, storage medium
CN109194572A (en) * 2018-10-18 2019-01-11 腾讯音乐娱乐科技(深圳)有限公司 Audio file play method, device, terminal and storage medium
CN109640164A (en) * 2018-11-02 2019-04-16 重庆爱奇艺智能科技有限公司 A kind of playback method and device between multiple virtual reality devices

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111818383A (en) * 2020-07-14 2020-10-23 北京字节跳动网络技术有限公司 Video data generation method, system, device, electronic equipment and storage medium
CN112418934A (en) * 2020-11-24 2021-02-26 盐城工业职业技术学院 Control system and method based on Internet electronic commerce information publishing and promotion
CN112418934B (en) * 2020-11-24 2021-10-29 盐城工业职业技术学院 Control system and method based on Internet electronic commerce information publishing and promotion
CN112383795A (en) * 2021-01-12 2021-02-19 北京清奇科技有限公司 Video synchronous playing system
CN112383795B (en) * 2021-01-12 2021-06-25 北京清奇科技有限公司 Video synchronous playing system
CN112954380A (en) * 2021-02-10 2021-06-11 北京达佳互联信息技术有限公司 Video playing processing method and device
CN112954380B (en) * 2021-02-10 2023-03-21 北京达佳互联信息技术有限公司 Video playing processing method and device
CN113766303A (en) * 2021-05-08 2021-12-07 北京字节跳动网络技术有限公司 Multi-screen interaction method, device, equipment and storage medium
CN114584822A (en) * 2022-03-03 2022-06-03 北京字跳网络技术有限公司 Synchronous playing method, device, terminal equipment and storage medium
CN114584822B (en) * 2022-03-03 2023-09-15 北京字跳网络技术有限公司 Synchronous playing method and device, terminal equipment and storage medium

Similar Documents

Publication Publication Date Title
CN110719516A (en) Video synchronization method and device, terminal and storage medium
CN112019897B (en) Screen projection method and device, electronic equipment and computer readable medium
CN112492357A (en) Method, device, medium and electronic equipment for processing multiple video streams
JP2006014299A (en) Synchronizing method of video/audio data of mobile communication terminal
CN114584736B (en) Sharing method and device based on video conference, electronic equipment and computer medium
CN111787365A (en) Multi-channel audio and video synchronization method and device
CN111970524A (en) Control method, device, system, equipment and medium for interactive live broadcast and microphone connection
CN114095671A (en) Cloud conference live broadcast system, method, device, equipment and medium
CN111818383B (en) Video data generation method, system, device, electronic equipment and storage medium
CN113891132A (en) Audio and video synchronization monitoring method and device, electronic equipment and storage medium
CN115665474A (en) Live broadcast method and device, electronic equipment and storage medium
EP2643977B1 (en) Method and apparatus for processing a video signal
CN113542856B (en) Method, device, equipment and computer readable medium for reverse playing of online video
CN114567812A (en) Audio playing method, device, system, electronic equipment and storage medium
CN113794942B (en) Method, apparatus, system, device and medium for switching view angle of free view angle video
CN112261349B (en) Image processing method and device and electronic equipment
WO2023197811A1 (en) Video downloading method and apparatus, video transmission method and apparatus, terminal device, server and medium
CN113259729A (en) Data switching method, server, system and storage medium
CN115695928A (en) Screen projection method and device, electronic equipment and storage medium
CN116264619A (en) Resource processing method, device, server, terminal, system and storage medium
CN115174946A (en) Display method, device, equipment, storage medium and program product of live broadcast page
CN114125358A (en) Cloud conference subtitle display method, system, device, electronic equipment and storage medium
KR20220034022A (en) Method, system, and computer readable record medium to implement fast switching mode between channels in multiple live transmission environment
KR102051985B1 (en) Synchronization of Media Rendering in Heterogeneous Networking Environments
CN112330996A (en) Control method, device, medium and electronic equipment for live broadcast teaching

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20200121

RJ01 Rejection of invention patent application after publication