feature/autosinkfeature/cnnfeature/cnn_orgfeature/constantqfeature/crepefeature/crepe_orgfeature/pitchshiftfeature/pydocstringsfeature/timestretchfix/ffmpeg5pitchshiftsamplertimestretchyinfft+
Last change
on this file since e76842e was
5d5d6b9,
checked in by Paul Brossier <piem@piem.org>, 12 years ago
|
python/demos: add demo_pitch.py and demo_waveform_plot.py
|
-
Property mode set to
100755
|
File size:
903 bytes
|
Rev | Line | |
---|
[7175ed4] | 1 | #! /usr/bin/env python |
---|
[e693b6c] | 2 | |
---|
| 3 | import sys |
---|
| 4 | from aubio import source, sink, pvoc |
---|
| 5 | |
---|
| 6 | if __name__ == '__main__': |
---|
| 7 | if len(sys.argv) < 2: |
---|
| 8 | print 'usage: %s <inputfile> <outputfile>' % sys.argv[0] |
---|
| 9 | sys.exit(1) |
---|
| 10 | samplerate = 44100 |
---|
| 11 | f = source(sys.argv[1], samplerate, 256) |
---|
| 12 | g = sink(sys.argv[2], samplerate) |
---|
| 13 | total_frames, read = 0, 256 |
---|
| 14 | |
---|
| 15 | win_s = 512 # fft size |
---|
| 16 | hop_s = win_s / 2 # hop size |
---|
| 17 | pv = pvoc(win_s, hop_s) # phase vocoder |
---|
| 18 | |
---|
| 19 | while read: |
---|
| 20 | samples, read = f() |
---|
| 21 | spectrum = pv(samples) # compute spectrum |
---|
[5d5d6b9] | 22 | #spectrum.norm *= .8 # reduce amplitude a bit |
---|
[e693b6c] | 23 | spectrum.phas[:] = 0. # zero phase |
---|
| 24 | new_samples = pv.rdo(spectrum) # compute modified samples |
---|
| 25 | g(new_samples, read) # write to output |
---|
| 26 | total_frames += read |
---|
| 27 | |
---|
| 28 | print "wrote", total_frames, "from", f.uri, "to", g.uri |
---|
| 29 | |
---|
| 30 | |
---|
Note: See
TracBrowser
for help on using the repository browser.