SDL Library Documentation
Prev |  | Next

# SDL_CD

## Name

SDL_CD -- CDROM Drive Information

## Structure Definition

    typedef struct{
      int id;
      CDstatus status;
      int numtracks;
      int cur_track;
      int cur_frame;
      SDL_CDtrack track[SDL_MAX_TRACKS+1];
    } SDL_CD;

## Structure Data

`id` | Private drive identifier
`status` | Drive status
`numtracks` | Number of tracks on the CD
`cur_track` | Current track
`cur_frame` | Current frame offset within the track
`track`[SDL_MAX_TRACKS+1] | Array of track descriptions. (see SDL_CDtrack)

## Description

An SDL_CD structure is returned by `SDL_CDOpen`. It represents an opened CDROM device and stores information on the layout of the tracks on the disc.

A frame is the base data unit of a CD. `CD_FPS` frames is equal to 1 second of music. SDL provides two macros for converting between time and frames: `FRAMES_TO_MSF(f, M,S,F)` and `MSF_TO_FRAMES`.

## Examples

    int min, sec, frame;
    int frame_offset;

    FRAMES_TO_MSF(cdrom->cur_frame, &min, &sec, &frame);
    printf("Current Position: %d minutes, %d seconds, %d frames\n", min, sec, frame);

    frame_offset=MSF_TO_FRAMES(min, sec, frame);

## See Also

`SDL_CDOpen`, SDL_CDtrack

Prev | Home | Next
SDL_CDClose | Up | SDL_CDtrack