3 # Gang - Here's a simple script that demonstrates spectrum inversion
4 # using the multiply by [1,-1] method (mixing with Nyquist frequency).
5 # Requires nothing but a sound card, and sounds just like listening
6 # to a SSB signal on the wrong sideband.
9 from gnuradio import gr
10 from gnuradio import audio
11 from gnuradio.eng_option import eng_option
12 from optparse import OptionParser
14 class my_graph(gr.flow_graph):
17 gr.flow_graph.__init__(self)
19 parser = OptionParser(option_class=eng_option)
20 parser.add_option("-I", "--audio-input", type="string", default="",
21 help="pcm input device name. E.g., hw:0,0 or /dev/dsp")
22 parser.add_option("-O", "--audio-output", type="string", default="",
23 help="pcm output device name. E.g., hw:0,0 or /dev/dsp")
24 parser.add_option("-r", "--sample-rate", type="eng_float", default=8000,
25 help="set sample rate to RATE (8000)")
26 (options, args) = parser.parse_args ()
31 sample_rate = int(options.sample_rate)
32 src = audio.source (sample_rate, options.audio_input)
33 dst = audio.sink (sample_rate, options.audio_output)
36 vsource = gr.vector_source_f(vec1, True)
37 multiply = gr.multiply_ff()
39 self.connect(src, (multiply, 0))
40 self.connect(vsource, (multiply, 1))
41 self.connect(multiply, dst)
44 if __name__ == '__main__':
47 except KeyboardInterrupt: