std.audio.mpg123
mpg123 ist eine leistungsstarke Open-Source-Bibliothek zur Dekodierung von MP3-Audiodaten. Die Unit ermöglicht das stream-basierte Lesen und Dekodieren von MP3-Dateien inklusive automatischer Format-Erkennung (Samplerate, Kanäle, Encoding). Der dekodierte PCM-Datenstrom kann direkt an ALSA oder einen anderen Audio-Ausgabepfad weitergeleitet werden.
Typische Einsatzbereiche sind Mediaplayer, Audiostreaming, Transkodierung, Sprachverarbeitung und alle Anwendungen, die MP3-Audiodaten dekodiert lesen müssen.
Konstanten
| Name | Typ | Wert | Sichtbarkeit |
MPG123_OK | int64 | 0 | pub |
MPG123_ERROR | int64 | -1 | pub |
MPG123_NEED_MORE | int64 | -2 | pub |
MPG123_DONE | int64 | -12 | pub |
MPG123_NEW_FORMAT | int64 | -3 | pub |
MPG123_ACCURATE | int64 | 256 | pub |
MPG123_GAPLESS | int64 | 512 | pub |
MPG123_SEEK_BUFFER | int64 | 1024 | pub |
MPG123_ENC_SIGNED_16 | int64 | 4 | pub |
Externe Funktionen
| Signatur | Beschreibung |
mpg123_init(): int64 | Initialisiert mpg123-Bibliothek global |
mpg123_exit() | Gibt globale mpg123-Ressourcen frei |
mpg123_new(decoder: int64, err: int64): int64 | Erstellt neuen Decoder-Handle |
mpg123_delete(handle: int64) | Löscht Decoder-Handle und Ressourcen |
mpg123_open(handle: int64, path: pchar): int64 | Öffnet MP3-Datei am Handle |
mpg123_close(handle: int64) | Schließt geöffnete MP3-Datei |
mpg123_fmt(handle: int64, rate: int64, channels: int64, encoding: int64): int64 | Setzt erlaubtes Ausgabeformat |
mpg123_open_fixed(handle: int64, path: pchar, channels: int64, encoding: int64): int64 | Öffnet Datei mit festem Format |
mpg123_getformat(handle: int64, rate: int64, channels: int64, encoding: int64): int64 | Liest aktuelles Dekodierformat aus |
mpg123_strerror(handle: int64): pchar | Gibt Fehlermeldungstext des Handles |
mpg123_read(handle: int64, buffer: int64, bufSize: int64, done: int64): int64 | Dekodiert MP3-Daten in Puffer |
mpg123_decode_frame(handle: int64, num_ptr: int64, audio_ptr: int64, bytes_ptr: int64): int64 | Dekodiert einzelnen MP3-Frame |
Funktionen
| Signatur | Sichtbarkeit | Beschreibung |
MP3Init(): int64 | pub | Initialisiert mpg123 und erstellt Handle |
MP3OpenFile(handle: int64, path: pchar): int64 | pub | Öffnet MP3-Datei mit festem Format |
MP3Read(handle: int64, buffer: int64, bufSize: int64, donePtr: int64): int64 | pub | Liest dekodierte PCM-Daten in Puffer |
MP3GetFormat(handle: int64): int64 | pub | Gibt Samplerate des Streams zurück |
MP3Close(handle: int64) | pub | Schließt Handle und gibt Ressourcen frei |