summaryrefslogtreecommitdiff
path: root/gr-audio/examples
diff options
context:
space:
mode:
Diffstat (limited to 'gr-audio/examples')
-rw-r--r--gr-audio/examples/c++/CMakeLists.txt4
-rw-r--r--gr-audio/examples/c++/dial_tone.cc14
-rw-r--r--gr-audio/examples/grc/cvsd_sweep.grc422
-rw-r--r--gr-audio/examples/grc/dial_tone.grc272
-rwxr-xr-xgr-audio/examples/python/audio_play.py3
-rwxr-xr-xgr-audio/examples/python/audio_to_file.py3
-rwxr-xr-xgr-audio/examples/python/dial_tone.py21
-rwxr-xr-xgr-audio/examples/python/dial_tone_daemon.py21
-rwxr-xr-xgr-audio/examples/python/dial_tone_wav.py15
-rwxr-xr-xgr-audio/examples/python/mono_tone.py16
-rwxr-xr-xgr-audio/examples/python/multi_tone.py24
-rwxr-xr-xgr-audio/examples/python/noise.py3
-rwxr-xr-xgr-audio/examples/python/spectrum_inversion.py3
-rwxr-xr-xgr-audio/examples/python/test_resampler.py26
14 files changed, 515 insertions, 332 deletions
diff --git a/gr-audio/examples/c++/CMakeLists.txt b/gr-audio/examples/c++/CMakeLists.txt
index 0255f6e9b4..ee98f78e72 100644
--- a/gr-audio/examples/c++/CMakeLists.txt
+++ b/gr-audio/examples/c++/CMakeLists.txt
@@ -19,12 +19,14 @@
include_directories(
${GR_AUDIO_INCLUDE_DIRS}
+ ${GR_ANALOG_INCLUDE_DIRS}
${GNURADIO_CORE_INCLUDE_DIRS}
${GRUEL_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS}
)
+
add_executable(dial_tone dial_tone.cc)
-target_link_libraries(dial_tone gnuradio-audio)
+target_link_libraries(dial_tone gnuradio-audio gnuradio-analog)
INSTALL(TARGETS
dial_tone
diff --git a/gr-audio/examples/c++/dial_tone.cc b/gr-audio/examples/c++/dial_tone.cc
index 4cd0ff59cf..f866edfdee 100644
--- a/gr-audio/examples/c++/dial_tone.cc
+++ b/gr-audio/examples/c++/dial_tone.cc
@@ -1,5 +1,5 @@
/*
- * Copyright 2011 Free Software Foundation, Inc.
+ * Copyright 2011,2013 Free Software Foundation, Inc.
*
* This file is part of GNU Radio
*
@@ -38,8 +38,10 @@
// Include header files for each block used in flowgraph
#include <gr_top_block.h>
-#include <gr_sig_source_f.h>
-#include <gr_audio_sink.h>
+#include <analog/sig_source_f.h>
+#include <audio/sink.h>
+
+using namespace gr;
int main(int argc, char **argv)
{
@@ -52,11 +54,11 @@ int main(int argc, char **argv)
gr_top_block_sptr tb = gr_make_top_block("dial_tone");
// Construct a real-valued signal source for each tone, at given sample rate
- gr_sig_source_f_sptr src0 = gr_make_sig_source_f(rate, GR_SIN_WAVE, 350, ampl);
- gr_sig_source_f_sptr src1 = gr_make_sig_source_f(rate, GR_SIN_WAVE, 440, ampl);
+ analog::sig_source_f::sptr src0 = analog::sig_source_f::make(rate, analog::GR_SIN_WAVE, 350, ampl);
+ analog::sig_source_f::sptr src1 = analog::sig_source_f::make(rate, analog::GR_SIN_WAVE, 440, ampl);
// Construct an audio sink to accept audio tones
- audio_sink::sptr sink = audio_make_sink(rate);
+ audio::sink::sptr sink = audio::sink::make(rate);
// Connect output #0 of src0 to input #0 of sink (left channel)
tb->connect(src0, 0, sink, 0);
diff --git a/gr-audio/examples/grc/cvsd_sweep.grc b/gr-audio/examples/grc/cvsd_sweep.grc
index b645b747ab..496fd4f8e7 100644
--- a/gr-audio/examples/grc/cvsd_sweep.grc
+++ b/gr-audio/examples/grc/cvsd_sweep.grc
@@ -1,50 +1,59 @@
<?xml version='1.0' encoding='ASCII'?>
<flow_graph>
- <timestamp>Sat Sep 19 20:30:08 2009</timestamp>
+ <timestamp>Sat Nov 10 15:10:11 2012</timestamp>
<block>
- <key>import</key>
+ <key>options</key>
<param>
<key>id</key>
- <value>import_0</value>
+ <value>cvsd_sweep</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>import</key>
- <value>import math</value>
+ <key>title</key>
+ <value>CVSD Vocoder Test</value>
</param>
<param>
- <key>_coordinate</key>
- <value>(157, 11)</value>
+ <key>author</key>
+ <value></value>
</param>
<param>
- <key>_rotation</key>
- <value>0</value>
+ <key>description</key>
+ <value></value>
</param>
- </block>
- <block>
- <key>vocoder_cvsd_decode_bf</key>
<param>
- <key>id</key>
- <value>vocoder_cvsd_decode_bf_0</value>
+ <key>window_size</key>
+ <value>1280, 1024</value>
</param>
<param>
- <key>_enabled</key>
+ <key>generate_options</key>
+ <value>wx_gui</value>
+ </param>
+ <param>
+ <key>category</key>
+ <value>Custom</value>
+ </param>
+ <param>
+ <key>run_options</key>
+ <value>prompt</value>
+ </param>
+ <param>
+ <key>run</key>
<value>True</value>
</param>
<param>
- <key>resample</key>
- <value>resample</value>
+ <key>max_nouts</key>
+ <value>0</value>
</param>
<param>
- <key>bw</key>
- <value>bw</value>
+ <key>realtime_scheduling</key>
+ <value></value>
</param>
<param>
<key>_coordinate</key>
- <value>(887, 340)</value>
+ <value>(10, 10)</value>
</param>
<param>
<key>_rotation</key>
@@ -52,42 +61,22 @@
</param>
</block>
<block>
- <key>gr_sig_source_x</key>
+ <key>import</key>
<param>
<key>id</key>
- <value>tri_source</value>
+ <value>import_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>type</key>
- <value>float</value>
- </param>
- <param>
- <key>samp_rate</key>
- <value>audio_rate</value>
- </param>
- <param>
- <key>waveform</key>
- <value>gr.GR_TRI_WAVE</value>
- </param>
- <param>
- <key>freq</key>
- <value>0.05</value>
- </param>
- <param>
- <key>amp</key>
- <value>0.5</value>
- </param>
- <param>
- <key>offset</key>
- <value>0</value>
+ <key>import</key>
+ <value>import math</value>
</param>
<param>
<key>_coordinate</key>
- <value>(44, 316)</value>
+ <value>(157, 11)</value>
</param>
<param>
<key>_rotation</key>
@@ -95,30 +84,26 @@
</param>
</block>
<block>
- <key>gr_throttle</key>
+ <key>vocoder_cvsd_decode_bf</key>
<param>
<key>id</key>
- <value>throttle</value>
+ <value>vocoder_cvsd_decode_bf_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>type</key>
- <value>float</value>
- </param>
- <param>
- <key>samples_per_second</key>
- <value>audio_rate</value>
+ <key>resample</key>
+ <value>resample</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
+ <key>bw</key>
+ <value>bw</value>
</param>
<param>
<key>_coordinate</key>
- <value>(238, 348)</value>
+ <value>(887, 340)</value>
</param>
<param>
<key>_rotation</key>
@@ -126,7 +111,7 @@
</param>
</block>
<block>
- <key>gr_vco_f</key>
+ <key>blocks_vco_f</key>
<param>
<key>id</key>
<value>vco</value>
@@ -184,7 +169,7 @@
</param>
</block>
<block>
- <key>gr_packed_to_unpacked_xx</key>
+ <key>blocks_packed_to_unpacked_xx</key>
<param>
<key>id</key>
<value>p2u</value>
@@ -206,6 +191,10 @@
<value>gr.GR_MSB_FIRST</value>
</param>
<param>
+ <key>num_ports</key>
+ <value>1</value>
+ </param>
+ <param>
<key>_coordinate</key>
<value>(648, 415)</value>
</param>
@@ -215,7 +204,7 @@
</param>
</block>
<block>
- <key>gr_char_to_float</key>
+ <key>blocks_char_to_float</key>
<param>
<key>id</key>
<value>c2f</value>
@@ -225,6 +214,14 @@
<value>True</value>
</param>
<param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>scale</key>
+ <value>1</value>
+ </param>
+ <param>
<key>_coordinate</key>
<value>(676, 483)</value>
</param>
@@ -435,6 +432,14 @@
<value>0</value>
</param>
<param>
+ <key>win</key>
+ <value>None</value>
+ </param>
+ <param>
+ <key>win_size</key>
+ <value></value>
+ </param>
+ <param>
<key>grid_pos</key>
<value>0, 0, 1, 1</value>
</param>
@@ -443,6 +448,10 @@
<value>displays, 0</value>
</param>
<param>
+ <key>freqvar</key>
+ <value>None</value>
+ </param>
+ <param>
<key>_coordinate</key>
<value>(415, 97)</value>
</param>
@@ -478,6 +487,10 @@
<value>0</value>
</param>
<param>
+ <key>v_offset</key>
+ <value>0</value>
+ </param>
+ <param>
<key>t_scale</key>
<value>0</value>
</param>
@@ -494,6 +507,10 @@
<value>1</value>
</param>
<param>
+ <key>win_size</key>
+ <value></value>
+ </param>
+ <param>
<key>grid_pos</key>
<value>1, 0, 1, 1</value>
</param>
@@ -502,87 +519,16 @@
<value>displays, 0</value>
</param>
<param>
- <key>_coordinate</key>
- <value>(414, 425)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>180</value>
- </param>
- </block>
- <block>
- <key>wxgui_fftsink2</key>
- <param>
- <key>id</key>
- <value>enc_fft</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>float</value>
- </param>
- <param>
- <key>title</key>
- <value>Encoded Spectrum</value>
- </param>
- <param>
- <key>samp_rate</key>
- <value>audio_rate*resample</value>
- </param>
- <param>
- <key>baseband_freq</key>
- <value>0</value>
- </param>
- <param>
- <key>y_per_div</key>
- <value>10</value>
- </param>
- <param>
- <key>y_divs</key>
- <value>8</value>
- </param>
- <param>
- <key>ref_level</key>
- <value>10</value>
- </param>
- <param>
- <key>ref_scale</key>
- <value>2.0</value>
- </param>
- <param>
- <key>fft_size</key>
- <value>1024</value>
- </param>
- <param>
- <key>fft_rate</key>
- <value>30</value>
- </param>
- <param>
- <key>peak_hold</key>
- <value>False</value>
- </param>
- <param>
- <key>average</key>
- <value>False</value>
- </param>
- <param>
- <key>avg_alpha</key>
- <value>0</value>
- </param>
- <param>
- <key>grid_pos</key>
- <value>1, 0, 1, 1</value>
+ <key>trig_mode</key>
+ <value>gr.gr_TRIG_MODE_AUTO</value>
</param>
<param>
- <key>notebook</key>
- <value>displays, 1</value>
+ <key>y_axis_label</key>
+ <value>Counts</value>
</param>
<param>
<key>_coordinate</key>
- <value>(610, 551)</value>
+ <value>(414, 425)</value>
</param>
<param>
<key>_rotation</key>
@@ -616,6 +562,10 @@
<value>0.5</value>
</param>
<param>
+ <key>v_offset</key>
+ <value>0</value>
+ </param>
+ <param>
<key>t_scale</key>
<value>20.0/(audio_rate*resample)</value>
</param>
@@ -632,6 +582,10 @@
<value>1</value>
</param>
<param>
+ <key>win_size</key>
+ <value></value>
+ </param>
+ <param>
<key>grid_pos</key>
<value>0, 0, 1, 1</value>
</param>
@@ -640,6 +594,14 @@
<value>displays, 1</value>
</param>
<param>
+ <key>trig_mode</key>
+ <value>gr.gr_TRIG_MODE_AUTO</value>
+ </param>
+ <param>
+ <key>y_axis_label</key>
+ <value>Counts</value>
+ </param>
+ <param>
<key>_coordinate</key>
<value>(858, 591)</value>
</param>
@@ -711,6 +673,14 @@
<value>0</value>
</param>
<param>
+ <key>win</key>
+ <value>None</value>
+ </param>
+ <param>
+ <key>win_size</key>
+ <value></value>
+ </param>
+ <param>
<key>grid_pos</key>
<value>0, 0, 1, 1</value>
</param>
@@ -719,6 +689,10 @@
<value>displays, 2</value>
</param>
<param>
+ <key>freqvar</key>
+ <value>None</value>
+ </param>
+ <param>
<key>_coordinate</key>
<value>(891, 98)</value>
</param>
@@ -754,6 +728,10 @@
<value>0</value>
</param>
<param>
+ <key>v_offset</key>
+ <value>0</value>
+ </param>
+ <param>
<key>t_scale</key>
<value>0</value>
</param>
@@ -770,6 +748,10 @@
<value>1</value>
</param>
<param>
+ <key>win_size</key>
+ <value></value>
+ </param>
+ <param>
<key>grid_pos</key>
<value>1, 0, 1, 1</value>
</param>
@@ -778,6 +760,14 @@
<value>displays, 2</value>
</param>
<param>
+ <key>trig_mode</key>
+ <value>gr.gr_TRIG_MODE_AUTO</value>
+ </param>
+ <param>
+ <key>y_axis_label</key>
+ <value>Counts</value>
+ </param>
+ <param>
<key>_coordinate</key>
<value>(889, 422)</value>
</param>
@@ -787,56 +777,170 @@
</param>
</block>
<block>
- <key>options</key>
+ <key>blocks_throttle</key>
<param>
<key>id</key>
- <value>cvsd_sweep</value>
+ <value>throttle</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>title</key>
- <value>CVSD Vocoder Test</value>
+ <key>type</key>
+ <value>float</value>
</param>
<param>
- <key>author</key>
- <value></value>
+ <key>samples_per_second</key>
+ <value>audio_rate</value>
</param>
<param>
- <key>description</key>
- <value></value>
+ <key>vlen</key>
+ <value>1</value>
</param>
<param>
- <key>window_size</key>
- <value>1280, 1024</value>
+ <key>_coordinate</key>
+ <value>(238, 348)</value>
</param>
<param>
- <key>generate_options</key>
- <value>wx_gui</value>
+ <key>_rotation</key>
+ <value>0</value>
</param>
+ </block>
+ <block>
+ <key>analog_sig_source_x</key>
<param>
- <key>category</key>
- <value>Custom</value>
+ <key>id</key>
+ <value>analog_sig_source_x_0</value>
</param>
<param>
- <key>run</key>
+ <key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>realtime_scheduling</key>
- <value></value>
+ <key>type</key>
+ <value>float</value>
+ </param>
+ <param>
+ <key>samp_rate</key>
+ <value>audio_rate</value>
+ </param>
+ <param>
+ <key>waveform</key>
+ <value>analog.GR_TRI_WAVE</value>
+ </param>
+ <param>
+ <key>freq</key>
+ <value>0.05</value>
+ </param>
+ <param>
+ <key>amp</key>
+ <value>0.5</value>
+ </param>
+ <param>
+ <key>offset</key>
+ <value>0</value>
</param>
<param>
<key>_coordinate</key>
- <value>(10, 10)</value>
+ <value>(29, 316)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
</block>
+ <block>
+ <key>wxgui_fftsink2</key>
+ <param>
+ <key>id</key>
+ <value>enc_fft</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>float</value>
+ </param>
+ <param>
+ <key>title</key>
+ <value>Encoded Spectrum</value>
+ </param>
+ <param>
+ <key>samp_rate</key>
+ <value>audio_rate*resample</value>
+ </param>
+ <param>
+ <key>baseband_freq</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>y_per_div</key>
+ <value>10</value>
+ </param>
+ <param>
+ <key>y_divs</key>
+ <value>8</value>
+ </param>
+ <param>
+ <key>ref_level</key>
+ <value>10</value>
+ </param>
+ <param>
+ <key>ref_scale</key>
+ <value>2.0</value>
+ </param>
+ <param>
+ <key>fft_size</key>
+ <value>1024</value>
+ </param>
+ <param>
+ <key>fft_rate</key>
+ <value>30</value>
+ </param>
+ <param>
+ <key>peak_hold</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>average</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>avg_alpha</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>win</key>
+ <value>None</value>
+ </param>
+ <param>
+ <key>win_size</key>
+ <value></value>
+ </param>
+ <param>
+ <key>grid_pos</key>
+ <value>1, 0, 1, 1</value>
+ </param>
+ <param>
+ <key>notebook</key>
+ <value>displays, 1</value>
+ </param>
+ <param>
+ <key>freqvar</key>
+ <value>None</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(610, 559)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>180</value>
+ </param>
+ </block>
<connection>
<source_block_id>vco</source_block_id>
<sink_block_id>orig_fft</sink_block_id>
@@ -844,12 +948,6 @@
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>tri_source</source_block_id>
- <sink_block_id>throttle</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
<source_block_id>throttle</source_block_id>
<sink_block_id>vco</sink_block_id>
<source_key>0</source_key>
@@ -915,4 +1013,10 @@
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
+ <connection>
+ <source_block_id>analog_sig_source_x_0</source_block_id>
+ <sink_block_id>throttle</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
</flow_graph>
diff --git a/gr-audio/examples/grc/dial_tone.grc b/gr-audio/examples/grc/dial_tone.grc
index ac8cbef279..2503fed640 100644
--- a/gr-audio/examples/grc/dial_tone.grc
+++ b/gr-audio/examples/grc/dial_tone.grc
@@ -1,6 +1,6 @@
<?xml version='1.0' encoding='ASCII'?>
<flow_graph>
- <timestamp>Thu Jul 24 14:27:48 2008</timestamp>
+ <timestamp>Sat Nov 10 15:10:08 2012</timestamp>
<block>
<key>options</key>
<param>
@@ -36,39 +36,24 @@
<value>Custom</value>
</param>
<param>
- <key>_coordinate</key>
- <value>(10, 10)</value>
+ <key>run_options</key>
+ <value>prompt</value>
</param>
<param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>gr_add_xx</key>
- <param>
- <key>id</key>
- <value>gr_add_xx</value>
- </param>
- <param>
- <key>_enabled</key>
+ <key>run</key>
<value>True</value>
</param>
<param>
- <key>type</key>
- <value>float</value>
- </param>
- <param>
- <key>num_inputs</key>
- <value>3</value>
+ <key>max_nouts</key>
+ <value>0</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
+ <key>realtime_scheduling</key>
+ <value></value>
</param>
<param>
<key>_coordinate</key>
- <value>(513, 277)</value>
+ <value>(10, 10)</value>
</param>
<param>
<key>_rotation</key>
@@ -91,7 +76,7 @@
</param>
<param>
<key>device_name</key>
- <value/>
+ <value></value>
</param>
<param>
<key>ok_to_block</key>
@@ -111,34 +96,54 @@
</param>
</block>
<block>
- <key>gr_noise_source_x</key>
+ <key>variable_slider</key>
<param>
<key>id</key>
- <value>gr_noise_source_x</value>
+ <value>ampl</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>type</key>
- <value>float</value>
+ <key>label</key>
+ <value>Volume</value>
</param>
<param>
- <key>noise_type</key>
- <value>gr.GR_GAUSSIAN</value>
+ <key>value</key>
+ <value>.4</value>
</param>
<param>
- <key>amp</key>
- <value>noise</value>
+ <key>min</key>
+ <value>0</value>
</param>
<param>
- <key>seed</key>
- <value>42</value>
+ <key>max</key>
+ <value>.5</value>
+ </param>
+ <param>
+ <key>num_steps</key>
+ <value>100</value>
+ </param>
+ <param>
+ <key>style</key>
+ <value>wx.SL_HORIZONTAL</value>
+ </param>
+ <param>
+ <key>converver</key>
+ <value>float_converter</value>
+ </param>
+ <param>
+ <key>grid_pos</key>
+ <value>0, 0, 1, 2</value>
+ </param>
+ <param>
+ <key>notebook</key>
+ <value></value>
</param>
<param>
<key>_coordinate</key>
- <value>(238, 380)</value>
+ <value>(634, 413)</value>
</param>
<param>
<key>_rotation</key>
@@ -146,42 +151,54 @@
</param>
</block>
<block>
- <key>gr_sig_source_x</key>
+ <key>variable_slider</key>
<param>
<key>id</key>
- <value>gr_sig_source_x</value>
+ <value>noise</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>type</key>
- <value>float</value>
+ <key>label</key>
+ <value>Noise</value>
</param>
<param>
- <key>samp_rate</key>
- <value>samp_rate</value>
+ <key>value</key>
+ <value>.005</value>
</param>
<param>
- <key>waveform</key>
- <value>gr.GR_COS_WAVE</value>
+ <key>min</key>
+ <value>0</value>
</param>
<param>
- <key>freq</key>
- <value>440</value>
+ <key>max</key>
+ <value>.2</value>
</param>
<param>
- <key>amp</key>
- <value>ampl</value>
+ <key>num_steps</key>
+ <value>100</value>
</param>
<param>
- <key>offset</key>
- <value>0</value>
+ <key>style</key>
+ <value>wx.SL_HORIZONTAL</value>
+ </param>
+ <param>
+ <key>converver</key>
+ <value>float_converter</value>
+ </param>
+ <param>
+ <key>grid_pos</key>
+ <value>1, 0, 1, 2</value>
+ </param>
+ <param>
+ <key>notebook</key>
+ <value></value>
</param>
<param>
<key>_coordinate</key>
- <value>(240, 208)</value>
+ <value>(443, 412)</value>
</param>
<param>
<key>_rotation</key>
@@ -189,42 +206,53 @@
</param>
</block>
<block>
- <key>gr_sig_source_x</key>
+ <key>variable</key>
<param>
<key>id</key>
- <value>gr_sig_source_x0</value>
+ <value>samp_rate</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>type</key>
- <value>float</value>
+ <key>value</key>
+ <value>32000</value>
</param>
<param>
- <key>samp_rate</key>
- <value>samp_rate</value>
+ <key>_coordinate</key>
+ <value>(11, 171)</value>
</param>
<param>
- <key>waveform</key>
- <value>gr.GR_COS_WAVE</value>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_add_xx</key>
+ <param>
+ <key>id</key>
+ <value>blocks_add_xx</value>
</param>
<param>
- <key>freq</key>
- <value>350</value>
+ <key>_enabled</key>
+ <value>True</value>
</param>
<param>
- <key>amp</key>
- <value>ampl</value>
+ <key>type</key>
+ <value>float</value>
</param>
<param>
- <key>offset</key>
- <value>0</value>
+ <key>num_inputs</key>
+ <value>3</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
</param>
<param>
<key>_coordinate</key>
- <value>(240, 38)</value>
+ <value>(513, 277)</value>
</param>
<param>
<key>_rotation</key>
@@ -232,46 +260,42 @@
</param>
</block>
<block>
- <key>variable_slider</key>
+ <key>analog_sig_source_x</key>
<param>
<key>id</key>
- <value>ampl</value>
+ <value>analog_sig_source_x_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>label</key>
- <value>Volume</value>
- </param>
- <param>
- <key>value</key>
- <value>.4</value>
+ <key>type</key>
+ <value>float</value>
</param>
<param>
- <key>min</key>
- <value>0</value>
+ <key>samp_rate</key>
+ <value>samp_rate</value>
</param>
<param>
- <key>max</key>
- <value>.5</value>
+ <key>waveform</key>
+ <value>analog.GR_COS_WAVE</value>
</param>
<param>
- <key>num_steps</key>
- <value>100</value>
+ <key>freq</key>
+ <value>350</value>
</param>
<param>
- <key>slider_type</key>
- <value>horizontal</value>
+ <key>amp</key>
+ <value>ampl</value>
</param>
<param>
- <key>grid_pos</key>
- <value>0, 0, 1, 2</value>
+ <key>offset</key>
+ <value>0</value>
</param>
<param>
<key>_coordinate</key>
- <value>(634, 413)</value>
+ <value>(251, 100)</value>
</param>
<param>
<key>_rotation</key>
@@ -279,46 +303,42 @@
</param>
</block>
<block>
- <key>variable_slider</key>
+ <key>analog_sig_source_x</key>
<param>
<key>id</key>
- <value>noise</value>
+ <value>analog_sig_source_x_1</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>label</key>
- <value>Noise</value>
- </param>
- <param>
- <key>value</key>
- <value>.005</value>
+ <key>type</key>
+ <value>float</value>
</param>
<param>
- <key>min</key>
- <value>0</value>
+ <key>samp_rate</key>
+ <value>samp_rate</value>
</param>
<param>
- <key>max</key>
- <value>.2</value>
+ <key>waveform</key>
+ <value>analog.GR_COS_WAVE</value>
</param>
<param>
- <key>num_steps</key>
- <value>100</value>
+ <key>freq</key>
+ <value>440</value>
</param>
<param>
- <key>slider_type</key>
- <value>horizontal</value>
+ <key>amp</key>
+ <value>ampl</value>
</param>
<param>
- <key>grid_pos</key>
- <value>1, 0, 1, 2</value>
+ <key>offset</key>
+ <value>0</value>
</param>
<param>
<key>_coordinate</key>
- <value>(443, 412)</value>
+ <value>(250, 214)</value>
</param>
<param>
<key>_rotation</key>
@@ -326,22 +346,34 @@
</param>
</block>
<block>
- <key>variable</key>
+ <key>analog_noise_source_x</key>
<param>
<key>id</key>
- <value>samp_rate</value>
+ <value>analog_noise_source_x_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>value</key>
- <value>32000</value>
+ <key>type</key>
+ <value>float</value>
+ </param>
+ <param>
+ <key>noise_type</key>
+ <value>analog.GR_GAUSSIAN</value>
+ </param>
+ <param>
+ <key>amp</key>
+ <value>noise</value>
+ </param>
+ <param>
+ <key>seed</key>
+ <value>-42</value>
</param>
<param>
<key>_coordinate</key>
- <value>(11, 171)</value>
+ <value>(245, 342)</value>
</param>
<param>
<key>_rotation</key>
@@ -349,27 +381,27 @@
</param>
</block>
<connection>
- <source_block_id>gr_sig_source_x0</source_block_id>
- <sink_block_id>gr_add_xx</sink_block_id>
+ <source_block_id>blocks_add_xx</source_block_id>
+ <sink_block_id>audio_sink</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>gr_sig_source_x</source_block_id>
- <sink_block_id>gr_add_xx</sink_block_id>
+ <source_block_id>analog_sig_source_x_0</source_block_id>
+ <sink_block_id>blocks_add_xx</sink_block_id>
<source_key>0</source_key>
- <sink_key>1</sink_key>
+ <sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>gr_noise_source_x</source_block_id>
- <sink_block_id>gr_add_xx</sink_block_id>
+ <source_block_id>analog_sig_source_x_1</source_block_id>
+ <sink_block_id>blocks_add_xx</sink_block_id>
<source_key>0</source_key>
- <sink_key>2</sink_key>
+ <sink_key>1</sink_key>
</connection>
<connection>
- <source_block_id>gr_add_xx</source_block_id>
- <sink_block_id>audio_sink</sink_block_id>
+ <source_block_id>analog_noise_source_x_0</source_block_id>
+ <sink_block_id>blocks_add_xx</sink_block_id>
<source_key>0</source_key>
- <sink_key>0</sink_key>
+ <sink_key>2</sink_key>
</connection>
</flow_graph>
diff --git a/gr-audio/examples/python/audio_play.py b/gr-audio/examples/python/audio_play.py
index 465590f69f..94ea72498d 100755
--- a/gr-audio/examples/python/audio_play.py
+++ b/gr-audio/examples/python/audio_play.py
@@ -22,6 +22,7 @@
from gnuradio import gr
from gnuradio import audio
+from gnuradio import blocks
from gnuradio.eng_option import eng_option
from optparse import OptionParser
@@ -45,7 +46,7 @@ class my_top_block(gr.top_block):
raise SystemExit, 1
sample_rate = int(options.sample_rate)
- src = gr.file_source (gr.sizeof_float, options.filename, options.repeat)
+ src = blocks.file_source (gr.sizeof_float, options.filename, options.repeat)
dst = audio.sink (sample_rate, options.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 3f7a4f8d1c..201ec90bf1 100755
--- a/gr-audio/examples/python/audio_to_file.py
+++ b/gr-audio/examples/python/audio_to_file.py
@@ -22,6 +22,7 @@
from gnuradio import gr
from gnuradio import audio
+from gnuradio import blocks
from gnuradio.eng_option import eng_option
from optparse import OptionParser
@@ -47,7 +48,7 @@ class my_top_block(gr.top_block):
sample_rate = int(options.sample_rate)
src = audio.source (sample_rate, options.audio_input)
- dst = gr.file_sink (gr.sizeof_float, filename)
+ dst = blocks.file_sink (gr.sizeof_float, filename)
if options.nsamples is None:
self.connect((src, 0), dst)
diff --git a/gr-audio/examples/python/dial_tone.py b/gr-audio/examples/python/dial_tone.py
index 5661d13d48..c55d0d38dd 100755
--- a/gr-audio/examples/python/dial_tone.py
+++ b/gr-audio/examples/python/dial_tone.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
#
-# Copyright 2004,2005,2007 Free Software Foundation, Inc.
+# Copyright 2004,2005,2007,2012 Free Software Foundation, Inc.
#
# This file is part of GNU Radio
#
@@ -25,6 +25,12 @@ from gnuradio import audio
from gnuradio.eng_option import eng_option
from optparse import OptionParser
+try:
+ from gnuradio import analog
+except ImportError:
+ sys.stderr.write("Error: Program requires gr-analog.\n")
+ sys.exit(1)
+
class my_top_block(gr.top_block):
def __init__(self):
@@ -35,7 +41,7 @@ class my_top_block(gr.top_block):
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 ()
+ (options, args) = parser.parse_args()
if len(args) != 0:
parser.print_help()
raise SystemExit, 1
@@ -43,12 +49,11 @@ class my_top_block(gr.top_block):
sample_rate = int(options.sample_rate)
ampl = 0.1
- src0 = gr.sig_source_f (sample_rate, gr.GR_SIN_WAVE, 350, ampl)
- src1 = gr.sig_source_f (sample_rate, gr.GR_SIN_WAVE, 440, ampl)
- dst = audio.sink (sample_rate, options.audio_output)
- self.connect (src0, (dst, 0))
- self.connect (src1, (dst, 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)
+ self.connect(src0, (dst, 0))
+ self.connect(src1, (dst, 1))
if __name__ == '__main__':
try:
diff --git a/gr-audio/examples/python/dial_tone_daemon.py b/gr-audio/examples/python/dial_tone_daemon.py
index b25baebee2..e4dbd95321 100755
--- a/gr-audio/examples/python/dial_tone_daemon.py
+++ b/gr-audio/examples/python/dial_tone_daemon.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
#
-# Copyright 2004,2005,2007,2008 Free Software Foundation, Inc.
+# Copyright 2004,2005,2007,2008,2012 Free Software Foundation, Inc.
#
# This file is part of GNU Radio
#
@@ -26,6 +26,12 @@ from gnuradio.eng_option import eng_option
from optparse import OptionParser
import os
+try:
+ from gnuradio import analog
+except ImportError:
+ sys.stderr.write("Error: Program requires gr-analog.\n")
+ sys.exit(1)
+
class my_top_block(gr.top_block):
def __init__(self):
@@ -36,7 +42,7 @@ class my_top_block(gr.top_block):
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 ()
+ (options, args) = parser.parse_args()
if len(args) != 0:
parser.print_help()
raise SystemExit, 1
@@ -44,12 +50,11 @@ class my_top_block(gr.top_block):
sample_rate = int(options.sample_rate)
ampl = 0.1
- src0 = gr.sig_source_f (sample_rate, gr.GR_SIN_WAVE, 350, ampl)
- src1 = gr.sig_source_f (sample_rate, gr.GR_SIN_WAVE, 440, ampl)
- dst = audio.sink (sample_rate, options.audio_output)
- self.connect (src0, (dst, 0))
- self.connect (src1, (dst, 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)
+ self.connect(src0, (dst, 0))
+ self.connect(src1, (dst, 1))
if __name__ == '__main__':
pid = gru.daemonize()
diff --git a/gr-audio/examples/python/dial_tone_wav.py b/gr-audio/examples/python/dial_tone_wav.py
index c06af55b70..91bf744c95 100755
--- a/gr-audio/examples/python/dial_tone_wav.py
+++ b/gr-audio/examples/python/dial_tone_wav.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
#
-# Copyright 2004,2005,2007,2008 Free Software Foundation, Inc.
+# Copyright 2004,2005,2007,2008,2012 Free Software Foundation, Inc.
#
# This file is part of GNU Radio
#
@@ -23,9 +23,16 @@
# GNU Radio example program to record a dial tone to a WAV file
from gnuradio import gr
+from gnuradio import blocks
from gnuradio.eng_option import eng_option
from optparse import OptionParser
+try:
+ from gnuradio import analog
+except ImportError:
+ sys.stderr.write("Error: Program requires gr-analog.\n")
+ sys.exit(1)
+
class my_top_block(gr.top_block):
def __init__(self):
@@ -45,11 +52,11 @@ class my_top_block(gr.top_block):
sample_rate = int(options.sample_rate)
ampl = 0.1
- src0 = gr.sig_source_f (sample_rate, gr.GR_SIN_WAVE, 350, ampl)
- src1 = gr.sig_source_f (sample_rate, gr.GR_SIN_WAVE, 440, ampl)
+ 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 = gr.head(gr.sizeof_float, int(options.samples))
head1 = gr.head(gr.sizeof_float, int(options.samples))
- dst = gr.wavfile_sink(args[0], 2, int(options.sample_rate), 16)
+ dst = blocks.wavfile_sink(args[0], 2, int(options.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 bce486e4ab..ad73d62327 100755
--- a/gr-audio/examples/python/mono_tone.py
+++ b/gr-audio/examples/python/mono_tone.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
#
-# Copyright 2004,2005,2007 Free Software Foundation, Inc.
+# Copyright 2004,2005,2007,2012 Free Software Foundation, Inc.
#
# This file is part of GNU Radio
#
@@ -25,6 +25,12 @@ from gnuradio import audio
from gnuradio.eng_option import eng_option
from optparse import OptionParser
+try:
+ from gnuradio import analog
+except ImportError:
+ sys.stderr.write("Error: Program requires gr-analog.\n")
+ sys.exit(1)
+
#import os
#print os.getpid()
#raw_input('Attach gdb and press Enter: ')
@@ -50,11 +56,11 @@ class my_top_block(gr.top_block):
sample_rate = int(options.sample_rate)
ampl = 0.1
- src0 = gr.sig_source_f (sample_rate, gr.GR_SIN_WAVE, 650, ampl)
+ 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)
+ dst = audio.sink(sample_rate,
+ options.audio_output,
+ options.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 00c213b634..6232cbef52 100755
--- a/gr-audio/examples/python/multi_tone.py
+++ b/gr-audio/examples/python/multi_tone.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
#
-# Copyright 2004,2006,2007 Free Software Foundation, Inc.
+# Copyright 2004,2006,2007,2012 Free Software Foundation, Inc.
#
# This file is part of GNU Radio
#
@@ -25,6 +25,12 @@ from gnuradio import audio
from gnuradio.eng_option import eng_option
from optparse import OptionParser
+try:
+ from gnuradio import analog
+except ImportError:
+ sys.stderr.write("Error: Program requires gr-analog.\n")
+ sys.exit(1)
+
#import os
#print os.getpid()
#raw_input('Attach gdb and press Enter: ')
@@ -43,7 +49,7 @@ class my_top_block(gr.top_block):
help="set maximum channels to use")
parser.add_option("-D", "--dont-block", action="store_false", default=True,
dest="ok_to_block")
- (options, args) = parser.parse_args ()
+ (options, args) = parser.parse_args()
if len(args) != 0:
parser.print_help()
raise SystemExit, 1
@@ -69,19 +75,19 @@ class my_top_block(gr.top_block):
# progression = (7, 11, 1, 5)
progression = (7, 11, 1, 5, 9)
- dst = audio.sink (sample_rate,
- options.audio_output,
- options.ok_to_block)
+ dst = audio.sink(sample_rate,
+ options.audio_output,
+ options.ok_to_block)
max_chan = dst.input_signature().max_streams()
if (max_chan == -1) or (max_chan > limit_channels):
max_chan = limit_channels
- for i in range (max_chan):
- quo, rem = divmod (i, len (progression))
+ for i in range(max_chan):
+ quo, rem = divmod(i, len (progression))
freq = base * ratios[progression[rem]] * (quo + 1)
- src = gr.sig_source_f (sample_rate, gr.GR_SIN_WAVE, freq, ampl)
- self.connect (src, (dst, i))
+ src = analog.sig_source_f(sample_rate, analog.GR_SIN_WAVE, freq, ampl)
+ self.connect(src, (dst, i))
if __name__ == '__main__':
try:
diff --git a/gr-audio/examples/python/noise.py b/gr-audio/examples/python/noise.py
index 12eee1906d..bba9e83eae 100755
--- a/gr-audio/examples/python/noise.py
+++ b/gr-audio/examples/python/noise.py
@@ -22,6 +22,7 @@
from gnuradio import gr
from gnuradio import audio
+from gnuradio import digital
from gnuradio.eng_option import eng_option
from optparse import OptionParser
@@ -44,7 +45,7 @@ class my_top_block(gr.top_block):
ampl = 0.1
src = gr.glfsr_source_b(32) # Pseudorandom noise source
- b2f = gr.chunks_to_symbols_bf([ampl, -ampl], 1)
+ b2f = digital.chunks_to_symbols_bf([ampl, -ampl], 1)
dst = audio.sink(sample_rate, options.audio_output)
self.connect(src, b2f, dst)
diff --git a/gr-audio/examples/python/spectrum_inversion.py b/gr-audio/examples/python/spectrum_inversion.py
index e152430cdb..63d0c8cc8d 100755
--- a/gr-audio/examples/python/spectrum_inversion.py
+++ b/gr-audio/examples/python/spectrum_inversion.py
@@ -28,6 +28,7 @@
from gnuradio import gr
from gnuradio import audio
+from gnuradio import blocks
from gnuradio.eng_option import eng_option
from optparse import OptionParser
@@ -54,7 +55,7 @@ class my_top_block(gr.top_block):
vec1 = [1, -1]
vsource = gr.vector_source_f(vec1, True)
- multiply = gr.multiply_ff()
+ multiply = blocks.multiply_ff()
self.connect(src, (multiply, 0))
self.connect(vsource, (multiply, 1))
diff --git a/gr-audio/examples/python/test_resampler.py b/gr-audio/examples/python/test_resampler.py
index db7f79fba0..0f5544cfa9 100755
--- a/gr-audio/examples/python/test_resampler.py
+++ b/gr-audio/examples/python/test_resampler.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
#
-# Copyright 2004,2005,2007 Free Software Foundation, Inc.
+# Copyright 2004,2005,2007,2012 Free Software Foundation, Inc.
#
# This file is part of GNU Radio
#
@@ -20,11 +20,22 @@
# Boston, MA 02110-1301, USA.
#
-from gnuradio import gr, gru, blks2
+from gnuradio import gr, gru
from gnuradio import audio
from gnuradio.eng_option import eng_option
from optparse import OptionParser
+try:
+ from gnuradio import analog
+except ImportError:
+ sys.stderr.write("Error: Program requires gr-analog.\n")
+ sys.exit(1)
+
+try:
+ from gnuradio import blocks
+except ImportError:
+ sys.stderr.write("Error: Program requires gr-blocks.\n")
+ sys.exit(1)
class my_top_block(gr.top_block):
@@ -38,7 +49,7 @@ class my_top_block(gr.top_block):
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 ()
+ (options, args) = parser.parse_args()
if len(args) != 0:
parser.print_help()
raise SystemExit, 1
@@ -53,11 +64,10 @@ class my_top_block(gr.top_block):
print "decim =", decim
ampl = 0.1
- src0 = gr.sig_source_f (input_rate, gr.GR_SIN_WAVE, 650, ampl)
- rr = blks2.rational_resampler_fff(interp, decim)
- dst = audio.sink (output_rate, options.audio_output)
- self.connect (src0, rr, (dst, 0))
-
+ src0 = analog.sig_source_f(input_rate, analog.GR_SIN_WAVE, 650, ampl)
+ rr = blocks.rational_resampler_fff(interp, decim)
+ dst = audio.sink(output_rate, options.audio_output)
+ self.connect(src0, rr, (dst, 0))
if __name__ == '__main__':
try: