多媒体数据播放方法、装置、计算机设备和存储介质与流程
未命名
09-24
阅读:63
评论:0
1.本技术涉及多媒体技术领域,特别是涉及一种多媒体数据播放方法、装置、计算机设备和存储介质。
背景技术:
2.随着计算机技术的发展,出现了多媒体数据播放技术,多媒体数据播放技术主要用于实现对多媒体数据的播放,多媒体是指多种媒体的综合,一般包括文本、声音和图像等。比如,多媒体数据具体可以是指音频数据。又比如,多媒体数据具体可以是指视频数据。
3.传统技术中,在实现在应用程序内播放多媒体数据时,会提供动态链接库给应用程序层使用,这样应用程序层的用户界面逻辑和多媒体数据播放器层的实现都在同一个进程中。
4.然而,传统方法,应用程序层的用户界面逻辑等会占用大部分内存,且在启动多个播放实例的场景下,内存占用率会很高,容易导致进程达到内存瓶颈而出现卡顿等情况。
技术实现要素:
5.基于此,有必要针对上述技术问题,提供一种能够优化进程内存的多媒体数据播放方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
6.第一方面,本技术提供了一种多媒体数据播放方法。所述方法包括:
7.当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程;
8.在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例;
9.启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制。
10.第二方面,本技术还提供了一种多媒体数据播放装置。所述装置包括:
11.第一进程模块,用于当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程;
12.第二进程模块,用于在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例;
13.处理模块,用于启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制。
14.第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
15.当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道
时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程;
16.在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例;
17.启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制。
18.第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
19.当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程;
20.在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例;
21.启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制。
22.第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
23.当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程;
24.在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例;
25.启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制。
26.上述多媒体数据播放方法、装置、计算机设备、存储介质和计算机程序产品,通过当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程,在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例,启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制,能够实现跨进程播放目标多媒体数据,避免主进程达到内存瓶颈,优化进程内存。
附图说明
27.图1为一个实施例中多媒体数据播放方法的应用环境图;
28.图2为一个实施例中多媒体数据播放方法的流程示意图;
29.图3为一个实施例中任务管理器中进程的示意图;
30.图4为一个实施例中主服务通信通道的建立以及主服务通信功能说明的示意图;
31.图5为一个实施例中,通过播放任务通信通道响应主进程对多媒体数据的播放控
制的示意图;
32.图6为另一个实施例中多媒体数据播放方法的流程示意图;
33.图7为一个实施例中跨进程模式下任务管理器的示意图;
34.图8为又一个实施例中多媒体数据播放方法的流程示意图;
35.图9为一个实施例中多媒体数据播放装置的结构框图;
36.图10为一个实施例中计算机设备的内部结构图。
具体实施方式
37.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
38.本技术实施例提供的多媒体数据播放方法,可以应用于如图1所示的应用环境中。当用户需要在终端的应用程序内播放目标多媒体数据时,用户会在应用程序的显示界面选中目标多媒体数据进行播放,当存在通过应用程序所在的主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,终端会在应用程序所在的主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程,在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例,启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制。其中,终端可以但不限于是各种台式计算机、笔记本电脑、智能手机、平板电脑、物联网设备、便携式可穿戴设备和飞行器,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。
39.在一个实施例中,如图2所示,提供了一种多媒体数据播放方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
40.步骤202,当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程。
41.其中,进程是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。举例说明,如图3所示,在windows系统下,通过打开任务管理器,可以看到应用程序(视频应用(32位))所包含的进程数(5个),每个进程分别来完成不同的工作。主进程是指程序入口。比如,主进程具体可以是指应用程序所在的进程。子进程是指被创建的进程。比如,子进程具体可以是指播放实例所在的进程。主服务通信通道是指主进程与子进程之间进行进程间通信的通道,主服务通信用于实现定期检测子进程存活、日志回传、创建/销毁播放实例通信服务等功能。其中,定期检测子进程存活可通过心跳检测实现。每个进程的用户空间是互相独立的,不能互相访问的,但是可以通过建立通信通道来进行通信数据交互。举例说明,可以基于管道、消息排队、旗语、共用内存以及套接字等来建立主服务通信通道。
42.其中,播放请求是指用户选中目标多媒体数据使用应用程序进行播放的请求。举例说明,播放请求具体可以为用户在应用程序的显示界面选中目标多媒体数据进行播放的
操作。通道创建指令是指主进程指示子进程创建与主进程之间的播放任务通信通道的指令。实例创建指令是指主进程指示子进程创建与目标多媒体数据对应的子进程播放实例的指令。
43.具体的,当需要播放目标多媒体数据时,用户会发起目标多媒体数据的播放请求至终端内应用程序所在的主进程,主进程在接收到目标多媒体数据的播放请求后,会确定应用程序相匹配的播放模式,当播放模式为跨进程播放模式时,主进程会进一步判断是否存在子进程服务,即是否存在主进程创建的子进程、且子进程与主进程间建立有主服务通信通道。当存在主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,表示存在子进程服务,终端会在主进程响应对目标多媒体数据的播放请求,基于播放请求生成对应的通道创建指令以及实例创建指令,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程。
44.具体的,当不存在主进程创建的子进程、且子进程与主进程间未建立主服务通信通道时,表示此时为在跨进程播放模式下且不存在子进程服务,终端会在主进程响应对目标多媒体数据的播放请求,创建与子进程服务相匹配的子进程,建立与子进程之间的主服务通信通道,以此实现对子进程服务的初始化,并创建主进程播放实例,启动主进程播放实例进行目标多媒体数据播放。
45.进一步的,当播放模式为主进程播放模式时,主进程会响应对目标多媒体数据的播放请求,直接创建主进程播放实例,启动主进程播放实例进行目标多媒体数据播放。在判断是否存在子进程服务时,主进程会查询与子进程服务相匹配的子进程服务标记,通过子进程服务标记来判断是否存在子进程服务。需要说明的是,在存在子进程服务和不存在子进程服务时,子进程服务标记的形式不同。举例说明,当子进程服务标记为“1”时可以表示存在子进程服务,当子进程服务标记为“0”时可以表示不存在子进程服务。
46.步骤204,在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例。
47.其中,播放任务通信通道是指主进程与子进程之间针对目标多媒体数据播放进行通信的通道,用于播放设置回调、播放状态回调以及多媒体数据回调。举例说明,播放设置具体可以是指开始、暂停、快进等。子进程播放实例是指与目标多媒体数据对应的在子进程播放目标多媒体数据的事件,每个播放目标多媒体数据的事件可以理解为一个子进程播放实例。
48.具体的,子进程在通过主服务通信通道接收到通道创建指令和实例创建指令后,会基于通道创建指令创建与主进程之间的播放任务通信通道,以便在播放目标多媒体数据时与主进程进行通信,响应主进程对目标多媒体数据的播放控制,同时,子进程会基于实例创建指令创建与目标多媒体数据对应的子进程播放实例,以便启动子进程播放实例进行目标多媒体数据播放。
49.步骤206,启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制。
50.具体的,在创建成功子进程播放实例以及播放任务通信通道后,可以通过启动子进程播放实例进行目标多媒体数据播放,实现对目标多媒体数据的播放,并在主进程接收到对目标多媒体数据的播放设置且通过播放任务通信通道输出对应的播放指令至子进程
时,在子进程基于播放指令对目标多媒体数据进行播放。其中,播放设置与播放指令相匹配。比如,当播放设置为暂停时,播放指令为暂停播放。
51.上述多媒体数据播放方法,通过当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程,在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例,启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制,能够实现跨进程播放目标多媒体数据,避免主进程达到内存瓶颈,优化进程内存。
52.在一个实施例中,多媒体数据播放方法还包括:
53.在跨进程播放模式下,当接收到对多媒体数据的首次播放请求时,在主进程响应对多媒体数据的首次播放请求,创建与子进程服务相匹配的子进程,子进程服务为通过子进程实现跨进程播放的服务;
54.建立与子进程之间的主服务通信通道,并创建与多媒体数据对应的主进程播放实例,启动主进程播放实例进行多媒体数据播放。
55.其中,子进程服务为通过子进程实现跨进程播放的服务,即通过子进程与主进程之间的跨进程实现对多媒体数据的播放的服务。跨进程播放模式是指跨越主进程和子进程对多媒体数据进行播放的模式,即进行多媒体数据播放的播放实例在子进程,而不在应用程序所在的主进程。主进程播放实例是指与多媒体数据对应的在主进程播放多媒体数据的事件。
56.具体的,在跨进程播放模式下,当接收到对多媒体数据的首次播放请求时,终端会在主进程响应对多媒体数据的首次播放请求,创建与子进程服务相匹配的子进程,建立与子进程之间的主服务通信通道,以此实现子进程服务的初始化,同时,为了加快加载速度,主进程会创建与多媒体数据对应的主进程播放实例,启动主进程播放实例进行多媒体数据播放,以使得多媒体数据直接在主进程进行播放。
57.本实施例中,通过在跨进程播放模式下,当接收到对多媒体数据的首次播放请求时,在主进程响应对多媒体数据的首次播放请求,创建与子进程服务相匹配的子进程,建立与子进程之间的主服务通信通道,能够实现对子进程服务的初始化,同时,通过创建与多媒体数据对应的主进程播放实例,启动主进程播放实例进行多媒体数据播放,能够加快对多媒体数据的加载速度。
58.在一个实施例中,建立与子进程之间的主服务通信通道包括:
59.在主进程创建与主服务通信通道相匹配的主通信服务端;
60.建立主通信服务端与主通信客户端的连接,主通信客户端为在子进程创建、与主服务通信通道相匹配的客户端。
61.其中,主通信服务端是通信通道的服务端。比如,进程间通信方式为管道通信时,主通信服务端是管道的服务端。主通信客户端是指通信通道的客户端。比如,进程间通信方式为管道通信时,主通信客户端是通信通道的客户端。需要说明的是,本质上来讲,通信就是一来一去的一对一的通信,即一方发出什么消息,对方接收消息后做出相应的操作。本实施例中,主要指的就是主进程与子进程之间通过主通信服务端以及主通信客户端实现通
信,主通信服务端用于接收子进程通过主通信客户端发送的消息,主通信客户端用于接收主进程通过主通信服务端发送的消息。
62.具体的,终端会在主进程创建与主服务通信通道相匹配的主通信服务端,通过接口建立主通信服务端与主通信客户端的连接。其中,通过接口建立主通信服务端与主通信客户端的连接时,所采用的接口为计算机提供的接口,在建立连接时可直接拿来使用。主通信客户端为在子进程创建、与主服务通信通道相匹配的客户端,即在主进程创建与主服务通信通道相匹配的主通信服务端的同时,子进程也会创建与主服务通信通道相匹配的主通信客户端,在主通信服务端与主通信客户端建立连接后,即可实现主进程与子进程之间的跨进程通信。需要说明的是,这里的跨进程通信是指,当主进程想要与子进程通信时,只需要通过主通信服务端发送消息至已建立连接的主通信客户端即可。举例说明,若子进程在生成日志消息后,通过主通信客户端给主进程的主通信服务端发送了日志消息,主通信服务端在接收到日志消息后,主进程会根据与日志消息相匹配的业务逻辑,将日志打印到指定地方,以完成一次日志回传。
63.举例说明,如图4所示,在跨进程播放模式下,在创建与子进程服务相匹配的子进程后,子进程启动,会创建与主服务通信通道相匹配的主通信客户端,同时,在主进程会创建与主服务通信通道相匹配的主通信服务端,在建立主通信服务端与主通信客户端的连接后,即完成对主服务通信通道的建立,即可实现跨进程通信。主服务通信用于实现定期检测子进程存活、日志回传、创建/销毁播放实例通信服务等功能。其中,定期检测子进程存活可通过心跳检测实现。
64.本实施例中,通过在主进程创建与主服务通信通道相匹配的主通信服务端,建立主通信服务端与主通信客户端的连接,能够实现主进程与子进程之间跨进程的通信。
65.在一个实施例中,多媒体数据播放方法还包括:
66.当播放模式为开发模式时,在主进程响应对目标多媒体数据的播放请求,建立开发模式相匹配的主服务通信通道,并创建与目标多媒体数据对应的主进程播放实例,启动主进程播放实例进行目标多媒体数据播放。
67.其中,由于在开发过程中需要通过工具来查看数据内存,设置断点等操作,且只能附加到一个进程。在这种情况下,在开发阶段无法快速调试程序中的问题,因此设计了开发模式,开发模式本质上除了没有启动子进程外,其他通信过程和不存在子进程服务的跨进程播放模式的通信过程基本一致,通过在开发过程中使用这种开发模式能够更快的发现问题,并查看具体通信数据的解析是否正常。
68.具体的,当播放模式为开发模式时,表示应用程序处在开发阶段且不存在子进程服务,此时终端会在主进程响应对目标多媒体数据的播放请求,建立开发模式相匹配的主服务通信通道,并创建与目标多媒体数据对应的主进程播放实例,启动主进程播放实例进行目标多媒体数据播放。其中,主进程在建立开发模式相匹配的主服务通信通道时所采用的创建方式与建立与子进程之间的主服务通信通道相似,唯一不同的是,没有启动子进程,即不需要实际创建子进程,只要创建与开发模式相匹配的主服务通信通道相匹配的开发模式客户端即可,在开发模式客户端创建后,建立开发模式客户端与主进程创建的与与开发模式相匹配的主服务通信通道相匹配的主通信服务端的连接,即可在开发模式下进行调试。需要说明的是,在开发模式下,为了加快加载目标多媒体数据的速度,同样选择创建与
目标多媒体数据对应的主进程播放实例,启动主进程播放实例进行目标多媒体数据播放。
69.在一个实施例中,在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道包括:
70.在子进程,基于通道创建指令创建与播放任务通信通道相匹配的播放客户端;
71.建立播放客户端与播放服务端的连接,播放服务端为在主进程创建、与播放任务通信通道相匹配的服务端。
72.其中,播放客户端是指多媒体数据播放过程中用于通信的客户端。比如,进程间通信方式为管道通信时,播放客户端是指多媒体数据播放过程中管道通信的客户端。播放服务端是指多媒体数据播放过程中用于通信的服务端。比如,进程间通信方式为管道通信时,播放服务端是指多媒体数据播放过程中管道通信的服务端。
73.具体的,终端会在子进程,基于通道创建指令创建与播放任务通信通道相匹配的播放客户端,通过接口建立播放客户端与播放服务端的连接。其中,通过接口建立播放客户端与播放服务端的连接时,所采用的接口为计算机提供的接口,在建立连接时可直接拿来使用。播放服务端为在主进程创建、与播放任务通信通道相匹配的服务端,即在子进程基于通道创建指令创建与播放任务通信通道相匹配的播放客户端的同时,主进程也会创建与播放任务通信通道相匹配的播放服务端,在播放客户端与播放服务端建立连接后,即可实现主进程与子进程之间针对用户播放行为的跨进程通信。需要说明的是,这里的跨进程通信是指,当主进程想要与子进程通信时,只需要通过播放服务端发送消息至已建立连接的播放客户端即可。举例说明,这里的用户播放行为可以为用户针对播放的设置,包括快进、暂停等。
74.本实施例中,通过在子进程,基于通道创建指令创建与播放任务通信通道相匹配的播放客户端,建立播放客户端与播放服务端的连接,能够实现对播放任务通信通道的创建。
75.在一个实施例中,通过播放任务通信通道响应主进程对多媒体数据的播放控制包括:
76.当接收到对目标多媒体数据的播放设置时,主进程基于播放任务通信通道输出与播放设置相匹配的播放指令至子进程;
77.在子进程基于播放指令对目标多媒体数据进行播放。
78.具体的,在建立播放任务通信通道后,在接收到用户对目标多媒体数据的播放设置时,主进程会基于播放任务通信通道输出与播放设置相匹配的播放指令至子进程,以使得子进程基于播放指令对目标多媒体数据进行播放。需要说明的是,由于已建立播放服务端与播放客户端的连接,这里的主进程基于播放任务通信通道输出与播放设置相匹配的播放指令至子进程主要是指通过播放服务端输出与播放设置相匹配的播放指令至已建立连接的播放客户端。同理,子进程在基于播放任务通信通道与主进程通信时,主要也是通过播放客户端输出消息至已建立连接的播放服务端。
79.举例说明,如图5所示,在接收到用户对目标多媒体数据的播放设置时,主进程会在播放服务端基于播放任务通信通道输出与播放设置相匹配的播放指令至子进程,以使得子进程基于播放指令对目标多媒体数据进行播放。播放设置包括但不限于在播放中间过程用户的开始、暂停、停止、设置音量等操作。此外,子进程也会通过播放任务通信通道响应主
进程对目标多媒体数据的播放地址设置、播放器初始化参数设置、设置广告数据、设置水印数据、获取宽高等信息的播放控制。进一步的,子进程也可以通过播放任务通信通道进行回调,这里的回调包括但不限于播放器消息回调(如状态信息、出错等)、音视频数据回调等,此外,子进程也可以基于播放任务通信通道反馈异步操作的执行结果等至主进程。
80.在一个实施例中,多媒体数据播放方法还包括:
81.当监测到通信异常时,主进程发送实例销毁指令至子进程,以使子进程根据实例销毁指令销毁相匹配的目标子进程播放实例。
82.其中,通信异常是指主进程与子进程之间的通信异常。比如,通信异常具体可以是指主进程与子进程之间的主服务通信异常,也可以是指主进程与子进程之间的播放任务通信通道异常。通信异常可通过定期检测子进程存活来进行判断,当子进程存活时表示通信正常,当子进程异常或不存活时表示通信异常。举例说明,子进行存活可通过心跳检测实现。心跳检测逻辑为服务端给客户端每个几秒钟发一个消息询问其是否存活,客户端收到消息后立即回复服务端表示自己还存活,服务端收到消息后,标记客户端此时属于存活状态,如果没有收到回复,继续尝试几次,如果还没有应答,表示对方已经异常或不存活。此时服务端做相应的处理逻辑,本质就是完成最简单的一次通信与应答。
83.具体的,一旦子进程出现异常的话,主进程发给子进程的任何指令都会失败,因此主进程可以立即感知,当监测到通信异常时,主进程会发送实例销毁指令至子进程,以使子进程根据实例销毁指令销毁相匹配的目标子进程播放实例。需要说明的是,针对通信异常的具体情况的不同,所需要销毁的播放实例不完全相同,如果通信异常为子进程突然出现崩溃闪退等现象,所有与子进程相匹配的子进程播放实例均需要销毁。如果通信异常为单个播放任务通信通道通信失败,只需要销毁与该播放任务通信通道相匹配的目标子进程播放实例即可。
84.本实施例中,通过当监测到通信异常时,主进程发送实例销毁指令至子进程,能够使得子进程根据实例销毁指令销毁相匹配的目标子进程播放实例。
85.在一个实施例中,如图6所示,以多媒体数据为视频、应用程序为视频播放器为例,通过一个流程示意图来说明本技术的多媒体数据播放方法,该多媒体数据播放方法具体包括以下步骤:
86.当用户需要在视频播放器内播放视频时,视频播放器所在的主进程会接收到对视频的播放请求,即开始播放一个视频。此时,视频播放器所在的主进程会询问当前配置的播放器工作模式类型,当播放器工作模式为主进程模式时,主进程响应对视频的播放请求,创建本进程播放器(即本进程播放实例),启动本进程播放实例进行视频播放。
87.当播放器工作模式为跨进程模式(即跨进程播放模式)或跨进程开发模式(即开发模式)时,主进程会进一步判断是否存在子进程服务,若子进程服务存在,说明子进程存在(跨进程模式)且总通信正常,即存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道,此时,只需要创建子进程播放器(子进程播放实例)即可,启动子进程播放器即可进行视频播放。具体的,在子进程服务存在时,主进程会响应对视频的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程,以使子进程基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与视频对应的子进程播放器,启动子进程播放器进行视频播放,并通过播放任
务通信通道响应主进程对视频的播放控制。其中,播放任务通信主要完成的任务包括:具体的播放设置(如开始、暂停、快进等)、播放器状态回调以及音视频数据的回调,提供给应用程序层,以备其他逻辑使用。
88.若子进程服务不存在,主进程需要进一步判断播放器工作模式是否为开发模式,若为开发模式,只要直接启动主服务通信即可,此时,主进程会响应对视频的播放请求,建立开发模式相匹配的主服务通信通道,同时,为了加快视频加载速度,会在主进程直接创建与视频相匹配的本进程播放器(主进程播放实例),启动本进程播放器进行视频播放。
89.若不为开发模式,表示此时为跨进程模式下且不存在子进程服务,需要创建真正的子进程,并启动主服务通信,此时,主进程会响应对视频的播放请求,创建与子进程服务相匹配的子进程,建立与子进程之间的主服务通信通道,同时,为了加快视频加载速度,主进程会创建与视频对应的本进程播放器(主进程播放实例),启动主进程播放器进行视频播放。需要说明的是,在跨进程模式下且不存在子进程服务,具体可以为在跨进程播放模式下接收到对视频的首次播放请求(即第一次进行视频播放),也可以为在跨进程播放模式下,子进程异常,因而不存在子进程服务。举例说明,子进程异常具体可以是指由于用户误操作导致子进程不存在。
90.其中,主服务通信是跨进程模式/跨进程开发模式下首先建立的通信,包含心跳维护、日志回传、创建/销毁播放实例通信服务等功能。在跨进程模式/跨进程开发模式下都需要建立相匹配的主服务通信,以在跨进程模式下为例,在建立与子进程之间的主服务通信通道时,需要在主进程创建与主服务通信通道相匹配的主通信服务端,并在子进程创建与主服务通信通道相匹配的主通信客户端,主通信服务端与主通信客户端建立连接,即可实现主进程与子进程之间的跨进程通信。主通信服务端和主通信客户端建立连接后,通过心跳维护基本的通信,一旦出现异常,双方互相感知,从而做相应的销毁等工作,这里的销毁主要是指销毁子进程播放器(即子进程播放实例)。
91.需要说明的是,本技术中所涉及的多媒体数据播放方法,允许同时播放多个视频,其中一个视频属于一个播放实例,每启动一个播放实例,就会创建一个播放任务通信。即若用户需要在视频播放器内同时播放多个视频时,当存在子进程服务时,视频播放器所在的主进程在接收到对视频的播放请求后,会响应对多个视频的播放请求,基于主服务通信通道,将与每个视频各自对应的播放请求对应的通道创建指令以及实例创建指令发送至子进程,以使得子进程基于与每个视频各自对应的播放请求对应的通道创建指令,分别创建与每个视频各自对应的与主进程之间的播放任务通信通道,并基于与每个视频各自对应的播放请求对应的实例创建指令,创建与每个视频各自相匹配的子进程播放器,启动相匹配的子进程播放器对每个视频进行播放,通过与每个视频各自对应的与主进程之间的播放任务通信通道分别响应主进程对每个视频的播放控制。
92.进一步的,在利用主服务通信通道和播放任务通信通道进行进程间通信时的数据,可以为进行统一的序列化/反序列化处理的数据,其中,序列化本质是将各种数据生成二进制数据,可以采用自定义序列化格式,反序列化就是对序列化的逆向操作。更进一步的,由于指针不能直接传递,且当需要传递的数据的数据量很大时不适合用序列化,本技术中采用共享内存来实现数据传递,比如,多媒体数据的传递,采用共享内存进行数据传递能够提高数据传递效率。
93.本技术中所提供的多媒体数据播放方法,通过跨进程的形式,采用主服务通信通道+针对每个视频创建播放任务通信通道的形式(即主服务通信通道只对创建/销毁播放器实例进行管理,采用播放任务通信通道来对每个视频的播放进行管理),避免同时在主进程启动多个播放实例,而引起主服务通信通道负载过大的情况,实现优化主进程内存。通过本技术中所提供的多媒体数据播放方法,用户基本是在无任何感知的情况下启动跨进程播放,唯独可以查看到跨进程播放的地方只有任务管理器,如图7所示,可以看到在视频应用这个应用程序的进程中,除了主进程外,还多了一个播放进程(即子进程)。
94.在一个实施例中,如图8所示,通过一个流程示意图来说明本技术的多媒体数据播放方法,该多媒体数据播放方法具体包括以下步骤:
95.步骤802,在跨进程播放模式下,当接收到对多媒体数据的首次播放请求时,在主进程响应对多媒体数据的首次播放请求,创建与子进程服务相匹配的子进程,子进程服务为通过子进程实现跨进程播放的服务;
96.步骤804,在主进程创建与主服务通信通道相匹配的主通信服务端;
97.步骤806,在主进程建立主通信服务端与主通信客户端的连接,主通信客户端为在子进程创建、与主服务通信通道相匹配的客户端,并创建与多媒体数据对应的主进程播放实例,启动主进程播放实例进行多媒体数据播放;
98.步骤808,当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程;
99.步骤810,在子进程,基于通道创建指令创建与播放任务通信通道相匹配的播放客户端;
100.步骤812,在子进程建立播放客户端与播放服务端的连接,播放服务端为在主进程创建、与播放任务通信通道相匹配的服务端,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例;
101.步骤814,启动子进程播放实例进行目标多媒体数据播放;
102.步骤816,当接收到对目标多媒体数据的播放设置时,主进程基于播放任务通信通道输出与播放设置相匹配的播放指令至子进程;
103.步骤818,在子进程基于播放指令对目标多媒体数据进行播放;
104.步骤820,当监测到通信异常时,主进程发送实例销毁指令至子进程,以使子进程根据实例销毁指令销毁相匹配的目标子进程播放实例;
105.应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
106.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的多媒体数据播放方法的多媒体数据播放装置。该装置所提供的解决问题的实现方案与上述方法中
所记载的实现方案相似,故下面所提供的一个或多个多媒体数据播放装置实施例中的具体限定可以参见上文中对于多媒体数据播放方法的限定,在此不再赘述。
107.在一个实施例中,如图9所示,提供了一种多媒体数据播放装置,包括:第一进程模块902、第二进程模块904和处理模块906,其中:
108.第一进程模块902,用于当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程;
109.第二进程模块904,用于在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例;
110.处理模块906,用于启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制。
111.上述多媒体数据播放装置,通过当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程,在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例,启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制,能够实现跨进程播放目标多媒体数据,避免主进程达到内存瓶颈,优化进程内存。
112.在一个实施例中,多媒体数据播放装置还包括进程创建模块,进程创建模块用于在跨进程播放模式下,当接收到对多媒体数据的首次播放请求时,在主进程响应对多媒体数据的首次播放请求,创建与子进程服务相匹配的子进程,子进程服务为通过子进程实现跨进程播放的服务,建立与子进程之间的主服务通信通道,并创建与多媒体数据对应的主进程播放实例,启动主进程播放实例进行多媒体数据播放。
113.在一个实施例中,进程创建模块还用于在主进程创建与主服务通信通道相匹配的主通信服务端,建立主通信服务端与主通信客户端的连接,主通信客户端为在子进程创建、与主服务通信通道相匹配的客户端。
114.在一个实施例中,多媒体数据播放装置还包括开发模块,开发模块用于当播放模式为开发模式时,在主进程响应对目标多媒体数据的播放请求,建立开发模式相匹配的主服务通信通道,并创建与目标多媒体数据对应的主进程播放实例,启动主进程播放实例进行目标多媒体数据播放。
115.在一个实施例中,第二进程模块还用于在子进程,基于通道创建指令创建与播放任务通信通道相匹配的播放客户端,建立播放客户端与播放服务端的连接,播放服务端为在主进程创建、与播放任务通信通道相匹配的服务端。
116.在一个实施例中,处理模块还用于当接收到对目标多媒体数据的播放设置时,主进程基于播放任务通信通道输出与播放设置相匹配的播放指令至子进程,在子进程基于播放指令对目标多媒体数据进行播放。
117.在一个实施例中,处理模块还用于当监测到通信异常时,主进程发送实例销毁指令至子进程,以使子进程根据实例销毁指令销毁相匹配的目标子进程播放实例。
118.上述多媒体数据播放装置中的各个模块可全部或部分通过软件、硬件及其组合来
实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
119.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种多媒体数据播放方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
120.本领域技术人员可以理解,图10中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
121.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
122.当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程;
123.在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例;
124.启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制。
125.在一个实施例中,处理器执行计算机程序时还实现以下步骤:在跨进程播放模式下,当接收到对多媒体数据的首次播放请求时,在主进程响应对多媒体数据的首次播放请求,创建与子进程服务相匹配的子进程,子进程服务为通过子进程实现跨进程播放的服务,建立与子进程之间的主服务通信通道,并创建与多媒体数据对应的主进程播放实例,启动主进程播放实例进行多媒体数据播放。
126.在一个实施例中,处理器执行计算机程序时还实现以下步骤:在主进程创建与主服务通信通道相匹配的主通信服务端,建立主通信服务端与主通信客户端的连接,主通信客户端为在子进程创建、与主服务通信通道相匹配的客户端。
127.在一个实施例中,处理器执行计算机程序时还实现以下步骤:当播放模式为开发模式时,在主进程响应对目标多媒体数据的播放请求,建立开发模式相匹配的主服务通信通道,并创建与目标多媒体数据对应的主进程播放实例,启动主进程播放实例进行目标多媒体数据播放。
128.在一个实施例中,处理器执行计算机程序时还实现以下步骤:在子进程,基于通道创建指令创建与播放任务通信通道相匹配的播放客户端,建立播放客户端与播放服务端的连接,播放服务端为在主进程创建、与播放任务通信通道相匹配的服务端。
129.在一个实施例中,处理器执行计算机程序时还实现以下步骤:当接收到对目标多媒体数据的播放设置时,主进程基于播放任务通信通道输出与播放设置相匹配的播放指令至子进程,在子进程基于播放指令对目标多媒体数据进行播放。
130.在一个实施例中,处理器执行计算机程序时还实现以下步骤:当监测到通信异常时,主进程发送实例销毁指令至子进程,以使子进程根据实例销毁指令销毁相匹配的目标子进程播放实例。
131.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
132.当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程;
133.在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例;
134.启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制。
135.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在跨进程播放模式下,当接收到对多媒体数据的首次播放请求时,在主进程响应对多媒体数据的首次播放请求,创建与子进程服务相匹配的子进程,子进程服务为通过子进程实现跨进程播放的服务,建立与子进程之间的主服务通信通道,并创建与多媒体数据对应的主进程播放实例,启动主进程播放实例进行多媒体数据播放。
136.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在主进程创建与主服务通信通道相匹配的主通信服务端,建立主通信服务端与主通信客户端的连接,主通信客户端为在子进程创建、与主服务通信通道相匹配的客户端。
137.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当播放模式为开发模式时,在主进程响应对目标多媒体数据的播放请求,建立开发模式相匹配的主服务通信通道,并创建与目标多媒体数据对应的主进程播放实例,启动主进程播放实例进行目标多媒体数据播放。
138.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在子进程,基于通道创建指令创建与播放任务通信通道相匹配的播放客户端,建立播放客户端与播放服务端的连接,播放服务端为在主进程创建、与播放任务通信通道相匹配的服务端。
139.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当接收到对目标多媒体数据的播放设置时,主进程基于播放任务通信通道输出与播放设置相匹配的播放指令至子进程,在子进程基于播放指令对目标多媒体数据进行播放。
140.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当监测到通信异常时,主进程发送实例销毁指令至子进程,以使子进程根据实例销毁指令销毁相匹配的目标子进程播放实例。
141.在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
142.当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程;
143.在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例;
144.启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制。
145.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在跨进程播放模式下,当接收到对多媒体数据的首次播放请求时,在主进程响应对多媒体数据的首次播放请求,创建与子进程服务相匹配的子进程,子进程服务为通过子进程实现跨进程播放的服务,建立与子进程之间的主服务通信通道,并创建与多媒体数据对应的主进程播放实例,启动主进程播放实例进行多媒体数据播放。
146.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在主进程创建与主服务通信通道相匹配的主通信服务端,建立主通信服务端与主通信客户端的连接,主通信客户端为在子进程创建、与主服务通信通道相匹配的客户端。
147.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当播放模式为开发模式时,在主进程响应对目标多媒体数据的播放请求,建立开发模式相匹配的主服务通信通道,并创建与目标多媒体数据对应的主进程播放实例,启动主进程播放实例进行目标多媒体数据播放。
148.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在子进程,基于通道创建指令创建与播放任务通信通道相匹配的播放客户端,建立播放客户端与播放服务端的连接,播放服务端为在主进程创建、与播放任务通信通道相匹配的服务端。
149.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当接收到对目标多媒体数据的播放设置时,主进程基于播放任务通信通道输出与播放设置相匹配的播放指令至子进程,在子进程基于播放指令对目标多媒体数据进行播放。
150.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当监测到通信异常时,主进程发送实例销毁指令至子进程,以使子进程根据实例销毁指令销毁相匹配的目标子进程播放实例。
151.需要说明的是,本技术所涉及的数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
152.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器
(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
153.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
154.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
技术特征:
1.一种多媒体数据播放方法,其特征在于,所述方法包括:当存在通过主进程创建的子进程、且所述子进程与所述主进程间建立有主服务通信通道时,在所述主进程响应对目标多媒体数据的播放请求,基于所述主服务通信通道,将与所述播放请求对应的通道创建指令以及实例创建指令发送至所述子进程;在所述子进程,基于所述通道创建指令创建与所述主进程之间的播放任务通信通道,并基于所述实例创建指令创建与所述目标多媒体数据对应的子进程播放实例;启动所述子进程播放实例进行目标多媒体数据播放,并通过所述播放任务通信通道响应所述主进程对所述目标多媒体数据的播放控制。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:在跨进程播放模式下,当接收到对多媒体数据的首次播放请求时,在主进程响应对所述多媒体数据的首次播放请求,创建与子进程服务相匹配的子进程,所述子进程服务为通过所述子进程实现跨进程播放的服务;建立与所述子进程之间的主服务通信通道,并创建与所述多媒体数据对应的主进程播放实例,启动所述主进程播放实例进行多媒体数据播放。3.根据权利要求2所述的方法,其特征在于,所述建立与所述子进程之间的主服务通信通道包括:在所述主进程创建与所述主服务通信通道相匹配的主通信服务端;建立所述主通信服务端与主通信客户端的连接,所述主通信客户端为在所述子进程创建、与所述主服务通信通道相匹配的客户端。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:当播放模式为开发模式时,在主进程响应对目标多媒体数据的播放请求,建立所述开发模式相匹配的主服务通信通道,并创建与所述目标多媒体数据对应的主进程播放实例,启动所述主进程播放实例进行目标多媒体数据播放。5.根据权利要求1所述的方法,其特征在于,所述在所述子进程,基于所述通道创建指令创建与所述主进程之间的播放任务通信通道包括:在所述子进程,基于所述通道创建指令创建与所述播放任务通信通道相匹配的播放客户端;建立所述播放客户端与播放服务端的连接,所述播放服务端为在所述主进程创建、与所述播放任务通信通道相匹配的服务端。6.根据权利要求1所述的方法,其特征在于,所述通过所述播放任务通信通道响应所述主进程对所述目标多媒体数据的播放控制包括:当接收到对所述目标多媒体数据的播放设置时,所述主进程基于所述播放任务通信通道输出与所述播放设置相匹配的播放指令至所述子进程;在所述子进程基于所述播放指令对所述目标多媒体数据进行播放。7.根据权利要求1所述的方法,其特征在于,所述方法还包括:当监测到通信异常时,所述主进程发送实例销毁指令至所述子进程,以使所述子进程根据所述实例销毁指令销毁相匹配的目标子进程播放实例。8.一种多媒体数据播放装置,其特征在于,所述装置包括:第一进程模块,用于当存在通过主进程创建的子进程、且所述子进程与所述主进程间
建立有主服务通信通道时,在所述主进程响应对目标多媒体数据的播放请求,基于所述主服务通信通道,将与所述播放请求对应的通道创建指令以及实例创建指令发送至所述子进程;第二进程模块,用于在所述子进程,基于所述通道创建指令创建与所述主进程之间的播放任务通信通道,并基于所述实例创建指令创建与所述目标多媒体数据对应的子进程播放实例;处理模块,用于启动所述子进程播放实例进行目标多媒体数据播放,并通过所述播放任务通信通道响应所述主进程对所述目标多媒体数据的播放控制。9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。11.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
技术总结
本申请涉及一种多媒体数据播放方法、装置、计算机设备和存储介质。所述方法包括:当存在通过主进程创建的子进程、且子进程与主进程间建立有主服务通信通道时,在主进程响应对目标多媒体数据的播放请求,基于主服务通信通道,将与播放请求对应的通道创建指令以及实例创建指令发送至子进程;在子进程,基于通道创建指令创建与主进程之间的播放任务通信通道,并基于实例创建指令创建与目标多媒体数据对应的子进程播放实例;启动子进程播放实例进行目标多媒体数据播放,并通过播放任务通信通道响应主进程对目标多媒体数据的播放控制。采用本方法能够实现跨进程播放目标多媒体数据,避免主进程达到内存瓶颈,优化进程内存。优化进程内存。优化进程内存。
技术研发人员:张芳
受保护的技术使用者:腾讯科技(北京)有限公司
技术研发日:2022.03.15
技术公布日:2023/9/23
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/