Mp3-Support



  • So nachdem ich nun mehr schlecht als recht Mp3s abspielen kann suche ich nach mehr Support. Eine Klasse mit folgendem Interface:

    [b]Player[/b]
    
    Constructors:
    Player (File audiofile); Automatische Formaterkennung
    
    Methods:
    play();
    pause();
    unpause();
    stop();
    
    length() : int;
    seek(int pos);
    

    Bis jetzt probiert und nicht zufrieden bzw. teilweise uach nicht verstanden:

    - Mp3-Plugin von hier: http://java.sun.com/products/java-media/jmf/mp3/download.html funktioniert, allerdings hat die Klasse AudioPlayer aus java.sound absolut keine Features - da gibts nur play() und stop()
    - JMF (Installiert und Sample ausprobiert, jedes Mal allerdings Fehler weil irgendwas nicht implementiert ist
    - jLayer (Kapier ich ganz einfach nicht 🙄)

    Wo finde ich eine Library die mir eine Klasse im obrigen Format anbietet?

    MfG SideWinder



  • Ich habe mir die Libs nicht selber angesehen, aber von einigen Entwickerln gehört, dass sie recht gut sind.

    http://www.javazoom.net/mp3spi/mp3spi.html
    http://www.fmod.org/fmoddownload.html#seca



  • FMod ist doch nur für C++? Gibts davon auch eine Java-Version?

    Die Javazoom-Page bietet genau so ein PlugIn für Mp3s wie ich es bereits benütze, sie haben darauf auch noch einen Player gebaut (JLayer) aber da bräucht ich ein ordentliches Tutorial dafür 😞

    Edit: Gibt ja tatsächlich eine Java-Brücke für FMod, mal sehen ob die was herhält. Danke für den Tip jedenfalls 🙂

    MfG SideWinder



  • Endlich mal was Brauchbares 👍

    1. Downloaden: http://www.esstin.uhp-nancy.fr/~jouvi2/index.php
    2. Installieren: Laut Anleitung, einfach die 3 DLLs ins richtige Verzeichnis und das jar-File ins richtige Verzeichnis
    3. Benützen, hier ein einfaches Mini-Sample:

    // Initialisieren
    // 44100Hz, 32 Softwarechannels, Global Focus (Win32-Only, Sound wird auch nach verlorenem Fokus noch abgespielt)
    Fmod.FSOUND_Init(44100,32,Fmod.FSOUND_INIT_GLOBALFOCUS);
    
    // Laden von mySong.mp3, Datei wird für bessere Performance nicht durch den 3D-Prozessor gejagt, auch werden die ID3-Tags nicht ausgelesen
    FSOUND_SAMPLE m_sample = Fmod.FSOUND_Sample_Load(0,"mySong.mp3",Fmod.FSOUND_2D|Fmod.FSOUND_IGNORETAGS,0,0);
    
    // Abspielen, Sound in einem freien Channel abspielen
    int m_channel = Fmod.FSOUND_PlaySound(Fmod.FSOUND_FREE,m_sample);
    
    // Sound stoppen (also den richtigen Soundchannel stoppen)
    Fmod.FSOUND_StopSound(m_channel);
    
    // Library killen
    Fmod.FSOUND_Close();
    

    Have fun, wär was für die FAQ, bin sicher nicht der erste der damit Probleme hat 👍

    MfG SideWinder
    MfG SideWinder


Anmelden zum Antworten