CN105847994B - 一种多媒体文件的播放方法和装置 - Google Patents
一种多媒体文件的播放方法和装置 Download PDFInfo
- Publication number
- CN105847994B CN105847994B CN201610294431.2A CN201610294431A CN105847994B CN 105847994 B CN105847994 B CN 105847994B CN 201610294431 A CN201610294431 A CN 201610294431A CN 105847994 B CN105847994 B CN 105847994B
- Authority
- CN
- China
- Prior art keywords
- multimedia file
- file
- metadata
- script
- logic
- 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
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/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- 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/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47217—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
-
- 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/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/65—Transmission of management data between client and server
- H04N21/658—Transmission by the client directed to the server
- H04N21/6587—Control parameters, e.g. trick play commands, viewpoint selection
-
- 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/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8453—Structuring of content, e.g. decomposing content into time segments by locking or enabling a set of features, e.g. optional functionalities in an executable program
-
- 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/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8455—Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
Abstract
本发明提供了一种多媒体文件的播放方法和装置,应用于终端,其中,所述方法包括:解析与当前播放的多媒体文件对应的预设元数据流文件;元数据流文件与多媒体文件的视频帧通过时间戳实现同步;元数据流文件包括元数据的值;元数据的值包括时间间隔和核心数据,核心数据包括逻辑跳转脚本;获取终端的传感器数据,并判断传感器数据是否满足解析得到的逻辑跳转脚本中的用户条件;若满足,则当播放到元数据的值的时间间隔起点时,执行逻辑跳转脚本的操作,跳过多媒体文件中与时间间隔对应的一段视频帧后继续播放多媒体文件。本发明可以在播放同一个多媒体文件时,针对不同的观看用户群体执行预定的逻辑跳转脚本,使得多媒体文件展现不同的多媒体内容。
Description
技术领域
本发明涉及多媒体播放技术领域,特别是涉及一种多媒体文件的播放方法和装置。
背景技术
多媒体文件的元数据(meta-data)主要用来描述多媒体文件之间的隶属关系、录制时间和与制作多媒体文件相关的其他信息。现在有一些扩展元数据的创新方案,例如,针对元数据可以增加更多的超信息,如:链接、声音和方位等。具体通过在多媒体文件的容器中加入超信息,可以引入更多的使用场景,并提供更多样的用户体验。
由于不同的用户群体具有不同的偏好和习惯,目前,同一个多媒体文件不能针对不同的用户群体展现不同的多媒体内容。例如:电影的观看者是儿童,电影在播放时不能自动略过暴力等镜头;电影的观看者是穆斯林,电影在播放时不能自动略过吃猪肉的镜头。在目前没有执行电影分级审查制度时,使同一个多媒体文件可以自动适应不同的用户群体是一个急需解决的问题。
发明内容
本发明提供一种多媒体文件的播放方法和装置,以解决同一个多媒体文件不能针对不同的用户群体展现不同的多媒体内容的问题。
为了解决上述问题,本发明提供了一种多媒体文件的播放方法,应用于终端,所述方法包括:
解析与当前播放的多媒体文件对应的预设元数据流文件;所述元数据流文件与所述多媒体文件的视频帧通过时间戳实现同步;所述元数据流文件包括元数据的值;所述元数据的值包括时间间隔和核心数据,所述核心数据包括逻辑跳转脚本;
获取所述终端的传感器数据,并判断所述传感器数据是否满足解析得到的逻辑跳转脚本中的用户条件;
若满足,则当播放到所述元数据的值的时间间隔起点时,执行逻辑跳转脚本的操作,跳过所述多媒体文件中与所述时间间隔对应的一段视频帧后,继续播放所述多媒体文件。
相应地,本发明还提供了一种多媒体文件的播放装置,应用于终端,所述装置包括:
解析模块,用于解析与当前播放的多媒体文件对应的预设元数据流文件;所述元数据流文件与所述多媒体文件的视频帧通过时间戳实现同步;所述元数据流文件包括元数据的值;所述元数据的值包括时间间隔和核心数据,所述核心数据包括逻辑跳转脚本;
判断模块,用于获取所述终端的传感器数据,并判断所述传感器数据是否满足解析得到的逻辑跳转脚本中的用户条件;
执行模块,用于若所述传感器数据满足解析得到的逻辑跳转脚本中的用户条件,则当播放到所述元数据的时间间隔起点时,执行逻辑跳转脚本的操作,跳过所述多媒体文件中与所述时间间隔对应的一段视频帧后,继续播放所述多媒体文件。
与背景技术相比,本发明包括以下优点:
当在终端上播放多媒体文件时,通过解析与当前播放的多媒体文件对应的预设元数据流文件,获得逻辑跳转脚本。其中,元数据流文件与多媒体文件的视频帧通过时间戳实现同步,多媒体文件解码后的视频文件和音频文件运行在元数据流文件的时间戳上时,元数据流文件与多媒体文件一起同步。元数据流文件中包括元数据的值,元数据的值包括时间间隔和核心数据,核心数据包括逻辑跳转脚本。获取终端的传感器数据,判断传感器数据是否满足解析得到的逻辑跳转脚本中的用户条件,若满足,则当播放到元数据的值的时间间隔起点时,执行逻辑跳转脚本的操作,跳过多媒体文件中与时间间隔对应的一段视频帧后,继续播放多媒体文件,其中,通过传感器数据识别当前观看用户。实现当多媒体文件在播放到某一视频帧时,该视频帧为元数据流文件中的时间间隔起点时,执行元数据流文件中该视频帧对应的逻辑跳转脚本,通过判断终端的传感器数据是否满足逻辑跳转脚本的用户条件,若传感器数据表示当前观看用户符合逻辑跳转脚本中的用户条件,则跳过与时间间隔对应的一段视频帧后,继续播放多媒体文件。可以在播放同一个多媒体文件时,针对不同的观看用户群体,执行预定的逻辑跳转脚本,使得多媒体文件展现不同的多媒体内容。
附图说明
图1是本发明实施例一提供的一种生成、编辑、解析以及执行元数据流文件的框架的工作流程图;
图2是本发明实施例一提供的元数据流文件与多媒体文件之间的关系示意图;
图3是本发明实施例一提供的一种多媒体文件的播放方法的步骤流程图;
图4是本发明实施例一提供的解析元数据流文件的流程图;
图5是本发明实施例一提供的脚本执行模块的工作流程图;
图6是本发明实施例二提供的一种多媒体文件的播放方法的步骤流程图;
图7是本发明实施例二提供的元数据混合写入模块生成元数据流文件的过程示意图;
图8是本发明实施例二提供的元数据混合写入模块编辑元数据流文件的过程示意图;
图9是本发明实施例三提供的一种多媒体文件的播放装置的结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
下面通过列举几个具体的实施例详细介绍本发明提供的一种多媒体文件的播放方法和装置。
实施例一
详细介绍本发明实施例提供的一种多媒体文件的播放方法。本发明实施例中的多媒体文件可以为任意格式的多媒体文件,如mp4、webm、ogg、avi、wmv、rmvb等等。所述多媒体文件可以在终端所处操作系统的应用程序中播放,也就是说,本发明实施例所述的一种多媒体文件的播放方法可以应用于终端中的具体应用程序,所述终端可以为智能手机、平板电脑等等。
本发明实施例中的多媒体文件的每个视频帧都有对应的元数据流文件,所述元数据流文件通过本发明实施例中提出的一种特定的框架生成、编辑、解析以及执行等等。
所述框架主要包括三个模块,分别为元数据混合写入模块(Meta Muxer Writer)、元数据流解析模块(Meta Streaming Parser)和脚本执行模块(Script Runtime)。所述框架的工作流程图如图1所示,其中,在写入进程中,元数据混合写入模块负责生成和编辑元数据流文件;在读取进程中,元数据流解析模块负责解析元数据流文件,同时,脚本执行模块负责执行元数据流文件中的脚本。
本发明实施例中的元数据流文件与多媒体文件是独立的两类文件,所述元数据流文件与所述多媒体文件的视频帧通过时间戳实现同步,所述元数据流文件与所述多媒体文件之间的关系如图2所示。所述多媒体文件主要由视频文件、音频文件、多媒体数据和其他文件组成,其中,其他文件可以为字幕文件等等。在多媒体数据中具体还可以包括头文件,头文件中包括元数据。由于多媒体文件按照时间戳播放对应的视频帧,多媒体文件通过时间戳与元数据流文件同步,因此,在多媒体文件播放到一定视频帧时,可以确定与该一定视频帧对应的元数据流文件。
参照图3,示出了本发明实施例中一种多媒体文件的播放方法的步骤流程图。
步骤300,解析与当前播放的多媒体文件对应的预设元数据流文件。
所述预设元数据流文件可以由元数据混合写入模块生成,元数据流文件可以包括元数据的值;所述元数据的值的第一部分是时间间隔,具体可以以“TimeStart”表示时间间隔的起点,以“TimetEnd”表示时间间隔的终点,“TimeStart/TimeEnd”的格式如“Hour/Minute/Second.Millisecond”;元数据的值的第二部分是核心数据,具体可以以“TYPE:XXX”中的“TYPE:”表示核心数据的起点,以“/TYPE”表示核心数据的终点,其中,“XXX”表示核心数据的类型等。根据“XXX”限定的不同的核心数据的类型,所述核心数据可以包括逻辑跳转脚本。
下面,举例说明元数据流文件的结构,如:
<TIMESTAMP>00:00:02.456–00:00:05.678
//text data
<TYPE:TEXT>THE VIOLENT SCENE.</TYPE>
//script
<TYPE:SCRIPT>if(children){jump to
<TIMESTAMP>00:00:06<TIMESTAMP>}
</TYPE>
</TIMESTAMP>
其中,时间间隔为00:00:02.456–00:00:05.678,时间间隔的起点为00:00:02.456,对应为0小时(Hour)0分钟(Minute)2秒(Second)456毫秒(Millisecond),时间间隔的终点为00:00:05.678,对应为0小时(Hour)0分钟(Minute)5秒(Second)678毫秒(Millisecond)。核心数据包括两个,一个为文本类型的核心数据,为“THE VIOLENTSCENE”;另一个为脚本类型的核心数据,为“if(children){jump to<TIMESTAMP>00:00:06<TIMESTAMP>}”。
所述步骤300具体可以按照当前播放的多媒体文件的播放进度,解析对应的预设元数据流文件,例如,当前播放的多媒体文件播放到00:00:02.456视频帧时,解析时间间隔的起点为00:00:02.456的预设元数据流文件。
对于多媒体文件来说,在播放多媒体文件时,利用应用程序中的解码器解码多媒体文件,解码得到视频文件和音频文件。如果视频文件和音频文件运行在具体的时间戳上,该具体的时间戳在元数据流文件中预先定义,则元数据流文件与视频文件和音频文件一起同步。
解析元数据流文件的流程图如图4所示,元数据流文件经过元数据流解析模块解析,得到元数据的值。元数据的值分别与解码得到的音频文件和视频文件进行同步。
步骤302,获取所述终端的传感器数据,并判断所述传感器数据是否满足解析得到的逻辑跳转脚本中的用户条件,若满足,则执行步骤304;若不满足,则流程结束。
所述终端上的传感器可以为定位设备,如全球定位系统(Global PositioningSystem,GPS)设备;图像采集设备,如摄像头;重力感应传感器和加速度感应传感器等等。
获取传感器数据的目的是判断当前播放的多媒体文件的观看用户是否为满足逻辑跳转脚本中的用户条件。本发明实施例中对获取传感器数据的技术特征不作具体限制。
在获取到传感器数据之后,可以根据传感器数据判断得出当前播放的多媒体文件的观看用户是成人、小孩,或者是否是宗教信仰的用户等等。具体可以根据人脸识别技术等进行判断,本发明实施例对根据传感器数据判断观看用户的技术特征不作具体限制。
步骤304,当播放到所述元数据的值的时间间隔起点时,执行逻辑跳转脚本的操作,跳过所述多媒体文件中与所述时间间隔对应的一段视频帧后,继续播放所述多媒体文件。
本发明实施例中的逻辑跳转脚本的执行可以通过脚本执行模块完成,脚本执行模块可以根据不同用户的特征、背景等执行逻辑跳转脚本。其中,用户的特征、背景包括性别、年龄、民族、宗教信仰等等。
脚本执行模块的工作流程图如图5所示,其中,脚本执行模块可以通过虚拟感应器的数据判断当前观看用户是儿童还是特殊宗教信仰者,虚拟感应器可以为摄像头等;还可以通过真实感应器获取当前观看用户的GPS数据和加速度数据。
若当前播放的多媒体文件播放到00:00:02.456时,00:00:02.456为元数据流文件中的元数据的值的时间间隔的起点,则执行该元数据流文件中的逻辑跳转脚本,目的是将多媒体文件中与该元数据流文件中的时间间隔对应的一个或者多个视频帧跳转过去,避免特殊的观看用户观看到多媒体文件中的部分画面。
综上所述,本发明实施例中的技术方案,当在终端上播放多媒体文件时,通过解析与当前播放的多媒体文件对应的预设元数据流文件,获得逻辑跳转脚本.其中,元数据流文件与多媒体文件的视频帧通过时间戳实现同步,多媒体文件解码后的视频文件和音频文件运行在元数据流文件的时间戳上时,元数据流文件与多媒体文件一起同步。元数据流文件中包括元数据的值,元数据的值包括时间间隔和核心数据,核心数据包括逻辑跳转脚本。获取终端的传感器数据,判断传感器数据是否满足解析得到的逻辑跳转脚本中的用户条件,若满足,则当播放到元数据的值的时间间隔起点时,执行逻辑跳转脚本的操作,跳过多媒体文件中与时间间隔对应的一段视频帧后,继续播放多媒体文件,其中,通过传感器数据识别当前观看用户。实现当多媒体文件在播放到某一视频帧时,该视频帧为元数据流文件中的时间间隔起点时,执行元数据流文件中该视频帧对应的逻辑跳转脚本,通过判断终端的传感器数据是否满足逻辑跳转脚本的用户条件,若传感器数据表示当前观看用户符合逻辑跳转脚本中的用户条件,则跳过与时间间隔对应的一段视频帧后,继续播放多媒体文件。可以在播放同一个多媒体文件时,针对不同的观看用户群体,执行预定的逻辑跳转脚本,使得多媒体文件展现不同的多媒体内容。
实施例二
详细介绍本发明实施例提供的一种多媒体文件的播放方法。
参照图6,示出了本发明实施例中一种多媒体文件的播放方法的步骤流程图。
步骤600,生成或编辑多媒体文件的元数据流文件。
本发明实施例中所述步骤600生成或编辑多媒体文件的元数据流文件可以通过上述实施例中的元数据混合写入模块执行。其中,元数据混合写入模块生成元数据流文件的过程如图7所示,音频文件和视频文件经过合并操作后得到合并文件,元数据文件与合并文件经过元数据混合写入模块处理得到元数据流文件,合并文件即得到的多媒体文件。元数据混合写入模块编辑元数据流文件的过程如图8所示,修改前的元数据流文件经过元数据混合写入模块编辑,得到修改后的元数据流文件,其中,元数据混合写入模块可以结合多媒体文件对修改前的元数据流文件进行编辑。
本发明实施例中的元数据流文件与多媒体文件是独立的两类文件,所述元数据流文件与所述多媒体文件的视频帧通过时间戳实现同步。元数据流文件可以包括元数据的值、多媒体文件的地址和多媒体文件的容器类型等,元数据的值、多媒体文件的地址和多媒体文件的容器类型分别与各自的标签对应。所述元数据的值的第一部分是时间间隔,具体可以以标签“TimeStart”表示时间间隔的起点,以标签“TimetEnd”表示时间间隔的终点,标签“TimeStart/TimeEnd”的格式如“Hour/Minute/Second.Millisecond”;元数据的值的第二部分是核心数据,具体可以以标签“TYPE:XXX”中的“TYPE:”表示核心数据的起点,以标签“/TYPE”表示核心数据的终点,其中,“XXX”表示核心数据的类型等。根据“XXX”限定的不同的核心数据的类型,所述核心数据可以包括逻辑跳转脚本,以标签“TYPE:SCRIPT”表示逻辑跳转脚本的起点,以标签“/TYPE”表示逻辑跳转脚本的终点。
下面,举例说明元数据流文件的结构,如:
<TIMESTAMP>00:02:11.234–00:02:15.678
//link hyper data,which is associated with browser by default.
<TYPE:URL>www.iqiyi.com</TYPE>
</TIMESTAMP>
//the media source
<DATA>Media.mp4</DATA>
其中,时间间隔为00:02:11.234–00:02:15.678,时间间隔的起点为00:02:11.234,对应为0小时(Hour)2分钟(Minute)11秒(Second)234毫秒(Millisecond),时间间隔的终点为00:02:15.678,对应为0小时(Hour)2分钟(Minute)15秒(Second)678毫秒(Millisecond)。核心数据为网址类型的核心数据,具体为标签“<TYPE:URL>”和“</TYPE>”之间的“www.iqiyi.com”。多媒体文件的地址为标签“<DATA>”和“</DATA>”之间的“Media.mp4”。多媒体文件的容器类型为“mp4”。
步骤602,解析与当前播放的多媒体文件对应的预设元数据流文件。
所述步骤602具体可以为:读取元数据流文件中的标签,确定与所述标签对应的所述元数据的值、所述多媒体文件的地址和所述多媒体文件的容器类型。
本发明实施例中的标签按照标签对的形式出现,即一对标签限定一种数据,通过在数据之前和之后分别设置标签的形式进行限定,一对标签可以理解为起始标签和结束标签。而且,元数据的值、多媒体文件的地址和多媒体文件的容器类型对应的标签对各不相同,当读取到某一个标签对的起始标签时,该起始标签后的内容即为与该标签对对应的数据,该标签对的结束标签限定与该标签对对应的数据结束。例如,<TIMESTAMP>00:02:11.234–00:02:15.678</TIMESTAMP>,其中,<TIMESTAMP>和</TIMESTAMP>为一对标签,<TIMESTAMP>为起始标签,</TIMESTAMP>为结束标签,00:02:11.234–00:02:15.678为时间间隔。
步骤604,获取所述终端的传感器数据,并判断所述传感器数据是否满足解析得到的逻辑跳转脚本中的用户条件,若满足,则执行步骤606;若不满足,则流程结束。
所述终端上的传感器可以为定位设备,如GPS设备;图像采集设备,如摄像头;重力感应传感器和加速度感应传感器等等。所述终端的传感器数据可以包括:GPS数据、人脸识别数据和加速度传感器数据等。所述传感器数据可以用于识别当前观看用户。在获取到传感器数据之后,可以根据传感器数据判断得出当前播放的多媒体文件的观看用户是成人、小孩,或者是否是宗教信仰的用户等等。具体可以根据人脸识别技术等进行判断,本发明实施例对根据传感器数据判断观看用户的技术特征不作具体限制。
所述步骤604具体可以为:通过预设接口获取所述传感器数据,判断所述传感器数据表示的当前观看用户是否为解析得到的逻辑跳转脚本中的用户;若所述传感器数据表示的当前观看用户为解析得到的逻辑跳转脚本中的用户,则确定所述传感器数据满足解析得到的逻辑跳转脚本中的用户条件;若所述传感器数据表示的当前观看用户不为解析得到的逻辑跳转脚本中的用户,则确定所述传感器数据不满足解析得到的逻辑跳转脚本中的用户条件。
步骤606,当播放到所述元数据的值的时间间隔起点时,执行逻辑跳转脚本的操作,跳过所述多媒体文件中与所述时间间隔对应的一段视频帧,从所述解析得到的逻辑跳转脚本中的指定视频帧开始继续播放所述多媒体文件。
若当前播放的多媒体文件播放到00:00:02.456时,00:00:02.456为元数据流文件中的元数据的值的时间间隔的起点,该元数据流文件中的逻辑跳转脚本为<TYPE:SCRIPT>if(children){jump to<TIMESTAMP>00:00:06<TIMESTAMP>}</TYPE>,则执行该元数据流文件中的逻辑跳转脚本,跳转到00:00:06处继续播放多媒体文件,00:00:06为逻辑跳转脚本中的指定视频帧,目的是将多媒体文件中与该元数据流文件中的时间间隔对应的一个或者多个视频帧跳转过去,避免特殊的观看用户观看到多媒体文件中的部分画面。
需要说明的是,本发明实施例中的所述多媒体文件与所述元数据流文件相互独立,所述多媒体文件对应至少一个元数据流文件,所述一个元数据流文件包括至少一个核心数据。
综上所述,本发明实施例中的技术方案,当在终端上播放多媒体文件时,通过解析与当前播放的多媒体文件对应的预设元数据流文件,获得逻辑跳转脚本,其中,元数据流文件与多媒体文件的视频帧通过时间戳实现同步,多媒体文件解码后的视频文件和音频文件运行在元数据流文件的时间戳上时,元数据流文件与多媒体文件一起同步。元数据流文件中包括元数据的值;元数据的值包括时间间隔和核心数据,核心数据包括逻辑跳转脚本。获取终端的传感器数据,判断传感器数据是否满足解析得到的逻辑跳转脚本中的用户条件,若满足,则当播放到元数据的值的时间间隔起点时,执行逻辑跳转脚本的操作,跳过多媒体文件中与时间间隔对应的一段视频帧后,继续播放多媒体文件,其中,通过传感器数据识别当前观看用户。实现当多媒体文件在播放到某一视频帧时,该视频帧为元数据流文件中的时间间隔起点时,执行元数据流文件中该视频帧对应的逻辑跳转脚本,通过判断终端的传感器数据是否满足逻辑跳转脚本的用户条件,若传感器数据表示当前观看用户符合逻辑跳转脚本中的用户条件,则跳过与时间间隔对应的一段视频帧后,继续播放多媒体文件。可以在播放同一个多媒体文件时,针对不同的观看用户群体,执行预定的逻辑跳转脚本,使得多媒体文件展现不同的多媒体内容。
多媒体文件与元数据流文件时相互独立的两类文件,由于元数据的值等内容不再保存到多媒体文件的头文件中,不受多媒体文件的容器限制。元数据流文件与多媒体文件相互独立,因此,只需要编辑元数据流文件即可实现多媒体文件对不同用户的展现效果,避免对多媒体文件的编解码等操作,降低了开发难度。
实施例三
详细介绍本发明实施例提供的一种多媒体文件的播放装置,所述装置应用于终端,所述终端可以为智能手机、平板电脑等等。
参照图9,示出了本发明实施例中一种多媒体文件的播放装置的结构示意图。
所述装置可以包括:解析模块900,判断模块902和执行模块904。
下面分别详细介绍各模块的功能以及各模块之间的关系。
解析模块900,用于解析与当前播放的多媒体文件对应的预设元数据流文件;所述元数据流文件与所述多媒体文件的视频帧通过时间戳实现同步。所述多媒体文件与所述元数据流文件相互独立,所述多媒体文件对应至少一个元数据流文件。所述元数据流文件包括元数据的值;所述元数据的值包括时间间隔和核心数据,所述一个元数据流文件包括至少一个核心数据,所述核心数据包括逻辑跳转脚本。
判断模块902,用于获取所述终端的传感器数据,并判断所述传感器数据是否满足解析得到的逻辑跳转脚本中的用户条件。
执行模块904,用于若所述传感器数据满足解析得到的逻辑跳转脚本中的用户条件,则当播放到所述元数据的值的时间间隔起点时,执行逻辑跳转脚本的操作,跳过所述多媒体文件中与所述时间间隔对应的一段视频帧后,继续播放所述多媒体文件。
在本发明的一个优选的实施例中,所述元数据流文件还可以包括:所述多媒体文件的地址和所述多媒体文件的容器类型;所述元数据的值、所述多媒体文件的地址和所述多媒体文件的容器类型分别与所述元数据的值、所述多媒体文件的地址和所述多媒体文件的容器类型各自的标签对应。所述解析模块900可以读取所述元数据的值、所述多媒体文件的地址和所述多媒体文件的容器类型各自的标签,确定与所述各自的标签对应的所述元数据的值、所述多媒体文件的地址和所述多媒体文件的容器类型。
在本发明的一个优选的实施例中,所述终端的传感器数据可以包括:GPS数据、人脸识别数据和加速度传感器数据。所述传感器数据用于识别当前观看用户。所述判断模块902可以包括:判断子模块,用于通过预设接口获取所述传感器数据,判断所述传感器数据表示的当前观看用户是否为解析得到的逻辑跳转脚本中的用户;确定子模块,用于若所述传感器数据表示的当前观看用户为解析得到的逻辑跳转脚本中的用户,则确定所述传感器数据满足解析得到的逻辑跳转脚本中的用户条件;若所述传感器数据表示的当前观看用户不为解析得到的逻辑跳转脚本中的用户,则确定所述传感器数据不满足解析得到的逻辑跳转脚本中的用户条件。
所述执行模块904可以当播放到所述元数据的值的时间间隔起点时,执行逻辑跳转脚本的操作,跳过所述多媒体文件中与所述时间间隔对应的一段视频帧,从所述解析得到的逻辑跳转脚本中的指定视频帧开始继续播放所述多媒体文件。
综上所述,本发明实施例中的技术方案,当在终端上播放多媒体文件时,通过解析与当前播放的多媒体文件对应的预设元数据流文件,获得逻辑跳转脚本,其中,元数据流文件与多媒体文件的视频帧通过时间戳实现同步,多媒体文件解码后的视频文件和音频文件运行在元数据流文件的时间戳上时,元数据流文件与多媒体文件一起同步。元数据流文件中包括元数据的值;元数据的值包括时间间隔和核心数据,核心数据包括逻辑跳转脚本。获取终端的传感器数据,判断传感器数据是否满足解析得到的逻辑跳转脚本中的用户条件,若满足,则当播放到元数据的值的时间间隔起点时,执行逻辑跳转脚本的操作,跳过多媒体文件中与时间间隔对应的一段视频帧后,继续播放多媒体文件,其中,通过传感器数据识别当前观看用户。实现当多媒体文件在播放到某一视频帧时,该视频帧为元数据流文件中的时间间隔起点时,执行元数据流文件中该视频帧对应的逻辑跳转脚本,通过判断终端的传感器数据是否满足逻辑跳转脚本的用户条件,若传感器数据表示当前观看用户符合逻辑跳转脚本中的用户条件,则跳过与时间间隔对应的一段视频帧后,继续播放多媒体文件。可以在播放同一个多媒体文件时,针对不同的观看用户群体,执行预定的逻辑跳转脚本,使得多媒体文件展现不同的多媒体内容。
多媒体文件与元数据流文件时相互独立的两类文件,由于元数据的值等内容不再保存到多媒体文件的头文件中,不受多媒体文件的容器限制。
元数据流文件与多媒体文件相互独立,因此,只需要编辑元数据流文件即可实现多媒体文件对不同用户的展现效果,避免对多媒体文件的编解码等操作,降低了开发难度。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
以上对本发明实施例所提供的一种多媒体文件的播放方法和装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (14)
1.一种多媒体文件的播放方法,其特征在于,应用于终端,所述方法包括:
解析与当前播放的多媒体文件对应的预设元数据流文件;所述元数据流文件与所述多媒体文件的视频帧通过时间戳实现同步;所述元数据流文件包括元数据的值;所述元数据的值包括时间间隔和核心数据,所述核心数据包括逻辑跳转脚本;
获取所述终端的传感器数据,并判断所述传感器数据是否满足解析得到的逻辑跳转脚本中的用户条件;
若满足,则当播放到所述元数据的值的时间间隔起点时,执行逻辑跳转脚本的操作,跳过所述多媒体文件中与所述时间间隔对应的一段视频帧后,继续播放所述多媒体文件。
2.根据权利要求1所述的多媒体文件的播放方法,其特征在于,所述元数据流文件还包括:所述多媒体文件的地址和所述多媒体文件的容器类型;所述元数据的值、所述多媒体文件的地址和所述多媒体文件的容器类型分别与所述元数据的值、所述多媒体文件的地址和所述多媒体文件的容器类型各自的标签对应。
3.根据权利要求2所述的多媒体文件的播放方法,其特征在于,所述解析与当前播放的多媒体文件对应的预设元数据流文件,包括:
读取所述元数据的值、所述多媒体文件的地址和所述多媒体文件的容器类型各自的标签,确定与所述各自的标签对应的所述元数据的值、所述多媒体文件的地址和所述多媒体文件的容器类型。
4.根据权利要求1所述的多媒体文件的播放方法,其特征在于,所述终端的传感器数据,包括:GPS数据、人脸识别数据和加速度传感器数据。
5.根据权利要求1-4中任一所述的多媒体文件的播放方法,其特征在于,所述传感器数据用于识别当前观看用户;
所述获取所述终端的传感器数据,并判断所述传感器数据是否满足解析得到的逻辑跳转脚本中的用户条件,包括:
通过预设接口获取所述传感器数据,判断所述传感器数据表示的当前观看用户是否为解析得到的逻辑跳转脚本中的用户;
若所述传感器数据表示的当前观看用户为解析得到的逻辑跳转脚本中的用户,则确定所述传感器数据满足解析得到的逻辑跳转脚本中的用户条件;
若所述传感器数据表示的当前观看用户不为解析得到的逻辑跳转脚本中的用户,则确定所述传感器数据不满足解析得到的逻辑跳转脚本中的用户条件。
6.根据权利要求1所述的多媒体文件的播放方法,其特征在于,所述当播放到所述元数据的值的时间间隔起点时,执行逻辑跳转脚本的操作,跳过所述多媒体文件中与所述时间间隔对应的一段视频帧后,继续播放所述多媒体文件,包括:
当播放到所述元数据的值的时间间隔起点时,执行逻辑跳转脚本的操作,跳过所述多媒体文件中与所述时间间隔对应的一段视频帧,从所述解析得到的逻辑跳转脚本中的指定视频帧开始继续播放所述多媒体文件。
7.根据权利要求1所述的多媒体文件的播放方法,其特征在于,所述多媒体文件与所述元数据流文件相互独立,所述多媒体文件对应至少一个元数据流文件,所述一个元数据流文件包括至少一个核心数据。
8.一种多媒体文件的播放装置,其特征在于,应用于终端,所述装置包括:
解析模块,用于解析与当前播放的多媒体文件对应的预设元数据流文件;所述元数据流文件与所述多媒体文件的视频帧通过时间戳实现同步;所述元数据流文件包括元数据的值;所述元数据的值包括时间间隔和核心数据,所述核心数据包括逻辑跳转脚本;
判断模块,用于获取所述终端的传感器数据,并判断所述传感器数据是否满足解析得到的逻辑跳转脚本中的用户条件;
执行模块,用于若所述传感器数据满足解析得到的逻辑跳转脚本中的用户条件,则当播放到所述元数据的时间间隔起点时,执行逻辑跳转脚本的操作,跳过所述多媒体文件中与所述时间间隔对应的一段视频帧后,继续播放所述多媒体文件。
9.根据权利要求8所述的多媒体文件的播放装置,其特征在于,所述元数据流文件还包括:所述多媒体文件的地址和所述多媒体文件的容器类型;所述元数据的值、所述多媒体文件的地址和所述多媒体文件的容器类型分别与所述元数据的值、所述多媒体文件的地址和所述多媒体文件的容器类型各自的标签对应。
10.根据权利要求9所述的多媒体文件的播放装置,其特征在于,所述解析模块读取所述元数据的值、所述多媒体文件的地址和所述多媒体文件的容器类型各自的标签,确定与所述各自的标签对应的所述元数据的值、所述多媒体文件的地址和所述多媒体文件的容器类型。
11.根据权利要求8所述的多媒体文件的播放装置,其特征在于,所述终端的传感器数据,包括:GPS数据、人脸识别数据和加速度传感器数据。
12.根据权利要求8-11中任一所述的多媒体文件的播放装置,其特征在于,所述传感器数据用于识别当前观看用户;
所述判断模块,包括:
判断子模块,用于通过预设接口获取所述传感器数据,判断所述传感器数据表示的当前观看用户是否为解析得到的逻辑跳转脚本中的用户;
确定子模块,用于若所述传感器数据表示的当前观看用户为解析得到的逻辑跳转脚本中的用户,则确定所述传感器数据满足解析得到的逻辑跳转脚本中的用户条件;若所述传感器数据表示的当前观看用户不为解析得到的逻辑跳转脚本中的用户,则确定所述传感器数据不满足解析得到的逻辑跳转脚本中的用户条件。
13.根据权利要求8所述的多媒体文件的播放装置,其特征在于,所述执行模块当播放到所述元数据的值的时间间隔起点时,执行逻辑跳转脚本的操作,跳过所述多媒体文件中与所述时间间隔对应的一段视频帧,从所述解析得到的逻辑跳转脚本中的指定视频帧开始继续播放所述多媒体文件。
14.根据权利要求8所述的多媒体文件的播放装置,其特征在于,所述多媒体文件与所述元数据流文件相互独立,所述多媒体文件对应至少一个元数据流文件,所述一个元数据流文件包括至少一个核心数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610294431.2A CN105847994B (zh) | 2016-05-05 | 2016-05-05 | 一种多媒体文件的播放方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610294431.2A CN105847994B (zh) | 2016-05-05 | 2016-05-05 | 一种多媒体文件的播放方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105847994A CN105847994A (zh) | 2016-08-10 |
CN105847994B true CN105847994B (zh) | 2018-11-06 |
Family
ID=56590921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610294431.2A Active CN105847994B (zh) | 2016-05-05 | 2016-05-05 | 一种多媒体文件的播放方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105847994B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108052835B (zh) * | 2017-12-14 | 2023-07-18 | Oppo广东移动通信有限公司 | 录屏文件播放方法、装置及终端 |
CN109005423A (zh) * | 2018-08-10 | 2018-12-14 | 北京奇艺世纪科技有限公司 | 一种视频播放方法及装置 |
CN113852857B (zh) * | 2021-10-20 | 2023-04-11 | 成都华栖云科技有限公司 | 一种基于html5视频帧步进时的声音播放方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1577571A (zh) * | 2003-06-30 | 2005-02-09 | 三星电子株式会社 | 用于多媒体内容和段元数据之间的时间同步的系统和方法 |
CN102215366A (zh) * | 2010-04-02 | 2011-10-12 | 中兴通讯股份有限公司 | 一种多媒体文件的生成、播放方法和系统 |
CN103442300A (zh) * | 2013-08-27 | 2013-12-11 | Tcl集团股份有限公司 | 一种音视频跳转播放方法以及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030122966A1 (en) * | 2001-12-06 | 2003-07-03 | Digeo, Inc. | System and method for meta data distribution to customize media content playback |
-
2016
- 2016-05-05 CN CN201610294431.2A patent/CN105847994B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1577571A (zh) * | 2003-06-30 | 2005-02-09 | 三星电子株式会社 | 用于多媒体内容和段元数据之间的时间同步的系统和方法 |
CN102215366A (zh) * | 2010-04-02 | 2011-10-12 | 中兴通讯股份有限公司 | 一种多媒体文件的生成、播放方法和系统 |
CN103442300A (zh) * | 2013-08-27 | 2013-12-11 | Tcl集团股份有限公司 | 一种音视频跳转播放方法以及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105847994A (zh) | 2016-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102023788B1 (ko) | 스트리밍 배신 장치 및 방법, 스트리밍 수신 장치 및 방법, 스트리밍 시스템, 프로그램과 기록 매체 | |
KR100618473B1 (ko) | Mpeg 스트림 네비게이션을 제공하기 위한 방법, 머신 판독 가능 매체, 장치 및 시스템 | |
WO2017063399A1 (zh) | 一种视频播放方法和装置 | |
CN105612743A (zh) | 编码的媒体的音频视频回放同步 | |
RU2616552C2 (ru) | Приемное устройство и способ управления им, устройство и способ распределения, программа и система распределения | |
US8275814B2 (en) | Method and apparatus for encoding/decoding signal | |
US8050539B2 (en) | Data recording/reproducing apparatus and method | |
US11356749B2 (en) | Track format for carriage of event messages | |
JP2006523418A (ja) | インタラクティブコンテンツ同期化装置及び方法 | |
US20140147100A1 (en) | Methods and systems of editing and decoding a video file | |
CN105847994B (zh) | 一种多媒体文件的播放方法和装置 | |
KR20050013050A (ko) | 동화상 데이터 재생 장치 | |
US20130282715A1 (en) | Method and apparatus of providing media file for augmented reality service | |
CN105049904B (zh) | 一种多媒体文件的播放方法和装置 | |
US20230336842A1 (en) | Information processing apparatus, information processing method, and program for presenting reproduced video including service object and adding additional image indicating the service object | |
US11689776B2 (en) | Information processing apparatus, information processing apparatus, and program | |
JP4279622B2 (ja) | データフロー再生方法及び装置と、それに関連するシステム及び信号 | |
KR102659489B1 (ko) | 정보 처리 장치, 정보 처리 장치 및 프로그램 | |
CN117914834A (zh) | 一种多媒体文件的播放方法、装置和电子设备 | |
CN117241062A (zh) | 一种视频合成方法、装置、存储介质和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |