CD+G subchannel parity fields



I need to create a image (.bin) according to CD+G standard and burn it on a CD.

For create subchannel data, I take information from
but the fields ‘ParityQ’ and ‘ParityP’ are 0.
I need to fill those fields otherwise the cd doesn’t work on cd player.
How can I generate those fields? (source code would be rally nice…)



Please see this thread:

Look at my post at #7.


Thank you Truman, I will try “cdrecord”!


It’s your lucky day today Gleard (or anyone else interested)! :slight_smile:

I’ve made a demonstation source code to show others how to use edc_ecc from the open source cdrtools (cdrecord) to encode CD+G P & Q RS codes.

Download from here:


The decode functions only calculate syndromes (number of errors) and doesn’t do error correction.

A bug was fixed in the original code, see inside rs_codes.cpp:
int encode_LSUB_Q(unsigned char * inout)