CN109600563B - 用于确定时间戳的方法和装置 - Google Patents

用于确定时间戳的方法和装置 Download PDF

Info

Publication number
CN109600563B
CN109600563B CN201810866759.6A CN201810866759A CN109600563B CN 109600563 B CN109600563 B CN 109600563B CN 201810866759 A CN201810866759 A CN 201810866759A CN 109600563 B CN109600563 B CN 109600563B
Authority
CN
China
Prior art keywords
data
frame
determining
target audio
video data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810866759.6A
Other languages
English (en)
Other versions
CN109600563A (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.)
Honey Grapefruit Network Technology Shanghai Co ltd
Original Assignee
Beijing Microlive Vision 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 Microlive Vision Technology Co Ltd filed Critical Beijing Microlive Vision Technology Co Ltd
Priority to CN201810866759.6A priority Critical patent/CN109600563B/zh
Publication of CN109600563A publication Critical patent/CN109600563A/zh
Priority to PCT/CN2019/098455 priority patent/WO2020024949A1/zh
Application granted granted Critical
Publication of CN109600563B publication Critical patent/CN109600563B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • 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/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

本申请实施例公开了用于确定时间戳的方法和装置。该方法的一具体实施方式包括:采集视频数据,并利用预置的音频处理组件播放目标音频数据;对于该视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,基于该数据量对应的播放时长,确定该帧的时间戳。该实施方式提高了视频数据中的帧的时间戳的准确性。

Description

