CN114339353A - 音视频同步方法和装置及电子设备和计算机可读存储介质 - Google Patents
音视频同步方法和装置及电子设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN114339353A CN114339353A CN202111677757.0A CN202111677757A CN114339353A CN 114339353 A CN114339353 A CN 114339353A CN 202111677757 A CN202111677757 A CN 202111677757A CN 114339353 A CN114339353 A CN 114339353A
- Authority
- CN
- China
- Prior art keywords
- audio
- module
- video
- reference clock
- target player
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 105
- 230000001360 synchronised effect Effects 0.000 claims abstract description 68
- 238000004590 computer program Methods 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 8
- 238000005070 sampling Methods 0.000 claims description 8
- 238000013461 design Methods 0.000 abstract description 8
- 230000004044 response Effects 0.000 abstract description 4
- 238000012545 processing Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000002054 transplantation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/4302—Content synchronisation processes, e.g. decoder synchronisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0641—Change of the master or reference, e.g. take-over or failure of the master
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0652—Synchronisation among time division multiple access [TDMA] nodes, e.g. time triggered protocol [TTP]
- H04J3/0655—Synchronisation among time division multiple access [TDMA] nodes, e.g. time triggered protocol [TTP] using timestamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4305—Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4307—Synchronising 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/439—Processing of audio elementary streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content authoring involving timestamps for synchronizing content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/04—Synchronising
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/04—Synchronising
- H04N5/06—Generation of synchronising signals
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本发明公开了一种用于播放模块的音视频同步方法和装置以及电子设备和计算机可读存储介质,播放模块包括面向对象的程序语言标准库和内核驱动的音视频同步模块,该方法包括:响应于播放指令确定目标播放器,以由目标播放器构建音频模块和视频模块;在程序语言标准库创建对应目标播放器的同步实例,同步实例具有唯一的实例标识;根据实例标识获得对应同步实例的实时码流的参考时钟,并按照设定同步模式根据所述参考时钟控制对应目标播放器的音频模块和视频模块的数据输出。本发明的用于播放模块的音视频同步方法和装置以及电子设备和存储介质,采用面向对象的设计思路,支持多路播放和跨进程的音视频同步,移植性强,使用灵活。
Description
技术领域
本发明涉及多媒体技术领域,尤其是涉及一种用于播放模块的音视频同步方法,以及用于播放模块的音视频同步装置和电子设备及计算机可读存储介质。
背景技术
DTV(Digital Television,数字电视)和IPTV(Internet Protocol Television,交互式网络电视)是比较常见的视听系统。音视频同步是影响视听系统产品质量和用户体验的重要方面。
但是,实际应用中,视听系统例如DTV和IPTV产品采用的同步机制存在一些缺点,例如,比较难支持多路播放的同步,不能支持跨进程的音视频同步,同步机制与播放器的耦合比较紧密,移植难度大,使用不够灵活。
发明内容
本发明旨在至少解决现有技术中存在的技术问题。为此,本发明的第一个目的在于提出一种音视频同步方法,该音视频同步方法,可以实现多路播放同步以及支持跨进程的音视频同步,同步机制比较容易移植,使用更加灵活。
本发明的第二个目的在于提出一种音视频同步装置。
本发明的第三个目的在于提出一种电子设备。
本发明的第四个目的在于提出一种计算机可读存储介质。
为了达到上述目的,本发明第一方面实施例的用于播放模块的音视频同步方法,所述播放模块包括面向对象的程序语言标准库和内核驱动,所述音视频同步方法包括:响应于播放指令确定目标播放器,以由所述目标播放器构建音频模块和视频模块;在所述程序语言标准库创建对应所述目标播放器的同步实例,其中,所述同步实例具有唯一的实例标识;根据所述实例标识获得对应同步实例的参考时钟,并根据所述参考时钟控制对应目标播放器的音频模块和视频模块的数据输出。
根据本发明实施例的用于播放模块的音视频同步方法,采用面向对象的设计思路,通过实例和实例标识来进行同步处理,可以支持多路播放和跨进程的同步场景,音视频同步模块采用程序语言标准库和内核驱动的形式,任何播放器、任何模块只要将程序语言标准库编译进入,调用程序语言标准库同步相关的方法,即可实现音视频同步,移植性强,使用场景更加灵活。
为了达到上述目的,本发明第二方面实施例的用于播放模块的音视频同步装置,包括:构建模块,用于响应于播放指令确定目标播放器,以由所述目标播放器构建音频模块和视频模块;程序语言标准库,用于创建对应所述目标播放器的同步实例,其中,所述同步实例具有唯一的实例标识;内核驱动,用于根据所述实例标识获得对应同步实例的参考时钟,并根据所述参考时钟控制对应目标播放器的音频模块和视频模块的数据输出。
根据本发明实施例的用于播放模块的音视频同步装置,采用面向对象的设计思路,通过实例和实例标识来进行同步处理,可以支持多路播放和跨进程的同步场景,采用程序语言标准库和内核驱动的形式,任何播放器、任何模块只要将程序语言标准库编译进入,调用程序语言标准库同步相关的方法,即可实现音视频同步,移植性强,使用场景更加灵活。
为了达到上述目的,本发明第三方面实施例的电子设备,包括:处理器;与所述处理器通信连接的存储器;其中,所述存储器中存储有可被所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现所述的用于播放模块的音视频同步方法。
根据本发明实施例的电子设备,通过处理器执行上面实施例的用于播放模块的音视频同步方法,可以支持多路播放和跨进程的同步场景,同步处理采用程序语言标准库和内核驱动的形式,任何播放器、任何模块只要将程序语言标准库编译进入,调用程序语言标准库同步相关的方法,即可实现音视频同步,移植性强,使用场景更加灵活。
为了达到上述目的,本发明第四方面实施例的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的用于播放模块的音视频同步方法。
根据本发明实施例的计算机可读存储介质,其中存储计算机程序介质,该计算机程序被执行时实现上面第一方面实施例的用于播放模块的音视频同步方法,该方法采用面向对象的设计思路,通过实例和实例标识来进行同步处理,可以支持多路播放和跨进程的同步场景,同步处理采用程序语言标准库和内核驱动的形式,任何播放器、任何模块只要将程序语言标准库编译进入,调用程序语言标准库同步相关的方法,即可实现音视频同步,移植性强,使用场景更加灵活。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1是根据本发明的一个实施例的实现多路播放音视频同步的示意图;
图2是根据本发明的一个实施例的跨进程音视频同步的示意图;
图3是根据本发明的一个实施例的用于播放模块的音视频同步装置的框图;
图4是根据本发明的一个实施例的电子设备的框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本发明实施例的用于播放模块的音视频同步方法,采用面向对象的设计思路和程序语言,可以支持多路播放的同步,也可以实现跨进程同步,以及同步模块与播放器的耦合较少,更容易移植,使用更加灵活。
其中,面向对象是软件开发方法,一种编程范式。在面向对象程序设计中,对象所指的是计算机系统中的某一个成分,对象可以包含两个含义,其中一个是数据,另外一个是动作。对象则是数据和动作的结合体。对象不仅能够进行操作,同时还能够及时记录下操作结果。方法是指对象能够进行的操作,方法同时还有另外一个名称,叫做函数。方法是类中的定义函数,其具体的作用就是对对象进行描述操作。
在本发明的实施例中,播放模块可以为芯片组或者音视频播放产品例如电视机等,播放模块采用面向对象的程序语言标准(例如C++library)和内核驱动(kerneldriver)的形式,其中,程序语言标准例如C++l ibrary(C++库)中创建有同步实例,同步实例也就是面向对象程序中的对象,其以音视频为对象以及还包括以音视频为对象的方法。内核驱动保存有核心同步数据,程序语言标准库与内核驱动进行交互,可以获取所需核心同步数据以进行音视频的同步处理。在实施例中,播放模块可以为插件或者软件包或程序库。
下面参考图1和图2描述根据本发明实施例的用于播放模块的音视频同步方法。
本发明实施例的用于播放模块的音视频同步方法至少包括以下步骤S1-S4,具体如下。
步骤S1,响应于播放指令确定目标播放器,以由目标播放器构建音频模块和视频模块。
在实施例中,用户可以通过遥控器或者触控板来输入播放指令,播放指令可以为单路播放指令例如打开某个视频,播放指令也可以为多路播放指令,例如打开多个播放画面,具体地例如电视机播放中的画中画。
在实施例中,会存在多个空闲播放通道即当前未处于播放状态的播放器,接收到播放指令后,内核驱动可以将其中的一个或几个空闲播放器来用于播放音视频,即作为目标播放器。
具体地,目标播放器构建运行音频码流的线程以作为音频模块,以及,构建运行视频码流的线程以作为视频模块。
步骤S2,在程序语言标准库中创建对应目标播放器的同步实例。
其中,同步实例为面向对象程序设计中的概念也就是对象,其具有唯一的实例标识即instance id。
在实施例中,内核驱动中配置有管理同步实例的表,本文可以将该表称为实例管理表,程序语言标准库例如C++库中每创建一个同步实例,内核驱动会在实例管理表中创建一个node(节点)来进行管理,其中,将实例标识作为唯一标识进行标识。C++库中的方法的所有操作都以实例标识为参数,来对应内核驱动中instance的节点。
具体地,程序语言标准库例如C++库创建以目标播放器中音频模块和视频模块为对象及其操作方法的实例,音频模块和视频模块可以同进程也可以跨进程。
步骤S3,根据实例标识获得对应同步实例的参考时钟,并根据参考时钟控制对应目标播放器的音频模块和视频模块的数据输出。
其中,内核驱动可以根据实例标识来识别目标播放器,即识别哪路播放器来播放音视频,也即识别需要管理哪路instance。在实施例中,本发明实施例的音视频同步方法可以支持多种同步模式,例如,视频主控模式(video master)、音频主控模式(audiomaster)、时钟主控模式(pcr master)、free run等基本同步模式。
在本发明的实施例中,参考时钟可以为实时码流的节目参考时钟或者系统参考时钟。实时码流的节目参考时钟可以包括音视频的显示时间戳、音频时间戳等,有的还包括节目参考时钟,而有的实时码流不包括节目参考时钟。因此,若实时码流包括节目参考时钟时,则根据实例标识获得对应同步实例的实时码流的节目参考时钟,若不包括节目参考时钟码流,则获得对应同步实例的系统参考时钟。
具体地,内核驱动可以从解复用(demux)或第三方直接输入来获得实时码流的节目参考时钟,包括对应各个目标播放器的码流的节目参考时钟,进而根据实例标识识别出哪路目标播放器,以及目标播放器对应的同步实例,以获得对应同步实例的实时码流的节目参考时钟或系统参考时钟以及音视频的时间戳。在本发明实施例中,音视频的播放时机除了与其时间戳、参考时钟有关还考虑同步模式,即根据不同的同步模式来调整音视频播放的时间。其中,同步模式在程序设计时可以根据需要来设定,即按照设定同步模式控制对应目标播放器的音频模块和视频模块的数据输出时机,以使得每个目标播放器播放的音视频同步。
在一些实施例中,对于多路播放,每路播放按照上面实施例的过程控制每路播放器的音频模块和视频模块进行同步播放,因此,可以达到每路播放器的音视频同步效果。
图1为根据本发明的一个实施例的两路播放同步方法的示意图,如图1所示,其中,用户user端1发出两路播放指令,例如确定player0和player1为目标播放器,每路播放器构建音频线程和视频线程即音频模块和视频模块,每个播放器的音频模块2和视频模块3通过调用程序语言标准库102例如C++library的同步实例的方法来与内核驱动103中对应的instance节点进行交互,其中,内核驱动103的媒体同步驱动4根据实例标识例如instance0、instance1来确定哪路播放器的同步实例,从而获得同步数据即对应音视频的码流数据的节目参考时钟或者系统参考时钟,再按照设定同步模式,根据对应的参考时钟来控制对应player0和player1中音频模块和视频模块的数据输出时机,从而实现player0和player1中音视频的同步播放,即本发明实施例的音视频同步方法也适用于多路播放场景的音视频同步。
在另一些实施例中,跨进程的音频模块和视频模块,通过采用上面实施例的程序语言标准库例如C++库的同步实例及其实例标识,也可以进行同步处理,达到音视频同步的目的。
因此,根据本发明实施例的用于播放模块的音视频同步方法,采用面向对象的设计思路,通过实例和实例标识来进行同步处理,可以支持多路播放和跨进程的同步场景,同步模块采用程序语言标准库库和内核驱动的形式,任何播放器、任何模块只要将程序语言标准库编译进入,调用程序语言标准库同步相关的方法,即可实现音视频同步,移植性强,使用场景更加灵活。
在一些实施例中,如图2所示,为根据本发明的一个实施例的跨进程音视频同步的示意图,目标播放器的音频模块2和视频模块3属于不同进程,内核驱动103中保存核心同步数据,程序语言标准库102例如C++库可以采用ioctl(input/output control)与内核驱动交互获取核心同步数据,程序语言标准库102根据获得的同步数据做出正确的同步处理,可以实现跨进程的音视频同步。其中,在计算机领域,ioctl是一个专用于设备输入输出操作的系统调用,该调用传入一个跟设备有关的请求码例如实例标识。具体地,user端1发出播放指令,player1为目标播放器,player1构建不同进程的音频模块2和视频模块3,音频模块2和视频模块3分别通过调用程序语言标准库102中的同步方法获得内核驱动103中的对应同步实例的同步数据例如码流数据的参考时钟,其中,内核驱动103根据实例标识可以识别对应同步实例例如instance1的同步数据,进而再按照设定同步模式和参考时钟来控制对应player1中音频模块2和视频模块3的数据输出时机,从而实现player1中音视频的同步播放,因此本发明实施例的音视频同步方法,基于程序语言标准库102例如C++库和内核驱动的音视频同步模块,通过同步实例和实例标识可以实现跨进程音视频的同步处理。
下面对本发明实施例中采用的几种同步模式进行说明。其中,在程序设计时,可以根据具体应用和需求来设定同步模式。
在一些实施例中,设定同步模式包括时钟主控模式,时钟主控模式可以用于实时码流包括节目参考时钟的情况。在时钟主控模式下,内核驱动可以根据实例标识识别目标播放器属于哪路播放器,以获得对应同步实例的同步数据;内核驱动获得目标播放器中音频模块通过调用程序语言标准库例如C++库的方法发送的音频时间戳,以及获得目标播放器对应同步实例的实时码流的节目参考信息,并根据音频时间戳和节目参考时钟控制音频模块的音频数据输出,例如,音频时间戳与节目参考时钟的时间一致,则控制音频模块输出音频,反之,则音频模块不输出音频数据。
举例说明,其中程序语言标准库以C++库为例,内核驱动从硬件解复用demux中获取实时码流的时钟信息PCR(program clock reference,节目时钟参考),音频模块通过调用C++库中的同步方法,将音频模块的audio pcm数据对应的PTS(Presentation TimeStamp,时间戳)发送给C++库,C++库从内核驱动获取对应instance的PCR,根据PCR来判断该audio pcm(Pulse Code Modulation,脉冲编码调制)数据包是否输出,例如,audio pcm数据对应的PTS与对应instance的PCR一致,则该audio pcm数据包输出,反之,则audio pcm数据包不输出。
对于视频模块的视频播放,与上文的音频模块输出相同。具体地,内核驱动获得目标播放器中视频模块通过调用程序语言标准库的方法发送的显示时间戳以及目标播放器对应同步实例的实时码流的节目参考时钟;内核驱动根据所述显示时间戳和节目参考时钟控制视频模块的视频帧的输出。
举例说明,视频模块通过调用C++库中的同步方法,将视频模块的video pcm数据对应的PTS发送给C++库,C++库从内核驱动获取对应instance的PCR,根据PCR来判断该video pcm数据包是否输出,例如,video pcm数据对应的PTS与对应instance的PCR一致,则该video pcm数据包输出,反之,则video pcm数据包不输出。
简而言之,时钟主控模式下,以目标播放器对应同步实例的节目参考时钟为基准,将音频模块和视频模块均与对应同步实例的时钟相同步,从而达到音视频同步的目的。
在一些实施例中,设定同步模块包括音频主控模式,音频主控模式可以用于码流不包含节目参考时钟的情况。
在音频主控模式下,以音频模块的数据输出时间为基准,将视频模块的数据输出与音频模块的时间同步。具体地,内核驱动控制音频模块按照本身的采样率输出;内核驱动根据实例标识识别目标播放器属于哪路播放器;内核驱动获得目标播放器中音频模块通过调用程序语言标准库例如C++库的方法发送的音频时间戳,并将音频时间戳作为目标播放器对应同步实例的同步锚点时间,以及获取对应同步实例的系统参考时钟;内核驱动根据同步锚点时间以及系统参考时钟控制目标播放器中视频模块的视频帧的输出。
举例说明,音频模块正常输出即按照其本身的采样率来输出数据,同时通过调用C++库的方法,将对应的音频模块当前输出的PTS通过C++库发送给内核驱动对应的instance节点,作为同步锚点时间。视频模块通过C++库的方法,获取内核驱动对应的instance的同步锚点时间信息,决定当前的视频帧的输出时间及策略,以实现视频模块和音频模块的同步输出。例如,确定相邻两帧的音频时间戳对应的系统参考时钟以获得系统参考时钟偏差,根据同步锚点时间和系统参考时钟偏差确定下一帧音频的播放时间即即将播放的音频时间,在对应该音频时间的点控制视频帧输出,从而实现音视频同步输出。
在一些实施例中,设定同步模式包括视频主控模式,视频主控模式可以用于码流不包含节目参考时钟的情况。
在视频主控模式下,以视频模块的数据输出时间为基准,将音频模块的数据输出与视频模块的时间同步。具体地,内核驱动控制视频模块按照本身的采样率输出;内核驱动根据实例标识识别目标播放器属于哪路播放器;内核驱动获得目标播放器中视频模块通过调用所述程序语言标准库的方法发送的显示时间戳,并将视频时间戳作为目标播放器对应同步实例的同步锚点时间;内核驱动根据同步锚点时间以及系统参考时钟控制目标播放器中音频模块的音频数据输出。例如,确定相邻两帧的视频时间戳对应的系统参考时钟以获得系统参考时钟偏差,根据同步锚点时间和系统参考时钟偏差确定下一帧视频的播放时间即即将播放的视频时间,在对应该视频时间的点控制音频帧输出,从而实现音视频同步输出。
例如,视频模块正常输出即按照其本身的采样率来输出,同时通过调用C++库的方法,将对应的视频模块当前输出的PTS通过C++库发送给内核驱动对应的instance节点,作为同步锚点时间。音频模块通过调用C++库的方法,获取内核驱动对应的instance的同步锚点时间信息,以决定当前的音频模块pcm数据的输出时间以及策略,以实现音频模块和视频模块的同步输出。
在本发明的实施例中,本发明实施例的用于播放模块的音视频同步方法可以用于倍速播放、微速播放、显示帧率控制、丢帧、drop pcm中至少一种的音视频同步。换句话说,本发明实施例的用于播放模块的音视频同步方法,基于程序语言标准库例如C++库和内核驱动的形式,通过同步实例和实例标识的同步处理,适用于倍速播放、微速播放、显示帧率控制、丢帧、drop pcm中的任何一种场景,均可以达到音视频同步的目的,即本发明的音视频同步方法可以将核心的同步机制完全涵盖在内,从而同步模块可以作为一个独立模块被各类产品、各种场景来灵活使用。
基于上面实施例的音视频同步方法,下面参照附图描述根据本发明第二方面实施例的用于播放模块的音视频同步装置。
图3是根据本发明的一个实施例的音视频同步装置的框图,如图3所示,本发明实施例的音视频同步装置100包括构建模块101、程序语言标准库102和内核驱动103。
其中,构建模块101用于响应于播放指令确定目标播放器,以由目标播放器构建音频模块和视频模块;程序语言标准库102用于创建对应目标播放器的同步实例,其中,同步实例具有唯一的实例标识;内核驱动103用于根据实例标识获得对应同步实例的参考时钟,并根据参考时钟控制对应目标播放器的音频模块和视频模块的数据输出,其中,在一些实施例中,参考时钟可以为实时码流的节目参考时钟或者系统参考时钟。
根据本发明实施例的用于播放模块的音视频同步装置100,采用面向对象的设计思路,通过实例和实例标识来进行同步处理,可以支持多路播放和跨进程的同步场景,采用程序语言标准库102和内核驱动103的形式,任何播放器、任何模块只要将程序语言标准库102编译进入,调用程序语言标准库102同步相关的方法,即可实现音视频同步,移植性强,使用场景更加灵活。
在一些实施例中,目标播放器的音频模块和视频模块属于不同进程,程序语言标准库102可以采用ioctl与内核驱动103交互,以实现跨进程音视频同步。
在一些实施例中,所述设定同步模式包括时钟主控模式;内核驱动103还用于执行以下步骤:根据所述实例表示识别目标播放器;获得所述目标播放器中音频模块通过调用所述程序语言标准库102例如C++库的方法发送的音频时间戳,以及获得所述目标播放器对应同步实例的实时码流的节目参考时钟;根据所述音频时间戳和所述节目参考时钟控制所述音频模块的音频数据输出。
在一些实施例中,内核驱动103还用于获得目标播放器中视频模块通过调用程序语言标准库102例如C++库的方法发送的显示时间戳以及目标播放器对应同步实例的实时码流的节目参考时钟;根据显示时间戳和节目参考时钟控制视频模块的视频帧的输出。
在一些实施例中,设定同步模式包括音频主控模式;内核驱动103控制音频模块按照本身的采样率输出;内核驱动103还用于根据实例表示识别目标播放器,获得目标播放器中音频模块通过调用程序语言标准库102例如C++库的方法发送的音频时间戳,并将音频时间戳作为目标播放器对应同步实例的同步锚点时间,以及,获取所述对应同步实例的系统参考时钟;根据同步锚点时间以及系统参考时钟控制目标播放器中视频模块的视频帧的输出。
在一些实施例中,设定同步模式包括视频主控模式;内核驱动103控制视频模块按照本身的采样率输出;内核驱动103还用于根据实例表示识别目标播放器,获得目标播放器中视频模块通过调用程序语言标准库102例如C++库的方法发送的显示时间戳,并将视频时间戳作为目标播放器对应同步实例的同步锚点时间,以及,获取所述对应同步实例的系统参考时钟,根据同步锚点时间以及系统参考时钟控制目标播放器中音频模块的音频数据输出。
在一些实施例中,音视频同步装置100包括倍速播放、微速播放、显示帧率控制、丢帧、drop pcm中至少一种的音视频同步机制,可以作为独立的装置。
图4是根据本发明的一个实施例的电子设备的框图,如图4所示,电子设备10包括处理器11和与处理器11通信连接的存储器12。
在实施例中,电子设备10可以包括数字电视、交互式网络电视或者其它可采用本发明上面实施例的音视频同步方法的设备。
其中,存储器12中存储有可被处理器11执行的计算机程序,处理器11执行计算机程序时实现上面实施例的音视频同步方法。
根据本发明实施例的电子设备10,通过处理器11执行上面实施例的用于播放模块的音视频同步方法,可以支持多路播放和跨进程的同步场景,同步处理采用程序语言标准库例如C++库和内核驱动的形式,任何播放器、任何模块只要将程序语言标准库编译进入,调用程序语言标准库同步相关的方法,即可实现音视频同步,移植性强,使用场景更加灵活。
本发明第四方面实施例还提出一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上面实施例的音视频同步方法,音视频同步方法参照上面第一方面实施例的描述,在此不作赘述。
根据本发明实施例的计算机可读存储介质,其中存储计算机程序介质,该计算机程序被执行时实现上面第一方面实施例的音视频同步方法,该方法采用面向对象的设计思路,通过实例和实例标识来进行同步处理,可以支持多路播放和跨进程的同步场景,同步处理采用程序语言标准库例如C++库和内核驱动的形式,任何播放器、任何模块只要将程序语言标准库编译进入,调用程序语言标准库同步相关的方法,即可实现音视频同步,移植性强,使用场景更加灵活。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,比如静态随机存取存储器(Static Random Access Memory,SRAM)和动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示意性实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
Claims (10)
1.一种用于播放模块的音视频同步方法,所述播放模块包括面向对象的程序语言标准库和内核驱动,其特征在于,所述音视频同步方法包括:
响应于播放指令,确定目标播放器,以由所述目标播放器构建音频模块和视频模块;
在所述程序语言标准库创建对应所述目标播放器的同步实例,其中,所述同步实例具有唯一的实例标识;
根据所述实例标识获得对应同步实例的参考时钟,并根据所述参考时钟控制对应目标播放器的音频模块和视频模块的数据输出。
2.根据权利要求1所述的用于播放模块的音视频同步方法,其特征在于,
所述参考时钟包括实时码流的节目参考时钟;
根据所述实例标识获得对应同步实例的参考时钟,并根据所述参考时钟控制对应目标播放器的音频模块和视频模块的数据输出,包括:
所述内核驱动确定设定同步模式为时钟主控模式;
所述内核驱动根据所述实例标识识别目标播放器;
所述内核驱动获得所述目标播放器中音频模块通过调用所述程序语言标准库的方法发送的音频时间戳,以及获得所述目标播放器对应同步实例的实时码流的所述节目参考时钟;
所述内核驱动根据所述音频时间戳和所述节目参考时钟控制所述音频模块的音频数据输出。
3.根据权利要求2所述的用于播放模块的音视频同步方法,其特征在于,还包括:
所述内核驱动获得所述目标播放器中视频模块通过调用所述程序语言标准库的方法发送的显示时间戳以及所述目标播放器对应同步实例的实时码流的节目参考时钟;
所述内核驱动根据所述显示时间戳和所述节目参考时钟控制所述视频模块的视频帧的输出。
4.根据权利要求1所述的用于播放模块的音视频同步方法,其特征在于,
所述参考时钟包括系统参照时钟;
根据所述实例标识获得对应同步实例的参考时钟,并根据所述参考时钟控制对应目标播放器的音频模块和视频模块的数据输出,包括:
所述内核驱动确定设定同步模式为音频主控模式;
所述内核驱动控制音频模块按照本身的采样率输出;
所述内核驱动根据所述实例表示识别目标播放器;
所述内核驱动获得所述目标播放器中音频模块通过调用所述C++库的方法发送的音频时间戳,并将所述音频时间戳作为所述目标播放器对应同步实例的同步锚点时间,以及,获取所述对应同步实例的所述系统参考时钟;
所述内核驱动根据所述同步锚点时间和所述系统参考时钟控制所述目标播放器中视频模块的视频帧的输出。
5.根据权利要求1所述的用于播放模块的音视频同步方法,其特征在于,
所述参考时钟包括系统参照时钟;
根据所述实例标识获得对应同步实例的参考时钟,并根据所述参考时钟控制对应目标播放器的音频模块和视频模块的数据输出,包括:
所述内核驱动确定设定同步模式为视频主控模式;
所述内核驱动控制视频模块按照本身的采样率输出;
所述内核驱动根据所述实例表示识别目标播放器;
所述内核驱动获得所述目标播放器中视频模块通过调用所述程序语言标准库的方法发送的显示时间戳,并将所述视频时间戳作为所述目标播放器对应同步实例的同步锚点时间,以及,获取所述对应同步实例的所述系统参考时钟;
所述内核驱动根据所述同步锚点时间和所述系统参考时钟控制所述目标播放器中音频模块的音频数据输出。
6.根据权利要求1-5任一项所述的用于播放模块的音视频同步方法,其特征在于,所述音视频同步方法用于倍速播放、微速播放、显示帧率控制、丢帧、drop pcm中至少一种的音视频同步。
7.根据权利要求1-5任一项所述的用于播放模块的音视频同步方法,其特征在于,所述目标播放器的音频模块和视频模块属于不同进程,所述程序语言标准库采用ioctl与所述内核驱动交互。
8.一种用于播放模块的音视频同步装置,其特征在于,包括:
接收模块,用于接收到;
构建模块,用于响应于播放指令确定目标播放器,以由所述目标播放器构建音频模块和视频模块;
程序语言标准库,用于创建对应所述目标播放器的同步实例,其中,所述同步实例具有唯一的实例标识;
内核驱动,用于根据所述实例标识获得对应同步实例的参考时钟,并根据所述参考时钟控制对应目标播放器的音频模块和视频模块的数据输出。
9.一种电子设备,其特征在于,包括:
处理器;
与所述处理器通信连接的存储器;
其中,所述存储器中存储有可被所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1-7任一项所述的用于播放模块的音视频同步方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任一项所述的用于播放模块的音视频同步方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111677757.0A CN114339353B (zh) | 2021-12-31 | 2021-12-31 | 音视频同步方法和装置及电子设备和计算机可读存储介质 |
EP22913454.9A EP4391555A1 (en) | 2021-12-31 | 2022-08-30 | Audio and video synchronization method and apparatus, electronic device and computer-readable storage medium |
PCT/CN2022/115903 WO2023124173A1 (zh) | 2021-12-31 | 2022-08-30 | 音视频同步方法和装置及电子设备和计算机可读存储介质 |
US18/632,329 US20240259126A1 (en) | 2021-12-31 | 2024-04-11 | Audio and video synchronization method and device, electronic device, and computer readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111677757.0A CN114339353B (zh) | 2021-12-31 | 2021-12-31 | 音视频同步方法和装置及电子设备和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114339353A true CN114339353A (zh) | 2022-04-12 |
CN114339353B CN114339353B (zh) | 2023-09-29 |
Family
ID=81023288
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111677757.0A Active CN114339353B (zh) | 2021-12-31 | 2021-12-31 | 音视频同步方法和装置及电子设备和计算机可读存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240259126A1 (zh) |
EP (1) | EP4391555A1 (zh) |
CN (1) | CN114339353B (zh) |
WO (1) | WO2023124173A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115695843A (zh) * | 2022-10-27 | 2023-02-03 | 中国联合网络通信集团有限公司 | 预制视频播放方法、服务器、终端、介质及系统 |
WO2023124173A1 (zh) * | 2021-12-31 | 2023-07-06 | 晶晨半导体(上海)股份有限公司 | 音视频同步方法和装置及电子设备和计算机可读存储介质 |
Citations (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5202981A (en) * | 1989-10-23 | 1993-04-13 | International Business Machines Corporation | Process and apparatus for manipulating a boundless data stream in an object oriented programming system |
US5247669A (en) * | 1989-10-23 | 1993-09-21 | International Business Machines Corporation | Persistent data interface for an object oriented programming system |
US5410702A (en) * | 1989-10-23 | 1995-04-25 | International Business Machines Corporation | Slot objects for an object oriented programming system |
US5452435A (en) * | 1993-03-31 | 1995-09-19 | Kaleida Labs, Inc. | Synchronized clocks and media players |
US5488721A (en) * | 1993-01-26 | 1996-01-30 | International Business Machines Corporation | System and method for applying visitor lock and persistent lock flags to control units of work boundaries in an object oriented environment |
WO1996018152A1 (en) * | 1994-12-06 | 1996-06-13 | Intel Corporation | An improved method and apparatus for embedding a real-time multi-tasking kernel in a non-real-time operating system |
US5642171A (en) * | 1994-06-08 | 1997-06-24 | Dell Usa, L.P. | Method and apparatus for synchronizing audio and video data streams in a multimedia system |
US5815689A (en) * | 1997-04-04 | 1998-09-29 | Microsoft Corporation | Method and computer program product for synchronizing the processing of multiple data streams and matching disparate processing rates using a standardized clock mechanism |
JP2001222460A (ja) * | 2000-02-07 | 2001-08-17 | Toshiba Corp | Rdbシステム及び記録媒体 |
JP2002313072A (ja) * | 2001-04-13 | 2002-10-25 | Alpine Electronics Inc | オーディオ装置 |
CN1436001A (zh) * | 2002-01-28 | 2003-08-13 | 北京华诺信息技术有限公司 | 解码系统中实现视频与音频同步的方法 |
US20040062204A1 (en) * | 2002-09-30 | 2004-04-01 | Bearden Mark J. | Communication system endpoint device with integrated call synthesis capability |
US6924843B1 (en) * | 1999-02-26 | 2005-08-02 | Canon Kabushiki Kaisha | Image display apparatus control system and image display system control method |
US20050289601A1 (en) * | 2004-06-15 | 2005-12-29 | Samsung Electronics Co., Ltd. | Method and apparatus for decoding MOT data |
JP2006099297A (ja) * | 2004-09-29 | 2006-04-13 | Nec Corp | 共有ライブラリ差分カストマイズ装置及びその方法 |
US20080168475A1 (en) * | 2007-01-07 | 2008-07-10 | De Cesare Joshua | Method and Apparatus for Intercommunications Amongst Device Drivers |
CN101887739A (zh) * | 2010-06-25 | 2010-11-17 | 华为技术有限公司 | 媒体播放同步的方法及装置 |
US20140049689A1 (en) * | 2011-12-05 | 2014-02-20 | Guangzhou Ucweb Computer Technology Co., Ltd | Method and apparatus for streaming media data processing, and streaming media playback equipment |
CN104333808A (zh) * | 2014-11-14 | 2015-02-04 | 复旦大学 | 用于Android及Linux智能电视机上的通用播放器 |
CN104714844A (zh) * | 2013-12-17 | 2015-06-17 | 华为技术有限公司 | 轻量级操作系统部署方法及装置 |
US20160173931A1 (en) * | 2014-12-10 | 2016-06-16 | Echostar Technologies L.L.C. | Methods, devices and systems for audiovisual synchronization with multiple output devices |
US20170289609A1 (en) * | 2016-03-31 | 2017-10-05 | Le Holdings(Beijing)Co., Ltd. | Method and device for playing multimedia data synchronously |
CN109120974A (zh) * | 2018-07-25 | 2019-01-01 | 深圳市异度信息产业有限公司 | 一种音视频同步播放的方法及装置 |
CN109729404A (zh) * | 2019-01-15 | 2019-05-07 | 晶晨半导体(上海)股份有限公司 | 一种基于嵌入式的播放器的同步调制方法及系统 |
US20190268654A1 (en) * | 2016-06-06 | 2019-08-29 | Shenzhen Tcl Digital Technology Ltd. | Method and system for starting smart television |
CN110225385A (zh) * | 2019-06-19 | 2019-09-10 | 鼎桥通信技术有限公司 | 一种音视频同步调整方法和装置 |
CN111158470A (zh) * | 2019-12-17 | 2020-05-15 | 瑞声科技(新加坡)有限公司 | 控制输出振动信号的方法、装置、计算机设备及存储介质 |
CN111757158A (zh) * | 2020-06-29 | 2020-10-09 | 北京百度网讯科技有限公司 | 音视频同步播放方法、装置、设备和存储介质 |
CN111787365A (zh) * | 2020-07-17 | 2020-10-16 | 易视腾科技股份有限公司 | 多路音视频同步方法及装置 |
CN112218115A (zh) * | 2020-09-25 | 2021-01-12 | 深圳市捷视飞通科技股份有限公司 | 流媒体音视频同步的控制方法、装置、计算机设备 |
CN113504886A (zh) * | 2021-05-08 | 2021-10-15 | 辛巴网络科技(南京)有限公司 | 一种基于MediaSession框架的多音频聚合车载多媒体方法 |
CN113596549A (zh) * | 2020-10-13 | 2021-11-02 | 杭州涂鸦信息技术有限公司 | 基于不同参考时钟的音视频同步方法、装置和计算机设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6941383B1 (en) * | 2000-01-20 | 2005-09-06 | Interactual Technologies, Inc. | System, method and article of manufacture for java/javascript component in a multimedia synchronization framework |
JP2007049466A (ja) * | 2005-08-10 | 2007-02-22 | Canon Inc | 同期再生方法、および同期再生ソフトウェア |
US10380526B2 (en) * | 2013-09-03 | 2019-08-13 | Oracle International Corporation | System and method for providing a process player for use with a business process design environment |
CN106354458B (zh) * | 2016-08-26 | 2019-09-20 | 青岛海信移动通信技术股份有限公司 | 双屏显示方法及装置 |
US10362346B2 (en) * | 2017-04-20 | 2019-07-23 | Apple Inc. | Simultaneous playback for multiple audience members with different visual and audio needs |
CN111405337A (zh) * | 2020-02-17 | 2020-07-10 | 福州瑞芯微电子股份有限公司 | 安卓系统的双屏异声的实现的方法、装置、设备和介质 |
CN114339353B (zh) * | 2021-12-31 | 2023-09-29 | 晶晨半导体科技(北京)有限公司 | 音视频同步方法和装置及电子设备和计算机可读存储介质 |
-
2021
- 2021-12-31 CN CN202111677757.0A patent/CN114339353B/zh active Active
-
2022
- 2022-08-30 EP EP22913454.9A patent/EP4391555A1/en active Pending
- 2022-08-30 WO PCT/CN2022/115903 patent/WO2023124173A1/zh active Application Filing
-
2024
- 2024-04-11 US US18/632,329 patent/US20240259126A1/en active Pending
Patent Citations (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5202981A (en) * | 1989-10-23 | 1993-04-13 | International Business Machines Corporation | Process and apparatus for manipulating a boundless data stream in an object oriented programming system |
US5247669A (en) * | 1989-10-23 | 1993-09-21 | International Business Machines Corporation | Persistent data interface for an object oriented programming system |
US5410702A (en) * | 1989-10-23 | 1995-04-25 | International Business Machines Corporation | Slot objects for an object oriented programming system |
US5488721A (en) * | 1993-01-26 | 1996-01-30 | International Business Machines Corporation | System and method for applying visitor lock and persistent lock flags to control units of work boundaries in an object oriented environment |
US5452435A (en) * | 1993-03-31 | 1995-09-19 | Kaleida Labs, Inc. | Synchronized clocks and media players |
US5642171A (en) * | 1994-06-08 | 1997-06-24 | Dell Usa, L.P. | Method and apparatus for synchronizing audio and video data streams in a multimedia system |
WO1996018152A1 (en) * | 1994-12-06 | 1996-06-13 | Intel Corporation | An improved method and apparatus for embedding a real-time multi-tasking kernel in a non-real-time operating system |
US5815689A (en) * | 1997-04-04 | 1998-09-29 | Microsoft Corporation | Method and computer program product for synchronizing the processing of multiple data streams and matching disparate processing rates using a standardized clock mechanism |
US6924843B1 (en) * | 1999-02-26 | 2005-08-02 | Canon Kabushiki Kaisha | Image display apparatus control system and image display system control method |
JP2001222460A (ja) * | 2000-02-07 | 2001-08-17 | Toshiba Corp | Rdbシステム及び記録媒体 |
JP2002313072A (ja) * | 2001-04-13 | 2002-10-25 | Alpine Electronics Inc | オーディオ装置 |
CN1436001A (zh) * | 2002-01-28 | 2003-08-13 | 北京华诺信息技术有限公司 | 解码系统中实现视频与音频同步的方法 |
US20040062204A1 (en) * | 2002-09-30 | 2004-04-01 | Bearden Mark J. | Communication system endpoint device with integrated call synthesis capability |
US20050289601A1 (en) * | 2004-06-15 | 2005-12-29 | Samsung Electronics Co., Ltd. | Method and apparatus for decoding MOT data |
JP2006099297A (ja) * | 2004-09-29 | 2006-04-13 | Nec Corp | 共有ライブラリ差分カストマイズ装置及びその方法 |
US20080168475A1 (en) * | 2007-01-07 | 2008-07-10 | De Cesare Joshua | Method and Apparatus for Intercommunications Amongst Device Drivers |
CN101887739A (zh) * | 2010-06-25 | 2010-11-17 | 华为技术有限公司 | 媒体播放同步的方法及装置 |
US20140049689A1 (en) * | 2011-12-05 | 2014-02-20 | Guangzhou Ucweb Computer Technology Co., Ltd | Method and apparatus for streaming media data processing, and streaming media playback equipment |
CN104714844A (zh) * | 2013-12-17 | 2015-06-17 | 华为技术有限公司 | 轻量级操作系统部署方法及装置 |
CN104333808A (zh) * | 2014-11-14 | 2015-02-04 | 复旦大学 | 用于Android及Linux智能电视机上的通用播放器 |
US20160173931A1 (en) * | 2014-12-10 | 2016-06-16 | Echostar Technologies L.L.C. | Methods, devices and systems for audiovisual synchronization with multiple output devices |
US20170289609A1 (en) * | 2016-03-31 | 2017-10-05 | Le Holdings(Beijing)Co., Ltd. | Method and device for playing multimedia data synchronously |
US20190268654A1 (en) * | 2016-06-06 | 2019-08-29 | Shenzhen Tcl Digital Technology Ltd. | Method and system for starting smart television |
CN109120974A (zh) * | 2018-07-25 | 2019-01-01 | 深圳市异度信息产业有限公司 | 一种音视频同步播放的方法及装置 |
CN109729404A (zh) * | 2019-01-15 | 2019-05-07 | 晶晨半导体(上海)股份有限公司 | 一种基于嵌入式的播放器的同步调制方法及系统 |
CN110225385A (zh) * | 2019-06-19 | 2019-09-10 | 鼎桥通信技术有限公司 | 一种音视频同步调整方法和装置 |
CN111158470A (zh) * | 2019-12-17 | 2020-05-15 | 瑞声科技(新加坡)有限公司 | 控制输出振动信号的方法、装置、计算机设备及存储介质 |
CN111757158A (zh) * | 2020-06-29 | 2020-10-09 | 北京百度网讯科技有限公司 | 音视频同步播放方法、装置、设备和存储介质 |
CN111787365A (zh) * | 2020-07-17 | 2020-10-16 | 易视腾科技股份有限公司 | 多路音视频同步方法及装置 |
CN112218115A (zh) * | 2020-09-25 | 2021-01-12 | 深圳市捷视飞通科技股份有限公司 | 流媒体音视频同步的控制方法、装置、计算机设备 |
CN113596549A (zh) * | 2020-10-13 | 2021-11-02 | 杭州涂鸦信息技术有限公司 | 基于不同参考时钟的音视频同步方法、装置和计算机设备 |
CN113504886A (zh) * | 2021-05-08 | 2021-10-15 | 辛巴网络科技(南京)有限公司 | 一种基于MediaSession框架的多音频聚合车载多媒体方法 |
Non-Patent Citations (1)
Title |
---|
张振明等编著: "《最新DSP技术 "达芬奇"系统、框架和组件》", 西安:西北工业大学出版社, pages: 350 - 353 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023124173A1 (zh) * | 2021-12-31 | 2023-07-06 | 晶晨半导体(上海)股份有限公司 | 音视频同步方法和装置及电子设备和计算机可读存储介质 |
CN115695843A (zh) * | 2022-10-27 | 2023-02-03 | 中国联合网络通信集团有限公司 | 预制视频播放方法、服务器、终端、介质及系统 |
CN115695843B (zh) * | 2022-10-27 | 2024-06-18 | 中国联合网络通信集团有限公司 | 预制视频播放方法、服务器、终端、介质及系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2023124173A1 (zh) | 2023-07-06 |
EP4391555A1 (en) | 2024-06-26 |
US20240259126A1 (en) | 2024-08-01 |
CN114339353B (zh) | 2023-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114339353B (zh) | 音视频同步方法和装置及电子设备和计算机可读存储介质 | |
KR101746165B1 (ko) | 동영상 화면의 처리 방법 및 장치 | |
CN101854533B (zh) | 频道切换方法、装置及系统 | |
US9549027B2 (en) | Network-synchronized media playback | |
CN104902317A (zh) | 音视频同步方法及装置 | |
KR20140066641A (ko) | 서버, 멀티미디어 기기 및 그들의 제어방법 | |
US20040252400A1 (en) | Computer media synchronization player | |
EP2736263A1 (en) | Server, multimedia apparatus and control method thereof for synchronously playing multimedia contents through a plurality of multimedia devices | |
CN112929713B (zh) | 数据同步方法、装置、终端及存储介质 | |
CN102647629A (zh) | 内容播放方法和装置 | |
KR20140131534A (ko) | 동기화된 컨텐트의 분산형 제어 | |
CN103581754A (zh) | 一种数据显示方法及智能设备 | |
CN104853239B (zh) | 音视频同步播放控制方法和系统 | |
CN104822008A (zh) | 视频同步方法及装置 | |
CN103198851A (zh) | 一种基于时间戳消息的多终端同步播放方法 | |
CN112367542A (zh) | 一种镜像投屏的终端播放系统及方法 | |
US20080175559A1 (en) | Image process apparatus and method thereof | |
CN104811582A (zh) | 多智能设备同步播放的方法和装置 | |
CN116506672B (zh) | 内网设备的音视频同步播放方法 | |
CN107820111B (zh) | 信息设备 | |
US9420278B2 (en) | Audiovisual content generation method for multistage high-speed reproduction | |
CN115665493A (zh) | 支持录播的大屏拼接装置、拼接器、播放控制方法及系统 | |
JP2010287923A (ja) | 映像サーバ | |
US20090193454A1 (en) | Restamping transport streams to avoid vertical rolls | |
WO2017000661A1 (zh) | 一种控制媒体分享的方法、装置、增强型媒体服务器和计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |