KR20230088409A - 오디오 코덱에 있어서 오디오 대역폭 검출 및 오디오 대역폭 스위칭을 위한 방법 및 디바이스 - Google Patents

오디오 코덱에 있어서 오디오 대역폭 검출 및 오디오 대역폭 스위칭을 위한 방법 및 디바이스 Download PDF

Info

Publication number
KR20230088409A
KR20230088409A KR1020237016005A KR20237016005A KR20230088409A KR 20230088409 A KR20230088409 A KR 20230088409A KR 1020237016005 A KR1020237016005 A KR 1020237016005A KR 20237016005 A KR20237016005 A KR 20237016005A KR 20230088409 A KR20230088409 A KR 20230088409A
Authority
KR
South Korea
Prior art keywords
audio bandwidth
sound signal
audio
switching
final
Prior art date
Application number
KR1020237016005A
Other languages
English (en)
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 KR20230088409A publication Critical patent/KR20230088409A/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/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 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/22Mode decision, i.e. based on audio signal content versus external parameters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/18Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being spectral information of each sub-band
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)

Abstract

방법 및 디바이스는 코딩될 사운드 신호의 오디오 대역폭을 사운드 코덱의 인코더 부분에서 검출한다. 디바이스는, 사운드 신호의 분석기와, 사운드 신호의 분석 결과를 이용하여, 검출된 오디오 대역폭에 대한 최종 결정을 배달하는 최종 오디오 대역폭 결정 모듈을 구비한다. 인코더 부분에서는, 최종 오디오 대역폭 결정 모듈이 사운드 신호 분석기의 업스트림(upstream)에 위치한다. 또한, 방법 및 디바이스는, 코딩될 사운드 신호의 제 1 오디오 대역폭을 제 2 오디오 대역폭으로 스위칭한다. 인코더 부분에 있어서, 그 디바이스는, 코딩될 사운드 신호의 검출된 오디오 대역폭에 대한 최종 결정을 배달하는 최종 오디오 대역폭 결정 모듈; 검출된 오디오 대역폭 최종 결정에 응답하여 오디오 대역폭 스위칭이 발생하는 프레임들의 카운터; 및 프레임들의 카운터에 응답하여 사운드 신호의 인코딩 전에 사운드 신호를 감쇄시키는 감쇄기를 구비한다.

Description

