RoarAudio/Vortrag/Erster Vortrag: Unterschied zwischen den Versionen

Aus UUGRN
K (→‎Exkurs: Codecs und Container: + Beschreibungs Text)
K (→‎Was ist RoarAudio?: + Einleitung ind Soundserver)
Zeile 11: Zeile 11:
== Vortrag ==
== Vortrag ==
=== Was ist RoarAudio? ===
=== Was ist RoarAudio? ===
RoarAudio ist ein Soundserver...
RoarAudio ist ein Soundserver.
 
==== Was ist ein Soundserver ====
Ein Soundserver ist eine Programm das im Hintergrund Audio Daten mischt und das Ergebnis weiter leidet, meist an eine Soundcard.
 
Soundserver werden benötigt wenn wenn das unterliegende Audio Ausgabe-Gerät nur einen Datenstrom zu einer zeit verarbeiten kann (Single Stream Soundcards). Sie Stellen eine Art virtuelle Soundcard da zu der Programme wie Player ihre Daten schicken können um eine Simultane Ausgabe mit zum Beispiel Notify-Sounds von Chat Clients oder ähnlichem zu ermöglichen.
 
Sie bieten meist weitere Funktionen wie das Mischen unter berücksichtigung von verschiedenen Pegeln. Einige Soundserver ermöglichen auch die Benutzung von Netzwerken zur Übertragung von Audio Daten zur Wiedergabe auf einer anderen Maschine. Dies Beides kann auch RoarAudio.


=== Projekt Ziele ===
=== Projekt Ziele ===

Version vom 6. Dezember 2008, 01:29 Uhr

Was ist RoarAudio?
Ziel
ein Vortrag über RoarAudio und die realtime Audio mixing Problematik vor einem Unixpublikum.
RoarAudio Logo

Der Autor

Philipp ph3-der-loewe Schafft, Software Entwickler und Projekt Urheber.

Vortrag

Was ist RoarAudio?

RoarAudio ist ein Soundserver.

Was ist ein Soundserver

Ein Soundserver ist eine Programm das im Hintergrund Audio Daten mischt und das Ergebnis weiter leidet, meist an eine Soundcard.

Soundserver werden benötigt wenn wenn das unterliegende Audio Ausgabe-Gerät nur einen Datenstrom zu einer zeit verarbeiten kann (Single Stream Soundcards). Sie Stellen eine Art virtuelle Soundcard da zu der Programme wie Player ihre Daten schicken können um eine Simultane Ausgabe mit zum Beispiel Notify-Sounds von Chat Clients oder ähnlichem zu ermöglichen.

Sie bieten meist weitere Funktionen wie das Mischen unter berücksichtigung von verschiedenen Pegeln. Einige Soundserver ermöglichen auch die Benutzung von Netzwerken zur Übertragung von Audio Daten zur Wiedergabe auf einer anderen Maschine. Dies Beides kann auch RoarAudio.

Projekt Ziele

Bereitstellung eines Studio fähigen Software Ersatzes für ein Analoges Mischpult....


Was hebt RoarAudio hervor?

RoarAudio ist der einzige Soundserver der...


Exkurs: Codecs und Container

Ein Codec ist eine Spezifikation (meist werden auch die Implementierungen Codec genannt) wie Rohdaten, im Falle von Audio meist PCM Daten, Als Datenstrom oder -block repräsentiert werden. Hierzu Zählt meist als primäres Kriterium die Kompression. Weitere Informationen wie Synchronisationsdaten können ebenfalls durch den Codec Spezifiziert sein werden aber meist im Container abgelegt.

Ein Container ist im Gegensatz zu einem Codec eine Spezifikation wie Daten die mittels Codecs codiert wurden in eine Datei oder einen Stream verpackt werden. Hierzu Zählen Dinge wie globale File-Magic, Angabe des Codecs, Meta Daten, Angaben über rate/bps/channels und Ähnliches.

Verschiedene Arten von Codecs

  • Verlustfreie
  • Verlustbehaftete
  • Musik Codecs
  • Sprach Codecs
  • Niederlatenz Codecs

Probleme des Realtime Audio Mischens

  • Resampling
  • Frame Akkuratität
  • Rechenungenauigkeiten und Quantisierungsfehler, Noise-to-Signal-Radio
  • Clipping

Problem: Lokale Syncronität

Die wichtigsten Störfaktoren sind:

  • Delay in in der Hartware
  • Delay im Kernel und Treibern
  • Delay in APIs
  • Multitasking
  • Unsyncrnes clocking

Problem: Netzwerk Syncronität

  • lag
  • jitter
  • Netzwerk Implementierungen
  • QoS

Vorführung

  • Allgemeiner Betrieb
  • Background Streams
  • Kompatibilitäts Bibliotheken

Fragen

  • immer gerne