Je cherche le moyen le plus facile de lire un fichier MP3 en C. Je cherche soit une bibliothèque, dans laquelle je pourrais simplement appeler la fonction sur le nom du fichier, soit un exécutable qui va simplement s’exécuter. Veuillez suggérer.
En utilisant FMOD (multiplateforme), cela devrait être aussi simple que cela:
#include <conio.h>
#include "inc/fmod.h"
FSOUND_SAMPLE* handle;
int main ()
{
// init FMOD sound system
FSOUND_Init (44100, 32, 0);
// load and play mp3
handle=FSOUND_Sample_Load (0,"my.mp3",0, 0, 0);
FSOUND_PlaySound (0,handle);
// wait until the users hits a key to end the app
while (!_kbhit())
{
}
// clean up
FSOUND_Sample_Free (handle);
FSOUND_Close();
}
En remarque, je vous suggérerais d'utiliser C++ sur C.
Le BASS DLL est vraiment facile à utiliser et fera probablement ce dont vous avez besoin. Cependant, il n’est gratuit que pour un usage non commercial.
Si vous avez besoin de plus de contrôle, vous aurez besoin d'un codec (je préfère libMad ) et de certaines API de sortie audio telles que DirectSound sous Windows, ALSA ou Linux (ou tout ce que les gars Linux utilisent pour le son cette semaine).
Sous Win32, vous n’avez besoin d’aucune bibliothèque . Utilisez l’API Win32 standard (mp3 est natif)
Voir sur Adv. Groupe de discussion api Win32: News: //comp.os.ms-windows.programmer.win32where est une FAQ.
Je ne sais pas si c'est "le moyen le plus simple", mais vous pouvez jeter un coup d'œil à SDL (avec SDL_sound).
Si vous êtes sous Windows ou OSX, je recommande BASS ( http://www.un4seen.com/bass.html )
Vous pouvez télécharger la bibliothèque et consulter un exemple de code pour commencer. L’exemple "contest" dans le répertoire C est un bon point de départ.
Si vous pouvez utiliser C++ et si vous travaillez sur une plate-forme Windows, utilisez WMp3
Cette bibliothèque est facile à utiliser et vous permet de lire, de mettre en pause, de rechercher des fichiers mp3.
Va ici:
http://code4k.blogspot.com/2010/05/playing-mp3-in-c-using-plain-windows.html
Ce site dispose d'un zip dans lequel vous pouvez voir comment cette personne a généré le code d'un lecteur mp3.
Vous pouvez également consulter: http://www.codeguru.com/cpp/g-m/directx/directshow/article.php/c19079/Simple-C-MP3-Player-Class.htm
ou
http://www.ucancode.net/Visual_C_Control/Play-MP3-File-VC-Sample-Player.htm
mpg123 a une interface distante générique à laquelle vous accédez en démarrant l’exécutable avec l’option -R. Vous pouvez ensuite envoyer des commandes (telles que charger, mettre en pause, etc.) sur un fifo pipe ou sur stdin du sous-processus. Si rien d'autre, il est facile de déboguer et de tester manuellement.
En gros, vous pouvez utiliser le fichier d'en-tête windows.h
#include <windows.h>
void main()
{
//replace music with your filename
system("start music.mp3");
}