Try to reduce runaway memory usaqe
[scannr.git] / snd.py
blob:a/snd.py -> blob:b/snd.py
--- a/snd.py
+++ b/snd.py
@@ -90,7 +90,6 @@
         data = stream.read(CHUNK_SIZE)
         L = unpack('<' + ('h'*(len(data)/2)), data) # little endian, signed short
         L = array('h', L)
-        LRtn.extend(L)
 
         silent = is_silent(L)
         #print silent, num_silent, L[:10]
@@ -102,6 +101,8 @@
             dispatcher.send( signal='SND_STARTED')
             snd_started = True
             print snd_started
+        if snd_started:
+            LRtn.extend(L)
         if snd_started and num_silent > MAX_SILENT:
             break
 
@@ -127,6 +128,7 @@
     wf.writeframes(data)
     wf.close()
     print("done - result written to "+path)
+    del data