SILK

SILK
Logo
Dateiendung:.sil, .SIL
MIME-Type:audio/SILK
Magische Zahl:0x23 0x21 0x53 0x49 0x4C 0x4B 0x0A hex
#!SILK\n
Erstveröffentlichung:März 2009
Art:Audio
Erweitert zu:Opus
Standard(s):aktueller Standardentwurf
Website:developer.skype.com/silk

SILK ist ein Datenformat/Verfahren zur verlustbehafteten Audiodatenkompression von Sprachsignalen. Es basiert auf Linear Predictive Coding (LPC).[1] Es wurde von Koen Vos, Søren Skak Jensen und Karsten Vandborg Sørensen für das Unternehmen Skype Technologies S.A. für deren IP-Telephonie-Software Skype entwickelt, das Softwarepatente an dem Verfahren hält.

Neben Skype ist SILK in Sprachkonferenz-Software für die Kommunikation zwischen Online-Computer-Spielern im Einsatz (Steam, Team Fortress 2[2]).

Technik

Blockdiagramm des SILK-Kodierers

Technisch nutzt SILK Linear Predictive Coding (LPC), Tonhöhen-Vorhersage, Rauschformungs-Quantisierung, Pyramid Vector Quantisation (PVQ, eine sphärische Vektorquantisierung)[3] und Bereichskodierung.[4] In einem Modul des Kodierers werden zunächst das durchschnittliche Signal-Rausch-Verhältnis eines Blockes und eine geglättete zeitliche Folge der Signal-Rausch-Verhältnisse unterschiedlicher Subbänder bestimmt und dann anhand derer Sprechpausen und ein Maß für die durchschnittliche spektrale Energieverteilung ermittelt. Das Eingangssignal durchläuft dann zunächst ein Hochpass-Filter (Auto Regressive Moving Average, ARMA) mit einer variablen Grenzfrequenz von 80 bis 150 Hz.[5] Aus dem vorgefilterten Signal wird die (Haupt-)Tonhöhe des Nutzsignales bestimmt.

Merkmale

Das Verfahren unterstützt Abtastraten zwischen 8 kHz und 24 kHz. Variable Bitraten zwischen 6 kbit/s und 40 kbit/s sind möglich.[6] Die algorithmisch bedingte Übertragungsverzögerung beträgt 25 ms. Der Algorithmus besitzt Mechanismen zur Verschleierung von Paketverlusten.

Die Referenz-Implementierung ist in ANSI-C geschrieben und verwendet ausschließlich Integer-Arithmetik.

Geschichte

Das Verfahren ersetzt den vorher in Skype verwendeten SVOPC, welcher seinerseits als hauseigene Lösung die von Global IP Solutions lizenzierten Codecs iSAC und iLBC ablöste. Es war drei Jahre lang als separater Entwicklungszweig von SVOPC in der Entwicklung.[7] Es wurde im Januar 2009 auf der Consumer Electronics Show angekündigt[7] und war erstmals in der am 7. Januar 2009 veröffentlichten Skype-Version 4.0 Beta 3 integriert,[8] zu der am 3. Februar die fertige Version veröffentlicht wurde.[9][10][11] Am 3. März 2009 erklärte Skype Limited, dass der SILK-Codec bald unter einer kostenlosen Lizenz für Drittentwickler von Hard- oder Software verfügbar gemacht würde.[12] Am 6. Juli wurde das Verfahren bei der Internet Engineering Task Force (IETF) zur Standardisierung eingereicht.[13] Dabei wurde es mitsamt dem Quellcode der in C programmierten Referenzimplementierung offengelegt. SILK ist Grundlage des im September 2010 bei der IETF vorgelegten Hybridverfahrens Opus (früher bekannt als „Harmony“), der eine Obermenge zu dem freien Transformationsverfahren CELT und SILK darstellt.[14]

Weblinks

  • Offizielle Webpräsenz
  • Koen Vos, Karsten Vandborg Sørensen, Søren Skak Jensen, Jean-Marc Valin: The Opus Codec – Voice Coding with Opus. In: Microsoft, GN Netcom A/S, Mozilla Corporation (Hrsg.): AES Convention 135. 2. August 2013 (englisch, jmvalin.ca [PDF]).

Einzelnachweise

  1. Audio-Mitschnitt (Memento desOriginals vom 10. Februar 2013 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/nagasaki.bogus.com vom Treffen der IETF-Codec-Arbeitsgruppe auf der Konferenz IETF79 in Peking, China mit einer Darstellung der grundlegenden Funktionsprinzipien durch Koen Vos (MP3, ~70 MiB).
  2. teamfortress.com.
  3. Thomas R. Fischer: A pyramid vector quantizer. In: IEEE (Hrsg.): IEEE Transactions on Information Theory. Band 32, Nr. 4, Juli 1986 (englisch).
  4. ietf.org
  5. research.nokia.com (Memento desOriginals vom 12. Februar 2013 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/research.nokia.com
  6. SILK Datenblatt, abgerufen am 29. Dezember 2012.
  7. a b Michael Stanford Skype’s new super-wideband codec, vom 13. Januar 2009, abgerufen am 1. September 2009.
  8. Skype Journal Skype for Windows 4.0 Beta 3 Hotfix Introduces New Audio Codec, vom 7. Januar 2009, abgerufen am 1. September 2009.
  9. about.skype.com.
  10. PCWorld (4. Februar 2009)Skype Upgrade Simplifies VoIP Video Calls, abgerufen am 1. September 2009.
  11. Skype 4.0 audio: smooth as SILK (Memento desOriginals vom 22. Juli 2012 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/saunderslog.com, vom 4. Februar 2009, abgerufen am 1. September 2009.
  12. Jonathan Christensen SILK, our super wideband audio codec, is now available for free (Memento desOriginals vom 23. Dezember 2009 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/share.skype.com, vom 3. März 2009, abgerufen am 1. September 2009.
  13. IETF SILK Speech Codec - draft-vos-silk-00.txt, vom 6. Juli 2009, abgerufen am 1. September 2009.
  14. Definition of the Harmony Audio Codec.

Auf dieser Seite verwendete Medien

SILK encoder block diagram.svg
Autor/Urheber: Flugaal, Lizenz: CC0
Blockdiagramm des SILK-Kodierers mit englischsprachiger Beschriftung
SILK logotype.svg
Schriftzug des Sprach-Codecs SILK