intelligent_voice

简介

intelligent_voice仓下主要包含HDI接口,HDI接口主要用于:

  • 智能音频引擎的注册、管理、回调
  • Trigger模型的管理、加载、卸载,以及回调

目录

该仓下源代码目录结构如下所示

drivers/peripheral/intelligent_voice/
├── hdi_service        # hdi服务,虚拟接口实现
│   └── engine         # engine虚拟接口实现
│   └── trigger        # trigger虚拟接口实现
├── interfaces         # intelligent_voice模块定义的虚拟接口
│   └── include        # 接口定义

接口说明

intelligent_voice模块提供给intelligent_voice_framework可直接调用的能力接口,主要功能有:智能音频引擎的注册、管理、回调,Trigger模型的加载卸载,回调,以及管理等。

提供的部分接口说明如表1 intelligent_voice HDI接口所示:

表 1 intelligent_voice HDI接口

头文件

接口名称

功能描述

i_engine.h

virtual void OnIntellVoiceEvent(const IntellVoiceEngineCallBackEvent &event) = 0;

开启智能语音事件

virtual IntellVoiceStatus SetListener(std::shared_ptr listener) = 0;

设置监听器

virtual IntellVoiceStatus Init(const IntellVoiceEngineAdapterInfo &adapterInfo) = 0;

初始化

virtual IntellVoiceStatus Release() = 0;

释放

virtual IntellVoiceStatus SetParameter(const std::string &keyValueList) = 0;

设置参数

virtual IntellVoiceStatus GetParameter(const std::string &keyList, getParameterCb cb) = 0;

获取参数

virtual IntellVoiceStatus Write(const uint8_t *buffer, uint32_t size) = 0;

写入

virtual IntellVoiceStatus Start(const StartInfo& info) = 0;

启动

virtual IntellVoiceStatus Stop() = 0;

停止

virtual IntellVoiceStatus Cancel() = 0;

取消

virtual IntellVoiceStatus ReadFileData(const std::string &filePath, getFileDataCb cb) = 0;

读取文件数据

virtual int32_t CreateAdapter(const IntellVoiceEngineAdapterDescriptor &descriptor, std::unique_ptr &engine) = 0;

创建适配器

virtual int32_t ReleaseAdapter(const IntellVoiceEngineAdapterDescriptor &descriptor) = 0;

释放适配器

i_trigger.h

virtual void OnRecognitionHdiEvent(const IntellVoiceRecognitionEvent &event, int32_t cookie) = 0;

开启识别接口事件

virtual int32_t GetProperties(IntellVoiceTriggerProperties &properties) = 0;

获取属性

virtual int32_t LoadIntellVoiceTriggerModel(const TriggerModel &model, const std::shared_ptr &callback, int32_t cookie, int32_t &handle) = 0;

加载智能语音触发模型

virtual int32_t UnloadIntellVoiceTriggerModel(int32_t handle) = 0;

卸载智能语音触发模型

virtual int32_t Start(int32_t handle) = 0;

启动

virtual int32_t Stop(int32_t handle) = 0;

停止

virtual int32_t LoadAdapter(const IntellVoiceTriggerAdapterDsecriptor &descriptor, std::unique_ptr &adapter) = 0;

加载适配器

virtual int32_t UnloadAdapter(const IntellVoiceTriggerAdapterDsecriptor &descriptor) = 0;

卸载适配器

使用说明

该仓核心功能包括两个方面:

  1. 提供intelligent_voice HDI接口供framework层调用,实现智能音频服务的基本功能。
  2. 作为标准南向接口,保证南向OEM产商实现HDI-adapter的规范性,保证生态良性演进。

具体接口调用及实现,以接口注释为准。

相关仓

驱动子系统

drivers_framework

drivers_adapter

drivers_adapter_khdf_linux

drivers_peripheral