在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

OpenHarmony 3.2 Beta多媒體子系統的媒體庫模塊

2KHh_gh_15d2f06 ? 來源:深開鴻 ? 作者:巴延興 ? 2022-09-16 09:50 ? 次閱讀

巴延興

深圳開鴻數字產業發展有限公司

os框架開發工程師

1.MediaLibrary介紹

OpenAtom OpenHarmony(以下簡稱“OpenHarmony”)MediaLibrary媒體庫提供了一系列易用的接口用于獲取媒體文件元數據信息。MediaLibrary接口是OpenHarmony系統內部使用接口,不是外部三方應用使用的接口。

MediaLibrary的功能支持掃描設備中所有媒體文件的能力,為相冊、音視頻播放器、文件管理器等應用提供統一的媒體元數據信息操作接口,目前可實現的具體能力如下:

● 查詢音頻視頻和圖片文件元數據信息

● 查詢圖片和視頻相冊

● 媒體文件操作如創建、重命名、拷貝和刪除

● 相冊操作如創建、重命名和刪除

MediaLibrary媒體庫代碼倉的位置:foundation/multimedia/media_library

2.代碼結構

89eeeec8-34f7-11ed-ba43-dac502259ad0.png

代碼的框架主要分為Napi和Native兩部分。

NAPI部分實現了媒體資源的查詢、相冊增刪改查的實現及JS接口。

Native部分:

(1)media_library_helper:

主要提供了資源的設置和創建功能,比如相冊的操作、縮略圖操作等,主要涉及到資源文件或者文件夾的創建。

(2)media_library_manager:

主要對媒體庫的相關數據庫進行操作。

(3)media_scanner:

media_library/frameworks/innerkitsimpl/media_scanner中的代碼沒有添加到編譯系統中,OpenHarmony 3.2 Beta版本的掃描代碼主要放在media_library/frameworks/services/media_scanner目錄中。

(4)medialibrary_data_extension:

該目錄中涉及到一些C++源碼和Hap包的應用代碼,目前的掃描、截圖等流程沒有涉及到本目錄的內容。

3.對外接口

getPublicDirectory 查看公共目錄

根據參數傳遞的目錄類型返回不同類型媒體庫的相對目錄。例如:"Cameras/"、"Videos/"、"Pictures/"、"Audios/"、"Documents/"和"Downloads/".

getFileAssets 獲取文件資源

調用DataShareHelper的Query查詢接口,獲取文件資源,最終回調用JsDataShareExtAbility的Query接口實現。

getAlbums 獲取相冊

查詢媒體中的相冊目錄信息。

createAsset 創建資源

調用DataShareHelper提供的Insert()接口插入數據庫,傳入的uri通過“create_asset”字符表示創建數據資源。

deleteAsset 刪除資源

調用DataShareHelper提供的Insert()接口插入數據庫,傳入的uri通過“delete_asset”字符表示刪除數據資源。

4. 媒體庫相關服務

OpenHarmony 3.2 Beta版本的目錄結構進行了比較大的調整,將Services目錄放到了frameworks路徑下,并且相比3.1 Release版本去掉了IPC調用機制。目前,Services目錄下的media_library_data_share和media_thumbnail里面的文件內容為空,后續會完善。

8a0e6c08-34f7-11ed-ba43-dac502259ad0.png

5. 媒體庫相關數據庫

媒體庫操作的數據是在/data/app/el2/100/database/com.ohos.medialibrary.medialibrarydata/media_library.db目錄下。這是SQLite3數據庫的文件,可以使用SqliteManager軟件打開,主要看數據庫的兩部分:

第一部分是Files表數據。

8a2c2680-34f7-11ed-ba43-dac502259ad0.png

Files表格字段:

8a4f6a6e-34f7-11ed-ba43-dac502259ad0.jpg

第二部分是VIEWS中的幾個表,比如相冊查詢、圖片查詢、視頻查詢。

8a79b36e-34f7-11ed-ba43-dac502259ad0.png

6. 代碼流程

截屏流程

8aa788f2-34f7-11ed-ba43-dac502259ad0.png

