def test001_module_load(self):
     data = (0, 8, 36, 72, 100, 152, 228, 316, 404, 528)
     src = blocks.vector_source_s(data)
     enc = vocoder.g723_40_encode_sb()
     dec = vocoder.g723_40_decode_bs()
     snk = blocks.vector_sink_s()
     self.tb.connect(src, enc, dec, snk)
     self.tb.run()
     actual_result = snk.data()
     self.assertEqual(data, actual_result)
Exemplo n.º 2
0
 def test001_module_load (self):
     data = (0,8,36,72,100,152,228,316,404,528)
     src = blocks.vector_source_s(data)
     enc = vocoder.g723_40_encode_sb()
     dec = vocoder.g723_40_decode_bs()
     snk = blocks.vector_sink_s()
     self.tb.connect(src, enc, dec, snk)
     self.tb.run()
     actual_result = snk.data()
     self.assertEqual(data, actual_result)
def build_graph():
    tb = gr.top_block()
    src = audio.source(8000)
    src_scale = gr.multiply_const_ff(32767)
    f2s = gr.float_to_short ()
    enc = vocoder.g723_40_encode_sb()
    dec = vocoder.g723_40_decode_bs()
    s2f = gr.short_to_float ()
    sink_scale = gr.multiply_const_ff(1.0/32767.)
    sink = audio.sink(8000)
    tb.connect(src, src_scale, f2s, enc, dec, s2f, sink_scale, sink)
    return tb
Exemplo n.º 4
0
def build_graph():
    tb = gr.top_block()
    src = audio.source(8000)
    src_scale = blocks.multiply_const_ff(32767)
    f2s = blocks.float_to_short()
    enc = vocoder.g723_40_encode_sb()
    dec = vocoder.g723_40_decode_bs()
    s2f = blocks.short_to_float()
    sink_scale = blocks.multiply_const_ff(1.0 / 32767.)
    sink = audio.sink(8000)
    tb.connect(src, src_scale, f2s, enc, dec, s2f, sink_scale, sink)
    return tb
Exemplo n.º 5
0
    def __init__(self):
        grc_wxgui.top_block_gui.__init__(self, title="Top Block")
        _icon_path = "/usr/share/icons/hicolor/32x32/apps/gnuradio-grc.png"
        self.SetIcon(wx.Icon(_icon_path, wx.BITMAP_TYPE_ANY))

        ##################################################
        # Variables
        ##################################################
        self.variable_slider_2 = variable_slider_2 = 0
        self.variable_slider_0 = variable_slider_0 = 50000
        self.samp_rate = samp_rate = 32000

        ##################################################
        # Blocks
        ##################################################
        _variable_slider_2_sizer = wx.BoxSizer(wx.VERTICAL)
        self._variable_slider_2_text_box = forms.text_box(
            parent=self.GetWin(),
            sizer=_variable_slider_2_sizer,
            value=self.variable_slider_2,
            callback=self.set_variable_slider_2,
            label="label_variable_slider_0 NOise amplitude",
            converter=forms.float_converter(),
            proportion=0,
        )
        self._variable_slider_2_slider = forms.slider(
            parent=self.GetWin(),
            sizer=_variable_slider_2_sizer,
            value=self.variable_slider_2,
            callback=self.set_variable_slider_2,
            minimum=0,
            maximum=1,
            num_steps=100,
            style=wx.SL_HORIZONTAL,
            cast=float,
            proportion=1,
        )
        self.Add(_variable_slider_2_sizer)
        _variable_slider_0_sizer = wx.BoxSizer(wx.VERTICAL)
        self._variable_slider_0_text_box = forms.text_box(
            parent=self.GetWin(),
            sizer=_variable_slider_0_sizer,
            value=self.variable_slider_0,
            callback=self.set_variable_slider_0,
            label="label_variable_slider_MULITIPLICACION_VOZ",
            converter=forms.float_converter(),
            proportion=0,
        )
        self._variable_slider_0_slider = forms.slider(
            parent=self.GetWin(),
            sizer=_variable_slider_0_sizer,
            value=self.variable_slider_0,
            callback=self.set_variable_slider_0,
            minimum=0,
            maximum=1e6,
            num_steps=100,
            style=wx.SL_HORIZONTAL,
            cast=float,
            proportion=1,
        )
        self.Add(_variable_slider_0_sizer)
        self.wxgui_constellationsink2_0 = constsink_gl.const_sink_c(
            self.GetWin(),
            title="Constellation Plot",
            sample_rate=samp_rate,
            frame_rate=256,
            const_size=4,
            M=2,
            theta=0,
            loop_bw=6.28 / 100.0,
            fmax=0.06,
            mu=0.5,
            gain_mu=0.005,
            symbol_rate=samp_rate / 4.,
            omega_limit=0.005,
        )
        self.Add(self.wxgui_constellationsink2_0.win)
        self.vocoder_g723_40_encode_sb_0 = vocoder.g723_40_encode_sb()
        self.digital_qam_mod_0 = digital.qam.qam_mod(
            constellation_points=4,
            mod_code="gray",
            differential=True,
            samples_per_symbol=256,
            excess_bw=0.35,
            verbose=False,
            log=False,
        )
        self.blocks_multiply_const_vxx_0 = blocks.multiply_const_vff(
            (variable_slider_0, ))
        self.blocks_float_to_short_0 = blocks.float_to_short(1, 1)
        self.blocks_add_xx_0 = blocks.add_vcc(1)
        self.audio_source_0 = audio.source(samp_rate, "", True)
        self.analog_noise_source_x_0 = analog.noise_source_c(
            analog.GR_GAUSSIAN, variable_slider_2, 0)

        ##################################################
        # Connections
        ##################################################
        self.connect((self.blocks_multiply_const_vxx_0, 0),
                     (self.blocks_float_to_short_0, 0))
        self.connect((self.analog_noise_source_x_0, 0),
                     (self.blocks_add_xx_0, 1))
        self.connect((self.blocks_add_xx_0, 0),
                     (self.wxgui_constellationsink2_0, 0))
        self.connect((self.blocks_float_to_short_0, 0),
                     (self.vocoder_g723_40_encode_sb_0, 0))
        self.connect((self.audio_source_0, 0),
                     (self.blocks_multiply_const_vxx_0, 0))
        self.connect((self.vocoder_g723_40_encode_sb_0, 0),
                     (self.digital_qam_mod_0, 0))
        self.connect((self.digital_qam_mod_0, 0), (self.blocks_add_xx_0, 0))
