-
Hintergrund der Erfindung
-
Die vorliegende Erfindung betrifft Verfahren und Vorrichtungen zum Extrahieren eines Informationssignals aus einem verschlüsselten Audiosignal.
-
Es gibt zahlreiche Motivationen, permanent oder unauslöschlich Informationssignale in Audiosignale einzubauen, was als „mit einem Wasserzeichen versehen” bezeichnet wird. Ein derartiges Audio-Wasserzeichen kann, z. B., einen Hinweis auf den Verfasser, Inhalt, Abstammung, das Bestehen von Urheberrechten oder dergleichen für die derart markierten Audiosignale liefern. Alternativ können andere Informationen in Audiosignale entweder das Signal selbst betreffend oder ohne Beziehung dazu eingebaut werden. Die Information kann für zahlreiche Zwecke, wie z. B. Identifikation oder als eine Adresse oder ein Befehl, egal ob in Beziehung zum Signal oder nicht, in ein Audiosignal eingebaut werden.
-
Es besteht ein beträchtliches Interesse am Verschlüsseln von Audiosignalen mit Informationen, um verschlüsselte Audiosignale zu erzeugen, die im wesentlichen dieselben wahrnehmbaren Eigenschaften wie die ursprünglichen unverschlüsselten Audiosignale aufweisen. Kürzlich erfolgreiche Techniken nutzen den psychoakustischen Maskiereffekt des menschlichen Hörsystems aus, wodurch gewisse Töne von Menschen nicht wahrnehmbar sind, wenn sie gemeinsam mit anderen Tönen empfangen werden.
-
Eine besonders erfolgreiche Ausnutzung des psychoakustischen Maskiereffekts ist in den
US-Patenten Nr. 5,450,490 und Nr.
5,764,763 (Jensen et al.) beschrieben, in denen Informationen durch ein Mehrfrequenzcodesignal wiedergegeben werden, das basierend auf der Maskierfähigkeit des Audiosignals in ein Audiosignal eingebaut ist. Das verschlüsselte Audiosignal ist zur Rundfunksendung und zum Rundfunkempfang sowie zum Aufzeichnen und Reproduzieren geeignet. Nach Empfang wird das Audiosignal dann verarbeitet, um das Vorlegen des Mehrfrequenzcodesignals zu detektieren. Manchmal wird nur ein Teil des Mehrfrequenzcodesignals, z. B. eine Anzahl von Einzelfrequenzcodekomponenten, die in das ursprüngliche Audiosignal eingefügt sind, in dem empfangenen Audiosignal detektiert. Wenn eine ausreichende Codekomponentenmenge detektiert worden ist, kann das Informationssignal selbst wiederhergestellt werden.
-
Im allgemeinen wird ein akustisches Signal mit niedrigen Amplitudenpegeln, wenn überhaupt, nur eine minimale Kapazität zum akustischen Maskieren eines Informationssignals aufweisen. Zum Beispiel können derartige niedrige Amplitudenpegel während einer Unterhaltungspause, während eines Interludiums zwischen Musiksegmenten, oder sogar innerhalb gewisser Musiktypen auftreten. Während einer längeren Periode mit niedrigen Amplitudenpegeln kann es schwierig sein, ein Codesignal in ein Audiosignal einzubauen, ohne daß sich das verschlüsselte Audiosignal vom ursprünglichen in einer akustisch wahrnehmbaren Weise unterscheidet.
-
Ein weiteres Problem ist das Auftreten von Burst-Fehlern während der Sendung oder Reproduktion von verschlüsselten Audiosignalen. Burst-Fehler können als zeitlich durchgehende Segmente von Signalfehlern auftreten. Derartige Fehler sind im allgemeinen unvorhersagbar und beeinträchtigen den Inhalt eines verschlüsselten Audiosignals wesentlich. Burst-Fehler treten typischerweise aufgrund eines Fehlers in einem Sendekanal oder in einem Reproduktionsgerät aufgrund ernsthafter äußerer Störungen, wie z. B. ein Überlappen von Signalen von unterschiedlichen Sendekanälen, ein Auftreten von Systemleistungsspitzen, eine Störung in normalen Betrieben, ein Einführen von Rauschkontamination (absichtlich oder anders) und dergleichen auf. In einem Sendesystem können derartige Umstände verursachen, daß ein Teil der gesendeten verschlüsselten Audiosignale vollständig unempfangbar oder wesentlich verändert ist. Ohne erneute Sendung des verschlüsselten Audiosignals kann der beeinträchtigte Teil des verschlüsselten Audiosignals vollständig nicht wiederherstellbar sein, während in anderen Fällen die Veränderung des verschlüsselten Audiosignals das eingebettete Informationssignal undetektierbar läßt. In vielen Anwendungen, wie z. B. Radio- und Fernsehübertragung, ist eine erneute Sendung von verschlüsselten Audiosignalen in Echtzeit einfach unmachbar.
-
In Systemen zum akustischen Reproduzieren von auf Medien aufgezeichneten Audiosignalen kann eine Vielzahl von Faktoren Burst-Fehler im reproduzierten akustischen Signal verursachen.
-
Üblicherweise führt eine Unregelmäßigkeit in dem Aufzeichnungsmedium, die durch eine Beschädigung, ein Hindernis oder Abnutzung verursacht ist, dazu, daß gewisse Teile von aufgezeichneten Audiosignalen nicht reproduzierbar oder bei Reproduktion wesentlich verändert sind. Auch kann eine Fehlausrichtung oder eine Störung mit dem Aufzeichnungs- oder Reproduziermechanismus relativ zum Aufzeichnungsmedium burst-artige Fehler während einer akustischen Reproduktion von aufgezeichneten Audiosignalen verursachen. Ferner können die akustischen Grenzen eines Lautsprechers sowie die akustischen Eigenschaften der Höhrumgebung zu räumlichen Unregelmäßigkeiten in der Verteilung von akustischer Energie führen. Derartige Unregelmäßigkeiten verursachen, daß Burst-Fehler in empfangenen akustischen Signalen auftreten, die die Codewiederherstellung stören.
-
Aufgaben und Zusammenfassung der Erfindung
-
Somit besteht eine Aufgabe der vorliegenden Erfindung darin, Systeme und Verfahren zum Detektieren von Codesymbolen in Audiosignalen bereitzustellen, die die durch Perioden mit niedrigen Signalpegeln und Burst-Fehler verursachten Probleme lindern.
-
Es ist eine weitere Aufgabe der vorliegenden Erfindung, besagte Systeme und Verfahren bereitzustellen, die einen zuverlässigen Betrieb unter ungünstigen Bedingungen liefern.
-
Es ist eine weitere Aufgabe der Erfindung, besagte Systeme und Verfahren bereitzustellen, die robust sind.
-
Gemäß einem Aspekt der vorliegenden Erfindung werden Systeme und Verfahren zum Dekodieren wenigstens eines Nachrichtensymbols bereitgestellt, das von mehreren Codesymbolen in einem Audiosignal dargestellt wird. Die Systeme und Verfahren umfassen jeweils die Mittel zum und die Schritte des Empfangen(s) von ersten und zweiten Codesymbolen, die ein gemeinsames Nachrichtensymbol darstellen, wobei die ersten und zweiten Codesymbole zeitlich in dem Audiosignal verschoben sind, Akkumulieren(s) eines ersten Signalwertes, der das erste Codesymbol darstellt, und eines zweiten Signalwertes, der das zweite Codesymbol darstellt, und Untersuchen(s) der akkumulierten ersten und zweiten Signalwerte, um das gemeinsame Nachrichtensymbol zu detektieren.
-
Gemäß einem weiteren Aspekt der vorliegenden Erfindung wird ein System zum Dekodieren wenigstens eines Nachrichtensymbols bereitgestellt, das von mehreren Codesymbolen in einem Audiosignal dargestellt wird. Das System umfaßt eine Eingabeeinrichtung zum Empfangen von ersten und zweiten Codesymbolen, die ein gemeinsames Nachrichtensymbol darstellen, wobei die ersten und zweiten Codesymbole zeitlich in dem Audiosignal verschoben sind; und einen Digitalprozessor, der mit der Eingabeeinrichtung in Verbindung steht, um davon Daten zu empfangen, die die ersten und zweiten Codesymbole darstellen, wobei der Digitalprozessor programmiert ist, um einen ersten Signalwert, der das erste Codesymbol darstellt, und einen zweiten Signalwert zu akkumulieren, der das zweite Codesymbol darstellt, wobei der Digitalprozessor ferner programmiert ist, um die akkumulierten ersten und zweiten Signalwerte zu untersuchen und das gemeinsame Nachrichtensymbol zu detektieren.
-
In gewissen Ausführungsformen werden die ersten und zweiten Signalwerte durch separates Speichern der Werte akkumuliert und wird das gemeinsame Nachrichtensymbol durch Untersuchen beider separat gespeicherter Werte detektiert. Die ersten und zweiten Signalwerte können Signalwerte darstellen, die von mehreren anderen Signalwerten, wie z. B. Werten von individuellen Codefrequenzkomponenten, oder einem einzigen Signalwert, wie z. B. eine Messung des Betrags einer Einzelcodefrequenzkomponente, abgeleitet sind. Außerdem kann ein abgeleiteter Wert als eine lineare Kombination von mehreren Signalwerten, wie z. B. eine Summe von gewichteten oder ungewichteten Werten oder als eine nichtlineare Funktion derselben erhalten werden.
-
In weiteren Ausführungsformen werden die ersten und zweiten Signalwerte durch Erzeugen eines dritten Signalwertes akkumuliert, der von den ersten und zweiten Werten abgeleitet ist. Der dritte Signalwert wird in gewissen Ausführungsformen durch eine lineare Kombination der ersten und zweiten Signalwerte, wie z. B. eine gewichtete oder ungewichtete Summe derselben, oder als eine nichtlineare Funktion derselben abgeleitet.
-
Weitere Aufgaben, Merkmale und Vorteile gemäß der vorliegenden Erfindung werden anhand der folgenden ausführlichen Beschreibung von gewissen vorteilhaften Ausführungsformen beim Lesen in Verbindung mit den beigefügten Zeichnungen ersichtlich werden, in denen dieselben Komponenten durch dieselben Bezugszeichen identifiziert sind.
-
Kurzbeschreibung der Zeichnungen
-
1 ist ein Funktionsblockdiagramm einer Verschlüsselungsvorrichtung;
-
2 ist eine Tabelle, auf die beim Erläutern einer Methodik zum Verschlüsseln von Informationen in einem Audiosignal Bezug genommen wird;
-
die 3A, 3B und 3C sind Schemadiagramme, die eine Audiosignalverschlüsselungsmethodik darstellen;
-
4 ist eine weitere Tabelle, auf die beim Erläutern einer Methodik zum Verschlüsseln von Informationen in einem Audiosignal Bezug genommen wird;
-
5 ist eine Blockdiagramm, das ein Mehrstufen-Audiosignalverschlüsselungssystem darstellt;
-
6 ist ein Funktionsblockdiagramm eines persönlichen tragbaren Meßgerätes;
-
7 ist ein Funktionsblockdiagramm, das eine Entschlüsselungsvorrichtung darstellt;
-
8 ist ein Flußdiagramm, das eine Methodik zum Wiederauffinden eines Informationscodes aus einem verschlüsselten Audiosignal darstellt;
-
9 ist ein Schemadiagramm eines kreisförmigen SNR-Puffers, der beim Durchführen der Methodik von 8 verwendet wird;
-
10 ist ein Flußdiagramm, das eine weitere Methodik zum Wiederauffinden eines Informationscodes aus einem verschlüsselten Audiosignal darstellt.
-
Ausführliche Beschreibung von gewissen vorteilhaften Ausführungsformen
-
Die vorliegende Erfindung betrifft die Verwendung einer besonders robusten Verschlüsselung, die Informationen in redundante Sequenzen von Codesymbolen umwandelt. In gewissen Ausführungsformen wird jedes Codesymbol von einer Gruppe von unterschiedlichen, vorab festgelegten Einzelfrequenzcodesignalen dargestellt; jedoch können in anderen Ausführungsformen andere Codesymbole optional sich gewisse Einzelfrequenzcodesignale teilen oder können von einer Methodik bereitgestellt werden, die nicht vorab festgelegte Frequenzkomponenten einem gegebenem Symbol zuweist. Die redundante Symbolsequenz wird in die Audiosignale eingebaut, um verschlüsselte Audiosignale zu erzeugen, die vom Hörer nicht bemerkt werden, aber nichtsdestotrotz wiederherstellbar sind.
-
Die redundante Codesymbolsequenz ist speziell zum Einbau in Audiosignale mit geringer Maskierkapazität, wie z. B. Audiosignale mit vielen Teilen mit niedriger Amplitude oder dergleichen, geeignet. Bei Einbau in Audiosignale hält zusätzlich die redundante Sequenz von Codesymbolen einer Verschlechterung durch Burst-Fehler stand, die zeitlich durchgehende Audiosignale beeinträchtigen. Wie hierin oben beschrieben, können derartige Fehler zu einer unvollständigen Audiosignalaufzeichnung, -reproduktion, und/oder unvollständigen Speicherprozessen, unvollständiger Sendung der Audiosignale über einen verlustbehafteten und/oder rauschigen Kanal, Unregelmäßigkeiten in einer akustischen Umgebung oder dergleichen führen.
-
Zum Wiederherstellen der verschlüsselten Information in gewissen vorteilhaften Ausführungsformen werden die verschlüsselten Audiosignale in einem Versuch, das Vorliegen von vorabfestgelegten Einzelfrequenzcodekomponenten zu detektieren, untersucht. Während des Verschlüsselungsprozesses können einige Einzelfrequenzcodekomponenten nicht in die Audiosignale in gewissen Signalintervallen aufgrund einer unzureichenden Maskierkapazität in den Audiosignalen in diesen Intervallen eingebaut worden sein. Burst-Fehler, die Teile der verschlüsselten Audiosignale beschädigt haben, können zu einem Löschen gewisser Codesignale aus den verschlüsselten Audiosignalen oder zu einem Einfügen von fehlerhaften Signalen, wie z. B. Rauschen, in die verschlüsselten Audiosignale führen. Somit besteht die Wahrscheinlichkeit, daß die Untersuchung von verschlüsselten Audiosignalen eine sehr gestörte Version der ursprünglichen Sequenz von Gruppen von Einzelfrequenzcodesignalen, die die Information darstellten, aufdecken wird.
-
Die Einzelfrequenzcodekomponenten, die wiederhergestellt werden, gemeinsam mit den fehlerhaften zusätzlichen Signalen, die fälschlicherweise als Codesignale detektiert werden, werden verarbeitet, um die ursprüngliche Sequenz von Codesymbolen, falls möglich, zu erkennen. Die Codesignaldetektions- und -verarbeitungsoperationen sind speziell gestaltet, um die Stärken der Verschlüsselungsmethodik auszunutzen. Als eine Folge liefert die Detektions- und Verarbeitungsmethodik der vorliegenden Erfindung eine verbesserte Fehlertoleranz.
-
1 ist ein Funktionsblockdiagramm eines Audiosignalcodierers 10. Der Codierer 10 implementiert eine optionale Symbolerzeugungsfunktion 12, eine Symbolsequenzerzeugungsfunktion 14, eine Symbolverschlüsselungsfunktion 16, eine Akustikmaskiereffektbewertungs/Einstellfunktion 18 und eine Audiosignaleinschließfunktion 20. Vorzugsweise umfaßt der Codierer 10 ein software-gesteuertes Computersystem. Der Computer kann mit einem analogen Prozessor zum Abtasten eines zu verschlüsselnden analogen Audiosignals versehen sein oder kann das Audiosignal direkt in digitaler Form mit oder ohne erneute Abtastung versehen sein. Alternativ kann der Codierer 10 eine oder mehrere diskrete Signalverarbeitungskomponente(n) umfassen.
-
Die Symbolerzeugungsfunktion 12 übersetzt bei Benutzung ein Informationssignal in eine Gruppe von Codesymbolen. Diese Funktion kann mit Verwendung einer Speichereinrichtung, wie z. B. eines Halbleiter-EPROM des Computersystems durchgeführt werden, der mit einer Tabelle mit zum Indizieren in Bezug auf ein Informationssignal geeigneten Codesymbolen vorab gespeichert ist. Ein Bespiel einer Tabelle zum Übersetzen eines Informationssignals in ein Codesymbol für gewisse Anwendungen ist in 2 gezeigt. Die Tabelle kann auf einem Festplattenlaufwerk oder einem anderen geeigneten Speichergerät des Computersystems gespeichert werden. Die Symbolerzeugungsfunktion kann auch von einer oder mehreren diskreten Komponente(n), wie z. B. einem EPROM und zugehörigen Steuergeräten, von einem Logik-Array, von einem anwendungsspezifischen integrierten Schaltkreis oder irgendeinem anderen geeigneten Gerät oder einer Kombination von Geräten durchgeführt werden. Die Symbolerzeugungsfunktion kann auch von einem oder mehreren Geräten implementiert sein, das/die auch eine oder mehrere der in 1 dargestellten verbleibenden Funktionen implementiert/implementieren.
-
Die Symbolsequenzerzeugungsfunktion 14 formatiert die von der Symbolerzeugungsfunktion (oder Eingabe direkt an den Codierer 10) erzeugten Symbole in eine redundante Sequenz von Code- oder Informationssymbolen. Als Teil des Formatierungsprozesses werden in gewissen Ausführungsformen Markier- und/Synchronisationssymbole der Sequenz von Codesymbolen hinzugefügt. Die redundante Sequenz von Codesymbolen ist gestaltet, um besonders widerstandsfähig gegenüber Burst-Fehlern und Audiosignalverschlüsselungsprozessen zu sein. Eine weitere Erläuterung von redundanten Sequenzen von Codesymbolen in Übereinstimmung mit gewissen Ausführungsformen wird in Verbindung mit der Diskussion der 3A, 3B und 3C unten geliefert. Vorzugsweise ist die Erzeugungsfunktion 14 in einem Verarbeitungsgerät, wie z. B. einem Mikroprozessorsystem, oder durch ein dediziertes Formatiergerät, wie z. B. ein anwendungsspezifischer integrierter Schaltkreis oder ein Logik-Array, durch mehrere Komponenten oder eine Kombination des Vorangehenden implementiert. Die Symbolsequenzerzeugungsfunktion kann auch durch ein oder mehrere Geräte implementiert sein, das/die auch eine oder mehrere der in der 1 dargestellten verbleibenden Funktionen implementiert/implementieren.
-
Wie oben bemerkt, ist die Symbolsequenzerzeugungsfunktion 14 optional. Zum Beispiel kann der Verschlüsselungsprozeß durchgeführt werden, so daß das Informationssignal direkt in eine vorab festgelegte Symbolsequenz übersetzt wird, ohne separate Symbolerzeugungs- und Symbolsequenzerzeugungsfunktionen zu implementieren.
-
Jedes Symbol der so erzeugten Symbolsequenz wird von der Symbolverschlüsselungsfunktion 16 in mehrere Einzelfrequenzcodesignale umgewandelt. In gewissen vorteilhaften Ausführungsformen wird die Symbolverschlüsselungsfunktion mittels einer Speichereinrichtung des Computersystems, wie z. B. eines Halbleiter-EPROM durchgeführt, der mit Gruppen von Einzelfrequenzcodesignalen vorab gespeichert ist, die jedem Symbol entsprechen. Ein Beispiel einer Tabelle mit Symbolen und entsprechenden Gruppen von Einzelfrequenzcodesignalen ist in 4 gezeigt.
-
Alternativ können die Gruppen von Codesignalen auf einem Festplattenlaufwerk oder einer anderen geeigneten Speichereinrichtung des Computersystems gespeichert werden. Die Verschlüsselungsfunktion kann auch durch eine oder mehrere diskrete Komponenten, wie z. B. einen EPROM und zugehörige Steuereinrichtungen, durch ein Logik-Array, durch einen anwendungsspezifischen integrierten Schaltkreis oder irgendeine andere geeignete Einrichtung oder Kombination von Einrichtungen implementiert werden. Die Verschlüsselungsfunktion kann auch von einer oder mehreren Einrichtungen durchgeführt werden, die auch eine oder mehrere der in der 1 dargestellten verbleibenden Funktionen implementiert/implementieren.
-
In der Alternative kann die verschlüsselte Sequenz direkt aus dem Informationssignal erzeugt werden, ohne die separaten Funktionen 12, 14 und 16 zu implementieren.
-
Die Akustikmaskiereffektbewertungs/einstellfunktion
18 bestimmt die Kapazität eines Eingangsaudiosignals, von der Symbolverschlüsselungsfunktion
16 erzeugte Einzelfrequenzcodesignale zu maskieren. Basierend auf einer Detektion der Maskierfähigkeit des Audiosignals erzeugt die Funktion
18 Einstellparameter zum Einstellen der relativen Beträge der Einzelfrequenzcodesignale, so daß besagte Codesignale von einem menschlichen Zuhörer unhörbar gehalten werden, wenn sie in das Audiosignal eingebaut sind. In dem Fall, in dem bestimmt worden ist, daß das Audiosignal aufgrund geringer Signalamplitude oder anderer Signaleigenschaften eine geringe Maskierkapazität aufweist, können die Einstellparameter Beträge gewisser Codesignale auf extrem niedrige Pegel verringern oder derartige Signale vollständig annullieren. In dem Fall, in dem festgestellt wird, daß das Audiosignal eine größere Maskierkapazität aufweist, kann umgekehrt besagte Kapazität durch die Erzeugung von Einstellparametern verwendet werden, die die Beträge besonderer Codesignale erhöhen. Codesignale mit erhöhten Beträgen weisen im allgemeinen eine höhere Wahrscheinlichkeit auf, daß sie von Rauschen unterscheidbar sind und somit von einer Dekodiereinrichtung detektierbar sind. Weitere Details gewisser vorteilhafter Ausführungsformen von besagter Bewertungs/Einstellfunktion sind in den
US-Patenten Nr. 5,764,763 und Nr.
5,450,490 von Jensen et al. mit dem Titel „Apparatus and Methods for including Codes in Audio Signals in Decoding” beschrieben, deren Inhalt hierin durch Bezugnahme vollständig aufgenommen ist.
-
In gewissen Ausführungsformen wendet die Funktion 18 die Einstellparameter auf Einzelfrequenzcodesignale an, um eingestellte Einzelfrequenzcodesignale zu erzeugen. Die eingestellten Codesignale werden durch die Funktion 20 in das Audiosignal eingeschlossen. Alternativ wendet die Funktion 18 die Einstellparameter gemeinsam mit den Einzelfrequenzcodesignalen zum Einstellen und Einschließen in das Audiosignal durch die Funktion 20 an. In weiteren anderen Ausführungsformen ist die Funktion 18 mit einer oder mehreren der Funktionen 12, 14 und 16 kombiniert, um direkt Einzelfrequenzcodesignale mit eingestelltem Betrag zu erzeugen.
-
In gewissen Ausführungsformen ist die Akustikmaskiereffektbewertungs/einstellfunktion 18 in einer Verarbeitungseinrichtung, wie z. B. einem Mikroprozessorsystem, implementiert, das auch eine oder mehrere der in der 1 dargestellten zusätzlichen Funktionen implementieren kann. Die Funktion 18 kann auch von einer dedizierten Einrichtung, wie z. B. einem anwendungsspezifischen integrierten Schaltkreis oder einem Logik-Array, oder durch mehrere diskrete Komponenten, oder eine Kombination des Vorangehenden durchgeführt werden.
-
Die Codeeinschließfunktion 20 kombiniert die Einzelfrequenzcodekomponenten mit dem Audiosignal, um ein verschlüsseltes Audiosignal zu erzeugen. In einer einfachen Implementierung fügt die Funktion 20 einfach die Einzelfrequenzcodesignale direkt dem Audiosignal hinzu. Jedoch kann die Funktion 20 die Codesignale auf das Audiosignal legen. Alternativ kann ein Modulator 20 die Amplituden von Frequenzen in dem Audiosignal gemäß einer Eingabe von der Akustikmaskiereffektbewertungsfunktion 18 modifizieren, um ein verschlüsseltes Audiosignal zu erzeugen, das die eingestellten Codesignale einschließt. Außerdem kann die Codeeinschließfunktion entweder im Zeitbereich oder Frequenzbereich durchgeführt werden. Die Codeeinschließfunktion 20 kann mittels eines Addierschaltkreises oder mittels eines Prozessors implementiert werden. Diese Funktion kann auch durch eine oder mehrere oben beschriebene Einrichtungen implementiert werden, die auch eine oder mehrere in der 1 dargestellten verbleibenden Funktionen implementieren.
-
Eine oder mehrere der Funktionen 12 bis 20 können durch eine einzige Einrichtung implementiert werden. In gewissen vorteilhaften Ausführungsformen sind die Funktionen 12, 14, 16 und 18 durch einen einzigen Prozessor implementiert und in anderen führt ein einziger Prozessor alle in der 1 dargestellten Funktionen durch. Außerdem können zwei oder mehr der Funktionen 12, 14, 16 und 18 mittels einer einzigen Tabelle, die in einer geeigneten Speichereinrichtung aufrechterhalten wird, implementiert werden.
-
2 stellt eine beispielhafte Übersetzungstabelle zum Umwandeln eines Informationssignals in ein Codesymbol dar. Wie gezeigt, kann ein Informationssignal Informationen bezüglich des Inhalts, der Eigenschaften oder anderer ein besonderes Audiosignal betreffender Faktoren umfassen. Zum Beispiel ist ins Auge gefaßt, daß ein Audiosignal modifiziert werden könnte, um einen unhörbaren Hinweis zu enthalten, daß Urheberrechte in dem Audioprogramm geltend gemacht werden. Dementsprechend kann ein Symbol, wie z. B. S1, verwendet werden, um anzuzeigen, daß Urheberrechte in dem speziellen Werk beansprucht werden. In ähnlicher Weise kann ein Autor mit einem eindeutigen Symbol S2 oder eine Sendestation mit einem eindeutigen Symbol S3 identifiziert werden. Ferner könnte ein besonderes Datum durch ein Symbol S4 dargestellt werden. Natürlich könnten viele andere Informationstypen in ein Informationssignal eingeschlossen und in ein Symbol übersetzt werden. Zum Beispiel kann Information, wie z. B. Adressen, Befehle, Verschlüsselungscodes etc. in besagten Symbolen verschlüsselt werden. Alternativ können Gruppen oder Sequenzen von Symbolen, zusätzlich oder anstelle von individuellen Symbolen verwendet werden, um besondere Informationstypen darzustellen. Als eine weitere Alternative kann eine vollständige Symbolsprache implementiert werden, um jeden Typ von Informationssignal darzustellen. Die verschlüsselte Information muß auch nicht auf das Audiosignal bezogen sein.
-
3A ist ein Schemadiagramm, das einen Symbolstrom darstellt, der von der Symbolerzeugungsfunktion 12 von 1 erzeugt werden könnte, während die 3B und 3C Schemadiagramme sind, die Sequenzen von Symbolen darstellen, die von der Symbolsequenzerzeugungsfunktion 14 von 1 als Antwort auf den Symbolstrom von 3A erzeugt werden könnten. In den 3A bis 3C werden S1, S2, S3 und S4 als Beispiele für Symbole verwendet, um die Merkmale der vorliegenden Erfindung darzustellen, und sind sie nicht dafür vorgesehen, deren Anwendbarkeit zu begrenzen. Zum Beispiel kann die durch irgendeines oder mehrere der Symbole S1, S2, S3 oder S4 dargestellte Information willkürlich ohne Bezug auf das, was durch irgendeines oder mehrere der anderen Symbole dargestellt wird, gewählt werden.
-
Die 3B stellt ein Beispiel einer Kerneinheit einer redundanten Symbolsequenz dar, die für eine Eingabegruppe aus vier Symbolen, S1, S2, S3 und S4, repräsentativ ist. Die Kerneinheit beginnt mit einem ersten Nachrichtensegment mit einem Sequenz- oder Markiersymbol, SA, gefolgt von den vier Eingabedatensymbolen, gefolgt von drei wiederkehrenden Nachrichtensegmenten, wobei jedes aus einem Sequenz- oder Markiersymbol, SB, und den vier Eingabesymbolen besteht. Für viele Anwendungen ist diese Kerneinheit alleine ausreichend redundant, um die erforderliche Überlebensfähigkeitshöhe zu liefern. Alternativ kann diese Kerneinheit selbst wiederholt werden, um die Überlebensfähigkeit zu erhöhen. Außerdem kann die Kerneinheit mehr oder weniger als vier Nachrichtensegmente sowie Segmente mit mehr oder weniger als vier oder fünf Symbolen aufweisen.
-
Anhand dieses Beispieles verallgemeinernd wird eine Eingabegruppe aus N-Symbolen, S1, S2, S3, ..., SN-1, SN von der redundanten Symbolsequenz mit SA, S1, S2, S3, ..., SN-1, SN, gefolgt von (P – 1) wiederkehrenden Sequenten mit SB, S1, S2, S3, ..., SN-1, SN dargestellt. Wie in dem Beispiel kann diese Kerneinheit selbst wiederholt werden, um die Überlebensfähigkeit zu erhöhen. Zusätzlich kann die Symbolsequenz in den Nachrichtensegmenten von Segment zu Segment variiert werden, solange der Dekodierer gestaltet ist, um korrespondierende Symbole in den zahlreichen Segmenten zu erkennen. Außerdem können unterschiedliche Sequenz- oder Markiersymbole und Kombinationen derselben benutzt werden, und die Positionen der Markierungen in Bezug auf die Datensymbole können unterschiedlich angeordnet sein. Zum Beispiel kann Sequenz die Form S1, S2, ..., SA, ..., SN oder die Form S1, S2, ..., SN, SA annehmen.
-
Die 3C stellt ein Beispiel einer vorteilhaften Kerneinheit einer redundanten Symbolsequenz dar, die für eine Eingabegruppe aus vier Datensymbolen, S1, S2, S3 und S4, repräsentativ ist. Die Kerneinheit beginnt mit einem Sequenz- oder Markiersymbol, SA, gefolgt von den vier Eingabedatensymbolen, gefolgt von einem Sequenz- und Markiersymbol, SB, gefolgt von S(1+δ)modM, S(2+δ)modM, S(3+δ)modM, S(4+δ)modM, wobei M die Zahl der unterschiedlichen Symbole in der verfügbaren Symbolgruppe ist und δ ein Versatz mit einem Wert zwischen ⌀ und M ist. In einer vorteilhaften Ausführungsform ist der Versatz δ als eine CRC-Prüfsumme ausgewählt. In anderen Ausführungsformen wird der Wert des Versatzes δ von Zeit zu Zeit variiert, um zusätzliche Informationen in der Nachricht zu verschlüsseln. Wenn z. B. der Versatz von 0 bis 9 variieren kann, können neun unterschiedliche Informationszustände in dem Versatz verschlüsselt werden.
-
Von diesem Beispiel ausgehend verallgemeinernd wird eine Eingabegruppe mit N Symbolen, S1, S2, S3, ..., SN-1, SN, durch die redundante Symbolsequenz mit SA, S1, S2, S3, ..., SN-1, SB, S(1+δ)modM, S(2+δ)modM, S(3+δ)modM, S(N-1+δ)modM, S(N+δ)modM dargestellt. Das heißt, daß dieselbe Information durch zwei oder mehr unterschiedliche Symbole in derselben Kerneinheit dargestellt und entsprechend deren Reihenfolge darin erkannt wird. Zusätzlich können diese Kerneinheiten selbst wiederholt werden, um die Überlebensfähigkeit zu erhöhen. Da dieselbe Information durch mehrere unterschiedliche Symbole dargestellt wird, wird das Verschlüsseln im wesentlichen robuster gemacht. Zum Beispiel kann die Struktur eines Audiosignals die Frequenzkomponente eines der Datensymbole SN nachmachen, aber die Wahrscheinlichkeit, daß das Audiosignal auch dessen korrespondierenden Versatz S(N+δ)modM bei dessem vorab festgelegten Auftreten nachmachen wird, ist sehr viel geringer. Da der Versatz für alle Symbole in einem gegebenen Segment derselbe ist, wird diese Information auch eine weitere Prüfung der Gültigkeit der detektierten Symbole in dem Segment liefern. Demzufolge verringert das Verschlüsselungsformat von 3C die Wahrscheinlichkeit von falschen Detektionen, die durch die Struktur des Audiosignals induziert werden, wesentlich.
-
Eine besondere Stärke der in 3 beispielhaft dargestellten redundanten Sequenz besteht in ihrer Verwendung der Eingabesymbole in deren ursprünglichen Reihenfolge, gefolgt von (a) einer anderen Anordnung der Eingabesymbole, (b) einer Anordnung von Symbolen, die andere Symbole anstelle eines oder mehrerer der Eingabesymbole mit oder ohne erneute Anordnung von Eingabesymbolreihenfolge einschließt, oder (c) einer Anordnung von Symbolen, die sich von den Eingabesymbolen unterscheiden. Die Anordnungen (b) und (c) sind besonders robust, da bei Symbolverschlüsselung eine erhöhte Diversifikation von Einzelfrequenzcodesignalen erzielt wird. Angenommen, daß die Eingabesymbole kollektiv zwischen einer ersten Gruppe mit Codesignalen verschlüsselt werden, dann werden Symbole in den Anordnungen (b) und (c) mit einer weiteren Gruppe mit Codesignalen verschlüsselt, die in gewissem Maße nicht die erste Gruppe überlappen. Eine größere Diversifikation von Codesignalen wird im allgemeinen die Wahrscheinlichkeit erhöhen, daß einige Codesignale innerhalb der Maskierkapazität des Audiosignals liegen.
-
Die Tabelle von 4 stellt eine beispielhafte Umwandlung für ein Sequenz- oder Markiersymbol, SA, ein Sequenz- oder Markiersymbol, SB, und N Datensymbole, S1, S2, S3, ..., SN-1, SN, in korrespondierende Gruppen aus M Einzelfrequenzcodiersignalen, f1x, f2x, f3x, ..., f[M-1]x, fMx dar, wobei x auf den Identifizierindex des besonderen Symbols Bezug nimmt. Obwohl die Einzelfrequenzcodesignale über den ganzen Frequenzbereich des Audiosignals und, in gewissem Maße, außerhalb besagten Frequenzbereiches auftreten können, liegen die Codesignale dieser Ausführungsform innerhalb des Frequenzbereiches 500 Hz bis 5500 Hz, aber könnten sie als ein anderer Frequenzbereich ausgewählt werden. In einer Ausführungsform können sich die Gruppen mit M Einzelfrequenzcodesignalen gewisse Einzelfrequenzcodesignale teilen; jedoch in einer bevorzugten Ausführungsform überlappen sich die Einzelfrequenzcodesignale vollständig nicht. Außerdem ist es nicht notwendig, daß alle Symbole durch dieselbe Anzahl von Frequenzkomponenten dargestellt werden.
-
Die 5 stellt ein Mehrstufen-Audiosignalverschlüsselungssystem 50 dar. Dieses System implementiert mehrere Audiosignalcodierer, um aufeinanderfolgend ein Audiosignal 52 zu verschlüsseln, wenn es sich entlang eines typischen Audiosignalverteilungsnetzwerkes ausbreitet. Auf jeder Verteilstufe wird das Audiosignal aufeinanderfolgend mit einem für die besondere Stufe sachdienlichen Informationssignal verschlüsselt. Vorzugsweise erzeugen die aufeinanderfolgenden Verschlüsselungen der jeweiligen Informationssignale nicht Codesignale, die sich in der Frequenz überlappen. Nichtsdestotrotz ist eine Teilüberlappung zwischen den Frequenzkomponenten der jeweiligen verschlüsselten Informationssignale aufgrund der robusten Natur der Verschlüsselungsmethode zulässig. Das System 50 enthält eine Aufzeichnungseinrichtung 54; einen Sender 66; eine Relaisstation 76; Audiosignalcodierer 58, 70 und 80; einen Audiosignalaufzeichner 62; eine Höreinrichtung 86 und einen Audiosignaldecodierer 88.
-
Die Aufzeichnungseinrichtung 54 enthält eine Vorrichtung zum Empfangen und Verschlüsseln von Audiosignalen und Aufzeichnen von verschlüsselten Audiosignalen auf einem Speichermedium. Spezielle enthält die Einrichtung 54 einen Audiosignalcodierer 58 und einen Audiosignalaufzeichner 62. Der Audiosignalcodierer 58 empfängt eine Audiosignalspeisung 52 und ein Aufzeichnungsinformationssignal 56 und verschlüsselt das Audiosignal 52 mit dem Informationssignal 56, um ein verschlüsseltes Audiosignal 60 zu erzeugen. Die Audiosignalspeisung 52 kann von irgendeiner herkömmlichen Quelle für Audiosignale, wie z. B. ein Mikrofon, ein Apparat zum Reproduzieren von aufgezeichneten Audiosignalen oder dergleichen erzeugt werden. Das Aufzeichnungsinformationssignal 56 umfaßt vorzugsweise Informationen betreffend die Audiosignalspeisung 52, wie z. B. Autor, Inhalt oder Abstammung oder Bestehen von Urheberrecht oder dergleichen. Alternativ kann das Aufzeichnungsinformationssignal 56 irgendeinen Datentyp aufweisen.
-
Der Aufzeichner 62 ist eine herkömmliche Einrichtung zum Aufzeichnen von verschlüsselten Audiosignalen 60 auf einem Speichermedium, das zum Verteilen an einen oder mehrere Sender 66 geeignet ist. Alternativ kann der Audiosignalaufzeichner 62 vollständig weggelassen werden. Die verschlüsselten Audiosignale 60 können über eine Verteilung des beschriebenen Speichermediums oder über eine Nachrichtenverbindung 64 verteilt werden. Die Nachrichtenverbindung 64 erstreckt sich zwischen der Aufzeichnungseinrichtung 54 und dem Sender 66 und kann einen Sendekanal, eine Mikrowellenverbindung, eine Draht- oder Lichtleiterverbindung oder dergleichen umfassen.
-
Der Sender 66 ist eine Sendestation, die verschlüsselte Audiosignale 60 empfängt, ferner besagte Signale 60 mit einem Senderinformationssignal 68 verschlüsselt, um ein doppelt verschlüsseltes Audiosignal 72 zu erzeugen, und das doppelt verschlüsselte Audiosignal 72 entlang eines Sendeweges 74 sendet. Der Sender 66 enthält einen Audiosignalcodierer 70, der das verschlüsselte Audiosignal 60 von der Aufzeichnungseinrichtung 54 und ein Senderinformationssignal 68 empfängt. Das Senderinformationssignal 68 kann Informationen bezüglich des Senders 66, wie z. B. einen Identifikationscode, oder bezüglich des Sendeprozesses, wie z. B. die Zeit, Datum oder Eigenschaften der Sendung, der/die beabsichtigte(n) Empfänger des Sendesignals oder dergleichen umfassen. Der Codierer 70 verschlüsselt das verschlüsselte Audiosignal 60 mit Informationssignal 68, um ein doppelt verschlüsseltes Audiosignal 72 zu erzeugen. Der sich zwischen dem Sender 66 und der Relaisstation 76 erstreckende Sendeweg 74 kann einen Sendekanal, eine Mikrowellenverbindung, eine Draht- oder Lichtwellenleiterverbindung oder dergleichen umfassen.
-
Die Relaisstation 76 empfängt ein doppelt verschlüsseltes Audiosignal 72 vom Sender 66, verschlüsselt das Signal mit einem Relaisstationsinformationssignal 78 und sendet das dreifach verschlüsselte Audiosignal 82 an eine Höreinrichtung 86 über einen Sendeweg 84. Die Relaisstation 76 enthält einen Audiosignalcodierer 80, der das doppelt verschlüsselte Audiosignal 72 vom Sender 66 und ein Relaisstationsinformationssignal 78 empfängt. Das Relaisstationsinformationssignal 78 umfaßt vorzugsweise Informationen betreffend die Relaisstation 76, wie z. B. einen Identifikationscode, oder betreffend den Prozeß des Weitergebens des Sendesignals, wie z. B. die Zeit, Datum oder Eigenschaften der Weitergabe, der/die beabsichtigte(n) Empfänger des weitergegebenen Signals oder dergleichen. Der Codierer 80 verschlüsselt das doppelt verschlüsselte Audiosignal 72 mit dem Relaisstationsinformationssignal 78, um das dreifach verschlüsselte Audiosignal 82 zu erzeugen. Der Sendeweg 84 erstreckt sich zwischen der Sendestation 76 und der Höreinrichtung 86 und kann einen Sendekanal, eine Mikrowellenverbindung, eine Draht- oder Lichtquellenleiterverbindung oder dergleichen umfassen. Optional kann der Sendeweg 84 ein akustischer Sendeweg sein.
-
Die Höreinrichtung 86 empfängt das dreifach verschlüsselte Audiosignal 82 von der Relaisstation 76. In Einschaltabschätzanwendungen ist die Höreinrichtung 86 dort angeordnet, wo ein menschlicher Zuhörer eine akustische Wiedergabe des Audiosignals 82 wahrnehmen kann. Wenn das Audiosignal 82 als ein elektromagnetisches Signal gesendet wird, enthält die Höreinrichtung 86 vorzugsweise eine Einrichtung zum akustischen Reproduzieren des Signals für den menschlichen Zuhörer. Wenn jedoch das Audiosignal 82 auf einem Speichermedium gespeichert wird, enthält die Höreinrichtung 86 vorzugsweise eine Einrichtung zum Reproduzieren des Signals 82 vom Speichermedium.
-
In anderen Anwendungen, wie z. B. Musikidentifikation und kommerzielle Überwachung, wird eine Überwachungseinrichtung anstelle einer Höreinrichtung 86 verwendet. In einer derartigen Überwachungseinrichtung wird das Audiosignal 82 vorzugsweise verarbeitet, um die verschlüsselte Nachricht ohne akustische Reproduktion zu empfangen.
-
Der Audiosignaldecodierer 88 kann das dreifach verschlüsselte Audiosignal 82 als ein Audiosignal oder optional als ein akustisches Signal empfangen. Der Decodierer 88 decodiert das Audiosignal 82, um ein oder mehrere darin verschlüsselte(s) Informationssignal(e) wiederherzustellen. Vorzugsweise werden die wiederhergestellten Informationssignale bei der Höreinrichtung 86 verarbeitet oder für eine spätere Verarbeitung auf einem Speichermedium aufgezeichnet.
-
Alternativ kann/können das/die wiederhergestellte(n) Informationssignal(e) in Bilder für eine visuelle Anzeige für den Hörer umgewandelt werden.
-
In einer alternativen Ausführungsform ist die Aufzeichnungseinrichtung 54 aus dem System 50 entfernt. Die Audiosignalspeisung 52, die z. B. eine Live-Audioveranstaltung darstellt, wird direkt an einen Sender 66 zum Verschlüsseln und Senden geliefert. Dementsprechend kann das Senderinformationssignal 68 ferner Informationen betreffend die Audiosignalspeisung 52, wie z. B. Autor, Inhalt oder Abstammung oder das Bestehen von Urheberrecht oder dergleichen umfassen.
-
In einer weiteren alternativen Ausführungsform ist die Relaisstation 76 aus dem System 50 weggelassen. Der Sender 66 liefert ein doppelt verschlüsseltes Audiosignal 72 direkt an einen Zuhörer 86 über den Sendeweg 74, der modifiziert ist, um sich dazwischen zu erstrecken. Als eine weitere Alternative können sowohl die Aufzeichnungseinrichtung 54 als auch die Relaisstation 76 aus dem System 50 weggelassen sein.
-
In einer weiteren alternativen Ausführungsform sind der Sender 66 und die Relaisstation 76 aus dem System 50 weggelassen. Optional ist die Nachrichtenverbindung 64 modifiziert, um sich zwischen der Aufzeichnungseinrichtung 54 und der Höreinrichtung 86 zu erstrecken und dazwischen ein verschlüsseltes Audiosignal 60 zu tragen. Vorzugsweise zeichnet der Audiosignalaufzeichner 62 das verschlüsselte Audiosignal 60 auf einem Speichermedium auf, das nachfolgend zu der Höreinrichtung 86 transportiert wird. Eine optionale Reproduktionseinrichtung bei der Höreinrichtung 86 reproduziert das verschlüsselte Audiosignal aus dem Speichermedium zur Decodierung und/oder akustischen Reproduktion.
-
Die 6 liefert ein Beispiel für ein persönliches tragbares Meßgerät 40 zur Verwendung in Einschaltabschätzanwendungen. Das Meßgerät 90 enthält ein Gehäuse 92, in Phantomlinien dargestellt, mit einer Größe und einer Gestalt, die es erlauben, an der Person eines Mitglieds des Publikums getragen zu werden. Zum Beispiel kann das Gehäuse dieselbe Größe und Gestalt wie eine Pager-Einheit aufweisen.
-
Ein Mikrofon 93 befindet sich in dem Gehäuse 92 und dient als ein akustischer Wandler, um die empfangene akustische Energie, die verschlüsselte Audiosignale enthält, in analoge elektrische Signale umzuwandeln. Die analogen Signale werden von einem Analog/Digital-Wandler in digital umgewandelt und die digitalen Signale werden dann an einen digitalen Signalprozessor (DSP) 95 geliefert. Der DSP 95 implementiert einen Decodierer gemäß der vorliegenden Erfindung, um das Vorhandensein von vorab festgelegten Codes in der von dem Mikrofon 93 empfangenen Audioenergie zu detektieren, die darauf hinweisen, daß die das persönliche tragbare Meßgerät 90 tragende Person einer Sendung einer gewissen Station bzw. eines gewissen Kanals ausgesetzt worden ist. Falls dies der Fall ist, speichert der DSP 95 ein besagte Detektion darstellendes Signal in seinem internen Speicher gemeinsam mit einem zugehörigen Zeitsignal.
-
Das Meßgerät 90 enthält auch einen Datensender/-empfänger, wie z. B. einen mit dem DSP 95 gekoppelten Infrarot-Sender/Empfänger 97. Der Sender/Empfänger 97 ermöglicht es dem DSP 95, seine Daten an eine Einrichtung zur Verarbeitung derartiger Daten von mehreren Meßgeräten 90 zu liefern, um Einschaltabschätzungen zu erzeugen sowie Anweisungen und Daten zu empfangen, z. B. um das Meßgerät 90 zur Durchführung einer neuen Einschaltuntersuchung einzurichten.
-
Die Decodierer gemäß gewisser vorteilhafter Ausführungsformen der vorliegenden Erfindung sind durch das Funktionsblockdiagramm von 7 dargestellt. Ein Audiosignal, das, wie vorangehend beschrieben, mit mehreren Codesymbolen verschlüsselt sein kann, wird an einem Eingang 102 empfangen. Das empfangene Audiosignal kann ein Rundfunk-, Internet- oder auf andere Weise übertragenes Signal oder ein reproduziertes Signal sein. Es kann ein direkt gekoppeltes oder ein akustisch gekoppeltes Signal sein. Anhand der folgenden Beschreibung in Verbindung mit den beigefügten Zeichnungen wird man anerkennen, daß der Decodierer 100 fähig ist, Codes zusätzlich zu denjenigen, die in den vorangehend offenbarten Formaten angeordneten sind, zu detektieren.
-
Für empfangene Audiosignale in dem Zeitbereich transformiert der Decoder 100 derartige Signale mittels einer Funktion 106 zum Frequenzbereich. Die Funktion 106 wird vorzugsweise von einem Digitalprozessor durchgeführt, der eine schnelle Fourier-Transformation (FFT) durchführt, obwohl eine direkte Kosinustransformation, eine Chirp-Transformation oder ein Winograd-Transformations-Algorithmus (WFTA) in einer Alternative verwendet werden könnte. An deren Stelle könnte irgendeine andere Zeit-zu-Frequenzraum-Transformationsfunktion benutzt werden, die die notwendige Auflösung liefert. Man wird anerkennen, daß in gewissen Implementierungen die Funktion 106 auch von analogen oder digitalen Filtern, von einem anwendungsspezifischen integrierten Schaltkreis oder irgendeiner anderen geeigneten Einrichtung oder Kombination von Einrichtungen durchgeführt werden kann. Die Funktion 106 kann auch durch eine oder mehrere Einrichtung(en) implementiert sein, die auch eine oder mehrere der in der 7 dargestellten verbleibenden Funktionen implementiert/implementieren.
-
Die frequenzraum-konvertierten Audiosignale werden in einer Symbolwertableitfunktion 110 verarbeitet, um einen Symbolwertstrom für jedes Codesymbol zu erzeugen, das in dem empfangenen Audiosignal enthalten ist. Die erzeugten Symbolwerte können, z. B., Signalenergie, Leistung, Schalldruckpegel, Amplitude etc., momentan oder über eine Zeitperiode gemessen, in einem absoluten oder relativen Maßstab darstellen und können als ein einziger Wert oder als mehrere Wert ausgedrückt werden. Dort, wo die Symbole als Gruppen mit Einzelfrequenzkomponenten verschlüsselt sind, die jeweils eine vorab festgelegte Frequenz aufweisen, stellen die Symbolwerte vorzugsweise entweder Einzelfrequenzkomponentenwerte oder einen oder mehrere auf Einzelfrequenzkomponentenwerte basierende(n) Wert(e) dar.
-
Die Funktion 110 kann von einem Digitalprozessor, wie z. B. einen digitalen Signalprozessor (DSP), durchgeführt werden, der vorteilhafterweise einige oder alle der anderen Funktionen des Decodierers durchführt. Jedoch kann die Funktion 110 auch von einem anwendungsspezifischen integrierten Schaltkreis oder von irgendeiner anderen geeigneten Einrichtung oder Kombination von Einrichtungen durchgeführt werden und kann sie von einer von dem Mittel, das die verbleibenden Funktionen des Decodierers 100 implementiert, getrennten Vorrichtung implementiert sein.
-
Der Strom von Symbolwerten, der von der Funktion 110 erzeugt wird, wird über die Zeit in einer geeigneten Speichereinrichtung zeichenweise akkumuliert, wie es durch die Funktion 116 angezeigt ist. Insbesondere ist die Funktion 116 zur Verwendung beim Decodieren von verschlüsselten Symbolen, die sich periodisch wiederholen, durch periodisches Akkumulieren von Symbolwerten für die zahlreichen möglichen Symbole vorteilhaft. Wenn z. B. erwartet wird, daß ein gegebenes Symbol alle X Sekunden erneut auftritt, kann die Funktion 116 dazu dienen, einen Strom von Symbolwerten für eine Periode von nX Sekunden (n > 1) zu speichern und den gespeicherten Werten eines oder mehrerer Symbolwertströme mit einer Dauer von nX Sekunden hinzuzufügen, so daß Spitzensymbolwerte über die Zeit auflaufen, wodurch das Signal-zu-Rausch-Verhältnis der gespeicherten Werte verbessert wird.
-
Die Funktion 116 kann von einem Digitalprozessor, wie z. B. einem DSP, durchgeführt werden, der vorteilhafterweise einige oder alle der anderen Funktionen des Decodierers 100 ausführt. Jedoch kann die Funktion 110 auch unter Verwendung einer von besagtem Prozessor separaten Speichereinrichtung oder von einem anwendungsspezifischen integrierten Schaltkreis oder von irgendeiner anderen geeigneten Einrichtung oder Kombination von Einrichtungen durchgeführt und von einer von dem Mittel, das die verbleibenden Funktionen des Decodierers implementiert, getrennten Vorrichtung implementiert werden.
-
Die von der Funktion 116 gespeicherten akkumulierten Symbolwerte werden dann von der Funktion 120 untersucht, um das Vorliegen einer verschlüsselten Nachricht zu detektieren und die detektierte Nachricht an einen Ausgang 126 auszugeben. Die Funktion 120 kann durch Vornahme einer Gleichheitsprüfung der gespeicherten akkumulierten Werte oder einer verarbeiteten Version derartiger Werte gegenüber gespeicherten Muster, egal ob durch Korrelation oder durch irgendeine andere Mustergleichheitsprüfungstechnik durchgeführt werden. Jedoch wird die Funktion 120 vorteilhafterweise durch Untersuchen von akkumulierten Spitzensymbolwerten und deren Zeitablauf durchgeführt, um deren verschlüsselte Nachricht zu rekonstruieren. Diese Funktion kann durchgeführt werden, nachdem der erste Symbolwertstrom von der Funktion 116 gespeichert worden ist, und/oder nachdem jeder nachfolgende Strom hinzuaddiert worden ist, so daß die Nachricht detektiert wird, wenn das Signal-zu-Rausch-Verhältnisse der gespeicherten, akkumulierten Symbolwertströme ein gültiges Nachrichtenmuster zum Vorschein bringen.
-
Die 8 ist ein Flußdiagramm eines Decodierers gemäß einer vorteilhaften Ausführungsform der mittels eines DSP implementierten Erfindung. Ein Schritt 130 ist für diese Anwendungen vorgesehen, in dem das verschlüsselte Audiosignal in analoger Form empfangen wird, z. B. dort, wo es von einem Mikrofon (wie in der Ausführungsform von 6) oder einem RF-Empfänger aufgegriffen worden ist.
-
Der Decodierer von 8 ist besonders gut geeignet zur Detektion von Codesymbolen, von denen jedes mehrere vorab festgelegte Frequenzkomponenten, z. B. zehn Komponenten innerhalb eines Frequenzbereiches von 1000 Hz bis 3000 Hz enthält. Er ist speziell gestaltet, um eine Nachricht mit der in der 3C dargestellten Sequenz zu detektieren, worin jedes Symbol ein Intervall von einer halben Sekunde einnimmt. In dieser beispielhaften Ausführungsform wird angenommen, daß die Symbolgruppe aus zwölf Symbolen besteht, wobei jedes zehn vorab festgelegte Frequenzkomponenten aufweist, von denen keine mit irgendeinem anderen Symbol der Symbolgruppe geteilt wird. Man wird anerkennen, daß der Decoder von 8 leicht modifiziert werden kann, um unterschiedliche Anzahlen von Codesymbolen, unterschiedliche Anzahlen von Komponenten, unterschiedliche Symbolsequenzen und Symboldauern sowie in unterschiedlichen Frequenzbändern angeordnete Komponenten zu detektieren.
-
Zum Trennen der zahlreichen Komponenten führt der DSP wiederholt FFTs an Audiosignalabtastwerten durch, die in aufeinanderfolgende, vorab festgelegte Intervalle fallen. Die Intervalle können sich überlappen, obwohl dies nicht erforderlich ist. In einer beispielhaften Ausführungsform werden zehn überlappende FFTs während jeder Sekunde des Dekodiererbetriebs durchgeführt. Dementsprechend fällt die Energie jeder Symbolperiode in fünf FFT-Perioden. Die FFTs können mit einer Fenstertechnik durchgeführt werden, obwohl dies weggelassen werden kann, um den Decodierer zu vereinfachen. Die Abtastwerte werden gespeichert und, wenn eine ausreichende Anzahl somit verfügbar ist, wird eine neue FFT durchgeführt, wie durch die Schritte 134 und 138 angezeigt.
-
In dieser Ausführungsform werden die Frequenzkomponentenwerte auf einer relativen Basis erzeugt. Das heißt, jeder Komponentenwert wird als ein Signal-zu-Rausch-Verhältnis (SNR) dargestellt, das wie folgt erzeugt wird. Die Energie innerhalb jedes Frequenzbins der FFT, in das eine Frequenzkomponente irgendeines Symbols fallen kann, liefert den Zähler jedes entsprechenden SNR. Sein Nenner wird als ein Mittelwert benachbarter Binwerte bestimmt. Zum Beispiel kann der Mittelwert von sieben der acht umgebenden Binenergiewerte verwendet werden, wobei der größte Wert der acht ausgelassen wird, um den Einfluß eines möglichen großen Binenergiewerts zu vermeiden, der sich, z. B., anhand einer Audiosignalkomponente in der Nähe der Codefrequenzkomponente ergeben könnte. Vorausgesetzt, daß ein großer Energiewert auch in dem Codekomponentenbin, z. B., aufgrund von Rauschen oder einer Audiosignalkomponente auftreten könnte, wird das SNR auch geeignet begrenzt. In dieser Ausführungsform wird das SNR, wenn SNR => 6,0 ist, auf 6,0 begrenzt, obwohl ein anderer maximaler Wert ausgewählt werden kann.
-
Die zehn SNR jeder FFT und entsprechend jedem Symbol, das vorhanden sein kann, werden kombiniert, um Symbol-SNRs zu bilden, die in einem kreisförmigen Symbol SNR-Puffer gespeichert werden, wie in Schritt 142 angezeigt und in der 9 schematisch dargestellt. In gewissen Ausführungsformen werden die zehn SNRs für ein bestimmtes Symbol einfach addiert, obwohl andere Arten des Kombinierens der SNRs verwendet werden können.
-
Wie durch 9 aufgezeigt, werden die Symbol-SNRs für jedes der zwölf Symbole A, B und 0–9 in dem Symbol-SNR-Puffer als separate Sequenzen, ein Symbol-SNR für jede FFT für 50 FFTs gespeichert. Nachdem die in den 50 FFTs erzeugten Werte in dem Symbol-SNR-Puffer gespeichert worden sind, werden neue Symbol-SNRs mit den vorangehend gespeicherten Werten kombiniert, wie es unten beschrieben wird.
-
Wenn der Symbol-SNR-Puffer gefüllt ist, wird dies in einem Schritt 146 detektiert. In gewissen vorteilhaften Ausführungsformen werden die gespeicherten SNRs in einem Schritt 152 eingestellt, um den Einfluß von Rauschen zu verringern, obwohl dieser Schritt in vielen Anwendungen optional ist. In diesem optionalen Schritt wird für jedes Symbol (Zeile) in dem Puffer ein Rauschwert erhalten, der durch Erhalten des Mittelwertes aller gespeicherter Symbol-SNRs in den jeweiligen Zeilen, jedesmal wenn der Puffer gefüllt ist, erhalten wird. Dann wird dieser Mittel- oder „Rausch”-Wert zum Kompensieren der Rauscheffekte von jedem gespeicherten Symbol-SNR-Wert in der entsprechenden Zeile subtrahiert. Auf diese Weise erscheint ein „Symbol” nur kurz und wird somit eine gültige Detektion nicht über die Zeit herausgemittelt. Unter Bezugnahme auch auf die 3C wird zum Vermeiden eines Überhöhens des Rauschwertes am Decodierer vorzugsweise das Verschlüsselungsschema beschränkt, so daß dasselbe Symbol nicht zweimal in der ersten Hälfte der Nachricht (d. h. innerhalb der Symbolsequenz SA, S1, S2, S3, S4) auftritt.
-
Nachdem die Symbol-SNRs durch Subtrahieren des Rauschpegels eingestellt worden sind, versucht der Decodierer, die Nachricht durch Untersuchen des Musters aus maximalen SNR-Werten in dem Puffer in einem Schritt 156 wiederherzustellen. In gewissen Ausführungsformen befinden sich die maximalen SNR-Werte für jedes Symbol in einem Prozeß des aufeinanderfolgenden Kombinierens von Gruppen aus fünf aufeinanderfolgenden SNRs durch Gewichten der Werte in der Sequenz im Verhältnis zur Sequenzgewichtung (6 10 10 10 6) und dann Addieren der gewichteten SNRs, um ein Vergleichs-SNR zu erzeugen, das in der Zeitdauer des dritten SNR in der Sequenz zentriert ist. Dieser Prozeß wird über die 50 FFT-Perioden jedes Symbols voranschreitend durchgeführt. Zum Beispiel wird eine erste Gruppe aus fünf SNRs für das „A”-Symbol in FFT-Perioden 1 bis 5 gewichtet und addiert, um ein Vergleichs-SNR für die FFT-Periode 3 zu erzeugen. Dann wird ein weiteres Vergleichs-SNR unter Verwendung der SNRs aus den FFT-Perioden 2–6 usw. durchgeführt, bis Vergleichswerte erhalten worden sind, die auf den FFT-Perioden 3 bis 48 zentriert sind. Es können jedoch andere Mittel zur Wiederherstellung der Nachricht verwendet werden. Zum Beispiel können entweder mehr oder weniger als fünf SNRs kombiniert werden, können sie ohne Gewichtung kombiniert werden oder können sie in einer nichtlinearen Weise kombiniert werden.
-
Nachdem die Vergleichs-SNR-Werte erzielt worden sind, untersucht der Decodierer die Vergleichs-SNR-Werte auf ein Nachrichtenmuster. Als erstes werden die Markiercodesymbole SA und SB lokalisiert. Wenn diese Information erhalten wird, versucht der Decodierer, die Spitzen der Datensymbole zu detektieren. Die Verwendung eines vorab festgelegten Versatzes zwischen jedem Datensymbol in dem ersten Segment und dem korrespondierenden Datensymbol in dem zweiten Segment liefert eine Überprüfung der Gültigkeit der detektierten Nachricht. Das heißt, wenn beide Markierungen detektiert werden und derselbe Versatz zwischen jedem Datensymbol in dem ersten Segment und seinem korrespondierenden Datensymbol in dem zweiten Segment beobachtet wird, ist es sehr wahrscheinlich, daß eine gültige Nachricht empfangen worden ist.
-
Unter Bezugnahme sowohl auf die 3C als auch auf die 9 sollte eine Spitze P des Vergleichs-SNR unter der Annahme, daß der Beginn des Puffers mit dem Beginn der Nachricht übereinstimmt (was überlicherweise nicht der Fall ist) für das „A”-Symbol in der dritten FFT-Periode erscheinen, wie es aufgezeigt ist. Dann wird der Decodierer erwarten, daß die nächste Spitze in der Position auftaucht, die dem ersten Datensymbol 0–9 in der achten FFT-Periode entspricht. In diesem Beispiel wird angenommen, daß das erste Datensymbol „3” ist. Wenn das letzte Datensymbol „4” ist und der Wert von δ 2 beträgt, wird der Decodierer eine Spitze des Symbols „6” in der FFT-Periode 48 finden, wie es in 9 aufgezeigt ist. Wenn die Nachricht somit detektiert ist (d. h., die mit den Datensymbolen detektierten Markierungen dort auftreten, wo sie erwartet werden, und mit durchgehend demselben Versatz), wie es in den Schritten 162 und 166 aufgezeigt ist, wird die Nachricht aufgenommen oder ausgegeben und wird der SNR-Puffer gelöscht.
-
Wenn jedoch die Nachricht so nicht gefunden wird, werden weitere fünfzig überlappende FFTs an den folgenden Teilen des Audiosignals durchgeführt und die so erzeugten Symbol-SNRs zu den bereits in dem kreisförmigen Puffer vorhandenen addiert. Der Rauscheinstellprozeß wird wie vorher durchgeführt und der Decodierer versucht, wieder das Nachrichtenmuster zu detektieren. Dieser Prozeß wird kontinuierlich wiederholt, bis eine Nachricht detektiert wird. In der Alternative kann der Prozeß eine begrenzte Anzahl von Malen durchgeführt werden.
-
Es wird anhand des Vorangehenden ersichtlich sein, den Betrieb des Decodierers in Abhängigkeit von der Struktur der Nachricht, deren Zeitablauf, deren Signalweg, des Modus von deren Detektion etc. zu modifizieren, ohne aus dem Schutzumfang der vorliegenden Erfindung zu gelangen. Zum Beispiel können die FFT-Ergebnisse anstelle des Speicherns der SNRs zum Detektieren einer Nachricht direkt gespeichert werden.
-
10 ist ein Flußdiagramm eines weiteren Dekodierers gemäß einer weiteren vorteilhaften Ausführungsform, die in ähnlicher Weise mittels eines DSP implementiert ist. Der Decodierer von 10 ist speziell gestaltet, um eine wiederkehrende Sequenz aus fünf Codesymbolen zu detektieren, die aus einem Markiersymbol gefolgt von vier Datensymbolen besteht, wobei jedes Codesymbol mehrere vorab festgelegte Frequenzkomponenten enthält und eine Dauer von einer halben Sekunde in der Nachrichtensequenz aufweist. Man nimmt an, daß jedes Symbol durch zehn eindeutige Frequenzkomponenten dargestellt wird und die Symbolgruppe zwölf unterschiedliche Symbole A, B und 0–9 enthält, wie es im Code von 3C ist. Jedoch kann die Ausführungsform von 9 leicht modifiziert werden, um irgendeine Anzahl von Symbolen zu detektieren, wobei jedes von einer oder mehreren Frequenzkomponente(n) dargestellt wird.
-
Die in dem in 10 dargestellten Decodierprozeß benutzten Schritte, die denjenigen von 8 entsprechen, sind durch dieselben Bezugszeichen gekennzeichnet, und diese Schritte werden demzufolge nicht weiter beschrieben. Die Ausführungsform von 10 verwendet einen kreisförmigen Puffer, der zwölf Symbole breit und 150 FFT-Perioden lang ist. Wenn der Puffer gefüllt worden ist, ersetzen neue Symbol-SNRs diejenigen, die dann die ältesten Symbol-SNR-Werte sind. Effektiv speichert der Puffer ein Fünfzehn-Sekunden-Fenster von Symbol-SNR-Werten.
-
Wenn der kreisförmige Puffer voll ist, werden dessen Inhalte, wie in einem Schritt 174 gezeigt, in einem Schritt 178 untersucht, um das Vorliegen des Nachrichtenmusters zu detektieren. Wenn voll, bleibt der Puffer kontinuierlich voll, so daß die Mustersuche des Schrittes 178 nach jeder FFT durchgeführt werden kann.
-
Da jede Fünf-Symbol-Nachricht sich jede 2½ Sekunden wiederholt, wiederholt sich jedes Symbol in Intervallen von 2½ Sekunden oder jede 25 FFTs. Zur Kompensation der Effekte von Burst-Fehlern und dergleichen werden die SNRs R
1 bis R
150 durch Addieren korrespondierender Werte der wiederkehrenden Nachrichten kombiniert, um 25 kombinierte SNR-Werte SNR
n, n = 1, 2, ... 25, wie folgt zu erhalten:
-
Wenn ein Burst-Fehler zum Verlust eines Signalintervalls i führen sollte, wird dementsprechend nur eines der sechs Nachrichtenintervalle verloren sein und werden die wesentlichen Eigenschaften der kombinierten SNR-Werte wahrscheinlich durch dieses Ereignis unbeeinträchtigt sein.
-
Wenn die kombinierten SNR-Werte bestimmt worden sind, detektiert der Decodierer die Position der durch die kombinierten SNR-Werte angezeigten Spitze des Markiersymbols und leitet er die Datensymbolsequenz auf der Grundlage der Position des Markierers und der Spitzenwerte der Datensymbole ab.
-
Wenn die Nachricht so gebildet worden ist, wie es in den Schritten 182 und 183 gezeigt ist, wird die Nachricht aufgenommen. Anders als die Ausführungsform von 8 wird jedoch der Puffer nicht gelöscht. Stattdessen lädt der Decodierer eine weitere Gruppe mit SNRs in den Puffer und setzt er die Suche nach einer Nachricht fort.
-
Wie in dem Decodierer von 8 wird es anhand des Vorangehenden ersichtlich sein, den Decodierer von 10 für unterschiedliche Nachrichtenstrukturen, Nachrichtenzeitabläufe, Signalwege, Detektionsmodi etc. zu modifizieren, ohne aus dem Umfang des Schutzbereiches der vorliegenden Erfindung zu gelangen. Zum Beispiel kann der Puffer der Ausführungsform von 10 durch irgendeine geeignete Speichereinrichtung ersetzt werden; die Größe des Puffers kann variiert werden; die Größe der SNR-Werte-Fenster kann variiert werden; und/oder die Symbolwiederholzeit kann variieren. Anstelle der Berechnung und Speicherung von Signal-SNRs zur Darstellung der jeweiligen Symbolwerte wird auch ein Maß jedes Symbolwertes relativ zu anderen möglichen Symbolen, z. B., ein Ranking jedes möglichen Symbolbetrags stattdessen in gewissen vorteilhaften Ausführungsformen verwendet.
-
In einer weiteren Variation, die bei Einschaltmeßanwendungen besonders nützlich ist, wird eine relativ große Anzahl von Nachrichtenintervallen separat gespeichert, um eine rückschauende Analyse deren Inhalte zum Detektieren einer Kanaländerung zu erlauben. In einer weiteren Ausführungsform werden mehrere Puffer verwendet, wobei jeder Daten für eine andere Anzahl von Intervallen zur Verwendung in dem Decodierverfahren von 8 akkumuliert. Zum Beispiel könnte ein Puffer ein einziges Nachrichtenintervall, ein anderer zwei akkumulierte Intervalle, ein dritter vier Intervalle, ein vierter acht Intervalle speichern. Es werden dann separate Detektionen auf der Grundlage der Inhalte jedes Puffers zum Detektieren einer Kanaländerung verwendet.
-
Obwohl illustrative Ausführungsformen in der vorliegenden Erfindung und Modifikationen derselben hierin im Detail beschrieben worden sind, sollte es verständlich sein, daß diese Erfindung nicht auf diese genauen Ausführungsformen und Modifikationen beschränkt ist und daß andere Modifikationen und Variationen darin von einem Fachmann auf dem Gebiet bewirkt werden können, ohne aus dem Schutzumfang und dem Geist der Erfindung zu gelangen, wie er durch die beigefügten Ansprüche definiert ist.