feature/autosinkfeature/cnnfeature/cnn_orgfeature/constantqfeature/crepefeature/crepe_orgfeature/pitchshiftfeature/pydocstringsfeature/timestretchfix/ffmpeg5sampleryinfft+
Last change
on this file since 61a1e5d was
4120fbc,
checked in by Paul Brossier <piem@piem.org>, 8 years ago
|
python/demos: python3 and double precision compatibility
|
-
Property mode set to
100755
|
File size:
1015 bytes
|
Line | |
---|
1 | #! /usr/bin/env python |
---|
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 |
---|
22 | #spectrum.norm *= .8 # reduce amplitude a bit |
---|
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 | format_str = "read {:d} samples from {:s}, written to {:s}" |
---|
29 | print(format_str.format(total_frames, f.uri, g.uri)) |
---|
Note: See
TracBrowser
for help on using the repository browser.