KR101316979B1 - 오디오 코딩 - Google Patents

오디오 코딩 Download PDF

Info

Publication number
KR101316979B1
KR101316979B1 KR1020117018596A KR20117018596A KR101316979B1 KR 101316979 B1 KR101316979 B1 KR 101316979B1 KR 1020117018596 A KR1020117018596 A KR 1020117018596A KR 20117018596 A KR20117018596 A KR 20117018596A KR 101316979 B1 KR101316979 B1 KR 101316979B1
Authority
KR
South Korea
Prior art keywords
window
length
information
slope
audio information
Prior art date
Application number
KR1020117018596A
Other languages
English (en)
Other versions
KR20110124229A (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 KR20110124229A publication Critical patent/KR20110124229A/ko
Application granted granted Critical
Publication of KR101316979B1 publication Critical patent/KR101316979B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/167Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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 TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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 TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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 TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

인코딩된 오디오 정보에 기초하여 디코딩된 오디오 정보를 제공하는 오디오 디코더가 인코딩된 오디오 정보에 의해 기술되는, 오디오 정보의 시간-주파수 표현을 오디오 정보의 시간-도메인 표현으로 매핑하도록 구성된 윈도우-기반 신호 변환기를 포함한다. 윈도우-기반 신호 변환기는 서로 다른 전환(transition) 슬로프들의 윈도우들 및 윈도우 정보를 이용해 서로 다른 변환 길이들과 연관된 윈도우들을 포함하는 복수의 윈도우들 중 하나의 윈도우를 선택하도록 구성된다. 오디오 디코더는 상기 오디오 정보의 주어진 프레임과 연관된 시간-주파수 표현의 주어진 부분을 처리하기 위한 하나의 윈도우를 선택하기 위해 가변-코드워드-길이 윈도우 정보를 평가하도록 구성된 윈도우 선택기를 포함한다.

Description

오디오 코딩{Audio Coding}
본 발명에 따른 실시예들은 입력 오디오 정보에 기초하여 인코딩된 오디오 정보를 제공하는 오디오 인코더 및 인코딩된 오디오 정보에 기초하여 디코딩된 오디오 정보를 제공하는 오디오 디코더에 관련된다. 본 발명에 따른 추가적 실시예들은 인코딩된 오디오 정보에 관련된다. 본 발명에 따른 실시예들은 또한, 입력 오디오 정보에 기초하여 인코딩된 오디오 정보를 제공하는 방법 및 인코딩된 오디오 정보에 기초하여 디코딩된 오디오 정보를 제공하는 방법과 관련된다. 추가적인 실시예들은 본 발명의 방법들을 실행하는 컴퓨터 프로그램에 관련된다.
본 발명의 일 실시예는 통합된-스피치-및-오디오-코딩(USAC) 비트스트림 구문에 관한 제안된 업데이트와 관련된다.
아래에서는, 본 발명 및 그 이점에 관한 이해를 돕기 위해 본 발명의 여러 배경기술들이 설명될 것이다. 지난 세기 동안, 오디오 콘텐츠를 디지털적으로 저장하고 배포하는 가능성을 생성하기 위한 많은 노력들이 이루어져 왔다. 이러한 와중에 중요한 성과가 오디오 콘텐츠의 인코딩 및 디코딩에 관련된 국제 표준 ISO/IEC 14496-3. 의 정의이다. 이 표준의 파트 3은 오디오 콘텐츠의 인코딩 및 디코딩에 관련되고, 파트 3의 서브파트 4는 일반적인 오디오 코딩에 관련된다. ISO/IEC 14496 파트 3, 서브파트 4 는 일반적인 오디오 콘텐츠의 인코딩 및 디코딩 개념을 정의한다. 추가적으로, 품질을 향상시키고 및/또는 요청된 비트 레이트를 감소시키기 위해 추가적인 향상점들이 제안되어져 왔다.
하지만, 상기 표준에 서술된 개념에 따르면 시간 도메인 오디오 신호는 시간-주파수 표현으로 변환된다. 시간 도메인으로부터 시간-주파수 도메인으로의 변환은 통상적으로, 시간 도메인 샘플들의 "프레임들"로 또한 표시되는, 변환 블록들을 이용해 수행된다. 중첩하는 프레임들, 예를 들어, 프레임의 반만큼 시프트된 중첩하는 프레임들을 사용하는 것이 유리한 것으로 알려져 있는데, 이는 중첩이 결점(artifact)들을 효율적으로 회피(또는 적어도 감소)하도록 해주기 때문이다. 또한, 시간적으로 제한된 프레임들의 이러한 프로세싱으로부터 유발된 결점들을 회피하기 위해 윈도우잉(windowing)이 수행되어야 함이 밝혀져 있다. 또한, 윈도우잉은 연속하는 시간적으로 시프트된 하지만 중첩하는 프레임들의 중첩-및-가산 프로세스의 최적화를 허용한다.
하지만, 균일한 길이의 윈도우들을 사용하는 경우 전환의 에너지가 윈도우의 전체 구간에 걸쳐 퍼질 것이고, 그에 따라 가청 결함들을 유발하기 때문에, 에지들, 즉, 오디오 콘텐트 내의 날카로운 전환들 또는 소위 과도점(transient)들을 효율적으로 표현하는 데 문제가 있음이 밝혀졌다. 따라서, 서로 다른 길이의 윈도우들 사이에서 스위치하여, 오디오 콘텐츠의 대략적으로 안정적인 부분들이 긴 윈도우들을 사용해 인코딩되고, 오디오 콘텐트의 전환 부분들(예를 들어, 과도점을 포함하는 부분들)이 더 짧은 윈도우들을 사용해 인코딩되도록 하는 것이 제안되었다.
하지만, 오디오 콘텐츠를 시간 도메인으로부터 시간-주파수 도메인으로 변환시키기 위한 서로 다른 윈도우들 간의 선택을 허용하는 시스템에서, 당연히, 어떤 윈도우가 주어진 프레임의 인코딩된 오디오 콘텐츠의 디코딩에 사용되어야 하는지 디코더에게 시그널링하는 것이 필요하다.
전통적인 시스템, 예를 들어, 국제 표준 ISO/IEC 14496-3, 파트 3, 서브파트 4 를 따르는 오디오 디코더에서, 현재의 프레임에서 사용되는 윈도우 시퀀스를 나타내는 "window_sequence"라 불리는 데이터 요소는 소위 "ics_info" 비트스트림 요소 내의 비트스트림 내로 포함되는 2 비트를 가지고 작성된다. 이전 프레임의 윈도우 시퀀스를 고려함으로써, 8 개의 서로 다른 윈도우 시퀀스들이 시그널링된다.
상술한 논의의 관점에서, 오디오 정보를 나타내는 인코딩된 비트스트림의 비트 로드(load)는 사용되는 윈도우 타입을 시그널링하고자 하는 요구에 의해 생성된다.
이러한 상황적 관점에서, 오디오 콘텐트의 시간 도메인 표현 및 오디오 콘텐트의 시간-주파수 도메인 표현 간의 변환에 사용되는 윈도우 타입의 보다 비트레이트-효율적인 시그널링을 허용하는 개념을 창조하고자 하는 욕구가 있다 할 것이다.
본 발명은, 입력 오디오 정보에 기초하여 인코딩된 오디오 정보를 제공하는 오디오 인코더 및 인코딩된 오디오 정보에 기초하여 디코딩된 오디오 정보를 제공하는 오디오 디코더를 제공하는 것을 목적으로 한다.
본 발명의 다른 목적은 인코딩된 오디오 정보를 제공하는 데 있다.
본 발명의 또 다른 목적은, 입력 오디오 정보에 기초하여 인코딩된 오디오 정보를 제공하는 방법 및 인코딩된 오디오 정보에 기초하여 디코딩된 오디오 정보를 제공하는 방법을 제공하는 데 있다.
본 발명의 또 다른 목적은, 본 발명의 방법들을 실행하는 컴퓨터 프로그램을 제공하는 데 있다.
이러한 문제는 청구항 1에 따른 오디오 인코더, 청구항 9에 따른 오디오 디코더, 청구항 12에 따른 인코딩된 오디오 정보, 청구항 14에 따른 디코딩된 오디오 정보를 제공하는 방법, 청구항 15에 따른 인코딩된 오디오 정보를 제공하는 방법, 및 청구항 16에 따른 컴퓨터 프로그램에 의해 해결된다.
본 발명의 일 실시예는 인코딩된 오디오 정보에 기초하여 디코딩된 오디오 정보를 제공하는 오디오 디코더를 생성한다. 오디오 디코더는 인코딩된 오디오 정보에 의해 기술되는, 오디오 정보의 시간-주파수 표현을 오디오 정보의 시간-도메인 표현으로 매핑하도록 구성된 윈도우-기반 신호 변환기를 포함한다. 윈도우-기반 신호 변환기는, 윈도우 정보에 기초해, 서로 다른 전환(transition) 슬로프들의 윈도우들 및 서로 다른 변환 길이들의 윈도우들을 포함하는 복수의 윈도우들 중 하나의 윈도우를 선택하도록 구성된다. 오디오 디코더는 오디오 정보의 주어진 프레임과 연관된 시간-주파수 표현의 주어진 부분(예를 들어, 프레임)을 처리하기 위한 윈도우를 선택하기 위해 가변-코드워드-길이 윈도우 정보를 평가하도록 구성된 윈도우 선택기를 포함한다.
본 발명의 이 실시예는, 오디오 콘텐트의 시간-주파수-도메인 표현을 시간-도메인 표현으로 변환하기 위해 어떤 타입의 윈도우가 사용되어야 하는지를 나타내는 정보를 저장 또는 전송하는 데 필요한 비트레이트가 가변-코드워드-길이 윈도우 정보를 이용해 감소될 수 있다는 발견에 기초한다. 적절한 윈도우를 선택하는 데 필요한 정보가 이러한 가변-코드워드-길이 표현에 대해 적절하기 때문에, 가변-코드워드-길이 윈도우 정보가 적절함이 밝혀졌다.
예를 들어, 가변-코드워드-길이 윈도우 정보를 이용함으로써, 짧은 변환 길이는 통상적으로 하나 또는 둘의 긴 전환 슬로프를 가지는 윈도우에 사용되지 않을 것이기 때문에 전환 슬로프의 선택 및 변환 길이의 선택 사이에 의존성이 있음이 활용될 수 있다. 따라서, 가변-코드워드-길이 윈도우 정보를 이용하여 잉여 정보의 전송을 막을 수 있고, 그에 따라 인코딩된 오디오 정보의 비트레이트-효율성을 향상시킬 수 있다.
추가적인 예로서, 통상적으로 인접하는 프레임들의 윈도우 형상들간에는 상관성이 있음을 유의해야 하는데, 이것은 또한 적어도 하나의 인접하는 윈도우들(현재 고려되는 윈도우에 인접한)이 현재의 프레임에 대한 윈도우 타입들의 선택을 제한하는 경우에 대해 윈도우 정보의 코드워드-길이를 선택적으로 감소시키는 데 활용될 수 있다.
상술한 내용을 요약하면, 가변-코드워드-길이 윈도우 정보의 이용은, (일정한-코드워드-길이 윈도우 정보에 비교해) 오디오 디코더의 복잡성을 심하게 증가시키지 않고 또한 오디오 디코더의 출력 파형을 변형시키지 않고도 비트레이트를 절약하게 해준다. 또한, 이후 자세히 설명되는 바와 같이, 어떤 경우에서는 인코딩된 오디오 정보의 문맥이 심지어 간략화될 수 있다.
바람직한 일 실시예에서, 오디오 디코더는, 인코딩된 오디오 정보를 나타내는 비트스트림을 파싱하고 비트스트림으로부터 1-비트 윈도우-슬로프-길이 정보를 추출하며, 1-비트 윈도우-슬로프-길이 정보의 값에 따라, 비트스트림으로부터 1-비트 변환-길이 정보를 선택적으로 추출하도록 구성된 비트스트림 파서(parser)를 포함한다. 이 경우, 윈도우 선택기는 바람직하게, 시간-주파수 표현의 주어진 부분을 처리하기 위한 윈도우 타입을 선택하기 위해, 윈도우-슬로프-길이 정보에 따라, 변환-길이 정보를 선택적으로 사용 또는 무시하도록 구성된다.
이러한 개념을 이용함으로써, 윈도우-슬로프-길이 정보 및 변환-길이 정보 간의 분리가 얻어질 수 있고, 이것은 몇몇 경우에서 매핑의 간략화에 기여한다. 또한, 윈도우 정보의 의무적(compulsary) 윈도우-슬로프-길이 비트 및, 윈도우-슬로프-길이 비트의 상태에 따라 존재하는, 변환-길이 비트로의 분리(split-up)는 비트레이트의 매우 효율적인 감소를 허용하는데, 이는 비트스트림의 구문을 충분히 간단하게 유지하면서도 얻어질 수 있다. 따라서, 비트스트림 파서의 복잡도는 충분히 작게 유지된다.
바람직한 일 실시예에서, 윈도우 선택기는, 시간-주파수 정보의 현재 부분을 처리하기 위해 선택된 윈도우의 좌측(left-sided) 윈도우-슬로프-길이가 시간-주파수 정보의 이전 부분을 처리하기 위해 선택된 윈도우의 우측(right-sided) 윈도우-슬로프-길이와 매칭되도록, 시간-주파수 정보의 이전 부분(예를 들어, 이전 오디오 프레임)의 처리를 위해 선택된 윈도우 타입에 따라 시간-주파수 정보의 현재 부분(예를 들어, 현재의 오디오 프레임)을 처리하기 위한 윈도우 타입을 선택하도록 구성된다. 이러한 정보를 활용함으로써, 윈도우 타입을 선택하기 위한 정보가 특히 낮은 복잡도로 인코딩되므로, 시간-주파수 정보의 현재의 부분의 처리를 위한 윈도우 타입을 선택하는 데 요구되는 비트레이트가 특별히 작다. 특히, 시간-주파수 정보의 현재의 부분과 연관된 윈도우의 윈도우-슬로프-길이를 인코딩하기 위해 비트를 "낭비"할 필요가 없다. 따라서, 시간-주파수 정보의 이전 부분을 처리하는 데 사용되는 우측 윈도우-슬로프-길이에 관한 정보를 이용함으로써, 4보다 많은 복수의 선택가능한 윈도우들 중 적절한 윈도우를 선택하는 데 2 개의 비트(예를 들어, 의무적 윈도우-슬로프-길이 비트 및 선택적인(facultative) 변환-길이 비트)가 사용될 수 있다. 따라서, 불필요한 리던던시를 피하게 되고, 인코딩된 비트스트림의 비트레이트-효율성이 향상된다.
바람직한 일 실시예에서, 윈도우 선택기는, 시간-주파수 정보의 이전 부분을 처리하기 위한 윈도우의 우측 윈도우-슬로프-길이가 "긴" 값(상대적으로 더 짧은 윈도우-슬로프-길이를 나타내는 "짧은" 값에 비교할 때 상대적으로 더 긴 윈도우-슬로프-길이를 나타내는)을 취하고, 시간-주파수 정보의 이전 부분, 시간-주파수 정보의 현재 부분, 및 시간-주파수 정보의 후속(subsequent) 부분이 모두 주파수- 도메인 코어(core) 모드로 인코딩된 경우, 1-비트 윈도우-슬로프-길이 정보의 값에 따라 제1 타입의 윈도우 및 제2 타입의 윈도우 사이에서 선택하도록 구성된다.
윈도우 선택기는 또한 바람직하게, 시간-주파수 정보의 이전 부분을 처리하기 위한 윈도우의 우측 윈도우-슬로프-길이가 "짧은"(앞서 논의된 바와 같이) 값을 취하고, 시간-주파수 정보의 이전 부분, 시간-주파수 정보의 현재 부분, 및 시간-주파수 정보의 후속 부분이 모두 주파수-도메인 코어 모드로 인코딩된 경우, 1-비트 윈도우-슬로프-길이 정보의 제1 값(예를 들어, "1"의 값)에 응답하여 제3 타입의 윈도우를 선택하도록 구성된다.
추가적으로, 윈도우 선택기는, 1-비트 윈도우-슬로프-길이 정보가 짧은 우측 윈도우 슬로프를 지시하는 제2 값(예를 들어, "0"의 값))을 취하고, 시간-주파수 정보의 이전 부분을 처리하기 위한 윈도우의 우측 윈도우-슬로프-길이가 "짧은"(상술한 바와 같이) 값을 취하고, 시간-주파수 정보의 이전 부분, 시간-주파수 정보의 현재 부분, 및 시간-주파수 정보의 후속 부분이 모두 주파수-도메인 코어 모드로 인코딩된 경우, 1-비트 변환-길이 정보에 따라 제4 타입의 윈도우 및 윈도우 시퀀스(제5 타입의 윈도우로 여겨질 수 있음) 사이에서 선택하도록 또한 구성된다.
이 경우에 있어서, 제1 타입의 윈도우는 (상대적으로) 긴 좌측 윈도우-슬로프-길이, (상대적으로) 긴 우측 윈도우-슬로프-길이 및 (상대적으로) 긴 변환-길이를 포함하고, 제2 윈도우 타입은 상대적으로 긴 좌측 윈도우-슬로프-길이, (상대적으로) 짧은 우측 윈도우-슬로프-길이 및 상대적으로 긴 변환-길이를 포함하고, 제3 윈도우 타입은 (상대적으로) 짧은 좌측 윈도우-슬로프-길이, (상대적으로) 긴 우측 윈도우-슬로프-길이 및 (상대적으로) 긴 변환-길이를 포함하고, 제4 윈도우 타입은 (상대적으로) 짧은 좌측 윈도우-슬로프-길이, (상대적으로) 짧은 우측 윈도우-슬로프-길이 및 (상대적으로) 긴 변환-길이를 포함한다. "윈도우 시퀀스" (또는 제5 윈도우 타입)는 시간-주파수 정보의 단일 부분(예를 들어, 프레임)과 연관된 복수의 서브-윈도우들의 시퀀스 또는 중첩(superposition)을 정의하고, 복수의 서브-윈도우들 각각은 (상대적으로) 짧은 변환 길이, (상대적으로) 짧은 좌측 윈도우-슬로프-길이 및 상대적으로 짧은 우측 윈도우-슬로프-길이를 포함한다. 이러한 접근법을 사용함으로써, 5 개 윈도우 타입들("윈도우 시퀀스" 타입을 포함하여) 전체가 단지 두 비트를 이용해 선택될 수 있고, 단일-비트 정보(일명 1-비트 윈도우-슬로프-길이 정보)면 좌측 및 우측 양쪽에서 상대적으로 긴 윈도우-슬로프-길이를 갖는 복수의 윈도우들의 매우 공통적인 시퀀스를 시그널링하기에 충분하다. 반대로, 2-비트 윈도우 정보는 짧은 윈도우들("윈도우 시퀀스" 또는 "제5 타입의 윈도우")의 시퀀스의 준비 및 "윈도우 시퀀스" 프레임들의 (복수의 프레임에 걸쳐) 시간적으로 확장된 시리즈 동안에 필요할 뿐이다.
요악하자면, 5개의 서로 다른 타입의 복수의 윈도우들 중 윈도우 타입을 선택하는 상술한 개념은 요청된 비트레이트의 강한 감소를 허용한다. 전통적으로는, 5 개의 윈도우 타입들 중 하나의 윈도우 타입을 결정하는 데 3 개의 전용 비트가 필요하지만, 이러한 선택을 수행하는 본 발명에 따르면 단지 하나 또는 2 비트가 필요하다. 따라서, 상당한 비트 절약이 얻어질 수 있고, 그에 따라 요청되는 비트레이트를 감소시킬 수 있고 및/또는 오디오 품질을 향상시키는 기회를 제공한다 할 것이다.
바람직한 일 실시예에서, 윈도우 선택기는 시간-주파수 정보의 이전 부분(예를 들어, 프레임)을 처리하기 위한 윈도우 타입이 짧은-윈도우-시퀀스의 좌측 윈도우-슬로프-길이와 매칭되는 우측 윈도우-슬로프-길이를 포함하고, 시간-주파수 정보의 현재 부분(예를 들어, 현재 프레임)과 연관된 1-비트 윈도우-슬로프-길이 정보가 짧은-윈도우-시퀀스의 우측 윈도우-슬로프-길이와 매칭되는 우측 윈도우-슬로프-길이를 정의하는 경우에만, 가변-코드워드-길이 윈도우 정보의 변환-길이 비트를 선택적으로 평가하도록 구성된다.
바람직한 일 실시예에서, 윈도우 선택기는 또한, 오디오 정보의 이전 부분(예를 들어, 프레임)과 연관되고 오디오 정보의 이전 부분(예를 들어, 프레임)을 인코딩하기 위한 코어 모드를 서술하는 이전 코어 모드 정보를 수신하도록 구성된다. 이 경우, 윈도우 선택기는, 이전 코어 모드 정보에 따라 그리고 또한 시간-주파수 표현의 현재 부분과 연관된 가변-코드워드-길이 윈도우 정보에 따라 시간-주파수 표현의 현재 부분(예를 들어, 프레임)을 처리하기 위한 윈도우 타입을 선택하도록 구성된다. 따라서, 이전 프레임의 코어 모드는 이전 프레임과 현재 프레임 간의 전환(예를 들어 중첩-및-가산 동작의 형태로)을 위한 적절한 윈도우를 선택하기 위해 활용될 수 있다. 다시 말해, 가변-코드워드-길이 윈도우 정보의 사용은 매우 유용한데, 이것은 다시 상당한 비트 개수를 절약할 수 있기 때문이다. 예를 들어, 선형-예측-도메인에서 인코딩된 오디오 프레임에 대해 가용한(또는 유효한) 윈도우 타입의 개수가 적은 경우 특별히 양호한 절약이 얻어질 수 있다. 따라서, 두 서로 다른 코어 모드간(예를 들어, 선형-예측-도메인 코어 모드 및 주파수-도메인 코어 모드 간)의 전환에서, 더 긴 코드워드 및 더 짧은 코드워드 중 짧은 코드워드를 사용하는 것이 종종 가능하다.
바람직한 일 실시예에서, 윈도우 선택기는 또한, 오디오 정보의 후속 부분(또는 프레임)과 연관되고 오디오 정보의 후속 프레임을 인코딩하기 위한 코어 모드를 서술하는 후속 코어 모드 정보를 수신하도록 구성된다. 이 경우, 윈도우 선택기는 바람직하게는, 후속 코어 모드 정보에 따라 그리고 또한 시간-주파수 표현의 현재 부분과 연관된 가변-코드워드-길이 윈도우 정보에 따라 시간-주파수 표현의 현재 부분(예를 들어, 프레임)을 처리하기 위한 윈도우를 선택하도록 구성된다.
바람직한 일 실시예에서, 후속 코어 모드 정보가, 오디오 정보의 후속 부분이 선형-예측-도메인 코어 모드를 사용하여 인코딩됨을 지시하는 경우, 윈도우 선택기는 단축된 우측 슬로프를 가지는 윈도우들을 선택하도록 구성된다. 이러한 방법으로, 추가적인 시그널링 노력을 필요로 하지 않고 윈도우들을 주파수-도메인 코어 모드와 시간-도메인 코어 모드 간의 전환에 적용시킬 수 있다.
본 발명에 따른 다른 실시예는 입력 오디오 정보에 기초하여 인코딩된 오디오 정보를 제공하는 오디오 인코더를 생성한다. 오디오 인코더는, 입력 오디오 정보의 복수의 윈도우된 부분들(예를 들어, 중첩하는 또는 비-중첩하는 프레임들)에 기초하여 오디오 신호 파라미터들의 시퀀스(예를 들어, 입력 오디오 정보의 시간-주파수-도메인 표현)를 제공하도록 구성된, 윈도우-기반 신호 변환기를 포함한다. 윈도우-기반 신호 변환기는 바람직하게, 입력 오디오 정보의 특성들에 따라 입력 오디오 정보의 윈도우된 부분들을 획득하기 위해 윈도우 형상을 조정하도록 구성된다. 윈도우-기반 신호 변환기는 (상대적으로) 더 긴 전환 슬로프를 가진 윈도우들 및 (상대적으로) 더 짧은 전환 슬로프를 가진 윈도우들 사이에서 스위칭하도록, 그리고 또한 둘 이상의 서로 다른 변환 길이를 가지는 윈도우들의 사용 사이에서 스위칭하도록 구성된다. 윈도우-기반 신호 변환기는 또한 입력 오디오 정보의 선행(preceding) 부분 및 입력 오디오 정보의 현재 부분의 오디오 콘텐트를 변환하는 데 사용되는 윈도우 타입에 따라 입력 오디오 정보의 현재 부분(예를 들어, 프레임)을 변환하는 데 사용되는 윈도우 타입을 결정하도록 구성된다. 또한, 오디오 인코더는 가변-길이-코드워드를 사용해 입력 오디오 정보의 현재 부분을 변환하는 데 사용되는 윈도우 타입을 서술하는 윈도우 정보를 인코딩하도록 구성된다. 오디오 인코더는 본 발명의 오디오 디코더와 관련하여 이미 논의된 이점들을 제공한다. 특히, 그것이 가능한 몇몇 또는 모든 경우들에서 상대적으로 긴 코드워드의 사용을 피함으로써 인코딩된 오디오 정보의 비트레이트를 줄이는 것이 가능하다.
본 발명에 따른 또 다른 실시예는 인코딩된 오디오 정보를 생성한다. 인코딩된 오디오 정보는, 오디오 신호의 복수의 윈도우된 부분들의 오디오 컨텐트를 서술하는 인코딩된 시간-주파수 표현을 포함한다. 서로 다른 전환 슬로프들(예를 들어, 전환-슬로프-길이들) 및 서로 다른 변환 길이들의 윈도우들은 오디오 신호의 다른 윈도우된 부분들과 연관된다. 인코딩된 오디오 정보는 또한, 인코딩된 시간-주파수 표현 및 오디오 신호의 복수의 윈도우된 부분들의 인코딩된 시간-주파수 표현을 획득하는 데 사용되는 윈도우들의 타입들을 인코딩하는 인코딩된 윈도우 정보를 포함한다. 인코딩된 윈도우 정보는 제1, 더 낮은 개수의 비트들을 사용하는 적어도 하나의 윈도우 타입들을 인코딩하고, 제2, 더 큰 개수의 비트들을 사용하는 적어도 하나의 다른 윈도우 타입들을 인코딩하는 가변-길이 윈도우 정보이다. 이러한 인코딩된 오디오 정보는 본 발명의 오디오 디코더 및 본 발명의 오디오 인코더와 관련하여 위에서 이미 논의된 이점들을 함께 가져온다.
본 발명에 따른 또 다른 실시예는 인코딩된 오디오 정보에 기초하여 디코딩된 오디오 정보를 제공하는 방법을 생성한다. 본 방법은, 오디오 정보의 주어진 프레임과 연관된 시간-주파수 표현의 주어진 부분을 처리하기 위해, 서로 다른 전환 슬로프들(예를 들어 서로 다른 전환-슬로프-길이들)의 윈도우들 및 서로 다른 변환 길이들과 연관된 윈도우들을 포함하는 복수의 윈도우들 중 하나의 윈도우를 선택하기 위해, 가변-코드워드-길이 윈도우 정보를 평가하는 단계를 포함한다. 본 방법은 또한, 선택된 윈도우를 이용해 인코딩된 오디오 정보에 의해 기술되는 시간-주파수 표현의 주어진 부분을 시간 도메인 표현으로 매핑하는 단계를 포함한다.
본 발명에 따른 또 다른 실시예는 입력 오디오 정보에 기초하여 인코딩된 오디오 정보를 제공하는 방법을 생성한다. 본 방법은, 입력 오디오 정보의 복수의 윈도우된 부분들에 기초하여 오디오 신호 파라미터들(예를 들어, 시간-주파수-도메인 표현)의 시퀀스를 제공하는 단계를 포함한다. 오디오 신호 파라미터들의 시퀀스를 제공하기 위해, 더 긴 전환 슬로프를 가진 윈도우들 및 더 짧은 전환 슬로프를 가진 윈도우들의 사용 사이에서, 그리고 또한 둘 이상의 다른 변환 길이를 가지는 윈도우들의 사용 사이에서 스위칭이 수행되어, 입력 오디오 정보의 특성들에 따라 입력 오디오 정보의 윈도우된 부분들을 획득하기 위해 윈도우 형상들을 조정한다. 본 방법은 또한, 가변-길이 코드워드들을 사용하여, 입력 오디오 정보의 현재 부분을 변환하는 데 사용된 윈도우 타입을 서술하는, 윈도우 정보를 인코딩하는 단계를 포함한다.
추가적으로, 본 발명에 따른 실시예들은 상기 방법들을 실행하기 위한 컴퓨터 프로그램들을 생성한다.
본 발명은, 가변-코드워드-길이 윈도우 정보를 이용하여 잉여 정보의 전송을 막을 수 있고, 그에 따라 인코딩된 오디오 정보의 비트레이트-효율성을 향상시킬 수 있다. 또한 본 발명에 따르면 윈도우 타입 결정에 단지 하나 또는 2 비트를 필요로 함으로써, 상당한 비트 절약이 얻어질 수 있고, 그에 따라 요청되는 비트레이트를 감소시킬 수 있고 및/또는 오디오 품질을 향상시키는 기회를 제공한다.
본 발명의 실시예들이 아래 첨부된 도면들을 참조로 하여 이어서 설명될 것이다.
도 1은 본 발명의 일 실시예에 따른, 오디오 인코더의 블록 도시적 다이어그램을 보여준다.
도 2는 본 발명의 일 실시예에 따른, 오디오 디코더의 블록 도시적 다이어그램을 보여준다.
도 3은 본 발명의 개념에 따라 사용될 수 있는, 여러 윈도우 타입들의 도시적 표현을 나타낸다.
도 4는 본 발명에 따른 실시예들의 설계에 적용될 수 있는, 여러 윈도우 타입의 윈도우들 간의 허용가능한 전환들의 그래픽적 표현을 보여준다.
도 5는 본 발명의 오디오 디코더에 의해 처리될 수 있거나 또는 본 발명의 인코더에 의해 생성될 수 있는, 여러 윈도우 타입들의 시퀀스의 그래픽적 표현을 나타낸다.
도 6은 본 발명의 일 실시예에 따른 제안된 비트스트림 구문을 나타내는 테이블을 보여준다.
도 6b는 현재의 프레임의 윈도우 타입으로부터 "window_length" 정보 및 "transform_length" 정보로의 매핑의 그래픽적 표현을 나타낸다.
도 6c는 이전의 코어 모드 정보, 이전 프레임의 "window_length" 정보, 현재 프레임의 "window_length" 정보, 및 현재 프레임의 "transform_length" 정보를 기초로 하여 현재의 프레임의 윈도우 타입을 획득하기 위한 매핑의 그래픽적 표현을 나타낸다.
도 7a은 "window_length" 정보의 구문을 나타내는 테이블을 보여준다.
도 7b은 "transform_length" 정보의 구문을 나타내는 테이블을 보여준다.
도 7c은 신규 비트스트림 구문 및 전환들(transitions)을 나타내는 테이블을 보여준다.
도 8은 "window_length" 정보 및 "transform_length" 정보의 모든 조합들에 걸친 개요를 제시하는 테이블을 나타낸다.
도 9는 본 발명의 일 실시예를 이용하여 얻을 수 있는, 비트 절약을 나타내는 테이블을 보여준다.
도 10a는 소위 USAC 미가공(raw) 데이터 블록의 구문 표현을 나타낸다.
도 10b는 소위 단일-채널-요소(single-channel-element)의 구문 표현을 나타낸다.
도 10c는 소위 채널-쌍-요소(channel-pair-element)의 구문 표현을 나타낸다.
도 10d는 소위 ICS 정보의 구문 표현을 나타낸다.
도 10e는 소위 주파수-도메인 채널 스트림의 구문 표현을 나타낸다.
도 11은 입력 오디오 정보에 기초하여 인코딩된 오디오 정보를 제공하는 방법의 플로우차트를 도시한다.
도 12는 인코딩된 오디오 정보에 기초하여 디코딩된 오디오 정보를 제공하는 방법의 플로우차트를 도시한다.
오디오 인코더 개요
아래에서는, 본 발명의 개념이 적용될 수 있는 오디오 인코더가 설명될 것이다. 하지만, 도 1을 참조로 하여 설명되는 오디오 인코더는 본 발명이 적용될 수 있는 오디오 인코더의 일 예로서 이해되어야 할 것임을 유의해야 한다. 또한, 상대적으로 간단한 오디오 인코더가 도 1을 참조로 하여 논의된다 할지라도, 본 발명은, 예를 들어 서로 다른 인코딩 코어 모드들 간의(예를 들어, 주파수-도메인 인코딩 및 선형-예측-도메인 인코딩 간의) 스위칭 능력이 있는 오디오 인코더와 같이, 훨신 더 정교한 오디오 인코더에서도 적용될 수 있음이 주지되어야 할 것이다. 그럼에도 불구하고, 간결성 때문에 간단한 주파수 도메인 오디오 인코더의 기본 아이디어를 이해하는 것이 도움이 된다 할 것이다.
도 1에 나타낸 오디오 인코더는 국제 표준 ISO/IEC 14496-3:2005 (E), 파트 3, 서브파트 4 및 거기서 참조하는 문서들에서 설명하는 오디오 인코더와 매우 유사하다. 따라서, 상기 표준, 해당 표준에서 참조하는 문서들 및 MPEG 오디오 인코딩과 관련된 광범위한 문헌들(extensive literature)이 참조되어야 할 것이다.
도 1에 나타낸 오디오 인코더(100)는 입력 오디오 정보, 예를 들어, 시간-도메인 오디오 신호를 수신하도록 구성된다. 오디오 인코더(100)는 또한, 예를 들어, 입력 오디오 정보(110)를 다운-샘플링함으로써 또는 입력 오디오 정보(110)의 이득을 제어함으로써, 입력 오디오 정보(110)를 선택적으로 전처리하도록 구성된다. 오디오 인코더(100)는 또한, 주요 성분으로서, 시간-주파수 도메인에서의 스펙트럴 값들일 수 있는 오디오 신호 파라미터들의 시퀀스를 획득하기 위해, 입력 오디오 정보(110) 또는 그 전처리된 버전(122)을 수신하고, 입력 오디오 정보(110) 또는 그 전처리된 버전(122)을 주파수 도메인(또는 시간-주파수-도메인)으로 변환하도록 구성된, 윈도우-기반 신호 변환기(130)를 포함한다. 이러한 목적을 위해, 윈도우-기반 신호 변환기(130)는 입력 오디오 정보(110, 122)의 샘플들의 블록들(예를 들어, "프레임들")을 스펙트럴 값들(132)의 세트로 변환하도록 구성될 수 있는, 윈도우어/변환기(136)를 포함한다. 예를 들어, 윈도우어/변환기(136)는 입력 오디오 정보(110)의 샘플들의 각 블록에 대해(즉, 각 "프레임"에 대해) 한 세트의 스펙트럴 값들을 제공하도록 구성될 수 있다. 하지만, 입력 오디오 정보(110, 122)의 샘플들의 블록들(즉, "프레임들")은 바람직하게는 중첩되어, 입력 오디오 정보(110, 122)의 샘플들의 시간적으로 인접하는 블록들("프레임들")이 복수의 샘플들을 공유할 수 있다. 예를 들어, 두 시간적으로 인접하는 샘플들의 블록들이 샘플들의 대략 50%만큼 중첩할 수 있다. 따라서, 윈도우어/변환기(136)는 소위 랩드(lapped) 변환, 예를 들어, 변형된-이산-코사인-변환(MDCT)을 수행하도록 구성될 수 있다. 하지만, 변형된-이산-코사인-변환을 수행할 때, 윈도우어/변환기(136)는 샘플들의 각 블록에 윈도우를 적용할 수 있고, 그에 따라 중앙 샘플들(샘플들의 블록의 시간적 중심의 가까운 곳에 시간적으로 배열된)을 주변 샘플들(샘플들의 블록의 선두 및 후미 종단의 시간상으로 가까운 곳에 시간적으로 배열된)보다 더 강하게 가중할 수 있다. 윈도우잉은, 입력 오디오 정보(110, 122)를 블록들로 세그먼트화함으로써 발생할 결함(artifact)들을 회피하는 데 도움이 될 수 있다. 따라서, 시간-도메인으로부터 시간-주파수-도메인으로의 변환 전 또는 그동안 윈도우들의 적용은 입력 오디오 정보(110, 122)의 샘플들의 후속하는 블록들 간의 원만한 전환을 허용한다. 윈도우잉과 관련한 세부사항들에 대해, 국제 표준 ISO/IEC 14496, 파트 3, 서브파트 4 및 거기서 참조하는 문서들이 다시 참조된다. 오디오 인코더의 매우 간단한 버전에서, 오디오 프레임의 2N 개의 샘플들(샘플들의 블록으로서 정의되는) 은 신호 특성들과는 무관하게 N 개의 스펙트럴 계수들로 변환될 것이다. 하지만, 입력 오디오 정보(110, 122)의 2N 개의 샘플들의 균일한 변환 길이가 입력 오디오 정보(110, 122)의 특성들과는 무관하게 사용되는, 이러한 개념이 변환의 심각한 열화를 야기한다는 점이 발견되었는데, 이는 전환의 경우 오디오 정보를 디코딩할 때 전체 프레임에 걸쳐 전환의 에너지가 분산되기 때문이다. 그럼에도 불구하고, 더 짧은 변환 길이(예를 들어, 변환당 2N/8=N/4 샘플들) 가 선택되는 경우, 에지의 인코딩에서의 향상이 얻어질 수 있다는 점이 발견되었다. 하지만, 더 긴 변환 길이에 비해 더 짧은 변환 길이에 대해 더 적은 스펙트럴 값들이 얻어진다 하더라도, 더 짧은 변환 길이의 선택이 요청되는 비트레이트를 통상적으로 증가시킨다는 점이 발견되었다. 따라서, 오디오 콘텐트의 전환(에지(edge)로 또한 지시된) 근처에서는 긴 변환 길이(예를 들어, 변환 당 2N 샘플들)로부터 짧은 변환 길이(예를 들어, 변환당 2N/8=N/4 샘플들)로 스위칭하고, 전환 이후에 긴 변환 길이(예를 들어, 변환 당 2N-샘플들)로 다시 스위칭하는 하는 것이 추천할만한 것으로 밝혀졌다. 변환 길이의 스위칭은 변환 이전 또는 그 동안에 입력 오디오 정보(110, 122)의 샘플들을 윈도우잉하는 데 적용된 윈도우의 변화와 관련된다.
이러한 이슈와 관련하여, 많은 경우에 오디오 인코더가 2를 초과하는 서로 다른 윈도우들을 사용할 수 있음을 주지해야 할 것이다. 선행하는(현재 고려되는 프레임에 선행하는) 프레임 및 이어지는 프레임(현재 고려되는 프레임에 이어지는) 모두가 긴 변환 길이(예를 들어, 2N 샘플들)를 사용하여 인코딩되는 경우, 예를 들어, 소위 "only_long_sequence"가 현재의 오디오 프레임을 인코딩하기 위해 사용될 수 있다. 반대로, 긴 변환 길이를 이용해 변환된 프레임이 선행하고, 그리고 짧은 변환 길이를 이용해 변환된 프레임이 그 뒤에 이어지는, 프레임에서는 소위 "long_start_sequence"가 사용될 수 있다. 짧은 변환 길이를 이용해 변환되는 프레임에서, 8 개의 짧고 중첩하는 (서브-)윈도우들을 포함하는, 소위 "eight_short_sequence" 윈도우 시퀀스가 적용될 수 있다. 추가적으로, 짧은 변환 길이를 이용해 변환된 이전 프레임이 선행하고, 그리고 긴 변환 길이를 이용해 변환되는 프레임이 그 뒤에 이어지는, 프레임에 대해서는 소위 "long_stop_sequence"가 적용될 수 있다. 가능한 윈도우 시퀀스들과 관련한 세부사항들에 대해서는, ISO/IEC 14496-3:2005 (E) 파트 3, 서브파트 4가 참조될 것이다. 또한, 아래에서 자세히 설명될 도 3, 4, 5, 6이 참조된다.
하지만, 몇몇 실시예들에서는 하나 또는 더 많은 부가적인 윈도우 타입들이 사용될 수 있음이 주지되어야 할 것이다. 예를 들어, 짧은 변환 길이가 사용되는 프레임이 현재의 프레임을 선행하는 경우, 및 짧은 변환 길이가 사용되는 프레임이 현재의 프레임을 뒤따르는 경우 소위 "stop_start_sequence" 윈도우가 적용될 수 있다.
따라서, 윈도우-기반 신호 변환기(130)는 윈도우 타입 정보(140)를 윈도우어/변환기(136)로 제공하여, 윈도우어/변환기(136)가 적절한 윈도우 타입("윈도우 시퀀스")을 사용할 수 있도록 구성된, 윈도우 시퀀스 결정기(138)를 포함한다. 예를 들어, 윈도우 시퀀스 결정기(130)는 입력 오디오 정보(110) 또는 전처리된 입력 오디오 정보(122)를 직접 평가하도록 구성될 수 있다. 하지만, 대안적으로 오디오 인코더(100)는 입력 오디오 정보(110) 또는 전처리된 입력 오디오 정보(122)를 수신하고, 입력 오디오 정보(110, 122)로부터 입력 오디오 정보(110, 122)의 인코딩과 관련된 정보를 추출하기 위해 심리음향적 모델을 적용하도록 구성된 심리-음향적 모델 프로세서(150)를 포함할 수도 있다. 예를 들어, 심리-음향적 모델 프로세서(150)는 입력 오디오 정보(110, 122) 내에서 전환들을 식별하고, 상응하는 입력 오디오 정보(110, 122)에서의 전환의 존재로 인해 짧은 전환 길이가 요청되는 프레임들을 시그널링할 수 있는 윈도우 길이 정보(152)를 제공하도록 구성될 수 있다.
심리-음향적 모델 프로세서(150)는 또한 어떤 스펙트럴 값들이 높은 해상도(즉, 미세한 양자화)로 인코딩될 필요가 있는지, 그리고 어떤 스펙트럴 값들이 오디오 콘텐트의 심각한 열화를 가져오지 않고 낮은 해상도(즉, 더 성근 양자화)로 인코딩될 수 있는지를 결정하도록 구성될 수 있다. 이러한 목적을 위해, 심리-음향적 모델 프로세서(150)는 심리-음향적 마스킹 효과들을 평가하도록 구성될 수 있으며, 그로 인해 더 낮은 심리-음향적 관련성의 스펙트럴 값들(또는 스펙트럴 값들의 대역들) 및 더 높은 심리-음향적 관련성의 다른 스펙트럴 값들(또는 스펙트럴 값들의 대역들)을 식별하게 된다. 따라서, 심리-음향적 모델 프로세서(150)는 심리-음향적 관련성 정보(154)를 제공한다.
오디오 인코더(100)는 추가적으로, 오디오 신호 파라미터들의 시퀀스(132) (예를 들어, 입력 오디오 정보(110, 122)의 시간-주파수 도메인 표현)를 수신하고, 그에 기초하여 오디오 신호 파라미터들의 후처리된 시퀀스(162)를 제공하는, 선택적 스펙트럴 프로세서(160)를 포함한다. 예를 들어, 스펙트럴 후처리기(post-processor)(160)는 시간적 노이즈 형성(shaping), 장기 예측, 지각적 노이즈 대체 및/또는 오디오-채널 프로세싱을 수행하도록 구성될 수 있다.
오디오 인코더(100)는,오디오 신호 파라미터들(예를 들어, 시간-주파수-도메인 값들 또는 "스펙트럴 값들")(132, 162)을 스케일하고, 양자화를 수행하고, 스케일되고 양자화된 값들을 인코딩하도록 구성된, 선택적 스케일링/양자화/인코딩 프로세서(170)를 또한 포함한다. 이러한 목적을 위해, 스케일링/양자화/인코딩 프로세서(170)는, 예를 들어, 어떤 스케일링 및/또는 어떤 양자화가 어떤 오디오 신호 파라미터들(또는 스펙트럴 값들)에 적용되어야 할지를 결정하기 위해, 심리-음향적 모델 프로세서에 의해 제공된 정보(154)를 이용하도록 구성될 수 있다. 그에 따라, 스케일되고, 양자화되고, 인코딩된 오디오 신호 파라미터들(또는 스펙트럴 값들)의 원하는 비트레이트가 얻어지도록 스케일링 및 양자화가 조정될 수 있다.
추가적으로, 오디오 인코더(100)는, 윈도우 시퀀스 결정기(138)로부터 윈도우 타입 정보(140)를 수신하고, 그에 기초하여, 윈도우어/변환기(136)에 의해 수행되는 윈도우잉/변환 동작에 사용되는 윈도우 타입을 서술하는 가변-길이-코드워드(182)를 제공하도록 구성된 가변-길이-코드워드 인코더(180)를 포함한다. 가변-길이-코드워드 인코더(180)와 관련된 세부사항들은 이어서 설명될 것이다.
또한, 오디오 인코더(100)는 선택적으로, 스케일되고, 양자화되고, 인코딩된 스펙트럴 정보(172)(오디오 신호 파라미터들의 시퀀스 또는 스펙트럴 값들(132)을 서술하는) 및 윈도우잉/변환 동작에 사용된 윈도우 타입을 서술하는 가변-길이-코드워드(182)를 수신하도록 구성된, 비트스트림 페이로드 포멧터(190)를 포함한다. 그에 따라, 비트스트림 페이로드 포멧터(190)는 정보(172) 및 가변-길이-코드워드(182)가 그 내로 통합된 비트스트림(192)을 제공한다. 비트스트림(192)은 인코딩된 오디오 정보로서 서비스되고, 매체에 저장될 수도 및/또는 오디오 인코더(100)로부터 오디오 디코더로 전달될 수도 있다.
상술한 바를 요약하면, 입력 오디오 정보(110)에 기초하여 인코딩된 오디오 정보(192)를 제공하도록 구성된다. 오디오 인코더(100)는 중요한 성분으로서, 입력 오디오 정보(110)의 복수의 윈도우된 부분들을 기초로 하여 오디오 신호 파라미터들의 시퀀스(132)(예를 들어, 스펙트럴 값들의 시퀀스)를 제공하도록 구성된, 윈도우-기반 신호 변환기(130)를 포함한다. 윈도우-기반 신호 변환기(130)는 입력 오디오 신호의 윈도우된 부분들을 획득하기 위한 윈도우 타입이 오디오 정보의 특성들에 따라 선택되도록 구성된다. 윈도우-기반 신호 변환기(130)는 더 긴 전환 슬로프를 가진 윈도우들 및 더 짧은 전환 슬로프를 가진 윈도우들의 사용 간에 스위칭하고, 또한 2 이상의 서로 다른 변환 길이를 갖는 윈도우들의 사용 간에 스위칭하도록 구성된다. 예를 들어, 윈도우-기반 신호 변환기(130)는, 입력 오디오 정보의 선행하는 부분(예를 들어, 프레임)을 변환하는 데 사용된 윈도우 타입에 따라, 그리고 입력 오디오 정보의 현재 부분의 오디오 콘텐트에 따라, 입력 오디오 정보의 현재 부분(예를 들어, 프레임)을 변환하는 데 사용되는 윈도우 타입을 결정하도록 구성된다. 하지만, 오디오 인코더는 예를 들어 가변-길이-코드워드 인코더(180)를 사용하여, 입력 오디오 정보의 현재 부분(예를 들어, 프레임)을 가변-길이-코드워드를 사용하여 변환하는 데 사용되는 윈도우 타입을 서술하는 윈도우 타입 정보(140)를 인코드하도록 구성된다.
변환 윈도우 타입들
아래에서는, 윈도우어/변환기(136)에 의해 적용될 수 있는, 그리고 윈도우 시퀀스 결정기(138)에 의해 선택되는, 서로 다른 윈도우들의 상세한 설명이 서술될 것이다. 하지만, 여기 설명된 윈도우들은 단순히 예시로서만 이해되어야 할 것이다. 따라서, 윈도우 타입의 효율적인 인코딩에 대한 본 발명의 개념들이 논의될 것이다.
이제, 변환 윈도우들의 서로 다른 타입들의 그래픽적 표현을 보여주는 도 3을 참조하여, 신규 샘플 윈도우들에 대한 개요가 주어질 것이다. 하지만, 변환 윈도우들을 적용하는 개념들이 심지어 보다 자세히 설명된 ISO/IEC 14496-3, 파트 3, 서브파트 4에 대해 추가적인 참조가 이루어진다.
도 3은 (상대적으로) 긴 좌측 윈도우-슬로프(310a)(1024 샘플들), 및 긴 우측 윈도우-슬로프(310b)(1024 샘플들)을 포함하는, 제1 윈도우 타입(310)의 그래픽적 표현을 보여준다. 전체 2048 개의 샘플들 및 1024 개의 스펙트럴 계수들이 제1 윈도우 타입(310)과 연관되어, 제1 윈도우 타입(310)은 소위 "긴 변환 길이"를 포함한다.
제2 윈도우 타입(312)은 "long_start_sequence" 또는 "long_start_window"로 지정된다. 제2 윈도우 타입은 (상대적으로) 긴 좌측 윈도우-슬로프(312a)(1024 샘플들), 및 (상대적으로) 짧은 우측 윈도우-슬로프(312b)(128 샘플들)을 포함한다. 전체 2048 개의 샘플들 및 1024 개의 스펙트럴 계수들이 제2 윈도우 타입과 연관되어, 제2 윈도우 타입(312)은 긴 변환 길이를 포함한다.
제3 윈도우 타입(314)은 "long_stop_sequence" 또는 "long_stop_window"로 지정된다. 제3 윈도우 타입(314)은 짧은 좌측 윈도우-슬로프(314a)(128 샘플들), 및 긴 우측 윈도우-슬로프(314b)(1024 샘플들)을 포함한다. 전체 2048 개의 샘플들 및 1024 개의 스펙트럴 계수들이 제3 윈도우 타입(314)과 연관되어, 제3 윈도우 타입은 긴 변환 길이를 포함한다.
제4 윈도우 타입(316)은 "stop_start_sequence" 또는 "stop_start_window"로 지정된다. 제4 윈도우 타입(316)은 짧은 좌측 윈도우-슬로프(316a)(128 샘플들), 및 짧은 우측 윈도우-슬로프(316b)(128 샘플들)을 포함한다. 전체 2048 개의 샘플들 및 1024 개의 스펙트럴 계수들이 제4 윈도우 타입과 연관되어, 제4 윈도우 타입은 "긴 변환 길이"를 포함한다.
제5 윈도우 타입(318)은 제1 내지 제4 윈도우 타입과는 상당히 다르다. 제5 윈도우 타입은, 시간적으로 중첩하도록 배열된, 8 개의 "짧은 윈도우들" 또는 서브-윈도우들(319a 내지 319h)의 중첩을 포함한다. 짧은 윈도우들(319a 내지 319h) 각각은 256 샘플들의 길이를 포함한다. 따라서, 256 샘플들을 128 개의 스펙트럴 값들로 변환시키는, "짧은" MDCT 변환은 짧은 윈도우들(319a 내지 319h) 각각과 연관된다. 따라서, 128개의 스펙트럴 값들의 8개의 세트들은 각각이 제5 윈도우 타입(318)과 연관되는 반면, 1024 개의 스펙트럴 값들의 단일 세트는 제1 내지 제4 윈도우 타입들(310, 312, 314, 316) 각각에 연관된다. 따라서, 제5 윈도우 타입은 "짧은" 변환 길이를 포함한다고 말할 수 있다. 그렇기는 하지만, 제5 윈도우 타입은 짧은 좌측 윈도우 슬로프(318a) 및 짧은 우측 윈도우 슬로프(318b)를 포함한다.
따라서, 제1 윈도우 타입(310), 제2 윈도우 타입( 312), 제3 윈도우 타입 (314), 또는 제4 윈도우 타입(316)에 연관된 프레임에 대해, 입력 오디오 정보의 2048 개의 샘플들이 결합하여 단일 그룹으로서 윈도우잉되고, 시간-주파수-도메인으로 MDCT 변환된다. 대조적으로, 제5 윈도우 타입(318)에 연관된 프레임에 대해서는, 8 개의 (적어도 부분적으로 중첩하는) 256 개의 샘플들의 서브셋 각각이 개별적으로(또는 별개로) MDCT 변환되어, MDCT 계수들(시간-주파수 값들)의 8 개의 세트들이 얻어지게 된다.
다시 도 3을 참조로 하여, 도 3은 복수의 부가적인 윈도우들을 보여준다. 선형-예측-도메인에서 인코딩된 이전 프레임이 현재의 프레임을 선행하는 경우, 이러한 부가적인 윈도우들, 소위 일컬어 "stop_1152_sequence" 또는 "stop_window_1152" (330) 및 소위 "stop_start_1152_sequence" 또는 "stop_start_window_1152"(332)가 적용될 수 있다. 이러한 경우들에서, 변환의 길이가 시간-도메인-에일리어징 결함들의 제거를 허용하기 위해 적용된다.
하지만, 선형-예측-도메인에서 인코딩된 후속 프레임이 현재의 프레임을 뒤따르는 경우, 부가적인 윈도우들 362, 366, 368, 382이 선택적으로 적용될 수 있다. 하지만, 윈도우 타입들 330, 332, 362, 366, 368, 382 은 선택사항으로 고려되어야 할 것이며, 본 발명의 개념을 구현하는 데 필요한 것은 아니다.
변환 윈도우 타입들 간의 전환
윈도우 시퀀스들(또는 변환 윈도우 타입들) 간의 허용된 전환들의 도시적 표현을 보여주는 도 4를 참조로 하여, 몇몇 추가사항들이 설명될 것이다. 각각이 하나의 윈도우 타입들(310, 312, 314, 316, 318)을 가지는 두 개의 후속하는 변환 윈도우들이 오디오 샘플들의 부분적으로 중첩하는 블록들에 적용됨을 명심하면, 부분 중첩으로 인한 결함들을 피하기 위해 제1 윈도우의 우측 윈도우 슬로프가 제2, 후속하는 윈도우의 좌측 윈도우 슬로프와 매칭되어야 함을 이해할 수 있다. 따라서, (두 연속하는 프레임들 중) 제1 프레임을 위한 윈도우 타입이 주어지는 경우, (두 연속하는 프레임들 중) 제2 프레임을 위한 윈도우 타입의 선택 은 제한적이다. 도 4에 도시된 바와 같이, 제1 윈도우가 “only_long_sequence”윈도우인 경우, 제1 윈도우의 뒤를 이어 “only_long_sequence” 윈도우 또는 “long_start_sequence” 윈도우만이 올 수 있다. 반대로, 제1 프레임을 변환하는 데 “only_long_sequence”윈도우가 사용된 경우, 제1 프레임을 뒤따르는 제2 프레임을 위해 “eight_short_sequence” 윈도우, “long_stop_sequence” 윈도우 또는 “stop_start_sequence”윈도우를 사용하는 것은 허용불가하다. 유사하게, 제1 프레임에서 “long_stop_sequence” 윈도우가 사용된 경우, 제2 프레임은 “only_long_sequence” 윈도우 또는 “long_start_sequence”윈도우를 사용할 수 있으나, 제2 프레임은 “eight_short_sequence”윈도우, “long_stop_sequence” 윈도우 또는 “stop_start_sequence” 윈도우는 사용할 수 없다.
반대로, 만약 (두 연속하는 프레임들 중) 제1 프레임이 “long_start_sequence” 윈도우, “eight_short_sequence” 윈도우, 또는 “stop_start_sequence” 윈도우를 사용하는 경우, (두 연속하는 프레임들 중) 제2 프레임은 “only_long_sequence” 윈도우 또는“long_start_sequence” 윈도우를 사용할 수 없으며, “eight_short_sequence” 윈도우, “long_stop_sequence” 윈도우 또는 “stop_start_sequence” 윈도우는 사용할 수 있다.
도 4에서 “check”에 의해 표시된 윈도우 타입들 “only_long_sequence”, “long_start_sequence”, “eight_short_sequence”, “long_stop_sequence” 및 “stop_start_sequence”간의 전환은 허용가능하다. 대조적으로, 몇몇 실시예들에서는“check”가 없는 윈도우 타입들 간의 전환은 허용 불가하다.
또한, 주파수-도메인 코어 모드 및 선형-예측-도메인 코어 모드 간의 전환이 가능한 경우, 부가적 윈도우 타입들 “LPD_sequence”, “stop_1152_sequence” 및 “stop_start_1152_sequence”가 사용가능함이 주지되어야 할 것이다. 그럼에도 불구하고, 이러한 가능성은 선택사항으로 고려되어야 할 것이며, 관련하여 아래에서 설명될 것이다.
예시적 윈도우 시퀀스
아래에서는 윈도우 타입들 310, 312, 314, 316, 318을 사용하는 윈도우 시퀀스가 설명될 것이다. 도 5는 이러한 윈도우 시퀀스의 그래픽적 표현을 보여준다. 도시된 바와 같이, 가로 좌표(510)는 시간을 나타낸다. 도 5에서 대략 50% 중첩하는 프레임들이 표시되고, “frame1” 내지 “frame7”로 지시되어 있다. 도 5는 예를 들어, 2048 샘플들을 포함하는 제1 프레임(520)을 도시한다. 제2 프레임(522)은 제1 프레임(520)에 대해 (대략) 1024 샘플들만큼 시간적으로 시프트되어, 제2 프레임이 제1 프레임(520)을 (대략) 50 % 중첩한다. 제3 프레임(524), 제4 프레임(526), 제5 프레임(528), 제6 프레임(530) 및 제7 프레임(532)의 시간적 배열이도 5에서 보여질 수 있다. “only_long_sequence”윈도우(540) (타입 310의)은 제1 프레임(520)과 연관된다. 또한, “only_long_sequence”윈도우(542) (타입 310의) 제2 프레임(522)과 연관된다. A “long_start_sequence”윈도우(544) (타입 312의) 는 제3 프레임과 연관되고, “eight_short_sequence”윈도우(546) (타입 318의)은 제4 프레임(526)과 연관되며, “stop_start_sequence”윈도우(548) (타입 316의) 는 제5 프레임과 연관되고, “eight_short_sequence”윈도우(550) (타입 318의) 은 제6 프레임(530)과 연관되고, “long_stop_sequence”윈도우(552) (타입 314의) 은 제7 프레임(532)과 연관된다. 따라서, 1024 MDCT 계수들의 단일 세트는 제1 프레임(520)과 관련되고, 1024 MDCT 계수들의 다른 단일 세트는 제2 프레임(522)과 관련되며, 역시 1024 MDCT 계수들의 다른 단일 세트는 제3 프레임(524)과 관련된다. 하지만, 128 MDCT 계수들의 8 개의 세트들은 제4 프레임(526)과 연관된다. 1024 MDCT 계수들의 단일 세트가 제5 프레임(528)과 연관된다.
도 5에 나타낸 윈도우 시퀀스는, 신호가 다른 시간 동안(예를 들어, 제1 프레임(520), 제2 프레임(522), 제3 프레임(524)의 시작, 및 제5 프레임(528)의 중앙, 및 제7 프레임(532)의 마지막 동안)에는 대략 안정적이지만, 제4 프레임(526)의 중앙 부분에서 과도 이벤트가 있는 경우, 제6 프레임(530)의 중앙 부분에서 다른 과도 이벤트가 있는 경우, 예를 들어 특별히 비트레이트-효율적인 인코딩 결과를 가져올 수 있다.
하지만, 아래에서 자세히 설명되는 바와 같이, 본 발명은 오디오 프레임들과 연관된 윈도우 타입들을 인코딩하기 위해 특별히 효율적인 개념을 생성한다. 이러한 이슈와 관련하여, 총 5 개의 서로 다른 윈도우 타입들(310, 312, 314, 316, 318)이 도 5의 윈도우 시퀀스(500)에 사용되고 있음을 주지해야 할 것이다. 따라서, 프레임 타입을 인코딩하는 데 3개 비트를 사용하는 것이 "보통(normally)" 필요하다 할 것이다. 대조적으로, 본 발명은 감소된 비트 요청을 갖는 윈도우의 인코딩을 허용하는 개념을 생성한다.
도 6a, 및 또한 도 7a, 7b 및 7c를 참조하여, 윈도우 타입을 인코딩하는 본 발명의 개념이 설명될 것이다. 도 6a은 윈도우 타입을 인코딩하는 규칙을 포함하는 윈도우 타입 정보의 제안된 구문을 나타내는 테이블을 보여준다. 설명을 위해, 윈도우 시퀀스 결정기(138)에 의해 가변-길이-코드워드 인코더(180)로 제공되는 윈도우 타입 정보(140)는 현재 프레임의 윈도우 타입을 서술하고, “only_long_sequence”, “long_start_sequence”, “eight_short_sequence”, “long_stop_sequence”, “stop_start_sequence”값들 중 하나, 그리고 선택적으로 심지어“stop_1152_sequence” 및 “stop_start_1152_sequence” 값들 중 하나를 취할 수 있음이 가정된다. 하지만, 본 발명의 인코딩 개념에 따르면 가변-길이-코드워드 인코더(180)는, 현재의 프레임과 연관된 윈도우의 우측 윈도우 슬로프의 길이를 서술하는, 1-비트 “window_length” 정보를 제공한다. 도 7a에서 볼 수 있는 바와 같이, 1-비트 “window_length” 정보의 “0”의 값은 1024 샘프들의 우측 윈도우 슬로프의 길이를 나타내고, “1”의 값은 128 샘프들의 우측 윈도우 슬로프의 길이를 나타낼 수 있다. 따라서, 윈도우 타입이 “only_long_sequence” (제1 윈도우 타입(310)) 또는 “long_stop_sequence” (제3 윈도우 타입(314))인 경우, 가변-길이-코드워드 인코더(180)는 “0”의 값의“window_length” 정보를 제공할 수 있다. 선택적으로, 가변-길이-코드워드 인코더(180)는 또한 타입 “stop_1152_sequence”의 윈도우에 대해 "0"의 “window_length” 정보를 제공할 수 있다. 대조적으로, 가변-길이-코드워드 인코더(180)는 “long_start_sequence” (제2 윈도우 타입(312)), “stop_start_sequence” (제4 윈도우 타입 (316)) 및 “eight_short_sequence”(제5 윈도우 타입 (318))에 대해 값 “1”의 “window_length” 정보를 제공할 수 있다. 선택적으로, 가변-길이-코드워드 인코더(180)는 “stop_start_1152_sequence” (윈도우 타입(332))에 대해 "1"의 "window_length” 정보를 제공할 수 있다. 뿐만 아니라, 가변-길이-코드워드 인코더(180)는 적어도 하나의 윈도우 타입들(362, 366, 368, 382)에 대해 값“1”의 “window_length” 정보를 제공할 수 있다.
그런데, 가변-길이-코드워드 인코더(180)는 현재 프레임의 1-비트 “window_length” 정보 값에 따라, 현재 프레임의, 다른 1-비트 정보, 다시 말해 소위 “transform_length” 정보를 선택적으로 제공하도록 구성된다. 만일 현재 프레임의 “window_length” 정보가 값 “0” (즉, 윈도우 타입들“only_long_sequence”, “long_stop_sequence” 및 선택적으로 “stop_1152_sequence”에 대해)을 취하는 경우, 가변-길이-코드워드 인코더(180)는 비트스트림(192)으로의 삽입을 위한 “transform_length” 정보를 제공하지 않는다. 반대로, 현재 프레임의 “window_length” 정보가 값 “1” (즉, 윈도우 타입들 “long_start_sequence”, “stop_start_sequence”, “eight_short_sequence” 및 선택적으로 “LPD_start_sequence” 및 “stop_start_1152_sequence”에 대해)을 취하는 경우, 가변-길이-코드워드 인코더(180)는 비트스트림(192)으로의 삽입을 위한 “transform_length” 정보를 제공한다. “transform_length” 정보가 현재의 프레임에 적용된 변환 길이를 나타내도록, “transform_length” 정보가, 만약 제공된다면, 제공된다. 따라서, “transform_length” 정보가 윈도우 타입들 “long_start_sequence”, “stop_start_sequence” 및, 선택적으로, “stop_start_1152_sequence” 및 “LPD_start_sequence”에 대해 제1 값(예를 들어, 값 “0") 을 취하도록 제공되며, 그에 따라 현재의 프레임에 적용된 MDCT 커널 크기가 1024 개의 샘플들 (또는 1152 샘플들)임을 나타낸다. 대조적으로, 만약 “eight_short_sequence”윈도우 타입이 현재의 프레임과 연관되는 경우, “transform_length” 정보가 가변-길이-코드워드 인코더(180)에 의해 제2 값(예를 들어, “1”의 값)을 취하기 위해 제공되며, 그에 따라 현재의 프레임과 연관된MDCT 커널 크기가 128 개의 샘플들임을 나타낸다(도 7b의 구문 표현 참조).
요약하자면, 가변-길이-코드워드 인코더(180)는 만일 현재의 프레임과 연관된 윈도우의 우측 윈도우 슬로프가, 상대적으로 길다면(긴 윈도우 슬로프(310b, 314b, 330b)), 즉, 윈도우 타입들 “only_long_sequence”, “long_stop_sequence” 및 “stop_1152_sequence”을 위해, 비트스트림(192)으로의 삽입을 위해 현재 프레임의 1-비트 “window_length” 정보만을 포함하는 1-비트 코드워드를 제공한다. 반대로, 가변-길이-코드워드 인코더(180), 만일 현재의 프레임과 연관된 윈도우의 우측 윈도우 슬로프가 짧은 윈도우 슬로프(312b, 316b, 318b, 332b)라면, 즉, 윈도우 타입들 “long_start_sequence”, “eight_short_sequence”, “stop_start_sequence”, 및 선택적으로 “stop_start_1152_sequence”을 위해, 비트스트림(192)으로의 삽입을 위해 1-비트 “window_length” 정보 및 1-비트 “transform_length” 정보를 포함하는 2-비트 코드워드를 제공한다. 따라서, “only_long_sequence”윈도우 타입 및 “long_stop_sequence”윈도우 타입(및 선택적으로 “stop_1152_sequence”윈도우 타입에 대해)의 경우에 1 비트가 절약된다.
따라서, 현재의 프레임과 연관된 윈도우 타입에 따라, 단지 하나 또는 두 비트가 5 개의 (심지어 더 많은) 가능한 윈도우 타입들 중의 선택을 인코딩하는 데 필요하다.
여기서, 도 6a는 윈도우 타입 칼럼(630)에서 정의되는 윈도우 타입을 칼럼(620)에서 보여지는 “window_length”정보 상으로, 그리고 칼럼(624)에서 보여지는 “transform_length”의 제공 상태 및 값(만약 요구되는 경우)으로 매핑하는 것을 보여줌을 주목해야 할 것이다.
도 6b는 현재의 프레임의 윈도우 타입으로부터 현재 프레임의 “window_length” 정보 및 “transform_length” 정보 (또는 “transform_length” 정보가 비트스트림(192)에서 생략되었음을 나타내는 지시자)를 도출하기 위한 매핑의 그래픽적 표현을 도시한다. 이러한 매핑은, 현재의 프레임의 윈도우 타입을 서술하고, 도 6b의 테이블의 칼럼(660)에 도시된 바와 같이 “window_length” 정보 상으로 또는 도 6b의 테이블의 칼럼(660)에 도시된 바와 같이 transform_length” 정보 상으로 매핑하는 윈도우 타입 정보(140)를 수신하는, 가변-길이-코드워드 인코더(180)에 의해 수행될 수 있다. 특히, 가변-길이-코드워드 인코더(180)는 “window_length” 정보가 기 설정된 값(예를 들어, "1"의)을 취하는 경우에만 “transform_length” 정보를 제공하고, 그렇지 않은 경우에는 “transform_length” 정보를 제공하지 않거나 또는 “transform_length” 정보의 비트스트림(192)으로의 삽입을 억제한다. 따라서, 주어진 프레임에 대해 비트스트림(192)에 포함된 윈도우-타입 비트의 개수는 도 6b의 테이블의 칼럼(664)에 표시된 바와 같이, 현재 프레임의 윈도우 타입에 따라, 변경될 수 있다.
몇몇 실시예들에서, 선형-예측-도메인에서 인코딩된 프레임이 현재 프레임을 뒤따르는 경우, 현재 프레임의 윈도우 타입이 조정 또는 변형될 수 있음이 주지되어야 한다. 하지만, 이것은 통상적으로 “window_length” 정보 및 선택적으로 제공되는 “transform_length” 정보 상으로의 윈도우 타입의 매핑에 영향을 미치지 않는다.
따라서, 오디오 인코더(100)는 비트스트림(192)이 구문을 따르도록 비트스트림(192)을 제공하도록 구성되며, 이는 도 10a 내지 10e를 참조하여 아래에서 설명될 것이다.
오디오 디코더 개요
아래에서는, 본 발명의 일 실시예에 따른 오디오 디코더가 도 2를 참조하여 보다 자세히 설명될 것이다. 도 2는 본 발명의 일 실시예에 따른 오디오 디코더의 도시적 다이어그램을 보여준다. 도 2의 오디오 디코더(200)는 인코딩된 오디오 정보를 포함하는 비트스트림(210)을 수신하고, 그에 기초하여, 디코딩된 오디오 정보(212) (예를 들어 시간 도메인 오디오 신호의 형태로)를 제공하도록 구성된다. 오디오 디코더(200)는, 비트스트림(210)을 수신하고, 비트스트림(210)으로부터 인코딩된 스펙트럴 값 정보(222) 및 가변-코드워드-길이 윈도우 정보(224)를 추출하도록 구성된, 선택적인 비트스트림 페이로드 디포멧터(220)를 포함한다. 비트스트림 페이로드 디포멧터(220)는, 제어 정보, 이득 정보 및 부가적 오디오 파라미터 정보와 같은 추가적인 정보를 비트스트림(210)으로부터 추출하도록 구성될 수 있다. 하지만, 이러한 추가적인 정보는 해당 기술분야에서 통상의 지식을 가진 자에게 잘 알려져 있다 할 것이며 본 발명과는 무관하다. 추가적인 세부사항들을 위해, 예를 들어 국제 표준 ISO/IEC 14496-3: 2005(E), 파트 3, 서브파트 4가 참조된다.
오디오 디코더(200)는, 인코딩된 스펙트럴 값 정보(222)를 디코딩하고, 역 양자화를 수행하고, 또한 역으로 양자화된 스펙트럴 값 정보의 재스케일링을 수행하여, 디코딩된 스펙트럴 값 정보(232)를 획득하도록 구성되는, 선택적 디코더/역 양자화기/재스케일러(230)를 포함한다. 오디오 디코더(200)는 또한 적어도 하나의 스펙트럴 전처리 단계들을 수행하도록 구성된, 선택적 스펙트럴 전처리기(240)를 포함한다. 몇몇 가능한 스펙트럴 전처리 단계들이 예를 들어, 국제 표준 ISO/IEC 14496-3: 2005(E), 파트 3, 서브파트 4에서 설명된다. 따라서, 디코더/역 양자화기/재스케일러 및 선택적 스펙트럴 전처리기(240)의 기능은 비트스트림(210)에 의해 표현되는 인코딩된 오디오 정보의 (디코딩되고 선택적으로 전처리된) 시간-주파수 표현(242)을 제공해주는 결과를 낳는다. 오디오 디코더(200)는, 주요 구성요소로서, 윈도우-기반 신호 변환기(250)를 포함한다. 윈도우-기반 신호 변환기(250)는 (디코딩된) 시간-주파수 표현(242)을 시간-도메인 오디오 신호(252)로 변환하도록 구성된다. 이러한 목적을 위해, 윈도우-기반 신호 변환기(250)는, 시간-주파수-도메인-투(to)-시간-도메인 변환을 수행하도록 구성될 수 있다. 예를 들어, 윈도우-기반 신호 변환기(250)의 변환기/윈도우어(254)는 시간-주파수 표현(242)으로서, 인코딩된 오디오 정보의 시간적으로 중첩하는 프레임과 연관된 변형된-이산-코사인-변환 계수들(MDCT 계수들)을 수신하도록 구성될 수 있다. 따라서, 변환기/윈도우어(254)는 인코딩된 오디오 정보의 윈도우된 시간-도메인 부분들(프레임들)을 획득하기 위해, 역-변형된-이산-코사인-변환(IMDCT)의 형태로, 랩드 변환을 수행하고, 중첩-및-가산 동작을 이용해 연속하는 윈도우된 시간-도메인 부분들(프레임들)을 중첩-및-가산하도록 구성될 수 있다. 시간-주파수 표현(242)에 기초하여 시간-도메인 오디오 신호(252)를 재구성할 때, 즉 윈도우잉 및 중첩-및-가산 동작과 결합하여, 역-변형된-이산-코사인-변환을 수행할 때, 변환기/윈도우어(254)는 적절한 재구성을 허락하기 위해, 또한 어떤 블록킹 결함들을 피하기 위해, 복수의 유효한 윈도우 타입들 중 하나의 윈도우를 선택할 수 있다.
오디오 디코더는 또한, 시간 도메인 오디오 신호(252)에 기초하여 디코딩된 오디오 정보(212)를 획득하도록 구성된 선택적 시간 도메인 후처리기(260)를 포함한다. 하지만, 디코딩된 오디오 정보(212)는 몇몇 실시예들에서는 시간 도메인 오디오 신호(252)와 동일함을 유의해야 한다. 또한, 오디오 디코더(200)는, 예를 들어, 선택적 비트스트림 페이로드 디포멧터(220)으로부터 가변-코드워드-길이 윈도우 정보(224)를 수신하도록 구성된, 윈도우 선택기(270)를 포함한다. 윈도우 선택기(270)는 변환기/윈도우어(254)로 윈도우 정보(272)(예를 들어 윈도우 타입 정보 또는 윈도우 시퀀스 정보)를 제공하도록 구성된다. 윈도우 선택기(270)는 실제 구현에 따라 윈도우-기반 신호 변환기(250)의 일부일 수도 아닐 수도 있음을 유의해야 할 것이다.
상술한 바를 요약하면, 오디오 디코더(200)는 인코딩된 오디오 정보(210)에 기초하여 디코딩된 오디오 정보(212)를 제공하도록 구성된다. 오디오 디코더(200)는 주요 구성성분으로, 인코딩된 오디오 정보(210)에 의해 서술되는 시간-주파수 표현(242)를 시간-도메인 표현(252)으로 매핑하도록 구성된, 윈도우-기반 신호 변환기(250)를 포함한다. 윈도우-기반 신호 변환기(250)는 윈도우 정보(272)에 기초하여, 서로 다른 전환 슬로프들의 윈도우들(예를 들어 서로 다른 전환 슬로프 길이들) 및 서로 다른 전환 길이들의 윈도우들을 포함하는 복수의 윈도우들 중 하나를 선택하도록 구성된다. 오디오 디코더(200)는 또 다른 주요 구성성분으로, 오디오 정보의 주어진 프레임과 연관된 시간-주파수 표현(242)의 주어진 부분을 처리하기 위한 하나의 윈도우를 선택하기 위해 가변-코드워드-길이 윈도우 정보(224)를 평가하도록 구성된 윈도우 선택기(270)을 포함한다. 오디오 디코더(200)의 다른 구성성분들, 소위 비트스트림 페이로드 디포멧터(220), 디코더/역 양자화기/재스케일러(230), 스펙트럴 전처리기(240), 및 시간-도메인-후처리기(260)는 선택적인 것으로 고려될 수 있지만, 오디오 디코더(200)의 몇몇 구현들에 위치할 수 있다.
아래에서는, 변환기/윈도우어(254)에 의해 수행되는 변환/윈도우잉을 위한 윈도우 선택과 관련한 세부사항들이 설명될 것이다. 하지만, 서로 다른 윈도우들의 선택의 중요성과 관련하여서는 앞선 설명들이 참조된다.
오디오 디코더(200)는 바람직하게 앞서 설명된 윈도우 타입들 “only_long_sequence”, “long_start_sequence”, “eight_short_sequence”, “long_stop_sequence” 및 “stop_start_sequence”을 사용할 수 있다. 하지만, 오디오 디코더는 선택적으로 추가적인 윈도우 타입들, 예를 들어, 소위 “stop_1152_sequence” 및 소위 “stop_start_1152_sequence”(둘다 선형-예측-도메인 인코딩된 프레임으로부터 주파수-도메인 인코딩된 프레임으로의 전환에 사용될 수 있는)을 사용 가능하다 할 것이다. 또한, 오디오 디코더(200)는, 주파수-도메인-인코딩된 프레임으로부터 선형-예측-도메인-인코딩된 프레임으로의 전환에 모두 적용될 수 있는 예를 들어, 윈도우 타입들 362, 366, 368, 382 와 같은 추가적인 윈도우 타입들을 사용하도록 추가적으로 구성될 수 있다. 하지만, 윈도우 타입들 330, 332, 362, 366, 368, 382의 사용은 선택사항으로 여겨질 수 있다.
하지만, 가변-코드워드-길이 윈도우 정보(224)로부터 적절한 윈도우 타입을 도출하기 위해 특별히 효율적인 해법을 제공하는 것은 본 발명의 오디오 디코더의 중요한 속성이라 할 것이다. 앞서 논의된 바와 같이, 이것은 도 10a 내지 10e를 참조하여 아래에서 좀더 설명될 것이다.
가변-코드워드-길이 윈도우 정보(224)는 통상적으로 프레임당 1 또는 2 비트를 포함한다. 바람직하게는, 가변-코드워드-길이 윈도우 정보는 현재 프레임의 “window_length”정보를 지니는 제1 비트 및 현재 프레임의 “transform_length”정보를 지니는 제2 비트를 포함하고, 제2 비트(“transform_length” 비트)의 존재는 제1 비트(“window_length” 비트)의 값에 의존적이다. 따라서, 윈도우 선택기(270)는 현재의 프레임과 연관된 “window_length”비트의 값에 따라 현재 프레임과 연관된 윈도우 타입에 관해 결정하기 위해 하나 또는 두 윈도우 정보 비트들(“window_length”및 “transform_length")을 선택적으로 평가하도록 구성된다. 그럼에도 불구하고, “transform_length" 비트가 없는 경우, 윈도우 선택기(270)는 “transform_length" 비트가 디폴트 값을 취하는 것으로 자연스레 가정할 수 있다.
바람직한 일 실시예에서, 윈도우 선택기(270)는 도 6a를 참조하여 앞서 설명된 바와 같이 구문을 평가하기 위해, 상기 구문에 따라 윈도우 정보( 272)를 제공하도록 구성된다.
먼저, 오디오 디코더(200)가 항상 주파수 도메인 코어 모드에서 동작하는 것으로, 즉 주파수 도메인 코어 모드 및 선형-예측 도메인 코어 모드 간의 스위칭이 없는 것으로 가정하면, 앞서 언급된 5 개의 윈도우 타입들(“only_long_sequence”, “long_start_sequence”, “long_stop_sequence”, “stop_start_sequence” 및 “eight_short_sequence”)을 구별하는 데 충분할 수 있다. 이 경우 이전 프레임의 “window_length”정보, 현재 프레임의 “window_length”정보 및 현재 프레임의 “transform_length”정보(만약 유효하다면)는 윈도우 타입을 결정하기에 충분할 수 있다.
예를 들어, 주파수-도메인 코어 모드에서의 동작만을 가정한다면(적어도 3개의 연속하는 프레임들의 시퀀스에 걸쳐), 이전 프레임의 “window_length”정보가 긴 전환 슬로프(값 "0")를 나타내고, 현재 프레임의 “window_length”정보가 긴 전환 슬로프(값 "0")를 나타낸다는 사실로부터, 이 경우 인코더에 의해 전송되지 않는“transform_length”정보를 평가하지 않고 윈도우 타입 “only_long_sequence”이 현재 프레임과 연관된다고 결론지을 수 있다.
다시 주파수-도메인 코어 모드에서의 동작만을 가정한다면(적어도 3개의 연속하는 프레임들의 시퀀스에 걸쳐), 이전 프레임의 “window_length”정보가 긴 (우측) 전환 슬로프(값 "0")를 나타낸다는 사실로부터, 현재 프레임의 “window_length”정보가 짧은 (우측) 전환 슬로프(값 "1")를 나타낸다는 사실로부터 윈도우 타입 “long_start_sequence”가, 심지어 현재 프레임의 (이 경우 인코더에 의해 전송 및/또는 생성되거나 그렇지 않을 수 있는)“transform_length”정보를 평가하지 않고도 현재 프레임과 연관된다고 결론지을 수 있다.
다시 주파수-도메인 코어 모드에서의 동작만을 가정한다면(적어도 3개의 연속하는 프레임들의 시퀀스에 걸쳐), 이전 프레임의 “window_length”정보가 짧은 (우측) 전환 슬로프(값 "1")를 나타내고, 현재 프레임의 “window_length”정보가 긴 (우측) 전환 슬로프(값 "0")를 나타낸다는 사실로부터 윈도우 타입 “long_stop_sequence”가, (어쨌든 통상적으로 상응하는 오디오 인코더에 의해 전송되지 않는) 현재 프레임의 “transform_length”정보를 평가하지 않고도, 현재 프레임과 연관된다고 결론지을 수 있다.
그런데, 이전 프레임의 “window_length”정보가 짧은 (우측) 전환 슬로프(값 "1")의 존재를 나타내고, 현재 프레임의 “window_length”정보 역시 짧은 (우측) 전환 슬로프(값 "1")의 존재를 나타낸다면, 현재 프레임의 “transform_length”정보를 평가할 필요가 있을 것이다. 이 경우, 현재 프레임의 “transform_length”정보가 제1 값(예를 들어 0)을 취하는 경우 윈도우 타입 “stop_start_sequence”가 현재의 프레임과 연관된다. 그렇지 않은 경우, 즉 현재 프레임의 “transform_length”정보가 제2 값(예를 들어 1)을 취하는 경우 윈도우 타입 “eight_short_sequence”가 현재의 프레임과 연관되는 것으로 결론내릴 수 있다.
요약하자면, 윈도우 선택기(270)는 현재 프레임과 연관된 윈도우 타입을 선택하기 위해 이전 프레임의 프레임의 “window_length”정보 및 현재 프레임의 “window_length”정보를 평가하도록 구성된다. 또한, 윈도우 선택기(270)는 현재 프레임의 “window_length”정보의 값에 따라, (및 가능하게는 또한 이전 프레임의 “window_length”정보 또는 코어 모드 정보에 따라) 현재 프레임과 연관된 윈도우 타입을 결정하기 위해 현재 프레임의 “transform_length”정보를 선택적으로 고려하도록 구성된다. 따라서, 윈도우 선택기(270)는 현재 프레임과 연관된 윈도우 타입을 결정하기 위해 가변-코드워드-길이 윈도우 정보를 평가하도록 구성된다.
도 6c는 이전 프레임의 "window_length" 정보, 현재 프레임의 "window_length" 정보, 및 현재 프레임의 "transform_length" 정보의, 현재의 프레임의 윈도우 타입으로의 매핑을 나타내는 테이블을 보여준다. 현재 프레임의 "window_length" 정보, 및 현재 프레임의 "transform_length" 정보는 가변-코드워드-길이 윈도우 정보(224)에 의해 표현될 수 있다. 현재의 프레임의 윈도우-타입은 윈도우 정보(272)에 의해 나타낼 수 있다. 도 6c의 테이블에 의해 서술된 매핑은 윈도우 선택기(270)에 의해 수행될 수 있다.
보여지는 바와 같이, 매핑은 이전 코어 모드에 의존한다. 이전 코어 모드가 "주파수-도메인 코어 모드"("FD"로 약칭됨)라면 매핑은 앞서 논의된 바와 같은 형태를 취할 것이다. 하지만, 이전 코어 모드가 "선형-예측-도메인 코어 모드"("LPD"로 약칭됨)인 경우에 매핑은 도 6c의 마지막 두 행에서 보여지는 바와 같이, 변경될 수 있다.
추가적으로 매핑은, 후속하는 코어 모드(즉, 후속하는 프레임과 연관된 코어 모드)가 주파수-도메인 코어 모드가 아니고, 선형-예측-도메인 코어 모드인 경우, 변경된다.
오디오 디코더(200)는 인코딩된 오디오 정보를 표현하는 비트스트림(210)을 파싱하고, 비트스트림으로부터 1-비트 윈도우-슬로프-길이 정보(또한 “window_length” 정보로 여기서 지시되는)를 추출하고, 1-비트 윈도우-슬로프-길이 정보의 값에 기초하여 1-비트 변환-길이 정보(또한 “transform_length” 정보로 여기서 지시되는)를 선택적으로 추출하도록 구성되는 비트스트림 파서(parser)를 선택적으로 포함한다. 이 경우 윈도우 선택기(270)는 현재 프레임의 윈도우-슬로프-길이 정보에 따라, 변환-길이-정보를 선택적으로 사용 또는 무시하여, 시간-주파수 표현(242)의 주어진 부분(예를 들어, 프레임)의 처리를 위한 하나의 윈도우 타입을 선택하도록 구성된다. 비트스트림 파서는 예를 들어, 비트스트림 페이로드 디포멧터(220)의 일부가 될 수 있으며, 앞서 논의된 바와 같이 그리고 도 10a-10e을 참조하여 또한 설명된 바와 같이 오디오 디코더(200)가 가변-코드워드-길이 윈도우 정보를 적절히 처리하도록 할 수 있다.
주파수-도메인 코어 모드 및 시간-도메인 코어 모드 간의 스위칭
몇몇 실시예에서, 오디오 인코더(100) 및 오디오 디코더(200)는 주파수 도메인 코어 모드 및 선형-예측-도메인 코어 모드 사이에서 스위칭하도록 구성될 수 있다. 앞서 설명된 바와 같이, 주파수-도메인 코어 모드가 상술한 설명들이 유지되는, 기본 코어 모드인 것으로 가정된다. 하지만, 만약 오디오 인코더가 주파수 도메인 코어 모드 및 선형-예측-도메인 코어 모드 사이에서 스위칭이 가능하다면, 주파수 도메인 코어 모드로 인코딩된 프레임들 및 선형-예측-도메인 코어 모드로 인코딩된 프레임들 사이에서 크로스-페이드(cross-fade)(중첩-및-가산 동작의 관점에서)가 여전히 존재할 수 있다. 따라서, 서로 다른 코어 모드로 코딩된 프레임들 간의 적절한 크로스-페이드를 보장하기 위해 적합한 윈도우들이 선택되어야 한다. 예를 들어, 몇몇 실시예들에서는, 선형-예측-도메인 코어 모드로부터 주파수 도메인 코어 모드로의 전환을 위해 조정된, 도 2B에 나타낸 두 개의 윈도우 타입들, 소위 윈도우 타입들 330 및 332이 있을 수 있다. 예를 들어, 윈도우 타입(330)은 긴 좌측 전환 슬로프를 가지는 주파수-도메인-인코딩된 프레임 및 선형-예측-도메인-인코딩된 프레임 간의 전환, 예를 들어, 선형-예측-도메인-인코딩된 프레임으로부터 윈도우 타입“only_long_sequence” 또는 윈도우 타입 “long_start_sequence”을 사용하는 주파수-도메인-인코딩된 프레임으로의 전환을 허락할 수 있다. 유사하게, 윈도우 타입 332는 짧은 좌측 전환 슬로프를 가지는 선형-예측-도메인-인코딩된 프레임으로부터 주파수-도메인-인코딩된 프레임으로의 전환(예를 들어, 선형-예측-도메인-인코딩된 프레임으로부터 윈도우 타입“eight_short_sequence” 또는“long_stop_sequence” 또는 “stop_start_sequence과 연관된 프레임으로의)을 허용할 수 있다. 따라서, 윈도우 선택기(270)는, 이전 프레임(현재 프레임에 선행하는)이 선형-예측 도메인에서 인코딩되고, 현재의 프레임이 주파수-도메인에서 인코딩된 것으로, 그리고, 현재의 프레임의 “window_length" 정보가 현재 프레임의 긴 우측 전환 슬로프(예를 들어 값 "0")를 나타내는 것으로 판명난 경우, 윈도우 타입 330을 선택하도록 구성된다. 반대로, 윈도우 선택기(270)는, 이전 프레임(현재 프레임에 선행하는)이 선형-예측 도메인에서 인코딩되고, 현재의 프레임이 주파수-도메인에서 인코딩된 것으로, 그리고, 현재의 프레임의 “window_length" 정보가 긴 우측 전환 슬로프가 현재의 프레임과 연관된 것(예를 들어 값 "1")을 나타내는 것으로 판명난 경우, 현재 프레임을 위해 윈도우 타입 332를 선택하도록 구성된다.
유사하게, 윈도우 선택기(270)는 후속 프레임(현재 프레임에 후속하는)이 선형-예측 도메인에서 인코딩된 반면 현재의 프레임이 주파수-도메인에서 인코딩된 사실에 대해 반응하도록 구성될 수 있다. 이 경우, 윈도우 선택기(270)는 주파수-도메인-인코딩된 프레임이 뒤따르도록 조정된, 윈도우 타입들(312, 316, 118, 332) 중 하나를 대신하여, 선형-예측-도메인-인코딩된 프레임이 뒤따르도록 조정된, 윈도우 타입들(362, 366, 368, 384) 중 하나를 선택할 수 있다. 하지만, 윈도우 타입 362에 의한 윈도우 타입 312의 대체, 윈도우 타입 368에 의한 윈도우 타입 318의 대체, 윈도우 타입 366에 의한 윈도우 타입 360의 대체, 및 윈도우 타입 382에 의한 윈도우 타입 332의 대체를 제외하고, 윈도우 타입의 선택은 주파수-도메인-인코딩된 프레임들만 있는 상황에 비해 변경되지 않을 수 있다.
따라서, 가변-코드워드-길이 윈도우 정보를 이용하는 본 발명의 메카니즘은, 심지어 주파수-도메인-인코딩 및 선형 예측-인코딩 간의 전환이 일어나는 경우에도, 코딩 효율성과 심각하게 타협하지 않고 적용될 수 있다.
비트스트림 구문 세부사항들
아래에서는 비트스트림(192, 210)의 비트스트림 구문과 관련한 세부사항들이 도 10a 내지 10e를 참조하여 설명될 것이다. 도 10a는 소위 통합된-스피치-및-오디오 코딩(“USAC”) 미가공(raw) 데이터 블록 “USAC_raw_data_block”의 구문 표현을 보여준다. 보여지는 바와 같이, USAC 미가공(raw) 데이터 블록은 소위 단일-채널요소(“single_channel_element()”) 및/또는 채널 쌍 요소(“channel_pair_element()”)를 포함한다. 하지만, USAC 미가공 데이터 블록은 당연히 둘 이상의 단일 채널 요소 및/또는 둘 이상의 채널-쌍-요소를 포함할 수 있다.
단일 채널 요소의 구문 표현을 보여주는 도 10b를 참조하여, 좀더 많은 세부사항들이 설명될 것이다. 도 10b에 도시된 바와 같이, 단일 채널 요소는, 예를 들어 “core_mode" 비트의 형태의 코어 모드 정보를 포함한다. 코어 모드 정보는 현재의 프레임이 선형-예측-도메인 코어 모드에서 또는 주파수-도메인 코어 모드에서 인코딩되었는지를 알려줄 수 있다. 현재의 프레임이 선형-예측-도메인 코어 모드에서 인코딩된 경우, 단일 채널 요소는 선형-예측-도메인 채널 스트림(“LPD_channel_stream()”)을 포함할 수 있다. 현재의 프레임이 주파수 도메인에서 인코딩된 경우, 단일 채널 요소는 주파수 도메인 채널 스트림(“FD_channel_stream()”)을 포함할 수 있다.
채널 쌍 요소의 구문 표현을 보여주는 도 10c를 참조하여, 좀더 많은 세부사항들이 설명될 것이다. 채널 쌍 요소는, 제1 채널의 코어 모드를 서술하는, 예를 들어 “core_mode0" 비트의 형태의 제1 코어 모드 정보를 포함할 수 있다. 추가적으로 채널 쌍 요소는, 제2 채널의 코어 모드를 서술하는, 예를 들어 “core_mode1" 비트의 형태의 제2 코어 모드 정보를 포함할 수 있다. 따라서, 서로 다른 또는 동일한 코어 모드가 채널 쌍 요소에 의해 서술되는 두 채널들에 대해 선택된다. 선택적으로, 채널 쌍 요소는 양쪽 채널에 대해 공통의 ICS 정보를 포함할 수 있다. 이 공통의 ICS 정보는 채널 쌍 요소에 의해 서술되는 두 채널들의 구성이 매우 유사한 경우 유리하다. 당연히, 공통의 ICS 정보는 두 채널들이 동일한 코어 모드에서 인코딩된 경우에만 바람직하게 사용된다.
추가적으로 채널 쌍 요소는 제1 채널을 위해 (코어 모드 정보 “core_mode0”에 의해) 정의된 코어 모드에 따라 제1 채널과 연관된 선형 예측-도메인 채널 스트림(“LPD_channel_stream()”) 또는 주파수 도메인 채널 스트림(“FD_channel_stream()”)을 포함한다.
또한 채널 쌍 요소는 제2 채널 (코어 모드 정보 “core_mode1”에 의해 시그널링될 수 있는)을 인코딩하는 데 사용된 코어 모드에 따라 제2 채널을 위한 선형 예측-도메인 채널 스트림(“LPD_channel_stream()”) 또는 주파수 도메인 채널 스트림(“FD_channel_stream()”)을 포함한다.
이제 ICS 정보의 표현을 위한 구문을 보여주는 도 10d를 참조하여, 몇몇 추가적인 세부사항들이 설명될 것이다. ICS 정보는 (도 10e를 참조하여 논의되는 바와 같이) 채널 쌍 요소 내에 또는 개별적 주파수-도메인 채널 스트림들 내에 포함될 수 있음을 유의해야 한다.
ICS 정보는, 예를 들어, 도 7a에 주어진 정의에 따라, 현재 프레임과 연관된 윈도우의 우측 전환 슬로프의 길이를 서술하는, 1-비트(또는 단일-비트)“window_length”를 포함한다. 만일, 그리고 만일 “window_length”정보가 기 설정된 값(예를 들어, "1")을 취하는 경우에만, ICS 정보가 추가적인 1-비트(또는 단일-비트)“transform_length”정보를 포함한다. “transform_length” 정보는, 예를 들어, 도 7b에 주어진 정의에 따라, MDCT 커널의 크기를 서술한다. 만일, “window_length”정보가 기 설정된 값과 다른 값(예를 들어, "0")을 취하는 경우, “transform_length”정보는 ICS 정보 내에(또는 상응하는 비트 스트림 내에) 포함되지 않는다 (또는 그로부터 생략된다). 하지만, 이 경우, 오디오 디코더의 비트스트림 파서는 디코더 변수 “transform_length”의 회복된 값을 디폴트 값(예를 들어 "0")으로 설정할 수 있다.
추가적으로, ICS 정보는 윈도우 전환의 형상을 서술하는 1-비트(또는 단일-비트) 정보일 수 있는, 소위 “window_shape”정보를 포함할 수 있다. 예를 들어, “window_shape”정보는 윈도우 전환이 사인/코사인 형상 또는 카이저-베셀-도출된(Kaiser-Bessel-derived) 형상을 가지는지 서술한다. “window shape”정보의 의미와 관련한 상세사항들을 위해 예를 들어, 국제 표준 ISO/IEC 14496-3:2005 (E), 파트 3, 서브파트 4 가 참조된다. 하지만, “window shape”정보는 기본 윈도우 타입은 영향을 받지 않도록 남겨둘 것이며, 일반적 특성들(긴 전환 슬로프 또는 짧은 전환 슬로프; 긴 변환 길이 또는 짧은 변환 길이)은 “window shape”정보에 영향을 받지 않는다는 점을 명심해야 할 것이다.
따라서, 본 발명에 따른 실시예에서, “window shape”정보, 즉, 전환의 형상들은 윈도우 타입, 즉 전환 슬로프들의 일반적 길이(긴 또는 짧은) 및 변환 길이(긴 또는 짧은)와는 별개로 결정된다.
추가적으로, ICS 정보는 윈도우-타입 의존적 스케일 인자 정보를 포함할 수 있다. 예를 들어, “window_length” 정보 및 “transform_length”정보가 현재의 윈도우 타입이 “eight_short_sequence”임을 나타내는 경우, ICS 정보는 최대 스케일 인자 대역을 서술하는 “max_sfb” 및 스케일 인자 대역의 그룹핑을 서술하는“scale_factor_grouping”을 포함할 수 있다. 이 정보와 관련한 상세사항들을 위해 예를 들어, 국제 표준 ISO/IEC 14496-3:2005 (E), 파트 3, 서브파트 4 가 참조된다. 대안적으로, 즉 “window_length” 정보 및 “transform_length”정보가 현재의 윈도우 타입이 “eight_short_sequence”아님을 나타내는 경우, ICS 정보는 최대 스케일 인자 대역을 서술하는 (“scale_factor_grouping”정보는 아니고)“max_sfb”정보만을 포함할 수 있다.
아래에서는, 주파수-도메인 채널 스트림(“FD_channel_stream()”)의 구문 표현을 보여주는 도 10e를 참조하여, 몇몇 추가적인 세부사항들이 설명될 것이다. 주파수-도메인 채널 스트림은 스펙트럴 값들과 연관된 글로벌 이득을 서술하는 “global_gain”정보를 포함한다. 추가적으로, 주파수-도메인 채널 스트림은, 이러한 정보가 이미 현재의 주파수 도메인 채널 스트림을 포함하는 채널 쌍 요소 내에 포함되어 있지 않는 이상 ICS 정보(“ICS_info()”)를 포함한다. ICS 정보와 관련한 상세사항들이 도 10d를 참조하여 설명되었다.
또한, 주파수-도메인 채널 스트림은, 디코딩된 스펙트럴 값 정보 또는 시간-주파수 표현의 값들(또는 스케일 인자 대역들)에 적용될 스케일링을 서술하는, 스케일 인자 데이터 (“scale_factor_data()”)를 포함한다. 주파수-도메인 채널 스트림은, 예를 들어 산술적으로 인코딩된 스펙트럴 데이터(ac_spectral_data()”)일 수 있는, 인코딩된 스펙트럴 데이터를 포함한다. 하지만, 스펙트럴 데이터의 다른 인코딩이 사용될 수도 있다. 스케일 인자 데이터 및 인코딩된 스펙트럴 데이터와 관련하여서는, 다시 국제 표준 ISO/IEC 14496-3:2005 (E), 파트 3, 서브파트 4 가 참조된다. 하지만, 당연히 필요한 경우, 스케일 인자 데이터의 및 스펙트럴 데이터의 여러 다른 인코딩들이 적용될 수도 있다.
결론 및 성능 평가
아래에서는, 몇몇 결론들이 내려지고, 본 발명의 개념의 성능 평가가 주어질 것이다. 본 발명의 실시예들은 예를 들어, 국제 표준 ISO/IEC 14496-3:2005 (E), 파트 3, 서브파트 4 에 정의된 오디오 코딩 방안들과 결합하여 적용될 수 있는 필요 비트레이트의 감소를 위한 개념을 생성한다. 하지만 여기서 논의된 개념들은 소위 "통합된 스피치 및 오디오 코딩" 접근법 (USAC)와 결합하여 또한 사용될 수 있다. 존재하는 비트스트림 정의들 및 디코더 구조들에 기초하여, 본 발명은, 윈도우 시퀀스들의 시그널링의 구문을 간략화하고, 복잡도를 증가시키지 않고 비트레이트를 절약하며, 디코더 출력 파형을 변경하지 않는, 비트스트림 구문 변형을 생성한다.
아래에서는, 본 발명에 내재하는 배경 및 아이디어가 간략히 논의되고 요약될 것이다. ISO/IEC 14496-3:2005 (E), 파트 3, 서브파트 4 에 따르는 현재의 오디오 코딩에서 및 또한 USAC 워킹 드래프트에서는, 두 비트의 고정된 길이를 갖는 코드워드가 윈도우 시퀀스를 시그널링하기 위해 송신된다. 또한, 이전 프레임의 윈도우 시퀀스 정보가 종종 올바른 시퀀스를 결정하는 데 필요하다.
하지만, 이러한 정보를 고려함으로써, 또한 코드워드 길이를 가변적으로(1 또는 2 비트) 만듦으로써, 비트레이트가 감소될 수 있다. 새로운 코드워드는 두 비트의 최대 길이(“window_length” 및 어떤 경우에는 “transform_length”)를 갖는다. 따라서, (전통적 접근법에 비해) 비트레이트는 절대 증가하지 않는다.
새로운 코드워드(“window_length” 및 어떤 경우에는 “transform_length”)는 우측 윈도우 슬로프의 길이를 나타내는 1 비트(“window_length”) 및 변환 길이를 나타내는 1 비트(“transform_length”)로 구성된다. 많은 경우들에서, 변환 길이는 이전 프레임의 정보, 즉 윈도우 시퀀스 및 코어 모드에 의해 명확히 도출될 수 있다. 따라서, 이러한 정보를 재-잰송할 필요가 없다. 그에 따라 비트 “transform_length”는 이러한 경우 생략되며, 비트레이트의 감소를 가져오게 된다.
아래에서는 본 발명에 따른 신규 비트스트림 구문을 위한 제안과 관련한 몇몇 세부사항들이 논의될 것이다. 제안된 신규 비트스트림 구문은 보다 직접적인 구현 및 윈도우 시퀀스의 시그널링을 허용하는데, 이는 단지 실질적으로 현재의 프레임의 윈도우 시퀀를 결정하는 데 필요한 정보, 즉 우측 윈도우 슬로프 및 변환 길이만을 전달하기 때문이다. 현재 프레임의 좌측 윈도우 슬로프는 이전 프레임의 우측 윈도우 슬로프로부터 도출된다.
본 제안(또는 제안된 신규 비트 스트림)은 윈도우 슬로프의 길이(“window_length” 정보) 및 변환 길이(“transform_length” 정보)에 관한 정보를 명확하게 분리시킨다. 가변-길이-코드워드는, 도 7a 및 7d에 따라, 제1 비트 “window_length”가 (현재 프레임의) 우측 윈도우 슬로프의 길이를 결정하고, 제2 비트“transform_length”가 (현재 프레임에 대한) MDCT의 길이를 결정하는, 두 경우의 조합이다. 이 경우, “window_length” ==0, 즉 긴 윈도우 슬로프가 선택되는 경우, “transform_length”의 전송이 생략될 수 있는데(또는 실질적으로 생략되는데), 이것은 1024 샘플들의 (또는 어떤 경우에는 1152 샘플들) MDCT 커널 크기가 의무적이기 때문이다.
도 7c는 “window_length” 및 “transform_length”의 모든 결합들에 대한 개요를 보여준다. 보는 바와 같이, 두 개의 1-비트 정보 아이템들“window_length” 및 “transform_length”의 3개의 의미있는 조합들만이 존재할 뿐이어서, 만약 “window_length”정보가 0의 값을 취한다면 원하는 정보의 전송에 부정적으로 영향을 주지 않으면서 “transform_length”의 전송이 생략될 수 있다.
아래에서는, “window_length”정보 및“transform_length”정보의 “window_sequence”정보(현재의 프레임에 사용될 윈도우 타입을 서술하는)로의 매핑이 간략히 요약될 것이다. 도 6a의 테이블은 예상되는 USAC 표준의 워킹 드래프트의 현재 상태의 비트스트림 요소 “window_sequence”가 새로운 제안된 비트스트림 요소들로부터 어떻게 도출될 수 있는지 보여준다. 이것은 제안된 변화가 정보 콘텐트의 측면에서 "트랜스패런트(transparent)"함을 나타낸다.
다시 말해, 가변-코드워드-길이 윈도우 정보의 사용에 기초하는, 윈도우 타입의 시그널링을 위한 본 발명의 비트레이트-감소된 구문은 "전체(full)" 정보 콘텐트를 전달할 수 있는데, 이것은 통상적으로는 더 높은 비트레이트를 사용해 전송된다. 또한, 본 발명의 개념은, 전통적인 오디오 인코더 및 디코더, 예를 들어, ISO/IEC 14496-3:2005 (E), 파트 3, 서브파트 4에 따른 또는 현재의 USAC 워킹 드래프트에 따른 오디오 인코더 또는 오디오 디코더에, 어떠한 큰 변형 없이 적용될 수 있다.
아래에서는, 획득가능한 비트 절약의 평가가 소개될 것이다. 하지만, 어떤 경우에는 비트 절약이 표시된 것보다 어느 정도 작을 수 있으며, 다른 경우들에서는 비트 절약이 논의된 비트 절약보다 훨씬 더 클 수 있음을 알아야 할 것이다. 도 9에 도시된 "비트 절약 평가"는, 전통적인 비트스트림(전통적인 비트스트림이 콜-포-프로포절(call-for-proposals)에 제출된 바 있음)과 비교해 신규 비트스트림 구문을 이용한 무손실 트랜트코딩에 대한 비트 절약 평가를 보여준다. 명확히 볼 수 있는 바와 같이, “transform_length”비트의 전송은 본 발명에 따르면, 12 kbps 모노(mono)에 대해 모든 주파수-도메인 프레임들의 95.67 %, 그리고 64 kbps에 대해 모든 주파수-도메인 프레임들의 95.15 % 까지 생략될 수 있다.
도 9로부터 보여지는 바와 같이, 오디오 콘텐트의 품질과 타협하지 않고, 초당 2 내지 24 비트가 평균적으로 절약될 수 있다. 비트레이트가 오디오 콘텐트의 저장 및 전송에 매우 중요한 자원이라는 사실의 관점에서, 이러한 개선은 매우 가치있는 것으로 여겨질 수 있다. 또한, 몇몇 경우에서, 예를 들어 프레임들이 상대적으로 짧게 선택되는 경우 비트레이트의 개선은 훨씬 더 클 수 있다.
상술한 바를 요약하면, 본 발명은 윈도우 시퀀스의 시그널링을 위한 새로운 비트스트림 구문을 제안한다. 새로운 비트스트림 구문은 데이터 레이트를 절약하며 예전의 구문에 비해 보다 논리적이고 보다 유연하다. 이것은 구현하기 쉽고 복잡도와 관련하여 어떤 단점도 갖지 않는다.
현재의 USAC 워킹 드래프트에 대한 비교
아래에서는, 현재의 USAC 워킹 드래프트의 기술적 사항에 대해 제안된 텍스트 변화가 서술될 것이다. 본 발명에 따라 제안된 본 발명의 변화들을 통합하기 위해서는, 아래의 섹션들이 갱신되어야 한다:
소위 ICS 정보의 구문이 서술되어 있는 "오디오 객체 타입 USAC를 위한 페이로드(payloads)"의 펜딩 정의에서, 전통적인 구문은 도 10b에 도시된 구문에 의해 대체되어야 한다.
또한, “data element” “window_sequence”는 데이터 요소들 “window_length” 및 “transform_length”의 아래의 정의에 의해 대체되어야 한다:
window_length: 어떤 윈도우 슬로프 길이가 이 윈도우 시퀀스의 우측 부분에 사용되는지를 결정하는 1-비트 필드; 및
transform_length: 어떤 변환 길이가 이 윈도우 시퀀스에 사용되는지를 결정하는 1-비트 필드.
추가적으로, 도움 요소 “window_sequence”의 정의는 아래와 같이 추가되어야 한다:
window_sequence: 도 8에 나타낸 테이블에 따라, 이전 프레임의 “window_length”, 현재 프레임의 “transform_length”및 “window_length”, 후속하는 프레임의 “core_mode”에 의해 정의되는 바와 같은 윈도우 시퀀스를 나타낸다.
도 8은 이전 프레임의 “window_length”정보, 현재 프레임의 “window_length”정보, 현재 프레임의 “transform_length”정보, 및 후속하는 프레임의 “core_mode”정보로부터 선택적으로 도출될 수 있는, 도움 요소 “window_sequence”의 정의를 보여준다.
또한, “window_sequence”및“window_shape”의 전통적인 정의는, 아래와 같은 “window_length”, “transform_length” 및 “window_shape”의 보다 적절한 정의들에 의해 대체될 수 있다:
window_length: 어떤 윈도우 슬로프 길이가 이 윈도우의 우측 부분에 사용되는지를 결정하는 1-비트 필드;
transform_length: 어떤 변환 길이가 이 윈도우에 사용되는지를 결정하는 1-비트 필드; 및
window_shape: 어떤 윈도우 함수가 선택되는지 나타내는 1-비트.
도 11에 따른 방법
도 11은 입력 오디오 정보에 기초하여 인코딩된 오디오 정보를 제공하는 방법의 플로우차트를 보여준다. 도 11에 따른 방법(1100)은 상기 입력 오디오 정보의 복수의 윈도우된 부분들에 기초하여 오디오 신호 파라미터들의 시퀀스를 제공하는 단계(1110)를 포함한다. 오디오 신호 파라미터들의 시퀀스를 제공할 때, 더 긴 전환 슬로프를 가진 윈도우들 및 더 짧은 전환 슬로프를 가진 윈도우들 사이에서, 그리고 또한 둘 이상의 다른 변환 길이를 가지는 윈도우들의 사용 사이에서 스위칭이 수행되어, 입력 오디오 정보의 특성들에 따라 입력 오디오 정보의 윈도우된 부분들을 획득하기 위한 윈도우 타입들을 조정한다. 방법(1100)은 또한, 가변-길이-코드워드들을 사용하여 입력 오디오 정보의 현재 부분을 변환하는 데 사용된 윈도우들의 타입을 서술하는 정보를 인코딩하는 단계를 포함한다.
도 12에 따른 방법
도 12는 인코딩된 오디오 정보에 기초하여 디코딩된 오디오 정보를 제공하는 방법의 플로우차트를 도시한다. 도 12에 따른 방법(1200)은 오디오 정보의 주어진 프레임과 연관된 시간-주파수 표현의 주어진 부분을 처리하기 위해, 서로 다른 전환 슬로프들의 윈도우들 및 서로 다른 변환 길이들과 연관된 윈도우들을 포함하는 복수의 윈도우들 중 하나의 윈도우를 선택하기 위해, 가변-코드워드-길이 윈도우 정보를 평가하는 단계(1210)를 포함한다. 도 12에 따른 방법(1200)은 또한, 선택된 윈도우를 이용해 인코딩된 오디오 정보에 의해 기술되는 시간-주파수 표현의 주어진 부분을 시간-도메인 표현으로 매핑하는 단계(1220)를 포함한다.
도 11 및 12에 따른 방법들은 본 발명의 장치들 및 본 발명의 비트스트림 특성들과 관련하여 여기 서술된 어떤 특징들 및 기능들에 의해서도 보충될 수 있음을 알아야 할 것이다.
구현 대체예들
몇몇 측면들이 장치의 관점에서 설명되었으나, 이러한 측면들은 또한, 블록 또는 장치가 방법의 단계 또는 방법의 단계의 특성에 상응하는 방법의 설명을 나타냄이 명백하다 할 것이다. 유사하게, 방법의 단계의 측면에서 서술된 측면들이 또한 상응하는 장치의 상응하는 블록 또는 아이템 또는 특성의 설명을 나타낸다.
본 발명의 어떤 단계들이라도 마이크로프로세서, 프로그램가능한 컴퓨터, fpga, 또는 예를 들어, 데이터 처리 하드웨어와 같은, 어떤 다른 하드웨어를 사용하여 설명될 수 있다.
본 발명의 인코딩된 오디오 신호는 디지털 저장 매체 상에 저장될 수도 있고, 인터넷과 같은 무선 통신 매체 또는 유선 통신 매체와 같은 통신 매체 상에서 전송될 수 있다.
특정 구현 요구사항들에 따라, 본 발명의 실시예들은 하드웨어 또는 소프트웨어적으로 구현될 수 있다. 구현예는, 전자적으로 판독가능한 제어 신호들을 저장하고 있고, 프로그램가능한 컴퓨터 시스템과 협조하는(또는 협조할 수 있어) 개별적 방법들이 실행되도록 하는, 예를 들어, 플로피 디스크, DVD, 블루-레이, CD, ROM, PROM, EPROM, EEPROM 또는 FLASH 메모리와 같은, 디지털 저장 매체를 이용하여 실행될 수 있다.
본 발명에 따른 몇몇 실시예들은 전자적으로 판독가능한 제어 신호들을 가지고, 프로그램가능한 컴퓨터 시스템과 협력할 수 있어 여기 설명된 방법들 중 하나가 실행되도록 하는, 데이터 캐리어를 포함한다.
일반적으로, 본 발명의 실시예들은, 컴퓨터 프로그램 제품이 컴퓨터 상에서 동작할 때 상기 방법들 중 하나를 실행하도록 동작하는 프로그램 코드를 가진 컴퓨터 프로그램 제품으로서 구현될 수 있다. 프로그램 코드는 예를 들어 머신 판독가능한 캐리어 상에 저장될 수 있다.
다른 실시예들은 머신 판독가능한 캐리어 상에 저장된, 여기 서술된 방법들 중 하나를 실행하는 컴퓨터 프로그램을 포함한다.
다시 말해, 본 발명의 방법의 실시예는, 그러므로 컴퓨터 프로그램이 컴퓨터 상에서 동작할 때 여기 서술된 방법들 중 하나를 실행하는 프로그램 코드를 가진, 컴퓨터 프로그램이다.
본 발명의 방법의 추가적 실시예는 그러므로, 여기 서술된 방법들 중 하나를 실행하는 컴퓨터 프로그램이 그 위에 기록된, 컴퓨터 프로그램을 포함하는 데이터 캐리어(또는 디지털 저장 매체, 또는 컴퓨터-판독가능한 매체)이다.
본 발명의 방법의 추가적 실시예는 그러므로, 여기 서술된 방법들 중 하나를 실행하는 컴퓨터 프로그램을 나타내는 신호 시퀀스 또는 데이터 스트림이다. 신호 시퀀스 또는 데이터 스트림은 예를 들어, 데이터 통신 연결을 통해, 예를 들어, 인터넷을 통해, 전달될 수 있도록 구성될 수 있다.
추가적 실시예는, 여기 서술된 방법들 중 하나를 실행하도록 구성된 또는 조정된, 처리 수단, 예를 들어, 컴퓨터, 또는 프로그램가능한 로직 디바이스를 포함한다.
추가적인 실시예는 여기 서술된 방법들 중 하나를 실행하는 컴퓨터 프로그램을 그 위에 설치한 컴퓨터를 포함한다.
몇몇 실시예들에서는, 프로그램가능한 로직 디바이스(예를 들어, 필드 프로그래머블 게이트 어레이)가 여기 서술된 방법들 중 몇몇 또는 모든 기능들을 수행하는 데 사용될 수 있다. 몇몇 실시예들에서는, 필드 프로그래머블 게이트 어레이가 여기 서술된 방법들 중 하나를 수행하기 위해 마이크로프로세서와 협력할 수도 있다. 일반적으로, 상기 방법들은 바람직하게는 어떤 하드웨어 장치에 의해서도 실행된다.
상술한 실시예들은 본 발명의 원리들을 예시적으로 설명한 것 뿐이다. 해당 분야에서 통상의 지식을 가진 자들에게는 여기 서술된 배열들 및 세부사항들의 변형 및 변동이 자명함이 이해되어야 할 것이다. 따라서, 본 발명은 첨부된 특허 청구항들의 범위에 의해서만 제한될 것이고, 여기서의 실시예들의 서술 및 설명에 의해 제시된 특정 세부사항들에 의해서는 제한되지 않을 것이 의도된다.

Claims (16)

  1. 인코딩된 오디오 정보(210)에 기초하여 디코딩된 오디오 정보(212)를 제공하는 오디오 디코더(200)로서,
    인코딩된 오디오 정보(210)에 의해 기술되는, 오디오 정보의 시간-주파수 표현(242)을 오디오 정보의 시간-도메인 표현(252)으로 매핑하도록 구성된 윈도우-기반 신호 변환기(250)를 포함하고,
    상기 윈도우-기반 신호 변환기는 윈도우 정보(272)를 이용해 서로 다른 전환(transition) 슬로프들(310a, 312a, 314a, 316a, 318a, 310b, 312b, 314b, 316b, 318b)의 윈도우들 및 서로 다른 변환 길이들과 연관된 윈도우들을 포함하는 복수의 윈도우들(310, 312, 314, 316, 318) 중 하나의 윈도우를 선택하도록 구성되고,
    상기 오디오 디코더(200)는 상기 오디오 정보의 주어진 프레임과 연관된 시간-주파수 표현의 주어진 부분을 처리하기 위한 윈도우를 선택하기 위해 가변-코드워드-길이 윈도우 정보(224)를 평가하도록 구성된 윈도우 선택기(270)를 포함하고,
    상기 오디오 디코더는 상기 가변-코드워드-길이 윈도우 정보를 이용해 전환 슬로프 선택 및 변환 길이 선택 간의 의존성 또는 인접한 프레임들의 윈도우 형상들 간의 상관성을 활용하도록 구성된, 오디오 디코더(200).
  2. 청구항 1에 있어서,
    상기 오디오 디코더는, 상기 인코딩된 오디오 정보를 나타내는 비트스트림(210)을 파싱하고 상기 비트스트림(210)으로부터, 윈도우 또는 윈도우 시퀀스의 우측 부분에 어떤 윈도우 슬로프 길이가 사용될지 결정하는 1-비트 윈도우-슬로프-길이 정보를 추출하며, 상기 1-비트 윈도우-슬로프-길이 정보의 값에 따라, 상기 윈도우 또는 윈도우 시퀀스에 어떤 변환 길이가 사용될지 결정하는 1-비트 변환-길이 정보를 선택적으로 추출하도록 구성된 비트스트림 파서(220)를 포함하고,
    상기 윈도우 선택기(270)는, 상기 시간-주파수 표현(242)의 주어진 부분을 처리하기 위한 윈도우 타입(310, 312, 314, 316, 318)을 선택하기 위해, 상기 윈도우-슬로프-길이 정보에 따라, 상기 변환-길이 정보를 선택적으로 사용 또는 무시하도록 구성된, 오디오 디코더(200).
  3. 청구항 1에 있어서,
    상기 윈도우 선택기(270)는, 상기 시간-주파수 표현(242)의 현재 부분을 처리하기 위한 윈도우의 좌측(left-sided) 윈도우-슬로프-길이가 상기 시간-주파수 표현(242)의 이전 부분을 처리하기 위한 윈도우의 우측(right-sided) 윈도우-슬로프-길이와 매칭되도록, 상기 시간-주파수 정보(242)의 현재 부분을 처리하기 위한 윈도우 타입(310, 312, 314, 316, 318)을 선택하도록 구성된, 오디오 디코더(200).
  4. 청구항 3에 있어서,
    상기 윈도우 선택기(270)는, 상기 시간-주파수 표현(242)의 이전 부분을 처리하기 위한 윈도우의 우측 윈도우-슬로프-길이가 긴 값을 취하고, 상기 오디오 정보의 이전 부분, 상기 오디오 정보의 현재 부분, 및 상기 오디오 정보의 후속(subsequent) 부분이 모두 주파수-도메인 코어 모드를 사용해 인코딩된 경우, 1-비트 윈도우-슬로프-길이 정보의 값에 따라 제1 타입(310)의 윈도우 및 제2 타입(312)의 윈도우 사이에서 선택하도록 구성되고;
    상기 윈도우 선택기(270)는, 상기 오디오 정보의 이전 부분을 처리하기 위한 윈도우의 우측 윈도우-슬로프-길이가 짧은 값을 취하고, 상기 오디오 정보의 이전 부분, 상기 오디오 정보의 현재 부분, 및 상기 오디오 정보의 후속 부분이 모두 주파수 도메인 코어 모드를 사용해 인코딩된 경우, 긴 우측 윈도우 슬로프를 지시하는 1-비트 윈도우-슬로프-길이 정보의 제1 값에 응답하여 제3 타입(314)의 윈도우를 선택하도록 구성되고; 및
    상기 윈도우 선택기(270)는, 상기 1-비트 윈도우-슬로프-길이 정보가 짧은 우측 윈도우 슬로프를 지시하는 제2 값을 취하고, 상기 오디오 정보(242)의 이전 부분을 처리하기 위한 윈도우의 우측 윈도우-슬로프-길이가 짧은 값을 취하고, 상기 오디오 정보의 이전 부분, 상기 오디오 정보의 현재 부분, 및 상기 오디오 정보의 후속 부분이 모두 주파수 도메인 코어 모드를 사용해 인코딩된 경우, 1-비트 변환-길이 정보에 따라, 제4 타입(316)의 윈도우 및 짧은-윈도우-시퀀스(319a 내지 319h)를 정의하는 제5 타입(318)의 윈도우 사이에서 선택하도록 구성되며;
    상기 제1 타입(310)의 윈도우는 상대적으로 긴 좌측 윈도우-슬로프-길이, 상대적으로 긴 우측 윈도우-슬로프-길이 및 상대적으로 긴 변환-길이를 포함하고;
    상기 제2 윈도우 타입(312)은 상대적으로 긴 좌측 윈도우-슬로프-길이, 상대적으로 짧은 우측 윈도우-슬로프-길이 및 상대적으로 긴 변환-길이를 포함하고;
    상기 제3 윈도우 타입(314)은 상대적으로 짧은 좌측 윈도우-슬로프-길이, 상대적으로 긴 우측 윈도우-슬로프-길이 및 상대적으로 긴 변환-길이를 포함하고;
    상기 제4 윈도우 타입(316)은 상대적으로 짧은 좌측 윈도우-슬로프-길이, 상대적으로 짧은 우측 윈도우-슬로프-길이 및 상대적으로 긴 변환-길이를 포함하고; 및
    상기 제5 윈도우 타입(318)의 윈도우 시퀀스(319a 내지 319h)는 오디오 정보(242)의 단일 부분과 연관된 복수의 윈도우들(319a 내지 319h)의 중첩(superposition)을 정의하고, 복수의 윈도우들의 윈도우들(319a 내지 319h) 각각은 상대적으로 짧은 변환 길이, 상대적으로 짧은 좌측 윈도우 슬로프 및 상대적으로 짧은 우측 윈도우 슬로프를 포함하고,
    현재 프레임이 선형-예측-도메인 코어 모드에서 인코딩된 경우, 미가공 데이터 블록은 선형-예측-도메인 채널 스트림을 포함하고, 현재의 프레임이 주파수 도메인에서 인코딩된 경우, 미가공 데이터 블록은 주파수 도메인 채널 스트림을 포함하는, 오디오 디코더(200).
  5. 청구항 1에 있어서,
    상기 윈도우 선택기(270)는, 상기 오디오 정보(242)의 이전 부분을 처리하기 위한 윈도우 타입이, 짧은 윈도우들의 윈도우-시퀀스(318)의 좌측 윈도우-슬로프-길이와 매칭되는 우측 윈도우-슬로프-길이를 포함하고, 시간-주파수 표현(242)의 현재 부분과 연관된 1-비트 윈도우-슬로프-길이 정보가 짧은 윈도우들의 윈도우-시퀀스(318)의 우측 윈도우-슬로프-길이와 매칭되는 우측 윈도우-슬로프-길이를 정의하는 경우에만, 상기 오디오 정보의 현재 정보의 가변-코드워드-길이 윈도우 정보(224)의 변환-길이 비트를 선택적으로 평가하도록 구성된, 오디오 디코더(200).
  6. 청구항 1에 있어서,
    상기 윈도우 선택기(270)는 또한, 상기 오디오 정보의 이전 프레임과 연관되고 상기 오디오 정보의 이전 프레임을 인코딩하기 위한 코어 모드를 서술하는 이전 코어 모드 정보를 수신하도록 구성되며,
    상기 윈도우 선택기(270)는, 상기 이전 코어 모드 정보에 따라 그리고 또한 상기 오디오 정보(242)의 현재 부분과 연관된 가변-코드워드-길이 윈도우 정보(224)에 따라 상기 시간-주파수 표현(242)의 현재 부분을 처리하기 위한 윈도우 타입을 선택하도록 구성되고,
    현재 프레임이 선형-예측-도메인 코어 모드에서 인코딩된 경우, 미가공 데이터 블록은 선형-예측-도메인 채널 스트림을 포함하고, 현재 프레임이 주파수 도메인에서 인코딩된 경우, 미가공 데이터 블록은 주파수 도메인 채널 스트림을 포함하는, 오디오 디코더(200).
  7. 청구항 1에 있어서,
    상기 윈도우 선택기(270)는 또한, 상기 오디오 정보(242)의 후속 부분과 연관되고 상기 오디오 정보의 후속 부분을 인코딩하기 위한 코어 모드를 서술하는 후속 코어 모드 정보를 수신하도록 구성되며,
    상기 윈도우 선택기(270)는, 상기 후속 코어 모드 정보에 따라 그리고 또한 상기 시간-주파수 표현(242)의 현재 부분과 연관된 가변-코드워드-길이 윈도우-정보(224)에 따라 상기 오디오 정보(242)의 현재 부분을 처리하기 위한 윈도우를 선택하도록 구성되고,
    현재 프레임이 선형-예측-도메인 코어 모드에서 인코딩된 경우, 미가공 데이터 블록은 선형-예측-도메인 채널 스트림을 포함하고, 현재 프레임이 주파수 도메인에서 인코딩된 경우, 미가공 데이터 블록은 주파수 도메인 채널 스트림을 포함하는, 오디오 디코더(200).
  8. 청구항 7에 있어서,
    상기 후속 코어 모드 정보가, 상기 오디오 정보의 후속 부분이 선형-예측-도메인 코어 모드를 사용하여 인코딩되는 것을 지시하는 경우, 상기 윈도우 선택기(270)는, 단축된 우측 슬로프를 가지는 윈도우들(362, 366, 368, 382)을 선택하도록 구성된, 오디오 디코더(200).
  9. 입력 오디오 정보(110)에 기초하여 인코딩된 오디오 정보(192)를 제공하는 오디오 인코더(100)로서,
    상기 입력 오디오 정보(110)의 복수의 윈도우된 부분들에 기초하여 오디오 신호 파라미터들의 시퀀스(132)를 제공하도록 구성된, 윈도우-기반 신호 변환기(130)를 포함하고,
    상기 윈도우-기반 신호 변환기(130)는 상기 입력 오디오 정보(110)의 특성들에 따라 상기 입력 오디오 정보의 윈도우된 부분들을 획득하기 위한 윈도우 타입들을 조정하도록 구성되고;
    상기 윈도우-기반 신호 변환기(130)는 더 긴 전환 슬로프를 가진 윈도우들(310, 312, 314, 316, 318) 및 더 짧은 전환 슬로프를 가진 윈도우들의 사용 사이에서 스위칭하도록, 그리고 또한 둘 이상의 다른 변환 길이를 가지는 윈도우들의 사용 사이에서 스위칭하도록 구성되고;
    상기 윈도우-기반 신호 변환기(130)는 입력 오디오 정보의 선행(preceding) 부분 및 상기 입력 오디오 정보의 현재 부분의 오디오 콘텐트를 변환하는 데 사용되는 윈도우 타입에 따라 상기 입력 오디오 정보의 현재 부분을 변환하는 데 사용되는 윈도우 타입을 결정하도록 구성되며;
    상기 오디오 인코더는 가변-길이-코드워드를 사용해 상기 입력 오디오 정보(110)의 현재 부분을 변환하는 데 사용되는 윈도우 타입을 서술하는 윈도우 정보(140)를 인코딩하도록 구성되며,
    상기 오디오 인코더는 가변-코드워드-길이 윈도우 정보를 이용해 전환 슬로프 선택 및 변환 길이 선택 간의 의존성 또는 인접한 프레임들의 윈도우 형상들 간의 상관성을 활용하도록 구성된, 인코더(100).
  10. 청구항 9에 있어서,
    상기 오디오 인코더는, 시간-주파수 표현의 주어진 부분과 연관된 가변-길이-코드워드가 시간-주파수 표현(132)의 주어진 부분을 획득하는 데 적용된 윈도우의 윈도우-슬로프-길이를 서술하는 단일-비트 정보를 포함하도록, 상기 가변-길이-코드워드를 제공하도록 구성되고,
    상기 오디오 인코더(100)는, 만약, 그리고 상기 윈도우-슬로프-길이를 기술하는 상기 단일-비트 정보가 기-설정된 값을 취하는 경우에만, 상기 가변-길이-코드워드가 시간-주파수 표현(132)의 주어진 부분을 획득하는 데 적용된 변환-길이를 서술하는 단일-비트 변환-길이 정보를 선택적으로 포함하도록, 상기 가변-길이-코드워드를 제공하도록 구성되는, 오디오 인코더(100).
  11. 청구항 9에 있어서,
    상기 오디오 인코더는, 비트스트림(192)의 개별 비트들을 사용해, 시간-주파수 표현의 주어진 부분을 획득하는 데 적용된 윈도우의 우측 윈도우-슬로프-길이를 서술하는 윈도우-슬로프-길이 정보 및 시간-주파수 표현(132)의 주어진 부분을 획득하는 데 적용된 변환 길이를 서술하는 변환-길이 정보를 인코딩하고, 상기 윈도우-슬로프-길이 정보의 값에 따라 상기 변환-길이 정보를 담는 비트의 존재에 대해 결정하도록 구성된, 오디오 인코더(100).
  12. 삭제
  13. 삭제
  14. 인코딩된 오디오 정보에 기초하여 디코딩된 오디오 정보를 제공하는 방법(1200)으로서,
    상기 오디오 정보의 주어진 프레임과 연관된 시간-주파수 표현의 주어진 부분을 처리하기 위해, 서로 다른 전환 슬로프들의 윈도우들 및 서로 다른 변환 길이들과 연관된 윈도우들을 포함하는 복수의 윈도우들 중 하나의 윈도우를 선택하기 위해, 가변-코드워드-길이 윈도우 정보를 평가하는 단계(1210); 및
    상기 선택된 윈도우를 이용해 상기 인코딩된 오디오 정보에 의해 기술되는 시간-주파수 표현의 주어진 부분을 시간-도메인 표현으로 매핑하는 단계(1220)를 포함하고,
    가변-코드워드-길이 윈도우 정보를 이용함으로써 전환 슬로프 선택 및 변환 길이 선택 간의 의존성 또는 인접한 프레임들의 윈도우 형상들 간의 상관성이 활용되는, 디코딩된 오디오 정보를 제공하는 방법(1200).
  15. 입력 오디오 정보에 기초하여 인코딩된 오디오 정보를 제공하는 방법(1100)으로서,
    상기 입력 오디오 정보의 복수의 윈도우된 부분들에 기초하여 오디오 신호 파라미터들의 시퀀스를 제공하는 단계(1110)로서, 더 긴 전환 슬로프를 가진 윈도우들 및 더 짧은 전환 슬로프를 가진 윈도우들의 사용 사이에서, 그리고 또한 둘 이상의 다른 변환 길이를 가지는 윈도우들의 사용 사이에서 스위칭이 수행되어, 상기 입력 오디오 정보의 특성들에 따라 상기 입력 오디오 정보의 윈도우된 부분들을 획득하기 위해 윈도우 타입들을 조정하는, 상기 단계(1110); 및
    가변-길이-코드워드들을 사용하여 상기 입력 오디오 정보의 부분들을 변환하는 데 사용된 윈도우들의 타입을 서술하는 정보를 인코딩하는 단계를 포함하고,
    가변-코드워드-길이 윈도우 정보를 이용함으로써 전환 슬로프 선택 및 변환 길이 선택 간의 의존성 또는 인접한 프레임들의 윈도우 형상들 간의 상관성이 활용되는, 인코딩된 오디오 정보를 제공하는 방법(1100).
  16. 컴퓨터 상에서 동작할 때, 청구항 14 또는 청구항 15에 따른 방법을 실행하는 컴퓨터 프로그램을 기록한 컴퓨터로 판독 가능한 매체.

KR1020117018596A 2009-01-28 2010-01-28 오디오 코딩 KR101316979B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14788709P 2009-01-28 2009-01-28
US61/147,887 2009-01-28
PCT/EP2010/050998 WO2010086373A2 (en) 2009-01-28 2010-01-28 Audio encoder, audio decoder, encoded audio information, methods for encoding and decoding an audio signal and computer program

Publications (2)

Publication Number Publication Date
KR20110124229A KR20110124229A (ko) 2011-11-16
KR101316979B1 true KR101316979B1 (ko) 2013-10-11

Family

ID=42289346

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117018596A KR101316979B1 (ko) 2009-01-28 2010-01-28 오디오 코딩

Country Status (15)

Country Link
US (1) US8762159B2 (ko)
EP (1) EP2382625B1 (ko)
JP (1) JP2012516462A (ko)
KR (1) KR101316979B1 (ko)
CN (1) CN102334160B (ko)
AR (1) AR075199A1 (ko)
AU (1) AU2010209756B2 (ko)
BR (1) BRPI1005300B1 (ko)
CA (1) CA2750795C (ko)
ES (1) ES2567129T3 (ko)
HK (1) HK1163914A1 (ko)
MX (1) MX2011007925A (ko)
RU (1) RU2542668C2 (ko)
TW (1) TWI459375B (ko)
WO (1) WO2010086373A2 (ko)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX2011000375A (es) * 2008-07-11 2011-05-19 Fraunhofer Ges Forschung Codificador y decodificador de audio para codificar y decodificar tramas de una señal de audio muestreada.
EP2311032B1 (en) * 2008-07-11 2016-01-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and decoder for encoding and decoding audio samples
US8457975B2 (en) * 2009-01-28 2013-06-04 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio decoder, audio encoder, methods for decoding and encoding an audio signal and computer program
KR101622950B1 (ko) * 2009-01-28 2016-05-23 삼성전자주식회사 오디오 신호의 부호화 및 복호화 방법 및 그 장치
KR101137652B1 (ko) * 2009-10-14 2012-04-23 광운대학교 산학협력단 천이 구간에 기초하여 윈도우의 오버랩 영역을 조절하는 통합 음성/오디오 부호화/복호화 장치 및 방법
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
CN103620672B (zh) 2011-02-14 2016-04-27 弗劳恩霍夫应用研究促进协会 用于低延迟联合语音及音频编码(usac)中的错误隐藏的装置和方法
MY164797A (en) * 2011-02-14 2018-01-30 Fraunhofer Ges Zur Foederung Der Angewandten Forschung E V Apparatus and method for processing a decoded audio signal in a spectral domain
BR112012029132B1 (pt) 2011-02-14 2021-10-05 Fraunhofer - Gesellschaft Zur Förderung Der Angewandten Forschung E.V Representação de sinal de informações utilizando transformada sobreposta
PT2676267T (pt) 2011-02-14 2017-09-26 Fraunhofer Ges Forschung Codificação e descodificação de posições de pulso de faixas de um sinal de áudio
CA2903681C (en) 2011-02-14 2017-03-28 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Audio codec using noise synthesis during inactive phases
AU2012217216B2 (en) 2011-02-14 2015-09-17 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for coding a portion of an audio signal using a transient detection and a quality result
EP4243017A3 (en) 2011-02-14 2023-11-08 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method decoding an audio signal using an aligned look-ahead portion
EP2676266B1 (en) 2011-02-14 2015-03-11 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Linear prediction based coding scheme using spectral domain noise shaping
KR101767175B1 (ko) 2011-03-18 2017-08-10 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 오디오 코딩에서의 프레임 요소 길이 전송
US8838261B2 (en) * 2011-06-03 2014-09-16 Apple Inc. Audio configuration based on selectable audio modes
JP5799707B2 (ja) * 2011-09-26 2015-10-28 ソニー株式会社 オーディオ符号化装置およびオーディオ符号化方法、オーディオ復号装置およびオーディオ復号方法、並びにプログラム
US20140046670A1 (en) * 2012-06-04 2014-02-13 Samsung Electronics Co., Ltd. Audio encoding method and apparatus, audio decoding method and apparatus, and multimedia device employing the same
KR20140075466A (ko) * 2012-12-11 2014-06-19 삼성전자주식회사 오디오 신호의 인코딩 및 디코딩 방법, 및 오디오 신호의 인코딩 및 디코딩 장치
SG11201506542QA (en) 2013-02-20 2015-09-29 Fraunhofer Ges Forschung Apparatus and method for encoding or decoding an audio signal using a transient-location dependent overlap
US20150100324A1 (en) * 2013-10-04 2015-04-09 Nvidia Corporation Audio encoder performance for miracast
EP2980791A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Processor, method and computer program for processing an audio signal using truncated analysis or synthesis window overlap portions
FR3024582A1 (fr) * 2014-07-29 2016-02-05 Orange Gestion de la perte de trame dans un contexte de transition fd/lpd
CN105632503B (zh) * 2014-10-28 2019-09-03 南宁富桂精密工业有限公司 信息隐藏方法及***
US10504530B2 (en) * 2015-11-03 2019-12-10 Dolby Laboratories Licensing Corporation Switching between transforms
ES2727462T3 (es) * 2016-01-22 2019-10-16 Fraunhofer Ges Forschung Aparatos y procedimientos para la codificación o decodificación de una señal multicanal de audio mediante el uso de repetición de muestreo de dominio espectral
EP3382700A1 (en) * 2017-03-31 2018-10-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for post-processing an audio signal using a transient location detection
WO2018201112A1 (en) 2017-04-28 2018-11-01 Goodwin Michael M Audio coder window sizes and time-frequency transformations
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
EP3483886A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Selecting pitch lag
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
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
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
EP3483884A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Signal filtering
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
EP3483880A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Temporal noise shaping
EP3483879A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Analysis/synthesis windowing function for modulated lapped transformation
KR20210022546A (ko) * 2018-06-21 2021-03-03 소니 주식회사 부호화 장치 및 방법, 복호 장치 및 방법, 그리고 프로그램
CN111862953B (zh) * 2019-12-05 2023-08-22 北京嘀嘀无限科技发展有限公司 语音识别模型的训练方法、语音识别方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000023674A (ko) * 1996-07-11 2000-04-25 슈베르트 헬무트 음성 신호를 부호화 및 복호화하는 방법
US20070009033A1 (en) 2005-07-11 2007-01-11 Lg Electronics Inc. Apparatus and method of processing an audio signal
US20080097764A1 (en) 2006-10-18 2008-04-24 Bernhard Grill Analysis filterbank, synthesis filterbank, encoder, de-coder, mixer and conferencing system

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2654294B1 (fr) 1989-11-08 1992-02-14 Aerospatiale Torche a plasma a amorcage par court-circuit.
JP2853553B2 (ja) * 1994-02-22 1999-02-03 日本電気株式会社 動画像符号化方式
KR100335611B1 (ko) * 1997-11-20 2002-10-09 삼성전자 주식회사 비트율 조절이 가능한 스테레오 오디오 부호화/복호화 방법 및 장치
KR100335609B1 (ko) * 1997-11-20 2002-10-04 삼성전자 주식회사 비트율조절이가능한오디오부호화/복호화방법및장치
US6446037B1 (en) * 1999-08-09 2002-09-03 Dolby Laboratories Licensing Corporation Scalable coding method for high quality audio
US6978236B1 (en) * 1999-10-01 2005-12-20 Coding Technologies Ab Efficient spectral envelope coding using variable time/frequency resolution and time/frequency switching
US7110953B1 (en) * 2000-06-02 2006-09-19 Agere Systems Inc. Perceptual coding of audio signals using separated irrelevancy reduction and redundancy reduction
JP2004506947A (ja) * 2000-08-16 2004-03-04 ドルビー・ラボラトリーズ・ライセンシング・コーポレーション 補足情報に応答するオーディオ又はビデオ知覚符号化システムのパラメータ変調
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
SE0402651D0 (sv) * 2004-11-02 2004-11-02 Coding Tech Ab Advanced methods for interpolation and parameter signalling
KR101215937B1 (ko) * 2006-02-07 2012-12-27 엘지전자 주식회사 IOI 카운트(inter onset intervalcount) 기반 템포 추정 방법 및 이를 위한 템포 추정장치
US7953595B2 (en) * 2006-10-18 2011-05-31 Polycom, Inc. Dual-transform coding of audio signals
EP2015293A1 (en) * 2007-06-14 2009-01-14 Deutsche Thomson OHG Method and apparatus for encoding and decoding an audio signal using adaptively switched temporal resolution in the spectral domain
KR101490246B1 (ko) * 2007-07-02 2015-02-05 엘지전자 주식회사 방송 수신기 및 방송신호 처리방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000023674A (ko) * 1996-07-11 2000-04-25 슈베르트 헬무트 음성 신호를 부호화 및 복호화하는 방법
US20070009033A1 (en) 2005-07-11 2007-01-11 Lg Electronics Inc. Apparatus and method of processing an audio signal
US20080097764A1 (en) 2006-10-18 2008-04-24 Bernhard Grill Analysis filterbank, synthesis filterbank, encoder, de-coder, mixer and conferencing system

Also Published As

Publication number Publication date
CA2750795A1 (en) 2010-08-05
CA2750795C (en) 2015-05-26
TW201032218A (en) 2010-09-01
RU2011133691A (ru) 2013-03-10
RU2542668C2 (ru) 2015-02-20
WO2010086373A3 (en) 2010-10-07
MX2011007925A (es) 2011-08-17
EP2382625B1 (en) 2016-01-06
EP2382625A2 (en) 2011-11-02
US20120022881A1 (en) 2012-01-26
AU2010209756A1 (en) 2011-08-25
BRPI1005300A2 (pt) 2016-12-06
TWI459375B (zh) 2014-11-01
ES2567129T3 (es) 2016-04-20
JP2012516462A (ja) 2012-07-19
KR20110124229A (ko) 2011-11-16
AR075199A1 (es) 2011-03-16
CN102334160A (zh) 2012-01-25
WO2010086373A2 (en) 2010-08-05
US8762159B2 (en) 2014-06-24
AU2010209756B2 (en) 2013-10-31
HK1163914A1 (zh) 2012-09-14
BRPI1005300B1 (pt) 2021-06-29
CN102334160B (zh) 2014-05-07

Similar Documents

Publication Publication Date Title
KR101316979B1 (ko) 오디오 코딩
KR101596183B1 (ko) 오디오 디코더, 오디오 인코더, 오디오 신호를 디코딩하는 방법, 오디오 신호를 인코딩하는 방법, 컴퓨터 프로그램 및 오디오 신호
JP5243661B2 (ja) オーディオ信号符号器、オーディオ信号復号器、オーディオコンテンツの符号化表現を供給するための方法、オーディオコンテンツの復号化表現を供給するための方法、および低遅延アプリケーションにおける使用のためのコンピュータ・プログラム
RU2764186C2 (ru) Декодирование битовых аудиопотоков с метаданными расширенного копирования спектральной полосы по меньшей мере в одном заполняющем элементе
EP3252761B1 (en) Noise filling in multichannel audio coding
JP7311940B2 (ja) 変換長切替えをサポートする周波数ドメインオーディオ符号化

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160929

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170920

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180920

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190927

Year of fee payment: 7