spacer
home BLOG vline SOFTWARE vline HARDWARE vline WEBPROJEKTE vline
spacer
logo
spacer
spacer

FAAD2 2.11.4 für AmigaOS 3.x

FAAD2 2.11.4 für AmigaOS 3.xspacer Wer Internetradio hört, hört oft AAC: Der Deutschlandfunk und viele andere Sender liefern ihren Ton in AAC oder HE-AAC, dazu kommen Podcasts und die M4A-Dateien jeder Musiksammlung. Für den klassischen Amiga gibt es dafür jetzt die faad2.library – einen Port von FAAD2 2.11.4, dem freien AAC-Decoder, als gemeinsam nutzbare Bibliothek für AmigaOS 3.x. Sie dekodiert AAC-LC, HE-AAC mit SBR und HE-AACv2 mit Parametric Stereo, dazu LTP, LD und ER, aus ADTS-, ADIF- und MP4-Strömen. Die Schnittstelle ist die vollständige libfaad-API mit den gewohnten NeAACDec-Funktionen, vorhandener libfaad-Code läuft darum meist unverändert. Die Bibliothek ist reentrant, beliebig viele Tasks dürfen gleichzeitig dekodieren, und jeder Decoder arbeitet auf einem eigenen Stack von 128 KB – das aufrufende Programm braucht keinen großen Stack.

Beiliegen zwei Fassungen. fpu rechnet mit Fließkomma und ist für jeden 68k mit FPU gedacht: 68020 und 68030 mit 68881/68882, 68040, 68060 und den 68080 der Vampire V4. Die rechenintensiven Teile – Filterbänke, DCT, Parametric Stereo und die SBR-Hüllkurven – sind dafür von Hand in FPU-Assembler geschrieben. fixed rechnet in Festkomma und läuft auf 68020 bis 68060 ohne FPU. Sie enthält gleich zwei Decoder und wählt beim Laden den passenden: für 68020 bis 68040 und den 68080 einen mit der 64-Bit-Multiplikation des Prozessors und Assembler, für den 68060, dem diese Multiplikation in Hardware fehlt, einen in reinem C. Die Faustregel lautet: mit FPU die fpu-Fassung, sonst fixed. Version faad2.library FULL zeigt, welche installiert ist.

Auf einer Vampire V4 Standalone dekodiert die fpu-Fassung AAC-LC mit 128 kbit/s 3,3-mal schneller als Echtzeit, HE-AAC und HE-AACv2 mit 48 kHz rund 1,5-mal. Bei echten Sendern sind es 2,6-fach für AAC-LC mit 192 kbit/s, 1,6-fach für HE-AAC mit 64 kbit/s und 1,5-fach für HE-AACv2 mit 48 kbit/s. Im Musikabspieler LumiAMP läuft der HE-AACv2-Strom des Deutschlandfunks auf der V4SA ohne Aussetzer bei knapp 60 Prozent Prozessorlast. Für langsamere Rechner bringt der Port eine Erweiterung mit: Auf Wunsch lässt die Bibliothek SBR weg und dekodiert nur den AAC-Kern mit halber Abtastrate. Für 18 Sekunden Musik sinkt die Rechenzeit damit bei HE-AAC von 12 auf 3 Sekunden, bei HE-AACv2 auf eine Sekunde – dafür endet der Klang an der Bandbreite des Kerns, oft bei 8 kHz.

Mit FAAD2 2.11.4 klingt auch die Festkomma-Fassung so gut wie die mit FPU. Bis 2.11.3 übersprang der Festkomma-Decoder wegen eines zu kleinen Grenzwerts unbemerkt die meisten SBR-Hüllkurvenanpassungen; verglichen mit ffmpeg steigt der Rauschabstand jetzt bei HE-AAC von 33 auf 69 dB und bei HE-AACv2 von 15 auf 46 dB, für rund 10 Prozent mehr Rechenzeit. Ebenfalls neu: Mono bleibt mono. HE-AACv2-Radioströme beginnen deshalb einkanalig und schalten nach einigen Frames auf Stereo um – Programme müssen die Kanalzahl jedes dekodierten Frames auswerten. Ältere Programme laufen mit der neuen Bibliothek weiter.

Das Archiv bringt neben den beiden Bibliotheken den Kommandozeilen-Decoder faad mit, der AAC und MP4 in WAV oder Rohdaten wandelt. Für Programmierer liegt ein SDK bei: Header für GCC, VBCC und SAS/C samt FD und SFD, die statische libfaad.a beider Fassungen und ein vollständiges Beispielprogramm. FAAD2 steht unter der GNU GPL v2, das gilt auch für Programme, die die Bibliothek nutzen; für kommerzielle Nutzung von AAC können Patentlizenzen nötig sein. Den Port von AMIGAworld gibt es im Aminet unter util/libs/faad2 Link.

spacer

| veröffentlicht am 1. November 2026 | in Software | geschrieben von Matthias

spacer
spacer

Pfeil  zurück

spacer
spacer
Commodore
spacer

Navigation

AMIGAworld

Kontakt
Impressum
Datenschutz

Folgen

rssspacer facebookspacer twitterspacer telegramspacer blueskyspacer mastodonspacer
spacer

Technik

HTML4spacer CSS2spacer RSS2

Server

Raspberry Pispacer Raspbian

spacer gemacht von spacer mit spacer aus Mannheim

© 1999-2026 Matthias Münch

spacer
spacer
Amiga AWeb IBrowse Voyager RC5
spacer