KR20200051620A - 프레임간 시간 시프트 편차들에 대한 채널 조정 방법의 선택 - Google Patents

프레임간 시간 시프트 편차들에 대한 채널 조정 방법의 선택 Download PDF

Info

Publication number
KR20200051620A
KR20200051620A KR1020207006776A KR20207006776A KR20200051620A KR 20200051620 A KR20200051620 A KR 20200051620A KR 1020207006776 A KR1020207006776 A KR 1020207006776A KR 20207006776 A KR20207006776 A KR 20207006776A KR 20200051620 A KR20200051620 A KR 20200051620A
Authority
KR
South Korea
Prior art keywords
channel
samples
target
interpolation
audio signal
Prior art date
Application number
KR1020207006776A
Other languages
English (en)
Other versions
KR102708813B1 (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 퀄컴 인코포레이티드
Publication of KR20200051620A publication Critical patent/KR20200051620A/ko
Application granted granted Critical
Publication of KR102708813B1 publication Critical patent/KR102708813B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/002Dynamic bit allocation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S3/00Systems employing more than two channels, e.g. quadraphonic
    • H04S3/008Systems employing more than two channels, e.g. quadraphonic in which the audio signals are in digital form, i.e. employing more than two discrete digital channels
    • 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/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/22Mode decision, i.e. based on audio signal content versus external parameters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • 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
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/038Speech enhancement, e.g. noise reduction or echo cancellation using band spreading techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S1/00Two-channel systems
    • H04S1/007Two-channel systems in which the audio signals are in digital form
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2400/00Details of stereophonic systems covered by H04S but not provided for in its groups
    • H04S2400/01Multi-channel, i.e. more than two input channels, sound reproduction with two speakers wherein the multi-channel information is substantially preserved
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2400/00Details of stereophonic systems covered by H04S but not provided for in its groups
    • H04S2400/03Aspects of down-mixing multi-channel audio to configurations with lower numbers of playback channels, e.g. 7.1 -> 5.1
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2400/00Details of stereophonic systems covered by H04S but not provided for in its groups
    • H04S2400/15Aspects of sound capture and related signal processing for recording or reproduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2420/00Techniques used stereophonic systems covered by H04S but not provided for in its groups
    • H04S2420/03Application of parametric coding in stereophonic audio systems

Landscapes

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

Abstract

다중-채널 오디오 또는 음성 신호 프로세싱을 위한 방법은 참조 채널 및 목표 채널을 수신하는 단계, 제 1 부정합 값과 제 2 부정합 값 사이의 편차를 결정하는 단계, 및 상기 편차를 미리 결정된 값을 가질 수도 있거나 또는 프레임 유형 또는 평활화 인자에 기초하여 조정될 수도 있는 제 1 임계치와 비교하는 단계를 포함한다. 본 방법은 또한 조정된 목표 샘플들의 세트를 발생시키기 위해, 상기 편차에 기초하여, 그리고 상기 비교에 기초하여, 상기 목표 채널의 목표 샘플들의 세트를 조정하는 단계를 포함한다. 목표 샘플들의 세트를 조정하는 단계는 상기 편차에 기초하여, 제 1 내삽 및 제 2 내삽 중 하나를 선택하는 단계를 포함한다. 본 방법은 참조 샘플들의 세트 및 상기 조정된 목표 샘플들의 세트에 기초하여 적어도 하나의 인코딩된 채널을 발생시키는 단계를 더 포함한다. 본 방법은 또한 상기 적어도 하나의 인코딩된 채널을 제 2 디바이스로 송신하는 단계를 포함한다.

Description

프레임간 시간 시프트 편차들에 대한 채널 조정 방법의 선택
I. 관련 출원들에 대한 상호 참조
본 출원은 "SELECTING CHANNEL ADJUSTMENT METHOD FOR INTER-FRAME TEMPORAL SHIFT VARIATIONS" 란 발명의 명칭으로, 2017년 9월 12일에 출원된 미국 가특허 출원번호 제 62/557,373 호, 및 "SELECTING CHANNEL ADJUSTMENT METHOD FOR INTER-FRAME TEMPORAL SHIFT VARIATIONS"란 발명의 명칭으로, 2018년 8월 28일에 출원된 미국 특허출원 번호 제 16/115,166 호로부터 우선권을 주장하며, 이들은 본원에 전체적으로 참조로 포함된다.
II. 분야
본 개시물은 일반적으로 프레임간 시간 시프트 편차들에 대한 채널 조정 방법을 선택하는 것에 관한 것이다.
III. 관련 기술의 설명
기술의 진보는 더 작고 더 강력한 컴퓨팅 디바이스들을 초래하였다. 예를 들어, 모바일 및 스마트폰들, 태블릿들 및 랩탑 컴퓨터들과 같은, 무선 전화기들을 포함한, 다양한 휴대형 개인 컴퓨팅 디바이스들이 작고, 경량이며, 사용자들에 의해 쉽게 휴대된다. 이들 디바이스들은 무선 네트워크들을 통해서 보이스 및 데이터 패킷들을 통신할 수 있다. 또, 다수의 이러한 디바이스들은 디지털 스틸 카메라, 디지털 비디오 카메라, 디지털 리코더, 및 오디오 파일 플레이어와 같은, 추가적인 기능을 포함한다. 또한, 이러한 디바이스들은 인터넷에 액세스하는데 사용될 수 있는, 웹 브라우저 애플리케이션과 같은, 소프트웨어 애플리케이션들을 포함한, 실행가능한 명령들을 프로세싱할 수 있다. 이와 같이, 이들 디바이스들은 상당한 컴퓨팅 및 네트워킹 능력들을 포함할 수 있다.
무선 전화기들과 같은, 전자 디바이스들은 오디오 신호들을 수신하는 다수의 마이크로폰들을 포함할 수도 있다. 다수의 상황들에서, 사운드 소스 (예컨대, 말하는 사람, 음악 소스, 등) 는 제 2 마이크로폰보다 제 1 마이크로폰에 더 가까울 수도 있다. 이러한 상황들에서, 제 2 마이크로폰으로부터 수신된 제 2 오디오 신호는 제 1 마이크로폰으로부터 수신된 제 1 오디오 신호에 대해 지연될 수도 있다. 오디오 신호들을 인코딩하는데 사용되는 인코딩의 하나의 유형은 스테레오 인코딩이다. 스테레오 인코딩에서, 마이크로폰들로부터의 오디오 신호들은 중간-채널 (예컨대, 제 1 오디오 신호와 제 2 오디오 신호의 총합에 대응하는 신호) 및 측면-채널 (예컨대, 제 1 오디오 신호와 제 2 오디오 신호 사이의 차이에 대응하는 신호) 을 발생시키기 위해 인코딩될 수도 있다. 제 1 오디오 신호와 제 2 오디오 신호의 수신 사이의 지연 때문에, 오디오 신호들은 시간적으로 오정렬될 수도 있으며, 이는 제 1 오디오 신호와 제 2 오디오 신호 사이의 차이를 증가시킬 수도 있다. 제 1 오디오 신호와 제 2 오디오 신호 사이의 차이에서의 증가 때문에, 더 많은 개수의 비트들이 측면-채널을 인코딩하는데 사용될 수도 있다.
제 1 오디오 신호와 제 2 오디오 신호 사이의 차이를 감소시키기 위해 (그리고, 측면-채널을 인코딩하는데 사용되는 비트수를 감소시키기 위해), 제 1 오디오 신호 및 제 2 오디오 신호는 시간적으로 정렬될 수도 있다. 예를 들어, 제 2 오디오 신호의 프레임이 제 2 오디오 신호의 프레임을 제 1 오디오 신호의 대응하는 프레임과 시간적으로 정렬하기 위해 시간-시프트될 수도 있다. 사운드 소스와 마이크로폰들 사이의 거리가 변할 수도 있기 때문에, 시프트 양 (예컨대, 제 2 오디오 신호가 시프트되는 샘플들의 양) 은 프레임 마다 변할 수도 있다. 2개의 프레임들 사이의 시프트 값들이 상이하면, 2개의 프레임들 사이의 경계에 불연속성이 도입될 수도 있다. 예를 들어, 시프트 값들에서의 차이로 인해, 하나의 프레임으로부터 다음 프레임까지 하나 이상의 샘플들이 스킵되거나 또는 반복될 수도 있다. 오디오 신호들의 프레임 경계들에서의 불연속들은 오디오 신호들의 플레이백 동안 가청 클릭들 또는 다른 오디오 아티팩트들을 초래할 수도 있다.
IV. 요약
일 구현예에 따르면, 디바이스는 참조 채널 및 목표 채널을 수신하도록 구성된 인코더를 포함한다. 참조 채널은 참조 샘플들의 세트를 포함하며, 목표 채널은 목표 샘플들의 세트를 포함한다. 인코더는 또한 제 1 부정합 값과 제 2 부정합 값 사이의 편차 (variation) 를 결정하도록 구성된다. 제 1 부정합 값은 참조 샘플들의 세트의 제 1 참조 샘플과 목표 샘플들의 세트의 제 1 목표 샘플 사이의 시간 부정합의 양을 표시한다. 제 2 부정합 값은 참조 샘플들의 세트의 제 2 참조 샘플과 목표 샘플들의 세트의 제 2 목표 샘플 사이의 시간 부정합의 양을 표시한다. 인코더는 편차를 제 1 임계치와 비교하도록 구성된다. 인코더는 편차에 기초하여, 그리고 비교에 기초하여, 목표 샘플들의 세트를 조정하여 조정된 목표 샘플들의 세트를 발생시키도록 구성된다. 인코더는 참조 샘플들의 세트 및 조정된 목표 샘플들의 세트에 기초하여, 적어도 하나의 인코딩된 채널을 발생시키도록 구성된다. 디바이스는 적어도 하나의 인코딩된 채널을 송신하도록 구성된 네트워크 인터페이스를 포함한다.
다른 구현예에 따르면, 무선 통신의 방법은 제 1 디바이스에서, 참조 채널 및 목표 채널을 수신하는 단계를 포함한다. 참조 채널은 참조 샘플들의 세트를 포함하며, 목표 채널은 목표 샘플들의 세트를 포함한다. 본 방법은 또한 제 1 부정합 값과 제 2 부정합 값 사이의 편차를 결정하는 단계를 포함한다. 제 1 부정합 값은 참조 샘플들의 세트의 제 1 참조 샘플과 목표 샘플들의 세트의 제 1 목표 샘플 사이의 시간 부정합의 양을 표시한다. 제 2 부정합 값은 참조 샘플들의 세트의 제 2 참조 샘플과 목표 샘플들의 세트의 제 2 목표 샘플 사이의 시간 부정합의 양을 표시한다. 본 방법은 편차를 제 1 임계치와 비교하는 단계를 포함한다. 본 방법은 또한 조정된 목표 샘플들의 세트를 발생시키기 위해, 편차에 기초하여, 그리고, 비교에 기초하여, 목표 샘플들의 세트를 조정하는 단계를 포함한다. 본 방법은 참조 샘플들의 세트 및 조정된 목표 샘플들의 세트에 기초하여, 적어도 하나의 인코딩된 채널을 발생시키는 단계를 더 포함한다. 본 방법은 또한 적어도 하나의 인코딩된 채널을 제 2 디바이스로 송신하는 단계를 포함한다.
다른 구현예에 따르면, 장치는 참조 채널을 수신하는 수단 및 목표 채널을 수신하는 수단을 포함한다. 참조 채널은 참조 샘플들의 세트를 포함하며, 목표 채널은 목표 샘플들의 세트를 포함한다. 본 장치는 또한 제 1 부정합 값과 제 2 부정합 값 사이의 편차를 결정하는 수단을 포함한다. 제 1 부정합 값은 참조 샘플들의 세트의 제 1 참조 샘플과 목표 샘플들의 세트의 제 1 목표 샘플 사이의 시간 부정합의 양을 표시한다. 제 2 부정합 값은 참조 샘플들의 세트의 제 2 참조 샘플과 목표 샘플들의 세트의 제 2 목표 샘플 사이의 시간 부정합의 양을 표시한다. 본 장치는 편차를 제 1 임계치와 비교하는 수단을 포함한다. 본 장치는 또한 조정된 목표 샘플들의 세트를 발생시키기 위해, 편차에 기초하여, 그리고 비교에 기초하여, 목표 샘플들의 세트를 조정하는 수단을 포함한다. 본 장치는 참조 샘플들의 세트 및 조정된 목표 샘플들의 세트에 기초하여, 적어도 하나의 인코딩된 채널을 발생시키는 수단을 더 포함한다. 본 장치는 또한 적어도 하나의 인코딩된 채널을 송신하는 수단을 포함한다.
다른 구현예에 따르면, 비일시성 컴퓨터-판독가능 매체는 프로세서에 의해 실행될 때, 프로세서로 하여금, 제 1 디바이스에서, 참조 채널 및 목표 채널을 수신하는 것을 포함하는 동작들을 수행하게 하는 명령들을 저장한다. 참조 채널은 참조 샘플들의 세트를 포함하며, 목표 채널은 목표 샘플들의 세트를 포함한다. 동작들은 또한 제 1 부정합 값과 제 2 부정합 값 사이의 편차를 결정하는 것을 포함한다. 제 1 부정합 값은 참조 샘플들의 세트의 제 1 참조 샘플과 목표 샘플들의 세트의 제 1 목표 샘플 사이의 시간 부정합의 양을 표시한다. 제 2 부정합 값은 참조 샘플들의 세트의 제 2 참조 샘플과 목표 샘플들의 세트의 제 2 목표 샘플 사이의 시간 부정합의 양을 표시한다. 동작들은 편차를 제 1 임계치와 비교하는 것을 포함한다. 동작들은 또한 조정된 목표 샘플들의 세트를 발생시키기 위해, 편차에 기초하여, 그리고, 비교에 기초하여, 목표 샘플들의 세트를 조정하는 것을 포함한다. 동작들은 참조 샘플들의 세트 및 조정된 목표 샘플들의 세트에 기초하여, 적어도 하나의 인코딩된 채널을 발생시키는 것을 더 포함한다. 동작들은 또한 적어도 하나의 인코딩된 채널을 제 2 디바이스로 송신하는 것을 포함한다.
본 개시물의 다른 구현예들, 이점들, 및 특징들은 다음 섹션들: 도면의 간단한 설명, 상세한 설명, 및 청구범위를 포함한, 전체 출원서의 검토 후 명백하게 알 수 있을 것이다.
도 1 은 부정합 값들 사이의 편차에 기초하여 오디오 샘플들을 조정하도록 구성된 디바이스를 포함하는 시스템의 특정의 구현예의 블록도이다.
도 2 는 부정합 값들 사이의 편차에 기초하여 조정될 수도 있는 샘플들의 제 1 특정의 예를 예시하는 다이어그램이다.
도 3 은 부정합 값들 사이의 편차에 기초하여 조정될 수도 있는 샘플들의 제 2 특정의 예를 예시하는 다이어그램이다.
도 4 는 부정합 값들 사이의 편차에 기초하여 오디오 샘플들을 조정하도록 구성된 디바이스를 포함하는 시스템의 제 2 특정의 구현예의 블록도이다.
도 5 는 조정된 샘플들을 이용하여 다수의 채널들을 인코딩하도록 구성된 시스템의 다이어그램이다.
도 6 은 참조 채널을 결정하기 위한 상태 머신의 일 예의 다이어그램이다.
도 7 은 부정합 값들 사이의 편차에 기초하여 조정될 수도 있는 샘플들의 제 3 특정의 예를 예시하는 다이어그램이다.
도 8 은 부정합 값들 사이의 편차에 기초하여 조정될 수도 있는 샘플들의 제 4 특정의 예를 예시하는 다이어그램이다.
도 9 는 조정된 샘플들을 이용하여 다수의 채널들을 인코딩하는 특정의 방법을 예시하는 플로우 차트이다.
도 10 은 도 1 내지 도 9 의 시스템들 및 방법들에 따라 동작들을 수행하도록 동작가능한 무선 디바이스의 블록도이다.
도 11 은 도 1 내지 도 9 의 시스템들 및 방법들에 따라 동작들을 수행하도록 동작가능한 기지국이다.
상세한 설명
본 개시물의 특정의 양태들이 도면들을 참조하여 아래에서 설명된다. 이 설명에서, 공통 특징들은 도면 전반에 걸쳐서 공통 참조 번호들로 표시된다. 본원에서 사용될 때, "예시적인" 은 예, 구현예, 및/또는 양태를 표시할 수도 있으며, 한정하거나 또는 선호사항 또는 바람직한 구현예를 표시하는 것으로 해석되어서는 안된다. 본원에서 사용될 때, 구조, 컴포넌트, 동작, 등과 같은 엘리먼트를 한정하는데 사용되는 서수의 용어 (예컨대, "제 1", "제 2", "제 3", 등) 는 다른 엘리먼트에 대해서 그 엘리먼트의 임의의 우선순위 또는 순서를 단독으로 표시하기 보다는, 오히려 그 엘리먼트를 (서수의 용어를 사용하지 않는다면) 동일한 이름을 가지는 다른 엘리먼트와 단순히 식별한다. 본원에서 사용될 때, 용어 "세트" 는 특정의 엘리먼트 중 하나 이상을 지칭한다.
다중-채널 오디오 인코딩에 사용되는 오디오 채널들의 샘플들을 조정하는 시스템들 및 방법들이 개시된다. 디바이스는 다수의 오디오 채널들을 인코딩하도록 구성된 인코더를 포함할 수도 있다. 다수의 오디오 채널들이 다수의 캡쳐 디바이스들 (예컨대, 다수의 마이크로폰들) 을 이용하여, 시간적으로 동시에 캡쳐될 수도 있다. 디바이스는 다수의 마이크로폰들 중 하나를 통한 오디오 채널의 수신에서의 지연을 고려하기 위해 다수의 오디오 채널들 중 하나를 시간-시프트시키도록 구성될 수도 있다. 예시하기 위하여, 다수의 마이크로폰들이 원격 화상 회의실 내 다수의 로케이션들에 전개될 수도 있으며, 사운드 소스 (예컨대, 말하는 사람) 는 제 2 마이크로폰보다 제 1 마이크로폰에 더 가까울 수도 있다. 따라서, 제 2 마이크로폰을 통해서 수신된 제 2 오디오 채널은 제 1 마이크로폰을 통해서 수신된 제 1 오디오 채널에 대해 지연될 수도 있다.
오디오 채널들 중 하나 이상을 수신 시 지연은 코딩 효율을 감소시킬 수도 있다. 예시하기 위하여, 스테레오 인코딩에서, 다수의 마이크로폰들로부터의 오디오 채널들이 중간-채널 및 측면-채널을 발생시키기 위해 인코딩될 수도 있다. 중간-채널은 제 1 오디오 채널과 제 2 오디오 채널의 총합에 대응할 수도 있으며, 측면-채널은 제 1 오디오 채널과 제 2 오디오 채널 사이의 차이에 대응할 수도 있다. 제 1 오디오 채널과 제 2 오디오 채널 사이의 차이가 작으면, 스테레오 인코딩의 대부분의 비트들이 중간-채널을 인코딩하는데 사용될 수도 있으며, 이는 중간-채널의 코딩 효율을 증가시키고 디코딩 후 오디오 채널들의 플레이백의 품질을 증가시킨다. 제 1 오디오 채널 및 제 2 오디오 채널이 시간적으로 정렬되지 않으면 (예컨대, 하나의 오디오 채널이 다른 오디오 채널에 대해 시간적으로 지연되지 않으면), 제 1 오디오 채널과 제 2 오디오 채널 사이의 차이가 증가될 수도 있으며, 따라서, 측면-채널을 인코딩하는데 사용되는 비트수가 증가될 수도 있다. 측면-채널을 인코딩하는데 사용되는 비트수를 증가시키는 것은 중간-채널을 인코딩하는데 이용가능한 비트수를 감소시킨다.
제 1 오디오 채널과 제 2 오디오 채널 사이의 차이를 감소시키기 위해, 오디오 채널들 중 하나가 오디오 채널들을 시간적으로 정렬하기 위해 시간-시프트될 수도 있다. 사운드 소스가 제 2 마이크로폰보다 제 1 마이크로폰에 더 가까울 때, 제 2 오디오 신호의 프레임들은 제 1 오디오 신호의 프레임들에 대해 지연될 수도 있다. 이 경우, 제 1 오디오 신호는 "참조 오디오 신호" 또는 "참조 채널" 로서 지칭될 수도 있으며, 지연된 제 2 오디오 신호는 "목표 오디오 신호" 또는 "목표 채널" 로서 지칭될 수도 있다. 대안적으로, 사운드 소스가 제 1 마이크로폰 보다 제 2 마이크로폰에 더 가까울 때, 제 1 오디오 신호의 프레임들은 제 2 오디오 신호의 프레임들에 대해 지연될 수도 있다. 이 경우, 제 2 오디오 신호는 참조 오디오 신호 또는 참조 채널로서 지칭될 수도 있으며, 지연된 제 1 오디오 신호는 목표 오디오 신호 또는 목표 채널로서 지칭될 수도 있다.
사운드 소스들 (예컨대, 화자들) 이 회의 또는 원거리 영상회의 실에 로케이트되는 위치 또는 사운드 소스 (예컨대, 화자) 위치가 마이크로폰들에 대해 어떻게 변하는지에 따라서, 참조 채널 및 목표 채널은 프레임 마다 변할 수도 있으며; 유사하게, 시간 지연 값이 또한 프레임 마다 변할 수도 있다. 그러나, 일부 구현예들에서, 불일치 값은 "참조" 채널에 대한 "목표" 채널의 지연의 양을 표시하기 위해 항상 양일 수도 있다. 더욱이, 불일치 값은 목표 채널이 "참조" 채널과 정렬되도록 (예컨대, 최대로 정렬되도록) 그 지연된 목표 채널이 시간적으로 "풀 백 (pull back) 되는" "비-인과적 시프트" 값에 대응할 수도 있다. 다른 구현예들에서, 불일치 값은 참조 채널이 지연된 "목표" 채널과 정렬되도록 (예컨대, 최대로 정렬되도록) 선두(leading) 참조 채널이 시간적으로 "풀 포워드 (pull forward) 되는" "인과적 시프트" 값에 대응할 수도 있다. 중간 채널 및 측면 채널을 결정하는 다운 믹스 알고리즘은 참조 채널 및 비-인과적 또는 인과적 시프트된 목표 채널에 대해 수행될 수도 있다.
인코더는 제 2 오디오 채널에 대한 제 1 오디오 채널의 제 1 시프트를 표시하는 제 1 부정합 값을 결정하도록 구성될 수도 있다. 예를 들어, 제 1 부정합 값은 제 2 오디오 채널의 프레임을 제 1 오디오 채널의 대응하는 프레임과 시간적으로 정렬하기 위해 제 2 오디오 채널의 프레임이 시프트되는 샘플들의 수를 표시할 수도 있다. 인코더는 제 2 프레임을 제 1 오디오 채널의 제 1 프레임과 시간적으로 정렬하기 위해 제 1 부정합 값에 기초하여 제 2 오디오 채널의 제 2 프레임을 시간-시프트시킬 수도 있다. 제 1 오디오 채널 및 제 2 오디오 채널을 시간적으로 정렬하는 것은 제 1 오디오 채널과 제 2 오디오 채널 사이의 차이를 감소시킬 수도 있다. 다른 오디오 채널에 대한 하나의 오디오 채널의 지연이 프레임 마다 변할 수도 있기 ?문에, 인코더는 오디오 채널들의 각각의 프레임에 대한 대응하는 부정합 값을 결정하도록 구성될 수도 있다. 예를 들어, 인코더는 제 2 오디오 채널에 대한 제 1 오디오 채널의 제 2 시프트를 표시하는 제 2 부정합 값을 결정하도록 구성될 수도 있으며, 인코더는 제 4 프레임을 제 1 오디오 채널의 제 3 프레임과 시간적으로 정렬하기 위해 제 2 부정합 값에 기초하여 제 2 오디오 채널의 제 4 프레임을 시간-시프트시키도록 구성될 수도 있다. 제 1 부정합 값과 제 2 부정합 값이 상이하면, 제 1 부정합 값과 제 2 부정합 값 사이의 차이가 제 2 오디오 채널의 제 2 프레임과 제 4 프레임 사이의 경계에서 불연속성을 초래할 수도 있다. 불연속성은 디코딩된 오디오 채널들의 플레이백 동안 가청 클릭 또는 다른 오디오 아티팩트를 초래할 수도 있다.
시간-시프팅에서의 프레임간 편차 (예컨대, 상이한 프레임들에 대한 상이한 부정합 값들) 을 보상하기 위해, 인코더는 제 1 부정합 값과 제 2 부정합 값 사이의 차이에 기초하여 제 2 오디오 채널을 조정하도록 구성될 수도 있다. 제 2 오디오 채널을 조정하는 것은 프레임 경계들에서 불연속들을 감소시킬 (또는, 제거할) 수도 있다. 특정의 예에서, 각각의 프레임은 640 개의 샘플들을 포함하며, 제 1 부정합 값은 2개의 샘플들이고, 제 2 부정합 값은 3개의 샘플들이다. 이 예에서, 오디오 채널들을 시간적으로 정렬하기 위해, 제 1 오디오 채널의 (제 1 프레임을 나타내는) 샘플들 (0-639) 은 제 2 오디오 채널의 (제 2 프레임을 나타내는) 샘플들 (2-641) 과 시간적으로 정렬되며, 제 1 오디오 채널의 (제 3 프레임을 나타내는) 샘플들 (640-1279) 은 제 2 오디오 채널의 (제 4 프레임을 나타내는) 샘플들 (643-1282) 과 시간적으로 정렬된다. 제 1 오디오 채널과의 제 2 오디오 채널의 시간 정렬은 샘플 (642) 을 스킵시켜, 제 2 프레임과 제 4 프레임 사이의 불연속성을 야기할 수도 있으며 오디오 채널들의 플레이백 동안 클릭 또는 다른 사운드를 초래할 수도 있다.
불연속성을 보상하기 위해, 인코더는 제 2 오디오 채널을 조정하여 프레임들 사이의 샘플들에서의 차이를 감소시키도록 구성될 수도 있다. 그 차이에 기초하여 제 2 오디오 채널을 조정하는 것은 제 2 오디오 채널을 "평활화" 또는 "느리게 시프트"시키는 것으로서 지칭될 수도 있다. 예시하기 위하여, 인코더는 차이에 기초하여 제 2 오디오 채널의 샘플들의 부분을 내삽하여 다수의 샘플들에 걸쳐서 불연속성을 "확산"함으로써, 제 2 오디오 채널을 조정하도록 구성될 수도 있다. 내삽은 Sinc 내삽, Lagrange 내삽, 하이브리드 내삽 (예컨대, Sinc 내삽과 Lagrange 내삽의 조합), 중첩 및 가산 내삽 (overlap and add interpolation), 또는 다른 유형의 내삽을 포함할 수도 있다.
인코더는 복수의 내삽 방법들 중에서 특정의 내삽 방법을 선택하도록 구성될 수도 있다. 인코더는 제 1 부정합 값과 제 2 부정합 값 사이의 차이에 기초하여 특정의 내삽을 선택하도록 구성될 수도 있다. 인코더는 차이와 임계치를 비교하여 특정의 내삽을 선택하도록 구성될 수도 있다. 특정의 예시적인 예로서, 인코더는 제 1 부정합 값과 제 2 부정합 값 사이의 차이를 제 1 임계치와 비교하도록 구성될 수도 있다. 인코더는 제 1 부정합 값과 제 2 부정합 값 사이의 차이가 제 1 임계치 미만이라는 결정에 응답하여, Sinc 내삽, Lagrange 내삽, 또는 하이브리드 내삽 중에서 적어도 하나의 내삽 방법을 선택함으로써 제 2 오디오 채널을 조정하도록 구성될 수도 있다. 인코더는 아래에서 자세히 설명되는 바와 같이, 차이가 제 1 임계치를 초과한다는 결정에 응답하여, 중첩 및 가산 내삽을 이용함으로써 제 2 오디오 채널을 조정할 수도 있다. 중첩 및 가산 내삽은 "중첩 및 가산 방법" 또는 "중첩 및 가산 샘플 발생/조정" 또는 단순히 "중첩 및 가산 내삽" 으로서 지칭될 수도 있다.
다른 특정의 구현예에서, 인접 프레임들의 부정합 값들 사이의 (예컨대, 제 1 부정합 값과 제 2 부정합 값 사이의) 차이 D 의 임계값은 제 1 오디오 채널 또는 제 2 오디오 채널의 프레임 유형에 기초할 수도 있다. 인코더는 제 2 오디오 신호 (예컨대, 목표 채널) 의 프레임 유형을 결정할 수도 있으며, 인코더는 D 의 값이 프레임 유형에 기초하여 특정의 임계치를 초과하지 않도록 보장할 수도 있다. 특정의 예시적인 예로서, 프레임 유형은 음성, 음악, 잡음, 또는 제 1 오디오 채널 또는 제 2 오디오 채널의 특정의 프레임의 특성을 표시할 수도 있는 다른 프레임 유형들을 포함할 수도 있다. 대안적으로, 프레임 유형은 제 1 오디오 채널 또는 제 2 오디오 채널의 특정의 프레임에 대한 적합한 코딩 모드를 표시하는 정보에 대응할 수도 있다. 특정의 구현예에서, 차이 D 의 임계값은 오디오 채널들의 목표 평활도 레벨 또는 채널 조정에 전념할 프로세싱의 목표 레벨에 기초하여, (예컨대, 제조, 프로그래밍, 소프트웨어 또는 펌웨어 설치 또는 업데이트, 등 동안) 선택될 수도 있는 사전 프로그래밍된 값일 수도 있다. 다른 구현예들에서, 차이 D 의 임계값은 교차-상관 값의 평활도 세팅을 표시하는 평활화 인자에 기초하여 결정될 수도 있다.
특정의 예시적인 예로서, 불연속성은 내삽을 이용하여 샘플들 (642.x, 643.y, 644.z, 및 646) 을 추정함으로써 샘플들의 서브세트 (예컨대, 샘플들 (642, 643, 644, 645, 및 646)) 에 걸쳐서 확산될 수도 있으며, 여기서, x, y, 및 z 는 분수 샘플 해상도에 기초하는 값들이다. 샘플 해상도는 균일하게 이격되거나 또는 불균일하게 이격될 수도 있다. 균일하게 이격된 샘플 해상도를 갖는 구현예들에서, 내삽은 수식 D/N_SPREAD 에 기초할 수도 있으며, 여기서, D 는 (샘플들의 개수에서의) 제 1 부정합 값과 제 2 부정합 값 사이의 차이이고, N_SPREAD 는 불연속성이 확산되는 샘플들의 개수이다. 특정의 구현예에서, N_SPREAD 는 프레임 (N) 에 포함된 샘플들의 총 개수 미만인 임의의 값일 수도 있다. 대안적으로, N_SPREAD 는 N 과 동일할 수도 있거나, 또는 N_SPREAD 는 N 보다 클 수도 있다 (예컨대, 불연속성은 다수의 프레임들에 걸쳐서 확산될 수도 있다). N_SPREAD 의 값이 더 클 수록, 시프트가 "더 평활화된다" (예컨대, 각각의 추정된 샘플 사이의 차이가 더 작아진다).
샘플 해상도가 균일한 간격을 가지는 특정의 예로서, D 는 1 이고 (예컨대, 제 2 부정합 값 - 제 1 부정합 값이 1 이다), N_SPREAD 는 4 이고, 인코더는 1-샘플 차이에 기초하여 제 2 오디오 채널을 내삽하여 4 의 추정된 샘플들을 발생시킬 수도 있다. 이 예에서, 샘플 해상도는 0.25 이고, 4 의 추정된 샘플들은 샘플들 (642.25, 643.5, 644.75, 및 646) 을 나타낼 수도 있으며, 인코더는 제 2 오디오 채널의 4개의 샘플들 (예컨대, 샘플들 (643-646)) 을 4개의 추정된 샘플들로 대체할 수도 있다. 제 2 프레임의 각각의 최종 샘플 (예컨대, 샘플 (641)) 과 각각의 추정된 샘플 사이의 차이는 (예컨대, 샘플 (642) 이 스킵됨으로 인해) 샘플 641 과 643 사이의 차이 미만이며, 따라서, 임의의 2개의 샘플들 사이의 차이가 하나 이상의 샘플들을 스킵하는 것에 비해 감소된다. 대안적으로, 샘플 해상도는 불균일하게 이격될 수도 있다. 샘플 해상도가 불균일한 간격을 가지는 특정의 예로서, 샘플들 (642.25, 643, 644.5, 및 646) 에 대한 추정들이 내삽을 이용하여 추정될 수도 있다. 대안적으로, 샘플 해상도는 불균일하게 이격될 수도 있으며, 점진적으로 증가하는 해상도 또는 점진적으로 감소하는 해상도일 수도 있다. 샘플들 사이의 시간 차이를 감소시키는 것 (예컨대, 추정된 샘플들을 이용하여 제 2 오디오 채널의 여러 샘플들에 걸쳐 하나의-샘플 시간 차이를 확산시키는 것) 은, 프레임 경계에서의 불연속성을 평활화하거나 (예컨대, 감소시키거나) 또는 보상한다.
제 2 채널을 조정한 후, 인코더는 제 1 오디오 채널 및 조정된 제 2 오디오 채널에 기초하여 적어도 하나의 인코딩된 채널을 발생시킬 수도 있다. 예를 들어, 인코더는 제 1 오디오 채널 및 조정된 제 2 오디오 채널에 기초하여, 중간-채널 및 측면-채널을 발생시킬 수도 있다. 적어도 하나의 인코딩된 채널이 제 2 디바이스로 송신될 수도 있다. 제 2 디바이스는 적어도 하나의 인코딩된 채널을 디코딩하도록 구성되는 디코더를 포함할 수도 있다. 제 2 오디오 채널이 적어도 하나의 인코딩된 채널의 발생 이전에 조정되기 때문에, 디코딩된 오디오 채널들의 플레이백 동안, 프레임들 사이의 불연속들로 인한 클릭들 또는 다른 사운드들이 감소될 (또는, 제거될) 수도 있다.
도 1 을 참조하면, 부정합 값들 사이의 차이에 기초하여 오디오 샘플들을 조정하도록 구성된 디바이스를 포함하는 시스템의 특정의 예시적인 예가 도시되며 일반적으로 100 으로 지정된다. 시스템 (100) 은 제 1 디바이스 (102) 및 제 2 디바이스 (160) 를 포함한다. 제 1 디바이스 (102) 는 네트워크 (152) 를 통해서 제 2 디바이스 (160) 에 통신가능하게 커플링될 수도 있다. 네트워크 (152) 는 VoIP (Voice over Internet Protocol) 네트워크, VoLTE (voice over long-term evolution) 네트워크, 다른 패킷-스위칭 네트워크, 공중 교환 전화 네트워크 (PSTN) 네트워크, GSM (Global System for Mobile Communications) 네트워크, 다른 회로-스위칭 네트워크, 인터넷, 무선 네트워크, IEEE (Institute of Electronics and Electrical Engineers) 802.11 네트워크, 위성 네트워크, 유선 네트워크, 또는 다른 네트워크를 포함할 수도 있다. 특정의 구현예에서, 제 1 디바이스 (102), 제 2 디바이스 (160), 또는 양자는 통신 디바이스, 헤드셋, 디코더, 스마트 폰, 셀룰러폰, 모바일 통신 디바이스, 랩탑 컴퓨터, 컴퓨터, 태블릿, 개인 휴대정보 단말기 (PDA), 셋 탑 박스, 비디오 플레이어, 엔터테인먼트 유닛, 디스플레이 디바이스, 텔레비전, 게이밍 콘솔, 뮤직 플레이어, 라디오, 디지털 비디오 플레이어, 디지털 비디오 디스크 (DVD) 플레이어, 튜너, 카메라, 네비게이션 디바이스, 차량, 차량의 온-보드 컴포넌트, 또는 이들의 조합을 포함할 수도 있다. 제 1 디바이스 (102) 가 본원에서 데이터 (예컨대, 채널들, 값들, 표시자들, 등) 를 송신하는 것으로 설명되고, 그리고 제 2 디바이스 (160) 가 데이터를 수신하는 것으로 설명되지만, 다른 구현예들에서, 제 1 디바이스 (102) 는 제 2 디바이스 (160) 로부터 데이터를 수신할 수도 있다. 따라서, 도 1 의 예시는 제한적이지 않다.
제 1 디바이스 (102) 는 인코더 (120), 메모리 (110), 및 하나 이상의 인터페이스들 (104) 을 포함할 수도 있다. 제 1 디바이스 (102) 는 또한 편의상 예시되지 않은, 프로세서 (예컨대, 중앙 처리 유닛 (CPU), 디지털 신호 프로세서 (DSP), 등) 를 포함할 수도 있다. 특정의 구현예에서, 인코더 (120) 는 하나 이상의 표준들 또는 프로토콜들, 예컨대 3세대 파트너쉽 프로젝트 (3GPP) EVS 프로토콜에 따라서 통신하는 향상된 보이스 서비스들 (EVS) 코덱에 포함되거나 또는 통합될 수도 있다.
하나 이상의 인터페이스들 (104) 은 네트워크 인터페이스들, 예컨대 무선 인터페이스들 (예컨대, IEEE 802.11 인터페이스들, 위성 인터페이스들, 근접 장 통신 인터페이스들, 등), 유선 인터페이스들, 입력/출력 (I/O) 인터페이스들, 주변장치 인터페이스들, 및 다른 인터페이스들을 포함할 수도 있다. 하나 이상의 인터페이스들 (104) 의 제 1 입력 인터페이스는 제 1 마이크로폰 (140) 에 커플링될 수도 있으며, 하나 이상의 인터페이스들 (104) 의 제 2 입력 인터페이스는 제 2 마이크로폰 (144) 에 커플링될 수도 있으며, 하나 이상의 인터페이스들 (104) 의 네트워크 인터페이스는 네트워크 (152) 를 통해서 제 2 디바이스 (160) 에 통신가능하게 커플링될 수도 있다. 하나 이상의 인터페이스들 (104) 의 제 1 입력 인터페이스는 제 1 마이크로폰 (140) 으로부터 제 1 오디오 신호 (142) 를 수신하도록 구성될 수도 있으며, 하나 이상의 인터페이스들 (104) 의 제 2 입력 인터페이스는 제 2 마이크로폰 (144) 으로부터 제 2 오디오 신호 (146) 를 수신하도록 구성될 수도 있다. 도 1 의 예에서, 제 1 오디오 신호 (142) 는 "참조 채널" 이고, 제 2 오디오 신호 (146) 는 "목표 채널" 이다. 예를 들어, 제 2 오디오 신호 (146) 는 제 1 오디오 신호를 시간적으로 정렬하기 위해 조정될 (예컨대, 시간적으로 시프트될) 수도 있다. 그러나, 이하에서 설명하는 바와 같이, 다른 구현예들에서, 제 1 오디오 신호 (142) 는 목표 채널일 수도 있으며, 제 2 오디오 신호 (146) 는 참조 채널일 수도 있다. 본원에서 사용될 때, "신호" 및 "채널" 은 교환가능하게 사용될 수도 있다. 다른 구현예들에서, 제 1 디바이스 (102) 는 2개보다 많은 마이크로폰들에 통신가능하게 커플링된 2개보다 많은 인터페이스들을 포함할 수도 있다. 특정의 구현예에서, 제 1 오디오 신호 (142) 는 우측 채널 신호 또는 좌측 채널 신호 중 하나를 포함하고, 제 2 오디오 신호 (146) 는 우측 채널 신호 또는 좌측 채널 신호 중 다른 하나를 포함한다. 다른 구현예들에서, 오디오 신호들 (142 및 146) 은 다른 오디오 신호들을 포함한다.
하나 이상의 인터페이스들 (104) 의 네트워크 인터페이스는 데이터, 예컨대 인코딩된 오디오 채널들 및 관련된 정보를, 네트워크 (152) 를 통해서 제 2 디바이스 (160) 로 송신하도록 구성될 수도 있다. 일부 구현예들에서, 하나 이상의 인터페이스들 (104) 은 네트워크 (152) 를 통해서 데이터를 전송하고 수신하도록 구성된, 트랜시버, 수신기, 또는 양자 (또는, 트랜시버) 를 포함할 수도 있다. 인코더 (120) 는 본원에서 추가로 설명되는 바와 같이, 오디오 채널들을 프로세싱하고 인코딩하도록 구성될 수도 있다. 대안적으로, 메모리 (110) 는 본원에서 설명되는 동작들을 수행하기 위해 인코더 (120) (또는, 프로세서) 에 의해 실행가능한 명령들을 저장할 수도 있다.
메모리 (110) 는 부정합 값들, 예컨대 제 1 부정합 값 (112) 및 제 2 부정합 값 (114), 및 오디오 샘플들, 예컨대 제 1 샘플들 (116) 및 제 2 샘플들 (118) 을 저장할 수도 있다. 제 1 오디오 신호 (142) 는 제 1 샘플들 (116) 과 연관될 수도 있으며 (예컨대, 제 1 오디오 신호 (142) 는 제 1 샘플들 (116) 을 발생시키기 위해 샘플링될 수도 있으며), 제 2 오디오 신호 (146) 는 제 2 샘플들 (118) 과 연관될 수도 있다 (예컨대, 제 2 오디오 신호 (146) 는 제 2 샘플들 (118) 을 발생시키기 위해 샘플링될 수도 있다). 부정합 값들 (112 및 114) 은 본원에서 추가로 설명되는 바와 같이, 제 1 샘플들 (116) 및 제 2 샘플들 (118) 을 시간적으로 정렬하는데 사용되는 제 1 샘플들 (116) 과 제 2 샘플들 (118) 사이의 (예컨대, 제 1 오디오 신호 (142) 와 제 2 오디오 신호 (146) 사이의) 시프트들을 표시할 수도 있다. 일부 구현예들에서, 메모리 (110) 는 추가적인 데이터, 예컨대 표시자들, 이득 파라미터들, 및 오디오 채널들의 인코딩 및 송신에 관련된 다른 정보를 표시하는 데이터를 저장할 수도 있다.
인코더 (120) 는 다수의 오디오 채널들을 다운-믹싱하고 인코딩하도록 구성될 수도 있다. 다수의 오디오 채널들을 프로세싱 및 인코딩하는 것의 부분(들) 로서, 인코더 (120) 는 다른 오디오 채널에 대해 오디오 채널을 시간적으로 정렬하도록 구성될 수도 있다. 예를 들어, 인코더 (120) 는 인코딩 전에 제 1 샘플들 (116) 및 제 2 샘플들 (118) 을 조작함으로써 참조 채널 (142) 의 프레임들을 목표 채널 (146) 의 프레임들과 시간적으로 정렬하도록 구성될 수도 있다. 오디오 채널들을 시간적으로 정렬하는 것은 오디오 채널들에 기초하여 측면-채널을 인코딩하는데 사용되는 비트수 (또는, 파라미터들) 를 감소시킬 수도 있으며, 이에 의해, 오디오 채널들에 기초하여 중간-채널을 인코딩하는데 사용되는 비트수를 증가시킬 수도 있다. 중간-채널을 인코딩하는데 더 많은 비트들을 이용하는 것은 중간-채널의 코딩 효율을 증가시킬 수도 있으며, 제 2 디바이스 (160) 에서의 디코딩된 오디오 채널들의 플레이백의 품질을 증가시킬 수도 있다.
제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 를 시간적으로 정렬하기 위해, 인코더 (120) 는 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 을 결정하도록 구성될 수도 있다. 예를 들어, 인코더 (120) 는 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 을 결정하도록 구성된 시프트 추정기 (121) 를 포함할 수도 있다. 제 1 부정합 값 (112) 은 제 2 오디오 신호 (146) 의 제 2 프레임에 대한 제 1 오디오 신호 (142) 의 제 1 프레임의 시프트를 표시할 수도 있으며, 제 2 부정합 값 (114) 은 제 2 오디오 신호 (146) 의 제 4 프레임에 대한 제 1 오디오 신호 (142) 의 제 3 프레임의 시프트를 표시할 수도 있다. 제 3 프레임은 제 1 프레임에 후속할 수도 있으며, 제 4 프레임은 제 2 프레임에 후속할 수도 있다. 부정합 값들 (112 및 114) 은 제 2 오디오 신호 (146) 를 제 1 오디오 신호 (142) (예컨대, "목표" 신호) 와 시간적으로 정렬하기 위해 제 2 오디오 신호 (146) (예컨대, "참조" 신호) 가 시프트되어야 하는 샘플들의 수 (또는, 시간의 양 (밀리초 단위)) 를 표시할 수도 있다. 예시적인 예로서, 목표 채널의 특정의 프레임은 참조 채널의 대응하는 프레임에 대해, 목표 채널의 (예컨대, 샘플링 레이트에 기초한) 2개의 샘플들에 대응하는 시간 기간 만큼 지연되며, 대응하는 부정합 값은 2 의 값을 갖는다. 목표 채널은 참조 채널에 대해 시간-시프트된 신호 (예컨대, 시간-시프트되지 않는 신호) 를 지칭할 수도 있다. 시간 시프트되거나 또는 조정된 목표 채널 (예컨대, "조정된 목표 채널") 은 코딩된 목표 채널과 상이하며, 이는 코딩된 신호를 발생시키는데 사용되는 신호 (예컨대, 본원에서 설명되는 바와 같은, 중간 채널 신호, 측면 채널 신호, 등) 를 지칭한다. 본원에서 추가로 설명되는 바와 같이, 인코더 (120) 는 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 중 어느 것이 각각의 프레임에 대한 목표 채널 (또는, 참조 채널) 인지를 결정할 수도 있다. 어느 신호가 목표 채널인지 및 어느 신호가 참조 채널인지의 결정은 프레임 단위로 이루어질 수도 있다. 예를 들어, 인코더 (120) 는 제 1 오디오 신호 (142) 가 참조 채널이고 제 2 오디오 신호 (146) 가 프레임들의 제 1 쌍 (예컨대, 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 에 대응하는 제 1 프레임) 에 대한 목표 채널이라고 결정할 수도 있으며, 인코더 (120) 는 제 1 오디오 신호 (142) 가 목표 채널이고 제 2 오디오 신호 (146) 가 프레임들의 제 2 쌍 (예컨대, 제 1 오디오 신호 (142) 에 대응하는 제 3 프레임 및 제 2 오디오 신호 (146) 에 대응하는 제 4 프레임) 에 대한 참조 채널이라고 결정할 수도 있다.
제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 는 제 1 마이크로폰 (140), 제 2 마이크로폰 (144), 및 사운드 소스 (150) 의 로케이션들로 인해 시간적으로 비정렬될 수도 있다. 예를 들어, 사운드 소스 (150) 는 원격 화상 회의실에서 말하는 사람일 수도 있으며, 특정의 시간에서, 사람 (예컨대, 사운드 소스 (150)) 은 제 2 마이크로폰 (144) 보다 제 1 마이크로폰 (140) 에 더 가까울 수도 있다. 다른 예들에서, 사운드 소스 (150) 는 주변 잡음, 악기, 음악 소스, 또는 사운드의 다른 소스일 수도 있다. 사운드 소스 (150) 가 제 2 마이크로폰 (144) 으로부터 멀리 떨어져 있기 때문에, 제 2 오디오 신호 (146) 는 제 1 오디오 신호 (142) 에 대한 지연으로 수신될 수도 있다.
제 1 오디오 신호 (142) 와 제 2 오디오 신호 (146) 사이의 차이는 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 가 시간적으로 정렬되는 경우와 비교하여 하나의 오디오 채널이 지연되는 경우에 더 클 수도 있다. 큰 차이는 인코더 (120) 에서 코딩 효율을 감소시킬 수도 있다. 예시하기 위하여, 인코더 (120) 는 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 에 기초하여, 적어도 하나의 인코딩된 채널, 예컨대 인코딩된 채널들 (180) 을 발생시키도록 구성될 수도 있다. 예를 들어, 인코더 (120) 는 인코딩된 채널들 (180) 을 발생시키도록 구성된 채널 발생기 (130) 를 포함할 수도 있다. 특정의 구현예에서, 채널 발생기 (130) 는 스테레오 인코딩을 수행하여 중간-채널 (예컨대, 제 1 오디오 신호 (142) 와 제 2 오디오 신호 (146) 의 총합을 나타내는 채널) 및 측면-채널 (예컨대, 제 1 오디오 신호 (142) 와 제 2 오디오 신호 (146) 사이의 차이를 나타내는 채널) 을 발생시키도록 구성될 수도 있다. 인코딩된 채널들 (180) 은 중간-채널, 측면-채널, 또는 양자를 포함할 수도 있다.
채널 발생기 (130) 는 다음 수식들에 따라서 중간-채널 및 측면-채널을 발생시킬 수도 있다:
Figure pct00001
수식 1a
Figure pct00002
수식 1b
Figure pct00003
수식 2a
Figure pct00004
수식 2b
여기서, M 은 중간-채널에 대응하며, S 는 측면-채널에 대응하고, gD 는 상대 이득 파라미터 (예컨대, 참조 채널 및 목표 채널의 전력 레벨들을 정규화하기 (또는, 등화하기 위한) 위한 파라미터) 에 대응하며, Ref(n) 는 참조 채널의 샘플들에 대응하고, Targ(n+N1) 은 목표 채널의 샘플들에 대응하고, N1 은 제 2 프레임의 (제 1 부정합 값 (112) 에 기초한) 비-인과적 부정합 값에 대응한다. 일 예로서, 이득 파라미터는 다음 수식들 중 하나에 기초할 수도 있다:
Figure pct00005
수식 3a
Figure pct00006
수식 3b
Figure pct00007
수식 3c
Figure pct00008
수식 3d
Figure pct00009
수식 3e
Figure pct00010
수식 3f
대안적으로, 채널 발생기 (130) 는 제 1 오디오 신호 (142) 와 제 2 오디오 신호 (146) 사이의 차이에 기초하여 중간-채널 및 하나 이상의 측면 채널 파라미터들을 발생시킬 수도 있다. 다른 구현예들에서, 채널 발생기 (130) 는 다른 인코딩, 예컨대 파라메트릭 스테레오 인코딩, 이중-모노 인코딩, 또는 다른 인코딩을 수행하도록 구성될 수도 있다.
인코딩된 채널들 (180) 이 중간-채널 및 측면-채널을 포함하는 구현예들에서, 인코딩된 채널들에 사용되는 총 비트수가 중간-채널의 인코딩과 측면-채널의 인코딩 사이에 분할된다. 제 1 오디오 신호 (142) 와 제 2 오디오 신호 (146) 사이의 차이가 작으면, 몇 비트가 측면-채널의 인코딩에 사용되며, 대부분의 비트들이 중간-채널을 인코딩하는데 사용된다. 중간-채널을 인코딩하는데 더 많은 비트들을 이용하는 것은 코딩 효율을 증가시킬 수도 있으며 제 2 디바이스 (160) 에서 출력되는 디코딩된 오디오 채널들의 품질을 증가시킬 수도 있다. 제 1 오디오 신호 (142) 와 제 2 오디오 신호 (146) 사이의 차이가 클 때, 더 많은 비트들이 측면 채널 신호를 인코딩하는데 사용되며, 이는 중간 채널 신호를 인코딩하는데 이용가능한 비트수를 감소시킨다. 따라서, 인코더 (120) (예컨대, 시프트 추정기 (121)) 는 제 1 오디오 신호 (142) 와 제 2 오디오 신호 (146) 사이의 차이를 감소시키기 위해 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 를 시간적으로 정렬하도록 구성될 수도 있으며, 이에 의해 중간-채널을 인코딩하는데 이용가능한 비트수를 증가시킨다.
제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 를 시간적으로 정렬하기 위해, 인코더 (120) (예컨대, 시프트 추정기 (121)) 는 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 의 프레임들의 각각의 쌍에 대해 부정합 값들 (예컨대, 제 1 부정합 값 (112) 및 제 2 부정합 값 (114)) 을 결정하도록 구성될 수도 있다. 제 1 부정합 값 (112) 은 제 1 마이크로폰 (140) 을 통한 제 1 오디오 신호 (142) 의 제 1 프레임의 수신과, 제 2 마이크로폰 (144) 을 통한 제 2 오디오 신호 (146) 의 제 2 프레임의 수신 사이의 시간 지연의 양에 대응할 수도 있으며, 제 2 부정합 값 (114) 은 제 1 마이크로폰 (140) 을 통한 제 1 오디오 신호 (142) 의 제 3 프레임의 수신과, 제 2 마이크로폰 (144) 을 통한 제 2 오디오 신호 (146) 의 제 4 프레임의 수신 사이의 시간 지연의 양에 대응할 수도 있다.
제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 은 제 2 다운-샘플링된 채널에 대한 제 1 다운-샘플링된 채널의 비교들에 기초하여 결정될 수도 있다. 제 1 다운-샘플링된 채널은 제 1 오디오 신호 (142) 에 기초할 수도 있으며 제 2 다운-샘플링된 채널은 제 2 오디오 신호 (146) 에 기초할 수도 있다. 예시하기 위하여, 시프트 추정기 (121) 는 참조 채널 (142) 을 다운-샘플링하여 제 1 다운-샘플링된 채널을 발생시키고 목표 채널 (146) 을 다운-샘플링하여 제 2 다운-샘플링된 채널을 발생시키도록 구성될 수도 있다. 다른 구현예들에서, 다운-샘플링된 채널들은 다른 리샘플링된 채널들, 예컨대 업-샘플링된 채널들일 수도 있다.
시프트 추정기 (121) 는 제 1 다운-샘플링된 채널과 제 2 다운-샘플링된 채널의 비교들에 기초하여 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 을 결정하도록 구성될 수도 있다. 예를 들어, 시프트 추정기 (121) 는 제 1 샘플들 (116) 과 제 2 샘플들 (118) 의 비교들에 기초하여, 비교 값들, 예컨대 차이 값들, 유사도 값들, 코히어런스 값들, 또는 교차-상관 값들을 발생시킬 수도 있다. 시프트 추정기 (121) 는 다른 비교 값들보다 더 높은 (또는, 낮은) 값을 갖는 특정의 비교 값을 식별할 수도 있으며, 시프트 추정기 (121) 는 특정의 비교 값에 대응하는 부정합 값 (예컨대, "임시" 부정합 값) 을 식별할 수도 있다. 예를 들어, 시프트 추정기 (121) 는 제 1 다운-샘플링된 채널의 샘플 (또는, 다수의 샘플들) 을 제 2 다운-샘플링된 채널의 샘플들과 비교하여 비교 값들을 발생시킬 수도 있으며, 시프트 추정기 (121) 는 최저 (또는, 최고) 비교 값에 대응하는 제 2 다운-샘플링된 채널의 특정의 샘플을 식별할 수도 있다. 시프트 추정기 (121) 는 제 1 다운-샘플링된 채널의 샘플에 대한 제 2 다운-샘플링된 채널의 특정의 샘플의 지연에 기초하여 임시 부정합 값을 발생시킬 수도 있다.
시프트 추정기 (121) 는 임시 부정합 값에 기초하여 하나 이상의 내삽된 비교 값들 및 내삽된 부정합 값을 발생시킬 수도 있다. 시프트 추정기 (121) 는 내삽된 부정합 값을 "정제"하여 부정합 값을 발생시킬 수도 있다. 예를 들어, 내삽된 부정합 값과 이전 프레임과 연관된 부정합 값 사이의 차이가 임계치를 초과하면, 시프트 추정기 (121) 는 임계값 (예컨대, "최대" 부정합 값) 을 부정합 값으로서 선택할 수도 있으며, 그 차이가 임계치를 초과하지 못하면, 시프트 추정기 (121) 는 내삽된 부정합 값을 부정합 값으로서 선택할 수도 있다. 임계치는 프레임 마다 발생할 수도 있는 임계치 불연속성 레벨을 설정하도록 선택될 수도 있다. 예를 들어, 임계치는 불연속성이 4개의 샘플들보다 크지 않도록 4개의 샘플들로 설정될 수도 있다. 임계치를 작은 값으로 설정하는 것은 디코딩된 오디오 채널들의 플레이백 동안 출력될 불연속들에 의해 초래되는 클릭들 또는 다른 가청음들을 감소시킬 (또는, 방지할) 수도 있다. 다른 구현예들에서, 임계치는 더 높을 수도 있으며, 목표 채널은 프레임간 불연속들을 보상하기 (또는, 은폐하기) 위해 조정될 (예컨대, 평활화되거나 또는 느리게-시프트될) 수도 있다. 시프트 추정기 (121) 는 또한 시프트가 이전 부정합 값과 비교하여 방향이 변경되었는지 여부에 기초하여 부정합 값의 부호 (예컨대, 양의 부호 또는 음의 부호) 를 결정할 수도 있다.
부정합 값들 (예컨대, 제 1 부정합 값 (112) 및 제 2 부정합 값 (114)) 을 결정한 후, 목표 채널은 대응하는 부정합 값에 기초하여 프레임에 대해 시프트될 수도 있다. 특정의 예에서, 제 2 오디오 신호 (146) 는 제 2 오디오 신호 (146) 에 대응하는 프레임들 양자에 대한 목표 채널이며, 제 2 오디오 신호 (146) 의 제 2 프레임은 제 1 부정합 값 (112) 에 기초하여 시프트되고, 제 2 오디오 신호 (146) 의 제 4 프레임은 제 2 부정합 값 (114) 에 기초하여 시프트된다. 예를 들어, 제 2 프레임에 대응하는 제 2 샘플들 (118) 의 부분은 제 1 프레임에 대응하는 제 1 샘플들 (116) 의 부분에 대해 제 1 부정합 값 (112) 에 기초하는 양 만큼 시간-시프트될 수도 있으며, 제 4 프레임에 대응하는 제 2 샘플들 (118) 의 부분은 제 3 프레임에 대응하는 제 2 샘플들 (118) 의 부분에 대해 제 2 부정합 값 (114) 에 기초하는 양 만큼 시간-시프트될 수도 있다. 도 2 내지 도 3 및 도 7 내지 도 8 은 제 2 오디오 신호 (146) 의 샘플들을 시간-시프트시켜 제 2 오디오 신호 (146) 를 제 1 오디오 신호 (142) 와 시간적으로 정렬하는 것을 예시한다.
목표 채널의 샘플들 (예컨대, 제 2 오디오 신호 (146)) 을 시간-시프트시키기 위해, 인코더 (120) 는 목표 채널의 "미래" 값들에 액세스할 수도 있다. 특정의 구현예에서, 제 1 디바이스 (102) 는 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 의 샘플들을 저장하는 버퍼를 포함하며, 인코더 (120) 는 특정의 샘플 이전에 순차적으로 발생하는 샘플들에 액세스가능할 수도 있다. 일부 구현예들에서, 버퍼는 제 1 디바이스 (102) 에서 음성 프로세싱 동작들을 수행하는데 사용되는 룩어헤드 (lookahead) 버퍼를 포함하거나 또는 이에 대응할 수도 있다. 목표 채널의 특정의 샘플 (예컨대, "현재의" 샘플) 에 후속하여 발생하는 샘플들이 버퍼에서 이용가능하기 때문에, 목표 채널 (예컨대, 제 2 오디오 신호 (146)) 은 도 2 내지 도 3 및 도 7 내지 도 8 을 참조하여 추가로 설명되는 바와 같이, 목표 채널의 순차적인 후속 샘플을 참조 채널의 특정의 샘플과 정렬함으로써, 시간-시프트될 수도 있다.
제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 이 동일한 값을 갖지 않으면 (예컨대, 동일하지 않으면), 제 2 오디오 신호 (146) 의 제 2 프레임과 제 4 프레임 사이에 불연속성이 있을 수도 있다. 불연속성을 보상하기 (또는, 은폐하기) 위해, 인코더 (120) 는 제 2 샘플들 (118) (예컨대, 목표 채널의 샘플들) 을 조정하여 프레임간 불연속들을 감소시킬 수도 있다. 목표 채널을 조정하는 것은 또한 목표 채널을 "평활화하거나" 또는 "느리게-시프트시키는" 것으로서 지칭될 수도 있다. 인코더 (120) 는 제 2 오디오 신호 (146) 가 목표 채널로서 식별되는 프레임들에 대해 제 2 샘플들 (118) 을 조정할 수도 있다. 대안적으로, 인코더 (120) 는 제 1 오디오 신호 (142) 가 목표 채널로서 식별되는 프레임들에 대해 제 1 샘플들 (116) 을 조정할 수도 있다. 따라서, 어느 샘플들이 조정되는지 (예컨대, 어느 오디오 채널이 "평활화되거나" 또는 "느리게-시프트되는지") 는 어느 오디오 채널이 특정의 프레임에 대한 목표 채널로서 식별되는지에 의존한다.
목표 채널의 조정을 가능하게 하기 위해, 인코더 (120) 는 제 1 부정합 값 (112) 과 제 2 부정합 값 (114) 사이의 차이 (124) 를 결정하도록 구성될 수도 있다. 예를 들어, 인코더 (120) 는 차이 (124) 를 결정하도록 구성된 비교기 (122) 를 포함할 수도 있다. 비교기 (122) 는 제 2 부정합 값 (114) 으로부터 제 1 부정합 값 (112) 을 감산하여 차이 (124) 를 결정하도록 구성될 수도 있다. 제 1 부정합 값 (112) 은 제 2 오디오 신호 (146) 의 제 2 프레임에 대한 제 1 오디오 신호 (142) 의 제 1 프레임의 시프트를 표시할 수도 있으며, 제 2 부정합 값 (114) 은 제 2 오디오 신호 (146) 의 제 4 프레임에 대한 제 1 오디오 신호 (142) 의 제 3 프레임의 시프트를 표시할 수도 있다. 구체적인 예로서, 제 1 부정합 값 (112) 은 2개의 샘플들일 수도 있으며, 제 2 부정합 값 (114) 은 3개의 샘플들일 수도 있으며, 차이 (124) 는 하나의 샘플일 수도 있다. 차이 (124) 는 부호있는 값 (예컨대, 양의 값 또는 음의 값) 일 수도 있다. 차이 (124) 에 대한 양의 값은 참조 채널과 비교하여 목표 채널의 지연이 증가하고 있다는 것을 표시할 수도 있으며, 차이 (124) 에 대한 음의 값은 참조 채널과 비교하여 목표 채널의 지연이 감소하고 있다는 것을 표시할 수도 있으며, 차이 (124) 에 대한 제로의 값은 지연이 제 2 프레임과 제 4 프레임 사이에서 동일하게 (또는, 거의 동일하게) 유지된다는 것을 표시할 수도 있다.
인코더 (120) 는 차이 (124) 에 기초하여 제 2 샘플들 (118) 을 조정하여 조정된 샘플들 (128) 의 세트를 발생시키도록 구성될 수도 있다. 예를 들어, 인코더는 차이 (124) 에 기초하여 제 2 샘플들 (118) 을 조정하여 조정된 샘플들 (128) 의 세트를 발생시키도록 구성된 샘플 조정기 (126) 를 포함할 수도 있다. 특정의 구현예에서, 샘플 조정기 (126) 는 차이 (124) 에 기초하여 제 2 샘플들 (118) 의 부분을 (예컨대, Sinc 내삽, Lagrange 내삽, 하이브리드 내삽, 중첩 및 가산 내삽, 또는 다른 내삽을 이용하여) 내삽하여 추정된 샘플들의 세트를 발생시키도록 구성될 수도 있으며, 샘플 조정기 (126) 는 그 부분을 추정된 샘플들의 세트로 대체하여 조정된 샘플들 (128) 을 발생시키도록 구성될 수도 있다. 샘플들의 부분은 목표 채널의 단일 오디오 프레임, 또는 목표 채널의 다수의 프레임들로부터의 샘플들을 포함할 수도 있다. 예를 들어, (참조 채널의 제 1 프레임에 대응하는) 목표 채널의 제 2 프레임 및 (참조 채널의 제 3 프레임에 대응하는) 목표 채널의 제 4 프레임 사이에 불연속성이 존재하면, 특정의 구현예에서, 샘플 조정기 (126) 는 제 4 프레임에 대응하는 샘플들을 조정할 수도 있다. 다른 특정의 구현예에서, 샘플 조정기 (126) 는 제 2 프레임에 대응하는 샘플들을 조정할 수도 있다. 다른 특정의 구현예에서, 샘플 조정기 (126) 는 제 2 프레임 및 제 4 프레임에 대응하는 샘플들을 조정할 수도 있다.
인코더 (120) 는 복수의 내삽 방법들 중에서 특정의 내삽 방법을 선택하도록 구성될 수도 있다. 인코더 (120) 는 제 1 부정합 값과 제 2 부정합 값 사이의 차이 (124) 에 기초하여 특정의 내삽을 선택하도록 구성될 수도 있다. 특정의 예시적인 예로서, 인코더 (120) 는 차이 (124) 를 제 1 임계치와 비교하도록 구성될 수도 있다. 인코더는 제 1 부정합 값과 제 2 부정합 값 사이의 차이 (124) 가 제 1 임계치 미만이라는 결정에 응답하여, Sinc 내삽, Lagrange 내삽, 또는 하이브리드 내삽 중에서 적어도 하나의 내삽 방법을 선택함으로써 목표 채널의 제 2 프레임 및 제 4 프레임을 조정하도록 구성될 수도 있다. 인코더 (120) 는 대안적으로, 차이가 제 1 임계치를 초과한다는 결정에 응답하여, 중첩 및 가산 내삽을 이용함으로써 목표 채널의 제 2 프레임 및 제 4 프레임을 조정할 수도 있다.
차이 (124) 에 기초하여 샘플들을 조정하는 제 1 특정의 예가 도 2 에 예시된다. 도 2 는 제 1 샘플들 (116), 제 2 샘플들 (118), 및 조정된 샘플들 (128) 을 예시하는 다이어그램 (200) 을 포함한다. 도 2 에 예시된 샘플들은 제 1 오디오 신호 (142) 에 대응하는 제 1 샘플들 (116) 및 제 2 오디오 신호 (146) 에 대응하는 제 2 샘플들 (118) 을 포함한다. 오디오 신호들 (142 및 146) 의 프레임들 각각은 샘플들의 특정의 개수에, 또는 시간의 특정의 지속기간 및 특정의 샘플 레이트에 대응할 수도 있다. 도 2 에 예시된 특정의 예에서, 각각의 프레임은 20 밀리초 (ms) 에 대응하는 특정의 샘플링 레이트 (예컨대, 32 킬로-헤르츠 (kHz)) 에서 샘플링되는 640 개의 샘플들을 포함한다. 다른 구현예들에서, 프레임들은 640 보다 적거나 또는 640 보다 많은 샘플들을 포함할 수도 있다. 일 예로서, 각각의 프레임은 20 ms 에 대응할 수도 있는 48 kHz 에서 샘플링되는 960 개의 샘플들을 포함할 수도 있다.
위에서 설명한 바와 같이, 제 1 오디오 신호 (142) 는 참조 채널일 수도 있으며, 제 2 오디오 신호 (146) 는 목표 채널일 수도 있다. 제 2 오디오 신호 (146) 는 제 1 오디오 신호 (142) 에 대한 지연으로 수신될 수도 있다. 시프트 추정기 (121) 는 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 의 프레임들을 시간적으로 정렬하는데 사용되는 제 1 부정합 값 (112) (또는, 상호교환가능하게 제 1 시프트 값 (112)) 및 제 2 부정합 값 (114) (또는, 상호교환가능하게 제 2 시프트 값 (114)) 을 결정할 수도 있다. 도 2 에 예시된 특정의 예에서, 제 1 부정합 값 (112) (Tprev) 은 2 이고 제 2 부정합 값 (114) (T) 은 3 이다. 제 1 오디오 신호 (142) 의 제 1 프레임 (202) 을 제 2 오디오 신호 (146) 의 제 2 프레임 (204) 과 시간적으로 정렬하기 위해, 제 2 프레임 (204) 에 대응하는 제 2 샘플들 (118) 의 그룹이 2개의 샘플들 만큼 시프트된다. 예시하기 위하여, 시프트 추정기 (121) 는 각각의 오디오 채널의 샘플들 (0-639) 을 포함하는 "입력 프레임" (예컨대, 제 1 오디오 신호 (142) 의 제 1 프레임 및 제 2 오디오 신호 (146) 의 제 2 프레임) 을 수신할 수도 있다. 시프트 추정기 (121) 는 목표 채널을 참조 채널과 시간적으로 정렬하기 위해 부정합 값을 결정할 수도 있으며, 시프트 추정기 (121) 는 목표 채널을 부정합 값 만큼 시프트시켜 참조 채널의 제 1 프레임 및 목표 채널의 시프트된 제 2 프레임을 포함하는 "시프트된 프레임" 을 발생시킬 수도 있다. 예를 들어, 시프트된 프레임을 발생시키기 위해 제 2 샘플들 (118) 의 샘플들 (2-641) 은 제 1 샘플들 (116) 의 샘플들 (0-639) 과 정렬된다. 제 1 오디오 신호 (142) 의 제 3 프레임 (206) 을 제 2 오디오 신호 (146) 의 제 4 프레임 (208) 과 시간적으로 정렬하기 위해, 제 4 프레임 (208) 에 대응하는 제 2 샘플들 (118) 의 그룹이 3개의 샘플들 만큼 시프트된다. 시프트 추정기 (121) 는 각각의 오디오 채널의 샘플들 (640-1279) 을 포함하는 제 2 입력 프레임 (예컨대, 제 1 오디오 신호 (142) 의 제 3 프레임 및 제 2 오디오 신호 (146) 의 제 4 프레임) 을 수신할 수도 있다. 시프트 추정기 (121) 는 목표 채널을 참조 채널과 시간적으로 정렬하기 위해 제 2 부정합 값을 결정할 수도 있으며, 시프트 추정기 (121) 는 목표 채널을 부정합 값 만큼 시프트시켜 참조 채널의 제 3 프레임 및 목표 채널의 시프트된 제 4 프레임을 포함하는 제 2 시프트된 프레임을 발생시킬 수도 있다. 예를 들어, 제 2 시프트된 프레임을 발생시키기 위해 제 2 샘플들 (118) 의 샘플들 (643-1282) 은 제 1 샘플들 116 의 샘플들 (640-1279) 과 정렬된다. 시프트된 프레임 및 제 2 시프트된 프레임을 발생시킨 후, 샘플 조정기 (126) 는 시프트된 프레임과 제 2 시프트된 프레임 사이의 불연속성을 보상하기 (또는, 은폐하기) 위해 제 2 시프트된 프레임의 샘플들을 조정하여 조정된 제 2 시프트된 프레임을 발생시킬 수도 있다.
제 1 부정합 값 (112) 과 제 2 부정합 값 (114) 이 상이할 때, 불연속성이 제 2 프레임 (204) 과 제 4 프레임 (208) 사이의 경계에 존재할 수도 있다. 제 2 부정합 값 (114) 이 제 1 부정합 값 (112) 보다 크면, 하나 이상의 샘플들이 스킵될 수도 있다. 도 2 에 나타낸 바와 같이, 샘플 (642) 은 제 2 부정합 값 (114) 과 제 1 부정합 값 (112) 사이의 차이 (124) (예컨대, 하나의 프레임 차이) 로 인해 스킵된다. 따라서, 샘플 (642) 에 대응하는 오디오는 인코딩된 채널들 (180) 의 부분으로서 인코더 (120) 에 의해 인코딩되지 않을 수도 있다. (프레임들 사이에 불연속성을 가진) 인코딩된 채널들 (180) 이 제 2 디바이스 (160) 에서 디코딩되어 플레이백될 때, 클릭, 팝, 히스 (hiss), 또는 다른 오디오 사운드가 분실된 샘플로 인해 들릴 수도 있다. 스킵되는 샘플들의 개수가 증가함에 따라, 클릭들 및 다른 오디오 사운드들이 청취자에게 보다 현저해 질 수도 있다.
프레임들 사이의 불연속들을 보상하기 (또는, 은폐하기) 위해, 인코더 (120) 의 샘플 조정기 (126) 는 차이 (124) 에 기초하여 제 2 샘플들 (118) 을 조정할 수도 있다. 제 2 샘플들 (118) 을 조정하는 것은 차이 (124) 에 기초하여 제 2 샘플들 (118) 의 부분을 내삽하여 추정된 샘플들 (210) 을 발생시키는 것을 포함할 수도 있다. 예를 들어, 샘플 조정기 (126) 는 제 4 프레임 (208) 에 대응하는 제 2 샘플들 (118) 의 서브세트를 내삽할 수도 있다. 대안적으로, 샘플 조정기 (126) 는 제 2 프레임 (204) 에 대응하는 제 2 샘플들 (118) 의 서브세트, 또는 제 2 프레임 (204) 및 제 4 프레임 (208) 에 대응하는 샘플들의 서브세트를 내삽할 수도 있다. 내삽은 확산 인자 N_SPREAD 에 대응하는 샘플들의 수에 대해 수행될 수도 있다. 추정된 샘플들 (210) 을 발생시키기 위해 샘플들의 서브세트를 내삽하는 것은 확산 인자 N_SPREAD 에 대응하는 샘플들의 수에 걸쳐서 불연속성을 확산시킬 (예컨대, 평활화하거나 또는 느리게-시프트시킬) 수도 있다. 특정의 구현예에서, 확산 인자 N_SPREAD 의 값은 대응하는 프레임 (예컨대, 제 4 프레임 (208)) 에서의 샘플들의 수 N 미만이다. 대안적으로, 확산 인자 N_SPREAD 의 값은 대응하는 프레임에서의 샘플들의 수 N 과 동일할 수도 있다. 다른 대안들에서, 확산 인자 N_SPREAD 는 N 보다 클 수 있으며, 확산은 다수의 프레임들에 걸쳐서 수행될 수 있다. 예를 들어, 2개의 프레임들 (예컨대, 도 2 에서 제 2 프레임 (204) 과 제 4 프레임 (208)) 사이의 불연속성은 N 보다 큰 값을 갖는 확산 인자 N_SPREAD 를 이용하여 다수의 프레임들에 걸쳐서 확산될 수도 있다. 큰 확산 인자 N_SPREAD (예컨대, N 보다 크거나 같은 N_SPREAD) 를 이용하는 것은 불연속성이 샘플들에 걸쳐서 확산되는 평활도를 증가시킬 수도 있다.
도 2 에 예시된 예에서, 확산 인자 N_SPREAD 의 값은 4개의 샘플들이다. 다른 구현예들에서, 확산 인자 N_SPREAD 의 값은 4보다 적거나 또는 4보다 많은 샘플들일 수도 있다. 특정의 구현예에서, 확산 인자 N_SPREAD 의 값은 528 개의 샘플들이다. 확산 인자는 인코더 (120) 또는 메모리 (110) 에 저장될 수도 있다. 특정의 구현예에서, 확산 인자는 오디오 채널들의 목표 평활도 레벨 또는 채널 조정에 전념할 프로세싱의 목표 레벨에 기초하여 (예컨대, 제 1 디바이스 (102) 의 제조 또는 프로그래밍 동안, 소프트웨어 또는 펌웨어 설치 또는 업데이트 동안, 등등 동안) 선택되는 사전 프로그래밍된 값이다. 예시하기 위하여, 확산 인자 N_SPREAD 에 대한 높은 값은 채널 조정의 평활도를 증가시킬 수도 있는 (예컨대, 내삽이 더 높은 그래뉼래러티를 이용하여 수행될 수도 있는) 반면, 채널 조정을 수행하는데 사용되는 프로세싱 리소스들을 증가시킬 수도 있으며, 확산 인자 N_SPREAD 에 대한 낮은 값은 채널 조정을 수행하는데 사용되는 프로세싱 리소스들을 감소시키는 반면, 채널 조정의 평활도를 감소시킬 수도 있다 (예컨대, 내삽이 더 낮은 그래뉼래러티를 이용하여 수행될 수도 있다).
다른 특정의 구현예에서, 확산 인자 N_SPREAD 의 값은 오디오 평활도 세팅에 기초한다. 예를 들어, 사용자는 오디오 평활도 세팅을 선택할 수도 있으며, 확산 인자 N_SPREAD 는 오디오 평활도 세팅에 기초하여 제 1 디바이스 (102) (예컨대, 샘플 조정기 (126) 에 의해) 를 결정될 수도 있다. 추가적으로, 또는 대안적으로, 확산 인자 N_SPREAD 의 값은 오디오 채널들의 프레임 유형, 오디오 채널들의 샘플 레이트, 오디오 채널들의 피치, 과거 지연 휴리스틱스, 또는 이들의 조합에 기초할 수도 있다. 예시적인 예로서, 확산 인자 N_SPREAD 는 프레임 유형, 샘플 레이트, 피치, 과거 지연 휴리스틱스, 또는 이들의 조합에 기초하여 64 개의 샘플들과 580 개의 샘플들 사이에서 변할 수도 있다. 다른 특정의 구현예에서, (예컨대, 인접 프레임들의 부정합 값들 사이의) 차이 D 의 임계값은 목표 채널의 프레임 유형에 기초할 수도 있다. 인코더 (120) 는 제 2 오디오 신호 (146) (예컨대, 목표 채널) 의 프레임 유형을 결정할 수도 있으며, 인코더 (120) 는 D 의 값이 프레임 유형에 기초하여 특정의 임계치를 초과하지 않도록 보장할 수도 있다. 예를 들어, 인코더 (120) 또는 메모리 (110) 는 D 의 임계값들을 프레임 유형들에 맵핑하는 테이블 (또는, 다른 데이터 구조) 을 저장할 수도 있다. 프레임 유형은 음성, 음악, 잡음, 또는 다른 오디오 유형들을 포함할 수도 있다. 구체적인 예로서, 음성은 4 의 임계값과 연관될 수도 있으며 (예컨대, 음성의 인접 프레임들의 부정합 값들 사이의 차이는 4 를 초과하지 않을 수도 있으며), 음악은 1 의 임계값과 연관될 수도 있으며 (예컨대, 음악의 인접 프레임들의 부정합 값들 사이의 차이는 1 을 초과하지 않을 수도 있으며), 잡음은 20 의 임계값과 연관될 수도 있다 (예컨대, 잡음의 인접 프레임들의 부정합 값들 사이의 차이는 20 을 초과하지 않을 수도 있다). 음성이 4 의 프레임들의 임계값과 연관되는 예시적인 예로서, 이전 프레임이 1 의 부정합 값이면, 현재의 프레임에 대해 결정된 부정합 값이 5 를 초과하지 않으므로, 현재의 프레임 및 이전 프레임의 부정합 값 사이의 차이가 4개의 프레임들 (예컨대, 음성 프레임들과 연관된 임계값) 을 초과하지 않는다. 추가적으로, 또는 대안적으로, 임계값은 오디오 채널들의 주기성, 오디오 채널들의 시간/스펙트럼 희소성, 프레임 유형, 또는 이들의 조합에 기초할 수도 있다.
프레임간 불연속성을 제 4 프레임 (208) 의 샘플들 간에 확산시키기 위해, 샘플 조정기 (126) 는 도 2 에 예시된 예에서 4개의 추정된 샘플들을 포함하는 추정된 샘플들 (210) 을 발생시킨다. 추정된 샘플들 (210) 은 이전 프레임의 최종 샘플 (예컨대, 제 2 프레임 (204) 의 샘플 (641)) 및 현재의 프레임 (예컨대, 제 4 프레임 (208)) 의 처음 4개의 샘플들을 내삽함으로써 발생된다. 예를 들어, 추정된 샘플들 (210) 은 샘플들 (642.w, 643.x, 644.y, 및 646.z) 을 포함할 수도 있다. 특정의 구현예에서, 추정된 샘플들 (210) 은 추정된 샘플들 사이에 균일한 간격을 가질 수도 있다. 이 구현예에서, 추정된 샘플들은 다음 수식에 기초하는 내삽 인자를 이용하여 발생될 수도 있다:
내삽 인자 = D/N_SPREAD 수식 4
여기서, D 는 현재의 프레임과 이전 프레임 사이의 차이 (예컨대, 차이 (124)) 이고, 여기서, N_SPREAD 는 확산 인자이다. 도 2 에 예시된 바와 같이, 추정된 샘플들 (210) 은 샘플들 (642.w, 643.x, 644.y, 및 646.z) 의 추정들을 포함할 수도 있다. 추정된 샘플들이 균일하게 이격된 예시적인 실시형태에서, D 는 1 이고, N_SPREAD 는 4 이고, 내삽 인자는 1/4 (예컨대, 0.25) 이다. 이 예에서, 추정된 샘플들 (210) 은 샘플들 (642.25, 643.5, 644.75, 및 646) 의 추정들을 포함한다. 차이 (124) 가 양일 때 (예컨대, 제로보다 클 때), 추정된 샘플들 (210) 은 제 2 샘플들 (118) 보다 낮은 샘플링 레이트에 대응한다. 예를 들어, 추정된 샘플들 (210) 은 제 2 샘플들 (118) 과 연관된 1 의 샘플링 레이트보다 낮은 1.25 의 샘플링 레이트와 연관된다. 다른 구현예들에서 (예컨대, D 또는 N_SPREAD 가 상이한 값을 갖는 경우), 추정된 샘플들 (210) (및 다른 샘플들) 은 다른 샘플들의 추정들, 예컨대 분수 샘플들 (예컨대, 예시적인 예로서, 2개의 기존 샘플들 사이의 샘플들, 예컨대 642.25) 을 나타낼 수도 있다. 대안적으로, 추정된 샘플들 (210) 은 불균일한 간격과 연관될 수도 있다. 예를 들어, 샘플들 w 와 x 사이의 차이는 샘플들 x 와 y 사이의 차이와 상이할 수도 있다. 예시적인 예로서, 추정된 샘플들 (210) 이 불균일한 간격과 연관될 때, 추정된 샘플들 (210) 은 샘플들 (642.25, 643, 644.5, 및 646) 의 추정들을 포함할 수도 있다.
추정된 샘플들 (210) 은 제 2 샘플들 (118) 에 포함되지 않는 샘플들의 추정들을 포함할 수도 있다. 추정된 샘플들 (210) 을 발생시키기 위해, 샘플 조정기 (126) 는 제 2 샘플들 (118) 의 서브세트 (예컨대, 확산 인자 N_SPREAD 로 표시되는 샘플들의 개수) 에 대해 내삽을 수행한다. 특정의 구현예에서, 내삽은 Sinc 내삽 (예컨대, "Whittaker-Shannon" 내삽) 을 포함한다. Sinc 내삽은 Sinc 함수 또는 Sinc 함수의 작은 변형에 기초하는 임의의 일반적으로 알려진 내삽 방법들을 포함할 수도 있다. Sinc 내삽은 이론적으로 이상적인 내삽기 결과들과 동일한 내삽 결과들을 발생시킬 수도 있다. 그러나, 내삽의 인자가 증가할 때 Sinc 필터 계수들의 사이즈가 증가함에 따라, Sinc 내삽의 복잡성이 더 빠르게 증가하는 경향이 있다. 또, Sinc 내삽은 상이한 내삽 인자들에 대응하는 필터 계수들의 다수의 세트들을 필요로 할 수도 있다. 이 구현예에서, 샘플 조정기 (126) (또는, 메모리 (110)) 는 상이한 내삽 인자들에 대응하는 필터 계수들의 다수의 세트들을 저장할 수도 있다. 샘플 조정기 (126) 는 (수식 4 를 이용하여) 내삽 인자를 결정하고 필터 계수들의 대응하는 세트를 샘플들의 서브세트를 적용하여 추정된 샘플들 (210) 을 발생시킬 수도 있다. 어떤 필터 계수들의 세트도 결정된 내삽 인자와 정확히 정합하지 않을 때, 필터 계수들의 가장 가까운-매칭 세트가 식별되어, 추정된 샘플들 (210) 을 발생시키는데 사용될 수도 있다. 내삽에 사용되는 단계 사이즈가 증가함에 따라 Sinc 내삽의 복잡성, 따라서 Sinc 내삽을 수행하는데 사용되는 프로세싱 리소스들이 더 빠르게 증가하므로, Sinc 내삽은 확산 인자 N_SPREAD 에 대응하는 소수의 샘플들에 대해 수행될 수도 있다 (예컨대, N_SPREAD 는 4 이다).
다른 특정의 구현예에서, 내삽은 Lagrange 내삽을 포함한다. 이 구현예에서, 샘플 조정기 (126) 는 내삽 인자에 기초하여 Lagrange 내삽을 수행한다. Lagrange 내삽은 내삽 동작의 단계 사이즈에 관계없이 내삽 로직이 동일하기 때문에 Sinc 내삽보다 임의의 내삽 인자에 대해 더 나은 스케일러빌리티를 제공할 수도 있다. 또한, Lagrange 내삽은 이론적으로 이상적인 내삽기 결과들에 아주 가까운 내삽 결과들을 발생시킬 수도 있다. 이 구현예에서, 어떤 필터 계수들도 샘플 조정기 (126) (또는, 메모리 (110)) 내에 저장되지 않는다. Lagrange 내삽이 저장된 필터 계수들을 이용하지 않기 때문에, Lagrange 내삽은 Sinc 내삽보다 더 적은 프로세싱 리소스들을 이용할 수도 있다.
다른 특정의 구현예에서, 내삽은 하이브리드 내삽을 포함한다. 하이브리드 내삽은 내삽 기법들의 임의의 조합을 이용할 수도 있다. 예시적인 예로서, 하이브리드 내삽은 Sinc 내삽과 Lagrange 내삽 사이의 조합을 포함할 수도 있다. 예를 들어, 하이브리드 내삽을 수행하는 것은 2-차 또는 4-차 Sinc 내삽을 수행하고, 뒤이어서, 64 샘플 정밀도를 갖는 Lagrange 내삽을 수행하는 것을 포함할 수도 있다. 하이브리드 내삽은 Sinc 내삽의 정밀도를 Lagrange 내삽의 감소된 프로세싱 및 메모리 사용과 조합할 수도 있다. 다른 구현예들에서, Sinc 내삽들과 Lagrange 내삽들의 다른 조합들이 사용된다. 다른 구현예들에서, 분수 지연 필터들, 리-샘플링, 또는 프레임간 중첩과 같은, 내삽 또는 평활화의 다른 방법들이 이용될 수도 있다.
다른 특정의 구현예에서, 내삽은 윈도우 페이딩을 이용하여 수행될 수도 있다. 윈도우 페이딩을 이용하는 것에 기초하는 이 내삽 방법은 "중첩 및 가산 방법" 또는 "중첩 및 가산 샘플 발생/조정" 또는 단순히 "중첩 및 가산 내삽" 으로서 지칭될 수도 있다. 예시하기 위하여, 샘플 조정기 (126) 는 (참조 채널에 대한) 목표 채널의 제 1 시프트 값이 3개의 샘플들 (예컨대, 3-샘플 시프트) 과 동일하다고 결정할 수도 있으며 제 1 시프트 값을 제 1 버퍼에 저장할 수도 있다. 샘플 조정기 (126) 는 목표 채널의 제 2 시프트 값이 4개의 샘플들과 동일하다고 결정할 수도 있으며, 제 2 시프트 값을 제 2 버퍼에 저장할 수도 있다. 내삽된 목표 채널의 최종 샘플들은 제 1 및 제 2 버퍼들 내 시프트 값들의 가중된 조합에 기초할 수도 있다. 예를 들어, 내삽된 목표 채널의 최종 샘플들은 targetfinal(n) = win(n) X target(n+3) + (1-win(n)) X target(n+4)) 로서 표현될 수도 있으며, 여기서, win(n) 은 1 로부터 0 까지 부드럽게 감소하는 윈도우 함수이다. 따라서, targetfinal(0) = target(n+3) 및 targetfinal(N) = target(n+4) 이며, 여기서, N 은 시프트가 적용되는 샘플들의 개수이다.
Sinc 내삽, Lagrange 내삽, 또는 하이브리드 내삽과 비교하여, 중첩 및 가산 내삽은 더 적은 계산 복잡성을 필요로 하며, 또한 윈도우 함수의 값이 부드럽게 1 로부터 0 까지 변하는 한, 임의의 윈도우 함수 win(n) 가 사용될 수도 있기 때문에, 더 나은 유연성을 제공한다. 또, 중첩 및 가산 내삽은 확산 인자 N_SPREAD 에 대응하는 다수의 샘플들에 걸쳐서 평활화하는데 적합할 수도 있다 (예컨대, N_SPREAD 는 640 이다). 중첩 및 가산 내삽의 세부 사항들은 도 7 내지 도 9 를 참조하여 아래에서 설명된다.
따라서, 상이한 내삽의 모드들이 본원에서 설명되는 기법들에 따라서 사용될 수도 있다. 일 구현예에 따르면, 내삽의 제 1 모드가 목표 샘플들의 세트의 제 1 부분 (예컨대, 제 2 샘플들 (118)) 에 대해 사용될 수도 있으며, 내삽의 제 2 모드가 목표 샘플들의 세트의 제 2 부분에 대해 사용될 수도 있다. 목표 샘플들의 세트의 제 1 부분은 제 1 목표 프레임과 연관될 수도 있으며, 목표 샘플들의 세트의 제 2 부분은 제 2 목표 프레임과 연관될 수도 있다.
추정된 샘플들 (210) 을 발생시킨 후, 샘플 조정기 (126) 는 샘플들 (118) 의 서브세트를 추정된 샘플들 (210) 로 대체하여 조정된 샘플들 (128) (예컨대, 제 2 조정된 프레임) 을 발생시킬 수도 있다. 조정된 샘플들 (128) 에서, 제 2 프레임 (204) 과 제 4 프레임 (208) 사이의 불연속성이 추정된 샘플들 (210) 에 걸쳐서 확산된다. 예를 들어, 샘플 (641) 에 뒤이어 샘플 (643) 이 후속하는 (샘플 (642) 이 스킵되는) 대신, 샘플 (641) 에 이어서, 샘플들 (642.25, 643.5, 644.75, 및 646) 의 추정들이 뒤따른다. 4개의 프레임들 사이에 하나의-프레임 차이를 (예컨대, 도 2 에서 .25 프레임 차이로서) 확산시키는 것은 제 2 프레임 (204) 과 제 4 프레임 (208) 사이의 프레임간 불연속성을 감소시킨다 (또는, 은폐한다). 샘플 조정기 (126) 는 유사하게, 각각의 프레임 경계에서 참조 채널의 샘플들을 조정하여, 다른 프레임간 불연속들을 감소시킬 (또는, 은폐시킬) 수도 있다. 따라서, 도 2 는 프레임들 사이에 샘플들을 스킵하는 것을 피하기 위해 차이 (124) 가 양일 (예컨대, 제로보다 클) 때 조정된 샘플들 (128) 을 발생시키는 일 예를 예시한다.
차이 (124) 에 기초하여 샘플들을 조정하는 제 2 특정의 예가 도 3 에 예시된다. 도 3 은 제 1 샘플들 (116), 제 2 샘플들 (118), 및 조정된 샘플들 (128) 을 예시하는 다이어그램 (300) 을 포함한다. 도 3 에 예시된 예에서, 차이 (124) 는 음 (예컨대, 제로 미만) 이다. 도 3 에 예시된 샘플들은 제 1 오디오 신호 (142) 에 대응하는 제 1 샘플들 (116) 및 제 2 오디오 신호 (146) 에 대응하는 제 2 샘플들 (118) 을 포함한다. 오디오 신호들 (142 및 146) 의 프레임들 각각은 샘플들의 특정의 개수에, 또는 시간의 특정의 지속기간 및 특정의 샘플 레이트에 대응할 수도 있다. 도 3 에 예시된 특정의 예에서, 각각의 프레임은 20 밀리초 (ms) 에 대응하는 특정의 샘플링 레이트 (예컨대, 32 킬로-헤르츠 (kHz)) 에서 샘플링되는 640 개의 샘플들을 포함한다. 다른 구현예들에서, 프레임들은 640 보다 적거나 또는 640 보다 많은 샘플들을 포함할 수도 있다. 일 예로서, 각각의 프레임은 20 ms 에 대응할 수도 있는 48 kHz 에서 샘플링되는 960 개의 샘플들을 포함할 수도 있다.
위에서 설명한 바와 같이, 제 1 오디오 신호 (142) 는 참조 채널일 수도 있으며, 제 2 오디오 신호 (146) 는 목표 채널일 수도 있다. 제 2 오디오 신호 (146) 는 제 1 오디오 신호 (142) 에 대한 지연으로 수신될 수도 있다. 시프트 추정기 (121) 는 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 의 프레임들을 시간적으로 정렬하는데 사용되는 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 을 결정할 수도 있다. 도 3 에 예시된 특정의 예에서, 제 1 부정합 값 (112) (Tprev) 은 3 이고 제 2 부정합 값 (114) (T) 은 1 이다. 제 1 오디오 신호 (142) 의 제 1 프레임 (302) 을 제 2 오디오 신호 (146) 의 제 2 프레임 (304) 과 시간적으로 정렬하기 위해, 제 2 프레임 (304) 에 대응하는 제 2 샘플들 (118) 의 그룹이 3개의 샘플들 만큼 시프트된다. 예시하기 위하여, 시프트 추정기 (121) 는 각각의 오디오 신호의 샘플들 (0-639) 을 포함하는 입력 프레임 (예컨대, 제 1 오디오 신호 (142) 의 제 1 프레임 및 제 2 오디오 신호 (146) 의 제 2 프레임) 을 수신할 수도 있다. 시프트 추정기 (121) 는 목표 채널을 참조 채널과 시간적으로 정렬하기 위해 부정합 값을 결정할 수도 있으며, 시프트 추정기 (121) 는 목표 채널을 부정합 값 만큼 시프트시켜 참조 채널의 제 1 프레임 및 목표 채널의 시프트된 제 2 프레임을 포함하는 "시프트된 프레임" 을 발생시킬 수도 있다. 예를 들어, 제 2 샘플들 (118) 의 샘플들 (3-642) 은 시프트된 프레임을 발생시키기 위해 제 1 샘플들 (116) 의 샘플들 (0-639) 과 정렬된다. 시프트 추정기 (121) 는 각각의 오디오 신호의 샘플들 (640-1279) 을 포함하는 제 2 입력 프레임 (예컨대, 제 1 오디오 신호 (142) 의 제 3 프레임 및 제 2 오디오 신호 (146) 의 제 4 프레임) 을 수신할 수도 있다. 시프트 추정기 (121) 는 목표 채널을 참조 채널과 시간적으로 정렬하기 위해 제 2 부정합 값을 결정할 수도 있으며, 시프트 추정기 (121) 는 목표 채널을 부정합 값 만큼 시프트시켜 참조 채널의 제 3 프레임 및 목표 채널의 시프트된 제 4 프레임을 포함하는 제 2 시프트된 프레임을 발생시킬 수도 있다. 제 1 오디오 신호 (142) 의 제 3 프레임 (306) 을 제 2 오디오 신호 (146) 의 제 4 프레임 (308) 과 시간적으로 정렬하기 위해, 제 4 프레임 (208) 에 대응하는 제 2 샘플들 (118) 의 그룹이 하나의 샘플 만큼 시프트된다. 예를 들어, 제 2 샘플들 (118) 의 샘플들 (641-1280) 은 제 2 시프트된 프레임을 발생시키기 위해 제 1 샘플들 (116) 의 샘플들 (640-1279) 과 정렬된다. 시프트된 프레임 및 제 2 시프트된 프레임을 발생시킨 후, 샘플 조정기 (126) 는 시프트된 프레임과 제 2 시프트된 프레임 사이의 불연속성을 보상하기 (또는, 은폐하기) 위해 제 2 시프트된 프레임의 샘플들을 조정하여, 조정된 제 2 시프트된 프레임을 발생시킬 수도 있다.
위에서 설명한 바와 같이, 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 이 상이할 때, 불연속성이 제 2 프레임 (304) 과 제 4 프레임 (308) 사이의 경계에 존재할 수도 있다. 제 2 부정합 값 (114) 이 제 1 부정합 값 (112) 미만이면, 하나 이상의 샘플들이 반복될 수도 있다. 도 3 에 나타낸 바와 같이, 샘플들 (641 및 642) 은 제 2 부정합 값 (114) 과 제 1 부정합 값 (112) 사이의 차이 (124) (예컨대, 2개의 프레임 차이) 로 인해 반복된다. 따라서, 샘플들 (641 및 642) 에 대응하는 오디오는 인코딩된 신호들 (180) 의 부분으로서 인코더 (120) 에 의해 두번 인코딩되지 않을 수도 있다. (반복된 샘플들의 인코딩에 의한) 인코딩된 신호들 (180) 이 제 2 디바이스 (160) 에서 디코딩되어 플레이백될 때, 클릭, 팝, 히스, 또는 다른 오디오 사운드는 분실된 샘플로 인해 들리지 않을 수도 있다. 반복되는 샘플들의 개수가 증가함에 따라, 클릭들 및 다른 오디오 사운드들이 청취자에게 보다 현저해 질 수도 있다.
프레임들 사이의 불연속들을 보상하기 (또는, 은폐하기) 위해, 인코더 (120) 의 샘플 조정기 (126) 는 차이 (124) 에 기초하여 제 2 샘플들 (118) 을 조정할 수도 있다. 제 2 샘플들 (118) 을 조정하는 것은 추정된 샘플들 (310) 을 발생시키기 위해 차이 (124) 에 기초하여 제 2 샘플들 (118) 의 부분을 내삽하는 것을 포함할 수도 있다. 예를 들어, 샘플 조정기 (126) 는 제 4 프레임 (308) 에 대응하는 제 2 샘플들 (118) 의 서브세트를 내삽할 수도 있다. 대안적으로, 샘플 조정기 (126) 는 제 2 프레임 (304) 에 대응하는 제 2 샘플들 (118) 의 서브세트, 또는 제 2 프레임 (304) 및 제 4 프레임 (308) 에 대응하는 샘플들의 서브세트를 내삽할 수도 있다. 내삽은 확산 인자 N_SPREAD 에 대응하는 샘플들의 수에 대해 수행될 수도 있다. 추정된 샘플들 (310) 을 발생시키기 위해 샘플들의 서브세트를 내삽하는 것은 확산 인자 M 에 대응하는 샘플들의 수에 걸쳐서 불연속성을 확산시킬 (예컨대, 평활화하거나 또는 느리게-시프트시킬) 수도 있다. 도 3 에 예시된 예에서, 확산 인자 N_SPREAD 의 값은 4개의 샘플들이다. 다른 구현예들에서, 확산 인자 N_SPREAD 의 값은 4보다 적거나 또는 4보다 많은 샘플들일 수도 있다.
프레임간 불연속성을 제 4 프레임 (308) 의 샘플들 간에 확산시키기 위해, 샘플 조정기 (126) 는 도 3 에 예시된 예에서 4개의 추정된 샘플들을 포함하는 추정된 샘플들 (310) 을 발생시킨다. 추정된 샘플들 (310) 은 이전 프레임의 최종 샘플 (예컨대, 제 2 프레임 (304) 의 샘플 (642)) 및 현재의 프레임 (예컨대, 제 4 프레임 (308)) 의 처음 4개의 샘플들을 내삽함으로써 발생된다. 예를 들어, 추정된 샘플들 (310) 은 샘플들 (642.w, 643.x, 643.y, 및 644.z) 을 포함한다. 특정의 구현예에서, 추정된 샘플들 (310) 은 추정된 샘플들 사이에 균일한 간격을 가질 수도 있다. 이 구현예에서, 추정된 샘플들은 수식 4 에 기초하는 내삽 인자를 이용하여 발생될 수도 있다. 도 3 에 예시된 바와 같이, 추정된 샘플들 (310) 은 샘플들 (642.w, 643.x, 643.y, 및 644.z) 의 추정들을 포함할 수도 있다. 추정된 샘플들이 균일하게 이격되는 예시적인 실시형태에서, D 는 2 이고, N_SPREAD 는 4 이고, 내삽 인자는 2/4 (예컨대, 0.5) 이다. 이 예에서, 추정된 샘플들 (310) 은 샘플들 (642.5, 643, 643.5, 및 644) 의 추정들을 포함한다. 차이 (124) 가 음일 때 (예컨대, 제로 미만일 때), 추정된 샘플들 (310) 은 제 2 샘플들 (118) 보다 더 높은 샘플링 레이트에 대응한다. 예를 들어, 추정된 샘플들 (310) 은 제 2 샘플들 (118) 과 연관된 1 의 샘플링 레이트보다 더 높은 .5 의 샘플링 레이트와 연관된다. 대안적으로, 추정된 샘플들 (310) 은 불균일한 간격과 연관될 수도 있으며, 추정된 샘플들 (310) 은 위에서 설명된 값과는 상이한 값들 (예컨대, w, x, y, 및 z 에 대한 값들) 을 포함할 수도 있다.
추정된 샘플들 (310) 를 발생시킨 후, 샘플 조정기 (126) 는 샘플들 (118) 의 서브세트를 추정된 샘플들 (310) 로 대체하여 조정된 샘플들 (128) (예컨대, 제 2 조정된 프레임) 을 발생시킬 수도 있다. 조정된 샘플들 (128) 에서, 제 2 프레임 (304) 과 제 4 프레임 (308) 사이의 불연속성이 추정된 샘플들 (310) 에 걸쳐서 확산된다. 예를 들어, 샘플들 (641 및 642) 이 샘플 (642) 이후에 반복되는 대신, 샘플 (642) 에 이어서, 샘플들 (642.5, 643, 643.5, 및 644) 의 추정들이 뒤따른다. 4개의 프레임들 간에 2개의-프레임 차이를 (예컨대, 도 3 에서 .5 프레임 차이로서) 확산시키는 것은 제 2 프레임 (304) 과 제 4 프레임 (308) 사이의 프레임간 불연속성을 감소시킨다 (또는, 은폐한다). 샘플 조정기 (126) 는 유사하게, 각각의 프레임 경계에서 참조 채널의 샘플들을 조정하여, 다른 프레임간 불연속들을 감소시킬 (또는, 은폐시킬) 수도 있다. 따라서, 도 3 은 프레임들 사이에 샘플들을 반복하는 것을 피하기 위해 차이 (124) 는 음 (예컨대, 제로 미만) 일 때 조정된 샘플들 (128) 을 발생시키는 일 예를 예시한다.
도 1 을 다시 참조하면, 조정된 샘플들 (128) 의 발생 이후, 채널 발생기 (130) 는 제 1 샘플들 (116) (예컨대, 참조 채널의 샘플들) 및 조정된 샘플들 (128) 에 기초하여, 인코딩된 채널들을 발생시킬 수도 있다. 채널 발생기 (130) 는 제 1 샘플들 (116) 및 조정된 샘플들 (128) 에 기초하여 중간-채널 및 측면-채널 (또는, 측면 채널 파라미터들) 을 발생시키기 위해 스테레오 인코딩을 수행할 수도 있으며, 인코딩된 채널들 (180) 은 중간-채널 및 측면-채널 (또는, 측면 채널 파라미터들) 을 포함할 수도 있다. 다른 예들에서, 참조 채널 (142) 이 목표 채널이고 목표 채널 (146) 이 참조 채널일 때, 제 1 샘플들 (116) 은 조정된 샘플들 (128) 을 발생시키도록 조정될 수도 있으며, 채널 발생기 (130) 는 조정된 샘플들 (128) 및 제 2 샘플들 (118) (예컨대, 참조 채널의 샘플들) 에 기초하여, 인코딩된 채널들 (180) 을 발생시킬 수도 있다. 인코딩된 채널들 (180) 은 하나 이상의 인터페이스들 (104) 의 네트워크 인터페이스를 통해서, 제 2 디바이스 (160) 에서의 디코딩 및 플레이백을 위해 제 2 디바이스 (160) 로 송신될 수도 있다.
특정의 구현예에서, 인코더 (120) 는 참조 채널을 시간-시프팅하고 조정하기 전에, 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 중 하나를 참조 채널로서 선택하도록, 그리고, 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 중 하나를 목표 채널로서 선택하도록 구성될 수도 있다. 예를 들어, 인코더 (120) 는 제 1 부정합 값 (112) 에 기초하여, 제 1 시간 기간 동안, 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 중 하나를 참조 채널로서 선택하도록, 그리고 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 중 다른 하나를 목표 채널로서 선택하도록 구성된 참조 채널 지정기를 포함할 수도 있다. 참조 채널 지정기는 또한 제 2 부정합 값 (114) 에 기초하여, 제 2 시간 기간 동안, 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 중 하나를 참조 채널로서 선택하도록 그리고 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 중 다른 하나를 참조 채널로서 선택하도록 구성될 수도 있다. 참조 채널 및 목표 채널의 선택이 도 6 을 참조하여 추가로 설명된다.
제 1 디바이스 (102) 는 인코딩된 신호들 (180) 과 함께 추가 정보를 송신할 수도 있다. 일 예로서, 제 1 디바이스 (102) 는 부정합 값들 (182) 을 제 2 디바이스 (160) 로 송신할 수도 있다. 부정합 값들 (182) 은 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 에 기초하여 결정되는 "비-인과적" 부정합 값들을 포함할 수도 있다. 예를 들어, 부정합 값들 (182) 은 제 1 부정합 값 (112) 의 비부호 버전 (예컨대, 절대값 연산이 제 1 부정합 값 (112) 에 대해 수행되는 결과) 을 나타내는 제 1 비-인과적 부정합 값을 포함할 수도 있다. 부정합 값들 (182) 은 또한 제 2 부정합 값 (114) 의 비부호 버전 (예컨대, 절대값 연산이 제 2 부정합 값 (114) 에 대해 수행되는 결과) 을 나타내는 제 2 비-인과적 부정합 값을 포함할 수도 있다. 다른 예로서, 제 1 디바이스 (102) 는 참조 채널 표시자 (184) 를 제 2 디바이스 (160) 로 송신할 수도 있다. 참조 채널 표시자 (184) 의 값은 제 1 오디오 신호 (142) 또는 제 2 오디오 신호 (146) 를 참조 채널로서 식별할 수도 있다. 예를 들어, 참조 채널 표시자 (184) 의 제 1 특정의 값 (예컨대, 논리 제로 값) 은 제 1 오디오 신호 (142) 가 참조 채널이라는 것을 표시할 수도 있으며, 참조 채널 표시자 (184) 의 제 2 특정의 값 (예컨대, 논리 1 값) 은 제 2 오디오 신호 (146) 가 참조 채널이라는 것을 표시할 수도 있다. 추가적으로, 또는 대안적으로, 제 1 디바이스 (102) 는 다른 값들, 예컨대 이득 파라미터들을, 제 2 디바이스 (160) 로 송신할 수도 있다. 추가 정보 (예컨대, 부정합 값들 (182), 참조 채널 표시자 (184), 이득 파라미터들, 등) 가 하나 이상의 인터페이스들 (104) 의 네트워크 인터페이스를 통해서 송신될 수도 있으며, 인코딩된 신호들 (180) 을 디코딩하기 위해 제 2 디바이스 (160) 에 의해 사용될 수도 있다.
제 2 디바이스 (160) 는 디코더 (162) 를 포함할 수도 있다. 제 2 디바이스 (160) 는 편의상 예시되지 않은, 추가적인 컴포넌트들, 예컨대 프로세서, 메모리, 하나 이상의 인터페이스들, 송신기, 수신기, 트랜시버, 또는 이들의 조합을 포함할 수도 있다. 디코더 (162) 는 인코딩된 채널들 (180) 을 디코딩하고 제 2 디바이스 (160) 에서의 플레이백을 위해 다수의 오디오 채널들을 렌더링하도록 구성될 수도 있다. 특정의 구현예에서, 인코딩된 채널들 (180) 을 디코딩하는 것은 인코딩된 채널들 (180) 을 업-믹싱하는 것을 포함한다. 제 2 디바이스 (160) 는 오디오 채널들의 플레이백을 가능하게 하기 위해, 제 1 스피커 (170), 제 2 스피커 (174), 또는 양자에 커플링될 수도 있다. 예를 들어, 디코더 (162) 는 제 1 스피커 (170) 를 통한 플레이백을 위해 제 1 출력 채널 (172) 을 발생시킬 수도 있으며, 디코더 (162) 는 제 2 스피커 (174) 를 통한 플레이백을 위해 제 2 출력 채널 (176) 을 발생시킬 수도 있다.
도 1 에 예시된 예에서, 목표 채널의 조정 (예컨대, 평활화 또는 느린-시프팅 또는 내삽) 이 제 1 디바이스 (102) 의 인코더 (120) 에 의해 수행되는 것으로 설명된다. 다른 구현예들에서, 오디오 채널들의 조정은 제 2 디바이스 (160) 의 디코더 (162) 에 의해 수행될 수도 있다. 디코더에서의 목표 채널 조정에 관한 세부 사항들이 도 4 를 참조하여 추가로 설명된다.
동작 동안, 제 1 디바이스는 하나 이상의 인터페이스들 (104) 을 통해서, 제 1 마이크로폰 (140) 으로부터 제 1 오디오 신호 (142) 를, 그리고, 제 2 마이크로폰 (144) 으로부터 제 2 오디오 신호 (146) 를 수신한다. 제 1 디바이스 (102) 는 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 에 기초하여 제 1 샘플들 (116) 및 제 2 샘플들 (118) 을 각각 발생시킬 수도 있다. 제 2 오디오 신호 (146) 는 사운드 소스 (150) 의 로케이션으로 인해 (예컨대, 사운드 소스 (150) 가 제 2 마이크로폰 (144) 보다 제 1 마이크로폰 (140) 에 더 가까울 때) 제 1 오디오 신호 (142) 에 대해 지연될 수도 있다. 인코더 (120) 는 제 2 오디오 신호 (146) 가 제 1 오디오 신호 (142) 에 대해 지연되는 것에 기초하여, 제 1 오디오 신호 (142) 를 참조 채널로서, 그리고 제 2 오디오 신호 (146) 를 목표 채널로서, 식별하도록 구성될 수도 있다. 대안적으로, 제 1 오디오 신호 (142) 가 제 2 오디오 신호 (146) 에 대해 지연되면 (예컨대, 사운드 소스 (150) 가 제 1 마이크로폰 (140) 보다 제 2 마이크로폰 (144) 에 더 가까우면), 인코더 (120) 는 제 1 오디오 신호 (142) 를 목표 채널로서, 그리고 제 2 오디오 신호 (146) 를 참조 채널로서 식별할 수도 있다. 목표 채널 및 참조 채널의 식별의 추가적인 세부 사항들이 도 5 내지 도 6 을 참조하여 설명된다.
제 2 오디오 신호 (146) 가 목표 채널로서 식별된 후, 인코더 (120) 의 시프트 추정기 (121) 는 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 을 결정할 수도 있다. 제 1 부정합 값 (112) 은 제 2 오디오 신호 (146) 의 제 2 프레임에 대한 제 1 오디오 신호 (142) 의 제 1 프레임의 시프트를 표시할 수도 있으며, 제 2 부정합 값 (114) 은 제 2 오디오 신호 (146) 의 제 4 프레임에 대한 제 1 오디오 신호 (142) 의 제 3 프레임의 시프트를 표시할 수도 있다. 부정합 값들 (112 및 114) 은 메모리 (110) 에 저장되어 제 2 샘플들 (118) (또는, 제 1 오디오 신호 (142) 가 목표 채널이면 제 1 샘플들 (116)) 을 시프트시키는데 사용될 수도 있다. 추가적으로, 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 은 인코더 (120) 의 비교기 (122) 에 제공될 수도 있다. 비교기 (122) 는 제 1 부정합 값 (112) 과 제 2 부정합 값 (114) 사이의 차이 (124) 를 결정할 수도 있다. 샘플 조정기 (126) 는 차이 (124) 및 제 2 샘플들 (118) (또는, 제 1 오디오 신호 (142) 가 목표 채널이면 제 1 샘플들 (116)) 을 수신할 수도 있으며, 샘플 조정기 (126) 는 차이 (124) 에 기초하여 제 2 샘플들 (118) 을 조정할 수도 있다. 예를 들어, 샘플 조정기 (126) 는 차이 (124) 에 기초하여 제 2 샘플들 (118) 의 서브세트를 내삽하여 추정된 샘플들을 발생시킬 수도 있으며, 샘플 조정기 (126) 는 제 2 샘플들 (118) 의 서브세트를 추정된 샘플들로 대체하여 조정된 샘플들 (128) 을 발생시킬 수도 있다. 차이 (124) 가 양이면, 추정된 샘플들은 (도 2 를 참조하여 설명된 바와 같이) 하나 이상의 스킵된 샘플들을 은폐할 수도 있으며, 차이 (124) 가 음이면, 추정된 샘플들은 (도 3 을 참조하여 설명된 바와 같이) 하나 이상의 반복된 샘플들을 은폐할 수도 있다.
인코더 (120) 의 채널 발생기 (130) 는 조정된 샘플들 (128) 을 수신할 수도 있으며, 조정된 샘플들 (128) 및 제 1 샘플들 (116) 에 기초하여, 인코딩된 채널들 (180) (예컨대, 적어도 하나의 인코딩된 채널) 을 발생시킬 수도 있다. 특정의 구현예에서, 인코딩된 채널들 (180) 은 중간-채널 및 측면-채널을 포함한다. 인코딩된 채널들 (180) 은 (예컨대, 하나 이상의 인터페이스들 (104) 의 네트워크 인터페이스를 이용하여) 제 1 디바이스 (102) 로부터 네트워크 (152) 를 통해서 제 2 디바이스 (160) 로 송신될 수도 있다. 추가 정보, 예컨대 부정합 값들 (182) 및 참조 채널 표시자 (184) 가 또한 제 2 디바이스 (160) 로 송신될 수도 있다. 제 2 디바이스 (160) 는 인코딩된 채널들 (180) (및 추가 정보) 을 수신할 수도 있으며, 디코더 (162) 는 인코딩된 채널들 (180) 을 디코딩하여 제 1 출력 채널 (172) 및 제 2 출력 채널 (176) 을 발생시킬 수도 있다. 예를 들어, 디코더 (162) 는 인코딩된 채널들 (180) 을 디코딩 및 업믹싱하여 출력 채널들 (172 및 176) 을 발생시킬 수도 있다. 제 1 출력 채널 (172) 은 제 1 스피커 (170) 에 의해 출력될 수도 있으며, 제 2 출력 채널 (176) 은 제 2 스피커 (174) 에 의해 출력될 수도 있다.
도 1 의 시스템 (100) 은 참조 채널을 시간-시프트시키는 것에 의해 초래되는 프레임간 불연속들에 대한 보상 (또는, 이의 은폐) 을 가능하게 한다. 예를 들어, 제 1 부정합 값 (112) 과 제 2 부정합 값 (114) 사이의 차이 (124) 에 기초하여 조정된 샘플들 (128) 을 발생시킴으로써, 제 2 오디오 신호 (146) 는 다수의 추정된 샘플들에 걸쳐서 프레임간 불연속성을 확산시키도록 (예컨대, 평활화하거나 또는 느리게-시프트시키도록) 조정될 수도 있다. 불연속성을 확산시키는 것은 하나 이상의 샘플들을 스킵하거나 또는 반복하는 것과 비교하여, 제 2 샘플들 (118) 의 샘플들 (예컨대, 목표 채널의 샘플들) 의 쌍 사이의 차이를 감소시킬 수도 있다. 프레임간 불연속들을 감소 (또는, 은폐) 시키기 위해 목표 채널의 샘플들을 조정하는 것은 목표 채널을 시간-시프트시키는 것으로 인해 중간-채널을 인코딩하는데 사용되는 증가된 비트수를 유지하면서, 더 높은 품질 인코딩된 채널을 초래할 수도 있다. 인코딩된 채널들 (180) 이 제 2 디바이스 (160) 에서 디코딩되어 플레이백될 때, 프레임간 불연속들에 의해 초래된 클릭들 또는 다른 오디오 사운드들이 감소됨으로써 (또는, 제거됨으로써), 디코딩된 출력 채널들의 명료성을 향상시키고 청취자의 경험을 향상시킬 수도 있다.
상기 설명에서, 도 1 의 시스템 (100) 에 의해 수행되는 다양한 기능들이 특정의 컴포넌트들에 의해 수행되는 것으로 설명된다. 컴포넌트들의 이러한 분할은 단지 예시를 위한 것이다. 대안적인 구현예에서, 특정의 컴포넌트에 의해 수행되는 기능이 대신 다수의 컴포넌트들 간에 분할될 수도 있다. 더욱이, 대안적인 구현예에서, 도 1 의 2개 이상의 컴포넌트들은 단일 컴포넌트로 통합될 수도 있다. 도 1 에 예시된 각각의 컴포넌트는 하드웨어 (예컨대, 필드-프로그래밍가능 게이트 어레이 (FPGA) 디바이스, 주문형 집적 회로 (ASIC), DSP, 제어기, 등), 소프트웨어 (예컨대, 프로세서에 의해 실행가능한 명령들), 또는 이들의 조합을 이용하여 구현될 수도 있다.
도 4 를 참조하면, 부정합 값들 사이의 차이에 기초하여 오디오 샘플들을 조정하도록 구성된 디바이스를 포함하는 시스템의 제 2 특정의 구현예의 다이어그램이 도시되며 일반적으로 400 으로 지정된다. 시스템 (400) 은 프레임간 불연속들을 감소시키기 (또는, 은폐하기) 위해 디코더가 채널 조정을 수행하는 도 1 의 시스템 (100) 의 대안적인 구현예를 나타낼 수도 있다. 시스템 (400) 은 도 1 의, 제 1 디바이스 (102), 제 2 디바이스 (160), 네트워크 (152), 제 1 마이크로폰 (140), 제 2 마이크로폰 (144), 사운드 소스 (150), 제 1 스피커 (170), 및 제 2 스피커 (174) 를 포함할 수도 있다.
도 4 에서, 제 1 디바이스 (102) 는 메모리 (110), 인코더 (402), 및 하나 이상의 인터페이스들 (104) 을 포함한다. 인코더 (402) 는 도 1 을 참조하여 설명된 인코더 (120) 와 유사하게, 오디오 신호들 (142 및 146) 을 시간적으로 정렬하기 위해 목표 채널 (예컨대, 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 중 하나) 를 시간-시프트시키도록 구성될 수도 있다. 추가적으로, 인코더 (402) 는 인코딩된 채널들 (180) 을 발생시키고, 인코딩된 채널들 (180) (및 추가 정보, 예컨대 부정합 값들 (182) 및 참조 채널 표시자 (184)) 을 네트워크 (152) 를 통해서 제 2 디바이스 (160) 로 송신하도록 구성될 수도 있다. 도 4 에 예시된 예에서, 인코더 (402) 는 인코딩된 채널들 (180) 을 발생시키기 전에, 프레임간 불연속들을 감소시키기 (또는, 은폐하기) 위해 목표 채널을 조정하지 않을 수도 있다.
제 2 디바이스 (160) 는 메모리 (410) 및 디코더 (420) 를 포함한다. 디코더 (420) 는 비교기 (422), 샘플 조정기 (426), 및 출력 발생기 (430) 를 포함할 수도 있다. 메모리 (410) 는 제 1 부정합 값 (112), 제 2 부정합 값 (114), 제 1 샘플들 (412), 및 제 2 샘플들 (414) 을 저장할 수도 있다. 제 2 디바이스 (160) 는 부정합 값들 (182) 을 수신하고 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 을 메모리 (410) 에 저장하도록 구성될 수도 있다. 제 2 디바이스 (160) 는 인코딩된 채널들 (180) 을 수신하도록 구성될 수도 있으며, 디코더 (420) 는 인코딩된 채널들 (180) 을 디코딩하여 제 1 샘플들 (412) 및 제 2 샘플들 (414) 을 발생시키도록 구성될 수도 있다. 예를 들어, 디코더 (420) 는 인코딩된 채널들 (180) 을 디코딩 및 업-믹싱하여 샘플들 (412 및 414) 을 발생시킬 수도 있다. 특정의 구현예에서, 제 1 샘플들 (412) 은 디코딩 이후의 제 1 오디오 신호 (142) 에 대응할 수도 있으며, 제 2 샘플들 (414) 은 디코딩 이전의 제 2 오디오 신호 (146) 에 대응할 수도 있다. 대안적으로, 제 1 샘플들 (412) 은 중간-채널의 샘플들에 대응할 수도 있으며, 제 2 샘플들 (414) 은 측면-채널의 샘플들에 대응할 수도 있다.
디코더 (420) 는 프레임간 불연속성을 보상하기 (또는, 은폐하기) 위해 목표 채널 (예컨대, 제 1 샘플들 (412) 또는 제 2 샘플들 (414)) 을 조정하도록 구성될 수도 있다. 예시하기 위하여, 비교기 (422) 는 도 1 의 비교기 (122) 와 유사하게, 제 1 부정합 값 (112) 과 제 2 부정합 값 (114) 사이의 차이 ("편차") (424) 를 결정하도록 구성될 수도 있다. 샘플 조정기 (426) 는 그후, 디코더 (162, 420) 에서의 차이 ("편차") (424) 에 기초하여 샘플들을 조정하도록 구성될 수도 있다. 차이 (424) 는 인접 프레임들 사이의 부정합 값들에서의 변화를 표시할 수도 있으며, 이는 목표 채널이 조정되지 않으면 프레임간 불연속성을 초래할 수도 있다.
샘플 조정기 (426) 는 목표 채널을 식별하고 차이 (424) 에 기초하여 목표 채널의 샘플들을 조정하도록 구성될 수도 있다. 예를 들어, 샘플 조정기 (426) 는 참조 채널 표시자 (184) 에 기초하여 제 1 샘플들 (412) 또는 제 2 샘플들 (414) 을 참조 채널에 대응하는 것으로 식별할 수도 있다. 참조 채널 표시자 (184) 가 제 1 특정의 값 (예컨대, 제 2 오디오 신호 (146) 가 목표 채널이라는 것을 표시하는 값) 을 가질 때, 샘플 조정기 (426) 는 제 2 샘플들 (414) 을 목표 채널에 대응하는 것으로 식별하고 제 1 샘플들 (412) 을 참조 채널에 대응하는 것으로 식별할 수도 있다. 참조 채널 표시자 (184) 가 제 2 특정의 값 (예컨대, 제 1 오디오 신호 (142) 가 목표 채널이라는 것을 표시하는 값) 을 가질 때, 샘플 조정기 (426) 는 제 1 샘플들 (412) 을 목표 채널에 대응하는 것으로서 식별하고 제 2 샘플들 (414) 을 참조 채널에 대응하는 것으로서 식별할 수도 있다.
샘플 조정기 (426) 는 목표 채널을 식별한 후 목표 채널에 대응하는 샘플들을 조정하도록 구성될 수도 있다. 예를 들어, 샘플 조정기 (426) 는 제 2 샘플들 (414) 을 목표 채널에 대응하는 것으로서 식별할 수도 있으며, 샘플 조정기 (426) 는 제 2 샘플들 (414) 을 조정하여 조정된 샘플들 (428) 을 발생시킬 수도 있다. 제 2 샘플들 (414) 을 조정하기 위해, 샘플 조정기 (426) 는 차이 (424) 에 기초하여 제 2 샘플들 (414) 의 서브세트를 내삽하여 추정된 샘플들을 발생시키도록 구성될 수도 있으며, 샘플 조정기 (426) 는 샘플의 서브세트를 추정된 샘플들로 대체하여 조정된 샘플들 (428) 을 발생시키도록 추가로 구성될 수도 있다. 차이 (424) 가 음일 때, 샘플 조정기 (426) 는 도 3 을 참조하여 설명된 바와 같이, 하나 이상의 샘플들의 반복을 피하기 위해, 이전 프레임으로부터의 적어도 하나의 샘플 및 샘플들의 서브세트의 샘플들을 내삽할 수도 있다.
차이 (424) 가 양일 때, 샘플 조정기 (426) 는 하나 이상의 샘플들을 스킵하는 것을 피하기 위해 이전 프레임의 적어도 하나의 샘플 및 샘플들의 서브세트를 내삽할 수도 있다. 시간-시프팅이 인코더 (402) 에 의해 수행되기 때문에, 도 2 를 참조하여 설명된 바와 같이, 하나 이상의 샘플들이 스킵될 수도 있으며 따라서 인코딩된 채널들 (180) 로부터 생략될 수도 있다. 샘플 조정기 (426) 는 차이 (424) 에 기초하여 프레임들 사이에 스킵된 샘플들의 개수를 식별할 수도 있으며, 샘플 조정기 (426) 는 디코딩 이후에 이용가능한 샘플들을 내삽하여 추정된 샘플들을 발생시킬 수도 있다. 하나 이상의 샘플들이 인코더 (402) 에 의해 인코딩되지 않기 때문에, 일부 구현예들에서, 디코더 (420) 에 의해 수행되는 내삽은 도 1 의 인코더 (120) 에 의해 수행되는 내삽보다 덜 정확할 (예컨대, 더 조악한 그래뉼래러티를 가질) 수도 있다.
대안적인 구현예에서, 인코더 (402) 는 목표 채널을 시간-시프트시키는 것으로 인해 하나 이상의 샘플들이 스킵되는 시점을 식별하도록 구성될 수도 있다. 인코더 (402) 는 스킵된 하나 이상의 샘플들을 추가적인 샘플들 (440) 로서 제 2 디바이스 (160) 로 송신하도록 구성될 수도 있다. 샘플 조정기 (426) 는 추가적인 샘플들 (440) 뿐만 아니라, 이전 프레임의 적어도 하나의 샘플 및 샘플들의 서브세트를 이용하여, 추정된 샘플들을 발생시킬 수도 있다. 추가적인 샘플들 (440) 에 기초하여 발생된 추정된 샘플들은 도 1 의 샘플 조정기 (126) 에 의해 발생되는 추정된 샘플들과 동일한 정밀도 (예컨대, 동일한 그래뉼래러티) 를 가질 수도 있다.
동작 동안, 제 1 디바이스 (102) 의 인코더 (402) 는 목표 채널을 참조 채널 (예컨대, 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 중 다른 하나) 과 시간적으로 정렬하기 위해 목표 채널 (예컨대, 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 중 하나) 을 시간-시프트시킨다. 인코더 (402) 는 참조 채널 및 시간-시프트된 목표 채널에 기초하여, 인코딩된 신호들 (180) 을 발생시키고, 제 1 디바이스 (102) 는 인코딩된 오디오 신호들, 부정합 값들 (182), 및 참조 채널 표시자 (184) 를 네트워크 (152) 를 통해서 제 2 디바이스 (160) 로 송신한다.
제 2 디바이스 (160) 는 인코딩된 채널들 (180) 을 수신하며, 디코더 (420) 는 인코딩된 채널들 (180) 을 디코딩하여 제 1 샘플들 (412) 및 제 2 샘플들 (414) 을 발생시킨다. 특정의 구현예에서, 인코딩된 채널들 (180) 은 스테레오 인코딩되고, 중간-채널 및 측면-채널을 포함한다. 비교기 (422) 는 제 1 부정합 값 (112) 과 제 2 부정합 값 (114) 사이의 차이 (424) 를 결정한다. 샘플 조정기 (426) 는 참조 채널 표시자 (184) 에 기초하여 목표 채널에 대응하는 (제 1 샘플들 (412) 및 제 2 샘플들 (414) 의) 샘플들을 식별하고, 샘플 조정기 (426) 는 차이 (424) 에 기초하여 목표 채널의 샘플들을 조정한다. 예를 들어, 샘플 조정기 (426) 는 (제 2 샘플들 (414) 이 목표 채널에 대응할 때) 제 2 샘플들 (414) 의 서브세트를 (예컨대, Sinc 내삽, Lagrange 내삽, 하이브리드 내삽, 중첩 및 가산 내삽, 또는 다른 내삽을 이용하여) 내삽하여 추정된 샘플들을 발생시킬 수도 있으며, 샘플 조정기 (426) 는 샘플들의 서브세트를 추정된 샘플들로 대체하여 조정된 샘플들 (428) 을 발생시킬 수도 있다. 다른 구현예에서, 샘플 조정기 (426) 는 차이 (424) 에 기초하여 복수의 내삽 방법들 중에서 특정의 내삽 방법을 선택할 수도 있다. 특정의 예시적인 예로서, 디코더 (420) 에서의 샘플 조정기 (426) 는 차이 (424) 를 제 2 임계치와 비교할 수도 있다. 샘플 조정기 (426) 는 차이 (424) 가 제 2 임계치 미만이라는 결정에 응답하여, Sinc 내삽, Lagrange 내삽, 또는 하이브리드 내삽 중에서 적어도 하나의 내삽 방법을 선택함으로써, (제 2 샘플들 (414) 이 목표 채널에 대응할 때) 제 2 샘플들 (414) 의 서브세트를 조정할 수도 있다. 샘플 조정기 (426) 는 대안적으로, 차이 (424) 가 제 2 임계치를 초과한다는 결정에 응답하여, 중첩 및 가산 내삽을 이용함으로써, 제 2 샘플들 (414) 의 서브세트를 조정할 수도 있다.
제 2 임계치는 미리 결정된 값일 수도 있거나, 또는 디코더에 의해 결정될 수도 있다. 하나의 특정의 구현예에서, 디코더는 제 1 디바이스 (102) 로부터의 비트스트림에 포함되거나, 이로부터 도출된 정보에 기초하여, 제 2 임계치를 결정할 수도 있다. 대안적으로, 디코더는 제 1 오디오 채널 또는 제 2 오디오 채널의 프레임 유형에 기초하여 제 2 임계치를 결정할 수도 있다. 프레임 유형은 음성, 음악, 잡음, 또는 임의의 오디오 채널들의 특정의 프레임의 특성을 표시할 수도 있는 다른 프레임 유형들을 포함할 수도 있다. 대안적으로, 프레임 유형은 제 1 또는 제 2 오디오 채널들 중 임의의 채널의 특정의 프레임에 대한 적합한 코딩 모드를 표시하는 정보에 대응할 수도 있다. 특정의 구현예에서, 제 2 임계치는 임의의 오디오 채널들의 목표 평활도 레벨에, 또는 교차-상관 값의 평활도 세팅을 표시하는 평활화 인자에 기초할 수도 있다.
디코더에 의해 선택되는 내삽은 인코더에 의해 선택되는 내삽과는 상이할 수도 있다. 비한정적인 예로서, 디코더 (162, 420) 에서의 샘플 조정기 (426) 는 "중첩 및 가산 내삽" 을 선택할 수도 있는 반면, 인코더 (120, 402) 에서의 샘플 조정기 (126) 는 "하이브리드 내삽" 을 선택할 수도 있다. 디코더와 인코더 사이에 상이한 내삽들 방법을 선택하는 것은 다수의 인자들에 의해 기여될 수도 있다. 예를 들어, 디코더 (162, 420) 에서의 (예컨대, 프레임 N-1 에 대한) 제 1 부정합 값과 (예컨대, 프레임 N 에 대한) 제 2 부정합 값 사이의 차이 ("편차") 는 인코더 (120, 402) 에서 (예컨대, 프레임 N-1 에 대한) 제 3 부정합 값과 (예컨대, 프레임 N 에 대한) 제 4 부정합 값 사이의 차이 ("편차") 와 동일하지 않을 수도 있다. 이 불일치는 네트워크 (152) 를 통한 송신 동안 임의의 프레임의 손실 (예컨대, 프레임 N-1 또는 프레임 N 또는 임의의 다른 선행하는 프레임들) 에 의해 초래될 수도 있다. 일부 구현예들에서, 이 불일치는 시프트의 상이한 방향에 의해 초래될 수도 있다. 예를 들어, 인코더 (120, 402) 는 목표 채널이 "참조" 채널과 정렬되도록 (예컨대, 최대로 정렬되도록) 지연된 목표 채널이 시간적으로 "풀백"되는 "비-인과적 시프트" 를 수행할 수도 있으며, 반면 디코더 (162, 420) 는 참조 채널이 지연된 "목표" 채널과 정렬되도록 (예컨대, 최대로 정렬되도록) 선두 참조 채널이 시간적으로 "풀 포워드" 되는 "인과적 시프트" 를 수행할 수도 있다.
디코더와 인코더 사이에 상이한 임계치들을 갖는 것은 디코더와 인코더 사이의 상이한 내삽들 방법의 선택을 초래하는 다른 인자일 수도 있다. 예를 들어, 제 2 디바이스 (160) (예컨대, 디코더 (420) 또는 샘플 조정기 (426)) 에서 복수의 내삽 방법들 간에 특정의 내삽 방법을 선택하는데 사용되는 임계치 (예컨대, 제 2 임계치) 는 제 1 디바이스 (102) (예컨대, 인코더 (120, 402) 또는 샘플 조정기 (126)) 에서 복수의 내삽 방법들 중에서 특정의 내삽 방법을 선택하는데 사용되는 임계치 (예컨대, 제 1 임계치) 와는 상이할 수도 있다. 일 구현예에서, 제 1 임계치 (또는, 제 2 임계치) 는 오디오 채널들의 목표 평활도 레벨 또는 채널 조정에 전념할 프로세싱의 목표 레벨에 기초하여 결정될 수도 있다. 대안적으로, 제 1 임계치 (또는, 제 2 임계치) 는 교차-상관 값의 평활도 세팅을 표시하는 평활화 인자에 기초하여 결정될 수도 있다. 다른 구현예들에서, 제 1 임계치 (또는, 제 2 임계치) 는 제 1 오디오 채널 또는 제 2 오디오 채널의 프레임 유형에 기초하여 결정될 수도 있다. 특정의 비한정적인 예로서, 프레임 유형은 음성, 음악, 잡음, 또는 제 1 오디오 채널 또는 제 2 오디오 채널의 특정의 프레임의 특성을 표시할 수도 있는 다른 프레임 유형들을 포함할 수도 있다. 대안적으로, 프레임 유형은 제 1 오디오 채널 또는 제 2 오디오 채널의 임의의 특정의 프레임에 대한 적합한 코딩 모드를 표시하는 정보에 대응할 수도 있다.
추가적으로, 또는 대안적으로, 디코더는 인코더가 부정합 값 (예컨대, 제 1 시프트 값 (112) 또는 제 2 시프트 값 (114)) 을 추정하는 특정의 방법에 기초하여 복수의 내삽 방법들 중에서 적어도 하나의 내삽 방법을 선택하도록 구성될 수도 있다. 인코더 (120, 402) 에 의해 부정합 값을 추정하는 특정의 방법을 표시하는 정보는 양자화되어, 인코딩된 비트스트림에 내장될 수도 있다. 일부 구현예들에서, 인코더 (120, 402) (또는, 시프트 추정기 (121)) 는 (예컨대, 이산 푸리에 변환 (DFT), 고속 푸리에 변환 (FFT), 또는 불연속-시간 푸리에 변환 (DTFT), 또는 임의의 다른 일반적으로 기지의 주파수 도메인 변환들에 의해) 시간-도메인에서 또는 주파수 도메인에서 제 1 시프트 값 (112) 또는 제 2 시프트 값 (114) 을 추정할 수도 있다. 비한정적인 예로서, 디코더 (162, 420) 의 샘플 조정기 (426) 는 예를 들어, 인코더가 시간-도메인에서 제 1 시프트 값 (112) 또는 제 2 시프트 값 (114) 을 추정하였다는 결정에 응답하여, 인코딩된 비트스트림로부터의 정보에 기초하여, 선택된 내삽 방법이 인코더 (120, 402) 에 의해 선택되는 내삽 방법과 동일하도록, 내삽 방법을 선택할 수도 있다. 다른 비한정적인 예에서, 디코더 (162, 420) 의 샘플 조정기 (426) 는 인코더가 주파수 도메인에서 제 1 시프트 값 (112) 또는 제 2 시프트 값 (114) 을 추정하였다는 결정에 응답하여, 인코딩된 비트스트림로부터의 정보에 기초하여, 특정의 내삽 방법 (예컨대, Sinc 내삽, Lagrange 내삽, 하이브리드 내삽 (예컨대, Sinc 내삽과 Lagrange 내삽의 조합), 또는 중첩 및 가산 내삽) 을 선택할 수도 있다.
출력 발생기 (430) 는 제 1 샘플들 (412) 및 조정된 샘플들 (428) 에 기초하여 제 1 출력 채널 (172) 및 제 2 출력 채널 (176) 을 발생시킬 수도 있다. 예를 들어, 출력 발생기 (430) 는 제 1 샘플들 (412) 에 기초하여 제 1 출력 채널 (172) 을 발생시킬 수도 있으며, 출력 발생기 (430) 는 제 2 샘플들 (414) 에 기초하여 제 2 출력 채널 (176) 을 발생시킬 수도 있다. 제 2 디바이스 (160) 는 오디오 출력을 발생시키기 위해, 출력 채널들 (172 및 176) 을 스피커들 (170 및 174) 에 각각 제공하도록 구성될 수도 있다.
따라서, 도 4 의 시스템 (400) 은 목표 채널을 시간-시프트시키는 것에 의해 초래되는 프레임간 불연속들을 보상하기 (또는, 은폐하기) 위해 디코더로 하여금 채널 조정하게 할 수도 있다. 예를 들어, 디코더 (420) 는 인코딩된 채널들 (180) 을 디코딩할 수도 있으며, 디코더 (420) 의 샘플 조정기 (426) 는 목표 채널 (예컨대, 제 2 출력 채널 (176)) 을 조정하여 다수의 샘플들에 걸쳐서 프레임간 불연속성을 확산시킬 수도 있다. 불연속성을 확산시키는 것은 불연속성에 의해 초래되는 클릭들 또는 다른 오디오 사운드들을 감소시킴으로써 (또는, 제거함으로써), 디코딩된 출력 채널들의 명료성을 향상시키고 청취자의 경험을 향상시킬 수도 있다.
도 5 를 참조하면, 조정된 샘플들을 이용하여 다수의 오디오 채널들을 인코딩하도록 구성된 시스템의 다이어그램이 도시되며 일반적으로 500 으로 지정된다. 시스템 (500) 은 도 1 의 시스템 (100) 에 대응할 수도 있다. 예를 들어, 시스템 (100), 제 1 디바이스 (102), 또는 이들의 조합은, 시스템 (500) 의 하나 이상의 컴포넌트들을 포함할 수도 있다.
시스템 (500) 은 시프트 추정기 (121) 를 통해서, 프레임간 시프트 변형 분석기 (506), 참조 채널 지정기 (508), 또는 양자에 커플링된 채널 사전-프로세서 (502) 를 포함한다. 채널 사전-프로세서 (502) 는 오디오 채널들 (501) (예컨대, 도 1 의 참조 채널 (142) 및 목표 채널 (146)) 을 수신하고 오디오 채널들 (501) 을 프로세싱하여 프로세싱된 채널들 (530) 을 발생시키도록 구성될 수도 있다. 예를 들어, 채널 사전-프로세서 (502) 는 오디오 채널들 (501) 을 다운-샘플링 또는 리샘플링하여 프로세싱된 채널들 (530) 을 발생시키도록 구성될 수도 있다. 시프트 추정기 (121) 는 프로세싱된 채널들 (530) 의 비교(들) 에 기초하여 부정합 값들 (예컨대, 제 1 부정합 값 (112) 및 제 2 부정합 값 (114)) 을 결정하도록 구성될 수도 있다. 프레임간 시프트 변형 분석기 (506) 는 오디오 채널들을 참조 채널들 및 목표 채널들로서 식별하도록 구성될 수도 있다. 프레임간 시프트 변형 분석기 (506) 는 또한 2개의 부정합 값들 (예컨대, 제 1 부정합 값 (112) 과 제 2 부정합 값 (114)) 사이의 차이 (예컨대, 도 1 의 차이 (124)) 를 결정하도록 구성될 수도 있다. 참조 채널 지정기 (508) 는 하나의 오디오 채널을 참조 채널 (예컨대, 시간-시프트되지 않은 채널) 로서 선택하고 다른 오디오 채널을 목표 채널 (예컨대, 채널을 참조 채널과 시간적으로 정렬하기 위해 참조 채널에 대해 시간-시프트된 채널) 로서 선택하도록 구성될 수도 있다.
프레임간 시프트 변형 분석기 (506) 는 샘플 조정기 (126) 를 통해서, 이득 파라미터 발생기 (513) 에 커플링될 수도 있다. 도 1 을 참조하여 설명된 바와 같이, 샘플 조정기 (126) 는 부정합 값들 사이의 차이에 기초하여 목표 채널을 조정하도록 구성될 수도 있다. 예를 들어, 샘플 조정기 (126) 는 샘플들의 서브세트에 대해 내삽을 수행하여 목표 채널의 조정된 샘플들을 발생시키는데 사용되는 추정된 샘플들을 발생시키도록 구성될 수도 있다. 이득 파라미터 발생기 (513) 는 목표 채널의 전력 레벨에 대해 참조 채널의 전력 레벨을 "정규화하는" (예컨대, 등화하는) 참조 채널의 이득 파라미터를 결정하도록 구성될 수도 있다. 대안적으로, 이득 파라미터 발생기 (513) 는 참조 채널의 전력 레벨에 대해 목표 채널의 전력 레벨을 정규화하는 (예컨대, 등화하는) 목표 채널의 이득 파라미터를 결정하도록 구성될 수도 있다.
참조 채널 지정기 (508) 는 프레임간 시프트 변형 분석기 (506), 이득 파라미터 발생기 (513), 또는 양자에 커플링될 수도 있다. 샘플 조정기 (126) 는 중간측면 발생기 (510), 이득 파라미터 발생기 (513), 또는 양자에 커플링될 수도 있다. 이득 파라미터 발생기 (513) 는 중간측면 발생기 (510) 에 커플링될 수도 있다. 중간측면 발생기 (510) 는 참조 채널 및 조정된 목표 채널에 대해 인코딩을 수행하여 적어도 하나의 인코딩된 채널을 발생시키도록 구성될 수도 있다. 예를 들어, 중간측면 발생기 (510) 는 스테레오 인코딩을 수행하여 중간-채널 (540) 및 측면-채널 (542) 을 발생시키도록 구성될 수도 있다. 특정의 구현예에서, 중간측면 발생기 (510) 는 도 1 의 채널 발생기 (130) 를 포함하거나 또는 이에 대응할 수도 있다.
중간측면 발생기 (510) 는 대역폭 확장 (BWE) 공간 밸런서 (512), 중간 BWE 코더 (514), 저 대역 (LB) 채널 재생기 (516), 또는 이들의 조합에 커플링될 수도 있다. LB 채널 재생기 (516) 는 LB 측면 코어 코더 (518), LB 중간 코어 코더 (520), 또는 양자에 커플링될 수도 있다. 중간 BWE 코더 (514) 는 BWE 공간 밸런서 (512), LB 중간 코어 코더 (520), 또는 양자에 커플링될 수도 있다. BWE 공간 밸런서 (512), 중간 BWE 코더 (514), LB 채널 재생기 (516), LB 측면 코어 코더 (518), 및 LB 중간 코어 코더 (520) 는 중간-채널 (540), 측면-채널 (542), 또는 양자에 대해 대역폭 확장 및 추가적인 코딩, 예컨대 저 대역 코딩 및 중간 대역 코딩을 수행하도록 구성될 수도 있다. 대역폭 확장 및 추가적인 코딩을 수행하는 것은 추가적인 채널 인코딩을 수행하는 것, 파라미터들을 발생시키는 것, 또는 양자를 포함할 수도 있다.
동작 동안, 채널 사전-프로세서 (502) 는 오디오 채널 (501) 을 수신할 수도 있다. 예를 들어, 채널 사전-프로세서 (502) 는 도 1 의 하나 이상의 인터페이스들 (104) 로부터 오디오 채널들 (501) 을 수신할 수도 있다. 오디오 채널들 (501) 은 제 1 오디오 신호 (142), 제 2 오디오 신호 (146), 또는 양자를 포함할 수도 있다. 특정의 구현예에서, 오디오 채널들 (501) 은 좌측 채널 및 우측 채널을 포함할 수도 있다. 다른 구현예들에서, 오디오 채널들 (501) 은 다른 채널들을 포함할 수도 있다. 채널 사전-프로세서 (502) 는 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 를 다운-샘플링 (또는, 리샘플링) 하여 프로세싱된 채널들 (530) (예컨대, 다운샘플링된 제 1 오디오 신호 (142) 및 다운샘플링된 제 2 오디오 신호 (146)) 을 발생시킬 수도 있다. 채널 사전-프로세서 (502) 는 프로세싱된 채널들 (530) 을 시프트 추정기 (121) 로 제공할 수도 있다.
시프트 추정기 (121) 는 프로세싱된 채널들 (530) 에 기초하여 부정합 값들을 발생시킬 수도 있다. 예를 들어, 시프트 추정기 (121) 는 프로세싱된 채널들 (530) 의 비교 (예컨대, 다운샘플링된 제 2 오디오 신호 (146) 의 제 4 프레임에 대한 다운샘플링된 제 1 오디오 신호 (142) 의 제 3 프레임의 비교) 에 기초하여 제 2 부정합 값 (114) 을 발생시킬 수도 있다. 일부 구현예들에서, 시프트 추정기 (121) 는 도 1 을 참조하여 설명되는 바와 같이, 임시 부정합 값들, 내삽된 부정합 값들, 및 "최종" 부정합 값들을 발생시킬 수도 있으며, 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 은 최종 부정합 값들에 대응할 수도 있다. 시프트 추정기 (121) 는 제 2 부정합 값 (114) (및 다른 부정합 값들) 을 프레임간 시프트 변형 분석기 (506) 및 참조 채널 지정기 (508) 에 제공할 수도 있다. 특정의 구현예에서, 제 2 부정합 값 (114) 은 절대값 연산의 수행 후 비-인과적 부정합 값 (NC_SHIFT_INDX) 으로서 제공될 수도 있다 (예컨대, 비-인과적 부정합 값은 제 2 부정합 값 (114) 의 비부호 버전일 수도 있다). 비-인과적 부정합 값은 도 1 을 참조하여 설명된 바와 같이, 다른 디바이스들로 송신될 수도 있다.
특정의 구현예에서, 시프트 추정기 (121) 는 다음 부정합 값이 현재의 부정합 값과는 상이한 부호 (예컨대, 양 또는 음) 를 갖는 것을 방지할 수도 있다. 예를 들어, 제 1 프레임에 대한 부정합 값이 음으로, 그리고, 제 2 프레임에 대한 부정합 값이 양으로 결정될 때, 시프트 추정기 (121) 는 제 2 프레임에 대한 부정합 값을 제로로 설정할 수도 있다. 다른 예로서, 제 1 프레임에 대한 부정합 값이 양으로, 그리고 제 2 프레임에 대한 부정합 값이 음으로 결정될 때, 시프트 추정기 (121) 는 제 2 프레임에 대한 부정합 값을 제로로 설정할 수도 있다. 따라서, 이 구현예에서, 현재의 프레임에 대한 부정합 값은 이전 프레임에 대한 부정합 값과 동일한 부호 (예컨대, 양 또는 음) 를 갖거나, 또는 현재의 프레임에 대한 부정합 값은 제로이다.
참조 채널 지정기 (508) 는 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 중 하나를 제 3 프레임 및 제 4 프레임에 대응하는 시간 기간 동안 참조 채널로서 선택할 수도 있다. 참조 채널 지정기 (508) 는 제 2 부정합 값 (114) 에 기초하여 참조 채널을 결정할 수도 있다. 예를 들어, 제 2 부정합 값 (114) 이 음일 때, 참조 채널 지정기 (508) 는 제 2 오디오 신호 (146) 를 참조 채널로서, 그리고 제 1 오디오 신호 (142) 를 목표 채널로서 식별할 수도 있다. 제 2 부정합 값 (114) 이 양이거나 또는 제로일 때, 참조 채널 지정기 (508) 는 제 2 오디오 신호 (146) 를 목표 채널로서, 그리고 제 1 오디오 신호 (142) 를 참조 채널로서 식별할 수도 있다. 참조 채널 지정기 (508) 는 참조 채널을 표시하는 값을 갖는 참조 채널 표시자 (184) 를 발생시킬 수도 있다. 예를 들어, 참조 채널 표시자 (184) 는 제 1 오디오 신호 (142) 가 참조 채널로서 식별될 때 제 1 값 (예컨대, 논리 제로 값) 을 가질 수도 있으며, 참조 채널 표시자 (184) 는 제 2 오디오 신호 (146) 가 참조 채널로서 식별될 때 제 2 값 (예컨대, 논리 1 값) 을 가질 수도 있다. 참조 채널 지정기 (508) 는 참조 채널 표시자 (184) 를 프레임간 시프트 변형 분석기 (506) 및 이득 파라미터 발생기 (513) 로 제공할 수도 있다. 추가적으로, 참조 채널 표시자 (184) (REF_CH_INDX) 는 도 1 을 참조하여 설명된 바와 같이, 다른 디바이스들로 송신될 수도 있다. 다른 구현예들에서, 목표 채널 지정기 (미도시) 는 목표 채널을 표시하는 값을 갖는 목표 채널 표시자를 발생시킬 수도 있다.
프레임간 시프트 변형 분석기 (506) 는 제 1 부정합 값 (112) 과 제 2 부정합 값 (114) 사이의 차이 (124) 를 결정할 수도 있다. 예시하기 위하여, 프레임간 시프트 변형 분석기 (506) 는 제 2 부정합 값 (114) 이 결정된 (예컨대, 발생된) 후 시프트 추정기 (121) 로부터 제 2 부정합 값 (114) 을 수신할 수도 있으며, 프레임간 시프트 변형 분석기 (506) 는 (예컨대, 버퍼 또는 다른 스토리지 내) 이전 부정합 값들에 액세스하여 이전 부정합 값 (예컨대, 제 1 부정합 값 (112)) 을 취출할 수도 있다. 프레임간 시프트 변형 분석기 (506) 는 제 1 부정합 값 (112) 과 제 2 부정합 값 (114) 사이의 차이 (124) 를 결정할 수도 있다. 특정의 구현예에서, 프레임간 시프트 변형 분석기 (506) 는 차이 (124) 를 결정하는 비교기 (122) 를 포함한다).
추가적으로, 프레임간 시프트 변형 분석기 (506) 는 참조 채널 표시자 (184), 제 1 부정합 값 (112) (Tprev), 제 2 부정합 값 (114) (T), 및 이전 목표 채널 (536) (예컨대, 이전 조정된 목표 채널) 에 기초하여, 조정된 목표 채널을 식별할 수도 있다. 예시하기 위하여, 비한정적인 예들로서, 프레임간 시프트 변형 분석기 (506) 는 다음 테이블에 따라서, 조정된 목표 채널을 결정할 수도 있다:
Figure pct00011
테이블 1
테이블 1 에서, 이전 시프트 (Tprev) 는 제 1 부정합 값 (112) 에 대응하고, 현재의 시프트 (T) 는 제 2 부정합 값 (114) 에 대응하고, 이전 코딩된 목표 채널은 이전 목표 채널 (536) 에 대응한다. 코딩된 목표 채널은 중간 채널 및 측면-채널 발생에 사용되는 오디오 채널을 표시한다. 코딩된 목표 채널은 조정된 목표 채널 (예컨대, 프레임간 불연속들을 평활화하기 위해 시간 시프트되고 조정되는 오디오 채널) 과 동일하지 않을 수도 있다. 조정된 목표 채널은 샘플 조정기 (126) 에 의해 조정되는 오디오 채널을 표시한다.
테이블 1 에 표시된 바와 같이, 제 1 오디오 신호 (142) ("CHAN_1") 는, 제 1 부정합 값 (112) (Tprev) 이 음이고, 제 2 부정합 값 (114) (T) 이 음이고, 그리고 이전 코딩된 목표 채널이 제 1 오디오 신호 (142) 일 때, 조정된 목표 채널 및 코딩된 목표 채널이다. 제 1 오디오 신호 (142) 는, 또한 제 1 부정합 값 (112) 이 제로이고, 제 2 부정합 값 (114) 이 음이고, 그리고 이전 코딩된 목표 채널이 제 2 오디오 신호 (146) 일 때, 조정된 목표 채널 및 코딩된 목표 채널이다. 제 2 오디오 신호 (146) 는, 제 1 부정합 값 (112) 이 양이고, 제 2 부정합 값 (114) 이 제로이고, 그리고 이전 코딩된 목표 채널이 제 2 오디오 신호 (146) 일 때, 조정된 목표 채널 및 코딩된 목표 채널이다. 제 2 오디오 신호 (146) 는, 또한 제 1 부정합 값 (112) 이 양이고, 제 2 부정합 값 (114) 이 양이고, 그리고 이전 코딩된 목표 채널이 제 2 오디오 신호 (146) 일 때, 조정된 목표 채널 및 코딩된 목표 채널이다. 제 2 오디오 신호 (146) 는, 또한 제 1 부정합 값 (112) 이 제로이고, 제 2 부정합 값 (114) 이 양이고, 그리고 이전 코딩된 목표 채널이 제 2 오디오 신호 (146) 일 때, 조정된 목표 채널 및 코딩된 목표 채널이다.
일부 특수한 경우, 현재의 프레임에 대한 조정된 목표 채널과 현재의 프레임에 대한 코딩된 목표 채널은 상이할 수도 있다. 예를 들어, 부정합 값 (112, 114) 이 제로일 때, 프레임간 시프트 변형 분석기 (506) 는 설계 선호사항에 따라서 양의 시프트 ("양의 제로") 또는 음의 시프트 ("음의 제로") 인 것처럼 부정합 값을 처리할 수도 있다. 비한정적인 예로서, 테이블 1 은 프레임간 시프트 변형 분석기 (506) 가 제로 부정합 값을 양의 제로로서 처리하도록 구성되는 경우를 표시한다. 제 1 오디오 신호 (142) 는 조정된 목표 채널이며, 제 2 오디오 신호 (146) 는, 제 1 부정합 값 (112) 이 음이고, 제 2 부정합 값 (114) 이 제로이고, 그리고 이전 코딩된 목표 채널이 제 1 오디오 신호 (142) 일 때, 코딩된 목표 채널이다. 이 경우, 제 1 오디오 신호 (142) 는 샘플 조정기 (126) 에 의해 조정되어야 하며, 제 2 오디오 신호 (146) 는 중간 채널 및 측면-채널들을 코딩하는데 사용된다.
일부 구현예에서, 시프트 추정기 (121) 또는 프레임간 시프트 변형 분석기 (506) 는 다음 부정합 값이 현재의 부정합 값과는 상이한 부호 (예컨대, 양 또는 음) 를 갖도록 허용할 수도 있다. 그 후, 샘플 조정기 (126) 는 2개의 오디오 신호들 (142, 146) 중 어느 것이 목표 채널로서 식별되었는지에 관계없이, 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 양자를 조정해야 할 수도 있다. 예시하기 위하여, Tprev 는 음일 수도 있으며, T 는 양일 수도 있다. 이 특정의 경우에서, 이전 코딩된 목표 채널은 제 1 오디오 신호 (142) 이고, 현재의 프레임에 대한 코딩된 목표 채널은 제 2 오디오 신호 (146) 이다. 그러나, 샘플 조정기 (126) 는 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 양자를 조정해야 할 수도 있으며, 그렇지 않으면, 프레임간 불연속들이 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 양자의 (이전 프레임과 현재의 프레임 사이의) 프레임 경계들에서 발생할 수도 있기 때문이다.
조정된 목표 채널을 결정하는 프레임간 시프트 변형 분석기 (506) 의 동작이 도 6 에 의해 예시된다. 도 6 은 프레임간 시프트 변형 분석기 (506) 의 특정의 구현예의 다이어그램 (600) 을 나타낸다. 프레임간 시프트 변형 분석기 (506) 는 조정된 목표 채널 결정기 (602) 를 포함할 수도 있다. 조정된 목표 채널 결정기 (602) 는 상태 다이어그램 (610) 에 따라서, 조정된 목표 채널을 결정할 수도 있다. 조정된 목표 채널을 결정한 후, 프레임간 시프트 변형 분석기 (506) 는 조정된 목표 채널을 식별하기 (예컨대, 표시하기) 위해 목표 채널 표시자 (534) 의 값을 설정할 수도 있다.
상태 다이어그램 (610) 은 상태 (612) 에서, 제 1 오디오 신호 (142) 를 표시하기 위해 목표 채널 표시자 (534) 및 참조 채널 표시자 (184) 를 설정하는 것을 포함한다. 상태 다이어그램 (610) 은 상태 (614) 에서, 제 2 오디오 신호 (146) 를 표시하도록 목표 채널 표시자 (534) 및 참조 채널 표시자 (184) 를 설정하는 것을 포함한다. 제 1 부정합 값 (112) 이 제로보다 크거나 같은 값을 가지고 제 2 부정합 값 (114) 이 제로보다 크거나 같은 값을 가지면, 프레임간 시프트 변형 분석기 (506) 는 상태 (614) 에서 유지할 수도 있다. 프레임간 시프트 변형 분석기 (506) 는, 제 1 부정합 값 (112) 이 제로이고 제 2 부정합 값 (114) 이 음의 값을 갖는다고 결정하는 것에 응답하여, 상태 (614) 로부터 상태 (612) 로 전이할 수도 있다. 예를 들어, 프레임간 시프트 변형 분석기 (506) 는 제 1 부정합 값 (112) 이 제로이고 제 2 부정합 값 (114) 이 음의 값을 갖는다고 결정하는 것에 응답하여, 목표 채널 표시자 (534) 를, 제 2 오디오 신호 (146) 가 목표 채널이라고 표시하는 것으로부터 제 1 오디오 신호 (142) 가 목표 오디오 신호라고 표시하는 것으로 변경할 수도 있다. 제 1 부정합 값 (112) 이 음이고 제 2 부정합 값 (114) 이 제로 미만이거나 또는 같으면, 프레임간 시프트 변형 분석기 (506) 는 상태 (612) 에서 유지할 수도 있다. 프레임간 시프트 변형 분석기 (506) 는 제 1 부정합 값 (112) 이 음의 값을 갖고 제 2 부정합 값 (114) 이 제로라고 결정하는 것에 응답하여, 상태 (612) 로부터 상태 (614) 로 전이할 수도 있다. 예를 들어, 프레임간 시프트 변형 분석기 (506) 는 제 1 부정합 값 (112) 이 음의 값을 갖고 제 2 부정합 값 (114) 이 제로라고 결정하는 것에 응답하여, 목표 채널 표시자 (534) 를, 제 1 오디오 신호 (142) 가 목표 채널이라고 표시하는 것으로부터 제 2 오디오 신호 (146) 가 목표 채널이라고 표시하는 것으로 변경할 수도 있다. 당업자는 상태 다이어그램 (610) 에서의 상태 (612) 와 상태 (614) 사이의, 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 의 값에 따른, 다양한 전이들이 단지 예시적인 목적을 위해 제시되며 상태 다이어그램 (610) 에 포함되지 않는 다른 전이들이 여전히 허용가능할 수도 있다는 점에 유의해야 한다.
도 5 를 다시 참조하면, 조정된 목표 채널을 결정한 후, 프레임간 시프트 변형 분석기 (506) 는 조정된 목표 채널을 표시하는 목표 채널 표시자 (534) 를 발생시킨다. 예를 들어, 목표 채널 표시자 (534) 의 제 1 값 (예컨대, 논리 제로 값) 은 제 1 오디오 신호 (142) 가 조정된 목표 채널이라는 것을 표시할 수도 있으며, 목표 채널 표시자 (534) 의 제 2 값 (예컨대, 논리 1 값) 은 제 2 오디오 신호 (146) 가 조정된 목표 채널이라는 것을 표시할 수도 있다. 프레임간 시프트 변형 분석기 (506) 는 목표 채널 표시자 (534) 및 차이 (124) 를 샘플 조정기 (126) 로 제공할 수도 있다.
샘플 조정기 (126) 는 차이 (124) 에 기초하여 조정된 목표 채널에 대응하는 샘플들을 조정하여 조정된 샘플들 (128) 을 발생시킬 수도 있다. 샘플 조정기 (126) 는 목표 채널 표시자 (534) 에 기초하여 제 1 샘플들 (116) 또는 제 2 샘플들 (118) 이 조정된 목표 채널에 대응하는지 여부를 식별할 수도 있다. 목표 채널을 조정하는 것은 차이 (124) 에 기초하여 복수의 내삽 방법들 중에서 특정의 내삽 방법을 선택하는 것을 포함할 수도 있다. 복수의 내삽 방법들은 Sinc 내삽, Lagrange 내삽, 하이브리드 내삽 (예컨대, Sinc 내삽과 Lagrange 내삽 사이의 조합), 중첩 및 가산 내삽, 또는 다른 유형의 내삽을 포함할 수도 있다. 목표 채널을 조정하는 것은 도 2 내지 도 3 을 참조하여 설명된 바와 같이, 그리고 도 6 내지 도 8 을 참조하여 아래에서 설명되는 바와 같이, 복수의 내삽 방법들 중의 선택된 내삽 방법에 기초하여, 목표 채널의 샘플들의 서브세트에 대해 내삽을 수행하여, 추정된 샘플들을 발생시키고, 샘플들의 서브세트를 추정된 샘플들로 대체하여 조정된 샘플들 (128) 을 발생시키는 것을 포함할 수도 있다. 예를 들어, 샘플 조정기 (126) 는 평활화 및 느린-시프팅을 통해 반복되거나 또는 스킵되는 프레임 경계들에 대응하는 목표 채널의 샘플들의 서브세트를 내삽하여 조정된 샘플들 (128) 을 발생시킬 수도 있다. 평활화 및 느린-시프팅은 Sinc 내삽기들, Lagrange 내삽기들, 하이브리드 내삽기들, 중첩 및 가산 내삽기들, 또는 이들의 조합에 기초하여 수행될 수도 있다. 차이 (124) 가 제로이면, 조정된 샘플들 (128) 은 목표 채널의 샘플들과 동일할 수도 있다. 샘플 조정기 (126) 는 조정된 샘플들 (128) 을 이득 파라미터 발생기 (513) 및 중간측면 발생기 (510) 로 제공할 수도 있다.
이득 파라미터 발생기 (513) 는 참조 채널 표시자 (184) 및 조정된 샘플들 (128) 에 기초하여 이득 파라미터 (532) 를 발생시킬 수도 있다. 이득 파라미터 (532) 는 참조 채널의 전력 레벨에 대해 목표 채널의 전력 레벨을 정규화할 (예컨대, 등화할) 수도 있다. 대안적으로, 이득 파라미터 발생기 (513) 는 참조 채널 (또는, 이의 샘플들) 을 수신하고, 목표 채널의 전력 레벨에 대해 참조 채널의 전력 레벨을 정규화하는 이득 파라미터 (532) 를 결정할 수도 있다. 일부 구현예들에서, 이득 파라미터 (532) 는 수식들 3a-3f 에 기초하여 결정될 수도 있다. 이득 파라미터 발생기 (513) 는 이득 파라미터 (532) 를 중간측면 발생기 (510) 로 제공할 수도 있다.
중간측면 발생기 (510) 는 조정된 샘플들 (128), 제 1 샘플들 (116), 제 2 샘플들 (118), 및 이득 파라미터 (532) 에 기초하여, 중간-채널 (540), 측면-채널 (542), 또는 양자를 발생시킬 수도 있다. 예를 들어, 도 1 을 참조하여 설명된 바와 같이, 중간측면 발생기 (510) 는 수식 1a 또는 수식 1b 에 기초하여 중간-채널 (540) 을 발생시킬 수도 있으며, 중간측면 발생기 (510) 는 수식 2a 또는 수식 2b 에 기초하여 측면-채널 (542) 을 발생시킬 수도 있다. 중간측면 발생기 (510) 는 중간-채널 (540) 및 측면-채널 (542) 을 발생시킬 때에 참조 채널에 대응하는 (제 1 샘플들 (116) 의) 샘플들을 이용할 수도 있다.
중간측면 발생기 (510) 는 측면 채널 (542) 을 BWE 공간 밸런서 (512), LB 채널 재생기 (516), 또는 양자로 제공할 수도 있다. 중간측면 발생기 (510) 는 중간 채널 (540) 을 중간 BWE 코더 (514), LB 채널 재생기 (516), 또는 양자로 제공할 수도 있다. LB 채널 재생기 (516) 는 중간 채널 (540) 에 기초하여 LB 중간 채널 (560) 을 발생시킬 수도 있다. 예를 들어, LB 채널 재생기 (516) 는 중간 채널 (540) 을 필터링함으로써 LB 중간 채널 (560) 을 발생시킬 수도 있다. LB 채널 재생기 (516) 는 LB 중간 채널 (560) 을 LB 중간 코어 코더 (520) 로 제공할 수도 있다. LB 중간 코어 코더 (520) 는 LB 중간 채널 (560) 에 기초하여 파라미터들 (예컨대, 코어 파라미터들 (571), 파라미터들 (575), 또는 양자) 을 발생시킬 수도 있다. 코어 파라미터들 (571), 파라미터들 (575), 또는 양자는 여기 파라미터, 보이싱 파라미터, 등을 포함할 수도 있다. LB 중간 코어 코더 (520) 는 코어 파라미터들 (571) 을 중간 BWE 코더 (514) 로, 파라미터들 (575) 을 LB 측면 코어 코더 (518) 로 제공할 수도 있거나, 또는 양자일 수도 있다. 코어 파라미터들 (571) 은 파라미터들 (575) 과 동일하거나 또는 상이할 수도 있다. 예를 들어, 코어 파라미터들 (571) 은 파라미터들 (575) 중 하나 이상을 포함할 수도 있거나, 파라미터들 (575) 중 하나 이상을 제외할 수도 있거나, 하나 이상의 추가적인 파라미터들을 포함할 수도 있거나, 또는 이들의 조합일 수도 있다. 중간 BWE 코더 (514) 는 중간 채널 (540), 코어 파라미터들 (571), 또는 이들의 조합에 기초하여, 코딩된 중간 BWE 채널 (573) 을 발생시킬 수도 있다. 중간 BWE 코더 (514) 는 코딩된 중간 BWE 채널 (573) 을 BWE 공간 밸런서 (512) 로 제공할 수도 있다.
LB 채널 재생기 (516) 는 측면 채널 (542) 에 기초하여 LB 측면 채널 (562) 을 발생시킬 수도 있다. 예를 들어, LB 채널 재생기 (516) 는 중간 채널 (542) 을 필터링함으로써 LB 측면 채널 (562) 을 발생시킬 수도 있다. LB 채널 재생기 (516) 는 LB 측면 채널 (562) 을 LB 측면 코어 코더 (518) 로 제공할 수도 있다.
따라서, 도 5 의 시스템 (500) 은 조정된 목표 채널에 기초하는 인코딩된 채널들 (예컨대, 중간-채널 (540) 및 측면-채널 (542)) 을 발생시킨다. 부정합 값들 사이의 차이에 기초하여 목표 채널을 조정하는 것은 프레임간 불연속들을 보상할 (또는, 은폐할) 수도 있으며, 이는 인코딩된 채널들의 플레이백 동안 클릭들 또는 다른 오디오 사운드들을 감소시킬 수도 있다.
차이 (124) 에 기초하여 샘플들을 조정하는 제 3 특정의 예가 도 7 에 예시된다. 도 7 은 제 1 샘플들 (116), 제 2 샘플들 (118), 및 조정된 샘플들 (128) 을 예시하는 다이어그램 (700) 을 포함한다. 도 7 에 예시된 샘플들은 제 1 오디오 신호 (142) 에 대응하는 제 1 샘플들 (116) 및 제 2 오디오 신호 (146) 에 대응하는 (시프팅 이전의) 제 2 샘플들 (118) 및 (시프팅 이후의) 제 2 샘플들 (118) 을 포함한다. 오디오 신호들 (142 및 146) 의 프레임들 각각은 샘플들의 특정의 개수에, 또는 시간의 특정의 지속기간 및 특정의 샘플 레이트에 대응할 수도 있다. 도 7 에 예시된 특정의 예에서, 각각의 프레임은 20 밀리초 (ms) 에 대응하는 특정의 샘플링 레이트 (예컨대, 32 kHz) 에서 샘플링되는 640 개의 샘플들을 포함한다. 다른 구현예들에서, 프레임들은 640 보다 적거나 또는 640 보다 많은 샘플들을 포함할 수도 있다.
위에서 설명한 바와 같이, 제 1 오디오 신호 (142) 는 참조 채널일 수도 있으며, 제 2 오디오 신호 (146) 는 목표 채널일 수도 있다. 제 2 오디오 신호 (146) 는 제 1 오디오 신호 (142) 에 대한 지연으로 수신될 수도 있다. 도 7 내지 도 8 에 예시된 특정의 예에서, 제 1 부정합 값 (112) (Tprev) 은 10 이고 제 2 부정합 값 (114) (T) 은 120 이다. 이 구체적인 예에서, 제 1 부정합 값 (112) (Tprev = 10) 과 제 2 부정합 값 (114) (T = 120) 사이의 차이 D, 또는 편차는 110 이고 (D = 110), 이는 실질적으로 도 2 내지 도 3 에 예시된 특정의 예의 차이 (D = 1) 보다 더 높다.
제 1 오디오 신호 (142) 의 제 1 프레임 (702) 을 제 2 오디오 신호 (146) 의 제 2 프레임 (704) 과 시간적으로 정렬하기 위해, 제 2 프레임 (704) 에 대응하는 제 2 샘플들 (118) 의 그룹이 10개의 샘플들 만큼 시프트된다. 예를 들어, 제 2 샘플들 (118) 의 샘플들 (10-649) 은 시프트된 제 2 프레임 (703) 을 발생시키기 위해 제 1 샘플들 (116) 의 샘플들 (0-639) 과 정렬된다. 제 1 오디오 신호 (142) 의 제 3 프레임 (706) 을 제 2 오디오 신호 (146) 의 제 4 프레임 (708) 과 시간적으로 정렬하기 위해, 제 4 프레임 (708) 에 대응하는 제 2 샘플들 (118) 의 그룹은 시프트된 제 4 프레임 (707) 을 발생시키기 위해 120 개의 샘플들 만큼 시프트된다. 예를 들어, 제 2 샘플들 (118) 의 샘플들 (760-1399) 은 시프트된 제 4 프레임 (707) 을 발생시키기 위해 제 1 샘플들 (116) 의 샘플들 (640-1279) 과 정렬된다. 시프트된 제 2 프레임 (703) 및 시프트된 제 4 프레임 (707) 을 발생시킨 후, 샘플 조정기 (126) 는 시프트된 프레임과 제 2 시프트된 프레임 사이의 불연속성을 보상하기 (또는, 은폐하기) 위해, 시프트된 제 4 프레임 (707) 의 샘플들을 조정하여, 조정된 제 4 프레임 (709) 을 발생시킬 수도 있다.
제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 이 상이할 때, 불연속성이 제 2 프레임 (704) 과 제 4 프레임 (708) 사이의 경계에 존재할 수도 있다. 도 7 에 나타낸 바와 같이, 샘플들 (650-759) (120 샘플들) 은 제 2 부정합 값 (T) (114) 과 제 1 부정합 값 (Tprev) (112) 사이의 차이 (124) (D = 110) 로 인해 스킵된다. 따라서, 어떤 조정 또는 평활화도 수행되지 않은 경우와 같이, 인코더 (120) 가 인코딩 샘플들 (650-759) 에 대응하는 오디오를 스킵하면, (프레임들 사이에 불연속성을 가진) 디코딩된 인코딩된 채널들 (180) 이 제 2 디바이스 (160) 에서 플레이백될 때 클릭, 팝, 히스, 또는 다른 오디오 사운드가 분실된 샘플로 인해 들릴 수도 있다. 도 7 에 나타낸 바와 같은 이러한 특정의 예에서, 스킵되는 샘플들의 개수 (예컨대, 110 샘플들) 가 증가함에 따라, 클릭들 및 다른 오디오 사운드들이 청취자에게 보다 더 현저해 질 수도 있다.
프레임들 사이의 불연속들을 보상하기 (또는, 은폐하기) 위해, 인코더 (120) 의 샘플 조정기 (126) 는 차이 (D = 110) (124) 에 기초하여 제 2 샘플들 (118) 을 조정할 수도 있다. 제 2 샘플들 (118) 을 조정하는 것은 추정된 샘플들 (710) 을 발생시키기 위해 차이 (124) 에 기초하여 제 2 샘플들 (118) 의 부분을 내삽하는 것을 포함할 수도 있다. 예를 들어, 샘플 조정기 (126) 는 제 4 프레임 (708) 에 대응하는 제 2 샘플들 (118) 의 서브세트 및/또는 제 2 프레임 (704) 에 대응하는 제 2 샘플들 (118) 의 다른 서브세트를 내삽할 수도 있다. 대안적으로, 샘플 조정기 (126) 는 제 4 프레임 (708) 에, 그리고 제 4 프레임 (708) 바로 다음에 있는 다른 프레임 (예컨대, 샘플들 (1280, 1281, …)) 에 대응하는 샘플들의 서브세트에 대응하는 제 2 샘플들 (118) 의 서브세트를 내삽할 수도 있다.
내삽은 확산 인자 N_SPREAD 에 대응하는 샘플들의 수에 대해 수행될 수도 있다. 추정된 샘플들 (710) 을 발생시키기 위해 샘플들의 서브세트를 내삽하는 것은 확산 인자 N_SPREAD 에 대응하는 샘플들의 수에 걸쳐서 불연속성을 확산시킬 (예컨대, 평활화하거나 또는 느리게-시프트시킬) 수도 있다. 하나의 바람직한 실시형태에서, 인코더 (120) 는 제 2 부정합 값 (T) (114) 과 제 1 부정합 값 (Tprev) (112) 사이의 차이 (124) 가 클 때 다수의 샘플들 (예컨대, 더 높은 확산 인자 N_SPREAD) 에 걸쳐서 내삽을 수행하도록 구성될 수도 있다. 다른 바람직한 실시형태에서, 인코더 (120) 는 차이 (124) 가 작을 때 소수의 샘플들 (예컨대, 더 작은 확산 인자 N_SPREAD) 에 걸쳐서 내삽을 수행하도록 구성될 수도 있다.
도 7 에서, 차이 (124) 는 매우 큰 값 (D = 110) 을 가지며, 이는 프레임 경계에서 불연속성의 약 120 개의 샘플들 (샘플 (650) 내지 샘플 (759)) 을 도입한다. 따라서, 불연속성이 많은 개수의 샘플들에 걸쳐서 확산되는 평활도를 증가시키기 위해, 큰 확산 인자 (예컨대, N_SPREAD 가 640 개의 샘플들임) 를 사용하는 것이 바람직할 수도 있다. 이 구체적인 예에서, N_SPREAD 는 640 과 동일하며, 이는 단일 프레임 사이즈와 동일하지만, N_SPREAD 는 프레임 사이즈보다 작거나 또는 클 수도 있다.
도 7 에서의 특정의 예의 큰 확산 인자 (N_SPREAD = 640) 가 프레임 경계에서의 큰 불연속성에 의해 초래되는 클릭들 및 다른 오디오 왜곡들을 감소시키는데 유익할 수도 있다. 그러나, 이는 채널 조정을 수행하는데 요구되는 메모리 사용 및 MIPS 를 실질적으로 포함하여, 프로세싱 복잡성을 증가시킬 수도 있다. 증가된 프로세싱 복잡성으로 인해, 인코더 (120) 는 차이 (124) 에 기초하여 특정의 내삽을 선택하도록 구성될 수도 있다. 특정의 예시적인 예로서, 인코더 (120) 는 차이 (124) (D = 110) 를 제 1 임계치와 비교하도록 구성될 수도 있으며, 인코더 (120) 는 차이 (124) (D = 110) 가 제 1 임계치를 초과한다는 결정에 응답하여, 중첩 및 가산 내삽을 이용함으로써 제 2 샘플들 (118) 의 서브세트를 조정하도록 구성될 수도 있다.
차이 D 와 비교되는 제 1 임계치는 제 1 오디오 신호 (142) 의 서브세트 또는 제 2 오디오 신호 (146) 의 서브세트의 프레임 유형에 기초하여 결정될 수도 있다. 구체적인 예로서, 인코더 (120) 는 제 2 오디오 신호 (146) (예컨대, 목표 채널) 의 프레임 유형을 결정할 수도 있으며, 인코더 (120) 는 프레임 유형에 기초하여 제 1 임계치를 증가시키거나 또는 감소시킬 수도 있다. 프레임 유형은 음성, 음악, 잡음, 또는 다른 오디오 유형들을 포함할 수도 있다. 예시하기 위하여, 음성은 4 의 제 1 임계값과 연관될 수도 있으며 (예컨대, 인코더 (120) 는 차이 (124) 또는 편차가 4 를 초과하지 않으면 제 1 내삽을 수행할 수도 있으며, 인코더 (120) 는 차이 (124) 또는 편차가 4 를 초과하면 제 2 내삽을 수행할 수도 있다), 음악은 1 의 임계값과 연관될 수도 있으며, 잡음은 20 의 임계값과 연관될 수도 있다. 추가적으로, 또는 대안적으로, 차이 D 와 비교되는 제 1 임계값은 오디오 채널들 (142, 146) 의 주기성, 오디오 채널들 (142, 146) 의 시간/스펙트럼 희소성, 교차-상관 값의 평활도 세팅을 표시하는 평활화 인자, 또는 이들의 조합에 기초하여 결정될 수도 있다.
도 8 을 참조하면, 중첩 및 가산 내삽의 특정의 예시적인 예가 도시되며 일반적으로 800 으로 지정된다. 도 8 은 제 2 샘플들 (118) 및 조정된 샘플들 (128), 및 다양한 중간 샘플들, 예컨대 목표 [i+10] 벡터 (820), 목표 [i+120] 벡터 (830), 신호 A (860), 신호 B (870), 및 신호 C (890) 를 포함한다. 다이어그램 (800) 은 도 7 에서와 동일한 예시적인 값들에 기초하여, 중첩 및 가산 내삽을 위한 예시적인 중간 내삽 단계들을 나타낸다.
예시하기 위하여, 샘플 조정기 (126) 는 (제 2 샘플들 (118) 에 대한) 제 1 샘플들 (116) 의 제 1 부정합 값 (112) (또는, 제 1 시프트 값) 이 10 개의 샘플들 (Tprev = 10) 과 동일하다고 결정할 수도 있으며, 제 1 부정합 값 (112) 을 제 1 버퍼에 저장할 수도 있다. 샘플 조정기 (126) 는 (제 2 샘플들 (118) 에 대한) 제 1 샘플들 (116) 의 제 2 부정합 값 (114) (또는, 제 2 시프트 값) 이 120 개의 샘플들 (T = 120) 과 동일하다고 결정할 수도 있으며, 제 2 시프트 값을 제 2 버퍼에 저장할 수도 있다. 샘플 조정기 (126) 는 또한 도 7 에서와 같이 제 1 부정합 값 (112) (Tprev = 10) 과 제 2 부정합 값 (114) (T = 120) 사이의 차이 D, 또는 편차가 110 (D = 110) 이라고 결정할 수도 있다.
중첩 및 가산 내삽의 하나의 바람직한 실시형태에서, 내삽된 목표 채널의 최종 샘플들 (예컨대, 추정된 샘플들 (710, 810)) 은 제 1 및 제 2 버퍼들 내 시프트 값들의 가중 조합에 기초할 수도 있다. 예를 들어, 내삽된 목표 채널의 최종 샘플들 (예컨대, 추정된 샘플들 (710, 810)) 은 다음과 같이 표현될 수도 있다:
targetfinal(i) = win(j) x target(i+10) + (1-win(j) x target(i+120)) 수식 5
여기서, i 는 프레임 경계 (855, 865) 에 걸쳐서 계속 증가할 수도 있는 버퍼 내 샘플 인덱스를 표시하며, j 는 프레임 경계 (855, 865) 내 다른 샘플 인덱스를 예를 들어, [0,639] 의 범위에서 표시한다. 설명의 용이성을 위해, 수식 5 에서의 샘플 인덱스 i 는 제 2 프레임 (804) 에 대해 [0,639] 의 범위, 및 제 4 프레임 (808) 에 대해 [640,1279] 의 범위에 있는 것으로 가정된다. 다른 구현예들에서, 그러나, 샘플 인덱스 i 는 제 2 프레임 (804) 에 대해 [-640,-1] 의 범위, 및 제 4 프레임 (808) 에 대해 [0,639] 의 범위에 있을 수도 있다. 제 1 윈도우 함수 (840) 및 제 2 윈도우 함수 (850) 의 길이는 바람직하게는 확산 인자의 값 (예컨대, N_SPREAD = 640) 과 동일할 수도 있다. 이 구체적인 예에서, 제 1 윈도우 함수 (840) 는 win(j) 이고, 제 2 윈도우 함수 (850) 는 1-win(j) 이다. win(j) 는 값들이 1 과 0 의 범위에 있는 임의의 윈도우 함수들일 수도 있다. 예를 들어, win(j) 의 값들은 제 1 인덱스 위치에서 1 로 시작하고 제 1 인덱스 위치와는 상이한 임의의 다른 인덱스 지점에서 0 (예컨대, 최종 인덱스 위치에서 0) 으로 끝날 수도 있다. 일부 구현예들에서, win(j) 는 값들이 1 로부터 0 까지 고르게 또는 선형으로 감소하는 윈도우 함수이다. 다른 구현예들에서, 윈도우 함수는 정현파 함수들 (예컨대, 사인 함수 또는 코사인 함수)) 및 0 과 1.0 사이의 그의 값들에 기초할 수도 있다.
수식 5 에 따르면, 제 1 윈도우 함수 (840) 는 신호 A (840) 를 발생시키기 위해 목표 (i+10) 벡터 (820) 와 곱해질 수도 있다. 목표 (i+10) 벡터는 제 1 샘플 (650) (10 + 640) 에서 시작하고 최종 샘플 (1289) (649 + 640) 에서 종료하는 640 샘플들의 길이를 가질 수도 있다. 제 2 윈도우 함수 (850) 는 신호 B (870) 를 발생시키기 위해 목표 (i+120) 벡터 (830) 와 곱해질 수도 있다. 목표 (i+120) 벡터는 제 1 샘플 (760) (120 + 640) 에서 시작하고 최종 샘플 (1399) (759 + 640) 에서 종료하는 640 샘플들의 길이를 갖는다. 그후, 신호 A (840) 및 신호 B (870) 는 추정된 샘플들 (710, 810) 을 발생시키는데 사용될 targetfinal 벡터 (예컨대, 신호 C (890)) 를 생성하기 위해, 가산될 수도 있다. 일부 구현예들에서, 추정된 샘플들 (710, 810) 은 신호 C (890) (수식 5 에서의 targetfinal 벡터) 와 동일할 수도 있거나, 또는 대안적으로, 신호 C (890) 는 추정된 샘플들 (710, 810) 을 발생시키기 위해 스케일 인자에 의해 스케일링되거나 또는 필터에 의해 필터링될 수도 있다. 요약하면, 도 8 은 프레임 경계 (855) (제 2 프레임 (804) 과 제 4 프레임 (808) 사이의 프레임 경계) 에 걸친 불연속성이 큰 확산 인자 (N_SPREAD = 640) 에 걸쳐서 평활화 또는 내삽을 통해서 제거되는 중첩 및 가산 내삽의 특정의 실시형태 (추정된 샘플들 (810) 의 제 1 샘플이 샘플 (650) 이고 이전 프레임의 최종 샘플이 샘플 (649) 임) 을 예시한다.
도 9 를 참조하면, 조정된 샘플들을 이용하여 다수의 오디오 채널들을 인코딩하는 방법의 특정의 예시적인 구현예의 플로우 차트가 도시되며 일반적으로 900 으로 지정된다. 방법 (900) 은 예시적인, 비한정적인 예들로서 제 1 디바이스 (102) 에 의해 또는 도 1 및 도 4 의 제 2 디바이스 (160) 에 의해, 또는 도 5 의 시스템 (500) 에 의해 수행될 수도 있다.
방법 (900) 은 902 에서, 제 1 디바이스에서, 참조 채널 및 목표 채널을 수신하는 단계를 포함한다. 참조 채널은 참조 샘플들의 세트를 포함하며, 목표 채널은 목표 샘플들의 세트를 포함한다. 예를 들어, 도 1 을 참조하면, 인코더 (120) 는 제 1 마이크로폰 (140) 으로부터 제 1 오디오 신호 (142) (예컨대, 참조 채널) 를, 그리고 제 2 마이크로폰 (144) 으로부터 제 2 오디오 신호 (146) (예컨대, 목표 채널) 를 수신할 수도 있다. 제 1 오디오 신호 (142) 는 참조 샘플들의 세트 (예컨대, 제 1 샘플들 (116)) 를 포함할 수도 있으며, 제 2 오디오 신호 (146) 는 목표 샘플들의 세트 (예컨대, 제 2 샘플들 (118)) 를 포함할 수도 있다.
방법 (900) 은 904 에서, 제 1 디바이스에서, 제 1 부정합 값과 제 2 부정합 값 사이의 편차를 결정하는 단계를 포함한다. 제 1 부정합 값은 참조 샘플들의 세트의 제 1 참조 샘플과 목표 샘플들의 세트의 제 1 목표 샘플 사이의 시간 부정합의 양을 표시할 수도 있다. 제 2 부정합 값은 참조 샘플들의 세트의 제 2 참조 샘플과 목표 샘플들의 세트의 제 2 목표 샘플 사이의 시간 부정합의 양을 표시할 수도 있다. 예를 들어, 도 1 을 참조하면, 비교기 (122) 는 제 1 부정합 값 (112) 과 제 2 부정합 값 (114) 사이의 차이 (124) (예컨대, 편차) 를 결정할 수도 있다. 제 1 부정합 값 (112) 은 제 1 샘플들 (116) 의 제 1 참조 샘플 (예컨대, 제 1 프레임) 과 제 2 샘플들 (118) 의 제 1 목표 샘플 (예컨대, 대응하는 프레임) 사이의 시간 부정합의 양을 표시할 수도 있다. 제 2 부정합 값 (114) 은 제 1 샘플들 (116) 의 제 2 참조 샘플 (예컨대, 제 2 프레임) 과 제 2 샘플들 (118) 의 제 2 목표 샘플 사이의 시간 부정합의 양을 표시할 수도 있다. 제 2 참조 샘플은 제 1 참조 샘플에 후속할 수도 있으며, 제 2 목표 샘플은 제 1 목표 샘플에 후속할 수도 있다.
특정의 구현예에서, 제 1 부정합 값 (112) 은 제 2 오디오 신호 (146) 의 프레임이 제 1 오디오 신호 (142) 의 대응하는 프레임에 대해 시간-시프트되는 샘플들의 수를 표시하며, 제 2 부정합 값 (114) 은 제 2 오디오 신호 (146) 의 다른 프레임이 제 1 오디오 신호 (142) 의 대응하는 프레임에 대해 시간-시프트되는 샘플들의 수를 표시한다. 제 1 부정합 값 (112) 은 제 1 마이크로폰 (140) 을 통한 제 1 프레임의 수신과 제 2 마이크로폰 (144) 을 통한 제 2 프레임의 수신 사이의 시간 지연의 양에 대응할 수도 있다. 예를 들어, 사운드 소스 (150) 가 제 2 마이크로폰 (144) 보다 제 1 마이크로폰 (140) 에 더 가까움으로 인해, 제 2 오디오 신호 (146) 는 제 1 오디오 신호 (142) 에 대해 지연될 수도 있다. 특정의 구현예에서, 제 1 오디오 신호 (142) 는 우측 채널 신호 또는 좌측 채널 신호 중 하나를 포함하며, 제 2 오디오 신호 (146) 는 우측 채널 신호 또는 좌측 채널 신호 중 다른 하나를 포함한다. 다른 구현예들에서, 오디오 신호들 (142 및 146) 은 다른 신호들을 포함한다.
방법 (900) 의 일 구현예에 따르면, 편차는 참조 채널 표시자 및 제 1 부정합 값과 제 2 부정합 값 사이의 차이에 적어도 기초하는 값일 수도 있다. 편차는 또한 샘플들의 여러 세트들에 걸친 부정합 값들의 세트에 기초할 수도 있다.
일 구현예에 따르면, 방법 (900) 은 편차에 기초하여 목표 샘플들의 세트를 조정할지 여부를 결정하는 단계를 포함할 수도 있다. 추가적으로, 방법 (900) 은 참조 채널 표시자에 기초하여 목표 샘플들의 세트를 조정할지 여부를 결정하는 단계를 포함할 수도 있다. 방법 (900) 은 또한 적어도 참조 채널의 에너지 및 목표 채널의 에너지에 기초하여 목표 샘플들의 세트를 조정할지 여부를 결정하는 단계를 포함할 수도 있다. 방법 (900) 은 과도 검출기에 기초하여 목표 샘플들의 세트를 조정할지 여부를 결정하는 단계를 더 포함할 수도 있다.
위에서 설명된 기법들 중 하나 이상의 기법들에 기초하여 목표 샘플들을 조정하기로 결정한 후, 방법 (900) 은 905 에서, 제 1 디바이스에서, 편차를 제 1 임계치와 비교하는 단계를 포함한다. 907 에서의 단계는 편차가 제 1 임계치를 초과하는지 여부를 결정할 수도 있으며 비교 결과를 발생시킬 수도 있다. 제 1 임계치는 사전 프로그래밍된 값일 수도 있거나, 또는 런-타임 실행 동안 특정의 기준에 기초하여 선택되거나 또는 업데이트될 수도 있다. 일 구현예에서, 제 1 임계치는 오디오 채널들의 목표 평활도 레벨 또는 채널 조정에 전념할 프로세싱의 목표 레벨에 기초하여 결정될 수도 있다. 대안적으로, 제 1 임계치는 교차-상관 값의 평활도 세팅을 표시하는 평활화 인자에 기초하여 결정될 수도 있다. 다른 구현예들에서, 제 1 임계치는 제 1 오디오 채널 또는 제 2 오디오 채널의 프레임 유형에 기초하여 결정될 수도 있다. 특정의 비한정적인 예로서, 프레임 유형은 음성, 음악, 잡음, 또는 제 1 오디오 채널 또는 제 2 오디오 채널의 특정의 프레임의 특성을 표시할 수도 있는 다른 프레임 유형들을 포함할 수도 있다. 대안적으로, 프레임 유형은 제 1 오디오 채널 또는 제 2 오디오 채널의 임의의 특정의 프레임에 대한 적합한 코딩 모드를 표시하는 정보에 대응할 수도 있다.
방법 (900) 은 906 에서, 조정된 목표 샘플들의 세트를 발생시키기 위해, 제 1 디바이스에서, 편차에 기초하여, 그리고, 비교에 기초하여 목표 샘플들의 세트를 조정하는 단계를 포함한다. 예를 들어, 도 1 을 참조하면, 샘플 조정기 (126) 는 905 에서의 단계로부터의 비교 결과에 응답하여, 차이 (124) 에 기초하여 제 2 샘플들 (118) 을 조정하여 조정된 샘플들 (128) (예컨대, 조정된 목표 샘플들) 을 발생시킬 수도 있다. 906 에서 목표 샘플들의 세트를 조정하는 것은 위에서 설명된 기법들 중 하나 이상의 기법들에 의해 수행될 수도 있다. 일부 구현예들에서, 906 에서 목표 샘플들의 세트를 조정하는 것은 편차가 제 1 임계치를 초과하지 않는다는 결정에 응답하여, 편차에 기초하여, 목표 샘플들의 세트에 대해 제 1 내삽을 수행하는 것을 포함할 수도 있다. 추가적으로, 906 에서 목표 샘플들의 세트를 조정하는 것은 편차가 제 1 임계치를 초과한다는 결정에 응답하여, 편차에 기초하여, 목표 샘플들의 세트에 대해 제 2 내삽을 수행하는 것을 포함할 수도 있다. 하나의 바람직한 실시형태에서, 제 1 내삽은 제 2 내삽과는 상이할 수도 있다. 예를 들어, 제 1 내삽은 Sinc 내삽, Lagrange 내삽, 또는 하이브리드 내삽 중의 하나의 내삽 방법일 수도 있다. 제 2 내삽은 중첩 및 가산 내삽, 또는 비교적 다수의 샘플들에 걸쳐서 평활화하거나 또는 내삽하는데 적합한 임의의 다른 내삽 기법들 중 하나일 수도 있다.
방법 (900) 은 908 에서, 제 1 디바이스에서, 참조 샘플들의 세트 및 조정된 목표 샘플들의 세트에 기초하여, 적어도 하나의 인코딩된 채널을 발생시키는 단계를 포함한다. 예를 들어, 신호 발생기 (130) 는 제 1 샘플들 (116) 및 조정된 샘플들 (128) 에 기초하여, 인코딩된 채널들 (180) 을 발생시킬 수도 있다. 특정의 구현예에서, 적어도 하나의 인코딩된 채널 (예컨대, 인코딩된 채널들 (180)) 은 중간-채널, 측면-채널, 또는 양자를 포함한다. 예를 들어, 채널 발생기 (130) (또는, 중간측면 발생기 (510)) 는 스테레오 인코딩을 수행하여 중간-채널 (540) 및 측면-채널 (542) 을 발생시킬 수도 있다.
방법 (900) 은 910 에서, 적어도 하나의 인코딩된 채널을 제 1 디바이스로부터 제 2 디바이스로 송신하는 단계를 더 포함한다. 예를 들어, 제 1 디바이스 (102) 는 인코딩된 채널들 (180) 을 하나 이상의 인터페이스들 (104) 의 네트워크 인터페이스를 통해서 제 2 디바이스 (160) 로 송신할 수도 있다.
특정의 구현예에서, 제 2 샘플들 (118) 의 제 1 부분은 제 1 샘플들 (116) 의 제 1 부분에 대해 제 1 부정합 값 (112) 에 기초하는 양 만큼 시간-시프트될 수도 있으며, 제 2 샘플들 (118) 의 제 2 부분은 제 1 샘플들 (116) 의 제 2 부분에 대해 제 2 부정합 값 (114) 에 기초하는 양 만큼 시간-시프트될 수도 있다. 예를 들어, 도 2 를 참조하면, 제 2 샘플들 (118) 의 샘플들 (2-641) 은 제 1 샘플들 (116) 의 샘플들 (0-639) 에 대해 시간-시프트될 수도 있으며, 제 2 샘플들 (118) 의 샘플들 (643-1282) 은 제 1 샘플들 (116) 의 샘플들 (640-1279) 에 대해 시간-시프트될 수도 있다. 시간 시프트되는 샘플들의 개수는 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 에 기초할 수도 있다.
다른 특정의 구현예에서, 차이 (124) 를 결정하는 것은 제 2 부정합 값 (114) 으로부터 제 1 부정합 값 (112) 을 감산하는 것을 포함할 수도 있다. 예를 들어, 비교기 (122) 는 제 2 부정합 값 (114) 으로부터 제 1 부정합 값 (112) 을 감산하여 차이 (124) 를 발생시키도록 구성될 수도 있다. 추가적으로, 또는 대안적으로, 방법 (900) 은 제 1 샘플들 (116) 과 조정된 샘플들 (128) 의 총합에 기초하여 중간-채널 (540) 을 발생시키는 단계, 및 제 1 샘플들 (116) 과 조정된 샘플들 (128) 사이의 차이에 기초하여 측면-채널 (542) 을 발생시키는 단계를 포함한다. 예를 들어, 채널 발생기 (130) 는 제 1 샘플들 (116) 과 조정된 샘플들 (128) 의 조합 (예컨대, 총합) 에 기초하여 중간-채널 (540) 을 발생시킬 수도 있으며, 채널 발생기 (130) 는 제 1 샘플들 (116) 과 조정된 샘플들 (128) 의 차이에 기초하여 측면-채널 (542) 을 발생시킬 수도 있다. 인코딩된 채널들 (180) 은 중간-채널 (540) 및 측면-채널 (542) 을 포함할 수도 있다. 대안적으로, 채널 발생기 (130) 는 중간-채널 (540) 및 하나 이상의 측면 채널 파라미터들을 발생시킬 수도 있다.
다른 특정의 구현예에서, 방법 (900) 은 참조 채널 (142) 을 다운-샘플링하여 제 1 다운-샘플링된 채널을 발생시키는 단계, 목표 채널 (146) 을 다운-샘플링하여 제 2 다운-샘플링된 채널을 발생시키는 단계, 및 제 1 다운-샘플링된 채널과 제 2 다운-샘플링된 채널의 비교들에 기초하여 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 을 결정하는 단계를 포함할 수도 있다. 예를 들어, 채널 사전-프로세서 (502) 는 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 를 다운-샘플링하여 프로세싱된 채널들 (530) 을 발생시킬 수도 있으며, 시프트 추정기 (121) 는 프로세싱된 채널들 (530) 을 비교하여 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 을 결정할 수도 있다. 시프트 추정기 (121) 는 제 1 다운-샘플링된 채널의 샘플을 제 2 다운-샘플링된 채널의 다수의 샘플들과 비교하여, 제 2 다운-샘플링된 채널의 특정의 샘플을 결정할 수도 있다. 예를 들어, 시프트 추정기 (121) 는 제 2 다운-샘플링된 채널의 샘플들에 대한 제 1 다운-샘플링된 채널의 샘플의 비교들에 기초하여 비교 값들 (예컨대, 차이 값들, 유사도 값들, 코히어런스 값들, 또는 교차-상관 값들) 을 발생시킬 수도 있으며, 시프트 추정기 (121) 는 최저 (또는, 최고) 비교 값에 대응하는 제 2 다운-샘플링된 채널의 특정의 샘플을 식별할 수도 있다. 제 1 다운-샘플링된 채널의 샘플에 대한 제 2 다운-샘플링된 채널의 특정의 샘플의 지연은 제 1 값 (112) 에 대응할 수도 있다. 시프트 추정기 (121) 는 유사하게, 제 2 부정합 값 (114) 을 결정할 수도 있다. 추가적으로, 방법 (900) 은 차이가 임계치를 초과하지 않도록, 제 1 부정합 값 (112) 및 제 2 부정합 값 (114) 을 선택하는 단계를 더 포함할 수도 있다. 예를 들어, 시프트 추정기 (121) 는 부정합 값들 (112 및 114) 이 임계치를 초과하지 않도록 부정합 값들 (112 및 114) 을 선택할 수도 있다. 임계치는 프레임에 대응하는 샘플들의 개수 미만인 샘플들의 수일 수도 있다.
추가적으로, 또는 대안적으로, 내삽은 확산 인자에 대응하는 샘플들의 수에 대해 수행될 수도 있다. 예를 들어, 제 2 샘플들 (118) 의 서브세트에서의 샘플들의 개수는 도 2 내지 도 3 을 참조하여 설명된 바와 같이, 확산 인자 M 에 대응할 수도 있다. 확산 인자의 값은 제 2 오디오 신호 (146) 의 프레임에서의 샘플들의 수 미만이거나 또는 동일할 수도 있다. 예를 들어, 제 2 오디오 신호 (146) 의 프레임 (예컨대, 제 2 프레임 또는 제 4 프레임) 에서의 샘플들의 수는 640 일 수도 있으며, 확산 인자의 값은 640 미만일 수도 있다. 특정의 구현예에서, 확산 인자의 값은 프레임에서의 샘플들의 개수 (예컨대, 640) 와 동일할 수도 있다. 도 2 내지 도 3 에 예시된 예들에서, 확산 인자의 값은 4 이고, 도 7 내지 도 8 에서, 확산 인자의 값은 640 이다. 추가적으로, 또는 대안적으로, 확산 인자의 값은 오디오 평활도 세팅에 기초할 수도 있다. 추가적으로, 또는 대안적으로, 방법 (900) 은 제 2 오디오 신호 (146) 의 프레임 유형을 결정하는 단계 및 프레임 유형에 기초하여 확산 인자의 값을 선택하는 단계를 포함할 수도 있다. 프레임 유형은 음성, 음악, 또는 잡음을 포함할 수도 있다. 예를 들어, 샘플 조정기 (126) 는 제 2 오디오 신호 (146) 의 프레임 유형을 결정할 수도 있으며, 샘플 조정기 (126) 는 결정된 프레임 유형에 대응하는 확산 인자를 선택할 수도 있다. 각각의 프레임 유형 (예컨대, 음성, 음악, 잡음, 등) 은 상이한 확산 인자에 대응할 수도 있다. 추가적으로, 또는 대안적으로, 추정된 샘플들 (310) 은 제 2 샘플들 (118) 보다 더 높은 샘플링 레이트에 대응할 수도 있다. 예를 들어, 도 3 을 참조하여 설명된 바와 같이, 제 2 샘플들 (118) 은 하나 이상의 샘플들의 반복을 방지하기 위해 추정된 샘플들 (310) 을 이용하여 조정될 수도 있으며, 추정된 샘플들 (310) 은 제 2 샘플들 (118) 보다 더 높은 샘플링 레이트에 대응할 수도 있다. 대안적인 구현예에서, 추정된 샘플들 (310) 은 제 2 샘플들 (118) 보다 낮은 샘플링 레이트에 대응한다. 예를 들어, 도 2 를 참조하여 설명된 바와 같이, 제 2 샘플들 (118) 은 하나 이상의 샘플들의 스킵을 방지하기 위해 추정된 샘플들 (210) 을 이용하여 조정될 수도 있으며, 추정된 샘플들 (210) 은 제 2 샘플들 (118) 보다 낮은 샘플링 레이트에 대응할 수도 있다.
다른 특정의 구현예에서, 방법 (900) 은 제 1 부정합 값 (112) 에 기초하여, 제 1 시간 기간 동안, 제 1 오디오 신호 (142) 또는 제 2 오디오 신호 (146) 중 하나를 참조 채널로서 선택하고, 제 1 오디오 신호 (142) 또는 제 2 오디오 신호 (146) 중 다른 하나를 목표 채널로서 선택하는 단계를 포함할 수도 있다. 방법 (900) 은 제 1 오디오 신호 (142) 또는 제 2 오디오 신호 (146) 가 제 1 시간 기간 동안 참조 채널로서 선택되는지 여부를 표시하는 제 1 값을 갖는 참조 채널 표시자 (184) 를 제 2 디바이스 (160) 로 송신하는 단계를 더 포함할 수도 있다. 예시하기 위하여, 참조 채널 지정기 (508) 는 제 1 부정합 값 (112) 이 음의 값인지 여부에 기초하여, (제 1 프레임 및 제 2 프레임에 대응하는) 제 1 시간 기간 동안 제 1 오디오 신호 (142) 및 제 2 오디오 신호 (146) 중 하나를 참조 채널로서 선택할 수도 있다. 참조 채널 지정기 (508) 는 참조 채널을 식별하기 위해 참조 채널 표시자 (184) 의 값을 설정할 수도 있다. 예를 들어, 참조 채널 표시자 (184) 가 제 1 값 (예컨대, 논리 제로 값) 을 가질 때, 제 1 오디오 신호 (142) 는 참조 채널로서 식별되며, 참조 채널 표시자 (184) 가 제 2 값 (예컨대, 논리 1 값) 을 가질 때, 제 2 오디오 신호 (146) 는 참조 채널로서 식별된다. 제 1 디바이스 (102) 는 참조 채널 표시자 (184) (또는, 목표 채널을 표시하는 목표 채널 표시자) 를 네트워크 (152) 를 통해서 제 2 디바이스 (160) 로 송신할 수도 있다. 방법 (900) 은 제 2 부정합 값 (114) 에 기초하여, 제 1 오디오 신호 (142) 또는 제 2 오디오 신호 (146) 중 하나를 제 2 시간 기간 동안 참조 채널로서 선택하는 단계를 더 포함할 수도 있으며, 참조 채널 표시자 (184) 는 제 1 오디오 신호 (142) 또는 제 2 오디오 신호 (146) 가 참조 채널로서 선택되는지 여부를 표시하는 제 2 값을 제 2 시간 기간 동안 갖는다. 예를 들어, 참조 채널 지정기 (508) 는 제 1 오디오 신호 (142) 또는 제 2 오디오 신호 (146) 가 제 3 프레임 및 제 4 프레임에 대응하는 시간 기간 동안 참조 채널인지 여부를 표시하기 위해, 제 2 부정합 값 (114) 에 기초하여, 참조 채널 표시자 (184) 의 값을 설정할 수도 있다. 추가적으로, 제 2 샘플들 (118) 은 제 2 오디오 신호 (146) 가 제 2 시간 기간 동안 목표 채널로서 선택될 때 조정될 수도 있다. 예를 들어, 샘플 조정기 (126) 는 제 2 오디오 신호 (146) 가 목표 채널로서 식별될 때 제 2 샘플들 (118) 을 조정할 수도 있다. 대안적으로, 샘플 조정기 (126) 는 제 1 오디오 신호 (142) 가 목표 채널로서 식별될 때 제 1 샘플들 (116) 을 조정할 수도 있다.
방법 (900) 은 프레임 경계들 (855, 865) 에서의 불연속들을 보상하기 (또는, 은폐하기) 위해 오디오 채널의 조정을 가능하게 한다. 프레임 경계들에서의 불연속들을 보상하기 위해 오디오 채널을 조정하는 것은 디코딩된 오디오 채널들의 플레이백 동안 클릭들, 팝들, 또는 다른 오디오 사운드들을 감소시키거나 또는 제거할 수도 있다.
도 10 을 참조하면, 디바이스 (예컨대, 무선 통신 디바이스) 의 특정의 예시적인 구현예의 블록도가 도시되며 일반적으로 1000 으로 지정된다. 여러 구현예들에서, 디바이스 (1000) 는 도 10 에 예시된 것보다 더 많거나 또는 더 적은 컴포넌트들을 가질 수도 있다. 예시적인 구현예에서, 디바이스 (1000) 는 도 1 및 도 4 의 제 1 디바이스 (102) 또는 제 2 디바이스 (160), 또는 도 5 의 시스템 (500) 중 하나 이상에 대응할 수도 있다.
특정한 구현예에서, 디바이스 (1000) 는 프로세서 (1006) (예컨대, 중앙 처리 유닛 (CPU)) 를 포함한다. 디바이스 (1000) 는 하나 이상의 추가적인 프로세서들 (1010) (예컨대, 하나 이상의 디지털 신호 프로세서들 (DSPs)) 을 포함할 수도 있다. 프로세서들 (1010) 은 음성 및 음악 코더-디코더 (코덱) (1008) 를 포함할 수도 있다. 음성 및 음악 코덱 (1008) 은 보코더 인코더 (예컨대, 도 1 의 인코더 (120) 또는 도 4 의 인코더 (120)), 보코더 디코더 (예컨대, 도 1 의 디코더 (162) 또는 도 4 의 디코더 (420)), 또는 양자를 포함할 수도 있다. 특정의 구현예에서, 음성 및 음악 코덱 (1008) 은 하나 이상의 표준들 또는 프로토콜들, 예컨대 3세대 파트너쉽 프로젝트 (3GPP) EVS 프로토콜에 따라서 통신하는 향상된 보이스 서비스들 (EVS) 코덱일 수도 있다. 특정의 구현예에서, 인코더 (120) 는 비교기 (122), 샘플 조정기 (126), 및 채널 발생기 (130) 를 포함하며, 디코더 (420) 는 비교기 (422), 샘플 조정기 (426), 및 출력 발생기 (430) 를 포함한다. 대안적인 구현예에서, 음성 및 음악 코덱 (1008) 은 도 1 의 디코더 (162), 도 4 의 인코더 (402), 또는 양자를 포함할 수도 있다.
디바이스 (1000) 는 메모리 (1032) 및 코덱 (1034) 을 포함할 수도 있다. 도시되지는 않았지만, 메모리 (1032) 는 제 1 부정합 값 (112), 제 2 부정합 값 (114), 제 1 샘플들 (116), 제 2 샘플들 (118), 차이 (124), 조정된 샘플들 (128), 또는 이들의 조합을 포함할 수도 있다. 디바이스 (1000) 는 트랜시버 (1050) 를 통해서 안테나 (1042) 에 커플링된 무선 인터페이스 (1040) 를 포함할 수도 있다.
디바이스 (1000) 는 디스플레이 제어기 (1026) 에 커플링된 디스플레이 (1028) 를 포함할 수도 있다. 스피커 (1046), 마이크로폰 (1048), 또는 이들의 조합은 코덱 (1034) 에 커플링될 수도 있다. 코덱 (1034) 은 DAC (1002) 및 ADC (1004) 를 포함할 수도 있다. 특정의 구현예에서, 코덱 (1034) 은 마이크로폰 (1048) 으로부터 아날로그 신호들을 수신하고, ADC (1004) 를 이용하여 아날로그 신호들을 디지털 신호들로 변환하고, 그리고 디지털 신호들을 음성 및 음악 코덱 (1008) 으로 제공할 수도 있다. 음성 및 음악 코덱 (1008) 은 디지털 신호들을 프로세싱할 수도 있다. 특정의 구현예에서, 음성 및 음악 코덱 (1008) 은 디지털 신호들을 코덱 (1034) 으로 제공할 수도 있다. 코덱 (1034) 은 DAC (1002) 를 이용하여 디지털 신호들을 아날로그 신호들로 변환할 수도 있으며 아날로그 신호들을 스피커 (1046) 에 제공할 수도 있다.
특정의 구현예에서, 디바이스 (1000) 는 시스템-인-패키지 또는 시스템-온-칩 디바이스 (1022) 에 포함될 수도 있다. 특정의 구현예에서, 메모리 (1032), 프로세서 (1006), 프로세서들 (1010), 디스플레이 제어기 (1026), 코덱 (1034), 무선 인터페이스 (1040), 및 트랜시버 (1050) 는 시스템-인-패키지 또는 시스템-온-칩 디바이스 (1022) 에 포함된다. 특정의 구현예에서, 입력 디바이스 (1030) 및 전원 (1044) 은 시스템-온-칩 디바이스 (1022) 에 커플링된다. 더욱이, 특정의 구현예에서, 도 10 에 예시된 바와 같이, 디스플레이 (1028), 입력 디바이스 (1030), 스피커 (1046), 마이크로폰 (1048), 안테나 (1042), 및 전원 (1044) 은 시스템-온-칩 디바이스 (1022) 의 외부에 있다. 특정의 구현예에서, 디스플레이 (1028), 입력 디바이스 (1030), 스피커 (1046), 마이크로폰 (1048), 안테나 (1042), 및 전원 (1044) 의 각각은 인터페이스 또는 제어기와 같은, 시스템-온-칩 디바이스 (1022) 의 컴포넌트에 커플링될 수도 있다.
디바이스 (1000) 는 헤드셋, 모바일 통신 디바이스, 스마트 폰, 셀룰러폰, 랩탑 컴퓨터, 컴퓨터, 태블릿, 개인 휴대정보 단말기, 디스플레이 디바이스, 텔레비전, 게이밍 콘솔, 뮤직 플레이어, 라디오, 디지털 비디오 플레이어, 디지털 비디오 디스크 (DVD) 플레이어, 튜너, 카메라, 네비게이션 디바이스, 운송체, 운송체의 컴포넌트, 또는 이들의 임의의 조합을 포함할 수도 있다.
예시적인 구현예에서, 메모리 (1032) 는 명령들 (1060) (예컨대, 실행가능한 명령들), 예컨대 컴퓨터-판독가능 명령들 또는 프로세서-판독가능 명령들을 포함하거나 또는 저장한다. 예를 들어, 메모리 (1032) 는 명령들 (예컨대, 명령들 (1060)) 을 저장하는 비일시성 컴퓨터-판독가능 매체를 포함하거나 또는 이에 대응할 수도 있다. 명령들 (1060) 은 컴퓨터, 예컨대 프로세서 (1006) 또는 프로세서들 (1010) 에 의해 실행가능한 하나 이상의 명령들을 포함할 수도 있다. 명령들 (1060) 은 프로세서 (1006) 또는 프로세서들 (1010) 로 하여금 도 9 의 방법 (900) 을 수행하게 할 수도 있다.
특정의 구현예에서, 인코더 (120) 는 제 1 부정합 값 (112) 과 제 2 부정합 값 (114) 사이의 차이 (124) 를 결정하도록 구성될 수도 있다. 제 1 부정합 값 (112) 은 제 2 오디오 신호 (146) 의 제 2 프레임에 대한 제 1 오디오 신호 (142) 의 제 1 프레임의 시프트를 표시할 수도 있으며, 제 2 부정합 값 (114) 은 제 2 오디오 신호 (146) 의 제 4 프레임에 대한 제 1 오디오 신호 (142) 의 제 3 프레임의 시프트를 표시할 수도 있다. 제 1 오디오 신호 (142) 는 제 1 샘플들 (116) 과 연관될 수도 있으며, 제 2 오디오 신호 (146) 는 제 2 샘플들 (118) 과 연관될 수도 있다. 인코더 (120) 는 차이 (124) 에 기초하여 제 2 샘플들 (118) 을 조정하여 조정된 샘플들 (128) 을 발생시키도록 구성될 수도 있다. 인코더 (120) 는 제 1 샘플들 (116) 및 조정된 샘플들 (128) 에 기초하여 적어도 하나의 인코딩된 채널 (예컨대, 도 1 의 인코딩된 채널들 (180)) 을 발생시키도록 추가로 구성될 수도 있다. 무선 인터페이스 (1040) 는 적어도 하나의 인코딩된 채널 (예컨대, 도 1 의 인코딩된 채널들 (180)) 을 송신하도록 구성될 수도 있다. 대안적으로, 메모리 (1032) 에 저장된 명령들 (1060) 은 프로세서 (예컨대, 프로세서 (1006) 또는 프로세서들 (1010)) 로 하여금 위에서 설명된 동작들을 개시하게 할 수도 있다.
설명되는 양태들과 관련하여, 제 1 장치는 참조 채널을 수신하는 수단을 포함한다. 참조 채널은 참조 샘플들의 세트를 포함할 수도 있다. 예를 들어, 참조 채널을 수신하는 수단은 도 1 의 제 1 마이크로폰 (140), 도 1 의 제 2 마이크로폰, 도 1 의 인코더 (120), 도 10 의 프로세서 (1006), 프로세서들 (1010), 하나 이상의 다른 구조들 또는 회로들, 또는 이들의 임의의 조합을 포함할 수도 있다.
제 1 장치는 또한 목표 채널을 수신하는 수단을 포함할 수도 있다. 목표 채널은 목표 샘플들의 세트를 포함할 수도 있다. 예를 들어, 목표 채널을 수신하는 수단은 도 1 의 제 1 마이크로폰 (140), 도 1 의 제 2 마이크로폰, 도 1 의 인코더 (120), 도 10 의 프로세서 (1006), 프로세서들 (1010), 하나 이상의 다른 구조들 또는 회로들, 또는 이들의 임의의 조합을 포함할 수도 있다.
제 1 장치는 또한 제 1 부정합 값과 제 2 부정합 값 사이의 차이를 결정하는 수단을 포함할 수도 있다. 제 1 부정합 값은 참조 샘플들의 세트의 제 1 참조 샘플과 목표 샘플들의 세트의 제 1 목표 샘플 사이의 시간 부정합의 양을 표시할 수도 있다. 제 2 부정합 값은 참조 샘플들의 세트의 제 2 참조 샘플과 목표 샘플들의 세트의 제 2 목표 샘플 사이의 시간 부정합의 양을 표시할 수도 있다. 예를 들어, 결정하는 수단은 도 1 의 인코더 (120), 도 1 의 비교기 (122), 도 4 의 디코더 (420), 비교기 (422), 도 5 의 프레임간 시프트 변형 분석기 (506), 인코더 (120), 비교기 (122), 디코더 (420), 비교기 (422), 도 10 의 프로세서 (1006), 프로세서들 (1010), 제 1 부정합 값과 제 2 부정합 값 사이의 차이를 결정하도록 구성된 하나 이상의 다른 구조들 또는 회로들, 또는 이들의 임의의 조합을 포함하거나 또는 이에 대응할 수도 있다.
제 1 장치는 또한 조정된 목표 샘플들의 세트를 발생시키기 위해 차이에 기초하여 목표 샘플들의 세트를 조정하는 수단을 포함할 수도 있다. 예를 들어, 결정하는 수단은 도 1, 도 5, 및 도 10 의 샘플 조정기 (126), 도 10 의 프로세서 (1006), 프로세서들 (1010), 하나 이상의 다른 구조들 또는 회로들, 또는 이들의 임의의 조합을 포함할 수도 있다.
제 1 장치는 또한 참조 샘플들의 세트 및 조정된 목표 샘플들의 세트에 기초하여 적어도 하나의 인코딩된 채널을 발생시키는 수단을 포함할 수도 있다. 예를 들어, 발생시키는 수단은 도 1 의 인코더 (120), 도 10 의 프로세서 (1006), 프로세서들 (1010), 하나 이상의 다른 구조들 또는 회로들, 또는 이들의 임의의 조합을 포함할 수도 있다.
제 1 장치는 적어도 하나의 인코딩된 채널을 디바이스로 송신하는 수단을 더 포함한다. 송신하는 수단은 도 1 의 하나 이상의 인터페이스들 (104), 제 1 디바이스 (102), 도 10 의 무선 인터페이스 (1040), 트랜시버 (1050), 적어도 하나의 인코딩된 신호를 송신하도록 구성된 하나 이상의 다른 구조들 또는 회로들, 또는 이들의 임의의 조합을 포함하거나 또는 이에 대응할 수도 있다.
개시된 양태들 중 하나 이상은 통신 디바이스, 고정 로케이션 데이터 유닛, 모바일 로케이션 데이터 유닛, 모바일 폰, 셀룰러폰, 위성 전화, 컴퓨터, 태블릿, 포터블 컴퓨터, 디스플레이 디바이스, 미디어 플레이어, 또는 데스크탑 컴퓨터를 포함할 수도 있는, 디바이스 (1000) 과 같은, 시스템 또는 장치에서 구현될 수도 있다. 대안적으로 또는 추가적으로, 디바이스 (1000) 는 셋 탑 박스, 엔터테인먼트 유닛, 네비게이션 디바이스, 개인 휴대정보 단말기 (PDA), 모니터, 컴퓨터 모니터, 텔레비전, 튜너, 라디오, 위성 라디오, 뮤직 플레이어, 디지털 뮤직 플레이어, 포터블 뮤직 플레이어, 비디오 플레이어, 디지털 비디오 플레이어, 디지털 비디오 디스크 (DVD) 플레이어, 포터블 디지털 비디오 플레이어, 위성, 운송체, 프로세서를 포함하거나 또는 데이터 또는 컴퓨터 명령들을 저장하거나 또는 취출하는 임의의 다른 디바이스, 또는 이들의 조합을 포함할 수도 있다. 다른 예시적인, 비한정적인 예로서, 시스템 또는 장치는 원격 유닛들, 예컨대 핸드-헬드 개인 통신 시스템들 (PCS) 유닛들, 포터블 데이터 유닛들, 예컨대 위성 위치확인 시스템 (GPS) 인에이블형 디바이스들, 검침 장비, 또는 프로세서를 포함하거나 또는 데이터 또는 컴퓨터 명령들을 저장하거나 또는 취출하는 임의의 다른 디바이스, 또는 이들의 임의의 조합을 포함할 수도 있다.
도 1 내지 도 10 중 하나 이상이 본 개시물의 교시들에 따른 시스템들, 장치들, 및/또는 방법들을 예시할 수도 있지만, 본 개시물은 이들 예시된 시스템들, 장치들, 및/또는 방법들에 한정되지 않는다. 본원에서 예시 또는 설명된 바와 같은 도 1 내지 도 10 중 임의의 도면의 하나 이상의 기능들 또는 컴포넌트들은 도 1 내지 도 10 중 다른 도면의 하나 이상의 다른 부분들과 결합될 수도 있다. 따라서, 어떤 본원에서 설명되는 단일 구현예도 한정하는 것으로 해석되어서는 않되며, 본 개시물의 구현예들은 본 개시물의 교시들로부터 일탈함이 없이 적합하게 결합될 수도 있다. 일 예로서, 도 9 의 방법 (900) 은 도 1 또는 도 4 의 제 1 디바이스 (102) 의 프로세서들에 의해, 도 1 및 도 4 의 제 2 디바이스 (160) 의 프로세서들에 의해, 또는 도 10 의 프로세서들 (1006 또는 1010) 에 의해 수행될 수도 있다. 예시하기 위하여, 도 9 의 방법 (900) 의 부분은 다른 본원에서 설명되는 동작들과 결합될 수도 있다. 추가적으로, 도 9 의 방법 (900) 을 참조하여 설명된 하나 이상의 동작들은 옵션적일 수도 있으며, 적어도 부분적으로 동시에 수행될 수도 있으며, 및/또는 도시 또는 설명된 순서와는 상이한 순서로 수행될 수도 있다.
도 11 을 참조하면, 기지국 (1100) 의 특정의 예시적인 예의 블록도가 도시된다. 여러 구현예들에서, 기지국 (1100) 은 도 11 에 예시된 것보다 더 많은 컴포넌트들 또는 더 적은 컴포넌트들을 가질 수도 있다. 예시적인 예에서, 기지국 (1100) 은 도 1 의, 제 1 디바이스 (104), 제 2 디바이스 (106), 또는 이들의 조합을 포함할 수도 있다. 예시적인 예에서, 기지국 (1100) 은 도 1 내지 도 10 을 참조하여 설명된 방법들 또는 시스템들 중 하나 이상에 따라서 동작할 수도 있다.
기지국 (1100) 은 무선 통신 시스템의 부분일 수도 있다. 무선 통신 시스템은 다수의 기지국들 및 다수의 무선 디바이스들을 포함할 수도 있다. 무선 통신 시스템은 롱텀 에볼류션 (LTE) 시스템, 코드분할 다중접속 (CDMA) 시스템, GSM (Global System for Mobile Communications) 시스템, 무선 로컬 영역 네트워크 (WLAN) 시스템, 또는 어떤 다른 무선 시스템일 수도 있다. CDMA 시스템은 광대역 CDMA (WCDMA), CDMA 1X, EVDO (Evolution-Data Optimized), 시분할 동기 CDMA (TD-SCDMA), 또는 CDMA 의 어떤 다른 버전을 구현할 수도 있다.
무선 디바이스들은 또한 사용자 장비 (UE), 이동국, 터미널, 액세스 단말기, 가입자 유닛, 스테이션, 등으로서 지칭될 수도 있다. 무선 디바이스들은 셀룰러폰, 스마트폰, 태블릿, 무선 모뎀, 개인 휴대정보 단말기 (PDA), 핸드헬드 디바이스, 랩탑 컴퓨터, 스마트북, 넷북, 태블릿, 코드리스 폰, 무선 가입자 회선 (WLL) 국, 블루투스 디바이스, 등을 포함할 수도 있다. 무선 디바이스들은 도 10 의 디바이스 (1000) 를 포함하거나 또는 이에 대응할 수도 있다.
메시지들 및 데이터 (예컨대, 오디오 데이터) 를 전송하고 수신하는 것과 같은, 여러 기능들이 기지국 (1100) 의 하나 이상의 컴포넌트들에 의해 (및/또는 미도시된 다른 컴포넌트들에서) 수행될 수도 있다. 특정의 예에서, 기지국 (1100) 은 프로세서 (1106) (예컨대, CPU) 를 포함한다. 기지국 (1100) 은 트랜스코더 (1110) 를 포함할 수도 있다. 트랜스코더 (1110) 는 오디오 코덱 (1108) 을 포함할 수도 있다. 예를 들어, 트랜스코더 (1110) 는 오디오 코덱 (1108) 의 동작들을 수행하도록 구성된 하나 이상의 컴포넌트들 (예컨대, 회로부) 을 포함할 수도 있다. 다른 예로서, 트랜스코더 (1110) 는 오디오 코덱 (1108) 의 동작들을 수행하는 하나 이상의 컴퓨터-판독가능 명령들을 실행하도록 구성될 수도 있다. 오디오 코덱 (1108) 이 트랜스코더 (1110) 의 컴포넌트로서 예시되지만, 다른 예들에서, 오디오 코덱 (1108) 의 하나 이상의 컴포넌트들이 프로세서 (1106), 다른 프로세싱 컴포넌트, 또는 이들의 조합에 포함될 수도 있다. 예를 들어, 디코더 (1138) (예컨대, 보코더 디코더) 는 수신기 데이터 프로세서 (1164) 에 포함될 수도 있다. 다른 예로서, 인코더 (1136) (예컨대, 보코더 인코더) 는 송신 데이터 프로세서 (1182) 에 포함될 수도 있다.
트랜스코더 (1110) 는 2개 이상의 네트워크들 사이에서 메시지들 및 데이터를 트랜스코딩하도록 기능할 수도 있다. 트랜스코더 (1110) 는 메시지 및 오디오 데이터를 제 1 포맷 (예컨대, 디지털 포맷) 으로부터 제 2 포맷으로 변환하도록 구성될 수도 있다. 예시하기 위하여, 디코더 (1138) 는 제 1 포맷을 가지는 인코딩된 신호들을 디코딩할 수도 있으며, 인코더 (1136) 는 디코딩된 신호들을 제 2 포맷을 가지는 인코딩된 신호들로 인코딩할 수도 있다. 추가적으로, 또는 대안적으로, 트랜스코더 (1110) 는 데이터 레이트 적응을 수행하도록 구성될 수도 있다. 예를 들어, 트랜스코더 (1110) 는 오디오 데이터의 포맷을 변경함이 없이, 데이터 레이트를 상향변환하거나 또는 데이터 레이트를 하향변환할 수도 있다. 예시하기 위하여, 트랜스코더 (1110) 는 64 kbit/s 신호들을 16 kbit/s 신호들로 하향변환할 수도 있다.
오디오 코덱 (1108) 은 인코더 (1136) 및 디코더 (1138) 를 포함할 수도 있다. 인코더 (1136) 는 도 1 의 인코더 (120) 를 포함할 수도 있다. 디코더 (1138) 는 도 1 의 디코더 (162) 를 포함할 수도 있다.
기지국 (1100) 은 메모리 (1132) 를 포함할 수도 있다. 컴퓨터-판독가능 저장 디바이스와 같은, 메모리 (1132) 는 명령들을 포함할 수도 있다. 명령들은 도 1 내지 도 10 의 방법들 및 시스템들을 참조하여 설명된 하나 이상의 동작들을 수행하기 위한, 프로세서 (1106), 트랜스코더 (1110), 또는 이들의 조합에 의해 실행가능한 하나 이상의 명령들을 포함할 수도 있다. 기지국 (1100) 은 안테나들의 어레이에 커플링된, 제 1 트랜시버 (1152) 및 제 2 트랜시버 (1154) 와 같은, 다수의 송신기들 및 수신기들 (예컨대, 트랜시버들) 을 포함할 수도 있다. 안테나들의 어레이는 제 1 안테나 (1142) 및 제 2 안테나 (1144) 를 포함할 수도 있다. 안테나들의 어레이는 도 10 의 디바이스 (1000) 와 같은 하나 이상의 무선 디바이스들과 무선으로 통신하도록 구성될 수도 있다. 예를 들어, 제 2 안테나 (1144) 는 무선 디바이스로부터 데이터 스트림 (1114) (예컨대, 비트 스트림) 을 수신할 수도 있다. 데이터 스트림 (1114) 은 메시지들, 데이터 (예컨대, 인코딩된 음성 데이터), 또는 이들의 조합을 포함할 수도 있다.
기지국 (1100) 은 백홀 접속부와 같은, 네트워크 접속부 (1160) 를 포함할 수도 있다. 네트워크 접속부 (1160) 는 무선 통신 네트워크의 하나 이상의 기지국들 또는 코어 네트워크와 통신하도록 구성될 수도 있다. 예를 들어, 기지국 (1100) 은 코어 네트워크로부터 네트워크 접속부 (1160) 를 통해서 제 2 데이터 스트림 (예컨대, 메시지들 또는 오디오 데이터) 을 수신할 수도 있다. 기지국 (1100) 은 제 2 데이터 스트림을 프로세싱하여 메시지들 또는 오디오 데이터를 발생시키고, 메시지들 또는 오디오 데이터를 안테나들의 어레이의 하나 이상의 안테나들을 통해서 하나 이상의 무선 디바이스에 또는 네트워크 접속부 (1160) 를 통해서 다른 기지국에 제공할 수도 있다. 특정의 구현예에서, 네트워크 접속부 (1160) 는 예시적인, 비한정적인 예로서 광역 네트워크 (WAN) 접속부일 수도 있다. 일부 구현예들에서, 코어 네트워크는 공중 교환 전화 네트워크 (PSTN), 패킷 백본 네트워크, 또는 양자를 포함하거나 또는 이들에 대응할 수도 있다.
기지국 (1100) 은 네트워크 접속부 (1160) 및 프로세서 (1106) 에 커플링된 미디어 게이트웨이 (1170) 를 포함할 수도 있다. 미디어 게이트웨이 (1170) 는 상이한 원격 통신들 기술들의 미디어 스트림들 사이에 변환하도록 구성될 수도 있다. 예를 들어, 미디어 게이트웨이 (1170) 는 상이한 송신 프로토콜들, 상이한 코딩 방식들, 또는 양자 사이를 변환할 수도 있다. 예시하기 위하여, 미디어 게이트웨이 (1170) 는 예시적인, 비한정적인 예로서, PCM 신호들로부터 실시간 전송 프로토콜 (RTP) 신호들로 변환할 수도 있다. 미디어 게이트웨이 (1170) 는 패킷 교환 네트워크들 (예컨대, VoIP (Voice over Internet Protocol) 네트워크, IP 멀티미디어 서브시스템 (IMS), 4세대 (4G) 무선 네트워크, 예컨대 LTE, WiMax, 및 UMB, 등), 회선 스위칭 네트워크들 (예컨대, PSTN), 및 하이브리드 네트워크들 (예컨대, 2세대 (2G) 무선 네트워크, 예컨대 GSM, GPRS, 및 에지, 3세대 (3G) 무선 네트워크, 예컨대 WCDMA, EV-DO, 및 HSPA, 등) 사이의 데이터를 변환할 수도 있다.
추가적으로, 미디어 게이트웨이 (1170) 는 트랜스코드를 포함할 수도 있으며, 코덱들이 호환불가능할 때 데이터를 트랜스코딩하도록 구성될 수도 있다. 예를 들어, 미디어 게이트웨이 (1170) 는 예시적인, 비한정적인 예로서, 적응적 멀티-레이트 (AMR) 코덱과 G.711 코덱 사이에 트랜스코딩할 수도 있다. 미디어 게이트웨이 (1170) 는 라우터 및 복수의 물리적인 인터페이스들을 포함할 수도 있다. 일부 구현예들에서, 미디어 게이트웨이 (1170) 는 또한 제어기 (미도시) 를 포함할 수도 있다. 특정의 구현예에서, 미디어 게이트웨이 제어기는 미디어 게이트웨이 (1170) 의 외부에 있거나, 기지국 (1100) 의 외부에 있거나, 또는 양자일 수도 있다. 미디어 게이트웨이 제어기는 다수의 미디어 게이트웨이들의 동작들을 제어하고 조정할 수도 있다. 미디어 게이트웨이 (1170) 는 미디어 게이트웨이 제어기로부터 제어 신호들을 수신할 수도 있으며, 상이한 송신 기술들 사이를 브릿지하도록 기능할 수도 있으며, 최종-사용자 능력들 및 접속들에 서비스를 추가할 수도 있다.
기지국 (1100) 은 트랜시버들 (1152, 1154), 수신기 데이터 프로세서 (1164), 및 프로세서 (1106) 에 커플링된 복조기 (1162) 를 포함할 수도 있으며, 수신기 데이터 프로세서 (1164) 는 프로세서 (1106) 에 커플링될 수도 있다. 복조기 (1162) 는 트랜시버들 (1152, 1154) 로부터 수신된 변조된 신호들을 복조하여, 복조된 데이터를 수신기 데이터 프로세서 (1164) 에 제공하도록 구성될 수도 있다. 수신기 데이터 프로세서 (1164) 는 복조된 데이터로부터 메시지 또는 오디오 데이터를 추출하여 메시지 또는 오디오 데이터를 프로세서 (1106) 로 전송하도록 구성될 수도 있다.
기지국 (1100) 은 송신 데이터 프로세서 (1182) 및 송신 다중 입력-다중 출력 (MIMO) 프로세서 (1184) 를 포함할 수도 있다. 송신 데이터 프로세서 (1182) 는 프로세서 (1106) 및 송신 MIMO 프로세서 (1184) 에 커플링될 수도 있다. 송신 MIMO 프로세서 (1184) 는 트랜시버들 (1152, 1154) 및 프로세서 (1106) 에 커플링될 수도 있다. 일부 구현예들에서, 송신 MIMO 프로세서 (1184) 는 미디어 게이트웨이 (1170) 에 커플링될 수도 있다. 송신 데이터 프로세서 (1182) 는 예시적인, 비한정적인 예들로서, 프로세서 (1106) 로부터 메시지들 또는 오디오 데이터를 수신하고 코딩 방식, 예컨대 CDMA 또는 직교 주파수-분할 멀티플렉싱 (OFDM) 에 기초하여 메시지들 또는 오디오 데이터를 코딩하도록 구성될 수도 있다. 송신 데이터 프로세서 (1182) 는 코딩된 데이터를 송신 MIMO 프로세서 (1184) 에 제공할 수도 있다.
코딩된 데이터는 멀티플렉싱된 데이터를 발생시키기 위해 CDMA 또는 OFDM 기법들을 이용하여 파일럿 데이터와 같은 다른 데이터와 멀티플렉싱될 수도 있다. 멀티플렉싱된 데이터는 그후 변조 심볼들을 발생시키기 위해 특정의 변조 방식 (예컨대, 2진 위상-시프트 키잉 ("BPSK"), 직교 위상-시프트 키잉 ("QSPK"), M-ary 위상-시프트 키잉 ("M-PSK"), M-ary 직교 진폭 변조 ("M-QAM"), 등) 에 기초하여 송신 데이터 프로세서 (1182) 에 의해 변조될 (즉, 심볼 맵핑될) 수도 있다. 특정의 구현예에서, 코딩된 데이터 및 다른 데이터는 상이한 변조 방식들을 이용하여 변조될 수도 있다. 각각의 데이터 스트림에 대한 데이터 레이트, 코딩, 및 변조는 프로세서 (1106) 에 의해 실행되는 명령들에 의해 결정될 수도 있다.
송신 MIMO 프로세서 (1184) 는 송신 데이터 프로세서 (1182) 로부터 변조 심볼들을 수신하도록 구성될 수도 있으며, 변조 심볼들을 추가로 프로세싱할 수도 있으며 데이터에 대해 빔형성을 수행할 수도 있다. 예를 들어, 송신 MIMO 프로세서 (1184) 는 빔형성 가중치들을 변조 심볼들에 적용할 수도 있다. 빔형성 가중치들은 변조 심볼들이 송신되는 안테나들의 어레이의 하나 이상의 안테나들에 대응할 수도 있다.
동작 동안, 기지국 (1100) 의 제 2 안테나 (1144) 는 데이터 스트림 (1114) 을 수신할 수도 있다. 제 2 트랜시버 (1154) 는 제 2 안테나 (1144) 로부터 데이터 스트림 (1114) 을 수신할 수도 있으며 데이터 스트림 (1114) 을 복조기 (1162) 에 제공할 수도 있다. 복조기 (1162) 는 데이터 스트림 (1114) 의 변조된 신호들을 복조하여 복조된 데이터를 수신기 데이터 프로세서 (1164) 에 제공할 수도 있다. 수신기 데이터 프로세서 (1164) 는 복조된 데이터로부터 오디오 데이터를 추출하여, 추출된 오디오 데이터를 프로세서 (1106) 에 제공할 수도 있다.
프로세서 (1106) 는 트랜스코딩을 위해 오디오 데이터를 트랜스코더 (1110) 에 제공할 수도 있다. 트랜스코더 (1110) 의 디코더 (1138) 는 오디오 데이터를 제 1 포맷으로부터 디코딩된 오디오 데이터로 디코딩할 수도 있으며, 인코더 (1136) 는 디코딩된 오디오 데이터를 제 2 포맷으로 인코딩할 수도 있다. 일부 구현예들에서, 인코더 (1136) 는 무선 디바이스로부터 수신된 것보다 더 높은 데이터 레이트 (예컨대, 상향변환) 또는 더 낮은 데이터 레이트 (예컨대, 하향변환) 를 이용하여 오디오 데이터를 인코딩할 수도 있다. 다른 구현예들에서, 오디오 데이터는 트랜스코딩되지 않을 수도 있다. 트랜스코딩 (예컨대, 디코딩 및 인코딩) 이 트랜스코더 (1110) 에 의해 수행되는 것으로 예시되지만, 트랜스코딩 동작들 (예컨대, 디코딩 및 인코딩) 은 기지국 (1100) 의 다수의 컴포넌트들에 의해 수행될 수도 있다. 예를 들어, 디코딩은 수신기 데이터 프로세서 (1164) 에 의해 수행될 수도 있으며, 인코딩은 송신 데이터 프로세서 (1182) 에 의해 수행될 수도 있다. 일부 구현예들에서, 프로세서 (1106) 는 다른 송신 프로토콜, 코딩 방식, 또는 양자로의 변환을 위해 오디오 데이터를 미디어 게이트웨이 (1170) 에 제공할 수도 있다. 미디어 게이트웨이 (1170) 는 변환된 데이터를 네트워크 접속부 (1160) 를 통해서 다른 기지국 또는 코어 네트워크에 제공할 수도 있다.
인코더 (1136) 는 참조 채널 및 목표 채널을 수신할 수도 있다. 인코더 (1136) 는 또한 제 1 부정합 값과 제 2 부정합 값 사이의 차이를 결정할 수도 있다. 인코더 (1136) 는 또한 차이에 기초하여 목표 샘플들의 세트를 조정하여 조정된 목표 샘플들의 세트를 발생시킬 수도 있다. 인코더 (1136) 는 또한 참조 샘플들의 세트 및 조정된 목표 샘플들의 세트에 기초하여 적어도 하나의 인코딩된 채널을 발생시킬 수도 있다. 인코더 (1136) 는 또한 적어도 하나의 인코딩된 채널을 송신할 수도 있다. 디코더 (118) 는 참조 채널 표시자 (164), 비-인과적 부정합 값 (162), 이득 파라미터 (160), 또는 이들의 조합에 기초하여, 인코딩된 신호들을 디코딩함으로써 제 1 출력 신호 (126) 및 제 2 출력 신호 (128) 를 발생시킬 수도 있다. 트랜스코딩된 데이터와 같은, 인코더 (1136) 에서 발생된 인코딩된 오디오 데이터는 프로세서 (1106) 를 경유하여 송신 데이터 프로세서 (1182) 또는 네트워크 접속부 (1160) 에 제공될 수도 있다.
트랜스코더 (1110) 로부터의 트랜스코딩된 오디오 데이터는 OFDM 과 같은, 변조 방식에 따라서 코딩하여 변조 심볼들을 발생시키기 위해 송신 데이터 프로세서 (1182) 에 제공될 수도 있다. 송신 데이터 프로세서 (1182) 는 추가적인 프로세싱 및 빔형성을 위해 변조 심볼들을 송신 MIMO 프로세서 (1184) 에 제공할 수도 있다. 송신 MIMO 프로세서 (1184) 는 빔형성 가중치들을 적용할 수도 있으며, 변조 심볼들을 제 1 트랜시버 (1152) 를 통해서 제 1 안테나 (1142) 와 같은, 안테나들의 어레이의 하나 이상의 안테나들에 제공할 수도 있다. 따라서, 기지국 (1100) 은 무선 디바이스로부터 수신된 데이터 스트림 (1114) 에 대응할 수도 있는 트랜스코딩된 데이터 스트림 (1116) 을 다른 무선 디바이스에 제공할 수도 있다. 트랜스코딩된 데이터 스트림 (1116) 은 데이터 스트림 (1114) 과는 상이한 인코딩 포맷, 데이터 레이트, 또는 양쪽을 가질 수도 있다. 다른 구현예들에서, 트랜스코딩된 데이터 스트림 (1116) 은 다른 기지국 또는 코어 네트워크로의 송신을 위해 네트워크 접속부 (1160) 에 제공될 수도 있다.
기지국 (1100) 은 따라서, 프로세서 (예컨대, 프로세서 (1106) 또는 트랜스코더 (1110)) 에 의해 실행될 때, 프로세서로 하여금, 참조 채널 및 목표 채널을 수신하는 것을 포함하는 동작들을 수행하게 하는 명령들을 저장하는 컴퓨터-판독가능 저장 디바이스 (예컨대, 메모리 (1132)) 를 포함할 수도 있다. 동작들은 또한 제 1 부정합 값과 제 2 부정합 값 사이의 차이를 결정하는 것을 포함한다. 동작들은 또한 조정된 목표 샘플들의 세트를 발생시키기 위해 차이에 기초하여 목표 샘플들의 세트를 조정하는 것을 포함한다. 동작들은 또한 참조 샘플들의 세트 및 조정된 목표 샘플들의 세트에 기초하여 적어도 하나의 인코딩된 채널을 발생시키는 것을 포함한다. 동작들은 또한 적어도 하나의 인코딩된 채널을 송신하는 것을 포함한다.
당업자들은 본원에서 개시된 구현예들과 관련하여 설명되는 여러가지 예시적인 로직 블록들, 구성들, 모듈들, 회로들 및 알고리즘 단계들이 전자적 하드웨어, 프로세서에 의해 실행되는 컴퓨터 소프트웨어, 또는 양쪽의 조합들로서 구현될 수도 있음을 또한 알 수 있을 것이다. 다양한 예시적인 컴포넌트들, 블록들, 구성들, 모듈들, 회로들, 및 단계들이 일반적으로 그들의 기능의 관점에서 위에서 설명되었다. 이런 기능이 하드웨어 또는 프로세서 실행가능한 명령들로 구현되는지 여부는 특정의 애플리케이션 및 전체 시스템에 부과되는 설계 제한 사항들에 의존한다. 숙련자들은 각각의 특정의 애플리케이션 마다 설명한 기능을 여러가지 방법으로 구현할 수도 있으며, 그러나 이런 구현 결정들은 본 개시물의 범위로부터의 일탈을 초래하는 것으로 해석되어서는 안된다.
본원에서 본 개시물과 관련하여 설명되는 방법 또는 알고리즘의 단계들은 하드웨어로, 프로세서에 의해 실행되는 소프트웨어 모듈로, 또는 이 둘의 조합으로 직접 구현될 수도 있다. 소프트웨어 모듈은 랜덤 액세스 메모리 (RAM), 플래시 메모리, 판독 전용 메모리 (ROM), 프로그래밍가능 판독 전용 메모리 (PROM), 소거가능한 프로그래밍가능 판독 전용 메모리 (EPROM), 전기적으로 소거가능한 프로그래밍가능 판독 전용 메모리 (EEPROM), 레지스터들, 하드 디스크, 착탈식 디스크, 컴팩트 디스크 판독 전용 메모리 (CD-ROM), 또는 당업계에 알려져 있는 임의의 다른 유형의 비-일시성 저장 매체에 상주할 수도 있다. 예시적인 저장매체는 프로세서가 저장 매체로부터 정보를 판독하고 저장 매체에 정보를 기록할 수 있도록 프로세서에 커플링된다. 대안적으로는, 저장 매체는 프로세서에 통합될 수도 있다. 프로세서 및 저장 매체는 주문형 집적 회로 (ASIC) 에 상주할 수도 있다. ASIC 는 컴퓨팅 디바이스 및 사용자 터미널에 상주할 수도 있다. 대안적으로는, 프로세서 및 저장 매체는 컴퓨팅 디바이스 및 사용자 터미널에 별개의 컴포넌트들로서 상주할 수도 있다.
상기 설명은 당업자가 개시된 구현예들을 실시하고 이용가능하도록 제공된다. 이들 구현예들에 대한 다양한 변경들은 당업자들에게 쉽게 알 수 있을 것이며, 본원에서 정의하는 원리들은 본 개시물의 사상 또는 범위로부터 일탈함이 없이, 다른 구현예들에 적용될 수도 있다. 따라서, 본 개시물은 본원에서 나타낸 구현들에 한정하려는 것이 아니라, 다음 청구범위에 의해 정의되는 바와 같은 원리들 및 신규한 특징들과 가능한 부합하는 최광의의 범위를 부여하려는 것이다.

Claims (41)

  1. 다중-채널 오디오 신호들의 코딩을 위한 방법으로서,
    제 1 디바이스에서, 참조 채널 및 목표 채널을 수신하는 단계로서, 상기 참조 채널은 참조 샘플들의 세트를 포함하고 상기 목표 채널은 목표 샘플들의 세트를 포함하는, 상기 수신하는 단계;
    상기 제 1 디바이스에서, 제 1 부정합 값과 제 2 부정합 값 사이의 편차를 결정하는 단계로서, 상기 제 1 부정합 값은 상기 참조 샘플들의 세트의 제 1 참조 샘플과 상기 목표 샘플들의 세트의 제 1 목표 샘플 사이의 시간 부정합의 양을 표시하고, 상기 제 2 부정합 값은 상기 참조 샘플들의 세트의 제 2 참조 샘플과 상기 목표 샘플들의 세트의 제 2 목표 샘플 사이의 시간 부정합의 양을 표시하는, 상기 결정하는 단계;
    상기 제 1 디바이스에서, 상기 편차를 제 1 임계치와 비교하는 단계;
    상기 제 1 디바이스에서, 조정된 목표 샘플들의 세트를 발생시키기 위해, 상기 편차에 기초하여, 그리고 상기 비교에 기초하여, 상기 목표 샘플들의 세트를 조정하는 단계;
    상기 제 1 디바이스에서, 상기 참조 샘플들의 세트 및 조정된 상기 목표 샘플들의 세트에 기초하여, 적어도 하나의 인코딩된 채널을 발생시키는 단계; 및
    상기 적어도 하나의 인코딩된 채널을 상기 제 1 디바이스로부터 제 2 디바이스로 송신하는 단계를 포함하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  2. 제 1 항에 있어서,
    상기 편차에 기초하여, 그리고 상기 비교에 기초하여, 상기 목표 샘플들의 세트를 조정하는 단계는,
    상기 편차가 상기 제 1 임계치를 초과하지 않는다는 결정에 응답하여, 상기 편차에 기초하여, 상기 목표 샘플들의 세트에 대해 제 1 내삽을 수행하는 단계; 또는
    상기 편차가 상기 제 1 임계치를 초과한다는 결정에 응답하여, 상기 편차에 기초하여, 상기 목표 샘플들의 세트에 대해 제 2 내삽을 수행하는 단계를 포함하며,
    상기 제 1 내삽은 상기 제 2 내삽과는 상이한, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  3. 제 2 항에 있어서,
    상기 제 1 내삽을 수행하는 단계는 Sinc 내삽 및 Lagrange 내삽 중 적어도 하나를 수행하는 단계를 포함하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  4. 제 2 항에 있어서,
    상기 제 1 내삽을 수행하는 단계는 하이브리드 내삽을 수행하는 단계를 포함하며,
    상기 하이브리드 내삽은 Sinc 내삽 및 Lagrange 내삽 양자를 이용하는 단계를 포함하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  5. 제 2 항에 있어서,
    상기 제 2 내삽을 수행하는 단계는 중첩 및 가산 내삽을 수행하는 단계를 포함하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  6. 제 5 항에 있어서,
    상기 중첩 및 가산 내삽을 수행하는 단계는 상기 제 1 부정합 값 및 상기 제 2 부정합 값에 기초하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  7. 제 6 항에 있어서,
    상기 중첩 및 가산 내삽을 수행하는 단계는 제 1 윈도우 함수 및 제 2 윈도우 함수에 기초하며, 상기 제 2 윈도우 함수는 상기 제 1 윈도우 함수에 의존하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  8. 제 1 항에 있어서,
    상기 목표 샘플들의 세트의 프레임 유형에 기초하여 상기 제 1 임계치를 결정하는 단계를 더 포함하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  9. 제 8 항에 있어서,
    상기 프레임 유형은 상기 목표 샘플들의 세트가 음성, 음악, 및 잡음 중 적어도 하나에 대응한다는 것을 표시하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  10. 제 9 항에 있어서,
    상기 목표 샘플들의 세트의 프레임 유형을 표시하는 정보에 기초하여 상기 제 1 임계치를 결정하는 단계는 상기 프레임 유형이 음악에 대응한다는 결정에 응답하여, 상기 제 1 임계치를 감소시키는 단계를 포함하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  11. 제 1 항에 있어서,
    평활화 인자에 기초하여 상기 제 1 임계치를 결정하는 단계를 더 포함하며, 상기 평활화 인자는 교차-상관 값의 평활도 세팅을 표시하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  12. 제 1 항에 있어서,
    참조 다운-샘플링된 채널을 발생시키기 위해 상기 참조 채널을 다운-샘플링하는 단계;
    목표 다운-샘플링된 채널을 발생시키기 위해 상기 목표 채널을 다운-샘플링하는 단계; 및
    상기 참조 다운-샘플링된 채널과 상기 목표 다운-샘플링된 채널의 비교들에 기초하여, 상기 제 1 부정합 값 및 상기 제 2 부정합 값을 결정하는 단계를 더 포함하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  13. 제 1 항에 있어서,
    상기 편차, 참조 채널 표시자, 상기 참조 채널의 에너지 및 상기 목표 채널의 에너지, 및 과도 검출기 중 하나에 기초하여, 상기 목표 샘플들의 세트를 조정할지 여부를 결정하는 단계를 더 포함하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  14. 제 1 항에 있어서,
    상기 목표 샘플들의 세트의 제 1 부분은 상기 참조 샘플들의 세트의 제 1 부분에 대해 상기 제 1 부정합 값에 기초하는 양 만큼 시간-시프트되며, 상기 목표 샘플들의 세트의 제 2 부분은 상기 참조 샘플들의 세트의 제 2 부분에 대해 상기 제 2 부정합 값에 기초하는 양 만큼 시간-시프트되는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  15. 제 2 항에 있어서,
    상기 제 1 내삽은 확산 인자에 대응하는 샘플들의 수에 대해 수행되는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  16. 제 15 항에 있어서,
    상기 확산 인자의 값은 상기 목표 채널의 프레임 내 샘플들의 수 이하인, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  17. 제 1 항에 있어서,
    상기 제 1 부정합 값은 제 1 마이크로폰을 통한 제 1 오디오 신호의 프레임의 수신과 제 2 마이크로폰을 통한 제 2 오디오 신호의 대응하는 프레임의 수신 사이의 시간 지연의 양에 대응하며, 상기 제 1 오디오 신호는 상기 참조 채널 또는 상기 목표 채널 중 하나 중 하나에 대응하며, 상기 제 2 오디오 신호는 상기 참조 채널 또는 상기 목표 채널 중 다른 하나에 대응하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  18. 제 1 항에 있어서,
    상기 적어도 하나의 인코딩된 채널은 중간 채널, 측면 채널, 또는 양자를 포함하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  19. 제 1 항에 있어서,
    제 1 오디오 신호는 우측 채널 또는 좌측 채널 중 하나를 포함하며, 제 2 오디오 신호는 상기 우측 채널 또는 상기 좌측 채널 중 다른 하나를 포함하며,
    상기 제 1 오디오 신호는 상기 참조 채널 또는 상기 목표 채널 중 하나에 대응하며, 상기 제 2 오디오 신호는 상기 참조 채널 또는 상기 목표 채널 중 다른 하나에 대응하는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  20. 제 1 항에 있어서,
    상기 제 1 디바이스는 모바일 디바이스 또는 기지국에 통합되는, 다중-채널 오디오 신호들의 코딩을 위한 방법.
  21. 다중-채널 오디오 코딩 디바이스로서,
    인코더로서,
    참조 채널 및 목표 채널을 수신하는 것으로서, 상기 참조 채널은 참조 샘플들의 세트를 포함하고 상기 목표 채널은 목표 샘플들의 세트를 포함하는, 상기 참조 채널 및 목표 채널을 수신하고;
    제 1 부정합 값과 제 2 부정합 값 사이의 편차를 결정하는 것으로서, 상기 제 1 부정합 값은 상기 참조 샘플들의 세트의 제 1 참조 샘플과 상기 목표 샘플들의 세트의 제 1 목표 샘플 사이의 시간 부정합의 양을 표시하고, 상기 제 2 부정합 값은 상기 참조 샘플들의 세트의 제 2 참조 샘플과 상기 목표 샘플들의 세트의 제 2 목표 샘플 사이의 시간 부정합의 양을 표시하는, 상기 편차를 결정하고;
    상기 편차를 제 1 임계치와 비교하고;
    조정된 목표 샘플들의 세트를 발생시키기 위해, 상기 편차에 기초하여, 그리고 상기 비교에 기초하여, 상기 목표 샘플들의 세트를 조정하고; 그리고
    상기 참조 샘플들의 세트 및 조정된 상기 목표 샘플들의 세트에 기초하여, 적어도 하나의 인코딩된 채널을 발생시키도록 구성된, 상기 인코더; 및
    상기 적어도 하나의 인코딩된 채널을 송신하도록 구성된 네트워크 인터페이스를 포함하는, 다중-채널 오디오 코딩 디바이스.
  22. 제 21 항에 있어서,
    상기 인코더는,
    상기 편차가 상기 제 1 임계치를 초과하지 않는다는 결정에 응답하여, 상기 편차에 기초하여, 상기 목표 샘플들의 세트에 대해 제 1 내삽을 수행하거나; 또는
    상기 편차가 상기 제 1 임계치를 초과한다는 결정에 응답하여, 상기 편차에 기초하여, 상기 목표 샘플들의 세트에 대해 제 2 내삽을 수행하도록 구성된 샘플 조정기를 포함하며,
    상기 제 1 내삽은 상기 제 2 내삽과는 상이한, 다중-채널 오디오 코딩 디바이스.
  23. 제 22 항에 있어서,
    상기 제 1 내삽은 Sinc 내삽 및 Lagrange 내삽 중 적어도 하나를 포함하는, 다중-채널 오디오 코딩 디바이스.
  24. 제 22 항에 있어서,
    상기 제 1 내삽은 하이브리드 내삽을 포함하며, 상기 하이브리드 내삽은 Sinc 내삽 및 Lagrange 내삽 양자를 포함하는, 다중-채널 오디오 코딩 디바이스.
  25. 제 22 항에 있어서,
    상기 제 2 내삽은 중첩 및 가산 내삽을 포함하는, 다중-채널 오디오 코딩 디바이스.
  26. 제 25 항에 있어서,
    상기 중첩 및 가산 내삽은 상기 제 1 부정합 값 및 상기 제 2 부정합 값에 기초하는, 다중-채널 오디오 코딩 디바이스.
  27. 제 25 항에 있어서,
    상기 중첩 및 가산 내삽은 제 1 윈도우 함수 및 제 2 윈도우 함수에 기초하며, 상기 제 2 윈도우 함수는 상기 제 1 윈도우 함수에 의존하는, 다중-채널 오디오 코딩 디바이스.
  28. 제 21 항에 있어서,
    상기 제 1 부정합 값 및 상기 제 2 부정합 값을 결정하도록 구성된 시프트 추정기를 더 포함하며,
    상기 제 1 부정합 값 및 상기 제 2 부정합 값은 목표 다운-샘플링된 채널에 대한 참조 다운-샘플링된 채널의 비교들에 기초하여 결정되며, 상기 참조 다운-샘플링된 채널은 상기 참조 채널에 기초하며, 상기 목표 다운-샘플링된 채널은 상기 목표 채널에 기초하는, 다중-채널 오디오 코딩 디바이스.
  29. 제 21 항에 있어서,
    제 1 마이크로폰으로부터 제 1 오디오 신호를 수신하도록 구성된 제 1 입력 인터페이스; 및
    제 2 마이크로폰으로부터 제 2 오디오 신호를 수신하도록 구성된 제 2 입력 인터페이스를 더 포함하며,
    상기 제 1 오디오 신호는 상기 참조 채널 또는 상기 목표 채널 중 하나에 대응하고, 상기 제 2 오디오 신호는 상기 참조 채널 또는 상기 목표 채널 중 다른 하나에 대응하는, 다중-채널 오디오 코딩 디바이스.
  30. 제 21 항에 있어서,
    상기 인코더 및 상기 네트워크 인터페이스는 모바일 디바이스 또는 기지국에 통합되는, 다중-채널 오디오 코딩 디바이스.
  31. 다중-채널 오디오 코딩 장치로서,
    참조 샘플들의 세트를 포함하는 참조 채널을 수신하는 수단;
    목표 샘플들의 세트를 포함하는 목표 채널을 수신하는 수단;
    제 1 부정합 값과 제 2 부정합 값 사이의 편차를 결정하는 수단으로서, 상기 제 1 부정합 값은 상기 참조 샘플들의 세트의 제 1 참조 샘플과 상기 목표 샘플들의 세트의 제 1 목표 샘플 사이의 시간 부정합의 양을 표시하고, 상기 제 2 부정합 값은 상기 참조 샘플들의 세트의 제 2 참조 샘플과 상기 목표 샘플들의 세트의 제 2 목표 샘플 사이의 시간 부정합의 양을 표시하는, 상기 결정하는 수단;
    상기 편차를 제 1 임계치와 비교하는 수단;
    조정된 목표 샘플들의 세트를 발생시키기 위해, 상기 편차에 기초하여, 그리고 상기 비교에 기초하여, 상기 목표 샘플들의 세트를 조정하는 수단;
    상기 참조 샘플들의 세트 및 조정된 상기 목표 샘플들의 세트에 기초하여 적어도 하나의 인코딩된 채널을 발생시키는 수단; 및
    상기 적어도 하나의 인코딩된 채널을 송신하는 수단을 포함하는, 다중-채널 오디오 코딩 장치.
  32. 제 31 항에 있어서,
    상기 편차에 기초하여, 그리고 상기 비교에 기초하여, 상기 목표 샘플들의 세트를 조정하는 수단은,
    상기 편차가 상기 제 1 임계치를 초과하지 않는다는 결정에 응답하여, 상기 편차에 기초하여, 상기 목표 샘플들의 세트에 대해 제 1 내삽을 수행하는 수단; 또는
    상기 편차가 상기 제 1 임계치를 초과한다는 결정에 응답하여, 상기 편차에 기초하여, 상기 목표 샘플들의 세트에 대해 제 2 내삽을 수행하는 수단을 포함하며,
    상기 제 1 내삽은 상기 제 2 내삽과는 상이한, 다중-채널 오디오 코딩 장치.
  33. 제 32 항에 있어서,
    상기 제 1 내삽을 수행하는 수단은 Sinc 내삽 및 Lagrange 내삽 중 적어도 하나를 수행하는 수단을 포함하는, 다중-채널 오디오 코딩 장치.
  34. 제 32 항에 있어서,
    상기 제 2 내삽을 수행하는 수단은 중첩 및 가산 내삽을 수행하는 수단을 포함하는, 다중-채널 오디오 코딩 장치.
  35. 제 31 항에 있어서,
    상기 편차, 참조 채널 표시자, 상기 참조 채널의 에너지 및 상기 목표 채널의 에너지, 및 과도 검출기 중 하나에 기초하여, 상기 목표 샘플들의 세트를 조정할지 여부를 결정하는 수단을 더 포함하는, 다중-채널 오디오 코딩 장치.
  36. 제 31 항에 있어서,
    제 1 오디오 신호는 우측 채널 또는 좌측 채널 중 하나를 포함하며, 제 2 오디오 신호는 상기 우측 채널 또는 상기 좌측 채널 중 다른 하나를 포함하고,
    상기 제 1 오디오 신호는 상기 참조 채널 또는 상기 목표 채널 중 하나에 대응하며, 상기 제 2 오디오 신호는 상기 참조 채널 또는 상기 목표 채널 중 다른 하나에 대응하는, 다중-채널 오디오 코딩 장치.
  37. 프로세서에 의해 실행될 때, 상기 프로세서로 하여금, 동작들을 수행하게 하는 명령들을 저장하는 비일시성 컴퓨터-판독가능 저장 매체로서,
    상기 동작들은,
    제 1 디바이스에서, 참조 채널 및 목표 채널을 수신하는 것으로서, 상기 참조 채널은 참조 샘플들의 세트를 포함하고 상기 목표 채널은 목표 샘플들의 세트를 포함하는, 상기 수신하는 것;
    상기 제 1 디바이스에서, 제 1 부정합 값과 제 2 부정합 값 사이의 편차를 결정하는 것으로서, 상기 제 1 부정합 값은 상기 참조 샘플들의 세트의 제 1 참조 샘플과 상기 목표 샘플들의 세트의 제 1 목표 샘플 사이의 시간 부정합의 양을 표시하고, 상기 제 2 부정합 값은 상기 참조 샘플들의 세트의 제 2 참조 샘플과 상기 목표 샘플들의 세트의 제 2 목표 샘플 사이의 시간 부정합의 양을 표시하는, 상기 결정하는 것;
    상기 제 1 디바이스에서, 상기 편차를 제 1 임계치와 비교하는 것;
    상기 제 1 디바이스에서, 조정된 목표 샘플들의 세트를 발생시키기 위해, 상기 편차에 기초하여, 그리고 상기 비교에 기초하여, 상기 목표 샘플들의 세트를 조정하는 것;
    상기 제 1 디바이스에서, 상기 참조 샘플들의 세트 및 조정된 상기 목표 샘플들의 세트에 기초하여, 적어도 하나의 인코딩된 채널을 발생시키는 것; 및
    상기 적어도 하나의 인코딩된 채널을 상기 제 1 디바이스로부터 제 2 디바이스로 송신하는 것을 포함하는, 비일시성 컴퓨터-판독가능 저장 매체.
  38. 제 37 항에 있어서,
    상기 동작들은,
    상기 편차가 상기 제 1 임계치를 초과하지 않는다는 결정에 응답하여, 상기 편차에 기초하여, 상기 목표 샘플들의 세트에 대해 제 1 내삽을 수행하는 것; 또는
    상기 편차가 상기 제 1 임계치를 초과한다는 결정에 응답하여, 상기 편차에 기초하여, 상기 목표 샘플들의 세트에 대해 제 2 내삽을 수행하는 것을 포함하며,
    상기 제 1 내삽은 상기 제 2 내삽과는 상이한, 비일시성 컴퓨터-판독가능 저장 매체.
  39. 제 38 항에 있어서,
    상기 제 1 내삽은 Sinc 내삽 및 Lagrange 내삽 중 적어도 하나를 포함하는, 비일시성 컴퓨터-판독가능 저장 매체.
  40. 제 38 항에 있어서,
    상기 제 1 내삽은 하이브리드 내삽을 포함하며, 상기 하이브리드 내삽은 Sinc 내삽 및 Lagrange 내삽 양자를 포함하는, 비일시성 컴퓨터-판독가능 저장 매체.
  41. 제 38 항에 있어서,
    상기 제 2 내삽은 중첩 및 가산 내삽을 포함하는, 비일시성 컴퓨터-판독가능 저장 매체.
