#include <atsci_randomizer.h>
The data randomizer described in ATSC standard A/53B. See figure D4 on page 54.
Public Member Functions | |
atsci_randomizer () | |
void | reset () |
reset randomizer LFSR | |
void | randomize (atsc_mpeg_packet_no_sync &out, const atsc_mpeg_packet &in) |
randomize (whiten) mpeg packet and remove leading MPEG-2 sync byte | |
void | derandomize (atsc_mpeg_packet &out, const atsc_mpeg_packet_no_sync &in) |
derandomize (de-whiten) mpeg packet and add leading MPEG-2 sync byte | |
unsigned int | state () const |
Friends | |
class | qa_atsci_randomizer |
atsci_randomizer::atsci_randomizer | ( | ) |
void atsci_randomizer::reset | ( | ) |
reset randomizer LFSR
must be called during the Data Segment Sync interval prior to the first data segment. I.e., the LFSR is reset prior to the first field of each VSB data frame.
Referenced by atsc_randomizer::reset(), atsc_derandomizer::reset(), atsc_randomizer::work(), and atsc_derandomizer::work().
void atsci_randomizer::randomize | ( | atsc_mpeg_packet_no_sync & | out, | |
const atsc_mpeg_packet & | in | |||
) |
randomize (whiten) mpeg packet and remove leading MPEG-2 sync byte
References atsc_mpeg_packet_no_sync::data, and atsc_mpeg_packet::data.
Referenced by atsc_randomizer::work().
void atsci_randomizer::derandomize | ( | atsc_mpeg_packet & | out, | |
const atsc_mpeg_packet_no_sync & | in | |||
) |
derandomize (de-whiten) mpeg packet and add leading MPEG-2 sync byte
References atsc_mpeg_packet_no_sync::data, and atsc_mpeg_packet::data.
Referenced by atsc_derandomizer::work().
unsigned int atsci_randomizer::state | ( | ) | const [inline] |
friend class qa_atsci_randomizer [friend] |