[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR102363475B1 - 오디오 신호 처리 방법 및 장치 - Google Patents

오디오 신호 처리 방법 및 장치 Download PDF

Info

Publication number
KR102363475B1
KR102363475B1 KR1020217004133A KR20217004133A KR102363475B1 KR 102363475 B1 KR102363475 B1 KR 102363475B1 KR 1020217004133 A KR1020217004133 A KR 1020217004133A KR 20217004133 A KR20217004133 A KR 20217004133A KR 102363475 B1 KR102363475 B1 KR 102363475B1
Authority
KR
South Korea
Prior art keywords
subband
filter
audio signal
index
signal
Prior art date
Application number
KR1020217004133A
Other languages
English (en)
Other versions
KR20210018559A (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 KR1020227004033A priority Critical patent/KR102428066B1/ko
Priority claimed from KR1020187012589A external-priority patent/KR102216801B1/ko
Publication of KR20210018559A publication Critical patent/KR20210018559A/ko
Application granted granted Critical
Publication of KR102363475B1 publication Critical patent/KR102363475B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/307Frequency adjustment, e.g. tone control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R3/00Circuits for transducers, loudspeakers or microphones
    • H04R3/04Circuits for transducers, loudspeakers or microphones for correcting frequency response
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S3/00Systems employing more than two channels, e.g. quadraphonic
    • H04S3/008Systems employing more than two channels, e.g. quadraphonic in which the audio signals are in digital form, i.e. employing more than two discrete digital channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/305Electronic adaptation of stereophonic audio signals to reverberation of the listening space
    • H04S7/306For headphones
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0204Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using subband decomposition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/167Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2420/00Details of connection covered by H04R, not provided for in its groups
    • H04R2420/01Input selection or mixing for amplifiers or loudspeakers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2430/00Signal processing covered by H04R, not provided for in its groups
    • H04R2430/03Synergistic effects of band splitting and sub-band processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2499/00Aspects covered by H04R or H04S not otherwise provided for in their subgroups
    • H04R2499/10General applications
    • H04R2499/11Transducers incorporated or for use in hand-held devices, e.g. mobile phones, PDA's, camera's
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2499/00Aspects covered by H04R or H04S not otherwise provided for in their subgroups
    • H04R2499/10General applications
    • H04R2499/15Transducers incorporated in visual displaying devices, e.g. televisions, computer displays, laptops
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2400/00Details of stereophonic systems covered by H04S but not provided for in its groups
    • H04S2400/03Aspects of down-mixing multi-channel audio to configurations with lower numbers of playback channels, e.g. 7.1 -> 5.1
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2400/00Details of stereophonic systems covered by H04S but not provided for in its groups
    • H04S2400/11Positioning of individual sound objects, e.g. moving airplane, within a sound field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2420/00Techniques used stereophonic systems covered by H04S but not provided for in its groups
    • H04S2420/01Enhancing the perception of the sound image or of the spatial distribution using head related transfer functions [HRTF's] or equivalents thereof, e.g. interaural time difference [ITD] or interaural level difference [ILD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2420/00Techniques used stereophonic systems covered by H04S but not provided for in its groups
    • H04S2420/07Synergistic effects of band splitting and sub-band processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Stereophonic System (AREA)

Abstract

본 발명은 오디오 신호 처리 방법 및 장치에 관한 것이다. 본 발명은, 입력 오디오 신호를 수신하는 단계; 각 서브밴드에 대한 필터 계수들의 블록 길이 정보 및 블록 개수 정보를 획득하는 단계; 각각의 서브밴드 인덱스, 바이노럴 필터 쌍 인덱스, 상기 블록 개수 내에서의 블록 인덱스, 및 상기 블록 길이 정보에 따른 길이를 갖는 각 블록에서의 타임 슬롯 인덱스에 대한 필터 계수들을 수신하는 단계, 동일 서브밴드 인덱스 및 동일 바이노럴 필터 쌍 인덱스에 대한 필터 계수들의 총 길이는 해당 서브밴드의 필터 차수에 기초하여 결정됨; 및 상기 입력 오디오 신호의 각 서브밴드 신호를 이에 대응하는 상기 수신된 필터 계수들을 이용하여 필터링하는 단계, 를 포함하는 오디오 신호 처리 방법 및 이를 이용한 오디오 신호 처리 장치를 제공한다.

Description

오디오 신호 처리 방법 및 장치{AUDIO SIGNAL PROCESSING METHOD AND DEVICE}
본 발명은 오디오 신호 처리 방법 및 장치에 관한 것으로, 더욱 상세하게는 오브젝트 신호와 채널 신호를 합성하고 이를 효과적으로 바이노럴 렌더링할 수 있는 오디오 신호 처리 방법 및 장치에 관한 것이다.
3D 오디오란 기존의 서라운드 오디오에서 제공하는 수평면(2D) 상의 사운드 장면에 높이 방향에 해당하는 또 다른 축을 제공함으로써, 3차원 공간상에서 임장감 있는 사운드를 제공하기 위한 일련의 신호 처리, 전송, 부호화 및 재생기술 등을 통칭한다. 특히, 3D 오디오를 제공하기 위해서는 종래보다 많은 수의 스피커를 사용하거나 혹은 적은 수의 스피커를 사용하더라도 스피커가 존재하지 않는 가상의 위치에서 음상이 맺히도록 하는 렌더링 기술이 요구된다.
3D 오디오는 초고해상도 TV(UHDTV)에 대응되는 오디오 솔루션이 될 것으로 예상되며, 고품질 인포테인먼트 공간으로 진화하고 있는 차량에서의 사운드를 비롯하여 그밖에 극장 사운드, 개인용 3DTV, 태블릿, 스마트폰 및 클라우드 게임 등 다양한 분야에서 응용될 것으로 예상된다.
한편, 3D 오디오에 제공되는 음원의 형태로는 채널 기반의 신호와 오브젝트 기반의 신호가 존재할 수 있다. 이 뿐만 아니라, 채널 기반의 신호와 오브젝트 기반의 신호가 혼합된 형태의 음원이 존재할 수 있으며, 이를 통해 유저로 하여금 새로운 형태의 청취 경험을 제공할 수 있다.
본 발명은 멀티채널 혹은 멀티오브젝트 신호를 스테레오로 재생함에 있어서, 원신호와 같은 입체감을 보존하기 위한 바이노럴 렌더링에서 많은 연산량을 필요로 하는 필터링 과정을 음질 손실을 최소화하면서도 매우 낮은 연산량으로 구현하기 위한 목적을 가지고 있다.
또한, 본 발명은 입력 신호 자체에 왜곡이 있는 경우 고품질 필터를 통해 왜곡의 확산이 발생하는 것을 최소화하고자 하는 목적을 가지고 있다.
또한, 본 발명은 매우 긴 길이를 갖는 FIR(Finite Impulse Response) 필터를 더 작은 길이의 필터로 구현하고자 하는 목적을 가지고 있다.
또한, 본 발명은 축약된 FIR 필터를 이용한 필터링의 수행시, 누락된 필터 계수에 의해 손상된 부분의 왜곡을 최소화하고자 하는 목적을 가지고 있다.
또한, 본 발명은 채널 종속적인 바이노럴 렌더링 및 스케일러블 바이노럴 렌더링 방법을 제공하기 위한 목적을 가지고 있다.
상기와 같은 과제를 해결하기 위해, 본 발명은 다음과 같은 오디오 신호 처리 방법 및 오디오 신호 처리 장치를 제공한다.
먼저 본 발명은, 멀티채널 신호 및 멀티오브젝트 신호 중 적어도 하나를 포함하는 입력 오디오 신호를 수신하는 단계; 상기 입력 오디오 신호의 바이노럴 필터링을 위한 필터 셋의 타입 정보를 수신하는 단계, 상기 필터 셋의 타입은 FIR(Finite Impulse Response) 필터, 주파수 도메인의 파라메터화된 필터 또는 시간 도메인의 파라메터화된 필터 중 하나임; 상기 타입 정보에 기초하여 상기 바이노럴 필터링을 위한 필터 정보를 수신하는 단계; 및 상기 수신된 필터 정보를 이용하여 상기 입력 오디오 신호에 대한 바이노럴 필터링을 수행하는 단계; 를 포함하되, 상기 타입 정보가 상기 주파수 도메인의 파라메터화된 필터를 나타내는 경우, 상기 필터 정보를 수신하는 단계는, 주파수 도메인의 각 서브밴드 별로 결정된 길이를 갖는 서브밴드 필터 계수를 수신하고, 상기 바이노럴 필터링을 수행하는 단계는, 상기 입력 오디오 신호의 각 서브밴드 신호를 이에 대응하는 상기 서브밴드 필터 계수를 이용하여 필터링하는 것을 특징으로 하는 오디오 신호 처리 방법을 제공한다.
또한, 본 발명은 멀티채널 신호 및 멀티오브젝트 신호 중 적어도 하나를 포함하는 입력 오디오 신호의 바이노럴 렌더링을 수행하기 위한 오디오 신호 처리 장치로서, 상기 입력 오디오 신호의 바이노럴 필터링을 위한 필터 셋의 타입 정보를 수신하되, 상기 필터 셋의 타입은 FIR(Finite Impulse Response) 필터, 주파수 도메인의 파라메터화된 필터 또는 시간 도메인의 파라메터화된 필터 중 하나이고, 상기 타입 정보에 기초하여 상기 바이노럴 필터링을 위한 필터 정보를 수신하고, 상기 수신된 필터 정보를 이용하여 상기 입력 오디오 신호에 대한 바이노럴 필터링을 수행하되, 상기 타입 정보가 상기 주파수 도메인의 파라메터화된 필터를 나타내는 경우, 상기 오디오 신호 처리 장치는, 주파수 도메인의 각 서브밴드 별로 결정된 길이를 갖는 서브밴드 필터 계수를 수신하고, 상기 입력 오디오 신호의 각 서브밴드 신호를 이에 대응하는 상기 서브밴드 필터 계수를 이용하여 필터링하는 것을 특징으로 하는 오디오 신호 처리 장치를 제공한다.
본 발명의 실시예에 따르면, 상기 각 서브밴드 필터 계수의 길이는 원형 필터 계수로부터 획득된 해당 서브밴드의 잔향 시간 정보에 기초하여 결정되며, 동일한 원형 필터 계수로부터 획득된 적어도 하나의 상기 서브밴드 필터 계수의 길이는 다른 서브밴드 필터 계수의 길이와 다른 것을 특징으로 한다.
본 발명의 일 실시예에 따르면, 상기 오디오 신호 처리 방법은 상기 타입 정보가 상기 주파수 도메인의 파라메터화된 필터를 나타내는 경우, 바이노럴 렌더링을 수행하는 주파수 밴드의 개수 정보 및 콘볼루션을 수행하는 주파수 밴드의 개수 정보를 수신하는 단계; 상기 콘볼루션을 수행하는 주파수 밴드를 경계로 하는 고주파수 서브밴드 그룹의 각 서브밴드 신호에 대하여 탭-딜레이 라인 필터링을 수행하기 위한 파라메터를 수신하는 단계; 및 상기 수신된 파라메터를 이용하여 상기 고주파수 그룹의 각 서브밴드 신호에 대한 탭-딜레이 라인 필터링을 수행하는 단계; 를 더 포함하는 것을 특징으로 한다
이때, 상기 탭-딜레이 라인 필터링을 수행하는 고주파수 서브밴드 그룹의 서브밴드 개수는 상기 바이노럴 렌더링을 수행하는 주파수 밴드 개수와 상기 콘볼루션을 수행하는 주파수 밴드 개수의 차이에 기초하여 결정되는 것을 특징으로 한다.
또한, 상기 파라메터는 상기 고주파수 그룹의 각 서브밴드 신호에 대응하는 상기 서브밴드 필터 계수에서 추출된 딜레이 정보 및 상기 딜레이 정보에 대응하는 게인 정보를 포함하는 것을 특징으로 한다.
본 발명의 실시예에 따르면, 상기 타입 정보가 상기 FIR 필터를 나타내는 경우, 상기 필터 정보를 수신하는 단계는, 상기 입력 오디오 신호의 각 서브밴드 신호에 대응하는 원형 필터 계수를 수신하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 멀티채널 신호를 포함하는 입력 오디오 신호를 수신하는 단계; 주파수 도메인의 각 서브밴드 별로 가변적으로 결정된 필터 차수 정보를 수신하는 단계; 상기 입력 오디오 신호의 바이노럴 필터링을 위한 필터 계수의 각 서브밴드 별 고속 퓨리에 변환 길이에 기초한 서브밴드 별 블록 길이 정보를 수신하는 단계; 상기 입력 오디오 신호의 각 서브밴드 및 각 채널에 대응하는 주파수 도메인 가변차수 필터링(Variable Order Filtering in Frequency-domain, VOFF) 계수를 해당 서브밴드의 상기 블록 단위로 수신하는 단계, 동일 서브밴드 및 동일 채널에 대응하는 상기 VOFF 계수의 길이의 총 합은 해당 서브밴드의 상기 필터 차수 정보에 기초하여 결정됨; 및 상기 수신된 VOFF 계수를 이용하여 상기 입력 오디오 신호의 각 서브밴드 신호를 필터링 하여 바이노럴 출력 신호를 생성하는 단계; 를 포함하는 것을 특징으로 하는 오디오 신호 처리 방법을 제공한다.
또한, 멀티채널 신호를 포함하는 입력 오디오 신호에 대한 바이노럴 렌더링을 수행하기 위한 오디오 신호 처리 장치로서, 상기 오디오 신호 처리 장치는 상기 입력 오디오 신호에 대한 직접음 및 초기 반사음 파트의 렌더링을 수행하는 고속 콘볼루션부를 포함하며, 상기 고속 콘볼루션부는, 상기 입력 오디오 신호를 수신하고, 주파수 도메인의 각 서브밴드 별로 가변적으로 결정된 필터 차수 정보를 수신하고, 상기 입력 오디오 신호의 바이노럴 필터링을 위한 필터 계수의 각 서브밴드 별 고속 퓨리에 변환 길이에 기초한 서브밴드 별 블록 길이 정보를 수신하고, 상기 입력 오디오 신호의 각 서브밴드 및 각 채널에 대응하는 주파수 도메인 가변차수 필터링(Variable Order Filtering in Frequency-domain, VOFF) 계수를 해당 서브밴드의 상기 블록 단위로 수신하되, 동일 서브밴드 및 동일 채널에 대응하는 상기 VOFF 계수의 길이의 총 합은 해당 서브밴드의 상기 필터 차수 정보에 기초하여 결정되고, 상기 수신된 VOFF 계수를 이용하여 상기 입력 오디오 신호의 각 서브밴드 신호를 필터링 하여 바이노럴 출력 신호를 생성하는 것을 특징으로 하는 오디오 신호 처리 장치를 제공한다.
이때, 상기 필터 차수는 원형 필터 계수로부터 획득된 해당 서브밴드의 잔향 시간 정보에 기초하여 결정되며, 동일한 원형 필터 계수로부터 획득된 적어도 하나의 서브밴드의 상기 필터 차수는 다른 서브밴드의 필터 차수와 다른 것을 특징으로 한다.
또한, 상기 블록 단위의 상기 VOFF 계수의 길이는 해당 서브밴드의 상기 블록 길이 정보를 지수로 하는 2의 거듭 제곱 값으로 결정되는 것을 특징으로 한다.
본 발명의 실시예에 따르면, 상기 바이노럴 출력 신호를 생성하는 단계는, 상기 서브밴드 신호의 각 프레임을 상기 기 설정된 블록의 길이에 기초하여 결정된 서브 프레임 단위로 분할하는 단계; 및 상기 분할된 서브 프레임과 상기 VOFF 계수 간의 고속 콘볼루션을 수행하는 단계; 를 포함하는 것을 특징으로 한다.
이때, 상기 서브 프레임의 길이는 상기 기 설정된 블록의 길이의 절반으로 결정되며, 상기 분할된 서브 프레임의 개수는 상기 프레임의 전체 길이를 상기 서브 프레임의 길이로 나눈 값에 기초하여 결정되는 것을 특징으로 한다.
본 발명의 실시예에 따르면, 멀티채널 혹은 멀티오브젝트 신호에 대한 바이노럴 렌더링의 수행시 음질 손실을 최소화 하면서 연산량을 획기적으로 낮출 수 있다.
또한, 기존에 저전력 장치에서 실시간 처리가 불가능했던 멀티채널 혹은 멀티오브젝트 오디오 신호에 대한 고음질의 바이노럴 렌더링이 가능하도록 한다.
본 발명은 오디오 신호를 포함한 다양한 형태의 멀티미디어 신호의 필터링을 낮은 연산량으로 효율적으로 수행하는 방법을 제공한다.
또한, 본 발명의 실시예에 따르면 채널 종속적인 바이노럴 렌더링, 스케일러블 바이노럴 렌더링 등의 방법을 제공함으로, 바이노럴 렌더링의 퀄리티 및 연산량을 함께 조절할 수 있다.
도 1은 본 발명의 실시예에 따른 오디오 신호 디코더를 나타낸 블록도.
도 2는 본 발명의 일 실시예에 따른 바이노럴 렌더러의 각 구성을 나타낸 블록도.
도 3은 본 발명의 실시예에 따른 바이노럴 렌더링을 위한 필터 생성 방법을 나타낸 도면.
도 4는 본 발명의 실시예에 따른 QTDL 프로세싱을 상세하게 나타낸 도면.
도 5는 본 발명의 BRIR 파라메터화부의 각 구성을 나타낸 블록도.
도 6은 본 발명의 VOFF 파라메터화부의 각 구성을 나타낸 블록도.
도 7은 본 발명의 VOFF 파라메터 생성부의 세부 구성을 나타낸 블록도.
도 8은 본 발명의 QTDL 파라메터화부의 각 구성을 나타낸 블록도.
도 9는 블록 단위의 고속 콘볼루션을 위한 VOFF 계수 생성 방법의 일 실시예를 나타낸 도면.
도 10은 본 발명의 고속 콘볼루션부에서의 오디오 신호 처리 과정의 일 실시예를 나타낸 도면.
도 11 내지 도 15는 본 발명에 따른 오디오 신호 처리 방법을 구현하기 위한 신택스(syntax)의 일 실시예를 나타낸 도면.
도 16은 본 발명의 변형 실시예에 따른 필터 차수 결정 방법을 나타낸 도면.
도 17 및 도 18은 본 발명의 변형 실시예를 구현하기 위한 함수의 신택스를 나타낸 도면.
본 명세서에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도, 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한 특정 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 그 의미를 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는, 단순한 용어의 명칭이 아닌 그 용어가 가진 실질적인 의미와 본 명세서의 전반에 걸친 내용을 토대로 해석되어야 함을 밝혀두고자 한다.
도 1은 본 발명의 실시예에 따른 오디오 디코더를 나타낸 블록도이다. 본 발명의 오디오 디코더는 코어 디코더(10), 렌더링 유닛(20), 믹서(30), 및 포스트 프로세싱 유닛(40)을 포함한다.
먼저, 코어 디코더(10)는 수신된 비트스트림을 복호화하여 렌더링 유닛(20)으로 전달한다. 이때, 코어 디코더(10)에서 출력되어 렌더링 유닛으로 전달되는 신호에는 라우드스피커(loudspeaker) 채널 신호(411), 오브젝트 신호(412), SAOC 채널 신호(414), HOA 신호(415) 및 오브젝트 메타데이터 비트스트림(413) 등이 포함될 수 있다. 코어 디코더(10)에는 인코더에서 부호화시에 사용된 코어 코덱이 사용될 수 있는데, 이를테면, MP3, AAC, AC3 또는 USAC(Unified Speech and Audio Coding) 기반의 코덱이 사용될 수 있다.
한편, 수신된 비트스트림에는 코어 디코더(10)에서 복호화되는 신호가 채널 신호인지, 오브젝트 신호인지 또는 HOA 신호인지 등을 식별할 수 있는 식별자가 더 포함될 수 있다. 또한, 복호화되는 신호가 채널 신호(411)일 경우, 각 신호가 멀티채널 내의 어느 채널 (이를테면 left speaker 대응, top rear right speaker 대응 등)에 대응되는지를 식별할 수 있는 식별자가 비트스트림에 더 포함될 수 있다. 복호화되는 신호가 오브젝트 신호(412)일 경우, 오브젝트 메타데이터 비트스트림(413)을 복호화하여 획득되는 오브젝트 메타데이터 정보(425a, 425b) 등과 같이, 해당 신호가 재생 공간의 어느 위치에 재생되는지를 나타내는 정보가 추가로 획득될 수 있다.
본 발명의 실시예에 따르면, 오디오 디코더는 유연한 렌더링(flexible rendering)을 수행하여 출력 오디오 신호의 품질을 높일 수 있다. 유연한 렌더링이란 실제 재생 환경의 라우드스피커 배치(재생 레이아웃) 또는 BRIR(Binaural Room Impulse Response) 필터 셋의 가상 스피커 배치(가상 레이아웃)에 기초하여, 복호화된 오디오 신호의 포맷을 변환하는 과정을 의미할 수 있다. 일반적으로, 실제 거실 환경에 배치된 스피커는 규격(standard) 권고안 대비 방향각과 거리 등이 모두 달라지게 된다. 스피커의 높이, 방향, 청자와의 거리 등이 규격 권고안에 따른 스피커 배치와 상이하게 됨에 따라, 변경된 스피커의 위치에서 원래 신호를 재생할 경우 이상적인 3D 사운드 장면을 제공하기 어렵게 될 수 있다. 이와 같이 상이한 스피커 배치에서도 컨텐츠 제작자가 의도한 사운드 장면을 효과적으로 제공하기 위해서는, 오디오 신호를 변환하여 스피커들 간의 위치 차이에 따른 변화를 보정하는 유연한 렌더링이 필요하다.
따라서, 렌더링 유닛(20)은 코어 디코더(10)에 의해 복호화 된 신호를 재생 레이아웃(reproduction layout) 정보 또는 가상 레이아웃(virtual layout) 정보를 이용하여 타겟 출력 신호로 렌더링한다. 재생 레이아웃 정보는 재생 환경의 라우드스피커 레이아웃 정보로 표현되는 타겟 채널의 배치(configuration)를 나타낸다. 또한, 가상 레이아웃 정보는 바이노럴 렌더러(200)에서 사용되는 BRIR(Binaural Room Impulse Response) 필터 셋(set)에 기초하여 획득될 수 있는데, 가상 레이아웃에 대응하는 위치 셋(set of positions)은 BRIR 필터 셋에 대응하는 위치 셋의 서브셋(subset)으로 이루어 질 수 있다. 이때, 상기 가상 레이아웃의 위치 셋은 각 타겟 채널들의 위치 정보를 나타낼 수 있다. 렌더링 유닛(20)은 포맷 컨버터(22), 오브젝트 렌더러(24), OAM 디코더(25), SAOC 디코더(26) 및 HOA 디코더(28)를 포함할 수 있다. 렌더링 유닛(20)은 복호화 된 신호의 타입에 따라 상기 구성 중 적어도 하나를 이용하여 렌더링을 수행한다.
포맷 컨버터(22)는 채널 렌더러로도 지칭될 수 있으며, 전송된 채널 신호(411)를 출력 스피커 채널 신호로 변환한다. 즉, 포맷 컨버터(22)는 전송된 채널 배치(configuration)와 재생될 스피커 채널 배치 간의 변환을 수행한다. 만약, 출력 스피커 채널의 개수(이를테면, 5.1 채널)가 전송된 채널의 개수(이를테면, 22.2 채널)보다 적거나, 전송된 채널 배치와 재생될 채널 배치가 다를 경우, 포맷 컨버터(22)는 채널 신호(411)에 대한 다운믹스 또는 변환을 수행한다. 본 발명의 실시예에 따르면, 오디오 디코더는 입력 채널 신호와 출력 스피커 채널 신호간의 조합을 이용하여 최적의 다운믹스 매트릭스를 생성하고, 상기 매트릭스를 이용하여 다운믹스를 수행할 수 있다. 또한, 포맷 컨버터(22)가 처리하는 채널 신호(411)에는 사전-렌더링된 오브젝트 신호가 포함될 수 있다. 일 실시예에 따르면, 오디오 신호의 부호화 전에 적어도 하나의 오브젝트 신호가 사전-렌더링되어 채널 신호에 믹스(mix)될 수 있다. 이와 같이 믹스 된 오브젝트 신호는 채널 신호와 함께 포맷 컨버터(22)에 의해 출력 스피커 채널 신호로 변환될 수 있다.
오브젝트 렌더러(24) 및 SAOC 디코더(26)는 오브젝트 기반의 오디오 신호에 대한 렌더링을 수행한다. 오브젝트 기반의 오디오 신호에는 개별 오브젝트 웨이브폼과 파라메트릭 오브젝트 웨이브폼이 포함될 수 있다. 개별 오브젝트 웨이브폼의 경우, 각 오브젝트 신호들은 모노포닉(monophonic) 웨이브폼으로 인코더에 제공되며, 인코더는 단일 채널 엘리먼트들(Single Channel Elements, SCEs)을 이용하여 각 오브젝트 신호들을 전송한다. 파라메트릭 오브젝트 웨이브폼의 경우, 복수의 오브젝트 신호들이 적어도 하나의 채널 신호로 다운믹스 되며, 각 오브젝트의 특징과 이들 간의 관계가 SAOC(Spatial Audio Object Coding) 파라메터로 표현된다. 오브젝트 신호들은 다운믹스 되어 코어 코덱으로 부호화되며, 이때 생성되는 파라메트릭 정보가 함께 디코더로 전송된다.
한편, 개별 오브젝트 웨이브폼 또는 파라메트릭 오브젝트 웨이브폼이 오디오 디코더로 전송될 때, 이에 대응하는 압축된 오브젝트 메타데이터가 함께 전송될 수 있다. 오브젝트 메타데이터는 오브젝트 속성을 시간과 공간 단위로 양자화하여 3차원 공간에서의 각 오브젝트의 위치 및 이득값을 지정한다. 렌더링 유닛(20)의 OAM 디코더(25)는 압축된 오브젝트 메타데이터 비트스트림(413)을 수신하고, 이를 복호화하여 오브젝트 렌더러(24) 및/또는 SAOC 디코더(26)로 전달한다.
오브젝트 렌더러(24)는 오브젝트 메타데이터 정보(425a)를 이용하여 각 오브젝트 신호(412)를 주어진 재생 포맷에 따라 렌더링한다. 이때, 각 오브젝트 신호(412)는 오브젝트 메타데이터 정보(425a)에 기초하여 특정 출력 채널들로 렌더링될 수 있다. SAOC 디코더(26)는 SAOC 채널 신호(414)와 파라메트릭 정보로부터 오브젝트/채널 신호를 복원한다. 또한, 상기 SAOC 디코더(26)는 재생 레이아웃 정보와 오브젝트 메타데이터 정보(425b)에 기초하여 출력 오디오 신호를 생성할 수 있다. 즉, SAOC 디코더(26)는 SAOC 채널 신호(414)를 이용하여 복호화된 오브젝트 신호를 생성하고, 이를 타겟 출력 신호로 매핑하는 렌더링을 수행한다. 이와 같이 오브젝트 렌더러(24) 및 SAOC 디코더(26)는 오브젝트 신호를 채널 신호로 렌더링할 수 있다.
HOA 디코더(28)는 HOA(Higher Order Ambisonics) 신호(415) 및 HOA 부가 정보를 수신하고, 이를 복호화한다. HOA 디코더(28)는 채널 신호나 오브젝트 신호를 별도의 수학식으로 모델링하여 사운드 장면을 생성한다. 생성된 사운드 장면에서 스피커가 있는 공간상의 위치를 선택하면, 스피커 채널 신호로 렌더링이 수행될 수 있다.
한편, 도 1에는 도시되지 않았지만, 렌더링 유닛(20)의 각 구성요소로 오디오 신호가 전달될 때, 전처리 과정으로서 동적 범위 제어(Dynamic Range Control, DRC)가 수행될 수 있다. DRC는 재생되는 오디오 신호의 동적 범위를 일정 레벨로 제한하는 것으로, 기 설정된 쓰레숄드(threshold) 보다 작은 소리는 더 크게, 기 설정된 쓰레숄드 보다 큰 소리는 더 작게 조정 한다.
렌더링 유닛(20)에 의해 처리된 채널 기반의 오디오 신호 및 오브젝트 기반의 오디오 신호는 믹서(30)로 전달된다. 믹서(30)는 렌더링 유닛(20)의 각 서브 유닛에서 렌더링 된 부분 신호들을 믹싱하여 믹서 출력 신호를 생성한다. 만약 부분 신호들이 재생/가상 레이아웃 상의 동일한 위치에 매칭되는 신호일 경우에는 서로 더해지며, 동일하지 않은 위치에 매칭되는 신호일 경우에는 각각 별개의 위치에 대응되는 출력 신호로 믹싱된다. 믹서(30)는 서로 더해지는 부분 신호들 간에 상쇄 간섭이 발생하는지 여부를 판별하고, 이를 방지하기 위한 추가적인 프로세스를 더 수행할 수 있다. 또한, 믹서(30)는 채널 기반의 웨이브폼과 렌더링된 오브젝트 웨이브폼의 딜레이(delay)를 조정하고, 이를 샘플 단위로 합산한다. 이와 같이, 믹서(30)에 의해 합산된 오디오 신호는 포스트 프로세싱 유닛(40)으로 전달된다.
포스트 프로세싱 유닛(40)은 스피커 렌더러(100)와 바이노럴 렌더러(200)를 포함한다. 스피커 렌더러(100)는 믹서(30)로부터 전달된 멀티채널 및/또는 멀티오브젝트 오디오 신호를 출력하기 위한 포스트 프로세싱을 수행한다. 이러한 포스트 프로세싱에는 동적 범위 제어(DRC), 음량 정규화(Loudness Normalization, LN) 및 피크 제한(Peak Limiter, PL) 등이 포함될 수 있다. 스피커 렌더러(100)의 출력 신호는 멀티채널 오디오 시스템의 라우드스피커로 전달되어 출력될 수 있다.
바이노럴 렌더러(200)는 멀티채널 및/또는 멀티오브젝트 오디오 신호의 바이노럴 다운믹스 신호를 생성한다. 바이노럴 다운믹스 신호는 각 입력 채널/오브젝트 신호가 3차원상에 위치한 가상의 음원에 의해 표현되도록 하는 2채널의 오디오 신호이다. 바이노럴 렌더러(200)는 스피커 렌더러(100)에 공급되는 오디오 신호를 입력 신호로서 수신할 수 있다. 바이노럴 렌더링은 BRIR(Binaural Room Impulse Response) 필터를 기초로 수행되며, 시간 도메인 또는 QMF 도메인 상에서 수행될 수 있다. 실시예에 따르면, 바이노럴 렌더링의 후처리 과정으로서 전술한 동적 범위 제어(DRC), 음량 정규화(LN) 및 피크 제한(PL) 등이 추가로 수행될 수 있다. 바이노럴 렌더러(200)의 출력 신호는 헤드폰, 이어폰 등과 같은 2채널 오디오 출력 장치로 전달되어 출력될 수 있다.
도 2는 본 발명의 일 실시예에 따른 바이노럴 렌더러의 각 구성을 나타낸 블록도이다. 도시된 바와 같이, 본 발명의 실시예에 따른 바이노럴 렌더러(200)는 BRIR 파라메터화부(300), 고속 콘볼루션부(230), 후기잔향 생성부(240), QTDL 프로세싱부(250), 믹서&콤바이너(260)를 포함할 수 있다.
바이노럴 렌더러(200)는 다양한 타입의 입력 신호에 대한 바이노럴 렌더링을 수행하여 3D 오디오 헤드폰 신호(즉, 3D 오디오 2채널 신호)를 생성한다. 이때, 입력 신호는 채널 신호(즉, 스피커 채널 신호), 오브젝트 신호 및 HOA 신호 중 적어도 하나를 포함하는 오디오 신호가 될 수 있다. 본 발명의 다른 실시예에 따르면, 바이노럴 렌더러(200)가 별도의 디코더를 포함할 경우, 상기 입력 신호는 전술한 오디오 신호의 부호화된 비트스트림이 될 수 있다. 바이노럴 렌더링은 복호화된 입력 신호를 바이노럴 다운믹스 신호로 변환하여, 헤드폰으로 청취시 서라운드 음향을 체험할 수 있도록 한다.
본 발명의 실시예에 따른 바이노럴 렌더러(200)는 BRIR(Binaural Room Impulse Response) 필터를 이용하여 바이노럴 렌더링을 수행할 수 있다. BRIR을 이용한 바이노럴 렌더링을 일반화하면 M개의 채널을 갖는 멀티채널의 입력 신호에 대해 O개의 출력신호를 얻기 위한 M-to-O 프로세싱이다. 바이노럴 필터링은 이 과정에서 각각의 입력 채널과 출력 채널에 대응되는 필터 계수를 이용한 필터링으로 볼 수 있다. 이를 위해, 각 채널 신호의 스피커 위치에서부터 좌, 우 귀의 위치까지의 전달함수를 나타내는 다양한 필터 셋이 사용될 수 있다. 이러한 전달함수 중 일반적인 청음공간, 즉 잔향이 있는 공간에서 측정한 것을 Binaural Room Impulse Response(BRIR)라 부른다. 반면 재생 공간의 영향이 없도록 무향실에서 측정한 것을 Head Related Impulse Response(HRIR)이라고 하며, 이에 대한 전달함수를 Head Related Transfer Function(HRTF)라 부른다. 따라서, BRIR은 HRTF와는 다르게 방향 정보뿐만 아니라 재생 공간의 정보를 함께 담고 있다. 일 실시예에 따르면, HRTF와 인공 잔향기(artificial reverberator)를 이용하여 BRIR을 대체할 수도 있다. 본 명세서에서는 BRIR을 이용한 바이노럴 렌더링에 대하여 설명하지만, 본 발명은 이에 한정되지 않으며 HRIR, HRTF를 포함하는 다양한 형태의 FIR 필터를 이용한 바이노럴 렌더링에도 동일하거나 상응하는 방법으로 적용 가능하다. 또한, 본 발명은 오디오 신호의 바이노럴 렌더링 뿐만 아니라, 입력 신호의 다양한 형태의 필터링 연산시에도 적용 가능하다.
본 발명에서 오디오 신호 처리 장치는 협의의 의미로는 도 2에 도시된 바이노럴 렌더러(200) 또는 바이노럴 렌더링 유닛(220)을 가리킬 수 있다. 그러나 본 발명에서 오디오 신호 처리 장치는 광의의 의미로는 바이노럴 렌더러를 포함하는 도 1의 오디오 디코더를 가리킬 수 있다. 또한, 이하 본 명세서에서는 멀티채널 입력 신호에 대한 실시예를 주로 기술할 수 있으나, 별도의 언급이 없을 경우 채널, 멀티채널 및 멀티채널 입력 신호는 각각 오브젝트, 멀티오브젝트 및 멀티오브젝트 입력 신호를 포함하는 개념으로 사용될 수 있다. 뿐만 아니라, 멀티채널 입력 신호는 HOA 디코딩 및 렌더링된 신호를 포함하는 개념으로도 사용될 수 있다.
본 발명의 실시예에 따르면, 바이노럴 렌더러(200)는 입력 신호에 대한 바이노럴 렌더링을 QMF 도메인 상에서 수행할 수 있다. 이를테면, 바이노럴 렌더러(200)는 QMF 도메인의 멀티채널(N channels) 신호를 수신하고, QMF 도메인의 BRIR 서브밴드 필터를 이용하여 상기 멀티채널 신호에 대한 바이노럴 렌더링을 수행할 수 있다. QMF 분석 필터뱅크를 통과한 i번째 채널의 k번째 서브밴드(subband) 신호를
Figure 112021016838182-pat00001
, 서브밴드 도메인에서의 시간 인덱스를 l이라고 하면, QMF 도메인에서의 바이노럴 렌더링은 다음과 같은 식으로 표현할 수 있다.
Figure 112021016838182-pat00002
여기서, m은 L(좌) 또는 R(우)이며,
Figure 112021016838182-pat00003
은 시간 도메인 BRIR 필터를 QMF 도메인의 서브밴드 필터로 변환한 것이다.
즉, 바이노럴 렌더링은 QMF 도메인의 채널 신호 또는 오브젝트 신호를 복수의 서브밴드 신호로 나누고, 각 서브밴드 신호를 이에 대응하는 BRIR 서브밴드 필터와 콘볼루션 한 후 합산하는 방법으로 수행될 수 있다.
BRIR 파라메터화부(300)는 QMF 도메인에서의 바이노럴 렌더링을 위해 BRIR 필터 계수를 변환 및 편집하고 각종 파라메터를 생성한다. 먼저, BRIR 파라메터화부(300)는 멀티채널 또는 멀티오브젝트에 대한 시간 도메인 BRIR 필터 계수를 수신하고, 이를 QMF 도메인 BRIR 필터 계수로 변환한다. 이때, QMF 도메인 BRIR 필터 계수는 복수의 주파수 밴드에 각각 대응하는 복수의 서브밴드 필터 계수들을 포함한다. 본 발명에서 서브밴드 필터 계수는 QMF 변환된 서브밴드 도메인의 각 BRIR 필터 계수를 가리킨다. 본 명세서에서 서브밴드 필터 계수는 BRIR 서브 밴드 필터 계수로도 지칭될 수 있다. BRIR 파라메터화부(300)는 QMF 도메인의 복수의 BRIR 서브밴드 필터 계수를 각각 편집하고, 편집된 서브밴드 필터 계수를 고속 콘볼루션부(230) 등에 전달할 수 있다. 본 발명의 실시예에 따르면, BRIR 파라메터화부(300)는 바이노럴 렌더러(200)의 일 구성요소로 포함될 수도 있으며, 별도의 장치로 구비될 수도 있다. 일 실시예에 따르면, BRIR 파라메터화부(300)를 제외한 고속 콘볼루션부(230), 후기잔향 생성부(240), QTDL 프로세싱부(250), 믹서&콤바이너(260)를 포함하는 구성이 바이노럴 렌더링 유닛(220)으로 분류될 수 있다.
일 실시예에 따르면, BRIR 파라메터화부(300)는 가상 재생 공간의 적어도 하나의 위치에 대응되는 BRIR 필터 계수를 입력으로 수신할 수 있다. 상기 가상 재생 공간의 각 위치는 멀티채널 시스템의 각 스피커 위치에 대응될 수 있다. 일 실시예에 따르면, BRIR 파라메터화부(300)가 수신한 각 BRIR 필터 계수는 바이노럴 렌더러(200)의 입력 신호의 각 채널 또는 각 오브젝트에 직접 매칭될 수 있다. 반면에, 본 발명의 다른 실시예에 따르면 상기 수신된 각 BRIR 필터 계수는 바이노럴 렌더러(200)의 입력 신호에 독립적인 구성(configuration)을 가질 수 있다. 즉, BRIR 파라메터화부(300)가 수신한 BRIR 필터 계수 중 적어도 일부는 바이노럴 렌더러(200)의 입력 신호에 직접 매칭되지 않을 수 있으며, 수신된 BRIR 필터 계수의 개수는 입력 신호의 채널 및/또는 오브젝트의 총 개수보다 작거나 클 수도 있다.
BRIR 파라메터화부(300)는 제어 파라메터 정보를 추가적으로 입력 받고, 입력된 제어 파라메터 정보에 기초하여 전술한 바이노럴 렌더링을 위한 파라메터를 생성할 수 있다. 제어 파라메터 정보는 후술하는 실시예와 같이 복잡도-퀄리티 제어 파라메터 등을 포함할 수 있으며, BRIR 파라메터화부(300)의 각종 파라메터화 과정을 위한 임계값으로 사용될 수 있다. 이러한 입력 값에 기초하여 BRIR 파라메터화부(300)는 바이노럴 렌더링 파라메터를 생성하고, 이를 바이노럴 렌더링 유닛(220)에 전달한다. 만약 입력 BRIR 필터 계수나 제어 파라메터 정보가 변경될 경우, BRIR 파라메터화부(300)는 바이노럴 렌더링 파라메터를 재 계산하여 바이노럴 렌더링 유닛에 전달할 수 있다.
본 발명의 실시예에 따르면, BRIR 파라메터화부(300)는 바이노럴 렌더러(200)의 입력 신호의 각 채널 또는 각 오브젝트에 대응하는 BRIR 필터 계수를 변환 및 편집하여 바이노럴 렌더링 유닛(220)으로 전달할 수 있다. 상기 대응하는 BRIR 필터 계수는 BRIR 필터 셋에서 선택된 각 채널 또는 각 오브젝트에 대한 매칭 BRIR 또는 폴백(fallback) BRIR이 될 수 있다. BRIR 매칭은 가상 재생 공간상에서 각 채널 또는 각 오브젝트의 위치를 타겟으로 하는 BRIR 필터 계수가 존재하는지 여부에 따라 결정될 수 있다. 이때, 각 채널(또는 오브젝트)의 위치 정보는 채널 배치를 시그널링 하는 입력 파라메터로부터 획득될 수 있다. 만약, 입력 신호의 각 채널 또는 각 오브젝트의 위치 중 적어도 하나를 타겟으로 하는 BRIR 필터 계수가 존재할 경우, 해당 BRIR 필터 계수는 입력 신호의 매칭 BRIR이 될 수 있다. 그러나 특정 채널 또는 오브젝트의 위치를 타겟으로 하는 BRIR 필터 계수가 존재하지 않을 경우, BRIR 파라메터화부(300)는 해당 채널 또는 오브젝트와 가장 유사한 위치를 타겟으로 하는 BRIR 필터 계수를 해당 채널 또는 오브젝트에 대한 폴백 BRIR로 제공할 수 있다.
먼저, 원하는 위치(특정 채널 또는 오브젝트)와 기 설정된 범위 내의 고도 및 방위각 편차를 갖는 BRIR 필터 계수가 BRIR 필터 셋에 있을 경우 해당 BRIR 필터 계수가 선택될 수 있다. 이를테면, 원하는 위치와 동일한 고도 및 +/- 20˚ 이내의 방위각 편차를 갖는 BRIR 필터 계수가 선택될 수 있다. 만약 이에 해당하는 BRIR 필터 계수가 없을 경우, BRIR 필터 셋 중 상기 원하는 위치와 최소의 기하학적 거리를 갖는 BRIR 필터 계수가 선택될 수 있다. 즉, 해당 BRIR의 위치와 상기 원하는 위치 간의 기하학적 거리를 최소로 하는 BRIR 필터 계수가 선택될 수 있다. 여기서, BRIR의 위치는 해당 BRIR 필터 계수에 대응하는 스피커의 위치를 나타낸다. 또한, 두 위치 간의 기하학적 거리는 두 위치의 고도 편차의 절대값과 방위각 편차의 절대값을 합산한 값으로 정의될 수 있다. 한편, 일 실시예에 따르면 BRIR 필터 계수를 보간(interpolation)하는 방법으로, BRIR 필터 셋의 위치를 원하는 위치에 일치시킬 수도 있다. 이때, 보간된 BRIR 필터 계수는 BRIR 필터 셋의 일부인 것으로 간주될 수 있다. 즉, 이 경우는 원하는 위치에 항상 BRIR 필터 계수가 존재하는 것으로 구현될 수 있다.
입력 신호의 각 채널 또는 각 오브젝트에 대응하는 BRIR 필터 계수는 별도의 벡터 정보(mconv)를 통해 전달될 수 있다. 상기 벡터 정보(mconv)는 BRIR 필터 셋 중에서 입력 신호의 각 채널 또는 오브젝트에 대응하는 BRIR 필터 계수를 지시한다. 예를 들어, 입력 신호의 특정 채널의 위치 정보와 매칭되는 위치 정보를 갖는 BRIR 필터 계수가 BRIR 필터 셋에 존재할 경우, 벡터 정보(mconv)는 해당 BRIR 필터 계수를 상기 특정 채널에 대응하는 BRIR 필터 계수로 지시한다. 그러나 입력 신호의 특정 채널의 위치 정보와 매칭되는 위치 정보를 갖는 BRIR 필터 계수가 BRIR 필터 셋에 존재하지 않을 경우, 벡터 정보(mconv)는 상기 특정 채널의 위치 정보와 최소의 기하학적 거리를 갖는 폴백 BRIR 필터 계수를 상기 특정 채널에 대응하는 BRIR 필터 계수로 지시한다. 따라서, 파라메터화부(300)는 벡터 정보(mconv)를 이용하여 입력 오디오 신호의 각 채널 또는 객체에 대응하는 BRIR 필터 계수를 전체 BRIR 필터 셋에서 결정할 수 있다.
한편 본 발명의 다른 실시예에 따르면, BRIR 파라메터화부(300)는 수신된 BRIR 필터 계수 전체를 변환 및 편집하여 바이노럴 렌더링 유닛(220)으로 전달할 수 있다. 이때, 입력 신호의 각 채널 또는 각 오브젝트에 대응하는 BRIR 필터 계수(또는, 편집된 BRIR 필터 계수)의 선택 과정은 바이노럴 렌더링 유닛(220)에서 수행될 수 있다.
만약 BRIR 파라메터화부(300)가 바이노럴 렌더링 유닛(220)과 별도의 장치로 구성될 경우, BRIR 파라메터화부(300)에서 생성된 바이노럴 렌더링 파라메터는 비트스트림으로 렌더링 유닛(220)에 전송될 수 있다. 바이노럴 렌더링 유닛(220)은 수신된 비트스트림을 디코딩하여 바이노럴 렌더링 파라메터를 획득할 수 있다. 이때, 전송되는 바이노럴 렌더링 파라메터는 바이노럴 렌더링 유닛(220)의 각 서브 유닛에서의 프로세싱을 위해 필요한 각종 파라메터를 포함하며, 변환 및 편집된 BRIR 필터 계수, 또는 원본 BRIR 필터 계수 등을 포함할 수 있다.
바이노럴 렌더링 유닛(220)은 고속 콘볼루션부(230), 후기잔향 생성부(240) 및 QTDL 프로세싱부(250)를 포함하며, 멀티채널 및/또는 멀티오브젝트 신호를 포함하는 멀티 오디오 신호를 수신한다. 본 명세서에서는 멀티채널 및/또는 멀티오브젝트 신호를 포함하는 입력 신호를 멀티 오디오 신호로 지칭하기로 한다. 도 2에서는 일 실시예에 따라 바이노럴 렌더링 유닛(220)이 QMF 도메인의 멀티채널 신호를 수신하는 것으로 도시되어 있으나, 바이노럴 렌더링 유닛(220)의 입력 신호에는 시간 도메인 멀티채널 신호 및 멀티오브젝트 신호 등이 포함될 수 있다. 또한, 바이노럴 렌더링 유닛(220)이 별도의 디코더를 추가적으로 포함할 경우, 상기 입력 신호는 상기 멀티 오디오 신호의 부호화된 비트스트림이 될 수 있다. 이에 더하여, 본 명세서에서는 멀티 오디오 신호에 대한 BRIR 렌더링을 수행하는 케이스를 기준으로 본 발명을 설명하지만, 본 발명은 이에 한정되지 않는다. 즉, 본 발명에서 제공하는 특징들은 BRIR이 아닌 다른 종류의 렌더링 필터에도 적용될 수 있으며, 멀티 오디오 신호가 아닌 단일 채널 또는 단일 오브젝트의 오디오 신호에 대해서도 적용될 수 있다.
고속 콘볼루션부(230)는 입력 신호와 BRIR 필터간의 고속 콘볼루션을 수행하여 입력 신호에 대한 직접음(direct sound)과 초기 반사음(early reflection)을 처리한다. 이를 위해, 고속 콘볼루션부(230)는 절단된(truncated) BRIR을 사용하여 고속 콘볼루션을 수행할 수 있다. 절단된 BRIR은 각 서브밴드 주파수에 종속적으로 절단된 복수의 서브밴드 필터 계수를 포함하며, BRIR 파라메터화부(300)에서 생성된다. 이때, 각 절단된 서브밴드 필터 계수의 길이는 해당 서브밴드의 주파수에 종속적으로 결정된다. 고속 콘볼루션부(230)는 서브밴드에 따라 서로 다른 길이를 갖는 절단된 서브밴드 필터 계수를 이용함으로 주파수 도메인에서의 가변차수(variable order) 필터링을 수행할 수 있다. 즉, 각 주파수 밴드 별로 QMF 도메인 서브밴드 신호와 이에 대응하는 QMF 도메인의 절단된 서브밴드 필터들 간의 고속 콘볼루션이 수행될 수 있다. 각 서브밴드 신호에 대응하는 절단된 서브밴드 필터는 전술한 벡터 정보(mconv)를 통해 식별될 수 있다.
후기잔향 생성부(240)는 입력 신호에 대한 후기잔향(late reverberation) 신호를 생성한다. 후기잔향 신호는 고속 콘볼루션부(230)에서 생성된 직접음 및 초기 반사음 이후의 출력 신호를 나타낸다. 후기잔향 생성부(240)는 BRIR 파라메터화부(300)로부터 전달된 각 서브밴드 필터 계수로부터 결정된 잔향 시간 정보에 기초하여 입력 신호를 처리할 수 있다. 본 발명의 실시예에 따르면, 후기잔향 생성부(240)는 입력 오디오 신호에 대한 모노 또는 스테레오 다운믹스 신호를 생성하고, 생성된 다운믹스 신호에 대한 후기잔향 처리를 수행할 수 있다.
QTDL(QMF domain Tapped Delay Line) 프로세싱부(250)는 입력 오디오 신호 중 고 주파수 밴드의 신호를 처리한다. QTDL 프로세싱부(250)는 고 주파수 밴드의 각 서브밴드 신호에 대응하는 적어도 하나의 파라메터(QTDL 파라메터)를 BRIR 파라메터화부(300)로부터 수신하고, 수신된 파라메터를 이용하여 QMF 도메인에서 탭-딜레이 라인 필터링을 수행한다. 각 서브밴드 신호에 대응하는 파라메터는 전술한 벡터 정보(mconv)를 통해 식별할 수 있다. 본 발명의 실시예에 따르면, 바이노럴 렌더러(200)는 기 설정된 상수 또는 기 설정된 주파수 밴드를 기초로 입력 오디오 신호를 저 주파수 밴드 신호와 고 주파수 밴드 신호로 분리하고, 저 주파수 밴드 신호는 고속 콘볼루션부(230) 및 후기잔향 생성부(240)에서, 고 주파수 밴드 신호는 QTDL 프로세싱부(250)에서 각각 처리할 수 있다.
고속 콘볼루션부(230), 후기잔향 생성부(240) 및 QTDL 프로세싱부(250)는 각각 2채널의 QMF 도메인 서브밴드 신호를 출력한다. 믹서&콤바이너(260)는 고속 콘볼루션부(230)의 출력 신호, 후기잔향 생성부(240)의 출력 신호 및 QTDL 프로세싱부(250)의 출력 신호를 각 서브밴드 별로 결합하여 믹싱을 수행한다. 이때, 출력 신호의 결합은 2채널의 좌, 우 출력 신호에 대해 각각 별도로 수행된다. 바이노럴 렌더러(200)는 결합된 출력 신호를 QMF 합성하여 시간 도메인의 최종 바이노럴 출력 오디오 신호를 생성한다.
<주파수 도메인 가변차수 필터링(Variable Order Filtering in Frequency-domain, VOFF)>
도 3은 본 발명의 실시예에 따른 바이노럴 렌더링을 위한 필터 생성 방법을 나타내고 있다. QMF 도메인에서의 바이노럴 렌더링을 위해, 복수의 서브밴드 필터로 변환된 FIR 필터가 사용될 수 있다. 본 발명의 실시예에 따르면, 바이노럴 렌더러의 고속 콘볼루션부는 각 서브밴드 주파수에 따라 서로 다른 길이를 갖는 절단된 서브밴드 필터를 이용함으로 QMF 도메인에서의 가변차수 필터링을 수행할 수 있다.
도 3에서 Fk는 QMF 서브밴드 k의 직접음 및 초기반사음(direct & early)의 처리를 위해 고속 콘볼루션에 사용되는 절단된 서브밴드 필터를 나타낸다. 또한, Pk는 QMF 서브밴드 k의 후기잔향 생성에 사용되는 필터를 나타낸다. 이때, 절단된 서브밴드 필터 Fk는 원본 서브밴드 필터에서 절단된 앞부분(front)의 필터이며, 프론트 서브밴드 필터로도 지칭될 수 있다. 또한, Pk는 원본 서브밴드 필터의 절단 이후의 뒷부분(rear)의 필터이며, 리어 서브밴드 필터로 지칭될 수 있다. QMF 도메인은 총 K개의 서브밴드를 가지는데, 일 실시예에 따르면 64개의 서브밴드가 사용될 수 있다. 또한, N은 원본 서브밴드 필터의 길이(탭 수)를 나타내며, NFilter[k]는 서브밴드 k의 프론트 서브밴드 필터의 길이를 나타낸다. 이때, 길이 NFilter[k]는 다운 샘플된 QMF 도메인에서의 탭 수를 나타낸다.
BRIR 필터를 이용한 렌더링의 경우, 각 서브밴드 별 필터 차수(즉, 필터 길이)는 원본 BRIR 필터로부터 추출된 파라메터들 이를테면, 각 서브밴드 필터 별 잔향 시간(Reverberation Time, RT) 정보, EDC(Energy Decay Curve) 값, 에너지 감쇄 시간 정보 등에 기초하여 결정될 수 있다. 각 주파수 별로 공기 중에서의 감쇄, 벽 및 천장의 재질에 따른 흡음 정도가 다른 음향적 특성으로 인해, 잔향 시간은 주파수에 따라 서로 달라질 수 있다. 일반적으로는 낮은 주파수의 신호일수록 잔향 시간이 긴 특성을 갖는다. 잔향 시간이 길면 FIR 필터의 뒷부분에 많은 정보가 남아 있음을 의미하므로, 해당 필터를 길게 절단하여 사용하는 것이 잔향 정보를 제대로 전달하는데 바람직하다. 따라서, 본 발명의 각 절단된 서브밴드 필터 Fk의 길이는 해당 서브밴드 필터에서 추출된 특성 정보(이를테면, 잔향 시간 정보)에 적어도 부분적으로 기초하여 결정된다.
일 실시예에 따르면, 절단된 서브밴드 필터 Fk의 길이는 오디오 신호 처리 장치가 획득한 추가적인 정보 이를테면, 디코더의 복잡도(complexity), 복잡도 레벨(프로파일), 또는 요구되는 퀄리티 정보에 기초하여 결정될 수 있다. 복잡도는 오디오 신호 처리 장치의 하드웨어 리소스(resource)에 따라 결정되거나 유저가 직접 입력한 값에 따라 결정될 수 있다. 퀄리티는 유저의 요구에 따라 결정되거나, 비트스트림을 통해 전송된 값 또는 비트스트림에 포함된 다른 정보를 참조하여 결정될 수 있다. 또한, 퀄리티는 전송되는 오디오 신호의 품질을 추정한 값에 따라 결정될 수도 있는데, 이를테면 비트 레이트가 높을수록 더 높은 퀄리티로 간주할 수 있다. 이때, 각 절단된 서브밴드 필터의 길이는 복잡도 및 퀄리티에 따라 비례적으로 증가할 수도 있고, 각 밴드별로 서로 다른 비율로 변화할 수도 있다. 또한, 각 절단된 서브밴드 필터의 길이는 FFT 등의 고속 프로세싱에 의한 추가적인 이득을 얻기 위해 이에 대응되는 크기 단위 이를테면, 2의 거듭제곱의 배수로 결정될 수 있다. 반면, 절단된 서브밴드 필터의 결정된 길이가 실제 서브밴드 필터의 총 길이보다 길 경우, 절단된 서브밴드 필터의 길이는 실제 서브밴드 필터의 길이로 조정될 수 있다.
본 발명의 BRIR 파라메터화부는 이와 같이 결정된 각 절단된 서브밴드 필터의 길이에 대응하는 절단된 서브밴드 필터 계수들을 생성하고, 이를 고속 콘볼루션부로 전달한다. 고속 콘볼루션부는 절단된 서브밴드 필터 계수를 이용하여 멀티 오디오 신호의 각 서브밴드 신호에 대한 주파수 도메인 가변차수 필터링(VOFF 프로세싱)을 수행한다. 즉, 서로 다른 주파수 밴드인 제1 서브밴드와 제2 서브밴드에 대하여, 고속 콘볼루션부는 제1 서브밴드 신호에 제1 절단된 서브밴드 필터 계수를 적용하여 제1 서브밴드 바이노럴 신호를 생성하고, 제2 서브밴드 신호에 제2 절단된 서브밴드 필터 계수를 적용하여 제2 서브밴드 바이노럴 신호를 생성한다. 이때, 제1 절단된 서브밴드 필터 계수와 제2 절단된 서브밴드 필터 계수는 각각 독립적으로 서로 다른 길이를 가질 수 있으며, 동일한 시간 영역을 갖는 원형 필터(프로토타입 필터)로부터 획득된다. 즉, 하나의 시간 영역 필터를 복수의 QMF 서브밴드 필터로 변환하고, 각 서브밴드에 대응되는 필터들의 길이를 가변 시킨 것이므로, 각 절단된 서브밴드 필터는 하나의 원형 필터로부터 획득된 것이다.
한편 본 발명의 일 실시예에 따르면, QMF 변환된 복수의 서브밴드 필터들은 복수의 그룹으로 분류되고, 분류된 각 그룹별로 서로 다른 프로세싱에 이용될 수 있다. 예를 들어, 복수의 서브밴드는 기 설정된 주파수 밴드(QMF 밴드 i)를 기준으로 한 저 주파수의 제1 서브밴드 그룹(Zone 1)과, 고 주파수의 제2 서브밴드 그룹(Zone 2)으로 분류될 수 있다. 이때, 제1 서브밴드 그룹의 입력 서브밴드 신호들에 대해서는 VOFF 프로세싱이, 제2 서브밴드 그룹의 입력 서브밴드 신호들에 대해서는 후술하는 QTDL 프로세싱이 수행될 수 있다.
따라서, BRIR 파라메터화부는 제1 서브밴드 그룹의 각 서브밴드 별로 절단된 서브밴드 필터(프론트 서브밴드 필터) 계수를 생성하고, 이를 고속 콘볼루션부에 전달한다. 고속 콘볼루션부는 수신된 프론트 서브밴드 필터 계수를 이용하여 제1 서브밴드 그룹의 서브밴드 신호에 대한 VOFF 프로세싱을 수행한다. 실시예에 따라서, 제1 서브밴드 그룹의 서브밴드 신호에 대한 후기잔향 프로세싱이 후기잔향 생성부에 의해 추가적으로 수행될 수도 있다. 또한, BRIR 파라메터화부는 제2 서브밴드 그룹의 각 서브밴드 필터 계수로부터 적어도 하나의 파라메터를 획득하고 이를 QTDL 프로세싱부로 전달한다. QTDL 프로세싱부는 획득된 파라메터를 이용하여 후술하는 바와 같이 제2 서브밴드 그룹의 각 서브밴드 신호에 대한 탭-딜레이 라인 필터링을 수행한다. 본 발명의 실시예에 따르면, 제1 서브밴드 그룹과 제2 서브밴드 그룹을 구분하는 기 설정된 주파수(QMF 밴드 i)는 사전에 정해진 상수 값에 기초하여 결정될 수도 있고, 전송된 오디오 입력 신호의 비트스트림 특성에 따라 결정될 수도 있다. 이를테면, SBR을 사용하는 오디오 신호의 경우, 제2 서브밴드 그룹이 SBR 밴드에 대응하도록 설정될 수 있다.
다른 실시예에 따르면, 복수의 서브밴드는 도 3에 도시된 바와 같이 기 설정된 제1 주파수 밴드(QMF 밴드 i) 및 제 2 주파수 밴드(QMF 밴드 j)를 기초로 3개의 서브밴드 그룹으로 분류될 수도 있다. 즉, 복수의 서브밴드는 제1 주파수 밴드보다 작거나 같은 저 주파수 구역인 제1 서브밴드 그룹(Zone 1), 제1 주파수 밴드 보다 크고 제2 주파수 밴드보다 작거나 같은 중간 주파수 구역인 제2 서브밴드 그룹(Zone 2), 및 제2 주파수 밴드 보다 큰 고 주파수 구역인 제3 서브밴드 그룹(Zone 3)으로 분류될 수 있다. 예를 들어, 총 64개의 QMF 서브밴드(서브밴드 인덱스 0~63)가 상기 3개의 서브밴드 그룹으로 분류될 경우, 제1 서브밴드 그룹은 0부터 31의 인덱스를 갖는 총 32개의 서브밴드를, 제2 서브밴드 그룹은 32부터 47의 인덱스를 갖는 총 16개의 서브밴드를, 제3 서브밴드 그룹은 나머지 48부터 63의 인덱스를 갖는 서브밴드를 포함할 수 있다. 여기서, 서브밴드 인덱스는 서브밴드 주파수가 낮을수록 낮은 값을 갖는다.
이때, 본 발명의 실시예에 따르면 제1 서브밴드 그룹과 제2 서브밴드 그룹의 서브밴드 신호들에 대해서만 바이노럴 렌더링이 수행될 수 있다. 즉, 제1 서브밴드 그룹의 서브밴드 신호들에 대해서는 전술한 바와 같이 VOFF 프로세싱 및 후기잔향 프로세싱이 수행될 수 있으며, 제2 서브밴드 그룹의 서브밴드 신호들에 대해서는 QTDL 프로세싱이 수행될 수 있다. 또한, 제3 서브밴드 그룹의 서브밴드 신호들에 대해서는 바이노럴 렌더링이 수행되지 않을 수 있다. 한편, 바이노럴 렌더링을 수행하는 주파수 밴드의 개수 정보(kMax=48) 및 콘볼루션을 수행하는 주파수 밴드의 개수 정보(kConv=32)는 미리 결정된 값일 수 있으며, 또는 BRIR 파라메터화부에 의해 결정되어 바이노럴 렌더링 유닛으로 전달될 수 있다. 이때, 제1 주파수 밴드(QMF 밴드 i)는 인덱스 kConv-1의 서브밴드로 설정되며, 제2 주파수 밴드(QMF 밴드 j)는 인덱스 kMax-1의 서브밴드로 설정된다. 한편, 바이노럴 렌더링을 수행하는 주파수 밴드의 개수 정보(kMax) 및 콘볼루션을 수행하는 주파수 밴드의 개수 정보(kConv)의 값은 원본 BRIR 입력의 샘플링 주파수, 입력 오디오 신호의 샘플링 주파수 등에 의하여 가변할 수 있다.
한편 도 3의 실시예에 따르면, 프론트 서브밴드 필터 Fk 뿐만 아니라 리어 서브밴드 필터 Pk의 길이도 원본 서브밴드 필터에서 추출된 파라메터에 기초하여 결정될 수 있다. 즉, 각 서브밴드의 프론트 서브밴드 필터 및 리어 서브밴드 필터의 길이는 해당 서브밴드 필터에서 추출된 특성 정보에 적어도 부분적으로 기초하여 결정된다. 예를 들어, 프론트 서브밴드 필터의 길이는 해당 서브밴드 필터의 제1 잔향 시간 정보에 기초하여, 리어 서브밴드 필터의 길이는 제2 잔향 시간 정보에 기초하여 결정될 수 있다. 즉, 프론트 서브밴드 필터는 원본 서브밴드 필터에서 제1 잔향 시간 정보에 기초하여 절단된 앞부분의 필터이며, 리어 서브밴드 필터는 프론트 서브밴드 필터 이후의 구간으로서 제1 잔향 시간과 제2 잔향 시간 사이의 구간에 대응하는 뒷부분의 필터가 될 수 있다. 일 실시예에 따르면 제1 잔향 시간 정보는 RT20, 제2 잔향 시간 정보는 RT60이 될 수 있으나, 본 발명은 이에 한정하지 않는다.
제2 잔향 시간 이내에는 초기 반사음 파트에서 후기잔향 파트로 전환되는 부분이 존재한다. 즉, 결정성(deterministic characteristic)을 갖는 구간에서 추계적 특성(stochastic characteristic)을 갖는 구간으로 전환 되는 지점이 존재하며, 전체 밴드의 BRIR의 관점에서 이 지점을 믹싱 타임이라고 부른다. 믹싱 타임 이전 구간의 경우 각 위치 별로 방향성을 제공하는 정보가 주로 존재하며, 이는 채널 별로 고유하다. 반면에 후기잔향 파트의 경우 채널 별로 공통된 특징을 지니기 때문에 복수개의 채널을 한꺼번에 처리하는 것이 효율적일 수 있다. 따라서 서브밴드 별 믹싱 타임을 추정하여 믹싱 타임 이전에 대해서는 VOFF 프로세싱을 통해 고속 콘볼루션을 수행하고, 믹싱 타임 이후에 대해서는 후기잔향 프로세싱을 통해 각 채널 별 공통된 특성이 반영된 프로세싱을 수행할 수 있다.
그러나 믹싱 타임을 추정하는 것은 지각적(perceptual) 관점에서 편향(bias)에 의한 에러가 발생할 수 있다. 따라서, 정확한 믹싱 타임을 추정하여 해당 경계를 기준으로 VOFF 프로세싱 파트와 후기잔향 프로세싱 파트로 나누어 처리하는 것 보다는, VOFF 프로세싱 파트의 길이를 최대한 길게 하여 고속 콘볼루션을 수행하는 것이 퀄리티 관점에서는 우수하다. 따라서, VOFF 프로세싱 파트의 길이 즉, 프론트 서브밴드 필터의 길이는 복잡도-퀄리티 제어에 따라 믹싱 타임에 해당하는 길이보다 길거나 짧아질 수 있다.
이에 더하여, 각 서브밴드 필터의 길이를 줄이기 위해 전술한 바와 같이 절단하는 방법 이외에도, 특정 서브밴드의 주파수 응답이 단조로울(monotonic) 경우 해당 서브밴드의 필터를 낮은 차수로 감소시키는 모델링이 가능하다. 대표적인 방법으로는, 주파수 샘플링을 이용한 FIR 필터 모델링이 있으며, 최소 자승 관점에서 최소화되는 필터를 디자인할 수 있다.
<고 주파수 밴드의 QTDL 프로세싱>
도 4는 본 발명의 실시예에 따른 QTDL 프로세싱을 더욱 상세하게 나타내고 있다. 도 4의 실시예에 따르면, QTDL 프로세싱부(250)는 원-탭-딜레이 라인 필터를 이용하여 멀티채널 입력 신호 X0, X1, …, X_M-1에 대한 서브밴드 별 필터링을 수행한다. 이때, 멀티채널 입력 신호는 QMF 도메인의 서브밴드 신호로 수신된다고 가정한다. 따라서, 도 4의 실시예에서 원-탭-딜레이 라인 필터는 각 QMF 서브밴드 별로 프로세싱을 수행할 수 있다. 원-탭-딜레이 라인 필터는 각 채널 신호에 대하여 한 개의 탭만 사용하여 콘볼루션을 수행한다. 이때 사용되는 탭은 해당 서브밴드 신호에 대응하는 BRIR 서브밴드 필터 계수로부터 직접 추출된 파라메터에 기초하여 결정될 수 있다. 상기 파라메터는 원-탭-딜레이 라인 필터에 사용될 탭에 대한 딜레이(delay) 정보 및 이에 대응하는 게인(gain) 정보를 포함한다.
도 4에서 L_0, L_1, …, L_M-1은 각각 M개의 채널(입력 채널)에서 왼쪽 귀(좌 출력 채널)로의 BRIR에 대한 딜레이를 나타내고, R_0, R_1, …, R_M-1은 각각 M개의 채널(입력 채널)에서 오른쪽 귀(우 출력 채널)로의 BRIR에 대한 딜레이를 나타낸다. 이때, 딜레이 정보는 해당 BRIR 서브밴드 필터 계수 중 절대 값 크기 순, 실수 값 크기 순, 또는 허수 값 크기 순으로 최대 피크에 대한 위치 정보를 나타낸다. 또한, 도 4에서 G_L_0, G_L_1, …, G_L_M-1은 좌 채널의 각 딜레이 정보에 대응하는 게인을 나타내고, G_R_0, G_R_1, …, G_R_M-1은 우 채널의 각 딜레이 정보에 대응하는 게인을 나타낸다. 각 게인 정보는 해당 BRIR 서브밴드 필터 계수의 전체 파워, 해당 딜레이 정보에 대응하는 피크의 크기 등에 기초하여 결정될 수 있다. 이때, 게인 정보는 서브밴드 필터 계수에서의 해당 피크값 자체가 사용될 수도 있지만, 전체 서브밴드 필터 계수에 대한 에너지 보상이 수행된 이후의 해당 피크의 가중치 값이 사용될 수 있다. 상기 게인 정보는 해당 피크에 대한 실수 가중치 및 허수 가중치를 함께 이용하여 획득되며, 따라서 복소수 값을 갖는다.
한편, QTDL 프로세싱은 전술한 바와 같이 기 설정된 상수 또는 기 설정된 주파수 밴드를 기초로 분류된 고 주파수 밴드의 입력 신호에 대해서만 수행될 수 있다. 만약, 입력 오디오 신호에 SBR(Spectral Band Replication)이 적용된 경우, 상기 고 주파수 밴드는 SBR 밴드에 대응될 수 있다. 고 주파수 대역의 효율적인 부호화를 위해 사용되는 SBR(Spectral Band Replication)은 저 비트율 부호화 시 고 주파수 대역의 신호를 버림으로 인해 좁아진 밴드 폭을 다시 확장하여, 원 신호만큼의 밴드 폭을 확보하기 위한 도구이다. 이때, 고 주파수 대역은 부호화되어 전송되는 저 주파수 대역의 정보와 인코더에서 전송한 고 주파수 대역 신호의 부가 정보를 활용하여 생성된다. 그러나 SBR을 이용하여 생성된 고 주파수 성분은 부정확한 고조파(harmonic)의 생성으로 인하여 왜곡이 발생할 수 있다. 또한, SBR 밴드는 고 주파수 대역이며, 전술한 바와 같이 해당 주파수 대역의 잔향 시간은 매우 짧다. 즉, SBR 밴드의 BRIR 서브밴드 필터는 유효 정보가 적으며, 빠른 감쇄율을 갖는다. 따라서, SBR 대역에 준하는 고 주파수 대역에 대한 BRIR 렌더링은 콘볼루션을 수행하는 것 보다는 유효한 소수의 탭을 이용하여 렌더링을 수행하는 것이 음질의 퀄리티 대비 연산량 측면에서 매우 효과적일 수 있다.
이와 같이, 원-탭-딜레이 라인 필터에 의해 필터링 된 복수의 채널 신호는 각 서브밴드 별로 2채널의 좌, 우 출력 신호 Y_L, Y_R로 합산된다. 한편, QTDL 프로세싱부(250)의 각 원-탭-딜레이 라인 필터에서 사용되는 파라메터(QTDL 파라메터)는 바이노럴 렌더링의 초기화 과정에서 메모리에 저장될 수 있으며, 파라메터 추출을 위한 추가적인 연산 없이 QTDL 프로세싱이 수행될 수 있다.
<BRIR 파라메터화 상세>
도 5는 본 발명의 실시예에 따른 BRIR 파라메터화부의 각 구성을 나타낸 블록도이다. 도시된 바와 같이 BRIR 파라메터화부(300)는 VOFF 파라메터화부(320), 후기잔향 파라메터화부(360) 및 QTDL 파라메터화부(380)를 포함할 수 있다. BRIR 파라메터화부(300)는 시간 도메인의 BRIR 필터 셋을 입력으로 수신하고, BRIR 파라메터화부(300)의 각 서브 유닛은 수신된 BRIR 필터 셋을 이용하여 바이노럴 렌더링을 위한 각종 파라메터를 생성한다. 실시예에 따라 BRIR 파라메터화부(300)는 제어 파라메터를 추가적으로 입력 받을 수 있으며, 입력된 제어 파라메터에 기초하여 파라메터를 생성할 수 있다.
먼저, VOFF 파라메터화부(320)는 주파수 도메인 가변차수 필터링(VOFF)에 필요한 절단된 서브밴드 필터 계수와 그에 따른 보조 파라메터들을 생성한다. 예를 들어, VOFF 파라메터화부(320)는 절단된 서브밴드 필터 계수를 생성하기 위한 주파수 밴드별 잔향 시간 정보, 필터 차수 정보 등을 산출하며, 절단된 서브밴드 필터 계수에 대한 블록 단위의 고속 퓨리에 변환을 수행하기 위한 블록의 크기를 결정한다. VOFF 파라메터화부(320)에서 생성된 일부 파라메터는 후기잔향 파라메터화부(360) 및 QTDL 파라메터화부(380)로 전달될 수 있다. 이때, 전달되는 파라메터는 VOFF 파라메터화부(320)의 최종 출력값으로 한정되지 않으며, VOFF 파라메터화부(320)의 프로세싱에 따라 중간에 생성된 파라메터 이를테면, 시간 도메인의 절단된 BRIR 필터 계수 등을 포함할 수 있다.
후기잔향 파라메터화부(360)는 후기잔향 생성을 위해 필요한 파라메터를 생성한다. 예를 들어, 후기잔향 파라메터화부(360)는 다운믹스 서브밴드 필터 계수, IC(Interaural Coherenc) 값 등을 생성할 수 있다. 또한, QTDL 파라메터화부(380)는 QTDL 프로세싱을 위한 파라메터(QTDL 파라메터)를 생성한다. 더욱 구체적으로, QTDL 파라메터화부(380)는 VOFF 파라메터화부(320)로부터 서브밴드 필터 계수를 입력 받고, 이를 이용하여 각 서브밴드에서의 딜레이 정보 및 게인 정보를 생성한다. 이때, QTDL 파라메터화부(380)는 바이노럴 렌더링을 수행하는 주파수 밴드의 개수 정보(kMax) 및 콘볼루션을 수행하는 주파수 밴드의 개수 정보(kConv)를 제어 파라메터로 수신할 수 있으며, kMax과 kConv을 경계로 하는 서브밴드 그룹의 각 주파수 밴드에 대하여 딜레이 정보 및 게인 정보를 생성할 수 있다. 일 실시예에 따르면, QTDL 파라메터화부(380)는 VOFF 파라메터화부(320)에 포함된 구성으로 제공될 수 있다.
VOFF 파라메터화부(320), 후기잔향 파라메터화부(360) 및 QTDL 파라메터화부(380)에서 각각 생성된 파라메터들은 바이노럴 렌더링 유닛(미도시)으로 전송된다. 일 실시예에 따르면, 후기잔향 파라메터화부(360)와 QTDL 파라메터화부(380)는 바이노럴 렌더링 유닛에서 후기잔향 프로세싱, QTDL 프로세싱이 각각 수행되는지 여부에 따라 파라메터 생성 여부를 결정할 수 있다. 만약 바이노럴 렌더링 유닛에서 후기잔향 프로세싱 및 QTDL 프로세싱 중 적어도 하나가 수행되지 않을 경우, 이에 대응하는 후기잔향 파라메터화부(360), QTDL 파라메터화부(380)는 파라메터를 생성하지 않거나, 생성된 파라메터를 바이노럴 렌더링 유닛에 전송하지 않을 수 있다.
도 6은 본 발명의 VOFF 파라메터화부의 각 구성을 나타낸 블록도이다. 도시된 바와 같이 VOFF 파라메터화부(320)는 전파 시간 산출부(322), QMF 변환부(324) 및 VOFF 파라메터 생성부(330)를 포함할 수 있다. VOFF 파라메터화부(320)는 수신된 시간 도메인 BRIR 필터 계수를 이용하여 VOFF 프로세싱을 위한 절단된 서브밴드 필터 계수를 생성하는 과정을 수행한다.
먼저, 전파 시간 산출부(322)는 시간 도메인 BRIR 필터 계수의 전파 시간 정보를 산출하고, 산출된 전파 시간 정보에 기초하여 시간 도메인 BRIR 필터 계수를 절단한다. 여기서, 전파 시간 정보는 BRIR 필터 계수의 초기 샘플로부터 직접음까지의 시간을 나타낸다. 전파 시간 산출부(322)는 시간 도메인 BRIR 필터 계수에서 상기 산출된 전파 시간에 해당하는 부분을 절단하여 이를 제거할 수 있다.
BRIR 필터 계수의 전파 시간을 추정하기 위해 다양한 방법이 사용될 수 있다. 일 실시예에 따르면 BRIR 필터 계수의 최대 피크 값에 비례하는 임계 값보다 큰 에너지 값이 나타나는 최초의 지점 정보에 기초하여 전파 시간을 추정할 수 있다. 이때, 멀티 채널 입력의 각 채널에서 청자까지의 거리는 모두 다르므로 채널 별로 전파 시간이 각각 다를 수 있다. 그러나 바이노럴 렌더링의 수행시 전파 시간이 절단된 BRIR 필터 계수를 이용하여 콘볼루션을 수행하고, 최종 바이노럴 렌더링 된 신호를 딜레이로 보상하기 위해서는 모든 채널의 전파 시간 절단 길이가 동일해야 한다. 또한, 각 채널에 동일한 전파 시간 정보를 적용하여 절단을 수행하면, 개별 채널에서의 오차 발생 확률을 줄일 수 있다.
본 발명의 실시예에 따른 전파 시간 정보를 산출하기 위해, 먼저 프레임(frame) 단위 인덱스 k에 대한 프레임 에너지 E(k)가 먼저 정의될 수 있다. 입력 채널 인덱스 m, 좌/우 출력 채널 인덱스 i, 시간 도메인의 타임 슬롯 인덱스 v에 대한 시간 도메인 BRIR 필터 계수를
Figure 112021016838182-pat00004
라고 할 때, k번째 프레임에서의 프레임 에너지 E(k)는 다음 수식으로 산출될 수 있다.
Figure 112021016838182-pat00005
여기서, NBRIR은 BRIR 필터 셋의 전체 필터 개수, Nhop은 기 설정된 홉 사이즈, Lfrm은 프레임 사이즈를 나타낸다. 즉, 프레임 에너지 E(k)는 동일 시간 영역에 대한 각 채널별 프레임 에너지의 평균값으로 산출될 수 있다.
상기 정의된 프레임 에너지 E(k)를 이용하여, 전파 시간(pt)은 다음 수식으로 산출될 수 있다.
Figure 112021016838182-pat00006
즉, 전파 시간 산출부(322)는 기 설정된 홉 단위로 시프팅(shifting) 하며 프레임 에너지를 측정하고, 프레임 에너지가 기 설정된 임계값 보다 큰 최초의 프레임을 식별한다. 이때, 전파 시간은 식별된 최초의 프레임의 중간 지점으로 결정될 수 있다. 한편, 수학식 5에서는 임계값이 최대 프레임 에너지 보다 60dB 낮은 값으로 설정되는 것으로 예시되어 있지만, 본 발명은 이에 한정하지 않으며 임계값은 최대 프레임 에너지에 비례하는 값 또는 최대 프레임 에너지와 기 설정된 차이를 갖는 값으로 설정될 수 있다.
한편, 홉 사이즈(Nhop) 및 프레임 사이즈(Lfrm)는 입력 BRIR 필터 계수가 HRIR(Head Related Impulse Response) 필터 계수인지 여부에 기초하여 가변될 수 있다. 이때, 입력 BRIR 필터 계수가 HRIR 필터 계수인지 여부를 나타내는 정보(flag_HRIR)는 외부로부터 수신될 수도 있으며, 시간 도메인 BRIR 필터 계수의 길이를 이용하여 추정될 수도 있다. 일반적으로 초기 반사음 파트와 후기잔향 파트의 경계는 80ms라고 알려져 있다. 따라서, 시간 도메인 BRIR 필터 계수의 길이가 80ms 이하일 경우 해당 BRIR 필터 계수는 HRIR 필터 계수로 판별되고(flag_HRIR=1), 80ms를 초과할 경우 해당 BRIR 필터 계수는 HRIR 필터 계수가 아닌 것으로 판별될 수 있다(flag_HRIR=0). 만약 입력 BRIR 필터 계수가 HRIR 필터 계수인 것으로 판별될 경우(flag_HRIR=1)의 홉 사이즈(Nhop) 및 프레임 사이즈(Lfrm)는 해당 BRIR 필터 계수가 HRIR 필터 계수가 아닌 것으로 판별될 경우(flag_HRIR=0)에 비하여 작은 값으로 설정될 수 있다. 이를테면, flag_HRIR=0일 경우 홉 사이즈(Nhop) 및 프레임 사이즈(Lfrm)는 각각 샘플 단위로 8 및 32로 설정되고, flag_HRIR=1일 경우 홉 사이즈(Nhop) 및 프레임 사이즈(Lfrm)는 각각 샘플 단위로 1 및 8로 설정될 수 있다.
본 발명의 실시예에 따르면, 전파 시간 산출부(322)는 산출된 전파 시간 정보에 기초하여 시간 도메인 BRIR 필터 계수를 절단하고, 절단된 BRIR 필터 계수를 QMF 변환부(324)로 전달할 수 있다. 여기서, 절단된 BRIR 필터 계수는 원본 BRIR 필터 계수에서 상기 전파 시간에 해당하는 부분을 절단 및 제거한 후 잔존하는 필터 계수를 가리킨다. 전파 시간 산출부(322)는 입력 채널 별, 좌/우 출력 채널 별로 시간 도메인 BRIR 필터 계수를 절단하여 QMF 변환부(324)로 전달한다.
QMF 변환부(324)는 입력된 BRIR 필터 계수의 시간 도메인-QMF 도메인 간의 변환을 수행한다. 즉, QMF 변환부(324)는 시간 도메인의 절단된 BRIR 필터 계수를 수신하고, 이를 복수의 주파수 밴드에 각각 대응하는 복수의 서브밴드 필터 계수들로 변환한다. 변환된 서브밴드 필터 계수들은 VOFF 파라메터 생성부(330)로 전달되며, VOFF 파라메터 생성부(330)는 수신된 서브밴드 필터 계수를 이용하여 절단된 서브밴드 필터 계수를 생성한다. 만약 VOFF 파라메터화부(320)의 입력으로 시간 도메인 BRIR 필터 계수가 아닌 QMF 도메인 BRIR 필터 계수가 수신될 경우, 입력된 QMF 도메인 BRIR 필터 계수는 QMF 변환부(324)를 바이패스(bypass)할 수 있다. 또한 다른 실시예에 따르면, 입력 필터 계수가 QMF 도메인 BRIR 필터 계수일 경우, QMF 변환부(324)는 VOFF 파라메터화부(320)에서 생략될 수도 있다.
도 7은 도 6의 VOFF 파라메터 생성부의 세부 구성을 나타낸 블록도이다. 도시된 바와 같이, VOFF 파라메터 생성부(330)는 잔향 시간 산출부(332), 필터 차수 결정부(334) 및 VOFF 필터 계수 생성부(336)를 포함할 수 있다. VOFF 파라메터 생성부(330)는 도 6의 QMF 변환부(324)로부터 QMF 도메인의 서브밴드 필터 계수를 수신할 수 있다. 또한, 바이노럴 렌더링을 수행하는 주파수 밴드의 개수 정보(kMax), 콘볼루션을 수행하는 주파수 밴드의 개수 정보(kConv), 기 설정된 최대 FFT 크기 정보 등의 제어 파라메터가 VOFF 파라메터 생성부(330)로 입력될 수 있다.
먼저, 잔향 시간 산출부(332)는 수신된 서브밴드 필터 계수를 이용하여 잔향 시간 정보를 획득한다. 획득된 잔향 시간 정보는 필터 차수 결정부(334)로 전달되며, 해당 서브밴드의 필터 차수를 결정하는데 사용될 수 있다. 한편, 잔향 시간 정보는 측정 환경에 따라 바이어스(bias)나 편차가 존재할 수 있으므로, 다른 채널과의 상호 관계를 이용하여 통일된 값을 이용할 수 있다. 일 실시예에 따르면, 잔향 시간 산출부(332)는 각 서브밴드의 평균 잔향 시간 정보를 생성하고, 이를 필터 차수 결정부(334)로 전달한다. 입력 채널 인덱스 m, 좌/우 출력 채널 인덱스 i, 서브밴드 인덱스 k에 대한 서브밴드 필터 계수의 잔향 시간 정보를 RT(k, m, i)라고 할 때, 서브밴드 k의 평균 잔향 시간 정보 RTk는 다음 수식을 통해 산출될 수 있다.
Figure 112021016838182-pat00007
여기서, NBRIR은 BRIR 필터 셋의 전체 필터 개수이다.
즉, 잔향 시간 산출부(332)는 멀티채널 입력에 대응하는 각 서브밴드 필터 계수로부터 잔향 시간 정보 RT(k, m, i)를 추출하고, 동일 서브밴드에 대하여 추출된 채널별 잔향 시간 정보 RT(k, m, i)들의 평균값(즉, 평균 잔향 시간 정보 RTk)을 획득한다. 획득된 평균 잔향 시간 정보 RTk는 필터 차수 결정부(334)로 전달되며, 필터 차수 결정부(334)는 이를 이용하여 해당 서브밴드에 적용되는 하나의 필터 차수를 결정할 수 있다. 이때, 획득되는 평균 잔향 시간 정보는 RT20을 포함할 수 있으며, 실시예에 따라 다른 잔향 시간 정보 이를테면 RT30, RT60 등이 획득될 수도 있다. 한편, 본 발명의 다른 실시예에 따르면 잔향 시간 산출부(332)는 동일 서브밴드에 대하여 추출된 채널별 잔향 시간 정보의 최대값 및/또는 최소값을 해당 서브밴드의 대표 잔향 시간 정보로서 필터 차수 결정부(334)에 전달할 수 있다.
다음으로, 필터 차수 결정부(334)는 획득된 잔향 시간 정보에 기초하여 해당 서브밴드의 필터 차수를 결정한다. 전술한 바와 같이, 필터 차수 결정부(334)가 획득하는 잔향 시간 정보는 해당 서브밴드의 평균 잔향 시간 정보일 수 있으며, 실시예에 따라 채널별 잔향 시간 정보의 최대값 및/또는 최소값 등의 대표 잔향 시간 정보가 될 수도 있다. 필터 차수는 해당 서브밴드의 바이노럴 렌더링을 위한 절단된 서브밴드 필터 계수의 길이를 결정하는데 사용된다.
서브밴드 k에서의 평균 잔향 시간 정보를 RTk라고 했을 때, 해당 서브밴드의 필터 차수 정보 NFilter[k]는 다음 수식을 통해 획득될 수 있다.
Figure 112021016838182-pat00008
즉, 필터 차수 정보는 해당 서브밴드의 평균 잔향 시간 정보의 로그 스케일의 정수 단위의 근사값(approximated integer value)을 지수로 하는 2의 거듭 제곱 값으로 결정될 수 있다. 다시 말해서, 필터 차수 정보는 해당 서브밴드의 평균 잔향 시간 정보를 로그 스케일로 반올림한 값, 올림한 값, 또는 내림한 값을 지수로 하는 2의 거듭 제곱 값으로 결정될 수 있다. 만약, 해당 서브밴드 필터 계수의 원본 길이 즉, 마지막 타임 슬롯(nend)까지의 길이가 수학식 5에서 결정된 값보다 작을 경우, 필터 차수 정보는 서브밴드 필터 계수의 원본 길이 값(nend)으로 대체될 수 있다. 즉, 필터 차수 정보는 수학식 5에 의해 결정된 기준 절단 길이와, 서브밴드 필터 계수의 원본 길이 중 작은 값으로 결정될 수 있다.
한편, 주파수에 따른 에너지의 감쇄는 로그 스케일에서 선형적으로 근사 가능하다. 따라서, 커브 피팅(curve fitting) 방법을 이용하면 각 서브밴드의 최적화 된 필터 차수 정보를 결정할 수 있다. 본 발명의 일 실시예에 따르면, 필터 차수 결정부(334)는 다항식 커브 피팅(polynomial curve fitting) 방법을 이용하여 필터 차수 정보를 획득할 수 있다. 이를 위해, 필터 차수 결정부(334)는 평균 잔향 시간 정보의 커브 피팅을 위한 적어도 하나의 계수를 획득할 수 있다. 예를 들어, 필터 차수 결정부(334)는 각 서브밴드 별 평균 잔향 시간 정보를 로그 스케일의 일차 방정식으로 커브 피팅하고, 해당 일차 방정식의 기울기 값 b와 절편 값 a를 획득할 수 있다.
서브밴드 k에서의 커브 피팅된 필터 차수 정보 N'Filter[k]는 상기 획득된 계수를 이용하여 다음 수식을 통해 획득될 수 있다.
Figure 112021016838182-pat00009
즉, 커브 피팅된 필터 차수 정보는 해당 서브밴드의 평균 잔향 시간 정보의 다항식 커브 피팅된 값의 정수 단위의 근사값을 지수로 하는 2의 거듭 제곱 값으로 결정될 수 있다. 다시 말해서, 커브 피팅된 필터 차수 정보는 해당 서브밴드의 평균 잔향 시간 정보의 다항식 커브 피팅된 값을 반올림한 값, 올림한 값, 또는 내림한 값을 지수로 하는 2의 거듭 제곱 값으로 결정될 수 있다. 만약, 해당 서브밴드 필터 계수의 원본 길이 즉, 마지막 타임 슬롯(nend)까지의 길이가 수학식 8에서 결정된 값보다 작을 경우, 필터 차수 정보는 서브밴드 필터 계수의 원본 길이 값(nend)으로 대체될 수 있다. 즉, 필터 차수 정보는 수학식 6에 의해 결정된 기준 절단 길이와, 서브밴드 필터 계수의 원본 길이 중 작은 값으로 결정될 수 있다.
본 발명의 실시예에 따르면, 원형 BRIR 필터 계수 즉, 시간 도메인의 BRIR 필터 계수가 HRIR 필터 계수인지 여부(flag_HRIR)에 기초하여, 상기 수학식 5 또는 수학식 6 중 어느 하나를 이용하여 필터 차수 정보가 획득될 수 있다. 전술한 바와 같이, flag_HRIR의 값은 원형 BRIR 필터 계수의 길이가 기 설정된 값을 초과하는지 여부에 기초하여 결정될 수 있다. 만약, BRIR 필터 계수의 길이가 기 설정된 값을 초과할 경우(즉, flag_HRIR=0), 필터 차수 정보는 상기 수학식 6에 따라 커브 피팅된 값으로 결정될 수 있다. 그러나 BRIR 필터 계수의 길이가 기 설정된 값을 초과하지 않을 경우(즉, flag_HRIR=1), 필터 차수 정보는 상기 수학식 5에 따라 커브 피팅되지 않은 값으로 결정될 수 있다. 즉, 필터 차수 정보는 커브 피팅의 수행 없이 해당 서브밴드의 평균 잔향 시간 정보에 기초하여 결정될 수 있다. 이는 HRIR의 경우 룸(room)의 영향을 받지 않으므로 에너지 감쇄에 대한 경향이 뚜렷하지 않기 때문이다.
한편 본 발명의 실시예에 따르면, 0번째 서브밴드(서브밴드 인덱스 0)에 대한 필터 차수 정보의 획득시에는 커브 피팅을 수행하지 않은 평균 잔향 시간 정보를 이용할 수 있다. 룸 모드(room mode)의 영향 등으로 0번째 서브밴드의 잔향 시간은 다른 서브밴드의 잔향 시간과 다른 경향을 가질 수 있기 때문이다. 따라서, 본 발명의 실시예에 따르면 수학식 6에 따른 커브 피팅된 필터 차수 정보는 인덱스 0이 아닌 서브밴드에서 flag_HRIR=0일 때에만 이용될 수 있다.
전술한 실시예에 따라 결정된 각 서브밴드의 필터 차수 정보들은 VOFF 필터 계수 생성부(336)로 전달된다. VOFF 필터 계수 생성부(336)는 획득된 필터 차수 정보에 기초하여 절단된 서브밴드 필터 계수를 생성한다. 본 발명의 일 실시예에 따르면, 절단된 서브밴드 필터 계수는 블록 단위(block-wise)의 고속 콘볼루션을 위해 기 설정된 블록 단위로 고속 퓨리에 변환(Fast Fourier Transforrm, FFT)이 수행된 적어도 하나의 VOFF 계수로 구성될 수 있다. VOFF 필터 계수 생성부(336)는 도 9를 참조로 후술하는 바와 같이 블록 단위(block-wise)의 고속 콘볼루션을 위한 상기 VOFF 계수를 생성할 수 있다.
도 8은 본 발명의 QTDL 파라메터화부의 각 구성을 나타낸 블록도이다. 도시된 바와 같이 QTDL 파라메터화부(380)는 피크 탐색부(382) 및 게인 생성부(384)를 포함할 수 있다. QTDL 파라메터화부(380)는 VOFF 파라메터화부(320)로부터 QMF 도메인의 서브밴드 필터 계수를 수신할 수 있다. 또한, QTDL 파라메터화부(380)는 바이노럴 렌더링을 수행하는 주파수 밴드의 개수 정보(kMax) 및 콘볼루션을 수행하는 주파수 밴드의 개수 정보(kConv)를 제어 파라메터로 수신할 수 있으며, kMax과 kConv을 경계로 하는 서브밴드 그룹(제2 서브밴드 그룹)의 각 주파수 밴드에 대하여 딜레이 정보 및 게인 정보를 생성할 수 있다.
더욱 구체적인 실시예에 따르면, 입력 채널 인덱스 m, 좌/우 출력 채널 인덱스 i, 서브밴드 인덱스 k, QMF 도메인의 타임 슬롯 인덱스 n에 대한 BRIR 서브밴드 필터 계수를
Figure 112021016838182-pat00010
라고 할 때, 딜레이 정보
Figure 112021016838182-pat00011
및 게인 정보
Figure 112021016838182-pat00012
는 다음과 같이 획득될 수 있다.
Figure 112021016838182-pat00013
Figure 112021016838182-pat00014
여기서, sign{x}는 x의 부호 값을 나타내며, nend는 해당 서브밴드 필터 계수의 마지막 타임 슬롯을 나타낸다.
즉, 수학식 7을 참조하면 딜레이 정보는 해당 BRIR 서브밴드 필터 계수의 크기가 최대가 되는 타임 슬롯의 정보를 나타낼 수 있으며, 이는 해당 BRIR 서브밴드 필터 계수의 최대 피크의 위치 정보를 나타낸다. 또한, 수학식 8을 참조하면 게인 정보는 해당 BRIR 서브밴드 필터 계수의 전체 파워 값에, 상기 최대 피크 위치에서의 BRIR 서브밴드 필터 계수의 부호를 곱한 값으로 결정될 수 있다.
피크 탐색부(382)는 수학식 7에 기초하여, 제2 서브밴드 그룹의 각 서브밴드 필터 계수에서의 최대 피크의 위치 즉, 딜레이 정보를 획득한다. 또한, 게인 생성부(384)는 수학식 8에 기초하여 각 서브밴드 필터 계수에 대한 게인 정보를 획득한다. 수학식 7 및 수학식 8은 딜레이 정보 및 게인 정보를 획득하는 수식의 일 예를 나타내었으나, 각 정보를 산출하기 위한 수식의 구체적인 형태는 다양하게 변형 가능할 수 있다.
<블록 단위의 고속 콘볼루션>
한편 본 발명의 실시예에 따르면, 효율 및 성능 관점에서의 최적의 바이노럴 렌더링을 위해 기 설정된 블록 단위의 고속 콘볼루션을 수행할 수 있다. FFT에 기반한 고속 콘볼루션은 FFT 크기가 클수록 연산량이 줄어들지만, 전체 프로세싱 딜레이가 증가하고 메모리 사용량이 늘어나는 특징을 갖는다. 만일 1초의 길이를 갖는 BRIR을 해당 길이의 2배에 해당하는 길이를 갖는 FFT 크기로 고속 콘볼루션 할 경우, 연산량 관점에서는 효율적이지만 1초에 해당하는 딜레이가 발생하게 되고 이에 대응하는 버퍼와 프로세싱 메모리를 필요로 하게 된다. 긴 딜레이 시간을 갖는 오디오 신호 처리 방법은 실시간 데이터 처리를 위한 어플리케이션 등에 적합하지 않다. 오디오 신호 처리 장치에서 디코딩을 수행할 수 있는 최소의 단위는 프레임이므로, 바이노럴 렌더링 역시 프레임 단위에 대응되는 크기로 블록 단위의 고속 콘볼루션을 수행하는 것이 바람직하다.
도 9는 블록 단위의 고속 콘볼루션을 위한 VOFF 계수 생성 방법의 일 실시예를 나타내고 있다. 전술한 실시예와 마찬가지로, 도 9의 실시예에서 원형 FIR 필터는 K개의 서브밴드 필터로 변환되며, Fk와 Pk는 각각 서브밴드 k의 절단된 서브밴드 필터(프론트 서브밴드 필터) 및 리어 서브밴드 필터를 나타낸다. 각 서브밴드(Band 0 ~ Band K-1)는 주파수 도메인에서의 서브밴드 즉, QMF 서브밴드를 나타낼 수 있다. QMF 도메인은 총 64개의 서브밴드를 사용할 수 있으나, 본 발명은 이에 한정하지 않는다. 또한, N은 원본 서브밴드 필터의 길이(탭 수)를 나타내며, NFilter[k]는 서브밴드 k의 프론트 서브밴드 필터의 길이를 나타낸다.
전술한 실시예와 같이, QMF 도메인의 복수의 서브밴드는 기 설정된 주파수 밴드(QMF 밴드 i)를 기준으로 한 저 주파수의 제1 서브밴드 그룹(Zone 1)과, 고 주파수의 제2 서브밴드 그룹(Zone 2)으로 분류될 수 있다. 또는, 복수의 서브밴드는 기 설정된 제1 주파수 밴드(QMF 밴드 i) 및 제 2 주파수 밴드(QMF 밴드 j)를 기초로 3개의 서브밴드 그룹 즉, 제1 서브밴드 그룹(Zone 1), 제2 서브밴드 그룹(Zone 2), 및 제3 서브밴드 그룹(Zone 3)으로 분류될 수도 있다. 이때, 제1 서브밴드 그룹의 입력 서브밴드 신호들에 대해서는 블록 단위의 고속 콘볼루션을 이용한 VOFF 프로세싱이, 제2 서브밴드 그룹의 입력 서브밴드 신호들에 대해서는 QTDL 프로세싱이 수행될 수 있다. 그리고 제3 서브밴드 그룹의 서브밴드 신호들에 대해서는 렌더링을 수행하지 않을 수 있다. 실시예에 따라, 제1 서브밴드 그룹의 입력 서브밴드 신호들에 대해서는 후기잔향 프로세싱이 추가적으로 수행될 수 있다.
도 9를 참조하면, 본 발명의 VOFF 필터 계수 생성부(336)는 절단된 서브밴드 필터 계수를 해당 서브밴드에서의 기 설정된 블록 단위로 고속 퓨리에 변환을 수행하여 VOFF 계수를 생성할 수 있다. 이때, 각 서브밴드 k에서의 기 설정된 블록의 길이 NFFT[k]는 기 설정된 최대 FFT 크기(2L)에 기초하여 결정된다. 더욱 구체적으로, 서브밴드 k에서의 기 설정된 블록의 길이 NFFT[k]는 다음과 같은 수식으로 나타낼 수 있다.
Figure 112021016838182-pat00015
여기서, 2L은 기 설정된 최대 FFT 크기이고, NFilter[k]는 서브밴드 k의 필터 차수 정보임.
즉, 기 설정된 블록의 길이 NFFT[k]는 절단된 서브밴드 필터 계수의 기준 필터 길이의 2배(
Figure 112021016838182-pat00016
)와, 기 설정된 최대 FFT 크기(2L) 중 작은 값으로 결정될 수 있다. 여기서, 기준 필터 길이는 해당 서브밴드 k에서의 필터 차수 NFilter[k] (즉, 절단된 서브밴드 필터 계수의 길이)의 2의 거듭 제곱 형태의 참값 또는 근사값 중 어느 하나를 나타낸다. 즉, 서브밴드 k의 필터 차수가 2의 거듭 제곱 형태일 경우 해당 필터 차수 NFilter[k]가 서브밴드 k에서의 기준 필터 길이로 사용되며, 2의 거듭 제곱 형태가 아닐 경우(이를테면, nend) 해당 필터 차수 NFilter[k]의 2의 거듭 제곱 형태의 반올림 값, 올림 값 또는 내림 값이 기준 필터 길이로 사용된다. 한편 본 발명의 실시예에 따르면, 기 설정된 블록의 길이 NFFT[k] 및 기준 필터 길이
Figure 112021016838182-pat00017
는 모두 2의 거듭 제곱 값이 될 수 있다.
만약 도 9의 F0, F1 등과 같이, 기준 필터 길이의 2배 값이 최대 FFT 크기(2L) 보다 크거나 같을 경우(또는, 클 경우), 해당 서브밴드의 기 설정된 블록의 길이 NFFT[0], NFFT[1]는 각각 최대 FFT 크기(2L)로 결정된다. 그러나 도 9의 F5와 같이, 기준 필터 길이의 2배 값이 최대 FFT 크기(2L) 보다 작을 경우(또는, 작거나 같을 경우), 해당 서브밴드의 기 설정된 블록의 길이 NFFT[5]는 기준 필터 길이의 2배 값인
Figure 112021016838182-pat00018
로 결정된다. 후술하는 바와 같이, 절단된 서브밴드 필터 계수는 제로-패딩을 통해 2배의 길이로 확장된 후 고속 퓨리에 변환이 수행되므로, 고속 퓨리에 변환을 위한 블록의 길이 NFFT[k]는 기준 필터 길이의 2배 값과 기 설정된 최대 FFT 크기(2L) 간의 비교 결과에 기초하여 결정될 수 있다.
이와 같이, 각 서브밴드에서의 블록의 길이 NFFT[k]가 결정되면, VOFF 필터 계수 생성부(336)는 결정된 블록 단위로 절단된 서브밴드 필터 계수에 대한 고속 퓨리에 변환을 수행한다. 더욱 구체적으로, VOFF 필터 계수 생성부(336)는 절단된 서브밴드 필터 계수를 기 설정된 블록의 절반(NFFT[k]/2) 단위로 분할한다. 도 9에 도시된 VOFF 프로세싱 파트의 점선 경계의 영역은 기 설정된 블록의 절반 단위로 분할되는 서브밴드 필터 계수를 나타낸다. 다음으로, BRIR 파라메터화부는 각각의 분할된 필터 계수를 이용하여 기 설정된 블록 단위 NFFT[k]의 임시 필터 계수를 생성한다. 이때, 임시 필터 계수의 전반부는 분할된 필터 계수로 구성되며, 후반부는 제로-패딩된 값으로 구성된다. 이를 통해, 기 설정된 블록의 절반 길이(NFFT[k]/2)의 필터 계수를 이용하여 기 설정된 블록 길이 NFFT[k]의 임시 필터 계수가 생성된다. 다음으로, BRIR 파라메터화부는 상기 생성된 임시 필터 계수를 고속 퓨리에 변환하여 VOFF 계수를 생성한다. 이와 같이 생성된 VOFF 계수는 입력 오디오 신호에 대한 기 설정된 블록 단위의 고속 콘볼루션에 사용될 수 있다.
이처럼 본 발명의 실시예에 따르면, VOFF 필터 계수 생성부(336)는 각 서브밴드 별로 독립적으로 결정된 길이의 블록 단위로, 절단된 서브밴드 필터 계수에 대한 고속 퓨리에 변환을 수행하여 VOFF 계수를 생성할 수 있다. 이에 따라, 각 서브밴드 별로 서로 다른 개수의 블록을 이용한 고속 콘볼루션이 수행될 수 있다. 이때, 서브밴드 k에서의 블록의 개수 Nblk[k]는 다음과 같은 수식을 만족할 수 있다.
Figure 112021016838182-pat00019
여기서, Nblk(k)는 자연수.
즉, 서브밴드 k에서의 블록의 개수 Nblk[k]는 해당 서브밴드에서의 기준 필터 길이의 2배 값을 기 설정된 블록의 길이 NFFT[k]로 나눈 값으로 결정될 수 있다.
한편, 본 발명의 일 실시예에 따르면 전술한 기 설정된 블록 단위의 VOFF 계수 생성 과정은 제1 서브밴드 그룹의 프론트 서브밴드 필터(Fk)들에 대해서 한정적으로 수행될 수 있다. 한편, 실시예에 따라 제1 서브밴드 그룹의 서브밴드 신호에 대한 후기잔향 프로세싱이 후기잔향 생성부에 의해 수행될 수 있음은 전술한 바와 같다. 본 발명의 실시예에 따르면, 입력 오디오 신호에 대한 후기잔향 프로세싱은 원형 BRIR 필터 계수의 길이가 기 설정된 값을 초과하는지 여부에 기초하여 수행될 수 있다. 전술한 바와 같이, 원형 BRIR 필터 계수의 길이가 기 설정된 값을 초과하는지 여부는 이를 지시하는 플래그(즉, flag_HRIR)를 통해 나타날 수 있다. 만약 원형 BRIR 필터 계수의 길이가 기 설정된 값을 초과할 경우(flag_HRIR=0), 입력 오디오 신호에 대한 후기잔향 프로세싱이 수행될 수 있다. 그러나 원형 BRIR 필터 계수의 길이가 기 설정된 값을 초과하지 않을 경우(flag_HRIR=1), 입력 오디오 신호에 대한 후기잔향 프로세싱이 수행되지 않을 수 있다.
만약 후기잔향 프로세싱이 수행되지 않으면, 제1 서브밴드 그룹의 각 서브밴드 신호에는 VOFF 프로세싱만이 수행될 수 있다. 그러나 VOFF 프로세싱을 위해 지정된 각 서브밴드의 필터 차수(즉, 절단 지점)는 해당 서브밴드 필터 계수의 전체 길이보다 작을 수 있고, 이로 인해 에너지 부조화(energy mismatch)가 발생할 수 있다. 따라서, 이를 방지하기 위해 본 발명의 실시예에 따르면, flag_HRIR 정보에 기초하여 절단된 서브밴드 필터 계수에 대한 에너지 보상이 수행될 수 있다. 즉, 원형 BRIR 필터 계수의 길이가 기 설정된 값을 초과하지 않을 경우(flag_HRIR=1), 절단된 서브밴드 필터 계수 또는 이를 구성하는 각 VOFF 계수에는 에너지 보상이 수행된 필터 계수가 사용될 수 있다. 이때, 에너지 보상은 필터 차수 정보(NFilter[k])에 기초한 절단 지점 이전의 필터 계수에 대하여, 절단 지점까지의 필터 파워를 나누고 해당 서브밴드 필터 계수의 전체 필터 파워를 곱함으로 수행될 수 있다. 전체 필터 파워는 해당 서브밴드 필터 계수의 초기 샘플로부터 마지막 샘플(nend)까지의 필터 계수에 대한 파워의 합으로 정의될 수 있다.
도 10은 본 발명의 고속 콘볼루션부에서의 오디오 신호 처리 과정의 일 실시예를 나타내고 있다. 도 10의 실시예에 따르면, 본 발명의 고속 콘볼루션부는 블록 단위의 고속 콘볼루션을 수행하여 입력 오디오 신호를 필터링 할 수 있다.
먼저, 고속 콘볼루션부는 각 서브밴드 신호의 필터링을 위한 절단된 서브밴드 필터 계수를 구성하는 적어도 하나의 VOFF 계수를 획득한다. 이를 위해, 고속 콘볼루션부는 BRIR 파라메터화부로부터 VOFF 계수를 수신할 수 있다. 본 발명의 다른 실시예에 따르면, 고속 콘볼루션부(또는, 이를 포함하는 바이노럴 렌더링 유닛)는 BRIR 파라메터화부로부터 절단된 서브밴드 필터 계수를 수신하고, 절단된 서브밴드 필터 계수를 기 설정된 블록 단위로 고속 퓨리에 변환하여 VOFF 계수를 생성할 수 있다. 전술한 실시예에 따라, 각 서브밴드 k에서의 기 설정된 블록의 길이 NFFT[k]가 결정되며, 해당 서브밴드 k에서의 블록의 개수 Nblk[k]에 대응하는 개수의 VOFF 계수(VOFF coef.1 ~ VOFF coef.Nblk)가 획득된다.
한편, 고속 콘볼루션부는 입력 오디오 신호의 각 서브밴드 신호를 해당 서브밴드에서의 기 설정된 서브 프레임 단위에 기초하여 고속 퓨리에 변환을 수행한다. 입력 오디오 신호와 절단된 서브밴드 필터 계수 간의 블록 단위의 고속 콘볼루션을 수행하기 위해, 상기 서브 프레임의 길이는 해당 서브밴드에서의 기 설정된 블록의 길이 NFFT[k]에 기초하여 결정된다. 본 발명의 실시예에 따르면, 분할된 각 서브 프레임은 제로-패딩을 통해 2배의 길이로 확장된 후 고속 퓨리에 변환이 수행되므로, 상기 서브 프레임의 길이는 기 설정된 블록의 절반 길이 즉, NFFT[k]/2로 결정될 수 있다. 본 발명의 일 실시예에 따르면, 상기 서브 프레임의 길이는 2의 거듭 제곱 값을 갖도록 설정될 수 있다.
이와 같이 서브 프레임의 길이가 결정되면, 고속 콘볼루션부는 각 서브밴드 신호를 해당 서브밴드의 기 설정된 서브 프레임 단위 NFFT[k]/2로 분할한다. 만약, 입력 오디오 신호의 시간 도메인 샘플 단위의 프레임 길이를 L이라 할 때, QMF 도메인 타임 슬롯 단위의 해당 프레임의 길이는 Ln이며, 해당 프레임은 아래 수식과 같이 NFrm[k] 개의 서브 프레임으로 분할될 수 있다.
Figure 112021016838182-pat00020
즉, 서브밴드 k에서의 고속 콘볼루션을 위한 서브 프레임의 개수 NFrm[k]는 프레임의 전체 길이 Ln을 서브 프레임의 길이 NFFT[k]/2로 나눈 값이되, 최소 1 이상의 값을 갖도록 결정될 수 있다. 다시 말해서, 서브 프레임의 개수 NFrm[k]은 프레임의 전체 길이 Ln을 NFFT[k]/2로 나눈 값과 1 중 큰 값으로 결정된다. 여기서, QMF 도메인 타임 슬롯 단위의 프레임 길이 Ln은 시간 도메인 샘플 단위의 프레임 길이 L에 비례하는 값으로서, L이 4096일 때 Ln은 64(즉, Ln=L/64)로 설정될 수 있다.
고속 콘볼루션부는 분할된 서브 프레임(Frame 1 ~ Frame NFrm)을 이용하여 각각 서브 프레임 길이의 2배의 길이(즉, 길이 NFFT[k])를 갖는 임시 서브 프레임을 생성한다. 이때, 임시 서브 프레임의 전반부는 분할된 서브 프레임으로 구성되며, 후반부는 제로-패딩된 값으로 구성된다. 고속 콘볼루션부는 생성된 임시 서브 프레임을 고속 퓨리에 변환하여 FFT 서브 프레임(FFT subframe)을 생성한다.
다음으로, 고속 콘볼루션부는 고속 퓨리에 변환된 서브 프레임(즉, FFT 서브 프레임)과 VOFF 계수를 곱하여 필터링된 서브 프레임(Filtered subframe)을 생성한다. 고속 콘볼루션부의 복소곱셈기(CMPY)는 FFT 서브 프레임과 VOFF 계수 간의 복소수 곱셈을 수행하여 필터링 된 서브프레임을 생성할 수 있다. 다음으로, 고속 콘볼루션부는 필터링 된 각 서브 프레임(Filtered subframe)을 역 고속 퓨리에 변환하여, 고속 콘볼루션 된 서브 프레임(Fast conv. subframe)을 생성한다. 고속 콘볼루션부는 역 고속 퓨리에 변환된 적어도 하나의 서브 프레임(Fast conv. subframe)을 오버랩-애드하여, 필터링 된 서브밴드 신호를 생성한다. 상기 필터링 된 서브밴드 신호는 해당 서브밴드에서의 출력 오디오 신호를 구성할 수 있다. 일 실시예에 따르면, 역 고속 퓨리에 변환 이전 단계 또는 이후 단계에서 동일 서브밴드의 각 채널 별 서브 프레임의 좌/우 출력 채널에 대한 서브 프레임으로 합산될 수 있다.
또한, 역 고속 퓨리에 변환의 연산량을 최소화 하기 위해, 해당 서브밴드의 첫 번째 VOFF 계수 이후의 VOFF 계수 즉, VOFF coef. m (m은 2 이상 Nblk 이하)과 복소수 곱셈을 수행하여 획득된 필터링 된 서브 프레임(Filtered subframe)은 메모리(버퍼)에 저장되어, 현재 서브 프레임 이후의 서브 프레임이 처리될 때 합산된 후 역 고속 퓨리에 변환이 수행될 수 있다. 예를 들면, 제1 FFT 서브 프레임(FFT subframe 1)과 제2 VOFF 계수(VOFF coef. 2) 간의 복소수 곱셈을 통해 획득된 필터링 된 서브 프레임은 버퍼에 저장된 후, 제2 서브프레임에 대응하는 시점에서 제2 FFT 서브 프레임(FFT subframe 2)과 제1 VOFF 계수(VOFF coef. 1) 간의 복소수 곱셈을 통해 획득된 필터링 된 서브 프레임과 합산되고, 합산된 서브 프레임에 대하여 역 고속 퓨리에 변환이 수행될 수 있다. 마찬가지로, 제1 FFT 서브 프레임(FFT subframe 1)과 제3 VOFF 계수(VOFF coef. 3) 간의 복소수 곱셈을 통해 획득된 필터링 된 서브 프레임, 제2 FFT 서브 프레임(FFT subframe 2)과 제2 VOFF 계수(VOFF coef. 2) 간의 복소수 곱셈을 통해 획득된 필터링 된 서브 프레임은 각각 버퍼에 저장될 수 있다. 버퍼에 저장된 상기 필터링 된 서브 프레임은 제3 서브프레임에 대응하는 시점에서 제3 FFT 서브 프레임(FFT subframe 3)과 제1 VOFF 계수(VOFF coef. 1) 간의 복소수 곱셈을 통해 획득된 필터링 된 서브 프레임과 합산되고, 합산된 서브 프레임에 대하여 역 고속 퓨리에 변환이 수행될 수 있다.
본 발명의 또 다른 실시예에 따르면, 서브 프레임의 길이가 기 설정된 블록의 절반 길이(NFFT[k]/2)보다 작은 값을 가질 수 있다. 이때, 해당 서브 프레임은 제로-패딩을 통하여 기 설정된 블록의 길이(NFFT[k])로 확장 된 후 고속 푸리에 변환이 수행될 수 있다. 또한, 고속 콘볼루션부의 복소곱셈기(CMPY)를 이용하여 생성된 필터링 된 서브프레임(Filtered subframe)을 오버랩-애드하는 경우 오버랩 간격은 서브 프레임의 길이가 아닌 기 설정된 블록의 절반 길이(NFFT[k]/2)를 기준으로 수행될 수 있다.
<바이노럴 렌더링 신택스>
도 11 내지 도 15는 본 발명에 따른 오디오 신호 처리 방법을 구현하기 위한 신택스(syntax)의 일 실시예를 나타내고 있다. 도 11 내지 도 15의 각 함수는 본 발명의 바이노럴 렌더러에 의해 수행될 수 있으며, 바이노럴 렌더링 유닛과 파라메터화부가 별도의 장치로 구비될 경우 상기 바이노럴 렌더링 유닛에 의해 수행될 수 있다. 따라서, 이하의 설명에서 바이노럴 렌더러는 실시예에 따라 바이노럴 렌더링 유닛을 의미할 수 있다. 도 11 내지 도 15의 실시예에서는 비트스트림에서 수신되는 각 변수와 해당 변수에 할당된 비트수(No. of bits), 기호(Mnemonic)의 타입이 병기되어 있다. 기호의 타입에서 'uimsbf'는 unsigned integer most significant bit first를 나타내며, 'bslbf'는 bit string left bit first를 나타낸다. 도 11 내지 도 15의 신택스는 본 발명을 구현하기 위한 일 실시예를 나타낸 것이며, 각 변수의 구체적인 할당 값들은 변경 및 치환 가능하다.
도 11은 본 발명의 실시예에 따른 바이노럴 렌더링 함수(S1100)의 신택스를 나타낸다. 본 발명의 실시예에 따른 바이노럴 렌더링은 도 11의 바이노럴 렌더링 함수(S1100)를 호출함으로 수행될 수 있다. 먼저, 바이노럴 렌더링 함수는 S1101~S1104 단계를 통해, BRIR 필터 계수의 파일 정보를 획득한다. 또한, 필터 표현(representation)의 총 개수를 나타내는 정보 'bsNumBinauralDataRepresentation'를 수신한다(S1110). 필터 표현은 하나의 바이노럴 렌더링 신택스 안에 포함되어 있는 독립적인 바이노럴 데이터의 단위를 의미한다. 동일한 공간에서 취득되었지만 다른 샘플링 주파수를 갖는 원형 BRIR인 경우 서로 다른 필터 표현으로 할당될 수 있다. 또한, 동일한 원형 BRIR을 서로 다른 바이노럴 파라메터화부로 처리하는 경우에도 서로 다른 필터 표현으로 할당될 수 있다.
다음으로, 상기 수신된 'bsNumBinauralDataRepresentation' 값에 기초하여 S1111 단계 내지 S1350 단계가 반복된다. 먼저, 필터 표현(즉, BRIR)의 샘플링 주파수 값을 결정하는 인덱스 'brirSamplingFrequencyIndex'가 수신된다(S1111). 이때, 미리 정의된 표를 참조하여 상기 인덱스에 대응하는 값이 BRIR 샘플링 주파수 값으로 획득될 수 있다. 만약, 상기 인덱스가 기 설정된 특정 값인 경우(즉, brirSamplingFrequencyIndex == 0x1f), BRIR 샘플링 주파수 값 'brirSamplingFrequency'은 비트스트림으로부터 직접 수신될 수 있다.
다음으로, 바이노럴 렌더링 함수는 BRIR 필터 셋의 타입 정보인 'bsBinauralDataFormatID'를 수신한다(S1113). 본 발명의 실시예에 따르면, BRIR 필터 셋은 FIR(Finite Impulse Response) 필터, 주파수 도메인의 파라메터화된(FD parameterized) 필터 또는 시간 도메인의 파라메터화된(TD parameterized) 필터 등의 타입을 가질 수 있다. 이때, 바이노럴 렌더러가 획득할 BRIR 필터 셋의 타입은 상기 타입 정보에 기초하여 결정된다(S1115). 만약 상기 타입 정보가 FIR 필터를 가리킬 경우 (즉, bsBinauralDataFormatID == 0일 경우) BinauralFIRData() 함수(S1200)가 실행되며, 이를 통해 바이노럴 렌더러는 변환 및 편집이 수행되지 않은 원형 FIR 필터 계수를 수신할 수 있다. 만약 상기 타입 정보가 FD parameterized 필터를 가리킬 경우 (즉, bsBinauralDataFormatID == 1일 경우) FDBinauralRendererParam() 함수(S1300)가 실행되며, 이를 통해 바이노럴 렌더러는 전술한 실시예 같이 주파수 도메인의 VOFF 계수 및 QTDL 파라메터 등을 획득할 수 있다. 한편, 상기 타입 정보가 TD parameterized 필터를 가리킬 경우 (즉, bsBinauralDataFormatID == 2일 경우) TDBinauralRendererParam() 함수(S1350)가 실행되며, 이를 통해 바이노럴 렌더러는 시간 도메인의 파라메터화된 BRIR 필터 계수를 수신한다.
도 12는 원형 BRIR 필터 계수를 수신하기 위한 BinauralFirData() 함수(S1200)의 신택스를 나타내고 있다. BinauralFirData()는 변환 및 편집이 수행되지 않은 원형 FIR 필터 계수를 수신하기 위한 FIR 필터 획득 함수이다. 먼저, FIR 필터 획득 함수는 원형 FIR 필터의 필터 계수 개수 정보('bsNumCoef')를 수신한다(S1201). 즉, 'bsNumCoef'는 원형 FIR 필터의 필터 계수 길이를 나타낼 수 있다.
다음으로, FIR 필터 획득 함수는 각 FIR 필터 인덱스 pos, 해당 FIR 필터에서의 샘플 인덱스 i에 대한 FIR 필터 계수를 수신한다(S1202, S1203). 여기서, FIR 필터 인덱스 pos는 전송되는 바이노럴 필터 쌍의 개수 'nBrirPairs'에서 해당 FIR 필터 쌍(즉, 좌/우 출력 쌍)의 인덱스를 나타낸다. 전송되는 바이노럴 필터 쌍의 개수('nBrirPairs')는 바이노럴 필터 쌍에 의해 필터링 될 가상 스피커의 개수, 채널 수 또는 HOA 구성(component)의 개수를 가리킬 수 있다. 또한, 인덱스 i는 'bsNumCoefs'의 길이를 갖는 각 FIR 필터 계수에서의 샘플 인덱스를 나타낸다. FIR 필터 획득 함수는 상기 인덱스 pos 및 i 별로 좌 출력 채널의 FIR 필터 계수(S1202) 및 우 출력 채널의 FIR 필터 계수(S1203)를 각각 수신한다.
다음으로, FIR 필터 획득 함수는 FIR 필터의 최대 유효 주파수를 나타내는 정보 'bsAllCutFreq'를 수신한다(S1210). 이때, 상기 'bsAllCutFreq'는 각 채널이 서로 다른 최대 유효 주파수를 갖는 경우 0의 값을 가지며, 모든 채널이 동일한 최대 유효 주파수를 갖는 경우는 0이 아닌 값을 갖는다. 만약 각 채널이 서로 다른 최대 유효 주파수를 갖는 경우(즉, bsAllCutFreq == 0), FIR 필터 획득 함수는 각 FIR 필터 인덱스 pos 별로 좌 출력 채널 FIR 필터의 최대 유효 주파수 정보('bsCutFreqLeft[pos]') 및 우 출력 채널의 최대 유효 주파수 정보('bsCutFreqRight[pos]')를 수신한다(S1211, S1212). 그러나 모든 채널이 동일한 최대 유효 주파수를 갖는 경우, 상기 좌 출력 채널 FIR 필터의 최대 유효 주파수 정보('bsCutFreqLeft[pos]') 및 우 출력 채널의 최대 유효 주파수 정보('bsCutFreqRight[pos]')는 각각 'bsAllCutFreq' 값으로 할당된다(S1213, S1214).
도 13은 본 발명의 실시예에 따른 FdBinauralRendererParam() 함수(S1300)의 신택스를 나타내고 있다. FdBinauralRendererParam() 함수(S1300)는 주파수 도메인 파라메터 획득 함수로서, 주파수 도메인의 바이노럴 필터링을 위한 각종 파라메터들을 수신한다.
먼저, 바이노럴 렌더러에 입력되는 IR(Impulse Reponse) 필터 계수가 HRIR 필터 계수인지 혹은 BRIR 필터 계수인지를 나타내는 정보('flagHrir')가 수신된다(S1302). 일 실시예에 따르면, 'flagHrir'은 파라메터화부에 수신된 원형 BRIR 필터 계수의 길이가 기 설정된 값을 초과하는지 여부에 기초하여 결정될 수 있다. 또한, 원형 필터 계수의 초기 샘플로부터 직접음까지의 시간을 나타내는 전파 시간 정보('dInit')가 수신된다(S1303). 파라메터화부에서 전달되는 필터 계수는 원형 필터 계수에서 상기 전파 시간에 해당하는 부분이 제거된 후 잔존하는 부분의 필터 계수일 수 있다. 이에 더하여, 주파수 도메인 파라메터 획득 함수는 바이노럴 렌더링을 수행하는 주파수 밴드의 개수 정보('kMax'), 콘볼루션을 수행하는 주파수 밴드의 개수 정보('kConv') 및 후기잔향 분석이 수행되는 주파수 밴드의 개수 정보('kAna')를 수신한다(S1304, S1305, S1306).
다음으로, 주파수 도메인 파라메터 획득 함수는 'VoffBrirParam()' 함수를 실행하여 VOFF 파라메터를 수신한다(S1400). 만약, 입력되는 IR 필터 계수가 BRIR 필터 계수인 경우(즉, flagHrir == 0일 경우), 'SfrBrirParam()' 함수가 추가적으로 실행되어 후기잔향 프로세싱을 위한 파라메터가 수신될 수 있다(S1450). 또한, 주파수 도메인 파라메터 획득 함수는 'QtdlBrirParam()' 함수를 실행하여 QTDL 파라메터를 수신한다(S1500).
도 14는 본 발명의 실시예에 따른 VoffBrirParam() 함수(S1400)의 신택스를 나타내고 있다. VoffBrirParam() 함수(S1400)는 VOFF 파라메터 획득 함수로서, VOFF 프로세싱을 위한 VOFF 계수 및 이와 관련된 파라메터들을 수신한다.
먼저, VOFF 파라메터 획득 함수는 각 서브밴드별 절단된 서브밴드 필터 계수 및 이를 구성하는 VOFF 계수의 수치적 특성을 나타내는 파라메터들을 수신하기 위해, 해당 파라메터들에 할당된 비트 수 정보를 수신한다. 즉, 필터 차수의 비트 수 정보('nBitNFilter'), 블록 길이의 비트 수 정보('nBitNFft'), 블록 개수의 비트 수 정보('nBitNBlk')가 수신된다(S1401, S1402, S1403).
다음으로, VOFF 파라메터 획득 함수는 바이노럴 렌더링을 수행하는 각 주파수 밴드 k에 대하여, S1410 단계 내지 S1423 단계를 반복하여 수행한다. 이때, 바이노럴 렌더링을 수행하는 주파수 밴드의 개수 정보인 kMax에 대하여, 서브밴드 인덱스 k는 0부터 kMax-1까지의 값을 갖는다.
구체적으로, VOFF 파라메터 획득 함수는 각 서브밴드 별로 해당 서브밴드 k의 필터 차수 정보('nFilter[k]'), VOFF 계수의 블록 길이(즉, FFT 크기) 정보('nFft[k]') 및 상기 블록의 개수 정보('nBlk[k]')를 수신한다(S1410, S1411, S1413). 본 발명의 실시예에 따르면, 각 서브밴드 별로 설정된 블록 단위의 VOFF 계수가 수신될 수 있으며, 기 설정된 블록의 길이 즉, VOFF 계수의 길이는 2의 거듭 제곱 값으로 결정될 수 있다. 따라서, 비트스트림으로 수신되는 블록 길이 정보('nFft[k]')는 VOFF 계수 길이의 지수 값을 나타낼 수 있으며, 바이노럴 렌더러는 2의 'nFft[k]' 제곱을 통해 VOFF 계수의 길이 'fftLength'를 산출할 수 있다(S1412).
다음으로, VOFF 파라메터 획득 함수는 각 서브밴드 인덱스 k, 블록 인덱스 b, BRIR 인덱스 nr, 및 해당 블록에서의 주파수 도메인 타임 슬롯 인덱스 v에 대한 VOFF 계수를 수신한다(S1420~S1423). 여기서, BRIR 인덱스 nr은 전송되는 바이노럴 필터 쌍의 개수 'nBrirPairs'에서 해당 BRIR 필터 쌍의 인덱스를 나타낸다. 전송되는 바이노럴 필터 쌍의 개수('nBrirPairs')는 바이노럴 필터 쌍에 의해 필터링 될 가상 스피커의 개수, 채널 수 또는 HOA 구성(component)의 개수를 가리킬 수 있다. 또한, 인덱스 b는 해당 서브밴드 k의 전체 블록 개수 'nBlk[k]'에서의 해당 VOFF 계수 블록의 인덱스를 나타낸다. 인덱스 v는 'fftLength'의 길이를 갖는 각 블록에서의 타임 슬롯 인덱스를 나타낸다. VOFF 파라메터 획득 함수는 상기 인덱스 k, b, nr 및 v 별로 실수값의 좌 출력 채널 VOFF 계수(S1420), 허수값의 좌 출력 채널 VOFF 계수(S1421), 실수값의 우 출력 채널 VOFF 계수(S1422) 및 허수값의 우 출력 채널 VOFF 계수(S1423)를 각각 수신한다. 본 발명의 바이노럴 렌더러는 이와 같이 각 서브밴드(k)에 대하여 해당 서브밴드에서 결정된 fftLength 길이의 블록(b) 단위로 각 BRIR 필터 쌍(nr)에 대응하는 VOFF 계수를 수신하고, 수신된 VOFF 계수를 이용하여 VOFF 프로세싱을 수행한다.
본 발명의 실시예에 따르면, VOFF 계수는 바이노럴 렌더링을 수행하는 전체 주파수 밴드(서브밴드 인덱스 0 ~ kMax-1)에 대하여 수신된다. 즉, VOFF 파라메터 획득 함수는 제1 서브밴드 그룹뿐만 아니라 제2 서브밴드 그룹의 모든 서브밴드에 대한 VOFF 계수를 수신한다. 만약, 제2 서브밴드 그룹의 각 서브밴드 신호에 대하여 QTDL 프로세싱이 수행된다면, 바이노럴 렌더러는 제1 서브밴드 그룹의 서브밴드에 대해서만 VOFF 프로세싱을 수행할 수 있다. 그러나 제2 서브밴드 그룹의 각 서브밴드 신호에 대하여 QTDL 프로세싱이 수행되지 않는다면, 바이노럴 렌더러는 제1 서브밴드 그룹 및 제2 서브밴드 그룹의 각 서브밴드에 대하여 VOFF 프로세싱을 수행할 수 있다.
도 15는 본 발명의 실시예에 따른 QtdlParam() 함수(S1500)의 신택스를 나타내고 있다. QtdlParam() 함수(S1500)는 QTDL 파라메터 획득 함수로서, QTDL 프로세싱을 위한 적어도 하나의 파라메터를 수신한다. 도 15의 실시예에서, 도 14의 실시예와 동일한 부분은 중복적인 설명을 생략한다.
본 발명의 실시예에 따르면, QTDL 프로세싱은 제2 서브밴드 그룹 즉, 서브밴드 인덱스 kConv와 kMax-1 사이의 각 주파수 밴드에 대하여 수행될 수 있다. 따라서, QTDL 파라메터 획득 함수는 서브밴드 인덱스 k에 대하여, S1501 단계 내지 S1507 단계를 kMax-kConv회 반복하여 수행함으로 제2 서브밴드 그룹의 각 서브밴드에 대한 QTDL 파라메터를 수신한다.
먼저, QTDL 파라메터 획득 함수는 각 서브밴드의 딜레이 정보에 할당된 비트 수 정보('nBitQtdlLag[k]')를 수신한다(S1501). 다음으로, QTDL 파라메터 획득 함수는 각 서브밴드 인덱스 k, BRIR 인덱스 nr에 대한 QTDL 파라메터 즉, 게인 정보와 딜레이 정보를 수신한다(S1502~S1507). 더욱 구체적으로, QTDL 파라메터 획득 함수는 인덱스 k 및 nr 별로 좌 출력 채널 게인의 실수 값 정보(S1502), 좌 출력 채널 게인의 허수 값 정보(S1503), 우 출력 채널 게인의 실수 값 정보(S1504), 우 출력 채널 게인의 허수 값 정보(S1505), 좌 출력 채널 딜레이 정보(S1506) 및 우 출력 채널 딜레이 정보(S1507)를 각각 수신한다. 본 발명의 실시예에 따르면, 바이노럴 렌더러는 제2 서브밴드 그룹의 각 서브밴드(k) 및 각 BRIR 필터 쌍(nr)에 대한 좌/우 출력 채널의 실수 값의 게인 정보, 허수 값의 게인 정보 및 딜레이 정보를 수신하고, 이를 이용하여 제2 서브밴드 그룹의 각 서브밴드 신호에 대한 원-탭-딜레이 라인 필터링을 수행한다.
<VOFF 프로세싱 변형(variant) 실시예>
한편 본 발명의 다른 실시예에 따르면, 바이노럴 렌더러는 채널 종속적인 VOFF 프로세싱을 수행할 수 있다. 이를 위해, 각 서브밴드 필터 계수의 필터 차수는 채널마다 서로 다르게 설정될 수 있다. 예를 들어, 입력 신호가 더 많은 에너지를 포함하는 프론트 채널(front channels)에 대한 필터 차수는 상대적으로 적은 에너지를 포함하는 리어 채널(rear channels)에 대한 필터 차수 보다 높게 설정될 수 있다. 이를 통해, 프론트 채널에 대해서는 바이노럴 렌더링 이후 반영되는 해상도를 높이고, 리어 채널에 대해서는 낮은 연산량으로 렌더링을 수행할 수 있다. 여기서 프론트 채널과 리어 채널의 구분은 멀티 채널 입력 신호의 각 채널에 할당된 채널 명칭으로 한정되지 않으며, 각 채널은 기 설정된 공간적 기준에 기초하여 프론트 채널과 리어 채널로 분류될 수 있다. 또한 본 발명의 추가적인 실시예에 따르면, 멀티 채널의 각 채널은 기 설정된 공간적 기준에 기초하여 3개 이상의 채널 그룹으로 분류될 수 있고, 각 채널 그룹 별로 서로 다른 필터 차수가 사용될 수 있다. 또는, 각 채널에 대응하는 서브밴드 필터 계수의 필터 차수는 가상 재생 공간상의 해당 채널의 위치 정보에 기초하여 서로 다른 가중치가 적용된 값이 사용될 수 있다.
이와 같이 채널 별로 서로 다른 필터 차수를 적용하기 위하여, 믹싱 타임이 기본 필터 차수(NFilter[k])보다 현저히 긴 채널에 대해서는 보정된 필터 차수가 사용될 수 있다. 도 16을 참조하면, 서브밴드 k의 기본 필터 차수 NFilter[k]는 해당 서브밴드의 평균 믹싱 타임으로 결정될 수 있는데, 상기 평균 믹싱 타임은 수학식 4에서 상술한 바와 같이, 해당 서브밴드의 각 채널별 잔향 시간 정보의 평균값(즉, 평균 잔향 시간 정보)에 기초하여 산출될 수 있다. 그러나 개별 믹싱 타임이 평균 믹싱 타임보다 기 설정된 값 이상 큰 6번 채널(ch 6) 및 9번 채널(ch 9)에 대해서는 보정된 필터 차수가 적용될 수 있다. 입력 채널 인덱스 m, 좌/우 출력 채널 인덱스 i, 서브밴드 인덱스 k에 대한 서브밴드 필터 계수의 잔향 시간 정보를 RT(k, m, i), 해당 서브밴드의 기본 필터 차수를 NFilter[k]라고 할 때, 채널별로 보정된 필터 차수
Figure 112021016838182-pat00021
는 다음 수식과 같이 획득될 수 있다.
Figure 112021016838182-pat00022
즉, 보정된 필터 차수는 해당 서브밴드의 기본 필터 차수의 정수배로 결정될 수 있으며, 기본 필터 차수에 대한 보정된 필터 차수의 배율은 상기 기본 필터 차수에 대한 해당 채널의 잔향 시간 정보의 비를 반올림한 값으로 결정될 수 있다. 한편 본 발명의 실시예에 따르면 해당 서브밴드의 기본 필터 차수는 수학식 5에 따른 NFilter[k] 값으로 결정될 수 있으나, 다른 실시예에 따르면 수학식 6에 따른 커브 피팅된 N'Filter[k]가 기본 필터 차수로 사용될 수도 있다. 또한, 상기 보정된 필터 차수의 배율은 기본 필터 차수에 대한 해당 채널의 잔향 시간 정보의 비를 올림한 값, 내림한 값 등의 다른 근사값으로 결정될 수도 있다. 이와 같이 각 채널 별로 보정된 필터 차수가 적용되면, 이러한 필터 차수에 변화에 대응하여 후기잔향 프로세싱을 위한 파라메터 또한 보정될 수 있다.
본 발명의 또 다른 실시예에 따르면, 바이노럴 렌더러는 스케일러블(scalable) VOFF 프로세싱을 수행할 수 있다. 전술한 실시예에서는 각 서브밴드별 필터 차수의 결정에 잔향 시간 정보 RT20이 사용되는 것으로 기술하였다. 그러나 더욱 긴 잔향 시간 정보가 사용될수록 즉, BRIR 대비 VOFF 파트 에너지 비(VOFF part to BRIR Energy Ratio, VBER)가 높을수록 바이노럴 렌더링의 퀄리티 및 복잡도가 높아지며, 그 역도 마찬가지이다. 본 발명의 실시예에 따르면, 바이노럴 렌더러는 VOFF 프로세싱에 사용되는 절단된 서브밴드 필터 계수의 VBER을 선택할 수 있다. 즉, 파라메터화부는 최대 VBER에 기초한 절단된 서브밴드 필터 계수를 제공하고, 이를 획득한 바이노럴 렌더러는 해당 디바이스의 연산량, 배터리 잔량 등의 디바이스 상태 정보 또는 유저 입력에 기초하여 VOFF 프로세싱에 사용할 절단된 서브밴드 필터 계수의 VBER을 조정할 수 있다. 예를 들어, 파라메터화부는 VBER 40의 절단된 서브밴드 필터 계수(즉, RT40을 이용하여 결정된 필터 차수에 의해 절단된 서브밴드 필터 계수)를 제공할 수 있으며, 바이노럴 렌더러는 해당 디바이스의 상태 정보에 따라 VBER 40(최대 VBER) 이하의 VBER을 선택할 수 있다. 만약, ??대 VBER 보다 작은 VBER(이를테면, VBER 10)이 선택된 경우, 바이노럴 렌더러는 선택된 VBER(즉, VBER 10)에 기초하여 각 서브밴드 필터 계수를 재 절단하고, 재 절단된 서브밴드 필터 계수를 이용하여 전술한 VOFF 프로세싱을 수행할 수 있다. 다만, 본 발명은 VBER 40을 최대 VBER로 한정하지 아니하고 이보다 크거나 작은 값이 사용 될 수 있다.
도 17 및 도 18은 전술한 변형 실시예를 구현하기 위한 FdBinauralRendererParam2() 함수(S1700) 및 VoffBrirParam2() 함수(S1800)의 신택스를 나타내고 있다. 도 17 및 도 18의 FdBinauralRendererParam2() 함수(S1700) 및 VoffBrirParam2() 함수(S1800)는 각각 본 발명의 변형 실시예에 따른 주파수 도메인 파라메터 획득 함수 및 VOFF 파라메터 획득 함수이다. 도 17 및 도 18의 실시예에서, 도 13 및 도 14의 실시예와 동일한 부분은 중복적인 설명을 생략한다.
먼저 도 17을 참조하면, 주파수 도메인 파라메터 획득 함수는 출력 채널 수(nOut)를 2로 설정하며(S1701), S1702 단계 내지 S1706 단계를 통해 주파수 도메인의 바이노럴 필터링을 위한 각종 파라메터들을 수신한다. 상기 S1702 내지 S1706 단계는 각각 도 13의 S1302 내지 S1306 단계와 동일하게 수행될 수 있다. 다음으로, 주파수 도메인 파라메터 획득 함수는 VBER 개수 정보('nVBER')와 채널 종속적인 VOFF 프로세싱의 수행 여부를 나타내는 플래그('flagChannelDependent')를 수신한다(S1707, S1708). 여기서, 'nVBER'은 바이노럴 렌더러의 VOFF 프로세싱에 사용 가능한 VBER의 개수 정보를 나타내며, 더욱 구체적으로는 절단된 서브밴드 필터 계수의 필터 차수를 결정하는데 사용 가능한 잔향 시간 정보의 개수를 나타낼 수 있다. 예를 들어, 바이노럴 렌더러에서 RT10, RT20 및 RT40 중 어느 하나에 대한 절단된 서브밴드 필터 계수가 사용 가능할 경우, 'nVBER'은 3으로 결정될 수 있다.
다음으로, 주파수 도메인 파라메터 획득 함수는 VBER 인덱스 n에 대하여, S1710 단계 내지 S1714 단계를 반복하여 수행한다. 이때, VBER 인덱스 n은 0부터 nVBER-1 사이의 값을 갖지며, 높은 인덱스일수록 높은 RT값을 지시할 수 있다. 더욱 구체적으로, 각 VBER 인덱스 n에 대하여 VOFF 프로세싱 복잡도 정보('VoffComplexity[n]')가 수신되며(S1710), 'flagChannelDepedent'의 값에 기초하여 필터 차수 정보가 수신된다. 만약 채널 종속적인 VOFF 프로세싱이 수행될 경우(즉, flagChannelDependent == 1일 경우), 주파수 도메인 파라메터 획득 함수는 각 VBER 인덱스 n 및 BRIR 인덱스 nr에 대한 필터 차수에 할당된 비트 수 정보('nBitNFilter[nr][n]')를 수신하고(S1711), 각 VBER 인덱스 n, BRIR 인덱스 nr 및 서브밴드 인덱스 k의 조합에 대한 필터 차수 정보('nFilter[nr][n][k]')를 수신한다(S1712). 그러나 채널 종속적인 VOFF 프로세싱이 수행되지 않을 경우(즉, flagChannelDependent == 0일 경우), 주파수 도메인 파라메터 획득 함수는 각 VBER 인덱스 n에 대한 필터 차수에 할당된 비트 수 정보('nBitNFilter[n])를 수신하고(S1713), 각 VBER 인덱스 n 및 서브밴드 인덱스 k의 조합에 대한 필터 차수 정보('nFilter[n][k]')를 수신한다(S1714). 한편, 도 17의 신택스에는 도시되지 않았지만, 주파수 도메인 파라메터 획득 함수는 각 BRIR 인덱스 nr 및 서브밴드 인덱스 k의 조합에 대한 필터 차수 정보('nFilter[nr][k]')를 수신할 수도 있다.
이와 같이, 도 17의 실시예에 따르면 필터 차수 정보는 각 서브밴드 인덱스뿐만 아니라 VBER 인덱스 및 BRIR 인덱스(즉, 채널 인덱스) 중 적어도 하나의 추가적인 조합에 대하여 결정될 수 있다. 다음으로, 주파수 도메인 파라메터 획득 함수는 'VoffBrirParam2()' 함수를 실행하여 VOFF 파라메터를 수신한다(S1800). 전술한 바와 같이, 입력되는 IR 필터 계수가 BRIR 필터 계수인 경우(즉, flagHrir == 0일 경우), 'SfrBrirParam()' 함수가 추가적으로 실행되어 후기잔향 프로세싱을 위한 파라메터가 수신될 수 있다(S1450). 또한, 주파수 도메인 파라메터 획득 함수는 'QtdlBrirParam()' 함수를 실행하여 QTDL 파라메터를 수신한다(S1500).
도 18은 본 발명의 실시예에 따른 VoffBrirParam2() 함수(S1800)의 신택스를 나타내고 있다. 도 18을 참조하면, VOFF 파라메터 획득 함수는 각 서브밴드 인덱스 k, BRIR 인덱스 nr 및 주파수 도메인 타임 슬롯 인덱스 v에 대한 절단된 서브밴드 필터 계수를 수신한다(S1820~S1823). 여기서, 인덱스 v는 0에서 nFilter[nVBER-1][k]-1 사이의 값을 갖는다. 따라서, VOFF 파라메터 획득 함수는 최대 VBER 인덱스(즉, 최대 RT값)에 대응하는 각 서브밴드별 필터 차수 nFilter[nVBER-1][k] 길이의 절단된 서브밴드 필터 계수를 수신한다. 이때, 상기 인덱스 k, nr 및 v 별로 실수값의 좌 출력 채널 절단된 서브밴드 필터 계수(S1820), 허수값의 좌 출력 채널 절단된 서브밴드 필터 계수(S1821), 실수값의 우 출력 채널 절단된 서브밴드 필터 계수(S1822) 및 허수값의 우 출력 채널 절단된 서브밴드 필터 계수(S1823)가 수신된다. 이와 같이 최대 VBER에 대응하는 절단된 서브밴드 필터 계수가 수신되면, 바이노럴 렌더러는 실제 렌더링을 위해 선택된 VBER에 따른 필터 차수(nFilter[n][k])로 해당 서브밴드 필터 계수를 재 편집하여 VOFF 프로세싱에 사용할 수 있다.
이와 같이, 도 18의 실시예에 따르면 바이노럴 렌더러는 각 서브밴드(k) 및 BRIR 인덱스(nr)에 대하여 해당 서브밴드에서 결정된 필터 차수(nFilter[nVBER-1][k]) 길이의 절단된 서브밴드 필터 계수를 수신하고, 상기 절단된 서브밴드 필터 계수를 이용하여 VOFF 프로세싱을 수행한다. 한편, 도 18에는 도시되지 않았지만 전술한 실시예와 같이 채널 종속적인 VOFF 프로세싱이 수행될 경우, 인덱스 v는 0에서 nFilter[nr][nVBER-1][k]-1, 또는 0에서 nFilter[nr][k]-1 사이의 값을 가질 수 있다. 즉, 각 BRIR 인덱스(채널 인덱스) nr이 함께 고려된 필터 차수에 기초하여 절단된 서브밴드 필터 계수가 수신되어 VOFF 프로세싱에 사용될 수 있다.
이상에서는 본 발명을 구체적인 실시예를 통하여 설명하였으나, 당업자라면 본 발명의 취지 및 범위를 벗어나지 않고 수정, 변경을 할 수 있다. 즉, 본 발명은 멀티 오디오 신호에 대한 바이노럴 렌더링의 실시예에 대하여 설명하였지만, 본 발명은 오디오 신호뿐만 아니라 비디오 신호를 포함하는 다양한 멀티미디어 신호에도 동일하게 적용 및 확장 가능하다. 따라서 본 발명의 상세한 설명 및 실시예로부터 본 발명이 속하는 기술분야에 속한 사람이 용이하게 유추할 수 있는 것은 본 발명의 권리범위에 속하는 것으로 해석된다.
본 발명은 다양한 형태의 오디오 신호 처리 장치 및 비디오 신호 처리 장치 등을 포함하는 멀티미디어 신호 처리 장치에 적용될 수 있다.
또한, 본 발명은 상기 오디오 신호 처리 장치 및 비디오 신호 장치의 프로세싱에 사용되는 파라메터를 생성하는 파라메터화 장치에 적용될 수 있다.
10: 코어 디코더 20: 렌더링 유닛
30: 믹서 40: 포스트 프로세싱 유닛
200: 바이노럴 렌더러 222: 바이노럴 렌더링 유닛
230: 고속 콘볼루션부 240: 후기잔향 생성부
250: QTDL 프로세싱부 300: BRIR 파라메터화부

Claims (4)

  1. 오디오 신호 처리 장치가 오디오 신호를 처리하는 방법에서,
    입력 오디오 신호를 수신하는 단계;
    상기 입력 오디오 신호의 각 서브밴드 신호에 대응하는 필터 계수들의 블록 길이 정보 및 블록 개수 정보를 획득하는 단계;
    상기 각 서브밴드를 나타내는 서브밴드 인덱스, 상기 각 서브밴드에 적용되는 바이노럴 필터 쌍을 나타내는 바이노럴 필터 쌍 인덱스, 상기 블록 개수 내에서의 블록 인덱스, 및 상기 블록 길이 정보에 따른 길이를 갖는 각 블록에서의 엘리멘트 인덱스에 대한 필터 계수들을 수신하는 단계, 동일 서브밴드 인덱스 및 동일 바이노럴 필터 쌍 인덱스에 대한 필터 계수들의 총 길이는 해당 서브밴드의 필터 차수에 기초하여 결정됨; 및
    상기 입력 오디오 신호의 각 서브밴드 신호를 이에 대응하는 상기 수신된 필터 계수들을 이용하여 필터링하는 단계, 상기 필터링은 블록 단위로 처리됨을
    를 포함하고,
    상기 입력 오디오 신호는 채널 신호 또는 객체 신호 중 어느 하나인 오디오 신호 처리 방법.
  2. 오디오 신호 처리 장치가 오디오 신호를 처리하는 방법에서,
    입력 오디오 신호를 수신하는 단계;
    상기 입력 오디오 신호의 각 서브밴드에 대한 고속 퓨리에 변환(FFT) 길이 정보를 수신하는 단계;
    상기 FFT 길이 정보에 기초하여 각 서브밴드에 대한 필터 계수들의 블록 길이 정보를 획득하는 단계;
    각 서브밴드에 대한 필터 계수들의 블록 개수 정보를 획득하는 단계;
    각 인덱스 세트에 대한 필터 계수들을 수신하는 단계, 상기 인덱스 세트는 상기 각 서브밴드를 나타내는 서브밴드 인덱스, 상기 각 서브밴드에 적용되는 바이노럴 필터 쌍을 나타내는 바이노럴 필터 쌍 인덱스, 상기 블록 개수 내에서의 블록 인덱스, 및 상기 블록 길이 정보에 따른 길이를 갖는 각 블록에서의 엘리멘트 인덱스를 포함하고, 동일 서브밴드 인덱스 및 동일 바이노럴 필터 쌍 인덱스에 대한 필터 계수들의 총 길이는 해당 서브밴드의 필터 차수에 기초하여 결정됨; 및
    상기 입력 오디오 신호의 각 서브밴드 신호를 이에 대응하는 상기 수신된 필터 계수들을 이용하여 FFT하는 단계, 상기 FFT는 블록 단위로 처리됨을 포함하고,
    상기 입력 오디오 신호는 채널 신호 또는 객체 신호 중 어느 하나인 오디오 신호 처리 방법.
  3. 오디오 신호 처리 장치로서,
    입력 오디오 신호의 하나 이상의 서브밴드 신호들의 필터링을 수행하는 고속 콘볼루션부를 포함하고,
    상기 고속 콘볼루션부는,
    입력 오디오 신호를 수신하고,
    상기 입력 오디오 신호의 각 서브밴드 신호에 대응하는 필터 계수들의 블록 길이 정보 및 블록 개수 정보를 획득하고,
    상기 각 서브밴드를 나타내는 각각의 서브밴드 인덱스, 상기 각 서브밴드에 적용되는 바이노럴 필터 쌍을 나타내는 바이노럴 필터 쌍 인덱스, 상기 블록 개수 내에서의 블록 인덱스, 및 상기 블록 길이 정보에 따른 길이를 갖는 각 블록에서의 엘리멘트 인덱스에 대한 필터 계수들을 수신하되, 동일 서브밴드 인덱스 및 동일 바이노럴 필터 쌍 인덱스에 대한 필터 계수들의 총 길이는 해당 서브밴드의 필터 차수에 기초하여 결정되며,
    상기 입력 오디오 신호의 각 서브밴드 신호를 이에 대응하는 상기 수신된 필터 계수들을 이용하여 필터링하고, 상기 필터링은 블록 단위로 처리되고,
    상기 입력 오디오 신호는 채널 신호 또는 객체 신호 중 어느 하나인
    오디오 신호 처리 장치.
  4. 오디오 신호 처리 장치로서,
    입력 오디오 신호의 하나 이상의 서브밴드 신호들의 필터링을 수행하는 고속 콘볼루션부를 포함하고,
    상기 고속 콘볼루션부는,
    입력 오디오 신호를 수신하고,
    각 서브밴드에 대한 고속 퓨리에 변환(FFT) 길이 정보를 수신하고,
    상기 FFT 길이 정보에 기초하여 각 서브밴드에 대한 필터 계수들의 블록 길이 정보를 획득하고,
    각 서브밴드에 대한 필터 계수들의 블록 개수 정보를 획득하고;
    각 인덱스 세트에 대한 필터 계수들을 수신하되, 상기 인덱스 세트는 상기 각 서브밴드를 나타내는 서브밴드 인덱스, 상기 각 서브밴드에 적용되는 바이노럴 필터 쌍을 나타내는 바이노럴 필터 쌍 인덱스, 상기 블록 개수 내에서의 블록 인덱스, 및 상기 블록 길이 정보에 따른 길이를 갖는 각 블록에서의 엘리멘트 인덱스를 포함하고, 동일 서브밴드 인덱스 및 동일 바이노럴 필터 쌍 인덱스에 대한 필터 계수들의 총 길이는 해당 서브밴드의 필터 차수에 기초하여 결정되며,
    상기 입력 오디오 신호의 각 서브밴드 신호를 이에 대응하는 상기 수신된 필터 계수들을 이용하여 FFT 하고, 상기 FFT는 블록 단위로 처리 되고,
    상기 입력 오디오 신호는 채널 신호 또는 객체 신호 중 어느 하나인
    오디오 신호 처리 장치.
KR1020217004133A 2014-04-02 2015-04-02 오디오 신호 처리 방법 및 장치 KR102363475B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020227004033A KR102428066B1 (ko) 2014-04-02 2015-04-02 오디오 신호 처리 방법 및 장치

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US201461973868P 2014-04-02 2014-04-02
US61/973,868 2014-04-02
KR20140081226 2014-06-30
KR1020140081226 2014-06-30
US201462019958P 2014-07-02 2014-07-02
US62/019,958 2014-07-02
KR1020187012589A KR102216801B1 (ko) 2014-04-02 2015-04-02 오디오 신호 처리 방법 및 장치
PCT/KR2015/003328 WO2015152663A2 (ko) 2014-04-02 2015-04-02 오디오 신호 처리 방법 및 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020187012589A Division KR102216801B1 (ko) 2014-04-02 2015-04-02 오디오 신호 처리 방법 및 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020227004033A Division KR102428066B1 (ko) 2014-04-02 2015-04-02 오디오 신호 처리 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20210018559A KR20210018559A (ko) 2021-02-17
KR102363475B1 true KR102363475B1 (ko) 2022-02-16

Family

ID=80496119

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020217004133A KR102363475B1 (ko) 2014-04-02 2015-04-02 오디오 신호 처리 방법 및 장치
KR1020247026486A KR20240124433A (ko) 2014-04-02 2015-04-02 오디오 신호 처리 방법 및 장치
KR1020227004033A KR102428066B1 (ko) 2014-04-02 2015-04-02 오디오 신호 처리 방법 및 장치

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020247026486A KR20240124433A (ko) 2014-04-02 2015-04-02 오디오 신호 처리 방법 및 장치
KR1020227004033A KR102428066B1 (ko) 2014-04-02 2015-04-02 오디오 신호 처리 방법 및 장치

Country Status (2)

Country Link
EP (1) EP4329331A3 (ko)
KR (3) KR102363475B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11445324B2 (en) * 2018-10-26 2022-09-13 Huawei Technologies Co., Ltd. Audio rendering method and apparatus

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070172086A1 (en) 1997-09-16 2007-07-26 Dickins Glen N Utilization of filtering effects in stereo headphone devices to enhance spatialization of source around a listener
US20090041263A1 (en) 2005-10-26 2009-02-12 Nec Corporation Echo Suppressing Method and Apparatus
US20120014528A1 (en) 2005-09-13 2012-01-19 Srs Labs, Inc. Systems and methods for audio processing

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007080211A1 (en) * 2006-01-09 2007-07-19 Nokia Corporation Decoding of binaural audio signals
KR100754220B1 (ko) 2006-03-07 2007-09-03 삼성전자주식회사 Mpeg 서라운드를 위한 바이노럴 디코더 및 그 디코딩방법
US9496850B2 (en) 2006-08-04 2016-11-15 Creative Technology Ltd Alias-free subband processing

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070172086A1 (en) 1997-09-16 2007-07-26 Dickins Glen N Utilization of filtering effects in stereo headphone devices to enhance spatialization of source around a listener
US20120014528A1 (en) 2005-09-13 2012-01-19 Srs Labs, Inc. Systems and methods for audio processing
US20090041263A1 (en) 2005-10-26 2009-02-12 Nec Corporation Echo Suppressing Method and Apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11445324B2 (en) * 2018-10-26 2022-09-13 Huawei Technologies Co., Ltd. Audio rendering method and apparatus

Also Published As

Publication number Publication date
KR20240124433A (ko) 2024-08-16
KR20220025127A (ko) 2022-03-03
KR20220113833A (ko) 2022-08-16
EP4329331A2 (en) 2024-02-28
KR102428066B1 (ko) 2022-08-02
EP4329331A3 (en) 2024-05-08
KR20210018559A (ko) 2021-02-17

Similar Documents

Publication Publication Date Title
KR102216801B1 (ko) 오디오 신호 처리 방법 및 장치
KR102149216B1 (ko) 오디오 신호 처리 방법 및 장치
KR102403426B1 (ko) 오디오 신호의 필터 생성 방법 및 이를 위한 파라메터화 장치
KR102363475B1 (ko) 오디오 신호 처리 방법 및 장치
KR102730463B1 (ko) 오디오 신호 처리 방법 및 장치
KR102272099B1 (ko) 오디오 신호 처리 방법 및 장치

Legal Events

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