오디오 코덱에 있어서 오디오 대역폭 검출 및 오디오 대역폭 스위칭을 위한 방법 및 디바이스
본 개시는 사운드 코딩(sound coding)에 관한 것으로, 특히, 사운드 코덱에 있어서 오디오 대역폭 검출(audio band-width detection)을 위한 방법 및 디바이스와, 오디오 대역폭 스위칭(audio band-width switching)을 위한 방법 및 디바이스에 관한 것이지만, 이에 국한되는 것은 아니다.
본 개시에 있어서 및 첨부된 청구항들에 있어서,
- 용어 "사운드"는 스피치(speech), 오디오 및 임의 다른 사운드와 연관될 수 있다.
- 용어 "스테레오"는 "스테레오포닉(stereophonic)"의 약어이다.
- 용어 "모노"는 "모노포닉(monophonic)"의 약어이다.
역사적으로, 대화형 전화(conversational telephony)는 사용자의 귀들 중 한쪽에만 사운드를 출력하도록 단지 하나의 트랜스듀서(transducer)만을 가진 핸드셋(handset)으로 구현되었다. 지난 십년 동안에, 사용자들은 주로 음악을 듣지만 때때로 스피치를 듣기 위해 그들의 두 귀를 통해 사운드를 수신하도록, 헤드폰(headphone)과 함께 그들의 휴대용 핸드셋을 이용하기 시작하였다. 그럼에도, 휴대용 핸드셋이 대화 스피치를 전송하고 수신하는데 이용될 경우, 그 콘텐츠는 여전히 모노로서, 헤드폰 이용시에 사용자의 두 귀에 제시된다.
전체 콘텐츠가 본 명세서에 참조로서 수록되는 참고문헌 [1]에 기술된 바와 같은, 최신 3GPP(3rd Generation Partnership Project) 스피치 코딩 표준인, EVS(Enhanced Voice Service)을 위한 코덱에 따라, 휴대용 핸드셋을 통해 송수신되는, 예를 들어, 스피치 및/또는 오디오와 같은 코딩된 사운드의 품질이 크게 개선되었다. 다음의 자연스러운 단계는, 수신기가 통신 링크의 타측 단부에서 포획되는 오디오 장면을 가능한 실제와 가깝게 수신하도록 스테레오 정보를 전송하는 것이다.
오디오 코덱에서는, 스테레오 정보의 전송이 통상적으로 이용된다.
대화 스피치 코덱들의 경우, 모노 신호가 일반적이다. 스테레오 신호가 전송되면, 비트-레이트가 2배로 될 필요가 있는데, 이는 스테레오 신호의 좌우측 채널들이 모노 코덱을 이용하여 코딩되기 때문이다. 비트-레이트를 줄이기 위해, 효율적인 스테레오 코딩 기법들이 개발되어 이용되고 있다. 비 제한적 예시로서, 스테레오 코딩 기법들의 이용이 이하의 문단들에서 논의된다.
제 1 스테레오 코딩 기법은 파라메트릭 스테레오(parametric stereo)라 불리운다. 파라메트릭 스테레오는 스테레오 이미지를 나타내는 (스테레오 파라메타들에 대응하는) 특정 량의 스테레오 사이드 정보(stereo side information)와 통상적인 모노 코덱을 이용하여 좌측 및 우측 채널들의 두개를 모노 신호로서 인코딩한다. 2개의 입력인 좌측 및 우측 채널들은 모노 신호로 다운-믹싱(down mix)되고, 그 다음, 통상적으로, 스테레오 파라메타들이 변환 도메인, 예를 들어, DFT(Discrete Fourier Transform) 도메인에서 계산되며, 소위 양이 또는 채널간 단서(binaural or inter-channel cues)와 연관된다. 양이 단서(그의 전체 콘텐츠가 본 명세서에 참고로서 수록되는 참고문헌 [3]을 참조)는 ILD(Interaural Level Difference), ITD(Interaural Time Difference) 및 IC(Interaural Correlation)를 구비한다. 스테레오 장면 구성 등과 같은 신호 특성에 의거하여, 양이 단서의 일부 또는 전부가 코딩되어 디코더에 전송된다. 무슨 양이 단서가 코딩되어 전송되는지에 대한 정보가, 통상적으로 스테레오 사이드 정보의 일부인 시그널링 정보(signalling information)로서 송신된다. 또한, 특정 양이 단서가 서로 다른 코딩 기법들을 이용하여 양자화될 수 있으며, 그 결과 가변하는 개수의 비트들이 이용될 수 있게 된다. 그 다음, 양자화된 양이 단서에 추가하여, 스테레오 사이드 정보는, 다운-믹싱으로부터 결과하는 양자화된 잔차 신호를, 통상적으로, 중고 비트레이트(medium and higher bitrate)로 포함한다. 잔차 신호는, 예를 들어, 산술 인코더(arithmetric encoder)와 같은, 엔트로피 코딩 기법(entropy coding technique)을 이용하여 코딩될 수 있다. 일반적으로, 파라메트릭 스테레오 코딩은 낮은 비트레이트 및 중간 비트레이트에서 가장 효율적이다. 파라메타들이 DFT 도메인에서 계산되는 파라메트릭 스테레오를 본 개시에서는 DFT 스테레오라 지칭할 것이다.
또 다른 스테레오 코딩 기법은 시간-도메인(time-domain)에서 작용하는 기법이다. 이 스테레오 코딩 기법은 2개의 입력인, 좌측 및 우측 채널들을 소위 주 채널(primary channel)과 부 채널(secondary channel)로 믹싱한다. 예를 들어, 참고문헌 [4](그의 전체 콘텐츠는 본 명세서에 참고로서 수록됨)에 설명된 방법에 따르면, 시간-도메인 믹싱은 주 채널과 부 채널의 생성시에 2개의 입력들인 좌우측 채널들의 각 기여를 결정하는, 믹싱 비율에 기반할 수 있다. 믹싱 비율은, 예를 들어, 스테레오 사운드 신호의 모노 버전에 대한 입력 좌측 및 우측 채널들의 정규 상관(normalized correlation) 또는 2개의 입력 좌측 및 우측 채널들간의 장기 상관 차이(long term correlation difference)와 같은, 여러 메트릭들(metrics)로부터 도출된다. 주 채널은 공통 모노 코덱에 의해 코딩될 수 있는 반면, 부 채널은 보다 낮은 비트-레이트 코덱에 의해 코딩될 수 있다. 부 채널 코딩은 주 채널과 부 채널간의 코히어런스(coherence)를 활용할 수 있으며, 주 채널로부터의 일부 파라메타들을 재사용할 수 있다. 시간-도메인 스테레오를 본 개시에서는 TD 스테레오라고 지칭할 것이다. 일반적으로, TD 스테레오는 스피치 신호들을 코딩하기 위해 낮은 비트레이트 및 중간 비트레이트에서 가장 효율적이다.
제 3 스테레오 코딩 기법은, 수정된 이산 코사인 변환(Modified Discrete Cosine Transform: MDCT)에서 작용하는 기법이다. 그것은, 백색화된 스펙트럼 도메인(whitened spectral domain)에서 글로벌 ILD 및 M/S(Mid/Side) 프로세싱의 계산 과 좌측 및 우측채널들의 조인트 코딩(joint conding)에 기반한다. 그것은, 예를 들어, TCX 코어 코딩, TCX LTP(Long-Term Prediction) 분석, TCX 잡음 충진, FDNS(Frequency-Domain Noise Shaping), 스테레오포닉(stereophonic) IGF(Intelligent Gap Filling) 및/또는 채널들간의 적응적 비트 할당과 같이, 예를 들어, 전체 콘텐츠가 본 명세서에 참조로서 수록되는, 참고문헌 [7] 및 [8]에 기술된 바와 같은 MPEP(Moving Picture Experts Group) 코덱들에 있어서의 TCX(Transform Coded eXcitation)으로부터 조정된 여러 툴(tool)들을 이용한다. 일반적으로, 이러한 제 3 스테레오 코딩 기법은, 중간 및 높은 비트레이트로 모든 종류의 오디오 콘텐츠를 인코딩하는데 효율적이다. MDCT 도메인 스테레오 코딩 기법을 본 명세서에서는 MDCT 스테레오라고 지칭할 것이다.
추가로, 최근 몇 년에 있어서, 오디오의 생성, 녹음(recording), 표시, 코딩, 전송 및 재생은 청취자에 대한 향상되고, 상호 작용적(interactive)이며 몰입적인 체험으로 가고 있는 중이다. 몰입형 체험은, 사운드들이 모든 방향으로부터 오고 있는 동안 예를 들어, 사운드 장면에 깊게 몰두하거나 수반되는 상태로서 설명될 수 있다. 몰입형 오디오(3D(Dimensional) 오디오라고 함)에 있어서, 사운드 이미지는, 음색, 지향성, 반향, 투명성(transparency) 및 (청각적) 공간감의 정확성과 같은 광범위한 사운드 특성들을 고려하여, 청취자 둘레에 3차원으로 재생된다. 몰입형 오디오는 라우드스피커 기반 시스템(loudspeaker-based-system), 집적화된 재생 시스템(사운드 바(sound bar)) 또는 헤드폰과 같은, 특정 사운드 재생 시스템을 위해 생성된다. 그 다음, 사운드 재생 시스템의 상호 작용(interactivity)은, 예를 들어, 사운드 레벨을 조정하거나, 사운드의 위치를 변경하거나, 재생을 위한 다른 언어를 선택하는 기능을 포함할 수 있다.
몰입형 체험을 달성하기 위한 3가지 기본적인 방식들이 존재한다.
몰입형 체험을 달성하기 위한 제 1 방식은, 서로 다른 방향들로부터의 사운드들을 포획하기 위해 다수의 이격된 마이크로폰들을 이용하는 채널-기반 오디오 방식으로서, 그 방식에서는 하나의 마이크로폰이 특정 라우드스피커 레이아웃(layout)에 있어서의 하나의 오디오 채널에 대응한다. 그 다음, 각각의 녹음된 채널이 주어진 위치에 있는 라우드스피커로 공급된다. 예를 들어, 채널-기반 오디오 방식들은 스테레오, 5.1 서라운드, 5.1+4 등이다. 일반적으로, 채널-기반 오디오는, 다수의 코어 코더들에 의해 코딩되는데, 코어 코더들의 개수는, 통상적으로, 녹음된 채널들의 개수에 대응한다. 예를 들어, 채널들은, 예를 들어, TD 스테레오 또는 MDCT 스테레오 코딩 기법을 이용하여 다수의 스테레오 코더들에 의해 코딩된다. 채널-기반 오디오를, 본 명세서에서는 MC(Multi-Channel) 포맷 방식이라 지칭할 것이다.
몰입형 체험을 달성하기 위한 제 2 방식은, 국소 공간(localized space)에 걸쳐서의 원하는 사운드 필드를 차원 성분들의 조합에 의해 시간의 함수로서 나타내는 장면-기반 오디오 방식이다. 장면-기반 오디오(scene-based audio: SBA)를 나타내는 사운드 신호들은 오디오 소스들의 위치들에 독립적이지만, 그 사운드 필드는 렌더러(renderer)에서 라우드스피커들의 선택된 레이아웃으로 변환된다. 예를 들어, 장면-기반 오디오는 엠비소닉(ambisonic)들이다. 여러가지의 SBA 코딩 기법이 존재하지만, 가장 잘 알려진 것은 아마도, 전체 콘텐츠가 본 명세서에서 참조로서 수록된, 참고문헌[6]에 기술된 DirAC(Directional Audio Coding)일 것이다. DirAC 인코더는 CLDFB(Complex Low Delay Filter Bank) 도메인에 있어서 앰비소닉 입력 신호의 분석을 이용하고, 시간 및 주파수 슬롯(slot)들로 그룹화된 방향 및 확산(diffuseness)과 같은 공간 파라메타들(메타데이터)을 추정하며, 입력 채널들을 낮은 개수의 소위 운송 채널들(전형적으로 1, 2 또는 4 채널들)로 다운 믹싱한다. 그 다음, DirAC 디코더는 공간 메타데이터를 디코딩하고, 방향 및 확산 신호들을 운송 채널들로부터 도출하며, 그들을 라우드스피커 또는 헤드폰 장비들로 랜더링하여, 서로 다른 청취 구성들을 수용한다. 주로 이동 포획 디바이스들을 목표로 하는, SBA 코딩 기법의 또 다른 예시는, 예를 들어, 전체 콘텐츠가 본 명세서에 참조로서 수록되는, 참고문헌[9]에 기술된 바와 같은 MASA(Metadata-Assisted Spatial Audio) 포맷이다. MASA 방식에 있어서, MASA 메타데이터(예를 들어, 여러 시간-주파수 슬롯들 모두에 있어서, 방향, 에너지 비율, 확산 코히어런스, 거리, 서라운드 코히어런스)는 MASA 분석기에서 생성되고, 비트-스트림으로 양자화되고, 코딩되고 통과되는 반면, MASA 오디오 채널(들)은 코어 인코더(들)에 의해 코딩되는 모노 또는 멀티-채널 운송 신호들로서 처리된다. MASA 디코더에서, MASA 메타데이터는, 디코딩 및 랜더링 프로세스를 인도하여 출력 공간 사운드를 재현한다.
몰입형 체험을 달성하기 위한 제 3 방식은, 청각 장면을, 개별적인 오디오 요소들의 위치와 같은 정보를 수반한 그 개별적인 오디오 요소들의 세트로서 나타내는 객체-기반 오디오 방식이며, 개별적인 오디오 요소들은 그들의 의도된 위치에서 사운드 재생 시스템에 의해 렌더링될 수 있다. 이것은 객체-기반 오디오 방식에 상당한 가요성 및 상호 작용성을 제공하는데, 이는 각 객체가 이산된 채로 유지되고 개별적으로 조작될 수 있기 때문이다. 각 오디오 객체는 연관된 메타데이터를 가진, 오디오 스트림, 즉, 파형(waveform)으로 구성되며, 따라서, 메타데이터를 가진 독립 스트림(Independent Stream with metadata: ISm)으로서 보여질 수 있다.
몰입형 체험을 달성하기 위한 상술한 오디오 방식들의 각각은 장단점이 있다. 따라서, 단지 하나의 오디오 방식 대신에, 몰입형 청각 장면을 생성하기 위해 복합 오디오 시스템에 여러 오디오 방식들이 조합되는 것이 일반적이다. 예를 들어, 약간의 이산 오디오 객체들과 엠비소닉을 조합하는 것과 같이, 객체-기반 오디오와 장면-기반 또는 채널-기반 오디오를 조합하는 오디오 시스템이 있을 수 있다.
또한, 최근 몇 년동안, 3GPP(3rd Generation Partnership Project)는 EVS 코덱에 기반하여, IVAS(Immersive Voice and Audio Services)라고 하는, 몰입형 서비스를 위한 3D(Three-Dimensional) 사운드 코덱을 개발하는 작업을 시작하였다 (전체 콘텐츠가 본 명세서에 참조로서 수록되는 참고문헌 [5] 참조).
제 1 측면에 따르면, 본 개시는, 코딩될 사운드 신호의 오디오 대역폭을, 오디오 코덱의 인코더 부분에서 검출하는 디바이스에 관한 것으로, 그 디바이스는, 사운드 신호의 분석기; 및 검출된 오디오 대역폭에 대한 최종 결정을 배달하는 최종 오디오 대역폭 결정 모듈을 구비하되, 사운드 코덱의 인코더 부분에서는, 최종 오디오 대역폭 결정 모듈이 사운드 신호 분석기의 업스트림(upstream)에 위치한다.
제 2 측면에 따르면, 본 개시는, 코딩될 사운드 신호의 오디오 대역폭을, 오디오 코덱의 인코더 부분에서 검출하는 방법에 관한 것으로, 그 방법은, 사운드 신호를 분석하고; 사운드 신호의 분석 결과를 이용하여 검출된 오디오 대역폭에 대해 최종적으로 결정하는 것을 구비하되, 사운드 코덱의 인코더 부분에서는, 검출된 오디오 대역폭에 대한 최종 결정이 사운드 신호 분석기의 업스트림(upstream)에서 이루어진다.
본 개시는 코딩될 사운드 신호의 제 1 오디오 대역폭을 제 2 오디오 대역폭으로 스위칭하는 디바이스와 연관되며, 그 디바이스는, 사운드 코덱의 인코더 부분에 있어서, 코딩될 사운드 신호의 검출된 오디오 대역폭에 대한 최종 결정을 배달하는 최종 오디오 대역폭 결정 모듈; 오디오 대역폭 스위칭이 발생하는 프레임들의 카운터 - 프레임들의 카운터는 최종 오디오 대역폭 결정 모듈로부터의 검출된 오디오 대역폭 최종 결정에 응답함 - ; 및 프레임들의 카운터에 응답하여 사운드 신호의 인코딩 전에 사운드 신호를 감쇄시키는 감쇄기를 구비한다.
추가적인 측면에 있어서, 본 개시는 코딩될 사운드 신호의 제 1 오디오 대역폭을 제 2 오디오 대역폭으로 스위칭하는 방법과 연관되며, 그 방법은, 사운드 코덱의 인코더 부분에 있어서, 코딩될 사운드 신호의 검출된 오디오 대역폭에 대한 최종 결정을 배달하고; 검출된 오디오 대역폭 최종 결정에 응답하여 오디오 대역폭 스위칭이 발생하는 프레임들을 카운트하며; 프레임들의 카운터에 응답하여 사운드 신호의 인코딩 전에 사운드 신호를 감쇄시키는 것을 구비한다.
오디오 대역폭 검출을 위한 방법 및 디바이스와, 오디오 대역폭 스위칭을 위한 방법 및 디바이스의 상술한 및 다른 목적, 장점 및 피처들은, 첨부된 도면들을 참조하여 단지 예시적으로 주어진, 예시적인 실시 예의 이하의 비-제한적 설명을 읽으면 보다 명확해질 것이다.
첨부 도면에 있어서:
도 1은 오디오 대역폭 검출에 있어서 카운터들을 증가 또는 감소시키기 위한 조건들을 보여주는 개략적인 흐름도이고;
도 2는 입력 사운드 신호의 코딩시 오디오 대역폭들 간의 스위칭을 위한 최종 오디오 대역폭 결정 로직을 보여주는 개략적인 흐름도이고;
도 3a는 통상적인 오디오 대역폭 검출을 이용하는 EVS 사운드 코덱의 인코더 부분의 개략적인 블럭도이고;
도 3b는 본 개시에 따른 오디오 대역폭 검출 방법 및 디바이스를 이용하는 IVAS 사운드 코덱의 인코더 부분의 개략적인 블럭도이고;
도 4는 2개의 MDCT 스테레오 채널들에 대한 조인트 파라메타로서 오디오 대역폭 정보를 코딩하기 위한 로직을 보여주는 대략적인 흐름도이고;
도 5는, 본 개시에 따른 오디오 대역폭 스위칭을 위한 방법 및 디바이스를 동시에 보여주는 개략적인 블럭도이고;
도 6은 MDCT 스테레오 모드에 있어서의 IVAS 실행에 있어서 오디오 대역폭 스위칭 후 프레임들에 있어서의 감쇄 인자의 실제 값들을 보여주는 그래프이고;
도 7은 광대역(wide-band)에서 초광대역(super-wide-band)으로의 오디오 대역폭 변경이 하이라이트된 부분(highlighted part)에서 발생하는, 스피치 신호의 세그먼트에 있어서, 디코딩된 품질에 대한 오디오 대역폭 스위칭 메커니즘의 영향을 보여주는 파형들의 예시이고;
도 8은 오디오 대역폭 검출을 위한 방법 및 디바이스와, 오디오 대역폭 스위칭을 위한 방법 및 디바이스를 구현한 하드웨어 부품들의 예시적인 구성의 단순화된 블럭도이다.
본 개시는 오디오 대역폭 검출 및 오디오 대역폭 스위칭 기법들을 기술한다.
오디오 대역폭 검출 및 오디오 대역폭 스위칭 기법들은 본 개시의 전체에 걸쳐 IVAS 코덱(또는 IVAS 사운드 코덱)으로서 지칭되는 IVAS 코딩 프레임워크를 참조하여, 단지 비-제한적 예시적으로, 기술된다. 그러나, 임의 다른 사운드 코덱에 그러한 오디오 대역폭 검출 및 오디오 대역폭 스위칭 기술들을 합체시키는 것은 본 개시의 범주이내 이다.
1. 서론
특히, 본 개시는 IVAS 코덱에 기반하여 구현되는 오디오 대역폭 검출 알고리즘을 이용한 오디오 대역폭 검출을 위한 방법 및 디바이스와, 또한, IVAS 코덱에 기반하여 구현되는 오디오 대역폭 스위칭 알고리즘을 이용한 오디오 대역폭 스위칭을 위한 방법 및 디바이스를 기술한다.
IVAS에 있어서 오디오 대역폭 검출(Band-Width Detection: BWD) 알고리즘은 EVS에 있어서의 BWD 알고리즘과 유사하며, 그것은 ISm, DFT 스테레오 및 TD 스테레오 모드에서 원래 형태로 적용된다. 그러나, MDCT 스테레오 모드에서 적용되는 BWD는 없었다. 본 개시에 있어서, (보다 높은 비트레이트 DirAC, 보다 높은 비트레이트 MASA 및 멀티-채널 포맷을 포함하는) MDCT 스테레오 모드에 이용되는 새로운 BWD가 기술된다. 목표는, IVAS에 있어서 BWD가 빠져있는 모드들에 BWD를 도입하는 것(즉, 모든 동작 포인트들에 일관적으로 BWD를 이용하는 것)이다.
본 개시는, 계산 복잡성을 가능한 낮게 유지하면서, IVAS 코딩 프레임워크에 이용되는 오디오 BWS(Audio Band-width Switching) 알고리즘을 추가로 기술한다.
통상적으로, 스피치 및 오디오 코덱(사운드 코덱)은, 유효 오디오 대역폭이 나이키스트 주파수(Nyquist frequency)에 근접한 입력 사운드 신호를 수신할 것으로 기대된다. 입력 사운드 신호의 유효 오디오 대역폭이 나이키스트 주파수보다 훨씬 낮으면, 이 통상적인 코덱들은, 일반적으로, 최적으로 작업하지 않는데, 그 이유는, 그들이 엠프티 주파수 대역(empty frequency band)들을 나타내기 위해 이용 가능한 비트 예산의 일부를 낭비하기 때문이다.
오늘날, 코덱들은 큰 범위의 비트레이트 및 대역폭으로 다양한 오디오 자료(audio material)들을 코딩한다는 견지에서 가요적이 되도록 고안된다. 예를 들어, 최신 스피치 및 오디오 코덱은 3GPP[1]에서 표준화된 EVS 코덱이다. 이 코덱은 보이스(voice), 뮤직(music) 및 믹싱된 콘텐츠 신호들을 효율적으로 압축할 수 있는 멀티-레이트 코덱(multi-rate codec)으로 구성된다. 모든 오디오 자료에 대해 높은 주관적 품질을 유지시키기 위하여, 그것은 다수의 서로 다른 코딩 모드들을 구비한다. 이 모드들은 주어진 비트레이트, 입력 사운드 신호 특성들(예를 들어, 스피치/뮤직, 유성음/무성음), 신호 활동(signal activity) 및 오디오 대역폭에 의거하여 선택된다. 최선의 코딩 모드를 선택하기 위하여, EVS 코덱은 BWD를 이용한다. EVS 코덱에 있어서의 BWD는 입력 사운드 신호의 유효 오디오 대역폭에 있어서의 변경을 검출하도록 고안된다. 결론적으로, EVS 코덱은 지각적으로 의미있는 주파수 콘텐츠만을 인코딩하고 최적 방식으로 이용 가능 비트 예산을 분배하도록 가요적으로 재구성될 수 있다. 본 개시에 있어서, EVS 코덱에 이용되는 BWD는 IVAS 코딩 프레임워크의 맥락에서 추가로 정교해진다.
BWD 변경의 결과로서 코덱의 재구성은 코덱의 성능을 개선한다. 그러나, 이러한 재구성은, 그 재구성 및 그와 연관된 코딩 모드 스위칭이 주위깊게 및 적절하게 처리되지 않으면, 아티팩트(artifact)를 도입할 수 있다. 이러한 아티팩트는, 통상적으로, 고주파수(high-frequency: HF) 콘텐츠의 급격한 변경과 연관된다(일반적으로, HF는 8kHz보다 높은 주파수 콘텐츠를 지정하기 위한 것임). 개시된 BWS(Band-Width Switching) 알고리즘은 스위칭을 원할하게 하고, BWM 변경이 무결성이면서 쾌적하고, 또한 번거롭지 않게 되도록 한다.
2. 오디오 대역폭 검출(BWM)
2.1 배경
도 3a는 오디오 대역폭 검출을 이용하는 EVS 사운드 코덱의 인코더 부분의 개략적인 블럭도이고, 도 3b는 본 개시에 따른 오디오 대역폭 검출 방법 및 디바이스를 이용하는 IVAS 사운드 코덱의 인코더 부분의 개략적인 블럭도이다. 특히, 도 3a에는, 네이티브(native) EVS 사운드 코덱에 이식된 BWD가 도시되고, 도 3b에는 IVAS 사운드 코덱의 MDCT 스테레오 모드에 이식된 본 개시에 따른 BWD가 도시된다.
도 3a에 도시된 바와 같이, 하이라이트(highlight)된 BWD(301)는 입력 사운드 신호(310)의 오디오 대역폭(BW)을 검출하기 위하여, EVS 코덱(300)의 인코더 부분의 전처리 단계(302)의 일부를 형성한다. BWD를 포함하는 EVS 사운드 코덱에 대한 추가적인 정보는, 예를 들어, 참고문헌[1]에서 발견될 수 있다.
도 3b에서는, BWD가 하이라이트된다. 도시된 바와 같이, 본 개시에 따른 오디오 대역폭 검출 방법 및 디바이스는, 코딩될 입력 사운드 신호(320)의 실제 오디오 대역폭(BW)을 검출하기 위하여, IVAS 코덱(305)의 인코더 부분의 프런트 전처리 단계(303) 및 코어 인코딩 단계(304)로 통합된다. 이러한 오디오 대역폭 정보는 특정 입력 샘플링 주파수에 대한 것보다 특정 오디오 대역폭에 대해 맞춤화된 최적 구성으로 IVAS 코덱(305)을 실행시키는데 이용된다. 따라서, 이용 가능 비트 예산은 최적 방식으로 분배되고, 결론적으로, 코딩 효율을 크게 증가시킨다. 예를 들어, 입력 샘플링 주파수가 32kHz이지만 8kHz 이상의 "강력하게" 의미있는 스펙트럼 콘텐츠가 존재하지 않을 경우, 코덱은 보다 높은 대역(8kHz 이상)에 비트 예산의 일부를 낭비하지 않으면서, 확실히 광대역 모드에서 작동할 수 있다.
IVAS 사운드 코덱에 대한 추가적인 정보는, 예를 들어, 참고문헌[5]에서 발견될 수 있다.
IVAS 코덱(305)에 있어서의 BWD 알고리즘은, 특정 스펙트럼 영역내의 에너지들을 계산하고, 그들을 특정 임계치와 비교하는 것에 기반한다. IVAS 사운드 코덱(305)에 있어서, 오디오 대역폭 검출 방법 및 디바이스는 CLDFB 값들(ISm, TD 스테레오) 또는 DFT 값들(DFT 스테레오)에 대해 동작한다. EVS 코덱과 관련하여 참고문헌 [1]에 기술된 바와 같은, AMR-WB IO(Adaptive MultiRage WideBand InterOperable) 모드에 있어서, 오디오 대역폭 검출 방법 및 디바이스는 입력 사운드 신호 오디오 대역폭을 결정하기 위하여 DCT 변환 값들을 이용한다.
BWM 알고리듬 그 자체는 여러 동작들을 구비한다:
1) 입력 사운드 신호(320)의 다수의 스펙트럼 영역에 있어서 평균 및 최대 에너지 값의 계산;
2) 장기 파라메타들(long-term parameters) 및 카운터들의 갱신; 및
3) 검출되고 그에 따라 코딩된 오디오 대역폭에 대한 최종 결정.
상술한 2개의 첫 번째 동작들 1) 및 2)는 사운드 신호 코어 인코딩 단계(304)로 통합된 BWD 분석기(356)에 의해 실행되는 BWM 분석 동작(306)으로 통합되며, 마지막 동작 3)은 사운드 신호 전처리 단계(303)로 통합된 최종 오디오 대역폭 결정 모듈(프로세서)(357)에 의해 실행되는 최종 BWD 결정 동작(307)을 형성한다. 도 3b)에 도시된 바와 같이, 최종 오디오 대역폭 결정 모듈(357)은 사운드 코덱(305)의 인코더 부분에 있어서 BWD 분석기(356)의 업스트림에 위치한다. BWD와 연관된 EVS 네이티브 알고리즘의 동작들이 이후에 언급되고 도입되지만, 그의 상세 설명은 참고문헌[1]의 섹션 5.1.6 및 5.1.7에서 발견될 수 있다.
이하의 설명에 있어서, 구현의 비-제한적 예시로서, 이하의 오디오 대역폭들/모드들이 정의된다: 협대역(NB, 0-4kHz), 광대역(WB, 0-8kHz), 초광대역(SWB, 0-16kHz) 및 전대역(full-band)(FB, 0-24kHz).
2.2 BWM 신호들
BMW 알고리즘을 계산에 있어서 효율적으로 유지시키기 위하여, 오디오 대역폭 검출을 위한 방법 및 디바이스는, 이전의 EVS 전처리 단계로부터 입수할 수 있는 신호 버퍼들 및 파라메타들을 가능한 많이 재 사용한다(참고문헌[1] 참조). EVS 주 모드에 있어서, 이것은, 복소 변조된 낮은 지연 필터 뱅크(complex modulated low delay filter bank: CLDFB) 값들, 로컬 VAD 파라메타(즉, 행오버(hangover)없는 보이스 활동 결정) 및 전체 잡음 에너지의 장기 추정(long-term estimate)을 구비하며, 이에 대해서는 이하에서 설명하겠다.
IVAS 코덱의 CLDFB(도 3b의 308 참조)는 입력 사운드 신호(320)로부터 시간-주파수 매트릭스를 생성한다. 그 매트릭스는, 예를 들어, 16 시간 슬롯들 및 여러개의 주파수 서브-대역들로 구성될 수 있으며, 각 서브-대역의 폭은 400Hz이다. 주파수 서브-대역들의 개수는 입력 사운드 신호(320)의 샘플링 레이트에 의존한다.
다른 한편, BWD에 있어서 입력 신호 오디오 대역폭을 결정하기 위하여 DCT가 계산되는 EVS AMR-WB IO 모드에는 CLDFB 모듈이 없다. DCT 값들은, 구현의 비-제한적 예시에 있어서, 입력 샘플링 레이트로 샘플링된 사운드 신호(320)의 320개의 샘플들에 해닝 윈도우(Hanning window)를 적용함에 의해 획득된다. 그 다음, 윈도윙된 신호는 DCT 도메인으로 변환되고, 마지막으로, 입력 샘플링 레이트에 따라 여러 주파수 서브-대역들로 분해된다. 계산적인 복잡성을 상당히 낮게 유지시키기 위해, 일정한 분석 윈도우 길이가 모든 샘플링 레이트에 걸쳐 이용됨을 알아야 한다.
CLDFB에 기초한 BWD에 대한 보다 상세한 설명은, 전체 콘텐츠가 본 명세서에 참조로서 수록된 참고문헌[2]에서 발견된다.
MDCT 스테레오 모드에서는, CLDFB에 기반한 BWD가 비효율적이 되게 하는, 계산적으로 부담이 큰 CLDFB가 필요치 않다. 따라서, 전처리 단계(303)에서 CLDFB 및 BWD의 계산 복잡성의 상당량을 절약하는, MDCT 스테레오에 대한 새로운 BWD 알고리즘이 본 명세서에 개시된다.
MDCT 스테레오 코딩 모드에 있어서 오디오 대역폭 검출을 위한 방법 및 디바이스는 보다 높은 품질을 이끌 수 있는데, 그 이유는, 스펙트럼의 고대역 부분이 콘텐츠를 가지고 있지 않거나, 오디오 대역폭이 명령-라인(command-line) 또는 또 다른 외부 요청에 의해 제한되는 경우에, 비트들이 스펙트럼의 고대역 부분에 할당되지 않기 때문이다. 또한, 오디오 대역폭 검출 방법 및 디바이스는, 서로 다른 스테레오 코딩 기법들간의 스위칭을 수반하는 비트레이트 스위칭을 쉽게 하기 위하여 계속적으로 실행된다. 더욱이, MDCT 스테레오 모드에 있어서의 오디오 대역폭 검출을 위한 방법 및 디바이스는 보다 높은 비트레이트 DirAC, 보다 높은 비트레이트 MASA 및 멀티채널(MC) 포맷으로 BWD를 적용할 수 있게 한다.
MDCT 스테레오 모드에 있어서의 오디오 대역폭 검출을 위한 방법 및 디바이스는 아래에 설명된다.
2.3 MDCT 스테레오에 있어서의 BWD
(CLDFB 또는 다른 변환을 포함하는) BWD와 연관된 계산 복잡성을 증가시키지 않도록 하기 위하여, MDCT 스테레오 모드에 있어서의 BWD 분석기(356)는, LCDFB 값들에 대한 프런트 전처리 단계(303)에서는 적용되지 않고, 추후에 MDCT 값에 대한 TCX 코어 인코더(358)에서 적용된다.
TCX 코어 인코더(358)는, 다음과 같은 여러가지 동작을 수행한다: 긴 MDCT 기반 TCX 변환(TCX20)/짧은 MDCT 기반 TCX 변환(TCX10) 스위칭 결정, 코어 신호 분석(TCX-LTP, MDCT, 시간 잡음 형상화(Temporal Noise Shaping: TNS), 선형 예측 계수들(Linear Prediction Coefficients: LPC) 분석 등), 엔벨로프 양자화(envelope quantization) 및 FDNS, 코어 스펙트럼의 미세 양자화, 및 IGF(이러한 동작들 중 많은 동작들은 참고문헌[1]의 섹션 5.3.3.2에 설명된 바와 같이, EVS 코덱의 일부임). 코어 신호 분석은, 변환 및 오버랩 길이(overlap length)들에 기반하여 적용되는 윈도잉(windowing) 및 MDCT 계산을 포함한다.
오디오 대역폭 검출을 위한 방법 및 디바이스는, BWD 알고리즘에 대한 입력으로서 MDCT 스펙트럼을 이용한다. 알고리즘을 단순화시키기 위해, BWD 분석 동작(306)은, TCX20 프레임들로서 선택되고, 천이 프레임들이 아닌, 프레임들에서만 수행되는데, 이것은, BWD 분석이 주어진 기간의 프레임들에서 수행되고, 이 주어진 기간보다 더 짧거나 더 긴 프레임들에서는 스킵(skip)됨을 의미한다. 이것은, MDCT 스펙트럼의 길이가, 입력 샘플링 레이트의 샘플들에 있어서의 프레임의 길이에 항상 대응함을 보장한다. 또한, MC 포맷 모드에 있어서 LFE(Low-Frequency Effects) 채널에서 적용되는 BWD는 없다. LFE 채널은 단지 낮은 주파수들, 예를 들어, 0-120Hz만을 포함하며, 따라서, 전-범위 코어 인코더(full-range core encoder)를 요구하지 않는다. 또한, 본 기술 분야에 잘 알려진 바와 같이, 입력 사운드 신호(310/320)는 주어진 샘플링 레이트로 샘플링되고, 다수의 "서브-프레임들"로 분할되는 "프레임"들이라고 지칭되는 이러한 샘플들의 그룹들에 의해 프로세싱된다.
MDCT 에너지 벡터의 경우, 9개의 관심 주파수 대역들이 존재하는데, 각 대역의 폭은 1500Hz이다. 하나 내지 4개의 주파수 대역들이 테이블 1에 정의된 바와 같이 스펙트럼 영역들의 각각에 할당된다.
Figure pct00001
idx start idx end kHz 단위의 대역폭 스펙트럼 영역
0 1 1 1.5 - 3.0 nb
1 3 3 4.5 - 7.5 wb
2 4 4
3 6 6 9.0 - 15.0 swb
4 7 7
5 8 8
6 9 9
7 11 11 16.5 - 19.5 fb
8 12 12
테이블 1: 에너지 계산을 위한 MDCT 대역들
상기 테이블 1에 있어서, 소문자 nb(narrow-band), wb(wide-band), swb(super-wide-band) and fb(full-band)는 각각의 스펙트럼 영역을 나타내고, i는 주파수 대역의 인덱스이며, idx start는 에너지 대역 시작 인덱스이고, idx end는 에너지 대역 종료 인덱스이다.
2.3.1 MDCT 스펙트럼 에너지 계산
BWD 분석 동작(306)은, 입력 샘플링 레이트의 샘플들에 있어서의 프레임 길이와 동일한 길이의 MDCT 스펙트럼이 고려되어야 한다는 사실을 고려하여, 본 개시에 있어서 EVS 네이티브 BWD 알고리즘(참고문헌 [1] 참조)으로부터 약간 조정된다. 따라서, (EVS AMR-WB IO 모드에 이용되는 것과 같은) EVS 네이티브 BWD 알고리즘의 DCT 기반 경로가 채용되는 반면, (EVS에 있어서 모든 입력 샘플링 레이트의 샘플들인) 320 샘플들의 이전 DCT 스펙트럼 길이는 IVAS의 MDCT 스테레오 모드에 있어서 입력 샘플링 레이트에 비례하여 스케일링된다.
MDCT 모드에 있어서 입력 사운드 신호(320)의 MDCT 스펙트럼의 에너지
Figure pct00002
는 아래와 같이 9개의 주파수 대역들에서 계산된다:
Figure pct00003
여기에서, i는 주파수 대역의 인덱스이고, S(k)는 MDCT 스펙트럼이고,
Figure pct00004
는 테이블 1에 정의된 바와 같이 에너지 대역 시작 인덱스이고,
Figure pct00005
는 테이블 1에 정의된 바와 같이 에너지 대역 종료 인덱스이고, 에너지 대역의 폭은 (샘플링 레이트와 무관하게 1500Hz에 대응하는)
Figure pct00006
샘플들이다.
상술한 계산은 다음과 같이 소스(source) 코드로 구현되며, 마크 "###"은 EVS 소스 코드에 대해 새로운, 오디오 대역폭 검출을 위한 방법 및 디바이스에 이용되는 IVAS 소스 코드의 일부들을 식별한다:
void bw_detect(
Encoder_State *st, /* i/o: Encoder State */
const float signal_in[], /* i : input signal */
const int16_t localVAD, /* i : local VAD flag */
const float spectrum[], /* i : MDCT spectrum */
const float enerBuffer[] /* i : CLDFB energy buffer */
)
{
#define BWD_TOTAL_WIDTH 320
if (enerBuffer != NULL )/*CLDFB-based processing in EVS native mode */
{
. . .
}
else
{
/* set width of a speactral bin (corresponds to 1.5kHz) */
if ( st->input_Fs == 16000 )
{
bw_max = WB;
bin_width = 60;
}
else if ( st->input_Fs == 32000 )
{
bw_max = SWB;
bin_width = 30;
}
else /* st->input_Fs == 48000 */
{
bw_max = FB;
bin_width = 20;
}
### if (signal_in != NULL ) /* DCT-based processing in EVS AMR-WB IO */
### {
/* windowing of the input signal */
pt = signal_in;
pt1 = hann_window_320;
/* 1st half of the window */
for ( i = 0; i < BWD_TOTAL_WIDTH / 2; i++ )
{
in_win[i] = *pt++ * *pt1++;
}
pt1--;
/* 2nd half of the window */
for ( ; i < BWD_TOTAL_WIDTH; i++ )
{
in_win[i] = *pt++ * *pt1--;
}
/* tranform into frequency domain */
edct( in_win, spect, BWD_TOTAL_WIDTH, st->element_mode );
### }
### else /* MDCT-based processing in IVAS */
### {
### bin_width *= ( st->input_Fs / 50 ) / BWD_TOTAL_WIDTH;
### mvr2r( spectrum, spect, st->input_Fs / 50 );
### }
/* compute energy per spectral bins */
set_f( spect_bin, 0.001f, n_bins );
for ( k = 0; k <= bw_max; k++ )
{
for ( i = bwd_start_bin[k]; i <= bwd_end_bin[k]; i++ )
{
for ( j = 0; j < bin_width; j++ )
{
spect_bin[i] += spect[i*bin_width + j]*spect[i*bin_width + j];
}
spect_bin[i] = (float) log10( spect_bin[i] );
}
}
}
. . .
}
2.3.2 주파수 대역당 평균 및 최대 에너지 값들
BWD 분석기(356)는, 예를 들어, 이하의 수학식을 이용하여, 주파수 대역들에 있어서의 에너지 값들
Figure pct00007
을 로그 도메인으로 전환한다:
Figure pct00008
여기에서, i는 주파수 대역의 인덱스이다.
BWD 분석기(356)는, 예를 들어, 이하의 수학식을 이용하여 스펙트럼 영역마다의 평균 에너지 값들을 계산하기 위하여 주파수 대역당 로그 에너지
Figure pct00009
를 이용한다:
Figure pct00010
Figure pct00011
Figure pct00012
Figure pct00013
최종적으로, BWD 분석기(356)는, 예를 들어, 이하의 수학식을 이용하여 스펙트럼 영역마다의 최대 에너지 값을 계산하기 위하여, 주파수 대역당 로그 에너지
Figure pct00014
를 이용한다:
Figure pct00015
Figure pct00016
Figure pct00017
Figure pct00018
여기에서, 스펙트럼 영역 nb, wb, swbfb는 테이블 1에 정의된다.
2.3.3 장기 카운터들
BWD 분석기(356)는, 예를 들어, 이하의 수학식을 이용하여 스펙트럼 영역들nb, wb, swb에 대한 평균 에너지의 장기 값들을 갱신한다.
Figure pct00019
여기에서,
Figure pct00020
는 갱신 인자의 예시이고, 위첨자 [-1]는 이전 프레임으로부터의 파라메타 값을 나타낸다. 그 갱신은, 입력 사운드 신호(320)가 활성임을 로컬 VAD 결정이 나타내거나, 장기 배경 잡음 레벨(long-term background noise level)이 30dB보다 높은 경우에만 이루어진다. 이것은, 파라메타들이 지각적으로 의미있는 콘텐츠를 가진 프레임들에서만 갱신됨을 보장한다. 로컬 VAD 결정, 활성 신호 및 장기 배경 잡음과 같은 파라메타들/개념에 대한 추가적인 정보에 대해서는 참고문헌[2]를 참조하면 된다.
BWD 분석기(356)는, 수학식(3)으로부터의 스펙트럼 영역마다의 현재 최대값을 고려하면서, 특정 임계치들과 수학식(4)으로부터의 장기 에너지 평균 값을 비교한다. 비교 결과에 의거하여, BWD 분석기(356)는 도 1에 도시된 바와 같이 각 스펙트럼 영역들 wb, swbfb에 대한 카운터들을 증감시킨다. 도 1은 BWD 분석 동작(306)에 있어서 카운터들을 증감시키기 위한 조건들을 보여주는 개략적인 흐름도이다. 예를 들어, 도 1을 참조하면:
-
Figure pct00021
(도 1의 101 참조)이고,
Figure pct00022
(102 참조)이면, 카운터
Figure pct00023
는, 예를 들어, "1" 증가되고(103 참조);
- 조건
Figure pct00024
(101 참조)이 충족되지 않고,
Figure pct00025
(104 참조)이면, 카운터
Figure pct00026
는, 예를 들어, "1" 감소되고(105 참조);
-
Figure pct00027
이고,
Figure pct00028
(106 참조)이며,
Figure pct00029
(107 참조)이면, 카운터
Figure pct00030
는, 예를 들어, "1" 증가되고(108 참조);
- 조건
Figure pct00031
Figure pct00032
(106 참조)이 충족되지 않고,
Figure pct00033
(109 참조)이면, 카운터
Figure pct00034
는, 예를 들어, "1" 감소되고(110 참조);
-
Figure pct00035
이고,
Figure pct00036
(111 참조)이며,
Figure pct00037
(112 참조)이면, 카운터
Figure pct00038
는, 예를 들어, "1" 증가되고(113 참조);
- 조건
Figure pct00039
Figure pct00040
(111 참조)이 충족되지 않고,
Figure pct00041
(114 참조)이면, 카운터
Figure pct00042
는, 예를 들어, "1" 감소된다(115 참조).
2.3.4 최종 오디오 대역폭 결정
도 1에 있어서, BWD 분석기(356)가 순차적인 순서로 테스트들을 수행하면, 이러한 로직을 이용하여 오디오 대역폭에 대한 결정이 여러 차례 변경되는 일이 발생할 수 있다. 특정 오디오 대역폭의 매번 선택 후, 특정 카운터들은, 예를 들어, 그들의 최소값, 예를 들어, "0" 또는 그들의 최대값, 예를 들어, "100"으로 리셋된다. 오디오 대역폭 카운터들은 0과 100 사이로 제한되며, 카운터들의 값은 BW 변경을 결정하기 위하여 특정 임계치와 비교된다. 이 임계치들은, 검출되고 후속적으로 코딩된 오디오 대역폭간의 스위칭의 빈번한 변경을 피하기 위하여 BW 변경(오디오 대역폭들간의 스위칭)이 특정 히스테리시스(hysteresis)로 발생하도록, 선택된다. 그 히스테리시스는, 낮은 BW에서 높은 BW로의 잠재적인 스위칭이 테스트되는 경우에, 보다 짧다(예를 들어 EVS에 있어서 10 프레임들). 이러한 짧은 히스테리시스는, HF 콘텐츠의 변경이 통상적으로 급작스럽고 주관적으로 현저함에 따라, HF 콘텐츠의 상실에 기인한 임의 잠재적인 품질 열화를 피한다. 다른 한편, 높은 BW에서 낮은 BW로의 잠재적인 스위칭이 테스트되는 경우, 보다 긴(예를 들어, EVS에 있어서 90 프레임들) 히스테리시스가 적용된다. 이 경우, 스펙트럼에 있어서 중요한 HF 콘텐츠가 실질적으로는 없으며, 그래서, 스펙트럼 콘텐츠의 변경이 부자연스럽게 급작스럽지도 않고 번거롭지도 않게 된다.
도 2는 오디오 대역폭 검출을 위한 결정 로직을 보여주는 개략적인 흐름도이다. 도 2의 로직의 출력은 최종 오디오 대역폭 결정이다. 도 2를 참조하면, 최종 오디오 대역폭 결정 모듈(357)은, 아래와 같이, 최종 BWD 결정(307)의 동작을 수행한다:
- 마지막 오디오 대역폭 BW(마지막 오디오 대역폭은 이전 프레임에서 결정된 오디오 대역폭을 지칭함)가 NB(narrow-band)이고, 카운터
Figure pct00043
>10(201 참조)이면, 모듈(357)에 의한 최종 오디오 대역폭 결정은 WB(wide-band)이고(202 참조);
- 마지막 오디오 대역폭 BW가 NB(narrow-band)이고, 카운터
Figure pct00044
>10(201 참조)이며, 카운터
Figure pct00045
(203 참조)이면, 모듈(357)에 의한 최종 오디오 대역폭 결정은 SWB(super-wide-band)이고(204 참조);
- 마지막 오디오 대역폭 BW가 NB(narrow-band)이고, 카운터
Figure pct00046
>10(201 참조)이며, 카운터
Figure pct00047
(203 참조)이고, 카운터
Figure pct00048
(205 참조)이면, 모듈(357)에 의한 최종 오디오 대역폭 결정은 FB(full-band)이고(206 참조);
- 마지막 오디오 대역폭 BW가 WB(wide-band)이고, 카운터
Figure pct00049
(207 참조)이면, 모듈(357)에 의한 최종 오디오 대역폭 결정은 SWB(super-wide-band)이고(208 참조);
- 마지막 오디오 대역폭 BW가 WB(wide-band)이고, 카운터
Figure pct00050
(207 참조)이고, 카운터
Figure pct00051
(209 참조)이면, 모듈(357)에 의한 최종 오디오 대역폭 결정은 FB(full-band)이고(210 참조);
- 마지막 오디오 대역폭 BW가 SWB(super-wide-band)이고, 카운터
Figure pct00052
(211 참조)이면, 모듈(357)에 의한 최종 오디오 대역폭 결정은 FB(full-band)이고(212 참조);
- 마지막 오디오 대역폭 BW가 FB(full-band)이고(213),
- 카운터
Figure pct00053
(214 참조)이면, 모듈(357)에 의한 최종 오디오 대역폭 결정은 SWB(super-wide-band)이고(215 참조);
- 카운터
Figure pct00054
(216 참조)이면, 모듈(357)에 의한 최종 오디오 대역폭 결정은 WB(wide-band)이고(217 참조);
- 카운터
Figure pct00055
(218)이면, 모듈(357)에 의한 최종 오디오 대역폭 결정은 NB(narrow-band)이고(219 참조);
- 마지막 오디오 대역폭 BW가 SWB(super-wide-band)이고(220),
- 카운터
Figure pct00056
(221 참조)이면, 모듈(357)에 의한 최종 오디오 대역폭 결정은 WB(wide-band)이고(222 참조);
- 카운터
Figure pct00057
(223)이면, 모듈(357)에 의한 최종 오디오 대역폭 결정은 NB(narrow-band)이고(224 참조);
- 마지막 오디오 대역폭 BW가 WB(wide-band)이고, 카운터
Figure pct00058
(225)이면, 모듈(357)에 의한 최종 오디오 대역폭 결정은 NB(narrow-band)이다(226 참조).
도 2로부터의 최종 오디오 대역폭 결정은 적당한 사운드 신호 코딩 모드를 선택하는데 이용된다.
2.3.5 새롭게 추가된 코드
소스 코드에 있어서, 새롭게 추가된 코드("###" 시퀀스로 마킹됨)는 다음과 같을 수 있으며, 이하의 발췌는 IVAS 사운드 코덱의 함수 ivas_mdct_core_whitening_enc()로 부터이다:
for ( ch = 0; ch < CPE_CHANNELS; ch++ )
{
SetCurrentPsychParams( ... );
tcx_ltp_encode( ... );
core_signal_analysis_high_bitrate( ... );
### if ( sts[ch]->hTcxEnc->transform_type[0] == TCX_20 &&
### sts[ch]->hTcxCfg->tcx_last_overlap_mode != TRANSITION_OVERLAP )
### {
### if ( sts[ch]->mct_chan_mode != MCT_CHAN_MODE_LFE )
### {
### bw_detect( ... );
### }
### }
}
현재 프레임에 있어서 TCX 코어 코딩(358 참조)의 시작에서의 BWD 분석 동작(306)과 연관된 계산은, 최종 BWD 결정 동작(307)이 다음 프레임의 프런트 전처리(303 참조)로 연기되는 결과로서 이루어진다. 따라서, 이전의 EVS BWD 알고리즘은 2개 부분으로 분할되며(306 및 307 참조), BWD 분석 동작(306)(즉, 주파수 대역당 에너지 값을 계산하고 장기 카운터들을 갱신하는 것)은 현재의 TCX 코어 코딩의 시작에서 수행되고, 최종 BWD 결정 동작(307)은 TCX 코어 인코딩이 시작되기 전, 다음 프레임에서만 수행된다.
도 3은 EVS 코덱(도 3a) 및 IVAS 코덱(도 3b)에 있어서 BWD 관련 요소들간의 상기에서 논의한 차이들을 보여준다.
2.3.6 CPE에 있어서 BWD 정보
MDCT 스테레오 코딩에 있어서, 입력 및 그에 따른 코딩된 오디오 대역폭에 대한 결정 모듈(357)로부터의 최종 BWD 결정은 2 채널들의 각각마다 개별적으로 이루어지는 것이 아니라 양 채널들에 대한 조인트 결정(joint decision)으로서 이루어진다. 다시 말해, MDCT 스테레오 코딩에 있어서, 양 채널들은, 항상 동일한 오디오 대역폭을 이용하여 코딩되고, 코딩된 오디오 대역폭에 대한 정보는 하나의 CPE(Channel Pair Element)당 1회씩 전송된다(CPE는 스테레오 코딩 기법에 의해 2개의 채널을 인코딩하는 코딩 기법임). 최종 BWD 결정이 2개의 CPE 채널간에 다르면, 양 CPE 채널들은 2 채널들 중 보다 넓은 오디오 대역폭 BW를 이용하여 코딩된다. 예를 들어, 검출된 오디오 대역폭 BW가 제 1 채널에 대해 WB 대역폭이고, 제 2 채널에 대해 SWB 대역폭이면, 제 1 채널의 코딩된 오디오 대역폭 BW는 SWB 대역폭으로 개정되고(rewritten), SWB 대역폭 정보가 비트-스트림으로 전송된다. 단지 예외는, MDCT 스테레오 채널들 중 하나가 LFE 채널에 대응하는 경우이며, 그러면, 다른 채널의 코딩된 오디오 대역폭이 이 채널의 오디오 대역폭으로 설정된다. 이것은 대부분, 다수의 MC 채널들이 여러 MDCT 스테레오 CPE들을 이용하여 코딩될 때 MC 포맷 모드에서 적용된다.
최종 오디오 대역폭 결정 모듈(357)은 2개의 MDCT 스테레오 채널들에 대한 조인트 파라메타로서 오디오 대역폭 정보(채널들의 검출된 오디오 대역폭들)를 코딩하기 위한 도 4의 로직을 이용할 수 있다.
도 4를 참조하면, 2개의 CPE 채널들에 대한 오디오 대역폭이 검출되고:
- MDCT 스테레오가 이용되지 않으면(401 참조);
- 제 1 채널을 코딩하기 위한 오디오 대역폭
Figure pct00059
은 최종 오디오 대역폭 결정 모듈(357)에 의해 검출된 오디오 대역폭
Figure pct00060
이고, 제 2 채널을 코딩하기 위한 오디오 대역폭
Figure pct00061
은 최종 오디오 대역폭 결정 모듈(357)에 의해 검출된 오디오 대역폭
Figure pct00062
이며(402), 오디오 대역폭 정보는 2개의 비트-스트림 파라메타들을 구비하고(404 참조);
- MDCT 스테레오가 이용되고(401 참조);
- 채널 X가 LFE 채널이면(403 참조), 다른 채널 Y를 코딩하기 위한 오디오 대역폭
Figure pct00063
은 최종 오디오 대역폭 결정 모듈(357)에 의해 검출된 오디오 대역폭
Figure pct00064
이고, 오디오 대역폭 정보는 하나의 비트-스트림 파라메타이고(406 참조);
- 채널 X가 LFE 채널이 아니고(403 참조);
- 제 1 채널을 코딩하기 위한 최종 오디오 대역폭 결정 모듈(357)에 의해 검출된 오디오 대역폭
Figure pct00065
이 제 2 채널을 코딩하기 위한 최종 오디오 대역폭 결정 모듈(357)에 의해 검출된 오디오 대역폭
Figure pct00066
과 동일하지 않으면(407), 제 1 채널을 코딩하기 위한 오디오 대역폭
Figure pct00067
은 제 2 채널을 코딩하기 위한 오디오 대역폭
Figure pct00068
과 동일하고,
Figure pct00069
Figure pct00070
의 최대치와 동일하며(408), 오디오 대역폭 정보는 하나의 비트-스트림 파라메타이고(409 참조);
- 제 1 채널을 코딩하기 위한 최종 오디오 대역폭 결정 모듈(357)에 의해 검출된 오디오 대역폭
Figure pct00071
이 제 2 채널을 코딩하기 위한 최종 오디오 대역폭 결정 모듈(357)에 의해 검출된 오디오 대역폭
Figure pct00072
과 동일하면(407), 제 1 채널을 코딩하기 위한 오디오 대역폭
Figure pct00073
은 제 2 채널을 코딩하기 위한 오디오 대역폭
Figure pct00074
과 동일하고,
Figure pct00075
와 동일하며(410), 오디오 대역폭 정보는 하나의 비트-스트림 파라메타이다(411 참조).
블럭들(405, 408 및 410)로부터의 오디오 대역폭 정보는 2개의 CPE 채널들에 대한 조인트 파라메타로서 MDCT 코어 인코더에 의해 코딩된다(도 3b).
IVAS 사운드 코덱의 소스 코드에 있어서, 최종 BW 결정 로직은 아래와 같이 보일 수 있으며, 새롭게 추가된 코드는 "###" 시퀀스에 의해 마킹된다:
### void set_bw_stereo(
### CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structures */
### )
### {
### Encoder_State **st = hCPE->hCoreCoder;
###
### if ( hCPE->element_mode == IVAS_CPE_MDCT )
### {
### /* do not check band-width in LFE channel */
### if ( sts[0]->mct_chan_mode == MCT_CHAN_MODE_LFE)
### {
### st[0]->bwidth = st[0]->input_bwidth;
### }
### else if ( sts[1]->mct_chan_mode == MCT_CHAN_MODE_LFE)
### {
### st[1]->bwidth = st[1]->input_bwidth;
### }
### /* ensure that both CPE channels have the same audio band-width */
### else if ( st[0]->input_bwidth == st[1]->input_bwidth )
### {
### st[0]->bwidth = st[0]->input_bwidth;
### st[1]->bwidth = st[0]->input_bwidth;
### }
### else if( st[0]->input_bwidth != st[1]->input_bwidth )
### {
### st[0]->bwidth = max( st[0]->input_bwidth, st[1]->input_bwidth );
### st[1]->bwidth = max( st[0]->input_bwidth, st[1]->input_bwidth );
### }
### }
###
### st[0]->bwidth = max( st[0]->bwidth, WB );
### st[1]->bwidth = max( st[1]->bwidth, WB );
###
### return;
### }
상기 함수는 코어 코덱 구성 블럭, 즉, 프런트 전처리의 종료에서 및 TCX 코어 코딩이 시작되기 전에 실행된다.
조인트 오디오 대역폭 정보 코딩의 동일한 원리가, TD 스테레오에서와 같이 2개의 코어 인코더들을 이용하여 2개의 채널을 코딩하는 다른 스테레오 코딩 기법에서 이용될 수 있음을 알아야 한다.
3. 대역폭 스위칭(BWS)
3.1 배경
EVS 코덱에 있어서, 오디오 대역폭 BW의 변경은 비트레이트 변경 또는 코딩된 오디오 대역폭 변경의 결과로서 일어날 수 있다. 광대역(WB)에서 초광대역(SWB)으로의 변경이 발생하거나, SWB에서 WB로의 변경이 발생하면, 종단 사용자들에 대한 지각적 품질(perceptual quality)을 개선하기 위하여, 디코더에서의 오디오 대역폭 스위칭 후처리(post-processing)가 수행된다. WB에서 SWB로의 스위칭을 위해 평활화가 적용되며, SWB에서 WB로의 스위칭을 위해 블라인드 오디오 대역폭 확장(blind audio band-width extension)이 채용된다. EVS BWS 알고리즘의 요약은 이하의 문단에서 주어지고, 추가적인 정보는 참고문헌[1]의 섹션 6.3.7에서 발견될 수 있다.
먼저, EVS에 있어서, 오디오 대역폭 스위칭 검출기는 전송된 BW 정보를 수신하고, 그러한 BW 정보에 응답하여, 오디오 대역폭 스위칭이 있는지(참고문헌[1]의 섹션 6.3.7.1)의 여부를 검출하고, 그에 따라 소수의 카운터들을 갱신한다. 그 다음, SWB에서 WB로의 스위칭의 경우에, 마지막 프레임 SWB 대역폭 확장(BWE) 기술에 기반하여 다음 프레임들에서 스펙트럼의 HB(high-band) 부분(HB>8kHz)이 추정된다. HB 스텍트럼은 40 프레임들에서 페이드아웃(fade-out)되는 반면, 출력 샘플링 레이트의 시간-도메인 신호는 SWB BWE 파라메타들의 추정을 수행하는데 이용된다. 다른 한편, WB에서 SWB로의 스위칭의 경우에, 스펙트럼의 HB 부분은 20 프레임들에서 페이드(fade)된다.
3.2 논점들
IVAS에 있어서, EVS에서 이용되는 BWS 기법이 디코더에서 구현될 수 있지만, 그것은 EVS 네이티브 BWS 알고리즘에 있어서의 비트레이트 제한으로 인해 결코 적용되지 않는다. 더욱이, EVS 네이티브 BWS 알고리즘은 TCX 코어에 있어서 BWS를 지원하지 않는다. 최종적으로, EVS 네이티브 BWS 알고리즘은 DFT 스테레오 CNG(Comfort Noise Generation) 프레임들에서 적용될 수 없는데, 그 이유는 시간-도메인 신호가 그에 대한 알고리즘 추정을 수행하는데 이용될 수 없기 때문이다.
3.3 IVAS에 있어서의 BWS
IVAS 사운드 코덱에 있어서, 새롭고 다른 BWS 알고리즘이 구현된다.
먼저, 그러한 BWS 알고리즘은 IVAS 사운드 코덱의 인코더 부분에서 구현된다. 이러한 선택은 EVS 네이티브 알고리즘에 비해 IVAS BWS 알고리즘의 매우 낮은 복잡도 풋-프린트(very low complexity foot-print)라는 장점을 가진다.
다른 고안 선택은, IVAS에 있어서의 BWS 알고리즘이 보다 낮은 BW에서 보다 높은 BW로의(예를 들어, WB에서 SWB로의) 스위칭을 위해서만 구현되는 것이다. 이러한 방향에서는, 스위칭이 상대적으로 고속이며(상기 섹션 2.3.4 참조) 결과하는 급격한 HF 콘텐츠 변경이 번거로울 수 있다(annoying). 따라서, 그러한 스위칭을 평활화하기 위해 새롭고 다른 BWS 알고리즘이 고안된다. 다른 한편, 보다 높은 BW에서 보다 낮은 BW로의 스위칭을 위해 구현되는 특별한 처리는 없는데, 그 이유는 이러한 방향에서는, 그 스펙트럼에 있어서 중요한 HF 콘텐츠가 실질적으로는 없기 때문이며, 그래서, 스펙트럼 콘텐츠의 변경이 부자연스럽게 급작스럽지도 않고 번거롭지도 않는다.
3.4 제안된 BWS
도 5는, 본 개시에 따른 오디오 대역폭 스위칭을 위한 방법(500)과 디바이스(550)를 동시에 보여주는 개략적인 블럭도이다. 도 5에 도시된 바와 같이, 오디오 대역폭 스위칭을 위한 방법은, 최종 오디오 대역폭 결정 동작(307),
Figure pct00076
카운터 갱신 동작(502), 비교 동작(503), 고대역 스펙트럼 페이드-인(fade-in) 동작(504)을 구비한다. 또한, 도 5에 도시된 바와 같이, 오디오 대역폭 스위칭을 위한 디바이스는, 최종 BWD 결정 동작을 수행하기 위한 최종 오디오 대역폭 결정 모듈(357),
Figure pct00077
카운터 갱신 동작(502)을 수행하기 위한 계산기(552), 비교 동작(503)을 수행하기 위한 비교기(553), 고대역 스펙트럼 페이드-인(fade-in) 동작(504)을 수행하기 위한 감쇄기(554)를 구비한다.
도 5의 방법(500) 및 디바이스(550)에 의해 이용되는 제안된 BWS 알고리즘은, 그 합성(synthesis)에 있어서 아티팩트를 제거하면서, IVAS 사운드 코덱의 인코더 부분에서 미리 오디오 대역폭 스위칭의 지각적 영향을 평활화한다. 스펙트럼의 고대역(HB>8kHz) 부분은, 최종 오디오 대역폭 결정 모듈(357)에 의해 나타난 BWS 시점 이후의 여러개의 연속하는 프레임들에서 감쇄된다. 보다 구체적으로, HB 스펙트럼의 이득은 감쇄기(554)에서 페이드-인되고, 그에 따라 불쾌한 아티팩트를 피하기 위해 BWS의 경우에 강하게 제어된다. 감쇄는, HB 스펙트럼이 코어 인코더(555) 및 대응하는 코어 인코딩 동작(505)에서 양자화되고 인코딩되기 전에 적용되며, 그에 따라, 전송된 비트-스트림에는 평활화된 BW 천이가 이미 존재하게 되어, 디코더에서의 추가적인 처리는 필요치 않게 된다. 예를 들어, WB에서 SWB로의 오디오 대역폭 스위칭의 경우, 8kHz보다 높은 주파수들에 대응하는 HB 스펙트럼은 추가 프로세싱되기 전에 평활화된다. 다시 말해, 코딩된 사운드 신호에는 오디오 대역폭 스위칭이 내재하며, 디코더로 전송되는 오디오 대역폭 스위칭과 관련된 가외 비트들은 없고, 오디오 대역폭 스위칭과 관련하여 디코더에 의해 이루어지는 추가적인 처리도 없다.
3.4.1 BWS 기법
도 5의 오디오 대역폭 스위칭을 위한 방법 및 디바이스의 BWS 메커니즘은 아래와 같이 작업한다.
먼저, 계산기(552)는, 프레임들의 카운터
Figure pct00078
를 갱신하는데, 거기에서는 오디오 대역폭 스위칭이 발생하고, 아래와 같이, 최종 BWD 결정(307)에 기초하여 각 IVAS 운송 채널에 대한 전처리의 종료시에 감쇄가 적용된다.
계산기(552)는, 프레임들의 카운터
Figure pct00079
의 값을 "0"의 초기값으로 초기에 설정한다. (최종 오디오 대역폭 결정 모듈(357)로부터의 최종 BWD 결정에 대한 응답으로서) 보다 낮은 오디오 대역폭에서 보다 높은 오디오 대역폭으로의, 전형적으로는, WB에서 SWB 또는 FB로의, BW 변경이 검출되면, 프레임들의 카운터의 값이 1 증가된다. 그 다음의 프레임들에 있어서, 카운터는 매 프레임마다 1씩 증가되는데, 이것은 그 카운터가 이하에서 정의된 바와 같은 최대치
Figure pct00080
에 도달할 때 까지 지속된다. 카운터가 최대치
Figure pct00081
에 도달하면, 카운터는 0으로 리셋되고, BW 스위칭의 새로운 검출이 발생할 수 있다.
소스 코드에 있어서, ("###" 시퀀스에 의해 마킹된) 새롭게 추가된 코드는 아래와 같을 수 있다. 코드 발췌는 IVAS 사운드 코덱의 함수 core_switching_pre_enc()의 끝에서 발견될 수 있다:
### /*------------------------------------------------------------*
### * band-width switching from WB -> SWB/FB
### *-----------------------------------------------------------*/
###
### if( st->bwidth_sw_cnt == 0 )
### {
### if( st->bwidth >= SWB && st->last_bwidth == WB )
### {
### st->bwidth_sw_cnt++;
### }
### }
### else
### {
### st->bwidth_sw_cnt++;
###
### if ( st->bwidth_sw_cnt == BWS_TRAN_PERIOD )
### {
### st->bwidth_sw_cnt = 0;
### }
### }
다음, 계산기(552)에 의해 갱신되거나 그렇지 않은 카운터
Figure pct00082
가 비교기(553)에 의해 결정된 바와 같이 0보다 크면, 감쇄기(554)는 i 프레임에 있어서의 사운드 신호에, 예를 들어, 아래와 같이 정의된 감쇄 인자
Figure pct00083
(507)를 적용한다:
Figure pct00084
여기에서,
Figure pct00085
는 상술한 오디오 대역폭 스위칭 프레임 카운터(상기 소스 코드에서는 bwidth_sw_cnt)이고,
Figure pct00086
(상기 소스 코드에서는 macro BWS_TRAN_PERIOD)는 보다 낮은 BW에서 보다 높은 BW로의 BW 스위칭 후 감쇄가 적용되는 프레임들의 개수에 대응하는 BWS 천이 기간이다. 상수
Figure pct00087
은 실험적으로 발견되었으며, IVAS 프레임워크에 있어서 5로 설정되었다.
도 6은 MDCT 스테레오 모드에서 실행되는 IVS에 있어서의 BW 변경을 BWD가 검출한 후, 프레임들에 있어서 감쇄 인자 β의 실제 값을 보여주는 그래프이다. 도 6의 비 제한적 예시는, BW 변경이 가장 빠른 가능한 시간(즉, 10 프레임들의 히스테리시스)에 검출되고, 최종 BWD 결정이 다음 프레임(n+11)에서 이루어지고, 다음
Figure pct00088
프레임들(프레임들 n+12 내지 n+16)에서 BWS가 적용된다고 가정한다. 마지막으로, 감쇄 인자 β는, 아래와 같이, 코딩 모드에 의거하여
Figure pct00089
프레임들에서 적용된다.
TCX 및 HQ 코어 프레임들(HQ는 EVS에 있어서 고품질(High Quality) MDCT 코더를 나타냄, 참고문헌[1]의 섹션 5.3.4 참조)에서는, 참고문헌[1]의 섹션 5.3.2에 정의된 길이 L의 스펙트럼
Figure pct00090
의 고대역 이득이 제어되고, 시간-주파수 도메인 벼환 직후, 스펙트럼
Figure pct00091
의 HB 부분은, 예를 들어, 이하의 수학식을 이용하여 감쇄기(554)에 의해 갱신(페이드-인)된다:
Figure pct00092
여기에서,
Figure pct00093
는 WB 오디오 대역폭에 대응하는 스펙트럼의 길이, 즉, 20ms의 프레임 길이를 가진 IVAS의 예시에서는
Figure pct00094
= 320 샘플들(정상적인 HQ 또는TCX20 프레임), 천이 프레임들에서는
Figure pct00095
= 80 샘플들, TCX10 프레임들에서는
Figure pct00096
=160 샘플들이고, k는 범위 [0, K-
Figure pct00097
-1]내의 샘플 인덱스이고, K는 특정 변환 서브-모드에 있어서 전체 스펙트럼의 길이(정상, 천이, TCX20, TCX10)이다.
시간-도메인 BWE(TBE) 프레임들을 가진 ACELP 코어에 있어서, 감쇄기(554)는, 스펙트럼의 HB 부분의 SWB 이득 형상 파라메타(gain shapes parameter)들에 감쇄 인자
Figure pct00098
를 적용하는데, 이것은 이 파라메타들이 추가적으로 프로세싱되기 전에 이루어진다. 시간 이득 형상 파라메타들(temporal gain shapes parameters)
Figure pct00099
은 참고문헌[1]의 섹션 5.2.6.1.14.2에 정의되며, 4개의 값들로 구성된다. 따라서, 구현의 예시에 있어서:
Figure pct00100
이고,
Figure pct00101
은 이득 형상 번호이다.
주파수-도메인 BWE(FD-BWE) 프레임들을 가진 ACELP 코어에서는, 참고문헌[1]의 섹션 5.2.6.2.1에 정의된 길이(L)의 변환된 원래 입력 신호
Figure pct00102
의 고대역 이득이 제어되고, MDCT 스펙트럼의 HB 부분은, 예를 들어, 이하의 수학식을 이용하여 감쇄기(554)에 의해 갱신된다:
Figure pct00103
IVAS에 있어서 NB 코딩은 고려되지 않으며, SWB에서 FB로의 스위칭은 처리되지 않는데, 그 이유는 그의 주관적 및 객관적 영향이 무시할만 하기 때문임을 알아야 한다. 그러나, 상기와 동일한 원리가 모든 BWS 시나리오들을 커버하는데 이용될 수 있다.
그 다음, 감쇄기(554)로부터의 감쇄된 사운드 신호는 코어 인코더(555)에서 인코딩된다. 계산기(552)에 의해 갱신되거나 그렇지 않은 카운터
Figure pct00104
가 비교기(553)에 의해 결정된 바와 같이 0보다 크지 않으면, 사운드 신호는 감쇄없이 코어 인코더(555)에서 인코딩된다.
3.4.2 BWS 영향 예시
도 7은 디코딩된 품질에 대한 BWS 메커니즘의 영향을 보여주는 파형들의 예시이다. 특히, 도 7에는 WB에서 SWB으로의 BW변경이 하이라이트된 부분(highlighted part)에서 발생하는, 스피치 신호의 세그먼트(예를 들어 0.3초 길이)가 도시된다. 도 7에는, 최상부에서 최하부로, (1) 입력 신호 파형, (2) BW 파라메타(값 1은 WB에 대응하고 값 2는 SWB에 대응함), (3) BWS가 적용되지 않을 때의 디코딩된 합성 파형, (4) BWS가 적용되지 않을 때의 디코딩된 합성 스펙트럼, (5) BWS가 적용될 때의 디코딩된 합성 파형, 및 (6) BWS가 적용될 때의 디코딩된 합성 스펙트럼이 도시된다. 도 7에서 화살표로 하이라이트것으로 부터, BWS가 적용될 때의 디코딩된 합성은 주파수 도메인의 HF에 있어서 및 시간 도메인에 있어서 급격한 에너지 증가를 겪지 않음을 알 수 있을 것이다. 결론적으로, 본 명세서에 개시된 BWS 기법이 이용될 경우 합성으로부터 아티팩트(번거로운 클릭(annoying click))가 제거된다.
4. 하드웨어 구현
도 8은 오디오 대역폭 검출 방법 및 디바이스와, 오디오 대역폭 스위칭 방법 및 디바이스를 이용하는 IVAS 사운드 코덱(305)의 인코더 부분을 형성하는 하드웨어 부품들의 예시적인 구성의 단순화된 블럭도이다.
오디오 대역폭 검출 방법 및 디바이스와, 오디오 대역폭 스위칭 방법 및 디바이스를 이용하는 IVAS 사운드 코덱(305)의 인코더 부분은 이동 단말의 일부로서, 휴대용 매체 플레이어의 일부로서, 또는 임의 유사한 디바이스내에 구현될 수 있다. 오디오 대역폭 검출 방법 및 디바이스와 오디오 대역폭 스위칭 방법 및 디바이스를 이용하는 IVAS 사운드 코덱(305)의 인코더 부분(도 8에 800으로 식별됨)은 입력(802), 출력(804), 프로세서(806) 및 메모리(808)를 구비한다.
입력(802)은 도 3b의 입력 사운드 신호(320)를 디지털 또는 아날로그 형태로 수신하도록 구성된다. 출력(804)은 출력, 즉, 코딩된 사운드 신호를 공급하도록 구성된다. 입력(802) 및 출력(804)은 직렬 입력/출력 디바이스와 같은, 공통 모듈로 구현될 수 있다.
프로세서(806)는 입력(802), 출력(804) 및 메모리(808)에 동작 가능하게 접속된다. 프로세서(806)는 도 3b에 도시된 바와 같이 오디오 대역폭 검출 방법 및 디바이스와, 오디오 대역폭 스위칭 방법 및 디바이스를 이용하는 IVAS 사운드 코덱(305)의 인코더 부분의 여러 부품들의 기능들을 보조하여 코드 명령어들을 실행시키는 하나 이상의 프로세서들로서 실현된다.
메모리(808)는 프로세서(들)(806)에 의해 실행될 수 있는 코드 명령어들을 저장하는 비-일시적 메모리, 특히, 비-일시적 명령어들을 구비/저장하는 프로세서-독출 가능 메모리를 구비하며, 비-일시적 명령어들은, 실행되면, 프로세서(들)가 본 개시에 기술된 오디오 대역폭 검출 방법 및 디바이스와, 오디오 대역폭 스위칭 방법 및 디바이스를 이용하는 상술한 IVAS 사운드 코덱(305)의 인코더 부분의 동작들 및 부품들을 구현하게 한다. 메모리(808)는 프로세서(들)(806)에 의해 수행되는 여러 기능들로부터의 중간 프로세싱 데이터를 저장하기 위한 랜덤 액세스 메모리 또는 버퍼(들)를 구비할 수 있다.
본 기술 분야의 숙련자라면, 오디오 대역폭 검출 방법 및 디바이스와, 오디오 대역폭 스위칭 방법 및 디바이스를 이용하는 IVAS 사운드 코덱(305)의 인코더 부분의 설명은 단지 예시적이며, 임의 방식으로 제한하기 위한 것은 아님을 알 것이다. 본 개시의 혜택을 가진 본 기술 분야의 숙련자면 다른 실시 예들을 쉽게 제안할 수 있을 것이다. 또한, 오디오 대역폭 검출 방법 및 디바이스와, 오디오 대역폭 스위칭 방법 및 디바이스를 이용하는 개시된 IVAS 사운드 코덱(305)의 인코더 부분은, 사운드를 인코딩 및 디코딩하는 문제 및 기존의 필요성에 대한 가치있는 해법을 제공하도록 맞춤화될 수 있다.
명확성을 위해, 오디오 대역폭 검출 방법 및 디바이스와, 오디오 대역폭 스위칭 방법 및 디바이스를 이용하는 IVAS 사운드 코덱(305)의 인코더 부분의 구현의 일상적인 특징들의 모두를 도시하거나 설명하지는 않았다. 물론, 오디오 대역폭 검출 방법 및 디바이스와, 오디오 대역폭 스위칭 방법 및 디바이스를 이용하는 IVAS 사운드 코덱(305)의 인코더 부분의 임의 그러한 실제적 구현의 개발에 있어서, 애플리케이션, 시스템, 네트워크, 사업 관련 제약의 준수와 같은, 개발자의 특정 목표를 달성하기 위해 많은 구현 지정적 결정들이 이루어질 필요가 있으며, 이 특정 목표는 구현마다 및 개발자마다 가변될 것임을 알 것이다. 또한, 개발 노력이 복잡하고 시간 소모적이지만, 그럼에도 불구하고, 본 개시의 혜택을 받은 사운드 프로세싱 분야의 숙련자에게는 일상적인 엔지니어링 작업일 뿐임을 알 것이다.
본 개시에 따르면, 본 명세서에 설명된 부품들/프로세서들/모듈들, 프로세싱 동작들 및/또는 데이터 구조는 다양한 유형의 운영 시스템들, 컴퓨팅 플랫폼, 네트워크 디바이스, 컴퓨터 프로그램 및/또는 범용 기계를 이용하여 구현될 수 있다. 추가적으로, 본 기술 분야의 숙련자라면, 하드와이어드 디바이스(hardwired device), FPGA(Field Programmable Gate Array), 애플리케이션 지정 집적 회로(ASIC) 등과 같은 덜 범용적인 특성의 디바이스가 이용될 수 있음을 알 것이다. 일련의 동작들 및 서브-동작들을 구비하는 방법이 프로세서, 컴퓨터 또는 머신에 의해 구현되고, 이 동작들 및 서브-동작들이 프로세서, 컴퓨터 또는 머신에 의해 판독 가능한 일련의 비-일시적 코드 명령어들로서 저장되는 경우, 그들은 유형의 및/또는 비-일시적 매체상에 저장될 수 있다
본 명세서에서 설명한, 오디오 대역폭 검출 방법 및 디바이스와, 오디오 대역폭 스위칭 방법 및 디바이스를 이용하는 IVAS 사운드 코덱(305)의 인코더 부분은, 소프트웨어, 펌웨어, 하드웨어 또는, 본 명세서에서 설명한 목적에 적합한 소프트웨어, 펌웨어 또는 하드웨어의 조합을 이용할 수 있다.
본 명세서에서 설명한, 오디오 대역폭 검출 방법 및 디바이스와, 오디오 대역폭 스위칭 방법 및 디바이스를 이용하는 IVAS 사운드 코덱(305)의 인코더 부분에서는, 다양한 동작들 및 서브-동작들이 다양한 순서로 수행될 수 있으며, 그 동작들 및 서브 동작들의 일부는 선택적이다.
본 개시가 상기에서 비-제한적인 예시적 실시 예에 의해 설명되었지만, 이 실시 예들은 본 개시의 사상 및 특성으로부터 벗어나지 않고도 첨부된 청구항들의 범주내에서 자유롭게 수정될 수 있다.
참고문헌들
본 개시는, 전체 콘텐츠가 본 명세서에 참조로서 수록된 이하의 참고문헌들을 언급한다.
Figure pct00105
Figure pct00106

