TuyaOS
结构体 | 类型定义 | 枚举 | 函数
tkl_cellular_player.h 文件参考

蜂窝模组基础功能API实现接口。 更多...

#include <stdint.h>
#include "tuya_cloud_types.h"
#include "tkl_cellular_call.h"
tkl_cellular_player.h 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

结构体

struct  TKL_AUDIO_PLAY_OPS_T
 

类型定义

typedef void(* TKL_AUDIO_PLAYER_CB) (void *param, TKL_AUDIO_PLAYER_EVENT_E event)
 

枚举

enum  TKL_AUDEV_INPUT_TYPE {
  TKL_AUDEV_INPUT_MAINMIC = 0 , TKL_AUDEV_INPUT_AUXMIC = 1 , TKL_AUDEV_INPUT_DUALMIC = 2 , TKL_AUDEV_INPUT_HPMIC_L = 3 ,
  TKL_AUDEV_INPUT_HPMIC_R = 4
}
 音频输入设备类型定义
 
enum  TKL_AUDEV_OUTPUT_TYPE { TKL_AUDEV_OUTPUT_RECEIVER = 0 , TKL_AUDEV_OUTPUT_HEADPHONE = 1 , TKL_AUDEV_OUTPUT_SPEAKER = 2 }
 音频输出设备类型定义
 
enum  TKL_AUDIO_FRAME_FLAGS_T { TKL_AUFRAME_FLAG_START = (1 << 0) , TKL_AUFRAME_FLAG_END = (1 << 1) }
 
enum  TKL_AUDIO_PLAYER_EVENT_E { TKL_AUPLAYER_EVENT_FINISHED = 1 }
 audio player event 更多...
 
enum  TKL_AUDIO_PLAYER_STATUS_E { TKL_AUPLAYER_STATUS_IDLE , TKL_AUPLAYER_STATUS_PLAY , TKL_AUPLAYER_STATUS_PAUSE , TKL_AUPLAYER_STATUS_FINISHED }
 audio player status 更多...
 
enum  TKL_AUDIO_PLAYER_TYPE_E { TKL_AUDEV_PLAY_TYPE_NONE = 0 , TKL_AUDEV_PLAY_TYPE_LOCAL , TKL_AUDEV_PLAY_TYPE_VOICE , TKL_AUDEV_PLAY_TYPE_POC }
 
enum  TKL_AUDIO_SAMPLE_FORMAT_T { TKL_AUSAMPLE_S16 }
 
enum  TKL_AUDIO_STREAM_FORMAT_E {
  TY_AUSTREAM_FORMAT_UNKNOWN , TY_AUSTREAM_FORMAT_PCM , TY_AUSTREAM_FORMAT_WAVPCM , TY_AUSTREAM_FORMAT_MP3 ,
  TY_AUSTREAM_FORMAT_AMRNB , TY_AUSTREAM_FORMAT_AMRWB , TY_AUSTREAM_FORMAT_SBC
}
 audio stream format 更多...
 

函数

OPERATE_RET tkl_cellular_player_get_audio_input (TKL_AUDEV_INPUT_TYPE *chan)
 获取音频输入设备 更多...
 
OPERATE_RET tkl_cellular_player_get_audio_output (TKL_AUDEV_OUTPUT_TYPE *chan)
 获取音频输出设备 更多...
 
OPERATE_RET tkl_cellular_player_get_mute (PBOOL_T mute)
 获取音频输出设备的是否静音。 更多...
 
OPERATE_RET tkl_cellular_player_get_status (TKL_AUDIO_PLAYER_STATUS_E *status)
 获取音频当前的播放状态 更多...
 
OPERATE_RET tkl_cellular_player_get_vol (PINT_T vol)
 获取音频播放的音量 更多...
 
OPERATE_RET tkl_cellular_player_mem_start (TKL_AUDIO_PLAYER_TYPE_E type, TKL_AUDIO_STREAM_FORMAT_E format, PBYTE_T buff, UINT_T size, TKL_AUDIO_PLAYER_CB cb, PVOID_T cb_ctx)
 播放一个音频内存 更多...
 
OPERATE_RET tkl_cellular_player_pause (VOID)
 暂停正在播放的音频 更多...
 
OPERATE_RET tkl_cellular_player_resume (VOID)
 恢复暂停的的音频 更多...
 
OPERATE_RET tkl_cellular_player_set_audio_input (TKL_AUDEV_INPUT_TYPE chan)
 设置音频输入设备 更多...
 
