KR102054606B1 - 다수의 오디오 신호들의 인코딩 - Google Patents

다수의 오디오 신호들의 인코딩 Download PDF

Info

Publication number
KR102054606B1
KR102054606B1 KR1020187013766A KR20187013766A KR102054606B1 KR 102054606 B1 KR102054606 B1 KR 102054606B1 KR 1020187013766 A KR1020187013766 A KR 1020187013766A KR 20187013766 A KR20187013766 A KR 20187013766A KR 102054606 B1 KR102054606 B1 KR 102054606B1
Authority
KR
South Korea
Prior art keywords
channel
audio
signal
value
shift value
Prior art date
Application number
KR1020187013766A
Other languages
English (en)
Other versions
KR20180084789A (ko
Inventor
벤카트라만 아티
벤카타 수브라마니암 찬드라 세카르 체비얌
다니엘 제러드 신더
Original Assignee
퀄컴 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Priority to KR1020197035702A priority Critical patent/KR102391271B1/ko
Publication of KR20180084789A publication Critical patent/KR20180084789A/ko
Application granted granted Critical
Publication of KR102054606B1 publication Critical patent/KR102054606B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/06Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being correlation coefficients
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2499/00Aspects covered by H04R or H04S not otherwise provided for in their subgroups
    • H04R2499/10General applications
    • H04R2499/11Transducers incorporated or for use in hand-held devices, e.g. mobile phones, PDA's, camera's

Landscapes

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

Abstract

디바이스가 인코더를 포함한다. 인코더는 두 개의 오디오 채널들을 수신하도록 구성된다. 인코더는 또한 두 개의 오디오 채널들 사이의 시간적 불일치의 양을 나타내는 불일치 값을 결정하도록 구성된다. 인코더는 또한, 불일치 값에 기초하여, 타겟 채널 또는 기준 채널 중 적어도 하나의 채널을 결정하도록 구성된다. 타겟 채널은 두 개의 오디오 채널들 중 후행 오디오 채널에 해당하고 기준 채널은 두 개의 오디오 채널들 중 선행 오디오 채널에 해당한다. 인코더는 또한 오프셋 값에 기초하여 타겟 채널을 조정함으로써 수정된 타겟 채널을 생성하도록 구성된다. 인코더는 또한 기준 채널 및 수정된 타겟 채널에 기초하여 적어도 하나의 인코딩된 채널을 생성하도록 구성된다.

Description

다수의 오디오 신호들의 인코딩
우선권 주장
본 출원은 발명의 명칭이 "ENCODING OF MULTIPLE AUDIO SIGNALS"이고 2016년 9월 23일로 출원된 미국 특허출원 제15/274,041호와, 발명의 명칭이 "ENCODING OF MULTIPLE AUDIO SIGNALS"이고 2015년 11월 20일자로 출원된 미국 임시 특허출원 제62/258,369호를 우선권 주장하며, 그것들의 내용들은 그 전부가 참조로 본 명세서에 포함된다.
분야
본 개시물은 대체로 다수의 오디오 신호들의 인코딩에 관한 것이다.
기술에서의 진보가 컴퓨팅 디바이스들이 더 작고 더 강력해지게 하였다. 예를 들어, 작고, 경량이고, 사용자들이 쉽게 휴대하는 모바일 및 스마트 폰들과 같은 무선 전화기들, 태블릿들 및 랩톱 컴퓨터들을 포함하는 다양한 휴대용 개인 컴퓨팅 디바이스들이 현재 존재한다. 이들 디바이스들은 음성 및 데이터 패킷들을 무선 네트워크들을 통해 통신할 수 있다. 게다가, 많은 이러한 디바이스들은 디지털 스틸 카메라, 디지털 비디오 카메라, 디지털 레코더, 및 오디오 파일 플레이어와 같은 추가적인 기능을 통합한다. 또한, 이러한 디바이스들은, 소프트웨어 애플리케이션들, 이를테면 인터넷에 액세스하는데 사용될 수 있는 웹 브라우저 애플리케이션을 포함하는 실행가능 명령들을 프로세싱할 수 있다. 이처럼, 이들 디바이스들은 상당한 컴퓨팅 능력들을 포함할 수 있다.
컴퓨팅 디바이스가 오디오 신호들을 수신하기 위해 다수의 마이크로폰들을 포함할 수도 있다. 일반적으로, 사운드 소스가 다수의 마이크로폰들의 제 2 마이크로폰보다 제 1 마이크로폰에 더 가깝다. 따라서, 제 2 마이크로폰으로부터 수신된 제 2 오디오 신호가 사운드 소스에서부터의 마이크로폰들의 거리로 인해 제 1 마이크로폰으로부터 수신된 제 1 오디오 신호에 비하여 지연될 수도 있다. 스테레오-인코딩에서, 마이크로폰들로부터의 오디오 신호들은 중간 채널 신호와 하나 이상의 사이드 채널 신호들을 생성하도록 인코딩될 수도 있다. 중간 채널 신호는 제 1 오디오 신호와 제 2 오디오 신호의 합에 대응할 수도 있다. 사이드 채널 신호가 제 1 오디오 신호와 제 2 오디오 신호 사이의 차이에 대응할 수도 있다. 제 1 오디오 신호는 제 1 오디오 신호에 비하여 제 2 오디오 신호를 수신함에 있어서의 지연 때문에 제 2 오디오 신호와 정렬되지 않을 수도 있다. 제 2 오디오 신호에 비한 제 1 오디오 신호의 오정렬은 두 개의 오디오 신호들 사이의 차이를 증가시킬 수도 있다. 차이에서의 증가 때문에, 더 많은 수의 비트들이 사이드 채널 신호를 인코딩하는데 사용될 수도 있다.
특정 양태에서, 디바이스가 인코더를 포함한다. 인코더는 두 개의 오디오 채널들을 수신하도록 구성된다. 인코더는 또한 두 개의 오디오 채널들 사이의 시간적 불일치의 양을 나타내는 불일치 값을 결정하도록 구성된다. 인코더는 또한, 불일치 값에 기초하여, 타겟 채널 또는 기준 채널 중 적어도 하나의 채널을 결정하도록 구성된다. 타겟 채널은 두 개의 오디오 채널들 중 시간적으로 후행하는 (lagging) 오디오 채널에 해당하고 기준 채널은 두 개의 오디오 채널들 중 시간적으로 선행하는 (leading) 오디오 채널에 해당한다. 인코더는 또한 불일치 값에 기초하여 타겟 채널을 조정함으로써 수정된 타겟 채널을 생성하도록 구성된다. 인코더는 또한 기준 채널 및 수정된 타겟 채널에 기초하여 적어도 하나의 인코딩된 채널을 생성하도록 구성된다.
다른 특정 양태에서, 통신 방법이, 디바이스에서, 두 개의 오디오 채널들을 수신하는 단계를 포함한다. 그 방법은, 디바이스에서, 두 개의 오디오 채널들 사이의 시간적 불일치의 양을 나타내는 불일치 값을 결정하는 단계를 또한 포함한다. 그 방법은, 불일치 값에 기초하여, 타겟 채널 또는 기준 채널 중 적어도 하나의 채널을 결정하는 단계를 더 포함한다. 타겟 채널은 두 개의 오디오 채널들 중 시간적으로 후행하는 오디오 채널에 해당하고 기준 채널은 두 개의 오디오 채널들 중 시간적으로 선행하는 오디오 채널에 해당한다. 그 방법은, 디바이스에서, 불일치 값에 기초하여 타겟 채널을 조정함으로써 수정된 타겟 채널을 생성하는 단계를 또한 포함한다. 그 방법은, 디바이스에서, 기준 채널 및 수정된 타겟 채널에 기초하여 적어도 하나의 인코딩된 신호를 생성하는 단계를 더 포함한다.
다른 특정 양태에서, 컴퓨터 판독가능 저장 디바이스가, 프로세서에 의해 실행될 때, 프로세서로 하여금, 두 개의 오디오 채널들을 수신하는 것을 포함하는 동작들을 수행하게 하는 명령들을 저장한다. 그 동작들은 두 개의 오디오 채널들 사이의 시간적 불일치의 양을 나타내는 불일치 값을 결정하는 것을 또한 포함한다. 그 동작들은, 불일치 값에 기초하여, 타겟 채널 또는 기준 채널 중 적어도 하나의 채널을 결정하는 것을 더 포함한다. 타겟 채널은 두 개의 오디오 채널들 중 시간적으로 후행하는 오디오 채널에 해당하고 기준 채널은 두 개의 오디오 채널들 중 시간적으로 선행하는 오디오 채널에 해당한다. 그 동작들은 불일치 값에 기초하여 타겟 채널을 조정함으로써 수정된 타겟 채널을 생성하는 것을 또한 포함한다. 그 동작들은 기준 채널 및 수정된 타겟 채널에 기초하여 적어도 하나의 인코딩된 신호를 생성하는 것을 더 포함한다.
다른 특정 양태에서, 디바이스가 인코더와 송신기를 포함한다. 인코더는 제 2 오디오 신호에 비하여 제 1 오디오 신호의 시프트를 나타내는 최종 시프트 값을 결정하도록 구성된다. 인코더는, 최종 시프트 값이 양인지 또는 음인지의 결정에 응답하여, 제 1 오디오 신호 또는 제 2 오디오 신호 중 하나를 기준 신호로서 그리고 제 1 오디오 신호 또는 제 2 오디오 신호 중 다른 하나를 타겟 신호로서 선택 (또는 식별) 할 수도 있다. 인코더는 비인과적 시프트 값 (예컨대, 최종 시프트 값의 절대 값) 에 기초하여 타겟 신호를 시프트시킬 수도 있다. 인코더는 또한 제 1 오디오 신호 (예컨대, 기준 신호) 의 제 1 샘플들 및 제 2 오디오 신호 (예컨대, 타겟 신호) 의 제 2 샘플들에 기초하여 적어도 하나의 인코딩된 신호를 생성하도록 구성된다. 제 2 샘플들은 최종 시프트 값에 기초한 양만큼 제 1 샘플들에 비하여 시간 시프트된다. 송신기는 적어도 하나의 인코딩된 신호를 송신하도록 구성된다.
다른 특정 양태에서, 통신 방법이, 제 1 디바이스에서, 제 2 오디오 신호에 비하여 제 1 오디오 신호의 시프트를 나타내는 최종 시프트 값을 결정하는 단계를 포함한다. 그 방법은, 제 1 디바이스에서, 제 1 오디오 신호의 제 1 샘플들 및 제 2 오디오 신호의 제 2 샘플들에 기초하여 적어도 하나의 인코딩된 신호를 생성하는 단계를 또한 포함한다. 제 2 샘플들은 최종 시프트 값에 기초한 양만큼 제 1 샘플들에 비하여 시간 시프트될 수도 있다. 그 방법은 제 1 디바이스에서부터 제 2 디바이스로 적어도 하나의 인코딩된 신호를 전송하는 단계를 더 포함한다.
다른 특정 양태에서, 컴퓨터 판독가능 저장 디바이스가, 프로세서에 의해 실행될 때, 프로세서로 하여금, 제 2 오디오 신호에 비하여 제 1 오디오 신호의 시프트를 나타내는 최종 시프트 값을 결정하는 것을 포함하는 동작들을 수행하게 하는 명령들을 저장한다. 그 동작들은 제 1 오디오 신호의 제 1 샘플들 및 제 2 오디오 신호의 제 2 샘플들에 기초하여 적어도 하나의 인코딩된 신호를 생성하는 것을 또한 포함한다. 제 2 샘플들은 최종 시프트 값에 기초하는 양만큼 제 1 샘플들에 비하여 시간 시프트된다. 그 동작들은 적어도 하나의 인코딩된 신호를 디바이스에 전송하는 것을 더 포함한다.
본 개시물의 다른 양태들, 장점들, 및 특징들은 다음의 섹션들 즉, 도면의 간단한 설명, 상세한 설명 및 청구범위를 포함하는 전체 출원의 검토 후에 명확하게 될 것이다.
도 1은 다수의 오디오 신호들을 인코딩하도록 동작 가능한 디바이스를 포함하는 시스템의 특정 구체적인 예의 블록도이며;
도 2는 도 1의 디바이스를 포함하는 시스템의 다른 예를 도시하는 도면이며;
도 3은 도 1의 디바이스에 인코딩될 수도 있는 샘플들의 특정 예들을 도시하는 도면이며;
도 4는 도 1의 디바이스에 인코딩될 수도 있는 샘플들의 특정 예들을 도시하는 도면이며;
도 5는 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 6은 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 7은 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 8은 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 9a는 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 9b는 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 9c는 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 10a는 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 10b는 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 11은 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 12는 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 13은 다수의 오디오 신호들을 인코딩하는 특정 방법을 예시하는 흐름도이며;
도 14는 도 1의 디바이스를 포함하는 시스템의 다른 예를 도시하는 도면이며;
도 15는 도 1의 디바이스를 포함하는 시스템의 다른 예를 도시하는 도면이며;
도 16은 다수의 오디오 신호들을 인코딩하는 특정 방법을 예시하는 흐름도이며;
도 17은 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 18은 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 19는 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 20은 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 21은 다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템의 다른 예를 도시하는 도면이며;
도 22는 다수의 오디오 신호들을 인코딩하는 특정 방법을 예시하는 흐름도이며;
도 23은 다수의 오디오 신호들을 인코딩하도록 동작 가능한 디바이스의 특정 구체적인 예의 블록도이며; 그리고
도 24는 다수의 오디오 신호들을 인코딩하도록 동작 가능한 기지국의 블록도이다.
다수의 오디오 신호들을 인코딩하도록 동작 가능한 시스템들 및 디바이스들이 개시된다. 디바이스가 다수의 오디오 신호들을 인코딩하도록 구성되는 인코더를 포함할 수도 있다. 다수의 오디오 신호들은 다수의 레코딩 디바이스들, 예컨대, 다수의 마이크로폰들을 사용하여 시간적으로 동시에 캡처될 수도 있다. 일부 예들에서, 다수의 오디오 신호들 (또는 멀티-채널 오디오) 은 동일한 시간에 또는 상이한 시간들에 기록되는 여러 오디오 채널들을 다중화함으로써 합성적으로 (예컨대, 부자연스럽게) 생성될 수도 있다. 구체적인 예들로서, 오디오 채널들의 동시 기록 또는 다중화는 2-채널 구성 (즉, 스테레오: 좌측 및 우측), 5.1 채널 구성 (좌측, 우측, 중앙, 좌측 서라운드, 우측 서라운드, 및 저 주파 앰퍼시스 (low frequency emphasis, LFE) 채널들), 7.1 채널 구성, 7.1+4 채널 구성, 22.2 채널 구성, 또는 N-채널 구성을 초래할 수도 있다.
원격회의실들 (또는 텔레프레전스 (telepresence) 룸들) 에서의 오디오 캡처 디바이스들이 공간적 오디오를 취득하는 다수의 마이크로폰들을 포함할 수도 있다. 공간적 오디오는 인코딩되고 송신되는 배경 오디오 뿐만 아니라 스피치를 포함할 수도 있다. 주어진 소스 (예컨대, 화자 (talker)) 로부터의 스피치/오디오는 마이크로폰들 및 방 치수들에 대하여 소스 (예컨대, 화자) 가 위치되는 곳 뿐만 아니라 마이크로폰들이 배열되는 방법에 의존하여 다수의 마이크로폰들에 상이한 시간들에 도착할 수도 있다. 예를 들어, 사운드 소스 (예컨대, 화자) 가 디바이스에 연관된 제 2 마이크로폰보다 디바이스에 연관된 제 1 마이크로폰에 더 가까울 수도 있다. 따라서, 사운드 소스로부터 방출된 사운드가 제 2 마이크로폰보다 시간적으로 더 일찍 제 1 마이크로폰에 도달할 수도 있다. 디바이스는 제 1 오디오 신호를 제 1 마이크로폰을 통해 수신할 수도 있고 제 2 오디오 신호를 제 2 마이크로폰을 통해 수신할 수도 있다.
일부 예들에서, 마이크로폰들은 다수의 사운드 소스들로부터 오디오를 수신할 수도 있다. 다수의 사운드 소스들은 우세한 (dominant) 사운드 소스 (예컨대, 화자) 와 하나 이상의 이차 사운드 소스들 (예컨대, 지나가는 자동차, 교통 (traffic), 배경 음악, 거리 소음) 을 포함할 수도 있다. 우세한 사운드 소스로부터 방출된 사운드는 제 2 마이크로폰보다 시간적으로 더 일찍 제 1 마이크로폰에 도달할 수도 있다.
오디오 신호가 세그먼트들 또는 프레임들로 인코딩될 수도 있다. 프레임이 다수의 샘플들 (예컨대, 1920 개 샘플들 또는 2000 개 샘플들) 에 대응할 수도 있다. 중간-사이드 (mid-side, MS) 코딩과 파라메트릭 스테레오 (parametric stereo, PS) 코딩이 듀얼-모노 코딩 기법들보다 개선된 효율을 제공할 수도 있는 스테레오 코딩 기법들이다. 듀얼-모노 코딩에서, 좌측 (L) 채널 (또는 신호) 및 우측 (R) 채널 (또는 신호) 은 채널 간 상관을 사용하는 일 없이 독립적으로 코딩된다. MS 코딩은 좌측 채널 및 우측 채널을 코딩에 앞서 합-채널 및 차이-채널 (예컨대, 사이드 채널) 로 변환함으로써 상관된 L/R 채널-쌍 사이의 리던던시를 감소시킨다. 합 신호와 차이 신호는 MS 코딩으로 파형 코딩된다. 비교적 더 많은 비트들이 사이드 신호에서보다 합 신호에서 소비된다. PS 코딩은 L/R 신호들을 합 신호와 사이드 파라미터들의 세트로 변환함으로써 각각의 서브밴드에서의 리던던시를 감소시킨다. 사이드 파라미터들은 채널 간 세기 차이 (inter-channel intensity difference, IID), 채널 간 위상 차이 (inter-channel phase difference, IPD), 채널 간 시간 차이 (inter-channel time difference, ITD) 등을 나타낼 수도 있다. 합 신호는 사이드 파라미터들과 함께 파형 코딩되고 송신된다. 하이브리드 시스템에서, 사이드-채널은 하위 대역들 (예컨대, 2~3 킬로헤르츠 (kHz) 미만) 에서 파형 코딩되고 채널 간 위상 보존이 인지적으로 덜 중요한 상위 대역들 (예컨대, 2~3 kHz 이상) 에서 PS 코딩될 수도 있다.
MS 코딩과 PS 코딩은 주파수 도메인에서 또는 서브-대역 도메인에서 중 어느 하나에서 행해질 수도 있다. 일부 예들에서, 좌측 채널과 우측 채널은 비상관될 수도 있다. 예를 들어, 좌측 채널과 우측 채널은 비상관된 합성 신호들을 포함할 수도 있다. 좌측 채널과 우측 채널이 비상관될 때, MS 코딩, PS 코딩, 또는 둘 다의 코딩 효율은, 듀얼-모노 코딩의 코딩 효율에 접근할 수도 있다.
기록 구성에 의존하여, 좌측 채널과 우측 채널 사이의 시간적 시프트, 뿐만 아니라 에코 및 룸 잔향 (reverberation) 과 같은 다른 공간적 효과들이 있을 수도 있다. 채널들 사이의 시간적 시프트 및 위상 불일치가 보상되지 않으면, 합 채널과 차이 채널은 MS 또는 PS 기법들에 연관된 코딩-이득들을 감소시키는 필적하는 에너지들을 포함할 수도 있다. 코딩-이득들에서의 감소는 시간적 (또는 위상) 시프트의 양에 기초할 수도 있다. 합 신호 및 차이 신호의 필적하는 에너지들은 채널들이 시간적으로 시프트되지만 고도로 상관되는 특정한 프레임들에서 MS 코딩의 사용을 제한할 수도 있다. 스테레오 코딩에서, 중간 채널 (예컨대, 합 채널) 과 사이드 채널 (예컨대, 차이 채널) 이 다음의 공식에 기초하여 생성될 수도 있으며:
M = (L + R)/2, S = (L - R)/2 공식 1
여기서 M은 중간 채널에 해당하며, S는 사이드 채널에 해당하며, L은 좌측 채널에 해당하고, R은 우측 채널에 해당한다.
일부 경우들에서, 중간 채널과 사이드 채널은 다음의 공식에 기초하여 생성될 수도 있으며:
M = c(L + R), S = c(L - R) 공식 2
여기서 c는 프레임마다, 하나의 주파수 또는 서브밴드마다, 또는 그 조합으로 가변할 수도 있는 복소수 값 또는 실수 값에 해당한다.
일부 경우들에서, 중간 채널과 사이드 채널은 다음의 공식에 기초하여 생성될 수도 있으며:
M = (c1*L + c2*R), S = (c3*L - c4*R) 공식 3
여기서 c1, c2, c3 및 c4는 프레임마다, 하나의 서브밴드 또는 주파수마다, 또는 그 조합으로 가변할 수도 있는 복소수 값들 또는 실수 값들이다. 공식 1, 공식 2, 또는 공식 3에 기초하여 중간 채널 및 사이드 채널을 생성하는 것은 "다운믹싱 (downmixing)" 알고리즘을 수행하는 것이라고 지칭될 수도 있다. 공식 1, 공식 2, 또는 공식 3에 기초하여 중간 채널 및 사이드 채널로부터 좌측 채널 및 우측 채널을 생성하는 역 프로세스가 "업믹싱 (upmixing)" 알고리즘이라고 지칭될 수도 있다.
특정 프레임에 대해 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 오디오 신호는 타겟 오디오 신호 또는 타겟 채널이라고 지칭될 수도 있다.
사운드 소스들 (예컨대, 화자들) 이 회의 또는 텔레프레전스 룸에서 위치되는 곳 또는 사운드 소스 (예컨대, 화자) 포지션이 마이크로폰들에 비하여 변화하는 방법에 의존하여, 기준 채널과 타겟 채널은 프레임마다 변화할 수도 있으며; 유사하게, 시간적 불일치 (예컨대, 시프트) 값은 프레임마다 또한 변화할 수도 있다. 그러나, 일부 구현예들에서, 시간적 시프트 값은 "기준" 채널에 비한 "타겟" 채널의 지연의 양을 나타내기 위해 항상 양 (positive) 일 수도 있다. 더욱이, 시프트 값은 타겟 채널이 "기준" 채널과 정렬 (예컨대, 최대한으로 정렬) 되도록 지연된 타겟 채널이 시간적으로 "후퇴되게 (pulled back)" 하는 "비인과적 시프트" 값에 대응할 수도 있다. 타겟 채널을 "후퇴시키는 것"은 타겟 채널을 시간적으로 전진시키는 것에 해당할 수도 있다. "비인과적 시프트"가 지연된 오디오 채널과 선행 오디오 채널을 시간적으로 정렬하기 위한 선행 오디오 채널에 비한 지연된 오디오 채널 (예컨대, 후행 오디오 채널) 의 시프트에 해당할 수도 있다. 중간 채널과 사이드 채널을 결정하기 위한 다운믹스 알고리즘은 기준 채널과 비인과적 시프트된 타겟 채널에 대해 수행될 수도 있다.
인코더는 제 1 오디오 채널과 제 2 오디오 채널에 적용되는 복수의 시프트 값들에 기초하여 시프트 값을 결정할 수도 있다. 예를 들어, 제 1 오디오 채널 (X) 의 제 1 프레임이, 제 1 시간 (m1) 에 수신될 수도 있다. 제 2 오디오 채널 (Y) 의 제 1 특정 프레임이, 제 1 시프트 값, 예컨대, shift1 = n1 - m1에 대응하는 제 2 시간 (n1) 에 수신될 수도 있다. 게다가, 제 1 오디오 채널의 제 2 프레임이 제 3 시간 (m2) 에 수신될 수도 있다. 제 2 오디오 채널의 제 2 특정 프레임이 제 2 시프트 값, 예컨대, shift2 = n2 - m2에 대응하는 제 4 시간 (n2) 에 수신될 수도 있다.
디바이스는 제 1 샘플링 레이트 (예컨대, 32 kHz 샘플링 레이트 (즉, 프레임 당 640 개 샘플들)) 에서 프레임 (예컨대, 20 ms 샘플들) 을 생성하기 위해 프레이밍 (framing) 또는 버퍼링 알고리즘을 수행할 수도 있다. 인코더는, 제 1 오디오 신호의 제 1 프레임과 제 2 오디오 신호의 제 2 프레임이 동일한 시간에 디바이스에 도착한다는 결정에 응답하여, 시프트 값 (예컨대, shift1) 을 영 개 샘플과 동일한 것으로서 추정할 수도 있다. 좌측 채널 (예컨대, 제 1 오디오 신호에 대응함) 과 우측 채널 (예컨대, 제 2 오디오 신호에 대응함) 이 시간적으로 정렬될 수도 있다. 일부 경우들에서, 좌측 채널과 우측 채널은, 심지어 정렬될 때에도, 다양한 이유들 (예컨대, 마이크로폰 교정) 로 인해 에너지가 상이할 수도 있다.
일부 예들에서, 좌측 채널과 우측 채널은 다양한 이유들 (예컨대, 사운드 소스, 이를테면 화자가, 마이크로폰들 중 하나의 마이크로폰에 다른 마이크로폰보다 더 가까울 수도 있고, 두 개의 마이크로폰들이 임계값 (예컨대, 1~20 센티미터) 거리보다 더 많이 떨어져 있을 수도 있음) 로 인해 시간적으로 불일치될 (예컨대, 정렬되지 않을) 수도 있다. 마이크로폰들에 비한 사운드 소스의 로케이션이 좌측 채널과 우측 채널에서 상이한 지연들을 도입할 수도 있다. 덧붙여서, 좌측 채널과 우측 채널 사이에 이득 차이, 에너지 차이, 또는 레벨 차이가 있을 수도 있다.
일부 예들에서, 다수의 화자들이 (예컨대, 중첩 없이) 번갈아 말할 때 다수의 사운드 소스들 (예컨대, 화자들) 로부터의 마이크로폰들에서의 오디오 신호들의 도착 시간이 가변할 수도 있다. 이러한 경우에, 인코더는 기준 채널을 식별하기 위해 화자에 기초하여 시간적 시프트 값을 동적으로 조정할 수도 있다. 일부 다른 예들에서, 다수의 화자들이 동일한 시간에 말하고 있을 수도 있으며, 이는 마이크로폰에 가장 가까운 가장 시끄러운 화자 등에 의존하여 시간적 시프트 값들을 가변시키는 결과를 초래할 수도 있다.
일부 예들에서, 제 1 오디오 신호와 제 2 오디오 신호는 두 개의 신호들이 적은 (예컨대, 없는) 상관을 잠재적으로 나타낼 때 합성되거나 또는 부자연스럽게 생성될 수도 있다. 본 명세서에서 설명되는 예들은 예시적이고 유사하거나 또는 상이한 상황들에서 제 1 오디오 신호와 제 2 오디오 신호 사이에 관계를 결정함에 있어서 유익할 수도 있다는 것이 이해되어야 한다.
인코더는 제 1 오디오 신호의 제 1 프레임과 제 2 오디오 신호의 복수의 프레임들의 비교에 기초하여 비교 값들 (예컨대, 차이 값들 또는 교차 상관 값들) 을 생성할 수도 있다. 복수의 프레임들 중 각각의 프레임이 특정 시프트 값에 대응할 수도 있다. 인코더는 비교 값들에 기초하여 제 1 추정된 시프트 값 (예컨대, 제 1 추정된 불일치 값) 을 생성할 수도 있다. 예를 들어, 제 1 추정된 시프트 값은 제 1 오디오 신호의 제 1 프레임과 제 2 오디오 신호의 대응하는 제 1 프레임 사이의 더 높은 시간적 유사도 (또는 더 낮은 차이) 를 나타내는 비교 값에 대응할 수도 있다. 양의 시프트 값 (예컨대, 제 1 추정된 시프트 값) 이, 제 1 오디오 신호가 선행 오디오 신호 (예컨대, 시간적으로 선행하는 오디오 신호) 라는 것과 제 2 오디오 신호가 후행 오디오 신호 (예컨대, 시간적으로 후행하는 오디오 신호) 라는 것을 나타낼 수도 있다. 후행 오디오 신호의 프레임 (예컨대, 샘플들) 이 선행 오디오 신호의 프레임 (예컨대, 샘플들) 에 비하여 시간적으로 지연될 수도 있다.
인코더는, 다수의 스테이지들에서, 일련의 추정된 시프트 값들을 리파인함으로써 최종 시프트 값 (예컨대, 최종 불일치 값) 을 결정할 수도 있다. 예를 들어, 인코더는 제 1 오디오 신호 및 제 2 오디오 신호의 스테레오 프리-프로세싱된 및 재샘플링된 버전들로부터 생성된 비교 값들에 기초하여 "잠정적" 시프트 값을 먼저 추정할 수도 있다. 인코더는 추정된 "잠정적" 시프트 값에 근접한 시프트 값들에 연관된 보간된 비교 값들을 생성할 수도 있다. 인코더는 보간된 비교 값들에 기초하여 제 2 추정된 "보간된" 시프트 값을 결정할 수도 있다. 예를 들어, 제 2 추정된 "보간된" 시프트 값은 나머지 보간된 비교 값들 및 제 1 추정된 "잠정적" 시프트 값보다 더 높은 시간적 유사도 (또는 더 낮은 차이) 를 나타내는 특정 보간된 비교 값에 대응할 수도 있다. 현재 프레임 (예컨대, 제 1 오디오 신호의 제 1 프레임) 의 제 2 추정된 "보간된" 시프트 값이 이전의 프레임 (예컨대, 제 1 프레임에 선행하는 제 1 오디오 신호의 프레임) 의 최종 시프트 값과는 상이하면, 현재 프레임의 "보간된" 시프트 값은 제 1 오디오 신호와 시프트된 제 2 오디오 신호 사이의 시간적 유사도를 개선하기 위해 추가로 "보정된"다. 특히, 제 3 추정된 "보정된" 시프트 값이 현재 프레임의 제 2 추정된 "보간된" 시프트 값과 이전의 프레임의 최종 추정된 시프트 값 주위를 검색함으로써 시간적 유사도의 더욱 정확한 측정값에 해당할 수도 있다. 제 3 추정된 "보정된" 시프트 값은 프레임들 사이의 시프트 값에서의 임의의 슈프리어스 (spurious) 변화들을 제한함으로써 최종 시프트 값을 추정하도록 추가로 컨디셔닝되고, 본 명세서에서 설명되는 바와 같은 두 개의 연속하는 (또는 연속적인) 프레임들에서 음의 시프트 값으로부터 양의 시프트 값으로 (또는 그 반대로) 스위칭하지 않도록 추가로 제어된다.
일부 예들에서, 인코더는 연속 프레임들에서 또는 인접한 프레임들에서 양의 시프트 값과 음의 시프트 값 사이에서 또는 반대로 스위칭하는 것을 하지 않을 수도 있다. 예를 들어, 인코더는 제 1 프레임의 추정된 "보간된" 또는 "보정된" 시프트 값과 제 1 프레임에 선행하는 특정 프레임에서의 대응하는 추정된 "보간된" 또는 "보정된" 또는 최종 시프트 값에 기초하여 시간적 시프트가 없음을 나타내는 특정 값 (예컨대, 0) 으로 최종 시프트 값을 설정할 수도 있다. 예시하기 위해, 인코더는, 현재 프레임 (예컨대, 제 1 프레임) 의 추정된 "잠정적" 또는 "보간된" 또는 "보정된" 시프트 값 중 하나가 양이고 이전의 프레임 (예컨대, 제 1 프레임에 선행하는 프레임) 의 추정된 "잠정적" 또는 "보간된" 또는 "보정된" 또는 "최종" 추정된 시프트 값 중 다른 하나가 음이라는 결정에 응답하여, 시간적 시프트가 없음, 즉, shift1 = 0임을 나타내도록 현재 프레임의 최종 시프트 값을 설정할 수도 있다. 대안적으로, 인코더는, 현재 프레임 (예컨대, 제 1 프레임) 의 추정된 "잠정적" 또는 "보간된" 또는 "보정된" 시프트 값 중 하나가 음이고 이전의 프레임 (예컨대, 제 1 프레임에 선행하는 프레임) 의 추정된 "잠정적" 또는 "보간된" 또는 "보정된" 또는 "최종" 추정된 시프트 값 중 다른 하나가 양이라는 결정에 응답하여, 시간적 시프트가 없음, 즉, shift1 = 0임을 나타내도록 현재 프레임의 최종 시프트 값을 또한 설정할 수도 있다. 본 명세서에서 언급되는 바와 같이, "시간적 시프트"가 시간 시프트, 시간 오프셋, 샘플 시프트, 샘플 오프셋, 또는 오프셋에 해당할 수도 있다.
인코더는 시프트 값에 기초하여 "기준" 또는 "타겟"으로서 제 1 오디오 신호 또는 제 2 오디오 신호의 프레임을 선택할 수도 있다. 예를 들어, 최종 시프트 값이 양이라는 결정에 응답하여, 인코더는 제 1 오디오 신호가 "기준" 신호이고 제 2 오디오 신호가 "타겟" 신호임을 나타내는 제 1 값 (예컨대, 0) 을 갖는 기준 채널 또는 신호 표시자를 생성할 수도 있다. 대안적으로, 최종 시프트 값이 음이라는 결정에 응답하여, 인코더는 제 2 오디오 신호가 "기준" 신호이고 제 1 오디오 신호가 "타겟" 신호임을 나타내는 제 2 값 (예컨대, 1) 을 갖는 기준 채널 또는 신호 표시자를 생성할 수도 있다.
기준 신호는 선행 신호에 해당할 수도 있는 한편, 타겟 신호는 후행 신호에 해당할 수도 있다. 특정 양태에서, 기준 신호는 제 1 추정된 시프트 값에 의해 선행 신호로서 나타내어지는 동일한 신호일 수도 있다. 대체 양태에서, 기준 신호는 제 1 추정된 시프트 값에 의해 선행 신호로서 나타내어진 신호와는 상이할 수도 있다. 기준 신호가 선행 신호에 해당함을 제 1 추정된 시프트 값이 나타내는지의 여부에 상관 없이 기준 신호는 선행 신호로서 취급될 수도 있다. 예를 들어, 기준 신호는 기준 신호에 비하여 다른 신호 (예컨대, 타겟 신호) 를 시프트 (예컨대, 조정) 함으로써 선행 신호로서 취급될 수도 있다.
일부 예들에서, 인코더는 인코딩될 프레임에 대응하는 불일치 값 (예컨대, 추정된 시프트 값 또는 최종 시프트 값) 및 이전에 인코딩된 프레임들에 대응하는 불일치 (예컨대, 시프트) 값들에 기초하여 타겟 신호 또는 기준 신호 중 적어도 하나를 식별하거나 또는 결정할 수도 있다. 인코더는 불일치 값들을 메모리에 저장할 수도 있다. 타겟 채널은 두 개의 오디오 채널들 중 시간적으로 후행하는 오디오 채널에 해당할 수도 있고 기준 채널은 두 개의 오디오 채널들 중 시간적으로 선행하는 오디오 채널에 해당할 수도 있다. 일부 예들에서, 인코더는 시간적으로 후행하는 채널을 식별할 수도 있고 메모리로부터의 불일치 값들에 기초하여 타겟 채널과 기준 채널을 최대한으로 정렬하지 않을 수도 있다. 예를 들어, 인코더는 하나 이상의 불일치 값들에 기초하여 타겟 채널과 기준 채널을 부분적으로 정렬할 수도 있다. 일부 다른 예들에서, 인코더는 전체 불일치 값 (예컨대, 100 개 샘플들) 을 인코딩된 다수의 프레임들 (예컨대, 네 개의 프레임들) 에 걸친 더 작은 불일치 값들 (예컨대, 25 개 샘플들, 25 개 샘플들, 25 개 샘플들, 및 25 개 샘플들) 로 "비인과적으로" 분산시킴으로써 일련의 프레임들에 걸쳐 타겟 채널을 점진적으로 조정할 수도 있다.
인코더는 기준 신호 및 비인과적 시프트된 타겟 신호에 연관된 상대이득 (예컨대, 상대 이득 파라미터) 을 추정할 수도 있다. 예를 들어, 최종 시프트 값이 양이라는 결정에 응답하여, 인코더는 비인과적 시프트 값 (예컨대, 최종 시프트 값의 절대 값) 에 의해 오프셋되는 제 2 오디오 신호에 비하여 제 1 오디오 신호의 에너지 또는 파워 레벨들을 정규화하거나 또는 등화하기 위해 이득 값을 추정할 수도 있다. 대안적으로, 최종 시프트 값이 음이라는 결정에 응답하여, 인코더는 제 2 오디오 신호에 비하여 비인과적 시프트된 제 1 오디오 신호의 파워 레벨들을 정규화하거나 또는 등화하기 위해 이득 값을 추정할 수도 있다. 일부 예들에서, 인코더는 비인과적 시프트된 "타겟" 신호에 비하여 "기준" 신호의 에너지 또는 파워 레벨들을 정규화하거나 또는 등화하기 위해 이득 값을 추정할 수도 있다. 다른 예들에서, 인코더는 타겟 신호 (예컨대, 비시프트된 타겟 신호) 에 비한 기준 신호에 기초하여 이득 값 (예컨대, 상대이득 값) 을 추정할 수도 있다.
인코더는 기준 신호, 타겟 신호 (예컨대, 시프트된 타겟 신호 또는 비시프트된 타겟 신호), 비인과적 시프트 값, 및 상대 이득 파라미터에 기초하여 적어도 하나의 인코딩된 신호 (예컨대, 중간 신호, 사이드 신호, 또는 둘 다) 를 생성할 수도 있다. 사이드 신호는 제 1 오디오 신호의 제 1 프레임의 제 1 샘플들과 제 2 오디오 신호의 선택된 프레임들의 선택된 샘플들 사이의 차이에 해당할 수도 있다. 인코더는 선택된 프레임을 최종 시프트 값에 기초하여 선택할 수도 있다. 제 1 프레임과는 동일한 시간에 디바이스에 의해 수신되는 제 2 오디오 신호의 프레임에 해당하는 제 2 오디오 신호의 다른 샘플들과 비교하여, 제 1 샘플들과 선택된 샘플들 사이의 감소된 차이 때문에 더 적은 비트들이 사이드 채널 신호를 인코딩하는데 사용될 수도 있다. 디바이스의 송신기가 적어도 하나의 인코딩된 신호, 비인과적 시프트 값, 상대 이득 파라미터, 기준 채널 또는 신호 표시자, 또는 그 조합을 송신할 수도 있다.
인코더는 기준 신호, 타겟 신호 (예컨대, 시프트된 타겟 신호 또는 비시프트된 타겟 신호), 비인과적 시프트 값, 상대 이득 파라미터, 제 1 오디오 신호의 특정 프레임의 저 대역 파라미터들, 특정 프레임의 고 대역 파라미터들, 또는 그 조합에 기초하여 적어도 하나의 인코딩된 신호 (예컨대, 중간 신호, 사이드 신호, 또는 둘 다) 를 생성할 수도 있다. 특정 프레임은 제 1 프레임에 앞설 수도 있다. 하나 이상의 선행 프레임들로부터의 특정한 저 대역 파라미터들, 고 대역 파라미터들, 또는 그 조합이 제 1 프레임의 중간 신호, 사이드 신호, 또는 둘 다를 인코딩하는데 사용될 수도 있다. 저 대역 파라미터들, 고 대역 파라미터들, 또는 그 조합에 기초하여 중간 신호, 사이드 신호, 또는 둘 다를 인코딩하는 것은, 비인과적 시프트 값 및 채널 간 상대 이득 파라미터의 추정값들을 개선시킬 수도 있다. 저 대역 파라미터들, 고 대역 파라미터들, 또는 그 조합은, 피치 파라미터, 보이싱 (voicing) 파라미터, 코더 유형 파라미터, 저-대역 에너지 파라미터, 고-대역 에너지 파라미터, 틸트 파라미터, 피치 이득 파라미터, FCB 이득 파라미터, 코딩 모드 파라미터, 음성 활동도 파라미터, 잡음 추정 파라미터, 신호 대 잡음 비 파라미터, 포먼트 (formants) 파라미터, 스피치/음악 결정 파라미터, 비인과적 시프트, 채널 간 이득 파라미터, 또는 그 조합을 포함할 수도 있다. 디바이스의 송신기가 적어도 하나의 인코딩된 신호, 비인과적 시프트 값, 상대 이득 파라미터, 기준 채널 (또는 신호) 표시자, 또는 그 조합을 송신할 수도 있다. 본 명세서에서 언급되는 바와 같이, 오디오 "신호"가 오디오 "채널"에 대응한다. 본 명세서에서 언급되는 바와 같이, "시프트 값"이 오프셋 값, 불일치 값, 시간 오프셋 값, 샘플 시프트 값, 또는 샘플 오프셋 값에 해당한다. 본 명세서에서 언급되는 바와 같이, 타겟 신호를 "시프트시키는 것"은 타겟 신호를 나타내는 데이터의 로케이션(들)을 시프트시키는 것, 데이터를 하나 이상의 메모리 버퍼들에 복사하는 것, 타겟 신호에 연관된 하나 이상의 메모리 포인터들을 이동시키는 것, 또는 그 조합에 해당할 수도 있다.
도 1을 참조하면, 시스템의 특정 구체적인 예가 개시되고 전체가 100으로 지정된다. 시스템 (100) 은 제 2 디바이스 (106) 에, 네트워크 (120) 를 통해, 통신적으로 커플링되는 제 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) 를 수신할 수도 있고 제 2 마이크로폰 (148) 으로부터 제 2 입력 인터페이스를 통해 제 2 오디오 신호 (132) 를 수신할 수도 있다. 제 1 오디오 신호 (130) 는 우측 채널 신호 또는 좌측 채널 신호 중 하나에 해당할 수도 있다. 제 2 오디오 신호 (132) 는 우측 채널 신호 또는 좌측 채널 신호 중 다른 하나에 해당할 수도 있다. 제 1 마이크로폰 (146) 과 제 2 마이크로폰 (148) 은 사운드 소스 (152) (예컨대, 사용자, 스피커, 주변 소음, 악기 등) 로부터 오디오를 수신할 수도 있다. 특정 양태에서, 제 1 마이크로폰 (146), 제 2 마이크로폰 (148), 또는 둘 다는, 다수의 사운드 소스들로부터 오디오를 수신할 수도 있다. 다수의 사운드 소스들은 우세한 (또는 가장 우세한) 사운드 소스 (예컨대, 사운드 소스 (152)) 와 하나 이상의 이차 사운드 소스들을 포함할 수도 있다. 하나 이상의 이차 사운드 소스들은 교통, 배경 음악, 다른 화자, 거리 소음 등에 해당할 수도 있다. 사운드 소스 (152) (예컨대, 우세한 사운드 소스) 는 제 2 마이크로폰 (148) 보다 제 1 마이크로폰 (146) 에 더 가까울 수도 있다. 따라서, 사운드 소스 (152) 로부터의 오디오 신호가 제 2 마이크로폰 (148) 을 통하는 것보다 더 이른 시간에 제 1 마이크로폰 (146) 을 통해 입력 인터페이스(들) (112) 에서 수신될 수도 있다. 다수의 마이크로폰들을 통한 멀티-채널 신호 취득에서의 이 자연적 지연은 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 시간적 시프트를 도입할 수도 있다.
제 1 디바이스 (104) 는 제 1 오디오 신호 (130), 제 2 오디오 신호 (132), 또는 둘 다를 메모리 (153) 에 저장할 수도 있다. 시간 등화기 (108) 는, 도 10a 및 도 10b를 참조하여 추가로 설명되는 바와 같이, 제 2 오디오 신호 (132) (예컨대, "기준") 에 비한 제 1 오디오 신호 (130) (예컨대, "타겟") 의 시프트 (예컨대, 비인과적 시프트) 를 나타내는 최종 시프트 값 (116) (예컨대, 비인과적 시프트 값) 을 결정할 수도 있다. 최종 시프트 값 (116) (예컨대, 최종 불일치 값) 은 제 1 오디오 신호와 제 2 오디오 신호 사이의 시간적 불일치 (예컨대, 시간 지연) 의 양을 나타내는 것일 수도 있다. 본 명세서에서 언급되는 바와 같이, "시간 지연"은 "시간적 지연"에 해당할 수도 있다. 시간적 불일치는 제 1 오디오 신호 (130) 의 제 1 마이크로폰 (146) 을 통한 수신과 제 2 오디오 신호 (132) 의 제 2 마이크로폰 (148) 을 통한 수신 사이의 시간 지연을 나타내는 것일 수도 있다. 예를 들어, 최종 시프트 값 (116) 의 제 1 값 (예컨대, 양의 값) 이 제 2 오디오 신호 (132) 가 제 1 오디오 신호 (130) 에 비하여 지연됨을 나타낼 수도 있다. 이 예에서, 제 1 오디오 신호 (130) 는 선행 신호에 해당할 수도 있고 제 2 오디오 신호 (132) 는 후행 신호에 해당할 수도 있다. 최종 시프트 값 (116) 의 제 2 값 (예컨대, 음의 값) 이 제 1 오디오 신호 (130) 가 제 2 오디오 신호 (132) 에 비하여 지연됨을 나타낼 수도 있다. 이 예에서, 제 1 오디오 신호 (130) 는 후행 신호에 해당할 수도 있고 제 2 오디오 신호 (132) 는 선행 신호에 해당할 수도 있다. 최종 시프트 값 (116) 의 제 3 값 (예컨대, 0) 이 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이에 지연이 없음을 나타낼 수도 있다.
일부 구현예들에서, 최종 시프트 값 (116) 의 제 3 값 (예컨대, 0) 이 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연이 부호를 스위칭하였음을 나타낼 수도 있다. 예를 들어, 제 1 오디오 신호 (130) 의 제 1 특정 프레임이 제 1 프레임에 앞설 수도 있다. 제 1 특정 프레임과 제 2 오디오 신호 (132) 의 제 2 특정 프레임이 사운드 소스 (152) 에 의해 방출된 동일한 사운드에 대응할 수도 있다. 동일한 사운드는 제 2 마이크로폰 (148) 에서보다 제 1 마이크로폰 (146) 에서 더 일찍 검출될 수도 있다. 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연은 제 2 특정 프레임에 대해 지연된 제 1 특정 프레임을 갖는 것에서부터 제 1 프레임에 대해 지연된 제 2 프레임을 갖는 것으로 스위칭할 수도 있다. 대안적으로, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연은 제 1 특정 프레임에 대해 지연된 제 2 특정 프레임을 갖는 것에서부터 제 2 프레임에 대해 지연된 제 1 프레임을 갖는 것으로 스위칭할 수도 있다. 시간 등화기 (108) 는, 도 10a 및 도 10b를 참조하여 추가로 설명되는 바와 같이, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연이 부호를 스위칭하였다는 결정에 응답하여, 제 3 값 (예컨대, 0) 을 나타내도록 최종 시프트 값 (116) 을 설정할 수도 있다.
시간 등화기 (108) 는, 도 12를 참조하여 추가로 설명되는 바와 같이, 최종 시프트 값 (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) 를 시프트함으로써 시간 시프트된 제 2 오디오 신호를 생성할 수도 있고 시간 시프트된 제 2 오디오 신호의 샘플들을 선택할 수도 있다. 시간 등화기 (108) 는 비인과적 시프트 값 (162) 에 기초하여 제 1 오디오 신호 (130) 또는 제 2 오디오 신호 (132) 중 단일 오디오 신호 (예컨대, 단일 채널) 를 조정 (예컨대, 시프트) 할 수도 있다. 대안적으로, 시간 등화기 (108) 는 비인과적 시프트 값 (162) 과는 독립적으로 제 2 오디오 신호 (132) 의 샘플들을 선택할 수도 있다. 시간 등화기 (108) 는, 제 1 오디오 신호 (130) 가 기준 신호라는 결정에 응답하여, 선택된 샘플들의 이득 파라미터 (160) 를 제 1 오디오 신호 (130) 의 제 1 프레임의 제 1 샘플들에 기초하여 결정할 수도 있다. 대안적으로, 시간 등화기 (108) 는, 제 2 오디오 신호 (132) 가 기준 신호라는 결정에 응답하여, 선택된 샘플들에 기초하여 제 1 샘플들의 이득 파라미터 (160) 를 결정할 수도 있다. 일 예로서, 이득 파라미터 (160) 는 다음의 수식들 중 하나의 수식에 기초할 수도 있으며:
Figure 112018047690650-pct00001
, 수식 1a
Figure 112018047690650-pct00002
, 수식 1b
Figure 112018047690650-pct00003
, 수식 1c
Figure 112018047690650-pct00004
, 수식 1d
Figure 112018047690650-pct00005
, 수식 1e
Figure 112018047690650-pct00006
, 수식 1f
여기서
Figure 112018047690650-pct00007
는 다운믹스 프로세싱을 위한 상대 이득 파라미터 (160) 에 해당하며,
Figure 112018047690650-pct00008
은 "기준" 신호의 샘플들에 해당하며,
Figure 112018047690650-pct00009
은 제 1 프레임의 비인과적 시프트 값 (162) 에 해당하고,
Figure 112018047690650-pct00010
은 "타겟" 신호의 샘플들에 해당한다. 이득 파라미터 (160) (gD) 는 프레임들 사이의 이득에서의 큰 점프들을 피하기 위한 장기 평활화/히스테리시스 로직을 포함하도록, 예컨대, 수식 1a 내지 1f 중 하나에 기초하여 수정될 수도 있다. 타겟 신호가 제 1 오디오 신호 (130) 를 포함할 때, 제 1 샘플들은 타겟 신호의 샘플들을 포함할 수도 있고 선택된 샘플들은 기준 신호의 샘플들을 포함할 수도 있다. 타겟 신호가 제 2 오디오 신호 (132) 를 포함할 때, 제 1 샘플들은 기준 신호의 샘플들을 포함할 수도 있고, 선택된 샘플들은 타겟 신호의 샘플들을 포함할 수도 있다.
일부 구현예들에서, 시간 등화기 (108) 는 기준 신호 표시자 (164) 에 무관하게, 제 1 오디오 신호 (130) 를 기준 신호로서 취급하는 것 및 제 2 오디오 신호 (132) 를 타겟 신호로서 취급하는 것에 기초하여 이득 파라미터 (160) 를 생성할 수도 있다. 예를 들어, 시간 등화기 (108) 는 Ref(n) 이 제 1 오디오 신호 (130) 의 샘플들 (예컨대, 제 1 샘플들) 에 대응하고 Targ(n+N1) 이 제 2 오디오 신호 (132) 의 샘플들 (예컨대, 선택된 샘플들) 에 대응하는 수식 1a~1f 중 하나에 기초하여 이득 파라미터 (160) 를 생성할 수도 있다. 대체 구현예들에서, 시간 등화기 (108) 는 기준 신호 표시자 (164) 에 무관하게, 제 2 오디오 신호 (132) 를 기준 신호로서 취급하는 것 및 제 1 오디오 신호 (130) 를 타겟 신호로서 취급하는 것에 기초하여 이득 파라미터 (160) 를 생성할 수도 있다. 예를 들어, 시간 등화기 (108) 는 Ref(n) 이 제 2 오디오 신호 (132) 의 샘플들 (예컨대, 선택된 샘플들) 에 대응하고 Targ(n+N1) 이 제 1 오디오 신호 (130) 의 샘플들 (예컨대, 제 1 샘플들) 에 대응하는 수식 1a~1f 중 하나에 기초하여 이득 파라미터 (160) 를 생성할 수도 있다.
시간 등화기 (108) 는 다운믹스 프로세싱을 위한 제 1 샘플들, 선택된 샘플들, 및 상대 이득 파라미터 (160) 에 기초하여 하나 이상의 인코딩된 신호들 (102) (예컨대, 중간 채널 신호, 사이드 채널 신호, 또는 둘 다) 를 생성할 수도 있다. 예를 들어, 시간 등화기 (108) 는 다음의 수식들 중 하나의 수식에 기초하여 중간 신호를 생성할 수도 있으며:
Figure 112018047690650-pct00011
수식 2a
Figure 112018047690650-pct00012
수식 2b
여기서 M은 중간 채널 신호에 해당하며,
Figure 112018047690650-pct00013
는 다운믹스 프로세싱을 위한 상대 이득 파라미터 (160) 에 해당하며,
Figure 112018047690650-pct00014
은 "기준" 신호의 샘플들에 해당하며,
Figure 112018047690650-pct00015
은 제 1 프레임의 비인과적 시프트 값 (162) 에 해당하고,
Figure 112018047690650-pct00016
은 "타겟" 신호의 샘플들에 해당한다.
시간 등화기 (108) 는 다음의 수식들 중 하나의 수식에 기초하여 사이드 채널 신호를 생성할 수도 있으며:
Figure 112018047690650-pct00017
수식 3a
Figure 112018047690650-pct00018
수식 3b
여기서 S는 사이드 채널 신호에 해당하며,
Figure 112018047690650-pct00019
는 다운믹스 프로세싱을 위한 상대 이득 파라미터 (160) 에 해당하며,
Figure 112018047690650-pct00020
은 "기준" 신호의 샘플들에 해당하며,
Figure 112018047690650-pct00021
은 제 1 프레임의 비인과적 시프트 값 (162) 에 해당하고,
Figure 112018047690650-pct00022
은 "타겟" 신호의 샘플들에 해당한다.
송신기 (110) 는 인코딩된 신호들 (102) (예컨대, 중간 채널 신호, 사이드 채널 신호, 또는 둘 다), 기준 신호 표시자 (164), 비인과적 시프트 값 (162), 이득 파라미터 (160), 또는 그 조합을, 네트워크 (120) 를 통해, 제 2 디바이스 (106) 에 송신할 수도 있다. 일부 구현예들에서, 송신기 (110) 는 인코딩된 신호들 (102) (예컨대, 중간 채널 신호, 사이드 채널 신호, 또는 둘 다), 기준 신호 표시자 (164), 비인과적 시프트 값 (162), 이득 파라미터 (160), 또는 그 조합을, 네트워크 (120) 의 디바이스 또는 로컬 디바이스에 추가의 프로세싱 또는 나중의 디코딩을 위해 저장할 수도 있다.
디코더 (118) 는 인코딩된 신호들 (102) 을 디코딩할 수도 있다. 시간 밸런서 (124) 는 제 1 출력 신호 (126) (예컨대, 제 1 오디오 신호 (130) 에 해당함), 제 2 출력 신호 (128) (예컨대, 제 2 오디오 신호 (132) 에 해당함), 또는 둘 다를 생성하기 위해 업믹싱을 수행할 수도 있다. 제 2 디바이스 (106) 는 제 1 출력 신호 (126) 를 제 1 라우드스피커 (142) 를 통해 출력할 수도 있다. 제 2 디바이스 (106) 는 제 2 출력 신호 (128) 를 제 2 라우드스피커 (144) 를 통해 출력할 수도 있다.
시스템 (100) 은 따라서 시간 등화기 (108) 가 중간 신호보다 더 적은 비트들을 사용하여 사이드 채널 신호를 인코딩하는 것을 가능하게 할 수도 있다. 제 1 오디오 신호 (130) 의 제 1 프레임의 제 1 샘플들과 제 2 오디오 신호 (132) 의 선택된 샘플들은 사운드 소스 (152) 에 의해 방출된 동일한 사운드에 대응할 수도 있고 그런고로 제 1 샘플들과 선택된 샘플들 사이의 차이가 제 1 샘플들과 제 2 오디오 신호 (132) 의 다른 샘플들 사이에서보다 더 낮을 수도 있다. 사이드 채널 신호는 제 1 샘플들과 선택된 샘플들 사이의 차이에 해당할 수도 있다.
도 2를 참조하면, 시스템의 특정 구체적인 양태가 개시되고 전체가 200으로 지정된다. 시스템 (200) 은 제 2 디바이스 (106) 에, 네트워크 (120) 를 통해, 커플링되는 제 1 디바이스 (204) 를 포함한다. 제 1 디바이스 (204) 는 도 1의 제 1 디바이스 (104) 에 해당할 수도 있다. 시스템 (200) 은 제 1 디바이스 (204) 가 두 개를 초과하는 마이크로폰들에 커플링된다는 점에서 도 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) 는 두 개를 초과하는 오디오 신호들을 수신할 수도 있다. 예를 들어, 제 1 디바이스 (204) 는 제 1 오디오 신호 (130) 를 제 1 마이크로폰 (146) 을 통해, 제 N 오디오 신호 (232) 를 제 N 마이크로폰 (248) 을 통해, 그리고 하나 이상의 추가적인 오디오 신호들 (예컨대, 제 2 오디오 신호 (132)) 을 추가적인 마이크로폰들 (예컨대, 제 2 마이크로폰 (148)) 을 통해 수신할 수도 있다.
시간 등화기(들) (208) 는, 도 14 및 도 15를 참조하여 추가로 설명되는 바와 같이, 하나 이상의 기준 신호 표시자들 (264), 최종 시프트 값들 (216), 비인과적 시프트 값들 (262), 이득 파라미터들 (260), 인코딩된 신호들 (202), 또는 그 조합을 생성할 수도 있다. 예를 들어, 시간 등화기(들) (208) 는 제 1 오디오 신호 (130) 가 기준 신호라는 것과 제 N 오디오 신호 (232) 및 추가적인 오디오 신호들의 각각이 타겟 신호라는 것을 결정할 수도 있다. 시간 등화기(들) (208) 는, 도 14를 참조하여 설명되는 바와 같이, 기준 신호 표시자 (164), 최종 시프트 값들 (216), 비인과적 시프트 값들 (262), 이득 파라미터들 (260), 그리고 제 1 오디오 신호 (130) 와 제 N 오디오 신호 (232) 및 추가적인 오디오 신호들의 각각에 대응하는 인코딩된 신호들 (202) 을 생성할 수도 있다.
기준 신호 표시자들 (264) 은 기준 신호 표시자 (164) 를 포함할 수도 있다. 최종 시프트 값들 (216) 은, 도 14를 참조하여 추가로 설명되는 바와 같이, 제 1 오디오 신호 (130) 에 비하여 제 2 오디오 신호 (132) 의 시프트를 나타내는 최종 시프트 값 (116), 제 1 오디오 신호 (130) 에 비하여 제 N 오디오 신호 (232) 의 시프트를 나타내는 제 2 최종 시프트 값, 또는 둘 다를 포함할 수도 있다. 비인과적 시프트 값들 (262) 은, 도 14를 참조하여 추가로 설명되는 바와 같이, 최종 시프트 값 (116) 의 절대 값에 해당하는 비인과적 시프트 값 (162), 제 2 최종 시프트 값의 절대 값에 해당하는 제 2 비인과적 시프트 값, 또는 둘 다를 포함할 수도 있다. 이득 파라미터들 (260) 은, 도 14를 참조하여 추가로 설명되는 바와 같이, 제 2 오디오 신호 (132) 의 선택된 샘플들의 이득 파라미터 (160), 제 N 오디오 신호 (232) 의 선택된 샘플들의 제 2 이득 파라미터, 또는 둘 다를 포함할 수도 있다. 인코딩된 신호들 (202) 은 인코딩된 신호들 (102) 중 적어도 하나의 인코딩된 신호를 포함할 수도 있다. 예를 들어, 인코딩된 신호들 (202) 은, 도 14를 참조하여 추가로 설명되는 바와 같이, 제 1 오디오 신호 (130) 의 제 1 샘플들 및 제 2 오디오 신호 (132) 의 선택된 샘플들에 대응하는 사이드 채널 신호, 제 1 샘플들 및 제 N 오디오 신호 (232) 의 선택된 샘플들에 대응하는 제 2 사이드 채널, 또는 둘 다를 포함할 수도 있다. 인코딩된 신호들 (202) 은, 도 14를 참조하여 추가로 설명되는 바와 같이, 제 1 샘플들에 대응하는 중간 채널 신호, 제 2 오디오 신호 (132) 의 선택된 샘플들, 및 제 N 오디오 신호 (232) 의 선택된 샘플들을 포함할 수도 있다.
일부 구현예들에서, 시간 등화기(들) (208) 는, 도 15를 참조하여 설명되는 바와 같이, 다수의 기준 신호들 및 대응하는 타겟 신호들을 결정할 수도 있다. 예를 들어, 기준 신호 표시자들 (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 출력 신호 (226) 를 제 1 라우드스피커 (142) 를 통해, 제 Y 출력 신호 (228) 를 제 Y 라우드스피커 (244) 를 통해, 하나 이상의 추가적인 출력 신호들 (예컨대, 제 2 출력 신호 (128)) 을 하나 이상의 추가적인 라우드스피커들 (예컨대, 제 2 라우드스피커 (144)) 을 통해, 또는 그 조합으로 출력할 수도 있다.
시스템 (200) 은 따라서 시간 등화기(들) (208) 가 두 개를 초과하는 오디오 신호들을 인코딩하는 것을 가능하게 할 수도 있다. 예를 들어, 인코딩된 신호들 (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) 은 도 1의 입력 인터페이스(들) (112) 에서 샘플 (352) 과 거의 동일한 시간에 수신될 수도 있다. 샘플 (324) 은 도 1의 입력 인터페이스(들) (112) 에서 샘플 (354) 과 거의 동일한 시간에 수신될 수도 있다. 샘플 (326) 은 도 1의 입력 인터페이스(들) (112) 에서 샘플 (356) 과 거의 동일한 시간에 수신될 수도 있다. 샘플 (328) 은 도 1의 입력 인터페이스(들) (112) 에서 샘플 (358) 과 거의 동일한 시간에 수신될 수도 있다. 샘플 (330) 은 도 1의 입력 인터페이스(들) (112) 에서 샘플 (360) 과 거의 동일한 시간에 수신될 수도 있다. 샘플 (332) 은 도 1의 입력 인터페이스(들) (112) 에서 샘플 (362) 과 거의 동일한 시간에 수신될 수도 있다. 샘플 (334) 은 도 1의 입력 인터페이스(들) (112) 에서 샘플 (364) 과 거의 동일한 시간에 수신될 수도 있다. 샘플 (336) 은 도 1의 입력 인터페이스(들) (112) 에서 샘플 (366) 과 거의 동일한 시간에 수신될 수도 있다.
최종 시프트 값 (116) 의 제 1 값 (예컨대, 양의 값) 은 제 1 오디오 신호 (130) 에 비한 제 2 오디오 신호 (132) 의 시간 지연을 나타내는 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 시간적 불일치의 양을 나타낼 수도 있다. 예를 들어, 최종 시프트 값 (116) 의 제 1 값 (예컨대, +X ms 또는 +Y 개 샘플들, 여기서 X 및 Y는 양의 실수들을 포함함) 이, 프레임 (304) (예컨대, 샘플들 (326~332)) 이 샘플들 (358~364) 에 대응함을 나타낼 수도 있다. 제 2 오디오 신호 (132) 의 샘플들 (358~364) 은 샘플들 (326~332) 에 비하여 시간적으로 지연될 수도 있다. 샘플들 (326~332) 및 샘플들 (358~364) 은 사운드 소스 (152) 로부터 방출된 동일한 사운드에 대응할 수도 있다. 샘플들 (358~364) 은 제 2 오디오 신호 (132) 의 프레임 (344) 에 해당할 수도 있다. 도 1 내지 도 15 중 하나 이상에서 교차 해칭을 갖는 샘플들의 예시는 그 샘플들이 동일한 사운드에 해당함을 나타낼 수도 있다. 예를 들어, 샘플들 (326~332) 과 샘플들 (358~364) 은 샘플들 (326~332) (예컨대, 프레임 (304)) 과 샘플들 (358~364) (예컨대, 프레임 (344)) 이 사운드 소스 (152) 로부터 방출된 동일한 사운드에 해당함을 나타내기 위해 도 3에서 교차 해칭으로 예시된다.
도 3에 도시된 바와 같은 Y 개 샘플들의 시간적 오프셋은 예시적이라는 것이 이해되어야 한다. 예를 들어, 시간적 오프셋은 0 이상인 샘플들의 수 (Y) 에 해당할 수도 있다. 시간적 오프셋 Y = 0 개 샘플인 제 1 경우에서, 샘플들 (326~332) (예컨대, 프레임 (304) 에 해당함) 과 샘플들 (356~362) (예컨대, 프레임 (344) 에 해당함) 은 임의의 프레임 오프셋 없이 높은 유사도를 나타낼 수도 있다. 시간적 오프셋 Y = 2 개 샘플들인 제 2 경우에, 프레임 (304) 과 프레임 (344) 은 2 개 샘플들만큼 오프셋될 수도 있다. 이 경우, 제 1 오디오 신호 (130) 는, Fs가 kHz 단위의 샘플 레이트에 해당하는 Y = 2 개 샘플들 또는 X = (2/Fs) ms만큼 입력 인터페이스(들) (112) 에서 제 2 오디오 신호 (132) 에 앞서 수신될 수도 있다. 일부 경우들에서, 시간적 오프셋 (Y) 는, 비-정수 값, 예컨대, 32 kHz에서 X = 0.05 ms에 해당하는 Y = 1.6 개 샘플들을 포함할 수도 있다.
도 1의 시간 등화기 (108) 는, 최종 시프트 값 (116) 에 기초하여, 제 1 오디오 신호 (130) 가 기준 신호에 해당하고 제 2 오디오 신호 (132) 가 타겟 신호에 해당한다고 결정할 수도 있다. 기준 신호 (예컨대, 제 1 오디오 신호 (130)) 는 선행 신호에 해당할 수도 있고 타겟 신호 (예컨대, 제 2 오디오 신호 (132)) 는 후행 신호에 해당할 수도 있다. 예를 들어, 제 1 오디오 신호 (130) 는 최종 시프트 값 (116) 에 기초하여 제 1 오디오 신호 (130) 에 비하여 제 2 오디오 신호 (132) 를 시프트함으로써 기준 신호로서 취급될 수도 있다.
시간 등화기 (108) 는 (샘플들 (356~362) 과 비교하여) 샘플들 (326~332) 이 샘플들 (358~264) 과 함께 인코딩될 것임을 나타내기 위해 제 2 오디오 신호 (132) 를 시프트시킬 수도 있다. 예를 들어, 시간 등화기 (108) 는 샘플들 (358~364) 의 로케이션들을 샘플들 (356~362) 의 로케이션들로 시프트시킬 수도 있다. 시간 등화기 (108) 는 샘플들 (358~364) 의 로케이션들을 가리키기 위해 하나 이상의 포인터들을 샘플들 (356~362) 의 로케이션들을 가리키는 것으로부터 업데이트할 수도 있다. 시간 등화기 (108) 는, 샘플들 (356~362) 에 해당하는 데이터를 복사하는 것과 비교하여, 샘플들 (358~364) 에 해당하는 데이터를 버퍼에 복사할 수도 있다. 시간 등화기 (108) 는, 도 1을 참조하여 설명되는 바와 같이, 샘플들 (326~332) 과 샘플들 (358~364) 을 인코딩함으로써 인코딩된 신호들 (102) 을 생성할 수도 있다.
도 4를 참조하면, 샘플들의 구체적인 예들이 도시되고 전체가 400으로 지정된다. 예들 (400) 은 제 1 오디오 신호 (130) 가 제 2 오디오 신호 (132) 에 비하여 지연된다는 점에서 예들 (300) 과는 상이하다.
최종 시프트 값 (116) 의 제 2 값 (예컨대, 음의 값) 이 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 시간적 불일치의 양이 제 2 오디오 신호 (132) 에 비한 제 1 오디오 신호 (130) 의 시간 지연을 나타내는 것임을 나타낼 수도 있다. 예를 들어, 최종 시프트 값 (116) 의 제 2 값 (예컨대, -X ms 또는 -Y 개 샘플들, 여기서 X 및 Y는 양의 실수들을 포함함) 이, 프레임 (304) (예컨대, 샘플들 (326~332)) 이 샘플들 (354~364) 에 대응함을 나타낼 수도 있다. 샘플들 (354~360) 은 제 2 오디오 신호 (132) 의 프레임 (344) 에 해당할 수도 있다. 샘플들 (326~332) 은 샘플들 (354~360) 에 비하여 시간적으로 지연된다. 샘플들 (354~360) (예컨대, 프레임 (344)) 과 샘플들 (326~332) (예컨대, 프레임 (304)) 은 사운드 소스 (152) 로부터 방출된 동일한 사운드에 해당할 수도 있다.
도 4에 도시된 바와 같은 -Y 개 샘플들의 시간적 오프셋은 예시적이라는 것이 이해되어야 한다. 예를 들어, 시간적 오프셋은 0 이하인 샘플들의 수 (-Y) 에 해당할 수도 있다. 시간적 오프셋 Y = 0 개 샘플인 제 1 경우에서, 샘플들 (326~332) (예컨대, 프레임 (304) 에 해당함) 과 샘플들 (356~362) (예컨대, 프레임 (344) 에 해당함) 은 임의의 프레임 오프셋 없이 높은 유사도를 나타낼 수도 있다. 시간적 오프셋 Y = -6 개 샘플들인 제 2 경우에, 프레임 (304) 과 프레임 (344) 은 6 개 샘플들만큼 오프셋될 수도 있다. 이 경우, 제 1 오디오 신호 (130) 는, Fs가 kHz 단위의 샘플 레이트에 해당하는 Y = -6 개 샘플들 또는 X = (-6/Fs) ms만큼 입력 인터페이스(들) (112) 에서 제 2 오디오 신호 (132) 에 후속하여 수신될 수도 있다. 일부 경우들에서, 시간적 오프셋 (Y) 는, 비-정수 값, 예컨대, 32 kHz에서 X = -0.1 ms에 해당하는 Y = -3.2 개 샘플들을 포함할 수도 있다.
도 1의 시간 등화기 (108) 는 제 2 오디오 신호 (132) 가 기준 신호에 해당하고 제 1 오디오 신호 (130) 가 타겟 신호에 해당한다고 결정할 수도 있다. 특히, 시간 등화기 (108) 는, 도 5를 참조하여 설명되는 바와 같이, 최종 시프트 값 (116) 으로부터 비인과적 시프트 값 (162) 을 추정할 수도 있다. 시간 등화기 (108) 는 최종 시프트 값 (116) 의 부호에 기초하여 제 1 오디오 신호 (130) 또는 제 2 오디오 신호 (132) 중 하나를 기준 신호로서 그리고 제 1 오디오 신호 (130) 또는 제 2 오디오 신호 (132) 중 다른 하나를 타겟 신호로서 식별 (예컨대, 지정) 할 수도 있다.
기준 신호 (예컨대, 제 2 오디오 신호 (132)) 는 선행 신호에 해당할 수도 있고 타겟 신호 (예컨대, 제 1 오디오 신호 (130)) 는 후행 신호에 해당할 수도 있다. 예를 들어, 제 2 오디오 신호 (132) 는 최종 시프트 값 (116) 에 기초하여 제 2 오디오 신호 (132) 에 비하여 제 1 오디오 신호 (130) 를 시프트함으로써 기준 신호로서 취급될 수도 있다.
시간 등화기 (108) 는 (샘플들 (324~330) 과 비교하여) 샘플들 (354~360) 이 샘플들 (326~332) 과 함께 인코딩될 것임을 나타내기 위해 제 1 오디오 신호 (130) 를 시프트시킬 수도 있다. 예를 들어, 시간 등화기 (108) 는 샘플들 (326~332) 의 로케이션들을 샘플들 (324~330) 의 로케이션들로 시프트시킬 수도 있다. 시간 등화기 (108) 는 샘플들 (326~332) 의 로케이션들을 나타내기 위해 하나 이상의 포인터들을 샘플들 (324~330) 의 로케이션들을 가리키는 것으로부터 업데이트할 수도 있다. 시간 등화기 (108) 는, 샘플들 (324~330) 에 해당하는 데이터를 복사하는 것과 비교하여, 샘플들 (326~332) 에 해당하는 데이터를 버퍼에 복사할 수도 있다. 시간 등화기 (108) 는, 도 1을 참조하여 설명되는 바와 같이, 샘플들 (354~360) 과 샘플들 (326~332) 을 인코딩함으로써 인코딩된 신호들 (102) 을 생성할 수도 있다.
도 5를 참조하면, 시스템의 구체적인 예가 도시되고 전체가 500으로 지정된다. 시스템 (500) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (500) 의 하나 이상의 컴포넌트들을 포함할 수도 있다. 시간 등화기 (108) 는 리샘플러 (504), 신호 비교기 (506), 보간기 (510), 시프트 리파이너 (511), 시프트 변경 분석기 (512), 절대 시프트 생성기 (513), 기준 신호 지정기 (508), 이득 파라미터 생성기 (514), 신호 생성기 (516), 또는 그 조합을 포함할 수도 있다.
동작 동안, 리샘플러 (504) 는, 도 6을 참조하여 추가로 설명되는 바와 같이, 하나 이상의 재샘플링된 신호들을 생성할 수도 있다. 예를 들어, 리샘플러 (504) 는 재샘플링 (예컨대, 다운샘플링 또는 업샘플링) 계수 (D) (예컨대, ≥ 1) 에 기초하여 제 1 오디오 신호 (130) 를 재샘플링 (예컨대, 다운샘플링 또는 업샘플링) 함으로써 제 1 재샘플링된 신호 (530) (다운샘플링된 신호 또는 업샘플링된 신호) 를 생성할 수도 있다. 리샘플러 (504) 는 재샘플링 계수 (D) 에 기초하여 제 2 오디오 신호 (132) 를 재샘플링함으로써 제 2 재샘플링된 신호 (532) 를 생성할 수도 있다. 리샘플러 (504) 는 제 1 재샘플링된 신호 (530), 제 2 재샘플링된 신호 (532), 또는 둘 다를 신호 비교기 (506) 에 제공할 수도 있다.
신호 비교기 (506) 는, 도 7을 참조하여 추가로 설명되는 바와 같이, 비교 값들 (534) (예컨대, 차이 값들, 유사도 값들, 코히어런스 값들, 또는 교차 상관 값들), 잠정적 시프트 값 (536) (예컨대, 잠정적 불일치 값), 또는 둘 다를 생성할 수도 있다. 예를 들어, 신호 비교기 (506) 는, 도 7을 참조하여 추가로 설명되는 바와 같이, 제 1 재샘플링된 신호 (530) 와 제 2 재샘플링된 신호 (532) 에 적용되는 복수의 시프트 값들에 기초하여 비교 값들 (534) 을 생성할 수도 있다. 신호 비교기 (506) 는, 도 7을 참조하여 추가로 설명되는 바와 같이, 비교 값들 (534) 에 기초하여 잠정적 시프트 값 (536) 을 결정할 수도 있다. 제 1 재샘플링된 신호 (530) 는 제 1 오디오 신호 (130) 보다 더 적은 샘플들 또는 더 많은 샘플들을 포함할 수도 있다. 제 2 재샘플링된 신호 (532) 는 제 2 오디오 신호 (132) 보다 더 적은 샘플들 또는 더 많은 샘플들을 포함할 수도 있다. 대체 양태에서, 제 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) 는, 도 8을 참조하여 추가로 설명되는 바와 같이, 보간된 시프트 값 (538) (예컨대, 보간된 불일치 값) 을 생성할 수도 있다. 예를 들어, 보간기 (510) 는 비교 값들 (534) 을 보간함으로써 잠정적 시프트 값 (536) 에 근접한 시프트 값들에 대응하는 보간된 비교 값들을 생성할 수도 있다. 보간기 (510) 는 보간된 비교 값들 및 비교 값들 (534) 에 기초하여 보간된 시프트 값 (538) 을 결정할 수도 있다. 비교 값들 (534) 은 시프트 값들의 더 조악한 세분도에 기초할 수도 있다. 예를 들어, 비교 값들 (534) 은 제 1 서브세트의 제 1 시프트 값과 제 1 서브세트의 각각의 제 2 시프트 값 사이의 차이가 임계값 (예컨대, ≥1) 이상이도록 시프트 값들의 세트의 제 1 서브세트에 기초할 수도 있다. 임계값은 재샘플링 계수 (D) 에 기초할 수도 있다.
보간된 비교 값들은 재샘플링된 잠정적 시프트 값 (536) 에 근접한 시프트 값들의 더 미세한 세분도에 기초할 수도 있다. 예를 들어, 보간된 비교 값들은 시프트 값들의 세트의 제 2 서브세트의 최고 시프트 값과 재샘플링된 잠정적 시프트 값 (536) 사이의 차이가 임계값 (예컨대, ≥1) 미만이고, 제 2 서브세트의 최저 시프트 값과 재샘플링된 잠정적 시프트 값 (536) 사이의 차이가 임계값 미만이도록 제 2 서브세트에 기초할 수도 있다. 시프트 값들의 세트의 더 조악한 세분도 (예컨대, 제 1 서브세트) 에 기초하여 비교 값들 (534) 을 결정하는 것은 시프트 값들의 세트의 더 미세한 세분도 (예컨대, 모두) 에 기초하여 비교 값들 (534) 을 결정하는 것보다 더 적은 리소스들 (예컨대, 시간, 동작들, 또는 둘 다) 을 사용할 수도 있다. 시프트 값들의 제 2 서브세트에 대응하는 보간된 비교 값들을 결정하는 것은, 시프트 값들의 세트의 각각의 시프트 값에 대응하는 비교 값들을 결정하는 일 없이, 잠정적 시프트 값 (536) 에 근접한 시프트 값들의 더 작은 세트의 더 미세한 세분도에 기초하여 잠정적 시프트 값 (536) 을 연장할 수도 있다. 따라서, 시프트 값들의 제 1 서브세트에 기초하여 잠정적 시프트 값 (536) 을 결정하는 것과 보간된 비교 값들에 기초하여 보간된 시프트 값 (538) 을 결정하는 것은 리소스 사용과 추정된 시프트 값의 리파인먼트 사이에서 균형을 이룰 수도 있다. 보간기 (510) 는 보간된 시프트 값 (538) 을 시프트 리파이너 (511) 에 제공할 수도 있다.
시프트 리파이너 (511) 는, 도 9a 내지 도 9c를 참조하여 추가로 설명되는 바와 같이, 보간된 시프트 값 (538) 을 리파인함으로써 보정된 시프트 값 (540) 을 생성할 수도 있다. 예를 들어, 시프트 리파이너 (511) 는, 도 9a를 참조하여 추가로 설명되는 바와 같이, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 시프트에서의 변경이 시프트 변경 임계값보다 큼을 보간된 시프트 값 (538) 이 나타내는지의 여부를 결정할 수도 있다. 시프트에서의 변화는 보간된 시프트 값 (538) 과 도 3의 프레임 (302) 에 연관된 제 1 시프트 값 사이의 차이에 의해 나타내어질 수도 있다. 시프트 리파이너 (511) 는, 그 차이가 임계값 이하라는 결정에 응답하여, 보정된 시프트 값 (540) 을 보간된 시프트 값 (538) 으로 설정할 수도 있다. 대안적으로, 시프트 리파이너 (511) 는, 도 9a를 참조하여 추가로 설명되는 바와 같이, 그 차이가 임계값보다 크다는 결정에 응답하여, 시프트 변경 임계값 이하인 차이에 대응하는 복수의 시프트 값들을 결정할 수도 있다. 시프트 리파이너 (511) 는 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 에 적용되는 복수의 시프트 값들에 기초하여 비교 값들을 결정할 수도 있다. 시프트 리파이너 (511) 는, 도 9a를 참조하여 추가로 설명되는 바와 같이, 비교 값들에 기초하여 보정된 시프트 값 (540) 을 결정할 수도 있다. 예를 들어, 시프트 리파이너 (511) 는, 도 9a를 참조하여 추가로 설명되는 바와 같이, 비교 값들 및 보간된 시프트 값 (538) 에 기초하여 복수의 시프트 값들 중 시프트 값을 선택할 수도 있다. 시프트 리파이너 (511) 는 선택된 시프트 값을 나타내기 위해 보정된 시프트 값 (540) 을 설정할 수도 있다. 프레임 (302) 에 대응하는 제 1 시프트 값과 보간된 시프트 값 (538) 사이의 영이 아닌 차이가 제 2 오디오 신호 (132) 의 일부 샘플들이 양 프레임들 (예컨대, 프레임 (302) 및 프레임 (304)) 에 대응함을 나타낼 수도 있다. 예를 들어, 제 2 오디오 신호 (132) 의 일부 샘플들은 인코딩 동안 복제될 수도 있다. 대안적으로, 영이 아닌 차이는 제 2 오디오 신호 (132) 의 일부 샘플들이 프레임 (302) 또는 프레임 (304) 모두에 대응하지 않음을 나타낼 수도 있다. 예를 들어, 제 2 오디오 신호 (132) 의 일부 샘플들은 인코딩 동안 손실될 수도 있다. 보정된 시프트 값 (540) 을 복수의 시프트 값들 중 하나의 시프트 값으로 설정하는 것은 연속적인 (또는 인접한) 프레임들 사이의 시프트들에서의 큰 변화를 방지함으로써, 인코딩 동안 샘플 손실 또는 샘플 중복의 양을 감소시킬 수도 있다. 시프트 리파이너 (511) 는 보정된 시프트 값 (540) 을 시프트 변경 분석기 (512) 에 제공할 수도 있다.
일부 구현예들에서, 시프트 리파이너 (511) 는, 도 9b를 참조하여 설명되는 바와 같이, 보간된 시프트 값 (538) 을 조정할 수도 있다. 시프트 리파이너 (511) 는 조정된 보간된 시프트 값 (538) 에 기초하여 보정된 시프트 값 (540) 을 결정할 수도 있다. 일부 구현예들에서, 시프트 리파이너 (511) 는 도 9c를 참조하여 설명되는 바와 같이 보정된 시프트 값 (540) 을 결정할 수도 있다.
시프트 변경 분석기 (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) 는, 도 10a를 참조하여 추가로 설명되는 바와 같이, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연이 보정된 시프트 값 (540) 과 프레임 (302) 에 연관된 제 1 시프트 값에 기초하여 부호를 스위칭하였는지의 여부를 결정할 수도 있다. 시프트 변경 분석기 (512) 는, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연이 부호를 스위칭하였다는 결정에 응답하여, 최종 시프트 값 (116) 을 시간 시프트 없음을 나타내는 값 (예컨대, 0) 으로 설정할 수도 있다. 대안적으로, 시프트 변경 분석기 (512) 는, 도 10a를 참조하여 추가로 설명되는 바와 같이, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연이 부호를 스위칭하지 않았다는 결정에 응답하여 최종 시프트 값 (116) 을 보정된 시프트 값 (540) 으로 설정할 수도 있다. 시프트 변경 분석기 (512) 는, 도 10a, 도 11을 참조하여 추가로 설명되는 바와 같이, 보정된 시프트 값 (540) 을 리파인함으로써 추정된 시프트 값을 생성할 수도 있다. 시프트 변경 분석기 (512) 는 최종 시프트 값 (116) 을 추정된 시프트 값으로 설정할 수도 있다. 시간 시프트 없음을 나타내도록 최종 시프트 값 (116) 을 설정하는 것은 제 1 오디오 신호 (130) 의 연속적인 (또는 인접한) 프레임들에 대해 반대 방향들로 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 를 시간 시프팅하는 것을 하지 않음으로써 디코더에서 왜곡을 감소시킬 수도 있다. 시프트 변경 분석기 (512) 는 최종 시프트 값 (116) 을 기준 신호 지정기 (508) 에, 절대 시프트 생성기 (513) 에, 또는 둘 다에 제공할 수도 있다. 일부 구현예들에서, 시프트 변경 분석기 (512) 는 도 10b를 참조하여 설명되는 바와 같이 최종 시프트 값 (116) 을 결정할 수도 있다.
절대 시프트 생성기 (513) 는 절대 함수를 최종 시프트 값 (116) 에 적용함으로써 비인과적 시프트 값 (162) 을 생성할 수도 있다. 절대 시프트 생성기 (513) 는 비인과적 시프트 값 (162) 을 이득 파라미터 생성기 (514) 에 제공할 수도 있다.
기준 신호 지정기 (508) 는, 도 12 및 도 13을 참조하여 추가로 설명되는 바와 같이, 기준 신호 표시자 (164) 를 생성할 수도 있다. 예를 들어, 기준 신호 표시자 (164) 는 제 1 오디오 신호 (130) 가 기준 신호임을 나타내는 제 1 값 또는 제 2 오디오 신호 (132) 가 기준 신호임을 나타내는 제 2 값을 가질 수도 있다. 기준 신호 지정기 (508) 는 기준 신호 표시자 (164) 를 이득 파라미터 생성기 (514) 에 제공할 수도 있다.
이득 파라미터 생성기 (514) 는 비인과적 시프트 값 (162) 에 기초하여 타겟 신호 (예컨대, 제 2 오디오 신호 (132)) 의 샘플들을 선택할 수도 있다. 예를 들어, 이득 파라미터 생성기 (514) 는 비인과적 시프트 값 (162) 에 기초하여 타겟 신호 (예컨대, 제 2 오디오 신호 (132)) 를 시프트함으로써 시간 시프트된 타겟 신호 (예컨대, 시간 시프트된 제 2 오디오 신호) 를 생성할 수도 있고 시간 시프트된 타겟 신호의 샘플들을 선택할 수도 있다. 예시하기 위해, 이득 파라미터 생성기 (514) 는 비인과적 시프트 값 (162) 이 제 1 값 (예컨대, +X ms 또는 +Y 개 샘플들, 여기서 X 및 Y는 양의 실수들을 포함함) 을 가진다는 결정에 응답하여 샘플들 (358~364) 을 선택할 수도 있다. 이득 파라미터 생성기 (514) 는 비인과적 시프트 값 (162) 이 제 2 값 (예컨대, -X ms 또는 -Y 개 샘플들) 을 가진다는 결정에 응답하여 샘플들 (354~360) 을 선택할 수도 있다. 이득 파라미터 생성기 (514) 는 비인과적 시프트 값 (162) 이 시간 시프트 없음을 나타내는 값 (예컨대, 0) 을 가진다는 결정에 응답하여 샘플들 (356~362) 을 선택할 수도 있다.
이득 파라미터 생성기 (514) 는 제 1 오디오 신호 (130) 가 기준 신호인지 또는 제 2 오디오 신호 (132) 가 기준 신호인지를 기준 신호 표시자 (164) 에 기초하여 결정할 수도 있다. 이득 파라미터 생성기 (514) 는, 도 1을 참조하여 설명되는 바와 같이, 프레임 (304) 의 샘플들 (326~332) 및 제 2 오디오 신호 (132) 의 선택된 샘플들 (예컨대, 샘플들 (354~360), 샘플들 (356~362), 또는 샘플들 (358~364)) 에 기초하여 이득 파라미터 (160) 를 생성할 수도 있다. 예를 들어, 이득 파라미터 생성기 (514) 는 gD가 이득 파라미터 (160) 에 해당하며, Ref(n) 이 기준 신호의 샘플들에 대응하고, Targ(n+N1) 이 타겟 신호의 샘플들에 대응하는 수식 1a 내지 수식 1f 중 하나 이상에 기초하여 이득 파라미터 (160) 를 생성할 수도 있다. 예시하기 위해, 비인과적 시프트 값 (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) 는 M이 제 1 인코딩된 신호 프레임 (564) 에 대응하며, gD가 이득 파라미터 (160) 에 해당하며, Ref(n) 이 기준 신호의 샘플들에 대응하고, Targ(n+N1) 이 타겟 신호의 샘플들에 대응하는 수식 2a 또는 수식 2b에 기초하여 제 1 인코딩된 신호 프레임 (564) 을 생성할 수도 있다. 신호 생성기 (516) 는 S가 제 2 인코딩된 신호 프레임 (566) 에 대응하며, gD가 이득 파라미터 (160) 에 해당하며, Ref(n) 이 기준 신호의 샘플들에 대응하고, Targ(n+N1) 이 타겟 신호의 샘플들에 대응하는 수식 3a 또는 수식 3b에 기초하여 제 2 인코딩된 신호 프레임 (566) 을 생성할 수도 있다.
시간 등화기 (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) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (600) 의 하나 이상의 컴포넌트들을 포함할 수도 있다.
리샘플러 (504) 는 도 1의 제 1 오디오 신호 (130) 를 재샘플링 (예컨대, 다운샘플링 또는 업샘플링) 함으로써 제 1 재샘플링된 신호 (530) 의 제 1 샘플들 (620) 을 생성할 수도 있다. 리샘플러 (504) 는 도 1의 제 2 오디오 신호 (132) 를 재샘플링 (예컨대, 다운샘플링 또는 업샘플링) 함으로써 제 2 재샘플링된 신호 (532) 의 제 2 샘플들 (650) 을 생성할 수도 있다.
제 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) 로 샘플링될 수도 있다.
일부 구현예들에서, 리샘플러 (504) 는 제 1 오디오 신호 (130) (또는 제 2 오디오 신호 (132)) 를 재샘플링하기에 앞서 제 1 오디오 신호 (130) (또는 제 2 오디오 신호 (132)) 를 프리-프로세싱할 수도 있다. 리샘플러 (504) 는 무한 임펄스 응답 (IIR) 필터 (예컨대, 제 1 차 IIR 필터) 에 기초하여 제 1 오디오 신호 (130) (또는 제 2 오디오 신호 (132)) 를 필터링함으로써 제 1 오디오 신호 (130) (또는 제 2 오디오 신호 (132)) 를 프리-프로세싱할 수도 있다. IIR 필터는 다음의 수식에 기초할 수도 있으며:
Figure 112018047690650-pct00023
수식 4
여기서
Figure 112018047690650-pct00024
는 0.68 또는 0.72와 같은 양수이다. 재샘플링하기에 앞서 디-앰퍼시스를 수행하는 것은 에일리어싱 (aliasing), 신호 컨디셔닝, 또는 둘 다와 같은 효과들을 감소시킬 수도 있다. 제 1 오디오 신호 (130) (예컨대, 프리-프로세싱된 제 1 오디오 신호 (130)) 와 제 2 오디오 신호 (132) (예컨대, 프리-프로세싱된 제 2 오디오 신호 (132)) 는 재샘플링 계수 (D) 에 기초하여 재샘플링될 수도 있다. 재샘플링 계수 (D) 는 제 1 샘플 레이트 (Fs) (예컨대, D = Fs/8, D = 2Fs 등) 에 기초할 수도 있다.
대안적 구현예들에서, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 는 재샘플링에 앞서 안티-에일리어싱 필터를 사용하여 저역 통과 필터링 또는 데시메이션 (decimation) 될 수도 있다. 데시메이션 필터는 재샘플링 계수 (D) 에 기초할 수도 있다. 특정 예에서, 리샘플러 (504) 는 제 1 샘플 레이트 (Fs) 가 특정 레이트 (예컨대, 32 kHz) 에 해당한다는 결정에 응답하여 제 1 차단 주파수 (예컨대, π/D 또는 π/4) 를 갖는 데시메이션 필터를 선택할 수도 있다. 다수의 신호들 (예컨대, 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132)) 을 디-앰퍼시스함으로써 에일리어싱을 감소시키는 것은 데시메이션 필터를 다수의 신호들에 적용하는 것보다 컴퓨테이션적으로 덜 비쌀 수도 있다.
제 1 샘플들 (620) 은 샘플 (622), 샘플 (624), 샘플 (626), 샘플 (628), 샘플 (630), 샘플 (632), 샘플 (634), 샘플 (636), 하나 이상의 추가적인 샘플들, 또는 그 조합을 포함할 수도 있다. 제 1 샘플들 (620) 은 도 3의 제 1 샘플들 (320) 의 서브세트 (예컨대, 8분의 1) 를 포함할 수도 있다. 샘플 (622), 샘플 (624), 하나 이상의 추가적인 샘플들, 또는 그 조합은, 프레임 (302) 에 해당할 수도 있다. 샘플 (626), 샘플 (628), 샘플 (630), 샘플 (632), 하나 이상의 추가적인 샘플들, 또는 그 조합은 프레임 (304) 에 해당할 수도 있다. 샘플 (634), 샘플 (636), 하나 이상의 추가적인 샘플들, 또는 그 조합은, 프레임 (306) 에 해당할 수도 있다.
제 2 샘플들 (650) 은 샘플 (652), 샘플 (654), 샘플 (656), 샘플 (658), 샘플 (660), 샘플 (662), 샘플 (664), 샘플 (666), 하나 이상의 추가적인 샘플들, 또는 그 조합을 포함할 수도 있다. 제 2 샘플들 (650) 은 도 3의 제 2 샘플들 (350) 의 서브세트 (예컨대, 8분의 1) 를 포함할 수도 있다. 샘플들 (654~660) 은 샘플들 (354~360) 에 해당할 수도 있다. 예를 들어, 샘플들 (654~660) 은 샘플들 (354~360) 의 서브세트 (예컨대, 8분의 1) 를 포함할 수도 있다. 샘플들 (656~662) 은 샘플들 (356~362) 에 해당할 수도 있다. 예를 들어, 샘플들 (656~662) 은 샘플들 (356~362) 의 서브세트 (예컨대, 8분의 1) 를 포함할 수도 있다. 샘플들 (658~664) 은 샘플들 (358~364) 에 해당할 수도 있다. 예를 들어, 샘플들 (658~664) 은 샘플들 (358~364) 의 서브세트 (예컨대, 8분의 1) 를 포함할 수도 있다. 일부 구현예들에서, 재샘플링 계수는 도 6의 샘플들 (622~636) 및 샘플들 (652~666) 이 도 3의 샘플들 (322~336) 및 샘플들 (352~366) 에 각각 유사할 수도 있는 경우 제 1 값 (예컨대, 1) 에 해당할 수도 있다.
리샘플러 (504) 는 제 1 샘플들 (620), 제 2 샘플들 (650), 또는 둘 다를 메모리 (153) 에 저장할 수도 있다. 예를 들어, 분석 데이터 (190) 는 제 1 샘플들 (620), 제 2 샘플들 (650), 또는 둘 다를 포함할 수도 있다.
도 7을 참조하면, 시스템의 구체적인 예가 도시되고 전체가 700으로 지정된다. 시스템 (700) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (700) 의 하나 이상의 컴포넌트들을 포함할 수도 있다.
메모리 (153) 는 복수의 시프트 값들 (760) 을 저장할 수도 있다. 시프트 값들 (760) 은 제 1 시프트 값 (764) (예컨대, -X ms 또는 -Y 개 샘플들, 여기서 X 및 Y는 양의 실수들을 포함함), 제 2 시프트 값 (766) (예컨대, +X ms 또는 +Y 개 샘플들, 여기서 X 및 Y는 양의 실수들을 포함함), 또는 둘 다를 포함할 수도 있다. 시프트 값들 (760) 은 더 낮은 시프트 값 (예컨대, 최소 시프트 값, T_MIN) 에서부터 더 높은 시프트 값 (예컨대, 최대 시프트 값, T_MAX) 까지의 범위일 수도 있다. 시프트 값들 (760) 은 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 예상되는 시간적 시프트 (예컨대, 최대 예상된 시간적 시프트) 를 나타낼 수도 있다.
동작 동안, 신호 비교기 (506) 는 제 1 샘플들 (620) 과 제 2 샘플들 (650) 에 적용되는 시프트 값들 (760) 에 기초하여 비교 값들 (534) 을 결정할 수도 있다. 예를 들어, 샘플들 (626~632) 은 제 1 시간 (t) 에 대응할 수도 있다. 예시하기 위해, 도 1의 입력 인터페이스(들) (112) 는 프레임 (304) 에 해당하는 샘플들 (626~632) 을 거의 제 1 시간 (t) 에 수신할 수도 있다. 제 1 시프트 값 (764) (예컨대, -X ms 또는 -Y 개 샘플들, X 및 Y는 양의 실수들을 포함함) 은 제 2 시간 (t-1) 에 대응할 수도 있다.
샘플들 (654~660) 은 제 2 시간 (t-1) 에 대응할 수도 있다. 예를 들어, 입력 인터페이스(들) (112) 는 샘플들 (654~660) 을 거의 제 2 시간 (t-1) 에 수신할 수도 있다. 신호 비교기 (506) 는 샘플들 (626~632) 및 샘플들 (654~660) 에 기초하여 제 1 시프트 값 (764) 에 대응하는 제 1 비교 값 (714) (예컨대, 차이 값 또는 교차상관 값) 을 결정할 수도 있다. 예를 들어, 제 1 비교 값 (714) 은 샘플들 (626~632) 및 샘플들 (654~660) 의 상호 상관의 절대 값에 해당할 수도 있다. 다른 예로서, 제 1 비교 값 (714) 은 샘플들 (626~632) 과 샘플들 (654~660) 사이의 차이를 나타낼 수도 있다.
제 2 시프트 값 (766) (예컨대, +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 시프트 값 (766) 에 대응하는 제 2 비교 값 (716) (예컨대, 차이 값 또는 교차상관 값) 을 결정할 수도 있다. 예를 들어, 제 2 비교 값 (716) 는 샘플들 (626~632) 및 샘플들 (658~664) 의 상호 상관의 절대 값에 해당할 수도 있다. 다른 예로서, 제 2 비교 값 (716) 은 샘플들 (626~632) 과 샘플들 (658~664) 사이의 차이를 나타낼 수도 있다. 신호 비교기 (506) 는 비교 값들 (534) 을 메모리 (153) 에 저장할 수도 있다. 예를 들어, 분석 데이터 (190) 는 비교 값들 (534) 을 포함할 수도 있다.
신호 비교기 (506) 는 비교 값들 (534) 중 다른 값들보다 더 높은 (또는 더 낮은) 값을 갖는, 비교 값들 (534) 중의 선택된 비교 값 (736) 을 식별할 수도 있다. 예를 들어, 신호 비교기 (506) 는 제 2 비교 값 (716) 이 제 1 비교 값 (714) 이상이라는 결정에 응답하여 제 2 비교 값 (716) 을 선택된 비교 값 (736) 으로서 선택할 수도 있다. 일부 구현예들에서, 비교 값들 (534) 은 교차 상관 값들에 해당할 수도 있다. 신호 비교기 (506) 는, 제 2 비교 값 (716) 이 제 1 비교 값 (714) 보다 더 크다는 결정에 응답하여, 샘플들 (626~632) 이 샘플들 (654~660) 보다는 샘플들 (658~664) 과 더 높은 상관을 가진다고 결정할 수도 있다. 신호 비교기 (506) 는 더 높은 상관을 나타내는 제 2 비교 값 (716) 을 선택된 비교 값 (736) 으로서 선택할 수도 있다. 다른 구현예들에서, 비교 값들 (534) 은 차이 값들에 해당할 수도 있다. 신호 비교기 (506) 는, 제 2 비교 값 (716) 이 제 1 비교 값 (714) 보다 더 낮다는 결정에 응답하여, 샘플들 (626~632) 이 샘플들 (654~660) 보다는 샘플들 (658~664) 과 더 큰 유사도를 (예컨대, 더 낮은 차이를) 가진다고 결정할 수도 있다. 신호 비교기 (506) 는 더 낮은 차이 를 나타내는 제 2 비교 값 (716) 을 선택된 비교 값 (736) 으로서 선택할 수도 있다.
선택된 비교 값 (736) 은 비교 값들 (534) 중 다른 값들보다 더 높은 상관 (또는 더 낮은 차이) 를 나타낼 수도 있다. 신호 비교기 (506) 는 시프트 값들 (760) 중 선택된 비교 값 (736) 에 대응하는 잠정적 시프트 값 (536) 을 식별할 수도 있다. 예를 들어, 신호 비교기 (506) 는 제 2 시프트 값 (766) 이 선택된 비교 값 (736) (예컨대, 제 2 비교 값 (716)) 에 대응한다는 결정에 응답하여, 제 2 시프트 값 (766) 을 잠정적 시프트 값 (536) 으로서 식별할 수도 있다.
신호 비교기 (506) 는 다음의 수식에 기초하여 선택된 비교 값 (736) 을 결정할 수도 있으며:
Figure 112018047690650-pct00025
수식 5
여기서 maxXCorr는 선택된 비교 값 (736) 에 해당하고 k는 시프트 값에 해당한다. w(n)*l'은 디-앰퍼시스된, 재샘플링된, 및 윈도우식 제 1 오디오 신호 (130) 에 해당하고, w(n)*r'은 디-앰퍼시스된, 재샘플링된, 및 윈도우식 제 2 오디오 신호 (132) 에 해당한다. 예를 들어, w(n)*l'은 샘플들 (626~632) 에 대응할 수도 있으며, w(n-1)*r'은 샘플들 (654~660) 에 대응할 수도 있으며, w(n)*r'은 샘플들 (656~662) 에 대응할 수도 있고, w(n+1)*r'은 샘플들 (658~664) 에 대응할 수도 있다. -K는 시프트 값들 (760) 중 더 낮은 시프트 값 (예컨대, 최소 시프트 값) 에 해당할 수도 있고, K는 시프트 값들 (760) 중 더 높은 시프트 값 (예컨대, 최대 시프트 값) 에 해당할 수도 있다. 수식 5에서, w(n)*l'은 제 1 오디오 신호 (130) 가 우측 (r) 채널 신호인지 또는 좌측 (l) 채널 신호인지와는 독립적으로 제 1 오디오 신호 (130) 에 대응한다. 수식 5에서, w(n)*r'은 제 2 오디오 신호 (132) 가 우측 (r) 채널 신호인지 또는 좌측 (l) 채널 신호인지와는 독립적으로 제 2 오디오 신호 (132) 에 대응한다.
신호 비교기 (506) 는 다음의 수식에 기초하여 잠정적 시프트 값 (536) 을 결정할 수도 있으며:
Figure 112018047690650-pct00026
수식 6
여기서 T는 잠정적 시프트 값 (536) 에 해당한다.
신호 비교기 (506) 는 도 6의 재샘플링 계수 (D) 에 기초하여 재샘플링된 샘플들로부터의 잠정적 시프트 값 (536) 을 원래의 샘플들에 매핑할 수도 있다. 예를 들어, 신호 비교기 (506) 는 재샘플링 계수 (D) 에 기초하여 잠정적 시프트 값 (536) 을 업데이트할 수도 있다. 예시하기 위해, 신호 비교기 (506) 는 잠정적 시프트 값 (536) 을 잠정적 시프트 값 (536) (예컨대, 3) 과 재샘플링 계수 (D) (예컨대, 4) 의 곱 (예컨대, 12) 으로 설정할 수도 있다.
도 8을 참조하면, 시스템의 구체적인 예가 도시되고 전체가 800으로 지정된다. 시스템 (800) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (800) 의 하나 이상의 컴포넌트들을 포함할 수도 있다. 메모리 (153) 는 시프트 값들 (860) 을 저장하도록 구성될 수도 있다. 시프트 값들 (860) 은 제 1 시프트 값 (864), 제 2 시프트 값 (866), 또는 둘 다를 포함할 수도 있다.
동작 동안, 보간기 (510) 는, 본 명세서에서 설명되는 바와 같이, 잠정적 시프트 값 (536) (예컨대, 12) 에 근접한 시프트 값들 (860) 을 생성할 수도 있다. 매핑된 시프트 값들은 재샘플링 계수 (D) 에 기초하여 재샘플링된 샘플들로부터 원래의 샘플들로 매핑된 시프트 값들 (760) 에 해당할 수도 있다. 예를 들어, 매핑된 시프트 값들 중 제 1 매핑된 시프트 값이 제 1 시프트 값 (764) 및 재샘플링 계수 (D) 의 곱에 해당할 수도 있다. 매핑된 시프트 값들 중 제 1 매핑된 시프트 값과 매핑된 시프트 값들 중 각각의 제 2 매핑된 시프트 값 사이의 차이가 임계 값 (예컨대, 재샘플링 계수 (D), 이를테면 4) 이상일 수도 있다. 시프트 값들 (860) 은 시프트 값들 (760) 보다 더 미세한 세분도를 가질 수도 있다. 예를 들어, 시프트 값들 (860) 중 더 낮은 값 (예컨대, 최소 값) 과 잠정적 시프트 값 (536) 사이의 차이가 임계 값 (예컨대, 4) 미만일 수도 있다. 임계 값은 도 6의 재샘플링 계수 (D) 에 해당할 수도 있다. 시프트 값들 (860) 은 제 1 값 (예컨대, 잠정적 시프트 값 (536) - (임계 값 - 1)) 부터 제 2 값 (예컨대, 잠정적 시프트 값 (536) + (임계 값 - 1)) 까지의 범위일 수도 있다.
보간기 (510) 는, 본 명세서에서 설명되는 바와 같이, 비교 값들 (534) 에 대해 보간을 수행함으로써 시프트 값들 (860) 에 대응하는 보간된 비교 값들 (816) 을 생성할 수도 있다. 시프트 값들 (860) 중 하나 이상의 시프트 값들에 대응하는 비교 값들은 비교 값들 (534) 의 더 낮은 세분도 때문에 비교 값들 (534) 로부터 배제될 수도 있다. 보간된 비교 값들 (816) 을 사용하는 것은, 잠정적 시프트 값 (536) 에 근접한 특정 시프트 값에 대응하는 보간된 비교 값이 도 7의 제 2 비교 값 (716) 보다 더 높은 상관 (또는 더 낮은 차이) 을 나타내는지의 여부를 결정하기 위해 시프트 값들 (860) 중 하나 이상의 시프트 값들에 대응하는 보간된 비교 값들의 검색을 가능하게 할 수도 있다.
도 8은 보간된 비교 값들 (816) 및 비교 값들 (534) (예컨대, 교차 상관 값들) 의 예들을 도시하는 그래프 (820) 를 포함한다. 보간기 (510) 는 해닝 윈도우식 싱크 (sinc) 보간, IIR 필터 기반 보간, 스플라인 보간, 다른 형태의 신호 보간, 또는 그 조합에 기초하여 보간을 수행할 수도 있다. 예를 들어, 보간기 (510) 는 다음의 수식에 기초하여 해닝 윈도우식 싱크 보간을 수행할 수도 있으며:
Figure 112018047690650-pct00027
, 수식 7
여기서 t = k-
Figure 112018047690650-pct00028
, b는 윈도우식 싱크 함수 (sinc function) 에 해당하며,
Figure 112018047690650-pct00029
는 잠정적 시프트 값 (536) 에 해당한다. R(
Figure 112018047690650-pct00030
-i)8kHz 는 비교 값들 (534) 중 특정 비교 값에 해당할 수도 있다. 예를 들어, R(
Figure 112018047690650-pct00031
-i)8kHz 는 i가 4에 해당할 때 비교 값들 (534) 중 제 1 시프트 값 (예컨대, 8) 에 대응하는 제 1 비교 값을 나타낼 수도 있다. R(
Figure 112018047690650-pct00032
-i)8kHz 는 i가 0에 해당할 때 잠정적 시프트 값 (536) (예컨대, 12) 에 대응하는 제 2 비교 값 (716) 을 나타낼 수도 있다. R(
Figure 112018047690650-pct00033
-i)8kHz 는 i가 -4에 해당할 때 비교 값들 (534) 중 제 3 시프트 값 (예컨대, 16) 에 대응하는 제 3 비교 값을 나타낼 수도 있다.
R(k)32kHz 는 보간된 비교 값들 (816) 중 특정 보간된 값에 해당할 수도 있다. 보간된 비교 값들 (816) 중 각각의 보간된 값은 윈도우식 싱크 함수 (b) 와 제 1 비교 값, 제 2 비교 값 (716), 및 제 3 비교 값의 각각과의 곱의 합에 해당할 수도 있다. 예를 들어, 보간기 (510) 는 윈도우식 싱크 함수 (b) 와 제 1 비교 값의 제 1 곱, 윈도우식 싱크 함수 (b) 와 제 2 비교 값 (716) 의 제 2 곱, 및 윈도우식 싱크 함수 (b) 와 제 3 비교 값의 제 3 곱을 결정할 수도 있다. 보간기 (510) 는 제 1 곱, 제 2 곱, 및 제 3 곱의 합에 기초하여 특정 보간된 값을 결정할 수도 있다. 보간된 비교 값들 (816) 중 제 1 보간된 값은 제 1 시프트 값 (예컨대, 9) 에 대응할 수도 있다. 윈도우식 싱크 함수 (b) 는 제 1 시프트 값에 대응하는 제 1 값을 가질 수도 있다. 보간된 비교 값들 (816) 중 제 2 보간된 값이 제 2 시프트 값 (예컨대, 10) 에 대응할 수도 있다. 윈도우식 싱크 함수 (b) 는 제 2 시프트 값에 대응하는 제 2 값을 가질 수도 있다. 윈도우식 싱크 함수 (b) 의 제 1 값은 제 2 값과는 별개일 수도 있다. 제 1 보간된 값은 따라서 제 2 보간된 값과는 별개일 수도 있다.
수식 7에서, 8 kHz는 비교 값들 (534) 의 제 1 레이트에 대응할 수도 있다. 예를 들어, 제 1 레이트는 비교 값들 (534) 에 포함되는 프레임 (예컨대, 도 3의 프레임 (304)) 에 대응하는 비교 값들의 수 (예컨대, 8) 를 나타낼 수도 있다. 32 kHz는 보간된 비교 값들 (816) 의 제 2 레이트에 대응할 수도 있다. 예를 들어, 제 2 레이트는 보간된 비교 값들 (816) 에 포함되는 프레임 (예컨대, 도 3의 프레임 (304)) 에 대응하는 보간된 비교 값들의 수 (예컨대, 32) 를 나타낼 수도 있다.
보간기 (510) 는 보간된 비교 값들 (816) 중 보간된 비교 값 (838) (예컨대, 최대 값 또는 최소 값) 을 선택할 수도 있다. 보간기 (510) 는 시프트 값들 (860) 중 보간된 비교 값 (838) 에 대응하는 시프트 값 (예컨대, 14) 을 선택할 수도 있다. 보간기 (510) 는 선택된 시프트 값 (예컨대, 제 2 시프트 값 (866)) 을 나타내는 보간된 시프트 값 (538) 을 생성할 수도 있다.
잠정적 시프트 값 (536) 을 결정하기 위해 조악한 접근법을 사용하는 것과 보간된 시프트 값 (538) 을 결정하기 위해 잠정적 시프트 값 (536) 주위를 검색하는 것은 검색 효율 또는 정확도를 손상시키는 일 없이 검색 복잡도를 감소시킬 수도 있다.
도 9a를 참조하면, 시스템의 구체적인 예가 도시되고 전체가 900으로 지정된다. 시스템 (900) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (900) 의 하나 이상의 컴포넌트들을 포함할 수도 있다. 시스템 (900) 은 메모리 (153), 시프트 리파이너 (911), 또는 둘 다를 포함할 수도 있다. 메모리 (153) 는 프레임 (302) 에 대응하는 제 1 시프트 값 (962) 을 저장하도록 구성될 수도 있다. 예를 들어, 분석 데이터 (190) 는 제 1 시프트 값 (962) 을 포함할 수도 있다. 제 1 시프트 값 (962) 은 프레임 (302) 에 연관된 잠정적 시프트 값, 보간된 시프트 값, 보정된 시프트 값, 최종 시프트 값, 또는 비인과적 시프트 값에 해당할 수도 있다. 프레임 (302) 은 제 1 오디오 신호 (130) 에서 프레임 (304) 에 앞설 수도 있다. 시프트 리파이너 (911) 는 도 1의 시프트 리파이너 (511) 에 해당할 수도 있다.
도 9a는 전체가 920으로 지정되는 예시적인 동작 방법의 흐름도를 또한 포함한다. 방법 (920) 은 시간 등화기 (108), 인코더 (114), 도 1의 제 1 디바이스 (104), 시간 등화기(들) (208), 인코더 (214), 도 2의 제 1 디바이스 (204), 도 5의 시프트 리파이너 (511), 시프트 리파이너 (911), 또는 그 조합에 의해 수행될 수도 있다.
방법 (920) 은, 901에서, 제 1 시프트 값 (962) 과 보간된 시프트 값 (538) 사이의 차이의 절대 값이 제 1 임계값보다 더 큰지의 여부를 결정하는 단계를 포함한다. 예를 들어, 시프트 리파이너 (911) 는 제 1 시프트 값 (962) 과 보간된 시프트 값 (538) 사이의 차이의 절대 값이 제 1 임계값 (예컨대, 시프트 변경 임계값) 보더 더 큰지의 여부를 결정할 수도 있다.
방법 (920) 은 901에서 절대 값이 제 1 임계값 이하라는 결정에 응답하여, 902에서, 보간된 시프트 값 (538) 을 나타내기 위해 보정된 시프트 값 (540) 을 설정하는 단계를 또한 포함한다. 예를 들어, 시프트 리파이너 (911) 는, 절대 값이 시프트 변경 임계값 이하라는 결정에 응답하여, 보간된 시프트 값 (538) 을 나타내기 위해 보정된 시프트 값 (540) 을 설정할 수도 있다. 일부 구현예들에서, 시프트 변경 임계값은 제 1 시프트 값 (962) 이 보간된 시프트 값 (538) 과 동일할 때 보정된 시프트 값 (540) 이 보간된 시프트 값 (538) 으로 설정되어야 함을 나타내는 제 1 값 (예컨대, 0) 을 가질 수도 있다. 대안적 구현예들에서, 시프트 변경 임계값은, 902에서, 더 큰 자유도로, 보정된 시프트 값 (540) 이 보간된 시프트 값 (538) 으로 설정되어야 함을 나타내는 제 2 값 (예컨대, ≥1) 을 가질 수도 있다. 예를 들어, 보정된 시프트 값 (540) 은 제 1 시프트 값 (962) 과 보간된 시프트 값 (538) 사이의 차이들의 범위에 대해 보간된 시프트 값 (538) 으로 설정될 수도 있다. 예시하기 위해, 보정된 시프트 값 (540) 은 제 1 시프트 값 (962) 과 보간된 시프트 값 (538) 사이의 차이 (예컨대, -2, -1, 0, 1, 2) 의 절대 값이 시프트 변경 임계값 (예컨대, 2) 이하일 때 보간된 시프트 값 (538) 으로 설정될 수도 있다.
방법 (920) 은, 901에서 절대 값이 제 1 임계값보다 더 크다는 결정에 응답하여, 904에서, 제 1 시프트 값 (962) 이 보간된 시프트 값 (538) 보다 더 큰지의 여부를 결정하는 단계를 더 포함한다. 예를 들어, 시프트 리파이너 (911) 는, 절대 값이 시프트 변경 임계값보다 더 크다는 결정에 응답하여, 제 1 시프트 값 (962) 이 보간된 시프트 값 (538) 보다 더 큰지의 여부를 결정할 수도 있다.
방법 (920) 은, 904에서 제 1 시프트 값 (962) 이 보간된 시프트 값 (538) 보다 더 크다는 결정에 응답하여, 906에서, 더 낮은 시프트 값 (930) 을 제 1 시프트 값 (962) 과 제 2 임계값 사이의 차이로 설정하는 것과, 더 큰 시프트 값 (932) 을 제 1 시프트 값 (962) 으로 설정하는 것을 또한 포함한다. 예를 들어, 시프트 리파이너 (911) 는, 제 1 시프트 값 (962) (예컨대, 20) 이 보간된 시프트 값 (538) (예컨대, 14) 보다 더 크다는 결정에 응답하여, 더 낮은 시프트 값 (930) (예컨대, 17) 을 제 1 시프트 값 (962) (예컨대, 20) 과 제 2 임계값 (예컨대, 3) 사이의 차이로 설정할 수도 있다. 덧붙여, 또는 대안적으로, 시프트 리파이너 (911) 는, 제 1 시프트 값 (962) 이 보간된 시프트 값 (538) 보다 더 크다는 결정에 응답하여, 더 큰 시프트 값 (932) (예컨대, 20) 을 제 1 시프트 값 (962) 으로 설정할 수도 있다. 제 2 임계값은 제 1 시프트 값 (962) 과 보간된 시프트 값 (538) 사이의 차이에 기초할 수도 있다. 일부 구현예들에서, 더 낮은 시프트 값 (930) 은 보간된 시프트 값 (538) 과 임계값 (예컨대, 제 2 임계값) 사이의 차이로 설정될 수도 있고 더 큰 시프트 값 (932) 은 제 1 시프트 값 (962) 과 임계값 (예컨대, 제 2 임계값) 사이의 차이로 설정될 수도 있다.
방법 (920) 은, 904에서 제 1 시프트 값 (962) 이 보간된 시프트 값 (538) 이하라는 결정에 응답하여, 910에서, 더 낮은 시프트 값 (930) 을 제 1 시프트 값 (962) 으로 설정하는 것과, 더 큰 시프트 값 (932) 을 제 1 시프트 값 (962) 및 제 3 임계값의 합으로 설정하는 것을 더 포함한다. 예를 들어, 시프트 리파이너 (911) 는, 제 1 시프트 값 (962) (예컨대, 10) 이 보간된 시프트 값 (538) (예컨대, 14) 이하라는 결정에 응답하여, 더 낮은 시프트 값 (930) 을 제 1 시프트 값 (962) (예컨대, 10) 으로 설정할 수도 있다. 덧붙여, 또는 대안적으로, 시프트 리파이너 (911) 는, 제 1 시프트 값 (962) 이 보간된 시프트 값 (538) 이하라는 결정에 응답하여, 더 큰 시프트 값 (932) (예컨대, 13) 을 제 1 시프트 값 (962) (예컨대, 10) 및 제 3 임계값 (예컨대, 3) 의 합으로 설정할 수도 있다. 제 3 임계값은 제 1 시프트 값 (962) 과 보간된 시프트 값 (538) 사이의 차이에 기초할 수도 있다. 일부 구현예들에서, 더 낮은 시프트 값 (930) 은 제 1 시프트 값 (962) 과 임계값 (예컨대, 제 3 임계값) 사이의 차이로 설정될 수도 있고 더 큰 시프트 값 (932) 은 보간된 시프트 값 (538) 과 임계값 (예컨대, 제 3 임계값) 사이의 차이로 설정될 수도 있다.
방법 (920) 은, 908에서, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 에 적용되는 시프트 값들 (960) 에 기초하여 비교 값들 (916) 을 결정하는 단계를 또한 포함한다. 예를 들어, 시프트 리파이너 (911) (또는 신호 비교기 (506)) 는 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 에 적용되는 시프트 값들 (960) 에 기초하여, 도 7을 참조하여 설명되는 바와 같이, 비교 값들 (916) 을 생성할 수도 있다. 예시하기 위해, 시프트 값들 (960) 은 더 낮은 시프트 값 (930) (예컨대, 17) 으로부터 더 큰 시프트 값 (932) (예컨대, 20) 까지의 범위일 수도 있다. 시프트 리파이너 (911) (또는 신호 비교기 (506)) 는 샘플들 (326~332) 과 제 2 샘플들 (350) 의 특정 서브세트에 기초하여 비교 값들 (916) 의 특정 비교 값을 생성할 수도 있다. 제 2 샘플들 (350) 의 특정 서브세트는 시프트 값들 (960) 중 특정 시프트 값 (예컨대, 17) 에 대응할 수도 있다. 특정 비교 값은 샘플들 (326~332) 과 제 2 샘플들 (350) 의 특정 서브세트 사이의 차이 (또는 상관) 를 나타낼 수도 있다.
방법 (920) 은, 912에서, 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132) 에 기초하여 생성된 비교 값들 (916) 에 기초하여 보정된 시프트 값 (540) 을 결정하는 단계를 더 포함한다. 예를 들어, 시프트 리파이너 (911) 는 비교 값들 (916) 에 기초하여 보정된 시프트 값 (540) 을 결정할 수도 있다. 예시하기 위해, 제 1 경우에, 비교 값들 (916) 이 교차 상관 값들에 해당할 때, 시프트 리파이너 (911) 는 보간된 시프트 값 (538) 에 대응하는 도 8의 보간된 비교 값 (838) 이 비교 값들 (916) 중 최고 비교 값 이상이라고 결정할 수도 있다. 대안적으로, 비교 값들 (916) 이 차이 값들에 대응할 때, 시프트 리파이너 (911) 는 보간된 비교 값 (838) 이 비교 값들 (916) 중 최저 비교 값 이하라고 결정할 수도 있다. 이 경우, 시프트 리파이너 (911) 는, 제 1 시프트 값 (962) (예컨대, 20) 이 보간된 시프트 값 (538) (예컨대, 14) 보다 더 크다는 결정에 응답하여, 보정된 시프트 값 (540) 을 더 낮은 시프트 값 (930) (예컨대, 17) 으로 설정할 수도 있다. 대안적으로, 시프트 리파이너 (911) 는, 제 1 시프트 값 (962) (예컨대, 10) 이 보간된 시프트 값 (538) (예컨대, 14) 이하라는 결정에 응답하여, 보정된 시프트 값 (540) 을 더 큰 시프트 값 (932) (예컨대, 13) 으로 설정할 수도 있다.
제 2 경우에, 비교 값들 (916) 이 교차 상관 값들에 해당할 때, 시프트 리파이너 (911) 는 보간된 비교 값 (838) 이 비교 값들 (916) 중 최고 비교 값 미만이라고 결정할 수도 있고 보정된 시프트 값 (540) 을 시프트 값들 (960) 중 최고 비교 값에 대응하는 특정 시프트 값 (예컨대, 18) 으로 설정할 수도 있다. 대안적으로, 비교 값들 (916) 이 차이 값들에 해당할 때, 시프트 리파이너 (911) 는 보간된 비교 값 (838) 이 비교 값들 (916) 중 최저 비교 값보다 더 크다고 결정할 수도 있고 보정된 시프트 값 (540) 을 시프트 값들 (960) 중 최저 비교 값에 대응하는 특정 시프트 값 (예컨대, 18) 으로 설정할 수도 있다.
비교 값들 (916) 은 제 1 오디오 신호 (130), 제 2 오디오 신호 (132), 및 시프트 값들 (960) 에 기초하여 생성될 수도 있다. 보정된 시프트 값 (540) 은, 도 7을 참조하여 설명되는 바와 같이, 신호 비교기 (506) 에 의해 수행된 바와 유사한 절차를 사용하여 비교 값들 (916) 에 기초하여 생성될 수도 있다.
방법 (920) 은 따라서 시프트 리파이너 (911) 가 연속적인 (또는 인접한) 프레임들에 연관된 시프트 값에서의 변화를 제한하는 것을 가능하게 할 수도 있다. 시프트 값에서의 감소된 변화는 인코딩 동안 샘플 손실 또는 샘플 중복을 감소시킬 수도 있다.
도 9b를 참조하면, 시스템의 구체적인 예가 도시되고 전체가 950으로 지정된다. 시스템 (950) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (950) 의 하나 이상의 컴포넌트들을 포함할 수도 있다. 시스템 (950) 은 메모리 (153), 시프트 리파이너 (511), 또는 둘 다를 포함할 수도 있다. 시프트 리파이너 (511) 는 보간된 시프트 조정기 (958) 를 포함할 수도 있다. 보간된 시프트 조정기 (958) 는, 본 명세서에서 설명되는 바와 같이, 제 1 시프트 값 (962) 에 기초하여 보간된 시프트 값 (538) 을 선택적으로 조정하도록 구성될 수도 있다. 시프트 리파이너 (511) 는, 도 9a, 도 9c를 참조하여 설명되는 바와 같이, 보간된 시프트 값 (538) (예컨대, 조절된 보간된 시프트 값 (538)) 에 기초하여 보정된 시프트 값 (540) 을 결정할 수도 있다.
도 9b는 전체가 951으로 지정되는 예시적인 동작 방법의 흐름도를 또한 포함한다. 방법 (951) 은 시간 등화기 (108), 인코더 (114), 도 1의 제 1 디바이스 (104), 시간 등화기(들) (208), 인코더 (214), 도 2의 제 1 디바이스 (204), 도 5의 시프트 리파이너 (511), 도 9a의 시프트 리파이너 (911), 보간된 시프트 조정기 (958), 또는 그 조합에 의해 수행될 수도 있다.
방법 (951) 은, 952에서, 제 1 시프트 값 (962) 과 비제약된 보간된 시프트 값 (956) 사이의 차이에 기초하여 오프셋 (957) 을 생성하는 단계를 포함한다. 예를 들어, 보간된 시프트 조정기 (958) 는 제 1 시프트 값 (962) 과 비제약된 보간된 시프트 값 (956) 사이의 차이에 기초하여 오프셋 (957) 을 생성할 수도 있다. 비제약된 보간된 시프트 값 (956) 은 (예컨대, 보간된 시프트 조정기 (958) 에 의한 조정 전의) 보간된 시프트 값 (538) 에 해당할 수도 있다. 보간된 시프트 조정기 (958) 는 비제약된 보간된 시프트 값 (956) 을 메모리 (153) 에 저장할 수도 있다. 예를 들어, 분석 데이터 (190) 는 비제약된 보간된 시프트 값 (956) 을 포함할 수도 있다.
방법 (951) 은, 953에서, 오프셋 (957) 의 절대 값이 임계값보다 더 큰지의 여부를 결정하는 단계를 또한 포함한다. 예를 들어, 보간된 시프트 조정기 (958) 는 오프셋 (957) 의 절대 값이 임계값을 충족시키는지의 여부를 결정할 수도 있다. 임계값은 보간 시프트 한도 MAX_SHIFT_CHANGE (예컨대, 4) 에 해당할 수도 있다.
방법 (951) 은, 953에서 오프셋 (957) 의 절대 값이 임계값보다 더 크다는 결정에 응답하여, 954에서, 제 1 시프트 값 (962), 오프셋 (957) 의 부호, 및 임계값에 기초하여 보간된 시프트 값 (538) 을 설정하는 단계를 포함한다. 예를 들어, 보간된 시프트 조정기 (958) 는, 오프셋 (957) 의 절대 값이 임계값을 충족시키는데 실패한다 (예컨대, 그 임계값보다 더 크다) 는 결정에 응답하여, 보간된 시프트 값 (538) 을 제한할 수도 있다. 예시하기 위해, 보간된 시프트 조정기 (958) 는 제 1 시프트 값 (962), 오프셋 (957) 의 부호 (예컨대, +1 또는 -1), 및 임계값에 기초하여 보간된 시프트 값 (538) 을 조정할 수도 있다 (예컨대, 보간된 시프트 값 (538) = 제 1 시프트 값 (962) + sign(오프셋 (957)) * 임계값).
방법 (951) 은, 953에서 오프셋 (957) 의 절대 값이 임계값 이하라는 결정에 응답하여, 955에서, 보간된 시프트 값 (538) 을 비제약된 보간된 시프트 값 (956) 으로 설정하는 단계를 포함한다. 예를 들어, 보간된 시프트 조정기 (958) 는, 오프셋 (957) 의 절대 값이 임계값을 충족시킨다는 (예컨대, 그 임계값 이하라는) 결정에 응답하여, 보간된 시프트 값 (538) 을 변경하는 것을 하지 않을 수도 있다.
방법 (951) 은 따라서 제 1 시프트 값 (962) 에 비한 보간된 시프트 값 (538) 에서의 변화가 보간 시프트 한도를 충족시키도록 보간된 시프트 값 (538) 을 제약하는 것을 가능하게 할 수도 있다.
도 9c를 참조하면, 시스템의 구체적인 예가 도시되고 전체가 970으로 지정된다. 시스템 (970) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (970) 의 하나 이상의 컴포넌트들을 포함할 수도 있다. 시스템 (970) 은 메모리 (153), 시프트 리파이너 (921), 또는 둘 다를 포함할 수도 있다. 시프트 리파이너 (921) 는 도 5의 시프트 리파이너 (511) 에 해당할 수도 있다.
도 9c는 전체가 971으로 지정되는 예시적인 동작 방법의 흐름도를 또한 포함한다. 방법 (971) 은 시간 등화기 (108), 인코더 (114), 도 1의 제 1 디바이스 (104), 시간 등화기(들) (208), 인코더 (214), 도 2의 제 1 디바이스 (204), 도 5의 시프트 리파이너 (511), 도 9a의 시프트 리파이너 (911), 시프트 리파이너 (921), 또는 그 조합에 의해 수행될 수도 있다.
방법 (971) 은, 972에서, 제 1 시프트 값 (962) 과 보간된 시프트 값 (538) 사이의 차이가 영이 아닌지의 여부를 결정하는 단계를 포함한다. 예를 들어, 시프트 리파이너 (921) 는 제 1 시프트 값 (962) 과 보간된 시프트 값 (538) 사이의 차이가 영이 아닌지의 여부를 결정할 수도 있다.
방법 (971) 은, 972에서의 제 1 시프트 값 (962) 과 보간된 시프트 값 (538) 사이의 차이가 영이라는 결정에 응답하여, 973에서, 보정된 시프트 값 (540) 을 보간된 시프트 값 (538) 으로 설정하는 단계를 포함한다. 예를 들어, 시프트 리파이너 (921) 는, 제 1 시프트 값 (962) 과 보간된 시프트 값 (538) 사이의 차이가 영이라는 결정에 응답하여, 보간된 시프트 값 (538) 에 기초하여 보정된 시프트 값 (540) (예컨대, 보정된 시프트 값 (540) = 보간된 시프트 값 (538)) 을 결정할 수도 있다.
방법 (971) 은, 972에서의 제 1 시프트 값 (962) 과 보간된 시프트 값 (538) 사이의 차이가 영이 아니라는 결정에 응답하여, 975에서, 오프셋 (957) 의 절대 값이 임계값보다 더 큰지의 여부를 결정하는 단계를 포함한다. 예를 들어, 시프트 리파이너 (921) 는, 제 1 시프트 값 (962) 과 보간된 시프트 값 (538) 사이의 차이가 영이 아니라는 결정에 응답하여, 오프셋 (957) 의 절대 값이 임계값보다 더 큰지의 여부를 결정할 수도 있다. 오프셋 (957) 은, 도 9b를 참조하여 설명되는 바와 같이, 제 1 시프트 값 (962) 과 비제약된 보간된 시프트 값 (956) 사이의 차이에 해당할 수도 있다. 임계값은 보간 시프트 한도 MAX_SHIFT_CHANGE (예컨대, 4) 에 해당할 수도 있다.
방법 (971) 은, 972에서의 제 1 시프트 값 (962) 과 보간된 시프트 값 (538) 사이의 차이가 영이 아니라는 결정, 또는 975에서의 오프셋 (957) 의 절대 값이 임계값 이하라는 결정에 응답하여, 976에서, 더 낮은 시프트 값 (930) 을 제 1 임계값과 제 1 시프트 값 (962) 및 보간된 시프트 값 (538) 중 최소 사이의 차이로 설정하는 것과, 더 큰 시프트 값 (932) 을 제 2 임계값과 제 1 시프트 값 (962) 및 보간된 시프트 값 (538) 중 최대의 합으로 설정하는 것을 포함한다. 예를 들어, 시프트 리파이너 (921) 는, 오프셋 (957) 의 절대 값이 임계값 이하라는 결정에 응답하여, 제 1 임계값과 제 1 시프트 값 (962) 및 보간된 시프트 값 (538) 중 최소 사이의 차이에 기초하여 더 낮은 시프트 값 (930) 을 결정할 수도 있다. 시프트 리파이너 (921) 는 제 2 임계값과 제 1 시프트 값 (962) 및 보간된 시프트 값 (538) 중 최대의 합에 기초하여 더 큰 시프트 값 (932) 을 또한 결정할 수도 있다.
방법 (971) 은, 977에서, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 에 적용되는 시프트 값들 (960) 에 기초하여 비교 값들 (916) 을 생성하는 단계를 또한 포함한다. 예를 들어, 시프트 리파이너 (921) (또는 신호 비교기 (506)) 는 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 에 적용되는 시프트 값들 (960) 에 기초하여, 도 7을 참조하여 설명되는 바와 같이, 비교 값들 (916) 을 생성할 수도 있다. 시프트 값들 (960) 은 더 낮은 시프트 값 (930) 으로부터 더 큰 시프트 값 (932) 까지의 범위일 수도 있다. 방법 (971) 은 979로 진행할 수도 있다.
방법 (971) 은, 975에서 오프셋 (957) 의 절대 값이 임계값보다 더 크다는 결정에 응답하여, 978에서, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 에 적용되는 비제약된 보간된 시프트 값 (956) 에 기초하여 비교 값 (915) 을 생성하는 단계를 포함한다. 예를 들어, 시프트 리파이너 (921) (또는 신호 비교기 (506)) 는, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 에 적용되는 비제약된 보간된 시프트 값 (956) 에 기초하여, 도 7을 참조하여 설명되는 바와 같이, 비교 값 (915) 을 생성할 수도 있다.
방법 (971) 은, 979에서, 비교 값들 (916), 비교 값 (915), 또는 그 조합에 기초하여 보정된 시프트 값 (540) 을 결정하는 단계를 또한 포함한다. 예를 들어, 시프트 리파이너 (921) 는, 도 9a를 참조하여 설명되는 바와 같이, 비교 값들 (916), 비교 값 (915), 또는 그 조합에 기초하여 보정된 시프트 값 (540) 을 결정할 수도 있다. 일부 구현예들에서, 시프트 리파이너 (921) 는 시프트 변동으로 인한 국부적 극대들 (local maxima) 을 피하기 위해 비교 값 (915) 과 비교 값들 (916) 의 비교에 기초하여 보정된 시프트 값 (540) 을 결정할 수도 있다.
일부 경우들에서, 제 1 오디오 신호 (130), 제 1 재샘플링된 신호 (530), 제 2 오디오 신호 (132), 제 2 재샘플링된 신호 (532), 또는 그 조합의 고유 피치가, 시프트 추정 프로세스와 간섭할 수도 있다. 그런 경우들에서, 피치 디-앰퍼시스 또는 피치 필터링이 피치로 인한 간섭을 감소시키고 다수의 채널들 사이의 시프트 추정의 신뢰도를 개선하도록 수행될 수도 있다. 일부 경우들에서, 시프트 추정 프로세스와 간섭할 수도 있는 배경 잡음이 제 1 오디오 신호 (130), 제 1 재샘플링된 신호 (530), 제 2 오디오 신호 (132), 제 2 재샘플링된 신호 (532), 또는 그 조합에 존재할 수도 있다. 그런 경우들에서, 잡음 억제 또는 잡음 제거가 다수의 채널들 사이의 시프트 추정의 신뢰도를 개선하기 위해 사용될 수도 있다.
도 10a를 참조하면, 시스템의 구체적인 예가 도시되고 전체가 1000으로 지정된다. 시스템 (1000) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (1000) 의 하나 이상의 컴포넌트들을 포함할 수도 있다.
도 10a는 전체가 1020으로 지정되는 예시적인 동작 방법의 흐름도를 또한 포함한다. 방법 (1020) 은 시프트 변경 분석기 (512), 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 또는 그 조합에 의해 수행될 수도 있다.
방법 (1020) 은 1001에서 제 1 시프트 값 (962) 이 0과 동일한지의 여부를 결정하는 단계를 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는 프레임 (302) 에 대응하는 제 1 시프트 값 (962) 이 시간 시프트 없음을 나타내는 제 1 값 (예컨대, 0) 에 해당하는지의 여부를 결정할 수도 있다. 방법 (1020) 은, 1001에서 제 1 시프트 값 (962) 이 0과 동일하다는 결정에 응답하여, 1010으로 진행하는 단계를 포함한다.
방법 (1020) 은, 1001에서 제 1 시프트 값 (962) 이 영이 아니라는 결정에 응답하여, 1002에서, 제 1 시프트 값 (962) 이 0보다 더 큰지의 여부를 결정하는 단계를 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는, 프레임 (302) 에 대응하는 제 1 시프트 값 (962) 이, 제 2 오디오 신호 (132) 가 제 1 오디오 신호 (130) 에 비하여 시간적으로 지연됨을 나타내는 제 1 값 (예컨대, 양의 값) 을 가지는지의 여부를 결정할 수도 있다.
방법 (1020) 은, 1002에서 제 1 시프트 값 (962) 이 0보다 더 크다는 결정에 응답하여, 1004에서, 보정된 시프트 값 (540) 이 0 미만인지의 여부를 결정하는 단계를 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는, 제 1 시프트 값 (962) 이 제 1 값 (예컨대, 양의 값) 을 가진다는 결정에 응답하여, 보정된 시프트 값 (540) 이 제 1 오디오 신호 (130) 가 제 2 오디오 신호 (132) 에 비하여 시간적으로 지연됨을 나타내는 제 2 값 (예컨대, 음의 값) 을 가지는지의 여부를 결정할 수도 있다. 방법 (1020) 은, 1004에서 보정된 시프트 값 (540) 이 0 미만이라는 결정에 응답하여, 1008로 진행하는 단계를 포함한다. 방법 (1020) 은, 1004에서 보정된 시프트 값 (540) 이 0 이상이라는 결정에 응답하여, 1010으로 진행하는 단계를 포함한다.
방법 (1020) 은, 1002에서 제 1 시프트 값 (962) 이 0 미만이라는 결정에 응답하여, 1006에서, 보정된 시프트 값 (540) 이 0보다 더 큰지의 여부를 결정하는 단계를 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는, 제 1 시프트 값 (962) 이 제 2 값 (예컨대, 음의 값) 을 가진다는 결정에 응답하여, 보정된 시프트 값 (540) 이 제 2 오디오 신호 (132) 가 제 1 오디오 신호 (130) 에 비하여 시간적으로 지연됨을 나타내는 제 1 값 (예컨대, 양의 값) 을 가지는지의 여부를 결정할 수도 있다. 방법 (1020) 은, 1006에서 보정된 시프트 값 (540) 이 0보다 더 크다는 결정에 응답하여, 1008로 진행하는 단계를 포함한다. 방법 (1020) 은, 1006에서 보정된 시프트 값 (540) 이 0 이하라는 결정에 응답하여, 1010으로 진행하는 단계를 포함한다.
방법 (1020) 은, 1008에서, 최종 시프트 값 (116) 을 0으로 설정하는 단계를 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는 최종 시프트 값 (116) 을 시간 시프트 없음을 나타내는 특정 값 (예컨대, 0) 으로 설정할 수도 있다. 최종 시프트 값 (116) 은, 선행 신호와 후행 신호가 프레임 (302) 을 생성한 후의 기간 동안 스위칭되었다는 결정에 응답하여, 특정 값 (예컨대, 0) 으로 설정될 수도 있다. 예를 들어, 프레임 (302) 은 제 1 오디오 신호 (130) 가 선행 신호이고 제 2 오디오 신호 (132) 가 후행 신호임을 나타내는 제 1 시프트 값 (962) 에 기초하여 인코딩될 수도 있다. 보정된 시프트 값 (540) 은 제 1 오디오 신호 (130) 가 후행 신호이고 제 2 오디오 신호 (132) 가 선행 신호임을 나타낼 수도 있다. 시프트 변경 분석기 (512) 는 제 1 시프트 값 (962) 에 의해 나타내어진 선행 신호가 보정된 시프트 값 (540) 에 의해 나타내어진 선행 신호와는 별개라는 결정에 응답하여 최종 시프트 값 (116) 을 특정 값으로 설정할 수도 있다.
방법 (1020) 은 1010에서 제 1 시프트 값 (962) 이 보정된 시프트 값 (540) 과 동일한지의 여부를 결정하는 단계를 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는 제 1 시프트 값 (962) 과 보정된 시프트 값 (540) 이 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 동일한 시간 지연을 나타내는지의 여부를 결정할 수도 있다.
방법 (1020) 은, 1010에서 제 1 시프트 값 (962) 이 보정된 시프트 값 (540) 과 동일하다는 결정에 응답하여, 1012에서, 최종 시프트 값 (116) 을 보정된 시프트 값 (540) 으로 설정하는 단계를 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는 최종 시프트 값 (116) 을 보정된 시프트 값 (540) 으로 설정할 수도 있다.
방법 (1020) 은, 1010에서 제 1 시프트 값 (962) 이 보정된 시프트 값 (540) 과 동일하지 않다는 결정에 응답하여, 1014에서, 추정된 시프트 값 (1072) 을 생성하는 단계를 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는, 도 11을 참조하여 추가로 설명되는 바와 같이, 보정된 시프트 값 (540) 을 리파인함으로써, 추정된 시프트 값 (1072) 을 결정할 수도 있다.
방법 (1020) 은, 1016에서, 최종 시프트 값 (116) 을 추정된 시프트 값 (1072) 으로 설정하는 단계를 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는 최종 시프트 값 (116) 을 추정된 시프트 값 (1072) 으로 설정할 수도 있다.
일부 구현예들에서, 시프트 변경 분석기 (512) 는 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연이 스위칭되지 않았다는 결정에 응답하여 제 2 추정된 시프트 값을 나타내도록 비인과적 시프트 값 (162) 을 설정할 수도 있다. 예를 들어, 시프트 변경 분석기 (512) 는, 1001에서 제 1 시프트 값 (962) 이 0과 동일하다거나, 1004에서 보정된 시프트 값 (540) 이 0 이상이라거나, 또는 1006에서 보정된 시프트 값 (540) 이 0 이하라는 결정에 응답하여, 보정된 시프트 값 (540) 을 나타내도록 비인과적 시프트 값 (162) 을 설정할 수도 있다.
시프트 변경 분석기 (512) 는 따라서 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 지연이 도 3의 프레임 (302) 과 프레임 (304) 사이에서 스위칭되었다는 결정에 응답하여, 시간 시프트 없음을 나타내도록 비인과적 시프트 값 (162) 을 설정할 수도 있다. 비인과적 시프트 값 (162) 이 연속 프레임들 사이에서 방향들을 (예컨대, 양에서 음으로 또는 음에서 양으로) 스위칭하는 것을 방지하는 것은, 인코더 (114) 에서 다운믹스 신호 생성에서의 왜곡을 감소시키거나, 디코더에서 업믹스 합성을 위한 추가적인 지연의 사용을 피하거나, 또는 둘 다를 할 수도 있다.
도 10b를 참조하면, 시스템의 구체적인 예가 도시되고 전체가 1030으로 지정된다. 시스템 (1030) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (1030) 의 하나 이상의 컴포넌트들을 포함할 수도 있다.
도 10b는 전체가 1031로 지정되는 예시적인 동작 방법의 흐름도를 또한 포함한다. 방법 (1031) 은 시프트 변경 분석기 (512), 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 또는 그 조합에 의해 수행될 수도 있다.
방법 (1031) 은, 1032에서, 제 1 시프트 값 (962) 이 영보다 더 크고 보정된 시프트 값 (540) 이 영 미만인지를 결정하는 단계를 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는 제 1 시프트 값 (962) 이 영보다 더 큰지의 여부와 보정된 시프트 값 (540) 이 영 미만인지의 여부를 결정할 수도 있다.
방법 (1031) 은, 1032에서 제 1 시프트 값 (962) 이 영보다 더 크고 보정된 시프트 값 (540) 이 영 미만이라는 결정에 응답하여, 1033에서, 최종 시프트 값 (116) 을 영으로 설정하는 단계를 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는, 제 1 시프트 값 (962) 이 영보다 더 크고 보정된 시프트 값 (540) 이 영 미만이라는 결정에 응답하여, 최종 시프트 값 (116) 을 시간 시프트 없음을 나타내는 제 1 값 (예컨대, 0) 으로 설정할 수도 있다.
방법 (1031) 은, 1032에서 제 1 시프트 값 (962) 이 영 이하이거나 또는 보정된 시프트 값 (540) 이 영 이상이라는 결정에 응답하여, 1034에서, 제 1 시프트 값 (962) 이 영 미만인지의 여부와 보정된 시프트 값 (540) 이 영보다 더 큰지의 여부를 결정하는 단계를 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는, 제 1 시프트 값 (962) 이 영 이하이거나 또는 보정된 시프트 값 (540) 이 영 이상이라는 결정에 응답하여, 제 1 시프트 값 (962) 이 영 미만인지의 여부와 보정된 시프트 값 (540) 이 영보다 더 큰지의 여부를 결정할 수도 있다.
방법 (1031) 은, 제 1 시프트 값 (962) 이 0 미만이고 보정된 시프트 값 (540) 이 0보다 더 크다는 결정에 응답하여, 1033으로 진행하는 단계를 포함한다. 방법 (1031) 은, 제 1 시프트 값 (962) 이 영 이상이고 보정된 시프트 값 (540) 이 영 이하라는 결정에 응답하여, 1035에서, 최종 시프트 값 (116) 을 보정된 시프트 값 (540) 으로 설정하는 단계를 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는, 제 1 시프트 값 (962) 이 영 이상이거나 또는 보정된 시프트 값 (540) 이 영 이하라는 결정에 응답하여, 최종 시프트 값 (116) 을 보정된 시프트 값 (540) 으로 설정할 수도 있다.
도 11을 참조하면, 시스템의 구체적인 예가 도시되고 전체가 1100으로 지정된다. 시스템 (1100) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (1100) 의 하나 이상의 컴포넌트들을 포함할 수도 있다. 도 11은 전체가 1120으로 지정되는 동작 방법을 예시하는 흐름도를 또한 포함한다. 방법 (1120) 은 시프트 변경 분석기 (512), 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 또는 그 조합에 의해 수행될 수도 있다. 방법 (1120) 은 도 10a의 단계 1014에 해당할 수도 있다.
방법 (1120) 은 1104에서 제 1 시프트 값 (962) 이 보정된 시프트 값 (540) 보다 더 큰지의 여부를 결정하는 단계를 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는 제 1 시프트 값 (962) 이 보정된 시프트 값 (540) 보다 더 큰지의 여부를 결정할 수도 있다.
방법 (1120) 은, 1104에서 제 1 시프트 값 (962) 이 보정된 시프트 값 (540) 보다 더 크다는 결정에 응답하여, 1106에서, 제 1 시프트 값 (1130) 을 보정된 시프트 값 (540) 과 제 1 오프셋 사이의 차이로 설정하는 것과, 제 2 시프트 값 (1132) 을 제 1 시프트 값 (962) 및 제 1 오프셋의 합으로 설정하는 것을 또한 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는, 제 1 시프트 값 (962) (예컨대, 20) 이 보정된 시프트 값 (540) (예컨대, 18) 보다 더 크다는 결정에 응답하여, 보정된 시프트 값 (540) 에 기초하여 제 1 시프트 값 (1130) (예컨대, 17) (예컨대, 보정된 시프트 값 (540) - 제 1 오프셋) 을 결정할 수도 있다. 대안적으로, 또는 추가적으로, 시프트 변경 분석기 (512) 는 제 1 시프트 값 (962) 에 기초하여 제 2 시프트 값 (1132) (예컨대, 21) (예컨대, 제 1 시프트 값 (962) + 제 1 오프셋) 을 결정할 수도 있다. 방법 (1120) 은 1108로 진행할 수도 있다.
방법 (1120) 은, 1104에서 제 1 시프트 값 (962) 이 보정된 시프트 값 (540) 이하라는 결정에 응답하여, 제 1 시프트 값 (1130) 을 제 1 시프트 값 (962) 과 제 2 오프셋 사이의 차이로 설정하는 것과, 제 2 시프트 값 (1132) 을 보정된 시프트 값 (540) 및 제 2 오프셋의 합으로 설정하는 것을 더 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는, 제 1 시프트 값 (962) (예컨대, 10) 이 보정된 시프트 값 (540) (예컨대, 12) 이하라는 결정에 응답하여, 제 1 시프트 값 (962) 에 기초하여 제 1 시프트 값 (1130) (예컨대, 9) (예컨대, 제 1 시프트 값 (962) - 제 2 오프셋) 을 결정할 수도 있다. 대안적으로, 또는 추가적으로, 시프트 변경 분석기 (512) 는 보정된 시프트 값 (540) 에 기초하여 제 2 시프트 값 (1132) (예컨대, 13) (예컨대, 보정된 시프트 값 (540) + 제 2 오프셋) 을 결정할 수도 있다. 제 1 오프셋 (예컨대, 2) 은 제 2 오프셋 (예컨대, 3) 과는 별개일 수도 있다. 일부 구현예들에서, 제 1 오프셋은 제 2 오프셋과 동일할 수도 있다. 제 1 오프셋, 제 2 오프셋, 또는 둘 다의 더 높은 값이, 검색 범위를 개선시킬 수도 있다.
방법 (1120) 은, 1108에서, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 에 적용되는 시프트 값들 (1160) 에 기초하여 비교 값들 (1140) 을 생성하는 단계를 또한 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 에 적용되는 시프트 값들 (1160) 에 기초하여, 도 7을 참조하여 설명되는 바와 같이, 비교 값들 (1140) 을 생성할 수도 있다. 예시하기 위해, 시프트 값들 (1160) 은 제 1 시프트 값 (1130) (예컨대, 17) 으로부터 제 2 시프트 값 (1132) (예컨대, 21) 까지의 범위일 수도 있다. 시프트 변경 분석기 (512) 는 샘플들 (326~332) 과 제 2 샘플들 (350) 의 특정 서브세트에 기초하여 비교 값들 (1140) 의 특정 비교 값을 생성할 수도 있다. 제 2 샘플들 (350) 의 특정 서브세트는 시프트 값들 (1160) 중 특정 시프트 값 (예컨대, 17) 에 대응할 수도 있다. 특정 비교 값은 샘플들 (326~332) 과 제 2 샘플들 (350) 의 특정 서브세트 사이의 차이 (또는 상관) 를 나타낼 수도 있다.
방법 (1120) 은, 1112에서, 비교 값들 (1140) 에 기초하여 추정된 시프트 값 (1072) 을 결정하는 단계를 더 포함한다. 예를 들어, 시프트 변경 분석기 (512) 는, 비교 값들 (1140) 이 교차 상관 값들에 해당할 때, 비교 값들 (1140) 중 최고 비교 값을 추정된 시프트 값 (1072) 으로서 선택할 수도 있다. 대안적으로, 시프트 변경 분석기 (512) 는, 비교 값들 (1140) 이 차이 값들에 해당할 때, 비교 값들 (1140) 중 최저 비교 값을 추정된 시프트 값 (1072) 으로서 선택할 수도 있다.
방법 (1120) 은 따라서 보정된 시프트 값 (540) 을 리파인함으로써 시프트 변경 분석기 (512) 가 추정된 시프트 값 (1072) 을 생성하는 것을 가능하게 할 수도 있다. 예를 들어, 시프트 변경 분석기 (512) 는 원래의 샘플들에 기초하여 비교 값들 (1140) 을 결정할 수도 있고 비교 값들 (1140) 중 최고 상관 (또는 최저 차이) 를 나타내는 비교 값에 대응하는 추정된 시프트 값 (1072) 을 선택할 수도 있다.
도 12를 참조하면, 시스템의 구체적인 예가 도시되고 전체가 1200으로 지정된다. 시스템 (1200) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (1200) 의 하나 이상의 컴포넌트들을 포함할 수도 있다. 도 12는 전체가 1220으로 지정되는 동작 방법을 예시하는 흐름도를 또한 포함한다. 방법 (1220) 은 기준 신호 지정기 (508), 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 또는 그 조합에 의해 수행될 수도 있다.
방법 (1220) 은 1202에서 최종 시프트 값 (116) 이 0과 동일한지의 여부를 결정하는 단계를 포함한다. 예를 들어, 기준 신호 지정기 (508) 는 최종 시프트 값 (116) 이 시간 시프트 없음을 나타내는 특정 값 (예컨대, 0) 을 가지는지의 여부를 결정할 수도 있다.
방법 (1220) 은, 1202에서 최종 시프트 값 (116) 이 0과 동일하다는 결정에 응답하여, 1204에서, 기준 신호 표시자 (164) 를 변경하지 않고 남겨두는 단계를 포함한다. 예를 들어, 기준 신호 지정기 (508) 는, 최종 시프트 값 (116) 이 시간 시프트 없음을 나타내는 특정 값 (예컨대, 0) 을 가진다는 결정에 응답하여, 기준 신호 표시자 (164) 를 변경하지 않고 남겨둘 수도 있다. 예시하기 위해, 기준 신호 표시자 (164) 는 동일한 오디오 신호 (예컨대, 제 1 오디오 신호 (130) 또는 제 2 오디오 신호 (132)) 가 프레임 (302) 에서처럼 프레임 (304) 에 연관되는 기준 신호임을 나타낼 수도 있다.
방법 (1220) 은, 1202에서 최종 시프트 값 (116) 이 영이 아니라는 결정에 응답하여, 1206에서, 최종 시프트 값 (116) 이 0보다 더 큰지의 여부를 결정하는 단계를 포함한다. 예를 들어, 기준 신호 지정기 (508) 는, 최종 시프트 값 (116) 이 시간 시프트를 나타내는 특정 값 (예컨대, 영이 아닌 값) 을 가진다는 결정에 응답하여, 최종 시프트 값 (116) 이, 제 2 오디오 신호 (132) 가 제 1 오디오 신호 (130) 에 비하여 지연됨을 나타내는 제 1 값 (예컨대, 양의 값) 을 가지는지 또는 제 1 오디오 신호 (130) 가 제 2 오디오 신호 (132) 에 비하여 지연됨을 나타내는 제 2 값 (예컨대, 음의 값) 을 가지는지를 결정할 수도 있다.
방법 (1220) 은, 최종 시프트 값 (116) 이 제 1 값 (예컨대, 양의 값) 을 가진다는 결정에 응답하여, 1208에서, 제 1 오디오 신호 (130) 가 기준 신호임을 나타내는 제 1 값 (예컨대, 0) 을 가지도록 기준 신호 표시자 (164) 를 설정하는 단계를 포함한다. 예를 들어, 기준 신호 지정기 (508) 는, 최종 시프트 값 (116) 이 제 1 값 (예컨대, 양의 값) 을 가진다는 결정에 응답하여, 기준 신호 표시자 (164) 를 제 1 오디오 신호 (130) 가 기준 신호임을 나타내는 제 1 값 (예컨대, 0) 으로 설정할 수도 있다. 기준 신호 지정기 (508) 는, 최종 시프트 값 (116) 이 제 1 값 (예컨대, 양의 값) 을 가진다는 결정에 응답하여, 제 2 오디오 신호 (132) 가 타겟 신호에 해당한다고 결정할 수도 있다.
방법 (1220) 은, 최종 시프트 값 (116) 이 제 2 값 (예컨대, 음의 값) 을 가진다는 결정에 응답하여, 1210에서, 제 2 오디오 신호 (132) 가 기준 신호임을 나타내는 제 2 값 (예컨대, 1) 을 가지도록 기준 신호 표시자 (164) 를 설정하는 단계를 포함한다. 예를 들어, 기준 신호 지정기 (508) 는, 최종 시프트 값 (116) 이, 제 1 오디오 신호 (130) 가 제 2 오디오 신호 (132) 에 비하여 지연됨을 나타내는 제 2 값 (예컨대, 음의 값) 을 가진다는 결정에 응답하여, 기준 신호 표시자 (164) 를 제 2 오디오 신호 (132) 가 기준 신호임을 나타내는 제 2 값 (예컨대, 1) 으로 설정할 수도 있다. 기준 신호 지정기 (508) 는, 최종 시프트 값 (116) 이 제 2 값 (예컨대, 음의 값) 을 가진다는 결정에 응답하여, 제 1 오디오 신호 (130) 가 타겟 신호에 해당한다고 결정할 수도 있다.
기준 신호 지정기 (508) 는 기준 신호 표시자 (164) 를 이득 파라미터 생성기 (514) 에 제공할 수도 있다. 이득 파라미터 생성기 (514) 는, 도 5를 참조하여 설명되는 바와 같이, 기준 신호에 기초하여 타겟 신호의 이득 파라미터 (예컨대, 이득 파라미터 (160)) 를 결정할 수도 있다.
타겟 신호가 기준 신호에 비하여 시간적으로 지연될 수도 있다. 기준 신호 표시자 (164) 는 제 1 오디오 신호 (130) 또는 제 2 오디오 신호 (132) 가 기준 신호에 대응하는지를 나타낼 수도 있다. 기준 신호 표시자 (164) 는 이득 파라미터 (160) 가 제 1 오디오 신호 (130) 또는 제 2 오디오 신호 (132) 에 대응하는지를 나타낼 수도 있다.
도 13을 참조하면, 특정 동작 방법을 예시하는 흐름도가 도시되고 전체가 1300으로 지정된다. 방법 (1300) 은 기준 신호 지정기 (508), 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 또는 그 조합에 의해 수행될 수도 있다.
방법 (1300) 은 1302에서 최종 시프트 값 (116) 이 영 이상인지의 여부를 결정하는 단계를 포함한다. 예를 들어, 기준 신호 지정기 (508) 는 최종 시프트 값 (116) 이 영 이상인지의 여부를 결정할 수도 있다. 방법 (1300) 은, 1302에서 최종 시프트 값 (116) 이 영 이상이라는 결정에 응답하여, 1208으로 진행하는 단계를 또한 포함한다. 방법 (1300) 은, 1302에서 최종 시프트 값 (116) 이 영 미만이라는 결정에 응답하여, 1210로 진행하는 단계를 포함한다. 방법 (1300) 은, 최종 시프트 값 (116) 이 시간 시프트 없음을 나타내는 특정 값 (예컨대, 0) 을 가진다는 결정에 응답하여, 기준 신호 표시자 (164) 는 제 1 오디오 신호 (130) 가 기준 신호에 해당함을 나타내는 제 1 값 (예컨대, 0) 으로 설정된다는 점에서 도 12의 방법 (1220) 과는 상이하다. 일부 구현예들에서, 기준 신호 지정기 (508) 는 방법 (1220) 을 수행할 수도 있다. 다른 구현예들에서, 기준 신호 지정기 (508) 는 방법 (1300) 을 수행할 수도 있다.
방법 (1300) 은 따라서 제 1 오디오 신호 (130) 가 프레임 (302) 에 대한 기준 신호에 해당하는지의 여부와는 독립적으로 최종 시프트 값 (116) 이 시간 시프트 없음을 나타낼 때 기준 신호 표시자 (164) 를 제 1 오디오 신호 (130) 가 기준 신호에 해당함을 나타내는 특정 값 (예컨대, 0) 으로 설정하는 것을 가능하게 할 수도 있다.
도 14를 참조하면, 시스템의 구체적인 예가 도시되고 전체가 1400으로 지정된다. 시스템 (1400) 은 도 1의 시스템 (100), 도 2의 시스템 (200), 또는 둘 다에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 시스템 (200), 도 2의 제 1 디바이스 (204), 또는 그 조합이, 시스템 (1400) 의 하나 이상의 컴포넌트들을 포함할 수도 있다. 제 1 디바이스 (204) 는 제 1 마이크로폰 (146), 제 2 마이크로폰 (148), 제 3 마이크로폰 (1446), 및 제 4 마이크로폰 (1448) 에 커플링된다.
동작 동안, 제 1 디바이스 (204) 는 제 1 오디오 신호 (130) 를 제 1 마이크로폰 (146) 을 통해, 제 2 오디오 신호 (132) 를 제 2 마이크로폰 (148) 을 통해, 제 3 오디오 신호 (1430) 를 제 3 마이크로폰 (1446) 을 통해, 제 4 오디오 신호 (1432) 를 제 4 마이크로폰 (1448) 을 통해, 또는 그 조합으로 수신할 수도 있다. 사운드 소스 (152) 는 제 1 마이크로폰 (146), 제 2 마이크로폰 (148), 제 3 마이크로폰 (1446), 또는 제 4 마이크로폰 (1448) 중 하나에 나머지 마이크로폰들보다 더 가까이 있을 수도 있다. 예를 들어, 사운드 소스 (152) 는 제 2 마이크로폰 (148), 제 3 마이크로폰 (1446), 및 제 4 마이크로폰 (1448) 의 각각보다 제 1 마이크로폰 (146) 에 더 가까이 있을 수도 있다.
시간 등화기(들) (208) 는, 도 1을 참조하여 설명되는 바와 같이, 제 1 오디오 신호 (130), 제 2 오디오 신호 (132), 제 3 오디오 신호 (1430), 또는 제 4 오디오 신호 (1432) 중 특정 오디오 신호의 나머지 오디오 신호들의 각각에 비한 시프트를 나타내는 최종 시프트 값을 결정할 수도 있다. 예를 들어, 시간 등화기(들) (208) 는 제 1 오디오 신호 (130) 에 비한 제 2 오디오 신호 (132) 의 시프트를 나타내는 최종 시프트 값 (116), 제 1 오디오 신호 (130) 에 비한 제 3 오디오 신호 (1430) 의 시프트를 나타내는 제 2 최종 시프트 값 (1416), 제 1 오디오 신호 (130) 에 비한 제 4 오디오 신호 (1432) 의 시프트를 나타내는 제 3 최종 시프트 값 (1418), 또는 그 조합을 결정할 수도 있다.
시간 등화기(들) (208) 는 최종 시프트 값 (116), 제 2 최종 시프트 값 (1416), 및 제 3 최종 시프트 값 (1418) 에 기초하여 제 1 오디오 신호 (130), 제 2 오디오 신호 (132), 제 3 오디오 신호 (1430), 또는 제 4 오디오 신호 (1432) 중 하나를 기준 신호로서 선택할 수도 있다. 예를 들어, 시간 등화기(들) (208) 는, 최종 시프트 값 (116), 제 2 최종 시프트 값 (1416), 및 제 3 최종 시프트 값 (1418) 의 각각이, 대응하는 오디오 신호가 특정 오디오 신호에 비하여 시간적으로 지연됨 또는 대응하는 오디오 신호와 특정 오디오 신호 사이에 시간 지연이 없음을 나타내는 제 1 값 (예컨대, 음이 아닌 값) 을 가진다는 결정에 응답하여, 특정 신호 (예컨대, 제 1 오디오 신호 (130)) 를 기준 신호로서 선택할 수도 있다. 예시하기 위해, 시프트 값 (예컨대, 최종 시프트 값 (116), 제 2 최종 시프트 값 (1416), 또는 제 3 최종 시프트 값 (1418)) 의 양의 값이, 대응하는 신호 (예컨대, 제 2 오디오 신호 (132), 제 3 오디오 신호 (1430), 또는 제 4 오디오 신호 (1432)) 가 제 1 오디오 신호 (130) 에 비하여 시간적으로 지연됨을 나타낼 수도 있다. 시프트 값 (예컨대, 최종 시프트 값 (116), 제 2 최종 시프트 값 (1416), 또는 제 3 최종 시프트 값 (1418)) 의 영의 값이, 대응하는 신호 (예컨대, 제 2 오디오 신호 (132), 제 3 오디오 신호 (1430), 또는 제 4 오디오 신호 (1432)) 와 제 1 오디오 신호 (130) 사이에 시간 지연이 없음을 나타낼 수도 있다.
시간 등화기(들) (208) 는 제 1 오디오 신호 (130) 가 기준 신호에 해당함을 나타내기 위해 기준 신호 표시자 (164) 를 생성할 수도 있다. 시간 등화기(들) (208) 는 제 2 오디오 신호 (132), 제 3 오디오 신호 (1430), 및 제 4 오디오 신호 (1432) 가 타겟 신호들에 해당한다고 결정할 수도 있다.
대안적으로, 시간 등화기(들) (208) 는, 최종 시프트 값 (116), 제 2 최종 시프트 값 (1416), 또는 제 3 최종 시프트 값 (1418) 중 적어도 하나가, 특정 오디오 신호 (예컨대, 제 1 오디오 신호 (130)) 가 다른 오디오 신호 (예컨대, 제 2 오디오 신호 (132), 제 3 오디오 신호 (1430), 또는 제 4 오디오 신호 (1432)) 에 대해 지연됨을 나타내는 제 2 값 (예컨대, 음의 값) 을 가진다고 결정할 수도 있다.
시간 등화기(들) (208) 는 최종 시프트 값 (116), 제 2 최종 시프트 값 (1416), 및 제 3 최종 시프트 값 (1418) 으로부터 시프트 값들의 제 1 서브세트를 선택할 수도 있다. 제 1 서브세트의 각각의 시프트 값은 제 1 오디오 신호 (130) 가 대응하는 오디오 신호에 비하여 시간적으로 지연됨을 나타내는 값 (예컨대, 음의 값) 을 가질 수도 있다. 예를 들어, 제 2 최종 시프트 값 (1416) (예컨대, -12) 은 제 1 오디오 신호 (130) 가 제 3 오디오 신호 (1430) 에 비하여 시간적으로 지연됨을 나타낼 수도 있다. 제 3 최종 시프트 값 (1418) (예컨대, -14) 은 제 1 오디오 신호 (130) 가 제 4 오디오 신호 (1432) 에 비하여 시간적으로 지연됨을 나타낼 수도 있다. 시프트 값들의 제 1 서브세트는 제 2 최종 시프트 값 (1416) 과 제 3 최종 시프트 값 (1418) 을 포함할 수도 있다.
시간 등화기(들) (208) 는 제 1 오디오 신호 (130) 의 대응하는 오디오 신호에 대한 더 높은 지연을 나타내는 제 1 서브세트의 특정 시프트 값 (예컨대, 더 낮은 시프트 값) 을 선택할 수도 있다. 제 2 최종 시프트 값 (1416) 은 제 3 오디오 신호 (1430) 에 비한 제 1 오디오 신호 (130) 의 제 1 지연을 나타낼 수도 있다. 제 3 최종 시프트 값 (1418) 은 제 4 오디오 신호 (1432) 에 비한 제 1 오디오 신호 (130) 의 제 2 지연을 나타낼 수도 있다. 시간 등화기(들) (208) 는 제 2 지연이 제 1 지연보다 더 길다는 결정에 응답하여 시프트 값들의 제 1 서브세트로부터 제 3 최종 시프트 값 (1418) 을 선택할 수도 있다.
시간 등화기(들) (208) 는 특정 시프트 값에 대응하는 오디오 신호를 기준 신호로서 선택할 수도 있다. 예를 들어, 시간 등화기(들) (208) 는 제 3 최종 시프트 값 (1418) 에 대응하는 제 4 오디오 신호 (1432) 를 기준 신호로서 선택할 수도 있다. 시간 등화기(들) (208) 는 제 4 오디오 신호 (1432) 가 기준 신호에 해당함을 나타내기 위해 기준 신호 표시자 (164) 를 생성할 수도 있다. 시간 등화기(들) (208) 는 제 1 오디오 신호 (130), 제 2 오디오 신호 (132), 및 제 3 오디오 신호 (1430) 가 타겟 신호들에 해당한다고 결정할 수도 있다.
시간 등화기(들) (208) 는 기준 신호에 대응하는 특정 시프트 값에 기초하여 최종 시프트 값 (116) 과 제 2 최종 시프트 값 (1416) 을 업데이트할 수도 있다. 예를 들어, 시간 등화기(들) (208) 는 제 2 오디오 신호 (132) 에 비한 제 4 오디오 신호 (1432) 의 제 1 특정 지연을 나타내기 위해 제 3 최종 시프트 값 (1418) 에 기초하여 최종 시프트 값 (116) 을 업데이트할 수도 있다 (예컨대, 최종 시프트 값 (116) = 최종 시프트 값 (116) - 제 3 최종 시프트 값 (1418)). 예시하기 위해, 최종 시프트 값 (116) (예컨대, 2) 은 제 2 오디오 신호 (132) 에 비한 제 1 오디오 신호 (130) 의 지연을 나타낼 수도 있다. 제 3 최종 시프트 값 (1418) (예컨대, -14) 은 제 4 오디오 신호 (1432) 에 비한 제 1 오디오 신호 (130) 의 지연을 나타낼 수도 있다. 최종 시프트 값 (116) 과 제 3 최종 시프트 값 (1418) 사이의 제 1 차이 (예컨대, 16 = 2 - (-14)) 가 제 2 오디오 신호 (132) 에 비한 제 4 오디오 신호 (1432) 의 지연을 나타낼 수도 있다. 시간 등화기(들) (208) 는 제 1 차이에 기초하여 최종 시프트 값 (116) 을 업데이트할 수도 있다. 시간 등화기(들) (208) 는 제 3 오디오 신호 (1430) 에 비한 제 4 오디오 신호 (1432) 의 제 2 특정 지연을 나타내기 위해 제 3 최종 시프트 값 (1418) 에 기초하여 제 2 최종 시프트 값 (1416) (예컨대, 2) 을 업데이트할 수도 있다 (예컨대, 제 2 최종 시프트 값 (1416) = 제 2 최종 시프트 값 (1416) - 제 3 최종 시프트 값 (1418)). 예시하기 위해, 제 2 시프트 값 (1416) (예컨대, -12) 은 제 3 오디오 신호 (1430) 에 비한 제 1 오디오 신호 (130) 의 지연을 나타낼 수도 있다. 제 3 최종 시프트 값 (1418) (예컨대, -14) 은 제 4 오디오 신호 (1432) 에 비한 제 1 오디오 신호 (130) 의 지연을 나타낼 수도 있다. 제 2 최종 시프트 값 (1416) 과 제 3 최종 시프트 값 (1418) 사이의 제 2 차이 (예컨대, 2 = -12 - (-14)) 가 제 3 오디오 신호 (1430) 에 비한 제 4 오디오 신호 (1432) 의 지연을 나타낼 수도 있다. 시간 등화기(들) (208) 는 제 2 차이에 기초하여 제 2 최종 시프트 값 (1416) 을 업데이트할 수도 있다.
시간 등화기(들) (208) 는 제 1 오디오 신호 (130) 에 비한 제 4 오디오 신호 (1432) 의 지연을 나타내기 위해 제 3 최종 시프트 값 (1418) 을 반전시킬 수도 있다. 예를 들어, 시간 등화기(들) (208) 는 제 3 최종 시프트 값 (1418) 을 제 4 오디오 신호 (1432) 에 비한 제 1 오디오 신호 (130) 의 지연을 나타내는 제 1 값 (예컨대, -14) 으로부터 제 1 오디오 신호 (130) 에 비한 제 4 오디오 신호 (1432) 의 지연을 나타내는 제 2 값 (예컨대, +14) 으로 업데이트할 수도 있다 (예컨대, 제 3 최종 시프트 값 (1418) = - 제 3 최종 시프트 값 (1418)).
시간 등화기(들) (208) 는 절대 값 함수를 최종 시프트 값 (116) 에 적용함으로써 비인과적 시프트 값 (162) 을 생성할 수도 있다. 시간 등화기(들) (208) 는 절대 값 함수를 제 2 최종 시프트 값 (1416) 에 적용함으로써 제 2 비인과적 시프트 값 (1462) 을 생성할 수도 있다. 시간 등화기(들) (208) 는 절대 값 함수를 제 3 최종 시프트 값 (1418) 에 적용함으로써 제 3 비인과적 시프트 값 (1464) 을 생성할 수도 있다.
시간 등화기(들) (208) 는, 도 1을 참조하여 설명되는 바와 같이, 기준 신호에 기초하여 각각의 타겟 신호의 이득 파라미터를 생성할 수도 있다. 제 1 오디오 신호 (130) 가 기준 신호에 해당하는 일 예에서, 시간 등화기(들) (208) 는 제 1 오디오 신호 (130) 에 기초하여 제 2 오디오 신호 (132) 의 이득 파라미터 (160) 를, 제 1 오디오 신호 (130) 에 기초하여 제 3 오디오 신호 (1430) 의 제 2 이득 파라미터 (1460) 를, 제 1 오디오 신호 (130) 에 기초하여 제 4 오디오 신호 (1432) 의 제 3 이득 파라미터 (1461) 를, 또는 그 조합을 생성할 수도 있다.
시간 등화기(들) (208) 는 제 1 오디오 신호 (130), 제 2 오디오 신호 (132), 제 3 오디오 신호 (1430), 및 제 4 오디오 신호 (1432) 에 기초하여 인코딩된 신호 (예컨대, 중간 채널 신호 프레임) 를 생성할 수도 있다. 예를 들어, 인코딩된 신호 (예컨대, 제 1 인코딩된 신호 프레임 (1454)) 는 기준 신호 (예컨대, 제 1 오디오 신호 (130)) 의 샘플들과 타겟 신호들 (예컨대, 제 2 오디오 신호 (132), 제 3 오디오 신호 (1430), 및 제 4 오디오 신호 (1432)) 의 샘플들의 합에 대응할 수도 있다. 타겟 신호들 중 각각의 타겟 신호의 샘플들은, 도 1을 참조하여 설명되는 바와 같이, 대응하는 시프트 값에 기초하여 기준 신호의 샘플들에 비하여 시간 시프트될 수도 있다. 시간 등화기(들) (208) 는 이득 파라미터 (160) 와 제 2 오디오 신호 (132) 의 샘플들의 제 1 곱, 제 2 이득 파라미터 (1460) 와 제 3 오디오 신호 (1430) 의 샘플들의 제 2 곱, 및 제 3 이득 파라미터 (1461) 와 제 4 오디오 신호 (1432) 의 샘플들의 제 3 곱을 결정할 수도 있다. 제 1 인코딩된 신호 프레임 (1454) 는 제 1 오디오 신호 (130) 의 샘플들, 제 1 곱, 제 2 곱, 및 제 3 곱의 합에 대응할 수도 있다. 다시 말하면, 제 1 인코딩된 신호 프레임 (1454) 은 다음의 수식들에 기초하여 생성될 수도 있으며:
Figure 112018047690650-pct00034
수식 8a
Figure 112018047690650-pct00035
수식 8b
여기서 M은 중간 채널 프레임 (예컨대, 제 1 인코딩된 신호 프레임 (1454)) 에 대응하며,
Figure 112018047690650-pct00036
은 기준 신호 (예컨대, 제 1 오디오 신호 (130)) 의 샘플들에 대응하며,
Figure 112018047690650-pct00037
은 이득 파라미터 (160) 에 해당하며,
Figure 112018047690650-pct00038
는 제 2 이득 파라미터 (1460) 에 해당하며,
Figure 112018047690650-pct00039
은 제 3 이득 파라미터 (1461) 에 해당하며,
Figure 112018047690650-pct00040
은 비인과적 시프트 값 (162) 에 해당하며,
Figure 112018047690650-pct00041
는 제 2 비인과적 시프트 값 (1462) 에 해당하며,
Figure 112018047690650-pct00042
는 제 3 비인과적 시프트 값 (1464) 에 해당하며,
Figure 112018047690650-pct00043
은 제 1 타겟 신호 (예컨대, 제 2 오디오 신호 (132)) 의 샘플들에 대응하며,
Figure 112018047690650-pct00044
는 제 2 타겟 신호 (예컨대, 제 3 오디오 신호 (1430)) 의 샘플들에 대응하고,
Figure 112018047690650-pct00045
는 제 3 타겟 신호 (예컨대, 제 4 오디오 신호 (1432)) 의 샘플들에 대응한다.
시간 등화기(들) (208) 는 타겟 신호들의 각각에 대응하는 인코딩된 신호 (예컨대, 사이드 채널 신호 프레임) 를 생성할 수도 있다. 예를 들어, 시간 등화기(들) (208) 는 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 에 기초하여 제 2 인코딩된 신호 프레임 (566) 을 생성할 수도 있다. 예를 들어, 제 2 인코딩된 신호 프레임 (566) 은, 도 5를 참조하여 설명되는 바와 같이, 제 1 오디오 신호 (130) 의 샘플들과 제 2 오디오 신호 (132) 의 샘플들의 차이에 해당할 수도 있다. 마찬가지로, 시간 등화기(들) (208) 는 제 1 오디오 신호 (130) 및 제 3 오디오 신호 (1430) 에 기초하여 제 3 인코딩된 신호 프레임 (1466) (예컨대, 사이드 채널 프레임) 을 생성할 수도 있다. 예를 들어, 제 3 인코딩된 신호 프레임 (1466) 은 제 1 오디오 신호 (130) 의 샘플들과 제 3 오디오 신호 (1430) 의 샘플들의 차이에 해당할 수도 있다. 시간 등화기(들) (208) 는 제 1 오디오 신호 (130) 및 제 4 오디오 신호 (1432) 에 기초하여 제 4 인코딩된 신호 프레임 (1468) (예컨대, 사이드 채널 프레임) 을 생성할 수도 있다. 예를 들어, 제 4 인코딩된 신호 프레임 (1468) 은 제 1 오디오 신호 (130) 의 샘플들과 제 4 오디오 신호 (1432) 의 샘플들의 차이에 해당할 수도 있다. 제 2 인코딩된 신호 프레임 (566), 제 3 인코딩된 신호 프레임 (1466), 및 제 4 인코딩된 신호 프레임 (1468) 은 다음의 수식들 중 하나의 수식에 기초하여 생성될 수도 있으며:
Figure 112018047690650-pct00046
수식 9a
Figure 112018047690650-pct00047
수식 9b
여기서 SP는 사이드 채널 프레임에 대응하며,
Figure 112018047690650-pct00048
은 기준 신호 (예컨대, 제 1 오디오 신호 (130)) 의 샘플들에 대응하며,
Figure 112018047690650-pct00049
는 연관된 타겟 신호에 대응하는 이득 파라미터에 해당하며,
Figure 112018047690650-pct00050
는 연관된 타겟 신호에 대응하는 비인과적 시프트 값에 해당하고,
Figure 112018047690650-pct00051
는 연관된 타겟 신호의 샘플들에 대응한다. 예를 들어, SP는 제 2 인코딩된 신호 프레임 (566) 에 대응할 수도 있으며,
Figure 112018047690650-pct00052
는 이득 파라미터 (160) 에 해당할 수도 있으며,
Figure 112018047690650-pct00053
는 비인과적 시프트 값 (162) 에 해당할 수도 있고,
Figure 112018047690650-pct00054
은 제 2 오디오 신호 (132) 의 샘플들에 대응할 수도 있다. 다른 예로서, SP는 제 3 인코딩된 신호 프레임 (1466) 에 대응할 수도 있으며,
Figure 112018047690650-pct00055
는 제 2 이득 파라미터 (1460) 에 해당할 수도 있으며,
Figure 112018047690650-pct00056
는 제 2 비인과적 시프트 값 (1462) 에 해당할 수도 있고,
Figure 112018047690650-pct00057
는 제 3 오디오 신호 (1430) 의 샘플들에 대응할 수도 있다. 추가의 예로서, SP는 제 4 인코딩된 신호 프레임 (1468) 에 대응할 수도 있으며,
Figure 112018047690650-pct00058
는 제 3 이득 파라미터 (1461) 에 해당할 수도 있으며,
Figure 112018047690650-pct00059
는 제 3 비인과적 시프트 값 (1464) 에 해당할 수도 있고,
Figure 112018047690650-pct00060
는 제 4 오디오 신호 (1432) 의 샘플들에 대응할 수도 있다.
시간 등화기(들) (208) 는 제 2 최종 시프트 값 (1416), 제 3 최종 시프트 값 (1418), 제 2 비인과적 시프트 값 (1462), 제 3 비인과적 시프트 값 (1464), 제 2 이득 파라미터 (1460), 제 3 이득 파라미터 (1461), 제 1 인코딩된 신호 프레임 (1454), 제 2 인코딩된 신호 프레임 (566), 제 3 인코딩된 신호 프레임 (1466), 제 4 인코딩된 신호 프레임 (1468), 또는 그 조합을 메모리 (153) 에 저장할 수도 있다. 예를 들어, 분석 데이터 (190) 는 제 2 최종 시프트 값 (1416), 제 3 최종 시프트 값 (1418), 제 2 비인과적 시프트 값 (1462), 제 3 비인과적 시프트 값 (1464), 제 2 이득 파라미터 (1460), 제 3 이득 파라미터 (1461), 제 1 인코딩된 신호 프레임 (1454), 제 3 인코딩된 신호 프레임 (1466), 제 4 인코딩된 신호 프레임 (1468), 또는 그 조합을 포함할 수도 있다.
송신기 (110) 는 제 1 인코딩된 신호 프레임 (1454), 제 2 인코딩된 신호 프레임 (566), 제 3 인코딩된 신호 프레임 (1466), 제 4 인코딩된 신호 프레임 (1468), 이득 파라미터 (160), 제 2 이득 파라미터 (1460), 제 3 이득 파라미터 (1461), 기준 신호 표시자 (164), 비인과적 시프트 값 (162), 제 2 비인과적 시프트 값 (1462), 제 3 비인과적 시프트 값 (1464), 또는 그 조합을 송신할 수도 있다. 기준 신호 표시자 (164) 는 도 2의 기준 신호 표시자들 (264) 에 해당할 수도 있다. 제 1 인코딩된 신호 프레임 (1454), 제 2 인코딩된 신호 프레임 (566), 제 3 인코딩된 신호 프레임 (1466), 제 4 인코딩된 신호 프레임 (1468), 또는 그 조합은 도 2의 인코딩된 신호들 (202) 에 대응할 수도 있다. 최종 시프트 값 (116), 제 2 최종 시프트 값 (1416), 제 3 최종 시프트 값 (1418), 또는 그 조합은 도 2의 최종 시프트 값들 (216) 에 해당할 수도 있다. 비인과적 시프트 값 (162), 제 2 비인과적 시프트 값 (1462), 제 3 비인과적 시프트 값 (1464), 또는 그 조합은 도 2의 비인과적 시프트 값들 (262) 에 해당할 수도 있다. 이득 파라미터 (160), 제 2 이득 파라미터 (1460), 제 3 이득 파라미터 (1461), 또는 그 조합은 도 2의 이득 파라미터들 (260) 에 해당할 수도 있다.
도 15를 참조하면, 시스템의 구체적인 예가 도시되고 전체가 1500으로 지정된다. 시스템 (1500) 은 본 명세서에서 설명되는 바와 같이, 시간 등화기(들) (208) 가 다수의 기준 신호들을 결정하도록 구성될 수도 있다는 점에서 도 14의 시스템 (1400) 과는 상이하다.
동작 동안, 시간 등화기(들) (208) 는 제 1 오디오 신호 (130) 를 제 1 마이크로폰 (146) 을 통해, 제 2 오디오 신호 (132) 를 제 2 마이크로폰 (148) 을 통해, 제 3 오디오 신호 (1430) 를 제 3 마이크로폰 (1446) 을 통해, 제 4 오디오 신호 (1432) 를 제 4 마이크로폰 (1448) 을 통해, 또는 그 조합으로 수신할 수도 있다. 시간 등화기(들) (208) 는, 도 1 및 도 5를 참조하여 설명되는 바와 같이, 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132) 에 기초하여 최종 시프트 값 (116), 비인과적 시프트 값 (162), 이득 파라미터 (160), 기준 신호 표시자 (164), 제 1 인코딩된 신호 프레임 (564), 제 2 인코딩된 신호 프레임 (566), 또는 그 조합을 결정할 수도 있다. 마찬가지로, 시간 등화기(들) (208) 는 제 3 오디오 신호 (1430) 및 제 4 오디오 신호 (1432) 에 기초하여 제 2 최종 시프트 값 (1516), 제 2 비인과적 시프트 값 (1562), 제 2 이득 파라미터 (1560), 제 2 기준 신호 표시자 (1552), 제 3 인코딩된 신호 프레임 (1564) (예컨대, 중간 채널 신호 프레임), 제 4 인코딩된 신호 프레임 (1566) (예컨대, 사이드 채널 신호 프레임), 또는 그 조합을 결정할 수도 있다.
송신기 (110) 는 제 1 인코딩된 신호 프레임 (564), 제 2 인코딩된 신호 프레임 (566), 제 3 인코딩된 신호 프레임 (1564), 제 4 인코딩된 신호 프레임 (1566), 이득 파라미터 (160), 제 2 이득 파라미터 (1560), 비인과적 시프트 값 (162), 제 2 비인과적 시프트 값 (1562), 기준 신호 표시자 (164), 제 2 기준 신호 표시자 (1552), 또는 그 조합을 송신할 수도 있다. 제 1 인코딩된 신호 프레임 (564), 제 2 인코딩된 신호 프레임 (566), 제 3 인코딩된 신호 프레임 (1564), 제 4 인코딩된 신호 프레임 (1566), 또는 그 조합은 도 2의 인코딩된 신호들 (202) 에 대응할 수도 있다. 이득 파라미터 (160), 제 2 이득 파라미터 (1560), 또는 둘 다는 도 2의 이득 파라미터들 (260) 에 해당할 수도 있다. 최종 시프트 값 (116), 제 2 최종 시프트 값 (1516), 또는 둘 다는 도 2의 최종 시프트 값들 (216) 에 해당할 수도 있다. 비인과적 시프트 값 (162), 제 2 비인과적 시프트 값 (1562), 또는 둘 다는 도 2의 비인과적 시프트 값들 (262) 에 해당할 수도 있다. 기준 신호 표시자 (164), 제 2 기준 신호 표시자 (1552), 또는 둘 다는 도 2의 기준 신호 표시자들 (264) 에 해당할 수도 있다.
도 16을 참조하면, 특정 동작 방법을 예시하는 흐름도가 도시되고 전체가 1600으로 지정된다. 방법 (1600) 은 도 1의 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 또는 그 조합에 의해 수행될 수도 있다.
방법 (1600) 은 1602에서, 제 1 디바이스에서, 제 2 오디오 신호에 비한 제 1 오디오 신호의 시프트를 나타내는 최종 시프트 값을 결정하는 단계를 포함한다. 예를 들어, 도 1의 제 1 디바이스 (104) 의 시간 등화기 (108) 는, 도 1에 관해 설명되는 바와 같이, 제 2 오디오 신호 (132) 에 비한 제 1 오디오 신호 (130) 의 시프트를 나타내는 최종 시프트 값 (116) 을 결정할 수도 있다. 다른 예로서, 시간 등화기 (108) 는 도 14에 관해 설명되는 바와 같이, 제 2 오디오 신호 (132) 에 비한 제 1 오디오 신호 (130) 의 시프트를 나타내는 최종 시프트 값 (116), 제 3 오디오 신호 (1430) 에 비한 제 1 오디오 신호 (130) 의 시프트를 나타내는 제 2 최종 시프트 값 (1416), 제 4 오디오 신호 (1432) 에 비한 제 1 오디오 신호 (130) 의 시프트를 나타내는 제 3 최종 시프트 값 (1418), 또는 그 조합을 결정할 수도 있다. 추가의 예로서, 시간 등화기 (108) 는, 도 15를 참조하여 설명되는 바와 같이, 제 2 오디오 신호 (132) 에 비한 제 1 오디오 신호 (130) 의 시프트를 나타내는 최종 시프트 값 (116), 제 4 오디오 신호 (1432) 에 비한 제 3 오디오 신호 (1430) 의 시프트를 나타내는 제 2 최종 시프트 값 (1516), 또는 둘 다를 결정할 수도 있다.
그 방법 (1600) 은 1604에서, 제 1 디바이스에서, 제 1 오디오 신호의 제 1 샘플들 및 제 2 오디오 신호의 제 2 샘플들에 기초하여 적어도 하나의 인코딩된 신호를 생성하는 단계를 또한 포함한다. 예를 들어, 도 1의 제 1 디바이스 (104) 의 시간 등화기 (108) 는, 도 5을 참조하여 추가로 설명되는 바와 같이, 도 3의 샘플들 (326~332) 및 도 3의 샘플들 (358~364) 에 기초하여 인코딩된 신호들 (102) 을 생성할 수도 있다. 샘플들 (358~364) 은 최종 시프트 값 (116) 에 기초한 양만큼 샘플들 (326~332) 에 비하여 시간 시프트될 수도 있다.
다른 예로서, 시간 등화기 (108) 는, 도 14를 참조하여 설명되는 바와 같이, 도 3의 샘플들 (326~332), 샘플들 (358~364), 제 3 오디오 신호 (1430) 의 제 3 샘플들, 제 4 오디오 신호 (1432) 의 제 4 샘플들, 또는 그 조합에 기초하여 제 1 인코딩된 신호 프레임 (1454) 을 생성할 수도 있다. 샘플들 (358~364), 제 3 샘플들, 및 제 4 샘플들은 각각 최종 시프트 값 (116), 제 2 최종 시프트 값 (1416), 및 제 3 최종 시프트 값 (1418) 에 기초한 양만큼 샘플들 (326~332) 에 비하여 시간 시프트될 수도 있다.
시간 등화기 (108) 는, 도 5 및 도 14를 참조하여 설명되는 바와 같이, 도 3의 샘플들 (326~332) 및 샘플들 (358~364) 에 기초하여 제 2 인코딩된 신호 프레임 (566) 을 생성할 수도 있다. 시간 등화기 (108) 는 샘플들 (326~332) 및 제 3 샘플들에 기초하여 제 3 인코딩된 신호 프레임 (1466) 을 생성할 수도 있다. 시간 등화기 (108) 는 샘플들 (326~332) 및 제 4 샘플들에 기초하여 제 4 인코딩된 신호 프레임 (1468) 을 생성할 수도 있다.
추가의 예로서, 시간 등화기 (108) 는, 도 5 및 도 15를 참조하여 설명되는 바와 같이, 샘플들 (326~332) 및 샘플들 (358~364) 에 기초하여 제 1 인코딩된 신호 프레임 (564) 및 제 2 인코딩된 신호 프레임 (566) 을 생성할 수도 있다. 시간 등화기 (108) 는, 도 15를 참조하여 설명되는 바와 같이, 제 3 오디오 신호 (1430) 의 제 3 샘플들 및 제 4 오디오 신호 (1432) 의 제 4 샘플들에 기초하여 제 3 인코딩된 신호 프레임 (1564) 및 제 4 인코딩된 신호 프레임 (1566) 을 생성할 수도 있다. 제 4 샘플들은, 도 15를 참조하여 설명되는 바와 같이, 제 2 최종 시프트 값 (1516) 에 기초하여 제 3 샘플들에 비하여 시간 시프트될 수도 있다.
방법 (1600) 은 1606에서 제 1 디바이스에서부터 제 2 디바이스로 적어도 하나의 인코딩된 신호를 전송하는 단계를 더 포함한다. 예를 들어, 도 1의 송신기 (110) 는, 도 1을 참조하여 추가로 설명되는 바와 같이, 제 1 디바이스 (104) 로부터의 적어도 인코딩된 신호들 (102) 을 제 2 디바이스 (106) 로 전송할 수도 있다. 다른 예로서, 송신기 (110) 는, 도 14를 참조하여 설명되는 바와 같이, 적어도 제 1 인코딩된 신호 프레임 (1454), 제 2 인코딩된 신호 프레임 (566), 제 3 인코딩된 신호 프레임 (1466), 제 4 인코딩된 신호 프레임 (1468), 또는 그 조합을 전송할 수도 있다. 추가의 예로서, 송신기 (110) 는, 도 15를 참조하여 설명되는 바와 같이, 적어도 제 1 인코딩된 신호 프레임 (564), 제 2 인코딩된 신호 프레임 (566), 제 3 인코딩된 신호 프레임 (1564), 제 4 인코딩된 신호 프레임 (1566), 또는 그 조합을 전송할 수도 있다.
방법 (1600) 은 따라서 제 1 오디오 신호의 제 1 샘플들과 제 2 오디오 신호에 비한 제 1 오디오 신호의 시프트를 나타내는 시프트 값에 기초하여 제 1 오디오 신호에 비하여 시간 시프트된 제 2 오디오 신호의 제 2 샘플들에 기초하여 인코딩된 신호들을 생성하는 것을 가능하게 할 수도 있다. 제 2 오디오 신호의 샘플들을 시간 시프트하는 것은 조인트-채널 코딩 효율을 개선시킬 수도 있는 제 1 오디오 신호와 제 2 오디오 신호 사이의 차이를 감소시킬 수도 있다. 제 1 오디오 신호 (130) 또는 제 2 오디오 신호 (132) 중 하나는 최종 시프트 값 (116) 의 부호 (예컨대, 음 또는 양) 에 기초하여 기준 신호로서 지정될 수도 있다. 제 1 오디오 신호 (130) 또는 제 2 오디오 신호 (132) 중 다른 하나 (예컨대, 타겟 신호) 는 비인과적 시프트 값 (162) (예컨대, 최종 시프트 값 (116) 의 절대 값) 에 기초하여 시간 시프트되거나 또는 오프셋될 수도 있다.
도 17을 참조하면, 시스템의 구체적인 예가 도시되고 전체가 1700으로 지정된다. 시스템 (1700) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (1700) 의 하나 이상의 컴포넌트들을 포함할 수도 있다.
시스템 (1700) 은 시프트 추정기 (1704) 를 통해, 프레임 간 시프트 변화 분석기 (1706) 에, 기준 신호 지정기 (508) 에, 또는 둘 다에 커플링된 신호 프리프로세서 (1702) 를 포함한다. 특정 양태에서, 신호 프리프로세서 (1702) 는 리샘플러 (504) 에 해당할 수도 있다. 특정 양태에서, 시프트 추정기 (1704) 는 도 1의 시간 등화기 (108) 에 해당할 수도 있다. 예를 들어, 시프트 추정기 (1704) 는 시간 등화기 (108) 의 하나 이상의 컴포넌트들을 포함할 수도 있다.
프레임 간 시프트 변화 분석기 (1706) 는, 타겟 신호 조정기 (1708) 를 통해, 이득 파라미터 생성기 (514) 에 커플링될 수도 있다. 기준 신호 지정기 (508) 는 프레임 간 시프트 변화 분석기 (1706) 에, 이득 파라미터 생성기 (514) 에, 또는 둘 다에 커플링될 수도 있다. 타겟 신호 조정기 (1708) 는 중간사이드 (midside) 생성기 (1710) 에 커플링될 수도 있다. 특정 양태에서, 중간사이드 생성기 (1710) 는 도 5의 신호 생성기 (516) 에 해당할 수도 있다. 이득 파라미터 생성기 (514) 는 중간사이드 생성기 (1710) 에 커플링될 수도 있다. 중간사이드 생성기 (1710) 는 대역폭 확장 (bandwidth extension, BWE) 공간 밸런서 (1712), 중간 BWE 코더 (1714), 저 대역 (LB) 신호 재생성기 (1716), 또는 그 조합에 커플링될 수도 있다. LB 신호 재생성기 (1716) 는 LB 사이드 코어 코더 (1718), LB 중간 코어 코더 (1720), 또는 둘 다에 커플링될 수도 있다. LB 중간 코어 코더 (1720) 는 중간 BWE 코더 (1714), LB 사이드 코어 코더 (1718), 또는 둘 다에 커플링될 수도 있다. 중간 BWE 코더 (1714) 는 BWE 공간 밸런서 (1712) 에 커플링될 수도 있다.
동작 동안, 신호 프리프로세서 (1702) 는 오디오 신호 (1728) 를 수신할 수도 있다. 예를 들어, 신호 프리프로세서 (1702) 는 입력 인터페이스(들) (112) 로부터 오디오 신호 (1728) 를 수신할 수도 있다. 오디오 신호 (1728) 는 제 1 오디오 신호 (130), 제 2 오디오 신호 (132), 또는 둘 다를 포함할 수도 있다. 신호 프리프로세서 (1702) 는, 도 18을 참조하여 추가로 설명되는 바와 같이, 제 1 재샘플링된 신호 (530), 제 2 재샘플링된 신호 (532), 또는 둘 다를 생성할 수도 있다. 신호 프리프로세서 (1702) 는 제 1 재샘플링된 신호 (530), 제 2 재샘플링된 신호 (532), 또는 둘 다를 시프트 추정기 (1704) 에 제공할 수도 있다.
시프트 추정기 (1704) 는, 도 19를 참조하여 추가로 설명되는 바와 같이, 제 1 재샘플링된 신호 (530), 제 2 재샘플링된 신호 (532), 또는 둘 다에 기초하여 최종 시프트 값 (116) (T), 비인과적 시프트 값 (162), 또는 둘 다를 생성할 수도 있다. 시프트 추정기 (1704) 는 최종 시프트 값 (116) 을 프레임 간 시프트 변화 분석기 (1706), 기준 신호 지정기 (508), 또는 둘 다에 제공할 수도 있다.
기준 신호 지정기 (508) 는, 도 5, 도 12, 및 도 13을 참조하여 추가로 설명되는 바와 같이, 기준 신호 표시자 (164) 를 생성할 수도 있다. 기준 신호 표시자 (164) 는, 제 1 오디오 신호 (130) 가 기준 신호에 해당함을 기준 신호 표시자 (164) 가 나타낸다는 결정에 응답하여, 기준 신호 (1740) 가 제 1 오디오 신호 (130) 를 포함하고 타겟 신호 (1742) 가 제 2 오디오 신호 (132) 를 포함한다고 결정할 수도 있다. 대안적으로, 기준 신호 표시자 (164) 는, 제 2 오디오 신호 (132) 가 기준 신호에 해당함을 기준 신호 표시자 (164) 가 나타낸다는 결정에 응답하여, 기준 신호 (1740) 가 제 2 오디오 신호 (132) 를 포함하고 타겟 신호 (1742) 가 제 1 오디오 신호 (130) 를 포함한다고 결정할 수도 있다. 기준 신호 지정기 (508) 는 기준 신호 표시자 (164) 를 프레임 간 시프트 변화 분석기 (1706) 에, 이득 파라미터 생성기 (514) 에, 또는 둘 다에 제공할 수도 있다.
프레임 간 시프트 변화 분석기 (1706) 는, 도 21을 참조하여 추가로 설명되는 바와 같이, 타겟 신호 (1742), 기준 신호 (1740), 제 1 시프트 값 (962) (Tprev), 최종 시프트 값 (116) (T), 기준 신호 표시자 (164), 또는 그 조합에 기초하여 타겟 신호 표시자 (1764) 를 생성할 수도 있다. 프레임 간 시프트 변화 분석기 (1706) 는 타겟 신호 표시자 (1764) 를 타겟 신호 조정기 (1708) 에 제공할 수도 있다.
타겟 신호 조정기 (1708) 는 타겟 신호 표시자 (1764), 타겟 신호 (1742), 또는 둘 다에 기초하여 조정된 타겟 신호 (1752) 를 생성할 수도 있다. 타겟 신호 조정기 (1708) 는 제 1 시프트 값 (962) (Tprev) 으로부터 최종 시프트 값 (116) (T) 으로의 시간적 시프트 진화에 기초하여 타겟 신호 (1742) 를 조정할 수도 있다. 예를 들어, 제 1 시프트 값 (962) 은 프레임 (302) 에 대응하는 최종 시프트 값을 포함할 수도 있다. 타겟 신호 조정기 (1708) 는, 최종 시프트 값이 프레임 (304) 에 대응하는 최종 시프트 값 (116) (예컨대, T=4) 보다 더 낮은 프레임 (302) 에 대응하는 제 1 값 (예컨대, Tprev=2) 을 갖는 제 1 시프트 값 (962) 으로부터 변경하였다는 결정에 응답하여, 프레임 경계들에 대응하는 타겟 신호 (1742) 의 샘플들의 서브세트가 조정된 타겟 신호 (1752) 를 생성하기 위해 평활화 및 느린 시프팅을 통해 떨어지도록 타겟 신호 (1742) 를 보간할 수도 있다. 대안적으로, 타겟 신호 조정기 (1708) 는, 최종 시프트 값이 최종 시프트 값 (116) (예컨대, T=2) 보다 더 큰 제 1 시프트 값 (962) (예컨대, Tprev=4) 으로부터 변경하였다는 결정에 응답하여, 프레임 경계들에 대응하는 타겟 신호 (1742) 의 샘플들의 서브세트가 조정된 타겟 신호 (1752) 를 생성하기 위해 평활화 및 느린 시프팅을 통해 반복되도록 타겟 신호 (1742) 를 보간할 수도 있다. 평활화 및 느린 시프팅은 하이브리드 싱크-보간기 및 라그랑즈-보간기에 기초하여 수행될 수도 있다. 타겟 신호 조정기 (1708) 는, 최종 시프트 값이 제 1 시프트 값 (962) 으로부터 최종 시프트 값 (116) (예컨대, Tprev=T) 으로 변경되지 않는다는 결정에 응답하여, 조정된 타겟 신호 (1752) 를 생성하기 위해 타겟 신호 (1742) 를 일시적으로 오프셋시킬 수도 있다. 타겟 신호 조정기 (1708) 는 조정된 타겟 신호 (1752) 를 이득 파라미터 생성기 (514), 중간사이드 생성기 (1710), 또는 둘 다에 제공할 수도 있다.
이득 파라미터 생성기 (514) 는, 도 20을 참조하여 추가로 설명되는 바와 같이, 기준 신호 표시자 (164), 조정된 타겟 신호 (1752), 기준 신호 (1740), 또는 그 조합에 기초하여 이득 파라미터 (160) 를 생성할 수도 있다. 이득 파라미터 생성기 (514) 는 이득 파라미터 (160) 를 중간사이드 생성기 (1710) 에 제공할 수도 있다.
중간사이드 생성기 (1710) 는 조정된 타겟 신호 (1752), 기준 신호 (1740), 이득 파라미터 (160), 또는 그 조합에 기초하여, 중간 신호 (1770), 사이드 신호 (1772), 또는 둘 다를 생성할 수도 있다. 예를 들어, 중간사이드 생성기 (1710) 는 M이 중간 신호 (1770) 에 대응하며, gD가 이득 파라미터 (160) 에 해당하며, Ref(n) 이 기준 신호 (1740) 의 샘플들에 대응하고, Targ(n+N1) 이 조정된 타겟 신호 (1752) 의 샘플들에 대응하는 수식 2a 또는 수식 2b에 기초하여 중간 신호 (1770) 를 생성할 수도 있다. 중간사이드 생성기 (1710) 는 S가 사이드 신호 (1772) 에 대응하며, gD가 이득 파라미터 (160) 에 해당하며, Ref(n) 이 기준 신호 (1740) 의 샘플들에 대응하고, Targ(n+N1) 이 조정된 타겟 신호 (1752) 의 샘플들에 대응하는 수식 3a 또는 수식 3b에 기초하여 사이드 신호 (1772) 를 생성할 수도 있다.
중간사이드 생성기 (1710) 는 사이드 신호 (1772) 를 BWE 공간 밸런서 (1712), LB 신호 재생성기 (1716), 또는 둘 다에 제공할 수도 있다. 중간사이드 생성기 (1710) 는 중간 신호 (1770) 를 중간 BWE 코더 (1714), LB 신호 재생성기 (1716), 또는 둘 다에 제공할 수도 있다. LB 신호 재생성기 (1716) 는 신호 (1770) 에 기초하여 LB 중간 신호 (1760) 를 생성할 수도 있다. 예를 들어, LB 신호 재생성기 (1716) 는 중간 신호 (1770) 를 필터링함으로써 LB 중간 신호 (1760) 를 생성할 수도 있다. LB 신호 재생성기 (1716) 는 LB 중간 신호 (1760) 를 LB 중간 코어 코더 (1720) 에 제공할 수도 있다. LB 중간 코어 코더 (1720) 는 LB 중간 신호 (1760) 에 기초하여 파라미터들 (예컨대, 코어 파라미터들 (1771), 파라미터들 (1775), 또는 둘 다) 을 생성할 수도 있다. 코어 파라미터들 (1771), 파라미터들 (1775), 또는 둘 다는, 여기 파라미터, 보이싱 파라미터 등을 포함할 수도 있다. LB 중간 코어 코더 (1720) 는 코어 파라미터들 (1771) 을 중간 BWE 코더 (1714) 에, 파라미터들 (1775) 를 LB 사이드 코어 코더 (1718) 에, 또는 둘 다로 제공할 수도 있다. 코어 파라미터들 (1771) 은 파라미터들 (1775) 과는 동일하거나 또는 별개일 수도 있다. 예를 들어, 코어 파라미터들 (1771) 은 파라미터들 (1775) 중 하나 이상을 포함할 수도 있거나, 파라미터들 (1775) 의 하나 이상을 배제할 수도 있거나, 하나 이상의 추가적인 파라미터들을 포함시킬 수도 있거나, 또는 그 조합일 수도 있다. 중간 BWE 코더 (1714) 는 중간 신호 (1770), 코어 파라미터들 (1771), 또는 그 조합에 기초하여 코딩된 중간 BWE 신호 (1773) 를 생성할 수도 있다. 중간 BWE 코더 (1714) 는 코딩된 중간 BWE 신호 (1773) 를 BWE 공간 밸런서 (1712) 에 제공할 수도 있다.
LB 신호 재생성기 (1716) 는 사이드 신호 (1772) 에 기초하여 LB 사이드 신호 (1762) 를 생성할 수도 있다. 예를 들어, LB 신호 재생성기 (1716) 는 사이드 신호 (1772) 를 필터링함으로써 LB 사이드 신호 (1762) 를 생성할 수도 있다. LB 신호 재생성기 (1716) 는 LB 사이드 신호 (1762) 를 LB 사이드 코어 코더 (1718) 에 제공할 수도 있다.
도 18을 참조하면, 시스템의 구체적인 예가 도시되고 전체가 1800으로 지정된다. 시스템 (1800) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (1800) 의 하나 이상의 컴포넌트들을 포함할 수도 있다.
시스템 (1800) 은 신호 프리프로세서 (1702) 를 포함한다. 신호 프리프로세서 (1702) 는 재샘플링 계수 추정기 (1830), 디앰퍼시저 (1804), 디앰퍼시저 (1834), 또는 그 조합에 커플링되는 디멀티플렉서 (DeMUX) (1802) 를 포함할 수도 있다. 디앰퍼시저 (1804) 는, 리샘플러 (1806) 를 통해, 디앰퍼시저 (1808) 에 커플링될 수도 있다. 디앰퍼시저 (1808) 는, 리샘플러 (1810) 를 통해, 틸트 밸런서 (1812) 에 커플링될 수도 있다. 디앰퍼시저 (1834) 는, 리샘플러 (1836) 를 통해, 디앰퍼시저 (1838) 에 커플링될 수도 있다. 디앰퍼시저 (1838) 는, 리샘플러 (1840) 를 통해, 틸트 밸런서 (1842) 에 커플링될 수도 있다.
동작 동안, 디먹스 (deMUX, 1802) 는 오디오 신호 (1728) 를 역다중화함으로써 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 를 생성할 수도 있다. 디먹스 (1802) 는 제 1 오디오 신호 (130), 제 2 오디오 신호 (132), 또는 둘 다에 연관된 제 1 샘플 레이트 (1860) 를 재샘플링 계수 추정기 (1830) 에 제공할 수도 있다. 디먹스 (1802) 는 제 1 오디오 신호 (130) 를 디앰퍼시저 (1804) 에, 제 2 오디오 신호 (132) 를 디앰퍼시저 (1834) 에, 또는 둘 다를 제공할 수도 있다.
재샘플링 계수 추정기 (1830) 는 제 1 샘플 레이트 (1860), 제 2 샘플 레이트 (1880), 또는 둘 다에 기초하여 제 1 계수 (1862) (d1), 제 2 계수 (1882) (d2), 또는 둘 다를 생성할 수도 있다. 재샘플링 계수 추정기 (1830) 는 제 1 샘플 레이트 (1860), 제 2 샘플 레이트 (1880), 또는 둘 다에 기초하여 재샘플링 계수 (D) 를 결정할 수도 있다. 예를 들어, 재샘플링 계수 (D) 는 제 1 샘플 레이트 (1860) 와 제 2 샘플 레이트 (1880) 의 비율에 해당할 수도 있다 (예컨대, 재샘플링 계수 (D) = 제 2 샘플 레이트 (1880) / 제 1 샘플 레이트 (1860) 또는 재샘플링 계수 (D) = 제 1 샘플 레이트 (1860) / 제 2 샘플 레이트 (1880)). 제 1 계수 (1862) (d1), 제 2 계수 (1882) (d2), 또는 둘 다는 재샘플링 계수 (D) 의 계수들일 수도 있다. 예를 들어, 재샘플링 계수 (D) 는 제 1 계수 (1862) (d1) 와 제 2 계수 (1882) (d2) 의 곱에 해당할 수도 있다 (예컨대, 재샘플링 계수 (D) = 제 1 계수 (1862) (d1) * 제 2 계수 (1882) (d2)). 일부 구현예들에서, 제 1 계수 (1862) (d1) 는 제 1 값 (예컨대, 1) 을 가질 수도 있거나, 제 2 계수 (1882) (d2) 는 제 2 값 (예컨대, 1) 을 가질 수도 있거나, 또는 둘 다일 수도 있으며, 본 명세서에서 설명되는 바와 같이, 이는 재샘플링 스테이지들을 바이패스한다.
디앰퍼시저 (1804) 는, 도 6을 참조하여 설명되는 바와 같이, IIR 필터 (예컨대, 제 1 차 IIR 필터) 에 기초하여 제 1 오디오 신호 (130) 를 필터링함으로써 디앰프시스된 신호 (1864) 를 생성할 수도 있다. 디앰퍼시저 (1804) 는 디앰프시스된 신호 (1864) 를 리샘플러 (1806) 에 제공할 수도 있다. 리샘플러 (1806) 는 제 1 계수 (1862) (d1) 에 기초하여 디앰프시스된 신호 (1864) 를 재샘플링함으로써 재샘플링된 신호 (1866) 를 생성할 수도 있다. 리샘플러 (1806) 는 재샘플링된 신호 (1866) 를 디앰퍼시저 (1808) 에 제공할 수도 있다. 디앰퍼시저 (1808) 는, 도 6을 참조하여 설명되는 바와 같이, IIR 필터에 기초하여 재샘플링된 신호 (1866) 를 필터링함으로써 디앰프시스된 신호 (1868) 를 생성할 수도 있다. 디앰퍼시저 (1808) 는 디앰프시스된 신호 (1868) 를 리샘플러 (1810) 에 제공할 수도 있다. 리샘플러 (1810) 는 제 2 계수 (1882) (d2) 에 기초하여 디앰프시스된 신호 (1868) 를 재샘플링함으로써 재샘플링된 신호 (1870) 를 생성할 수도 있다.
일부 구현예들에서, 제 1 계수 (1862) (d1) 는 제 1 값 (예컨대, 1) 을 가질 수도 있거나, 제 2 계수 (1882) (d2) 는 제 2 값 (예컨대, 1) 을 가질 수도 있거나, 또는 둘 다일 수도 있으며, 이는 재샘플링 스테이지들을 바이패스한다. 예를 들어, 제 1 계수 (1862) (d1) 가 제 1 값 (예컨대, 1) 을 가질 때, 재샘플링된 신호 (1866) 는 디앰프시스된 신호 (1864) 와 동일할 수도 있다. 다른 예로서, 제 2 계수 (1882) (d2) 가 제 2 값 (예컨대, 1) 을 가질 때, 재샘플링된 신호 (1870) 는 디앰프시스된 신호 (1868) 와 동일할 수도 있다. 리샘플러 (1810) 는 재샘플링된 신호 (1870) 를 틸트 밸런서 (1812) 에 제공할 수도 있다. 틸트 밸런서 (1812) 는 재샘플링된 신호 (1870) 에 대해 틸트 밸런싱을 수행함으로써 제 1 재샘플링된 신호 (530) 를 생성할 수도 있다.
디앰퍼시저 (1834) 는, 도 6을 참조하여 설명되는 바와 같이, IIR 필터 (예컨대, 제 1 차 IIR 필터) 에 기초하여 제 2 오디오 신호 (132) 를 필터링함으로써 디앰프시스된 신호 (1884) 를 생성할 수도 있다. 디앰퍼시저 (1834) 는 디앰프시스된 신호 (1884) 를 리샘플러 (1836) 에 제공할 수도 있다. 리샘플러 (1836) 는 제 1 계수 (1862) (d1) 에 기초하여 디앰프시스된 신호 (1884) 를 재샘플링함으로써 재샘플링된 신호 (1886) 를 생성할 수도 있다. 리샘플러 (1836) 는 재샘플링된 신호 (1886) 를 디앰퍼시저 (1838) 에 제공할 수도 있다. 디앰퍼시저 (1838) 는, 도 6을 참조하여 설명되는 바와 같이, IIR 필터에 기초하여 재샘플링된 신호 (1886) 를 필터링함으로써 디앰프시스된 신호 (1888) 를 생성할 수도 있다. 디앰퍼시저 (1838) 는 디앰프시스된 신호 (1888) 를 리샘플러 (1840) 에 제공할 수도 있다. 리샘플러 (1840) 는 제 2 계수 (1882) (d2) 에 기초하여 디앰프시스된 신호 (1888) 를 재샘플링함으로써 재샘플링된 신호 (1890) 를 생성할 수도 있다.
일부 구현예들에서, 제 1 계수 (1862) (d1) 는 제 1 값 (예컨대, 1) 을 가질 수도 있거나, 제 2 계수 (1882) (d2) 는 제 2 값 (예컨대, 1) 을 가질 수도 있거나, 또는 둘 다일 수도 있으며, 이는 재샘플링 스테이지들을 바이패스한다. 예를 들어, 제 1 계수 (1862) (d1) 가 제 1 값 (예컨대, 1) 을 가질 때, 재샘플링된 신호 (1886) 는 디앰프시스된 신호 (1884) 와 동일할 수도 있다. 다른 예로서, 제 2 계수 (1882) (d2) 가 제 2 값 (예컨대, 1) 을 가질 때, 재샘플링된 신호 (1890) 는 디앰프시스된 신호 (1888) 와 동일할 수도 있다. 리샘플러 (1840) 는 재샘플링된 신호 (1890) 를 틸트 밸런서 (1842) 에 제공할 수도 있다. 틸트 밸런서 (1842) 는 재샘플링된 신호 (1890) 에 대해 틸트 밸런싱을 수행함으로써 제 2 재샘플링된 신호 (532) 를 생성할 수도 있다. 일부 구현예들에서, 틸트 밸런서 (1812) 와 틸트 밸런서 (1842) 는 각각 디앰퍼시저 (1804) 와 디앰퍼시저 (1834) 로 인한 로우 패스 (LP) 효과를 보상할 수도 있다.
도 19를 참조하면, 시스템의 구체적인 예가 도시되고 전체가 1900으로 지정된다. 시스템 (1900) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (1900) 의 하나 이상의 컴포넌트들을 포함할 수도 있다.
시스템 (1900) 은 시프트 추정기 (1704) 를 포함한다. 시프트 추정기 (1704) 는 신호 비교기 (506), 보간기 (510), 시프트 리파이너 (511), 시프트 변경 분석기 (512), 절대 시프트 생성기 (513), 또는 그 조합을 포함할 수도 있다. 시스템 (1900) 은 도 19에 예시된 컴포넌트들보다 더 적거나 또는 더 많을 수도 있다는 것이 이해되어야 한다. 시스템 (1900) 은 본 명세서에서 설명되는 하나 이상의 동작들을 수행하도록 구성될 수도 있다. 예를 들어, 시스템 (1900) 은 도 5의 시간 등화기 (108), 도 17의 시프트 추정기 (1704), 또는 둘 다를 참조하여 설명되는 하나 이상의 동작들을 수행하도록 구성될 수도 있다. 비인과적 시프트 값 (162) 은 제 1 오디오 신호 (130), 제 1 재샘플링된 신호 (530), 제 2 오디오 신호 (132), 제 2 재샘플링된 신호 (532), 또는 그 조합에 기초하여 생성되는 하나 이상의 저역 통과 필터링된 신호들, 하나 이상의 고역 통과 필터링된 신호들, 또는 그 조합에 기초하여 추정될 수도 있다는 것이 이해되어야 한다.
도 20을 참조하면, 시스템의 구체적인 예가 도시되고 전체가 2000으로 지정된다. 시스템 (2000) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (2000) 의 하나 이상의 컴포넌트들을 포함할 수도 있다.
시스템 (2000) 은 이득 파라미터 생성기 (514) 를 포함한다. 이득 파라미터 생성기 (514) 는 이득 평활화기 (2008) 에 커플링되는 이득 추정기 (2002) 를 포함할 수도 있다. 이득 추정기 (2002) 는 엔벨로프 기반 이득 추정기 (2004), 코히어런스 기반 이득 추정기 (2006), 또는 둘 다를 포함할 수도 있다. 이득 추정기 (2002) 는, 도 1을 참조하여 설명되는 바와 같이, 수식 1a~1f 중 하나 이상에 기초하여 이득을 생성할 수도 있다.
동작 동안, 이득 추정기 (2002) 는, 제 1 오디오 신호 (130) 가 기준 신호에 해당함을 기준 신호 표시자 (164) 가 나타낸다는 결정에 응답하여, 기준 신호 (1740) 가 제 1 오디오 신호 (130) 를 포함한다고 결정할 수도 있다. 대안적으로, 이득 추정기 (2002) 는, 제 2 오디오 신호 (132) 가 기준 신호에 해당함을 기준 신호 표시자 (164) 가 나타낸다는 결정에 응답하여, 기준 신호 (1740) 가 제 2 오디오 신호 (132) 를 포함한다고 결정할 수도 있다.
엔벨로프 기반 이득 추정기 (2004) 는 기준 신호 (1740), 조정된 타겟 신호 (1752), 또는 둘 다에 기초하여 엔벨로프 기반 이득 (2020) 을 생성할 수도 있다. 예를 들어, 엔벨로프 기반 이득 추정기 (2004) 는 기준 신호 (1740) 의 제 1 엔벨로프 및 조정된 타겟 신호 (1752) 의 제 2 엔벨로프에 기초하여 엔벨로프 기반 이득 (2020) 을 결정할 수도 있다. 엔벨로프 기반 이득 추정기 (2004) 는 엔벨로프 기반 이득 (2020) 을 이득 평활화기 (2008) 에 제공할 수도 있다.
코히어런스 기반 이득 추정기 (2006) 는 기준 신호 (1740), 조정된 타겟 신호 (1752), 또는 둘 다에 기초하여 코히어런스 기반 이득 (2022) 을 생성할 수도 있다. 예를 들어, 코히어런스 기반 이득 추정기 (2006) 는 기준 신호 (1740), 조정된 타겟 신호 (1752), 또는 둘 다에 대응하는 추정된 코히어런스를 결정할 수도 있다. 코히어런스 기반 이득 추정기 (2006) 는 추정된 코히어런스에 기초하여 코히어런스 기반 이득 (2022) 을 결정할 수도 있다. 코히어런스 기반 이득 추정기 (2006) 는 코히어런스 기반 이득 (2022) 을 이득 평활화기 (2008) 에 제공할 수도 있다.
이득 평활화기 (2008) 는 엔벨로프 기반 이득 (2020), 코히어런스 기반 이득 (2022), 제 1 이득 (2060), 또는 그 조합에 기초하여 이득 파라미터 (160) 를 생성할 수도 있다. 예를 들어, 이득 파라미터 (160) 는 엔벨로프 기반 이득 (2020) 의 평균, 코히어런스 기반 이득 (2022), 제 1 이득 (2060), 또는 그 조합에 대응할 수도 있다. 제 1 이득 (2060) 은 프레임 (302) 과 연관될 수도 있다.
도 21을 참조하면, 시스템의 구체적인 예가 도시되고 전체가 2100으로 지정된다. 시스템 (2100) 은 도 1의 시스템 (100) 에 해당할 수도 있다. 예를 들어, 시스템 (100), 도 1의 제 1 디바이스 (104), 또는 둘 다는, 시스템 (2100) 의 하나 이상의 컴포넌트들을 포함할 수도 있다. 도 21은 상태도 (2120) 를 또한 포함한다. 상태도 (2120) 는 프레임 간 시프트 변화 분석기 (1706) 의 동작을 예시할 수도 있다.
상태도 (2120) 는 상태 2102에서, 제 2 오디오 신호 (132) 를 나타내기 위해 도 17의 타겟 신호 표시자 (1764) 를 설정하는 것을 포함한다. 상태도 (2120) 는 상태 2104에서, 제 1 오디오 신호 (130) 를 나타내기 위해 타겟 신호 표시자 (1764) 를 설정하는 것을 포함한다. 프레임 간 시프트 변화 분석기 (1706) 는, 제 1 시프트 값 (962) 이 제 1 값 (예컨대, 영) 을 가지고 최종 시프트 값 (116) 이 제 2 값 (예컨대, 음의 값) 을 가진다는 결정에 응답하여, 상태 2104로부터 상태 2102으로 전환할 수도 있다. 예를 들어, 프레임 간 시프트 변화 분석기 (1706) 는, 제 1 시프트 값 (962) 이 제 1 값 (예컨대, 영) 을 가지고 최종 시프트 값 (116) 이 제 2 값 (예컨대, 음의 값) 을 가진다는 결정에 응답하여, 타겟 신호 표시자 (1764) 를 제 1 오디오 신호 (130) 를 나타내는 것으로부터 제 2 오디오 신호 (132) 를 나타내는 것으로 변경할 수도 있다. 프레임 간 시프트 변화 분석기 (1706) 는, 제 1 시프트 값 (962) 이 제 1 값 (예컨대, 음의 값) 을 가지고 최종 시프트 값 (116) 이 제 2 값 (예컨대, 영) 을 가진다는 결정에 응답하여, 상태 2102로부터 상태 2104로 전환할 수도 있다. 예를 들어, 프레임 간 시프트 변화 분석기 (1706) 는, 제 1 시프트 값 (962) 이 제 1 값 (예컨대, 음의 값) 을 가지고 최종 시프트 값 (116) 이 제 2 값 (예컨대, 영) 을 가진다는 결정에 응답하여, 타겟 신호 표시자 (1764) 를 제 2 오디오 신호 (132) 를 나타내는 것으로부터 제 1 오디오 신호 (130) 를 나타내는 것으로 변경할 수도 있다. 프레임 간 시프트 변화 분석기 (1706) 는 타겟 신호 표시자 (1764) 를 타겟 신호 조정기 (1708) 에 제공할 수도 있다. 일부 구현예들에서, 프레임 간 시프트 변화 분석기 (1706) 는 타겟 신호 표시자 (1764) 에 의해 나타내어진 타겟 신호 (예컨대, 제 1 오디오 신호 (130) 또는 제 2 오디오 신호 (132)) 를 타겟 신호 조정기 (1708) 에 평활화 및 느린 시프팅을 위해 제공할 수도 있다. 타겟 신호는 도 17의 타겟 신호 (1742) 에 해당할 수도 있다.
도 22를 참조하면, 특정 동작 방법을 예시하는 흐름도가 도시되고 전체가 2200으로 지정된다. 방법 (2200) 은 도 1의 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 또는 그 조합에 의해 수행될 수도 있다.
방법 (2200) 은 2202에서, 디바이스에서, 두 개의 오디오 채널들을 수신하는 단계를 포함한다. 예를 들어, 도 1의 입력 인터페이스들 (112) 중 제 1 입력 인터페이스가 제 1 오디오 신호 (130) (예컨대, 제 1 오디오 채널) 을 수신할 수도 있고 입력 인터페이스들 (112) 중 제 2 입력 인터페이스가 제 2 오디오 신호 (132) (예컨대, 제 2 오디오 채널) 을 수신할 수도 있다.
그 방법 (2200) 은 2204에서, 디바이스에서, 두 개의 오디오 채널들 사이의 시간적 불일치의 양을 나타내는 불일치 값을 결정하는 단계를 또한 포함한다. 예를 들어, 도 1의 시간 등화기 (108) 는, 도 1에 관해 설명되는 바와 같이, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 시간적 불일치의 양을 나타내는 최종 시프트 값 (116) (예컨대, 불일치 값) 을 결정할 수도 있다. 다른 예로서, 시간 등화기 (108) 는, 도 14에 대해 설명되는 바와 같이, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 시간적 불일치의 양을 나타내는 최종 시프트 값 (116) (예컨대, 불일치 값), 제 1 오디오 신호 (130) 와 제 3 오디오 신호 (1430) 사이의 시간적 불일치의 양을 나타내는 제 2 최종 시프트 값 (1416) (예컨대, 불일치 값), 제 1 오디오 신호 (130) 와 제 4 오디오 신호 (1432) 사이의 시간적 불일치의 양을 나타내는 제 3 최종 시프트 값 (1418) (예컨대, 불일치 값), 또는 그 조합을 결정할 수도 있다. 추가의 예로서, 시간 등화기 (108) 는, 도 15를 참조하여 설명되는 바와 같이, 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 시간적 불일치의 양을 나타내는 최종 시프트 값 (116) (예컨대, 불일치 값), 제 3 오디오 신호 (1430) 와 제 4 오디오 신호 (1432) 사이의 시간적 불일치를 나타내는 제 2 최종 시프트 값 (1516) (예컨대, 불일치 값), 또는 둘 다를 결정할 수도 있다.
그 방법 (2200) 은 2206에서, 불일치 값에 기초하여, 타겟 채널 또는 기준 채널 중 적어도 하나의 채널을 결정하는 단계를 더 포함한다. 예를 들어, 도 1의 시간 등화기 (108) 는, 도 17을 참조하여 설명되는 바와 같이, 최종 시프트 값 (116) 에 기초하여, 타겟 신호 (1742) (예컨대, 타겟 채널) 또는 기준 신호 (1740) (예컨대, 기준 채널) 중 적어도 하나를 결정할 수도 있다. 타겟 신호 (1742) 는 두 개의 오디오 채널들 (예컨대, 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132)) 중 후행 오디오 채널에 해당할 수도 있다. 기준 신호 (1740) 는 두 개의 오디오 채널들 (예컨대, 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132)) 중 선행 오디오 채널에 해당할 수도 있다.
그 방법 (2200) 은 2208에서, 디바이스에서, 불일치 값에 기초하여 타겟 채널을 조정함으로써 수정된 타겟 채널을 생성하는 단계를 또한 포함한다. 예를 들어, 도 1의 시간 등화기 (108) 는, 도 17을 참조하여 설명되는 바와 같이, 최종 시프트 값 (116) 에 기초하여 타겟 신호 (1742) 를 조정함으로써 조정된 타겟 신호 (1752) (예컨대, 수정된 타겟 채널) 를 생성할 수도 있다.
그 방법 (2200) 은 2210에서, 디바이스에서, 기준 채널 및 수정된 타겟 채널에 기초하여 적어도 하나의 인코딩된 신호를 생성하는 단계를 더 포함한다. 예를 들어, 도 1의 시간 등화기 (108) 는, 도 17을 참조하여 설명되는 바와 같이, 기준 신호 (1740) (예컨대, 기준 채널) 및 조정된 타겟 신호 (1752) (예컨대, 수정된 타겟 채널) 에 기초하여 인코딩된 신호들 (102) 을 생성할 수도 있다.
다른 예로서, 시간 등화기 (108) 는, 도 14를 참조하여 설명되는 바와 같이, 제 1 오디오 신호 (130) (예컨대, 기준 채널) 의 샘플들 (326~332), 제 2 오디오 신호 (132) (예컨대, 수정된 타겟 채널) 의 샘플들 (358~364), 제 3 오디오 신호 (1430) (예컨대, 수정된 타겟 채널) 의 제 3 샘플들, 제 4 오디오 신호 (1432) (예컨대, 수정된 타겟 채널) 의 제 4 샘플들, 또는 그 조합에 기초하여 제 1 인코딩된 신호 프레임 (1454) 을 생성할 수도 있다. 샘플들 (358~364), 제 3 샘플들, 및 제 4 샘플들은 각각 최종 시프트 값 (116), 제 2 최종 시프트 값 (1416), 및 제 3 최종 시프트 값 (1418) 에 기초한 양만큼 샘플들 (326~332) 에 비하여 시프트될 수도 있다. 시간 등화기 (108) 는, 도 5 및 도 14를 참조하여 설명되는 바와 같이, (기준 채널의) 샘플들 (326~332) 및 (수정된 타겟 채널의) 샘플들 (358~364) 에 기초하여 제 2 인코딩된 신호 프레임 (566) 을 생성할 수도 있다. 시간 등화기 (108) 는 (기준 채널의) 샘플들 (326~332) 및 (수정된 타겟 채널의) 제 3 샘플들에 기초하여 제 3 인코딩된 신호 프레임 (1466) 을 생성할 수도 있다. 시간 등화기 (108) 는 (기준 채널의) 샘플들 (326~332) 및 (수정된 타겟 채널의) 제 4 샘플들에 기초하여 제 4 인코딩된 신호 프레임 (1468) 을 생성할 수도 있다.
추가의 예로서, 시간 등화기 (108) 는, 도 5 및 도 15를 참조하여 설명되는 바와 같이, (기준 채널의) 샘플들 (326~332) 및 (수정된 타겟 채널의) 샘플들 (358~364) 에 기초하여 제 1 인코딩된 신호 프레임 (564) 및 제 2 인코딩된 신호 프레임 (566) 을 생성할 수도 있다. 시간 등화기 (108) 는, 도 15를 참조하여 설명되는 바와 같이, 제 3 오디오 신호 (1430) (예컨대, 기준 채널) 의 제 3 샘플들 및 제 4 오디오 신호 (1432) (예컨대, 수저오딘 타겟 채널) 의 제 4 샘플들에 기초하여 제 3 인코딩된 신호 프레임 (1564) 및 제 4 인코딩된 신호 프레임 (1566) 을 생성할 수도 있다. 제 4 샘플들은, 도 15를 참조하여 설명되는 바와 같이, 제 2 최종 시프트 값 (1516) 에 기초하여 제 3 샘플들에 비하여 시프트될 수도 있다.
방법 (2200) 은 따라서 기준 채널 및 수정된 타겟 채널에 기초하여 인코딩된 신호들을 생성하는 것을 가능하게 할 수도 있다. 수정된 타겟 채널은 불일치 값에 기초하여 타겟 채널을 조정함으로써 생성될 수도 있다. 수정된 타겟 채널과 기준 채널 사이의 차이가 타겟 채널과 기준 채널 사이의 차이보다 더 낮을 수도 있다. 감소된 차이는 조인트-채널 코딩 효율을 개선시킬 수도 있다.
도 23을 참조하면, 디바이스 (예컨대, 무선 통신 디바이스) 의 특정 구체적인 예의 블록도가 묘사되고 전체가 2300으로 지정된다. 다양한 양태들에서, 디바이스 (2300) 는 도 23에서 예시된 것보다 더 많거나 또는 더 적은 컴포넌트들을 가질 수도 있다. 예시적인 양태에서, 디바이스 (2300) 는 도 1의 제 1 디바이스 (104) 또는 제 2 디바이스 (106) 에 해당할 수도 있다. 예시적인 양태에서, 디바이스 (2300) 는 도 1 내지 도 22의 시스템들 및 방법들을 참조하여 설명되는 하나 이상의 동작들을 수행할 수도 있다.
특정 양태에서, 디바이스 (2300) 는 프로세서 (2306) (예컨대, 중앙 프로세싱 유닛 (CPU) 를 포함한다. 디바이스 (2300) 는 하나 이상의 추가적인 프로세서들 (2310) (예컨대, 하나 이상의 디지털 신호 프로세서들 (DSP들)) 을 포함할 수도 있다. 프로세서들 (2310) 은 미디어 (예컨대, 스피치 및 음악) 코더-디코더 (CODEC) (2308) 와 에코 제거기 (2312) 를 포함할 수도 있다. 미디어 CODEC (2308) 은 도 1의 디코더 (118), 인코더 (114), 또는 둘 다를 포함할 수도 있다. 인코더 (114) 는 시간 등화기 (108) 를 포함할 수도 있다.
디바이스 (2300) 는 메모리 (153) 와 CODEC (2334) 을 포함할 수도 있다. 비록 미디어 CODEC (2308) 이 프로세서들 (2310) 의 컴포넌트 (예컨대, 전용 회로부 및/또는 실행가능 프로그래밍 코드) 로서 예시되지만, 다른 양태들에서 미디어 CODEC (2308) 의 하나 이상의 컴포넌트들, 이를테면 디코더 (118), 인코더 (114), 또는 둘 다가, 프로세서 (2306), CODEC (2334), 다른 프로세싱 컴포넌트, 또는 그 조합에 포함될 수도 있다.
디바이스 (2300) 는 안테나 (2342) 에 커플링되는 송신기 (110) 를 포함할 수도 있다. 디바이스 (2300) 는 디스플레이 제어기 (2326) 에 커플링된 디스플레이 (2328) 를 포함할 수도 있다. 하나 이상의 스피커들 (2348) 이 코덱 (2334) 에 커플링될 수도 있다. 하나 이상의 마이크로폰들 (2346) 이, 입력 인터페이스(들) (112) 를 통해, 코덱 (2334) 에 커플링될 수도 있다. 특정 양태에서, 스피커들 (2348) 은 도 1의 제 1 라우드스피커 (142), 제 2 라우드스피커 (144), 도 2의 제 Y 라우드스피커 (244), 또는 그 조합을 포함할 수도 있다. 특정 양태에서, 마이크로폰들 (2346) 은 도 1의 제 1 마이크로폰 (146), 제 2 마이크로폰 (148), 도 2의 제 N 마이크로폰 (248), 도 11의 제 3 마이크로폰 (1146), 제 4 마이크로폰 (1148), 또는 그 조합을 포함할 수도 있다. CODEC (2334) 은 디지털-아날로그 변환기 (DAC) (2302) 와 아날로그-디지털 변환기 (ADC) (2304) 를 포함할 수도 있다.
메모리 (153) 는 도 1 내지 도 22를 참조하여 설명되는 하나 이상의 동작들을 수행하기 위해, 프로세서 (2306), 프로세서들 (2310), 코덱 (2334), 디바이스 (2300) 의 다른 프로세싱 유닛, 또는 그 조합에 의해 실행 가능한 명령들 (2360) 을 포함할 수도 있다. 메모리 (153) 는 분석 데이터 (190) 를 저장할 수도 있다.
디바이스 (2300) 의 하나 이상의 컴포넌트들은 하나 이상의 태스크들, 또는 그것들의 조합을 수행하기 위한 명령들을 실행하는 프로세서에 의해 전용 하드웨어 (예컨대, 회로부) 를 통해 구현될 수도 있다. 일 예로서, 메모리 (153) 또는 프로세서 (2306), 프로세서 (2310), 및/또는 CODEC (2334) 의 하나 이상의 컴포넌트들은, 랜덤 액세스 메모리 (RAM), 자기저항성 랜덤 액세스 메모리 (MRAM), STT-MRAM (spin-torque transfer MRAM), 플래시 메모리, 판독전용 메모리 (ROM), 프로그래밍가능 판독전용 메모리 (PROM), 소거가능 프로그래밍가능 판독전용 메모리 (EPROM), 전기적 소거가능 프로그래밍가능 판독전용 메모리 (EEPROM), 레지스터들, 하드 디스크, 착탈식 디스크, 콤팩트 디스크 판독전용 메모리 (CD-ROM) 와 같은 메모리 디바이스 (컴퓨터 판독가능 저장 디바이스) 일 수도 있다. 메모리 디바이스는 컴퓨터 (예컨대, CODEC (2334) 에서의 프로세서, 프로세서 (2306), 및/또는 프로세서들 (2310)) 에 의해 실행될 때, 컴퓨터로 하여금 도 1 내지 도 22를 참조하여 설명되는 하나 이상의 동작들을 수행하게 할 수도 있는 명령들 (예컨대, 명령들 (2360)) 을 포함 (예컨대, 저장) 할 수도 있다. 일 예로서, 메모리 (153) 또는 프로세서 (2306), 프로세서들 (2310), 및/또는 CODEC (2334) 의 하나 이상의 컴포넌트들은, 컴퓨터 (예컨대, CODEC (2334) 에서의 프로세서, 프로세서 (2306), 및/또는 프로세서들 (2310)) 에 의해 실행될 때, 컴퓨터로 하여금 도 1 내지 도 22를 참조하여 설명되는 하나 이상의 동작들을 수행하게 하는 명령들 (예컨대, 명령들 (2360)) 을 포함하는 비일시적 컴퓨터 판독가능 매체일 수도 있다.
특정 양태에서, 디바이스 (2300) 는 시스템-인-패키지 (system-in-package) 또는 시스템-온-칩 디바이스 (예컨대, 이동국 모뎀 (MSM)) (2322) 에 포함될 수도 있다. 특정 양태에서, 프로세서 (2306), 프로세서들 (2310), 디스플레이 제어기 (2326), 메모리 (153), CODEC (2334), 및 송신기 (110) 는 시스템-인-패키지 또는 시스템-온-칩 디바이스 (2322) 에 포함된다. 특정 양태에서, 입력 디바이스 (2330), 이를테면 터치스크린 및/또는 키패드와, 전력 공급부 (2344) 가 시스템-온-칩 디바이스 (2322) 에 커플링된다. 더구나, 특정 양태에서, 도 23에 예시된 바와 같이, 디스플레이 (2328), 입력 디바이스 (2330), 스피커들 (2348), 마이크로폰들 (2346), 안테나 (2342), 및 전력 공급부 (2344) 는 시스템-온-칩 디바이스 (2322) 외부에 있다. 그러나, 디스플레이 (2328), 입력 디바이스 (2330), 스피커들 (2348), 마이크로폰들 (2346), 안테나 (2342), 및 전력 공급부 (2344) 의 각각은 시스템-온-칩 디바이스 (2322) 의 컴포넌트, 이를테면 인터페이스 또는 제어기에 커플링될 수 있다.
디바이스 (2300) 는 무선 전화기, 모바일 통신 디바이스, 모바일 디바이스, 모바일 폰, 스마트 폰, 셀룰러 폰, 랩톱 컴퓨터, 데스크톱 컴퓨터, 컴퓨터, 태블릿 컴퓨터, 셋톱 박스, 개인 정보 단말기 (PDA), 디스플레이 디바이스, 텔레비전, 게이밍 콘솔, 음악 플레이어, 라디오, 비디오 플레이어, 엔터테인먼트 유닛, 통신 디바이스, 고정 로케이션 데이터 유닛, 개인 미디어 플레이어, 디지털 비디오 플레이어, 디지털 비디오 디스크 (DVD) 플레이어, 튜너, 카메라, 내비게이션 디바이스, 디코더 시스템, 인코더 시스템, 또는 그것들의 임의의 조합을 포함할 수도 있다.
특정 양태에서, 도 1 내지 도 22를 참조하여 설명되는 시스템들의 하나 이상의 컴포넌트들과 디바이스 (2300) 는 디코딩 시스템 또는 장치 (예컨대, 전자 디바이스, CODEC, 또는 그 속의 프로세서) 속에, 인코딩 시스템 또는 장치 속에, 또는 둘 다 속에 통합될 수도 있다. 다른 양태들에서, 도 1 내지 도 22를 참조하여 설명되는 시스템들의 하나 이상의 컴포넌트들과 디바이스 (2300) 는 무선 전화기, 태블릿 컴퓨터, 데스크톱 컴퓨터, 랩톱 컴퓨터, 셋톱 박스, 음악 플레이어, 비디오 플레이어, 엔터테인먼트 유닛, 텔레비전, 게임 콘솔, 내비게이션 디바이스, 통신 디바이스, 개인 정보 단말기 (PDA), 고정 로케이션 데이터 유닛, 개인 미디어 플레이어, 또는 다른 유형의 디바이스 속에 통합될 수도 있다.
도 1 내지 22를 참조하여 설명되는 시스템들의 하나 이상의 컴포넌트들 및 디바이스 (2300) 에 의해 수행되는 다양한 기능들은 특정한 컴포넌트들 또는 모듈들에 의해 수행되는 것으로서 설명된다는 것에 주의해야 한다. 컴포넌트들 및 모듈들의 이 구분은 예시만을 위한 것이다. 대체 양태에서, 특정 컴포넌트 또는 모듈에 의해 수행되는 기능이 다수의 컴포넌트들 또는 모듈들 중에서 분할될 수도 있다. 더구나, 대안적 양태에서, 도 1 내지 도 22를 참조하여 설명되는 둘 이상의 컴포넌트들 또는 모듈들은 단일 컴포넌트 또는 모듈 속에 통합될 수도 있다. 도 1 내지 도 22를 참조하여 설명되는 각각의 컴포넌트 또는 모듈은 하드웨어 (예컨대, 필드 프로그램가능 게이트 어레이 (FPGA) 디바이스, 주문형 집적회로 (ASIC), DSP, 제어기 등), 소프트웨어 (예컨대, 프로세서에 의해 실행 가능한 명령들), 또는 그것들의 임의의 조합을 사용하여 구현될 수도 있다.
설명된 양태들과 연계하여, 장치가 두 개의 오디오 채널들 사이의 시간적 불일치의 양을 나타내는 불일치 값을 결정하는 수단을 포함한다. 예를 들어, 결정하는 수단은 도 1의 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 미디어 CODEC (2308), 프로세서들 (2310), 디바이스 (2300), 불일치 값을 결정하도록 구성되는 하나 이상의 디바이스들 (예컨대, 컴퓨터 판독가능 저장 디바이스에 저장되는 명령들을 실행하는 프로세서), 또는 그 조합을 포함할 수도 있다. 두 개의 오디오 채널들 (예컨대, 도 1의 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132)) 중 선행 오디오 채널이 기준 채널 (예컨대, 도 17의 기준 신호 (1740)) 에 해당할 수도 있다. 두 개의 오디오 채널들 (예컨대, 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132)) 중 후행 오디오 채널이 타겟 채널 (예컨대, 도 17의 타겟 신호 (1742)) 에 해당할 수도 있다.
장치는 기준 채널 및 수정된 타겟 채널에 기초하여 생성되는 적어도 하나의 인코딩된 채널을 생성하는 수단을 더 포함한다. 예를 들어, 생성하는 수단은 송신기 (110), 적어도 하나의 인코딩된 신호를 생성하도록 구성되는 하나 이상의 디바이스들, 또는 그 조합을 포함할 수도 있다. 수정된 타겟 채널 (예컨대, 도 17의 조정된 타겟 신호 (1752)) 는 불일치 값 (예컨대, 도 1의 최종 시프트 값 (116)) 에 기초하여 타겟 채널을 조정 (예컨대, 시프트) 함으로써 생성될 수도 있다.
또한 설명된 양태들과 연계하여, 장치가 제 2 오디오 신호에 비한 제 1 오디오 신호의 시프트를 나타내는 최종 시프트 값을 결정하는 수단을 포함한다. 예를 들어, 결정하는 수단은 도 1의 시간 등화기 (108), 인코더 (114), 제 1 디바이스 (104), 미디어 CODEC (2308), 프로세서들 (2310), 디바이스 (2300), 시프트 값을 결정하도록 구성되는 하나 이상의 디바이스들 (예컨대, 컴퓨터 판독가능 저장 디바이스에 저장되는 명령들을 실행하는 프로세서), 또는 그 조합을 포함할 수도 있다.
그 장치는 제 1 오디오 신호의 제 1 샘플들 및 제 2 오디오 신호의 제 2 샘플들에 기초하여 생성되는 적어도 하나의 인코딩된 신호를 송신하는 수단을 또한 포함한다. 예를 들어, 송신하는 수단은 송신기 (110), 적어도 하나의 인코딩된 신호를 송신하도록 구성되는 하나 이상의 디바이스들, 또는 그 조합을 포함할 수도 있다. 제 2 샘플들 (예컨대, 도 3의 샘플들 (358~364)) 은 최종 시프트 값 (예컨대, 최종 시프트 값 (116)) 에 기초하는 양만큼 제 1 샘플들 (예컨대, 도 3의 샘플들 (326~332)) 에 비하여 시간 시프트될 수도 있다.
도 24를 참조하면, 기지국 (2400) 의 특정 구체적인 예의 블록도가 묘사된다. 다양한 구현예들에서, 기지국 (2400) 은 도 24에 예시된 것보다 더 많은 컴포넌트들 또는 더 적은 컴포넌트들을 가질 수도 있다. 구체적인 예에서, 기지국 (2400) 은 제 1 디바이스 (104), 도 1의 제 2 디바이스 (106), 도 2의 제 1 디바이스 (204), 또는 그 조합을 포함할 수도 있다. 구체적인 예에서, 기지국 (2400) 은 도 1 내지 도 23을 참조하여 설명된 시스템들 또는 방법들 중 하나 이상에 따라 동작할 수도 있다.
기지국 (2400) 은 무선 통신 시스템의 일부일 수도 있다. 무선 통신 시스템은 다수의 기지국들과 다수의 무선 디바이스들을 포함할 수도 있다. 무선 통신 시스템은 LTE (Long Term Evolution) 시스템, 코드 분할 다중 접속 (CDMA) 시스템, 이동 통신 세계화 시스템 (GSM) 시스템, 무선 로컬 영역 네트워크 (WLAN) 시스템, 또는 일부 다른 무선 시스템일 수도 있다. CDMA 시스템이 광대역 CDMA (WCDMA), CDMA 1X, EVDO (Evolution-Data Optimized), TD-SCDMA (Time Division Synchronous CDMA), 또는 CDMA의 일부 다른 버전을 구현할 수도 있다.
무선 디바이스는 사용자 장비 (UE), 이동국, 단말, 액세스 단말, 가입자 유닛, 스테이션 등이라고 또한 지칭될 수도 있다. 무선 디바이스들은 셀룰러 폰, 스마트폰, 태블릿, 무선 모뎀, 개인 정보 단말기 (PDA), 핸드헬드 디바이스, 랩톱 컴퓨터, 스마트북, 넷북, 태블릿, 무선 폰, 무선 가입자 회선 (WLL) 스테이션, 블루투스 디바이스 등을 포함할 수도 있다. 무선 디바이스들은 도 23의 디바이스 (2300) 를 포함하거나 또는 그런 디바이스에 해당할 수도 있다.
다양한 기능들, 이를테면 메시지들 및 데이터 (예컨대, 오디오 데이터) 를 전송하는 것 및 수신하는 것이 기지국 (2400) 의 하나 이상의 컴포넌트들에 의해 (그리고/또는 도시되지 않은 다른 컴포넌트들에서) 수행될 수도 있다. 특정 예에서, 기지국 (2400) 은 프로세서 (2406) (예컨대, CPU) 를 포함한다. 기지국 (2400) 은 트랜스코더 (2410) 를 포함할 수도 있다. 트랜스코더 (2410) 는 오디오 CODEC (2408) 을 포함할 수도 있다. 예를 들어, 트랜스코더 (2410) 는 오디오 CODEC (2408) 의 동작들을 수행하도록 구성되는 하나 이상의 컴포넌트들 (예컨대, 회로부) 을 포함할 수도 있다. 다른 예로서, 트랜스코더 (2410) 는 CODEC (2408) 의 동작들을 수행하기 위해 하나 이상의 컴퓨터 판독가능 명령들을 실행하도록 구성될 수도 있다. 비록 오디오 CODEC (2408) 이 트랜스코더 (2410) 의 컴포넌트로서 예시되지만, 다른 예들에서 오디오 CODEC (2408) 의 하나 이상의 컴포넌트들은 프로세서 (2406), 다른 프로세싱 컴포넌트, 또는 그 조합에 포함될 수도 있다. 예를 들어, 디코더 (2438) (예컨대, 보코더 디코더) 가 수신기 데이터 프로세서 (2464) 에 포함될 수도 있다. 다른 예로서, 인코더 (2436) (예컨대, 보코더 인코더) 가 송신 데이터 프로세서 (2482) 에 포함될 수도 있다.
트랜스코더 (2410) 는 둘 이상의 네트워크들 사이에서 메시지들 및 데이터를 트랜스코딩하도록 기능을 할 수도 있다. 트랜스코더 (2410) 는 메시지 및 오디오 데이터를 제 1 포맷 (예컨대, 디지털 포맷) 으로부터 제 2 포맷으로 변환하도록 구성될 수도 있다. 예시하기 위해, 디코더 (2438) 는 제 1 포맷을 갖는 인코딩된 신호들을 디코딩할 수도 있고 인코더 (2436) 는 디코딩된 신호들을 제 2 포맷을 갖는 인코딩된 신호들로 인코딩할 수도 있다. 부가적으로 또는 대안적으로, 트랜스코더 (2410) 는 데이터 레이트 적응을 수행하도록 구성될 수도 있다. 예를 들어, 트랜스코더 (2410) 는 오디오 데이터의 포맷을 변환하는 일 없이 데이터 레이트를 다운컨버트 또는 데이터 레이트를 업컨버트할 수도 있다. 예시하기 위해, 트랜스코더 (2410) 는 64 kbit/s 신호들을 16 kbit/s 신호들로 다운컨버트할 수도 있다.
오디오 CODEC (2408) 은 인코더 (2436) 와 디코더 (2438) 를 포함할 수도 있다. 인코더 (2436) 는 도 1의 인코더 (114), 도 2의 인코더 (214), 또는 둘 다를 포함할 수도 있다. 디코더 (2438) 는 도 1의 디코더 (118) 를 포함할 수도 있다.
기지국 (2400) 은 메모리 (2432) 를 포함할 수도 있다. 메모리 (2432), 이를테면 컴퓨터 판독가능 저장 디바이스는, 명령들을 포함할 수도 있다. 그 명령들은 프로세서 (2406), 트랜스코더 (2410), 또는 그 조합에 의해 실행될 때, 도 1 내지 도 23의 방법들 및 시스템들을 참조하여 설명된 하나 이상의 동작들을 수행하기 위한 하나 이상의 명령들을 포함할 수도 있다. 기지국 (2400) 은 안테나 어레이에 커플링된 제 1 트랜시버 (2452) 및 제 2 트랜시버 (2454) 와 같은 다수의 송신기들 및 수신기들 (예컨대, 트랜시버들) 을 포함할 수도 있다. 안테나들의 어레이는 제 1 안테나 (2442) 와 제 2 안테나 (2444) 를 포함할 수도 있다. 안테나들의 어레이는 하나 이상의 무선 디바이스들, 이를테면 도 23의 디바이스 (2300) 와 무선으로 통신하도록 구성될 수도 있다. 예를 들어, 제 2 안테나 (2444) 는 무선 디바이스로부터 데이터 스트림 (2414) (예컨대, 비트 스트림) 을 수신할 수도 있다. 데이터 스트림 (2414) 은 메시지들, 데이터 (예컨대, 인코딩된 스피치 데이터), 또는 그 조합을 포함할 수도 있다.
기지국 (2400) 은 네트워크 접속 (2460), 이를테면 백홀 접속을 포함할 수도 있다. 네트워크 접속 (2460) 은 무선 통신 네트워크의 하나 이상의 기지국들 또는 코어 네트워크와 통신하도록 구성될 수도 있다. 예를 들어, 기지국 (2400) 은 코어 네트워크로부터 네트워크 접속 (2460) 을 통해 제 2 데이터 스트림 (예컨대, 메시지들 또는 오디오 데이터) 을 수신할 수도 있다. 기지국 (2400) 은 제 2 데이터 스트림을 프로세싱하여 메시지들 또는 오디오 데이터를 생성하고 메시지들 또는 오디오 데이터를 하나 이상의 무선 디바이스에게 안테나 어레이의 하나 이상의 안테나들을 통해 또는 다른 기지국에게 네트워크 접속 (2460) 을 통해 제공할 수도 있다. 특정 구현예에서, 네트워크 접속 (2460) 은 예시적인, 비제한적 예로서 광역 네트워크 (WAN) 접속일 수도 있다. 일부 구현예들에서, 코어 네트워크는 공중전화망 (PSTN), 패킷 백본 네트워크, 또는 둘 다를 포함하거나 또는 그것들에 해당할 수도 있다.
기지국 (2400) 은 네트워크 접속 (2460) 및 프로세서 (2406) 에 커플링되는 미디어 게이트웨이 (2470) 를 포함할 수도 있다. 미디어 게이트웨이 (2470) 는 상이한 원거리통신 기술들의 미디어 스트림들 사이에서 변환하도록 구성될 수도 있다. 예를 들어, 미디어 게이트웨이 (2470) 는 상이한 송신 프로토콜들, 상이한 코딩 스킴들, 또는 둘 다 사이에서 변환할 수도 있다. 예시하기 위해, 미디어 게이트웨이 (2470) 는 구체적이며, 비제한적인 예로서, PCM 신호들을 실시간 전송 프로토콜 (RTP) 신호들로 변환할 수도 있다. 미디어 게이트웨이 (2470) 는 패킷 교환 네트워크들 (예컨대, VoIP (Voice Over Internet Protocol) 네트워크, IP 멀티미디어 서브시스템 (IMS), 제 4 세대 (4G) 무선 네트워크, 이를테면 LTE, 와이맥스, 및 UMB 등), 회선 교환 네트워크들 (예컨대, PSTN), 및 하이브리드 네트워크들 (예컨대, 제 2 세대 (2G) 무선 네트워크, 이를테면 GSM, GPRS, 및 EDGE, 제 3 세대 (3G) 무선 네트워크, 이를테면 WCDMA, EV-DO, 및 HSPA 등) 사이에서 데이터를 변환할 수도 있다.
덧붙여, 미디어 게이트웨이 (2470) 는 트랜스코더, 이를테면 트랜스코더 (610) 를 포함할 수도 있고, 코덱들이 호환 가능하지 않을 때 데이터를 트랜스코딩하도록 구성될 수도 있다. 예를 들어, 미디어 게이트웨이 (2470) 는, 구체적인 비제한적인 예로서, 적응적 멀티-레이트 (AMR) 코덱과 G.711 코덱 사이에서 트랜스코딩할 수도 있다. 미디어 게이트웨이 (2470) 는 라우터와 복수의 물리적 인터페이스들을 포함할 수도 있다. 일부 구현예들에서, 미디어 게이트웨이 (2470) 는 제어기 (도시되지 않음) 를 또한 포함할 수도 있다. 특정 구현예에서, 미디어 게이트웨이 제어기는 미디어 게이트웨이 (2470) 외부에, 기지국 (2400) 외부에, 또는 둘 다에 있을 수도 있다. 미디어 게이트웨이 제어기는 다수의 미디어 게이트웨이들의 동작들을 제어하고 조정 (coordination) 할 수도 있다. 미디어 게이트웨이 (2470) 는 미디어 게이트웨이 제어기로부터 제어 신호들을 수신할 수도 있고 상이한 송신 기술들 사이에서 브리지하도록 기능을 할 수도 있고 최종 사용자 능력들 및 접속들에 서비스를 추가할 수도 있다.
기지국 (2400) 은 트랜시버들 (2452, 2454) 에 커플링된 복조기 (2462), 수신기 데이터 프로세서 (2464), 및 프로세서 (2406) 를 포함할 수도 있고, 수신기 데이터 프로세서 (2464) 는 프로세서 (2406) 에 커플링될 수도 있다. 복조기 (2462) 는 트랜시버들 (2452, 2454) 로부터 수신된 변조된 신호들을 복조하도록 그리고 복조된 데이터를 수신기 데이터 프로세서 (2464) 로 제공하도록 구성될 수도 있다. 수신기 데이터 프로세서 (2464) 는 복조된 데이터로부터 메시지 또는 오디오 데이터를 추출하고 그 메시지 또는 오디오 데이터를 프로세서 (2406) 로 전송하도록 구성될 수도 있다.
기지국 (2400) 은 송신 데이터 프로세서 (2482) 와 송신 다중입력-다중출력 (MIMO) 프로세서 (2484) 를 포함할 수도 있다. 송신 데이터 프로세서 (2482) 는 프로세서 (2406) 및 송신 MIMO 프로세서 (2484) 에 커플링될 수도 있다. 송신 MIMO 프로세서 (2484) 는 트랜시버들 (2452, 2454) 및 프로세서 (2406) 에 커플링될 수도 있다. 일부 구현예들에서, 송신 MIMO 프로세서 (2484) 는 미디어 게이트웨이 (2470) 에 커플링될 수도 있다. 송신 데이터 프로세서 (2482) 는 프로세서 (2406) 로부터 메시지들 또는 오디오 데이터를 수신하도록 그리고 예시적인, 비제한적 예들로서 CDMA 또는 직교 주파수-분할 다중화 (OFDM) 와 같은 코딩 스킴에 기초하여 메시지들 또는 오디오 데이터를 코딩하도록 구성될 수도 있다. 송신 데이터 프로세서 (2482) 는 코딩된 데이터를 송신 MIMO 프로세서 (2484) 로 제공할 수도 있다.
코딩된 데이터는 다중화된 데이터를 생성하기 위해 CDMA 또는 OFDM 기법들을 사용하여 다른 데이터, 이를테면 파일럿 데이터와 다중화될 수도 있다. 다중화된 데이터는 그 다음에 변조 심볼들을 생성하기 위해 특정 변조 스킴 (예컨대, 이진 위상 시프트 키잉 ("BPSK"), 직교 위상 시프트 키잉 ("QSPK"), M-진 위상-시프트 키잉 ("M-PSK"), M-진 직교 진폭 변조 ("M-QAM") 등) 에 기초하여 송신 데이터 프로세서 (2482) 에 의해 변조될 (즉, 심볼 매핑될) 수도 있다. 특정 구현예에서, 코딩된 데이터 및 다른 데이터는 상이한 변조 스킴들을 사용하여 변조될 수도 있다. 각 데이터 스트림에 대한 데이터 레이트, 코딩 및 변조는 프로세서 (2406) 에 의해 실행되는 명령들에 의해 결정될 수도 있다.
송신 MIMO 프로세서 (2484) 는 송신 데이터 프로세서 (2482) 로부터 변조 심볼들을 수신하도록 구성될 수도 있고 변조 심볼들을 추가로 프로세싱할 수도 있고 그 데이터에 대한 빔포밍을 수행할 수도 있다. 예를 들어, 송신 MIMO 프로세서 (2484) 는 변조 심볼들에 빔포밍 가중치들을 적용할 수도 있다. 빔포밍 가중치들은 변조 심볼들이 송신되는, 안테나 어레이의 하나 이상의 안테나들에 대응할 수도 있다.
동작 동안, 기지국 (2400) 의 제 2 안테나 (2444) 는 데이터 스트림 (2414) 을 수신할 수도 있다. 제 2 트랜시버 (2454) 는 제 2 안테나 (2444) 로부터 데이터 스트림 (2414) 을 수신할 수도 있고 그 데이터 스트림 (2414) 을 복조기 (2462) 로 제공할 수도 있다. 복조기 (2462) 는 데이터 스트림 (2414) 의 변조된 신호들을 복조하고 복조된 데이터를 수신기 데이터 프로세서 (2464) 로 제공할 수도 있다. 수신기 데이터 프로세서 (2464) 는 복조된 데이터로부터 오디오 데이터를 추출하고 추출된 오디오 데이터를 프로세서 (2406) 에 제공할 수도 있다.
프로세서 (2406) 는 오디오 데이터를 트랜스코더 (2410) 로 트랜스코딩을 위해 제공할 수도 있다. 트랜스코더 (2410) 의 디코더 (2438) 는 제 1 포맷으로부터의 오디오 데이터를 디코딩된 오디오 데이터로 디코딩할 수도 있고 인코더 (2436) 는 디코딩된 오디오 데이터를 제 2 포맷으로 인코딩할 수도 있다. 일부 구현예들에서, 인코더 (2436) 는 무선 디바이스로부터 수신된 것보다 더 높은 데이터 레이트 (예컨대, 업컨버트) 또는 낮은 데이터 레이트 (예컨대, 다운컨버트) 를 사용하여 오디오 데이터를 인코딩할 수도 있다. 다른 구현예들에서 오디오 데이터는 트랜스코딩되지 않을 수도 있다. 비록 트랜스코딩 (예컨대, 디코딩 및 인코딩) 이 트랜스코더 (2410) 에 의해 수행되고 있는 것으로서 예시되지만, 트랜스코딩 동작들 (예컨대, 디코딩 및 인코딩) 은 기지국 (2400) 의 다수의 컴포넌트들에 의해 수행될 수도 있다. 예를 들어, 디코딩은 수신기 데이터 프로세서 (2464) 에 의해 수행될 수도 있고 인코딩은 송신 데이터 프로세서 (2482) 에 의해 수행될 수도 있다. 다른 구현예들에서, 프로세서 (2406) 는 다른 송신 프로토콜, 코딩 스킴, 또는 둘 다로의 변환을 위해 오디오 데이터를 미디어 게이트웨이 (2470) 에 제공할 수도 있다. 미디어 게이트웨이 (2470) 는 변환된 데이터를 다른 기지국 또는 코어 네트워크에 네트워크 접속 (2460) 를 통해 제공할 수도 있다.
인코더 (2436) 는 제 1 오디오 신호 (130) 와 제 2 오디오 신호 (132) 사이의 시간 지연을 나타내는 최종 시프트 값 (116) 을 결정할 수도 있다. 인코더 (2436) 는 최종 시프트 값 (116) 에 기초하여 제 1 오디오 신호 (130) 및 제 2 오디오 신호 (132) 를 인코딩함으로써 인코딩된 신호들 (102), 이득 파라미터 (160), 또는 둘 다를 생성할 수도 있다. 인코더 (2436) 는 최종 시프트 값 (116) 에 기초하여 기준 신호 표시자 (164) 및 비인과적 시프트 값 (162) 을 생성할 수도 있다. 디코더 (118) 는 기준 신호 표시자 (164), 비인과적 시프트 값 (162), 이득 파라미터 (160), 또는 그 조합에 기초하여 인코딩된 신호들을 디코딩함으로써 제 1 출력 신호 (126) 및 제 2 출력 신호 (128) 를 생성할 수도 있다. 인코더 (2436) 에서 생성된 인코딩된 오디오 데이터, 이를테면 트랜스코딩된 데이터는, 프로세서 (2406) 를 통해 송신 데이터 프로세서 (2482) 또는 네트워크 접속 (2460) 에 제공될 수도 있다.
트랜스코더 (2410) 로부터의 트랜스코딩된 오디오 데이터는 변조 심볼들을 생성하기 위해 변조 스킴, 이를테면 OFDM에 따라 코딩하는 송신 데이터 프로세서 (2482) 에 제공될 수도 있다. 송신 데이터 프로세서 (2482) 는 변조 심볼들을 송신 MIMO 프로세서 (2484) 에 추가의 프로세싱 및 빔포밍을 위해 제공할 수도 있다. 송신 MIMO 프로세서 (2484) 는 빔포밍 가중치들을 적용할 수도 있고 변조 심볼들을 제 1 트랜시버 (2452) 를 통해 안테나 어레이의 하나 이상의 안테나들, 이를테면 제 1 안테나 (2442) 로 제공할 수도 있다. 따라서, 기지국 (2400) 은 무선 디바이스로부터 수신된 데이터 스트림 (2414) 에 대응하는 트랜스코딩된 데이터 스트림 (2416) 을 다른 무선 디바이스로 제공할 수도 있다. 트랜스코딩된 데이터 스트림 (2416) 은 데이터 스트림 (2414) 과는 상이한 인코딩 포맷, 데이터 레이트, 또는 둘 다를 가질 수도 있다. 다른 구현예들에서, 트랜스코딩된 데이터 스트림 (2416) 은 다른 기지국 또는 코어 네트워크로의 송신을 위해 네트워크 접속 (2460) 에 제공될 수도 있다.
기지국 (2400) 은 그러므로 프로세서 (예컨대, 프로세서 (2406) 또는 트랜스코더 (2410)) 에 의해 실행될 때, 프로세서로 하여금 제 1 오디오 신호와 제 2 오디오 신호 사이의 시간 지연의 양을 나타내는 시프트 값을 결정하는 것을 포함하는 동작들을 수행하게 하는 명령들을 저장하는 컴퓨터 판독가능 저장 디바이스 (예컨대, 메모리 (2432)) 를 포함할 수도 있다. 제 1 오디오 신호는 제 1 마이크로폰을 통해 수신되고 제 2 오디오 신호는 제 2 마이크로폰을 통해 수신된다. 동작들은 시프트 값에 기초하여 제 2 오디오 신호를 시프트함으로써 시간 시프트된 제 2 오디오 신호를 생성하는 것을 또한 포함한다. 그 동작들은 제 1 오디오 신호의 제 1 샘플들 및 시간 시프트된 제 2 오디오 신호의 제 2 샘플들에 기초하여 적어도 하나의 인코딩된 신호를 생성하는 것을 더 포함한다. 동작들은 적어도 하나의 인코딩된 신호를 디바이스로 전송하는 것을 또한 포함한다.
당업자들은 본 명세서에서 개시된 양태들에 관련하여 설명되는 다양한 예시적인 논리 블록들, 구성들, 모듈들, 회로들, 및 알고리즘 단계들이 전자 하드웨어, 하드웨어 프로세서와 같은 프로세싱 디바이스에 의해 실행되는 컴퓨터 소프트웨어, 또는 양쪽 모두의 조합들로서 구현될 수도 있다는 것을 추가로 이해할 것이다. 다양한 예시적인 컴포넌트들, 블록들, 구성들, 모듈들, 회로들, 및 단계들은 일반적으로 그것들의 기능의 측면에서 위에서 설명되었다. 이러한 기능성이 하드웨어 또는 실행가능 소프트웨어 중 어느 것으로서 구현되는지는 전체 시스템에 부과되는 특정 애플리케이션 및 설계 제약들에 달려있다. 당업자들은 설명된 기능성을 각 특정 애플리케이션에 대하여 다양한 방식들로 구현할 수도 있지만, 이러한 구현 결정들은 본 개시물의 범위로부터의 일탈을 야기하는 것으로서 해석되지 않아야 한다.
본 명세서에서 개시된 양태들과 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접적으로, 프로세서에 의해 실행되는 소프트웨어 모듈로, 또는 이들 두 가지의 조합으로 실시될 수도 있다. 소프트웨어 모듈이, RAM (random-access memory), MRAM (magnetoresistive random access memory), STT-MRAM (spin-torque transfer MRAM), 플래시 메모리, ROM (read-only memory), 프로그래밍가능 ROM (PROM), 소거가능 프로그래밍가능 ROM (EPROM), 전기적 소거가능 프로그래밍가능 ROM (EEPROM), 레지스터들, 하드 디스크, 착탈식 디스크, CD-ROM (compact disc read-only memory) 과 같은 메모리 디바이스 내에 존재할 수도 있다. 예시적인 메모리 디바이스가 프로세서에 커플링되어서 그 프로세서는 메모리 디바이스로부터 정보를 읽을 수 있고 그 메모리 디바이스에 정보를 쓸 수 있다. 대체예에서, 메모리 디바이스는 프로세서에 통합될 수도 있다. 프로세서와 저장 매체는 주문형 집적회로 (ASIC) 내에 존재할 수도 있다. ASIC은 컴퓨팅 디바이스 또는 사용자 단말 내에 존재할 수도 있다. 대체예에서, 프로세서와 저장 매체는 컴퓨팅 디바이스 또는 사용자 단말에 개별 컴포넌트들로서 존재할 수도 있다.
개시된 양태들의 이전의 설명은 본 기술분야의 통상의 기술자가 개시된 양들을 제작하고 사용하는 것을 가능하게 하기 위해 제공된다. 이들 양태들에 대한 다양한 변형예들은 본 기술분야의 통상의 기술자들에게 쉽사리 명확하게 될 것이고, 본 명세서에서 정의되는 원리들은 본 개시물의 범위로부터 벗어남 없이 다른 양태들에 적용될 수도 있다. 따라서, 본 개시물은 본 명세서에서 보인 양태들로 한정될 의도는 없으며 다음의 청구항들에 의해 정의된 바와 같은 원리들 및 신규한 특징들과 일치하는 가능한 가장 넓은 범위에 일치하는 것이다.

