Software-update: FLAC 1.4.3

FLAC logo (79 pix)Versie 1.4.3 van de Free Lossless Audio Codec, oftewel FLAC, is verschenen. Dit geluidsbestandsformaat slaat data op zonder dat hierbij informatie verloren gaat, zoals dat wel het geval is bij bijvoorbeeld mp3, Ogg Vorbis en Opus. FLAC is beschikbaar voor diverse besturingssystemen en heeft meestal een extern programma nodig, dat als gebruikersinterface dient. In Windows kan dat bijvoorbeeld met ExactAudioCopy en foobar2000. De changelog voor deze uitgave laat de volgende veranderingen en verbeteringen zien:

General

  • All PowerPC-specific code has been removed, as it turned out those improvements didn’t actually improve anything
  • Large improvements in encoder speed for all presets. The largest change is for the fastest presets and for 24-bit and 32-bit inputs.
  • Small improvement in decoder speed for BMI2-capable CPUs
  • Various documentation fixes and cleanups (Mark Grassi, Jake Schmidt)
  • Various fixes (Ozkan Sezer, Zhipeng Xue, orbea, Sam James, Harish Mahendrakar)
  • Fix building on Universal Windows Platform (Dmitry Kostjučenko)

flac

  • A lot of small fixes for bugs found by fuzzing
  • Various improvements to the –keep-foreign-metadata and –keep-foreign-metadata-if-present options on decoding
    • The output format (WAV/AIFF/RF64 etc.) is now automatically selected based on what kind of foreign metadata is stored
    • Decoded file is checked afterwards, to see whether stored foreign format data agrees with FLAC audio properties
    • AIFF-C sowt data can now be restored
  • Add –force-legacy-wave-format option, to decode to WAV with WAVEFORMATPCM where WAVE_FORMAT_EXTENSIBLE would be more appropriate
  • Add –force-aiff-c-none-format and –force-aiff-c-sowt-format to decode to AIFF-C
  • The storage of WAVEFORMATEXTENSIBLE_CHANNEL_MASK is no longer restricted to known channel orderings
  • Throw an error when WAV or AIFF files are over 4GiB in length and the –ignore-chunk-sizes option is not set
  • Warn on testing files when ID3v2 tags are found
  • Warn when data trails the audio data of a WAV/AIFF/RF64/W64 file
  • Fix output file not being deleted after error on Windows
  • Removal of the –sector–align option

metaflac

  • A lot of small fixes for bugs found by fuzzing
  • Added options –append and –data-format, which makes it possible to copy metadata blocks from one FLAC file to another
  • Added option –remove-all-tags-except
  • Added option –show-all-tags (harridu, Martijn van Beurden)

libFLAC

  • No longer write seektables to Ogg, even when specifically asked for. Seektables in Ogg are not defined
  • Add functions FLAC__metadata_object_set_raw and FLAC__metadata_object_get_raw to convert between blob and FLAC__StreamMetadata

Build system

  • Autoconf (configure)
    • The option –enable-64-bit-words is now on by default
  • CMake
    • The option ENABLE_64_BIT_WORDS is now on by default

Testing/validation

  • Fuzzers were added for the flac and metaflac command line tools
  • Fuzzer coverage was improved

FLAC

Versienummer 1.4.3
Releasestatus Final
Besturingssystemen Windows 7, Linux, BSD, macOS, Solaris, Windows 8, Windows 10, Windows 11
Website FLAC
Download https://github.com/xiph/flac/releases/tag/1.4.3
Licentietype GPL

Door Bart van Klaveren

Downloads en Best Buy Guide

23-06-2023 • 18:06

13

Submitter: ktf

Bron: FLAC

Update-historie

