Vorrichtung und Verfahren zum Berechnen eines Fingerabdrucks eines λudiosignals , Vorrichtung und Verfahren zum Synchronisieren und Vorrichtung und Verfahren zum Charakterisieren eines Testaudiosignals
Beschreibung
Die vorliegende Erfindung bezieht sich auf die Fingerabdruck- Technologie für Audio-Signale und insbesondere auf das Berechnen eines Fingerabdrucks, des Verwendens eines Fingerabdrucks zum Synchronisieren von Mehrkanalerweiterungsdaten mit einem Audiosignal und das Charakterisieren eines Audiosignals mit dem Fingerabdruck.
Derzeit in der Entwicklung befindliche Technologien ermöglichen eine immer effizientere Übertragung von Audiosignalen durch Datenreduktion, aber auch eine Steigerung des Hörgenusses durch Erweiterungen, wie beispielsweise durch den Einsatz von Mehrkanaltechnik.
Beispiele für eine solche Erweiterung der üblichen Übertragungstechniken sind unter dem Namen „Binaural Cue Coding" (BCC) sowie „Spatial Audio Coding" bekannt geworden. Hierzu wird beispielhaft auf J. Herre, C. Faller, S. Disch, C. Ertel, J. Hilpet, A. Hoelzer, K. Linzmeier, C. Spenger, P. Kroon: „Spatial Audio Coding: Next-Generation Efficient and Compati- bel Coding Oberfläche Multi-Channel Audio", 117th AES Convention, San Francisco 2004, Preprint 6186, verwiesen.
Solche Verfahren trennen in einem sequentiell arbeitenden Ü- bertragungssystem wie Rundfunk oder Internet das zu übertragende Audioprogramm in Audiobasisdaten beziehungsweise ein Audiosignal aus, das ein Mono- oder auch ein Stereodownmixaudio- signal sein kann, und in Erweiterungsdaten, die auch als Mehrkanalzusatzinformationen oder Mehrkanalerweiterungsdaten bezeichnet werden, auf. Die Mehrkanalerweiterungsdaten können zusammen mit dem Audiosignal, also kombiniert ausgestrahlt werden, oder die Mehrkanalerweiterungsdaten können auch sepa-
rat von dem Audiosignal ausgestrahlt werden. Alternativ zur Ausstrahlung eines Rundfunkprogramms können die Mehrkanaler- weiterungsdaten auch separat zu einer beim Benutzer zum Beispiel schon vorliegenden Version des Downmix-Kanals übertragen werden. In diesem Fall findet die Übertragung des Audiosignals beispielsweise in Form eines Internet-Downloads oder eines Kaufs einer Compactdisk oder DVD räumlich und zeitlich getrennt von der Übertragung der Mehrkanalerweiterungsdaten statt, welche beispielsweise von einem Mehrkanalerweiterungs- daten-Server geliefert werden können.
Prinzipiell hat die Trennung eines Mehrkanalaudiosignals in ein Audiosignal und Mehrkanalerweiterungsdaten folgende Vorteile. Ein „klassischer" Empfänger ist jederzeit unabhängig von Inhalt und Version der Mehrkanalzusatzinformationen in der Lage, die Audiobasisdaten, also das Audiosignal zu empfangen und wiederzugeben. Diese Eigenschaft wird als Rückwärtskompa- tibilität bezeichnet. Darüber hinaus kann ein Empfänger der neueren Generation die übertragenen Mehrkanalzusatzdaten aus- werten und diese mit den Audiobasisdaten, also mit dem Audiosignal so kombinieren, dass dem Nutzer die vollständige Erweiterung, d. h. der Mehrkanalton, zur Verfügung gestellt werden kann.
Bei einem Beispielsanwendungsszenario im digitalen Rundfunk kann mit Hilfe dieser Mehrkanalerweiterungsdaten das bisher ausgestrahlte Stereoaudiosignal durch geringen zusätzlichen Übertragungsaufwand auf das Mehrkanalformat 5.1 erweitert werden. Das Mehrkanalformat 5.1 hat fünf Wiedergabekanäle, also einen linken Kanal L, einen rechten Kanal R, einen mittleren Kanal C, einen linken hinteren Kanal LS (left Surround) und einen rechten hinteren Kanal RS (right Surround) . Hierzu erzeugt der Programmanbieter auf der Senderseite aus Mehrkanaltonquellen, wie sie z. B. auf einer DVD/Audio/Video zu finden sind, die Mehrkanalzusatzinformationen. Anschließend kann diese Mehrkanalzusatzinformation parallel zum wie bisher ausgestrahlten Audiostereosignal übertragen werden, welches nun einen Stereodownmix des Multikanalsignales enthält.
Ein Vorteil dieses Verfahrens ist dabei die Kompatibilität mit dem bisher bestehenden digitalen Rundfunkübertragungssystem. Ein klassischer Empfänger, der diese Zusatzinformation nicht auswerten kann, wird wie bisher das Zweikanaltonsignal ohne irgendwelche qualitativen Einschränkungen empfangen und wiedergeben können.
Ein Empfänger neuerer Bauart hingegen kann zusätzlich zum bisher empfangenen Stereotonsignal die Mehrkanalinformationen auswerten, dekodieren und das ursprüngliche 5.1 Mehrkanalsignal daraus rekonstruieren.
Um eine gleichzeitige Übertragung der Mehrkanalzusatzinformationen als Ergänzung zum bisher verwendeten Stereotonsignal zu ermöglichen, sind zwei Lösungen für die kompatible Ausstrahlung über ein digitales Rundfunksystem denkbar.
Die erste Lösung besteht darin, die Mehrkanalzusatzinformationen mit dem codierten Downmixaudiosignal so zu kombinieren, dass die in dem von einem Audiocodierer erzeugten Datenstrom als geeignete und kompatible Erweiterung angehängt werden können. In diesem Fall sieht der Empfänger nur einen (gültigen) Audiodatenstrom und kann daraus die Mehrkanaltonzusatzinforma- tionen über einen entsprechend vorgeschalteten Datenverteiler wieder synchron zu dem dazugehörigen Audiodatenblock extrahieren, dekodieren und als 5.1-Mehrkanalton ausgeben.
Diese Lösung benötigt die Erweiterung der vorhandenen Infrastruktur/Datenwege, so dass sie statt wie bisher lediglich die Stereoaudiosignale, nun die aus Downmixsignalen und Erweiterung bestehenden Datensignale transportieren können. Dies ist zum Beispiel dann ohne Zusatzaufwand möglich beziehungsweise unproblematisch, wenn es sich um eine datenreduzierte Darstellung handelt, d. h. einen Bitstrom, welcher die Downmix- Signale überträgt. In diesen Bitstrom kann dann ein Feld für die Erweiterungsinformation eingefügt werden.
Eine zweite denkbare Lösung besteht darin, die Mehrkanaltonzu- satzinformationen nicht an das verwendete Audiocodierungssys-
tem zu koppeln. In diesem Fall werden die Mehrkanalerweite- rungsdaten nicht in den eigentlichen Audiodatenstrom eingekoppelt. Die Übertragung erfolgt stattdessen über einen gesonderten, aber zeitlich nicht notwendigerweise synchronisierten Zu- satzkanal, welcher z. B. ein paralleler digitaler Zusatzkanal sein kann. Eine solche Situation tritt beispielsweise dann auf, wenn die Downmixdaten, also das Audiosignal, in unreduzierter Form z. B. als PCM-Daten per AES/EBU-Datenformat, durch eine in Studios vorhandene übliche Audioverteilungsinf- rastruktur geleitet werden. Diese Infrastrukturen sind darauf ausgerichtet, Audiosignale zwischen diversen Quellen digital zu verteilen („Kreuzschienen") und/oder zu bearbeiten, beispielsweise mittels einer Klangregelung, einer Dynamikkompression, etc..
In der zweiten denkbaren Lösung, die vorstehend beschrieben worden ist, kann das Problem der zeitlichen Versetzung des Downmixaudiosignal und Mehrkanalzusatzinformationen im Empfänger auftreten, da beide Signale unterschiedliche, nicht syn- chronisierte Datenpfade durchlaufen. Ein zeitlicher Versatz zwischen Downmixsignal und Zusatzinformation führt jedoch zu einer Verschlechterung der Klangqualität des rekonstruierten Mehrkanalsignals, da dann auf Wiedergabeseite ein Audiosignal mit Mehrkanalerweiterungsdaten verarbeitet wird, die eigent- lieh nicht zu dem aktuellen Audiosignal gehören, sondern zu einem früheren oder späteren Abschnitt beziehungsweise Block des Audiosignals.
Da die Größenordnung der zeitlichen Verschiebung nicht mehr aus dem empfangenen Audiosignal und den Zusatzinformationen ermittelbar ist, ist eine zeitlich korrekte Rekonstruktion und Zuordnung des Mehrkanalsignals im Empfänger nicht gewährleistet, was zu den Qualitätseinbußen führen wird.
Ein weiteres Beispiel für diese Situation besteht dann, wenn ein bereits laufendes 2-kanaliges Übertragungssystem auf eine Multikanal-Übertragung erweitert werden soll, wenn z. B. an einen Empfänger für digitales Radio gedacht wird. Hie ist es oft der Fall, dass die Decodierung des Downmixsignals mittels
eines in dem Empfänger bereits vorhandenen Audiodecodierers, also zum Beispiel eines Stereo-Audiodecodierers nach dem MPEG- 4-Standard, geschieht. Die Verzögerungszeit dieses Audiodecodierers ist nicht immer bekannt beziehungsweise kann nicht im- mer mit Sicherheit vorausgesagt werden, und zwar aufgrund der systemimmanenten Datenkompression von Audiosignalen. Daher kann die Verzögerungszeit eines solchen Audio-Decodierers auch nicht zuverlässig ausgeglichen werden.
Im Extremfall kann das Audiosignal den Mehrkanal- Audiodecodierer sogar über eine Übertragungskette erreichen, die analoge Teile enthält. Hierbei wird an einem Punkt in der Übertragung eine Digital-/Analog-Umsetzung vorgenommen, welche nach einer weiteren Speicherung/Übertragung wieder von einer Analog-/Digital-Umsetzung gefolgt wird. Auch hier sind zunächst keinerlei Anhaltspunkte verfügbar, wie ein passender Verzögerungsausgleich des Downmixsignals relativ zu den Mehrkanalzusatzdaten durchgeführt werden kann. Wenn die Abtastfrequenz für die Analog-/Digital-Wandlung und die Digital- /Analog-Wandlung leicht voneinander abweichen, so entsteht sogar eine langsame zeitliche Drift der notwendigen Ausgleichsverzögerung entsprechend dem Verhältnis der beiden Abtastraten zueinander.
Das deutsche Patent DE 10 2004 046 746 B4 offenbart ein Verfahren und eine Vorrichtung zum Synchronisieren von Zusatzdaten und Basisdaten. Ein Benutzer stellt auf der Basis seiner Stereodaten einen Fingerabdruck zur Verfügung. Ein Erweiterungsdaten-Server identifiziert das Stereosignal auf der Basis des erhaltenen Fingerabdrucks und greift auf eine Datenbank zu, um die Erweiterungsdaten für dieses Stereosignal wieder zu gewinnen. Insbesondere identifiziert der Server ein ideales Stereosignal, das mit dem beim Benutzer vorhandenen Stereosignal korrespondiert und erzeugt zwei Testfingerabdrücke des zu den Erweiterungsdaten gehörigen idealen Audiosignals. Diese beiden Testfingerabdrücke werden dann zum Client geliefert, der daraus einen Stauchungs-/Dehnungsfaktor und einen Referenzversatz ermittelt, wobei basierend auf dem Referenzversatz die Zusatzkanäle gedehnt/gestaucht und am Anfang und am Ende
abgeschnitten werden. Hierauf kann eine Multikanaldatei unter Verwendung der Basisdaten und der Erweiterungsdaten erzeugt werden.
Fingerabdruck-Technologien müssen allgemein gesagt charakteristisch für ein Audiosignal sein. Andererseits sollten sie auch eine ebenso stark komprimierte Darstellung eines Audiosignals sein. Dies bedeutet, dass der Fingerabdruck wesentlich weniger Speicherplatz in Anspruch nehmen darf als das Audio- signal selbst, da sonst das Erzeugen eines Fingerabdrucks und das Verwenden eines Fingerabdrucks keinen Sinn machen würde.
Andererseits sollte ein Fingerabdruck den zeitlichen Verlauf eines Audiosignals wiedergeben, um zu Synchronisationszwecken einerseits, aber auch zu Identifikationszwecken andererseits geeignet zu sein. Insbesondere im Hinblick auf Identifikati- ons- bzw. Charakterisierungszwecke existiert oft die Situation, dass ein Audiosignal, wie beispielsweise eine Rundfunksendung, ein Audiostück nicht vollständig abspielt, sondern zu einem bestimmten Zeitpunkt innerhalb des Stücks zu senden beginnt und möglicherweise sogar bereits bevor das Stück beendet ist, mit dem Senden aufhört. Der Fingerabdruck muss allerdings nicht dekomprimierbar sein, da die Fingerabdruck-Erzeugung als eine besonders stark verlustbehaftete Kompression angesehen werden kann.
Da Fingerabdruckinformationen Zusatzinformationen sind, sollen sie, wie gesagt, eine möglichst komprimierte aber dennoch charakteristische Darstellung sein. Für die komprimierte Darstel- lung spricht ferner, dass je komprimierter die Darstellung ist, umso schneller und besser handhabbar jegliche Korrelationen ablaufen, also Berechnungsverfahren, bei denen ein Fingerabdruck involviert ist, z.B. zum Synchronisieren oder Charakterisieren eines Audiosignals.
Die Aufgabe der vorliegenden Erfindung besteht darin, ein effizientes Fingerabdruckkonzept zu schaffen.
Diese Aufgabe wird durch eine Vorrichtung zum Berechnen eines Fingerabdrucks eines Äudiosignals gemäß Patentanspruch 1, ein Verfahren zum Berechnen eines Fingerabdrucks eines Audiosignals gemäß Patentanspruch 15, eine Vorrichtung zum Synchroni- sieren gemäß Patentanspruch 11, ein Verfahren zum Synchronisieren gemäß Patentanspruch 16, eine Vorrichtung zum Charakterisieren eines Test-Audiosignals gemäß Patentanspruch 14 oder ein Verfahren zum Charakterisieren eines Test-Audiosignals nach Patentanspruch 17 oder ein Computer-Programm gemäß Pa- tentanspruch 18 gelöst.
Der vorliegenden Erfindung liegt die Erkenntnis zugrunde, dass ein gut komprimierender Fingerabdruck durch eine Blockverarbeitung eines Audiosignals erhalten wird, dass also pro Block des Audiosignals ein Fingerabdruckwert abgeleitet wird. Ferner hat sich herausgestellt, dass ein Verlauf dieses Fingerabdruckwertes von Block zu Block besonders charakteristisch für das Audiosignalist. Daher wird im Sinne einer Differenzcodierung ein Vergleich aufeinander folgender Fingerabdruckwerte für aufeinander folgende Blöcke vorgenommen, um dann lediglich die Änderung binär zu charakterisieren. Ist der erste Fingerabdruckwert größer als der zweite Fingerabdruckwert, so wird ein erster binärer Wert zugewiesen, während dann, wenn der zweite Fingerabdruckwert größer als der erste Fingerabdruck- wert ist, ein anderer zweiter binärer Wert zugewiesen wird. Diese Folge von binären Werten wird als Fingerabdruck für das Audiosignal ausgegeben. Vorzugsweise wird diese Änderung durch nur ein einziges Bit quantisiert. Durch diese 1-Bit- Quantisierung wird pro Block des Audiosignals lediglich ein einziges Bit an Fingerabdruckinformationen geliefert, und das Audiosignal wird durch eine einfache Bit-Sequenz dargestellt, mit der eine schnelle, effiziente und überraschend genaue Korrelation mit einer entsprechenden Test-Bit-Sequenz durchgeführt werden kann.
Audiosignale haben die Eigenschaft, dass sich von Block zu Block die Charakteristika nicht so stark ändern, sodass eine volle, z.B. 8-Bit-Quantisierung oder 16-Bit-Quantisierung des Fingerabdruckwerts nicht unbedingt erforderlich ist. Ferner
haben Audiosignale die Eigenschaft, dass eine Änderung des Fingerabdruckwertes von einem Block zum nächsten sehr aussagekräftig für das Audiosignal ist. Durch die bevorzugte 1-Bit- Quantisierung wird diese Änderung von einem Block zum nächsten stark betont. So haben Audiosignale insbesondere die Eigenschaft, dass sich der Fingerabdruckwert von einem Block zum nächsten nicht besonders stark ändert. In dieser zwar kleinen Änderung steckt jedoch die besonders zu Fingerabdruck- Verarbeitungszwecken erforderliche Charakterisierungsinforma- tion für das Audiosignal, die durch die erfindungsgemäße 1- Bit-Quantisierung wirkungsvoll ausgenutzt wird.
Insbesondere dann, wenn der Fingerabdruckwert ein energieabhängiger oder leistungsabhängiger Wert ist, sind Änderungen von einem Block zum nächsten relativ klein, wobei jedoch insbesondere dann, wenn Blöcke in dem Bereich kleiner 5.000 Abtastwerte und insbesondere kleiner als 2.000 Abtastwerte und Blöcke größer als 500 Abtastwerte gebildet werden, die Änderung des energieabhängigen oder leistungsabhängigen Werts von einem Block zum anderen besonders charakteristisch für das Audiosignal.
Besonders günstig lässt sich der erfindungsgemäße Fingerabdruck für die Synchronisation von Mehrkanalerweiterungsdaten mit einem Audiosignal einsetzen, wobei eine Synchronisation mittels einer Block-basierten Fingerabdruck-Technologie effizient und zuverlässig erreicht wird.
Es hat sich herausgestellt, dass blockweise berechnete Finge- rabdrücke ein gutes und effizientes Charakteristikum für ein Audiosignal darstellen. Um jedoch die Synchronisation auf eine Ebene zu bringen, die kleiner als eine Blockdauer ist, wird es bevorzugt, das Audiosignal mit einer Blockeinteilungsinformation zu versehen, die bei einer Synchronisierung detektiert und zur Fingerabdruckberechnung einsetzbar ist.
Das Audiosignal umfasst vorzugsweise eine Blockeinteilungsinformation, die zum Zeitpunkt des Synchronisierens verwendet werden kann. Damit wird sicher gestellt, dass die Fingerabdrü-
cke, die beim Synchronisieren von dem Audiosignal abgeleitet werden, auf der selben Blockeinteilung beziehungsweise Block- rasterung basieren wie Fingerabdrücke des Audiosignals, die den Mehrkanalerweiterungsdaten zugeordnet sind. Insbesondere umfassen die Mehrkanalerweiterungsdaten eine Folge von Referenz-Audiosignal-Fingerabdruckinformationen. Diese Referenz- Audiosignal-Fingerabdruckinformationen liefern eine im Mehrka- nalerweiterungsstrom enthaltene Zuordnung zwischen einem Block von Mehrkanalerweiterungsdaten und dem Abschnitt beziehungs- weise Block des Audiosignals, zu dem die Mehrkanalerweiterungsdaten gehören.
Zur Synchronisation werden aus den Mehrkanalerweiterungsdaten die Referenz-Audiosignal-Fingerabdrücke extrahiert und mit den vom Synchronisierer berechneten Test-Audio-Signal- Fingerabdrücken korreliert. Der Korrelator muss lediglich eine Block-Korrelation erreichen, da aufgrund der Verwendung der Blockeinteilungsinformation die Blockrasterung, die den beiden Folgen von Fingerabdrücken zugrunde liegt, bereits identisch ist.
Damit kann bei diesem Ausführungsbeispiel trotz der Tatsache, dass lediglich Fingerabdruckfolgen auf Blockniveau korreliert werden müssen, eine nahezu Sample-genaue Synchronisation der Mehrkanalerweiterungsdaten mit dem Audiosignal erreicht werden.
Die Blockeinteilungsinformation, die in dem Audiosignal enthalten ist, kann als explizite Seiteninformation z. B. in ei- nem Header des Audiosignals angegeben sein. Alternativ kann auch dann, wenn eine digitale, jedoch unkomprimierte Übertragung vorhanden ist, diese Blockeinteilungsinformation auch in einem Sample enthalten sein, der z. B. das erste Sample eines Blocks war, der gebildet wurde, um die Referenzaudiosignal- Fingerabdrücke zu berechnen, die in den Mehrkanalerweiterungsdaten enthalten sind. Alternativ oder zusätzlich kann die Blockeinteilungsinformation auch direkt in das Audiosignal selbst, z. B. mittels einer Wasserzeichen-Einbettung, eingebracht werden. Hierfür eignet sich besonders eine Pseudo-
rausch-Sequenz, es können jedoch auch andere Arten und Weisen von Wasserzeicheneinbettungen verwendet werden, um eine Blockeinteilungsinformation in das Audiosignal einzubringen. Vorteil dieser Wasserzeichenimplementierung ist, dass auch belie- bige Analog/Digital- oder Digital/Analog-Wandlungen unkritisch sind. Ferner existieren auch gegenüber der Datenkompression robuste Wasserzeichen, die sogar eine Kompressi- on/Dekompression beziehungsweise sogar Tandem-Codierungsstufen überstehen werden und als zuverlässige Blockeinteilungsinfor- mation zu Synchronisationszwecken eingesetzt werden können.
Darüber hinaus wird es bevorzugt, in den Datenstrom der Mehr- kanalerweiterungsdaten die Referenz-Audiosignal- Fingerabdruckinformationen direkt, blockweise einzubetten. Bei diesem Ausführungsbeispiel wird das Auffinden eines geeigneten Zeitoffsets unter Benutzung eines Fingerabdrucks mit einem nicht getrennt von den Mehrkanalerweiterungsdaten abgelegten Daten-Fingerabdruck erreicht. Stattdessen wird zu jedem Block der Mehrkanalerweiterungsdaten in diesem Block selbst der Fin- gerabdruck eingebettet. Alternativ können die Referenz- Audiosignal-Fingerabdruckinformationen, den Mehrkanal- Erweiterungsdaten zugeordnet sein, jedoch aus einer separaten Quelle stammen.
Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend bezugnehmend auf die beiliegenden Zeichnungen detailliert erläutert. Es zeigen:
Fig. 1 ein Blockschaltbild einer Vorrichtung zum Verarbeiten des Audiosignals, um ein synchronisierbares Ausgangssignal mit Mehrkanalerweiterungsdaten zu schaffen, gemäß einem Ausführungsbeispiel der Erfindung;
Fig. 2 eine detaillierte Darstellung des Fingerabdruck- Berechners von Fig. 1; und
Fig. 3a ein Blockschaltbild einer Vorrichtung zum Synchronisieren gemäß einem Ausführungsbeispiel der Erfindung;
Fig. 3b eine detailliertere Darstellung- des Ausgleichers von Fig. 3a;
Fig. 4a eine schematische Darstellung eines Audiosignals mit einer Blockeinteilungsinformation;
Fig. 4b eine schematische Darstellung von Mehrkanalerweite- rungsdaten mit blockweise eingebetteten Fingerabdrücken;
Fig. 5 eine schematische Darstellung eines Wasserzeichen- Einbetters zum Erzeugen eines Audiosignals mit einem Wasserzeichen;
Fig. 6 eine schematische Darstellung eines Wasserzeichen- Extraktors zur Extraktion der Blockeinteilungsinformation;
Fig. 7 eine schematische Darstellung eines Ergebnisdia- gramms, wie es nach einer Korrelation über z. B. 30
Blöcke der Test-Blockeinteilung erscheint;
Fig. 8 ein Ablaufdiagraπun zur Veranschaulichung verschiedener Fingerabdruck-Berechnungsmöglichkeiten;
Fig. 9 ein Mehrkanal-Codierer-Szenario mit einer erfindungsgemäßen Vorrichtung zum Verarbeiten;
Fig. 10 ein Mehrkanal-Decodierer-Szenario mit einem erfin- dungsgemäßen Synchronisierer;
Fig. IIa eine detailliertere Darstellung des Mehrkanalerweite- rungsdatenberechners von Fig. 9; und
Fig. IIb eine detailliertere Darstellung eines Blocks mit Mehrkanalerweiterungsdaten, wie er durch die in Fig. IIa gezeigte Anordnung erzeugbar ist.
Fig. 1 zeigt ein Schematisehes Diagramm einer Vorrichtung zum Verarbeiten eines Audiosignals, wobei das Audiosignal bei 100 mit einer Blockeinteilungsinformation gezeigt ist, während das Audiosignal 102 bei keine Blockeinteilungsinformationen umfas- sen kann. Die Vorrichtung zum Verarbeiten eines Audiosignals von Fig. 1, die in einem Encodierer-Szenario, auf das noch bezugnehmend auf Fig. 9 eingegangen wird, einsetzbar ist, um- fasst einen Fingerabdruck-Berechner 104 zum Berechnen eines Fingerabdrucks pro Block des Audiosignals für eine Mehrzahl von aufeinander folgenden Blöcken, um eine Folge von Referenz- Audiosignal-Fingerabdruckinformationen zu erhalten. Der Fingerabdruck-Berechner ist ausgebildet, um eine vorbestimmte Blockeinteilungsinformation 106 zu verwenden. Die vorbestimmte Blockeinteilungsinformation 106 kann beispielsweise durch ei- nen Blockdetektor 108 aus dem Audiosignal 100 mit Blockeinteilungsinformationen detektiert werden. Sobald die Blockeinteilungsinformation 106 detektiert ist, ist der Fingerabdruck- Berechner 104 in der Lage, aus dem Audiosignal 100 die Folge von Referenz-Fingerabdrucken zu berechnen.
Erhält der Fingerabdruck-Berechner 104 jedoch ein Audiosignal 102 ohne Blockeinteilungsinformationen, so wählt der Fingerabdruck-Berechner 104 irgendeine Blockeinteilung und führt eine allererste Blockeinteilung durch. Diese Blockeinteilung wird über eine Blockeinteilungsinformation 110 einem Blockeintei- lungsinformationseinbetter 112 signalisiert, der ausgebildet ist, um in das Audiosignal 102 ohne Blockeinteilungsinformationen die Blockeinteilungsinformationen 110 einzubetten. Aus- gangsseitig liefert der Blockeinteilungsinformationseinbetter, somit ein Audiosignal 114 mit Blockeinteilungsinformationen, wobei dieses Audiosignal über eine Ausgangsschnittstelle 116 ausgegeben werden kann oder unabhängig von der Ausgabe über die Ausgangsschnittstelle 116 separat gespeichert oder über einen anderen Weg ausgegeben werden kann, wie es bei 118 sche- matisch dargestellt ist.
Der Fingerabdruck-Berechner 104 ist ausgebildet, um eine Folge von Referenz-Audiosignal-Fingerabdruck-Informationen 120 zu berechnen. Diese Folge von Referenz-Audiosignal-Fingerabdruck-
Information wird einem Fingerabdruck-Informationseinbetter 122 zugeführt. Der Fingerabdruck-Informationseinbetter bettet die Referenz-Audiosignal-Fingerabdruck-Informationen 120 in Mehr- kanalerweiterungsdaten 124 ein, die separat bereitgestellt werden können, oder die auch direkt von einem Mehrkanalerwei- terungsdatenberechner 126 berechnet werden können, der ein- gangsseitig ein Mehrkanalaudiosignal 128 empfängt. Ausgangs- seitig liefert der Fingerabdruckinformationseinbetter 122 somit Mehrkanalerweiterungsdaten mit zugeordneten Referenz- Audiosignal-Fingerabdruckinformationen, wobei diese Daten mit 130 bezeichnet sind. Der Fingerabdruckinformationseinbetter 122 ist ausgebildet, um die Referenz-Audiosignal- Fingerabdruckinformationen direkt gewissermaßen auf Blockebene in die Mehrkanalerweiterungsdaten einzubetten. Alternativ oder zusätzlich wird der Fingerabdruckinformationseinbetter 122 auch die Folge von Referenz-Audiosignal- Fingerabdruckinformationen anhand der Zuordnung zu einem Block von Multikanalerweiterungsdaten speichern beziehungsweise bereitstellen, wobei dieser Block der Multikanalerweiterungsda- ten zusammen mit einem Block des Audiosignals eine möglichst gute Approximation eines Multikanalaudiosignals beziehungsweise des Mehrkanalaudiosignals 128 darstellt.
Die Ausgangsschnittstelle 116 ist ausgebildet, um ein Aus- gangssignal 132 auszugeben, das die Folge von Referenz- Audiosignal-Fingerabdruck-Informationen und die Mehrkanalerweiterungsdaten in eindeutiger Zuordnung, wie beispielsweise innerhalb eines eingebetteten Datenstroms, umfasst. Alternativ kann das Ausgangssignal auch eine Folge von Blöcken von Mehr- kanalerweiterungsdaten ohne Referenz-Audiosignal- Fingerabdruck-Informationen sein. Die Fingerabdruckinformationen werden dann in einer eigenen Folge von Fingerabdruckinformationen geliefert, wobei beispielsweise jeder Fingerabdruck über eine fortlaufende Blocknummer mit einem Block von Mehrka- nalerweiterungsdaten „verbunden" ist. Alternative Zuordnungen von Fingerabdruckdaten zu Blöcken, wie beispielsweise über eine implizite Signalisierung einer Reihenfolge etc. sind ebenfalls verwendbar.
Das Ausgangssignal 132 kann ferner auch ein Audiosignal mit Blockeinteilungsinformationen umfassen. Bei speziellen Anwendungsfällen, wie beispielsweise beim Rundfunk, wird das Audiosignal mit Blockeinteilungsinformationen jedoch einen separa- ten Weg 118 gehen.
Fig. 2 zeigt eine detailliertere Darstellung des Fingerabdruck-Berechners 104. Bei dem in Fig. 2 gezeigten Ausführungsbeispiel umfasst der Fingerabdruck-Berechner 104 eine Block- bildungseinrichtung 104a, einen nachgeschalteten Fingerabdruckwert-Berechner 104b und einen Fingerabdrucknachverarbei- ter 104c, um eine Folge von Referenz-Audiosignal- Fingerabdruck-Informationen 120 zu liefern. Die Blockbildungseinrichtung 104a ist ausgebildet, um dann, wenn sie die gewis- sermaßen erste Blockbildung durchführt, die Blockeinteilungsinformationen zur Speicherung/Einbettung 110 zu liefern. Hat das Audiosignal jedoch bereits eine Blockeinteilungsinformation, so wird die Blockbildungseinrichtung 104a steuerbar sein, um abhängig von der vorbestimmten Blockeinteilungsinformation 106 eine Blockbildung durchzuführen.
Unabhängig von der Verwendung von Blockeinteilungsinformationen wird auch ein besonders guter, charakteristischer und effizienter Fingerabdruck durch eine Vorrichtung zur Berechnung eines Fingerabdrucks eines Audiosignals, wie sie z.B. in Figur 2 dargestellt ist, erreicht. Die Blockbildungseinrichtung 104 stellt eine Einrichtung zum Einteilen des Audiosignals in aufeinanderfolgende Blöcke von Abtastwerten dar. Ferner ist die Fingerabdruckwertberechnung 104b als Einrichtung wirksam, um einen ersten Fingerabdruckwert für einen ersten Block der aufeinanderfolgenden Blöcke und einen zweiten Fingerabdruckwert für einen zweiten Block der aufeinanderfolgenden Blöcke zu berechnen.
Der Fingerabdruck-Korrelator 312 von Figur 3a stellt eine Einrichtung zum Vergleichen, wie sie bei 806 in Figur 8 dargestellt ist, dar, wobei der erste Fingerabdruckwert mit dem zweiten Fingerabdruckwert verglichen wird. Eine bevorzugte Implementierung der Einrichtung 806 zum Vergleichen besteht in
der Differenzbildung, wie sie anhand von Figur 8 noch beschrieben wird, da dann anhand des Vorzeichens des Differenzergebnisses festgestellt werden kann, ob der erste Fingerabdruckwert größer oder kleiner als der zweite Fingerabdruckwert war.
Der Fingerabdrucknachverarbeiter 104c von Figur 2 ist erfindungsgemäß ausgebildet, um vorzugsweise eine 1-Bit- Quantisierung 814 durchzuführen bzw. allgemein einen ersten binären Wert zuzuweisen, wenn der erste Fingerabdruckwert größer als der zweite Fingerabdruckwert ist, oder um einen zweiten unterschiedlichen binären Wert zuzuweisen, wenn der erste Fingerabdruckwert kleiner als der zweite Fingerabdruckwert ist.
Schließlich umfasst die erfindungsgemäße Vorrichtung zum Berechnen eines Fingerabdrucks noch eine Einrichtung zum Ausgeben von Informationen über eine Folge von binären Werten als Fingerabdruck für das Audiosignal, wobei die Einrichtung bei- spielsweise in Form der Ausgangsschnittstelle 116 von Figur 1 ausgebildet sein kann oder als irgendeiner anderer Datenstrom bzw. Bit-Strom-Schreiber fungieren kann.
Vorzugsweise sind die beiden binären Werte, also der erste bi- näre Wert und der zweite unterschiedliche binäre Wert komplementär zueinander. Bei dem in Figur 8 gezeigten bevorzugten 1- Bit-Quantisierungsbeispiel (Block 108, 114) ist der erste binäre Wert z.B. eine 0 oder eine 1 und ist der zweite binäre Wert ebenfalls eine 0 oder eine 1, wobei der zweite Wert zum ersten Wert komplementär ist. Vorzugsweise wird eine 1-Bit- Quantisierung durchgeführt, wobei pro Block des Audiosignals genau ein Bit erzeugt wird.
Die Folge von Bits, wie sie durch den Block 814 erzeugt wird, ist dann der Test-Fingerabdruck bzw. der Referenz- Fingerabdruck.
Die Blockeinteilungseinrichtung 104a von Figur 2 ist ausgebildet, um entweder aufeinanderfolgende angrenzende Blöcke zu
bilden, die sich überlappen, oder um Blöcke zu bilden, die sich überlappen, die beispielsweise eine 50%ige Überlappung haben. Ferner ist die Blockbildungseinrichtung 104a ausgebildet, um Blöcke des Audiosignals mit zeitlichen Abtastwerten zu liefern, die wenigstens 500 Abtastwerte oder mehr haben, und deren Länge vorzugsweise kleiner als 5.000 Abtastwerte ist. Besonders bevorzugt werden Blöcke im Bereich zwischen 1.000 und 2.500 Abtastwerten genommen, wobei insbesondere dann, wenn Frequenz-basierte Maßnahmen zum Fingerabdruckwertberechnen verwendet werden, z.B. 1024 Abtastwerte oder 2048 Abtastwerte bevorzugt werden. Je länger die Blöcke gewählt werden, umso geringer wird der Bit-Bedarf an Fingerabdruckinformationen pro Audiosignal. Allerdings nimmt mit zunehmender Blocklänge die Aussagefähigkeit des Fingerabdrucks ab, weshalb die vorstehend beschriebenen Blocklängen bevorzugt werden, die sich auf eine Audio-Abtastfrequenz von z.B. 44,1 KHz beziehen können, wobei jedoch entsprechende Blocklängen für andere Abtastraten ebenfalls vernünftige Ergebnisse liefern, solange ein Block eine zeitliche Länge des Audiosignals von etwa 10 ms bis etwa 100 ms umfasst.
Der erfindungsgemäße Fingerabdruck kann vorzugsweise zum Synchronisieren verwendet werden, wie es anhand von Figur 3 beschrieben worden ist, wobei bereits ohne Blockeinteilungsin- formationen eine Genauigkeit in der Größenordnung einer Blocklänge erhalten wird, die durch Hinzunahme der Blockeinteilungsinformationen auf den Bereich von 1 Sample erhöht werden kann. Bei Anwendungsfällen, bei denen jedoch eine Block-genaue Synchronisation ausreichend ist, kann auch bereits ohne Block- einteilungsinformation ein zufriedenstellendes Ergebnis erhalten werden. Auch bei Fingerabdruck-Anwendungen zum Charakterisieren bzw. Identifizieren eines Audiosignals muss nicht unbedingt eine Sample-genaue Synchronisation zwischen Test- Fingerabdruck und Referenz-Fingerabdruck erhalten werden.
Bei einem Ausführungsbeispiel der vorliegenden Erfindung ist das Audiosignal mit einem Wasserzeichen versehen, wie es in Fig. 4a gezeigt ist. Insbesondere zeigt Fig. 4a ein Audiosignal mit einer Folge von Samples, wobei eine Blockeinteilung in
Blöcke i, i+1, i+2 schematisch angedeutet ist. Allerdings um- fasst das Audiosignal selbst bei dem in Fig. 4a gezeigten Ausführungsbeispiel keine solche explizite Blockeinteilung. Anstatt dessen ist in dem Audiosignal ein Wasserzeichen 400 der- art eingebettet, dass jedes Audiosample einen Wasserzeichenanteil umfasst. Dieser Wasserzeichenanteil ist schematisch für ein Sample 402 bei 404 angedeutet. Insbesondere ist das Wasserzeichen 400 so eingebettet, dass anhand des Wasserzeichens die Blockstruktur detektierbar ist. Zu diesem Zweck ist das Wasserzeichen zum Beispiel eine bekannte periodische Pseudo- rauschsequenz, wie es in Fig. 5 bei 500 gezeigt ist. Diese bekannte Pseudorauschsequenz hat eine Periodendauer, die gleich der Blocklänge ist oder die größer als eine Blocklänge ist, wobei jedoch eine Periodendauer gleich der Blocklänge oder in der Größenordnung der Blocklänge bevorzugt wird.
Zur Wasserzeicheneinbettung wird, wie es in Fig. 5 gezeigt ist, zunächst eine Blockbildung 502 des Audiosignals vorgenommen. Dann wird ein Block des Audiosignals mittels einer Zeit- /Frequenzumsetzung 504 in den Frequenzbereich umgesetzt. Analog hierzu wird auch die bekannte Pseudorauschsequenz 500 über eine Zeit-/Frequenzumsetzung 506 in den Frequenzbereich transformiert. Hierauf berechnet ein psychoakustisches Modul 508 die psychoakustische Maskierungsschwelle des Audiosignal- blocks, wobei, wie es in der Psychoakustik bekannt ist, ein Signal in einem Band dann im Audiosignal maskiert wird, also unhörbar ist, wenn die Energie des Signals in dem Band unterhalb des Werts der Maskierungsschwelle für dieses Band ist. Aufgrund dieser Information wird eine spektrale Gewichtung 510 zur spektralen Darstellung der Pseudorauschsequenz vorgenommen. Die spektralgewichtete Pseudorauschsequenz hat dann, vor einem Kombinierer 512, ein Spektrum, das einen Verlauf hat, der der psychoakustischen Maskierungsschwelle entspricht. Dieses Signal wird dann Spektralwert-weise mit dem Spektrum des Audiosignals in dem Kombinierer 512 kombiniert. Am Ausgang des Kombinierers 512 existiert somit ein Audiosignalblock mit eingebrachtem Wasserzeichen, wobei das Wasserzeichen jedoch durch das Audiosignal maskiert wird. Durch einen Frequenz-/Zeit- Umsetzer 514 wird der Block des Audiosignals in den Zeitbe-
reich zurücktransformiert und es existiert das in Fig. 4a gezeigte Audiosignal, das nun jedoch ein Wasserzeichen hat, das eine Blockeinteilungsinformation dargestellt.
Es sei darauf hingewiesen, dass viele verschiedene Wasserzeicheneinbettungsstrategien existieren. So kann die spektrale Gewichtung 510 beispielsweise durch eine duale Operation im Zeitbereich vorgenommen werden, so dass eine Zeit- /Frequenzumsetzung 506 nicht nötig ist.
Des weiteren könnte das spektralgewichtete Wasserzeichen auch vor seiner Kombination mit dem Audiosignal in den Zeitbereich transformiert werden, so dass die Kombination 512 im Zeitbereich stattfinden würde, wobei in diesem Fall eine Zeit- /Frequenzumsetzung 504 nicht unbedingt nötig sein würde, sofern die Maskierungsschwelle ohne Transformation berechnet werden kann. Selbstverständlich kann auch eine unabhängig vom Audiosignal beziehungsweise von einer Transformationslänge des Audiosignals verwendete Berechnung der Maskierungsschwelle vorgenommen werden.
Vorzugsweise ist die Länge der bekannten Pseudorauschsequenz gleich der Länge eines Blocks. Dann funktioniert eine Korrelation zur Wasserzeichenextraktion besonders effizient und über- sichtlich. Allerdings können auch längere Pseudorauschsequen- zen verwendet werden, so lange eine Periodendauer der Pseudorauschsequenz gleich oder größer als die Blocklänge ist. Ferner kann auch ein Wasserzeichen verwendet werden, das kein weißes Spektrum hat, sondern das beispielsweise derart gestal- tet ist, dass es lediglich spektrale Anteile in bestimmten Frequenzbändern hat, wie beispielsweise dem unteren Spektralband oder einem mittleren Spektralband. Hierdurch kann gesteuert werden, dass das Wasserzeichen nicht z. B. nur in die oberen Bänder eingebracht wird, die z. B. durch eine „Spectral Band Replication"-Technik, wie sie vom MPEG-4-Standard bekannt ist, bei einer Datenraten sparenden Übertragung eliminiert beziehungsweise parametrisiert werden.
Alternativ zur Verwendung eines Wasserzeichens kann auch eine Blockeinteilung vorgenommen werden, wenn z. B. ein digitaler Kanal existiert, bei dem jeder Block des Audiosignals von Fig. 4 dahingehend markiert werden kann, dass z. B. der erste Sam- ple-Wert eines Blocks eine Flag erhält. Alternativ kann auch z. B. in einem Header eines Audiosignals eine Blockeinteilung signalisiert werden, die zur Berechnung des Fingerabdrucks verwendet wird, und die auch zur Berechnung der Mehrkanaler- weiterungsdaten aus den ursprünglichen Mehrkanalaudiokanälen verwendet worden ist.
Um das Szenario der Berechnung der Mehrkanalerweiterungsdaten zu veranschaulichen, wird nachfolgend auf Fig. 9 Bezug genommen. Fig. 9 zeigt ein Encodierer-seitiges Szenario, wie es zum Reduzieren der Datenrate von Multikanal-Audiosignalen verwendet wird. Beispielhaft ist ein 5.1-Szenario gezeigt, wobei jedoch auch ein 7.1-, 3.0- oder ein alternatives Szenario eingesetzt werden kann. Auch für das Spatial-Audio-Object-Coding, das ebenfalls bekannt ist, und bei dem Audio-Objekte statt Au- diokanäle codiert werden, bei dem die Multikanalerweiterungs- daten somit eigentlich Daten sind, mit denen Objekte rekonstruierbar sind, wird eine prinzipiell zweigliedrige Struktur verwendet, die in Fig. 9 angedeutet ist. Das Mehrkanalaudiosignal mit den mehreren Audiokanälen beziehungsweise Audioob- jekten wird einem Abwärtsmischer 900 zugeführt, der ein Down- mix-Audiosignal liefert, wobei das Audiosignal zum Beispiel ein Mono-Downmix oder ein Stereo-Downmix ist. Ferner wird eine Mehrkanalerweiterungsdatenberechnung in einem entsprechenden Mehrkanalerweiterungsdatenberechner 902 vorgenommen. Dort wer- den die Mehrkanalerweiterungsdaten berechnet, z. B. gemäß der BCC-Technik oder gemäß dem Standard, der unter dem Namen MPEG- Surround bekannt ist. Auch eine Erweiterungsdatenberechnung für Audioobjekte, die auch als Mehrkanalerweiterungsdaten bezeichnet werden, kann in dem Audiosignal 102 stattfinden. Die in Fig. 1 gezeigte Vorrichtung zum Verarbeiten des Audiosignals ist diesen bekannten beiden Blöcken 900, 902 nachgeschaltet, wobei die in Fig. 9 gezeigte Vorrichtung 904 zum Verarbeiten gemäß Fig. 1 z. B. ein Audiosignal 102 ohne Blockeinteilungsinformation als Mono-Downmix oder Stereo-Downmix er-
hält und ferner die Mehrkanalerweiterungsdaten über die Leitung 124 erhält. Der Mehrkanalerweiterungsdatenberechner 126 von Fig. 1 wird somit dem Mehrkanalerweiterungsdatenberechner 902 von Fig. 9 entsprechen. Ausgangsseitig liefert die Vor- richtung 904 zum Verarbeiten z. B. ein Audiosignal 118 mit eingebetteter Blockeinteilungsinformation sowie einen Datenstrom mit Mehrkanalerweiterungsdaten samt zugeordneten oder eingebetteten Referenz-Audiosignal-Fingerabdruck-
Informationen, wie es in Fig. 1 bei 132 dargestellt ist.
Fig. IIa zeigt eine detailliertere Darstellung des Mehrkana- lerweiterungsdatenberechners 902. Insbesondere wird zunächst eine Blockbildung in jeweiligen Blockbildungseinrichtungen 910 vorgenommen, um für den ursprünglichen Kanal des Mehrkanalau- diosignals einen Block zu erhalten. Hierauf wird pro Block eine Zeit-/Frequenzumsetzung in einem Zeit-/Frequenzumsetzer 912 vorgenommen. Der Zeit-/Frequenzumsetzer kann eine Filterbank zur Durchführung einer Subbandfilterung, eine allgemeine Transformation oder insbesondere eine Transformation in Form einer FFT sein. Alternative Transformationen sind auch als MDCT, etc. bekannt. Hierauf wird im Mehrkanalerweiterungsda- tenberechner pro Band, Block und beispielsweise auch pro Kanal ein eigener Korrelationsparameter zwischen dem Kanal und einem Referenzkanal, der mit ICC bezeichnet ist, berechnet. Ferner wird auch pro Band und Block und Kanal ein eigener Energieparameter ICLD berechnet, wobei dies in einem Parameterberechner 914 vorgenommen wird. Es sei darauf hingewiesen, dass die Blockbildungseinrichtung 910 Blockeinteilungsinformationen 106 verwendet, wenn bereits solche Blockeinteilungsinformationen existieren. Alternativ kann die Blockbildungseinrichtung 910 auch Blockeinteilungsinformationen selber festlegen, wenn die erste Blockeinteilung vorgenommen wird, und dann ausgeben und damit z. B. den Fingerabdruck-Berechner von Fig. 1 zu steuern. In Analogie zur Bezeichnung in Fig. 1 wird daher die ausgege- bene Blockeinteilungsinformation ebenfalls mit 110 bezeichnet. Generell wird sichergestellt, dass die Blockbildung zur Berechnung der Mehrkanalerweiterungsdaten abgestimmt auf die Blockbildung zur Berechnung der Fingerabdrücke von Fig. 1 vorgenommen wird. Damit wird sichergestellt, dass eine Sample-
genaue Synchronisation von Mehrkanalerweiterungsdaten zu dem Audiosignal erreichbar ist.
Die vom Parameterberechner 914 berechneten Parameterdaten wer- den einem Datenstromformatierer 916 zugeführt, der gleich dem Fingerabdruckinformationseinbetter 122 von Fig. 1 ausgebildet sein kann. Der Datenstromformatierer 916 empfängt ferner einen Fingerabdruck pro Block des Downmix-Signals, wie es bei 918 angegeben ist. Der Datenstromformatierer erzeugt dann mit dem Fingerabdruck und den empfangenen Parameterdaten 915 Mehrkanalerweiterungsdaten 130 mit eingebetteten Fingerabdruckinformationen, von denen ein Block schematisch in Fig. IIb dargestellt ist. Insbesondere sind die Fingerabdruckinformationen für diesen Block nach einem optional vorhandenen Synchronisa- tionswort 950 bei 960 eingetragen. Dann, im Anschluss an die Fingerabdruckinformation 960, folgen die Parameter 915, die der Parameterberechner 940 berechnet hat, nämlich z. B. in der in Fig. IIb gezeigten Reihenfolge, bei der zunächst die ICLD- Parameter pro Kanal und Band auftreten, denen dann die ICC- Parameter pro Kanal und Band folgen. Insbesondere ist der Kanal durch den Index von „ICLD" signalisiert, wobei ein Index „1" zum Beispiel für den linken Kanal steht, ein Indes „2" für den mittleren Kanal steht, ein Index „3" für den rechten Kanal steht, ein Index „4" für den linken hinteren Kanal (LS) steht und ein Index „5" für den rechten hinteren Kanal (RS) steht.
Daraus ergibt sich dann allgemein gesagt ein Datenstrom mit Mehrkanalerweiterungsdaten, wie er in Fig. 4b dargestellt ist, wobei immer den Mehrkanalerweiterungsdaten 124 für einen Block der Fingerabdruck des Audiosignals, also des Stereo-Downmix- Signals oder des Mono-Downmix-Signals beziehungsweise allgemein des Downmix-Signals vorangestellt ist. In einer Implementierung können die Fingerabdruckinformationen für einen Block auch in Übertragungsrichtung nach den Multikanalerweiterungs- daten oder irgendwo zwischen den Multikanalerweiterungsdaten eingefügt werden. Alternativ können die Fingerabdruckinformationen auch in einem separaten Datenstrom übertragen werden beziehungsweise in einer separaten Tabelle, die z. B. über einen expliziten Blockidentifikator mit dem Multikanalerweite-
rungsdaten in Zuordnung steht oder bei der die Zuordnung implizit gegeben ist, nämlich durch die Reihenfolge der Fingerabdrücke zu der Reihenfolge der Multikanalerweiterungsdaten für die einzelnen Blöcke. Andere Zuordnungen ohne explizite Einbettung sind ebenfalls verwendbar.
Fig. 3a zeigt eine Vorrichtung zum Synchronisieren von Mehrka- nalerweiterungsdaten mit einem Audiosignal 114. Insbesondere umfasst das Audiosignal 114 Blockeinteilungsinformationen, wie es anhand von Fig. 1 dargestellt worden ist. Darüber hinaus sind den Mehrkanalerweiterungsdaten Referenz-Audiosignal- Fingerabdruck-Informationen zugeordnet .
Das Audiosignal mit den Blockeinteilungsinformationen wird ei- nem Blockdetektor 300 zugeführt, der ausgebildet ist, um die Blockeinteilungsinformationen in dem Audiosignal zu detektie- ren, und um die detektierten Blockeinteilungsinformationen 302 einem Fingerabdruck-Berechner 304 zuzuführen. Der Fingerabdruck-Berechner 304 erhält ferner das Audiosignal, wobei hier nur mehr ein Audiosignal ohne Blockeinteilungsinformationen ausreichend wäre, wobei jedoch der Fingerabdruck-Berechner auch ausgebildet sein kann, um das Audiosignal mit Blockeinteilungsinformationen zu Fingerabdruckberechnung zu verwenden.
Der Fingerabdruck-Berechner 304 berechnet nunmehr einen Fingerabdruck pro Block des Audiosignals für eine Mehrzahl von aufeinander folgenden Blöcken, um eine Folge von Test- Audiosignal-Fingerabdrücken 306 zu erhalten. Insbesondere ist der Fingerabdruck-Berechner 304 ausgebildet, um die Blockein- teilungsinformationen 302 zu verwenden, um die Folge von Test- Audiosignal-Fingerabdrücken 306 zu berechnen.
Die erfindungsgemäße Synchronisationsvorrichtung beziehungsweise das erfindungsgemäße Synchronisationsverfahren basiert ferner auf einem Fingerabdruck-Extraktor 308 zum Extrahieren einer Folge von Referenz-Audiosignal-Fingerabdrücken 310 aus den Referenz-Audiosignal-Fingerabdruck-Informationen 120, wie sie dem Fingerabdruck-Extraktor 308 zugeführt werden.
Sowohl die Folge von Test-Fingerabdrucken 306 als auch die Folge von Referenz-Fingerabdrucken 308 werden einem Fingerab- druckkorrelator 312 zugeführt, der ausgebildet ist, um die beiden Folgen zu korrelieren. Abhängig von einem Korrelations- ergebnis 314, bei dem ein Versatzwert erhalten wird, welcher ein ganzzahliges (x) der Blocklänge (ΔD) ist, wird ein Ausgleicher 316 gesteuert, um einen zeitlichen Versatz zwischen den Mehrkanalerweiterungsdaten 132 und dem Audiosignal 114 zu reduzieren oder im besten Fall zu eliminieren. Am Aus- gang des Ausgleichers 316 werden somit sowohl das Audiosignal als auch die Mehrkanalerweiterungsdaten in synchronisierter Form ausgegeben, um einer Multikanalrekonstruktion zugeführt zu werden, wie sie bezugnehmend auf Fig. 10 erläutert wird.
In Fig. 10 ist der in Fig. 3a gezeigte Synchronisierer bei 1000 gezeigt. Der Synchronisierer 1000 enthält, wie es bezugnehmend auf Fig. 3a dargestellt worden ist, das Audiosignal 114 und die Mehrkanalerweiterungsdaten in nicht synchronisierter Form und liefert ausgangsseitig das Audiosignal und die Mehrkanalerweiterungsdaten nunmehr in synchronisierter Form einem Aufwärtsmischer 1102. Der Aufwärtsmischer 1102, der auch als „Upmix"-Block bezeichnet wird, kann nunmehr aufgrund des Audiosignals und der dazu synchronisierten Mehrkanalerweiterungsdaten rekonstruierte Mehrkanalaudiosignale L' , C , R' , LS' und RS' berechnen. Diese rekonstruierten Mehrkanalaudiosignale stellen eine Approximation an die ursprünglichen Mehrkanalaudiosignale, wie sie am Eingang des Blocks 900 in Fig. 9 dargestellt worden sind, dar. Alternativ stellen die rekonstruierten Mehrkanalaudiosignale am Ausgang des Blocks 1102 in Fig. 10 auch rekonstruierte Audioobjekte beziehungsweise an bestimmen Positionen bereits geänderte rekonstruierte Audioobjekte dar, wie es aus der Audio-Objekt-Codierung bekannt ist. Die rekonstruierten Mehrkanalaudiosignale haben nunmehr eine maximal erreichbare Audioqualität aufgrund der Tatsache, dass eine Synchronisation der Mehrkanalerweiterungsdaten mit dem Audiosignal Sample-genau erreicht worden ist.
Fig. 3b zeigt eine spezielle Implementierung des Ausgleichers 316. Der Ausgleicher 316 hat zwei Verzögerungsblöcke, von de-
nen ein Block 320 ein fester Verzögerungsblock mit maximaler Verzögerung sein kann und der zweite Block 322 ein Block mit variabler Verzögerung sein kann, der zwischen einer Verzögerung gleich Null und einer maximalen Verzögerung Dmax steuerbar ist. Die Steuerung findet auf der Basis des Korrelationsergebnisses 314 statt. Der Fingerabdruckkorrelator 312 liefert eine Korrelationsversatzsteuerung in Ganzzahligen (x) einer Blocklänge (ΔD) . Aufgrund der Tatsache, dass jedoch die Fingerabdruckberechnung selbst im Fingerabdruck-Berechner 304 basie- rend auf der im Audiosignal enthaltenen Blockeinteilungsinformation vorgenommen worden ist, wird erfindungsgemäß eine Sam- ple-genaue Synchronisation erreicht, obgleich der Fingerabdruckkorrelator lediglich eine blockbasierte Korrelation vornehmen musste. Trotz der Tatsache, dass der Fingerabdruck blockweise berechnet worden ist, also nur relativ grob den zeitlichen Verlauf des Audiosignals und entsprechend auch den zeitlichen Verlauf der Mehrkanalerweiterungsdaten wiedergibt, wird dennoch eine Sample-genaue Korrelation erreicht, allein aufgrund der Tatsache, dass die Blockeinteilung des Fingerab- druck-Berechners 304 im Synchronisierer auf die Blockeinteilung hin synchronisiert worden ist, die verwendet wurde, um die Mehrkanalerweiterungsdaten blockweise zu berechnen, und die vor allem verwendet wurde, um die Fingerabdrücke zu berechnen, die in dem Mehrkanalerweiterungsdatenstrom eingebet- tet sind, oder die mit den Mehrkanalerweiterungsdatenstrom in Zuordnung sind.
Bezüglich der Implementierung des Ausgleichers 316 sei darauf hingewiesen, dass auch zwei variable Verzögerungen verwendet werden können, so dass das Korrelationsergebnis 314 beide variablen Verzögerungsstufen steuert. Auch alternative Implementierungsmöglichkeiten innerhalb eines Ausgleichers zu Synchronisationszwecken, um zeitliche Offsets zu eliminieren, können eingesetzt werden.
Nachfolgend wird bezugnehmend auf Fig. 6 eine detaillierte Implementierung des Blockdetektors 300 von Fig. 3a dargestellt, wenn die Blockeinteilungsinformation als Wasserzeichen in das Audiosignal eingebracht ist. Der Wasserzeichen-
Extraktor in Fig. 6 kann zum Wasserzeichen-Einbetter von Fig. 5 analog aufgebaut sein, muss jedoch nicht in exakter Analogie aufgebaut sein.
Bei dem in Fig. 6 gezeigten Ausführungsbeispiel wird das Audiosignal mit Wasserzeichen einem Blockbilder 600 zugeführt, der aufeinander folgende Blöcke aus dem Audiosignal erzeugt. Ein Block wird dann einem Zeit-/Frequenz-Umsetzer 602 zugeführt, um den Block zu transformieren. Aufgrund der spektralen Darstellung des Blocks oder aufgrund einer separaten Berechnung ist ein psychoakustisches Modul 604 in der Lage, eine Maskierungsschwelle zu berechnen, um den Block des Audiosignals unter Verwendung dieser Maskierungsschwelle einer Vorfilterung in einem Vorfilter 606 zu unterziehen. Die Implementie- rung des Moduls 604 und des Vorfilters 606 dienen dazu, die Detektionsgenauigkeit für das Wasserzeichen zu erhöhen. Sie können auch weg gelassen werden, so dass der Ausgang des Zeit- /Frequenz-Umsetzers 602 direkt mit einem Korrelator 608 gekoppelt ist. Der Korrelator 608 ist ausgebildet, um die bekannte Pseudorauschsequenz 500, die bereits bei der Wasserzeicheneinbettung in Fig. 5 verwendet worden ist, nach einer Zeit- /Frequenz-Umsetzung in einem Umsetzer 502 mit einem Block des Audiosignals zu korrelieren.
Zur Blockbildung im Block 600 wird eine Test-Blockeinteilung vorgegeben, die nicht unbedingt der endgültigen Blockeinteilung entsprechen muss. Stattdessen wird nunmehr der Korrelator 608 über mehrere Blöcke hinweg, beispielsweise über zwanzig oder sogar noch mehr Blöcke hinweg eine Korrelation durchfüh- ren. Hierbei wird in dem Korrelator 608 das Spektrum der bekannten Rauschsequenz mit dem Spektrum jedes Blocks bei verschiedenen Verzögerungswerten korreliert, so dass sich nach mehreren Blöcken ein Korrelationsergebnis 610 ergibt, das beispielsweise so ausschauen könnte, wie es in Fig. 7 gezeigt ist. Eine Steuerung 612 kann das Korrelationsergebnis 610 ü- berwachen und eine Peak-Detektion durchführen. Zu diesem Zweck erkennt die Steuerung 612 einen Peak 700, der mit längerer Korrelation, also mit einer größeren Anzahl mit zur Korrelation verwendeten Blöcken immer deutlicher hervortritt. Sobald
ein Korrelationspeak 700 detektiert ist, muss lediglich noch die x-Koordinate, also der Versatz Δn ermittelt werden, bei dem sich das Korrelationsergebnis gezeigt hat. Dieser Versatz Δn ergibt bei einem Ausführungsbeispiel der vorliegenden Er- findung die Anzahl von Abtastwerten an, um die die Test- Blockeinteilung von der tatsächlich bei der Wasserzeichenbettung verwendeten Blockeinteilung abgewichen ist. Aus diesem Wissen über die Test-Blockeinteilung und das Korrelationsergebnis 700 ermittelt die Steuerung 612 nunmehr eine korrigier- te Blockeinteilung 614, z. B. gemäß der Formel, wie sie in Fig. 7 dargelegt ist. Insbesondere wird von der Test- Blockeinteilung der Versatzwert Δn subtrahiert, um die korrigierte Blockeinteilung 614 zu berechnen, die dann von dem Fingerabdruck-Berechner 304 von Fig. 3a einzuhalten ist, um die Test-Fingerabdrucke zu berechnen.
Im Hinblick auf den beispielhaften Wasserzeichen-Extraktor in Fig. 6 sei darauf hingewiesen, dass eine Extraktion auch alternativ durchgeführt werden kann, z. B. im Zeitbereich und nicht im Frequenzbereich, dass auf die Vorfilterung auch verzichtet werden kann, und dass alternative Art und Weisen eingesetzt werden können, um die Verzögerung, also den Sample- Versatzwert Δn zu berechnen. Eine alternative Möglichkeit hierzu besteht z. B. darin, verschiedene Test- Blockeinteilungen auszuprobieren und die Test-Blockeinteilung zu verwenden, bei der sich das beste Korrelationsergebnis entweder nach einer oder nach mehreren Blöcken ergibt. Als Korrelationsmaßnahme können auch nicht periodische Wasserzeichen, also nicht periodische Sequenzen eingesetzt werden, die sogar kürzer als eine Blocklänge sein können.
Bei einem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung wird somit zur Lösung des Zuordnungsproblems eine spezielle Vorgehensweise auf Senderseite und Empfangsseite bevor- zugt. Auf Senderseite kann eine Berechnung von zeitlich veränderlichen und geeigneten Fingerprint-Informationen aus dem korrespondierenden (Mono- oder Stereo-) Downmixaudiosignal vorgenommen werden. Ferner können diese Fingerprints regelmäßig als Synchronisationshilfe in den versendeten Mehrkanalzu-
satzdatenstrom eingetastet werden. Dies kann als ein Datenfeld inmitten der blockweise organisierten Spatial-Audio-Coding- Seiteninformationen erfolgen oder so, dass das Fingerprint- Signal als erste oder letzte Information des Datenblocks ge- schickt wird, um somit leicht hinzugefügt beziehungsweise herausgenommen werden zu können. Ferner kann ein Wasserzeichen, wie beispielsweise eine bekannte Rauschsequenz, in das zu versendende Audiosignal eingebettet werden. Dies dient dem Empfänger zur Ermittlung der Rahmenphase und zur Eliminierung eines rahmeninternen Versatzes.
Auf der Empfangsseite wird eine zweistufige Synchronisierung bevorzugt. In einer ersten Stufe wird das Wasserzeichen aus dem empfangenen Audiosignal extrahiert, und es wird die Posi- tion der Rauschsequenz ermittelt. Ferner können die Framegrenzen aufgrund ihrer Rauschsequenz durch die Position ermittelt und der Audiodatenstrom entsprechend unterteilt werden. In diesen Framegrenzen beziehungsweise Blockgrenzen können die charakteristischen Audiomerkmale, d. h. Fingerabdrücke oder Fingerprints über die nahezu gleichen Abschnitte errechnet werden, wie sie auch im Sender errechnet wurden, wodurch sich die Qualität des Ergebnisses bei einer späteren Korrelation erhöht. In einer zweiten Stufe werden dann zeitlich veränderliche und geeignete Fingerprintinformationen aus den korres- pondierenden Stereo-Audio-Signal oder Mono-Audio-Signal beziehungsweise allgemein gesagt, aus dem Downmix-Signal berechnet, wobei das Downmix-Signal auch mehr als zwei Kanäle haben kann, so lange die Kanäle im Downmix-Signal eine kleinere Anzahl haben als in dem ursprünglichen Audiosignal vor dem Downmix Ka- näle oder allgemein Audioobjekte sind.
Ferner können die Fingerabdrücke aus dem Mehrkanalzusatzinformationen extrahiert werden und es kann ein zeitlicher Versatz zwischen den Mehrkanalzusatzinformationen und dem empfangenen Signal über geeignete und auch über bekannte Korrelationsmethoden vorgenommen werden. Ein gesamter zeitlicher Versatz setzt sich aus der Framephase und dem Versatz zwischen Mehrka- nalzusatzinformation und empfangenem Audiosignal zusammen. Ferner können das Audiosignal und die Mehrkanalzusatzinforma-
tionen für eine anschließende Mehrkanaldecodierung durch eine nachgeschaltete, aktiv geregelte Verzögerungsausgleichsstufe synchronisiert werden.
Das Mehrkanalaudiosignal wird für die Gewinnung der Mehrkanalzusatzdaten beispielsweise in Blöcke fester Größe eingeteilt. In den jeweiligen Block wird eine dem Empfänger ebenfalls bekannte Rauschsequenz eingebettet, beziehungsweise wird allgemein ein Wasserzeichen eingebettet. Im gleichen Raster wird nun blockweise gleichzeitig oder wenigstens synchronisiert zur Gewinnung der Mehrkanalzusatzdaten ein Fingerprint berechnet, der geeignet ist, die zeitliche Struktur des Signal möglichst eindeutig zu charakterisieren.
Ein Ausführungsbeispiel hierzu ist es, den Energiegehalt des aktuellen Downmixaudiosignals des Audioblocks zu verwenden, beispielsweise in logarithmierter Form, also in einer Dezibelverwandten Darstellung. In diesem Fall ist der Fingerprint ein Maß für die zeitliche Hüllkurve des Audiosignals. Um die zu übertragende Informationsmenge zu reduzieren und die Genauigkeit des Messwerts zu steigern, kann diese Synchronisationsinformation auch als Differenz zum Energiewert des vorangegangenen Blocks mit anschließender geeigneter Entropiecodierung, wie beispielsweise einer Huffman-Codierung, einer adaptiven Skalierung und einer Quantisierung ausgedrückt werden.
Nachfolgend wird bezugnehmend auf Fig. 8 und allgemein bezugnehmend auf Fig. 2 auf bevorzugte Ausführungsbeispiele zur Berechnung eines Fingerprints eingegangen.
Nach einer Blockeinteilung in einem Blockeinteilungsschritt
800 liegt das Audiosignal in aufeinander folgenden Blöcken vor. Hierauf wird eine Fingerabdruckwertberechnung gemäß Block 104b von Fig. 2 vorgenommen, wobei der Fingerabdruckwert bei- spielsweise ein Energiewert pro Block sein kann, wie es in einem Schritt 802 dargestellt ist. Wenn das Audiosignal ein Stereoaudiosignal ist, wird eine Energieberechnung des Downmixau-
diosignals im aktuellen Block gemäß der folgenden Gleichung vorgenommen:
1152 _
"Monosumme = ^ ^left'1' "*" ^right '1J 1=0
Insbesondere steht der Signalwert Sieft(i) mit der Nummer i für einen zeitlichen Abtastwerte eines linken Kanals des Audiosignals. Sright(i) steht für den i-ten Abtastwert eines rechten Kanals des Audiosignals. Bei dem gezeigten Ausführungsbeispiel beträgt die Blocklänge 1152 Audioabtastwerte, weshalb die 1153 Audioabtastwerte (einschließlich des Abtastwerts für i = 0) sowohl vom linken als auch vom rechten Downmixkanal jeweils quadriert und aufsummiert werden. Ist das Audiosignal ein mo- nophones Audiosignal, so entfällt die Summierung. Ist das Au- diosignal ein Signal mit z. B. drei Kanälen, so werden die quadrierten Abtastwerte von drei Kanälen aufsummiert. Ferner wird es bevorzugt, vor der Berechnung die (nicht aussagekräftigen) Gleichanteile der Downmixaudiosignale zu entfernen.
In einem Schritt 804 wird nunmehr vorzugsweise eine Minimumbegrenzung der Energie zwecks einer anschließenden logarithmischen Darstellung vorgenommen. Für eine Dezibel-verwandte Bewertung der Energie wird ein minimaler Energie-Offset EOffSet beaufschlagt, damit sich im Falle der Nullenergie eine sinn- volle logarithmische Rechnung ergibt. Diese Energiemaßzahl in dB beschreibt dabei einen Zahlenbereich von 0 bis 90 (dB) bei einer Audiosignalauflösung von 16 Bit. In einem Block 804 wird somit folgende Gleichung implementiert:
E(db) = \0 * \og(EMonosumme + Eφel)
Vorzugsweise wird für eine exakte Bestimmung des zeitlichen
Versatzes zwischen den Mehrkanalzusatzinformationen und dem empfangenen Audiosignal nicht der absolute Energie- Höhekurvenwert verwendet, sondern vielmehr die Steigung bezie-
hungsweise Steilheit der Signalhüllkurve. Hierbei wird für die Korrelationsmessung in dem Fingerabdruck-Korrelator 312 von Fig. 3a die Steigung der Energie-Hüllkurve herangezogen. Technisch gesehen, wird diese Signalableitung durch eine Diffe- renzbildung des Energiewertes mit dem des vorangegangenen Blocks berechnet und zwar gemäß folgender Gleichung:
EΛm) = Edb {aktueller _ Block) - Edb (vorangegangener _ Block)
Edb(Diff) ist der Differenzwert der Energiewerte zweier vorausgehender Blöcke, und zwar in einer dB-Darstellung, während Edb die Energie in dB des aktuellen Blocks beziehungsweise des vorangegangenen Blocks ist, wie es aus der vorstehenden Gleichung selbst erklärend ist. Diese Differenzbildung der Ener- gien wird in einem Schritt 806 durchgeführt.
Es sei darauf hingewiesen, dass dieser Schritt z. B. nur im Encoder, also im Fingerabdruck-Berechner 104 von Fig. 1 vollzogen wird, dahingehend, dass der Fingerabdruck, der in die Mehrkanalerweiterungsdaten eingebettet wird, aus differenzcodierten Werten besteht.
Alternativ kann der Schritt 806 der Differenzbildung auch rein decodiererseitig implementiert werden, also in dem Fingerab- druck-Berechner 304 von Fig. 3a. In diesem Fall besteht der übertragene Fingerabdruck nur aus nicht differenzcodierten, und die Differenzbildung gemäß dem Schritt 806 wird erst im Decodierer vorgenommen. Diese Möglichkeit ist durch die gestrichelte Signalflusslinie 808 dargestellt, die den Diffe- renzbildungsblock 806 überbrückt. Diese letztere Möglichkeit 808 hat den Vorteil, dass der Fingerabdruck noch Informationen über die absolute Energie des Downmixsignals enthält, benötigt aber eine etwas höhere Fingerprintwortlänge.
Während die Blöcke 802, 804, 806 zur Fingerabdruckwertberechnung gemäß 104b von Fig. 2 gezählt werden können, werden die nachfolgenden Schritte 808 (Skalierung mit Verstärkungsfaktor) , 810 (Quantisierung), 812 (Entropiecodierung) oder auch 1-Bit-Quantisierung in einem Block 814 zu einer Fingerabdruck-
nachverarbeitung gemäß dem Fingerabdrucknachverarbeiter 104c gezählt.
Bei der Skalierung der Energie (Hüllkurve des Signals) für ei- ne optimale Aussteuerung gemäß dem Block 808 wird sichergestellt, dass bei der anschließenden Quantisierung dieses Fingerabdrucks sowohl der Zahlenbereich maximal ausgenutzt als auch die Auflösung bei geringen Energiewerten verbessert wird. Hierzu wird eine zusätzliche Skalierung beziehungsweise Ver- Stärkung eingeführt. Diese kann entweder als feste oder statische Gewichtungsgröße oder über eine an das Hüllkurvensignal angepasste dynamische Verstärkungsregelung realisiert werden. Auch Kombinationen einer statischen Gewichtungsgröße sowie einer angepassten dynamischen Verstärkungsregelung sind verwend- bar. Insbesondere wird gemäß folgender Gleichung vorgegangen:
^skaliert = ^db(dιff) * ^Verstärkung (0
Eskaliert stellt hierbei die skalierte Energie dar. Edb(diff) stellt die durch die Differenzbildung im Block 806 berechnete Differenzenergie in dB dar, und Averstärkung ist der Verstärkungsfaktor, der von der Zeit t abhängig sein kann, wenn es sich um eine insbesondere dynamische Verstärkungsregelung handelt. Der Verstärkungsfaktor wird von dem Hüllkurvensignal dahingehend abhängen, dass mit größerer Hüllkurve der Verstärkungsfaktor kleiner wird und mit kleinerer Hüllkurve der Verstärkungsfaktor größer wird, um eine möglichst gleichmäßige Aussteuerung des zur Verfügung stehenden Zahlenbereichs zu erhalten. Der Verstärkungsfaktor kann insbesondere im Fingerabdruck- Berechner 304 durch Messen der Energie des übertragenen Audiosignals nachgebildet werden, so dass der Verstärkungsfaktor nicht explizit übertragen werden muss.
In einem Block 810 wird der vom Block 808 berechnete Fingerab- druck quantisiert. Dies wird durchgeführt, um den Fingerprint für die Eintastung in die Mehrkanalzusatzinformationen vorzubereiten. Diese reduzierte Fingerprintauflösung hat sich als guter Kompromiss hinsichtlich Bitbedarf und Zuverlässigkeit der Verzögerungsdetektion bewährt. Vor allem Überläufe von >
255 können dabei mit einer Sättigungskennlinie auf den Maximalwert von 255 begrenzt werden, wie es beispielsweise folgendermaßen gleichungsmäßig dargestellt werden kann:
Et**»** = ßβJ Sättigung — (Eskalierl )
Equantisiert ist hierbei der quantisierte Energiewert und stellt einen Quantisierungsindex dar, der 8 Bit hat. QβBit ist die Quantisierungsoperation, die einem Wert > 255 den Quantisie- rungsindex für den Maximalwert 255 zuweist. Es sei darauf hingewiesen, dass auch feinere Quantisierungen mit mehr als 8 Bit oder gröbere Quantisierungen mit weniger als 8 Bit genommen werden können, wobei bei gröber werdender Quantisierung der Zusatzbitbedarf abnimmt, während bei feinerer Quantisierung mit mehr Bits der Zusatzaufwand an Bits ansteigt, jedoch auch die Genauigkeit ansteigt.
In einem Block 812 kann hierauf eine Entropiecodierung des Fingerprints stattfinden. Durch die Auswertung von Statisti- sehen Eigenschaften des Fingerprints kann der Bitbedarf für den quantisierten Fingerprint weiter reduziert werden. Ein geeignetes Entropieverfahren ist beispielsweise die Huffman- Codierung. Statistisch unterschiedliche Häufigkeiten von Fin- gerprint-Werten können durch verschiedene Codelängen ausge- drückt werden und somit im Mittel den Bitbedarf der Fingerprintdarstellung reduzieren.
Das Ergebnis des Entropiecodierungsblocks 812 wird dann in den Erweiterungskanaldatenstrom geschrieben, wie es bei 813 darge- stellt ist. Alternativ können auch nicht-entropie-codierte Fingerprints als quantisierte Werte in den Bitstrom geschrieben werden, wie es bei 811 dargestellt ist.
Alternativ zur Energieberechnung pro Block im Schritt 802 kann auch ein anderer Fingerabdruckwert berechnet werden, wie es im Block 818 dargestellt ist.
Alternativ zur Energie eines Blocks kann auch der Crestfaktor des Leistungsdichtespektrums (PSD-Crest) berechnet werden. Der Crestfaktor berechnet sich allgemein als Quotient zwischen dem Maximalwert XMax des Signals in einem Block zum arithmetischen Mittelwert der Signale Xn (z.B. Spektralwerte) in dem Block, wie es in der nachfolgenden Gleichung
XMax y=-—
_/=] n
beispielhaft dargestellt ist.
Um eine robustere Synchronisierung zu erreichen, kann ferner ein weiteres Verfahren eingesetzt werden. Anstelle des Nach- verarbeitens mittels den Blöcken 808, 810, 812 kann als alter- native Fingerabdrucknachverarbeitung 104c (Fig. 2) auch eine 1-Bit-Quantisierung verwendet werden, wie sie im Block 814 dargestellt ist. Hier wird direkt nach der Berechnung und der Differenzbildung des Fingerprints gemäß 802 oder 818 im Enco- dierer zusätzlich eine 1-Bit-Quantisierung durchgeführt. Es hat sich gezeigt, dass sich dadurch die Genauigkeit der Korrelation erhöhen lässt. Diese 1-Bit-Quantisierung wird so realisiert, dass der Fingerprint gleich 1 ist, wenn der neue Wert größer als der alte ist (Steigung positiv) und gleich -1 ist, wenn die Steigung negativ ist. Eine negative Steigung ist dann erreicht, wenn der neue Wert kleiner als der alte Wert ist.
Die erfindungsgemäß bevorzugte 1-Bit-Quantisierung vereinfacht die Korrelationsberechnung im Fingerabdruck-Korrelator 312 erheblich. Aufgrund der Tatsache, dass der Test-Fingerabdruck und der Referenz-Fingerabdruck Bit-Sequenzen sind, kann die Korrelation auf eine einfache XOR-Verknüpfung und anschließende Aufsummierung der bitweisen Ergebnisse der XOR-Verknüpfung vereinfacht werden. Wenn also die Folge von Test- Audiosignalen-Fingerabdruckwerten und die Folge von Referenz- Audiosignal-Fingerabdruckwerten jeweils eine Folge von 1-Bit- Werten sind, wobei jeweils ein Bit für einen Block von Audio-
Abtastwerten steht, so ist der Fingerabdruck-Korrelator 312 von Fig. 3a ausgebildet, um eine Bitfolge der Folge von Test- Audiosignal-Fingerabdrücken und eine Bitfolge der Referenz- Audiosignal-Fingerabdrücke durch eine bitweise XOR-Verknüpfung zu kombinieren und erhaltene Bitergebnisse aufzusummieren. Das Ergebnis dieser Summation stellt einen ersten Korrelationswert dar. Die Bitfolgen haben eine Länge von z. B. 32 Bits bzw. zwischen z. B. 10 Bits und 100 Bits.
Ferner ist der Fingerabdruck-Korrelator 312 ausgebildet, um eine um einen Verschiebungswert verschobene Bitfolge der Folge von Test-Audiosignal-Fingerabdrücken oder Referenz- Audiosig- nal-Fingerabdrücken mit einer jeweils anderen Folge durch e- benfalls eine bitweise XOR-Verknüpfung zu kombinieren und die erhaltenen Bitergebnisse aufzusummieren, wodurch ein zweiter Korrelationswert erhalten wird. Für den Verschiebungswert, für den es den maximalen Korrelationswert gegeben hat, kann dann festgestellt werden, dass Test-Fingerabdruck und Referenz- Fingerabdruck übereingestimmt haben. Dieser Verschiebungswert stellt somit das Korrelationsergebnis dar, da es für diesen speziellen Verschiebungswert den größten Korrelationswert gegeben hat.
Zusätzlich zur Verbesserung der Synchronisationsergebnisse wirkt sich diese Quantisierung auch auf die benötigte Bandbreite für die Übertragung des Fingerprints aus. Mussten vorher für den Fingerprint mindestens 8 Bit eingesetzt werden, um einen ausreichend genauen Wert bereitzuhalten, genügt hier ein einziges Bit. Da der Fingerprint und sein 1-Bit-Pendant schon im Sender ermittelt werden, erreicht man eine genauere Berechnung der Differenz, da der eigentliche Fingerprint mit maximaler Auflösung vorliegt und so auch minimale Änderungen zwischen den Fingerprints sowohl im Sender als auch im Empfänger berücksichtigt werden können. Ferner hat sich herausgestellt, dass sich die meisten aufeinander folgenden Fingerprints nur minimal unterscheiden. Dieser Unterschied wird jedoch durch eine Quantisierung vor der Differenzbildung zunichte gemacht werden.
Je nach Implementierung, und wenn eine blockweise Genauigkeit ausreichend ist, kann die 1-Bit-Quantisierung als spezielle Fingerabdruck-Nachverarbeitung auch unabhängig davon verwendet werden, ob ein Audiosignal mit Zusatz-Informationen vorliegt oder nicht, da die 1-Bit-Quantisierung auf der Basis einer Differenzcodierung bereits an sich ein robustes und dennoch genaues Fingerabdruck-Verfahren ist, das auch zu anderen Zwecken als zur Synchronisation, z. B. zu Zwecken der Identifizierung oder Klassifizierung eingesetzt werden kann.
Wie es anhand von Fig. IIa dann dargestellt worden ist, wird eine Berechnung der Mehrkanalzusatzdaten unter Zuhilfenahme der Mehrkanalaudiodaten durchgeführt. Die hierbei berechneten Mehrkanalzusatzinformationen werden anschließend durch die neu hinzukommende Synchronisationsinformation in Form der berechneten Fingerabdrücke durch geeignetes Einbetten in den Bitstrom erweitert.
Die bevorzugte Wortmarken-Fingerprint-Hybdrid-Lösung erlaubt es einem Synchronisierer, einen zeitlichen Versatz von Down- mixsignal und Zusatzdaten zu erkennen und eine zeitkorrekte Anpassung, also eine Verzögerungskompensation zwischen dem Audiosignal und den Mehrkanalerweiterungsdaten in der Größenordnung von +/- einem Sample-Wert zu realisieren. Somit kann die Mehrkanalzuordnung im Empfänger fast vollständig, d. h. bis auf einen kaum wahrnehmbaren Zeitunterschied von wenigen Sam- ples rekonstruiert werden, welches sich nicht nennenswert auf die Qualität des rekonstruierten Mehrkanalaudiosignals auswirkt.
Der erfindungsgemäße Fingerabdruck, wie er durch z.B. den Fingerabdrucksberechner 104 oder den Fingerabdrucksberechner 304 mit oder ohne Blockeinteilungsinformation berechnet wird, kann dazu verwendet werden, um ein Test-Audiosignal zu charakteri- sieren. Hierzu ist eine Einrichtung 104 bzw. 304 vorgesehen, um von dem Test-Audiosignal eine Folge von Test-Audiosignal- Fingerabdrücken zu erhalten.
Ferner ist ein Korrelierer, wie beispielsweise der Korrelierer 312 vorgesehen, um die Folge von binären Werten mit verschiedenen Referenz-Fingerabdrucken, die in einer Referenz- Datenbank vorgesehen sind, zu korrelieren, wobei die Referenz- Datenbank für jeden Referenz-Fingerabdruck eine Information über ein Audiosignal aufweist, das dem Referenz-Fingerabdruck zugeordnet ist.
Basierend auf diesen verschiedenen Korrelationen, also basie- rend auf dem der Korrelation des Test-Audiosignal- Fingerabdrucks in Folge einer 1-Bit-Frequenz und der verschiedenen Referenz-Fingerabdrucke der Referenz-Datenbank kann dann eine Information über das Test-Audiosignal getroffen werden.
Die Information über das Test-Audiosignal ist beispielsweise eine Identifikation des Audiosignals, also wie das Stück heißt und ggfs. von welchem Autor es stammt und auf welcher CD bzw. auf welchem Tonträger dieses Stück zu finden ist, und wo es zu bestellen ist. Eine alternative Charakterisierung eines Audio- Signals besteht darin, ein Test-Audiosignal z.B. als Audiosignal einer bestimmten Stilepoche bzw. einer bestimmten Stilrichtung zugehörig zu identifizieren bzw. von einer bestimmten Musikgruppe stammend zu identifizieren. Eine solche Charakterisierung kann beispielsweise dadurch erfolgen, dass nicht nur qualitativ sondern quantitativ bestimmt wird, wie der Referenz-Fingerabdruck zum Test-Fingerabdruck steht bzw. welcher Abstand zwischen beiden existiert. Dieser Abgleich der Fingerabdruck-Sequenzen bzw. die Berechnung des quantitativen Abstands der Fingerabdruck-Sequenzen kann z.B. stattfinden, wenn eine Korrelation stattgefunden hat, um den zeitlichen Versatz des Referenz-Fingerabdrucks und des Test-Fingerabdrucks zu e- liminieren.
Abhängig von den Gegebenheiten kann das erfindungsgemäße Ver- fahren in Hardware oder in Software implementiert werden. Die Implementierung kann auf einem digitalen Speichermedium, insbesondere einer Diskette, CD oder DVD mit elektronisch auslesbaren Steuersignalen erfolgen, die so mit einem programmierbaren Computersystem zusammenwirken können, dass das Verfahren
ausgeführt wird. Allgemein besteht die Erfindung somit auch in einem Computer-Programm-Produkt mit einem auf einem maschinenlesbaren Träger gespeicherten Programmcode zur Durchführung des erfindungsgemäßen Verfahrens, wenn das Computer-Programm- Produkt auf einem Rechner abläuft. In anderen Worten ausgedrückt, kann die Erfindung somit als ein Computer-Programm mit einem Programmcode zur Durchführung des Verfahrens realisiert werden, wenn das Computer-Programm auf einem Computer abläuft.