Claims (60)

  1. 사운드 코덱의 인코더 부분에서, 코딩될 사운드 신호의 오디오 대역폭을 검출하는 디바이스로서:
    사운드 신호의 분석기; 및
    사운드 신호의 분석 결과를 이용하여, 검출된 오디오 대역폭에 대한 최종 결정을 배달하는 최종 오디오 대역폭 결정 모듈을 구비하되,
    사운드 코덱의 인코더 부분에서는, 최종 오디오 대역폭 결정 모듈이 사운드 신호 분석기의 업스트림(upstream)에 위치하는,
    오디오 대역폭 검출 디바이스.
  2. 제 1 항에 있어서,
    사운드 신호 분석기는, 사운드 코덱의 인코더 부분의 사운드 신호 코어 인코딩 단계에 통합되고,
    최종 오디오 대역폭 결정 모듈은, 사운드 코덱의 인코더 부분의 사운드 신호 전처리 단계에 통합되는,
    오디오 대역폭 검출 디바이스.
  3. 제 1 항 또는 제 2 항에 있어서,
    사운드 신호 분석기는, 다수의 스펙트럼 영역들에 있어서의 사운드 신호의 스펙트럼의 에너지의 평균값을 계산하는,
    오디오 대역폭 검출 디바이스.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    사운드 신호 분석기는, 다수의 스펙트럼 영역들에 있어서의 사운드 신호의 스펙트럼의 에너지의 최대치를 계산하는,
    오디오 대역폭 검출 디바이스.
  5. 제 4 항에 있어서,
    사운드 신호 분석기는, 다수의 주파수 대역들에 있어서의 사운드 신호의 스펙트럼의 에너지를 계산하고, 스펙트럼 영역들은, 각각, 주파수 대역들 중 적어도 하나에 의해 정의되며, 사운드 신호 분석기는, 주파수 대역들에 있어서의 사운드 신호의 스펙트럼의 계산된 에너지를 이용하여, 스펙트럼의 에너지의 평균 및 최대치를 계산하는,
    오디오 대역폭 검출 디바이스.
  6. 제 3 항 내지 제 5 항 중 어느 한 항에 있어서,
    사운드 신호 분석기는, 다수의 스펙트럼 영역들 중의 영역들에 있어서의 사운드 신호의 스펙트럼의 평균 에너지 값의 장기 값(long-term value)들을 계산하는,
    오디오 대역폭 검출 디바이스.
  7. 제 3 항 내지 제 6 항 중 어느 한 항에 있어서,
    사운드 신호 분석기는, 스펙트럼 영역들과 연관된 카운터들을 갱신하는,
    오디오 대역폭 검출 디바이스.
  8. 제 6 항에 있어서,
    사운드 신호 분석기는, 사운드 신호의 스펙트럼의 에너지의 최대치와, 사운드 신호의 스펙트럼의 평균 에너지 값의 장기 값들에 응답하여 각 스펙트럼 영역들에 관련된 카운터들을 증감시키는,
    오디오 대역폭 검출 디바이스.
  9. 제 3 항 내지 제 8 항 중 어느 한 항에 있어서,
    사운드 신호 분석기는, 주어진 기간의 프레임들에 있어서는 사운드 신호 분석을 수행하고, 상기 주어진 기간보다 더 긴 프레임들 및 상기 주어진 기간보다 더 짧은 프레임들에 있어서는 사운드 신호 분석을 스킵하는,
    오디오 대역폭 검출 디바이스.
  10. 제 7 항 또는 제 8 항에 있어서,
    최종 오디오 대역폭 결정 모듈은, 카운터들과 주어진 임계치들간의 비교에 응답하여, 오디오 대역폭들간의 스위칭을 위한 결정 로직을 이용하는,
    오디오 대역폭 검출 디바이스.
  11. 제 10 항에 있어서,
    최종 오디오 대역폭 결정 모듈의 결정 로직은, 이전에 결정된 오디오 대역폭에 응답하는,
    오디오 대역폭 검출 디바이스.
  12. 제 10 항 또는 제 11 항에 있어서,
    최종 오디오 대역폭 결정 모듈은, 오디오 대역폭들간의 빈번한 스위칭을 피하기 위해 히스테리시스(hysteresis)를 이용하는
    오디오 대역폭 검출 디바이스.
  13. 제 12 항에 있어서,
    최종 오디오 대역폭 결정 모듈에 의해 이용되는 히스테리시스는, 보다 낮은 오디오 대역폭에서 보다 높은 오디오 대역폭으로의 잠재적인 스위칭의 경우에는 보다 짧으며, 보다 높은 오디오 대역폭에서 보다 낮은 오디오 대역폭으로의 잠재적인 스위칭의 경우에는 보다 긴,
    오디오 대역폭 검출 디바이스.
  14. 제 1 항 내지 제 13 항 중 어느 한 항에 있어서,
    사운드 신호 분석기는, 현재 프레임동안, 사운드 코덱의 인코더 부분의 사운드 신호 코어 인코딩 단계에서 사운드 신호를 분석하고, 최종 오디오 대역폭 결정 모듈은, 현재 프레임에 뒤이은 다음 프레임동안 사운드 신호의 인코더 부분의 사운드 신호 전처리 단계에서 검출된 오디오 대역폭에 대해 최종 결정을 내리는
    오디오 대역폭 검출 디바이스.
  15. 제 3 항 내지 제 8 항 중 어느 한 항에 있어서,
    사운드 신호는, 다수의 채널들을 포함하는 멀티-채널 신호이고, 최종 오디오 대역폭 결정 모듈은, 채널들의 검출된 오디오 대역폭을 조인트 파라메타(joint parameter)로서 코딩하는,
    오디오 대역폭 검출 디바이스.
  16. 제 3 항 내지 제 15 항 중 어느 한 항에 있어서,
    사운드 신호의 스펙트럼은, MDCT 스테레오 코딩 모드에서 이용되는 사운드 신호의 MDCT 스펙트럼인,
    오디오 대역폭 검출 디바이스.
  17. 제 3 항 내지 제 16 항 중 어느 한 항에 있어서,
    분석기는, 주어진 기간의 프레임들에서만 사운드 신호의 분석을 수행하는,
    오디오 대역폭 검출 디바이스.
  18. 코딩될 사운드 신호의 오디오 대역폭을, 오디오 코덱의 인코더 부분에서, 검출하는 디바이스로서:
    적어도 하나의 프로세서; 및
    프로세서에 결합되어, 비-일시적 명령어들을 저장하는 메모리를 구비하되,
    비-일시적 명령어들은, 실행되면, 프로세서가,
    사운드 신호의 분석기; 및
    사운드 신호의 분석 결과를 이용하여, 검출된 오디오 대역폭에 대한 최종 결정을 배달하는 최종 오디오 대역폭 결정 모듈을 구현하게 하고,
    사운드 코덱의 인코더 부분에서는, 최종 오디오 대역폭 결정 모듈이 사운드 신호 분석기의 업스트림(upstream)에 위치하는,
    오디오 대역폭 검출 디바이스.
  19. 코딩될 사운드 신호의 오디오 대역폭을, 오디오 코덱의 인코더 부분에서, 검출하는 디바이스로서:
    적어도 하나의 프로세서; 및
    프로세서에 결합되어, 비-일시적 명령어들을 저장하는 메모리를 구비하되,
    비-일시적 명령어들은, 실행되면, 프로세서가,
    사운드 신호를 분석하게 하고;
    사운드 신호의 분석 결과를 이용하여, 검출된 오디오 대역폭에 대하여 최종으로 결정하게 하며,
    사운드 코덱의 인코더 부분에서는, 검출된 오디오 대역폭에 대한 최종 결정이 사운드 신호의 분석의 업스트림에서 이루어지는,
    오디오 대역폭 검출 디바이스.
  20. 코딩될 사운드 신호의 오디오 대역폭을, 오디오 코덱의 인코더 부분에서, 검출하는 방법으로서,
    사운드 신호를 분석하고;
    사운드 신호의 분석 결과를 이용하여 검출된 오디오 대역폭에 대해 최종적으로 결정하는 것을 구비하되,
    사운드 코덱의 인코더 부분에서는, 검출된 오디오 대역폭에 대한 최종 결정이 사운드 신호 분석기의 업스트림(upstream)에서 이루어지는,
    오디오 대역폭 검출 방법.
  21. 제 20 항에 있어서,
    사운드 신호의 분석은, 사운드 코덱의 인코더 부분의 사운드 신호 코어 인코딩 단계에 통합되고,
    검출된 오디오 대역폭에 대한 최종 결정은, 사운드 코덱의 인코더 부분의 사운드 신호 전처리 단계에 통합되는,
    오디오 대역폭 검출 방법.
  22. 제 20 항 또는 제 21 항에 있어서,
    사운드 신호의 분석은, 다수의 스펙트럼 영역들에 있어서의 사운드 신호의 스펙트럼의 에너지의 평균값을 계산하는 것을 구비하는,
    오디오 대역폭 검출 방법.
  23. 제 20 항 내지 제 22 항 중 어느 한 항에 있어서,
    사운드 신호의 분석은, 다수의 스펙트럼 영역들에 있어서의 사운드 신호의 스펙트럼의 에너지의 최대치를 계산하는 것을 구비하는,
    오디오 대역폭 검출 방법.
  24. 제 23 항에 있어서,
    사운드 신호의 분석은, 다수의 주파수 대역들에 있어서의 사운드 신호의 스펙트럼의 에너지를 계산하는 것을 구비하고, 스펙트럼 영역들은, 각각, 주파수 대역들 중 적어도 하나에 의해 정의되며, 사운드 신호의 분석은, 주파수 대역들에 있어서의 사운드 신호의 스펙트럼의 계산된 에너지를 이용하여, 스펙트럼의 에너지의 평균 및 최대치를 계산하는 것을 구비하는,
    오디오 대역폭 검출 방법.
  25. 제 22 항 내지 제 24 항 중 어느 한 항에 있어서,
    사운드 신호의 분석은, 다수의 스펙트럼 영역들 중의 영역들에 있어서의 사운드 신호의 스펙트럼의 평균 에너지 값의 장기 값(long-term value)들을 계산하는 것을 구비하는,
    오디오 대역폭 검출 방법.
  26. 제 22 항 내지 제 25 항 중 어느 한 항에 있어서,
    사운드 신호의 분석은, 스펙트럼 영역들과 연관된 카운터들을 갱신하는 것을 구비하는,
    오디오 대역폭 검출 방법.
  27. 제 25 항에 있어서,
    사운드 신호의 분석은, 사운드 신호의 스펙트럼의 에너지의 최대치와, 사운드 신호의 스펙트럼의 평균 에너지 값의 장기 값들에 응답하여 각 스펙트럼 영역들에 관련된 카운터들을 증감시키는 것을 구비하는,
    오디오 대역폭 검출 방법.
  28. 제 22 항 내지 제 27 항 중 어느 한 항에 있어서,
    사운드 신호의 분석은, 주어진 기간의 프레임들에서 수행되고, 상기 주어진 기간보다 더 긴 프레임들 및 상기 주어진 기간보다 더 짧은 프레임들에서는 스킵되는,
    오디오 대역폭 검출 방법.
  29. 제 26 항 또는 제 27 항에 있어서,
    검출된 오디오 대역폭에 대한 최종 결정은, 카운터들과 주어진 임계치들간의 비교에 응답하여, 오디오 대역폭들간의 스위칭을 위한 결정 로직을 이용하는 것을 구비하는,
    오디오 대역폭 검출 방법.
  30. 제 29 항에 있어서,
    결정 로직은, 이전에 결정된 오디오 대역폭에 응답하는,
    오디오 대역폭 검출 방법.
  31. 제 29 항 또는 제 30 항에 있어서,
    검출된 오디오 대역폭에 대한 최종 결정은, 오디오 대역폭들간의 빈번한 스위칭을 피하기 위해 히스테리시스(hysteresis)를 이용하는 것을 구비하는,
    오디오 대역폭 검출 방법.
  32. 제 31 항에 있어서,
    검출된 오디오 대역폭에 대한 최종 결정에 의해 이용되는 히스테리시스는, 보다 낮은 오디오 대역폭에서 보다 높은 오디오 대역폭으로의 잠재적인 스위칭의 경우에는 보다 짧으며, 보다 높은 오디오 대역폭에서 보다 낮은 오디오 대역폭으로의 잠재적인 스위칭의 경우에는 보다 긴,
    오디오 대역폭 검출 방법.
  33. 제 20 항 내지 제 32 항 중 어느 한 항에 있어서,
    사운드 신호의 분석은, 현재 프레임동안, 사운드 코덱의 인코더 부분의 사운드 신호 코어 인코딩 단계에서 사운드 신호를 분석하는 것을 구비하고, 검출된 오디오 대역폭에 대한 최종 결정은, 현재 프레임에 뒤이은 다음 프레임동안 사운드 신호의 인코더 부분의 사운드 신호 전처리 단계에서 이루어지는
    오디오 대역폭 검출 방법.
  34. 제 22 항 내지 제 27 항 중 어느 한 항에 있어서,
    사운드 신호는, 다수의 채널들을 포함하는 멀티-채널 신호이고, 검출된 오디오 대역폭에 대한 최종 결정은, 채널들의 검출된 오디오 대역폭을 조인트 파라메타(joint parameter)로서 코딩하는 것을 구비하는,
    오디오 대역폭 검출 방법.
  35. 제 22 항 내지 제 34 항 중 어느 한 항에 있어서,
    사운드 신호의 스펙트럼은, MDCT 스테레오 코딩 모드에서 이용되는 사운드 신호의 MDCT 스펙트럼인,
    오디오 대역폭 검출 방법.
  36. 제 22 항 내지 제 35 항 중 어느 한 항에 있어서,
    사운드 신호의 분석은, 주어진 기간의 프레임들에서만 수행되는,
    오디오 대역폭 검출 방법.
  37. 코딩될 사운드 신호의 제 1 오디오 대역폭을 제 2 오디오 대역폭으로 스위칭하는 디바이스로서:
    사운드 코덱의 인코더 부분내에,
    코딩될 사운드 신호의 검출된 오디오 대역폭에 대한 최종 결정을 배달하는 최종 오디오 대역폭 결정 모듈;
    오디오 대역폭 스위칭이 발생하는 프레임들의 카운터 - 프레임들의 카운터는 최종 오디오 대역폭 결정 모듈로부터의 검출된 오디오 대역폭 최종 결정에 응답함 - ; 및
    프레임들의 카운터에 응답하여 사운드 신호의 인코딩 전에 사운드 신호를 감쇄시키는 감쇄기를 구비하는,
    오디오 대역폭 스위칭 디바이스.
  38. 제 37 항에 있어서,
    오디오 대역폭 스위칭 디바이스는, 제 1 오디오 대역폭이 제 2 오디오 대역폭보다 낮으면, 오디오 대역폭 스위칭을 구현하고, 제 1 오디오 대역폭이 제 2 오디오 대역폭보다 높으면, 오디오 대역폭 스위칭을 스킵하는,
    오디오 대역폭 스위칭 디바이스.
  39. 제 37 항 또는 제 38 항에 있어서,
    최종 오디오 대역폭 결정 모듈로부터의 검출된 오디오 대역폭 최종 결정에 응답하여 프레임들의 카운터를 갱신하기 위한 계산기를 구비하는
    오디오 대역폭 스위칭 디바이스.
  40. 제 37 항 내지 제 39 항 중 어느 한 항에 있어서,
    프레임들의 카운터가 주어진 값보다 큰지를 결정하는 비교기를 구비하고, 감쇄기는, 프레임들의 카운터가 주어진 값보다 더 크면, 사운드 신호를 감쇄시키는,
    오디오 대역폭 스위칭 디바이스.
  41. 제 40 항에 있어서,
    주어진 값은 0인,
    오디오 대역폭 스위칭 디바이스.
  42. 제 37 항 내지 제 41 항 중 어느 한 항에 있어서,
    감쇄기는 감쇄 인자를 이용하여 사운드 신호를 감쇄시키는,
    오디오 대역폭 스위칭 디바이스.
  43. 제 42 항에 있어서,
    감쇄기는, 프레임들의 개수에 대응하는 오디오 대역폭 스위칭 천이 기간과 프레임들의 카운터의 함수로서 감쇄 인자를 계산하고, 그 감쇄는, 보다 낮은 제 1 의 오디오 대역폭에서 보다 높은 제 2 의 오디오 대역폭으로의 오디오 대역폭 스위칭 후에, 적용되는,
    오디오 대역폭 스위칭 디바이스.
  44. 제 42 항 또는 제 43 항에 있어서,
    감쇄기는, 사운드 신호의 스펙트럼의 고대역 부분(high-band part)을 페이드 인(fade-in)하기 위해 감쇄 인자를 이용하는,
    오디오 대역폭 스위칭 디바이스.
  45. 제 42 항 또는 제 43 항에 있어서,
    감쇄기는, 이득 형상 파라메타들이 추가적으로 프로세싱되기 전에, 사운드 신호의 스펙트럼의 고대역 부분의 초광대역 이득 형상 파라메타들(super-wide-band gain shapes parameters)에 감쇄 인자를 적용하는
    오디오 대역폭 스위칭 디바이스.
  46. 제 42 항 또는 제 43 항에 있어서,
    감쇄기는, 사운드 신호의 MDCT 스펙트럼의 고대역 부분을, 감쇄 인자를 이용하여, 페이드 인(fade-in)하는,
    오디오 대역폭 스위칭 디바이스.
  47. 제 37 항 내지 제 46 항 중 어느 한 항에 있어서,
    오디오 대역폭 스위칭은 코딩된 사운드 신호에 내재하고, 오디오 대역폭 스위칭에 연관된 가외 비트들은 디코더에 전송되지 않으며, 오디오 대역폭 스위칭과 관련하여 디코더에 의해 이루어지는 추가적인 처리도 없는,
    오디오 대역폭 스위칭 디바이스.
  48. 코딩될 사운드 신호의 제 1 오디오 대역폭을 제 2 오디오 대역폭으로 스위칭하는 디바이스로서:
    적어도 하나의 프로세서; 및
    프로세서에 결합되고, 비-일시적 명령어들를 저장하는 메모리를 구비하되,
    비-일시적 명령어들은, 실행되면, 프로세서가,
    코딩될 사운드 신호의 검출된 오디오 대역폭에 대한 최종 결정을 배달하는 최종 오디오 대역폭 결정 모듈;
    오디오 대역폭 스위칭이 발생하는 프레임들의 카운터 - 프레임들의 카운터는 최종 오디오 대역폭 결정 모듈로부터의 검출된 오디오 대역폭 최종 결정에 응답함 - ; 및
    프레임들의 카운터에 응답하여 사운드 신호의 인코딩 전에 사운드 신호를 감쇄시키는 감쇄기를 구현하게 하는,
    오디오 대역폭 스위칭 디바이스.
  49. 코딩될 사운드 신호의 제 1 오디오 대역폭을 제 2 오디오 대역폭으로 스위칭하는 디바이스로서:
    적어도 하나의 프로세서; 및
    프로세서에 결합되고, 비-일시적 명령어들를 저장하는 메모리를 구비하되,
    비-일시적 명령어들은, 실행되면, 프로세서가,
    코딩될 사운드 신호의 검출된 오디오 대역폭에 대한 최종 결정을 배달하게 하고;
    검출된 오디오 대역폭에 대한 최종 결정에 응답하여 오디오 대역폭 스위칭이 발생하는 프레임들을 카운트하게 하고;
    프레임들의 카운터에 응답하여 사운드 신호의 인코딩 전에 사운드 신호를 감쇄시키게 하는,
    오디오 대역폭 스위칭 디바이스.
  50. 코딩될 사운드 신호의 제 1 오디오 대역폭을 제 2 오디오 대역폭으로 스위칭하는 방법으로서:
    사운드 코덱의 인코더 부분에서,
    코딩될 사운드 신호의 검출된 오디오 대역폭에 대한 최종 결정을 배달하고;
    검출된 오디오 대역폭 최종 결정에 응답하여 오디오 대역폭 스위칭이 발생하는 프레임들을 카운트하며;
    프레임들의 카운터에 응답하여 사운드 신호의 인코딩 전에 사운드 신호를 감쇄시키는 것을 구비하는,
    오디오 대역폭 스위칭 방법.
  51. 제 50 항에 있어서,
    오디오 대역폭 스위칭 방법은, 제 1 오디오 대역폭이 제 2 오디오 대역폭보다 낮으면, 오디오 대역폭 스위칭을 구현하고, 제 1 오디오 대역폭이 제 2 오디오 대역폭보다 높으면, 오디오 대역폭 스위칭을 스킵하는,
    오디오 대역폭 스위칭 방법.
  52. 제 50 항 또는 제 51 항에 있어서,
    검출된 오디오 대역폭 최종 결정에 응답하여 프레임들의 카운터를 갱신하는 것을 구비하는,
    오디오 대역폭 스위칭 방법.
  53. 제 50 항 내지 제 52 항 중 어느 한 항에 있어서,
    프레임들의 카운터가 주어진 값보다 큰지를 결정하는 것을 구비하고, 사운드 신호는, 프레임들의 카운터가 주어진 값보다 더 크면, 감쇄되는,
    오디오 대역폭 스위칭 방법.
  54. 제 53 항에 있어서,
    주어진 값은 0인,
    오디오 대역폭 스위칭 방법.
  55. 제 50 항 내지 제 54 항 중 어느 한 항에 있어서,
    감쇄 인자를 이용하여 사운드 신호를 감쇄시키는 것을 구비하는,
    오디오 대역폭 스위칭 방법.
  56. 제 54 항에 있어서,
    프레임들의 개수에 대응하는 오디오 대역폭 스위칭 천이 기간과 프레임들의 카운터의 함수로서 감쇄 인자를 계산하는 것을 구비하되, 그 감쇄는, 보다 낮은 제 1 의 오디오 대역폭에서 보다 높은 제 2 의 오디오 대역폭으로의 오디오 대역폭 스위칭 후에, 적용되는,
    오디오 대역폭 스위칭 방법.
  57. 제 55 항 또는 제 56 항에 있어서,
    사운드 신호의 스펙트럼의 고대역 부분(high-band part)을 페이드 인(fade-in)하기 위해 감쇄 인자를 이용하는 것을 구비하는,
    오디오 대역폭 스위칭 방법.
  58. 제 55 항 또는 제 56 항에 있어서,
    이득 형상 파라메타들이 추가적으로 프로세싱되기 전에, 사운드 신호의 스펙트럼의 고대역 부분의 초광대역 이득 형상 파라메타들(super-wide-band gain shapes parameters)에 감쇄 인자를 적용하는 것을 구비하는
    오디오 대역폭 스위칭 방법.
  59. 제 55 항 또는 제 56 항에 있어서,
    사운드 신호의 MDCT 스펙트럼의 고대역 부분을, 감쇄 인자를 이용하여, 페이드 인(fade-in)하는 것을 구비하는
    오디오 대역폭 스위칭 방법.
  60. 제 50 항 내지 제 59 항 중 어느 한 항에 있어서,
    오디오 대역폭 스위칭은 코딩된 사운드 신호에 내재하고, 오디오 대역폭 스위칭에 연관된 가외 비트들은 디코더에 전송되지 않으며, 오디오 대역폭 스위칭과 관련하여 디코더에 의해 이루어지는 추가적인 처리도 없는,
    오디오 대역폭 스위칭 방법.
