Search this site
Embedded Files
Mon BBC SDL pas à pas
  • Accueil
  • BBC BASIC
  • BBC OS
  • BBC MODULES
  • RUBRIQUES
  • LIENS
Mon BBC SDL pas à pas
  • Accueil
  • BBC BASIC
  • BBC OS
  • BBC MODULES
  • RUBRIQUES
  • LIENS
  • More
    • Accueil
    • BBC BASIC
    • BBC OS
    • BBC MODULES
    • RUBRIQUES
    • LIENS

⇨ MENU ⇨ BIBLIOTHEQUE

audiolib.bbc

DESCRIPTION.


Le module audiolib.bbc propose des procédures et des fonctions pour la prise en charge des formats sonores mp3 et wav.




SYNTAXE.


INSTALL @lib$ + "audiolib.bbc"




REMARQUES.


Le module audiolib.bbc contient un ensemble de procédures et de fonctions permettant qui prennent de lire de la musique et des effets sonores, aux formats mp3 ou wav, dans vos programmes.


Dans le cadre de ce module, la distinction entre musique et effets sonores réside dans leur durée : la musique est généralement de longue durée, tandis que les effets sonores sont généralement de courte durée, de quelques secondes tout au plus. Une seule piste musicale peut être lue simultanément, alors que plusieurs effets sonores peuvent être diffusés et éventuellement en même temps que la musique.


Note : le module audiolib.bbc contient la procédure PROC_initAudio qui l'initialise. Elle devra toujours être appelée, de préférence dans l'initialisation générale du programme, avant tout autre fonction ou procédure de la bibliothèque audiolib.bbc.



Les procédures et fonctions du module audiolib.bbc doivent être utilisées et appelées dans un certain ordre pour un bon fonctionnement, on pourra, par exemple faire comme suit pour écouter un fichier au format mp3.


INSTALL @lib$ + "audiolib.bbc" : REM - Charge le module audiolib.bbc depuis la bibliotheque du BBC BASIC 

PROC_initAudio : REM --- initialise le module audiolib.bbc - OBLIGATOIRE - 

kmusique = FN_loadMP3( "monfichier.mp3" , 44100 , 2 ) : REM - Charge un fichier en memoire et retourne l'adresse de depart

PROC_playSound( kmusique ) : REM - lance la lecture de son


REPEAT : REM - Lance la boucle d'instructions

IF FN_audioPlaying THEN PRINT "Q pour arreter." ELSE EXIT REPEAT : REM - Test s'il reste des donnée audio à lire

ktouche$ = INKEY$( 50 ) : REM - Temporisation et mémorise si une touche est enfoncee

UNTIL ktouche$ = "Q" OR ktouche$ = "q" : REM - Test de sortie de la boucle d'instructions


PROC_freeMP3( kmusique ) : REM - Purge la memoire des données issue du fichier son

END : REM - Fin du programme


DEF FN_audioPlaying : REM - Fonction gerant la suite et l'etat de la lecture

LOCAL remaining% : REM - Fonction gerant la suite et l'etat de la lecture

PROC_trackMusic( kmusique , 0 , 0 , -1 ) : REM - Recharge le tampon audio si necessaire

SYS "SDL_GetQueuedAudioSize", @hwo%, @memhdc% TO remaining% : REM - retourne le nombre octets dans le tampon

PRINT remaining%  ; " " ; : REM - Affiche le nombre données pour controler si une recharge a bien eu lieu

IF  remaining% > 0 THEN = 1 ELSE = 0 : REM - retourne 0 si n'y a plus de données audio à lire sinon 1

ENDPROC


Le module doit être chargé depuis votre programme à l'aide de l'instruction : INSTALL @lib$ + "audiolib.bbc"




LISTE DES PROCÉDURES DU MODULE.


FN_copyMusic() : crée une copie du fichier chargé et retourne sa position en mémoire.

FN_loadMP3() : charge un fichier au format mp3 et retourne sa position en mémoire.

FN_loadWAV() : charge un fichier au format wav et retourne sa position en mémoire.

FN_loadWAVFromMem() : charge des données wav depuis un emplacement mémoire.

PROC_freeMP3() : libère la mémoire occupée par les fichiers chargés au format mp3.

PROC_freeWAV() : libère la mémoire occupée par les fichiers chargés au format wav.

PROC_initAudio : initialise la prise en charge des formats sonores mp3 et wav.

PROC_mixCancel() : retire un effet sonore ajouté précédemment dans un son en cours de lecture.

PROC_mixSound() : mixte deux fichiers chargés précédemment.

PROC_mixSoundLevel() : mixte deux fichiers chargés précédemment en indiquant le volume de l'effet.

PROC_playSound() : lit le fichier audio chargé précédemment depuis le début.

PROC_playSoundFrom() : lit le fichier audio chargé précédemment à partir d'une position donnée.

PROC_trackMusic() : ajoute des données dans le tampon audio pour poursuivre la lecture du son en cours.

Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de

vos remarques, vos commentaires et de vos suggestions.

Dans la RETROGICIEL vous trouvez des suggestions simples et classiques pour

TESTER - DÉCOUVRIR - PRATIQUER - APPROFONDIR - EXPLORER

avec un exemple de résolution à télécharger pour vous inspirer.

Google Sites
Report abuse
Page details
Page updated
Google Sites
Report abuse