import random
import numpy as np
from scikits.audiolab import *
file = open("decoder.dat","a")
def map(x):
return 3.9*x*(1-x)
message_file = Sndfile("chaos_encrypted.wav","r")
message = message_file.read_frames(message_file.nframes)
chaos = [random.uniform(0,1)]
i = 0
for x in message:
chaos.append(map(0.5*(x+chaos[-1])))
print >>file,'%g %g'%(i,chaos[-1])
i= i + 1
chaos = np.array(chaos)[0:-1]
restored = (message-chaos)*100
format = Format('wav')
restored_file = Sndfile("chaos_decrypted.wav", 'w', format, 1, 44100)
restored_file.write_frames(restored)
file.close()