KR102345910B1 - 시간 오프셋 추정 - Google Patents
시간 오프셋 추정 Download PDFInfo
- Publication number
- KR102345910B1 KR102345910B1 KR1020207006457A KR20207006457A KR102345910B1 KR 102345910 B1 KR102345910 B1 KR 102345910B1 KR 1020207006457 A KR1020207006457 A KR 1020207006457A KR 20207006457 A KR20207006457 A KR 20207006457A KR 102345910 B1 KR102345910 B1 KR 102345910B1
- Authority
- KR
- South Korea
- Prior art keywords
- comparison values
- channel
- term smoothed
- long
- values
- Prior art date
Links
- 230000005236 sound signal Effects 0.000 claims abstract description 303
- 230000007774 longterm Effects 0.000 claims abstract description 217
- 238000000034 method Methods 0.000 claims abstract description 142
- 230000001364 causal effect Effects 0.000 claims abstract description 93
- 230000004044 response Effects 0.000 claims abstract description 82
- 238000009499 grossing Methods 0.000 claims abstract description 77
- 230000002123 temporal effect Effects 0.000 claims description 125
- 239000000203 mixture Substances 0.000 claims description 10
- 238000001914 filtration Methods 0.000 claims 4
- 238000004513 sizing Methods 0.000 claims 2
- 230000000875 corresponding effect Effects 0.000 description 74
- 230000006870 function Effects 0.000 description 22
- 230000003111 delayed effect Effects 0.000 description 20
- 230000008859 change Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 12
- 230000007704 transition Effects 0.000 description 12
- 238000012545 processing Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 7
- 238000005070 sampling Methods 0.000 description 6
- 230000003247 decreasing effect Effects 0.000 description 5
- 238000010606 normalization Methods 0.000 description 5
- 238000012952 Resampling Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 230000002596 correlated effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 229910052709 silver Inorganic materials 0.000 description 4
- 239000004332 silver Substances 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000010363 phase shift Effects 0.000 description 3
- 238000007670 refining Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000005314 correlation function Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/008—Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/005—Correction of errors induced by the transmission channel, if related to the coding algorithm
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/02—Speech 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/022—Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S3/00—Systems employing more than two channels, e.g. quadraphonic
- H04S3/008—Systems 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R2227/00—Details of public address [PA] systems covered by H04R27/00 but not provided for in any of its subgroups
- H04R2227/003—Digital PA systems using, e.g. LAN or internet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R27/00—Public address systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S1/00—Two-channel systems
- H04S1/007—Two-channel systems in which the audio signals are in digital form
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2400/00—Details of stereophonic systems covered by H04S but not provided for in its groups
- H04S2400/01—Multi-channel, i.e. more than two input channels, sound reproduction with two speakers wherein the multi-channel information is substantially preserved
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2400/00—Details of stereophonic systems covered by H04S but not provided for in its groups
- H04S2400/03—Aspects of down-mixing multi-channel audio to configurations with lower numbers of playback channels, e.g. 7.1 -> 5.1
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2400/00—Details of stereophonic systems covered by H04S but not provided for in its groups
- H04S2400/15—Aspects of sound capture and related signal processing for recording or reproduction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2420/00—Techniques used stereophonic systems covered by H04S but not provided for in its groups
- H04S2420/03—Application of parametric coding in stereophonic audio systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S7/00—Indicating arrangements; Control arrangements, e.g. balance control
- H04S7/30—Control circuits for electronic adaptation of the sound field
- H04S7/305—Electronic adaptation of stereophonic audio signals to reverberation of the listening space
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Stereophonic System (AREA)
- Circuit For Audible Band Transducer (AREA)
- Steroid Compounds (AREA)
Abstract
멀티-채널 오디오 신호들을 코딩하는 방법은 레퍼런스 채널과 대응하는 타겟 채널 사이의 시간 불일치의 양을 나타내는 비교 값들을 인코더에서 추정하는 단계를 포함한다. 방법은 단기 및 제 1 장기 평활화된 비교 값들을 생성하기 위해 비교 값들을 평활화하는 단계를 포함한다. 방법은 비교 값들과 단기 평활화된 비교 값들 사이의 상호 상관 값을 계산하는 단계를 포함한다. 방법은 또한, 상호 상관 값과 임계치를 비교하는 것에 응답하여 제 1 장기 평활화된 비교 값들을 조정하는 단계를 포함한다. 방법은 잠정적 시프트 값을 추정하는 단계 및 조정된 타겟 채널을 생성하기 위해 타겟 채널을 비인과 시프트 값만큼 비인과적으로 시프트하는 단계를 더 포함한다. 비인과 시프트 값은 잠정적 시프트 값에 기초한다. 방법은, 레퍼런스 채널 및 조정된 타겟 채널에 기초하여, 미드 대역 채널 또는 사이드 대역 채널 중 적어도 하나를 생성하는 단계를 더 포함한다.
Description
I. 관련 출원들에 대한 상호 참조
본 출원은 "TEMPORAL OFFSET ESTIMATION" 을 발명의 명칭으로 하여 2017년 9월 11일자로 출원된 미국 가특허 출원 제62/556,653호, 및 "TEMPORAL OFFSET ESTIMATION" 을 발명의 명칭으로 하여 2018년 8월 28일자로 출원된 미국 특허 출원 제16/115,129호로부터 우선권을 주장하고, 이들은 전부 참조로 본 명세서에 통합된다.
II. 분야
본 개시는 일반적으로 다중 채널들의 시간 오프셋을 추정하는 것에 관한 것이다.
기술에서의 진보들은 더 소형이고 더 강력한 컴퓨팅 디바이스들을 발생시켰다. 예를 들어, 소형이고 경량이며 사용자들에 의해 용이하게 휴대되는 모바일 및 스마트 폰들과 같은 무선 전화기들, 태블릿들 및 랩탑 컴퓨터들을 포함한 다양한 휴대용 개인 컴퓨팅 디바이스들이 현재 존재한다. 이들 디바이스들은 무선 네트워크들 상으로 보이스 및 데이터 패킷들을 통신할 수 있다. 추가로, 다수의 그러한 디바이스들은 디지털 스틸 카메라, 디지털 비디오 카메라, 디지털 레코더, 및 오디오 파일 플레이어와 같은 추가적인 기능성을 통합한다. 또한, 그러한 디바이스들은, 인터넷에 액세스하는데 사용될 수 있는 웹 브라우저 애플리케이션과 같은 소프트웨어 애플리케이션들을 포함한 실행가능 명령들을 프로세싱할 수 있다. 이로써, 이들 디바이스들은 현저한 컴퓨팅 능력들을 포함할 수 있다.
컴퓨팅 디바이스는 오디오 신호들을 수신하기 위해 다중 마이크로폰들을 포함할 수도 있다. 일반적으로, 사운드 소스는 다중 마이크로폰들 중 제 2 마이크로폰보다 제 1 마이크로폰에 더 가깝다. 이에 따라, 제 2 마이크로폰으로부터 수신된 제 2 오디오 신호는 제 1 마이크로폰으로부터 수신된 제 1 오디오 신호에 대해 지연될 수도 있다. 스테레오 인코딩에 있어서, 마이크로폰들로부터의 오디오 신호들은 미드 (mid) 채널 및 하나 이상의 사이드 (side) 채널들을 생성하기 위해 인코딩될 수도 있다. 미드 채널은 제 1 오디오 신호와 제 2 오디오 신호의 합에 대응할 수도 있다. 사이드 채널은 제 1 오디오 신호와 제 2 오디오 신호 사이의 차이에 대응할 수도 있다. 제 1 오디오 신호는, 제 2 오디오 신호를 수신함에 있어서의 제 1 오디오 신호에 대한 지연 때문에, 제 2 오디오 신호와 시간적으로 정렬되지 않을 수도 있다. 제 2 오디오 신호에 대한 제 1 오디오 신호의 오정렬 (misalignment) (또는 "시간 오프셋 (temporal offset)") 은 사이드 채널의 크기 (magnitude) 를 증가시킬 수도 있다. 사이드 채널의 크기의 증가 때문에, 더 큰 수의 비트들이 사이드 채널을 인코딩하는데 필요할 수도 있다.
추가적으로, 상이한 프레임 타입들이 컴퓨팅 디바이스로 하여금, 상이한 시간 오프셋들 또는 시프트 추정치들을 생성하게 할 수도 있다. 예를 들어, 컴퓨팅 디바이스는, 제 1 오디오 신호의 보이싱된 (voiced) 프레임이 제 2 오디오 신호에서의 대응하는 보이싱된 프레임에 의해 특정 양만큼 오프셋됨을 결정할 수도 있다. 그러나, 비교적 많은 양의 노이즈로 인해, 컴퓨팅 디바이스는, 제 1 오디오 신호의 트랜지션 프레임 (또는 언보이싱된 (unvoiced) 프레임) 이 제 2 오디오 신호의 대응하는 트랜지션 프레임 (또는 대응하는 언보이싱된 프레임) 에 의해 상이한 양만큼 오프셋됨을 결정할 수도 있다. 시프트 추정치들에서의 변동 (variation) 들은 프레임 경계들에서 샘플 반복 및 아티팩트 스킵핑을 야기할 수도 있다. 추가적으로, 시프트 추정치들에서의 변동은 더 높은 사이드 채널 에너지들을 발생시킬 수도 있으며, 이는 코딩 효율을 감소시킬 수도 있다.
본 명세서에서 개시된 기법들의 하나의 구현에 따르면, 다중 마이크로폰들에서 캡처된 오디오 사이의 시간 오프셋을 추정하는 방법은 제 1 마이크로폰에서 레퍼런스 채널을 캡처하는 단계 및 제 2 마이크로폰에서 타겟 채널을 캡처하는 단계를 포함한다. 레퍼런스 채널은 레퍼런스 프레임을 포함하고, 타겟 채널은 타겟 프레임을 포함한다. 방법은 또한, 레퍼런스 프레임과 타겟 프레임 사이의 지연을 추정하는 단계를 포함한다. 방법은 비교 값들의 상호 상관 (cross-correlation) 값들에 기초하여 레퍼런스 채널과 타겟 채널 사이의 시간 오프셋을 추정하는 단계를 더 포함한다.
본 명세서에서 개시된 기법들의 다른 구현에 따르면, 다중 마이크로폰들에서 캡처된 오디오 사이의 시간 오프셋을 추정하기 위한 장치는 레퍼런스 채널을 캡처하도록 구성된 제 1 마이크로폰 및 타겟 채널을 캡처하도록 구성된 제 2 마이크로폰을 포함한다. 레퍼런스 채널은 레퍼런스 프레임을 포함하고, 타겟 채널은 타겟 프레임을 포함한다. 장치는 또한, 프로세서 및 명령들을 저장하는 메모리를 포함하고, 명령들은 프로세서로 하여금, 레퍼런스 프레임과 타겟 프레임 사이의 지연을 추정하게 하도록 실행가능하다. 명령들은 또한, 프로세서로 하여금, 비교 값들의 상호 상관 값들에 기초하여 레퍼런스 채널과 타겟 채널 사이의 시간 오프셋을 추정하게 하도록 실행가능하다.
본 명세서에서 개시된 기법들의 다른 구현에 따르면, 비일시적 컴퓨터 판독가능 매체는 다중 마이크로폰들에서 캡처된 오디오 사이의 시간 오프셋을 추정하기 위한 명령들을 포함한다. 명령들은, 프로세서에 의해 실행될 때, 프로세서로 하여금, 레퍼런스 프레임과 타겟 프레임 사이의 지연을 추정하는 것을 포함하는 동작들을 수행하게 한다. 레퍼런스 프레임은 제 1 마이크로폰에서 캡처된 레퍼런스 채널에 포함되고, 타겟 프레임은 제 2 마이크로폰에서 캡처된 타겟 채널에 포함된다. 동작들은 또한, 비교 값들의 상호 상관 값들에 기초하여 레퍼런스 채널과 타겟 채널 사이의 시간 오프셋을 추정하는 것을 포함한다.
본 명세서에서 개시된 기법들의 다른 구현에 따르면, 다중 마이크로폰들에서 캡처된 오디오 사이의 시간 오프셋을 추정하기 위한 장치는 레퍼런스 채널을 캡처하기 위한 수단 및 타겟 채널을 캡처하기 위한 수단을 포함한다. 레퍼런스 채널은 레퍼런스 프레임을 포함하고, 타겟 채널은 타겟 프레임을 포함한다. 장치는 또한, 레퍼런스 프레임과 타겟 프레임 사이의 지연을 추정하기 위한 수단을 포함한다. 장치는 비교 값들의 상호 상관 값들에 기초하여 레퍼런스 채널과 타겟 채널 사이의 시간 오프셋을 추정하기 위한 수단을 더 포함한다.
본 명세서에서 개시된 기법들의 다른 구현에 따르면, 채널을 비인과적으로 시프트하는 방법은 인코더에서 비교 값들을 추정하는 단계를 포함한다. 각각의 비교 값은 이전에 캡처된 레퍼런스 채널과 대응하는 이전에 캡처된 타겟 채널 사이의 시간 불일치의 양을 나타낸다. 방법은 또한, 단기 (short-term) 평활화된 비교 값들 및 제 1 장기 (long-term) 평활화된 비교 값들을 생성하기 위해 비교 값들을 평활화하는 단계를 포함한다. 방법은 또한, 비교 값들과 단기 평활화된 비교 값들 사이의 상호 상관 값을 계산하는 단계를 포함한다. 방법은 또한, 상호 상관 값과 임계치를 비교하는 단계, 및 상호 상관 값이 임계치를 초과한다는 결정에 응답하여, 제 2 장기 평활화된 비교 값들을 생성하기 위해 제 1 장기 평활화된 비교 값들을 조정하는 단계를 포함한다. 방법은 평활화된 비교 값들에 기초하여 잠정적 시프트 (tentative shift) 값을 추정하는 단계를 더 포함한다. 방법은 또한, 레퍼런스 채널과 시간적으로 정렬되는 조정된 타겟 채널을 생성하기 위해 타겟 채널을 비인과 시프트 (non-causal shift) 값만큼 비인과적으로 시프트하는 단계를 포함한다. 비인과 시프트 값은 잠정적 시프트 값에 기초한다. 방법은 레퍼런스 채널 및 조정된 타겟 채널에 기초하여, 미드 대역 (mid-band) 채널 또는 사이드 대역 (side-band) 채널 중 적어도 하나를 생성하는 단계를 더 포함한다.
본 명세서에서 개시된 기법들의 다른 구현에 따르면, 채널을 비인과적으로 시프트하기 위한 장치는 레퍼런스 채널을 캡처하도록 구성된 제 1 마이크로폰 및 타겟 채널을 캡처하도록 구성된 제 2 마이크로폰을 포함한다. 장치는 또한, 비교 값들을 추정하도록 구성된 인코더를 포함한다. 각각의 비교 값은 이전에 캡처된 레퍼런스 채널과 대응하는 이전에 캡처된 타겟 채널 사이의 시간 불일치의 양을 나타낸다. 인코더는 또한, 단기 평활화된 비교 값들 및 제 1 장기 평활화된 비교 값들을 생성하기 위해 비교 값들을 평활화하도록 구성된다. 인코더는 비교 값들과 단기 평활화된 비교 값들 사이의 상호 상관 값을 계산하도록 추가로 구성된다. 인코더는 상호 상관 값과 임계치를 비교하고, 그리고 상호 상관 값이 임계치를 초과한다는 결정에 응답하여, 제 2 장기 평활화된 비교 값들을 생성하기 위해 제 1 장기 평활화된 비교 값들을 조정하도록 추가로 구성된다. 인코더는 평활화된 비교 값들에 기초하여 잠정적 시프트 값을 추정하도록 추가로 구성된다. 인코더는 또한, 레퍼런스 채널과 시간적으로 정렬되는 조정된 타겟 채널을 생성하기 위해 타겟 채널을 비인과 시프트 값만큼 비인과적으로 시프트하도록 구성된다. 비인과 시프트 값은 잠정적 시프트 값에 기초한다. 인코더는 레퍼런스 채널 및 조정된 타겟 채널에 기초하여, 미드 대역 채널 또는 사이드 대역 채널 중 적어도 하나를 생성하도록 추가로 구성된다.
본 명세서에서 개시된 기법들의 다른 구현에 따르면, 비일시적 컴퓨터 판독가능 매체는 채널을 비인과적으로 시프트하기 위한 명령들을 포함한다. 명령들은, 인코더에 의해 실행될 때, 인코더로 하여금, 비교 값들을 추정하는 것을 포함하는 동작들을 수행하게 한다. 각각의 비교 값은 이전에 캡처된 레퍼런스 채널과 대응하는 이전에 캡처된 타겟 채널 사이의 시간 불일치의 양을 나타낸다. 동작들은 또한, 단기 평활화된 비교 값들 및 제 1 장기 평활화된 비교 값들을 생성하기 위해 비교 값들을 평활화하는 것을 포함한다. 동작들은 또한, 비교 값들과 단기 평활화된 비교 값들 사이의 상호 상관 값을 계산하는 것을 포함한다. 동작들은 또한, 상호 상관 값이 임계치를 초과한다는 결정에 응답하여, 제 2 장기 평활화된 비교 값들을 생성하기 위해 제 1 장기 평활화된 비교 값들을 조정하는 것을 포함한다. 동작들은 또한, 평활화된 비교 값들에 기초하여 잠정적 시프트 값을 추정하는 것을 포함한다. 동작들은 또한, 레퍼런스 채널과 시간적으로 정렬되는 조정된 타겟 채널을 생성하기 위해 타겟 채널을 비인과 시프트 값만큼 비인과적으로 시프트하는 것을 포함한다. 비인과 시프트 값은 잠정적 시프트 값에 기초한다. 동작들은 또한, 레퍼런스 채널 및 조정된 타겟 채널에 기초하여, 미드 대역 채널 또는 사이드 대역 채널 중 적어도 하나를 생성하는 것을 포함한다.
본 명세서에서 개시된 기법들의 다른 구현에 따르면, 채널을 비인과적으로 시프트하기 위한 장치는 비교 값들을 추정하기 위한 수단을 포함한다. 각각의 비교 값은 이전에 캡처된 레퍼런스 채널과 대응하는 이전에 캡처된 타겟 채널 사이의 시간 불일치의 양을 나타낸다. 장치는 또한, 단기 평활화된 비교 값들을 생성하기 위해 비교 값들을 평활하기 위한 수단 및 제 1 장기 평활화된 비교 값들을 생성하기 위해 비교 값들을 평활화하기 위한 수단을 포함한다. 장치는 또한, 비교 값들과 단기 평활화된 비교 값들 사이의 상호 상관 값을 계산하기 위한 수단을 포함한다. 장치는 또한, 상호 상관 값과 임계치를 비교하기 위한 수단, 및 상호 상관 값이 임계치를 초과한다는 결정에 응답하여, 제 2 장기 평활화된 비교 값들을 생성하기 위해 제 1 장기 평활화된 비교 값들을 조정하기 위한 수단을 포함한다. 장치는 또한, 평활화된 비교 값들에 기초하여 잠정적 시프트 값을 추정하기 위한 수단을 포함한다. 장치는 또한, 레퍼런스 채널과 시간적으로 정렬되는 조정된 타겟 채널을 생성하기 위해 타겟 채널을 비인과 시프트 값만큼 비인과적으로 시프트하기 위한 수단을 포함한다. 비인과 시프트 값은 잠정적 시프트 값에 기초한다. 장치는 또한, 레퍼런스 채널 및 조정된 타겟 채널에 기초하여, 미드 대역 채널 또는 사이드 대역 채널 중 적어도 하나를 생성하기 위한 수단을 포함한다.
도 1 은 다중 채널들을 인코딩하도록 동작가능한 디바이스를 포함하는 시스템의 특정 예시적인 예의 블록 다이어그램이다;
도 2 는 도 1 의 디바이스를 포함하는 시스템의 다른 예를 예시하는 다이어그램이다;
도 3 은 도 1 의 디바이스에 의해 인코딩될 수도 있는 샘플들의 특정 예들을 예시하는 다이어그램이다;
도 4 는 도 1 의 디바이스에 의해 인코딩될 수도 있는 샘플들의 특정 예들을 예시하는 다이어그램이다;
도 5 는 시간 등화기 및 메모리의 특정 예를 예시하는 다이어그램이다;
도 6 은 신호 비교기의 특정 예를 예시하는 다이어그램이다;
도 7 은 특정 비교 값들의 상호 상관 값에 기초하여 장기 평활화된 비교 값들의 서브세트를 조정하는 특정 예들을 예시하는 다이어그램이다;
도 8 은 장기 평활화된 비교 값들의 서브세트를 조정하는 다른 특정 예를 예시하는 다이어그램이다;
도 9 는 특정 이득 파라미터에 기초하여 장기 평활화된 비교 값들의 서브세트를 조정하는 특정 방법을 예시하는 플로우 차트이다;
도 10 은 보이싱된 프레임들, 트랜지션 프레임들, 및 언보이싱된 프레임들에 대한 비교 값들을 예시하는 그래프들을 도시한다;
도 11 은 다중 마이크로폰들에서 캡처된 오디오 사이의 시간 오프셋에 기초하여 채널을 비인과적으로 시프트하는 특정 방법을 예시하는 플로우 차트이다;
도 12 는 다중 마이크로폰들에서 캡처된 오디오 사이의 시간 오프셋에 기초하여 채널을 비인과적으로 시프트하는 다른 특정 방법을 예시하는 플로우 차트이다;
도 13 은 다중 채널들을 인코딩하도록 동작가능한 디바이스의 특정 예시적인 예의 블록 다이어그램이다; 그리고
도 14 는 다중 채널들을 인코딩하도록 동작가능한 기지국의 블록 다이어그램이다.
도 2 는 도 1 의 디바이스를 포함하는 시스템의 다른 예를 예시하는 다이어그램이다;
도 3 은 도 1 의 디바이스에 의해 인코딩될 수도 있는 샘플들의 특정 예들을 예시하는 다이어그램이다;
도 4 는 도 1 의 디바이스에 의해 인코딩될 수도 있는 샘플들의 특정 예들을 예시하는 다이어그램이다;
도 5 는 시간 등화기 및 메모리의 특정 예를 예시하는 다이어그램이다;
도 6 은 신호 비교기의 특정 예를 예시하는 다이어그램이다;
도 7 은 특정 비교 값들의 상호 상관 값에 기초하여 장기 평활화된 비교 값들의 서브세트를 조정하는 특정 예들을 예시하는 다이어그램이다;
도 8 은 장기 평활화된 비교 값들의 서브세트를 조정하는 다른 특정 예를 예시하는 다이어그램이다;
도 9 는 특정 이득 파라미터에 기초하여 장기 평활화된 비교 값들의 서브세트를 조정하는 특정 방법을 예시하는 플로우 차트이다;
도 10 은 보이싱된 프레임들, 트랜지션 프레임들, 및 언보이싱된 프레임들에 대한 비교 값들을 예시하는 그래프들을 도시한다;
도 11 은 다중 마이크로폰들에서 캡처된 오디오 사이의 시간 오프셋에 기초하여 채널을 비인과적으로 시프트하는 특정 방법을 예시하는 플로우 차트이다;
도 12 는 다중 마이크로폰들에서 캡처된 오디오 사이의 시간 오프셋에 기초하여 채널을 비인과적으로 시프트하는 다른 특정 방법을 예시하는 플로우 차트이다;
도 13 은 다중 채널들을 인코딩하도록 동작가능한 디바이스의 특정 예시적인 예의 블록 다이어그램이다; 그리고
도 14 는 다중 채널들을 인코딩하도록 동작가능한 기지국의 블록 다이어그램이다.
다중 오디오 신호들을 인코딩하도록 동작가능한 시스템들 및 디바이스들이 개시된다. 디바이스는 다중 오디오 신호들을 인코딩하도록 구성된 인코더를 포함할 수도 있다. 다중 오디오 신호들은 다중 레코딩 디바이스들, 예를 들어 다중 마이크로폰들을 사용하여 시간에 있어서 동시에 캡처될 수도 있다. 일부 예들에서, 다중 오디오 신호들 (또는 멀티-채널 오디오) 은 동시에 또는 상이한 시간들에 레코딩되는 여러 오디오 채널들을 멀티플렉싱함으로써 합성적으로 (예를 들어, 인공적으로) 생성될 수도 있다. 예시적인 예들로서, 오디오 채널들의 동시 레코딩 또는 멀티플렉싱은 2 채널 구성 (즉, 스테레오: 좌측 및 우측), 5.1 채널 구성 (좌측, 우측, 중앙, 좌측 서라운드, 우측 서라운드, 및 저주파수 엠퍼시스 (LFE) 채널들), 7.1 채널 구성, 7.1+4 채널 구성, 22.2 채널 구성, 또는 N 채널 구성을 발생시킬 수도 있다.
텔레컨퍼런스 룸들 (또는 텔레프레전스 룸들) 에서의 오디오 캡처 디바이스들은, 공간 오디오를 포착하는 다중 마이크로폰들을 포함할 수도 있다. 공간 오디오는 인코딩 및 송신되는 백그라운드 오디오 뿐만 아니라 스피치를 포함할 수도 있다. 주어진 소스 (예를 들어, 화자) 로부터의 스피치/오디오는, 마이크로폰들이 어떻게 배열되는지 뿐만 아니라 소스 (예를 들어, 화자) 가 마이크로폰들 및 룸 치수들에 대하여 어디에 위치되는지에 의존하여, 상이한 시간들에서 다중 마이크로폰들에 도달할 수도 있다. 예를 들어, 사운드 소스 (예를 들어, 화자) 는 디바이스와 연관된 제 2 마이크로폰보다 디바이스와 연관된 제 1 마이크로폰에 더 가까울 수도 있다. 따라서, 사운드 소스로부터 방출된 사운드는 제 2 마이크로폰보다 시간에 있어서 더 이르게 제 1 마이크로폰에 도달할 수도 있다. 디바이스는 제 1 마이크로폰을 통해 제 1 오디오 신호를 수신할 수도 있고 제 2 마이크로폰을 통해 제 2 오디오 신호를 수신할 수도 있다.
미드 사이드 (MS) 코딩 및 파라메트릭 스테레오 (parametric stereo; PS) 코딩은, 듀얼-모노 코딩 기법들에 비해 개선된 효율을 제공할 수도 있는 스테레오 코딩 기법들이다. 듀얼-모노 코딩에서, 좌측 (L) 채널 (또는 신호) 및 우측 (R) 채널 (또는 신호) 은 채널간 상관을 이용함이 없이 독립적으로 코딩된다. MS 코딩은 좌측 채널 및 우측 채널을 코딩 전에 합산 채널 (sum-channel) 및 차이 채널 (difference-channel) (예를 들어, 사이드 채널) 로 변환함으로써 상관된 L/R 채널 쌍 간의 리던던시를 감소시킨다. 합산 신호 및 차이 신호는 MS 코딩으로 파형 코딩된다. 비교적 더 많은 비트들이 사이드 신호보다 합산 신호에서 소비된다. PS 코딩은 L/R 신호들을 합산 신호 및 사이드 파라미터들의 세트로 변환함으로써 각각의 서브-대역에서의 리던던시를 감소시킨다. 사이드 파라미터들은 채널간 강도 차이 (IID), 채널간 위상 차이 (IPD), 채널간 시간 차이 (ITD) 등을 나타낼 수도 있다. 합산 신호는 파형 코딩되고 사이드 파라미터들과 함께 송신된다. 하이브리드 시스템에서, 사이드 채널은 하위 대역들 (예를 들어, 2 킬로헤르츠 (kHz) 미만) 에서 파형 코딩되고 상위 대역들 (예를 들어, 2 kHz 이상) 에서 PS 코딩될 수도 있으며, 여기서 채널간 위상 보존은 개념적으로 덜 중요하다.
MS 코딩 및 PS 코딩은 주파수 도메인에서 또는 서브-대역 도메인에서 행해질 수도 있다. 일부 예들에서, 좌측 채널 및 우측 채널은 상관되지 않을 수도 있다. 예를 들어, 좌측 채널 및 우측 채널은 상관되지 않은 합성 신호들을 포함할 수도 있다. 좌측 채널 및 우측 채널이 상관되지 않을 경우, MS 코딩, PS 코딩, 또는 양자 모두의 코딩 효율은 듀얼-모노 코딩의 코딩 효율에 근접할 수도 있다.
레코딩 구성에 의존하여, 좌측 채널과 우측 채널 사이의 시간 시프트 뿐만 아니라 에코 및 룸 잔향과 같은 다른 공간 효과들이 존재할 수도 있다. 채널들 사이의 시간 시프트 및 위상 불일치가 보상되지 않으면, 합산 채널 및 차이 채널은 비교가능한 에너지들을 포함하여 MS 또는 PS 기법들과 연관된 코딩 이득들을 감소시킬 수도 있다. 코딩 이득들에서의 감소는 시간 (또는 위상) 시프트의 양에 기초할 수도 있다. 합산 신호와 차이 신호의 비교가능한 에너지들은, 채널들이 시간적으로 시프트되지만 고도로 상관되는 소정의 프레임들에서 MS 코딩의 사용을 제한할 수도 있다. 스테레오 코딩에 있어서, 미드 채널 (예를 들어, 합산 채널) 및 사이드 채널 (예를 들어, 차이 채널) 은 다음 식에 기초하여 생성될 수도 있으며:
여기서, M 은 미드 채널에 대응하고, S 는 사이드 채널에 대응하고, L 은 좌측 채널에 대응하고, 그리고 R 은 우측 채널에 대응한다.
일부 경우들에서, 미드 채널 및 사이드 채널은 다음 식에 기초하여 생성될 수도 있으며:
여기서, c 는 주파수 의존적인 복소 값 (complex value) 에 대응한다. 식 1 또는 식 2 에 기초하여 미드 채널 및 사이드 채널을 생성하는 것은 "다운 믹싱 (down-mixing)" 알고리즘을 수행하는 것으로 지칭될 수도 있다. 식 1 또는 식 2 에 기초하여 미드 채널 및 사이드 채널로부터 좌측 채널 및 우측 채널을 생성하는 역 프로세스는 "업 믹싱 (up-mixing)" 알고리즘을 수행하는 것으로 지칭될 수도 있다.
특정 프레임에 대한 MS 코딩 또는 듀얼-모노 코딩 사이를 선택하는데 사용된 애드-혹 접근법은 미드 신호 및 사이드 신호를 생성하는 것, 미드 신호 및 사이드 신호의 에너지들을 계산하는 것, 및 에너지들에 기초하여 MS 코딩을 수행할지 여부를 결정하는 것을 포함할 수도 있다. 예를 들어, MS 코딩은, 사이드 신호 및 미드 신호의 에너지들의 비가 임계치 미만임을 결정하는 것에 응답하여 수행될 수도 있다. 예시하기 위해, 우측 채널이 적어도 제 1 시간 (예를 들어, 약 0.001 초 또는 48 kHz 에서의 48 샘플들) 만큼 시프트되면, (좌측 신호와 우측 신호의 합에 대응하는) 미드 신호의 제 1 에너지는 보이싱된 스피치 프레임들에 대한 (좌측 신호와 우측 신호 사이의 차이에 대응하는) 사이드 신호의 제 2 에너지와 비교가능할 수도 있다. 제 1 에너지가 제 2 에너지와 비교가능할 경우, 더 높은 수의 비트들이 사이드 채널을 인코딩하는데 사용될 수도 있고, 이에 의해, 듀얼-모노 코딩에 대한 MS 코딩의 코딩 효율을 감소시킬 수도 있다. 듀얼-모노 코딩은 따라서, 제 1 에너지가 제 2 에너지와 비교가능할 경우 (예를 들어, 제 1 에너지와 제 2 에너지의 비가 임계치 이상일 경우) 사용될 수도 있다. 대안적인 접근법에서, 특정 프레임에 대한 MS 코딩과 듀얼-모노 코딩 사이의 판정은 좌측 채널 및 우측 채널의 정규화된 상호 상관 값들과 임계치의 비교에 기초하여 행해질 수도 있다.
일부 예들에서, 인코더는 제 2 오디오 신호에 대한 제 1 오디오 신호의 시간 시프트를 나타내는 시간 불일치 값을 결정할 수도 있다. 불일치 값은 제 1 마이크로폰에서의 제 1 오디오 신호의 수신과 제 2 마이크로폰에서의 제 2 오디오 신호의 수신 사이의 시간 지연의 양에 대응할 수도 있다. 더욱이, 인코더는, 프레임 단위 기반으로, 예를 들어, 각각 20 밀리초 (ms) 스피치/오디오 프레임에 기초하여 불일치 값을 결정할 수도 있다. 예를 들어, 불일치 값은, 제 2 오디오 신호의 제 2 프레임이 제 1 오디오 신호의 제 1 프레임에 대하여 지연되는 시간의 양에 대응할 수도 있다. 대안적으로, 불일치 값은, 제 1 오디오 신호의 제 1 프레임이 제 2 오디오 신호의 제 2 프레임에 대하여 지연되는 시간의 양에 대응할 수도 있다.
사운드 소스가 제 2 마이크로폰보다 제 1 마이크로폰에 더 가까울 경우, 제 2 오디오 신호의 프레임들은 제 1 오디오 신호의 프레임들에 대해 지연될 수도 있다. 이 경우에, 제 1 오디오 신호는 "레퍼런스 오디오 신호" 또는 "레퍼런스 채널" 로 지칭될 수도 있고, 지연된 제 2 오디오 신호는 "타겟 오디오 신호" 또는 "타겟 채널" 로 지칭될 수도 있다. 대안적으로, 사운드 소스가 제 1 마이크로폰보다 제 2 마이크로폰에 더 가까울 경우, 제 1 오디오 신호의 프레임들은 제 2 오디오 신호의 프레임들에 대해 지연될 수도 있다. 이 경우에, 제 2 오디오 신호는 레퍼런스 오디오 신호 또는 레퍼런스 채널로 지칭될 수도 있고 지연된 제 1 오디오 신호는 타겟 오디오 신호 또는 타겟 채널로 지칭될 수도 있다.
사운드 소스들 (예를 들어, 화자들) 이 컨퍼런스 또는 텔레프레전스 룸의 어디에 위치되는지 또는 사운드 소스 (예를 들어, 화자) 포지션이 마이크로폰들에 대해 어떻게 변하는지에 의존하여, 레퍼런스 채널 및 타겟 채널은 일 프레임으로부터 다른 프레임으로 변할 수도 있고; 유사하게, 시간 지연 값이 또한 일 프레임으로부터 다른 프레임으로 변할 수도 있다. 그러나, 일부 구현들에서, 불일치 값은, "레퍼런스" 채널에 대한 "타겟" 채널의 지연의 양을 나타내기 위해 항상 포지티브일 수도 있다. 더욱이, 불일치 값은, 타겟 채널이 "레퍼런스" 채널과 정렬 (예를 들어, 최대로 정렬) 되도록 지연된 타겟 채널이 시간적으로 "후퇴 (pull back)" 되는 "비인과 시프트" 값에 대응할 수도 있다. 미드 채널 및 사이드 채널을 결정하기 위한 다운 믹스 알고리즘이 레퍼런스 채널 및 비인과 시프트된 타겟 채널에 대해 수행될 수도 있다.
인코더는 타겟 오디오 채널에 적용된 복수의 불일치 값들 및 레퍼런스 오디오 채널에 기초하여 불일치 값을 결정할 수도 있다. 예를 들어, 레퍼런스 오디오 채널 (X) 의 제 1 프레임은 제 1 시간 (m1) 에서 수신될 수도 있다. 타겟 오디오 채널 (Y) 의 제 1 특정 프레임은 제 1 불일치 값, 예를 들어, shift1 = n1 - m1 에 대응하는 제 2 시간 (n1) 에서 수신될 수도 있다. 추가로, 레퍼런스 오디오 채널의 제 2 프레임은 제 3 시간 (m2) 에서 수신될 수도 있다. 타겟 오디오 채널의 제 2 특정 프레임은 제 2 불일치 값, 예를 들어, shift2 = n2 - m2 에 대응하는 제 4 시간 (n2) 에서 수신될 수도 있다.
디바이스는 프레임 (예를 들어, 20 ms 샘플들) 을 제 1 샘플링 레이트 (예를 들어, 32 kHz 샘플링 레이트 (즉, 프레임 당 640 샘플들)) 에서 생성하기 위해 프레이밍 또는 버퍼링 알고리즘을 수행할 수도 있다. 인코더는, 제 1 오디오 신호의 제 1 프레임 및 제 2 오디오 신호의 제 2 프레임이 디바이스에 동시에 도달함을 결정하는 것에 응답하여, 불일치 값 (예를 들어, shift1) 을 제로 샘플들과 동일한 것으로서 추정할 수도 있다. (예를 들어, 제 1 오디오 신호에 대응하는) 좌측 채널 및 (예를 들어, 제 2 오디오 신호에 대응하는) 우측 채널은 시간적으로 정렬될 수도 있다. 일부 경우들에서, 좌측 채널 및 우측 채널은, 정렬된 경우라도, 다양한 이유들 (예를 들어, 마이크로폰 교정) 로 인해 에너지에 있어서 상이할 수도 있다.
일부 예들에 있어서, 좌측 채널 및 우측 채널은 다양한 이유들로 인해 시간적으로 정렬되지 않을 수도 있다 (예를 들어, 화자와 같은 사운드 소스가 다른 것보다 마이크로폰들 중 하나에 더 가까울 수도 있고 그리고 2 개의 마이크로폰들이 임계치 (예를 들어, 1-20 센티미터) 거리보다 더 많이 이격될 수도 있음). 마이크로폰들에 대한 사운드 소스의 위치는 좌측 채널 및 우측 채널에 있어서 상이한 지연들을 도입할 수도 있다. 추가로, 좌측 채널과 우측 채널 사이에 이득 차이, 에너지 차이, 또는 레벨 차이가 존재할 수도 있다.
일부 예들에서, 다중 사운드 소스들 (예를 들어, 화자들) 로부터 마이크로폰들에서의 오디오 신호들의 도달 시간은, 다중 화자들이 (예를 들어, 중첩 없이) 교번하여 말하고 있을 때 가변할 수도 있다. 그러한 경우에, 인코더는 레퍼런스 채널을 식별하기 위해 화자에 기초하여 시간 불일치 값을 동적으로 조정할 수도 있다. 일부 다른 예들에 있어서, 다중 화자들은 동시에 말하고 있을 수도 있으며, 이는 누가 가장 큰 소리의 화자인지, 누가 마이크로폰에 가장 가까운지 등에 의존하여 가변하는 시간 불일치 값들을 발생시킬 수도 있다.
일부 예들에서, 제 1 오디오 신호 및 제 2 오디오 신호는, 2 개의 신호들이 잠재적으로 적은 상관 (예를 들어, 무상관) 을 나타낼 경우에 합성되거나 또는 인공적으로 생성될 수도 있다. 본 명세서에서 설명된 예들은 예시적이며 유사한 또는 상이한 상황들에서 제 1 오디오 신호와 제 2 오디오 신호 사이의 관계를 결정하는데 있어서 유익할 수도 있음이 이해되어야 한다.
인코더는 제 1 오디오 신호의 제 1 프레임과 제 2 오디오 신호의 복수의 프레임들의 비교에 기초하여 비교 값들 (예를 들어, 차이 값들 또는 상호 상관 값들) 을 생성할 수도 있다. 복수의 프레임들의 각각의 프레임은 특정 불일치 값에 대응할 수도 있다. 인코더는 비교 값들에 기초하여 제 1 추정된 불일치 값을 생성할 수도 있다. 예를 들어, 제 1 추정된 불일치 값은 제 1 오디오 신호의 제 1 프레임과 제 2 오디오 신호의 대응하는 제 1 프레임 사이의 더 높은 시간 유사도 (또는 더 낮은 차이) 를 나타내는 비교 값에 대응할 수도 있다.
인코더는, 다중 스테이지들에서, 일련의 추정된 불일치 값들을 리파이닝함으로써 최종 불일치 값을 결정할 수도 있다. 예를 들어, 인코더는 처음에, 제 1 오디오 신호 및 제 2 오디오 신호의 스테레오 프리프로세싱된 및 리샘플링된 버전들로부터 생성된 비교 값들에 기초하여 "잠정적" 불일치 값을 추정할 수도 있다. 인코더는 추정된 "잠정적" 불일치 값에 근접한 불일치 값들과 연관된 보간된 비교 값들을 생성할 수도 있다. 인코더는 보간된 비교 값들에 기초하여 제 2 추정된 "보간된" 불일치 값을 결정할 수도 있다. 예를 들어, 제 2 추정된 "보간된" 불일치 값은, 제 1 추정된 "잠정적" 불일치 값 및 나머지 보간된 비교 값들보다 더 높은 시간 유사도 (또는 더 낮은 차이) 를 나타내는 특정 보간된 비교 값에 대응할 수도 있다. 현재 프레임 (예를 들어, 제 1 오디오 신호의 제 1 프레임) 의 제 2 추정된 "보간된" 불일치 값이 이전 프레임 (예를 들어, 제 1 프레임에 선행하는 제 1 오디오 신호의 프레임) 의 최종 불일치 값과 상이하면, 현재 프레임의 "보간된" 불일치 값은 제 1 오디오 신호와 시프트된 제 2 오디오 신호 사이의 시간 유사도를 개선하기 위해 추가로 "보정된" 다. 특히, 제 3 추정된 "보정된" 불일치 값은, 현재 프레임의 제 2 추정된 "보간된" 불일치 값 및 이전 프레임의 최종 추정된 불일치 값을 탐색함으로써 시간 유사도의 더 정확한 측정치 (measure) 에 대응할 수도 있다. 제 3 추정된 "보정된" 불일치 값은 프레임들 간의 불일치 값에서의 임의의 의사의 변경 (spurious change) 들을 제한함으로써 최종 불일치 값을 추정하도록 추가로 컨디셔닝되고 그리고 본 명세서에서 설명된 바와 같은 2 개의 연속하는 (또는 연속적인) 프레임들에 있어서 네거티브 불일치 값으로부터 포지티브 불일치 값으로 (또는 그 역도 성립) 스위칭하지 않도록 추가로 제어된다.
일부 예들에서, 인코더는 연속적인 프레임들에 있어서 또는 인접한 프레임들에 있어서 포지티브 불일치 값과 네거티브 불일치 값 간의 또는 그 역의 스위칭을 억제할 수도 있다. 예를 들어, 인코더는, 제 1 프레임의 추정된 "보간된" 또는 "보정된" 불일치 값 및 제 1 프레임에 선행하는 특정 프레임에서의 대응하는 추정된 "보간된" 또는 "보정된" 또는 최종 불일치 값에 기초하여 시간 시프트 없음을 나타내는 특정 값 (예를 들어, 0) 으로 최종 불일치 값을 설정할 수도 있다. 예시하기 위하여, 인코더는, 현재 프레임의 추정된 "잠정적" 또는 "보간된" 또는 "보정된" 불일치 값 중 하나가 포지티브이고 그리고 이전 프레임 (예를 들어, 제 1 프레임에 선행하는 프레임) 의 추정된 "잠정적" 또는 "보간된" 또는 "보정된" 또는 "최종" 추정된 불일치 값 중 다른 하나가 네거티브임을 결정하는 것에 응답하여, 시간 시프트 없음, 즉, shift1 = 0 을 나타내도록 현재 프레임 (예를 들어, 제 1 프레임) 의 최종 불일치 값을 설정할 수도 있다. 대안적으로, 인코더는 또한, 현재 프레임의 추정된 "잠정적" 또는 "보간된" 또는 "보정된" 불일치 값 중 하나가 네거티브이고 그리고 이전 프레임 (예를 들어, 제 1 프레임에 선행하는 프레임) 의 추정된 "잠정적" 또는 "보간된" 또는 "보정된" 또는 "최종" 추정된 불일치 값 중 다른 하나가 포지티브임을 결정하는 것에 응답하여, 시간 시프트 없음, 즉, shift1 = 0 을 나타내도록 현재 프레임 (예를 들어, 제 1 프레임) 의 최종 불일치 값을 설정할 수도 있다.
인코더는 제 1 오디오 신호 또는 제 2 오디오 신호의 프레임을, 불일치 값에 기초하여 "레퍼런스" 또는 "타겟" 으로서 선택할 수도 있다. 예를 들어, 최종 불일치 값이 포지티브임을 결정하는 것에 응답하여, 인코더는 제 1 오디오 신호가 "레퍼런스" 신호이고 그리고 제 2 오디오 신호가 "타겟" 신호임을 나타내는 제 1 값 (예를 들어, 0) 을 갖는 레퍼런스 채널 또는 신호 표시자를 생성할 수도 있다. 대안적으로, 최종 불일치 값이 네거티브임을 결정하는 것에 응답하여, 인코더는 제 2 오디오 신호가 "레퍼런스" 신호이고 그리고 제 1 오디오 신호가 "타겟" 신호임을 나타내는 제 2 값 (예를 들어, 1) 을 갖는 레퍼런스 채널 또는 신호 표시자를 생성할 수도 있다.
인코더는 비인과 시프트된 타겟 신호 및 레퍼런스 신호와 연관된 상대 이득 (예를 들어, 상대 이득 파라미터) 을 추정할 수도 있다. 예를 들어, 최종 불일치 값이 포지티브임을 결정하는 것에 응답하여, 인코더는 비인과 불일치 값 (예를 들어, 최종 불일치 값의 절대 값) 만큼 오프셋되는 제 2 오디오 신호에 대한 제 1 오디오 신호의 에너지 또는 전력 레벨들을 정규화 또는 등화하도록 이득 값을 추정할 수도 있다. 대안적으로, 최종 불일치 값이 네거티브임을 결정하는 것에 응답하여, 인코더는 제 2 오디오 신호에 대한 비인과 시프트된 제 1 오디오 신호의 전력 레벨들을 정규화 또는 등화하도록 이득 값을 추정할 수도 있다. 일부 예들에서, 인코더는 비인과 시프트된 "타겟" 신호에 대한 "레퍼런스" 신호의 에너지 또는 전력 레벨들을 정규화 또는 등화하도록 이득 값을 추정할 수도 있다. 다른 예들에서, 인코더는 타겟 신호 (예를 들어, 시프트되지 않은 타겟 신호) 에 대한 레퍼런스 신호에 기초하여 이득 값 (예를 들어, 상대 이득 값) 을 추정할 수도 있다.
인코더는 레퍼런스 신호, 타겟 신호, 비인과 불일치 값, 및 상대 이득 파라미터에 기초하여 적어도 하나의 인코딩된 신호 (예를 들어, 미드 신호, 사이드 신호, 또는 양자 모두) 를 생성할 수도 있다. 사이드 신호는 제 1 오디오 신호의 제 1 프레임의 제 1 샘플들과 제 2 오디오 신호의 선택된 프레임의 선택된 샘플들 사이의 차이에 대응할 수도 있다. 인코더는 최종 불일치 값에 기초하여 선택된 프레임을 선택할 수도 있다. 제 1 프레임과 동시에 디바이스에 의해 수신되는 제 2 오디오 신호의 프레임에 대응하는 제 2 오디오 신호의 다른 샘플들과 비교할 때 제 1 샘플들과 선택된 샘플들 사이의 감소된 차이 때문에, 더 적은 비트들이 사이드 채널을 인코딩하기 위해 사용될 수도 있다. 디바이스의 송신기는 적어도 하나의 인코딩된 신호, 비인과 불일치 값, 상대 이득 파라미터, 레퍼런스 채널 또는 신호 표시자, 또는 이들의 조합을 송신할 수도 있다.
인코더는 레퍼런스 신호, 타겟 신호, 비인과 불일치 값, 상대 이득 파라미터, 제 1 오디오 신호의 특정 프레임의 저대역 파라미터들, 특정 프레임의 고대역 파라미터들, 또는 이들의 조합에 기초하여 적어도 하나의 인코딩된 신호 (예를 들어, 미드 신호, 사이드 신호, 또는 양자 모두) 를 생성할 수도 있다. 특정 프레임은 제 1 프레임에 선행할 수도 있다. 하나 이상의 선행하는 프레임들로부터의 소정의 저대역 파라미터들, 고대역 파라미터들, 또는 이들의 조합은 제 1 프레임의 미드 신호, 사이드 신호, 또는 양자 모두를 인코딩하기 위해 사용될 수도 있다. 저대역 파라미터들, 고대역 파라미터들, 또는 이들의 조합에 기초하여 미드 신호, 사이드 신호, 또는 양자 모두를 인코딩하는 것은 비인과 불일치 값 및 채널간 상대 이득 파라미터의 추정치들을 개선할 수도 있다. 저대역 파라미터들, 고대역 파라미터들, 또는 이들의 조합은 피치 파라미터, 보이싱 파라미터, 코더 타입 파라미터, 저대역 에너지 파라미터, 고대역 에너지 파라미터, 틸트 파라미터, 피치 이득 파라미터, FCB 이득 파라미터, 코딩 모드 파라미터, 보이스 활성도 파라미터, 노이즈 추정치 파라미터, 신호 대 노이즈비 파라미터, 포르만트 파라미터, 스피치/뮤직 판정 파라미터, 비인과 시프트, 채널간 이득 파라미터, 또는 이들의 조합을 포함할 수도 있다. 디바이스의 송신기는 적어도 하나의 인코딩된 신호, 비인과 불일치 값, 상대 이득 파라미터, 레퍼런스 채널 (또는 신호) 표시자, 또는 이들의 조합을 송신할 수도 있다.
도 1 을 참조하면, 시스템의 특정 예시적인 예가 개시되고 일반적으로 100 으로 지정된다. 시스템 (100) 은 네트워크 (120) 를 통해 제 2 디바이스 (106) 에 통신가능하게 커플링된 제 1 디바이스 (104) 를 포함한다. 네트워크 (120) 는 하나 이상의 무선 네트워크들, 하나 이상의 유선 네트워크들, 또는 이들의 조합을 포함할 수도 있다.
제 1 디바이스는 (104) 는 인코더 (114), 송신기 (110), 하나 이상의 입력 인터페이스들 (112), 또는 이들의 조합을 포함할 수도 있다. 입력 인터페이스들 (112) 중의 제 1 입력 인터페이스는 제 1 마이크로폰 (146) 에 커플링될 수도 있다. 입력 인터페이스(들) (112) 중의 제 2 입력 인터페이스는 제 2 마이크로폰 (148) 에 커플링될 수도 있다. 인코더 (114) 는 시간 등화기 (108) 를 포함할 수도 있고 본 명세서에서 설명된 바와 같이, 다중 오디오 신호들을 다운 믹싱 및 인코딩하도록 구성될 수도 있다. 제 1 디바이스 (104) 는 또한, 분석 데이터 (190) 를 저장하도록 구성된 메모리 (153) 를 포함할 수도 있다. 제 2 디바이스 (106) 는 디코더 (118) 를 포함할 수도 있다. 디코더 (118) 는, 다중 채널들을 업 믹싱 및 렌더링하도록 구성되는 시간 밸런서 (124) 를 포함할 수도 있다. 제 2 디바이스 (106) 는 제 1 라우드스피커 (142), 제 2 라우드스피커 (144), 또는 양자 모두에 커플링될 수도 있다.
동작 동안, 제 1 디바이스 (104) 는 제 1 마이크로폰 (146) 으로부터 제 1 입력 인터페이스를 통해 제 1 오디오 신호 (130) (예를 들어, 제 1 채널) 를 수신할 수도 있고 제 2 마이크로폰 (148) 으로부터 제 2 입력 인터페이스를 통해 제 2 오디오 신호 (132) (예를 들어, 제 2 채널) 를 수신할 수도 있다. 본 명세서에서 사용된 바와 같이, "신호" 및 "채널" 은 상호교환가능하게 사용될 수도 있다. 제 1 오디오 신호 (130) 는 우측 채널 또는 좌측 채널 중 하나에 대응할 수도 있다. 제 2 오디오 신호 (132) 는 우측 채널 또는 좌측 채널 중 다른 하나에 대응할 수도 있다. 도 1 의 예에서, 제 1 오디오 신호 (130) 는 레퍼런스 채널이고 제 2 오디오 신호 (132) 는 타겟 채널이다. 따라서, 본 명세서에서 설명된 구현들에 따르면, 제 2 오디오 신호 (132) 는 제 1 오디오 신호 (130) 와 시간적으로 정렬하도록 조정될 수도 있다. 그러나, 이하에 설명된 바와 같이, 다른 구현들에서, 제 1 오디오 신호 (130) 는 타겟 채널일 수도 있고 제 2 오디오 신호 (132) 는 레퍼런스 채널일 수도 있다.
사운드 소스 (152) (예를 들어, 사용자, 스피커, 주변 노이즈, 악기 등) 는 제 2 마이크로폰 (148) 보다 제 1 마이크로폰 (146) 에 더 가까울 수도 있다. 이에 따라, 사운드 소스 (152) 로부터의 오디오 신호는 제 2 마이크로폰 (148) 을 통하는 것보다 더 이른 시간에 제 1 마이크로폰 (146) 을 통해 입력 인터페이스(들) (112) 에서 수신될 수도 있다. 다중 마이크로폰들을 통한 멀티-채널 신호 포착에서의 이러한 자연적 지연은 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이에 시간 시프트를 도입할 수도 있다.
시간 등화기 (108) 는 마이크로폰들 (146, 148) 에서 캡처된 오디오 사이의 시간 오프셋을 추정하도록 구성될 수도 있다. 시간 오프셋은 제 1 오디오 신호 (130) 의 제 1 프레임 (131) (예를 들어, "레퍼런스 프레임") 과 제 2 오디오 신호 (132) 의 제 2 프레임 (133) (예를 들어, "타겟 프레임") 사이의 지연에 기초하여 추정될 수도 있고, 여기서 제 2 프레임 (133) 은 제 1 프레임 (131) 과 실질적으로 유사한 콘텐츠를 포함한다. 예를 들어, 시간 등화기 (108) 는 제 1 프레임 (131) 과 제 2 프레임 (133) 사이의 상호 상관을 결정할 수도 있다. 상호 상관은 2 개의 프레임들의 유사도를 일 프레임의 다른 프레임에 대한 래그의 함수로서 측정할 수도 있다. 상호 상관에 기초하여, 시간 등화기 (108) 는 제 1 프레임 (131) 과 제 2 프레임 (133) 사이의 지연 (예를 들어, 래그) 을 결정할 수도 있다. 시간 등화기 (108) 는 지연 및 이력적 (historical) 지연 데이터에 기초하여 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 시간 오프셋을 추정할 수도 있다.
이력적 데이터는 제 1 마이크로폰 (146) 으로부터 캡처된 프레임들과 제 2 마이크로폰 (148) 으로부터 캡처된 대응하는 프레임들 사이의 지연들을 포함할 수도 있다. 예를 들어, 시간 등화기 (108) 는 제 1 오디오 신호 (130) 와 연관된 이전 프레임들과 제 2 오디오 신호 (132) 와 연관된 대응하는 프레임들 사이의 상호 상관 (예를 들어, 래그) 을 결정할 수도 있다.
각각의 래그는 "비교 값" 으로 표현될 수도 있다. 즉, 비교 값은 제 1 오디오 신호 (130) 의 프레임과 제 2 오디오 신호 (132) 의 대응하는 프레임 사이의 시간 시프트 (k) 를 나타낼 수도 있다. 본 명세서에서의 개시에 따르면, 비교 값은 시간 불일치의 양, 또는 레퍼런스 채널의 제 1 레퍼런스 프레임과 타겟 채널의 대응하는 제 1 타겟 프레임 사이의 유사도 또는 비유사도의 측정치를 추가적으로 나타낼 수도 있다. 일부 구현들에서, 레퍼런스 프레임과 타겟 프레임 사이의 상호 상관 함수는 2 개의 프레임들의 유사도를 일 프레임의 다른 프레임에 대한 래그의 함수로서 측정하는데 사용될 수도 있다. 하나의 구현에 따르면, 이전 프레임들에 대한 비교 값들 (예를 들어, 상호 상관 값들) 은 메모리 (153) 에 저장될 수도 있다. 시간 등화기 (108) 의 평활화기 (190) 는 프레임들의 장기 세트에 걸쳐 비교 값들을 "평활화" (또는 평균화) 하고 그리고 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 시간 오프셋 (예를 들어, "시프트") 을 추정하기 위해 장기 평활화된 비교 값들을 사용할 수도 있다.
예시하기 위해, 가 프레임 N 에 대한 k 의 시프트에서의 비교 값을 나타내면, 프레임 N 은 (최소 시프트) 으로부터 (최대 시프트) 까지의 비교 값들을 가질 수도 있다. 평활화는 장기 평활화된 비교 값 가 로 표현되도록 수행될 수도 있다. 상기 수식에서의 함수 f 는 시프트 (k) 에서의 과거 비교 값들 모두 (또는 서브세트) 의 함수일 수도 있다. 그의 대안적인 표현은 일 수도 있다. 함수들 f 또는 g 는 각각 간단한 유한 임펄스 응답 (FIR) 필터들 또는 무한 임펄스 응답 (IIR) 필터들일 수도 있다. 예를 들어, 함수 g 는 장기 평활화된 비교 값 가 로 표현되도록 단일 탭 IIR 필터일 수도 있으며, 여기서 이다. 따라서, 장기 평활화된 비교 값 는 프레임 N 에서의 순간 비교 값 와 하나 이상의 이전 프레임들에 대한 장기 평활화된 비교 값들 의 가중된 혼합 (weighted mixture) 에 기초할 수도 있다. 의 값이 증가함에 따라, 장기 평활화된 비교 값에서의 평활화의 양이 증가한다. 일부 구현들에서, 비교 값들은 정규화된 상호 상관 값들일 수도 있다. 다른 구현들에서, 비교 값들은 비정규화된 상호 상관 값들일 수도 있다.
상기 설명된 평활화 기법들은 보이싱된 프레임들, 언보이싱된 프레임들, 및 트랜지션 프레임들 사이의 시프트 추정치를 실질적으로 정규화할 수도 있다. 정규화된 시프트 추정치들은 프레임 경계들에서 샘플 반복 및 아티팩트 스킵핑을 감소시킬 수도 있다. 추가적으로, 정규화된 시프트 추정치들은 감소된 사이드 채널 에너지들을 발생시킬 수도 있으며, 이는 코딩 효율을 개선할 수도 있다.
시간 등화기 (108) 는 제 2 오디오 신호 (132) (예를 들어, "타겟") 에 대한 제 1 오디오 신호 (130) (예를 들어, "레퍼런스") 의 시프트 (예를 들어, 비인과 불일치 또는 비인과 시프트) 를 나타내는 최종 불일치 값 (116) (예를 들어, 비인과 불일치 값) 을 결정할 수도 있다. 최종 불일치 값 (116) 은 순간 비교 값 및 장기 평활화된 비교 에 기초할 수도 있다. 예를 들어, 상기 설명된 평활화 동작은 도 5 에 대하여 설명된 바와 같이, 잠정적 불일치 값에 대해, 보간된 불일치 값에 대해, 보정된 불일치 값에 대해, 또는 이들의 조합에 수행될 수도 있다. 제 1 불일치 값 (116) 은 도 5 에 대하여 설명된 바와 같이, 잠정적 불일치 값, 보간된 불일치 값, 및 보정된 불일치 값에 기초할 수도 있다. 최종 불일치 값 (116) 의 제 1 값 (예를 들어, 포지티브 값) 은 제 2 오디오 신호 (132) 가 제 1 오디오 신호 (130) 에 대해 지연됨을 나타낼 수도 있다. 최종 불일치 값 (116) 의 제 2 값 (예를 들어, 네거티브 값) 은 제 1 오디오 신호 (130) 가 제 2 오디오 신호 (132) 에 대해 지연됨을 나타낼 수도 있다. 최종 불일치 값 (116) 의 제 3 값 (예를 들어, 0) 은 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이에 지연 없음을 나타낼 수도 있다.
일부 구현들에서, 최종 불일치 값 (116) 의 제 3 값 (예를 들어, 0) 은 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연이 부호를 스위칭하였음을 나타낼 수도 있다. 예를 들어, 제 1 오디오 신호 (130) 의 제 1 특정 프레임은 제 1 프레임 (131) 에 선행할 수도 있다. 제 1 특정 프레임 및 제 2 오디오 신호 (132) 의 제 2 특정 프레임은 사운드 소스 (152) 에 의해 방출된 동일한 사운드에 대응할 수도 있다. 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연은 제 2 특정 프레임에 대하여 지연된 제 1 특정 프레임을 갖는 것으로부터 제 1 프레임 (131) 에 대하여 지연된 제 2 프레임 (133) 을 갖는 것으로 스위칭할 수도 있다. 대안적으로, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연은 제 1 특정 프레임에 대하여 지연된 제 2 특정 프레임을 갖는 것으로부터 제 2 프레임 (133) 에 대하여 지연된 제 1 프레임 (131) 을 갖는 것으로 스위칭할 수도 있다. 시간 등화기 (108) 는, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연이 부호를 스위칭하였음을 결정하는 것에 응답하여, 제 3 값 (예를 들어, 0) 을 나타내도록 최종 불일치 값 (116) 을 설정할 수도 있다.
시간 등화기 (108) 는 최종 불일치 값 (116) 에 기초하여 레퍼런스 신호 표시자 (164) 를 생성할 수도 있다. 예를 들어, 시간 등화기 (108) 는 최종 불일치 값 (116) 이 제 1 값 (예를 들어, 포지티브 값) 을 나타냄을 결정하는 것에 응답하여, 제 1 오디오 신호 (130) 가 "레퍼런스" 신호임을 나타내는 제 1 값 (예를 들어, 0) 을 갖도록 레퍼런스 신호 표시자 (164) 를 생성할 수도 있다. 시간 등화기 (108) 는, 최종 불일치 값 (116) 이 제 1 값 (예를 들어, 포지티브 값) 을 나타냄을 결정하는 것에 응답하여, 제 2 오디오 신호 (132) 가 "타겟" 신호에 대응한다고 결정할 수도 있다. 대안적으로, 시간 등화기 (108) 는, 최종 불일치 값 (116) 이 제 2 값 (예를 들어, 네거티브 값) 을 나타냄을 결정하는 것에 응답하여, 제 2 오디오 신호 (132) 가 "레퍼런스" 신호임을 나타내는 제 2 값 (예를 들어, 1) 을 갖도록 레퍼런스 신호 표시자 (164) 를 생성할 수도 있다. 시간 등화기 (108) 는, 최종 불일치 값 (116) 이 제 2 값 (예를 들어, 네거티브 값) 을 나타냄을 결정하는 것에 응답하여 제 1 오디오 신호 (130) 가 "타겟" 신호에 대응한다고 결정할 수도 있다. 시간 등화기 (108) 는, 최종 불일치 값 (116) 이 제 3 값 (예를 들어, 0) 을 나타냄을 결정하는 것에 응답하여, 제 1 오디오 신호 (130) 가 "레퍼런스" 신호임을 나타내는 제 1 값 (예를 들어, 0) 을 갖도록 레퍼런스 신호 표시자 (164) 를 생성할 수도 있다. 시간 등화기 (108) 는, 최종 불일치 값 (116) 이 제 3 값 (예를 들어, 0) 을 나타냄을 결정하는 것에 응답하여 제 2 오디오 신호 (132) 가 "타겟" 신호에 대응한다고 결정할 수도 있다. 대안적으로, 시간 등화기 (108) 는 최종 불일치 값 (116) 이 제 3 값 (예를 들어, 0) 을 나타냄을 결정하는 것에 응답하여, 제 2 오디오 신호 (132) 가 "레퍼런스" 신호임을 나타내는 제 2 값 (예를 들어, 1) 을 갖도록 레퍼런스 신호 표시자 (164) 를 생성할 수도 있다. 시간 등화기 (108) 는, 최종 불일치 값 (116) 이 제 3 값 (예를 들어, 0) 을 나타냄을 결정하는 것에 응답하여 제 1 오디오 신호 (130) 가 "타겟" 신호에 대응한다고 결정할 수도 있다. 일부 구현들에서, 시간 등화기 (108) 는, 최종 불일치 값 (116) 이 제 3 값 (예를 들어, 0) 을 나타냄을 결정하는 것에 응답하여, 레퍼런스 신호 표시자 (164) 를 변경되지 않게 남겨 둘 수도 있다. 예를 들어, 레퍼런스 신호 표시자 (164) 는 제 1 오디오 신호 (130) 의 제 1 특정 프레임에 대응하는 레퍼런스 신호 표시자와 동일할 수도 있다. 시간 등화기 (108) 는 최종 불일치 값 (116) 의 절대 값을 나타내는 비인과 불일치 값 (162) 을 생성할 수도 있다.
시간 등화기 (108) 는 "타겟" 신호의 샘플들에 기초하여 및 "레퍼런스" 신호의 샘플들에 기초하여, 이득 파라미터 (160) (예를 들어, 코덱 이득 파라미터) 를 생성할 수도 있다. 예를 들어, 시간 등화기 (108) 는 비인과 불일치 값 (162) 에 기초하여 제 2 오디오 신호 (132) 의 샘플들을 선택할 수도 있다. 대안적으로, 시간 등화기 (108) 는 비인과 불일치 값 (162) 에 독립적으로 제 2 오디오 신호 (132) 의 샘플들을 선택할 수도 있다. 시간 등화기 (108) 는 제 1 오디오 신호 (130) 가 레퍼런스 신호임을 결정하는 것에 응답하여, 제 1 오디오 신호 (130) 의 제 1 프레임 (131) 의 제 1 샘플들에 기초하여 선택된 샘플들의 이득 파라미터 (160) 를 결정할 수도 있다. 대안적으로, 시간 등화기 (108) 는 제 2 오디오 신호 (132) 가 레퍼런스 신호임을 결정하는 것에 응답하여, 선택된 샘플들에 기초하여 제 1 샘플들의 이득 파라미터 (160) 를 결정할 수도 있다. 예로서, 이득 파라미터 (160) 는 다음 수식들 중 하나에 기초할 수도 있으며:
여기서, gD 는 다운 믹스 프로세싱을 위한 상대 이득 파라미터 (160) 에 대응하고, Ref(n) 은 "레퍼런스" 신호의 샘플들에 대응하고, N1 은 제 1 프레임 (131) 의 비인과 불일치 값 (162) 에 대응하고, 그리고 Targ(n+N1) 은 "타겟" 신호의 샘플들에 대응한다. 이득 파라미터 (160) (gD) 는 예를 들어, 수식들 1a - 1f 중 하나에 기초하여, 프레임들 사이의 이득에서의 큰 급등 (jump) 들을 회피하기 위해 장기 평활화/히스테리시스 로직을 통합하도록, 수정될 수도 있다. 타겟 신호가 제 1 오디오 신호 (130) 를 포함할 경우, 제 1 샘플들은 타겟 신호의 샘플들을 포함할 수도 있고 선택된 샘플들은 레퍼런스 신호의 샘플들을 포함할 수도 있다. 타겟 신호가 제 2 오디오 신호 (132) 를 포함할 경우, 제 1 샘플들은 레퍼런스 신호의 샘플들을 포함할 수도 있고 선택된 샘플들은 타겟 신호의 샘플들을 포함할 수도 있다.
일부 구현들에서, 시간 등화기 (108) 는 레퍼런스 신호 표시자 (164) 와 상관없이, 제 1 오디오 신호 (130) 를 레퍼런스 신호로서 취급하는 것 및 제 2 오디오 신호 (132) 를 타겟 신호로서 취급하는 것에 기초하여 이득 파라미터 (160) 를 생성할 수도 있다. 예를 들어, 시간 등화기 (108) 는 수식들 1a - 1f 중 하나에 기초하여 이득 파라미터 (160) 를 생성할 수도 있으며, 여기서, Ref(n) 은 제 1 오디오 신호 (130) 의 샘플들 (예를 들어, 제 1 샘플들) 에 대응하고 Targ(n+N1) 은 제 2 오디오 신호 (132) 의 샘플들 (예를 들어, 선택된 샘플들) 에 대응한다. 대체 구현들에서, 시간 등화기 (108) 는 레퍼런스 신호 표시자 (164) 와 상관없이, 제 2 오디오 신호 (132) 를 레퍼런스 신호로서 취급하는 것 및 제 1 오디오 신호 (130) 를 타겟 신호로서 취급하는 것에 기초하여 이득 파라미터 (160) 를 생성할 수도 있다. 예를 들어, 시간 등화기 (108) 는 수식들 1a - 1f 중 하나에 기초하여 이득 파라미터 (160) 를 생성할 수도 있으며, 여기서, Ref(n) 은 제 2 오디오 신호 (132) 의 샘플들 (예를 들어, 선택된 샘플들) 에 대응하고 Targ(n+N1) 은 제 1 오디오 신호 (130) 의 샘플들 (예를 들어, 제 1 샘플들) 에 대응한다.
시간 등화기 (108) 는 제 1 샘플들, 선택된 샘플들, 및 다운 믹스 프로세싱을 위한 상대 이득 파라미터 (160) 에 기초하여 하나 이상의 인코딩된 신호들 (102) (예를 들어, 미드 채널, 사이드 채널, 또는 양자 모두) 을 생성할 수도 있다. 예를 들어, 시간 등화기 (108) 는 다음 수식들 중 하나에 기초하여 미드 신호를 생성할 수도 있으며:
여기서, M 은 미드 채널에 대응하고, gD 는 다운믹스 프로세싱을 위한 상대 이득 파라미터 (160) 에 대응하고, Ref(n) 은 "레퍼런스" 신호의 샘플들에 대응하고, N1 은 제 1 프레임 (131) 의 비인과 불일치 값 (162) 에 대응하고, 그리고 Targ(n+N1) 은 "타겟" 신호의 샘플들에 대응한다.
시간 등화기 (108) 는 다음 수식들 중 하나에 기초하여 사이드 채널을 생성할 수도 있으며:
여기서, S 는 사이드 채널에 대응하고, gD 는 다운 믹스 프로세싱을 위한 상대 이득 파라미터 (160) 에 대응하고, Ref(n) 은 "레퍼런스" 신호의 샘플들에 대응하고, N1 은 제 1 프레임 (131) 의 비인과 불일치 값 (162) 에 대응하고, 그리고 Targ(n+N1) 은 "타겟" 신호의 샘플들에 대응한다.
송신기 (110) 는 인코딩된 신호들 (102) (예를 들어, 미드 채널, 사이드 채널, 또는 양자 모두), 레퍼런스 신호 표시자 (164), 비인과 불일치 값 (162), 이득 파라미터 (160), 또는 이들의 조합을, 네트워크 (120) 를 통해, 제 2 디바이스 (106) 에 송신할 수도 있다. 일부 구현들에서, 송신기 (110) 는 인코딩된 신호들 (102) (예를 들어, 미드 채널, 사이드 채널, 또는 양자 모두), 레퍼런스 신호 표시자 (164), 비인과 불일치 값 (162), 이득 파라미터 (160), 또는 이들의 조합을, 나중의 추가 프로세싱 또는 디코딩을 위해 네트워크 (120) 의 디바이스 또는 로컬 디바이스에 저장할 수도 있다.
디코더 (118) 는 인코딩된 신호들 (102) 을 디코딩할 수도 있다. 시간 밸런서 (124) 는 (예를 들어, 제 1 오디오 신호 (130) 에 대응하는) 제 1 출력 신호 (126), (예를 들어, 제 2 오디오 신호 (132) 에 대응하는) 제 2 출력 신호 (128), 또는 양자 모두를 생성하기 위해 업 믹싱을 수행할 수도 있다. 제 2 디바이스 (106) 는 제 1 라우드스피커 (142) 를 통해 제 1 출력 신호 (126) 를 출력할 수도 있다. 제 2 디바이스 (106) 는 제 2 라우드스피커 (144) 를 통해 제 2 출력 신호 (128) 를 출력할 수도 있다.
시스템 (100) 은 따라서 시간 등화기 (108) 로 하여금, 미드 신호보다 더 적은 비트들을 사용하여 사이드 채널을 인코딩하게 할 수도 있다. 제 1 오디오 신호 (130) 의 제 1 프레임 (131) 의 제 1 샘플들 및 제 2 오디오 신호 (132) 의 선택된 샘플들은 사운드 소스 (152) 에 의해 방출된 동일한 사운드에 대응할 수도 있고, 이런 이유로, 제 1 샘플들과 선택된 샘플들 사이의 차이가 제 1 샘플들과 제 2 오디오 신호 (132) 의 다른 샘플들 사이보다 더 낮을 수도 있다. 사이드 채널은 제 1 샘플들과 선택된 샘플들 사이의 차이에 대응할 수도 있다.
도 2 를 참조하면, 시스템의 특정 예시적인 구현이 개시되고 일반적으로 200 으로 지정된다. 시스템 (200) 은 네트워크 (120) 를 통해 제 2 디바이스 (106) 에 커플링된 제 1 디바이스 (204) 를 포함한다. 제 1 디바이스 (204) 는 도 1 의 제 1 디바이스 (104) 에 대응할 수도 있다. 시스템 (200) 은, 제 1 디바이스 (204) 가 2 초과의 마이크로폰들에 커플링된다는 점에서 도 1 의 시스템 (100) 과는 상이하다. 예를 들어, 제 1 디바이스 (204) 는 제 1 마이크로폰 (146), 제 N 마이크로폰 (248), 및 하나 이상의 추가적인 마이크로폰들 (예를 들어, 도 1 의 제 2 마이크로폰 (148)) 에 커플링될 수도 있다. 제 2 디바이스 (106) 는 제 1 라우드스피커 (142), 제 Y 라우드스피커 (244), 하나 이상의 추가적인 스피커들 (예를 들어, 제 2 라우드스피커 (144)), 또는 이들의 조합에 커플링될 수도 있다. 제 1 디바이스 (204) 는 인코더 (214) 를 포함할 수도 있다. 인코더 (214) 는 도 1 의 인코더 (114) 에 대응할 수도 있다. 인코더 (214) 는 하나 이상의 시간 등화기들 (208) 을 포함할 수도 있다. 예를 들어, 시간 등화기(들) (208) 는 도 1 의 시간 등화기 (108) 를 포함할 수도 있다.
동작 동안, 제 1 디바이스 (204) 는 2 초과의 오디오 신호들을 수신할 수도 있다. 예를 들어, 제 1 디바이스 (204) 는 제 1 마이크로폰 (146) 을 통해 제 1 오디오 신호 (130) 를, 제 N 마이크로폰 (248) 을 통해 제 N 오디오 신호 (232) 를, 그리고 추가적인 마이크로폰들 (예를 들어, 제 2 마이크로폰 (148)) 을 통해 하나 이상의 추가적인 오디오 신호들 (예를 들어, 제 2 오디오 신호 (132)) 을 수신할 수도 있다.
시간 등화기(들) (208) 는 하나 이상의 레퍼런스 신호 표시자들 (264), 최종 불일치 값들 (216), 비인과 불일치 값들 (262), 이득 파라미터들 (260), 인코딩된 신호들 (202), 또는 이들의 조합을 생성할 수도 있다. 예를 들어, 시간 등화기(들) (208) 는 제 1 오디오 신호 (130) 가 레퍼런스 신호이고 그리고 제 N 오디오 신호 (232) 및 추가적인 오디오 신호들의 각각이 타겟 신호임을 결정할 수도 있다. 시간 등화기(들) (208) 는 제 1 오디오 신호 (130) 및 제 N 오디오 신호 (232) 및 추가적인 오디오 신호들의 각각에 대응하는 레퍼런스 신호 표시자 (164), 최종 불일치 값들 (216), 비인과 불일치 값들 (262), 이득 파라미터들 (260), 및 인코딩된 신호들 (202) 을 생성할 수도 있다.
레퍼런스 신호 표시자들 (264) 은 레퍼런스 신호 표시자 (164) 를 포함할 수도 있다. 최종 불일치 값들 (216) 은 제 1 오디오 신호 (130) 에 대한 제 2 오디오 신호 (132) 의 시프트를 나타내는 최종 불일치 값 (116), 제 1 오디오 신호 (130) 에 대한 제 N 오디오 신호 (232) 의 시프트를 나타내는 제 2 최종 불일치 값, 또는 양자 모두를 포함할 수도 있다. 비인과 불일치 값들 (262) 은 최종 불일치 값 (116) 의 절대 값에 대응하는 비인과 불일치 값 (162), 제 2 최종 불일치 값의 절대 값에 대응하는 제 2 비인과 불일치 값, 또는 양자 모두를 포함할 수도 있다. 이득 파라미터들 (260) 은 제 2 오디오 신호 (132) 의 선택된 샘플들의 이득 파라미터 (160), 제 N 오디오 신호 (232) 의 선택된 샘플들의 제 2 이득 파라미터, 또는 양자 모두를 포함할 수도 있다. 인코딩된 신호들 (202) 은 인코딩된 신호들 (102) 중 적어도 하나를 포함할 수도 있다. 예를 들어, 인코딩된 신호들 (202) 은 제 1 오디오 신호 (130) 의 제 1 샘플들 및 제 2 오디오 신호 (132) 의 선택된 샘플들에 대응하는 사이드 채널, 제 1 샘플들 및 제 N 오디오 신호 (232) 의 선택된 샘플들에 대응하는 제 2 사이드 채널, 또는 양자 모두를 포함할 수도 있다. 인코딩된 신호들 (202) 은 제 1 샘플들, 제 2 오디오 신호 (132) 의 선택된 샘플들, 및 제 N 오디오 신호 (232) 의 선택된 샘플들에 대응하는 미드 채널을 포함할 수도 있다.
일부 구현들에서, 시간 등화기(들) (208) 는 도 11 을 참조하여 설명된 바와 같이, 다중 레퍼런스 신호들 및 대응하는 타겟 신호들을 결정할 수도 있다. 예를 들어, 레퍼런스 신호 표시자들 (264) 은 레퍼런스 신호 및 타겟 신호의 각각의 쌍에 대응하는 레퍼런스 신호 표시자를 포함할 수도 있다. 예시하기 위해, 레퍼런스 신호 표시자들 (264) 은 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132) 에 대응하는 레퍼런스 신호 표시자 (164) 를 포함할 수도 있다. 최종 불일치 값들 (216) 은 레퍼런스 신호 및 타겟 신호의 각각의 쌍에 대응하는 최종 불일치 값을 포함할 수도 있다. 예를 들어, 최종 불일치 값들 (216) 은 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132) 에 대응하는 최종 시프트 값 (116) 을 포함할 수도 있다. 비인과 불일치 값들 (262) 은 레퍼런스 신호 및 타겟 신호의 각각의 쌍에 대응하는 비인과 불일치 값을 포함할 수도 있다. 예를 들어, 비인과 불일치 값들 (262) 은 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132) 에 대응하는 비인과 불일치 값 (162) 을 포함할 수도 있다. 이득 파라미터들 (260) 은 레퍼런스 신호 및 타겟 신호의 각각의 쌍에 대응하는 이득 파라미터를 포함할 수도 있다. 예를 들어, 이득 파라미터들 (260) 은 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132) 에 대응하는 이득 파라미터 (160) 를 포함할 수도 있다. 인코딩된 신호들 (202) 은 레퍼런스 신호 및 타겟 신호의 각각의 쌍에 대응하는 미드 채널 및 사이드 채널을 포함할 수도 있다. 예를 들어, 인코딩된 신호들 (202) 은 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132) 에 대응하는 인코딩된 신호들 (102) 을 포함할 수도 있다.
송신기 (110) 는 레퍼런스 신호 표시자들 (264), 비인과 불일치 값들 (262), 이득 파라미터들 (260), 인코딩된 신호들 (202), 또는 이들의 조합을, 네트워크 (120) 를 통해, 제 2 디바이스 (106) 에 송신할 수도 있다. 디코더 (118) 는 레퍼런스 신호 표시자들 (264), 비인과 불일치 값들 (262), 이득 파라미터들 (260), 인코딩된 신호들 (202), 또는 이들의 조합에 기초하여 하나 이상의 출력 신호들을 생성할 수도 있다. 예를 들어, 디코더 (118) 는 제 1 라우드스피커 (142) 를 통해 제 1 출력 신호 (226) 를, 제 Y 라우드스피커 (244) 를 통해 제 Y 출력 신호 (228) 를, 하나 이상의 추가적인 라우드스피커들 (예를 들어, 제 2 라우드스피커 (144)) 을 통해 하나 이상의 추가적인 출력 신호들 (예를 들어, 제 2 출력 신호 (128)) 을, 또는 이들의 조합을 출력할 수도 있다.
따라서, 시스템 (200) 은 시간 등화기(들) (208) 로 하여금, 2 초과의 오디오 신호들을 인코딩하게 할 수도 있다. 예를 들어, 인코딩된 신호들 (202) 은 비인과 불일치 값들 (262) 에 기초하여 사이드 채널들을 생성함으로써 대응하는 미드 채널보다 더 적은 비트들을 사용하여 인코딩되는 다중 사이드 채널들을 포함할 수도 있다.
도 3 을 참조하면, 샘플들의 예시적인 예들이 도시되고 일반적으로 300 으로 지정된다. 샘플들 (300) 의 적어도 서브세트는 본 명세서에서 설명된 바와 같이, 제 1 디바이스 (104) 에 의해 인코딩될 수도 있다. 샘플들 (300) 은 제 1 오디오 신호 (130) 에 대응하는 제 1 샘플들 (320), 제 2 오디오 신호 (132) 에 대응하는 제 2 샘플들 (350), 또는 양자 모두를 포함할 수도 있다. 제 1 샘플들 (320) 은 샘플 (322), 샘플 (324), 샘플 (326), 샘플 (328), 샘플 (330), 샘플 (332), 샘플 (334), 샘플 (336), 하나 이상의 추가적인 샘플들, 또는 이들의 조합을 포함할 수도 있다. 제 2 샘플들 (350) 은 샘플 (352), 샘플 (354), 샘플 (356), 샘플 (358), 샘플 (360), 샘플 (362), 샘플 (364), 샘플 (366), 하나 이상의 추가적인 샘플들, 또는 이들의 조합을 포함할 수도 있다.
제 1 오디오 신호 (130) 는 복수의 프레임들 (예를 들어, 프레임 (302), 프레임 (304), 프레임 (306), 또는 이들의 조합) 에 대응할 수도 있다. 복수의 프레임들의 각각은 제 1 샘플들 (320) 의 (예를 들어, 32 kHz 에서의 640 샘플들 또는 48 kHz 에서의 960 샘플들과 같은, 20 ms 에 대응하는) 샘플들의 서브세트에 대응할 수도 있다. 예를 들어, 프레임 (302) 은 샘플 (322), 샘플 (324), 하나 이상의 추가적인 샘플들, 또는 이들의 조합에 대응할 수도 있다. 프레임 (304) 은 샘플 (326), 샘플 (328), 샘플 (330), 샘플 (332), 하나 이상의 추가적인 샘플들, 또는 이들의 조합에 대응할 수도 있다. 프레임 (306) 은 샘플 (334), 샘플 (336), 하나 이상의 추가적인 샘플들, 또는 이들의 조합에 대응할 수도 있다.
샘플 (322) 은 샘플 (352) 과 대략 동시에 도 1 의 입력 인터페이스(들) (112) 에서 수신될 수도 있다. 샘플 (324) 은 샘플 (354) 과 대략 동시에 도 1 의 입력 인터페이스(들) (112) 에서 수신될 수도 있다. 샘플 (326) 은 샘플 (356) 과 대략 동시에 도 1 의 입력 인터페이스(들) (112) 에서 수신될 수도 있다. 샘플 (328) 은 샘플 (358) 과 대략 동시에 도 1 의 입력 인터페이스(들) (112) 에서 수신될 수도 있다. 샘플 (330) 은 샘플 (360) 과 대략 동시에 도 1 의 입력 인터페이스(들) (112) 에서 수신될 수도 있다. 샘플 (332) 은 샘플 (362) 과 대략 동시에 도 1 의 입력 인터페이스(들) (112) 에서 수신될 수도 있다. 샘플 (334) 은 샘플 (364) 과 대략 동시에 도 1 의 입력 인터페이스(들) (112) 에서 수신될 수도 있다. 샘플 (336) 은 샘플 (366) 과 대략 동시에 도 1 의 입력 인터페이스(들) (112) 에서 수신될 수도 있다.
최종 불일치 값 (116) 의 제 1 값 (예를 들어, 포지티브 값) 은 제 2 오디오 신호 (132) 가 제 1 오디오 신호 (130) 에 대해 지연됨을 나타낼 수도 있다. 예를 들어, 최종 불일치 값 (116) 의 제 1 값 (예를 들어, +X ms 또는 +Y 샘플들, 여기서, X 및 Y 는 포지티브 실수들을 포함한다) 은 프레임 (304) (예를 들어, 샘플들 (326-332)) 이 샘플들 (358-364) 에 대응함을 나타낼 수도 있다. 샘플들 (326-332) 및 샘플들 (358-364) 은 사운드 소스 (152) 로부터 방출된 동일한 사운드에 대응할 수도 있다. 샘플들 (358-364) 은 제 2 오디오 신호 (132) 의 프레임 (344) 에 대응할 수도 있다. 도 1 내지 도 14 중 하나 이상에 크로스 해칭으로의 샘플들의 예시는 샘플들이 동일한 사운드에 대응함을 나타낼 수도 있다. 예를 들어, 샘플들 (326-332) 및 샘플들 (358-364) 은 샘플들 (326-332) (예를 들어, 프레임 (304)) 및 샘플들 (358-364) (예를 들어, 프레임 (344)) 이 사운드 소스 (152) 로부터 방출된 동일한 사운드에 대응함을 나타내기 위해 도 3 에 크로스 해칭으로 예시된다.
도 3 에 도시된 바와 같은, Y 샘플들의 시간 오프셋은 예시적임이 이해되어야 한다. 예를 들어, 시간 오프셋은 0 이상인 샘플들의 수 (Y) 에 대응할 수도 있다. 시간 오프셋 Y = 0 샘플들인 제 1 경우에, (예를 들어, 프레임 (304) 에 대응하는) 샘플들 (326-332) 및 (예를 들어, 프레임 (344) 에 대응하는) 샘플들 (358-364) 은 어떤 프레임 오프셋도 없이 높은 유사도를 나타낼 수도 있다. 시간 오프셋 Y = 2 샘플들인 제 2 경우에, 프레임 (304) 및 프레임 (344) 은 2 샘플들만큼 오프셋될 수도 있다. 이 경우에, 제 1 오디오 신호 (130) 는 입력 인터페이스(들) (112) 에서 Y = 2 샘플들 또는 X = (2/Fs) ms 만큼 제 2 오디오 신호 (132) 이전에 수신될 수도 있으며, 여기서, Fs 는 kHz 단위의 샘플 레이트에 대응한다. 일부 경우들에서, 시간 오프셋 (Y) 은 비정수 값, 예를 들어, 32 kHz 에서의 X = 0.05 ms 에 대응하는 Y = 1.6 샘플들을 포함할 수도 있다.
도 1 의 시간 등화기 (108) 는 도 1 을 참조하여 설명된 바와 같이, 샘플들 (326-332) 및 샘플들 (358-364) 을 인코딩함으로써 인코딩된 신호들 (102) 을 생성할 수도 있다. 시간 등화기 (108) 는 제 1 오디오 신호 (130) 가 레퍼런스 신호에 대응하고 그리고 제 2 오디오 신호 (132) 가 타겟 신호에 대응함을 결정할 수도 있다.
도 4 를 참조하면, 샘플들의 예시적인 예들이 도시되고 일반적으로 400 으로 지정된다. 예들 (400) 은 제 1 오디오 신호 (130) 가 제 2 오디오 신호 (132) 에 대해 지연된다는 점에서, 예들 (300) 과는 상이하다.
최종 불일치 값 (116) 의 제 2 값 (예를 들어, 네거티브 값) 은 제 1 오디오 신호 (130) 가 제 2 오디오 신호 (132) 에 대해 지연됨을 나타낼 수도 있다. 예를 들어, 최종 불일치 값 (116) 의 제 2 값 (예를 들어, -X ms 또는 -Y 샘플들, 여기서, X 및 Y 는 포지티브 실수들을 포함한다) 은 프레임 (304) (예를 들어, 샘플들 (326-332)) 이 샘플들 (354-360) 에 대응함을 나타낼 수도 있다. 샘플들 (354-360) 은 제 2 오디오 신호 (132) 의 프레임 (344) 에 대응할 수도 있다. 샘플들 (354-360) (예를 들어, 프레임 (344)) 및 샘플들 (326-332) (예를 들어, 프레임 (304)) 은 사운드 소스 (152) 로부터 방출된 동일한 사운드에 대응할 수도 있다.
도 4 에 도시된 바와 같은, -Y 샘플들의 시간 오프셋은 예시적임이 이해되어야 한다. 예를 들어, 시간 오프셋은 0 이하인 샘플들의 수 (-Y) 에 대응할 수도 있다. 시간 오프셋 Y = 0 샘플들인 제 1 경우에, (예를 들어, 프레임 (304) 에 대응하는) 샘플들 (326-332) 및 (예를 들어, 프레임 (344) 에 대응하는) 샘플들 (354-360) 은 어떤 프레임 오프셋도 없이 높은 유사도를 나타낼 수도 있다. 시간 오프셋 Y = -6 샘플들인 제 2 경우에, 프레임 (304) 및 프레임 (344) 은 6 샘플들만큼 오프셋될 수도 있다. 이 경우에, 제 1 오디오 신호 (130) 는 입력 인터페이스(들) (112) 에서 Y = -6 샘플들 또는 X = (-6/Fs) ms 만큼 제 2 오디오 신호 (132) 에 후속하여 수신될 수도 있으며, 여기서, Fs 는 kHz 단위의 샘플 레이트에 대응한다. 일부 경우들에서, 시간 오프셋 (Y) 은 비정수 값, 예를 들어, 32 kHz 에서의 X = -0.1 ms 에 대응하는 Y = -3.2 샘플들을 포함할 수도 있다.
도 1 의 시간 등화기 (108) 는 도 1 을 참조하여 설명된 바와 같이, 샘플들 (354-360) 및 샘플들 (326-332) 을 인코딩함으로써 인코딩된 신호들 (102) 을 생성할 수도 있다. 시간 등화기 (108) 는 제 2 오디오 신호 (132) 가 레퍼런스 신호에 대응하고 그리고 제 1 오디오 신호 (130) 가 타겟 신호에 대응함을 결정할 수도 있다. 특히, 시간 등화기 (108) 는 도 5 를 참조하여 설명된 바와 같이, 최종 불일치 값 (116) 으로부터 비인과 불일치 값 (162) 을 추정할 수도 있다. 시간 등화기 (108) 는 최종 불일치 값 (116) 의 부호에 기초하여, 제 1 오디오 신호 (130) 또는 제 2 오디오 신호 (132) 중 하나를 레퍼런스 신호로서, 그리고 제 1 오디오 신호 (130) 또는 제 2 오디오 신호 (132) 중 다른 하나를 타겟 신호로서 식별 (예를 들어, 지정) 할 수도 있다.
도 5 를 참조하면, 시간 등화기 및 메모리의 예시적인 예가 도시되고 일반적으로 500 으로 지정된다. 시스템 (500) 은 도 1 의 시스템 (100) 에 통합될 수도 있다. 예를 들어, 도 1 의 시스템 (100), 제 1 디바이스 (104), 또는 양자 모두는 시스템 (500) 의 하나 이상의 컴포넌트들을 포함할 수도 있다. 시간 등화기 (108) 는 리샘플러 (504), 신호 비교기 (506), 보간기 (510), 시프트 리파이너 (511), 시프트 변경 분석기 (512), 절대 시프트 생성기 (513), 레퍼런스 신호 지정기 (508), 이득 파라미터 생성기 (514), 신호 생성기 (516), 또는 이들의 조합을 포함할 수도 있다.
동작 동안, 리샘플러 (504) 는 하나 이상의 리샘플링된 신호들을 생성할 수도 있다. 예를 들어, 리샘플러 (504) 는 리샘플링 (예를 들어, 다운 샘플링 또는 업 샘플링) 팩터 (D) (예를 들어, ≥ 1) 에 기초하여 제 1 오디오 신호 (130) 를 리샘플링 (예를 들어, 다운 샘플링 또는 업 샘플링) 함으로써, 제 1 리샘플링된 신호 (530) 를 생성할 수도 있다. 리샘플러 (504) 는 리샘플링 팩터 (D) 에 기초하여 제 2 오디오 신호 (132) 를 리샘플링함으로써 제 2 리샘플링된 신호 (532) 를 생성할 수도 있다. 리샘플러 (504) 는 제 1 리샘플링된 신호 (530), 제 2 리샘플링된 신호 (532), 또는 양자 모두를, 신호 비교기 (506) 에 제공할 수도 있다. 제 1 오디오 신호 (130) 는 도 3 의 샘플들 (320) 을 생성하기 위해 제 1 샘플 레이트 (Fs) 에서 샘플링될 수도 있다. 제 1 샘플 레이트 (Fs) 는 광대역 (WB) 대역폭과 연관된 제 1 레이트 (예를 들어, 16 킬로헤르츠 (kHz)), 초 광대역 (SWB) 대역폭과 연관된 제 2 레이트 (예를 들어, 32 kHz), 풀 대역 (FB) 대역폭과 연관된 제 3 레이트 (예를 들어, 48 kHz), 또는 다른 레이트에 대응할 수도 있다. 제 2 오디오 신호 (132) 는 도 3 의 제 2 샘플들 (350) 을 생성하기 위해 제 1 샘플 레이트 (Fs) 에서 샘플링될 수도 있다.
신호 비교기 (506) 는 도 6 을 참조하여 추가로 설명된 바와 같이, 비교 값들 (534) (예를 들어, 차이 값들, 유사도 값들, 코히어런스 값들, 또는 상호 상관 값들), 잠정적 불일치 값 (536), 또는 양자 모두를 생성할 수도 있다. 예를 들어, 신호 비교기 (506) 는 도 6 을 참조하여 추가로 설명된 바와 같이, 제 2 리샘플링된 신호 (532) 에 적용된 복수의 불일치 값들 및 제 1 리샘플링된 신호 (530) 에 기초하여 비교 값들 (534) 을 생성할 수도 있다. 신호 비교기 (506) 는 도 6 을 참조하여 추가로 설명된 바와 같이, 비교 값들 (534) 에 기초하여 잠정적 불일치 값 (536) 을 결정할 수도 있다. 하나의 구현에 따르면, 신호 비교기 (506) 는 리샘플링된 신호들 (530, 532) 의 이전 프레임들에 대한 비교 값들을 취출할 수도 있고 그리고 이전 프레임들에 대한 비교 값들을 사용하여 장기 평활화 동작에 기초하여 비교 값들 (534) 을 수정할 수도 있다. 예를 들어, 비교 값들 (534) 은 현재 프레임 (N) 에 대한 장기 평활화된 비교 값 를 포함할 수도 있고 로 표현될 수도 있으며, 여기서 이다. 따라서, 장기 평활화된 비교 값 는 프레임 N 에서의 순간 비교 값 와 하나 이상의 이전 프레임들에 대한 장기 평활화된 비교 값들 의 가중된 혼합에 기초할 수도 있다. 의 값이 증가함에 따라, 장기 평활화된 비교 값에서의 평활화의 양이 증가한다. 평활화 파라미터들 (예를 들어, 의 값) 은 사일런스 부분들 동안 (또는 시프트 추정에서 드리프트를 야기할 수도 있는 배경 노이즈 동안) 비교 값들의 평활화를 제한하도록 제어/적응될 수도 있다. 예를 들어, 비교 값들은 더 높은 평활화 팩터 (예를 들어, = 0.995) 에 기초하여 평활화될 수도 있고; 다르게는 평활화는 = 0.9 에 기초할 수 있다. 평활화 파라미터들 (예를 들어, ) 의 제어는 배경 에너지 또는 장기 에너지가 임계치 미만인지 여부에 기초하거나, 코더 타입에 기초하거나, 또는 비교 값 통계에 기초할 수도 있다.
특정 구현에서, 평활화 파라미터들 (예를 들어, ) 의 값은 채널들의 단기 신호 레벨 (EST) 및 장기 신호 레벨 (ELT) 에 기초할 수도 있다. 예로서, 단기 신호 레벨은 다운샘플링된 레퍼런스 샘플들의 절대 값들의 합과 다운샘플링된 타겟 샘플들의 절대 값들의 합의 합으로서 프로세싱 (EST(N)) 되는 프레임 (N) 에 대해 계산될 수도 있다. 장기 신호 레벨은 단기 신호 레벨들의 평활화된 버전일 수도 있다. 예를 들어, 이다. 추가로, 평활화 파라미터들 (예를 들어, ) 의 값은 다음과 같이 설명된 의사 코드에 따라 제어될 수도 있다.
특정 구현에서, 평활화 파라미터들 (예를 들어, ) 의 값은 단기 및 장기 평활화된 비교 값들의 상관에 기초하여 제어될 수도 있다. 예를 들어, 현재 프레임의 비교 값들이 장기 평활화된 비교 값들과 매우 유사할 경우, 그것은 정지된 화자의 표시이고 이것은 평활화를 추가로 증가 (예를 들어, 의 값을 증가) 시키기 위해 평활화 파라미터들을 제어하는데 사용될 수 있다. 다시 말해서, 다양한 시프트 값들의 함수로서의 비교 값들이 장기 평활화된 비교 값들과 비슷하지 않을 경우, 평활화 파라미터들은 평활화를 감소 (예를 들어, 의 값을 감소) 시키기 위해 조정 (예를 들어, 적응) 될 수 있다.
특정 구현에서, 신호 비교기 (506) 는 프로세싱되는 현재 프레임 근처의 프레임들의 비교 값들을 평활화함으로써 단기 평활화된 비교 값들 을 추정할 수도 있다. 예: 다른 구현들에서, 단기 평활화된 비교 값들은 프로세싱되는 프레임에서 생성된 비교 값들 과 동일할 수도 있다.
신호 비교기 (506) 는 단기 및 장기 평활화된 비교 값들의 상호 상관 값을 추정할 수도 있다. 일부 구현들에서, 단기 및 장기 평활화된 비교 값들의 상호 상관 값 은 로서 계산되는 각각의 프레임 (N) 당 추정되는 단일 값일 수도 있다. 여기서 'Fac' 는 이 0 과 1 사이에서 제한되도록 선택되는 정규화 팩터이다. 비한정적 예로서, Fac 는 다음으로서 계산될 수도 있다:
신호 비교기 (506) 는 단일 프레임에 대한 비교 값들 ("순간 비교 값들") 과 단기 평활화된 비교 값들의 다른 상호 상관 값을 추정할 수도 있다. 일부 구현들에서, 프레임 N 에 대한 비교 값들 ("프레임 (N) 에 대한 순간 비교 값들") 및 단기 평활화된 비교 값들 (예를 들어, ) 의 상호 상관 값 은 로서 계산되는 각각의 프레임 (N) 당 추정되는 단일 값일 수도 있다. 여기서 'Fac' 는 이 0 과 1 사이에서 제한되도록 선택되는 정규화 팩터이다. 비한정적 예로서, Fac 는 다음으로서 계산될 수도 있다:
제 1 리샘플링된 신호 (530) 는 제 1 오디오 신호 (130) 보다 더 적은 샘플들 또는 더 많은 샘플들을 포함할 수도 있다. 제 2 리샘플링된 신호 (532) 는 제 2 오디오 신호 (132) 보다 더 적은 샘플들 또는 더 많은 샘플들을 포함할 수도 있다. 리샘플링된 신호들 (예를 들어, 제 1 리샘플링된 신호 (530) 및 제 2 리샘플링된 신호 (532)) 의 더 적은 샘플들에 기초하여 비교 값들 (534) 을 결정하는 것은 원래 신호들 (예를 들어, 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132)) 의 샘플들보다 더 적은 리소스들 (예를 들어, 시간, 동작들의 수, 또는 양자 모두) 을 사용할 수도 있다. 리샘플링된 신호들 (예를 들어, 제 1 리샘플링된 신호 (530) 및 제 2 리샘플링된 신호 (532)) 의 더 많은 샘플들에 기초하여 비교 값들 (534) 을 결정하는 것은 원래 신호들 (예를 들어, 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132)) 의 샘플들보다 정밀도를 증가시킬 수도 있다. 신호 비교기 (506) 는 비교 값들 (534), 잠정적 불일치 값 (536), 또는 양자 모두를 보간기 (510) 에 제공할 수도 있다.
보간기 (510) 는 잠정적 불일치 값 (536) 을 확장시킬 수도 있다. 예를 들어, 보간기 (510) 는 보간된 불일치 값 (538) 을 생성할 수도 있다. 예를 들어, 보간기 (510) 는 비교 값들 (534) 을 보간함으로써 잠정적 불일치 값 (536) 에 근접한 불일치 값들에 대응하는 보간된 비교 값들을 생성할 수도 있다. 보간기 (510) 는 보간된 비교 값들 및 비교 값들 (534) 에 기초하여 보간된 불일치 값 (538) 을 결정할 수도 있다. 비교 값들 (534) 은 불일치 값들의 더 조악한 입도에 기초할 수도 있다. 예를 들어, 비교 값들 (534) 은 불일치 값들의 세트의 제 1 서브세트에 기초할 수도 있어서, 제 1 서브세트의 제 1 불일치 값과 제 1 서브세트의 각각의 제 2 불일치 값 사이의 차이가 임계치 (예를 들어, ≥1) 이상이게 한다. 임계치는 리샘플링 팩터 (D) 에 기초할 수도 있다.
보간된 비교 값들은 리샘플링된 잠정적 불일치 값 (536) 에 근접한 불일치 값들의 더 미세한 입도에 기초할 수도 있다. 예를 들어, 보간된 비교 값들은 불일치 값들의 세트의 제 2 서브세트에 기초할 수도 있어서, 제 2 서브세트의 최고 불일치 값과 리샘플링된 잠정적 불일치 값 (536) 사이의 차이가 임계치 (예를 들어, ≥1) 미만이게 하고, 그리고 제 2 서브세트의 최저 불일치 값과 리샘플링된 잠정적 불일치 값 (536) 사이의 차이가 임계치 미만이게 한다. 불일치 값들의 세트의 더 조악한 입도 (예를 들어, 제 1 서브세트) 에 기초하여 비교 값들 (534) 을 결정하는 것은 불일치 값들의 세트의 더 미세한 입도 (예를 들어, 모두) 에 기초하여 비교 값들 (534) 을 결정하는 것보다 더 적은 리소스들 (예를 들어, 시간, 동작들, 또는 양자 모두) 을 사용할 수도 있다. 불일치 값들의 제 2 서브세트에 대응하는 보간된 비교 값들을 결정하는 것은, 불일치 값들의 세트의 각각의 불일치 값에 대응하는 비교 값들을 결정함이 없이, 잠정적 불일치 값 (536) 에 근접한 불일치 값들의 더 작은 세트의 더 미세한 입도에 기초하여 잠정적 불일치 값 (536) 을 확장시킬 수도 있다. 따라서, 불일치 값들의 제 1 서브세트에 기초하여 잠정적 불일치 값 (536) 을 결정하는 것 및 보간된 비교 값들에 기초하여 보간된 불일치 값 (538) 을 결정하는 것은 추정된 불일치 값의 리파인먼트 및 리소스 사용을 밸런싱할 수도 있다. 보간기 (510) 는 보간된 불일치 값 (538) 을 시프트 리파이너 (511) 에 제공할 수도 있다.
하나의 구현에 따르면, 보간기 (510) 는 이전 프레임들에 대한 보간된 불일치/비교 값들을 취출할 수도 있고 이전 프레임들에 대한 보간된 불일치/비교 값들을 사용하는 장기 평활화 동작에 기초하여 보간된 불일치/비교 값 (538) 을 수정할 수도 있다. 예를 들어, 보간된 불일치/비교 값들 (538) 은 현재 프레임 (N) 에 대한 장기 보간된 불일치/비교 값 를 포함할 수도 있고 로 표현될 수도 있으며, 여기서 이다. 따라서, 장기 보간된 불일치/비교 값 는 프레임 N 에서의 순간 보간된 불일치/비교 값 와 하나 이상의 이전 프레임들에 대한 장기 보간된 불일치/비교 값들 의 가중된 혼합에 기초할 수도 있다. 의 값이 증가함에 따라, 장기 평활화된 비교 값에서의 평활화의 양이 증가한다.
시프트 리파이너 (511) 는 보간된 불일치 값 (538) 을 리파이닝함으로써 보정된 불일치 값 (540) 을 생성할 수도 있다. 예를 들어, 시프트 리파이너 (511) 는, 보간된 불일치 값 (538) 이, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 시프트에서의 변경이 시프트 변경 임계치 초과임을 나타내는지 여부를 결정할 수도 있다. 시프트에서의 변경은 보간된 불일치 값 (538) 과 도 3 의 프레임 (302) 과 연관된 제 1 불일치 값 사이의 차이에 의해 나타내질 수도 있다. 시프트 리파이너 (511) 는 차이가 임계치 이하임을 결정하는 것에 응답하여, 보정된 불일치 값 (540) 을 보간된 불일치 값 (538) 으로 설정할 수도 있다. 대안적으로, 시프트 리파이너 (511) 는, 차이가 임계치 초과임을 결정하는 것에 응답하여, 시프트 변경 임계치 이하인 차이에 대응하는 복수의 불일치 값들을 결정할 수도 있다. 시프트 리파이너 (511) 는 제 2 오디오 신호 (132) 에 적용된 복수의 불일치 값들 및 제 1 오디오 신호 (130) 에 기초하여 비교 값들을 결정할 수도 있다. 시프트 리파이너 (511) 는 비교 값들에 기초하여 보정된 불일치 값 (540) 을 결정할 수도 있다. 예를 들어, 시프트 리파이너 (511) 는 비교 값들 및 보간된 불일치 값에 기초하여 복수의 불일치 값들 중 불일치 값을 선택할 수도 있다. 시프트 리파이너 (511) 는 선택된 불일치 값을 나타내도록 보정된 불일치 값 (540) 을 설정할 수도 있다. 프레임 (302) 에 대응하는 제 1 불일치 값과 보간된 불일치 값 (538) 사이의 비제로 (non-zero) 차이는 제 2 오디오 신호 (132) 의 일부 샘플들이 양자의 프레임들 (예를 들어, 프레임 (302) 및 프레임 (304)) 에 대응함을 나타낼 수도 있다. 예를 들어, 제 2 오디오 신호 (132) 의 일부 샘플들은 인코딩 동안 복제될 수도 있다. 대안적으로, 비제로 차이는 제 2 오디오 신호 (132) 의 일부 샘플들이 프레임 (302) 에도 프레임 (304) 에도 대응하지 않음을 나타낼 수도 있다. 예를 들어, 제 2 오디오 신호 (132) 의 일부 샘플들은 인코딩 동안 손실될 수도 있다. 보정된 불일치 값 (540) 을 복수의 불일치 값들 중 하나로 설정하는 것은, 연속적인 (또는 인접한) 프레임들 사이의 시프트들에서의 큰 변경을 방지할 수도 있고, 이에 의해 인코딩 동안 샘플 손실 또는 샘플 복제의 양을 감소시킬 수도 있다. 시프트 리파이너 (511) 는 보정된 불일치 값 (540) 을 시프트 변경 분석기 (512) 에 제공할 수도 있다. 일부 구현들에 있어서, 시프트 리파이너 (511) 는 보간된 불일치 값 (538) 을 조정할 수도 있다. 시프트 리파이너 (511) 는 조정된 보간된 불일치 값 (538) 에 기초하여 보정된 불일치 값 (540) 을 결정할 수도 있다.
하나의 구현에 따르면, 시프트 리파이너는 이전 프레임들에 대한 보정된 불일치 값들을 취출할 수도 있고 이전 프레임들에 대한 보정된 불일치 값들을 사용하는 장기 평활화 동작에 기초하여 보정된 불일치 값 (540) 을 수정할 수도 있다. 예를 들어, 보정된 불일치 값 (540) 은 현재 프레임 (N) 에 대한 장기 보정된 불일치 값 를 포함할 수도 있고 로 표현될 수도 있으며, 여기서 이다. 따라서, 장기 보정된 불일치 값 는 프레임 N 에서의 순간 보정된 불일치 값 와 하나 이상의 이전 프레임들에 대한 장기 보정된 불일치 값들 의 가중된 혼합에 기초할 수도 있다. 의 값이 증가함에 따라, 장기 평활화된 비교 값에서의 평활화의 양이 증가한다.
시프트 변경 분석기 (512) 는, 도 1 을 참조하여 설명된 바와 같이, 보정된 불일치 값 (540) 이 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 타이밍에서의 스위치 또는 역전을 나타내는지 여부를 결정할 수도 있다. 특히, 타이밍에서의 역전 또는 스위치는, 프레임 (302) 에 대해, 제 1 오디오 신호 (130) 가 입력 인터페이스(들) (112) 에서 제 2 오디오 신호 (132) 이전에 수신되고, 그리고, 후속 프레임 (예를 들어, 프레임 (304) 또는 프레임 (306)) 에 대해, 제 2 오디오 신호 (132) 가 입력 인터페이스(들)에서 제 1 오디오 신호 (130) 이전에 수신됨을 나타낼 수도 있다. 대안적으로, 타이밍에서의 역전 또는 스위치는, 프레임 (302) 에 대해, 제 2 오디오 신호 (132) 가 입력 인터페이스(들) (112) 에서 제 1 오디오 신호 (130) 이전에 수신되고, 그리고, 후속 프레임 (예를 들어, 프레임 (304) 또는 프레임 (306)) 에 대해, 제 1 오디오 신호 (130) 가 입력 인터페이스(들)에서 제 2 오디오 신호 (132) 이전에 수신됨을 나타낼 수도 있다. 다시 말해서, 타이밍에서의 스위치 또는 역전은 프레임 (302) 에 대응하는 최종 불일치 값이 프레임 (304) 에 대응하는 보정된 불일치 값 (540) 의 제 2 부호와는 상이한 제 1 부호를 가짐 (예를 들어, 포지티브 대 네거티브 트랜지션 또는 그 역도 성립) 을 나타낼 수도 있다. 시프트 변경 분석기 (512) 는, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연이 보정된 불일치 값 (540) 과 프레임 (302) 과 연관된 제 1 불일치 값에 기초하여 부호를 스위칭하였는지 여부를 결정할 수도 있다. 시프트 변경 분석기 (512) 는 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연이 부호를 스위칭하였음을 결정하는 것에 응답하여, 최종 불일치 값 (116) 을 시간 시프트 없음을 나타내는 값 (예를 들어, 0) 으로 설정할 수도 있다. 대안적으로, 시프트 변경 분석기 (512) 는, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연이 부호를 스위칭하지 않았음을 결정하는 것에 응답하여 최종 불일치 값 (116) 을 보정된 불일치 값 (540) 으로 설정할 수도 있다. 시프트 변경 분석기 (512) 는 보정된 불일치 값 (540) 을 리파이닝함으로써 추정된 불일치 값을 생성할 수도 있다. 시프트 변경 분석기 (512) 는 최종 불일치 값 (116) 을 추정된 불일치 값으로 설정할 수도 있다. 시간 시프트 없음을 나타내도록 최종 불일치 값 (116) 을 설정하는 것은, 제 1 오디오 신호 (130) 의 연속적인 (또는 인접한) 프레임들에 대해 반대 방향들로 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132) 를 시간 시프트하는 것을 억제함으로써 디코더에서의 왜곡을 감소시킬 수도 있다. 시프트 변경 분석기 (512) 는 최종 불일치 값 (116) 을 레퍼런스 신호 지정기 (508) 에, 절대 시프트 생성기 (513) 에, 또는 양자 모두에 제공할 수도 있다.
절대 시프트 생성기 (513) 는 절대 함수를 최종 불일치 값 (116) 에 적용함으로써 비인과 불일치 값 (162) 을 생성할 수도 있다. 절대 시프트 생성기 (513) 는 불일치 값 (162) 을 이득 파라미터 생성기 (514) 에 제공할 수도 있다.
레퍼런스 신호 지정기 (508) 는 레퍼런스 신호 표시자 (164) 를 생성할 수도 있다. 예를 들어, 레퍼런스 신호 표시자 (164) 는 제 1 오디오 신호 (130) 가 레퍼런스 신호임을 나타내는 제 1 값 또는 제 2 오디오 신호 (132) 가 레퍼런스 신호임을 나타내는 제 2 값을 가질 수도 있다. 레퍼런스 신호 지정기 (508) 는 레퍼런스 신호 표시자 (164) 를 이득 파라미터 생성기 (514) 에 제공할 수도 있다.
레퍼런스 신호 지정기 (508) 는 최종 불일치 값 (116) 이 0 과 동일한지 여부를 추가로 결정할 수도 있다. 예를 들어, 레퍼런스 신호 지정기 (508) 는, 최종 불일치 값 (116) 이 시간 시프트 없음을 나타내는 특정 값 (예를 들어, 0) 을 가짐을 결정하는 것에 응답하여, 레퍼런스 신호 표시자 (164) 를 변경되지 않게 남겨 둘 수도 있다. 예시하기 위해, 레퍼런스 신호 표시자 (164) 는 동일한 오디오 신호 (예를 들어, 제 1 오디오 신호 (130) 또는 제 2 오디오 신호 (132)) 가 프레임 (302) 에서처럼 프레임 (304) 과 연관된 레퍼런스 신호임을 나타낼 수도 있다.
레퍼런스 신호 지정기 (508) 는 또한, 1202 에서, 최종 불일치 값 (116) 이 비제로임을 결정하여, 1206 에서, 최종 불일치 값 (116) 이 0 초과인지 여부를 결정할 수도 있다. 예를 들어, 레퍼런스 신호 지정기 (508) 는, 최종 불일치 값 (116) 이 시간 시프트를 나타내는 특정 값 (예를 들어, 비제로 값) 을 가짐을 결정하는 것에 응답하여, 최종 불일치 값 (116) 이 제 2 오디오 신호 (132) 가 제 1 오디오 신호 (130) 에 대해 지연됨을 나타내는 제 1 값 (예를 들어, 포지티브 값) 또는 제 1 오디오 신호 (130) 가 제 2 오디오 신호 (132) 에 대해 지연됨을 나타내는 제 2 값 (예를 들어, 네거티브 값) 을 갖는지 여부를 결정할 수도 있다.
이득 파라미터 생성기 (514) 는 비인과 불일치 값 (162) 에 기초하여 타겟 신호 (예를 들어, 제 2 오디오 신호 (132)) 의 샘플들을 선택할 수도 있다. 예시하기 위해, 이득 파라미터 생성기 (514) 는 비인과 불일치 값 (162) 이 제 1 값 (예를 들어, +X ms 또는 +Y 샘플들, 여기서 X 및 Y 는 포지티브 실수들을 포함한다) 을 가짐을 결정하는 것에 응답하여 샘플들 (358-364) 을 선택할 수도 있다. 이득 파라미터 생성기 (514) 는 비인과 불일치 값 (162) 이 제 2 값 (예를 들어, -X ms 또는 -Y 샘플들) 을 가짐을 결정하는 것에 응답하여 샘플들 (354-360) 을 선택할 수도 있다. 이득 파라미터 생성기 (514) 는 비인과 불일치 값 (162) 이 시간 시프트 없음을 나타내는 값 (예를 들어, 0) 을 가짐을 결정하는 것에 응답하여 샘플들 (356-362) 을 선택할 수도 있다.
이득 파라미터 생성기 (514) 는 레퍼런스 신호 표시자 (164) 에 기초하여 제 1 오디오 신호 (130) 가 레퍼런스 신호인지 또는 제 2 오디오 신호 (132) 가 레퍼런스 신호인지를 결정할 수도 있다. 이득 파라미터 생성기 (514) 는 도 1 을 참조하여 설명된 바와 같이, 프레임 (304) 의 샘플들 (326-332) 및 제 2 오디오 신호 (132) 의 선택된 샘플들 (예를 들어, 샘플들 (354-360), 샘플들 (356-362), 또는 샘플들 (358-364)) 에 기초하여 이득 파라미터 (160) 를 생성할 수도 있다. 예를 들어, 이득 파라미터 생성기 (514) 는 수식 1a - 수식 1f 중 하나 이상에 기초하여 이득 파라미터 (160) 를 생성할 수도 있으며, 여기서, gD 는 이득 파라미터 (160) 에 대응하고, Ref(n) 은 레퍼런스 신호의 샘플들에 대응하고, 그리고 Targ(n+N1) 은 타겟 신호의 샘플들에 대응한다. 예시하기 위해, 비인과 불일치 값 (162) 이 제 1 값 (예를 들어, +X ms 또는 +Y 샘플들, 여기서, X 및 Y 는 포지티브 실수들을 포함한다) 을 가질 경우, Ref(n) 은 프레임 (304) 의 샘플들 (326-332) 에 대응할 수도 있고 Targ(n+tN1) 은 프레임 (344) 의 샘플들 (358-364) 에 대응할 수도 있다. 일부 구현들에서, 도 1 을 참조하여 설명된 바와 같이, Ref(n) 은 제 1 오디오 신호 (130) 의 샘플들에 대응할 수도 있고 Targ(n+N1) 은 제 2 오디오 신호 (132) 의 샘플들에 대응할 수도 있다. 대체 구현들에서, 도 1 을 참조하여 설명된 바와 같이, Ref(n) 은 제 2 오디오 신호 (132) 의 샘플들에 대응할 수도 있고 Targ(n+N1) 은 제 1 오디오 신호 (130) 의 샘플들에 대응할 수도 있다.
이득 파라미터 생성기 (514) 는 이득 파라미터 (160), 레퍼런스 신호 표시자 (164), 비인과 불일치 값 (162), 또는 이들의 조합을 신호 생성기 (516) 에 제공할 수도 있다. 신호 생성기 (516) 는 도 1 을 참조하여 설명된 바와 같이, 인코딩된 신호들 (102) 을 생성할 수도 있다. 예를 들면, 인코딩된 신호들 (102) 은 제 1 인코딩된 신호 프레임 (564) (예를 들어, 미드 채널 프레임), 제 2 인코딩된 신호 프레임 (566) (예를 들어, 사이드 채널 프레임), 또는 양자 모두를 포함할 수도 있다. 신호 생성기 (516) 는 수식 2a 또는 수식 2b 에 기초하여 제 1 인코딩된 신호 프레임 (564) 을 생성할 수도 있으며, 여기서, M 은 제 1 인코딩된 신호 프레임 (564) 에 대응하고, gD 는 이득 파라미터 (160) 에 대응하고, Ref(n) 은 레퍼런스 신호의 샘플들에 대응하고, 그리고 Targ(n+N1) 은 타겟 신호의 샘플들에 대응한다. 신호 생성기 (516) 는 수식 3a 또는 수식 3b 에 기초하여 제 2 인코딩된 신호 프레임 (566) 을 생성할 수도 있으며, 여기서, S 는 제 2 인코딩된 신호 프레임 (566) 에 대응하고, gD 는 이득 파라미터 (160) 에 대응하고, Ref(n) 은 레퍼런스 신호의 샘플들에 대응하고, 그리고 Targ(n+N1) 은 타겟 신호의 샘플들에 대응한다.
시간 등화기 (108) 는 제 1 리샘플링된 신호 (530), 제 2 리샘플링된 신호 (532), 비교 값들 (534), 잠정적 불일치 값 (536), 보간된 불일치 값 (538), 보정된 불일치 값 (540), 비인과 불일치 값 (162), 레퍼런스 신호 표시자 (164), 최종 불일치 값 (116), 이득 파라미터 (160), 제 1 인코딩된 신호 프레임 (564), 제 2 인코딩된 신호 프레임 (566), 또는 이들의 조합을, 메모리 (153) 에 저장할 수도 있다. 예를 들어, 분석 데이터 (190) 는 제 1 리샘플링된 신호 (530), 제 2 리샘플링된 신호 (532), 비교 값들 (534), 잠정적 불일치 값 (536), 보간된 불일치 값 (538), 보정된 불일치 값 (540), 비인과 불일치 값 (162), 레퍼런스 신호 표시자 (164), 최종 불일치 값 (116), 이득 파라미터 (160), 제 1 인코딩된 신호 프레임 (564), 제 2 인코딩된 신호 프레임 (566), 또는 이들의 조합을 포함할 수도 있다.
상기 설명된 평활화 기법들은 보이싱된 프레임들, 언보이싱된 프레임들, 및 트랜지션 프레임들 사이의 시프트 추정치를 실질적으로 정규화할 수도 있다. 정규화된 시프트 추정치들은 프레임 경계들에서 샘플 반복 및 아티팩트 스킵핑을 감소시킬 수도 있다. 추가적으로, 정규화된 시프트 추정치들은 감소된 사이드 채널 에너지들을 발생시킬 수도 있으며, 이는 코딩 효율을 개선할 수도 있다.
도 6 을 참조하면, 신호 비교기를 포함하는 시스템의 예시적인 예가 도시되고 일반적으로 600 으로 지정된다. 시스템 (600) 은 도 1 의 시스템 (100) 에 대응할 수도 있다. 예를 들어, 도 1 의 시스템 (100), 제 1 디바이스 (104), 또는 양자 모두는 시스템 (700) 의 하나 이상의 컴포넌트들을 포함할 수도 있다.
메모리 (153) 는 복수의 불일치 값들 (660) 을 저장할 수도 있다. 불일치 값들 (660) 은 제 1 불일치 값 (664) (예를 들어, -X ms 또는 -Y 샘플들, 여기서 X 및 Y 는 포지티브 실수들을 포함한다), 제 2 불일치 값 (666) (예를 들어, +X ms 또는 +Y 샘플들, 여기서 X 및 Y 는 포지티브 실수들을 포함한다), 또는 양자 모두를 포함할 수도 있다. 불일치 값들 (660) 은 최저 불일치 값 (예를 들어, 최소 불일치 값, T_MIN) 으로부터 최고 불일치 값 (예를 들어, 최대 불일치 값, T_MAX) 까지에 이를 수도 있다. 불일치 값들 (660) 은 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 예상된 시간 시프트 (예를 들어, 최대 예상된 시간 시프트) 를 나타낼 수도 있다.
동작 동안, 신호 비교기 (506) 는 제 2 샘플들 (650) 에 적용된 불일치 값들 (660) 및 제 1 샘플들 (620) 에 기초하여 비교 값들 (534) 을 결정할 수도 있다. 예를 들어, 샘플들 (626-632) 은 제 1 시간 (t) 에 대응할 수도 있다. 예시하기 위해, 도 1 의 입력 인터페이스(들) (112) 는 대략 제 1 시간 (t) 에서 프레임 (304) 에 대응하는 샘플들 (626-632) 을 수신할 수도 있다. 제 1 불일치 값 (664) (예를 들어, -X ms 또는 -Y 샘플들, 여기서, X 및 Y 는 포지티브 실수들을 포함한다) 은 제 2 시간 (t-1) 에 대응할 수도 있다.
샘플들 (654-660) 은 제 2 시간 (t-1) 에 대응할 수도 있다. 예를 들어, 입력 인터페이스(들) (112) 는 대략 제 2 시간 (t-1) 에서 샘플들 (654-660) 을 수신할 수도 있다. 신호 비교기 (506) 는 샘플들 (626-632) 및 샘플들 (654-660) 에 기초하여 제 1 불일치 값 (664) 에 대응하는 제 1 비교 값 (614) (예를 들어, 차이 값 또는 상호 상관 값) 을 결정할 수도 있다. 예를 들어, 제 1 비교 값 (614) 은 샘플들 (626-632) 및 샘플들 (654-660) 의 상호 상관의 절대 값에 대응할 수도 있다. 다른 예로서, 제 1 비교 값 (614) 은 샘플들 (626-632) 과 샘플들 (654-660) 사이의 차이를 나타낼 수도 있다.
제 2 불일치 값 (666) (예를 들어, +X ms 또는 +Y 샘플들, 여기서, X 및 Y 는 포지티브 실수들을 포함한다) 은 제 3 시간 (t+1) 에 대응할 수도 있다. 샘플들 (658-664) 은 제 3 시간 (t+1) 에 대응할 수도 있다. 예를 들어, 입력 인터페이스(들) (112) 는 대략 제 3 시간 (t+1) 에서 샘플들 (658-664) 을 수신할 수도 있다. 신호 비교기 (506) 는 샘플들 (626-632) 및 샘플들 (658-664) 에 기초하여 제 2 불일치 값 (666) 에 대응하는 제 2 비교 값 (616) (예를 들어, 차이 값 또는 상호 상관 값) 을 결정할 수도 있다. 예를 들어, 제 2 비교 값 (616) 은 샘플들 (626-632) 및 샘플들 (658-664) 의 상호 상관의 절대 값에 대응할 수도 있다. 다른 예로서, 제 2 비교 값 (616) 은 샘플들 (626-632) 과 샘플들 (658-664) 사이의 차이를 나타낼 수도 있다. 신호 비교기 (506) 는 비교 값들 (534) 을 메모리 (153) 에 저장할 수도 있다. 예를 들어, 분석 데이터 (190) 는 비교 값들 (534) 을 포함할 수도 있다.
신호 비교기 (506) 는 비교 값들 (534) 의 다른 값들보다 더 높은 (또는, 더 낮은) 값을 가지는 비교 값들 (534) 의 선택된 비교 값 (636) 을 식별할 수도 있다. 예를 들어, 신호 비교기 (506) 는 제 2 비교 값 (616) 이 제 1 비교 값 (614) 이상임을 결정하는 것에 응답하여 제 2 비교 값 (616) 을 선택된 비교 값 (636) 으로서 선택할 수도 있다. 일부 구현들에서, 비교 값들 (534) 은 상호 상관 값들에 대응할 수도 있다. 신호 비교기 (506) 는 제 2 비교 값 (616) 이 제 1 비교 값 (614) 보다 더 큼을 결정하는 것에 응답하여, 샘플들 (626-632) 이 샘플들 (654-660) 보다 샘플들 (658-664) 과 더 높은 상관을 갖는다고 결정할 수도 있다. 신호 비교기 (506) 는 더 높은 상관을 나타내는 제 2 비교 값 (616) 을 선택된 비교 값 (636) 으로서 선택할 수도 있다. 다른 구현들에서, 비교 값들 (534) 은 차이 값들에 대응할 수도 있다. 신호 비교기 (506) 는 제 2 비교 값 (616) 이 제 1 비교 값 (614) 보다 더 낮음을 결정하는 것에 응답하여, 샘플들 (626-632) 이 샘플들 (654-660) 보다 샘플들 (658-664) 과 더 큰 유사도 (예를 들어, 더 낮은 차이) 를 갖는다고 결정할 수도 있다. 신호 비교기 (506) 는 더 낮은 차이를 나타내는 제 2 비교 값 (616) 을 선택된 비교 값 (636) 으로서 선택할 수도 있다.
선택된 비교 값 (636) 은 비교 값들 (534) 의 다른 값들보다 더 높은 상관 (또는, 더 낮은 차이) 을 나타낼 수도 있다. 신호 비교기 (506) 는 선택된 비교 값 (636) 에 대응하는 불일치 값들 (660) 의 잠정적 불일치 값 (536) 을 식별할 수도 있다. 예를 들어, 신호 비교기 (506) 는 제 2 불일치 값 (666) 이 선택된 비교 값 (636) (예를 들어, 제 2 비교 값 (616)) 에 대응함을 결정하는 것에 응답하여 제 2 불일치 값 (666) 을 잠정적 불일치 값 (536) 으로서 식별할 수도 있다.
도 7 을 참조하면, 장기 평활화된 비교 값들의 서브세트를 조정하는 예시적인 예들이 도시되고 일반적으로 700 으로 지정된다. 예 (700) 는 도 1 의 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 도 2 의 시간 등화기(들) (208), 인코더 (214), 제 1 디바이스 (204), 도 5 의 신호 비교기 (506), 또는 이들의 조합에 의해 수행될 수도 있다.
레퍼런스 채널 ("Ref(n)") (701) 은 제 1 오디오 신호 (130) 에 대응할 수도 있고 레퍼런스 채널 (701) 의 프레임 N (710) 을 포함하는 복수의 레퍼런스 프레임들을 포함할 수도 있다. 타겟 채널 ("Targ(n)") (702) 은 제 2 오디오 신호 (132) 에 대응할 수도 있고 타겟 채널 (702) 의 프레임 N (720) 을 포함하는 복수의 타겟 프레임들을 포함할 수도 있다. 인코더 (114) 또는 시간 등화기 (108) 는 레퍼런스 채널 (701) 의 프레임 N (710) 에 대한 및 타겟 채널 (702) 의 프레임 N (720) 에 대한 비교 값들 (730) 을 추정할 수도 있다. 각각의 비교 값은 시간 불일치의 양, 또는 레퍼런스 채널 (701) 의 레퍼런스 프레임 N (710) 과 타겟 채널 (702) 의 대응하는 타겟 프레임 N (720) 사이의 유사도 또는 비유사도의 측정치를 나타낼 수도 있다. 일부 구현들에서, 레퍼런스 프레임과 타겟 프레임 사이의 상호 상관 값들은 2 개의 프레임들의 유사도를 일 프레임의 다른 프레임에 대한 래그의 함수로서 측정하는데 사용될 수도 있다. 예를 들어, 프레임 N 에 대한 비교 값들 (735) 은 레퍼런스 채널의 프레임 N (710) 과 타겟 채널의 프레임 N (720) 사이의 상호 상관 값들일 수도 있다.
인코더 (114) 또는 시간 등화기 (108) 는 단기 평활화된 비교 값들을 생성하기 위해 비교 값들을 평활화할 수도 있다. 단기 평활화된 비교 값들 (예를 들어, 프레임 N 에 대한 ) 은 프레임 N (710, 720) 근처의 프레임들의 비교 값들의 평활화된 버전으로서 추정될 수도 있다. 예시하기 위해, 단기 비교 값들은 현재 프레임 (프레임 N) 및 이전 프레임들로부터의 복수의 비교 값들 (예를 들어, ) 의 선형 조합으로서 생성될 수도 있다. 대안적인 구현들에서, 불균일한 가중화가 프레임 N 및 이전 프레임들에 대한 복수의 비교 값들에 적용될 수도 있다.
인코더 (114) 또는 시간 등화기 (108) 는 평활화 파라미터에 기초하여 프레임 N 에 대한 제 1 장기 평활화된 비교 값들 (755) 을 생성하기 위해 비교 값들을 평활화할 수도 있다. 평활화는 제 1 장기 평활화된 비교 값들 (예를 들어, 제 1 장기 평활화된 비교 값들 (755)) 가 로 표현되도록 수행될 수도 있다. 상기 수식에서의 함수 f 는 시프트 (k) 에서의 과거 비교 값들 모두 (또는 서브세트) 의 함수일 수도 있다. 그의 대안적인 표현은 일 수도 있다. 함수들 f 또는 g 는 각각 간단한 유한 임펄스 응답 (FIR) 필터들 또는 무한 임펄스 응답 (IIR) 필터들일 수도 있다. 예를 들어, 함수 g 는 제 1 장기 평활화된 비교 값들 (755) 이 로 표현되도록 단일 탭 IIR 필터일 수도 있으며, 여기서 이다. 따라서, 장기 평활화된 비교 값들 는 프레임 N (710, 720) 에 대한 순간 비교 값들 와 하나 이상의 이전 프레임들에 대한 장기 평활화된 비교 값들 의 가중된 혼합에 기초할 수도 있다.
인코더 (114) 또는 시간 등화기 (108) 는 비교 값들 및 단기 평활화된 비교 값들의 상호 상관 값을 계산할 수도 있다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 프레임 N (710, 720) 에 대한 비교 값들 (735) 및 프레임 N (710, 720) 에 대한 단기 평활화된 비교 값들 (745) 의 상호 상관 값 (765) 을 계산할 수도 있다. 일부 구현들에서, 상호 상관 값 (765) 은 로서 계산되는 추정되는 단일 값일 수도 있다. 여기서 'Fac' 는 (765) 이 0 과 1 사이에서 제한되도록 선택되는 정규화 팩터이다. 비한정적 예로서, Fac 는 다음으로서 계산될 수도 있다:
대안적으로, 인코더 (114) 또는 시간 등화기 (108) 는 단기 및 장기 평활화된 비교 값들의 상호 상관 값을 계산할 수도 있다. 일부 구현들에서, 프레임 N (710, 720) 에 대한 단기 평활화된 비교 값들 (745) 및 프레임 N (710, 720) 에 대한 장기 평활화된 비교 값들 (755) 의 상호 상관 값 (765) 은 로서 계산되는 단일 값일 수도 있다. 여기서 'Fac' 는 (765) 이 0 과 1 사이에서 제한되도록 선택되는 정규화 팩터이다. 비한정적 예로서, Fac 는 다음으로서 계산될 수도 있다:
인코더 (114) 또는 시간 등화기 (108) 는 비교 값들의 상호 상관 값 (765) 과 임계치를 비교할 수도 있고, 제 1 장기 평활화된 비교 값들 (755) 의 전체 또는 일부 부분을 조정할 수도 있다. 일부 구현들에서, 인코더 (114) 또는 시간 등화기 (108) 는 비교 값들의 상호 상관 값 (765) 이 임계치를 초과한다는 결정에 응답하여 제 1 장기 평활화된 비교 값들 (755) 의 서브세트의 소정의 값들을 증가 (또는 부스팅 또는 바이어싱) 시킬 수도 있다. 예를 들어, 비교 값들의 상호 상관 값 이 임계치 (예를 들어, 0.8) 이상일 경우, 그것은 비교 값들 사이의 상호 상관 값이 매우 강하거나 또는 높음을 나타낼 수도 있으며, 이는 인접한 프레임들 사이에 시간 시프트 값들의 변동들이 작거나 또는 없음을 나타낸다. 따라서, 현재 프레임 (예를 들어, 프레임 N) 의 추정된 시간 시프트 값은 이전 프레임 (예를 들어, 프레임 N-1) 의 시간 시프트 값들 또는 임의의 다른 이전 프레임들의 시간 시프트 값들로부터 너무 멀리 떨어질 수 없다. 시간 시프트 값들은 잠정적 불일치 값 (536), 보간된 불일치 값 (538), 보정된 불일치 값 (540), 최종 불일치 값 (116), 또는 비인과 불일치 값 (162) 중 하나일 수도 있다. 따라서, 인코더 (114) 또는 시간 등화기 (108) 는 제 2 장기 평활화된 비교 값들을 생성하기 위해 예를 들어, 1.2 의 팩터 (20 % 부스트 또는 증가) 에 의해 제 1 장기 평활화된 비교 값들 (755) 의 서브세트의 소정의 값들을 증가 (또는 부스팅 또는 바이어싱) 시킬 수도 있다. 이 부스팅 또는 바이어싱은 제 1 장기 평활화된 비교 값들 (755) 의 서브세트 내의 값들에 오프셋을 부가하는 것에 의해 또는 스케일링 팩터를 곱하는 것에 의해 구현될 수도 있다.
일부 구현들에서, 인코더 (114) 또는 시간 등화기 (108) 는 서브세트가 이전 프레임 (예를 들어, 프레임 (N-1)) 의 시간 시프트 값에 대응하는 인덱스를 포함할 수도 있도록 제 1 장기 평활화된 비교 값들 (755) 의 서브세트를 부스팅 또는 바이어싱할 수도 있다. 추가적으로 또는 대안적으로, 서브세트는 이전 프레임 (예를 들어, 프레임 N-1) 의 시간 시프트 값 근처의 인덱스를 더 포함할 수도 있다. 예를 들어, 근처 (vicinity) 는 이전 프레임 (예를 들어, 프레임 (N-1)) 의 시간 시프트 값의 -delta (예를 들어, delta 는 바람직한 실시형태에서 1-5 샘플들의 범위에 있음) 및 +delta 이내를 의미할 수도 있다.
도 8 을 참조하면, 장기 평활화된 비교 값들의 서브세트를 조정하는 예시적인 예들이 도시되고 일반적으로 800 으로 지정된다. 예 (800) 는 도 1 의 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 도 2 의 시간 등화기(들) (208), 인코더 (214), 제 1 디바이스 (204), 도 5 의 신호 비교기 (506), 또는 이들의 조합에 의해 수행될 수도 있다.
그래프들 (830, 840, 850, 860) 의 x 축은 네거티브 시프트 값 대 포지티브 시프트 값을 나타내고 그래프들 (830, 840, 850, 860) 의 y 축은 비교 값들 (예를 들어, 상호 상관 값들) 을 나타낸다. 일부 구현에서, 예 (800) 에서의 그래프들 (830, 840, 850, 860) 의 y 축은 임의의 특정 프레임 (예를 들어, 프레임 N) 에 대한 장기 평활화된 비교 값들 (755) 를 예시할 수도 있지만, 대안적으로 그것은 임의의 특정 프레임 (예를 들어, 프레임 N) 에 대한 단기 평활화된 비교 값들 (745) 일 수도 있다.
예 (800) 는 장기 평활화된 비교 값들 (예를 들어, 제 1 장기 평활화된 비교 값들 (755)) 의 서브세트가 조정될 수도 있음을 나타내는 경우들을 예시한다. 예 (800) 에서 장기 평활화된 비교 값들의 서브세트를 조정하는 것은, 소정의 팩터에 의해 장기 평활화된 비교 값들 (예를 들어, 제 1 장기 평활화된 비교 값들 (755)) 의 서브세트의 소정의 값들을 증가시키는 것을 포함할 수도 있다. 본 명세서에서의 소정의 값들을 증가시키는 것은, 소정의 값들을 "엠퍼사이징" (또는 상호교환가능하게 "부스팅" 또는 "바이어싱") 하는 것으로 지칭될 수도 있다. 예 (800) 에서 장기 평활화된 비교 값들의 서브세트를 조정하는 것은 또한, 소정의 팩터에 의해 장기 평활화된 비교 값들 (예를 들어, 제 1 장기 평활화된 비교 값들 (755)) 의 서브세트의 소정의 값들을 감소시키는 것을 포함할 수도 있다. 본 명세서에서의 소정의 값들을 감소시키는 것은 소정의 값들을 "디엠퍼사이징" 하는 것으로 지칭될 수도 있다.
도 8 에서의 경우 #1 은 장기 평활화된 비교 값들의 서브세트의 소정의 값들이 소정의 팩터에 의해 증가 (엠퍼사이징 또는 부스팅 또는 바이어싱) 될 수도 있는 네거티브 시프트 사이드 엠퍼시스 (830) 의 예를 예시한다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 소정의 팩터 (예를 들어, 1.2, 이는 값들에 있어서 20 % 증가 또는 부스팅을 나타낸다) 에 의해 그래프 (예를 들어, 제 1 장기 평활화된 비교 값들 (755)) 의 x 인덱스의 좌측 절반 (네거티브 시프트 사이드 (810)) 에 대응하는 값들 (834) 을 증가시켜 증가된 값들 (838) 을 생성할 수도 있다. 경우 #2 는 장기 평활화된 비교 값들의 서브세트의 소정의 값들이 소정의 팩터에 의해 증가 (엠퍼사이징 또는 부스팅 또는 바이어싱) 될 수도 있는 포지티브 시프트 사이드 엠퍼시스 (840) 의 다른 예를 예시한다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 소정의 팩터 (예를 들어, 1.2, 이는 값들에 있어서 20 % 증가 또는 부스팅을 나타낸다) 에 의해 그래프 (예를 들어, 제 1 장기 평활화된 비교 값들 (755)) 의 x 인덱스의 우측 절반 (포지티브 시프트 사이드 (820)) 에 대응하는 값들 (844) 을 증가시켜 증가된 값들 (848) 을 생성할 수도 있다.
도 8 에서의 경우 #3 은 장기 평활화된 비교 값들의 서브세트의 소정의 값들이 소정의 팩터에 의해 감소 (또는 디엠퍼사이징) 될 수도 있는 네거티브 시프트 사이드 디엠퍼시스 (850) 의 예를 예시한다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 소정의 팩터 (예를 들어, 0.8, 이는 값들에 있어서 20 % 감소 또는 디엠퍼시스를 나타낸다) 에 의해 그래프 (예를 들어, 제 1 장기 평활화된 비교 값들 (755)) 의 x 인덱스의 좌측 절반 (네거티브 시프트 사이드 (810)) 에 대응하는 값들 (854) 을 감소시켜 감소된 값들 (858) 을 생성할 수도 있다. 경우 #4 는 장기 평활화된 비교 값들의 서브세트의 값들이 소정의 팩터에 의해 감소 (또는 디엠퍼사이징) 될 수도 있는 포지티브 시프트 사이드 디엠퍼시스 (860) 의 다른 예를 예시한다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 소정의 팩터 (예를 들어, 0.8, 이는 값들에 있어서 20 % 감소 또는 디엠퍼시스를 나타낸다) 에 의해 그래프 (예를 들어, 제 1 장기 평활화된 비교 값들 (755)) 의 x 인덱스의 우측 절반 (포지티브 시프트 사이드 (820)) 에 대응하는 값들 (864) 을 감소시켜 감소된 값들 (868) 을 생성할 수도 있다.
도 8 에서의 4 개의 경우들은 예시 목적을 위해서만 제시되고, 따라서 본 명세서에서 사용된 임의의 범위들 또는 값들 또는 팩터들은 제한적 예들인 것으로 의도되지 않는다. 예를 들어, 도 8 에서의 모든 4 개의 경우들은 그래프의 x 축의 좌측 또는 우측 절반의 전체 값들을 조정하는 것을 예시한다. 그러나, 일부 구현들에서, 포지티브 또는 네거티브 x 축에서의 값들의 서브세트만이 조정될 수도 있을 가능성이 있을 수도 있다. 다른 예에서, 도 8 에서의 모든 4 개의 경우들은 소정의 팩터 (예를 들어, 스케일링 팩터) 에 의해 값들을 조정하는 것을 예시한다. 그러나, 일부 구현들에서, 복수의 팩터들이 예 (800) 에서의 그래프들의 x 축의 상이한 영역들에 대해 사용될 수도 있다. 추가적으로, 소정의 팩터에 의해 값들을 조정하는 것은 값들에 오프셋 값을 부가하거나 값들로부터 오프셋 값을 감산하는 것에 의해 또는 스케일링 팩터를 곱하는 것에 의해 구현될 수도 있다.
도 9 를 참조하면, 특정 이득 파라미터에 기초하여 장기 평활화된 비교 값들의 서브세트를 조정하는 방법 (900) 이 도시된다. 방법 (900) 은 도 1 의 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 또는 이들의 조합에 의해 수행될 수도 있다.
방법 (900) 은 910 에서, 이전 프레임 (예를 들어, 프레임 N-1) 에 대한 이득 파라미터 (gD) 를 계산하는 단계를 포함한다. 900 에서의 이득 파라미터는 도 1 에서의 이득 파라미터 (160) 일 수도 있다. 일부 구현들에서, 시간 등화기 (108) 는 타겟 채널의 샘플들에 기초하여 및 레퍼런스 채널의 샘플들에 기초하여 이득 파라미터 (160) (예를 들어, 코덱 이득 파라미터 또는 타겟 이득) 를 생성할 수도 있다. 예를 들어, 시간 등화기 (108) 는 비인과 불일치 값 (162) 에 기초하여 제 2 오디오 신호 (132) 의 샘플들을 선택할 수도 있다. 대안적으로, 시간 등화기 (108) 는 비인과 불일치 값 (162) 에 독립적으로 제 2 오디오 신호 (132) 의 샘플들을 선택할 수도 있다. 시간 등화기 (108) 는 제 1 오디오 신호 (130) 가 레퍼런스 채널임을 결정하는 것에 응답하여, 제 1 오디오 신호 (130) 의 제 1 프레임 (131) 의 제 1 샘플들에 기초하여 선택된 샘플들의 이득 파라미터 (160) 를 결정할 수도 있다. 대안적으로, 시간 등화기 (108) 는 제 2 오디오 신호 (132) 가 레퍼런스 채널임을 결정하는 것에 응답하여, 레퍼런스 채널의 레퍼런스 프레임의 에너지 및 타겟 채널의 타겟 프레임의 에너지에 기초하여 이득 파라미터 (160) 를 결정할 수도 있다. 예로서, 이득 파라미터 (160) 는 수식들 1a, 1b, 1c, 1d, 1e, 또는 1f 중 하나 이상에 기초하여 계산 또는 생성될 수도 있다. 일부 구현들에서, 이득 파라미터 (160) (gD) 는 임의의 공지된 평활화 알고리즘들에 의해 또는 대안적으로 프레임들 사이의 이득에서의 큰 급등들을 회피하기 위한 히스테리시스에 의해 복수의 프레임들에 걸쳐 수정 또는 평활화될 수도 있다.
인코더 (114) 또는 시간 등화기 (108) 는 920, 950 에서, 이득 파라미터와 임계치 (예를 들어, Thr1 또는 Thr2) 를 비교할 수도 있다. 수식들 1a - 1f 중 하나 이상에 기초한, 이득 파라미터 (160) (gD) 가 1 초과일 경우, 그것은 제 1 오디오 신호 (130) (또는 좌측 채널) 가 선두 채널 ("레퍼런스 채널") 이고 따라서 시프트 값들 ("시간 시프트 값들") 이 포지티브 값들일 가능성이 더 높음을 나타낼 수도 있다. 시간 시프트 값들은 잠정적 불일치 값 (536), 보간된 불일치 값 (538), 보정된 불일치 값 (540), 최종 불일치 값 (116), 또는 비인과 불일치 값 (162) 중 하나일 수도 있다. 따라서, 포지티브 시프트 사이드에서의 값들을 엠퍼사이징 (또는 증가 또는 부스팅 또는 바이어싱) 하고 및/또는 네거티브 시프트 사이드에서의 값들을 디엠퍼사이징 (또는 감소) 하는 것이 유리할 수도 있다.
수식들 1a - 1f 중 하나 이상에 기초하여 계산되는 이득 파라미터 (160) (gD) 가 1 초과일 경우, 그것은 제 1 오디오 신호 (130) (또는 좌측 채널) 가 선두 채널 ("레퍼런스 채널") 이고 따라서 시프트 값들 ("시간 시프트 값들") 이 포지티브 값일 가능성이 더 높음을 의미할 수도 있다. 시간 시프트 값들은 잠정적 불일치 값 (536), 보간된 불일치 값 (538), 보정된 불일치 값 (540), 최종 불일치 값 (116), 또는 비인과 불일치 값 (162) 중 하나일 수도 있다. 따라서, 정확한 비인과 시프트 값을 결정할 가능성은, 포지티브 시프트 사이드에서의 값들을 엠퍼사이징 (또는 증가 또는 부스팅 또는 바이어싱) 하고 및/또는 네거티브 시프트 사이드에서의 값들을 디엠퍼사이징 (또는 감소) 함으로써 유리하게 개선될 수도 있다.
수식들 1a - 1f 중 하나 이상에 기초하여 계산되는 이득 파라미터 (160) (gD) 가 1 미만일 경우, 제 2 오디오 신호 (130) (또는 우측 채널) 가 선두 채널 ("레퍼런스 채널") 이고 따라서 시프트 값들 ("시간 시프트 값들") 이 네거티브 값일 가능성이 더 높음을 의미할 수도 있다. 정확한 비인과 시프트 값을 결정할 가능성은 네거티브 시프트 사이드에서의 값들을 엠퍼사이징 (또는 증가 또는 부스팅 또는 바이어싱) 하고 및/또는 포지티브 시프트 사이드에서의 값들을 디엠퍼사이징 (또는 감소) 함으로써 유리하게 개선될 수도 있다.
일부 구현들에서, 인코더 (114) 또는 시간 등화기 (108) 는 이득 파라미터 (160) (gD) 와 제 1 임계치 (예를 들어, Thr1 = 1.2) 또는 다른 임계치 (예를 들어, Thr2 = 0.8) 를 비교할 수도 있다. 예시 목적을 위해, 도 9 는 920 에서의 이득 파라미터 (160) (gD) 와 Thr1 사이의 제 1 비교가 950 에서의 이득 파라미터 (160) (gD) 와 Thr2 사이의 제 2 비교 전에 오는 것을 도시한다. 그러나, 제 1 비교 (920) 와 제 2 비교 (950) 사이의 순서는 일반성의 손실 없이 역전될 수도 있다. 일부 구현들에서, 제 1 비교 (920) 및 제 2 비교 (950) 중 어느 하나가 다른 비교 없이 실행될 수도 있다.
인코더 (114) 또는 시간 등화기 (108) 는 비교 결과에 응답하여, 제 2 장기 평활화된 비교 값들을 생성하기 위해 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정할 수도 있다. 예를 들어, 이득 파라미터 (160) (gD) 가 제 1 임계치 (예를 들어, Thr1 = 1.2) 초과일 경우, 방법 (900) 은, 인접한 프레임들 사이의 시간 시프트 값들의 부호들 (포지티브 또는 네거티브) 에서의 의사의 급등들을 회피하기 위해 포지티브 시프트 사이드를 엠퍼사이징하는 것 (예를 들어, 경우 #2 (830, 930)) 및 네거티브 시프트 사이드를 디엠퍼사이징하는 것 (예를 들어, 경우 #3 (840, 940)) 중 적어도 하나에 의해 제 1 장기 평할화된 비교 값들의 서브세트를 조정할 수도 있다. 일부 구현들에서, 경우 #2 (예를 들어, 포지티브 시프트 사이드 엠퍼시스) 와 경우 #3 (네거티브 시프트 사이드 디엠퍼시스) 양자 모두는 그들 사이에 임의의 순서로 실행될 수도 있다. 대안적으로, 경우 #2 (예를 들어, 포지티브 시프트 사이드 엠퍼시스) 가 포지티브 시프트 사이드를 엠퍼사이징하기 위해 선택되었던 경우, 다른 사이드 (예를 들어, 네거티브 사이드) 의 값들은, 시간 시프트 값들의 부정확한 부호를 검출하는 위험을 감소시키기 위해, 경우 #3 을 실행하는 대신, 제로 아웃될 수도 있다.
추가적으로, 이득 파라미터 (160) (gD) 가 제 2 임계치 (예를 들어, Thr2 = 0.8) 미만일 경우, 방법 (900) 은, 인접한 프레임들 사이의 시간 시프트 값들의 부호들 (포지티브 또는 네거티브) 에서의 의사의 급등들을 회피하기 위해 네거티브 시프트 사이드를 엠퍼사이징하는 것 (예를 들어, 경우 #1 (860, 960)) 및 포지티브 시프트 사이드를 디엠퍼사이징하는 것 (예를 들어, 경우 #4 (870, 970)) 중 적어도 하나에 의해 제 1 장기 평활화된 비교 값들의 서브세트를 조정할 수도 있다. 일부 구현들에서, 경우 #1 (예를 들어, 네거티브 시프트 사이드 엠퍼시스) 과 경우 #4 (포지티브 시프트 사이드 디엠퍼시스) 양자 모두는 그들 사이에 임의의 순서로 실행될 수도 있다. 대안적으로, 경우 #1 (예를 들어, 네거티브 시프트 사이드 엠퍼시스) 이 네거티브 시프트 사이드를 엠퍼사이징하기 위해 선택되었던 경우, 다른 사이드 (예를 들어, 포지티브 사이드) 의 값들은, 시간 시프트 값들의 부정확한 부호를 검출하는 위험을 감소시키기 위해, 경우 #4 를 실행하는 대신, 제로 아웃될 수도 있다.
방법 (900) 은 조정이 이득 파라미터 (160) (gD) 에 기초하여, 제 1 장기 평활화된 비교 값들의 서브세트의 값들에 대해 수행될 수도 있음을 나타내지만, 조정은 대안적으로 순간 비교 값들 또는 단기 평활화된 비교 값들의 서브세트의 값들 중 어느 하나에 대해 수행될 수도 있다. 일부 구현들에서, 값들을 조정하는 것은 다중 래그 값들에 걸쳐 평활한 윈도우 (예를 들어, 평활한 스케일링 윈도우) 를 사용하여 수행될 수도 있다. 다른 구현들에서, 평활한 윈도우의 길이는 예를 들어 비교 값들의 상호 상관의 값에 기초하여 적응적으로 변경될 수도 있다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 프레임 N (710, 720) 에 대한 순간 비교 값들 (735) 및 프레임 N (710, 720) 에 대한 단기 평활화된 비교 값들 (745) 의 상호 상관 값 (765) 에 기초하여 평활한 윈도우의 길이를 조정할 수도 있다.
도 10 을 참조하면, 보이싱된 프레임들, 트랜지션 프레임들, 및 언보이싱된 프레임들에 대한 비교 값들을 예시하는 그래프들이 도시된다. 도 10 에 따르면, 그래프 (1002) 는 설명된 장기 평활화 기법들을 사용함이 없이 프로세싱된 보이싱된 프레임에 대한 비교 값들 (예를 들어, 상호 상관 값들) 을 예시하고, 그래프 (1004) 는 설명된 장기 평활화 기법들을 사용함이 없이 프로세싱된 트랜지션 프레임에 대한 비교 값들을 예시하고, 그리고 그래프 (1006) 는 설명된 장기 평활화 기법들을 사용함이 없이 프로세싱된 언보이싱된 프레임에 대한 비교 값들을 예시한다.
각각의 그래프 (1002, 1004, 1006) 에서 표현된 상호 상관은 실질적으로 상이할 수도 있다. 예를 들어, 그래프 (1002) 는 도 1 의 제 1 마이크로폰 (146) 에 의해 캡처된 보이싱된 프레임과 도 1 의 제 2 마이크로폰 (148) 에 의해 캡처된 대응하는 보이싱된 프레임 사이의 피크 상호 상관이 대략 17 샘플 시프트에서 발생함을 예시한다. 그러나, 그래프 (1004) 는 제 1 마이크로폰 (146) 에 의해 캡처된 트랜지션 프레임과 제 2 마이크로폰 (148) 에 의해 캡처된 대응하는 트랜지션 프레임 사이의 피크 상호 상관이 대략 4 샘플 시프트에서 발생함을 예시한다. 더욱이, 그래프 (1006) 는 제 1 마이크로폰 (146) 에 의해 캡처된 언보이싱된 프레임과 제 2 마이크로폰 (148) 에 의해 캡처된 대응하는 언보이싱된 프레임 사이의 피크 상호 상관이 대략 -3 샘플 시프트에서 발생함을 예시한다. 따라서, 비교적 높은 노이즈 레벨로 인해 트랜지션 프레임들 및 언보이싱된 프레임들에 대해 시프트 추정치가 부정확할 수도 있다.
도 10 에 따르면, 그래프 (1012) 는 설명된 장기 평활화 기법들을 사용하여 프로세싱된 보이싱된 프레임에 대한 비교 값들 (예를 들어, 상호 상관 값들) 을 예시하고, 그래프 (1014) 는 설명된 장기 평활화 기법들을 사용하여 프로세싱된 트랜지션 프레임에 대한 비교 값들을 예시하고, 그리고 그래프 (1016) 는 설명된 장기 평활화 기법들을 사용하여 프로세싱된 언보이싱된 프레임에 대한 비교 값들을 예시한다. 각각의 그래프 (1012, 1014, 1016) 에서의 상호 상관 값들은 실질적으로 유사할 수도 있다. 예를 들어, 각각의 그래프 (1012, 1014, 1016) 는 도 1 의 제 1 마이크로폰 (146) 에 의해 캡처된 프레임과 도 1 의 제 2 마이크로폰 (148) 에 의해 캡처된 대응하는 프레임 사이의 피크 상호 상관이 대략 17 샘플 시프트에서 발생함을 예시한다. 따라서, 트랜지션 프레임들 (그래프 (1014) 에 의해 예시됨) 및 언보이싱된 프레임들 (그래프 (1016) 에 의해 예시됨) 에 대한 시프트 추정치들은 노이즈에도 불구하고 보이싱된 프레임의 시프트 추정치에 대해 비교적 정확 (또는 그와 유사) 할 수도 있다.
도 11 을 참조하면, 다중 마이크로폰들에서 캡처된 오디오 사이의 시간 오프셋에 기초하여 채널을 비인과적으로 시프트하는 방법 (1100) 이 도시된다. 방법 (1100) 은 도 1 의 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 또는 이들의 조합에 의해 수행될 수도 있다.
방법 (1100) 은 1110 에서, 인코더에서 비교 값들을 추정하는 단계를 포함한다. 각각의 비교 값은 1110 에서, 시간 불일치의 양, 또는 레퍼런스 채널의 제 1 레퍼런스 프레임과 타겟 채널의 대응하는 제 1 타겟 프레임 사이의 유사도 또는 비유사도의 측정치를 나타낼 수도 있다. 일부 구현들에서, 레퍼런스 프레임과 타겟 프레임 사이의 상호 상관 함수는 2 개의 프레임들의 유사도를 일 프레임의 다른 프레임에 대한 래그의 함수로서 측정하는데 사용될 수도 있다. 예를 들어, 도 1 을 참조하면, 인코더 (114) 또는 시간 등화기 (108) 는 시간 불일치의 양, 또는 (더 이른 시간에 캡처된) 레퍼런스 프레임들과 (더 이른 시간에 캡처된) 대응하는 타겟 프레임들 사이의 유사도 또는 비유사도의 측정치를 나타내는 비교 값들 (예를 들어, 상호 상관 값들) 을 추정할 수도 있다. 예시하기 위해, 가 프레임 N 에 대한 k 의 시프트에서의 비교 값을 나타내면, 프레임 N 은 (최소 시프트) 으로부터 (최대 시프트) 까지의 비교 값들을 가질 수도 있다.
방법 (1100) 은 1115 에서, 단기 평활화된 비교 값들을 생성하기 위해 비교 값들을 평활하는 단계를 포함한다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 단기 평활화된 비교 값들을 생성하기 위해 비교 값들을 평활화할 수도 있다. 단기 평활화된 비교 값들 (예를 들어, 프레임 N 에 대한 ) 은 프로세싱되는 현재 프레임 (예를 들어, 프레임 N) 근처의 프레임들의 비교 값들의 평활화된 버전으로서 추정될 수도 있다. 예시하기 위해, 단기 비교 값들은 현재 및 이전 프레임들에 대한 복수의 비교 값들 (예를 들어, ) 의 선형 조합으로서 생성될 수도 있다. 일부 구현들에서, 불균일한 가중화가 현재 및 이전 프레임들에 대한 복수의 비교 값들에 적용될 수도 있다. 다른 구현들에서, 단기 비교 값들은 프로세싱되는 프레임에서 생성된 비교 값들 과 동일할 수도 있다.
방법 (1100) 은 1120 에서, 평활화 파라미터에 기초하여 제 1 장기 평활화된 비교 값들을 생성하기 위해 비교 값들을 평활하는 단계를 포함한다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 이력적 비교 값 데이터 및 평활화 파라미터에 기초하여 평활화된 비교 값들을 생성하기 위해 비교 값들을 평활화할 수도 있다. 평활화는 장기 평활화된 비교 값들 가 로 표현되도록 수행될 수도 있다. 상기 수식에서의 함수 f 는 시프트 (k) 에서의 과거 비교 값들 모두 (또는 서브세트) 의 함수일 수도 있다. 그의 대안적인 표현은 일 수도 있다. 함수들 f 또는 g 는 각각 간단한 유한 임펄스 응답 (FIR) 필터들 또는 무한 임펄스 응답 (IIR) 필터들일 수도 있다. 예를 들어, 함수 g 는 장기 평활화된 비교 값들 가 로 표현되도록 단일 탭 IIR 필터일 수도 있으며, 여기서 이다. 따라서, 장기 평활화된 비교 값들 는 프레임 N 에 대한 순간 비교 값들 와 하나 이상의 이전 프레임들에 대한 장기 평활화된 비교 값들 의 가중된 혼합에 기초할 수도 있다.
하나의 구현에 따르면, 평활화 파라미터는 적응적일 수도 있다. 예를 들어, 방법 (1100) 은 단기 평활화된 비교 값들의 장기 평활화된 비교 값들에 대한 상관에 기초하여 평활화 파라미터를 적응시키는 단계를 포함할 수도 있다. 의 값이 증가함에 따라, 장기 평활화된 비교 값에서의 평활화의 양이 증가한다. 평활화 파라미터 () 의 값은 입력 채널들의 단기 에너지 표시자들 및 입력 채널들의 장기 에너지 표시자들에 기초하여 조정될 수도 있다. 추가적으로, 평활화 파라미터 () 의 값은 단기 에너지 표시자들이 장기 에너지 표시자들보다 더 크면 감소될 수도 있다. 다른 구현에 따르면, 평활화 파라미터 () 의 값은 단기 평활화된 비교 값들의 장기 평활화된 비교 값들에 대한 상관에 기초하여 조정된다. 추가적으로, 평활화 파라미터 () 의 값은 상관이 임계치를 초과하면 증가될 수도 있다. 다른 구현에 따르면, 비교 값들은 다운 샘플링된 레퍼런스 채널들 및 대응하는 다운 샘플링된 타겟 채널의 상호 상관 값들일 수도 있다.
방법 (1100) 은 1125 에서, 비교 값들과 단기 평활화된 비교 값들 사이의 상호 상관 값을 계산하는 단계를 포함한다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 단일 프레임에 대한 비교 값들 ("순간 비교 값들" ) (735) 과 단기 평활화된 비교 값들 (745) 사이의 비교 값들의 상호 상관 값 (765) 을 계산할 수도 있다. 비교 값들의 상호 상관 값 (765) 은 각각의 프레임 (N) 당 추정되는 단일 값일 수도 있고, 그것은 2 개의 다른 상관 값들 사이의 상호 상관의 정도에 대응할 수도 있다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 (765) 을 로서 계산할 수도 있다. 여기서 'Fac' 는 이 0 과 1 사이에서 제한되도록 선택되는 정규화 팩터이다.
대안적인 구현들에서, 방법 (1100) 은 1125 에서, 단기 평활화된 비교 값들과 장기 평활화된 비교 값들 사이의 상호 상관 값을 계산하는 단계를 포함할 수도 있다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 단기 평활화된 비교 값들 (745) 과 장기 평활화된 비교 값들 (755) 사이의 비교 값들의 상호 상관 값 (765) 을 계산할 수도 있다. 비교 값들의 상호 상관 값 (765) 은 각각의 프레임 (N) 당 추정되는 단일 값일 수도 있고, 그것은 2 개의 다른 상관 값들 사이의 상호 상관의 정도에 대응할 수도 있다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 (765) 을 로서 계산할 수도 있다.
방법 (1100) 은 1130 에서, 상호 상관 값과 임계치를 비교하는 단계를 포함한다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 상호 상관 값 (765) 과 임계치를 비교할 수도 있다. 방법 (1100) 은 또한, 1135 에서, 상호 상관 값이 임계치를 초과함을 결정하는 것에 응답하여, 제 2 장기 평활화된 비교 값들을 생성하기 위해 제 1 장기 평활화된 비교 값들을 조정하는 단계를 포함한다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 비교 결과에 기초하여 제 1 장기 평활화된 비교 값들 (755) 의 전체 또는 일부 부분을 조정할 수도 있다. 일부 구현들에서, 인코더 (114) 또는 시간 등화기 (108) 는 비교 값들의 상호 상관 값 (765) 이 임계치를 초과한다는 결정에 응답하여 제 1 장기 평활화된 비교 값들 (755) 의 서브세트의 소정의 값들을 증가 (또는 부스팅 또는 바이어싱) 시킬 수도 있다. 예를 들어, 비교 값들의 상호 상관 값 이 임계치 (예를 들어, 0.8) 이상일 경우, 그것은 비교 값들 사이의 상호 상관 값이 매우 강하거나 또는 높음을 나타낼 수도 있으며, 이는 인접한 프레임들 사이에 시간 시프트 값들의 변동들이 작거나 또는 없음을 나타낸다. 따라서, 현재 프레임 (예를 들어, 프레임 N) 의 추정된 시간 시프트 값은 이전 프레임 (예를 들어, 프레임 N-1) 의 시간 시프트 값들 또는 임의의 다른 이전 프레임들의 시간 시프트 값들로부터 너무 멀리 떨어질 수 없다. 시간 시프트 값들은 잠정적 불일치 값 (536), 보간된 불일치 값 (538), 보정된 불일치 값 (540), 최종 불일치 값 (116), 또는 비인과 불일치 값 (162) 중 하나일 수도 있다. 따라서, 인코더 (114) 또는 시간 등화기 (108) 는 제 2 장기 평활화된 비교 값들을 생성하기 위해 예를 들어, 1.2 의 팩터 (20 % 부스트 또는 증가) 에 의해 제 1 장기 평활화된 비교 값들 (755) 의 서브세트의 소정의 값들을 증가 (또는 부스팅 또는 바이어싱) 시킬 수도 있다. 이 부스팅 또는 바이어싱은 제 1 장기 평활화된 비교 값들 (755) 의 서브세트 내의 값들에 오프셋을 부가하는 것에 의해 또는 스케일링 팩터를 곱하는 것에 의해 구현될 수도 있다. 일부 구현들에서, 인코더 (114) 또는 시간 등화기 (108) 는 서브세트가 이전 프레임 (예를 들어, 프레임 (N-1)) 의 시간 시프트 값에 대응하는 인덱스를 포함할 수도 있도록 제 1 장기 평활화된 비교 값들 (755) 의 서브세트를 부스팅 또는 바이어싱할 수도 있다. 추가적으로 또는 대안적으로, 서브세트는 이전 프레임 (예를 들어, 프레임 N-1) 의 시간 시프트 값 근처의 인덱스를 더 포함할 수도 있다. 예를 들어, 근처는 이전 프레임 (예를 들어, 프레임 (N-1)) 의 시간 시프트 값의 -delta (예를 들어, delta 는 바람직한 실시형태에서 1-5 샘플들의 범위에 있음) 및 +delta 이내를 의미할 수도 있다.
방법 (1100) 은 1140 에서, 제 2 장기 평활화된 비교 값들에 기초하여 잠정적 시프트 값을 추정하는 단계를 포함한다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 제 2 장기 평활화된 비교 값들에 기초하여 잠정적 시프트 값 (536) 을 추정할 수도 있다. 방법 (1100) 은 또한, 1145 에서, 잠정적 시프트 값에 기초하여 비인과 시프트 값을 결정하는 단계를 포함한다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 잠정적 시프트 값 (예를 들어, 잠정적 불일치 값 (536), 보간된 불일치 값 (538), 보정된 불일치 값 (540), 또는 최종 불일치 값 (116)) 에 적어도 부분적으로 기초하여 비인과 시프트 값 (예를 들어, 비인과 불일치 값 (162)) 을 결정할 수도 있다.
방법 (1100) 은 1150 에서, 특정 레퍼런스 채널과 시간적으로 정렬되는 조정된 특정 타겟 채널을 생성하기 위해 특정 타겟 채널을 비인과 시프트 값만큼 비인과적으로 시프트하는 단계를 포함한다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 레퍼런스 채널과 시간적으로 정렬되는 조정된 타겟 채널을 생성하기 위해 타겟 채널을 비인과 시프트 값 (예를 들어, 비인과 불일치 값 (162)) 만큼 비인과적으로 시프트할 수도 있다. 방법 (1100) 은 또한, 1155 에서, 특정 레퍼런스 채널 및 조정된 특정 타겟 채널에 기초하여 미드 대역 채널 또는 사이드 대역 채널 중 적어도 하나를 생성하는 단계를 포함한다. 예를 들어, 도 11 을 참조하면, 인코더 (114) 는 레퍼런스 채널 및 조정된 타겟 채널에 기초하여 적어도 미드 대역 채널 및 사이드 대역 채널을 생성할 수도 있다.
도 12 를 참조하면, 다중 마이크로폰들에서 캡처된 오디오 사이의 시간 오프셋에 기초하여 채널을 비인과적으로 시프트하는 방법 (1200) 이 도시된다. 방법 (1200) 은 도 1 의 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 또는 이들의 조합에 의해 수행될 수도 있다.
방법 (1200) 은 1210 에서, 인코더에서 비교 값들을 추정하는 단계를 포함한다. 예를 들어, 1210 에서의 방법은, 도 11 을 참조하여 설명된 바와 같은, 1110 에서의 방법과 유사할 수도 있다. 방법 (1200) 은 또한, 1220 에서, 평활화 파라미터에 기초하여 제 1 장기 평활화된 비교 값들을 생성하기 위해 비교 값들을 평활하는 단계를 포함한다. 예를 들어, 1220 에서의 방법은, 도 11 을 참조하여 설명된 바와 같은, 1120 에서의 방법과 유사할 수도 있다.
방법 (1200) 은 1225 에서, 레퍼런스 채널의 이전 레퍼런스 프레임과 타겟 채널의 대응하는 이전 타겟 프레임으로부터 이득 파라미터를 계산하는 단계를 포함한다. 일부 구현들에서, 이전 프레임으로부터의 이득 파라미터는 이전 레퍼런스 프레임의 에너지 및 이전 타겟 프레임의 에너지에 기초할 수도 있다. 일부 구현들에서, 인코더 (114) 또는 시간 등화기 (108) 는 타겟 채널의 샘플들에 기초하여 및 레퍼런스 채널의 샘플들에 기초하여 이득 파라미터 (160) (예를 들어, 코덱 이득 파라미터 또는 타겟 이득) 를 생성 또는 계산할 수도 있다. 예를 들어, 시간 등화기 (108) 는 비인과 불일치 값 (162) 에 기초하여 제 2 오디오 신호 (132) 의 샘플들을 선택할 수도 있다. 대안적으로, 시간 등화기 (108) 는 비인과 불일치 값 (162) 에 독립적으로 제 2 오디오 신호 (132) 의 샘플들을 선택할 수도 있다. 시간 등화기 (108) 는 제 1 오디오 신호 (130) 가 레퍼런스 채널임을 결정하는 것에 응답하여, 제 1 오디오 신호 (130) 의 제 1 프레임 (131) 의 제 1 샘플들에 기초하여 선택된 샘플들의 이득 파라미터 (160) 를 결정할 수도 있다. 대안적으로, 시간 등화기 (108) 는 제 2 오디오 신호 (132) 가 레퍼런스 채널임을 결정하는 것에 응답하여, 레퍼런스 채널의 레퍼런스 프레임의 에너지 및 타겟 채널의 타겟 프레임의 에너지에 기초하여 이득 파라미터 (160) 를 결정할 수도 있다. 예로서, 이득 파라미터 (160) 는 수식들 1a, 1b, 1c, 1d, 1e, 또는 1f 중 하나 이상에 기초하여 계산 또는 생성될 수도 있다. 일부 구현들에서, 이득 파라미터 (160) (gD) 는 임의의 공지된 평활화 알고리즘들에 의해 또는 대안적으로 프레임들 사이의 이득에서의 큰 급등들을 회피하기 위한 히스테리시스에 의해 복수의 프레임들에 걸쳐 수정 또는 평활화될 수도 있다.
방법 (1200) 은 또한, 1230 에서, 이득 파라미터와 제 1 임계치를 비교하는 단계를 포함한다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는, 1230 에서, 이득 파라미터와 제 1 임계치 (예를 들어, Thr1 또는 Thr2) 를 비교할 수도 있다. 수식들 1a - 1f 중 하나 이상에 기초한, 이득 파라미터 (160) (gD) 가 1 초과일 경우, 그것은 제 1 오디오 신호 (130) (또는 좌측 채널) 가 선두 채널 ("레퍼런스 채널") 이고 따라서 시프트 값들 ("시간 시프트 값들") 이 포지티브 값들일 가능성이 더 높음을 나타낼 수도 있다. 시간 시프트 값들은 잠정적 불일치 값 (536), 보간된 불일치 값 (538), 보정된 불일치 값 (540), 최종 불일치 값 (116), 또는 비인과 불일치 값 (162) 중 하나일 수도 있다. 따라서, 포지티브 시프트 사이드에서의 값들을 엠퍼사이징 (또는 증가 또는 부스팅 또는 바이어싱) 하고 및/또는 네거티브 시프트 사이드에서의 값들을 디엠퍼사이징 (또는 감소) 하는 것이 유리할 수도 있다. 일부 구현들에서, 인코더 (114) 또는 시간 등화기 (108) 는 도 9 를 참조하여 설명된 바와 같이, 이득 파라미터 (160) (gD) 와 제 1 임계치 (예를 들어, Thr1 = 1.2) 또는 다른 임계치 (예를 들어, Thr2 = 0.8) 를 비교할 수도 있다.
방법 (1200) 은 또한 1235 에서, 제 2 장기 평활화된 비교 값들을 생성하기 위해, 비교 결과에 응답하여, 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하는 단계를 포함한다. 예를 들어, 인코더 (114) 또는 시간 등화기 (108) 는 비교 결과에 응답하여, 제 2 장기 평활화된 비교 값들을 생성하기 위해 제 1 장기 평활화된 비교 값들 (755) 의 제 1 서브세트를 조정할 수도 있다. 바람직한 실시형태에서, 제 1 장기 평활화된 비교 값들의 제 1 서브세트는 도 9 를 참조하여 설명된 바와 같이, 제 1 장기 평활화된 비교 값들 (755) 의 포지티브 절반 (예를 들어, 포지티브 시프트 사이드 (820)) 또는 네거티브 절반 (예를 들어, 네거티브 시프트 사이드 (810)) 중 어느 하나에 대응한다. 일부 구현들에서, 인코더 (114) 또는 시간 등화기 (108) 는 도 8 에 도시된 4 개의 예들 - 경우 #1 (네거티브 시프트 사이드 엠퍼시스) (830), 경우 #2 (포지티브 시프트 사이드 엠퍼시스) (840), 경우 #3 (네거티브 시프트 사이드 디엠퍼시스) (850), 및 경우 #4 (포지티브 시프트 사이드 디엠퍼시스) (860) 에 따라 제 1 장기 평활화된 비교 값들 (755) 의 제 1 서브세트를 조정할 수도 있다.
도 8 로 돌아가면, 예 (800) 는 장기 평활화된 비교 값들 (예를 들어, 제 1 장기 평활화된 비교 값들 (755)) 의 서브세트가 비교 결과에 기초하여 조정될 수도 있음을 나타내는 4 개의 경우들을 예시한다. 예 (800) 에서 장기 평활화된 비교 값들의 서브세트를 조정하는 것은, 소정의 팩터에 의해 장기 평활화된 비교 값들 (예를 들어, 제 1 장기 평활화된 비교 값들 (755)) 의 서브세트의 소정의 값들을 증가시키는 것을 포함할 수도 있다. 예를 들어, 도 8 및 도 9 는 도 9 에서의 플로우차트를 참조하여 이전에 설명된 바와 같이 소정의 예시적인 조건들에 따라 소정의 값들을 증가시키는 예 (예를 들어, 도 8 에서의 경우 #1 및 경우 #2) 를 예시한다. 장기 평활화된 비교 값들의 서브세트를 조정하는 것은 또한, 소정의 팩터에 의해 장기 평활화된 비교 값들 (예를 들어, 제 1 장기 평활화된 비교 값들 (755)) 의 서브세트의 소정의 값들을 감소시키는 것을 포함할 수도 있다. 도 8 및 도 9 는 도 9 에서의 플로우차트를 참조하여 이전에 설명된 바와 같이 소정의 예시적인 조건들에 따라 소정의 값들을 감소시키는 예 (예를 들어, 도 8 에서의 경우 #3 및 경우 #4) 를 예시한다.
도 8 에서의 4 개의 경우들은 예시 목적을 위해서만 제시되고, 따라서 본 명세서에서 사용된 임의의 범위들 또는 값들 또는 팩터들은 제한적 예들인 것으로 의도되지 않는다. 예를 들어, 도 8 에서의 모든 4 개의 경우들은 그래프의 x 축의 좌측 또는 우측 절반의 전체 값들을 조정하는 것을 예시한다. 그러나, 일부 구현들에서, 포지티브 또는 네거티브 x 축에서의 값들의 서브세트만이 조정될 수도 있을 가능성이 있을 수도 있다. 다른 예에서, 도 8 에서의 모든 4 개의 경우들은 소정의 팩터 (예를 들어, 스케일링 팩터) 에 의해 값들을 조정하는 것을 예시한다. 그러나, 일부 구현들에서, 복수의 팩터들이 예 (800) 에서의 그래프들의 x 축의 상이한 영역들에 대해 사용될 수도 있다. 추가적으로, 소정의 팩터에 의해 값들을 조정하는 것은 값들에 오프셋 값을 부가하거나 값들로부터 오프셋 값을 감산하는 것에 의해 또는 스케일링 팩터를 곱하는 것에 의해 구현될 수도 있다.
방법 (1200) 은 1240 에서, 제 2 장기 평활화된 비교 값들에 기초하여 잠정적 시프트 값을 추정하는 단계를 포함한다. 예를 들어, 1240 에서의 방법은, 도 11 을 참조하여 설명된 바와 같은, 1140 에서의 방법과 유사할 수도 있다. 방법 (1200) 은 또한, 1245 에서, 잠정적 시프트 값에 기초하여 비인과 시프트 값을 결정하는 단계를 포함한다. 예를 들어, 1245 에서의 방법은, 도 11 을 참조하여 설명된 바와 같은, 1145 에서의 방법과 유사할 수도 있다. 방법 (1200) 은 1250 에서, 특정 레퍼런스 채널과 시간적으로 정렬되는 조정된 특정 타겟 채널을 생성하기 위해 특정 타겟 채널을 비인과 시프트 값만큼 비인과적으로 시프트하는 단계를 포함한다. 예를 들어, 1250 에서의 방법은, 도 11 을 참조하여 설명된 바와 같은, 1150 에서의 방법과 유사할 수도 있다. 방법 (1200) 은 또한, 1255 에서, 특정 레퍼런스 채널 및 조정된 특정 타겟 채널에 기초하여 미드 대역 채널 또는 사이드 대역 채널 중 적어도 하나를 생성하는 단계를 포함한다. 예를 들어, 1255 에서의 방법은, 도 11 을 참조하여 설명된 바와 같은, 1155 에서의 방법과 유사할 수도 있다.
도 13 을 참조하면, 디바이스 (예를 들어, 무선 통신 디바이스) 의 특정 예시적인 예의 블록 다이어그램이 도시되고 일반적으로 1300 으로 지정된다. 다양한 실시형태들에서, 디바이스 (1300) 는 도 13 에 예시된 것보다 더 적거나 또는 더 많은 컴포넌트들을 가질 수도 있다. 예시적인 실시형태에 있어서, 디바이스 (1300) 는 도 1 의 제 1 디바이스 (104) 또는 제 2 디바이스 (106) 에 대응할 수도 있다. 예시적인 실시형태에서, 디바이스 (1300) 는 도 1 내지 도 12 의 시스템들 및 방법들을 참조하여 설명된 하나 이상의 동작들을 수행할 수도 있다.
특정 실시형태에서, 디바이스 (1300) 는 프로세서 (1306) (예를 들어, 중앙 프로세싱 유닛 (CPU)) 를 포함한다. 디바이스 (1300) 는 하나 이상의 추가적인 프로세서들 (1310) (예를 들어, 하나 이상의 디지털 신호 프로세서들 (DSP들)) 을 포함할 수도 있다. 프로세서들 (1310) 은 미디어 (예를 들어, 스피치 및 뮤직) 코더-디코더 (코덱 (CODEC)) (1308), 및 에코 소거기 (1312) 를 포함할 수도 있다. 미디어 코덱 (1308) 은 도 1 의 디코더 (118), 인코더 (114), 또는 양자 모두를 포함할 수도 있다. 인코더 (114) 는 시간 등화기 (108) 를 포함할 수도 있다.
디바이스 (1300) 는 메모리 (153) 및 코덱 (1334) 을 포함할 수도 있다. 미디어 코덱 (1308) 이 프로세서들 (1310) 의 컴포넌트 (예를 들어, 전용 회로부 및/또는 실행가능 프로그래밍 코드) 로서 예시되지만, 다른 실시형태들에 있어서, 미디어 코덱 (1308) 의 하나 이상의 컴포넌트들, 이를 테면, 디코더 (118), 인코더 (114), 또는 양자 모두는 프로세서 (1306), 코덱 (1334), 다른 프로세싱 컴포넌트, 또는 이들의 조합에 포함될 수도 있다.
디바이스 (1300) 는 안테나 (1342) 에 커플링된 송신기 (110) 를 포함할 수도 있다. 디바이스 (1300) 는 디스플레이 제어기 (1326) 에 커플링된 디스플레이 (1328) 를 포함할 수도 있다. 하나 이상의 스피커들 (1348) 이 코덱 (1334) 에 커플링될 수도 있다. 하나 이상의 마이크로폰들 (1346) 은, 입력 인터페이스(들) (112) 를 통해 코덱 (1334) 에 커플링될 수도 있다. 특정 구현에서, 스피커들 (1348) 은 도 1 의 제 1 라우드스피커 (142), 제 2 라우드스피터 (144), 도 2 의 제 Y 라우드스피커 (244), 또는 이들의 조합을 포함할 수도 있다. 특정 구현에서, 마이크로폰들 (1346) 은 도 1 의 제 1 마이크로폰 (146), 제 2 마이크로폰 (148), 도 2 의 제 N 마이크로폰 (248), 도 11 의 제 3 마이크로폰 (1146), 제 4 마이크로폰 (1148), 또는 이들의 조합을 포함할 수도 있다. 코덱 (1334) 은 디지털-아날로그 컨버터 (DAC) (1302) 및 아날로그-디지털 컨버터 (ADC) (1304) 를 포함할 수도 있다.
메모리 (153) 는 도 1 내지 도 12 를 참조하여 설명된 하나 이상의 동작들을 수행하기 위해, 프로세서 (1306), 프로세서들 (1310), 코덱 (1334), 디바이스 (1300) 의 다른 프로세싱 유닛, 또는 이들의 조합에 의해 실행가능한 명령들 (1360) 을 포함할 수도 있다. 메모리 (153) 는 분석 데이터 (190) 를 저장할 수도 있다.
디바이스 (1300) 의 하나 이상의 컴포넌트들은 전용 하드웨어 (예를 들어, 회로부) 를 통해, 하나 이상의 태스크들을 수행하기 위한 명령들을 실행하는 프로세서에 의해, 또는 이들의 조합에 의해 구현될 수도 있다. 예로서, 프로세서 (1306), 프로세서들 (1310), 및/또는 코덱 (1334) 중 하나 이상의 컴포넌트들 또는 메모리 (153) 는 랜덤 액세스 메모리 (RAM), 자기저항 랜덤 액세스 메모리 (MRAM), 스핀-토크 전달 MRAM (STT-MRAM), 플래시 메모리, 판독 전용 메모리 (ROM), 프로그래밍가능 판독 전용 메모리 (PROM), 소거가능한 프로그래밍가능 판독 전용 메모리 (EPROM), 전기적으로 소거가능한 프로그래밍가능 판독 전용 메모리 (EEPROM), 레지스터들, 하드 디스크, 착탈가능 디스크, 또는 컴팩트 디스크 판독 전용 메모리 (CD-ROM) 와 같은 메모리 디바이스일 수도 있다. 메모리 디바이스는, 컴퓨터 (예를 들어, 코덱 (1334) 내의 프로세서, 프로세서 (1306), 및/또는 프로세서들 (1310)) 에 의해 실행될 때, 컴퓨터로 하여금 도 1 내지 도 12 를 참조하여 설명된 하나 이상의 동작들을 수행하게 할 수도 있는 명령들 (예를 들어, 명령들 (1360)) 을 포함할 수도 있다. 예로서, 프로세서 (1306), 프로세서들 (1310), 및/또는 코덱 (1334) 중 하나 이상의 컴포넌트들 또는 메모리 (153) 는, 컴퓨터 (예를 들어, 코덱 (1334) 내의 프로세서, 프로세서 (1306), 및/또는 프로세서들 (1310)) 에 의해 실행될 때, 컴퓨터로 하여금 도 1 내지 도 12 를 참조하여 설명된 하나 이상의 동작들을 수행하게 하는 명령들 (예를 들어, 명령들 (1360)) 을 포함하는 비일시적 컴퓨터 판독가능 매체일 수도 있다.
특정 실시형태에서, 디바이스 (1300) 는 시스템-인-패키지 또는 시스템-온-칩 디바이스 (예를 들어, 이동국 모뎀 (MSM)) (1322) 에 포함될 수도 있다. 특정 실시형태에서, 프로세서 (1306), 프로세서들 (1310), 디스플레이 제어기 (1326), 메모리 (153), 코덱 (1334), 및 송신기 (110) 는 시스템-인-패키지 또는 시스템-온-칩 디바이스 (1322) 에 포함된다. 특정 실시형태에서, 입력 디바이스 (1330), 이를 테면 터치스크린 및/또는 키패드, 및 전력 공급기 (1344) 는 시스템-온-칩 디바이스 (1322) 에 커플링된다. 더욱이, 특정 실시형태에서, 도 13 에 예시된 바와 같이, 디스플레이 (1328), 입력 디바이스 (1330), 스피커들 (1348), 마이크로폰들 (1346), 안테나 (1342), 및 전력 공급기 (1344) 는 시스템-온-칩 디바이스 (1322) 의 외부에 있다. 그러나, 디스플레이 (1328), 입력 디바이스 (1330), 스피커들 (1348), 마이크로폰들 (1346), 안테나 (1342), 및 전력 공급기 (1344) 의 각각은 인터페이스 또는 제어기와 같은, 시스템-온-칩 디바이스 (1322) 의 컴포넌트에 커플링될 수 있다.
디바이스 (1300) 는 무선 전화기, 모바일 통신 디바이스, 모바일 폰, 스마트 폰, 셀룰러 폰, 랩탑 컴퓨터, 데스크탑 컴퓨터, 컴퓨터, 태블릿 컴퓨터, 셋탑 박스, 개인 디지털 보조기 (PDA), 디스플레이 디바이스, 텔레비전, 게이밍 콘솔, 뮤직 플레이어, 무선기기, 비디오 플레이어, 엔터테인먼트 유닛, 통신 디바이스, 고정 위치 데이터 유닛, 개인 미디어 플레이어, 디지털 비디오 플레이어, 디지털 비디오 디스크 (DVD) 플레이어, 튜너, 카메라, 네비게이션 디바이스, 디코더 시스템, 인코더 시스템, 또는 이들의 임의의 조합을 포함할 수도 있다.
특정 구현에서, 본 명세서에서 설명된 시스템들 및 디바이스 (1300) 의 하나 이상의 컴포넌트들은 디코딩 시스템 또는 장치 (예를 들어, 전자 디바이스, 코덱, 또는 그 내부의 프로세서) 에, 인코딩 시스템 또는 장치에, 또는 양자 모두에 통합될 수도 있다. 다른 구현들에서, 본 명세서에서 설명된 시스템들 및 디바이스 (1300) 의 하나 이상의 컴포넌트들은 무선 전화기, 태블릿 컴퓨터, 데스크탑 컴퓨터, 랩탑 컴퓨터, 셋탑 박스, 뮤직 플레이어, 비디오 플레이어, 엔터테인먼트 유닛, 텔레비전, 게임 콘솔, 네비게이션 디바이스, 통신 디바이스, 개인 디지털 보조기 (PDA), 고정 위치 데이터 유닛, 개인 미디어 플레이어, 또는 다른 타입의 디바이스에 통합될 수도 있다.
본 명세서에서 설명된 시스템들 및 디바이스 (1300) 의 하나 이상의 컴포넌트들에 의해 수행된 다양한 기능들은 소정의 컴포넌트들 또는 모듈들에 의해 수행되는 것으로서 설명됨에 유의해야 한다. 컴포넌트들 및 모듈들의 이러한 분할은 단지 예시를 위한 것이다. 대체 구현에서, 특정 컴포넌트 또는 모듈에 의해 수행된 기능은 다중 컴포넌트들 또는 모듈들 중에서 분할될 수도 있다. 더욱이, 대체 구현에서, 본 명세서에서 설명된 시스템들의 2 개 이상의 컴포넌트들 또는 모듈들은 단일 컴포넌트 또는 모듈에 통합될 수도 있다. 본 명세서에서 설명된 시스템들에 예시된 각각의 컴포넌트 또는 모듈은 하드웨어 (예를 들어, 필드프로그래밍가능 게이트 어레이 (FPGA) 디바이스, 주문형 집적 회로 (ASIC), DSP, 제어기 등), 소프트웨어 (예를 들어, 프로세서에 의해 실행가능한 명령들), 또는 이들의 임의의 조합을 사용하여 구현될 수도 있다.
설명된 구현들과 함께, 장치는 레퍼런스 채널을 캡처하기 위한 수단을 포함한다. 레퍼런스 채널은 레퍼런스 프레임을 포함할 수도 있다. 예를 들어, 제 1 오디오 신호를 캡처하기 위한 수단은 도 1 및 도 2 의 제 1 마이크로폰 (146), 도 13 의 마이크로폰(들) (1346), 레퍼런스 채널을 캡처하도록 구성된 하나 이상의 디바이스들/센서들 (예를 들어, 컴퓨터 판독가능 저장 디바이스에 저장되는 명령들을 실행하는 프로세서), 또는 이들의 조합을 포함할 수도 있다.
장치는 또한 타겟 채널을 캡처하기 위한 수단을 포함할 수도 있다. 타겟 채널은 타겟 프레임을 포함할 수도 있다. 예를 들어, 제 2 오디오 신호를 캡처하기 위한 수단은 도 1 및 도 2 의 제 2 마이크로폰 (148), 도 13 의 마이크로폰(들) (1346), 타겟 채널을 캡처하도록 구성된 하나 이상의 디바이스들/센서들 (예를 들어, 컴퓨터 판독가능 저장 디바이스에 저장되는 명령들을 실행하는 프로세서), 또는 이들의 조합을 포함할 수도 있다.
장치는 또한, 레퍼런스 프레임과 타겟 프레임 사이의 지연을 추정하기 위한 수단을 포함할 수도 있다. 예를 들어, 지연을 결정하기 위한 수단은 도 1 의 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 미디어 코덱 (1308), 프로세서들 (1310), 디바이스 (1300), 지연을 결정하도록 구성된 하나 이상의 디바이스들 (예를 들어, 컴퓨터 판독가능 저장 디바이스에 저장되는 명령들을 실행하는 프로세서), 또는 이들의 조합을 포함할 수도 있다.
장치는 또한, 지연에 기초하여 및 이력적 지연 데이터에 기초하여 레퍼런스 채널과 타겟 채널 사이의 시간 오프셋을 추정하기 위한 수단을 포함할 수도 있다. 예를 들어, 시간 오프셋을 추정하기 위한 수단은 도 1 의 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 미디어 코덱 (1308), 프로세서들 (1310), 디바이스 (1300), 시간 오프셋을 추정하도록 구성된 하나 이상의 디바이스들 (예를 들어, 컴퓨터 판독가능 저장 디바이스에 저장되는 명령들을 실행하는 프로세서), 또는 이들의 조합을 포함할 수도 있다.
도 14 를 참조하면, 기지국 (1400) 의 특정 예시적인 예의 블록 다이어그램이 도시된다. 다양한 구현들에서, 기지국 (1400) 은 도 14 에 예시된 것보다 더 많은 컴포넌트들 또는 더 적은 컴포넌트들을 가질 수도 있다. 예시적인 예에 있어서, 기지국 (1400) 은 도 1 의 제 1 디바이스 (104), 제 2 디바이스 (106), 도 2 의 제 1 디바이스 (134), 또는 이들의 조합을 포함할 수도 있다. 예시적인 예에 있어서, 기지국 (1400) 은 도 1 내지 도 13 을 참조하여 설명된 방법들 또는 시스템들 중 하나 이상에 따라 동작할 수도 있다.
기지국 (1400) 은 무선 통신 시스템의 부분일 수도 있다. 무선 통신 시스템은 다중 기지국들 및 다중 무선 디바이스들을 포함할 수도 있다. 무선 통신 시스템은 롱 텀 에볼루션 (LTE) 시스템, 코드 분할 다중 액세스 (CDMA) 시스템, GSM (Global System for Mobile Communications) 시스템, 무선 로컬 영역 네트워크 (WLAN) 시스템, 또는 일부 다른 무선 시스템일 수도 있다. CDMA 시스템은 광대역 CDMA (WCDMA), CDMA 1X, EVDO (Evolution-Data Optimzed), 시간 분할 동기 CDMA (TD-SCDMA), 또는 CDMA 의 일부 다른 버전을 구현할 수도 있다.
무선 디바이스들은 또한, 사용자 장비 (UE), 이동국, 단말기, 액세스 단말기, 가입자 유닛, 스테이션 등으로 지칭될 수도 있다. 무선 디바이스들은 셀룰러 폰, 스마트폰, 태블릿, 무선 모뎀, 개인 디지털 보조기 (PDA), 핸드헬드 디바이스, 랩탑 컴퓨터, 스마트북, 넷북, 태블릿, 코드리스 폰, 무선 로컬 루프 (WLL) 스테이션, 블루투스 디바이스 등을 포함할 수도 있다. 무선 디바이스들은 도 14 의 디바이스 (1400) 를 포함하거나 또는 그에 대응할 수도 있다.
다양한 기능들은, 메시지들 및 데이터 (예를 들어, 오디오 데이터) 를 전송 및 수신하는 것과 같이, 기지국 (1400) 의 하나 이상의 컴포넌트들에 의해 (및/또는 도시되지 않은 다른 컴포넌트들에서) 수행될 수도 있다. 특정 예에서, 기지국 (1400) 은 프로세서 (1406) (예를 들어, CPU) 를 포함한다. 기지국 (1400) 은 트랜스코더 (1410) 를 포함할 수도 있다. 트랜스코더 (1410) 는 오디오 코덱 (1408) 을 포함할 수도 있다. 예를 들어, 트랜스코더 (1410) 는 오디오 코덱 (1408) 의 동작들을 수행하도록 구성된 하나 이상의 컴포넌트들 (예를 들어, 회로부) 을 포함할 수도 있다. 다른 예로서, 트랜스코더 (1410) 는 오디오 코덱 (1408) 의 동작들을 수행하기 위해 하나 이상의 컴퓨터 판독가능 명령들을 실행하도록 구성될 수도 있다. 오디오 코덱 (1408) 이 트랜스코더 (1410) 의 컴포넌트로서 예시되지만, 다른 예들에 있어서, 오디오 코덱 (1408) 의 하나 이상의 컴포넌트들은 프로세서 (1406), 다른 프로세싱 컴포넌트, 또는 이들의 조합에 포함될 수도 있다. 예를 들어, 디코더 (1438) (예를 들어, 보코더 디코더) 는 수신기 데이터 프로세서 (1464) 에 포함될 수도 있다. 다른 예로서, 인코더 (1436) (예를 들어, 보코더 인코더) 는 송신 데이터 프로세서 (1482) 에 포함될 수도 있다.
트랜스코더 (1410) 는 2 이상의 네트워크들 사이에서 메시지들 및 데이터를 트랜스코딩하도록 기능할 수도 있다. 트랜스코더 (1410) 는 메시지 및 오디오 데이터를 제 1 포맷 (예를 들어, 디지털 포맷) 으로부터 제 2 포맷으로 컨버팅하도록 구성될 수도 있다. 예시하기 위해, 디코더 (1438) 는 제 1 포맷을 갖는 인코딩된 신호들을 디코딩할 수도 있고, 인코더 (1436) 는 디코딩된 신호들을, 제 2 포맷을 갖는 인코딩된 신호들로 인코딩할 수도 있다. 추가적으로 또는 대안적으로, 트랜스코더 (1410) 는 데이터 레이트 적응을 수행하도록 구성될 수도 있다. 예를 들어, 트랜스코더 (1410) 는 오디오 데이터의 포맷을 변경함이 없이 데이터 레이트를 다운 컨버팅하거나 또는 데이터 레이트를 업 컨버팅할 수도 있다. 예시하기 위해, 트랜스코더 (1410) 는 64 kbit/s 신호들을 16 kbit/s 신호들로 다운 컨버팅할 수도 있다.
오디오 코덱 (1408) 은 인코더 (1436) 및 디코더 (1438) 를 포함할 수도 있다. 인코더 (1436) 는 도 1 의 인코더 (114), 도 2 의 인코더 (214), 또는 양자 모두를 포함할 수도 있다. 디코더 (1438) 는 도 1 의 디코더 (118) 를 포함할 수도 있다.
기지국 (1400) 은 메모리 (1432) 를 포함할 수도 있다. 컴퓨터 판독가능 저장 디바이스와 같은 메모리 (1432) 는 명령들을 포함할 수도 있다. 명령들은, 도 1 내지 도 13 의 방법들 및 시스템들을 참조하여 설명된 하나 이상의 동작들을 수행하기 위해 프로세서 (1406), 트랜스코더 (1410), 또는 이들의 조합에 의해 실행가능한 하나 이상의 명령들을 포함할 수도 있다. 기지국 (1400) 은, 안테나들의 어레이에 커플링된, 다중 송신기들 및 수신기들 (예를 들어, 트랜시버들), 이를 테면 제 1 트랜시버 (1452) 및 제 2 트랜시버 (1454) 를 포함할 수도 있다. 안테나들의 어레이는 제 1 안테나 (1442) 및 제 2 안테나 (1444) 를 포함할 수도 있다. 안테나들의 어레이는 도 14 의 디바이스 (1400) 와 같은, 하나 이상의 무선 디바이스들과 무선으로 통신하도록 구성될 수도 있다. 예를 들어, 제 2 안테나 (1444) 는 무선 디바이스로부터 데이터 스트림 (1414) (예를 들어, 비트 스트림) 을 수신할 수도 있다. 데이터 스트림 (1414) 은 메시지들, 데이터 (예를 들어, 인코딩된 스피치 데이터), 또는 이들의 조합을 포함할 수도 있다.
기지국 (1400) 은 백홀 커넥션과 같은 네트워크 커넥션 (1460) 을 포함할 수도 있다. 네트워크 커넥션 (1460) 은 무선 통신 네트워크의 하나 이상의 기지국들 또는 코어 네트워크와 통신하도록 구성될 수도 있다. 예를 들어, 기지국 (1400) 은 제 2 데이터 스트림 (예를 들어, 메시지들 또는 오디오 데이터) 을 코어 네트워크로부터 네트워크 커넥션 (1460) 을 통해 수신할 수도 있다. 기지국 (1400) 은 제 2 데이터 스트림을 프로세싱하여 메시지들 또는 오디오 데이터를 생성하고, 메시지들 또는 오디오 데이터를 안테나들의 어레이의 하나 이상의 안테나들을 통해 하나 이상의 무선 디바이스에 또는 네트워크 커넥션 (1460) 을 통해 다른 기지국에 제공할 수도 있다. 특정 구현에서, 네트워크 커넥션 (1460) 은 예시적인, 비한정적 예로서, 광역 네트워크 (WAN) 커넥션일 수도 있다. 일부 구현들에서, 코어 네트워크는 공중 스위칭 전화 네트워크 (PSTN), 패킷 백본 네트워크, 또는 양자 모두를 포함하거나 또는 이들에 대응할 수도 있다.
기지국 (1400) 은 네트워크 커넥션 (1460) 및 프로세서 (1406) 에 커플링되는 미디어 게이트웨이 (1470) 를 포함할 수도 있다. 미디어 게이트웨이 (1470) 는 상이한 원격통신 기술들의 미디어 스트림들 사이를 컨버팅하도록 구성될 수도 있다. 예를 들어, 미디어 게이트웨이 (1470) 는 상이한 송신 프로토콜들, 상이한 코딩 방식들, 또는 양자 모두 사이를 컨버팅할 수도 있다. 예시하기 위해, 미디어 게이트웨이 (1470) 는, 예시적인 비한정적 예로서, PCM 신호들로부터 실시간 전송 프로토콜 (RTP) 신호들로 컨버팅할 수도 있다. 미디어 게이트웨이 (1470) 는 패킷 스위칭 네트워크들 (예를 들어, VoIP (Voice Over Internet Protocol) 네트워크, IP 멀티미디어 서브시스템 (IMS), 제 4 세대 (4G) 무선 네트워크, 이를 테면 LTE, WiMax, 및 UMB, 등), 회선 스위칭 네트워크들 (예를 들어, PSTN), 및 하이브리드 네트워크들 (예를 들어, 제 2 세대 (2G) 무선 네트워크, 이를 테면 GSM, GPRS, 및 EDGE, 제 3 세대 (3G) 무선 네트워크, 이를 테면 WCDMA, EV-DO, 및 HSPA, 등) 사이에서 데이터를 컨버팅할 수도 있다.
추가적으로, 미디어 게이트웨이 (1470) 는 트랜스코드를 포함할 수도 있고, 코덱들이 호환불가능할 경우 데이터를 트랜스코딩하도록 구성될 수도 있다. 예를 들어, 미디어 게이트웨이 (1470) 는, 예시적인 비한정적 예로서, 적응적 멀티-레이트 (AMR) 코덱과 G.711 코덱 사이를 트랜스코딩할 수도 있다. 미디어 게이트웨이 (1470) 는 라우터 및 복수의 물리 인터페이스들을 포함할 수도 있다. 일부 구현들에 있어서, 미디어 게이트웨이 (1470) 는 또한 제어기 (미도시) 를 포함할 수도 있다. 특정 구현에 있어서, 미디어 게이트웨이 제어기는 미디어 게이트웨이 (1470) 외부에, 기지국 (1400) 외부에, 또는 이들 양자 모두에 있을 수도 있다. 미디어 게이트웨이 제어기는 다중 미디어 게이트웨이들의 동작들을 제어 및 조정할 수도 있다. 미디어 게이트웨이 (1470) 는 미디어 게이트웨이 제어기로부터 제어 신호들을 수신할 수도 있고 상이한 송신 기술들 간에 브리징하도록 기능할 수도 있으며, 최종 사용자 능력들 및 커넥션들에 서비스를 부가할 수도 있다.
기지국 (1400) 은 트랜시버들 (1452, 1454), 수신기 데이터 프로세서 (1464), 및 프로세서 (1406) 에 커플링되는 복조기 (1462) 를 포함할 수도 있고, 수신기 데이터 프로세서 (1464) 는 프로세서 (1406) 에 커플링될 수도 있다. 복조기 (1462) 는 트랜시버들 (1452, 1454) 로부터 수신된 변조된 신호들을 복조하고 그리고 복조된 데이터를 수신기 데이터 프로세서 (1464) 에 제공하도록 구성될 수도 있다. 수신기 데이터 프로세서 (1464) 는 복조된 데이터로부터 메시지 또는 오디오 데이터를 추출하고 메시지 또는 오디오 데이터를 프로세서 (1406) 로 전송하도록 구성될 수도 있다.
기지국 (1400) 은 송신 데이터 프로세서 (1482) 및 송신 다중 입력 다중 출력 (MIMO) 프로세서 (1484) 를 포함할 수도 있다. 송신 데이터 프로세서 (1482) 는 프로세서 (1406) 및 송신 MIMO 프로세서 (1484) 에 커플링될 수도 있다. 송신 MIMO 프로세서 (1484) 는 트랜시버들 (1452, 1454) 및 프로세서 (1406) 에 커플링될 수도 있다. 일부 구현들에서, 송신 MIMO 프로세서 (1484) 는 미디어 게이트웨이 (1470) 에 커플링될 수도 있다. 송신 데이터 프로세서 (1482) 는 프로세서 (1406) 로부터 메시지들 또는 오디오 데이터를 수신하고 그리고 예시적인 비한정적 예들로서, CDMA 또는 직교 주파수 분할 멀티플렉싱 (OFDM) 과 같은 코딩 스킴에 기초하여 메시지들 또는 오디오 데이터를 코딩하도록 구성될 수도 있다. 송신 데이터 프로세서 (1482) 는 코딩된 데이터를 송신 MIMO 프로세서 (1484) 에 제공할 수도 있다.
코딩된 데이터는 멀티플렉싱된 데이터를 생성하기 위해 CDMA 또는 OFDM 기법들을 사용하여 파일럿 데이터와 같은 다른 데이터와 멀티플렉싱될 수도 있다. 멀티플렉싱된 데이터는 그 후 변조 심볼들을 생성하기 위해 특정 변조 스킴 (예를 들어, 이진 위상 시프트 키잉 ("BPSK"), 직교 위상 시프트 키잉 ("QPSK"), M진 위상 시프트 키잉 ("M-PSK"), M진 직교 진폭 변조 ("M-QAM") 등) 에 기초하여 송신 데이터 프로세서 (1482) 에 의해 변조 (즉, 심볼 맵핑) 될 수도 있다. 특정 구현에서, 코딩된 데이터 및 다른 데이터는 상이한 변조 스킴들을 사용하여 변조될 수도 있다. 각각의 데이터 스트림에 대한 데이터 레이트, 코딩, 및 변조는 프로세서 (1406) 에 의해 실행된 명령들에 의해 결정될 수도 있다.
송신 MIMO 프로세서 (1484) 는 송신 데이터 프로세서 (1482) 로부터 변조 심볼들을 수신하도록 구성될 수도 있고, 변조 심볼들을 추가로 프로세싱할 수도 있으며 데이터에 대해 빔포밍을 수행할 수도 있다. 예를 들어, 송신 MIMO 프로세서 (1484) 는 빔포밍 가중치들을 변조 심볼들에 적용할 수도 있다. 빔포밍 가중치들은, 변조 심볼들이 송신되는 안테나들의 어레이의 하나 이상의 안테나들에 대응할 수도 있다.
동작 동안, 기지국 (1400) 의 제 2 안테나 (1444) 는 데이터 스트림 (1414) 을 수신할 수도 있다. 제 2 트랜시버 (1454) 는 제 2 안테나 (1444) 로부터 데이터 스트림 (1414) 을 수신할 수도 있고 데이터 스트림 (1414) 을 복조기 (1462) 에 제공할 수도 있다. 복조기 (1462) 는 데이터 스트림 (1414) 의 변조된 신호들을 복조하고 복조된 데이터를 수신기 데이터 프로세서 (1464) 에 제공할 수도 있다. 수신기 데이터 프로세서 (1464) 는 복조된 데이터로부터 오디오 데이터를 추출하고 추출된 오디오 데이터를 프로세서 (1406) 에 제공할 수도 있다.
프로세서 (1406) 는 트랜스코딩을 위해 트랜스코더 (1410) 에 오디오 데이터를 제공할 수도 있다. 트랜스코더 (1410) 의 디코더 (1438) 는 제 1 포맷으로부터의 오디오 데이터를 디코딩된 오디오 데이터로 디코딩할 수 있고, 인코더 (1436) 는 디코딩된 오디오 데이터를 제 2 포맷으로 인코딩할 수도 있다. 일부 구현들에 있어서, 인코더 (1436) 는 무선 디바이스로부터 수신된 것보다 더 높은 데이터 레이트 (예를 들어, 업 컨버팅) 또는 더 낮은 데이터 레이트 (예를 들어, 다운 컨버팅) 를 사용하여 오디오 데이터를 인코딩할 수도 있다. 다른 구현들에 있어서, 오디오 데이터는 트랜스코딩되지 않을 수도 있다. 비록 트랜스코딩 (예를 들어, 디코딩 및 인코딩) 이 트랜스코더 (1410) 에 의해 수행되는 것으로서 예시되지만, 트랜스코딩 동작들 (예를 들어, 디코딩 및 인코딩) 은 기지국 (1400) 의 다중 컴포넌트들에 의해 수행될 수도 있다. 예를 들어, 디코딩은 수신기 데이터 프로세서 (1464) 에 의해 수행될 수도 있고, 인코딩은 송신 데이터 프로세서 (1482) 에 의해 수행될 수도 있다. 다른 구현들에서, 프로세서 (1406) 는 다른 송신 프로토콜, 코딩 스킴, 또는 양자 모두로의 컨버전을 위해 미디어 게이트웨이 (1470) 에 오디오 데이터를 제공할 수도 있다. 미디어 게이트웨이 (1470) 는 네트워크 커넥션 (1460) 을 통해 다른 기지국 또는 코어 네트워크에 컨버팅된 데이터를 제공할 수도 있다.
인코더 (1436) 는 레퍼런스 프레임 (예를 들어, 제 1 프레임 (131)) 과 타겟 프레임 (예를 들어, 제 2 프레임 (133)) 사이의 지연을 추정할 수도 있다. 인코더 (1436) 는 또한 지연에 기초하여 및 이력적 지연 데이터에 기초하여 레퍼런스 채널 (예를 들어, 제 1 오디오 신호 (130)) 과 타겟 채널 (예를 들어, 제 2 오디오 신호 (132)) 사이의 시간 오프셋을 추정할 수도 있다. 인코더 (1436) 는 시스템의 전체 지연에 대한 영향을 감소 (또는 최소화) 시키기 위해 코덱 샘플 레이트에 기초하여 상이한 레졸루션에서 시간 오프셋 (또는 최종 시프트) 값을 양자화 및 인코딩할 수도 있다. 하나의 예의 구현에서, 인코더는 인코더에서 멀티-채널 다운믹스 목적들을 위해 더 높은 레졸루션을 가진 시간 오프셋을 추정 및 사용할 수도 있지만, 인코더는 디코더에서의 사용을 위해 더 낮은 레졸루션에서 양자화 및 송신할 수도 있다. 디코더 (118) 는 레퍼런스 신호 표시자 (164), 비인과 시프트 값 (162), 이득 파라미터 (160), 또는 이들의 조합에 기초하여 인코딩된 신호들을 디코딩함으로써 제 1 출력 신호 (126) 및 제 2 출력 신호 (128) 를 생성할 수도 있다. 인코더 (1436) 에서 생성된 인코딩된 오디오 데이터, 이를 테면 트랜스코딩된 데이터는 프로세서 (1406) 를 통해 송신 데이터 프로세서 (1482) 또는 네트워크 커넥션 (1460) 에 제공될 수도 있다.
트랜스코더 (1410) 로부터의 트랜스코딩된 오디오 데이터는 변조 심볼들을 생성하기 위해, 변조 스킴, 이를 테면 OFDM 에 따른 코딩을 위해 송신 데이터 프로세서 (1482) 에 제공될 수도 있다. 송신 데이터 프로세서 (1482) 는 추가 프로세싱 및 빔포밍을 위해 송신 MIMO 프로세서 (1484) 에 변조 심볼들을 제공할 수도 있다. 송신 MIMO 프로세서 (1484) 는 빔포밍 가중치들을 적용할 수도 있고 제 1 트랜시버 (1452) 를 통해 제 1 안테나 (1442) 와 같은 안테나들의 어레이의 하나 이상의 안테나들에 변조 심볼들을 제공할 수도 있다. 따라서, 기지국 (1400) 은, 무선 디바이스로부터 수신된 데이터 스트림 (1414) 에 대응하는 트랜스코딩된 데이터 스트림 (1416) 을 다른 무선 디바이스에 제공할 수도 있다. 트랜스코딩된 데이터 스트림 (1416) 은 데이터 스트림 (1414) 과는 상이한 인코딩 포맷, 데이터 레이트, 또는 양자 모두를 가질 수도 있다. 다른 구현들에서, 트랜스코딩된 데이터 스트림 (1416) 은 다른 기지국 또는 코어 네트워크로의 송신을 위해 네트워크 커넥션 (1460) 에 제공될 수도 있다.
기지국 (1400) 은 따라서, 프로세서 (예를 들어, 프로세서 (1406) 또는 트랜스코더 (1410)) 에 의해 실행될 때, 프로세서로 하여금, 레퍼런스 프레임과 타겟 프레임 사이의 지연을 추정하는 것을 포함하는 동작들을 수행하게 하는 명령들을 저장하는 컴퓨터 판독가능 저장 디바이스 (예를 들어, 메모리 (1432)) 를 포함할 수도 있다. 동작들은 또한, 지연에 기초하여 및 이력적 지연 데이터에 기초하여 레퍼런스 채널과 타겟 채널 사이의 시간 오프셋을 추정하는 것을 포함한다.
당업자들은 본 명세서에서 개시된 실시형태들과 관련하여 설명된 다양한 예시적인 논리 블록들, 구성들, 모듈들, 회로들, 및 알고리즘 단계들이 전자 하드웨어, 하드웨어 프로세서와 같은 프로세싱 디바이스에 의해 실행된 컴퓨터 소프트웨어, 또는 양자의 조합들로서 구현될 수도 있음을 추가로 인식할 것이다. 다양한 예시적인 컴포넌트들, 블록들, 구성들, 모듈들, 회로들, 및 단계들이 일반적으로 그들의 기능성의 관점에서 위에서 설명되었다. 그러한 기능성이 하드웨어로서 구현되는지 또는 실행가능한 소프트웨어로서 구현되는지는 전체 시스템에 부과된 설계 제약들 및 특정 애플리케이션에 의존한다. 당업자들은 설명된 기능성을 각각의 특정 애플리케이션에 대해 다양한 방식들로 구현할 수도 있지만, 그러한 구현 판정들은 본 개시의 범위로부터 벗어남을 야기하는 것으로서 해석되지 않아야 한다.
본 명세서에서 개시된 실시형태들과 관련하여 설명된 방법 또는 알고리즘의 단계들은 직접 하드웨어로, 프로세서에 의해 실행된 소프트웨어 모듈로, 또는 이들의 조합으로 구현될 수도 있다. 소프트웨어 모듈은 랜덤 액세스 메모리 (RAM), 자기저항 랜덤 액세스 메모리 (MRAM), 스핀-토크 전달 MRAM (STT-MRAM), 플래시 메모리, 판독 전용 메모리 (ROM), 프로그래밍가능 판독 전용 메모리 (PROM), 소거가능한 프로그래밍가능 판독 전용 메모리 (EPROM), 전기적으로 소거가능한 프로그래밍가능 판독 전용 메모리 (EEPROM), 레지스터들, 하드 디스크, 착탈가능 디스크, 또는 컴팩트 디스크 판독 전용 메모리 (CD-ROM) 와 같은 메모리 디바이스에 상주할 수도 있다. 예시적인 메모리 디바이스는 프로세서가 메모리 디바이스로부터 정보를 판독하고 메모리 디바이스에 정보를 기입할 수 있도록 프로세서에 커플링된다. 대안으로, 메모리 디바이스는 프로세서와 일체형일 수도 있다. 프로세서 및 저장 매체는 주문형 집적 회로 (ASIC) 에 상주할 수도 있다. ASIC 은 컴퓨팅 디바이스 또는 사용자 단말기에 상주할 수도 있다. 대안으로, 프로세서 및 저장 매체는 컴퓨팅 디바이스 또는 사용자 단말기에 별개의 컴포넌트들로서 상주할 수도 있다.
개시된 구현들의 이전의 설명은 당업자로 하여금 개시된 구현들을 제조 또는 이용할 수 있도록 제공된다. 이들 구현들에 대한 다양한 수정들은 당업자들에게는 용이하게 명백할 것이며, 본 명세서에서 정의된 원리들은 본 개시의 범위로부터 벗어남 없이 다른 구현들에 적용될 수도 있다. 따라서, 본 개시는 본 명세서에서 나타낸 구현들로 한정되도록 의도되지 않으며, 다음의 청구항들에 의해 정의된 바와 같은 원리들 및 신규한 피처들과 부합하는 가능한 최광의 범위를 부여받아야 한다.
Claims (52)
- 전자 디바이스의 인코더에서 멀티-채널 오디오 신호들의 코딩을 위한 방법으로서,
상기 인코더에서, 비교 값들을 추정하는 단계로서, 각각의 비교 값은 레퍼런스 채널의 제 1 레퍼런스 프레임과 타겟 채널의 대응하는 제 1 타겟 프레임 사이의 시간 불일치의 양을 나타내는, 상기 비교 값들을 추정하는 단계;
상기 인코더에서, 단기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하는 단계;
상기 인코더에서, 평활화 파라미터에 기초하여 제 1 장기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하는 단계;
상기 인코더에서, 상기 비교 값들과 상기 단기 평활화된 비교 값들 사이의 상호 상관 (cross-correlation) 값을 계산하는 단계;
상기 인코더에서, 상기 상호 상관 값과 임계치를 비교하는 단계;
상기 인코더에서, 상기 상호 상관 값이 상기 임계치를 초과한다는 결정에 응답하여, 제 2 장기 평활화된 비교 값들을 생성하기 위해 상기 제 1 장기 평활화된 비교 값들을 조정하는 단계;
상기 인코더에서, 상기 제 2 장기 평활화된 비교 값들에 기초하여 잠정적 시프트 값을 추정하는 단계;
상기 인코더에서, 상기 잠정적 시프트 값에 기초하여 비인과 시프트 값을 결정하는 단계;
상기 인코더에서, 특정 레퍼런스 채널과 시간적으로 정렬되는 조정된 특정 타겟 채널을 생성하기 위해 특정 타겟 채널을 상기 비인과 시프트 값만큼 비인과적으로 시프트하는 단계; 및
상기 인코더에서, 상기 특정 레퍼런스 채널 및 상기 조정된 특정 타겟 채널에 기초하여 미드 대역 채널 또는 사이드 대역 채널 중 적어도 하나를 생성하는 단계를 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 1 항에 있어서,
상기 제 1 장기 평활화된 비교 값들을 조정하는 단계는 상기 제 1 장기 평활화된 비교 값들의 서브세트의 값들을 증가시키는 단계를 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 2 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 서브세트의 값들을 증가시키는 단계는 적어도 제 1 인덱스의 값을 증가시키는 단계를 포함하고, 상기 제 1 인덱스는 제 2 타겟 프레임의 비인과 시프트 값에 대응하고, 상기 제 2 타겟 프레임은 상기 제 1 타겟 프레임에 바로 선행하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 3 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 상기 서브세트는 제 2 인덱스 및 제 3 인덱스를 포함하고, 상기 제 2 인덱스는 상기 제 1 인덱스보다 1 만큼 더 작고 상기 제 3 인덱스는 상기 제 1 인덱스보다 1 만큼 더 큰, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 1 항에 있어서,
상기 단기 평활화된 비교 값들은 적어도 하나의 이전 프레임의 단기 평활화된 비교 값들에 추가로 기초하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 5 항에 있어서,
상기 단기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하는 단계는 상기 비교 값들을 유한 임펄스 응답 (FIR) 필터링하는 단계를 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 1 항에 있어서,
상기 제 1 장기 평활화된 비교 값들은 상기 비교 값들 및 적어도 하나의 이전 프레임의 제 2 장기 평활화된 비교 값들의 가중된 혼합 (weighted mixture) 에 추가로 기초하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 7 항에 있어서,
상기 제 1 장기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하는 단계는 상기 비교 값들을 무한 임펄스 응답 (IIR) 필터링하는 단계를 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 1 항에 있어서,
상기 상호 상관 값을 계산하는 단계는 상기 비교 값들의 각각의 값과 상기 단기 평활화된 비교 값들의 각각의 값을 곱하는 단계를 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 1 항에 있어서,
상기 비교 값들은 다운 샘플링된 레퍼런스 채널들 및 대응하는 다운 샘플링된 타겟 채널들의 상호 상관 값들에 대응하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 1 항에 있어서,
상기 인코더에서, 상기 제 2 장기 평활화된 비교 값들에 대한 상기 단기 평활화된 비교 값들에서의 변동 (variation) 에 기초하여 상기 평활화 파라미터를 적응시키는 단계를 더 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 1 항에 있어서,
상기 평활화 파라미터의 값은 입력 채널들의 단기 에너지 표시자 및 상기 입력 채널들의 장기 에너지 표시자에 기초하여 조정되는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 1 항에 있어서,
상기 전자 디바이스는 모바일 디바이스를 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 1 항에 있어서,
상기 전자 디바이스는 기지국을 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 멀티-채널 오디오 신호들의 코딩을 위한 장치로서,
레퍼런스 채널의 제 1 레퍼런스 프레임을 캡처하도록 구성된 제 1 마이크로폰;
타겟 채널의 대응하는 제 1 타겟 프레임을 캡처하도록 구성된 제 2 마이크로폰; 및
인코더를 포함하고,
상기 인코더는,
비교 값들을 추정하는 것으로서, 각각의 비교 값은 상기 레퍼런스 채널의 상기 제 1 레퍼런스 프레임과 상기 타겟 채널의 상기 제 1 타겟 프레임 사이의 시간 불일치의 양을 나타내는, 상기 비교 값들을 추정하고;
단기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하고;
평활화 파라미터에 기초하여 제 1 장기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하고;
상기 비교 값들과 상기 단기 평활화된 비교 값들 사이의 상호 상관 값을 계산하고;
상기 상호 상관 값과 임계치를 비교하고;
상기 상호 상관 값이 상기 임계치를 초과한다는 결정에 응답하여, 제 2 장기 평활화된 비교 값들을 생성하기 위해 상기 제 1 장기 평활화된 비교 값들을 조정하고;
상기 제 2 장기 평활화된 비교 값들에 기초하여 잠정적 시프트 값을 추정하고;
상기 잠정적 시프트 값에 기초하여 비인과 시프트 값을 결정하고;
특정 레퍼런스 채널과 시간적으로 정렬되는 조정된 특정 타겟 채널을 생성하기 위해 특정 타겟 채널을 상기 비인과 시프트 값만큼 비인과적으로 시프트하고; 그리고
상기 특정 레퍼런스 채널 및 상기 조정된 특정 타겟 채널에 기초하여 미드 대역 채널 또는 사이드 대역 채널 중 적어도 하나를 생성하도록 구성된, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 15 항에 있어서,
상기 인코더는, 상기 제 1 장기 평활화된 비교 값들의 서브세트의 값들을 증가시킴으로써 상기 제 1 장기 평활화된 비교 값들을 조정하도록 구성되는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 16 항에 있어서,
상기 인코더는, 적어도 제 1 인덱스의 값을 증가시킴으로써 상기 제 1 장기 평활화된 비교 값들을 조정하도록 구성되고, 상기 제 1 인덱스는 제 2 타겟 프레임의 비인과 시프트 값에 대응하고, 상기 제 2 타겟 프레임은 상기 제 1 타겟 프레임에 바로 선행하는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 17 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 상기 서브세트는 제 2 인덱스 및 제 3 인덱스를 포함하고, 상기 제 2 인덱스는 상기 제 1 인덱스보다 1 만큼 더 작고 상기 제 3 인덱스는 상기 제 1 인덱스보다 1 만큼 더 큰, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 15 항에 있어서,
상기 인코더는, 상기 비교 값들을 유한 임펄스 응답 (FIR) 필터링함으로써 단기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하도록 구성되는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 15 항에 있어서,
상기 제 1 장기 평활화된 비교 값들은 상기 비교 값들 및 적어도 하나의 이전 프레임의 제 2 장기 평활화된 비교 값들의 가중된 혼합에 추가로 기초하는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 20 항에 있어서,
상기 인코더는, 상기 비교 값들을 무한 임펄스 응답 (IIR) 필터링함으로써 장기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하도록 구성되는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 15 항에 있어서,
상기 비교 값들은 다운 샘플링된 레퍼런스 채널들 및 대응하는 다운 샘플링된 타겟 채널들의 상호 상관 값들인, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 15 항에 있어서,
상기 인코더는 모바일 디바이스에 통합되는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 15 항에 있어서,
상기 인코더는 기지국에 통합되는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 명령들을 포함하는 비일시적 컴퓨터 판독가능 저장 매체로서,
상기 명령들은, 인코더에 의해 실행될 때, 상기 인코더로 하여금,
비교 값들을 추정하는 것으로서, 각각의 비교 값은 레퍼런스 채널의 제 1 레퍼런스 프레임과 타겟 채널의 대응하는 제 1 타겟 프레임 사이의 시간 불일치의 양을 나타내는, 상기 비교 값들을 추정하는 것;
단기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하는 것;
평활화 파라미터에 기초하여 제 1 장기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하는 것;
상기 비교 값들과 상기 단기 평활화된 비교 값들 사이의 상호 상관 값을 계산하는 것;
상기 상호 상관 값과 임계치를 비교하는 것;
상기 상호 상관 값이 상기 임계치를 초과한다는 결정에 응답하여, 제 2 장기 평활화된 비교 값들을 생성하기 위해 상기 제 1 장기 평활화된 비교 값들을 조정하는 것;
상기 제 2 장기 평활화된 비교 값들에 기초하여 잠정적 시프트 값을 추정하는 것;
상기 잠정적 시프트 값에 기초하여 비인과 시프트 값을 결정하는 것;
특정 레퍼런스 채널과 시간적으로 정렬되는 조정된 특정 타겟 채널을 생성하기 위해 특정 타겟 채널을 상기 비인과 시프트 값만큼 비인과적으로 시프트하는 것; 및
상기 특정 레퍼런스 채널 및 상기 조정된 특정 타겟 채널에 기초하여 미드 대역 채널 또는 사이드 대역 채널 중 적어도 하나를 생성하는 것을 포함하는 동작들을 수행하게 하는, 비일시적 컴퓨터 판독가능 저장 매체. - 제 25 항에 있어서,
상기 동작들은, 상기 제 1 장기 평활화된 비교 값들의 서브세트의 값들을 증가시킴으로써 상기 제 1 장기 평활화된 비교 값들을 조정하는 것을 더 포함하는, 비일시적 컴퓨터 판독가능 저장 매체. - 제 25 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 서브세트의 값들을 증가시키는 것은 적어도 제 1 인덱스의 값을 증가시키는 것을 포함하고, 상기 제 1 인덱스는 제 2 타겟 프레임의 비인과 시프트 값에 대응하고, 상기 제 2 타겟 프레임은 상기 제 1 타겟 프레임에 바로 선행하는, 비일시적 컴퓨터 판독가능 저장 매체. - 제 25 항에 있어서,
상기 상호 상관 값을 계산하는 것은 상기 비교 값들의 각각의 값과 상기 단기 평활화된 비교 값들의 각각의 값을 곱하는 것을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체. - 멀티-채널 오디오 신호들의 코딩을 위한 장치로서,
비교 값들을 추정하기 위한 수단으로서, 각각의 비교 값은 레퍼런스 채널의 제 1 레퍼런스 프레임과 타겟 채널의 대응하는 제 1 타겟 프레임 사이의 시간 불일치의 양을 나타내는, 상기 비교 값들을 추정하기 위한 수단;
단기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하기 위한 수단;
평활화 파라미터에 기초하여 제 1 장기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하기 위한 수단;
상기 비교 값들과 상기 단기 평활화된 비교 값들 사이의 상호 상관 값을 계산하기 위한 수단;
상기 상호 상관 값과 임계치를 비교하기 위한 수단;
상기 상호 상관 값이 상기 임계치를 초과한다는 결정에 응답하여, 제 2 장기 평활화된 비교 값들을 생성하기 위해 상기 제 1 장기 평활화된 비교 값들을 조정하기 위한 수단;
상기 제 2 장기 평활화된 비교 값들에 기초하여 잠정적 시프트 값을 추정하기 위한 수단;
상기 잠정적 시프트 값에 기초하여 비인과 시프트 값을 결정하기 위한 수단;
특정 레퍼런스 채널과 시간적으로 정렬되는 조정된 특정 타겟 채널을 생성하기 위해 특정 타겟 채널을 상기 비인과 시프트 값만큼 비인과적으로 시프트하기 위한 수단; 및
상기 특정 레퍼런스 채널 및 상기 조정된 특정 타겟 채널에 기초하여 미드 대역 채널 또는 사이드 대역 채널 중 적어도 하나를 생성하기 위한 수단을 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 29 항에 있어서,
상기 제 1 장기 평활화된 비교 값들을 조정하기 위한 수단은 상기 제 1 장기 평활화된 비교 값들의 서브세트의 값들을 증가시키기 위한 수단을 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 29 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 서브세트의 값들을 증가시키기 위한 수단은 적어도 제 1 인덱스의 값을 증가시키기 위한 수단을 포함하고, 상기 제 1 인덱스는 제 2 타겟 프레임의 비인과 시프트 값에 대응하고, 상기 제 2 타겟 프레임은 상기 제 1 타겟 프레임에 바로 선행하는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 29 항에 있어서,
상기 상호 상관 값을 계산하기 위한 수단은 상기 비교 값들의 각각의 값과 상기 단기 평활화된 비교 값들의 각각의 값을 곱하기 위한 수단을 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 전자 디바이스의 인코더에서 멀티-채널 오디오 신호들의 코딩을 위한 방법으로서,
상기 인코더에서, 비교 값들을 추정하는 단계로서, 각각의 비교 값은 레퍼런스 채널의 제 1 레퍼런스 프레임과 타겟 채널의 대응하는 제 1 타겟 프레임 사이의 시간 불일치의 양을 나타내는, 상기 비교 값들을 추정하는 단계;
상기 인코더에서, 평활화 파라미터에 기초하여 제 1 장기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하는 단계;
상기 인코더에서, 상기 레퍼런스 채널의 제 2 레퍼런스 프레임과 상기 타겟 채널의 대응하는 제 2 타겟 프레임 사이의 이득 파라미터를 계산하는 단계로서, 상기 이득 파라미터는 상기 제 2 레퍼런스 프레임의 에너지 및 상기 제 2 타겟 프레임의 에너지에 기초하고, 상기 제 2 레퍼런스 프레임은 상기 제 1 레퍼런스 프레임에 선행하고 상기 제 2 타겟 프레임은 상기 제 1 타겟 프레임에 선행하는, 상기 이득 파라미터를 계산하는 단계;
상기 인코더에서, 상기 이득 파라미터와 제 1 임계치를 비교하는 단계;
상기 비교에 응답하여, 상기 인코더에서, 제 2 장기 평활화된 비교 값들을 생성하기 위해 상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하는 단계;
상기 인코더에서, 상기 제 2 장기 평활화된 비교 값들에 기초하여 잠정적 시프트 값을 추정하는 단계;
상기 인코더에서, 상기 잠정적 시프트 값에 기초하여 비인과 시프트 값을 결정하는 단계;
상기 인코더에서, 특정 레퍼런스 채널과 시간적으로 정렬되는 조정된 특정 타겟 채널을 생성하기 위해 특정 타겟 채널을 상기 비인과 시프트 값만큼 비인과적으로 시프트하는 단계; 및
상기 인코더에서, 상기 특정 레퍼런스 채널 및 상기 조정된 특정 타겟 채널에 기초하여 미드 대역 채널 또는 사이드 대역 채널 중 적어도 하나를 생성하는 단계를 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 33 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하는 단계는, 상기 이득 파라미터가 상기 제 1 임계치 초과라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 포지티브 시프트 사이드를 엠퍼사이징하는 단계를 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 33 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하는 단계는, 상기 이득 파라미터가 상기 제 1 임계치 초과라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 네거티브 시프트 사이드를 디엠퍼사이징하는 단계를 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 33 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하는 단계는, 상기 이득 파라미터가 상기 제 1 임계치 미만이라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 네거티브 시프트 사이드를 엠퍼사이징하는 단계를 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 제 33 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하는 단계는, 상기 이득 파라미터가 상기 제 1 임계치 초과라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 포지티브 시프트 사이드를 디엠퍼사이징하는 단계를 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 방법. - 멀티-채널 오디오 신호들의 코딩을 위한 장치로서,
레퍼런스 채널의 제 1 레퍼런스 프레임을 캡처하도록 구성된 제 1 마이크로폰;
타겟 채널의 제 1 타겟 프레임을 캡처하도록 구성된 제 2 마이크로폰; 및
인코더를 포함하고,
상기 인코더는,
비교 값들을 추정하는 것으로서, 각각의 비교 값은 상기 레퍼런스 채널의 상기 제 1 레퍼런스 프레임과 상기 타겟 채널의 대응하는 상기 제 1 타겟 프레임 사이의 시간 불일치의 양을 나타내는, 상기 비교 값들을 추정하고;
평활화 파라미터에 기초하여 제 1 장기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하고;
상기 레퍼런스 채널의 제 2 레퍼런스 프레임과 상기 타겟 채널의 대응하는 제 2 타겟 프레임 사이의 이득 파라미터를 계산하는 것으로서, 상기 이득 파라미터는 상기 제 2 레퍼런스 프레임의 에너지 및 상기 제 2 타겟 프레임의 에너지에 기초하고, 상기 제 2 레퍼런스 프레임은 상기 제 1 레퍼런스 프레임에 선행하고 상기 제 2 타겟 프레임은 상기 제 1 타겟 프레임에 선행하는, 상기 이득 파라미터를 계산하고;
상기 이득 파라미터와 제 1 임계치를 비교하고;
상기 비교에 응답하여, 제 2 장기 평활화된 비교 값들을 생성하기 위해 상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하고;
상기 제 2 장기 평활화된 비교 값들에 기초하여 잠정적 시프트 값을 추정하고;
상기 잠정적 시프트 값에 기초하여 비인과 시프트 값을 결정하고;
특정 레퍼런스 채널과 시간적으로 정렬되는 조정된 특정 타겟 채널을 생성하기 위해 특정 타겟 채널을 상기 비인과 시프트 값만큼 비인과적으로 시프트하고; 그리고
상기 특정 레퍼런스 채널 및 상기 조정된 특정 타겟 채널에 기초하여 미드 대역 채널 또는 사이드 대역 채널 중 적어도 하나를 생성하도록 구성된, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 38 항에 있어서,
상기 인코더는, 상기 이득 파라미터가 상기 제 1 임계치 초과라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 포지티브 시프트 사이드를 엠퍼사이징함으로써 상기 제 1 장기 평활화된 비교 값들의 상기 제 1 서브세트를 조정하도록 구성되는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 38 항에 있어서,
상기 인코더는, 상기 이득 파라미터가 상기 제 1 임계치 초과라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 네거티브 시프트 사이드를 디엠퍼사이징함으로써 상기 제 1 장기 평활화된 비교 값들의 상기 제 1 서브세트를 조정하도록 구성되는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 38 항에 있어서,
상기 인코더는, 상기 이득 파라미터가 상기 제 1 임계치 미만이라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 네거티브 시프트 사이드를 엠퍼사이징함으로써 상기 제 1 장기 평활화된 비교 값들의 상기 제 1 서브세트를 조정하도록 구성되는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 38 항에 있어서,
상기 인코더는, 상기 이득 파라미터가 상기 제 1 임계치 초과라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 포지티브 시프트 사이드를 디엠퍼사이징함으로써 상기 제 1 장기 평활화된 비교 값들의 상기 제 1 서브세트를 조정하도록 구성되는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 명령들을 포함하는 비일시적 컴퓨터 판독가능 저장 매체로서,
상기 명령들은, 인코더에 의해 실행될 때, 상기 인코더로 하여금,
비교 값들을 추정하는 것으로서, 각각의 비교 값은 레퍼런스 채널의 제 1 레퍼런스 프레임과 타겟 채널의 대응하는 제 1 타겟 프레임 사이의 시간 불일치의 양을 나타내는, 상기 비교 값들을 추정하는 것;
평활화 파라미터에 기초하여 제 1 장기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하는 것;
상기 레퍼런스 채널의 제 2 레퍼런스 프레임과 상기 타겟 채널의 대응하는 제 2 타겟 프레임 사이의 이득 파라미터를 계산하는 것으로서, 상기 이득 파라미터는 상기 제 2 레퍼런스 프레임의 에너지 및 상기 제 2 타겟 프레임의 에너지에 기초하고, 상기 제 2 레퍼런스 프레임은 상기 제 1 레퍼런스 프레임에 선행하고 상기 제 2 타겟 프레임은 상기 제 1 타겟 프레임에 선행하는, 상기 이득 파라미터를 계산하는 것;
상기 이득 파라미터와 제 1 임계치를 비교하는 것;
상기 비교에 응답하여, 상기 인코더에서, 제 2 장기 평활화된 비교 값들을 생성하기 위해 상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하는 것;
상기 제 2 장기 평활화된 비교 값들에 기초하여 잠정적 시프트 값을 추정하는 것;
상기 잠정적 시프트 값에 기초하여 비인과 시프트 값을 결정하는 것;
특정 레퍼런스 채널과 시간적으로 정렬되는 조정된 특정 타겟 채널을 생성하기 위해 특정 타겟 채널을 상기 비인과 시프트 값만큼 비인과적으로 시프트하는 것; 및
상기 특정 레퍼런스 채널 및 상기 조정된 특정 타겟 채널에 기초하여 미드 대역 채널 또는 사이드 대역 채널 중 적어도 하나를 생성하는 것을 포함하는 동작들을 수행하게 하는, 비일시적 컴퓨터 판독가능 저장 매체. - 제 43 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하는 것은, 상기 이득 파라미터가 상기 제 1 임계치 초과라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 포지티브 시프트 사이드를 엠퍼사이징하는 것을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체. - 제 43 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하는 것은, 상기 이득 파라미터가 상기 제 1 임계치 초과라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 네거티브 시프트 사이드를 디엠퍼사이징하는 것을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체. - 제 43 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하는 것은, 상기 이득 파라미터가 상기 제 1 임계치 미만이라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 네거티브 시프트 사이드를 엠퍼사이징하는 것을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체. - 제 43 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하는 것은, 상기 이득 파라미터가 상기 제 1 임계치 초과라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 포지티브 시프트 사이드를 디엠퍼사이징하는 것을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체. - 전자 디바이스의 인코더에서 멀티-채널 오디오 신호들의 코딩을 위한 장치로서,
상기 인코더에서, 비교 값들을 추정하기 위한 수단으로서, 각각의 비교 값은 레퍼런스 채널의 제 1 레퍼런스 프레임과 타겟 채널의 대응하는 제 1 타겟 프레임 사이의 시간 불일치의 양을 나타내는, 상기 비교 값들을 추정하기 위한 수단;
상기 인코더에서, 평활화 파라미터에 기초하여 제 1 장기 평활화된 비교 값들을 생성하기 위해 상기 비교 값들을 평활화하기 위한 수단;
상기 인코더에서, 상기 레퍼런스 채널의 제 2 레퍼런스 프레임과 상기 타겟 채널의 대응하는 제 2 타겟 프레임 사이의 이득 파라미터를 계산하기 위한 수단으로서, 상기 이득 파라미터는 상기 제 2 레퍼런스 프레임의 에너지 및 상기 제 2 타겟 프레임의 에너지에 기초하고, 상기 제 2 레퍼런스 프레임은 상기 제 1 레퍼런스 프레임에 선행하고 상기 제 2 타겟 프레임은 상기 제 1 타겟 프레임에 선행하는, 상기 이득 파라미터를 계산하기 위한 수단;
상기 이득 파라미터와 제 1 임계치를 비교하기 위한 수단;
상기 비교에 응답하여, 상기 인코더에서, 제 2 장기 평활화된 비교 값들을 생성하기 위해 상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하기 위한 수단;
상기 인코더에서, 상기 제 2 장기 평활화된 비교 값들에 기초하여 잠정적 시프트 값을 추정하기 위한 수단;
상기 인코더에서, 상기 잠정적 시프트 값에 기초하여 비인과 시프트 값을 결정하기 위한 수단;
상기 인코더에서, 특정 레퍼런스 채널과 시간적으로 정렬되는 조정된 특정 타겟 채널을 생성하기 위해 특정 타겟 채널을 상기 비인과 시프트 값만큼 비인과적으로 시프트하기 위한 수단; 및
상기 인코더에서, 상기 특정 레퍼런스 채널 및 상기 조정된 특정 타겟 채널에 기초하여 미드 대역 채널 또는 사이드 대역 채널 중 적어도 하나를 생성하기 위한 수단을 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 48 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하기 위한 수단은, 상기 이득 파라미터가 상기 제 1 임계치 초과라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 포지티브 시프트 사이드를 엠퍼사이징하기 위한 수단을 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 48 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하기 위한 수단은, 상기 이득 파라미터가 상기 제 1 임계치 초과라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 네거티브 시프트 사이드를 디엠퍼사이징하기 위한 수단을 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 48 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하기 위한 수단은, 상기 이득 파라미터가 상기 제 1 임계치 미만이라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 네거티브 시프트 사이드를 엠퍼사이징하기 위한 수단을 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 장치. - 제 48 항에 있어서,
상기 제 1 장기 평활화된 비교 값들의 제 1 서브세트를 조정하기 위한 수단은, 상기 이득 파라미터가 상기 제 1 임계치 초과라는 상기 비교에 응답하여 상기 제 1 장기 평활화된 비교 값들의 포지티브 시프트 사이드를 디엠퍼사이징하기 위한 수단을 포함하는, 멀티-채널 오디오 신호들의 코딩을 위한 장치.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762556653P | 2017-09-11 | 2017-09-11 | |
US62/556,653 | 2017-09-11 | ||
US16/115,129 | 2018-08-28 | ||
US16/115,129 US10891960B2 (en) | 2017-09-11 | 2018-08-28 | Temporal offset estimation |
PCT/US2018/050242 WO2019051399A1 (en) | 2017-09-11 | 2018-09-10 | ESTIMATION OF TIME SHIFT |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200051609A KR20200051609A (ko) | 2020-05-13 |
KR102345910B1 true KR102345910B1 (ko) | 2021-12-30 |
Family
ID=65632369
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020207006457A KR102345910B1 (ko) | 2017-09-11 | 2018-09-10 | 시간 오프셋 추정 |
Country Status (10)
Country | Link |
---|---|
US (1) | US10891960B2 (ko) |
EP (1) | EP3682446B1 (ko) |
KR (1) | KR102345910B1 (ko) |
CN (1) | CN111095404B (ko) |
AU (1) | AU2018329187B2 (ko) |
BR (1) | BR112020004703A2 (ko) |
ES (1) | ES2889929T3 (ko) |
SG (1) | SG11202001284YA (ko) |
TW (1) | TWI769304B (ko) |
WO (1) | WO2019051399A1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10812310B1 (en) * | 2019-10-17 | 2020-10-20 | Sirius Xm Radio Inc. | Method and apparatus for advanced OFDM triggering techniques |
US11178447B1 (en) * | 2020-05-05 | 2021-11-16 | Twitch Interactive, Inc. | Audio synchronization for audio and video streaming |
US11900961B2 (en) * | 2022-05-31 | 2024-02-13 | Microsoft Technology Licensing, Llc | Multichannel audio speech classification |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120053714A1 (en) | 2009-05-07 | 2012-03-01 | Huawei Technologies Co., Ltd. | Signal delay detection method, detection apparatus, coder |
US20170116997A1 (en) | 2007-09-25 | 2017-04-27 | Google Technology Holdings LLC | Apparatus and method for encoding a multi channel audio signal |
US20170148447A1 (en) | 2015-11-20 | 2017-05-25 | Qualcomm Incorporated | Encoding of multiple audio signals |
US20170180906A1 (en) * | 2015-12-18 | 2017-06-22 | Qualcomm Incorporated | Temporal offset estimation |
US20170236521A1 (en) | 2016-02-12 | 2017-08-17 | Qualcomm Incorporated | Encoding of multiple audio signals |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6539357B1 (en) * | 1999-04-29 | 2003-03-25 | Agere Systems Inc. | Technique for parametric coding of a signal containing information |
US7240001B2 (en) * | 2001-12-14 | 2007-07-03 | Microsoft Corporation | Quality improvement techniques in an audio encoder |
US7502743B2 (en) * | 2002-09-04 | 2009-03-10 | Microsoft Corporation | Multi-channel audio encoding and decoding with multi-channel transform selection |
US8437720B2 (en) * | 2002-12-02 | 2013-05-07 | Broadcom Corporation | Variable-gain low noise amplifier for digital terrestrial applications |
JP2007506986A (ja) * | 2003-09-17 | 2007-03-22 | 北京阜国数字技術有限公司 | マルチ解像度ベクトル量子化のオーディオcodec方法及びその装置 |
CN1906664A (zh) * | 2004-02-25 | 2007-01-31 | 松下电器产业株式会社 | 音频编码器和音频解码器 |
US7392195B2 (en) * | 2004-03-25 | 2008-06-24 | Dts, Inc. | Lossless multi-channel audio codec |
US7983922B2 (en) * | 2005-04-15 | 2011-07-19 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Apparatus and method for generating multi-channel synthesizer control signal and apparatus and method for multi-channel synthesizing |
US7974713B2 (en) * | 2005-10-12 | 2011-07-05 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Temporal and spatial shaping of multi-channel audio signals |
US20120314776A1 (en) * | 2010-02-24 | 2012-12-13 | Nippon Telegraph And Telephone Corporation | Multiview video encoding method, multiview video decoding method, multiview video encoding apparatus, multiview video decoding apparatus, and program |
ES2571742T3 (es) * | 2012-04-05 | 2016-05-26 | Huawei Tech Co Ltd | Método de determinación de un parámetro de codificación para una señal de audio multicanal y un codificador de audio multicanal |
US9805725B2 (en) * | 2012-12-21 | 2017-10-31 | Dolby Laboratories Licensing Corporation | Object clustering for rendering object-based audio content based on perceptual criteria |
US9626983B2 (en) * | 2014-06-26 | 2017-04-18 | Qualcomm Incorporated | Temporal gain adjustment based on high-band signal characteristic |
US10693936B2 (en) * | 2015-08-25 | 2020-06-23 | Qualcomm Incorporated | Transporting coded audio data |
ES2904275T3 (es) * | 2015-09-25 | 2022-04-04 | Voiceage Corp | Método y sistema de decodificación de los canales izquierdo y derecho de una señal sonora estéreo |
US10115403B2 (en) * | 2015-12-18 | 2018-10-30 | Qualcomm Incorporated | Encoding of multiple audio signals |
US10304468B2 (en) | 2017-03-20 | 2019-05-28 | Qualcomm Incorporated | Target sample generation |
-
2018
- 2018-08-28 US US16/115,129 patent/US10891960B2/en active Active
- 2018-09-10 EP EP18779509.1A patent/EP3682446B1/en active Active
- 2018-09-10 BR BR112020004703-1A patent/BR112020004703A2/pt unknown
- 2018-09-10 SG SG11202001284YA patent/SG11202001284YA/en unknown
- 2018-09-10 CN CN201880058500.7A patent/CN111095404B/zh active Active
- 2018-09-10 AU AU2018329187A patent/AU2018329187B2/en active Active
- 2018-09-10 WO PCT/US2018/050242 patent/WO2019051399A1/en unknown
- 2018-09-10 KR KR1020207006457A patent/KR102345910B1/ko active IP Right Grant
- 2018-09-10 ES ES18779509T patent/ES2889929T3/es active Active
- 2018-09-11 TW TW107131909A patent/TWI769304B/zh active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170116997A1 (en) | 2007-09-25 | 2017-04-27 | Google Technology Holdings LLC | Apparatus and method for encoding a multi channel audio signal |
US20120053714A1 (en) | 2009-05-07 | 2012-03-01 | Huawei Technologies Co., Ltd. | Signal delay detection method, detection apparatus, coder |
US20170148447A1 (en) | 2015-11-20 | 2017-05-25 | Qualcomm Incorporated | Encoding of multiple audio signals |
US20170180906A1 (en) * | 2015-12-18 | 2017-06-22 | Qualcomm Incorporated | Temporal offset estimation |
WO2017106039A1 (en) | 2015-12-18 | 2017-06-22 | Qualcomm Incorporated | Temporal offset estimation |
US20170236521A1 (en) | 2016-02-12 | 2017-08-17 | Qualcomm Incorporated | Encoding of multiple audio signals |
Non-Patent Citations (1)
Title |
---|
Bertrand Fatus. Parametric Coding for Spatial Audio. Master’s Thesis, KTH, Stockholm, Sweden. 2015.12. |
Also Published As
Publication number | Publication date |
---|---|
KR20200051609A (ko) | 2020-05-13 |
WO2019051399A1 (en) | 2019-03-14 |
AU2018329187B2 (en) | 2022-09-01 |
AU2018329187A1 (en) | 2020-03-05 |
BR112020004703A2 (pt) | 2020-09-15 |
TWI769304B (zh) | 2022-07-01 |
ES2889929T3 (es) | 2022-01-14 |
EP3682446A1 (en) | 2020-07-22 |
EP3682446B1 (en) | 2021-08-25 |
CN111095404A (zh) | 2020-05-01 |
SG11202001284YA (en) | 2020-03-30 |
CN111095404B (zh) | 2021-12-17 |
US10891960B2 (en) | 2021-01-12 |
TW201921338A (zh) | 2019-06-01 |
US20190080703A1 (en) | 2019-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102230623B1 (ko) | 다중의 오디오 신호들의 인코딩 | |
KR102391271B1 (ko) | 다수의 오디오 신호들의 인코딩 | |
KR102009612B1 (ko) | 시간 오프셋 추정 | |
EP3692525B1 (en) | Decoding of audio signals | |
KR102628065B1 (ko) | 스테레오 디코딩을 위한 스테레오 파라미터들 | |
CN111164680B (zh) | 一种用于通信的装置及方法 | |
EP3692527B1 (en) | Decoding of audio signals | |
CN111149156B (zh) | 音频信号的解码 | |
KR102471279B1 (ko) | 시간 도메인 채널간 대역폭 확장으로의 고대역 잔차 예측 | |
KR102345910B1 (ko) | 시간 오프셋 추정 | |
JP2020525835A (ja) | 時間領域チャンネル間予測 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |