精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

鴻蒙開發學習:【媒體引擎組件】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-03-11 17:16 ? 次閱讀

簡介

HiStreamer是一個輕量級的媒體引擎組件,提供播放、錄制等場景的媒體數據流水線處理。

  • 播放場景分為如下幾個節點:數據源讀取、解封裝、解碼、輸出;
  • 錄制場景分為如下幾個節點:數據源讀取、編碼、封裝、輸出。

這些節點的具體功能,主要在插件中實現。可以插件的形式擴展支持新的數據源、封裝格式、編解碼格式、輸出方式。

邏輯架構

HiStreamer作為媒體引擎,向上對接player_framework(standard設備上)或者media_lite(mini/small設備上),再對外提供應用API。它內部分為三層:

  • 應用場景封裝層: 比如HiPlayer, HiRecorder。
  • Pipeline框架層: 包括Pipeline框架,各個Filter節點實現。
  • 插件層: 包括插件框架,各種插件。

邏輯架構圖

插件列表

HiStreamer插件列表如下:

插件名稱路徑外部依賴License功能適用場景
FFMPEG Adapterplugins/ffmpeg_adapterFFMPEGLGPL etc.解封裝:mp3,m4a,mp4,wav 解碼:mp3,aac支持動態鏈接的 small/standard設備
File Sourceplugins/source/file_sourceFileSystemApache讀取文件數據所有設備
Minimp3 Adapterplugins/minimp3_adapterminimp3CC0解封裝: mp3 解碼: mp3所有設備
Minimp4 Demuxerplugins/demuxer/minimp4_demuxerminimp4CC0解封裝: m4a所有設備
Aac Demuxerplugins/demuxer/aac_demuxerNAApache解封裝: aac所有設備
HDI Sinkplugins/hdi_adapterAudio HDIApache播放音樂mini/small設備

目錄

倉目錄結構如下:

/foundation/multimedia/histreamer      # HiStreamer媒體引擎組件業務代碼
├─LICENSE                              # 證書文件
├─engine                               # 引擎代碼
│  ├─foundation                        # 基礎工具類, 包括OS適配
│  ├─include                           # 為其它模塊調用histreamer暴露必要的頭文件,包括調用pipeline/filter,或者調用插件
│  │  ├─foundation                     # histreamer基礎工具庫,包括日志打印、Buffer工具、操作系統適配、語言擴展等
│  │  ├─pipeline                       # pipeline框架的頭文件,主要是pipeline/filter接口
│  │  └─plugin                         # 插件相關的頭文件
│  │      ├─common                     # 插件接口依賴的基礎類型頭文件
│  │      └─interface                  # 插件接口
│  ├─pipeline                          # pipeline框架
│  │  ├─core                           # pipeline核心實現
│  │  ├─factory                        # filter工廠
│  │  └─filters                        # 若干filter節點實現
│  │      ├─codec                      # 編解碼節點實現
│  │      ├─common                     # filters依賴的基礎類型定義
│  │      ├─demux                      # 解封裝節點實現
│  │      ├─muxer                      # 封裝節點實現
│  │      ├─sink                       # 輸出節點實現
│  │      └─source                     # 數據源節點實現
│  ├─plugin                            # 插件
│  │  ├─common                         # 插件接口依賴的基礎類型定義
│  │  ├─core                           # 插件框架,各個插件的代理類
│  │  └─plugins                        # 若干插件實現
│  │      ├─codec_adapter              # 硬件編解碼適配
│  │      ├─minimp3_adapter            # minimp3適配
│  │      ├─ffmpeg_adapter             # FFMPEG適配(適配成封裝解封裝、編解碼插件)
│  │      ├─hdi_adapter                # HDI適配(適配成輸出插件)
│  │      ├─lite_aac_decoder           # 輕量級AAC解碼器插件
│  │      ├─demuxer                    # 解封裝插件
│  │      ├─sink                       # 輸出插件
│  │      └─source                     # 數據源插件
│  └─scene                             # 播放錄制等場景的封裝實現
│  │  ├─common                         # 共用的基礎類型定義
│  │  ├─lite                           # 對接到輕量設備的接口實現
│  │  ├─player                         # 播放場景實現
│  │  ├─recorder                       # 錄制場景實現
│  │  └─standard                       # 對接到標準設備的接口實現
└─interface                            # 引擎對外接口

審核編輯 黃宇

審核編輯 黃宇

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

    關注

    0

    文章

    180

    瀏覽量

    27364
  • 鴻蒙
    +關注

    關注

    57

    文章

    2310

    瀏覽量

    42743
收藏 人收藏

    評論

    相關推薦

    鴻蒙ArkTS媒體組件:Polygon

    多邊形繪制組件
    的頭像 發表于 07-17 15:05 ?289次閱讀
    <b class='flag-5'>鴻蒙</b>ArkTS<b class='flag-5'>媒體</b><b class='flag-5'>組件</b>:Polygon

    鴻蒙ArkTS媒體組件:Line

    直線繪制組件
    的頭像 發表于 07-17 10:25 ?378次閱讀
    <b class='flag-5'>鴻蒙</b>ArkTS<b class='flag-5'>媒體</b><b class='flag-5'>組件</b>:Line

    鴻蒙ArkTS媒體組件:Polyline

    折線繪制組件
    的頭像 發表于 07-17 09:43 ?238次閱讀
    <b class='flag-5'>鴻蒙</b>ArkTS<b class='flag-5'>媒體</b><b class='flag-5'>組件</b>:Polyline

    鴻蒙ArkTS媒體組件:Ellipse

    橢圓繪制組件
    的頭像 發表于 07-16 15:20 ?263次閱讀

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

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

    鴻蒙OS開發學習:【尺寸適配實現】

    鴻蒙開發中,尺寸適配是一個重要的概念,它可以幫助我們在不同屏幕尺寸的設備上正確顯示和布局我們的應用程序。本文將介紹如何在鴻蒙開發中實現尺寸適配的方法。
    的頭像 發表于 04-10 16:05 ?1678次閱讀
    <b class='flag-5'>鴻蒙</b>OS<b class='flag-5'>開發</b><b class='flag-5'>學習</b>:【尺寸適配實現】

    深圳市24年,實現鴻蒙原生應用數占全國總量10%以上

    有更多的鴻蒙人才。鴻蒙開發工程師也將會迎來爆發式的增長,學習鴻蒙勢在必行! ?要從事鴻蒙
    發表于 03-04 21:42

    鴻蒙實戰項目開發:【短信服務】

    、OpenHarmony 多媒體技術、Napi組件、OpenHarmony內核、Harmony南向開發鴻蒙項目實戰等等)鴻蒙(Harmon
    發表于 03-03 21:29

    鴻蒙媒體開發【簡述】

    錄制)、圖片等。 如下圖所示,媒體系統面向應用開發提供音視頻應用、圖庫應用的編程框架接口;面向設備開發提供對接不同硬件芯片適配加速功能;中間以服務形態提供媒體核心功能和管理機制。 音
    發表于 02-28 17:53

    學習鴻蒙背后的價值?星河版開放如何學習

    需要有更多的鴻蒙人才;鴻蒙開發工程師也將會迎來爆發式的增長! 所以學習鴻蒙勢在必行,而大部分人都能適合學
    發表于 02-22 20:55

    鴻蒙ArkUI開發-Tabs組件的使用

    鴻蒙ArkUI開發-Tabs組件的使用
    的頭像 發表于 01-19 16:01 ?1771次閱讀
    <b class='flag-5'>鴻蒙</b>ArkUI<b class='flag-5'>開發</b>-Tabs<b class='flag-5'>組件</b>的使用

    鴻蒙開發OpenHarmony組件復用案例

    ) } }, item => item) } } } 本文主要是對鴻蒙開發基礎當中的OpenHarmony技術組件復用示例, 更多鴻蒙開發
    發表于 01-15 17:37

    鴻蒙開發基礎-Web組件之cookie操作

    }) ... } ... 本文章主要是對鴻蒙開發當中ArkTS語言的基礎應用實戰,Web組件里的cookie操作。更多的鴻蒙應用開發
    發表于 01-14 21:31

    免費學習鴻蒙(HarmonyOS)開發,一些地址分享

    國內一流高校。通過鴻蒙班的設立,高校可以為學生提供專業的鴻蒙OS學習環境和豐富的實踐機會,培養出更多的鴻蒙開發人才,為
    發表于 01-12 20:48

    鴻蒙基礎開發實戰-(ArkTS)像素轉換

    的使用。通過像素轉換案例,向開發者講解了如何使用像素單位設置組件的尺寸、字體的大小以及不同像素單位之間的轉換方法。更多鴻蒙4.0的學習,可以前往主頁
    發表于 01-11 16:53