Szukam najprostszego sposobu na odtwarzanie pliku MP3 w C. Szukam biblioteki, w której mógłbym po prostu wywołać funkcję na nazwie pliku lub pliku wykonywalnego, który po prostu uruchomi i zakończy. Proszę zasugeruj.Jak odtwarzać pliki MP3 w C?
Odpowiedz
Nie wiem, czy jest to "najprostszy sposób", ale można też rzucić okiem na SDL (wraz z SDL_sound).
Jeśli jesteś na Windows lub OS X, polecam BASS (http://www.un4seen.com/bass.html)
można pobrać z biblioteki i spojrzeć na próbki kodu, aby zacząć. Przykład "konkursu" w katalogu C jest dobrym punktem początkowym.
Korzystanie FMOD (Cross Platform), powinno to być tak proste, jak to:
#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();
}
Na marginesie, polecam Ci używając C++ na C
Nie rozumiem, co ma wspólnego z tym pytaniem. – hanno
Jeśli u można użyć C++ a jeśli pracujesz na platformie Windows, użyj WMp3
Ta biblioteka jest łatwa w użyciu i umożliwia odtwarzanie, wstrzymywanie, wyszukiwanie plików mp3.
Na Win32, nie potrzebujesz żadnej biblioteki. Użyj standardowego api Win32 (mp3 jest rodzimy)
Zobacz na Adv. Grupa dyskusyjna Win32 api: news: //comp.os.ms-windows.programmer.win32 gdzie jest to najczęściej zadawane pytania.
http://www.codeproject.com/KB/audio-video/MP3Example.aspx – bobobobo
Urządzenie BASS DLL jest bardzo łatwe w użyciu i prawdopodobnie wykona to, czego potrzebujesz. Jest jednak bezpłatny tylko do użytku niekomercyjnego.
Jeśli potrzebujesz większą kontrolę, trzeba będzie kodek (wolę libMad) i jakieś wyjście dźwięku API jak DirectSound w systemie Windows lub ALSA lub Linux (lub cokolwiek Linux faceci wykorzystać dźwięku Bieżący tydzień)
mpg123 ma ogólny zdalny interfejs, do którego można uzyskać dostęp, uruchamiając plik wykonywalny za pomocą opcji -R. Następnie możesz wysyłać polecenia (takie jak ładowanie, pauza itd.) Przez rurkę fifo lub stdin podprocesu. Jeśli nic innego, łatwo można debugować i testować ręcznie.
Przejdź tutaj:
http://code4k.blogspot.com/2010/05/playing-mp3-in-c-using-plain-windows.html
Ta strona posiada zamek, w którym można zobaczyć, jak ta osoba wygenerowany kod odtwarzacza mp3.
Można również sprawdzić: http://www.codeguru.com/cpp/g-m/directx/directshow/article.php/c19079/Simple-C-MP3-Player-Class.htm
lub
http://www.ucancode.net/Visual_C_Control/Play-MP3-File-VC-Sample-Player.htm
Jaki rodzaj licencji powinno to mieć bibliotekę? Sądzę, że istnieje kilka GPL (chociaż format/algorytm mp3 zawsze ma/miał problemy z licencją), ale mogą one nie pasować do twojego projektu. Również: windows/osx/linux? –