Vorbis
This presentation is the property of its rightful owner.
Sponsored Links
1 / 38

Vorbis PowerPoint PPT Presentation


  • 53 Views
  • Uploaded on
  • Presentation posted in: General

Vorbis. Multimedia-Codecs. Agenda. Ogg -Container. Geschichte. Verbreitung. Xiph.Org. Allgemeines. CBR/VBR/ABR. MDCT. Besonderheiten. Vor-/Nachteile. Vorbis. Bitstrom-Aufbau. Der Codec. Vergleich- tests. Hörbeispiele. Decodierungs- prozess. Vorbis. MP3. AAC.

Download Presentation

Vorbis

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Vorbis

Vorbis

Multimedia-Codecs


Agenda

Agenda

Ogg-Container

Geschichte

Verbreitung

Xiph.Org

Allgemeines

CBR/VBR/ABR

MDCT

Besonderheiten

Vor-/Nachteile

Vorbis

Bitstrom-Aufbau

Der Codec

Vergleich-tests

Hörbeispiele

Decodierungs- prozess

Vorbis

MP3

AAC


Allgemeines

  • Ogg = Container, Vorbis = Codec

  • Ziele von OggVorbis:

    • qualitativ hochwertiger, universeller Audiocodec basierend auf MDCT, Vektorquantisierung

    • quelloffen, nicht-proprietär, patent- und lizenzfrei

    • möglich, Hybrid Wavelet Filterbank hinzuzufügen (VorbisII)

  • Vergleichbar mit

    • WMA,

    • MPEG-4 AAC,

    • MPEG-1 Layer 3

Allgemeines


Xiph org

  • Xiph.OrgFoundation = gemeinnützige Gesellschaft / Verbund mehrerOpenSource Projekte

  • Ziel: […] put the foundation standards of Internet audio and video into the public domain, where all Internet standards belong.“

  • Projekte:

    • Icecast (Streaming Server),

    • Theora (Video Codec),

    • FLAC (Losslessaudiocodec),

    • XSPF (XML Format für Playlists),

    • Speex,

    • Ogg,

    • Vorbis

XIPH.Org


Geschichte

  • Entwickler: Christopher Montgomery 1998(Nachdem MP3 Lizenzrechtlich geschützt wurde)

  • 8.Mai 2000 wurde Bitstream Format für Vorbis I eingefroren (gewährleistet kompatibilität)

  • 19.Juli 2002 erste stabile Codec Version (1.0)

  • ab 2003 Hardwaresupport (iRiver)

  • Aktuelle Version 1.2.0

Geschichte


Verbreitung einsatz

  • Hardwareunterstützung für OggVorbis

    • >100 Musikplayer-Hersteller unterstützt (z.B. iAudio, iRiver, Maxfield, TEAC, TrekStor, Cowon, …)

    • TomTom Navigation

    • iPodLinux

    • Samsung SGH-i320, SPH-S4300

    • ...

  • Softwareunterstützung für OggVorbis

    • Winamp

    • Foobar2000

    • Mplayer

    • JetAudio

    • VLC

    • Windows Media Player (mit DirectShow Filter)

    • Player für SymbianOS

  • Einsatz in diversen Computerspielen,Radiostreams

Verbreitung / Einsatz


Cbr vbr abr

  • CBR: Constant Bitrate

    • Jeder Frame wird mit gleicher Bitrate kodiert

    • Ineffizient in Bezug auf Speicherplatz / Qualität

  • VBR: Variable Bitrate

    • Für jeden Frame wird die Bitrate an den Inhalt angepasst

  • ABR: Average Bitrate

    • Mischung aus CBR und VBR. Angabe einer Grundbitrate, die leicht variiert werden kann

    • Gleicher Speicherplatzverbrauch aber bessere Qualität als CBR

CBR, VBR, ABR

Kann in Vorbis z.B. bei Streaming eingesetzt werden

Standard in Vorbis:Angabe einer Qualität (-1 – 10)


Psychoakustik

  • In Vorbis werden psychoakustische Modelle besser umgesetzt als in anderen Codecs

  • Beispiel:

    • Absolute Tresholdof Hearing

      • Das Ohr kann physikalisch keinen leiseren Ton wahrnehmen als diese Schwelle leisere Töne müssen nicht übertragen werden

      • die meisten Codecs legen Abspiel-Lautstärke fest

      • Vorbis geht davon aus, dass Abspiel-Lautstärke so festgelegt wird, dass sie bei den stärksten Frequenzen noch angenehm ist

Psychoakustik


Besonderheiten

  • Flexibles Tagging (Hinzufügen von Meta-Informationen)

  • Unterstützung von bis zu 255 unabhängigen Kanälen (Surround kompatibel / Implementierung noch nicht ausgereift)

  • Channel coupling

    • Durch Korrelation von einzelnen Kanälen, wird nur ein Kanal codiert + Differenzinformationen des zweiten Kanals

  • Bitrate peeling (noch nicht implementiert)

    • Bitrate kann „on thefly“ verringert werden, ohne Re-Encodierung (gut für Radiostreams)

    • Kann erreicht werden, indem wichtigsten Daten zu Beginn eines Pakets encodiert sind

Besonderheiten


Vorbis

  • Modifizierte Diskrete Cosinus Transformation

  • beschrieben von Princen, Johnson, Bradley 1987

  • Unterschied zur DCT

    • Letzte Hälfte des eines Frames wird mit der ersten Hälfte des darauffolgenden Frames überlappt

  • hilft Artefakte an Frameränder zu vermeiden

    • siehe Blockartefakte in JPEG mit DCT

  • Anwendung in MP3, Vorbis, AAC

MDCT


Agenda1

Agenda

Ogg-Container

Geschichte

Verbreitung

Xiph.Org

Allgemeines

CBR/VBR/ABR

MDCT

Besonderheiten

Vor-/Nachteile

Vorbis

Bitstrom-Aufbau

Der Codec

Vergleich-tests

Hörbeispiele

Decodierungs- prozess

Vorbis

MP3

AAC


Bitpacking convention

Bitpacking-Convention


Vorbis

  • Identifiziert den Bitstream als Vorbis

  • Enthält:

    • Vorbis Version

    • einfachste Audio-Charakteristika

      • Sample rate

      • Anzahl an Kanäle


Vorbis

  • Beinhaltet:

    • vendorstring des Encoders

    • „Tags“ = Textkommentare

      • als Name=Value Pairs gespeichert

      • bis zu 232-1 Tags mit Länge von: 232-1

      • UTF8 Codierung

      • Vordefinierte Tags: TITLE, ALBUM, ARTIST, …

    • bietet mehr Flexibilität als z.B. ID3


Vorbis

  • Enthält Informationen über:

    • gesamtes Wahrscheinlichkeitsmodell

    • Decoder Setup (>100 Einträge)

    • komplette Vectorquantisierungscodebooks

    • Huffmancodebooks

  • Decoding verbraucht weniger Rechenleistung Normalerweise sind Codebooks (VQ, Huffman) fest im Decoder integriert (MP3)

  • Dekodierung benötigt mehr Arbeitsspeicher

  • Wenn Setup header nicht initialisiert, Dekodierung mitten im Stream nicht möglich


Vorbis

  • Nach den 3 Headern dürfen nur noch Audio-Daten im Bitstrom stehen

  • Erst nach Dekodierung der Header können die Audio Daten dekodiert werden


Dekodierung eines audio pakets

Dekodierung eines Audio pakets

  • Dekodierung = Aneinanderreihung verschiedener Komponenten mit spezifischen Funktionen

  • Komponenten = modes, mappings, …

  • Instanzen = 0, 1, 2, …, n


Dekodierung eines audio pakets1

