KR102275129B1 - 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합 - Google Patents

오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합 Download PDF

Info

Publication number
KR102275129B1
KR102275129B1 KR1020207005362A KR20207005362A KR102275129B1 KR 102275129 B1 KR102275129 B1 KR 102275129B1 KR 1020207005362 A KR1020207005362 A KR 1020207005362A KR 20207005362 A KR20207005362 A KR 20207005362A KR 102275129 B1 KR102275129 B1 KR 102275129B1
Authority
KR
South Korea
Prior art keywords
data
audio
bitstream
band
audio signal
Prior art date
Application number
KR1020207005362A
Other languages
English (en)
Other versions
KR20200022547A (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 돌비 인터네셔널 에이비
Priority to KR1020217020861A priority Critical patent/KR102390360B1/ko
Publication of KR20200022547A publication Critical patent/KR20200022547A/ko
Application granted granted Critical
Publication of KR102275129B1 publication Critical patent/KR102275129B1/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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • 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/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • 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/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/22Mode decision, i.e. based on audio signal content versus external parameters
    • 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/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/26Pre-filtering or post-filtering
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/038Speech enhancement, e.g. noise reduction or echo cancellation using band spreading techniques

Abstract

본 발명은 인코딩된 오디오 비트스트림을 디코딩하기 위한 방법을 개시한다. 이러한 방법은 인코딩된 오디오 비트스트림을 수신하는 단계 및 오디오 데이터를 디코딩하여 디코딩된 저대역 오디오 신호를 생성하는 단계를 포함한다. 이러한 방법은 고주파 재구성 메타데이터를 추출하는 단계 및 분석 필터뱅크로 디코딩된 저대역 오디오 신호를 필터링하여 필터링된 저대역 오디오 신호를 생성하는 단계를 더 포함한다. 이러한 방법은 오디오 데이터에 대해 스펙트럼 변환 또는 하모닉 트랜스포지션이 수행되어야 하는지를 나타내는 플래그를 추출하는 단계 및 플래그에 따라 필터링된 저대역 오디오 신호 및 고주파 재구성 메타데이터를 사용하여 오디오 신호의 고대역 부분을 재생성하는 단계를 더 포함한다.

Description

오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합{Backward-compatible integration of harmonic transposer for high frequency reconstruction of audio signals}
본 실시형태는 오디오 신호 처리에 관한 것으로, 보다 구체적으로는, 오디오 데이터에 대해 기본 형태의 고주파 재구성(high frequency reconstruction)("HFR") 또는 향상된 형태의 HFR 중 어느 하나가 수행되도록 명시하는 제어 데이터를 갖는 오디오 비트스트림의 인코딩(encoding), 디코딩(decoding) 또는 트랜스코딩(transcoding)에 관한 것이다.
전형적인 오디오 비트스트림은 오디오 콘텐츠의 하나 이상의 채널을 나타내는 오디오 데이터(예를 들어, 인코딩된 오디오 데이터)와, 오디오 데이터 또는 오디오 콘텐츠의 적어도 하나의 특성을 나타내는 메타데이터 둘 모두를 포함한다. 인코딩된 오디오 비트스트림을 생성하기 위한 하나의 잘 알려진 포맷은 MPEG 표준 ISO/IEC 14496-3:2009에 기술된 MPEG-4 AAC(Advanced Audio Coding) 포맷이다. MPEG-4 표준에서, AAC는 "고급 오디오 코딩(advanced audio coding)"을, 그리고 HE-AAC는 "고효율 고급 오디오 코딩(high-efficiency advanced audio coding)"을 나타낸다.
MPEG-4 AAC 표준은 컴플레인트 인코더(complaint encoder) 또는 디코더에 어떤 오브젝트 및 코딩 도구가 있는지를 결정하는 몇 가지 오디오 프로파일을 정의한다. 이러한 오디오 프로파일들 중 3개는 (1) AAC 프로파일, (2) HE-AAC 프로파일, 및 (3) HEAAC v2 프로파일이다. AAC 프로파일은 AAC 낮은 복잡도(low complexity)(또는 "AAC-LC") 오브젝트 유형을 포함한다. AAC-LC 오브젝트는 일부 조정이 있는 MPEG-2 AAC 낮은 복잡도 프로파일과 대응관계에 있고, 스펙트럼 대역 복제(spectral band replication)("SBR") 오브젝트 유형도 포함하지 않고 파라메트릭 스테레오(parametric stereo)("PS") 오브젝트 유형도 포함하지 않는다. HE-AAC 프로파일은 AAC 프로파일의 수퍼세트(superset)이며 SBR 오브젝트 유형을 추가로 포함한다. HE-AAC v2 프로파일은 HE-AAC 프로파일의 수퍼세트이며 PS 오브젝트 유형을 추가로 포함한다.
SBR 오브젝트 유형은 지각(perceptual) 오디오 코덱의 압축 효율성을 크게 개선하는 중요한 고주파 재구성("HFR") 코딩 도구인 스펙트럼 대역 복제 도구를 포함한다. SBR은 수신기 측에서(예를 들어, 디코더에서) 오디오 신호의 고주파 성분을 재구성한다. 따라서, 인코더는 저주파 성분들만 인코딩하고 전송할 필요가 있어, 낮은 데이터 레이트에서 훨씬 더 높은 오디오 품질을 가능하게 한다. SBR은 인코더로부터 획득된 사용 가능한 대역폭 제한 신호 및 제어 데이터로부터, 데이터 레이트를 감소시키기 위해, 이전에 잘라낸 하모닉 시퀀스의 복제에 기초한다. 음색(tonal) 및 잡음 같은 성분 간의 비율은 잡음 및 사인파의 임의적인 추가뿐만 아니라 적응적 역 필터링(adaptive inverse filtering)에 의해 유지된다. MPEG-4 AAC 표준에서, SBR 도구는 스펙트럼 패칭(spectral patching)(선형 변환(linear translation) 또는 스펙트럼 변환(spectral translation)이라고도 지칭됨)을 수행하는데, 여기서 다수의 연속적인 QMF(Quadrature Mirror Filter) 부대역(subbands)이 오디오 신호의 전송된 저대역(lowband) 부분으로부터, 디코더에서 생성되는 오디오 신호의 고대역(highband) 부분으로 복사된다(또는 "패치된다" (patched)).
비교적 낮은 크로스 오버 주파수를 갖는 음악 콘텐츠와 같은 특정 오디오 유형에 대해서는 스펙트럼 패칭이 이상적이지 않을 수 있다. 그러므로 스펙트럼 대역 복제를 개선하는 기술이 요구된다.
제1 부류의 실시형태는 인코딩된 오디오 비트스트림을 디코딩하기 위한 방법에 관한 것이다. 이러한 방법은 인코딩된 오디오 비트스트림을 수신하는 단계 및 디코딩된 저대역 오디오 신호를 생성하기 위해 오디오 데이터를 디코딩하는 단계를 포함한다. 방법은 고주파 재구성 메타데이터(high frequency reconstruction metadata)를 추출하는 단계 및 필터링된 저대역 오디오 신호를 생성하기 위해 분석 필터뱅크(filterbank)로 디코딩된 저대역 오디오 신호를 필터링하는 단계를 더 포함한다. 방법은 오디오 데이터에 대해 스펙트럼 변환(spectral translation) 또는 하모닉 트랜스포지션(harmonic transposition)이 수행되어야 하는지를 나타내는 플래그를 추출하는 단계 및 플래그에 따라 필터링된 저대역 오디오 신호 및 고주파 재구성 메타데이터를 사용하여 오디오 신호의 고대역 부분을 재생성하는 단계를 더 포함한다. 마지막으로, 방법은 광대역 오디오 신호를 형성하기 위해, 필터링된 저대역 오디오 신호와 재생성된 고대역 부분을 결합하는 단계를 포함한다.
제2 부류의 실시형태는 인코딩된 오디오 비트스트림을 디코딩하기 위한 오디오 디코더에 관한 것이다. 디코더는 인코딩된 오디오 비트스트림 - 인코딩된 오디오 비트스트림은 오디오 신호의 저대역 부분을 나타내는 오디오 데이터를 포함함 - 수신하기 위한 입력 인터페이스 및 디코딩된 저대역 오디오 신호를 생성하기 위해 오디오 데이터를 디코딩하기 위한 코어 디코더(core decoder)를 포함한다. 디코더는 또한 인코딩된 오디오 비트스트림으로부터 고주파 재구성 메타데이터 - 고주파 재구성 메타데이터는 연속하는 번호의 부대역을 오디오 신호의 저대역 부분으로부터 오디오 신호의 고대역 부분으로 선형적으로 변환하는 고주파 재구성 프로세스에 대한 동작 파라미터를 포함함 - 를 추출하기 위한 역다중화기(demultiplexer) 및 필터링된 저대역 오디오 신호를 생성하기 위해 디코딩된 저대역 오디오 신호를 필터링하기 위한 분석 필터뱅크를 포함한다. 디코더는 인코딩된 오디오 비트스트림으로부터 오디오 데이터에 대하여 선형 변환 또는 하모닉 트랜스포지션이 수행되어야 하는지를 나타내는 플래그를 추출하기 위한 역다중화기 및 플래그에 따라 필터링된 저대역 오디오 신호 및 고주파 재구성 메타데이터를 사용하여 오디오 신호의 고대역 부분을 재생성하기 위한 고주파 재생성기를 더 포함한다. 마지막으로, 디코더는 광대역 오디오 신호를 형성하기 위해, 필터링된 저대역 오디오 신호와 재생성된 고대역 부분을 결합하여 위한 합성(synthesis) 필터뱅크를 포함한다.
다른 부류의 실시형태는 향상된 스펙트럼 대역 복제(enhanced spectral band replication)(eSBR) 처리가 수행되어야 하는지를 식별하는 메타데이터를 포함하는 오디오 비트스트림을 인코딩 및 트랜스코딩하는 방법에 관한 것이다.
도 1은 진보적 방법의 본 발명의 실시형태를 수행하도록 구성될 수 있는 시스템의 일 실시형태의 블록도이다.
도 2는 본 발명의 진보적 오디오 처리 유닛의 실시형태인 인코더의 블록도이다.
도 3은 본 발명의 진보적 오디오 처리 유닛의 일 실시형태인 디코더, 및 임의적으로 또한 그에 결합된 후처리기(post-processor)를 포함하는 시스템의 블록도이다.
도 4는 본 발명의 진보적 오디오 처리 유닛의 일 실시형태인 디코더의 블록도이다.
도 5는 본 발명의 진보적 오디오 처리 유닛의 다른 실시형태인 디코더의 블록도이다.
도 6은 본 발명의 진보적 오디오 처리 유닛의 또 다른 실시형태의 블록도이다.
도 7은 분할된 세그먼트를 포함하는 MPEG-4 AAC 비트스트림의 블록도이다.
표기법 및 명명법
특허청구범위를 비롯하여, 본 개시내용의 전체에 걸쳐, 신호 또는 데이터 "상에(on)" 동작(예를 들어, 신호 또는 데이터를 필터링, 스케일링, 변환 또는 그것에 이득의 적용)을 수행한다는 표현은 넓은 의미에서, 신호 또는 데이터에 대해 직접, 또는 신호 또는 데이터의 처리된 버전에 대해 (예를 들어, 그에 대한 동작의 수행 전에 예비 필터링 또는 전처리를 겪은 신호의 버전에 대해) 동작을 수행하는 것을 나타내기 위해 사용된다.
청구항을 포함하는 본 개시에 걸쳐, "오디오 처리 유닛(audio processing unit)" 또는 "오디오 프로세서(audio processor)"라는 표현은 넓은 의미에서, 오디오 데이터를 처리하도록 구성된 시스템, 디바이스, 또는 장치를 나타내기 위해 사용된다. 오디오 처리 유닛의 예로는 인코더, 트랜스코더, 디코더, 코덱(codecs), 전처리 시스템, 후처리 시스템, 및 비트스트림 처리 시스템(때때로 비트스트림 처리 도구라고 지칭함)을 포함하지만, 이들로 국한되는 것은 아니다. 이동 전화, 텔레비전, 랩톱, 및 태블릿 컴퓨터와 같은 거의 모든 가전 제품들은 오디오 처리 유닛 또는 오디오 프로세서를 포함한다.
특허청구범위를 비롯하여, 본 개시내용의 전체에 걸쳐, "결합하다(couples)" 또는 "결합된(coupled)"이라는 용어는 넓은 의미에서, 직접 또는 간접 연결을 의미하기 위해 사용된다. 따라서, 제1 디바이스가 제2 디바이스에 결합되면, 그 연결은 직접 연결을 통해, 또는 다른 디바이스 및 연결을 통한 간접 연결을 통한 것일 수 있다. 더욱이, 다른 컴포넌트에 또는 다른 컴포넌트와 통합되는 컴포넌트들도 또한 서로 결합된다.
발명의 실시형태의 상세한 설명
MPEG-4 AAC 표준은 인코딩된 MPEG-4 AAC 비트스트림이, 비트스트림의 오디오 콘텐츠를 디코딩하기 위해 디코더에 의해 (적용되어야 할 것이 있다면) 적용될 각 유형의 고주파 재구성("HFR") 처리를 나타내는, 및/또는 그러한 HFR 처리를 제어하는, 및/또는 비트스트림의 오디오 콘텐츠를 디코딩하기 위해 이용될 적어도 하나의 HFR 도구의 적어도 하나의 특성 또는 파라미터를 나타내는 메타데이터를 포함한다는 것을 고려한다. 본 명세서에서, 스펙트럼 대역 복제(spectral band replication, "SBR")와 함께 사용하기 위한 MPEG-4 AAC 표준에서 기술되거나 언급되는 이러한 유형의 메타데이터를 나타내기 위해 "SBR 메타데이터(SBR metadata)"라는 표현을 사용한다. 관련 기술분야에서 통상의 기술자에 의해 이해되는 바와 같이, SBR은 HFR의 한 형태이다.
SBR은 기본 코덱이 원본 샘플링 레이트의 절반의 샘플링 레이트로 동작하는 듀얼 레이트 시스템(dual-rate system)으로서 사용되는 것이 바람직하지만, SBR은 원래의 샘플링 속도로 동작한다. SBR 인코더는 기본 코어 코덱과 병행하여 작동하지만, 더 높은 샘플링 속도로 작동한다. SBR은 주로 디코더에서 후공정이지만, 디코더에서 가장 정확한 고주파 재구성을 보장하기 위해 중요한 파라미터는 인코더에서 추출된다. 인코더는 현재 입력 신호 세그먼트 특성에 적합한 시간 및 주파수 범위/분해능에 대한 SBR 범위의 스펙트럼 엔벨로프를 추정한다. 스펙트럼 엔벨로프는 복잡한 QMF 분석 및 후속 에너지 계산에 의해 추정된다. 주어진 입력 세그먼트에 대해 가장 적합한 시간 주파수 분해능을 보장하기 위해, 스펙트럼 엔벨로프의 시간 및 주파수 분해능은 높은 수준의 자유도로 선택될 수 있다. 엔벨로프 추정은 주로 고주파 영역(예를 들어, 하이-햇(high-hat))에 위치하는 원래의 과도 상태(transient)가 엔벨로프 조정 이전에 SBR이 생성된 고대역(SBR generated highband)에서 작은 범위로 존재할 것이라는 점을 고려할 필요가 있는데, 그 이유는 디코더에서의 고대역은 과도 상태가 고대역에 비해 훨씬 덜 확연히 드러나는 저대역에 기초하기 때문이다. 이러한 양상은 다른 오디오 코딩 알고리즘에서 사용되는 통상적인 스펙트럼 엔벨로프 추정과 비교하여, 스펙트럼 엔벨로프 데이터의 시간 주파수 분해능에 대해 상이한 요건을 부과한다.
스펙트럼 엔벨로프 외에도, 상이한 시간 및 주파수 영역에 대한 입력 신호의 스펙트럼 특성을 나타내는 몇 가지 추가 파라미터가 추출된다. 특정 세트의 제어 파라미터를 고려해 볼 때, 인코더가 자연스럽게 원본 신호뿐만 아니라 디코더의 SBR 유닛이 고대역을 생성하는 방법에 관한 정보에 액세스하기 때문에, 시스템으로 하여금 저대역이 강한 하모닉 시리즈(harmonic seires)를 구성하게 하고 재창조될 고대역이 주로 랜덤 신호 성분을 구성하는 상황뿐만 아니라, 고대역 영역이 기반으로 하는, 저대역에서 대응관계에 있는 것이 아닌, 원본 고대역에서 강한 음색(tonal) 성분이 존재하는 상황을 다루게 하는 것이 가능하다. 뿐만 아니라, SBR 인코더는 기본(underlying) 코어 코덱과 밀접하게 관련되어 주어진 시간에 어떤 주파수 범위가 SBR에 의해 커버되어야 하는지를 평가하도록 작동한다. 스테레오 신호의 경우, SBR 데이터는 제어 데이터의 채널 종속성뿐만 아니라엔트로피(entropy) 코딩을 활용하여 전송 전에 효율적으로 코딩된다.
제어 파라미터 추출 알고리즘은 전형적으로는 주어진 비트레이트 및 주어진 샘플링 레이트에서 기본 코덱에 대해 주의하여 조정(tune)되어야 한다. 이것은 일반적으로 더 낮은 비트 전송 레이트가 높은 비트레이트에 비해 더 큰 SBR 범위를 수반하고 상이한 샘플링 레이트는 SBR 프레임의 상이한 시간 분해능에 해당한다는 사실로 인한 것이다.
SBR 디코더는 전형적으로는 몇 가지 상이한 부분을 포함한다. SBR 디코더는 비트스트림 디코딩 모듈, 고주파 재구성(HFR) 모듈, 추가 고주파 성분 모듈 및 엔벌로프 조정자(adjuster) 모듈을 포함한다. 시스템은 대략 복잡한 값의 QMF 필터뱅크를 기초로 한다. 비트스트림 추출 모듈에서, 제어 데이터는 비트스트림으로부터 판독되고 디코딩된다. 비트스트림으로부터 엔벨로프 데이터를 읽기 전에, 현재 프레임에 대한 시간 주파수 그리드(grid)가 획득된다. 기본 코어 디코더는 (낮은 샘플링 레이트임에도 불구하고) 현재 프레임의 오디오 신호를 디코딩하여 시간 도메인 오디오 샘플을 생성한다. 오디오 데이터의 결과 프레임은 HFR 모듈에 의한 고주파 재구성에 사용된다. 이어서 디코딩된 저대역 신호는 QMF 필터뱅크를 사용하여 분석된다. 이어서 QMF 필터뱅크의 부대역 샘플에 대해 고주파 재구성 및 엔벨로프 조정이 수행된다. 고주파는 주어진 제어 파라미터에 기초하여, 유연한 방식으로 저대역으로부터 재구성된다. 또한, 재구성된 고대역은 주어진 시간/주파수 영역의 적절한 스펙트럼 특성을 보장하기 위해 제어 데이터에 따라 부대역 채널에 기초하여 적응적으로 필터링된다.
MPEG-4 AAC 비트스트림의 최상위 레벨은 데이터 블록들("raw_data_block" 요소)의 시퀀스이고, 각각의 데이터 블록은 (전형적으로 1024개 또는 960개 샘플의 기간 동안의) 오디오 데이터 및 관련 정보 및/또는 다른 데이터를 포함하는 데이터의 세그먼트(본 명세서에서 "블록(block)"이라고 지칭함)이다. 본 명세서에서, 하나의 (그러나 하나보다 많지는 않음) "raw_data_block" 요소를 결정하거나 이를 나타내는 오디오 데이터 (및 대응하는 메타데이터 및 임의적으로 또 다른 관련 데이터)를 포함하는 MPEG-4 AAC 비트스트림의 세그먼트를 나타내기 위해 "블록"이라는 용어를 사용한다.
MPEG-4 AAC 비트스트림의 각각의 블록은 다수의 구문 요소(syntactic element)를 포함할 수 있다(각각의 구문 요소는 또한 비트스트림에서 데이터의 세그먼트로서 구체화된다). 이러한 구문 요소의 일곱 가지 유형이 MPEG-4 AAC 표준에서 정의된다. 각각의 구문 요소는 데이터 요소 "id_syn_ele"의 상이한 값에 의해 식별된다. 구문 요소의 예로는 "single_channel_element()", "channel_pair_element()", 및 "fill_element()"를 포함한다. 단일 채널 요소는 단일 오디오 채널(모노포닉(monophonic) 오디오 신호)의 오디오 데이터를 포함하는 컨테이너이다. 채널 쌍 요소는 2 개의 오디오 채널(즉, 스테레오 오디오 신호)의 오디오 데이터를 포함한다.
필 요소(fill element)는 "필 데이터(fill data)"라고 지칭되는 데이터가 뒤이어 나오는 식별자(예를 들어, 위에 언급된 요소 "id_syn_ele"의 값)를 포함하는 정보의 컨테이너이다. 필 요소는 일정한 레이트 채널을 통해 전송될 비트스트림의 순간적인 비트 레이트를 조정하기 위해 역사적으로(historically) 사용되어 왔다. 적절한 양의 필 데이터를 각각의 블록에 추가함으로써, 일정한 데이터 레이트가 달성될 수 있다.
본 발명의 실시형태에 따르면, 필 데이터는 비트스트림에서 전송될 수 있는 데이터의 유형(예를 들어, 메타데이터)을 확장하는 하나 이상의 확장 페이로드(payload)를 포함할 수 있다. 새로운 유형의 데이터를 포함하는 필 데이터를 갖는 비트스트림을 수신하는 디코더는 비트스트림을 수신하는 디바이스(예를 들면, 디코더)에 의해 그 디바이스의 기능성을 확장하기 위해 임의적으로 사용될 수 있다. 따라서, 관련 기술분야에서 통상의 기술자에 의해 이해될 수 있는 바와 같이, 필 요소는 특별한 유형의 데이터 구조이고, 오디오 데이터(예를 들어, 채널 데이터를 포함하는 오디오 페이로드)를 전송하기 위해 전형적으로 사용되는 데이터 구조와는 상이하다.
본 발명의 일부 실시형태에서, 필 요소를 식별하기 위해 사용되는 식별자는 0x6이라는 값을 갖는 3 비트의 최상위 비트가 먼저 전송되는 무부호 정수(unsigned integer transmitted most significant bit first("uimsbf"))로 구성될 수 있다. 하나의 블록에서, 동일한 유형의 구문 요소의 몇몇 인스턴스(instances)(예를 들어, 몇몇 필 요소)가 발생할 수 있다.
오디오 비트스트림을 인코딩하기 위한 다른 표준은 MPEG 통합 음성 및 오디오 코딩(Unified Speech and Audio Coding, USAC) 표준(ISO/IEC 23003-3:2012)이다. MPEG USAC 표준은 스펙트럼 대역 복제 처리(MPEG-4 AAC 표준에서 기술된 SBR 처리를 포함하고, 또한 다른 향상된 형태의 스펙트럼 대역 복제 처리를 포함함)를 사용하는 오디오 콘텐츠의 인코딩 및 디코딩을 서술한다. 이러한 처리는 MPEG-4 AAC 표준에서 기술된 SBR 도구 세트의 확장되고 향상된 버전의 스펙트럼 대역 복제 도구(때로는 "향상된 SBR 도구(enhanced SBR tool)" 또는 "eSBR 도구"라고 지칭함)를 적용한다. 따라서, (USAC 표준에서 정의된 바와 같은) eSBR은 (MPEG-4 AAC 표준에서 정의된 바와 같은) SBR의 개선이다.
본 명세서에서, MPEG-4 AAC 표준에서 기술되지 않거나 언급되지 않은 적어도 하나의 eSBR 도구(예를 들어, MPEG USAC 표준에서 기술되거나 언급된 적어도 하나의 eSBR 도구)를 사용하는 스펙트럼 대역 복제 처리를 나타내기 위해 "향상된 SBR 처리" (또는 "eSBR 처리")라는 표현을 사용한다. 이러한 eSBR 도구의 예로는 하모닉 트랜스포지션(harmonic transposition), QMF 패칭 추가 전처리(QMF-patching additional pre-processing) 또는 "사전 평탄화(pre-flattening)"가 있다.
정수 차수(T)의 하모닉 트랜스포저는 신호 지속기간을 유지하면서 주파수(ω)를 갖는 사인파를 주파수(Tω)를 갖는 사인파로 매핑한다. 가장 작은 가능한 전치(transposition) 차수를 사용하여 바람직한 출력 주파수 범위의 각 부분을 생성하기 위해 전형적으로 3 개의 차수, 즉 T = 2, 3, 4가 순서대로 사용된다. 4차 전치 범위 위의 출력이 요구되는 경우, 이것은 주파수 시프트에 의해 생성될 수 있다. 가능하다면, 계산을 요하는 복잡도를 최소화하기 위해 거의 임계적으로 샘플링된 기저대역 시간 도메인이 처리를 위해 생성된다.
MPEG USAC 표준에 따라 생성된 비트스트림 (때때로 본 명세서에서 "USAC 비트스트림"이라 지칭함)은 인코딩된 오디오 콘텐츠를 포함하고, 전형적으로 USAC 비트스트림의 오디오 콘텐츠를 디코딩하기 위해 디코더에 의해 적용될 스펙트럼 대역 복제 처리의 각각의 유형을 나타내는 메타데이터, 및/또는 그러한 스펙트럼 대역 복제 처리를 제어하는 및/또는 USAC 비트스트림의 오디오 콘텐츠를 디코딩하기 위해 이용될 적어도 하나의 SBR 도구 및/또는 eSBR 도구의 적어도 하나의 특성 또는 파라미터를 나타내는 메타데이터를 포함한다.
본 명세서에서, 인코딩된 오디오 비트스트림(예를 들어, USAC 비트스트림)의 오디오 콘텐츠를 디코딩하기 위해 디코더에 의해 적용될 스펙트럼 대역 복제 처리의 각각의 유형을 나타내는 및/또는 그러한 스펙트럼 대역 복제 처리를 제어하는, 및/또는 그러한 오디오 콘텐츠를 디코딩하기 위해 이용될 적어도 하나의 SBR 도구 및/또는 eSBR 도구의 적어도 하나의 특성 또는 파라미터를 나타내는, 그러나 MPEG-4 AAC 표준에서는 기술되지 않거나 언급되지 않은 메타데이터를 나타내기 위해 "향상된 SBR 메타데이터" (또는 "eSBR 메타데이터")라는 표현을 사용한다. eSBR 메타데이터의 예는 MPEG USAC 표준에서 기술되거나 언급되지만 MPEG-4 AAC 표준에서는 기술되지 않거나 언급되지 않은 (스펙트럼 대역 복제 처리를 나타내는, 또는 이를 제어하기 위한) 메타데이터이다. 따라서, 본 명세서에서 eSBR 메타데이터는 SBR 메타데이터가 아닌 메타데이터를 나타내며, 본 명세서에서 SBR 메타데이터는 eSBR 메타데이터가 아닌 메타데이터를 나타낸다.
USAC 비트스트림은 SBR 메타데이터와 eSBR 메타데이터 둘 모두를 포함할 수 있다. 보다 구체적으로, USAC 비트스트림은 디코더에 의한 eSBR 처리의 수행을 제어하는 eSBR 메타데이터, 및 디코더에 의한 SBR 처리의 수행을 제어하는 SBR 메타데이터를 포함할 수 있다. 본 발명의 전형적인 실시형태에 따르면, eSBR 메타데이터(예를 들어, eSBR-특정 구성(configuration) 데이터)는 (본 발명에 따라) MPEG-4 AAC 비트스트림에(예를 들어, SBR 페이로드의 끝에 있는 sbr_extension() 컨테이너에) 포함된다.
디코더에 의해, (적어도 하나의 eSBR 도구를 포함하는) eSBR 도구 세트를 사용하여 인코딩된 비트스트림을 디코딩하는 동안, eSBR 처리의 수행은 인코딩 중에 잘린 하모닉들의 시퀀스의 복제에 기초하여, 오디오 신호의 고주파 대역을 재생성한다. 이러한 eSBR 처리는 전형적으로 생성된 고주파 대역의 스펙트럼 엔벨로프를 조정하고 역 필터링을 적용하고, 원본 오디오 신호의 스펙트럼 특성을 재창조하기 위해 잡음 성분 및 사인파 성분을 추가한다.
본 발명의 전형적인 실시형태에 따르면, 다른 세그먼트(오디오 데이터의 세그먼트)에도 인코딩된 오디오 데이터를 포함하는 인코딩된 오디오 비트스트림(예를 들어, MPEG-4 AAC 비트스트림)의 하나 이상의 메타데이터 세그먼트에 eSBR 메타데이터가 포함된다(예를 들어, eSBR 메타데이터인 적은 수의 제어 비트가 포함된다). 전형적으로, 비트스트림의 각각의 블록의 적어도 하나의 그러한 메타데이터의 세그먼트는 (필 요소의 시작을 나타내는 식별자를 포함하는) 필 요소이고 (또는 이를 포함하고), eSBR 메타데이터는 식별자 다음의 필 요소에 포함된다.
도 1은 예시적인 오디오 처리 체인(chain)(오디오 데이터 처리 시스템)의 블록도로서, 시스템의 하나 이상의 요소가 본 발명의 실시형태에 따라 구성될 수 있다. 시스템은 도시된 바와 같이 함께 결합된, 다음과 같은 요소: 인코더(1), 전달 서브시스템(2), 디코더(3) 및 후처리 유닛(4)을 포함한다. 도시된 시스템의 변형예에서, 요소들 중 하나 이상이 생략되거나, 추가의 오디오 데이터 처리 유닛이 포함된다.
일부 구현예에서, (임의적으로 전처리 유닛을 포함하는) 인코더(1)는 입력으로서 오디오 콘텐츠를 포함하는 PCM(시간 도메인) 샘플을 수용하고, 오디오 콘텐츠를 나타내는 (MPEG-4 AAC 표준에 따르는 포맷을 갖는) 인코딩된 오디오 비트스트림을 출력하도록 구성된다. 오디오 콘텐츠를 나타내는 비트스트림의 데이터는 때때로 본 명세서에서 "오디오 데이터" 또는 "인코딩된 오디오 데이터"라고 지칭된다. 인코더가 본 발명의 전형적인 실시형태에 따라 구성되면, 인코더로부터 출력된 오디오 비트스트림은 오디오 데이터뿐만 아니라 eSBR 메타데이터 (및 전형적으로 또 다른 메타데이터)를 포함한다.
인코더(1)로부터 출력된 하나 이상의 인코딩된 오디오 비트스트림은 인코딩된 오디오 전달 서브시스템(2)으로 어서트(assert)될 수 있다. 서브시스템(2)은 인코더(1)로부터 출력된 각각의 인코딩된 비트스트림을 저장 및/또는 전달하도록 구성된다. 인코더(1)로부터 출력된 인코딩된 오디오 비트스트림은 (예를 들어, DVD 또는 블루레이 디스크 형태의) 서브시스템(2)에 의해 저장되거나, 또는 (전송 링크 또는 네트워크를 구현할 수 있는) 서브시스템(2)에 의해 전송될 수 있거나, 또는 서브시스템(2)에 의해 저장되고 전송될 수 있다.
디코더(3)는 서브시스템(2)을 통해 수신하는 (인코더(1)에 의해 생성되는) 인코딩된 MPEG-4 AAC 오디오 비트스트림을 디코딩하도록 구성된다. 일부 실시형태에서, 디코더(3)는 비트스트림의 각각의 블록으로부터 eSBR 메타데이터를 추출하고, 디코딩된 오디오 데이터(예를 들어, 디코딩된 PCM 오디오 샘플들의 스트림)를 생성하기 위해 (추출된 eSBR 메타데이터를 사용하여 eSBR 처리를 수행하는 것을 비롯하여) 비트스트림을 디코딩하도록 구성된다. 일부 실시형태에서, 디코더(3)는 비트스트림으로부터 SBR 메타데이터를 추출하고 (그러나 비트스트림에 포함된 eSBR 메타데이터는 무시함), 디코딩된 오디오 데이터(예를 들어, 디코딩된 PCM 오디오 샘플들의 스트림)를 생성하기 위해 (추출된 SBR 메타데이터를 사용하여 SBR 처리를 수행하는 것을 비롯하여) 비트스트림을 디코딩하도록 구성된다. 전형적으로, 디코더(3)는 서브시스템(2)으로부터 수신된 인코딩된 오디오 비트스트림의 세그먼트를 (예를 들어, 비일시적 방식으로) 저장하는 버퍼를 포함한다.
도 1의 후처리 유닛(4)은 디코더(3)로부터 디코딩된 오디오 데이터(예를 들어, 디코딩된 PCM 오디오 샘플)의 스트림을 수용하고, 그에 대해 후처리를 수행하도록 구성된다. 후처리 유닛(4)은 또한 후처리된 오디오 콘텐츠(또는 디코더(3)로부터 수신된 디코딩된 오디오)를 하나 이상의 스피커에 의한 재생을 위해 렌더링하도록 구성될 수 있다.
도 2는 본 발명의 오디오 처리 유닛의 실시형태인 인코더(100)의 블록도이다. 인코더(100)의 컴포넌트 또는 요소 중 임의의 것은 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합으로, 하나 이상의 프로세스 및/또는 하나 이상의 회로(예를 들어, ASIC, FPGA, 또는 다른 집적 회로)로서 구현될 수 있다. 인코더(100)는 도시된 바와 같이 연결된, 인코더(105), 스터퍼/포맷터(stuffer/formatter) 스테이지(107), 메타데이터 생성 스테이지(106), 및 버퍼 메모리(109)를 포함한다. 또한, 전형적으로, 인코더(100)는 다른 처리 요소(도시되지 않음)를 포함한다. 인코더(100)는 입력 오디오 비트스트림을 인코딩된 출력 MPEG-4 AAC 비트스트림으로 변환하도록 구성된다.
메타데이터 생성기(106)는 인코더(100)로부터 출력될 인코딩된 비트스트림에 스테이지(107)에 의해 포함될 (eSBR 메타데이터 및 SBR 메타데이터를 포함하는) 메타데이터를 생성 (및/또는 스테이지(107)까지 통과)하도록 결합 및 구성된다.
인코더(105)는 입력 오디오 데이터를 (예를 들어, 그에 대해 압축을 수행함으로써) 인코딩하고, 결과로서의 인코딩된 오디오를 스테이지(107)로부터 출력될 인코딩된 비트스트림에 포함되도록 스테이지(107)로 어서트하도록 결합 및 구성된다.
바람직하게는 인코딩된 비트스트림이 본 발명의 실시형태 중 하나에 의해 명시된 포맷을 갖도록, 스테이지(107)는 스테이지(107)로부터 출력될 인코딩된 비트스트림을 생성하기 위해 인코더(105)로부터의 인코딩된 오디오 및 생성기(106)로부터의 (eSBR 메타데이터 및 SBR 메타데이터를 포함하는) 메타데이터를 다중화(multiplex)하도록 구성된다.
버퍼 메모리(109)는 스테이지(107)로부터 출력된 인코딩된 오디오 비트스트림의 적어도 하나의 블록을 (예를 들어, 비일시적 방식으로) 저장하도록 구성되고, 그 후 인코딩된 오디오 비트스트림의 블록들의 시퀀스는 인코더(100)로부터 전달 시스템으로의 출력으로서 버퍼 메모리(109)로부터 어서트된다.
도 3은 본 발명의 오디오 처리 유닛의 실시형태인 디코더(200), 및 임의적으로 그에 결합된 후처리기(300)도 포함하는 시스템의 블록도이다. 디코더(200) 및 후처리기(300)의 임의의 컴포넌트 또는 요소는 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합으로, 하나 이상의 프로세스 및/또는 하나 이상의 회로(예를 들어, ASIC, FPGA, 또는 다른 집적 회로)로서 구현될 수 있다. 디코더(200)는 도시된 바와 같이 연결된, 버퍼 메모리(201), 비트스트림 페이로드 디포맷터(파서(parser))(205), 오디오 디코딩 서브시스템(202)(때때로 "코어" 디코딩 스테이지 또는 "코어" 디코딩 서브시스템이라고 지칭함), eSBR 처리 스테이지(203), 및 제어 비트 생성 스테이지(204)를 포함한다. 또한, 전형적으로, 디코더(200)는 다른 처리 요소(도시되지 않음)를 포함한다.
버퍼 메모리(버퍼)(201)는 디코더(200)에 의해 수신된 인코딩된 MPEG-4 AAC 오디오 비트스트림의 적어도 하나의 블록을 (예를 들어, 비일시적 방식으로) 저장한다. 디코더(200)의 동작에서, 비트스트림의 블록들의 시퀀스는 버퍼(201)로부터 디포맷터(205)로 어서트된다.
도 3의 실시형태 (또는 후술하는 도 4의 실시형태)의 변형예에서, 디코더가 아닌 APU(예를 들어, 도 6의 APU(500))는 도 3 또는 도 4의 버퍼(201)에 의해 수신된 동일 유형의 인코딩된 오디오 비트스트림(예를 들어, MPEG-4 AAC 오디오 비트스트림)(즉, eSBR 메타데이터를 포함하는 인코딩된 오디오 비트스트림)의 적어도 하나의 블록을 (예를 들어, 비일시적 방식으로) 저장하는 버퍼 메모리(예를 들어, 버퍼(201)와 동일한 버퍼 메모리)를 포함한다.
다시 도 3을 참조하면, 디포맷터(205)는 비트스트림의 각각의 블록을 역다중화하여 그로부터 (양자화된 엔벨로프 데이터를 포함하는) SBR 메타데이터 및 eSBR 메타데이터 (및 전형적으로 또한 다른 메타데이터)를 추출하고, 적어도 eSBR 메타데이터 및 SBR 메타데이터를 eSBR 처리 스테이지(203)로 어서트하고, 전형적으로 또한 다른 추출된 메타데이터를 디코딩 서브시스템(202)으로 (및 임의적으로 또한 제어 비트 생성기(204)로) 어서트하도록 결합 및 구성된다. 디포맷터(205)는 또한 비트스트림의 각각의 블록으로부터 오디오 데이터를 추출하고, 추출된 오디오 데이터를 디코딩 서브시스템(디코딩 스테이지)(202)으로 어서트하도록 결합 및 구성된다.
도 3의 시스템은 임의적으로는 후처리기(300)를 또한 포함한다. 후처리기(300)는 버퍼 메모리(버퍼)(301) 및 버퍼(301)에 결합된 적어도 하나의 처리 요소를 포함하는 다른 처리 요소(도시되지 않음)를 포함한다. 버퍼(301)는 디코더(200)로부터 후처리기(300)에 의해 수신된 디코딩된 오디오 데이터의 적어도 하나의 블록(또는 프레임)을 (예를 들어, 비일시적 방식으로) 저장한다. 후처리기(300)의 처리 요소는 디코딩 서브시스템(202)(및/또는 디포맷터(205))로부터 출력된 메타데이터 및/또는 디코더(200)의 스테이지(204)로부터 출력된 제어 비트를 사용하여, 버퍼(301)로부터 출력된 디코딩된 오디오의 블록(또는 프레임)의 시퀀스를 수신하고 적응적으로 처리하도록 결합되고 구성된다.
디코더(200)의 디코딩된 오디오 데이터를 생성하고, 디코딩된 오디오 데이터를 eSBR 처리 스테이지(203)로 어서트하기 위해, 오디오 디코딩 서브시스템(202)은 파서(205)에 의해 추출된 오디오 데이터를 디코딩하도록 구성된다(이러한 디코딩은 "코어" 디코딩 동작이라고 지칭될 수 있음). 디코딩은 주파수 도메인에서 수행되고 전형적으로 스펙트럼 처리가 뒤따르는 역 양자화(inverse quantization) 포함한다. 전형적으로, 서브시스템(202)에서의 최종 처리 스테이지는, 서브시스템의 출력이 시간 도메인의 디코딩된 오디오 데이터가 되도록, 디코딩된 주파수 도메인 오디오 데이터에 주파수 도메인-시간 도메인 변환을 적용한다. 스테이지(203)는 디코더(200)로부터 (예를 들어, 후처리기(300)로) 출력되는 완전히 디코딩된 오디오 데이터를 생성하기 위해, 디코딩된 오디오 데이터에 (파서(205)에 의해 추출된) SBR 메타데이터 및 eSBR 메타데이터에 의해 지시되는 SBR 도구 및 eSBR 도구를 적용하도록 (즉, SBR 및 eSBR 메타데이터를 사용하여 디코딩 서브시스템(202)의 출력에 대해 SBR 및 eSBR 처리를 수행하도록) 구성된다. 전형적으로, 디코더(200)는 디포맷터(205)로부터 출력된 디포맷팅된(deformatted) 오디오 데이터 및 메타데이터를 저장하는 (서브시스템(202) 및 스테이지(203)에 의해 액세스 가능한) 메모리를 포함하고, 스테이지(203)는 SBR 및 eSBR 처리 동안 필요에 따라 오디오 데이터 및 메타데이터(SBR 메타데이터 및 eSBR 메타데이터를 포함함)에 액세스하도록 구성된다. 스테이지(203)에서의 SBR 처리 및 eSBR 처리는 코어 디코딩 서브시스템(202)의 출력에 대한 후처리인 것으로 간주될 수 있다. 임의적으로, 디코더(200)는 또한 (디포맷터(205)에 의해 추출된 PS 메타데이터 및/또는 서브시스템(204)에서 생성된 제어 비트를 사용하여, MPEG-4 AAC 표준에서 정의된 파라메트릭 스테레오(parametric stereo)("PS") 도구를 적용할 수 있는) 최종 업믹싱 서브시스템을 포함하고, 이는 디코더(200)로부터 출력되는 완전히 디코딩된 업믹싱된 오디오를 생성하기 위해, 스테이지(203)의 출력에 대해 업믹싱(upmixing)을 수행하도록 결합 및 구성된다. 대안적으로(alternatively), 후처리기(300)는 (예를 들어, 디포맷터(205)에 의해 추출된 PS 메타데이터 및/또는 서브시스템(204)에서 생성된 제어 비트를 사용하여) 디코더(200)의 출력에 대해 업믹싱을 수행하도록 구성된다.
디포맷터(205)에 의해 추출된 메타데이터에 응답하여, 제어 비트 생성기(204)는 제어 데이터를 생성할 수 있고, 제어 데이터는 (예를 들어, 최종 업믹싱 서브시스템의) 디코더(200) 내에서 사용될 수 있고 및/또는 (예를 들어, 후처리에 사용하기 위해 후처리기(300)로의) 디코더(200)의 출력으로서 어서트될 수 있다. 입력 비트스트림으로부터 추출된 메타데이터에 응답하여 (및 임의적으로 또한 제어 데이터에 응답하여), 스테이지(204)는 eSBR 처리 스테이지(203)로부터 출력된 디코딩된 오디오 데이터가 특정 유형의 후처리를 겪어야 한다는 것을 나타내는 제어 비트를 생성 (및 후처리기(300)로 어서트)할 수 있다. 일부 구현예에서, 디코더(200)는 입력 비트스트림으로부터 디포맷터(205)에 의해 추출된 메타데이터를 후처리기(300)로 어서트하도록 구성되고, 후처리기(300)는 메타데이터를 사용하여 디코더(200)로부터 출력된 디코딩된 오디오 데이터에 대해 후처리를 수행하도록 구성된다.
도 4는 본 발명의 오디오 처리 유닛의 다른 실시형태인 오디오 처리 유닛(audio processing unit)("APU")(210)의 블록도이다. APU(210)는 eSBR 처리를 수행하도록 구성되지 않은 레거시(legacy) 디코더이다. APU(210)의 임의의 컴포넌트 또는 요소는 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합으로, 하나 이상의 프로세스 및/또는 하나 이상의 회로(예를 들어, ASICs, FPGAs, 또는 다른 집적 회로)로서 구현될 수 있다. APU(210)는 도시된 바와 같이 연결된, 버퍼 메모리(201), 비트스트림 페이로드 디포맷터(파서)(215), 오디오 디코딩 서브시스템(202)(때때로 "코어" 디코딩 스테이지 또는 "코어" 디코딩 서브시스템이라고 지칭함), 및 SBR 처리 스테이지(213)를 포함한다. 또한, 전형적으로, APU(210)는 다른 처리 요소(도시되지 않음)를 포함한다. APU(210)는 예를 들어, 오디오 인코더, 디코더 또는 트랜스코더를 나타낼 수 있다.
APU(210)의 요소(201 및 202)은 (도 3의) 디코더(200)의 동일하게 번호가 매겨진 요소와 동일하고, 이들에 관한 위의 설명은 반복되지 않을 것이다. APU(210)의 동작에서, APU(210)에 의해 수신된 인코딩된 오디오 비트스트림(MPEG-4 AAC 비트스트림)의 블록들의 시퀀스가 버퍼(201)로부터 디포맷터(215)로 어서트된다.
디포맷터(215)는 SBR (양자화된 엔벨로프 데이터를 포함하는) 메타데이터 및 전형적으로 또한 그로부터 다른 메타데이터를 추출하기 위해, 비트스트림의 각각의 블록을 역다중화하도록, 하지만 본 발명의 임의의 실시형태에 따라 비트스트림에 포함될 수 있는 eSBR 메타데이터를 무시하도록 결합 및 구성된다. 디포맷터(215)는 적어도 SBR 메타데이터를 SBR 처리 스테이지(213)로 어서트하도록 구성된다. 디포맷터(215)는 또한 비트스트림의 각각의 블록으로부터 오디오 데이터를 추출하고, 추출된 오디오 데이터를 디코딩 서브시스템(디코딩 스테이지)(202)으로 어서트하도록 결합되고 구성된다.
디코더(200)의 오디오 디코딩 서브시스템(202)은 디코딩된 오디오 데이터를 생성하기 위해, 디포맷터(215)에 의해 추출된 오디오 데이터를 디코딩하고(이러한 디코딩은 "코어" 디코딩 동작이라고 지칭될 수 있음) 디코딩된 오디오 데이터를 SBR 처리 스테이지(213)로 어서트하도록 구성된다. 디코딩은 주파수 도메인에서 수행된다. 전형적으로, 서브시스템(202)에서의 최종 처리 스테이지는 서브시스템의 출력이 시간 도메인의 디코딩된 오디오 데이터가 되도록, 디코딩된 주파수 도메인 오디오 데이터에 주파수 도메인-시간 도메인 변환을 적용한다. 스테이지(213)는 APU(210)로부터 (예를 들어, 후처리기(300)로) 출력되는 완전히 디코딩된 오디오 데이터를 생성하기 위해, 디코딩된 오디오 데이터에 (디포맷터(215)에 의해 추출된) SBR 메타데이터에 의해 지시되는 SBR 도구(그러나 eSBR 도구는 아님)를 적용하도록 (즉, SBR 메타데이터를 사용하여 디코딩 서브시스템(202)의 출력에 대해 SBR 처리를 수행하도록) 구성된다. 전형적으로, APU(210)는 디포맷터(215)로부터 출력된 디포맷팅된 오디오 데이터 및 메타데이터를 저장하는 (서브시스템(202) 및 스테이지(213)에 의해 액세스 가능한) 메모리를 포함하고, 스테이지(213)는 SBR 처리 동안 필요에 따라 오디오 데이터 및 (SBR 메타데이터를 포함하는) 메타데이터에 액세스하도록 구성된다. 스테이지(213)에서의 SBR 처리는 코어 디코딩 서브시스템(202)의 출력에 대한 후처리인 것으로 간주될 수 있다. 임의적으로, APU(210)는 또한 (디포맷터(215)에 의해 추출된 PS 메타데이터를 사용하여, MPEG-4 AAC 표준에서 정의된 파라메트릭 스테레오("PS") 도구를 적용할 수 있는) 최종 업믹싱 서브시스템을 포함하고, 이는 스테이지(213)의 출력에 대해 업믹싱을 수행하여 APU(210)로부터 출력되는 완전히 디코딩된 업믹싱된 오디오를 생성하도록 결합되고 구성된다. 대안적으로, 후처리기는 (예를 들어, 디포맷터(215)에 의해 추출된 PS 메타데이터 및/또는 APU(210)에서 생성된 제어 비트를 사용하여) APU(210)의 출력에 대해 업믹싱을 수행하도록 구성된다.
인코더(100), 디코더(200), 및 APU(210)의 다양한 구현예는 본 발명의 방법의 상이한 실시형태를 수행하도록 구성된다.
일부 실시형태에 따르면, 인코딩된 오디오 비트스트림(예를 들어, MPEG-4 AAC 비트스트림)에 eSBR 메타데이터가 포함되어(예를 들어, eSBR 메타데이터인 적은 수의 제어 비트가 포함되어), (eSBR 메타데이터를 구문 분석(parse)하거나, eSBR 메타데이터가 관련된 임의의 eSBR 도구를 사용하도록 구성되지 않은) 레거시 디코더가 eSBR 메타데이터를 무시할 수 있지만 그럼에도 불구하고 eSBR 메타데이터 또는 eSBR 메타데이터가 관련된 임의의 eSBR 도구를 사용하지 않고, 전형적으로 디코딩된 오디오 품질에 임의의 상당한 페널티 없이, 가능한 정도까지 비트스트림을 디코딩할 수 있다. 그러나, 분석하여 eSBR 메타데이터를 식별하기 위해 비트스트림을 구문 분석하고 eSBR 메타데이터에 응답하여 적어도 하나의 eSBR 도구를 사용하도록 구성된 eSBR 디코더는 적어도 하나의 그러한 eSBR 도구를 사용하는 혜택을 받을 것이다. 그러므로 본 발명의 실시형태는 하위호환형 방식(backward-compatible fashion)으로 향상된 스펙트럼 대역 복제(eSBR) 제어 데이터 또는 메타데이터를 효율적으로 전송하기 위한 수단을 제공한다.
전형적으로, 비트스트림 내의 eSBR 메타데이터는 (MPEG USAC 표준에서 기술되고, 비트스트림의 생성 동안 인코더에 의해 적용되었을 수도 있고 그렇지 않을 수도 있는) 다음의 eSBR 도구 중 하나 이상을 나타낸다(예를 들어, 다음의 eSBR 도구 중 하나 이상의 적어도 하나의 특성 또는 파라미터를 나타낸다):
· 하모닉 트랜스포지션; 및
· QMF 패칭 추가 전처리(사전 평탄화(pre-flattening)).
예를 들어, 비트스트림에 포함된 eSBR 메타데이터는 (MPEG USAC 표준 및 본 개시에서 설명된) 파라미터: harmonicSBR[ch], sbrPatchingMode[ch], sbrOversamplingFlag[ch], sbrPitchInBins[ch], sbrPitchInBins[ch], bs_interTes, bs_temp_shape[ch][env], bs_inter_temp_shape_mode[ch][env], 및 bs_sbr_preprocessing의 값을 나타낼 수 있다.
본 명세서에서, X가 어떤 파라미터인 표기법 X[ch]는 그 파라미터가 디코딩될 인코딩된 비트스트림의 오디오 콘텐츠의 채널("ch")에 관련된다는 것을 나타낸다. 단순화를 위해, 때로는 [ch]의 표현이 생략되며, 관련 파라미터는 오디오 콘텐츠의 채널에 관련된다고 가정한다.
본 명세서에서, X가 어떤 파라미터인 표기법 X[ch][env]는 그 파라미터가 디코딩될 인코딩된 비트스트림의 오디오 콘텐츠의 채널("ch")의 SBR 엔벨로프("env")에 관련된다는 것을 나타낸다. 단순화를 위해, 때로는 [env] 및 [ch]의 표현이 생략되며, 관련 파라미터는 오디오 콘텐츠 채널의 SBR 엔벨로프와 관련된다고 가정한다.
인코딩된 비트스트림의 디코딩 중에, (비트스트림에 의해 지시되는 오디오 콘텐츠의 각각의 채널, "ch"에 대해) 디코딩의 eSBR 처리 스테이지 동안 하모닉 트랜스포지션의 수행은 다음의 eSBR 메타데이터 파라미터: sbrPatchingMode[ch]; sbrOversamplingFlag[ch]; sbrPitchInBinsFlag[ch]; 및 sbrPitchInBins[ch]에 의해 제어된다.
값 "sbrPatchingMode[ch]"는 eSBR에서 사용되는 트랜스포저 유형을 나타낸다: sbrPatchingMode[ch] = 1은 MPEG-4 AAC 표준의 섹션 4.6.18.6.3에서 설명한 비-하모닉 패칭을 나타내고; sbrPatchingMode[ch] = 0은 MPEG USAC 표준의 섹션 7.5.3 또는 7.5.4에서 설명된 하모닉 SBR 패칭을 나타낸다.
값 "sbrOversamplingFlag[ch]"는 MPEG USAC 표준의 섹션 7.5.3에서 설명된 DFT 기반 하모닉 SBR 패칭과 조합하여 eSBR에서 신호 적응적 주파수 도메인 오버샘플링의 사용을 나타낸다. 이 플래그는 트랜스포저에서 이용되는 DFT의 크기를 제어한다: 1은 MPEG USAC 표준의 섹션 7.5.3.1에서 설명된 바와 같이 신호 적응적 주파수 도메인 오버샘플링이 활성화되었음을 나타내고; 0은 MPEG USAC 표준의 섹션 7.5.3.1에서 설명된 바와 같이 신호 적응적 주파수 도메인 오버샘플링이 비활성화되었음을 나타낸다.
값 "sbrPitchInBinsFlag[ch]"는 sbrPitchInBins[ch] 파라미터의 해석을 제어한다: 1은 sbrPitchInBins[ch]의 값이 유효하고 0보다 큰 것을 나타내고; 0은 sbrPitchInBins[ch]의 값이 0으로 설정됨을 나타낸다.
값 "sbrPitchInBins[ch]"는 SBR 하모닉 트랜스포저에서 외적 항(cross product term)의 덧셈을 제어한다. 값 sbrPitchinBins[ch]는 [0,127] 범위의 정수 값이고 코어 코더(coder)의 샘플링 주파수에 작용하는 1536 라인 DFT에 대한 주파수 빈에서 측정된 거리를 나타낸다.
MPEG-4 AAC 비트스트림이 (단일 SBR 채널보다는) 채널들이 결합되지 않은 SBR 채널 쌍을 나타내는 경우, 비트스트림은 sbr_channel_pair_element()의 각각의 채널 마다 하나씩, (하모닉 또는 비-하모닉 트랜스포지션에 대한) 위의 신택스(syntax)의 2개의 인스턴스를 나타낸다.
eSBR 도구의 하모닉 트랜스포지션는 비교적 낮은 크로스오버 주파수에서 디코딩된 음악 신호의 품질을 전형적으로 개선한다. 비-하모닉 트랜스포지션(즉, 레거시 스펙트럼 패칭)는 전형적으로 음성 신호를 개선한다. 따라서, 특정 오디오 콘텐츠를 인코딩하는 데 어떤 유형의 전치가 적합한지에 대한 결정의 시작점은 음성 콘텐츠에 대한 스펙트럼 패칭 및 음악 콘텐츠에 대해 이용되는 하모닉 트랜스포지션을 사용하는 음성/음악 검출에 따라 전치 방법을 선택하는 것이다.
eSBR 처리 중 사전 평탄화의 수행은 "bs_sbr_preprocessing"이라고 알려진 1 비트 eSBR 메타데이터 파라미터 값에 의해 제어되는데, 이러한 단일 비트의 값에 따라 사전 평탄화가 수행되거나 수행되지 않는다는 의미에서 그러하다. MPEG-4 AAC 표준의 섹션 4.6.18.6.3에서 설명된, SBR QMF 패칭 알고리즘이 사용될 때, 사전 평탄화의 단계는 ("bs_sbr_preprocessing" 파라미터에 의해 표시될 때) 후속 엔벨로프 조정기(envelope adjuster)(엔벨로프 조정기는 eSBR 처리의 다른 스테이지를 수행함)에 입력되는 고주파 신호의 스펙트럼 엔벨로프의 형상에서의 불연속성을 방지하려는 노력으로 수행될 수 있다. 사전 평탄화는 전형적으로 후속 엔벨로프 조정 스테이지의 동작을 개선하여, 보다 안정적인 것으로 여겨지는 고대역 신호를 발생시킨다.
위에 언급된 eSBR 도구(하모닉 트랜스포지션 및 사전 평탄화)를 나타내는 MPEG-4 AAC 비트스트림 eSBR 메타데이터에 포함하기 위한 전체 비트레이트 요구 사항은 초당 수백 비트 정도가 될 것으로 예상되는데 그 이유는 본 발명의 일부 실시형태에 따르면 eSBR 처리를 수행하는 데 필요한 차동 제어 데이터만이 전송되기 때문이다. 레거시 디코더는 이러한 정보를 무시할 수 있는데 그 이유는 그것이 (나중에 설명되는 바와 같이) 하위호환형 방식으로 포함되기 때문이다. 그러므로 eSBR 메타데이터를 포함시키는 것과 관련된 비트레이트에 미치는 해로운 영향은 다음의 것을 포함하는 여러 가지 이유로 무시할 수 있다:
· (eSBR 메타데이터를 포함하는 것으로 인한) 비트레이트 패널티는 전체 비트레이트의 매우 작은 부분인데 그 이유는 eSBR 처리를 수행하는 데 필요한 차동 제어 데이터만이 전송(그리고 SBR 제어 데이터의 동시 방송(simulcast)이 아님)되기 때문이다; 및
· SBR 관련 제어 정보의 조정은 전형적으로 전치의 세부 사항에 종속하지 않는다.
따라서, 본 발명의 실시형태는 하위호환형 방식으로 향상된 스펙트럼 대역 복제(eSBR) 제어 데이터 또는 메타데이터를 효율적으로 전송하기 위한 수단을 제공한다. 이러한 eSBR 제어 데이터의 효율적인 전송은 본 발명의 양태를 사용하는 디코더, 인코더, 및 트랜스코더에서 메모리 요구 사항을 감소시키면서, 비트레이트에 명백한 악영향을 미치지는 않는다. 또한, 본 발명의 실시형태에 따라 eSBR을 수행하는 것과 관련된 복잡도 및 처리 요구 사항도 감소되는데 그 이유는 SBR 데이터는 동시 방송되는 것이 아니라 단지 한번만 처리될 필요가 있기 때문이며, 이는 eSBR이 하위호환형 방식으로 MPEG-4 AAC 코덱에 통합되는 대신 MPEG-4 AAC에서 완전히 별개의 오브젝트 유형으로 취급되는 경우일 것이다.
다음으로, 도 7을 참조하여, 본 발명의 일부 실시형태에 따라 eSBR 메타데이터가 포함되는 MPEG-4 AAC 비트스트림의 블록("raw_data_block")의 요소를 설명한다. 도 7은 MPEG-4 AAC 비트스트림의 블록("raw_data_block")의 도면으로, 그 세그먼트의 일부를 보여준다.
MPEG-4 AAC 비트스트림의 블록은 오디오 프로그램을 위한 오디오 데이터를 포함하여, 적어도 하나의 "single_channel_element()"(예를 들어, 도 7에 도시된 단일 채널 요소), 및/또는 적어도 하나의 "channel_pair_element()"(도 7에 구체적으로 도시되어 있지는 않지만, 존재할 수도 있음)를 포함할 수 있다. 블록은 또한 프로그램과 관련된 데이터(예를 들어, 메타데이터)를 포함하는 다수의 "fill_elements"(예를 들어, 도 7의 필 요소 1 및/또는 필 요소 2)를 포함할 수 있다. 각각의 "single_channel_element()"는 단일 채널 요소의 시작을 나타내는 식별자(예를 들어, 도 7의 "ID1")를 포함하고, 다중-채널 오디오 프로그램의 상이한 채널을 나타내는 오디오 데이터를 포함할 수 있다. 각각의 "channel_pair_element는 채널 쌍 요소의 시작을 나타내는 식별자(도 7에 도시되지 않음)를 포함하고, 프로그램의 2 개의 채널을 나타내는 오디오 데이터를 포함할 수 있다.
MPEG-4 AAC 비트스트림의 (본 명세서에서는 필 요소라고 지칭되는) fill_element는 필 요소의 시작을 나타내는 식별자(도 7의 "ID2") 및 식별자 다음의 필 데이터를 포함한다. 식별자 ID2는 0x6의 값을 갖는 3 비트의 "uimsbf"(unsigned integer transmitted most significant bit first)로 구성될 수 있다. 필 데이터는 MPEG-4 AAC 표준의 표 4.57에 그 신택스가 제시되어 있는 extension_payload() 요소(때때로 본 명세서에서는 확장 페이로드라고 지칭함)를 포함할 수 있다. 몇몇 유형의 확장 페이로드가 존재하며, 4 비트의 "uimsbf"(unsigned integer transmitted most significant bit first)인, "extension_type" 파라미터를 통해 식별된다.
필 데이터(예를 들어, 그의 확장 페이로드)는 SBR 오브젝트를 나타내는 필 데이터의 세그먼트를 나타내는 헤더 또는 식별자(예를 들어, 도 7의 "header1")를 포함할 수 있다(즉, 헤더는 MPEG-4 AAC 표준에서 sbr_extension_data()라고 지칭되는 "SBR 오브젝트" 유형을 초기화한다). 예를 들어, 헤더의 extension_type 필드에 대한 '1101' 또는 '1110'의 값으로 스펙트럼 대역 복제(SBR) 확장 페이로드가 식별되고, 식별자 '1101'은 SBR 데이터를 갖는 확장 페이로드를 식별하며, '1110'은 SBR 데이터의 정확성을 확인하기 위한 순환 중복 검사(Cyclic Redundancy Check)(CRC)를 갖는 SBR 데이터를 갖는 확장 페이로드를 식별한다.
헤더(예를 들어, extension_type 필드)가 SBR 오브젝트 유형을 초기화할 때, SBR 메타데이터(때때로 본 명세서에서 "스펙트럼 대역 복제 데이터(spectral band replication data)"라고 지칭되고, MPEG-4 AAC 표준에서는 sbr_data()라고 지칭함)가 헤더 다음에 오고, 적어도 하나의 스펙트럼 대역 복제 확장 요소(예를 들어, 도 7의 필 요소 1의 "SBR 확장 요소(SBR extension element)")가 SBR 메타데이터 다음에 올 수 있다. 이러한 스펙트럼 대역 복제 확장 요소(비트스트림의 세그먼트)는 MPEG-4 AAC 표준에서 "sbr_extension()" 컨테이너라고 지칭된다. 스펙트럼 대역 복제 확장 요소는 임의적으로 헤더(예를 들어, 도 7의 필 요소 1의 "SBR 확장 헤더(SBR extension header)")를 포함한다.
MPEG-4 AAC 표준은 스펙트럼 대역 복제 확장 요소가 프로그램의 오디오 데이터에 대한 PS(파라메트릭 스테레오) 데이터를 포함할 수 있을 것으로 생각한다. MPEG-4 AAC 표준은 필 요소의(예를 들어, 그의 확장 페이로드의) 헤더가 SBR 오브젝트 유형을 (도 7의 "header1"를 한 것처럼) 초기화하고 필 요소의 스펙트럼 대역 복제 확장 요소가 PS 데이터를 포함할 때, 필 요소(예를 들어, 그의 확장 페이로드)는 스펙트럼 대역 복제 데이터, 및 그 값(즉, bs_extension_id = 2)이 PS 데이터가 필 요소의 스펙트럼 대역 복제 확장 요소에 포함됨을 나타내는 "bs_extension_id" 파라미터를 포함한다는 것을 고려한다.
본 발명의 일부 실시형태에 따르면, eSBR 메타데이터(예를 들어, 향상된 스펙트럼 대역 복제(eSBR) 처리가 블록의 오디오 콘텐츠에 대해 수행되어야 하는지를 나타내는 플래그)가 필 요소의 스펙트럼 대역 복제 확장 요소에 포함된다. 예를 들어, 그러한 플래그는 도 7의 필 요소 1에서 표시되고, 여기서 플래그는 필 요소 1의 "SBR 확장 요소"의 헤더(필 요소 1의 "SBR 확장 헤더") 다음에 발생한다. 임의적으로, 그러한 플래그 및 추가 eSBR 메타데이터가 스펙트럼 대역 복제 확장 요소의 헤더 다음에 스펙트럼 대역 복제 확장 요소에(예를 들어, SBR 확장 헤더 다음의 도 7의 필 요소 1의 SBR 확장 요소에) 포함된다. 본 발명의 일부 실시형태에 따르면, eSBR 메타데이터를 포함하는 필 요소는 또한 그 값(예를 들어, bs_extension_id = 3)이 eSBR 메타데이터가 필 요소에 포함된다는 것 및 eSBR 처리가 관련 블록의 오디오 콘텐츠에 대해 수행되어야 한다는 것을 나타내는 "bs_extension_id" 파라미터를 포함한다.
본 발명의 일부 실시형태에 따르면, eSBR 메타데이터는 필 요소의 스펙트럼 대역 복제 확장 요소(SBR 확장 요소) 이외의 MPEG-4 AAC 비트스트림의 필 요소(예를 들어, 도 7의 필 요소 2)에 포함된다. 이것은 SBR 데이터 또는 CRC를 갖는 SBR 데이터를 갖는 extension_payload()를 포함하는 필 요소가 임의의 다른 확장 유형의 임의의 다른 확장 페이로드를 포함하지 않기 때문이다. 그러므로 eSBR 메타데이터가 자신의 확장 페이로드에 저장되는 실시형태에서, 별도의 필 요소가 eSBR 메타데이터를 저장하기 위해 사용된다. 이러한 필 요소는 필 요소의 시작을 나타내는 식별자(예를 들어, 도 7의 "ID2") 및 식별자 다음의 필 데이터를 포함한다. 필 데이터는 MPEG-4 AAC 표준의 표 4.57에 그 신택스가 제시되어 있는 extension_payload() 요소(때때로 본 명세서에서는 확장 페이로드라고 지칭함)를 포함할 수 있다. 필 데이터(예를 들어, 그것의 확장 페이로드)는 eSBR 오브젝트를 나타내는 헤더(예를 들어, 도 7의 필 요소 2의 "header2")를 포함하고 (즉, 헤더는 향상된 스펙트럼 대역 복제(eSBR) 오브젝트 유형을 초기화하고), 필 데이터(예를 들어, 그것의 확장 페이로드)는 헤더 다음의 eSBR 메타데이터를 포함한다. 예를 들어, 도 7의 필 요소 2는 헤더("header2")를 포함하고 또한, 헤더 다음에, eSBR 메타데이터(즉, 향상된 스펙트럼 대역 복제(eSBR) 처리가 블록의 오디오 콘텐츠에 대해 수행되어야 하는지를 나타내는, 필 요소 2 내의 "플래그")를 포함한다. 임의적으로, 추가 eSBR 메타데이터가 또한 header2 다음에, 도 7의 필 요소 2의 필 데이터에 포함된다. 본 단락에서 설명되는 실시형태에서, 헤더(예를 들어, 도 7의 header2)는 MPEG-4 AAC 표준의 표 4.57에서 명시된 종래의 값 중 하나가 아닌 식별 값을 가지며, 대신에 eSBR 확장 페이로드를 나타낸다(이에 따라 헤더의 extension_type 필드는 필 데이터가 eSBR 메타데이터를 포함한다는 것을 표시한다).
제1 부류의 실시형태에서, 본 발명은 오디오 처리 유닛(예를 들어, 디코더)으로서:
인코딩된 오디오 비트스트림의 적어도 하나의 블록(예를 들어, MPEG-4 AAC 비트스트림의 적어도 하나의 블록)을 저장하도록 구성된 메모리(예를 들어, 도 3 또는 도 4의 버퍼(201));
메모리에 결합되고 비트스트림의 상기 블록의 적어도 하나의 부분을 역다중화하도록 구성된 비트스트림 페이로드 디포맷터(예를 들어, 도 3의 요소(205) 또는 도 4의 요소(215)); 및
비트스트림의 상기 블록의 오디오 콘텐츠의 적어도 하나의 부분을 디코딩하도록 결합 및 구성된 디코딩 서브시스템(예를 들어, 도 3의 요소(202 및 203) 또는 도 4의 요소(202 및 213))을 포함하고, 상기 블록은:
필 요소의 시작을 나타내는 식별자(예를 들어, MPEG-4 AAC 표준의 표 4.85의 값 0x6을 갖는 "id_syn_ele" 식별자), 및 이 식별자 다음의 필 데이터를 포함하는 필 요소를 포함하고, 상기 필 데이터는,
향상된 스펙트럼 대역 복제(eSBR) 처리가 블록의 오디오 콘텐츠에 대해 (예를 들어, 블록에 포함된 스펙트럼 대역 복제 데이터 및 eSBR 메타데이터를 사용하여) 수행되어야 하는지를 식별하는 적어도 하나의 플래그를 포함한다.
플래그는 eSBR 메타데이터이고, 플래그의 예는 sbrPatchingMode 플래그이다. 플래그의 다른 예는 harmonicSBR 플래그이다. 이들 플래그 둘 모두는 기본 형태의 스펙트럼 대역 복제 또는 향상된 형태의 스펙트럼 복제가 블록의 오디오 데이터에 대해 수행되어야 하는지를 나타낸다. 기본 형태의 스펙트럼 복제는 스펙트럼 패칭이고, 향상된 형태의 스펙트럼 대역 복제는 하모닉 트랜스포지션이다.
일부 실시형태에서, 필 데이터는 또한 추가 eSBR 메타데이터(즉, 플래그 이외의 eSBR 메타데이터)를 포함한다.
메모리는 인코딩된 오디오 비트스트림의 적어도 하나의 블록을 (예를 들어, 비일시적인 방식으로) 저장하는 버퍼 메모리(예를 들어, 도 4의 버퍼(201)의 구현)일 수 있다.
(이들 eSBR 도구를 사용하는) eSBR 메타데이터를 포함하는 MPEG-4 AAC 비트스트림의 디코딩 중에 eSBR 디코더에 의한 (eSBR 하모닉 트랜스포지션 및 사전 평탄화를 사용하는) eSBR 처리의 수행의 복잡도는 (표시된 파라미터를 사용한 전형적인 디코딩의 경우에 대해) 다음과 같을 것으로 예상된다:
● 하모닉 트랜스포지션(16 kbps, 14400/28800 Hz)
o DFT 기반: 3.68 WMOPS(weighted million operations per second);
o QMF 기반: 0.98 WMOPS;
● QMF 패칭 사전 처리(사전 평탄화): 0.1 WMOPS.
DFT 기반 전치는 전형적으로는 과도 상태에 대한 QMF 기반 전치보다 잘 수행되는 것으로 알려져 있다.
본 발명의 일부 실시형태에 따르면, eSBR 메타데이터를 포함하는 (인코딩된 오디오 비트스트림의) 필 요소는 또한 그 값(예를 들어, bs_extension_id = 3)이 eSBR 메타데이터가 필 요소에 포함되고 eSBR 처리가 관련 블록의 오디오 콘텐츠에 대해 수행되어야 함을 시그널링하는 파라미터(예를 들어, "bs_extension_id" 파라미터), 및/또는 그 값(예를 들어, bs_extension_id = 2)이 필 요소의 sbr_extension() 컨테이너가 PS 데이터를 포함하는 것을 시그널링하는 파라미터(예를 들어, 동일한 "bs_extension_id" 파라미터)를 포함한다. 예를 들어, 아래의 표 1에 나타낸 바와 같이, 값 bs_extension_id = 2를 갖는 그러한 파라미터는 필 요소의 sbr_extension() 컨테이너가 PS 데이터를 포함하는 것을 시그널링할 수 있고, 값 bs_extension_id = 3을 갖는 그러한 파라미터는 필 요소의 sbr_extension() 컨테이너가 eSBR 메타데이터를 포함하는 것을 시그널링할 수 있다.
bs_extension_id 의미
0 Reserved
1 Reserved
2 EXTENSION_ID_PS
3 EXTENSION_ID_ESBR
본 발명의 일부 실시형태에 따르면, eSBR 메타데이터 및/또는 PS 데이터를 포함하는 각각의 스펙트럼 대역 복제 확장 요소의 신택스는 아래의 표 2에 나타낸 바와 같다(여기서 "sbr_extension()"은 스펙트럼 대역 복제 확장 요소인 컨테이너를 나타내고, "bs_extension_id"는 위의 표 1에서 설명한 바와 같고, "ps_data"는 PS 데이터를 나타내고, "esbr_data"는 eSBR 메타데이터를 나타낸다):
sbr_extension(bs_extension_id, num_bits_left)
{
switch (bs_extension_id) {
case EXTENSION_ID_PS:
num_bits_left -= ps_data(); 주 1
break;
case EXTENSION_ID_ESBR:
num_bits_left -= esbr_data(); 주 2
break;
default:
bs_fill_bits;
num_bits_left = 0;
break;
}
}
주 1: ps_data()는 판독된 비트의 수를 리턴한다.
주 2: esbr_data()는 판독된 비트의 수를 리턴한다.
예시적인 실시형태에서, 위의 표 2에서 언급된 esbr_data()는 다음의 메타데이터 파라미터의 값을 나타낸다:1. 1-비트 메타데이터 파라미터, "bs_sbr_preprocessing"; 및2. 디코딩될 인코딩된 비트스트림의 오디오 콘텐츠의 각각의 채널("ch")에 대해, 각각의 위에서 설명한 파라미터: "sbrPatchingMode[ch]"; "sbrOversamplingFlag[ch]"; "sbrPitchInBinsFlag[ch]"; 및 "sbrPitchInBins[ch]".
예를 들어, 일부 실시형태에서, esbr_data()는 이들 메타데이터 파라미터를 나타내기 위해, 하기 표 3에 나타나 있는 신택스를 가질 수 있다:
Syntax 비트의 수
esbr_data(id_aac, bs_coupling)
{
bs_sbr_preprocessing; 1
if (id_aac == ID_SCE) {
if (sbrPatchingMode[0] == 0) { 1
sbrOversamplingFlag[0]; 1
if (sbrPitchInBinsFlag[0]) 1
sbrPitchInBins[0]; 7
else
sbrPitchInBins[0] = 0;
} else {
sbrOversamplingFlag[0] = 0;
sbrPitchInBins[0] = 0;
}
} else if (id_aac == ID_CPE) {
If (bs_coupling) {
if (sbrPatchingMode[0,1] == 0) { 1
sbrOversamplingFlag[0,1]; 1
if (sbrPitchInBinsFlag[0,1]) 1
sbrPitchInBins[0,1]; 7
else
sbrPitchInBins[0,1] = 0;
} else {
sbrOversamplingFlag[0,1] = 0;
sbrPitchInBins[0,1] = 0;
}
} else { /* bs_coupling == 0 */
if (sbrPatchingMode[0] == 0) { 1
sbrOversamplingFlag[0]; 1
if (sbrPitchInBinsFlag[0]) 1
sbrPitchInBins[0]; 7
else
sbrPitchInBins[0] = 0;
} else {
sbrOversamplingFlag[0] = 0;
sbrPitchInBins[0] = 0;
}
if (sbrPatchingMode[1] == 0) { 1
sbrOversamplingFlag[1]; 1
if (sbrPitchInBinsFlag[1]) 1
sbrPitchInBins[1]; 7
else
sbrPitchInBins[1] = 0;
} else {
sbrOversamplingFlag[1] = 0;
sbrPitchInBins[1] = 0;
}
}
}
}
주: bs_sbr_preprocessing은 ISO/IEC 23003-3:2012의 섹션 6.2.12에서 정의된다. sbrPatchingMode[ch], sbrOversamplingFlag[ch], sbrPitchInBinsFlag[ch]sbrPitchInBins[ch]은 ISO/IEC 23003-3:2012의 섹션 7.5에서 서술된 바와 같이 정의된다.
위의 신택스는 레거시 디코더의 확장으로서, 하모닉 트랜스포지션과 같은 향상된 형태의 스펙트럼 대역 복제의 효율적인 구현을 가능하게 한다. 구체적으로, 표 3의 eSBR 데이터는 비트스트림에서 이미 지원되지 않았거나 비트스트림에서 이미 지원되는 파라미터로부터 직접적으로 도출할 수 없는 향상된 형태의 스펙트럼 대역 복제를 수행하는 데 필요한 그러한 파라미터만을 포함한다. 향상된 형태의 스펙트럼 대역 복제를 수행하는 데 필요한 모든 다른 파라미터 및 처리 데이터는 비트스트림 내의 소정의 위치에 있는 기존 파라미터로부터 추출된다.예를 들어, MPEG-4 HE-AAC 또는 HE-AAC v2 컴플레인트 디코더는 하모닉 트랜스포지션과 같은 향상된 형태의 스펙트럼 대역 복제를 포함하도록 확장될 수 있다. 이러한 향상된 형태의 스펙트럼 대역 복제는 디코더에 의해 이미 지원되는 기본 형태의 스펙트럼 대역 복제에 추가된다. MPEG-4 HE-AAC 또는 HE-AAC v2 컴플레인트 디코더의 맥락에서, 이러한 기본 형태의 스펙트럼 대역 복제는 MPEG-4 AAC 표준의 섹션 4.6.18에서 정의된 바와 같은 QMF 스펙트럼 패칭 SBR 도구이다.향상된 형태의 스펙트럼 대역 복제를 수행할 때, 확장된 HE-AAC 디코더는 비트스트림의 SBR 확장 페이로드에 이미 포함된 비트스트림 파라미터 중 다수를 재사용할 수 있다. 재사용될 수 있는 특정 파라미터는, 예를 들어, 마스터 주파수 대역 표를 결정하는 다양한 파라미터를 포함한다. 이들 파라미터는 bs_start_freq(마스터 주파수 표 파라미터의 시작을 결정하는 파라미터), bs_stop_freq(마스터 주파수 표의 중지를 결정하는 파라미터), bs_freq_scale(옥타브 당 주파수 대역의 수를 결정하는 파라미터), 및 bs_alter_scale(주파수 대역의 규모를 변경하는 파라미터)를 포함한다. 재사용될 수 있는 파라미터는 또한 잡음 대역 표를 결정하는 파라미터(bs_noise_bands) 및 리미터 대역 표 파라미터(bs_limiter_bands)를 포함한다. 따라서, 다양한 실시형태에서, USAC 표준에 명시된 동등한 파라미터 중 적어도 일부가 비트스트림으로부터 생략되어, 비트스트림에서 제어 오버헤드를 감소시킨다. 전형적으로, AAC 표준에 명시된 파라미터가 USAC 표준에 명시된 동등한 파라미터를 갖는 경우, USAC 표준에 명시된 동등한 파라미터는 AAC 표준에 명시된 파라미터, 예를 들면, 엔벨로프 스케일팩터(envelope scalefactors) EOrigMapped와 동일한 이름을 갖는다. 그러나 USAC 표준에 명시된 동등한 파라미터는 전형적으로, AAC 표준에서 정의된 SBR 처리 대신 USAC 표준에서 정의된 향상된 SBR 처리에 대해 "조정된(tuned)" 상이한 값을 갖는다.
많은 파라미터 이외에, 본 발명의 실시형태에 따라 향상된 형태의 스펙트럼 대역 복제를 수행할 때 다른 데이터 요소가 또한 확장된 HE-AAC에 의해 재사용될 수 있다. 예를 들어, 엔벨로프 데이터 및 잡음 플로어(noise floor) 데이터가 또한 bs_data_env(엔벨로프 스케일팩터) 및 bs_noise_env(잡음 플로어 스케일팩터) 데이터로부터 추출되고 향상된 형태의 스펙트럼 대역 복제 동안 사용될 수 있다.
본질적으로, 이들 실시형태는 SBR 확장 페이로드에서 레거시 HE-AAC 또는 HE-AAC v2 디코더에 의해 이미 지원되는 구성 파라미터 및 엔벨로프 데이터를 이용하여 가능한 한 적은 추가 전송 데이터를 요구하는 향상된 형태의 스펙트럼 대역 복제를 가능하게 한다. 원본 메타 데이터는 기본 형태의 HFR(예를 들어, SBR의 스펙트럼 패칭)에 맞추어 조정되었지만, 실시형태에 따라, 향상된 형태의 HFR(예를 들어, eSBR의 하모닉 트랜스포지션)에 사용된다. 이전에 논의된 바와 같이, 일반적으로 메타데이터는 조정되어 기본 형태의 HFR(예를 들어, 선형 변환)과 함께 사용되도록 의도된 동작 파라미터(예를 들어, 엔벨로프 스케일팩터, 잡음 플로어 스케일팩터, 시간/주파수 그리드 파라미터, 사인파 부가 정보, 가변 크로스 오버 주파수/대역, 역 필터링 모드, 엔벨로프 분해능, 스무딩 모드, 주파수 보간 모드)를 나타낸다. 그러나, 향상된 형태의 HFR(예를 들어, 하모닉 트랜스포지션)에 특유한 부가적인 메타데이터 파라미터와 결합된 이러한 메타데이터는 향상된 형태의 HFR을 사용하여 오디오 데이터를 효율적이고 효과적으로 처리하는 데 사용될 수 있다.
따라서, 향상된 형태의 스펙트럼 대역 복제를 지원하는 확장된 디코더는 이미 정의된 비트스트림 요소(예를 들어, SBR 확장 페이로드에 있는 것들)에 의존하고 (필 요소 확장 페이로드에서) 향상된 형태의 스펙트럼 대역 복제를 지원하는 데 필요한 파라미터만을 추가함으로써 매우 효율적인 방식으로 생성될 수 있다. 확장 컨테이너와 같은 예비된 데이터 필드에 새로 추가된 파라미터들의 배치와 결합된 이와 같은 데이터 축소 특징은 비트스트림이 향상된 형태의 스펙트럼 대역 복제를 지원하지 않는 레거시 디코더와 하위호환 가능하도록 보장함으로써 향상된 형태의 스펙트럼 대역 복제를 지원하는 디코더를 만드는 것에 대한 장벽을 상당히 감소시킨다.
표 3에서 오른쪽 열의 숫자는 왼쪽 열에 대응하는 파라미터의 비트 수를 나타낸다.
일부 실시형태에서, MPEG-4 AAC에서 정의된 SBR 오브젝트 유형은 SBR 확장 요소(bs_extension_id==EXTENSION_ID_ESBR)에서 시그널링된 SBR 도구 또는 향상된 SBR (eSBR) 도구의 양상을 포함하도록 업데이트된다.
일부 실시형태에서, 본 발명은 오디오 데이터를 인코딩하여 인코딩된 비트스트림(예를 들어, MPEG-4 AAC 비트스트림)을 생성하는 단계를 포함하는 방법으로서, 이는 인코딩된 비트스트림의 적어도 하나의 블록의 적어도 하나의 세그먼트에 eSBR 메타데이터를 포함시키고 그 블록의 적어도 하나의 다른 세그먼트에 오디오 데이터를 포함시키는 것을 포함한다. 전형적인 실시형태에서, 이러한 방법은 인코딩된 비트스트림의 각각의 블록에서 오디오 데이터를 eSBR 메타데이터와 다중화하는 단계를 포함한다. eSBR 디코더에서 인코딩된 비트스트림의 전형적인 디코딩에서, 디코더는 비트스트림으로부터 eSBR 메타데이터를 추출하고(eSBR 메타데이터 및 오디오 데이터를 구문 분석하고 역다중화하는 것을 포함함) eSBR 메타데이터를 사용하여 오디오 데이터를 처리하여 디코딩된 오디오 데이터의 스트림을 생성한다.
본 발명의 다른 양태는 eSBR 메타데이터를 포함하지 않는 인코딩된 오디오 비트스트림(예를 들어, MPEG-4 AAC 비트스트림)의 디코딩 중에 (예를 들어, 하모닉 트랜스포지션, 사전 평탄화, 또는 사전 평탄화로 알려진 eSBR 도구 중 적어도 하나를 사용하여) eSBR 처리를 수행하도록 구성된 eSBR 디코더이다. 이러한 디코더의 예는 도 5를 참조하여 설명될 것이다.
도 5의 eSBR 디코더(400)는 도시된 바와 같이 연결된, (도 3 및 도 4의 메모리(201)와 동일한) 버퍼 메모리(201), (도 4의 디포맷터(215)와 동일한) 비트스트림 페이로드 디포맷터(215), (때때로 "코어" 디코딩 스테이지 또는 "코어" 디코딩 서브시스템이라고 지칭되고, 도 3의 코어 디코딩 서브시스템(202)과 동일한) 오디오 디코딩 서브시스템(202), eSBR 제어 데이터 생성 서브시스템(401), 및 (도 3의 스테이지(203)와 동일한) eSBR 처리 스테이지(203)를 포함한다. 또한, 전형적으로, 디코더(400)는 다른 처리 요소(도시되지 않음)를 포함한다.
디코더(400)의 동작에서, 디코더(400)에 의해 수신된 인코딩된 오디오 비트스트림(MPEG-4 AAC 비트스트림)의 블록의 시퀀스가 버퍼(201)로부터 디포맷터(215)로 어서트된다.
디포맷터(215)는 비트스트림의 각각의 블록을 역다중화하여 (양자화된 엔벨로프 데이터를 포함하는) SBR 메타데이터 및 전형적으로 또한 그로부터 다른 메타데이터를 추출하도록 결합 및 구성된다. 디포맷터(215)는 적어도 SBR 메타데이터를 eSBR 처리 스테이지(203)로 어서트하도록 구성된다. 디포맷터(215)는 또한 비트스트림의 각각의 블록으로부터 오디오 데이터를 추출하고, 추출된 오디오 데이터를 디코딩 서브시스템(디코딩 스테이지)(202)으로 어서트하도록 결합되고 구성된다.
디코더(400)의 오디오 디코딩 서브시스템(202)은 디포맷터(215)에 의해 추출된 오디오 데이터를 디코딩하여(이러한 디코딩은 "코어" 디코딩 동작이라고 지칭될 수 있음) 디코딩된 오디오 데이터를 생성하고, 디코딩된 오디오 데이터를 eSBR 처리 스테이지(203)로 어서트하도록 구성된다. 디코딩은 주파수 도메인에서 수행된다. 전형적으로, 서브시스템(202)에서의 최종 처리 스테이지는 서브시스템의 출력이 시간 도메인의 디코딩된 오디오 데이터가 되도록, 디코딩된 주파수 도메인 오디오 데이터에 주파수 도메인-시간 도메인 변환을 적용한다. 스테이지(203)는 디코더(400)로부터 출력되는 완전히 디코딩된 오디오 데이터를 생성기 위해, (디포맷터(215)에 의해 추출된) SBR 메타데이터에 의해 그리고 서브시스템(401)에서 생성된 eSBR 메타데이터에 의해 나타내어진 SBR 도구(및 eSBR 도구)를 디코딩된 오디오 데이터에 적용하도록 (즉, SBR 및 eSBR 메타데이터를 사용하여 디코딩 서브시스템(202)의 출력에 대해 SBR 및 eSBR 처리를 수행하도록) 구성된다. 전형적으로, 디코더(400)는 디포맷터(215)(및 임의적으로 또한 서브시스템(401))로부터 출력되는 디포맷팅된 오디오 데이터 및 메타데이터 출력을 저장하는 (서브시스템(202) 및 스테이지(203)에 의해 액세스 가능한) 메모리를 포함하고, 스테이지(203)는 SBR 및 eSBR 처리 동안 필요에 따라 오디오 데이터 및 메타데이터에 액세스하도록 구성된다. 스테이지(203)에서의 SBR 처리는 코어 디코딩 서브시스템(202)의 출력에 대한 후처리인 것으로 간주될 수 있다. 임의적으로, 디코더(400)는 또한 (디포맷터(215)에 의해 추출된 PS 메타데이터를 사용하여, MPEG-4 AAC 표준에서 정의된 파라메트릭 스테레오("PS") 도구를 적용할 수 있는) 최종 업믹싱 서브시스템을 포함하고, 이는 APU(210)로부터 출력되는 완전히 디코딩되고 업믹싱된 오디오를 생성하기 위해 스테이지(203)의 출력에 대해 업믹싱을 수행하도록결합되고 구성된다.
도 5의 제어 데이터 생성 서브시스템(401)은 디코딩될 인코딩된 오디오 비트스트림의 적어도 하나의 특성을 검출하고, 검출 단계의 적어도 하나의 결과에 응답하여 eSBR 제어 데이터(이는 본 발명의 다른 실시형태에 따른 인코딩된 오디오 비트스트림에 포함된 유형 중 임의의 유형의 eSBR 메타데이터일 수도 있고 또는 이를 포함할 수도 있음)를 생성하도록 결합되고 구성된다. eSBR 제어 데이터는 비트스트림의 특정 특성(또는 특성의 조합)을 검출할 때 개별 eSBR 도구 또는 eSBR 도구의 조합의 적용을 트리거하고 및/또는 그러한 eSBR 도구의 적용을 제어하기 위해 스테이지(203)로 어서트된다. 예를 들어, 하모닉 트랜스포지션을 사용한 eSBR 처리의 수행을 제어하기 위해, 제어 데이터 생성 서브시스템(401)의 일부 실시형태는: 비트스트림이 음악을 나타내거나 그렇지 않다는 것을 검출하는 것에 응답하여 sbrPatchingMode[ch] 파라미터를 설정하기 위한(그리고 설정된 파라미터를 스테이지(203)로 어서트하기 위한) 음악 검출기(예를 들어, 종래의 음악 검출기의 단순화된 버전); 비트스트림에 의해 나타내어진 오디오 콘텐츠의 과도 상태의 존재 또는 부재를 검출하는 것에 응답하여 sbrOversamplingFlag[ch] 파라미터를 설정하기 위한(그리고 설정된 파라미터를 스테이지(203)로 어서트하기 위한) 과도 검출기; 및/또는 비트스트림에 의해 나타내어진 오디오 콘텐츠의 피치를 검출하는 것에 응답하여 sbrPitchInBinsFlag[ch] 및 sbrPitchInBins[ch] 파라미터를 설정하기 위한(그리고 설정된 파라미터를 스테이지(203)로 어서트하기 위한) 피치 검출기를 포함할 것이다. 본 발명의 다른 양태는 이 단락 및 이전 단락에서 설명된 본 발명의 디코더의 임의의 실시형태에 의해 수행되는 오디오 비트스트림 디코딩 방법이다.
본 발명의 양태는 본 발명의 진보적 APU, 시스템 또는 디바이스의 임의의 실시형태가 수행하도록 구성되는 (예를 들어, 프로그램되는) 유형의 인코딩 또는 디코딩 방법을 포함한다. 본 발명의 다른 양태는 본 발명의 방법의 임의의 실시형태를 수행하도록 구성된 (예를 들어, 프로그래밍된) 시스템 또는 디바이스, 및 본 발명의 방법 또는 방법의 단계의 임의의 실시형태를 구현하기 위한 코드를 (예를 들어, 비일시적인 방식으로) 저장하는 컴퓨터 판독 가능 매체(예를 들어, 디스크)를 포함한다. 예를 들어, 본 발명의 시스템은 본 발명의 방법 또는 방법의 단계의 실시형태를 비롯하여, 데이터에 대해 다양한 동작 중 임의의 동작을 수행하도록 소프트웨어 또는 펌웨어로 프로그램되고 및/또는 다른 방식으로 구성된 프로그램 가능한 범용 프로세서, 디지털 신호 프로세서, 또는 마이크로프로세서일 수 있거나 이를 포함할 수 있다. 이러한 범용 프로세서는 입력 디바이스, 메모리 및 이들에 어서트된 데이터에 응답하여 본 발명의 방법(또는 방법의 단계)의 실시형태를 수행하도록 프로그램된 (및/또는 다른 방식으로 구성된) 처리 회로를 포함하는 컴퓨터 시스템일 수 있거나 이를 포함할 수 있다.
본 발명의 실시형태는 하드웨어, 펌웨어, 또는 소프트웨어, 또는 이 둘의 조합으로(예를 들어, 프로그램 가능한 논리 어레이로서) 구현될 수 있다. 달리 명시되지 않는 한, 본 발명의 일부로서 포함된 알고리즘 또는 프로세스는 본질적으로 임의의 특정 컴퓨터 또는 다른 장치와 관련되지 않는다. 특히, 다양한 범용 머신이 본 명세서의 교시에 따라 작성된 프로그램과 함께 사용될 수 있거나, 요구된 방법 단계를 수행하기 위해 보다 특화된 장치(예를 들어, 집적 회로)를 구성하는 것이 보다 편리할 수 있다. 따라서, 본 발명은 적어도 하나의 프로세서, (휘발성 및 비휘발성 메모리 및/또는 저장 요소를 비롯한) 적어도 하나의 데이터 저장 시스템, 적어도 하나의 입력 디바이스 또는 포트, 및 적어도 하나의 출력 디바이스 또는 포트를 각각 포함하는 하나 이상의 프로그램 가능한 컴퓨터 시스템(예를 들어, 도 1의 요소, 또는 도 2의 인코더(100)(또는 그의 요소), 도 3의 디코더(200)(또는 그의 요소), 도 4의 디코더(210)(또는 그의 요소), 또는 도 5의 디코더(400)(또는 그의 요소) 중 임의의 것의 구현)에서 실행되는 하나 이상의 컴퓨터 프로그램으로 구현될 수 있다. 프로그램 코드는 입력 데이터에 적용되어 본 명세서에서 설명된 기능을 수행하고 출력 정보를 생성한다. 출력 정보는 알려진 방식으로 하나 이상의 출력 디바이스에 적용된다.
이러한 각각의 프로그램은 컴퓨터 시스템과 통신하기 위해 (머신, 어셈블리 또는 고급 절차적, 논리적, 또는 오브젝트 지향 프로그래밍 언어를 포함하는) 임의의 원하는 컴퓨터 언어로 구현될 수 있다. 어떤 경우이든, 언어는 컴파일된 언어 또는 해석된 언어일 수 있다.
예를 들어, 컴퓨터 소프트웨어 명령어 시퀀스에 의해 구현될 때, 본 발명의 실시형태의 다양한 기능 및 단계는 적절한 디지털 신호 처리 하드웨어에서 실행되는 멀티스레드 소프트웨어 명령어 시퀀스에 의해 구현될 수 있으며, 이 경우에 실시형태의 다양한 디바이스, 단계, 및 기능은 소프트웨어 명령어의 부분에 대응할 수 있다.
이러한 각각의 컴퓨터 프로그램은 바람직하게는 범용 또는 특수 목적 프로그램 가능한 컴퓨터에 의해 판독 가능 저장 매체 또는 디바이스(예를 들어, 솔리드 스테이트 메모리 또는 매체, 또는 자기 또는 광학 매체) 상에 저장되거나 다운로드되어, 그 저장 매체 또는 디바이스가 컴퓨터 시스템에 의해 판독될 때 본 명세서에서 설명된 절차를 수행하도록 컴퓨터를 구성하고 동작시킨다. 본 발명의 시스템은 또한 컴퓨터 프로그램으로 구성되는 (즉, 컴퓨터 프로그램을 저장하는), 컴퓨터 판독 가능 저장 매체로서 구현될 수 있으며, 그렇게 구성된 저장 매체는 컴퓨터 시스템이 본 명세서에서 설명된 기능을 수행하도록 특정의 미리 정의된 방식으로 동작하게 한다.
본 발명의 다수의 실시형태를 설명하였다. 그럼에도 불구하고, 본 발명의 사상 및 범위를 벗어나지 않고 다양한 변형이 이루어질 수 있다는 것을 이해할 것이다. 본 발명의 많은 수정 및 변형이 상기 교시에 비추어 가능하다. 예를 들어, 효율적인 구현을 용이하게 하기 위해, 복소 QMF 분석 및 합성 필터 뱅크와 함께 위상 시프트(phase shift)가 사용될 수 있다. 분석 필터뱅크는 코어 디코더에 의해 생성된 시간-도메인 저대역 신호를 복수의 부대역(예를 들어, QMF 부대역)으로 필터링하는 역할을 한다. 합성 필터뱅크는 (수신된 sbrPatchingMode 파라미터에 의해 나타내어지는) 선택된 HFR 기술에 의해 생성된 재생성된 고대역을 디코딩된 저대역과 결합하여 광대역 출력 오디오 신호를 생성하는 역할을 한다. 그러나, 특정 샘플 레이트 모드, 예를 들어, 정상적인 듀얼 레이트 동작 또는 다운 샘플링된 SBR 모드에서 동작하는 주어진 필터뱅크 구현은 비트스트림 의존적인 위상 시프트를 가져서는 안된다. SBR에서 사용되는 QMF 뱅크는 코사인 변조 필터 뱅크의 이론의 복소 지수 확장이다. 복소 지수 변조를 갖는 코사인 변조 필터뱅크를 확장할 때 앨리어스 상쇄 제약이 더 이상 쓸모가 없어진다는 것을 알 수 있다. 따라서, SBR QMF 뱅크의 경우, 분석 필터 hk(n) 및 합성 필터 fk(n) 둘 다는 다음과 같이 정의될 수 있다.
Figure 112020019421531-pat00001
여기서, p0(n)은 실수 값 대칭 또는 비대칭 프로토타입 필터(전형적으로, 저역 통과 프로토타입 필터)이고, M은 채널 수를 나타내며, N은 프로토타입 필터 차수이다. 분석 필터뱅크에서 사용되는 채널 수는 합성 필터뱅크에서 사용되는 채널 수와 상이할 수 있다. 예를 들어, 분석 필터뱅크는 32 개 채널을 가질 수 있고 합성 필터뱅크는 64개 채널을 가질 수 있다. 다운 샘플 모드에서 합성 필터뱅크를 동작시킬 때, 합성 필터뱅크는 32개 채널만을 가질 수 있다. 필터 뱅크로부터의 부대역 샘플은 복소수 값(complex-valued)이기 때문에, 가능한 한 부가적인 채널 의존적 위상 시프트 단계가 분석 필터뱅크에 첨부될 수 있다. 이러한 엑스트라(extra) 위상 시프트는 합성 필터 뱅크 이전에 보상되어야 한다. 원칙적으로 위상 시프트 항은 QMF 분석/합성 체인의 동작을 파괴하지 않는 임의의 값일 수 있지만, 이들 항은 또한 적합성 검증을 위한 특정 값으로 제한될 수 있다. SBR 신호는 위상 인자의 선택에 의해 영향을 받을 것이지만 코어 디코더로부터 오는 저역 통과 신호는 그러하지 않을 것이다. 출력 신호의 오디오 품질은 영향을 받지 않는다.
프로토타입 필터의 계수 p0(n)은 아래의 표 4에 제시된 바와 같이 640 개의 길이 L로 정의될 수 있다.
n p0(n) n p0(n) n p0(n)
0 0.0000000000 214 0.0019765601 428 0.0117623832
1 -0.0005525286 215 -0.0032086896 429 0.0163701258
2 -0.0005617692 216 -0.0085711749 430 0.0207997072
3 -0.0004947518 217 -0.0141288827 431 0.0250307561
4 -0.0004875227 218 -0.0198834129 432 0.0290824006
5 -0.0004893791 219 -0.0258227288 433 0.0329583930
6 -0.0005040714 220 -0.0319531274 434 0.0366418116
7 -0.0005226564 221 -0.0382776572 435 0.0401458278
8 -0.0005466565 222 -0.0447806821 436 0.0434768782
9 -0.0005677802 223 -0.0514804176 437 0.0466303305
10 -0.0005870930 224 -0.0583705326 438 0.0495978676
11 -0.0006132747 225 -0.0654409853 439 0.0524093821
12 -0.0006312493 226 -0.0726943300 440 0.0550460034
13 -0.0006540333 227 -0.0801372934 441 0.0575152691
14 -0.0006777690 228 -0.0877547536 442 0.0598166570
15 -0.0006941614 229 -0.0955533352 443 0.0619602779
16 -0.0007157736 230 -0.1035329531 444 0.0639444805
17 -0.0007255043 231 -0.1116826931 445 0.0657690668
18 -0.0007440941 232 -0.1200077984 446 0.0674525021
19 -0.0007490598 233 -0.1285002850 447 0.0689664013
20 -0.0007681371 234 -0.1371551761 448 0.0703533073
21 -0.0007724848 235 -0.1459766491 449 0.0715826364
22 -0.0007834332 236 -0.1549607071 450 0.0726774642
23 -0.0007779869 237 -0.1640958855 451 0.0736406005
24 -0.0007803664 238 -0.1733808172 452 0.0744664394
25 -0.0007801449 239 -0.1828172548 453 0.0751576255
26 -0.0007757977 240 -0.1923966745 454 0.0757305756
27 -0.0007630793 241 -0.2021250176 455 0.0761748321
28 -0.0007530001 242 -0.2119735853 456 0.0765050718
29 -0.0007319357 243 -0.2219652696 457 0.0767204924
30 -0.0007215391 244 -0.2320690870 458 0.0768230011
31 -0.0006917937 245 -0.2423016884 459 0.0768173975
32 -0.0006650415 246 -0.2526480309 460 0.0767093490
33 -0.0006341594 247 -0.2631053299 461 0.0764992170
34 -0.0005946118 248 -0.2736634040 462 0.0761992479
35 -0.0005564576 249 -0.2843214189 463 0.0758008358
36 -0.0005145572 250 -0.2950716717 464 0.0753137336
37 -0.0004606325 251 -0.3059098575 465 0.0747452558
38 -0.0004095121 252 -0.3168278913 466 0.0741003642
39 -0.0003501175 253 -0.3278113727 467 0.0733620255
40 -0.0002896981 254 -0.3388722693 468 0.0725682583
41 -0.0002098337 255 -0.3499914122 469 0.0717002673
42 -0.0001446380 256 0.3611589903 470 0.0707628710
43 -0.0000617334 257 0.3723795546 471 0.0697630244
44 0.0000134949 258 0.3836350013 472 0.0687043828
45 0.0001094383 259 0.3949211761 473 0.0676075985
46 0.0002043017 260 0.4062317676 474 0.0664367512
47 0.0002949531 261 0.4175696896 475 0.0652247106
48 0.0004026540 262 0.4289119920 476 0.0639715898
49 0.0005107388 263 0.4402553754 477 0.0626857808
50 0.0006239376 264 0.4515996535 478 0.0613455171
51 0.0007458025 265 0.4629308085 479 0.0599837480
52 0.0008608443 266 0.4742453214 480 0.0585915683
53 0.0009885988 267 0.4855253091 481 0.0571616450
54 0.0011250155 268 0.4967708254 482 0.0557173648
55 0.0012577884 269 0.5079817500 483 0.0542452768
56 0.0013902494 270 0.5191234970 484 0.0527630746
57 0.0015443219 271 0.5302240895 485 0.0512556155
58 0.0016868083 272 0.5412553448 486 0.0497385755
59 0.0018348265 273 0.5522051258 487 0.0482165720
60 0.0019841140 274 0.5630789140 488 0.0466843027
61 0.0021461583 275 0.5738524131 489 0.0451488405
62 0.0023017254 276 0.5845403235 490 0.0436097542
63 0.0024625616 277 0.5951123086 491 0.0420649094
64 0.0026201758 278 0.6055783538 492 0.0405349170
65 0.0027870464 279 0.6159109932 493 0.0390053679
66 0.0029469447 280 0.6261242695 494 0.0374812850
67 0.0031125420 281 0.6361980107 495 0.0359697560
68 0.0032739613 282 0.6461269695 496 0.0344620948
69 0.0034418874 283 0.6559016302 497 0.0329754081
70 0.0036008268 284 0.6655139880 498 0.0315017608
71 0.0037603922 285 0.6749663190 499 0.0300502657
72 0.0039207432 286 0.6842353293 500 0.0286072173
73 0.0040819753 287 0.6933282376 501 0.0271859429
74 0.0042264269 288 0.7022388719 502 0.0257875847
75 0.0043730719 289 0.7109410426 503 0.0244160992
76 0.0045209852 290 0.7194462634 504 0.0230680169
77 0.0046606460 291 0.7277448900 505 0.0217467550
78 0.0047932560 292 0.7358211758 506 0.0204531793
79 0.0049137603 293 0.7436827863 507 0.0191872431
80 0.0050393022 294 0.7513137456 508 0.0179433381
81 0.0051407353 295 0.7587080760 509 0.0167324712
82 0.0052461166 296 0.7658674865 510 0.0155405553
83 0.0053471681 297 0.7727780881 511 0.0143904666
84 0.0054196775 298 0.7794287519 512 -0.0132718220
85 0.0054876040 299 0.7858353120 513 -0.0121849995
86 0.0055475714 300 0.7919735841 514 -0.0111315548
87 0.0055938023 301 0.7978466413 515 -0.0101150215
88 0.0056220643 302 0.8034485751 516 -0.0091325329
89 0.0056455196 303 0.8087695004 517 -0.0081798233
90 0.0056389199 304 0.8138191270 518 -0.0072615816
91 0.0056266114 305 0.8185776004 519 -0.0063792293
92 0.0055917128 306 0.8230419890 520 -0.0055337211
93 0.0055404363 307 0.8272275347 521 -0.0047222596
94 0.0054753783 308 0.8311038457 522 -0.0039401124
95 0.0053838975 309 0.8346937361 523 -0.0031933778
96 0.0052715758 310 0.8379717337 524 -0.0024826723
97 0.0051382275 311 0.8409541392 525 -0.0018039472
98 0.0049839687 312 0.8436238281 526 -0.0011568135
99 0.0048109469 313 0.8459818469 527 -0.0005464280
100 0.0046039530 314 0.8480315777 528 0.0000276045
101 0.0043801861 315 0.8497805198 529 0.0005832264
102 0.0041251642 316 0.8511971524 530 0.0010902329
103 0.0038456408 317 0.8523047035 531 0.0015784682
104 0.0035401246 318 0.8531020949 532 0.0020274176
105 0.0032091885 319 0.8535720573 533 0.0024508540
106 0.0028446757 320 0.8537385600 534 0.0028446757
107 0.0024508540 321 0.8535720573 535 0.0032091885
108 0.0020274176 322 0.8531020949 536 0.0035401246
109 0.0015784682 323 0.8523047035 537 0.0038456408
110 0.0010902329 324 0.8511971524 538 0.0041251642
111 0.0005832264 325 0.8497805198 539 0.0043801861
112 0.0000276045 326 0.8480315777 540 0.0046039530
113 -0.0005464280 327 0.8459818469 541 0.0048109469
114 -0.0011568135 328 0.8436238281 542 0.0049839687
115 -0.0018039472 329 0.8409541392 543 0.0051382275
116 -0.0024826723 330 0.8379717337 544 0.0052715758
117 -0.0031933778 331 0.8346937361 545 0.0053838975
118 -0.0039401124 332 0.8311038457 546 0.0054753783
119 -0.0047222596 333 0.8272275347 547 0.0055404363
120 -0.0055337211 334 0.8230419890 548 0.0055917128
121 -0.0063792293 335 0.8185776004 549 0.0056266114
122 -0.0072615816 336 0.8138191270 550 0.0056389199
123 -0.0081798233 337 0.8087695004 551 0.0056455196
124 -0.0091325329 338 0.8034485751 552 0.0056220643
125 -0.0101150215 339 0.7978466413 553 0.0055938023
126 -0.0111315548 340 0.7919735841 554 0.0055475714
127 -0.0121849995 341 0.7858353120 555 0.0054876040
128 0.0132718220 342 0.7794287519 556 0.0054196775
129 0.0143904666 343 0.7727780881 557 0.0053471681
130 0.0155405553 344 0.7658674865 558 0.0052461166
131 0.0167324712 345 0.7587080760 559 0.0051407353
132 0.0179433381 346 0.7513137456 560 0.0050393022
133 0.0191872431 347 0.7436827863 561 0.0049137603
134 0.0204531793 348 0.7358211758 562 0.0047932560
135 0.0217467550 349 0.7277448900 563 0.0046606460
136 0.0230680169 350 0.7194462634 564 0.0045209852
137 0.0244160992 351 0.7109410426 565 0.0043730719
138 0.0257875847 352 0.7022388719 566 0.0042264269
139 0.0271859429 353 0.6933282376 567 0.0040819753
140 0.0286072173 354 0.6842353293 568 0.0039207432
141 0.0300502657 355 0.6749663190 569 0.0037603922
142 0.0315017608 356 0.6655139880 570 0.0036008268
143 0.0329754081 357 0.6559016302 571 0.0034418874
144 0.0344620948 358 0.6461269695 572 0.0032739613
145 0.0359697560 359 0.6361980107 573 0.0031125420
146 0.0374812850 360 0.6261242695 574 0.0029469447
147 0.0390053679 361 0.6159109932 575 0.0027870464
148 0.0405349170 362 0.6055783538 576 0.0026201758
149 0.0420649094 363 0.5951123086 577 0.0024625616
150 0.0436097542 364 0.5845403235 578 0.0023017254
151 0.0451488405 365 0.5738524131 579 0.0021461583
152 0.0466843027 366 0.5630789140 580 0.0019841140
153 0.0482165720 367 0.5522051258 581 0.0018348265
154 0.0497385755 368 0.5412553448 582 0.0016868083
155 0.0512556155 369 0.5302240895 583 0.0015443219
156 0.0527630746 370 0.5191234970 584 0.0013902494
157 0.0542452768 371 0.5079817500 585 0.0012577884
158 0.0557173648 372 0.4967708254 586 0.0011250155
159 0.0571616450 373 0.4855253091 587 0.0009885988
160 0.0585915683 374 0.4742453214 588 0.0008608443
161 0.0599837480 375 0.4629308085 589 0.0007458025
162 0.0613455171 376 0.4515996535 590 0.0006239376
163 0.0626857808 377 0.4402553754 591 0.0005107388
164 0.0639715898 378 0.4289119920 592 0.0004026540
165 0.0652247106 379 0.4175696896 593 0.0002949531
166 0.0664367512 380 0.4062317676 594 0.0002043017
167 0.0676075985 381 0.3949211761 595 0.0001094383
168 0.0687043828 382 0.3836350013 596 0.0000134949
169 0.0697630244 383 0.3723795546 597 -0.0000617334
170 0.0707628710 384 -0.3611589903 598 -0.0001446380
171 0.0717002673 385 -0.3499914122 599 -0.0002098337
172 0.0725682583 386 -0.3388722693 600 -0.0002896981
173 0.0733620255 387 -0.3278113727 601 -0.0003501175
174 0.0741003642 388 -0.3168278913 602 -0.0004095121
175 0.0747452558 389 -0.3059098575 603 -0.0004606325
176 0.0753137336 390 -0.2950716717 604 -0.0005145572
177 0.0758008358 391 -0.2843214189 605 -0.0005564576
178 0.0761992479 392 -0.2736634040 606 -0.0005946118
179 0.0764992170 393 -0.2631053299 607 -0.0006341594
180 0.0767093490 394 -0.2526480309 608 -0.0006650415
181 0.0768173975 395 -0.2423016884 609 -0.0006917937
182 0.0768230011 396 -0.2320690870 610 -0.0007215391
183 0.0767204924 397 -0.2219652696 611 -0.0007319357
184 0.0765050718 398 -0.2119735853 612 -0.0007530001
185 0.0761748321 399 -0.2021250176 613 -0.0007630793
186 0.0757305756 400 -0.1923966745 614 -0.0007757977
187 0.0751576255 401 -0.1828172548 615 -0.0007801449
188 0.0744664394 402 -0.1733808172 616 -0.0007803664
189 0.0736406005 403 -0.1640958855 617 -0.0007779869
190 0.0726774642 404 -0.1549607071 618 -0.0007834332
191 0.0715826364 405 -0.1459766491 619 -0.0007724848
192 0.0703533073 406 -0.1371551761 620 -0.0007681371
193 0.0689664013 407 -0.1285002850 621 -0.0007490598
194 0.0674525021 408 -0.1200077984 622 -0.0007440941
195 0.0657690668 409 -0.1116826931 623 -0.0007255043
196 0.0639444805 410 -0.1035329531 624 -0.0007157736
197 0.0619602779 411 -0.0955533352 625 -0.0006941614
198 0.0598166570 412 -0.0877547536 626 -0.0006777690
199 0.0575152691 413 -0.0801372934 627 -0.0006540333
200 0.0550460034 414 -0.0726943300 628 -0.0006312493
201 0.0524093821 415 -0.0654409853 629 -0.0006132747
202 0.0495978676 416 -0.0583705326 630 -0.0005870930
203 0.0466303305 417 -0.0514804176 631 -0.0005677802
204 0.0434768782 418 -0.0447806821 632 -0.0005466565
205 0.0401458278 419 -0.0382776572 633 -0.0005226564
206 0.0366418116 420 -0.0319531274 634 -0.0005040714
207 0.0329583930 421 -0.0258227288 635 -0.0004893791
208 0.0290824006 422 -0.0198834129 636 -0.0004875227
209 0.0250307561 423 -0.0141288827 637 -0.0004947518
210 0.0207997072 424 -0.0085711749 638 -0.0005617692
211 0.0163701258 425 -0.0032086896 639 -0.0005525280
212 0.0117623832 426 0.0019765601
213 0.0069636862 427 0.0069636862
*프로토타입 필터 p0(n)은 라운딩(rounding), 서브샘플링(subsampling), 보간법(interpolation) 및 데시메이션(decimation)과 같은 하나 이상의 수학 연산에 의해 표 4에서 도출될 수도 있다.
첨부된 특허청구범위의 범주 내에서, 본 발명은 본 명세서에서 구체적으로 설명된 것과 다르게 실시될 수 있음을 이해하여야 한다. 다음의 특허청구범위에 포함된 임의의 참조 번호는 단지 예시를 위한 것으로, 어떤 식으로든 특허청구범위를 해석하거나 제한하는데 사용되지 않아야 한다.

Claims (17)

  1. 인코딩된 오디오 비트스트림을 디코딩하는 방법으로서,
    상기 인코딩된 오디오 비트스트림 - 상기 인코딩된 오디오 비트스트림은 오디오 신호의 저대역(lowband) 부분을 나타내는 오디오 데이터를 포함함 - 수신하는 단계;
    디코딩된 저대역 오디오 신호를 생성하기 위해, 상기 오디오 데이터를 디코딩하는 단계;
    상기 인코딩된 오디오 비트스트림으로부터 고주파 재구성 메타데이터(high frequency reconstruction metadata) - 상기 고주파 재구성 메타데이터는 다수의 부대역(subbands)을 상기 오디오 신호의 저대역 부분으로부터 상기 오디오 신호의 고대역(highband) 부분으로 전치시키는(transposes) 고주파 재구성 프로세스에 대한 동작 파라미터를 포함함 - 를 추출하는 단계;
    신호 적응적 주파수 도메인 오버샘플링(signal adaptive frequency domain oversampling )을 사용할지를 나타내는 파라미터를 인코딩 된 오디오 비트스트림으로부터 추출하는 단계;
    필터링된 저대역 오디오 신호를 생성하기 위해, 분석 필터뱅크(filterbank)로 상기 디코딩된 저대역 오디오 신호를 필터링하는 단계;
    상기 인코딩된 오디오 비트스트림으로부터 상기 오디오 데이터에 대하여 선형 변환 또는 하모닉 트랜스포지션(harmonic transposition)이 수행되어야 하는지를 나타내는 플래그를 추출하는 단계;
    상기 플래그에 따라 상기 필터링된 저대역 오디오 신호 및 상기 고주파 재구성 메타데이터를 사용하여 상기 오디오 신호의 고대역 부분을 재생성하는 단계; 및
    합성(synthesis) 필터뱅크를 사용하여 광대역 오디오 신호를 형성하기 위해 상기 필터링된 저대역 오디오 신호와 상기 재생성된 고대역 부분을 결합하는 단계를 포함하고,
    상기 분석 필터뱅크는,
    Figure 112021060077580-pat00002

    에 따라 프로토타입 필터 p0(n)의 변조된 버전인 분석 필터들 hk(n)을 포함하고,
    여기서 p0(n)는 실수 값(real-valued)의 대칭 또는 비대칭 프로토타입 필터이고, M은 상기 분석 필터뱅크 내의 채널 수이고, N은 상기 프로토타입 필터의 차수(order)이고,
    상기 분석 필터뱅크의 채널 수는 상기 합성 필터뱅크의 채널 수와 상이한, 방법.
  2. 제 1 항에 있어서,
    상기 인코딩된 오디오 비트스트림은 필 요소(fill element)의 시작을 나타내는 식별자를 갖는 상기 필 요소 및 상기 식별자 다음의 필 데이터를 더 포함하고, 상기 필 데이터는 상기 플래그를 포함하는, 방법.
  3. 제 2 항에 있어서,
    상기 식별자는 0x6의 값을 갖는, 3 비트의 최상위 비트가 먼저 전송되는 무부호 정수(unsigned integer transmitted most significant bit first)인, 방법.
  4. 제 2 항에 있어서,
    상기 필 데이터는 확장 페이로드(payload)를 포함하고, 상기 확장 페이로드는 스펙트럼 대역 복제 확장 데이터(spectral band replication extension data)를 포함하고, 상기 확장 페이로드는 '1101' 또는 '1110'의 값을 갖는, 4 비트의 최상위 비트가 먼저 전송되는 무부호 정수로 식별되고, 임의적으로,
    상기 스펙트럼 대역 복제 확장 데이터는:
    임의적인 스펙트럼 대역 복제 헤더,
    상기 헤더 다음의 스펙트럼 대역 복제 데이터,
    상기 스펙트럼 대역 복제 데이터 다음의 스펙트럼 대역 복제 확장 요소를 포함하며, 상기 플래그는 상기 스펙트럼 대역 복제 확장 요소에 포함되는, 방법.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 고주파 재구성 메타데이터는 엔벨로프 스케일팩터(envelope scalefactors), 잡음 플로어 스케일 팩터(noise floor scale factors), 사인파(sinusoid) 부가 정보, 시간/주파수 그리드(grid) 정보, 크로스오버(crossover) 주파수 및 역 필터링 모드로 이루어진 그룹으로부터 선택된 동작 파라미터를 포함하는, 방법.
  6. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 프로토타입 필터 p0(n)은 표 4의 계수로부터 도출되는, 방법.
  7. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 프로토타입 필터 p0(n)은 라운딩(rounding), 서브샘플링(subsampling), 보간법(interpolation) 또는 데시메이션(decimation)으로 이루어진 그룹으로부터 선택된 하나 이상의 수학 연산에 의해 표 4의 계수로부터 도출되는, 방법.
  8. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    위상 시프트(phase shift)는 상기 필터링 이후에 상기 필터링된 저대역 오디오 신호에 부가되고 상기 결합 이전에 보상되는, 방법.
  9. 프로세서에 의해 실행될 때 제 1 항의 방법을 수행하는 명령어를 기록하는 비일시적 컴퓨터 판독 가능 저장 매체.
  10. 인코딩된 오디오 비트스트림을 디코딩하기 위한 디코더로서, 상기 디코더는:
    상기 인코딩된 오디오 비트스트림 - 상기 인코딩된 오디오 비트스트림은 오디오 신호의 저대역 부분을 나타내는 오디오 데이터를 포함함 - 수신하기 위한 입력 인터페이스;
    디코딩된 저대역 오디오 신호를 생성하기 위해, 상기 오디오 데이터를 디코딩하기 위한 코어(core) 디코더;
    상기 인코딩된 오디오 비트스트림으로부터 고주파 재구성 메타데이터 - 상기 고주파 재구성 메타데이터는 다수의 부대역을 상기 오디오 신호의 저대역 부분으로부터 상기 오디오 신호의 고대역 부분으로 전치시키는 고주파 재구성 프로세스에 대한 동작 파라미터를 포함함 - 및 신호 적응적 주파수 도메인 오버샘플링을 사용하는지를 나타내는 파라미터를 추출하기 위한 디포맷터(deformatter);
    필터링된 저대역 오디오 신호를 생성하기 위해, 상기 디코딩된 저대역 오디오 신호를 필터링하기 위한 분석 필터뱅크;
    상기 인코딩된 오디오 비트스트림으로부터 상기 오디오 데이터에 대하여 선형 변환 또는 하모닉 트랜스포지션이 수행되어야 하는지를 나타내는 플래그를 추출하기 위한 디포맷터;
    상기 플래그에 따라 상기 필터링된 저대역 오디오 신호 및 상기 고주파 재구성 메타데이터를 사용하여 상기 오디오 신호의 고대역 부분을 재생성하기 위한 고주파 재생성기; 및
    광대역 오디오 신호를 형성하기 위해, 상기 필터링된 저대역 오디오 신호와 상기 재생성된 고대역 부분을 결합하기 위한 합성 필터뱅크를 포함하고,
    상기 분석 필터뱅크는,
    Figure 112021060077580-pat00003

    에 따라 프로토타입 필터 p0(n)의 변조된 버전인 분석 필터들 hk(n)을 포함하고,
    여기서 p0(n)는 실수 값의 대칭 또는 비대칭 프로토타입 필터이고, M은 상기 분석 필터뱅크 내의 채널 수이고, N은 상기 프로토타입 필터의 차수이고,
    상기 분석 필터뱅크의 채널 수는 상기 합성 필터뱅크의 채널 수와 상이한, 디코더.
  11. 제 10 항에 있어서,
    상기 인코딩된 오디오 비트스트림은 필 요소의 시작을 나타내는 식별자를 갖는 상기 필 요소 및 상기 식별자 다음의 필 데이터를 더 포함하고, 상기 필 데이터는 상기 플래그를 포함하는, 디코더.
  12. 제 11 항에 있어서,
    상기 식별자는 0x6의 값을 갖는, 3 비트의 최상위 비트가 먼저 전송되는 무부호 정수(unsigned integer transmitted most significant bit first)인, 디코더.
  13. 제 11 항에 있어서,
    상기 필 데이터는 확장 페이로드를 포함하고, 상기 확장 페이로드는 스펙트럼 대역 복제 확장 데이터를 포함하고, 상기 확장 페이로드는 '1101' 또는 '1110'의 값을 갖는, 4 비트의 최상위 비트가 먼저 전송되는 무부호 정수로 식별되고, 임의적으로,
    상기 스펙트럼 대역 복제 확장 데이터는:
    임의적인 스펙트럼 대역 복제 헤더,
    상기 헤더 다음의 스펙트럼 대역 복제 데이터,
    상기 스펙트럼 대역 복제 데이터 다음의 스펙트럼 대역 복제 확장 요소를 포함하며, 상기 플래그는 상기 스펙트럼 대역 복제 확장 요소에 포함되는, 디코더.
  14. 제 10 항 내지 제 13 항 중 어느 한 항에 있어서,
    상기 고주파 재구성 메타데이터는 엔벨로프 스케일팩터, 잡음 플로어 스케일팩터, 사인파 부가 정보, 시간/주파수 그리드 정보, 크로스오버 주파수 및 역 필터링 모드로 이루어진 그룹으로부터 선택된 동작 파라미터를 포함하는, 디코더.
  15. 제 10 항 내지 제 13 항 중 어느 한 항에 있어서,
    상기 프로토타입 필터 p0(n)은 표 4의 계수로부터 도출되는, 디코더.
  16. 제 10 항 내지 제 13 항 중 어느 한 항에 있어서,
    상기 프로토타입 필터 p0(n)은 라운딩, 서브샘플링, 보간법 또는 데시메이션으로 이루어진 그룹으로부터 선택된 하나 이상의 수학 연산에 의해 표 4의 계수로부터 도출되는, 디코더.
  17. 제 10 항 내지 제 13 항 중 어느 한 항에 있어서,
    위상 시프트는 상기 필터링 이후에 상기 필터링된 저대역 오디오 신호에 부가되고 상기 결합 이전에 보상되는, 디코더.
KR1020207005362A 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합 KR102275129B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020217020861A KR102390360B1 (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201762475619P 2017-03-23 2017-03-23
US62/475,619 2017-03-23
KR1020197019117A KR102083768B1 (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합
PCT/US2018/023183 WO2018175347A1 (en) 2017-03-23 2018-03-19 Backward-compatible integration of harmonic transposer for high frequency reconstruction of audio signals

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020197019117A Division KR102083768B1 (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020217020861A Division KR102390360B1 (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합

Publications (2)

Publication Number Publication Date
KR20200022547A KR20200022547A (ko) 2020-03-03
KR102275129B1 true KR102275129B1 (ko) 2021-07-09

Family

ID=63585721

Family Applications (6)

Application Number Title Priority Date Filing Date
KR1020207005362A KR102275129B1 (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합
KR1020247000374A KR20240008408A (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합
KR1020237039405A KR20230160960A (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합
KR1020227013276A KR102622804B1 (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합
KR1020197019117A KR102083768B1 (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합
KR1020217020861A KR102390360B1 (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합

Family Applications After (5)

Application Number Title Priority Date Filing Date
KR1020247000374A KR20240008408A (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합
KR1020237039405A KR20230160960A (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합
KR1020227013276A KR102622804B1 (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합
KR1020197019117A KR102083768B1 (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합
KR1020217020861A KR102390360B1 (ko) 2017-03-23 2018-03-19 오디오 신호의 고주파 재구성을 위한 하모닉 트랜스포저의 하위호환형 통합

Country Status (26)

Country Link
US (7) US10818306B2 (ko)
EP (1) EP3559821A4 (ko)
JP (4) JP6665354B2 (ko)
KR (6) KR102275129B1 (ko)
CN (3) CN110178180B (ko)
AR (6) AR111047A1 (ko)
AU (5) AU2018237070B2 (ko)
BR (2) BR122019027754B1 (ko)
CA (5) CA3171727A1 (ko)
CL (1) CL2019001981A1 (ko)
CO (1) CO2019008431A2 (ko)
EA (3) EA036090B1 (ko)
EC (1) ECSP19054232A (ko)
GE (1) GEP20217226B (ko)
IL (5) IL310208A (ko)
MA (1) MA47232A (ko)
MX (7) MX2019008349A (ko)
NZ (4) NZ759800A (ko)
PE (1) PE20191288A1 (ko)
PH (1) PH12019501658A1 (ko)
SA (1) SA519402434B1 (ko)
SG (1) SG11201906370TA (ko)
TW (3) TWI807562B (ko)
UA (3) UA126393C2 (ko)
WO (1) WO2018175347A1 (ko)
ZA (6) ZA201904559B (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI693594B (zh) * 2015-03-13 2020-05-11 瑞典商杜比國際公司 解碼具有增強頻譜帶複製元資料在至少一填充元素中的音訊位元流
TWI807562B (zh) * 2017-03-23 2023-07-01 瑞典商都比國際公司 用於音訊信號之高頻重建的諧波轉置器的回溯相容整合
TWI809289B (zh) 2018-01-26 2023-07-21 瑞典商都比國際公司 用於執行一音訊信號之高頻重建之方法、音訊處理單元及非暫時性電腦可讀媒體
CN113113032A (zh) * 2020-01-10 2021-07-13 华为技术有限公司 一种音频编解码方法和音频编解码设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002080362A1 (en) * 2001-04-02 2002-10-10 Coding Technologies Sweden Ab Aliasing reduction using complex-exponential modulated filterbanks
US20110302230A1 (en) 2009-02-18 2011-12-08 Dolby International Ab Low delay modulated filter bank
US20150317986A1 (en) 2010-07-19 2015-11-05 Dolby International Ab Processing of Audio Signals During High Frequency Reconstruction
WO2016146492A1 (en) * 2015-03-13 2016-09-22 Dolby International Ab Decoding audio bitstreams with enhanced spectral band replication metadata in at least one fill element

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5527024A (en) 1978-08-15 1980-02-26 Mitsui Toatsu Chem Inc Molded tableted catalysts showing high selectivity
SE0001926D0 (sv) * 2000-05-23 2000-05-23 Lars Liljeryd Improved spectral translation/folding in the subband domain
JP3870193B2 (ja) * 2001-11-29 2007-01-17 コーディング テクノロジーズ アクチボラゲット 高周波再構成に用いる符号器、復号器、方法及びコンピュータプログラム
BR122018007834B1 (pt) * 2003-10-30 2019-03-19 Koninklijke Philips Electronics N.V. Codificador e decodificador de áudio avançado de estéreo paramétrico combinado e de replicação de banda espectral, método de codificação avançada de áudio de estéreo paramétrico combinado e de replicação de banda espectral, sinal de áudio avançado codificado de estéreo paramétrico combinado e de replicação de banda espectral, método de decodificação avançada de áudio de estéreo paramétrico combinado e de replicação de banda espectral, e, meio de armazenamento legível por computador
KR100571824B1 (ko) 2003-11-26 2006-04-17 삼성전자주식회사 부가정보 삽입된 mpeg-4 오디오 bsac부호화/복호화 방법 및 장치
DE602004020765D1 (de) * 2004-09-17 2009-06-04 Harman Becker Automotive Sys Bandbreitenerweiterung von bandbegrenzten Tonsignalen
RU2376657C2 (ru) * 2005-04-01 2009-12-20 Квэлкомм Инкорпорейтед Системы, способы и устройства для высокополосного предыскажения шкалы времени
KR100818268B1 (ko) 2005-04-14 2008-04-02 삼성전자주식회사 오디오 데이터 부호화 및 복호화 장치와 방법
WO2007055464A1 (en) 2005-08-30 2007-05-18 Lg Electronics Inc. Apparatus for encoding and decoding audio signal and method thereof
KR101565919B1 (ko) 2006-11-17 2015-11-05 삼성전자주식회사 고주파수 신호 부호화 및 복호화 방법 및 장치
CN101471072B (zh) 2007-12-27 2012-01-25 华为技术有限公司 高频重建方法、编码装置和解码装置
KR101413968B1 (ko) * 2008-01-29 2014-07-01 삼성전자주식회사 오디오 신호의 부호화, 복호화 방법 및 장치
EP2144230A1 (en) 2008-07-11 2010-01-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Low bitrate audio encoding/decoding scheme having cascaded switches
CA2729474C (en) 2008-07-11 2015-09-01 Frederik Nagel Apparatus and method for generating a bandwidth extended signal
PL4053838T3 (pl) * 2008-12-15 2023-11-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Dekoder powiększania szerokości pasma audio, powiązany sposób oraz program komputerowy
PL3598447T3 (pl) * 2009-01-16 2022-02-14 Dolby International Ab Transpozycja harmonicznych rozszerzona o iloczyn wektorowy
TWI591625B (zh) * 2009-05-27 2017-07-11 杜比國際公司 從訊號的低頻成份產生該訊號之高頻成份的系統與方法,及其機上盒、電腦程式產品、軟體程式及儲存媒體
US8515768B2 (en) * 2009-08-31 2013-08-20 Apple Inc. Enhanced audio decoder
EP4250290A1 (en) * 2010-01-19 2023-09-27 Dolby International AB Improved subband block based harmonic transposition
JP5854520B2 (ja) * 2010-03-09 2016-02-09 フラウンホーファーゲゼルシャフトツール フォルデルング デル アンゲヴァンテン フォルシユング エー.フアー. オーディオ信号用の位相ボコーダに基づく帯域幅拡張方法における改善された振幅応答及び時間的整列のための装置及び方法
US8886523B2 (en) * 2010-04-14 2014-11-11 Huawei Technologies Co., Ltd. Audio decoding based on audio class with control code for post-processing modes
IL311020A (en) 2010-07-02 2024-04-01 Dolby Int Ab After–selective bass filter
TWI476761B (zh) 2011-04-08 2015-03-11 Dolby Lab Licensing Corp 用以產生可由實施不同解碼協定之解碼器所解碼的統一位元流之音頻編碼方法及系統
EP3054446B1 (en) * 2013-01-29 2023-08-09 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder, audio decoder, method for providing an encoded audio information, method for providing a decoded audio information, computer program and encoded representation using a signal-adaptive bandwidth extension
BR112015017748B1 (pt) * 2013-01-29 2022-03-15 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E. V. Preenchimento de ruído na codificação de áudio de transformada perceptual
KR102329309B1 (ko) 2013-09-12 2021-11-19 돌비 인터네셔널 에이비 Qmf 기반 처리 데이터의 시간 정렬
EP2881943A1 (en) * 2013-12-09 2015-06-10 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for decoding an encoded audio signal with low computational resources
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
TWI807562B (zh) * 2017-03-23 2023-07-01 瑞典商都比國際公司 用於音訊信號之高頻重建的諧波轉置器的回溯相容整合
TWI809289B (zh) * 2018-01-26 2023-07-21 瑞典商都比國際公司 用於執行一音訊信號之高頻重建之方法、音訊處理單元及非暫時性電腦可讀媒體
CN114242089A (zh) * 2018-04-25 2022-03-25 杜比国际公司 具有减少后处理延迟的高频重建技术的集成

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002080362A1 (en) * 2001-04-02 2002-10-10 Coding Technologies Sweden Ab Aliasing reduction using complex-exponential modulated filterbanks
US20110302230A1 (en) 2009-02-18 2011-12-08 Dolby International Ab Low delay modulated filter bank
US20150317986A1 (en) 2010-07-19 2015-11-05 Dolby International Ab Processing of Audio Signals During High Frequency Reconstruction
WO2016146492A1 (en) * 2015-03-13 2016-09-22 Dolby International Ab Decoding audio bitstreams with enhanced spectral band replication metadata in at least one fill element

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ISO/IEC DIS 23008-3. Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 3: 3D audio. ISO/IEC JTC 1/SC 29/WG 11. 2014.07.25.
ISO/IEC FDIS 23003-3:2011(E), Information technology - MPEG audio technologies - Part 3: Unified speech and audio coding. ISO/IEC JTC 1/SC 29/WG 11. 2011.09.20.*

Also Published As

Publication number Publication date
KR20220054712A (ko) 2022-05-03
EA202191156A1 (ru) 2021-08-31
PE20191288A1 (es) 2019-09-20
ZA202007510B (en) 2022-04-28
CA3171733A1 (en) 2018-09-27
MX2022009313A (es) 2023-01-19
MX2022015198A (es) 2023-01-04
KR20200022547A (ko) 2020-03-03
US11763830B2 (en) 2023-09-19
CO2019008431A2 (es) 2019-08-20
NZ787839A (en) 2023-12-22
EA038268B1 (ru) 2021-08-02
JP6665354B2 (ja) 2020-03-13
SG11201906370TA (en) 2019-08-27
CA3171727A1 (en) 2018-09-27
KR20240008408A (ko) 2024-01-18
BR122019027754B1 (pt) 2020-08-18
TW201835897A (zh) 2018-10-01
JP2023181209A (ja) 2023-12-21
IL267666B (en) 2020-04-30
MX2020005844A (es) 2020-09-07
UA126393C2 (uk) 2022-09-28
AU2018237070B2 (en) 2019-09-12
EA036090B1 (ru) 2020-09-25
JP2022003420A (ja) 2022-01-11
KR102390360B1 (ko) 2022-04-26
IL272690A (en) 2020-04-30
AR115947A2 (es) 2021-03-17
CN110178180A (zh) 2019-08-27
KR102083768B1 (ko) 2020-03-02
US11605391B2 (en) 2023-03-14
US20230051379A1 (en) 2023-02-16
ZA202109047B (en) 2023-06-28
TWI807562B (zh) 2023-07-01
US20230042393A1 (en) 2023-02-09
TW202341126A (zh) 2023-10-16
UA126401C2 (uk) 2022-09-28
CA3049600C (en) 2021-12-07
CN110178180B (zh) 2020-12-29
EA201991453A1 (ru) 2019-11-29
IL296961B1 (en) 2023-12-01
CA3133921A1 (en) 2018-09-27
WO2018175347A1 (en) 2018-09-27
KR20230160960A (ko) 2023-11-24
CL2019001981A1 (es) 2019-10-18
JP2020503566A (ja) 2020-01-30
IL272690B2 (en) 2023-03-01
US20230036258A1 (en) 2023-02-02
US20230377589A1 (en) 2023-11-23
IL296961B2 (en) 2024-04-01
ZA201904559B (en) 2022-05-25
KR20210088012A (ko) 2021-07-13
MA47232A (fr) 2019-10-30
IL272690B (en) 2022-11-01
AU2021215249B2 (en) 2023-02-02
NZ759800A (en) 2021-07-30
US20230041798A1 (en) 2023-02-09
GEP20217226B (en) 2021-02-25
JP7413334B2 (ja) 2024-01-15
ZA202211731B (en) 2024-02-28
US11626123B2 (en) 2023-04-11
US11676616B2 (en) 2023-06-13
KR102622804B1 (ko) 2024-01-10
KR20190085144A (ko) 2019-07-17
CA3133923A1 (en) 2018-09-27
AU2023200619B2 (en) 2023-08-17
CN112863528A (zh) 2021-05-28
MX2019008349A (es) 2019-09-16
AU2018237070A1 (en) 2019-08-01
AU2023200619A1 (en) 2023-03-09
MX2022015200A (es) 2023-01-05
TW202215418A (zh) 2022-04-16
ECSP19054232A (es) 2019-08-30
BR112019014125B1 (pt) 2021-11-16
IL305626B1 (en) 2024-02-01
US11621013B2 (en) 2023-04-04
US20200027471A1 (en) 2020-01-23
AU2021215249A1 (en) 2021-09-02
US20210104252A1 (en) 2021-04-08
AR120464A2 (es) 2022-02-16
IL267666A (en) 2019-08-29
EP3559821A4 (en) 2020-10-28
NZ755366A (en) 2019-12-20
EA202091313A1 (ru) 2020-09-30
ZA202109045B (en) 2023-04-26
UA126719C2 (uk) 2023-01-11
IL305626A (en) 2023-11-01
MX2022009312A (es) 2022-08-18
NZ777923A (en) 2023-12-22
AR111047A1 (es) 2019-05-29
PH12019501658A1 (en) 2020-03-02
IL310208A (en) 2024-03-01
AU2023266360A1 (en) 2023-12-07
AR120465A2 (es) 2022-02-16
US10818306B2 (en) 2020-10-27
TWI752166B (zh) 2022-01-11
MX2022015199A (es) 2023-01-05
IL296961A (en) 2022-12-01
AR120467A2 (es) 2022-02-16
AU2019222906B2 (en) 2021-05-20
SA519402434B1 (ar) 2023-02-01
EP3559821A1 (en) 2019-10-30
AR120466A2 (es) 2022-02-16
JP2020074052A (ja) 2020-05-14
AU2019222906A1 (en) 2019-09-19
CN112863527A (zh) 2021-05-28
BR112019014125A2 (pt) 2019-12-17
CA3049600A1 (en) 2018-09-27
ZA202109046B (en) 2023-04-26

Similar Documents

Publication Publication Date Title
KR102514418B1 (ko) 오디오 신호에 대한 고주파 재구성 기술의 하위 호환 통합
KR102560473B1 (ko) 후처리 지연을 저감시킨 고주파 재구성 기술의 통합
US11676616B2 (en) Backward-compatible integration of harmonic transposer for high frequency reconstruction of audio signals
EP4303871A2 (en) Backward-compatible integration of high frequency reconstruction techniques for audio signals
OA19675A (en) Backward-compatible integration of harmonic transposer for high frequency reconstruction of audio signals.

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right