8-26
Video Decoder Module
The Postparser in the Video Decoder Module actually starts its parsing
operation as soon as there is data in the Video ES Channel Buffer. The
Postparser ignores bits from the buffer until it recognizes the rst
sequence start code. This is done so that the Video Decoder can
resynchronize to the data in cases where a program has been changed
(video stream ID changed) between sequence start codes. During this
time, Picture Start Code Interrupts may occur for each skipped picture
before the sequence start code is found.
After nding the rst sequence start code, the Postparser then proceeds
to read header data for the sequence layer, sequence extensions (if any),
group of pictures layer, user data, picture layer, and picture layer
extensions (if any). The Postparser stops parsing bits at the rst picture
data boundary (i.e., it reads the picture header) and waits for the Decode
Start Command if it has not yet been issued.
No data is written to the Auxiliary Data FIFO while the Postparser is
resynching to the rst sequence start code.
The host can start the Video Decoder in one of two ways:
1.
Setting the Decode Start/Stop Command bit in Register 246
2.
Using the video autostart feature. This is done by writing an
SCR Compare/Capture Value to Registers 13 through 16, setting the
SCR Compare/Capture Mode bits in Register 17 to Compare mode
(0b01), and setting the Video Start on Compare bit in Register 19.
When the SCR counter catches up to and equals the value in the
SCR Compare/Capture registers, the Decode Start Command is
issued automatically. This feature can be used to synchronize the
start of video decode with the Decode Time Stamps (DTSs) in the
video PES headers preparsed from the bitstream.
As soon as the Video Decoder acknowledges the Decode Start
Command, it starts parsing the payload data in the Video ES Channel
Buffer and sets the Decode Status Interrupt bit in Register 0
(page 4-2).This causes the INTRn signal to the host to be asserted if it is not
masked for this interrupt. The host should then read the interrupt
registers to determine the cause of the interrupt.