Exemplo n.º 6
0
    def __init__(self):
        grc_wxgui.top_block_gui.__init__(self, title="Top Block")
        _icon_path = "/usr/share/icons/hicolor/32x32/apps/gnuradio-grc.png"
        self.SetIcon(wx.Icon(_icon_path, wx.BITMAP_TYPE_ANY))

        ##################################################
        # Variables
        ##################################################
        self.variable_slider_2 = variable_slider_2 = 0
        self.variable_slider_0 = variable_slider_0 = 50000
        self.samp_rate = samp_rate = 32000

        ##################################################
        # Blocks
        ##################################################
        _variable_slider_2_sizer = wx.BoxSizer(wx.VERTICAL)
        self._variable_slider_2_text_box = forms.text_box(
        	parent=self.GetWin(),
        	sizer=_variable_slider_2_sizer,
        	value=self.variable_slider_2,
        	callback=self.set_variable_slider_2,
        	label="label_variable_slider_0 NOise amplitude",
        	converter=forms.float_converter(),
        	proportion=0,
        )
        self._variable_slider_2_slider = forms.slider(
        	parent=self.GetWin(),
        	sizer=_variable_slider_2_sizer,
        	value=self.variable_slider_2,
        	callback=self.set_variable_slider_2,
        	minimum=0,
        	maximum=1,
        	num_steps=100,
        	style=wx.SL_HORIZONTAL,
        	cast=float,
        	proportion=1,
        )
        self.Add(_variable_slider_2_sizer)
        _variable_slider_0_sizer = wx.BoxSizer(wx.VERTICAL)
        self._variable_slider_0_text_box = forms.text_box(
        	parent=self.GetWin(),
        	sizer=_variable_slider_0_sizer,
        	value=self.variable_slider_0,
        	callback=self.set_variable_slider_0,
        	label="label_variable_slider_MULITIPLICACION_VOZ",
        	converter=forms.float_converter(),
        	proportion=0,
        )
        self._variable_slider_0_slider = forms.slider(
        	parent=self.GetWin(),
        	sizer=_variable_slider_0_sizer,
        	value=self.variable_slider_0,
        	callback=self.set_variable_slider_0,
        	minimum=0,
        	maximum=1e6,
        	num_steps=100,
        	style=wx.SL_HORIZONTAL,
        	cast=float,
        	proportion=1,
        )
        self.Add(_variable_slider_0_sizer)
        self.wxgui_constellationsink2_0 = constsink_gl.const_sink_c(
        	self.GetWin(),
        	title="Constellation Plot",
        	sample_rate=samp_rate,
        	frame_rate=256,
        	const_size=4,
        	M=2,
        	theta=0,
        	loop_bw=6.28/100.0,
        	fmax=0.06,
        	mu=0.5,
        	gain_mu=0.005,
        	symbol_rate=samp_rate/4.,
        	omega_limit=0.005,
        )
        self.Add(self.wxgui_constellationsink2_0.win)
        self.vocoder_g723_40_encode_sb_0 = vocoder.g723_40_encode_sb()
        self.digital_qam_mod_0 = digital.qam.qam_mod(
          constellation_points=4,
          mod_code="gray",
          differential=True,
          samples_per_symbol=256,
          excess_bw=0.35,
          verbose=False,
          log=False,
          )
        self.blocks_multiply_const_vxx_0 = blocks.multiply_const_vff((variable_slider_0, ))
        self.blocks_float_to_short_0 = blocks.float_to_short(1, 1)
        self.blocks_add_xx_0 = blocks.add_vcc(1)
        self.audio_source_0 = audio.source(samp_rate, "", True)
        self.analog_noise_source_x_0 = analog.noise_source_c(analog.GR_GAUSSIAN, variable_slider_2, 0)

        ##################################################
        # Connections
        ##################################################
        self.connect((self.blocks_multiply_const_vxx_0, 0), (self.blocks_float_to_short_0, 0))
        self.connect((self.analog_noise_source_x_0, 0), (self.blocks_add_xx_0, 1))
        self.connect((self.blocks_add_xx_0, 0), (self.wxgui_constellationsink2_0, 0))
        self.connect((self.blocks_float_to_short_0, 0), (self.vocoder_g723_40_encode_sb_0, 0))
        self.connect((self.audio_source_0, 0), (self.blocks_multiply_const_vxx_0, 0))
        self.connect((self.vocoder_g723_40_encode_sb_0, 0), (self.digital_qam_mod_0, 0))
        self.connect((self.digital_qam_mod_0, 0), (self.blocks_add_xx_0, 0))