KR20190124332A - 변환 코딩 또는 디코딩을 위한 분석 또는 합성 가중 윈도우들의 적응들 - Google Patents
변환 코딩 또는 디코딩을 위한 분석 또는 합성 가중 윈도우들의 적응들 Download PDFInfo
- Publication number
- KR20190124332A KR20190124332A KR1020197031511A KR20197031511A KR20190124332A KR 20190124332 A KR20190124332 A KR 20190124332A KR 1020197031511 A KR1020197031511 A KR 1020197031511A KR 20197031511 A KR20197031511 A KR 20197031511A KR 20190124332 A KR20190124332 A KR 20190124332A
- Authority
- KR
- South Korea
- Prior art keywords
- window
- transform
- size
- decimation
- frame
- Prior art date
Links
- 230000015572 biosynthetic process Effects 0.000 title abstract description 42
- 238000003786 synthesis reaction Methods 0.000 title abstract description 42
- 230000006978 adaptation Effects 0.000 title description 2
- 238000000034 method Methods 0.000 claims abstract description 33
- 238000005070 sampling Methods 0.000 claims abstract description 30
- 230000001788 irregular Effects 0.000 claims abstract description 17
- 230000005236 sound signal Effects 0.000 claims abstract description 17
- 230000000295 complement effect Effects 0.000 claims description 9
- 239000002131 composite material Substances 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000002123 temporal effect Effects 0.000 claims description 3
- 230000009466 transformation Effects 0.000 abstract description 23
- 230000015654 memory Effects 0.000 description 20
- 238000013139 quantization Methods 0.000 description 7
- 230000004044 response Effects 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 5
- 230000002829 reductive effect Effects 0.000 description 5
- 238000000844 transformation Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000011084 recovery Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003595 spectral effect Effects 0.000 description 2
- OVOUKWFJRHALDD-UHFFFAOYSA-N 2-[2-(2-acetyloxyethoxy)ethoxy]ethyl acetate Chemical compound CC(=O)OCCOCCOCCOC(C)=O OVOUKWFJRHALDD-UHFFFAOYSA-N 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
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
- 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
- G10L19/0212—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 using orthogonal transformation
-
- 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
-
- 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
- G10L19/022—Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
-
- 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
- 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
- H03M7/3002—Conversion to or from differential modulation
- H03M7/3044—Conversion to or from differential modulation with several bits only, i.e. the difference between successive samples being coded by more than one bit, e.g. differential pulse code modulation [DPCM]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명은 샘플 프레임들에 적용된 분석(ha) 또는 합성(hs) 가중 윈도우들을 이용한 변환에 의해 디지털 오디오 신호를 코딩 또는 디코딩하는 방법에 관한 것이다. 상기 방법은 그것이 N과 상이한 M 크기의 변환을 적용하기 위해, 정해진 초기 N 크기의 변환에 제공된 초기 윈도우의 불규칙 샘플링 단계(E10)를 포함하도록 한다.
본 발명은 또한 상기 방법을 실시하는데 부합한 디바이스에 관한 것이다.
본 발명은 또한 상기 방법을 실시하는데 부합한 디바이스에 관한 것이다.
Description
본 발명은 신호 처리에 관한 것으로, 특히, 일련의 샘플들의 형태로 오디오(가령, 스피치 신호) 및/또는 비디오 신호의 처리에 관한 것이다. 본 발명은, 특히, 변환에 의한 디지털 오디오 신호의 코딩 및 디코딩 및 변환의 크기에 대한 분석 또는 합성 윈도우들의 적응에 관한 것이다.
변환 코딩은 변환(주파수) 영역에서 시간 신호들의 코딩으로 이루어진다. 이런 변환은 특히, 코딩의 성능을 최적화 및 향상시키기 위해 오디오 신호들의 주파수 특성들을 이용하는 것을 가능하게 한다. 예를 들면, 고조파 사운드(harmonic sound)가 감소한 수의 스펙트럼 광선들에 의해 주파수 영역에서 표시된다는 사실이 이용되고, 따라서 감소한 수의 스펙트럼 광선들이 간결하게 코딩될 수 있다. 주파수 마스킹(masking) 효과들이 또한 예를 들면, 코딩 잡음이 가능한 거의 들리지 않도록 코딩 잡음을 포맷하기(format) 위해 유리하게 사용된다.
전통적으로, 변환에 의한 코딩 및 디코딩은 5개의 단계들의 적용에 의해 수행된다 :
● 코딩될 디지털 오디오 스트림(정해진 샘플링 주파수 Fs로 샘플링됨)은 유한 수의 샘플들(예를 들면, 2N개)의 프레임들로 분할된다. 각 프레임은 전통적으로 이전 프레임에 50%만큼 중첩한다.
● 변환 단계가 신호에 적용된다. 변환, 소위 MDCT(Modified Discrete Cosine Transform)의 경우에, L=2N 크기의 가중 윈도우(weighting window) ha(소위 분석 윈도우)가 각 프레임에 적용된다. 가중된 프레임은 N으로의 2N 변환에 따라 "폴딩(folded)"된다. ha에 의해 가중된 2N 크기의 프레임 T2N의 N 크기의 프레임 TN으로의 "폴딩(folding)"은, 예를 들면, 다음과 같이 이루어질 수 있다 :
DCT IV는 변환된 영역에서 N 크기의 프레임을 획득하기 위해, 폴딩된 프레임 TN에 적용된다. 그것은 다음과 같이 표현된다 :
● 이어서 변환된 영역에서의 프레임은 부합된 양자화기를 이용함으로써 양자화된다. 양자화는 전송될 데이터의 크기를 감소시키는 것을 가능하게 하지만, 원래의 프레임 안에 잡음(들리거나 들리지 않음)을 유입시킨다. 코딩의 비트 레이트가 높을수록, 이런 잡음은 더 많이 감소되고, 양자화된 프레임은 원래의 프레임에 더 근접하게 된다.
● 역 MDCT 변환이 양자화된 프레임에 대한 디코딩에 적용된다. 그것은 2개의 단계들을 포함한다 : N 크기의 양자화된 프레임은 역 DCT IV(직접 변환으로서 표현됨)를 이용함으로써 시간 영역 TN *에서 N 크기의 프레임으로 변환된다. 이어서 N에서 2N으로의 "언폴딩(unfolding)"의 제 2 단계가 N 크기의 시간 프레임 TN *에 적용된다. 가중 윈도우들 hs, 소위 합성 윈도우들은 다음 식에 따라 2N 크기의 프레임들 T2N *에 적용된다 :
● 이어서 디코딩된 오디오 스트림이 2개의 연속한 프레임들의 중첩 부분들을 가산함으로써 합성된다.
이런 방식은 분석 및 합성 필터들이 (2K-1)N의 중첩에 대하여 길이 L=2KN을 갖는 ELT들과 같은, 더 큰 중첩을 갖는 변환들로 확장됨에 유의하라. 따라서, MDCT는 K=1인 ELT의 특별한 경우이다.
변환 및 정해진 중첩에 대하여, 코딩될(양자화가 없을 때) 신호의 소위 "완전한" 복원을 달성하는 것을 가능하게 하는 분석 및 합성 윈도우들이 결정된다. 원래 X와 복원된 신호들 사이의 차이가 무시될 정도로 고려될 수 있는 경우, 복원은 또한 "유사-완전한(quasi-perfect)" 복원일 수 있다. 예를 들면, 오디오 코딩에서, 처리된 신호 X의 전력보다 낮은 오차 전력 50 dB을 갖는 차이는 무시되도록 고려될 수 있다. 예를 들면, 분석 및 합성 윈도우들이 2개의 연속한 프레임들에 걸쳐 변화하지 않는 경우, 그것들은 다음의 완전한 복원 조건들을 준수하여야 한다 :
따라서, 대부분의 코덱들에서, 분석 및 합성 윈도우들은 메모리에 저장되고, 그것들은 사전에 연산되어 ROM 메모리에 저장되거나, 또는 공식을 이용하여 초기화되고, 그럼에도 불구하고, RAM 메모리에 저장되는 것이 쉽게 이해될 것이다.
대부분의 시간에서, 종종 인덱스 반전(h s (k)=h a (2N-1-k))을 제외하면, 분석 및 합성 윈도우들은 동일하고(h s (k)=h a (k)), 이어서 그들은 메모리에서 그것들의 저장을 위한 2N 크기의 단일 메모리 공간만이 요구한다.
새로운 코덱들은, 복수의 샘플링 주파수들을 관리하거나, 또는 분석(및 따라서 합성) 윈도우의 크기를 오디오 콘텐츠(예를 들면, 전이들의 경우에)에 적응하든지 간에 상이한 프레임 크기들 N에 작동한다. 이들 코덱들에서, ROM 또는 RAM 메모리는 상이한 프레임 크기들이 존재하는 만큼 많은 분석 및/또는 합성 윈도우들을 포함한다.
코더 또는 디코더의 분석 또는 합성 윈도우들의 계수들(또한 소위 샘플들)은 분석 또는 합성 변환을 수행하기 위해 메모리에 저장되어야 한다. 분명히, 상이한 크기들의 변환들을 이용하는 특정 경우에, 사용된 크기들의 각각에 대한 가중 윈도우는 메모리에 표현되어야 한다.
윈도우들이 대칭인 편리한 경우에, 단지 L/2개의 계수들만이 저장될 필요가 있고, 다른 L/2개는 임의의 산술 연산 없이 이들 저장된 계수들로부터 추론된다. 따라서, MDCT(K=1)에 대하여 M 및 2M 크기의 변환이 필요한 경우, 윈도우들이 대칭이면, (M+2M)=3M개의 계수들이 저장되어야 하고, 그렇지 않으면 (2M+4M)=6M개의 계수들이 저장되어야 한다. 오디오 코딩에 대한 전형적인 예는 M=320 또는 M=1024이다. 따라서, 비대칭인 경우에 대하여, 이는 1920 및 6144개의 계수들이 각각 저장되어야 함을 의미한다.
계수들의 표현에 대한 원하는 정확도에 따라, 각 계수에 대하여, 16비트, 심지어 24비트가 요구된다. 이는 저가 컴퓨터들에 대한 적지 않은 메모리 공간을 의미한다.
분석 또는 합성 윈도우 데시메이션(decimation) 기법들이 존재한다.
예를 들면, N개의 샘플들을 M(N은 M의 배수임)개로 변경하기 위한 간단한 윈도우 데시메이션은 하나의 샘플을 N/M개로 취하는 단계로 구성되고, N/M은 1보다 큰 정수이다.
이런 연산은 식 (3)에서 주어진 완전한 복원 식을 준수하는 것을 가능하지 않게 한다.
예를 들면, 합성 윈도우가 분석 윈도우의 시간 반전인 경우에, 다음이 적용된다 :
완전 복원 조건은 다음이다 :
이들 조건을 충족하기 위해 코딩에 전통적으로 사용된 윈도우는 말바르(Malvar) 사인 윈도우이다 :
윈도우 h(k)가 하나의 샘플을 N/M개로 취함으로써 데시메이션되는 경우, 이 윈도우는 다음이다 :
완전한 복원 조건(식 (3)에서)을 확인하기 위한 2M 크기의 h*(k)에 대하여,
N/M은 1과 동일해야 하고; 이제, N/M은 1보다 큰 정수로 정의되며, 따라서, 이런 데시메이션에 대하여, 완전한 복원 조건은 확인될 수 없다.
본 명세서에서 취한 예시적인 예는 쉽게 일반화된다. 따라서, 감소된 크기의 윈도우를 획득하기 위한 기본 윈도우의 직접 데시메이션에 의해, 완전한 복원 특성은 보장될 수 없다.
가중 윈도우 보간 기법들이 또한 존재한다. 이런 기법은, 예를 들면, 공개 특허출원 EP 2319039호에 설명된다. 이런 기법은 더 큰 크기의 윈도우가 필요한 경우, ROM에 저장되는 윈도우의 크기를 감소시키는 것을 가능하게 한다.
따라서, 2N 크기의 윈도우 및 4N 크기의 윈도우를 저장하는 대신, 상기 특허출원은 2N개의 윈도우의 샘플들을 4N개의 윈도우 중 2개에서 하나의 샘플에 할당하는 것 및 ROM에 단지 누락된 2N개의 샘플들만을 저장하는 것을 제안한다. 따라서, ROM의 저장 크기는 4N+2N에서 2N+2N으로 감소한다.
그러나, 이런 기법은 또한 실제 변환을 적용하기 전에 예비 분석 및 합성 윈도우 연산을 필요로 한다.
따라서, 완전한 복원 조건들을 준수하면서 상이한 크기들의 변환들을 적용하기 위해, 단지 감소한 수의 분석 윈도우들 및 합성 윈도우들만을 메모리에 저장할 필요가 있다. 게다가, 변환에 의한 코딩 이전에 이들 윈도우들의 예비 연산의 단계들을 회피할 필요가 있다고 생각된다.
본 발명은 이런 상황을 개선한다. 이를 위해, 본 발명은 샘플 프레임들에 적용된 분석(ha) 또는 합성(hs) 가중 윈도우들을 이용한 변환에 의해 디지털 오디오 신호를 코딩 또는 디코딩하는 방법을 제안한다. 상기 방법은 그것이 N과는 상이한 M 크기의 변환을 적용하기 위해, 정해진 초기 N 크기의 변환에 제공된 초기 윈도우의 불규칙 샘플링 단계(E10)를 포함하도록 한다.
따라서, N 크기의 변환에 제공된, 저장된 초기 윈도우로부터, 예비 연산들이 수행되지 않고, 그리고 상이한 크기들의 다른 윈도우들이 저장되지 않고도 상이한 크기의 변환을 적용하는 것이 가능하다.
따라서, 임의의 크기의 단일 윈도우가 그것을 상이한 크기들의 변환들에 적응하는데 충분할 수 있다.
불규칙 샘플링은 디코딩 동안, 소위 "완전한" 또는 "유사-완전한" 복원 조건들을 준수하는 것을 가능하게 한다.
이하에 언급된 다양한 특정 실시예들은 서로 독립적으로 또는 조합하여 앞서 정의된 코딩 또는 디코딩 방법의 단계들에 부가될 수 있다.
바람직한 실시예에 따르면, 상기 샘플링 단계는 미리 결정된 완전한 복원 조건을 준수하는 계수들 N-d-1, N+d, 2N-d-1의 정의된 세트의 상기 초기 윈도우의 제 1 계수 d(0≤d≤N/M)로부터의 선택 단계를 포함한다.
따라서, 계수들의 세트로부터, 완전한 복원 조건들을 준수하면서 상이한 크기들의 변환들에 부합하는 윈도우들을 결정하는 것이 가능하다.
유리하게, N이 M보다 큰 경우, 초기 윈도우의 데시메이션은 데시메이션된 윈도우를 획득하기 위해, 적어도 상기 정의된 세트의 계수들을 보유함으로써 수행된다.
따라서, 더 큰 크기의 저장된 분석 또는 합성 윈도우로부터, 디코딩시 완전한 복원 조건들을 또한 준수하는 더 작은 크기의 윈도우를 획득하는 것이 가능하다.
특히 예시적인 실시예에서, 상기 방법은 상기 정의된 세트의 상기 계수들과 일정한 차이만큼 이격된 계수들의 제 2 세트의 선택 단계를 포함하고, 상기 데시메이션은 상기 데시메이션된 윈도우를 획득하기 위해, 상기 제 2 세트의 계수들을 또한 보유함으로써 수행된다.
따라서, 원하는 변환 크기에 부합한 데시메이션이 달성될 수 있다. 이는 획득된 윈도우들의 주파수 응답을 가장 잘 보존하는 것을 가능하게 한다.
특정 실시예에서, 2N 크기의 윈도우의 2M 크기의 윈도우로의 상기 데시메이션은 다음의 식들에 따라 수행되고:
여기서 h*는 상기 데시메이션된 분석 또는 합성 윈도우이고, h는 상기 초기 분석 또는 합성 윈도우이며, 는 X 이하(≤X)의 가장 가까운 정수이고, 는 X 이상(≥X)의 가장 가까운 정수이며, d는 상기 정의된 세트의 상기 제 1 계수의 값이다.
따라서, 심지어 상기 초기 윈도우와 상기 획득된 윈도우 사이의 다수의 계수들이 배수가 아닌 경우에도, 더 큰 크기의 윈도우로부터 상이한 크기들의 윈도우들을 획득하는 것이 가능하다.
N이 M보다 작은 경우, 보간은 상기 보간된 윈도우를 획득하기 위해, 정의된 계수들의 상기 세트의 상기 계수들의 각각과, 인접한 계수들의 세트의 계수들의 각각 사이에 계수를 삽입함으로써 수행된다.
상기 보간된 윈도우는 또한 완전한 복원을 준수하고, 저장된 더 작은 크기의 윈도우로부터 동작중 연산될 수 있다.
특정 실시예에서, 상기 방법은 상기 정의된 세트의 상기 계수들과 일정한 차이만큼 이격된 계수들의 제 2 세트의 선택 단계를 포함하고, 상기 보간은 상기 보간된 윈도우를 획득하기 위해, 상기 제 2 세트의 상기 계수들의 각각과, 인접한 계수들의 세트의 계수들의 각각 사이에 계수를 또한 삽입함으로써 수행된다.
따라서, 원하는 변환 크기에 부합한 보간이 달성될 수 있다. 이는 상기 획득된 윈도우의 주파수 응답을 가장 잘 보유하는 것을 가능하게 한다.
보간된 윈도우의 주파수 응답을 최적화하기 위해, 특정 실시예에서, 상기 방법은 상보 윈도우(complementary window)를 보간하기 위해, 상기 세트의 상기 정의된 계수들로부터 그리고 상기 인접한 계수들로부터 연산된 계수들을 포함하는 상보 윈도우의 연산 단계를 포함한다.
바람직한 실시예에서, 상기 불규칙 샘플링 단계 및 상기 초기 윈도우의 데시메이션 또는 보간은 상기 M 크기의 변환의 연산을 위해 사용된 시간 폴딩(temporal folding) 또는 언폴딩을 실시하는 단계 동안 수행된다.
따라서, 분석 또는 합성 윈도우의 데시메이션 또는 보간은 실제 변환 단계와 동시에 동작 중에 수행된다. 따라서, 코딩 이전에 예비 연산 단계들을 수행하는 것은 더 이상 유용하지 않고, 변환의 크기에 부합한 윈도우들이 코딩 동안 획득된다.
예시적인 실시예에서, 초기 윈도우의 데시메이션 및 보간 모두는 M 크기의 변환의 연산을 위해 사용된 시간 폴딩 또는 언폴딩을 실시하는 단계 동안 수행된다.
이는 메모리에 저장된 단일 윈도우로부터 상이한 크기들의 윈도우들을 획득하기 위한 더 많은 가능성들을 제공하는 것을 가능하게 한다.
데시메이션에 대한 경우의 특정 실시예에서, 시간 폴딩 동안의 데시메이션은 다음 식에 따라 수행되고:
여기서, TM은 M개의 샘플들의 프레임이고, T2M은 2M개의 샘플들의 프레임이며, 시간 언폴딩 동안의 데시메이션은 다음 식에 따라 수행되고:
여기서, T* M은 M개의 샘플들의 프레임이고, T* 2M은 2M개의 샘플들의 프레임이다.
특히 부합한 예시적인 실시예에서, M 크기의 변환이 M=3/2N 크기인 경우, 초기 윈도우의 데시메이션 다음에 보간은 시간 폴딩 동안 다음의 식들에 따라 수행되며:
여기서, TM은 M개의 샘플들의 프레임이고, T2M은 2M개의 샘플들의 프레임이며, hcomp는 상보 윈도우이고, M 크기의 변환이 M=3/2N 크기인 경우, 초기 윈도우의 데시메이션 다음에 보간은 시간 언폴딩 동안 다음의 식들에 따라 수행되며:
여기서, T* M은 M개의 샘플들의 프레임이고, T* 2M은 2M개의 샘플들의 프레임이며, hcomp는 상보 윈도우이다.
본 발명은 또한 샘플 프레임들에 적용된 분석 또는 합성 가중 윈도우들을 이용한 변환에 의해 디지털 오디오 신호를 코딩 또는 디코딩하는 디바이스를 목표로 한다. 상기 디바이스는 그것이 N과는 상이한 M 크기의 변환을 적용하기 위해, 정해진 초기 N 크기의 변환에 제공된 초기 윈도우를 불규칙하게 샘플링하는데 부합한 샘플링 모듈을 포함하도록 한다.
이런 디바이스는 그것이 실시하는, 이전에 설명된 방법과 동일한 이점들을 제공한다.
본 발명은, 코드 명령들이 프로세스에 의해 실행되는 경우, 설명된 바와 같은 코딩 또는 디코딩 방법의 단계들의 실시를 위한 코드 명령들을 포함하는 컴퓨터 프로그램을 목적으로 한다.
마지막으로, 본 발명은 이전에 설명된 바와 같은 코딩 또는 디코딩 방법을 실시하는 컴퓨터 프로그램을 저장하는, 코딩 또는 디코딩 디바이스에 통합되거나 통합되지 않고, 어쩌면 제거 가능한 프로세서-판독 가능한 저장 매체에 관한 것이다.
본 발명의 다른 특징들 및 장점들은 오직 비제한적인 예로서 주어진 다음 설명을 첨부된 도면들을 참조하여 읽을 때, 더 명백하게 분명해질 것이다.
도 1은 일 실시예에서 본 발명을 실시하는 코딩 및 디코딩 시스템의 예를 도시한다;
도 2는 본 발명에 따른 분석 또는 합성 윈도우 데시메이션의 예를 도시한다;
도 3은 본 발명의 실시예에 따라 윈도우를 획득하기 위해 분석 또는 합성 윈도우의 불규칙 샘플링을 도시한다;
도 4(a) 및 도 4(b)는 본 발명의 일 실시예에서 유리수 인수(rational factor) (2/3)의 분석 또는 합성 윈도우의 불규칙 샘플링을 도시한다. 도 4(a)는 데시메이션 서브단계를 도시하는 한편, 도 4(b)는 보간 서브단계를 도시한다; 그리고
도 5는 본 발명에 따른 코딩 또는 디코딩 디바이스의 하드웨어 실시예의 예를 도시한다.
도 2는 본 발명에 따른 분석 또는 합성 윈도우 데시메이션의 예를 도시한다;
도 3은 본 발명의 실시예에 따라 윈도우를 획득하기 위해 분석 또는 합성 윈도우의 불규칙 샘플링을 도시한다;
도 4(a) 및 도 4(b)는 본 발명의 일 실시예에서 유리수 인수(rational factor) (2/3)의 분석 또는 합성 윈도우의 불규칙 샘플링을 도시한다. 도 4(a)는 데시메이션 서브단계를 도시하는 한편, 도 4(b)는 보간 서브단계를 도시한다; 그리고
도 5는 본 발명에 따른 코딩 또는 디코딩 디바이스의 하드웨어 실시예의 예를 도시한다.
도 1은 2N 크기의 단일 분석 윈도우 및 단일 합성 윈도우가 메모리에 저장되는 변환에 의해 코딩 및 디코딩하기 위한 시스템을 도시한다.
디지털 오디오 스트림(X(t))이 샘플링 주파수 Fs로 샘플링 모듈(101)에 의해 샘플링되고, 따라서, 2M개의 샘플들의 프레임들(T2M(t))이 획득된다. 각 프레임은 전통적으로 이전 프레임에 50%만큼 중첩한다.
이어서, 변환 단계가 블록들(102 및 103)에 의해 신호에 적용된다. 블록(102)은 N과는 상이한 M 크기의 변환을 적용하기 위해 N 크기의 변환에 제공된, 저장된 초기 윈도우의 샘플링을 수행한다. 이어서 2N개의 계수들의 분석 윈도우(ha)의 샘플링이 그것을 신호의 2M개 샘플들의 프레임들에 적응하기 위해 수행된다.
N이 M의 배수인 경우에, 그것은 데시메이션이고, N이 M개의 약수인 경우에 그것은 보간이다. N/M이 이들의 임의의 하나인 경우가 제공된다.
블록(102)에 의해 실시되는 단계들은 도 2 및 도 3을 참조하여 나중에 설명될 것이다.
블록(102)은 또한 M으로의 2M 변환에 따라 가중 프레임에 대한 폴딩을 수행한다. 유리하게, 이런 폴딩 단계는 나중에 설명되는 바와 같은 불규칙 샘플링 및 데시메이션 또는 보간 단계와 조합하여 수행된다.
따라서, 블록(102) 이후에, 신호는 M개의 샘플들의 프레임(TM(t))의 형태이다. 이어서, DCT IV 유형의 변환이, 예를 들면, 변환된 영역, 즉, 여기서는 주파수 영역에서 M 크기의 프레임들(TM)을 획득하기 위해 블록(103)에 의해 적용된다.
이어서, 이들 프레임들은 양자화 인덱스 형태(IQ)로 디코더로 전송되도록 양자화 모듈(104)에 의해 양자화된다.
디코더가 변환된 영역에서의 프레임들()을 획득하기 위해 모듈(114)에 의해 역 양자화를 수행한다. 역변환 모듈(113)이 시간 영역에서 프레임들()을 획득하기 위해, 예를 들면, 역 DCT IV를 수행한다.
이어서, M개에서 2M개의 샘플들로의 언폴딩이 프레임들()에 대하여 블록(112)에 의해 수행된다. 2M 크기의 합성 가중 윈도우가 2N 크기의 윈도우(hs)로부터의 데시메이션 또는 보간에 의해 블록(112)에 의해 획득된다.
N이 M보다 큰 경우에, 그것은 데시메이션이고, N이 M보다 작은 경우에, 그것은 보간이다.
블록(112)에 의해 실시되는 단계들은 도 2 및 도 3을 참조하여 나중에 상세하게 될 것이다.
코딩에 관해서는, 유리하게, 이런 언폴딩 단계는 불규칙 샘플링 및 데시메이션 또는 보간 단계와 조합하여 수행되고, 나중에 설명될 것이다.
블록(102)뿐만 아니라 블록(112)은 이제 더 상세하게 설명된다.
이들 블록들은 M 크기의 변환에 부합한 윈도우를 정의하기 위해 불규칙 샘플링 단계들(E10)을 수행한다.
따라서, 2N 크기의 저장된 윈도우(ha 또는 hs)의 제 1 계수 d(0≤d≤N/M)로부터, 미리 결정된 완전한 복원 조건을 준수하는 계수들 N-d-1, N+d, 2N-d-의 정의된 세트가 선택된다.
이런 세트로부터, 상기 윈도우의 데시메이션 또는 보간은 2N개의 샘플들의 윈도우에서 2M개의 샘플들의 윈도우로 변경하기 위해 N이 M보다 큰지 또는 작은지에 따라 E11에서 수행된다.
미리 결정된 완전한 복원 조건이 구해진다. 이를 위해, 샘플링은 다음 식들이 준수되는 그러한 방식으로 수행되어야 한다(합성 및 분석을 위해 선택된 계수들이 N 크기의 변환에 대해 완전한 복원을 허용함을 보장함) :
따라서, 식 (3)의 완전한 복원 조건들을 준수하기 위한 데시메이션된 윈도우에 대하여, 분석 윈도우 상의 점 ha(k)(k €[0 ;2N-1]에 대하여)으로부터 분석 윈도우 상의 점들 ha(N+k) 및 합성 윈도우 상의 점들 hs(k), hs(N+K), hs(2N-1-k) 및 hs(N-1-k)의 추가 선택만이 완전 복원을 컨디셔닝한다.
그러나, 이들 6개의 점들만 보유함으로써, 그 다음 불균형(disparity)이 있고, 분석 윈도우는 N으로 데시메이션되며, 합성 윈도우는 N/2로 데시메이션된다는 것이 관찰될 것이다.
*유사하게, 데시메이션이 분석 윈도우 ha(N-k-1) 상의 점 N-k-1의 선택을 수반하는 경우, 분석 윈도우 상의 점들 ha(2N-1-k) 및 합성 윈도우 상의 4개의 동일한 점들 hs(k), hs(N+k), hs(2N-1-k) 및 hs(N-1-k)의 선택만이 완전한 복원 조건을 준수하는 것을 가능하게 함이 주목될 것이다.
따라서, 도 2를 참조하여 설명된 바와 같은 데시메이션 동안, (3)에서 완전한 복원 조건들을 준수하기 위해, 0<d<N/M에 대하여 취해진 계수 d로부터, 분석 윈도우 상의 다음 계수들 N-d-1, N+d, 2N-1-d 및 합성 윈도우 상의 다음 계수들 d, N+d, 2N-1-d 및 N-1-d가 또한 분석 윈도우와 합성 윈도우 사이의 동일한 크기의 데시메이션을 갖도록 또한 선택되는 것이 절대로 필수적이다.
실제로, 완전한 복원 조건은, 도 2에 도시된 바와 같이, 8개의 점들의 서브세트들에만 독립적으로 적용한다.
따라서, 분석 윈도우 및 합성 윈도우 상의 계수들 d, N-d-1, N+d, 2N-1-d의 정의된 세트의 선택이 수행된다.
이어서, 데시메이션은 데시메이션된 윈도우를 획득하기 위해, 정의된 세트의 적어도 계수들을 보유함으로써 수행되고, 다른 계수들은 삭제될 수 있다. 따라서, 완전한 복원 조건들을 준수하는 가장 작은 데시메이션된 윈도우가 획득된다.
따라서, 가장 작은 데시메이션된 분석 윈도우를 획득하기 위해, 점들 ha(k), ha(N+k), ha(2N-1-k) 및 ha(N-1-k)만이 도 2에 참조된 예에서 도시된 바와 같이 유지된다.
합성 윈도우에 대하여, 계수들의 동일한 세트가 선택되고, 데시메이션이 데시메이션된 윈도우를 획득하기 위해, 정의된 세트의 적어도 계수들을 보유함으로써 수행된다.
따라서, 가장 작은 데시메이션된 합성 윈도우를 획득하기 위해, 점들 hs(k), hs(N+k), hs(2N-1-k) 및 hs(N-1-k)만이 도 2에 참조된 예에서 도시된 바와 같이 유지된다.
점들 사이의 대칭들이 주어지면, 합성 윈도우가 분석 윈도우의 시간 반전인 경우에, 4개의 점들 (h(k), h(N+k), h(2N-1-k) 및 h(N-1-k))의 서브세트만이 데시메이션에 필요하다.
따라서, 위에서 정의된 세트를 선택함으로써, 완전한 복원 속성들을 보유하면서 0과 N-1 사이에서의 k의 임의의 값들을 선택함으로써 분석 및/또는 합성 윈도우를 데시메이션하는 것이 가능하다.
부합한 데시메이션은 데시메이션될 윈도우의 주파수 응답을 가장 잘 보존하는 것을 가능하게 한다.
부합한 데시메이션의 경우에, 변환 크기 M의 경우에, 분석(또는 합성) 윈도우의 제 1 사등분에 대해 N/M에서의 하나의 계수가 취해지고, 정의된 세트의 계수들과 일정한 차이(N/M의)만큼 이격된 계수들의 제 2 세트가 선택된다. 따라서, 데시메이션은 계수들 d, N-1-d, N+d, 2N-1-d에 더하여, 데시메이션된 윈도우를 획득하기 위해 제 2 세트의 계수들을 보존함으로써 수행된다.
도 3은 변환 크기 M에 대해 부합한 불규칙 샘플링의 예를 도시한다. 도시된 윈도우는 4 개의 사등분들로 분할된다.
완전한 복원 조건들이 주어지면, 다음 식들은 2M 크기의 데시메이션된 윈도우를 획득하기 위해 획득된다 :
여기서, h*는 보간된 또는 데시메이션된 분석 또는 합성 윈도우이고, h는 초기 분석 또는 합성 윈도우이며, 는 X 이하(≤X)의 가장 가까운 정수이고, 는 X 이상(≥X)의 가장 가까운 정수이다. d는 오프셋이다.
오프셋은 윈도우의 제 1 사등분에 대한 시작 샘플 d의 함수이다.
따라서, 블록(102)의 단계(E10)는 정의된 세트의 계수들(d, N-d-1, N+d, 2N-d-1)로부터 일정한 차이(여기서 N/M)만큼 이격된 계수들의 제 2 세트의 선택을 포함한다. 동일한 일정한 차이는 계수들의 제 3 세트를 선택하는데 적용될 수 있다.
실제로, 예를 들면, 윈도우가 3으로 데시메이션되는 경우, 즉, N/M=3인 경우, 따라서 차이는 각 윈도우 부분에서 3이다. d=0이 정의된 세트의 제 1 계수이면, 일정한 차이만큼 이격된 제 2 또는 제 3 세트의 계수들은 3 및 6 등이다.
유사하게, d=1이면, 일정한 차이만큼 이격된 제 2 또는 제 3 세트들의 제 1 계수들은 1, 4, 7..., 아니면, d=2에 대하여 계수들은 2, 5, 8...이다.
따라서, 식 7의 "d"는 값들 0, 1 또는 2(0과 N/M-1 사이에 포함된)를 취할 수 있다.
도 3은 윈도우의 제 1의 사등분에서 선택된 제 1 계수가 d=1인 경우를 나타낸다.
이어서, 일정한 차이만큼 이격된 제 2 및 제 3 세트들의 계수들은 4 및 7이다.
아래의 표 1은 N=48 크기의 변환에서 더 작은 크기(M=24, 16, 12 및 8)의 변환들로의 변경을 위해 보유된 점들을 나타낸다. 따라서, 그것은 M=8 크기의 변환들을 실시하기 위해, 샘플들 0, 6, 12 ,18 ,29, 35, 41, 47, 48, 54, 60, 66, 77, 83, 89 및 95는 분석 또는 합성 윈도우에서 고려되고, 따라서 불규칙 샘플링을 나타낸다는 것을 알게 될 것이다.
아래의 표 2는 N=48 크기의 변환에 제공된 초기 윈도우에서 N=6 크기의 변환을 생성하기 위해 적합한 윈도우로 변경하기 위한 실시예를 나타낸다. 이어서, d의 값들: d=0...7에 대한 N/M= 8 및 7개의 데시메이션의 가능성들이 있다. 상기 표는 초기 윈도우에 보유된 값들에 대응하는 인덱스들을 나타낸다.
시작점이 각 세그먼트의 끝인 것이 고려되면, 식 7은 다음과 같다.
각 부분에서, 2N 크기의 초기 윈도우에서의 점들을 임의로 선택하기 위해 M 크기의 변환을 수행하는 것이 또한 가능하다. 제 1 계수(h(d))로부터, M/2-1개의 계수들이 다른 3개의 부분들에서의 인덱스의 계수들 2N-1-dk, N-1-dk, 및 N+dk를 선택시 조건부로, 인덱스들 dk로 윈도우의 제 1 사등분으로부터 임의로 취해질 수 있다. 이는 구성되는 2M 크기의 윈도우의 연속성 또는 주파수 응답을 개선하기 위해 특히, 유리하고, 불연속성들이 특히 인덱스들 dk의 재빠른 선택에 의해 제한될 수 있다.
아래의 표 3은 2N=48, 2M=16의 경우의 특정 실시예를 나타낸다.
유리한 실시예에서, 블록들(102 및 112)은 신호 프레임들의 폴딩 또는 언폴딩하는 단계와 동일한 시간에 샘플링 단계들을 수행한다.
여기서 설명되는 경우에서, 2N 크기의 분석 가중 윈도우 ha는 블록(102)에서 동작중 2M 크기의 각 프레임을 데시메이션함으로써 또는 2M 크기의 각 프레임을 보간함으로써 2M 크기의 각 프레임에 적용된다.
이런 단계는 폴딩 단계를 설명하는 식들 (1) 및 불규칙 데시메이션을 설명하는 식들 (7)을 함께 그룹화함으로써 수행된다.
가중된 프레임은 M으로의 2M 변환에 따라 "폴딩"된다. M 크기의 프레임(TM)에 대하여 ha(2N 크기의)에 의해 가중된 2M 크기의 프레임(T2M)의 "폴딩"은, 예를 들면, 다음과 같이 이루어질 수 있다:
따라서, 2N 크기의 윈도우의 2M 크기의 윈도우로의 데시메이션의 단계는 2M 크기의 프레임의 M 크기의 프레임으로의 폴딩과 동시에 이루어진다.
수행된 연산들은 종래의 폴딩을 위해 사용된 것과 동일한 복잡성이고, 단지 인덱스들만이 변경된다. 이런 동작중 데시메이션 동작은 추가의 복잡성을 수반하지 않는다.
유사하게, 디코딩시, 2N 크기의 합성 가중 윈도우 hs는 블록(112)에서 동작중 2M 크기의 각 프레임에 적용될 2M 크기의 윈도우로 데시메이션된다. 이런 단계는 언폴딩 식들 (2)과 데시메이션 식들 (7) 또는 (8)을 함께 그룹화함으로써 수행된다.
따라서, 다음 식이 획득된다 :
여기서 다시, 3개의 식들은 종래의 언폴딩 식들에 비하여 임의의 추가 복잡성을 초래하지 않는다. 그것들은 수행을 위한 임의의 예비 연산을 하지 않고도 그리고 추가 윈도우들을 저장해야 하지 않고도 동작중에 윈도우 데시메이션을 달성하는 것을 가능하게 한다.
합성 윈도우가 분석 윈도우의 시간 반전이고(hs(k)=ha(2N-1-k)), N/M 비가 정수인 경우(따라서 데시메이션만), 식들 10은 다음과 같이 된다:
이런 실시예는 메모리에 분석 및 합성을 위한 시간에 사용된 단일 윈도우만을 갖는 것을 가능하게 한다.
따라서, 폴딩/언폴딩 및 데시메이션 단계들이 크기 N에 대하여 제공된 분석/합성 윈도우를 이용함으로써 M 크기의 변환을 수행하기 위해 결합될 수 있음이 증명되었다. 본 발명에 의해, M 크기에 대하여 제공된 분석/합성 윈도우로 M 크기의 변환의 적용과 동일한 복잡성이 추가 메모리의 사용 없이 달성된다. 이런 효과는 DCT IV에 기반한 MDCT 변환(H. S. Malvar, Signal Processing with Lapped Transforms, Artech House, 1992에서 제안된 바와 같이)의 효과적인 실시에 대해 나타나고, 이런 효과는 또한 다른 효과적인 실시들, 특히, ICASSP91 컨퍼런스에서 소개된 "A fast algorithm for the implementation of filter banks based on TDAC"에서 Duhamel 등에 의해 제안된 것에서 밝혀질 수 있음에 유의하라.
이런 방법은 제한되지 않고, 그것은 특히, 분석 윈도우가 0들을 나타내는 경우에 적용될 수 있고, 여기서 그것은 코딩 지연을 감소하기 위해 오프셋에 의해 프레임에 적용되는 경우(가장 최근 사운드 샘플들이 0들을 표시하는 부분 바로 전의 윈도우 부분에 의해 가중됨)에 적용된다. 이런 경우에, 프레임들에 할당된 인덱스들 및 윈도우들에 할당된 인덱스들은 오프셋이다.
특정 실시예에서, 이제 2N 크기의 윈도우 h가 있고, M 크기의 프레임들이 있는 경우에 보간 방법의 설명이 따른다.
N이 M보다 작은 경우에, 완전한 복원 조건들을 준수하는 계수들의 세트의 유사한 선택이 또한 수행된다. 정의된 세트의 계수들에 인접한 계수들의 세트가 또한 결정된다. 이어서, 보간이, 보간된 윈도우를 획득하기 위해, 정의된 계수들의 세트의 계수들의 각각과, 인접한 계수들의 세트의 계수들의 각각 사이에 계수를 삽입함으로써 수행된다.
따라서, 식 (3)에 의해 정의된 완전한 복원 조건들을 준수하기 위해, 목적이 위치들 k 및 k+1 사이에 샘플을 삽입하는 것이면, 분석 윈도우 상의 위치들 ha(k)와 ha(k+1), ha(N-k-1)와 ha(N-k-2), ha(N+k)와 ha(N+k+1), ha(2N-1-k)와 ha(2N-k-2) 사이에 점들을, 그리고 합성 윈도우 상의 위치들 hs(k)와 hs(k+1), hs(N+k)와 hs(N+k+1), hs(2N-1-k)와 hs(2N-k-2), hs(N-1-k)와 hs(N-k-2) 사이에 점들을 삽입하는 것이 제안된다. 삽입된 8개의 새로운 점들은 또한 식 (3)의 완전한 복원 조건들을 준수한다.
제 1 실시예에서, 보간은 정의된 세트 또는 인접한 계수들의 세트의 계수의 반복에 의해 수행된다.
제 2 실시예에서, 보간은 획득된 윈도우에 대한 더 우수한 주파수 응답을 획득하기 위해 계수(hcomp)의 연산에 의해 수행된다.
이를 위해, 2N 크기의 상보 윈도우 hinit의 연산의 제 1 단계가 수행된다. 이런 윈도우는 다음과 같이 2N 크기의 h의 계수들 사이에서 보간된 버전이다:
*제 2 단계에서, 윈도우 hcomp가 그것이 완전한 복원을 나타내도록 EP 2319039호에 따라 연산된다. 이를 위해, 윈도우는 다음 식들에 따라 정의된 세트의 계수들에 대하여 연산된다:
이런 윈도우는 초기화시 연산되거나, ROM에 저장된다.
보간 및 데시메이션 단계들은 변환이 효과적으로 적용되는 실시예를 나타내도록 통합될 수 있다.
이런 실시예는 도 4(a) 및 도 4(b)를 참조하여 도시된다.
그것은 2개의 단계들로 나누어진다:
● 도 4(a)에 도시된 제 1 단계에서, 방법은 2N' 크기의 제 2 윈도우 h를 획득하기 위해, 2N 크기의 윈도우 ha에서 시작한다(여기서 2N=96 및 2N'=32, 즉, 인수 3에 의한 데시메이션이 수행된다). 이런 데시메이션은 불규칙하고 식 (7)을 따른다.
● 도 4(b)에 도시된 제 2 단계에서, 상보 계수들 hcomp의 세트가 2M개의 계수들의 전체를 획득하기 위해 h의 2N'개의 계수들에 가산된다(여기서 상보 계수들의 수는 2N'개이고, 그래서 2M=4N'가 획득된다).
도 4(a) 및 도 4(b)에서의 특정 예에서, 2M=64 크기의 윈도우를 구성함으로써, N=48 크기의 MDCT에 제공된 2N=96 크기의 초기 윈도우에서 M=32 크기의 MDCT를 실시하도록 의도된 윈도우로의 변환이 존재한다.
변환 시에, 블록(102)에서, 윈도우 h 및 윈도우 hcomp가 다음 식들을 준수함으로써 교대로 적용된다:
유사하게, 블록(112)에서 역변환할 때, 윈도우 h 그 다음 윈도우 hcomp가 식들에 따라 교대로 적용된다:
많은 일탈(declination)들이 본 발명에 따라 가능하다. 따라서, 메모리에 저장된 단일 윈도우로부터, 보간에 의해서든, 데시메이션에 의해서든 또는 데시메이션된 윈도우의 보간 또는 그 반대에 의해서든 상이한 크기의 윈도우를 획득하는 것이 가능하다.
따라서, 코딩 및 디코딩의 유연성이 메모리 공간 또는 수행될 연산들의 아무런 증가 없이 크다.
MDCT의 폴딩시 또는 언폴딩시의 데시메이션 또는 보간의 실시는 복잡성 및 유연성의 추가 절약을 제공한다.
도 5는 본 발명에 따른 코딩 또는 디코딩 디바이스의 하드웨어 실시예를 나타낸다. 이런 디바이스는 스토리지 및/또는 작업 메모리(MEM)를 포함하는 메모리 블록(BM)과 협력하는 프로세서(PROC)를 포함한다.
메모리 블록은, N과는 상이한 M 크기의 변환을 적용하기 위해, 코드 명령들이 프로세서(PROC)에 의해 실행되는 경우, 본 발명에 따른 코딩 또는 디코딩 방법의 단계들, 및 특히, 정해진 초기 N 크기의 변환에 제공된 초기 윈도우의 불규칙 샘플링의 실시를 위한 코드 명령들을 포함하는 컴퓨터 프로그램을 유리하게 포함할 수 있다.
전형적으로, 도 1의 설명은 이런 컴퓨터 프로그램의 알고리즘의 단계들을 반복한다. 컴퓨터 프로그램은 또한 디바이스의 드라이브에 의해 판독될 수 있거나 그의 메모리 공간으로 다운로드될 수 있는 메모리 매체 상에 저장될 수 있다.
이런 장치는 코더의 경우에 오디오 스트림(X(t)) 또는 디코더의 경우에 양자화 인덱스들(IQ)을 수신하기에 적합한 입력 모듈을 포함한다.
따라서, 하나의 가능한 실시예에서, 설명된 디바이스는 코딩 및 디코딩 기능들 모두를 포함할 수 있다.
Claims (10)
- 샘플 프레임들에 적용되는 분석(ha) 가중 윈도우(weighting window)들을 이용하는 변환에 의해 디지털 오디오 신호를 코딩하는 방법으로서,
M 크기의 변환과 연관된 윈도우는, 정해진 초기 N 크기의 변환에 제공된 초기 윈도우의 불규칙 샘플링(irregular sampling)으로부터 획득되고, M은 N과는 상이하고,
상기 방법은, 상기 M 크기의 변환의 연산을 위해 사용되는 시간 폴딩(temporal folding)을 실시하는 단계 동안 상기 초기 윈도우의 불규칙 샘플링 및 데시메이션(decimation) 또는 보간을 수행하는 단계를 포함하고,
상기 시간 폴딩 동안의 상기 데시메이션은 다음 식에 따라 수행되고:
여기서, TM은 M개의 샘플들의 프레임이고, T2M은 2M개의 샘플들의 프레임인,
디지털 오디오 신호를 코딩하는 방법. - 제 1 항에 있어서,
상기 초기 윈도우의 데시메이션 및 보간은 모두 상기 M 크기의 변환의 연산을 위해 사용되는 시간 폴딩을 실시하는 단계 동안 수행되는,
디지털 오디오 신호를 코딩하는 방법. - 샘플 프레임들에 적용되는 분석(ha) 가중 윈도우들을 이용하는 변환에 의해 디지털 오디오 신호를 코딩하기 위한 디바이스로서,
M 크기의 변환과 연관된 윈도우를 획득하기 위해, 정해진 초기 N 크기의 변환에 제공된 초기 윈도우를 불규칙하게 샘플링하는데 부합된 샘플링 모듈(102, 112) ― M은 N과는 상이함 ― 을 포함하고,
상기 초기 윈도우의 불규칙 샘플링 및 데시메이션 또는 보간은, 상기 M 크기의 변환의 연산을 위해 사용되는 시간 폴딩을 실시하는 단계 동안 수행되고,
상기 시간 폴딩 동안의 상기 데시메이션은 다음 식에 따라 수행되고:
여기서, TM은 M개의 샘플들의 프레임이고, T2M은 2M개의 샘플들의 프레임인,
디지털 오디오 신호를 코딩하기 위한 디바이스. - 코드 명령들을 포함하는 컴퓨터-판독가능 저장 매체로서,
상기 코드 명령들은, 상기 코드 명령들이 프로세서에 의해 실행될 때, 제 1 항 내지 제 3 항 중 어느 한 항에 청구된 코딩 방법의 단계들을 실시하기 위한 것인, 컴퓨터-판독가능 저장 매체. - 샘플 프레임들에 적용되는 합성(hs) 가중 윈도우들을 이용하는 변환에 의해 디지털 오디오 신호를 디코딩하는 방법으로서,
M 크기의 변환과 연관된 윈도우는, 정해진 초기 N 크기의 변환에 제공된 초기 윈도우의 불규칙 샘플링으로부터 획득되고, M은 N과는 상이하고,
상기 방법은, 상기 M 크기의 변환의 연산을 위해 사용되는 시간 언폴딩(temporal unfolding)을 실시하는 단계 동안 상기 초기 윈도우의 불규칙 샘플링 및 데시메이션 또는 보간을 수행하는 단계를 포함하고,
상기 시간 언폴딩 동안의 상기 데시메이션은 다음 식에 따라 수행되고:
여기서, T* M은 M개의 샘플들의 프레임이고, T* 2M은 2M개의 샘플들의 프레임인,
디지털 오디오 신호를 디코딩하는 방법. - 제 6 항에 있어서,
상기 초기 윈도우의 데시메이션 및 보간은 모두 상기 M 크기의 변환의 연산을 위해 사용되는 시간 언폴딩을 실시하는 단계 동안 수행되는,
디지털 오디오 신호를 디코딩하는 방법. - 샘플 프레임들에 적용되는 합성(hs) 가중 윈도우들을 이용하는 변환에 의해 디지털 오디오 신호를 디코딩하기 위한 디바이스로서,
M 크기의 변환과 연관된 윈도우를 획득하기 위해, 정해진 초기 N 크기의 변환에 제공된 초기 윈도우를 불규칙하게 샘플링하는데 부합된 샘플링 모듈(102, 112) ― M은 N과는 상이함 ― 을 포함하고,
상기 초기 윈도우의 불규칙 샘플링 및 데시메이션 또는 보간은, 상기 M 크기의 변환의 연산을 위해 사용되는 시간 언폴딩을 실시하는 단계 동안 수행되고,
상기 시간 언폴딩 동안의 상기 데시메이션은 다음 식에 따라 수행되고:
여기서, T* M은 M개의 샘플들의 프레임이고, T* 2M은 2M개의 샘플들의 프레임인,
디지털 오디오 신호를 디코딩하기 위한 디바이스. - 코드 명령들을 포함하는 컴퓨터-판독가능 저장 매체로서,
상기 코드 명령들은, 상기 코드 명령들이 프로세서에 의해 실행될 때, 제 6 항 내지 제 8 항 중 어느 한 항에 청구된 디코딩 방법의 단계들을 실시하기 위한 것인, 컴퓨터-판독가능 저장 매체.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1156356 | 2011-07-12 | ||
FR1156356A FR2977969A1 (fr) | 2011-07-12 | 2011-07-12 | Adaptation de fenetres de ponderation d'analyse ou de synthese pour un codage ou decodage par transformee |
PCT/FR2012/051622 WO2013007943A1 (fr) | 2011-07-12 | 2012-07-09 | Adaptations de fenetres de ponderation d'analyse ou de synthese pour un codage ou decodage par transformee |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020147003681A Division KR20140050056A (ko) | 2011-07-12 | 2012-07-09 | 변환 코딩 또는 디코딩을 위한 분석 또는 합성 가중 윈도우들의 적응들 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190124332A true KR20190124332A (ko) | 2019-11-04 |
KR102089273B1 KR102089273B1 (ko) | 2020-03-16 |
Family
ID=46639596
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020197031511A KR102089273B1 (ko) | 2011-07-12 | 2012-07-09 | 변환 코딩 또는 디코딩을 위한 분석 또는 합성 가중 윈도우들의 적응들 |
KR1020197031510A KR102089281B1 (ko) | 2011-07-12 | 2012-07-09 | 변환 코딩 또는 디코딩을 위한 분석 또는 합성 가중 윈도우들의 적응들 |
KR1020147003681A KR20140050056A (ko) | 2011-07-12 | 2012-07-09 | 변환 코딩 또는 디코딩을 위한 분석 또는 합성 가중 윈도우들의 적응들 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020197031510A KR102089281B1 (ko) | 2011-07-12 | 2012-07-09 | 변환 코딩 또는 디코딩을 위한 분석 또는 합성 가중 윈도우들의 적응들 |
KR1020147003681A KR20140050056A (ko) | 2011-07-12 | 2012-07-09 | 변환 코딩 또는 디코딩을 위한 분석 또는 합성 가중 윈도우들의 적응들 |
Country Status (12)
Country | Link |
---|---|
US (2) | US9368121B2 (ko) |
EP (1) | EP2732448B1 (ko) |
JP (1) | JP6177239B2 (ko) |
KR (3) | KR102089273B1 (ko) |
CN (1) | CN103814406B (ko) |
BR (3) | BR122021011683B1 (ko) |
CA (1) | CA2841303C (ko) |
ES (1) | ES2556268T3 (ko) |
FR (1) | FR2977969A1 (ko) |
MX (1) | MX2014000409A (ko) |
RU (1) | RU2607230C2 (ko) |
WO (1) | WO2013007943A1 (ko) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2980791A1 (en) | 2014-07-28 | 2016-02-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Processor, method and computer program for processing an audio signal using truncated analysis or synthesis window overlap portions |
WO2019091573A1 (en) | 2017-11-10 | 2019-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for encoding and decoding an audio signal using downsampling or interpolation of scale parameters |
WO2019091576A1 (en) | 2017-11-10 | 2019-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits |
EP3483882A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Controlling bandwidth in encoders and/or decoders |
EP3483884A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Signal filtering |
EP3483886A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Selecting pitch lag |
EP3483878A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio decoder supporting a set of different loss concealment tools |
EP3483880A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Temporal noise shaping |
EP3483879A1 (en) * | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Analysis/synthesis windowing function for modulated lapped transformation |
EP3483883A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio coding and decoding with selective postfiltering |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7516064B2 (en) * | 2004-02-19 | 2009-04-07 | Dolby Laboratories Licensing Corporation | Adaptive hybrid transform for signal analysis and synthesis |
KR20100034831A (ko) * | 2008-09-25 | 2010-04-02 | (주)제너시스템즈 | 사운드 신호의 실시간 보간 장치 및 방법 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5357594A (en) * | 1989-01-27 | 1994-10-18 | Dolby Laboratories Licensing Corporation | Encoding and decoding using specially designed pairs of analysis and synthesis windows |
AU671952B2 (en) * | 1991-06-11 | 1996-09-19 | Qualcomm Incorporated | Variable rate vocoder |
US5504833A (en) * | 1991-08-22 | 1996-04-02 | George; E. Bryan | Speech approximation using successive sinusoidal overlap-add models and pitch-scale modifications |
JPH06141351A (ja) * | 1992-10-26 | 1994-05-20 | Matsushita Electric Ind Co Ltd | 信号発生装置 |
US6269338B1 (en) * | 1996-10-10 | 2001-07-31 | U.S. Philips Corporation | Data compression and expansion of an audio signal |
US6240299B1 (en) * | 1998-02-20 | 2001-05-29 | Conexant Systems, Inc. | Cellular radiotelephone having answering machine/voice memo capability with parameter-based speech compression and decompression |
WO1999059139A2 (en) * | 1998-05-11 | 1999-11-18 | Koninklijke Philips Electronics N.V. | Speech coding based on determining a noise contribution from a phase change |
US6430529B1 (en) * | 1999-02-26 | 2002-08-06 | Sony Corporation | System and method for efficient time-domain aliasing cancellation |
US6748363B1 (en) * | 2000-06-28 | 2004-06-08 | Texas Instruments Incorporated | TI window compression/expansion method |
US6707869B1 (en) * | 2000-12-28 | 2004-03-16 | Nortel Networks Limited | Signal-processing apparatus with a filter of flexible window design |
FR2870352B1 (fr) * | 2004-05-14 | 2006-06-23 | Thales Sa | Procede de localisation d'un emetteur avec un reseau synthetique lacunaire d'antennes |
WO2006110975A1 (en) * | 2005-04-22 | 2006-10-26 | Logovision Wireless Inc. | Multimedia system for mobile client platforms |
CN1862969B (zh) * | 2005-05-11 | 2010-06-09 | 尼禄股份公司 | 自适应块长、常数变换音频解码方法 |
US8255207B2 (en) * | 2005-12-28 | 2012-08-28 | Voiceage Corporation | Method and device for efficient frame erasure concealment in speech codecs |
US8438015B2 (en) * | 2006-10-25 | 2013-05-07 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Apparatus and method for generating audio subband values and apparatus and method for generating time-domain audio samples |
US8214200B2 (en) * | 2007-03-14 | 2012-07-03 | Xfrm, Inc. | Fast MDCT (modified discrete cosine transform) approximation of a windowed sinusoid |
BRPI0821091B1 (pt) * | 2007-12-21 | 2020-11-10 | France Telecom | processo e dispositivo de codificação/decodificação por transformada com janelas adaptativas, e memória legível por computador |
CN102132342B (zh) | 2008-07-29 | 2014-05-28 | 法国电信 | 一种通过内插滤波器更新编码器的方法 |
CN101694773B (zh) * | 2009-10-29 | 2011-06-22 | 北京理工大学 | 一种基于tda域的自适应窗切换方法 |
US9454511B2 (en) * | 2011-05-04 | 2016-09-27 | American University | Windowing methods and systems for use in time-frequency analysis |
-
2011
- 2011-07-12 FR FR1156356A patent/FR2977969A1/fr active Pending
-
2012
- 2012-07-09 KR KR1020197031511A patent/KR102089273B1/ko active IP Right Grant
- 2012-07-09 US US14/232,564 patent/US9368121B2/en active Active
- 2012-07-09 EP EP12744070.9A patent/EP2732448B1/fr active Active
- 2012-07-09 BR BR122021011683-0A patent/BR122021011683B1/pt active IP Right Grant
- 2012-07-09 WO PCT/FR2012/051622 patent/WO2013007943A1/fr active Application Filing
- 2012-07-09 CN CN201280034844.7A patent/CN103814406B/zh active Active
- 2012-07-09 BR BR112014000611-3A patent/BR112014000611B1/pt active IP Right Grant
- 2012-07-09 BR BR122021011692-0A patent/BR122021011692B1/pt active IP Right Grant
- 2012-07-09 KR KR1020197031510A patent/KR102089281B1/ko active IP Right Grant
- 2012-07-09 JP JP2014519605A patent/JP6177239B2/ja active Active
- 2012-07-09 MX MX2014000409A patent/MX2014000409A/es active IP Right Grant
- 2012-07-09 KR KR1020147003681A patent/KR20140050056A/ko active Application Filing
- 2012-07-09 CA CA2841303A patent/CA2841303C/fr active Active
- 2012-07-09 RU RU2014104488A patent/RU2607230C2/ru active
- 2012-07-09 ES ES12744070.9T patent/ES2556268T3/es active Active
-
2016
- 2016-05-04 US US15/146,362 patent/US10373622B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7516064B2 (en) * | 2004-02-19 | 2009-04-07 | Dolby Laboratories Licensing Corporation | Adaptive hybrid transform for signal analysis and synthesis |
KR20100034831A (ko) * | 2008-09-25 | 2010-04-02 | (주)제너시스템즈 | 사운드 신호의 실시간 보간 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
EP2732448A1 (fr) | 2014-05-21 |
ES2556268T3 (es) | 2016-01-14 |
MX2014000409A (es) | 2014-09-15 |
RU2014104488A (ru) | 2015-08-20 |
JP2014524048A (ja) | 2014-09-18 |
KR20190124331A (ko) | 2019-11-04 |
US20170011747A1 (en) | 2017-01-12 |
CA2841303C (fr) | 2021-01-19 |
US20140142930A1 (en) | 2014-05-22 |
CA2841303A1 (fr) | 2013-01-17 |
BR112014000611B1 (pt) | 2021-09-08 |
WO2013007943A1 (fr) | 2013-01-17 |
EP2732448B1 (fr) | 2015-09-09 |
JP6177239B2 (ja) | 2017-08-09 |
FR2977969A1 (fr) | 2013-01-18 |
US9368121B2 (en) | 2016-06-14 |
US10373622B2 (en) | 2019-08-06 |
RU2607230C2 (ru) | 2017-01-10 |
BR112014000611A2 (pt) | 2017-02-14 |
KR20140050056A (ko) | 2014-04-28 |
CN103814406A (zh) | 2014-05-21 |
CN103814406B (zh) | 2016-05-11 |
BR122021011692B1 (pt) | 2022-03-22 |
KR102089281B1 (ko) | 2020-03-16 |
KR102089273B1 (ko) | 2020-03-16 |
BR122021011683B1 (pt) | 2022-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102089273B1 (ko) | 변환 코딩 또는 디코딩을 위한 분석 또는 합성 가중 윈도우들의 적응들 | |
JP5083779B2 (ja) | オーディオ副帯値を生成する装置及び方法、並びに、時間領域オーディオサンプルを生成する装置及び方法 | |
US7876966B2 (en) | Switching between coding schemes | |
CN102150207B (zh) | 通过二维变换压缩音频比例因子 | |
JP5247721B2 (ja) | 重み付けウィンドウを用いた低遅延変換符号化 | |
ES2717131T3 (es) | Métodos, codificador y decodificador para codificación y decodificación predictiva lineal de señales de sonido tras transición entre tramas que tienen diferentes tasas de muestreo | |
CN108564958B (zh) | 音频帧丢失隐藏 | |
JP2004531151A (ja) | 時間離散オーディオサンプル値を処理する方法と装置 | |
KR20200123395A (ko) | 오디오 데이터를 처리하기 위한 방법 및 장치 | |
RU2530327C2 (ru) | Способ обновления кодера посредством интерполяции фильтра | |
WO1998035449A1 (en) | Method and equipment for processing data | |
WO2004105253A1 (ja) | データ処理装置、符号化装置および符号化方法、復号装置および復号方法、並びにプログラム | |
JP6907341B2 (ja) | ステレオ信号処理方法及び装置 | |
JP5491193B2 (ja) | 音声コード化の方法および装置 | |
US8160869B2 (en) | Method and apparatus for encoding continuation sinusoid signal information of audio signal and method and apparatus for decoding same | |
KR20150048502A (ko) | Qmf 필터링 방법 및 이를 수행하는 장치 | |
JP2002026738A (ja) | オーディオデータ復号処理装置および方法、ならびにオーディオデータ復号処理プログラムを記録したコンピュータ読取可能な記録媒体 | |
JP4293005B2 (ja) | 音声音楽信号の符号化装置および復号装置 | |
RU2024124975A (ru) | Способы и устройства для рендеринга звукового сигнала амбиофонии | |
US7957978B2 (en) | Method and terminal for encoding or decoding an analog signal | |
JP4496467B2 (ja) | データ処理装置、符号化装置および符号化方法、復号装置および復号方法、並びにプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |