色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

鴻蒙系統的媒體子系統,從何說起呢?

電子工程師 ? 來源:HarmonyOS社區 ? 作者:HarmonyOS社區 ? 2021-01-13 09:51 ? 次閱讀

要探究鴻蒙系統的媒體子系統,從何說起呢?我是從源碼目錄下 applications 下的應用開始的,不過既然在這里記錄下來,就從更清晰的角度來切入。

首先,看權威介紹:

https://gitee.com/openharmony/docs/blob/master/readme/媒體子系統README.md

由該readme可知,子系統雖然底層龐大且盤根錯節,但是,面向應用層,其宗旨(原文)是:

旨在為多媒體應用開發者開發者提供統一的開發接口,使得開發者可以專注于應用業務的開發,輕松使用多媒體的資源。

也就是說,封裝之后的耦合程度大大降低了。實際上,應用層僅需實現少量回調函數并按流程操作,即可輕松實現諸如拍照、錄像、預覽等功能。

我們首先來一下瀏覽框架及流程圖,有助于接下來的底層分析。

26a9d634-5146-11eb-8b86-12bb97331649.png

26cc4c78-5146-11eb-8b86-12bb97331649.png

回看源碼。源碼如下applications/sample/camera/media/camera_sample.cpp

中實現的拍照、錄像功能,以此為起點,探究一下系統的多媒體框架,并介紹關鍵組件。

根據對代碼的閱讀,我先將類圖大體上整理出來(水平有限,且時間倉促,錯誤之處望各位不吝賜教):

26f5fcf8-5146-11eb-8b86-12bb97331649.png

在 camera_sample.cpp 的 main() 中,首先調用 CameraKit::GetInstance() 獲取一個 CameraKit 實例 camKit;得到實例后繼而調用 camKit-》GetCameraIds() 獲取 camera ID 列表,遍歷列表,獲取每個ID的對應的camera的ability,找到其中支持指定目標大小的camera ID。

通過CameraKit 實例調用camKit-》CreateCamera(camId, CamStateMng, eventHdlr) 來構造 camera,以下是涉及的相關類及其關系。

由關系圖可知,CameraKit 中聚合了 CameraManager,實際上是由 CameraManagerImpl 繼承并拓展了該類,CameraManager 內部持有CameraManagerImpl類的實例,即cameraManagerImpl,后續的相關操作由該成員來完成。

緊接著來看CameraManagerImpl類,其成員中有:

CameraService *cameraService_;

該成員是一個關鍵,它內部聚合了:

CameraDevice *device_ = nullptr;

CameraAbility *ability_ = nullptr;

CameraServiceCallback *cameraServiceCb_ = nullptr;

其中:CameraAbility 類型的 ability_ 用來描述CameraService的能力;CameraServiceCallback 類型的 cameraServiceCb_ 用來在構造CameraManagerImpl實例時候對CameraService做一些初始化工作及camera狀態改變的處理;CameraDevice 類型的 device_ 成員是類 CameraService的核心;

下面詳細分析CameraDevice類;

CameraDevice類涉及到了HAL層及硬件編解碼器的操作,由于底層被封裝為庫文件的形式,給理解帶來的一定的障礙,不過可以暫時先忽略細節,把焦點放到框架上,接下來對其涉及的各個模塊做深入分析。

責任編輯:lq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 解碼器
    +關注

    關注

    9

    文章

    1147

    瀏覽量

    40874
  • 封裝
    +關注

    關注

    127

    文章

    7990

    瀏覽量

    143269
  • 鴻蒙系統
    +關注

    關注

    183

    文章

    2638

    瀏覽量

    66599
  • OpenHarmony
    +關注

    關注

    25

    文章

    3744

    瀏覽量

    16488

原文標題:OpenHarmopny的媒體子系統_1

