无法检测麦克风音量

时间:2013-09-13 16:14:54

标签: iphone ios lua corona

我按照指南(可在http://sree.cc/corona-sdk/detect-microphone-volume-blowing-into-microphone找到)尝试检测麦克风音量。

我使用的代码是:

local _w = display.contentWidth
local _h = display.contentHeight


local background_ = display.newRect(0,0,_w,_h)
background_:setFillColor(255)
local text_ = display.newText(“Initial…”,200,10,nil,30)
text_:setTextColor(0)

local r = media.newRecording()
r:startRecording()
r:startTuner()

function soundDetector( event )
local v = r:getTunerVolume()
if v == 0 then
return
end

v = 20 * 0.301 * math.log(v)
m = v*10
if(m>= -50)then
text_.text = “High…”
background_:setFillColor(255,0,0)
elseif(m< -50 and m>-100)then
text_.text = “Medium…”
background_:setFillColor(0,0,255)
else
text_.text = “Low…”
background_:setFillColor(0,255,0)
end
end


Runtime:addEventListener( “enterFrame”, soundDetector )

问题是控制台在第7行返回“附近的'意外符号'。”

我尝试修改以下代码:

local _w = display.contentWidth
local _h = display.contentHeight

local background_ = display.newRect(0,0,_w,_h)
background_:setFillColor(255)




local r = media.newRecording()
r:startRecording()
r:startTuner()


function soundDetector( event )
local v = r:getTunerVolume()
if v == 0 then
return
end


v = 20 * 0.301 * math.log(v)
m = v*10

if(m>= -50)then

background_:setFillColor(255,0,0)
elseif(m< -50 and m>-100)then

background_:setFillColor(0,0,255)
else

background_:setFillColor(0,255,0)
end

end


Runtime:addEventListener( “enterFrame”, soundDetector )

但是控制台在最后一行返回相同的错误(','附近的意外符号)(“运行时:addEventListener(”enterFrame“,soundDetector)”)

我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:0)

在行中:

Runtime:addEventListener( “enterFrame”, soundDetector )

enterFrame周围的引号不是ASCII双引号。正确的行应该是:

Runtime:addEventListener( "enterFrame", soundDetector )

可能是从另一个来源(PDF文档?)中剪切和粘贴,在某处触发了自动替换。同样的问题似乎是您发布的第一个代码段中的错误原因:

local text_ = display.newText(“Initial…”,200,10,nil,30)

local text_ = display.newText("Initial…",200,10,nil,30)

P.S。:您的代码格式可怕。