|
GNU Radio 3.6.1 C++ API
|
ATSC Segment and Symbol Sync Recovery. More...
#include <atsci_sssr.h>
Public Member Functions | |
| atsci_sssr () | |
| ~atsci_sssr () | |
| void | reset () |
| call on channel change | |
| void | update (sssr::sample_t sample_in, bool *seg_locked, int *symbol_index, double *timing_adjust) |
| process a single sample at the ATSC symbol rate (~10.76 MSPS) | |
ATSC Segment and Symbol Sync Recovery.
This class implements data segment sync tracking and symbol timing using the method described in "ATSC/VSB Tutorial - Receiver Technology" by Wayne E. Bretl of Zenith, pgs 41-45.
| atsci_sssr::atsci_sssr | ( | ) |
| atsci_sssr::~atsci_sssr | ( | ) |
| void atsci_sssr::reset | ( | ) |
call on channel change
| void atsci_sssr::update | ( | sssr::sample_t | sample_in, |
| bool * | seg_locked, | ||
| int * | symbol_index, | ||
| double * | timing_adjust | ||
| ) |
process a single sample at the ATSC symbol rate (~10.76 MSPS)
This block computes an indication of our timing error and keeps track of where the segment sync's occur. timing_adjust is returned to indicate how the interpolator timing needs to be adjusted to track the transmitter's symbol timing. If seg_locked is true, then symbol_index is the index of this sample in the current segment. The symbols are numbered from 0 to 831, where symbols 0, 1, 2 and 3 correspond to the data segment sync pattern, nominally +5, -5, -5, +5.