Dekodierung eines Audio pakets

  • Mode:

    • „top levelconfigurationswitch“ für nachfolgende Dekodierung

    • framesize; window type; transform type; mappingnumber

  • Mapping:

    • Gruppiert einzelne Vektoren zu Submaps

    • Pro Submap wird Floor/Residue Konfiguration angegeben

  • Floor:

    • Repräsentation als stückweis linear interpolierte Kurve (Amplitude über Frequenz)

  • Residue:

    • Feine Struktur des Audio-Spektrums nachdem Floor subtrahiert wurde

  • Codebooks:

    • enthält Huffman Baum für Entropiecodierung

    • Tabellen der Vektorquantisierung


Dekodierung eines audio pakets2

Dekodierung eines Audio pakets

  • Ablauf:

    • Paket Typ dekodieren

    • Mode dekodieren

    • windowshape dekodieren

    • Floor dekodieren

    • Residue dekodieren

    • Inverse channelcoupling

    • Generiere Floor Kurve

    • Berechne Skalarprodukt von Floor und Residue

    • IMDCT

    • Überlappen/Addieren der linken Seite mit der rechten Seite des vorhergehenden Frames

    • Rechte Seite zwischenspeichern für nächste Überlappung

    • Zurückgeben der addierten linken Seite aus 10.


3 window shape

3. Windowshape

  • Window-Größen:

    • 2048 samples (Standard)

    • 512 samples (Verwendung bei plötzlichen Veränderungen / Percussion)

  • Window-Funktion: Kaiser-Bessel


4 5 floor residue

4./5. Floor / Residue

  • Pro Kanal pro Frame muss ein Floor-Vektor dekodiert werden  entspricht der Rohform des Spektrums

  • Danach: Dekodierung Residue Vektoren  Details des Spektrums

  • Daten sind entropiekodiert Codebooks werden benötigt


6 inverse channel coupling

6. Inverse channelcoupling

  • Verfahren zur Kopplung der Residue Vektoren:

    • Square Polar Mapping

    • Channel interleaving

  • Mit Kombination aus beiden  echtes lossless Stereo

  • Konvertierung der Residue Vektor-Paare von Polar-Darstellung (Magnitude-Vector; Angle-Vector) zur Kartesischen Darstellung


7 8 9 floor x residue

7./8./9. Floor x Residue

  • Skalarprodukt von Floor und Residue

  • Wiederhergestelltes Audio-Spektrum für jeden Kanal

  • Anwenden der Inversen MDCT  Transformation des Spektrums in die Zeitdomäne


10 12 berlappung

10.-12. Überlappung

  • Linken Seite des Frames mit vorhergehender rechten Seite addieren

  • Rechte Seite wird zwischengespeichert für nächstes Frame

  • Zurückgeben der addierten linken Seite


Agenda2

Agenda

Ogg-Container

Geschichte

Verbreitung

Xiph.Org

Allgemeines

CBR/VBR/ABR

MDCT

Besonderheiten

Vor-/Nachteile

Vorbis

Bitstrom-Aufbau

Der Codec

Vergleich-tests

Hörbeispiele

Decodierungs- prozess

Vorbis

MP3

AAC


H rbeispiele

Hörbeispiele

  • Compilation; Adagio for Strings; Drums

  • 128kBit/s

    • Nero AAC: –q 0.42

    • oggenc (aoTuV) Vorbis: -q 4.35

    • Lame MP3: -V5

  • 48kBit/s

    • Nero AAC: -q 0.215

    • oggenc (aoTuV) Vorbis: -q -1

    • Lame MP3: -V 9


Vergleichstests

  • C‘t Hörtest 2002:

    • Vorbis, MP3, MP3pro, WMA9, RealMedia, AAC

    • 64kBit/s: Vorbis am besten (25% der Tester hielten Vorbis für das beste Testfile / incl. unkomprimiertem)

    • 128kBit/s: Vorbis noch in führender Position nach unkomprimierten

    • >160kBit/s: verschwinden statistische Signifikanzen zwischen den Codecs

Vergleichstests


Vergleichstests1

  • 20 – 30 Hörer

  • bei 20 verschiedenen Musikstücken

  • 48kBit/s

Vergleichstests


