UDP source plugin: for NFM output duplicate samples in real and imaginary parts

This commit is contained in:
f4exb 2016-04-04 22:28:56 +02:00
parent b27cf0da9d
commit cde3f531e0
2 changed files with 2 additions and 2 deletions

View File

@ -24,7 +24,7 @@ Combo box to specify the type of samples that are sent over UDP.
- `S16LE I/Q`: Raw I/Q samples on signed 16 bits integers with Little Endian layout. Use it with software that accepts I/Q data as input like GNUradio with the `UDP source` block. The output is interleaved I and Q samples
- `S16LE SSB`: AF of SSB demodulated signal as 16 bits signed integers with Little Endian layout. Use it with software that uses a SSB demodulated signal as input i.e. software that is based on the audio output of a SSB radio. The output is interleaved samples of the USB (on real part) and LSB signals (on imaginary part).
- `S16LE NFM`: AF of FM demodulated signal as 16 bits signed integers with Little Endian layout. Use it with software that takes the FM demodulated audio or the discriminator output of a radio as input. Make sure you specify the appropriate signal bandwidth (see 7) according to the AF bandwidth needs. The output is interleaved samples of NFM samples (on real part) and zeros (on imaginary part).
- `S16LE NFM`: AF of FM demodulated signal as 16 bits signed integers with Little Endian layout. Use it with software that takes the FM demodulated audio or the discriminator output of a radio as input. Make sure you specify the appropriate signal bandwidth (see 7) according to the AF bandwidth needs. The output is a repetition of NFM samples on real part and on imaginary part this facilitates integration wtih software expecting a mono from stereo like input. With GNURadio just use a complex to real block.
<h3>4: Signal sample rate</h3>

View File

@ -168,7 +168,7 @@ void UDPSrc::feed(const SampleVector::const_iterator& begin, const SampleVector:
else if (m_sampleFormat == FormatNFM)
{
Real demod = 32768.0f * m_phaseDiscri.phaseDiscriminator(ci);
m_udpBuffer->write(Sample(demod, 0.0));
m_udpBuffer->write(Sample(demod, demod));
}
else // Raw I/Q samples
{