Lire les pistes d'un cd-audio [code en c] [gcc]

Soyez le premier à donner votre avis sur cette source.

Snippet vu 11 387 fois - Téléchargée 40 fois

Contenu du snippet

Bon dans ce code je vais vous montrer comment lire uen piste d'un Cd audio, en utilisant la librarie SDL (Simple Media Layer)

Source / Exemple :


#include <stdio.h>
#include <SDL/SDL.h> //Librairie general
#include <SDL/SDL_cdrom.h> //specification pour le cdrom

//Fonction perettant de jouer une piste d'un CD ausio
//sur un lecteur de cdrom donne
void PlayPiste(SDL_CD *cdrom, int piste)
{
  //Si il y a un CD dasn le lecteur:
  if ( CD_INDRIVE(SDL_CDStatus(cdrom)) ) 
  {
    //On joue la piste donnee
    SDL_CDPlayTracks(cdrom, piste, 0, piste+1, 0);
  }
  while ( SDL_CDStatus(cdrom) == CD_PLAYING )
  {
    //Temps que le la piste est jouer on calcul le delay
    SDL_Delay(1000);
  }
}

int main(int argc, char *argv[])
{
  //On declare un CDROM
  SDL_CD *cdrom;
  
  if ( SDL_CDNumDrives() > 0 ) 
  {
    //Si le lecteur existe on ouvre le CD
    cdrom = SDL_CDOpen(0);
    if ( cdrom == NULL ) 
    {
      //Si il est vide on envoie un message d'erreur
      fprintf(stderr, "Impossible d'ouvrir le lecteur de CD-ROM par défaut %s\n", SDL_GetError());
      return;
    }
    else
    {
      //Si non on demande de jouer la piste 1
      PlayPiste(cdrom, 1);
    }
  }
  
}

Conclusion :


Pour cela vous devez installer la librairie SDL, voila l'URL ou vous pourrez la telecharger:
http://www.libsdl.org/download-1.2.html

A voir également

Ajouter un commentaire

Commentaires

Messages postés
2093
Date d'inscription
mercredi 21 août 2002
Statut
Contributeur
Dernière intervention
23 août 2020
2
J'ai pleins d'erreurs en essayant ce code (Undefined Reference to SDL-CDStatus par exemple)

Comment faire ?
Messages postés
32
Date d'inscription
vendredi 20 octobre 2000
Statut
Membre
Dernière intervention
22 octobre 2002

ouais sa serait bien :P
Oups, j'ai oublier de donner l'adresse ou telecharger la librairie SQDL, je vais modifier ca tout de suite
site web de formation extra ordinaire
site web de formation extra ordinaire

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.