|
From: | John Malsbury |
Subject: | Re: [Discuss-gnuradio] help accessing fft bins in python script |
Date: | Fri, 17 Oct 2014 09:28:46 -0700 |
This sounds interesting - do you have any sample code?Can anybody explain the concept of "size" of an fft (Arg 1 of fft.fft_vcc) comes into play if the output of that FFT generates as many samples as it receives?From: "John Malsbury" <address@hidden>
To: "Brad Hein" <address@hidden>
Cc: "Martin Braun" <address@hidden>, address@hidden
Sent: Friday, October 17, 2014 1:50:31 AM
Subject: Re: [Discuss-gnuradio] help accessing fft bins in python script-JohnSometimes when I want to grab samples and perform some periodic operation like CNR estimation, or fine-frequency estimation I sometimes use a vector_sink, and then two function probe blocks - one to read the data and one to reset it (yes I call the reset function from the function probe). This seems to work wonderfully for certain corner cases where a vector sink doesn't work well. And I mostly use this technique when I want to prototyping something quickly before writing a block. But am I asking for trouble with memory allocation issues???Also, I was thinking, it would be good to have the option, either a block parameter or an overloaded function) to reset the vector_sink, each time .data() is called... I can code this up unless anyone thinks this functionality would lead to regressions.
But I agree the vector sink block is much more convenient for FFTs...On Thu, Oct 16, 2014 at 5:37 PM, Brad Hein <address@hidden> wrote:Is there any way to access the fft bins from python without writing a custom block?From: "Martin Braun" <address@hidden>
To: address@hidden
Sent: Thursday, October 16, 2014 2:02:03 PM
Subject: Re: [Discuss-gnuradio] help accessing fft bins in python scriptA very simple way would just be to write your block downstream of the
FFT in Python. You can then operate on the vectors in the work function.MOn 10/16/2014 07:44 PM, address@hidden wrote:
> The vector sink is for debugging only. Don't use it in production code,
> because there's no convenient way to
>
> vacuum it out, so it grows without bound.
>
>
>
> When I've had this problem, I use a vector-probe block, and have a
> function probe running at a couple of Hz,
>
> and then leverage the dependency-tree evaluator to have my own
> function called with the result of the
>
> function probe. There are other ways, that's the one I personally
> find most convenient. But there are message
>
> queues and sundry other methods as well.
>
>
>
>
>
>
>
>
>
> On 2014-10-16 13:36, Brad Hein wrote:
>
>>
>> Using qa_fft.py for inspiration[1], I'm trying to feed a raw capture
>> file into an fft of size 32 and then review the 32 fft bins at an
>> instantaneous point in time[2]. I must be doing something wrong
>> however because when I review the vector sink's data() method, it
>> returns a rather large array (compared to the 32-element array I am
>> expecting). data() seems to return an array with the same number of
>> elements as samples fed into the fft. I just want an array of the 32
>> fft bins so I can calculate the relative power in the given band.
>>
>> Any help/pointers appreciated!
>> Thanks
>>
>>
>> [1]
>> http://gnuradio.org/redmine/projects/gnuradio/repository/revisions/master/entry/gr-fft/python/fft/qa_fft.py
>>
>> [2]
>> https://github.com/regulatre/grfun/blob/9dbbf676d2fea013787720273af0b419699c75a4/hello-fft/decodeDump162.py
>>
>>
>> [Brad Hein]
>>
>> _______________________________________________
>> Discuss-gnuradio mailing list
>> address@hidden <mailto:address@hidden>
>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
>
> _______________________________________________
> Discuss-gnuradio mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
_______________________________________________
Discuss-gnuradio mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
_______________________________________________
Discuss-gnuradio mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
fft_proc.png
Description: PNG image
[Prev in Thread] | Current Thread | [Next in Thread] |