Vergleichstests2

  • 12 – 27 Hörer

  • bei 18 verschiedenen Musikstücken

  • 128kBit/s

Vergleichstests


Vergleichstests3

~180kBit/s

Vergleichstests


Agenda3

Agenda

Ogg-Container

Geschichte

Verbreitung

Xiph.Org

Allgemeines

CBR/VBR/ABR

MDCT

Besonderheiten

Vor-/Nachteile

Vorbis

Bitstrom-Aufbau

Der Codec

Vergleich-tests

Hörbeispiele

Decodierungs- prozess

Vorbis

MP3

AAC


Vorbis

Vorteile

Nachteile

Mangelnde Hardwareunterstützung / VerbreitungApple legt Spezifikationen iPod nicht frei  keine Anpassung möglich

Wenn man Musik zum Download anbietet  Anleitung zum Abspielen erforderlich

kaum Chancen gegen große Verbreitung proprietärer Formate (MP3, AAC) anzukommen

  • Lizenz- / Patentfrei  keine Gebühren für Hersteller

  • Tagging Standard flexibler als ID3

  • Mehrkanal-Support

  • Einsatz in Computerspielen, etc. bedenkenlos möglich

  • Vorteile von open-source: Code kann von jedem weiterentwickelt / verbessert werden  aoTuV

  • bessere Qualität als MP3, aber vergleichbar mit WMV10 Pro

  • Einsatz als Radio-Stream vorteilhaft


Agenda4

Agenda

Ogg-Container

Geschichte

Verbreitung

Xiph.Org

Allgemeines

CBR/VBR/ABR

MDCT

Besonderheiten

Vor-/Nachteile

Vorbis

Bitstrom-Aufbau

Der Codec

Vergleich-tests

Hörbeispiele

Decodierungs- prozess

Vorbis

MP3

AAC


Ogg container

OGG Container

  • Ogg = Datencontainer kann enthalten:

    • Writ (Text-Codec)

    • Speex (Sprach-Codec)

    • Vorbis (Audio-Codec)

    • FLAC (lossless Audio-Codec)

    • Theora (Video-Codec)

  • kann mehrere logische Bitstreams enthalten

    • Video, Audio, Untertitel

    • mehrere Logische Bitstreams werden gemultiplext

      • squentialmultiplexing (nacheinander)

      • concurrentmultiplexing (gemischt; eindeutige Seriennummer pro Bitstrom erforderlich)


Ogg container1

OGG Container

Vorbis Paket

Bitstrom

variabel!

(empfohlen: 4-8kB)

Page

Daten-segmente

Header

max. 255Byte


Ogg container2

OGG Container

  • Header:

    • Beginn einer Page (OggS)

    • Versionsnummer

    • Typ:

      • enthält Daten

      • Beginn eines Bitstreams

      • Ende eines Bitstreams

    • Informationen über Codec (z.B.IdentificationHeader)

    • Bitstream Serial Number

    • Page SequenceNumber

    • CRC checksum

    • numberpagesegments

    • Segment Table


Quellen

  • Xiph.Org: Vorbis I specification

  • Xiph.Org: FAQ, Stereo (www.xiph.org)

  • grahammitchell.com: An IntroductiontoCompressed Audio withOggVorbis

  • John Stritar, Matt Papi: OGG Vorbis Audio Decoder

  • Sebastian Kraatz: Audio Codecs

  • Linuxjournal.com: OggVorbis – Open, Free Audio – Set Your Media Free

  • Jakub Svitek: OggVorbis: Subjectiveassessmentofsoundqualityatverylowbitrates

  • HenricKärnhall: Decoding OggVorbis Audio

  • Beni Cherniavsky: OggVorbis Psycho Acoustic Models Explained

  • Daniel Pape: Entwicklung von Multi-Medialen Lernmaterialien für die perzeptive Audiocodierung

  • Joanna Devaney: OggVorbis

  • Daniel Müller: OggVorbisaudiocodec

Quellen


Vielen dank f r die aufmerksamkeit

Vielen Dank für die Aufmerksamkeit


  • Login