KR20030076240A - 혼돈계를 이용한 오디오파일들의 압축 및 압축해제를 위한방법 및 장치 - Google Patents
혼돈계를 이용한 오디오파일들의 압축 및 압축해제를 위한방법 및 장치 Download PDFInfo
- Publication number
- KR20030076240A KR20030076240A KR1020027017454A KR20027017454A KR20030076240A KR 20030076240 A KR20030076240 A KR 20030076240A KR 1020027017454 A KR1020027017454 A KR 1020027017454A KR 20027017454 A KR20027017454 A KR 20027017454A KR 20030076240 A KR20030076240 A KR 20030076240A
- Authority
- KR
- South Korea
- Prior art keywords
- audio file
- waveforms
- fundamental
- stored
- section
- Prior art date
Links
- 230000000739 chaotic effect Effects 0.000 title claims abstract description 47
- 230000006835 compression Effects 0.000 title claims abstract description 32
- 238000007906 compression Methods 0.000 title claims abstract description 32
- 238000000034 method Methods 0.000 title claims description 29
- 230000006837 decompression Effects 0.000 title abstract description 11
- 230000000737 periodic effect Effects 0.000 claims description 46
- 230000006870 function Effects 0.000 claims description 15
- 238000006243 chemical reaction Methods 0.000 claims 2
- 238000001228 spectrum Methods 0.000 description 12
- 238000013459 approach Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 239000013598 vector Substances 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000003252 repetitive effect Effects 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 3
- 244000046052 Phaseolus vulgaris Species 0.000 description 3
- 238000012952 Resampling Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000009977 dual effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000000844 transformation Methods 0.000 description 3
- 238000005311 autocorrelation function Methods 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000000087 stabilizing effect Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000010668 complexation reaction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H1/00—Details of electrophonic musical instruments
- G10H1/0033—Recording/reproducing or transmission of music for electrophonic musical instruments
- G10H1/0041—Recording/reproducing or transmission of music for electrophonic musical instruments in coded form
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/174—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2250/00—Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
- G10H2250/131—Mathematical functions for musical analysis, processing, synthesis or composition
- G10H2250/215—Transforms, i.e. mathematical transforms into domains appropriate for musical signal processing, coding or compression
- G10H2250/235—Fourier transform; Discrete Fourier Transform [DFT]; Fast Fourier Transform [FFT]
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2250/00—Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
- G10H2250/541—Details of musical waveform synthesis, i.e. audio waveshape processing from individual wavetable samples, independently of their origin or of the sound they represent
- G10H2250/571—Waveform compression, adapted for music synthesisers, sound banks or wavetables
- G10H2250/581—Codebook-based waveform compression
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Acoustics & Sound (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Human Computer Interaction (AREA)
- Theoretical Computer Science (AREA)
- Electrophonic Musical Instruments (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
- Document Processing Apparatus (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
오디오파일들의 섹션들의 압축 및 압축해제를 위한 시스템이 제공된다. 기본파형들의 라이브러리는 선택된 디지털초기화코드들을 혼돈계에 적용함으로써 생성된다. 각각의 기본파형은 초기화코드와는 1 대 1 대응이다. 선택된 기본파형들의 가중합은 오디오파일의 섹션을 근사하는데 사용된다. 그 후 기본파형들은 버려지고 가중인자들과 대응하는 초기화코드들만이 압축된 오디오파일에 저장된다. 압축된 오디오파일이 재생을 위해 압축해제되는 경우, 저장된 초기화코드들은 떼어내어지고 기본파형들을 재생성하는 유사한 혼돈계에 적용되어, 기본파형들은 저장된 가중인자들에 따라 재결합되어 원래의 오디오파일 섹션이 재생된다.
Description
이 출원은 (i) 현재 계류중인 쇼트(Short) 등에 의해 1999년 11월 9일자로 출원된 미국특허출원번호 제09/436,910호의 "보안디지털혼돈통신을 위한 방법 및 장치"와 (ii) 현재 계류중인 쇼트 등에 의해 1999년 11월 10일자로 출원된 미국특허출원번호 제09/437,565호의 "압축혼돈음악합성을 위한 방법 및 장치" 둘 다의 일부계속출원이다.
일반적으로, 혼돈계(chaotic system)는, 주기성이 없고 그것의 최종상태가 계의 정확한 초기상태에 민감하여 그것의 시간의존적인 경로는 결정성이 있음에도불구하고 사실상 장기간의 예측은 불가능한 동적인 계이다.
혼돈통신(chaotic communication)에 대한 하나의 접근법인 쇼트 등의 "보안디지털혼돈통신(미국특허출원번호 제09/436,910; "쇼트 I"이라 함)은, 송신기/부호화기에 의해 제어되는 혼돈계와 수신기/복호화기에 의해 제어되는 동일한 혼돈계를 설명하고 있다. 통신은 초기화와 전송의 두 단계로 나누어진다. 초기화단계는 일련의 제어들을 사용하여 송신기/부호화기 및 수신기/복호화기에서 동일한 혼돈계들을 동일한 주기상태에 이르게 한다. 이는 디지털초기화코드를 각 혼돈계에 반복적으로 보내어 그것들의 각각을 알려진 주기적 궤도(periodic orbit)에 이르게 하고 그렇지 않은 불안정한 주기적 궤도를 안정화시킴으로써 달성된다. 필요한 초기화코드는 16비트 미만의 정보를 담고 있다. 그 후 전송단계는 유사한 일련의 제어들을 사용하여 주기적 궤도들의 궤적(trajectory)들을 디지털메시지의 평문에 상응하는 0과 1로 이름표(label)가 붙여진 공간영역들로 이끈다.
쇼트 등의 "압축혼돈음악합성을 위한 방법 및 장치"(미국특허출원번호 제09/437,565호; "쇼트 II"라 함)는, 이러한 초기화단계를 사용하여, 혼돈계들에 대해 알려진 주기적 궤도들을 생성하고 안정화고 그 후 이 궤도들이 전통적인 음표들(musical notes)을 근사화한 소리(sound)들로 바뀌게 하는 것을 설명하고 있다. 디지털초기화코드를 혼돈계에 보냄으로써, 풍부한 화성구조(harmonic structure)를 가지며 아름다운 음이 소리나게 하는 주기적 파형이 생성될 수 있다. 음악적 응용들에 필요한 1차원 주기적 파형은 혼돈계가 진전(진화)되는 시간에 대해 주기적 궤도의 x, y 또는 z성분(또는 그것들의 조합)을 취함으로써 이루어질 수 있다. 주기적 파형은 소리의 아날로그버전을 나타내고, 예컨대, 오디오규격인 PCM 16을 사용하여 이 파형의 진폭을 시간에 대해 샘플링함으로써, 소리의 디지털버전을 생성할 수 있다. 주기적 파형들의 화성구조들은 충분히 가변되어 그것들은 다양한 악기들처럼 소리를 낸다.
본 발명은 제약 없이 음악 및 음성파일들을 포함한 오디오파일들의 압축 및 압축해제를 위한 시스템이다. 요컨대, 혼돈계에 관련된 기본파형들의 라이브러리는 쇼트 II에 따라 나중에 상세히 설명된 바와 같이 선택된 디지털초기화코드들을 혼돈계에 적용함으로써 생성된다. 16비트 초기화코드들로 생성될 수 있는 기본파형들은 둘 또는 세 개의 고조파들만을 담고 있는 관련된 주파수스펙트럼을 갖는 몇 개의 사인파들의 합을 닮은 간단한 경우들에서부터 주요 고조파들의 수가 64보다 큰 극히 복잡한 파형들까지의 범위에 걸쳐있다. 중요하게는, 초기화코드들은 기본파형들이 간단한지 아니면 복잡한 지에 무관하게 16비트이다. 반면에, 선형적 접근법에서, 파형을 생성하는데 필요한 비트들의 수는 그 파형에서의 고조파들의 수에 비례할 것이라고 예측된다. 동일한 중요성으로, 각 초기화코드는 특정 기본파형과 1 대 1 대응하여, 대응하는 초기화코드의 사용이 기본파형을 나타내게 한다. 그러면 라이브러리로부터 선택된 기본파형들은 오디오파일의 섹션을 근사하는데 사용된다.
오디오파일들의 섹션에 가장 밀접하게 관련된 기본파형들이 선택되고, 선택된 파형들의 가중합(weighted sum)은 오디오파일의 섹션을 근사하는데 사용된다. 오디오파일의 섹션을 지정된 정확도로 근사하는 그러한 가중합이 일단 생성된다면, 기본파형들은 버려질 수 있고, 아래에서 설명되는 가중인자들, 대응하는 초기화코드들 및 특정 주파수정보만이 압축된 오디오파일에 저장된다. 압축된 오디오파일은 다른 구현의존정보, 예컨대, 샘플링율들, 포맷 등을 정의하는 헤더정보를 담을 수도 있다. 압축된 오디오파일이 재생(playback)을 위해 압축해제되는 경우, 초기화코드들은 떼어내어져 기본파형들을 재생성하는데 사용되어, 기본파형들은 오디오파일의 원래의 섹션을 재생하기 위해 압축된 오디오파일의 가중인자들에 따라 재결합된다.
압축된 오디오파일은 원격지에서의 압축해제를 위해 동일한 혼돈계에 전송되거나 나중의 전송을 위해 저장될 수 있다. 실제로는, 원격지는 오디오파일의 섹션의 재생이 요망되는 것의 전부라면 혼돈계의 압축부분을 필요로 하지 않고 혼돈계의 압축해제부분만을 사용할 것이다.
좀더 높은 정도의 추가압축은 종종 가능하고 요망될 수 있다. 기본파형들의 적절한 가중합을 찾은 후, 이 가중합은 검사될 수 있어 지정된 문턱 보다 전체 근사에 덜 기여하는 어떤 파형들은 제거될 수 있다. 이러한 파형들이 식별되는 경우, 대응하는 초기화코드들은 압축된 오디오파일로부터 제거될 수 있다. 또한, 압축이 오디오파일의 섹션들에 대해 행해지기 때문에, 기본파형들 및 대응하는 초기화코드들을 조사하여 섹션에서 섹션으로의 가중인자들의 변경들에 대해 예측가능한 패턴이 있는 지를 결정하는 것이 가능하다. 그러한 패턴들이 검출된다면, 압축된 오디오파일의 추가압축은 가중인자들에 대한 변경들의 패턴에 관한 필수적인 초기화코드 및 정보만을 저장함으로써 이루어질 수 있다.
본 발명의 목적은 인터넷을 통한 배포를 위한 압축된 음악파일들을 작성하는것이다. 50 대 1보다 좋은 압축비들이 가능할 것이고, 인터넷을 통한 음악파일들의 전송을 크게 개선된 다운로드속도로 할 수 있게 한다. 얼마나 빨리 음악이 바뀌는지에 기초하여 음악에 대한 압축비를 추정하는 것이 가능하다. 이러한 추정은, 음악이 0.02초마다 바뀌어 그 음악에서의 중요한 변경들이 초당 50번 일어난다면, 60 대 l의 압축이 달성되어야 함을 나타낸다. 음악이 0.04초마다 바뀐다면, 120 대 1의 압축이 달성될 수 있어야 한다. 또한 본 발명의 목적은, 음악업계에서 사용되는 표준MIDI기술을, 더 간단하며 더 적은 메모리를 요구하고 더욱 유연한 샘플링요건들을 제공하는 시스템으로 대체하는 것이다.
또한 본 발명의 목적은 신속히 압축해제하는 압축된 음악파일들을 생성하는 것이다. 예를 들면, 한 실시예에서 300㎒ 프로세서상의 비최적화(unoptimized) C++프로그램은 실시간보다 3배 이상 빨리 압축해제하였다. 더 최적화된 버전에서는, 압축해제는 100㎒ 프로세서에 대충 맞먹는 컴퓨터에서 실행하였을 때 실시간보다 5배 이상 빨랐다.
본 발명의 다른 목적은 암호화되는 압축된 오디오파일들을 작성하는 것이다. 예를 들면, 본 발명을 압축된 음악파일들은 쇼트 I에 따라서 자연스럽게 암호화된다. 압축된 음악파일들을 적절히 압축해제할 수 있게 하기 위해서는, 적절한 혼돈압축해제기를 가지는 것이 필요하다. 이러한 압축해제기들은 자유로이 또는 등록된 사용자들의 집단에 배포될 수 있고, 따라서 압축된 음악파일들의 배포 및 재생에 대해 얼마간의 제어를 할 수 있게 한다. 압축된 음악파일들의 사용을 고도로 제어하는 것도, 쇼트 I에 기재된 기술을 사용하여 보안혼돈배포채널의 제2의 층을 통합하여 압축된 음악파일들을 사용자에게 전송하기 전에 음악파일들의 디지털비트들을 부호화함으로써 달성될 수 있다. 등록사용자들에게는 유일한 혼돈복호화기들이 주어지므로, 압축된 음악파일들 둘레에 "보안싸개(security wrapper)"를 두는 것이 가능할 것이고, 그래서 등록사용자만이 음악에 접근할 수 있을 것이다. 요금의 지불 없이는 노래가 한 번만 재생될 수 있도록 보안싸개를 구조화할 수도 있을 것이다.
본 발명은 대체로 혼돈계를 이용한 오디오파일들의 효율적인 압축 및 압축해제를 위한 방법 및 장치에 관한 것이다. 보다 상세하게는, 본 발명은 선택된 디지털초기화코드들을 혼돈계에 적용하여 이 초기화코드들을 처리함으로써 생성된 기본파형들에 의해 오디오파일들의 섹션들을 근사하여 압축된 오디오파일들을 생성하기 위한 시스템에 관한 것이다.
도 1은 본 발명의 실시예에 따른 오디오파일들을 위한 압축 및 압축해제시스템의 블록도이다.
도 2는 본 발명의 실시예에 따른 오디오파일들을 위한 압축시스템에서의 단계들을 전반적으로 보여주는 흐름도이다.
도 3은 본 발명의 실시예에 따른 기본파형들의 라이브러리의 작성을 더욱 상세히 보여주는 흐름도이다.
도 4는 주어진 미분방정식들 및 매개변수들로부터 얻어지는 이중소용돌이(double scroll)발진기의 선도(plot)이다.
도 5는 이중소용돌이발진기 부근의 12개의 루프들에 관한 함수 r(x)의 선도이다.
도 6은 5비트 초기화코드(01011)로부터 얻어지는 이중소용돌이발진기의 주기적 궤도의 선도이다.
도 7은 음악파일의 섹션의 선도이다.
도 8은 Vpeaks의 값의 선도이다.
도 9는 기본파형들의 전체 주기들의 선도이다.
도 10은 위상 및 주파수의 조절 후의 3개의 기본파형들의 전체 주기들의 선도이다.
도 11a는 음악파일의 섹션의 선도이다.
도 11b는 기본파형들을 사용한 음악파일의 섹션의 1차근사의 선도이다.
오디오파일들의 압축 및 압축해제를 위한 새로운 시스템이 제공된다. 기본파형들의 라이브러리는 선택된 디지털초기화코드들을 혼돈계에 적용함으로써 생성된다. 각각의 초기화코드는 혼돈계에 대해 다른 불안정한 주기적 궤도를 생성하고 안정화한다. 필요한 기본파형들은 시간에 대해 주기적 궤도들의 x, y, 또는 z성분(또는 그것들의 조합)을 취함으로써 이루어진다. 16비트의 초기화코드들로 생성될 수 있는 기본파형들은 간단한 것에서 복잡한 것까지의 범위를 가지고 각 기본파형은 초기화코드와 1 대 1 대응한다.
라이브러리에서 압축하려는 오디오파일의 섹션에 가장 밀접하게 관련된 기본파형들이 선택되고, 선택된 기본파형들의 가중합은 오디오파일의 섹션을 근사하는데 사용된다. 일단 이러한 가중합이 생성되어 오디오파일의 섹션을 지정된 정확도로 근사한다면, 기본파형들은 버려질 수 있고 가중인자들 및 대응하는 초기화코드들과 더불어 특정 주파수정보만이 압축된 오디오파일에 저장된다. 압축된 오디오파일이 재생을 위해 압축해제되는 경우, 저장된 초기화코드들은 떼어내어져 기본파형들의 재생성에 사용되어, 기본파형들은 오디오파일의 원래의 섹션을 생성하도록 저장된 가중인자들에 따라 재결합된다.
기본파형들의 적절한 가중합을 찾은 후에 임의의 기본파형들이 제거될 수 있다면, 좀더 높은 정도의 추가압축이 달성될 것이다. 또한, 가중인자들의 섹션에서 섹션으로의 변경들에 대해 예측가능한 패턴이 존재한다면, 가중인자들에 대해 변경들의 패턴에 관한 필수적인 초기화코드 및 정보만을 저장함으로써 추가압축이 달성될 수 있다.
본 발명의 전술한 및 다른 목적들, 특징들 및 이점들은 첨부 도면들에 도시된 바와 같은 이 발명의 바람직한 실시예들의 다음의 상세한 설명으로부터 명확하게 될 것이다.
본 발명의 실시예의 블록도는 도 1에 들어있다. 오디오파일들의 압축 및 압축해제를 위한 시스템(1)은 선택된 디지털초기화코드들을 선택된 혼돈계(3)에 적용하기 위한 압축제어기(2)를 포함한다. 각 초기화코드는 대응하는 초기화코드와 함께 라이브러리에 저장되는 기본파형을 생성한다. 압축하려는 오디오파일의 섹션(5)은 파형비교기(5)에서 분석되고, 그러면 파형비교기는 라이브러리(4)에서 압축하려는 오디오파일의 섹션(5)에 가장 밀접하게 관련된 기본파형들과 그것들에 대응하는 초기화코드들을 선택한다. 그 후 파형가중기(7)는 오디오파일의 섹션(5)을 근사하는 선택된 기본파형들의 가중합과 이 가중합을 생성하는데 필요한 가중인자들을 발생한다. 그러면 기본파형들은 버려지고 가중인자들 및 대응하는 초기화코드들은 압축된 오디오파일들을 포함하게 되며, 이것들은 저장기기(8)에 저장된다. 압축해제 및 재생을 위해, 압축된 오디오파일은 원격압축해제제어기(9)에 전송되고, 이 원격압축해제제어기는 저장된 초기화코드들을 빼내어 그것들을 압축에서 사용된 혼돈계(3)와 동일한 혼돈계(10)에 적용한다. 각 초기화코드는 파형결합기(11)에 보내지는 기본파형을 생성한다. 압축해제제어기는 또한 저장된 가중인자들을 파형결합기(11)에 보낸다. 기본파형들은 파형결합기(11)에서 가중인자들에 따라 결합되어 디지털오디오파일의 섹션의 재생(playback)을 위한 통상의 수단(12)을 통한 재생을 위해 오디오파일의 원래의 섹션을 재생성한다.
본 발명의 바람직한 실시예의 오디오파일들의 압축을 위한 전반적인 흐름도는 도 2에 보여진다. 처리는 단계 20에서 시작되고 이 단계에서는 기본파형들 및 대응하는 초기화코드들의 라이브러리는 아래에서 상세히 설명된 바와 같이 컴파일된다. 이 라이브러리는 특정한 혼돈계에 대한 기본파형들 및 대응하는 초기화코드들의 모두를 담고 있다. 그에 더하여, 파형들에 관한 키참조정보가 목록(catalog)파일에 효과적으로 저장될 수 있다. 라이브러리 내의 정보는 주어진 실시예의 경우 정적(static)이 될 수 있다. 대부분의 응용들에서는, 목록파일은 모든 관련된 정보를 담고있고 파형들이 저장공간을 절약하기 위해 버려질 수 있는 반면 목록파일은 유지될 수 있다.
본 발명은 디지털초기화코드들을 사용하여 혼돈계에서 주기적 궤도들을 이끌어내고 그렇지 않은 불안정한 궤도를 안정화시킨다. 그러면 다른 악기들이 독특한특성을 갖게 하는 화성배음들(harmonic overtones)을 전통적인 음악소리가 포함하기 때문에, 각 주기적 궤도는 전통적인 음악소리를 갖는 기본파형을 생성한다. 결과적으로, 기본음(root)주파수에서 단일 음높이(pitch)(즉, 사인파)를 생성하는 대신, 음조(tone)발생기에 의해 발생될 것처럼, 주기적 궤도는 기본음주파수의 배수들의 배음들을 담고 있다. 이중소용돌이발진기가 사용되는 혼돈계인 본 발명의 바람직한 실시예에서, 각각의 주기적 궤도는 다음 로브(lobe)로 떠나기 전에 하나의 로브 부근에서 일어나는 루프들의 수에 관련된 자연화성구조(natural harmonic structure)를 갖는 기본파형에 대응한다. 결과적으로, 각종 다른 주기적 궤도들은 기본파형들을 생성하고, 이 기본파형들은 다른 악기에 대응한다. 따라서, 초기화코드들 중의 한 그룹은 하프시코드의 음조특성들을 갖는 기본파형들을 생성할 것이고, 다른 그룹은 전기기타에 더 유사한 소리를 내는 기본파형을 생성할 것이고, 다른 그룹은 전기피아노와 같은 소리를 내는 기본파형들을 형성한다.
도 3은 바람직한 실시예를 위한 기본파형들 및 대응하는 초기화코드들의 라이브러리의 작성을 매우 상세히 보여주는 흐름도이다. 제1단계(30)는 기본파형들을 생성하는 주기적 궤도들을 이끌어 내려는 혼돈계를 선택하는 것이다. 바람직한 실시예에서, 혼돈계는 다음의 미분방정식으로 설명되는 이중소용돌이발진기[S. Hayes, C. Greboge and E. Ott, Communicating with Chaos, Phys, Rev. Lett. 70, 3031 (1993)]이다.
매개변수들인 C1= 1/9, C2= 1, L = 1/7, G = 0.7, m0= -0.5, m1= -0.8 및 Bp= 1을 사용한 수치모의실험으로 얻은 어트랙터(attractor)는 두 개의 로브들을 가지며 이것들의 각각은 도 4에 보인 것처럼 불안정한 고정점을 둘러싼다.
이 발진기의 동역학의 혼돈적 성질 때문에, 발진기의 루프들의 각각 주변의 궤적들을 정하도록 작은 섭동(perturbation)들을 주의하여 선택함으로써 초기조건들에 대해 민감한 의존성의 이점을 취하는 것이 가능하다. 이 능력은, 초기화코드의 사용을 통해, 혼돈계를 기본파형을 생성하는데 사용되는 주기적 궤도로 이끌 수 있게 한다.
혼돈발진기를 제어하는 복수의 수단들이 존재한다. 바람직한 실시예에서, 섹션의 푸앵카레면은 반평면들로 어트랙터를 교차하게 하여 각 로드에 대해 iL= ±GF, |vC1|≤F(여기서 F = Bp(m0- m1)/(G + m0))로 정의된다. 궤적이 이러한 섹션들 중의 하나를 교차하는 경우, 대응하는 비트는 기록될 수 있다. 그 후, 어느 하나의 섹션상의 임의의 점을 취하고 그 점을 통과하는 궤적들의 미래(future)심볼시퀀스를 돌려주는 함수 r(x)가 정의된다. l1, l2, l3, ...가 어트랙터를 방문하는 로브들을 나타내고(그래서 l1은 0 또는 1이다) 어트랙터 주변의 루프들의 어떤 수 N에 대해 x0l1, l2, l3, ..., lN으로 되도록 주어진 점(x0)이 미래전개된다면, 함수 r(x)는 x0를 관련된 이진분수로 사상(mapping)하고, 그래서 이진수(밑이 2)를 나타내는 r(x0) = 0.11, l2, l3, ..., lN가 되도록 선택된다. 그 후, r(x)가 교차부분 상이 매 점마다 계산되는 경우, 교차부분상의 어떤 점의 미래전개(future evolution)는 N반복으로 알려진다. 결과적인 함수는 도 5에서 보여지고, 그 도면에서 r(x)는 어트랙터 부근의 12개 루프들에 대해 계산된다.
궤적의 제어는 사용될 수 있고 여기서는 혼돈계의 초기화 및 메시지의 전송에도 사용될 수 있다. 궤적의 제어는 그 궤적이 섹션들 중의 하나를 가령 x0에서 통과하는 경우 시작된다. r(x0)의 값은 N개 루프들에 대해 현재의 궤적에 의해 추종되는 미래심볼시퀀스가 된다. 메시지의 전송의 경우, 메시지시퀀스의 N번째 위치에 다른 심볼이 소망된다면, r(x)는 소망의 심볼시퀀스를 생성할 섹션상의 가장 가까운 점을 검색할 수 있다. 궤적은 이 새로운 점에 대해 섭동될 수 있고 표면과의 다음 조우를 계속한다. 이는 소망되는 가능한 한 많은 횟수로 반복될 수 있다.
바람직한 실시예의 r(x)의 계산은, 교차부분들의 각각을 2001개의 분할들(partitions)("빈(bin)들")이 되게 나누고 로드들 부근의 12개의 루프들까지에 대해 분할 내의 중심점의 미래전개를 계산함으로서 이산적으로 행해진다. 한 예로서, 어트랙터 부근의 5개의 루프들 이후에만 궤적에 대한 섭동의 영향이 명백하게 되도록 제어들이 인가된다. r(x)를 기록하는 것에 더하여, 빈들의 중심점들에 대한 좌표들뿐 아니라 이러한 점들에서의 제어들에 관한 명령을 담고 있는 매트릭스 M이 구성되었다. 이러한 명령들은 단순히 제어를 적용하는데 필요한 경우 계를 어느 정도 섭동시킬 지를 말해준다. 예를 들면, 교차부분을 갖는 궤적의 교차부에서, r(x0)가 궤적이 시퀀스 "10001"을 따라갈 것을 나타내고 시퀀스 "10000"이 소망된다면, 검색은 이 시퀀스를 제공할 것인 x0에 가장 가까운 빈에 대해 행해지고 이 정보는 M에 놓여진다. (가장 가까운 빈이 유일한 것이 아니라면, 어떤 빈, 예를 들면, 루프의 중앙에서 가장 먼 빈을 취할 것인지에 관해 합의되어야 한다). 섭동 후의 새로운 시작점이 x0에 의해 추종되는 시퀀스로부터 기껏해야 최종 비트만큼 다른 미래전개시퀀스를 가지기 때문에, 각 교차부에서는 2개의 선택사항들인제어또는제어없음만이 고려되는 것이 필요하다. 바람직한 실시예의 아날로그하드웨어구현에서, 섭동들은 전압변경 또는 전류서지(surge)를 사용하여 인가된다. 바람직한 실시예의 소프트웨어구현에서, 제어매트릭스 M은 제어섭동이 요구될 때 그 정보가 M으로부터 읽혀질 수 있도록 혼돈동역학을 계산하는 소프트웨어와 함께 저장될 것이다.
추가개선은 마이크로제어들의 사용에 관련된다. 소프트웨어의 바람직한 실시예의 경우, 혼돈계의 궤적이 교차부분을 통과하는 각 시간마다, 모의실험(simulation)은 1회의 단계로 백업되고, 궤적이 어떠한 보간 없이 교차부에 정확히 통합될 수 있도록 시간 및 공간의 역할들은 룬게-쿠타솔버(Runge-Kutta solver)에서 반대로 된다. 그 후, 제어없음이 인가되는 각 교차부에서, 궤적은 그것이 어떤 빈이 그 속에 있는 중심점에서 시작하도록 리셋된다. 이 리셋팅처리는 마이크로제어들의 부과에 고려될 수 있다. 이것은 어떠한 반올림오차의 누적도 제거하고 초기조건들에 민감한 의존성의 영향을 최소화한다. 이것은 또한, 동역학이 전체 위상공간을 여전히 방문할지라도, 혼돈어트랙터의 동역학을 전체 혼돈어트랙터의 유한부분집합으로 제한하는 효과를 가진다. 이러한 제한은 최초에 더 큰 정밀도로 r(x) 및 M을 계산함으로써 완화될 수 있다.
도 3에도 보인 것처럼, 초기화코드들 및 기본파형들의 라이브러리를 작성하는 다음의 단계 32는 초기화코드를 혼돈계에 부과하는 것이다. 초기화코드는 혼돈계를 주기적 궤도로 되게 하고 그렇지 않은 불안정한 주기적 궤도를 안정화시킨다. 더 구체적으로는, 혼돈계는 반복코드로 되게 하여 주기적 궤도로 되게 한다. 다른 반복코드들은 다른 주기적 궤도들을 이끌어낸다. 큰 부류의 반복코드들의 경우, 도달되는 주기적 궤도는 반복되는 코드세그먼트에만 의존하고 혼돈계의 초기상태에는 의존하지 않는다(주기적 궤도에 맞게되는 횟수는 초기상태의 따라 변할 수는 있음). 결과적으로, 혼돈계를 알려진 주기적 궤도로 이끄는 초기화코드를 보내는 것이 가능하다.
이러한 특별한 반복코드들은 모든 초기상태들에 대해 유일한 주기적 궤도들에 이르게 하고, 그래서 반복코드와 주기적 궤도 간에는 1 대 1 관계가 있다. 그러나, 일부 반복코드들의 경우, 혼돈계의 초기상태가 변함에 따라 주기적 궤도들은그것들이 변한다. 결과적으로, 반복코드들은 2개의 부류들인 초기형코드들 및 비초기형코드들로 나누어진다. 각 주기적 궤도의 길이는 반복코드의 길이의 정수배이다. 이것은, 교차부 상의 현재위치와 반복코드에서의 현재위치 둘 다가 얼마간의 이전 시간과 동일한 경우에만 주기성이 얻어지므로, 당연하다. 혼돈계가 소망의 주기적 궤도상에 있는 것을 보장하기 위해서는, 궤도의 주기가 정확히 초기형코드의 가장 작은 반복세그먼트의 길이이면 충분하다.
초기형코드들의 수는 초기화코드들에 사용된 비트들의 수와 비교되었고, 초기형코드의 수가 지수적으로 증가하는 것으로 보여진다. 이는 선택하려는 많은 주기적 궤도들이 존재함을 의미하므로 약속된 결과이다. 압축된 초기형코드 01011은 바람직한 실시예의 이중소용돌이발진기에 대해 반복되었다. 도 4의 혼돈동역학은 도 6에 보인 주기적 궤도로 이끌어졌고, 이 주기적 궤도는 제어코드에 의해 안정화된다.
도 3에 추가로 보인 것처럼, 라이브러리 작성의 다음 단계 34는 시간에 대해 주기적 궤도의 x, y, 또는 z성분(또는 그것들의 조합)을 취하여 기본파형, 즉 1차원 주기적 파형을 각 주기적 궤도마다 발생하는 것이다. 예컨대 오디오규격인 PCM 16을 사용하여 시간에 대해 파형의 진폭을 샘플링함으로써, 디지털버전을 생성할 수 있다. 이러한 기본파형들은 상당히 복잡할 수 있고 강한 고조파구조를 가진다. 이 기본파형들은 일부 초기화코드에 대해 50개보다 많은 강한 고조파들을 가질 수 있고 압축기술의 성능에 기여하는 중요한 요소들은 50개의 강한 고조파들을 갖는 복잡한 기본파형들이 몇 개의 고조파들만으로 더 간단한 기본파형들과 동일한 수의초기화코드 비트들로 생성될 수 있다는 것이다. 이는 복잡한 기본파형들이 간단한 기본파형들만큼 쉽게 생성될 수 있으므로 이 계에 본래 갖추어진 압축에 관한 잠재성을 나타낸다. 이것은 동적인 계의 비선형적 혼돈성질 때문에 가능하다.
혼돈계는 소프트웨어로 완전히 구현될 수 있다. 이러한 구현에서의 혼돈계는 혼돈동역학을 지배하는 미분방정식들의 세트, 예컨대, 전술한 이중소용돌이방정식들에 의해 정의된다. 소프트웨어는 미분방정식들의 전개를 모의실험하는 알고리즘, 예컨대, 룬게-쿠타알고리즘을 사용한다.
혼돈계는 하드웨어로 구현될 수도 있다. 혼돈계는 여전히 미분방정식들의 세트에 의해 정되되나, 이러한 방정식들은 동일한 혼돈동역학을 발생하는 전기회로의 개발에 사용된다. 미분방정식을 등가회로로 변환하기 위한 절차는 주지의 것이고 아날로그전자공학, 마이크로제어기들, 임베디드 CPU, 디지털신호처리(DSP)칩들, 또는 장프로그램가능게이트어레이(FPGA) 뿐 아니라 적당한 피드백을 갖도록 구성된 당업자에게 알려진 다른 기기들로 성취될 수 있다. 제어정보는 메모리기기에 저장되며, 제어들은 회로에서 전압을 증가시키거나 작은 전류서지를 유도함으로써 인가된다.
도 2의 흐름도를 참조하면, 단계 22에서, 압축하려는 오디오파일의 섹션이 선택되고 분석되며 특정 기본파형들은 파형들의 라이브러리로부터 선택된다. 오디오파일의 섹션은 분석되고 라이브러리의 기본파형과 비교된다. 비교는 오디오파일의 섹션으로부터 키참조정보를 추출하고 그것을 목록파일의 정보와 상관시킴으로써 이루어진다. 그러면, 선택된 규준들에 기초하여, 오디오파일의 섹션에 가장 유사한그러한 기본파형들이 선택되고 오디오파일의 섹션의 근사물을 만드는데 사용된다.
기본파형들과 오디오파일의 섹션을 비교하는데 채용될 수 있는 많은 접근법들이 존재하고, 이러한 접근법들의 예들로는, 제로크로싱들의 수들의 비교, 주파수스펙트럼에서의 고조파들의 수 및 상대파워, 각 기본파형으로의 투영, 및 위상공간에서의 기하학적 비교들를 포함한다. 선택된 기법은 고려되는 구체적인 응용에 의존하나, 바람직한 실시예에선, 기본파형정보를 가장 강한 고조파들의 (정규화된) 크기들을 기술하는 벡터로 캡슐화하는 것이 효과적이다.
각 기본파형에 대해 스펙트럼의 피크들의 정보가 라이브러리에 담고있는 비교기매트릭스가 만들어진다. 그 후, 오디오파일의 섹션에 대해, 오디오파일의 섹션의 스펙트럼 및 기본파형들의 스펙트럼 간에 비교가 행해진다. 캡슐화된 형태에서, 가장 부합하는 기본파형은 스펨트럼피크들의 오디오파일섹션의 벡터와 기본파형벡터 간에 내적(inner product)들을 취함으로써 간단하게 구해질 수 있다. 가장부합하는 기본파형은 1차기초함수로 선택되고 또 이 1차기초함수에 의해 맞지 않았던 스펙트럼의 부분들에 밀접하게 부합되는 다른 가깝게 부합하는 기본파형들도 선택된다. 다른 응용들에서, 기초함수들로서 유지하도록 기본파형들을 선택하는 다양한 접근법들이 있을 수 있으나, 일반적인 접근법은 오디오파일의 섹션을 라이브러리의 기본파형들에 투영하는 것이다. 마지막으로, 일부 응용들에서, 기본파형들의 라이브러리를 유지하는 것은 불필요하거나 소망되지 않고, 이러한 경우들에서는 기본파형들은 혼돈계에 대응하는 초기화코드들을 인가하여 필요한 대로 재작성된다.
적절한 기본파형들이 선택된 후, 오디오파일의 섹션을 근사하는 것을 시작할수 있다. 단계 23에서, 선택된 기본파형들의 모두와 오디오파일의 섹션은 적합한 주파수범위인 오디오파일범위 또는 고정참조범위로 변환되어 비교가 행해진다. 예를 들면, 그것들은 고정주파수범위 내에 있도록 재샘플링될 수 있다. 이는 표준리샘플링기법들을 통해 달성될 수 있다. 전형적으로, 재샘플링은 보다나은 분해능의 신호들을 얻도록 행해지고(즉, 업샘플링), 그래서 이 처리에서 정보의 손실은 없다.
일단 오디오파일의 섹션과 모든 파형들이 적합한 주파수범위에 있게 되면, 단계 24에서 근사가 가능하다. 필요한 구성요소는 기본파형들을 오디오파일섹션의 파형들과 적절히 정렬하고(즉, 위상을 조절하고), 또 적당한 증폭계수 또는 가중인자를 결정하는(즉, 진폭을 조절하는) 것이다. 이를 위해 많은 수의 방법들이 행해질 수 있으나, 일반적인 접근법은 선택된 기본파형들의 가중합에 관계된다. 가중인자들은 일부 오차규준 또는 비용함수를 최소화함으로서 구해지고, 전형적으로는 맞는 최소자승맞춤에 등가인 무엇을 오디오샘플의 섹션에 관계되게 할 것이다. 바람직한 실시예에서 사용되는 특히 효율적인 접근법은 기본파형들의 모두를 취하여 그것들을 복소화된 쌍의 복소공액파형들로 분리하는 것이다. 이는 기본파형, f1을 취하고 이 기본파형의 고속푸리에변환을 계산하여, 그것을 F1이라 부른 다음, 주파수영역에서의 변환을 양과 음의 주파수성분들인 F1pos, F1neg로 분리함으로써 달성될 수 있다. 그 후 양과 음의 주파수성분들은 역푸리에변환을 사용하여 다시 시간영역으로 개별적으로 변환되어, 결과적으로 시간영역에서 가변하는 한 쌍의 복소공액파형들인 f1pos, f1neg(여기서, f1pos= (f1neg)*)로 된다. 파형들의 분리 및 복소화의 주된 이점은, 복소공액파형들이 가중인자들의 임의의 복소공액쌍과 함께 더해지는 경우, 그 결과가 시간영역의 실수함수이고, 그래서 α와 α*가 계수들이면, αf1pos+ α*f1neg는 실수함수이고, 인자들이 1과 동일하다면 원래의 함수 f1은 재생된다(제로평균을 갖도록 조절됨)는 것이다. 게다가, α와 α*를 적절히 선택함으로써, 파형의 위상은 자동적으로 조절된다. 실사용에서, 위상 및 진폭조절들의 모두는, 기본파형들로부터 이끌어낸 복소화된 쌍들의 복소공액파형들을 사용하여 음악의 섹션들에 최소자승맞춤(least squares fit)을 행함으로써 기본파형들의 모두에 대해 간단히 동시에 성취될 수 있다. 최소자승맞춤으로부터의 가중함수들은 관련된 파형들에 의해 곱해지고 합해져 음악 또는 음성에 대한 근사물(approximation)을 형성한다. 그 후 이 근사물은 검사되어 최소자승맞춤이 단계 24에서 양호한 지를 결정하고 추가의 개선이 필요하다면 처리는 25번 반복될 수 있다.
비교의 다음 단인 단계 26은, 근사물의 검사와 사용되는 기본파형들의 일부가 양호한 맞춤을 달성하는데 불필요한지를 결정하는 것에 관계한다. 불필요한 기본파형들은 비교를 개선하기 위해 제거될 수 있다.
불필요한 기본파형들을 제거한 후, 나머지 기본파형들을 위한 초기화코드들, 가중인자들, 및 주파수정보는 단계 27에서 저장되고, 그 후 단계 28에서 데이터의 섹션들의 경향을 결정하기 위해 검사된다. 이러한 경향은 예측가능하고, 검사 시단편적인 선형함수들에 의해 적절히 근사되는 경우들이 보여졌다. 이러한 경향들이 식별되는 경우, 많은 연속적인 오디오파일섹션들을 위한 가중인자들은 간단한 함수에 의해 표현될 수 있다. 이는 가중인자들이 오디오파일의 각 섹션을 위해 저장되는 것이 필요하지 않게 된다는 것을 의미한다. 이는 압축의 개선을 이끈다. 추가개선은 이를테면 등각사상, 선형변환, 압신(companding)기법 또는 비선형변환을 통해 혼돈어트랙터를 담고있는 공간에 대해 기하변환들을 만듦으로써 이루어질 수 있고, 그래서 기본파형들은 효율적인 압축에 더 적합한 형태로 약간 개조될 수 있다. 마지막으로 단계 29에서, 압축된 오디오파일은 재생된다. 압축된 오디오파일은 디지털파일들에 이용할 수 있는 모든 저장 및 전송수단을 사용하여 저장되고 전송될 수 있다.
이제 본 발명의 다른 바람직한 실시예가 더 상세히 설명될 것이나, 등가의 결과들을 생성하는 많은 변형들이 있다. 도 7은 각 샘플에 대해 16비트의 진폭정보가 저장되는 44,100㎒의 표준 CD율로 샘플링된 음악의 섹션을 보여준다. 이 예에서, 길이 1024개의 샘플들의 음악섹션이 선택되었고, 전체 섹션은 압축된다. 일반적으로, 섹션길이는 조절가능 매개변수이고, 일부 구현들에서는 단일 오디오파일의 압축 중에도 가변할 것이다.
처리의 제1단계는 음악의 섹션을 분석하여 고조파들이 이 음악섹션에 존재하는 지를 결정하는 것이다. 이는 1차푸리에변환을 계산한 다음 복소푸리에변환계수들의 크기를 취함으로써 행해진다. 그 후 계수들의 스펙트럼은 피크들에 대해 검색되고, 피크들은 고조파그룹들로 추가로 조직화된다. 제1반복에서, 최대신호파워에관련된 고조파그룹이 추출된다. 이는 최대스펙트럼피크의 주파수를 결정한 다음, 최대스펙트럼피크의 정수배들인 피크들을 추출함으로써 행해진다. 그 후 이러한 피크들은 벡터 Vpeaks에 저장되어 1차고조파그룹을 제공한다. 실용에서, 음표의 원음 또는 기본음주파수가 종종 최대피크가 아니므로, 고조파그룹화의 추가적인 세밀화가 필요하다. 차라리, 기본음주파수는 최대주파수의 정수 부고조파일 것이고, 그래서 Fmax가 최대파워를 갖는 주파수라면, Fmax/2, Fmax/3 등의 기본음주파수에 기초한 피크들의 고조파그룹들은 추출될 수 있고, 그러면 1차고조파그룹은 피크들에서의 가장 큰 파워를 포획하는 것이 될 수 있다. 1차고조파그룹을 담고 있는 벡터는 이 실시예에서 길이 64로 취해지고, 다른 구현들이 다른 길이로 설정될 수 있지만, 기본파형들의 복잡도를 포획하기 위하여는 큰 수의 고조파들을 고려하는 것이 필요하다. 도 8은 Vpeaks의 값들의 선도를 제공한다. 압축의 다음 단의 목표는 문제의 음악섹션에 유사한 고조파구조를 갖는 기본파형들을 찾는 것이다.
처리의 제2단계는 기본파형들의 라이브러리에서 유사한 스펙트럼특성들을 나타내는 기본파형들을 찾는 것이다. 이 처리는 라이브러리가 시간적으로 먼저 만들어지고 라이브러리의 각 기본파형은 그것의 고조파구조를 결정하기 위해 이미 분석되었기 때문에 더욱 간단하다. 결과적으로, 라이브러리의 각 파형에 대해, 고조파피크들의 벡터는 추출되고 이러한 벡터들은 pi라 불린다(여기서 i는 모든 파형들에 대해 변화하고 64개의 피크들이 다시 취해진다고 가정된다). 이러한 벡터들은 먼저 단위길이를 갖도록 정규화된 다음 64개의 열들과 파형들이 존재하는 가능한 한 많은 행(현 실시예에서 대략 27000개까지)들을 갖는 매트릭스 M 내에 놓여진다. 어떤 파형이 M의 어떤 행과 관련되는지를 추적하는 것을 유지하기 위해서는, M 내의 각 행에 관련된 제어코드를 담고 있는 인덱스테이블이 구축된다. 그러면, 음악벡터 Vpeaks에 가장 부합하는 것을 찾기 위해, 매트릭스적 xprojection= M vpeaks를 계산하여 xprojection에서 최대값을 찾을 수 있다. 최대값을 주는 행은 가장 가까운 음악섹션에 부합하는 기본파형에 대응한다. 그러면 인덱스테이블로부터 대응하는 초기화코드를 추출할 수 있고, 소망의 기본파형을 발생할 수 있거나, 기본파형들이 디지털적으로 저장된다면, 그것을 기본파형들의 라이브러리로부터 로드할 수 있다. 많은 경우들에서, 수 개의 기본파형들의 가중합이 적합한 부합을 생성하는데 필요하므로 음악섹션에 근사하게 부합하는 것을 하나보다 많이 선택하는 것은 가치있는 일이고, 이는 xprojection의 최대값을 선택하고 인덱스테이블에서 가리켜진 관련된 기본파형들을 취함으로써 이루어질 수 있다.
이 접근법이 도 7의 음악섹션에 적용되는 경우, 음악섹션에 최고로 부합하는 것들은 제어코드들 XXXXXXXXXa, YYYYYYYYYb, 및 ZZZZZZZZZZZc(여기서 아래첨자는 기본파형의 3차원의 어느 것이 사용되는지를 표시함)에 의해 주어져 구해질 수 있다. 이러한 기본파형들의 하나의 완전한 주기는 도 9에 보여진다. 이 파형들은 다음에는 그것들의 주기들 및 위상들이 음악파일의 그것들과 일치하도록 조절되어야 한다.
처리의 제3단계는 기본파형들의 주기 및 위상의 조정을 요한다. 기본파형들이 주기적이므로, 조정처리는 어떠한 오차들도 기본파형들에 도입하지 않고 완료될 수 있다. 이는 완전히 주파수영역에서 행해질 수 있어, 변환들은 신호처리에서 알려진 표준기법들을 사용한 기본파형들의 FFT로 행해질 수 있다. 기본파형들은 기본파형들의 기본음주파수들이 음악섹션의 기본음주파수들과 부합하도록 조정될 것이다. 이를 위해, 기본파형의 FFT가 음악섹션의 FFT의 길이에 대응하는 길이로 영들을 삽입(padding)한다. 그 후 기본파형의 기본음주파수의 복소진폭은 음악섹션의 기본음주파수까지 자리이동되고, 기본파형의 기본음주파수의 나머지 고조파들은 음악섹션의 기본음주파수의 대응하는 배수들까지 자리이동된다(비워진 위치들은 영들로 채워진다). 자리이동 후, 역FFT가 계산된다면, 기본파형들은 모두 음악섹션과 동일한 기본음주파수를 가질 것이나, 기본파형들의 위상은 음악섹션의 위상과 부합하지 않는다. 그래서, 역FFT를 계산하기 전에, 혼돈파형들의 위상은 기본파형의 위상이 음악섹션의 최대피크의 위상과 부합하도록 조정된다.
위상조정은 FFT의 복소푸리에변환진폭들에 형태 eiθ(여기서 θ는 음악섹션의 최대피크에 상응하는 피크를 위한 올바른 위상을 생성하도록 선택됨)의 적절한 위상인자를 곱함으로써 달성되고, 다른 스펙트럼피크들의 위상들은 기본파형의 전체 위상시프트를 생성하도록 조정된다. 위상인자를 곱합으로써 신호의 모든 스펙트럼이 변경되지 않음에 유의해야 한다. (이 기술의 다른 실시예들은 위상조정에 약간 다른 접근법들을 사용하고, 예컨대, 필터링을 통과하는 위상을 조절할 수 있고, 또는 위상조정은 음악과 기본파형 간의 차이를 최소화하도록 설계된 최소화원리에 의해 또는 기본파형들과 음악섹션 간의 교차상관(cross correlation)을 계산함으로써 계산될 수 있다. 모든 접근법들은 거의 등가인 결과들을 제공한다.) 위상 및 주파수조정들이 기본파형들에 대해 행해지는 경우, 결과적인 파형들은 도 10에 도시되어 있다.
처리의 제4단계는 음악섹션에 가장 부합하는 것을 생성하는 기본파형들의 합을 위한 가중인자들을 계산하는 것이다. 이 계산은 음악섹션과 맞추어진 기본파형들(의 합) 사이의 잔여오차를 최소화하는 최소자승규준을 사용하여 행해진다. 원래의 음악섹션은 도 11a에 보여지고 본 발명에 따른 제1근사는 도 11b에 보여진다. 차이는 극히 작고 그래서 음악의 압축된 혼돈버전은 원음과 유사한 소리를 낸다. 기본파형들의 제1그룹이 음악섹션에 충분히 근사한 부합을 생성하지 않는 경우, 처리는 소망의 표현에 도달할 때까지 반복된다. 이 압축은, 음악섹션의 데이터점들의 각각에 대해 16비트의 진폭정보를 필요로 하는 대신, 압축된 혼돈버전이 초기화코드들, 가중인자들 및 몇 개의 기본파형들을 위한 주파수에 관한 정보만을 필요로 한다는 사실 때문에 효과가 있다.
본 발명의 다른 실시예는 압축된 음성파일들을 작성하는데 사용될 수 있다. 한 실시예에서, 표준데이터베이스(TIMIT데이터베이스)로부터의 음성샘플들은 5개의 표준기본파형들로부터 구축된 한 족(family)의 파형들에 투영된다. 음성 및 파형들(s)의 압축은 고정기준주파수(W)로 행해지고, 처리는 이 주파수(W)에서 N개의 주기들에 대응하는 비교블록들에서 행해진다. 5개의 파형들은 신장되거나 압축되어, 비교블록에서 각 표준파형은 단일 주기, 2 주기, 3 주기, 4 주기, 5주기 및6주기의 파형들을 각각 담고있는 파형들의 족을 비교블록에서 생성하기 위해 재샘플링된다. 음성파일의 섹션이 선택되고 그것의 파워스펙트럼은 최대파워를 갖는 우세한 주파수를 찾기 위해 계산된다. 그 후 음성섹션은 우세한 주파수를 기준주파수(W)로 자리이동하기 위해 재샘플링되고 비교블록들의 길이들에 대응하는 점들의 수가 취해진다. 재샘플링은 데이터가 매끄럽게 보간되어 정보의 손실이 없도록 행해져야 한다는 점에 유의해야 한다. 그 후 음성섹션은 파형들의 가중합을 사용하여 근사된다. 각 기본파형은 대응하는 초기화코드에 사상되고 가중인자들 및 주파수정보와 함께 압축된 파일에 저장된다. 후속하는 음성섹션들의 처리는 유사한 방식으로 따라간다. 압축된 파일은 원래의 음성섹션을 재생성하도록 압축해제되어 잘 들리는 음성으로 재생된다.
제2의 실시예에서, 기본파형들은 고정되고, 음성에 존재하는 주파수들을 부합하기 위한 조정은 행해지지 않는다. 블록길이 L의 음성파일의 섹션을 처리하기 위해, 기본파형들의 족이 선택되고 각 기본파형은 블록길이 L에 대해 단일 주기, 2개의 완전한 주기들, 3개의 완전한 주기들,..., 6개의 완전한 주기들까지 재생하도록 재계산된다. 그 후 각각의 기본파형은 아날로그 형태의사인-코사인쌍을 형성하도록 "쌍으로 되어(twinned)" 진다. 이는 각 기본파형을 취하고 자기상관함수를 계산함으로써 달성된다. 자기상관함수의 1차영(first zero)은, 기본파형 및 시간지연만큼 자리이동된 그것의 사본을 취할 때 기본파형 및 그것의 자리이동된 버전이 정보이론적인 관점에서 독립적이게 하는 시간지연을 정의한다. 그 후 이 족의 기본파형들은 음성섹션을 표현하는데 사용될 수 있고, 그래서 압축된 음성파일은 재생된다. 압축된 파일의 압축해제버전은 잘 들리는 뚜렷한 음성을 생성한다. 높은 압축비들이 가능한한 임장감(fidelity)을 유지하는 실용상의 인터넷전화을 만들 수 있게 한다.
Claims (9)
- 오디오파일을 압축하는 방법에 있어서,혼돈계를 선택하는 단계;선택된 디지털초기화코드들을 혼돈계에 적용하여 각각의 초기화코드가 주기적 궤도를 생성하고 그렇지 않은 불안정한 궤도를 안정화시키도록 하는 단계;각각의 주기적 궤도에 대해 기본파형이 주기적 궤도를 위한 초기화코드에 1 대 1 대응되도록 하는 기본파형을 발생하는 단계;압축하려는 오디오파일의 섹션을 선택하고 분석하는 단계;사용하려는 기본파형들을 선택하고 그것들에 대응하는 초기화코드들을 저장하는 단계;오디오파일의 섹션 및 선택된 기본파형들을 적합한 주파수범위로 변환하고 변환을 기술하는 주파수정보를 저장하는 단계;오디오파일의 섹션을 근사하는 선택된 기본파형들의 가중합을 작성하기 위한 가중인자들을 계산하고 이 가중인자들을 저장하는 단계; 및저장된 초기화코드들, 저장된 주파수정보 및 저장된 가중인자들을 결합하여 압축된 오디오파일들을 포함하도록 하는 단계를 포함하는 오디오파일 압축방법.
- 제1항에 있어서, 선택된 기본파형들의 가중합으로부터 오디오파일의 섹션을 충분히 잘 근사하는데 필요한 것으로 간주되지 않는 임의의 선택된 기본파형들을제거하는 단계 및 대응하는 저장된 초기화된 코드들을 제거하는 단계를 더 포함하는 오디오파일 압축방법.
- 제1항에 있어서, 압축된 오디오파일의 섹션들에 대해 경향을 확인하고 압축된 오디오파일의 섹션들을 위한 저장된 가중인자들을 적절한 함수에 의해 대체하는 단계를 더 포함하는 오디오파일 압축방법.
- 오디오파일을 압축하기 위한 시스템에 있어서,혼돈계를 선택하는 수단;선택된 디지털초기화코드들을 혼돈계에 인가하여 각각의 초기화코드가 주기적 궤도를 생성하고 그렇지 않은 불안정한 궤도를 안정화시키도록 하는 수단;각각의 주기적 궤도에 대해 기본파형이 주기적 궤도를 위한 초기화코드에 1 대 1 대응되도록 하는 기본파형을 발생하는 수단;압축하려는 오디오파일의 섹션을 선택하고 분석하는 수단;사용하려는 기본파형들을 선택하고 그것들에 대응하는 초기화코드들을 저장하는 수단;오디오파일의 섹션 및 선택된 기본파형들을 적합한 주파수범위로 변환하고 변환을 기술하는 주파수정보를 저장하는 수단;오디오파일의 섹션을 근사하는 선택된 기본파형들의 가중합을 작성하기 위한 가중인자들을 계산하고 이 가중인자들을 저장하는 수단; 및저장된 초기화코드들, 저장된 주파수정보 및 저장된 가중인자들을 결합하여 압축된 오디오파일들을 포함하도록 하는 수단을 포함하는 오디오파일 압축시스템.
- 제4항에 있어서, 선택된 기본파형들의 가중합으로부터 오디오파일의 섹션을 충분히 잘 근사하는데 필요한 것으로 간주되지 않는 임의의 선택된 기본파형들을 제거하는 수단 및 대응하는 저장된 초기화된 코드들을 제거하는 수단을 더 포함하는 오디오파일 압축시스템.
- 제4항에 있어서, 압축된 오디오파일의 섹션들에 대해 경향을 확인하고 압축된 오디오파일의 섹션들을 위한 저장된 가중인자들을 적절한 함수에 의해 대체하는 수단을 더 포함하는 오디오파일 압축시스템.
- 오디오파일들을 압축하기 위한 시스템에 있어서,혼돈계;선택된 디지털초기화코드들을 혼돈계에 인가하여 그 속에서 주기적 궤도들을 이끌어내고 주기적 궤도에 대해 초기화코드와는 1 대 1 대응의 각각의 주기적 궤도를 위한 기본파형을 생성하는 비교제어기;압축하려는 오디오파일의 섹션을 분석하며, 사용하려는 기본파형들을 선택하고, 그것들에 대응하는 초기화코드들을 저장하는 파형비교기;오디오파일의 섹션을 근사하는 선택된 기본파형들의 가중합을 작성하기 위한가중인자들을 계산하고 저장하는 파형가중기; 및저장된 초기화코드들 및 저장된 가중인자들을 저장하는 저장기기를 포함하는 오디오파일 압축시스템.
- 제1항에 따라 생성된 압축된 오디오파일을 압축해제하는 방법에 있어서,압축된 오디오파일을 선택하는 단계;압축된 오디오파일 중에서 저장된 초기화코드들을 떼어내는 단계;저장된 초기화코드들을 압축된 오디오파일의 생성에 사용된 혼돈계와 실질적으로 동일한 혼돈계에 적용하여 대응하는 기본파형들을 생성하는 단계;압축된 오디오파일 중에서 저장된 가중인자들을 떼어내는 단계; 및저장된 가중인자들에 따라 대응하는 기본파형들을 결합하여 원래의 오디오파일섹션을 재생하는 단계를 포함하는 오디오파일 압축해제방법.
- 제1항의 방법에 따라 생성된 압축된 오디오파일을 압축해제하기 위한 시스템에 있어서,압축된 오디오파일을 선택하는 수단;압축된 오디오파일 중에서 저장된 초기화코드들을 떼어내는 수단;저장된 초기화코드들을 압축된 오디오파일의 생성에 사용된 혼돈계와 실질적으로 동일한 혼돈계에 인가하여 대응하는 기본파형들을 생성하는 수단;압축된 오디오파일 중에서 저장된 가중인자들을 떼어내는 수단; 및저장된 가중인자들에 따라 대응하는 기본파형들을 결합하여 원래의 오디오파일섹션을 재생하는 수단을 포함하는 시스템.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/597,101 US7215776B1 (en) | 1999-11-09 | 2000-06-20 | Method and apparatus for the compression and decompression of audio files using a chaotic system |
US09/597,101 | 2000-06-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20030076240A true KR20030076240A (ko) | 2003-09-26 |
Family
ID=24390095
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020027017454A KR20030076240A (ko) | 2000-06-20 | 2001-06-20 | 혼돈계를 이용한 오디오파일들의 압축 및 압축해제를 위한방법 및 장치 |
Country Status (9)
Country | Link |
---|---|
EP (1) | EP1307992B1 (ko) |
JP (1) | JP2005512108A (ko) |
KR (1) | KR20030076240A (ko) |
AT (1) | ATE370495T1 (ko) |
AU (1) | AU2001273608A1 (ko) |
CA (1) | CA2414093A1 (ko) |
DE (1) | DE60129988T2 (ko) |
HK (1) | HK1055865A1 (ko) |
WO (1) | WO2001099315A2 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200064054A (ko) * | 2017-06-26 | 2020-06-05 | 스티븐 타린 | 큰 데이터를 더 작은 표현으로 변환하고 더 작은 표현을 원래의 큰 데이터로 재변환하기 위한 시스템들 및 방법들 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7286670B2 (en) * | 1999-11-09 | 2007-10-23 | Chaoticom, Inc. | Method and apparatus for chaotic opportunistic lossless compression of data |
JP4597919B2 (ja) * | 2006-07-03 | 2010-12-15 | 日本電信電話株式会社 | 音響信号特徴抽出方法、抽出装置、抽出プログラム、該プログラムを記録した記録媒体、および該特徴を利用した音響信号検索方法、検索装置、検索プログラム、並びに該プログラムを記録した記録媒体 |
US8249374B2 (en) | 2006-12-12 | 2012-08-21 | University Of New Hampshire | Systems and methods for adaptive multiresolution signal analysis with compact cupolets |
CN111682930B (zh) * | 2020-06-05 | 2021-10-15 | 中国矿业大学 | 基于混沌的位级音频加密方法 |
CN112149291B (zh) * | 2020-09-13 | 2023-12-12 | 中国人民解放军海军工程大学 | 微弱谐波信号检测系统及方法 |
CN115064178B (zh) * | 2022-06-22 | 2024-07-05 | 济南大学 | 基于脉冲神经网络固定时间同步的音频加解密方法及系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5040217A (en) * | 1989-10-18 | 1991-08-13 | At&T Bell Laboratories | Perceptual coding of audio signals |
US5432697A (en) * | 1993-04-23 | 1995-07-11 | The United States Of America As Represented By The Secretary Of The Army | Technique for controlling the symbolic dynamics of chaotic systems to generate digital communications waveforms |
US5508473A (en) * | 1994-05-10 | 1996-04-16 | The Board Of Trustees Of The Leland Stanford Junior University | Music synthesizer and method for simulating period synchronous noise associated with air flows in wind instruments |
EP0775409A4 (en) * | 1994-08-12 | 2000-03-22 | Neosoft Ag | NON-LINEAR DIGITAL TELECOMMUNICATION SYSTEM |
US5732158A (en) * | 1994-11-23 | 1998-03-24 | Tec-Masters, Inc. | Fractal dimension analyzer and forecaster |
US5737360A (en) * | 1995-06-19 | 1998-04-07 | International Business Machines, Corp. | System employing continuous-time dissipative pseudorandom dynamics for communications and measurement |
US5808225A (en) * | 1996-12-31 | 1998-09-15 | Intel Corporation | Compressing music into a digital format |
US5818712A (en) * | 1997-02-11 | 1998-10-06 | Fractal Dynamics Llc | Exponentially-amplified sampling and reconstruction of signals using controlled orbits of chaotic systems |
US6137045A (en) * | 1998-11-12 | 2000-10-24 | University Of New Hampshire | Method and apparatus for compressed chaotic music synthesis |
-
2001
- 2001-06-20 CA CA002414093A patent/CA2414093A1/en not_active Abandoned
- 2001-06-20 AT AT01952901T patent/ATE370495T1/de not_active IP Right Cessation
- 2001-06-20 WO PCT/US2001/041071 patent/WO2001099315A2/en active IP Right Grant
- 2001-06-20 KR KR1020027017454A patent/KR20030076240A/ko not_active Application Discontinuation
- 2001-06-20 AU AU2001273608A patent/AU2001273608A1/en not_active Abandoned
- 2001-06-20 JP JP2002504052A patent/JP2005512108A/ja active Pending
- 2001-06-20 DE DE60129988T patent/DE60129988T2/de not_active Expired - Fee Related
- 2001-06-20 EP EP01952901A patent/EP1307992B1/en not_active Expired - Lifetime
-
2003
- 2003-11-07 HK HK03108085A patent/HK1055865A1/xx not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200064054A (ko) * | 2017-06-26 | 2020-06-05 | 스티븐 타린 | 큰 데이터를 더 작은 표현으로 변환하고 더 작은 표현을 원래의 큰 데이터로 재변환하기 위한 시스템들 및 방법들 |
Also Published As
Publication number | Publication date |
---|---|
ATE370495T1 (de) | 2007-09-15 |
DE60129988T2 (de) | 2008-04-30 |
HK1055865A1 (en) | 2004-01-21 |
AU2001273608A1 (en) | 2002-01-02 |
EP1307992A4 (en) | 2005-06-29 |
JP2005512108A (ja) | 2005-04-28 |
CA2414093A1 (en) | 2001-12-27 |
DE60129988D1 (de) | 2007-09-27 |
WO2001099315A3 (en) | 2002-07-11 |
WO2001099315A2 (en) | 2001-12-27 |
EP1307992B1 (en) | 2007-08-15 |
EP1307992A2 (en) | 2003-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20070053517A1 (en) | Method and apparatus for the compression and decompression of image files using a chaotic system | |
US20070208791A1 (en) | Method and apparatus for the compression and decompression of audio files using a chaotic system | |
US6137045A (en) | Method and apparatus for compressed chaotic music synthesis | |
Verma | A perceptually based audio signal model with application to scalable audio compression | |
Serra et al. | Analysis and synthesis of tones by spectral interpolation | |
EP1307992B1 (en) | Compression and decompression of audio files using a chaotic system | |
JP2017219595A (ja) | 音楽生成法 | |
US20230154451A1 (en) | Differentiable wavetable synthesizer | |
Schindler | Dynamic timbre control for real-time digital synthesis | |
JP2000099009A (ja) | 音響信号の符号化方法 | |
JP4580548B2 (ja) | 周波数解析方法 | |
JP4662407B2 (ja) | 周波数解析方法 | |
JP4473979B2 (ja) | 音響信号の符号化方法および復号化方法ならびに当該方法を実行するプログラムを記録した記録媒体 | |
Mackenzie et al. | Modelling sound with chaos | |
Ottosen | Sparse Nonstationary Gabor Expansions-with Applications to Music Signals | |
Fabbri et al. | Applications of group theory on granular synthesis | |
Wilson | First steps towards violin performance extraction using genetic programming | |
Welburn | Object coding of music using expressive MIDI | |
Ali | Aspects and Applications of Real-Time Synthesis and Analysis of Complex Waveforms | |
Perrotta et al. | Computers and Music | |
Horner et al. | Multiple Wavetable and Frequency Modulation Instrument Modeling and Synthesis Based on Spectral Analysis | |
Meinert | Subsynth: A generic audio synthesis framework for real-time applications | |
Serra et al. | A Comprehensive Study of Analysis and Synthesis of Tones by Spectral Interpolation | |
Cadena | Generating music by fractals and grammars | |
Woodbury Jr | Masters of Science in Computer Science |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |