CN115942008A - 一种视频播放方法及设备 - Google Patents
一种视频播放方法及设备 Download PDFInfo
- Publication number
- CN115942008A CN115942008A CN202211329845.6A CN202211329845A CN115942008A CN 115942008 A CN115942008 A CN 115942008A CN 202211329845 A CN202211329845 A CN 202211329845A CN 115942008 A CN115942008 A CN 115942008A
- Authority
- CN
- China
- Prior art keywords
- building
- action
- progress
- ith
- playing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 73
- 230000009471 action Effects 0.000 claims abstract description 456
- 238000012545 processing Methods 0.000 claims abstract description 59
- 230000033001 locomotion Effects 0.000 claims description 54
- 238000004590 computer program Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 8
- 239000003086 colorant Substances 0.000 claims description 3
- 239000010410 layer Substances 0.000 description 24
- 230000006870 function Effects 0.000 description 23
- 230000000694 effects Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 18
- 238000004891 communication Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 12
- 230000003993 interaction Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 235000019800 disodium phosphate Nutrition 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010792 warming Methods 0.000 description 1
- 230000036642 wellbeing Effects 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本公开提供了一种视频播放方法及设备,涉及音视频处理技术领域,用于提高视频播放的灵活性。该方法包括响应于用户的第一消息,获取媒体资源和媒体资源的打点文件,第一消息用于请求播放媒体资源,媒体资源用于展示多个健身动作,打点文件包括媒体资源对应的多个健身动作的动作信息;解析打点文件,生成媒体资源对应的健身动作列表,健身动作列表包括多个健身动作的动作信息;根据健身动作列表,绘制媒体资源对应的进度条,进度条包括多个子进度条,子进度条与健身动作一一对应;基于媒体资源和媒体资源对应的进度条,播放媒体资源。
Description
技术领域
本公开涉及音视频处理技术领域,尤其涉及一种视频播放方法及设备。
背景技术
随着各种网络视频平台的发展,以及全民健身意识的提高,越来越多人选择按照网络视频平台中的健身视频,在家中进行运动健身。
目前,大多的健身视频会包括多个健身动作,多个健身动作按照预设的播放顺序播放。在跟练过程中,若用户想重复播放某个健身动作,或者跳过某个健身动作,只能通过控制设备(如:遥控器)一点点手动调整视频的进度条,以跳转到健身动作的起始时间点,或者跳转到下一个健身动作的起始时间。这种视频播放方式的灵活性较低,也会影响用户的训练热度和训练兴趣。
发明内容
为了解决上述技术问题,本公开提供了一种视频播放方法及设备,用于提高视频播放的灵活性。
本公开的技术方案如下:
第一方面,本公开提供一种视频播放方法,包括响应于用户的第一消息,获取媒体资源和媒体资源的打点文件,第一消息用于请求播放媒体资源,媒体资源用于展示多个健身动作,打点文件包括媒体资源对应的多个健身动作的动作信息;解析打点文件,生成媒体资源对应的健身动作列表,健身动作列表包括多个健身动作的动作信息;根据健身动作列表,绘制媒体资源对应的进度条,进度条包括多个子进度条,子进度条与健身动作一一对应;基于媒体资源和媒体资源对应的进度条,播放媒体资源。
结合第一方面和上述可能的实现方式,在另一种可能的实现方式中,多个健身动作的动作信息包括健身动作的起始时间和健身动作的结束时间;进度条中的子进度条显示健身动作的起始时间以及健身动作的结束时间,播放媒体资源,包括:设置第一健身动作,第一健身动作为媒体资源展示的第一个健身动作;播放第i健身动作,i的初始值为1;在第i健身动作的播放进度达到第i健身动作的结束时间的情况下,展示提示信息,提示信息包括提示字符、第一控件和第二控件,提示字符用于展示第i健身动作的跟练得分,并提示用户在第一控件和第二控件中选择是否重练第i健身动作,第一控件为重练第i健身动作,第二控件为不重练第i健身动作;在接收到用户的第二消息时,控制第i健身动作的播放进度回调到第i健身动作的起始时间,第二消息用于表征用户选择第一控件;在接收到用户的第三消息时,判断i是否小于N,N为多个健身动作的总个数,第三消息用于表征用户选择第二控件;在i<N,i加1,继续执行播放第i健身动作。
结合第一方面和上述可能的实现方式,在另一种可能的实现方式中,显示设备包括进度条控件,进度条控件用于设置跳过选项和循环选项,跳过选项用于设置是否跳过子进度条,循环选项用于设置子进度条播放的循环次数。
结合第一方面和上述可能的实现方式,在另一种可能的实现方式中,多个健身动作的动作信息包括健身动作的名称、健身动作的起始时间以及健身动作的结束时间;进度条包括横向进度条或纵向进度条,横向进度条包括多个子横向进度条,子横向进度条包括子横向进度条的名称、子横向进度条的播放进度以及子横向进度条的播放时间;纵向进度条包括多个子纵向进度条,子纵向进度条包括子纵向进度条的名称、子纵向进度条的播放进度以及子纵向进度条的总播放时长。
结合第一方面和上述可能的实现方式,在另一种可能的实现方式中,在接收到用户的第三消息时,判断i是否小于N,包括:在接收到用户的第三消息时,判断第i健身动作的循环选项指示的循环次数是否大于1;在第i健身动作的循环次数大于等于1时,控制第i健身动作的播放进度回调到第i健身动作的起始时间,循环次数减1;在第i健身动作的循环次数小于1时,判断i是否小于N。
结合第一方面和上述可能的实现方式,在另一种可能的实现方式中,播放第i健身动作之后,方法还包括:在第i健身动作的播放状态符合预设条件时,判断i是否小于等于N,预设条件包括第i健身动作的播放进度达到第i健身动作的结束时间或接收到触发第i健身动作跳过的指令;在i<N,i加1;在第i健身动作的跳过选项的标志位为第一数值的情况下,继续执行判断i是否小于等于N,标志位包括第一数值和第二数据,第一数值用于表征跳过第i健身动作,第一数值用于表征不跳过第i健身动作;在第i健身动作的跳过选项的标志位为第二数值的情况下,继续执行播放第i健身动作。
结合第一方面和上述可能的实现方式,在另一种可能的实现方式中,播放媒体资源,包括:轮询媒体资源的播放进度,并刷新媒体资源对应的进度条的界面显示结果。
结合第一方面和上述可能的实现方式,在另一种可能的实现方式中,多个子进度条的界面显示底色不同。
第二方面,本公开提供一种显示设备,显示设备包括获取模块和处理单元,获取单元,用于响应于用户的第一消息,获取媒体资源和媒体资源的打点文件,第一消息用于请求播放媒体资源,媒体资源用于展示多个健身动作,打点文件包括媒体资源对应的多个健身动作的动作信息;处理单元,用于解析打点文件,生成媒体资源对应的健身动作列表,健身动作列表包括多个健身动作的动作信息;处理单元,还用于根据健身动作列表,绘制媒体资源对应的进度条,进度条包括多个子进度条,子进度条与健身动作一一对应;处理单元,还用于基于媒体资源和媒体资源对应的进度条,播放媒体资源。
结合第二方面和上述可能的实现方式,在另一种可能的实现方式中,多个健身动作的动作信息包括健身动作的起始时间和健身动作的结束时间;进度条中的子进度条显示健身动作的起始时间以及健身动作的结束时间,处理单元,还用于设置第一健身动作,第一健身动作为媒体资源展示的第一个健身动作;播放第i健身动作,i的初始值为1;在第i健身动作的播放进度达到第i健身动作的结束时间的情况下,展示提示信息,提示信息包括提示字符、第一控件和第二控件,提示字符用于展示第i健身动作的跟练得分,并提示用户在第一控件和第二控件中选择是否重练第i健身动作,第一控件为重练第i健身动作,第二控件为不重练第i健身动作;在接收到用户的第二消息时,控制第i健身动作的播放进度回调到第i健身动作的起始时间,第二消息用于表征用户选择第一控件;在接收到用户的第三消息时,判断i是否小于N,N为多个健身动作的总个数,第三消息用于表征用户选择第二控件;在i<N,i加1,继续执行播放第i健身动作。
结合第二方面和上述可能的实现方式,在另一种可能的实现方式中,处理单元,还用于在接收到用户的第三消息时,判断第i健身动作的循环选项指示的循环次数是否大于1;在第i健身动作的循环次数大于等于1时,控制第i健身动作的播放进度回调到第i健身动作的起始时间,循环次数减1;在第i健身动作的循环次数小于1时,判断i是否小于N。
结合第二方面和上述可能的实现方式,在另一种可能的实现方式中,处理单元,还用于在第i健身动作的播放状态符合预设条件时,判断i是否小于等于N,预设条件包括第i健身动作的播放进度达到第i健身动作的结束时间或接收到触发第i健身动作跳过的指令;在i<N,i加1;在第i健身动作的跳过选项的标志位为第一数值的情况下,继续执行判断i是否小于等于N,标志位包括第一数值和第二数据,第一数值用于表征跳过第i健身动作,第一数值用于表征不跳过第i健身动作;在第i健身动作的跳过选项的标志位为第二数值的情况下,继续执行播放第i健身动作。
结合第二方面和上述可能的实现方式,在另一种可能的实现方式中,处理单元,还用于轮询媒体资源的播放进度,并刷新媒体资源对应的进度条的界面显示结果。
第三方面,本公开提供一种电子设备,包括:存储器和处理器,存储器用于存储计算机程序;处理器用于在执行计算机程序时,使得电子设备实现如第一方面提供的任一项的视频播放方法。
第四方面,本发明提供一种计算机可读存储介质,包括:计算机可读存储介质上存储计算机程序,计算机程序被处理器执行如第一方面提供的任一项的视频播放方法。
第五方面,本发明提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如第一方面提供的任一项的视频播放方法。
需要说明的是,上述计算机指令可以全部或者部分存储在第一计算机可读存储介质上。其中,第一计算机可读存储介质可以与服务器的处理器封装在一起的,也可以与服务器的处理器单独封装,本公开对此不作限定。
本公开中第二方面到第五方面的描述,可以参考第一方面的详细描述;并且,第二方面到第五方面的描述的有益效果,可以参考第一方面的有益效果分析,此处不再赘述。
在本公开中,上述显示设备的名字对设备或功能模块本身不构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本公开类似,属于本公开权利要求及其等同技术的范围之内。
本公开的这些方面或其他方面在以下的描述中会更加简明易懂。
本公开提供的技术方案与现有技术相比具有如下优点:本申请提供的视频播放方法可以响应于用户的第一消息,获取到媒体资源和媒体资源的打点文件,然后根据打点文件生成健身动作列表,接着根据健身动作列表,绘制进度条,进度条有多个子进度条,每个子进度条与健身动作一一对应。之后可以通过控制子进度条来控制每个健身动作的播放,提高了媒体资源中健身动作播放的灵活性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种可以应用本申请实施例的系统架构的简化示意图;
图2为本申请实施例提供的一种控制装置的结构示意图;
图3为本申请实施例提供的一种显示设备的硬件结构示意图;
图4为本申请实施例提供的一种显示设备的软件结构示意图;
图5为本申请实施例提供的一种视频播放方法的流程示意图之一;
图6为本申请实施例提供的一种场景示意图;
图7为本申请实施例提供的一种横向进度条的显示示意图;
图8为本申请实施例提供的一种纵向进度条的显示示意图;
图9为本申请实施例提供的一种横向进度条的显示效果图;
图10为本申请实施例提供的一种视频播放方法的流程示意图之二;
图11为本申请实施例提供的另一种横向进度条的显示示意图;
图12为本申请实施例提供的一种视频播放方法的流程示意图之三;
图13为本申请实施例提供的一种视频播放方法的流程示意图之四;
图14为本申请实施例提供的一种视频播放方法的流程示意图之五;
图15为本申请实施例提供的一种显示设备的组成示意图;
图16为本申请实施例提供的一种芯片系统的结构示意图。
具体实施方式
为使本申请的目的和实施方式更加清楚,下面将结合本申请示例性实施例中的附图,对本申请示例性实施方式进行清楚、完整地描述,显然,描述的示例性实施例仅是本申请一部分实施例,而不是全部的实施例。
需要说明的是,本申请中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本申请的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
本申请中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换。
本申请中术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
健身对维持个人健康和幸福起着十分重要的作用。对于许多人来说,健身是一种需要前往健身房的活动,在健身房参加由教练(例如,健身教练、私人教练员)指导的锻炼。然而,由于人们日常生活中还有其他任务(例如,工作、家庭义务等),外出去健身房找专门的教练练习,需要付出更多的时间成本和经济成本。
基于此,网络健身应运而生,网络健身是指现实中人的运动,通过信息技术处理直观的表现在电脑或电视中虚拟人物的运动上。即,用户可以在家里,通过电脑或电视上的网络视频平台中的健身视频实现健身。这使得用户不需要外出去健身房,在家就能健身。
通常,一个健身视频中包括多个健身动作,现有的健身视频的播放方式是顺序播放。若用户有其他播放需求,例如,选择跳过健身视频中的某个健身动作,或者循环播放健身视频中的某个健身动作。只能通过控制设备(如:鼠标、键盘或遥控器)手动找到健身动作的结束时间点或起始时间点,再执行相应的控制动作。这将大大降低视频播放的灵活性,从而影响用户的训练热度和训练兴趣。
针对上述问题,本申请实施例提供一种视频播放方法及设备,该方法可以响应于用户的第一消息,获取到媒体资源和媒体资源的打点文件,然后根据打点文件生成健身动作列表,接着根据健身动作列表,绘制进度条,进度条有多个子进度条,每个子进度条与健身动作一一对应。之后可以通过控制子进度条来控制每个健身动作的播放,提高了媒体资源中健身动作播放的灵活性。
下面对本申请实施例提供的视频数据的处理方法进行描述。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请实施例中,执行本申请实施例的对话数据的处理方法的电子设备可以是服务器,还可以是显示设备。图1中示例性示出了根据实施例中显示设备与控制设备之间操作场景的示意图。如图1中示出,用户可通过智能设备300或控制装置100操作显示设备200。
在一些实施例中,控制装置100可以是遥控器,遥控器和显示设备的通信包括红外协议通信或蓝牙协议通信,及其他短距离通信方式,通过无线或有线方式来控制显示设备200。用户可以通过遥控器上按键、语音输入、控制面板输入等输入用户指令,来控制显示设备200。如:用户可以通过遥控器上的音量加减键、频道控制键、上/下/左/右的移动键、语音输入键、菜单键、开关机键等输入相应控制指令,来实现控制显示设备200的功能。在本申请实施例中,用户还可以通过按键选择相应的文本输入给显示设备200。
在一些实施例中,也可以使用智能设备300(如移动终端、平板电脑、计算机、笔记本电脑以及其他智能终端等)以控制显示设备200。例如,使用在智能设备上运行的应用程序控制显示设备200。该应用程序通过配置可以与智能终端关联,在用户界面(UI)中为用户展示各种直观的控制。
在一些实施例中,显示设备200可以不使用上述的智能设备或控制设备接收指令,而是通过触摸、手势或者语音等接收用户的控制。
在一些实施例中,显示设备200还可以采用除了控制装置100和智能设备300之外的方式进行控制,例如,可以通过显示设备200设备内部配置的获取语音指令的模块直接接收用户的语音指令控制,也可以通过显示设备200设备外部设置的语音控制设备来接收用户的语音指令控制。
在一些实施例中,显示设备200还与服务器400通过多种通信方式进行数据通信。可允许显示设备200通过局域网(LAN)、无线局域网(WLAN)和其他网络进行通信连接。服务器400可以向显示设备200提供各种内容和互动。示例的,智能设备200通过发送和接收信息,以及电子节目指南(EPG)互动,接收软件程序更新,或访问远程储存的数字媒体库。服务器400可以是一个集群,也可以是多个集群,可以包括一类或多类服务器。通过服务器400为显示设备200提供视频点播和广告服务等其他网络服务内容。
在一些实施例中,显示设备200,可以为液晶显示器、OLED显示器、投影智能设备。本申请实施例对显示设备200具体的类型、尺寸大小和分辨率等不作限定,本领技术人员可以理解的是,根据实际需要可以对显示设备200的性能和配置做一些改变。显示设备200除了提供广播接收电视功能之外,还可以附加提供计算机支持功能的智能网络电视功能,包括但不限于,网络电视、智能电视、互联网协议电视(IPTV)等。
图2示例性示出了根据示例性实施例中控制装置100的配置框图。如图2所示,控制装置100包括控制器110、通信接口130、用户输入/输出接口140、存储器、供电电源。控制装置100可接收用户的输入操作指令,且将操作指令转换为显示设备200可识别和响应的指令,从而作为用户与显示设备200之间交互中介作用。
示例地,以显示设备200为电视机为例,图3示出了本申请实施例提供的一种显示设备200的结构示意图。
如图3,显示设备200包括调谐解调器210、通信器220、检测器230、外部装置接口240、控制器250、显示器260、音频输出接口270、存储器、供电电源、用户接口280中的至少一种。
在一些实施例中控制器包括处理器,视频处理器,音频处理器,图形处理器,RAM,ROM,用于输入/输出的第一接口至第n接口。
显示器260包括用于呈现画面的显示屏组件,以及驱动图像显示的驱动组件,用于接收源自控制器输出的图像信号,进行显示视频内容、图像内容以及菜单操控界面的组件以及用户操控用户界面(Use Interface,UI)。
显示器260可为液晶显示器、OLED显示器、以及投影显示器,还可以为一种投影装置和投影屏幕。
通信器220是用于根据各种通信协议类型与外部设备或服务器进行通信的组件。例如:通信器可以包括Wifi模块,蓝牙模块,有线以太网模块等其他网络通信协议芯片或近场通信协议芯片,以及红外接收器中的至少一种。显示设备200可以通过通信器220与外部控制设备100或服务器400建立控制信号和数据信号的发送和接收。
用户接口280,可用于接收控制装置100(如:红外遥控器等)的控制信号。
检测器230用于采集外部环境或与外部交互的信号。例如,检测器230包括光接收器,用于采集环境光线强度的传感器;或者,检测器230包括图像采集器,如摄像头,可以用于采集外部环境场景、用户的属性或用户交互手势,再或者,检测器230包括声音采集器,如麦克风等,用于接收外部声音。
外部装置接口240可以包括但不限于如下:高清多媒体接口接口(HDMI)、模拟或数据高清分量输入接口(分量)、复合视频输入接口(CVBS)、USB输入接口(USB)、RGB端口等任一个或多个接口。也可以是上述多个接口形成的复合性的输入/输出接口。
调谐解调器210通过有线或无线接收方式接收广播电视信号,以及从多个无线或有线广播电视信号中解调出音视频信号,如以及EPG数据信号。
在一些实施例中,控制器250和调谐解调器210可以位于不同的分体设备中,即调谐解调器210也可在控制器250所在的主体设备的外置设备中,如外置机顶盒等。
控制器250,通过存储在存储器上中各种软件控制程序,来控制显示设备的工作和响应用户的操作。控制器250控制显示设备200的整体操作。例如:响应于接收到用于选择在显示器260上显示UI对象的用户命令,控制器250便可以执行与由用户命令选择的对象有关的操作。
在一些实施例中控制器包括中央处理器(Central Processing Unit,CPU),视频处理器,音频处理器,图形处理器(Graphics Processing Unit,GPU),RAM Random AccessMemory,RAM),ROM(Read-Only Memory,ROM),用于输入/输出的第一接口至第n接口,通信总线(Bus)等中的至少一种。
用户可在显示器260上显示的图形用户界面(GUI)输入用户命令,则用户输入接口通过图形用户界面(GUI)接收用户输入命令。或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户输入接口通过传感器识别出声音或手势,来接收用户输入命令。
“用户界面”,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面常用的表现形式是图形用户界面(Graphic User Interface,GUI),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在显示设备的显示屏中显示的一个图标、窗口、控件等界面元素,其中控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
可以理解的是,一般而言,显示设备功能的实现除了需要上述硬件的支持外,还需要软件的配合。
图4为本申请提供的显示设备的软件系统示意图,参见图4,在一些实施例中,将系统分为四层,从上至下分别为应用程序(Applications)层(简称″应用层″),应用程序框架(Application Framework)层(简称″框架层″),安卓运行时(Android runtime)和系统库层(简称″系统运行库层″),以及内核层。
在一些实施例中,应用程序层中运行有至少一个应用程序,这些应用程序可以是操作系统自带的窗口(Window)程序、系统设置程序或时钟程序等;也可以是第三方开发者所开发的应用程序。在具体实施时,应用程序层中的应用程序包括但不限于以上举例。示例性,应用程序层包括健身应用程序,健身应用程序可以通过健身视频播放和健身计划的编排来实现智能交互,从而帮助用户养成健身习惯。显示设备可以响应用于用户启动健身应用程序的操作,开启健身应用程序。开启健身应用程序的操作可以为触控操作,也可以为语音操作,还可以为遥控器的控制指令。
框架层为应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。应用程序框架层相当于一个处理中心,这个中心决定让应用层中的应用程序做出动作。应用程序通过API接口,可在执行中访问系统中的资源和取得系统的服务。示例性的,应用程序框架层包括的系统服务(即Service),系统服务可以用于接收健身应用程序发送的健身视频的播放指令,在接收到健身视频的播放指令后调动显示驱动使健身视频的视频画面通过显示器显示,调动音频驱动使健身视频的声音数据通过扬声器播放。即Service可以负责控制健身应用程序使用的整个流程。
系统服务获取到健身视频后,将健身视频的视频画面发送给显示器对应的显示驱动,显示驱动获取到健身视频的视频画面后,调动显示器,播放健身视频的视频画面。同时将健身视频的声音数据发送给扬声器对应的音频驱动,音频驱动获取到健身视频的声音数据后,调动扬声器,播放健身视频的声音数据。
在一些实施例中,系统运行库层为上层即框架层提供支撑,当框架层被使用时,安卓操作系统会运行系统运行库层中包含的C/C++库以实现框架层要实现的功能。
在一些实施例中,内核层是硬件和软件之间的层。内核层至少包含以下驱动中的至少一种:蓝牙驱动、摄像头驱动、WIFI驱动、USB驱动、HDMI驱动、传感器驱动(如指纹传感器,温度传感器,压力传感器等)、MIC驱动、电源驱动、显示器对应的显示驱动以及扬声器对应的音频驱动等。其中,显示器对应的显示驱动可以调用显示器的接口,以获取健身视频的视频画面,或者调用显示器的接口对显示器进行设置。扬声器对应的音频驱动可以调用扬声器的接口,以获取播放健身视频的声音数据,或者调用扬声器的接口对扬声器进行设置。
显示器,可以用于对用户的语音进行采样,获取采样数据。声音采集器,还可以用于将采样数据通过声音采集器对应的显示驱动发送给对话服务。声音采集器,还可以用于根据声音采集器对应的显示驱动的指令设置声音采集器的灵敏度。
扬声器,可以用于播放服务生成的回复语音。扬声器,还可以用于通过扬声器对应的音频驱动接收来自对话服务发送的回复语音。
以下实施例中的方法均可以在具有上述硬件结构或软件结构的显示设备中实现。以下实施例中以上述显示设备200是电视机为例,对本申请实施例的方法进行说明。
本申请实施例提供一种视频播放方法,如图5所示,该视频播放方法可以包括S11-S15。
S11、响应于用户的第一消息,获取媒体资源和媒体资源的打点文件。
其中,第一消息用于请求播放媒体资源,媒体资源用于展示多个健身动作,例如,媒体资源为健身视频。打点文件包括多个健身动作的动作信息。
本申请实施例可以应用在如图6所示的场景下,参见图6中的(a),电视机中我的应用的界面601中包括健身应用的图标602,电视机的健身应用可以接收用户对健身应用的图标602的控制信号,响应于该控制信号,显示如图6中的(b)所示的界面603。在界面603中,可以包括健身视频1的显示窗口604。界面603中还可以包括其他健身视频的显示窗口,例如可以包括健身视频2的显示窗口、健身视频3的显示窗口以及健身视频4的显示窗口。健身应用接收到用户对健身视频1的显示窗口604的第一消息后,响应于第一消息,如图6所示,电视机可以显示界面605,界面605用于显示放大后的视频1。
电视机的健身应用响应于用户的第一消息,获取媒体资源和媒体资源的打点文件的过程为:
(1)电视机的健身应用接收到用户对健身视频1的显示窗口604的第一消息,向云服务器发送资源请求消息。
资源请求消息用于请求获取健身视频1的显示窗口604对应的健身视频1。资源请求消息包括健身视频1的属性信息,云服务器为存储健身应用中的媒体资源的服务器。
(2)云服务器接收到资源请求消息后,根据接收到资源请求消息中的健身视频1的属性信息,遍历存储单元查找健身视频1的数据包,并向电视机的健身应用发送健身视频1的数据包。
(3)电视机的健身应用接收到健身视频1的数据包,解析健身视频1的数据包,得到健身视频1和健身视频1的打点文件的地址。
(4)电视机的健身应用根据健身视频1的打点文件的地址下载健身视频1的打点文件。
健身视频1的打点文件包括健身视频1的名称、健身视频1的编码、健身视频1的每秒传输帧数(Frames Per Second,FPS)、健身视频1的总帧数以及健身视频1中的健身动作数据等。健身视频1中的健身动作数据包括多个健身动作的动作信息。健身动作的动作信息包括该健身动作在健身视频1中的排序、健身动作的起始时间、健身动作的结束时间、健身动作的名称、健身动作在动作集中的id以及健身动作的重复次数。动作集可以是健身应用根据已有的健身动作创建的动作集合,该动作集至少包括多个健身动作,以及每个健身动作的编号。
示例性的,健身视频1对应的打点文件的部分代码如下所示:
S12、解析打点文件,生成媒体资源对应的健身动作列表。
其中,健身动作列表包括多个健身动作的动作信息。
电视机的健身应用从打点文件的地址获取到打点文件后,解析打点文件。结合S11可知,打点文件中包括媒体资源的基本信息以及媒体资源中的多个健身动作的动作信息。根据打点文件中媒体资源的基本信息以及媒体资源中的多个健身动作的动作信息,生成健身动作列表。媒体资源的基本信息包括媒体资源的名称、媒体资源的编码、媒体资源的每秒传输帧数(Frames Per Second,FPS)以及媒体资源的总帧数等。
健身动作列表可以包括媒体资源的名称、媒体资源的编码、媒体资源的FPS、媒体资源的总帧数以及媒体资源中的健身动作数据。健身动作数据包括多个健身动作的动作信息。健身动作的动作信息包括该健身动作在媒体资源中的排序、健身动作的起始时间、健身动作的结束时间、健身动作的名称、健身动作在动作集中的id以及健身动作的重复时长。
示例性的,生成的健身动作列表如表1所示。
表1
表1公开了媒体资源名称为“蹲拉功能提升”的健身视频1,健身视频1的视频编码为“05AIJQA1002S”。健身视频1的总时长为24300s。健身视频1包括N+1个健身动作,N+1个健身动作的序号从0开始。该健身动作列表中详细描述了N+1个健身动作中每个健身动作的名称、健身动作的起始时间、健身动作的结束时间以及健身动作的重复次数。在N+1个健身动作中,前一个健身动作的结束时间与后一个健身动作的起始时间可以连续也可以不连续,若前一个健身动作的结束时间与后一个健身动作的起始时间不连续,则不连续对应的相差的时间可以是休息时间。例如,第一个健身动作(即序号为0的健身动作)的动作名称为“直立划船”,动作起始时间为240s,动作的结束时间为280s,动作的重复次数是20次。第二个健身动作(即序号为1的健身动作)的动作名称为“交替宫廷式弓步”,动作起始时间为300s,动作的结束时间为340s,动作的重复次数是10次。
S13、根据健身动作列表,绘制媒体资源对应的进度条。
其中,进度条包括多个子进度条,子进度条与健身动作一一对应。子进度条用于表征健身动作的动作信息,子进度条至少包括健身动作的名称、健身动作的播放进度以及健身动作的时长。
结合S12可知,健身动作列表包括媒体资源对应的多个健身动作的详细数据,可以根据健身动作列表,绘制媒体资源对应的进度条。
具体的,电视机的健身应用生成健身动作列表后,向进度条控件发送绘制消息,绘制消息用于请求进度条控件绘制媒体资源的进度条,绘制消息中包括健身动作列表。进度条控件接收到绘制消息后,先初始化进度条。接着根据健身动作列表中多个健身动作在媒体资源中的排序,确定出媒体资源对应的健身动作的总个数。然后按照健身动作的总个数,均匀绘制进度条,得到多个等长的子进度条。
或者,得到媒体资源对应的健身动作的总个数之后,进度条控件根据每个健身动作的起始时间和每个健身动作的结束时间,确定出每个健身动作的时长。然后根据健身动作列表中媒体资源的总时长、健身动作的总个数、每个健身动作的时长,绘制进度条,得到多个子进度条。得到的多个子进度条的长度可以相同也可以不同。在得到多个子进度条之后,可以根据用户指令,自由选择播放某个健身动作,例如,选择播放第一个健身动作、最后一个健身动作等等,操作起来更加便捷。
最后根据健身动作列表中健身动作的名称,为每个子进度条添加对应的名称。或者根据健身动作在媒体资源中的排序,将排序结果作为每个子进度条的名称显示。示例性的,媒体资源为健身视频,该健身视频包括五个健身动作,通过绘制进度条,得到五个子进度条,每个子进度条对应一个健身动作。每个子进度条用于展示对应的健身动作的动作信息。
在得到五个子进度条后,按照每个健身动作的播放顺序,为每个子进度条赋予名称,例如,第一节、第二节、第三节、第四节以及第五节。通常,在健身开始之前,大多是先进行一段时间的热身动作。在健身结束后,还需要进行一段时间的放松动作。所以,还可以根据健身视频中每个健身动作的功能和顺序为每个子进度条赋予名称,例如,热身、第一节、第二节、第三节以及放松。或者按照每个健身动作的名字为每个子进度条赋予名称,例如,手腕打圈、小步快跑、高抬腿、开合跳、腿部拉伸。
在媒体资源播放的过程中,电视机中的进度条控件可以每隔固定时长轮询媒体播放器的播放进度,并根据播放结果,刷新进度条的界面显示结果。具体的,根据媒体资源中每个健身动作的播放时间,刷新显示健身动作对应的子进度条的播放进度。固定时长为100ms,每个子进度条的播放进度范围为[0~100%]。
例如,媒体播放器当前正在播放媒体资源的第一个健身动作,电视机中的进度条控件轮询媒体播放器的播放进度,确定当前第一个健身动作的播放进度为70%时,进度条控件设置第一个健身动作对应的第一个子进度条的界面显示播放进度为70%。
在一些实施例中,得到多个子进度条之后,还可以对每个子进度条的界面显示配置不同的底色,以使得每个子进度条之间有清晰的分割线,从而更清楚的区分出多个健身动作。
在一些实施例中,媒体资源的进度条可以有多种形式,例如,横向进度条和纵向进度条。图7示出了一种横向进度条的显示示意图。如图7中的(a)示出了一个横向进度条。横向进度条对应的健身视频的总时长为5:00,当前正在播放健身视频对应的第一健身动作。根据图7中的(a)中的子进度条上的标注可知,第一健身动作的播放进度是70%,第一子进度条的播放时间是0:42。第一子进度条的播放进度的底色为绿色。该横向进度条包括五个子进度条,第一个子进度条的底色是灰色,第一子进度条对应的健身动作的名称是热身。第二个子进度条的底色是蓝色,第二子进度条对应的健身动作的名称是第一节。第三个子进度条的底色是紫色,第三子进度条对应的健身动作的名称是第二节。第四个子进度条的底色是红色,第四子进度条对应的健身动作的名称是第三节。第五个子进度条的底色是黄色,第五子进度条对应的健身动作的名称是放松。其中,五个子进度条沿着水平方向依次排布。
另外,健身视频的播放进度值可以标注在子进度条的内部中间位置处、子进度条的内部最左侧、子进度条的内部最右侧、子进度条的上面中间位置处或子进度条的下面中间位置处等等,本申请对健身视频的播放进度值的标注位置不作限定。
如图7中的(b)示出了横向进度条在健身视频中的显示效果。具体的,横向进度条显示在健身视频的底部,健身视频的播放进度值标注在第一个子进度条的内部中间位置处。可选的,横向进度条还可以显示在健身视频的顶部。本申请对横向进度条的显示位置不作限定,符合用户的观看习惯即可。
图8示出了一种纵向进度条的显示示意图。如图8中的(a)示出了一个纵向进度条。根据图8中的(a)可知,当前正在播放健身视频的第一健身动作,且第一健身动作未播完。第一子进度条的播放进度的底色为绿色。该横向进度条包括五个子进度条,第一个子进度条的底色是灰色,第一子进度条对应的健身动作的名称是热身,根据图8中的(a)所示的标注可知,第一子进度条对应的健身动作的时长是60s。第二个子进度条的底色是蓝色,第二子进度条对应的健身动作的名称是第一节,根据图8中的(a)所示的标注可知,第二子进度条对应的健身动作的时长是60s。第三个子进度条的底色是紫色,第三子进度条对应的健身动作的名称是第二节,根据图8中的(a)中的子进度条上的标注可知,第三子进度条对应的健身动作的时长是70s。第四个子进度条的底色是红色,第四子进度条对应的健身动作的名称是第三节,根据图8中的(a)中的子进度条上的标注可知,第四子进度条对应的健身动作的时长是60s。第五个子进度条的底色是黄色,第五子进度条对应的健身动作的名称是放松,根据图8中的(a)中的子进度条上的标注可知,第五子进度条对应的健身动作的时长是60s。其中,五个子进度条沿着垂直方向依次排布。
如图8中的(b)示出了纵向进度条在健身视频中的显示效果。具体的,纵向进度条显示在健身视频的右下角区域。可选的,纵向进度条还可以显示在健身视频的右上角区域、左下角区域或左上角区域中的任一个位置。本申请对纵向进度条的显示位置不作显示,符合用户的观看习惯即可。
另外,健身视频的每个子进度条的总时长可以标注在子进度条的内部中间位置处、子进度条的内部最左侧、子进度条的内部最右侧、子进度条的上面中间位置处或子进度条的下面中间位置处等等,本申请对健身视频的每个子进度条的总时长的标注位置不作限定。
在一些实施例中,媒体资源的进度条还可以显示媒体资源的当前播放时间、媒体资源的播放总时长、当前健身动作在所有健身动作中的排序、媒体资源对应的健身动作的总个数以及当前健身动作的名称等。这种显示方式,可以清晰的告知用户媒体资源的播放进度,也能帮助用户更好的坚持运动。
如图9所示,该媒体资源的进度条显示0:42/5:00以及01/5高抬腿击掌横跨步,参见图9中的子进度条上的标识可知,当前媒体资源的播放进度为:第一健身动作的70%。相当于告知用户该媒体资源的总时长为5:00分钟,当前已播放到0:42分钟,现在跟练的健身动作为第一健身动作,共有5个健身动作,第一健身动作的名称高抬腿击掌横跨步,第一健身动作的播放进度为70%。
S14、基于媒体资源和媒体资源对应的进度条,播放媒体资源。
在绘制好媒体资源对应的进度条之后,电视机中的健身应用可以控制媒体播放器,在显示器上播放媒体资源。
在一些实施例中,在接收到用户通过控制装置控制播放媒体资源的控制指令后,若用户选择播放的媒体资源不是本地资源,则需要从云服务器获取媒体资源。那么健身应用需要控制媒体播放器进行初始化,并向媒体播放器发送媒体资源的地址。媒体播放器接收到媒体资源的地址后使用prepareAsync方法,异步加载媒体资源。prepareAsync方法具体是先设置监听事件setOnPreparedListener(),在监听到已获取媒体资源后,告知媒体播放器,最后健身应用控制媒体播放器播放媒体资源,同时进度条控件控制进度条显示媒体资源的播放进度。
在一些实施例中,如图10所示,S14播放媒体资源,包括:
S141、设置第一健身动作。
其中,第一健身动作为媒体资源展示的第一个健身动作。
在进度条控件基于健身动作列表设置好媒体资源对应进度条之后,健身应用初始化媒体播放器和进度条控件,接着媒体播放器根据媒体资源的地址下载并播放媒体资源。在媒体播放器和进度条控件初始化完成,并开始播放媒体资源时,进度条控件设置第一健身动作。设置第一健身动作可以是进度条控件根据健身动作列表,将健身动作列表中排序为0对应的健身动作设置为第一健身动作。
S142、播放第i健身动作,i的初始值为1。
S143、在第i健身动作的播放进度达到第i健身动作的结束时间的情况下,显示器展示提示信息。
其中,提示信息包括提示字符、第一控件和第二控件,提示字符用于展示第i健身动作的跟练得分,并提示用户在第一控件和第二控件中选择是否重练第i健身动作,第一控件为重练第i健身动作,第二控件为不重练第i健身动作。
检测到媒体资源开始播放,进度条控件使用异步线程,间隔固定预设时长轮询媒体播放器,以得到健身动作的播放进度,并刷新进度条的界面显示结果。在进度条控件检测到第i健身动作播放结束时,向显示器发送显示消息,该显示消息用于请求显示器显示预设的提示信息。显示器接收到该显示消息后,在显示器上显示提示信息,该提示信息用于提示用户是否重练第i健身动作。
S144、在接收到用户的第二消息时,控制第i健身动作的播放进度回调到第i健身动作的起始时间。其中,第二消息用于表征用户选择第一控件。
由于第二消息用于表征用户选择第一控件,第一控件为重练第i健身动作。在接收到用户的第二消息后,健身应用确定用户需要重练第i健身动作。然后健身应用向媒体播放器发送快退消息,快退消息用于请求媒体播放器将第i健身动作的播放进度回调到第i健身动作的起始时间。在媒体播放器接收到快退消息后,媒体播放器根据快退消息,控制第i健身动作的播放进度回调到第i健身动作的起始时间。
S145、在接收到用户的第三消息时,判断i是否小于N,N为多个健身动作的总个数,第三消息用于表征用户选择第二控件。
由于第三消息用于表征用户选择第二控件,第二控件为不重练第i健身动作,在接收到用户的第三消息时,健身应用判断i是否小于等于N,即判断当前健身动作是否为媒体资源的最后一个健身动作,若不是最后一个健身动作,则继续播放下一个健身动作。若是最后一个健身动作则播放结束。
S146、在i<N,i加1,继续执行播放第i健身动作。
健身应用接收到用户的第三消息后,确定用户需要不重练第i健身动作。然后判断i是否小于等于N,在i<N,i加1。此时媒体播放器正常播放第i健身动作的下一个动作。
示例性的,在媒体播放器播放完第i健身动作之后,显示器显示“当前健身动作已完成,本轮跟练得分为90分,请您确认是否重练”的提示字符以及第一选项控件(即第一控件)“是”和第二选项控件(即第二控件)“否”。在用户点击提示信息中的“是”选项时,媒体播放器将当前子进度条回调到当前健身动作的起始时间,健身应用同步清空当前健身动作的得分数据。在用户点击提示信息中的“否”选项时,健身应用判断当前健身动作是否为媒体资源的最后一个健身动作,若不是最后一个健身动作,媒体播放器继续播放下一个健身动作,同时保留当前健身动作的得分数据。若是最后一个健身动作,则播放结束。
或者,提示信息仅包括提示字符。例如,在媒体播放器播放完第i健身动作之后,显示器显示“当前健身动作已完成,本轮跟练得分为90分,如需跟练,请按菜单键”的提示字符。在健身应用检测到用户按了菜单键之后,媒体播放器执行快退命令,媒体资源的播放进度回调到当前健身动作的起始时间,健身应用同步清空当前健身动作的得分数据。在预设时长内若没有检测到用户按菜单键,健身应用判断当前健身动作是否为媒体资源的最后一个健身动作,若不是最后一个健身动作,媒体播放器继续播放下一个健身动作,同时保留当前健身动作的得分数据。当到达下一个健身动作的起始时间时,不再继续显示提示字符。若是最后一个健身动作,则播放结束。
在一些实施例中,显示设备包括进度条控件,进度条控件包括跳过选项和循环选项,跳过选项用于设置是否跳过子进度条,循环选项用于设置子进度条播放的循环次数。
本申请实施例按照健身动作的动作信息绘制了进度条,这样可以支持用户更灵活的播放每个健身动作。同时,本申请实施例还公开了的跳过选项和循环选项,进度条中的每个子进度条都可以设置跳过选择和循环选项。在媒体资源开始播放时,用户可以根据每个子进度条的名称、每个子进度条对应的健身动作的起始时间以及健身动作的结束时间,设置跳过选项和循环选项。
跳过选项可以通过目标字符表征,例如,目标字符包括“√”字符和“×”字符。“√”字符说明当前子进度条对应的健身动作跳过。“×”字符说明当前子进度条对应的健身动作不跳过。循环选项可以通过具体的数字表征循环次数,例如,循环选项设置的数字是2,说明当前子进度条对应的健身动作需要重复播放2次。本申请对跳过选项和循环选项具体的表征方式不作限定,符合用户的使用习惯即可。
若用户对媒体资源的播放内容很了解,那么用户可以在媒体资源开始播放时,设置跳过选项和循环选项。若用户对该媒体资源的播放内容不是特别了解,也可以在媒体资源播放的过程中设置跳过选项和循环选项。
若在媒体资源播放的过程中,用户设置了跳过选项,则进度条控件查询下一个健身动作是否被设置了跳过选项,若下一个健身动作被设置了跳过选项,则继续判断下下一个健身动作是否被设置了跳过选项,直到判断到最后一个健身动作为止。若下一个健身动作没有被设置跳过选项,则继续播放下一个健身动作。
若在媒体资源播放的过程中,用户设置了循环选项中的循环次数,则在当前健身动作播放进度达到当前健身动作的结束时间时,进度条控件查询当前健身动作的循环次数是否大于等于1,若大于等于1,则继续播放当前健身动作。若小于1,则继续播放下一个健身动作。在播放下一个健身动作之前,还需要判断下一个动作是否设置了跳过选项,根据设置内容进行处理。
可选的,每个子进度条还可以设置倍速选项、清晰度选项、暂停选项、播放选项、弹幕选项等等。本领域普通技术人员可知,随着技术的发展和新场景的出现,每个子进度条还可以设置其他选项,本申请对此不作限制。
示例性的,如图11所示,提供另一种横向进度条的显示示意图,该横向进度条的显示示意图中,子进度条上还设置了跳过选项(即图11中的跳过)和循环选项(即图11中的循环次数)。当跳过选项对应的显示区域展示“√”字符时,说明用户选择跳过第三子进度条对应的健身动作,当跳过选项对应的显示区域展示“×”字符时,说明用户选择不跳过第三子进度条对应的健身动作。循环选项对应的显示区域展示循环次数,该循环次数说明第三个子进度条对应的健身动作的播放次数。例如,图11显示用户选中第三个子进度条,第三个子进度条上包括跳过选项和循环选项。第三个子进度条展示跳过选项为“×”字符,循环选项为2,说明用户选择不跳过第三个子进度条对应的健身动作,并且第三个子进度条对应的健身动作需要重复播放2次。
在一些实施例中,如图12所示,S145在接收到用户的第三消息时,判断i是否小于等于N,包括:
S1451、在接收到用户的第三消息时,判断第i健身动作的循环选项指示的循环次数是否大于1。
结合图11可知,每个子进度条还可以设置循环选项,当第i健身动作的播放进度达到第i健身动作的结束时间,且健身应用接收到用户的第三消息(即用户选择不重练第i健身动作)时,此时还需要继续判断第i健身动作的剩余循环次数是否大于等于1。具体是,健身应用接收到用户的第三消息后,健身应用向进度条控件发送给处理消息,该处理消息用于请求进度条控件判断第i健身动作的循环选项指示的循环次数是否大于1。进度条控件接收到处理消息后,判断第i健身动作的循环选项指示的循环次数是否大于1,从而确定是继续播放第i健身动作,还是播放第i健身动作的下一个健身动作。
S1452、在第i健身动作的循环次数大于等于1时,控制第i健身动作的播放进度回调到第i健身动作的起始时间。
在第i健身动作的循环次数大于等于1时,说明第i健身动作还需要继续重复播放第i健身动作。此时媒体播放器将进度条从第i健身动作的结束时间回调到第i健身动作的起始时间,并向健身应用发送回调结果。健身应用接收到回调结果后,调用seek to(time_start)函数控制媒体播放器将第i健身动作的播放进度调整到第i健身动作的起始时间。
S1453、在第i健身动作的循环次数小于1时,判断i是否小于N。
在第i健身动作的循环次数小于1时,说明用户设置的循环次数已循环结束,此时还需要判断i是否小于等于N。若i小于N,说明媒体资源中的健身动作还没有播放结束,继续播放第i健身动作的下一个健身动作(即第i+1健身动作)。若i等于N,说明第i健身动作为媒体资源中的最后一个健身动作,则媒体资源播放结束。
在一些实施例中,如图13所示,S142播放第i健身动作之后,方法还包括:
S16、在第i健身动作的播放状态符合预设条件时,判断i是否小于等于N。
预设条件包括第i健身动作的播放进度达到第i健身动作的结束时间或接收到触发第i健身动作跳过的指令。
在第i健身动作的播放进度达到第i健身动作的结束时间时,进度条控件判断i是否小于等于N,即进度条控件判断当前健身动作是否为媒体资源的最后一个健身动作,若不是最后一个健身动作,则继续播放下一个健身动作。若是最后一个健身动作则播放结束。
S17、在i<N,i加1。
进度条控件判断i是否小于等于N,在i<N,i加1。
S18、在第i健身动作的跳过选项的标志位为第一数值的情况下,继续执行判断i是否小于等于N。
标志位包括第一数值和第二数据,第一数值用于表征跳过第i健身动作,第一数值用于表征不跳过第i健身动作。
在i加1之后,查询第i健身动作的跳过选项的标志位,从而确定出下一个健身动作是否设置了跳过。即,在i<N之后,查询第i健身动作的下个健身动作是否设置了跳过,若跳过选项的标志位为第一数值,说明第i健身动作的下个健身动作也设置了跳过选项,接着检测媒体播放器是否执行了跳过动作,在媒体播放器执行了跳过动作的情况下,继续判断i+1是否小于N,即判断第i健身动作的下下个健身动作是否设置了跳过。
进度条控件查询第i健身动作的跳过选项的标志位,在第i健身动作的跳过选项的标志位为第一数值时,进度条控件判断i是否小于等于N。
S19、在第i健身动作的跳过选项的标志位为第二数值的情况下,继续执行播放第i健身动作。
在i<N之后,查询第i健身动作的下个健身动作是否设置了跳过,若跳过选项的标志位为第二数值,说明第i健身动作的下个健身动作没有设置跳过选项,则继续播放第i健身动作的下个健身动作。进度条控件查询第i健身动作的跳过选项的标志位,在第i健身动作的跳过选项的标志位为第二数值时,媒体播放器按照正常的播放速度播放第i健身动作的下一个健身动作。
在S1453、在第i健身动作的循环次数小于1时,判断i是否小于N之后,可以继续执行S17、S18和S19,即在播放下一个健身动作时,还需要判断下一个动作是否设置了跳过选项,然后按照设置的跳过选项进行处理。跳过选项的处理方式可以参见S18和S19的内容,对此不再赘述。
示例性的,图10、图12以及图13所示的视频播放方法对应的部分代码如下所示:
在一个实施例中,如图14所示,媒体播放器开始播放媒体资源,首先进度条控件获取第一健身动作,第一健身动作为媒体资源中的第一个健身动作,接着执行以下循环过程。
循环过程为:每隔固定时长进度条控件在媒体播放器中查询一次媒体资源的播放进度,并将查询结果显示在进度条的界面上。当健身动作的播放进度达到健身动作的结束时间时,显示提示字符“本轮得分XX,可按菜单键重练”。当健身动作的播放进度没有达到健身动作的结束时间时,进度条控件继续每隔固定时长在媒体播放器中查询一次媒体资源的播放进度。
然后判断是否重练,若重练,则将媒体资源快退到健身动作的起始时间,若不重练,判断媒体资源的进度是否达到下一个健身动作的开始时间,若没有达到下一个健身动作的开始时间,则查询媒体资源的播放进度。若达到下一个健身动作的开始时间,判断第一健身动作的剩余循环播放次数是否大于等于1。若第一个健身动作剩余的循环播放次数大于等于1,则将媒体资源快退到健身动作的起始时间。如此往复,直到最后一个健身动作播放结束为止。
若健身动作剩余的循环播放次数小于1,则查询健身动作的下一个健身动作是否设置跳过。若设置跳过,则判断媒体播放器是否控制跳过。若媒体播放器没有执行跳过,则查询媒体资源的播放进度。若媒体播放器执行跳过,则快进到下下一个健身动作的起始时间。若下一个健身动作未跳过,则查询媒体资源的播放进度。在下下一个健身动作的播放过程中,继续执行上述循环过程。如此往复,直到最后一个健身动作播放结束为止。若没有设置下一个健身动作跳过,播放下一个健身动作,并继续执行上述循环过程。如此往复,直到最后一个健身动作播放结束为止。
上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对电子设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
对应于前述实施例中的方法,本申请实施例还提供一种服务器。该服务器用于实现前述实施例中的方法。该服务器的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块。
例如,图15示出了一种显示设备的结构示意图,如图15所示,该显示设备可以包括:获取模块1101和处理模块1102等。
其中,获取模块,用于响应于用户的第一消息,获取媒体资源和媒体资源的打点文件,第一消息用于请求播放媒体资源,媒体资源用于展示多个健身动作,打点文件包括媒体资源对应的多个健身动作的动作信息;
处理模块,用于解析打点文件,生成媒体资源对应的健身动作列表,健身动作列表包括多个健身动作的动作信息;
处理模块,还用于根据健身动作列表,绘制媒体资源对应的进度条,进度条包括多个子进度条,子进度条与健身动作一一对应;
处理模块,还用于基于媒体资源和媒体资源对应的进度条,播放媒体资源。
在一些可实施的示例中,处理模块,还用于设置第一健身动作,第一健身动作为媒体资源展示的第一个健身动作;播放第i健身动作,i的初始值为1;在第i健身动作的播放进度达到第i健身动作的结束时间的情况下,展示提示信息,提示信息包括提示字符、第一控件和第二控件,提示字符用于展示第i健身动作的跟练得分,并提示用户在第一控件和第二控件中选择是否重练第i健身动作,第一控件为重练第i健身动作,第二控件为不重练第i健身动作;在接收到用户的第二消息时,控制第i健身动作的播放进度回调到第i健身动作的起始时间,第二消息用于表征用户选择第一控件;在接收到用户的第三消息时,判断i是否小于N,N为多个健身动作的总个数,第三消息用于表征用户选择第二控件;在i<N,i加1,继续执行播放第i健身动作。
在一些可实施的示例中,处理模块,还用于在接收到用户的第三消息时,判断第i健身动作的循环选项指示的循环次数是否大于1;在第i健身动作的循环次数大于等于1时,控制第i健身动作的播放进度回调到第i健身动作的起始时间,循环次数减1;在第i健身动作的循环次数小于1时,判断i是否小于N。
在一些可实施的示例中,处理模块,还用于在第i健身动作的播放状态符合预设条件时,判断i是否小于等于N,预设条件包括第i健身动作的播放进度达到第i健身动作的结束时间或接收到触发第i健身动作跳过的指令;在i<N,i加1;在第i健身动作的跳过选项的标志位为第一数值的情况下,继续执行判断i是否小于等于N,标志位包括第一数值和第二数据,第一数值用于表征跳过第i健身动作,第一数值用于表征不跳过第i健身动作;在第i健身动作的跳过选项的标志位为第二数值的情况下,继续执行播放第i健身动作。
在一些可实施的示例中,处理模块,还用于轮询媒体资源的播放进度,并刷新显示媒体资源对应的进度条的界面显示结果。
应理解以上装置中单元或模块(以下均称为单元)的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且装置中的单元可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分单元以软件通过处理元件调用的形式实现,部分单元以硬件的形式实现。
例如,各个单元可以为单独设立的处理元件,也可以集成在装置的某一个芯片中实现,此外,也可以以程序的形式存储于存储器中,由装置的某一个处理元件调用并执行该单元的功能。此外这些单元全部或部分可以集成在一起,也可以独立实现。这里的处理元件又可以称为处理器,可以是一种具有信号的处理能力的集成电路。在实现过程中,上述方法的各步骤或以上各个单元可以通过处理器元件中的硬件的集成逻辑电路实现或者以软件通过处理元件调用的形式实现。
在一个例子中,以上装置中的单元可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个ASIC,或,一个或多个DSP,或,一个或者多个FPGA,或这些集成电路形式中至少两种的组合。
再如,当装置中的单元可以通过处理元件调度程序的形式实现时,该处理元件可以是通用处理器,例如CPU或其它可以调用程序的处理器。再如,这些单元可以集成在一起,以片上系统SOC的形式实现。
在一种实现中,以上装置实现以上方法中各个对应步骤的单元可以通过处理元件调度程序的形式实现。例如,该装置可以包括处理元件和存储元件,处理元件调用存储元件存储的程序,以执行以上方法实施例的方法。存储元件可以为与处理元件处于同一芯片上的存储元件,即片内存储元件。
在另一种实现中,用于执行以上方法的程序可以在与处理元件处于不同芯片上的存储元件,即片外存储元件。此时,处理元件从片外存储元件调用或加载程序于片内存储元件上,以调用并执行以上方法实施例的方法。
例如,本申请实施例还可以提供一种装置,如:数据处理设备,可以包括:处理器,用于存储该处理器可执行指令的存储器。该处理器被配置为执行上述指令时,使得该数据处理设备实现如前述实施例的视频播放方法。该存储器可以位于该数据处理设备之内,也可以位于该数据处理设备之外。且该处理器包括一个或多个。
在又一种实现中,该装置实现以上方法中各个步骤的单元可以是被配置成一个或多个处理元件,这些处理元件可以设置于对应上述的显示设备上,这里的处理元件可以为集成电路,例如:一个或多个ASIC,或,一个或多个DSP,或,一个或者多个FPGA,或者这些类集成电路的组合。这些集成电路可以集成在一起,构成芯片。
本申请另一实施例提供一种芯片系统,如图16所示,该芯片系统包括至少一个处理器1601和至少一个接口电路1602。处理器1601和接口电路1602可通过线路互联。例如,接口电路1602可用于从其它装置接收信号。又例如,接口电路1602可用于向其它装置(例如处理器1601)发送信号。
例如,接口电路1602可读取设备中存储器中存储的指令,并将该指令发送给处理器1601。当指令被处理器1601执行时,可使得电子设备执行上述实施例中的各个步骤。当然,该芯片系统还可以包含其他分立器件,本申请实施例对此不作具体限定。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序指令。当计算机程序指令被显示设备执行时,使得显示设备可以实现如上述的应用程序无响应处理方法。
本申请实施例还提供一种计算机程序产品,包括如上述数据处理设备运行的计算机指令,当计算机指令在数据处理设备中运行时,使得数据处理设备实可以现如上述的视频播放方法。通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,如:程序。该软件产品存储在一个程序产品,如计算机可读存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
例如,本申请实施例还可以提供一种计算机可读存储介质,其上存储有计算机程序指令。当计算机程序指令被显示设备执行时,使得显示设备实现如前述方法实施例中的视频播放方法。
以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种视频播放方法,其特征在于,应用于显示设备,包括:
响应于用户的第一消息,获取媒体资源和所述媒体资源的打点文件,所述第一消息用于请求播放所述媒体资源,所述媒体资源用于展示多个健身动作,所述打点文件包括所述媒体资源对应的多个健身动作的动作信息;
解析所述打点文件,生成所述媒体资源对应的健身动作列表,所述健身动作列表包括所述多个健身动作的动作信息;
根据所述健身动作列表,绘制所述媒体资源对应的进度条,所述进度条包括多个子进度条,所述子进度条与所述健身动作一一对应;
基于所述媒体资源和所述媒体资源对应的进度条,播放所述媒体资源。
2.根据权利要求1所述的视频播放方法,其特征在于,所述多个健身动作的动作信息包括健身动作的起始时间和健身动作的结束时间;所述进度条中的子进度条显示所述健身动作的起始时间以及所述健身动作的结束时间,所述播放所述媒体资源,包括:
设置第一健身动作,所述第一健身动作为所述媒体资源展示的第一个健身动作;
播放第i健身动作,i的初始值为1;
在所述第i健身动作的播放进度达到所述第i健身动作的结束时间的情况下,展示提示信息,所述提示信息包括提示字符、第一控件和第二控件,所述提示字符用于展示所述第i健身动作的跟练得分,并提示用户在所述第一控件和所述第二控件中选择是否重练所述第i健身动作,所述第一控件为重练所述第i健身动作,所述第二控件为不重练所述第i健身动作;
在接收到用户的第二消息时,控制所述第i健身动作的播放进度回调到所述第i健身动作的起始时间,所述第二消息用于表征用户选择所述第一控件;
在接收到用户的第三消息时,判断i是否小于N,N为所述多个健身动作的总个数,所述第三消息用于表征用户选择所述第二控件;
在i<N,i加1,继续执行播放第i健身动作。
3.根据权利要求2所述的视频播放方法,其特征在于,所述显示设备包括进度条控件,所述进度条控件用于设置跳过选项和循环选项,所述跳过选项用于设置是否跳过子进度条,所述循环选项用于设置子进度条播放的循环次数。
4.根据权利要求1-3中任一项所述的视频播放方法,其特征在于,所述多个健身动作的动作信息包括所述健身动作的名称、所述健身动作的起始时间以及所述健身动作的结束时间;所述进度条包括横向进度条或纵向进度条,所述横向进度条包括多个子横向进度条,所述子横向进度条包括所述子横向进度条的名称、所述子横向进度条的播放进度以及所述子横向进度条的播放时间;所述纵向进度条包括多个子纵向进度条,所述子纵向进度条包括所述子纵向进度条的名称、所述子纵向进度条的播放进度以及所述所述子纵向进度条的总播放时长。
5.根据权利要求4所述的视频播放方法,其特征在于,所述在接收到用户的第三消息时,判断i是否小于N,包括:
在接收到用户的第三消息时,判断所述第i健身动作的循环选项指示的循环次数是否大于1;
在所述第i健身动作的循环次数大于等于1时,控制所述第i健身动作的播放进度回调到所述第i健身动作的起始时间,循环次数减1;
在所述第i健身动作的循环次数小于1时,判断i是否小于N。
6.根据权利要求4所述的视频播放方法,其特征在于,所述播放第i健身动作之后,所述方法还包括:
在所述第i健身动作的播放状态符合预设条件时,判断i是否小于等于N,所述预设条件包括所述第i健身动作的播放进度达到所述第i健身动作的结束时间或接收到触发第i健身动作跳过的指令;
在i<N,i加1;
在所述第i健身动作的跳过选项的标志位为所述第一数值的情况下,继续执行判断i是否小于等于N,所述标志位包括第一数值和第二数据,所述第一数值用于表征跳过第i健身动作,所述第一数值用于表征不跳过第i健身动作;
在所述第i健身动作的跳过选项的标志位为所述第二数值的情况下,继续执行播放第i健身动作。
7.根据权利要求1所述的视频播放方法,其特征在于,所述播放所述媒体资源,包括:
轮询所述所述媒体资源的播放进度,并刷新所述媒体资源对应的进度条的界面显示结果。
8.根据权利要求1所述的视频播放方法,其特征在于,所述多个子进度条的界面显示底色不同。
9.一种显示设备,其特征在于,所述服务器包括获取模块和处理单元;
所述获取单元,用于响应于用户的第一消息,获取媒体资源和所述媒体资源的打点文件,所述第一消息用于请求播放所述媒体资源,所述媒体资源用于展示多个健身动作,所述打点文件包括所述媒体资源对应的多个健身动作的动作信息;
所述处理单元,用于解析所述打点文件,生成所述媒体资源对应的健身动作列表,所述健身动作列表包括所述多个健身动作的动作信息;
所述处理单元,还用于根据所述健身动作列表,绘制所述媒体资源对应的进度条,所述进度条包括多个子进度条,所述子进度条与所述健身动作一一对应,所述子进度条用于表征健身动作的动作信息;
所述处理单元,还用于基于所述媒体资源和所述媒体资源对应的进度条,播放所述媒体资源。
10.一种电子设备,其特征在于,包括:存储器和处理器,所述存储器用于存储计算机程序;所述处理器用于在执行计算机程序时,使得所述电子设备实现权利要求1-8任一项所述的视频播放方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211329845.6A CN115942008A (zh) | 2022-10-27 | 2022-10-27 | 一种视频播放方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211329845.6A CN115942008A (zh) | 2022-10-27 | 2022-10-27 | 一种视频播放方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115942008A true CN115942008A (zh) | 2023-04-07 |
Family
ID=86556588
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211329845.6A Pending CN115942008A (zh) | 2022-10-27 | 2022-10-27 | 一种视频播放方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115942008A (zh) |
-
2022
- 2022-10-27 CN CN202211329845.6A patent/CN115942008A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114390359B (zh) | 一种消息的展示方法及显示设备 | |
CA2777742C (en) | Dynamic exercise content | |
CN113077909B (zh) | 显示设备、控制装置及异常处理方法 | |
CN114286173A (zh) | 一种显示设备及音画参数调节方法 | |
CN112272324A (zh) | 一种跟练模式控制方法及显示设备 | |
CN113794917A (zh) | 一种显示设备和显示控制方法 | |
CN112073662A (zh) | 一种显示设备 | |
WO2020248697A1 (zh) | 显示设备及视频通讯数据处理方法 | |
WO2022037224A1 (zh) | 显示设备及音量控制方法 | |
CN113051435B (zh) | 服务器及媒资打点方法 | |
CN114095769B (zh) | 一种应用级播放器的直播低延迟处理方法及显示设备 | |
CN112839254A (zh) | 显示设备与内容显示方法 | |
CN115942008A (zh) | 一种视频播放方法及设备 | |
WO2022135177A1 (zh) | 控制方法和电子设备 | |
CN114296841A (zh) | 一种显示设备及ai增强显示方法 | |
CN112199560A (zh) | 一种设置项的搜索方法及显示设备 | |
CN113497884A (zh) | 一种双系统摄像头切换控制方法及显示设备 | |
CN115756159A (zh) | 一种显示方法及设备 | |
CN113766164B (zh) | 显示设备及信号源界面显示方法 | |
CN115767196B (zh) | 一种显示设备及媒资播放方法 | |
CN115620193A (zh) | 一种显示设备及健身视频播放方法 | |
CN118283372A (zh) | 一种显示设备、视频播放方法和计算机可读存储介质 | |
CN117793424A (zh) | 显示设备和分辨率设置方法 | |
CN117615190A (zh) | 显示设备和显示方法 | |
CN115086722A (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 |