1 开发环境

本文档是向Linux、Android系统,添加ALink车机端SDK的快速入门说明。

2 SDK接口调用时序

SDK接口调用说明如下:

1. 调用init()方法初始化SDK。

2. 调用registerAVListener ()方法把IALinkClientAVListener注册到SDK,SDK在和车盒建立连接后使用init ()方法设置的音视频的参数开始录制音视频,在音视频数据更新时,通过onAVDataReceived()回传给应用程序。

3. 调用registerEventListener ()方法把IALinkClientEventListener注册到SDK,当事件发生时SDK会调用onEventReceived ()方法将事件通知应用程序。

4. 调用start()方法启动SDK。

5. 应用程序音视频通道建立连接或者断开连接的时候,应用程序必须调用postCommandMessage ()方法向SDK发送音视频通道状态数据。

6. 应用程序触发方控、旋钮、触屏事件的时候,应用程序必须调用postHMIEvent ()方法向SDK发送事件数据。

7. 应用程序接收到车机麦克风数据的时候,应用程序必须调用postMicStream ()方法向SDK发送麦克风数据。

8. 调用stop()方法停止SDK。

SDK接口调用时序图如下:

android 车机蓝牙音频通路 android车机蓝牙音乐_android 车机蓝牙音频通路

3. SDK接口使用说明

3.1 SDK初始化

设置ALinkClient配置信息,初始化SDK:

android 车机蓝牙音频通路 android车机蓝牙音乐_音视频_02

3.2 音视频监听

注册音视频Listener到SDK,当SDK音视频数据更新时,会对onAVDataReceived()进行回调,应用程序便可以得到音视频数据。

android 车机蓝牙音频通路 android车机蓝牙音乐_数据_03

将IALinkClientAVListener作为基类,应用程序自定义子类,并实现对纯虚函数onAVDataReceived()的定义,将子类对象注册SDK中。

android 车机蓝牙音频通路 android车机蓝牙音乐_数据_03

3.3 事件监听

注册事件Listener到SDK,当SDK有新的事件触发时,会对onEventReceived()进行回调,应用程序便可以取到最新的事件信息。

android 车机蓝牙音频通路 android车机蓝牙音乐_android车机蓝牙芯片SDK_05

将IALinkClientEventListener作为基类,应用程序自定义子类,并实现对纯虚函数onEventReceived()的定义,将子类对象注册SDK中。

android 车机蓝牙音频通路 android车机蓝牙音乐_android车机蓝牙芯片SDK_06

3.4 启动SDK

启动SDK,SDK开始工作。

android 车机蓝牙音频通路 android车机蓝牙音乐_应用程序_07

3.5 音视频通道通知

当应用程序的视频通道建立时需要向SDK发送video-start的消息,SDK即可进行视频的更新动作。同时需要额外携带车机屏幕分辨率和最大帧率等信息,以便A-LinkClient端通知A-LinkServer端进行动态的适配;当应用程序的视频通道断开时需要向SDK发送video-stop的消息,SDK便可停止视频的更新动作。当应用程序的音频通道建立时需要向SDK发送audio-start的消息,SDK即可进行音频的更新动作;当应用程序的音频通道断开时需要向SDK发送audio-stop的消息,SDK便可停止音频的更新动作。

android 车机蓝牙音频通路 android车机蓝牙音乐_应用程序_08

3.6 方控、触屏事件通知

当应用程序检测到方控事件时,需将按键以SDK可识别的key code的方式通知给SDK,以便SDK的识别与响应;当应用程序检测到触屏事件时,需将相应的坐标信息与按下抬起动作通知给SDK,以便SDK的识别与响应。

android 车机蓝牙音频通路 android车机蓝牙音乐_android车机蓝牙芯片SDK_09

android 车机蓝牙音频通路 android车机蓝牙音乐_数据_10

android 车机蓝牙音频通路 android车机蓝牙音乐_android 车机蓝牙音频通路_11

3.7 麦克风收音通知

当车机端按下相应按键要启动麦克风收音时,需将对应的方控事件发送给SDK;当车机端收音时需将收音原数据发送给SDK,以便SDK作对应的语音处理;当车机端按下相应按键要终止麦克风收音时,需将对应的方控事件发送给SDK。

android 车机蓝牙音频通路 android车机蓝牙音乐_音视频_12

3.8 获取SDK版本号

获取SDK的版本信息。

android 车机蓝牙音频通路 android车机蓝牙音乐_音视频_13

3.9 动态设置服务端音视频参数

提供动态设置服务端音视频参数的接口。

android 车机蓝牙音频通路 android车机蓝牙音乐_应用程序_14

3.10 获取服务端音视频参数

获取服务端音视频参数

android 车机蓝牙音频通路 android车机蓝牙音乐_应用程序_15

3.11 停止SDK

停止SDK,SDK注销所有工作。

android 车机蓝牙音频通路 android车机蓝牙音乐_音视频_16