Mp3 Tags auslesen mit libid3



  • Hallo kann mir jemand ein Codeschnipsel geben, das erkärt wie ich von einer Mp3 mir die Tags auf Konsole ausgeben lasse, oder in strings speichere

    Ich scheitere hoffnungslos daran, mir den Namen des Albums ausgeben zu lassen

    int main()
    {
        ID3_Tag myTag("test.mp3");
        ID3_Field* myField = NULL;
    
        ID3_Frame* myFrame = myTag.Find(ID3FID_ALBUM);
    
        return 0;
    }
    

    Und wie gehts jetzt weiter?
    Render? Parse? Ich komm mit der Doku noch nicht ganz klar



  • habe ich zufällig:

    #ifndef ID3_HPP_INCLUDED
    #define ID3_HPP_INCLUDED
    
    #include <id3/tag.h>
    
    namespace id3 {
    
    inline std::string
    get_string (const ID3_Tag& tag, ID3_FrameID id) {
        ID3_Frame* frame (tag.Find (id));
        if (!frame)
            return "";
        ID3_Field* field (frame->GetField (ID3FN_TEXT));
        if (!field)
            return "";
        char x[1024] = {0};
        field->Get (x, sizeof (x));
        return x;
    }
    
    // ID3_Tag tag ("../test.mp3");
    // cout << id3::get_string (tag, ID3FID_LEADARTIST) << endl;
    // cout << id3::get_string (tag, ID3FID_ALBUM) << endl;
    // cout << id3::get_string (tag, ID3FID_TITLE) << endl;
    // cout << id3::get_string (tag, ID3FID_TRACKNUM) << endl;
    
    } // namespace id3
    
    #endif
    


  • Hallo Zusammen,
    genau an der Stelle möchte ich eine Frage stellen:

    Ich habe seit 3 Jahren kein C++ programmiert und habe nun eine neue Herausforderung vor der Brust.
    Ein MP3-Player womit man auch ID3 Tag auslesen kann und anschließend danach sortieren kann.

    Mit meinem Programm, kann man nun schon über die Festplatte browsen und es zeigt die vorhanden MP3 Dateien an.
    Das Abspielen funktioniert mit der C++ Builder Komponente TPlayer.
    http://img249.imageshack.us/img249/3293/prog.jpg

    Nur wie komme ich nun an die ID3 Daten (ID3 V1 reicht mir)?
    Ich habe mir auch die ID3 Lib von ID3 org runtergeladen.
    An der Implementierung des u.g. Codes bin ich leider gescheitert.

    Kann mir jemand weiterhelfen?


Anmelden zum Antworten