hi…
i am working on tx_voice.py and rx_voice.py. I have to capture data
directly from usrp and write onto a file and process that. The problem
is that the file which is made by the data coming from usrp is very big
so basically i am not able to process that. Is there any way by which i
can reduce the size of the file without affecting my audio quality much.
The rates which i am presently using on the tx_voice.py are:
Bitrate- 50,000
samples per symbol - 5
interpolation - 512
Rates which i am using on the rx_voice.py are:
Bitrate- 50,000
samples per symbol - 5
decimation - 256.
Moreover, i have tried using gr.fir_filter_ccf (for decimatio in
software)in the following fashion
chan_coeffs = gr.firdes.low_pass (1.0, # gain
self._samples_per_symbol, #
sampling rate
1.0, #
midpoint of trans. band
0.1, # width
of trans. band
gr.firdes.WIN_HANN) # filter
type
self.chan_filt = gr.fir_filter_ccc(sw_decim, chan_coeffs)
and making a connection as
fg.connect(self.u, self.chan_filt, self.packet_receiver)
fg.connect(self.chan_filt,destination)
where destination refers to the file onto which i want to write.Now,
this works fine as long as sw_decim =1. But, if i change the value to
2,4 ,8 or any other then i dont receive any packet. The file size does
change as required (i am able to observe that as the usrp is always
sending data). what i have understood is that because of the decimation
i am missing samples and thus not able to receive packets.So, can
somebody please explain how to get around the situation.
Thanks for all the help.
Pratik Hetamsaria