I’m loading thirty sounds into a table. The sound files are about 2 seconds a piece. My app begins to lag on an iPhone 4 when four or five sounds are expected to play in the a 5 or so second time window. I’ve tried various file type, frequencies, mono/stereo… you name it. Typical memory consumption is as follows:
MemUsage: 0.2150576171875 MB
Texture Usage 21.659648
Maybe it is my sounds files. I’ve tried both 22050Hz and 44100Hz for wav files, mp3, aiff, etc. My bitrate may be a bit high, but other than that i’ve been through all the combinations I could think of.
Edit: If it helps any, it seems like the app lags a bit on first play of each sound, despite being preloaded and all.
Can any one catch anything below?
[lua]enso = {
context =
{
beatz = {{}, {}, {}, {}, {}, {}}
}
}
local beatz = enso.context.beatz
– Voice 1
beatz[1][1] = audio.loadSound(“Mar1.wav”)
beatz[1][2] = audio.loadSound(“Mar2.wav”)
beatz[1][3] = audio.loadSound(“Mar3.wav”)
beatz[1][4] = audio.loadSound(“Mar4.wav”)
beatz[1][5] = audio.loadSound(“Mar5.wav”)
– Voice 2
beatz[2][1] = audio.loadSound(“Spe1.wav”)
beatz[2][2] = audio.loadSound(“Spe2.wav”)
beatz[2][3] = audio.loadSound(“Spe3.wav”)
beatz[2][4] = audio.loadSound(“Spe4.wav”)
beatz[2][5] = audio.loadSound(“Spe5.wav”)
– Voice 3
beatz[3][1] = audio.loadSound(“Hbr1.wav”)
beatz[3][2] = audio.loadSound(“Hbr2.wav”)
beatz[3][3] = audio.loadSound(“Hbr3.wav”)
beatz[3][4] = audio.loadSound(“Hbr4.wav”)
beatz[3][5] = audio.loadSound(“Hbr5.wav”)
– Voice 4
beatz[4][1] = audio.loadSound(“Kal1.wav”)
beatz[4][2] = audio.loadSound(“Kal2.wav”)
beatz[4][3] = audio.loadSound(“Kal3.wav”)
beatz[4][4] = audio.loadSound(“Kal4.wav”)
beatz[4][5] = audio.loadSound(“Kal5.wav”)
– Voice 5
beatz[5][1] = audio.loadSound(“Bel1.wav”)
beatz[5][2] = audio.loadSound(“Bel2.wav”)
beatz[5][3] = audio.loadSound(“Bel3.wav”)
beatz[5][4] = audio.loadSound(“Bel4.wav”)
beatz[5][5] = audio.loadSound(“Bel5.wav”)
– Voice 6
beatz[6][1] = audio.loadSound(“Pia1.wav”)
beatz[6][2] = audio.loadSound(“Pia2.wav”)
beatz[6][3] = audio.loadSound(“Pia3.wav”)
beatz[6][4] = audio.loadSound(“Pia4.wav”)
beatz[6][5] = audio.loadSound(“Pia5.wav”)
audio.setVolume(.2)
local minScale = enso.context.minScale
local maxScale = enso.context.maxScale
local bucketSize = (maxScale - minScale) / 5.0
function enso.soundWith(circle1, circle2)
local scale_1 = circle1.imageRect.xScale
local scale_2 = circle2.imageRect.xScale
– find bucket for circle 1
local inf = minScale
local sup = inf + bucketSize
local bucket = 5
while inf < maxScale do
if inf <= scale_1 and sup >= scale_1 then
local availableChannel = audio.findFreeChannel()
audio.play(beatz[enso.context.selectedVoiceForColor[circle1.color]][bucket], {channel=availableChannel})
break
end
inf = sup
sup = inf + bucketSize
bucket = bucket-1
end
– find bucket for circle 2
inf = minScale
sup = inf + bucketSize
bucket = 5
while inf < maxScale do
if inf <= scale_2 and sup >= scale_2 then
local availableChannel = audio.findFreeChannel()
audio.play(beatz[enso.context.selectedVoiceForColor[circle2.color]][bucket], {channel=availableChannel})
break
end
inf = sup
sup = inf + bucketSize
bucket = bucket-1
end
end
[import]uid: 13050 topic_id: 18399 reply_id: 318399[/import]