用于确定时间戳的方法和装置
技术领域
本申请实施例涉及计算机技术领域,具体涉及用于确定时间戳的方法和装置。
背景技术
录制配乐视频时,通常在利用摄像头进行视频采集的同时进行音频(配乐)播放。例如,播放某歌曲过程中录制用户表演的演唱动作,所录制的视频以该歌曲为背景音乐。在具有视频录制功能的应用中,录制的配乐视频出现音视频不同步的情况较为常见。以安卓(Android)设备为例,由于不同设备之间存在较大差异性,且碎片化较为严重,因而在不同设备上实现所录制的音视频同步,具有较高的难度。
现有的方式中,通常认为视频数据中的相邻两帧的间隔时间是固定的。对于视频数据中的某帧,将上一帧的时间戳与该间隔时间之和确定为该帧的时间戳。
发明内容
本申请实施例提出了用于确定时间戳的方法和装置。
第一方面,本申请实施例提供了一种用于确定时间戳的方法,该方法包括:采集视频数据并利用预置的音频处理组件播放目标音频数据,其中,音频处理组件支持音频播放,以及,支持缓冲区和回调函数的设置,回调函数用于在缓冲区中的数据处理完毕后返回信息;对于视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,基于上述数据量对应的播放时长,确定该帧的时间戳。
在一些实施例中,在缓冲区中的数据处理完毕后,回调函数所返回的信息包括所处理的数据量。
在一些实施例中,对于视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,包括:对于所采集到的视频数据的帧,确定采集到该帧时,回调函数已返回的数据量之和,将数据量之和确定为采集到该帧时已播放的目标音频数据的数据量。
在一些实施例中,对于视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,包括:对于所采集到的视频数据的帧,确定采集到该帧时,回调函数已返回的信息的次数,读取音频处理组件的缓冲区大小,将缓冲区大小与次数的乘积确定为采集到该帧时已播放的目标音频数据的数据量。
在一些实施例中,音频处理组件的缓冲区的大小为预先设置为目标数值,目标数值不大于视频数据的帧的预设间隔时长所对应的音频数据的大小。
在一些实施例中,该方法还包括:将采集到视频数据的尾帧时已播放的目标音频数据作为目标音频数据区间,提取目标音频数据区间;将包含时间戳的视频数据和目标音频数据区间进行存储。
第二方面,本申请实施例提供了一种用于确定时间戳的装置,该装置包括:采集单元,被配置成采集视频数据并利用预置的音频处理组件播放目标音频数据,其中,音频处理组件支持音频播放,以及,支持缓冲区和回调函数的设置,回调函数用于在缓冲区中的数据处理完毕后返回信息;第一确定单元,被配置成对于视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,基于上述数据量对应的播放时长,确定该帧的时间戳。
在一些实施例中,在缓冲区中的数据处理完毕后,回调函数所返回的信息包括所处理的数据量。
在一些实施例中,第一确定单元进一步被配置成:对于所采集到的视频数据的帧,确定采集到该帧时,回调函数已返回的数据量之和,将数据量之和确定为采集到该帧时已播放的目标音频数据的数据量。
在一些实施例中,第一确定单元进一步被配置成:对于所采集到的视频数据的帧,确定采集到该帧时,回调函数已返回的信息的次数,读取音频处理组件的缓冲区大小,将缓冲区大小与次数的乘积确定为采集到该帧时已播放的目标音频数据的数据量。
在一些实施例中,音频处理组件的缓冲区的大小为预先设置为目标数值,目标数值不大于视频数据的帧的预设间隔时长所对应的音频数据的大小。
在一些实施例中,该装置还包括:提取单元,被配置成将采集到视频数据的尾帧时已播放的目标音频数据作为目标音频数据区间,提取目标音频数据区间;存储单元,被配置成将包含时间戳的视频数据和目标音频数据区间进行存储。
第三方面,本申请实施例提供了一种终端设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如用于确定时间戳的方法中任一实施例的方法。
第四方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如用于确定时间戳的方法中任一实施例的方法。
本申请实施例提供的用于确定时间戳的方法和装置,通过采集视频数据,并利用音频处理组件播放目标音频数据,而后对于视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,基于该数据量对应的播放时长确定该帧的时间戳,从而,可以基于音频处理组件所处理的数据量,确定视频数据的时间戳。避免了视频数据采集不稳定的情况下(例如设备过热、性能不足导致丢帧),按照相同时间间隔进行帧的时间戳的计算所导致的时间戳不准确的问题。从而提高了视频数据中的帧的时间戳的准确性。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请的一个实施例可以应用于其中的示例性系统架构图;
图2是根据本申请的用于确定时间戳的方法的一个实施例的流程图;
图3是根据本申请的用于确定时间戳的方法的一个应用场景的示意图;
图4是根据本申请的用于确定时间戳的方法的又一个实施例的流程图;
图5是根据本申请的用于确定时间戳的装置的一个实施例的结构示意图;
图6是适于用来实现本申请实施例的终端设备的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的用于处理数据的方法或用于处理数据的装置的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息(例如音视频数据上传请求、音频数据获取请求)等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如视频录制类应用、音频播放类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有显示屏并且视频录制和音频播放的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
终端设备101、102、103可以安装有图像采集装置(例如摄像头),以采集视频数据。实践中,组成视频的最小视觉单位是帧(Frame)。每一帧是一幅静态的图像。将时间上连续的帧序列合成到一起便形成动态视频。此外,终端设备101、102、103也可以安装有用于将电信号转换为声音的装置(例如扬声器),以播放声音。实践中,音频数据是以一定的频率对模拟音频信号进行模数转换(Analogue-to-Digital Conversion,ADC)后所得到的数据。音频数据的播放,是将数字音频信号进行数模转换,还原为模拟音频信号,再将模拟音频信号(模拟音频信号为电信号)转化为声音进行输出的过程。
终端设备101、102、103可以利用安装于其上的图像采集装置进行视频数据的采集,并可以利用安装于其上的支持音频播放的(例如将数字音频信号转换为模拟音频信号)的音频处理组件和扬声器播放音频数据。并且,终端设备101、102、103可以对所采集到的视频数据进行时间戳计算等处理,最终将处理结果(例如包含时间戳的视频数据和已播放的音频数据)进行存储。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上所安装的视频录制类应用提供支持的后台服务器。后台服务器可以对所接收到的音视频数据上传请求等数据进行解析、存储等处理。还可以接收终端设备101、102、103所发送的音视频数据获取请求,并将该音视频数据获取请求所指示的音视频数据反馈至终端设备101、102、103。
需要说明的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
需要说明的是,本申请实施例所提供的用于处理数据的方法一般由终端设备101、102、103执行,相应地,用于处理数据的装置一般设置于终端设备101、102、103中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的用于确定时间戳的方法的一个实施例的流程200。该用于确定时间戳的方法,包括以下步骤:
步骤201,采集视频数据并利用预置的音频处理组件播放目标音频数据。
在本实施例中,用于确定时间戳的方法的执行主体(例如图1所示的终端设备101、102、103)可以预先获取并存储记载有目标音频数据的文件。此处,上述目标音频数据可以是用户预先指定作为视频的配乐的音频数据(voice data),例如某个指定歌曲对应的音频数据。这里,上述执行主体中可以预先存储有大量的、记载有不同音频数据的文件。上述执行主体可以预先从本地查找并获取记载有上述目标音频数据文件。
实践中,音频数据是对声音信号进行数字化后的数据。声音信号的数字化过程是以一定的频率将连续的模拟音频信号转换成数字信号得到音频数据的过程。通常,声音信号的数字化过程包含采样、量化和编码三个步骤。其中,采样是指用每隔一定时间间隔的信号样本值序列来代替原来在时间上连续的信号。量化是指用有限幅度近似表示原来在时间上连续变化的幅度值,把模拟信号的连续幅度变为有限数量、有一定时间间隔的离散值。编码则是指按照一定的规律,把量化后的离散值用二进制数码表示。此处,脉冲编码调制(Pulse Code Modulation,PCM)可以实现将模拟音频信号经过采样、量化、编码转换成的数字化的音频数据。因此,上述目标音频数据可以是PCM编码格式的数据流。此时,记载上述目标音频数据的文件的格式可以是wav格式。
需要指出的是,音频数据的播放,可以是将数字化的音频数据进行数模转换,将其还原为模拟音频信号,再将模拟音频信号(电信号)转换为声音进行输出的过程。
在本实施例中,上述执行主体可以安装有图像采集装置,例如摄像头。上述执行主体可以利用上述摄像头进行视频数据(vision data)的采集。实践中,视频数据可以用帧(Frame)来描述。这里,帧是组成视频的最小视觉单位。每一帧是一幅静态的图像。将时间上连续的帧序列合成到一起便形成动态视频。此外,上述执行主体还可以安装有用于将电信号转换为声音的装置,例如扬声器。
在本实施例中,上述执行主体中可以预置有音频处理组件。上述音频处理组件可以支持音频播放,以及,支持缓冲区和回调函数的设置。上述回调函数可以用于在缓冲区中的数据处理完毕后返回信息。作为示例,上述音频处理组件可以是Android开发包中的OpenSL ES组件、或者是技术人员预先编写并预先存储至上述执行主体的音频处理组件、或者是第三方所开发的音频处理组件等。上述音频处理组件可以是封装有数据和多种方法的代码集合。上述音频处理组件可以提供多个接口,例如用于创建引擎的接口、用于创建混音器的接口、用于创建播放器的接口、用于设置缓冲区的接口等。技术人员可以预先调用各个接口进行混音器、播放器、缓冲区等的创建和设置。以及,可以预先进行回调函数的设置。以便在缓冲区中的数据处理完毕后,使回调函数返回信息。实践中,缓冲区中的数据每被处理完毕一次,回调函数可以返回该次对应的信息。
此处,回调函数返回的信息可以是与对缓冲区所处理的数据相关的信息。例如,可以是用于指示缓冲区内数据已经处理完,可以继续写入的信息。也可以是每次缓冲区内的数据被处理完后所返回的该次所处理的数据量。还可以是缓冲区内的数据被处理完的次数等。需要说明的是,回调函数返回的信息也可以包括上述所列举的两项或多项,且不限于以上列举。
需要说明的是,上述音频处理组件除了可以支音频播放、设置缓冲区以及设置回调函数之外,还可以支持其他功能的实现。例如可以支持录制音频等功能。此处不再赘述。
在本实施例中,上述执行主体可以开启上述图像采集装置进行视频数据的采集。与此同时,上述执行可以调用上述音频处理组件,向上述音频处理组件传输上述目标音频数据,以利用上述音频处理组件播放目标音频数据。在向上述音频处理组件传输上述目标音频数据之后,上述音频处理组件可以顺序地将目标音频数据写入缓冲区,以便处理缓冲区中的数据。此处,音频处理组件可以对缓冲区中的数据进行数模转换等处理,以实现对目标音频数据的播放。在缓冲区中的数据处理完毕后,回调函数可以返回信息。并且,在缓冲区中的数据处理完毕后,可以继续向缓冲区继续写入目标音频数据。在本实施例的一些可选的实现方式中,在采集视频图像并利用音频处理组件播放目标音频数据之前,上述执行主体可以确定本地是否存储有目标音频数据。响应于确定本地未存储有上述目标音频数据,上述执行主体可以通过有线连接或者无线连接方式,向服务器(例如图1所示的服务器105)发送用于获取目标音频数据的请求。而后,可以接收上述服务器返回的目标音频数据。需要指出的是,上述无线连接方式可以包括但不限于3G/4G连接、WiFi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB(ultra wideband)连接、以及其他现在已知或将来开发的无线连接方式。需要说明的是,若上述服务器返回的上述目标音频数据不是PCM编码格式的数据流,上述执行主体可以对其进行转换,转换为PCM编码格式的数据流。
步骤202,对于视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,基于上述数据量对应的播放时长,确定该帧的时间戳。
在本实施例中,上述执行主体在采集到视频数据的每一帧时,可以记录该帧的采集时间。每一帧的采集时间可以是采集到该帧时的系统时间戳(例如unix时间戳)。需要说明的是,时间戳(timestamp)是能表示一份数据在某个特定时间之前已经存在的、完整的、可验证的数据。通常,时间戳是一个字符序列,唯一地标识某一刻的时间。
对于上述视频数据中的帧,上述执行主体按照如下步骤确定该帧的时间戳(此处以某一帧为例):
第一步,可以读取该帧的采集时间。
第二步,可以基于在该帧的采集时间时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量。此处,由于回调函数返回的信息不同,因而可以基于所返回的信息,可以使用与该信息相应的方法确定已播放的目标音频数据的数据量。作为示例,回调函数返回的信息,可以是用于指示缓冲区内数据以处理完可以继续写入的信息。上述执行主体可以确定在该帧的采集时间时,上述音频处理组件已返回的信息的次数。而后,可以读取上述音频处理组件的缓冲区大小。之后,可以将上述缓冲区大小与上述次数的乘积确定为采集到该帧时已播放的目标音频数据的数据量。作为又一示例,若回调函数返回的信息是每次缓冲区内的数据被处理完后所返回的该次所处理的数据量。上述执行主体可以确定在该帧的采集时间时,上述音频处理组件已返回的历次信息所指示的所处理的数据量之和。之后,可以将是数据量之和确定为采集到该帧时已播放的目标音频数据的数据量。作为又一示例,若回调函数返回的信息是缓冲区内的数据被处理完的次数。上述执行主体可以确定在该帧的采集时间时,上述音频处理组件已返回的最新的信息中所记录的缓冲区内的数据被处理完的次数。而后,可以读取上述音频处理组件的缓冲区大小。之后,可以将上述缓冲区大小与该次数的乘积确定为采集到该帧时已播放的目标音频数据的数据量。
第三步,可以基于第二步所确定数据量对应的播放时长,确定该帧的时间戳。此处,由于目标音频数据是按照设定的采样频率(Sampling Rate)、设定的采样大小(Sampling Size)对声音信号进行采样、量化等操作后得到的,并且播放目标音频数据的声道数是预先确定的,因此,可以基于该帧的采集时间已播放的目标音频数据的数据量,以及采样频率、采样大小和声道数,计算出采集到该帧时目标音频数据的播放时长。实践中,采样频率也称为采样速度或者采样率。采样频率可以是每秒从连续信号中提取并组成离散信号的采样个数。采样频率可以用赫兹(Hz)来表示。采样大小可以用比特(bit)来表示。此处,确定播放时长的步骤如下:首先,可以确定采样频率、采样大小和声道数三者的乘积。而后,可以将已播放的目标音频数据的数据量与该乘积的比值确定为目标音频数据的播放时长。在确定出播放时长之后,上述执行主体可以基于该播放时长,确定该帧的时间戳。
在该步骤的一些可选的实现方式中,上述执行主体可以直接将该播放时长确定为该帧的时间戳。
在该步骤的一些可选的实现方式中,上述执行主体可以预先获取视频数据中的至少一帧的采集时间和传输就绪时间,基于所获取的采集时间和传输就绪时间,确定上述视频数据的帧的延迟时长。作为示例,可以确定上述至少一帧中的各帧的传输就绪时间与采集时间的差值。而后,将所确定的差值的平均值确定为上述视频数据的帧的延迟时长。对于某一帧,在执行上述第二步之后,上述执行主体可以将第二步所确定的播放时长与上述延迟时长的差值确定为该帧的时间戳。
在本实施例的一些可选的实现方式中,技术人员可以预先将音频处理组件的缓冲区的大小设置为目标数值,其中,上述目标数值可以不大于视频数据的帧的预设间隔时长(例如33ms)所对应的音频数据的大小。此处,上述预设间隔时长,可以是预先设定的采集视频数据的帧速率(Frames Per Second,FPS)的倒数。实践中,帧速率指每秒钟采集的帧数。帧速率的单位可以是fps或者赫兹(Hz)。作为示例,当帧速率为30fps时,则帧的预设间隔时长为33ms。
在本实施例的一些可选的实现方式中,上述执行主体可以将采集到视频数据的尾帧时已播放的目标音频数据作为目标音频数据区间,提取目标音频数据区间。具体地,上述执行主体可以首先获取所采集到的视频数据的尾帧的采集时间。而后,可以确定该采集时间时已播放的目标音频数据的数据量。之后,可以按照该数据量,从目标音频数据的播放的起始位置对目标音频数据进行截取,将所截取的数据作为目标音频数据区间进行提取。
在本实施例的一些可选的实现方式中,上述执行主体可以将包含时间戳的视频数据和目标音频数据区间进行存储。此处,可以将上述目标音频数据区间和包含时间戳的视频数据分别进行存储至两个文件中,并建立上述两个文件的映射。此外,也可以将上述目标音频数据区间和包含时间戳的视频数据存储至同一个文件中。
在本实施例的一些可选的实现方式中,上述执行主体可以首先将包含时间戳的视频数据进行编码。之后,将上述目标音频数据区间和编码后的视频数据存储在同一文件中。实践中,视频编码可以是指通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式。需要说明的是,视频编码技术是是目前广泛研究和应用的公知技术,在此不再赘述。
在本实施例的一些可选的实现方式中,在将上述目标音频数据区间和包含时间戳的上述视频数据存储之后,上述执行主体还可以将所存储的数据上传至服务器。
继续参见图3,图3是根据本实施例的用于确定时间戳的方法的应用场景的一个示意图。在图3的应用场景中,在图3的应用场景中,用户手持终端设备301,进行配乐视频的录制。终端设备301中运行有短视频录制类应用。用户在该短视频录制类应用的界面中首先选择了某个配乐(例如歌曲《小苹果》)。而后终端设备301获取该配乐对应的目标音频数据302。在用户点击了配乐视频录制按键之后,终端设备301开启摄像头进行视频数据303的采集,同时,利用音频处理组件播放目标音频数据302。对于所采集的视频数据中的帧,终端设备301可以基于采集到该帧时回调函数已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,将上述数据量对应的播放时长确定为该帧的时间戳。
本申请的上述实施例提供的方法,通过采集视频数据,并利用音频处理组件播放目标音频数据,而后对于上述视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,基于上述数据量对应的播放时长确定该帧的时间戳,从而,可以基于音频处理组件所处理的数据量,确定视频数据的时间戳。避免了视频数据采集不稳定的情况下(例如设备过热、性能不足导致丢帧),按照相同时间间隔进行帧的时间戳的计算所导致的时间戳不准确的问题。从而提高了视频数据中的帧的时间戳的准确性。
进一步参考图4,其示出了用于确定时间戳的方法的又一个实施例的流程400。该用于确定时间戳的方法的流程400,包括以下步骤:
步骤401,采集视频数据并利用预置的音频处理组件播放目标音频数据。
在本实施例中,用于确定时间戳的方法的执行主体(例如图1所示的终端设备101、102、103)可以利用其所安装的摄像头采集视频数据,同时,播放目标音频数据。此处,播放目标音频数据可以采用如下方式:
首先,调用预置的、支持音频播放的音频处理组件(例如Android开发包中的OpenSL ES组件)。其中,上述音频处理组件可以支持音频播放,并且,可以支持缓冲区和回调函数的设置。上述回调函数可以用于在缓冲区中的音频数据处理完毕后返回信息。此处,在缓冲区中的数据处理完毕后,上述回调函数所返回的信息可以包括所处理的数据量。
之后,可以向上述音频处理组件传输上述目标音频数据,以利用上述音频处理组件播放目标音频数据。
步骤402,对于所采集到的视频数据的帧,确定采集到该帧时,回调函数已返回的数据量之和,将数据量之和确定为采集到该帧时已播放的目标音频数据的数据量,将采集到该帧时已播放的目标音频数据的数据量对应的播放时长确定为该帧的时间戳。
在本实施例中,每一次缓冲区中的目标音频数据被处理完毕后,回调函数可以返回该次已处理的目标音频数据的数据量。因此,对于所采集到的视频数据中的帧,上述执行主体可以首先确定采集到该帧时,上述回调函数已返回的数据量之和。而后,可以将上述数据量之和确定为采集到该帧时已播放的目标音频数据的数据量。最后,上述执行主体可以按照如下步骤确定已播放的目标音频数据的数据量对应的播放时长:首先,可以确定采样频率、采样大小和声道数三者的乘积。而后,可以将已播放的目标音频数据的数据量与该乘积的比值确定为目标音频数据的播放时长。
实践中,技术人员可以预先将音频处理组件的缓冲区的大小设置为目标数值,其中,上述目标数值可以不大于视频数据的帧的预设间隔时长(例如33ms)所对应的音频数据的大小。。由此,这种实现方式可以更准确地确定出在某一时刻已播放的目标音频数据的数据量。从而提高了所确定的视频数据的帧的时间戳的准确性。
步骤403,将采集到视频数据的尾帧时已播放的目标音频数据作为目标音频数据区间,提取目标音频数据区间。
在本实施例中,上述执行主体可以首先获取所采集到的视频数据的尾帧(即所采集到的视频数据中的最后一帧)的采集时间。而后,可以确定该采集时间时已播放的目标音频数据的数据量。之后,可以按照该数据量,从目标音频数据的播放的起始位置对目标音频数据进行截取,将所截取的数据作为目标音频数据区间进行提取。
步骤404,将包含时间戳的视频数据和上述目标音频数据区间进行存储。
在本实施例中,上述执行主体可以将包含时间戳的视频数据和目标音频数据区间进行存储。此处,可以将上述目标音频数据区间和包含时间戳的视频数据分别进行存储至两个文件中,并建立上述两个文件的映射。此外,也可以将上述目标音频数据区间和包含时间戳的视频数据存储至同一个文件中。
从图4中可以看出,与图2对应的实施例相比,本实施例中的用于确定时间戳的方法的流程400,一方面,体现了利用预置的、支持音频播放的音频处理组件进行目标音频数据播放的步骤,以及基于回调函数返回的数据量确定每帧采集时刻已播放的目标音频数据的数据量的步骤。由此,当采集到视频数据的某一帧时,本实施例描述的方案可以更准确地确定在该帧的采集时刻已播放的目标音频数据的播放量,进而,提高了所确定的视频数据中的帧的时间戳的准确性。另一方面,还体现了提取目标音频数据区间的步骤,以及存储音视频数据的步骤。由此,本实施例描述的方案可以实现对配乐视频的录制并保存所录制的数据,并且,由于视频时间戳基于目标音频数据所播放的数据量而确定,从而提升了所录制的配乐视频的音视频同步效果。
进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种用于确定时间戳的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例所述的用于确定时间戳的装置500包括:采集单元501,被配置成采集视频数据并利用预置的音频处理组件播放目标音频数据,其中,上述音频处理组件支持音频播放,以及,支持缓冲区和回调函数的设置,上述回调函数用于在缓冲区中的数据处理完毕后返回信息;第一确定单元502,被配置成对于上述视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,基于上述数据量对应的播放时长,确定该帧的时间戳。
在本实施例的一些可选的实现方式中,在缓冲区中的数据处理完毕后,上述回调函数可以所返回的信息包括所处理的数据量。
在本实施例的一些可选的实现方式中,上述第一确定单元502可以进一步被配置成对于所采集到的视频数据的帧,确定采集到该帧时,上述回调函数已返回的数据量之和,将上述数据量之和确定为采集到该帧时已播放的目标音频数据的数据量。
在本实施例的一些可选的实现方式中,上述第一确定单元502可以进一步被配置成:对于所采集到的视频数据的帧,确定采集到该帧时,上述回调函数已返回的信息的次数,读取上述音频处理组件的缓冲区大小,将上述缓冲区大小与上述次数的乘积确定为采集到该帧时已播放的目标音频数据的数据量。
在本实施例的一些可选的实现方式中,上述音频处理组件的缓冲区的大小可以为预先设置为目标数值,上述目标数值可以不大于视频数据的帧的预设间隔时长所对应的音频数据的大小。
在本实施例的一些可选的实现方式中,该装置还可以包括提取单元和存储单元(图中未示出)。其中,上述提取单元可以被配置成将采集到上述视频数据的尾帧时已播放的目标音频数据作为目标音频数据区间,提取上述目标音频数据区间。上述存储单元可以被配置成将包含时间戳的视频数据和上述目标音频数据区间进行存储。
本申请的上述实施例提供的装置,通过采集单元501采集视频数据,并利用音频处理组件播放目标音频数据,而后第一确定单元502对于上述视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,基于上述数据量对应的播放时长确定该帧的时间戳,从而,可以基于音频处理组件所处理的数据量,确定视频数据的时间戳。避免了视频数据采集不稳定的情况下(例如设备过热、性能不足导致丢帧),按照相同时间间隔进行帧的时间戳的计算所导致的时间戳不准确的问题。从而提高了视频数据中的帧的时间戳的准确性。
下面参考图6,其示出了适于用来实现本申请实施例的终端设备的计算机系统600的结构示意图。图6示出的终端设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括触摸屏、触摸板等的输入部分606;包括诸如液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括采集单元和第一确定单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,接收单元还可以被描述为“采集视频数据并播放目标音频数据的单元”。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的装置中所包含的;也可以是单独存在,而未装配入该装置中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该装置执行时,使得该装置:采集视频数据,并利用预置的音频处理组件播放目标音频数据;对于该视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,基于该数据量对应的播放时长,确定该帧的时间戳。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (14)

