• Hoho, habe nun SSRC noch weiter optimiert (zum Teil auch nicht FFTW betreffend) und nun ist SSRC mit optimalen FFTW fast 27% schneller als im Original. :)

    Tja, schade schade :)

  • Qualität sollte "identisch" sein, da an der Präzisson nichts geschraubt wurde. Ich habe vorwiegend nur passende Schleifen durch memcpy und memset ersetzt. FFTW hat die gleiche Präsizion wie die internen FFT routinen, also (je nach Wahl) float oder double präzise, wobei ich mit floats hantiere, da im double Modus mein Athlon XP kein SIMD kann (nix SSE2...).

    Von daher finde ich den speed-up durchaus bemerkenswert. Du solltest doch wissen, daß ich Quali nicht für speed opfere. :)

  • Ich hatte in einer Schleife versucht mal selbst etwas SSE zu proggen, aber ging daneben, dh. output war i.O, aber es wurde langsamer. Lag wohl daran, daß ich die gcc vector extensions probiert habe, statt direkt in assembler zu coden und entsprechend die Register intelligent zu benutzen.

    Leider kann ich kein assembler. Hat jemand gute x86 assembler links parat? So was "assembler für Dummies" wäre gut. ;)

  • So, eine neue alpha:

    - Habe (hoffentlich) alle Vorschläge von HJ übernommen, die ich für (mehr oder minder) sinnvoll erachtete. (MIST, ich glaube ich habe vergessen das main profile umzustellen auf lc, erinner mich daran, daß ich das fürs nächste release mach, keine Lust wieder Win zu booten...)
    Ach ja, das bitratenraten bzgl Quali ist sehr primitiv, wer ne gute Formel hat, kann diese mir gerne zur Verfügung stellen.

    - Bitratenanzeige/ausblenden wurde intelligenter eingestellt. Frage: Beachtet Vorbis bei VBR (oder auch ABR) die Min und Max Grenzen?

    - was banales: Ich habe HAC3 einen neuen look verpaßt. Man wird älter. ;) Dummerweise sieht es unter Linux nicht ganz so schön aus. Mir geht Wine auf den Keks...


    Bitte um Kommentare, insbesondere bugs, die noch auffallen. Auch wenn schon mal genannt, bitte wiederholen. Kann mir nciht alles merken und habe keine Zeit mich irgendwo durchzuackern.

    Viel Spaß ansonsten!

  • Habe die neue HeadAc3he-alpha mal ausprobiert. Scheint auch alles gut zu funktionieren.

    Bloß kann ich nicht in AAC umwandeln (habe es aber nur mit WAVE-->AAC probiert). Es kommt immer die Fehlermeldung "Could not allocate enough memory" und HeadAC3he schließt sich.
    Übersehe ich irgendwas?

    PS: ich habe 512 MB RAM und knappe 80GB HDD frei.

    EDIT:
    Hier die Log-Datei:

    HeadAC3he v0.24-a12 by Dark Avenger 22.07.2004

    Parsing INI-file...done
    Loading azid.dll 1.9 build 922...succeeded
    Loading ssrc.dll 1.01 (15.04.2002) engine 1.28...succeeded
    Loading lame_enc.dll 1.32 (14.04.2004) engine 3.96...succeeded
    Loading hVorbis.dll 1.20 (04.06.2004) engine 1.74...succeeded
    Loading MP2enc.dll 1.15 (20.04.2002) engine 1.13...succeeded
    Loading MPAlib.dll 1.00 (20.04.2002) engine 1.50...succeeded
    Loading AC3enc.dll 1.00 (20.05.2004) engine 1.20...succeeded
    Loading libFAAC.dll...succeeded
    Notes:
    dumb mode: uses absolutely no temp space
    float mode: (much) faster, but uses destfile
    as temp space on first pass
    Choose appropriate target
    and press Options 2 times for configuration.
    Starting Process...
    Setting up FAAC ...succeeded
    Internal DownMixer activated
    Allocating buffer memory ...failed

  • Speicher mal die INI mit den Einstellungen und mail die mir. Ging es mit einer vorherigen Version? Ich hatte bis jetzt keine Probs mit FAAC. Kann es sein, daß die Puffergröße in der INI schlicht zu groß angegeben ist?

  • Ich habe dir mal den Inhalt der INI gemailt. Habe aber gegenüber der Default-Einstellung lediglich den Surround-Mode auf Stereo umgestellt und das LOW-Profil ausgewählt.

    Eine frühere Version von HeadAC3he mit AAC-Unterstützung habe ich bislang nicht getestet, da ich abwarten wollte, bis es ein bisschen ausgereifter ist :D

  • So ganz verstehe ich das nicht. Kannst du mit der alpha andere dests kreieren? Hast du auch die richtige FAAC.dll? (Also die aus einem meiner vorherigen archive, nicht irgendein anderen compile!)

    Probier mal

    MaxBuffer = 32

    oder so. Kann eigentlich nicht hieran liegen. Mal sehen, ob andere auch Probs mit AAC haben...
    </pre>

  • Bin mir nicht sicher, welche FAAC.dll ich habe.

    Wo bekomme ich deine her? Vielleicht sollte ich die einfach nochmal in den Ordner kopieren und sehen, ob's was bringt.

    EDIT:
    Hatte die libFAAC von Rarewares, vielleicht liegt's daran. Kannst Du mir deine mailen?
    Max Buffer=32 löst das Problem übrigens leider nicht.
    Die Umwandlung in alle anderen Formate funktioniert tadellos.

    EDIT EDIT:
    Es lag tatsächlich an der libfaac.dll. Habe jetzt deine aus einem vorherigen Archiv und nun funktioniert es. Danke für deine Mühen.
    Nur schade, dass man keinen MP4-Output hat. Als AAC-Datei kann ich sie nur mit dem Nero Media Player abspielen, alle anderen schließen sich einfach (liegt aber nicht an HeadAC3he).

  • Hm, habe gerade etwas merkwürdiges festgestellt:

    Wenn ich versuche, eine mit HeadAC3he erstellte AAC-Datei mit MP4creator in MP4 umzu-"kopieren" wird die Datei unbrauchbar. Im DOS-Fenster werden nur Warnungen angezeigt (Warning: Dropped xx input bytes)
    Mit AAC-Dateien direkt aus FAAC (über Ivan&Menno-Oberfläche) aber auch in Nero erstellten funktioniert es dagegen einwandfrei. Da muss also in HeadAC3he noch irgendwo der Wurm drin sein.

    Übrigens:
    Für AAC ist der Lowpass von 20kHz bei Quality 100 etwas unglücklich gewählt. Die resultierende Bitrate in dafür meist etwas zu niedrig und verursacht etwas zu viel Artefakte im Bassbereich (leichte Rauschfahnen/Pumpeffekte). Für den Standardwert würde ich eher 16kHz vorschlagen. Zwar fehlt es dann etwas an Brillanz (was aber ohnehin 90% der Menschen nicht mehr direkt wahrnehmen können) aber dafür klingt es sauberer.
    20kHz wären dagegen bei einem Wert von 125 in Ordnung, für 150 sogar 22kHz.

  • Hmm, ich dachte ich hätte 16kHz und Quali 75 als neuen default angegeben... Lösch mal in deiner INI die FAAC Einträge (gaaanz unten) und starte HAC3. Ich denke, dann sollten die neuen defaults angezeigt werden.

    Das mit dem mp4 Zeugs weiß ich nciht. Müßte man gucken, ob die Parameter bei den anderen Progs irgendwie anders eingestellt sind. Funkt die AACs denn in fb2k etwa ohne Probs?

  • Oh, tatsächlich. Habe die gesamte INI gelöscht und HeadAC3he neu gestartet.
    Als Default-Wert ist jetzt quality 75 und 16kHz. Muss ich wohl irgendwann in der Vergangenheit mal dran gepfuscht haben, sorry :D

    Foobar habe ich nicht mehr installiert, kann also leider nicht sagen ob die Files damit spielen. Vielleicht probiert das mal jemand anderes aus, auch das mit dem umkopieren in MP4. Mag ja sein, dass der Wurm irgendwo in meinem System sitzt und gar nichts mit HeadAC3he zu tun hat.

    Der einzige Player, der die HeadAC3he-AAC's abspielt, ist bei mir der Nero Media Player. Der WMP, ZoomPlayer und der MPC zeigen kurz das Lied an (mit der dreifachen Spielzeit) und klappen dann kommentarlos zusammen.
    Aber mit AAC's habe ich auf meinem System sowieso ein Problem. Obwohl ich den AAC Parser installiert habe, weigern sich nämlich die drei Player ohnehin AAC's abzuspielen. Deshalb wollte ich diese ja in MP4 umwandeln, was aber mit den HeadAC3he-AAC's komischerweise nicht funktioniert.

  • Im Prinzip ist die Version schon deutsch. ;) Im Ernst, habe schon ein (primitives) interface drin und einige Sprachdateien (nicht mehr auf den letzten Stand), so daß man das Prog in bel Sprache anzeigen lassen kann. Wollte hieran evtl in der nächsten alpha weiterarbeiten.

    Ich bekomme so wenig reports, was läuft und was nicht... Mich würde der aac output interessieren. Tedgo hat ja ein paar Probs.

  • Muss ich ja mal wieder Windows starten (Unter Linux ist´s so schön :D ) ;)

    Ich würde gern testen, nur bei der letzten Version die ich mir gezogen habe enthält leider nicht alle dll´s. Und hab´s deswegen erstmal zurückgestellt.

    Könntest du mal ein komplettes und aktuelles Paket hier einstellen. Dann leg ich auch los ;)

    btw. Per wine kann man sogar dein Proggie unter Linux starten. :)

  • Zitat

    Mich würde der aac output interessieren. Tedgo hat ja ein paar Probs.

    Hier ist der AAC-Output wie gesagt OK, wird sowohl in foobar2000 als auch in jedem Player mit Winamp-Plugin (in_mp4.dll) wie z.B. XMPlay oder 1by1 korrekt wiedergegeben. Auch das Muxen nach MP4 bzw. M4A mit mp4creator (z.B. in "Ivan & Menno") funktioniert einwandfrei.

    Die Lizenz der libmp4v2 von MPEG4IP ist eine "Mozilla....bla..." Lizenz, soweit ich weiß, wird oder wurde zumindestens auch in Nero verwendet. Genaueres kannst Du auf der MPEG4IP-Homepage nachlesen. Es sollte demnach kein Problem sein, damit einen direkten MP4-Output für libfaac.dll zu ermöglichen wie es eben schon für faac.exe geschieht. Übrigens hat Menno gerade heute die CVS-Ordner bzgl. der libmp4v2 geändert, die jetzt bei FAAC untergebracht ist und nicht mehr bei FAAD2, weil er dort schon länger die libffmp4 benutzt (kann aber keine MP4-Dateien schreiben, nur lesen).

    Der 16 kHz-Cutoff ist bei 75% VBR-Qualität nach wie vor zu hoch, weil das die Standard-Frequenz für 100% VBR-Qualität ist. Am besten machst Du die Cutoff-Einstellung per Clickbox an- bzw. abschaltbar, so daß wie bei faac.exe der automatische Cutoff vorgegeben ist, wenn -c nicht gesondert ausgewählt und eingestellt wird.<!-- / message -->

  • Ich habe nach wie vor Probleme, mit HeadAC3he erzeugte AAC's mittels MP4Creator in MP4 oder M4A zu muxen. Da kommen nur Warnungen (siehe Screenshot im Anhang).

    Die AAC's lassen sich aber zumindest im Nero Media Player abspielen. Alle anderen Player können es nicht, trotz AAC Parser (aber das trifft auf meinem System auf alle AAC's zu, liegt also wahrscheinlich eher an einem installierten Filter als an HeadAC3he).
    Bloß dass das Muxen nicht klappt, finde ich ärgerlich...

  • Das erinnert mich an die typischen Fehler mit der alten MPEG-4 Version, die im Header noch 2 Bit mehr hatte wegen eines zusätzlichen Flags, siehe auch den Audiocoding.com-Wiki zu ADTS. Wie alt ist Deine mp4creator-Version, und welche MPEG-Version wählst Du beim Encoden in HeadAC3he?

    Der DirectShow-Filter für AAC-Dateien ist seit einiger Zeit kaputt bzw. funktioniert nicht mehr, soweit ich weiß. Vielleicht wegen Änderungen im 3ivx-Splitter, keine Ahnung... Also solltest Du die AAC-Dateien nicht mit DirectShow-Playern testen, sondern wie gesagt am besten mit Winamp-kompatiblen oder foobar2000.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!