CN109348247B - 确定音视频播放时间戳的方法、装置及存储介质 - Google Patents
确定音视频播放时间戳的方法、装置及存储介质 Download PDFInfo
- Publication number
- CN109348247B CN109348247B CN201811404491.0A CN201811404491A CN109348247B CN 109348247 B CN109348247 B CN 109348247B CN 201811404491 A CN201811404491 A CN 201811404491A CN 109348247 B CN109348247 B CN 109348247B
- Authority
- CN
- China
- Prior art keywords
- frame
- time stamp
- audio
- audio frame
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- 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/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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Television Signal Processing For Recording (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种确定音视频播放时间戳的方法、装置及存储介质,属于直播技术领域。所述方法包括:将检测到开始直播指令之后采集的第一个音频帧确定为直播间内播放的第一音频帧,并将第一音频帧的播放时间戳确定为参考时间戳,将在采集第一音频帧之后的采集的第一个视频帧确定为直播间内播放的第一视频帧,并根据第一音频帧的采集时间戳和参考时间戳来确定第一视频帧的播放时间戳,而不是直接将检测到开始直播指令之后采集的第一个视频帧确定为第一视频帧,并将第一视频帧的播放时间戳也直接确定为参考时间戳,通过本发明实施例提供的确定音视频播放时间戳的方法仍然可以保证直播间播放的音频和视频保持同步,提高了直播的灵活性。
Description
技术领域
本发明涉及直播技术领域,特别涉及一种确定音视频播放时间戳的方法、装置及存储介质。
背景技术
直播,也即是主播端将采集的音频和视频实时推送到直播间,以使直播间内的观众可以实时观看主播端采集的音频和视频。而在主播端进行直播的过程中,主播端需要确定直播间内播放的第一视频帧和第一音频帧的播放时间戳,以确保直播间内播放的音频和视频保持同步。其中,第一视频帧是指直播间内播放的第一个视频帧,第一音频帧是指直播间内播放的第一个音频帧。
相关技术中,主播端在直播过程中将采集音频帧,并为采集的每个音频帧设置对应的采集时间戳。同时采集视频帧,并为采集的每个视频帧设置对应的采集时间戳。在主播端开始直播之后,当主播端采集到第一个音频帧和第一个视频帧时,将第一个音频帧和第一个视频帧分别设置为直播间内播放的第一音频帧和第一视频帧,并将第一音频帧和第一视频帧的播放时间戳均设置为参考时间戳,之后将第一音频帧和第一视频帧以及对应设置的播放时间戳推流到直播间。后续当主播端再次采集到音频帧时,根据该音频帧的采集时间戳、第一音频帧的采集时间戳和参考时间点,确定该音频帧的播放时间戳,并将该音频帧和该音频帧的播放时间戳推流到直播间。当主播端再次采集到视频帧时,根据该视频帧的采集时间戳、第一视频帧的采集时间戳和参考时间点,确定该视频帧的播放时间戳,并将该视频帧和该视频帧的播放时间戳推流到直播间。由于第一音频帧和第一视频帧的播放时间戳均为参考时间戳,因此第一音频帧可以与第一视频帧同步播放,这样后续其他的音频帧和视频帧也可以保持同步播放。
相关技术中是直接将采集的第一个音频帧和第一个视频帧分别作为直播间内播放的第一音频帧和第一视频帧,并将第一音频帧和第一视频帧的播放时间戳均设置为参考时间戳,以确保直播间播放的音频和视频保持同步。此时,如果采集第一个音频帧的时间点与采集第一个视频帧的时间点不是很接近,通过上述方法将不能保证直播间内播放的音频和视频是同步的。
发明内容
本发明实施例提供了一种确定音视频播放时间戳的方法、装置及存储介质,用于确保直播间内播放的音频和视频是同步的。所述技术方案如下:
第一方面,提供了一种确定音视频播放时间戳的方法,所述方法包括:
获取在检测到开始直播指令之后采集的第一个音频帧和所述第一个音频帧的采集时间戳;
将所述第一个音频帧确定为直播间内播放的第一音频帧,并将所述第一音频帧的播放时间戳确定为参考时间戳;
获取在采集所述第一音频帧之后采集的第一个视频帧和所述第一个视频帧的采集时间戳;
将所述第一个视频帧确定所述直播间内播放的第一视频帧,并根据所述第一视频帧的采集时间戳、所述第一音频帧的采集时间戳和所述参考时间戳,确定所述第一视频帧的播放时间戳。
可选地,所述根据所述第一视频帧的采集时间戳、所述第一音频帧的采集时间戳和所述参考时间戳,确定所述第一视频帧的播放时间戳,包括:
如果所述第一视频帧的采集时间戳和所述第一音频帧的采集时间戳之间的差值小于参考时长,将所述参考时间戳确定为所述第一视频帧的播放时间戳。
可选地,所述根据所述第一视频帧的采集时间戳、所述第一音频帧的采集时间戳和所述参考时间戳,确定所述第一视频帧的播放时间戳,包括:
如果所述第一视频帧的采集时间戳和所述第一音频帧的采集时间戳之间的差值大于或等于参考时长,将所述参考时长与所述第一音频帧的播放时间戳之间的和确定为所述第一视频帧的播放时间戳。
可选地,所述参考时长是根据主播端采集视频帧的频率确定的。
可选地,所获取在检测到开始直播指令之后采集的第一个音频帧和所述第一个音频帧的采集时间戳,包括:
在检测到开始直播指令之后,获取采集的多媒体数据帧;
如果所述多媒体数据帧为音频帧,则将所述多媒体数据帧确定为所述第一个音频帧,并确定所述第一个音频帧的采集时间戳;
如果所述多媒体数据帧为视频帧,则返回执行所述获取采集的多媒体数据帧的步骤,直至确定出所述第一个音频帧。
第二方面,提供了一种确定音视频播放时间戳的装置,所述装置包括:
第一获取模块,用于获取在检测到开始直播指令之后采集的第一个音频帧和所述第一个音频帧的采集时间戳;
第一确定模块,用于将所述第一个音频帧确定为直播间内播放的第一音频帧,并将所述第一音频帧的播放时间戳确定为参考时间戳;
第二获取模块,用于获取在采集所述第一音频帧之后采集的第一个视频帧和所述第一个视频帧的采集时间戳;
第二确定模块,用于将所述第一个视频帧确定所述直播间内播放的第一视频帧,并根据所述第一视频帧的采集时间戳、所述第一音频帧的采集时间戳和所述参考时间戳,确定所述第一视频帧的播放时间戳。
可选地,所述第二确定模块,具体用于:
如果所述第一视频帧的采集时间戳和所述第一音频帧的采集时间戳之间的差值小于参考时长,将所述参考时间戳确定为所述第一视频帧的播放时间戳。
可选地,所述第二确定模块,具体用于:
如果所述第一视频帧的采集时间戳和所述第一音频帧的采集时间戳之间的差值大于或等于参考时长,将所述参考时长与所述第一音频帧的播放时间戳之间的和确定为所述第一视频帧的播放时间戳。
可选地,所述参考时长是根据主播端采集视频帧的频率确定的。
可选地,所述第一获取模块,具体用于:
在检测到开始直播指令之后,获取采集的多媒体数据帧;
如果所述多媒体数据帧为音频帧,则将所述多媒体数据帧确定为所述第一个音频帧,并确定所述第一个音频帧的采集时间戳;
如果所述多媒体数据帧为视频帧,则返回执行所述获取采集的多媒体数据帧的步骤,直至确定出所述第一个音频帧。
第三方面,提供了另一种确定音视频播放时间戳的装置,所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述第一方面所述的任一项方法的步骤。
第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,所述指令被处理器执行时实现上述第一方面所述的任一项方法的步骤。
第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的任一方法的步骤。
本发明实施例提供的技术方案带来的有益效果是:
在本发明实施例中,将检测到开始直播指令之后采集的第一个音频帧确定为直播间内播放的第一音频帧,并将第一音频帧的播放时间戳确定为参考时间戳,将在采集第一音频帧之后的采集的第一个视频帧确定为直播间内播放的第一视频帧,并根据第一音频帧的采集时间戳和参考时间戳来确定第一视频帧的播放时间戳,而不是直接将检测到开始直播指令之后采集的第一个视频帧确定为第一视频帧,并将第一视频帧的播放时间戳也直接确定为参考时间戳,这样如果检测到开始直播指令之后采集第一个音频帧的时间点与采集第一个视频帧的时间点不是很接近,通过本发明实施例提供的确定音视频播放时间戳的方法仍然可以保证直播间播放的音频和视频保持同步,提高了直播的灵活性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种主播端的结构示意图;
图2是本发明实施例提供的一种确定音视频播放时间戳的方法流程图;
图3是本发明实施例提供的一种确定音视频播放时间戳的装置示意图;
图4是本发明实施例提供的一种终端的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1是本发明实施例提供的一种主播端的结构示意图。如图1所示,该主播端100包括音频采集模块101、视频采集模块102和推流模块103。音频采集模块101和视频采集模块102分别与推流模块103连接。
音频采集模块101用于采集音频帧并为采集的每个音频帧添加对应的采集时间戳,之后将采集的音频帧和对应的采集时间戳发送给推流模块103。视频采集模块102用于采集视频帧并为采集的每个视频帧添加对应的采集的时间戳,并将采集的视频帧和对应的采集时间戳出发送给推流模块103。推流模块103用于接收音频帧和对应的采集时间戳、以及视频帧和对应的采集时间戳,并为每个音频帧和每个视频帧设置播放时间戳,以将每个音频帧和对应的播放时间戳、以及每个视频帧和对应的播放时间戳推流到直播间,以实现在直播间内播放直播视频,并确保直播间内播放的音频和视频之间的同步。
其中,主播端100中的音频采集模块101和视频采集模块102通常为两个独立的硬件设备。比如,音频采集模块101可以为主播端100中的麦克风等设备,视频采集模块102可以为主播端100中的摄像头等设备。
图2是本发明实施例提供的一种确定音视频播放时间戳的方法流程图,应用于图1所示的主播端,参见图2,该方法包括如下步骤:
步骤201:获取在检测到开始直播指令之后采集的第一个音频帧和第一个音频帧的采集时间戳。
在主播进行直播的过程中,与主播对应的视频画面在短时间内变化的幅度不是很大,但是与主播对应的音频信号在短时间内变化的幅度通常较大。因此,在本发明实施例中,为了确保直播间内播放的音频和视频保持同步,以检测到开始直播指令之后的第一个音频帧为参考来设置其他音频帧和视频帧的播放时间戳。所以,在检测到开始直播指令之后,需要先获取在检测到开始直播指令之后采集的第一个音频帧和第一个音频帧的采集时间戳。
其中,步骤201的实现方式具体可以为:在检测到开始直播指令之后,获取采集的多媒体数据帧;如果多媒体数据帧为音频帧,则将多媒体数据帧确定为第一个音频帧,并确定第一个音频帧的采集时间戳;如果多媒体数据帧为视频帧,则返回执行获取采集的多媒体数据帧的步骤,直至确定出第一个音频帧。
由图2可知,主播端在检测到开始主播指令之后,音频采集模块和视频采集模块均将采集的数据发送给推流模块。因此,对于推流模块,当接收到多媒体数据帧时,需要对该多媒体数据帧进行解析,以确定该多媒体数据帧是否为音频帧,并通过上述实现方式来确定在检测到开始直播指令之后采集的第一个音频帧和第一个音频帧的采集时间戳。
其中,开始直播指令由主播通过预设操作触发,该预设操作可以为点击操作、滑动操作或语音操作等。比如,在主播端的显示界面上显示有“开始直播”选项,当主播端检测到针对该“开始直播”选项的选择操作时,确定检测到开始直播指令,此时主播端启动音频采集模块和视频采集模块分别采集音频帧和视频帧,以进行直播。
另外,音频帧还可以称为音频报文,视频帧还可以称为视频报文,本发明实施例在此不做具体限定。
步骤202:将第一个音频帧确定为直播间内播放的第一音频帧,并将第一音频帧的播放时间戳确定为参考时间戳。
由于在本发明实施例中,为了确保直播间内播放的音频和视频保持同步,以检测到开始直播指令之后的第一个音频帧为参考来设置其他音频帧和视频帧的播放时间戳,因此,当通过步骤201确定出采集的第一个音频帧之后,将采集的第一个音频帧作为直播间内播放的第一音频帧,并将第一音频帧的播放时间戳确定为参考时间戳。其中,参考时间戳可以为该第一音频帧的采集时间戳,也可以为设置的而其他时间戳,比如可以将参考时间戳设置为0。
步骤203:获取在采集第一音频帧之后采集的第一个视频帧和第一个视频帧的采集时间戳。
在确定出第一音频帧之后,需要获取在采集第一音频帧之后采集的第一个视频帧,以确保推流到直播间的音频和视频保持同步。
在一种可能的实现方式中,对于推流模块,在确定出第一音频帧之后,继续接收音频采集模块或视频采集模块采集的多媒体数据帧。对于每次接收到到的多媒体数据帧,对该多媒体数据帧进行解析。如果该多媒体数据帧为视频帧,则确定获取到在采集第一音频帧之后采集的第一个视频帧,并获取第一个视频帧的采集时间戳。
如果该多媒体数据帧为音频帧,则确定该音频帧的播放时间戳,并将该音频帧和该音频帧的播放时间戳推流到直播间。并返回执行接收音频采集模块或视频采集模块采集的多媒体数据帧的步骤,直至确定出采集第一音频帧之后采集的第一个视频帧和第一个视频帧的采集时间戳。
步骤204:将第一个视频帧确定直播间内播放的第一视频帧,并根据第一视频帧的采集时间戳、第一音频帧的采集时间戳和参考时间戳,确定第一视频帧的播放时间戳。
在获取在采集第一音频帧之后采集的第一个视频帧,为了确保推流到直播间的音频和视频保持同步,可以将步骤203中获取的第一个视频帧确定为直播间内播放的第一视频帧,并根据步骤204确定第一视频帧的播放时间戳。
在本发明实施例中,为了确保推流到直播间的音频和视频保持同步,确定第一视频帧的播放时间戳具体分以下两种情况:
(1)如果第一视频帧的采集时间戳和第一音频帧的采集时间戳之间的差值小于参考时长,将参考时间戳确定为第一视频帧的播放时间戳。
如果第一视频帧的采集时间戳和第一音频帧的采集时间戳之间的差值小于参考时长,表明第一视频帧和第一音频帧的采集时间比较接近。此时,可以直接将第一视频帧的播放时间戳也设置为参考时间戳,也即是,将第一视频帧的播放时间戳设置成与第一音频帧的播放时间戳一样的时间戳。
(2)如果第一视频帧的采集时间戳和第一音频帧的采集时间戳之间的差值大于或等于参考时长,将参考时长与第一音频帧的播放时间戳之间的和确定为第一视频帧的播放时间戳。
如果第一视频帧的采集时间戳和第一音频帧的采集时间戳之间的差值大于或等于参考时长,如果此时直接将第一视频帧的播放时间戳也设置为参考时间戳,直播间内的播放的音频和视频实际上可能不同步。因此,此时,可以将参考时长与第一音频帧的播放时间戳之间的和确定为第一视频帧的播放时间戳。
其中,参考时长为是根据主播端采集视频帧的频率确定的。在一种可能的实现方式中,参考时长可以大于或等于主播端采集的每个视频帧的时长。比如,主播端采集视频帧的频率为每66秒采集一次,也即是主播端采集的每个视频帧的时长为66秒,则参考时长可以设置为70秒。
比如,第一音频帧的采集时间戳为1700秒对应的时间点,第一音频帧的播放时间戳戳为0。如果第一视频帧的采集时间戳为1750秒对应的时间点,则可以将第一视频帧的播放时间戳设置为0。如果第一视频帧的采集时间戳为1790秒对应的时间点,则可以将第一视频帧的播放时间戳设置为0+70秒。
在本发明实施例中,在确定出第一音频帧和第一视频帧的播放时间戳之后,可以根据第一音频帧的播放时间戳确定在采集第一音频帧之后采集的其他音频帧的播放时间戳。并根据第一视频帧的播放时间戳确定在采集第一视频帧之后采集的其他视频帧的播放时间戳,在此不再展开阐述。
在本发明实施例中,将检测到开始直播指令之后采集的第一个音频帧确定为直播间内播放的第一音频帧,并将第一音频帧的播放时间戳确定为参考时间戳,将在采集第一音频帧之后的采集的第一个视频帧确定为直播间内播放的第一视频帧,并根据第一音频帧的采集时间戳和参考时间戳来确定第一视频帧的播放时间戳,而不是直接将检测到开始直播指令之后采集的第一个视频帧确定为第一视频帧,并将第一视频帧的播放时间戳也直接确定为参考时间戳,这样如果检测到开始直播指令之后采集第一个音频帧的时间点与采集第一个视频帧的时间点不是很接近,通过本发明实施例提供的确定音视频播放时间戳的方法仍然可以保证直播间播放的音频和视频保持同步,提高了直播的灵活性。
图3是本发明实施例提供的一种确定音视频播放时间戳的装置,如图3所示,该装置300包括第一获取模块301、第一确定模块302、第二获取模块303和第二确定模块304:
第一获取模块301,用于获取在检测到开始直播指令之后采集的第一个音频帧和第一个音频帧的采集时间戳;
第一确定模块302,用于将第一个音频帧确定为直播间内播放的第一音频帧,并将第一音频帧的播放时间戳确定为参考时间戳;
第二获取模块303,用于获取在采集第一音频帧之后采集的第一个视频帧和第一个视频帧的采集时间戳;
第二确定模块304,用于将第一个视频帧确定直播间内播放的第一视频帧,并根据第一视频帧的采集时间戳、第一音频帧的采集时间戳和参考时间戳,确定第一视频帧的播放时间戳。
可选地,第二确定模块304,具体用于:
如果第一视频帧的采集时间戳和第一音频帧的采集时间戳之间的差值小于参考时长,将参考时间戳确定为第一视频帧的播放时间戳。
可选地,第二确定模块304,具体用于:
如果第一视频帧的采集时间戳和第一音频帧的采集时间戳之间的差值大于或等于参考时长,将参考时长与第一音频帧的播放时间戳之间的和确定为第一视频帧的播放时间戳。
可选地,参考时长是根据主播端采集视频帧的频率确定的。
可选地,第一获取模块301,具体用于:
在检测到开始直播指令之后,获取采集的多媒体数据帧;
如果多媒体数据帧为音频帧,则将多媒体数据帧确定为第一个音频帧,并确定第一个音频帧的采集时间戳;
如果多媒体数据帧为视频帧,则返回执行获取采集的多媒体数据帧的步骤,直至确定出第一个音频帧。
在本发明实施例中,将检测到开始直播指令之后采集的第一个音频帧确定为直播间内播放的第一音频帧,并将第一音频帧的播放时间戳确定为参考时间戳,将在采集第一音频帧之后的采集的第一个视频帧确定为直播间内播放的第一视频帧,并根据第一音频帧的采集时间戳和参考时间戳来确定第一视频帧的播放时间戳,而不是直接将检测到开始直播指令之后采集的第一个视频帧确定为第一视频帧,并将第一视频帧的播放时间戳也直接确定为参考时间戳,这样如果检测到开始直播指令之后采集第一个音频帧的时间点与采集第一个视频帧的时间点不是很接近,通过本发明实施例提供的确定音视频播放时间戳的方法仍然可以保证直播间播放的音频和视频保持同步,提高了直播的灵活性。
需要说明的是:上述实施例提供的确定音视频播放时间戳的装置在确定音视频播放时间戳时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的确定音视频播放时间戳的装置与确定音视频播放时间戳的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图4示出了本发明一个示例性实施例提供的终端400的结构框图。该终端400可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio LayerIV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端400还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。图1所示的主播端可以通过图4所示的终端来实现。
通常,终端400包括有:处理器401和存储器402。
处理器401可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器401可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器401也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器401可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器401还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器402可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器402还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器402中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器401所执行以实现本发明中方法实施例提供的确定音视频播放时间戳的方法。
在一些实施例中,终端400还可选包括有:外围设备接口403和至少一个外围设备。处理器401、存储器402和外围设备接口403之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口403相连。具体地,外围设备包括:射频电路404、触摸显示屏405、摄像头406、音频电路407、定位组件408和电源409中的至少一种。
外围设备接口403可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器401和存储器402。在一些实施例中,处理器401、存储器402和外围设备接口403被集成在同一芯片或电路板上;在一些其他实施例中,处理器401、存储器402和外围设备接口403中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路404用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路404通过电磁信号与通信网络以及其他通信设备进行通信。射频电路404将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路404包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路404可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路404还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本发明对此不加以限定。
显示屏405用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏405是触摸显示屏时,显示屏405还具有采集在显示屏405的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器401进行处理。此时,显示屏405还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏405可以为一个,设置终端400的前面板;在另一些实施例中,显示屏405可以为至少两个,分别设置在终端400的不同表面或呈折叠设计;在再一些实施例中,显示屏405可以是柔性显示屏,设置在终端400的弯曲表面上或折叠面上。甚至,显示屏405还可以设置成非矩形的不规则图形,也即异形屏。显示屏405可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件406用于采集图像或视频。可选地,摄像头组件406包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件406还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路407可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器401进行处理,或者输入至射频电路404以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端400的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器401或射频电路404的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路407还可以包括耳机插孔。
定位组件408用于定位终端400的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件408可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源409用于为终端400中的各个组件进行供电。电源409可以是交流电、直流电、一次性电池或可充电电池。当电源409包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端400还包括有一个或多个传感器410。该一个或多个传感器410包括但不限于:加速度传感器411、陀螺仪传感器412、压力传感器413、指纹传感器414、光学传感器415以及接近传感器416。
加速度传感器411可以检测以终端400建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器411可以用于检测重力加速度在三个坐标轴上的分量。处理器401可以根据加速度传感器411采集的重力加速度信号,控制触摸显示屏405以横向视图或纵向视图进行用户界面的显示。加速度传感器411还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器412可以检测终端400的机体方向及转动角度,陀螺仪传感器412可以与加速度传感器411协同采集用户对终端400的3D动作。处理器401根据陀螺仪传感器412采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器413可以设置在终端400的侧边框和/或触摸显示屏405的下层。当压力传感器413设置在终端400的侧边框时,可以检测用户对终端400的握持信号,由处理器401根据压力传感器413采集的握持信号进行左右手识别或快捷操作。当压力传感器413设置在触摸显示屏405的下层时,由处理器401根据用户对触摸显示屏405的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器414用于采集用户的指纹,由处理器401根据指纹传感器414采集到的指纹识别用户的身份,或者,由指纹传感器414根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器401授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器414可以被设置终端400的正面、背面或侧面。当终端400上设置有物理按键或厂商Logo时,指纹传感器414可以与物理按键或厂商Logo集成在一起。
光学传感器415用于采集环境光强度。在一个实施例中,处理器401可以根据光学传感器415采集的环境光强度,控制触摸显示屏405的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏405的显示亮度;当环境光强度较低时,调低触摸显示屏405的显示亮度。在另一个实施例中,处理器401还可以根据光学传感器415采集的环境光强度,动态调整摄像头组件406的拍摄参数。
接近传感器416,也称距离传感器,通常设置在终端400的前面板。接近传感器416用于采集用户与终端400的正面之间的距离。在一个实施例中,当接近传感器416检测到用户与终端400的正面之间的距离逐渐变小时,由处理器401控制触摸显示屏405从亮屏状态切换为息屏状态;当接近传感器416检测到用户与终端400的正面之间的距离逐渐变大时,由处理器401控制触摸显示屏405从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图4中示出的结构并不构成对终端400的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本发明实施例还提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行上述实施例提供的确定音视频播放时间戳的方法。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例提供的确定音视频播放时间戳的方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种确定音视频播放时间戳的方法,其特征在于,所述方法包括:
获取在检测到开始直播指令之后采集的第一个音频帧和所述第一个音频帧的采集时间戳;
将所述第一个音频帧确定为直播间内播放的第一音频帧,并将所述第一音频帧的播放时间戳确定为参考时间戳;
在确定出所述第一音频帧后,获取采集的多媒体数据帧,对所述多媒体数据帧进行解析;如果所述多媒体数据帧为视频帧,则确定获取到在采集所述第一音频帧之后采集的第一个视频帧和所述第一个视频帧的采集时间戳;如果所述多媒体数据帧为音频帧,则确定所述音频帧的播放时间戳,将所述音频帧和所述音频帧的播放时间戳推流到所述直播间,并返回到执行所述获取采集的多媒体数据帧的步骤,直至确定出获取到在采集所述第一音频帧之后采集的第一个视频帧和所述第一个视频帧的采集时间戳;
将所述第一个视频帧确定所述直播间内播放的第一视频帧,并根据所述第一视频帧的采集时间戳、所述第一音频帧的采集时间戳和所述参考时间戳,确定所述第一视频帧的播放时间戳;
所述根据所述第一视频帧的采集时间戳、所述第一音频帧的采集时间戳和所述参考时间戳,确定所述第一视频帧的播放时间戳,包括:
如果所述第一视频帧的采集时间戳和所述第一音频帧的采集时间戳之间的差值大于或等于参考时长,将所述参考时长与所述第一音频帧的播放时间戳之间的和确定为所述第一视频帧的播放时间戳。
2.如权利要求1所述的方法,其特征在于,所述根据所述第一视频帧的采集时间戳、所述第一音频帧的采集时间戳和所述参考时间戳,确定所述第一视频帧的播放时间戳,包括:
如果所述第一视频帧的采集时间戳和所述第一音频帧的采集时间戳之间的差值小于所述参考时长,将所述参考时间戳确定为所述第一视频帧的播放时间戳。
3.如权利要求1或权利要求2所述的方法,其特征在于,所述参考时长是根据主播端采集视频帧的频率确定的。
4.如权利要求1所述的方法,其特征在于,所获取在检测到开始直播指令之后采集的第一个音频帧和所述第一个音频帧的采集时间戳,包括:
在检测到开始直播指令之后,获取采集的多媒体数据帧;
如果所述多媒体数据帧为音频帧,则将所述多媒体数据帧确定为所述第一个音频帧,并确定所述第一个音频帧的采集时间戳;
如果所述多媒体数据帧为视频帧,则返回执行所述获取采集的多媒体数据帧的步骤,直至确定出所述第一个音频帧。
5.一种确定音视频播放时间戳的装置,其特征在于,所述装置包括:
第一获取模块,用于获取在检测到开始直播指令之后采集的第一个音频帧和所述第一个音频帧的采集时间戳;
第一确定模块,用于将所述第一个音频帧确定为直播间内播放的第一音频帧,并将所述第一音频帧的播放时间戳确定为参考时间戳;
第二获取模块,用于在确定出所述第一音频帧后,获取采集的多媒体数据帧,对所述多媒体数据帧进行解析;如果所述多媒体数据帧为视频帧,则确定获取到在采集所述第一音频帧之后采集的第一个视频帧和所述第一个视频帧的采集时间戳;如果所述多媒体数据帧为音频帧,则确定所述音频帧的播放时间戳,将所述音频帧和所述音频帧的播放时间戳推流到所述直播间,并返回到执行所述获取采集的多媒体数据帧的步骤,直至确定出获取到在采集所述第一音频帧之后采集的第一个视频帧和所述第一个视频帧的采集时间戳;
第二确定模块,用于将所述第一个视频帧确定所述直播间内播放的第一视频帧,并根据所述第一视频帧的采集时间戳、所述第一音频帧的采集时间戳和所述参考时间戳,确定所述第一视频帧的播放时间戳;
所述第二确定模块,具体用于:
如果所述第一视频帧的采集时间戳和所述第一音频帧的采集时间戳之间的差值大于或等于参考时长,将所述参考时长与所述第一音频帧的播放时间戳之间的和确定为所述第一视频帧的播放时间戳。
6.如权利要求5所述的装置,其特征在于,所述第二确定模块,具体用于:
如果所述第一视频帧的采集时间戳和所述第一音频帧的采集时间戳之间的差值小于所述参考时长,将所述参考时间戳确定为所述第一视频帧的播放时间戳。
7.如权利要求5或权利要求6所述的装置,其特征在于,所述参考时长是根据主播端采集视频帧的频率确定的。
8.如权利要求5所述的装置,其特征在于,所述第一获取模块,具体用于:
在检测到开始直播指令之后,获取采集的多媒体数据帧;
如果所述多媒体数据帧为音频帧,则将所述多媒体数据帧确定为所述第一个音频帧,并确定所述第一个音频帧的采集时间戳;
如果所述多媒体数据帧为视频帧,则返回执行所述获取采集的多媒体数据帧的步骤,直至确定出所述第一个音频帧。
9.一种确定音视频播放时间戳的装置,其特征在于,所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述权利要求1至权利要求4中任一所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,所述指令被处理器执行时实现上述权利要求1至权利要求4中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811404491.0A CN109348247B (zh) | 2018-11-23 | 2018-11-23 | 确定音视频播放时间戳的方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811404491.0A CN109348247B (zh) | 2018-11-23 | 2018-11-23 | 确定音视频播放时间戳的方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109348247A CN109348247A (zh) | 2019-02-15 |
CN109348247B true CN109348247B (zh) | 2021-03-30 |
Family
ID=65317398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811404491.0A Active CN109348247B (zh) | 2018-11-23 | 2018-11-23 | 确定音视频播放时间戳的方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109348247B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109856596B (zh) * | 2019-02-21 | 2021-05-07 | 上海迹寻科技有限公司 | 一种高速移动状态下搜集无线节点信号位置指纹的方法、计算机可读存储介质及其设备 |
CN111629158B (zh) | 2019-02-28 | 2021-08-03 | 华为技术有限公司 | 一种音频流和视频流同步切换方法及装置 |
CN112584216B (zh) * | 2019-09-29 | 2022-09-30 | 杭州海康威视数字技术股份有限公司 | 一种唇音同步方法和装置 |
CN111083162B (zh) * | 2019-12-30 | 2022-08-23 | 广州酷狗计算机科技有限公司 | 多媒体流卡顿检测方法和装置 |
CN113162837B (zh) * | 2020-01-07 | 2023-09-26 | 腾讯科技(深圳)有限公司 | 语音消息的处理方法、装置、设备及存储介质 |
CN113259738B (zh) * | 2021-05-08 | 2022-07-29 | 广州市奥威亚电子科技有限公司 | 音视频同步的方法、装置、电子设备及存储介质 |
CN114339381B (zh) * | 2021-12-28 | 2024-06-11 | 北京中交兴路信息科技有限公司 | 一种音视频同步方法、装置、电子设备及存储介质 |
CN114339350B (zh) * | 2021-12-30 | 2023-12-05 | Oppo广东移动通信有限公司 | 数据处理方法、装置以及电子设备 |
CN115102932B (zh) * | 2022-06-09 | 2024-01-12 | 腾讯科技(深圳)有限公司 | 点云媒体的数据处理方法、装置、设备、存储介质及产品 |
CN115883748A (zh) * | 2022-11-28 | 2023-03-31 | 中汽创智科技有限公司 | 一种数据回放的同步方法、装置、电子设备及存储介质 |
CN115834943B (zh) * | 2023-01-10 | 2023-07-04 | 荣耀终端有限公司 | 音视频同步方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101848396A (zh) * | 2009-11-30 | 2010-09-29 | 深圳市致芯微电子股份有限公司 | 传输流音视频同步及防抖动方法 |
CN101902649A (zh) * | 2010-07-15 | 2010-12-01 | 浙江工业大学 | 一种基于h.264标准的音视频同步控制方法 |
CN102421035A (zh) * | 2011-12-31 | 2012-04-18 | 青岛海信宽带多媒体技术有限公司 | 数字电视音视频同步的实现方法及装置 |
CN103167342A (zh) * | 2013-03-29 | 2013-06-19 | 天脉聚源(北京)传媒科技有限公司 | 一种音视频同步处理装置及方法 |
CN103888813A (zh) * | 2012-12-21 | 2014-06-25 | 北京计算机技术及应用研究所 | 一种音视频同步的实现方法及系统 |
CN108495164A (zh) * | 2018-04-09 | 2018-09-04 | 珠海全志科技股份有限公司 | 音视频同步处理方法及装置、计算机装置及存储介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101127917B (zh) * | 2007-09-06 | 2010-07-14 | 中兴通讯股份有限公司 | 一种互联网流媒体格式音视频同步的方法及其系统 |
CN101635848B (zh) * | 2008-07-22 | 2013-08-07 | 北大方正集团有限公司 | 一种视频文件的编辑方法和装置 |
US8384827B2 (en) * | 2010-06-02 | 2013-02-26 | Disney Enterprises, Inc. | System and method for in-band A/V timing measurement of serial digital video signals |
US8717499B2 (en) * | 2011-09-02 | 2014-05-06 | Dialogic Corporation | Audio video offset detector |
CN104053014B (zh) * | 2013-03-13 | 2020-05-29 | 腾讯科技(北京)有限公司 | 一种基于移动终端的直播系统、方法和移动终端 |
US9300713B2 (en) * | 2013-08-16 | 2016-03-29 | Qualcomm Incorporated | Clock synchronization for multi-processor/multi-chipset solution |
US9615122B2 (en) * | 2014-01-30 | 2017-04-04 | Echostar Technologies L.L.C. | Methods and apparatus to synchronize second screen content with audio/video programming using closed captioning data |
CN106412662B (zh) * | 2016-09-20 | 2018-10-19 | 腾讯科技(深圳)有限公司 | 时间戳分配方法及装置 |
CN107801080A (zh) * | 2017-11-10 | 2018-03-13 | 普联技术有限公司 | 一种音视频同步方法、装置及设备 |
CN108259989B (zh) * | 2018-01-19 | 2021-09-17 | 广州方硅信息技术有限公司 | 视频直播的方法、计算机可读存储介质和终端设备 |
-
2018
- 2018-11-23 CN CN201811404491.0A patent/CN109348247B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101848396A (zh) * | 2009-11-30 | 2010-09-29 | 深圳市致芯微电子股份有限公司 | 传输流音视频同步及防抖动方法 |
CN101902649A (zh) * | 2010-07-15 | 2010-12-01 | 浙江工业大学 | 一种基于h.264标准的音视频同步控制方法 |
CN102421035A (zh) * | 2011-12-31 | 2012-04-18 | 青岛海信宽带多媒体技术有限公司 | 数字电视音视频同步的实现方法及装置 |
CN103888813A (zh) * | 2012-12-21 | 2014-06-25 | 北京计算机技术及应用研究所 | 一种音视频同步的实现方法及系统 |
CN103167342A (zh) * | 2013-03-29 | 2013-06-19 | 天脉聚源(北京)传媒科技有限公司 | 一种音视频同步处理装置及方法 |
CN108495164A (zh) * | 2018-04-09 | 2018-09-04 | 珠海全志科技股份有限公司 | 音视频同步处理方法及装置、计算机装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109348247A (zh) | 2019-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109348247B (zh) | 确定音视频播放时间戳的方法、装置及存储介质 | |
CN109246466B (zh) | 视频播放方法、装置及电子设备 | |
CN108401124B (zh) | 视频录制的方法和装置 | |
CN111147878B (zh) | 直播中的推流方法、装置及计算机存储介质 | |
CN108093268B (zh) | 进行直播的方法和装置 | |
CN110324689B (zh) | 音视频同步播放的方法、装置、终端及存储介质 | |
CN108449641B (zh) | 播放媒体流的方法、装置、计算机设备和存储介质 | |
CN111093108B (zh) | 音画同步判断方法、装置、终端及计算机可读存储介质 | |
CN108881286B (zh) | 多媒体播放控制的方法、终端、音箱设备和系统 | |
CN109922356B (zh) | 视频推荐方法、装置和计算机可读存储介质 | |
CN111107389B (zh) | 确定观看直播时长的方法、装置和系统 | |
CN109144346B (zh) | 歌曲分享方法、装置及存储介质 | |
CN111586431B (zh) | 进行直播处理的方法、装置、设备及存储介质 | |
CN112929654B (zh) | 检测音画同步的方法、装置、设备及存储介质 | |
CN111083526B (zh) | 视频转场方法、装置、计算机设备及存储介质 | |
CN109635133B (zh) | 可视化音频播放方法、装置、电子设备及存储介质 | |
CN113573122B (zh) | 音视频播放方法及装置 | |
CN107896337B (zh) | 信息推广方法、装置及存储介质 | |
CN109451248B (zh) | 视频数据的处理方法、装置、终端及存储介质 | |
CN109982129B (zh) | 短视频的播放控制方法、装置及存储介质 | |
CN112104648A (zh) | 数据处理方法、装置、终端、服务器及存储介质 | |
CN113076051A (zh) | 从控终端同步方法、装置、终端及存储介质 | |
CN111092991B (zh) | 歌词显示方法及装置、计算机存储介质 | |
CN109089137B (zh) | 卡顿检测方法及装置 | |
CN108401194B (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 |