CDparseframe - parse a frame of CD digital audio data
void CDparseframe(CDPARSER* cdp, CDFRAME* cdfp)
cdp A pointer to the target CDPARSER
cdfp A pointer to the frame of CD digital audio data to be parsed.
CDparseframe(3dm) parses a frame of digital audio data from a CD such as
is returned by CDreadda(3dm). It determines which subcodes are present in
the data. If those subcodes have changed since the last frame, then
CDparseframe(3dm) executes a callback of the appropriate type [see
CDaddcallback(3dm)] passing to it the subcode data found in the frame.
Callbacks are only executed when the subcodes change because subcodes
tend to come and go and calling whenever a particular subcode is seen
would be unpredictable. Also several of the subcodes never change on the
disk but may be repeated thousands of times. Executing a callback every
time the same subcode is seen would be very inefficient. For unchanging
subcodes, the callback is executed the first time the subcode is seen. A
program that wishes to see the data every frame is free to look directly
into the CDFRAME structure.
If a cd_audio callback is set, CDparseframe(3dm) executes that callback
every frame after byte-swapping and, if the CD indicates it is necessary,
de-emphasizing the data.
CDintro(3dm), CDcreateparser(3dm), CDdeleteparser(3dm),
CDresetparser(3dm), CDaddcallback(3dm), CDopen(3dm), CDclose(3dm),
CDreadda(3dm), CDseek(3dm), CDseektrack(3dm), CDseekblock(3dm),
PPPPaaaaggggeeee 1111 [ Back ]