鸿蒙os初探

鸿蒙os开源了,算是里程碑的一步吧,主要先简单了解下,操作系统嘛,肯定是以c/c++为主,加少量汇编,但是上层应用开发到底是使用什么语言还不得而知,不管是java还是kotlin都是有限制的,c/c++门槛又高些,对现在的应用层开发不友好,所以这也是一个值得考虑的问题,可能到时候也会出来一门新的高级编程语言也说不准,ios的叫oc,鸿蒙的叫hc。

封闭性客观来讲对程序员是十分不友好,学习成本比较高,oc\java\c#\hc…… 但也没办法,毕竟拿人手短,吃人嘴软,要想摆脱控制,只能自力更生。

书归正传,主要先看一下鸿蒙os的媒体模块。

鸿蒙os开源地址

https://openharmony.gitee.com/openharmony

媒体框架图

多媒体业务流程图

目录结构轻量级多媒体子系统源代码目录结构

名称

描述

foundation/multimedia/frameworks

内部框架实现,包括audio,camera,player.recorder

foundation/multimedia/interfaces/kits

应用接口对外头文件

foundation/multimedia/services/media_lite

应用接口底层服务实现

foundation/multimedia/utils/lite

应用接口通用模块实现

foundation/multimedia/hals

硬件平台相关媒体适配接口头文件

涉及仓

multimedia_frameworks_camera_lite

multimedia_frameworks_audio_lite

multimedia_frameworks_player_lite

multimedia_frameworks_recorder_lite

multimedia_hals_camera_lite

multimedia_interfaces_kits_recorder_lite

multimedia_interfaces_kits_audio_lite

multimedia_interfaces_kits_camera_lite

multimedia_interfaces_kits_player_lite

multimedia_services_media_lite

multimedia_utils_lite

 

媒体框架可以说是比较成熟了,咋一看架构图,包含的东西跟android没啥区别,模式也都差不多。

1.底层采用使用了ffmpeg解复用、解码。

2.支持的格式现在是mp4

3.应用层也是通过IPC调用与CameraServer\RecorderServer\PlayerServer 等系统服务通信,这一层叫core service,利用平台提供的能力去实现对底层硬件及相关驱动使用,另外core server实现文件管理,存储管理及日志管理。

 

简单看了下源码

如果都是中国人开发的系统,为什么注释不用中文? 😄

不过大部分代码是没有注释,引进开源的代码都是原来的注释,时间紧张,也没空写注释了。

 

写在最后,还是希望这事能成吧,一起见证下这个可以载入计算机历史的壮举~

这是一个灵活的视频播放器。 MediaPlayer与VideoView完全分开,可以替换为其他播放器内核,如ExoPlayer和ijkPlayer。 可以完全自定义播放器视图,我们称之为控制面板。 此外,可以使用MediaPlayerManager来控制播放行为,例如全屏模式,小屏幕模式以及RecyclerView中的智能匹配模式。Features全屏,小屏播放内部支持RecyclerView中播放自定义UIAPP内全局播放静音循环播放手势操作(小窗:单指拖动,双指缩放;全屏:音量,亮度,快进)ijkPlayer支持ExoPlayer支持重力感应支持PreviewDownloadDemo DownloadGetting startedbuild.gradledependencies {     // required     implementation 'org.salient.artvideoplayer:artplayer-java:0.6.0'     // Default control panel: optional     implementation 'org.salient.artvideoplayer:artplayer-ui:0.6.0'      //ijkPlayer: optional      implementation 'org.salient.artvideoplayer:artplayer-ijk:0.6.0'      implementation "org.salient.artvideoplayer:artplayer-armv7a:0.6.0"       //Other ABIs: optional      implementation "org.salient.artvideoplayer:artplayer-armv5:0.6.0"      implementation "org.salient.artvideoplayer:artplayer-x86:0.6.0"      // Other ABIs: optional (minSdk version >= 21)      implementation "org.salient.artvideoplayer:artplayer-arm64:0.6.0"      implementation "org.salient.artvideoplayer:artplayer-x86_64:0.6.0"      //ExoPlayer2 : optional      implementation "org.salient.artvideoplayer:artplayer-exo:0.6.0" }Usagejavaimport org.salient.artplayer.VideoView;VideoView videoView = new VideoView(this); videoView.setUp("http://vfx.mtime.cn/Video/2018/06/27/mp4/180627094726195356.mp4"); videoView.setControlPanel(new ControlPanel(this)); videoView.start();xmlAndroidManifest.xml <!-- required -->Activity@Overridepublic void onBackPressed() {  if (MediaPlayerManager.instance().backPress(this)) {      return;   }  super.onBackPressed(); }@Overrideprotected void onPause() {  super.onPause();  MediaPlayerManager.instance().pause(); }@Overrideprotected void onDestroy() {  super.onDestroy();  MediaPlayerMa
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值