From 3892a52a07c157be6da7627ad74d0d4405d8a08c Mon Sep 17 00:00:00 2001 From: "stephen.gao" Date: Sat, 18 Mar 2023 14:42:16 +0800 Subject: [PATCH] =?UTF-8?q?docs=20(audio,camera):=20=E6=8F=90=E4=BA=A4?= =?UTF-8?q?=E6=96=B0=E5=AE=98=E7=BD=91wiki=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1.新增audio.md, camera.md, audio.TTS.md, audio.Record.md, camera.CamCapture.md, camera.CamDecoder.md, camera.CamPreview.md到teedoc_with_qpydoc\docs\API_reference\zh\QuecPython类库; 2.在sidebar.yaml中添加audio的items以及camera的items; 3.修改teedoc_with_qpydoc\docs\API_reference\zh\QuecPython类库的README.md,增加对audio和camera模块的跳转。 固件版本: N 是否需要文案翻译: 是 --- .../README.md" | 2 + .../audio.Audio.md" | 107 ++++++-------- .../audio.Record.md" | 139 ++++++++---------- .../audio.TTS.md" | 114 +++++++------- .../audio.md" | 31 +--- .../camera.CamCapture.md" | 64 ++++---- .../camera.CamDecoder.md" | 86 +++++------ .../camera.CamPreview.md" | 30 ++-- .../camera.md" | 19 +-- docs/API_reference/zh/sidebar.yaml | 18 +++ 10 files changed, 271 insertions(+), 339 deletions(-) diff --git "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/README.md" "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/README.md" index 9ea8865d..f5b028c1 100644 --- "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/README.md" +++ "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/README.md" @@ -21,6 +21,8 @@ - [misc - 其他](./misc.md) - [qrcode - 二维码显示](./qrcode.md) - [ethernet - 以太网相关功能](./ethernet.md) +- [camera - 摄像头](./camera.md) +- [audio - 音频播放](./audio.md) - [WLAN - 无线局域网相关功能](./WLAN.md) - [uping - 发送ping包](./uping.md) - [pm - 低功耗相关功能](./pm.md) diff --git "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.Audio.md" "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.Audio.md" index 3b087ee1..2090f01a 100644 --- "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.Audio.md" +++ "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.Audio.md" @@ -1,22 +1,16 @@ +# class Audio - 音频播放 +类功能:提供音频播放功能。 -``` -本文阐述了QuecPython的audio.Audio类的用法,描述了audio.Audio类最新版本的特性。 -``` - - - -# `class Audio` - -`Audio`对象提供音频播放功能。 - -> 目前支持型号:EC600N系列、EC800N系列、EC600M-CN(LA、LE)、EC800M-CN(LA、LE、GA)、EC600U系列和EC200U系列、EG912U、EG915U、EG915N-EUAG +> 目前支持型号:EC600N系列、EC800N系列、EC600M-CN(LA、LE)、EC800M-CN(LA、LE、GA)、EC600U系列、EC200U系列、EG912U、EG915U、EG915N-EUAG。 **示例:** ```python +# -*- coding: UTF-8 -*- import audio from machine import Pin +import utime def audio_cb(event): if event == 0: @@ -27,7 +21,7 @@ def audio_cb(event): aud = audio.Audio(0) aud.setCallback(audio_cb) # 设置pa -aud.set_pa(Pin.GPIO15) +aud.set_pa(Pin.GPIO15,2) # 播放MP3 aud.play(2, 1, 'U:/music.mp3') aud.stop() @@ -67,9 +61,9 @@ class audio.Audio(device) **参数描述:** -- `device` - 输出通道,int类型,0表示听筒,1表示耳机,2表示喇叭。具体模块所支持通道详见下表。 +- `device` - 输出通道,int类型,`0`表示听筒,`1`表示耳机,`2`表示喇叭。具体模块所支持通道详见下表。 -**模块输出通道对应表** +**模块输出通道对应表:** | 模块型号 | 听筒 | 耳机 | 喇叭 | | --------------------- | ------ | ------ | ------ | @@ -89,20 +83,19 @@ class audio.Audio(device) ### Audio.set_pa ```python -Audio.set_pa(gpio) +Audio.set_pa(gpio,num) ``` -该方法用于设置输出pa的gpio,并开启pa功能目前支持AB类切D类,即两个上升沿的脉冲分别在1us<脉冲<12us。 +该方法用于设置输出pa的gpio。 -**参数描述** +**参数描述:** - `gpio` - 输出的gpio,int类型,参照[Pin](./machine.Pin.md)。 +- `num` - 上电脉冲数,int类型。 **返回值描述:** -`1` 表示成功, - -`0`表示失败。 +`1` 表示成功,`0`表示失败。 ### Audio.play @@ -116,10 +109,10 @@ Audio.play(priority, breakin, filename) > **说明:**由于TTS和音频文件播放共用同一个播放队列,所以TTS中设置的播放优先级、打断模式不仅仅是和其他TTS播放任务比较,还会和音频文件播放任务的优先级和打断模式比较,反之,音频文件播放中设置的播放优先级与打断模式对TTS任务同样是有效的。 -**参数描述** +**参数描述:** - `priority` - 播放优先级,int类型。支持优先级0 ~ 4,数值越大优先级越高。 -- `breakin` - 打断模式,int类型。0表示不允许被打断,1表示允许被打断 +- `breakin` - 打断模式,int类型。0表示不允许被打断,1表示允许被打断。 - `filename` - 模式,string类型。待播放的文件名称,包含文件存放路径。点此查看文件播放路径的说明。 **返回值描述:** @@ -142,13 +135,11 @@ Audio.play(priority, breakin, filename) Audio.stop() ``` -该方法用于停止音频文件播放。 +该方法用于停止当前正在播放的音频。 **返回值描述:** -`0` 表示成功, - -`-1`表示失败。 +`0` 表示成功,`-1`表示失败。 ### Audio.stopAll @@ -160,29 +151,33 @@ Audio.stopAll() **返回值描述:** -`0` 表示成功, - -`-1`表示失败。 +`0` 表示成功,`-1`表示失败。 ### Audio.setCallback ```python -Audio.setCallback(usrFun) +Audio.setCallback(cb) ``` 该方法用于注册用户的回调函数,用于通知用户音频文件播放状态。 -> **注意**,该回调函数中不要进行耗时以及阻塞性的操作,建议只进行简单、耗时短的操作。 +> **注意**:该回调函数中不要进行耗时以及阻塞性的操作,建议只进行简单、耗时短的操作。 -**参数描述** +**参数描述:** -- `usrFun` - 用户回调函数,function类型,函数原型:usrFun(event) -> None,点此查看回调函数参数event说明表。 +- `cb` - 用户回调函数,function类型,函数原型: -**返回值描述:** + ``` + cb(event) + ``` -`0` 表示成功, + **回调函数参数描述**: -`-1`表示失败。 + - `event` - 播放状态,int类型,点此查看回调函数参数event说明表。 + +**返回值描述:** + +`0` 表示成功,`-1`表示失败。 **回调函数参数event说明表** @@ -201,9 +196,7 @@ Audio.getState() **返回值描述:** -`0` 表示audio初始化完成, - -`-1`表示audio初始化未完成。 +`0` 表示audio初始化完成,`-1`表示audio初始化未完成。 ### Audio.getVolume @@ -211,11 +204,11 @@ Audio.getState() Audio.getVolume() ``` -该方法用于获取当前播放音量大小,音量值为0 ~ 11,0表示静音,默认值7。 +该方法用于获取当前播放音量大小,音量值在区间[0 ~ 11],0表示静音,默认值7。 **返回值描述:** -整型音量大小值, +整型音量大小值。 ### Audio.setVolume @@ -223,17 +216,15 @@ Audio.getVolume() Audio.setVolume(vol) ``` -该方法用于设置播放音量大小,音量值应在0 ~ 11区间,0表示静音。 +该方法用于设置播放音量大小,音量值在区间[0 ~ 11],0表示静音。 -**参数描述** +**参数描述:** -- `vol` - 音量大小,int类型,区间0 ~ 11。 +- `vol` - 音量大小,int类型,区间[0 ~ 11]。 **返回值描述:** -`0` 表示成功, - -`-1`表示失败。 +`0` 表示成功,`-1`表示失败。 ### Audio.playStream @@ -243,16 +234,14 @@ Audio.playStream(format, buf) 该方法用于音频流播放,支持mp3、amr和wav格式的音频流播放。 -**参数描述** +**参数描述:** - `format` - 音频流格式,int类型,`2` - `WAVPCM`,`3` - `MP3`,`4` - `AMRNB`。 - `buf` - 音频流内容,音频流二进制文件内容。 **返回值描述:** -`0`表示播放成功, - -`-1`表示播放失败。 +`0`表示播放成功,`-1`表示播放失败。 ### Audio.stopPlayStream @@ -262,15 +251,13 @@ Audio.stopPlayStream() 该方法用于停止音频流播放。 -**参数描述** +**参数描述:** 无 **返回值描述:** -`0` 表示成功, - -`-1`表示失败。 +`0` 表示成功,`-1`表示失败。 ### Audio.aud_tone_play @@ -282,16 +269,14 @@ Audio.aud_tone_play(tone, time) > **注意**:EC600N/EC800N系列模组调用该接口为立即返回,EC600U/EC200U系列模组调用该接口为阻塞等待。 -**参数描述** +**参数描述:** - `tone` - tone类型,int型,`0~15`:按键音(0~9、A、B、C、D、#、*),`16`:拨号音。 - `time` - 播放时长,单位ms,int型,`0` : 不停止一直播放。 **返回值描述:** -`0` 表示播放成功, - -`-1`表示播放失败。 +`0` 表示播放成功,`-1`表示播放失败。 ### Audio.aud_tone_play_stop @@ -303,6 +288,4 @@ Audio.aud_tone_play_stop() **返回值描述:** -`0` 表示停止播放成功, - -`-1`表示停止播放失败。 \ No newline at end of file +`0` 表示停止播放成功,`-1`表示停止播放失败。 \ No newline at end of file diff --git "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.Record.md" "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.Record.md" index b526e11b..4b9eb5a5 100644 --- "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.Record.md" +++ "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.Record.md" @@ -1,20 +1,15 @@ -``` -本文阐述了QuecPython的audio.Record类的用法,描述了audio.Record类最新版本的特性。 -``` - - - -# `class Record` +# class Record - 录音 -`Record`对象提供录音功能。 +类功能:提供录音功能。 -> 目前支持型号:EC600N系列、EC800N系列、EC600M-CN(LA、LE)、EC800M-CN(LA、LE、GA)、EC600U系列和EC200U系列、EG912U、EG915U、EG915N-EUAG +> 目前支持型号:EC600N系列、EC800N系列、EC600M-CN(LA、LE)、EC800M-CN(LA、LE、GA)、EC600U系列、EC200U系列、EG912U、EG915U、EG915N-EUAG。 **示例:** ```python +# -*- coding: UTF-8 -*- import utime import audio from machine import Pin @@ -47,8 +42,8 @@ def record_callback(args): flag = 0 record = audio.Record() -audio.end_callback(record_callback) -audio.start('recordfile.wav', 10) +record.end_callback(record_callback) +record.start('recordfile.wav', 10) while 1: if flag: @@ -100,24 +95,24 @@ audio.start(file_name,seconds) 该方法用于开始录音。 -**参数描述** +**参数描述:** - `file_name` - 录音文件名,string类型。 - `seconds` - 需要录制时长,单位:秒,int类型。 **返回值描述:** -`0`表示成功; +`0`表示成功。 -`-1`表示文件覆盖失败; +`-1`表示文件覆盖失败。 -`-2`表示文件打开失败; +`-2`表示文件打开失败。 -`-3`表示文件正在使用; +`-3`表示文件正在使用。 -`-4`表示通道设置错误; +`-4`表示通道设置错误。 -`-5`表示定时器资源申请失败; +`-5`表示定时器资源申请失败。 `-6` 表示音频格式检测错误。 @@ -131,9 +126,7 @@ Record.stop() **返回值描述:** -`0` 表示播放成功; - -`-1`表示播放失败。 +`0` 表示播放成功,`-1`表示播放失败。 ### Record.getFilePath @@ -143,15 +136,15 @@ Record.getFilePath(file_name) 该方法用于读取录音文件的路径。 -**参数描述** +**参数描述:** - `file_name` - 录音文件名,string类型。 **返回值描述:** -成功返回string类型的录音文件路径; +成功返回string类型的录音文件路径。 -`-1`表示目标文件不存在; +`-1`表示目标文件不存在。 `-2`表示文件名长度为0。 @@ -163,31 +156,31 @@ Record.getData(file_name, offset, size) 该方法用于读取录音数据。 -**参数描述** +**参数描述:** - `file_name` - 录音文件名,string类型。 - `offset` - 读取数据的偏移量,int类型。 -- `size` - 读取大小,单位 字节,int类型。注意 :需小于10K。 +- `size` - 读取大小,单位字节,int类型。注意 :需小于10K。 **返回值描述:** -成功返回录音数据,bytearray类型; +成功返回录音数据,bytearray类型。 失败返回值说明如下: -`-1`表示读取数据错误; +`-1`表示读取数据错误。 -`-2`表示文件打开失败; +`-2`表示文件打开失败。 -`-3`表示偏移量设置错误; +`-3`表示偏移量设置错误。 -`-4`表示文件正在使用; +`-4`表示文件正在使用。 -`-5`表示设置超出文件大小(offset+size > file_size); +`-5`表示设置超出文件大小(offset+size > file_size)。 -`-6`表示读取size 大于10K; +`-6`表示读取size 大于10K。 -`-7`表示内存不足10K; +`-7`表示内存不足10K。 ### Record.getSize @@ -197,25 +190,23 @@ Record.getSize(file_name) 该方法用于读取录音文件大小。 -**参数描述** +**参数描述:** - `file_name` - 录音文件名,string类型。 **返回值描述:** -若获取成功,返回文件大小 (EC600N系列、EC800N系列、EC800M系列、EC600M系列、EG915N不返回文件头),单位字节: +若获取成功,返回文件大小 (EC600N系列、EC800N系列、EC800M系列、EC600M系列、EG915N不返回文件头),单位字节。 -wav格式时,此值会比返回callback返回值大44 bytes(44 bytes为文件头); - -amr格式时,此值会比返回callback返回值大6 bytes(6 bytes为文件头); +> 注意:wav格式时,此值会比返回callback返回值大44 bytes(44 bytes为文件头);amr格式时,此值会比返回callback返回值大6 bytes(6 bytes为文件头)。 失败返回值如下: -`-1`表示获取文件大小失败 ; +`-1`表示获取文件大小失败。 -`-2`表示文件打开失败 ; +`-2`表示文件打开失败。 -`-3`表示文件正在使用 ; +`-3`表示文件正在使用 。 `-4`表示文件名长度为0。 @@ -227,15 +218,15 @@ Record.Delete(file_name) 该方法用于删除录音文件。 -**参数描述** +**参数描述:** - `file_name` - 录音文件名,string类型。 **返回值描述:** -`0`表示成功, +`0`表示成功。 -`-1`表示文件不存在, +`-1`表示文件不存在。 `-2`表示文件正在使用。 @@ -247,17 +238,15 @@ Record.exists(file_name) 该方法用于判断录音文件是否存在。 -**参数描述** +**参数描述:** - `file_name` - 录音文件名,string类型。 **返回值描述:** -`true`表示文件存在, - -`false`表示文件不存在, +`true`表示文件存在。 -`-1`表示文件名长度为0。 +`false`表示文件不存在。 ### Record.isBusy @@ -269,27 +258,33 @@ Record.isBusy() **返回值描述:** -`0`表示不在录音, - -`1`表示正在录音。 +`0`表示不在录音,`1`表示正在录音。 ### Record.end_callback ```python -Record.end_callback(callback) +Record.end_callback(cb) ``` 该方法用于设置录音结束回调。 -**参数描述** +**参数描述:** -- `callback` - 录音结束回调函数,function类型,函数原型:`callback(file_path, audio_len, audio_state) -> None`,回调函数参数`file_path`表示文件路径,`audio_len`表示录音长度,`audio_state`表示录音状态,点此查看回调函数参数audio_state说明表。 +- `cb` - 录音结束回调函数,function类型,函数原型: -**返回值描述:** + ``` + cb(file_path, audio_len, audio_state) + ``` + + **回调函数参数描述**: -`0` 表示成功, + - `file_path` - 文件路径,string类型。 + - `audio_len` - 录音长度,int类型。 + - `audio_state` - 录音状态,int类型,点此查看回调函数参数audio_state说明表。 + +**返回值描述:** -`-1`表示失败。 +`0` 表示成功,`-1`表示失败。 **audio_state说明表:** @@ -309,16 +304,14 @@ Record.gain(code_gain,dsp_gain) > 目前仅EC600N/EC800N系列模组支持该功能。 -**参数描述** +**参数描述:** - `code_gain` - 上行编解码器增益,int型,`0~4`。 - `dsp_gain` - 上行数字增益,int型,`-36~12` 。 **返回值描述:** -`0` 表示成功, - -`-1`表示失败。 +`0` 表示成功,`-1`表示失败。 ### Record.amrEncDtx_enable @@ -330,14 +323,14 @@ Record.amrEncDtx_enable(on_off) > 目前仅EC600N/EC800N系列模组支持该功能。 -**参数描述** +**参数描述:** - `on_off` - 开关,int型,`1`:开启,`0`:关闭 。 - 不传参数 - 获取当前配置 **返回值描述:** -不传参:返回当前配置 +不传参:返回当前配置。 传参:参数正确无返回,参数错误抛异常。 @@ -347,21 +340,19 @@ Record.amrEncDtx_enable(on_off) Record.stream_start(format, samplerate, time) ``` -该方法用于开始录音音频流。注意:录制音频流的同时,应及时读取音频流。目前是采用循环buf,不及时读取,会导致数据丢失 +该方法用于开始录音音频流。注意:录制音频流的同时,应及时读取音频流。目前是采用循环buf,不及时读取,会导致数据丢失。 > 目前仅EC200U/EC600U系列模组支持该功能。 -**参数描述** +**参数描述:** -- `format` - 音频格式,int型,目前支持 amr 格式,见常量。 +- `format` - 音频格式,int型,目前支持 amr 格式,见常量。 - `samplerate` - 采样率,int型,目前支持8000 和 16000 。 - `time` - 录音时长,int型,单位 S (秒)。 **返回值描述:** -`0` 表示成功, - -`-1`表示失败。 +`0` 表示成功,`-1`表示失败。 ### Record.stream_read @@ -380,12 +371,10 @@ Record.stream_read(read_buf, len) **返回值描述:** -成功返回实际读取的字节数, - -失败返回整型-1。 +成功返回实际读取的字节数,失败返回整型-1。 ## 常量 -### Record.AMRNB +### Record.AMRNB amr 格式。 \ No newline at end of file diff --git "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.TTS.md" "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.TTS.md" index d94033d1..ec6423fb 100644 --- "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.TTS.md" +++ "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.TTS.md" @@ -1,20 +1,15 @@ -``` -本文阐述了QuecPython的audio.TTS类的用法,描述了audio.TTS类最新版本的特性。 -``` - +# class TTS - 文本到语音播放 +类功能:提供从文本到语音播放功能。 -# `class TTS` - -`TTS`对象提供从文本到语音播放功能。 - -> 目前支持型号:EC600N系列、EC800N系列、EC600M-CN(LA、LE)、EC800M-CN(LA、LE、GA)、EC600U-CN系列和EC200U-CN系列 +> 目前支持型号:EC600N系列、EC800N系列、EC600M-CN(LA、LE)、EC800M-CN(LA、LE、GA)、EC600U-CN系列、EC200U-CN系列。 **示例:** ```python +# -*- coding: UTF-8 -*- ''' @Description: example for class TTS @FilePath: example_tts_file.py @@ -34,17 +29,30 @@ PROJECT_VERSION = "1.0.0" log.basicConfig(level=log.INFO) tts_Log = log.getLogger("TTS") +#定义回调函数 +def UsrFunc(event): + if event == 2: + print("开始播放") + elif event == 3: + print("停止播放") + elif event == 4: + print("播放完成") if __name__ == '__main__': # 参数1:device (0:听筒,1:耳机,2:喇叭) tts = TTS(1) + + #注册用户回调函数 + tts.setCallback(UsrFunc) + # 获取当前播放音量大小 volume_num = tts.getVolume() tts_Log.info("Current TTS volume is %d" %volume_num) - + # 设置音量为6 volume_num = 6 tts.setVolume(volume_num) + # 参数1:优先级 (0-4) # 参数2:打断模式,0表示不允许被打断,1表示允许被打断 # 参数3:模式 低四位:(1:UNICODE16(Size end conversion) 2:UTF-8 3:UNICODE16(Don't convert)),高四位:wtts_enable,wtts_ul_enable, wtts_dl_enable @@ -68,7 +76,7 @@ class audio.TTS(device) - `device` - 输出通道,int类型,0表示听筒,1表示耳机,2表示喇叭。具体模块所支持通道详见下表。 -**模块输出通道对应表** +**模块输出通道对应表:** | 模块型号 | 听筒 | 耳机 | 喇叭 | | --------------------- | ------ | ------ | ------ | @@ -80,7 +88,7 @@ class audio.TTS(device) | EG912N | 支持 | 不支持 | 不支持 | | EG912U | 支持 | 不支持 | 不支持 | | EC200U系列 | 不支持 | 不支持 | 支持 | -| EC600U系列 | 支持 | 支持 | 支持 | +| EC600U-CN系列 | 支持 | 支持 | 支持 | | EG915U | 支持 | 支持 | 不支持 | ## 方法 @@ -107,22 +115,22 @@ TTS.play(priority, breakin, mode, str) 支持优先级0 ~ 4,数字越大优先级越高,每个优先级组可同时最多加入10个播放任务;播放策略说明如下: -1. 如果当前正在播放任务A,并且允许被打断,此时有高优先级播放任务B,那么会打断当前低优先级播放任务A,直接播放高优先级任务B; +1. 如果当前正在播放任务A,并且允许被打断,此时有高优先级播放任务B,那么会打断当前低优先级播放任务A,直接播放高优先级任务B。 -2. 如果当前正在播放任务A,并且不允许被打断,此时有高优先级播放任务B,那么B播放任务将会加入到播放队列中合适的位置,等待A播放完成,再依次从队列中按照优先级从高到低播放其他任务; +2. 如果当前正在播放任务A,并且不允许被打断,此时有高优先级播放任务B,那么B播放任务将会加入到播放队列中合适的位置,等待A播放完成,再依次从队列中按照优先级从高到低播放其他任务。 -3. 如果当前正在播放任务A,且不允许被打断,此时来了一个同优先级播放任务B,那么B会被加入到该优先级组播放队列队尾,等待A播放完成,再依次从队列中按照优先级从高到低播放其他任务; +3. 如果当前正在播放任务A,且不允许被打断,此时来了一个同优先级播放任务B,那么B会被加入到该优先级组播放队列队尾,等待A播放完成,再依次从队列中按照优先级从高到低播放其他任务。 -4. 如果当前正在播放任务A,且允许被打断,此时来了一个同优先级播放任务B,那么会打断当前播放任务A,直接播放任务B; +4. 如果当前正在播放任务A,且允许被打断,此时来了一个同优先级播放任务B,那么会打断当前播放任务A,直接播放任务B。 -5. 如果当前正在播放任务A,且任务A的优先级组播放队列中已经有几个播放任务存在,且该优先级组播放队列最后一个任务N是允许被打断的,此时如果来了一个同样优先级的播放任务B,那么任务B会直接覆盖掉任务N;也就是说,某个优先级组,只有最后一个元素是允许被打断的,即breakin为1,其他任务都是不允许被打断的; +5. 如果当前正在播放任务A,且任务A的优先级组播放队列中已经有几个播放任务存在,且该优先级组播放队列最后一个任务N是允许被打断的,此时如果来了一个同样优先级的播放任务B,那么任务B会直接覆盖掉任务N;也就是说,某个优先级组,只有最后一个元素是允许被打断的,即breakin为1,其他任务都是不允许被打断的。 6. 如果当前正在播放任务A,不管任务A是否允许被打断,此时来了一个优先级低于任务A的请求B,那么将B加入到B对应优先级组播放队列。 -**参数描述** +**参数描述:** - `priority` - 播放优先级,int类型。支持优先级0 ~ 4,数值越大优先级越高。 -- `breakin` - 打断模式,int类型。0表示不允许被打断,1表示允许被打断 +- `breakin` - 打断模式,int类型。0表示不允许被打断,1表示允许被打断。 - `mode` - 模式,int类型。由低四位和高四位构成,其中低四位是编码模式,高四位是WTTS模式。点此查看TTS模式说明表。 - `str` - 待播放字符串,string类型。 @@ -141,7 +149,7 @@ TTS.play(priority, breakin, mode, str) | 模式 | 说明 | | -------- | ------------------------------------------------------------ | | 编码模式 | 1 - UNICODE16(UTF-16大端模式)
2 - UTF-8
3 - UNICODE16(UTF-16小端模式) | -| WTTS模式 | 仅600N系列支持VOLTE的版本支持,
wtts_enable - wtts总开关,
wtts_ul_enable - wtts上行使能,
wtts_dl_enable - wtts下行使能 | +| WTTS模式 | 仅600N系列支持VOLTE的版本支持,
wtts_enable - wtts总开关
wtts_ul_enable - wtts上行使能,
wtts_dl_enable - wtts下行使能 | **TTS.play方法使用实例:** @@ -203,7 +211,7 @@ TTS.play(priority, breakin, mode, str) - **TTS播放中文示例:** - 注意,python文件开头需要加上`# -*- coding: UTF-8 -*-`。 + > 注意:python文件开头需要加上`# -*- coding: UTF-8 -*-`。 ```python # -*- coding: UTF-8 -*- @@ -293,9 +301,7 @@ TTS.stop() **返回值描述:** -`0` 表示成功, - -`-1`表示失败。 +`0` 表示成功,`-1`表示失败。 ### TTS.stopAll @@ -307,31 +313,35 @@ TTS.stopAll() **返回值描述:** -`0` 表示成功, - -`-1`表示失败。 +`0` 表示成功,`-1`表示失败。 ### TTS.setCallback ```python -TTS.setCallback(usrFun) +TTS.setCallback(cb) ``` 该方法用于注册用户的回调函数,用于通知用户TTS播放状态。 > 注意,该回调函数中不要进行耗时以及阻塞性的操作,建议只进行简单、耗时短的操作。 -**参数描述** +**参数描述:** + +- `cb` - 用户回调函数,function类型,函数原型: -- `usrFun` - 用户回调函数,function类型,函数原型:usrFun(event) -> None,点此查看回调函数参数event说明表。 + ``` + cb(event) + ``` -**返回值描述:** + **回调函数参数描述**: + + - `event` - 播放状态,int类型,点此查看回调函数参数event说明表。 -`0` 表示成功, +**返回值描述:** -`-1`表示失败。 +`0` 表示成功,`-1`表示失败。 -**回调函数参数event说明表** +**回调函数参数event说明表:** | event | 表示状态 | | ----- | -------- | @@ -345,13 +355,11 @@ TTS.setCallback(usrFun) TTS.getVolume() ``` -该方法用于获取当前播放音量大小,音量值为0 ~ 9,0表示静音,默认值4。 +该方法用于获取当前播放音量大小,音量值在区间[0 ~ 9],0表示静音,默认值4。 **返回值描述:** -成功则返回整型音量大小值, - -`-1`表示失败。 +成功则返回整型音量大小值,`-1`表示失败。 ### TTS.setVolume @@ -359,17 +367,15 @@ TTS.getVolume() TTS.setVolume(vol) ``` -该方法用于设置播放音量大小,音量值应在0 ~ 9区间,0表示静音。 +该方法用于设置播放音量大小,音量值应在区间[0 ~ 9],0表示静音。 -**参数描述** +**参数描述:** -- `vol` - 音量大小,int类型,区间0 ~ 9。 +- `vol` - 音量大小,int类型,区间[0 ~ 9]。 **返回值描述:** -`0` 表示成功, - -`-1`表示失败。 +`0` 表示成功,`-1`表示失败。 ### TTS.getSpeed @@ -377,13 +383,11 @@ TTS.setVolume(vol) TTS.getSpeed() ``` -该方法用于获取当前播放速度,速度值为0 ~ 9,值越大,速度越快,默认值4。 +该方法用于获取当前播放速度,速度值在区间[0 ~ 9],值越大,速度越快,默认值4。 **返回值描述:** -成功则返回整型音量大小值, - -`-1`表示失败。 +成功则返回整型音量大小值,`-1`表示失败。 ### TTS.setSpeed @@ -391,17 +395,15 @@ TTS.getSpeed() TTS.setSpeed(speed) ``` -该方法用于设置TTS播放速度,速度值应在0 ~ 9区间。 +该方法用于设置TTS播放速度,速度值应在区间[0 ~ 9]。 -**参数描述** +**参数描述:** -- `speed` - 速度值,int类型,区间0 ~ 9。 +- `speed` - 速度值,int类型,区间[0 ~ 9]。 **返回值描述:** -`0` 表示成功, - -`-1`表示失败。 +`0` 表示成功,`-1`表示失败。 ### TTS.getState @@ -413,6 +415,4 @@ TTS.getState() **返回值描述:** -`0` 表示当前无tts播放, - -`-1`表示当前有tts正在播放。 \ No newline at end of file +`0` 表示当前无tts播放,`-1`表示当前有tts正在播放。 \ No newline at end of file diff --git "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.md" "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.md" index 68c5ac3d..481cf9c9 100644 --- "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.md" +++ "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/audio.md" @@ -1,33 +1,12 @@ +# audio - 音频播放 - -``` -本文阐述了QuecPython的audio模块的用法,描述了audio模块最新版本的特性。 -``` - - - -# `audio` - 音频播放相关功能 - -`audio`模块包含音频播放相关的功能,支持TTS、mp3以及AMR文件播放。 - -**示例:** - -```python -import audio - -if __name__ == '__main__': - tts = audio.TTS(1) - tts.play(1, 1, 2, 'QuecPython') # 执行播放 - tts.close() # 关闭TTS功能 -``` - - +模块功能:音频播放,支持TTS、mp3以及AMR文件播放、录音功能。 ## Classes -- [class TTS](./audio.TTS.md) +- [class TTS - 文本到语音播放](./audio.TTS.md) -- [class Audio](audio.Audio.md) +- [class Audio - 音频播放](audio.Audio.md) -- [class Record](audio.Record.md) +- [class Record - 录音](audio.Record.md) diff --git "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.CamCapture.md" "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.CamCapture.md" index 31b3ea55..7df94146 100644 --- "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.CamCapture.md" +++ "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.CamCapture.md" @@ -1,14 +1,6 @@ +# class camCapture - 摄像头拍照 - -``` -本文阐述了QuecPython的camera.camCapture类的用法,描述了camera.camCapture类最新版本的特性。 -``` - - - -# `class camCapture` - 摄像头扫码 - -`camCapture`对象提供摄像头的拍照及保存功能。 +类功能:提供摄像头的拍照及保存功能。 > 注意:使用该功能前,需要初始化LCD。 @@ -65,7 +57,7 @@ class camera.camCapture(model,cam_w,cam_h,perview_level,lcd_w,lcd_h) - `lcd_w` - LCD水平分辨率,int类型,请按照所使用的LCD的规格填写。 - `lcd_h` - LCD垂直分辨率,int类型,请按照所使用的LCD的规格填写。 -摄像头型号对应表: +**摄像头型号对应表:** | 编号 | 摄像头型号 | 通信方式 | | ---- | ---------- | -------- | @@ -80,17 +72,15 @@ class camera.camCapture(model,cam_w,cam_h,perview_level,lcd_w,lcd_h) camCapture.open() ``` -该方法用于使能摄像头的扫码功能。 +该方法用于使能摄像头的拍照功能。 -**参数描述** +**参数描述:** -无 +无。 **返回值描述:** -`0` 表示打开使能成功; - -`其他`表示打开使能失败。 +`0` 表示打开使能成功,其他表示打开使能失败。 ### camCapture.close @@ -98,17 +88,15 @@ camCapture.open() camCapture.close() ``` -该方法用于关闭使能摄像头的扫码功能。 +该方法用于关闭使能摄像头的拍照功能。 -**参数描述** +**参数描述:** -无 +无。 **返回值描述:** -`0` 表示关闭使能成功; - -`其他`表示关闭使能失败。 +`0` 表示关闭使能成功,其他表示关闭使能失败。 ### camCapture.start @@ -118,7 +106,7 @@ camCaputre.start(width, height, pic_name) 该方法用于开始拍照保存。 -**参数描述** +**参数描述:** - `width` - 保存图片水平分辨率,int类型。 - `height` - 保存图片垂直分辨率,int类型。 @@ -126,27 +114,33 @@ camCaputre.start(width, height, pic_name) **返回值描述:** -`0` 表示拍照保存成功,`其他`表示开始拍照保存失败。 +`0` 表示拍照保存成功,其他表示开始拍照保存失败。 -注意:拍照结果还是以回调函数参数为主。 +> 注意:拍照结果还是以回调函数参数为主。 ### camCapture.callback ```python -def callback(para): - print(para) -camCapture.callback(callback) +camCapture.callback(cb) ``` -该方法用于设置拍照回调函数 +该方法用于设置拍照回调函数。 -**参数描述** +**参数描述:** -- `callback` - 拍照回调函数,回调函数原型:function([result, pic_name])->None
回调函数参数: [result, pic_name]
result: 拍照结果(0:成功, 其它:失败)
pic_name: 保存的照片名称 +- `cb` - 拍照回调函数,回调函数原型: -**返回值描述:** + ``` + cb(result_list) + ``` -`0` 表示设置拍照回调函数成功; + **回调函数参数描述:** + + - `result_list[0]` - 拍照保存结果,int类型,`0`表示成功, 其它表示失败 + + - `result_list[1]` - 保存的照片名称,string类型。 + +**返回值描述:** -`其他`表示设置拍照回调函数失败。 +`0` 表示设置拍照回调函数成功,其他表示设置拍照回调函数失败。 diff --git "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.CamDecoder.md" "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.CamDecoder.md" index 64309cc3..09b963c1 100644 --- "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.CamDecoder.md" +++ "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.CamDecoder.md" @@ -1,14 +1,6 @@ +# class camScandecode - 摄像头扫码 - -``` -本文阐述了QuecPython的camera.camScandecode类的用法,描述了camera.camScandecode类最新版本的特性。 -``` - - - -# `class camScandecode` - 摄像头扫码 - -`camScandecode`对象提供摄像头的扫码功能。 +类功能:提供摄像头的扫码功能。 > 注意:如果开启预览,需要先初始化LCD。 @@ -71,7 +63,7 @@ class camera.camScandecode(model,decode_level,cam_w,cam_h,perview_level,lcd_w,lc - `lcd_w` - LCD水平分辨率,int类型,请按照所使用的LCD的规格填写。 - `lcd_h` - LCD垂直分辨率,int类型,请按照所使用的LCD的规格填写。 -摄像头型号对应表: +**摄像头型号对应表:** | 编号 | 摄像头型号 | 通信方式 | | ---- | ---------- | -------- | @@ -88,15 +80,13 @@ camScandecode.open() 该方法用于使能摄像头的扫码功能。 -**参数描述** +**参数描述:** -无 +无。 **返回值描述:** -`0` 表示打开使能成功; - -`其他`表示打开使能失败。 +`0` 表示打开使能成功,其他表示打开使能失败。 ### camScandecode.close @@ -106,15 +96,13 @@ camScandecode.close() 该方法用于关闭使能摄像头的扫码功能。 -**参数描述** +**参数描述:** -无 +无。 **返回值描述:** -`0` 表示关闭使能成功; - -`其他`表示关闭使能失败。 +`0` 表示关闭使能成功,其他表示关闭使能失败。 ### camScandecode.start @@ -124,15 +112,13 @@ camScandecode.start() 该方法用于开始摄影头扫码。 -**参数描述** +**参数描述:** -无 +无。 **返回值描述:** -`0` 表示开始扫码; - -`其他`表示开始扫码失败。 +`0` 表示开始扫码,其他表示开始扫码失败。 ### camScandecode.stop @@ -142,15 +128,13 @@ camScandecode.stop() 该方法用于结束摄像头扫码。 -**参数描述** +**参数描述:** -无 +无。 **返回值描述:** -`0` 表示结束扫码扫码; - -`其他`表示结束扫码失败。 +`0` 表示结束扫码扫码,其他表示结束扫码失败。 ### camScandecode.pause @@ -160,15 +144,13 @@ camScandecode.pause() 该方法用于暂停摄像头扫码。 -**参数描述** +**参数描述:** -无 +无。 **返回值描述:** -`0` 表示暂停扫码成功; - -`其他`表示暂停扫码失败。 +`0` 表示暂停扫码成功,其他表示暂停扫码失败。 ### camScandecode.resume @@ -178,32 +160,36 @@ camScandecode.resume() 该方法用于继续摄像头扫码。 -**参数描述** +**参数描述:** -无 +无。 **返回值描述:** -`0` 表示继续扫码成功; - -`其他`表示继续扫码失败。 +`0` 表示继续扫码成功,其他表示继续扫码失败。 ### camScandecode.callback ```python -def callback(para): - print(para) -camScandecode.callback(callback) +camScandecode.callback(cb) ``` -该方法用于设置识别回调函数 +该方法用于设置识别回调函数。 -**参数描述** +**参数描述:** -- `callback` - 识别回调函数,回调函数原型:function([result, content])->None
回调函数参数: [result, content]
result: 扫码结果(0:成功, 其它:失败)
content: 扫码内容 +- `cb` - 识别回调函数,回调函数原型: -**返回值描述:** + ``` + cb(result_list) + ``` + + **回调函数参数描述:** -`0` 表示设置识别回调函数成功; + - `result_list[0]` - 扫码结果,int类型,`0`表示成功, 其它表示失败 + + - `result_list[1]` - 扫码内容,string类型。 + +**返回值描述:** -`其他`表示设置识别回调函数失败。 \ No newline at end of file +`0` 表示设置识别回调函数成功,其他表示设置识别回调函数失败。 \ No newline at end of file diff --git "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.CamPreview.md" "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.CamPreview.md" index 4ef19198..dfdd2af6 100644 --- "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.CamPreview.md" +++ "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.CamPreview.md" @@ -1,16 +1,10 @@ -``` -本文阐述了QuecPython的camera.camPreview类的用法,描述了camera.camPreview类最新版本的特性。 -``` - - - -# `class camPreview` - 摄像头预览 +# class camPreview - 摄像头预览 -`camPreview`对象提供摄像头的预览功能。 +类功能:提供摄像头的预览功能。 -注意:使用该功能前,需要初始化LCD。 +> 注意:使用该功能前,需要初始化LCD。 **示例:** @@ -51,7 +45,7 @@ class camera.camPreview(model,cam_w,cam_h,lcd_w,lcd_h,perview_level) - `lcd_h` - LCD垂直分辨率,int类型,请按照所使用的LCD的规格填写。 - `perview_level` - 预览等级,int类型,型号EC600N系列、EC800N系列、EC600M系列、EC800M系列可填写1或2,等级越高,图像越流畅,消耗资源越大;其他型号只可填写1。 -摄像头型号对应表: +**摄像头型号对应表:** | 编号 | 摄像头型号 | 通信方式 | | ---- | ---------- | -------- | @@ -68,15 +62,13 @@ camPreview.open() 该方法用于打开摄像头的预览功能。 -**参数描述** +**参数描述:** -无 +无。 **返回值描述:** -`0` 表示打开预览成功; - -`其他`表示打开预览失败。 +`0` 表示打开预览成功,其他表示打开预览失败。 ### camPreview.close @@ -86,12 +78,10 @@ camPreview.close() 该方法用于关闭摄像头的预览功能。 -**参数描述** +**参数描述:** -无 +无。 **返回值描述:** -`0` 表示打开预览成功; - -`其他`表示打开预览失败。 \ No newline at end of file +`0` 表示打开预览成功,其他表示打开预览失败。 \ No newline at end of file diff --git "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.md" "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.md" index 59c0db14..af1778f9 100644 --- "a/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.md" +++ "b/docs/API_reference/zh/QuecPython\347\261\273\345\272\223/camera.md" @@ -1,24 +1,15 @@ +# camera - 摄像头 +模块功能:实现摄像头预览,照相机,扫码功能。 -``` -本文阐述了QuecPython的camera模块的用法,描述了camera模块最新版本的特性。 -``` - - - -# `camera` - 摄像头相关功能 - -`camera`模块包含摄像头相关的功能。包括摄像头预览功能,照相机功能以及扫码功能。 - -模块功能:实现摄像头预览,照相机,扫码功能 - -> 目前支持型号:EC600N系列、EC800N系列、EC600M系列、EC800M系列;EC600U系列和EC200U系列可定制该功能。 +> 目前支持型号:EC600N系列、EC800N系列、EC600M系列、EC800M系列、EC600U-CN系列、EC200U-CN系列。 > -> 注意:如果需要预览,在初始化camera对象之前,请先参照machine模块的lcd类的内容正确初始化LCD对象。 +> 注意:如果需要预览,在初始化camera对象之前,请先参照[machine模块的lcd类的内容](machine.LCD.md)正确初始化LCD对象。 **示例:** ```python +# -*- coding: UTF-8 -*- from machine import LCD import camera diff --git a/docs/API_reference/zh/sidebar.yaml b/docs/API_reference/zh/sidebar.yaml index 2d294fab..211d0e32 100644 --- a/docs/API_reference/zh/sidebar.yaml +++ b/docs/API_reference/zh/sidebar.yaml @@ -59,6 +59,24 @@ items: file: QuecPython类库/wifiScan.md - label: ethernet - 以太网相关功能 file: QuecPython类库/ethernet.md + - label: camera - 摄像扫码 + file: QuecPython类库/camera.md + items: + - label: CamPreview - 摄像头预览 + file: QuecPython类库/camera.CamPreview.md + - label: CamDecoder - 摄像头扫码 + file: QuecPython类库/camera.CamDecoder.md + - label: CamCapture - 摄像头拍照 + file: QuecPython类库/camera.CamCapture.md + - label: audio - 音频播放 + file: QuecPython类库/audio.md + items: + - label: TTS - 文本到语音播放 + file: QuecPython类库/audio.TTS.md + - label: Audio - 音频播放 + file: QuecPython类库/audio.Audio.md + - label: Record - 录音 + file: QuecPython类库/audio.Record.md - label: WLAN - 无线局域网相关功能 file: QuecPython类库/WLAN.md - label: misc - 其他 -- Gitee