18 Star 18 Fork 77

OpenHarmony / multimedia_histreamer

Create your Gitee Account
Explore and code with more than 8 million developers,Free private repositories !:)
Sign up
Clone or Download
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README.md

HiStreamer

Introduction

HiStreamer is the foundation module of the multimedia subsystem. It provides a processing pipeline and plug-ins required by the media framework, such as the file source, codecs, muxer and demuxer, and audio and video data processor.

Logical architecture

As a media engine, HiStreamer connects to media_standard (on a Standard device) or media_lite (on a Mini or Small device) and provides application apis externally. It is divided into three layers:

  • Application scenario Encapsulation layer: for example, HiPlayer and HiRecorder.
  • Pipeline framework layer: including Pipeline framework, each Filter node implementation.
  • Plug-in layer: includes plug-in framework, various plug-ins.

Logical architecture diagram

Plugin list

The HiStreamer plug-in list is as follows:

The plug-in name path External dependencies License function applicable scene
FFMPEG Adapter plugins/ffmpeg_adapter FFMPEG LGPL etc. Decapsulation: mp3, m4a, mp4, wav
Decode: mp3, aac
Small/Standard devices that support dynamic linking
File Source plugins/source/file_source FileSystem Apache Reading file data All the device
Minimp3 Adapter plugins/minimp3_adapter minimp3 CC0 Decapsulation: mp3
decode : mp3
All the device
Minimp4 Demuxer plugins/demuxer/minimp4_demuxer minimp4 CC0 Decapsulation: m4a All the device
Aac Demuxer plugins/demuxer/aac_demuxer NA Apache Decapsulation: aac All the device
HDI Sink plugins/hdi_adapter Audio HDI Apache play music mini/small device

Directory Structure

The structure of the repository directory is as follows:

/foundation/multimedia/histreamer
├── LICENSE                             # License file
└── ohos.build                          # Build file
/foundation/multimedia/histreamer      # HiStreamer media engine component business code
├─LICENSE                              # The license file
├─engine                               # The engine code
│  ├─foundation                        # Basic tool classes, including OS adaptation
│  ├─pipeline framework                # pipeline frame
│  │  ├─core                           # pipeline core implementation
│  │  ├─factory                        # filter factory
│  │  └─filters                        # Several filter node implementations
│  │      ├─codec                      # Codec node implementation
│  │      ├─demux                      # Decapsulation node implementation
│  │      ├─sink                       # Output node implementation
│  │      └─source                     # Data source node implementation
│  ├─player                            # Player package
│  └─plugin                            # plug-in
│     ├─common                         # The underlying type definitions on which the plug-in interface depends
│     ├─core                           # Plug-in framework
│     ├─interface                      # Plug-in interface
│     └─plugins                        # Several plug-in implementations
│         ├─minimp3_adapter            # minimp3 adapter
│         ├─ffmpeg_adapter             # FFMPEG adaption (adaption into encapsulation and decapsulation, codec plug-in)
│         ├─hdi_adapter                # HDI adapter (adapter to output plug-in)
│         ├─demuxer                    # Unpack plugin
│         ├─sink                       # Output plug-in
│         └─source                     # Data source plug-in
└─interface                            # Engine external interface

Repositories Involved

Repository Comments ( 1 )

Sign in to post a comment

About

Basic media framework module | 基础媒体框架组件 expand collapse
C++ and 4 more languages
Apache-2.0
Cancel

Releases

No release

OpenHarmony

Contributors

All

Activities

Load More
can not load any more
1
https://toscode.gitee.com/openharmony/multimedia_histreamer.git
git@toscode.gitee.com:openharmony/multimedia_histreamer.git
openharmony
multimedia_histreamer
multimedia_histreamer
master

Search