OpenHarmony之Histreamer引擎深度解析:pipeline_core架构如何全面取代GStreamer,一统音视频播放与录制
1. 概述
1.1 引擎架构概述
Histreamer是OpenHarmony多媒体框架的核心媒体引擎,采用pipeline_core + plugins架构设计。一个轻量级的媒体引擎组件,提供播放、录制等场景的媒体数据流水线处理。
1.播放场景分为如下几个节点:数据源读取、解封装、解码、输出;
2.录制场景分为如下几个节点:数据源读取、编码、封装、输出。
该引擎从OH5.0开始取代了原有的媒体引擎gstreamer(部分文档还保留较老架构的讲解),提供统一的音视频播放、录制、元数据解析等能力。
备注: 核心实现参考foundation/multimedia/media_foundation
1.2 核心设计模式
- 工厂模式:通过统一管理各种媒体引擎实例的创建
- 管道模式:基于Pipeline架构实现媒体数据的处理流程
- 观察者模式:通过事件机制实现状态变更通知