一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种视频播放方法、装置、电子设备及存储介质与流程

2022-06-11 16:41:28 来源:中国专利 TAG:


1.本发明属于软件开发领域,尤其涉及一种视频播放方法、装置、电子设备及存储介质。


背景技术:

2.随着车厂个性化需求越来越多,对于ui定制的要求也来与多样。车机视频app也是一样,视频功能主要是播放控制和列表的显示,功能较为固定。一般都是画面和声音一起播放,由一个app去实现,难以满足当前ui定制需求,视频播放不够灵活。


技术实现要素:

3.有鉴于此,本发明实施例提供了一种视频播放方法、装置、电子设备及存储介质,用于解决现有车机视频播放不能满足用户定制需求的问题。
4.在本发明实施例的第一方面,提供了一种视频播放方法,包括:
5.定义通用sdk协议,并定义界面接口以建立客户端显示界面与服务端媒体播放器的连接;
6.客户端通过textureview控件接收并渲染视频流画面,并通过显示纹理监听函数回调界面设置到服务端媒体播放器;
7.服务端接收到界面设置指令后,显示媒体播放器数据源加载和播放流程,并在客户端显示视频的播放控制和视频列表。
8.在本发明实施例的第二方面,提供了一种视频播放装置,包括:
9.客户端,用于通过textureview控件接收并渲染视频流画面,并通过显示纹理监听函数回调界面设置到服务端媒体播放器,以及显示视频的播放控制和视频列表;
10.服务端,用于接收到界面设置指令后,显示媒体播放器数据源加载和播放流程;
11.其中,定义通用sdk协议,并定义界面接口以建立客户端显示界面与服务端媒体播放器的连接。
12.在本发明实施例的第三方面,提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如本发明实施例第一方面所述方法的步骤。
13.在本发明实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例第一方面提供的所述方法的步骤。
14.本发明实施例中,将ui界面用于视频播放控制和视频列表显示,服务端app用于视频播放器功能的实现,实现视频播放ui界面与功能实现的分离,代码耦合度低,方便ui组件定制化设计,实现视频播放的灵活控制,并能提高开发和学习的效率。
附图说明
15.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍,显而易见地,下面描述的附图仅仅是本发明的一些实施例,对本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获取其他附图。
16.图1为本发明一个实施例提供的一种视频播放方法的流程示意图;
17.图2为本发明一个实施例提供的一种视频播放方法的另一流程示意图;
18.图3为本发明一个实施例提供的一种视频播放列表加载流程示意图;
19.图4为本发明一个实施例提供的一种视频播放装置的结构示意图;
20.图5为本发明的一个实施例提供的一种电子设备的结构示意图。
具体实施方式
21.为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
22.应当理解,本发明的说明书或权利要求书及上述附图中的术语“包括”以及其他相近意思表述,意指覆盖不排他的包含,如包含一系列步骤或单元的过程、方法或装置、设备没有限定于已列出的步骤或单元。此外,“第一”“第二”用于区分不同对象,并非用于描述特定顺序。
23.请参阅图1,本发明实施例提供的一种视频播放方法的流程示意图,包括:
24.s101、定义通用sdk协议,并定义界面接口以建立客户端显示界面与服务端媒体播放器的连接;
25.所述显示界面指的是surface屏幕显示,其对应一块屏幕缓冲区并包含有canvas对象,用来绘制图形和图像。所述服务端即service端,是一种可以在后台执行长时间运行操作而没有用户界面的应用组件,服务一旦被启动将在后台一直运行,activity组件可以绑定服务,并与之进行交互,执行进程间通信,服务可以处理网络事务、播放音乐视频等。
26.定义通用的sdk(software development kit,即软件开发工具包)协议,定义设置surface接口建立client的surface和service端的mediaplayer连接,进而实现画面和音频的同步播放。
27.s102、客户端通过textureview控件接收并渲染视频流画面,并通过显示纹理监听函数回调界面设置到服务端媒体播放器;
28.通过textureview控件承载视频播放的画面,用于画面的绘制展示。所述textureview控件可用于展示内容流,如视频或opengl场景的内容流,内容流可来自本应用程序或其他进程。
29.所述显示纹理监听函数即surfacetexturelistener函数,用于监听获取surface的显示纹理。
30.具体的,如图2所示,通过surfacetexturelistener回调的surface设置到服务端
的媒体播放器中。
31.s103、服务端接收到界面设置指令后,显示媒体播放器数据源加载和播放流程,并在客户端显示视频的播放控制和视频列表。
32.所述界面设置指令即setsurface指令,其用于表示对surface的界面设置指令。服务端收到setsurface的指令后,会同时显现mediaplay数据源加载和播放流程。
33.其中,所述服务端提供对外调用的aidl接口以实现播放控制。视频服务提供对外调用的aidl(android interface definition language)接口,各模块可以灵活实现播放控制。
34.优选的,所述客户端和所述服务端均通过contentpriver进行视频数据查询和加载。
35.在一个实施例中,如图3所示,视频功能分为视频app ui和视频service app,两个单独模块的实现。两层之间的通信方式通过binder来实现跨进程的通信。定义视频播放控制的功能协议和设置surface的接口,进入视频画面满足动态添加textureview,监听返回的surface对象设置到视频的服务端,实现画面和音频建立连接,通过视频解码实现视频画面的正常播放,视频服务启动后,进行播放器的初始化,同时实现视频数据源的加载和获取。
36.其中,视频ui app和视频service app均通过contentprovider数据共享实现数据查询和加载,可以避免aidl接口传输数据大小受限的问题。
37.服务端通过下发的协议做对应功能的实现,同时针对于mediaplay初始化和视频播放做了时序控制。
38.本实施例中,基于视频客户端ui和服务端service app的功能分离设计,可以降低新人的学习成本,视频播放控制协议固化,不需要关心具体的功能实现,通过协议,就可以轻松完成ui画面的绘制,同时,代码耦合度低,ui组件可以任何灵活变化,进而满足车厂ui多变的定制需求。前后台切换灵活控制,即可实现后台视频播放,也可以实现后台播放停止,可以灵活控制前后台视频播放。主题切换会导致页面重新创建,但不会出现视频播放突然停止的问题。
39.应理解,上述实施例中各步骤的序号大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
40.图4为本发明实施例提供的一种视频播放装置的结构示意图,该装置包括:
41.客户端模块410,用于通过textureview控件接收并渲染视频流画面,并通过显示纹理监听函数回调界面设置到服务端媒体播放器,以及显示视频的播放控制和视频列表。
42.具体的,通过surfacetexturelistener函数回调的surface设置到服务端的媒体播放器中。
43.服务端模块420,用于接收到界面设置指令后,显示媒体播放器数据源加载和播放流程;
44.其中,定义通用sdk协议,并定义界面接口以建立客户端显示界面与服务端媒体播放器的连接。
45.具体的,将视频功能分为客户端视频app ui和服务端视频service app,两个模块间通过binder机制实现跨进程的通信。
46.其中,所述服务端提供对外调用的aidl接口以实现播放控制。
47.优选的,所述客户端和所述服务端均通过contentprovider数据共享进行视频数据查询和加载。
48.所述领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和模块的具体工作过程可以参考前述方法实施例中对应的过程,在此不再赘述。
49.图5是本发明一实施例提供的一种电子设备的结构示意图。所述电子设备用于车机本地视频播放。如图5所示,该实施例的电子设备5包括:存储器510、处理器520以及系统总线530,所述存储器510包括存储其上的可运行的程序5101,本领域技术人员可以理解,图5中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
50.下面结合图5对电子设备的各个构成部件进行具体的介绍:
51.存储器510可用于存储软件程序以及模块,处理器520通过运行存储在存储器510的软件程序以及模块,从而执行电子设备的各种功能应用以及数据处理。存储器510可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据(比如缓存数据)等。此外,存储器510可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
52.在存储器510上包含标志牌提取方法的可运行程序5101,所述可运行程序5101可以被分割成一个或多个模块/单元,所述一个或多个模块/单元被存储在所述存储器510中,并由处理器520执行,以实现车机视频播放的ui分离等,所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序5101在所述电子设备5中的执行过程。例如,所述计算机程序5101可以被分割为客户端模块和服务端模块。
53.处理器520是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器510内的软件程序和/或模块,以及调用存储在存储器510内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体状态监控。可选的,处理器520可包括一个或多个处理单元;优选的,处理器520可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器520中。
54.系统总线530是用来连接计算机内部各功能部件,可以传送数据信息、地址信息、控制信息,其种类可以是例如pci总线、isa总线、vesa总线等。处理器520的指令通过总线传递至存储器510,存储器510反馈数据给处理器520,系统总线530负责处理器520与存储器510之间的数据、指令交互。当然系统总线530还可以接入其他设备,例如网络接口、显示设备等。
55.在本发明实施例中,该电子设备所包括的处理520执行的可运行程序包括:
56.定义通用sdk协议,并定义界面接口以建立客户端显示界面与服务端媒体播放器的连接;
57.客户端通过textureview控件接收并渲染视频流画面,并通过显示纹理监听函数
回调界面设置到服务端媒体播放器;
58.服务端接收到界面设置指令后,显示媒体播放器数据源加载和播放流程,并在客户端显示视频的播放控制和视频列表。
59.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
60.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
61.以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献