11-02 FLAC 1.5.0 22
06-'23 FLAC 1.4.3 13
10-'22 FLAC 1.4.2 2
09-'22 FLAC 1.4.1 36
09-'22 FLAC 1.4.0 53
02-'22 FLAC 1.3.4 39
01-'17 FLAC 1.3.2 13
11-'14 FLAC 1.3.1 9
06-'13 FLAC 1.3.0 16
09-'07 Flac 1.2.1 13
Meer historie

Reacties (13)

13
13
8
1
0
1
Wijzig sortering
Omdat FLAC ontzettend snel is voor het comprimeren van audio op een hedendaagse computer, gebruiken de meeste mensen de hoogste compressiepreset. Daar heeft de afgelopen jaren dan ook de meeste focus op gelegen bij de ontwikkeling. Deze release heeft echter grotere snelheidsverbeteringen voor de snelste presets, en de reden daarvoor is misschien leuk om te vertellen.

Naar blijkt wordt FLAC ook al jaren gebruikt voor het comprimeren van meetsignalen van een telescoop op de zuidpool. Ondanks dat het eindresultaat van zo'n telescoop een 2D beeld is, had het blijkbaar meer zin om de signalen van de individuele pixels met FLAC te comprimeren. Verliesloze videocompressoren zijn namelijk erg traag, en niet echt geschikt voor dit soort materiaal.

Nu is men bezig met een nieuwe iteratie van die telescoop, welke 500.000 pixels zal hebben, gesampled op 32 bit met een frequentie van > 100Hz. Op de zuidpool is ruimte en stroom kostbaar, dus deze verbeteringen leveren veel op: het comprimeren met FLAC was ongeveer 50% van het rekenwerk, en nu de nieuwe versie (voor hun gebruik) 2x zo snel liep, leverde dat dus netto 25% minder CPU gebruik op.

Sowieso is het gebruik van FLAC een grote winst qua voorzieningen: de data wordt een jaar lang opgespaard, zodat deze in de zomer (dan is het gebied goed toegankelijk) een bundel harde schijven naar elders verscheept kan worden. FLAC zorgt ervoor voor elke 4 harde schijven die nodig zouden zijn voor een ongecomprimeerd signaal, er nu nog maar 1 nodig is.
geinig verhaal!

Ik weet overigens niet hoe je er bij komt dat de meeste mensen Flac op de hoogste preset gebruiken, ik ken alleen mensen die het op zn snelst gebruiken omdat de snelheidswinst ten opzichte van de grootte niet in verhouding staat. De meeste mensen wachten niet graag en die paar MB's meer of minder maakt juist voor de meeste mensen geen fluit uit. Storage is cheap(er than time).
En toch op een normale moderne computer duurt het comprimeren van een album nog maar enkele seconden.

Ik ben zelf zo'n freak die voor het absolute maximum haalbare gaat, gewoon omdat het kan. Ik hoop dus dat er nog een keer een nieuw formaat opduikt. WavPack is iets beter, maar het verschil is erg klein. APE formaat is helaas dood, die kon er nóg meer uitpersen.

I stand corrected. Ik meende dat er al jaren geen update meer was geweest, maar blijkbaar is die er toch.

Binnenkort toch maar eens kijken of ik ermee kan experimenteren, zolang ik de encoder maar vanuit Foobar2000 kan aanspreken, want dat is wel altijd een voorwaarde.

[Reactie gewijzigd door Fairy op 23 juli 2024 18:04]

Er is absoluut niets dood aan het APE formaat hoor, de laatste release was een maand geleden. Na FLAC en ALAC is APE het best ondersteunde formaat op hardware.

En er zijn meer dan genoeg andere formaten "opgedoken", zoals bijvoorbeeld TAK. Als je geen hardware support nodig hebt en je favoriete software veel formaten ondersteunt (zoals bijvoorbeeld foobar2000) dan heb je veel keus.

Zie bijvoorbeeld deze vergelijking tussen verschillende lossless codecs. Zoals is te zien biedt WavPack inderdaad maar weinig meerwaarde ten opzichte van FLAC, maar bieden TAK en APE best wel veel extra's. OptimFROG haalt nog er nog veel meer uit, ten koste van rekenkracht natuurlijk: de zwaarste preset kan op een hoop hedendaagse computers niet eens realtime encoderen. Het is maar net waar je voorkeur ligt.

