KR20110046498A - 2차원 변환에 의한 오디오 스케일 팩터의 압축 - Google Patents
2차원 변환에 의한 오디오 스케일 팩터의 압축 Download PDFInfo
- Publication number
- KR20110046498A KR20110046498A KR1020117004318A KR20117004318A KR20110046498A KR 20110046498 A KR20110046498 A KR 20110046498A KR 1020117004318 A KR1020117004318 A KR 1020117004318A KR 20117004318 A KR20117004318 A KR 20117004318A KR 20110046498 A KR20110046498 A KR 20110046498A
- Authority
- KR
- South Korea
- Prior art keywords
- scale factor
- matrix
- audio
- data
- samples
- Prior art date
Links
- 230000006835 compression Effects 0.000 title claims description 23
- 238000007906 compression Methods 0.000 title claims description 23
- 230000009466 transformation Effects 0.000 title claims description 8
- 238000000034 method Methods 0.000 claims abstract description 143
- 230000000295 complement effect Effects 0.000 claims abstract description 13
- 238000006243 chemical reaction Methods 0.000 claims abstract description 11
- 238000001914 filtration Methods 0.000 claims abstract description 8
- 238000005070 sampling Methods 0.000 claims abstract description 5
- 239000011159 matrix material Substances 0.000 claims description 115
- 230000005540 biological transmission Effects 0.000 claims description 24
- 230000005236 sound signal Effects 0.000 claims description 24
- 238000012545 processing Methods 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 11
- 238000013139 quantization Methods 0.000 claims description 9
- 230000009467 reduction Effects 0.000 claims description 8
- 208000031339 Split cord malformation Diseases 0.000 claims description 7
- 238000004645 scanning capacitance microscopy Methods 0.000 claims description 7
- 238000013068 supply chain management Methods 0.000 claims description 7
- 230000015572 biosynthetic process Effects 0.000 claims description 6
- 238000003786 synthesis reaction Methods 0.000 claims description 6
- 230000003595 spectral effect Effects 0.000 claims description 5
- 230000001131 transforming effect Effects 0.000 claims description 5
- 238000012856 packing Methods 0.000 claims description 4
- 239000000523 sample Substances 0.000 description 23
- 239000013598 vector Substances 0.000 description 16
- 238000010586 diagram Methods 0.000 description 11
- 238000007667 floating Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000013507 mapping Methods 0.000 description 6
- 230000002123 temporal effect Effects 0.000 description 5
- 230000000873 masking effect Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 241000272194 Ciconiiformes Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012067 mathematical method Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000012800 visualization Methods 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
- 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
-
- 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
-
- 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/0204—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 subband decomposition
-
- 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/032—Quantisation or dequantisation of spectral components
-
- 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/04—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 predictive techniques
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (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)
Abstract
디지털 오디오 샘플은 종종 지수/가수 포맷으로 칭해지는 스케일 팩터 코드 및 대응하는 양 코드의 곱으로서 나타난다. 오디오 데이터를 압축하기 위해, 스케일 팩터들은 시간 및 주파수를 필터링이나 주파수 변환에 의해 2차원 프레임으로 샘플링함으로써 조직화된다. 프레임은 분할에 의해 "타일들"로 분해될 수 있다. 하나 이상의 이러한 스케일 팩터 타일들은 2차원 이산 코사인 변환과 같은 2차원 직교 변환에 의한 변환에 의해 압축된다. 리던던시를 감소시키기 위해 선택적인 부가의 인코딩이 적용된다. 디코딩 방법 및 인코딩된 기계 판독가능한 매체는 인코딩 방법을 보완한다.
Description
본 발명은 일반적으로 압축 또는 인코딩된 디지털 오디오 신호 분야에 관한 것으로, 보다 상세하게는 오디오 신호를 나타내는데 스케일 팩터(scale factor) 또는 부동 소수점(floating point) 표현을 사용하는 오디오 압축에 관한 것이다.
디지털 신호를 코딩 및 디코딩하는 다수의 방법들이 알려져 있으며, 이들은 통상적으로 전송 및 저장에 필요한 비트 요건을 감소시키거나 (비트레이트 제약을 조건으로) 오디오 재생의 지각 품질을 증가시키기 위해 채용된다. 예를 들어, MPEG-2 압축(compression) 및 압축 해제(decompression)의 다수의 변형인 것으로서, DTS coherent acoustics(미국 특허 5974380 참조) 및 Dolby AC3과 같은 것들이 일반적으로 상용되는 것이다.
어떠한 디지털 오디오 표현에서든, 신호는 주기적으로 샘플링되고, 그 다음 일련의 샘플들이 오디오 신호를 나타내도록 어떤 방법에 의해 양자화된다(quantized). 많은 코덱에 있어서(인코더/디코더 시스템), 신호는 시간적 시퀀스(temporal sequence)(시간 도메인 표현)로서 조직화된 일련의 양자화된 샘플들로 표현된다. 다른 코덱에서는, 스펙트럼 표현 또는 변환(transform) 표현으로도 불리는 "주파수 도메인" 표현을 산출하도록 샘플들이 임의의 다수의 수학적 방법에 의해 수학적으로 변환될 수 있다. 이러한 코덱들은 종종 "변환 코덱"으로 불린다.
인코딩된 표현이 시간 도메인 샘플들을 사용하든, 인코딩된 스펙트럼 값들을 사용하든, 아니면 어떠한 다른 변환된 일련의 데이터를 사용하든, 가용 비트를 보다 효율적으로 사용하기 위해 샘플들의 수치 표현을 채용하는 것이 종종 유리하다고 한다. 스케일 팩터를 사용함으로써 데이터를 나타내는 것이 알려져 있다. 각각의 데이터 값은 스케일 팩터, 그리고 오리지널 데이터 값을 복구하기 위해 스케일 팩터와 곱해지는 것으로 이해되는 양(quantity) 파라미터로 표현된다. 이 방법은 가끔 "스케일링된 표현(scaled representation)", 가끔은 구체적으로 블록 스케일링된 표현, 또는 가끔은 "부동 소수점" 표현으로 불린다. 부동 소수점 표현은, 가수(mantissa)와 지수(exponent)의 조합으로 수가 표현되는, 스케일링된 표현의 특별한 경우라는 것이 명백하여야 한다. 가수는 양 파라미터에 대응하고, 지수는 스케일 팩터에 대응한다. 통상적으로 스케일 팩터 비트는 지수 또는 로그 매핑과 같은 일부 비선형 방식으로 표현될 수 있다. 따라서, 스케일 팩터 필드의 각각의 양자화 단계는 (예를 들어) 로그 베이스 10 방식으로 어느 정도의 데시벨을 나타낼 수 있다.
스케일 팩터의 사용은 일반적으로 전송을 위한 비트 레이트 요건을 감소시키지만, "포워드 적응(forward-adaptive)" 코덱에서는, 어떤 방식으로든 스케일 팩터를 전송하여야 한다. 보다 낮은 비트 레이트에서, 스케일 팩터의 전송은 전체 비트 레이트의 상당 부분을 필요로 한다. 따라서, 스케일 팩터를 전송하는데 요구되는 비트의 수를 감소시키는 것이 바람직하다. 이러한 문제점에 대한 가장 일반적인 종래의 접근법은 어느 정도 더 큰 복수(블록)의 샘플들과 연관된 단일 스케일 팩터를 전송하는 것이다. 이 기술의 하나의 변형은 "블록-부동 소수점"으로 불린다. 이 방법은 최적의 양자화와, 스케일 팩터의 전송에 필요한 비트를 감소시켜야 할 필요성 사이의 타협에 부딪힌다. 기술의 성공은 신호의 시간 및 주파수 거동에 크게 의존하며, 신호 천이(signal transient)는 난제를 제시한다.
본 발명은 인코딩 방법, 디코딩 방법, 및 기계 판독가능한 저장 매체를 포함한다.
인코딩 방법은 오디오 압축 시스템에서 사운드를 나타내는 디지털화된 오디오 신호를 압축하는 방법을 제공하며, 샘플은 스케일 팩터 및 연관된 양의 곱으로서 나타난다. 본 방법은, 사운드를 나타내는 디지털 신호를 수신하는 단계; 샘플들을 적어도 하나의 오디오 프레임으로 조직화하는 단계 - 상기 프레임은 시간 구간(time interval)을 나타내는 복수의 시간적으로 순차적인 샘플들을 포함함 - ; 각각의 프레임에 대하여, 상기 복수의 시간적으로 순차적인 샘플들을 복수의 부대역(subband) 신호들로 처리하는 단계 - 각각의 부대역 신호는 각자의 부대역 주파수 범위를 나타내고 상기 부대역 주파수 범위 내의 오디오 샘플들의 시간 시퀀스를 포함함 - ; a) 스케일 팩터 필드에서 나타나는 스케일 팩터 및 b) 양 필드에서 나타나는 양 필드의 곱으로서 상기 부대역 신호들을 각각의 필터링된 오디오 샘플을 표현하는 포맷으로 변환하는 단계; 상기 부대역 신호들의 스케일 팩터 필드들을 각각의 프레임에 대응하는 적어도 하나의 타일로 2차원에서 조직화하는 단계; 각각의 상기 타일에 대하여 각자의 스케일 팩터 계수 행렬(SCM; scale factor coefficient matrix)을 생성하도록 상기 적어도 하나의 타일을 2차원 직교 변환을 이용해 처리하는 단계; 압축된 계수 행렬을 생성하도록 각각의 상기 SCM을 압축하는 단계; 및 전송을 위한 데이터 포맷으로 상기 압축된 계수 행렬을 패킹(packing)하는 단계를 포함한다.
디코딩 방법은, 인코딩된 스케일 팩터 데이터 및 인코딩된 양 데이터를 분리하도록 수신된 데이터 패킷을 언팩킹(unpacking)하는 단계; 복수의 계수 행렬을 발생시키도록 상기 인코딩된 스케일 팩터 데이터를 압축 해제하는 단계; 복수의 대응하는 스케일 팩터 부행렬(submatrix)을 획득하도록 상기 계수 행렬의 각각을 2차원 역 직교 변환(Inverse orthogonal transform)에 의해 변환하는 단계; 기지의(known) 인코더에서 사용된 타일링 패턴에 대응하는 미리 결정된 타일들의 패턴으로 상기 스케일 팩터 부행렬들을 연결함으로써(concatenate) 상기 스케일 팩터 부행렬들을 더 큰 프레임 행렬로 어셈블하는 단계; 및 압축 해제된 재양자화된 스케일 팩터 행렬을 획득하도록 상기 스케일 팩터 행렬을 재양자화하는(re-quantize) 단계를 포함한다.
기계 판독가능한 저장 매체는 인코딩된 오디오 정보를 저장하기에 적합하고, 각각의 샘플은 스케일 팩터 및 대응하는 양의 곱으로서 표현된다. 매체는 코딩된 스케일 팩터 데이터 필드 - 스케일 팩터들의 적어도 하나의 행렬이 2차원 직교 변환에 의해 스케일 팩터 계수 행렬로 인코딩됨 - ; 및 인코딩된 데이터 양들을 포함하는 양 필드를 갖는다.
본 발명에 따르면, 2차원 변환에 의한 오디오 스케일 팩터의 압축에 관련된 방법 및 기계 판독가능한 매체를 제공할 수 있다.
도 1은 본 발명에 따른 일반화된 인코더의 하이레벨 개념도이며, 기능 모듈들이 블록으로서 도시되어 있다.
도 2는 본 발명에 따른 일반화된 디코더의 개념도이다.
도 3은 부대역들로 분리되어 샘플 시간에 의해 조직화된 스케일 팩터들의 행렬에 대응하는 데이터 행렬의 그래프 표현이며, 상이한 부대역들이 주파수 축 상에서 주파수에 의해 분포되어 있고, 상이한 시간들이 직교 시간 축 상에서 샘플 시간에 의해 조직화되어 있다.
도 4는 본 발명에 따른 인코딩 방법의 단계들을 일반적인 레벨에서 도시한 하이 레벨 절차 또는 "흐름"도이다.
도 5는 스케일 팩터 계수 행렬(SCM)을 압축하는 특정 방법의 구체적인 단계들을 나타내는 절차도이며, 이 특정 방법은 도 4에서 SCM을 압축하기 위한 본 발명의 특정 실시예에서 유용하다.
도 6은 통신 채널을 통한 전송을 위하여 SCM 및 양 파라미터를 더 압축시키는 단계들을 포함하는, 도 5의 방법의 연속을 나타낸 절차도이다.
도 7은 전송 또는 기록을 위해 인코딩된 스케일 팩터 및 오디오 양 데이터를 포함하는 프레임을 패킹하는데 적합한 데이터 포맷의 예이다.
도 8은 도 1 내지 도 7의 방법에 의해 인코딩된 오디오 데이터 및 스케일 팩터를 디코딩하는 단계들을 나타내는 절차도이다.
도 9는 도 1 내지 도 7의 방법들에 의해 인코딩된 오디오 데이터 및 스케일 팩터를 디코딩하는데 유용한 보다 특정한 단계들을 나타낸 특정 실시예의 단계들을 나타내는 절차도이다.
도 10은 도 5에 도시된 인코딩 방법에 관련하여 유용한 노치 제거의 새로운 방법의 절차도이다.
도 2는 본 발명에 따른 일반화된 디코더의 개념도이다.
도 3은 부대역들로 분리되어 샘플 시간에 의해 조직화된 스케일 팩터들의 행렬에 대응하는 데이터 행렬의 그래프 표현이며, 상이한 부대역들이 주파수 축 상에서 주파수에 의해 분포되어 있고, 상이한 시간들이 직교 시간 축 상에서 샘플 시간에 의해 조직화되어 있다.
도 4는 본 발명에 따른 인코딩 방법의 단계들을 일반적인 레벨에서 도시한 하이 레벨 절차 또는 "흐름"도이다.
도 5는 스케일 팩터 계수 행렬(SCM)을 압축하는 특정 방법의 구체적인 단계들을 나타내는 절차도이며, 이 특정 방법은 도 4에서 SCM을 압축하기 위한 본 발명의 특정 실시예에서 유용하다.
도 6은 통신 채널을 통한 전송을 위하여 SCM 및 양 파라미터를 더 압축시키는 단계들을 포함하는, 도 5의 방법의 연속을 나타낸 절차도이다.
도 7은 전송 또는 기록을 위해 인코딩된 스케일 팩터 및 오디오 양 데이터를 포함하는 프레임을 패킹하는데 적합한 데이터 포맷의 예이다.
도 8은 도 1 내지 도 7의 방법에 의해 인코딩된 오디오 데이터 및 스케일 팩터를 디코딩하는 단계들을 나타내는 절차도이다.
도 9는 도 1 내지 도 7의 방법들에 의해 인코딩된 오디오 데이터 및 스케일 팩터를 디코딩하는데 유용한 보다 특정한 단계들을 나타낸 특정 실시예의 단계들을 나타내는 절차도이다.
도 10은 도 5에 도시된 인코딩 방법에 관련하여 유용한 노치 제거의 새로운 방법의 절차도이다.
본 발명은 "부대역 코덱"에 관련하여 기재될 것인데, 이는 말하자면 주파수와 시간 둘 다로 어느 정도까지 오디오 샘플들을 조직화하는 코딩/디코딩 시스템이다. 보다 구체적으로, 아래의 설명은 예로써 광대역 오디오 신호를 임계적으로 샘플링된(critically sampled) 부대역 신호들을 산출하도록 데시메이트된(decimated) 복수의 부대역 신호들로 분리시키는데 디지털 필터 뱅크를 사용하는 코덱에 관련하여 2차원 스케일 팩터 압축의 사용을 예시한다. 본 발명은 이러한 것에 한정되지 않는다. 오히려, 본 기술은 이 목적에 대하여 부대역 코덱의 특별한 경우로 간주될 수 있는 임의의 "변환 코덱"에 적절하다(구체적으로, 시간적으로 일련의 샘플들을 주파수 도메인 표현으로 조직화하는데 수학적 변환을 사용하는 것). 따라서, 아래에 기재된 기술은 이산 코사인 변환 코덱, 수정된 이산 코사인 변환 코덱, 퓨리에(Fourier) 변환 코덱, 웨이블릿(wavelet) 변환 코덱, 또는 임의의 기타 변환 코덱에 적응될 수 있다. 시간 도메인 지향 코덱의 범위에서, 본 기술은 신호를 임계적으로 샘플링된 부대역 신호들로 분리하는데 디지털 필터링을 사용하는 부대역 코덱에 적용될 수 있다(예를 들어, 미국 특허 5,974,380이나 다른 곳에 기재된 바와 같은 DTS 5.1 서라운드 사운드).
본 발명의 방법 및 장치는 인코딩 및 디코딩 양상 둘 다를 가지며, 일반적으로 전송 시스템, 즉 인코더, 전송 채널, 및 상보 디코더(complementary decoder)에서 기능할 것임을 이해하여야 한다. 전송 채널은 데이터 저장 매체를 구성하거나 포함할 수 있으며, 또는 전자, 광학, 또는 임의의 기타 전송 채널(이들 중 저장 매체가 특정 예로 간주될 수 있음)일 수 있다. 전송 채널은 개방 또는 폐쇄 네트워크, 브로드캐스트, 또는 임의의 기타 네트워크 토폴로지를 포함할 수 있다.
인코더 및 디코더는 본 명세서에서 개별적으로 설명될 것이지만, 서로 상보적이다.
도 1은 본 발명에 따른 인코딩 시스템의 상위 레벨 일반화된 도면을 도시한다. 인코더의 특정 신규한 실시예의 더 많은 세부 사항들은 도 5 및 도 6에 관련하여 아래에 주어진다.
입력 102에서 적어도 하나의 채널의 디지털 오디오 신호가 제공된다. 본 발명의 목적을 위해, 디지털 오디오 신호는, 전자 신호로 변환되고 아날로그/디지털 변환에 의해 디지털 포맷으로 변환되고 적합하게 전처리된, 유형(tangible) 물리적 현상, 구체적으로 사운드(sound)를 나타낸다고 가정한다. 통상적으로, 당해 기술 분야에 알려져 있는 바와 같이 에일리어싱(aliasing), 포화(saturation), 또는 기타 신호 처리 오류를 최소화하도록, 오디오 필터링, 디지털 필터링, 및 기타 전처리가 적용될 것이다. 오디오 신호는 PCM 코딩과 같은 종래의 선형 방법에 의해 나타날 수 있다. 입력 신호는 멀티탭, 멀티밴드, 분석 필터 뱅크(110)에 의해 필터링되며, 이는 적합하게 상보(complementary) QMF(Quadrature mirror filter)의 뱅크일 수 있다. 대안으로서 다상 필터 뱅크와 같은 PQMF(pseudo quadrature mirror filter)가 사용될 수 있다. 필터 뱅크(110)는 복수의 부대역 신호 출력(112)을 생성한다. 도면에는 몇몇의 이러한 출력만 도시되어 있지만, 많은 수, 예를 들어 32 또는 64개의 이러한 부대역 출력들이 통상적으로 채용될 것임을 이해하여야 한다. 필터링 기능의 일부로서, 필터 뱅크(110)는 바람직하게 또한 각각의 부대역에서 부대역 신호를 임계적으로 데시메이트시켜야 하며, 구체적으로 각각의 부대역에서의 신호를 완전하게 나타내기에 충분할 정도로만("임계적 샘플링(critical sampling)") 각각의 부대역 신호를 더 적은 수의 샘플/초로 데시메이트시킨다. 이러한 기술이 당해 기술 분야에 알려져 있으며, 예를 들어 Bosi, M 및 Goldberg, R.E.의 Introduction to Digital Audio Coding and Standards, (Kluwer, date unknown), 또는 Vaidyanathan의 Multirate Systems and Filter Bank, (Prentice Hall, 1993)에 설명되어 있다.
110에 의한 필터링 다음에, 복수의 부대역 신호들(112)(각 부대역에서의 순차적 샘플들을 포함함)은 모듈(114)에 의해 스케일링된 표현으로 변환된다. 다시 말하자면, 각각의 샘플은 스케일 팩터(스케일 팩터 비트로 인코딩됨) 및 양 파라미터(데이터 비트로 저장됨)를 포함하는 표현으로 변환된다. 스케일 팩터는 통상적으로 비선형으로, 예를 들어 데시벨로 양자화될 수 있으며, 그 다음 예를 들어 허프만(Huffman) 코딩에 의해 더 인코딩될 수 있다. 스케일 팩터가 먼저 선형 표현으로 디코딩된다고 하면, 샘플 값은 양 파라미터의 스케일 팩터 배와 같음을 이해하여야 한다. 하나의 일반적인 방식에서, 샘플들은 미리 지정된 비트 필드에 각각 지수와 가수를 포함하는 임시(provisional) 부동 소수점 형태로 변환될 수 있다.
대안으로서, 부동 소수점 처리가 분석 필터 뱅크(110)에 의해 채용된다고 하면, 당해 기술 분야에서의 숙련자라면 입력 신호(102)가 부동 소수점 포맷으로 제공될 수 있다는 것을 알 수 있을 것이다.
모듈(114)은 임시 표현 방식, 예를 들어 주관적 마스킹 기능(subjective masking function)과 같은 주파수의 지각 효과를 고려하는 방식에 기초하여 스케일 팩터 및 데이터 파라미터를 할당한다. 예를 들어, 비트 레이트 제약(예를 들어 "MMSE(minimum least squares error)")을 조건으로 어떠한 정확도 측정을 최적화하고자 하는 비트 할당 방식이 사용될 수 있으며, 또는 방식은 오류의 측정에 대하여 미리 결정된 제약을 조건으로 비트 레이트를 설정하고자 할 수 있다. 최초의 스케일 팩터 할당은 단지 예비적인 것이며(즉, 임시적), 방법에서 나중에 수정될 수 있다. 할당된 스케일 팩터는 데시벨 또는 기타 로그자와 같은 비선형 기반 매핑에 대응하여 할당된다. 데이터 파라미터(가수)는 선형 또는 비선형 매핑에 따라 할당될 수 있다.
스케일 팩터/양 표현으로의 변환 후에, 복수의 부대역 신호들은 인코딩 모듈(116)에 의해 더 인코딩된다. 데이터는 엔트로피의 제거에 의해 비트 요건을 감소시키도록 의도된 방법들의 탠덤(tandem) 조합들을 포함하는 임의의 다양한 방법에 의해 인코딩될 수 있다. 손실(lossy) 또는 무손실(lossless) 방법들이 사용될 수 있지만, 손실 방법은 그 방법이 인간 청력의 공지된 지각 특성 및 제한을 이용할 수 있는 정도로 가장 효율적인 것으로 예상된다. 데이터 파라미터의 인코딩은 본 발명에 부수적인 것이며, 본 발명은 주로 스케일 팩터 데이터(샘플 별로 데이터 파라미터와 연관됨)의 압축에 관련된다.
다음으로, 처리 모듈(120)에서, 각 부대역에서의 임시 스케일 팩터들이 프레임들로 그룹화되며, 보다 구체적으로 부대역 샘플들의 "프레임"은 2차원, 즉 시간 및 주파수에서의 순차적 연관(sequential association)에 기초하여 2차원에서 정의된다. 배열(arrangement)의 일련의 행렬들로의 특정 방법이 도면에 관련하여 아래에서 설명된다. 도 1에서는 4개의 "타일(tile)"에 대응하여 4개의 신호 경로가 도시되어 있지만, 다른 수의 타일들이 채용될 수 있고, 또는 일부 실시예에서 하나의 타일만 채용될 수 있다.
그 다음에, 스케일 팩터 압축 모듈(122)에서, 임시 스케일 팩터들은 바람직하게 프레임의 치수보다 더 작은 복수의 행렬들 또는 "타일들"로 그룹화되며, 상기 복수의 타일들은 적어도 프레임을 나타내기에 충분하다. 그 다음, 스케일 팩터들은 2차원 변환(124)의 사용에 의해, 바람직하게는 2차원 이산 코사인 변환(DCT; discrete cosine transform)에 의해 수정되고(아래에 보다 구체적으로 설명되는 바와 같이) 압축된다. 이 동작은 스케일 팩터들의 프레임을 나타내는 수정된 스케일 팩터 행렬을 생성한다. DCT 변환된 스케일 팩터 행렬(스케일 팩터 계수 행렬로 칭함)은 그 다음에 엔트로피를 제거하도록 (블록 126에서) 더 처리되고 인코딩된다. 세부 사항들은 아래에서 설명된다. 스케일 팩터 계수 행렬은 DCT 변환 후에 상당히 압축될 수 있는 것으로 밝혀졌다. 압축된 스케일 팩터 행렬은 그 다음에 전송을 위해 저장된다(모듈 128).
전송을 위한 데이터를 준비하기 위해, 인코더는 (디코더(129)에 의해) 압축된 스케일 팩터 행렬을 디코딩하여, 재구성된 스케일 팩터 행렬을 재구성하여야 한다(이는 오리지널 "임시" 스케일 팩터들로부터 어느 정도 달라질 수 있음). 재구성된 스케일 팩터 행렬을 사용하여, 인코더는 다음에 오리지널 부대역 샘플들을 재양자화(re-quantize)한다(재양자화 모듈(130)). 마지막으로, 압축된 스케일 팩터 행렬(또는 보다 정확하게, 이러한 행렬을 재구성하도록 디코딩가능한 상당히 압축된 코드)은 (다중화기(132)에 의해) 압축된 데이터 파라미터로써, 나중에 전송되는 일부 데이터 포맷 또는 "패킷"으로 다중화된다. 대안으로서, 본 발명에 의해 마련된 데이터 포맷은 기계 판독가능한 매체에 저장될 수 있다. 다시 말하자면, 본 발명의 목적을 위해, 데이터 저장 및 추후 검색이 "전송"의 특별한 경우로서 간주될 수 있다.
여기에서 주어진 조작 및 압축 단계들에 더하여, 인코딩의 다른 "계층"이 있을 수 있고 일반적으로 제시될 것임을 이해하여야 한다. 압축된 오디오 패킷들은 전송 매체에 의해 필요한 바에 따라 더 조작될 수 있으며, 이는 IP 프로토콜, 어드레싱 비트, 패리티 비트, CRC 비트, 또는 데이터 전송 시스템의 물리적 계층 및 네트워크를 수용하기 위한 기타 변경을 필요로 할 수 있다. 이들 양상은 본 발명의 주제는 아니지만, 관련 분야에서의 숙련자라면 이해할 것이다.
데이터 전송 시스템의 수신 단에서, 데이터 패킷은 수신기(200)에 의해 수신되고, 역다중화기(202)에 의해 역다중화된다(demultiplexed)(다시 말하자면, 데이터 필드들은 그들의 다중화된 포맷으로부터 언패킹됨). 인코딩된 스케일 팩터들은 스케일 팩터 행렬을 인코딩하는 프로세스를 역전(reverse)함으로써 스케일 팩터 디코더(204)에 의해 재구성된 스케일 팩터 행렬을 재구성하도록 디코딩된다. 이 단계들은 도 8에 관련하여 아래에 보다 상세하게 기재되어 있다. 오디오 양 파라미터는 또한 이들 양 파라미터를 인코딩하는데 어떠한 방법이 사용되었든 그에 상보적인 방법에 의해 양 필드 디코더(206)에 의해 디코딩된다. 재구성된 스케일 팩터 및 양 파라미터는 마지막으로 각각의 샘플과 연관되어 재어셈블(reassemble)된다(스케일링된 데이터를 재구성함). 마지막으로, 스케일링된 데이터는 각각의 오디오 샘플에 대하여 디코딩된 값을 나타내는 고정 소수점 또는 정수 오디오 데이터를 산출하도록 (블록 208에서) 승산에 의해 확장되거나 디코딩될 수 있다. 208의 출력은 오디오 신호를 나타내는 일련의 순차적인 데이터이다. (디지털) 출력(210)은 전압 또는 전기 전류와 같은 오디오 신호로 D/A 컨버터에 의해 변환될 수 있으며, 이 오디오 신호는 이어서 근사 복제(near-replica) 사운드를 재구성하기 위해 스피커 또는 헤드폰을 구동하는데 사용될 수 있다.
하나의 오디오 채널만 기재되었지만, 본 발명의 기술은, 2채널 스테레오 구성이든 다양한 "서라운드" 오디오 구성 중 하나에서와 같은 더 큰 수의 채널이든, 복수의 오디오 채널들을 인코딩하는데 사용될 수 있다는 것을 이해하여야 한다. 선택적으로, 다채널 실시예에서 압축을 개선하기 위해 채널간 상관관계가 디코더에 의해 이용될 수 있다.
상기에 일반적으로(그리고 아래에 구체적으로) 기재되는 인코더 및 디코더 중 하나 또는 둘 다는, 일부 데이터 전송 또는 저장 시스템과 통신하며, 충분한 랜덤 액세스 메모리 및 데이터 저장 능력과 연결되어, 적합하게 프로그래밍된 마이크로프로세서에 의해 구현될 수 있다. 예를 들어, 다양한 반도체 제조자로부터 입수가능한 ARM 11 프로세서와 같은 범용 마이크로프로세서가 채용될 수 있다. 대안으로서, ADI(Analog Devices)로부터 입수가능한 DSP 시리즈와 같은 보다 특수화된 DSP 프로세서 칩이 사용될 수 있으며, 이는 멀티뱅크 FIR 디지털 필터(부대역 필터 뱅크에 대하여) 또는 변환 동작(DCT 또는 유사)의 프로그래밍을 상당히 용이하게 한다. 유리하게는 멀티프로세서 아키텍쳐가 채용될 수 있다.
특정 신규한 방법의 보다 구체적인 설명이 다음에 기재되며, 본 발명의 주요 쟁점인 스케일 팩터를 압축하는 방법에 중점을 둔다. 상기의 일반적인 설명으로부터, 가끔 "가수" 필드로도 불리는 양 파라미터(Q)는 스케일 팩터와 일대일 연관관계로 적절하게 처리되고 압축되어야 하며, 오디오 데이터가 스케일 팩터/양 표현에서 스케일 팩터(SF) 및 양(Q) 필드의 곱에 의해 거의 근사화되어야 한다는 관계를 항상 유지한다는 것을 알 수 있을 것이다. 다음의 상세한 설명은 본 발명의 스케일 팩터의 압축에 보다 구체적으로 중점을 둔다. 다중대역을 채용한 부대역 코덱에 관련하여 설명이 주어지며, FIR 부대역 필터는 임계적으로 샘플링된 부대역 신호들을 산출하도록 시간 도메인 샘플링된 신호에 대해 동작한다. 본 기술은 약간의 수정으로써 변환 코덱에 사용하기 위해 적응될 수 있으며, 이는 당해 기술 분야에서의 숙련자에게 명백할 것이다.
도 3에 도시된 바와 같이 2차원 데이터 구조 또는 행렬의 가상화(visualization)에 의해 본 방법의 부가의 설명이 크게 용이해진다. 그리드(240)는 스케일 팩터의 N x M 치수의 행렬을 나타내며, N은 나타낸 부대역들의 수이고, M은 오디오 데이터의 프레임과 같은 기간에 걸쳐 고려되는 각 부대역에서의 시간적으로 순차적인(temporally sequential) 샘플들의 수이다. 정확한 치수(N 및 M)는 임계적이지 않으며, 주어진 특정 값은 단지 설명을 용이하게 하기 위한 것이다. 단지 예를 들어, 1024 연속 PCM으로 나타낸 샘플과 동일한 N*M의 시간적인 시퀀스를 포함한 오디오 "프레임"을 고려하자. 부대역 필터 뱅크를 통하여 이러한 시퀀스를 통과시킴으로써, 이는 N 부대역들로 분해될 수 있다. 통상의 코덱에서, N은 32인 것으로 적합하게 선택될 수 있다. 그 다음에, 각각의 부대역은 통상적으로 정보의 손실 없이 32배만큼 데시메이트될 것이다("임계적 샘플링")(부가의 설명을 위해서는 상기 인용한 Bosi 참조). 이 특정 예시적인 경우에, 각각의 부대역은 (단일 오디오 프레임에 대하여) 32 개의 순차적인 샘플들과 같은 32로 나뉜 1024를 산출할 것이다. "프레임"의 이러한 배열은 샘플들의 32 x 32 행렬로 유용하게 나타날 것이다. 본 발명의 목적을 위해서는, 각각의 샘플의 스케일 팩터 성분을 고려하는 것만 필요할 뿐이다. 따라서, 스케일 팩터 "프레임"은 스케일 팩터의 N X M 행렬로 나타난다. 보다 일반적인 경우에, 시간적 및 스펙트럼 정보가 완전하게 포함되는 한, 부대역들 전부가 동일한 주파수 범위를 가져야 하는 것은 아니며, 각각의 임계적으로 샘플링된 부대역에서의 시간 분해능(time resolution)이 같아야 할 필요도 없다. 따라서, 도 3은 46개의(동일하지 않은) 부대역들을 갖는 프레임을 도시하며, 대부분의 부대역은 128개의 시간적으로 순차적인 샘플들을 갖는다. 낮은 주파수 부대역(244)들은 프레임당 16개의 시간적으로 순차적인 샘플들만 갖도록 필터링되고 데시메이트된다(프레임당 128개의 샘플들을 갖는 대역(246)들에 비해 더 좁은 대역폭을 가짐).
도 3은 2차원 행렬 형태로 N x M 오디오 스케일 팩터의 프레임을 완전하게 나타낸다는 것이 쉽게 그려져야 한다. 본 발명의 바람직한 실시예에서, 행렬(240)은 복수의 "타일들"(250a, 250b 등)로 분할된다. "타일들"은 행렬(240)을 완전하게 구성하도록 2차원에서(시간 및 주파수) 연결될 수 있는(concatenated) 더 작은 치수의 행렬들이다. 보다 구체적으로, 본원 목적을 위한 "타일"은 치수 J x K의 행렬이며, J 및 K는 각각 N 및 M보다 작거나 그와 같고, 각각의 J x K 타일들은 행렬(240)로부터 주파수, 시간 순서를 유지하는 스케일 팩터의 순차적인 범위로 구성된다. 다시 말하자면, 타일들은 행렬을 분할함으로써 행렬(240)로부터 획득되고, 행렬(240)은 이어서 2차원의 미리 결정된 패턴으로 부행렬들(타일들)을 연결함으로써 구성될 수 있다. 분할 및 부행렬들의 설명을 위해서는, The Penguin Dictionary of Mathematics, John Daintith 및 R.D.Nelson, Eds.(1989)를 참조한다.
오디오 프레임 행렬에 걸쳐있는 단일 타일이 본 발명에 따라 압축될 수 있지만, 본 발명의 방법의 특정 신규한 실시예에서 더 큰 행렬(240)의 복수의 더 작은 타일들로의 해체(deconstruction)가 바람직하다. 따라서, 본 발명의 일부 변형에서, 오디오 프레임 행렬(240)은 부행렬들의 분할에 의해 분해된다. 도 3에 도시된 예에서, 다양한 치수의 타일들이 사용된다. 구체적으로, 예에서 가장 낮은 16개의 부대역들은 16 x 4 타일들(주파수, 시간)로 나타난다. 증가하는 주파수에서의 다음 2개 부대역들은 3 x 16으로서 분할되고, 더 높은 주파수 부대역들은 8 x 16 부행렬들로 분할된다. 나타낸 치수들은 고충실도(high fidelity) 음악 신호로 매체에 대한 일반적인 범위의 오디오 대역폭을 갖는 오디오 신호를 나타내기에 유용한 것으로 밝혀졌다(최대 대략 20 Khz 대역폭). 다른 타일링 패턴들이 채용될 수 있다.
도 4는 본 발명에 따른 인코더의 보다 구체적인 실시예의 더 많은 세부 사항들을 제시하는 블록도이다. 노드(302)에서 일련의 디지털 오디오 샘플들이 입력으로서 수신된다. 순서화된 PCM 오디오 샘플들의 시퀀스가 적절하다. 통상의 데이터 레이트는 32 Khz 내지 48 Khz 샘플링 레이트 범위에 있는 것으로 생각해볼 수 있다(8 Kb/s 내지 320 Kb/s의 비트 레이트). 더 높은 레이트도 또한 실현가능할 것이지만, 이러한 상대적으로 낮은 비트 레이트에서 본 발명은 가장 주목되는 이점을 제공하는데, 낮은 비트 레이트에서 스케일 팩터는 총 데이터의 상당 부분을 포함하기 때문이다.
단계 303에서, 도 10에 관련하여 아래에 설명될 바와 같이, 선택적 "노치 제거(Notch Removal)"가 본 발명의 어떤 구체적으로 신규한 변형예에 포함된다. 이 단계는 바람직하게 스케일 팩터 프레임 행렬을 스무딩(smooth)하고 후속 단계에서 보다 효율적인 압축을 위해 준비시키도록 포함된다. 다음의 방법 단계 304는 스케일 팩터들을 복수의 타일들로 분해하는 것이며, 상기 타일들은 전체 주파수/시간 오디오 프레임의 치수보다 더 낮은 치수의 행렬들이며, 상기 타일들은 전체 2차원 오디오 프레임을 순서화된 연결에 의해 재구성하기에 충분하고 완전하다. 수많은 다양한 타일링 패턴들이 사용될 수 있다는 것이 명백할 것이다. 도 3에 도시된 예는 단지 하나의 예이며, 본 발명의 범위를 한정하고자 하는 것이 아니다.
다음으로, 단계 306에서, 각각의 타일에 대하여 본 발명은 직교 함수 변환에 의해 그리고 가장 바람직하게는 2차원 이산 코사인 변환(이하 단순하게 "DCT")에 의해 스케일 팩터들을 처리한다. 예를 들어, Rao 및 Hwang의 Techniques and Standards for Image , Video and Audio Coding, pg.66(Prentice Hall, 1996)에서 주어진 2차원 DCT의 어느 것이든 사용될 수 있다(참조 문헌에서 주어진 것과는 완전히 상이한 맥락으로). 본 발명으로부터 벗어나지 않고서 DCT의 상이한 정규화(normalization)가 대신할 수 있다. 각각의 타일에 대한 결과는 여기에서는 스케일 팩터 계수 행렬(이하, "SCM(scalefactor coefficient matrix)")이라고 불리는 J x K 행렬이다. 이 단계는, 비 선형 양자화 방식을 나타내는, 스케일 팩터 인덱스에 대해 변환이 작용하는 이미지 압축에서의 DCT의 사용과는 완전히 다르다는 것을 유의하자. 스케일 팩터들은 휘도나 채도와 같은 이미지 양과 유사하지 않으며, 샘플링된 진폭에 직접적으로 대응하지도 않는다.
본 설명은 채용될 주파수 또는 행렬 변환으로서 "DCT"를 반복적으로 인용하지만, 웨이블릿, 이산 퓨리에 변환, Karhunen-Loeve 변환, 또는 기타 변환과 같이 동등하게 대체될 수 있는 다른 직교 변환들이 알려져 있다는 것을 유의하여야 한다.
각각의 타일로부터의 SCM은 통상적으로 (스케일 팩터 행렬에 비교하여) 보다 쉽게 압축될 수 있는 형태로 일어난다.
다음으로, 단계 308에서 SCM이 압축된다. 본 발명의 가장 일반화된 양상에 따르면, 프레임에서 타일들과 연관된 SCM들은, 음향심리학적(psychoacoustic) 오디오 압축에 대하여 받아들일 수 있는 허용오차 내의 오류를 가지고 스케일 팩터들을 재계산하는 결정론적 방법을 유지하면서 전송을 위한 비트 요건을 감소시키는 임의의 방법에 의해 압축될 수 있다. 보다 구체적으로, 특정 신규한 실시예에서, 본 발명은 엔트로피 감소 인코딩 방법에 의해 SCM을 압축하는 단계를 포함한다. 보다 더 구체적으로, 하나의 특정 신규한 실시예에서, 본 발명은 적어도 여러 단계에 의해, 즉 a) 재양자화 행렬에 따름으로써 SCM을 재양자화하고, b) 차동 코딩(differential coding) 방법에 의해 적어도 DC 계수들을 압축하고, c) 차동 코딩, 벡터 코딩, 또는 허프만 코딩의 임의의 조합과 같이, 리던던시(redundancy)를 감소시키는 코딩 방법에 의해 DC 계수가 아닌 다른 계수를 인코딩함으로써, SCM을 압축하는 것을 포함한다. 인코딩된 스케일 팩터 계수는 그 다음에 전송을 위해 패킹된다(다시 말하자면, 다중화됨)(단계 310).
SCM을 압축하는 보다 더 구체적이고 특정한 방법이 도 5의 흐름도에 나타나 있다. 이 도면은 SCM 압축 단계(308, 도 4)의 특정한 신규 사례를 도시한다. 이 특정 방법은 적합한 것으로 밝혀졌으며, 스케일 팩터를 전송하기 위한 비트 요건을 감소시키도록 차동 코딩, 벡터 코딩, 및 허브만 코딩의 조합을 채용한다. 스케일 팩터의 압축에 집중하면, 압축될 데이터는 스케일 팩터의 DCT 변환 계수를 나타내고, 상기 스케일 팩터는 비선형 매핑에 의해 승수(또는 지수) 세트를 나타내며, 각각의 승수는 오디오 양 필드(가수)와 일대일 대응으로 연관된다. 예를 들어, 하나의 실시예에서, 스케일 팩터는, 로그 베이스 10 매핑에 의해 암시적으로 진폭과 관련되는, 데시벨로 표시되는 베이스 레벨을 나타내는 짧은 바이트로 구성될 수 있다. 스케일 팩터는 단순한 진폭이나 선형 양이 아니기 때문에, 선형 PCM 데이터나 심지어 종래의 이미지 데이터를 압축하는 종래의 방법은 비선형 스케일 팩터 데이터로써는 유리하게 기능할 것으로 예상되지 않을 것이다. 인코딩된 스케일 팩터 데이터는 오디오의 진폭 또는 종래의 이미지 양과 유사하지 않으므로, 당해 기술 분야에서의 숙련자라면 유사하지 않은 양을 압축하는데 유사한 기술을 사용할 것으로 예상하지 않을 것이다.
부가의 인코딩 전에, 어떤 DCT 계수는 다른 것보다는 더 임계적임을 인식하여, 모든 타일들로부터의 SCM들은 바람직하게 재양자화된다(단계 502). 하나의 유리한 실시예에서, 계수는 다음 식 1에 예시된 바와 같이 3 x 16의 재양자화 행렬 M에 따라 양자화된다:
(식 1)
행렬 M은 바람직한 실시예에서 3 x 16 타일에 대하여 사용되는 재양자화 스텝 크기(step size)를 나타낸다. 행렬 M에서의 엔트리들은 SCM들의 대응하는 위치에서 사용된 스텝 크기를 제공한다. 예를 들어, 재양자화 전에, 스케일 팩터들은 (예시화된 실시예에서) 데시벨로 표현된다(베이스 10 로그자). DCT 계수도 또한 직접 데시벨에 대응하여 관련될 것이다. 종래대로 표기 (열, 행)에 의해 엔트리들을 지정하면, 스텝크기 행렬 M에 따라, 3 x 16 타일에서의 DC 성분 (1,1 엔트리)는 2 데시벨 스텝 재양자화될 것이다. 엔트리(1,2) 내지 (1,8)에 대해서는 3 데시벨 스텝들이 사용될 것이며, 재양자화 행렬 M에서 0에 대응하는 스케일 팩터 엔트리들을 제외한 다른 엔트리들은 0으로 재양자화될 수 있는데, 스케일 팩터 행렬의 재구성에 거의 영향을 미치지 않기 때문이다. 재양자화 단계는 SCM에서의 각각의 계수를 대응하는 스텝 크기로 나눈 다음 가장 가까운 정수로 라운딩함으로써 달성될 수 있다. 당해 기술 분야에서의 숙련자라면 알 수 있듯이, 0으로의 나눗셈을 피하도록 주의하여야 한다.
다시 도 5를 참조하면, 스텝 크기 행렬 M에 따른 재양자화 후에, 도 5의 특정 방법은 다음으로 SCM들을 두 갈래의 절차에 의해 인코딩하는데, DC 성분(각각의 타일로부터의 계수 행렬의 요소 1,1의 세트)이 특히 중요하고, 따라서 브랜치 504에서 개별적으로 처리된다.
먼저 DC 계수를 고려하면, 브랜치 504에서, DC 계수 행렬 엔트리(DCT 변환의 각각의 방향의 최소 주파수에 대응함)가 각각의 재양자화된 SCM으로부터 취해지고, 타일들의 수와 그들 순서에 따라 치수를 갖는 행렬로 적합하게 배열된다(단계 506). 특정 실시예에서 타일링 패턴이 부행렬들의 직사각형 어레이가 되지 않는 경우, 초과된 타일들은 개별적으로 취급된다. 예를 들어, 도 3에 도시된 데이터 구조에서, 하단의 4개 타일들(프레임 전반의 시간에서 가장 낮은 주파수 범위에 대응함)은 개별 값으로서 개별적으로 코딩될 것이다. 개별적으로 취급되지 않은 타일들은 상이하게 코딩될 수 있으며 바람직하게는 상이하게 코딩되어야 한다. 바람직한 실시예에서, 단계 508에서, 디코더에의 전송을 위해 2개 플래그가 계산되어 저장되는데, 제1 플래그는 차이(difference) 값들이 수평으로 인접한 타일들의 DC 성분에 대하여 코딩되는지 여부를 나타내고(시간 차이 코딩), 제2 플래그는 차이 값들이 수직으로 인접한 타일들에 걸친 DC 성분에 대하여 코딩되는지 여부를 나타낸다(주파수 차이 코딩). 차이 코딩이 사용된다면, 인접한 타일들의 DC 성분들 간의 차이가 각각의 타일 경계에 대하여 계산된다. 예를 들어, 도 3의 구조에서, 하단의 4개 타일들을 분리한 후에, 나머지 타일들은 5 x 8 패턴으로 그룹화될 수 있다. DCT에 의한 변환 후에, 각각의 DCT로부터의 DC 성분이 추출되어 5 x 8 행렬에 저장된다. 5 x 8 행렬의 요소들은 그 다음에 차이 코딩에 의해 코딩되는데, 이러한 코딩이 압축에 상당히 도움이 될 경우에 그러하다. 제1 행(주파수 차이 코딩의 경우) 또는 열(시간 차이의 경우)에서의 요소에 대하여, 계수의 절대값이 코딩된다(나머지 행렬에 걸친 차이 코딩에 대한 기반으로서). 선택적으로, 시간 및 주파수 방향 둘 다의 차이 코딩이 채용될 수 있다. 예를 들어, 동일한 행에서의 엔트리들 간의 차이가 먼저 코딩되고, 그 다음에 동일한 열에서의 상이한 행들 간의 차이가 코딩된다. 일반적으로, 코딩 방법은 데이터의 리던던시를 감소시키도록 신호 특성에 따라 선택되어야 한다. 차이 코딩의 여러 가지 적합한 방법이 알려져 있으며, 차이 코딩 분야로부터 적응될 수 있다. 다음으로 DC 성분이 아닌 다른 재양자화된 SCM 엔트리들을 고려하면, 브랜치 520에서 다른 압축 또는 인코딩 방법이 적용된다. 방법은 먼저 단일 타일을 코딩하는데 적용되는 것으로서 기재된다. 본 발명자는, 여기에 기재된 방법에 의해 코딩된 통상의 오디오 데이터에서, 코딩될 대부분의 SCM 계수들이 -1 내지 +1 구간의 값을 가질 것임을 관찰하였다. 보다 구체적으로, 대부분의 계수들은 0, +1, 또는 -1(정수)의 값 중 하나와 같을 것이다. 본 방법은 그에 따라 결정 박스 522에 의해 나타낸 바와 같이 유리하게 두 갈래로 나뉠 수 있다. 구간 -1 내지 +1 외의 모든 계수 값들은 브랜치 524에서 개별적으로 취급된다. 브랜치 524에서, 구간 -1 내지 +1 외의 "범위 외(stary)" 값들은 벡터 형태 (a,b)로 코딩되며(단계 526), 여기에서 a는 (허프만 코딩된) 오프셋이고 b는 (허프만 코딩된) 값이다. 허프만 코딩 대신에 다른 코딩 방법이 사용될 수 있고, 이러한 세부 사항은 비트 사용을 감소시키도록 이 예에서 유리하게 사용될 수 있는 적합한 가변 길이 모드의 예로서 주어진 것이다. 오프셋에 의해, 구체적으로 이전에 전송된 "범위 외" 값(구간 -1 내지 +1 외)으로부터의 스캐닝 패턴에서 위치 오프셋을 나타내도록, 행렬에서의 위치 오프셋을 지정하는 임의의 시스템을 사용하는 것을 이해하여야 한다. "범위 외" 값들의 총 수는 일반적으로 작으며, SCM에 대한 대부분의 정보는 병렬 압축 경로 2에 의해 보다 효율적으로 압축된다.
병렬 브랜치 528에서, 방법은 전부 범위 -1 내지 +1로 국한된 나머지 그리고 보다 우세한 값들을 압축한다. 이들 값들은 "지그재그" 스캐닝 또는 유사한 스캐닝 패턴과 같은 스캐닝 패턴으로 재배열되며(단계 530), 이는 계수의 편의상 배열된 스트링 또는 (다르게 말하자면) 벡터를 생성하도록 행렬을 푸는데(unwind) 효과적이다. 이에 관련하여, "편의상"은, 벡터에서 인접한 위치에서의 인접한 행렬 엔트리들을 가장 가능성있는 범위로 배치하고, 압축이 용이해지도록 가장 유사하거나 가장 임계적인 값들을 함께 그룹화하려고 하는 배치(ordering)를 의미한다. 가장 익숙한 지그재그 스캐닝 패턴은 통상적으로 1,1 성분인 상단 왼쪽에서 시작한 다음, 대각선의 끝으로 넘어가지 않고 점차적으로 대각선 스캐닝함으로써 행렬을 풀도록 진행한다(각각의 대각선의 끝에서 방향을 반전함). 부가적인 설명을 위해서는 Rao(상기 인용함)를 참조한다. 예를 들어, 정렬된 위치들의 저장된 테이블에 기초하여, 다른 방법들이 채용될 수 있다.
일반적으로 말하면, 단계 532에서 방법은 그 다음에 리던던시를 감소시키고자 하는 임의의 방법에 의해 계수들의 스트링(단계 528로부터, 나머지 계수 값들)을 압축하도록 진행한다. DCT의 특성 뿐만 아니라 스텝 크기의 선택은 각각의 SCM에서 유효한 행렬 엔트리들의 수를 감소시키는 경향이 있다. 실시에서, 타일당 약 20 계수들의 스트링이 전송에 적절하다는 것이 밝혀졌다(SCM의 상단 왼쪽 섹터에 그룹화됨). 이들 계수를 엔트로피 감소 코드로 나타냄으로써 비트 요건이 감소될 수 있다. 다수의 기술들이 단독으로 또는 조합하여 채용될 수 있는데, 허프만 코딩, 실행 길이 엔트로피 코딩, 벡터 코딩, 산술 코딩, 또는 기타 공지된 기술이 채용될 수 있고, 측정된 신호 통계치에 기초하여 최적화될 수 있다. 특정 및 신규한 솔루션이 예로써 아래에 기재된다.
하나의 특정 코딩 솔루션에서, 선택된 계수들의 스트링은 그 다음에 4개 요소(벡터)의 그룹으로 그룹화된다(단계 532). 4 그룹으로의 그룹화는 나중에 채용되는 허프만 코딩 프로세스를 보다 효율적이게 한다. 4개 요소를 이용해, 16개의 가능한 코드가 있을 것이다(부호가 배제된다면). +/-1 값에 대하여, 부호는 개별 비트로서 저장될 수 있다. 다음으로, 단계 534에서 방법은 각각의 벡터의 4 계수들(c1,c2,c3,c4)에 기초하여 고유 코드를 산술적으로 계산한다. 예를 들어, 하나의 실시예에서, 코드는 c1의 절대값에 c2의 절대값의 2배를 더하고 c3의 절대값의 4배를 더하고 c4의 절대값의 8배를 더한 값이 되도록 계산된다. 이러한 산술 코드를 계산하는 기타 방법이 공지되어 있으며, 각각의 벡터의 전송을 위해 필요한 비트의 수를 감소시키는 임의의 코딩 방식이 채용될 수 있다. 마지막으로, 단계 534로부터의 계산된 코드는 심볼로서 취급되고, 각각은 단계 536에서 상이한 심볼들의 동등하지 않은 발생 확률을 이용함으로써 비트 요건을 감소시키는 허프만 코드와 같은 가변 길이 코드에 의해 더 인코딩된다.
상기 서술한 단계 502 내지 536은 복수의 타일들에서 각각의 타일에 대하여 수행되며, 상기 복수는 오디오 프레임을 통하여 스케일 팩터들을 완전하게 지정하도록 도 3에 도시된 바와 같이 시간/주파수 행렬로의 배열이 가능하다. 따라서, 도 5의 단계는 모든 오디오 프레임에서 각각의 타일에 대하여 반복되어야 한다. 선택적으로, 일부 실시예에서, 단계 502 내지 536의 방법에 의해 그룹에서의 하나의 타일을 코딩한 다음, 다른 타일들을 차등하게 인코딩하는 것이 바람직하다. 다르게 말하자면, 제1 타일의 계수들이 먼저 인코딩되고, 그 다음, 인접한 타일들의 계수들이, 계수 행렬에서의 각각의 요소에 대하여, 이전의(또는 주파수 인접한) 타일에서의 대응하는 엔트리로부터의 변경을 나타냄으로써 나타난다. 시간에 걸친 또는 주파수에 걸친 차이가 사용될 수 있다. 각각의 프레임에 대하여 시간 차이 코딩이 채용되는지, 주파수 차이 코딩이 채용되는지, 아니면 직접적인(straightforward) 값 코딩이 채용되는지 지정하는 플래그 또는 플래그들이 전송되어야 한다.
이제 도 5의 종단점으로서 도시된 방법 노드 600으로부터 시작하는 도 6을 참조한다. 스케일 팩터들을 압축한 후에, 재구성된 스케일 팩터들의 세트를 획득하기 위해, 압축된 스케일 팩터 데이터에 기초하여 단계 602에서 인코더에서 스케일 팩터들을 재구성하는 것이 가장 바람직하다. 이는 본 발명의 디코더 양상에 관련하여 아래에 기재된 디코딩 프로세스의 단계들을 적용함으로써 동등하게 또는 상기 서술한 바와 같은 스케일 팩터들을 인코딩하는 단계들을 역전함으로써 행해진다. 재구성된 스케일 팩터들은 바람직하게는 샘플 별로 오리지널 표현된 오디오 데이터와 가장 근접하게 일치하도록 요구되는 대로 스케일 팩터/양 포맷의 각각의 샘플을 재계산함으로써 샘플들을 재정규화(renormalize)하는데 사용되어야 한다(단계 604). 재구성된 스케일 팩터들은 일반적으로 상기 도 1의 모듈 114에 할당된 임시 스케일 팩터들과는 상이할 것이다. 임의의 개별 샘플에 대하여, 오리지널 임시 양자화된 데이터가 SF*Q= 샘플 값으로 나타나는 경우, 최종 데이터(Q')는 값/RSF로서 재계산되어야 하며, RSF는 특정 샘플에 대하여 재구성된 스케일 팩터다. 바람직하게는, 최종 오디오 데이터(Q')의 세트는 그 다음에 전송을 위해 압축되어야 한다(단계 606).
마지막으로, 압축된 스케일 팩터들과 압축된 최종 오디오 데이터는 전송을 위한 데이터 포맷으로 패킹되어야 한다(단계 610). 보다 구체적으로, 상기 기재한 예시적인 실시예에서, 최종 오디오, 데이터, 압축된 DC 성분, "범위 외" 계수 데이터, 및 압축된 계수 데이터를 어떠한 방법에 의해 함께 다중화하는 것이 필요하다. 오디오 프레임에 대응하는 모든 각자의 데이터를 일반적으로 정렬된 포맷으로 함께 패킹하는 것이 가장 바람직하며, 상기 프레임은 오디오 신호의 소정의 미리 결정된 시간 구간으로부터의 오디오 이벤트를 정의한다. 하나의 적합한 포맷이 도 7에 도시되어 있다. 예시적인 데이터 포맷은 바람직하게는 미리 결정된 크기의 일련의 오디오 프레임들을 포함하지만, 방법의 적응에 따라 가변 크기가 사용될 수 있다. 단일 프레임이 도 7에서 일반적으로 701로서 도시되어 있다. 바람직하게, 프레임은 헤더 정보(702)로 시작하며, 이는 포맷, 코딩 옵션, 플래그, 권리 관리, 및 기타 오버헤드에 대한 일반적인 정보를 포함할 수 있다. 다음으로, 필드 704에서, 스케일 팩터 데이터가 적합하게 다음 순서대로 패킹되는데, 먼저 타일들의 DC 계수들이 필드 704a에서 미리 결정된 순서대로 패킹된다. 다음으로, 범위 외의(+1 내지 -1 범위 외의 "OOR") 비(non)-DC 계수들(AC 계수들)의 패킹된 값들이 704b에서, 더 큰 타일링 순서 내에서, 각각의 타일에 대하여 미리 결정된 순서대로 패킹된다. 그 다음에, 필드 704c에서, 낮은 주파수 타일들의 "범위 내" 인코딩된 계수들이, 더 큰 타일링 순서 내에서, 각각의 타일에 대하여 미리 결정된 순서대로 배열된다. 다음의 필드(704d)는 낮은 주파수 타일들에 대응하는 코딩된 오디오 양 데이터를 포함한다. 704d에 이어서, 더 높은 주파수 타일들에 따른 나머지 계수들(범위 +1 내지 -1 내)가 704e에서 패킹된다. 704e 후에, 더 높은 주파수 타일들로부터의 패킹된 인코딩된 오디오 샘플 데이터가 704f에서 패킹된다. 통상의 적용에서, 이러한 순서화는 데이터의 단순한 시간-도메인 다중화에 의해 달성될 수 있으며, 보다 음향 심리학적으로 중요한 요소들이 비트스트림에서 먼저 나타난다는 이점을 갖는다. 따라서, 대역폭 또는 프로세서 시간이 불충분한 경우, 덜 중요한 높은 주파수 스케일 팩터들과 샘플 데이터는 간단히 드롭될 수 있고, 신호가 여전히 디코딩될 수 있다(재생된 오디오에서 감소된 주파수 범위를 가짐). 특정 통신 채널의 필요에 의해 나타나는 바와 같이, 대안으로서 다른 패킹 방식 및 기타 다중화 방법이 채용될 수 있다.
압축된 오디오가 전송되고(또는 저장되고) 수신된(검색된) 후에, 인코더에 의해 채용된 것과 상보적인 프로세스에 의해 디코딩될 수 있다. 본질적으로, 디코딩 방법은 스케일 팩터들을 복구하기 위해 인코딩 방법의 단계들을 역전한다. 도 8은 본 발명에 따른 디코더 장치의 블록도를 도시한다. 802에서 수신된 비트스트림으로부터의 입력은 역다중화기(804)에 의해 역다중화되며, 역다중화기(804)는 수신된 데이터 포맷을 경로 806에서의 인코딩된 스케일 팩터 데이터와 복수의 부대역 브랜치(808a-e)에서의 샘플 데이터로 분리한다. 이러한 브랜치들의 실제 수는 소정의 실시예에서 특정 인코딩 실시예에 사용된 타일 패턴에 따라 좌우되며, 이는 디코더에 맞추어져야 하거나 아니면 디코더에 타일링 패턴을 알리도록 정보가 앞으로 전송되어야 한다. 인코딩된 오디오 데이터는 단계 810에서 (단계 606으로부터의) 양 코딩을 역전함으로써 디코딩되고, 인코더에서 적용된 양자화 방식에 따라 각각의 부대역에서 역양자화된다(812).
인코딩된 스케일 팩터 계수들은 스케일 팩터 계수 행렬들을 산출하도록 도 5에서 앞서 수행된 코딩을 역전함으로써 압축 해제된다(단계 820). 이들 행렬은 다음으로 단계 822a-e에서 인코딩하는데 사용된 것과 상보적인 역 직교 변환에 의해, 가장 적합하게는 인코딩동안 적용되는 타일들 각각의 직사각형 치수에 일치하는 역 이산 코사인 변환(Inverse Discrete Cosine Transform)에 의해 변환된다. 각각의 스케일 팩터를 그의 대응하는 오디오 데이터(가수)와 연관시키기 위해, 복구된 스케일 팩터들을 (단계 824에서) 대역폭 및 연속적이고 완전한 시간 프레임 둘 다에 걸쳐있는 더 큰 행렬을 형성하도록 복수의 타일들을 연결함으로써 2차원 데이터 프레임으로 그룹화하는 것이 편리하다. 다시 말하자면, 스케일 팩터들은 상기 도 3에 도시된 프레임에 일반적으로 대응하는 데이터 구조에 저장된다. 연관된 오디오 데이터는 동일 또는 병렬 구조로 그룹화된다.
스케일 팩터들이 복구된 후에, 이는 다음과 같이 오리지널 소스 오디오 샘플들의 근사 복제(near-replica)를 복구하는데 사용되는데, 복수의 부대역들 각각에 있어서, 로그 양(데시벨)에 대응하는 스케일 팩터들은 그 다음에 선형 스케일 팩터들을 획득하도록 지수화된다(exponentiated). 그 다음, 각각의 샘플에 대한 선형 스케일 팩터를, 동일 샘플에 대응하는 오디오 데이터(Q, 또는 다르게 말하자면 가수)와 곱함으로써("고정 변환된" 단계 814) 오디오 샘플들이 재구성된다. 그 결과의 부대역 신호들은 여전히 도 3과 전반적으로 유사한 형태의 프레임 구조에 대응한다.
오디오 샘플들의 광대역 시퀀스 형태의 오디오를 복구하기 위해, 오디오 샘플들의 시간-주파수 행렬을 광대역 오디오의 시퀀스로 반대로 처리하는 것이 더 요구된다. 일련의 광대역 시간 순차적인 샘플들을 재구성하는데 채용되는 방법은 특정 실시예에 따라 좌우될 것이다. 먼저 (QMF 또는 다상 필터와 같은) 시간-도메인 디지털 필터를 채용하는 실시예를 고려한다. 이러한 실시예에서, 각각의 부대역에서의 부대역 샘플들은 시간 시퀀스에 따라 가장 오래된 것으로부터 가장 최근으로 행렬에서 이동되며, 병렬 경로(830)에서 부대역들이 합성 필터 단계(832)로 이동된다. 합성 필터 단계(832)에서, 임계적으로 샘플링된 오디오 부대역 샘플들은 업샘플링되고(upsampled), 그 다음 인코더에서 사용되는 것에 맞는 일련의 병렬 합성 필터를 통해 필터링된다. 병렬 부대역 신호들은 또한 단계 832에서 혼합되어 출력 840에서 오디오 샘플들의 광대역 시퀀스를 재구성한다. 출력 시퀀스는 소스 오디오의 근사 복제일 것이다(도 1에의 입력).
변환 기술을 사용하는 실시예에서는 방법이 앞의 문단에서 기재된 것과는 상이할 것이다. 합성 필터링 대신에, 방법은 다음 단계들을 따르는데, 먼저 프레임 SF 행렬의 각 열의 역변환(주파수 빈들(bins)의 세트)에 이어서, 오디오 샘플들의 순차적인 시간-도메인 시리즈를 획득하도록 역 윈도잉(inverse windowing)이 이어진다. 변환 기반의 실시예의 세부 사항들은 당해 기술 분야에서의 숙련자에 의해 용이하게 실현될 수 있다. 보다 많은 정보에 대해서는, Vaidyanathan 또는 Bosi(둘 다 상기 인용함)와 같은 작업을 참고할 수 있다.
840에서 디코딩된 오디오 신호는 저장되거나 수신기에 의해 더 처리될 수 있다. 언젠가는 디코딩된 오디오 데이터가 D/A 컨버터에 의해 아날로그 전자 신호로 변환되고 증폭되며 청취자에 대하여 사운드를 재생하는데 사용될 것임을 이해하여야 한다. 이들 기능들은 일반적으로 스피커 모듈(842)에 의해 함께 그룹화되어 나타나게 된다. 따라서 본 발명의 장치 및 방법은 중간에(전송 및 저장이 가능한, 전자 데이터 신호를 재생함으로써) 그리고 최종적으로(사운드를 트랜스듀서에 의해 방출시키거나, 이전에 기록되거나 전송된 사운드의 복제를 일으킴으로써) 둘 다 유형 물리적 효과를 재생한다.
도 9는 디코더의 보다 구체적이고 신규한 실시예의 단계들을 보다 구체적으로 도시한다. 이들 단계들은 특정 예의 디코더의 구성을 가능하게 하도록 구체화되며, 이 예시적인 코더는 도 1 내지 도 7에서 상기 설명한 예시적인 인코더와 상보적인 것이다. 보다 구체화된 세부 사항들은 주로 스케일 팩터들을 인코딩하는 특정 방법에 관련되며, 이러한 이유로 가수에 관련된 데이터 경로들이 도시되지 않지만 본 발명에 존재하는 것으로 이해하여야 한다.
여기에 기재된 단계들은 상기에 보다 일반적으로 기재한 모듈(820, 822a-e, 824, 및 826)의 특정 구체화된 세부 사항들이다. 이 특정 실시예는 디코더에 대한 비트 요건의 대략 30% 감소를 달성하도록 상대적으로 낮은 비트 레이트에서 효과적인 것으로 밝혀진다.
블록 902에서, 디코더는 언팽킹된 데이터(도 8의 단계 804에서 이전에 역다중화됨)를 수신하고, 전송된 데이터를 대응하는 타일들로 분리한다. 전송된 플래그의 설정에 기초하여, 디코더는 차동 코딩이 사용되었는지 여부를 결정할 것이다. 이러한 결정은 아래에서 타일들을 디코딩하는 방법에 영향을 미칠 것이다.
다음으로, 디코더는 계수 데이터를 디코딩하도록 진행된다. "범위 외"(역다중화 단계 804에서 인식됨)는 경로 904를 따른 방법에 의해 디코딩되고, "범위 내(In-range)" 계수들은 경로 906을 통하여 디코딩된다.
경로 904에서의 범위 외 값들에 대하여, 먼저 허프만(또는 기타 엔트로피 감소 코드)이 역전되어(단계 908) (위치, 값)으로서 범위 외 값을 나타내는 벡터를 산출한다.
경로 906에서의 "범위 내" 값들에 대하여, 방법은 허프만 코드를 디코딩하여 산술 코드들의 세트를 산출한다(단계 910). 산술 코드들은 각각 고유의 4개 벡터에 대응한다. 그 다음, 산술 코드들은 4개 벡터를 인코딩하는데 사용된 것과 상보적인 방법에 의해 디코딩되며(단계 912에서), 일련의 4 벡터를 산출한다. 그 다음 벡터들이 연결되어 스트링을 형성하고(단계 914), 범위 외 값들이 삽입된다(단계 916). 이어서, 스트링을 형성하도록 인코더에서 사용된 것에 대응하는 (지그재그 스캔과 같은) 스캐닝 경로를 따름으로써, 스트링들이 SCM 타일(프레임 행렬의 부행렬들)로 재배열된다(단계 920).
차동 코딩에 의해 코딩된 타일들에 대하여, 차동 코딩을 역전하도록 행렬 엔트리들을 인접 행렬들의 엔트리들과 합할 필요가 있다(단계 922). SCM 타일들이 재구성되었다면, 이들은 인코딩에 사용된 것의 역인 직교 변환으로 처리되며, 바람직하게는 2차원에서 역 이산 코사인 변환(IDCT; inverse discrete cosine transform)으로 처리된다(단계 924). (단계 924, 즉 IDCT는 도 8의 단계 832에 대응하는데 이는 도 8에 도시된 보다 일반적인 방법의 특별한 경우임을 이해하여야 함). 이들 단계는 일련의 스케일 팩터 타일들을 생성한다.
재구성 후에, 스케일 팩터 타일들은 바람직하게 미리 결정된 패턴으로 더 큰 프레임 행렬로 연결된다(단계 824). 이 연결은 행렬들을 타일들로 분할하는데 사용된 것과 상보적인 패턴의 더 큰 패턴으로 단순히 부행렬들을 첨부한다(인코딩 방법에서는 도 4의 단계 304에서). 그 다음, 그 결과의 스케일 팩터 행렬은, 인코더에서 채용된 것과 상보적인 기능에 따라, 선형 스케일 팩터로 변환된다(또는 다르게 말하자면, 단계 826에서 재양자화됨). 통상의 적용에서, 이 단계는 데시벨 스케일로부터 선형 스케일 팩터로의 변환을 포함한다(이에 관련하여 일반적인 용어 "재양자화"는 역양자화를 칭하거나, 또는 다르게 말하자면 로그로부터 선형 스케일로의 확장을 칭함. 다른 문맥에서는 또한 압축 목적을 위해 재양자화하는 프로세스를 칭하는데 사용될 수도 있음).
본 발명의 하나의 특정 신규한 실시예에서, 변환 및 부가의 인코딩 전에 스케일 팩터 데이터에 적용되는 "노치 제거"의 방법에 의해 코딩의 효율성이 더 개선된다. 이 단계는 도 4에서 단계 305로서 도시되어 있는데, 프레임을 타일들로 분리한 후에(단계 304) 그리고 단계 306 전에 적합하게 사용될 것이다.
본 발명자는 예비 스케일 팩터들의 행렬들로의 조직화 후에, 이러한 행렬들의 행들과 열들이 다수의 "노치"를 나타냄을 발견하였다. 다르게 말하자면, 그 외에는 일반적으로 선형인 추세(trend)가 낮은 값에 의해 방해되는 영역이 있다. 이들 노치는 변환 후의 계수 행렬의 복잡도를 증가시키며, 스케일 팩터 데이터를 덜 컴팩트하게 한다.
따라서, 본 발명의 하나의 신규한 실시예에서는 스케일 팩터 데이터에서의 "노치"가 여기에서 서술되는 방법에 의해 제거된다. 노치 제거 방법은 a) 행 및 b) 열 중 적어도 하나의 걸쳐 계산된 추세에 의해 행렬을 모델링하는 예측 모델에 의해 상기 적어도 하나의 타일을 수정하여, 수정된 스케일 팩터들의 행렬을 획득하는 것을 포함한다. 스케일 팩터 행렬은 사실상, 도 4 및 도 5의 인코딩 방법에서의 부가의 처리 전에, 수정된 더 스무딩된(smooth) 스케일 팩터 행렬로 교체된다. 단순한 방법으로 선형 예측 모델이 적용된다. 대안으로서, 방법은 다항식 예측 모델을 적용하도록 수정될 수 있다.
노치 제거 방법은 도 10에 도시되어 있다. 노치 제거 방법의 설명을 위해, 스케일 팩터 값들 Di ,j의 NxK 행렬 D를 입력으로서 고려한다. 먼저, 식 2a에 나타난 바와 같이, 값들의 단순한 선형 가중화된 정규화된 합으로서 선형 추세(스칼라) Trow가 계산된다(단계 950):
(식 2a)
꺽쇠 괄호 내에 있는 것은 열별(column-wise) 평균화이다. 감산에서의 두 번째 항은 평균 값이다.
마찬가지로, 열에 대하여 방법은 열 추세(스칼라) Tcol를 다음에 의해 계산한다(단계 952):
(식 2b)
방법이 행렬의 행(또는 열)에 걸쳐 어떠한 평균 기울기를 제공한다고 하면, 추세 계산에 대하여 다른 수단을 채용하는 것이 가능하다. 제1 추세는 스칼라 Trow이고, 제2 추세는 스칼라 Tcol이다.
이 계산 후에, 추세는 행 및 열 인덱스에 의해 스케일링되며, 다음 식에 따라 행렬 D로부터 감산된다(단계 954):
(식 3)
이어서, 행렬 DT의 행들 각각에 걸쳐 중앙 값들(median values)이 계산되며, N 중앙 값들의 벡터 Mrowi가 된다(단계 956). 마찬가지로, 행렬의 열들에 걸쳐 중앙 값들이 계산되며, K 중앙 값들의 벡터 Mcolj가 된다. 본 개시에서 사용될 때, "중앙"은 배치의 상위 1/2을 하위 1/2과 분리하는 수를 나타내는데 사용된다.
다음으로, 행렬 DT의 각각의 멤버는 계산된 중앙 값들에 대하여 테스트된다(행 및 열에 대하여). DTi,j가 임의의 중앙 값들보다 더 높다면, 어떠한 동작도 취해지지 않는다. DT가 둘 다의 중앙 값들보다 더 낮다면, 가장 낮은 중앙 값이 DT의 값을 교체하도록 할당된다(단계 958). 따라서, 다음과 같이 된다:
(식 4)
그 다음, 추세들이 가산에 의해 재삽입된다(단계 960):
(식 5)
행렬 OUTi,j가 스케일 팩터 행렬로서 대체되고, "스무딩된" 스케일 팩터 행렬로서 부가의 인코딩 단계들에 사용된다.
행렬 OUT이 노치 제거에 의해 스무딩되었다는 것을 알아야 하며, 예비 스케일 팩터 할당이 이전에 어떤 최적의 방식으로 수행되었으므로, 행렬 OUT에 따른 양자화는 양자화 잡음에 관련하여 차선책일 것이다. 그러나, 차선의 스케일 팩터들은 더 높은 스케일 팩터들 사이의 슬롯, 즉 더 높은 신호 레벨들을 갖는 2개 주파수들 사이에 끼인 주파수 대역이나, 더 높은 진폭 신호를 갖는 시간 슬롯에 인접한 짧은 시간 슬롯을 나타내는 행렬 엔트리들로 국한될 것이다. 첫 번째 경우는 음향 심리학적 주파수 마스킹이 발생할 것으로 예상되는 상황이고, 두 번째 경우는 시끄러운 순간에 인접한 조용한 통로에 대응한다(일시적인 마스킹이 일어나야 함). 둘 다의 상황에서, 음향 심리적인 마스킹 현상으로 인해 최적보다 덜한 양자화가 허용 가능하다. 이러한 이유로 가능하게는, 노치 제거에 의한 스케일 팩터 행렬의 스무딩은 신호의 주관적으로 수락 가능한 복제를 제공하면서 코딩에 대한 비트 요건을 감소시키는 것으로 밝혀졌다. 대안으로서, 보다 음향 심리학적으로 민감한 영역에서의 신호 대 잡음을 개선하도록 추가적인 비트들이 할당될 수 있다.
본 발명의 여러 예시적인 실시예들이 도시되고 설명되었지만, 당해 기술 분야에서의 숙련자에게 다수의 변형 및 대안의 실시예들이 일어날 것이다. 예를 들어, 상기 언급한 바와 같이, 2차원 프레임들을 생성하기 위해, 퓨리에 변환, DCT, 또는 수정된 DCT 변환과 같은 다양한 변환이 오디오 신호를 부대역들(다르게 말하자면, 빈들)로 분리하는데 채용될 수 있다. 다양한 함수들이 데시벨 스케일이 아닌 비선형 매핑에서 스케일 팩터를 정의하는데 사용될 수 있다. 상이한 데이터 포맷, 상이한 엔트로피 감소 코드, 및 상이한 타일링 패턴과 프레임 크기들이 사용될 수 있다. 이러한 변형 및 대안의 실시예들을 생각해볼 수 있으며, 이들은 첨부된 청구항에서 정의되는 본 발명의 사상 및 범위에서 벗어나지 않고 이루어질 수 있다.
110: 필터 뱅크
114: 모듈
116: 인코딩 모듈
120: 처리 모듈
122: 스케일 팩터 압축 모듈
124: 2차원 변환
130: 재양자화 모듈
132: 다중화기
114: 모듈
116: 인코딩 모듈
120: 처리 모듈
122: 스케일 팩터 압축 모듈
124: 2차원 변환
130: 재양자화 모듈
132: 다중화기
Claims (34)
- 데이터 포맷에 스케일 팩터를 더한 것을 사용한 스펙트럼 값들 또는 사운드 샘플들을 나타내는 오디오 압축 시스템에서 사운드(sound)를 나타내는 디지털화된 오디오 신호를 압축하는 방법에 있어서, 상기 신호는 오디오 대역폭을 가지며, 샘플은 스케일 팩터(scale factor) 및 연관된 양(quantity)의 곱으로서 나타나고, 상기 방법은,
사운드를 나타내는 디지털 신호를 수신하는 단계;
샘플들을 적어도 하나의 오디오 프레임으로 조직화하는 단계 - 상기 프레임은 시간 구간(time interval)을 나타내는 복수의 시간적으로 순차적인 샘플들을 포함함 - ;
각각의 프레임에 대하여, 상기 복수의 시간적으로 순차적인 샘플들을 복수의 부대역(subband) 신호들로 처리하는 단계 - 각각의 부대역 신호는 각자의 부대역 주파수 범위를 나타내고 상기 부대역 주파수 범위 내의 오디오 샘플들의 시간 시퀀스를 포함함 - ;
a) 스케일 팩터 필드에서 나타나는 스케일 팩터 및 b) 양 필드에서 나타나는 양 필드의 곱으로서 상기 부대역 신호들을 각각의 필터링된 오디오 샘플을 표현하는 포맷으로 변환하는 단계;
상기 부대역 신호들의 스케일 팩터 필드들을 각각의 프레임에 대응하는 적어도 하나의 타일로 2차원에서 조직화하는 단계 - 상기 타일은 제1 차원으로서 시간 그리고 제2 차원으로서 부대역 주파수 범위에 의해 조직화된 스케일 팩터들의 행렬을 포함함 - ;
각각의 상기 타일에 대하여 각자의 스케일 팩터 계수 행렬(SCM; scale factor coefficient matrix)을 생성하도록 상기 적어도 하나의 타일을 2차원 직교 변환을 이용해 처리하는 단계;
압축된 포맷의 타일에 상기 스케일 팩터를 나타내는 압축된 계수 행렬을 생성하도록 각각의 상기 SCM을 압축하는 단계; 및
전송을 위한 데이터 포맷으로 상기 압축된 계수 행렬을 패킹(packing)하는 단계를 포함하는, 디지털화된 오디오 신호를 압축하는 방법. - 청구항 1에 있어서, 상기 직교 변환은 2차원 이산 코사인 변환을 포함하는 것인, 디지털화된 오디오 신호를 압축하는 방법.
- 청구항 1에 있어서,
상기 적어도 하나의 타일은 복수의 타일들을 포함하며, 상기 복수의 타일들은 완전한 오디오 프레임을 나타내는 2차원 행렬의 분할에 의해 유도되고;
각각의 상기 타일은 상기 완전한 오디오 프레임의 주파수 범위의 일부분 및 시간의 부분 구간(sub-interval)을 나타내는 것인, 디지털화된 오디오 신호를 압축하는 방법. - 청구항 3에 있어서,
상기 타일의 각각을 처리하는 상기 단계 후에, 재양자화(requantization) 행렬에 따라 상기 적어도 하나의 타일을 재양자화하는 단계를 더 포함하는, 디지털화된 오디오 신호를 압축하는 방법. - 청구항 1에 있어서, 상기 압축하는 단계는,
적어도 하나의 SCM에 대하여, 계수들을 계수들의 스트링(string)으로 재배열하는 것을 포함하는 것인, 디지털화된 오디오 신호를 압축하는 방법. - 청구항 5에 있어서, 상기 압축하는 단계는,
엔트로피 감소 코드(entropy reducing code)를 사용하여 상기 계수들의 스트링을 압축하는 것을 더 포함하는 것인, 디지털화된 오디오 신호를 압축하는 방법. - 청구항 6에 있어서, 상기 엔트로피 감소 코드는 허프만(Huffman) 코드를 포함하는 것인, 디지털화된 오디오 신호를 압축하는 방법.
- 청구항 1에 있어서, 상기 압축하는 단계는 공통 프레임에서의 관련 타일들에 걸쳐 차동 코딩(differential coding)을 사용하는 것인, 디지털화된 오디오 신호를 압축하는 방법.
- 청구항 1에 있어서, 상기 스케일 팩터 필드들을 조직화하는 상기 단계는, 수정된 스케일 팩터 행렬을 획득하도록, a) 행들, 및 b) 열들 중 적어도 하나에 걸쳐 계산된 추세(trend)에 의해 행렬을 모델링하는 예측 모델에 의해 상기 적어도 하나의 타일을 수정하는 것을 포함하는 것인, 디지털화된 오디오 신호를 압축하는 방법.
- 청구항 9에 있어서, 상기 예측 모델은 선형 예측 모델을 포함하고, 상기 계산된 추세는 선형 추세인 것인, 디지털화된 오디오 신호를 압축하는 방법.
- 청구항 9에 있어서, 상기 예측 모델은 다항식 모델을 포함하고, 상기 계산된 추세는 다항식 함수를 포함하는 것인, 디지털화된 오디오 신호를 압축하는 방법.
- 청구항 1에 있어서, 상기 복수의 시간적으로 순차적인 샘플들을 복수의 부대역 신호들로 처리하는 상기 단계는,
상기 시간적으로 순차적인 샘플들을 디지털 대역통과 필터들의 뱅크를 이용해 필터링한 다음, 복수의 임계적으로 샘플링된(critically sampled) 부대역 신호들을 발생시키도록 데시메이트(decimate)하는 것을 포함하는 것인, 디지털화된 오디오 신호를 압축하는 방법. - 청구항 1에 있어서, 상기 복수의 시간적으로 순차적인 샘플들을 복수의 부대역 신호들로 처리하는 상기 단계는,
상기 샘플들의 순차적인 세트들을 주파수 변환에 의해 주파수 도메인 표현으로 변환하여, 각각의 상기 세트에 대하여 주파수 빈들(frequency bins)의 세트에 대응하는 일련의 부대역 신호들을 생성하는 것을 포함하는 것인, 디지털화된 오디오 신호를 압축하는 방법. - 청구항 1에 있어서, 전송 매체를 통하여 상기 압축된 계수 행렬을 전송하는 단계를 더 포함하는, 디지털화된 오디오 신호를 압축하는 방법.
- 청구항 14에 있어서, 상기 전송 매체는 데이터 네트워크를 포함하는 것인, 디지털화된 오디오 신호를 압축하는 방법.
- 청구항 1에 있어서, 상기 압축된 계수 행렬을 기계 판독가능한 매체 상에 기록하는 단계를 더 포함하는, 디지털화된 오디오 신호를 압축하는 방법.
- 신호를 디코딩하는데 유용한, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법에 있어서, 샘플들은 양 포맷에 스케일 팩터를 더한 것을 사용한 스펙트럼 값들 또는 사운드 샘플들을 나타내는 시스템에 의해 인코딩되고, 샘플은 스케일 팩터 및 연관된 양(Q)의 곱으로서 나타나고, 상기 디코딩 방법은,
인코딩된 스케일 팩터 데이터 및 인코딩된 양 데이터를 분리하도록 수신된 데이터 패킷을 언팩킹(unpacking)하는 단계;
적어도 하나의 계수 행렬을 발생시키도록 상기 인코딩된 스케일 팩터 데이터를 압축 해제(decompress)하는 단계; 및
적어도 하나의 대응하는 스케일 팩터 부행렬(submatrix)을 획득하도록 상기 적어도 하나의 행렬을 2차원 역 직교 변환(Inverse orthogonal transform)에 의해 변환하는 단계 - 상기 역 직교 변환은 상기 계수 행렬들을 인코딩하는데 사용된 직교 변환의 역임 - 를 포함하는, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법. - 청구항 17에 있어서, 상기 역 직교 변환은 역 2차원 이산 코사인 변환을 포함하는 것인, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법.
- 청구항 17에 있어서,
상기 적어도 하나의 계수 행렬은 복수의 계수 행렬들을 포함하고;
상기 적어도 하나의 계수 행렬을 변환하는 상기 단계는 복수의 대응하는 스케일 팩터 부행렬들을 획득하도록 복수의 계수 행렬들 각각을 변환하는 것을 포함하고;
기지의(known) 인코더에서 사용된 타일링 패턴에 대응하는 미리 결정된 타일들의 패턴으로 상기 스케일 팩터 부행렬들을 연결함으로써(concatenate) 상기 스케일 팩터 부행렬들을 더 큰 프레임 행렬로 어셈블하는 단계를 더 포함하는, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법. - 청구항 17에 있어서, 상기 인코딩된 스케일 팩터 데이터를 압축 해제하는 상기 단계는 엔트로피 감소 코드를 디코딩하는 것을 포함하는 것인, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법.
- 청구항 20에 있어서, 상기 엔트로피 감소 코드는 허프만 코드를 포함하는 것인, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법.
- 청구항 21에 있어서, 상기 인코딩된 스케일 팩터 데이터를 압축 해제하는 상기 단계는, 공통 프레임 행렬에서 인접한 부행렬들 간의 차이들을 디코딩하고, 상기 차이들을 합하여 부행렬들을 재구성하는 것을 더 포함하는 것인, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법.
- 청구항 21에 있어서,
오디오 프레임에 대한 스케일 팩터 행렬을 계산하기 위해, 상기 압축해제된 스케일 팩터들을 비선형 양자화로부터 선형 스케일 팩터로 변환함으로써 압축해제된 재양자화된 스케일 팩터 행렬을 획득하도록 상기 스케일 팩터 행렬을 재양자화하는 단계를 더 포함하는, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법. - 청구항 17에 있어서,
상기 재양자화된 압축해제된 스케일 팩터 행렬의 요소들을 대응하는 데이터 양들(Q)과 곱하여 오디오 샘플들의 행렬을 재구성하는 단계를 더 포함하는, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법. - 청구항 24에 있어서, 순차적인 디지털화된 오디오 샘플들의 스트림을 구성하도록 상기 오디오 샘플들의 행렬을 처리하는 단계를 더 포함하는, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법.
- 청구항 25에 있어서, 상기 오디오 샘플들의 행렬을 처리하는 상기 단계는,
상기 오디오 샘플들의 행렬의 각각의 행에 대하여, 합성 필터를 이용해 상기 행을 처리하고 - 상기 합성 필터는 복수의 재구성된 부대역 신호들을 획득하기 위해 기지의 인코더에서 수행된 데시메이션(decimation)과 상보적인(complementary) 방식으로 샘플들의 프레임 길이로 상기 행을 업샘플링(up-sampling)함 - ;
상기 재구성된 부대역 신호를 혼합하여 사운드를 나타내는 전대역(full band) 오디오 신호의 복제(replica)를 생성하는 것을 포함하는 것인, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법. - 청구항 26에 있어서, 사운드를 재생할 목적으로 상기 오디오 샘플들을 또다른 디바이스로 출력하는 단계를 더 포함하는, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법.
- 청구항 26에 있어서, 상기 순차적인 디지털화된 오디오 샘플들의 스트림에 기초하여 사운드를 재생시키는 단계를 더 포함하며, 상기 사운드는 상기 디코딩 방법과 양립할 수 있는 방법에 의해 인코딩된 사운드의 근사 복제(approximate replica)인 것인, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법.
- 청구항 17에 있어서,
입력 신호를 수신하는 단계; 및
상기 신호를 데이터 패킷들로 디코딩하는 단계를 더 포함하는, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법. - 청구항 29에 있어서, 상기 입력 신호는 데이터 네트워크로부터 수신되는 것인, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법.
- 청구항 29에 있어서, 상기 신호는 기계 판독가능한 저장 매체로부터 판독되는 것인, 오디오 신호를 나타내는 인코딩된 전자 데이터 신호를 디코딩하는 방법.
- 인코딩된 오디오 정보를 저장하기에 적합한 기계 판독가능한 저장 매체에 있어서, 상기 샘플은 스케일 팩터 및 대응하는 양의 곱으로서 나타나며, 상기 매체는,
코딩된 스케일 팩터 데이터 필드 - 스케일 팩터들의 적어도 하나의 행렬이 2차원 직교 변환에 의해 스케일 팩터 계수 행렬로 인코딩됨 - ; 및
인코딩된 데이터 양들을 포함하는 양 필드를 포함하는, 기계 판독가능한 저장 매체. - 청구항 32에 있어서, 상기 직교 변환은 2차원 이산 코사인 변환을 포함하는 것인, 기계 판독가능한 저장 매체.
- 청구항 33에 있어서, 상기 코딩된 데이터 필드는 또한 엔트로피 감소 코드에 의해 상기 스케일 팩터 계수 행렬을 인코딩함으로써 인코딩되는 것인, 기계 판독가능한 저장 매체.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/220,492 | 2008-07-24 | ||
US12/220,492 US8290782B2 (en) | 2008-07-24 | 2008-07-24 | Compression of audio scale-factors by two-dimensional transformation |
PCT/US2009/003612 WO2010011249A1 (en) | 2008-07-24 | 2009-06-17 | Compression of audio scale-factors by two-dimensional transformation |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110046498A true KR20110046498A (ko) | 2011-05-04 |
KR101517265B1 KR101517265B1 (ko) | 2015-05-04 |
Family
ID=41569439
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020117004318A KR101517265B1 (ko) | 2008-07-24 | 2009-06-17 | 2차원 변환에 의한 오디오 스케일 팩터의 압축 |
Country Status (8)
Country | Link |
---|---|
US (1) | US8290782B2 (ko) |
EP (1) | EP2308045B1 (ko) |
JP (1) | JP5453422B2 (ko) |
KR (1) | KR101517265B1 (ko) |
CN (1) | CN102150207B (ko) |
HK (1) | HK1156146A1 (ko) |
TW (1) | TWI515720B (ko) |
WO (1) | WO2010011249A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017164606A3 (ko) * | 2016-03-21 | 2018-08-02 | 한국전자통신연구원 | 블록 기반의 오디오 부호화/복호화 장치 및 그 방법 |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10123050B2 (en) | 2008-07-11 | 2018-11-06 | Qualcomm Incorporated | Filtering video data using a plurality of filters |
WO2010053287A2 (en) * | 2008-11-04 | 2010-05-14 | Lg Electronics Inc. | An apparatus for processing an audio signal and method thereof |
US8140342B2 (en) * | 2008-12-29 | 2012-03-20 | Motorola Mobility, Inc. | Selective scaling mask computation based on peak detection |
US8200496B2 (en) * | 2008-12-29 | 2012-06-12 | Motorola Mobility, Inc. | Audio signal decoder and method for producing a scaled reconstructed audio signal |
US9143803B2 (en) * | 2009-01-15 | 2015-09-22 | Qualcomm Incorporated | Filter prediction based on activity metrics in video coding |
EP2224425B1 (en) * | 2009-02-26 | 2012-02-08 | Honda Research Institute Europe GmbH | An audio signal processing system and autonomous robot having such system |
US8700410B2 (en) * | 2009-06-18 | 2014-04-15 | Texas Instruments Incorporated | Method and system for lossless value-location encoding |
US9600855B2 (en) * | 2009-07-11 | 2017-03-21 | Hewlett-Packard Development Company, L.P. | View projection |
US8294396B2 (en) * | 2009-07-13 | 2012-10-23 | Hamilton Sundstrand Space Systems International, Inc. | Compact FPGA-based digital motor controller |
WO2011045465A1 (en) * | 2009-10-12 | 2011-04-21 | Nokia Corporation | Method, apparatus and computer program for processing multi-channel audio signals |
EP2372705A1 (en) * | 2010-03-24 | 2011-10-05 | Thomson Licensing | Method and apparatus for encoding and decoding excitation patterns from which the masking levels for an audio signal encoding and decoding are determined |
CN102222505B (zh) * | 2010-04-13 | 2012-12-19 | 中兴通讯股份有限公司 | 可分层音频编解码方法***及瞬态信号可分层编解码方法 |
US9008811B2 (en) | 2010-09-17 | 2015-04-14 | Xiph.org Foundation | Methods and systems for adaptive time-frequency resolution in digital data coding |
WO2012069886A1 (en) * | 2010-11-26 | 2012-05-31 | Nokia Corporation | Coding of strings |
US9093120B2 (en) * | 2011-02-10 | 2015-07-28 | Yahoo! Inc. | Audio fingerprint extraction by scaling in time and resampling |
US8964852B2 (en) | 2011-02-23 | 2015-02-24 | Qualcomm Incorporated | Multi-metric filtering |
US9009036B2 (en) | 2011-03-07 | 2015-04-14 | Xiph.org Foundation | Methods and systems for bit allocation and partitioning in gain-shape vector quantization for audio coding |
WO2012122303A1 (en) | 2011-03-07 | 2012-09-13 | Xiph. Org | Method and system for two-step spreading for tonal artifact avoidance in audio coding |
US9015042B2 (en) | 2011-03-07 | 2015-04-21 | Xiph.org Foundation | Methods and systems for avoiding partial collapse in multi-block audio coding |
RU2464649C1 (ru) * | 2011-06-01 | 2012-10-20 | Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." | Способ обработки звукового сигнала |
US8767824B2 (en) * | 2011-07-11 | 2014-07-01 | Sharp Kabushiki Kaisha | Video decoder parallelization for tiles |
US9391724B2 (en) * | 2013-08-16 | 2016-07-12 | Arris Enterprises, Inc. | Frequency sub-band coding of digital signals |
EP2916319A1 (en) * | 2014-03-07 | 2015-09-09 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Concept for encoding of information |
CN108134805B (zh) * | 2014-08-08 | 2021-04-30 | 安科讯(福建)科技有限公司 | 一种数据同步压缩还原算法及装置 |
CN105632505B (zh) * | 2014-11-28 | 2019-12-20 | 北京天籁传音数字技术有限公司 | 主成分分析pca映射模型的编解码方法及装置 |
TWI771266B (zh) * | 2015-03-13 | 2022-07-11 | 瑞典商杜比國際公司 | 解碼具有增強頻譜帶複製元資料在至少一填充元素中的音訊位元流 |
US20190096410A1 (en) * | 2016-03-03 | 2019-03-28 | Nokia Technologies Oy | Audio Signal Encoder, Audio Signal Decoder, Method for Encoding and Method for Decoding |
KR102169435B1 (ko) | 2016-03-21 | 2020-10-23 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 가중된 행렬 계수의 적응형 양자화 |
EP3469589B1 (en) * | 2016-06-30 | 2024-06-19 | Huawei Technologies Duesseldorf GmbH | Apparatuses and methods for encoding and decoding a multichannel audio signal |
FR3060830A1 (fr) * | 2016-12-21 | 2018-06-22 | Orange | Traitement en sous-bandes d'un contenu ambisonique reel pour un decodage perfectionne |
KR102414583B1 (ko) * | 2017-03-23 | 2022-06-29 | 삼성전자주식회사 | 머신 러닝을 수행하는 전자 장치 및 머신 러닝 수행 방법 |
US10699723B2 (en) * | 2017-04-25 | 2020-06-30 | Dts, Inc. | Encoding and decoding of digital audio signals using variable alphabet size |
US10572255B2 (en) * | 2017-06-29 | 2020-02-25 | Texas Instruments Incorporated | Stream engine with element promotion and decimation modes |
US10950251B2 (en) * | 2018-03-05 | 2021-03-16 | Dts, Inc. | Coding of harmonic signals in transform-based audio codecs |
CN109147795B (zh) * | 2018-08-06 | 2021-05-14 | 珠海全志科技股份有限公司 | 声纹数据传输、识别方法、识别装置和存储介质 |
TWI719385B (zh) * | 2019-01-11 | 2021-02-21 | 緯創資通股份有限公司 | 電子裝置及其語音指令辨識方法 |
US11600282B2 (en) * | 2021-07-02 | 2023-03-07 | Google Llc | Compressing audio waveforms using neural networks and vector quantizers |
CN114629501B (zh) * | 2022-03-16 | 2024-06-14 | 重庆邮电大学 | 一种机械加工过程状态信息的边缘数据分类压缩方法 |
CN115632661B (zh) * | 2022-12-22 | 2023-03-07 | 互丰科技(北京)有限公司 | 网络安全信息高效压缩传输方法 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4102324C1 (ko) * | 1991-01-26 | 1992-06-17 | Institut Fuer Rundfunktechnik Gmbh, 8000 Muenchen, De | |
JP3178026B2 (ja) | 1991-08-23 | 2001-06-18 | ソニー株式会社 | ディジタル信号符号化装置及び復号化装置 |
EP0559348A3 (en) * | 1992-03-02 | 1993-11-03 | AT&T Corp. | Rate control loop processor for perceptual encoder/decoder |
JP3173218B2 (ja) * | 1993-05-10 | 2001-06-04 | ソニー株式会社 | 圧縮データ記録方法及び装置、圧縮データ再生方法、並びに記録媒体 |
JPH06324093A (ja) * | 1993-05-14 | 1994-11-25 | Sony Corp | オーディオ信号のスペクトル表示装置 |
US5581653A (en) * | 1993-08-31 | 1996-12-03 | Dolby Laboratories Licensing Corporation | Low bit-rate high-resolution spectral envelope coding for audio encoder and decoder |
GB9606680D0 (en) * | 1996-03-29 | 1996-06-05 | Philips Electronics Nv | Compressed audio signal processing |
DE19613643A1 (de) * | 1996-04-04 | 1997-10-09 | Fraunhofer Ges Forschung | Verfahren zum Codieren eines mit einer niedrigen Abtastrate digitalisierten Audiosignals |
US7337025B1 (en) * | 1998-02-12 | 2008-02-26 | Stmicroelectronics Asia Pacific Pte. Ltd. | Neural network based method for exponent coding in a transform coder for high quality audio |
JP2001134295A (ja) * | 1999-08-23 | 2001-05-18 | Sony Corp | 符号化装置および符号化方法、記録装置および記録方法、送信装置および送信方法、復号化装置および符号化方法、再生装置および再生方法、並びに記録媒体 |
JP2001094433A (ja) * | 1999-09-17 | 2001-04-06 | Matsushita Electric Ind Co Ltd | サブバンド符号化・復号方法 |
WO2002063925A2 (en) * | 2001-02-07 | 2002-08-15 | Dolby Laboratories Licensing Corporation | Audio channel translation |
US7333929B1 (en) * | 2001-09-13 | 2008-02-19 | Chmounk Dmitri V | Modular scalable compressed audio data stream |
JP3982397B2 (ja) * | 2001-11-28 | 2007-09-26 | 日本ビクター株式会社 | 可変長符号化データ復号化用プログラム及び可変長符号化データ受信用プログラム |
DE10236694A1 (de) * | 2002-08-09 | 2004-02-26 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung und Verfahren zum skalierbaren Codieren und Vorrichtung und Verfahren zum skalierbaren Decodieren |
US7272566B2 (en) * | 2003-01-02 | 2007-09-18 | Dolby Laboratories Licensing Corporation | Reducing scale factor transmission cost for MPEG-2 advanced audio coding (AAC) using a lattice based post processing technique |
US7318035B2 (en) * | 2003-05-08 | 2008-01-08 | Dolby Laboratories Licensing Corporation | Audio coding systems and methods using spectral component coupling and spectral component regeneration |
US7471850B2 (en) * | 2004-12-17 | 2008-12-30 | Microsoft Corporation | Reversible transform for lossy and lossless 2-D data compression |
JP4116628B2 (ja) * | 2005-02-08 | 2008-07-09 | 株式会社東芝 | オーディオ符号化方法およびオーディオ符号化装置 |
US7548853B2 (en) * | 2005-06-17 | 2009-06-16 | Shmunk Dmitry V | Scalable compressed audio bit stream and codec using a hierarchical filterbank and multichannel joint coding |
US7539612B2 (en) * | 2005-07-15 | 2009-05-26 | Microsoft Corporation | Coding and decoding scale factor information |
-
2008
- 2008-07-24 US US12/220,492 patent/US8290782B2/en active Active
-
2009
- 2009-06-17 JP JP2011520018A patent/JP5453422B2/ja active Active
- 2009-06-17 CN CN2009801352397A patent/CN102150207B/zh active Active
- 2009-06-17 EP EP09800643.0A patent/EP2308045B1/en active Active
- 2009-06-17 KR KR1020117004318A patent/KR101517265B1/ko active IP Right Grant
- 2009-06-17 WO PCT/US2009/003612 patent/WO2010011249A1/en active Application Filing
- 2009-06-30 TW TW098122012A patent/TWI515720B/zh not_active IP Right Cessation
-
2011
- 2011-10-03 HK HK11110406.4A patent/HK1156146A1/xx unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017164606A3 (ko) * | 2016-03-21 | 2018-08-02 | 한국전자통신연구원 | 블록 기반의 오디오 부호화/복호화 장치 및 그 방법 |
Also Published As
Publication number | Publication date |
---|---|
WO2010011249A1 (en) | 2010-01-28 |
CN102150207B (zh) | 2013-04-10 |
US20100023336A1 (en) | 2010-01-28 |
EP2308045A4 (en) | 2012-09-12 |
US8290782B2 (en) | 2012-10-16 |
EP2308045B1 (en) | 2020-09-23 |
TWI515720B (zh) | 2016-01-01 |
JP5453422B2 (ja) | 2014-03-26 |
TW201007699A (en) | 2010-02-16 |
KR101517265B1 (ko) | 2015-05-04 |
HK1156146A1 (en) | 2012-06-01 |
CN102150207A (zh) | 2011-08-10 |
JP2011529199A (ja) | 2011-12-01 |
EP2308045A1 (en) | 2011-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101517265B1 (ko) | 2차원 변환에 의한 오디오 스케일 팩터의 압축 | |
KR101325339B1 (ko) | 계층적 필터뱅크 및 다중 채널 조인트 코딩을 이용한 인코더 및 디코더 그리고 그 방법들과 시간 도메인 출력신호 및 입력신호의 시간 샘플을 재구성하는 방법, 그리고 입력신호를 필터링하는 방법 | |
JP5593419B2 (ja) | 可逆マルチチャネル・オーディオ・コーデック | |
US7333929B1 (en) | Modular scalable compressed audio data stream | |
EP1715476B1 (en) | Low-bitrate encoding/decoding method and system | |
JPH08190764A (ja) | ディジタル信号処理方法、ディジタル信号処理装置及び記録媒体 | |
EP2270775B1 (en) | Lossless multi-channel audio codec | |
JP2004289196A (ja) | ディジタル信号符号化方法、復号化方法、符号化装置、復号化装置及びディジタル信号符号化プログラム、復号化プログラム | |
US20090164224A1 (en) | Lossless multi-channel audio codec | |
KR100300887B1 (ko) | 디지털 오디오 데이터의 역방향 디코딩 방법 | |
AU2011205144B2 (en) | Scalable compressed audio bit stream and codec using a hierarchical filterbank and multichannel joint coding | |
AU2011221401B2 (en) | Scalable compressed audio bit stream and codec using a hierarchical filterbank and multichannel joint coding | |
KR100195711B1 (ko) | 디지탈 오디오 복호기 | |
Smyth | An Overview of the Coherent Acoustics Coding System | |
KR100247348B1 (ko) | 엠펙 오디오 디코더에서 메모리 사이즈를 최소화하기 위한 회로 및 방법 | |
Ning | Analysis and coding of high quality audio signals |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180413 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190411 Year of fee payment: 5 |