Separate samples from 2 receive channels

Hi, All,

Can I use one USRP1 and two WBX daughterboards to create 2 concurrent
complex receive channels so that I can compare them?
If I use the rx_multi_samples.cpp example in uhd to receive samples from
2 channels (–subdev=“A:0 B:0”), and add several lines from
rx_samples_to_file.cpp like

outfile.write((const char*)&buff.front(),
num_rx_samps*sizeof(samp_type));
to record samples in a file, how can I tell which channel a sample is
from?
Because we have 2 complex receive channels, so the sample order is I_0,
Q_0, I_1, Q_1, I_0, Q_0, I_1, Q_1 … Is this correct?
If I read the binary file as complex numbers, then odd complex samples
are from channel 0 and even complex samples are from channel 1.
Is my assumption correct?

Thanks,
Pei

On 11/06/2012 11:15 PM, Dekst wrote:

You might want to look at rx_multi_samples.cpp as an example of a
streamer w/ multiple channels. Basically, the recv() call will fill 2
buffers in this case, not one. In other words, the data is not
interleaved.

I also recommend using the gnuradio companion. You can make a simple
flow graph with a USRP source with two output stream and simply connect
2 file sinks.

-josh