1.一种用于确定时间戳的方法,包括:
采集视频数据并利用预置的音频处理组件播放目标音频数据,其中,所述音频处理组件支持音频播放,以及,支持缓冲区和回调函数的设置,所述回调函数用于在缓冲区中的数据处理完毕后返回信息;
对于所述视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,基于所述数据量对应的播放时长,确定该帧的时间戳。
2.根据权利要求1所述的用于确定时间戳的方法,其中,在缓冲区中的数据处理完毕后,所述回调函数所返回的信息包括所处理的数据量。
3.根据权利要求2所述的用于确定时间戳的方法,其中,所述对于所述视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,包括:
对于所采集到的视频数据的帧,确定采集到该帧时,所述回调函数已返回的数据量之和,将所述数据量之和确定为采集到该帧时已播放的目标音频数据的数据量。
4.根据权利要求1所述的用于确定时间戳的方法,其中,所述对于所述视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,包括:
对于所采集到的视频数据的帧,确定采集到该帧时,所述回调函数已返回的信息的次数,读取所述音频处理组件的缓冲区大小,将所述缓冲区大小与所述次数的乘积确定为采集到该帧时已播放的目标音频数据的数据量。
5.根据权利要求1所述的用于确定时间戳的方法,其中,所述音频处理组件的缓冲区的大小预先设置为目标数值,所述目标数值不大于视频数据的帧的预设间隔时长所对应的音频数据的大小。
6.根据权利要求1所述的用于确定时间戳的方法,其中,所述方法还包括:
确定采集到所述视频数据的尾帧时已播放的目标音频数据的数据量,以及根据所确定的数据量,从所述目标音频数据的播放的起始位置对所述目标音频数据进行截取,得到截取到的数据;
将包含时间戳的视频数据和所得到的截取到的数据进行存储。
7.一种用于确定时间戳的装置,包括:
采集单元,被配置成采集视频数据并利用预置的音频处理组件播放目标音频数据,其中,所述音频处理组件支持音频播放,以及,支持缓冲区和回调函数的设置,所述回调函数用于在缓冲区中的数据处理完毕后返回信息;
第一确定单元,被配置成对于所述视频数据中的帧,基于采集到该帧时已返回的信息,确定采集到该帧时已播放的目标音频数据的数据量,将所述数据量对应的播放时长确定为该帧的时间戳。
8.根据权利要求7所述的用于确定时间戳的装置,其中,在缓冲区中的数据处理完毕后,所述回调函数所返回的信息包括所处理的数据量。
9.根据权利要求8所述的用于确定时间戳的装置,其中,所述第一确定单元进一步被配置成:
对于所采集到的视频数据的帧,确定采集到该帧时,所述回调函数已返回的数据量之和,将所述数据量之和确定为采集到该帧时已播放的目标音频数据的数据量。
10.根据权利要求7所述的用于确定时间戳的装置,其中,所述第一确定单元进一步被配置成:
对于所采集到的视频数据的帧,确定采集到该帧时,所述回调函数已返回的信息的次数,读取所述音频处理组件的缓冲区大小,将所述缓冲区大小与所述次数的乘积确定为采集到该帧时已播放的目标音频数据的数据量。
11.根据权利要求7所述的用于确定时间戳的装置,其中,所述音频处理组件的缓冲区的大小预先设置为目标数值,所述目标数值不大于视频数据的帧的预设间隔时长所对应的音频数据的大小。
12.根据权利要求7所述的用于确定时间戳的装置,其中,所述装置还包括:
提取单元,被配置成确定采集到所述视频数据的尾帧时已播放的目标音频数据的数据量,以及根据所确定的数据量,从所述目标音频数据的播放的起始位置对所述目标音频数据进行截取,得到截取到的数据;
存储单元,被配置成将包含时间戳的视频数据和所得到的截取到的数据进行存储。
13.一种终端设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的方法。
14.一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如权利要求1-6中任一所述的方法。
CN201810866759.6A 2018-08-01 2018-08-01 用于确定时间戳的方法和装置 Active CN109600563B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810866759.6A CN109600563B (zh) 2018-08-01 2018-08-01 用于确定时间戳的方法和装置
PCT/CN2019/098455 WO2020024949A1 (zh) 2018-08-01 2019-07-30 确定时间戳的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810866759.6A CN109600563B (zh) 2018-08-01 2018-08-01 用于确定时间戳的方法和装置