Het is in ieder geval duidelijk uit die test, FLAC is vergeleken met de concurrentie vooral heel erg snel (qua decoderen), omdat het zich concentreert op het "laaghangend fruit", en daar gewoon heel goed in is.

[Reactie gewijzigd door ktf op 23 juli 2024 18:04]

Zeker niet bedoelt om te argumenteren (ieder z'n ding!), maar ik vond het wel weer even de moeite waard om het te checken.

Gewoon voor de gein, zeg maar. Omdat we Tweakers zijn }>

Dit is kant A van de LP, zelf opgenomen in 24-bits 88.2 kHz.
[quote]
╰─ time flac -8 TesseracT\~Altered_State\~side1.wav

flac 1.4.3
Copyright (C) 2000-2009 Josh Coalson, 2011-2023 Xiph.Org Foundation
flac comes with ABSOLUTELY NO WARRANTY. This is free software, and you are
welcome to redistribute it under certain conditions. Type `flac' for details.

TesseracT~Altered_State~side1.wav: WARNING: legacy WAVE file has format type 1 but bits-per-sample=24
TesseracT~Altered_State~side1.wav: WARNING: there is data trailing the audio data. Use --keep-foreign-metadata or --ignore-chunk-sizes to keep it
TesseracT~Altered_State~side1.wav: wrote 291449465 bytes, ratio=0.628
flac -8 TesseracT\~Altered_State\~side1.wav 54.39s user 1.62s system 99% cpu 56.221 total

╰─ time flac -0 TesseracT\~Altered_State\~side1.wav

flac 1.4.3
Copyright (C) 2000-2009 Josh Coalson, 2011-2023 Xiph.Org Foundation
flac comes with ABSOLUTELY NO WARRANTY. This is free software, and you are
welcome to redistribute it under certain conditions. Type `flac' for details.

TesseracT~Altered_State~side1.wav: WARNING: legacy WAVE file has format type 1 but bits-per-sample=24
TesseracT~Altered_State~side1.wav: WARNING: there is data trailing the audio data. Use --keep-foreign-metadata or --ignore-chunk-sizes to keep it
TesseracT~Altered_State~side1.wav: wrote 303850632 bytes, ratio=0.655
flac -0 TesseracT\~Altered_State\~side1.wav 11.67s user 1.53s system 99% cpu 13.265 total

╰─ ls -alh TesseracT\~Altered_State\~side1*
-rwxrwxr-- 1 tweakert tweakert 278M Jun 11 2022 TesseracT~Altered_State~side1-8.flac
-rwxrwxr-- 1 tweakert tweakert 290M Jun 11 2022 TesseracT~Altered_State~side1-0.flac
-rwxrwxr-- 1 tweakert tweakert 443M Jun 11 2022 TesseracT~Altered_State~side1.wav
[/code]

Verschil is dus maar 12MB voor 5x langere encode tijd. Als je dat doorrekent over 100 albums is dat iets meer dan een gieg besparing voor 1 uur en 11 minuten langer wachten.

Mijn muziek collectie staat op een NAS met > 10TB aan storage. Het zal me werkelijk boeien dat het 1 GB bespaart ...

Nogmaals, ieder z'n ding maar ik vind dat echt niet de moeite waard om daarop te wachten.
Personal computers hebben al multitasking sinds de jaren 80. Dus ongeacht hoe lang het duurt hoef je er helemaal niet op te wachten.

En als het formaat je toch niet boeit, dan is de vraag waarom je je muziek überhaupt naar FLAC omzet.
Ik zou er eigenlijk niet op moeten reageren ...