截屏App通過調用saveImage方法來進行截屏圖片的保存,這個方法通過@ohos.multimedia.mediaLibrary的getMediaLibrary接口獲取到MediaLibrary,調用它的接口會調用到MediaLibraryNapi提供的接口,這個對象是連接JS和Native的橋梁。

首先通過getPublicDirectory獲取到相對路徑,然后通過createAsset創建資源返回fileAsset,再通過fileAsset對文件進行操作(將jpegData數據寫入文件),最后關閉文件,完成截屏圖片的保存。

啟動圖庫流程

8ad9dfaa-34f7-11ed-ba43-dac502259ad0.png

圖庫通過MediaLibraryNapi的getFileAssets接口獲取文件資源,最終返回pixelMap給應用使用。

媒體文件掃描流程

8af7e50e-34f7-11ed-ba43-dac502259ad0.png

MediaLibraryDataManager的InitMediaLibraryMgr接口中最終會調用ScanDir來進行媒體文件掃描,這接口調用到frameworks/services/media_scanner目錄下對應的實現。

7. 總結

本文主要介紹了OpenHarmony 3.2 Beta多媒體子系統的媒體庫模塊,本模塊的接口暫不提供外部三方應用使用,僅提供OpenHarmony系統內部使用。相比于OpenHarmony3.1 Release版本,OpenHarmony 3.2 Beta版本的目錄結構進行了比較大的調整,相關功能期待廣大開發者持續加入并完善。

審核編輯:湯梓紅

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

    關注

    33

    文章

    8712

    瀏覽量

    152013
  • 多媒體
    +關注

    關注

    0

    文章

    504

    瀏覽量

    37093
  • OpenHarmony
    +關注

    關注

    25

    文章

    3751

    瀏覽量

    16660

原文標題:OpenHarmony 3.2 Beta源碼分析之MediaLibrary

