PL180441B1 - Sposób i urzadzenie do detekcji koduP ie rw s z e n stw o :31.03.1994,US,08/22101924.03.1995,US,08/408010 PL PL PL PL PL - Google Patents
Sposób i urzadzenie do detekcji koduP ie rw s z e n stw o :31.03.1994,US,08/22101924.03.1995,US,08/408010 PL PL PL PL PLInfo
- Publication number
- PL180441B1 PL180441B1 PL95333769A PL33376995A PL180441B1 PL 180441 B1 PL180441 B1 PL 180441B1 PL 95333769 A PL95333769 A PL 95333769A PL 33376995 A PL33376995 A PL 33376995A PL 180441 B1 PL180441 B1 PL 180441B1
- Authority
- PL
- Poland
- Prior art keywords
- code
- frequency
- audio signal
- amplitude
- components
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 230000005236 sound signal Effects 0.000 claims abstract description 208
- 238000011156 evaluation Methods 0.000 abstract description 2
- 230000000873 masking effect Effects 0.000 description 108
- 238000012545 processing Methods 0.000 description 35
- 230000015654 memory Effects 0.000 description 29
- 230000006870 function Effects 0.000 description 23
- 238000004458 analytical method Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 19
- 238000001514 detection method Methods 0.000 description 18
- 230000005540 biological transmission Effects 0.000 description 17
- 238000012806 monitoring device Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 7
- 238000001914 filtration Methods 0.000 description 7
- 238000005303 weighing Methods 0.000 description 7
- 102100038395 Granzyme K Human genes 0.000 description 6
- 101001033007 Homo sapiens Granzyme K Proteins 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 6
- 230000007704 transition Effects 0.000 description 6
- 238000009826 distribution Methods 0.000 description 5
- 230000003595 spectral effect Effects 0.000 description 4
- 238000001228 spectrum Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000001681 protective effect Effects 0.000 description 3
- 238000012797 qualification Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 108091029480 NONCODE Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000013065 commercial product Substances 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000002592 echocardiography Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000010183 spectrum analysis Methods 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000003892 spreading Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 239000011800 void material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H20/00—Arrangements for broadcast or for distribution combined with broadcast
- H04H20/28—Arrangements for simultaneous broadcast of plural pieces of information
- H04H20/30—Arrangements for simultaneous broadcast of plural pieces of information by a single channel
- H04H20/31—Arrangements for simultaneous broadcast of plural pieces of information by a single channel using in-band signals, e.g. subsonic or cue signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/35—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users
- H04H60/37—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying segments of broadcast information, e.g. scenes or extracting programme ID
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/35—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users
- H04H60/38—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying broadcast time or space
- H04H60/40—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying broadcast time or space for identifying broadcast time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/35—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users
- H04H60/38—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying broadcast time or space
- H04H60/41—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying broadcast time or space for identifying broadcast space, i.e. broadcast channels, broadcast stations or broadcast areas
- H04H60/44—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying broadcast time or space for identifying broadcast space, i.e. broadcast channels, broadcast stations or broadcast areas for identifying broadcast stations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/35—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users
- H04H60/45—Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying users
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/56—Arrangements characterised by components specially adapted for monitoring, identification or recognition covered by groups H04H60/29-H04H60/54
- H04H60/58—Arrangements characterised by components specially adapted for monitoring, identification or recognition covered by groups H04H60/29-H04H60/54 of audio
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04K—SECRET COMMUNICATION; JAMMING OF COMMUNICATION
- H04K1/00—Secret communication
- H04K1/02—Secret communication by adding a second signal to make the desired signal unintelligible
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/10—Frequency-modulated carrier systems, i.e. using frequency-shift keying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/26—Systems using multi-frequency codes
- H04L27/30—Systems using multi-frequency codes wherein each code element is represented by a combination of frequencies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H20/00—Arrangements for broadcast or for distribution combined with broadcast
- H04H20/12—Arrangements for observation, testing or troubleshooting
- H04H20/14—Arrangements for observation, testing or troubleshooting for monitoring programmes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/09—Arrangements for device control with a direct linkage to broadcast information or to broadcast space-time; Arrangements for control of broadcast-related services
- H04H60/13—Arrangements for device control affected by the broadcast information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/09—Arrangements for device control with a direct linkage to broadcast information or to broadcast space-time; Arrangements for control of broadcast-related services
- H04H60/14—Arrangements for conditional access to broadcast information or to broadcast-related services
- H04H60/17—Arrangements for conditional access to broadcast information or to broadcast-related services on recording information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/61—Arrangements for services using the result of monitoring, identification or recognition covered by groups H04H60/29-H04H60/54
- H04H60/63—Arrangements for services using the result of monitoring, identification or recognition covered by groups H04H60/29-H04H60/54 for services of sales
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/61—Arrangements for services using the result of monitoring, identification or recognition covered by groups H04H60/29-H04H60/54
- H04H60/66—Arrangements for services using the result of monitoring, identification or recognition covered by groups H04H60/29-H04H60/54 for using the result on distributors' side
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Television Receiver Circuits (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
- Signal Processing Not Specific To The Method Of Recording And Reproducing (AREA)
- Analogue/Digital Conversion (AREA)
Abstract
1. Sposób detekcji kodu w zakodo- wanym. sygnale dzwiekowym, zawie- rajacym liczne skladowe czestotliwosci sygnalu dzwiekowego i przynajmniej jedna skladowa czestotliwosci kodu o dobranej amplitudzie i czestotliwosci dzwieku do maskowania skladowej czestotliwosci ko- du, ze wzgledu na slyszalnosc ludzkiego ucha, przez przynajmniej jedna z licznych skladowych czestotliwosci sygnalu dzwie- kowego, znamienny tym, ze w kolejnych etapach ustala sie spodziewana amplitude kodu przynajmniej jednej skladowej cze- stotliwosci kodu na podstawie zakodowa- nego sygnalu dzwiekowego i wykrywa sie skladowa czestotliwosc kodu w zakodowa- nym sygnale dzwiekowym na podstawie spodziewanej amplitudy kodu. FIG. 2 PL PL PL PL PL
Description
Przedmiotem wynalazku jest sposób i urządzenie do detekcji kodu stosowanego do kodowania sygnału dźwiękowego.
W ciągu wielu lat zaproponowano wiele sposobów mieszania kodów z sygnałami dźwiękowymi w taki sposób, że kody mogą być w sposób niezawodny odtwarzane z sygnałów dźwiękowych, przy czym pozostają one niesłyszalne przy przetwarzaniu sygnałów dźwiękowych na dźwięk. Osiągnięcie obu tych celów ma kluczowe znaczenie dla praktycznych zastosowań. Na przykład, rozgłośnie i producenci audycji, jak również nagrywający muzykę z publicznej dystrybucji, nie tolerowaliby dołączania słyszalnych kodów do programów lub nagrań.
Sposoby kodowania sygnałów dźwiękowych były wielokrotnie proponowane, począwszy przynajmniej od patentu USA nr 3 004 104, na rzecz Hembroke’ą z 10 października 1961. Hembroke pokazał sposób kodowania, w którym energia sygnału dźwiękowego w wąskim paśmie częstotliwości została selektywnie usunięta w celu zakodowania sygnału. Problem związany z tym sposobem powstaje wówczas, gdy szum lub zakłócenia sygnału ponownie wprowadzają energię do wąskiego pasma częstotliwości, przez co kod jest przesłaniany.
Zgodnie z innym sposobem, opisanym w patencie USA nr 3 845 391 dla Crosby’ego, zaproponowano eliminację wąskiego pasma częstotliwości z sygnału dźwiękowego i umieszczenie tam kodu. Ten sposób posiada tę samą wadę co poprzednie rozwiązanie, co zostało wskazane w patencie USA nr 4 703 476 dla Howarda, który jest związany z patentem Crosby’ego. Jednakże patent Howarda miał na celu jedynie ulepszenie rozwiązania Crosby’ego bez wychodzenia poza jego fundamentalne założenia.
Proponowano również kodowanie binarnych sygnałów w częstotliwościach przechodzących przez cało pasmo dźwiękowe. Problem z takim rozwiązaniem polega na tym, że przy braku składowych sygnału dźwiękowego do maskowania częstotliwości kodu może on stać się słyszalny. Ten sposób przyjmuje, że kody mają charakter podobny do szumów, co sugeruje, że ich obecność będzie ignorowana przez słuchaczy. Jednakże, w wielu przypadkach to założenie nie jest prawdziwe, na przykład w przypadku muzyki klasycznej zawierającej porcje względnie niewielkiej zawartości sygnału dźwiękowego, albo w przypadku przerwy w mowie.
Zaproponowano inny sposób, zgodnie z którym dwutonowe wieloczęstotliwościowe kody (DTMF) są wstawiane do sygnału dźwiękowego. Znaczenie kodu DTMF jest wykrywalne na podstawie jego częstotliwości i czasów trwania. Jednakże, składowe sygnałów dźwiękowych mogą być mylone dla jednego lub obu tonów każdego kodu DTMF, przez co albo obecność kodu może zostać zauważona przez detektor, albo składowe sygnału mogą zostać błędnie odczytane jako elementy kodu DTMF. Ponadto należy stwierdzić, że kod DTMF posiada ton wspólny z innymi kodami DTMF. W wyniku tego, składowa sygnału odpowiadająca tonowi innego kodu DTMF może zostać zmieszana z tonem kodu DTMF, który jest jednocześnie obecny w sygnale, co prowadzi do błędnej detekcji.
Sposób detekcji kodu w zakodowanym sygnale dźwiękowym, zawierającym liczne składowe częstotliwości sygnału dźwiękowego i przynajmniej jedną składową częstotliwości kodu o dobranej amplitudzie i częstotliwości dźwięku do maskowania składowej częstotliwości kodu, ze względu na słyszalność ludzkiego uchą przez przynajmniej jedną z licznych składowych częstotliwości sygnału dźwiękowego, według wynalazku wyróżnia się tym że w kolejnych etapach ustala się spodziewaną amplitudę kodu przynajmniej jednej składowej częstotliwości kodu na podstawie zakodowanego sygnału dźwiękowego i wykrywa się składową częstotliwość kodu w zakodowanym sygnale dźwiękowym na podstawie amplitudy kodu.
Sposób detekcji w zakodowanym sygnale dźwiękowym, zawierającym liczne składowe częstotliwości sygnału dźwiękowego i przynajmniej jedną składową częstotliwość kodu posiadającą założoną amplitudę i założoną częstotliwość dźwięku, do wyróżniania przynajmniej jednej składowej częstotliwości kodu spośród licznych składowych częstotliwości sygnału dźwiękowego, według wynalazku wyróżnia się tym, że w kolejnych etapach wyznacza się amplitudę składowej częstotliwości zakodowanego sygnału dźwiękowego w pierwszym zakresie częstotliwości dźwięku, zawierającym założoną częstotliwość dźwięku przynajmniej jednej składowej częstotliwości kodu, ustala się amplitudę szumu dla pierwszego zakresu częstotliwości dźwięku i wykrywa się obecność przynajmniej jednej składowej częstotliwości
180 441 kodu w pierwszym zakresie częstotliwości dźwięku na podstawie ustalonej amplitudy jego szumu i wyznaczonej amplitudy zawartych w nim składowych częstotliwości.
Urządzenie do detekcji kodu w zakodowanym sygnale dźwiękowym, maskowanego i niesłyszalnego przez ludzkie ucho, według wynalazku wyróżnia się tym, że zawiera elektroniczny analizator sygnału, ustalający spodziewaną amplitudę kodu na podstawie zakodowanego sygnału dźwiękowego oraz połączony z analizatorem elektroniczny detektor kodu, wykrywający składowe częstotliwości kodu w zakodowanym sygnale dźwiękowym na podstawie spodziewanej amplitudy kodu ustalonej przez analizator.
Urządzenie korzystnie zawiera detektor określonej częstotliwości składowej częstotliwości kodu w zakodowanym sygnale dźwiękowym dla określonej częstotliwości, przy czym elektroniczny analizator sygnału ustalający spodziewaną amplitudę kodu jest korzystnie zaopatrzony w komparator amplitudy wykrytej składowej częstotliwości kodu i spodziewanej amplitudy kodu.
Detektor określonej częstotliwości korzystnie stanowi separator rozdzielający zakodowany sygnał dźwiękowy na grupy składowych częstotliwości, z których każda zawiera przynajmniej jedną składową częstotliwości z odpowiedniego zakresu częstotliwości, gdzie pierwsza z grup składowych częstotliwości posiada odpowiedni zakres częstotliwości zawierający częstotliwość dźwięku przynajmniej jednej składowej częstotliwości kodu.
Urządzenie do detekcji kodu w zakodowanym sygnale dźwiękowym według wynalazku wyróżnia się tym, że zawiera elektroniczny analizator sygnału, wyznaczający spodziewaną amplitudę składowej częstotliwości kodu w zakodowanym sygnale dźwiękowym w pierwszym zakresie częstotliwości, zawierającym składową częstotliwość kodu, przelicznik szumu, wyznaczający amplitudę szumu w pierwszym zakresie częstotliwości, oraz połączony z analizatorem sygnału i przelicznikiem szumu detektor elektroniczny, wykrywający obecność składowej częstotliwości kodu na podstawie amplitudy szumu wyliczonej przez przelicznik szumu i amplitudy składowej częstotliwości kodu wyznaczonej przez analizator w pierwszym zakresie częstotliwości.
Rozwiązanie według -wynalazku umożliwia przezwyciężenie wad dotychczas zaproponowanych rozwiązań. Sposób i urządzenie do dekodowania według wynalazku umożliwiają niezawodne odczytywanie kodów z sygnałów dźwiękowych. Przedmiot wynalazku, w przykładzie wykonania, został objaśniony na rysunku, na którym fig. 1 przedstawia schemat blokowy działania kodera, fig. 2 - schemat działania kodera cyfrowego, fig. 3 - schemat blokowy układu kodującego stosowanego do kodowania sygnałów dźwiękowych dostarczanych w postaci analogowej, fig. 4 - rozkłady widmowe służące do ilustracji układów składowych częstotliwości odpowiadających różnym symbolom kodu, po zakodowaniu zgodnie z przykładem realizacji z fig. 3, fig. 5 i 6 - schematy blokowe służące do ilustracji działania przykładu realizacji z fig. 3, fig. od 7A do 7C - sieć działali wykonywaną przez procedurę programu wykorzystywaną w przykładzie realizacji z fig. 3, fig. od 7D do 7E - sieć działań do ilustracji alternatywnej procedury programu wykorzystywanej w przykładzie realizacji z fig. 3, fig. 7F - wykres pokazujący liniowe przybliżenie zależności maskowania pojedynczo tonowego, fig. 8 - schemat blokowy kodera wykorzystującego układ analogowy, fig. 9 - schemat blokowy układu wyznaczania współczynnika wagi dla przykładu realizacji z fig. 8, fig. 10 - schemat blokowy działania dekodera według pewnych własności niniejszego wynalazku, fig. 11 - schemat blokowy dekodera według przykładu realizacji niniejszego wynalazku wykorzystującego cyfrowe przetwarzanie sygnału, fig. 12A i 12B - sieć działań opisująca działanie dekodera z fig. 11, fig. 13 - schemat blokowy dekodera według pewnych przykładów realizacji niniejszego wynalazku, fig. 14 - schemat blokowy przykładu realizacji dekodera analogowego zgodnie z niniejszym wynalazkiem, fig. 15 schemat blokowy detektora składowych według przykładu realizacji z fig. 14, fig. 15, 16 i 17 schematy blokowe urządzenia włączonego w system do wytwarzania oszacowań słuchalność szeroko rozprowadzanych informacji.
Niniejszy wynalazek implementuje sposoby włączania kodu do sygnałów dźwiękowych w celu optymalizacji prawdopodobieństwa dokładnego odtworzenia informacji w kodzie w sygnale, przy zapewnieniu, że gdy sygnał dźwiękowy jest odtwarzany w postaci dźwięku, kod nie jest słyszalny, nawet jeśli przypada na słyszalny zakres częstotliwości.
180 441
Nawiązując do fig. 1, pokazany jest schemat blokowy działania kodera. Sygnał dźwiękowy, który ma zostać zakodowany, jest pobierany w końcówce wejściowej 30. Sygnał dźwiękowy może reprezentować, na przykład, program radiowy, część dźwiękową sygnału telewizyjnego, muzykę albo dowolny inny rodzaj sygnałów dźwiękowych odtwarzanych w podobny sposób. Ponadto, sygnał dźwiękowy może, służyć do prywatnej komunikacji, takiej jak transmisja telefoniczna lub do osobistego zapisu pewnego rodzaju. Jednakże, te przykłady zastosowania są tu wymienione jedynie w celach ilustracyjnych i nie ograniczają obszaru zastosowań wynalazku.
W bloku funkcyjnym oznaczonym numerem 34 na fig. 1 jest obliczana zdolność jednej lub większej ilości składowych pobranego sygnału dźwiękowego do maskowania dźwięków posiadających częstotliwości odpowiadające składowej lub składowym częstotliwości kodu, które mają być dodane do sygnału dźwiękowego. Mogą być wykonywane wielokrotne obliczenia dla pojedynczej częstotliwości kodu, może być wykonywane oddzielne obliczanie dla każdej z licznych częstotliwości kodu, mogą być wykonywane liczne obliczenia dla każdej z licznych częstotliwości kodu, mogą być wykonywane jedno lub więcej wspólne obliczenia dla wielu częstotliwości kodu, albo może być zastosowana kombinacja jednej lub więcej powyższych operacji. Każde obliczenie jest wykonywane na podstawie częstotliwości jednej lub więcej składowych kodu, które mają być zamaskowane, oraz częstotliwości jednej lub wielu) składowej sygnału dźwiękowego, której (których) zdolność maskowania jest właśnie obliczana. W dodatku,.jeśli składowa kodu i składowa lub składowe maskowania dźwięku nie przypadają w zasadniczo tych samych przedziałach sygnału, tak że mogłyby być odtworzone jako dźwięk w znacząco różnych przedziałach czasu, efekty różnic w przedziałach sygnału pomiędzy składową lub składowymi kodu, które są maskowane, i maskującą składową lub składowymi programu, są również brane pod rozwagę.
Z korzyścią, w pewnych przykładach realizacji wykonywane są wielokrotne obliczenia dla każdej składowej kodu poprzez oddzielne rozważenie zdolności różnych części sygnału dźwiękowego do maskowania każdej składowej kodu. W jednym przykładzie realizacji, zdolność każdej z licznych zasadniczo pojedynczych składowych tonalnych sygnału dźwiękowego do maskowania składowej kodu jest obliczana na podstawie częstotliwości składowej sygnału dźwiękowego, jej „amplitudy” (jak to zostanie zdefiniowane) i zależności czasowych składowej kodu, takie maskowanie jest tutaj określane jako „maskowanie tonalne”.
Termin „amplituda” jest używany w niniejszym opisie do określenia dowolnej, jednej lub wielu, wartości określającej sygnał, która może być wykorzystana do oszacowania zdolności maskowania, tak by dobrać rozmiar składowej kodu, do wykrycia jej obecności w odtwarzanym sygnale, oraz do dowolnych innych celów, przy czym mogą być tu wykorzystane takie wartości jak energia, moc, napięcie, natężenie prądu i ciśnienie, bez względu czy mierzone w wartościach bezwzględnych lub względnych, oraz bez względu na to, czy są rozważane wartości chwilowe czy akumulowane. Odpowiednio, amplituda może być mierzona jako średnia okna, średnia arytmetyczna, przez całkowanie pierwiastka kwadratowego wartości, przez akumulację bezwzględnych lub względnych dyskretnych wartości, lub w innych sposób.
W innych przykładach realizacji, w dodatku do oszacowań maskowania tonalnego, lub alternatywnie do nich, obliczana jest zdolność składowych sygnału dźwiękowego ze względnie wąskiego pasma częstotliwości wystarczająco bliskiego danej składowej kodu do maskowania (co jest tu określane jako maskowanie „wąskopasmowe”). W jeszcze innych przykładach realizacji, obliczana jest zdolność licznych składowych kodu we względnie szerokim paśmie częstotliwości do maskowania składowej. W zależności od konieczności lub możliwości, obliczane są zdolności składowych programu dźwiękowego w przedziałach sygnału poprzedzających lub następujących po danej, jednej lub wielu, składowej do jej maskowania w sposób nierównoczesny. Ten sposób szacowania jest szczególnie przydatny, gdy składowe sygnału dźwiękowego w danym przedziale sygnału mają niewystarczająco duże amplitudy dla umożliwienia włączania składowych kodu o wystarczająco dużych amplitudach w tym samym przedziale, przez co byłyby one odróżnialne od szumu.
Z korzyścią, kombinacja dwóch lub więcej zdolności maskowania tonalnego, maskowania wąskopasmowego i zdolności maskowania szerokopasmowego (oraz, jeśli jest to
180 441 konieczne lub odpowiednie, zdolności maskowania niejednoczesnego), są obliczane dla wielu składowych kodu. Gdy składowe kodu są wystarczająco blisko w dziedzinie częstotliwości, nie muszą być wykonywane oddzielne obliczenia dla każdej składowej.
W niektórych innych korzystnych przykładach realizacji, ślizgowa analiza tonalna jest wykonywana zamiast oddzielnych tonalnych, wąsko lub szerokopasmowych analiz, bez konieczności klasyfikacji programu dźwiękowego jako tonalnego, wąskopasmowego lub szerokopasmowego.
Z korzyścią, gdy obliczana jest kombinacja zdolności maskowania, każde obliczenie dostarcza maksymalną dopuszczalną amplitudę dla jednej lub więcej składowych kodu, tak że poprzez porównanie wszystkich obliczeń, które zostały wykonane i które dotyczą danej składowej, wybierana jest maksymalna amplituda, co zapewni, że ta każda składowa będzie zamaskowana przez sygnał dźwiękowy, gdy jest ona odtwarzana jako dźwięk, tak że nie będzie słyszalna dla ludzkiego ucha. Poprzez maksymalizację amplitudy każdej składowej prawdopodobieństwo wykrycia jej obecności na podstawie jej amplitudy jest również zwiększone. Oczywiście, nie jest konieczne zastosowanie największej możliwej amplitudy, co jest niezbędne jedynie przy dekodowaniu, po to by być w stanie rozróżnić wystarczająco, dużą liczbę składowych kodu ze składowych sygnału dźwiękowego lub innego szumu.
Efekty obliczeń są odprowadzane, co oznaczono jako 36 na fig. 1, do generatora kodu 40. Generacja kodu może być wykonywana na wiele różnych sposobów. Jeden ze szczególnie korzystnych sposobów polega na przypisaniu pojedynczego zbioru składowych częstotliwości kodu do każdego z licznych stanów danych lub symboli, przez co, w czasie danego przedziału sygnału, odpowiedni stan danych jest reprezentowany przez obecność jego odpowiedniego zbioru składowych częstotliwości kodu. W ten sposób, nakładanie się wykrywanego kodu ze składowymi sygnału dźwiękowego jest zmniejszone, ponieważ, w korzystnie wysokim procencie przedziałów sygnału, wystarczająco duża ilość składowych kodu będzie wykrywalna pomimo nakładania się składowych dźwiękowych programu na pozostałe składowe. Ponadto, proces implementacji oszacowań maskowania jest uproszczony, gdy częstotliwości składowych kodu są znane przed ich generacją.
Inne postacie kodowania mogą być również zaimplementowane. Na przykład, może być zastosowane kluczowanie częstotliwości z przesuwem (FSK), modulacja częstotliwości (FM), kodowanie hoppingowe, rozsiane widmowe kodowanie, albo kombinacja tych sposobów. Inne sposoby kodowania, które mogą być zastosowane do realizacji niniejszego wynalazku, będą oczywiste z jego opisu.
Dane do zakodowania są pobierane na wejściu 42 generatora kodu 40, który odpowiada poprzez wytworzenie jednoznacznej grupy składowych częstotliwości kodu i przypisanie amplitudy każdej z nich na podstawie obliczeń pobranych z wyjścia 36. Tak wytworzone składowe częstotliwości kodu są dostarczane do pierwszego wejścia układu sumującego 46, który odbiera sygnał dźwiękowy do zakodowania na drugim swym wejściu. Układ 46 dodaje składowe częstotliwości kodu do sygnału dźwiękowego i odprowadza zakodowany sygnał dźwiękowy na swej końcówce wyjściowej 50. Układ 46 może być analogowym bądź cyfrowym układem sumującym, w zależności od postaci doprowadzanych do niego sygnałów. Sumowanie może być również zaimplementowane programowo, oraz, w tym przypadku, cyfrowy procesor do wykonywania oszacowań maskowania i wytwarzania kodu może być również zastosowany do sumowania kodu z sygnałem dźwiękowym. W jednym przykładzie realizacji, kod jest dostarczany jako dane w dziedzinie czasu w postaci cyfrowej, które są następnie sumowane w czasowej dziedzinie danych dźwiękowych. W innym przykładzie, sygnał dźwiękowy jest przekształcany do dziedziny częstotliwości w postaci cyfrowej i dodawany do kodu w podobny sposób reprezentowanego jako cyfrowe dane dziedziny częstotliwości. W większości zastosowań, zsumowane dane w dziedzinie częstotliwości są następnie przekształcane na dane w dziedzinie czasu.
Z powyższego wynika, że szacowanie maskowania, jak również funkcje wytwarzania kodu, mogą być wykonywane poprzez cyfrową lub analogową obróbkę, albo przez ich połączenie. Ponadto, chociaż sygnał dźwiękowy może być odbierany w postaci analogowej w końcówce wyjściowej 30 i dodawany do składowych kodu w postaci analogowej przez układ 46, jak pokazano
180 441 na fig. 1, to, alternatywnie, sygnał dźwiękowy może być przekształcany do postaci cyfrowej przy jego odbiorze, dodawany do składowych kodu w postaci cyfrowej i odprowadzany w cyfrowej bądź analogowej postaci. Na przykład, gdy sygnał ma być nagrany na płycie kompaktowej lub cyfrowej taśmie dźwiękowej, może być on odprowadzany w postaci cyfrowej, podczas gdy jeśli ma być on rozpowszechniany tradycyjną drogą radiową lub telewizyjną, może mieć wyjściową postać analogową. Różne inne kombinacje analogowego i cyfrowego przetwarzania mogą być zaimplementowane.
W pewnych przykładach realizacji, składowe kodu tylko jednego symbolu kodowego w danym czasie są włączane do sygnału dźwiękowego. Jednakże, w innych przykładach realizacji, składowe licznych symboli kodowych są jednocześnie włączane do sygnału dźwiękowego. Na przykład, w pewnych przykładach realizacji składowe jednego symbolu zajmują jedno pasmo częstotliwości, a składowe innego symbolu zajmują jednocześnie inne pasmo częstotliwości. Alternatywnie, składowe jednego symbolu mogą znajdować się w tym samym paśmie co innego, albo ich pasma mogą na siebie nachodzić, tak długo jak te składowe są rozróżnialne, na przykład poprzez przypisanie zasadniczo różnych częstotliwości lub przedziałów częstotliwości.
Przykład realizacji dekodera cyfrowego jest pokazany na fig. 2. W tym przykładzie wykonania, sygnał dźwiękowy w postaci analogowej jest pobierany w końcówce wejściowej 60 i przekształcany· do postaci cyfrowej przez przetwornik A/D 62. Cyfrowy sygnał dźwiękowy jest doprowadzany do oszacowania maskowania, co oznaczono jako blok funkcjonalny 64, przed którym cyfrowy sygnał dźwiękowy jest dzielony na składowe częstotliwości, na przykład przez szybką transformację Fouriera (FFT), transformację falkową („wavelet transformation”) lub inne transformacje z dziedziny czasu do częstotliwości, albo też przez cyfrowe filtrowanie. Następnie, obliczane są zdolności maskowania składowych częstotliwości sygnału dźwiękowego w odpowiedniej paczce częstotliwości określające zdolność maskowania tonalnego, zdolności maskowania wąskopasmowego i zdolność maskowania szerokopasmowego (oraz, jeśli jest to konieczne i odpowiednie, zdolność maskowania niejednoczesnego). Alternatywnie, zdolności maskowania składowych częstotliwości sygnału dźwiękowego w danej paczce częstotliwości są obliczane ze ślizgową analizą tonalną („sliding tonal analysis”).
Kodowane dane są pobierane z końcówki wejściowej 68 i, dla każdego stanu danych odpowiadającego danemu przedziałowi sygnału, wytwarzana jest odpowiednia grupa składowych kodowych, co jest oznaczone funkcjonalnym blokiem generacji sygnału 72, i jest poddawana ustaleniu poziomu, co oznaczono blokiem funkcjonalnym 76, który również pobiera odpowiednie oszacowania maskowania. Generacja sygnału może być zaimplementowana, na przykład, przy pomocy tablicy słownikowej przechowującej każdą ze składowych kodu jako dane w dziedzinie czasu, albo przez interpolację przechowywanych danych. Składowe kodu mogą być albo trwale przechowywane albo generowane po inicjacji systemu z fig. 2 i następnie umieszczane w pamięci, takiej jak RAM, po to by być odprowadzane w odpowiedzi na dane pobierane z końcówki 68. Wartości składowych mogą być również obliczane w czasie, gdy są one generowane.
Ustalenie poziomu jest wykonywane dla każdej ze składowych kodu na podstawie odpowiednich opisanych powyżej oszacowań maskowania, oraz składowe kodu, których amplituda została ustalona dla zapewnienia niesłyszalności, są dodawane do cyfrowego sygnału dźwiękowego, co oznaczono symbolem sumowania 80. W zależności od ilości czasu niezbędnego do wykonania powyższych operacji, może być korzystne opóźnienie cyfrowego sygnału dźwiękowego, co oznaczono przez 82, poprzez tymczasowe przechowanie w pamięci. Jeśli sygnał dźwiękowy nie jest opóźniony, po wykonaniu FFT i oszacowaniu maskowania dla pierwszego przedziału sygnału dźwiękowego, składowe kodu z ustaloną amplitudą są dodawane do drugiego przedziału sygnału dźwiękowego następującego po pierwszym przedziale. Jeśli sygnał dźwiękowy jest opóźniony, składowe kodu z ustaloną amplitudą mogą być dodawane do pierwszego przedziału i jednocześnie może być zastosowane oszacowanie maskowania. Ponadto, jeśli część sygnału dźwiękowego w.czasie pierwszego przedziału zapewnia większą zdolność maskowania składowej kodu dodanej w czasie drugiego przedziału niż część. sygnału dźwiękowego w czasie drugiego przedziału dla tej samej składowej kodu,
180 441 wówczas amplituda może być przypisana składowej kodu na podstawie zdolności niejednoczesnego maskowania części sygnału dźwiękowego w pierwszym przedziale. W ten sposób mogą być oszacowane jednoczesne i niejednoczesne zdolności maskowania, oraz optymalna amplituda może być przypisana do każdej składowej kodu na podstawie najkorzystniejszego z oszacowań.
W pewnych zastosowaniach, takich jak audycje radiowe lub analogowe nagrywanie (tak jak na przykład na klasycznej kasecie taśmowej), zakodowany sygnał dźwiękowy w postaci cyfrowej jest przekształcany do analogowej postaci przez przetwornik cyfrowo - analogowy (DAC) 84. Jednakże, gdy sygnał ma być przesłany lub zapisany w postaci cyfrowej, DAC 84 może zostać pominięty.
Różne funkcje pokazane na fig. 2 mogą być zaimplementowane, na przykład przez cyfrowy procesor sygnałowy albo komputer osobisty, stację roboczą lub duży system komputerowy, lub inny cyfrowy komputer.
Figura 3 przedstawia schemat blokowy systemu kodującego do kodowania sygnałów dźwiękowych dostarczanych w postaci analogowej, takich jak klasyczne audycje radiowe. W systemie z fig. 3, główny procesor 90, którym może być na przykład komputer osobisty, zarządza selekcją i generacją informacji, która ma być zakodowana i włączona do analogowego sygnału dźwiękowego pobranego z wejściowej końcówki 94. Główny procesor 90 jest sprzężony z klawiaturą 96 i z monitorem 100, takim jak monitor CRT, tak że użytkownik może wybrać żądaną informację do zakodowania poprzez wybór z menu dostępnych informacji, wyświetlanego na monitorze 100. Typowa informacja do kodowania w sygnale audycji radiowej może zawierać informację identyfikacyjną kanału lub stacji, program lub segment informacji, i/lub kod czasu.
Gdy żądana informacja została wprowadzona do głównego procesora 90, procesor odprowadza dane reprezentujące symbole informacji do cyfrowego procesora sygnałowego (DSP) 104, który z kolei koduje każdy symbol otrzymany z głównego procesora 90 w postaci unikalnego zbioru składowych sygnału kodu, jak opisano poniżej. Zgodnie z jednym przykładem realizacji, główny procesor generuje czterostanowy strumień danych, to znaczy strumień danych, w którym każda jednostka danych może przyjmować jeden z czterech różnych stanów, z których każdy reprezentuje unikalny symbol, włączając w to symbole synchronizacji nazywane „E” i „S”, oraz dwa symbole informacji „1” i „0” reprezentujące odpowiedni stan binarny. Oczywiście, dowolna liczba rozróżnialnych stanów danych może być wykorzystana. Na przykład, zamiast dwóch symboli informacji, trzystanowe dane mogą być reprezentowane przez trzy różne symbole, co umożliwia przenoszenie odpowiednio większej ilości informacji w strumieniu danych o danym rozmiarze.
Na przykład, gdy sygnał dotyczy mowy, korzystne jest przesyłanie symbolu przez względnie długi okres czasu w porównaniu z audycją posiadającą zasadniczo bardziej ciągłą zawartość energii, w celu umożliwienia wystąpienia naturalnych przerw obecnych w mowie. Zgodnie z tym, w celu zapewnienia wystarczająco dużej w tym przypadku przepustowości informacji, ilość możliwych symboli informacji może być z korzyścią zwiększona. Dla symboli reprezentujących do pięciu bitów, długości transmisji sygnału równe 2, 3 i 4 sekundy zapewniają wzrastająco większe prawdopodobieństwa poprawnego dekodowania. W niektórych takich przykładach realizacji, początkowy symbol („E”) jest dekodowany, gdy energia paczki FFT dla tego symbolu jest największa, gdy średnia energia minus standardowe odchylenie energii dla tego symbolu jest większa od średniej energii plus średnie standardowe odchylenie energii dla wszystkich innych symboli, oraz gdy kształt wykresu energii w funkcji czasu ma zasadniczo kształt dzwonowy, ze szczytem w czasowym międzysymbolowym obrzeżem.
W przykładzie realizacji pokazanym na fig. 3, gdy DSP 104 odbierze symbole danej informacji, które mają być zakodowane, odpowiada poprzez generację unikalnego zbioru składowych częstotliwości kodu dla każdego symbolu, który to zbiór odprowadza na wyjście 106. Nawiązując również do fig. 4, pokazane są widmowe wykresy dla każdego z czterech symboli danych S, E, 0 i 1 przykładowego opisanego zbioru danych. Jak pokazano na fig. 4, w tym przykładzie realizacji symbol S jest reprezentowany przez unikalną grupę dziesięciu
180 441 składowych częstotliwości kodu od fl do flO rozmieszczone w jednakowych odstępach w zakresie częstotliwości rozciągającym się od wartości częstotliwości nieznacznie większej niż 2 kHz do wartości częstotliwości nieznacznie mniejszej niż 3 kHz. Symbol E jest reprezentowany przez drugą unikalną grupę dziesięciu składowych częstotliwości kodu od fl 1 do f20, rozmieszczonych w widmie częstotliwości w równych odstępach od pierwszej wartości częstotliwości nieznacznie większej od 2 kHz do wartości częstotliwości nieznacznie mniejszej od 3 kHz, gdzie każda ze składowych kodu od Η1 do f20 posiada unikalną wartość częstotliwości różną od wszystkich wartości z tej samej grupy, jak również od wszystkich częstotliwości od fl do flO. Symbol 0 jest reprezentowany przez kolejną unikalną grupę dziesięciu składowych częstotliwości kodu od f21 do f30, również rozmieszczonych w widmie częstotliwości w równych odstępach od pierwszej wartości częstotliwości nieznacznie większej od 2 kHz do wartości częstotliwości nieznacznie mniejszej od 3 kHz, gdzie każda ze składowych kodu posiada unikalną wartość częstotliwości różną od wszystkich wartości z tej samej grupy, jak również od wszystkich częstotliwości od fl do f20. W końcu, symbol 1 jest reprezentowany przez kolejną unikalną grupę dziesięciu składowych częstotliwości kodu od f31 do f40, rozmieszczonych w widmie częstotliwości w równych odstępach od pierwszej wartości częstotliwości nieznacznie większej od 2 kHz do wartości częstotliwości nieznacznie mniejszej od 3 kHz, gdzie każda ze składowych kodu od f31 do f40 posiada unikalną wartość częstotliwości różną od wszystkich częstotliwości od fl do f40. Poprzez zastosowanie licznych składowych częstotliwości kodu dla każdego ze stanów danych, tak że składowe kodu każdego stanu są zasadniczo różne od siebie w częstotliwości, obecność szumu (takiego jak niekodowe składowe sygnału dźwiękowego lub innego szumu) we wspólnym paśmie wykrywania z dowolną składową szumu danego stanu danych jest mniej prawdopodobna i mniej prawdopodobne jest wzajemne nakładanie.
W innych przykładach realizacji, korzystne jest reprezentowanie symboli przez liczne składowe częstotliwości, na przykład przez dziesięć tonów lub składowych częstotliwości kodu, które nie są jednorodnie rozstawione w dziedzinie częstotliwości, oraz które nie mają tego samego przesunięcia między symbolami. Unikanie całkowej zależności pomiędzy częstotliwościami kodu dla symbolu poprzez grupowanie tonów zmniejsza efekty międzyczęstotliwościowego dudnienia lub pustych pomieszczeń, to znaczy miejsc, w których echo odbite od ścian wpływa na poprawne dekodowanie. Następujące zbiory składowych częstotliwości tonów kodu dla czterech symboli są zapewnione dla znoszenia efektów pustych pomieszczeń, gdzie fl do flO reprezentują odpowiednie składowe częstotliwości (wyrażone w Hertzach) kodu dla każdego z czterech symboli:
0” | 1” ,5 1 | „S” | „E” | |
fl | 1046.9 | 1054.7 | 1062.5 | 1070.3 |
f2 | 1195.3 | 1203.1 | 1179.7 | 1187.5 |
β | 1351.6 | 1343.8 | 1335.9 | 1328.1 |
f4 | 1492.2 | 1484.4 | 1507.8 | 1500.0 |
f5 | 1656.3 | 1664.1 | 1671.9 | 1679.7 |
f6 | 1859.4 | 1867.2 | 1843.8 | 1851.6 |
f7 | 2078.1 | 2070.3 | 2062.5 | 2054.7 |
f8 | 2296.9 | 2289.1 | 2304.7 | 2312.5 |
f9 | 2546.9 | 2554.7 | 2562.5 | 2570.3 |
flO | 2859.4 | 2867.2 | 2843.8 | 2851.6 |
Mówiąc ogólnie, w tych pokazanych powyżej przykładach, zawartość widmowa kodu zmienia się względnie mało, gdy DSP 104 przełącza swe wyjście z któregokolwiek ze stanów S, E, 0 i 1 na którykolwiek inny z nich. Zgodnie z jednym aspektem niniejszego wynalazku
180 441 w pewnych korzystnych przykładach realizacji, każda składowa częstotliwości kodu każdego symbolu jest w parze z składową częstotliwości każdego z innych stanów danych, tak że różnica między nimi jest mniejsza niż ich krytyczna szerokość pasma. Dla dowolnej pary czystych tonów, krytyczna szerokość pasma jest zakresem częstotliwości, w którym odstęp częstotliwości pomiędzy dwoma tonami może się zmieniać bez zasadniczego zwiększania głośności. Gdy odstęp pomiędzy sąsiednimi tonami w przypadku każdego ze stanów danych S, E, 0 i 1, oraz gdy każdy ton każdego ze stanów danych jest w parze z odpowiednim tonem każdego z innych z tych stanów, tak że różnica częstotliwości pomiędzy nimi jest mniejsza niż krytyczna szerokość pasma dla tej pary, zasadniczo nie wystąpi żadna zmiana głośności przy przechodzeniu z dowolnego ze stanów danych S, E, 1 i 0 do dowolnego innego stanu danych, w czasie odtwarzania jako dźwięk. Ponadto, poprzez zminimalizowanie różnicy częstotliwości pomiędzy składowymi częstotliwości kodu każdej pary, odpowiednie prawdopodobieństwa wykrycia każdego stanu danych przy odbiorze nie zależy zasadniczo od toru transmisyjnego. Kolejna korzyść z parowania składowych różnych stanów danych polega na tym, że oszacowanie maskowania wykonywane dla składowej kodu pierwszego stanu danych będzie zasadniczo dokładne dla następnego stanu danych, jeśli ma miejsce przełączanie.
Alternatywnie, przy rozwiązaniu przewidującym niejednorodne rozstawienie tonów kodu mającym na celu minimalizację efektów pustych pomieszczeń, widoczne jest, że częstotliwości wybrane dla każdej ze składowych częstotliwości kodu od fl do fl 0 są grupowane wokół pewnej częstotliwości, na przykład składowe częstotliwości dla fl, f2 i f3 są ulokowane w sąsiedztwie, odpowiednio, 1055 Hz, 1180 Hz i 1340 Hz. W tym konkretnym przykładzie realizacji, tony są rozstawione o odległość dwukrotnie większą od rozdzielczości FFT, na przykład dla rozdzielczości 4 Hz tony są pokazane w odstępach 8 Hz, oraz są tak wybrane, by były w środku zakresu częstotliwości paczki FFT. Również, porządek różnych częstotliwości, które są przypisane do składowych częstotliwości kodu od fl do flO do reprezentowania różnych symboli 0, 1, S, E zmienia się w każdej grupie. Na przykład, częstotliwości wybrane dla składowych fl, f2 i f3 odpowiadają symbolom (0, 1, S, E), (S, E, 0, 1) i (E, S, 1, 0), odpowiednio od najmniejszej do największej, to znaczy (1046.9, 1054.7, 1062.5, 1070.2), (1179.7, 1187.5, 1195.3, 1203.1), (1328.1, 1335.9, 1343.8, 1351.6). Korzyść z takiego rozwiązania jest taka, że nawet jeśli występuje pusta przestrzeń, która interferuje z odpowiednim odbiorem składowej kodu, generalnie ten sam ton jest eliminowany z każdego z symboli, przez co łatwiej jest dekodować symbol z pozostałych składowych. W przeciwieństwie, jeśli pusta przestrzeń eliminuje składową z jednego z symboli, lecz nie z innych, trudniejsze jest prawidłowe zdekodowanie symbolu.
Można stwierdzić, że do kodowania może być stosowane więcej lub mniej niż 4 symbole. Ponadto, każdy stan danych lub symbol może być reprezentowany przez mniej lub więcej niż dziesięć tonów kodu, oraz chociaż korzystne jest reprezentowanie każdego stanu danych przez tę samą liczbę tonów, nie jest konieczne, by we wszystkich zastosowaniach liczba tonów użyta do reprezentowania każdego stanu danych była taka sama. Z korzyścią, każdy z tonów kodu różni się w postaci częstotliwościowej od każdego z innych tonów kodu w celu zwiększenia prawdopodobieństwa rozróżnienia każdego ze stanów danych w czasie dekodowania. Jednakże, nie jest konieczne we wszystkich zastosowaniach, by żadna z częstotliwości tonu kodu nie była wspólna dla dwóch lub więcej stanów danych.
Figura 5 jest blokowym schematem funkcjonalnym, do którego nawiązuje się przy wyjaśnianiu operacji kodowania wykonywanej przez przykład realizacji z fig. 3. Jak wspomniano powyżej, DSP 104 otrzymuje dane z głównego procesora 90 wysyłającego serię stanów danych do DSP 104 jako składowe częstotliwości kodu. Z korzyścią, DSP 104 generuje tablicę słownikową reprezentacji w dziedzinie czasu każdej ze składowych częstotliwości kodu od fl do f40, które są następnie przechowywane w jego pamięci RAM, reprezentowanej jako pamięć 110 z fig. 5. W odpowiedzi na dane otrzymane z głównego procesora 90, DSP 104 generuje odpowiedni adres, który jest stosowany jako adres wejściowy do pamięci 110, co oznaczono przez 112 na fig. 5, co powoduje, że pamięć 110 odprowadza na wyjściu dane w dziedzinie czasu dla każdej z dziesięciu składowych częstotliwości odpowiadających stanowi danych, który ma być odprowadzany w danym czasie.
180 441
Nawiązując również do fig. 6, która przedstawia funkcjonalny schemat blokowy ilustrujący pewne operacje wykonywane przez DSP 104, pamięć 110 przechowuje sekwencje wartości w dziedzinie czasu dla każdej ze składowych częstotliwości dla każdego z symboli S, E, 0 i 1. W tym szczególnym przykładzie realizacji, jeśli składowe częstotliwości kodu są z zakresu od 2 kHz do około 3 kHz, wystarczająco duża ilość próbek w dziedzinie czasu jest przechowywana w pamięci 110 dla każdej ze składowych częstotliwości od fl do f40, przez co mogą być one odprowadzane z częstotliwością większą od częstotliwości Nyquista składowej kodu o największej częstotliwości. Składowe kodu w dziedzinie czasu sa odprowadzane z odpowiednio duża częstotliwością z pamięci 110, która przechowuje składowe w dziedzinie czasu dla każdej ze składowych częstotliwości kodu reprezentujące założone czasy trwania, tak że składowe w dziedzinie czasu (n) są przechowywanie dla każdej ze składowych częstotliwości kodu od fl do f40 dla (n) przedziałów od tl do tn, jako pokazano na fig. 6. Na przykład, jeśli symbol S ma być zakodowany w czasie danego przedziału sygnału, w czasie pierwszego przedziału tl, pamięć 110 odprowadza składowe w dziedzinie czasu od fl do flO odpowiadające temu przedziałowi. W następnym przedziale czasu, składowe w dziedzinie czasu fl do flO dla przedziału t2 są odprowadzane z pamięci 110. Ten proces jest sekwencyjnie kontynuowany dla przedziałów od t3 do tn, oraz z powrotem począwszy od tl, aż do zakończenia trwania zakodowanego symbolu S.
W pewnych przykładach realizacji, zamiast odprowadzania wszystkich dziesięciu składowych kodu, to znaczy od fl do flO, w przedziale czasu, jedynie te ze składowych leżące w paśmie krytycznym tonów sygnału dźwiękowego sa odprowadzane. Jest to zasadniczo konserwatywne podejście do zapewniania niesłyszalności składowych kodu.
Nawiązując ponownie do fig. 5, DSP 104 służy również do ustalania amplitud składowych w dziedzinie czasu odprowadzanych z pamięci 110 w taki sposób, że gdy składowe częstotliwości kodu są odtwarzane jako dźwięk, będą zamaskowane przez składowe sygnału dźwiękowego, do którego zostały włączone tak że pozostają niesłyszalne dla ludzkiego ucha. Poza tym do DSP 104 jest również doprowadzany sygnał dźwiękowy otrzymany z końcówki wejściowej 94 po odpowiednim przefiltrowaniu i konwersji analogowo-cyfrowej. Mówiąc dokładniej, koder z fig. 3 zawiera analogowy filtr pasmowy 120, który służy do zasadniczego usuwania składowych częstotliwości sygnału dźwiękowego z poza wchodzącego w grę pasma do obliczenia zdolności maskowania odebranego sygnału dźwiękowego, który w niniejszym przykładzie realizacji jest z przedziału od około 1,5 kHz do około 3,2 kHz. Filtr 120 służy również do usuwania składowych wysokoczęstotliwościowych z sygnału dźwiękowego, które mogą powodować aliasing, gdy sygnał jest kolejno przekształcany na postać cyfrową przez przetwornik analogowo-cyfrowy (A/D) 124, operujący z wystarczająco dużą częstością próbkowania.
Jak pokazano na fig. 3, cyfrowy sygnał dźwiękowy jest dostarczany przez przetwornik A/D 124 do DSP 104, gdzie, jak oznaczono przez 130 na fig. 5, sygnał dźwiękowy programu jest poddawany dzieleniu zakresu częstotliwości. W tym szczególnym przykładzie realizacji, dzielenie zakresu częstotliwości jest wykonywane jako szybka transformacja Fouriera (FFT), która jest wykonywana okresowo z lub bez czasowego zachodzenia dla wytworzenia kolejnych paczek częstotliwości, z których każda posiada założoną szerokość częstotliwości. Dostępne są również inne sposoby segregowania składowych częstotliwości sygnałów dźwiękowych, takie jak transformacja falkowa, dyskretna transformacja Walsha - Hadamarda, dyskretna transformacja Hadamarda, dyskretna transformacja kosinusowa, jak również liczne sposoby filtrowania.
Po tym jak DSP 104 podzielił skibowe częstotliwości cyfrowego sygnału dźwiękowego na kolejne paczki częstotliwości, jak wspomniano powyżej, przechodzi on do oszacowania zdolności różnych składowych częstotliwości obecnych w sygnale dźwiękowym do maskowania różnych składowych kodu odprowadzany przez pamięć 110, oraz do wytwarzania odpowiednich ustawień współczynników amplitud, które służą do ustalania amplitud różnych składowych częstotliwości kodu, tak że będą one maskowane przez sygnał dźwiękowy programu przy odtwarzaniu jako dźwięk, tak że pozostaną niesłyszalne dla ucha ludzkiego. Te operacje są reprezentowane przez blok 134 na fig. 5.
Dla składowych sygnału dźwiękowego, które sa zasadniczo jednoczesne ze składowymi częstotliwości kodu, które mają maskować (lecz które poprzedzają składowe częstotliwości
180 441 kodu o krótki okres czasu), zdolność maskowania składowych programu dźwiękowego jest szacowana na podstawie tonalnej, jak również na podstawie wąskiego pasma maskowania, oraz na podstawie szerokiego pasma maskowania, jak opisano poniżej. Dla każdej ze składowych częstotliwości kodu, która jest odprowadzana w danym czasie z pamięci 110, zdolność maskowania tonalnego jest obliczana dla każdej z licznych składowych częstotliwości sygnału dźwiękowego na podstawie poziomu energii w każdej z odpowiednich paczek, na które te składowe przypadają, jak również na podstawie zależności częstotliwościowych każdej paczki i odpowiedniej składowej częstotliwości kodu. Oszacowanie w każdym z przypadków (maskowanie tonalne, wąskopasmowe, szerokopasmowe) może mieć postać współczynnika ustalenia amplitudy lub innego pomiaru umożliwiającego przypisanie amplitudy składowej kodu w taki sposób, że składowa kodu będzie maskowana przez sygnał dźwiękowy. Alternatywnie, oszacowanie może być ślizgową analizą tonalną.
W przypadku maskowania wąskopasmowego, w tym przykładzie realizacji dla każdej odpowiedniej składowej częstotliwości kodu jest obliczana zawartość energii częstotliwości poniżej założonego poziomu w założonym paśmie częstotliwości, w tym obliczana jest odpowiednia składowa częstotliwości kodu dla uzyskania oddzielnego oszacowania zdolności maskowania. W pewnych implementach zdolność maskowania wąskopasmowego jest mierzona na podstawie zawartości energii składowych częstotliwości sygnału przypadających poniżej średniego poziomu energii paczki w założonym paśmie w częstotliwości. W tej implementacji, poziomy energii składowych poniżej średniej energii paczki (będącej progiem energii) są sumowane dla wytworzenia poziomu energii wąskopasmowej, dzięki któremu identyfikuje się odpowiednie składowe kodu. Zamiast tego może być wytwarzany inny poziom energii wąskopasmowej poprzez wybranie składowej progowej innej niż średni poziom energii. Ponadto, zgodnie z innymi przykładami realizacji, średni poziom energii wszystkich składowych sygnału dźwiękowego może być użyty jak poziom energii wąskopasmowej dla przypisania oszacowania maskowania wąskopasmowego do odpowiedniej składowej kodu. Zgodnie z jeszcze innymi przykładami realizacji, w tym celu stosowana jest zawartość energii tonalnej składowych sygnału dźwiękowego w założonym paśmie częstotliwości, podczas gdy w innych przykładach realizacji stosowany jest poziom minimalnej składowej w założonym paśmie częstotliwości.
W końcu, w pewnych implementacjach wyznaczana jest zawartość energii szerokopasmowej sygnału dźwiękowego dla obliczenia zdolności sygnału dźwiękowego do maskowania odpowiedniej składowej częstotliwości kodu poprzez maskowanie szerokopasmowe. W tym przykładzie realizacji, oszacowanie szerokopasmowego maskowania opiera się na minimalnym poziomie energii wąskopasmowej wyznaczonym w czasie szacowania maskowania wąskopasmowego, opisanego powyżej. To znaczy, jeśli cztery oddzielne założone pasma częstotliwości zostały przebadane w czasie szacowania wąskopasmowego maskowania, jak opisano powyżej, oraz szum szerokopasmowy jest włączany do minimalnego poziomu energii wąskopasmowej spośród wszystkich czterech założonych pasm częstotliwości (wyznaczonych), wówczas ten minimalny poziom energii wąskopasmowej jest mnożony przez współczynnik równy stosunkowi zakresu częstotliwości do szerokości założonego pasma częstotliwość posiadającego minimalny poziom energii wąskopasmowej. Wynik wskazuje dopuszczalny całkowity poziom mocy kodu. Jeżeli całkowity dopuszczalny poziom mocy kodu jest oznaczony jako P, a kod zawiera dziesięć składowych kodu, każdej z nich jest wówczas przypisywany współczynnik ustalenia amplitudy, by dać w efekcie poziom mocy składowej, który jest mniejszy o 10 dB niż P. Alternatywnie, szum szerokopasmowy jest obliczany dla założenia względnie szerokiego pasma obejmującego składowe kodu, poprzez wybór jednego ze sposobów opisanych powyżej, do szacowania poziomu energii wąskopasmowej, ale przy zastosowaniu składowych sygnału dźwiękowego z całego założonego, względnie szerokiego pasma. Po wyznaczeniu szumu szerokopasmowego w wybrany sposób, odpowiednie oszacowanie szerokopasmowego maskowania jest przypisywane do każdej odpowiedniej składowej kodu.
Współczynnik ustalania amplitudy dla każdej składowej częstotliwości kodu jest wybierany następnie na takiej podstawie, że jedno z totalnych, szerokopasmowych lub wąskopasmowych oszacowań maskowania daje najwyższy dopuszczalny poziom amplitudy dla odpowiedniej
180 441 składowej. Zwiększa to prawdopodobieństwo, że każda odpowiednia składowa częstotliwości kodu będzie maskowana w taki sposób, że pozostanie niesłyszalna dla ludzkiego ucha.
Współczynniki ustalania amplitudy sa dobrane dla każdego z tonalnych, wąskopasmowych i szerokopasmowych maskowań na podstawie następujących współczynników i warunków. W przypadku maskowania tonalnego, współczynniki są przypisywane na podstawie częstotliwości składowych sygnału dźwiękowego, których zdolności maskowania są szacowane, oraz częstotliwości, jednej lub wielu, maskowanej składowej kodu. Ponadto, dany sygnał dźwiękowy w dowolnym wybranym przedziale zapewnia zdolność do maskowania danej składowej kodu w tym samym przedziale (tzn. maskowanie jednoczesne) przy maksymalnym poziomie większym niż ten, przy którym ten sam sygnał dźwiękowy jest w stanie maskowania tę samą składową kodu występującą przed lub po wybranym przedziale (tzn. maskowanie niejednoczesne). Warunki, w których zakodowany sygnał dźwiękowy będzie słyszalny przez słuchaczy, w sposób odpowiedni, są również wzięte pod uwagę. Na przykład, jeśli dźwięk sygnału telewizyjnego ma być zakodowany, efekty zniekształcające typowego otoczenia do słuchania są z korzyścią wzięte pod uwagę, jeśli w takich okolicznościach niektóre częstotliwości są bardziej zniekształcone niż inne. Wyposażenie do odbioru i odtwarzania (takie jak korektory graficzne) może wykorzystywać podobne efekty. Efekty związane z otoczeniem lub urządzeniami mogą być skompensowane przez wybór wystarczająco niskich współczynników ustalania amplitudy dla zapewniania maskowania w spodziewanych warunkach.
W pewnych przykładach realizacji tylko jedna z tonalnych wąskopasmowych lub szerokopasmowych zdolności jest szacowana. W innych przykładach realizacji dwa spośród tych różnych typów zdolności maskowania są szacowane, a w jeszcze innych przykładach realizacji wszystkie trzy są wykorzystywane.
W pewnych przykładach realizacji wykonywana jest ślizgowa analiza tonalna do oszacowania zdolności maskowania przez sygnał dźwiękowy. Ślizgowa analiza tonalna zasadniczo spełnia reguły maskowania dla szumu wąskopasmowego, szerokopasmowego i pojedynczych tonów bez konieczności klasyfikacji dźwięku. W ślizgowej analizie tonalnej, sygnał dźwiękowy jest rozpatrywany jako zbiór dyskretnych tonów, z których każdy jest wyśrodkowany w odpowiedniej paczce częstotliwości FFT. Generalnie, ślizgowa analiza tonalna najpierw wylicza moc sygnału dźwiękowego w każdej paczce FFT. Następnie, dla każdego tonu kodu, efekty maskowania dyskretnych tonów sygnału dźwiękowego w każdej paczce FFT podzielonej częstotliwościowo przez nie więcej niż krytyczna szerokość pasma tonu dźwiękowego są obliczane na podstawie mocy sygnału dźwiękowego w każdej takiej paczce, przy wykorzystaniu zależności maskowania dla maskowań przez pojedyncze tony. Efekty maskowania wszystkich odpowiednich dyskretnych tonów z sygnału dźwiękowego są sumowane dla każdego tonu kodu, następnie ustawiane dla liczby tonów w krytycznym paśmie tonów sygnału dźwiękowego i złożoności sygnału dźwiękowego. Jak wyjaśniono poniżej, w pewnych przykładach realizacji, złożoność materiału programu jest empirycznie określana na podstawie stosunku mocy w odpowiednich tonach sygnału dźwiękowego i pierwiastka z sumy kwadratów mocy w tych tonach sygnału dźwiękowego. Złożoność służy do stwierdzenia faktu, że wąskopasmowy szum i szerokopasmowy szum, każdy, zapewniają znacznie lepsze efekty maskowania niż te uzyskane przez proste sumowanie tonów zastosowane do modelowania wąskopasmowego i szerokopasmowego szumu.
W pewnych przykładach realizacji, które wykorzystują ślizgową analizę tonalną założona liczba próbek sygnału dźwiękowego jest najpierw poddawana dużej FFT, co zapewnia dużą rozdzielczość lecz wymaga dłuższego czasu przetwarzania. Następnie kolejne porcje założonej liczby próbek są poddawane względnie mniejszej FFT, która jest szybszą lecz zapewnia mniejszą rozdzielczość. Współczynniki amplitudy wyznaczone z dużej FFT są łączone z tymi wyznaczonymi z mniejszej FFT, co zasadniczo odpowiada czasowemu ważeniu wyższej „dokładności częstotliwości” dużej FFT przez większą „precyzję czasową” mniejszej FFT.
W przykładzie wykonania pokazanym na fig. 5, po wybraniu odpowiedniego współczynnika ustalania amplitudy dla każdej ze składowych częstotliwości kodu wyprowadzanej z pamięci 110, DSP 104 ustala odpowiednio amplitudę każdej ze składowych częstotliwości, co oznaczono przez blok funkcjonalny ustalanie amplitudy” 114. W innych przykładach
180 441 realizacji, każda składowa częstotliwości kodu jest początkowo generowana w taki sposób, by jej amplituda pasowała do jej odpowiedniego współczynnika ustalenia. Nawiązując do fig. 6, operacja ustalania amplitudy wykonywana przez DSP 104 w tym przykładzie realizacji prowadzi do mnożenia wybranych dziesięciu wartości z częstotliwości kodu w dziedzinie czasu od fl do f40 dla bieżącego przedziału czasu od fl do tn przez odpowiednie współczynniki ustalenia od GAI do GA10, a następnie DSP 104 dodaje składowe w dziedzinie czasu z ustaloną amplitudą dla wytworzenia całkowitego sygnału kodu, który jest odprowadzany do wyjścia 106. Nawiązując do fig. 3 i 5, całkowity sygnał kodu jest przekształcany przez przetwornik cyfrowo-analogowy (DAC) 140 i doprowadzany do pierwszego wejścia układu sumującego 142. Układ sumujący 142 otrzymuje sygnał dźwiękowy z końcówki wejściowej 94 na drugim wejściu i dodaje całkowity analogowy sygnał kodu do analogowego sygnału dźwiękowego i doprowadza go w końcówce 146.
W zastosowaniu do rozpowszechniania audycji radiowych, zakodowany sygnał dźwiękowy moduluje falę nośną i jest przesyłany drogą powietrzną. W telewizji NTSC, częstotliwość zakodowanego sygnału dźwiękowego moduluje podnośną i jest mieszana ze składową sygnału wizyjnego, tak że połączony sygnał jest stosowany do modulacji nośnej przy przesyłaniu drogą powietrzną. Klasyczne sygnały telewizyjne i radiowe mogą być oczywiście również przesyłane kablem (na przykład klasycznym lub z włókien optycznych), satelitarnie, lub w inny sposób. W innych zastosowaniach, zakodowany dźwięk może być nagrywany bądź do dystrybucji w postaci nagranej, bądź do późniejszego rozpowszechniania, albo do innego sposobu szerokiego rozpowszechniania, Zakodowany dźwięk może być również wykorzystywany w transmisjach typu „point-to-point”. Różne inne zastosowania, metody transmisji i sposoby nagrywania są oczywiście możliwe.
Figury 7A do 7C pokazują sieci działań ukazujące przebieg procedur programu wykonywanych przez DSP 104 do implementacji oszacowania tonalnych, wąskopasmowych i szerokopasmowych opisanych powyżej funkcji. Figura 7A ilustruje główną pętlę programu DSP 104. Program jest inicjonowany przez rozkaz z głównego procesora 90 (krok 150), po czym DSP 104 inicjuje swej rejestry sprzętowe (krok 152) i następnie przechodzi do kroku 154 do wyznaczenia danych nieważonej w dziedzinie czasu składowej kodu, jak pokazano na fig. 6, która jest następnie przechowywana w pamięci, po to by być odczytaną w razie potrzeby do generacji składowych kodu w dziedzinie czasu, jak wspomniano powyżej. Alternatywnie, ten krok może być ominięty, jeśli składowe kodu są przechowywane stale w ROM lub innej nieulotnej pamięci. Możliwe jest również obliczanie danych składowej częstotliwości kodu na żądanie, co jednak powoduje większą obciążenie przetwarzania. Innym sposobem jest wytwarzanie nieważonych składowych kodu w postaci analogowej i następnie ustalenie amplitud analogowych składowych za pomocą współczynników ważenia wytworzonych przez cyfrowy procesor.
Po tym jak dane w dziedzinie czasu zostały obliczone i zgromadzone, w kroku 156, DSP 104 wysyła żądanie do głównego procesora 90 z prośbą o następną informację do zakodowania. Informacja ma postać strumienia znaków, liczb całkowitych lub innych unikalnych symboli danych identyfikujących grupy składowych kodu, które są odprowadzane przez DSP 104 w kolejności, która jest założona przez informację. W innych przykładach realizacji, główny procesor, znając szybkość odprowadzania danych z DSP, wyznacza dla siebie, kiedy dostarczyć następną informację do DSP poprzez odpowiednie ustawienie układu czasowego i dostarczanie informacji w sposób czasowo zsynchronizowany. W innym alternatywnym przykładzie realizacji, z wyjściem z DSP 104 jest sprzężony dekoder do przyjmowania wyjściowych składowych kodu w celu zdekodowania ich i zwrotnego przekazania informacji do głównego procesora jako wyjście z DSP, tak że główny komputer może wyznaczyć kiedy dostarczyć kolejną informację do DSP 104. W jeszcze innych przykładach realizacji, funkcje głównego procesora 90 i DSP 104 są wykonywane przez pojedynczy procesor.
Po tym, jak następna informacja została odebrana z głównego procesora, w kroku 156, DSP przechodzi do generacji składowych kodu dla każdego w kolejności symbolu informacji i dostarcza połączone, wyważone składowe częstotliwości kodu na swe wyjście 106. Ten proces jest reprezentowany przez pętlę identyfikowaną oznacznikiem 160 na fig. 7A.
180 441
Po wejściu do pętli 160, DSP 104 zezwala na przerwania 1 i 2, oraz przechodzi do procedury „wyznaczenia współczynników ważenia” 162, która zostanie opisana w nawiązaniu do sieci działań z fig. 7B i 7C. Nawiązując najpierw do fig. 7B, po wejściu do procedury 162, DSP najpierw wyznacza, czy wystarczająca ilość próbek sygnału dźwiękowego została zgromadzona dla umożliwienia wykonania FFT o wysokiej rozdzielności w celu wykonama analizy widmowej zawartości sygnału dźwiękowego w ostatnim założonym przedziale sygnału dźwiękowego, co oznaczono jako krok 163. Do wystartowania niezbędne jest, by wystarczająca ilość próbek sygnałów dźwiękowych była zgromadzona do wykonania FFT. Jednakże, jeśli wykorzystuje się nakładającą się FFT, w czasie kolejnych przejść pętli odpowiednio mniejsza ilość próbek musi być zgromadzona przed kolejnym wykonaniem FFT.
Jak to będzie widać na fig. 7B, DSP pozostaje w małej pętli 163 oczekując na niezbędne zgromadzenie próbek. Pod wpływem przerwania 1, przetwornik A/D 124 dostarcza nową cyfrową próbkę sygnału dźwiękowego programu, która jest zgromadzona w buforze danych DSP 104, co oznaczono jako podprocedurę 164 na fig. 7A.
Wracając do fig. 7B, po zgromadzeniu wystarczającej ilości próbek danych przez DSP, przetwarzanie przechodzi do kroku 168, w którym zostaje wykonana wspomniana FFT o wysokiej rozdzielczości na próbkach danych sygnału dźwiękowego ostatniego przedziału sygnału dźwiękowego. Następnie, co oznaczono przez 170, obliczany jest odpowiedni współczynnik ważenia lub ustalenia amplitudy dla każdej ze składowych częstotliwości kodu w obecnie kodowanym symbolu. W kroku 172, ta z pączek częstotliwości wytworzonych przez FFT o wysokiej częstotliwości (krok 168), która zapewnia zdolność do maskowania najwyższego poziomu odpowiedniej składowej kodu na podstawie pojedynczego tonu („tonalna dominująca”), jest wyznaczana w sposób opisany powyżej.
Nawiązując również do fig. 7C, w kroku 176, współczynnik ważenia dla tonalnej dominującej jest wyznaczany i zatrzymywany do porównania z odpowiednimi zdolnościami maskowania zapewnianymi przez szerokopasmowe i wąskopasmowe maskowanie, oraz, jeśli stwierdzono że jest to najkorzystniejszy sposób maskowania, jest używany jako współczynnik ważenia do ustawiania amplitudy bieżącej składowej częstotliwości kodu. W kolejnym kroku 180, wykonywane jest oszacowanie zdolności wąskopasmowego maskowania i szerokopasmowego maskowania, w sposób wcześniej opisany. Następnie, w kroku 182, wyznaczane jest, czy maskowanie wąskopasmowe zapewnia najlepszą zdolność maskowania odpowiedniej składowej kodu i jeśli tak, to w kroku 184 współczynnik ważenia jest zmieniany na podstawie maskowania wąskopasmowego. W kolejnym kroku 186, wyznaczane jest, czy maskowanie szerokopasmowe zapewnia najlepszą zdolność maskowania odpowiedniej składowej częstotliwości kodu i jeśli tak, to w kroku 190 współczynnik ważenia jest zmieniany na podstawie maskowania szerokopasmowego. Następnie, w kroku 192 wyznaczane jest, czy współczynniki ważenia zostały dobrane dla każdej składowej częstotliwości kodu, które mają być obecnie odprowadzane do reprezentacji bieżącego symbolu i jeśli nie, to pętla jest ponownie inicjonowana dla wybrania współczynnika ważenia dla następnej składowej częstotliwości kodu. Jeśli jednak zostały wybrane współczynniki ważenia dla wszystkich składowych, wówczas podprocedura jest kończona, co oznaczono jako krok 194.
Po pojawieniu się przerwania 2 przetwarzanie przechodzi do podproceduiy 200, w której wykonywane są funkcje pokazane na fig. 6. To znaczy, w procedurze 200 współczynniki ważenia obliczone w procedurze 162 sa zastosowane do mnożenia odpowiednich wartości w dziedzinie czasu bieżącego symbolu, który ma być odprowadzany, a następnie wartości ważonych w dziedzinie czasu składowych kodu są dodawane i odprowadzane jako wazony, całkowity sygnał kodu do DAC 140. Każdy symbol kodu jest odprowadzany w założonym przedziale czasu, po zakończeniu którego przetwarzanie przechodzi do kroku 156 z kroku 202.
Figury 7D i 7E pokazują sieci działań dla implementacji ślizgowej analizy tonalnej do obliczania efektów maskowania w sygnale dźwiękowym. W kroku 702 inicjowane są zmienne, takie jak rozmiar próbek dużej FFT i mniejszej FFT, liczba mniejszych FFT na dużą FFT, oraz liczba tonów kodu na symbol, na przykład 2048, 256, 8 i 10, odpowiednio.
W krokach 704-708, analizowana jest pewna liczba próbek odpowiadająca dużej FFT. W kroku 704, pobierane są próbki sygnału dźwiękowego. W kroku 706, pobierana jest moc
180 441 materiału programu w każdej paczce FFT. W kroku 708, jest otrzymywana dopuszczalna moc tonu kodu w każdej odpowiedniej paczce FFT, ze względu na efekty wszystkich odpowiednich tonów sygnału dźwiękowego w tej paczce, dla każdego z tonów. Sieć działań z fig. 7E pokazuje 708 w większych szczegółach.
W krokach 710-712, analizowana jest pewna liczba próbek odpowiadających mniejszej FFT. W kroku 714, dopuszczalne moce kodu wyznaczone z dużej FFT w kroku 708 i z małej FFT w kroku 712 są łączone dla części próbek, które zostały poddane mniejszej FFT. W kroku 716, tony kodu są mieszane z sygnałem dźwiękowym by utworzyć zakodowany dźwięk, a w kroku 718 zakodowany dźwięk jest odprowadzany do DAC 140. W kroku 720 decyduje się, powtórzyć kroki 710-718, to znaczy pozostały części próbek sygnału dźwiękowego, które przeszły dużą FFT, a nie przeszły mniejszej. Następnie w kroku 722 jeśli nie ma już więcej próbek dźwięku, następna liczba próbek, odpowiadająca dużej FFT, jest analizowana.
Figura 7E przedstawia szczegóły kroków 708 i 712, polegających na wyznaczeniu dopuszczalnej mocy kodu w każdej paczce FFT. Generalnie, ta procedura modeluje sygnał dźwiękowy jako zawierający zbiór tonów (patrz przykłady poniżej), oblicza wpływ maskowania przez każdy z tonów sygnału dźwiękowego każdego tonu kodu, sumuje efekty maskowania i ustala gęstość tonów kodu i złożoność sygnału.
W kroku 752, wyznaczane jest wchodzące w grę pasmo. Na przykład, niech stosowane pasmo do kodowania będzie od 800 Hz do 3200 Hz, a częstotliwość próbkowania - 44100 próbek na sekundę. Początkowa paczka zaczyna się przy 800 Hz, a ostatnia paczka znajduje się przy 3200 Hz.
W kroku 754 efekt maskowania przez każdy odpowiedni ton sygnału dźwiękowego dla każdego tonu kodu w tej paczce jest wyznaczany przy użyciu krzywej maskowania dla każdego tonu kodu, oraz wykonywana jest kompensacja dla niezerowej szerokości paczki FFT sygnału dźwiękowego poprzez wyznaczenie (1) pierwszej wartości maskowania na podstawie założenia, że całość mocy sygnału dźwiękowego jest przy górnym końcu paczki, oraz wyznaczenie (2) drugiej wartości maskowania na podstawie założenia, że całość mocy sygnału dźwiękowego jest przy dolnym końcu paczki, po czym wybierana jest ta z wartości maskowania, która jest mniejsza.
Figura 7F pokazuje przybliżenie krzywej maskowania pojedynczego tonu dla tonu sygnału dźwiękowego przy częstotliwości fPGM, która wynosi około 2200 Hz w tym przykładzie, zgodnie z pracą J. J. Zwislockiego pod tytułem „Masking: Experimental and Theoretical Aspects of Simultaneous, Forward, Backward and Central Masking”, 1978, Zwicker et al., edycja Psychoacoustics: Facts and Models, strony 283-316, Springer-Verlag, Nowy Jork. Szerokość krytycznego pasma (CB) jest zdefiniowana przez Zwislockiego w następujący sposób: krytyczne pasmo 0,002* fPGMl,5 + 100
Zgodnie z następującymi definicjami, gdzie „maska” jest tonem sygnału dźwiękowego:
BRKPOINT PEAKFAC BEATFAC mNEG mPOS cf mf cband = 0,3 (± 0,3 krytycznych pasm) = 0,025119 (- 16 dB od maski) = 0,002512 (-26 dB od maski) = -2,40 (- 24 dB na pasmo krytyczne) = -0,70 (- 7 dB na pasmo krytyczne) = częstotliwość kodu = częstotliwość maski = krytyczne pasmo wokół fPGM współczynnik maskowania, mfactor, może obliczany w następujący sposób: brkpt = cband* BRKPOINT jeśli na ujemnym nachyleniu krzywej z fig. 7F mfactor = PEAKFAC* 10** (mNEG*mf-brkpt-cf)/cband) jeśli na płaskiej części krzywej z fig. 7 mfactor = BEATRAC jeśli na dodatnim nachyleniu krzywej z fig. 7F mfactor = PEAKFAC* 10** (mPOS*mf-brkpt-cf)/cband).
180 441
Konkretnie, pierwszy mfactor jest obliczany na podstawie założenia, że cała moc sygnału dźwiękowego jest przy dolnym końcu jego paczki, drugi mfactor jest obliczany przy założeniu, że cała moc sygnału dźwiękowego znajduje się przy górnym końcu jego paczki, a mniejszy z tych dwóch współczynników jest wybierany jako wartość maskowania zapewniana przez ton sygnału dźwiękowego dla wybranego tonu kodu. W kroku 754 przetwarzanie jest wykonane dla każdego konkretnego tonu sygnału dźwiękowego dla każdego tonu kodu.
W kroku 756, każdy ton kodu jest ustalany przez każdy ze wspomnianych współczynników maskowania odpowiadających tonom sygnału dźwiękowego, W tym przykładzie realizacji współczynnik maskowania jest mnożony przez moc sygnału dźwiękowego w danej paczce.
W kroku 758 wynik mnożenia współczynników maskowania przez moc sygnału dźwiękowego jest sumowany dla każdej paczki, dostarczając dopuszczalną moc dla każdego tonu kodu.
W kroku 760, ustalane są dla liczby tonów kodu dopuszczalne moce w paśmie krytycznym po każdej ze stron tonu kodu, który jest obliczany, oraz dla złożoności sygnału dźwiękowego. Obliczana jest liczba tonów kodu w krytycznym paśmie oznaczona przez CTSUM. Współczynnik ustalania, ADJFAC, jest określony wzorem:
ADJFAC = GLOBAL* (PSUM/PRSS) 1,5/CTSUM, gdzie GLOBAL jest współczynnikiem obniżania wartości znamionowych określającym niedokładność kodera spowodowaną opóźnieniami czasowymi w wykonywaniu FFT, (PSUM/PRSS) 1,5 jest doświadczalnym współczynnikiem korekcji złożoności, a 1/CTSUM reprezentuje proste dzielenie mocy sygnału dźwiękowego dla wszystkich tonów kodu, które mają być maskowane. PSUM jest sumą poziomów mocy maskowania tonów przypisanych do maskowania tonów kodu, których ADJFAC jest wyznaczany. Pierwiastek sumy kwadratów mocy (PRSS) jest określony przez
PRSS = SQRT (Σί(Ρ20) gdzie i = paczki FFT w paśmie
Na przykład, przy założeniu, że całkowita moc maskowania tonowego w paśmie równomiernie rozkłada się na jeden, dwa lub trzy tony, wówczas:
nr tonu | moc tonu | PSUM | PRSS |
1 | 10 | 1*10 = 10 | 10 |
2 | 5,5 | 2*5 = 10 | SQRT (2*52) = 7.07 |
3 | 3,3,3,3,3,3 | 3*3,3 = 10 | SQRT (3*3,32) = 5,77 |
Stąd PRSS mierzy stopień skupienia mocy maskowania (wzrastające wartości) lub rozsiania (zmniejszające się wartości) materiału programu.
W kroku 762 z fig. 7E wyznacza się, czy istniejąjeszcze paczki w rozważanym paśmie i j eśli tak, są one przetwarzane tak j ak opisano powyżej.
Przykłady obliczeń maskowania będą teraz zaprezentowane. Przyjmuje się symbol sygnału dźwiękowego przy 0 dB, tak że uzyskane wartości są maksymalnymi mocami tonów kodu względem mocy sygnału dźwiękowego. Rozpatrzone są cztery przypadki: pojedynczy ton 2500 Hz; trzy' tony przy 2000, 2500 i 3000 Hz, wąskopasmowy szum modelowany jako 75 tonów w krytycznym paśmie o środku przy 2600, gdzie 75 tonów jest rozstawionych równomiernie co 5 Hz w zakresie od 2415 do 2785 Hz; oraz szerokopasmowy szum modelowany jako 351 tonów równomiernie rozstawionych co 5 Hz w zakresie od 1750 do 3250 Hz. Dla każdego przypadku, wynik uzyskany ze ślizgowej analizy tonalnej (STA) jest porównywany z obliczonym wynikiem najlepszej z trzech rodzajów analizy: pojedynczego tonu, szumu wąskopasmowego i szumu szerokopasmowego.
180 441
Ton kodu (Hz) | Pojedynczy ton | Wiele tonów | Szum wąskopasmowy | Szum szerokopasmowy | ||||
STA (dB) | najlepszy z 3 (dB) | STA (dB) | najlepszy z 3 (dB) | STA (dB) | najlepszy z 3 (dB) | STA (dB) | najlepszy z 3 (dB) | |
1976 | -50 | -49 | -28 | -30 | -19 | NA | 14 | 12 |
2070 | -45 | -45 | -22 | -32 | -14 | NA | 13 | 12 |
2163 | -40 | -39 | -29 | -25 | -9 | NA | 13 | 12 |
2257 | -34 | -33 | -28 | -28 | -3 | NA | 12 | 12 |
2351 | -28 | -27 | -20 | -28 | 1 | NA | 12 | 12 |
2444 | -34 | -34 | -23 | -33 | 2 | 7 | 13 | 12 |
2538 | -34 | -34 | -24 | -34 | 3 | 7 | 13 | 12 |
2632 | -24 | -24 | -18 | -24 | 5 | 7 | 14 | 12 |
2726 | -26 | -26 | -21 | -26 | 5 | 7 | 14 | 12 |
2819 | -27 | -27 | -22 | -27 | 6 | NA | 15 | 12 |
Na przykład, w ślizgowej analizie tonalnej (STA) dla przypadku jednego tonu, ton maskujący wynosi 2500 Hz, co odpowiada krytycznej szerokości pasma równej 0,02* 25001,5 + 100 = 350 Hz. Punkty łamania krzywej z fig. 7F są przy 2500 ± 0,3*350, czyli 2395 i 2605 Hz. Częstotliwość kodu równa 1976 jak widać znajduje się na części nachylonej ujemnie krzywej z fig. 7F, tak więc współczynnik maskowania wynosi:
mfactor = 0,025119* 10 -2,4* (2500 - 105 - 1976)/350 = 3,365* 10-5 = -44,7 dB.
Istnieją trzy tony kodów w paśmie krytycznym 1976 Hz, więc moc maskowania jest rozdzielona pomiędzy nie:
4.364* 10-5/3 =-49,5 dB
Ten wynik jest zaokrąglony do -50 dB i jest pokazany w lewym górnym rogu tabeli wyników.
W analizie „najlepsza z trzech”, maskowanie tonalne jest obliczane zgodnie z metodą pojedynczego tonu, wyjaśnioną powyżej w nawiązaniu do fig. 7F.
W analizie „najlepsza z trzech”, maskowanie szumu wąskopasmowego jest obliczane poprzez policzenie najpierw średniej mocy w krytycznym paśmie wyśrodkowanym wokół częstotliwości rozważanego tonu kodu. Tonalne z mocą większą niż średnia moc nie są brane pod uwagę jako części szumu i są usuwane. Suma pozostałej mocy jest mocą szumu wąskopasmowego. Maksymalna dopuszczalna moc tonu kodu wynosi - 6 dB mocy wąskopasmowego szumu dla wszystkich tonów w krytycznym paśmie rozważanego tonu kodu.
W analizie „najlepsza z trzech”, maskowanie szumu szerokopasmowego jest obliczane poprzez policzenie mocy szumu wąskopasmowego dla krytycznych pasmo środkach w 2000, 2280, 2600 i 2970 Hz. Minimalna z obliczonych mocy szumu wąskopasmowego jest mnożona przez stosunek całkowitej szerokości pasma do szerokości odpowiedniego pasma krytycznego, w celu znalezienia mocy szumu szerokopasmowego. Na przykład, jeśli pasmo o środku w 2600 Hz ma krytyczną szerokość pasma równą 370 Hz i ma najmniejszą moc, jego moc szumu wąskopasmowego jest mnożona przez 1322 Hz/370 Hz = 3,57 w celu uzyskania mocy szumu szerokopasmowego. Dopuszczalna moc tonu kodu wynosi - 3 dB szumu szerokopasmowego. Gdy mamy do czynienia z 10 tonami kodu, maksymalna moc dopuszczalna dla każdego z tonów jest 10 dB mniejsza, czyli wynosi -13 dB mocy szumu szerokopasmowego.
Jak widać, obliczenia ślizgowej analizy tonalnej generalnie odpowiadają obliczeniom „najlepsza z trzech”, co wskazuje, że ślizgowa analiza tonalna jest metodą pewną. Ponadto, wyniki uzyskane przez tę analizę dla przypadku wielu tonów są lepsze, tzn. umożliwiają
180 441 większe moce tonów kodu niż analizy „najlepsza z trzech”, co wskazuje, że ślizgowa analiza tonalna jest odpowiednia nawet dla przypadków, które nie pasują dobrze do jednego z obliczeń „najlepsza z trzech”.
Nawiązując do fig. 8, pokazany jest schemat blokowy przykładu realizacji kodera, który wykorzystuje układ analogowy. Analogowy koder otrzymuje sygnał dźwiękowy w postaci analogowej na końcówce wejściowej 210, z której sygnał dźwiękowy jest dostarczany jako wejście do N składowych układów generatora, od 2201 do 220N, z których każdy generuje odpowiednią składową kodu od Cl do CN. Dla uproszczenia i przejrzystości tylko jeden z układów generatora od 2201 do 220N jest pokazany na fig. 8. W celu kontrolowanego generowania składowych kodu dla odpowiedniego symbolu danych, który ma być włączony do sygnału dźwiękowego, tak że powstanie zakodowany sygnał dźwiękowy, do każdego z układów składowych generatora są doprowadzane dane wejściowe przez odpowiednie końcówki od 2221 do 222N, które służą jako wejścia zezwolenia dla odpowiednich składowych układów generatora. Każdy symbol jest zakodowany jako podzbiór składowych kodu od Cl do CN poprzez selektywne przykładanie sygnału zezwolenia do pewnych układów składowych generatora od 2201 do 220N. Wygenerowane składowe kodu odpowiadające każdemu symbolowi danych są dostarczane na wejścia układu sumującego 226, który pobiera również wejściowy sygnał dźwiękowy z końcówki wejściowej 210, który to układ służy do dodawania składowych kodu do wejściowego sygnału dźwiękowego w celu wytworzenia zakodowanego sygnału dźwiękowego, który jest odprowadzany na wyjście.
Każdy ze składowych układów generatora jest podobny w konstrukcji i zawiera odpowiedni układ wyznaczania współczynnika ważenia, od 2301 do 230N, odpowiedni generator sygnału, od 2321 do 232N, oraz odpowiedni układ przełączający, od 2341 do 234N. Każdy z generatorów sygnału, od 2321 do 232N wytwarza odpowiednio inną składową częstotliwości kodu i dostarcza wygenerowaną składową do odpowiedniego układu przełączającego, 2341 do 234N, z których każdy posiada drugie wejście zwarte z masą i wyjście sprzężone z wejściem do odpowiedniego z układów mnożących 2361 do 236N. W odpowiedzi na otrzymanie sygnału zezwalającego na odpowiedniej końcówce wejściowej danych, od 2201 do 220N, każdy z układów przełączających, od 2341 do 234N, odpowiada poprzez sprzężenie wyjścia odpowiedniego generatora sygnału, od 2321 do 232N, z wejściem odpowiedniego układu mnożącego, od 2361 do 236N. Tymczasem, przy braku sygnału zezwolenia na wejściu danych, każdy układ przełączający, od 2341 do 234N, zwiera swe wyjście z masą, tak że na wyjściu odpowiedniej mnożarki, od 2361 do 236N, jest poziom zera.
Każdy układ wyznaczania współczynnika ważenia, od 2301 do 230N, służy do szacowania zdolności składowych częstotliwości sygnału dźwiękowego w odpowiednim paśmie częstotliwości tego sygnału do masowania składowej kodu wytworzonej przez odpowiedni układ generatora, od 2321 do 232N, w celu wytworzenia współczynnika ważenia, który jest następnie podawany na wejście do odpowiedniego układu mnożącego, od 2361 do 236N, w celu ustalenia amplitudy odpowiedniej składowej kodu, dla zapewnienia, że będzie ona zamaskowana przez część sygnału dźwiękowego, która została obliczona przez układ wyznaczania współczynnika ważenia. Nawiązując również do fig. 9, konstrukcja każdego z układów wyznaczania współczynnika ważenia, 2301 do 230N, oznaczona jako przykładowy układ 230, jest pokazana w postaci blokowej. Układ 230 zawiera filtr maskujący 240, który otrzymuje sygnał dźwiękowy na swym wejściu i służy do wydzielania części sygnału dźwiękowego, która ma być użyta do obliczenia współczynnika ważenia, który ma być podany do odpowiedniej z mnożarek, od 2361 do 236N. Własności filtru maskującego są ponadto tak dobrane, by wyważać amplitudy składowych częstotliwości sygnału dźwiękowego ze względu na. ich zdolności do maskowania odpowiedniej składowej kodu.
Część sygnału dźwiękowego wybrana przez filtr maskujący 240 jest dostarczana do układu wyznaczania wartości bezwzględnej 242, który wytwarza wyjście reprezentujące bezwzględną wartość części sygnału w paśmie częstotliwości po przejściu przez filtr maskujący 240. Wyjście z układu wyznaczania wartości bezwzględnej 242 jest dostarczane jako wejście do wzmacniacza skalującego 244, posiadającego wzmocnienie tak dobrane, by wytwarzać sygnał, który, po pomnożeniu go przez wyjście odpowiedniego przełącznika, od 2341 do 234N, utwo
180 441 rzy składową kodu na wyjściu odpowiedniej mnożarki, od 2361 do 236N, co zapewni, że pomnożona składowa kodu będzie maskowana przez wybraną część sygnału dźwiękowego, która przeszła przez filtr maskujący 240, przy odtwarzaniu zakodowanego sygnału dźwiękowego jako dźwięk. Każdy układ wyznaczania współczynnika ważenia, od 2301 do 230N, wytwarza więc sygnał reprezentujący oszacowanie zdolności wybranej części sygnału dźwiękowego do maskowania odpowiedniej składowej kodu.
W innych przykładach realizacji analogowych koderów według niniejszego wynalazku, liczne układy wyznaczania współczynnika ważenia są dostarczane do generatora każdej składowej kodu, oraz każdy z licznych układów wyznaczania współczynnika ważenia odpowiadający danej składowej kodu oblicza zdolność różnych części sygnału dźwiękowego do maskowania danej szczególnej składowej, gdy zakodowany sygnał dźwiękowy jest odtwarzany jako dźwięk. Na przykład, mogą być dostarczane liczne układy wyznaczania współczynnika ważenia, z których każdy oblicza zdolność części sygnału dźwiękowego we względnie wąskim paśmie częstotliwości (takim, że energia sygnału dźwiękowego w takim paśmie będzie z dużymi prawdopodobieństwem składała się z pojedynczej składowej częstotliwości) do maskowania odpowiedniej składowej kodu, gdy zakodowany sygnał dźwiękowy jest odtwarzany jako dźwięk. Może być dostarczony kolejny układ wyznaczania współczynnika ważenia dla tej samej odpowiednio składowej kodu, do obliczania zdolności energii sygnału dźwiękowego, w krytycznym paśmie, którego częstotliwością środkowąjest składowa kodu, do maskowania składowej kodu, gdy zakodowany sygnał dźwiękowy jest odtwarzany jako dźwięk.
Ponadto, chociaż różne elementy przykładu realizacji z fig. 8 i 9 są zaimplementowane jak o układy analogowe, możliwe jest zapewnienie tych samych funkcji wykonywanych przez układy cyfrowe.
Dekodowanie
Dekodery i sposoby dekodowania, które są szczególnie dostosowane do dekodowania sygnałów dźwiękowych zakodowanych opisanymi powyżej sposobami według wynalazku, jak również generalnie do dekodowania kodów zawartych w sygnałach dźwiękowych, takich że kody mogą być rozróżnialne od reszty sygnału na podstawie amplitudy, zostaną teraz opisane. Zgodnie z pewnymi cechami niniejszego wynalazku, oraz w nawiązaniu do schematu blokowego z fig. 10, obecność przynajmniej jednej ze składowych kodu w zakodowanym sygnale dźwiękowym jest wykrywana poprzez ustawienie spodziewanej amplitudy lub amplitud przynajmniej jednej składowej kodu na powstanie poziomu sygnału dźwiękowego albo poziomu szumu sygnału niedźwiękowego, albo obu tych czynników, co oznaczono przez blok funkcjonalny 250. Jeden lub więcej sygnały, reprezentujące taką odpowiednią amplitudę lub amplitudy, sa dostarczane, w punkcie 252 na fig. 10, do wyznaczania obecności składowej kodu poprzez detekcję sygnału odpowiadającego spodziewanej amplitudzie lub amplitudom, co oznaczono przez blok funkcjonalny 254. Dekodery według niniejszego wynalazku są szczególnie dobrze dostosowane do detekcji obecności składowych kodu, które są zamaskowane przez inne składowe sygnału dźwiękowego, jeśli zależność amplitudowa pomiędzy składowymi kodu i innymi składowymi sygnału dźwiękowego jest, do pewnego stopnia, wstępnie założona.
Figura 11 przedstawia schemat blokowy przykładu realizacji dekodera według niniejszego wynalazku, który wykonuje cyfrowe przetwarzanie sygnału do wydobycia kodów z zakodowanych sygnałów dźwiękowych odebranych przez dekoder w analogowej postaci. Dekoder z fig. 11 posiada końcówkę wejściową260 do przyjmowania zakodowanego analogowego sygnału dźwiękowego, którym może być na przykład sygnał pobrany z mikrofonu, z radiowych lub telewizyjnych audycji, odtwarzany jako dźwięk przez odbiornik, albo zakodowany analogowy sygnał dźwiękowy w postaci elektrycznych sygnałów bezpośrednio z takiego odbiornika. Taki zakodowany analogowy dźwięk może być tworzony poprzez odtwarzanie nagrania dźwięku, takiego jak na płycie kompaktowej lub kasecie taśmowej. Układy obróbki analogowej 262 są sprzężone z wejściem 260 do odbierania zakodowanego analogowego dźwięku i służą do wzmocnienia sygnału, automatycznej kontroli wzmocnienia dolnoprzepustowego filtrowania, zapobiegającego aliasingowi, przed konwersją analogowo cyfrową, Ponadto, układy obróbki analogowej 262 służą do wykonywania pasmowego filtrowania dla zapewnienia, że sygnały na wyjściu są ograniczone do zakresu częstotliwości, w których
180 441 kod może wystąpić. Układy obróbki analogowej 262 odprowadzają przetworzone analogowe sygnały do przetwornika analogowo-cyfrowego (A/D) 263, który przekształca otrzymane sygnały na postać cyfrową i dostarcza je do cyfrowego procesora sygnałowego (DSP) 266, który przetwarza już cyfrowe sygnały w celu wykrycia obecności składowych kodu i wyznacza symbole kodu, które sa przez nie reprezentowane. Cyfrowy procesor sygnałowy 266 jest sprzężony z pamięcią 270 (zawierającą pamięci programu i danych) i z układami wejścia/wyjścia (I/O) 272 do odbierania zewnętrznych rozkazów (na przykład, rozkazu inicjacji dekodowania lub rozkazu odprowadzenia zgromadzonych kodów), oraz do odprowadzania zdekodowanych informacji.
Zostanie teraz opisane działanie cyfrowego dekodera z fig. 11, który dekoduje zakodowane sygnały dźwiękowe za pomocą urządzenia z fig. 3. Układ obróbki analogowej 262 służy jako filtr pasmowy dla zakodowanych sygnałów dźwiękowych, z pasmem przepuszczania rozciągającym się w przybliżeniu od 1,5 kHz do 3,1 kHz, a DSP 266 próbkuje przefiltrowanie analogowe sygnały z odpowiednio dużą częstością. Cyfrowy sygnał dźwiękowy jest następnie dzielony przez DSP 266 na zakresy składowych częstotliwości lub paczki przetwarzania FFT. Mówiąc dokładniej, jest wykonywana nachodząca, okienkowa FFT na założonej liczbie najbardziej ostatnich punktów danych, tak że nowa FFT jest wykonywana okresowo na zbiorze wystarczającej liczby nowych próbek. Dane są ważone, jak opisano poniżej, i wykonywana jest FFT dla wytworzenia założonej liczby paczek częstotliwości, z których każda ma założoną szerokość. Energia B(i) każdej z paczek częstotliwości w zakresie obejmującym częstotliwości składowe kodu jest obliczana przez DSP 266.
Estymacja poziomu szumu jest wykonywana wokół każdej paczki, w której może wystąpić składowa szumu. Zgodnie z tym, gdy dekoder z fig. 11 jest stosowany do dekodowania sygnałów zakodowanych przez przykład realizacji z fig. 3, istnieje 40 paczek częstotliwości, w których mogą wystąpić składowe kodu. Dla każdej paczki częstotliwości szacowany jest poziom szumu w następujący sposób. Po pierwsze, obliczana jest średnia energia E(j) w paczkach częstotliwości w oknie rozciągającym się na częstotliwościach poniżej i powyżej pewnej szczególnej paczki częstotliwości j (to znaczy, paczki w której może wystąpić składowa kodu), zgodnie z następującą zależnością:
Εφ=—ĄsB(i) 2w+ 1 gdzie i = (j-w) -> (j+w), a w reprezentuje rozmiar okna poniżej i ponad rozważaną paczką, wyrażony w liczbie paczek. Następnie jest obliczany poziom szumu NS(j) w paczce częstotliwości j, zgodnie z następującym wzorem:
NS(j) = (ΣΒη(ΐ))/Σδ(ΐ)) gdzie Bn(i) równa się B(i) (poziom energii w paczce i), jeśli B(i) < E(j), oraz równa się 0 w przeciwnym przypadku, a δ(ί) równa się 1 jeśli B(i) < E(j), oraz 0 w przeciwnym przypadku. To znaczy, przyjmuje się że składowe szumu zawierają składowe mające poziom mniejszy niż średni poziom energii w konkretnym oknie otaczającym rozważaną paczkę, oraz przez to zawierają składowe sygnału dźwiękowego, które przypadają poniżej średniego poziomu energii.
Gdy został oszacowany poziom szumu dla rozważanej paczki, szacowany jest stosunek sygnału do szumu SNR(j) dla tej paczki poprzez podział poziomu energii B(j) w rozważanej paczce przez oszacowany poziom szumu NS(j). Wartości SNR(j) są wykorzystywane do wykrywania i taktowania symboli synchronizacji, jak również stanów symboli danych, co opisano poniżej. Mogą być wykorzystywane różne sposoby do eliminacji składowych sygnału dźwiękowego, jako potencjalnie nie będących składowymi kodu, na podstawie statystycznej. Na przykład, można przyjąć, że paczka posiadająca najwyższy stosunek sygnału do szumu zawiera składową sygnału dźwiękowego. Inną możliwością jest wykluczanie tych paczek, które mająSNR(j) ponad założoną wartość. Jeszcze jedną możliwością jest eliminacja paczek mających najwyższy i/lub najniższy SNR(j).
Gdy jest zastosowane do wykrywania obecności kodów w sygnałach dźwiękowych zakodowanych urządzeniem z fig. 3, urządzenie z fig. 11 gromadzi dane wskazujące obecność
180 441 składowych kodu w każdej z rozważanych paczek w sposób cykliczny, dla przynajmniej głównej części założonego przedziału, w którym może być znaleziony symbol kodu. Zgodnie z tym, poniższy proces jest powtarzany wiele razy i obecne dane składowe są gromadzone dla każdej z rozważanych paczek w danej ramce czasu. Sposoby ustalania odpowiednich ramek czasowych detekcji na podstawie kodów synchronizacji zostaną opisane poniżej w większych szczegółach. Gdy DSP 266 zgromadzi dane dla odpowiedniej ramki, wyznacza w opisany poniżej sposób, który z możliwych sygnałów kodu był obecny w sygnale. DSP 266 przechowuje następnie wykryty symbol kodu w pamięci 270 wraz ze znacznikiem czasowym do identyfikacji momentu, w którym sygnał został wykryty, na podstawie wewnętrznego sygnału taktującego DSP. Następnie, w odpowiedzi na odpowiednią komendę dla DSP 266 otrzymaną z układu I/O 272, DSP powoduje, że pamięć 270 odprowadza przechowywane symbole kodu i znaczniki czasowe przez układ I/O 272.
Sieci działań z fig. 12A i 12B ilustrują sekwencje operacji wykonywanych przez DSP 266 przy dekodowaniu zakodowanego symbolu w analogowym sygnale dźwiękowym odbieranym w końcówce wejściowej 260. Nawiązując najpierw do fig. 12A, po inicjacji procesu dekodowania, DSP 266 wchodzi do głównej pętli programu w kroku 450, w którym ustala się znacznik SYNCH tak, że DSP 266 najpierw rozpoczyna operację wykrywania symboli synchronizacji E i S w wejściowych sygnale dźwiękowym w założonym porządku informacji. Po wykonaniu przez DSP 266 kroku 450, DSP wywołuje podprocedurę DET, która jest zilustrowana w sieci działań z fig. 12B, służącą do poszukiwania obecności składowych kodu reprezentujących symbole synchronizacji w sygnale dźwiękowym.
Nawiązując do fig. 12B, w kroku 454, DSP zbiera i zatrzymuje próbki wejściowego sygnału dźwiękowego, w sposób powtarzalny, aż zostanie zgromadzona wystarczająca liczba opisanych powyżej FFT. Po zakończeniu tej operacji, zgromadzone dane są poddawane funkcji ważenia, takiej jak funkcja ważenia kwadratu kosinusa, funkcja Kaisera-Bessela, funkcja Gaussa (Poissona), funkcja Hanninga lub inne odpowiednie funkcje ważenia, co oznaczono jako krok 456, ustalenia okien danych. Jednakże, gdy składowe kodu są wystarczająco wyraźne, ważenie nie jest konieczne. Okna danych są następnie poddawane nachodzącej FFT, co oznaczono krokiem 460.
Gdy FFT zostało zakończone, w kroku 462 testowany jest znacznik SYNCH dla sprawdzenia, czy jest on ustawiony (w tym przypadku spodziewany jest symbol synchronizacji) lub czy jest wyzerowany (w tym przypadku spodziewany jest symbol bitu danych). Ponieważ początkowo DSP ustawia znacznik SYNCH do wykrywania obecności składowych kodu reprezentujących symbole synchronizacji, program przechodzi do kroku 466, ponieważ dane dziedziny częstotliwości uzyskane z FFT, w kroku 460 są obliczane do wyznaczania, czy te dane wskazują obecność składowych reprezentujących symbol synchronizacji E lub symbol synchronizacji S.
W celu wykrywania obecności i zależności czasowych symboli synchronizacji, najpierw wyznaczana jest suma wartości SNR(j) dla każdego możliwego symbolu synchronizacji i symbol danych. W danym czasie podczas procesu detekcji symboli synchronizacji, spodziewany jest konkretny symbol. Jako pierwszy krok w detekcji spodziewanego symbolu, wyznaczane jest, czy suma jego odpowiednich wartości SNR(j) jest większa niż którychkolwiek innych. Jeśli tak, wówczas próg wykrywania jest ustanawiany na podstawie poziomów szumu w paczkach częstotliwości, które mogą zawierać składowe kodu. To znaczy, jeśli, w dowolnym danym momencie, tylko jeden symbol kodu jest włączany do zakodowanego sygnału dźwiękowego, tylko jedna czwarta rozważanych paczek będzie zawierać składowe kodu. Pozostałe trzy czwarte paczek będzie zawierać szum, to znaczy, składowe programu dźwiękowego i/lub inne dodatkowe energie. Próg detekcji jest wytwarzany jako średnia wartości SNR(j) dla wszystkich czterdziestu rozważanych paczek, lecz może być ustalany przez współczynnik mnożenia dla wzięcia pod uwagę efektów obojętnego szumu i/lub dla kompensacji zaobserwowanej wielkości błędu. Gdy próg detekcji został ustanowiony, suma wartości SNR(j) spodziewanego symbolu synchronizacji jest porównywana z progiem detekcji do wyznaczania, czy jest ona większa czy nie od tego progu. Jeśli tak, odnotowane jest wykrycie spodziewanego symbolu synchronizacji. Przy stwierdzeniu tego faktu, jak to oznaczono jako
180 441 krok 470, program wraca do głównej pętli przetwarzania z fig. 12A do kroku 472, gdzie wyznacza się (jak opisano poniżej), czy wzór dekodowanych danych odpowiada założonemu kryterium kwalifikacyjnemu. Jeśli nie, przetwarzanie powraca do kroku 450 do ponownego rozpoczęcia badań obecności symbolu synchronizacji w sygnale dźwiękowym, natomiast jeśli te kryteria.są spełnione, wyznacza się, czy spodziewany wzór synchronizacji (to znaczy, spodziewana sekwencja symboli E i S) został całkowicie odebrany i wykryty, co oznaczono jako krok 474.
Jednakże, po pierwszym przejściu przez procedurę DET, niewystarczające dane będą zatrzymywane do wyznaczenia, czy wzór spełnia kryteria kwalifikacyjne, tak że od kroku 474 przetwarzanie powraca do procedury DET w celu wykonania dalszej FFT i wyliczenia obecności symbolu synchronizacji. Gdy podprocedura DET została wykonana założoną ilość razy, gdy przetwarzanie powraca do kroku 472, DSP wyznacza, czy zgromadzone dane spełniają kryteria kwalifikacyjne dla wzoru synchronizacji.
To znaczy, gdy DET została wykonana taką założoną ilość razy, odpowiednia liczba obliczeń została wykonana w kroku 466 procedury DET. Liczba wykrytych wystąpień symbolu „E” jest wykorzystywana w jednym przykładzie realizacji jako miara ilości energii symbolu „E” w czasie odpowiedniego okresu czasu. Jednakże, inne pomiary energii symbolu „E” (takie jak wszystkie SNR paczek „E”, które przekraczają średnią energię paczki) mogą być tutaj również zastosowane. Po ponownym wywołaniu procedury DET i dalszym wykonaniu obliczenia w kroku 466, w kroku 472 to najświeższe obliczenie jest dodawane do obliczeń zgromadzonych w założonym przedziale, oraz najstarsze obliczenie spośród tych wcześniej zgromadzonych jest odrzucane. Ten proces trwa w czasie licznych przejść przez podprocedurę DET, oraz w' kroku 472 poszukiwany jest szczyt energii symbolu „E”. Jeśli szczyt nie został znaleziony, prowadzi to do stwierdzenia, że wzór synchronizacji nie został stwierdzony i przetwarzanie powraca z kroku 472 do kroku 450, gdzie ponownie ustawia znacznik SYNCH i rozpoczyna poszukiwanie wzoru synchronizacji.
W przypadku, gdy takie maksimum energii symbolu „E” zostało znalezione, proces obliczeniowy wykonywany w kroku 472 po podprocedurze 452 jest kontynuowany za każdym razem przy użyciu tej samej liczby obliczeń od kroku 466, lecz z odrzuceniem najstarszego obliczenia i dodaniem najnowszego, tak że ruchome okno danych jest użyte do tego celu. W czasie trwania tego procesu, po założonej liczbie przejść, w kroku 472 stwierdza się, czy wystąpiło przejście z symbolu „E” do symbolu „S”. W jednym przykładzie wykonania jest to wyznaczane jako punkt, gdzie wszystkie SNR paczek „S”, wynikające z kroku 466, w ruchomym oknie przekroczą wszystkie SNR paczek „E” w czasie tego samego przedziału. Gdy taki punkt przejścia został stwierdzony, przetwarzanie jest kontynuowane w sposób wcześniej opisany, to znaczy poszukiwana jest maksymalna energia symbolu „S”, która jest oznaczona jako największa liczba wykryć „S” w ruchomym oknie danych. Jeśli takie maksimum nie jest znalezione, albo jeśli takie maksimum nie występuje w założonej ramce czasu po maksimum energii symbolu „S”, przetwarzanie przechodzi z kroku 472 z powrotem do kroku 450 i ponownie rozpoczyna się poszukiwanie wzoru synchronizacji.
Jeśli powyższe kryteria są spełnione, w kroku 474 deklarowana jest obecność wzoru synchronizacji i przetwarzanie przechodzi do’kroku 480 w celu wyznaczenia odpowiednich przedziałów bitów na podstawie maksimów energii symboli „E” i „S”, oraz wykrytego punktu przejścia. Zamiast takiego procesu wykrywania obecności wzoru synchronizacji, mogą być zastosowane inne strategie. W kolejnym przykładzie realizacji, gdy wzór synchronizacji nie spełnia kryteriów, takich jak te opisane wcześniej, lecz przybliża wzór kwalifikacyjny (to znaczy, wykryty wzór nie jest jawnie nie do zaklasyfikowania), wyznaczanie czy wzór synchronizacji został wykryty może być zawieszone do dalszej analizy, która opiera się na obliczeniach wykonywanych (jak opisano poniżej) dla wyznaczenia obecności przedziałów bitów danych występujących po potencjalnym wzorze synchronizacji. Na podstawie całości wykrytych danych, to znaczy w czasie przedziału podejrzanego wzoru synchronizacji i w czasie spodziewanego przedziału bitów, może być wykonana retrospektywna kwalifikacja możliwego wzoru synchronizacji.
Powracając do fig. 12A, gdy wzór synchronizacji został pozytywnie sklasyfikowany, w kroku 480, jak wspomniano powyżej, wyznaczane są zależności czasowe bitu na podstawie
180 441 dwóch maksimów i punktu przejścia. To znaczy, te wartości sa uśredniane dla wyznaczenia spodziewanych punktów początku i zakończenia kolejnych przedziałów bitów danych. Gdy zostało to wykonane, w kroku 482 znacznik SYNCH jest zerowany dla wskazania, że DSP będzie poszukiwał obecności możliwych stanów bitu. Następnie procedura DET 452 jest ponownie wywoływana i, nawiązując również do fig. 12B, odbywa się to w taki sam sposób, jak opisano powyżej aż do kroku 462, w którym znacznik stanu SYNCH wskazuje, że powinien być wyznaczany bit stanu i przetwarzanie przechodzi do kroku 486. W kroku 486, DSP poszukuje obecności składowych kodu wskazujących stan bitu zero lub jeden, w sposób powyżej opisany.
Gdy zostanie to zakończone, w kroku 470 przetwarzanie wraca do głównej pętli przetwarzania z fig. 12A w kroku 490, gdzie wyznacza się, czy wystarczająca część danych została odebrana do wyznaczenia stanu bitu. By to zrobić, muszą być wykonane liczne przejścia przez podprocedurę 452, tak że po pierwszym przejściu przetwarzanie powraca do procedury DET 452 dla wykonania dalszych obliczeń na podstawie nowej FFT. Gdy podprocedura 452 zostanie wykonana założoną ilość razy, w kroku 486 obliczane są zgromadzone dane w celu wyznaczenia, czy odebrane dane wskazują stan zero, czy stan jeden, czy nieokreślony stan (który może zostać dookreślony na podstawie parzystości danych). To znaczy, to znaczy suma SNR paczek „0” jest porównywana z sumą SNR paczce „1”. Która z nich jest większa, ta decyduje o stanie danych, a jeśli są równe, stan jest nieokreślony. Alternatywnie, jeśli sumy SNR paczek „0” i „1” nie są równe, lecz są blisko siebie, może być również zadeklarowany stan nieokreślony. Również, jeśli występuje większa ilość symboli danych, ten symbol, dla którego stwierdzono największą sumę SNR, jest deklarowany jako odebrany symbol.
Gdy przetwarzanie ponownie powraca do kroku 490, wykrywane jest stwierdzanie stanu bitu i procesor przechodzi do kroku 492, gdzie DSP przechowuje dane w pamięci 270, wskazujące stany odpowiednich bitów składające się na słowo o założonej liczbie symboli, reprezentowanych przez zakodowane symbole w odbieranym sygnale dźwiękowym. Następnie, w kroku 490 wyznacza się, czy odebrane dane dotyczą wszystkich bitów zakodowanego słowa lub informacji. Jeśli nie, przetwarzanie powraca do podprocedury DET 452 w celu wyznaczenia stanu bitu następnego spodziewanego symbolu informacji. Jednakże, jeśli w kroku 496 zostanie stwierdzone, że ostatni symbol informacji został odebrany, przetwarzanie powraca do kroku 450 dla ustawienia znacznika SYNCH, w celu badania obecności symboli synchronizacji, reprezentowanych przez składowe kodu w zakodowanym sygnale dźwiękowym.
Nawiązując do fig. 13, w pewnych przykładach realizacji składowe niekodowe sygnału dźwiękowego i/albo inny szum (określany ogólnie w tym kontekście po prostu jako „szum”) są użyte do wytwarzania wartości porównawczej, takiej jak próg, co oznaczono blokiem funkcjonalnym 276. Jedna lub więcej części zakodowanego sygnału dźwiękowego sa porównywane z wartością porównawczą, co oznaczono jako blok fiinkcjonalny 277, w celu wykrycia obecności składowych kodu. Z korzyścią, zakodowany sygnał dźwiękowy jest najpierw tale przetwarzany, by izolować składowe w paśmie (lub wielu pasmach), które mogą zawierać składowe kodu, a następnie są one gromadzone przez okres czasu dla uśrednienia szumu, co oznaczono blokiem funkcjonalnym 278.
Nawiązując teraz do fig. 14, przykład realizacji dekodera analogowego według wynalazku jest pokazany w postaci blokowej. Dekoder z fig. 14 zawiera wejściową końcówkę, która jest sprzężona z czterema grupami detektorów składowych 282, 284, 286 i 288. Każda grupa detektorów składowych od 282 do 288 służy do wykrywania obecności składowych kodu w wejściowym sygnale dźwiękowym, reprezentujących odpowiedni symbol kodu. W przykładzie realizacji z fig. 14, urządzenie dekodera ma taką postać, by wykrywać obecność każdej z 4N składowych kodu, gdzie N jest liczbą całkowitą, tak że kod składa się z czterech różnych symboli, z których każdy jest reprezentowany przez unikalną grupę N składowych kodu. Zgodnie z tym, cztery grupy, od 282 do 288, zawierają 4N detektorów składowych.
Przykład realizacji jednego z 4N detektorów składowych z grup od 282 do 288 jest pokazany w postaci blokowej na fig. 15 i jest tam określony jako detektor składowej 290. Detektor składowej 290 posiada wejście 292 sprzężone z wejściem 280 dekodera z fig. 14 dla odbierania zakodowanego sygnału dźwiękowego. Detektor składowej 290 posiada górną gałąź
180 441 układu zawierającą filtr estymacji szumu 294, który, w jednym przykładzie realizacji, ma postać filtra pasmowego dla przepuszczania energii sygnału dźwiękowego w paśmie o środku w częstotliwości odpowiadającej wykrywanej składowej kodu. W alternatywnym i korzystnym przykładzie realizacji, filtr estymacji szumu 294 składa się z dwóch filtrów, z których jeden posiada pasmo przepuszczania rozciągające się w górę od częstotliwości odpowiedniej wykrywanej składowej kodu, a drugi filtr posiada pasmo przepuszczania rozciągające się w dół od częstotliwości wykrywanej składowej kodu, tak że oba filtry razem przepuszczają energię posiadającą częstotliwości powyżej i poniżej (lecz nie zawierające jej) częstotliwości składowej, która ma być wykrywana, lecz występujące w jej sąsiedztwie. Wyjście z filtra estymacji szumu 294 jest połączone z wejściem układu wyznaczania wartości bezwzględnej 296, który wytwarza sygnał wyjściowy reprezentujący wartość bezwzględną wyjścia z filtra estymacji szumu 294, doprowadzany do wejścia układu całkującego 300, który gromadzi sygnały do niego doprowadzane i odprowadza wartość reprezentującą energie sygnału w częściach widma częstotliwości sąsiadujących, lecz nie zawierających jej, z częstotliwością składowej, która ma być wykrywana, oraz odprowadza tę wartość na nieodwracające wejście wzmacniacza różnicowego 302, który pracuje jak wzmacniacz logarytmiczny.
Detektor składowej z fig. 15 posiada również dolną gałąź zawierającą filtr estymacji sygnału 306, którego wejście jest sprzężone z wejściem 292, by przyjmować zakodowany sygnał dźwiękowy, służący do przepuszczania pasma częstotliwości zasadniczo węższego, niż szerokie pasmo filtru estymacji szumu 294, tak że filtr estymacji sygnału 306 przepuszcza składowe sygnału zasadniczo jedynie o częstotliwości składowej kodu, która ma być wykrywana. Filtr estymacji sygnału 306 posiada wyjście sprzężone z wejściem układu wyznaczania wartości bezwzględnej 308, który służy do wytwarzania na swym wyjściu sygnału reprezentującego wartość bezwzględną sygnału z filtra estymacji sygnału 306. Wyjście z układu wyznaczania wartości bezwzględnej 308 jest sprzężone z wejściem układu całkującego 310. Układ całkujący 310 gromadzi wartości odprowadzane z układu 308 i tworzy sygnał wyjściowy reprezentujący energię w wąskim paśmie filtra estymacji sygnału dla założonego okresu czasu.
Każdy z układów całkujących 300 i 310 posiada wejścia zerujące połączone ze sobą dla odbierania wspólnego sygnału zerowania przykładanego do końcówki 312. Sygnał zerowania jest dostarczany przez układ sterujący 314, pokazany na fig. 14, który generuje okresowo sygnał zerowania.
Wracając do fig. 15, wyjście z układu całkującego 310 jest dostarczane do odwracalnego wejścia wzmacniacza 302, który działa w taki sposób, że wytwarza na wyjściu sygnał reprezentujący różnicę pomiędzy wyjściem z układu całkującego 310 i z układu całkującego 300. Jeśli wzmacniacz 302 jest wzmacniaczem logarytmicznym, zakres możliwych wartości wyjściowych jest zwężony dla zmniejszenia dynamicznego zakresu wyjścia, dla zastosowania do komparatora okienkowego 316, który wykrywa obecność, lub jej brak, składowej kodu w czasie danego przedziału, jak to jest wyznaczane przez układ sterujący 314 przez zastosowanie sygnału zerującego. Komparator okienkowy 314 odprowadza sygnał obecności kodu w przypadku, gdy wejście dostarczone ze wzmacniacza 302 przypada pomiędzy dolnym progiem, przykładanym jako ustalona wartość do końcówki wejściowej dolnego progu komparatora 316, oraz ustalonym górnym progiem, przykładnym do końcówki wejściowej górnego progu komparatora 316.
Nawiązując ponownie do fig. 14, każdy z N składowych detektorów 290 każdej grupy detektorów sprzęga wyjście z odpowiedniego komparatora okienkowego 316z wejściem układu logicznego wyznaczania kodu 320. Układ 320, sterowany przez układ sterujący 314, gromadzi różne sygnały obecności składowych kodu z 4N układów detektorów składowych 290 dla dużej liczby cykli zerowania, w zależności od ustawienia przez układ sterujący 314. Przy zakończeniu przedziału detekcji danego symbolu, ustalanego jak to zostanie opisane, układ logiczny wyznaczania kodu 320 wyznacza, czy symbol kodu został odebrany jako ten symbol, dla którego największa liczba składowych został wykryta w czasie przedziału, oraz odprowadza na wyjściu 322 sygnał wskazujący wykryty symbol kodu. Sygnał wyjściowy może być przechowywany w pamięci, włączany do większej informacji lub pliku danych, przesyłany lub wykorzystywany w inny sposób (na przykład jako sygnał sterujący).
180 441
Przedziały wykrywania symboli dla dekoderów opisanych powyżej z nawiązaniem do fig. 11, 12A, 12B, 14 i 15, mogą być ustanawiane na podstawie zależności czasowych symboli synchronizacji przesyłanych w każdej zakodowanej informacji, które mają założony czas trwania i porządek. Na przykład, zakodowana informacja zawarta w sygnale dźwiękowym może składać się z dwóch przedziałów danych zakodowanego symbolu E, po którym następują dwa przedziały danych zakodowanego symbolu S, przy czym oba są opisane z nawiązaniem do fig. 4. Dekodery z fig. 11, 12A, 12B, 14 i 15 działają tak, by początkowo badać obecność pierwszego spodziewanego symbolu synchronizacji, to znaczy zakodowanego symbolu E, który jest przesyłany w założonym przedziale czasu i wyznacza jego przedział transmisji. Następnie, dekodery badają obecność składowych kodu charakteryzujących symbol S i, po wykryciu, dekodery wyznaczają jego przedział transmisji. Na podstawie wyznaczonych przedziałów transmisji wyznaczany jest punkt przejścia z symbolu E do symbolu S, oraz, od tego punktu, ustalane są przedziały wykrywania dla każdych symboli bitów danych. W czasie przedziału wykrywania, dekoder gromadzi składowe kodu do wyznaczenia odpowiedniego symbolu przesyłanego w czasie tego przedziału w opisany powyżej sposób.
Chociaż różne elementy przykładu realizacji z fig. 14 i 15 są zaimplementowane przez układy analogowe, oczywiste jest, iż możliwe jest, by te same fimkcje były wykonywane, w całości lub w części, przez układ cyfrowy.
Nawiązując do fig. 16 i 17, pokazany jest system do szacowania słuchalności szeroko rozpowszechnionej informacji, takiej jak programy telewizyjne i radiowe. Figura 16 przedstawia schemat blokowy radiowej stacji nadawczej do nadawania sygnałów dźwiękowych w eter, które zostały zakodowane dla identyfikacji stacji wraz z czasem nadawania. Jeśli jest to pożądane, identyfikacja programu lub segmentu, który jest nadawany, może być również włączona. Źródło programu radiowego 340, takie jak odtwarzacz płyt kompaktowych, odtwarzacz kaset cyfrowych lub źródło dźwięku powstającego na żywo, jest sterowane przez zarządcę stacji za pomocą urządzenia sterującego 342, w celu kontrolowanego odprowadzania sygnałów dźwiękowych w celu nadawania ich. Wyjście 344 z źródła programu dźwiękowego jest sprzężone z wejściem kodera 348, zgodnego z przykładem realizacji z fig. 3 i zawierającego DSP 104, filtr pasmowy 120, przetwornik analogowo cyfrowy (A/D) 124, przetwornik cyfrowy - analogowy (DAC) 140 i układ sumujący 142. Urządzenie sterujące 342 zawiera główny procesor 90, klawiaturę 96 i monitor 100 w przykładzie z fig. 3, tak że główny procesor wchodzący w skład urządzenia sterującego 342 jest sprzężony z DSP zawartym w koderze 348 z fig. 16. Koder 348 pracuje pod kontrolą urządzenia sterującego 342 i włącza zakodowaną informację okresowo do dźwięku, który ma być transmitowany, a informacja zawiera odpowiednie dane identyfikujące. Koder 348 odprowadza zakodowany dźwięk do wejścia nadajnika radiowego 350, który moduluje falę nośną zakodowanym programem dźwiękowym i transmituje go w eter za pomocą anteny 352. Główny procesor wchodzący w skład urządzenia sterującego 342 jest zaprogramowany z pomocą klawiatury dla sterowania koderem tak, by odprowadzać odpowiednią zakodowaną informację, zawierającą dane identyfikacji stacji. Główny procesor automatycznie wytwarza dane czasu nadawania za pomocą zawartego w nim zegarowego układu odniesienia.
Nawiązując również do fig. 17, osobiste urządzenie monitorujące 380 systemu jest zamknięte w obudowie 382, która ma wystarczająco mały rozmiar, by być przenoszoną przez osobę członka audytorium uczestniczącego w nadzorowanym szacowaniu audytorium. Każdy z członków audytorium jest zaopatrzony w osobiste urządzenie monitorujące, takie jak urządzenie 380, które jest przenoszone przez członka audytorium w czasie okresu badania, takiego jak założony okres jednego tygodnia. Osobiste urządzenie monitorujące 380 zawiera wielokierunkowy mikrofon zbierający dźwięki otaczające członka audytorium, wliczając w to programy radiowe odtwarzane jako dźwięk przez głośnik odbiornika radiowego, takiego jak odbiornik radiowy 390 pokazany na fig. 17.
Osobiste urządzenie monitorujące 380 zawiera również układ obróbki sygnału 394, posiadający wejście sprzężone z wyjściem mikrofonu 386, służący do wzmacniania wyjścia z tego mikrofonu i poddawania go filtrowaniu pasmowemu w celu wytłumienia częstotliwości z poza pasma częstotliwości dźwięku zawierającego różne składowe częstotliwości kodu
180 441 umieszczone w sygnale dźwiękowym programu przez koder 348 z fig. 16, jak również w celu wykonania filtrowania dla anty-aliasingu przez konwersją analogowo-cyfrową.
Układ cyfrowy osobistego urządzenia monitorującego 380 jest pokazany na fig. 17 w postaci funkcjonalnego schematu blokowego zawierającego blok dekodera i blok sterujący, z których oba mogą być zaimplementowane w postaci cyfrowego procesora sygnałowego. Pamięć programu i danych 404 jest sprzężona z dekoderem 400 dla przyjmowania do przechowania wykrytych kodów, jak również z blokiem sterującym 402 do kontrolowania operacji zapisu i odczytu z pamięci 404. Układ wejścia/wyjścia (I/O) 406 jest sprzężony z pamięcią 404 dla przyjmowania danych odprowadzanych przez osobiste urządzenie monitorujące 380, jak również do przechowywania informacji takiej jak instrukcja programu. Układ (I/O) 406 jest również sprzężony z blokiem sterującym 402 dla kontrolowania operacji wejścia i wyjścia urządzenia 380.
Dekoder 400 działa tak ja dekoder z fig. 1, opisany wcześniej, i odprowadza dane kodu czasu i identyfikacji stacji, do przechowywania w pamięci 404. Osobiste urządzenie monitorujące 380 z korzyścią jest zdolne do współpracy ze stacją nadzorującą („docking station”), jak opisano w zgłoszeniu patentowym USA nr 08/101,558, złożonym, 2.08.1993, zatytułowanym „Compilance Incentives for Audience Monitoring/Recording Devices”, które jest często łączone z niniejszym wynalazkiem i jest cytowane tutaj tytułem odniesienia. Ponadto, osobiste urządzenie monitorujące jest zaopatrzone w dodatkowe cechy przenośnego nastawionego na odbiór audycji urządzenia monitorującego, takiego jak opisano we wspomnianym przed chwilą zgłoszeniu.
Stacja nadzorująca komunikuje się przez modem liniami telefonicznymi z centralnym urządzeniem przetwarzania danych, by załadować do niego dane czasu i identyfikacji stacji, co służy do tworzenia raportów dotyczących słuchalności i/lub oglądalności programów. Centralne urządzenie może również wysyłać informacje do stacji nadzorującej do wykorzystania przez nią samą lub w celu ich dostarczenia do urządzenia 380, taką jak wykonywalny program. Centralne urządzenie może również dostarczać informacji do stacji nadzorującej i/lub urządzenia 380 kanałem RF, tak jak istniejące audycje FM nadawane w postaci zakodowanej z taką informacją w sposób zgodny z niniejszym wynalazkiem. Stacja nadzorująca i/lub urządzenie 380 są zaopatrzone w odbiornik FM (nie pokazany dla większej przejrzystości), który demoduluje zakodowane audycje FM i dostarcza je do dekodera według niniejszego wynalazku. Zakodowana audycja FM może być również dostarczana kablem lub przez inny ośrodek transmisyjny.
Poza monitorowaniem za pomocą osobistych jednostek monitorujących, mogą być wykorzystane stacjonarne jednostki (takie jak jednostki typu „set-top”). Jednostki „set-top” mogą być tak połączone, by odbierać zakodowany sygnał dźwiękowy w postaci elektrycznej z odbiornika albo mogą wykorzystywać mikrofon, taki jak mikrofon 386 z fig. 17. Jednostki „settop” mogą więc monitorować wybrane kanały, przy jednoczesnym monitorowaniu składu audytorium, z zastosowaniem niniejszego wynalazku, albo bez tego monitorowania.
Inne zastosowania dotyczą sposobów kodowania i dekodowania według niniejszego wynalazku. W jednym zastosowaniu, ścieżki dźwiękowe produktów komercyjnych są zaopatrzone w kody identyfikacyjne w celu zapewnienią że produkty komercyjne zostały przesłane (drogą radiową lub telewizyjną) zgodnie z umową na dany czas.
W jeszcze innych zastosowaniach, sygnały sterujące są przesyłane w postaci kodów wytworzonych zgodnie z niniejszym wynalazkiem. W zastosowaniu tego typu, interaktywna zabawka odbiera i dekoduje zakodowany sygnał sterujący zawarty w części dźwiękowej audycji telewizyjnej lub radiowej, albo w nagraniu dźwiękowym, oraz wykonuje odpowiednie działanie. W innym zastosowaniu, ochronne kody sterujące są włączane do części dźwiękowych audycji radiowych lub telewizyjnych, albo nagrań dźwiękowych, tak by urządzenie odbierające lub odtwarzające, poprzez zdekodowanie tych kodów mogło wykonywać ochronną kontrolę dla prewencyjnego zapobiegania odbiorowi i lub odtwarzaniu audycji lub nagrań. Również, kody sterujące mogą być włączane do transmisji w telefonach komórkowych w celu zapobieżenia nieautoryzowanemu użytkowaniu ID telefonu komórkowego. W jeszcze jednym zastosowaniu, kody są włączane do transmisji telefonicznych w celu odróżnienia transmisji
180 441 głosu i danych w celu odpowiedniego sterowanego wyboru ścieżki transmisyjnej, w celu uniknięcia utraty transmitowanych danych.
Mogą być zaimplementowane różne funkcje identyfikacji nadajnika dla potwierdzania autentyczności transmisji wojskowych i komunikacji głosowej w transporcie lotniczym. Rozważane są tu również urządzenia monitorujące. W jednym takim zastosowaniu, uczestnicy badań rynkowych noszą osobiste urządzenia monitorujące, które odbierają zakodowane informacje dodane do publicznych adresów lub podobnych sygnałów dźwiękowych w hurtowniach lub miejscach sprzedaży, które zapisują obecność uczestników. Zgodnie z jeszcze jednym zastosowaniem, pracownicy noszą osobiste urządzenia monitorujące do odbierania zakodowanych, informacji dodanych do sygnałów dźwiękowych, w miejscy pracy, co ma na celu monitorowanie ich obecności w odpowiednich miejscach.
Zabezpieczona komunikacja może być również zaimplementowana przy wykorzystaniu niniejszego wynalazku. W jednym takim zastosowaniu, podwodna zabezpieczona komunikacja jest wykonana przez zespoły do kodowania i dekodowania według niniejszego wynalazku, bądź przez przypisanie poziomów składowych kodu w taki sposób, że kody są maskowane przez podwodne dźwięki ośrodka, bądź przez źródło dźwięku powstające w miejscu występowania nadajnika. W innym zastosowaniu, zabezpieczone transmisje stronicujące („paging transmissions”) są wykonywane poprzez włączanie kodów maskujących w transmisji sygnału dźwiękowego drogą powietrzną, które są odbierane i dekodowane przez urządzenie stronicujące („paging device”).
Sposoby kodowania i dekodowania według niniejszego wynalazku mogą być również zastosowane do potwierdzania autentyczności głosu. Na przykład, w telefonie, przechowywany zapis głosu może być porównywany z żywym głosem. W innym przykładzie zastosowania, dane takie jak numer bezpieczeństwa i/lub czas w ciągu dnia mogą być kodowane i łączone z wypowiedzią głosową, a następnie dekodowane i stosowane do automatycznej kontroli przetwarzania głosowej wypowiedzi. Urządzenie sterujące w takim układzie może być albo dołączone do telefonu lub innego urządzenia komunikacji głosowej, albo może być oddzielną jednostką stosowaną, gdy wypowiedź głosowa ma być przechowywana bezpośrednio, bez wysyłania liniami telefonicznymi lub w inny sposób. Dalszym zastosowaniem jest dostarczenie kodu autentyczności do pamięci przenośnego telefonu, tak że strumień głosu zawiera kod autentyczności, przez co umożliwia detekcję nieautoryzowanej transmisji.
Możliwe jest również osiągnięcie lepszego wykorzystania szerokości pasma kanału komunikacyjnego poprzez włączanie danych do głosu lub innych transmisji dźwiękowych. W zastosowaniu tego typu, odczyty danych wykonywane przez urządzenia samolotowe są włączone do transmisji głosowej samolot-ziemia w celu poinformowania obsługi naziemnej o pracy tych urządzeń, bez konieczności wydzielania oddzielnych kanałów głosu lub danych.
Piractwo kasetowe, nieautoryzowane kopiowanie prac chronionych prawem autorskim, takich jak nagrania audio/wideo i muzyka, może być również wykrywane przez kodowanie unikalnego numeru identyfikacyjnego w części dźwiękowej każdej autoryzowanej kopii za pomocą sposobu kodowania według niniejszego wynalazku. Jeśli zakodowany numer identyfikacyjny jest zakodowany w licznych kopiach, nieautoryzowane kopiowanie staje się ewidentne.
Dalsze zastosowanie wyznacza programy, które zostały nagrane z zastosowaniem VCR, zawierające dekoder według niniejszego wynalazku. Programy wideo (takie jak programy rozrywkowe, komercyjne, etc.) są kodowane zgodnie z niniejszym wynalazkiem kodem identyfikacyjnym identyfikującym program. Gdy VCR jest ustawiony w trybie nagrywania, nagrywanie części dźwiękowe sygnałów sa dostarczane do dekodera dla wykrywania kodów identyfikacyjnych. Wykryte kody są przechowywane w pamięci VCR dla późniejszego użycia przy generacji raportu o nagrywaniu.
Dane identyfikujące prace chronione prawami autorskimi, które zostały nadane przez stację lub w inny sposób przetransmitowane przez producenta, mogą być zatrzymywane z zastosowaniem niniejszego wynalazku, dla zapewnienia realizacji prac ochronnych. Prace są zakodowane z odpowiednimi kodami identyfikacyjnymi, które w sposób unikalny je identyfikują. Jednostka monitorująca, do której dochodzą sygnały audycji lub nadawane w inny sposób przez jedną lub więcej stacje lub rozpowszechniających, dostarcza część dźwiękową
180 441 sygnału do dekodera według wynalazku który wykrywa obecne w nim kody identyfikujące. Wykryte kody są przechowywane w pamięci do zastosowania do generacji raportu, który może być wykorzystywany do stwierdzenia przestrzegania praw autorskich.
Proponowane dekodery zgodne ze standardem Motion Picture Experts Group (MPEG) 2 już wykorzystują niektóre elementy przetwarzania z akustyczną ekspansją wymaganego do wydobycia zakodowanych danych zgodnie z niniejszym wynalazkiem, tak że zapobieganie nagrywaniu korzystające ze sposobów (na przykład zapobiegania nieautoryzowanemu nagrywaniu chronionych prawem autorskim prac) wykorzystujących kody zgodnie z niniejszym wynalazkiem są dobrze dostosowane do dekoderów MPEG 2. Odpowiedni dekoder według niniejszego wynalazku jest umieszczony w urządzeniu nagrywającym, lub jako dodatek do niego, i wykrywa obecność kodu zabronionej kopii w dźwięku dostarczonym z nagrania. Urządzenie nagrywające odpowiada w przypadku wykrycia takiego kodu uniemożliwieniem nagrywania odpowiedniego sygnału dźwiękowego i dowolnych towarzyszących mu sygnałów, taki jak sygnały wizyjne. Informacja o prawie autorskim zakodowana według niniejszego wynalazku znajduje się wewnątrz pasma i nie wymaga oddzielnego taktowania lub synchronizacji, oraz w sposób naturalny towarzyszy materiałowi dźwiękowemu.
W jeszcze innych zastosowaniach, programy transmitowane drogą powietrzną, kablową lub w inny sposób, albo programy nagrywane na taśmę, płytę lub w inny sposób, zawierają części dźwięku zakodowane z sygnałami kontrolnymi do zastosowania przez jedno lub więcej sterowane przez słuchacza lub widza urządzenie. Na przykład, program opisujący trasę, którą mógłby podróżować rowerzysta, może zawierać część dźwiękową zakodowaną według wynalazku z sygnałami sterującymi, używanymi przez stacjonarny rower treningowy dla kontroli oporu pedałów łub przesuwu pedałów zgodnie z widocznym nachyleniem opisanej trasy. Gdy użytkownik pedałuje na stacjonarnym rowerze, widzi program na ekranie telewizyjnym lub dowolnym innym, a część dźwiękowa programu jest odtwarzana jako dźwięk. Mikrofon w stacjonarnym rowerze przechwytuje odtwarzany dźwięk i dekoder według niniejszego wynalazku wykrywa sygnały sterujące zawarte w dźwięku, zapewniając tym samym kontrolę oporu pedałów roweru ćwiczeniowego.
Z powyższego wynika, że sposoby według wynalazku mogą być zaimplementowane w całości lub w części przy wykorzystaniu układów analogowych lub cyfrowych, oraz że wszystkie lub część funkcji przetwarzania sygnału mogą być wykonywane przez układy z wbudowanymi układami sterowania lub z wykorzystaniem cyfrowych procesów sygnałowych, mikroprocesorów, mikrokomputerów, układów wieloprocesorowych (na przykład procesorów równoległych), albo tym podobnych.
180 441
FIG. /
180 441
180 441
180 441
FIG.4
180 441
180 441
FIG. 6
180 441
180 441
FIG.7B
ROZfOCZNlJ OBUiCZANte WAŻENIA
_______I______Z=
OBLICZ FFT WYSOKIEJ t R0ZJ)iZieu:Z05C|
168
---------!--------Ć
J>UA KAŻDEJ SKŁADOWEJ kodo W BIEŻĄCYM ^/Μβοι,υ
ZNAJDŹ JM7HINUJĄCĄ TONALNĄ W SĄSIEDZTWIE
172
180 441
ZATRZYMAJ WSPÓŁ' CZYNNIK WAŻENIA NA PODSTAWIE DOMINUJĄCEJ TONALNEJ
176
180
OBLICZ aiDOŁNOŚCI WĄSKO I SZEROKOPASMOWEGO MASKOWANIA
USTAW WAŻENIE NA MASKOWANIE WĄSKOPASMOWE
190^
USTAW WAŻENIE NA MASKOWANIE SZEROKOPASMOWE
180 441
720
722
180 441
FIG. 7E
180 441
FIG. 7F
MOC
fPGM-0.3CB fpgM fpGM+0.3CB
180 441
180 441
180 441
FIG. ΙΟ
180 441
180 441
START
FIG. 12A
USTAW «SYMCH
450
TAK wywołaj j>Eru -»------
---------1^-482
USTAW ublTi> <
-•DO.PA] BIT .W SŁOWA
492
180 441
FIG. !2B
180 441
Ó
Ν
180 441
FIG. 14
180 441
180 441
180 441
FIG.17
Departament Wydawnictw UP RP. Nakład 70 egz. Cena 6,00 zł.
Claims (6)
- Zastrzeżenia patentowe1. Sposób detekcji kodu w zakodowanym sygnale dźwiękowym, zawierającym liczne składowe częstotliwości sygnału dźwiękowego i przynajmniej jedną składową częstotliwości kodu o dobranej amplitudzie i częstotliwości dźwięku do maskowania składowej częstotliwości kodu, ze względu na słyszalność ludzkiego ucha, przez przynajmniej jedną z licznych składowych częstotliwości sygnału dźwiękowego, znamienny tym, że w kolejnych etapach ustala się spodziewaną amplitudę kodu przynajmniej jednej składowej częstotliwości kodu na podśtawie zakodowanego sygnału dźwiękowego i wykrywa się składową częstotliwość kodu w zakodowanym sygnale dźwiękowym na podstawie spodziewanej amplitudy kodu.
- 2. Sposób detekcji kodu w zakodowanym sygnale dźwiękowym, zawierającym liczne składowe częstotliwości sygnału dźwiękowego i przynajmniej jedną składową częstotliwości kodu posiadającą założoną amplitudę i założoną częstotliwość dźwięku, do wyróżniania przynajmniej jednej składowej częstotliwości kodu licznych składowych częstotliwości sygnału dźwiękowego, znamienny tym, że w kolejnych etapach wyznacza się amplitudę składowej częstotliwości zakodowanego sygnału dźwiękowego w pierwszym zakresie częstotliwości dźwięku, zawierającym założoną częstotliwość dźwięku przynajmniej jednej składowej częstotliwości kodu, ustala się amplitudę szumu dla pierwszego zakresu częstotliwości dźwięku i wykrywa się obecność przynajmniej jednej składowej częstotliwości kodu w pierwszym zakresie częstotliwości dźwięku na podstawie ustalonej amplitudy jego szumu i wyznaczonej amplitudy zawartych w nim składowych częstotliwości.
- 3. Urządzenie do detekcji kodu w zakodowanym sygnale dźwiękowym, maskowanego i niesłyszalnego przez ludzkie ucho, znamienne tym, że zawiera elektroniczny analizator sygnału, ustalający spodziewaną amplitudę kodu na podstawie zakodowanego sygnału dźwiękowego oraz połączony z analizatorem elektroniczny detektor kodu, wykrywającego składowe częstotliwości kodu w zakodowanym sygnale dźwiękowym na podstawie spodziewanej amplitudy kodu ustalonej przez analizator.
- 4. Urządzenie według zastrz. 3, znamienne tym, że zawiera detektor określonej częstotliwości składowej częstotliwości kodu w zakodowanym sygnale dźwiękowym dla określonej częstotliwości, przy czym elektroniczny analizator sygnału ustalający spodziewaną amplitudę kodu jest zaopatrzony w komparator amplitudy wykrytej składowej częstotliwości kodu i spodziewanej amplitudy kodu.
- 5. Urządzenie według zastrz. 4, znamienne tym, że detektor określonej częstotliwości stanowi separator rozdzielający zakodowany sygnał dźwiękowy na grupy składowych częstotliwości, z których każda zawiera przynajmniej jedną składową częstotliwości z odpowiedniego zakresu częstotliwości, gdzie pierwsza z grup składowych częstotliwości posiada odpowiedni zakres częstotliwości zawierający częstotliwość dźwięku przynajmniej jednej składowej częstotliwości kodu.
- 6. Urządzenie do detekcji kodu w zakodowanym sygnale dźwiękowym, znamienne tym, że zawiera elektroniczny analizator sygnału, wyznaczający spodziewaną amplitudę składowej częstotliwości kodu w zakodowanym sygnale dźwiękowym w pierwszym zakresie częstotliwości, zawierającym składową częstotliwość kodu, przelicznik szumu, wyznaczający amplitudę szumu w pierwszym zakresie częstotliwości, oraz połączony z analizatorem sygnału i przelicznikiem szumu detektor elektroniczny, wykrywający obecność składowej częstotliwości kodu na podstawie amplitudy szumu wyliczonej przez przelicznik szumu i amplitudy składowej częstotliwości kodu wyznaczonej przez analizator w pierwszym zakresie częstotliwości.180 441
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/221,019 US5450490A (en) | 1994-03-31 | 1994-03-31 | Apparatus and methods for including codes in audio signals and decoding |
US08/408,010 US5764763A (en) | 1994-03-31 | 1995-03-24 | Apparatus and methods for including codes in audio signals and decoding |
PCT/US1995/003797 WO1995027349A1 (en) | 1994-03-31 | 1995-03-27 | Apparatus and methods for including codes in audio signals and decoding |
Publications (1)
Publication Number | Publication Date |
---|---|
PL180441B1 true PL180441B1 (pl) | 2001-02-28 |
Family
ID=26915413
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PL95333767A PL183307B1 (pl) | 1994-03-31 | 1995-03-27 | System kodowania sygnału dźwiękowego |
PL95333766A PL187110B1 (pl) | 1994-03-31 | 1995-03-27 | Sposób włączania kodu, zawierającego wiele składowych częstotliwości, do sygnału dźwiękowego |
PL95333768A PL183573B1 (pl) | 1994-03-31 | 1995-03-27 | System do kodowania i system do dekodowania sygnału dźwiękowego |
PL95333769A PL180441B1 (pl) | 1994-03-31 | 1995-03-27 | Sposób i urzadzenie do detekcji koduP ie rw s z e n stw o :31.03.1994,US,08/22101924.03.1995,US,08/408010 PL PL PL PL PL |
PL95316631A PL177808B1 (pl) | 1994-03-31 | 1995-03-27 | Sposób i urządzenie do kodowania sygnału dźwiękowego |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PL95333767A PL183307B1 (pl) | 1994-03-31 | 1995-03-27 | System kodowania sygnału dźwiękowego |
PL95333766A PL187110B1 (pl) | 1994-03-31 | 1995-03-27 | Sposób włączania kodu, zawierającego wiele składowych częstotliwości, do sygnału dźwiękowego |
PL95333768A PL183573B1 (pl) | 1994-03-31 | 1995-03-27 | System do kodowania i system do dekodowania sygnału dźwiękowego |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PL95316631A PL177808B1 (pl) | 1994-03-31 | 1995-03-27 | Sposób i urządzenie do kodowania sygnału dźwiękowego |
Country Status (23)
Country | Link |
---|---|
US (3) | US6421445B1 (pl) |
EP (1) | EP0753226B1 (pl) |
JP (2) | JPH10500263A (pl) |
CN (1) | CN1149366A (pl) |
AT (1) | AT410047B (pl) |
AU (1) | AU709873B2 (pl) |
BR (1) | BR9507230A (pl) |
CA (1) | CA2185790C (pl) |
CH (1) | CH694652A5 (pl) |
CZ (1) | CZ288497B6 (pl) |
DE (1) | DE19581594T1 (pl) |
DK (1) | DK176762B1 (pl) |
FI (1) | FI115938B (pl) |
GB (1) | GB2302000B (pl) |
HU (7) | HU0004768D0 (pl) |
IL (1) | IL113190A (pl) |
LU (1) | LU88820A1 (pl) |
MX (1) | MX9604464A (pl) |
NO (1) | NO322242B1 (pl) |
NZ (2) | NZ283612A (pl) |
PL (5) | PL183307B1 (pl) |
SE (1) | SE519882C2 (pl) |
WO (1) | WO1995027349A1 (pl) |
Families Citing this family (172)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5812937B1 (en) * | 1993-04-08 | 2000-09-19 | Digital Dj Inc | Broadcast data system with multiple-tuner receiver |
CH694652A5 (de) | 1994-03-31 | 2005-05-13 | Arbitron Co | Vorrichtung und Verfahren zum Einfügen von Kodes in ein Audiosignal. |
GB9604659D0 (en) * | 1996-03-05 | 1996-05-01 | Central Research Lab Ltd | Audio signal identification |
AU2205297A (en) * | 1996-03-13 | 1997-10-01 | Digital D.J. Incorporated | Subcarrier injection system and method using adaptive level-shifted minimum shift keying |
JP3503434B2 (ja) * | 1996-07-31 | 2004-03-08 | 日本ビクター株式会社 | 著作権情報の埋め込み装置及び記録媒体 |
JP3470864B2 (ja) * | 1996-07-31 | 2003-11-25 | 日本ビクター株式会社 | 著作権情報の埋め込み装置及び記録媒体 |
US7607147B1 (en) * | 1996-12-11 | 2009-10-20 | The Nielsen Company (Us), Llc | Interactive service device metering systems |
US8183998B2 (en) | 1996-12-16 | 2012-05-22 | Ip Holdings, Inc. | System for seamless and secure networking of implantable medical devices, electronic patch devices and wearable devices |
US6169789B1 (en) | 1996-12-16 | 2001-01-02 | Sanjay K. Rao | Intelligent keyboard system |
US6675383B1 (en) * | 1997-01-22 | 2004-01-06 | Nielsen Media Research, Inc. | Source detection apparatus and method for audience measurement |
AU5496498A (en) * | 1998-01-16 | 1999-08-02 | Kabusiki Kaisha Intellectual Cyber | Recording method for specifying master recording medium and method for specifying master recording medium |
CN1505291A (zh) | 1998-05-12 | 2004-06-16 | ���ѷý���о��ɷ�����˾ | 数字电视的观众测定*** |
US7006555B1 (en) | 1998-07-16 | 2006-02-28 | Nielsen Media Research, Inc. | Spectral audio encoding |
US6272176B1 (en) * | 1998-07-16 | 2001-08-07 | Nielsen Media Research, Inc. | Broadcast encoding system and method |
US7515896B1 (en) | 1998-10-21 | 2009-04-07 | Parkervision, Inc. | Method and system for down-converting an electromagnetic signal, and transforms for same, and aperture relationships |
US6061551A (en) | 1998-10-21 | 2000-05-09 | Parkervision, Inc. | Method and system for down-converting electromagnetic signals |
US7392312B1 (en) * | 1998-09-11 | 2008-06-24 | Lv Partners, L.P. | Method for utilizing visual cue in conjunction with web access |
US6745234B1 (en) | 1998-09-11 | 2004-06-01 | Digital:Convergence Corporation | Method and apparatus for accessing a remote location by scanning an optical code |
US6823388B1 (en) | 1998-09-11 | 2004-11-23 | L.V. Parners, L.P. | Method and apparatus for accessing a remote location with an optical reader having a programmable memory system |
US6868433B1 (en) | 1998-09-11 | 2005-03-15 | L.V. Partners, L.P. | Input device having positional and scanning capabilities |
US7392945B1 (en) | 1998-09-11 | 2008-07-01 | Lv Partners, L.P. | Portable scanner for enabling automatic commerce transactions |
US7191247B1 (en) | 1998-09-11 | 2007-03-13 | Lv Partners, Lp | Method for connecting a wireless device to a remote location on a network |
US6704864B1 (en) | 1999-08-19 | 2004-03-09 | L.V. Partners, L.P. | Automatic configuration of equipment software |
US7386600B1 (en) | 1998-09-11 | 2008-06-10 | Lv Partners, L.P. | Launching a web site using a personal device |
US7440993B1 (en) | 1998-09-11 | 2008-10-21 | Lv Partners, L.P. | Method and apparatus for launching a web browser in response to scanning of product information |
US6636896B1 (en) | 1998-09-11 | 2003-10-21 | Lv Partners, L.P. | Method and apparatus for utilizing an audibly coded signal to conduct commerce over the internet |
US7379901B1 (en) | 1998-09-11 | 2008-05-27 | Lv Partners, L.P. | Accessing a vendor web site using personal account information retrieved from a credit card company web site |
US6813485B2 (en) * | 1998-10-21 | 2004-11-02 | Parkervision, Inc. | Method and system for down-converting and up-converting an electromagnetic signal, and transforms for same |
US6370371B1 (en) | 1998-10-21 | 2002-04-09 | Parkervision, Inc. | Applications of universal frequency translation |
US7236754B2 (en) | 1999-08-23 | 2007-06-26 | Parkervision, Inc. | Method and system for frequency up-conversion |
US7039372B1 (en) | 1998-10-21 | 2006-05-02 | Parkervision, Inc. | Method and system for frequency up-conversion with modulation embodiments |
US7209725B1 (en) * | 1999-01-22 | 2007-04-24 | Parkervision, Inc | Analog zero if FM decoder and embodiments thereof, such as the family radio service |
US6853690B1 (en) | 1999-04-16 | 2005-02-08 | Parkervision, Inc. | Method, system and apparatus for balanced frequency up-conversion of a baseband signal and 4-phase receiver and transceiver embodiments |
US6879817B1 (en) | 1999-04-16 | 2005-04-12 | Parkervision, Inc. | DC offset, re-radiation, and I/Q solutions using universal frequency translation technology |
US7110444B1 (en) | 1999-08-04 | 2006-09-19 | Parkervision, Inc. | Wireless local area network (WLAN) using universal frequency translation technology including multi-phase embodiments and circuit implementations |
US7693230B2 (en) | 1999-04-16 | 2010-04-06 | Parkervision, Inc. | Apparatus and method of differential IQ frequency up-conversion |
US7065162B1 (en) | 1999-04-16 | 2006-06-20 | Parkervision, Inc. | Method and system for down-converting an electromagnetic signal, and transforms for same |
US6871180B1 (en) * | 1999-05-25 | 2005-03-22 | Arbitron Inc. | Decoding of information in audio signals |
US10728381B2 (en) * | 1999-06-04 | 2020-07-28 | Raman K. Rao | Reconfigurable mobile device interfaces supporting authenticated high quality video, audio, TV and multimedia services |
JP4522509B2 (ja) * | 1999-07-07 | 2010-08-11 | アルパイン株式会社 | オーディオ装置 |
US8295406B1 (en) | 1999-08-04 | 2012-10-23 | Parkervision, Inc. | Universal platform module for a plurality of communication protocols |
CA2809775C (en) | 1999-10-27 | 2017-03-21 | The Nielsen Company (Us), Llc | Audio signature extraction and correlation |
US6947893B1 (en) * | 1999-11-19 | 2005-09-20 | Nippon Telegraph & Telephone Corporation | Acoustic signal transmission with insertion signal for machine control |
GB2358999A (en) * | 2000-02-02 | 2001-08-08 | Central Research Lab Ltd | A system and method for labelling a signal |
JP2001275115A (ja) * | 2000-03-23 | 2001-10-05 | Nec Corp | 電子すかしデータ挿入装置および検出装置 |
US6968564B1 (en) * | 2000-04-06 | 2005-11-22 | Nielsen Media Research, Inc. | Multi-band spectral audio encoding |
US7010286B2 (en) | 2000-04-14 | 2006-03-07 | Parkervision, Inc. | Apparatus, system, and method for down-converting and up-converting electromagnetic signals |
US7466742B1 (en) * | 2000-04-21 | 2008-12-16 | Nielsen Media Research, Inc. | Detection of entropy in connection with audio signals |
US6879652B1 (en) * | 2000-07-14 | 2005-04-12 | Nielsen Media Research, Inc. | Method for encoding an input signal |
FR2815507B1 (fr) * | 2000-10-16 | 2003-01-31 | Cit Alcatel | Procede de gestion des ressources radio dans un reseau de telecommunication interactif |
US7010559B2 (en) * | 2000-11-14 | 2006-03-07 | Parkervision, Inc. | Method and apparatus for a parallel correlator and applications thereof |
US7454453B2 (en) | 2000-11-14 | 2008-11-18 | Parkervision, Inc. | Methods, systems, and computer program products for parallel correlation and applications thereof |
US20020080976A1 (en) * | 2000-12-14 | 2002-06-27 | Schreer Scott P. | System and method for accessing authorized recordings |
US7072908B2 (en) * | 2001-03-26 | 2006-07-04 | Microsoft Corporation | Methods and systems for synchronizing visualizations with audio streams |
US6807528B1 (en) * | 2001-05-08 | 2004-10-19 | Dolby Laboratories Licensing Corporation | Adding data to a compressed data frame |
DE10129239C1 (de) | 2001-06-18 | 2002-10-31 | Fraunhofer Ges Forschung | Vorrichtung und Verfahren zum Einbetten eines Wasserzeichens in ein Audiosignal |
US8572640B2 (en) | 2001-06-29 | 2013-10-29 | Arbitron Inc. | Media data use measurement with remote decoding/pattern matching |
CN1545773A (zh) * | 2001-08-22 | 2004-11-10 | 尼尔逊媒介研究股份有限公司 | 电视机邻近传感器 |
US7072427B2 (en) | 2001-11-09 | 2006-07-04 | Parkervision, Inc. | Method and apparatus for reducing DC offsets in a communication system |
US7085335B2 (en) * | 2001-11-09 | 2006-08-01 | Parkervision, Inc. | Method and apparatus for reducing DC offsets in a communication system |
JP4166466B2 (ja) * | 2001-12-19 | 2008-10-15 | ソニー株式会社 | 無線通信システム及び無線通信方法、無線通信装置及びその制御方法、並びにコンピュータ・プログラム |
US20030131350A1 (en) * | 2002-01-08 | 2003-07-10 | Peiffer John C. | Method and apparatus for identifying a digital audio signal |
US7076558B1 (en) | 2002-02-27 | 2006-07-11 | Microsoft Corporation | User-centric consent management system and method |
US7321640B2 (en) * | 2002-06-07 | 2008-01-22 | Parkervision, Inc. | Active polyphase inverter filter for quadrature signal generation |
US7379883B2 (en) | 2002-07-18 | 2008-05-27 | Parkervision, Inc. | Networking methods and systems |
US7460584B2 (en) | 2002-07-18 | 2008-12-02 | Parkervision, Inc. | Networking methods and systems |
US7143028B2 (en) * | 2002-07-24 | 2006-11-28 | Applied Minds, Inc. | Method and system for masking speech |
US7460827B2 (en) * | 2002-07-26 | 2008-12-02 | Arbitron, Inc. | Radio frequency proximity detection and identification system and method |
US7239981B2 (en) | 2002-07-26 | 2007-07-03 | Arbitron Inc. | Systems and methods for gathering audience measurement data |
US8959016B2 (en) | 2002-09-27 | 2015-02-17 | The Nielsen Company (Us), Llc | Activating functions in processing devices using start codes embedded in audio |
US9711153B2 (en) | 2002-09-27 | 2017-07-18 | The Nielsen Company (Us), Llc | Activating functions in processing devices using encoded audio and detecting audio signatures |
US20060018482A1 (en) * | 2002-10-16 | 2006-01-26 | Acewavetech Co., Ltd. | Encryption processing method and device of a voice signal |
MXPA05004231A (es) * | 2002-10-23 | 2005-07-05 | Nielsen Media Res Inc | Aparato para la insercion de datos digitales, y metodos para utilizarlo con audio/video comprimidos. |
US6845360B2 (en) * | 2002-11-22 | 2005-01-18 | Arbitron Inc. | Encoding multiple messages in audio data and detecting same |
CA2511919A1 (en) | 2002-12-27 | 2004-07-22 | Nielsen Media Research, Inc. | Methods and apparatus for transcoding metadata |
TW200522623A (en) * | 2003-03-03 | 2005-07-01 | Interdigital Tech Corp | Reduced complexity sliding window based equalizer |
US7042967B2 (en) * | 2003-03-03 | 2006-05-09 | Interdigital Technology Corporation | Reduced complexity sliding window based equalizer |
JP2004297141A (ja) * | 2003-03-25 | 2004-10-21 | Nippon Hoso Kyokai <Nhk> | データ放送における視聴履歴取得システム、送信装置、及び受信装置 |
KR100948381B1 (ko) * | 2003-05-15 | 2010-03-22 | 삼성전자주식회사 | 인간시각시스템을 이용한 영상 워터마킹 방법 |
US7460684B2 (en) | 2003-06-13 | 2008-12-02 | Nielsen Media Research, Inc. | Method and apparatus for embedding watermarks |
AU2003249319A1 (en) | 2003-06-20 | 2005-01-28 | Nielsen Media Research, Inc | Signature-based program identification apparatus and methods for use with digital broadcast systems |
AU2003263032A1 (en) * | 2003-08-29 | 2005-04-14 | Kevin K. Deng | Methods and apparatus to measure media consumption |
US7474739B2 (en) * | 2003-12-15 | 2009-01-06 | International Business Machines Corporation | Providing speaker identifying information within embedded digital information |
US8447668B2 (en) * | 2004-01-16 | 2013-05-21 | Keith Jentoft | Audio-equipped transaction card systems and approaches |
CA2562137C (en) * | 2004-04-07 | 2012-11-27 | Nielsen Media Research, Inc. | Data insertion apparatus and methods for use with compressed audio/video data |
NZ552644A (en) | 2004-07-02 | 2008-09-26 | Nielsen Media Res Inc | Methods and apparatus for mixing compressed digital bit streams |
WO2006023770A2 (en) * | 2004-08-18 | 2006-03-02 | Nielsen Media Research, Inc. | Methods and apparatus for generating signatures |
US7672356B2 (en) * | 2005-05-19 | 2010-03-02 | Itt Manufacturing Enterprises, Inc. | Method and apparatus for detection of a frequency coded sequence in the presence of sinusoidal interference |
EP1739670A1 (en) * | 2005-06-29 | 2007-01-03 | Sony DADC Austria AG | Optical data carrier |
CN101278568B (zh) | 2005-08-16 | 2010-12-15 | 尼尔森(美国)有限公司 | 显示装置开/关检测方法和设备 |
EP1922654B1 (en) * | 2005-09-26 | 2020-05-13 | Nielsen Media Research, Inc. | Methods and apparatus for metering computer-based media presentation |
US9015740B2 (en) | 2005-12-12 | 2015-04-21 | The Nielsen Company (Us), Llc | Systems and methods to wirelessly meter audio/visual devices |
JP4728860B2 (ja) * | 2006-03-29 | 2011-07-20 | 株式会社東芝 | 情報検索装置 |
CN101536503B (zh) | 2006-06-15 | 2012-09-26 | 尼尔森(美国)有限公司 | 利用隐藏字幕信息来计量内容曝光的方法和装置 |
WO2008045950A2 (en) | 2006-10-11 | 2008-04-17 | Nielsen Media Research, Inc. | Methods and apparatus for embedding codes in compressed audio data streams |
US10885543B1 (en) | 2006-12-29 | 2021-01-05 | The Nielsen Company (Us), Llc | Systems and methods to pre-scale media content to facilitate audience measurement |
AU2008218716B2 (en) | 2007-02-20 | 2012-05-10 | The Nielsen Company (Us), Llc | Methods and apparatus for characterizing media |
US8458737B2 (en) * | 2007-05-02 | 2013-06-04 | The Nielsen Company (Us), Llc | Methods and apparatus for generating signatures |
US8213521B2 (en) | 2007-08-15 | 2012-07-03 | The Nielsen Company (Us), Llc | Methods and apparatus for audience measurement using global signature representation and matching |
US20090074094A1 (en) * | 2007-09-14 | 2009-03-19 | Qualcomm Incorporated | Beacon symbols with multiple active subcarriers for wireless communication |
CA2858944C (en) | 2007-11-12 | 2017-08-22 | The Nielsen Company (Us), Llc | Methods and apparatus to perform audio watermarking and watermark detection and extraction |
AU2012241085B2 (en) * | 2007-11-12 | 2014-10-23 | The Nielsen Company (Us), Llc | Methods and apparatus to perform audio watermarking and watermark detection and extraction |
US8457951B2 (en) | 2008-01-29 | 2013-06-04 | The Nielsen Company (Us), Llc | Methods and apparatus for performing variable black length watermarking of media |
CA2717723C (en) | 2008-03-05 | 2016-10-18 | The Nielsen Company (Us), Llc | Methods and apparatus for generating signatures |
AU2013203820B2 (en) * | 2008-10-24 | 2016-08-04 | The Nielsen Company (Us), Llc | Methods and Apparatus to Extract Data Encoded in Media |
US8121830B2 (en) * | 2008-10-24 | 2012-02-21 | The Nielsen Company (Us), Llc | Methods and apparatus to extract data encoded in media content |
US9667365B2 (en) | 2008-10-24 | 2017-05-30 | The Nielsen Company (Us), Llc | Methods and apparatus to perform audio watermarking and watermark detection and extraction |
AU2013203838B2 (en) * | 2008-10-24 | 2016-09-08 | The Nielsen Company (Us), Llc | Methods and apparatus to perform audio watermarking and watermark detection and extraction |
US8359205B2 (en) * | 2008-10-24 | 2013-01-22 | The Nielsen Company (Us), Llc | Methods and apparatus to perform audio watermarking and watermark detection and extraction |
US9124769B2 (en) | 2008-10-31 | 2015-09-01 | The Nielsen Company (Us), Llc | Methods and apparatus to verify presentation of media content |
US8508357B2 (en) | 2008-11-26 | 2013-08-13 | The Nielsen Company (Us), Llc | Methods and apparatus to encode and decode audio for shopper location and advertisement presentation tracking |
CN101420564A (zh) * | 2008-12-02 | 2009-04-29 | 北京中星微电子有限公司 | 一种音频制式识别电路及终端 |
US20100184479A1 (en) * | 2009-01-20 | 2010-07-22 | Griffin Jr Paul P | System and Apparatus for Communicating Digital Data through Audio Input/Output Ports |
US10008212B2 (en) * | 2009-04-17 | 2018-06-26 | The Nielsen Company (Us), Llc | System and method for utilizing audio encoding for measuring media exposure with environmental masking |
US20100268540A1 (en) * | 2009-04-17 | 2010-10-21 | Taymoor Arshi | System and method for utilizing audio beaconing in audience measurement |
US20100268573A1 (en) * | 2009-04-17 | 2010-10-21 | Anand Jain | System and method for utilizing supplemental audio beaconing in audience measurement |
US8666528B2 (en) * | 2009-05-01 | 2014-03-04 | The Nielsen Company (Us), Llc | Methods, apparatus and articles of manufacture to provide secondary content in association with primary broadcast media content |
US20130102241A1 (en) * | 2009-09-11 | 2013-04-25 | Lazer Spots, Llc | Targeted content insertion for devices receiving radio broadcast content |
US20130232198A1 (en) * | 2009-12-21 | 2013-09-05 | Arbitron Inc. | System and Method for Peer-to-Peer Distribution of Media Exposure Data |
US20110153391A1 (en) * | 2009-12-21 | 2011-06-23 | Michael Tenbrock | Peer-to-peer privacy panel for audience measurement |
EP2362384A1 (en) * | 2010-02-26 | 2011-08-31 | Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. | Watermark generator, watermark decoder, method for providing a watermark signal, method for providing binary message data in dependence on a watermarked signal and a computer program using improved synchronization concept |
EP2362387A1 (en) | 2010-02-26 | 2011-08-31 | Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. | Watermark generator, watermark decoder, method for providing a watermark signal in dependence on binary message data, method for providing binary message data in dependence on a watermarked signal and computer program using a differential encoding |
EP2362385A1 (en) | 2010-02-26 | 2011-08-31 | Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. | Watermark signal provision and watermark embedding |
EP2362382A1 (en) | 2010-02-26 | 2011-08-31 | Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. | Watermark signal provider and method for providing a watermark signal |
EP2362386A1 (en) | 2010-02-26 | 2011-08-31 | Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. | Watermark generator, watermark decoder, method for providing a watermark signal in dependence on binary message data, method for providing binary message data in dependence on a watermarked signal and computer program using a two-dimensional bit spreading |
EP2362383A1 (en) | 2010-02-26 | 2011-08-31 | Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. | Watermark decoder and method for providing binary message data |
US8713593B2 (en) * | 2010-03-01 | 2014-04-29 | Zazum, Inc. | Detection system and method for mobile device application |
US8855101B2 (en) * | 2010-03-09 | 2014-10-07 | The Nielsen Company (Us), Llc | Methods, systems, and apparatus to synchronize actions of audio source monitors |
US8768713B2 (en) * | 2010-03-15 | 2014-07-01 | The Nielsen Company (Us), Llc | Set-top-box with integrated encoder/decoder for audience measurement |
US9134875B2 (en) | 2010-03-23 | 2015-09-15 | VoteBlast, Inc. | Enhancing public opinion gathering and dissemination |
US8732605B1 (en) | 2010-03-23 | 2014-05-20 | VoteBlast, Inc. | Various methods and apparatuses for enhancing public opinion gathering and dissemination |
JP5573298B2 (ja) * | 2010-03-31 | 2014-08-20 | ヤマハ株式会社 | 放音装置 |
US8676570B2 (en) | 2010-04-26 | 2014-03-18 | The Nielsen Company (Us), Llc | Methods, apparatus and articles of manufacture to perform audio watermark decoding |
US8619985B2 (en) * | 2010-04-27 | 2013-12-31 | Research In Motion Limited | Table splitting for cryptographic processes |
JP5857418B2 (ja) * | 2011-03-02 | 2016-02-10 | 大日本印刷株式会社 | 聴覚マスキングデータの作成方法および装置 |
GB201105992D0 (en) * | 2011-04-08 | 2011-05-18 | Univ Surrey | Source detection by spectrum sensing |
US9380356B2 (en) | 2011-04-12 | 2016-06-28 | The Nielsen Company (Us), Llc | Methods and apparatus to generate a tag for media content |
US9515904B2 (en) | 2011-06-21 | 2016-12-06 | The Nielsen Company (Us), Llc | Monitoring streaming media content |
US9209978B2 (en) | 2012-05-15 | 2015-12-08 | The Nielsen Company (Us), Llc | Methods and apparatus to measure exposure to streaming media |
WO2013096314A1 (en) | 2011-12-19 | 2013-06-27 | The Nielsen Company (Us), Llc | Methods and apparatus for crediting a media presentation device |
US9692535B2 (en) | 2012-02-20 | 2017-06-27 | The Nielsen Company (Us), Llc | Methods and apparatus for automatic TV on/off detection |
US9812137B2 (en) | 2012-07-25 | 2017-11-07 | Paypal, Inc. | Data communication using audio patterns systems and methods |
US9282366B2 (en) | 2012-08-13 | 2016-03-08 | The Nielsen Company (Us), Llc | Methods and apparatus to communicate audience measurement information |
US10158927B1 (en) | 2012-09-05 | 2018-12-18 | Google Llc | Systems and methods for detecting audio-video synchronization using timestamps |
US9099080B2 (en) | 2013-02-06 | 2015-08-04 | Muzak Llc | System for targeting location-based communications |
US9313544B2 (en) | 2013-02-14 | 2016-04-12 | The Nielsen Company (Us), Llc | Methods and apparatus to measure exposure to streaming media |
US9300645B1 (en) | 2013-03-14 | 2016-03-29 | Ip Holdings, Inc. | Mobile IO input and output for smartphones, tablet, and wireless devices including touch screen, voice, pen, and gestures |
US20150039321A1 (en) | 2013-07-31 | 2015-02-05 | Arbitron Inc. | Apparatus, System and Method for Reading Codes From Digital Audio on a Processing Device |
US9711152B2 (en) | 2013-07-31 | 2017-07-18 | The Nielsen Company (Us), Llc | Systems apparatus and methods for encoding/decoding persistent universal media codes to encoded audio |
US8768714B1 (en) | 2013-12-05 | 2014-07-01 | The Telos Alliance | Monitoring detectability of a watermark message |
US8768710B1 (en) | 2013-12-05 | 2014-07-01 | The Telos Alliance | Enhancing a watermark signal extracted from an output signal of a watermarking encoder |
US9824694B2 (en) | 2013-12-05 | 2017-11-21 | Tls Corp. | Data carriage in encoded and pre-encoded audio bitstreams |
US8918326B1 (en) | 2013-12-05 | 2014-12-23 | The Telos Alliance | Feedback and simulation regarding detectability of a watermark message |
US8768005B1 (en) | 2013-12-05 | 2014-07-01 | The Telos Alliance | Extracting a watermark signal from an output signal of a watermarking encoder |
US9699499B2 (en) | 2014-04-30 | 2017-07-04 | The Nielsen Company (Us), Llc | Methods and apparatus to measure exposure to streaming media |
US9462471B2 (en) * | 2014-06-27 | 2016-10-04 | Mcafee, Inc. | Identification of call participants |
WO2016017238A1 (ja) * | 2014-07-28 | 2016-02-04 | 日本電信電話株式会社 | 符号化方法、装置、プログラム及び記録媒体 |
US9686031B2 (en) | 2014-08-06 | 2017-06-20 | The Nielsen Company (Us), Llc | Methods and apparatus to detect a state of media presentation devices |
CA2964769A1 (en) | 2014-10-15 | 2016-04-21 | William Knauer | Inaudible signaling tone |
US9804719B2 (en) * | 2014-10-23 | 2017-10-31 | Semiconductor Energy Laboratory Co., Ltd. | Electronic device |
US20180003796A1 (en) * | 2015-02-11 | 2018-01-04 | Harman Internation Industries, Incorporated | Mobile device positioning |
US9924224B2 (en) | 2015-04-03 | 2018-03-20 | The Nielsen Company (Us), Llc | Methods and apparatus to determine a state of a media presentation device |
US9130685B1 (en) | 2015-04-14 | 2015-09-08 | Tls Corp. | Optimizing parameters in deployed systems operating in delayed feedback real world environments |
US9762965B2 (en) | 2015-05-29 | 2017-09-12 | The Nielsen Company (Us), Llc | Methods and apparatus to measure exposure to streaming media |
US9454343B1 (en) | 2015-07-20 | 2016-09-27 | Tls Corp. | Creating spectral wells for inserting watermarks in audio signals |
US9626977B2 (en) | 2015-07-24 | 2017-04-18 | Tls Corp. | Inserting watermarks into audio signals that have speech-like properties |
US10115404B2 (en) | 2015-07-24 | 2018-10-30 | Tls Corp. | Redundancy in watermarking audio signals that have speech-like properties |
US10210545B2 (en) * | 2015-12-30 | 2019-02-19 | TCL Research America Inc. | Method and system for grouping devices in a same space for cross-device marketing |
US10460709B2 (en) * | 2017-06-26 | 2019-10-29 | The Intellectual Property Network, Inc. | Enhanced system, method, and devices for utilizing inaudible tones with music |
US10713335B2 (en) * | 2017-08-28 | 2020-07-14 | Visa International Service Association | System, method, and apparatus for detecting unlicensed performances of copyrighted creative works |
CN111091740A (zh) * | 2020-01-14 | 2020-05-01 | 中仿智能科技(上海)股份有限公司 | 一种飞行模拟器的音响操作*** |
US11564003B1 (en) | 2021-09-20 | 2023-01-24 | The Nielsen Company (Us), Llc | Systems, apparatus, and methods to improve watermark detection in acoustic environments |
Family Cites Families (58)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2470240A (en) | 1945-07-31 | 1949-05-17 | Rca Corp | Limiting detector circuits |
US2662168A (en) | 1946-11-09 | 1953-12-08 | Serge A Scherbatskoy | System of determining the listening habits of wave signal receiver users |
US2573279A (en) | 1946-11-09 | 1951-10-30 | Serge A Scherbatskoy | System of determining the listening habits of wave signal receiver users |
US2660511A (en) | 1947-10-24 | 1953-11-24 | Nielsen A C Co | Lockout and recycling device for an apparatus for determining the listening habits of wave signal receiver users |
US2660662A (en) | 1947-10-24 | 1953-11-24 | Nielsen A C Co | Search signal apparatus for determining the listening habits of wave signal receiver users |
US2630525A (en) | 1951-05-25 | 1953-03-03 | Musicast Inc | System for transmitting and receiving coded entertainment programs |
US2766374A (en) | 1951-07-25 | 1956-10-09 | Internat Telementer Corp | System and apparatus for determining popularity ratings of different transmitted programs |
US3004104A (en) | 1954-04-29 | 1961-10-10 | Muzak Corp | Identification of sound and like signals |
NL154378B (nl) | 1965-01-08 | 1977-08-15 | Frederik Adolf Nauta En Freder | Stelsel en inrichting voor het registreren van luister- en/of kijkgegevens. |
US3492577A (en) | 1966-10-07 | 1970-01-27 | Intern Telemeter Corp | Audience rating system |
US3845391A (en) * | 1969-07-08 | 1974-10-29 | Audicom Corp | Communication including submerged identification signal |
JPS508907B1 (pl) * | 1970-07-08 | 1975-04-08 | ||
JPS5619141B1 (pl) | 1970-10-24 | 1981-05-06 | ||
JPS5221852B2 (pl) | 1971-10-19 | 1977-06-14 | ||
US4025851A (en) | 1975-11-28 | 1977-05-24 | A.C. Nielsen Company | Automatic monitor for programs broadcast |
DE2757171C3 (de) | 1977-12-22 | 1980-07-10 | Standard Elektrik Lorenz Ag, 7000 Stuttgart | Verfahren und Anordnung zur Übertragung zweier unterschiedlicher Informationen in einem einzigen Übertragungskanal vorgegebener Bandbreite auf einer Trägerwelle |
US4225967A (en) | 1978-01-09 | 1980-09-30 | Fujitsu Limited | Broadcast acknowledgement method and system |
US4230990C1 (en) * | 1979-03-16 | 2002-04-09 | John G Lert Jr | Broadcast program identification method and system |
US4425642A (en) * | 1982-01-08 | 1984-01-10 | Applied Spectrum Technologies, Inc. | Simultaneous transmission of two information signals within a band-limited communications channel |
JPS58198934A (ja) * | 1982-05-17 | 1983-11-19 | Sony Corp | 秘話装置 |
US4450531A (en) | 1982-09-10 | 1984-05-22 | Ensco, Inc. | Broadcast signal recognition system and method |
US4639779A (en) | 1983-03-21 | 1987-01-27 | Greenberg Burton L | Method and apparatus for the automatic identification and verification of television broadcast programs |
US4967273A (en) | 1983-03-21 | 1990-10-30 | Vidcode, Inc. | Television program transmission verification method and apparatus |
US4547804A (en) | 1983-03-21 | 1985-10-15 | Greenberg Burton L | Method and apparatus for the automatic identification and verification of commercial broadcast programs |
US4805020A (en) | 1983-03-21 | 1989-02-14 | Greenberg Burton L | Television program transmission verification method and apparatus |
US4703476A (en) | 1983-09-16 | 1987-10-27 | Audicom Corporation | Encoding of transmitted program material |
FR2559002B1 (fr) | 1984-01-27 | 1986-09-05 | Gam Steffen | Procede et dispositif de detection d'une information audiovisuelle diffusee par un emetteur |
US4613904A (en) | 1984-03-15 | 1986-09-23 | Control Data Corporation | Television monitoring device |
US4697209A (en) | 1984-04-26 | 1987-09-29 | A. C. Nielsen Company | Methods and apparatus for automatically identifying programs viewed or recorded |
CA1208761A (en) | 1984-06-06 | 1986-07-29 | Cablovision Alma Inc. | Method and device for remotely identifying tv receivers displaying a given channel by means of an identification signal |
DE3506912A1 (de) * | 1985-02-27 | 1986-08-28 | Telefunken Fernseh Und Rundfunk Gmbh, 3000 Hannover | Verfahren zur uebertragung eines audiosignals |
US4618995A (en) | 1985-04-24 | 1986-10-21 | Kemp Saundra R | Automatic system and method for monitoring and storing radio user listening habits |
US4626904A (en) | 1985-11-12 | 1986-12-02 | Control Data Corporation | Meter for passively logging the presence and identity of TV viewers |
GB8611014D0 (en) * | 1986-05-06 | 1986-06-11 | Emi Plc Thorn | Signal identification |
US4718106A (en) | 1986-05-12 | 1988-01-05 | Weinblatt Lee S | Survey of radio audience |
DE3703143A1 (de) * | 1987-02-03 | 1988-08-11 | Thomson Brandt Gmbh | Verfahren zur uebertragung eines audiosignals |
US4843562A (en) | 1987-06-24 | 1989-06-27 | Broadcast Data Systems Limited Partnership | Broadcast information classification system and method |
US5394274A (en) | 1988-01-22 | 1995-02-28 | Kahn; Leonard R. | Anti-copy system utilizing audible and inaudible protection signals |
DE3806411C2 (de) * | 1988-02-29 | 1996-05-30 | Thomson Brandt Gmbh | Verfahren zur Übertragung eines Tonsignals und eines Zusatzsignals |
US4945412A (en) | 1988-06-14 | 1990-07-31 | Kramer Robert A | Method of and system for identification and verification of broadcasting television and radio program segments |
US4955070A (en) | 1988-06-29 | 1990-09-04 | Viewfacts, Inc. | Apparatus and method for automatically monitoring broadcast band listening habits |
US5213337A (en) * | 1988-07-06 | 1993-05-25 | Robert Sherman | System for communication using a broadcast audio signal |
US5023929A (en) | 1988-09-15 | 1991-06-11 | Npd Research, Inc. | Audio frequency based market survey method |
GB8824969D0 (en) * | 1988-10-25 | 1988-11-30 | Emi Plc Thorn | Identification codes |
NL8901032A (nl) * | 1988-11-10 | 1990-06-01 | Philips Nv | Coder om extra informatie op te nemen in een digitaal audiosignaal met een tevoren bepaald formaat, een decoder om deze extra informatie uit dit digitale signaal af te leiden, een inrichting voor het opnemen van een digitaal signaal op een registratiedrager, voorzien van de coder, en een registratiedrager verkregen met deze inrichting. |
US4943973A (en) * | 1989-03-31 | 1990-07-24 | At&T Company | Spread-spectrum identification signal for communications system |
US4972471A (en) | 1989-05-15 | 1990-11-20 | Gary Gross | Encoding system |
AU7224491A (en) | 1990-01-18 | 1991-08-05 | Elliott D Blatt | Method and apparatus for broadcast media audience measurement |
DE69127842T2 (de) * | 1990-03-09 | 1998-01-29 | At & T Corp | Hybride wahrnehmungsgebundene Kodierung von Audiosignalen |
CA2036205C (en) | 1990-06-01 | 1996-11-19 | Russell J. Welsh | Program monitoring unit |
FR2681997A1 (fr) * | 1991-09-30 | 1993-04-02 | Arbitron Cy | Procede et dispositif d'identification automatique d'un programme comportant un signal sonore. |
US5319735A (en) | 1991-12-17 | 1994-06-07 | Bolt Beranek And Newman Inc. | Embedded signalling |
EP0559348A3 (en) * | 1992-03-02 | 1993-11-03 | AT&T Corp. | Rate control loop processor for perceptual encoder/decoder |
JP3446216B2 (ja) * | 1992-03-06 | 2003-09-16 | ソニー株式会社 | 音声信号処理方法 |
US5379345A (en) | 1993-01-29 | 1995-01-03 | Radio Audit Systems, Inc. | Method and apparatus for the processing of encoded data in conjunction with an audio broadcast |
US5450490A (en) * | 1994-03-31 | 1995-09-12 | The Arbitron Company | Apparatus and methods for including codes in audio signals and decoding |
CH694652A5 (de) | 1994-03-31 | 2005-05-13 | Arbitron Co | Vorrichtung und Verfahren zum Einfügen von Kodes in ein Audiosignal. |
US5404377A (en) | 1994-04-08 | 1995-04-04 | Moses; Donald W. | Simultaneous transmission of data and audio signals by means of perceptual coding |
-
1995
- 1995-03-27 CH CH02383/96A patent/CH694652A5/de not_active IP Right Cessation
- 1995-03-27 DE DE19581594T patent/DE19581594T1/de not_active Ceased
- 1995-03-27 CA CA002185790A patent/CA2185790C/en not_active Expired - Lifetime
- 1995-03-27 BR BR9507230A patent/BR9507230A/pt not_active IP Right Cessation
- 1995-03-27 HU HU0004768A patent/HU0004768D0/hu unknown
- 1995-03-27 HU HU0004770A patent/HU219667B/hu not_active IP Right Cessation
- 1995-03-27 PL PL95333767A patent/PL183307B1/pl not_active IP Right Cessation
- 1995-03-27 JP JP7525787A patent/JPH10500263A/ja active Pending
- 1995-03-27 AT AT0902795A patent/AT410047B/de not_active IP Right Cessation
- 1995-03-27 WO PCT/US1995/003797 patent/WO1995027349A1/en active IP Right Grant
- 1995-03-27 PL PL95333766A patent/PL187110B1/pl not_active IP Right Cessation
- 1995-03-27 EP EP95914900A patent/EP0753226B1/en not_active Expired - Lifetime
- 1995-03-27 HU HU0004767A patent/HU219627B/hu not_active IP Right Cessation
- 1995-03-27 HU HU0004765A patent/HU219628B/hu not_active IP Right Cessation
- 1995-03-27 PL PL95333768A patent/PL183573B1/pl not_active IP Right Cessation
- 1995-03-27 CZ CZ19962840A patent/CZ288497B6/cs not_active IP Right Cessation
- 1995-03-27 PL PL95333769A patent/PL180441B1/pl not_active IP Right Cessation
- 1995-03-27 HU HU9602628A patent/HU219256B/hu not_active IP Right Cessation
- 1995-03-27 HU HU0004769A patent/HU219668B/hu not_active IP Right Cessation
- 1995-03-27 AU AU21969/95A patent/AU709873B2/en not_active Expired
- 1995-03-27 GB GB9620181A patent/GB2302000B/en not_active Expired - Lifetime
- 1995-03-27 MX MX9604464A patent/MX9604464A/es active IP Right Grant
- 1995-03-27 NZ NZ283612A patent/NZ283612A/en not_active IP Right Cessation
- 1995-03-27 PL PL95316631A patent/PL177808B1/pl not_active IP Right Cessation
- 1995-03-27 NZ NZ331166A patent/NZ331166A/xx not_active IP Right Cessation
- 1995-03-27 CN CN95193182.2A patent/CN1149366A/zh active Pending
- 1995-03-27 HU HU0004766A patent/HU0004766D0/hu unknown
- 1995-03-30 IL IL11319095A patent/IL113190A/xx not_active IP Right Cessation
-
1996
- 1996-09-25 FI FI963827A patent/FI115938B/fi not_active IP Right Cessation
- 1996-09-26 NO NO19964062A patent/NO322242B1/no not_active IP Right Cessation
- 1996-09-27 DK DK199601059A patent/DK176762B1/da not_active IP Right Cessation
- 1996-09-30 SE SE9603570A patent/SE519882C2/sv not_active IP Right Cessation
- 1996-09-30 LU LU88820A patent/LU88820A1/de unknown
-
1998
- 1998-06-08 US US09/328,766 patent/US6421445B1/en not_active Expired - Lifetime
-
2002
- 2002-07-12 US US10/194,152 patent/US6996237B2/en not_active Expired - Fee Related
-
2005
- 2005-11-04 US US11/267,716 patent/US7961881B2/en not_active Expired - Fee Related
-
2006
- 2006-01-26 JP JP2006018287A patent/JP2006154851A/ja active Pending
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
PL180441B1 (pl) | Sposób i urzadzenie do detekcji koduP ie rw s z e n stw o :31.03.1994,US,08/22101924.03.1995,US,08/408010 PL PL PL PL PL | |
US5764763A (en) | Apparatus and methods for including codes in audio signals and decoding | |
JP2012507045A (ja) | オーディオ透かし入れ、透かし検出及び抽出を行う方法及び装置 | |
US11670309B2 (en) | Research data gathering | |
AU763243B2 (en) | Apparatus and methods for including codes in audio signals | |
GB2325830A (en) | Apparatus and method for detecting codes in audio signals | |
IL133705A (en) | Apparatus and methods for including codes in audio signals and decoding | |
NZ502630A (en) | Encoding data onto audio signal with multifrequency sets simultaneously present on signal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Decisions on the lapse of the protection rights |
Effective date: 20060327 |