CN115509671A - 互动课件播放方法、装置、设备和存储介质 - Google Patents
互动课件播放方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN115509671A CN115509671A CN202211452897.2A CN202211452897A CN115509671A CN 115509671 A CN115509671 A CN 115509671A CN 202211452897 A CN202211452897 A CN 202211452897A CN 115509671 A CN115509671 A CN 115509671A
- Authority
- CN
- China
- Prior art keywords
- courseware
- interactive
- playing
- script
- current
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000002452 interceptive effect Effects 0.000 title claims abstract description 333
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000013515 script Methods 0.000 claims description 116
- 230000015654 memory Effects 0.000 claims description 27
- 230000003993 interaction Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 description 14
- 238000004590 computer program Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000009877 rendering Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000002035 prolonged effect Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 235000013446 pixi Nutrition 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本公开涉及一种互动课件播放方法、装置、设备和存储介质。互动课件播放方法包括:检测到针对课件播放标识的触发操作,获取所述课件播放标识对应的第一部分课件;根据所述第一部分课件和预先缓存的第二部分课件,显示当前互动课件的播放界面;其中,所述当前互动课件是由所述第一部分课件和至少部分所述第二部分课件构成。本公开提供的互动课件播放方法,有效提高了加载速度,减少了互动课件播放时间,提高了用户体验。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种互动课件播放方法、装置、设备和存储介质。
背景技术
在课堂授课场景中,一堂课往往需要使用多个互动课件,其中,互动课件可以是游戏课件,游戏课件之间的切换和加载速度,在用户体验以及使用效果上尤为重要。每个游戏课件都具有一个独立的游戏界面,每加载一个游戏课件都需要重新加载完全,在进行游戏课件切换时,加载时间较长,导致游戏课件的播放时间变长,用户体验比较差。
发明内容
为了解决上述技术问题,本公开提供了一种互动课件播放方法、装置、设备和存储介质,有效提高了加载速度,减少了互动课件播放时间,提高了用户体验。
根据本公开的一方面,提供了一种互动课件播放方法,包括:
检测到针对课件播放标识的触发操作,获取所述课件播放标识对应的第一部分课件;
根据所述第一部分课件和预先缓存的第二部分课件,显示当前互动课件的播放界面;
其中,所述当前互动课件是由所述第一部分课件和至少部分所述第二部分课件构成。
根据本公开的另一方面,提供了一种互动课件播放装置,包括:
获取模块,用于检测到针对课件播放标识的触发操作,获取所述课件播放标识对应的第一部分课件;
播放模块,用于根据所述第一部分课件和预先缓存的第二部分课件,显示当前互动课件的播放界面,其中,所述当前互动课件是由所述第一部分课件和至少部分所述第二部分课件构成。
根据本公开的另一方面,提供了一种电子设备,所述电子设备包括:处理器;以及存储程序的存储器;其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据上述互动课件播放方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行根据互动课件播放方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述互动课件播放方法。
本公开实施例提供的技术方案与现有技术相比具有如下优点:
互动课件播放方法包括:检测到针对课件播放标识的触发操作,获取所述课件播放标识对应的第一部分课件;根据所述第一部分课件和预先缓存的第二部分课件,显示当前互动课件的播放界面;其中,所述当前互动课件是由所述第一部分课件和至少部分所述第二部分课件构成。本公开提供的互动课件播放方法,有效提高了加载速度,减少了互动课件播放时间,提高了用户体验。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的互动课件播放方法流程图;
图2为本公开实施例提供的界面图;
图3为本公开实施例提供的课件播放器的架构图;
图4为本公开实施例提供的互动课件播放方法流程图;
图5为本公开实施例提供的另一界面图;
图6为本公开实施例提供的课件播放器的构建方法流程图;
图7为本公开实施例提供的互动课件播放方法流程图;
图8为本公开实施例提供的互动课件播放装置的结构示意图;
图9为本公开实施例提供的电子设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
在课堂授课场景中,一堂课往往需要使用多个游戏课件,游戏课件之间的切换和加载速度,在用户体验及使用效果上尤为重要,目前,针对一堂课所需的多个游戏课件在播放时普遍存在如下一些问题:(1)每个游戏课件都是一个独立的游戏页面,每加载一个游戏课件都需要重新加载该游戏课件的全部内容,造成课件引擎和公共类库的重复加载和重复启动,近而导致游戏课件加载时间变长;(2)每页的游戏课件之间没有关联,进入下一游戏页面需要重新加载该页面的完整游戏课件,每一页游戏课件都包括游戏引擎和公共类库,存在大量的冗余资源,每个游戏课件包的体积都比较大,造成游戏课件资源预加载时间变长;(3)多个游戏课件之间频繁的启动和加载,若内存释放较慢,极易造成内存溢出,无法对游戏课件在内存上进行有效的管理。
针对上述技术问题,本公开实施例提供了一种互动课件播放方法,调整了游戏课件的结构,将每个游戏课件解耦成公共类库、课件引擎、游戏逻辑脚本和游戏资源,根据多个游戏课件的公共类库和课件引擎开发设计了课件播放器,课件播放器用于管理游戏课件的加载和渲染,同时将每个游戏课件抽离成游戏逻辑脚本和游戏资源的课件结构,也就是游戏课件由游戏逻辑脚本和游戏资源构成,在整堂课中有多个游戏课件的场景下,该种课件结构大大减少了游戏课件内的冗余资源,从而降低了游戏课件包的体积,加快了游戏课件资源的预加载速度。其次,整堂课涉及到的所有游戏课件的内存,由课件播放器统一管理,能够及时释放已播放完的游戏课件的内存,避免内存溢出。具体通过下述一个或多个实施例进行详细说明。
具体的,一种可行的应用场景,服务器或终端执行互动课件播放方法,具体的,服务器开发课件播放器,终端获取该课件播放器进行互动课件的播放。另一种可行的应用场景,终端开发课件播放器,并利用该课件播器进行互动课件的播放。本公开还包括其他可行的应用场景,在此不作赘述。下述实施例以终端开发课件播放器,执行互动课件播放方法为例进行详细说明。
图1为本公开实施例提供的互动课件播放方法流程图,应用于终端,具体包括如图1所示的如下步骤S110至S120:
S110、检测到针对课件播放标识的触发操作,获取所述课件播放标识对应的第一部分课件。
其中,所述第一部分课件包括第一互动脚本和互动资源,所述第一互动脚本为所述当前互动课件内部逻辑相关的脚本。
可理解的,终端显示第一界面,第一界面可以是整堂课的开始界面,还可以是前一互动课件的播放界面,每个互动课件对应一个界面/页面,该界面即为互动课件的播放界面,其中,第一界面包括课件播放标识,每个课件播放标识都关联下一页面的互动课件,将第一界面的下一页面记为当前互动课件的播放界面。教师触发第一界面的课件播放标识后,终端会检测到课件播放标识的触发操作,随后会从云端获取课件播放标识对应的第一部分课件,第一部分课件即为云端存储的互动课件,第一部分课件在云端可以将互动课件的名称作为标识,以便终端获取。具体的,第一部分课件包括第一互动脚本和互动资源,第一互动脚本为互动课件独有资源相关的脚本,是互动课件内独有的逻辑脚本,也就是第一互动脚本是非公共类库内资源相关的脚本,公共类库可以理解为功能类库,公共类库相关的脚本可以是启动脚本、点击脚本、拖拽脚本、移动脚本、翻转脚本等实现基础功能的脚本。互动资源也是互动课件的独有资源,互动资源可以是场景、人物、皮肤、图片、动画、音效之类的资源,不同互动课件涉及到的资源基本不同,例如游乐园场景下的互动课件1和教室场景下的互动课件2涉及到的互动资源大多数都是不同,因此,云端存储的互动课件只需存储第一部分课件(即互动课件独有部分)即可,该种课件架构,有效减少了互动课件包的体积,进一步减少了课件在播放时的预加载时间。
S120、根据所述第一部分课件和预先缓存的第二部分课件,显示当前互动课件的播放界面。
其中,所述当前互动课件是由所述第一部分课件和至少部分所述第二部分课件构成。所述第二部分课件包括课件引擎和第二互动脚本,所述第二互动脚本为公共类库相关的脚本。
可理解的,在上述S110的基础上,终端在获取第一部分课件的同时,可以显示第一界面的下一页面,下一页面可以是当前互动课件的待播放界面。随后根据第一部分课件和第二部分课件进行加载渲染,显示当前互动课件的播放界面,实现当前互动课件的播放,显示播放界面表示当前互动课件已经开始播放了,用户可以基于播放界面进行互动。其中,第二部分课件包括课件引擎和第二互动脚本,课件引擎用于渲染互动课件的场景,若互动课件是游戏课件,课件引擎包括游戏引擎,游戏引擎用于渲染游戏场景,大量游戏课件可以是基于相同的游戏引擎开发的,也就是说大量游戏课件可以基于同一个游戏引擎进行场景渲染。第二互动脚本为公共类库相关的脚本,也就是游戏课件中涉及到的实现基础功能的脚本,如上述公共类库相关的脚本可以是启动脚本、点击脚本、拖拽脚本、移动脚本、翻转脚本等实现基础功能的脚本。终端预先缓存有第二部分课件,第二部分课件包括待播放的海量互动课件所需的课件引擎和公共类库相关的脚本,海量互动课件可以基于同一课件引擎进行场景渲染,每个互动课件涉及到的公共类库相关的脚本都可以在第二部分课件中获取到,也就是说第二部分课件包括的公共类库相关的脚本数量和范围要远大于海量互动课件中每个互动课件所需的公共类库相关的脚本,海量互动课件对应的所有公共类库相关的脚本的并集即为第二互动脚本,第二互动脚本包括多个子互动脚本,第二互动脚本可以看作所有公共类库相关的脚本的集合,因此,完整的当前互动课件包括第一部分课件和至少部分的第二部分课件,例如,当前互动脚本只涉及到第二互动脚本中的点击脚本和移动脚本,未涉及到拖拽脚本等其他脚本。
可选的,上述S120播放当前互动课件,具体通过如下步骤实现:
加载所述互动资源,并启动所述课件引擎对所述互动资源进行渲染;根据所述第一互动脚本和渲染后的互动资源,显示所述当前互动课件的播放界面。
可选的,上述显示播放界面具体可以通过如下步骤实现:
根据所述第一互动脚本、所述第二互动脚本和渲染后的互动资源,显示所述当前互动课件的播放界面。
可理解的,终端获取到当前互动课件的第一部分课件后,加载第一部分课件中的互动资源,启动预先缓存的第二部分课件中的课件引擎,对互动资源进行渲染,渲染出当前互动课件中的场景和人物等显示信息,也就是构建当前互动课件的播放界面,随后将第一互动脚本和第二互动脚本中所需的多个子互动脚本注入到渲染出的播放界面中,即注入互动课件独有的逻辑脚本以及涉及到的公共类库相关的脚本,以显示最终的可交互的播放界面,完成当前互动课件的播放。
示例性的,参见图2,图2为本公开实施例提供的界面图,图2包括第一界面210、互动课件1的待播放界面220和互动课件1的播放界面230,互动课件1即为当前互动课件,其中,第一界面210为开始界面,包括课程内容介绍区域211和课件播放标识212,课件播放标识212和下一页面(待播放界面220)关联,教师触发课件播放标识212后,显示待播放界面220,待播放界面220包括互动课件1的信息显示区域221和加载区域222,加载区域222用于实时显示互动课件1的加载进度,终端检测到触发课件播放标识212被触发后,在显示待播放界面220的同时,会获取互动界面1的第一部分课件,根据第一部分课件和预先缓存的第二部分课件完成互动课件1的播放界面的构建后,显示播放界面230,实现互动课件1的播放,随后,教师就可以和播放界面230进行交互完成教学任务,播放界面230包括虚拟模型231、算式显示区域232和答案输入区域233,播放界面230的场景是操场场景,通过算式显示区域232的显示内容进行算式计算,在答案输入区域233中输入答案,根据输入答案控制虚拟模型231在操场跑道中运动,其中,利用算式计算控制虚拟模型231运动是基于互动课件1的游戏逻辑脚本(第一互动脚本)实现的,操场场景和虚拟模型231是根据互动课件1的互动资源渲染得到的,在答案输入区域233中输入数字是基于公共类库相关的脚本(第二互动脚本)实现的。
可选的,上述S120可以利用互动播放器实现当前互动课件的播放,具体通过如下步骤实现:
利用预先构建的处于启动状态的课件播放器,根据所述第一部分课件和所述课件播放器内封装的第二部分课件,显示所述当前互动课件的播放界面。
可理解的,终端利用处于启动状态的课件播放器,根据第一部分课件和封装在课件播放器内的第二部分课件,实现当前互动课件的播放。在上述示例的基础上,第一界面为开始页面,检测到针对第一界面中课件播放标识的触发操作,启动课件播放器,可理解的是,课件播放器在整堂课结束之前,被启动后都会一直处于启动状态,在一堂课包括多个互动课件的场景下,因课件播放器内封装了课件引擎和第二部分课件,多个互动课件切换和加载只需要启动一次课件播放器即可,从而可以大幅降低每个互动课件的加载时间。课件播放器启动后,会请求课件播放标识对应的第一部分课件,若请求成功会根据设计的管道机制,依次执行加载资源、启动课件引擎、渲染互动资源和注入互动脚本等四个动作,实现当前互动播放器的播放。若第一部分课件请求失败,会继续请求第一部分课件,直至请求成功或者播放中断。
可理解的,终端根据获取的海量互动课件生成课件播放器的具体实现步骤参见下述实施例,在此不作赘述。
示例性的,参见图3,图3为本公开实施例提供的课件播放器的架构图,图3包括渲染层、管道层、通讯层和应用层,渲染层包括第二部分课件中的课件引擎,课件引擎可以是PixiJs引擎。管道层是指上述课件播放器实现课件播放的管道机制,管道层包括依次执行的四个动作,分别是加载互动资源、启动课件引擎、渲染场景和注入互动脚本,启动课件引擎可以理解为创建PIXI示例,互动脚本可以理解为业务代码。通讯层包括通信模块,通信模块具有接入不同端的通讯能力,用于获取互动课件的交互数据传输至后端进行处理。应用层是指课件播放器可以应用的场景,可以是直播课堂和/或面授课堂。
本公开实施例提供了一种互动课件播放方法,将互动课件划分为两个部分,记为第一部分课件和第二部分课件,第一部分课件包括逻辑脚本(第一互动脚本)和互动资源,第一部分课件也为云端存储的可获取的互动课件,将包括课件引擎和公共类库的第二部分课件封装成公共的课件播放器,在整讲课包括多个互动课件的场景下,该种课件结构,大大减少了获取的互动课件的冗余资源,从而降低了互动课件包体积的大小,提高了互动课件预加载速度。其次,每次切换互动课件,只需要加载相应的互动资源和逻辑脚本即可(第一部分课件),不需要重复加载和启动课件引擎和公共类库,一定程度上的减少了互动课件的加载时长,实现互动课件的快速切换和播放,提高了用户体验。
在上述实施例的基础上,图4为本公开实施例提供的互动课件播放方法流程图,可选的,显示当前互动课件的播放界面后,可以通过触发播放界面中的课件播放标识播放下一互动课件,具体包括如图4所示的如下步骤S410至S420:
其中,所述至少一个互动模板包括自定义互动模板。
S410、检测到针对所述播放界面中课件播放标识的触发操作,获取所述播放界面中课件播放标识对应的第三部分课件。
S420、根据所述第三部分课件和所述第二部分课件,显示下一互动课件的播放界面。
其中,所述下一互动课件是由所述第三部分课件和至少部分所述第二部分课件构成。
可理解的,终端显示当前互动课件的播放界面后,检测到针对播放界面中课件播放标识的触发操作后,获取该课件播放标识对应的第三部分课件,每个互动界面都存在一个页面,每个页面都存在一个课件播放标识,每个课件播放标识关联一个互动课件,被触发后会获取关联的互动课件的第一部分课件,课件播放标识关联的是下一互动课件的第一部分课件,为区分开将该下一互动课件的第一部分课件称为第三部分课件,第三部分课件和第一部分课件具有相同的课件结构(包括第一互动脚本和互动资源),通过名称进行区分。随后,终端根据第三部分课件和第二部分课件,显示下一互动课件的播放界面,下一互动课件的播放过程参见上述实施例,在此不作赘述。
示例性的,参见图5,图5为本公开实施例提供的另一界面图,图5包括互动课件1的播放界面230和互动课件2的播放界面510,互动课件1为当前互动课件,互动课件2为下一互动课件,互动课件1播放完成后,教师触发播放界面230中的课件播放标识234,显示互动课件2的播放界面510,也就是播放互动课件2,播放界面510同样包括一个课件播放标识511,该种情况下,课件播放器一直处于启动状态,因此课件播放器在接收到互动课件2的播放通知后,会直接请求互动课件2的第三部分课件来进行互动课件2的播放。其中,播放界面510是在教室场景下,用于学习新的教学内容。
可选的,在获取所述播放界面中课件播放标识对应的第三部分课件前,释放所述当前互动课件的内存。
可理解的,终端在获取第三部分课件之前,也就是切换下一互动课件时,会统一释放掉当前互动课件的内存,也就是所有互动课件的内存,都由课件播放器统一管理,以便及时释放内存,避免内存溢出。
本公开实施例提供了一种互动课件播放方法,多个互动课件之间进行切换时,只需要获取下一互动课件的第一部分课件即可,减少了互动课件的预加载时间。同时课件播放器处于启动状态,不需要重复启动课件引擎以及重复加载公共类库,极大的提高了互动课件的加载速度。
在上述实施例的基础上,图6为本公开实施例提供的课件播放器构建方法流程图,应用于终端,具体包括如图6所示的如下步骤S610至S630:
S610、获取多个互动课件,所述多个互动课件包括所述当前互动课件。
可理解的,终端获取海量互动课件,海量互动课件包括上述实施例中的当前互动课件和下一互动课件。
S620、将所述多个互动课件中的每个互动课件进行划分,得到每个互动课件对应的第一部分课件和第二部分课件。
可理解的,在上述S610的基础上,终端将海量互动课件中的每个互动课件进行解耦操作,将每个互动课件划分为两个部分,分别是各互动课件独有的第一部分课件以及第二部分课件,第一部分课件包括体现游戏逻辑的第一互动脚本和互动资源,第二互动课件包括课件引擎以及和公共类库相关脚本集合的第二互动脚本,不同互动课件包括的第一部分课件是不同的,不同互动课件包括的第二部分课件也可能不同,比如不同互动课件具有的课件引擎可能不同,还比如,不同互动课件涉及到的第二互动脚本不完全相同。
S630、根据每个互动课件对应的第二部分课件构建课件播放器,并存储各互动课件对应的第一部分课件。
其中,所述第二部分课件包括课件引擎和第二互动脚本,所述第二互动脚本包括多个子互动脚本。
可选的,课件播放器的构建具体通过如下步骤实现:
在所述多个互动课件中确定具有相同课件引擎的至少一个目标互动课件;根据所述至少一个目标互动课件对应的多个子互动脚本构建公共类库,所述公共类库包括不同类型的各一个子互动脚本;根据所述相同课件引擎和所述公共类库构建课件播放器。
可理解的,终端在海量互动课件中确定具有相同课件引擎的多个目标互动课件,将具有相同课件引擎的互动课件分为一组,第二互动脚本包括多个子互动脚本,每个子互动脚本实现的是公共类库中的某一种功能,例如,实现公共类库中启动功能的第一子互动脚本(也可以称为启动脚本),实现拖拽功能的第二子互动脚本。根据相同的课件引擎将海量互动课件划分成多组后,根据每一组中多个目标互动课件对应的多个子互动脚本构建公共类库,公共类库中只保留实现各功能的一个子互动脚本即可,也就是在多个目标互动课件对应的多个子互动脚本中取交集构建该组的公共类库,同时将第一部分课件上传至云端,作为可供课件播放器加载的互动课件包,该种课件结构有效减少了互动课件包的体积,便于后续播放时实现快速加载。最后,针对每一组互动课件,根据相同的课件引擎和构建的公共类库构建适用于该组互动课件的公共的课件播放器,具体的,将公共类库和课件引擎封装成公共的课件播放器,该公共的课件播放器可以播放该组的所有互动课件。
本公开实施例提供了一种互动课件播放方法,将海量互动课件解耦出的课件引擎和公共类库封装成公共的课件播放器,整讲课只需要启动一次课件播放器即可。另外,每次切换游戏课件时,课件播放器都会统一自动释放掉当前互动课件的内存,随后再载入下一互动课件,在频繁切换互动课件的场景下,对内存进行统一的管理,减少了内存溢出的情况。
在上述实施例的基础上,图7为本公开实施例提供的互动课件播放方法流程图,应用于处于启动状态的课件播放器,具体包括如图7所述的如下步骤S710至S760:
S710、根据接收到的当前互动课件的播放通知,请求当前互动课件的第一部分课件。
可理解的,课件播放器接收到待播放的当前互动课件的播放通知后,请求当前互动课件的第一部分课件,第一部分课件包括互动资源和第一互动脚本。
S720、判断第一部分课件是否请求成功。
可理解的,课件播放器判断是否成功获取到第一部分课件,若是,执行S730;若否,执行S731。
S730、加载第一部分课件中的互动资源,并启动内部封装的第二部分课件中的课件引擎。
S731、继续请求第一部分课件。
S740、利用课件引擎渲染互动资源,并注入第一部分课件中的第一互动脚本和第二部分课件中的第二互动脚本,播放当前互动课件。
S750、接收到下一互动课件的播放通知后,释放当前互动课件的内存。
S760、播放下一互动课件。
可理解的,释放当前互动课件的内存,按照上述S710至S740播放下一互动课件,互动课件切换成功。
图8为本公开实施例提供的互动课件播放装置的结构示意图。本公开实施例提供的互动课件播放装置可以执行互动课件播放方法实施例提供的处理流程,如图8所示,互动课件播放装置800包括获取模块810和播放模块820,其中:
获取模块810,用于检测到针对课件播放标识的触发操作,获取所述课件播放标识对应的第一部分课件;
播放模块820,用于根据所述第一部分课件和预先缓存的第二部分课件,显示当前互动课件的播放界面;其中,所述当前互动课件是由所述第一部分课件和至少部分所述第二部分课件构成。
可选的,装置800中所述第一部分课件包括第一互动脚本和互动资源,所述第一互动脚本为所述当前互动课件内部逻辑相关的脚本,所述第二部分课件包括课件引擎。
可选的,播放模块820具体用于:
加载所述互动资源,并启动所述课件引擎对所述互动资源进行渲染;
根据所述第一互动脚本和渲染后的互动资源,显示所述当前互动课件的播放界面。
可选的,装置800中所述第二部分课件还包括第二互动脚本,所述第二互动脚本为公共类库相关的脚本。
可选的,播放模块820具体用于:
根据所述第一互动脚本、所述第二互动脚本和渲染后的互动资源,显示所述当前互动课件的播放界面。
可选的,显示当前互动课件的播放界面后,装置800还用于:
检测到针对所述播放界面中课件播放标识的触发操作,获取所述播放界面中课件播放标识对应的第三部分课件;
根据所述第三部分课件和所述第二部分课件,显示下一互动课件的播放界面;
其中,所述下一互动课件是由所述第三部分课件和至少部分所述第二部分课件构成。
可选的,播放模块820具体用于:
利用预先构建的处于启动状态的课件播放器,根据所述第一部分课件和所述课件播放器内封装的第二部分课件,显示所述当前互动课件的播放界面。
可选的,装置800还用于:
获取多个互动课件,所述多个互动课件包括所述当前互动课件;
将所述多个互动课件中的每个互动课件进行划分,得到每个互动课件对应的第一部分课件和第二部分课件;
根据每个互动课件对应的第二部分课件构建课件播放器,并存储各互动课件对应的第一部分课件。
可选的,所述第二部分课件包括课件引擎和第二互动脚本,所述第二互动脚本包括多个子互动脚本。
可选的,装置800还用于:
在所述多个互动课件中确定具有相同课件引擎的至少一个目标互动课件;
根据所述至少一个目标互动课件对应的多个子互动脚本构建公共类库,所述公共类库包括不同类型的各一个子互动脚本;
根据所述相同课件引擎和所述公共类库构建课件播放器。
本实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
本公开示例性实施例还提供一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器。所述存储器存储有能够被所述至少一个处理器执行的计算机程序,所述计算机程序在被所述至少一个处理器执行时用于使所述电子设备执行根据本公开实施例的方法。
本公开示例性实施例还提供一种计算机程序产品,包括计算机程序,其中,所述计算机程序在被计算机的处理器执行时用于使所述计算机执行根据本公开实施例的方法。
参考图9,现将描述可以作为本公开的服务器或客户端的电子设备900的结构框图,其是可以应用于本公开的各方面的硬件设备的示例。电子设备旨在表示各种形式的数字电子的计算机设备,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图9所示,电子设备900包括计算单元901,其可以根据存储在只读存储器(ROM)902中的计算机程序或者从存储单元908加载到随机访问存储器(RAM)903中的计算机程序,来执行各种适当的动作和处理。在RAM 903中,还可存储设备900操作所需的各种程序和数据。计算单元901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
电子设备900中的多个部件连接至I/O接口905,包括:输入单元906、输出单元907、存储单元908以及通信单元909。输入单元906可以是能向电子设备900输入信息的任何类型的设备,输入单元906可以接收输入的数字或字符信息,以及产生与电子设备的用户设置和/或功能控制有关的键信号输入。输出单元907可以是能呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。存储单元904可以包括但不限于磁盘、光盘。通信单元909允许电子设备900通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据,并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信收发机和/或芯片组,例如蓝牙TM设备、WiFi设备、WiMax设备、蜂窝通信设备和/或类似物。
计算单元901可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元901的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元901执行上文所描述的各个方法和处理。例如,在一些实施例中,互动课件播放方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元908。在一些实施例中,计算机程序的部分或者全部可以经由ROM 902和/或通信单元909而被载入和/或安装到电子设备900上。在一些实施例中,计算单元901可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行互动课件播放方法。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
如本公开使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种互动课件播放方法,其特征在于,包括:
检测到针对课件播放标识的触发操作,获取所述课件播放标识对应的第一部分课件;
根据所述第一部分课件和预先缓存的第二部分课件,显示当前互动课件的播放界面;
其中,所述当前互动课件是由所述第一部分课件和至少部分所述第二部分课件构成。
2.根据权利要求1所述的方法,其特征在于,所述第一部分课件包括第一互动脚本和互动资源,所述第一互动脚本为所述当前互动课件内部逻辑相关的脚本,所述第二部分课件包括课件引擎,所述根据所述第一部分课件和预先缓存的第二部分课件,显示当前互动课件的播放界面,包括:
加载所述互动资源,并启动所述课件引擎对所述互动资源进行渲染;
根据所述第一互动脚本和渲染后的互动资源,显示所述当前互动课件的播放界面。
3.根据权利要求2所述的方法,其特征在于,所述第二部分课件还包括第二互动脚本,所述第二互动脚本为公共类库相关的脚本,所述根据所述第一互动脚本和渲染后的互动资源,显示当前互动课件的播放界面,包括:
根据所述第一互动脚本、所述第二互动脚本和渲染后的互动资源,显示所述当前互动课件的播放界面。
4.根据权利要求1所述的方法,其特征在于,显示当前互动课件的播放界面后,所述方法还包括:
检测到针对所述播放界面中课件播放标识的触发操作,获取所述播放界面中课件播放标识对应的第三部分课件;
根据所述第三部分课件和所述第二部分课件,显示下一互动课件的播放界面;
其中,所述下一互动课件是由所述第三部分课件和至少部分所述第二部分课件构成。
5.根据权利要求1所述的方法,其特征在于,所述根据所述第一部分课件和预先缓存的第二部分课件,显示当前互动课件的播放界面,包括:
利用预先构建的处于启动状态的课件播放器,根据所述第一部分课件和所述课件播放器内封装的第二部分课件,显示所述当前互动课件的播放界面。
6.根据权利要求5所述的方法,其特征在于,所述课件播放器具体通过如下步骤构建:
获取多个互动课件,所述多个互动课件包括所述当前互动课件;
将所述多个互动课件中的每个互动课件进行划分,得到每个互动课件对应的第一部分课件和第二部分课件;
根据每个互动课件对应的第二部分课件构建课件播放器,并存储各互动课件对应的第一部分课件。
7.根据权利要求6所述的方法,其特征在于,所述第二部分课件包括课件引擎和第二互动脚本,所述第二互动脚本包括多个子互动脚本,所述根据每个互动课件对应的第二部分课件构建课件播放器,包括:
在所述多个互动课件中确定具有相同课件引擎的至少一个目标互动课件;
根据所述至少一个目标互动课件对应的多个子互动脚本构建公共类库,所述公共类库包括不同类型的各一个子互动脚本;
根据所述相同课件引擎和所述公共类库构建课件播放器。
8.一种互动课件播放装置,其特征在于,包括:
获取模块,用于检测到针对课件播放标识的触发操作,获取所述课件播放标识对应的第一部分课件;
播放模块,用于根据所述第一部分课件和预先缓存的第二部分课件,显示当前互动课件的播放界面;其中,所述当前互动课件是由所述第一部分课件和至少部分所述第二部分课件构成。
9.一种电子设备,其特征在于,所述电子设备包括:
处理器;以及
存储程序的存储器,
其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据权利要求1至7任一所述的互动课件播放方法。
10.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行根据权利要求1至7任一所述的互动课件播放方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211452897.2A CN115509671B (zh) | 2022-11-21 | 2022-11-21 | 互动课件播放方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211452897.2A CN115509671B (zh) | 2022-11-21 | 2022-11-21 | 互动课件播放方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115509671A true CN115509671A (zh) | 2022-12-23 |
CN115509671B CN115509671B (zh) | 2023-12-05 |
Family
ID=84513949
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211452897.2A Active CN115509671B (zh) | 2022-11-21 | 2022-11-21 | 互动课件播放方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115509671B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100023849A1 (en) * | 2008-07-22 | 2010-01-28 | Maher Hakim | Creating and Providing Online Presentations |
CN102546781A (zh) * | 2011-12-28 | 2012-07-04 | 深圳市新为软件有限公司 | 课程资源播放方法和课程资源播放*** |
CN103152645A (zh) * | 2013-03-22 | 2013-06-12 | 南京信通科技有限责任公司 | 一种基于电子书包的无间断播放课件方法 |
CN103826167A (zh) * | 2014-03-18 | 2014-05-28 | 上海景界信息科技有限公司 | 一种微课播放引擎及微课播放方法 |
US20170127150A1 (en) * | 2015-11-04 | 2017-05-04 | Ubitus Inc. | Interactive applications implemented in video streams |
CN108024139A (zh) * | 2017-12-08 | 2018-05-11 | 广州视源电子科技股份有限公司 | 网络视频课件的播放方法、装置、终端设备及存储介质 |
US20190088153A1 (en) * | 2017-09-19 | 2019-03-21 | Minerva Project, Inc. | Apparatus, user interface, and method for authoring and managing lesson plans and course design for virtual conference learning environments |
CN110222327A (zh) * | 2019-06-12 | 2019-09-10 | 杭州米络星科技(集团)有限公司 | 一种教育直播课件的制作方法及展示方法 |
CN110673777A (zh) * | 2019-08-28 | 2020-01-10 | 北京大米科技有限公司 | 在线教学方法、装置、存储介质及终端设备 |
CN111432276A (zh) * | 2020-03-27 | 2020-07-17 | 北京奇艺世纪科技有限公司 | 一种游戏引擎、互动视频交互方法和电子设备 |
CN112601130A (zh) * | 2020-12-09 | 2021-04-02 | 无锡柠檬科技服务有限公司 | 一种交互式课件播放*** |
CN113299135A (zh) * | 2021-07-26 | 2021-08-24 | 北京易真学思教育科技有限公司 | 题目互动方法、装置、电子设备及存储介质 |
US20220130268A1 (en) * | 2020-10-23 | 2022-04-28 | Pearson Education, Inc. | Plugin system and pathway architecture |
-
2022
- 2022-11-21 CN CN202211452897.2A patent/CN115509671B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100023849A1 (en) * | 2008-07-22 | 2010-01-28 | Maher Hakim | Creating and Providing Online Presentations |
CN102546781A (zh) * | 2011-12-28 | 2012-07-04 | 深圳市新为软件有限公司 | 课程资源播放方法和课程资源播放*** |
CN103152645A (zh) * | 2013-03-22 | 2013-06-12 | 南京信通科技有限责任公司 | 一种基于电子书包的无间断播放课件方法 |
CN103826167A (zh) * | 2014-03-18 | 2014-05-28 | 上海景界信息科技有限公司 | 一种微课播放引擎及微课播放方法 |
US20170127150A1 (en) * | 2015-11-04 | 2017-05-04 | Ubitus Inc. | Interactive applications implemented in video streams |
US20190088153A1 (en) * | 2017-09-19 | 2019-03-21 | Minerva Project, Inc. | Apparatus, user interface, and method for authoring and managing lesson plans and course design for virtual conference learning environments |
CN108024139A (zh) * | 2017-12-08 | 2018-05-11 | 广州视源电子科技股份有限公司 | 网络视频课件的播放方法、装置、终端设备及存储介质 |
CN110222327A (zh) * | 2019-06-12 | 2019-09-10 | 杭州米络星科技(集团)有限公司 | 一种教育直播课件的制作方法及展示方法 |
CN110673777A (zh) * | 2019-08-28 | 2020-01-10 | 北京大米科技有限公司 | 在线教学方法、装置、存储介质及终端设备 |
CN111432276A (zh) * | 2020-03-27 | 2020-07-17 | 北京奇艺世纪科技有限公司 | 一种游戏引擎、互动视频交互方法和电子设备 |
US20220130268A1 (en) * | 2020-10-23 | 2022-04-28 | Pearson Education, Inc. | Plugin system and pathway architecture |
CN112601130A (zh) * | 2020-12-09 | 2021-04-02 | 无锡柠檬科技服务有限公司 | 一种交互式课件播放*** |
CN113299135A (zh) * | 2021-07-26 | 2021-08-24 | 北京易真学思教育科技有限公司 | 题目互动方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
曹双贵;兰少华;: "流式三分屏VOD课件关键技术研究与***实现", 淮海工学院学报(自然科学版), no. 01 * |
Also Published As
Publication number | Publication date |
---|---|
CN115509671B (zh) | 2023-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019174595A1 (zh) | 资源配置方法、装置、终端及存储介质 | |
CN105791291B (zh) | 网络应用的显示控制方法、显示中实时更新的方法和装置 | |
CN110898428B (zh) | 多虚拟对象交互的方法、装置、服务器及存储介质 | |
JP5987060B2 (ja) | ゲームシステム、ゲーム装置、制御方法、プログラム及び記録媒体 | |
US7984122B2 (en) | Dedicated processor core request | |
CN107050850A (zh) | 虚拟场景的录制和回放方法、装置以及回放*** | |
US20210075673A1 (en) | Mobile application for monitoring and configuring second device | |
JP2017510862A (ja) | 描画システム、制御方法、及び記憶媒体 | |
CN105025061B (zh) | 构建云端共享游戏场景的方法与服务器 | |
CN111744177B (zh) | 游戏数据处理方法和装置、存储介质和电子设备 | |
CN108235756B (zh) | 一种音频竞争播放装置及其方法、移动终端 | |
US20230046042A1 (en) | Picture display method and apparatus, terminal device, and storage medium | |
CN103678892A (zh) | 一种角色对象管理的方法和装置 | |
JP6379107B2 (ja) | 情報処理装置並びにその制御方法、及びプログラム | |
CN113209632A (zh) | 一种云游戏的处理方法、装置、设备及存储介质 | |
WO2022095516A1 (zh) | 直播互动方法及装置 | |
CN113365111A (zh) | 基于直播的互动方法及装置 | |
CA3110060C (en) | Server and method for providing game service on basis of control using application excluding game application | |
CN115509671B (zh) | 互动课件播放方法、装置、设备和存储介质 | |
CN113181641A (zh) | 虚拟场景中游戏角色的渲染方法、装置及电子设备 | |
JP2022550856A (ja) | ビデオゲームオーバーレイ | |
WO2024037139A1 (zh) | 虚拟场景中的信息提示方法、装置、电子设备、存储介质及程序产品 | |
CN110652729B (zh) | 非用户控制对象的控制方法、装置和电子设备 | |
CN117519773A (zh) | 程序质量保障方法、装置、存储介质以及终端 | |
CN117753004A (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 |