KR1020237016005A 2020-10-15 2021-10-14 오디오 코덱에 있어서 오디오 대역폭 검출 및 오디오 대역폭 스위칭을 위한 방법 및 디바이스 KR20230088409A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063092178P 2020-10-15 2020-10-15
US63/092,178 2020-10-15
PCT/CA2021/051442 WO2022077110A1 (en) 2020-10-15 2021-10-14 Method and device for audio band-width detection and audio band-width switching in an audio codec

Publications (1)

Publication Number Publication Date
KR20230088409A true KR20230088409A (ko) 2023-06-19

Family

ID=81207416

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237016005A KR20230088409A (ko) 2020-10-15 2021-10-14 오디오 코덱에 있어서 오디오 대역폭 검출 및 오디오 대역폭 스위칭을 위한 방법 및 디바이스

Country Status (9)

Country Link
US (1) US20230368803A1 (ko)
EP (1) EP4229628A1 (ko)
JP (1) JP2023545197A (ko)
KR (1) KR20230088409A (ko)
CN (1) CN116529814A (ko)
BR (1) BR112023006031A2 (ko)
CA (1) CA3193869A1 (ko)
MX (1) MX2023004261A (ko)
WO (1) WO2022077110A1 (ko)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6765931B1 (en) * 1999-04-13 2004-07-20 Broadcom Corporation Gateway with voice
EP1238489B1 (en) * 1999-12-13 2008-03-05 Broadcom Corporation Voice gateway with downstream voice synchronization