Multitasking bestaat ten eerste niet sinds de jaren 80. 8086 - 80386 waren niet in staat om te multitasken. open z'n best was dat task switching. Eind jaren 80 had je Windows 3 of OS/2 op een single core cpu en als je toen Flac zou hebben om een heel album te comprimeren zat je inderdaad uren te wachten, want multitasking bestond niet en task switching was te zwaar met een dergelijk proces. Dus als je al in staat was geweest om een ander schermpje naar de voorgrond te krijgen, stond het waarschijnlijk gewoon stil. In het geval van Windows 3 kreeg je daarna ook nog hoogstwaarschijnlijk een blue screen met een of andere illegal huppeldepup error.

Verder claim ik nergens dat het formaat mij niet boeit. Ik weet werkelijk waar niet waar je dat vandaan haalt maar dat slaat nergens op, ik geef alleen aan dat (even goed meelezen) het verschil tussen -0 en -8 het mij niet waard is. En ja, ik kan weglopen en iets anders gaan doen, of alt-tabben naar Tweakers om op jou te reageren ... maar als ik met muziek organiseren bezig ben en moet ik nog steeds "wachten" tot dat klaar is voordat ik daarmee door kan gaan.

:O
Ik zou er eigenlijk niet op moeten reageren ...
Mee eens.
Multitasking bestaat ten eerste niet sinds de jaren 80.
Multitasking bestaat sinds de jaren 60. En sinds 1984 op personal computers.
8086 - 80386 waren niet in staat om te multitasken.
De 386 zeker wel. Windows 3 was beperkt (cooperative ipv preemptive), maar dat is een ander verhaal. Windows 95 (wel preemptive) draait ook op een 386.
open z'n best was dat task switching.
In feite is iedere vorm van multitasking op een single-core CPU task switching. Sterker nog: op dit moment heb ik volgens top 218 taken draaien. Aangezien ik iets minder dan 218 cores heb, is ook dat dus gewoon task switching. Maar task switching en multitasking zijn geen tegengestelden. Task switching is een onderdeel van multitasking.
Eind jaren 80 had je Windows 3 of OS/2 op een single core cpu en als je toen Flac zou hebben om een heel album te comprimeren zat je inderdaad uren te wachten, want multitasking bestond niet en task switching was te zwaar met een dergelijk proces. Dus als je al in staat was geweest om een ander schermpje naar de voorgrond te krijgen, stond het waarschijnlijk gewoon stil.
Ik kom uit de Amiga-hoek (multitasking sinds het eerste model, dus 1985), en het werkte prima. Je kon zelfs prioriteiten aan taken toekennen zodat het voorgrond-proces bijvoorbeeld altijd voorrang kreeg boven de langdraaiende taak (zoals een converter) in de achtergrond. Ik heb op die manier heel wat raytracing en fractalberekeningen gedaan terwijl ik gewoon doorging met andere programma's.
En ja, ik kan weglopen en iets anders gaan doen, of alt-tabben naar Tweakers om op jou te reageren ... maar als ik met muziek organiseren bezig ben en moet ik nog steeds "wachten" tot dat klaar is voordat ik daarmee door kan gaan.
Of gewoon eens kritisch naar je workflow kijken.
Dit. @InflatableMouse Dus eff off met je 8086 verhaal. Werkelijk een van de slechtste processor architecturen waar we nu nog steeds plezier van hebben.

Maar goed om de zoveel jaar eens een find doen met een flac --force doen en dat levert weer wat ruimte op, gewoon omdat het kan.
en PS. APE is zeker niet dood. Het wordt nog steeds ontwikkeld door de oorspronkelijke bedenker / ontwikkelaar van Jriver Media Center. Ik zag paar maanden geleden volgens mij nog een update.
"Removal of the –sector–align option"

Dat is toch jammer voor degenen die nog naar CD Audio branden en FLACs met SBEs tegenkomen, maar je kan natuurlijk een 1.4.2 bewaren voor het geval dat.

Op dit item kan niet meer gereageerd worden.