discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] gr-atsc progress


From: Charles Swiger
Subject: Re: [Discuss-gnuradio] gr-atsc progress
Date: Thu, 26 Apr 2007 04:15:40 -0400

On Wed, 2007-04-25 at 08:12 -0700, Eric Blossom wrote:
> On Wed, Apr 25, 2007 at 11:02:13AM -0400, Chuck Swiger wrote:
> > The 2.x gr-atsc seems to be closer to working, at least the flow control
> > (forecast,consume,etc) creates the exact to-the-byte correct quantity of
> > output with no loss of sync (since it keys on easy to discern -5/+5), on
> > 120MB size output files.
> > 
> > However the *quality* of the output is only about 65 percent correct,
> Did you port the "right" bit timing loop?
> 
> As I recall, I tried 2 or 3 different approaches.  Without checking
> the old code, I'm not sure which one I ended up using.

This is probably an issue in atsc_equalizer - the 0.9 stuff has what
looks like compensation for an offset between data and tags:

-----------------------------------------

int
GrAtscEqualizer::forecast (VrSampleRange output,
                           VrSampleRange inputs[])
{
  assert (numberInputs == 2);

  int ntaps = d_equalizer->ntaps ();
  int npretaps = d_equalizer->npretaps ();

  assert (ntaps >= 1);
  assert (npretaps >= 0 && npretaps < ntaps);

  inputs[0].index = output.index;               // the equalizer data
  inputs[0].size  = output.size + ntaps - 1;    // history on data

  // FIXME if there's a problem, it's probably on the next line...
  int offset = ntaps - npretaps - 1;

  assert (offset >= 0 && offset < ntaps);

  inputs[1].index = output.index + offset;      // align equalizer tags
  inputs[1].size = output.size;                 // N.B., no extra
history on tags

  return 0;
}

----------------------------------------

I'm not sure how to do that in the 2.x system. Looks like we need to
delay the tag stream by an amount equal to the number of filter taps in
the data stream.

--Chuck







reply via email to

[Prev in Thread] Current Thread [Next in Thread]