Also Published As

Publication number Publication date
CN116529814A (zh) 2023-08-01
CA3193869A1 (en) 2022-04-21
WO2022077110A1 (en) 2022-04-21
US20230368803A1 (en) 2023-11-16
MX2023004261A (es) 2023-04-26
BR112023006031A2 (pt) 2023-05-09
JP2023545197A (ja) 2023-10-26
EP4229628A1 (en) 2023-08-23

Similar Documents

Publication Publication Date Title
US11094331B2 (en) Post-processor, pre-processor, audio encoder, audio decoder and related methods for enhancing transient processing
RU2763374C2 (ru) Способ и система с использованием разности долговременных корреляций между левым и правым каналами для понижающего микширования во временной области стереофонического звукового сигнала в первичный и вторичный каналы
US8255211B2 (en) Temporal envelope shaping for spatial audio coding using frequency domain wiener filtering
JP5625032B2 (ja) マルチチャネルシンセサイザ制御信号を発生するための装置および方法並びにマルチチャネル合成のための装置および方法
JP4809370B2 (ja) マルチチャネル音声符号化における適応ビット割り当て
US9460724B2 (en) Audio signal decoder, audio signal encoder, method for providing an upmix signal representation, method for providing a downmix signal representation, computer program and bitstream using a common inter-object-correlation parameter value
KR101418661B1 (ko) 다운믹스 시그널 표현에 기초한 업믹스 시그널 표현을 제공하기 위한 장치, 멀티채널 오디오 시그널을 표현하는 비트스트림을 제공하기 위한 장치, 왜곡 제어 시그널링을 이용하는 방법들, 컴퓨터 프로그램 및 비트 스트림
US20230368803A1 (en) Method and device for audio band-width detection and audio band-width switching in an audio codec
US20230051420A1 (en) Switching between stereo coding modes in a multichannel sound codec
US20240185865A1 (en) Method and device for multi-channel comfort noise injection in a decoded sound signal
TW202411984A (zh) 用於具有元資料之參數化經寫碼獨立串流之不連續傳輸的編碼器及編碼方法
WO2024051955A1 (en) Decoder and decoding method for discontinuous transmission of parametrically coded independent streams with metadata