OPERATE_RET tkl_cellular_player_set_audio_output (TKL_AUDEV_OUTPUT_TYPE chan)
 设置音频输出设备 更多...
 
OPERATE_RET tkl_cellular_player_set_mute (BOOL_T mute)
 设置音频输出设备的是否静音。这个属性不会被保存到flash中。 每次重启后,都会变成非静音 更多...
 
OPERATE_RET tkl_cellular_player_set_vol (INT_T vol)
 设置音频播放的音量 更多...
 
OPERATE_RET tkl_cellular_player_start (TKL_AUDIO_PLAYER_TYPE_E type, TKL_AUDIO_STREAM_FORMAT_E format, PCHAR_T file_path, TKL_AUDIO_PLAYER_CB cb, PVOID_T cb_ctx)
 播放一个音频文件 更多...
 
OPERATE_RET tkl_cellular_player_start_stream (TKL_AUDIO_PLAYER_TYPE_E type, CONST TKL_AUDIO_PLAY_OPS_T *playOps, PVOID_T playCtx, CONST TKL_AUDIO_FRAME_T *frame)
 播放流媒体音频 更多...
 
OPERATE_RET tkl_cellular_player_stop (VOID)
 停止正在播放的的音频 更多...
 
OPERATE_RET tkl_cellular_player_stop_stream (VOID)
 停止流媒体播放 更多...
 

详细描述

蜂窝模组基础功能API实现接口。

作者
www.tuya.com

枚举类型说明

◆ TKL_AUDIO_FRAME_FLAGS_T

枚举值
TKL_AUFRAME_FLAG_START 

indicate start of stream

TKL_AUFRAME_FLAG_END 

indicate end of stream

◆ TKL_AUDIO_PLAYER_EVENT_E

audio player event

There are no separated event for error. When fatal errors occur, audio player will be stopped automatically.

枚举值
TKL_AUPLAYER_EVENT_FINISHED 

playback finished, or fatal error

◆ TKL_AUDIO_PLAYER_STATUS_E

audio player status

枚举值
TKL_AUPLAYER_STATUS_IDLE 

playback not started

TKL_AUPLAYER_STATUS_PLAY 

playback is started

TKL_AUPLAYER_STATUS_PAUSE 

playback is paused

TKL_AUPLAYER_STATUS_FINISHED 

playback is finished

◆ TKL_AUDIO_PLAYER_TYPE_E

枚举值
TKL_AUDEV_PLAY_TYPE_NONE 

Placeholder for not in playing.

TKL_AUDEV_PLAY_TYPE_LOCAL 

Play to local audio path.

TKL_AUDEV_PLAY_TYPE_VOICE 

Play to uplink remote during voice call.

TKL_AUDEV_PLAY_TYPE_POC 

Play to local audio path during poc mode.

◆ TKL_AUDIO_STREAM_FORMAT_E

audio stream format

枚举值
TY_AUSTREAM_FORMAT_UNKNOWN 

placeholder for unknown format

TY_AUSTREAM_FORMAT_PCM 

raw PCM data

TY_AUSTREAM_FORMAT_WAVPCM 

WAV, PCM inside

TY_AUSTREAM_FORMAT_MP3 

MP3

TY_AUSTREAM_FORMAT_AMRNB 

AMR-NB

TY_AUSTREAM_FORMAT_AMRWB 

AMR_WB

TY_AUSTREAM_FORMAT_SBC 

bt SBC

函数说明

◆ tkl_cellular_player_get_audio_input()

OPERATE_RET tkl_cellular_player_get_audio_input ( TKL_AUDEV_INPUT_TYPE chan)

获取音频输入设备

参数
channleTKL_AUDEV_INPUT_TYPE
返回
0 成功,其他失败

◆ tkl_cellular_player_get_audio_output()

OPERATE_RET tkl_cellular_player_get_audio_output ( TKL_AUDEV_OUTPUT_TYPE chan)

获取音频输出设备

参数
channleTKL_AUDEV_OUTPUT_TYPE
返回
0 成功,其他失败

◆ tkl_cellular_player_get_mute()

OPERATE_RET tkl_cellular_player_get_mute ( PBOOL_T  mute)

获取音频输出设备的是否静音。

参数
mute: TRUE 静音
返回
0 成功,其他失败

◆ tkl_cellular_player_get_status()

OPERATE_RET tkl_cellular_player_get_status ( TKL_AUDIO_PLAYER_STATUS_E status)

获取音频当前的播放状态

参数
statusTKL_AUDIO_PLAYER_STATUS_E
返回
0 成功,其他失败

◆ tkl_cellular_player_get_vol()

OPERATE_RET tkl_cellular_player_get_vol ( PINT_T  vol)

获取音频播放的音量

参数
vol(0~100)
返回
0 成功,其他失败

◆ tkl_cellular_player_mem_start()

OPERATE_RET tkl_cellular_player_mem_start ( TKL_AUDIO_PLAYER_TYPE_E  type,
TKL_AUDIO_STREAM_FORMAT_E  format,
PBYTE_T  buff,
UINT_T  size,
TKL_AUDIO_PLAYER_CB  cb,
PVOID_T  cb_ctx 
)

播放一个音频内存

参数
typeaudio 播放类型. 注意:当类型为TKL_AUDEV_PLAY_TYPE_VOICE时候,音频源只支持8K采样率,8bit/16bit/32bit, 单声道。否则播放的声音异常
format音频文件格式
buff音频内存数据指针
size音频数据大小
cb播放的事件回调函数
cb_ctx回调函数的参数
返回
0 成功,其他失败

◆ tkl_cellular_player_pause()

OPERATE_RET tkl_cellular_player_pause ( VOID  )

暂停正在播放的音频

参数
返回
0 成功,其他失败

◆ tkl_cellular_player_resume()

OPERATE_RET tkl_cellular_player_resume ( VOID  )

恢复暂停的的音频

参数
返回
0 成功,其他失败

◆ tkl_cellular_player_set_audio_input()

OPERATE_RET tkl_cellular_player_set_audio_input ( TKL_AUDEV_INPUT_TYPE  chan)

设置音频输入设备

参数
channleTKL_AUDEV_INPUT_TYPE
返回
0 成功,其他失败

◆ tkl_cellular_player_set_audio_output()

OPERATE_RET tkl_cellular_player_set_audio_output ( TKL_AUDEV_OUTPUT_TYPE  chan)

设置音频输出设备

参数
channleTKL_AUDEV_OUTPUT_TYPE
返回
0 成功,其他失败

◆ tkl_cellular_player_set_mute()

OPERATE_RET tkl_cellular_player_set_mute ( BOOL_T  mute)

设置音频输出设备的是否静音。这个属性不会被保存到flash中。 每次重启后,都会变成非静音

参数
mute: TRUE 静音
返回
0 成功,其他失败

◆ tkl_cellular_player_set_vol()

OPERATE_RET tkl_cellular_player_set_vol ( INT_T  vol)

设置音频播放的音量

参数
vol(0~100)
返回
0 成功,其他失败

◆ tkl_cellular_player_start()

OPERATE_RET tkl_cellular_player_start ( TKL_AUDIO_PLAYER_TYPE_E  type,
TKL_AUDIO_STREAM_FORMAT_E  format,
PCHAR_T  file_path,
TKL_AUDIO_PLAYER_CB  cb,
PVOID_T  cb_ctx 
)

播放一个音频文件

参数
typeaudio 播放类型 注意:当类型为TKL_AUDEV_PLAY_TYPE_VOICE时候,音频源只支持8K采样率,8bit/16bit/32bit, 单声道。否则播放的声音异常
format音频文件格式
file_path音频文件(需要包含完整的路径)
cb播放的事件回调函数
cb_ctx回调函数的参数
返回
0 成功,其他失败

◆ tkl_cellular_player_start_stream()

OPERATE_RET tkl_cellular_player_start_stream ( TKL_AUDIO_PLAYER_TYPE_E  type,
CONST TKL_AUDIO_PLAY_OPS_T playOps,
PVOID_T  playCtx,
CONST TKL_AUDIO_FRAME_T frame 
)

播放流媒体音频

参数
typeTKL_AUDIO_PLAYER_TYPE_E 注意:当类型为TKL_AUDEV_PLAY_TYPE_VOICE时候,音频源只支持8K采样率,16bit, 单声道。否则播放的声音异常
playOps参考 TKL_AUDIO_PLAY_OPS_T
playCtxplayOps回调函数的输入参数
frame音频帧,只有流信息会被使用到。具体参考 TKL_AUDIO_PLAYER_TYPE_E
返回
0 成功,其他失败

◆ tkl_cellular_player_stop()

OPERATE_RET tkl_cellular_player_stop ( VOID  )

停止正在播放的的音频

参数
返回
0 成功,其他失败

◆ tkl_cellular_player_stop_stream()

OPERATE_RET tkl_cellular_player_stop_stream ( VOID  )

停止流媒体播放

返回
0 成功,其他失败