aspose.info
NL

FLAC-bestandsindeling

Bijgewerkt

Wat is een FLAC-bestand?

FLAC (Free Lossless Audio Codec) is een lossless compressie-audiocoderingsformaat ontwikkeld door Xiph.Org Foundation. FLAC is een royaltyvrije open indeling die wordt opgeslagen met de .flac-extensie. Digitale audio die wordt gecomprimeerd met behulp van het FLAC-algoritme, wordt doorgaans teruggebracht tot 50 tot 70 procent. FLAC-bestanden kunnen worden gedecomprimeerd tot een identieke kopie van de originele audiobestanden.

FLAC-bestandsindeling

Dit is een overzicht van de FLAC bitstream.

  • fLaC-markering: deze markering wordt toegevoegd aan het begin van de stream. Het wordt gevolgd door een of meer metadatablokken.
  • Metadatablokken: 128 soorten metadatablokken worden ondersteund door FLAC; momenteel zijn de volgende gedefinieerd.
    • STREAMINFO: Contains the information about the whole stream.
    • APPLICATION: This is used by third-party applications for identification.
    • PADDING: It is used to reserve space for metadata if the metadata will be edited after encoding. When the metadata is edited, the padding is replaced by the actual metadata.
    • SEEKTABLE: An optional table to store seek points.
    • VORBIS_COMMENT: Used to store human-readable key/value pairs.
    • CUESHEET: Used to store cue sheet information.
    • PICTURE: Used to store pictures.
  • FRAME: de audiogegevens zijn samengesteld uit een of meer audioframes.
    • FRAME_HEADER: Contains the basic information about the stream.
    • SUBFRAME: To decrease the complexity, individual subframes are coded separately within a frame (one frame per channel).
    • FRAME_FOOTER: Contains the CRC of the complete frame.

Korte geschiedenis van het FLAC-bestandsformaat

Josh Coalson begon met de ontwikkeling van FLAC in 2000. De eerste versie van FLAC werd uitgebracht op 20 juli 2001. FLAC werd op 20 januari 2003 opgenomen onder de Xiph.Org-vlag. De ontwikkeling van FLAC werd verplaatst naar de Xiph.Org git-repository met de release van versie 1.3.0 op 26 maart 2013.

Samenstelling van FLAC-project

Het FLAC-project bestaat uit het volgende:

  • Stream-indelingen.
  • Eenvoudig containerformaat voor de stream (FLAC).
  • libFLAC: een bibliotheek met referentie-encoders, decoders en metadata-interface.
  • libFLAC++: een objectgeoriënteerde wrapper voor libFLAC.
  • flac: een opdrachtregelprogramma om FLAC-streams te coderen en te decoderen.
  • metaflac: een metadata-editor voor de opdrachtregel voor FLAC.
  • Invoerplug-ins voor muziekspelers zoals Winamp, XMMX, enz.
  • Ogg-containerformaat (Ogg FLAC).

FLAC-ontwerp

Afhankelijk van de dichtheid en amplitude van de muziek, kan de grootte van het gecomprimeerde bestand 80% kleiner zijn dan het originele bestand.

Bron Encoder

  • Het ondersteunt alleen integersamples en geen floating-point. Het kan PCM-bitresoluties aan van 4 tot 32 bits per sample en een samplefrequentie van 1Hz tot 65.535 Hz. FLAC-codering is beperkt tot 24 bits per sample.
  • Kanalen kunnen worden gegroepeerd om te profiteren van interkanaalcorrelaties om de compressie te verhogen.
  • CRC-controlesommen worden gebruikt om beschadigde frames te identificeren.
  • Voor de conversie van audiosamples gebruikt FLAC lineaire voorspelling.

Metagegevens

  • FLAC ondersteunt ReplayGain (gebruikt om luidheid in audio waar te nemen en te normaliseren).
  • FLAC gebruikt hetzelfde systeem dat wordt gebruikt in Vorbis-opmerkingen voor tagging.
  • libFLAC wordt door de meeste FLAC-applicaties gebruikt voor codering/decodering.
  • libFLAC API is georganiseerd in streams, doorzoekbare streams en bestanden om de abstractie van de basis-FLAC-bitstream te vergroten.

Compressie

libFLAC gebruikt compressieniveaus van 0 tot 8 waarbij 0 het snelste is en 8 het langzaamste compressieniveau. De gecomprimeerde bestanden zijn altijd verliesvrij, hoewel de afweging tussen snelheid en grootte is.

FLAC versus MP3

De MP3 is een compressie-indeling met verlies, wat betekent dat het een deel van de audio kan afsnijden om de grootte te verkleinen na het toepassen van compressie. Terwijl FLAC een verliesvrij bestandsformaat is, wat betekent dat u de audio in zijn puurste vorm kunt horen. Eerder waren de verliesvrije bestandsindelingen CDA of WAV, die niet veel ruimte-efficiënt waren als FLAC. De volgende tabel toont de vergelijking tussen deze twee formaten voor enkele belangrijke termen:

TermijnFLACMP3
GegevenskwaliteitGeen verlies van audiogegevensSommige gegevens kunnen verloren gaan bij het comprimeren van audiogegevens
GrootteGrotere bestandsgrootte in vergelijking met formaten met verlies. Dus grotere opslagcapaciteit nodigKleinere bestandsgrootte, geschikt om af te spelen op compacte audioapparaten met weinig opslagruimte
HardwarevereistenHoogwaardige audioapparatuur en enorme opslagcapaciteit nodigEnorme audiobibliotheken kunnen worden opgeslagen in een kleinere opslagruimte. Geschikt voor draagbare apparaten, zoals audiospelers of mobiele telefoons
Distributie via internetKan niet gemakkelijk via internet worden verspreid vanwege enorme bestandsgrootteCompacte bestandsgrootte maakt het gemakkelijk om via internet te verspreiden
CompatibiliteitDe meest populaire codec voor het luisteren naar muziek en audio die vrijwel compatibel is met elk apparaat ter wereld.Compatibel met nieuwe generatie pc’s, telefoons, AV-ontvangers, blu-ray-spelers, streaming-apparaten zoals Roku of Fire TV

Referenties

Zie ook