typedef struct { BYTE bSPST_Ns; // Number of Subpicture Streams available (1..32) BOOL bAvailable[MAX_SP]; // If True, the subpicture stream is available in the current Program Chain. BYTE bSubpictureType [MAX_SP]; // Subpicture type : 00b Not specified, 01b Language WORD wLanguageCode [MAX_SP]; // See Language codes WORD wLanguageCodeExtension [MAX_SP]; // See Language codes } SPST_ATR, *PSPST_ATR;All arrays go from 0 to bSPST_Ns-1.
DWORD dwReturn;
SPSR_ATR spst_atr;
dwReturn = DVDQueryAttribute(DVDI_SPST_ATR, (DWORD)& spst_atr);
dwReturn = (DWORD) spst_atr.bSPST_Ns;
dwReturn = (DWORD) spst_atr.bSubpictureType;
dwReturn = (DWORD) spst_atr.wLanguageCode;
dwReturn = (DWORD) spst_atr.wLanguageCodeExtension;
if (spst_atr.bAvailable)
return TRUE;
else return FALSE;