文章出處:【微信號:HarmonyOS_Community,微信公眾號:電子發燒友開源社區】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    云天勵飛DeepEdge10芯片與國產鴻蒙操作系統完成適配

    日前,DeepEdge10芯片已完成國產鴻蒙操作系統的適配。目前已構建適配鴻蒙的芯片編譯平臺框架,完成圖形等子系統的適配。基于DeepEdge10的
    的頭像 發表于 01-24 10:14 ?149次閱讀

    名單公布!【書籍評測活動NO.53】鴻蒙操作系統設計原理與架構

    , 分門別類地闡述鴻蒙操作系統關鍵子系統的技術架構和主要設計思路,包括內核、方舟運行時、圖形、媒體、驅動框架、各種分布式技術,以及安全、DFX 等方面的相關架構設計思路 。 圍繞Har
    發表于 12-16 15:10

    PRU子系統特性比較

    電子發燒友網站提供《PRU子系統特性比較.pdf》資料免費下載
    發表于 09-03 11:13 ?0次下載
    PRU<b class='flag-5'>子系統</b>特性比較

    鴻蒙開發接口媒體:【@ohos.multimedia.media (媒體服務)】

    媒體子系統為開發者提供一套簡單且易于理解的接口,使得開發者能夠方便接入系統并使用系統媒體資源。
    的頭像 發表于 06-06 11:03 ?935次閱讀
    <b class='flag-5'>鴻蒙</b>開發接口<b class='flag-5'>媒體</b>:【@ohos.multimedia.media (<b class='flag-5'>媒體</b>服務)】

    鴻蒙OpenHarmony開發板:【子系統配置規則】

    通過build倉下的subsystem_config.json可以查看所有子系統的配置規則。
    的頭像 發表于 05-08 22:07 ?311次閱讀
    <b class='flag-5'>鴻蒙</b>OpenHarmony開發板:【<b class='flag-5'>子系統</b>配置規則】

    鴻蒙系統三防平板怎么樣

    鴻蒙系統三防平板是一款功能強大、性能卓越的平板電腦,其獨特的三防設計使其成為各種惡劣環境下的理想選擇。無論是戶外探險、工地作業還是軍事應用,鴻蒙系統三防平板都能為用戶提供穩定、可靠的性
    發表于 04-12 14:26

    鴻蒙開發圖形圖像:【圖形子系統

    圖形子系統主要包括UI組件、布局、動畫、字體、輸入事件、窗口管理、渲染繪制等模塊,構建基于輕量OS應用框架滿足硬件資源較小的物聯網設備或者構建基于標準OS的應用框架滿足富設備的OpenHarmony系統應用開發。
    的頭像 發表于 03-23 16:50 ?688次閱讀
    <b class='flag-5'>鴻蒙</b>開發圖形圖像:【圖形<b class='flag-5'>子系統</b>】

    鴻蒙開發學習:【驅動子系統

    OpenHarmony驅動子系統采用C面向對象編程模型構建,通過平臺解耦、內核解耦,兼容不同內核,提供了歸一化的驅動平臺底座,旨在為開發者提供更精準、更高效的開發環境,力求做到一次開發,多系統部署。
    的頭像 發表于 03-17 22:05 ?643次閱讀
    <b class='flag-5'>鴻蒙</b>開發學習:【驅動<b class='flag-5'>子系統</b>】

    鴻蒙開發實戰:【電話服務子系統

    電話服務子系統,提供了一系列的API用于獲取無線蜂窩網絡和SIM卡相關的一些信息。應用可以通過調用API來獲取當前注冊網絡名稱、網絡服務狀態、信號強度以及SIM卡的相關信息。
    的頭像 發表于 03-14 21:49 ?429次閱讀
    <b class='flag-5'>鴻蒙</b>開發實戰:【電話服務<b class='flag-5'>子系統</b>】

    鴻蒙開發實戰:【包管理子系統

    包管理子系統負責應用安裝包的管理,提供安裝包的信息查詢、安裝、更新、卸載和包信息存儲等能力
    的頭像 發表于 03-14 15:23 ?754次閱讀
    <b class='flag-5'>鴻蒙</b>開發實戰:【包管理<b class='flag-5'>子系統</b>】

    鴻蒙媒體開發【簡述】

    媒體系統架構 媒體系統提供用戶視覺、聽覺信息的處理能力,如音視頻信息的采集、壓縮存儲、解壓播放等。在操作系統實現中,通常基于不同的媒體信息處理內容,將
    發表于 02-28 17:53

    純血鴻蒙系統,拿什么與安卓、iOS比?

    減少了40%的冗余代碼后,HarmonyOS NEXT 的系統流暢度、能效、純凈安全特性等提升顯著。 所以鴻蒙是作為開發者近10年的最具有潛力的發展道路,那么鴻蒙的底層技術到底是什么
    發表于 02-21 21:04

    鴻蒙系統優缺點,能否作為開發者選擇

    凡是都有對立面,就直接說說鴻蒙的優缺點吧。 鴻蒙的缺點: 鴻蒙是從2019年開始做出來的,那時候是套殼Android大家都知曉。從而導致大家不看鴻蒙
    發表于 02-16 21:00

    華為鴻蒙系統怎么樣 華為鴻蒙系統和安卓系統的區別

    華為鴻蒙系統是華為公司自主研發的全場景分布式操作系統,于2019年8月首次發布。鴻蒙系統不同于傳統的操作
    的頭像 發表于 02-02 14:54 ?1946次閱讀

    如何在鴻蒙系統上安裝Google Play

    隨著鴻蒙(HarmonyOS)系統的逐漸普及和用戶基數的增加,一些用戶希望能在鴻蒙系統上使用Google Play商店以獲取更多應用。然而,由于鴻蒙
    的頭像 發表于 01-31 17:13 ?1.7w次閱讀
    主站蜘蛛池模板: 一本道色综合手机久久 | 美女坐脸vk | A级韩国乱理伦片在线观看 a级成人免费毛片完整版 | 色多多污污下载 | 人妻免费视频公开上传 | 伊人香蕉在线播放视频免费 | 国产在线精品亚洲第一区 | 菠萝菠萝蜜在线观看视频 | 亚洲国产成人一区二区在线 | av免费网站不卡观看 | 一本色道久久88综合日韩精品 | 97国产在线播放 | 国产亚洲精品福利视频 | 国产亚洲精品久久久999蜜臀 | 麻豆精品乱码WWW久久密 | 久久精品AV麻豆 | 亚洲色图p | 天堂网久久| 中文字幕日本一区 | 性高跟鞋xxxxhd | 亚洲免费国产 | 国产午夜久久影院 | 一个人免费视频在线观看高清版 | 一本道久在线综合道 | 好男人的视频在线观看 | 亚洲中文字幕永久在线全国 | 处 女 开 破小说 | 被肉日常np快穿高h 被肉日常np高h | 亚洲中文热码在线视频 | 国产精品成人影院 | 好爽胸大好深好多水 | 日本超A大片在线观看 | 国产永久免费观看视频软件 | 久久大香线蕉综合爱 | 诱人的女邻居9中文观看 | 俄罗斯6一12呦女精品 | 青青草在线视频 | 最新国产成人综合在线观看 | 国产精品久久人妻无码网站一区无 | AV天堂午夜精品蜜臀AV | 偷拍精品视频一区二区三区 |