文章出處:【微信號:gh_15d2f062a168,微信公眾號:深開鴻】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    直播預告丨OpenHarmony標準系統多媒體子系統之音頻解讀

    社群直播間帶來干貨分享《OpenHarmony標準系統多媒體子系統之音頻解讀》,他將詳細介紹OpenHarmony音頻框架,和大家一起熟悉音
    發表于 05-12 11:31

    直播預告丨OpenHarmony標準系統多媒體子系統之視頻解讀

    OpenHarmony官方社群直播間帶來干貨分享《OpenHarmony標準系統多媒體子系統之視頻解讀》,他將為大家介紹
    發表于 05-18 10:16

    如何通過OpenHarmony系統中集成的ffmpeg和NAPI機制,實現更多的多媒體功能?

    OpenHarmony中集成了ffmpeg的第三方多媒體的很多功能實現需要ffmpeg。另外,媒體文件的處理包含了對音視頻裁剪、音視
    發表于 07-07 10:08

    如何通過OpenHarmony系統中集成的ffmpeg和NAPI機制,實現更多的多媒體功能?

    OpenHarmony中集成了ffmpeg的第三方多媒體的很多功能實現需要ffmpeg。另外,媒體文件的處理包含了對音視頻裁剪、音視
    發表于 07-12 17:13

    如何通過OpenHarmony系統中集成的ffmpeg和NAPI機制,實現更多的多媒體功能?

    OpenHarmony中集成了ffmpeg的第三方多媒體的很多功能實現需要ffmpeg。另外,媒體文件的處理包含了對音視頻裁剪、音視
    發表于 07-25 16:57

    OpenHarmony 3.2 Beta源碼分析之MediaLibrary

    文件掃描,這接口調用到frameworks/services/media_scanner目錄下對應的實現。7. 總結本文主要介紹了OpenHarmony 3.2 Beta多媒體
    發表于 09-19 10:47

    OpenHarmony 3.2 Beta多媒體系列——視頻錄制

    OpenHarmony”)系統中,多媒體子系統通過N-API接口提供給上層JS調用,N-API相當于是JS和Native之間的橋梁,在OpenHa
    發表于 02-09 15:47

    IP多媒體子系統-媒體網關功能有哪些?

    IP多媒體子系統-媒體網關功能有哪些? IP多媒體子系統-媒體網關功能(IMS-MGF)
    發表于 04-07 16:24 ?836次閱讀

    直播預告OpenHarmony標準系統多媒體子系統之相機解讀

    岳峰老師,將在 OpenHarmony 官方社群直播間帶來干貨分享《OpenHarmony 標準系統多媒體子系統之相機解讀》,他將為大家介紹
    的頭像 發表于 05-25 11:43 ?1188次閱讀
    直播預告<b class='flag-5'>OpenHarmony</b>標準<b class='flag-5'>系統</b><b class='flag-5'>多媒體</b><b class='flag-5'>子系統</b>之相機解讀

    基于OpenHarmony 3.2 Beta1版本的媒體能力

    如圖所示,OpenHarmony 多媒體子系統拉起了一個叫 mediaserver 的服務來處理媒體事務,并且封裝了接口層包括JS接口、native 接口提供給 APP 調用,medi
    的頭像 發表于 07-01 10:58 ?1484次閱讀

    OpenHarmony 3.2 Beta多媒體系列——音視頻播放gstreamer

    到gstreamer的過程。 此前,我在《OpenHarmony 3.2 Beta多媒體系列-音視頻播放框架 》一文中,主要分析了多媒體播放
    的頭像 發表于 11-23 21:10 ?1269次閱讀

    OpenHarmony 3.2 Beta多媒體系列:音視頻播放gstreamer

    到gstreamer的過程。 此前,我在《OpenHarmony 3.2 Beta多媒體系列-音視頻播放框架》 一文中,主要分析了多媒體播放
    的頭像 發表于 11-25 09:10 ?976次閱讀

    OpenHarmony 3.2 Beta多媒體系列:視頻錄制

    一、簡介 媒體子系統為開發者提供了媒體相關的很多功能,本文針對其中的視頻錄制功能做個詳細的介紹。首先,我將通過媒體子系統提供的視頻錄制Tes
    的頭像 發表于 02-15 15:55 ?552次閱讀

    鴻蒙實戰開發:【相機和媒體庫

    在ArkTS中調用相機拍照和錄像,以及如何使用媒體庫接口進行媒體文件的增、刪、改、查操作。本示例用到了
    的頭像 發表于 03-20 16:36 ?870次閱讀
    鴻蒙實戰開發:【相機和<b class='flag-5'>媒體庫</b>】

    鴻蒙開發接口媒體:【@ohos.multimedia.medialibrary (媒體庫管理)】

    獲取媒體庫的實例,用于訪問和修改用戶等個人媒體數據信息(如音頻、視頻、圖片、文檔等)。
    的頭像 發表于 06-03 11:52 ?1279次閱讀
    鴻蒙開發接口<b class='flag-5'>媒體</b>:【@ohos.multimedia.medialibrary (<b class='flag-5'>媒體庫</b>管理)】
    主站蜘蛛池模板: 国产精品久久久久久久久久免费 | 狠狠狠色丁香婷婷综合激情 | 在线播放国产不卡免费视频 | 四虎成人免费网站在线 | 天天舔天天干 | 日本在线视频www色 日本在线视频精品 | 爱爱欧美| 亚洲一二三四 | 美女淫 | 亚洲欧美日韩在线观看你懂的 | 777国产精品永久免费观看 | 国产激情电影综合在线看 | 末满18以下勿进色禁网站 | 97干干 | 奇米影视7777 | 人人成人免费公开视频 | aaaaaaa毛片| 性配久久久 | 日日夜夜精品 | 亚洲精品成人久久久影院 | 国产精品视频久久久久久 | 美女露出尿囗 | 亚洲码欧美码一区二区三区 | 久久精品国产2020观看福利色 | 欧美亚洲综合另类型色妞 | 性感美女视频黄.免费网站 性高清 | 亚洲国产精品综合久久2007 | 中文字幕在线永久在线视频2020 | 精品四虎免费观看国产高清午夜 | 国产婷婷色一区二区三区深爱网 | 午夜噜噜噜私人影院在线播放 | 丁香欧美 | 天天做天天爱夜夜爽毛片毛片 | 久久综合狠狠综合久久综合88 | 四虎国产精品免费入口 | 扒开双腿疯狂进出爽爽爽 | 亚洲 另类色区 欧美日韩 | 波多野结衣在线一区 | 噜噜噜色网 | 日本系列 1页 亚洲系列 | 欧美福利视频网站 |