KR101596183B1 - 오디오 디코더, 오디오 인코더, 오디오 신호를 디코딩하는 방법, 오디오 신호를 인코딩하는 방법, 컴퓨터 프로그램 및 오디오 신호 - Google Patents

오디오 디코더, 오디오 인코더, 오디오 신호를 디코딩하는 방법, 오디오 신호를 인코딩하는 방법, 컴퓨터 프로그램 및 오디오 신호 Download PDF

Info

Publication number
KR101596183B1
KR101596183B1 KR1020147014478A KR20147014478A KR101596183B1 KR 101596183 B1 KR101596183 B1 KR 101596183B1 KR 1020147014478 A KR1020147014478 A KR 1020147014478A KR 20147014478 A KR20147014478 A KR 20147014478A KR 101596183 B1 KR101596183 B1 KR 101596183B1
Authority
KR
South Korea
Prior art keywords
context
information
audio information
audio
reset
Prior art date
Application number
KR1020147014478A
Other languages
English (en)
Other versions
KR20140085582A (ko
Inventor
귈라움 훅스
마르쿠스 물트루스
랄프 가이게어
아르네 보르숨
프레데리크 나겔
줄리엔 로빌리아드
비그네쉬 수바라만
예레미 레콤테
Original Assignee
프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. filed Critical 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베.
Publication of KR20140085582A publication Critical patent/KR20140085582A/ko
Application granted granted Critical
Publication of KR101596183B1 publication Critical patent/KR101596183B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/0017Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/02Speech 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/02Speech 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/028Noise substitution, i.e. substituting non-tonal spectral components by noisy source
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/02Speech 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/0204Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using subband decomposition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/02Speech 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/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/02Speech 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/032Quantisation or dequantisation of spectral components
    • G10L19/035Scalar quantisation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/18Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being spectral information of each sub-band

Abstract

엔트로피 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 오디오 디코더는, 리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트에 따라 엔트로피 인코딩된 오디오 정보를 디코딩하도록 구성된 콘텍스트 기반 엔트로피 디코더를 포함한다. 콘텍스트 기반 엔트로피 디코더는, 상기 콘텍스트에 따라 인코딩된 오디오 정보로부터 디코딩된 오디오 정보를 도출하기 위해 맵핑 정보를 선택하도록 구성된다. 콘텍스트 기반 엔트로피 디코더는, 상기 맵핑 정보를 선택하기 위한 콘텍스트를, 인코딩된 오디오 정보의 보조 정보에 응답하여 이전에 디코딩된 오디오 정보와 무관한 디폴트 콘텍스트로 리셋하도록 구성된 콘텍스트 리셋터를 포함한다.

Description

오디오 디코더, 오디오 인코더, 오디오 신호를 디코딩하는 방법, 오디오 신호를 인코딩하는 방법, 컴퓨터 프로그램 및 오디오 신호{AUDIO DECODER, AUDIO ENCODER, METHOD FOR DECODING AN AUDIO SIGNAL, METHOD FOR ENCODING AN AUDIO SIGNAL, COMPUTER PROGRAM AND AUDIO SIGNAL}
본 발명에 따른 실시예들은 오디오 디코더, 오디오 인코더, 오디오 신호를 디코딩하는 방법, 오디오 신호를 인코딩하는 방법 및 대응하는 컴퓨터 프로그램에 관한 것이다. 일부 실시예는 오디오 신호에 관한 것이다.
본 발명에 따른 일부 실시예들은 엔트로피(entropy) 인코딩/디코딩의 콘텍스트(context)를 리셋하기 위해 보조(side) 정보를 이용하는 오디오 인코딩/디코딩 개념에 관한 것이다.
일부 실시예는 산술적 코더(arithmetic coder)의 리셋의 제어에 관한 것이다.
통상의 오디오 코딩 개념은 중복(redundancy)을 감소시키기 위해 (예컨대, 주파수 도메인 신호 표현(representation)의 스펙트럼 계수를 인코딩하는) 엔트로피 코딩 기법을 포함한다. 통상적으로, 엔트로피 코딩은, 주파수 도메인 기반 코딩 기법에 대한 양자화된 스펙트럼 계수, 또는 시간 도메인 기반 코딩 기법에 대한 양자화된 시간 도메인 샘플에 적용된다. 이들 엔트로피 코딩 기법은 통상적으로 어코딩 코드 북 인덱스(according code book index)와 협력하여 코드 워드를 송신하는데 이용하며, 이 어코딩 코드 북 인덱스는, 디코더가 어떤 코드 북 페이지를 검색(look up)하도록 하여, 상기 코드 북 페이지 상의 송신된 코드 워드에 대응하는 인코딩된 정보 워드를 디코딩한다.
이와 같은 오디오 코딩 개념에 관한 상세 사항에 대해서는, 예컨대, 국제 표준 ISO/IEC 14496-3:2005(E), 파트 3: 오디오, 파트 4: 일반적 오디오 코딩 (GA)-AAC, Twin VQ, BSAC를 참조하며, 여기서 소위 "엔트로피/코딩"을 위한 개념이 기술되어 있다.
그러나, 상세 코드 북 선택 정보 (예컨대, sect_cb)의 정규 송신을 위한 필요에 의해 비트레이트의 상당한 오버헤드(overhead)가 생성되는 것이 발견되었다.
본 발명의 목적은 엔트로피 디코딩의 맵핑 규칙을 신호 통계에 적응시키기 위한 비트레이트-효율적 개념을 생성하기 위한 것이다.
이 목적은 청구항 1에 따른 오디오 디코더, 청구항 12에 따른 오디오 인코더, 청구항 11에 따라 오디오 신호를 디코딩하는 방법, 청구항 16에 따라 오디오 신호를 인코딩하는 방법, 청구항 17에 따른 컴퓨터 프로그램 및 청구항 18에 따른 인코딩된 오디오 신호에 의해 달성된다.
본 발명에 따른 실시예는 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 오디오 디코더를 생성한다. 오디오 디코더는, 리셋이 안된(non-reset) 동작 상태(state-of-operation)에서 이전에 디코딩된 오디오 정보에 기반으로 하는 콘텍스트에 따라 엔트로피 인코딩된 오디오 정보를 디코딩하도록 구성된 콘텍스트 기반 엔트로피 디코더를 포함한다. 엔트로피 디코더는, 상기 콘텍스트에 따라 인코딩된 오디오 정보로부터 디코딩된 오디오 정보를 도출하기 위한 맵핑 정보 (예컨대, 누적 도수 분포표(cumulative frequencies table), 또는 Huffmann-코드북)를 선택하도록 구성된다. 게다가, 콘텍스트 기반 엔트로피 디코더는 또한, 상기 맵핑 정보를 선택하기 위한 콘텍스트를, 인코딩된 오디오 정보의 보조 정보(side information)에 응답하여 이전의 디코딩된 오디오 정보와 무관한 디폴트(default) 콘텍스트로 리셋하도록 구성된 콘텍스트 리셋터(resetter)를 포함한다.
이 실시예는, 많은 경우에, 엔트로피 인코딩된 오디오 정보 내의 상관이 이용될 수 있음에 따라, 이전에 디코딩된 오디오 정보 항목에 기반으로 하는 콘텍스트에 따라 (예컨대, 코드 북을 조사하거나, 확률 분포를 결정함으로써) 엔트로피 인코딩된 오디오 정보를 디코딩된 오디오 정보로 맵핑하는 것을 결정하는 콘텍스트를 도출하는 것이 비트레이트 효율적이다는 발견에 기초로 한다. 예컨대, 어떤 스펙트럼 빈(spectral bin)이 제 1 오디오 프레임에서의 고 강도를 포함하면, 동일한 스펙트럼 빈이 다시 상기 제 1 오디오 프레임에 뒤따른 다음 오디오 프레임에서의 고 강도를 포함하는 확률이 높다. 따라서, 콘텍스트를 기반으로 맵핑 정보의 선택은, 인코딩된 오디오 정보로부터 디코딩된 오디오 정보를 도출하는 맵핑 정보의 선택을 위한 상세 정보가 송신되는 경우에 비해 비트레이트를 감소시킬 수 있음이 자명하다.
그러나, 또한, 이전에 디코딩된 오디오 정보로부터의 콘텍스트의 도출은 때때로 (인코딩된 오디오 정보로부터 디코딩된 오디오 정보를 도출하기 위한) 맵핑 정보가 선택되어 상당히 부적절한 상황을 초래하여, 오디오 정보를 인코딩하기 위한 불필요한 고 비트 요구를 생성함이 발견되었다. 이런 상황은, 예컨대, 다음 오디오 프레임의 스펙트럼 에너지 분포가 상당히 다를 경우에 일어나, 다음 오디오 프레임 내의 새로운 스펙트럼 에너지 분포가 이전의 오디오 프레임 내의 스펙트럼 분포에 대한 지식을 기반으로 예상되는 분포에서 상당히 벗어나도록 한다.
본 발명의 핵심에 따르면, 비트레이트가 (인코딩된 오디오 정보로부터 디코딩된 오디오 정보를 도출하기 위한) 부적절한 맵핑 정보의 선택에 의해 상당히 저하되는 경우에, 콘텍스트는 인코딩된 오디오 정보의 보조 정보에 응답하여 리셋되어, 결과적으로 오디오 정보의 인코딩/디코딩을 위한 적당한 비트 소비를 초래하는 (디폴트 콘텍스트와 관련되는) 디폴트 맵핑 정보를 선택한다.
상술한 바를 요약하기 위해, 본 발명의 핵심으로서, 오디오 정보의 비트레이트 효율적 인코딩은, 보통 (리셋이 안된 동작 상태에서), 콘텍스트를 도출하여 대응하는 맵핑 정보를 선택하기 위한 이전에 인코딩된 오디오 정보를 이용하는 콘텍스트 기반 엔트로피 디코더를, 콘텍스트를 리셋하기 위한 보조 정보 기반 리셋 메커니즘과 조합함으로써 달성될 수 있는데, 그 이유는 이와 같은 개념이, (오디오 콘텐츠가 맵핑 규칙의 콘텍스트 기반 선택의 설계를 위해 이용되는 기대치(expectation)를 충족시킬 시에) 정규 경우의 오디오 콘텐츠에 잘 적응되는 적절한 디코딩 콘텍스트를 유지하기 위한 노력을 최소화하여, (오디오 콘텐츠가 상기 기대치로부터 상당히 벗어날 시에) 비정규 경우의 비트레이트의 과잉 증가를 회피하기 때문이다.
바람직한 실시예에서, 콘텍스트 리셋터는, 동일한 스펙트럼 해상도 (예컨대, 주파수 빈(bin)의 수)의 관련된 스펙트럼 데이터를 가진 다음 시간 부분 (예컨대, 오디오 프레임) 간의 전이(transition)에서 콘텍스트 기반 엔트로피 디코더를 선택적으로 리셋하도록 구성된다. 이 실시예는, 스펙트럼 해상도가 변화되지 않을지라도 콘텍스트의 리셋이 (필요로 된 비트레이트의 감소에 의해) 유익한 효과를 가질 수 있는 발견에 기초로 한다. 환언하면, 스펙트럼 해상도의 변화와 무관하게 콘텍스트의 리셋을 실행할 수 있음이 발견되었는데, 그 이유는 콘텍스트가 (예컨대, 프레임마다 "긴 윈도우(long window)"에서 프레임마다 다수의 "짧은 윈도우(short windows)"로 스위칭함으로써) 스펙트럼 해상도를 변화시킬 필요가 없을지라도 부적절할 수 있음이 발견되었기 때문이다. 환언하면, 저 시간 해상도(temporal resolution) (예컨대, 고 스펙트럼 해상도와 함께, 긴 윈도우)에서 고 시간 해상도 (예컨대, 저 스펙트럼 해상도와 함께, 짧은 윈도우)로 변화시키는 것이 바람직하지 않을 수 있는 상황에서도 (콘텍스트를 리셋하기를 바라는) 콘텍스트가 부적절할 수 있음이 발견되었다.
바람직한 실시예에서, 오디오 디코더는, 인코딩된 오디오 정보로서, 제 1 오디오 프레임 및, 상기 제 1 오디오 프레임 다음의 제 2 오디오 프레임에서 스펙트럼 값을 나타내는 정보를 수신하도록 구성된다. 이런 경우에, 오디오 디코더는 바람직하게는, 제 1 오디오 프레임의 스펙트럼 값에 기초로 하는 제 1 윈도우 시간 도메인 신호, 및 제 2 오디오 프레임의 스펙트럼 값에 기초로 하는 제 2 윈도우 시간 도메인 신호를 중첩-가산(overlap-and-add)하도록 구성된 스펙트럼-도메인 대 시간-도메인 변환기를 포함한다. 오디오 디코더는, 제 1 윈도우 시간 도메인 신호를 획득하기 위한 윈도우 및, 제 2 윈도우 시간 도메인 신호를 획득하기 위한 윈도우의 윈도우 형상을 개별적으로 조정하도록 구성된다. 오디오 디코더는 또한 바람직하게는, 보조 정보에 응답하여, 제 2 윈도우 형상이 제 1 윈도우 형상과 동일할지라도, 제 1 오디오 프레임의 스펙트럼 값의 디코딩과 제 2 오디오 프레임의 스펙트럼 값의 디코딩 간의 콘텍스트의 리셋을 실행하여, 제 2 오디오 프레임의 인코딩된 오디오 정보를 디코딩하기 위해 이용되는 콘텍스트가 리셋의 경우에 제 1 오디오 프레임의 디코딩된 오디오 정보와 무관하도록 구성된다.
이 실시예는, 제 1 및 2 오디오 프레임의 윈도우 시간 도메인 신호가 중첩-가산되고, 동일한 윈도우 형상이 제 1 오디오 프레임 및 제 2 오디오 프레임의 스펙트럼 값으로부터 제 1 윈도우 시간 도메인 신호 및 제 2 윈도우 시간 도메인 신호를 도출하기 위해 선택될지라도, 제 1 오디오 프레임의 스펙트럼 값의 (콘텍스트를 기반으로 선택된 맵핑 정보를 이용하는) 디코딩과, 제 2 오디오 프레임의 스펙트럼 값의 (콘텍스트를 기반으로 선택된 맵핑 정보를 이용하는) 디코딩 간의 콘텍스트의 리셋을 고려한다. 따라서, 콘텍스트의 리셋은 부가적인 자유도(degree of freedom)로 도입되어, 밀접하게 관련된 오디오 프레임의 스펙트럼 값의 디코딩 간의 콘텍스트 리셋터에 의해 적용될 수 있으며, 이의 윈도우 시간 도메인 신호는 동일한 윈도우 형상을 이용하여 도출되어, 중첩-가산된다.
따라서, 콘텍스트의 리셋은 이용된 윈도우 형상과 무관하고, 또한 다음 프레임의 윈도우 시간 도메인 신호가 연속 오디오 콘텐츠에 속한다는, 즉 중첩-가산된다는 사실과 무관한 것이 바람직하다.
바람직한 실시예에서, 엔트로피 디코더는, 보조 정보에 응답하여, 동일한 주파수 해상도를 가진 오디오 정보의 인접한 프레임의 오디오 정보의 디코딩 간의 콘텍스트를 리셋하도록 구성된다. 이 실시예에서, 콘텍스트의 리셋은 주파수 해상도의 변화와 무관하게 실행된다.
또 다른 바람직한 실시예에서, 오디오 디코더는 콘텍스트의 리셋을 신호화하는 콘텍스트 리셋 보조 정보를 수신하도록 구성된다. 이 경우에, 오디오 디코더는 또한 부가적으로 윈도우 형상 보조 정보를 수신하여, 콘텍스트의 리셋의 실행과 무관한 제 1 및 2 윈도우 시간 신호를 획득하기 위해 윈도우의 윈도우 형상을 조정하도록 구성된다.
바람직한 실시예에서, 오디오 디코더는, 콘텍스트를 리셋하기 위한 보조 정보로서, 인코딩된 오디오 정보의 오디오 프레임마다 1비트 콘텍스트 리셋 플래그를 수신하도록 구성된다. 이 경우에, 오디오 디코더는 바람직하게는, 콘텍스트 리셋 플래그 이외에, 인코딩된 오디오 정보로 나타내는 스펙트럼 값의 스펙트럼 해상도, 또는 인코딩된 오디오 정보로 나타내는 시간 도메인 값을 윈도우화하는 시간 윈도우의 윈도우 길이를 나타내는 보조 정보를 수신하도록 구성된다. 콘텍스트 리셋터는, 동일한 스펙트럼 해상도의 스펙트럼 값을 나타내는 인코딩된 오디오 정보의 2개의 오디오 프레임 간의 전이에서 1비트 콘텍스트 리셋 플래그에 응답하여 콘텍스트의 리셋을 실행하도록 구성된다. 이 경우에, 1비트 콘텍스트 리셋 플래그는 통상적으로 다음 오디오 프레임의 인코딩된 오디오 정보의 디코딩 간의 콘텍스트의 단일 리셋을 생성한다.
다른 바람직한 실시예에서, 오디오 디코더는, 콘텍스트를 리셋하기 위한 보조 정보로서, 인코딩된 오디오 정보의 오디오 프레임마다 1비트 콘텍스트 리셋 플래그를 수신하도록 구성된다. 또한, 오디오 디코더는, (단일 오디오 프레임이 개별 짧은 윈도우가 관련될 수 있는 다수의 서브 프레임으로 세분되도록) 오디오 프레임마다 스펙트럼 값의 다수의 세트로 이루어지는 인코딩된 오디오 정보를 수신하도록 구성된다. 이 경우에, 콘텍스트 기반 엔트로피 디코더는, 리셋이 안된 동작 상태에서 주어진 오디오 프레임의 스펙트럼 값의 이전의 세트의 이전 디코딩된 오디오 정보에 기반으로 하는 콘텍스트에 따라 주어진 오디오 프레임의 스펙트럼 값의 다음 세트의 엔트로피 디코딩된 오디오 정보를 디코딩하도록 구성된다. 그러나, 콘텍스트 리셋터는, 주어진 오디오 프레임의 스펙트럼 값의 제 1 세트의 디코딩 전과, 1비트 콘텍스트 리셋 플래그에 응답하여 (즉, 1비트 콘텍스트 리셋 플래그가 활성적일 경우, 및 1비트 콘텍스트 리셋 플래그가 활성적일 경우에만) 주어진 오디오 프레임의 스펙트럼 값의 어떤 2개의 다음 세트의 디코딩 간에 콘텍스트를 디폴트 콘텍스트로 리셋하여, 주어진 오디오 프레임의 1비트 콘텍스트 리셋 플래그의 활성화가 오디오 프레임의 스펙트럼 값의 다수의 세트를 디코딩할 시에 콘텍스트의 다수 횟수의 리셋을 유발시키도록 구성된다.
이 실시예는, 통상적으로, 비트레이트에 의해, 스펙트럼 값의 개별 세트가 인코딩되는 다수의 "짧은 윈도우"를 포함하는 오디오 프레임에서 콘텍스트의 단일 리셋만을 실행하는 것이 비능률적이다는 발견에 기초로 한다. 오히려, 스펙트럼 값의 다수의 세트를 포함하는 오디오 프레임은 오디오 콘텐츠의 강한 불연속성(strong discontinuity)을 포함함으로써, 비트레이트를 감소시키기 위해, 스펙트럼 값의 각각의 다음 세트 사이에 콘텍스트를 리셋하는 것이 좋다. 이와 같은 해결책은, 콘텍스트의 1회 리셋 (예컨대, 프레임의 시초에서만) 및, (다수의 짧은 윈도우) 프레임 내의 (예컨대, 여분 1비트 플래그를 이용하여) 개별 신호화 다수 콘텍스트 리셋 횟수 보다 더 효율적인 것으로 발견되었다.
바람직한 실시예에서, 오디오 디코더는, 소위 "짧은 윈도우"를 이용할 시에 (즉, 오디오 프레임보다 더 짧은 다수의 짧은 윈도우를 이용하여 중첩 가산되는 스펙트럼 값의 다수의 세트를 송신할 시에) 그룹화(grouping) 보조 정보를 수신하도록 구성된다. 이 경우에, 오디오 디코더는 바람직하게는, 그룹화 보조 정보에 따라 공통 스케일 인수(common scale factor) 정보와의 조합을 위한 스펙트럼 값의 세트 중 2 이상을 그룹화하도록 구성된다. 이 경우에, 콘텍스트 리셋터는 바람직하게는, 1비트 콘텍스트 리셋 플래그에 응답하여 서로 그룹화된 스펙트럼 값의 세트의 디코딩 간에 콘텍스트를 디폴트 콘텍스트로 리셋하도록 구성된다. 이 실시예는, 일부 경우에, 초기 스케일 인수가 스펙트럼 값의 다음 세트에 적용 가능할지라도, 스펙트럼 값의 세트의 그룹화된 시퀀스의 디코딩된 오디오 값 (예컨대, 디코딩된 스펙트럼 값)의 변화가 강할 수 있다는 발견에 기초로 한다. 예컨대, 스펙트럼 값의 다음 세트 간에 정상적이지만 상당한 주파수 변화(steady yet significant frequency variation)가 있다면, 스펙트럼 값의 다음 세트의 스케일 인수는 (예컨대, 주파수 변화가 스케일 인수 대역을 초과하지 않으면) 동일할 수 있지만, 그럼에도, 스펙트럼 값의 서로 다른 세트 간의 전이에서 콘텍스트를 리셋하는 것이 적절하다. 따라서, 기술된 실시예는, 이와 같은 주파수 변화 오디오 신호 전이가 있는 데서도 비트레이트 효율적 인코딩 및 디코딩을 고려한다. 또한, 이런 개념은, 매우 상관된 스펙트럼 값이 있는 데서 급속한 볼륨 변화를 인코딩할 시에 양호한 실행을 고려한다. 이 경우에, 서로 다른 스케일 인수가 (스케일 인수가 서로 다르기 때문에, 이 경우에 서로 그룹화되지 않는) 스펙트럼 값의 다음 세트와 관련될 수 있을지라도, 콘텍스트의 리셋은 콘텍스트 리셋 플래그를 비활성화함으로써 회피될 수 있다.
다른 실시예에서, 오디오 디코더는, 콘텍스트를 리셋하기 위한 보조 정보로서, 인코딩된 오디오 정보의 오디오 프레임마다 1비트 콘텍스트 리셋 플래그를 수신하도록 구성된다. 이 경우에, 오디오 디코더는 또한, 인코딩된 오디오 정보로서, 인코딩된 오디오 프레임의 시퀀스를 수신하도록 구성되며, 이 인코딩된 프레임의 시퀀스는 선형 예측 도메인 오디오 프레임을 포함한다. 선형 예측 도메인 오디오 프레임은, 예컨대, 선형 예측 도메인 오디오 합성기를 여기(exciting)하기 위한 선택 가능한 수의 변환 코딩된 여기 부분을 포함한다. 콘텍스트 기반 엔트로피 디코더는, 리셋이 안된 동작 상태에서 이전 디코딩된 오디오 정보에 기초로 하는 콘텍스트에 따라 변환 코딩된 여기 부분의 스펙트럼 값을 디코딩하도록 구성된다. 콘텍스트 리셋터는, 보조 정보에 응답하여, 주어진 오디오 프레임의 제 1 변환 코딩된 여기 부분의 스펙트럼 값의 세트의 디코딩 전에 콘텍스트를 디폴트 콘텍스트로 리셋하지만, 주어진 오디오 프레임의 (즉, 그 내의) 서로 다른 변환 코딩된 여기 부분의 스펙트럼 값의 세트의 디코딩 간에는 콘텍스트를 디폴트 콘텍스트로 리셋하는 것을 생략하도록 구성된다. 이 실시예는, 콘텍스트 기반 디코딩 및 콘텍스트 리셋의 조합이 선형 예측 도메인 오디오 합성기에 대한 변환 코딩된 여기를 인코딩할 시에 비트레이트를 감소시킨다는 발견에 기초로 한다. 게다가, 변환 코딩된 여기를 인코딩할 시에 콘텍스트를 리셋하기 위한 시간적 입도(temporal granularity)는 순수 주파수 도메인 인코딩 (예컨대, an Advanced-Audio-Coding-type audio coding)의 전이 (짧은 윈도우)가 있는 데서 콘텍스트를 리셋하는 시간적 입도보다 크게 선택될 수 있음이 발견되었다.
다른 바람직한 실시예에서, 오디오 디코더는, 오디오 프레임마다 스펙트럼 값의 다수의 세트를 포함하는 인코딩된 오디오 정보를 수신하도록 구성된다. 이 경우에, 오디오 디코더는 또한 바람직하게는 그룹화 보조 정보를 수신하도록 구성된다. 오디오 디코더는, 그룹화 보조 정보에 따라 공통 스케일 인수 정보와의 조합을 위한 스펙트럼 값의 세트 중 2 이상을 그룹화하도록 구성된다. 바람직한 실시예에서, 콘텍스트 리셋터는 이 그룹화 보조 정보에 응답하여 (즉, 이 정보에 따라) 콘텍스트를 디폴트 콘텍스트로 리셋하도록 구성된다. 콘텍스트 리셋터는, 다음 그룹의 스펙트럼 값의 세트의 디코딩 사이에 콘텍스트를 리셋하고, 단일 그룹 (즉, 한 그룹 내)의 스펙트럼 값의 세트의 디코딩 사이에는 콘텍스트를 리셋하는 것을 회피하도록 구성된다. 본 발명의 이런 실시예는, 유사성(similarity)이 높고, (이런 이유로 서로 그룹화되는) 스펙트럼 값의 세트의 신호화가 존재할 경우에는 전용 콘텍스트 리셋 보조 정보를 이용할 필요가 없다는 발견에 기초로 한다. 특히, 스케일 인수 데이터가 (예컨대, 특히, 스펙트럼 값의 세트가 그룹화되지 않을 경우에, 스펙트럼 값의 한 세트에서 윈도우 내의 스펙트럼 값의 다른 세트로의 전이에서, 또는 한 윈도우에서 다른 윈도우로의 전이에서) 변화할 때마다 콘텍스트를 리셋하는 것이 적절한 많은 경우가 있음이 발견되었다. 그러나, 동일한 스케일 인수가 관련되는 스펙트럼 값의 2 세트 간에 콘텍스트를 리셋하는 것이 바람직하다면, 새로운 그룹의 존재를 신호화함으로써 강제로 리셋할 수 있다. 이것은, 동일한 스케일 인수를 재송신하는 대가(price)를 가져오지만, 콘텍스트의 빠진(missing) 리셋이 코딩 효율을 상당히 저하시킬 경우에 유익할 수 있다. 그럼에도 불구하고, 콘텍스트의 리셋을 위한 그룹화 보조 정보의 평가는, 필요 시에 콘텍스트의 리셋을 허용하면서, 전용 콘텍스트 리셋 보조 정보를 송신할 필요성을 회피하는 효율적인 개념일 수 있다. 동일한 스케일 인수 정보가 이용될 시에도 콘텍스트가 리셋되어야 하는 경우들에서는, (부가적인 그룹을 이용하여, 스케일 인수 정보를 재송신할 필요성에 의해 유발되는) 비트레이트에 의한 페널티(penalty)가 존재하며, 이 비트레이트의 페널티는 다른 프레임에서 비트레이트 감소로 보상될 수 있다.
본 발명에 따른 다른 실시예는 입력 오디오 정보를 기반으로 인코딩된 오디오 정보를 제공하는 오디오 인코더를 생성한다. 오디오 인코더는 콘텍스트에 따라 입력 오디오 정보의 주어진 오디오 정보를 인코딩하도록 구성된 콘텍스트 기반 엔트로피 인코더를 포함하며, 상기 콘텍스트는, 리셋이 안된 동작 상태에서, 인접한 오디오 정보에 기초로 하고, 상기 주어진 오디오 정보에 시간적 또는 공간적으로 인접한다. 콘텍스트 기반 엔트로피 인코더는 또한, 상기 콘텍스트에 따라 입력 오디오 정보로부터 인코딩된 오디오 정보를 도출하기 위한 맵핑 정보를 선택하도록 구성된다. 콘텍스트 기반 엔트로피 인코더는 또한 맵핑 정보를 선택하기 위한 콘텍스트를 디폴트 콘텍스트로 리셋하도록 구성된 콘텍스트 리셋터를 포함하며, 상기 디폴트 콘텍스트는 콘텍스트 리셋 조건의 생성에 응답하여 연속적인 입력 오디오 정보 내에서 이전의 디코딩된 오디오 정보와 무관하다. 콘텍스트 기반 엔트로피 인코더는 또한 콘텍스트 리셋 조건부의 존재를 나타내는 인코딩된 오디오 정보의 보조 정보를 제공하도록 구성된다. 본 발명에 따른 이런 실시예는, 적절한 보조 정보에 의해 신호화되는 콘텍스트 기반 엔트로피 인코딩과 콘텍스트의 특별한 리셋과의 조합이 입력 오디오 정보의 비트레이트 효율적 인코딩을 고려한다는 발견에 기초로 한다.
바람직한 실시예에서, 오디오 인코더는 입력 오디오 정보의 n 프레임마다 적어도 한번 정규 콘텍스트 리셋을 실행하도록 구성된다. 콘텍스트의 리셋이 프레임간 의존성의 시간적 제한을 도입하기 때문에 (또는 적어도 이와 같은 프레임간 의존성의 제한에 기여하기 때문에, 정규 콘텍스트 리셋은 매우 빠르게 오디오 신호에 동기할 기회를 가져오는 것이 발견되었다.
다른 바람직한 실시예에서, 오디오 인코더는 다수의 서로 다른 코딩 모드 (예컨대, 주파수 도메인 인코딩 모드 및 선형 예측 도메인 인코딩 모드) 간에 스위칭하도록 구성된다. 이 경우에, 오디오 인코더는 바람직하게는 2개의 코딩 모드 간의 변화에 응답하여 콘텍스트 리셋을 실행하도록 구성될 수 있다. 이 실시예는, 2개의 코딩 모드 간의 변화가 통상적으로 입력 오디오 신호의 상당한 변화와 연결되어, 통상적으로 코딩 모드의 스위칭 전의 오디오 콘텐츠와 코딩 모드의 스위칭 후의 오디오 콘텐츠 간에 매우 제한된 상관만이 존재한다는 발견에 기초로 한다.
다른 바람직한 실시예에서, 오디오 인코더는, 인접한 오디오 정보에 기초로 하고, 어떤 오디오 정보에 시간적으로 또는 스펙트럼으로 인접한 리셋이 안된 콘텍스트에 따라 입력 오디오 정보의 어떤 오디오 정보 (예컨대, 입력 오디오 정보의 특정 프레임 또는 부분, 또는 입력 오디오 정보의 적어도 하나 이상의 특정 스펙트럼 값)를 인코딩하기 위해 필요로 되는 제 1 수의 비트를 계산하거나 평가하고, 디폴트 콘텍스트 (예컨대, 콘텍스트가 리셋되는 콘텍스트의 상태)를 이용하여 어떤 오디오 정보를 인코딩하기 위해 필요로 되는 제 2 수의 비트를 계산하거나 평가하도록 구성된다. 오디오 인코더는 상기 제 1 수의 비트와 상기 제 2 수의 비트를 비교하여, 리셋이 안된 콘텍스트를 기반으로 또는 디폴트 콘텍스트를 기반으로 어떤 오디오 정보에 대응하는 인코딩된 오디오 정보를 제공하는지를 결정하도록 더 구성된다. 오디오 인코더는 또한, 보조 정보를 이용하여 상기 결정의 결과를 신호화하도록 구성된다. 이 실시예는, 때때로 비트레이트에 의해 콘텍스트를 리셋하는 것이 유익한지를 선험적 결정하기가 곤란하다는 발견에 기초로 한다. 콘텍스트의 리셋은 결과적으로, 어떤 오디오 정보의 인코딩을 위해 (더욱 낮은 비트레이트를 제공함으로써) 더욱 적합하거나, 어떤 오디오 정보를 인코딩하기 위해 (더욱 높은 비트레이트를 제공함으로써) 적합하지 않은 (어떤 입력 오디오 정보로부터 인코딩된 오디오 정보를 도출하기 위한) 맵핑 정보를 선택할 수 있다. 일부 경우에, 콘텍스트를 리셋하고, 리셋하지 않고, 양방의 변화를 이용하여 인코딩에 필요로 되는 비트의 수를 결정함으로써, 콘텍스트를 리셋하는지의 여부를 결정하는 것이 유익한 것으로 발견되었다.
본 발명에 따른 추가 실시예는 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법, 및 입력 오디오 정보를 기반으로 인코딩된 오디오 정보를 제공하는 방법을 생성한다.
본 발명에 따른 추가 실시예는 대응하는 컴퓨터 프로그램을 생성한다.
본 발명에 따른 추가 실시예는 오디오 신호를 생성한다.
또한, 본 발명의 일 실시예에 따르면, 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 기반으로 디코딩된 오디오 정보(112;212)를 제공하는 오디오 디코더(100;200)가 제시된다. 상기 오디오 디코더는, 리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트(q[0],q[1])에 따라 상기 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 디코딩하도록 구성된 콘텍스트 기반 엔트로피 디코더(120;240)를 포함하는데; 상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 콘텍스트(q[0],q[1])에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보(112;212)를 도출하기 위해 맵핑 정보(cum_freq[pki])를 선택하도록 구성되며; 상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 맵핑 정보를 선택하기 위한 상기 콘텍스트(q[0],q[1])를, 상기 인코딩된 오디오 정보(110;210)의 보조 정보(132; arith_reset_flag)에 응답하여 이전에 디코딩된 오디오 정보(qs)와 무관한 디폴트 콘텍스트로 리셋(arith_reset_context)하도록 구성된 콘텍스트 리셋터(130)를 포함한다.
또한, 본 발명의 일 실시예에 따르면, 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법(1800)이 제시된다. 상기 방법은, 리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트를 고려한 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계(1810)를 포함하는데, 상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는, 상기 콘텍스트에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보를 도출하기 위한 맵핑 정보를 선택하는 단계(1812) 및, 상기 디코딩된 오디오 정보의 제 1 부분을 도출하기 위해 선택된 맵핑 정보를 이용하는 단계(1814)를 포함하며; 상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는 또한 상기 맵핑 정보를 선택하기 위한 콘텍스트를, 보조 정보에 응답하여, 상기 이전에 디코딩된 오디오 정보와 무관한 디폴트 콘텍스트로 리셋하는 단계(1816) 및, 상기 디코딩된 오디오 정보의 제 2 부분을 도출하기 위해 상기 디폴트 콘텍스트에 기초로 하는 상기 맵핑 정보를 이용하는 단계(1818)를 포함한다.
또한, 본 발명의 일 실시예에 따르면, 입력 오디오 정보(1412)를 기반으로 인코딩된 오디오 정보(1424)를 제공하는 오디오 인코더(1400; 1500; 1600; 1700)가 제시된다. 상기 오디오 인코더는, 리셋이 안된 동작 상태에서, 인접한 오디오 정보에 기초로 하고, 주어진 오디오 정보에 시간적으로 또는 스펙트럼으로 인접한 콘텍스트(q[0],q[1])에 따라 상기 입력 오디오 정보(1412)의 주어진 오디오 정보를 인코딩하도록 구성되는 콘텍스트 기반 엔트로피 인코더(1420,1440,1450; 1420,1440,1550;1420,1440,1660;1420,1440,1770)를 포함하는데; 상기 콘텍스트 기반 엔트로피 인코더(1420,1440,1450; 1420,1440,1550;1420,1440,1660;1420,1440,1770)는 상기 콘텍스트에 따라 상기 입력 오디오 정보(1412)로부터 상기 인코딩된 오디오 정보(1424)를 도출하기 위한 맵핑 정보(cum_freq[pki])를 선택하도록 구성되며; 상기 콘텍스트 기반 엔트로피 인코더는 상기 맵핑 정보를 선택하기 위한 상기 콘텍스트를, 콘텍스트 리셋 조건의 생성에 응답하여 연속적인 입력 오디오 정보(1412) 내에서 디폴트 콘텍스트로 리셋하도록 구성된 콘텍스트 리셋터(1450, 1550; 1660; 1770)를 포함하며; 상기 오디오 인코더는 콘텍스트 리셋 조건의 존재를 나타내는 상기 인코딩된 오디오 정보(1424)의 보조 정보(1480;1780)를 제공하도록 구성된다.
또한, 본 발명의 일 실시예에 따르면, 입력 오디오 정보(1412)를 기반으로 인코딩된 오디오 정보(1424)를 제공하는 방법이 제시된다. 상기 방법은, 리셋이 안된 동작 상태에서, 인접한 오디오 정보에 기초로 하고, 주어진 오디오 정보에 시간적으로 또는 스펙트럼으로 인접한 콘텍스트에 따라 상기 입력 오디오 정보의 주어진 오디오 정보를 인코딩하는 단계(1910); 상기 콘텍스트에 따라 상기 입력 오디오 정보로부터 상기 인코딩된 오디오 정보를 도출하기 위해 맵핑 정보를 선택하는 단계(1920); 상기 맵핑 정보를 선택하기 위한 상기 콘텍스트를, 콘텍스트 리셋 조건의 생성에 응답하여 연속적인 입력 오디오 정보 내에서 디폴트 콘텍스트로 리셋하는 단계(1930); 및 상기 콘텍스트 리셋 조건의 존재를 나타내는 상기 인코딩된 오디오 정보의 보조 정보를 제공하는 단계(1940)를 포함한다.
또한, 본 발명의 일 실시예에 따르면, 컴퓨터 프로그램이 컴퓨터 상에서 실행할 시에, 전술한 방법들을 실행하기 위한 컴퓨터 프로그램이 저장된 컴퓨터로 읽을 수 있는 매체가 제시된다.
또한, 본 발명의 일 실시예에 따르면, 인코딩된 오디오 신호가 저장된 컴퓨터 판독 가능한 디지털 저장 매체가 제시된다. 상기 인코딩된 오디오 신호는 스펙트럼 값의 다수의 세트의 인코딩된 표현 (arith_data)을 포함하는데, 상기 스펙트럼 값의 다수의 세트는 스펙트럼 값의 각각의 이전의 세트에 의존하는 리셋이 안된 콘텍스트에 따라 인코딩되고; 상기 스펙트럼 값의 다수의 세트는 스펙트럼 값의 각각의 이전의 세트와 무관한 디폴트 콘텍스트에 따라 인코딩되며; 상기 인코딩된 오디오 신호는 스펙트럼 계수의 세트가 리셋이 안된 콘텍스트에 따라 인코딩되는지 상기 디폴트 콘텍스트에 따라 인코딩되는지를 신호화하는 보조 정보(arith_reset_flag)를 포함한다.
그 다음, 본 발명에 따른 실시예가 부착된 도면과 관련하여 기술될 것이다.
도 1은 본 발명의 실시예에 따른 오디오 디코더의 개략적인 블록도를 도시한 것이다.
도 2는 본 발명의 다른 실시예에 따른 오디오 디코더의 개략적인 블록도를 도시한 것이다.
도 3a는, 구문 표현(syntax representation)의 형식으로, 발명의 오디오 인코더에 의해 제공될 수 있고, 발명의 오디오 디코더에 의해 이용될 수 있는 주파수 도메인 채널 스트림으로 구성되는 정보의 그래픽 표현을 도시한 것이다.
도 3b는, 구문 표현의 형식으로, 도 3a의 주파수 도메인 채널 스트림의 산술적 코딩된 스펙트럼 데이터를 나타내는 정보의 그래픽 표현을 도시한 것이다.
도 4는, 구문 표현의 형식으로, 도 3b에 나타낸 산술적 코딩된 스펙트럼 데이터, 또는 도 11b에 나타낸 변환 코딩된 여기 데이터로 구성될 수 있는 산술적 코딩된 데이터의 그래픽 표현을 도시한 것이다.
도 5는 도 3a, 3b 및 4의 구문 표현에 이용된 정보 항목 및 도움말 요소(help elements)를 정의한 레전드(legend)를 도시한 것이다.
도 6은 본 발명의 실시예에 이용될 수 있는 오디오 프레임을 처리하는 방법의 흐름도를 도시한 것이다.
도 7은 맵핑 정보를 선택하기 위해 상태의 계산을 위한 콘텍스트의 그래픽 표현을 도시한 것이다.
도 8은, 예컨대, 도 9a 내지 9f의 알고리즘을 이용하여 산술적 인코딩된 스펙트럼 정보를 산술적으로 디코딩하기 위해 이용되는 정보 항목 및 도움말 요소의 레전드를 도시한 것이다.
도 9a는 산술 코딩의 콘텍스트를 리셋하기 위한 방법의 형식과 같은 C-언어의 유사(pseudo) 프로그램 코드를 도시한 것이다.
도 9b는 동일한 스펙트럼 해상도의 프레임 또는 윈도우의 사이 및, 또한 서로 다른 스펙트럼 해상도의 프레임 또는 윈도우의 사이에 산술 디코딩의 콘텍스트를 맵핑하기 위한 방법의 유사 프로그램 코드를 도시한 것이다.
도 9c는 콘텍스트로부터 상태 값을 도출하기 위한 방법의 유사 프로그램 코드를 도시한 것이다.
도 9d는 콘텍스트의 상태를 나타내는 값으로부터 누적 도수 분포표의 인덱스를 도출하기 위한 방법의 유사 프로그램 코드를 도시한 것이다.
도 9e는 산술적 인코딩된 스펙트럼 값을 산술적으로 디코딩하기 위한 방법의 유사 프로그램 코드를 도시한 것이다.
도 9f는 스펙트럼 값의 튜플(tuple)의 디코딩 다음에 콘텍스트를 갱신하기 위한 방법의 유사 프로그램 코드를 도시한 것이다.
도 10a는 "긴 윈도우" (오디오 프레임마다 하나의 긴 윈도우)와 관련된 오디오 프레임이 있는 데서 콘텍스트 리셋의 그래픽 표현을 도시한 것이다.
도 10b는 다수의 "짧은 윈도우" (예컨대, 오디오 프레임마다 8개의 짧은 윈도우)와 관련된 오디오 프레임의 콘텍스트 리셋의 그래픽 표현을 도시한 것이다.
도 10c는 "긴 스타트(start) 윈도우"와 관련된 제 1 오디오 프레임과, 다수의 "짧은 윈도우"와 관련된 오디오 프레임 간의 전이에서 콘텍스트 리셋의 그래픽 표현을 도시한 것이다.
도 11a는, 구문 표현의 형식으로, 선형 예측 도메인 채널 스트림으로 구성되는 정보의 그래픽 표현을 도시한 것이다.
도 11b는, 구문 표현의 형식으로, 도 11a의 선형 예측 도메인 채널 스트림의 부분인 변환 코딩된 여기 코딩으로 구성되는 정보의 그래픽 표현을 도시한 것이다.
도 11c 및 11d는 도 11a 및 11b의 구문 표현에 이용된 정보 항목 및 도움말 요소를 정의한 레전드를 도시한 것이다.
도 12는 선형 예측 도메인 여기 코딩을 포함하는 오디오 프레임에 대한 콘텍스트 리셋의 그래픽 표현을 도시한 것이다.
도 13은 그룹화 정보에 기반한 콘텍스트 리셋의 그래픽 표현을 도시한 것이다.
도 14는 본 발명의 실시예에 따른 오디오 인코더의 개략적인 블록도를 도시한 것이다.
도 15는 본 발명의 다른 실시예에 따른 오디오 인코더의 개략적인 블록도를 도시한 것이다.
도 16은 본 발명의 다른 실시예에 따른 오디오 인코더의 개략적인 블록도를 도시한 것이다.
도 17은 본 발명의 또 다른 실시예에 따른 오디오 인코더의 개략적인 블록도를 도시한 것이다.
도 18은 본 발명의 다른 실시예에 따라 디코딩된 오디오 정보를 제공하는 방법의 흐름도를 도시한 것이다.
도 19는 본 발명의 다른 실시예에 따라 인코딩된 오디오 정보를 제공하는 방법의 흐름도를 도시한 것이다.
도 20은 발명의 오디오 디코더에 이용될 수 있는 스펙트럼 값의 튜플의 콘텍스트 의존 산술 디코딩 방법의 흐름도를 도시한 것이다.
도 21은 발명의 오디오 인코더에 이용될 수 있는 스펙트럼 값의 튜플의 콘텍스트 의존 산술 인코딩 방법의 흐름도를 도시한 것이다.
1. 오디오 디코더
1.1 오디오 디코더 - 일반적 실시예
도 1은 본 발명의 실시예에 따른 오디오 디코더의 개략적인 블록도를 도시한 것이다. 도 1의 오디오 디코더(100)는 엔트로피 인코딩된 오디오 정보(110)를 수신하여, 이를 기반으로 디코딩된 오디오 정보(112)를 제공하도록 구성된다. 오디오 디코더(100)는, 리셋이 안된 동작 상태에서 이전 디코딩된 오디오 정보를 기반으로 하는 콘텍스트(122)에 따라 엔트로피 인코딩된 오디오 정보(110)를 디코딩하도록 구성되는 콘텍스트 기반 엔트로피 디코더(120)를 포함한다. 엔트로피 디코더(120)는 또한, 콘텍스트(122)에 따라, 인코딩된 오디오 정보(110)로부터 디코딩된 오디오 정보(112)를 도출하기 위해 맵핑 정보(124)를 선택하도록 구성된다. 콘텍스트 기반 엔트로피 디코더(120)는 또한, 엔트로피 인코딩된 오디오 정보(110)의 보조 정보(132)를 수신하여, 이를 기반으로 콘텍스트 리셋 신호(134)를 제공하도록 구성되는 콘텍스트 리셋터(130)를 포함한다. 콘텍스트 리셋터(130)는, 맵핑 정보(124)를 선택하기 위한 콘텍스트(122)를 디폴트 콘텍스트로 리셋하도록 구성되며, 이 디폴트 콘텍스트는, 엔트로피 인코딩된 오디오 정보(110)의 각각의 보조 정보(132)에 응답하여, 이전의 디코딩된 오디오 정보와 무관하다.
따라서, 동작에서, 콘텍스트 리셋터(130)는, 엔트로피 인코딩된 오디오 정보(110)와 관련된 콘텍스트 리셋 보조 정보 (예컨대, 콘텍스트 리셋 플래그)를 검출할 때마다 콘텍스트(122)를 리셋한다. 디폴트 콘텍스트에 대한 콘텍스트(122)의 리셋은, 디폴트 맵핑 정보 (예컨대, Huffmann 코딩의 경우에는 디폴트 Huffmann-코드북, 또는 산술 코딩의 경우에는 디폴트 (누적) 도수 분포 정보 "cum_freq")가 (예컨대, 인코딩된 스펙트럼 값 a,b,c,d을 포함하는) 엔트로피 인코딩된 오디오 정보(110)로부터 디코딩된 오디오 정보(112) (예컨대, 디코딩된 스펙트럼 값 a,b,c,d)를 도출하기 위해 선택되는 결과를 가질 수 있다.
따라서, 리셋이 안된 동작 상태에서, 콘텍스트(122)는, 이전에 디코딩된 오디오 정보, 예컨대, 이전에 디코딩된 오디오 프레임의 스펙트럼 값에 의해 영향을 받는다. 결과적으로, 현재 오디오 프레임을 디코딩하기 위해 (또는 현재 오디오 프레임의 하나 이상의 스펙트럼 값을 디코딩하기 위해) (콘텍스트를 기반으로 실행되는) 맵핑 정보의 선택은 통상적으로 이전에 디코딩된 프레임 (또는 이전에 디코딩된 "윈도우")의 디코딩된 오디오 정보에 의존한다.
이에 반해, 콘텍스트가 리셋되면 (즉, 콘텍스트 리셋 동작 상태에 있으면), 현재 오디오 프레임을 디코딩하기 위해, 맵핑 정보의 선택으로 이전에 디코딩된 오디오 프레임의 이전에 디코딩된 오디오 정보(예컨대, 디코딩된 스펙트럼 값)가 미치는 영향은 제거된다. 따라서, 리셋 후에, 현재 오디오 프레임 (또는 적어도 일부 스펙트럼 값)의 엔트로피 디코딩은 통상적으로 이전에 디코딩된 오디오 프레임의 오디오 정보(예컨대, 스펙트럼 값)에 더 이상 의존하지 않는다. 그럼에도 불구하고, 현재 오디오 프레임의 오디오 콘텐츠 (예컨대, 하나 이상의 스펙트럼 값)의 디코딩은 동일한 오디오 프레임의 이전에 디코딩된 오디오 정보에 대한 일부 의존성을 포함할 수 있다(또는 포함할 수 없다).
따라서, 콘텍스트(122)의 고려는, 리셋 조건이 없을 시에 인코딩된 오디오 정보(110)로부터 디코딩된 오디오 정보(112)를 도출하기 위해 이용되는 맵핑 정보(124)를 개선할 수 있다. 콘텍스트(122)는 보조 정보(132)가 부적절한 콘텍스트의 고려를 회피하기 위해 리셋 조건을 나타낼 경우에 리셋될 수 있으며, 이는 통상적으로 비트레이트를 증가시킨다. 따라서, 오디오 디코더(100)는 양호한 비트레이트 효율을 가진 엔트로피 인코딩된 오디오 정보의 디코딩을 고려한다.
1.2 Audio decoder-Unified-Speech-and-Audio-Coding (USAC) 실시예
1.2.1 디코더 개요
다음에는, 주파수 도메인 인코딩된 오디오 콘텐츠 및 선형 예측 도메인 인코딩된 오디오 콘텐츠의 양방의 디코딩을 고려하여, 가장 적절한 코딩 모드의 동적 (예컨대, 프레임 방향(frame-wise)) 선택을 고려하는 오디오 디코더에 관한 개요가 주어질 것이다. 다음에 논의되는 오디오 디코더는 주파수 도메인 디코딩과 선형 예측 도메인 디코딩을 조합하는 것에 주목되어야 한다. 그러나, 다음에 논의되는 기능은 주파수 도메인 오디오 디코더 및 선형 예측 도메인 오디오 디코더에서 개별적으로 이용될 수 있음에 주목되어야 한다.
도 2는 인코딩된 오디오 신호(210)를 수신하여, 이를 기반으로 디코딩된 오디오 신호(212)를 제공하도록 구성되는 오디오 디코더(200)를 도시한 것이다. 오디오 디코더(200)는, 인코딩된 오디오 신호(210)를 나타내는 비트스트림을 수신하도록 구성된다. 오디오 디코더(200)는, 인코딩된 오디오 신호(210)를 나타내는 비트스트림으로부터 서로 다른 정보 항목을 추출하도록 구성되는 비트스트림 디멀티플렉서(220)를 포함한다. 예컨대, 비트스트림 디멀티플렉서(220)는, 비트스트림 내에 제공되는 인코딩된 오디오 신호(200)를 나타내는 비트 스트림으로부터, 예컨대, 소위 "arith_data" 및 소위 "arith_reset_flag"를 포함하는 주파수 도메인 채널 스트림 데이터(222), 및 (예컨대, 소위 "arith_data" 및 소위 "arith_reset_flag"를 포함하는) 선형 예측 도메인 채널 스트림 데이터(224)를 추출하도록 구성된다. 또한, 비트스트림 디멀티플렉서는, 인코딩된 오디오 신호(200)를 나타내는 비트 스트림으로부터 부가적인 오디오 정보 및/또는 보조 정보, 예컨대, 선형 예측 도메인 제어 정보(226), 주파수 도메인 제어 정보(228), 도메인 선택 정보(230) 및 후처리 제어 정보(232)를 추출하도록 구성된다. 오디오 디코더(200)는 또한, 엔트로피 인코딩된 주파수 도메인 스펙트럼 값 또는 엔트로피 인코딩된 선형 예측 도메인 변환 코딩된 여기 자극(stimulus) 스펙트럼 값을 엔트로피 디코딩하도록 구성되는 엔트로피 디코더/콘텍스트 리셋터(240)를 포함한다. 엔트로피 디코더/콘텍스트 리셋터(240)는 때때로 또한 "무잡음 디코더" 또는 "산술 디코더"로 나타내는데, 그 이유는 그것이 통상적으로 무손실 디코딩을 실행하기 때문이다. 엔트로피 디코더/콘텍스트 리셋터(240)는 주파수 도메인 채널 스트림 데이터(222)를 기반으로 주파수 도메인 디코딩된 스펙트럼 값(242)을 제공하거나, 선형 예측 도메인 채널 스트림 데이터(224)를 기반으로 선형 예측 도메인 변환 코딩된 여기 (TCX) 자극 스펙트럼 값(244)을 제공하도록 구성된다. 따라서, 엔트로피 디코더/콘텍스트 리셋터(240)는 양방이 현재 프레임에 대한 비트스트림에 제공되는 주파수 도메인 스펙트럼 값 및 선형 예측 도메인 변환 코딩된 여기 자극 스펙트럼 값의 디코딩을 위해 이용되도록 구성될 수 있다.
오디오 디코더(200)는 또한 시간 도메인 신호 재구성을 포함한다. 주파수 도메인 인코딩의 경우에, 시간 도메인 신호 재구성은, 예컨대, 엔트로피 디코더(240)에 의해 제공된 주파수 도메인 디코딩된 스펙트럼 값을 수신하여, 이를 기반으로, 역으로 양자화된 주파수 도메인 디코딩된 스펙트럼 값을 주파수 도메인 대 시간 도메인 오디오 신호 재구성(252)에 제공하는 역 양자화기(250)를 포함할 수 있다. 주파수 도메인 대 시간 도메인 오디오 신호 재구성은 주파수 도메인 제어 정보(228) 및, 선택적으로, (예컨대, 제어 정보와 같은) 부가적인 정보를 수신하도록 구성될 수 있다. 주파수 도메인 대 시간 도메인 오디오 신호 재구성(252)은, 출력 신호로서, 주파수 도메인 코딩된 시간 도메인 오디오 신호(254)를 제공하도록 구성될 수 있다. 선형 예측 도메인에 관해, 오디오 디코더(200)는, 선형 예측 도메인 변환 코딩된 여기 자극 디코딩된 스펙트럼 값(244), 선형 예측 도메인 제어 정보(226) 및, 선택적으로, 부가적인 선형 예측 도메인 정보(예컨대, 선형 예측 모델의 계수 , 또는 이의 인코딩된 버전)를 수신하여, 이를 기반으로, 선형 예측 도메인 코딩된 시간 도메인 오디오 신호(264)를 제공하도록 구성되는 선형 예측 도메인 대 시간 도메인 오디오 신호 재구성(262)을 포함한다.
오디오 디코더(200)는 또한, 디코딩된 오디오 신호(212) (또는 이의 시간적 부분)가 주파수 도메인 코딩된 시간 도메인 오디오 신호(254)를 기반으로 하는지 선형 예측 도메인 코딩된 시간 도메인 오디오 신호(264)를 기반으로 하는지를 결정하도록, 도메인 선택 정보(230)에 따라 주파수 도메인 코딩된 시간 도메인 오디오 신호(254)와 선형 예측 도메인 코딩된 시간 도메인 오디오 신호(264) 간에 선택하는 선택기(270)를 포함한다. 도메인 간의 전이에서, 크로스 페이드(cross fade)는 선택기(270)에 의해 선택기의 출력 신호(272)를 제공하도록 실행될 수 있다. 디코딩된 오디오 신호(212)는 선택기의 출력 신호(272)와 동일할 수 있거나, 바람직하게는 오디오 신호 후처리기(280)를 이용하여 선택기의 신호(272)로부터 도출될 수 있다. 오디오 신호 후처리기(280)는 비트스트림 디멀티플렉서(220)에 의해 제공되는 후처리 제어 정보(232)를 고려할 수 있다.
상술한 바를 요약하기 위해, 오디오 디코더(200)는, 주파수 도메인 채널 스트림 데이터(222)(가능한 부가적인 제어 정보와 함께), 또는 선형 예측 도메인 채널 스트림 데이터(224)(부가적인 제어 정보와 함께)를 기반으로 디코딩된 오디오 신호(212)를 제공할 수 있으며, 오디오 디코더(200)는 선택기(270)를 이용하여 주파수 도메인과 선형 예측 도메인 간에 스위칭할 수 있다. 주파수 도메인 코딩된 시간 도메인 오디오 신호(254) 및 선형 예측 도메인 코딩된 시간 도메인 오디오 신호(264)는 서로 독립적으로 생성될 수 있다. 그러나, 동일한 엔트로피 디코더/콘텍스트 리셋터(240)는, 주파수 도메인 코딩된 시간 도메인 오디오 신호(254)의 기초를 형성하는 주파수 도메인 디코딩된 스펙트럼 값(242)의 도출 및, 선형 예측 도메인 코딩된 시간 도메인 오디오 신호(264)의 기초를 형성하는 선형 예측 도메인 변환 코딩된 여기 자극 디코딩된 스펙트럼 값(244)의 도출을 위해 (가능하게도, 누적 도수 분포표와 같은 서로 다른 도메인 특정 맵핑 정보와 함께) 사용될 수 있다.
다음에는, 주파수 도메인 디코딩된 스펙트럼 값(242)의 제공 및, 선형 예측 도메인 변환 코딩된 여기 자극 디코딩된 스펙트럼 값(244)의 제공에 관한 상세 사항이 논의될 것이다.
주파수 도메인 디코딩된 스펙트럼 값(242)으로부터의 주파수 도메인 코딩된 시간 도메인 오디오 신호(254)의 도출에 관한 상세 사항은 국제 표준 ISO/IEC 14496-3:2005, 파트 3: 오디오, 파트 4: 일반적 오디오 코딩 (GA)-AAC, Twin VQ, BSAC, 및 여기에서 참조된 문서에서 발견될 수 있음에 주목되어야 한다.
또한, 선형 예측 도메인 변환 코딩된 여기 자극 디코딩된 스펙트럼 값(244)을 기반으로 하는 선형 예측 도메인 코딩된 시간 도메인 오디오 신호(264)의 계산에 관한 상세 사항은, 예컨대, 국제 표준 3GPP TS 26.090, 3GPP TS 26.190 및 3GPP TS 26.290에서 발견될 수 있음에 주목되어야 한다.
상기 표준은 또한 다음에 이용되는 심볼의 일부에 관한 정보를 포함한다.
1.2.2 주파수 도메인 채널 스트림 디코딩
다음에는, 주파수 도메인 디코딩된 스펙트럼 값(242)이 주파수 도메인 채널 스트림 데이터로부터 어떻게 도출될 수 있고, 발명의 콘텍스트 리셋이 이 계산에 어떻게 포함되는지가 기술될 것이다.
1.2.2.1 주파수 도메인 채널 스트림의 데이터 구조
다음에는, 주파수 도메인 채널 스트림의 관련 데이터 구조가 도 3a, 3b, 4 및 5와 관련하여 기술될 것이다.
도 3a는, 표의 형식으로, 주파수 도메인 채널 스트림의 구문의 그래픽 표현을 도시한 것이다. 알 수 있는 바와 같이, 주파수 도메인 채널 스트림은 "global_gain" 정보를 포함할 수 있다. 게다가, 주파수 도메인 채널 스트림은, 서로 다른 주파수 빈에 대한 스케일 인수를 정의하는 스케일 인수 데이터 ("scale_factor_data")를 포함할 수 있다. 글로벌 이득(global gain) 및 스케일 인수 데이터, 및 이들의 사용에 관해, 국제 표준 ISO/IEC 14496-3(2005), 파트 3: 서브 파트 4, 및 여기에서 참조된 문서에 대해 참조가 행해진다.
주파수 도메인 채널 스트림은 또한 다음에 상세히 설명되는 산술적으로 코딩된 스펙트럼 데이터 ("ac_spectral_data")를 포함할 수 있다. 주파수 도메인 채널 스트림은, 본 발명에 관련이 없는 잡음 필링(noise filling) 정보, 구성 정보, 타임 워프(time warp) 정보 및 시간적 잡음 형상화 정보와 같은 부가적인 선택적 정보를 포함할 수 있음에 주목되어야 한다.
다음에는, 산술적 코딩된 스펙트럼 데이터에 관한 상세 사항이 도 3b 및 4와 관련하여 논의될 것이다. 표의 형식으로, 산술적 코딩된 스펙트럼 데이터 "ac_spectral_data"의 구문의 그래픽 표현을 도시한 도 3b에서 알 수 있는 바와 같이, 산술적 코딩된 스펙트럼 데이터는 산술적 디코딩을 위한 콘텍스트를 리셋하는 콘텍스트 리셋 플래그 "arith_reset_flag"를 포함한다. 또한, 산술적 코딩된 스펙트럼 데이터는 산술적 인코딩된 데이터 "arith_data"의 하나 이상의 블록을 포함한다. 구문 요소 "fd_channel_stream"로 표현되는 오디오 프레임은 하나 이상의 "윈도우(windows)"를 포함할 수 있음에 주목되어야 하고, 윈도우의 수는 변수 "num_windows"로 정의된다. (또한 "스펙트럼 계수"로 나타내는) 한 세트의 스펙트럼 값은 num_windows 윈도우를 포함하는 오디오 프레임이 스펙트럼 값의 num_windows 세트를 포함하도록 오디오 프레임의 각 윈도우와 관련됨에 주목되어야 한다. 단일 오디오 프레임 내의 다수의 윈도우 (및 다수 세트의 스펙트럼 값)를 가진 개념에 관한 상세 사항은, 예컨대, 국제 표준 ISO/IEC 14496-3(2005), 파트 3, 서브 파트에 기술되어 있다.
도 3을 다시 참조하면, 주파수 도메인 채널 스트림 "fd_channel_stream"에 포함되는 산술적 코딩된 스펙트럼 데이터 "ac_spectral_data"는, 단일 윈도우가 현재 주파수 도메인 채널 스트림으로 나타내는 오디오 프레임과 관련될 경우에, 하나의 (단일) 콘텍스트 리셋 플래그 "arith_reset_flag" 및 산술적 코딩된 데이터 "arith_data"의 하나의 (단일) 블록을 포함하는 것으로 결정될 수 있다. 이에 반해, 프레임의 산술적 코딩된 스펙트럼 데이터는, (주파수 도메인 채널 스트림과 관련된) 현재 오디오 프레임이 다수의 윈도우 (즉, num_windows 윈도우)를 포함할 경우에, 단일 콘텍스트 리셋 플래그 "arith_reset_flag" 및 산술적 인코딩된 데이터 "arith_data"의 다수의 블록을 포함한다.
이제 도 4를 참조하면, 산술적 인코딩된 데이터 "arith_data"의 블록의 구조는 도 4를 참조로 논의될 것이며, 도 4는 산술적 인코딩된 데이터 "arith_data"의 구문의 그래픽 표현을 도시한 것이다. 도 4에서 알 수 있는 바와 같이, 산술적 인코딩된 데이터는, 예컨대, lg/4 인코딩된 튜플의 산술적 인코딩된 데이터를 포함한다 (여기서, lg는 현재 오디오 프레임 또는 현재 윈도우의 스펙트럼 값의 수이다). 각 튜플에 대해, 산술적 인코딩된 그룹 인덱스 "acod_ng"는 산술적 코딩된 데이터 "arith_data"에 포함된다. 양자화된 스펙트럼 값 a,b,c,d의 튜플의 그룹 인덱스 ng는, 예컨대, 나중에 논의되는 바와 같이, 콘텍스트에 따라 선택되는 누적 도수 분포표에 따라 (인코더측에서) 산술적으로 인코딩된다. 튜플의 그룹 인덱스 ng는 산술적으로 코딩되며, 여기서, 소위 "산술적 에스케이프(arithmetic escape)" ("ARITH_ESCAPE")는 값의 가능 범위를 연장하기 위해 이용될 수 있다.
게다가, 1보다 큰 기수(cardinal)를 가진 4 튜플의 그룹에 대해, 그룹 ng 내의 튜플의 인덱스 ne를 디코딩하는 산술적 코드워드 "acod_ne"는 산술적 인코딩된 데이터 "arith_data" 내에 포함될 수 있다. 코드워드 "acod_ne"는, 예컨대, 콘텍스트에 의존하여 인코딩될 수 있다.
게다가, 튜플의 값 a,b,c,d의 최하위 비트의 하나 이상을 인코딩하는 하나 이상의 산술적 인코딩된 코드 워드 "acod_r"는 산술적 인코딩된 데이터 "arith_data"에 포함될 수 있다.
요약하기 위해, 산술적 인코딩된 데이터 "arith_data"는 인덱스 pki를 가진 누적 도수 분포표를 고려한 그룹 인덱스 ng를 인코딩하기 위한 하나의 (또는 산술적 에스케이프 시퀀스가 있는 데서는 더 많은) 산술적 코드워드 "acod_ng"를 포함한다. 선택적으로, (그룹 인덱스 ng로 나타내는 그룹의 기수에 따라), 산술적 인코딩된 데이터는 또한 요소 인덱스 ne를 인코딩하기 위한 산술적 코드워드 "acod_ne"를 포함한다. 선택적으로, 산술적 인코딩된 데이터는 또한 하나 이상의 최하위 비트를 인코딩하기 위한 하나 이상의 산술적 코드 워드를 포함할 수 있다.
산술적 코드워드 "acod_ng"의 인코딩/디코딩을 위해 이용되는 누적 도수 분포표의 인덱스 (예컨대, pki)를 결정하는 콘텍스트는, 도 4에 도시되지 않지만, 아래에서 논의되는 콘텍스트 데이터 q[0], q[1],qs에 기초로 한다. 콘텍스트 정보 q[0], q[1],qs는, 콘텍스트 리셋 플래그 "arith_reset_flag"가 프레임 또는 윈도우의 인코딩/디코딩 전에 활성적인 경우에는 디폴트 값에 기초로 하며, 또는 (현재 프레임이 현재 고려된 윈도우 이전의 윈도우를 포함할 경우에) 이전의 윈도우 또는 (현재 프레임이 하나의 윈도우만을 포함하거나, 현재 프레임 내의 제 1 윈도우가 고려될 경우에) 이전의 윈도우의 이전에 인코딩/디코딩된 스펙트럼 값 (예컨대, 값 a,b,c,d)을 기초로 한다. 콘텍스트의 정의에 관한 상세 사항은 도 4의 "윈도우간 콘텍스트 정보 획득(obtain inter-window context information)"로 라벨된 유사 코드 섹션에서 알 수 있으며, 여기서, 또한, 아래의 도 9a 및 9d와 관련하여 상세히 기술되는 절차 "arith_reset_context" 및 "arith_map_context"의 정의에 대해 참조가 행해진다. 또한, "콘텍스의 상태 계산(compute state of context)" 및 "누적 도수 분포표의 인덱스 pki 획득(obtain index pki of cumulative frequencies table)"로 라벨된 유사 코드 부분은 콘텍스트에 따라 "맵핑 정보"를 선택하기 위한 인덱스 "pki"를 도출하는 역할을 하고, 콘텍스트에 따라 "맵핑 정보" 또는 "맵핑 규칙"을 선택하기 위한 다른 기능으로 대체될 수 있음에 주목되어야 한다. 이 기능 "arith_get_context" 및 "arith_get_pk"은 아래에서 더욱 상세히 논의될 것이다.
섹션 "윈도우간 콘텍스트 정보 획득"에서 기술되는 콘텍스트의 초기화는, (오디오 프레임이 하나의 윈도우만을 포함할 경우에) 오디오 프레임마다 한번 (및 바람직하게는 한 번만) 또는 (현재 오디오 프레임이 하나 이상의 윈도우를 포함할 경우에는) 윈도우마다 한번 (및 바람직하게는 한 번만) 실행됨에 주목되어야 한다.
따라서, 전체 콘텍스트 정보 q[0], q[1],qs의 리셋 (또는 이전의 프레임 (또는 이전의 윈도우)의 디코딩된 스펙트럼 값을 기반으로 하는 콘텍스트 정보 q[0]의 선택적 초기화)은 바람직하게는, 산술적 인코딩된 데이터의 블록마다 한 번만 (즉, 현재 프레임이 하나의 윈도우만을 포함할 경우에는 윈도우마다 한 번만, 또는 현재 프레임이 하나 이상의 윈도우를 포함할 경우에는 윈도우마다 한 번만) 실행된다.
이에 반해, (현재 프레임 또는 윈도우의 이전에 디코딩된 스펙트럼 값에 기초로 하는) 콘텍스트 정보 q[1]는, 예컨대, 절차 "arith_update_context"로 정의된 바와 같이 스펙트럼 값 a,b,c,d의 단일 튜플의 디코딩의 완료 시에 갱신된다.
"스펙트럼 무잡음 코더" (즉, 산술적 인코딩된 스펙트럼 값을 인코딩하기 위해)의 페이로드(payloads)에 관한 추가적 상세 사항에 대해서는 도 5의 표에 주어진 바와 같은 정의에 대해 참조가 행해진다.
요약하기 위해, 양방의 "선형 예측 도메인" 코딩된 신호(224) 및 "주파수 도메인" 코딩된 신호(222)로부터의 스펙트럼 계수 (예컨대, a,b,c,d)는 스칼라 양자화되어, 적응 콘텍스트 의존 산술적 코딩 (예컨대, 엔트로피 코딩된 오디오 신호(210)를 제공하는 인코더)에 의해 무잡음 코딩된다. 양자화된 계수 (예컨대, a,b,c,d)는 최저 주파수에서 최고 주파수로 (인코더에 의해) 송신되기 전에 4-튜플에서 함께 모아진다. 각 4-튜플은 최상위 3-비트 (부호에 대한 1 비트 및 진폭에 대한 2 비트) 와이즈 플레인(wise plane)은 그룹 인덱스 ng 및 요소 인덱스 ne에 의해 그의 이웃(neighborhood)에 따라 (즉, "콘텍스트"를 고려하여) 코딩된다. 잔여 하위 비트 플레인은 콘텍스트를 고려하지 않고 엔트로피 코딩된다. 인덱스 ng 및 ne 및 하위 비트 플레인은 (엔트로피 디코더(240)에 의해 평가되는) 산술적 코더의 샘플을 형성한다. 산술적 코딩에 관한 상세 사항은 아래 섹션 1.2.2.2에서 기술될 것이다.
1.2.2.2 주파수 도메인 채널 스트림의 디코딩 방법
다음에는, 콘텍스트 리셋터(130)를 포함하는 콘텍스트 기반 엔트로피 디코더(120, 240)는 도 6, 7, 8, 9a-9f 및 20을 참조로 상세히 기술될 것이다.
콘텍스트 기반 엔트로피 디코더의 기능은, 엔트로피 인코딩된 (바람직하게는 산술적 인코딩된) 오디오 정보 (예컨대, 인코딩된 스펙트럼 값)를 기반으로, 엔트로피 디코딩된 (바람직하게는 산술적 디코딩된) 오디오 정보 (예컨대, 오디오 신호의 주파수 도메인 표현, 또는 오디오 신호의 선형 예측 도메인 변환 코딩된 여기 표현의 스펙트럼 값 a,b,c,d)을 재구성 (디코딩)하는 것에 주목되어야 한다. (콘텍스트 리셋터를 포함하는) 콘텍스트 기반 엔트로피 디코더는, 예컨대, 도 4에 도시된 구문에 의해 기술된 바와 같이 인코딩된 스펙트럼 값 a,b,c,d을 디코딩하도록 구성될 수 있다.
또한, 도 4에 도시된 구문은, 특히 도 5, 7, 8 및 9a-9f 및 20의 정의와 함께 취해질 시에, 디코딩 규칙으로 고려되어, 디코더가 일반적으로 도 4에 따라 인코딩된 정보를 디코딩하도록 구성될 수 있음에 주목되어야 한다.
이제, 오디오 프레임의 처리 또는 오디오 프레임 내의 윈도우의 처리에 대한 간략화된 디코딩 알고리즘의 흐름도를 도시한 도 6과 관련하여, 디코딩이 기술될 것이다. 도 6의 방법(600)은 윈도우간 콘텍스트 정보를 획득하는 단계(610)를 포함할 수 있다. 이를 위해, 콘텍스트 리셋 플래그 "arith_reset_flag"는 현재 윈도우 (또는 프레임만이 하나의 윈도우를 포함할 경우에 현재 프레임)에 설정되는지가 검사될 수 있다. 콘텍스트 리셋 플래그가 설정되면, 콘텍스트 정보는, 단계(612)에서, 예컨대, 아래에 논의되는 기능 "arith_reset_context"를 실행함으로써 리셋될 수 있다. 특히, 이전의 윈도우 (또는 이전의 프레임)의 코딩된 값을 나타내는 콘텍스트 정보의 부분은 단계(612)에서 디폴트 값 (예컨대, 0 또는 -1)으로 설정될 수 있다. 이에 반해, 콘텍스트 리셋 플래그가 윈도우 (또는 프레임)에 설정되지 않음이 발견되면, 이전의 프레임 (또는 이전의 윈도우)으로부터의 콘텍스트 정보는, 현재 윈도우(또는 프레임)의 산술적 인코딩된 스펙트럼 값의 디코딩을 위한 콘텍스트를 결정하기 위해 (또는 영향을 미치기 위해) 이용되도록 복사되거나 맵핑될 수 있다. 단계(614)는 기능 "arith_map_context"의 실행에 대응할 수 있다. 상기 기능을 실행할 시에, 콘텍스트는 현재 프레임 (또는 윈도우) 및 이전의 프레임 (또는 윈도우)이 서로 다른 스펙트럼 해상도를 포함할지라도 (이 기능이 절대적으로 필요로 되지 않을 지라도) 맵핑될 수 있다.
그 다음에, 다수의 산술적 인코딩된 스펙트럼 값 (또는 이와 같은 값의 튜플)은 단계(620, 630, 640)를 한번 이상 실행함으로써 디코딩될 수 있다. 단계(620)에서, 맵핑 정보 (예컨대, Huffmann-코드북, 또는 누적 도수 분포표 "cum_fre")는 단계(610)에서 확립되는 바와 같은 (및 선택적으로 단계(640)에서 갱신되는 바와 같은) 콘텍스트를 기반으로 선택된다. 단계(620)는 맵핑 정보를 결정하는 하나 이상의 단계 방법을 포함할 수 있다. 예컨대, 단계(620)는 콘텍스트 정보 (예컨대 q[0], q[1])를 기반으로 콘텍스트의 상태를 계산하는 단계(622)를 포함할 수 있다. 콘텍스트의 상태의 계산은, 예컨대, 아래에 정의되는 기능 "arith_get_context"에 의해 실행될 수 있다. 선택적으로, 보조 맵핑은 (예컨대, 도 4의 "콘텍스의 상태 계산"으로 라벨된 유사 코드 부분에서 알 수 있는 바와 같이) 실행될 수 있다. 또한, 단계(620)는, 콘텍스트의 상태 (예컨대, 도 4의 구문에 도시된 바와 같은 변수 t)를 (예컨대, 누적 도수 분포표의 행 또는 열을 나타내는) 맵핑 정보의 (예컨대, "pki"로 나타내는) 인덱스에 맵핑하는 보조 단계(624)를 포함할 수 있다. 이를 위해, 예컨대, 기능 "arith_get_pk"을 평가할 수 있다. 요약하기 위해, 단계(620)는, 현재 콘텍스트 (q[0], q[1])를, (맵핑 정보의 다수의 이산 (discreet) 세트에서) 어느 맵핑 정보가 엔트로피 디코딩 (예컨대, 산술적 디코딩)을 위해 이용되는지를 나타내는 인덱스 (예컨대 pki)에 맵핑하도록 한다. 방법(600)은 또한, 선택된 맵핑 정보 (예컨대, 다수의 누적 도수 분포표에서의 한 누적 도수 분포표)를 이용하여 새로운 디코딩된 오디오 정보 (예컨대, 스펙트럼 값 a, b, c, d)를 획득하도록 인코딩된 오디오 정보 (예컨대, 스펙트럼 값 a, b, c, d)를 엔트로피 디코딩하는 단계(630)를 포함한다. 오디오 정보를 엔트로피 디코딩하기 위해, 아래에 상세히 설명되는 기능 "arith_decode"이 이용될 수 있다.
그 다음, 콘텍스트는, 단계(640)에서, 새로운 디코딩된 오디오 정보를 이용하여 (예컨대, 하나 이상의 스펙트럼 값 a, b, c, d을 이용하여) 갱신될 수 있다. 예컨대, 현재 프레임 또는 윈도우 (예컨대, q[1])의 이전에 인코딩된 오디오 정보를 나타내는 콘텍스트의 부분은 갱신될 수 있다. 이를 위해, 아래에 상세히 설명되는 기능 "arith_update_context"이 이용될 수 있다.
상술한 바와 같이, 단계(620, 630, 640)가 반복될 수 있다.
인코딩된 오디오 정보를 엔트로피 디코딩하는 단계는, 예컨대 도 4에 나타낸 바와 같이 엔트로피 인코딩된 오디오 정보(222, 224)로 구성되는 하나 이상의 산술적 코드 워드 (예컨대, "acod_ng", "acod_ne" 및/또는 "acod_r")를 이용하는 단계를 포함할 수 있다.
다음에는, 상태 계산 (콘텍스트의 상태)을 위해 고려된 콘텍스트의 일례는 도 7을 참조로 기술될 것이다. 일반적으로, 스펙트럼 무잡음 코딩 (및 대응하는 스펙트럼 무잡음 디코딩)은 (예컨대, 인코더에서) 양자화된 스펙트럼의 중복을 더 감소시키기 위해 이용된다 (및 디코더에서는 양자화된 스펙트럼을 재구성하기 위해 이용된다). 스펙트럼 무잡음 코딩 기법은 동적 적응된 콘텍스트와 함께 산술적 코딩을 기초로 한다. 무잡음 코딩은 양자화된 스펙트럼 값(예컨대, a, b, c, d)에 의해 설정되고, 예컨대, 4의 이전에 디코딩된 이웃한 4-튜플로부터 도출되는 콘텍스트 의존 누적 도수 분포표 (예컨대, cum_fre)를 이용한다. 여기서, 양방의 시간 및 주파수의 이웃은 도 7에 도시된 바와 같이 고려된다. (콘텍스트에 따라 선택되는) 누적 도수 분포표는 이때 가변 길이 이진 코드를 생성하기 위해서는 산술적 인코더에 의해 (및 또한 가변 길이 이진 코드를 디코딩하기 위해서는 산술적 디코더에 의해) 이용된다.
이제, 도 7을 참조하면, 디코딩할 4-튜플(710)을 디코딩하기 위한 콘텍스트는, 이미 디코딩되고, 디코딩할 4-튜플(710)에 빈번히 인접하며, 디코딩할 4-튜플(710)과 같이 동일한 오디오 프레임 또는 윈도우와 관련된 4-튜플(720)을 기초로 함을 알 수 있다. 게다가, 디코딩할 4-튜플(710)의 콘텍스트는 또한, 이미 디코딩되고, 디코딩할 4-튜플(710)의 오디오 프레임 또는 윈도우 이전의 오디오 프레임 또는 윈도우와 관련된 3개의 부가적인 4-튜플(730a, 730b, 730c)을 기초로 한다.
산술적 인코딩 및 산술적 디코딩에 관해, 산술적 코더는 심볼의 주어진 세트(예컨대, 스펙트럼 값 a, b, c, d)에 대한 이진 코드 및 (예컨대, 누적 도수 분포표에 의해 정의된 바와 같은) 이들의 각각의 확률을 생성시키는 것에 주목되어야 한다. 이진 코드는 심볼의 세트(예컨대, a, b, c, d)가 놓여 있는 확률 구간을 코드 워드에 맵핑함으로써 생성된다. 역으로, (예컨대, a, b, c, d)의 샘플의 세트는 역 맵핑에 의해 이진 코드로부터 도출되며, 여기서, 샘플 (예컨대, a, b, c, d)의 확률은 (예컨대, 콘텍스트를 기반으로 누적 도수 분포와 같이 맵핑 정보를 선택함으로써) 고려된다. 다음에는, 디코딩 프로세스, 즉, 콘텍스트 기반 엔트로피 디코더(120) 또는 엔트로피 디코더/콘텍스트 리셋터(240)에 의해 실행될 수 있고, 일반적으로 도 6에 관련하여 기술된 산술적 디코딩의 프로세스는 도 9a-9f와 관련하여 설명될 것이다.
이를 위해, 도 8의 표에 도시된 정의에 대한 참조가 행해진다. 도 8의 표에서, 도 9a-9f의 유사 프로그램 코드에서 이용되는 데이터, 변수 및 도움말 요소의 정의가 정의된다. 또한 상술한 도 5의 정의에 대한 참조가 행해진다.
디코딩 프로세스에 관해, 양자화된 스펙트럼 계수의 4-튜플은 (인코더에 의해 무잡음 코딩되고, 최저 주파수 계수로부터 개시하여 최고 주파수 계수로 진행하는 것을 (여기에서 논의된 인코더와 디코더 간의 송신 채널 또는 저장 매체를 통해) 송신된다고 할 수 있다.
고급 오디오 코딩 (AAC)으로부터의 계수 (즉, 주파수 도메인 채널 스트림 데이터의 계수)는 무잡음 코딩 코드 워드의 송신의 순서에 따라 어레이 "x_ac_quant[g][win][sfb][bin]" 내에 저장되어, 어레이, 가장 급속히 증가하는 인덱스일 경우에는 [bin] 및, 가장 느리게 증가하는 인덱스일 경우에는 [g]에 수신되어 저장되는 순서로 디코딩되도록 한다. 코드워드 내에서 디코딩의 순서는 a, b, c, d이다.
변환 코딩된 여기 (TCX)로부터의 계수 (예컨대, 선형 예측 도메인 채널 스트림 데이터의 계수)는 어레이 "x_tcx_invquant[win][bin]" 내에 직접 저장되고, 무잡음 코딩 코드 워드의 송신의 순서는, 어레이, 가장 급속히 증가하는 인덱스일 경우에는 bin 및, 가장 느리게 증가하는 인덱스일 경우에는 win에 수신되어 저장되는 순서로 디코딩되도록 한다. 코드워드 내에서 디코딩의 순서는 a, b, c, d이다.
첫째로, 플래그 "arith_reset_flag"는 평가된다. 플래그 "arith_reset_flag"는 콘텍스트가 리셋되어야 하는지를 결정한다. 플래그가 TRUE이면, 도 9a의 유사 프로그램 코드 표현에 도시된 기능 "arith_reset_context"이 호출된다. 이와는 달리, "arith_reset_flag"가 FALSE일 시에는, 지난 콘텍스트 (즉, 이전에 디코딩된 윈도우 또는 프레임의 디코딩된 오디오 정보에 의해 결정된 콘텍스트)와 현재 콘텍스트 간에 맵핑이 행해진다. 이를 위해, 도 9b의 유사 프로그램 코드 표현에 나타낸 기능 "arith_map_context"이 호출된다 (이에 의해, 이전의 프레임 또는 윈도우가 서로 다른 스펙트럼 해상도를 포함할지라도 콘텍스트의 재사용을 고려한다). 그러나, 기능 "arith_map_context"의 호출은 선택적인 것으로 고려되어야 함에 주목되어야 한다.
무잡음 디코더 (또는 엔트로피 디코더)는 부호화된 양자화된 스펙트럼 계수의 4-튜플을 출력한다. 처음에는, 콘텍스트의 상태는 (도 7에서 참조 번호 720,730a,730b,730c로 도시된 바와 같이) 디코딩할 4-튜플을 "서라운딩(surrounding)"하는 (또는 더욱 정확하게는, 이웃하는) 4개의 이전의 디코딩된 그룹에 기초로 하여 계산된다. 콘텍스트의 상태는 도 9c의 유사 프로그램 코드 표현에 의해 나타낸 기능 "arith_get_context()"에 의해 주어진다. 알 수 있는 바와 같이, 기능 "arith_get_context"은 콘텍스트 상태 값 s을 (도 9f의 유사 프로그램 코드에 정의된 바와 같이) 값 "v"에 따른 콘텍스트에 할당한다.
상태가 알려지면, 4-튜플의 최상위 2비트 와이즈 플레인에 속하는 그룹은 콘텍스트 상태에 대응하는 적절한 (선택된) 누적 도수 분포표가 공급되는 (또는 이를 이용하도록 구성되는) 기능 "arith_decode()"을 이용하여 디코딩된다. 도 9d의 유사 코드 표현에 의해 나타낸 기능 "arith_get_pk()"에 의해 대응이 행해진다.
요약하기 위해, 기능 "arith_get_context" 및 "arith_get_pk"은, 콘텍스트 (즉, q[0][1+i], q[1][1+i-1], q[s][1+i-1], q[0][1+i+1])를 기반으로 누적 도수 분포표 인덱스 pki를 획득한다. 따라서, 콘텍스트에 따라 맵핑 정보 (즉, 누적 도수 분포표 중 하나)를 선택할 수 있다.
그리고 나서, (누적 도수 분포표가 선택되면) "arith_decode()" 기능은 "arith_get_pk()"에 의해 복귀되는 인덱스에 대응하는 누적 도수 분포표와 함께 호출된다. 산술적 디코더는 스케일링에 따른 정수 구현 생성 태그(integer implementation generating tag)이다. 도 9e에 도시된 유사 C-코드는 이용된 알고리즘을 나타낸다.
도 9e에 도시된 알고리즘 "arith_decode"를 참조하면, 적절한 누적 도수 분포표는 콘텍스트를 기반으로 선택되는 것으로 추정된다. 또한, 알고리즘 "arith_decode"은 도 4에서 정의된 비트 (또는 비트 시퀀스) "acod_ng", "acod_ne" 및 "acod_r"을 이용하여 산술적 디코딩을 행한다. 또한, 알고리즘 "arith_decode"은, 튜플에 관계된 비트 시퀀스 "acod_ng"의 제 1 발생(occurrence)의 디코딩을 위한 콘텍스트에 의해 정의된 누적 도수 분포표 "cum_fre"를 이용할 수 있음에 주목되어야 한다. 그러나, (arith_escape-sequence에 뒤따를 수 있는) 동일한 튜플에 대한 비트 시퀀스 "acod_ng"의 부가적인 발생은, 예컨대, 서로 다른 누적 도수 분포표 또는 디폴트 누적 도수 분포표를 이용하여 디코딩될 수 있다. 또한, 비트 시퀀스 "acod_ne" 및 "acod_r"의 디코딩은 콘텍스트와 무관할 수 있는 적절한 누적 도수 분포표를 이용하여 실행될 수 있음에 주목되어야 한다. 따라서, 요약하기 위해, 콘텍스트 의존 누적 도수 분포표는, (적어도 산술적 에스케이프가 인식될 때까지) 그룹 인덱스를 디코딩하기 위한 산술적 코드워드 "acod_ng"의 디코딩을 위해 (콘텍스트 리셋 상태가 도달되고, 디폴트 누적 도수 분포표가 이용되도록 콘텍스트가 리셋되지 않으면) 적용될 수 있다.
이것은, 도 9e에 주어진 기능 "arith_decode"의 유사 프로그램 코드와 함께 볼 시에, 도 4에 주어진 "arith_data"의 구문의 그래픽 표현을 고려할 시에 볼 수 있다. 디코딩의 이해는 "arith_data"의 구문의 이해를 기반으로 획득될 수 있다.
디코딩된 그룹 인덱스 ng가 "에스케이프" 심볼, "ARITH_ESCAPE"이지만, 부가적인 그룹 인덱스 ng는 디코딩되고, 변수 lev는 2씩 증가된다. 디코딩된 그룹 인덱스가 에스케이프, "ARITH_ESCAPE"이지 않으면, 그룹 내의 요소의 수 mm 및 그룹 오프셋 og은 표 "dgroups[]"를 조사함으로써 추론된다:
mm = dgroups[nq]&255
og = dgroups[nq]>>8
요소 인덱스 ne는 이때 누적 도수 분포표 (arith_cf_ne+((mm*(mm-1))>>1)[]에 따른 기능 "arith_decode()"을 호출함으로써 디코딩된다. 요소 인덱스가 디코딩되면, 4-튜플의 최상위 2 비트 와이즈 플레인은 표 "dgroups[]"로 도출될 수 있다:
a=dgvectors[4*(og+ne)]
b=dgvectors[4*(og+ne)+1]
c=dgvectors[4*(og+ne)+2]
d=dgvectors[4*(og+ne)+3]
잔여 비트 플레인 (예컨대, 최하위 비트)은 이때, (최하위 비트의 디코딩을 위한 미리 정해진 누적 도수 분포표이고, 비트 조합의 동일한 빈도를 나타낼 수 있는) 누적 도수 분포표 "arith_cf_r[]"에 따른 lev times "arith_decode()"을 호출함으로써 최상위 레벨에서 최하위 레벨로 디코딩된다. 디코딩된 비트 플레인 r은 다음의 방식으로 디코드 4-튜플을 정제(refine)하도록 한다:
a=(a<<1)|(r&1)
b=(b<<1)|(r>>1)&1)
c=(c<<1)|(r>>2)&1)
d=(d<<1)|(r>>3)
4-튜플 (a,b,c,d)이 완전히 디코딩되면, 콘텍스트 표 q 및 qs는 도 9f의 유사 프로그램 코드 표현에 의해 나타내는 기능 "arith_update_context()"을 호출함으로써 갱신된다.
도 9f로부터 볼 수 있는 바와 같이, 현재 윈도우 또는 프레임의 이전 디코딩된 스펙트럼 값, 즉 q[1]을 나타내는 콘텍스트는 (예컨대, 스펙트럼 값의 새로운 튜플이 디코딩될 때마다) 갱신된다. 게다가, 기능 "arith_update_context"은 또한 프레임 또는 윈도우마다 한 번만 실행되는 콘텍스트 히스토리 qs를 갱신하기 위한 유사 코드 섹션을 포함한다.
요약하기 위해, 기능 "arith_update_context"은, 2개의 주요 기능, 즉, 현재 프레임 또는 윈도우의 새로운 스펙트럼 값이 디코딩되자마자, 현재 프레임 또는 윈도우의 이전의 디코딩된 스펙트럼 값을 나타내는 콘텍스트 부분 (예컨대, q[1])을 갱신하는 기능, 및 콘텍스트 히스토리 qs가 다음 프레임 또는 윈도우를 디코딩할 시에 "구(old)" 콘텍스트를 나타내는 콘텍스트 부분 (예컨대, q[0])을 도출하기 위해 이용될 수 있도록 프레임 또는 윈도우의 디코딩의 완료에 응답하여 콘텍스트 히스토리 (예컨대, qs)를 갱신하는 기능을 포함한다.
도 9a 및 9b의 유사 프로그램 코드 표현에서 볼 수 있는 바와 같이, 콘텍스트 히스토리 (예컨대, qs)는 콘텍스트 리셋의 경우에는 폐기되고, 다음 프레임 또는 윈도우의 산술적 디코딩으로 진행할 시에 콘텍스트 리셋이 존재하지 않는 경우에는 "구" 콘텍스트 부분 (예컨대, q[0])을 획득하기 위해 이용된다.
다음에는, 산술적 디코딩의 방법이 디코딩 기법의 실시예의 흐름도를 도시한 도 20과 관련하여 간단히 요약될 것이다. 단계(2105)에 대응하는 단계(2005)에서, 콘텍스트는 t0, t1, t2 및 t3를 기반으로 도출된다. 단계(2010)에서, 제 1 감소 레벨 lev0은 콘텍스트로부터 평가되고, 변수 lev는 lev0로 설정된다. 다음 단계(2015)에서, 그룹 ng은 비트스트림으로부터 판독되고, 디코딩을 위한 확률 분포 ng는 콘텍스트로부터 도출된다. 단계(2015)에서, 그룹 ng은 이때 비트스트림으로부터 디코딩될 수 있다. 단계(2020)에서, ng가 에스케이프 값에 대응하는 544와 동일한지가 결정된다. 그렇다면, 변수 lev는 단계(2015)로 복귀하기 전에 2씩 증가될 수 있다. 이런 브랜치가 처음으로 이용되는 경우에, 즉, lev==lev0이면, 제각기 콘텍스트가 이에 따라 적응될 수 있는 확률 분포는, 상술한 콘텍스트 적응 메커니즘에 따라, 브랜치가 처음으로 이용되지 않을 경우에는 제각기 폐기된다. 그룹 인덱스 ng가 단계(2020)에서 544와 동일하지 않은 경우에는, 다음 단계(2025)에서, 그룹에서의 요소의 수가 1보다 큰지가 결정되고, 그렇다면, 단계(2030)에서, 그룹 요소 ne는 균일한 확률 분포를 추정하는 비트스트림으로부터 판독되어 디코딩된다. 요소 인덱스 ne는 산술적 코딩 및 균일 확률 분포를 이용하여 비트스트림으로부터 도출된다. 단계(2035)에서, 리터럴 코드워드(literal codeword) (a,b,c,d)는 표 내의 룩업(look-up) 프로세스에 의해 dgroups[ng] 및 acod_ne[ne]를 나타내는 ng 및 ne로부터 도출된다. 단계(2040)에서, 모든 lev 빠진 비트플레인에 대해, 플레인은 산술적 코딩을 이용하여 비트스트림으로부터 판독되고, 균일한 확률 분포를 추정한다. 비트플레인은 이때, (a,b,c,d)를 좌측으로 시프트하여, 비트플레인 bp: ((a,b,c,d)<<=1)|=bp를 가산함으로써 (a,b,c,d)에 첨부될 수 있다. 이런 프로세스는 lev 번 반복될 수 있다. 최종으로, 단계(2045)에서, 4-튜플 q(n,m), 즉 (a,b,c,d)가 제공될 수 있다.
1.2.2.3 디코딩의 진행
다음에는, 디코딩의 진행(course)이 도 10a-10d를 참조로 서로 다른 시나리오에 대해 간단히 논의될 것이다.
도 10a는 소위 "긴 윈도우"를 이용하여 주파수 도메인 인코딩되는 오디오 프레임에 대한 디코딩의 진행의 그래픽 표현을 도시한 것이다. 인코딩에 관해, 국제 표준 IOC/IEC 14493-3(2005), 파트 3, 서브파트 4에 대한 참조가 행해진다. 이 도면에서 알 수 있는 바와 같이, 제 1 프레임(1010)의 오디오 콘텐츠는 밀접하게 관계되고, 오디오 프레임(1010, 1012)에 대해 재구성된 시간 도메인 신호는 (상기 표준에서 정의된 바와 같이) 중첩 가산된다. 스펙트럼 계수의 한 세트는, 상기 참조된 표준으로부터 알 수 있듯이, 프레임(1010, 1012)의 각각에 관련된다. 또한, 새로운 1-비트 콘텍스트 리셋 플래그 ("arith_reset_flag")는 프레임(1010, 1012)의 각각에 관련된다. 제 1 프레임(1010)과 관련된 콘텍스트 리셋 플래그가 설정되면, 콘텍스트는 제 1 오디오 프레임(1010)의 스펙트럼 값의 세트의 산술적 디코딩 전에 (예컨대, 도 9a에 도시된 알고리즘에 따라) 리셋된다. 마찬가지로, 제 2 오디오 프레임(1012)의 1비트 콘텍스트 리셋 플래그가 설정되면, 콘텍스트는, 제 2 오디오 프레임(1012)의 스펙트럼 값을 디코딩하기 전에, 제 1 오디오 프레임(1010)의 스펙트럼 값과 무관하도록 리셋된다. 따라서, 콘텍스트 리셋 플래그를 평가함으로써, 제 1 오디오 프레임(1010) 및 제 2 오디오 프레임(1012)이 상기 오디오 프레임(1010, 1012)의 스펙트럼 값으로부터 도출된 윈도우화된 시간 도메인 오디오 신호가 중첩 가산되고, 동일한 윈도우 형상이 제 1 및 2 오디오 프레임(1010, 1012)과 관련될 지라도, 제 2 오디오 프레임(1012)을 디코딩하기 위해 콘텍스트를 리셋할 수 있다.
이제, 다수의 (예컨대, 8) 짧은 윈도우와 관련된 오디오 프레임(1040)의 디코딩의 그래픽 표현을 도시한 도 10b를 참조하여, 이 경우에 대한 콘텍스트의 리셋이 기술될 것이다. 다시 말하면, 다수의 짧은 윈도우가 오디오 프레임(1040)과 관련될 지라도, 오디오 프레임(1040)과 관련된 단일 1-비트 콘텍스트 리셋 플래그가 존재한다. 짧은 윈도우에 관해, 스펙트럼 값의 한 세트가 짧은 윈도우의 각각과 관련되어, 오디오 프레임(1040)이 (산술적으로 인코딩된) 스펙트럼 값의 다수의 (예컨대, 8) 세트를 포함함에 주목되어야 한다. 그러나, 콘텍스트 리셋 플래그가 활성적이면, 콘텍스트는, 오디오 프레임(1040)의 제 1 윈도우(1042a)의 스펙트럼 값의 디코딩 전과, 오디오 프레임(1040)의 어떤 다음 프레임(1042b-1042h)의 스펙트럼 값의 디코딩 간에 리셋될 것이다. 따라서, 다시 한번, 콘텍스트는 2개의 다음 윈도우의 스펙트럼 값의 디코딩 간에 리셋되고, 이의 오디오 콘텐츠는, 다음 윈도우(예컨대, 윈도우(1042a, 1042b))가 이와 관련된 동일한 윈도우 형상을 포함할지라도, (중첩 가산된다는 점에서) 밀접하게 관계된다. 또한, 콘텍스트는, 단일 오디오 프레임의 디코딩 중에 (즉, 단일 오디오 프레임의 서로 다른 스펙트럼 값의 디코딩 간에) 리셋됨에 주목되어야 한다. 또한, 단일 비트 콘텍스트 리셋 플래그는 프레임(1040)이 다수의 짧은 윈도우(1042a-1042h)를 포함할 경우에 콘텍스트의 다수의 리셋을 호출함에 주목되어야 한다.
이제, 긴 윈도우 (오디오 프레임(1070) 및 이전의 오디오 프레임)와 관련된 오디오 프레임에서, 다수의 짧은 윈도우(오디오 프레임(1072))와 관련된 하나 이상의 오디오 프레임으로의 전이가 있는 데서 콘텍스트 리셋의 그래픽 표현을 도시한 도 10c를 참조한다. 콘텍스트 리셋 플래그는 윈도우 형상의 신호화와는 무관한 콘텍스트를 리셋할 필요성의 신호화를 고려한다. 예컨대, "윈도우" (또는, 더욱 정확하게는, 짧은 윈도우와 관련된 프레임 부분 또는 "서브프레임")(1074a)의 윈도우 형상이 실질적으로 오디오 프레임(1070)의 긴 윈도우의 윈도우 형상과 다르고, 짧은 윈도우(1074a)의 스펙트럼 해상도가 통상적으로 오디오 프레임(1070)의 긴 윈도우의 스펙트럼 해상도 (주파수 해상도)보다 작을 지라도, 엔트로피 디코더는, 오디오 프레임(1070)의 스펙트럼 값을 기초로 하는 콘텍스트를 이용하여 오디오 프레임(1072)의 제 1 윈도우(1074a)의 스펙트럼 값을 획득할 수 있도록 구성될 수 있다. 이것은, 도 9b의 유사 프로그램 코드에 의해 기술된 서로 다른 스펙트럼 해상도의 윈도우 (또는 프레임) 간에 콘텍스트를 맵핑함으로써 획득될 수 있다. 그러나, 오디오 프레임(1072)의 콘텍스트 리셋 플래그가 활성적임이 발견되면, 엔트로피 디코더는 동시에 오디오 프레임(1070)의 긴 윈도우의 스펙트럼 값 및, 오디오 프레임(1072)의 제 1 짧은 윈도우(1074a)의 스펙트럼 값의 디코딩 간에 콘텍스트를 리셋할 수 있다. 이 경우에, 콘텍스트의 리셋은 도 9a의 유사 프로그램 코드와 관련하여 기술된 알고리즘에 의해 실행된다.
요약하기 위해, 콘텍스트 리셋 플래그의 평가는 매우 큰 유연성을 가진 발명의 엔트로피 디코더를 제공한다. 바람직한 실시예에서, 엔트로피 디코더는:
Figure 112014050820318-pat00001
현재 프레임 또는 윈도우 (이의 스펙트럼 값)를 디코딩할 시에 서로 다른 스펙트럼 해상도의 이전에 디코딩된 프레임 또는 윈도우에 기초로 하는 콘텍스트를 이용할 수 있고; 및
Figure 112014050820318-pat00002
콘텍스트 리셋 플래그에 응답하여, 서로 다른 윈도우 형상 및/또는 서로 다른 스펙트럼 해상도를 가진 프레임 또는 윈도우의 (스펙트럼 값의) 디코딩 간에 콘텍스트를 선택적으로 리셋할 수 있으며; 및
Figure 112014050820318-pat00003
콘텍스트 리셋 플래그에 응답하여, 동일한 윈도우 형상 및/또는 스펙트럼 해상도를 가진 프레임 또는 윈도우의 (스펙트럼 값의) 디코딩 간에 콘텍스트를 선택적으로 리셋할 수 있다.
환언하면, 엔트로피 디코더는, 윈도우 형상/스펙트럼 해상도 보조 정보로부터 분리한 콘텍스트 리셋 보조 정보를 평가함으로써, 윈도우 형상 및/또는 스펙트럼 해상도의 변화와 무관한 콘텍스트 리셋을 실행하도록 구성된다.
1.2.3 선형 예측 도메인 채널 스트림 디코딩
1.2.3.1 선형 예측 도메인 채널 스트림 데이터
다음에는, 선형 예측 도메인 채널 스트림의 구문이 선형 예측 도메인 채널 스트림의 구문의 그래픽 표현을 도시한 도 11a를 참조로 기술될 것이고, 또한 변환 코딩된 여기 코딩 (tcx_coding)의 구문의 그래픽 표현을 도시한 도 11b를 참조로 기술될 것이며, 또한, 선형 예측 도메인 채널 스트림의 구문에 이용되는 정의 및 데이터 요소의 표현을 도시한 도 11c 및 11d를 참조로 기술될 것이다.
이제, 도 11a를 참조하면, 선형 예측 도메인 채널 스트림의 전체 구조가 논의될 것이다. 도 11a에 도시된 선형 예측 도메인 채널 스트림은, 예컨대, "acelp_core_mode" 및 "lpd_mode"와 같은 많은 구성 정보 항목을 포함한다. 구성 요소의 의미 및 선형 예측 도메인 코딩의 전체 개념에 관해, 국제 표준 3GPP TS 26.090, 3GPP TS 26.190 및 3GPP TS 26.290을 참조한다.
더욱이, 선형 예측 도메인 채널 스트림은, (산술적으로 코딩될 수 있는) ACELP 인코딩된 여기 또는 변환 코딩된 여기를 포함하는 (인덱스 k=0 내지 k=3을 가진) 4개까지의 "블록"을 포함할 수 있음에 주목되어야 한다. 다시, 도 11a를 참조하면, 선형 예측 도메인 채널 스트림은, "블록"의 각각에 대해, ACELP 자극 인코딩 또는 TCX 자극 인코딩을 포함한다. ACELP 자극 인코딩이 본 발명에 관련이 없음에 따라, 상세한 논의는 생략될 것이고, 이 문제에 관한 상기 국제 표준에 대한 참조가 행해질 것이다.
TCX 자극 인코딩에 관해, 서로 다른 인코딩이, 현재 오디오 프레임의 (또한 "TCX 프레임"으로 명시되는) 제 1 TCX "블록"을 인코딩하고, 현재 오디오 프레임의 어떤 다음 TCX "블록" (TCX 프레임)을 인코딩하기 위해 이용된다. 이것은, 현재 처리된 TCX "블록" (TCX 프레임)이 처음에는 (또한 선형 예측 도메인 코딩의 용어에서 "슈퍼 프레임"으로 명시되는) 현재 프레임에 있는지를 나타내는 소위 "first_tcx_flag"로 나타낸다.
이제, 도 11b를 참조하면, 변환 코딩된 여기 "블록" (tcx 프레임)의 인코딩은 인코딩된 잡음 인수("noise_factor") 및 인코딩된 글로벌 이득("global_gain")을 포함한다. 게다가, 현재 고려된 tcx "블록"이 현재 고려된 오디오 프레임 내의 제 1 tcx "블록"이면, 현재 고려된 tcx의 인코딩은 콘텍스트 리셋 플래그 ("arith_reset_flag")를 포함한다. 그렇지 않으면, 즉, 현재 고려된 tcx "블록"이 현재 오디오 프레임의 제 1 tcx "블록"이 아니면, 현재 tcx "블록"의 인코딩은, 도 11b의 구문 설명에서 알 수 있는 바와 같이, 그런 콘텍스트 리셋 플래그를 포함하지 않는다. 더욱이, tcx 자극의 인코딩은, 상기 도 4와 관련하여 이미 설명된 산술적 코딩에 따라 인코딩되는 산술적 인코딩된 스펙트럼 값 (또는 스펙트럼 계수) ("arith_data")를 포함한다.
오디오 프레임의 제 1 tcx "블록"의 변환 코딩된 여기 자극을 나타내는 스펙트럼 값은 상기 tcx "블록"의 콘텍스트 리셋 플래그 ("arith_reset_flag")가 활성적일 경우에는 리셋 콘텍스트 (디폴트 콘텍스트)를 이용하여 인코딩된다. 오디오 프레임의 제 1 tcx "블록"의 산술적 인코딩된 스펙트럼 값은 상기 오디오 프레임의 콘텍스트 리셋 플래그가 불활성적일 경우에는 리셋이 아닌 콘텍스트를 이용하여 인코딩된다. 오디오 프레임의 (제 1 tcx "블록" 다음의) 어떤 다음 tcx "블록"의 산술적 인코딩된 값은 리셋이 아닌 콘텍스트를 이용하여 (즉, 이전의 tcx 블록에서 도출된 콘텍스트를 이용하여) 인코딩된다. 변환 코딩된 여기의 스펙트럼 값 (또는 스펙트럼 계수)의 산술적 인코딩에 관한 상기 상세 사항은 도 11a와 함께 취해질 시에 도 11b에서 알 수 있다.
1.2.3.2 변환 코딩된 여기 스펙트럼 값의 디코딩 방법
산술적으로 인코딩되는 변환 코딩된 여기 스펙트럼 값은 콘텍스트를 고려하여 디코딩될 수 있다. 예컨대, tcx "블록"의 콘텍스트 리셋 플래그가 활성적일 경우에, 콘텍스트는, 예컨대, 도 9c-9f와 관련하여 기술된 알고리즘을 이용하여 tcx "블록"의 산술적 인코딩된 스펙트럼 값을 디코딩하기 전에, 도 9a에 도시된 알고리즘에 따라 리셋될 수 있다. 이에 반해, tcx "블록"의 콘텍스트 리셋 플래그가 불활성적이면, 디코딩을 위한 콘텍스트는, 도 9b와 관련하여 기술된 (이전에 디코딩된 tcx 블록으로부터의 콘텍스트 히스토리의) 맵핑에 의해, 또는 어떤 다른 형식으로 이전에 디코딩된 스펙트럼 값에서 콘텍스트를 도출함으로써 결정될 수 있다. 또한, 오디오 프레임의 제 1 tcx "블록"이 아닌 "다음" tcx "블록"의 디코딩을 위한 콘텍스트는 이전의 tcx "블록"의 이전에 디코딩된 스펙트럼 값에서 도출될 수 있다.
그래서, tcx 여기 자극 스펙트럼 값의 디코딩을 위해, 디코더는, 예컨대, 도 6, 9a-9f 및 20과 관련하여 설명된 알고리즘을 이용할 수 있다. 그러나, 콘텍스트 리셋 플래그 ("arith_reset_flag")의 셋팅은 ("윈도우"에 대응하는) 모든 tcx "블록"에 대해 검사되지 않고, 오디오 프레임의 제 1 tcx "블록"에 대해서만 검사된다. ("윈도우"에 대응하는) 다음 tcx "블록"에 대해서는 콘텍스트가 리셋되지 않는 것으로 추정될 수 있다.
따라서, tcx 여기 자극 스펙트럼 값은 도 11b 및 4에 도시된 구문에 따라 인코딩된 스펙트럼 값을 디코딩하도록 구성될 수 있다.
1.2.3.3 디코딩의 진행
다음에는, 선형 예측 도메인 여기 오디오 정보의 디코딩이 도 12와 관련하여 기술될 것이다. 그러나, 선형 예측 도메인 신호 합성기의 파라미터 (예컨대, 자극 또는 여기에 의해 여기되는 선형 예측기의 파라미터)의 디코딩은 여기서 무시될 것이다. 오히려, 다음 논의의 초점은 변환 코딩된 여기 자극 스펙트럼 값의 디코딩에 놓인다.
도 12는 선형 예측 도메인 오디오 합성기를 여기하기 위한 인코딩된 여기의 그래픽 표현을 도시한 것이다. 인코딩된 자극 정보는 다음 오디오 프레임(1210, 1220, 1230)에 나타난다. 예컨대, 제 1 오디오 프레임(1210)은 ACELP 인코딩된 자극을 포함하는 제 1 "블록" (1212a)을 포함한다. 오디오 프레임(1210)은 또한 변환 코딩된 여기 자극을 포함하는 3개의 "블록" (1212b, 1212c, 1212d)을 포함하며, 여기서, TCX "블록" (1212B, 1212C, 1212D)의 각각의 변환 코딩된 여기 자극은 콘텍스트 리셋 플래그 ("arith_reset_flag")를 포함한다. 오디오 프레임(1220)은, 예컨대, 4개의 TCX "블록" (1222A-1222D)을 포함하며, 여기서, 프레임(1220)의 제 1 TCX 블록(1222A)은 콘텍스트 리셋 플래그를 포함한다. 오디오 프레임(1230)은, 자체가 콘텍스트 리셋 플래그를 포함하는 단일 TCX 블록(1232)을 포함한다. 따라서, 하나 이상의 TCX 블록을 포함하는 오디오 프레임마다 하나의 콘텍스트 리셋 플래그가 존재한다.
따라서, 도 12에 도시된 선형 예측 도메인 자극을 디코딩할 시에, 콘텍스트 리셋 플래그의 상태에 따라, 디코더는, TCX 블록(1212B)의 콘텍스트 리셋 플래그가 TCX 블록(1212B)의 스펙트럼 값의 디코딩 전에 콘텍스트를 셋 및 리셋하는지를 검사할 것이다. 그러나, 오디오 프레임(1210)의 콘텍스트 리셋 플래그의 상태와 무관하게, TCX 블록 (1212B 및 1212C)의 이들 스펙트럼 값의 산술적 디코딩 간에는 콘텍스트의 리셋이 존재하지 않을 것이다. 마찬가지로, TCX 블록 (1212C 및 1212D)의 스펙트럼 값의 디코딩 간에는 콘텍스트의 리셋이 존재하지 않을 것이다. 그러나, 오디오 프레임(1222)의 콘텍스트 리셋 플래그의 상태에 따라, 디코더는, TCX 블록(1222A)의 스펙트럼 값의 디코딩 전에 콘텍스트를 리셋할 것이고, TCX 블록 (1212A 및 1212B, 1212B 및 1212C, 1212C 및 1212D)의 스펙트럼 값의 디코딩 간에는 콘텍스트의 리셋을 행하지 않을 것이다. 그러나, 오디오 프레임(1230)의 콘텍스트 리셋 플래그의 상태에 따라, 디코더는 TCX 블록(1232)의 스펙트럼 값의 디코딩 전에 콘텍스트의 리셋을 실행할 것이다.
또한, 오디오 스트림은, 디코더가 이와 같은 교번하는(alternating) 시퀀스를 적절히 디코딩하도록 구성될 수 있도록, 주파수 도메인 오디오 프레임 및 선형 예측 도메인 오디오 프레임의 조합을 포함할 수 있음에 주목되어야 한다. 서로 다른 인코딩 모드 (주파수 도메인 대 선형 예측 도메인) 간의 전이에서, 콘텍스트의 리셋은 콘텍스트 리셋터에 의해 강제로 실행될 수 있거나 실행될 수 없다.
1.3. 오디오 디코더 - 제 3 실시예
다음에는, 전용 콘텍스트 리셋 보조 정보의 부재 시에도 콘텍스트의 비트레이트 효율적 리셋팅을 고려하는 다른 오디오 디코더가 기술될 것이다.
엔트로피 인코딩된 스펙트럼 값을 수반하는 보조 정보는 엔트로피 인코딩된 스펙트럼 값의 엔트로피 디코딩 (예컨대, 산술적 디코딩)을 위한 콘텍스트를 리셋하는지를 결정하기 위해 이용될 수 있음이 발견되었다.
산술적 디코딩의 콘텍스트를 리셋하기 위한 효율적 개념은 다수의 윈도우와 관련된 스펙트럼 값의 세트가 포함되는 오디오 프레임에 대해 발견되었다. 예컨대, 국제 표준 ISO/IEC 14496-3:2005, 파트 3, 서브파트 4에서 정의되는 (또한, 간단히 "AAC"로 명시되는) 소위 "고효율 오디오 코딩"은 스펙트럼 계수의 8개의 세트를 포함하는 오디오 프레임을 이용하며, 스펙트럼 계수의 각 세트는 하나의 "짧은 윈도우"와 관련된다. 따라서, 8개의 짧은 윈도우는 이와 같은 오디오 프레임과 관련되며, 8개의 짧은 윈도우는, 스펙트럼 계수의 세트를 기반으로 재구성되는 윈도우화된 시간 도메인 신호를 중첩 가산하는 중첩 가산 절차에 이용된다. 상세 사항에 대해서는 상기 국제 표준을 참조한다. 그러나, 다수의 스펙트럼 계수의 세트를 포함하는 오디오 프레임에서, 스펙트럼 계수의 2 이상의 세트는, 공통 스케일 인수가 스펙트럼 계수의 그룹화된 세트와 관련되도록 (및 디코더에서의 상기 세트에 적용되도록) 그룹화될 수 있다. 스펙트럼 계수의 세트의 그룹화는, 예컨대, 그룹화 보조 정보 (예컨대, "scale_factor_grouping" 비트)를 이용하여 신호화될 수 있다. 상세 사항에 대해서는, 예컨대, ISO/IEC 14496-3:2005(E), 파트 3, 서브파트 4, 표 4.6, 4.44, 4.45, 4.46 및 4.47에 대한 참조가 행해진다. 그럼에도 불구하고, 완전히 이해하기 위해서는, 상술한 국제 표준을 전적으로 참조한다.
그러나, 본 발명의 실시예에 따른 오디오 디코더에서, 스펙트럼 값의 서로 다른 세트의 그룹화 (예컨대, 이들을 공통 스케일 스펙트럼 값과 관련시킴으로써)에 관한 정보는 스펙트럼 값의 산술적 인코딩/디코딩을 위해 콘텍스트를 리셋하는 시기를 결정하기 위해 이용될 수 있다. 예컨대, 제 3 실시예에 따른 발명의 오디오 디코더는, 인코딩된 스펙트럼 값의 세트의 한 그룹에서, (새로운 스케일 인수의 세트의 다른 그룹이 관련되는) 스펙트럼 값의 세트의 다른 그룹으로의 전이가 있음이 발견될 때마다 (예컨대, 상술한 바와 같이, 콘텍스트 기반 허프만 디코딩 또는 콘텍스트 기반 산술적 디코딩의) 엔트로피 디코딩의 콘텍스트를 리셋하도록 구성될 수 있다. 따라서, 콘텍스트 리셋 플래그를 이용하기보다는 오히려, 스케일 인수 그룹화 보조 정보가 산술적 디코딩의 콘텍스트를 리셋하는 시기를 결정하기 위해 이용될 수 있다
다음에는, 이런 개념의 일례가, 오디오 프레임 및 각각의 보조 정보의 시퀀스의 그래픽 표현을 도시한 도 13을 참조로 설명될 것이다. 도 13은 제 1 오디오 프레임(1310), 제 2 오디오 프레임(1320) 및 제 3 오디오 프레임(1330)을 도시한다. 제 1 오디오 프레임(1310)은, ISO/IEC 14493-3, 파트 3, 서브파트 4의 의미 내에서, (예컨대, 타입 "LONG_START_WINDOW"의) '긴 윈도우" 오디오 프레임일 수 있다. 콘텍스트 리셋 플래그는 오디오 프레임(1310)과 관련되어, 오디오 프레임(1310)의 스펙트럼 값의 산술적 디코딩을 위한 콘텍스트가 리셋되어야 하는지를 결정할 수 있으며, 이에 따라 오디오 디코더에 의해 콘텍스트 리셋 플래그가 고려된다.
이에 반해, 제 2 오디오 프레임은, 타입 "EIGHT_SHORT_SEQUENCE"이고, 이에 따라, 인코딩된 스펙트럼 값의 8개의 세트를 포함할 수 있다. 그러나, 인코딩된 스펙트럼 값의 제 1의 3개의 세트는 (공통 스케일 인수 정보가 관련되는) 한 그룹(1322a)을 형성하도록 함께 그룹화될 수 있다. 다른 그룹(1322b)은 스펙트럼 값의 단일 세트로 정의될 수 있다. 제 3 그룹(1322C)은 이와 관련된 스펙트럼 값의 2 세트를 포함할 수 있으며, 제 4 그룹(1322D)은 이와 관련된 스펙트럼 값의 다른 2 세트를 포함할 수 있다. 오디오 프레임(1320)의 스펙트럼 값의 세트의 그룹화는, 예컨대, 상기 참조된 표준의 표 4.6에서 정의된 소위 "scale_factor_grouping" 비트에 의해 신호화될 수 있다. 마찬가지로, 오디오 프레임(1340)은 4개의 그룹(1330A, 1330B, 1330C, 1330D)을 포함할 수 있다.
그러나, 오디오 프레임(1320, 1330)은, 예컨대, 전용 콘텍스트 리셋 플래그를 포함하지 않을 수 있다. 오디오 프레임(1320)의 스펙트럼 값을 엔트로피 디코딩하기 위해, 디코더는, 예컨대, 무조건적으로 또는 콘텍스트 리셋 플래그에 따라, 제 1 그룹(1322A)의 스펙트럼 계수의 제 1 세트를 디코딩하기 전에 콘텍스트를 리셋할 수 있다. 그 다음에, 오디오 디코더는, 스펙트럼 계수의 동일한 그룹의 스펙트럼 계수의 서로 다른 세트의 디코딩 간에 콘텍스트를 리셋하는 것을 회피할 수 있다. 그러나, 오디오 검출기가 (스펙트럼 계수의 세트의) 다수의 그룹을 포함하는 오디오 프레임(1320) 내의 새로운 그룹의 시점을 검출할 때마다, 오디오 디코더는 스펙트럼 계수의 엔트로피 디코딩을 위해 콘텍스트를 리셋할 수 있다. 따라서, 오디오 디코더는, 제 2 그룹(1322B)의 스펙트럼 계수의 디코딩 전, 제 3 그룹(1322C)의 스펙트럼 계수의 디코딩 전, 및 제 4 그룹(1322D)의 스펙트럼 계수의 디코딩 전에, 제 1 그룹(1322A)의 스펙트럼 계수의 디코딩을 위해 콘텍스트를 효율적으로 리셋할 수 있다.
따라서, 전용 콘텍스트 리셋 플래그의 분리 송신은 스펙트럼 계수의 다수의 세트가 존재하는 그런 오디오 프레임 내에서 회피될 수 있다. 따라서, 그룹화 비트의 송신에 의해 생성되는 추가 비트 부하(extra bit load)는 적어도 부분적으로, 일부 응용에서 불필요할 수 있는 그런 프레임 내에서 전용 콘텍스트 리셋 플래그의 송신의 생략으로 보상될 수 있다.
요약하기 위해, 디코더 특징(feature) (및 인코더 특징)으로서 구현될 수 있는 리셋 전략(strategy)이 기술되었다. 여기에 기술된 전략은 (콘텍스트를 리셋하기 위한 전용 보조 정보와 같은) 어떤 부가적인 정보를 디코더로 송신하는 것을 필요치 않는다. 그것은 디코더에 의해 (예컨대, 상기 산업 표준에 대응하는 AAC 인코딩된 오디오 스트림을 제공하는 인코더에 의해) 이미 전송된 보조 정보를 이용한다. 여기에 기술되는 바와 같이, 신호 (오디오 신호) 내의 콘텐츠의 변화는, 예컨대, 1024 샘플의 프레임 간에 일어날 수 있다. 이런 경우에는, 콘텍스트 적응 코딩을 제어하여, 실행에 대한 영향을 완화할 수 있는 리셋 플래그를 이미 갖는다. 그러나, 1024 샘플의 프레임 내에서, 콘텐츠는 또한 변화할 수 있다. 이와 같은 경우에, (예컨대, 통합 음성 및 오디오 코딩 "USAC"에 따른) 오디오 코더가 주파수 도메인 (FD) 코딩을 이용하면, 디코더는 보통 짧은 블록으로 스위칭할 것이다. 짧은 블록에서, 이미 (오디오 신호의) 전이 또는 과도 현상(transient)의 위치에 관한 정보를 이미 제공한 그룹화 정보가 (상술한 바와 같이) 전송된다. 이와 같은 정보는, 이 섹션에서 논의된 바와 같이, 콘텍스트를 리셋하기 위해 재사용될 수 있다.
다른 한편으로는, (예컨대, 통합 음성 및 오디오 코딩 "USAC"에 따른) 오디오 코더가 선형 예측 도메인 (LPD) 코딩을 이용하면, 콘텐츠의 변화는 선택된 코딩 모드에 영향을 미칠 것이다. 서로 다른 변환 코딩 여기가 1024 샘플의 한 프레임 내에서 일어나면, 콘텍스트 맵핑은 상술한 바와 같이 이용될 수 있다. (예컨대, 도 9d의 콘텍스트 맵핑을 참조한다). 그것은, 서로 다른 변환 코딩 여기가 선택될 때마다 콘텍스트를 리셋하는 것보다 더 양호한 해결책인 것으로 발견되었다. 선형 예측 도메인 코딩이 매우 적응적일 시에, 코딩 모드는 일정하게 변화하고, 체계적 리셋(systematic reset)은 코딩 실행을 상당히 곤란하게 할 것이다. 그러나, ACELP가 선택되면, 다음 변환 코딩된 여기 (TCX)에 대한 콘텍스트를 리셋하는 것이 유리할 것이다. 변환 코딩된 여기 간의 ACELP의 선택은 신호의 큰 변화가 일어난다는 강한 표시이다.
환언하면, 예컨대, 도 12를 참조하면, 선형 예측 주요 코딩을 이용할 시에 오디오 프레임의 제 1 TCX "블록" 이전의 콘텍스트 리셋 플래그는, 오디오 프레임 내에 적어도 하나의 ACELP 코딩 자극이 존재할 경우에는 전체적으로 또는 선택적으로 생략될 수 있다. 이 경우에, 디코더는, ACELP "블록"에 뒤따른 제 1 TCX "블록"이 식별될 경우에는 콘텍스트를 리셋하고, 다음 TCX "블록"의 스펙트럼 값의 디코딩 간의 콘텍스트의 리셋을 생략하도록 구성될 수 있다.
또한, 선택적으로, 디코더는, TCX 블록이 페어런트(parent) 오디오 프레임 앞에 있을 경우에, 예컨대, 오디오 프레임마다 한번 콘텍스트 리셋 플래그를 평가하여, TCX "블록"의 확장된 세그먼트가 있는 데서도 콘텍스트의 리셋을 고려하도록 구성될 수 있다.
2. 오디오 인코더
2.1. 오디오 인코더 - 기본 개념
다음에는, 콘텍스트 기반 엔트로피 인코더의 기본 개념이 다음에 상세히 논의되는 콘텍스트의 리셋을 위한 특정 절차의 이해를 용이하게 하기 위해 논의될 것이다.
무잡음 코딩은 양자화된 스펙트럼 값에 기초로 할 수 있고, 예컨대, 4개의 이전에 디코딩된 이웃한 튜플로부터 도출되는 콘텍스트 의존 누적 도수 분포표를 이용할 수 있다. 도 7은 다른 실시예를 예시한다. 도 7은, 시간 축을 따라 3개의 시간 슬롯이 n, n-1 및 n-2로 인덱스되는 시간 주파수 플레인을 도시한다. 더욱이, 도 7은 m-2, m-1, m 및 m+1로 라벨되는 4개의 주파수 또는 스펙트럼 대역을 예시한다. 도 7은 인코딩되거나 디코딩되는 샘플의 튜플을 나타내는 각 시간-주파수 슬롯 박스 내에 도시한다. 3개의 서로 다른 타입의 튜플이 도 7에 예시되며, 여기서, 대시선 또는 점선 가장 자리를 가진 둥근 박스는 인코딩되거나 디코딩되는 잔여 튜플을 나타내고, 점선 가장 자리를 가진 정사각형 박스는 이전에 인코딩되거나 디코딩된 튜플을 나타내며, 실선 가장 자리를 가진 회색 박스는 이전에 인코딩/디코딩된 튜플을 나타내며, 이들은 인코딩되거나 디코딩되는 현재 튜플에 대한 콘텍스트를 결정하는데 이용된다.
상술한 실시예에서 언급된 이전 및 현재 세그먼트는 현재 실시예에서의 튜플에 대응할 수 있음에 주목한다. 환언하면, 이 세그먼트는 주파수 또는 스펙트럼 도메인 내에서 대역 방향으로 처리될 수 있다. 도 76에 예시된 바와 같이, 현재 튜플의 이웃 내의 (즉, 시간 및 주파수 또는 스펙트럼 도메인 내의) 튜플 또는 세그먼트는 콘텍스트를 도출하기 위해 고려될 수 있다. 그 후, 누적 도수 분포표는 산술적 코더에 의해 가변 길이 이진 코드를 생성하기 위해 이용될 수 있다. 산술적 코더는 심볼의 주어진 세트 및 이들의 각각의 확률에 대한 이진 코드를 생성할 수 있다. 이진 코드는 심볼의 세트가 위치한 확률 구간을 코드워드에 맵핑함으로써 생성될 수 있다.
본 실시예에서, 콘텍스트 기반 산술적 코딩은 4-튜플을 기반으로 (즉, 4개의 스펙트럼 계수 인덱스로) 실행될 수 있으며, 이 4-튜플은, 또한, q(n,m), 또는 q[m][n]으로 라벨되고, 양자화 후의 스펙트럼 계수를 나타내며, 이 스펙트럼 계수는 주파수 또는 스펙트럼 도메인 내에 이웃되고, 한 단계에서 엔트로피 코딩된다. 상기 설명에 따르면, 코딩은 코딩 콘텍스트에 기초로 하여 실행될 수 있다. 도 7에 나타낸 바와 같이, 부가적으로, 코딩되는 4-튜플 (즉, 현재 세그먼트)에, 4개의 이전의 코딩된 4-튜플이 콘텍스트를 도출하기 위해 고려된다. 이들 4개의 4-튜플은 콘텍스트를 결정하고, 주파수 및/또는 시간 도메인 앞에 있다.
도 21a는 스펙트럼 계수의 인코딩 기법에 대한 USAC (USAC = Universal Speech and Audio Coder) 콘텍스트 의존 산술적 코더의 흐름도를 도시한 것이다. 인코딩 프로세스는 현재 4-튜플 플러스 콘텍스트에 의존하며, 여기서, 콘텍스트는, 산술적 코더의 확률 분포를 선택하고, 스펙트럼 계수의 진폭을 예측하기 위해 이용된다. 도 21a에서, 박스(2105)는 q(n-1, m), q(n, m-1), q(n-1, m-1) 및 q(n-1, m+1)에 대응하는 t0, t1, t2 및 t3에 기초로 하는 콘텍스트 결정을 나타낸다.
일반적으로, 실시예들에서, 엔트로피 인코더는, 스펙트럼 계수의 4-튜플의 단위로 현재 세그먼트를 인코딩하고, 코딩 콘텍스트에 기초로 하는 4-튜플의 진폭 범위를 예측하기 위해 구성될 수 있다.
본 실시예에서, 인코딩 기법은 수개의 전략을 포함한다. 첫째로, 리터럴 코드워드는 산술적 코더 및 특정 확률 분포를 이용하여 인코딩된다. 이 코드워드는 4개의 이웃한 스펙트럼 계수(a, b, c, d)를 나타내지만, a, b, c, d의 각각은 범위 -5 < a,b,c,d < 4로 제한된다.
일반적으로, 실시예들에서, 엔트로피 인코더는, 예측된 범위 또는 미리 정해진 범위 내에 분할(division)의 결과를 맞추기 위해 4-튜플을 필요한 만큼 미리 정해진 인수로 분할하고, 4-튜플이 예측된 범위 내에 있지 않을 시에는, 필요한 많은 분할, 분할 나머지(division remainder) 및 분할의 결과를 인코딩하며, 그렇지 않으면, 분할 나머지 및 분할의 결과를 인코딩하기 위해 구성될 수 있다.
다음에는, 용어 (a, b, c, d), 즉, 어떤 계수(a, b, c, d)가 이 실시예에서 주어진 범위를 초과하면, 이것은 일반적으로, (a, b, c, d)를 필요한 만큼 인수 (예컨대, 2 또는 4)로 분할하여, 결과적으로 코드워드를 주어진 범위 내에 맞추기 위해 고려될 수 있다. 2의 인수에 의한 분할은 오른쪽으로 시프트하는 이진수, 즉 (a, b, c, d)>>1에 대응한다. 이런 축소(diminution)는 정수 표현(integer representation)에서 행해진다. 즉, 정보가 상실될 수 있다. 오른쪽으로 시프트함으로써 상실될 수 있는 최하위 비트는 저장되고, 나중에, 산술적 코더 및 균일 확률 분포를 이용하여 코딩된다. 우측으로 시프트하는 프로세스는 모든 4개의 스펙트럼 계수(a, b, c, d)에 대해 실행된다.
일반적인 실시예들에서, 엔트로피 인코더는, 확률 분포가 코딩 콘텍스트에 기초로 하는 하나 이상의 코드 워드의 그룹을 나타내는 그룹 인덱스 ng 및, 그룹이 하나 이상의 코드워드를 포함하는 경우에, 그룹 내의 코드워드를 나타내고, 균일하게 분포되는 것으로 추정될 수 있는 요소 인덱스 ne를 이용하여 분할의 결과 또는 4-튜플을 인코딩하며, 분할을 나타내기 위해서만 이용되는 특정 그룹 인덱스 ng인 많은 에스케이프 심볼로 분할의 수를 인코딩하며, 산술적 코딩 규칙을 이용하여 균일한 분포에 기초로 하는 분할의 나머지를 인코딩하기 위해 구성될 수 있다. 엔트로피 인코더는, 에스케이프 심볼을 포함하는 심볼 알파벳, 이용 가능한 그룹 인덱스의 세트에 대응하는 그룹 심볼, 대응하는 요소 인덱스를 포함하는 심볼 알파벳, 및 나머지의 서로 다른 값을 포함하는 심볼 알파벳을 이용하여 심볼의 시퀀스를 인코딩된 오디오 스트림으로 인코딩하기 위해 구성될 수 있다.
도 21a의 실시예에서, 리터럴 코드워드를 인코딩하기 위한 확률 분포 및 또한 범위 감소 단계(range-reduction steps)의 수의 평가는 콘텍스트로부터 도출될 수 있다. 예컨대, 전체 84 = 4096에서의 모든 코드 워드는 하나 이상의 요소로 이루어지는 전체 544 그룹에 거의 이룬다. 코드워드는 그룹 인덱스 ng 및 그룹 요소 ne로서 비트스트림에 나타낼 수 있다. 양방의 값은 산술적 코더를 이용하여, 어떤 확률 분포를 이용하여 코딩될 수 있다. 한 실시예에서, ng에 대한 확률 분포는 콘텍스트로부터 도출될 수 있는 반면에, ne에 대한 확률 분포는 균일한 것으로 추정될 수 있다. ng 및 ne의 조합은 코드워드를 분명하게 식별할 수 있다. 분할의 나머지, 즉, 시프트 아웃된 비트 플레인은 또한 균일하게 분포되는 것으로 추정될 수 있다.
도 21a에서, 단계(2110)에서, (a, b, c, d) 또는 현재 세그먼트인 4-튜플 q(n,m)은 제공되고, 파라미터 lev는 0에 설정함으로써 초기화된다. 이 콘텍스트로부터의 단계(2115)에서, (a, b, c, d)의 범위가 평가된다. 이 평가에 따르면, (a, b, c, d)은 lev0 레벨까지 감소될 수 있으며, 즉 2lev0의 인수로 분할될 수 있다. lev0 최하위 비트플레인은 단계(2150)에서 나중 사용을 위해 저장된다.
단계(2120)에서, (a, b, c, d)가 주어진 범위를 초과하는지가 검사되며, 초과하면, (a, b, c, d)의 범위는 단계(2125)에서 4의 인수만큼 감소된다. 환언하면, 단계(2125)에서, (a, b, c, d)는 오른쪽으로 2만큼 시프트되고, 제거된 비트플레인은 단계(2150)에서 나중 사용을 위해 저장된다.
이런 감소 단계를 나타내기 위해, ng는 단계(2130)에서 544로 설정되며, 즉, ng = 544는 에스케이프 코드워드 역할을 한다. 이런 코드워드는 이때 단계(2155)에서 비트스트림으로 기록되며, 여기서, 단계(2130)에서 코드워드를 도출하기 위해, 콘텍스트로부터 도출된 확률 분포에 따른 산술적 코더가 이용된다. 이런 감소 단계가 첫번째 적용되는 경우에, 즉, lev==lev0이면, 콘텍스트는 약간 적응된다. 감소 단계가 한번 이상 적용되는 경우에, 콘텍스트는 폐기되고, 디폴트 분포가 더 이용된다.
단계(2120)에서, 범위에 대한 부합(match)이 검출되면, 특히, (a, b, c, d)가 범위 조건에 부합하면, (a, b, c, d)는 그룹 ng 및, 적용 가능하다면, 그룹 요소 인덱스 ne에 맵핑된다. 이런 맵핑은 분명하게 (a, b, c, d)가 ng 및 ne에서 도출될 수 있다는 것이다. 그 후, 그룹 인덱스 ng는, 단계(2135)에서 적응된/폐기된 콘텍스트를 위해 도달된 확률 분포를 이용하여 산술적 코더에 의해 코딩된다. 그리고 나서, 그룹 인덱스 ng는 단계(2155)에서 비트스트림 내에 삽입된다. 다음 단계(2140)에서는, 그룹 내의 요소의 수가 1보다 큰지가 검사된다. 필요하다면, 즉, ng로 인덱스된 그룹이 하나 이상의 요소로 이루어지면, 그룹 요소 인덱스 ne는 단계(2145)에서 산술적 코더에 의해 코딩되어, 본 실시예에서 균일한 확률 분포를 추정한다.
다음 단계(2145)에서, 그룹 요소 인덱스 ne는 단계(2155)에서의 비트스트림 내에 삽입된다. 최종으로, 단계(2150)에서, 모두 저장된 비트플레인은 산술적 코더를 이용하여 코딩되어, 균일한 확률 분포를 추정한다. 그리고 나서, 코딩된 저장된 비트플레인은 또한 단계(2155)에서의 비트스트림 내에 삽입된다.
상술한 바를 요약하기 위해, 다음에 기술되는 콘텍스트 리셋 개념이 이용될 수 있는 엔트로피 인코더는, 하나 이상의 스펙트럼 값을 수신하여, 하나 이상의 수신된 스펙트럼 값을 기반으로 통상적으로 가변 길이의 코드 워드를 제공한다. 수신된 스펙트럼 값을 코드 워드로의 맵핑은 코드 워드의 평가된 확률 분포에 의존함으로써, 일반적으로, 짧은 코드 워드가 고 확률을 가진 스펙트럼 값 (또는 이들의 조합)과 관련되고, 긴 코드 워드가 저 확률을 가진 스펙트럼 값 (또는 이들의 조합)과 관련되도록 한다. 스펙트럼 값 (또는 이들의 조합)의 확률이 이전에 인코딩된 스펙트럼 값 (또는 이들의 조합)에 의존하는 것으로 추정된다는 점에서 콘텍스트가 고려된다. 따라서, 맵핑 규칙 (또한 "맵핑 정보" 또는 "코드북" 또는 "누적 도수 분포표"로 명시됨)은 콘텍스트에 따라, 즉 이전에 인코딩된 스펙트럼 값 (또는 이들의 조합)에 따라 선택된다. 그러나, 콘텍스트는 항상 고려되는 것은 아니다. 오히려, 콘텍스트는 때때로 여기에 기술된 "콘텍스트 리셋" 기능에 의해 리셋된다. 콘텍스트를 리셋함으로써, 현재 인코딩될 스펙트럼 값 (또는 이들의 조합)은 콘텍스트를 기반으로 예상된 것과 상당히 다른 것으로 고려될 수 있다.
2.2 오디오 인코더 - 도 14의 실시예
다음에는, 오디오 인코더가 상술한 기본적 개념에 기초로 하는 도 14와 관련하여 기술될 것이다. 도 14의 오디오 인코더(1400)는, 오디오 신호(1412)를 수신하여, 오디오 처리, 예컨대, 시간 도메인에서 주파수 도메인으로의 오디오 신호(1410)의 변환, 및 시간 도메인 대 주파수 도메인 변환에 의해 획득되는 스펙트럼 값의 양자화를 실행하도록 구성되는 오디오 프로세서(1410)를 포함한다. 따라서, 오디오 프로세서는 양자화된 스펙트럼 계수 (또한 스펙트럼 값으로 명시됨)(1414)를 제공한다. 오디오 인코더(1400)는 또한, 스펙트럼 계수(1414) 및 콘텍스트 정보(1422)를 수신하도록 구성되고, 콘텍스트 정보(1422)가 스펙트럼 값 (또는 이들의 조합)을 이들 스펙트럼 값 (또는 이들의 조합)의 인코딩된 표현인 코드 워드로 맵핑하기 위한 맵핑 규칙을 선택하기 위해 이용될 수 있는 콘텍스트 적응 산술적 코더(1420)를 포함한다. 따라서, 콘텍스트 적응 산술적 코더(1420)는 인코딩된 스펙트럼 값 (인코딩된 계수)(1424)을 제공한다. 인코더(1400)는 또한 이전에 인코딩된 스펙트럼 값(1414)을 버퍼링하기 위한 버퍼(1430)를 포함하는데, 그 이유는 버퍼(1430)에 의해 제공되는 이전에 인코딩된 스펙트럼 값(1432)이 콘텍스트에 영향을 미치기 때문이다. 인코더(1400)는 또한, 버퍼링된 이전에 인코딩된 계수(1432)를 수신하여, 이를 기반으로 콘텍스트 정보(1422) (예컨대, 누적 도수 분포표를 선택하기 위한 값 "PKI" 또는 콘텍스트 적응 산술적 코더(1420)에 대한 맵핑 정보)를 도출하도록 구성되는 콘텍스트 생성기(1440)를 포함한다. 그러나, 오디오 인코더(1400)는 또한 콘텍스트를 리셋하기 위한 리셋 메커니즘(1450)을 포함한다. 리셋 메커니즘(1450)은 콘텍스트 생성기(1440)에 의해 제공되는 콘텍스트 (또는 콘텍스트 정보)를 리셋할 시기를 결정하도록 구성된다. 리셋 메커니즘(1450)은 선택적으로, 버퍼(1430) 내에 저장되거나 이에 의해 제공되는 계수를 리셋하기 위해서는 버퍼(1430) 상에서 작용할 수 있거나, 콘텍스트 생성기(1440)에 의해 제공되는 콘텍스트 정보를 리셋하기 위해서는 콘텍스트 생성기(1440) 상에서 작용할 수 있다.
도 14의 오디오 인코더(1400)는 인코더 특징으로서의 리셋 전략을 포함한다. 리셋 전략은, 인코더측에서, 콘텍스트 리셋 보조 정보로서 간주될 수 있고, 1 비트 상에서 1024 샘플 (오디오 신호의 시간 도메인 샘플) 마다 전송되는 "리셋 플래그"를 트리거한다. 오디오 인코더(1400)는 "정규 리셋" 전략을 포함한다. 이 전략에 따르면, 리셋 플래그는 정규적으로 활성화되어, 인코더에서 이용된 콘텍스트 및, 또한 (상술한 바와 같이 콘텍스트 리셋 플래그를 처리하는 적절한 디코더에서의 콘텍스트를 리셋한다.
이와 같은 정규 리셋의 이점은 이전의 프레임으로부터 현재 프레임의 코딩의 의존을 제한할 수 있다는 것이다. (카운터(1460) 및 리셋 플래그 생성기(1470)에 의해 달성되는) n-프레임마다 콘텍스트를 리셋함으로써, 디코더가 송신의 에러가 발생할 시에도 이의 상태를 인코더와 재동기화하게 한다. 그리고 나서, 디코딩된 신호는 리셋 포인트 후에 복구될 수 있다. 또한, "정규 리셋" 전략은 디코더가 지난 정보를 고려하지 않고 비트스트림의 어떤 리셋 포인트에 랜덤하게 접근하게 한다. 리셋 포인트와 코딩 실행 간의 간격은, 타겟된 수신기 및 송신 채널 특성에 따른 인코더에서 행해지는 트레이드오프(trade-off)이다.
2.3 오디오 인코더 - 도 15의 실시예
다음에는, 인코더 특징으로서의 다른 리셋 전략이 기술될 것이다. 다음의 전략은, 인코더측에서, 1 비트 상에서 1024 샘플 마다 전송되는 리셋 플래그를 트리거한다. 도 15의 실시예에서, 리셋은 코딩 특성에 의해 트리거된다.
도 15에서 알 수 있는 바와 같이, 오디오 인코더(1500)는 오디오 인코더(1400)와 매우 유사하여, 동일한 수단 및 신호는 동일한 참조 번호로 명시되어, 다시 설명되지 않을 것이다. 그러나, 오디오 인코더는 서로 다른 리셋 메커니즘(1550)을 포함한다. 콘텍스트 리셋 메커니즘(1550)은 코딩 모드 변경 검출기(1560) 및 리셋 플래그 생성기를 포함한다. 코딩 모드 변경 검출기는 코딩 모드의 변경을 검출하여, (콘텍스트) 리셋 플래그를 제공하도록 리셋 플래그 생성기(1570)에 명령한다. 콘텍스트 리셋 플래그는 또한 콘텍스트 생성기(1440), 또는 선택적으로 또는 부가적으로, 버퍼(1430)에 작용하여 콘텍스트를 리셋한다. 상술한 바와 같이, 리셋은 코딩 특성에 의해 트리거된다. 통합 음성 및 오디오 코더 (USAC)와 같은 스위칭된 코더에서, 서로 다른 코딩 모드는 생성할 수 있고, 연속적일 수 있다. 콘텍스트는 이때, 현재 프레임의 시간/주파수 해상도가 이전의 것의 해상도와 다를 수 있기 때문에 추론하기가 곤란하다. 그것은, USAC에서, 2개의 프레임 간에 해상도가 변화할 시에도 콘텍스트를 복구하도록 하는 콘텍스트 맵핑 메커니즘이 존재하는 이유이다. 그러나, 일부 코딩 모드는 서로 많이 달라, 콘텍스트 맵핑이 효율적이지 않을 수 있다. 리셋은 이때 필요로 된다.
예컨대, 통합 음성 및 오디오 코더 (USAC)에서, 이와 같은 리셋은, 주파수 도메인 코딩으로부터 선형 예측 도메인 코딩으로, 선형 예측 도메인 코딩으로부터 주파수 도메인 코딩으로 진행할 시에 트리거될 수 있다. 환언하면, 콘텍스트 적응 산술적 코더(1420)의 콘텍스트 리셋은, 코딩 모드가 주파수 도메인 코딩과 선형 예측 도메인 코딩 간에 변경할 때마다 실행되어 신호화될 수 있다. 이와 같은 콘텍스트의 리셋은 전용 콘텍스트 리셋 플래그에 의해 신호화될 수 있거나 신호화될 수 없다. 그러나, 선택적으로, 서로 다른 보조 정보, 예컨대, 코딩 모드를 나타내는 보조 정보는 디코더측에서 콘텍스트의 리셋을 트리거하기 위해 이용될 수 있다.
2.4. 오디오 인코더 - 도 16의 실시예
도 16은 인코더 특징으로서의 또 다른 리셋 전략을 실시하는 다른 오디오 인코더의 블록 개략도를 도시한 것이다. 이 전략은, 인코더측에서, 1 비트 상에서 1024 샘플 마다 전송되는 리셋 플래그를 트리거한다.
도 16의 오디오 인코더(1600)는 도 14 및 15의 오디오 인코더(1400, 1500)와 유사하여, 동일한 특징 및 신호는 동일한 참조 번호로 명시된다. 그러나, 오디오 인코더(1600)는 2개의 콘텍스트 적응 산술적 코더(1420, 1620)를 포함한다 (또는 2개의 서로 다른 인코딩 콘텍스트를 이용하여 현재 인코딩될 스펙트럼 값(1414)을 적어도 인코딩할 수 있다). 이를 위해, 개선된 콘텍스트 생성기(1640)는, (예컨대, 콘텍스트 적응 산술적 인코더(1420)에서) 제 1 콘텍스트 적응 산술적 인코딩을 위해 콘텍스트의 리셋 없이 획득되는 콘텍스트 정보(1642)를 제공하고, 및 (예컨대, 콘텍스트 적응 산술적 인코더(1620)에서) 현재 인코딩될 스펙트럼 값의 제 2 인코딩을 위해 콘텍스트의 리셋을 적용함으로써 획득되는 제 2 콘텍스트 정보(1644)를 제공하도록 구성된다. 비트 카운터/비교부(1660)는 리셋이 안된 콘텍스트를 이용하여 스펙트럼 값의 인코딩을 위해 필요로 되는 비트의 수를 결정하거나 (평가하며), 또한 리셋 콘텍스트를 이용하여 현재 인코딩될 스펙트럼 값을 인코딩하기 위해 필요로 되는 비트의 수를 결정한다 (또는 평가한다). 따라서, 비트 카운터/비교부(1660)는, 비트레이트에 의해, 콘텍스트를 리셋하거나 리셋하지 않는 것이 더 유리한지를 결정한다. 따라서, 비트 카운터/비교부(1660)는, 비트레이트에 의해, 콘텍스트를 리셋하거나 리셋하지 않는 것이 유리한지에 따라 활성적 콘텍스트 리셋 플래그를 제공한다. 또한, 비트 카운터/비교부(1660)는 선택적으로, 다시 리셋이 안된 콘텍스트 또는 리셋 콘텍스트가 보다 낮은 비트레이트를 생성하는지에 따라, 리셋이 안된 콘텍스트를 이용하여 인코딩되는 스펙트럼 값, 또는 리셋 콘텍스트를 이용하여 인코딩되는 스펙트럼 값을 출력 정보(1424)로서 제공한다.
상술한 바를 요약하기 위해, 도 16은, 폐 루프 결정부를 이용하여 리셋 플래그를 활성화시킬지 활성화시키지 않을지를 결정하는 오디오 인코더를 도시한 것이다. 따라서, 디코더는 리셋 전략을 인코더 특징으로서 포함한다. 이 전략은, 인코더측에서, 1 비트 상에서 1024 샘플 마다 전송되는 리셋 플래그를 트리거한다.
때때로, 신호의 특성이 프레임 간에 갑자기 변화하는 것이 발견되었다. 이와 같은 신호의 비정지(non-stationary) 부분에 대해, 지난 프레임으로부터의 콘텍스트는 종종 무의미하다. 더욱이, 콘텍스트 적응 코딩 시에 지난 프레임을 고려하는 것이 유익한 것보다 불리한 것이 더 많을 수 있음이 발견되었다. 이때, 해결책은 그것이 발생할 시에 리셋 플래그를 트리거하는 것이다. 이와 같은 경우를 검출하는 방법은 양방의 리셋 플래그가 온 및 오프할 시에 디코딩 효율을 비교하는 것이다. 그리고 나서, 최상의 코딩에 대응하는 플래그 값이 (인코더 콘텍스트의 새로운 상태를 결정하기 위해) 이용되어 송신된다. 이런 메커니즘은 통합 음성 및 오디오 코더 (USAC)에서 구현되었고, 다음의 실행의 평균 이득이 측정되었다:
12 kbps 모노: 1.55 비트/프레임 (최대: 54)
16 kbps 모노: 1.97 비트/프레임 (최대: 57)
20 kbps 모노: 2.85 비트/프레임 (최대: 69)
24 kbps 모노: 3.25 비트/프레임 (최대: 122)
16 kbps 스테레오: 2.27 비트/프레임 (최대: 70)
20 kbps 스테레오: 2.92 비트/프레임 (최대: 80)
24 kbps 스테레오: 2.88 비트/프레임 (최대: 119)
32 kbps 스테레오: 3.01 비트/프레임 (최대: 121)
2.5. 오디오 인코더 - 도 17의 실시예
다음에는, 다른 오디오 인코더(1700)가 도 17을 참조하여 기술될 것이다. 오디오 인코더(1700)는 도 14, 15 및 16의 오디오 인코더(1400, 1500 및 1600)와 유사하여, 동일한 참조 번호는 동일한 수단 및 신호를 명시하기 위해 이용될 것이다.
그러나, 오디오 인코더(1700)는 다른 오디오 인코더와 비교되듯이 서로 다른 리셋 플래그 생성기(1770)를 포함한다. 리셋 플래그 생성기(1770)는, 오디오 프로세서(1410)에 의해 제공되는 보조 정보를 수신하여, 이를 기반으로, 콘텍스트 생성기(1440)에 제공되는 리셋 플래그(1772)를 제공한다. 그러나, 오디오 인코더(1700)는 리셋 플래그(1772)를 인코딩된 오디오 스트림 내에 포함시키는 것을 회피하는 것에 주목되어야 한다. 오히려, 오디오 프로세서 보조 정보(1780)만이 인코딩된 오디오 스트림 내에 포함된다.
리셋 플래그 생성기(1770)는, 예컨대, 오디오 프로세서 보조 정보(1780)로부터 콘텍스트 리셋 플래그(1772)를 도출하도록 구성될 수 있다. 예컨대, 리셋 플래그 생성기(1770)는 콘텍스트를 리셋할지를 결정하기 위해 (이미 상술한) 그룹화 정보를 평가할 수 있다. 따라서, 예컨대, 도 13과 관련하여 디코더에 대해 설명된 바와 같이, 콘텍스트는 스펙트럼 계수의 세트의 서로 다른 그룹의 인코딩 간에 리셋될 수 있다.
따라서, 오디오 인코더(1700)는 디코더에서의 리셋 전략과 동일할 수 있는 리셋 전략을 이용한다. 그러나, 리셋 전략은 전용 콘텍스트 리셋 플래그의 송신을 회피할 수 있다. 환언하면, 여기에 기술된 리셋 전략은 디코더로의 어떤 부가적인 정보의 송신을 필요치 않는다. 그것은 이미 디코더로 전송된 보조 정보 (예컨대, 그룹화 보조 정보)를 이용한다. 현재 전략에 대해, 콘텍스트를 리셋할지 리셋하지 않을지를 결정하기 위한 동일한 메커니즘이 인코더 및 디코더에서 이용된다. 따라서, 도 13에 대한 논의를 참조한다.
2.6. 오디오 인코더 - 추가적 주석
무엇보다도, 예컨대, 섹션 2.1 내지 2.5에서 여기에 논의된 서로 다른 리셋 전략은 조합될 수 있음에 주목되어야 한다. 특히, 도 14-16과 관련하여 논의된 인코더 특징으로의 리셋 전략은 생략될 수 있다. 그러나, 도 17과 관련하여 논의된 리셋 전략은 또한, 원한다면, 다른 리셋 전략과 조합될 수 있다.
게다가, 인코더측에서의 콘텍스트의 리셋은 디코더측에서의 콘텍스트의 리셋과 동기화하여 발생하는 것에 주목되어야 한다. 따라서, 인코더는, (예컨대, 도 10a-10c, 12 및 13과 관련하여) 상술한 (프레임 또는 윈도우에 대한) 시간에 상술한 콘텍스트 리셋 플래그를 제공하여, 디코더의 논의가 (콘텍스트 리셋 플래그의 생성에 관한) 인코더의 대응하는 기능을 수반하도록 구성된다. 마찬가지로, 인코더의 기능의 논의는 대부분의 경우에 디코더의 각각의 기능에 대응한다.
3. 오디오 정보의 디코딩 방법
다음에는, 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법이 도 18을 참조로 간략히 논의될 것이다. 도 18은 이와 같은 방법(1800)을 도시한다. 이 방법(1800)은, 리셋이 안된 동작 상태의 이전 디코딩된 오디오 정보에 기초로 하는 콘텍스트를 고려한 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계(1810)를 포함한다. 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는, 상기 콘텍스트에 따라 인코딩된 오디오 정보로부터 디코딩된 오디오 정보를 도출하기 위한 맵핑 정보를 선택하는 단계(1812) 및, 디코딩된 오디오 정보의 부분을 도출하기 위해 선택된 맵핑 정보를 이용하는 단계(1814)를 포함한다. 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는 또한, 맵핑 정보를 선택하기 위한 콘텍스트를, 보조 정보에 응답하여 이전의 디코딩된 오디오 정보와 무관한 디폴트 콘텍스트로 리셋하는 단계(1816) 및, 디코딩된 오디오 정보의 제 2 부분을 도출하기 위해 디폴트 콘텍스트에 기초로 하는 맵핑 정보를 이용하는 단계(1818)를 포함한다.
이 방법(1800)은, 오디오 정보의 디코딩에 관해, 또한 발명의 장치에 관해 여기에 논의된 어떤 기능에 의해 보충될 수 있다.
4. 오디오 신호의 인코딩 방법
다음에는, 입력 오디오 정보를 기반으로 인코딩된 오디오 정보를 제공하는 방법(1900)이 도 19를 참조로 기술될 것이다.
이 방법(1900)은, 리셋이 안된 동작 상태에서, 인접한 오디오 정보에 기초로 하고, 주어진 오디오 정보에 시간적으로 또는 스펙트럼으로 인접한 콘텍스트에 따라 입력 오디오 정보의 주어진 오디오 정보를 인코딩하는 단계(1910)를 포함한다.
이 방법(1900)은 또한 콘텍스트에 따라 입력 오디오 정보로부터 인코딩된 오디오 정보를 도출하기 위한 맵핑 정보를 선택하는 단계(1920)를 포함한다.
또한, 방법(1900)은, 맵핑 정보를 선택하기 위한 콘텍스트를, 콘텍스트 리셋 조건의 생성에 응답하여 입력 오디오 정보의 인접한 부분 내에서 (예컨대, 시간 도메인 신호가 중첩 가산되는 2개의 프레임의 디코딩 간에) 이전의 디코딩된 오디오 정보와 무관한 디폴트 콘텍스트로 리셋하는 단계(1930)를 포함한다.
이 방법(1900)은 또한 이와 같은 콘텍스트 리셋 조건의 존재를 나타내는 인코딩된 오디오 정보의 보조 정보 (예컨대, 콘텍스트 리셋 플래그, 또는 그룹화 정보)를 제공하는 단계(1940)를 포함한다.
이 방법(1900)은 발명의 오디오 인코딩 개념에 대해 여기에 기술된 어떤 특징 및 기능에 의해 보충될 수 있다.
5. 구현 대안
일부 양태가 장치와 관련하여 기술되었지만, 이들 양태는 또한 대응하는 방법의 설명을 나타내며, 여기서, 블록 또는 디바이스는 방법 단계 또는 방법 단계의 특징에 대응한다. 마찬가지로, 방법 단계와 관련하여 기술된 양태는 또한 대응하는 장치의 대응하는 블록 또는 항목 또는 특징의 설명을 나타낸다.
발명의 인코딩된 오디오 신호는 디지털 저장 매체 상에 저장될 수 있거나, 무선 송신 매체와 같은 송신 매체 또는 인터넷과 같은 유선 송신 매체 상에서 송신될 수 있다.
어떤 구현 요건에 따라, 본 발명의 실시예는 하드웨어 또는 소프트웨어로 구현될 수 있다. 디지털 저장 매체, 예컨대, 플로피 디스크, DVD, 블루레이, CD, ROM, PROM, EPROM, EEPROM 또는 플래시 메모리를 이용하여 구현이 실행될 수 있으며, 이런 디지털 저장 매체는 이에 저장되는 전자식으로 판독 가능한 제어 신호를 가지고, 각각의 방법이 실행되도록 프로그램 가능한 컴퓨터 시스템과 협력한다 (또는 협력할 수 있다). 그래서, 디지털 저장 매체는 컴퓨터 판독 가능할 수 있다.
본 발명에 따른 일부 실시예는 전자식으로 판독 가능한 제어 신호를 가지고, 여기에 기술된 방법 중 하나가 실행되도록 프로그램 가능한 컴퓨터 시스템과 협력할 수 있는 데이터 캐리어를 포함한다.
일반적으로, 본 발명의 실시예는 프로그램 코드를 가진 컴퓨터 프로그램 제품으로서 구현될 수 있으며, 이 프로그램 코드는, 컴퓨터 프로그램 제품이 컴퓨터를 실행할 시에 이들 방법 중 하나를 실행하기 위해 동작 가능하다. 이 프로그램 코드는, 예컨대, 기계 판독 가능한 캐리어 상에 저장될 수 있다.
다른 실시예들은 여기에 기술되고, 기계 판독 가능한 캐리어 상에 저장되는 방법 중 하나를 실행하기 위한 컴퓨터 프로그램을 포함한다.
환언하면, 그래서, 본 발명의 방법의 실시예는 컴퓨터 프로그램이 컴퓨터를 실행할 시에 여기에 기술된 방법 중 하나를 실행하기 위해 프로그램 코드를 가진 컴퓨터 프로그램이다.
그래서, 본 발명의 방법의 다른 실시예는 여기에 기술된 방법 중 하나를 실행하기 위한 컴퓨터 프로그램을 포함하고, 기록한 데이터 캐리어 (또는 디지털 저장 매체, 또는 컴퓨터 판독 가능한 매체)이다.
그래서, 본 발명의 방법의 다른 실시예는 여기에 기술된 방법 중 하나를 실행하기 위한 컴퓨터 프로그램을 표현하는 신호의 시퀀스 또는 데이터 스트림이다. 신호의 시퀀스 또는 데이터 스트림은 예컨대 인터넷을 통해 데이터 통신 접속을 경유하여 전달되도록 구성될 수 있다.
다른 실시예는, 여기에 기술된 방법 중 하나를 실행하도록 구성되거나 적합한 처리 수단, 예컨대, 컴퓨터, 또는 프로그램 가능한 논리 장치를 포함한다.
다른 실시예는, 여기에 기술된 방법 중 하나를 실행하기 위한 컴퓨터 프로그램을 설치한 컴퓨터를 포함한다.
일부 실시예에서, 프로그램 가능한 논리 장치 (예컨대, 필드 프로그램 가능한 게이트 어레이)는 여기에 기술된 방법의 기능의 일부 또는 모두를 실행하기 위해 이용될 수 있다. 일부 실시예에서, 필드 프로그램 가능한 게이트 어레이는 여기에 기술된 방법 중 하나를 실행하기 위해 마이크로프로세서와 협력할 수 있다.
상술한 실시예들은 단지 본 발명의 원리를 위해 예시한 것이다. 여기에 기술된 배치 및 상세 사항의 수정 및 변형은 당업자에게는 자명한 것으로 이해된다. 그래서, 여기의 실시예의 설명을 통해 제시된 특정 상세 사항에 의해 제한되지 않고, 첨부한 특허청구범위의 범주에 의해서만 제한되는 것으로 의도된다.

Claims (21)

  1. 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 기반으로 디코딩된 오디오 정보(112;212)를 제공하기 위한 오디오 디코더(100;200)에 있어서,
    리셋이 안된(non-reset) 동작 상태(state-of-operation)에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트(q[0],q[1])에 따라 상기 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 디코딩하도록 구성된 콘텍스트 기반 엔트로피 디코더(120;240)를 포함하며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 콘텍스트(q[0],q[1])에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보(112;212)를 도출하기 위해 맵핑 정보(cum_freq[pki])를 선택하도록 구성되며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 맵핑 정보를 선택하기 위한 상기 콘텍스트(q[0],q[1])를, 상기 인코딩된 오디오 정보(110;210)의 보조 정보(side information)(132; arith_reset_flag)에 응답하여 이전에 디코딩된 오디오 정보(qs)와 무관한 디폴트 콘텍스트로 리셋(arith_reset_context)하도록 구성된 콘텍스트 리셋터(130)를 포함하며,
    상기 콘텍스트 리셋터(130)는 동일한 스펙트럼 해상도의 관련된 스펙트럼 데이터를 가진 상기 인코딩된 오디오 정보(110;210)의 다음 시간 부분들(1010,1012)의 디코딩 간에 상기 콘텍스트 기반 엔트로피 디코더(120;240)를 선택적으로 리셋하도록 구성되는,
    오디오 디코더.
  2. 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 기반으로 디코딩된 오디오 정보(112;212)를 제공하기 위한 오디오 디코더(100;200)에 있어서,
    리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트(q[0],q[1])에 따라 상기 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 디코딩하도록 구성된 콘텍스트 기반 엔트로피 디코더(120;240)를 포함하며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 콘텍스트(q[0],q[1])에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보(112;212)를 도출하기 위해 맵핑 정보(cum_freq[pki])를 선택하도록 구성되며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 맵핑 정보를 선택하기 위한 상기 콘텍스트(q[0],q[1])를, 상기 인코딩된 오디오 정보(110;210)의 보조 정보(132; arith_reset_flag)에 응답하여 이전에 디코딩된 오디오 정보(qs)와 무관한 디폴트 콘텍스트로 리셋(arith_reset_context)하도록 구성된 콘텍스트 리셋터(130)를 포함하며,
    상기 오디오 디코더는, 상기 인코딩된 오디오 정보(110;210,222,224)의 성분으로서, 제 1 오디오 프레임(1010) 및, 상기 제 1 오디오 프레임 다음의 제 2 오디오 프레임(1012)에서 스펙트럼 값들을 나타내는 정보를 수신하도록 구성되고,
    상기 오디오 디코더는, 상기 제 1 오디오 프레임(1010)의 스펙트럼 값들에 기초로 하는 제 1 윈도우 시간 도메인 신호, 및 상기 제 2 오디오 프레임(1012)의 스펙트럼 값들에 기초로 하는 제 2 윈도우 시간 도메인 신호를 중첩-가산(overlap-and-add)하여, 상기 디코딩된 오디오 정보(112;212)를 도출하도록 구성되는 스펙트럼-도메인 대 시간-도메인 변환기(252;262)를 포함하며,
    상기 오디오 디코더는, 상기 제 1 윈도우 시간 도메인 신호를 획득하기 위한 윈도우 및, 제 2 윈도우 시간 도메인 신호를 획득하기 위한 윈도우의 윈도우 형상들을 개별적으로 조정하도록 구성되며,
    상기 오디오 디코더는, 상기 보조 정보(132; arith_reset_flag)에 응답하여, 제 2 윈도우 형상이 제 1 윈도우 형상과 동일할지라도, 상기 제 1 오디오 프레임(1010)의 상기 스펙트럼 값들의 디코딩과, 상기 제 2 오디오 프레임(1012)의 상기 스펙트럼 값들의 디코딩 간의 상기 콘텍스트(q[0],q[1])의 리셋(arith_reset_context)을 실행하여,
    상기 제 2 오디오 프레임(1012)의 상기 인코딩된 오디오 정보를 디코딩하기 위해 이용되는 상기 콘텍스트가 상기 보조 정보가 상기 콘텍스트를 리셋하도록 나타내는 경우에 상기 제 1 오디오 프레임(1010)의 상기 디코딩된 오디오 정보와 무관하도록 구성되는,
    오디오 디코더.
  3. 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 기반으로 디코딩된 오디오 정보(112;212)를 제공하기 위한 오디오 디코더(100;200)에 있어서,
    리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트(q[0],q[1])에 따라 상기 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 디코딩하도록 구성된 콘텍스트 기반 엔트로피 디코더(120;240)를 포함하며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 콘텍스트(q[0],q[1])에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보(112;212)를 도출하기 위해 맵핑 정보(cum_freq[pki])를 선택하도록 구성되며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 맵핑 정보를 선택하기 위한 상기 콘텍스트(q[0],q[1])를, 상기 인코딩된 오디오 정보(110;210)의 보조 정보(132; arith_reset_flag)에 응답하여 이전에 디코딩된 오디오 정보(qs)와 무관한 디폴트 콘텍스트로 리셋(arith_reset_context)하도록 구성된 콘텍스트 리셋터(130)를 포함하며,
    상기 오디오 디코더는, 상기 콘텍스트를 리셋하기 위한 보조 정보(132; arith_reset_flag)로서, 상기 인코딩된 오디오 정보의 오디오 프레임마다 1비트 콘텍스트 리셋 플래그를 수신하도록 구성되고,
    상기 오디오 디코더는, 상기 콘텍스트 리셋 플래그 이외에, 상기 인코딩된 오디오 정보(110;210,222,224)로 나타내는 스펙트럼 값들의 스펙트럼 해상도, 또는 상기 인코딩된 오디오 정보로 나타내는 시간 도메인 값들을 윈도우화하는 시간 윈도우의 윈도우 길이를 나타내는 보조 정보를 수신하도록 구성되며,
    상기 콘텍스트 리셋터(130)는, 상기 1비트 콘텍스트 리셋 플래그에 응답하여, 동일한 스펙트럼 해상도들 또는 윈도우 길이들의 스펙트럼 값들을 나타내는 상기 인코딩된 오디오 정보의 2개의 오디오 프레임들의 스펙트럼 값들(242,244)의 디코딩 간에 상기 콘텍스트의 리셋을 실행하도록 구성되는,
    오디오 디코더.
  4. 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 기반으로 디코딩된 오디오 정보(112;212)를 제공하기 위한 오디오 디코더(100;200)에 있어서,
    리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트(q[0],q[1])에 따라 상기 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 디코딩하도록 구성된 콘텍스트 기반 엔트로피 디코더(120;240)를 포함하며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 콘텍스트(q[0],q[1])에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보(112;212)를 도출하기 위해 맵핑 정보(cum_freq[pki])를 선택하도록 구성되며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 맵핑 정보를 선택하기 위한 상기 콘텍스트(q[0],q[1])를, 상기 인코딩된 오디오 정보(110;210)의 보조 정보(132; arith_reset_flag)에 응답하여 이전에 디코딩된 오디오 정보(qs)와 무관한 디폴트 콘텍스트로 리셋(arith_reset_context)하도록 구성된 콘텍스트 리셋터(130)를 포함하며,
    상기 오디오 디코더는, 상기 콘텍스트를 리셋하기 위한 보조 정보(132; arith_reset_flag)로서, 상기 인코딩된 오디오 정보의 오디오 프레임마다 1비트 콘텍스트 리셋 플래그를 수신하도록 구성되고,
    상기 오디오 디코더는 오디오 프레임(1040)마다 스펙트럼 값들의 다수의 세트들(1042a,1042b,...1042h)을 포함하는 인코딩된 오디오 정보(110;210,222,224)를 수신하도록 구성되며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는, 리셋이 안된 동작 상태에서 주어진 오디오 프레임(1040)의 스펙트럼 값들의 이전의 세트(1042a)의 이전에 디코딩된 오디오 정보(q[0])에 기초로 하는 콘텍스트(q[0],q[1])에 따라 주어진 오디오 프레임(1040)의 스펙트럼 값들의 다음 세트(1042b)의 상기 엔트로피 인코딩된 오디오 정보를 디코딩하도록 구성되며,
    상기 콘텍스트 리셋터(130)는 상기 주어진 오디오 프레임(1040)의 스펙트럼 값들의 제 1 세트(1042a)의 디코딩 전에, 그리고 상기 1비트 콘텍스트 리셋 플래그(132; arith_reset_flag)에 응답하여 상기 주어진 오디오 프레임(1040)의 스펙트럼 값들의 어떤 2개의 다음 세트들의 디코딩 간에 상기 콘텍스트(q[0],q[1])를 상기 디폴트 콘텍스트로 리셋하여,
    상기 주어진 오디오 프레임(1040)의 상기 1비트 콘텍스트 리셋 플래그(132; arith_reset_flag)의 활성화(activation)가 상기 오디오 프레임(1040)의 스펙트럼 값들의 다수의 세트들을 디코딩할 시에 상기 콘텍스트(q[0],q[1])의 다수 횟수의 리셋을 유발시키도록 구성되는,
    오디오 디코더.
  5. 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 기반으로 디코딩된 오디오 정보(112;212)를 제공하기 위한 오디오 디코더(100;200)에 있어서,
    리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트(q[0],q[1])에 따라 상기 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 디코딩하도록 구성된 콘텍스트 기반 엔트로피 디코더(120;240)를 포함하며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 콘텍스트(q[0],q[1])에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보(112;212)를 도출하기 위해 맵핑 정보(cum_freq[pki])를 선택하도록 구성되며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 맵핑 정보를 선택하기 위한 상기 콘텍스트(q[0],q[1])를, 상기 인코딩된 오디오 정보(110;210)의 보조 정보(132; arith_reset_flag)에 응답하여 이전에 디코딩된 오디오 정보(qs)와 무관한 디폴트 콘텍스트로 리셋(arith_reset_context)하도록 구성된 콘텍스트 리셋터(130)를 포함하며,
    상기 오디오 디코더는, 상기 콘텍스트를 리셋하기 위한 상기 보조 정보로서, 오디오 프레임마다 1비트 콘텍스트 리셋 플래그(132; arith_reset_flag)를 수신하도록 구성되고,
    상기 오디오 디코더는, 상기 인코딩된 오디오 정보로서, 단일 윈도우 오디오 프레임들(1070) 및 멀티 윈도우 오디오 프레임들(1072)을 포함하는 인코딩된 오디오 프레임들의 시퀀스(1070,1072)를 수신하도록 구성되며,
    상기 엔트로피 디코더(120)는 리셋이 안된 동작 상태에서 이전의 단일 윈도우 오디오 프레임(1070)의 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트에 따라 이전의 단일 윈도우 오디오 프레임(1070)에 뒤따르는 멀티 윈도우 오디오 프레임(1072)의 엔트로피 인코딩된 스펙트럼 값들을 디코딩하도록 구성되며,
    상기 엔트로피 디코더(120)는 리셋이 안된 동작 상태에서 이전의 멀티 윈도우 오디오 프레임(1072)의 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트에 따라 이전의 멀티 윈도우 오디오 프레임(1072)에 뒤따르는 단일 윈도우 오디오 프레임의 엔트로피 인코딩된 스펙트럼 값들을 디코딩하도록 구성되며,
    상기 엔트로피 디코더(120)는 리셋이 안된 동작 상태에서 이전의 단일 윈도우 오디오 프레임의 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트에 따라 이전의 단일 윈도우 오디오 프레임에 뒤따르는 단일 윈도우 오디오 프레임(1070)의 엔트로피 인코딩된 스펙트럼 값들을 디코딩하도록 구성되며,
    상기 엔트로피 디코더(120)는 리셋이 안된 동작 상태에서 이전의 멀티 윈도우 오디오 프레임의 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트에 따라 이전의 멀티 윈도우 오디오 프레임에 뒤따르는 멀티 윈도우 오디오 프레임의 엔트로피 인코딩된 스펙트럼 값들을 디코딩하도록 구성되며,
    상기 콘텍스트 리셋터(130)는 1비트 콘텍스트 리셋 플래그(132; arith_reset_flag)에 응답하여 다음 오디오 프레임들의 엔트로피 인코딩된 스펙트럼 값들의 디코딩 간에 상기 콘텍스트(q[0],q[1])를 리셋하도록 구성되며,
    상기 콘텍스트 리셋터(130)는, 멀티 윈도우 오디오 프레임의 경우에, 상기 1비트 콘텍스트 리셋 플래그에 응답하여 상기 멀티 윈도우 오디오 프레임의 서로 다른 윈도우들과 관련된 엔트로피 인코딩된 스펙트럼 값들의 디코딩 간에 상기 콘텍스트(q[0],q[1])를 추가적으로 리셋하도록 구성되는,
    오디오 디코더.
  6. 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 기반으로 디코딩된 오디오 정보(112;212)를 제공하기 위한 오디오 디코더(100;200)에 있어서,
    리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트(q[0],q[1])에 따라 상기 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 디코딩하도록 구성된 콘텍스트 기반 엔트로피 디코더(120;240)를 포함하며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 콘텍스트(q[0],q[1])에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보(112;212)를 도출하기 위해 맵핑 정보(cum_freq[pki])를 선택하도록 구성되며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 맵핑 정보를 선택하기 위한 상기 콘텍스트(q[0],q[1])를, 상기 인코딩된 오디오 정보(110;210)의 보조 정보(132; arith_reset_flag)에 응답하여 이전에 디코딩된 오디오 정보(qs)와 무관한 디폴트 콘텍스트로 리셋(arith_reset_context)하도록 구성된 콘텍스트 리셋터(130)를 포함하며,
    상기 오디오 디코더는, 상기 콘텍스트(q[0],q[1])를 리셋하기 위한 상기 보조 정보(132; arith_reset_flag)로서, 상기 인코딩된 오디오 정보(110;210,224)의 오디오 프레임마다 1비트 콘텍스트 리셋 플래그를 수신하고,
    상기 인코딩된 오디오 정보로서, 선형 예측 도메인 오디오 프레임(1210,1220,1230)을 포함하는 인코딩된 오디오 프레임들의 시퀀스(1210,1220,1230)를 수신하도록 구성되며,
    상기 선형 예측 도메인 오디오 프레임은 선형 예측 도메인 오디오 합성기(262)를 여기하기 위한 선택 가능한 수의 변환 코딩된 여기 부분들(1212b,1212c,1212d,1222a,1222b,1222c,1222d,1232)을 포함하며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트(q[0],q[1])에 따라 상기 변환 코딩된 여기 부분들의 스펙트럼 값들을 디코딩하도록 구성되며,
    상기 콘텍스트 리셋터(130)는, 상기 보조 정보(132; arith_reset_flag)에 응답하여, 주어진 오디오 프레임(1210,1220,1230)의 제 1 변환 코딩된 여기 부분(1212b,1222a,1232)의 스펙트럼 값들의 세트의 디코딩 전에 상기 콘텍스트(q[0],q[1])를 상기 디폴트 콘텍스트로 리셋하지만, 상기 주어진 오디오 프레임(1210,1220,1230)의 서로 다른 변환 코딩된 여기 부분들(1212b,1212c,1212d; 1222a,1222b,1222c,1222d)의 스펙트럼 값들의 세트들의 디코딩 간에는 상기 콘텍스트를 상기 디폴트 콘텍스트로 리셋하는 것을 생략하도록 구성되는,
    오디오 디코더.
  7. 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 기반으로 디코딩된 오디오 정보(112;212)를 제공하기 위한 오디오 디코더(100;200)에 있어서,
    리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트(q[0],q[1])에 따라 상기 엔트로피 인코딩된 오디오 정보(110;210,222,224)를 디코딩하도록 구성된 콘텍스트 기반 엔트로피 디코더(120;240)를 포함하며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 콘텍스트(q[0],q[1])에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보(112;212)를 도출하기 위해 맵핑 정보(cum_freq[pki])를 선택하도록 구성되며,
    상기 콘텍스트 기반 엔트로피 디코더(120;240)는 상기 맵핑 정보를 선택하기 위한 상기 콘텍스트(q[0],q[1])를, 상기 인코딩된 오디오 정보(110;210)의 보조 정보(132; arith_reset_flag)에 응답하여 이전에 디코딩된 오디오 정보(qs)와 무관한 디폴트 콘텍스트로 리셋(arith_reset_context)하도록 구성된 콘텍스트 리셋터(130)를 포함하며,
    상기 오디오 디코더는 오디오 프레임(1320,1330)마다 스펙트럼 값들의 다수의 세트들을 포함하는 인코딩된 오디오 정보를 수신하도록 구성되고,
    상기 오디오 디코더는 또한 그룹화 보조 정보(scale_factor_grouping)를 수신하도록 구성되며,
    상기 오디오 디코더는 상기 그룹화 보조 정보에 따라 공통 스케일 인수 정보와의 조합을 위해 스펙트럼 값들의 세트들 중 2 이상(1322a,1322c,1322d,1330c,1330d)을 그룹화하도록 구성되며,
    상기 콘텍스트 리셋터(130)는 상기 그룹화 보조 정보(scale_factor_grouping)에 응답하여 상기 콘텍스트(q[0],q[1])를 상기 디폴트 콘텍스트로 리셋하도록 구성되며,
    상기 콘텍스트 리셋터(130)는 다음 그룹들의 스펙트럼 값들의 세트들의 디코딩 간에 상기 콘텍스트(q[0],q[1])를 리셋하고, 단일 그룹의 스펙트럼 값들의 세트들의 디코딩 간에는 상기 콘텍스트를 리셋하는 것을 회피하도록 구성되는,
    오디오 디코더.
  8. 삭제
  9. 삭제
  10. 삭제
  11. 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법(1800)에 있어서,
    리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트를 고려한 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계(1810)를 포함하는데,
    상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는, 상기 콘텍스트에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보를 도출하기 위한 맵핑 정보를 선택하는 단계(1812) 및, 상기 디코딩된 오디오 정보의 제 1 부분을 도출하기 위해 선택된 맵핑 정보를 이용하는 단계(1814)를 포함하며;
    상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는 또한 상기 맵핑 정보를 선택하기 위한 콘텍스트를, 보조 정보에 응답하여 상기 이전에 디코딩된 오디오 정보와 무관한 디폴트 콘텍스트로 리셋하는 단계(1816) 및, 상기 디코딩된 오디오 정보의 제 2 부분을 디코딩하기 위해 상기 디폴트 콘텍스트에 기초로 하는 상기 맵핑 정보를 이용하는 단계(1818)를 포함하며,
    상기 방법은, 동일한 스펙트럼 해상도의 관련된 스펙트럼 데이터를 가진 상기 인코딩된 오디오 정보의 다음 시간 부분들(1010,1012)의 디코딩 간에 상기 콘텍스트 기반 엔트로피 디코딩을 선택적으로 리셋하는 단계를 포함하는 것을 특징으로 하는 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법.
  12. 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법(1800)에 있어서,
    리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트를 고려한 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계(1810)를 포함하는데,
    상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는, 상기 콘텍스트에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보를 도출하기 위한 맵핑 정보를 선택하는 단계(1812) 및, 상기 디코딩된 오디오 정보의 제 1 부분을 도출하기 위해 선택된 맵핑 정보를 이용하는 단계(1814)를 포함하며;
    상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는 또한 상기 맵핑 정보를 선택하기 위한 콘텍스트를, 보조 정보에 응답하여 상기 이전에 디코딩된 오디오 정보와 무관한 디폴트 콘텍스트로 리셋하는 단계(1816) 및, 상기 디코딩된 오디오 정보의 제 2 부분을 디코딩하기 위해 상기 디폴트 콘텍스트에 기초로 하는 상기 맵핑 정보를 이용하는 단계(1818)를 포함하며,
    상기 방법은, 상기 인코딩된 오디오 정보(110;210,222,224)의 성분으로서, 제 1 오디오 프레임(1010) 및, 상기 제 1 오디오 프레임 다음의 제 2 오디오 프레임(1012)에서 스펙트럼 값들을 나타내는 정보를 수신하는 단계를 포함하고,
    상기 방법은, 상기 디코딩된 오디오 정보(112;212)를 도출하도록 상기 제 1 오디오 프레임(1010)의 스펙트럼 값들에 기초로 하는 제 1 윈도우 시간 도메인 신호, 및 상기 제 2 오디오 프레임(1012)의 스펙트럼 값들에 기초로 하는 제 2 윈도우 시간 도메인 신호를 중첩-가산(overlap-and-add)하는 과정을 포함하는, 스펙트럼-도메인 대 시간-도메인 변환을 수행하는 단계를 포함하고,
    상기 방법은, 상기 제 1 윈도우 시간 도메인 신호를 획득하기 위한 윈도우 및, 제 2 윈도우 시간 도메인 신호를 획득하기 위한 윈도우의 윈도우 형상들을 개별적으로 조정하는 단계를 포함하고,
    상기 방법은, 상기 보조 정보가 상기 콘텍스트를 리셋하도록 나타내는 경우에 상기 제 2 오디오 프레임(1012)의 상기 인코딩된 오디오 정보를 디코딩하기 위해 이용되는 상기 콘텍스트가 상기 제 1 오디오 프레임(1010)의 상기 디코딩된 오디오 정보와 무관하도록, 상기 보조 정보(132; arith_reset_flag)에 응답하여, 제 2 윈도우 형상이 제 1 윈도우 형상과 동일할지라도, 상기 제 1 오디오 프레임(1010)의 상기 스펙트럼 값들의 디코딩과, 상기 제 2 오디오 프레임(1012)의 상기 스펙트럼 값들의 디코딩 간의 상기 콘텍스트(q[0],q[1])의 리셋(arith_reset_context)을 실행하는 단계를 포함하는 것을 특징으로 하는 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법.
  13. 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법(1800)에 있어서,
    리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트를 고려한 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계(1810)를 포함하는데,
    상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는, 상기 콘텍스트에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보를 도출하기 위한 맵핑 정보를 선택하는 단계(1812) 및, 상기 디코딩된 오디오 정보의 제 1 부분을 도출하기 위해 상기 선택된 맵핑 정보를 이용하는 단계(1814)를 포함하며;
    상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는 또한 상기 맵핑 정보를 선택하기 위한 콘텍스트를, 보조 정보에 응답하여 상기 이전에 디코딩된 오디오 정보와 무관한 디폴트 콘텍스트로 리셋하는 단계(1816) 및, 상기 디코딩된 오디오 정보의 제 2 부분을 디코딩하기 위해 상기 디폴트 콘텍스트에 기초로 하는 상기 맵핑 정보를 이용하는 단계(1818)를 포함하며,
    상기 방법은, 상기 콘텍스트를 리셋하기 위한 보조 정보(132; arith_reset_flag)로서, 상기 인코딩된 오디오 정보의 오디오 프레임마다 1비트 콘텍스트 리셋 플래그를 수신하는 단계를 포함하고,
    상기 방법은, 상기 콘텍스트 리셋 플래그 이외에, 상기 인코딩된 오디오 정보(110;210,222,224)로 나타내는 스펙트럼 값들의 스펙트럼 해상도, 또는 상기 인코딩된 오디오 정보로 나타내는 시간 도메인 값들을 윈도우화하는 시간 윈도우의 윈도우 길이를 나타내는 보조 정보를 수신하는 단계를 포함하며,
    상기 방법은, 상기 1비트 콘텍스트 리셋 플래그에 응답하여, 동일한 스펙트럼 해상도들 또는 윈도우 길이들의 스펙트럼 값들을 나타내는 상기 인코딩된 오디오 정보의 2개의 오디오 프레임들의 스펙트럼 값들(242,244)의 디코딩 간에 상기 콘텍스트의 리셋을 실행하는 단계를 포함하는 것을 특징으로 하는 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법.
  14. 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법(1800)에 있어서,
    리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트를 고려한 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계(1810)를 포함하는데,
    상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는, 상기 콘텍스트에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보를 도출하기 위한 맵핑 정보를 선택하는 단계(1812) 및, 상기 디코딩된 오디오 정보의 제 1 부분을 도출하기 위해 상기 선택된 맵핑 정보를 이용하는 단계(1814)를 포함하며;
    상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는 또한 상기 맵핑 정보를 선택하기 위한 콘텍스트를, 보조 정보에 응답하여 상기 이전에 디코딩된 오디오 정보와 무관한 디폴트 콘텍스트로 리셋하는 단계(1816) 및, 상기 디코딩된 오디오 정보의 제 2 부분을 디코딩하기 위해 상기 디폴트 콘텍스트에 기초로 하는 상기 맵핑 정보를 이용하는 단계(1818)를 포함하며,
    상기 방법은, 상기 콘텍스트를 리셋하기 위한 보조 정보(132; arith_reset_flag)로서, 상기 인코딩된 오디오 정보의 오디오 프레임마다 1비트 콘텍스트 리셋 플래그를 수신하는 단계를 포함하고,
    상기 방법은, 오디오 프레임(1040)마다 스펙트럼 값들의 다수의 세트들(1042a,1042b,...1042h)을 포함하는 인코딩된 오디오 정보(110;210,222,224)를 수신하는 단계를 포함하고,
    상기 방법은, 리셋이 안된 동작 상태에서 주어진 오디오 프레임(1040)의 스펙트럼 값들의 이전의 세트(1042a)의 이전에 디코딩된 오디오 정보(q[0])에 기초로 하는 콘텍스트(q[0],q[1])에 따라 주어진 오디오 프레임(1040)의 스펙트럼 값들의 다음 세트(1042b)의 상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계를 포함하며,
    상기 방법은, 상기 주어진 오디오 프레임(1040)의 상기 1비트 콘텍스트 리셋 플래그(132; arith_reset_flag)의 활성화(activation)가 상기 오디오 프레임(1040)의 스펙트럼 값들의 다수의 세트들을 디코딩할 시에 상기 콘텍스트(q[0],q[1])의 다수 횟수의 리셋을 유발시키도록, 상기 주어진 오디오 프레임(1040)의 스펙트럼 값들의 제 1 세트(1042a)의 디코딩 전에, 그리고 상기 1비트 콘텍스트 리셋 플래그(132; arith_reset_flag)에 응답하여 상기 주어진 오디오 프레임(1040)의 스펙트럼 값들의 어떤 2개의 다음 세트들의 디코딩 간에 상기 콘텍스트(q[0],q[1])를 상기 디폴트 콘텍스트로 리셋하는 단계를 포함하는 것을 특징으로 하는 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법.
  15. 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법(1800)에 있어서,
    리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트를 고려한 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계(1810)를 포함하는데,
    상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는, 상기 콘텍스트에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보를 도출하기 위한 맵핑 정보를 선택하는 단계(1812) 및, 상기 디코딩된 오디오 정보의 제 1 부분을 도출하기 위해 상기 선택된 맵핑 정보를 이용하는 단계(1814)를 포함하며;
    상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는 또한 상기 맵핑 정보를 선택하기 위한 콘텍스트를, 보조 정보에 응답하여 상기 이전에 디코딩된 오디오 정보와 무관한 디폴트 콘텍스트로 리셋하는 단계(1816) 및, 상기 디코딩된 오디오 정보의 제 2 부분을 디코딩하기 위해 상기 디폴트 콘텍스트에 기초로 하는 상기 맵핑 정보를 이용하는 단계(1818)를 포함하며,
    상기 방법은, 상기 콘텍스트를 리셋하기 위한 상기 보조 정보로서, 오디오 프레임마다 1비트 콘텍스트 리셋 플래그(132; arith_reset_flag)를 수신하는 단계를 포함하고,
    상기 방법은, 상기 인코딩된 오디오 정보로서, 단일 윈도우 오디오 프레임(1070)들 및 다수의 윈도우 오디오 프레임(1072)들을 포함하는 인코딩된 오디오 프레임들의 시퀀스(1070,1072)를 수신하는 단계를 포함하고,
    상기 방법은, 리셋이 안된 동작 상태에서 이전의 단일 윈도우 오디오 프레임(1070)의 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트에 따라 이전의 단일 윈도우 오디오 프레임(1070)에 뒤따르는 다수의 윈도우 오디오 프레임(1072)의 엔트로피 인코딩된 스펙트럼 값들을 디코딩하는 단계를 포함하고,
    상기 방법은, 리셋이 안된 동작 상태에서 이전의 다수의 윈도우 오디오 프레임(1072)의 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트에 따라 이전의 다수의 윈도우 오디오 프레임(1072)에 뒤따르는 단일 윈도우 오디오 프레임의 엔트로피 인코딩된 스펙트럼 값들을 디코딩하는 단계를 포함하고,
    상기 방법은, 리셋이 안된 동작 상태에서 이전의 단일 윈도우 오디오 프레임의 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트에 따라 이전의 단일 윈도우 오디오 프레임에 뒤따르는 단일 윈도우 오디오 프레임(1070)의 엔트로피 인코딩된 스펙트럼 값들을 디코딩하는 단계를 포함하고,
    상기 방법은, 리셋이 안된 동작 상태에서 이전의 다수의 윈도우 오디오 프레임의 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트에 따라 이전의 다수의 윈도우 오디오 프레임에 뒤따르는 다수의 윈도우 오디오 프레임의 엔트로피 인코딩된 스펙트럼 값들을 디코딩하는 단계를 포함하고,
    상기 방법은, 1비트 콘텍스트 리셋 플래그(132; arith_reset_flag)에 응답하여 다음 오디오 프레임의 엔트로피 인코딩된 스펙트럼 값들의 디코딩 간에 상기 콘텍스트(q[0],q[1])를 리셋하는 단계를 포함하며,
    상기 방법은, 다수의 윈도우 오디오 프레임의 경우에, 상기 1비트 콘텍스트 리셋 플래그에 응답하여 상기 다수의 윈도우 오디오 프레임의 서로 다른 윈도우들과 관련된 엔트로피 인코딩된 스펙트럼 값들의 디코딩 간에 상기 콘텍스트(q[0],q[1])를 부가적으로 리셋하는 단계를 포함하는 것을 특징으로 하는 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법.
  16. 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법(1800)에 있어서,
    리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트를 고려한 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계(1810)를 포함하는데,
    상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는, 상기 콘텍스트에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보를 도출하기 위한 맵핑 정보를 선택하는 단계(1812) 및, 상기 디코딩된 오디오 정보의 제 1 부분을 도출하기 위해 상기 선택된 맵핑 정보를 이용하는 단계(1814)를 포함하며;
    상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는 또한 상기 맵핑 정보를 선택하기 위한 콘텍스트를, 보조 정보에 응답하여 상기 이전에 디코딩된 오디오 정보와 무관한 디폴트 콘텍스트로 리셋하는 단계(1816) 및, 상기 디코딩된 오디오 정보의 제 2 부분을 디코딩하기 위해 상기 디폴트 콘텍스트에 기초로 하는 상기 맵핑 정보를 이용하는 단계(1818)를 포함하며,
    상기 방법은, 상기 콘텍스트(q[0],q[1])를 리셋하기 위한 상기 보조 정보(132; arith_reset_flag)로서, 상기 인코딩된 오디오 정보(110;210,224)의 오디오 프레임마다 1비트 콘텍스트 리셋 플래그를 수신하는 단계; 및
    상기 인코딩된 오디오 정보로서, 선형 예측 도메인 오디오 프레임(1210,1220,1230)을 포함하는 인코딩된 오디오 프레임들의 시퀀스(1210,1220,1230)를 수신하는 단계를 포함하고,
    상기 선형 예측 도메인 오디오 프레임은 선형 예측 도메인 오디오 합성기(262)를 여기하기 위한 선택 가능한 수의 변환 코딩된 여기 부분들(1212b,1212c,1212d,1222a,1222b,1222c,1222d,1232)을 포함하며,
    상기 콘텍스트 기반 엔트로피 디코딩은 리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트(q[0],q[1])에 따라 상기 변환 코딩된 여기 부분들의 스펙트럼 값들을 디코딩하는 것을 포함하며,
    상기 방법은, 상기 보조 정보(132; arith_reset_flag)에 응답하여, 주어진 오디오 프레임(1210,1220,1230)의 제 1 변환 코딩된 여기 부분(1212b,1222a,1232)의 스펙트럼 값들의 세트의 디코딩 전에 상기 콘텍스트(q[0],q[1])를 상기 디폴트 콘텍스트로 리셋하지만, 상기 주어진 오디오 프레임(1210,1220,1230)의 서로 다른 변환 코딩된 여기 부분들(1212b,1212c,1212d; 1222a,1222b,1222c,1222d)의 스펙트럼 값들의 세트들의 디코딩 간에는 상기 콘텍스트를 상기 디폴트 콘텍스트로 리셋하는 것을 생략하는 단계를 포함하는 것을 특징으로 하는 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법.
  17. 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법(1800)에 있어서,
    리셋이 안된 동작 상태에서 이전에 디코딩된 오디오 정보에 기초로 하는 콘텍스트를 고려한 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계(1810)를 포함하는데,
    상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는, 상기 콘텍스트에 따라 상기 인코딩된 오디오 정보로부터 상기 디코딩된 오디오 정보를 도출하기 위한 맵핑 정보를 선택하는 단계(1812) 및, 상기 디코딩된 오디오 정보의 제 1 부분을 도출하기 위해 상기 선택된 맵핑 정보를 이용하는 단계(1814)를 포함하며;
    상기 엔트로피 인코딩된 오디오 정보를 디코딩하는 단계는 또한 상기 맵핑 정보를 선택하기 위한 콘텍스트를, 보조 정보에 응답하여 상기 이전에 디코딩된 오디오 정보와 무관한 디폴트 콘텍스트로 리셋하는 단계(1816) 및, 상기 디코딩된 오디오 정보의 제 2 부분을 디코딩하기 위해 상기 디폴트 콘텍스트에 기초로 하는 상기 맵핑 정보를 이용하는 단계(1818)를 포함하며,
    상기 방법은, 오디오 프레임(1320,1330)마다 스펙트럼 값들의 다수의 세트들을 포함하는 인코딩된 오디오 정보를 수신하는 단계를 포함하고,
    상기 방법은, 또한 그룹화 보조 정보(scale_factor_grouping)를 수신하는 단계를 포함하고,
    상기 방법은, 상기 그룹화 보조 정보에 따라 공통 스케일 인수 정보와의 조합을 위한 스펙트럼 값들의 세트들 중 2 이상(1322a,1322c,1322d,1330c,1330d)을 그룹화하는 단계를 포함하고,
    상기 방법은, 상기 그룹화 보조 정보(scale_factor_grouping)에 응답하여 상기 콘텍스트(q[0],q[1])를 상기 디폴트 콘텍스트로 리셋하는 단계를 포함하며,
    상기 방법은, 다음 그룹들의 스펙트럼 값들의 세트들의 디코딩 간에 상기 콘텍스트(q[0],q[1])를 리셋하는 단계, 및 단일 그룹의 스펙트럼 값들의 세트들의 디코딩 간에는 상기 콘텍스트를 리셋하는 것을 회피하는 단계를 포함하는 것을 특징으로 하는 인코딩된 오디오 정보를 기반으로 디코딩된 오디오 정보를 제공하는 방법.
  18. 입력 오디오 정보(1412)를 기반으로 인코딩된 오디오 정보(1424)를 제공하는 방법에 있어서,
    리셋이 안된 동작 상태에서, 인접한 오디오 정보에 기초로 하고, 상기 입력 오디오 정보의 주어진 오디오 정보에 시간적으로 또는 스펙트럼으로 인접한 콘텍스트에 따라 상기 입력 오디오 정보의 주어진 오디오 정보를 인코딩하는 단계(1910);
    상기 콘텍스트에 따라 상기 입력 오디오 정보로부터 상기 인코딩된 오디오 정보를 도출하기 위해 맵핑 정보를 선택하는 단계(1920);
    상기 맵핑 정보를 선택하기 위한 상기 콘텍스트를, 콘텍스트 리셋 조건의 생성에 응답하여 입력 오디오 정보의 연속적인 부분 내에서 디폴트 콘텍스트로 리셋하는 단계(1930); 및
    상기 콘텍스트 리셋 조건의 존재를 나타내는 상기 인코딩된 오디오 정보의 콘텍스트 리셋 보조 정보를 제공하는 단계(1940)를 포함하며,
    상기 방법은, 상기 입력 오디오 정보의 n 프레임들마다 한번 이상 정규 콘텍스트 리셋을 실행하는 단계를 포함하는 것을 특징으로 하는 입력 오디오 정보를 기반으로 인코딩된 오디오 정보를 제공하는 방법.
  19. 입력 오디오 정보(1412)를 기반으로 인코딩된 오디오 정보(1424)를 제공하는 방법에 있어서,
    리셋이 안된 동작 상태에서, 인접한 오디오 정보에 기초로 하고, 상기 입력 오디오 정보의 주어진 오디오 정보에 시간적으로 또는 스펙트럼으로 인접한 콘텍스트에 따라 상기 입력 오디오 정보의 주어진 오디오 정보를 인코딩하는 단계(1910);
    상기 콘텍스트에 따라 상기 입력 오디오 정보로부터 상기 인코딩된 오디오 정보를 도출하기 위해 맵핑 정보를 선택하는 단계(1920);
    상기 맵핑 정보를 선택하기 위한 상기 콘텍스트를, 콘텍스트 리셋 조건의 생성에 응답하여 입력 오디오 정보의 연속적인 부분 내에서 디폴트 콘텍스트로 리셋하는 단계(1930); 및
    상기 콘텍스트 리셋 조건의 존재를 나타내는 상기 인코딩된 오디오 정보의 콘텍스트 리셋 보조 정보를 제공하는 단계(1940)를 포함하며,
    상기 방법은, 다수의 서로 다른 코딩 모드들 간에 스위칭하는 단계, 및 2개의 코딩 모드들 간의 변화에 응답하여 콘텍스트 리셋을 실행하는 단계를 포함하는 것을 특징으로 하는 입력 오디오 정보를 기반으로 인코딩된 오디오 정보를 제공하는 방법.
  20. 입력 오디오 정보(1412)를 기반으로 인코딩된 오디오 정보(1424)를 제공하는 방법에 있어서,
    리셋이 안된 동작 상태에서, 인접한 오디오 정보에 기초로 하고, 상기 입력 오디오 정보의 주어진 오디오 정보에 시간적으로 또는 스펙트럼으로 인접한 콘텍스트에 따라 상기 입력 오디오 정보의 주어진 오디오 정보를 인코딩하는 단계(1910);
    상기 콘텍스트에 따라 상기 입력 오디오 정보로부터 상기 인코딩된 오디오 정보를 도출하기 위해 맵핑 정보를 선택하는 단계(1920);
    상기 맵핑 정보를 선택하기 위한 상기 콘텍스트를, 콘텍스트 리셋 조건의 생성에 응답하여 입력 오디오 정보의 연속적인 부분 내에서 디폴트 콘텍스트로 리셋하는 단계(1930); 및
    상기 콘텍스트 리셋 조건의 존재를 나타내는 상기 인코딩된 오디오 정보의 콘텍스트 리셋 보조 정보를 제공하는 단계(1940)를 포함하며,
    상기 방법은, 인접한 오디오 정보에 기초로 하고, 상기 입력 오디오 정보(1412)의 어떤 오디오 정보에 시간적으로 또는 스펙트럼으로 인접한 리셋이 안된 콘텍스트(1642)에 따라 상기 입력 오디오 정보(1412)의 어떤 오디오 정보를 인코딩하기 위해 필요로 되는 제 1 수의 비트들을 계산하거나 평가하고, 상기 디폴트 콘텍스트(1644)를 이용하여 상기 어떤 오디오 정보를 인코딩하기 위해 필요로 되는 제 2 수의 비트들을 계산하거나 평가하는 단계를 포함하며,
    상기 방법은, 상기 제 1 수의 비트들과 상기 제 2 수의 비트들을 비교하여, 상기 리셋이 안된 콘텍스트(1642) 또는 상기 디폴트 콘텍스트(1644)를 기반으로 상기 어떤 오디오 정보에 대응하는 상기 인코딩된 오디오 정보(1424)를 제공하는지를 결정하여, 상기 보조 정보(1480)를 이용하여 상기 결정의 결과를 신호화하는 단계를 포함하는 것을 특징으로 하는 입력 오디오 정보를 기반으로 인코딩된 오디오 정보를 제공하는 방법.
  21. 컴퓨터 프로그램이 컴퓨터 상에서 실행할 시에, 제11항 내지 제20항 중 어느 한 항에 따른 방법을 실행하기 위한 컴퓨터 프로그램이 저장된 컴퓨터로 읽을 수 있는 매체.
KR1020147014478A 2008-10-08 2009-10-06 오디오 디코더, 오디오 인코더, 오디오 신호를 디코딩하는 방법, 오디오 신호를 인코딩하는 방법, 컴퓨터 프로그램 및 오디오 신호 KR101596183B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10382008P 2008-10-08 2008-10-08
US61/103,820 2008-10-08
PCT/EP2009/007169 WO2010040503A2 (en) 2008-10-08 2009-10-06 Audio decoder, audio encoder, method for decoding an audio signal, method for encoding an audio signal, computer program and audio signal

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020117010096A Division KR101436677B1 (ko) 2008-10-08 2009-10-06 오디오 디코더, 오디오 인코더, 오디오 신호를 디코딩하는 방법, 오디오 신호를 인코딩하는 방법, 컴퓨터 프로그램 및 오디오 신호

Publications (2)

Publication Number Publication Date
KR20140085582A KR20140085582A (ko) 2014-07-07
KR101596183B1 true KR101596183B1 (ko) 2016-02-22

Family

ID=42026731

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020117010096A KR101436677B1 (ko) 2008-10-08 2009-10-06 오디오 디코더, 오디오 인코더, 오디오 신호를 디코딩하는 방법, 오디오 신호를 인코딩하는 방법, 컴퓨터 프로그램 및 오디오 신호
KR1020147014478A KR101596183B1 (ko) 2008-10-08 2009-10-06 오디오 디코더, 오디오 인코더, 오디오 신호를 디코딩하는 방법, 오디오 신호를 인코딩하는 방법, 컴퓨터 프로그램 및 오디오 신호

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020117010096A KR101436677B1 (ko) 2008-10-08 2009-10-06 오디오 디코더, 오디오 인코더, 오디오 신호를 디코딩하는 방법, 오디오 신호를 인코딩하는 방법, 컴퓨터 프로그램 및 오디오 신호

Country Status (16)

Country Link
US (1) US8494865B2 (ko)
EP (4) EP2346029B1 (ko)
JP (2) JP5253580B2 (ko)
KR (2) KR101436677B1 (ko)
CN (1) CN102177543B (ko)
AR (1) AR073732A1 (ko)
AU (1) AU2009301425B2 (ko)
BR (1) BRPI0914032B1 (ko)
CA (3) CA2871268C (ko)
MX (1) MX2011003815A (ko)
MY (1) MY157453A (ko)
PL (2) PL2346030T3 (ko)
RU (1) RU2543302C2 (ko)
TW (1) TWI419147B (ko)
WO (1) WO2010040503A2 (ko)
ZA (1) ZA201102476B (ko)

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2911228A1 (fr) * 2007-01-05 2008-07-11 France Telecom Codage par transformee, utilisant des fenetres de ponderation et a faible retard.
KR101325335B1 (ko) * 2008-07-11 2013-11-08 프라운호퍼-게젤샤프트 추르 푀르데룽 데어 안제반텐 포르슝 에 파우 오디오 샘플 인코드 및 디코드용 오디오 인코더 및 디코더
CA2871268C (en) * 2008-07-11 2015-11-03 Nikolaus Rettelbach Audio encoder, audio decoder, methods for encoding and decoding an audio signal, audio stream and computer program
EP3300076B1 (en) 2008-07-11 2019-04-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and audio decoder
US9384748B2 (en) 2008-11-26 2016-07-05 Electronics And Telecommunications Research Institute Unified Speech/Audio Codec (USAC) processing windows sequence based mode switching
KR101315617B1 (ko) * 2008-11-26 2013-10-08 광운대학교 산학협력단 모드 스위칭에 기초하여 윈도우 시퀀스를 처리하는 통합 음성/오디오 부/복호화기
KR101622950B1 (ko) * 2009-01-28 2016-05-23 삼성전자주식회사 오디오 신호의 부호화 및 복호화 방법 및 그 장치
EP2315358A1 (en) * 2009-10-09 2011-04-27 Thomson Licensing Method and device for arithmetic encoding or arithmetic decoding
CA2778323C (en) 2009-10-20 2016-09-20 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder, method for encoding an audio information, method for decoding an audio information and computer program using a detection of a group of previously-decoded spectral values
SG182467A1 (en) 2010-01-12 2012-08-30 Fraunhofer Ges Forschung Audio encoder, audio decoder, method for encoding and audio information, method for decoding an audio information and computer program using a hash table describing both significant state values and interval boundaries
US8280729B2 (en) * 2010-01-22 2012-10-02 Research In Motion Limited System and method for encoding and decoding pulse indices
AU2011287747B2 (en) * 2010-07-20 2015-02-05 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder, method for encoding an audio information, method for decoding an audio information and computer program using an optimized hash table
ES2600313T3 (es) * 2010-10-07 2017-02-08 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparato y método para la estimación de nivel de tramas de audio codificadas en un dominio de flujo de bits
FI3518234T3 (fi) 2010-11-22 2023-12-14 Ntt Docomo Inc Audiokoodauslaite ja -menetelmä
EP2466580A1 (en) * 2010-12-14 2012-06-20 Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding and predictively encoded information signal
JP5666021B2 (ja) 2011-02-14 2015-02-04 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 復号後オーディオ信号をスペクトル領域で処理する装置及び方法
WO2012110478A1 (en) 2011-02-14 2012-08-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Information signal representation using lapped transform
SG192734A1 (en) 2011-02-14 2013-09-30 Fraunhofer Ges Forschung Apparatus and method for error concealment in low-delay unified speech and audio coding (usac)
CA2827335C (en) 2011-02-14 2016-08-30 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Audio codec using noise synthesis during inactive phases
MY159444A (en) * 2011-02-14 2017-01-13 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E V Encoding and decoding of pulse positions of tracks of an audio signal
WO2012110473A1 (en) 2011-02-14 2012-08-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for encoding and decoding an audio signal using an aligned look-ahead portion
JP5914527B2 (ja) 2011-02-14 2016-05-11 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 過渡検出及び品質結果を使用してオーディオ信号の一部分を符号化する装置及び方法
AU2012230442B2 (en) * 2011-03-18 2016-02-25 Dolby International Ab Frame element length transmission in audio coding
WO2013032822A2 (en) 2011-08-26 2013-03-07 Dts Llc Audio adjustment system
ES2635422T3 (es) * 2012-03-29 2017-10-03 Telefonaktiebolaget Lm Ericsson (Publ) Codificación/descodificación de la transformada de señales armónicas de audio
US9489962B2 (en) * 2012-05-11 2016-11-08 Panasonic Corporation Sound signal hybrid encoder, sound signal hybrid decoder, sound signal encoding method, and sound signal decoding method
CN104781878B (zh) * 2012-11-07 2018-03-02 杜比国际公司 音频编码器和方法、音频转码器和方法、以及转换方法
US9319790B2 (en) 2012-12-26 2016-04-19 Dts Llc Systems and methods of frequency response correction for consumer electronic devices
CA3013766C (en) * 2013-01-29 2020-11-03 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Decoder for generating a frequency enhanced audio signal, method of decoding, encoder for generating an encoded signal and method of encoding using compact selection side information
CN116665683A (zh) 2013-02-21 2023-08-29 杜比国际公司 用于参数化多声道编码的方法
US9236058B2 (en) 2013-02-21 2016-01-12 Qualcomm Incorporated Systems and methods for quantizing and dequantizing phase information
JP2014225718A (ja) * 2013-05-15 2014-12-04 ソニー株式会社 画像処理装置および画像処理方法
PT3011556T (pt) 2013-06-21 2017-07-13 Fraunhofer Ges Forschung Para um frame de substituição de um sinal de áudio, descodificador de áudio, receptor de áudio e sistema para transmissão de sinais de áudio
EP2830064A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for decoding and encoding an audio signal using adaptive spectral tile selection
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
EP2830055A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Context-based entropy coding of sample values of a spectral envelope
PL3058566T3 (pl) * 2013-10-18 2018-07-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Kodowanie współczynników widmowych widma sygnału audio
KR101848898B1 (ko) * 2014-03-24 2018-04-13 니폰 덴신 덴와 가부시끼가이샤 부호화 방법, 부호화 장치, 프로그램 및 기록 매체
ES2763280T3 (es) 2014-05-08 2020-05-27 Ericsson Telefon Ab L M Clasificador de señales de audio
US10726831B2 (en) * 2014-05-20 2020-07-28 Amazon Technologies, Inc. Context interpretation in natural language processing using previous dialog acts
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
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
CN106448688B (zh) 2014-07-28 2019-11-05 华为技术有限公司 音频编码方法及相关装置
EP2980796A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method and apparatus for processing an audio signal, audio decoder, and audio encoder
EP3067886A1 (en) 2015-03-09 2016-09-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder for encoding a multichannel signal and audio decoder for decoding an encoded audio signal
WO2016142002A1 (en) * 2015-03-09 2016-09-15 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder, method for encoding an audio signal and method for decoding an encoded audio signal
US10574993B2 (en) 2015-05-29 2020-02-25 Qualcomm Incorporated Coding data using an enhanced context-adaptive binary arithmetic coding (CABAC) design
CA3228657A1 (en) 2015-10-08 2017-04-13 Dolby International Ab Layered coding and data structure for compressed higher-order ambisonics sound or sound field representations
SG10201908093SA (en) 2015-10-08 2019-10-30 Dolby Int Ab Layered coding for compressed sound or sound field representations
KR102632136B1 (ko) 2017-04-28 2024-01-31 디티에스, 인코포레이티드 오디오 코더 윈도우 사이즈 및 시간-주파수 변환
KR102615903B1 (ko) 2017-04-28 2023-12-19 디티에스, 인코포레이티드 오디오 코더 윈도우 및 변환 구현들
EP3483884A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Signal filtering
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
EP3483880A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Temporal noise shaping
EP3483883A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio coding and decoding with selective postfiltering
EP3483886A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Selecting pitch lag
EP3483878A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio decoder supporting a set of different loss concealment tools
EP3483882A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Controlling bandwidth in encoders and/or decoders
WO2019091573A1 (en) 2017-11-10 2019-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for encoding and decoding an audio signal using downsampling or interpolation of scale parameters
WO2019091576A1 (en) 2017-11-10 2019-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits
TWI812658B (zh) 2017-12-19 2023-08-21 瑞典商都比國際公司 用於統一語音及音訊之解碼及編碼去關聯濾波器之改良之方法、裝置及系統
JP7056340B2 (ja) 2018-04-12 2022-04-19 富士通株式会社 符号化音判定プログラム、符号化音判定方法、及び符号化音判定装置
CA3091150A1 (en) * 2018-07-02 2020-01-09 Dolby Laboratories Licensing Corporation Methods and devices for encoding and/or decoding immersive audio signals
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
WO2020253941A1 (en) * 2019-06-17 2020-12-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder with a signal-dependent number and precision control, audio decoder, and related methods and computer programs
CN112447165A (zh) * 2019-08-15 2021-03-05 阿里巴巴集团控股有限公司 信息处理、模型训练和模型构建方法、电子设备、智能音箱
CN112037803B (zh) * 2020-05-08 2023-09-29 珠海市杰理科技股份有限公司 音频编码方法及装置、电子设备、存储介质
CN112735452B (zh) * 2020-12-31 2023-03-21 北京百瑞互联技术有限公司 实现超低编码速率的编码方法、装置、存储介质及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005223533A (ja) 2004-02-04 2005-08-18 Victor Co Of Japan Ltd 算術復号化装置、および算術復号化プログラム
JP2006279333A (ja) 2005-03-28 2006-10-12 Victor Co Of Japan Ltd 算術符号化装置及び算術符号化方法
US20070016427A1 (en) 2005-07-15 2007-01-18 Microsoft Corporation Coding and decoding scale factor information
KR101436677B1 (ko) * 2008-10-08 2014-09-01 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 오디오 디코더, 오디오 인코더, 오디오 신호를 디코딩하는 방법, 오디오 신호를 인코딩하는 방법, 컴퓨터 프로그램 및 오디오 신호

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4956871A (en) * 1988-09-30 1990-09-11 At&T Bell Laboratories Improving sub-band coding of speech at low bit rates by adding residual speech energy signals to sub-bands
SE512719C2 (sv) 1997-06-10 2000-05-02 Lars Gustaf Liljeryd En metod och anordning för reduktion av dataflöde baserad på harmonisk bandbreddsexpansion
US5898605A (en) 1997-07-17 1999-04-27 Smarandoiu; George Apparatus and method for simplified analog signal record and playback
US6081783A (en) * 1997-11-14 2000-06-27 Cirrus Logic, Inc. Dual processor digital audio decoder with shared memory data transfer and task partitioning for decompressing compressed audio data, and systems and methods using the same
US6782360B1 (en) 1999-09-22 2004-08-24 Mindspeed Technologies, Inc. Gain quantization for a CELP speech coder
US6978236B1 (en) 1999-10-01 2005-12-20 Coding Technologies Ab Efficient spectral envelope coding using variable time/frequency resolution and time/frequency switching
SE0001926D0 (sv) 2000-05-23 2000-05-23 Lars Liljeryd Improved spectral translation/folding in the subband domain
SE0004818D0 (sv) 2000-12-22 2000-12-22 Coding Technologies Sweden Ab Enhancing source coding systems by adaptive transposition
DE60209888T2 (de) 2001-05-08 2006-11-23 Koninklijke Philips Electronics N.V. Kodieren eines audiosignals
US7469206B2 (en) 2001-11-29 2008-12-23 Coding Technologies Ab Methods for improving high frequency reconstruction
JP3864098B2 (ja) * 2002-02-08 2006-12-27 日本電信電話株式会社 動画像符号化方法、動画像復号方法、及びこれらの方法の実行プログラムとこれらの実行プログラムを記録した記録媒体
RU2325046C2 (ru) 2002-07-16 2008-05-20 Конинклейке Филипс Электроникс Н.В. Аудиокодирование
DK1400954T3 (da) * 2002-09-04 2008-03-31 Microsoft Corp Entropi-kodning ved tilpasning af kodning mellem niveau- og runlængde/niveau-moduser
US7433824B2 (en) * 2002-09-04 2008-10-07 Microsoft Corporation Entropy coding by adapting coding between level and run-length/level modes
US7330812B2 (en) * 2002-10-04 2008-02-12 National Research Council Of Canada Method and apparatus for transmitting an audio stream having additional payload in a hidden sub-channel
DE10252327A1 (de) 2002-11-11 2004-05-27 Siemens Ag Verfahren zur Erweiterung der Bandbreite eines schmalbandig gefilterten Sprachsignals, insbesondere eines von einem Telekommunikationsgerät gesendeten Sprachsignals
US20040138876A1 (en) 2003-01-10 2004-07-15 Nokia Corporation Method and apparatus for artificial bandwidth expansion in speech processing
KR100917464B1 (ko) 2003-03-07 2009-09-14 삼성전자주식회사 대역 확장 기법을 이용한 디지털 데이터의 부호화 방법,그 장치, 복호화 방법 및 그 장치
DE10345995B4 (de) * 2003-10-02 2005-07-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Verarbeiten eines Signals mit einer Sequenz von diskreten Werten
SE527669C2 (sv) * 2003-12-19 2006-05-09 Ericsson Telefon Ab L M Förbättrad felmaskering i frekvensdomänen
JP4495209B2 (ja) 2004-03-12 2010-06-30 ノキア コーポレイション 符号化済みマルチチャンネルオーディオ信号に基づくモノオーディオ信号の合成
FI119533B (fi) 2004-04-15 2008-12-15 Nokia Corp Audiosignaalien koodaus
KR100713366B1 (ko) 2005-07-11 2007-05-04 삼성전자주식회사 모폴로지를 이용한 오디오 신호의 피치 정보 추출 방법 및그 장치
CN100403801C (zh) * 2005-09-23 2008-07-16 联合信源数字音视频技术(北京)有限公司 一种基于上下文的自适应熵编/解码方法
CN100488254C (zh) * 2005-11-30 2009-05-13 联合信源数字音视频技术(北京)有限公司 一种基于上下文的熵编码方法及解码方法
JP4211780B2 (ja) * 2005-12-27 2009-01-21 三菱電機株式会社 デジタル信号符号化装置、デジタル信号復号装置、デジタル信号算術符号化方法、およびデジタル信号算術復号方法
JP2007300455A (ja) * 2006-05-01 2007-11-15 Victor Co Of Japan Ltd 算術符号化装置、および算術符号化装置におけるコンテキストテーブル初期化方法
US8010352B2 (en) 2006-06-21 2011-08-30 Samsung Electronics Co., Ltd. Method and apparatus for adaptively encoding and decoding high frequency band
JP2008098751A (ja) * 2006-10-06 2008-04-24 Matsushita Electric Ind Co Ltd 算術符号化装置及び算術復号化装置
US8015368B2 (en) 2007-04-20 2011-09-06 Siport, Inc. Processor extensions for accelerating spectral band replication
WO2010003539A1 (en) 2008-07-11 2010-01-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio signal synthesizer and audio signal encoder
EP3300076B1 (en) 2008-07-11 2019-04-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and audio decoder

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005223533A (ja) 2004-02-04 2005-08-18 Victor Co Of Japan Ltd 算術復号化装置、および算術復号化プログラム
JP2006279333A (ja) 2005-03-28 2006-10-12 Victor Co Of Japan Ltd 算術符号化装置及び算術符号化方法
US20070016427A1 (en) 2005-07-15 2007-01-18 Microsoft Corporation Coding and decoding scale factor information
KR101436677B1 (ko) * 2008-10-08 2014-09-01 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 오디오 디코더, 오디오 인코더, 오디오 신호를 디코딩하는 방법, 오디오 신호를 인코딩하는 방법, 컴퓨터 프로그램 및 오디오 신호

Also Published As

Publication number Publication date
KR20140085582A (ko) 2014-07-07
EP2346029B1 (en) 2013-06-05
RU2011117696A (ru) 2012-11-10
PL2346030T3 (pl) 2015-03-31
MY157453A (en) 2016-06-15
EP3671736A1 (en) 2020-06-24
EP2335242A2 (en) 2011-06-22
AU2009301425B2 (en) 2013-03-07
CA2871268A1 (en) 2010-01-14
AU2009301425A8 (en) 2011-11-24
EP2346030A1 (en) 2011-07-20
BRPI0914032B1 (pt) 2020-04-28
CN102177543A (zh) 2011-09-07
JP5665837B2 (ja) 2015-02-04
JP5253580B2 (ja) 2013-07-31
CA2739654A1 (en) 2010-04-15
CA2739654C (en) 2015-03-17
BRPI0914032A2 (pt) 2015-11-03
TWI419147B (zh) 2013-12-11
EP2346029A1 (en) 2011-07-20
ZA201102476B (en) 2011-12-28
MX2011003815A (es) 2011-05-19
CA2871252C (en) 2015-11-03
KR101436677B1 (ko) 2014-09-01
CA2871268C (en) 2015-11-03
WO2010040503A8 (en) 2011-06-03
EP2346030B1 (en) 2014-10-01
WO2010040503A3 (en) 2010-09-10
JP2012505576A (ja) 2012-03-01
US20110238426A1 (en) 2011-09-29
AU2009301425A1 (en) 2010-04-15
EP2335242B1 (en) 2020-03-18
CN102177543B (zh) 2013-05-15
RU2543302C2 (ru) 2015-02-27
WO2010040503A2 (en) 2010-04-15
US8494865B2 (en) 2013-07-23
AR073732A1 (es) 2010-11-24
PL2346029T3 (pl) 2013-11-29
TW201030735A (en) 2010-08-16
KR20110076982A (ko) 2011-07-06
JP2013123226A (ja) 2013-06-20
CA2871252A1 (en) 2010-01-14

Similar Documents

Publication Publication Date Title
KR101596183B1 (ko) 오디오 디코더, 오디오 인코더, 오디오 신호를 디코딩하는 방법, 오디오 신호를 인코딩하는 방법, 컴퓨터 프로그램 및 오디오 신호
KR101316979B1 (ko) 오디오 코딩
KR101455915B1 (ko) 일반 오디오 및 음성 프레임을 포함하는 오디오 신호용 디코더
US7876966B2 (en) Switching between coding schemes
KR101411780B1 (ko) 이전의 디코딩된 스펙트럼 값들의 그룹의 검출을 이용하는 오디오 인코더, 오디오 디코더, 오디오 정보를 인코딩하기 위한 방법, 오디오 정보를 디코딩하기 위한 방법 및 컴퓨터 프로그램
KR20120125513A (ko) 일반 오디오 및 음성 프레임들을 포함하는 오디오 신호를 위한 인코더
KR101751354B1 (ko) 시간-도메인 및 주파수-도메인 코딩 방식을 지원하는 오디오 코덱
RU2769255C2 (ru) Аудиокодеры, аудиодекодеры, способы и компьютерные программы, применяющие кодирование и декодирование младших значащих битов
JP6560320B2 (ja) 変換長切替えをサポートする周波数ドメインオーディオ符号化器、変換長切替えをサポートする周波数ドメインオーディオ符号化のための方法、及びその方法を実施するためのプログラムコードを有するコンピュータプログラム
WO2010086342A1 (en) Audio encoder, audio decoder, method for encoding an input audio information, method for decoding an input audio information and computer program using improved coding tables
KR102486258B1 (ko) 스테레오 신호 인코딩 방법 및 인코딩 장치
JP3886815B2 (ja) 音声符号化装置、音声復号化装置、音声符号化方法及び音声復号化方法

Legal Events

Date Code Title Description
A107 Divisional application of patent
AMND Amendment
AMND Amendment
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
FPAY Annual fee payment

Payment date: 20190130

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20200204

Year of fee payment: 5