加盟裝修公司怎么合作谷歌推廣seo
常量
常量 | 類型 | 解釋 |
---|---|---|
audio.PCM | number | PCM格式,即原始ADC數(shù)據(jù) |
audio.MORE_DATA | number | audio.on回調(diào)函數(shù)傳入?yún)?shù)的值,表示底層播放完一段數(shù)據(jù),可以傳入更多數(shù)據(jù) |
audio.DONE | number | audio.on回調(diào)函數(shù)傳入?yún)?shù)的值,表示底層播放完全部數(shù)據(jù)了 |
audio.BUS_DAC | number | 硬件輸出總線,DAC類型 |
audio.BUS_I2S | number | 硬件輸出總線,I2S類型 |
audio.BUS_SOFT_DAC | number | 硬件輸出總線,軟件模式DAC類型 |
audio.start(id, audio_format, num_channels, sample_rate, bits_per_sample, is_signed)
啟動一個多媒體通道準備播放音頻
參數(shù)
傳入值類型 | 解釋 |
---|---|
int | 多媒體播放通道號,0或者1 |
int | 音頻格式 |
int | 聲音通道數(shù) |
int | 采樣頻率 |
int | 采樣位數(shù) |
boolean | 是否有符號,默認true |
返回值
返回值類型 | 解釋 |
---|---|
boolean | 成功true, 失敗false |
例子
audio.start(0, audio.PCM, 1, 16000, 16)
audio.write(id, data)
往一個多媒體通道寫入音頻數(shù)據(jù)
參數(shù)
傳入值類型 | 解釋 |
---|---|
string | or zbuff 音頻數(shù)據(jù) |
返回值
返回值類型 | 解釋 |
---|---|
boolean | 成功返回true,否則返回false |
例子
audio.write(0, "xxxxxx")
audio.stop(id)
停止指定的多媒體通道
參數(shù)
傳入值類型 | 解釋 |
---|---|
int | audio id,例如0 |
返回值
返回值類型 | 解釋 |
---|---|
boolean | 成功返回true,否則返回false |
例子
audio.stop(0)
audio.pause(id, pause)
暫停/恢復指定的多媒體通道
參數(shù)
傳入值類型 | 解釋 |
---|---|
int | audio id,例如0 |
boolean | onoff true 暫停,false 恢復 |
返回值
返回值類型 | 解釋 |
---|---|
boolean | 成功返回true,否則返回false |
例子
audio.pause(0, true) --暫停通道0 audio.pause(0, false) --恢復通道0
audio.on(id, event, func)
注冊audio播放事件回調(diào)
參數(shù)
傳入值類型 | 解釋 |
---|---|
int | audio id, audio 0寫0, audio 1寫1 |
function | 回調(diào)方法,回調(diào)時傳入?yún)?shù)為1、int 通道ID 2、int 消息值,只有audio.MORE_DATA和audio.DONE |
返回值
返回值類型 | 解釋 |
---|---|
nil | 無返回值 |
例子
audio.on(0, function(audio_id, msg)log.info("msg", audio_id, msg) end)
audio.play(id, path, errStop)
播放或者停止播放一個文件,播放完成后,會回調(diào)一個audio.DONE消息,可以用pause來暫停或者恢復,其他API不可用??紤]到讀SD卡速度比較慢而拖累luavm進程的速度,所以盡量使用本API
參數(shù)
傳入值類型 | 解釋 |
---|---|
int | 音頻通道 |
string/table | 文件名,如果為空,則表示停止播放,如果是table,則表示連續(xù)播放多個文件,主要應用于云喇叭,目前只有EC618支持,并且會用到errStop參數(shù) |
boolean | 是否在文件解碼失敗后停止解碼,只有在連續(xù)播放多個文件時才有用,默認true,遇到解碼錯誤自動停止 |
返回值
返回值類型 | 解釋 |
---|---|
boolean | 成功返回true,否則返回false |
例子
audio.play(0, "xxxxxx") --開始播放某個文件 audio.play(0) --停止播放某個文件
audio.tts(id, data)
TTS播放或者停止
參數(shù)
傳入值類型 | 解釋 |
---|---|
int | 音頻通道 |
string/zbuff | 需要播放的內(nèi)容 |
返回值
返回值類型 | 解釋 |
---|---|
boolean | 成功返回true,否則返回false |
例子
無
audio.playStop(id)
停止播放文件,和audio.play(id)是一樣的作用
參數(shù)
傳入值類型 | 解釋 |
---|---|
int | audio id,例如0 |
返回值
返回值類型 | 解釋 |
---|---|
boolean | 成功返回true,否則返回false |
例子
audio.playStop(0)
audio.isEnd(id)
檢查當前文件是否已經(jīng)播放結束
參數(shù)
傳入值類型 | 解釋 |
---|---|
int | 音頻通道 |
返回值
返回值類型 | 解釋 |
---|---|
boolean | 成功返回true,否則返回false |
例子
audio.isEnd(0)
audio.getError(id)
獲取最近一次播放結果,不是所有平臺都支持的,目前只有EC618支持
參數(shù)
傳入值類型 | 解釋 |
---|---|
int | 音頻通道 |
返回值
返回值類型 | 解釋 |
---|---|
boolean | 是否全部播放成功,true成功,false有文件播放失敗 |
boolean | 如果播放失敗,是否是用戶停止,true是,false不是 |
int | 第幾個文件失敗了,從1開始 |
例子
local result, user_stop, file_no = audio.getError(0)
audio.config(id, paPin, onLevel, dacDelay, paDelay, dacPin, dacLevel, dacTimeDelay)
配置一個音頻通道的特性,比如實現(xiàn)自動控制PA開關。注意這個不是必須的,一般在調(diào)用play的時候才需要自動控制,其他情況比如你手動控制播放時,就可以自己控制PA開關
參數(shù)
傳入值類型 | 解釋 |
---|---|
int | 音頻通道 |
int | PA控制IO |
int | PA打開時的電平 |
int | 在DAC啟動前插入的冗余時間,單位100ms,一般用于外部DAC |
int | 在DAC啟動后,延遲多長時間打開PA,單位1ms |
int | 外部dac電源控制IO,如果不填,則表示使用平臺默認IO,比如Air780E使用DACEN腳,air105則不啟用 |
int | 外部dac打開時,電源控制IO的電平,默認拉高 |
int | 音頻播放完畢時,PA與DAC關閉的時間間隔,單位1ms,默認0ms |
返回值
無
例子
audio.config(0, pin.PC0, 1) --PA控制腳是PC0,高電平打開,air105用這個配置就可以用了 audio.config(0, 25, 1, 6, 200) --PA控制腳是GPIO25,高電平打開,Air780E云喇叭板用這個配置就可以用了
audio.vol(id, value)
配置一個音頻通道的音量調(diào)節(jié),直接將原始數(shù)據(jù)放大或者縮小,不是所有平臺都支持,建議盡量用硬件方法去縮放
參數(shù)
傳入值類型 | 解釋 |
---|---|
int | 音頻通道 |
int | 音量,百分比,1%~1000%,默認100%,就是不調(diào)節(jié) |
返回值
返回值類型 | 解釋 |
---|---|
int | 當前音量 |
例子
local result = audio.vol(0, 90) --通道0的音量調(diào)節(jié)到90%,result存放了調(diào)節(jié)后的音量水平,有可能仍然是100
audio.setBus(id, bus_type)
配置一個音頻通道的硬件輸出總線,只有對應soc軟硬件平臺支持才設置對應類型
參數(shù)
傳入值類型 | 解釋 |
---|---|
int | 音頻通道,例如0 |
int | 總線類型, 例如 audio.BUS_SOFT_DAC |
返回值
返回值類型 | 解釋 |
---|---|
nil | 無返回值 |
例子
audio.setBus(0, audio.BUS_SOFT_DAC) --通道0的硬件輸出通道設置為軟件DAC audio.setBus(0, audio.BUS_I2S) --通道0的硬件輸出通道設置為I2S
audio.debug(on_off)
配置調(diào)試信息輸出
參數(shù)
傳入值類型 | 解釋 |
---|---|
boolean | true開 false關 |
返回值
無
例子
無
Next
bit64 - 32位系統(tǒng)上對64位數(shù)據(jù)的基本算術運算和邏輯運算
Previous
adc - 數(shù)模轉換
評論區(qū)僅用于討論文檔內(nèi)容。如有使用問題或新需求,請進支持群討論或在官方倉庫新建issue