Claims (37)

  1. 인코더를 포함하며,
    상기 인코더는,
    두 개의 오디오 채널들을 수신하며;
    상기 두 개의 오디오 채널들 사이의 시간적 불일치의 양을 나타내는 불일치 값을 결정하며;
    상기 불일치 값에 기초하여, 상기 두 개의 오디오 채널들 중 제 1 오디오 채널이 상기 두 개의 오디오 채널들 중 선행 오디오 채널이고 상기 두 개의 오디오 채널들 중 제 2 오디오 채널이 후행 오디오 채널이라고 결정하며;
    상기 두 개의 오디오 채널들 중 제 1 오디오 채널이 선행 오디오 채널이고 상기 두 개의 오디오 채널들 중 제 2 오디오 채널이 후행 오디오 채널이라고 결정하는 것에 응답하여:
    상기 불일치 값에 기초하여 상기 제 2 오디오 채널을 조정함으로써 수정된 제 2 오디오 채널을 생성하며; 그리고
    상기 제 1 오디오 채널 및 상기 수정된 제 2 오디오 채널에 기초하여 적어도 하나의 인코딩된 채널의 제 1 프레임을 생성하며; 그리고
    상기 적어도 하나의 인코딩된 채널의 상기 제 1 프레임을 생성한 후의 기간 동안 상기 제 1 오디오 채널이 상기 후행 오디오 채널이고 상기 제 2 오디오 채널이 상기 선행 오디오 채널이라고 결정하는 것에 응답하여, 제 2 불일치 값에 기초하여 상기 적어도 하나의 인코딩된 채널의 제 2 프레임을 생성하는 것으로서, 상기 제 2 불일치 값은 상기 두 개의 오디오 채널들 사이에 시간 시프트 없음을 나타내는, 상기 적어도 하나의 인코딩된 채널의 제 2 프레임을 생성하도록 구성된, 통신 디바이스.
  2. 제 1 항에 있어서,
    상기 인코더는 오프셋 값에 기초하여 상기 제 2 오디오 채널을 시프트함으로써 상기 수정된 제 2 오디오 채널을 생성하도록 구성되고, 상기 불일치 값은 상기 오프셋 값을 나타내는, 통신 디바이스.
  3. 제 1 항에 있어서,
    상기 후행 오디오 채널의 제 2 샘플들은 상기 선행 오디오 채널의 제 1 샘플들에 비하여 시간적으로 지연되는, 통신 디바이스.
  4. 제 3 항에 있어서,
    상기 제 1 샘플들 및 상기 제 2 샘플들은 사운드 소스로부터 방출된 동일한 사운드에 대응하는, 통신 디바이스.
  5. 제 1 항에 있어서,
    상기 적어도 하나의 인코딩된 채널의 상기 제 1 프레임은 상기 제 1 오디오 채널의 제 1 샘플들 및 상기 수정된 제 2 오디오 채널의 제 2 샘플들에 기초하는, 통신 디바이스.
  6. 제 1 항에 있어서,
    상기 적어도 하나의 인코딩된 채널을 송신하도록 구성된 송신기를 더 포함하는, 통신 디바이스.
  7. 제 6 항에 있어서,
    상기 송신기는 또한 상기 불일치 값을 송신하도록 구성되는, 통신 디바이스.
  8. 제 6 항에 있어서,
    상기 인코더는 또한 절대 값 함수를 상기 불일치 값에 적용함으로써 비인과적 불일치 값을 결정하도록 구성되고, 상기 송신기는 또한 상기 비인과적 불일치 값을 송신하도록 구성되는, 통신 디바이스.
  9. 제 6 항에 있어서,
    상기 송신기는 또한 이득 파라미터를 송신하도록 구성되고, 상기 이득 파라미터의 값이 상기 제 1 오디오 채널 및 상기 수정된 제 2 오디오 채널에 기초하는, 통신 디바이스.
  10. 제 6 항에 있어서,
    상기 송신기는 또한 상기 제 1 오디오 채널이 기준 채널인 것으로 결정되는지 또는 상기 제 2 오디오 채널이 상기 기준 채널인 것으로 결정되는지를 나타내는 기준 채널 표시자를 송신하도록 구성되는, 통신 디바이스.
  11. 제 1 항에 있어서,
    상기 적어도 하나의 인코딩된 채널은 중간 채널, 사이드 채널, 또는 둘 다를 포함하는, 통신 디바이스.
  12. 제 1 항에 있어서,
    상기 제 1 오디오 채널은 우측 채널 또는 좌측 채널 중 하나의 채널을 포함하고, 상기 제 2 오디오 채널은 상기 우측 채널 또는 상기 좌측 채널 중 다른 채널을 포함하는, 통신 디바이스.
  13. 제 1 항에 있어서,
    상기 인코더는 상기 두 개의 오디오 채널들 중 단일 채널을 조정하는 것에 기초하여 상기 적어도 하나의 인코딩된 채널을 생성하도록 구성되는, 통신 디바이스.
  14. 제 1 항에 있어서,
    상기 인코더는 상기 불일치 값에 기초하여 비인과적 시프트를 수행함으로써 상기 제 2 오디오 채널을 조정하도록 구성되는, 통신 디바이스.
  15. 제 1 항에 있어서,
    상기 인코더는,
    상기 두 개의 오디오 채널들에 기초하여 비교 값들을 생성하며;
    상기 비교 값들에 기초하여 잠정적 불일치 값을 결정하며;
    상기 비교 값들에 대해 보간을 수행함으로써 보간된 비교 값들을 생성하며; 그리고
    상기 보간된 비교 값들에 기초하여 보간된 불일치 값을 결정하는 것으로서, 상기 불일치 값은 상기 보간된 불일치 값에 기초한, 상기 보간된 불일치 값을 결정하도록 구성되는, 통신 디바이스.
  16. 제 1 항에 있어서,
    상기 인코더는 또한 상기 제 1 오디오 채널이 상기 적어도 하나의 인코딩된 채널의 상기 제 2 프레임과 연관되는 기준 채널임을 나타내는 기준 채널 표시자를 생성하도록 구성되는, 통신 디바이스.
  17. 제 1 항에 있어서,
    제 1 마이크로폰으로부터 상기 제 1 오디오 채널을 수신하도록 구성된 제 1 입력 인터페이스; 및
    제 2 마이크로폰으로부터 상기 제 2 오디오 채널을 수신하도록 구성된 제 2 입력 인터페이스를 더 포함하는, 통신 디바이스.
  18. 제 1 항에 있어서,
    상기 두 개의 오디오 채널들에 기초하여 비교 값들을 결정하도록 구성된 신호 비교기를 더 포함하며, 상기 불일치 값은 상기 비교 값들에 기초하는, 통신 디바이스.
  19. 제 18 항에 있어서,
    상기 제 1 오디오 채널을 다운샘플링함으로써 제 1 다운샘플링된 채널을 생성하며; 그리고
    상기 제 2 오디오 채널을 다운샘플링함으로써 제 2 다운샘플링된 채널을 생성하도록 구성된 리샘플러를 더 포함하며,
    상기 비교 값들은 상기 제 1 다운샘플링된 채널과 상기 제 2 다운샘플링된 채널에 적용되는 복수의 불일치 값들에 기초하는, 통신 디바이스.
  20. 제 18 항에 있어서,
    상기 비교 값들은 교차 상관 값들을 나타내는, 통신 디바이스.
  21. 제 18 항에 있어서,
    상기 신호 비교기는 또한 상기 비교 값들에 기초하여 잠정적 불일치 값을 결정하도록 구성되고,
    상기 통신 디바이스는,
    상기 비교 값들에 대해 보간을 수행함으로써 상기 잠정적 불일치 값에 근접한 불일치 값들에 대응하는 보간된 비교 값들을 생성하고; 그리고
    상기 보간된 비교 값들에 기초하여 보간된 불일치 값을 결정하도록 구성된 보간기를 더 포함하며,
    상기 불일치 값은 상기 보간된 불일치 값에 기초하는, 통신 디바이스.
  22. 제 1 항에 있어서,
    상기 적어도 하나의 인코딩된 채널의 제 1 특정 프레임을 생성하기 위해 상기 두 개의 오디오 채널들 중 하나의 오디오 채널의 이전의 조정에 대응하는 제 1 불일치 값을 결정하고; 그리고
    상기 두 개의 오디오 채널들에 대응하는 비교 값들에 기초하여 보정된 불일치 값을 결정하도록 구성된 시프트 변경 분석기를 더 포함하며,
    상기 불일치 값은 상기 보정된 불일치 값과 상기 제 1 불일치 값의 비교에 기초하는, 통신 디바이스.
  23. 제 1 항에 있어서,
    상기 인코더는 모바일 디바이스에 통합되는, 통신 디바이스.
  24. 제 1 항에 있어서,
    상기 인코더는 기지국에 통합되는, 통신 디바이스.
  25. 디바이스에서, 두 개의 오디오 채널들을 수신하는 단계;
    상기 디바이스에서, 상기 두 개의 오디오 채널들에 기초하여 비교 값들을 생성하는 단계;
    상기 디바이스에서, 상기 비교 값들에 기초하여 잠정적 불일치 값을 결정하는 단계;
    상기 디바이스에서, 상기 비교 값들에 대해 보간을 수행함으로써 보간된 비교 값들을 생성하는 단계;
    상기 디바이스에서, 상기 보간된 비교 값들에 기초하여 보간된 불일치 값을 결정하는 단계;
    상기 디바이스에서, 상기 보간된 불일치 값에 기초하여 불일치 값을 결정하는 단계로서, 상기 불일치 값은 두 개의 오디오 채널들 사이의 시간적 불일치의 양을 나타내는, 상기 보간된 불일치 값에 기초하여 불일치 값을 결정하는 단계;
    상기 불일치 값에 기초하여, 타겟 채널 또는 기준 채널 중 적어도 하나를 결정하는 단계로서, 상기 타겟 채널은 상기 두 개의 오디오 채널들 중 후행 오디오 채널에 대응하고 상기 기준 채널은 상기 두 개의 오디오 채널들 중 선행 오디오 채널에 대응하는, 상기 타겟 채널 또는 기준 채널 중 적어도 하나를 결정하는 단계;
    상기 디바이스에서, 상기 불일치 값에 기초하여 상기 타겟 채널을 조정함으로써 수정된 타겟 채널을 생성하는 단계; 및
    상기 디바이스에서, 상기 기준 채널 및 상기 수정된 타겟 채널에 기초하여 적어도 하나의 인코딩된 신호를 생성하는 단계를 포함하는, 통신 방법.
  26. 제 25 항에 있어서,
    상기 보간된 비교 값들은 상기 잠정적 불일치 값에 근접한 불일치 값들에 대응하고, 사운드 소스가 제 2 마이크로폰보다 제 1 마이크로폰에 더 가깝고, 상기 기준 채널의 제 1 샘플들과 상기 수정된 타겟 채널의 제 2 샘플들은 상기 사운드 소스로부터 방출된 동일한 사운드에 대응하고, 상기 동일한 사운드는 상기 제 2 마이크로폰에서보다 상기 제 1 마이크로폰에서 더 일찍 검출되는, 통신 방법.
  27. 제 25 항에 있어서,
    상기 디바이스에서, 상기 기준 채널에 비하여 제 3 오디오 채널의 시간적 불일치의 특정 양을 나타내는 제 2 불일치 값을 결정하는 단계;
    상기 디바이스에서, 상기 제 2 불일치 값에 기초하여 상기 제 3 오디오 채널을 조정함으로써 수정된 제 3 오디오 채널을 생성하는 단계; 및
    상기 디바이스에서, 상기 기준 채널 및 상기 수정된 제 3 오디오 채널에 기초하여 제 2 인코딩된 신호를 생성하는 단계를 더 포함하는, 통신 방법.
  28. 제 25 항에 있어서,
    상기 디바이스에서, 제 4 오디오 채널에 비하여 제 3 오디오 채널의 시간적 불일치의 특정 양을 나타내는 제 2 불일치 값을 결정하는 단계;
    상기 디바이스에서, 상기 제 2 불일치 값에 기초하여 상기 제 4 오디오 채널을 조정함으로써 수정된 제 4 오디오 채널을 생성하는 단계; 및
    상기 디바이스에서, 상기 제 3 오디오 채널 및 상기 수정된 제 4 오디오 채널에 기초하여 적어도 하나의 제 2 인코딩된 신호를 생성하는 단계를 더 포함하는, 통신 방법.
  29. 제 25 항에 있어서,
    상기 디바이스는 모바일 디바이스를 포함하는, 통신 방법.
  30. 제 25 항에 있어서,
    상기 디바이스는 기지국을 포함하는, 통신 방법.
  31. 명령들을 저장하는 컴퓨터 판독가능 저장 디바이스로서,
    상기 명령들은, 프로세서에 의해 실행될 때, 상기 프로세서로 하여금,
    두 개의 오디오 채널들을 수신하는 것;
    상기 두 개의 오디오 채널들 사이의 시간적 불일치의 양을 나타내는 불일치 값을 결정하는 것;
    상기 불일치 값에 기초하여, 상기 두 개의 오디오 채널들 중 제 1 오디오 채널이 상기 두 개의 오디오 채널들 중 선행 오디오 채널이고 상기 두 개의 오디오 채널들 중 제 2 오디오 채널이 후행 오디오 채널이라고 결정하는 것;
    상기 두 개의 오디오 채널들 중 제 1 오디오 채널이 선행 오디오 채널이고 상기 두 개의 오디오 채널들 중 제 2 오디오 채널이 후행 오디오 채널이라고 결정하는 것에 응답하여:
    상기 불일치 값에 기초하여 상기 제 2 오디오 채널을 조정함으로써 수정된 제 2 오디오 채널을 생성하는 것; 및
    상기 제 1 오디오 채널 및 상기 수정된 제 2 오디오 채널에 기초하여 적어도 하나의 인코딩된 채널의 제 1 프레임을 생성하는 것; 및
    소정 기간 동안 상기 제 1 오디오 채널이 상기 후행 오디오 채널이고 상기 제 2 오디오 채널이 상기 선행 오디오 채널이라고 결정하는 것에 응답하여, 제 2 불일치 값에 기초하여 상기 적어도 하나의 인코딩된 채널의 제 2 프레임을 생성하는 것으로서, 상기 제 2 불일치 값은 상기 두 개의 오디오 채널들 사이에 시간 시프트 없음을 나타내는, 상기 적어도 하나의 인코딩된 채널의 제 2 프레임을 생성하는 것을 포함하는 동작들을 수행하게 하는, 컴퓨터 판독가능 저장 디바이스.
  32. 제 31 항에 있어서,
    상기 적어도 하나의 인코딩된 채널은 중간 채널, 사이드 채널, 또는 둘 다를 포함하는, 컴퓨터 판독가능 저장 디바이스.
  33. 두 개의 오디오 채널들에 기초한 비교 값들에 기초하여 잠정적 불일치 값을 결정하는 수단;
    상기 비교 값들에 대해 보간을 수행함으로써 보간된 비교 값들을 결정하는 수단;
    상기 보간된 비교 값들에 기초하여 보간된 불일치 값을 결정하는 수단;
    상기 보간된 불일치 값에 기초하여 불일치 값을 결정하는 수단으로서, 상기 불일치 값은 두 개의 오디오 채널들 사이의 시간적 불일치의 양을 나타내고, 상기 두 개의 오디오 채널들 중 선행 오디오 채널은 기준 채널에 대응하고 상기 두 개의 오디오 채널들 중 후행 오디오 채널은 타겟 채널에 대응하는, 상기 보간된 불일치 값에 기초하여 불일치 값을 결정하는 수단; 및
    상기 기준 채널 및 수정된 타겟 채널에 기초하여 생성되는 적어도 하나의 인코딩된 채널을 생성하는 수단으로서, 상기 수정된 타겟 채널은 상기 불일치 값에 기초하여 상기 타겟 채널을 조정함으로써 생성된, 상기 적어도 하나의 인코딩된 채널을 생성하는 수단을 포함하는, 통신 장치.
  34. 제 33 항에 있어서,
    상기 잠정적 불일치 값을 결정하는 수단, 상기 보간된 비교 값들을 결정하는 수단, 상기 보간된 불일치 값을 결정하는 수단, 상기 불일치 값을 결정하는 수단, 및 상기 적어도 하나의 인코딩된 채널을 생성하는 수단은 모바일 전화기, 통신 디바이스, 컴퓨터, 뮤직 플레이어, 비디오 플레이어, 엔터테인먼트 유닛, 내비게이션 디바이스, 개인 정보 단말기 (PDA), 디코더, 또는 셋톱 박스 중 적어도 하나에 통합되는, 통신 장치.
  35. 제 33 항에 있어서,
    상기 잠정적 불일치 값을 결정하는 수단, 상기 보간된 비교 값들을 결정하는 수단, 상기 보간된 불일치 값을 결정하는 수단, 상기 불일치 값을 결정하는 수단, 및 상기 적어도 하나의 인코딩된 채널을 생성하는 수단은 모바일 디바이스에 통합되는, 통신 장치.
  36. 제 33 항에 있어서,
    상기 잠정적 불일치 값을 결정하는 수단, 상기 보간된 비교 값들을 결정하는 수단, 상기 보간된 불일치 값을 결정하는 수단, 상기 불일치 값을 결정하는 수단, 및 상기 적어도 하나의 인코딩된 채널을 생성하는 수단은 기지국에 통합되는, 통신 장치.
  37. 삭제
