KR20150120477A - 과도-위치 의존 중첩을 이용하여 오디오 신호를 인코딩 또는 디코딩하는 장치 및 방법 - Google Patents
과도-위치 의존 중첩을 이용하여 오디오 신호를 인코딩 또는 디코딩하는 장치 및 방법 Download PDFInfo
- Publication number
- KR20150120477A KR20150120477A KR1020157025744A KR20157025744A KR20150120477A KR 20150120477 A KR20150120477 A KR 20150120477A KR 1020157025744 A KR1020157025744 A KR 1020157025744A KR 20157025744 A KR20157025744 A KR 20157025744A KR 20150120477 A KR20150120477 A KR 20150120477A
- Authority
- KR
- South Korea
- Prior art keywords
- window
- length
- overlap
- transient
- transform
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 94
- 230000005236 sound signal Effects 0.000 title description 18
- 230000001419 dependent effect Effects 0.000 title description 2
- 230000001052 transient effect Effects 0.000 claims abstract description 207
- 230000003595 spectral effect Effects 0.000 claims abstract description 54
- 230000001131 transforming effect Effects 0.000 claims abstract description 8
- 230000006870 function Effects 0.000 claims description 134
- 238000006243 chemical reaction Methods 0.000 claims description 57
- 230000009466 transformation Effects 0.000 claims description 29
- 238000012545 processing Methods 0.000 claims description 14
- 230000007704 transition Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 12
- 230000015572 biosynthetic process Effects 0.000 claims description 10
- 238000003786 synthesis reaction Methods 0.000 claims description 10
- 230000002123 temporal effect Effects 0.000 claims description 7
- 238000000844 transformation Methods 0.000 claims description 7
- 230000009467 reduction Effects 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 238000012790 confirmation Methods 0.000 claims 1
- 238000001514 detection method Methods 0.000 description 16
- 230000000750 progressive effect Effects 0.000 description 13
- 238000007792 addition Methods 0.000 description 11
- 230000002829 reductive effect Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 7
- 238000012805 post-processing Methods 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 5
- 238000010606 normalization Methods 0.000 description 5
- 238000007493 shaping process Methods 0.000 description 5
- 238000001228 spectrum Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000013139 quantization Methods 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 238000002592 echocardiography Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 241000269435 Rana <genus> Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005056 compaction Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000010361 transduction Methods 0.000 description 1
- 230000026683 transduction Effects 0.000 description 1
- 230000017105 transposition 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
- G10L19/022—Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
- G10L19/025—Detection of transients or attacks for time/frequency resolution switching
-
- 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
- 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
- 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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (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
오디오 또는 이미지 신호를 인코딩하는 장치로서, 윈도우된 샘플들의 블록들의 시퀀스를 제공하도록 상기 오디오 또는 이미지 신호를 윈도윙하는 제어가능 윈도워(102); 스펙트럼 값들의 프레임들의 시퀀스를 포함하는 스펙트럼 표현으로 윈도우된 샘플들의 블록들의 시퀀스를 변환하기 위한 변환기(104); 프레임의 과도 미리보기 영역 내의 과도 위치를 확인하는 과도 위치 검출기(106); 및 과도 상태의 확인된 위치(210-213)에 대응하여 오디오 또는 이미지 신호에 대해 특정 중첩 길이를 갖는 특정 윈도우를 적용하도록 상기 제어가능 윈도워(102)를 제어하는 제어기(108);를 포함하며, 상기 제어기(108)는 제1 중첩 길이(203)를 갖는 제1 윈도우(201), 제2 중첩 길이(218)를 갖는 제2 윈도우(215), 제3 중첩 길이(229)를 갖거나 중첩이 없는 제3 윈도우(224)를 포함하는 적어도 3개의 윈도우의 그룹으로부터 특정 윈도우를 선택하도록 구성되며, 상기 제1 중첩 길이(203)는 제2 중첩 길이(218)보다 크고, 상기 제2 중첩 길이(218)는 제3중첩 길이(229)보다 크거나 또는 제로 중첩보다 크고, 특정 윈도우가, 2개의 시간 인접 중첩 윈도우 중의 하나가 과도 위치에서 제1 윈도우 계수를 갖고 2개의 시간 인접 중첩 윈도우 중의 다른 하나가 과도 위치에서 제2 윈도우 계수를 갖도록, 과도 위치에 기초하여 선택되며, 제2 계수가 제1 계수보다 적어도 9배 크다.
Description
본 발명은 오디오 또는 이미지 신호의 프로세싱에 관한 것으로, 특히, 과도 상태의 존재시 오디오 또는 이미지 신호의 인코딩 또는 디코딩에 관한 것이다.
중첩(overlapping) FFT 또는 MDCT(modified discrete cosine transform)에 기초한 현대의 주파수 도메인 스피치/오디오 코딩 방식은 비정지(non-stationary) 신호 특성에 대한 약간의 적응을 제공한다. IETF에 의해 특정된 오퍼스(Opus)/셀트(Celt) 코덱 [2] 뿐만 아니라 MPEG, 즉, MP3로서 더 잘 알려진 MPEG-1 레이어 3, MPEG-4(HE-)AAC [1] 및 가장 최근의 MPEG-0 xHE-AAC(USAC)에서 표준화된 범용 코덱 은 적어도 2개의 상이한 변환 길이, 즉, 정지 신호 통과(passages)를 위한 길이(M)의 긴 변환(long transform) 또는 길이 M/8의 8개의 짧은 변환(short transforms) 중의 하나를 이용한 프레임의 코딩을 허용한다. MPEG 코덱의 경우, 긴 변환으로부터 짧은 변환 및 짧은 변환으로부터 긴 변환으로의 스위칭(또한 블록 스위칭이라 함)은 비대칭으로 윈도윙된 과도 변환(asymmetrically windowed transition transforms), 즉, 시작 및 정지 윈도우의 사용을 요구한다. 이들 변환 형상(transform shape)은 다른 알려진 종래 형상과 함께 도 16에 도시된다. 선형 중첩 슬로프는 단지 설명하기 위한 것이며 정확한 형상에 있어서 변한다. 가능한 윈도우 형상은 AAC 표준 [1] 및 [3]의 섹션 6에 주어진다.
다가올 프레임이 MPEG 인코더에 의해 짧은 변환으로 코딩되는 것을 고려하면, 현재 프레임은 시작 과도 변환으로 코딩되어야 하고, 상술한 MPEG 표준 중의 하나에 따라 구현되는 인코더가 미리보기(look-ahead)의 적어도 하나의 프레임 길이를 요구한다는 것이 명백해진다. 그러나, 로우-딜레이(low-delay) 통신 애플리케이션에서, 이 추가의 미리보기를 최소화 또는 심지어 피하는 것이 바람직하다. 이 때문에, 범용 코딩 패러다임에 대한 2개의 변형이 제안되었다. 예를 들어 셀트(Celt)[2]에서 채택한 하나의 변형은 긴 변환의 중첩을 짧은 변환의 중첩으로 감소시켜 비대칭 과도 윈도우를 피하는 것이다. 예를 들어 MPEG-4 (인핸스드, Enhanced) 낮은 딜레이 AAC 코딩 방식에서 사용되는 다른 변형은, 더 짧은 변환으로의 스위칭을 허용하지 않고 대신 긴 변환 계수에 동작하는 TNS(Temporal Noise Shaping) 코딩 툴[4]에 의존하여 과도 상태 주변의 코딩 에러의 일시적인 확산(temporal spread)을 최소화하는 것이다.
또한, xHE-AAC처럼, 낮은 딜레이 AAC는 2개의 프레임 중첩 폭, 즉, 정지 입력에 대한 디폴트 50% 중첩 또는 비정지 신호에 대한 감소된 중첩(과도 변환의 짧은 중첩과 유사)의 사용을 허용한다. 감소된 중첩은 변환의 시간 연장을 효율적으로 제한하고, 따라서, 계수 양자화의 경우 그 코딩 에러를 효율적으로 제한한다.
소니 코오포레이션(Sony Corp.)에 양도된 미국 특허 5502789 및 5819214 뿐만 아니라 삼성 전자(Samsung Electronics Co.)에 양도된 미국 특허 2008/0140428A 1는 신호 적응 윈도우 또는 변환 사이즈 결정 유닛을 개시한다. 그러나, 상기 윈도우 또는 변환 사이즈 결정 유닛에 의해 제어되는 변환 유닛은 본 케이스에서처럼 시간 도메인 풀-밴드 입력 신호에 직접 동작하는 것과 대조적으로 (기술된 시스템이 캐스케이드 필터 뱅크 또는 변환을 채용하는 것을 암시하는) QMF 또는 LOT 서브밴드 값에 동작한다. 또한, 2008/0140428A 1에서는, 윈도우 중첩의 형상 또는 제어에 대한 세부사항이 기재되지 않고, 5819214에서는, 중첩 형상이 변환 사이즈 결정 유닛으로부터의 출력을 따르고, 즉, 변환 사이즈 결정 유닛으로부터의 출력의 결과이고, 이는 본 발명의 바람직한 실시예가 제안하는 것과 반대이다.
프랑스 텔레콤(France Telecom)에게 양도된 미국 특허 2010/007675A1는 본 발명과 동일한 동기를 따르고, 즉, 통신 코딩 시나리오에서 변환 길이 스위칭을 수행하여 과도 신호 세그먼트의 코딩을 개선할 수 있고 추가의 인코더 미리보기 없이 그렇게 할 수 있다. 그러나, 상기 문서는 낮은 딜레이 목적이 변환 길이 과도 윈도우를 피하고 디코더에서 재구성된 신호를 포스트 프로세싱함으로써(불리하게 코딩 에러 및 디코딩된 신호의 일부의 증폭에 의해) 달성된다는 것을 드러내지만, 본 발명은 추가의 인코더 미리보기가 최소화되고 특수한(위험한) 디코더 포스트프로세싱을 피할 수 있도록 이하에서 도입될 종래 기술의 과도 윈도우의 단순한 변형을 제안한다.
진보적인 변형이 적용되는 과도 변환은 삼성 전자에 양도된 미국 특허 2006/0122825A 1에서의 약간 다른 형태 뿐만 아니라 프라운호퍼 게젤샤프트 이.브이.(Fraunhofer-Gesellschaft e.V.) 및 돌비 레이버레이토리스 라이센싱 코오포레이션(Dolby Laboratories Licensing Corp.)에 양도된 미국 특허 5848391에서의 2가지 변종(variants)에 기재된 시작 윈도우이다. 도 16은 이들 시작 윈도우를 나타내고 프라운호퍼/돌비 윈도우 및 삼성 윈도우 간의 차이가 비중첩 세그먼트, 즉, 임의의 중첩 슬로프에 속하지 않는 일정한 최대 값을 갖는 윈도우의 영역의 존재라는 것을 드러낸다. 프라운호퍼/돌비 윈도우는 "길이를 갖는 비중첩 부분"을 나타내고, 삼성 윈도우는 나타내지 않는다. 최소량의 추가 미리보기를 갖지만 종래의 변환 스위칭을 이용하는 윈도우가 삼성 과도 윈도우 어프로치를 채용함으로써 실현되는 것으로 결론지울수 있다. 이러한 변환으로, 신호 과도 상태 전에 긴 변환으로부터 짧은 변환으로 완전히 스위칭하는데 짧은 변환 사이의 중첩 폭과 동일한 미리보기이면 충분하다.
또한, 종래 기술은 WO 90/09063 또는 "Coding of audio signals with overlap block transform and adaptive window functions", Frequenz, Band 43, 1989년 9월, 2052-2056 페이지, 또는 AES Convention Paper 4929, "MPEG-4 Low Delay Audio Coding based on the AAC Codec", E. Allamanche 등, 106 Convention, 1999에서 찾을 수 있다.
그럼에도 불구하고, 짧은 변환의 길이에 따라, 미리보기는 여전히 상당히 크고 피해야 한다. 도 17은 더 나쁜 경우의 입력 상황 동안, 즉, 미리보기 영역의 시작시의 갑작스런 과도의 존재시의 블록 스위칭 수행을 나타내고, 이는 긴 슬로프의 끝, 즉, 프레임 사이의 중첩 영역에서 시작한다. 종래의 어프로치에 따르면, 2개의 도시된 과도상태 중의 적어도 하나가 과도 변환에 도달한다. 추가의 미리보기가 없는 인코더, 즉, "다가오는 과도 상태를 보지 않는" 인코더를 이용한 손실있는 코딩 시스템에서, 이 상태는 긴 슬로프의 시작까지 코딩의 일시적인 확산을 유발하고, 심지어, TNS를 이용할 때에도, 프리-에코(pre-echo) 잡음이 디코딩 신호에서 들릴 가능성이 있다.
상술한 2개의 미리보기 동작은 단점을 갖는다. 셀트(Celt) 코더에서처럼, 한편으로는, 8까지의 팩터만큼 긴 변환을 감소시키는 것은 정지, 특히, 높은 음조의 입력 자료(highly tonal, input material)에 대한 효과(즉, 코딩 이득, 스펙트럼 압축(compaction))을 심하게 제한한다. 다른 한편으로는, (인핸스드) 낮은 딜레이 AAC에서처럼, 짧은 변환을 금하는 것은 프레임 길이보다 훨씬 작은 듀레이션(지속 기간, duration)을 갖는 강한 과도 상태에 대한 코덱 성능을 감소시키고, 종종 TNS를 사용할 때에조차도 프리(pre) 또는 포스트(post)-에코가 들리게 한다.
따라서, 종래의 윈도우 시퀀스 결정 절차는 제한된 윈도우 길이 때문에 유연성에 있어서 최적의 상태에 미치지 못하거나, 최소 요구 과도 상태 미리보기 기간 때문에 필요한 딜레이에 대하여 최적의 상태에 미치지 못하거나, 프리 및 포스트-에코 때문에 오디오 품질에 대하여 최적의 상태에 미치지 못하거나, 소정의 윈도우를 갖는 윈도우잉 절차(windowing procedures) 외에 추가의 기능을 이용하는 잠재적으로 필요한 추가의 프리프로세싱 때문에 효율에 대하여 최적의 상태에 미치지 못하거나, 과도 상태의 존재시 프레임/블록 래스터(raster)의 변경의 잠재적인 필요성 때문에 유연성 및 효율성에 대하여 최적의 상태에 미치지 못한다.
본 발명의 목적은 종래의 단점 중의 적어도 하나에 대하여 개선된 성능을 제공하는 오디오 인코딩/디코딩의 개선된 개념을 제공하는 것이다.
본 목적은 청구항 1의 오디오 또는 이미지 신호를 인코딩하는 장치, 청구항 17의 오디오 또는 이미지 신호를 디코딩하는 장치, 청구항 32의 오디오 또는 이미지 신호를 인코딩하는 방법, 청구항 33의 오디오 또는 이미지 신호를 디코딩하는 방법 또는 청구항 34의 컴퓨터 프로그램에 의해 달성된다.
본 발명의 양태는, 낮은 딜레이 오디오 또는 이미지 코덱이 범용 코덱의 코딩 품질에 근접하도록 하기 위하여, 정지 신호 입력 동안 긴 변환 간의 높은 중첩 퍼센티지를 유지하고 신호 비정지(non-stationarities)를 둘러싸는 오디오 또는 이미지 신호 부분에서 더 짧은 중첩 및 변환으로의 즉각적인 스위칭을 허용하는 것이 유용하다는 결론에 의존한다. 또한, 중첩 폭에 대하여 및 추가적으로 또는 대안으로 변환 길이에 대하여 이진 선택(binary choice)만을 제공하는 것보다 다소 큰 유연성을 허용하여, 프리-에코 또는 다른 아티팩트(artifacts)를 최소화하기 위하여 프레임 내의 변환(들)의 길이 또는 중첩 폭이 프레임의 시간 영역 내의 가능한 과도 상태의 위치에 기초하여 정확하게 적용되도록 하는 것이 바람직하다.
특히, 과도 위치 검출기는 프레임의 과도 미리보기 영역 내의 과도 위치를 확인하도록 구성되고, 프레임 내의 과도 위치에 기초하여 적어도 3개의 윈도우의 그룹으로부터 특정 윈도우가 선택되고, 이들 3개의 윈도우는 해당 인접 윈도우와의 중첩 길이에 대하여 다르다. 따라서, 제1 윈도우는 제2 윈도우보다 큰 중첩 길이를 갖고, 제2 윈도우는 제3 윈도우의 중첩 길이보다 큰 중첩 길이를 갖고, 제3 윈도우는 대안으로 제로 중첩(zero overlap)을 갖는, 즉, 중첩을 가지지 않을 수 있다. 특정 윈도우는 과도 위치에 기초하여 선택되어 2개의 시간 인접 중첩 윈도우 중의 하나가 과도 위치에서 제1 윈도우 계수를 갖고 2개의 시간 인접 중첩 윈도우 중의 다른 하나가 과도 위치에서 제2 윈도우 계수를 가질 수 있고, 제2 계수는 제1 계수보다 적어도 9배 크다. 따라서, 제1 윈도우에 대하여 과도 위치는 충분히 억제되고, 제2 윈도우에 대하여 과도 상태는 충분히 확보(captured)된다. 즉, 바람직하게, 이전 윈도우는 과도 상태가 검출된 과도 위치에서 이미 제로에 가까운 값이고 제2 윈도우는 이 영역에서 1과 근접하거나 동일한 윈도우 계수를 가져, 과도 상태의 적어도 일 부분 동안 과도 상태가 이전 윈도우에서 억제되고 다음 또는 나중의 윈도우에서는 억제되지 않는다.
구현예에서, 중첩 길이는 정수 팩터만큼 달라, 제2 중첩 길이는 예를 들어 제3 중첩 길이의 절반과 동일하고, 제3 중첩 길이는 제2 중첩 길이의 절방과 동일하거나 제2 중첩 길이와 상이한 팩터만큼 다르지만 적어도 64개의 샘플보다 크거나 같거나 적어도 32개의 샘플보다 크거나 같거나 심지어 적어도 16개의 오디오 또는 이미지 샘플보다 크거나 같다.
과도 위치로부터 도출된 윈도우 선택은 오디오 또는 이미지 신호의 프레임과 함께 송신되어 디코더는 분석 윈도우의 인코더 선택과 함께 대응하는 합성 윈도우를 선택할 수 있고, 따라서, 전체 인코딩/디코딩 동작에 걸쳐 인코더 및 디코더가 동기화되도록 한다.
구현예에서, 제어가능 윈도워, 변환기, 과도 위치 검출기 및 제어기는 인코딩 장치를 형성하고, 변환기는 MDCT(modified discrete cosine transform), DST(modified discrete sine transform) 또는 임의의 다른 유사한 변환 등의 기지의 앨리어싱 도입 변환 중의 임의의 것을 적용한다. 디코더 측에서, 프로세서는 디코더에 의해 수신된 윈도우 정보에 의해 지시된 윈도우 시퀀스에 따라 중첩 가산 프로세싱을 이용하여 스펙트럼 값의 블록의 시퀀스를 시간 도메인 표현으로 변환하기 위하여 제어가능 변환기와 협력한다.
구현예에 따라, 변환 중첩 선택에 더하여 변환 길이 스위칭이 프레임 내의 과도 위치에 기초하여 구현될 수 있다. 적어도 3개의 윈도우가 서로 중첩하는 다중 중첩 섹션을 구현함으로써, 이전 개념에 대하여 요구되는 과도 미리보기 지연을 실질적으로 감소시키는 매우 낮은 딜레이 코덱 개념이 실현된다. 추가의 구현예에서, 각 프레임에 대한 중첩 코드를 결정하기 위하여 중첩 선택을 먼저 수행하고 후속으로 변환 길이 결정을 수행하는 것이 바람직하다. 대안으로, 변환 길이 스위칭 결정은 중첩 폭 결정과 독립적으로 수행될 수 있고, 이들 2개의 결정에 기초하여 중첩 코드가 결정된다. 현재 프레임에 대한 중첩 코드 및 이전 프레임의 중첩 코드에 기초하여, 특정 과도 상태에 대한 윈도우 시퀀스 선택이 수행되고, 이에 기초하여 디코더 뿐만 아니라 인코더가 서로 동기하여 동작한다.
추가의 양태에 있어서, 윈도우 시퀀스 제어기, 프리프로세서 및 스펙트럼 변환기는 함께 인코딩된 신호를 생성하는 장치를 구성하고, 3개의 윈도우는 다중 중첩 부분을 갖는다. 종래의 기술에서처럼 2개의 윈도우 뿐만 아니라 3개의 윈도우가 서로 중첩하는 다중 중첩 부분은 과도 미리보기가 될 필수 딜레이가 더 감소된다는 사실 때문에 매우 낮은 딜레이 개념을 허용한다. 해당 디코더는 디코더 프로세서, 시간 변환기 및 포스트 프로세서에 의해 형성된다. 포스트 프로세서 및 프리프로세서는 인코더측 및 디코더에서 하나 및 동일 보조 윈도우를 이용하여 추가의 윈도윙 동작을 수행하여, 필수 ROM 또는 RAM 저장이 가능한 한 작은 모바일 장치 또는 저비용 장치에서 효율적인 구현이 특히 얻어질 수 있다.
바람직한 실시예는 특정한 윈도우 시퀀스 및 상이한 길이를 갖는 윈도우의 특정 상호작용에 의존하여, 긴 프리 또는 포스트-에코를 피하기 위하여 짧은 길이 윈도우는 과도 영역에 "배치"된다. 다중 중첩 부분이 오디오 또는 이미지 아티팩트를 유발하지 않도록 하기 위하여, 인코더 측상의 프리프로세서는 보조 윈도우 함수를 이용한 윈도윙 동작 및 폴딩-인 동작을 이용한 프리프로세싱 동작을 수행하여 변형된 다중 중첩 부분을 얻고, 이 변형된 다중 중첩 부분은 앨리어싱 도입 변환을 이용하여 공간 도메인으로 변환된다. 디코더 측에서, 해당 포스트프로세서는 해당 변환 후 시간 표현으로의 폴딩-아웃 동작을 수행하도록 구성되고, 폴딩-아웃 동작 후속으로, 보조 윈도우 함수를 이용한 윈도윙 및 긴 윈도우에 의한 윈도우 동작에 의해 발생하는 샘플의 선행 블록과의 최종 중첩 가산이 수행된다.
변환 중첩 선택이 수행되는 실시예에서, 증가된 오디오 또는 이미지 품질이 얻어진다.
(큰/최대 또는 작은)변환 중첩 폭의 이진 선택만을 채용하는 기존 코딩 시스템과 달리, 실시예는 인코더가 프레임(또는 선택적으로 변환)에 기초하여 최대 중첩, 절반 중첩 또는 최소 중첩을 선택하는 3개의 중첩 윈도우의 세트를 제안한다. 바람직한 실시예에서 기술하는 바와 같이, 최대 중첩은 AAC에서의 긴 변환에 대한 프레임 길이와 동일, 즉, 50% 중첩이지만, 프레임 길이의 절반, 즉, 33% 중첩 또는 그 이하와 동일할 수 있다. 따라서, 상기 바람직한 실시예가 증명한 것처럼, 최소 중첩은 제로의 중첩 폭, 즉, 중첩이 없음을 나타낼 수 있지만, 매우 작은 수의 시간 샘플 또는 밀리초의 0보다 큰 중첩을 나타낼 수 있다. 마지막으로, 절반 중첩은 최대 중첩의 절반일 수 있으나, 반드시 그러한 것은 아니다.
특히, 본 발명의 양태에 따르면, 각 프레임에 대하여(또는 선택적으로 프레임 내의 각 변환에 대하여) 3개의 가능한 중첩 폭 중의 하나를 선택하는 중첩 폭 결정 유닛이 정의된다. 더 정밀하게, 상기 중첩 폭 결정 유닛은 현재 프레임 내(또는 선택적으로 현재 프레임의 변환 내)의 과도 위치를 충분한 정확도로 확인하고 다음의 2개의 목적 중의 적어도 하나가 달성되도록 중첩 폭을 도출하기 위하여 입력으로서 과도 검출 유닛의 출력을 갖는다.
- 폭은 중첩 변환 중의 하나만이 과도 상태를 포함하도록 선택된다.
- 코딩 에러의 시간 앨리어싱 TNS 쉐이핑에 의한 의사 과도 상태가 강하게 억제된다.
즉, 주어진 프레임에 위치하는 지각적으로 코딩되는 과도 상태 주변에서 프리 또는 포스트-에코를 방지할 목적으로 중첩 폭이 결정된다. 과도 상태의 정확한 위치를 결정하는 수단을 고려한 소정의 자유도가 가능함을 주의해야 한다. 과도 위치를 지정하는 시간 또는 서브블록 인덱스는 바람직한 실시예에서처럼 과도 위치의 시작(start(onset))과 동일할 수 있지만, 과도 상태의 최대 에너지 또는 진폭 또는 에너지의 중심의 위치일 수 있다.
또한, 한 쌍의 프레임에 대한 변환 길이의 주어진 선택으로부터 즉각적인 변환간 중첩을 도출하는 종래 코딩 방식(즉, 중첩 폭은 변환 사이즈 결정 유닛의 출력을 따른다)과 달리, 본 발명의 다른 양태에 따르면, 특정 프레임에 부여된 중첩 폭을 이용하여 특정 프레임에 사용될 변환 길이(들) 및, 선택적으로, 이전 프레임의 중첩 폭을 제어 또는 도출한다(즉, 변환 사이즈는 중첩 폭 결정 유닛의 데이터를 따른다).
다중 중첩 부분이 사용되거나 변환 길이 스위칭이 적용되는 추가의 실시예에서, 특히 낮은 딜레이 개념이 얻어진다.
종래의 블록 스위칭 방식에 대한 개선은 절반만큼 감소될 신호 비정지 동안 안정한 품질의 동작에 요구되는 추가의 인코더 미리보기를 허용하는 도 16의 과도 변환에 대한 유리한 변형이다. 상술한 바와 같이, 프라운호퍼/돌비 또는 삼성에 의해 제안된 시작 윈도우는 "길이를 갖는 비중첩 부분"의 존재 또는 부재에 의해 특징화된다. 실시예는 심지어 더 나아가서 과도 윈도우의 좌측 및 우측 중첩 슬로프가 서로로 연장하도록 한다. 즉, 변형된 과도 변형은 다음의 짧은 변환 뿐만 아니라 이전 프레임의 긴 변환과 중첩하는 넌-제로 길이의 "이중 중첩(double-overlapping) 영역을 나타낸다. 진보적인 과도 변환의 결과적인 형상은 도 13에 도시된다. 도 17에 도시된 삼성 과도 윈도우와 비교하여, 변환에 "이중 중첩" 영역을 허용함으로써, 변환의 우측 상의 짧은 중첩 슬로프가 짧은 변환 중첩 폭의 절반만큼 좌측으로 시프트되고, 따라서, 필수 인코더 미리보기가 짧은 변환 중첩 폭의 절반만큼 감소될 수 있음이 명백하다. 이러한 변형 과도 윈도우의 감소된 길이는 특히 모바일 장치에 대하여 구현예를 이용하는 3개의 중대한 이점을 갖는다.
변환 커널, 즉, 랩 (lapped) 시간/주파수 변환(바람직하게 MDCT)으로부터의 계수 벡터의 길이는 정확하게 2개의 긴 변환 사이의 중첩 영역의 폭의 절반이다. 상기 긴 중첩 폭이 프레임 길이 또는 프레임 길이의 절반인 것을 고려하면, 도 13에서 알 수 있는 바와 같이, 이것은 진보적인 변환 윈도우 및 후속의 짧은 윈도우가 완전히 프레임 그리드에 꼭 들어맞고 결과적인 코덱의 모든 변환 사이즈가 2개의 팩터의 정수 파워와 관련된다는 것을 암시한다.
- 도 17 및 13에 도시된 과도 위치는 과도 변환 밖에 위치하여, 과도 상태에 의한 코딩 에러의 시간적 스미어링(temporal smearing)이 변환을 뒤따르는 처음 2개의 짧은 윈도우의 연장선 내로 제한될 수 있다. 그러므로, 종래의 프라운호퍼/돌비 및 삼성 방식과 달리, 도 13의 진보적인 블록 스위칭 어프로치를 이용할 때 과도 상태 주변의 가청 프리-에코 잡음이 발생할 가능성이 없다.
- 인코더 및 디코더는 순방향 및 역 변환에 대하여 정확히 동일한 윈도우를 이용할 수 있다. 인코딩 및 디코딩을 수행하는 통신 장치에서, 단 하나의 윈도우 데이터 세트만이 ROM에 저장될 필요가 있다. 또한, 추가의 프로그램 ROM 및/또는 RAM을 필요로 하는 신호의 특수 프리(pre) 및 포스트(post) 프로세싱을 또한 피할 수 있다.
전통적으로, 본 발명에서와 같이 "이중 중첩" 세그먼트를 갖는 과도 윈도우가 스피치 또는 오디오 또는 이미지 코딩에 사용되지 않았는데, 그 이유는 변환 계수의 양자화의 부재시 완전한 파형 재구성을 확보하는 소정의 원칙을 위반하는 것으로 생각했기 때문이다. 그러나, 진보적인 과도 변환을 이용할 때 정확하게 입력을 재구성할 수 있고, 또한, 프랑스 텔레콤 제안에서처럼 특수 디코더측 포스트 프로세싱이 요구되지 않는다.
추가로 설명하는 바와 같이, 상기 진보적인 과도 윈도우의 사용은 변환 길이 결정 유닛 대신 또는 그에 더하여 진보적인 중첩 폭 결정 유닛에 의해 제어될 수 있음을 강조할 가치가 있다.
후속으로, 본 발명의 바람직한 실시예가 더 상세히 기재되고 도시된다. 또한, 추가의 실시예가 정의된 종속항을 참조한다.
또한, 명세서는 특히 도 1a 내지 7에 대하여 과도 위치 적응 중첩 스위칭에 관련된 양태를 나타낸다. 다중 중첩 부분에 관련된 다른 양태는 도 8a 내지 15f에 대하여 도시되고 기재된다. 이들 개별 양태는 서로 독립적으로 구현될 수 있고, 즉, 중첩 스위칭은 다중 중첩 영역 없이 적용되거나 다중 중첩 영역이 과도 위치 적응 중첩 스위칭 없이 적용될 수 있다. 그러나, 구현예에서, 양 양태가 결합되어 과도 위치 적응 중첩 스위칭 및 다중 중첩 영역을 갖는 인코딩/디코딩 개념을 유발할 수 있다. 이러한 개념은 프레임의 과도 미리보기 영역 내의 과도 위치에 따라 변환 길이 스위칭 절차에 의해 추가적으로 향상될 수 있다. 변환 길이 스위칭은 중첩 폭 결정에 의존하여 또는 중첩 스위칭과 독립적으로 수행될 수 있다.
본 발명은 오디오 신호 뿐만 아니라 비디오, 픽쳐 또는 일반적으로 이미지 신호에도 유용하다. 예를 들어, 스틸 이미지 또는 AVC 또는 그보다 덜 진보되거나 더 진보된 기술에서의 소위 I 픽쳐에서, 본 발명이 적용되어 블록킹 아티팩트를 피할 수 있다. 이미지 필드에서의 과도 상태는 날카로운 에지일 수 있고 프레임은 예를 들어 매크로블록에 대응한다. 이미지는 바람직하게 앨리어싱 도입 변환 및 해당 공간 중첩을 이용하여 이차원적으로 인코딩된다. 이것은 한편으로는 블록킹 아티팩트를 감소시키고 다른 한편으로는 과도 부분, 즉, 날카로운 에지를 갖는 부분에 의한 임의의 다른 아티팩트를 감소시킨다. 그러므로, 개시물 전체에 걸쳐 특별히 지시되지 않지만 후속의 개시물은 이미지 신호에도 동등하게 적용된다.
본 발명에 따르면, 개선된 성능을 제공하는 오디오 인코딩/디코딩의 개선된 개념을 제공할 수 있다.
실시예 및 양태는 첨부된 도면을 참조하여 후술한다.
도 1a는 중첩 스위칭 양태의 컨텍스트에서의 인코딩 장치를 나타내는 도면.
도 1b는 중첩 스위칭의 양태에 대한 디코딩 장치를 나타내는 도면.
도 2a는 인접하는 윈도우 사이의 전체 중첩(full overlap)을 갖는 윈도우 시퀀스를 나타내는 도면.
도 2b는 2개의 인접하는 윈도우 사이의 절반 중첩(half overlap)을 갖는 윈도우 시퀀스를 나타내는 도면.
도 2c는 인접하는 윈도우 사이의 1/4 중첩 및 인접하는 윈도우 사이의 절반 중첩 및 인접하는 윈도우 사이의 후속 전체 중첩을 갖는 윈도우 시퀀스를 나타내는 도면.
도 3a 및 3c는 TCX 20에서 20ms 변환 길이를 갖는 실시예에 대하여 상이한 과도 위치에 대한 상이한 중첩 폭을 나타내는 도면.
도 4a 내지 4g는 과도 위치에 의존하는 TCX 10 등의 10ms 변환 길이에 대한 변환 중첩 길이의 선택을 나타내는 도면.
도 5a 내지 5c는 중첩 폭의 인코딩을 나타내는 도면.
도 6a는 과도 위치에 기초한 중첩 폭 및 변환 길이의 코딩을 나타내는 도면.
도 6b는 변환 길이 결정 표를 나타내는 도면.
도 7은 이전 및 현재의 중첩 코드에 의존하는 상이한 윈도우 시퀀스를 나타내는 도면.
도 8a는 본 발명의 실시예에서의 다중 중첩 부분의 컨텍스트에서의 인코더를 나타내는 도면.
도 8d는 본 발명의 실시예에서의 다중 중첩 부분의 양태에 대한 디코더를 나타내는 도면.
도 9a는 인코더 측을 나타내는 바람직한 실시예에 따른 절차를 나타내는 도면.
도 9b는 인코더 측에 대하여 수행되는 바람직한 절차의 플로우챠트.
도 10a는 디코더 측에 대하여 수행되는 절차의 추가의 실시예를 나타내는 도면.
도 11a는 실시예의 인코더 측에 대하여 수행되는 동작을 나타내는 도면.
도 11b는 본 발명의 실시예에서의 디코더에 의해 수행되는 동작을 나타내는 도면.
도 12a 및 도 12b는 본 발명의 다중 중첩 양태의 컨텍스트에서 인코더/디코더 측에 대하여 수행될 절차의 추가의 실시예를 나타내는 도면.
도 13은 다중 중첩 부분을 갖는 상이한 윈도우 시퀀스를 나타내는 도면.
도 14a는 과도 위치에 의존하는 스위칭된 변환 길이를 갖는 윈도우 시퀀스를 나타내는 도면.
도 14b는 다중 중첩 부분을 갖는 추가의 윈도우 시퀀스를 나타내는 도면.
도 15a 내지 15f는 상이한 윈도우 시퀀스 및 해당 미리보기 부분 및 프리-에코(pre-echo)를 나타내는 도면.
도 16은 종래의 윈도우 형상을 나타내는 도면.
도 17은 도 16의 윈도우 형상에 의해 형성된 종래의 윈도우 시퀀스를 나타내는 도면.
도 1a는 중첩 스위칭 양태의 컨텍스트에서의 인코딩 장치를 나타내는 도면.
도 1b는 중첩 스위칭의 양태에 대한 디코딩 장치를 나타내는 도면.
도 2a는 인접하는 윈도우 사이의 전체 중첩(full overlap)을 갖는 윈도우 시퀀스를 나타내는 도면.
도 2b는 2개의 인접하는 윈도우 사이의 절반 중첩(half overlap)을 갖는 윈도우 시퀀스를 나타내는 도면.
도 2c는 인접하는 윈도우 사이의 1/4 중첩 및 인접하는 윈도우 사이의 절반 중첩 및 인접하는 윈도우 사이의 후속 전체 중첩을 갖는 윈도우 시퀀스를 나타내는 도면.
도 3a 및 3c는 TCX 20에서 20ms 변환 길이를 갖는 실시예에 대하여 상이한 과도 위치에 대한 상이한 중첩 폭을 나타내는 도면.
도 4a 내지 4g는 과도 위치에 의존하는 TCX 10 등의 10ms 변환 길이에 대한 변환 중첩 길이의 선택을 나타내는 도면.
도 5a 내지 5c는 중첩 폭의 인코딩을 나타내는 도면.
도 6a는 과도 위치에 기초한 중첩 폭 및 변환 길이의 코딩을 나타내는 도면.
도 6b는 변환 길이 결정 표를 나타내는 도면.
도 7은 이전 및 현재의 중첩 코드에 의존하는 상이한 윈도우 시퀀스를 나타내는 도면.
도 8a는 본 발명의 실시예에서의 다중 중첩 부분의 컨텍스트에서의 인코더를 나타내는 도면.
도 8d는 본 발명의 실시예에서의 다중 중첩 부분의 양태에 대한 디코더를 나타내는 도면.
도 9a는 인코더 측을 나타내는 바람직한 실시예에 따른 절차를 나타내는 도면.
도 9b는 인코더 측에 대하여 수행되는 바람직한 절차의 플로우챠트.
도 10a는 디코더 측에 대하여 수행되는 절차의 추가의 실시예를 나타내는 도면.
도 11a는 실시예의 인코더 측에 대하여 수행되는 동작을 나타내는 도면.
도 11b는 본 발명의 실시예에서의 디코더에 의해 수행되는 동작을 나타내는 도면.
도 12a 및 도 12b는 본 발명의 다중 중첩 양태의 컨텍스트에서 인코더/디코더 측에 대하여 수행될 절차의 추가의 실시예를 나타내는 도면.
도 13은 다중 중첩 부분을 갖는 상이한 윈도우 시퀀스를 나타내는 도면.
도 14a는 과도 위치에 의존하는 스위칭된 변환 길이를 갖는 윈도우 시퀀스를 나타내는 도면.
도 14b는 다중 중첩 부분을 갖는 추가의 윈도우 시퀀스를 나타내는 도면.
도 15a 내지 15f는 상이한 윈도우 시퀀스 및 해당 미리보기 부분 및 프리-에코(pre-echo)를 나타내는 도면.
도 16은 종래의 윈도우 형상을 나타내는 도면.
도 17은 도 16의 윈도우 형상에 의해 형성된 종래의 윈도우 시퀀스를 나타내는 도면.
도 1a는 오디오 신호(100)를 인코딩하는 장치를 나타낸다. 오디오 신호를 인코딩하는 장치는 오디오 신호(100)를 윈도윙하여 103의 윈도윙된 샘플의 블록의 시퀀스를 제공하는 제어가능 윈도워(windower)(102)를 포함한다. 디코더는 또한 윈도윙된 샘플의 블록의 시퀀스(103)를 105에서 지시된 스펙트럼 값의 프레임의 시퀀스를 포함하는 스펙트럼 표현(spectral representation)으로 변환하는 변환기(104)를 더 포함한다. 또한, 과도 위치 검출기(106)가 제공된다. 검출기는 프레임의 과도 미리보기 영역 내의 과도 위치를 확인하도록 구성된다. 또한, 제어가능 윈도워를 제어하는 제어기(108)는 107에 도시된 확인된 과도 위치에 응답하여 오디오 신호(100)에 특정 중첩 길이를 갖는 특정 윈도우를 적용하도록 구성된다. 또한, 실시예에서, 제어기(108)는 제어가능 윈도워(102) 뿐만 아니라 출력에서 인코딩된 오디오 신호(115)를 제공하는 출력 인터페이스(114)로 윈도우 정보(112)를 제공하도록 구성된다. 스펙트럼 값의 프레임의 시퀀스(105)를 포함하는 스펙트럼 표현은 인코딩 프로세서(110)에 입력되고, 인코딩 프로세서는 바람직하게 음향 심리학 모델 또는 적어도 음향 심리학 원리에 대하여 예측 동작, 시간 잡음 쉐이핑(shaping) 동작, 양자화 동작 등의 임의의 종류의 인코딩 동작을 수행할 수 있거나 허프만(Huffman) 인코딩 동작 또는 산술 인코딩 동작 등의 리던던시 감소(redundancy-reducing) 인코딩 동작을 포함할 수 있다. 인코딩 프로세서(110)의 출력은 출력 인터페이스(114)로 향하고, 출력 인터페이스(114)는 최종적으로 소정의 윈도우 정보(112)와 연관된 인코딩된 오디오 신호를 각각의 인코딩된 프레임에 제공한다.
제어기(108)는 적어도 3개의 윈도우의 그룹으로부터 특정 윈도우를 선택하도록 구성된다. 그룹은 제1 중첩 길이를 갖는 제1 윈도우, 제2 중첩 길이를 갖는 제2 윈도우, 제3 중첩 길이를 갖거나 중첩이 없는 제3 윈도우를 포함한다. 제1 중첩 길이는 제2 중첩 길이보다 크고 제2 중첩 길이는 제로 중첩보다 크다. 특정 윈도우는, 2개의 시간 인접 중첩 윈도우 중의 하나가 과도 위치에서 제1 윈도우 계수를 갖고 2개의 시간 인접 중첩 윈도우 중의 다른 하나가 과도 위치에서 제2 윈도우 계수를 갖고 제2 계수가 제1 계수보다 적어도 9배 크도록, 과도 위치에 기초하여 제어가능 윈도워(102)에 의해 선택된다. 이것은 제1(작은) 계수를 갖는 제1 윈도우에 의해 과도 상태가 실질적으로 억제되고 과도 상태가 제2 윈도우 계수를 갖는 제2 윈도우에 의해 영향을 받지 않도록 한다. 바람직하게, 제1 윈도우 계수는 0.95 및 1.05 등의 플러스/마이너스 5%의 허용치 내에서 1과 동일하고, 제2 윈도우 계수는 바람직하게 0과 동일하고 적어도 0.05보다 작다. 윈도우 계수는 또한 네가티브일 수 있고, 이 경우, 윈도우 계수들의 관계 및 양은 절대 크기와 관련된다.
도 2는 제1 윈도우만을 갖는 윈도우 시퀀스를 나타내고, 제1 윈도우는 제1 중첩 길이를 갖는다. 특히, 지난 프레임은 제1 윈도우(200)와 연관되고, 현재 프레임은 윈도우(202)와 연관되고, 제3 또는 다음 프레임은 윈도우(204)와 연관된다. 이 실시예에서, 인접하는 윈도우는 50%, 즉, 전체 길이만큼 중첩된다. 또한, 프레임은 오디오 신호의 어느 부분이 프레임에 의해 프로세싱되는지를 확인하기 위하여 윈도우에 대하여 배치된다. 이것은 현재 프레임을 참조하여 설명한다. 현재 프레임은 좌측 부분(205a) 및 우측 부분(205b)을 갖는다. 대응하여, 지난 프레임은 우측 부분(204b) 및 좌측 부분(204a)를 갖는다. 유사하게, 다음 프레임은 좌측 부분(206a) 및 우측 부분(206b)을 갖는다. 좌측/우측은 도 2a에 도시된 바와 같이 시간에 있어서 빠르고 늦은 것을 지칭한다. 스펙트럼 값의 현재 프레임이 생성되면, 윈도우(202)에 의한 윈도윙에 의해 얻어진 오디오 샘플이 사용된다. 오디오 샘플은 부분(204b 내지 206a)에서 기인한다.
MDCT 프로세싱, 일반적으로, 앨리어싱-도입(aliasing-introducing) 변환을 이용한 프로세싱의 기술에서 알려진 바와 같이, 이 앨리어싱-도입 변환은 폴딩-인(folding-in) 단계 및 소정의 넌-앨리어싱 도입 변환을 이용한 후속 변환 단계로 분리될 수 있다. 도 2a 예에서, 섹션(204b)은 섹션(205a)으로 폴딩되고 섹션(206a)은 섹션(205b)에 폴딩된다. 폴딩 동작의 결과, 즉, 한편으로는 205a, 204b 및 206a 및 205b의 가중 조합은 DCT 변환 등의 변환을 이용하여 스펙트럼 도메인으로 변환된다. MDCT의 경우, DCT IV 변환이 적용된다.
후속으로, 이것은 MDCT에 대한 참조에 의해 예시되지만, 다른 앨리어싱-도입 변환이 유사한 또는 비슷한 방식으로 프로세싱될 수 있다. 랩 변환(lapped transform)으로서, MDCT는 (동일한 수 대신에) 입력의 절반의 출력을 갖는다는 점에서 다른 푸리에 관련 변환과 비교하여 약간 다르다. 특히, 그것은 선형 함수()이다(여기서, R은 실수의 세트를 나타낸다). 2N개의 실수(x0, ..., x2N-1)는 다음의 식에 따라 N개의 실수(X0, ..., XN-1)로 변환된다.
(이 변환 앞의 정규화 계수(normalization coefficient), 여기서, 1(unity)은 임의의 규약(convention)이고 처리마다 다르다. 이하의 MDCT 및 IMDCT의 정규화의 합(product)만이 제한된다).
역변환(inverse transform)
역 MDCT는 IMDCT로서 알려져 있다. 상이한 수의 입력 및 출력이 존재하기 때문에, 언뜻 보기에는, MDCT가 역전되지 않아야 할 것처럼 보일 수 있다. 그러나, 완전한 역전가능성(invertibility)은 시간 인접 중첩 블록의 중첩된 IMDCT를 추가함으로써 달성되어, 에러는 제거되고 원 데이터(original data)는 검색되도록 한다. 이 기술은 시간 도메인 앨리어싱 제거(TDAC; time-domain aliasing cancellation)로 알려져 있다.
IMDCT는 다음의 식에 따라 N개의 실수(X0, ..., XN-1)를 2N개의 실수(y0, ..., y2N-1)로 변환한다.
(DCT-IV에 대한 것처럼, 직교 변환에서, 역은 순방향 변환과 동일한 형태를 갖는다.)
통상의 윈도우 정규화(이하 참조)를 갖는 윈도윙된 MDCT의 경우, IMDCT 앞의 정규화 계수는 2로 승산(즉, 2/N이 됨)되어야 한다.
일반적인 신호 압축 애플리케이션에서, 변환 특성은, 함수가 이들 포인트에서 매끄럽게 제로로 가도록 함으로써 n=0 및 2N 경계에서의 불연속성을 피하기 위하여, 상기 MDCT 및 IMDCT 식에서 xn 및 yn과 승산되는 윈도우 함수(wn(n=0, ..., 2N-1))를 이용함으로써 더 개선된다. (즉, MDCT 전 및 IMDCT 후에 데이터를 윈도윙한다.) 원칙적으로, x 및 y는 상이한 윈도우 함수를 가질 수 있고, 윈도우 함수는 또한 (특히, 상이한 사이즈의 데이터 블록이 결합되는 경우) 한 블록으로부터 다음 블록으로 변경될 수 있지만, 간략화를 위해, 동일 사이즈의 블록에 대한 동일한 윈도우 함수의 공통 경우를 고려한다.
w가 프린센 브래들리(Princen-Bradley) 조건:
을 만족하는 한, 대칭 윈도우 wn=w2N-1-n에 대하여 변환은 여전히 역전가능하다(즉, TDAC 작업).
다양한 윈도우 함수가 이용된다. 변조된 랩 변환[3][4]으로서 알려진 형태를 생성하는 윈도우 는
에 의해 주어지고 MP3 및 MPEG-2 AAC에 사용되고, 보비스(Vorbis)에는
이 사용된다. AC-3은 KBD(Kaiser-Bessel derived) 윈도우를 이용하고 MPEG-4 AAC는 또한 KBD 윈도우를 이용한다.
MDCT에 적용된 윈도우가 임의의 다른 타입의 신호 분석에 사용되는 윈도우와 다르다는 것에 주의해야 하며, 그 이유는 프린센 브래들리 조건을 만족해야 하기 때문이다. 이 차이에 대한 이유 중의 하나는 MDCT 윈도우가 MDCT(분석) 및 IMDC(합성)에 2번 적용된다는 것이다.
정의의 조사에 의해 알 수 있는 바와 같이, 짝수 N에 대하여, MDCT는 DCT-IV와 근본적으로 동등하고, 여기서, 입력은 N/2만큼 시프트되고 데이터의 2개의 N블록은 동시에 변환된다. 이 동등을 좀더 주의하여 살펴봄으로써, TDAC와 같은 중요한 특성이 쉽게 도출될 수 있다.
DCT-IV로의 정밀한 관계를 정의하기 위하여, DCT-IV는 교호하는 짝수/홀수 경계 조건에 대응, 즉, (DFT에 대하여 주기적 경계 대신) 그 좌측 경계(n=-1/2) 주변)에서 짝수이고, 그 오른쪽 경계(n=N-1/2 주변)에서 홀수인 것 등을 실현해야 한다. 이것은 아이덴티티로부터 나온다. 따라서, 그 입력이
따라서, 그 입력이 길이(N)의 어레이(x)이면, 이 어레이를 (x, -xR, -x, xR, ...) 등으로 연장하는 것을 상상할 수 있고, xR은 역순의 x를 나타낸다.
2N개의 입력 및 N개의 출력을 갖는 MDCT를 고려하고, 여기서, 입력을 4개의 블록(a, b, c, d)로 분리하고, 그 각각의 블록은 N/2의 사이즈를 갖는다. 이들을 우측으로 N/2만큼(MDCT 정의에서 +N/2 기간(term)으로부터) 시프트하면, (b, c, d)는 N개의 DCT-IV 입력의 끝을 지나 연장하여 상술한 경계 조건에 따라 그들을 "폴드-백(fold back)"해야 한다.
따라서, 2N개의 입력(a, b, c, d)의 MDCT는 정확하게 N개의 입력(-cR-d, a-bR)의 DCT-IV와 동등하고, 여기서, R은 상술한 바와 같이 역전(reversal)을 나타낸다.
이것은 도 2a의 윈도우 함수(202)에 대하여 예시된 것이다. a는 부분(204b)이고, b는 부분(205a)이고, c는 부분(205b)이고 d는 부분(206a)이다.
(이 방식으로, DCT-IV를 계산하는 임의의 알고리즘은 MDCT에 평범하게 적용될 수 있다.) 유사하게, 상기 IMDCT 식은 정확하게 (그 역인) DCT-IV의 1/2이고, 여기서 출력은 (경계 조건을 통해) 길이(2N)로 연장하고 N/2만큼 좌측으로 쉬프트된다. 역 DCT-IV는 단순히 상기로부터 입력(-cR-d, a-bR)을 돌려준다(give back). 이것이 경계 조건을 통해 확장되고 시프트되면,
IMDCT(MDCT(a, b, c, d)) = (a-bR, b-aR, c+dR, d+cR) / 2
이 얻어진다.
IMDCT 출력의 절반은 b-aR=-(a-bR)R로서 리던던트이고, 마지막 2개의 항에 대해서도 비슷하다. 입력을 사이즈가 N인 더 큰 블록으로 그룹핑하면(여기서, A=(a, b) 및 B=(c, d)이다), 이 결과를 더 간단한 방식으로 쓸 수 있다.
IMDCT(MDCT(A, B)) = (A-AR, B+BR) / 2
TDAC가 어떻게 동작하는지를 이해할 수 있다. 2N개의 시간 인접 50% 중첩 블록(B, C)의 MDCT를 계산하는 것으로 가정한다. IMDCT는 상기 (B-BR, C+CR)/2와 유사하게 산출될 것이다. 이것이 중첩하는 절반에서 이전의 IMDCT 결과와 합산되면, 역전된 항은 제거되고 단순히 B를 얻어 본래의 데이터를 회복한다.
항 "시간 도메인 앨리어싱 제거"의 근원은 명백하다. 논리적 DCT-IV의 경계를 넘어 연장하는 입력 데이터의 사용은, 앨리어싱이 주파수 도메인 대신 시간 도메인에서 발생하는 것을 제외하고, 나이퀴스트(Nyquist) 주파수 이후의 주파수가 더 낮은 주파수로 앨리어싱되는 것과 동일한 방식으로 데이터가 앨리어싱되도록 한다. (a, b, c, d)의 MDCT 또는, 동등하게, IMDCT(MDCT(a, b, c, d))=(a-bR, b-aR, c+dR, d+cr)/2)에 대한 a와 bR의 기여를 구별할 수 없다. 조합(c-dR) 등은 정확하게 추가될 때 제거될 조합에 대한 옳은 부호(right sign)를 갖는다.
(실제로 드물게 사용되는) 홀수 N에 대하여, N/2는 정수가 아니어서, MDCT는 단순히 DCT-IV의 시프트 퍼뮤테이션(shift permutation)이 아니다. 이 경우, 샘플 절반만큼의 추가적인 시프트는 MDCT/IMDCT가 DCT-III/II와 동등해지는 것을 의미하고, 분석은 상기와 유사하다.
2N개의 입력(a, b, c, d)의 MDCT는 N개의 입력(-cR-d, a-bR)과 동등하다는 것을 상기에서 알 수 있다. DCT-IV는 우측 경계의 함수가 홀수인 경우에 대하여 설계되고, 따라서, 우측 경계 부근의 값은 0에 가깝다. 입력 신호가 매끄러우면, 이것은 a 및 bR의 최우측 성분이 입력 시퀀스(a, b, c, d)에서 연속적인 경우이고, 따라서, 그 차는 작다. 간격의 중간을 살펴보자: 상기 식을 (-cR-d, a-bR) = (-d, a)-(b,c)R으로 다시 쓰면, 제2 항((b,c)R)은 중간에 매끄러운 과도기를 제공한다. 그러나, 제1항(-d, a)에서, -d의 우단이 a의 좌단을 만나는 잠재적 불연속성이 존재한다. 이것은 입력 시퀀스(a, b, c, d)의 경계 부근의 컴포넌트를 0을 향하여 감소시키는 윈도우 함수를 이용하는 이유이다.
위에서, TDAC 특성은 통상의 MDCT에 대하여 증명되어, 그 중첩 절반에서 시간 인접 블록의 IMDCT의 추가가 본래의 데이터를 회복하는 것을 보여준다. 윈도윙 MDCT에 대한 역 특성의 도출은 단지 좀 더 복잡하다.
사이즈(N)의 블록(A, B, C)에 대하여, 2N개의 입력(A, B) 및 (B, C)의 연속하는 중첩 세트를 고려한다. 상기로부터, (A, B) 및 (B, C)가 MDCT되고, IMDCT되고, 그 중첩 절반에서 추가될 때를 상기하면, , 본래의 데이터를 얻는다. MDCT 입력 및 IMDCT 출력을 길이(2N)의 윈도우 함수로 승산한 것으로 가정한다. 상기와 같이, 형태 의 대칭 윈도우 함수를 가정하고, 여기서, W는 길이-N 벡터이고, R은 앞서와 같이 역전을 나타낸다. 그리고, 프린센-브래들리 조건은 로 기입될 수 있고, 제곱(square)과 가산(addition)은 엘리먼트마다 수행된다.
그러므로, (A, B)를 MDCT하는 대신에, 모든 곱셈을 갖는 MDCT가 엘리먼트마다 수행된다. 이것이 IMDCT되고 윈도우 함수에 의해 (엘리먼트마다) 다시 승산되면, 마지막-N 절반은 다음과 같이 된다.
(윈도윙된 경우 IMDCT 정규화는 2의 팩터만큼 다르기 때문에, 더 이상 1/2로 승산하지 않는 것에 주의한다.)
유사하게, (B, C)의 윈도윙된 MDCT 및 IMDCT가 그 처음-N 절반에서 산출된다.
이들 2개의 절반을 함께 더하면, 본래의 데이터가 회복된다.
유사한 절차에서, 도 2a에서 다음 프레임은 부분(205b, 206a, 206b) 및 다음의 다음 프레임의 제1 부분을 이용하여 산출된다. 따라서, 윈도우(200, 202, 204)는 도 1a의 제어가능 윈도워(102)에 의해 사용된 상이한 중첩 길이를 갖는 3개의 윈도우의 제1 중첩 길이를 갖는 윈도우 함수에 대응한다. 설명한 바와 같이, 도 2a는 지난 프레임, 현재 프레임 및 다음 프레임에서, 특히, 지난 프레임에 대한 항목(207), 현재 프레임에 대한 208 및 다음 프레임에 대한 209에 의해 지시된 각 프레임에 대한 미리보기 영역에서, 과도 상태가 검출되지 않는 상황을 나타낸다. 도 2b는 과도 위치(210, 211, 212, 213)에서 과도 상태가 검출되는 상황을 나타낸다. 과도 위치가 예를 들어 210에서 검출된다는 사실 및 210이 지난 프레임에 대하여 207에서 시작하는 미리보기 영역 내에 있다는 사실 때문에, 제어기(108)는 제1 윈도우(201)로부터 추가의 윈도우(215)로의 스위칭이 수행되는 것을 결정한다. 추가의 과도 상태(211) 및, 특히, 다음 미리보기 영역 내에 위치하는 212/213 때문에, 현재 프레임은 제2 중첩 길이를 갖는 제2 윈도우(216)를 이용하여 추가적으로 프로세싱된다. 따라서, 윈도우(215)는 201에서 지시된 제1 중첩 길이를 갖는 윈도우로부터 제2 중첩 길이를 갖는 제2 윈도우로 변하는 일종의 시작 윈도우이다. 도시된 바와 같이, 제2 중첩 길이는 단지 8개의 슬롯에 걸쳐 연장하고, 따라서, 제1 중첩 길이의 절반 길이이다. 209에서 시작하는 미리보기 영역에서, 과도 상태가 더 이상 검출되지 않는다는 사실 때문에, 일종의 "정지 윈도우(217)"에 의해 긴 윈도우(201)로의 스위칭이 다시 수행된다. 한편으로는 현재 프레임에서 다른 한편으로는 현재 프레임 및 다음 프레임 사이에서 218에 도시된 중첩 길이가 제1 윈도우에 대한 도 2a의 중첩 길이, 즉, 16개의 슬롯의 절반이다.
따라서, 절반 중첩 윈도우는 검출 영역(1 및 6)에서 검출된 과도 상태에 사용된다. 219에 도시된 바와 같이, 이러한 검출 영역은 2개의 슬롯을 포함한다. 따라서, 미리보기 범위는 바람직하게 8개의 슬롯으로 분리된다. 그러나, 반면에, 더 거칠거나 더 미세한 세분이 수행될 수 있다. 그러나, 바람직한 실시예에서, 미리보기 영역은 적어도 4개의 슬롯으로 세분되고 바람직하게 도 2b 및 2c 및 다른 도면에 도시된 바와 같이 8개의 슬롯으로 세분된다.
도시된 바와 같이, 제2 윈도우(216)는 양쪽에 절반 중첩을 갖지만, 윈도우(215)는 우측에 절반 중첩을 갖고 좌측에 전체 중첩을 갖고, 윈도우(217)는 좌측에 절반 중첩을 갖고 우측에 전체 중첩을 갖는다.
도 2를 참조한다. 도 2c는 지난 프레임의 중간에서 시작하는 미리보기 영역에서 제2 과도 검출 영역(222)에 과도 상태가 있다는 것을 과도 검출기가 검출하는 상황을 나타낸다. 따라서, 과도 상태(223)가 윈도우(224) 내에서 "스미어(smear)"되지만 윈도우(201)에 의해 정의된 영역 또는 윈도우(225)에 의해 정의된 영역에는 포함되지 않도록 하기 위하여 1/4 중첩으로의 스위칭이 수행된다. 지난 프레임 및 현재 프레임 내의 1/4 중첩으로부터 현재 프레임과 다음 프레임 사이의 절반 중첩 및 다음 프레임과 다음의 다음 프레임 사이의 전체 중첩으로의 스위칭이 수행되는 시퀀스가 지시된다. 이것은 검출된 과도 상태 때문이다. 208에서 시작하는 미리보기 영역에서는 과도 상태가 1 부분 및 6 부분에서 검출되지만 지난 프레임(207) 및 현재 프레임(208) 사이에서는 과도 상태가 2 부분 및 5 부분에서 검출된다.
따라서, 도 2c는 전체 또는 제1 중첩 길이를 갖는 제1 윈도우(201)가 도시된 윈도우 시퀀스를 나타내고, 여기서, 218에서 지시된 제2 중첩 길이를 갖는 제2 윈도우가 사용되고 제2 윈도우는 예를 들어 윈도우(225) 또는 윈도우(226)일 수 있고, 제3 중첩 길이를 갖는 제3 윈도우는 좌측에 작은 중첩 길이(229)를 갖는 윈도우(224) 또는 윈도우(225)로서 도시된다. 따라서, 전체 중첩으로부터 1/4 중첩으로, 그 후 절반 중첩으로, 그후 전체 중첩으로의 윈도우 시퀀스 스위칭이 도시된다. 그러므로, 제1 중첩 길이를 갖는 제1 윈도우는 한쪽에 제1 중첩으로부터 상이한 중첩을 갖고 다른 쪽에 제1 중첩 길이를 갖는 비대칭 윈도우일 수 있다. 그러나, 대안으로, 제1 윈도우는 또한 도 2b에서 216에 도시된 바와 같이 양쪽에 제1 중첩 길이를 갖는 윈도우일 수 있다. 또한, 제2 중첩 길이를 갖는 제2 윈도우는 양쪽에 제2 중첩 길이를 갖는 대칭 윈도우 또는 한쪽에 제2 중첩 길이를 갖고 다른 쪽에 제1 중첩 길이 또는 제3 중첩 길이 또는 임의의 다른 중첩 길이를 갖는 비대칭 윈도우일 수 있다. 마지막으로, 제3 중첩 길이를 갖는 제3 윈도우는 양쪽에 제3 중첩 길이를 갖는 대칭 윈도우 또는 한쪽에 제3 중첩 길이를 갖고 다른 쪽에 상이한 중첩 길이를 갖는 윈도우일 수 있다.
후속으로, 다음의 도면에서 추가의 실시예가 도시된다. 일반적으로, 과도 상태의 검출 및 그 위치는 예를 들어 미국 특허 6,826,525에 기재된 과도 검출기와 유사한 방법 또는 절차를 이용하여 수행될 수 있지만, 임의의 다른 과도 검출기가 또한 사용될 수 있다.
과도 검출 유닛은 주어진 프레임의 새로운 신호 부분에서, 즉, 현재 또는 이전 프레임 사이의 중첩 영역을 제외하고, 가장 강한 과도 상태의 존재 및, 적용가능하다면, 그 시작 위치를 확인한다. 과도 위치를 기술(describing)하는 인덱스의 해상도(resolution)은 다음의 도면에서 프레임 길이의 1/8이어서 인덱스 범위는 0에서 7 이다. 후속 도면에서, 인덱스(0, ..., 7)를 갖는 서브블록은 현재 프레임에서 코딩에 사용되는 시간 도메인 신호의 가장 최신의 20ms를 나타낸다.
도 3a-3c는 예시적인 ms 변환 길이, 즉, TCX20 변환 길이에 대한 변환 중첩 폭의 선택을 나타낸다.
도 3a에서, 과도 상태가 현재 프레임에 존재하지 않는다. 그러므로, 전체 중첩(300)이 검출된다.
대조적으로, 도 3b는 과도 상태가 7번째 서브블록에서 검출되어 절반 중첩(302)이 도 1a의 제어기(108)에 의해 선택되는 상황을 나타낸다. 도 3c는 과도 상태가 6번째 서브블록에서 검출되어 최소 중첩(304)이 제어기에 의해 설정된 상황을 나타낸다. 따라서, 과도 위치 검출기(106)는 과도 상태가 존재하는지를 검출하고, 존재하지 않으면, 중첩 폭 또는 제1 중첩 폭(300)이 선택된다. 그러나, 도 1a의 과도 위치 검출기(106)에 의해 7번째 서브블록에 과도 상태가 존재하는 것으로 결정되면, 바람직하게 제1 중첩 길이(300)의 절반인 제2 중첩 길이(302)가 제어기에 의해 설정되고, 과도 상태가 서브블록(6)에서 검출되면, 최소 중첩이 설정된다. 도 3c는, 과도 상태가 위치(6 또는 7)에서 검출되었다는 사실 대신에 그럼에도 불구하고 변환 길이가 유지된다는 상황을 추가적으로 나타낸다. 따라서, 윈도우(301a, 301b 또는 303a 또는 303b)의 변환 길이는 동일하고 301a 및 301b에서 도 3a에 도시된 가장 긴 중첩 길이를 갖는 제1 윈도우와 동일하다. 나중에 도시되는 바와 같이, 특히, 과도 상태가 다른 서브블록에서 검출되는 상황들에서, 중첩 길이를 제어할 뿐만 아니라 변환 길이를 추가적으로 제어하는 것이 바람직하다. 따라서, 현재 및 그 다음의 변환 윈도우 사이의 중첩 길이는 과도 상태의 위치에 의존한다. 그러나, 현재 및 이전 변환 프레임 사이의 중첩은 이전 프레임을 프로세싱할 때 결정되었다.
후속으로, 10ms 변환 길이, TCX10에 대한 변환 중첩 길이의 선택을 나타내기 위하여 도 4a 내지 4g를 참조한다. 예를 들어, 코덱이 10ms 변환 길이로 제한되면, 2개의 TCX10 윈도우 사이의 중첩이 선택되어 코딩 에러의 시간 앨리어싱된 TNX 쉐이핑에 의한 의사 과도 상태(pseudo transients)가 강하게 억제된다. 또한 5개보다 많은 이전 서브블록 및 5개보다 많은 다음의 서브블록으로의 과도 상태의 스미어링(smearing)이 최소화된다. 이것은 프리-에코(pre-echo)이고 포스트 에코(post-echo)는 12.5ms로 제한된다. 중첩의 선택은 과도 위치에 기초한다.
도 4a는 0번째 또는 첫번째 서브블록에서 과도 상태가 검출되는 상황을 나타낸다. 그러면, "제1 윈도우"(401, 402)가 선택되고, 이는 최대 또는 제1 중첩 길이(403)를 갖는다. 또한, 설명의 목적으로, 이전 및 다음 윈도우와의 TCX20 전체 중첩은 404에서 기준으로서 도시된다. 따라서, "전체 중첩"은 예를 들어 윈도우(401, 402)의 50% 또는 TCX20 윈도우(301a, 301b)의 33%에 대응한다. 따라서, 도 3a의 중첩 길이(300) 및 도 4a의 중첩 길이(403)는 동일하다.
도 4b는 과도 상태가 두번째 서브블록에서 검출되고 제어기가 윈도우 시퀀스를 제어하여 도 2c의 229에 도시된 "제3 중첩 길이"에 대응하는 최소 중첩(404)이 선택되는 상황을 나타낸다. 따라서, 이 실시예에서 비대칭 윈도우이고 도 1a 및 1b의 언어에서 "제2 윈도우"에 대응하는 짧은 중첩 길이를 갖는 윈도우(406, 407)가 선택된다. 또한, 세번째 서브블록에서 과도 상태가 검출되면, 제2 중첩 길이(405)가 선택된다. 따라서, 윈도우(408, 409)는 제3 중첩 길이(405)를 갖는 제3 윈도우에 대응하지만, 비대칭 윈도우이다.
또한, 도 4d에 도시된 바와 같이, 과도 상태가 과도 부분(4)에 있을 때 전체 중첩 길이가 결정되고, 그러므로, 이 상황에서 선택된 윈도우는 도 4a에 도시된 윈도우(401, 402)이다. 도시된 바와 같이 중첩 변환 중의 하나가 과도 상태를 포함하도록 중첩을 선택하면, 과도 상태가 두번째 또는 세번째 서브블록에 있는 경우가 각각 도 4f 또는 4g에 도시된 바와 같다. 과도 상태가 네번째 또는 다섯번째 서브블록에 있는 경우 뿐만 아니라 과도 상태가 0번째 또는 첫번째 서브블록에 있을 때 별도로 처리된다. 그러므로, 과도 상태가 0번째 서브블록에 있는 상황을 나타내는 도 4e를 참조하고, 도 4e에 도시된 바와 같은 윈도우 시퀀스가 얻어지고, 여기서, 절반 중첩(405)이 존재하고, 절반 중첩은 그 후 전체 중첩(403)으로 스위칭된다. 이것은 시작 윈도우(408), 정지 윈도우(409) 및 추가의 정상 길이 윈도우(402)에 의해 형성된 윈도우 시퀀스에 의해 얻어진다.
반면에, 도 4f는 과도 상태가 제1 서브블록에서 검출되어 짧은 또는 제3 중첩 길이(404)가 선택되는 상황을 나타내고, 이는 시작 윈도우(406) 및 정지 윈도우(407)에 의해 가능하고, 그 후 전체 중첩 윈도우(402)가 뒤따른다. 따라서, 도 4e의 윈도우(408 또는 409)는 제2 중첩 길이(405)를 갖는 제2 윈도우를 나타내고 윈도우(406 및 407)은 제3 중첩 길이(404)를 갖는 제3 윈도우에 대응한다.
도 4g는 과도 상태가 네번째 서브블록에서 검출된 상황을 나타낸다. 이 상황은 전체 중첩 길이(403)를 갖는 제1 윈도우(401), 절반 중첩 길이(405)를 갖는 제2 윈도우(409) 및 제2 중첩 길이(405)를 갖는 추가의 제2 윈도우(414)에 의해 반영된다. 그러나, 윈도우(414)의 우측은 다음 프레임을 위해, 즉, 참조 번호(415)에 의해 지시된 시각(time instant)에서 시작하는 다음 미리보기 영역에서 결정된 중첩 길이에 의존한다.
따라서, 도 4a 내지 4g는, 과도의 위치에서, 예를 들어, 서브블록(4)에서, 윈도우(414)의 윈도우 계수가 0과 동일하고 윈도우(409)의 윈도우 계수가 1과 동일하다는 사실에 의해 확보된 하나의 윈도우 내에만 과도 상태가 위치하도록 중첩 길이를 결정하는 상황을 나타낸다.
후속으로, 변환 길이가 중첩 폭으로부터 도출되는 바람직한 실시예를 참조한다. 도 5a, 5b, 5c는 3개의 상이한 중첩 길이(403, 405, 404)를 나타내고, 여기서, 전체 중첩 길이는 501 및 502에서 지시된 2개의 제1 윈도우에 의해 결정된다. 또한, 절반 중첩 길이는 503 및 504에 도시된 제2 중첩 길이를 갖는 2개의 제2 윈도우에 의해 얻어지고, 제3 중첩 길이(404)는 제3 중첩 길이(404)를 갖는 2개의 제3 윈도우(505 및 506)에 의해 얻어진다. 전체 중첩은 바람직하게 "0" 비트를 이용하여 코딩되고, 절반 중첩은 "11" 비트 조합을 이용하여 코딩되고, 최소 중첩은 "10" 비트 조합을 이용하여 코딩된다.
따라서, TCX-20 및 TCX-5 및 TCX-10 프레임의 조합이 사용될 때 중첩 폭 및 변환 길이 선택을 결정할 때 이 코딩은 유용하다.
한 쌍의 프레임에 대한 변환 길이의 주어진 선택으로부터 순시 상호 변환 중첩(instantaneous inter-transform overlaps)을 도출하는, 즉, 중첩 폭이 변환 길이 결정의 출력을 따르는 코딩 방식과 달리, 본 발명의 바람직한 실시예는, 과도 위치 검출기(106) 및 제어기(108)의 협력에 의해, 도 1a에 대하여, 또는 특정 프레임에 부여되는 중첩 폭 및 선택적으로 이전 프레임의 중첩 폭을 이용하여 특정 프레임에 사용될 변환 길이(들)을 제어하거나 도출할 수 있는, 즉, 변환 길이가 중첩 폭 결정 유닛의 데이터를 따르는 코딩 시스템에 관한 것이다. 도 6a는 코딩 표를 나타내고 도 6b는 대응하는 결정 표를 나타낸다. 도 5a, 5b, 5c에서, 실선은 현재 프레임에서 지난 변환의 윈도우의 우측 절반을 나타내고 점선은 다음 프레임에서 제1 변환의 윈도우의 좌측 절반을 나타낸다.
도 6a는 과도 위치에 기초한 중첩 및 변환 길이의 코딩을 나타낸다. 특히, 짧은/긴 변환 결정은 칼럼(600)에 지시된 바와 같이 1비트를 이용하여 코딩되고 다음 프레임의 제1 윈도우와의 중첩은 칼럼(602)에 도시된 바와 같이 1 또는 2비트를 갖는 가변 길이 코드를 이용하여 코딩된다. 한편으로는 짧은/긴 변환 결정(600)에 대한 코드 및 칼럼(602)의 중첩 폭에 대한 이진 코드가 연결(concatenated)되어 칼럼(603)에서 소위 중첩 코드를 얻는다. 또한, 다음 프레임의 제1 윈도우와의 중첩은 과도 검출기(106)에 의해 결정된 바와 같이 칼럼(604)의 과도 위치 인덱스에 의존하여 제어기(108)에 의해 결정된다. 상술한 설명과 대조적으로, 과도 위치 인덱스는 -1 및 -2에 의해 지시된 2개의 이전 슬롯에서 시작하는 증가된 미리보기 범위를 갖고, 이 상황에 대하여, 추가적으로, 이 실시예에서, 전체 중첩이 시그널링된다.
따라서, "과도 없음" 또는 -2 및 1 사이의 과도 위치에 대하여 전체 중첩이 시그널링된다. 또한, 과도 위치(2 및 3)에 대하여 칼럼(605)에 의해 절반 중첩이 시그널링되고 과도 위치(4, 5, 6)에 대하여 최소 중첩이 시그널링된다.
따라서, 도 6a의 인덱스 "-2"는 위치(6)에서 이전 프레임에 과도 상태가 존재하는 것을 의미하고 "-1"은 위치(7)에서 이전 프레임에 과도 상태가 존재하는 것을 의미한다. 설명한 바와 같이, "없음"은 과도 미리보기 영역에서 과도 상태가 검출되지 않음을 의미한다.
기술한 바와 같이, 짧은/긴 변환 결정 및 중첩 폭은 중첩 코드를 이용하여 조인트 코딩된다. 중첩 코드는 짧은/긴 변환 결정에 대한 1비트 및 1 또는 2비트로 코딩된 중첩 폭에 대한 이진 코드로 구성된다. 코드는 자동으로 검출되는 가변 길이 코드이고, 여기에서 코드워드가 시작되고 이전의 코드워드가 정지한다. 짧은/긴 변환 결정 및 중첩 폭에 대한 코드는 도 6a에 정의된다. 예를 들어, 짧은/긴 변환 결정이 1을 제공하고 최소 중첩이 선택되면, 즉, 이진 코드가 10과 동일하면, 중첩 코드는 110이다.
또한, 6a는 -2 및 5 사이의 모든 과도 위치에 대하여 짧은 변환 결정을 취하고 위치(6 또는 7)에서 비과도 또는 과도에 대하여 긴 변환이 선택되는 상황을 나타낸다. 따라서, 도 6a는 과도 위치 검출기가 소정의 위치에서 소정의 과도 상태를 검출할 수 있고 서로 독립적으로 또는 동시에 다음 프레임의 제1 윈도우와의 중첩 및 짧은/긴 변환 결정이 결정될 수 있고, 즉, 전체 중첩 코드(603)가 도출될 수 있는 상황을 나타낸다. 상이한 짧은/긴 변환 및 상이한 중첩을 인코딩하는 임의의 다른 코드가 이용될 수 있다는 것을 당업자가 이해할 수 있음을 강조한다. 또한, 2개 보다 많은, 즉, 3개 또는 심지어 더 많은 변환 길이가 결정되고 시그널링될 수 있고, 동시에, 4개 또는 5개의 상이한 중첩 길이 등의 3개보다 많은 중첩이 또한 결정되고 인코딩될 수 있다. 과도 위치 검출기가 프레임마다 적어도 4개의 상이한 분할에 동작하는 것, 또는, 실시예에서, 프레임마다 8개의 분할에 동작하는 것 또는, 더 미세한 결정을 위하여, 프레임의 16개의 분할 등의 심지어 더 많은 분할에 동작하는 것에 응답하여 이 모든 것이 결정된다.
현재 프레임 및 이전 프레임에 대한 중첩 코드에 기초하여, 도 6b에 도시된 바와 같이 사용될 변환 길이의 조합에 대한 결정이 이루어진다. 따라서, 도 6b는 이전 중첩 코드 및 현재 중첩 코드에 기초한 변환 길이의 결정을 나타낸다. 예를 들어, 이전 중첩 코드 및 현재 중첩 코드가 모두 "00"이면, 401 등의 윈도우가 사용된다. 이전 중첩 코드가 10이고 현재 중첩 코드가 00이면, 동일한 윈도우가 선택된다. 그러나, 이전 코드가 절반 중첩 코드를 의미하는 111이고 현재 중첩 코드가 00이면, 예를 들어 도 4c의 윈도우(409)가 선택된다. 110의 이전 중첩 코드 및 현재 중첩 코드(00)에 대하여, 다시 긴 변환이 선택되지만, 윈도우가 윈도우(407)와 유사하고, 010의 이전 중첩 코드 및 00의 현재 중첩 코드에 대하여 동일한 상황이 적용하고, 즉, 도 4f의 윈도우(407)가 선택된다. 마지막으로, 이전 중첩 코드(011) 및 현재 중첩 코드(00)에 대하여, 도 4e의 409 등의 윈도우가 선택된다.
다른 조합에 대하여 다른 윈도우가 선택되고 이것은 도 7을 참조하여 특히 도시된다. 따라서, 도 7은 현재 프레임 내의 과도 위치 및 현재 및 이전 프레임에 대한 중첩 코드와 함께 변환 길이 조합의 일부를 나타낸다. 도 7의 110/010-111는 이전 중첩 코드가 110 또는 010이고 현재 중첩 코드가 111임을 의미한다. 그러므로, 도 7은 상이한 조합을 나타낸다. 예를 들어, 도 7의 상부 좌측 도면은 2개의 TCX-5 변환 및 전체 중첩을 갖는 다음의 TCX-10 변환의 시퀀스의 시작에서의 최소 중첩을 나타낸다. 그와 대조적으로, 이 도면 아래의 도면은 최소 중첩 후에 4개의 TCX-5 윈도우가 뒤따르고, TCX-5 윈도우의 제4 윈도우는 절반 중첩 등을 갖는 것을 나타낸다. 따라서, 참조 번호(700, 701)는 2개의 TCX-5 또는 2개의 짧은 윈도우 다음에 중간 윈도우가 뒤따르는 시퀀스를 나타낸다. 마찬가지로, 참조 번호(702, 703, 704, 705, 706, 707)는 4개의 짧은 변환 길이 또는 "TCX-5" 변환을 갖는 상황을 나타내지만, 참조 번호(708, 708, 710, 711)는 처음에, 즉, 시퀀스의 초기에, TCX 10 등의 중간 변환 길이 윈도우 다음에 2개의 TCX-5 또는 짧은 변환 길이 윈도우가 뒤따르는 상황을 나타낸다. 도 7의 시퀀스(700 내지 711)는 다른 이러한 시퀀스 또는 예를 들어 700, 702에서의 짧은 중첩, 704에서의 중간 중첩 또는 예를 들어 708 또는 710에서의 긴 중첩 등의 상이한 중첩을 갖는 TCX-20 또는 긴 변환 길이 윈도우에 의해 도입될 수 있다. 동시에, 시퀀스 뒤에는 이러한 추가의 시퀀스가 뒤따르거나 TCX-20, 즉, 긴 변환 윈도우가 뒤따를 수 있지만, 상이한 중첩 길이를 갖는다. 따라서, 예를 들어, 시퀀스(700)가 긴 중첩으로 끝나고, 예를 들어, 시퀀스(702)가 중간 중첩으로 끝나거나, 예를 들어, 시퀀스(706)가 작은 중첩 길이로 끝난다.
도 1a에 도시된 바와 같이, 윈도우 정보, 즉, 도 1의 112에 도시된 도 6a의 중첩 코드(603)는 출력 인터페이스(114)에 의해 각 인코딩된 프레임에 연관될 수 있다.
또한, 변환기(104)에서 적용된 변환은 MDCT 또는 MDST 또는 스펙트럼 값의 블록 내의 스펙트럼 값의 수가 변환에 입력되는 윈도윙된 샘플의 블록 내의 윈도윙된 샘플의 수보다 작다는 사실 또는 디코더 측에 대하여, 시간 도메인 출력 샘플의 수가 이러한 앨리어싱 감소 또는 역 변환에 입력되는 스펙트럼 값의 수보다 크다는 사실에 의해 특징화된 상이한 앨리어싱 도입 변환일 수 있다.
도 2 내지 7에 도시된 바와 같이, 일정한 프레임 래스터(raster)가 유지된다. 따라서, 제어기(108)는 예를 들어 도 7에 도시된 바와 같이 더 짧은 변환 길이로의 스위칭이 수행되더라도 동일한 일정한 프레임 래스터가 유지되도록 한다. 이것은 적절한 중첩 사이즈의 컨텍스트에서 윈도우의 각 클래스에 대하여 항상 유사한 변환 길이를 초래하는 특정 윈도우만을 이용함으로써 가능하다. 따라서, 각각의 TCX-5 변환 길이는 이러한 중첩 영역 및 변환이 N/4 스펙트럼 값을 발생시키는 2개의 중첩 영역 사이의 일정한 영역을 갖도록 정의되고, N은 프레임 내의 스펙트럼 값의 수이다. TCX 20 변환 윈도우의 형태, 사이즈 및 특히 중첩 길이는 추가적으로 이 윈도우가 변환에 후속하는 N개의 스펙트럼 샘플을 초래하는 방식으로 설계된다.
도 1c는 제어가능 변환기(158)의 바람직한 디코더 측 구현예를 나타낸다. 특히, 제어가능 변환기(158)는 주파수-시간 변환기(170), 후속 접속 합성 윈도워(172) 및 최종 중첩 가산기(174)를 포함한다. 특히, 주파수-시간 변환기는 DCT-IV 변환 등의 변환 및 후속의 폴드-아웃(fold-out) 동작을 수행하여 주파수-시간 변환기로의 입력이 전형적으로 N개의 스펙트럼 값인 경우 주파수-시간 변환기(170)의 출력이 제1 또는 긴 윈도우에 대하여 2N개의 샘플을 갖도록 한다. 반면에, 주파수-시간 변환기로의 입력이 N/8개의 스펙트럼 값이면, 출력은 전형적으로 MDCT 동작에 대하여 N/4 시간 도메인 값이다.
주파수-시간 변환기(170)의 출력은 인코더 측 윈도우와 바람직하게 정확하게 동일한 합성 윈도우를 적용하는 합성 윈도워로 입력된다. 따라서, 중첩 가산이 수행되기 전에, 각각의 샘플은 2개의 윈도우에 의해 윈도윙되어 결과적인 "총 윈도윙"은 해당 윈도우 계수의 제곱이어서 상술한 프린센-블래들리를 만족한다.
최종적으로, 중첩 가산기(174)는 출력(175)에서 디코딩된 오디오 신호를 최종적으로 얻기 위하여 해당하는 적절한 중첩 가산을 수행한다. 특히, 주파수-시간 변환기(170), 합성 윈도워(172) 및 중첩 가산기(174)는 제어가능하고 도 6a의 컨텍스트에서 논의된 중첩 코드(603) 또는 도 6b의 컨텍스트에서 논의된 상황을 나타내는 임의의 다른 정보에 의해 제어된다. 그러나, 바람직하게 주파수-시간 변환기에 대한 해당 변환 길이는 변환 길이 결정 표를 이용하여 이전 중첩 코드 및 현재 중첩 코드에 기초하여 결정된다. 또한, 윈도우 사이즈/형상은 또한 이전 중첩 코드 및 현재 중첩 코드에 의해 결정되고, 중첩 가산기에서도 마찬가지여서, 중첩 가산기가 시그널링된 바와 같이 최대 중첩, 중간 중첩 또는 최소 중첩을 적용하도록 한다.
따라서, 도 1c의 디코더 내의 제어기(180)는 중첩 코드, 즉, 이전 중첩 코드(606) 및 현재 중첩 코드(607)를 수신하고 이 정보로부터 스펙트럼 값의 블록에 대한 중첩 및 윈도우를 결정하는 것이 바람직하다.
따라서, 각각의 윈도우 및 윈도우와 연관된 해당 변환 사이즈가 결정된다. MDCT가 변환으로서 사용되고 역 MDCT가 역 변환에 사용되는 바람직한 실시예에서, 윈도우 사이즈가 변환 길이의 두배이거나 변환 길이가 윈도우 사이즈의 절반이다.
도 1d는 모바일 장치로 구현되는 본 발명의 추가의 실시예를 나타내고, 여기서, 모바일 장치는 한편으로는 인코더(195)를 포함하고 다른 한편으로는 디코더(196)를 포함한다. 또한, 본 발명의 바람직한 실시예에 따르면, 인코더(195)에 사용되는 윈도우 및 디코더(196)에 사용되는 윈도우가 서로 동일하기 때문에, 인코더(105) 및 디코더(106)는 단일 메모리(197)로부터 동일한 윈도우 정보를 검색(retrieve)한다. 따라서, 디코더는 리드 온리 메모리(197) 또는 랜덤 액세스 메모리 또는 인코더 및 디코더에서의 사용을 위해 윈도우 시퀀스 또는 윈도우의 단일 세트만이 저장된 일반적인 임의의 메모리(197)를 갖는다. 이것은 상이한 윈도우에 대한 상이한 윈도우 계수가 2번, 즉 인코더를 위한 1세트 및 디코더를 위한 1세트로, 저장되지 않는다는 사실 때문에 유리하다. 대신에, 본 발명에 따라 동일한 윈도우 및 윈도우 시퀀스가 인코더 및 디코더에 사용된다는 사실 때문에, 윈도우 계수의 단일 세트만이 저장되어야 한다. 그러므로, 도 1d에 도시된 진보적인 모바일 장치의 메모리 사용은 인코더 및 디코더가 상이한 윈도우를 갖거나 윈도윙 동작 이외의 프로세싱을 갖는 소정의 포스트 프로세싱이 수행되는 상이한 개념에 대하여 실질적으로 감소한다.
후속으로, 변환/변환 길이 스위칭 실시예에 대하여 추가의 바람직한 실시예를 참조한다.
상술한 변환 및 중첩 길이 적응 코딩 방식은 LD-USAC 인코더의 TCX(transform coded excitation) 경로, 20ms의 프레임 길이를 갖는 xHE-AAC[5]의 낮은 딜레이 변종에서 구현되었고 및 48 kbit/s 모노(mono)에서 테스트되었다. 이 구성 포인트에서, LD-USAC는 (의사) 정지 입력 조건 동안 512 샘플의 코어 샘플 길이를 갖는 TCX 전용 모드 및 256개의 샘플의 긴 변환 중첩, 즉 33%에서 동작한다. 인코더는 과도 검출 유닛을 포함하고, 과도 검출 유닛의 출력은 변환 길이 결정 유닛 및 진보적인 중첩 폭 결정 유닛으로 입력된다. 3개의 변환 길이, 즉, 512개의 MDCT 계수를 갖는 TCX-20 길이, 256개의 MDCT 계수를 갖는 TCX-10 길이 및 128개의 MDCT 계수를 갖는 특수 TCX-5 길이가 코딩에 이용가능하다. 따라서, 3개의 중첩 폭, 즉, 256개의 코어 샘플의 최대 중첩(10ms), 128개의 코어 샘플의 절반 중첩(5ms) 및 16개의 샘플의 최소 중첩(0.6ms) 중의 하나가 프레임마다 사용되어 송신될 수 있다. 각각의 프레임에 대하여, 변환 길이는 그 프레임 내의 모든 변환의 길이의 합이 코어 프레임 길이, 즉, 512개의 샘플과 동일하도록 선택되어야 한다.
진보적인 코딩 시스템의 바람직한 실시예에서, 인코더는 다음과 같이 동작한다.
1. 과도 검출 유닛은 주어진 프레임의 새로운 신호 부분 내(즉, 현재 및 이전 프레임 사이의 중첩 영역을 제외)의 가장 강한 과도 상태의 존재를 확인하고, 적용가능하면, 그 시작 위치를 확인한다. 과도 위치를 기술하는 인덱스의 해상도가 프레임 길이의 1/8이 되어 인덱스 범위는 0, ..., 7이다.
2. 과도 상태가 검출되지 않거나 과도 위치 인덱스가 6 또는 7이면, 영향을 받은 프레임이 변환 길이 결정 유닛의 결정에 의해 TCX-20 변환을 이용하여 코딩된다. 그렇지 않으면, TCX-10 및/또는 TCX-5 변환의 조합이 사용되고: 2x TCX-10 또는 4x TCX-5 또는 TCX-10 뒤에 2x TCX-5가 뒤따르거나 2x TCX-5 뒤에 TCX-10이 뒤따른다.
3. 중첩 폭 결정 유닛은 위에서 열거한 목표에 따라 (지난 프레임을 갖는 이미 선택된 중첩을 제외하고) 현재 프레임 내에서 사용되는 변환의 중첩 형상을 제어하여, 상기 목표들을 위반하지 않는 가장 긴 가능한 중첩이 선택된다. 특히, 프레임이 TCX-20이고 과도 위치 인덱스가 6 또는 7이면, 중첩 유닛은 각각 최소 또는 절반 중첩을 반환한다. 프레임에 신호 비정지가 존재하지 않으면, 최대 중첩이 사용된다.
4. 또한, TCX-10/-5 조합이 (비정지) 프레임에 대한 변환 길이 결정 유닛에 의해 반환되면, 중첩 폭 결정 유닛은 그 프레임에서 변환 길이의 정확한 구성을 제어한다. 특히, 최대 중첩이 현재 프레임 뿐만 아니라 이전 프레임에서 사용되면, 현재 프레임에서 TCX-10이 뒤 따르는 2x TCX-5가 적용되고, TCX-5 변환의 처음은 이중 중첩을 갖는 진보적인 과도 변환이다. 지난 프레임 또는 현재 프레임의 중첩 폭이 최대보다 작으면, 혼합된 TCX-10/-5 구성 중의 하나가 또한 사용된다. 마지막 및 현재 프레임이 최대 중첩보다 작은 중첩을 가지면, 4x TCX-5가 사용된다.
5. 인코더는 신호의 윈도윙 및 프레임에 대한 실제 MDCT로 진행한다. 디코딩 후에 완벽한 재구성을 달성하기 위하여 진보적인 이중 중첩 과도 윈도우의 존재시 윈도윙 동작의 순서에 대하여 특별히 주의해야 한다. 인코딩 프로세스의 나머지는 xHE-AAC의 나머지와 유사하다. TNS는 선택적으로 개별 변환에 적용되고 (인터리빙된) 계수의 하나의 TCX-10같은 세트로의 2개의 TCX-5 MDCT 계수의 그룹핑이 수행되어 사이드 정보를 절약할 수 있다. 각각의 프레임에 대하여, TCX-20 또는 넌-TCX-20 코딩을 나타내는 하나의 1비트 플래그 뿐만 아니라 하나의 중첩 폭 값이 디코더로 송신된다.
인코더처럼, 바람직한 실시예에 따른 적절한 디코더는 송신되는 중첩 폭 값을 해석하여 역 MDCT의 길이 및 윈도윙을 제어하여 인코더 및 디코더가 사용되는 변환에 대하여 완전히 동기되도록 하는 중첩 폭 결정 유닛을 포함한다. 인코더에서처럼, 개별 MDCT 후의 윈도윙 및 폴딩 동작의 순서는 완전한 신호 재구성을 얻기 위해 중요하다.
후속으로, 본 발명의 추가의 실시예가 도 8 내지 15f의 컨텍스트에서 도시된다. "다중 중첩 양태"라 불리우는 이 양태는 도 1 내지 7을 참조하여 설명한 중첩 폭 및 변환 길이 스위칭 실시예와 결합되거나 이 양태와 별개로 구현될 수 있다.
본 발명의 인코더측이 도 8a에 도시되고 디코더측이 도 8b에 도시된다. 특히, 도 8a에 도시된 인코딩된 신호를 생성하는 장치 또는 인코더는 도 8a에 도시된 바와 같이 예를 들어 프리프로세서(802)로 전달되는 윈도우 시퀀스 정보(809)를 생성하는 윈도우 시퀀스 제어기, 스펙트럼 변환기(804) 또는 출력 인터페이스(810)를 포함한다. 윈도우 시퀀스 정보는 스펙트럼 값의 제1 프레임을 생성하는 제1 윈도우 함수, 제2 윈도우 함수 및 스펙트럼 값의 제2 프레임을 생성하는 하나 이상의 제3 윈도우 함수를 지시한다. 제1 윈도우 함수, 제2 윈도우 함수 및 하나 이상의 제3 윈도우 함수는 다중 중첩 영역 내에서 중첩한다.
이 다중 중첩 영역은 예를 들어 도 13, 도 14b, 도 15e, 또는 도 15f에서 1300에 도시된다. 따라서, 다중 중첩 영역, 적어도 3개의 윈도우 함수, 즉, 도 15f에서 1500에 도시된 제1 윈도우 함수, 제2 윈도우 함수(1502) 및 제3 윈도우 함수(1503)는 다중 중첩 영역(1300) 내에서 서로 중첩한다. 또한 4개, 5개 또는 그 이상의 윈도우 등의 더 높은 중첩이 존재할 수 있다. 대안으로, 도 15e는 제1 윈도우 함수(1500) 및 제2 윈도우 함수(1502)를 갖지만 도 15f의 단일 제3 윈도우 함수와 대조적으로 4개의 제3 윈도우 함수(1503)를 갖는 상황을 도시한다.
과도 미리보기 영역에 필요한 딜레이의 상당한 감소를 초래하는 이 다중 중첩 영역을 정확하게 처리하기 위하여, 프리프로세서(102)가 제공된다. 프리프로세서는 보조 윈도우 함수를 이용하여 제2 윈도우 및 하나 이상의 제3 윈도우 함수에 대응하는 샘플의 제2 블록을 윈도윙하여 윈도윙된 샘플의 제2 블록을 얻도록 구성된다. 또한, 프리프로세서는 다중 중첩 부분으로의 제1 블록과 중첩하는 제2 블록의 일부의 폴딩-인(folding-in) 동작을 이용하여 윈도우 샘플의 제2 블록을 프리프로세싱하여 변경된 다중 중첩 부분을 갖는 윈도윙된 샘플의 프리프로세싱된 제2 블록을 얻는다. 또한, 스펙트럼 변환기(804)는 제1 윈도우를 이용하여 샘플의 제1 블록에 앨리어싱 도입 변환을 적용하여 스펙트럼 값의 제1 프레임을 얻도록 구성된다. 또한, 스펙트럼 변환기는 제2 윈도우 함수를 이용하여 윈도윙된 샘플의 프리프로세싱된 제2 블록의 제1 부분에 앨리어싱 도입 변환을 적용하여 제2 프레임의 스펙트럼 샘플의 제1 부분을 얻고 하나 이상의 제3 윈도우 함수를 이용하여 윈도윙된 샘플의 프리프로세싱된 제2 블록의 제2 부분에 앨리어싱 도입 변환을 적용하여 제2 프레임의 스펙트럼 샘플의 제2 부분을 얻도록 구성된다. 또한, "인코딩 프로세서"로 지시된 프로세서(806)는 스펙트럼 값의 제1 프레임 및 제2 프레임을 프로세싱하여 블록(806)의 출력(807)에서 오디오 신호의 인코딩된 프레임을 얻기 위하여 도 8a의 인코더 내에 제공된다. 따라서, 인코딩 프로세서는 도 1a의 인코딩 프로세서(110)와 동일하거나 다를 수 있고 기지의 MPEG 또는 AMR 또는 본 기술의 임의의 다른 인코딩부 중의 임의의 것을 수행할 수 있다.
후속으로, 도 13을 참조한다. 도 13은 제1 윈도우 함수(1500) 및 제2 윈도우 함수(1502) 후반을 나타내고, 도 13의 제2 도면에서, 2개의 제3 윈도우 함수(1503)을 도시한다. 그와 대조적으로, 도 13의 상부 도면은 제1 윈도우 함수(1500), 제2 윈도우 함수(1502)를 나타내고, 예를 들어, 도 15f와 대조적으로, 도 15e와 약간 유사하게, 4개의 제3 윈도우 함수(1503)이 도시된다. 대안으로, 제3 윈도우 함수의 수는 또한 3, 5 등일 수 있다.
또한, 도 13은 상이한 제1 윈도우 함수(1500'), 상이한 제2 윈도우 함수(1502') 및 동일한 제3 윈도우 함수(15030)를 갖는 상황을 추가적으로 나타낸다. 1500 및 1500' 간의 차이는 함수(1500' 및 1502')의 중첩 길이가 윈도우(1500, 1502)에 대하여 절반이라는 것이다. 따라서, 윈도우 함수(1500' 및 1502')의 상황은, 중첩 길이가 예를 들어 도 2d에서 218에 도시된 절반 중첩이지만, 전체 중첩 길이는 예를 들어 도 2a 또는 도 13의 203에 도시된 바와 같이 완전한 프레임에 대응한다는 것이다. 그러므로, 이 도면에 도시된 윈도우 함수(1500' 및 1502')는 다중 중첩 양태 및 중첩 폭 결정 양태의 조합을 나타낸다.
인코더 측 상에서 프리프로세서(802)의 절차를 더 잘 설명하기 위하여, 한편으로는 도 11a의 도면을 참조하고 다른 한편으로는 도 9a의 플로우챠트를 참조한다. 디코더에 대하여, 도 8b, 도 10a, 10b의 도면 및 도 11b의 도면을 참조한다. 또한, 인코더는 도 12a에 도시되고 디코더는 도 12b에 도시된다.
특히, 도 11a는 제1 윈도우 함수(1500) 및 제2 윈도우 함수(1502)의 적어도 일부 및 4개의 제3 윈도우 함수(1503) 또는 단일 제3 윈도우 함수(1503)을 나타낸다. 특히, 도 11a는 추가적으로 보조 윈도우 함수(1100)를 나타낸다. 보조 윈도우 함수(1100)는 제1 윈도우 함수(1500)의 제1 상승 부분(1500a)과 일치하는 제1 부분(1100a)을 갖는다. 또한, 보조 윈도우 함수(1100)는 1과 동일한 윈도우 계수를 바람직하게 갖는 제2 비중첩 부분(1100b) 및 하나 이상의 제3 윈도우 함수의 하강 또는 폴링 또는 우측 부분에 대응하는 제3 부분(1100c)을 갖는다. 따라서, 보조 윈도우 함수(1100)는 1102에 도시된 이전 프레임의 후반부, 1103으로 지시된 현재 프레임(i)의 전반부, 1104에 의해 지시된 현재 프레임(i)의 후반부 및 보조 윈도우 함수 부분(1100c)에 의해 커버된 제1 작은 부분(1105)을 커버한다. 도 11a로부터 명백한 바와 같이, 보조 윈도우 함수는, 프레임(i+1)에서 짧은 윈도우의 시퀀스가 도입되어야 하는 것처럼, "시작 윈도우 시퀀스"로서 처리되거나 이러한 "시작 윈도우 시퀀스"에 대응한다. 그러나, 중요하게, 짧은 윈도우의 시퀀스가 다가오는 프레임(i+1)에서보다 오히려 현재 프레임에서 이미 도입된다.
그 후, 프리프로세서의 기능이 도 11a에 도시된다. 프리프로세서는 "시작 폴드-인 앨리어스 프레임(i)"로서 지시되는 동작에서의 보팅(voting)을 이용하여 보조 윈도우 함수를 이용한 윈도윙에 의해 얻어진 윈도우 샘플의 제2 블록을 프리프로세싱한다. 따라서, 1110에 의해 지시된 윈도윙된 샘플의 제2 블록의 최좌측 부분은 안으로 폴딩된다. 이 부분(1110)은 선행하는 제1 윈도우 함수(1500)와 중첩하는 윈도윙된 샘플의 제2 블록의 부분, 즉, 기간(1102)에 대응하고 선행하는 프레임(i-1)에 놓인 윈도윙된 샘플의 제2 블록의 부분이다. 부분(1110)의 폴딩-인 동작이 중첩 영역(1300)에 영향을 준다는 사실 때문에, 프리프로세서에 의해 수행되는 폴딩-인 동작은 변형된 다중 중첩 부분을 초래한다. 여기서, 스펙트럼 변환기는 "내부 폴드-인 앨리어스"로 지시된 도 11a의 라인에 도시된 동작을 적용한다. 특히, 스펙트럼 변환기는 프레임(i-1)에 대하여 도시된 제1 윈도우 함수를 이용하여 앨리어싱 도입 변환을 샘플의 제1 블록에 적용한다. 앨리어싱 도입 변환은 1120에 도시된 폴드-인 동작 및 1122에 지시된 후속, 예를 들어, DCT-TV 변환을 포함한다. 이 때문에, 프레임(i-1)에 대한 폴딩-인 동작(1120) 전의 형상을 얻기 위하여 제1 윈도우 함수(1500)가 요구된다. 또한, 스펙트럼 변환기는 도 11a에서 항목(1131)에 의해 지시된 제1 부분에 앨리어싱 도입 변환을 적용한다. 이것은 제2 윈도우 함수(1502) 및 특히 제2 윈도우 함수(15020)의 우측 부분을 이용하여 수행된다. 이 동작은 변환(1132)에 의해 얻어진 제2 프레임의 스펙트럼 샘플의 제1 부분을 초래하고, 여기서, 변환(1132)은 해당 폴딩 동작과 함께 블록(1131)의 우측 중첩 부분에서만 앨리어싱 도입 변환을 구성하는 DCT-IV 동작을 나타낸다.
또한, 스펙트럼 변환기는 하나 이상의 제3 윈도우 함수(1503)를 이용하여 프리프로세싱된 제2 블록(1130)의 제2 부분(1133)에 앨리어싱 도입 변환을 적용하여 제2 프레임의 스펙트럼 샘플의 제2 부분(1135)을 얻도록 구성된다. 따라서, 스펙트럼 샘플의 제2 부분(1135)을 얻기 위하여, 4개의 N/8 DCT-IV 변환 또는 단일 N/2 DCT-IV 변환이 적용될 수 있다. 변환 및 길이의 수는 제3 윈도우 함수의 수에 의존한다. 일반적으로, 길이, 변환 또는 제2 부분(1135) 내의 스펙트럼의 샘플의 수는 프레임 내의 스펙트럼 샘플의 수 - 변환(1132)의 길이와 동일하고 그 결과는 사용되는 제3 윈도우 함수의 수로 나누어진다.
따라서, 프리프로세서(802)는 보조 윈도우 함수(1100)를 이용하여 오디오 신호를 윈도윙(902)(도 9a)하여 윈도윙된 샘플의 제2 블록을 얻도록 동작가능하다. 그 후, 프로세서(904)는 바람직하게 도 11a의 1110에 지시된 폴딩 동작을 적용하여 변형된 다중 중첩 부분(1300)을 갖는 윈도윙된 샘플의 프리프로세싱된 제2 블록을 얻는다. 그 후, 변환기(906)는 제1, 제2 및 제3 윈도우 함수를 이용하여 변환을 적용하여 스펙트럼 값(1122)의 제1 프레임, 제2 프레임의 제1 부분(1132) 및 도 11a의 표기에서 프레임(i) 또는 제2 프레임의 제2 부분(1135)을 얻는다.
도 9b에 도시된 바람직한 실시예에서, 보조 윈도우 함수는 제1 윈도우 함수를 참조하고 전형적으로 보조 윈도우 함수(1100)의 제1 부분(1100a)으로서 제1 윈도우 함수의 제1 부분(1500a)을 선택함으로써 결정된다(910). 또한, 비중첩 부분(1100b)이 결정(해당 길이에 대하여 1의 윈도우 계수가 취해진다)된 후 전형적으로 짧은 윈도우 함수의 제2 부분을 취함으로써 제3 부분(1100c)이 결정된다.
그 후, 오디오 신호가 도 11a에 도시된 선행 또는 제1 프레임(i-1)에 관하여 이 보조 윈도우 함수를 이용하여 윈도윙(912)된다. 그 후, 도 9b의 914에 도시된 바와 같이, 좌측 부분(1110) 및 바람직하게 우측 부분(1111)은 폴딩-인된다. 단계(916)에서, 내부 영역 내의 항목 e) 또는 f) 내의 해칭된 라인에 도시된 중첩 부분의 폴딩이 수행된다. 또한, 918에 도시된 바와 같이, 도 11a의 서브 도면 e)에서처럼 더 많은 제3 윈도우 함수가 존재하면, 제3 윈도우 함수의 중첩 부분의 폴드-인이 또한 수행된다. 그러나, 도 11a의 서브 도면 f)에 도시된 바와 같이 단 하나의 제3 윈도우 함수만이 존재하면, 제어가 단계(918)없이 직접 단계(916)로부터 단계(920)로 진행한다. 단계(920)에서, DCT 동작은 제1 프레임에 대한 DCT 커널(kernel)보다 더 짧은 DCT 커널을 이용하여 수행된다. 서브 도면 e)에 대한 DCT 커널은 제2 윈도우 함수에 대하여 N/2이고 및 제3 윈도우 함수에 대하여 N/8이다. 그와 대조적으로, 단일의 제3 윈도우 함수만이 존재하면, 변환 커널은 제2 윈도우 함수에 대하여 N/2와 동일하고 단일 제3 윈도우 함수에 대하여 N/2와 동일하다.
따라서, 다중 중첩 영역(1300)은 두번 윈도윙되는 것이 명백해진다. 제1 윈도윙은 보조 윈도우의 제1 부분(1100a)에 의해 수행되고 제2 윈도윙은 도 11a의 서브 도면 e) 또는 f)에 도시된 바와 같이 첫번째 제3 윈도우 함수(1503)의 후반부에 의해 수행된다.
다시 도 13을 참조한다. 도 1a의 컨텍스트 또는 도 8a의 컨텍스트에서 논의한 바와 같이, 윈도우 시퀀스 제어기는 특정 윈도우 형상을 생성한다. 실시예에서, 윈도우 시퀀스 제어기는 과도 위치 검출기(106)를 포함하도록 구성된다. 과도 검출 부분(0 또는 1)에서 과도 상태가 검출되면, 인코더는 다중 중첩 부분으로 가도록 제어되어 1305에서 지시된 이들 과도 상태가 단일 제3 윈도우 내 또는 2개의 인접하는 제3 윈도우 내에만 존재하도록 제한된다. 특히, 좌측 과도 상태(1305)는 제1 짧은 윈도우 함수에만 존재하도록 제한되고, 과도 상태(1305)의 우측 과도 상태는 제1 내지 제3 윈도우 함수에 존재한다. 그러나, 과도 상태가 영역(1, 2, 3) 등의 0과 다른 영역에 위치하는 것으로 결정되면, 도 6a, 6b, 7 등의 컨텍스트에서 설명하는 바와 같이 유사하게 예를 들어 다중 중첩 영역이 없는 프로세싱이 수행될 수 있다.
그러나, 그와 대조적으로, 다중 중첩 영역 프로세싱은 또한 윈도우 스위칭 애플리케이션의 컨텍스트에서 수행될 수 있고, 여기서, 과도 상태가 검출되면, 짧은 윈도우의 심지어 더 큰 세트가 현재 프레임에 대하여 스위칭되어, 바람직하게, 하나 및 동일한 블록 또는 프레임 래스터 내에서, 긴 윈도우 또는 특정 수의 짧은 윈도우가 윈도윙을 위해 사용된다. 제1 윈도우는 예를 들어 도 13의 윈도우(1500)에 대응하고, 제2 윈도우는 윈도우(1502)에 대응하고, 프레임 내에서 정확하게 과도 상태가 어디에 위치하는지를 모르고 현재 프레임 내의 어딘가에서 과도 상태가 검출될 때에만 다수의 제3 윈도우 함수로의 스위칭이, 소정의 과도 위치를 참조하지 않고, 수행된다.
그러나, 제3 윈도우 함수의 수를 가능한 한 작게 유지하기 위하여 다중 중첩 부분 모드로의 스위칭 및 변환 중첩의 추가 스위칭 및 변환 길이 선택이 프레임 내, 즉, 프레임에 대응하는 시간 부분 또는 프레임의 바람직하게 4 또는 심지어 8개의 상이한 부분 중의 하나에서의 과도 상태의 특정 위치에 따라 수행되는 것이 바람직하며, 이 시간 부분은 도 13의 긴 윈도우(1500) 등의 긴 윈도우의 사이즈의 절반과 동일하다. 바람직하게, 도 13에서 알 수 있는 바와 같이, 다중 중첩 부분은 미리보기 영역의 시작(208)(한편으로는 도 2에 도시되고 다른 한편으로는 도 13에 도시됨) 앞에 위치한다.
디코더측에서, 유사한 프로세싱이 수행된다. 인코딩된 제1 프레임 및 인코딩된 제2 프레임을 포함하는 인코딩된 오디오 신호(821)를 디코딩하는 장치의 실시예에서, 도 8b의 디코딩 프로세서(824)는 인코딩된 제1 프레임 및 인코딩된 제2 프레임을 프로세싱하여 스펙트럼 값의 제1 프레임 및 스펙트럼 값의 제2 프레임을 얻기 위하여 요구되고, 제1 및 제2 서브프레임은 앨리어싱 부분을 포함한다. 시간 변환기(826)는 디코딩 프로세서(824)에 접속되고 시간 변환기(826)는 제1 윈도우 함수를 이용하여 이 제1 프레임에 변환을 적용하여 샘플의 제1 블록을 얻도록 구성된다. 또한, 시간 변환기(826)는 제2 윈도우 함수를 이용하여 제2 프레임의 제1 부분에 변환을 적용하고 하나 이상의 제3 윈도우 함수를 이용하여 제2 프레임의 제2 부분에 변환을 적용하여 샘플의 제2 블록을 얻도록 구성된다. 도 1a의 컨텍스트에서 설명한 바와 같이, 제1 윈도우 함수(1500), 제2 윈도우 함수(1502) 및 하나 이상의 제3 윈도우 함수(1503)는 함께 다중 중첩 영역(1300)을 갖는다.
또한, 디코더는 폴딩-아웃 동작을 이용하여 샘플의 제2 블록을 포스트프로세싱하여 다중 중첩 영역에 샘플의 제1 블록과 중첩하는 샘플의 제2 블록의 일부를 갖는 샘플의 포스트프로세싱된 제2 블록을 얻는 포스트프로세서(828)를 포함한다. 또한, 포스트프로세서(828)는 도 8a 및 도 11a의 컨텍스트에서 설명한 보조 윈도우 함수를 이용하여 샘플의 포스트프로세싱된 제2 블록을 윈도윙하도록 구성된다. 포스트프로세서(828)는 샘플의 포스트프로세싱되고 윈도윙된 제2 블록 및 샘플의 제1 블록의 중첩 가산을 수행하여 도 8b의 829 또는 도 1c의 블록(175)에 지시된 디코딩된 오디오 신호를 얻는다. 따라서, 기본적으로, 도 8b의 포스트프로세서(828)는 보조 윈도우 함수 및 중첩 가산기(174)에 대하여 합성 윈도워(172)의 기능을 가질 수 있다.
후속으로, 시간 변환기와 협력하는 포스트프로세서의 기능은 도 11a의 인코더 도면에 대하여 역 프로세싱을 나타내는 도 11b의 도면을 참조하여 설명한다. 스펙트럼 값의 제1 프레임(1142)은 N사이즈의 역 변환(1161)에 입력되고, 제2 프레임의 제1 부분(1152)은 N/2 역 변환(1162)에 입력되고, 제3 윈도우 함수의 수에 따라, 제2 프레임의 제1 부분(1152)에 대한 것과 유사하게 제2 프레임의 제2 부분(1155)은 4개의 N/8 짧은 변환(1163) 또는 단일 N/2 변환(1162)에 입력된다.
이 절차는 시간 변환기에 의해 수행된다. 시간 변환기는 추가적으로 제1 윈도우 함수를 이용하여 도 11b의 1170에 도시된 이전에 수행된 폴딩-아웃 동작과 함께 윈도윙을 수행한다. 또한, 제2 윈도우 함수는 1172에 도시된 제1 부분(1152)에 절차를 적용할 때 사용한다. 특히, 제2 윈도우 함수의 최우측 부분(1173)의 폴딩-아웃 및 제2 후속 윈도윙은, 프레임의 우측에서 임의의 내부 폴드-아웃이 수행되지 않는 동안 수행된다. 또한, 변환은 제2 프레임의 제1 부분(1152) 뿐만 아니라 도 11b의 1172에 도시된 바와 같이 제2 프레임의 제2 부분(1155)으로 특정 폴드-아웃 및 후속 윈도윙 및 추가의 중첩 가산을 수행한다. 도 11b의 서브 도면 f)에서 단일의 제3 윈도우 함수만이 존재하면, 제2 윈도우 함수의 우측 부분 및 제3 윈도우 함수의 좌측 부분을 이용한 윈도윙과 함께 양쪽으로부터의 단일 폴딩-아웃 동작 및 중첩 범위(1174) 내의 후속의 중첩 가산만이 수행된다.
그 후, 포스트프로세서는 1172의 절차의 결과의 제1 부분으로의 1175에 도시된 폴딩-아웃 동작을 이용하여 포스트프로세싱을 적용하여 이전 프레임에서 연장하는 부분(1176a) 및 다음 프레임에서 연장하는 1176b을 얻는다. 그 후, 폴딩-아웃된 부분(1176a 및 1176b) 및 보조 윈도우 함수를 이용한 현재 프레임(i) 내의 부분과의 윈도윙이 수행되어 1175에 도시된 상태를 얻는다. 그 후, 포스트프로세싱되고 보조 윈도우 함수 윈도윙된 샘플의 제2 블록 및 샘플의 제1 블록의 최종 중첩 가산이 중첩 범위(1180)에서 및 그 내에서 수행되어 이 중첩 범위(1180)에 대응하는 최종 디코딩된 오디오 신호를 얻는다. 또한, 이 절차는, 추가적으로, 중첩이 없고 다음 섹션(1182)이 시간에 있어서 프레임(i)을 따르는 프레임(i+1)에 대한 윈도우 함수의 해당 부분과 중첩함으로써 얻어진다는 사실 때문에, 디코딩된 오디오 신호 샘플(1181)의 후속 부분을 초래한다.
따라서, 도 10a에 도시된 바와 같이, 디코더측 방법은 제1 윈도우 함수를 이용하여 제1 프레임에 변환을 적용하는 단계(1000) 및 제2 윈도우 함수를 이용하여 제2 프레임의 제1 부분에 변환을 적용하는 단계(1010) 및 제3 윈도우 함수(들)를 이용하여 제2 프레임의 제2 부분에 함수를 적용하는 단계(1020)를 포함한다. 그 후, 단계(1030)에서, 폴딩-아웃 동작이 수행되고 단계(1040)에서 보조 윈도우 함수를 이용한 윈도윙이 수행되고, 마지막으로, 단계(1050)에서, 포스트프로세싱되고 윈도윙된 제2 블록 및 제1 블록의 중첩 가산이 수행되어 예를 들어 도 11b에 도시된 프로세싱의 끝에서 디코딩된 오디오 신호를 얻는다.
도 10b에 도시된 바와 같이, 바람직한 실시예는 제2 프레임의 각 부분에 대한 역 DCT 동작을 수행, 즉, 이전 프레임(i-1)에 대하여 더 짧은 길이로 몇 개의 DCT 동작을 수행하는 것을 포함하고, 여기서, 긴 윈도우(1500)가 사용되었다. 단계(1070)에서, 내부 앨리어싱 부분의 폴딩-아웃은 1172에 도시된 동작으로서 수행되고, 폴딩-아웃은 바람직하게 도 11b의 1172에 의해 지시된 라인에서 수직 라인으로서 도시되는 해당 경계에서의 미러링이다. 그 후, 단계(1080)에서, 블록(1184) 내의 제2 및 제3 윈도우 함수를 이용한 윈도윙이 수행되고 블록 내의 윈도윙 결과의 후속 중첩 가산이 1090에 도시된 바와 같이 수행된다. 그 후, 192에서 지시되는 바와 같이, 이전 프레임에서 연장하는 부분(1176a) 및 다음 프레임에서 연장하는 부분(1176b)을 얻기 위하여, 좌측/우측, 또는 즉, 중첩 가산 결과의 이전/이후 앨리어싱 부분의 폴딩 아웃이 수행된다. 그러나, 1175 내의 표현은 단지 1094에 도시된 보조 윈도우 함수를 이용한 윈도윙 후이다. 그 후, 단계(1906)에서, 샘플의 제1 블록과의 중첩 가산은 보조 윈도우 함수를 이용한 윈도윙 후에 수행된다.
후속으로, 도 12a 및 12b를 참조한다. 도 12a의 항목(a)은 도 11a의 제1 라인 내의 절차에 대응한다. 서브 도면 b) 내의 절차는 도 11a의 제2 및 제3 라인에서 수행되는 절차에 대응하고 도 12a의 항목 c)에 도시된 절차는 도 11a의 마지막 2개의 라안 내의 절차에 대응한다. 유사하게, 디코더 측 표현은 도 12b에 대응한다. 특히, 도 11b의 처음 2개의 라인은 도 12b의 서브 도면 f)에 대응한다. 제3 및 제4 라인은 도 12b의 항목 e)에 대응하고 도 12b의 마지막 라인은 도 11b의 마지막 라인에 대응한다.
도 14a는 도 14a의 비다중 중첩 상황 및 도 14b에 도시된 다중 중첩 상황 간의 스위칭을 위해 인코더 측의 윈도우 시퀀스 제어기 또는 디코더 측의 엘리먼트(824, 826, 828)가 구성되는 상황을 나타낸다. 따라서, 과도 부분(0)에서 과도 상태가 검출되면, 하나의 절차가 다중 중첩 부분을 적용하지 않고 TCX-20 윈도우로부터 단일 중첩 짧은 윈도우 TCX-10으로 스위칭한다. 그러나, 바람직하게, 다중 중첩 부분으로의 스위칭은, 제1 윈도우(1400), 제2 윈도우(1402) 및 하나 또는, 도 14b의 실시예에서, 2개의 제3 윈도우(1403)를 포함하는 윈도우 시퀀스를 적용함으로써 수행된다.
도 14b의 윈도우 중첩 및 사이즈는 도 13와 다소 다르지만, 도 11a의 인코더 측 또는 도 11b의 디코더 측에 관한 일반적인 절차는 동일한 방식으로 발생할 수 있음은 명백해진다.
후속으로, 도 15를 설명한다. 특히, 도 15는, 블랙 박스로서, 과도 검출 미리보기(1590) 및 결과적인 프리-에코의 듀레이션(duration)(1595)을 나타낸다. 도 15a는 긴 시작 윈도우, 8개의 짧은 윈도우, 긴 정지 윈도우 등을 포함하는 전통적인 고효율 AAC 타입 시퀀스를 나타낸다. 요구되는 미리보기는 높고 N+N/2+N/16에 이르지만, 프리-에코(1595)는 작다. 유사하게, 도 15b는 긴 시퀀스, 긴 시작 윈도우, 낮은 중첩 윈도우 및 긴 정지 윈도우를 포함하는 윈도우 시퀀스에서 발생하는 전통적인 AAC 낮은 딜레이 타입 과도 검출 절차를 나타낸다. 과도 검출 미리보기는 도 15a에서와 동일하지만, 프리-에코의 듀레이션은 도 15a에서보다 길다. 그러나, 반면에, 더 많은 짧은 윈도우가 사용된다는 사실 때문에 효율이 더 높아짐에 따라 비트레이트 효율은 낮아진다.
도 15c 및 15d는 N/16개의 샘플의 감소된 과도 검출 미리보기를 갖는 고효율 AAC 또는 AAC 낮은 딜레이 절차의 구현예를 나타내고 N/16개의 샘플의 감소된 과도 검출 미리보기로 가능한 긴 시퀀스만이 도시된다. 시퀀스가 긴 윈도우, 긴 윈도우, 긴 시작 윈도우, 긴 정지 윈도우 등으로 구성되면, 도 15d에 도시된 바와 같이, 도 15c와 비교하여 포스트-에코만이 감소하고, 프리-에코(1595)는 동일하다. 도 15c, d는 진보적인 도 15e 및 15f와 유사한 짧은 미리보기를 나타낸다. 도 15c 및 15f에서처럼 다중 중첩 부분을 구현하면, 이들 도면에서처럼 시퀀스만을 이용할 수 있지만, 짧은 윈도우로의 임의의 스위칭은 불가능하다. 따라서, 다중 중첩 부분은 짧은 윈도우로의 스위칭을 허용하여 프리/포스트-에코를 감소시키거나 짧은 미리보기 지연 또는 양 특징을 이용하여 지연 을 감소시키고 프리/포스트-에코를 감소시킨다.
도 15e는 N/16 샘플의 감소된 과도 검출 미리보기 및 바람직한 다중 중첩 영역(1300)을 갖는 고효율 AAC 시퀀스를 나타낸다. 시퀀스는 긴 윈도우, 추가의 긴 윈도우(1500), 추가의 시작 시퀀스(1502), 4개의 짧은 시퀀스(1503) 및 긴 정지 윈도우(1504)를 포함한다. 명백해진 바와 같이, 미리보기가 작고, 프리-에코도 작다. 도 15e에서처럼 유사한 구성을 나타내고 4개의 짧은 시퀀스 대신에 단일의 제3 윈도우 함수만이 존재하는 도 15f에 대하여 유사한 상황이 얻어진다.
본 발명은 블록이 실제 또는 논리적 하드웨어 컴포넌트를 나타내는 블록도의 컨텍스트에서 설명되었지만, 본 발명은 컴퓨터 구현 방법에 의해 구현될 수 있다. 후자의 경우, 블록은 이들 단계가 해당 논리적 또는 물리적 하드웨어 블록에 의해 수행되는 기능을 나타내는 해당 방법 단계를 나타낸다.
임의의 형태는 장치의 컨텍스트에서 설명되지만, 이들 형태들은 또한 해당 방법의 설명을 나타내고, 여기서 블록 또는 장치는 방법 단계 또는 방법 단계의 특징에 대응한다. 유사하게, 방법 단계의 컨텍스트에서 기재된 형태는 또한 해당 장치의 특징 또는 해당 블록 또는 아이템의 기술을 나타낸다. 방법 단계의 일부 또는 전부가, 예를 들어, 마이크로프로세서, 프로그래머블 컴퓨터 또는 전자 회로 등의 하드웨어 장치에 의해(또는 하드웨어 장치를 이용하여) 실행될 수 있다. 임의의 실시예에서, 가장 중요한 방법 단계의 임의의 하나 이상은 이러한 장치에 의해 실행될 수 있다.
진보된 송신 또는 인코딩된 신호는 디지털 저장 매체 상에 저장되거나 인터넷 등의 무선 송신 매체 또는 유선 송신 매체 등의 송신 매체 상에서 송신될 수 있다.
소정의 구현 요구사항에 따라, 본 발명의 실시예는 하드웨어 또는 소프트웨어로 구현될 수 있다. 구현예는 전기적으로 판독가능한 제어 신호가 저장되고 각각의 방법이 수행되도록 프로그래머블 컴퓨터 시스템과 협력하는(또는 협력할 수 있는) 디지털 저장 매체, 예를 들어, 플로피 디스크, DVD, 블루레이, CD, ROM, PROM 및 EPROM, EEPROM 또는 FLASH 메모리를 이용하여 수행될 수 있다. 그러므로, 디지털 저장 매체는 컴퓨터 판독가능할 수 있다.
본 발명에 따른 임의의 실시예는 여기에 기재된 방법 중의 하나가 수행되도록 프로그래머블 컴퓨터 시스템과 협력할 수 있는 전기적 판독가능 제어 신호를 갖는 데이터 캐리어를 포함한다.
일반적으로, 본 발명의 실시예는 프로그램 코드를 갖는 컴퓨터 프로그램 제품으로서 구현될 수 있고, 프로그램 코드는 컴퓨터 상에서 컴퓨터 프로그램 제품이 실행될 때 방법 중의 하나를 수행하도록 동작한다. 프로그램 코드는 예를 들어 머신 판독가능 캐리어 상에 저장될 수 있다.
다른 실시예는 여기에 기재된 방법 중의 하나를 수행하기 위하여 머신 판독가능 캐리어 상에 저장된 컴퓨터 프로그램을 포함한다.
즉, 그러므로, 진보적인 방법의 실시예는 컴퓨터 프로그램이 컴퓨터 상에서 실행될 때 여기에 기재된 방법 중의 하나를 수행하는 프로그램 코드를 포함하는 컴퓨터 프로그램이다.
그러므로, 진보적인 방법의 다른 실시예는 여기에 기재된 방법 중의 하나를 수행하는 컴퓨터 프로그램이 기록된 데이터 캐리어(또는 디지털 저장 매체 또는 컴퓨터 판독가능 매체 등의 비일시적 저장 매체)이다. 데이터 캐리어, 디지털 저장 매체 또는 기록 매체는 전형적으로 유형(tangible) 및/또는 비일시적(non-transitory)이다.
진보적인 방법의 다른 실시예는 여기에 기재된 방법 중 하나를 수행하는 컴퓨터 프로그램을 나타내는 신호의 시퀀스 또는 데이터 스트림이다. 신호의 시퀀스 또는 데이터 스트림은, 예를 들어, 데이터 통신 접속을 통해, 예를 들어 인터넷을 통해, 전송되도록 구성될 수 있다.
추가의 실시예는 여기에 기재된 방법 중의 하나를 수행하도록 구성되거나 적응된 프로세싱 수단, 예를 들어, 컴퓨터 또는 프로그래머블 로직 장치를 포함한다.
추가의 실시예는 여기에 기재된 방법 중의 하나를 수행하는 컴퓨터 프로그램이 설치된 컴퓨터를 포함한다.
본 발명에 따른 추가의 실시예는 여기에 기재된 방법 중의 하나를 수행하는 컴퓨터 프로그램을 수신기로 (예를 들어, 전기적으로 또는 광학적으로) 전송하도록 구성되는 장치 또는 시스템을 포함한다. 수신기는 예를 들어 컴퓨터, 모바일 장치, 메모리 장치 등일 수 있다. 장치 또는 시스템은 예를 들어 컴퓨터 프로그램을 수신기로 전송하는 파일 서버를 포함할 수 있다.
임의의 실시예에서, 프로그래머블 로직 장치(예를 들어, 필드 프로그래머블 게이트 어레이)는 여기에 기재된 방법의 기능 중의 일부 또는 전부를 수행하는데 사용될 수 있다. 임의의 실시예에서, 필드 프로그래머블 게이트 어레이는 여기에 기재된 방법 중의 하나를 수행하기 위하여 마이크로프로세서와 협력할 수 있다. 일반적으로, 방법은 임의의 하드웨어 장치에 의해 바람직하게 수행된다.
상술한 실시예는 단지 본 발명의 원리를 설명하기 위한 것이다. 여기에 기재된 배치 및 세부사항의 변경 및 수정은 당업자에게 자명함을 이해할 것이다. 그러므로, 의도는 특허 청구범위에 의해서만 제한되고 여기에 기재된 실시예의 설명에 의해 제시된 특정 세부사항에 의해서 제한되지 않는다.
참조(References)
[1] International Organization for Standardization, ISO/IEC 14496-3 2009, "Information Technology - Coding of audio-visual objects - Part 3 Audio," Geneva, Switzerland, Aug. 20096.
[2] Internet Engineering Task Force (IETF), RFC 6716, "Definition of the Opus Audio Codec," Proposed Standard, Sep. 2012. Available online at http://tools.ietf.org/html/rfc6716.
[3] C. R. Helmrich, "On the Use of Sums of Sines in the Signal Windows," in Proc . of the 13 th Int . Conference on Digital Audio Effects ( DAFx -10), Graz, Austria, Sep. 2010.
[4] J. Herre and J. D. Johnston, "Enhancing the Performance of Perceptual Audio Coders by Using Temporal Noise Shaping (TNS)," in Proc . 101 st AES Convention, LA, USA, Nov. 1996
[5] M. Neuendorf et al., "MPEG Unified Speech and Audio Coding - The ISO/MPEG Standard for High-Efficiency Audio Coding of All Content Types," in Proc 132 nd Convention of the AES, Budapest, Hungary, Apr. 2012. Also to appear in the Journal of the AES, 2013.
Claims (34)
- 오디오 또는 이미지 신호를 인코딩하는 장치로서,
윈도우된 샘플들의 블록들의 시퀀스를 제공하도록 상기 오디오 또는 이미지 신호를 윈도윙하는 제어가능 윈도워(102);
스펙트럼 값들의 프레임들의 시퀀스를 포함하는 스펙트럼 표현으로 윈도우된 샘플들의 블록들의 시퀀스를 변환하기 위한 변환기(104);
프레임의 과도 미리보기 영역 내의 과도 위치를 확인하는 과도 위치 검출기(106); 및
과도 상태의 확인된 위치(210-213)에 대응하여 오디오 또는 이미지 신호에 대해 특정 중첩 길이를 갖는 특정 윈도우를 적용하도록 상기 제어가능 윈도워(102)를 제어하는 제어기(108);를 포함하며,
상기 제어기(108)는 제1 중첩 길이(203)를 갖는 제1 윈도우(201), 제2 중첩 길이(218)를 갖는 제2 윈도우(215), 제3 중첩 길이(229)를 갖거나 중첩이 없는 제3 윈도우(224)를 포함하는 적어도 3개의 윈도우의 그룹으로부터 특정 윈도우를 선택하도록 구성되며,
상기 제1 중첩 길이(203)는 제2 중첩 길이(218)보다 크고, 상기 제2 중첩 길이(218)는 제3중첩 길이(229)보다 크거나 또는 제로 중첩보다 크고,
특정 윈도우가, 2개의 시간 인접 중첩 윈도우 중의 하나가 과도 위치에서 제1 윈도우 계수를 갖고 2개의 시간 인접 중첩 윈도우 중의 다른 하나가 과도 위치에서 제2 윈도우 계수를 갖도록, 과도 위치에 기초하여 선택되며, 제2 계수가 제1 계수보다 적어도 9배 큰,
오디오 또는 이미지 신호를 인코딩하는 장치. - 제1항에 있어서,
상기 제어기(108)는 제1 윈도우 계수들이 1과 동일하고 제2 윈도우 계수들이 0과 동일하도록 상기 특정 윈도우를 선택하도록 구성되는, 장치. - 제1항 또는 제2항에 있어서,
상기 제1 중첩 길이는 상기 특정 윈도우 길이의 1/2이거나 1/3이거나 1/4과 동일하고, 상기 제2 중첩 길이는 상기 제1중첩 길이의 1/2 또는 1/3과 동일하며, 상기 제3 중첩 길이는 제2 중첩 길이의 1/2 또는 1/4 또는 1/8 이거나 1.25 밀리세컨드 이하인, 장치. - 제1항 내지 제3항 중 어느 한 항에 있어서,
제어기(108)에 의해 제공되는 윈도우 정보(112)와 스펙트럼 값들에 대한 인코딩된 블록들의 시퀀스를 포함하는 스펙트럼 표현의 인코딩된 표현을 연관시키는 출력 인터페이스(114)를 더 포함하는, 장치. - 제1항 내지 제4항 중 어느 한 항에 있어서,
상기 변환기(104)는 변형 이산 코사인 변환 또는 변형 이산 사인 변환을 수행하도록 구성되고, 스펙트럼 값들의 블록에서 스펙트럼 값들의 숫자가 윈도우된 샘플들의 블록에서 윈도우된 샘플들의 숫자보다 낮은, 장치. - 제1항 내지 제5항 중 어느 한 항에 있어서,
상기 제어기(108)는 일정한 프레임 래스터가 적어도 다섯 개의 프레임들을 포함하는 블록들의 시퀀스로 유지되는 방식으로 윈도워(102)를 제어하도록 구성되고, 프레임은 제1 윈도우 길이와 동일한 또는 2의 배수인 정수에 의해 나누어지는 제1 윈도우 길이와 동일한 길이를 갖는, 장치. - 제1항 내지 제6항 중 어느 한 항에 있어서,
상기 과도 위치 검출기(106)는 전체 프레임에 대해 연장하는 과도 미리보기를 적용하도록 그리고 적어도 네개의 쿼터들(quarters)을 구별하도록 구성되며, 상기 제어기(108)는, 과도 상태가 검출되지 않을 때, 상기 제1 윈도우를 선택하도록, 상기 과도 상태가 첫번째 또는 네번째 쿼터에서 검출될 때, 제2 윈도우를 선택하도록, 과도 상태가 두번째 또는 세번째 쿼터에서 검출될 때, 제3 윈도우를 선택하도록 구성되는, 장치. - 제1항 내지 제7항 중 어느 한 항에 있어서,
상기 제어기(108)는 두개의 시간 인접 중첩 윈도우들 중 오직 하나가 검출된 과도 상태를 포함하는 방식으로 중첩 너비가 선택되게 특정 윈도우를 결정하도록 구성되는, 장치. - 제1항 내지 제8항 중 어느 한 항에 있어서,
상기 과도 위치 검출기(106)는 과도 위치가 과도 상태의 시작 또는 개시와 일치하도록 또는 과도 상태의 에너지의 중심 또는 에너지의 최대 진폭의 시간 위치와 일치하도록 과도 미리보기 영역 내에서 과도 상태의 위치를 검출하도록 구성되는, 장치. - 제1항 내지 제9항 중 어느 한 항에 있어서,
상기 과도 위치 검출기(106)는 현재 프레임의 제2부분 및 다음 프레임의 제1부분을 커버하는 과도 미리보기 영역을 이용하도록 구성되며,
상기 과도 위치 검출기(106)는 0부터 7까지 지수에 의해 확인되는 8개의 상이한 과도 위치들을 확인하도록 구성되고,
상기 제어기(108)는 과도 지수가 7일 때, 제2 윈도우를 선택하도록 또는 상기 과도 지수가 6일 때 제3 윈도우를 선택하도록 구성되는, 장치. - 제1항 내지 제10항 중 어느 한 항에 있어서,
상기 과도 위치 검출기(106)는 현재 프레임의 제2부분 및 다음 프레임의 제1부분을 커버하는 과도 미리보기 영역을 이용하도록 구성되며,
상기 과도 위치 검출기(106)는 0에서 7까지의 지수에 의해 확인되는 8개의 상이한 과도 위치들을 확인하도록 구성되고,
상기 제어기는 과도 상태가 검출되지 않을 때, 제1 윈도우를 선택하고, 과도 지수가 0, 1, 6, 7과 동일할 때, 제2 윈도우를 선택하고, 과도 지수가 2, 3, 4, 5와 동일할 때 제3 윈도우를 선택하도록 구성되는, 장치. - 제1항 내지 제11항 중 어느 한 항에 있어서,
상기 제어기(108)는 프레임에 대한 복수의 윈도우들에 의해 얻어지는 스펙트럼 값들의 숫자가 제1 윈도우 크기를 갖는 윈도우 함수를 변환하여 얻어지는 스펙트럼 값들의 숫자와 동일하도록 프레임에 대한 특정 윈도우들의 숫자를 선택하도록 구성되며,
제1 내지 제3 윈도우들은 동일한 제1 윈도우 크기를 가지고, 프레임은 동일 윈도우 크기에 의해 정의되며, 상기 그룹은 제4 윈도우 및 제5 윈도우를 포함하며, 제4 윈도우 및 제5 윈도우는 동일한 제2윈도우 크기를 가지며, 제2 윈도우 크기는 제1 윈도우 크기의 정수 분할이며, 제4 윈도우는 제4 중첩 길이를 가지고 제5 윈도우는 상기 제4 중첩 길이보다 낮은 제5 중첩 길이를 가지는, 장치. - 제1항 내지 제12항 중 어느 한 항에 있어서,
상기 제어기(1085)는 과도 위치, 중첩 너비 정보(602) 및 짧은/긴 변환 정보(600)에 기반하여, 결정되도록 구성되며,
상기 중첩 너비 정보(602)는 최대 중첩 너비를 나타내는 첫번째 값, 중간 중첩 너비를 나타내는 두번째 값 및 최소 중첩 너비를 나타내는 세번째 값을 갖도록 결정되고,
상기 짧은/긴 변환 정보(600)는 하나 이상의 변환들을 갖는 프레임에 대해 긴 윈도우 또는 짧은 윈도우에 대한 확인을 포함하고,
상기 제어기(108)는 짧은/긴 변환 정보(600) 및 중첩 너비(602) 정보에 기반하여 프레임(608)에 대한 둘, 셋, 또는 네 윈도우들의 시퀀스 또는 프레임에 대한 단일 윈도우를 결정하도록 구성되는, 장치. - 제1항 내지 제13항 중 어느 한 항에 있어서,
상기 제어기(108)는 확인된 과도 위치(605)에 대응하여 프레임에 대한 변환들의 대응 길이들 및 변환들의 숫자를 결정하도록 구성되며,
상기 제어기(108)는 프레임에 대한 변환들에 의해 얻어지는 스펙트럼 값들의 숫자가 최대 중첩 윈도우 함수와 연관된 최장 변환 길이에 의해 얻어지는 스펙트럼 값들의 숫자와 동일하도록 프레임에 대한 변환의 길이 및 숫자를 결정하도록 구성되는, 장치. - 제1항 내지 제14항 중 어느 한 항에 있어서,
상기 제어기(108)는 복수의 샘플들이 적어도 세개의 중첩 윈도우들(1500, 1502, 1503)에 의해 윈도우되도록 복수의 샘플들에 대해 연장하는 다중-중첩 영역은 프레임 내에서 얻어지도록 특정 윈도우를 선택하거나 변환의 길이 및 숫자를 결정하도록 구성되는, 장치. - 제1항 내지 제15항 중 어느 한 항에 있어서,
상기 제어기는 다중-중첩 영역이 결정되도록 특정 윈도우를 선택하거나 또는 변환들의 숫자 및 길이를 결정하도록 구성되며, 과도 상태는 프레임의 중간 주변의 프레임의 샘플들의 30%만큼 연장하는 영역에 대응하는 과도 미리보기 영역의 위치에 위치되는, 장치. - 적어도 세개의 상이한 윈도우 함수들로부터 블록에 대한 특정 윈도우 함수를 확인하는 연관 윈도우 정보(160) 및 변환되고 윈도우된 샘플들의 블록들의 시퀀스를 포함하는 오디오 또는 이미지 신호를 디코딩하는 디코더로서,
스펙트럼 값들의 블록들의 시퀀스를 제공하는 프로세서(156);
중첩-가산 프로세싱을 이용하여 스펙트럼 값들의 블록들의 시퀀스를 시간 영역 표현으로 변환하는 제어가능 변환기(158);를 포함하며,
상기 제어가능 변환기(158)는 디코딩된 오디오 또는 이미지 신호를 계산하기 위해 대응 블록에 윈도우 정보에 의해 표시되는 윈도우 함수들을 적용하도록 윈도우 정보에 의해 제어되며,
상기 윈도우는 제1 중첩 길이(203)를 갖는 제1 윈도우(201), 제2 중첩 길이(218)를 갖는 제2 윈도우(225) 및 상기 제3 중첩 길이(229) 또는 중첩이 없는 제3 윈도우(222)를 포함하는 적어도 3개의 윈도우의 그룹으로부터 선택되고, 상기 제1 중첩 길이는 상기 제2 중첩 길이보다 크고, 상기 제2 중첩 길이는 상기 제3 중첩 길이 또는 제로 중첩보다 큰,
적어도 세개의 상이한 윈도우 함수들 중의 블록에 대한 특정 윈도우 함수를 확인하는 연관 윈도우 정보(160) 및 변환되고 윈도우된 샘플들의 블록들의 시퀀스를 포함하는 오디오 또는 이미지 신호를 디코딩하는 디코더. - 제17항에 있어서,
상기 제어가능 변환기(158)는:
스펙트럼 값들의 블록들을 시간 표현으로 변환하는 주파수-시간 변환기(170);
합성 윈도우 함수를 스펙트럼 값들의 블록의 시간 표현에 적용하는 합성 윈도워(172); 및
디코딩된 오디오 또는 이미지 신호를 얻기 위해 시간-인접 윈도우 시간 표현들을 중첩 및 가산하는 중첩-가산기(174);를 포함하며,
상기 합성 윈도워(172), 중첩-가산기(174) 또는 주파수-시간 변환기(170)는 윈도우 정보(160)에 의해 표시되는 것에 따라 중첩 및 합성 윈도우를 적용하도록 연관 윈도우 정보에 의해 제어되는, 디코더. - 제18항에 있어서,
상기 윈도우 정보(603)는 중첩 정보(602) 및 변환 길이 정보(600)를 포함하며,
제어기(180)는 이전 윈도우 정보(606) 및 현재 윈도우 정보(607)에 기반하여 스펙트럼 값들의 블록에 대해 윈도우 및 중첩을 결정하도록 구성되며,
현재 윈도우 정보(607)는 제1 변환 길이를 갖는 제1변환 또는 각각이 제2 변환 길이를 갖는 두개의 제2변환, 또는 제2 변환 길이를 갖는 제2변환 및 각각이 제3 변환 길이를 갖는 두개의 제3변환 또는 제3 변환 길이를 갖는 네개의 변환을 나타내며,
상기 제1 변환 길이는 상기 제2변환 길이 크기의 두배이며 상기 제2 변환 길이는 제3 변환 길이 크기의 두배인, 디코더. - 제17항 내지 제19항 중 어느 한 항에 있어서,
상기 윈도우 정보(603)는 이전 윈도우 함수의 나중 부분의 중첩을 나타내는 이전 중첩 정보(606)를 포함하며, 윈도우 정보는 나중 부분의 중첩을 나타내는 현재 중첩 정보(607)를 포함하고, 상기 제어기(180)는 이전 윈도우의 나중 부분의 중첩 정보에 따른 이전 윈도우를 바로 따르는 윈도우의 이전 부분을 결정하도록 구성되는, 디코더. - 제17항 내지 제20항 중 어느 한 항에 있어서,
현재 프레임에 대한 윈도우 정보는 상기 프레임을 정의하는 제1 변환 길이보다 더 작은 제2 변환 길이를 요구하는 변환 길이 정보(600)를 나타내며,
상기 제어가능 변환기(158)는 제3 변환 길이와 연관된 둘 또는 네개의 윈도우들의 시퀀스를 적용하도록 구성되며, 제3 변환 길이와 연관된 두개의 시간-인접 윈도우들 사이의 중첩은 제3 중첩 길이이며, 제3 변환 길이는 상기 제2 변환 길이보다 더 낮은, 디코더. - 제17항 내지 21항 중 어느 한 항에 있어서,
제1윈도우, 제2윈도우 및 제3윈도우는 프레임을 정의하는 동일 변환 크기와 연관되고,
상기 제1 중첩 길이는 제1 윈도우의 길이의 1/4 또는 1/3 또는 1/2이며, 상기 제2 중첩 길이는 상기 제1 중첩 길이의 1/2 또는 1/3이며, 상기 제3 중첩 길이는 제2 중첩 길이의 1/2 또는 1/4 또는 1/8 또는 1.25 밀리세컨드 이하인, 디코더. - 제22항에 있어서,
상기 제어가능 변환기(158)는 제1 중첩 길이를 갖는 제4 윈도우를, 윈도우 정보에 대응하여, 적용하도록 구성되고, 상기 제4 윈도우는 제1 내지 제3 윈도우들의 변환 크기의 1/2인 변환 크기에 연관되며, 또는
상기 제어가능 변환기(158)는 제2 중첩 길이를 갖는 제5 윈도우 및 제3 중첩 길이를 갖는 제6 윈도우를, 윈도우 정보에 대응하여, 적용하도록 구성되고, 상기 제5 윈도우 및 제6 윈도우는 제1 내지 제3 윈도우들의 변환 크기의 1/4인 동일 변환 크기와 연관되는, 디코더. - 제23항에 있어서,
상기 제어가능 변환기(158)는, 윈도우 정보에 대응하여, 하나의 제4 윈도우 및 두개의 제6 윈도우들의 시퀀스 각가을 적용하도록 구성되며, 상기 두개의 제6 윈도우들은 윈도우 부분들의 중첩에 있어서 제3 중첩 길이를 갖는, 디코더. - 제23항에 있어서,
상기 제어가능 변환기(158)가, 윈도우 정보(603)에 대응하여, 순서대로:
제1 윈도우, 제4 윈도우, 제6 윈도우 및 제5 윈도우(708),
제1 윈도우, 제4 윈도우, 두 개의 제6 윈도우(710),
제2 윈도우, 제5 윈도우, 두개의 제6 윈도우 및 제5 윈도우(704),
제3 윈도우 및 네개의 제6 윈도우(706);
제3 윈도우, 제6 윈도우, 및 제4 윈도우(700),
제3 윈도우, 세개의 제6 윈도우, 및 제5 윈도우(702);
제1 윈도우 및 제2 윈도우, 또는 그 반대,
제1 윈도우, 제3 윈도우 또는 그 반대, 또는
제2 윈도우 및 제3 윈도우, 또는 그 반대,
를 포함하는 윈도우들의 시퀀스를 적용하도록 구성되는, 디코더. - 제17항 내지 제25항 중 어느 한 항에 있어서,
상기 윈도우 지시(603)는 인코딩된 오디오 또는 이미지 신호의 각 프레임과 연관되고, 프레임은 제1 윈도우와 연관된 변환에 의해 정의되며,
상기 윈도우 지시(603)는 중첩 길이(602)에 대해 하나 또는 2 비트들 그리고 변환 길이(600)에 대해 하나의 비트를 갖는 가변 길이 코드이고,
상기 제어가능 변환기(158)는 인코딩된 오디오 또는 이미지 신호에서 이전 윈도우 지시(606)을 바로 따르는 현재 윈도우 지시(607)의 변환 길이 및 중첩 길이에 의해 그리고 이전 윈도우 지시(606)의 중첩 길이에 의해 정의되는 윈도우들의 시퀀스를 적용하도록 구성되는, 디코더. - 제17항 내지 제26항 중 어느 한 항에 있어서,
상기 제어가능 변환기(158)는 중첩 및 가산 기능을 갖는 역 변형 이산 코사인 변환 또는 역 변형 이산 사인 변환 또는 어떠한 다른 앨리어싱 감소 변환을 수행하도록 구성되는, 디코더. - 제17항 내지 제27항 중 어느 한 항에 있어서,
상기 제1 중첩 길이는 256 샘플들 또는 약 10 ms를 포함하며, 제2 중첩 길이는 128 샘플들 또는 약 5 ms를 포함하며 제3 중첩 길이는 16 샘플들 또는 약 0.6 ms를 포함하며, 상기 프레임 길이는 512 샘플들 또는 약 20 ms를 포함하는, 디코더. - 제17항 내지 제28항 중 어느 한 항에 있어서,
제1 변환 길이는 512 MDCT 또는 MDST 계수들을 포함하고, 제2 변환 길이는 256 MDCT 또는 MDST 계수들을 포함하며, 제3 변환 길이는 128 MDCT 또는 MDST 계수들을 포함하는, 디코더. - 제17항 내지 제26항 중 어느 한 항에 있어서,
제1항 내지 제16항 중 어느 한 항의 오디오 또는 이미지 신호를 인코딩하는 장치를 더 포함하는, 디코더. - 제30항에 있어서,
상기 인코딩하는 장치에서 이용되는 윈도우들은 디코더에서 이용되는 대응 윈도우들과 동일하며,
상기 디코더는 윈도우들의 하나의 집합이 디코더 및 인코딩하는 장치에서의 이용을 위해 저장되는 읽기-전용 메모리(197)를 가지는, 디코더. - 오디오 또는 이미지 신호를 인코딩하는 방법으로서,
윈도우된 샘플들의 블록들의 시퀀스를 제공하기 위해 오디오 또는 이미지 신호를 윈도우잉(102)하는 단계;
윈도우된 샘플들의 블록들의 시퀀스를 스펙트럼 값들의 프레임들의 시퀀스를 포함하는 스펙트럼 표현으로 변환하는 단계;
프레임의 과도 미리보기 영역 내의 과도 위치를 확인하는 단계(106); 및
과도 상태의 확인된 위치(210-213)에 대응하여 오디오 또는 이미지 신호에 대해 특정 중첩 길이를 갖는 특정 윈도우를 적용하도록 윈도우잉(102)을 제어(108)하는 단계 - 상기 특정 윈도우는 제1 중첩 길이(203)를 갖는 제1 윈도우(201), 제2 중첩 길이(218)를 갖는 제2 윈도우(215), 제3 중첩 길이(229)를 갖거나 중첩이 없는 제3 윈도우(224)를 포함하는 적어도 3개의 윈도우의 그룹으로부터 선택됨 -;를 포함하고,
상기 제1 중첩 길이(203)는 제2 중첩 길이(218)보다 크고, 상기 제2 중첩 길이(218)는 제3중첩 길이(229)보다 크거나 또는 제로 중첩보다 크고,
특정 윈도우는, 2개의 시간 인접 중첩 윈도우 중의 하나가 과도 위치에서 제1 윈도우 계수를 갖고 2개의 시간 인접 중첩 윈도우 중의 다른 하나가 과도 위치에서 제2 윈도우 계수를 갖도록, 과도 위치에 기초하여 선택되며, 제2 계수가 제1 계수보다 적어도 9배 큰,
오디오 또는 이미지 신호를 인코딩하는 방법. - 적어도 세개의 상이한 윈도우 함수들로부터 블록에 대한 특정 윈도우 함수를 확인하는 연관 윈도우 정보(160) 및 변환되고 윈도우된 샘플들의 블록들의 시퀀스를 포함하는 오디오 또는 이미지 신호를 디코딩하는 방법으로서,
스펙트럼 값들의 블록들의 시퀀스를 제공(156)하는 단계;
중첩-가산 프로세싱을 이용하여 스펙트럼 값들의 블록들의 시퀀스를 시간 영역 표현으로 변환(158)하는 단계;를 포함하며,
상기 변환(158)은 디코딩된 오디오 또는 이미지 신호를 계산하기 위해 대응 블록에 윈도우 정보에 의해 표시되는 윈도우 함수들을 적용하도록 윈도우 정보에 의해 제어되며,
상기 윈도우는 제1 중첩 길이(203)를 갖는 제1 윈도우(201), 제2 중첩 길이(218)를 갖는 제2 윈도우(225) 및 상기 제3 중첩 길이(229) 또는 중첩이 없는 제3 윈도우(222)를 포함하는 적어도 3개의 윈도우의 그룹으로부터 선택되고, 상기 제1 중첩 길이는 상기 제2 중첩 길이보다 크고, 상기 제2 중첩 길이는 상기 제3 중첩 길이 또는 제로 중첩보다 큰,
적어도 세개의 상이한 윈도우 함수들 중의 블록에 대한 특정 윈도우 함수를 확인하는 연관 윈도우 정보(160) 및 변환되고 윈도우된 샘플들의 블록들의 시퀀스를 포함하는 오디오 또는 이미지 신호를 디코딩하는 방법. - 컴퓨터 또는 프로세서 상에서 실행될 때 32항의 방법 또는 제33항의 방법을 수행하는 컴퓨터 프로그램.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361767115P | 2013-02-20 | 2013-02-20 | |
US61/767,115 | 2013-02-20 | ||
PCT/EP2014/053293 WO2014128197A1 (en) | 2013-02-20 | 2014-02-20 | Apparatus and method for encoding or decoding an audio signal using a transient-location dependent overlap |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150120477A true KR20150120477A (ko) | 2015-10-27 |
KR101764725B1 KR101764725B1 (ko) | 2017-08-03 |
Family
ID=50179586
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157025743A KR101764726B1 (ko) | 2013-02-20 | 2014-02-20 | 다중 중첩 부분을 이용하여 인코딩된 신호를 생성하거나 인코딩된 오디오 신호를 디코딩하는 장치 및 방법 |
KR1020157025744A KR101764725B1 (ko) | 2013-02-20 | 2014-02-20 | 과도-위치 의존 중첩을 이용하여 오디오 신호를 인코딩 또는 디코딩하는 장치 및 방법 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157025743A KR101764726B1 (ko) | 2013-02-20 | 2014-02-20 | 다중 중첩 부분을 이용하여 인코딩된 신호를 생성하거나 인코딩된 오디오 신호를 디코딩하는 장치 및 방법 |
Country Status (20)
Country | Link |
---|---|
US (7) | US9947329B2 (ko) |
EP (4) | EP3525207A1 (ko) |
JP (2) | JP6196324B2 (ko) |
KR (2) | KR101764726B1 (ko) |
CN (5) | CN105378835B (ko) |
AR (2) | AR094845A1 (ko) |
AU (2) | AU2014220725B2 (ko) |
BR (2) | BR112015019270B1 (ko) |
CA (2) | CA2900437C (ko) |
ES (2) | ES2634621T3 (ko) |
HK (2) | HK1218988A1 (ko) |
MX (2) | MX348505B (ko) |
MY (2) | MY185210A (ko) |
PL (2) | PL2959481T3 (ko) |
PT (2) | PT2959482T (ko) |
RU (2) | RU2625560C2 (ko) |
SG (2) | SG11201506543WA (ko) |
TR (1) | TR201910956T4 (ko) |
TW (2) | TWI550599B (ko) |
WO (2) | WO2014128197A1 (ko) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2830058A1 (en) | 2013-07-22 | 2015-01-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Frequency-domain audio coding supporting transform length switching |
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 |
EP2980795A1 (en) * | 2014-07-28 | 2016-02-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoding and decoding using a frequency domain processor, a time domain processor and a cross processor for initialization of the time domain processor |
EP2980794A1 (en) | 2014-07-28 | 2016-02-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoder and decoder using a frequency domain processor and a time domain processor |
FR3024581A1 (fr) | 2014-07-29 | 2016-02-05 | Orange | Determination d'un budget de codage d'une trame de transition lpd/fd |
EP3107096A1 (en) | 2015-06-16 | 2016-12-21 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Downscaled decoding |
WO2017050398A1 (en) * | 2015-09-25 | 2017-03-30 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Encoder, decoder and methods for signal-adaptive switching of the overlap ratio in audio transform coding |
EP3182411A1 (en) | 2015-12-14 | 2017-06-21 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for processing an encoded audio signal |
WO2017125559A1 (en) * | 2016-01-22 | 2017-07-27 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatuses and methods for encoding or decoding an audio multi-channel signal using spectral-domain resampling |
JP6976277B2 (ja) * | 2016-06-22 | 2021-12-08 | ドルビー・インターナショナル・アーベー | 第一の周波数領域から第二の周波数領域にデジタル・オーディオ信号を変換するためのオーディオ・デコーダおよび方法 |
US10210874B2 (en) * | 2017-02-03 | 2019-02-19 | Qualcomm Incorporated | Multi channel coding |
EP3382700A1 (en) * | 2017-03-31 | 2018-10-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for post-processing an audio signal using a transient location detection |
EP3382701A1 (en) | 2017-03-31 | 2018-10-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for post-processing an audio signal using prediction based shaping |
WO2018201113A1 (en) * | 2017-04-28 | 2018-11-01 | Dts, Inc. | Audio coder window and transform implementations |
WO2019068915A1 (en) * | 2017-10-06 | 2019-04-11 | Sony Europe Limited | AUDIO FILE ENVELOPE BASED ON RMS POWER IN SUB-WINDOW SEQUENCES |
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 |
TWI681384B (zh) * | 2018-08-01 | 2020-01-01 | 瑞昱半導體股份有限公司 | 音訊處理方法與音訊等化器 |
WO2020094263A1 (en) | 2018-11-05 | 2020-05-14 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and audio signal processor, for providing a processed audio signal representation, audio decoder, audio encoder, methods and computer programs |
CN113365052B (zh) * | 2019-03-09 | 2022-03-25 | 杭州海康威视数字技术股份有限公司 | 进行编码和解码的方法、解码端、编码端和系统 |
KR20220042125A (ko) | 2019-08-10 | 2022-04-04 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 서브픽처 디코딩에서의 버퍼 관리 |
JP7482220B2 (ja) | 2019-10-18 | 2024-05-13 | 北京字節跳動網絡技術有限公司 | サブピクチャのパラメータセットシグナリングにおける構文制約 |
CN112803959B (zh) * | 2019-11-13 | 2022-05-10 | 瑞昱半导体股份有限公司 | 收发电路与应用于收发电路的信号处理方法 |
US11942078B2 (en) | 2021-02-26 | 2024-03-26 | International Business Machines Corporation | Chunking and overlap decoding strategy for streaming RNN transducers for speech recognition |
Family Cites Families (73)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4920426A (en) * | 1986-11-10 | 1990-04-24 | Kokusai Denshin Denwa Co., Ltd. | Image coding system coding digital image signals by forming a histogram of a coefficient signal sequence to estimate an amount of information |
DE3902948A1 (de) | 1989-02-01 | 1990-08-09 | Telefunken Fernseh & Rundfunk | Verfahren zur uebertragung eines signals |
ATE92691T1 (de) * | 1989-10-06 | 1993-08-15 | Telefunken Fernseh & Rundfunk | Verfahren zur uebertragung eines signals. |
US5502789A (en) | 1990-03-07 | 1996-03-26 | Sony Corporation | Apparatus for encoding digital data with reduction of perceptible noise |
CN1062963C (zh) * | 1990-04-12 | 2001-03-07 | 多尔拜实验特许公司 | 用于产生高质量声音信号的解码器和编码器 |
JP3186307B2 (ja) | 1993-03-09 | 2001-07-11 | ソニー株式会社 | 圧縮データ記録装置及び方法 |
US5701389A (en) * | 1995-01-31 | 1997-12-23 | Lucent Technologies, Inc. | Window switching based on interblock and intrablock frequency band energy |
KR0154387B1 (ko) | 1995-04-01 | 1998-11-16 | 김주용 | 음성다중 시스템을 적용한 디지탈 오디오 부호화기 |
JP3552811B2 (ja) * | 1995-09-29 | 2004-08-11 | 三菱電機株式会社 | ディジタル映像信号符号化装置および復号化装置 |
US5848391A (en) * | 1996-07-11 | 1998-12-08 | Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. | Method subband of coding and decoding audio signals using variable length windows |
US6131084A (en) * | 1997-03-14 | 2000-10-10 | Digital Voice Systems, Inc. | Dual subframe quantization of spectral magnitudes |
DE19736669C1 (de) | 1997-08-22 | 1998-10-22 | Fraunhofer Ges Forschung | Verfahren und Vorrichtung zum Erfassen eines Anschlags in einem zeitdiskreten Audiosignal sowie Vorrichtung und Verfahren zum Codieren eines Audiosignals |
JP2000000247A (ja) | 1998-06-15 | 2000-01-07 | Yoshihiro Adachi | ウルトラ ラグ スクリュー |
US6173255B1 (en) * | 1998-08-18 | 2001-01-09 | Lockheed Martin Corporation | Synchronized overlap add voice processing using windows and one bit correlators |
DE10000934C1 (de) | 2000-01-12 | 2001-09-27 | Fraunhofer Ges Forschung | Vorrichtung und Verfahren zum Bestimmen eines Codierungs-Blockrasters eines decodierten Signals |
JP2002118517A (ja) * | 2000-07-31 | 2002-04-19 | Sony Corp | 直交変換装置及び方法、逆直交変換装置及び方法、変換符号化装置及び方法、並びに復号装置及び方法 |
JP4596197B2 (ja) | 2000-08-02 | 2010-12-08 | ソニー株式会社 | ディジタル信号処理方法、学習方法及びそれらの装置並びにプログラム格納媒体 |
KR100898879B1 (ko) * | 2000-08-16 | 2009-05-25 | 돌비 레버러토리즈 라이쎈싱 코오포레이션 | 부수 정보에 응답하여 하나 또는 그 이상의 파라메터를변조하는 오디오 또는 비디오 지각 코딩 시스템 |
FR2822980B1 (fr) * | 2001-03-29 | 2003-07-04 | Ela Medical Sa | Procede de traitement de donnees d'electogrammes d'un dispositif medical implantable actif pour l'aide au diagnostic par un praticien |
MXPA03010237A (es) * | 2001-05-10 | 2004-03-16 | Dolby Lab Licensing Corp | Mejoramiento del funcionamiento de transitorios en sistemas de codificacion de audio de baja tasa de transferencia de bitios mediante la reduccion del pre-ruido. |
US7460993B2 (en) | 2001-12-14 | 2008-12-02 | Microsoft Corporation | Adaptive window-size selection in transform coding |
EP1394772A1 (en) | 2002-08-28 | 2004-03-03 | Deutsche Thomson-Brandt Gmbh | Signaling of window switchings in a MPEG layer 3 audio data stream |
AU2003208517A1 (en) | 2003-03-11 | 2004-09-30 | Nokia Corporation | Switching between coding schemes |
US7325023B2 (en) | 2003-09-29 | 2008-01-29 | Sony Corporation | Method of making a window type decision based on MDCT data in audio encoding |
DE10345996A1 (de) * | 2003-10-02 | 2005-04-28 | Fraunhofer Ges Forschung | Vorrichtung und Verfahren zum Verarbeiten von wenigstens zwei Eingangswerten |
WO2005073959A1 (en) * | 2004-01-28 | 2005-08-11 | Koninklijke Philips Electronics N.V. | Audio signal decoding using complex-valued data |
JP4355745B2 (ja) * | 2004-03-17 | 2009-11-04 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | オーディオ符号化 |
US7630902B2 (en) * | 2004-09-17 | 2009-12-08 | Digital Rise Technology Co., Ltd. | Apparatus and methods for digital audio coding using codebook application ranges |
US7937271B2 (en) * | 2004-09-17 | 2011-05-03 | Digital Rise Technology Co., Ltd. | Audio decoding using variable-length codebook application ranges |
US8744862B2 (en) * | 2006-08-18 | 2014-06-03 | Digital Rise Technology Co., Ltd. | Window selection based on transient detection and location to provide variable time resolution in processing frame-based data |
ATE537536T1 (de) * | 2004-10-26 | 2011-12-15 | Panasonic Corp | Sprachkodierungsvorrichtung und sprachkodierungsverfahren |
KR100668319B1 (ko) | 2004-12-07 | 2007-01-12 | 삼성전자주식회사 | 오디오 신호의 변환방법 및 장치와 오디오 신호에적응적인 부호화방법 및 장치, 오디오 신호의 역변환 방법및 장치와 오디오 신호에 적응적인 복호화 방법 및 장치 |
US7386445B2 (en) * | 2005-01-18 | 2008-06-10 | Nokia Corporation | Compensation of transient effects in transform coding |
WO2006091139A1 (en) * | 2005-02-23 | 2006-08-31 | Telefonaktiebolaget Lm Ericsson (Publ) | Adaptive bit allocation for multi-channel audio encoding |
RU2409874C9 (ru) * | 2005-11-04 | 2011-05-20 | Нокиа Корпорейшн | Сжатие звуковых сигналов |
JP2007304258A (ja) * | 2006-05-10 | 2007-11-22 | Matsushita Electric Ind Co Ltd | オーディオ信号符号化およびその復号化装置、方法ならびにプログラム |
US7987089B2 (en) * | 2006-07-31 | 2011-07-26 | Qualcomm Incorporated | Systems and methods for modifying a zero pad region of a windowed frame of an audio signal |
DE102006051673A1 (de) * | 2006-11-02 | 2008-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung und Verfahren zum Nachbearbeiten von Spektralwerten und Encodierer und Decodierer für Audiosignale |
GB2443832B (en) | 2006-11-14 | 2010-08-18 | Schlumberger Holdings | Method and system of deploying one or more optical fiber waveguides in conjunction with a pipeline |
JP2008129250A (ja) * | 2006-11-20 | 2008-06-05 | National Chiao Tung Univ | Aacのためのウィンドウ切り替え方法およびm/s符号化の帯域決定方法 |
KR20080053739A (ko) * | 2006-12-11 | 2008-06-16 | 삼성전자주식회사 | 적응적으로 윈도우 크기를 적용하는 부호화 장치 및 방법 |
JP5171842B2 (ja) * | 2006-12-12 | 2013-03-27 | フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ | 時間領域データストリームを表している符号化および復号化のための符号器、復号器およびその方法 |
FR2911228A1 (fr) | 2007-01-05 | 2008-07-11 | France Telecom | Codage par transformee, utilisant des fenetres de ponderation et a faible retard. |
FR2911227A1 (fr) * | 2007-01-05 | 2008-07-11 | France Telecom | Codage par transformee, utilisant des fenetres de ponderation et a faible retard |
RU2459283C2 (ru) * | 2007-03-02 | 2012-08-20 | Панасоник Корпорэйшн | Кодирующее устройство, декодирующее устройство и способ |
EP2015293A1 (en) * | 2007-06-14 | 2009-01-14 | Deutsche Thomson OHG | Method and apparatus for encoding and decoding an audio signal using adaptively switched temporal resolution in the spectral domain |
PL2186090T3 (pl) * | 2007-08-27 | 2017-06-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Detektor stanów przejściowych i sposób wspierający kodowanie sygnału audio |
US8592513B2 (en) * | 2008-03-25 | 2013-11-26 | Asahi Kasei Chemicals Corporation | Elastomer composition and storage cover of airbag devices |
US8447591B2 (en) | 2008-05-30 | 2013-05-21 | Microsoft Corporation | Factorization of overlapping tranforms into two block transforms |
MY181231A (en) | 2008-07-11 | 2020-12-21 | Fraunhofer Ges Zur Forderung Der Angenwandten Forschung E V | Audio encoder and decoder for encoding and decoding audio samples |
PL2301020T3 (pl) * | 2008-07-11 | 2013-06-28 | Fraunhofer Ges Forschung | Urządzenie i sposób do kodowania/dekodowania sygnału audio z użyciem algorytmu przełączania aliasingu |
JP5010743B2 (ja) * | 2008-07-11 | 2012-08-29 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | スペクトル傾斜で制御されたフレーミングを使用して帯域拡張データを計算するための装置及び方法 |
EP2144171B1 (en) * | 2008-07-11 | 2018-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoder and decoder for encoding and decoding frames of a sampled audio signal |
MX2011000375A (es) * | 2008-07-11 | 2011-05-19 | Fraunhofer Ges Forschung | Codificador y decodificador de audio para codificar y decodificar tramas de una señal de audio muestreada. |
KR101380297B1 (ko) | 2008-07-11 | 2014-04-02 | 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. | 상이한 신호 세그먼트를 분류하기 위한 판별기와 방법 |
EP2311034B1 (en) * | 2008-07-11 | 2015-11-04 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoder and decoder for encoding frames of sampled audio signals |
AU2013200680B2 (en) | 2008-07-11 | 2015-01-15 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio encoder and decoder for encoding and decoding audio samples |
EP2144230A1 (en) | 2008-07-11 | 2010-01-13 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Low bitrate audio encoding/decoding scheme having cascaded switches |
US8380498B2 (en) * | 2008-09-06 | 2013-02-19 | GH Innovation, Inc. | Temporal envelope coding of energy attack signal by using attack point location |
KR101315617B1 (ko) | 2008-11-26 | 2013-10-08 | 광운대학교 산학협력단 | 모드 스위칭에 기초하여 윈도우 시퀀스를 처리하는 통합 음성/오디오 부/복호화기 |
US9384748B2 (en) * | 2008-11-26 | 2016-07-05 | Electronics And Telecommunications Research Institute | Unified Speech/Audio Codec (USAC) processing windows sequence based mode switching |
AR075199A1 (es) * | 2009-01-28 | 2011-03-16 | Fraunhofer Ges Forschung | Codificador de audio decodificador de audio informacion de audio codificada metodos para la codificacion y decodificacion de una senal de audio y programa de computadora |
US8457975B2 (en) * | 2009-01-28 | 2013-06-04 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio decoder, audio encoder, methods for decoding and encoding an audio signal and computer program |
EP2234103B1 (en) * | 2009-03-26 | 2011-09-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Device and method for manipulating an audio signal |
EP3764356A1 (en) * | 2009-06-23 | 2021-01-13 | VoiceAge Corporation | Forward time-domain aliasing cancellation with application in weighted or original signal domain |
EP3474279A1 (en) * | 2009-07-27 | 2019-04-24 | Unified Sound Systems, Inc. | Methods and apparatus for processing an audio signal |
CA2777073C (en) * | 2009-10-08 | 2015-11-24 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Multi-mode audio signal decoder, multi-mode audio signal encoder, methods and computer program using a linear-prediction-coding based noise shaping |
KR101137652B1 (ko) * | 2009-10-14 | 2012-04-23 | 광운대학교 산학협력단 | 천이 구간에 기초하여 윈도우의 오버랩 영역을 조절하는 통합 음성/오디오 부호화/복호화 장치 및 방법 |
EP2524374B1 (en) * | 2010-01-13 | 2018-10-31 | Voiceage Corporation | Audio decoding with forward time-domain aliasing cancellation using linear-predictive filtering |
CN102222505B (zh) * | 2010-04-13 | 2012-12-19 | 中兴通讯股份有限公司 | 可分层音频编解码方法系统及瞬态信号可分层编解码方法 |
WO2012004349A1 (en) * | 2010-07-08 | 2012-01-12 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Coder using forward aliasing cancellation |
US20140046670A1 (en) * | 2012-06-04 | 2014-02-13 | Samsung Electronics Co., Ltd. | Audio encoding method and apparatus, audio decoding method and apparatus, and multimedia device employing the same |
KR20140075466A (ko) | 2012-12-11 | 2014-06-19 | 삼성전자주식회사 | 오디오 신호의 인코딩 및 디코딩 방법, 및 오디오 신호의 인코딩 및 디코딩 장치 |
-
2014
- 2014-02-20 RU RU2015139597A patent/RU2625560C2/ru active
- 2014-02-20 EP EP19164500.1A patent/EP3525207A1/en active Pending
- 2014-02-20 JP JP2015558443A patent/JP6196324B2/ja active Active
- 2014-02-20 ES ES14706528.8T patent/ES2634621T3/es active Active
- 2014-02-20 AU AU2014220725A patent/AU2014220725B2/en active Active
- 2014-02-20 PL PL14706528T patent/PL2959481T3/pl unknown
- 2014-02-20 AU AU2014220722A patent/AU2014220722B2/en active Active
- 2014-02-20 SG SG11201506543WA patent/SG11201506543WA/en unknown
- 2014-02-20 WO PCT/EP2014/053293 patent/WO2014128197A1/en active Application Filing
- 2014-02-20 MX MX2015010595A patent/MX348505B/es active IP Right Grant
- 2014-02-20 MX MX2015010596A patent/MX348506B/es active IP Right Grant
- 2014-02-20 AR ARP140100544A patent/AR094845A1/es active IP Right Grant
- 2014-02-20 PT PT14706529T patent/PT2959482T/pt unknown
- 2014-02-20 CN CN201480009744.8A patent/CN105378835B/zh active Active
- 2014-02-20 RU RU2015139596A patent/RU2626666C2/ru active
- 2014-02-20 TR TR2019/10956T patent/TR201910956T4/tr unknown
- 2014-02-20 EP EP14706529.6A patent/EP2959482B1/en active Active
- 2014-02-20 SG SG11201506542QA patent/SG11201506542QA/en unknown
- 2014-02-20 CA CA2900437A patent/CA2900437C/en active Active
- 2014-02-20 BR BR112015019270-0A patent/BR112015019270B1/pt active IP Right Grant
- 2014-02-20 BR BR112015019543-1A patent/BR112015019543B1/pt active IP Right Grant
- 2014-02-20 PL PL14706529T patent/PL2959482T3/pl unknown
- 2014-02-20 CN CN201811631280.0A patent/CN110047498B/zh active Active
- 2014-02-20 PT PT147065288T patent/PT2959481T/pt unknown
- 2014-02-20 TW TW103105684A patent/TWI550599B/zh active
- 2014-02-20 WO PCT/EP2014/053287 patent/WO2014128194A1/en active Application Filing
- 2014-02-20 CN CN201910452024.3A patent/CN110232929B/zh active Active
- 2014-02-20 KR KR1020157025743A patent/KR101764726B1/ko active IP Right Grant
- 2014-02-20 EP EP24167580.0A patent/EP4375996A3/en active Pending
- 2014-02-20 AR ARP140100545A patent/AR096576A1/es active IP Right Grant
- 2014-02-20 KR KR1020157025744A patent/KR101764725B1/ko active IP Right Grant
- 2014-02-20 EP EP14706528.8A patent/EP2959481B1/en active Active
- 2014-02-20 JP JP2015558442A patent/JP6175148B2/ja active Active
- 2014-02-20 TW TW103105681A patent/TWI550600B/zh active
- 2014-02-20 CN CN201910368646.8A patent/CN110097889B/zh active Active
- 2014-02-20 CN CN201480009722.1A patent/CN105074819B/zh active Active
- 2014-02-20 MY MYPI2015002060A patent/MY185210A/en unknown
- 2014-02-20 ES ES14706529T patent/ES2736309T3/es active Active
- 2014-02-20 CA CA2901186A patent/CA2901186C/en active Active
- 2014-02-28 MY MYPI2015002058A patent/MY173774A/en unknown
-
2015
- 2015-08-19 US US14/830,484 patent/US9947329B2/en active Active
- 2015-08-19 US US14/830,453 patent/US10354662B2/en active Active
-
2016
- 2016-06-16 HK HK16106931.1A patent/HK1218988A1/zh unknown
- 2016-06-23 HK HK16107301.1A patent/HK1219343A1/zh unknown
-
2017
- 2017-07-26 US US15/660,902 patent/US10685662B2/en active Active
-
2019
- 2019-06-21 US US16/448,260 patent/US10832694B2/en active Active
-
2020
- 2020-05-28 US US16/886,066 patent/US11621008B2/en active Active
- 2020-08-17 US US16/995,581 patent/US11682408B2/en active Active
-
2023
- 2023-02-17 US US18/111,445 patent/US20230282221A1/en active Pending
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101764725B1 (ko) | 과도-위치 의존 중첩을 이용하여 오디오 신호를 인코딩 또는 디코딩하는 장치 및 방법 |
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 |