Publications (2)

Publication Number Publication Date
CN109600563A CN109600563A (zh) 2019-04-09
CN109600563B true CN109600563B (zh) 2020-05-15

Family

ID=65956205

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810866759.6A Active CN109600563B (zh) 2018-08-01 2018-08-01 用于确定时间戳的方法和装置

Country Status (2)

Country Link
CN (1) CN109600563B (zh)
WO (1) WO2020024949A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109600563B (zh) * 2018-08-01 2020-05-15 北京微播视界科技有限公司 用于确定时间戳的方法和装置
CN111770413B (zh) * 2020-06-30 2021-08-27 浙江大华技术股份有限公司 一种多音源混音方法、装置及存储介质

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7383229B2 (en) * 2003-03-12 2008-06-03 Yahoo! Inc. Access control and metering system for streaming media
US8179789B2 (en) * 2005-07-01 2012-05-15 Winnov, Lp System and method for timestamps for media stream data
US8379735B2 (en) * 2006-05-15 2013-02-19 Microsoft Corporation Automatic video glitch detection and audio-video synchronization assessment
US20110075994A1 (en) * 2009-09-28 2011-03-31 Hsiao-Shu Hsiung System and Method for Video Storage and Retrieval
US8736700B2 (en) * 2010-09-30 2014-05-27 Apple Inc. Techniques for synchronizing audio and video data in an image signal processing system
CN102547435B (zh) * 2011-12-16 2014-06-25 Tcl集团股份有限公司 一种多媒体文件播放处理系统及方法
TW201347521A (zh) * 2012-05-11 2013-11-16 Hon Hai Prec Ind Co Ltd 時間戳調整系統及方法
CN102833436A (zh) * 2012-08-31 2012-12-19 电子科技大学 实现voip代理的方法以及系统
CN102982832B (zh) * 2012-11-24 2015-05-27 安徽科大讯飞信息科技股份有限公司 一种在线卡拉ok伴奏、人声与字幕的同步方法
CN104581202B (zh) * 2013-10-25 2018-04-27 腾讯科技(北京)有限公司 音视频同步方法与系统及编码装置和解码装置
CN103686312B (zh) * 2013-12-05 2017-02-08 中国航空无线电电子研究所 一种dvr多路音视频记录方法
CN105049917B (zh) * 2015-07-06 2018-12-07 深圳Tcl数字技术有限公司 录制音视频同步时间戳的方法和装置
CN105357545A (zh) * 2015-11-03 2016-02-24 北京英梅吉科技有限公司 基于流媒体方式的无线同屏方法及装置
CN105516090B (zh) * 2015-11-27 2019-01-22 刘军 媒体播放方法、设备及音乐教学系统
CN107040748A (zh) * 2016-02-03 2017-08-11 北京机电工程研究所 一种监控与视频会议应用整合平台和方法
CN106060424A (zh) * 2016-06-14 2016-10-26 徐文波 视频配音方法和装置
CN106303686A (zh) * 2016-07-29 2017-01-04 乐视控股(北京)有限公司 视频生成方法、视频生成装置和终端设备
CN106656649B (zh) * 2016-09-14 2021-01-01 腾讯科技(深圳)有限公司 一种实时通话过程中基于测速的通道切换方法、客户端与服务器
CN106412662B (zh) * 2016-09-20 2018-10-19 腾讯科技(深圳)有限公司 时间戳分配方法及装置
TWI615772B (zh) * 2017-01-25 2018-02-21 精英電腦股份有限公司 同步控制多個顯示器的方法
CN107018443B (zh) * 2017-02-16 2021-02-05 香港乐蜜有限公司 视频录制方法、装置和电子设备
CN107526437A (zh) * 2017-07-31 2017-12-29 武汉大学 一种基于音频多普勒特征量化的手势识别方法
CN107786876A (zh) * 2017-09-21 2018-03-09 北京达佳互联信息技术有限公司 音乐和视频的同步方法、装置及移动终端
CN107734353B (zh) * 2017-10-09 2020-08-04 武汉斗鱼网络科技有限公司 录制弹幕视频的方法、装置、可读存储介质及设备
CN108337230A (zh) * 2017-12-26 2018-07-27 武汉烽火众智数字技术有限责任公司 一种基于智能手机的音视频实时回传方法及系统
CN109600563B (zh) * 2018-08-01 2020-05-15 北京微播视界科技有限公司 用于确定时间戳的方法和装置

Also Published As

Publication number Publication date
WO2020024949A1 (zh) 2020-02-06
CN109600563A (zh) 2019-04-09

Similar Documents

Publication Publication Date Title
CN109600564B (zh) 用于确定时间戳的方法和装置
CN109600650B (zh) 用于处理数据的方法和装置
CN109600665B (zh) 用于处理数据的方法和装置
US11114133B2 (en) Video recording method and device
CN109600661B (zh) 用于录制视频的方法和装置
CN109600563B (zh) 用于确定时间戳的方法和装置
WO2023125169A1 (zh) 音频处理方法、装置、设备及存储介质
CN111385576B (zh) 视频编码方法、装置、移动终端及存储介质
WO2020024960A1 (zh) 处理数据的方法和装置
CN109600660B (zh) 用于录制视频的方法和装置
CN111324576A (zh) 一种录音数据保存的方法、装置、存储介质及终端设备
CN109618198A (zh) 直播内容举报方法及装置、存储介质、电子设备
US11302308B2 (en) Synthetic narrowband data generation for narrowband automatic speech recognition systems
CN109587517B (zh) 一种多媒体文件的播放方法及装置、服务器及存储介质
CN109600562B (zh) 用于录制视频的方法和装置
CN113014854A (zh) 互动记录的生成方法、装置、设备及介质
CN109413492B (zh) 一种直播过程中音频数据混响处理方法及系统
CN114495941A (zh) 单通道音频转文本的方法、装置、电子设备及存储介质
CN109640023B (zh) 一种视频录制方法、装置、服务器及存储介质
CN111145769A (zh) 音频处理方法和装置
WO2024022427A1 (zh) 视频录制方法、装置、设备、存储介质和程序产品
CN111145770B (zh) 音频处理方法和装置
CN113436632A (zh) 语音识别方法、装置、电子设备和存储介质
CN117556066A (zh) 多媒体内容生成方法和电子设备
CN113436644A (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230104

Address after: Room 1445A, No. 55 Xili Road, China (Shanghai) Pilot Free Trade Zone, Pudong New Area, Shanghai, 200120

Patentee after: Honey Grapefruit Network Technology (Shanghai) Co.,Ltd.

Address before: 100080 408, 4th floor, 51 Zhichun Road, Haidian District, Beijing

Patentee before: BEIJING MICROLIVE VISION TECHNOLOGY Co.,Ltd.