KR1020187013766A 2015-11-20 2016-09-26 다수의 오디오 신호들의 인코딩 KR102054606B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020197035702A KR102391271B1 (ko) 2015-11-20 2016-09-26 다수의 오디오 신호들의 인코딩

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562258369P 2015-11-20 2015-11-20
US62/258,369 2015-11-20
US15/274,041 2016-09-23
US15/274,041 US10152977B2 (en) 2015-11-20 2016-09-23 Encoding of multiple audio signals
PCT/US2016/053799 WO2017087073A1 (en) 2015-11-20 2016-09-26 Encoding of multiple audio signals

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020197035702A Division KR102391271B1 (ko) 2015-11-20 2016-09-26 다수의 오디오 신호들의 인코딩

Publications (2)

Publication Number Publication Date
KR20180084789A KR20180084789A (ko) 2018-07-25
KR102054606B1 true KR102054606B1 (ko) 2019-12-10

Family

ID=57137264

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020187013766A KR102054606B1 (ko) 2015-11-20 2016-09-26 다수의 오디오 신호들의 인코딩
KR1020197035702A KR102391271B1 (ko) 2015-11-20 2016-09-26 다수의 오디오 신호들의 인코딩

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020197035702A KR102391271B1 (ko) 2015-11-20 2016-09-26 다수의 오디오 신호들의 인코딩

