diff options
author | Jiří Pinkava <j-pi@seznam.cz> | 2016-06-26 13:04:37 +0200 |
---|---|---|
committer | Jiří Pinkava <j-pi@seznam.cz> | 2016-09-20 10:39:49 +0200 |
commit | 48b155fcceffa20aec8c16d7227968e7ff126633 (patch) | |
tree | acb5d319090857f8463dbde0c5e93c6b301b4495 /gr-audio/examples | |
parent | f874d7767cc1d70eb13add441124c4da9d637b4d (diff) |
examples: replace OptionParser by ArgumentParser
Diffstat (limited to 'gr-audio/examples')
-rwxr-xr-x | gr-audio/examples/python/audio_play.py | 30 | ||||
-rwxr-xr-x | gr-audio/examples/python/audio_to_file.py | 33 | ||||
-rwxr-xr-x | gr-audio/examples/python/dial_tone_daemon.py | 22 | ||||
-rwxr-xr-x | gr-audio/examples/python/dial_tone_wav.py | 30 | ||||
-rwxr-xr-x | gr-audio/examples/python/mono_tone.py | 28 | ||||
-rwxr-xr-x | gr-audio/examples/python/multi_tone.py | 30 | ||||
-rwxr-xr-x | gr-audio/examples/python/noise.py | 20 | ||||
-rwxr-xr-x | gr-audio/examples/python/spectrum_inversion.py | 26 | ||||
-rwxr-xr-x | gr-audio/examples/python/test_resampler.py | 28 |
9 files changed, 107 insertions, 140 deletions
diff --git a/gr-audio/examples/python/audio_play.py b/gr-audio/examples/python/audio_play.py index 94ea72498d..367d7bd201 100755 --- a/gr-audio/examples/python/audio_play.py +++ b/gr-audio/examples/python/audio_play.py @@ -23,8 +23,8 @@ from gnuradio import gr from gnuradio import audio from gnuradio import blocks -from gnuradio.eng_option import eng_option -from optparse import OptionParser +from gnuradio.eng_arg import eng_float +from argparse import ArgumentParser class my_top_block(gr.top_block): @@ -32,22 +32,18 @@ class my_top_block(gr.top_block): def __init__(self): gr.top_block.__init__(self) - parser = OptionParser(option_class=eng_option) - parser.add_option("-F", "--filename", type="string", default="audio.dat", - help="read input from FILE") - parser.add_option("-r", "--sample-rate", type="eng_float", default=48000, - help="set sample rate to RATE (48000)") - parser.add_option("-R", "--repeat", action="store_true", default=False) - parser.add_option("-O", "--audio-output", type="string", default="", + parser = ArgumentParser() + parser.add_argument("-F", "--filename", default="audio.dat", + help="read input from FILENAME default=%(default)r") + parser.add_argument("-r", "--sample-rate", type=eng_float, default=48000, + help="set sample rate (default=%(default)r)") + parser.add_argument("-R", "--repeat", action="store_true") + parser.add_argument("-O", "--audio-output", default="", help="pcm output device name. E.g., hw:0,0 or /dev/dsp") - (options, args) = parser.parse_args() - if len(args) != 0: - parser.print_help() - raise SystemExit, 1 - - sample_rate = int(options.sample_rate) - src = blocks.file_source (gr.sizeof_float, options.filename, options.repeat) - dst = audio.sink (sample_rate, options.audio_output) + args = parser.parse_args() + sample_rate = int(args.sample_rate) + src = blocks.file_source(gr.sizeof_float, args.filename, args.repeat) + dst = audio.sink(sample_rate, args.audio_output) self.connect(src, dst) diff --git a/gr-audio/examples/python/audio_to_file.py b/gr-audio/examples/python/audio_to_file.py index 6a2cbcb12e..b385abf925 100755 --- a/gr-audio/examples/python/audio_to_file.py +++ b/gr-audio/examples/python/audio_to_file.py @@ -23,37 +23,34 @@ from gnuradio import gr from gnuradio import audio from gnuradio import blocks -from gnuradio.eng_option import eng_option -from optparse import OptionParser +from gnuradio.eng_arg import eng_float +from argparse import ArgumentParser class my_top_block(gr.top_block): def __init__(self): gr.top_block.__init__(self) - usage="%prog: [options] output_filename" - parser = OptionParser(option_class=eng_option, usage=usage) - parser.add_option("-I", "--audio-input", type="string", default="", + parser = ArgumentParser() + parser.add_argument("-I", "--audio-input", default="", help="pcm input device name. E.g., hw:0,0 or /dev/dsp") - parser.add_option("-r", "--sample-rate", type="eng_float", default=48000, - help="set sample rate to RATE (48000)") - parser.add_option("-N", "--nsamples", type="eng_float", default=None, + parser.add_argument("-r", "--sample-rate", type=eng_float, default=48000, + help="set sample rate to RATE (%(default)r)") + parser.add_argument("-N", "--nsamples", type=eng_float, help="number of samples to collect [default=+inf]") + parser.add_argument('file_name', metavar='FILE-NAME', + help="Output file path") - (options, args) = parser.parse_args () - if len(args) != 1: - parser.print_help() - raise SystemExit, 1 - filename = args[0] + args = parser.parse_args() - sample_rate = int(options.sample_rate) - src = audio.source (sample_rate, options.audio_input) - dst = blocks.file_sink (gr.sizeof_float, filename) + sample_rate = int(args.sample_rate) + src = audio.source(sample_rate, args.audio_input) + dst = blocks.file_sink(gr.sizeof_float, args.file_name) - if options.nsamples is None: + if args.nsamples is None: self.connect((src, 0), dst) else: - head = blocks.head(gr.sizeof_float, int(options.nsamples)) + head = blocks.head(gr.sizeof_float, int(args.nsamples)) self.connect((src, 0), head, dst) diff --git a/gr-audio/examples/python/dial_tone_daemon.py b/gr-audio/examples/python/dial_tone_daemon.py index e4dbd95321..9919e367a6 100755 --- a/gr-audio/examples/python/dial_tone_daemon.py +++ b/gr-audio/examples/python/dial_tone_daemon.py @@ -22,8 +22,8 @@ from gnuradio import gr, gru from gnuradio import audio -from gnuradio.eng_option import eng_option -from optparse import OptionParser +from gnuradio.eng_arg import eng_float +from argparse import ArgumentParser import os try: @@ -37,22 +37,18 @@ class my_top_block(gr.top_block): def __init__(self): gr.top_block.__init__(self) - parser = OptionParser(option_class=eng_option) - parser.add_option("-O", "--audio-output", type="string", default="", + parser = ArgumentParser() + parser.add_argument("-O", "--audio-output", default="", help="pcm output device name. E.g., hw:0,0 or /dev/dsp") - parser.add_option("-r", "--sample-rate", type="eng_float", default=48000, - help="set sample rate to RATE (48000)") - (options, args) = parser.parse_args() - if len(args) != 0: - parser.print_help() - raise SystemExit, 1 - - sample_rate = int(options.sample_rate) + parser.add_argument("-r", "--sample-rate", type=eng_float, default=48000, + help="set sample rate to RATE (%(default)r)") + args = parser.parse_args() + sample_rate = int(args.sample_rate) ampl = 0.1 src0 = analog.sig_source_f(sample_rate, analog.GR_SIN_WAVE, 350, ampl) src1 = analog.sig_source_f(sample_rate, analog.GR_SIN_WAVE, 440, ampl) - dst = audio.sink(sample_rate, options.audio_output) + dst = audio.sink(sample_rate, args.audio_output) self.connect(src0, (dst, 0)) self.connect(src1, (dst, 1)) diff --git a/gr-audio/examples/python/dial_tone_wav.py b/gr-audio/examples/python/dial_tone_wav.py index 82f8cf331d..351ca94e78 100755 --- a/gr-audio/examples/python/dial_tone_wav.py +++ b/gr-audio/examples/python/dial_tone_wav.py @@ -24,8 +24,8 @@ from gnuradio import gr from gnuradio import blocks -from gnuradio.eng_option import eng_option -from optparse import OptionParser +from gnuradio.eng_arg import eng_float +from argparse import ArgumentParser try: from gnuradio import analog @@ -38,25 +38,23 @@ class my_top_block(gr.top_block): def __init__(self): gr.top_block.__init__(self) - usage = "%prog: [options] filename" - parser = OptionParser(option_class=eng_option, usage=usage) - parser.add_option("-r", "--sample-rate", type="eng_float", default=48000, - help="set sample rate to RATE (48000)") - parser.add_option("-N", "--samples", type="eng_float", default=None, - help="number of samples to record") - (options, args) = parser.parse_args () - if len(args) != 1 or options.samples is None: - parser.print_help() - raise SystemExit, 1 + parser = ArgumentParser() + parser.add_argument("-r", "--sample-rate", type=eng_float, default=48000, + help="set sample rate to RATE (%(default)r)") + parser.add_argument("-N", "--samples", type=eng_float, required=True, + help="number of samples to record") + parser.add_argument('file_name', metavar='WAV-FILE', + help='Output WAV file name', nargs=1) + args = parser.parse_args() - sample_rate = int(options.sample_rate) + sample_rate = int(args.sample_rate) ampl = 0.1 src0 = analog.sig_source_f(sample_rate, analog.GR_SIN_WAVE, 350, ampl) src1 = analog.sig_source_f(sample_rate, analog.GR_SIN_WAVE, 440, ampl) - head0 = blocks.head(gr.sizeof_float, int(options.samples)) - head1 = blocks.head(gr.sizeof_float, int(options.samples)) - dst = blocks.wavfile_sink(args[0], 2, int(options.sample_rate), 16) + head0 = blocks.head(gr.sizeof_float, int(args.samples)) + head1 = blocks.head(gr.sizeof_float, int(args.samples)) + dst = blocks.wavfile_sink(args.file_name[0], 2, int(args.sample_rate), 16) self.connect(src0, head0, (dst, 0)) self.connect(src1, head1, (dst, 1)) diff --git a/gr-audio/examples/python/mono_tone.py b/gr-audio/examples/python/mono_tone.py index ad73d62327..653fd575fc 100755 --- a/gr-audio/examples/python/mono_tone.py +++ b/gr-audio/examples/python/mono_tone.py @@ -22,8 +22,8 @@ from gnuradio import gr from gnuradio import audio -from gnuradio.eng_option import eng_option -from optparse import OptionParser +from gnuradio.eng_arg import eng_float +from argparse import ArgumentParser try: from gnuradio import analog @@ -40,27 +40,23 @@ class my_top_block(gr.top_block): def __init__(self): gr.top_block.__init__(self) - parser = OptionParser(option_class=eng_option) - parser.add_option("-O", "--audio-output", type="string", default="", + parser = ArgumentParser() + parser.add_argument("-O", "--audio-output", default="", help="pcm output device name. E.g., hw:0,0 or /dev/dsp") - parser.add_option("-r", "--sample-rate", type="eng_float", default=48000, - help="set sample rate to RATE (48000)") - parser.add_option("-D", "--dont-block", action="store_false", default=True, + parser.add_argument("-r", "--sample-rate", type=eng_float, default=48000, + help="set sample rate to RATE %(default)r)") + parser.add_argument("-D", "--dont-block", action="store_false", default=True, dest="ok_to_block") - (options, args) = parser.parse_args () - if len(args) != 0: - parser.print_help() - raise SystemExit, 1 - - sample_rate = int(options.sample_rate) - ampl = 0.1 + args = parser.parse_args() + sample_rate = int(args.sample_rate) + ampl = 0.5 src0 = analog.sig_source_f(sample_rate, analog.GR_SIN_WAVE, 650, ampl) dst = audio.sink(sample_rate, - options.audio_output, - options.ok_to_block) + args.audio_output, + args.ok_to_block) self.connect (src0, (dst, 0)) diff --git a/gr-audio/examples/python/multi_tone.py b/gr-audio/examples/python/multi_tone.py index 6232cbef52..00c052794a 100755 --- a/gr-audio/examples/python/multi_tone.py +++ b/gr-audio/examples/python/multi_tone.py @@ -22,8 +22,8 @@ from gnuradio import gr from gnuradio import audio -from gnuradio.eng_option import eng_option -from optparse import OptionParser +from gnuradio.eng_arg import eng_float, intx +from argparse import ArgumentParser try: from gnuradio import analog @@ -40,22 +40,18 @@ class my_top_block(gr.top_block): def __init__(self): gr.top_block.__init__(self) - parser = OptionParser(option_class=eng_option) - parser.add_option("-O", "--audio-output", type="string", default="", + parser = ArgumentParser() + parser.add_argument("-O", "--audio-output", default="", help="pcm output device name. E.g., hw:0,0 or /dev/dsp") - parser.add_option("-r", "--sample-rate", type="eng_float", default=48000, - help="set sample rate to RATE (48000)") - parser.add_option ("-m", "--max-channels", type="int", default="16", + parser.add_argument("-r", "--sample-rate", type=eng_float, default=48000, + help="set sample rate to RATE (%(default)r)") + parser.add_argument ("-m", "--max-channels", type=int, default=16, help="set maximum channels to use") - parser.add_option("-D", "--dont-block", action="store_false", default=True, + parser.add_argument("-D", "--dont-block", action="store_false", dest="ok_to_block") - (options, args) = parser.parse_args() - if len(args) != 0: - parser.print_help() - raise SystemExit, 1 - - sample_rate = int(options.sample_rate) - limit_channels = options.max_channels + args = parser.parse_args() + sample_rate = int(args.sample_rate) + limit_channels = args.max_channels ampl = 0.1 @@ -76,8 +72,8 @@ class my_top_block(gr.top_block): progression = (7, 11, 1, 5, 9) dst = audio.sink(sample_rate, - options.audio_output, - options.ok_to_block) + args.audio_output, + args.ok_to_block) max_chan = dst.input_signature().max_streams() if (max_chan == -1) or (max_chan > limit_channels): diff --git a/gr-audio/examples/python/noise.py b/gr-audio/examples/python/noise.py index b15065cd4e..31fdb16fe5 100755 --- a/gr-audio/examples/python/noise.py +++ b/gr-audio/examples/python/noise.py @@ -23,30 +23,26 @@ from gnuradio import gr from gnuradio import audio from gnuradio import digital -from gnuradio.eng_option import eng_option -from optparse import OptionParser +from gnuradio.eng_arg import eng_float +from argparse import ArgumentParser class my_top_block(gr.top_block): def __init__(self): gr.top_block.__init__(self) - parser = OptionParser(option_class=eng_option) - parser.add_option("-O", "--audio-output", type="string", default="", + parser = ArgumentParser() + parser.add_argument("-O", "--audio-output", default="", help="pcm output device name. E.g., hw:0,0 or /dev/dsp") - parser.add_option("-r", "--sample-rate", type="eng_float", default=48000, + parser.add_argument("-r", "--sample-rate", type=eng_float, default=48000, help="set sample rate to RATE (48000)") - (options, args) = parser.parse_args () - if len(args) != 0: - parser.print_help() - raise SystemExit, 1 - - sample_rate = int(options.sample_rate) + args = parser.parse_args() + sample_rate = int(args.sample_rate) ampl = 0.1 src = digital.glfsr_source_b(32) # Pseudorandom noise source b2f = digital.chunks_to_symbols_bf([ampl, -ampl], 1) - dst = audio.sink(sample_rate, options.audio_output) + dst = audio.sink(sample_rate, args.audio_output) self.connect(src, b2f, dst) if __name__ == '__main__': diff --git a/gr-audio/examples/python/spectrum_inversion.py b/gr-audio/examples/python/spectrum_inversion.py index a02d6c5821..163668e450 100755 --- a/gr-audio/examples/python/spectrum_inversion.py +++ b/gr-audio/examples/python/spectrum_inversion.py @@ -29,29 +29,25 @@ from gnuradio import gr from gnuradio import audio from gnuradio import blocks -from gnuradio.eng_option import eng_option -from optparse import OptionParser +from gnuradio.eng_arg import eng_float, intx +from argparse import ArgumentParser class my_top_block(gr.top_block): def __init__(self): gr.top_block.__init__(self) - parser = OptionParser(option_class=eng_option) - parser.add_option("-I", "--audio-input", type="string", default="", + parser = ArgumentParser() + parser.add_argument("-I", "--audio-input", default="", help="pcm input device name. E.g., hw:0,0 or /dev/dsp") - parser.add_option("-O", "--audio-output", type="string", default="", + parser.add_argument("-O", "--audio-output", default="", help="pcm output device name. E.g., hw:0,0 or /dev/dsp") - parser.add_option("-r", "--sample-rate", type="eng_float", default=8000, - help="set sample rate to RATE (8000)") - (options, args) = parser.parse_args () - if len(args) != 0: - parser.print_help() - raise SystemExit, 1 - - sample_rate = int(options.sample_rate) - src = audio.source (sample_rate, options.audio_input) - dst = audio.sink (sample_rate, options.audio_output) + parser.add_argument("-r", "--sample-rate", type=eng_float, default=8000, + help="set sample rate to RATE (%(default)r)") + args = parser.parse_args() + sample_rate = int(args.sample_rate) + src = audio.source (sample_rate, args.audio_input) + dst = audio.sink (sample_rate, args.audio_output) vec1 = [1, -1] vsource = blocks.vector_source_f(vec1, True) diff --git a/gr-audio/examples/python/test_resampler.py b/gr-audio/examples/python/test_resampler.py index 94d95fecf3..4d8a9233e7 100755 --- a/gr-audio/examples/python/test_resampler.py +++ b/gr-audio/examples/python/test_resampler.py @@ -23,8 +23,8 @@ from gnuradio import gr, gru from gnuradio import audio from gnuradio import filter -from gnuradio.eng_option import eng_option -from optparse import OptionParser +from gnuradio.eng_arg import eng_float, intx +from argparse import ArgumentParser try: from gnuradio import analog @@ -43,20 +43,16 @@ class my_top_block(gr.top_block): def __init__(self): gr.top_block.__init__(self) - parser = OptionParser(option_class=eng_option) - parser.add_option("-O", "--audio-output", type="string", default="", + parser = ArgumentParser() + parser.add_argument("-O", "--audio-output", default="", help="pcm output device name. E.g., hw:0,0 or /dev/dsp") - parser.add_option("-i", "--input-rate", type="eng_float", default=8000, - help="set input sample rate to RATE (%default)") - parser.add_option("-o", "--output-rate", type="eng_float", default=48000, - help="set output sample rate to RATE (%default)") - (options, args) = parser.parse_args() - if len(args) != 0: - parser.print_help() - raise SystemExit, 1 - - input_rate = int(options.input_rate) - output_rate = int(options.output_rate) + parser.add_argument("-i", "--input-rate", type=eng_float, default=8000, + help="set input sample rate to RATE %(default)r") + parser.add_argument("-o", "--output-rate", type=eng_float, default=48000, + help="set output sample rate to RATE %(default)r") + args = parser.parse_args() + input_rate = int(args.input_rate) + output_rate = int(args.output_rate) interp = gru.lcm(input_rate, output_rate) / input_rate decim = gru.lcm(input_rate, output_rate) / output_rate @@ -67,7 +63,7 @@ class my_top_block(gr.top_block): ampl = 0.1 src0 = analog.sig_source_f(input_rate, analog.GR_SIN_WAVE, 650, ampl) rr = filter.rational_resampler_fff(interp, decim) - dst = audio.sink(output_rate, options.audio_output) + dst = audio.sink(output_rate, args.audio_output) self.connect(src0, rr, (dst, 0)) if __name__ == '__main__': |