KR1020207006776A 2017-09-12 2018-09-10 프레임간 시간 시프트 편차들에 대한 채널 조정 방법의 선택 KR102708813B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762557373P 2017-09-12 2017-09-12
US62/557,373 2017-09-12
US16/115,166 2018-08-28
US16/115,166 US10872611B2 (en) 2017-09-12 2018-08-28 Selecting channel adjustment method for inter-frame temporal shift variations
PCT/US2018/050265 WO2019055347A1 (en) 2017-09-12 2018-09-10 SELECTION CHANNEL ADJUSTMENT METHOD FOR INTER-FRAME TIME SHIFT VARIATIONS

Publications (2)

Publication Number Publication Date
KR20200051620A true KR20200051620A (ko) 2020-05-13
KR102708813B1 KR102708813B1 (ko) 2024-09-23

Family

ID=

Also Published As

Publication number Publication date
EP3682445A1 (en) 2020-07-22
AU2018331317B2 (en) 2023-06-15
SG11202000706PA (en) 2020-03-30
BR112020004753A2 (pt) 2020-09-15
CN111095403A (zh) 2020-05-01
EP3682445C0 (en) 2024-02-14
AU2018331317A1 (en) 2020-02-20
TW201921339A (zh) 2019-06-01
WO2019055347A1 (en) 2019-03-21
CN111095403B (zh) 2023-11-03
US10872611B2 (en) 2020-12-22
EP3682445B1 (en) 2024-02-14
US20190080704A1 (en) 2019-03-14
TWI800528B (zh) 2023-05-01

Similar Documents

Publication Publication Date Title
KR102230623B1 (ko) 다중의 오디오 신호들의 인코딩
KR102019617B1 (ko) 프레임간 시간 시프트 변동들에 대한 채널 조정
US11823689B2 (en) Stereo parameters for stereo decoding
EP3391371B1 (en) Temporal offset estimation
EP3682445B1 (en) Selecting channel adjustment method for inter-frame temporal shift variations
KR102708813B1 (ko) 프레임간 시간 시프트 편차들에 대한 채널 조정 방법의 선택

Legal Events

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