Country Status (8)

Country Link
US (3) US10152977B2 (ko)
EP (2) EP4075428A1 (ko)
JP (2) JP6571281B2 (ko)
KR (2) KR102054606B1 (ko)
CN (2) CN112951249A (ko)
CA (1) CA3001579C (ko)
TW (2) TWI689917B (ko)
WO (1) WO2017087073A1 (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9407989B1 (en) 2015-06-30 2016-08-02 Arthur Woodrow Closed audio circuit
US10152977B2 (en) * 2015-11-20 2018-12-11 Qualcomm Incorporated Encoding of multiple audio signals
WO2017125544A1 (en) * 2016-01-22 2017-07-27 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for mdct m/s stereo with global ild with improved mid/side decision
US10304468B2 (en) * 2017-03-20 2019-05-28 Qualcomm Incorporated Target sample generation
US10777209B1 (en) * 2017-05-01 2020-09-15 Panasonic Intellectual Property Corporation Of America Coding apparatus and coding method
CN108877815B (zh) * 2017-05-16 2021-02-23 华为技术有限公司 一种立体声信号处理方法及装置
US10885921B2 (en) * 2017-07-07 2021-01-05 Qualcomm Incorporated Multi-stream audio coding
CN109389987B (zh) 2017-08-10 2022-05-10 华为技术有限公司 音频编解码模式确定方法和相关产品
US10891960B2 (en) * 2017-09-11 2021-01-12 Qualcomm Incorproated Temporal offset estimation
US10872611B2 (en) * 2017-09-12 2020-12-22 Qualcomm Incorporated Selecting channel adjustment method for inter-frame temporal shift variations
US10839814B2 (en) * 2017-10-05 2020-11-17 Qualcomm Incorporated Encoding or decoding of audio signals
CN108428457B (zh) * 2018-02-12 2021-03-23 北京百度网讯科技有限公司 音频去重方法及装置
WO2020009082A1 (ja) * 2018-07-03 2020-01-09 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置及び符号化方法
US11295726B2 (en) * 2019-04-08 2022-04-05 International Business Machines Corporation Synthetic narrowband data generation for narrowband automatic speech recognition systems
CN113870881B (zh) * 2021-09-26 2024-04-26 西南石油大学 一种鲁棒哈默斯坦子带样条自适应回声消除方法
US11900961B2 (en) * 2022-05-31 2024-02-13 Microsoft Technology Licensing, Llc Multichannel audio speech classification

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100290629A1 (en) * 2007-12-21 2010-11-18 Panasonic Corporation Stereo signal converter, stereo signal inverter, and method therefor
US20120232912A1 (en) * 2009-09-11 2012-09-13 Mikko Tammi Method, Apparatus and Computer Program Product for Audio Coding

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6317703B1 (en) * 1996-11-12 2001-11-13 International Business Machines Corporation Separation of a mixture of acoustic sources into its components
JP4137202B2 (ja) * 1997-10-17 2008-08-20 株式会社日立メディコ 超音波診断装置
US7240001B2 (en) * 2001-12-14 2007-07-03 Microsoft Corporation Quality improvement techniques in an audio encoder
CN1266673C (zh) * 2002-03-12 2006-07-26 诺基亚有限公司 可伸缩音频编码的有效改进
US20070160236A1 (en) * 2004-07-06 2007-07-12 Kazuhiro Iida Audio signal encoding device, audio signal decoding device, and method and program thereof
US7742913B2 (en) * 2005-10-24 2010-06-22 Lg Electronics Inc. Removing time delays in signal paths
WO2007080211A1 (en) * 2006-01-09 2007-07-19 Nokia Corporation Decoding of binaural audio signals
EP1853092B1 (en) * 2006-05-04 2011-10-05 LG Electronics, Inc. Enhancing stereo audio with remix capability
GB2453117B (en) * 2007-09-25 2012-05-23 Motorola Mobility Inc Apparatus and method for encoding a multi channel audio signal
US8175291B2 (en) * 2007-12-19 2012-05-08 Qualcomm Incorporated Systems, methods, and apparatus for multi-microphone based speech enhancement
JPWO2009142017A1 (ja) * 2008-05-22 2011-09-29 パナソニック株式会社 ステレオ信号変換装置、ステレオ信号逆変換装置およびこれらの方法
US8817992B2 (en) 2008-08-11 2014-08-26 Nokia Corporation Multichannel audio coder and decoder
CN101673545B (zh) * 2008-09-12 2011-11-16 华为技术有限公司 一种编解码方法及装置
WO2010085083A2 (en) * 2009-01-20 2010-07-29 Lg Electronics Inc. An apparatus for processing an audio signal and method thereof
US20100331048A1 (en) * 2009-06-25 2010-12-30 Qualcomm Incorporated M-s stereo reproduction at a device
US8463414B2 (en) 2010-08-09 2013-06-11 Motorola Mobility Llc Method and apparatus for estimating a parameter for low bit rate stereo transmission
US9552840B2 (en) * 2010-10-25 2017-01-24 Qualcomm Incorporated Three-dimensional sound capturing and reproducing with multi-microphones
CN103339670B (zh) * 2011-02-03 2015-09-09 瑞典爱立信有限公司 确定多通道音频信号的通道间时间差
US9767822B2 (en) * 2011-02-07 2017-09-19 Qualcomm Incorporated Devices for encoding and decoding a watermarked signal
EP2702776B1 (en) * 2012-02-17 2015-09-23 Huawei Technologies Co., Ltd. Parametric encoder for encoding a multi-channel audio signal
WO2013156814A1 (en) 2012-04-18 2013-10-24 Nokia Corporation Stereo audio signal encoder
US9865269B2 (en) * 2012-07-19 2018-01-09 Nokia Technologies Oy Stereo audio signal encoder
US9479886B2 (en) * 2012-07-20 2016-10-25 Qualcomm Incorporated Scalable downmix design with feedback for object-based surround codec
CA2880038C (en) * 2012-07-27 2021-06-01 Thorlabs, Inc. Agile imaging system
KR20160087827A (ko) * 2013-11-22 2016-07-22 퀄컴 인코포레이티드 고대역 코딩에서의 선택적 위상 보상
CN104700839B (zh) * 2015-02-26 2016-03-23 深圳市中兴移动通信有限公司 多声道声音采集的方法、装置、手机及系统
US10152977B2 (en) 2015-11-20 2018-12-11 Qualcomm Incorporated Encoding of multiple audio signals

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100290629A1 (en) * 2007-12-21 2010-11-18 Panasonic Corporation Stereo signal converter, stereo signal inverter, and method therefor
US20120232912A1 (en) * 2009-09-11 2012-09-13 Mikko Tammi Method, Apparatus and Computer Program Product for Audio Coding

Also Published As

Publication number Publication date
CN112951249A (zh) 2021-06-11
CN108292505B (zh) 2022-05-13
EP3378064A1 (en) 2018-09-26
EP4075428A1 (en) 2022-10-19
JP2019207430A (ja) 2019-12-05
KR20180084789A (ko) 2018-07-25
JP6786679B2 (ja) 2020-11-18
CN108292505A (zh) 2018-07-17
US20200202873A1 (en) 2020-06-25
TW201935465A (zh) 2019-09-01
CA3001579C (en) 2021-01-12
WO2017087073A1 (en) 2017-05-26
TW201719634A (zh) 2017-06-01
KR20190137181A (ko) 2019-12-10
JP6571281B2 (ja) 2019-09-04
TWI664624B (zh) 2019-07-01
US10586544B2 (en) 2020-03-10
US11094330B2 (en) 2021-08-17
BR112018010305A2 (pt) 2018-12-04
CA3001579A1 (en) 2017-05-26
KR102391271B1 (ko) 2022-04-26
US20190035409A1 (en) 2019-01-31
US20170148447A1 (en) 2017-05-25
US10152977B2 (en) 2018-12-11
JP2018534625A (ja) 2018-11-22
TWI689917B (zh) 2020-04-01

Similar Documents

Publication Publication Date Title
KR102054606B1 (ko) 다수의 오디오 신호들의 인코딩
KR102230623B1 (ko) 다중의 오디오 신호들의 인코딩
KR102551431B1 (ko) 목표 샘플 발생
KR102032668B1 (ko) 다수의 오디오 신호들의 인코딩
KR102009612B1 (ko) 시간 오프셋 추정

Legal Events

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