•
•
•
•
What is DaniWeb IT Discussion Community?
You're currently browsing the Python section within the Software Development category of DaniWeb, a massive community of 397,758 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 2,422 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our Python advertiser:
This code creates a sound file in Sun's simple AU audio format of a sine wave of given frequency, duration and volume.
# create a soundfile in AU format playing a sine wave # of a given frequency, duration and volume # tested with Python25 by vegaseat 29jan2008 from struct import pack from math import sin, pi def au_file(name='test.au', freq=440, dur=1000, vol=0.5): """ creates an AU format audio file of a sine wave of frequency freq (Hz) for duration dur (milliseconds) at volume vol (max is 1.0) """ fout = open(name, 'wb') # header needs size, encoding=2, sampling_rate=8000, channel=1 fout.write('.snd' + pack('>5L', 24, 8*dur, 2, 8000, 1)) factor = 2 * pi * freq/8000 # write data for seg in range(8 * dur): # sine wave calculations sin_seg = sin(seg * factor) fout.write(pack('b', vol * 127 * sin_seg)) fout.close() # test the module ... if __name__ == '__main__': au_file(name='sound800.au', freq=800, dur=2000, vol=0.8) # if you have Windows, you can test the audio file # otherwise comment this code out import os os.startfile('sound800.au')
Post Comment
•
•
•
•
DaniWeb Marketplace (Sponsored Links)