KR20100134627A - 오디오 신호 디코더, 시간 워핑 윤곽선 데이터 공급기, 방법 및 컴퓨터 프로그램 - Google Patents

오디오 신호 디코더, 시간 워핑 윤곽선 데이터 공급기, 방법 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20100134627A
KR20100134627A KR1020107021817A KR20107021817A KR20100134627A KR 20100134627 A KR20100134627 A KR 20100134627A KR 1020107021817 A KR1020107021817 A KR 1020107021817A KR 20107021817 A KR20107021817 A KR 20107021817A KR 20100134627 A KR20100134627 A KR 20100134627A
Authority
KR
South Korea
Prior art keywords
time warping
warping contour
contour
time
audio signal
Prior art date
Application number
KR1020107021817A
Other languages
English (en)
Other versions
KR101205644B1 (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=41131685&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR20100134627(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. filed Critical 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베.
Publication of KR20100134627A publication Critical patent/KR20100134627A/ko
Application granted granted Critical
Publication of KR101205644B1 publication Critical patent/KR101205644B1/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
    • 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/04Time compression or expansion
    • 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/032Quantisation or dequantisation of spectral components
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/167Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
    • 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/0212Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Acoustics & Sound (AREA)
  • Computational Linguistics (AREA)
  • Quality & Reliability (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Stereophonic System (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

시간 워핑 윤곽선 전개 정보를 포함하는 인코딩된 오디오 신호 표현에 기초하여 디코딩된 오디오 신호 표현을 제공하도록 구성된 오디오 신호 디코더는, 시간 워핑 윤곽선 계산기, 시간 워핑 윤곽선 데이터 제스케일러 및 워핑 디코더를 포함한다. 상기 시간 워핑 윤곽선 계산기는 상기 시간 워핑 윤곽선의 시간적 전개를 기술하는 상기 시간 워핑 윤곽선 전개 정보에 기초하여 기설정된 시간 워핑 윤곽선 시작 값으로부터 반복적으로 재시작하는 시간 워핑 윤곽선 데이터를 발생시키도록 구성된다. 상기 시간 워핑 윤곽선 재스케일러는 재시작에서의 불연속이 상기 시간 워핑 윤곽선의 재스케일된 버전에서 회피, 감소 또는 제거되도록 상기 시간 워핑 윤곽선 데이터의 적어도 일부분을 재스케일하도록 구성된다. 상기 워핑 디코더는 상기 시간 워핑 윤곽선의 상기 재스케일된 버전을 사용하여 상기 인코딩된 오디오 신호 표현에 기초하여 상기 디코딩된 오디오 신호 표현을 제공하도록 구성된다.

Description

오디오 신호 디코더, 시간 워핑 윤곽선 데이터 공급기, 방법 및 컴퓨터 프로그램{Audio Signal Decoder, Time Warp Contour Data Provider, Method and Computer Program}
본 발명에 따른 실시예들은 오디오 신호 디코더에 관한 것이다. 본 발명에 따른 다른 실시예들은 시간 워핑 윤곽선 데이터 공급기에 관한 것이다. 본 발명에 따른 또 다른 실시예들은 오디오 신호를 디코딩하는 방법, 즉 시간 워핑 윤곽선 데이터를 제공하는 방법 및 컴퓨터 프로그램에 관한 것이다.
본 발명에 따른 일부 실시예들은 시간 워핑된 WDCT 변환 코더를 위한 방법에 관한 것이다.
이하에서, 시간 워핑된 오디오 인코딩 분야에 관하여 간단한 개론이 설명되는데, 그 개념은 본 발명의 실시예들 중 일부에 관련하여 적용될 수 있다.
최근에, 오디오 신호를 주파수 도메인 표현으로 변환하고 예컨대, 지각적 마스킹 임계값들을 고려하여 이 주파수 도메인 표현을 효율적으로 인코딩하는 기술들이 발전되어 왔다. 오디오 신호의 인코딩에 관한 이러한 컨셉은 스펙트럼 계수들의 집합이 전송되는 블록 길이가 길다면 그리고 비교적 적은 개수의 스펙트럼 계수들이 글로발 마스킹 임계값보다 훨씬 크다면 특히 유효한 반면, 큰 개수의 스펙트럼 계수들이 글로발(global) 마스킹 임계값 근처에 있거나 그 이하에 있으며 그에 따라 무시될 수 있다.
예컨대, 코싸인-기반 또는 싸인-기반 변조된 겹침 변환(lapped transforms)이 그 에너지 압축 특성들로 인한 소스 코딩을 위해 어플리케이션들에서 종종 사용된다. 즉, 일정한 기본 주파수들(피치)을 갖는 고조파 톤들에 대해, 그들은 이 신호 에너지를 적은 개수의 스펙트럼 성분들(서브-대역들)로 집중하며, 이로 인해 효율적인 신호 표현이 가능하다.
일반적으로, 신호의 (기본) 피치는 신호의 스펙트럼으로부터 구별 가능한 가장 낮은 우세적인 주파수인 것으로 이해된다. 일반적인 음성 모델에서, 피치는 사람의 목구멍에 의해 변조된 여기 신호의 주파수이다. 만약 하나의 단일 기본 주파수만이 존재하면, 스펙트럼은 기본 주파수 및 오버톤들(overtones)만을 포함하여 매우 단순할 것이다. 이러한 스펙트럼은 높은 효율로 인코딩될 수 있다. 그러나, 변화하는 피치를 갖는 신호들에 대해, 각 고조파 성분에 대응하는 에너지는 몇 개의 변환 계수들 상으로 확산되고, 그에 따라 코딩 효율이 감소한다.
이러한 코딩 효율의 감소를 극복하기 위해, 인코딩될 오디오 신호는 비균일한 시간 그리드(temporal grid) 상에서 효율적으로 재샘플링된다. 이어진 프로세싱에서 비균일한 재샘플링에 의해 획득된 샘플 위치들은 균일한 시간 그리드 상의 값들을 나타내는 것과 같이 처리된다. 이 동작은 일반적으로 문법 '시간 워핑(time warping)'에 의해 지시된다. 샘플 시간들은 피치의 시간 변동에 따라 유리하게 선택될 수 있으며, 그에 따라 오디오 신호의 시간 워핑된 버전에서의 시간 변동은 오디오 신호의 원래 버전(시간 워핑 전의)에서의 피치 변동보다 작게 된다. 오디오 신호의 시간 워핑 후에, 오디오 신호의 시간 워핑된 버전은 주파수 도메인으로 변환된다. 피치-종속 시간 워핑은 시간 워핑된 오디오 신호의 주파수 도메인 표현이 원래의 오디오 신호(비-시간 워핑된)의 주파수 도메인 표현보다 훨씬 적은 개수의 스펙트럼 성분들로의 에너지 압축을 나타내는 효과를 가진다.
디코더측에서, 시간 워핑된 오디오 신호의 주파수-도메인 표현은 다시 시간 도메인으로 변환되고 그에 따라 시간 워핑된 오디오 신호의 시간-도메인 표현은 디코더측에서 이용가능하다. 그러나, 디코더측의 재구성된 시간 워핑된 오디오 신호의 시간-도메인 표현에서, 인코더-측의 입력 오디오 신호의 원래의 피치 변동은 포함되지 않는다. 따라서, 시간 워핑된 오디오 신호의 디코더-측의 재구성된 시간 도메인 표현의 재샘플링에 의한 또 다른 시간 워핑이 적용된다. 디코더측에서 인코더-측의 입력 오디오 신호의 좋은 재구성을 획득하기 위해, 디코더-측의 시간 워핑은 적어도 인코더-측의 시간 워핑에 대해 적어도 근사적으로 역의 동작인 것이 바람직하다. 적절한 시간 워핑을 획득하기 위해, 디코더-측의 시간 워핑의 조정을 허용하는, 디코더에서 이용가능한 정보를 갖는 것이 바람직하다.
이러한 정보를 오디오 신호 인코더에서 오디오 신호 디코더로 전달하는 것이 통상적으로 요구되기 때문에, 디코더측에서 요구된 시간 워핑 정보의 신뢰할 수 있는 재구성을 허용하면서 이 전송에 필요한 비트 레이트를 적게 유지하는 것이 바람직하다.
이상의 논의에 비춰, 시간 워핑 정보의 효율적으로 인코딩된 표현에 기초하여 시간 워핑 정보의 신뢰할 수 있는 재구성을 허용하는 컨셉을 갖는 것이 바람직하다.
본 발명에 따른 일 실시예는 시간 워핑 윤관선 전개 정보를 포함하는 인코딩된 오디오 신호 표현에 기초하여 디코딩된 오디오 신호 표현을 제공하도록 구성된 오디오 신호 디코더를 생성한다. 오디오 신호 디코더는 시간 워핑 윤곽선의 시간 전개를 기술하는 시간 워핑 윤곽선 전개 정보에 기초하여 기설정된 시간 워핑 윤곽선 시작 값으로부터 반복적으로 재시작하는 시간 워핑 윤곽선 데이터를 발생시키도록 구성된 시간 워핑 윤곽선 계산기를 포함한다. 오디오 신호 디코더는 재시작에서의 불연속성이 시간 워핑 윤곽선의 재스케일된 버전에서 회피되거나 감소되거나 또는 제거되도록 시간 워핑 윤곽선 데이터의 적어도 일부분을 재스케일하도록 구성된 시간 워핑 윤곽선 재스케일러를 또한 포함한다. 오디오 신호 디코더는 인코딩된 오디오 신호 표현에 기초하여 그리고 시간 워핑 윤곽선의 재스케일된 버전을 이용하여 디코딩된 오디오 신호 표현을 제공하도록 구성된 시간 워핑 디코더를 또한 포함한다.
전술한 실시예는, 시간 워핑 윤곽선의 시간적 변동(또는 "전개(evolution)"이라고도 칭함)이 실제로 시간 워핑 윤곽선의 특징적 양(characteristic quantity)인 반면 그 절대 값은 시간 워핑된 오디오 신호 인코딩/디코딩을 위해 중요하지 않기 때문에 시간 워핑 윤곽선은 시간 워핑 윤곽선의 시간적 전개 또는 상대적 변화를 기술하는 표현을 이용하여 높은 효율로 인코딩될 수 있음을 발견하는 것에 기반한다. 그러나, 시간 상에서의 시간 워핑 윤곽선의 변동을 기술하는 시간 워핑 윤곽선 전개 정보에 기초한 시간 워핑 윤곽선의 재구성은, 디코더에서 허용가능한 값 범위가 예컨대, 수치적인 언더플로 또는 오버플로의 형태로 초과할 수 있는 문제를 초래함이 발견되었다. 이는 디코더가 통상적으로 제한된 해상도를 갖는 숫자 표현을 포함한다는 사실에 기인한다. 또한, 디코더에서의 언더플로 또는 오버플로의 리스크는 기설정된 시간 워핑 윤곽선 시작 값으로부터 시간 워핑 윤곽선의 재구성을 반복적으로 재시작함으로써 제거될 수 있음이 발견되었다. 그럼에도 불구하고, 시간 워핑 윤곽선의 재구성의 단지 재시작이 재시작의 시점에서 시간 워핑 윤곽선에서의 불연속성이 존재한다는 문제점을 초래함이 발견되었다. 따라서, 재스케일이 재시작에서 이 불연속성을 회피하거나 제거하거나 적어도 감소시키는데 사용될 수 있음이 발견되었는데, 여기에서 시간 윤곽선의 재구성은 기설정된 시간 워핑 윤곽선 시작 값으로부터 반복적으로 재시작한다.
전술한 바를 요약하면, 블록-단위(block-wise) 연속 시간 워핑 윤곽선이, 시간 워핑 윤곽선의 재구성이 기설정된 시간 워핑 윤곽선 시작 값으로부터 반복적으로 재시작되고, 재시작으로부터 발생하는 불연속성이 시간 워핑 윤곽선의 적어도 일부분의 재스케일에 의해 감소되거나 제거된다면 수치적 오버플로 또는 언더플로의 위험을 동반함이 없이 재구성될 수 있음이 발견되었다.
따라서, 시간 워핑 윤곽선이 재시작 시간의 어떤 시간 환경 내에서 시간 워핑 윤곽선 시작 값을 둘러싼 값들의 잘-규정된 범위 내에 항상 존재하는 것이 달성될 수 있다. 즉, 많은 경우에, 오디오 신호 재구성의 현재 시간에 관련되어 규정된, 시간 워핑 윤곽선의 시간 부분만이 통상적으로 블록-단위 오디오 신호 재구성을 위해 필요하기 때문에 충분하고, 반면 시간 워핑 윤곽선의 "오래된" 부분들은 현재의 오디오 신호 재구성을 위해 요구되지 않는다.
전술한 것을 요약하면, 여기에 설명된 실시예는 시간 워핑 윤곽선의 시간 전개를 기술하는 상대적인 시간 워핑 윤곽선 정보의 효율적인 사용을 허용하는데, 여기에서 디코더에서의 수치적 오버플로 또는 언더플로는 시간 워핑 윤곽선의 반복되는 재시작에 의해 회피될 수 있으며, 종종 오디오 신호 재구성을 위해 요구되는 시간 워핑 윤곽선의 연속성은 적절한 재스케일에 의해 재시작의 시점에서조차 달성될 수 있다.
이하에서, 본 발명의 컨셉의 선택적인 개선점들을 포함하는 몇 개의 바람직한 실시예들이 설명된다.
본 발명의 실시예에서, 시간 워핑 윤곽선 계산기는 기설정된 시작 값으로부터 시작하여 제1 상대적 변화 정보를 이용하여 시간 워핑 윤곽선의 제1 부분의 시간적 전개를 계산하고, 기설정된 시작 값으로부터 시작하여 제1 상대적 변화 정보를 이용하여 시간 워핑 윤곽선의 제2 부분의 시간적 전개를 계산하도록 구성되고, 시간 워핑 윤곽선의 제1 부분 및 시간 워핑 윤곽선의 제2 부분은 시간 워핑 윤곽선의 다음 부분들이다. 바람직하게, 시간 워핑 윤곽선 재스케일러는 시간 워핑 윤곽선의 부분들중 하나를 재스케일하도록 즉, 시간 워핑 윤곽선의 제1 부분과 시간 워핑 윤곽선의 제2 부분 간의 안정된 전환(steady transition)을 획득하도록 구성된다.
이 컨셉을 사용하여, 제1 시간 워핑 윤곽선 부분 및 제2 시간 워핑 윤곽선 부분 양쪽은 잘-규정된 기설정된 시작 값으로부터 시작하여 발생될 수 있으며, 제1 시간 워핑 윤곽선 부분의 재구성 및 제2 시간워핑 윤곽선 부분의 재구성에 대해 동일할 수 있다. 상대적 변화 정보가 시간 워핑 윤곽선의 상대적 변화들을 제한된 범위로 기술함을 가정하면, 시간 워핑 윤곽선의 제1 부분 및 시간 워핑 윤곽선의 제2 부분이 제한된 범위의 값들을 나타내는 것을 보장한다. 따라서, 수치적 언더플로 또는 수치적 오버플로가 회피될 수 있다.
또한, 시간 워핑 윤곽선의 부분들 중 하나를 재스케일함으로써 시간 워핑 윤곽선의 제1 부분으로부터 시간 워핑 윤곽선의 제2 부분으로의 전환에서의(재시작에서의) 불연속성이 감소되거나 제거되기조차 한다.
바람직한 실시예에서, 시간 워핑 윤곽선 재스케일러는, 시간 워핑 윤곽선의 제1 부분의 스케일된 버전의 마지막 값이 기설정된 시작 값을 취하거나, 단지 기설정된 허용오차 값만큼 기설정된 시작 값으로부터 벗어나도록 시간 워핑 윤곽선의 제1 부분을 재스케일하도록 구성된다.
이러한 방식으로, 제1 부분으로부터 제2 부분으로의 전환에서의 시간 워핑 윤곽선의 값이 기설정된 값을 취하는 것이 달성될 수 있다. 따라서, 값들의 범위는 중심 값이 고정되기(또는 기설정된 값으로 스케일되기) 때문에 특히 작게 유지될 수 있다. 예컨대, 시간 워핑 윤곽선의 제1 부분 및 시간 워핑 윤곽선의 제2 부분이 모두 위로 올라간다면, 제1 부분의 재스케일된 버전의 최소 값은 기설정된 시작 값 이하에 놓이고, 제2 부분의 최종 값은 기설정된 시작 값 이상에 놓인다. 그러나, 기설정된 시작 값으로부터의 최대 벗어남은 최대 제1 부분의 상승 및 제2 부분의 상승에 의해 결정된다. 반면, 제1 부분 및 제2 부분이 시작 값으로부터 시작하지 않고 재스케일 없이 연속하는 방식으로 모아진다면, 제2 부분의 최종은 제1 부분과 제2 부분의 상승의 합계만큼 시작 값으로부터 벗어날 것이다.
따라서, 값들의 범위(시작 값으로부터 최대 벗어남)는 제1 부분과 제2 부분 사이의 전환에서 중심 값을 시작 값을 취하도록 스케일함으로써 감소될 수 있다. 이 값들의 범위의 감소는 제한된 수치적 범위를 갖는 비교적 낮은 해상도의 데이터 포맷의 사용을 지원하여 오디오 코딩 분야에서 끊임없는 도전인 저렴하고 전력-효율적인 소비자 장치의 디자인을 허용하기 때문에 특히 이익이 된다.
바람직한 실시예에서, 재스케일러는 시간 워핑 윤곽선의 일부분을 스케일하도록 정규화 인자와 워핑 윤곽선 데이터 값들을 곱하거나 시간 워핑 윤곽선의 일부분을 스케일하도록 정규화 인자로 워핑 윤곽선 데이터 값들을 나누도록 구성된다. 곱셈 스케일 또는 나눗셈 스케일은 중요하지 않은 시간 워핑 윤곽선의 절대값이 아닌 시간 워핑에 대해 상대적인, 시간 워핑 윤곽선의 상대적인 변동을 보존하기 때문에, (예컨대, 시간 워핑 윤곽선의 부가적인 쉬프트 보다는) 선형 스케일이 특히 바람직함이 밝혀졌다.
또 다른 바람직한 실시예에서, 시간 워핑 윤곽선 계산기는 시간 워핑 윤곽선의 소정의 부분의 워핑 윤곽선 합산 값을 획득하고, 일반적인 스케일 값을 이용하여 시간 워핑 윤곽선의 소정의 부분 및 시간 워핑 윤곽선의 소정의 부분의 워핑 윤곽선 합산 값을 스케일하도록 구성된다.
일부의 경우들에서, 이러한 워핑 윤곽선 합산 값이 시간 워핑 윤곽선으로부터 시간 윤곽선의 도출을 위해 사용될 수 있기 때문에 워핑 윤곽선으로부터 워핑 윤곽선 합산 값을 도출하는 것이 바람직함이 밝혀졌다. 따라서, 제1 시간 윤곽선의 계산을 위해 소정의 시간 워핑 윤곽선 및 해당 워핑 윤곽선 합산 값을 사용할 수 있다. 또한, 시간 워핑 윤곽선의 스케일된 버전 및 해당하는 스케일된 합산 값은 다른 시간 윤곽선의 다음 계산을 위해 요구될 수 있음이 밝혀졌다. 그래서, 새로운 것으로부터소정의 시간 워핑 윤곽선의 재스케일된 버전을 위해 워핑 윤곽선 합산 값을 재-계산하는 것이 불필요함이 밝혀졌는데, 왜냐하면 워핑 윤곽선의 소정의 부분의 원래의 버전의 워핑 윤곽선 합산 값을 재스케일함으로써 워핑 윤곽선의 소정의 부분의 재스케일된 버전의 워핑 윤곽선 합산 값을 도출할 수 있기 때문이다.
바람직한 실시예에서, 오디오 신호 디코더는, 시간 워핑 윤곽선의 제1 부분, 시간 워핑 윤곽선의 제2 부분 및 시간 워핑 윤곽선의 제3 부분의 시간 워핑 윤곽선 데이터 값들을 이용하여 제1 시간 윤곽선을 계산하고, 시간 워핑 윤곽선의 제2 부분, 시간 워핑 윤곽선의 제3 부분 및 시간 워핑 윤곽선의 제4 부분의 시간 워핑 윤곽선 데이터 값들을 이용하여 제2 시간 윤곽선을 계산하도록 구성된 시간 윤곽선 계산기를 포함한다. 다시 말해, 시간 워핑 윤곽선의 복수개의 제1 부분들(3개의 부분들을 포함함)은 제1 시간 윤곽선의 계산을 위해 사용되고, 복수개의 제2 부분들(3개의 부분들을 포함함)은 제2 시간 윤곽선의 계산을 위해 사용되며, 여기에서 복수개의 제1 부분들은 복수개의 제2 부분들과 중첩되어 있다. 시간 워핑 윤곽선 계산기는 제1 부분의 시간적 전개를 기술하는 시간 워핑 윤곽선 전개 정보에 기초하여 기설정된 시간 워핑 윤곽선 시작 값으로부터 시작하는 제1 부분의 시간 워핑 윤곽선 데이터를 발생시키도록 구성된다. 또한, 시간 워핑 윤곽선 계산기는 시간 워핑 윤곽선의 제1 부분의 마지막 값이 기설정된 시간 워핑 윤곽선 시작 값을 포함하도록 시간 워핑 윤곽선의 제1 부분을 재스케일하고, 제2 부분의 시간적 전개를 기술하는 시간 워핑 윤곽선 전개 정보에 기초하여 기설정된 시간 워핑 윤곽선 시작 값으로부터 시작하는 시간 워핑 윤곽선의 제2 부분의 시간 워핑 윤곽선 데이터를 발생시키고, 함께 재스케일된 시간 워핑 윤곽선 데이터 값들을 획득하기 위해 제2 부분의 마지막 값이 기설정된 시간 워핑 윤곽선 시작 값을 포함하도록 제1 부분 및 제2 부분을 공통의 스케일 인자를 사용하여 함께 재스케일하도록 구성된다. 시간 워핑 윤곽선 계산기는 또한, 시간 워핑 윤곽선의 제3 부분의 시간 워핑 윤곽선 전개 정보에 기초하여 기설정된 시간 워핑 윤곽선 시작 값으로부터 시작하는 시간 워핑 윤곽선의 제3 부분의 원래의 시간 워핑 윤곽선 데이터 값들을 발생시키도록 구성된다.
따라서, 시간 워핑 윤곽선의 제1 부분, 제2 부분 및 제3 부분은 시간 워핑 윤곽선의 연속하는 구간을 형성하도록 발생된다. 따라서, 시간 윤곽선 계산기는 제1 및 제2 시간 워핑 윤곽선 부분들의 함께 재스케일된 시간 워핑 윤곽선 데이터 값들 및 제3 시간 워핑 윤곽선 부분의 시간 워핑 윤곽선 데이터 값들을 이용하여 제1 시간 윤곽선을 계산하도록 구성된다.
이어서, 시간 워핑 윤곽선 계산기는 시간 워핑 윤곽선의 제2 부분의 2번 재스케일된 버전 및 제3 부분의 1번 재스케일된 버전을 획득하기 위해 시간 워핑 윤곽선의 제3 부분의 마지막 값은 기설정된 시간 워핑 시작 값을 포함하도록, 다른 공통의 스케일 인자를 이용하여 시간 워핑 윤곽선의 제2의 재스케일된 부분 및 제3의 원래의 부분을 함께 재스케일하도록 구성된다. 또한, 시간 워핑 윤곽선 계산기는 시간 워핑 윤곽선의 제4 부분의 시간 워핑 윤곽선 전개 정보에 기초하여 기설정된 시간 워핑 윤곽선 시작 값으로부터 시작하는 시간 워핑 윤곽선의 제4 부분의 원래의 시간 워핑 윤곽선 데이터 값들을 발생시키도록 구성된다. 또한, 시간 워핑 윤곽선 계산기는 시간 워핑 윤곽선의 제2 부분의 2번 재스케일된 버전, 제3 부분의 1번 재스케일된 버전 및 제4 부분의 원래의 버전을 이용하여 제2 시간 윤곽선을 계산하도록 구성된다.
따라서, 시간 워핑 윤곽선의 제2 부분 및 제3 부분이 제1 시간 윤곽선의 계산 및 제2 시간 윤곽선의 계산 양쪽을 위해 사용됨을 알 수 있다. 그럼에도 불구하고, 각 시간 윤곽선들의 계산을 위해 고려된 시간 워핑 윤곽선 구간(section)의 연속성을 보장하면서 사용된 값들의 범위를 충분히 작게 유지하기 위해 제1 시간 윤곽선의 계산과 제2 시간 윤곽선의 계산 사이에 제2 부분 및 제3 부분의 재스케일이 있다.
또 다른 바람직한 실시예에서, 시간 디코더는 시간 워핑 윤곽선의 복수개의 부분들을 이용하여 시간 워핑 제어 정보를 계산하도록 구성된 시간 워핑 제어 정보 계산기를 포함한다. 시간 워핑 제어 정보 계산기는 복수개의 제1 시간 워핑 윤곽선 부분들의 시간 워핑 윤곽선 데이터에 기초하여 오디오 신호의 제1 프레임의 재구성을 위한 시간 워핑 제어 정보를 계산하고, 복수개의 제2 시간 워핑 윤곽선 부분들의 시간 워핑 윤곽선 데이터에 기초하여 제1 프레임과 중첩하거나 중첩하지 않는 오디오 신호의 제2 프레임의 재구성을 위한 시간 워핑 제어 정보를 계산하도록 구성된다. 복수개의 제1 시간 워핑 윤곽선 부분들은 복수개의 제2 시간 워핑 윤곽선 부분들과 비교하면 시간에 대해 쉬프트되어 있다. 복수개의 제1 시간 워핑 윤곽선 부분들은 복수개의 제2 시간 워핑 윤곽선 부분들과 적어도 하나의 공통 시간 워핑 윤곽선 부분을 포함한다. 본 발명에 따른 재스케일 방법은 시간 워핑 윤곽선의 중첩 구간들(복수개의 제1 시간 워핑 윤곽선 부분들 및 복수개의 제2 시간 워핑 윤곽선 부분들)이 서로 다른 오디오 프레임들(제1 오디오 프레임 및 제2 오디오 프레임)의 재구성을 위한 시간 워핑 제어 정보를 획득하는데 사용된다면 특히 더 바람직함이 발견되었다. 재스케일에 의해 획득된 시간 워핑 윤곽선의 연속성은, 시간 워핑 윤곽선의 어떠한 불연속성이 존재한다면 시간 워핑 윤곽선의 중첩 구간들의 사용이 심하게 저하된 결과를 초래하기 때문에, 시간 워핑 윤곽선의 중첩 구간들이 시간 워핑 제어 정보를 획득하는데 사용된다면 특히 장점이 된다.
또 따른 바람직한 실시예에서, 시간 워핑 윤곽선 계산기는 복수개의 제1 시간 워핑 윤곽선 부분들 내의 또는 복수개의 제2 시간 워핑 윤곽선 부분들 내의 한 위치에서 시간 워핑 윤곽선이 기설정된 워핑 윤곽선 시작 값으로부터 재시작하도록, 즉 재시작 위치에서 시간 워핑 윤곽선의 불연속성이 있도록, 새로운 시간 워핑 윤곽선을 발생시키도록 구성된다. 이를 보상하기 위해, 시간 워핑 윤곽선 재스케일러는 불연속성이 감소하거나 제거되도록 시간 워핑 윤곽선을 재스케일하도록 구성된다.
다른 바람직한 실시예에서, 시간 워핑 윤곽선 계산기는 복수개의 제1 시간 워핑 윤곽선 부분들 내의 한 위치에서 기설정된 시간 워핑 윤곽선 시작 값으로부터 시간 워핑 윤곽선의 제1 재시작이 존재하도록 즉, 제1 재시작의 위치에서 제1 불연속성이 존재하도록 시간 워핑 윤곽선을 발생시키도록 구서왼다. 이 경우, 시간 워핑 윤곽선 재스케일러는 제1 불연속성이 감소되거나 제거되도록 시간 워핑 윤곽선을 재스케일하도록 구성된다. 시간 워핑 계산기는 또한 기설정된 시간 워핑 윤곽선 시작 값으로부터 시간 워핑 윤곽선의 제2 재시작이 존재하도록 즉, 제2 재시작의 위치에서 제2 불연속성이 존재하도록 시간 워핑 윤곽선을 발생시키도록 구성된다. 재스케일러는 또한 제2 불연속성이 감소되거나 제거되도록 시간 워핑 윤곽선을 재스케일하도록 구성된다.
다시 말해, 많은 개수의 시간 워핑 윤곽선 재시작들 예컨대, 오디오 프레임 당 하나의 재시작을 가지는 것이 종종 바람직하다. 이러한 방식으로, 프로세싱 알고리즘은 매우 일반적이 되도록 만들어질 수 있다. 또한, 값들의 범위는 매우 작게 유지될 수 있다.
다른 바람직한 실시예에서, 시간 워핑 계산기는 재시작시에 불연속성이 존재하도록 기설정된 시간 워핑 윤곽선 시작 값으로부터 시작하는 시간 워핑 윤곽선을 주기적으로 재시작하도록 구성된다. 재스케일러는 재시작시에 시간 워핑 윤곽선의 불연속성을 감소하거나 제거하도록 시간 워핑 윤곽선의 적어도 일부분을 재스케일하도록 구성된다. 오디오 신호 디코더는 시간 워핑 제어 정보를 획득하기 위해 재시작 전의 재스케일된 시간 워핑 윤곽선 데이터와 재시작 후의 시간 워핑 윤곽선 데이터를 결합하도록 구성된다.
다른 바람직한 실시예에서, 시간 워핑 윤곽선 계산기는 인코딩된 워핑 비율 정보로부터 워핑 비율 값들의 시퀀스를 도출하기 위해 인코딩된 워핑 비율 정보를 수신하고 워핑 윤곽선 시작 값으로부터 시작하는 복수개의 워핑 윤곽선 노드 값들을 획득하도록 구성된다. 워핑 윤곽선 시작 노드와 관련된 워핑 윤곽선 시작 값과 워핑 윤곽선 노드 값들 간의 비율들은 워핑 비율 값들에 의해 결정된다. 워핑 비율 값들이 매우 효율적인 방식으로 시간 워핑의 어플리케이션을 위한 키 정보인, 시간 워핑 윤곽선의 상대적 변동을 인코딩하기 때문에, 워핑 비율 값들의 시퀀스에 기초한 시간 워핑 윤곽선의 재구성이, 매우 좋은 결과를 가져온다. 따라서, 워핑 비율 정보는 시간 워핑 윤곽선 전개의 매우 효율적인 기술(description)이 됨이 발견되었다.
다른 바람직한 실시예에서, 시간 워핑 윤곽선 계산기는 워핑 윤곽선 시작 값과 중간 워핑 윤곽선 노드의 워핑 윤곽선 노드 값 사이의 비율 및 중간 워핑 윤곽선 노드의 워핑 윤곽선 노드 값과 소정의 워핑 윤곽선 노드의 워핑 윤곽선 값 사이의 비율을 인자(factor)들로서 포함하는 곱-구조(product-formation)에 기초하여 중간 워핑 윤곽선 노드에 의해 시간 워핑 윤곽선 시작점으로부터 이격된, 소정의 워핑 윤곽선 노드의 워핑 윤곽선 노드 값을 계산하도록 구성된다. 워핑 윤곽선 노드 값들은 복수개의 워핑 비율 값들의 곱셈을 이용하여 특히 효율적인 방식으로 계산될 수 있음이 밝혀졌다. 또한, 이러한 곱셈의 사용은 워핑 윤곽선의 이상적인 특징들에 잘 맞도록 워핑 윤곽선의 재구성을 허용한다.
본 발명에 따른 다른 실시예는 시간 워핑 윤곽선 전개 정보에 기초하여 오디오 신호의 상대적 피치의 시간적 전개를 나타내는 시간 워핑 윤곽선 데이터를 제공하는 시간 워핑 윤곽선 데이터 공급기를 생성한다. 시간 워핑 윤곽선 데이터 공급기는 시간 워핑 윤곽선의 시간적 전개를 기술하는 시간 워핑 윤곽선 전개 정보에 기초하여 시간 워핑 윤곽선 데이터를 발생시키도록 구성된 시간 워핑 윤곽선 계산기를 포함한다. 시간 워핑 윤곽선 계산기는 미리 결저왼 시간 워핑 윤곽선 시작 값으로부터 시간 워핑 윤곽선 데이터의 계산을 재시작 위치들에서 반복적으로 또는 주기적으로 재시작하도록 구성되어, 시간 워핑 윤곽선의 불연속성을 생성하고 시간 워핑 윤곽선 데이터 값들의 범위를 감소시킨다. 시간 워핑 윤곽선 데이터 공급기는 시간 워핑 윤곽선의 재스케일된 구간들에서 재시작 위치들에서 불연속성을 감소하거나 제거하기 위해, 시간 워핑 윤곽선의 부분들을 반복적으로 재스케일하도록 구성된 시간 워핑 윤곽선 재스케일러를 또한 포함한다. 시간 워핑 윤곽선 데이터 공급기는 전술한 오디오 신호 디코더와 동일한 아이디어에 기반한다.
본 발명에 따른 다른 실시예는 인코딩된 오디오 신호 표현에 기반하여 디코딩된 오디오 신호 표현을 제공하는 방법을 생성한다.
본 발명의 또 다른 실시예는 인코딩된 오디오 신호 표현에 기초하여 디코딩된 오디오 신호를 제공하는 컴퓨터 프로그램을 생성한다.
본 발명에 따르면, 시간 워핑 정보의 효율적으로 인코딩된 표현에 기초하여 시간 워핑 정보를 신뢰할 수 있게 재구성할 수 있다.
본 발명에 따른 실시예들은 첨부된 도면을 참조하여 이하 설명된다.
도 1은 시간 워핑 오디오 인코더의 블록도를 나타낸다.
도 2는 시간 워핑 오디오 디코더의 블록도를 나타낸다.
도 3은 본 발명의 일 실시예에 따른, 오디오 신호 디코더의 블록도를 나타낸다.
도 4는 본 발명의 일 실시예에 따른, 디코딩된 오디오 신호 표현을 제공하는 방법의 플로우차트를 나타낸다.
도 5는 본 발명의 일 실시예에 따른, 오디오 신호 디코더의 블록도로부터 상세한 발췌를 도시한다.
도 6은 본 발명의 일 실시예에 따라 디코딩된 오디오 신호 표현을 제공하는 방법의 플로우차트의 상세한 발췌를 도시한다.
도 7a, 7b는 본 발명의 일 실시예에 따른, 시간 워핑 윤곽선의 재구성에 대한 도시적 표현을 나타낸다.
도 8은 본 발명의 일 실시예에 따라 시간 워핑 윤곽선의 재구성에 대한 다른 도식적 표현을 나타낸다.
도 9a 내지 9b는 시간 워핑 윤곽선의 계산을 위한 알고리즘을 나타낸다.
도 9c는 시간 워핑 비율 인덱스로부터 시간 워핑 비율 값으로의 매핑의 테이블을 나타낸다.
도 10a 및 10b는 시간 윤곽선, 샘플 위치, 전환길이, "첫번째 위치" 및 "최종 위치"의 계산을 위한 알고리즘을 표현한 것이다.
도 10c는 윈도우 형상 계산을 위한 알고리즘을 표현한 것이다.
도 10d 및 10e는 윈도우의 적용을 위한 알고리즘을 표현한 것이다.
도 10f는 시간 변화하는 재샘플링을 위한 알고리즘을 표현한 것이다.
도 10g는 차후의 시간 워핑 프레임 프로세싱 및 중첩과 가산을 위한 알고리즘들의 도식적 표현을 나타낸다.
도 11a 및 11b는 범례(legend)를 나타낸다.
도 12는 시간 워핑 윤곽선으로부터 추출될 수 있는 시간 윤곽선의 모식적 표현을 나타낸다.
도 13은 본 발명의 일 실시예에 따라 워핑 윤곽선을 제공하는 장치의 상세한 블록도를 나타낸다.
도 14는 본 발명의 다른 실시예에 따른, 오디오 신호 디코더의 블록도를 도시한다.
도 15는 본 발명의 실시예에 따른 다른 시간 워핑 윤곽선 계산기의 블록도를 나타낸다.
도 16a, 16b는 본 발명의 일 실시예에 따른 시간 워핑 노드 값들의 계산의 도시적 표현을 나타낸다.
도 17은 본 발명의 일 실시예에 따른, 다른 오디오 신호 인코더의 블록도를 나타낸다.
도 18은 본 발명의 일 실시예에 따른 다른 오디오 신호 디코더의 블록도를 나타낸다.
도 19a-19f는 본 발명의 일 실시예에 따른 오디오 신호의 구문 요소들의 표현들을 나타낸다.
1. 도 1에 따른 시간 워핑 오디오 인코더
본 발명이 시간 워핑 오디오 인코딩 및 시간 워핑 오디오 디코딩에 관련되어 있기 때문에, 본 발명이 적용될 수 있는 기본 시간 워핑 오디오 인코더 및 시간 워핑 오디오 디코더에 대한 간단한 개요가 설명된다.
도 1은 본 발명의 일부 측면들 및 실시예들이 통합될 수 있는 시간 워핑 오디오 인코더의 블록도를 도시한다. 도 1의 오디오 신호 인코더(100)는 입력 오디오 신호(110)를 수신하고 입력 오디오 신호(110)의 인코딩된 표현을 프레임 시퀀스로 제공하도록 구성된다. 오디오 인코더(100)는 주파수 도메인 변환을 위한 기반(basis)으로서 사용된 신호 블록들(샘플링된 표현들)(105)를 도출하기 위해 오디오 신호(110)(입력 신호)를 샘플링하도록 구성된 샘플러(104)를 포함한다. 오디오 인코더(100)는 또한 샘플러(104)로부터 출력된 샘플링된 표현들(105)을 위한 스케일링 윈도우들을 도출하도록 구성된 변환 윈도우 계산기(106)를 추가로 포함한다. 이들은 샘플러(104)에 의해 도출된 샘플링된 표현들(105)로 스케일링 윈도우들을 적용하도록 구성된 윈도우어(windower)(108)로 입력된다. 일부 실시예들에서, 오디오 인코더(100)는 샘플링된 그리고 스케일된 표현들(105)의 주파수-도메인 표현(예컨대, 변환 계수들의 형태로) 도출하기 위해 주파수 도메인 변환기(108a)를 추가적으로 포함할 수 있다. 주파수 도메인 표현들은 오디오 신호(110)의 인코딩된 표현으로서 처리되거나 추가로 전송될 수도 있다.
오디오 인코더(100)는 오디오 인코더(100)로 제공될 수 있는 또는 오디오 인코더(100)에 의해 도출될 수 있는 오디오 신호(110)의 피치 윤곽선(112)을 추가로 사용한다. 그러므로 오디오 인코더(100)는 피치 윤곽선(112)을 도출하는 피치 추정기를 선택적으로 포함할 수 있다. 샘플러(104)는 입력 오디오 신호(110)의 연속적 표현에 대해 동작할 수 있다. 선택적으로, 샘플러(104)는 입력 오디오 신호(110)의 이미 샘플링된 표현에 대해 동작할 수 있다. 후자의 경우에, 샘플러(104)는 오디오 신호(110)를 재샘플링할 수 있다. 샘플러(104)는 중첩 부분이 일정한 피치를 가지거나 샘플링 후에 각 입력 블록들 내에서 감소된 피치 변동을 갖도록 예컨대, 이웃의 중첩하는 오디오 블록들을 시간 워핑하도록 구성될 수도 있다.
변환 윈도우 계산기(106)는 샘플러(104)에 의해 수행된 시간 워핑에 따라 오디오 블록들을 위한 스케일링 윈도우들을 도출한다. 이를 위해, 선택적인 샘플링 레이트 조정 블록(114)이 샘플러에 의해 사용된 시간 워핑 룰을 규정하기 위해 존재할 수 있으며, 그런 다음 이것은 변환 윈도우 계산기(106)에 또한 제공된다.
다른 실시예에서, 샘플링 레이트 조정 블록(114)은 생략될 수 있으며, 피치 윤곽선(112)은 적절한 계산을 자체적으로 수행할 수 있는 변환 윈도우 계산기(106)에 직접적으로 제공될 수 있다. 또한, 샘플러(104)는 적절한 스케일링 윈도우들의 계산을 가능하게 하기 위해 상기 적용된 샘플링을 변환 윈도우 계산기(106)로 전달할 수도 있다.
시간 워핑은 시간 워핑되고 샘플러(104)에 의해 샘플링되어 진, 샘플링된 오디오 블록들의 피치 윤곽선이 입력 블록 내에서 원래의 오디오 신호(110)의 피치 윤곽선보다 더 일정하도록 수행된다.
2. 도 2에 따른 시간 워핑 오디오 디코더
도 2는 프레임 시퀀스를 갖는 오디오 신호의 제1 프레임 및 제1 프레임에 후속하는 제2 프레임의 제1 시간 워핑되고 샘플링된 또는 간단히 시간 워핑된 표현을 처리하며, 제2 프레임 및 프레임 시퀀스에서 제2 프레임에 후속하는 제3 프레임을 추가로 처리하는 시간 워핑 오디오 디코더(200)의 블록도를 도시한다. 오디오 디코더(200)는 제1 및 제2 프레임의 피치 윤곽선(212)에 대한 정보를 이용하여 제1 시간 워핑된 표현(211a)를 위한 제1 스케일링 윈도우를 도출하고 제2 및 제3 프레임의 피치 윤곽선에 대한 정보를 이용하여 제2 시간 워핑된 표현(211b)을 위한 제2 스케일링 윈도우를 도출하도록 구성된 변환 윈도우 계산기(210)를 포함하는데, 상기 스케일링 윈도우들은 동일한 개수의 샘플들을 포함할 수 있으며, 제1 스케일링 윈도우를 페이드-아웃하는데 사용된 제1 개수의 샘플들은 제2 스케일링 윈도우를 페이드-인하는데 사용된 제2 개수의 샘플들과 다를 수 있다. 오디오 디코더(200)는 제1 스케일링 윈도우를 제1 시간 워핑된 표현에 적용하고, 제2 스케일링 윈도우를 제2 시간 워핑된 표현에 적용하도록 구성된 윈도우어(216)를 더 포함한다. 오디오 디코더(200)는 또한, 제2 프레임에 대응하는 제1 샘플링된 표현의 일부분이 기설정된 허용오차 범위 내에서, 제2 프레임에 대응하는 제2 샘플링된 표현의 일부분의 피치 윤곽선과 동일한 피치 윤곽선을 포함하도록, 제1 및 제2 프레임의 피치 윤곽선에 대한 정보를 이용하여 제1 샘플링된 표현을 도출하기 위해 제1 스케일된 시간 워핑된 표현을 역으로 시간 워핑하고, 제2 및 제3 프레임의 피체 윤고가선에 대한 정보를 이용하여 제2 샘플링된 표현을 도출하기 위해 제2 스케일된 시간 워핑된 표현을 역으로 시간-워핑하도록 구성된 재샘플러(218)를 포함한다. 스케일링 윈도우를 도출하기 위해, 변환 윈도우 계산기(210)는 피치 윤곽선(212)을 직접적으로 수신하거나 선택적인 샘플 레이트 조정기(220)로부터 시간 워핑에 관한 정보를 수신할 수 있으며, 샘플 레이트 조정기(220)는 피치 윤곽선(212)을 수신하고 피치가 중첩 영역들에서 동일한 것이 되는 방식으로 역 시간 워핑 전략을 도출하고, 역 시간 워핑 후에 역 시간 워핑이 동일한 길이가 되기 전에 중첩 윈도우 파트들의 서로 다른 페이딩 길이들을 선택적으로 도출한다.
오디오 디코더(200)는 출력 신호(242)로서 오디오 신호의 제2 프레임의 재구성된 표현을 도출하기 위해 제2 프레임에 대응하는 제1 샘플링된 표현의 일부분과 제2 프레임에 대응하는 제2 샘플링된 표현의 일부분을 가산하도록 구성된 선택적인 가산기(230)를 더 포함한다. 제1 시간-워핑된 표현 및 제2 시간-워핑된 표현은 일 실시예에서, 오디오 디코더(200)로의 입력으로서 제공될 수 있다. 다른 실시예에서, 오디오 디코더(200)는 선택적으로 역 주파수 도메인 변환기(240)의 입력으로 제공되는 제1 및 제2 시간 워핑된 표현들의 주파수 도메인 표현들로부터 제1 및 제2 시간 워핑된 표현들을 도출할 수 있는 역 주파수 도메인 변환기(240)를 선택적으로 포함할 수 있다.
3. 도 3에 따른 시간 워핑 오디오 신호 디코더
이하에서, 단순화된 오디오 신호 디코더가 설명된다. 도 3은 이 단순화된 오디오 신호 디코더(300)의 블록도를 도시한다. 오디오 신호 디코더(300)는 인코딩된 오디오 신호 표현(310)을 수신하고 그에 기초하여 디코딩된 오디오 신호 표현(312)을 제공하도록 구성되는데, 인코딩된 오디오 신호 표현(310)은 시간 워핑 윤곽선 전개 정보를 포함한다. 오디오 신호 디코더(300)는 시간 워핑 윤곽선 전개 정보(316)에 기초하여 시간 워핑 윤곽선 데이터(322)를 발생시키도록 구성된 시간 워핑 윤곽선 계산기(320)를 포함하며, 시간 워핑 윤곽선 전개 정보는 시간 워핑 윤곽선의 시간적 전개를 기술하고, 시간 워핑 윤곽선 전개 정보는 인코딩된 오디오 신호 표현(310)에 의해 포함된다. 시간 워핑 윤곽선 전개 정보(316)로부터 시간 워핑 윤곽선 데이터(322)를 도출할 때, 시간 워핑 윤곽선 계산기(320)는 이하에서 상세히 설명되는 바와 같이, 기설정된 시간 워핑 윤곽선 시작 값으로부터 반복적으로 재시작한다. 재시작은 불연속성(시간 워핑 윤곽선 전개 정보(316)에 의해 인코딩된 스텝들보다 큰 스텝-식 변화들(step-wise changes))을 포함한다. 오디오 시호 디코더(300)는 시간 워핑 윤곽선 데이터(322)의 적어도 일부분을 재스케일하여, 시간 워핑 윤곽선 계산의 재시작에서의 불연속성이 시간 워핑 윤곽선의 재스케일된 버전(332)에서 회피되거나, 감소되거나 제거되도록 구성된 시간 워핑 윤곽선 데이터 재스케일러(330)를 더 포함한다.
오디오 신호 디코더(300)는 인코딩된 오디오 신호 표현(310)에 기초하여 그리고 시간 워핑 윤곽선의 재스케일된 버전(332)을 이용하여 디코딩된 오디오 신호 표현(312)을 제공하도록 구성된 워핑 디코더(340)를 또한 포함한다.
오디오 신호 디코더(300)를 시간 워핑 오디오 디코딩으로 삽입하기 위해, 인코딩된 오디오 신호 표현(310)이 변환 계수들(211)의 인코딩된 표현과 또한 피치 윤곽선(212)의 인코딩된 표현(시간 워핑 윤곽선이라고도 칭함)을 포함할 수 있음을 주지해야 한다. 시간 워핑 윤곽선 계산기(320) 및 시간 워핑 윤곽선 데이터 재스케일러(330)는 시간 워핑 윤곽선의 재스케일된 버전(332)의 형태로 피치 윤곽선(212)의 재구성된 표현을 제공하도록 구성될 수 있다. 워핑 디코더(340)는 에컨대, 윈도우잉(216), 재샘플링(218), 샘플 레이트 조정(220) 및 윈도우 형상 조정(210)의 기능을 포함할 수 있다. 또한, 워핑 디코더(340)는 예컨대, 선택적으로 역변환(240) 및 중첩/가산(230)의 기능을 포함하여, 디코딩된 오디오 신호 표현(312)이 시간 워핑 오디오 디코더(200)의 출력 오디오 신호(232)와 동등할 수 있다.
시간 워핑 윤곽선 데이터(322)에 재스케일링을 적용함으로써 시간 워핑 윤곽선의 연속하는(또는 적어도 근사적으로 연속하는) 재스케일된 버전(332)이 획득될 수 있으며, 그에 따라 수치적 오버플로 또는 언더플로(numeric overflow or underflow)가 인코딩에 효율적인(efficient-to-encode) 상대적인 시간 워핑 윤곽선 전개 정보를 사용할 때조차 회피될 수 있다.
4. 도 4에 따른 디코딩된 오디오 신호 표현을 제공하는 방법
도 4는 도 3에 따른 장치(300)에 의해 수행될 수 있는 방법으로서 시간 워핑 윤곽선 전개 정보를 포함하는 인코딩된 오디오 신호 표현에 기초하여 디코딩된 오디오 신호 표현을 제공하는 방법의 플로우차트를 나타낸다. 방법(400)은 시간 워핑 윤곽선의 시간적 전개를 기술하는 시간 워핑 윤곽선 전개 정보에 기초하여 기설정된 시간 워핑 윤곽선 시작 값으로부터 반복적으로 재시작하는 시간 워핑 윤곽선 데이터를 발생시키는 제1 단계(410)를 포함한다.
상기 방법(400)은 재시작들 중 하나에서의 불연속성이 시간 워핑 윤곽선의 재스케일된 버전에서 회피되거나 감소되거나 제거되도록 시간 워핑 윤곽선 데이터의 적어도 일부분을 재스케일하는 단계(420)를 더 포함한다.
상기 방법(400)은 시간 워핑 윤곽선의 재스케일된 버전을 이용하여 인코딩된 오디오 신호 표현에 기초하여 디코딩된 오디오 신호 표현을 제공하는 단계(430)를 더 포함한다.
5. 도 5-9를 참조한 본 발명에 따른 일 실시예의 상세한 설명
이하에서, 도 5-9를 참조하여 본 발명에 따른 일 실시예가 설명된다.
도 5는 시간 워핑 윤곽선 전개 정보(510)에 기초하여 시간 워핑 제어 정보(512)를 제공하는 장치(500)의 블록도를 나타낸다. 장치(500)는 시간 워핑 윤곽선 전개 정보(510)에 기초하여 재구성된 시간 워핑 윤곽선 정보(522)를 제공하는 수단(520) 및 재구성된 시간 워핑 윤곽선 정보(522)에 기초하여 시간 워핑 제어 정보(512)를 제공하는 시간 워핑 제어 정보 계산기(530)를 포함한다.
재구성된 시간 워핑 윤곽선 정보를 제공하는 수단(520)
이하에서, 수단(520)의 구조 및 기능이 설명된다. 수단(520)은 시간 워핑 윤곽선 전개 정보(510)를 수신하고 이에 기초하여 새로운 워핑 윤곽선 부분 정보(542)를 제공하도록 구성되는 시간 워핑 윤곽선 계산기(540)를 포함한다. 예컨대, 한 세트의 시간 워핑 윤곽선 전개 정보는 재구성될 오디오 신호의 각 프레임에 대해 장치(500)로 전송될 수 있다. 그럼에도 불구하고, 재구성된 오디오 신호의 프레임과 관련된 한 세트의 시간 워핑 윤곽선 전개 정보(510)는 오디오 신호의 복수개의 프레임의 재구성을 위해 사용될 수 있다. 유사하게, 복수개의 세트의 시간 워핑 윤곽선 전개 정보는 이하에서 상세히 설명되는 바와 같이 오디오 신호의 단일 프레임의 오디오 컨텐트의 재구성을 위해 사용될 수도 있다. 결론적으로, 일부 실시예에서, 시간 워핑 유곽선 전개 정보(510)는 재구성될 또는 업데이트될 오디오 신호(오디오 신호의 프레임 당 하나의 시간 워핑 윤곽선 부분)의 변환 도메인 계수를 설정하는 것과 동일한 레이트로 업데이트될 수 있다.
시간 워핑 윤곽선 계산기(540)는 복수개의(또는 시간 시퀀스의) 시간 워핑 윤곽선 비율 값들(또는 시간 워핑 비율 인덱스들)에 기초하여 복수개의(또는 시간 시퀀스의) 워핑 윤곽선 노드 값들을 계산하도록 구성된 워핑 노드 값 계산기(544)를 포함하며, 상기 시간 워핑 비율 값들(또는 인덱스들)은 시간 워핑 윤곽선 전개 정보(510)에 의해 포함된다. 이 목적을 위해, 워핑 노드 값 계산기(544)는 기설정된 시작 값(예컨대, 1)에서 시간 워핑 윤곽선 노드 값들의 제공을 시작하고, 이하 설명되는 바와 같이, 시간 워핑 윤곽선 비율 값들을 이용하여 다음 시간 워핑 윤곽선 노드 값들을 계산하도록 구성된다.
또한, 시간 워핑 윤곽선 계산기(540)는 다음 시간 워핑 윤곽선 노드 값들 사이를 보간하도록 구성된 보간기(548)를 선택적으로 포함한다. 따라서, 새로운 시간 워핑 윤곽선 부분의 기술(542)이 획득되며, 새로운 시간 워핑 윤곽선 부분은 워핑 노드 값 계산기(524)에 의해 사용된 기설정된 시작 값으로부터 통상적으로 시작한다. 또한, 상기 수단(520)은 전체 시간 워핑 윤곽선 구간의 제공을 위해, 추가적인 시간 워핑 윤곽선 부분들, 즉 소위 "최종 시간 워핑 윤곽선 부분" 및 소위 "현재의 시간 워핑 윤곽선 부분"을 고려하도록 구성된다. 이 목적을 위해, 수단(520)은 도 5에 도시되지 않은 메모리에 소위 "최종 시간 워핑 윤곽선 부분" 및 소위 "현재의 시간 워핑 윤곽선 부분"을 저장하도록 구성된다.
그러나, 상기 수단(520)은 "최종 시간 워핑 윤곽선 부분", "현재의 시간 워핑 윤곽선 부분" 및 "새로운 시간 워핑 윤곽선 부분"에 기반한 전체 시간 워핑 윤곽선 구간에서의 어떠한 불연속성도 회피하기(또는 감소하거나 제거하기) 위해 "최종 시간 워핑 윤곽선 부분" 및 "현재의 시간 워핑 윤곽선 부분"을 재스케일하도록 구성된 재스케일러(550)를 또한 포함한다. 이를 위해, 재스케일러(550)는 "최종 시간 워핑 윤곽선 부분" 및 "현재의 시간 워핑 윤곽선 부분"의 저장된 기술을 수신하고, "최종 시간 워핑 윤곽선 부분" 및 "현재의 시간 워핑 윤곽선 부분"의 재스케일된 버전을 획득하기 위해 "최종 시간 워핑 윤곽선 부분" 및 "현재의 시간 워핑 윤곽선 부분"을 함께 재스케일하도록 구성된다. 재스케일러(550)에 의해 수행되는 재스케일에 관한 상세는 도 7a, 7b 및 8을 참조하여 이하 설명된다.
게다가, 재스케일러(550)는 예컨대, 도 5에 도시되지 않은 메모리로부터 "최종 시간 워핑 윤곽선 부분"에 관련된 합산 값 및 "현재의 시간 워핑 윤곽선 부분"에 관련된 또다른 합산 값을 수신하도록 또한 구성될 수 있다. 이들 합산 값들은 종종 "last_warp_sum" 및 "cur_warp_sum)이라고 칭한다. 재스케일러(550)는 대응하는 시간 워핑 윤곽선 부분들이 재스케일되는데 사용되는 동일한 재스케일 인자를 이용하여 시간 워핑 윤곽선 부분들과 관련된 합산 값들을 재스케일하도록 구성된다. 따라서, 재스케일된 합산 값들이 획득된다.
일부 경우에, 상기 수단(520)은 재스케일러(550)로 입력되는 시간 워핑 윤곽선 부분들 및 또한 재스케일러(550)로 입력되는 합산 값들을 반복적으로 업데이트하도록 구성된 업데이터(updater)(560)를 포함할 수 있다. 예컨대, 업데이터(560)는 프레임 레이트로 상기 정보를 업데이트하도록 구성된다. 예컨대, 현 프레임 사이클의 "새로운 시간 워핑 윤곽선 부분"이 다음 프레임 사이클에서 "현재의 시간 워핑 윤곽선 부분"으로서의 역할을 할 수 있다. 유사하게, 현재 프레임 사이클에서의 재스케일된 "현재의 시간 워핑 윤곽선 부분"이 다음 프레임 사이클에서의 "최종 시간 워핑 윤곽선 부분"으로서의 역할을 할 수 있다. 따라서, 현재 프레임 사이클의 "최종 시간 워핑 윤곽선 부분"이 현재 프레임 사이클의 종료시에 폐기될 수 있기 때문에 메모리 효율적인 구현이 생성된다.
이를 요약하면, 상기 수단(520)은 각 프레임 사이클에 대해(일부 특정 프레임 사이클 예컨대, 프레임 시퀀스의 시작시 또는 프레임 시퀀스의 종료시를 제외하고, 또는 시간 워핑이 비활성화되는 프레임에서) "재스케일된 현재의 시간 워핑 윤곽선 부분" 및 "재스케일된 최종 시간 워핑 윤곽선 부분"의 "새로운 시간 워핑 윤곽선 부분"의 기술을 포함하는 시간 워핑 윤곽선 구간의 기술을 제공하도록 구성된다. 또한, 상기 수단(520)은 각 프레임 사이클에 대해(전술한 특정 프레임 사이클을 제외함), 예컨대, "새로운 시간 워핑 윤곽선 부분 합산 값", "재스케일된 현재의 시간 워핑 윤곽선 합산 값" 및 "재스케일된 최종 시간 워핑 윤곽선 합산 값"을 포함하는 워핑 윤곽선 합산 값들의 표현을 제공할 수 있다.
시간 워핑 제어 정보 계산기(530)는 상기 수단(520)에 의해 제공된 재구성된 시간 워핑 윤곽선 정보에 기초하여 시간 워핑 제어 정보(512)를 계산하도록 구성된다. 예컨대, 시간 워핑 제어 정보 계산기는 재구성된 시간 워핑 제어 정보에 기초하여 시간 윤곽선(572)을 계산하도록 구성된 시간 윤곽선 계산기(570)를 포함한다. 또한, 시간 워핑 윤곽선 정보 계산기(530)는 시간 윤곽선(572)을 수신하고 이에 기초하여 예컨대, 샘플 위치 벡터(576)의 형태로 샘플 위치 정보를 제공하도록 구성된 샘플 위치 계산기(574)를 포함한다. 샘플 위치 벡터(576)는 예컨대, 재샘플러(218)에 의해 수행된 시간 워핑을 기술한다.
시간 워핑 제어 정보 계산기(530)는 재구성된 시간 워핑 제어 정보로부터 전환길이 정보를 도출하도록 구성된 전환길이 계산기를 또한 포함한다. 전환길이 정보(582)는 예컨대, 좌측 전환길이를 기술하는 정보 및 우측 전환길이를 기술하는 정보를 포함한다. 전환길이는 예컨대, "최종 시간 워핑 윤곽선 부분", "현재의 시간 워핑 윤곽선 부분" 및 "새로운 시간 워핑 윤곽선 부분"에 의해 기술되는 시간 세그먼트들의 길이에 좌우될 수 있다. 예컨대, 전환길이는 "최종 시간 워핑 윤곽선 부분"에 의해 기술된 시간 세그먼트의 시간 연장이 "현재의 시간 워핑 윤곽선 부분"에 의해 기술된 시간 세그먼트의 시간 연장보다 짧거나 "새로운 시간 워핑 윤곽선 부분"에 의해 기술된 시간 세그먼트의 시간 연장이 "현재의 시간 워핑 윤곽선 부분"에 의해 기술된 시간 세그먼트의 시간 연장보다 짧다면, (디폴트 전환길이와 비교하여) 짧아질 수 있다.
추가로, 시간 워핑 제어 정보 계산기(530)는 좌측 및 우측 전환길이에 기초하여 소위 "첫번째 부분" 및 소위 "최종 부분"을 계산하도록 구성된 첫번째 및 최종 위치 계산기(584)를 더 포함할 수 있다. 윈도우잉 후에 이들 위치들 외의 영역들은 제로와 동일하며 그에 따라 시간 워핑을 위해 고려될 필요는 없기 때문에 "첫번째 위치" 및 "최종 위치"는 재샘플러의 효율을 증가시킨다. 여기에서, 샘플 위치 벡터(576)는 예컨대, 재샘플러(280)에 의해 수행된 시간 워핑에 의해 요구된 정보를 포함하는 것이 주지되어야 한다. 또한, 좌측 및 우측 전환길이들(582) 및 "첫번째 위치"와 "최종 위치"(586)는 예컨대, 윈도우어(216)에 의해 요구된 정보를 구성한다.
따라서, 상기 수단(520) 및 시간 워핑 제어 정보 계산기(530)는 샘플 레이트 조정(220), 윈도우 형상 조정(210) 및 샘플링 위치 계산(219)의 기능을 함께 포함할 수 있다.
이하에서, 오디오 디코더의 기능은 상기 수단(520)을 포함하고, 시간 워핑 제어 정보 계산기(530)는 도 6, 7a, 7b, 8, 9a-9c, 10a-10g, 11a, 11b, 및 12를 참조하여 설명된다.
도 6은 본 발명의 일 실시예에 따라 오디오 신호의 인코딩된 표현을 디코딩하는 방법의 플로우차트를 도시한다. 상기 방법(600)은 재구성된 시간 워핑 윤곽선 정보를 제공하는 단계를 포함하며, 상기 재구성된 시간 워핑 윤곽선 정보를 제공하는 단계는 워핑 노드 값들을 계산하는 단계(610), 워핑 노드 값들 사이를 보간하는 단계(620), 및 하나 이상의 이전에 계산된 워핑 윤곽선 부분들 및 하나 이상의 이전에 계산된 워핑 윤곽선 합산 값들을 재스케일하는 단계(630)를 포함한다. 상기 방법(600)은 단계 610 및 620에서 획득된 "새로운 시간 워핑 윤곽선 부분" 및 재스케일된 이전에 계산된 시간 워핑 윤곽선 부분들("현재의 시간 워핑 윤곽선 부분" 및 "최종 시간 워핑 윤곽선 부분")을 이용하여 그리고 선택적으로 재스케일된 이전에 계산된 워핑 윤곽선 합산 값들을 이용하여 시간 워핑 제어 정보를 계산하는 단계(640)를 더 포함한다. 결과적으로, 시간 윤곽선 정보, 및/또는 샘플 위치 정보, 및/또는 전환길이 정보 및/또는 첫번째 위치 및 최종 위치 정보는 단계 640에서 획득될 수 있다.
상기 방법(600)은 단계 640에서 획득된 시간 워핑 제어 정보를 이용하여 시간 워핑된 신호 재구성을 수행하는 단계(650)를 더 포함한다. 시간 워핑 신호 재구성에 관한 상세는 다음에 설명된다.
상기 방법(600)은 또한 이하 설명되는 바와 같이, 메모리를 업데이트하는 단계(660)을 더 포함한다.
시간 워핑 윤곽선 부분들의 계산
이하에서, 시간 워핑 윤곽선 부분들의 계산에 관한 상세가 도 7a, 7b, 8, 9a, 9b, 9c를 참조하여 설명된다.
도 7a의 도식적 표현(710)으로 도시된 최초 상태가 존재함을 가정한다. 도시된 바와 같이, 제1 워핑 윤곽선 부분(716)(워핑 윤곽선 부분 1) 및 제2 워핑 윤곽선 부분(718)(워핑 윤곽선 부분 2)이 존재한다. 워핑 윤곽선 부분들 각각은 통상적으로 메모리에 통상적으로 저장되어 있는 복수개의 이산 워핑 윤곽선 데이터 값들을 포함한다. 서로 다른 워핑 윤곽선 데이터 값들은 시간 값들과 관련되는데, 시간은 가로좌표(712)에 도시되어 있다. 워핑 윤곽선 데이터 값들의 크기는 가로좌표(714)에 도시되어 있다. 도시된 바와 같이, 제1 워핑 윤곽선 부분은 1의 최종 값을 가지며, 제2 워핑 윤곽선 부분은 1의 시작 값을 가지며, 1의 값은 "기설정된 값"으로 고려될 수 있다. 제1 워핑 윤곽선 부분(716)은 "지난번 시간 워핑 윤곽선 부분"("last_warp_contour" 이라고도 칭함)으로 고려될 수 있는 반면, 제2 워핑 윤곽선 부분(718)은 "현재의 시간 워핑 윤곽선 부분"("cur_warp_contour"이라고도 칭함)으로서 고려될 수 있다.
최초 상태로부터 시작하여, 새로운 워핑 윤곽선 부분이 예컨대, 상기 방법(600)의 단계 610, 620에서 계산된다. 따라서, 제3 워핑 윤곽선 부분("워핑 윤곽선 부분 3", 또는 "새로운 시간 워핑 윤곽선 부분" 또는 "new_warp_contour"으로도 칭함)의 워핑 윤곽선 데이터 값들이 계산된다. 계산은 예컨대, 도 9a에 도시된 알고리즘(910)에 따라 워핑 노드 값들의 계산 및 도 9a에 도시된 알고리즘(920)에 따라 워핑 노드 값들 간의 보간(620)에서 분리된다. 따라서, 기설정된 값(예컨대, 1)으로부터 시작하고 도7a의 도시적 표현(720)에 나타난 새로운 워핑 윤곽선 부분(722)이 획득된다. 도시된 바와 같이, 제1 시간 워핑 윤곽선 부분(716), 제2 시간 워핑 윤곽선 부분(718) 및 제3 새로운 시간 워핑 윤곽선 부분은 다음 및 인접한 시간 간격들과 관련된다. 또한, 제1 시간 워핑 윤곽선 부분(718)의 마지막 부분(718b)과 제3 시간 워핑 윤곽선 부분의 시작 부분(722a) 사이의 불연속성(724)이 존재함을 알 수 있다.
여기에서 불연속성(724)은 통상적으로 시간 워핑 윤곽선 부분 내에서 시간 워핑 윤곽선의 임의의 두 개의 시간적으로 인접한 워핑 윤곽선 데이터 값들 사이의 변동보다 큰 크기를 포함함이 주지되어야 한다. 이는 제3 시간 워핑 윤곽선 부분(722)의 시작 값(722a)이 제2 시간 워핑 윤곽선 부분(718)의 마지막 값(718b)에 상관없이, 기설정된 값(예컨대, 1)이 되도록 강제된다는 사실에 기인한다. 그러므로, 불연속성(724)은 2개의 인접한, 이산 워핑 윤곽선 데이터 값들 사이의 피할 수 없는 변동보다 크다.
그럼에도 불구하고, 제2 시간 워핑 윤곽선 부분(718)과 제3 시간 워핑 윤곽선 부분(722) 사이의 불연속성은 시간 워핑 윤곽선 데이터 값들의 추가적인 사용에 대해 불이익이 된다.
따라서, 제1 시간 워핑 윤곽선 부분 및 제2 시간 워핑 윤곽선 부분은 함께 상기 방법(600)의 단계(630)에서 재스케일된다. 예컨대, 제1 시간 워핑 윤곽선 부분(716)의 시간 워핑 윤곽선 데이터 값들 및 제2 시간 워핑 윤곽선 부분(718)의 시간 워핑 윤곽선 데이터 값들은 재스케일 인자("norm_fac"로도 칭함)로 곱셈에 의해 재스케일된다. 따라서, 제1 시간 워핑 윤곽선 부분(716)의 재스케일된 버전(716')이 획득되며, 또한 제2 시간 워핑 윤곽선 부분(718)의 재스케일된 버전(718')이 획득된다. 반면, 제3 시간 워핑 윤곽선 부분은 통상적으로 도 7a의 도시적 표현(730)에 도시된 바와 같이, 재스케일 단계에서 영향을 받지 않는다. 재스케일은 재스케일된 마지막 지점(718b')이 적어도 근사적으로 제3 시간 워핑 윤곽선 부분(722)의 시작 지점(722a)과 동일한 데이터 값을 포함하도록 수행된다. 따라서, 제1 시간 워핑 윤곽선 부분의 재스케일된 버전(716'), 제1 시간 워핑 윤곽선 부분의 재스케일된 버전(718') 및 제3 시간 워핑 윤곽선 부분(722)은 함께 (대략) 연속하는 시간 워핑 윤곽선 구간을 형성한다. 특히, 스케일링은 재스케일된 마지막 지점(718b')과 시작 지점(722a)의 데이터 값 사이의 차이가 시간 워핑 윤곽선 부분들(716', 718', 722)의 임의의 2개의 인접한 데이터 값들 사이의 차이의 최대값보다 크지 않도록 수행된다.
따라서, 재스케일된 시간 워핑 윤곽선 부분들(716', 718') 및 원래의 시간 워핑 윤곽선 부분(722)을 포함하는 대략 연속하는 시간 워핑 윤곽선 구간은 단계 640에서 수행되는, 시간 워핑 제어 정보의 계산을 위해 사용된다. 예컨대, 시간 워핑 제어 정보는 제2 시간 워핑 윤곽선 부분(718)과 시간적으로 관련된 오디오 프레임을 위해 계산될 수 있다.
그러나, 단계 640에서의 시간 워핑 제어 정보의 계산시에, 시간-워핑된 신호 재구성은 이하 상세히 설명되는 단계 650에서 수행될 수 있다.
이어서, 다음 오디오 프레임을 위한 시간 워핑 제어 정보를 획득할 필요가 있다. 이를 위해, 제1 시간 워핑 윤곽선 부분의 재스케일된 버전(716')은 더 이상 필요하지 않기 때문에 메모리를 절약하도록 폐기될 수 있다. 그러나, 재스케일된 버전(716')은 당연히 임의의 목적을 위해 저장될 수도 있다. 게다가, 제2 시간 워핑 윤곽선 부분의 재스케일된 버전(718')은 도 7b의 도식적 표현(740)에서 알 수 있는 바와 같이, 새로운 계산을 위해 "최종 시간 워핑 윤곽선 부분"의 위치를 취한다. 또한, 이전의 계산에서 "새로운 시간 워핑 윤곽선 부분"의 위치를 취한 제3 시간 워핑 윤곽선 부분(722)은 다음 계산을 위해 "현재의 시간 워핑 윤곽선 부분"의 역할을 한다. 이 관계는 도식적 표현(740)에 나타나 있다.
메모리의 업데이트(방법(600)의 단계 660) 다음으로, 새로운 시간 워핑 윤곽선 부분(752)이 도식적 표현(750)에 도시된 바와 같이 계산된다. 이를 위해, 방법(600)의 단계 610 및 620이 새로운 입력 데이터로 재-실행될 수 있다. 제4 시간 워핑 윤곽선 부분(752)은 현재를 위해 "새로운 시간 워핑 윤곽선 부분"의 역할을 수행한다. 도시된 바와 같이, 통상적으로 제3 시간 워핑 윤곽선 부분의 마지막 지점(722b)과 제4 시간 워핑 윤곽선 부분(752)의 시작 지점(752a) 사이의 불연속성이 통상적으로 존재한다. 이 불연속성(754)은 제2 시간 워핑 윤곽선 부분의 재스케일된 버전(718') 및 제3 시간 워핑 윤곽선 부분(722)의 원래의 버전의 재스케일링(방법(600)의 단계 630)에 의해 감소되거나 제거된다. 따라서, 제2 시간 워핑 윤곽선 부분의 2번-재스케일된 버전(718') 및 제3 시간 워핑 윤곽선 부분의 1번 재스케일된 버전(722')은 도 7b의 도시적 표현(760)으로부터 보여지는 바와 같이 획득된다. 도시된 바와 같이, 시간 워핑 윤곽선 부분들(718', 722', 752)은 단계 640의 재-실행에서 시간 워핑 제어 정보의 계산을 위해 사용될 수 있는 적어도 대략 연속하는 시간 워핑 윤곽선 구간을 형성한다. 예컨대, 시간 워핑 제어 정보는 시간 워핑 윤곽선 부분들(718', 722', 752)에 기초하여 계산될 수 있으며, 시간 워핑 제어 정보는 제2 시간 워핑 윤곽선 부분에 중심을 갖는 오디오 신호 시간 프레임에 관련된다.
일부 경우에, 시간 워핑 윤곽선 부분들 각각에 대해 관련된 워핑 윤곽선 합산 값을 가지는 것이 바람직함을 주지해야 한다. 예컨대, 제1 워핑 윤곽선 합산 값은 제1 시간 워핑 윤곽선 부분과 관련될 수 있으며, 제2 시간 워핑 윤곽선 합산 값은 제2 시간 워핑 윤곽선 부분과 관련될 수 있으며, 등등이 가능하다. 워핑 윤곽선 합산 값들은 예컨대, 단계 640에서 시간 워핑 제어 정보의 계산을 위해 사용될 수 있다.
예컨대, 시간 윤곽선 합산 값은 각각의 시간 워핑 윤곽선 부분의 워핑 윤곽선 데이터 값들의 합산을 나타낼 수 있다. 그러나, 시간 워핑 윤곽선 부분들이 스케일되기 때문에, 시간 워핑 윤곽선 합산 값이 그 관련된 시간 워핑 윤곽선 부분의 특성을 추종하도록, 시간 워핑 윤곽선 합산 값을 스케일하는 것이 종종 또한 바람직하다. 따라서, 제2 시간 워핑 윤곽선 부분(718)과 관련된 워핑 윤곽선 합산 값은 제2 시간 워핑 윤곽선 부분(718)이 그 스케일된 버전(718')을 획득하도록 스케일될 때 스케일될 수 있다(예컨대, 동일한 스케일링 인자에 의해). 유사하게, 제1 시간 워핑 윤곽선 부분(716)과 관련된 워핑 윤곽선 합산 값은 제1 시간 워핑 윤곽선 부분(716)이 원한다면 그 스케일된 버전(716')을 획득하도록 스케일될 때 (예컨대, 동일한 스케일링 인자로) 스케일될 수 있다.
또한, 재-관련지움(또는 메모리 재-할당)은 새로운 시간 워핑 윤곽선 부분을 고려하도록 진행할 때 수행될 수 있다. 예컨대, 시간 워핑 윤곽선 부분들(716', 718', 722)과 관련된 시간 워핑 제어 정보의 계산을 위해 "현재의 시간 워핑 윤곽선 합산 값"의 역할을 하는, 제2 시간 워핑 윤곽선 부분의 스케일된 버전(718')과 관련된 시간 윤곽선 합산 값은 시간 워핑 윤곽선 부분들(718', 722', 752)과 관련된 시간 워핑 제어 정보의 계산을 위해 "최종 시간 워핑 합산 값"으로서 고려될 수 있다. 유사하게, 제3 시간 워핑 윤곽선 부분(722)와 관련된 워핑 윤곽선 합산 값은 시간 워핑 윤곽선 부분들(716', 718', 722)과 관련된 시간 워핑 제어 정보의 계산을 위해 "새로운 워핑 윤곽선 합산 값"으로서 고려될 수 있으며, 시간 워핑 윤곽선 부분들(718', 722', 752)과 관련된 시간 워핑 제어 정보의 계산을 위해 "현재의 워핑 윤곽선 합산 값"으로서 작용하도록 매핑될 수 있다. 또한, 제4 시간 워핑 윤곽선 부분(752)의 새롭게 계산된 워핑 윤곽선 합산 값은 시간 워핑 윤곽선 부분들(718', 722', 752)에 관련된 시간 워핑 제어 정보의 계산을 위해 "새로운 워핑 윤곽선 합산 값"의 역할을 할 수 있다.
도 8에 따른 실시예
도 8은 본 발명의 실시예들에 따라 해결되는 문제를 나타낸 도식적 표현을 도시한다. 제1 도식적 표현(810)은 일부 종래 실시예들에서 획득된 시간 상에서 재구성된 상대적 피치의 시간적 전개를 나타낸다. 가로좌표(812)는 시간을 나타내고, 세로좌표(814)는 상대적 피치를 나타낸다. 커브(816)는 시간 상에서 상대적 피치의 시간적 전개를 나타내며, 상대적 피치 정보로부터 재구성될 수 있다. 상대적 피치 윤곽선의 재구성에 관하여, 시간 워핑된 변형 이산 코싸인 변환(MDCT)의 어플리케이션을 위해, 실제 프레임 내에서 피치의 상대적 변동에 대한 지식만이 필수적임을 주지해야 한다. 이를 이해하기 위해, 상대적 피치 윤곽선으로부터 시간 윤곽선을 획득하여, 동일한 상대적 피치 윤곽선의 스케일된 버전들을 위한 동일한 시간 윤곽선을 발생시키기 위한 계산 단계들을 참조한다. 이는 러므로, 절대 피치 값 대신에 상대적인 값을 인코딩하는 것만으로 충분하며 이는 코딩 효율을 증가시킨다. 효율을 더 증가시키기 위해, 실제 양자화된 값은 상대적 피치는 아니지만, (이하 상세히 설명되는 바와 같이) 피치에서의 상대적 변화 즉, 이전 상대적 피치에 대한 현재 상대적 피치의 비율이다. 예컨대, 신호는 전혀 고조파 구조를 나타내지 않는 일부 프레임에서, 추가적인 플래그가 전술한 방법에서 평편한 윤곽선을 코딩하는 대신에 평편한 피치 윤곽선을 선택적으로 지시할 수 있다. 실제 신호에서는, 이러한 프레임의 양은 통상적으로 충분히 높기 때문에 모든 시간에서 가산되는 추가적인 비트와 비-워핑된 프레임을 위해 절약된 비트들 사이의 절충안(trade-off)이 비트 절약을 위해 이익이 된다.
피치 변동(상대적 피치 윤곽선, 또는 시간 워핑 윤곽선)의 계산을 위한 시작 값은 임의로 선택될 수 있으며, 인코더와 디코더에서 다를 수조차 있다. 시간 워핑된 MDCT(TW-MDCT)의 속성으로 인해, 피치 변동의 서로 다른 시작 값들은 여전히 동일한 샘플 위치들 및 TW-MDCT를 수행하도록 적응된 윈도우 형상들을 산출한다.
예컨대, (오디오) 인코더는 예컨대, 음성 코딩에서 공지된 피치 추정 및 음성/비음성 결정을 적용함으로써 획득된, 선택적인 음성/비음성 스펙에 관련하여 샘플들에서 실제 피치 레그(leg)로서 표현된 모든 노드에 대해 피치 윤곽선을 얻는다. 만약 현재의 노트에 대해 분류(classification)가 음성으로 설정되거나, 음성/비음성 결정은 이용가능하지 않다면, 인코더는 실제 피치 레그 사이의 비율을 계산하고 양자화하거나, 비음성이면 비율을 1로 설정한다. 피치 변동이 적절한 방법(예컨대, 신호 변동 추정)에 의해 직접 추정되는 다른 예가 가능하다.
디코더에서, 코딩된 오디오의 시작시 제1 상대적 피치를 위한 시작 값은 임의의 값 예컨대, 1로 설정된다. 그러므로, 디코딩된 상대적 피치 윤곽선은 더 이상 인코더 피치 윤곽선의 동일한 절대 범위에 있지 않지만 그의 스케일된 버전이다. 여전히, 전술한 바와 같이, TW-MDCT 알고리즘은 동일한 샘플 위치들 및 윈도우 형상들을 발생시킨다. 또한, 인코더는, 인코딩된 피치 비율들이 평편한 피치 윤곽선을 산출한다면, 전체 코딩된 윤곽선을 전송하지 않는 것을 결정하지만, 대신 액티브피치데이터(activePitchData) 플래그를 0으로 설정하여 이 프레임에서 비트들을 절약한다(이 프레임에서 예컨대, numPitchbits * numPitches 비트들을 절약한다).
이하, 본 발명의 피치 윤곽선 재정규화의 부재로 발생하는 문제들이 설명된다. 전술한 바와 같이, TW-MDCT에 대해, 현재 블록 주위로 어떤 제한된 시간 범위(span) 내에서 상대적 피치 변화만이 시간 워핑의 계산 및 정확한 윈도우 형상 적응(전술한 설명 참조)을 위해 필요하다. 시간 워핑은 피치 변화가 검출된 세그먼크들을 위한 디코딩된 윤곽선을 추종하고 모든 다른 경우(도 8의 도식적 표현(810)을 참조)에 일정하게 유지한다. 하나의 블록의 윈도우 및 샘플링 위치들의 계산을 위해, 3개의 연속하는 상대적 피치 윤곽선 세그먼트들(예컨대, 3개의 시간 워핑 윤곽선 부분들)이 필요하며, 세 번째 세그먼트는 프레임에서 새롭게 전송된 것("새로운 시간 워핑 윤곽선 부분"이라고 칭함)이며, 나머지 두 개의 세그먼트들(예컨대, "최종 시간 워핑 윤곽선 부분" 및 "현재의 시간 워핑 윤곽선 부분"이라고 칭함)은 과거(past)로부터 버퍼링된다.
예를 얻기 위해, 예컨대, 도 7a 및 7b를 참조하여 그리고 또한 도 8의 도식적 표현들(810, 860)을 참조하여 설명이 이루어진다. 예컨대, 프레임 0으로부터 프레임 2로 연장하는 프레임 1을 위한(또는 프레임 1에 관련된) 윈도우의 샘플링 위치들을 계산하기 위해, 프레임 0, 1 및 2의(또는 이와 관련된) 피치 윤곽선들이 필요하다. 비트 스트림에서, 프레임 2를 위한 피치 정보만이 현재의 프레임에서 전송되고, 나머지 2개는 과거로부터 취한다. 여기에서 설명하는 바와 같이, 피치 윤곽선은 프레임 2의 첫번째 노드에서 피치를 획득하는 등을 위해 프레임 1의 최종 피치에 제1 디코딩된 상대적 피치 비율을 적용함으로써 연속될 수 있다. 피치 윤곽선이 단순히 연속된다면(즉, 윤곽선의 새롭게 전송된 부분이 어떠한 변경 없이 기존 2개의 부분들에 붙인다면), 코더의 내부 넘버 포맷에서의 범위 오버플로는 어떤 시점 후에 발생하는 것이 신호의 속성으로 인해, 가능하다. 예컨대, 신호는 시작시에 강한 고조파 특징 및 높은 피치 값으로 시작하여 세그먼트를 걸쳐 감소하며 감소하는 상대적 피치를 발생시킨다. 그런 다음, 피치 정보를 가지지 않은 세그먼트가 뒤따를 수 있으며, 그에 따라 상대적 피치는 일정하게 유지한다. 그런 다음, 다시 고조파 구간이 이전 세그먼트의 최종 절대 피치보다 큰 절대 피치로 시작할 수 있으며 다시 아래로 감소한다. 그러나, 하나가 단순히 상대적 피치를 이어간다면, 최종 고조파 세그먼트의 종료시와 동일하며 추가로 감소하는 등이 일어난다. 만약 신호가 충분히 강하고, 그 고조파 세그먼트들에서 전체적으로 오르락 내리락하는 경향(도 8의 도식적 표현(810)에 도시된 바와 같이)을 가지면, 상대적 피치는 내부 넘버 포맷의 범위의 경계에 더 빨리 또는 더 늦게 도달한다. 음성 신호들이 이러한 특성을 정말 나타내는 것은 음성 코딩으로부터 잘 알려져 있다. 그러므로, 음성을 포함하는 실제 신호의 이어진 세트(concatenated set)의 인코딩은 전술한 통상적인 방법을 이용하면 상대적으로 짧은 양의 시간 후에 상대적 피치를 위해 사용된 부동 값들(float values)의 범위를 실제로는 초과한다.
요약하면, 피치가 결정될 수 있는 오디오 신호 세그먼트(또는 프레임)에 대해, 상대적인 피치 윤곽선(또는 시간 워핑 윤곽선)의 적절한 전개가 결정될 수 있다. 피치가 결정될 수 없는(예컨대, 오디오 신호 세그먼트들이 잡음성이기 때문에) 오디오 신호 세그먼트들( 또는 오디오 신호 프레임들)에 대해, 상대적인 피치 윤곽선(또는 시간 워핑 윤곽선)은 일정하게 유지될 수 있다. 따라서, 만약 증가하는 피치와 감소하는 피치를 갖는 오디오 세그먼트들 사이에 불균형(imbalance)이 존재하였다면, 상대적 피치 윤곽선(또는 시간 워핑 윤곽선)은 수치적 언더플로 또는 수치적 오버플로를 겪을 수 있다.
예컨대, 도식적 표현(810)에서, 상대적 피치 윤곽선은 감소하는 피치를 갖는 복수개의 상대적 피치 윤곽선 부분들(820a, 820b, 820c, 820d), 피치가 없는 일부 오디오 세그먼트들(822a, 822b), 증가하는 피치를 갖는 비오디오 세그먼트들이 존재하는 경우에 대해 도시된 것이다. 따라서, 상대적 피치 윤곽선(816)은 수치적 언더플로(적어도 매우 불리한 환경 하에서)를 겪는다.
이하에서, 이 문제의 해결책이 설명된다. 전술한 문제 특히, 수치적 언더플로 또는 오버플로를 방지하기 위해, 주기적 상대적 피치 윤곽선 재정규화(renormalization)가 본 발명의 일 측면에 따라 도입되었다. 워핑된 시간 윤곽선 및 윈도우 형상의 계산이 전술한 3개의 상대적 피치 윤곽선 세그먼트들("시간 워핑 윤곽선 부분들"라고도 함)에만 의존하기 때문에, 여기에서 설명되는 바와 같이, 이 윤곽선("시작 워핑 윤곽선 부분들"의 3개의 조각으로 이루어진 예컨대, 시간 워핑 윤곽선)을 모든 프레임(예컨대, 오디오 신호)에 대해 동일한 출력에서 다시 정규화할 수 있다.
이를 위해, 기준(reference)이 제2 윤곽선 세그먼트의 최종 샘플("시간 워핑 윤곽선 부분"이라고도 칭함)이 되도록 선택되며, 윤곽선은 이 샘플이 1.0(도 8의 도식적 표현(860)을 참조)의 값을 갖도록 하는 방식으로 새롭게 정규화된다(예컨대, 선형 도메인에서 곱셈으로).
도 8의 도식적 표현(860)은 상대적인 피치 윤곽선 정규화를 나타낸다. 가로좌표(862)는 프레임(프레임 0, 1, 2)으로 분할된 시간을 나타낸다. 가로좌표(864)는 상대적 피치 윤곽선의 값을 나타낸다.
정규화 이전의 상대적 피치 윤곽선은 870으로 지시되며, 2개의 프레임(예컨대, 프레임 번호 0 및 프레임 번호 1)을 커버한다. 시작 값(또는 시간 워핑 윤곽선 시작 값)으로부터 시작하는 새로운 상대적 피치 윤곽선 세그먼트("시간 워핑 윤곽선 부분"이라고도 칭함)는 874에 의해 지시된다. 도시된 바와 같이, 기설정된 상대적인 피치 윤곽선 시작 값(예컨대, 1)으로부터 새로운 상대적 피치 윤곽선 세그먼트(874)의 재시작은 시간 상에서 재시작 지점에 앞선 상대적인 피치 윤곽선 세그먼트(870)와 새로운 상대적인 피치 윤곽선 세그먼트(874) 사이의 878로 지시된 불연속성을 초래한다. 이 불연속성은 윤곽선으로부터의 임의의 시간 워핑 제어 정보의 도출을 위한 가혹한 문제를 초래하며, 오디오 왜곡을 발생시킬 수 있다. 그러므로, 시간 상에서 재시작 지점 전에 이전에 획득된 상대적 피치 윤곽선 세그먼트(870)는 재스케일되어 재스케일된 상대적 피치 윤곽선 세그먼트(870')를 획득한다. 정규화는 상대적 피치 윤곽선 세그먼트(870)의 최종 샘플이 기설정된 상대적인 피치 윤곽선 시작 값(예컨대, 1.0)으로 스케일되도록 수행된다.
알고리즘에 관한 상세한 설명
이하에서, 본 발명의 일 실시예에 따른 오디오 디코더에 의해 수행되는 알고리즘들 중 일부가 상세히 설명된다. 이 목적을 위해, 도 5, 6, 9a, 9b, 9c, 및 10a-10g를 참조한다. 또한, 도 11a 및 11b의 데이터 구성요소들, 헬프 구성요소들(help elements) 및 상수의 범례를 참조한다.
일반적으로 말하면, 여기에서 설명되는 방법은 시간 워핑된 변형 이산 코싸인 변환에 따라 인코딩되는 오디오 스트림을 디코딩하는데 사용될 수 있다고 말할 수 있다. 따라서, TW-MDCT가 오디오 스트림에 대해 이용되면(특정 구성 정보에 포함될 수 있는, 예컨대, "twMdct" 플래그라고 칭하는 플래그에 의해 지시될 수 있음), 시간 워핑된 필터 뱅크 및 블록 스위칭은 표준 필터 뱅크 및 블록 스위칭을 대체할 수 있다. 역 변형 이산 코싸인 변환(IMDCT)에 추가적으로, 시간 워핑된 필터 뱅크 및 블록 스위칭은 일반적인 일정하게 간격진 시간 그리드로부터 임의로 간격진 시간 그리드로의 시간-대-시간 도메인 매핑 및 윈도우 형상들의 대응하는 적응을 포함한다.
이하에서, 디코딩 프로세스가 설명된다. 첫번째 단계에서, 워핑 윤곽선이 디코딩된다. 워핑 윤곽선은 예컨대, 워핑 윤곽선 노드들의 코드북 인덱스들을 이용하여 인코딩될 수 있다. 워핑 윤곽선 노드들의 코드북 인덱스들은 예컨대, 도 9a의 도식적 표현(910)에 도시된 알고리즘을 이용하여 디코딩된다. 상기 알고리즘에 따라, 워핑 비율 값들(warp-value_tb1)은 예컨대, 도 9c의 매핑 테이블(990)에 의해 정의된 매핑을 이용하여 워핑 비율 코드북 인덱스들(tw_ratio)로부터 도출된다. 참조 번호 910으로 도시된 알고리즘으로부터 보여지는 바와 같이, 플래그(tw_data_present)가 시간 워핑 데이터가 존재하지 않음을 나타낸다면, 워핑 노드 값들은 일정한 기설정된 값으로 설정될 수 있다. 반면, 만약 플래그가 시간 워핑 데이터가 존재함을 나타낸다면, 제1 워핑 노드 값은 기설정된 시간 워핑 윤곽선 시작 값(예컨대, 1)으로 설정될 수 있다. (시간 워핑 윤곽선 부분의) 다음 워핑 노드 값들은 다수의 시간 워핑 비율 값들의 곱의 형성에 기초하여 결정될 수 있다. 예컨대, 제1 워핑 노드(i=0)에 바로 후속하는 노드의 워핑 노드 값은 제1 워핑 비율 값과 동일하거나(만약 시작 값이 1이면), 제1 워핑 비율 값과 시작 값의 곱과 동일할 수 있다. 다음 시간 워핑 노드 값들(i=2, 3,..., num_tw_nodes)은 다수의 시간 워핑 비율 값들의 곱을 형성함으로써 계산된다(시작 값이 1이 아니라면 선택적으로 시작 값을 고려할 수 있음). 자연히, 곱 구조(product formation)의 순서는 임의적이다. 그러나, i-번째 워핑 노드 값과 시간 워핑 윤곽선의 2개의 후속하는 노드 값들 사이의 비율을 기술하는 단일 워핑 비율 값을 곱함으로써 i-번째 워핑 노드 값으로부터 (i+1)-번째 워핑 노드 값을 도출하는 것이 바람직하다.
참조 번호 910에 도시된 알고리즘으로부터 알 수 있는 바와 같이, 단일 오디오 프레임에 걸쳐 하나의 시간 워핑 윤곽선 부분을 위한 다수의 워핑 비율 코드북 인덱스들이 존재할 수 있다(여기에서, 시간 워핑 윤곽선 부분들과 오디오 프레임들 사이에 일대일 대응이 존재할 수 있음)
요약하면, 복수개의 시간 워핑 노드 값들은 단계 610에서, 예컨대, 워핑 노드 값 계산기(544)를 이용하여 주어진 시간 워핑 윤곽선 부분(또는 주어진 오디오 프레임)을 위해 획득될 수 있다. 이어서, 선형 보간이 시간 워핑 노드 값들(warp_node_value[i]) 사이에서 수행될 수 있다. 예컨대, "새로운 시간 워핑 윤곽선 부분"(new_warp_contour)의 시간 워핑 윤곽선 데이터 값들을 획득하기 위해, 도 9a의 참조 번호 920에 도시된 알고리즘이 이용될 수 있다. 예컨대, 새로운 시간 워핑 윤곽선 부분의 샘플들의 개수는 역 변형 이산 코싸인 변환의 시간 도메인 샘플들의 개수의 절반과 동일하다. 이 문제와 관련하여, 인접한 오디오 신호 프레임들은 통상적으로 MDCT 또는 IMDCT의 시간 도메인 샘플들의 개수의 절반만큼 쉬프트된다(적어도 근사적으로). 다시 말해, 샘플-방식 (N_long samples) new_warp_contour[]을 획득하기 위해, warp_node_values[]이 참조 번호 920에서 도시된 알고리즘을 이용하여 동일하게 간격진 (interp_dist apart) 노드들 사이에서 선형적으로 보간된다.
보간은 예컨대, 도 5의 장치의 보간기(548)에 의해 또는 알고리즘(600)의 단계(620)에서 수행될 수 있다.
상기 프레임(즉, 현재 고려되는 프레임)을 위한 전체 워핑 윤곽선을 획득하기 전에, 과거로부터 버퍼링된 값들은, past_warp_contour[]의 최종 워핑 값이 1(또는 새로운 시간 워핑 윤곽선 부분의 시작 값과 바람직하게 동일한 어떤 다른 기설정된 값)이 되도록 재스케일된다.
여기에서 "이전 워핑 윤곽선(past warp contour)"이란 용어는 바람직하게 전술한 "최종 시간 워핑 윤곽선 부분" 및 전술한 "현재의 시간 워핑 윤곽선 부분"을 포함함을 주지해야 한다. 또한, "이전 워핑 윤곽선"은 통상적으로 IMDCT의 시간 도메인 샘플들의 개수와 동일한 길이를 포함하여, "이전 워핑 윤곽선"의 값들은 0과 2*N_long-1 사이의 인덱스로 지시된다. 따라서, "past_warp_contour[2*N_long-1]은 "이전 워핑 윤곽선"의 최종 워핑 값을 지시한다. 따라서, 정규화 인자 "norm_fac"는 도 9a에서 참조 부호 930에 도시된 수식에 따라 계산될 수 있다. 따라서, 이전 워핑 윤곽선("최종 시간 워핑 윤곽선 부분" 및 "현재의 시간 워핑 윤곽선 부분"을 포함함)은 도 9a에서 참조 번호 932에 도시된 수식에 따라 곱으로 재스케일될 수 있다. 또한, "최종 워핑 윤곽선 합산 값"(last_warp_sum) 및 "현재의 워핑 윤곽선 합산 값"(cur_warp_sum)은 도 9a에서 참조 번호 934 및 936에서 도시된 바와 같이, 곱으로 재스케일된다. 재스케일링은 도 5의 재스케일러(550)에 의해 또는 도 6의 방법(600)의 단계 630에서 수행될 수 있다.
여기에서 예컨대, 참조 번호 930에서 설명된 정규화는 "1"의 시작 값을 임의의 다른 원하는 기설정된 값으로 대체함으로써 변경될 수 있다.
정규화를 적용함으로써, "시간 워핑 윤곽선 구간"으로 지시된 "full warp_contour[]"가 "past_warp_contour"와 "new_warp_contour"을 연결함으로써 획득된다. 따라서, 3개의 시간 워핑 윤곽선 부분들("최종 시간 워핑 윤곽선 부분", "현재의 시간 워핑 윤곽선 부분" 및 "새로운 시간 워핑 윤곽선 부분")은 "전체 워핑 윤곽선"을 형성하며, 이는 계산의 추가적인 단계들에 적용될 수 있다.
또한, 워핑 윤곽선 합산 값(new_warp_sum)은 예컨대, 모든 "new_warp_contour[]" 값들에 대한 합으로 계산된다. 예컨대, 새로운 워핑 윤곽선 합산 값은 도 9a에서 참조 번호 940에 도시된 알고리즘에 따라 계산될 수 있다.
전술한 계산 이후에, 시간 워핑 제어 정보 계산기(330)에 의해 또는 방법(600)의 단계 640에 의해 요구된 입력 정보가 이용 가능하다. 따라서, 시간 워핑 제어 정보의 계산(640)은 예컨대, 시간 워핑 제어 정보 계산기(530)에 의해 수행될 수 있다. 또한, 시간 워핑된 신호 재구성(650)은 오디오 디코더에 의해 수행될 수있다. 계산(640) 및 시간-워핑된 신호 재구성(650)은 모두 이하 더 상세히 설명된다.
그러나, 본 알고리즘은 반복적으로 진행됨을 주지하여야 한다. 그러므로, 메모리를 업데이트하는 것이 계산적으로 효율적이다. 예컨대, 최종 시간 워핑 윤곽선 부분에 관한 정보를 폐기할 수 있다. 또한, "현재의 시간 워핑 윤곽선 부분"을 다음 계산 주기에서 "최종 시간 워핑 윤곽선 부분"으로 사용하는 것이 권장된다. 또한, "새로운 시간 워핑 윤곽선 부분"을 다음 계산 주기에서 "현재의 시간 워핑 윤곽선 부분"으로 사용하는 것이 권장된다. 이 할당은 도 9b에서 참조 번호 950에 도시된 수식(warp_contour[n]은 2* n_long≤n<3·n_long에 대해 지금의 "새로운 시간 워핑 윤곽선 부분"을 나타낸다)을 이용하여 달성될 수 있다.
적절한 할당이 도 9b에서 참조 번호 952 및 954에서 볼 수 있다.
다시 말해, 다음 프레임을 디코딩하는데 사용된 메모리 버퍼는 참조 번호 950, 952 및 954에 도시된 수식에 따라 업데이트될 수 있다.
만약 적절한 정보가 이전 프레임 동안 발생되지 않았다면, 수식 950, 952 및 954에 따른 업데이트는 합리적인 결과를 제공하지 않는다. 따라서, 제1 프레임을 디코딩하기 전에 또는 만약 최종 프레임이 스위칭된 코더에 관련하여 다른 타입의 코더(예컨대, LPC 도메인 코더)에서 인코딩되었다면, 메모리 상태는 도 9b의 참조 번호 960, 962, 및 964에 도시된 수식들에 따라 설정될 수 있다.
시간 워핑 제어 정보의 계산
이하에서, 어떻게 시간 워핑 제어 정보가 시간 워핑 윤곽선(예컨대, 3개의 시간 워핑 윤곽선 부분들을 포함함)에 기초하여 그리고 시간 워핑 합산 값들에 기초하여 계산될 수 있는 지에 대하여 간략히 설명한다.
예컨대, 시간 워핑 윤곽선을 이용하여 시간 윤곽선을 재구성하는 것이 바람직하다. 이를 위해, 도 10a에서 참조 번호 1010, 1012에 도시된 알고리즘이 사용될 수 있다. 도시된 바와 같이, 시간 윤곽선은 인덱스 i(0≤i≤3·n_long)를 대응하는 시간 윤곽선 값으로 매핑한다. 이러한 매핑의 예가 도 12에 도시되어 있다.
시간 윤곽선의 계산에 기초하여, 선형 시간 스케일에 따라 시간 워핑된 샘플들의 위치들을 나타내는 샘플 위치(sample_pos[])를 계산하는 것이 통상적으로 요구된다. 이러한 계산은 도 10b에서 참조 번호 1030에 도시된 알고리즘을 이용하여 수행될 수 있다. 알고리즘 1030에서, 도 10a에서 참조 번호 1020 및 1022에 도시된 헬퍼 함수들이 사용된다. 따라서, 샘플 시간에 대한 정보가 획득될 수 있다.
또한, 시간 워핑된 전환들의 몇몇 길이들(warped_trans_len_left; warped_trans_len_right)이 예컨대, 도 10b에 도시된 알고리즘(1032)를 이용하여 계산된다. 선택적으로, 시간 워핑 전환길이들은 예컨대, 도 10b의 참조 번호 1034에 도시된 알고리즘을 이용하여 윈도우 타입 또는 변환 길이에 좌우되어 적응적으로 될 수 있다. 또한, 소위 "첫번째 위치" 및 소위 "최종 위치"는 예컨대, 도 10b에서 참조 부호 1036에 도시된 알고리즘을 이용하여 전환길이 정보에 기초하여 계산될 수 있다. 요약하면, 장치(530)에 의해 또는 방법(600)의 단계 640에서 수행될수 있는 샘플 위치 및 윈도우 길이 조정이 수행된다. "warp_contour[]"으로부터 선형 시간 스케일에 따른 시간 워핑된 샘플들의 샘플 위치들("sample_pos[]")의 벡터가 계산될 수 있다. 이를 위해, 먼저 시간 윤곽선은 참조 번호 1010, 1012에 도시된 알고리즘을 이용하여 발생될 수 있다. 참조 번호 1020 및 1022에서 도시된 헬퍼 함수들 "warp_in_vec()" 및 "warp_time_inv()"을 이용하여, 샘플 위치 벡터 ("sample_pos[]") 및 "전환길이들"("warped_trans_len_left" 및 "warped_trans_len_right")이 예컨대, 참조 번호 1030, 1032, 1034, 1036에 도시된 알고리즘을 이용하여 계산된다. 따라서, 시간 워핑 제어 정보(512)가 획득된다.
시간 워핑 신호 재구성
이하, 시간 워핑 제어 정보에 기초하여 수행될 수 있는 시간 워핑된 신호 재구성이 시간 워핑 윤곽선의 계산이 적절한 전후 관계를 위해 간략히 설명된다.
오디오 신호의 재구성은 당업자에 잘 알려져 있기 때문에 여기에서 설명되지 않는 역 변형 이산 코싸인 변환의 실행을 포함한다. 역 변형 이상 코싸인 변환의 실행은 일련의 주파수 도메인 계수들에 기초하여 워핑된 시간 도메인 샘플들을 재구성하게 한다. IMDCT의 실행은 예컨대, 2048개의 워핑된 시간 도메인 샘플들로 이루어진 프레임이 1024개의 주파수 도메인 계수들 집합에 기초하여 재구성됨을 의미하는, 예컨대, 프레임-단위(frame-wise)로 수행될 수 있다. 정확한 재구성을 위해, 2개 이하의 후속 윈도우들이 중첩하는 것이 필요하다. TW-MDCT의 특성으로 인해, 하나의 프레임의 역-시간 워핑된 부분은 이웃하지 않은 프레임으로 연장되어, 그에 따라 전술한 필수 조건을 위반할 수도 있다. 그러므로, 윈도우 형상의 페이딩 길이는 전술한, 적절한 warped_trans_len_left 및 warped_trans_len_right를 계산함으로써 짧아질 필요가 있다.
그런 다음, 윈도우잉 및 블록 스위칭(650b)은 IMDCT로부터 획득된 시간 도메인 샘플들에 적용된다. 윈도우잉 및 블록 스위칭은 윈도우잉된 워핑된 시간 도메인 샘플들을 획득하기 위해 시간 워핑 제어 정보에 따라 IMDCT(650a)에 의해 제공된 워핑된 시간 도메인 샘플들에 적용될 수 있다. 예컨대, "window_shape" 정보 또는 엘리먼트에 따라, 서로 다른 오버샘플링된 변환 윈도우 프로토타입들이 상요될 수 있으며, 오버샘플링된 윈도우들의 길이는 도 10c의 참조 번호 1040에 도시된 수식에 의해 주어질 수 있다. 예컨대, 제1 타입의 윈도우 형상(예컨대, window_shape==1)에 대해, 윈도우 계수들은 도 10c에서 참조 번호 1042에 도시된 정의에 따라 "Kaiser-Bessel" drived(KBD) 윈도우에 의해 주어지는데, 여기에서 W', 즉 "Kaiser-Bessel 커널 윈도우 함수"는 도 10c의 참조 번호 1044에 도시된 바와 같이 정의된다.
다르게는, 다른 윈도우 형상이 사용되면(예컨대, window_shape==0), 싸인 윈도우는 참조 번호 1046에서의 정의에 따라 사용될 수 있다. 모든 종류의 윈도우 시퀀스들("window_sequences")에 대해, 좌측 윈도우 부분을 위해 사용된 프로토타입은 이전 블록의 윈도우 형상에 의해 결정된다. 도 10c에서 참조 번호 1048에 도시된 공식(formula)는 이 사실을 표현한다. 유사하게, 우측 윈도우 형상을 위한 프로토타입은 도 10c에서 참조 번호 1050에 도시된 공식에 의해 결정된다.
이하, IMDCT에 의해 제공된 워핑된 시간 도메인 샘플들로의 전술한 윈도우들의 적용이 설명된다. 일부 실시예들에서, 프레임을 위한 정보는 복수개의 시퀀스들(예컨대, 8개의 짧은 시퀀스들)에 의해 제공될 수 있다. 다른 실시예에서, 프레임을 위한 정보는 서로 다른 길이의 블록들을 사용하여 제공될 수 있는데, 특정 처리가 시작 시퀀스들, 정지 스퀀스들 및/또는 비표준 길이의 시퀀스들에 대해 요구될 수 있다. 그러나, 전환길이(transitional length)는 전술한 바와 같이 결정될 수 있기 때문에, 8개의 짧은 시퀀스들(적절한 프레임 타입 정보 "eight_short_sequence"에 의해 지시됨) 및 모든 다른 프레임들을 이용하여 인코딩된 프레임들을 구별하는 것으로 충분할 수 있다.
예컨대, 8개의 짧은 시퀀스에 의해 기술된 프레임에서, 도 10d에서 참조 번호 1060으로서 도시된 알고리즘이 윈도우잉을 위해 적용될 수 있다. 반면, 다른 정보를 이용하여 인코딩된 프레임에 대해서, 도 10e에서 참조 번호 1064에 도시된 알고리즘이 적용될 수 있다. 다시 말해, 도 10d에서 참조 번호 1060에 도시된 C-코드형 부분은 소위 "eigth-short-sequence"의 윈도우잉 및 내부 중첩-가산을 기술한다. 반면, 도 10d에서 참조 번호 1064에 도시된 C-코드-형 부분은 다른 경우에 윈도우잉을 기술한다.
재샘플링
이하, 시간 워핑 제어 정보에 따른 윈도우잉된 워핑된 시간 도메인 샘플들 역 시간 워핑(650c)이 설명되며, 그에 따라 규칙적으로 샘플링된 시간 도메인 샘플들 또는 단순히 시간 도메인 샘플들이 시간-변화하는 재샘플링에 의해 획득된다. 시간-변화하는 재샘플링에서, 윈도우잉된 블록 z[]은 예컨대, 도 10f에서 참조 번호 1070에 도시된 임펄스 응답을 이용하여 샘플링된 위치들에 따라 재샘플링된다. 재샘플링 이전에, 윈도우잉된 블록은 도 10f에서 참조 번호 1072에 도시된 바와 같이, 양 끝에서 0으로 채워질 수 있다. 재샘플링 자체는 도 10f에서 참조 번호 1074에 도시된 의사 코드 구간에 의해 기술된다.
포스트- 재샘플러 프레임 처리
이하, 시간 도메인 샘플들의 선택적인 후처리(post-processing)(650d)이 설명된다. 일부 실시예들에서, 후-재샘플링 프레임 처리는 윈도우 시퀀스의 타입에 따라 수행될 수 있다. 파라미터 "window_sequence"에 따라, 어떤 추가적인 처리 단계들이 적용될 수 있다.
예컨대, 만약 윈도우 시퀀스가 소위 "EIGHT_SHORT_SEQUENCE", 소위 "LONG_START_SEQUENCE", 소위 "STOP_START_SEQUENCE", 소위 LPD_SEQUENCE가 후속하는 "STOP_START_1152_SEQUENCE" 이면, 참조 번호 1080a, 1080b, 1082에 도시된 바와 같은 후처리가 수행될 수 있다.
예컨대, 다음 윈도우 시퀀스가 소위 "LPD_SEQUENCE"이면, 정정 윈도우 Wcorr(n)가 참조 번호 1080b에 도시된 정의들을 고려하여, 참조 번호 1080a에 도쇠된 바와 같이 계산될 수 있다. 또한, 정정 윈도우 Wcorr(n)가 도 10g에서 참조 번호 1082에 도시된 바와 같이 적용될 수 있다.
다른 모든 경우에 대해서는, 도 10g에서 참조 번호 1084에서 알 수 있는 바와 같이 아무것도 수행되지 않는다.
이전 윈도우 시퀀스들과의 중첩 및 가산
또한, 현재의 시간 도메인 샘플들의 하나 이상의 이전 시간 도메인 샘플들과의 중첩-및-가산(650e)이 수행될 수 있다. 중첩 및 가산은 모든 시퀀스들에 대해 동일할 수 있으며, 도 10g에서 참조 번호 1086에 도시된 바와 같이 수학적으로 기술될 수 있다.
범례
주어진 설명에 관하여, 도 11a 및 11d에 도시된 범례를 참조한다. 특히, 역변환을 위한 합성 윈도우 길이 N은 통상적으로 문법 엘리먼트 "window_sequence" 및 알고리즘적 콘텍스트의 함수이다. 예컨대, 도 11b의 참조 번호 1190에 도시된 바와 같이 정의될 수 있다.
도 13에 따른 실시예
도 13은 도 5를 참조하여 설명된 수단(520)의 기능을 포함하며, 재구성된 시간 워핑 윤곽선 정보를 제공하는 수단(1300)의 블록도를 나타낸다. 그러나, 데이터 경로 및 버퍼가 더 상세히 도시되어 있다. 수단(1300)은 워핑된 노드 값 계산기(544)의 기능을 갖는 워핑 노드 값 계산기(1344)를 포함한다. 워핑 노드 값 계산기(1344)는 인코딩된 워핑 비율 정보로서 워핑 비율의 코드북 인덱스 "tw_ratio[]"를 수신한다. 워핑 노드 값 계산기는 시간 워핑 비율 인덱스의 도 9c에 도시된 시간 워핑 비율 값으로의 매핑을 예컨대, 나타내는 워핑 값 테이블을 포함한다. 워핑 노드 값 계산기(1344)는 도 9a의 참조 번호 910에 나타난 알고리즘을 수행하는 승산기(multiplier)를 더 포함할 수 있다. 따라서, 워핑 노드 값 계산기는 워핑 노드 값들 "warp_node_values[i]"을 제공한다. 또한, 수단(1300)은 보간기(540a)의 기능을 가지며, 도 9a에서 참조 번호 920에 도시된 알고리즘을 수행하여 새로운 워핑 윤곽선("new_warp_contour")의 값들을 획득하도록 구성될 수 있는 워핑 윤곽선 보간기(1348)를 포함한다. 수단(1300)은 또한 새로운 워핑 윤곽선(즉, 2·n_long≤i<3·n_long를 갖는 warp_contour [i])의 값들을 저장하는 새로운 워핑 윤곽선 버퍼(1350)를 포함한다. 수단(1300)은 "최종 시간 워핑 윤곽선 부분" 및 "현재의 시간 워핑 윤곽선 부분"을 저장하고 재스케일링에 응답하여 그리고 현재 프레임의 처리 완료에 응답하여 메모리 켄텐츠를 업데이트하는 이전 워핑 윤곽선 버퍼/업데이터(1360)를 더 포함한다. 따라서, 이전 워핑 윤곽선 버퍼/업데이터(1360)는 이전 워핑 윤곽선 버퍼/업데이터와 이전 워핑 윤곽선 재스케일러가 함께 알고리즘들(930, 932, 934, 936, 950, 960)의 기능을 수행하도록 이전 워핑 윤곽선 재스케일러(1370)와 결합할 수 있다. 선택적으로, 이전 워핑 윤곽선 버퍼/업데이터(1360)는 알고리즘들(932, 936, 952, 954, 962, 964)의 기능을 포함할 수 있다.
따라서, 수단(1300)은 워핑 윤곽선("warp_contour")을 제공하고, 최적으로 워핑 윤곽선 합산 값들을 또한 제공한다.
도 14에 따른 오디오 신호 인코더
이하, 본 발명의 일 측면에 따른 오디오 신호 인코더가 설명된다. 도 14의 오디오 신호 인코더는 그 전체가 1400에 의해 지시된다. 오디오 신호 인코더(1400)는 오디오 신호(1410)를 수신하고 오디오 신호(1410)와 관련된, 외부 제공된 워핑 윤곽선 정보(1412)를 선택적으로 수신하도록 구성된다. 또한, 오디오 신호 인코더(1400)는 오디오 신호(1410)의 인코딩된 표현(1440)을 제공하도록 구성된다.
오디오 신호 인코더(1400)는 오디오 신호(1410)와 관련된 시간 워핑 윤곽선 정보(1422)를 수신하고, 그에 기초하여 시간 워핑 윤곽선 정보(1424)를 제공하도록 구성된 시간 워핑 윤곽선 인코더(1420)를 포함한다.
오디오 신호 인코더(1400)는 오디오 신호(1410)를 수신하고, 이에 기초하여 시간 워핑 정보(1422)에 의해 기술된 시간 워핑을 고려하여 오디오 신호(1410)의 시간-워핑-인코딩된 표현(1432)를 제공하도록 구성된 시간 워핑 신호 프로세서(또는 시간 워핑 신호 인코더)(1430)를 더 포함한다. 오디오 신호(1410)의 인코딩된 표현(1414)은 인코딩된 시간 워핑 윤곽선 정보(1424) 및 오디오 신호(1410)의 스펙트럼의 인코딩된 표현(1432)을 포함한다.
선택적으로, 오디오 신호 인코더(1400)는 오디오 신호(1410)에 기초하여 시간 워핑 윤곽선 정보(1422)를 제공하도록 구성된 워핑 윤곽선 정보 계산기(1440)를 포함한다. 그러나, 다르게는, 시간 워핑 윤곽선 정보(1422)는 외부적으로 제공된 시간 워핑 윤곽선 정보(1412)에 기초하여 제공될 수 있다.
시간 워핑 윤곽선 인코더(1420)는 시간 워핑 윤곽선 정보(1422)에 의해 기술된 시간 워핑 윤곽선의 후속 노드 값들 사이의 비율을 계산하도록 구성될 수 있다. 예컨대, 노드 값들은 시간 워핑 윤곽선 정보에 의해 나타나는 시간 워핑 윤곽선의 샘플 값들 일 수 있다. 예컨대, 만약 시간 워핑 윤곽선 정보가 오디오 신호(1410)의 각 프레임에 대해 복수개의 값들을 포함한다면, 시간 워핑 노드 값들은 이 시간 워핑 윤곽선 정보의 실제 서브셋(subset)일 수 있다. 예컨대, 시간 워핑 윤곽선 노드 값들은 시간 워핑 윤곽선 값들의 주기적인 실제 서브셋일 수 있다. 시간 워핑 윤곽선 노드 값은 오디오 샘플들의 N 마다 존재할 수 있으며, 여기에서 N은 2보다 크거나 동일할 수 있다.
시간 윤곽선 노드 값 비율 계산기는 시간 워핑 윤곽선의 후속 시간 워핑 노드 값들 간의 비율을 계산하여 시간 워핑 윤곽선의 후속 노드 값들 간의 비율을 나타내는 정보를 제공하도록 구성될 수 있다. 시간 워핑 윤곽선 인코더의 비율 인코더는 시간 워핑 윤곽선의 후속 노드 값들 간의 비율을 인코딩하도록 구성될 수 있다. 예컨대, 비율 인코더는 서로 다른 비율들을 서로 다른 코드북 인덱스들에 매핑할 수 있다. 예컨대, 매핑은 시간 윤곽선 워핑 값 비율 계산기에 의해 제공된 비율들이 0.9와 1.1 사이의 범위 또는 심지어 0.95와 1.05 사이의 범위 내에 있도록 선택될 수 있다. 따라서, 비율 인코더는 이 범위를 서로 다른 코드북 인덱스들로 매핑하도록 구성될 수 있다. 예컨대, 도 9c의 테이블에 도시된 대응들은 이 매핑에서 지원하는 지점들로서 작용할 수 있으며 그에 따라 예컨대, 1의 비율은 3의 코드북 인덱스로 매핑되는 반면, 1.0057의 비율은 4의 코드북 인덱스로 매핑되는 등등(도 9c를 비교함)이 발생한다. 도 9c의 테이블에 도시된 비율 값들 사이의 비율 값들은 적절한 코드북 인덱스들 예컨대, 도 9c의 테이블에서 코드북 인덱스가 주어진 가장 가까운 비율 값의 코드북 인덱스로 매핑될 수 있다.
당연히, 서로 다른 인코딩들이 예컨대, 다수의 이용가능한 코드북 인덱스들이 여기에 도시된 것보다 크게 또는 작게 선택될 수 있도록 사용될 수 있다. 또한, 워핑 윤곽선 노드 값들과 코드북 값 인덱스들 사이의 결합은 적절하게 선택될 수 있다. 또한, 코드북 인덱스들은 예컨대, 이진 인코딩을 사용하여, 선택적으로 엔트로피 인코딩을 사용하여 인코딩될 수 있다.
따라서, 인코딩된 비율들(1424)이 획득된다.
시간 워핑 신호 프로세서(1430)는 오디오 신호(1410) 및 오디오 신호(또는 그 인코딩된 버전)와 관련된 시간 워핑 윤곽선 정보(1422a)를 수신하고, 이에 기초하여 스펙트럼 도메인(주파수-도메인) 표현(1436)을 제공하도록 구성된 시간 워핑 시간 도메인 대 주파수 도메인 컨버터(1434)를 포함한다.
시간 워핑 윤곽선 정보(1422a)는 워핑 디코더(1425)를 이용하여 시간 워핑 윤곽선 인코더(1420)에 의해 제고왼 인코딩된 정보(1424)로부터 바람직하게 도출될 수 있다. 이러한 방식으로, 인코더(특히, 그 신호 워핑 신호 프로세서(1430)) 및 디코더(오디오 신호의 인코딩된 표현(1414)을 수신함)는 동일한 워핑 윤곽선들, 즉, 디코딩된 (시간) 워핑 윤곽선에 대해 동작한다. 그러나, 간단해진 실시예에서,시간 워핑 신호 프로세서(1430)에 의해 사용된 시간 워핑 윤곽선 정보(1422a)는 시간 워핑 윤곽선 인코더(1420)에 입력되는 시간 워핑 윤곽선 정보(1422)와 동일할 수 있다.
시간 워핑 시간-도메인 대 주파수-도메인 컨버터(1434)는 예컨대, 오디오 신호(1410)의 시간-변화하는 재샘플링 동작을 이용하여 스펙트럼 도메인 표현(1436)을 형성할 때 예컨대, 시간 워핑을 고려할 수 있다. 그러나, 다르게는 시간-변화하는 재샘플링 및 시간 도메인-주파수 도메인 변환은 단일 프로세싱 단계로 통합될 수 있다. 시간 워핑 신호 프로세서는 스펙트럼 도메인 표현(1346)을 인코딩하도록 구성된 스펙트럼 값 인코더(1438)를 더 포함한다. 스펙트럼 값 인코더(1438)는 예컨대, 지각적 마스킹을 고려하도록 구성될 수 있다.또한, 스펙트럼 값 인코더(1438)는 인코딩 정밀도를 주파수 대역들의 지각적 관련성에 적응시키고, 엔트로피 인코딩을 적용하도록 구성될 수 있다. 따라서, 오디오 신호(1410)의 인코딩된 표현(1432)이 획득된다.
도 15에 따른 시간 워핑 윤곽선 계산기
도 15는 본 발명의 다른 실시예에 따른 시간 워핑 윤곽선 계산기의 블록도를 도시한다. 시간 워핑 윤곽선 계산기(1500)는 인코딩된 워핑 비율 정보(1510)을 수신하고, 이에 기초하여 복수개의 워핑 노드 값들(1512)을 제공하도록 구성된다. 시간 워핑 윤곽선 계산기(1500)는 예컨대, 인코디왼 워핑 비율 정보(1510)으로부터 워핑 비율 값들(1522)의 시퀀스를 도출하도록 구성된 워핑 비율 디코더(1520)를 포함한다. 시간 워핑 윤곽선 계산기(1500)는 또한 워핑 비율 값들(1522)의 시퀀스로부터 워핑 노드 값들(1512)의 시퀀스를 도출하도록 구성된 워핑 윤곽선 계산기(1530)을 또한 포함한다. 예컨대, 워핑 윤곽선 계산기는 워핑 윤곽선 시작 노드와 관련된 워핑 윤곽선 시작 값으로부터 시작하는 워핑 윤곽선 노드 값들을 획득하도록 구성될 수 있으며, 워핑 윤곽선 노드 값들은 워핑 비율 값들(1522)에 의해 결정된다. 워핑 노드 값 계산기는 중간 워핑 윤곽선 노드에 의해 워핑 윤곽선 시작 노드로부터 이격된 주어진 워핑 윤곽선 노드의 워핑 윤곽선 노드 값(1512)을, 워핑 윤곽선 시작 값(예컨대, 1)과 중간 워핑 윤곽선 노드의 워핑 윤곽선 노드 값 사이의 비율 및 중간 워핑 윤곽선 노드의 워핑 윤곽선 노드 값과 주어진 워핑 윤곽선 노드의 워핑 윤곽선 노드 값 사이의 비율을 인자들로서 기초하여 계산하도록 구성된다.
이하, 시간 워핑 윤곽선 계산기(1500)의 동작이 도 16a 및 16b를 참조하여 간략히 설명된다.
도 16a는 시간 워핑 윤곽선의 연속적인 계산의 도식적 표현을 나타낸다. 제1 도시적 표현(1610)은 시간 워핑 비율 코드북 인덱스들(1510)(인덱스=0, 인덱스=1, 인덱스=2, 인덱스=3, 인덱스=7)의 시퀀스를 나타낸다. 또한, 도식적 표현(1610)은 코드북 인덱스들과 관련된 워핑 비율 값들(0.983, 0.988, 0.994, 1.000, 1.023)의 시퀀스를 나타낸다. 또한, 제1 워핑된 노드 값(1621)(i=0)은 1(여기에서 1은 시작 값이다)이 되도록 선택됨을 알 수 있다. 도시된 바와 같이, 제2 워핑 노드 값(1622)(i=1)은 1의 시작 값과 0.983의 제1 비율 값을 곱함으로써 획득될 수 있다. 제3 워핑 노드 값(1623)은 0.983의 제2 워핑 노드 값(1622)과 0.988(1의 제2 인덱스와 관련됨)의 제2 워핑 비율 값을 곱함으로써 획득됨을 알 수 있다. 동일한 방식으로, 제4 워핑 노드 값(1624)은 0.994(2의 제3 인덱스와 관련됨)의 제3 워핑 비율 값을 제3 워핑 노드 값(1623)과 곱함으로써 획득된다.
따라서, 워핑 노드 값들(1621, 1622, 1623, 1624, 1625, 1626)의 시퀀스가 획득된다.
각 워핑 노드 값은 시작 값(예컨대, 1)과 시작 워핑 노드(1621)와 각 워핑 노드 값(1622 내지 1626) 사이에 있는 모든 중간 워핑 비율 값들의 곱이 되도록 효율적으로 획득된다.
도식적 표현(1640)은 워핑 노드 값들 사이의 선형 보간을 나타낸다. 예컨대, 보간된 값들(1621a, 1621b, 1621c)은 2개의 인접한 시간 워핑 노드 값들(1621, 1622) 사이에서 예컨대, 선형 보간을 사용하여 오디오 신호 디코더에서 획득될 수 있다.
도 16b는 시간 워핑 윤곽선 계산기(1500)에서 선택적으로 구현될 수 있는 기설정된 시작 값으로부터 주기적 재시작을 이용하여 시간 워핑 윤곽선 재구성의 도식적 표현을 나타낸다. 다시 말해, 반복되는 또는 주기적인 재시작은 만약 수치적 오버플로가 인코더측에서 또는 디코더측에서 어떤 다른 적절한 측정에 의해 회피될 수 있으면 필수적인 특징은 아니다. 도시된 바와 같이, 워핑 윤곽선 부분은 시작 노드(1660)로부터 시작할 수 있으며, 여기에서 워핑 윤곽선 노드들(1661, 1662, 1663, 1664)가 결정될 수 있다. 이를 위해, 워핑 비율 값들(0.983, 0.988, 0.965, 1.000)은, 제1 시간 워핑 윤곽선 부분의 인접한 워핑 윤곽선 노드들(1661 내지 1664)이 이들 워핑 비율 값들에 의해 결정된 비율들에 의해 분리되도록 고려될 수 있다. 그러나, 추가의 제2 시간 워핑 윤곽선 부분은 제1 시간 워핑 윤곽선 부분(노드 1660-1664를 포함함)의 마직막 노드(1664)에 도달한 후에 시작될 수 있다. 제2 시간 워핑 윤곽선 부분은 임의의 워핑 비율 값들과 관계 없이, 기설정된 시작 값을 취할 수 있는 새로운 시작 노드(1665)로부터 시작한다. 따라서, 제2 시간 워핑 윤곽선 부분의 워핑 노드 값들은 제2 시간 워핑 윤곽선 부분의 워핑 비율 값들에 기초하여 제2 시간 워핑 윤곽선 부분의 시작 노드(1665)로부터 시작하여 계산될 수 있다. 추후, 제3 시간 워핑 윤곽선 부분은 임의의 워핑 비율 값들에 상관없이 기설정된 시작 값을 다시 취할 수 있는 대응하는 시작 노드(1670)로부터 시작할 수 있다. 따라서, 시간 워핑 윤곽선 부분들의 주기적인 재시작이 획득된다. 선택적으로, 반복되는 재정규화는 이하 상세히 설명되는 바와 같이 적용될 수 있다.
도 17에 따른 오디오 신호 인코더
이하, 본 발명의 다른 실시예에 따른 오디오 신호 인코더가 도 17을 참조하여 간략히 설명된다. 오디오 신호 인코더(1700)는 멀티-채널 오디오 신호(1710)를 수신하고, 멀티-채널 오디오 신호(1710)의 인코딩된 표현(1712)를 제공하도록 구성된다. 오디오 신호 인코더(1700)는, 멀티-채널 오디오 신호의 복수개의 오디오 채널들에 공통으로 관련된, 공통 워핑 윤곡선 정보를 포함하는 오디오 표현 또는 복수개의 오디오 채널들의 오디오 채널들과 관련된 워핑 윤곽선들 사이의 유사도 또는 차이를 나타내는 정보에 따라, 복수개의 오디오 채널들의 서로 다른 오디오 채널들에 개별적으로 관련된 개별적인 워핑 윤곽선 정보를 포함하는 인코딩된 오디오 표현을 선택적으로 제공하도록 구성된 인코딩된 오디오 표현 공급기(1720)를 포함한다.
예컨대, 오디오 신호 인코더(1700)는 오디오 채널들과 관련된 워핑 윤곽선들 사이의 유사도 또는 차이를 나타내는 정보(1732)를 제공하도록 구성된 워핑 윤곽선 유사도 계산기 또는 워핑 윤곽선 차이 계산기(1730)를 포함한다. 인코딩된 오디오 표현 공급기는 예컨대, 시간 워핑 윤곽선 정보(1724)(외부적으로 제공되거나 선택적인 시간 워핑 윤곽선 정보 계산기(1734)에 의해 제공될 수 있음) 및 정보(1732)를 수신하도록 구성된 선별적 시간 워핑 윤곽선 인코더(1722)를 포함한다. 만약 정보(1732)가 2개 이상의 오디오 채널들의 시간 워핑 윤곽선들이 충분히 유사함을 나타내면, 선별적 시간 워핑 윤곽선 인코더(1722)는 통합(joint) 인코딩된 시간 워핑 윤곽선 정보를 제공하도록 구성될 수 있다. 통합 워핑 윤곽선 정보는 예컨대, 2개 이상의 채널들의 워핑 윤곽선 정보의 평균에 기반할 수 있다. 그러나, 선택적으로, 통합 워핑 윤곽선 정보는 단일 오디오 채널의 단일의 워핑 윤곽선 정보에 기반하지만, 복수개의 채널들에 공통으로 관련된다.
그러나, 정보(1732)가 다수의 오디오 채널들의 워핑 윤곽선들이 충분히 유사하지 않음을 나타내면, 선별적 시간 워핑 윤곽선 인코더(1722)는 서로 다른 시간 워핑 윤곽선들의 분리된 인코딩된 정보를 제공할 수 있다.
인코딩된 오디오 표현 공급기(1720)는 시간 워핑 윤곽선 정보(1724) 및 멀티-채널 오디오 신호(1710)를 수신하도록 구성된 시간 워핑 신호 프로세서(1726)를 또한 포함한다. 시간 워핑 신호 프로세서(1726)는 오디오 신호(1710)의 다수의 채널들을 인코딩하도록 구성된다. 시간 워핑 신호 프로세서(1726)은 서로 다른 동작 모드들을 포함할 수 있다. 예컨대, 시간 워핑 신호 프로세서(1726)는 선택적으로 오디오 채널들을 개별적으로 인코딩하거나 내부-채널 유사도를 이용하여 통합적으로(jointly) 인코딩하도록 구성될 수 있다. 일부 경우에, 시간 워핑 신호 프로세서(1726)는 공통 시간 워핑 윤곽선 정보를 갖는 다수의 오디오 채널들을 공통으로 인코딩할 수 있다. 좌측 오디오 채널 및 우측 오디오 채널이 동일한 피치 전개를 나타내지만 서로 다른 신호 특성들 예컨대, 서로 다른 절대 기본 주파수들 또는 서로다른 스펙트럼 포락선들을 가지는 경우들이 있다. 이 경우, 좌측 오디오 채널과 우측 오디오 채널 사이의 상당한 차이로 인해 좌측 오디오 채널과 우측 오디오 채널을 통합적으로 인코딩하는 것은 바람직하지 않다. 그럼에도 불구하고, 좌측 오디오 채널 및 우측 오디오 채널에서의 상대적인 피치 전개가 평행할 수 있으며, 이에 따라 공통 시간 워핑의 적용이 매우 효율적인 솔루션이 된다. 이러한 오디오 신호의 예로는 다수의 오디오 채널들의 컨텐츠는 상당한 차이(예컨대, 서로 다른 가수들 또는 악기들에 의해 나타남)를 나타내지만, 유사한 피치 변동을 나타내는 폴리폰 음악(polyphone music)이 있다, 따라서, 코딩 효율은 다수의 오디오 채널들에 대해, 공통 피치 윤곽선 정보가 제공되는 서로 다른 오디오 채널들의 주파수 스펙트럼들을 개별적으로 인코딩하는 옵션을 유지하면서, 시간 워핑 윤곽선들의 통합적 인코딩할 수 있는 가능성을 제공함으로써 상당히 개선된다.
인코딩된 오디오 표현 공급기(1720)는 정보(1732)를 수신하고, 공통의 인코딩된 워핑 윤곽선이 다수의 오디오 채널들을 위해 제공되는 지의 여부 또는 다수의 오디오 채널들에 대해 개별적인 인코딩된 워핑 윤곽선이 제공되는 지의 여부를 나타내는 보조 정보(side information)를 제공하도록 구성된 보조 정보 인코더(1728)를 선택적으로 포함한다. 예컨대, 이러한 보조 정보는 "common_tw"라고 칭하는 1-비트 플래그의 형태로 제공될 수 있다.
요약하면, 선별적 시간 워핑 윤곽선 인코더(1722)는 다수의 오디오 신호들에 연관된 시간 워핑 오디오 윤곽선들의 개별적인 인코딩된 표현들이나 다수의 오디오 채널들에 연관된 단일의 통합 시간 워핑 윤곽선을 나타내는 통합 인코딩된 시간 워핑 윤곽선 표현을 선택적으로 제공한다. 보조정보 인코더(1728)는 개별적인 시간 워핑 윤곽선 표현들이 제공되는 지 또는 통합 시간 워핑 윤곽선 표현이 제공되는 지를 나타내는 보조 정보를 선택적으로 제공한다. 시간 워핑 신호 프로세서(1726)는 다수의 오디오 채널들의 인코딩된 표현들을 제공한다. 선택적으로, 공통 인코딩된 정보가 다수의 오디오 채널들에 대해 제공될 수 있다. 그러나, 서로 다른 오디오 컨텐트를 갖지만 동일한 시간 워핑을 갖는 서로 다른 오디오 채널들이 적절하게 표현되도록, 공통 시간 워핑 윤곽선 표현이 이용가능한 다수의 오디오 채널들의 개별적인 인코딩된 표현들을 제공하는 것도 통상적으로 가능하다. 결과적으로, 인코딩된 표현(1712)은 선별적 시간 워핑 윤곽선 인코더(1722) 및 시간 워핑 신호 프로세서(1726) 그리고 선택적으로 보조 정보 인코더(1728)에 의해 제공된 인코딩된 정보를 포함한다.
도 18에 따른 오디오 신호 디코더
도 18은 본 발명의 일 실시예에 따른 오디오 신호의 블록도를 도시한다. 오디오 신호 디코더(1800)는 인코딩된 오디오 신호 표현(1810)(예컨대, 인코딩된 표현(1712))을 수신하고, 이에 기초하여 멀티-채널 오디오 신호의 디코딩된 표현(1812)을 제공하도록 구성된다. 오디오 신호 디코더(1800)는 보조정보 추출기(1820) 및 시간 워핑 디코더(1830)를 포함한다. 보조정보 추출기(1820)는 인코딩된 오디오 신호 표현(1810)으로부터 시간 워핑 윤곽선 적용 정보(1822) 및 워핑 윤곽선 정보(1824)를 추출하도록 구성된다. 예컨대, 보조정보 추출기(1820)는 단일의 공통 시간 워핑 윤곽선 정보가 인코딩된 오디오 신호의 다수의 채널들에 대해 이용가능한 지의 여부 또는 개별적 시간 워핑 윤곽선 정보가 다수의 채널들에 대해 이용가능한 지의 여부를 판별하도록 구성될 수 있다. 따라서, 보조정보 추출기는 시간 워핑 윤곽선 적용 정보(1822)(통합 또는 개별 시간 워핑 윤곽선 정보가 이용가능한 지를 나타냄) 및 시간 워핑 윤곽선 정보(1824)(공통(통합) 시간 워핑 윤곽선 또는 개별적인 시간 워핑 윤곽선들의 시간 전개를 기술함) 모두를 제공할 수 있다. 시간 워핑 디코더(1830)는 정보(1822, 1824)에 의해 기술된 시간 워핑을 고려하여, 인코딩된 오디오 신호 표현(1810)에 기초하여 멀티-채널 오디오 신호의 디코딩된 표현을 재구성하도록 구성될 수 있다. 예컨대, 시간 워핑 디코더(1830)는 개별적인 인코딩된 주파수 도메인 정보가 이용가능한 서로 다른 오디오 채널들을 디코딩하기 위한 공통 시간 워핑 윤곽선을 적용하도록 구성될 수 있다. 따라서, 시간 워핑 디코더(1830)는 유사하거나 동일한 시간 워핑을 포함하지만 서로 다른 피치를 포함하는 멀티-채널 오디오 신호의 서로 다른 채널들을 예컨대, 재구성할 수 있다.
도 19a 내지 19e에 따른 오디오 스트림
이하, 하나 이상의 오디오 신호 채널들의 인코딩된 표현 및 및 하나 이상의 위핑 윤곽선들을 포함하는 오디오 스트림이 설명된다.
도 19a는 단일 채널 엘리먼트(SCE), 채널 쌍 엘리먼트(CPE) 또는 하나 이상의 단일 채널 엘리먼트 및/또는 하나 이상의 채널 쌍 엘리먼트들의 조합을 포함할 수 있는 소위 "USAC_raw_data_block" 데이터 스트림 엘리먼트의 도식적 표현을 도시한다.
"USAC_raw_data_block"은 통상적으로 인코딩된 오디오 데이터의 블록을 포함할 수 있는 반면, 추가적인 시간 워핑 윤곽선 정보는 구분된 데이터 스트림 엘리먼트에 제공될 수 있다. 그럼에도 불구하고, 일부 시간 워핑 윤곽선 데이터를 "USAC_raw_data_block"으로 인코딩하는 것이 일반적으로 가능하다.
도 19b에 도시된 바와 같이, 단일의 채널 엘리먼트는 주파수 도메인 채널 스트림("fd_channel_stream")을 통상적으로 포함하며, 도 9d를 참조하여 상세히 설명된다,
도 19c에 도시된 바와 같이, 채널 쌍 엘리먼트("channel_pair_element")는 통상적으로 복수개의 주파수 도메인 채널 스트림들을 포함한다. 또한, 채널 쌍 엘리먼트는 시간 워핑 정보를 포함할 수 있다. 예컨대, 구성 데이터 스트림 엘리먼트에서 또는 "USAC_saw_data_block"에서 전송될 수 있는 시간 워핑 활성화 플래그("tw_MDCT")는 시간 워핑 정보가 채널 쌍 엘리먼트에 포함되는 지를 판단한다. 예컨대, 만약 "tw_MDCT" 플래그가 시간 워핑이 활성화된 것을 나타낸다면, 채널 쌍 엘리먼트는 채널 쌍 엘리먼트의 오디오 채널들에 대해 공통 시간 워핑이 존재하는 지를 나타내는 플래그("common_tw")를 포함할 수 있다. 만약 상기 플래그(common_tw)가 다수의 오디오 채널들을 위한 공통 시간 워핑이 존재함을 나타내면, 공통 시간 워핑 정보(tw_data)는 예컨대, 주파수 도메인 채널 스트림과는 별개로 채널 쌍 엘리먼트에 포함된다.
도 19d를 참조하면, 주파수 도메인 채널 스트림이 도시되어 있다. 도 19d에 도시된 바와 같이, 주파수 도메인 채널 스트림은 예컨대, 글로발 이득 정보를 포함한다. 또한, 주파수 도메인 채널 스트림은 시간 워핑이 활성화되고(플래그 "tw_MDCT 활성) 다수의 오디오 신호 채널을 위한 공통 시간 워핑 정보가 없다면(플래그 "common_tw" 비활성) 시간 워핑 데이터를 포함한다.
또한, 주파수 도메인 채널 스트림은 또한 스케일 인자 데이터("scale_fator_data") 및 인코딩된 스펙트럼 데이터(예컨대, 임의적으로 인코딩된 스펙트럼 데이터 "ac_spectral_data")를 또한 포함한다.
도 19e를 참조하면, 시간 워핑 데이터의 문법이 간략히 설명된다. 시간 워핑 데이터는 예컨대, 선택적으로 시간 워핑 데이터가 존재하는 지를 나타내는 플래그(예컨대, "tw_data_present" 또는 "active Pitch Data")를 포함할 수 있다. 시간 워핑 데이터가 존재한다면, (즉, 시간 워핑 윤곽선이 평편하지 않으면), 시간 워핑 데이터는 복수개의 인코딩된 시간 워핑 비율 값들(예컨대, "tw_ratio [i]" 또는 "pitchIdx[i]"의 시퀀스를 포함할 수 있으며, 예컨대, 도 9c의 코드북 테이블에 따라 인코딩될 수 있다.
따라서, 시간 워핑 데이터는 만약 시간 워핑 윤곽선이 일정하다면(시간 워핑 비율들이 대략 1.000과 동일하다면) 오디오 신호 인코더에 의해 설정될 수 있는 이용가능한 시간 워핑 데이터가 없음을 나타내는 플래그를 포함할 수 있다. 반면, 시간 워핑 윤곽선이 변화한다면, 후속하는 시간 워핑 윤곽선 노드들 사이의 비율들은 "tw_ratio" 정보를 구성하는 코드북 인덱스들을 이용하여 인코딩될 수 있다.
결론
전술한 것을 요약하면, 본 발명에 따른 실시예들은 시간 워핑 분야에서 몇가지 개선점을 제공한다.
여기에 설명된 본 발명의 측면들은 시간 워핑된 MDCT 변환 코더(예컨대, 참조문헌 [1] 참조)에 관련된다. 본 발명에 따른 실시예들은 시간 워핑된 MDCT 변환 코더의 개선된 성능을 위한 방법들을 제공한다.
본 발명의 일 측면에 따라, 특히 효율적인 비트스트림 포맷이 제공된다. 비트스트림 포맷 기술(description)은 MPEG-2 AAC 비트스트림 문법에 기반하여 이를 향상시키지만(예컨대, 참조문헌 [2]를 참조), 물론 스트림의 시작시 일반적인 기술 헤더(description header)를 갖는 모든 비트스트림 포맷들에 적용가능하다.
예컨대, 이하의 보조 정보가 비트스트림에서 전송될 수 있다.
일반적으로, 시간 워핑이 활성화되었느지 비활성화되었는지를 나타내는 1-비트 플래그(예컨대, 소위 "tw_MDCT")는 일반적인 오디오 특정 구성(GASC)에 존재할 수 있다. 피치 데이터는 도 19e에 도시된 문법 및 도 19f에 도시된 문법을 사용하여 전송될 수 있다. 도 19f에 도시된 문법에서, 피치들의 개수("numPitches")는 16과 동일하고, ("numPitchBits")에서 피치 비트들의 개수는 3과 동일할 수 있다. 다시 말해, 시간 워핑 윤곽선 부분 마다(또는 오디오 신호 프레임 마다) 16개의 인코딩된 워핑 비율 값들이 존재하며, 각 워핑 윤곽선 비율 값은 3비트를 사용하여 인코딩될 수 있다.
또한, 신호 채널 엘리먼트(SCE)에서 피치 데이터(pitch_data[])는 워핑이 활성화되었다면 개별 채널에서 구간 데이터 이전에 위치될 수 있다.
채널 쌍 엘리먼트(CPE)에서, 공통 피치 플래그는 양 채널들에 대한 공통의 피치 데이터가 존재하는 지를 시그널링하며, 그 이후 존재하지 않다면 개별적인 피치 윤곽선들이 개별적인 채널들 내에서 발견되는 것을 따른다.
이하, 채널 쌍 엘리먼트에 대한 예가 주어진다. 하나의 예는 스테레오 파노라마 내에 위치된 단일 고조파 사운드 소스의 신호가 될 수 있다. 이 경우, 제1 채널 및 제2 채널을 위한 상대적 피치 윤곽선들은 동일하거나, 변동의 추정시의 어떤 작은 에러로 인해 약간만 다를 수 있다. 이 경우, 인코더들은 각 채널을 위한 2개의 개별적인 코딩된 피치 윤곽선들을 전송하는 대신에, 제1 채널 및 제2 채널의 피치 윤곽선들의 평균인 하나의 피치 윤곽선만 전송하고, 양 채널들에 대해 TW-MDCT를 적용하는데 상기 피치 윤곽선들을 사용하는 것을 결정할 수 있다. 다른 한편, 피치 윤곽선의 추정이 제1 및 제2 채널에 대해 각각 서로 다른 결과들을 발생시키는 신호가 존재할 수 있다. 이 경우, 개별적으로 코딩된 피치 윤곽선들은 대응하는 채널 내에서 전송된다.
이하, 본 발명의 일 측면에 따른 피치 윤곽선 데이터의 바람직한 디코딩이 설명된다. 예컨대, "active PitchData" 플래그가 0이라면, 피치 윤곽선은 프레임에서 모든 샘플들에 대해 1로 설정되며, 그렇지 않다면 개별적인 피치 윤곽선 노드들은 다음과 같이 계산된다;
· numPitches +1 개의 노드들이 존재한다;
· 노드 [0]은 항상 1.0이다;
· 노드 [i]=node[i-1]·relChange[i](i=1, .. numPitches+1), 여기에서 relChange[i]는 pitchIdx[i]의 역양자화에 의해 획득된다.
피치 윤곽선은 노드들 사이의 선형 보간에 의해 발생되며, 여기에서 노드 샘플 위치들은 0이다:frameLen/numPitches:frameLen.
구현 대안들
어떤 구현 요구사항들에 따라 본 발명의 실시예들은 하드웨어적으로 또는 소프트웨어적으로 구현될 수 있다. 구현은 각각의 방법이 수행되도록 프로그래머블 컴퓨터 시스템과 결합하는(또는 결합할 수 있는), 전기적으로 판독가능한 제어 신호들이 저장된 디지털 저장 매체 예컨대, 플로피 디스크, DVD, CD, ROM, PROM, EPROM, EEPROM 또는 플래시 메모리를 이용하여 수행될 수 있다.
본 발명에 따른 일부 실시예들은 여기에서 설명된 방법들 중 하나가 수행되도록 프로그래머블 컴퓨터 시스템과 결합할 수 있는, 전기적으로 판독가능한 제어 신호들을 갖는 데이터 캐리어를 포함할 수 있다.
일반적으로 본 발명의 실시예들은 컴퓨터 프로그램 제품이 컴퓨터 상에서 실행될 때 본 발명의 방법들중 하나를 수행하기 위해 동작 가능한 프로그램 코드를 갖는 컴퓨터 프로그램 제품으로서 구현될 수 있다. 프로그램 코드는 예컨대, 머신 판독가능한 캐리어 상에 저장될 수 있다.
다른 실시예들은 머신 판독가능한 캐리어 상에 저장된, 여기에서 설명된 방법들 중 하나를 수행하는 컴퓨터 프로그램을 포함한다.
그러므로, 다시 말해, 본 발명의 방법의 일 실시예는 여기에 설명된 방법들 중 하나를 컴퓨터 상에서 실행될 때 수행하는 프로그램 코드를 갖는 컴퓨터 프로그램이다.
그러므로, 본 발명의 방법들의 다른 실시예는 여기에 설명된 방법들 중 하나를 실행하는 컴퓨터 프로그램이 기록된 데이터 캐리어(디지털 저장 매체 또는 컴퓨터-판독가능한 매체)이다.
그러므로, 본 발명의 방법의 다른 실시예는 여기에 설명된 방법들 중 하나를수행하는 컴퓨터 프로그램을 나타내는 데이터 스트림 또는 신호 시퀀스이다. 데이터 스트림 또는 신호 시퀀스은 예컨대, 인터넷을 통해, 데이터 통신 연결을 통해 전송되도록 구성될 수 있다.
다른 실시예는 여기에 설명된 방법들 중 하나를 수행하도록 구성되거나 적합하게 된, 프로세싱 수단, 예컨대, 컴퓨터 또는 프로그래머블 로직 장치를 포함한다.
추가적인 실시예가 여기에 설명된 방법들 중 하나를 수행하는 컴퓨터 프로그램이 설치된 컴퓨터를 포함한다.
일부 실시예들에서, 프로그래머블 로직 장치(예컨대, 필드 프로그래머블 게이터 어레이)는 여기에 설명된 방법들의 기능중 일부 또는 전부를 수행하는데 사용될 수 있다. 일부 실시예들에서, 필드 프로그래머블 게이트 어레이는 여기에 설명된 방법들 중 하나를 수행하기 위해 마이크로프로세서와 결합할 수 있다.
참조문헌들
[1] L. Villemoes, "Time Warped Transform Coding of Audio Signals", PCT/EP2006/010246, Int. patent application, November 2005
[2] Generic Coding of Moving Pictures and Associated Audio: Advanced Audio Coding. International Standard 13818-7, ISO/IECJTC1/SC29/WG11 Moving Pictures Expert Group, 1997

Claims (14)

  1. 시간 워핑 윤곽선 전개 정보(212;316)를 포함하는 인코딩된 오디오 신호 표현(211,212;310)에 기초하여 디코딩된 오디오 신호 표현(232;312)을 제공하도록 구성된 오디오 신호 디코더(200;300)에 있어서,
    상기 시간 워핑 윤곽선의 시간적 전개를 기술하는 상기 시간 워핑 윤곽선 전개 정보(212;316; tw_ratio[k])에 기초하여 기설정된 시간 워핑 윤곽선 시작 값(1)으로부터 반복적으로 재시작하는 시간 워핑 윤곽선 데이터(last_warp_contour, cur_warp_contour, new_warp_contour, 716, 718, 722)를 발생시키도록 구성된 시간 워핑 계산기(210,219,220;320) ;
    재시작에서의 불연속이 상기 시간 워핑 윤곽선의 재스케일된 버전(332, 716', 718', 722)에서 회피, 감소 또는 제거되도록 상기 시간 워핑 윤곽선 데이터의 적어도 일부분(past_warp_contour, 716, 718)을 재스케일하도록 구성된 시간 워핑 윤곽선 재스케일러(330); 및
    상기 시간 워핑 윤곽선의 상기 재스케일된 버전(332, 716', 718', 722)을 사용하여 상기 인코딩된 오디오 신호 표현(211,212;310)에 기초하여 상기 디코딩된 오디오 신호 표현(232;312)을 제공하도록 구성된 워핑 디코더(340)를 포함하는 오디오 신호 디코더(200;300).
  2. 청구항 1에 있어서, 상기 시간 워핑 윤곽선 계산기(320)는 상기 기설정된 시작 값(1)으로부터 시작하여 제1 상대적 변화 정보(316, tw_ratio [k])를 이용하여 상기 시간 워핑 윤곽선의 제1 부분(718)의 시간적 전개를 계산하고, 상기 기설정된 시작 값(1)으로부터 시작하여 제2 상대적 변화 정보(316, tw_ratio [k])를 이용하여 상기 시간 워핑 윤곽선의 제2 부분(722)의 시간적 전개를 계산하도록 구성되며, 상기 시간 워핑 윤곽선의 상기 제1 부분(718) 및 상기 시간 워핑 윤곽선의 상기 제2 부분(722)은 시간 워핑 윤곽선의 후속하는 부분들이며,
    상기 시간 워핑 윤곽선 재스케일러(330)는 상기 시간 워핑 윤곽선의 제1 부분(718')과 상기 시간 워핑 윤곽선의 제2 부분(722) 사이의 안정된 전환(steady transition)(718b',722a)을 획득하기 위해 상기 시간 워핑 윤곽선의 상기 부분들(718) 중 하나를 재스케일하도록 구성되는 오디오 신호 디코더(200;300).
  3. 청구항 2에 있어서, 상기 시간 워핑 윤곽선 재스케일러(330)는 상기 제1 시간 워핑 윤곽선 부분(718)의 상기 스케일된 버전(718')의 최종 값(718b')이 상기 기설정된 시작 값(1)을 갖거나 기설정된 허용오차 값보다 크지 않게 상기 기설정된 시작 값으로부터 벗어나도록 상기 시간 워핑 윤곽선의 상기 제1 부분(718)을 재스케일링하도록 구성된 오디오 신호 디코더(200;300).
  4. 청구항 1 내지 청구항 3 중 어느 한 항에 있어서, 상기 시간 워핑 윤곽선 재스케일러(330)는 상기 시간 워핑 윤곽선의 상기 부분(718)을 스케일링하기 위해 시간 워핑 윤곽선 데이터 값들(past_warp_contour[i])과 정규화 인자(norm_fac)를 곱하거나, 상기 시간 워핑 윤곽선의 상기 부분(718)을 스케일링하기 위해 시간 워핑 윤곽선 데이터 값들을 정규화 인자로 나누도록 구성된 오디오 신호 디코더(200;300).
  5. 청구항 1 내지 청구항 4 중 어느 한 항에 있어서, 상기 시간 워핑 윤곽선 계산기(320)는 상기 시간 워핑 윤곽선의 주어진 부분(last_warp_contour,cur_warp_contour, 716, 718)의 워핑 윤곽선 합산 값(last_warp_sum,cur_warp_sum)을 획득하고, 공통 스케일링 값(norm_fac)을 이용하여 상기 시간 워핑 윤곽선의 상기 주어진 부분(last_warp_contour) 및 상기 시간 워핑 윤곽선의 상기 주어진 부분의 상기 워핑 윤곽선 합산 값(last_warp_sum, cur_warp_sum)을 스케일링하도록 구성되는 오디오 신호 디코더(200;300).
  6. 청구항 1 내지 청구항 5 중 어느 한 항에 있어서, 상기 오디오 신호 디코더는 상기 시간 워핑 윤곽선의 제1 부분(716'), 상기 시간 워핑 윤곽선의 제2 부분(718') 및 상기 시간 워핑 윤곽선의 제3 부분(722)의 시간 워핑 윤곽선 데이터 값들을 이용하여 제1 시간 윤곽선을 계산하고,
    상기 시간 워핑 윤곽선의 제2 부분(718''), 상기 시간 워핑 윤곽선의 제3 부분(722') 및 상기 시간 워핑 윤곽선의 제4 부분(752)의 시간 워핑 윤곽선 데이터 값들을 이용하여 제2 시간 윤곽선을 계산하도록 구성된 시간 윤곽선 계산기(570)를 더 포함하며;
    상기 시간 워핑 윤곽선 계산기는 상기 시간 워핑 윤곽선의 상기 제1 부분(716)의 시간적 전개를 기술하는 시간 워핑 윤곽선 전개 정보에 기초하여 기설정된 시간 워핑 윤곽선 시작 값(1)으로부터 시작하는 상기 시간 워핑 윤곽선의 상기 제1 부분(716)의 시간 워핑 윤곽선 데이터를 발생시키도록 구성되고;
    상기 시간 워핑 윤곽선 데이터 재스케일러는 상기 시간 워핑 윤곽선의 상기 제1 부분(716)의 최종 값이 상기 기설정된 시간 워핑 윤곽선 시작 값을 포함하도록 상기 시간 워핑 윤곽선의 상기 제1 부분을 재스케일하도록 구성되며;
    상기 시간 워핑 윤곽선 계산기는 상기 시간 워핑 윤곽선의 상기 제2 부분(718)의 시간적 전개를 기술하는 시간 워핑 윤곽선 전개 정보에 기초하여 상기 기설정된 시간 워핑 윤곽선 시작 값(1)으로부터 시작하는 상기 시간 워핑 윤곽선의 상기 제2 부분(718)의 워핑 윤곽선 데이터를 발생시키도록 구성되며;
    상기 시간 워핑 윤곽선 데이터 재스케일러는 상기 시간 워핑 윤곽선의 상기 제2 부분(718')의 최종 값(718b)이 상기 기설정된 시간 워핑 윤곽선 시작 값(1)을 포함하도록 공통 스케일링 인자를 이용하여 상기 시간 워핑 윤곽선의 상기 제1 부분(716) 및 상기 시간 워핑 윤곽선의 상기 제2 부분(718)을 통합적으로 재스케일링하여 재스케일된 시간 워핑 윤곽선 데이터 값들(716',718')을 통합적으로 획득하도록 구성되며;
    상기 시간 워핑 윤곽선 계산기는 상기 시간 워핑 윤곽선의 상기 제3 부분(722)의 시간 워핑 윤곽선 전개 정보에 기초하여 상기 기설정된 시간 워핑 윤곽선 시작 값(1)으로부터 시작하는 상기 시간 워핑 윤곽선의 상기 제3 부분(722)의 원래의 시간 워핑 윤곽선 데이터 값들을 발생시키도록 구성되며;
    상기 시간 윤곽선 계산기(570)는 상기 제1 및 제2 시간 워핑 윤곽선 부분들(716', 718')의 상기 통합적으로 재스케일된 시간 워핑 윤곽선 데이터 값들 및 상기 제3 시간 워핑 윤곽선 부분(722)의 상기 시간 워핑 윤곽선 데이터 값들을 이용하여 상기 제1 시간 윤곽선을 계산하도록 구성되며;
    상기 시간 워핑 윤곽선 데이터 재스케일러(330)는 상기 시간 워핑 윤곽선의 상기 제2 부분(718)의 두 번 재스케일된 버전(718'') 및 상기 시간 워핑 윤곽선의 상기 제3 부분(722)의 한 번 재스케일된 버전(722')를 획득하기 위해, 상기 시간 워핑 윤곽선의 제3 부분(722)의 최종 값이 상기 기설정된 시간 워핑 윤곽선 시작 값(1)을 포함하도록, 다른 공통 스케일링 인자를 이용하여 상기 시간 워핑 윤곽선의 상기 제2 재스케일된 부분(718') 및 상기 시간 워핑 윤곽선의 상기 제3 부분(722)의 시간 워핑 윤곽선 데이터 값들을 통합적으로(jointly) 재스케일링하도록 구성되며;
    상기 시간 워핑 윤곽선 계산기는 상기 시간 워핑 윤곽선의 상기 제4 부분(752)의 시간 워핑 윤곽선 전개 정보에 기초하여 상기 기설정된 시간 워핑 윤곽선 시작 값(1)으로부터 시작하는 상기 시간 워핑 윤곽선의 상기 제4 부분(752)의 원래의 시간 워핑 윤곽선 데이터 값들을 발생시키도록 구성되며;
    상기 시간 윤곽선 계산기(570)는 상기 시간 워핑 윤곽선의 상기 제2 부분(718)의 상기 두 번 재스케일된 버전(718''), 상기 시간 워핑 윤곽선의 상기 제3 부분의 상기 한 번 재스케일된 버전(722') 및 상기 시간 워핑 윤곽선의 상기 제4 부분의 상기 원래의 버전(752)을 이용하여 상기 제2 시간 윤곽선을 계산하도록 구성되는 오디오 신호 디코더(200;300).
  7. 청구항 1 내지 청구항 6 중 어느 한 항에 있어서, 상기 오디오 신호 디코더는 상기 시간 워핑 윤곽선의 복수개의 부분들을 이용하여 시간 워핑 제어 정보(512)를 계산하도록 구성된 시간 워핑 제어 정보 계산기(530)를 포함하고,
    상기 시간 워핑 제어 정보 계산기(530)는 복수개의 제1 시간 워핑 윤곽선 부분들(716, 718, 722)의 시간 워핑 윤곽선 데이터에 기초하여 상기 오디오 신호의 제1 프레임의 재구성을 위한 시간 워핑 제어 정보를 계산하고, 복수개의 제2 시간 워핑 윤곽선 부분들(718, 722, 752)의 시간 워핑 윤곽선 데이터에 기초하여 상기 오디오 신호의 상기 제1 프레임과 중첩하거나 비-중첩하는, 상기 오디오 신호의 제2 프레임의 재구성을 위한 시간 워핑 제어 정보를 계산하도록 구성되며,
    상기 복수개의 제1 시간 워핑 윤곽선 부분들(716', 718', 722)은 상기 복수개의 제2 시간 워핑 윤곽선 부분들(718'',722',752)에 비해 시간에 대해 쉬프트되며,
    상기 복수개의 제1 시간 워핑 윤곽선 부분들은 상기 복수개의 제2 시간 워핑 윤곽선 부분들과 적어도 하나의 공통 시간 워핑 윤곽선 부분(718,722)을 포함하는 오디오 신호 디코더(200;300).
  8. 청구항 7에 있어서, 상기 시간 워핑 윤곽선 계산기(320)는 상기 복수개의 제1 시간 워핑 윤곽선 부분들(716,718,722) 내의 한 위치(724)에서 또는 상기 복수개의 제2 시간 워핑 윤곽선 부분들(718,722,752) 내의 한 위치(754)에서 상기 기설정된 시간 워핑 윤곽선 시작 값(1)으로부터 상기 시간 워핑 윤곽선이 재시작하여, 상기 재시작 위치에서 시간 워핑 윤곽선의 불연속(724,754)이 존재하도록 상기 시간 워핑 윤곽선을 발생시키도록 구성되며;
    상기 시간 워핑 윤곽선 재스케일러는 상기 불연속(724,754)이 감소하거나 제거되도록 하나 이상의 상기 시간 워핑 윤곽선 부분들(716,718;718',722)을 재스케일링하도록 구성되는 오디오 신호 디코더(200;300)
  9. 청구항 8에 있어서, 상기 시간 워핑 윤곽선 계산기(320)는 상기 복수개의 제1 시간 워핑 윤곽선 부분들(716', 718', 722) 내의 위치(724)에서 상기 기설정된 시간 워핑 윤곽선 시작 값(1)으로부터의 상기 시간 워핑 윤곽선의 제1 재시작이 이루어져 상기 제1 재시작의 상기 위치에서 제1 불연속(724)이 존재하도록 상기 시간 워핑 윤곽선을 발생시키도록 구성되며,
    상기 시간 워핑 윤곽선 재스케일러(330)는 상기 제1 불연속(724)이 감소하도록 상기 시간 워핑 윤곽선을 재스케일하도록 구성되며,
    상기 시간 워핑 윤곽선 계산기는 상기 복수개의 제2 시간 워핑 윤곽선 부분들(718,722,752) 내의 한 위치에서 상기 기설정된 시간 워핑 윤곽선 시작 값(1)으로부터 상기 시간 워핑 윤곽선의 제2 재시작이 이루어져, 상기 제2 재시작의 상기 위치에서 제2 불연속이 존재하도록 상기 시간 워핑 윤곽선을 또한 발생시키도록 구성되며;
    상기 시간 워핑 윤곽선 데이터 재스케일러(330)는 상기 제2 불연속이 감소되거나 제거되도록 상기 시간 워핑 윤곽선을 또한 재스케일하도록 구성되는 오디오 신호 디코더(200;300).
  10. 청구항 1 내지 청구항 9 중 어느 한 항에 있어서, 상기 시간 워핑 윤곽선 계산기(320)는 상기 재시작들에서 주기적인 불연속들이 존재하도록, 상기 기설정된 시간 워핑 윤곽선 시작 값(1)으로부터 시작하는 상기 시간 워핑 윤곽선을 주기적으로 재시작하도록 구성되며;
    상기 시간 워핑 윤곽선 재스케일러(330)는 상기 재시작들에서 상기 시간 워핑 윤곽선의 불연속들을 연속적으로 감소하거나 제거하기 위해 임의의 일 시점에서 상기 시간 워핑 윤곽선의 적어도 하나의 부분을 연속적으로 재스케일하도록 구성되며;
    상기 오디오 신호 디코더는 시간 워핑 제어 정보를 획득하기 위해 상기 재시작 이전 및 이후로부터의 시간 워핑 윤곽선 데이터를 결합하도록 구성된 시간 워핑 제어 정보 계산기를 포함하는 오디오 신호 디코더(200;300).
  11. 청구항 1 내지 청구항 10 중 어느 한 항에 있어서, 상기 시간 워핑 윤곽선 계산기(320)는 인코딩된 워핑 비율 정보(tw_ratio[k])를 수신하고, 상기 인코딩된 시간 워핑 비율 정보로부터 시간 워핑 비율 값들(warp_value_tb1)의 시퀀스를 도출하고, 상기 시간 워핑 윤곽선 시작 값 (1)으로부터 시작하는 시간 워핑 윤곽선 노드 값들을 획득하도록 구성되며,
    시간 워핑 윤곽선 시작 노드와 관련된 상기 시간 워핑 윤곽선 시작 값(1)과 후속하는 시간 워핑 윤곽선 노드들의 상기 시간 워핑 윤곽선 노드 값들 사이의 비율들은 상기 시간 워핑 비율 값들에 의해 결정되며,
    상기 시간 워핑 윤곽선 계산기는 상기 시간 워핑 윤곽선 시작 노드로부터 중간 시간 워핑 윤곽선 노드 만큼 간격진 주어진 시간 워핑 윤곽선 노드의 시간 워핑 윤곽선 노드 값을, 상기 시간 워핑 윤곽선 시작 값과 상기 중간 시간 워핑 윤곽선 노드의 상기 시간 워핑 윤곽선 노드 값 사이의 비율 및 상기 중간 시간 워핑 윤곽선 노드의 상기 시간 워핑 윤곽선 노드 값과 상기 주어진 시간 워핑 윤곽선 노드의 시간 워핑 윤곽선 노드 값 사이의 비율을 인자들(factors)로서 포함하는 곱-구조(product-formation)에 기초하여, 계산하도록 구성되는 오디오 신호 디코더(200;300).
  12. 시간 워핑 윤곽선 전개 정보를 포함하는 인코딩된 오디오 신호 표현에 기초하여 디코딩된 오디오 신호 표현을 제공하는 방법에 있어서,
    상기 시간 워핑 윤곽선의 시간적 전개를 기술하는 시간 워핑 윤곽선 전개 정보(tw_ratio[k])에 기초하여 기설정된 시간 워핑 윤곽선 시작 값(1)으로부터 반복적으로 재시작하는 시간 워핑 윤곽선 데이터(warp_node_values)를 발생시키는 단계;
    재시작에서의 불연속이 상기 시간 워핑 윤곽선의 재스케일된 버전에서 회피, 감소 또는 제거되도록 상기 시간 워핑 윤곽선 데이터의 적어도 일부분을 재스케일하는 단계; 및
    상기 시간 워핑 윤곽선의 상기 재스케일된 버전을 이용하여 상기 인코딩된 오디오 신호 표현에 기초하여 상기 디코딩된 오디오 신호 표현을 제공하는 단계를 포함하는 디코딩된 오디오 신호 표현 제공 방법.
  13. 컴퓨터 상에서 실행될 때 청구항 12에 따른 방법을 실행하는 컴퓨터 프로그램.
  14. 시간 워핑 윤곽선 전개 정보에 기초하여 오디오 신호의 상대적 피치의 시간적 전개를 나타내는 시간 워핑 윤곽선 데이터를 제공하는 시간 워핑 윤곽선 데이터 공급기에 있어서,
    상기 시간 워핑 윤곽선의 시간적 전개을 기술하는 시간 워핑 윤곽선 전개 정보에 기초하여 시간 워핑 윤곽선 데이터를 발생시키도록 구성되며, 기설정된 시간 워핑 윤곽선 시작 값(1)으로부터 상기 시간 워핑 윤곽선 데이터의 계산을 재시작 위치에서 반복적으로 또는 주기적으로 재시작하여 상기 시간 워핑 윤곽선의 불연속들을 생성하고 상기 시간 워핑 윤곽선 데이터 값들의 범위를 감소시키도록 구성된 시간 워핑 윤곽선 계산기; 및
    상기 시간 워핑 윤곽선의 재스케일된 구간들에서 상기 재시작 위치에서의 상기 불연속들을 감소하거나 제거하기 위해 상기 시간 워핑 윤곽선의 부분들을 반복적으로 재스케일하도록 구성된 시간 워핑 윤곽선 재스케일러를 포함하는 시간 워핑 윤곽선 데이터 공급기.
KR1020107021817A 2008-07-11 2009-07-01 오디오 신호 디코더, 시간 워핑 윤곽선 데이터 공급기, 방법 및 컴퓨터 프로그램 KR101205644B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US7987308P 2008-07-11 2008-07-11
US61/079,873 2008-07-11
US10382008P 2008-10-08 2008-10-08
US61/103,820 2008-10-08
PCT/EP2009/004757 WO2010003582A1 (en) 2008-07-11 2009-07-01 Audio signal decoder, time warp contour data provider, method and computer program

Publications (2)

Publication Number Publication Date
KR20100134627A true KR20100134627A (ko) 2010-12-23
KR101205644B1 KR101205644B1 (ko) 2012-11-27

Family

ID=41131685

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020107021806A KR101205593B1 (ko) 2008-07-11 2009-07-01 시간 워핑 윤곽선 계산기, 오디오 신호 인코더, 인코딩된 오디오 신호 표현, 방법 및 컴퓨터 프로그램
KR1020107021817A KR101205644B1 (ko) 2008-07-11 2009-07-01 오디오 신호 디코더, 시간 워핑 윤곽선 데이터 공급기, 방법 및 컴퓨터 프로그램
KR1020107021830A KR101205615B1 (ko) 2008-07-11 2009-07-01 오디오 신호 디코더, 오디오 신호 인코더, 인코딩된 멀티 -채널 오디오 신호 표현, 방법들 및 컴퓨터 프로그램

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020107021806A KR101205593B1 (ko) 2008-07-11 2009-07-01 시간 워핑 윤곽선 계산기, 오디오 신호 인코더, 인코딩된 오디오 신호 표현, 방법 및 컴퓨터 프로그램

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020107021830A KR101205615B1 (ko) 2008-07-11 2009-07-01 오디오 신호 디코더, 오디오 신호 인코더, 인코딩된 멀티 -채널 오디오 신호 표현, 방법들 및 컴퓨터 프로그램

Country Status (18)

Country Link
US (3) US9043216B2 (ko)
EP (3) EP2257945B1 (ko)
JP (4) JP5323180B2 (ko)
KR (3) KR101205593B1 (ko)
CN (3) CN102007531B (ko)
AR (3) AR072500A1 (ko)
AT (2) ATE532176T1 (ko)
AU (3) AU2009267486B2 (ko)
BR (3) BRPI0906319A2 (ko)
CA (3) CA2718740C (ko)
ES (3) ES2376849T3 (ko)
HK (3) HK1151619A1 (ko)
MX (3) MX2010010747A (ko)
MY (1) MY154452A (ko)
PL (3) PL2257945T3 (ko)
RU (3) RU2509381C2 (ko)
TW (3) TWI451402B (ko)
WO (3) WO2010003583A1 (ko)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7720677B2 (en) * 2005-11-03 2010-05-18 Coding Technologies Ab Time warped modified transform coding of audio signals
EP2107556A1 (en) * 2008-04-04 2009-10-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio transform coding using pitch correction
MY154452A (en) 2008-07-11 2015-06-15 Fraunhofer Ges Forschung An apparatus and a method for decoding an encoded audio signal
PL2311033T3 (pl) 2008-07-11 2012-05-31 Fraunhofer Ges Forschung Dostarczanie sygnału aktywującego dopasowanie czasowe i kodowanie sygnału audio z jego użyciem
BR112012007803B1 (pt) * 2009-10-08 2022-03-15 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Decodificador de sinal de áudio multimodal, codificador de sinal de áudio multimodal e métodos usando uma configuração de ruído com base em codificação de previsão linear
ES2458354T3 (es) * 2010-03-10 2014-05-05 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decodificador de señales de audio, codificador de señales de audio, métodos y programa de ordenador que utiliza tasa de muestreo dependiente de la codificación del contorno de distorsión en el tiempo
EP2372704A1 (en) * 2010-03-11 2011-10-05 Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. Signal processor and method for processing a signal
SG184230A1 (en) * 2010-03-26 2012-11-29 Agency Science Tech & Res Methods and devices for providing an encoded digital signal
CN103329199B (zh) * 2011-01-25 2015-04-08 日本电信电话株式会社 编码方法、编码装置、周期性特征量决定方法、周期性特征量决定装置、程序、记录介质
EP2676270B1 (en) 2011-02-14 2017-02-01 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Coding a portion of an audio signal using a transient detection and a quality result
PT2676267T (pt) 2011-02-14 2017-09-26 Fraunhofer Ges Forschung Codificação e descodificação de posições de pulso de faixas de um sinal de áudio
JP5969513B2 (ja) 2011-02-14 2016-08-17 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 不活性相の間のノイズ合成を用いるオーディオコーデック
KR101551046B1 (ko) 2011-02-14 2015-09-07 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 저-지연 통합 스피치 및 오디오 코딩에서 에러 은닉을 위한 장치 및 방법
BR112013020587B1 (pt) 2011-02-14 2021-03-09 Fraunhofer-Gesellschaft Zur Forderung De Angewandten Forschung E.V. esquema de codificação com base em previsão linear utilizando modelagem de ruído de domínio espectral
WO2012110415A1 (en) * 2011-02-14 2012-08-23 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for processing a decoded audio signal in a spectral domain
WO2012110478A1 (en) 2011-02-14 2012-08-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Information signal representation using lapped transform
TWI488176B (zh) 2011-02-14 2015-06-11 Fraunhofer Ges Forschung 音訊信號音軌脈衝位置之編碼與解碼技術
EP2676265B1 (en) 2011-02-14 2019-04-10 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for encoding an audio signal using an aligned look-ahead portion
KR101748760B1 (ko) 2011-03-18 2017-06-19 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에.베. 오디오 콘텐츠를 표현하는 비트스트림의 프레임들 내의 프레임 요소 배치
TWI450266B (zh) * 2011-04-19 2014-08-21 Hon Hai Prec Ind Co Ltd 電子裝置及音頻資料的解碼方法
US9967600B2 (en) * 2011-05-26 2018-05-08 Nbcuniversal Media, Llc Multi-channel digital content watermark system and method
EP2704142B1 (en) * 2012-08-27 2015-09-02 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for reproducing an audio signal, apparatus and method for generating a coded audio signal, computer program and coded audio signal
CN102855884B (zh) * 2012-09-11 2014-08-13 中国人民解放军理工大学 基于短时连续非负矩阵分解的语音时长调整方法
CN103854653B (zh) 2012-12-06 2016-12-28 华为技术有限公司 信号解码的方法和设备
US9548056B2 (en) * 2012-12-19 2017-01-17 Dolby International Ab Signal adaptive FIR/IIR predictors for minimizing entropy
JP6385433B2 (ja) * 2013-10-18 2018-09-05 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン オーディオ信号のスペクトルのスペクトル係数のコード化
FR3015754A1 (fr) * 2013-12-20 2015-06-26 Orange Re-echantillonnage d'un signal audio cadence a une frequence d'echantillonnage variable selon la trame
EP2980791A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Processor, method and computer program for processing an audio signal using truncated analysis or synthesis window overlap portions
RU2718418C2 (ru) * 2015-11-09 2020-04-02 Сони Корпорейшн Устройство декодирования, способ декодирования и программа
US10074373B2 (en) * 2015-12-21 2018-09-11 Qualcomm Incorporated Channel adjustment for inter-frame temporal shift variations
KR102219752B1 (ko) 2016-01-22 2021-02-24 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 채널 간 시간 차를 추정하기 위한 장치 및 방법
CN107749304B (zh) 2017-09-07 2021-04-06 电信科学技术研究院 有限冲激响应滤波器系数矢量的可持续更新方法及装置
TWI752551B (zh) * 2020-07-13 2022-01-11 國立屏東大學 迅吃偵測方法、迅吃偵測裝置與電腦程式產品

Family Cites Families (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5054075A (en) 1989-09-05 1991-10-01 Motorola, Inc. Subband decoding method and apparatus
JP3076859B2 (ja) * 1992-04-20 2000-08-14 三菱電機株式会社 ディジタルオーディオ信号の信号処理装置
US5408580A (en) 1992-09-21 1995-04-18 Aware, Inc. Audio compression system employing multi-rate signal analysis
JPH0784597A (ja) * 1993-09-20 1995-03-31 Fujitsu Ltd 音声符号化装置および音声復号化装置
US5717823A (en) * 1994-04-14 1998-02-10 Lucent Technologies Inc. Speech-rate modification for linear-prediction based analysis-by-synthesis speech coders
FI105001B (fi) 1995-06-30 2000-05-15 Nokia Mobile Phones Ltd Menetelmä odotusajan selvittämiseksi puhedekooderissa epäjatkuvassa lähetyksessä ja puhedekooderi sekä lähetin-vastaanotin
US5704003A (en) 1995-09-19 1997-12-30 Lucent Technologies Inc. RCELP coder
JP3707116B2 (ja) 1995-10-26 2005-10-19 ソニー株式会社 音声復号化方法及び装置
US5659622A (en) 1995-11-13 1997-08-19 Motorola, Inc. Method and apparatus for suppressing noise in a communication system
US5848391A (en) 1996-07-11 1998-12-08 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Method subband of coding and decoding audio signals using variable length windows
US6134518A (en) 1997-03-04 2000-10-17 International Business Machines Corporation Digital audio signal coding using a CELP coder and a transform coder
KR100261253B1 (ko) 1997-04-02 2000-07-01 윤종용 비트율 조절이 가능한 오디오 부호화/복호화 방법및 장치
US6070137A (en) 1998-01-07 2000-05-30 Ericsson Inc. Integrated frequency-domain voice coding using an adaptive spectral enhancement filter
DE69926821T2 (de) 1998-01-22 2007-12-06 Deutsche Telekom Ag Verfahren zur signalgesteuerten Schaltung zwischen verschiedenen Audiokodierungssystemen
US6115689A (en) 1998-05-27 2000-09-05 Microsoft Corporation Scalable audio coder and decoder
US6453285B1 (en) 1998-08-21 2002-09-17 Polycom, Inc. Speech activity detector for use in noise reduction system, and methods therefor
US6449590B1 (en) * 1998-08-24 2002-09-10 Conexant Systems, Inc. Speech encoder using warping in long term preprocessing
US6330533B2 (en) 1998-08-24 2001-12-11 Conexant Systems, Inc. Speech encoder adaptively applying pitch preprocessing with warping of target signal
US7047185B1 (en) 1998-09-15 2006-05-16 Skyworks Solutions, Inc. Method and apparatus for dynamically switching between speech coders of a mobile unit as a function of received signal quality
US6424938B1 (en) 1998-11-23 2002-07-23 Telefonaktiebolaget L M Ericsson Complex signal activity detection for improved speech/noise classification of an audio signal
US6691084B2 (en) 1998-12-21 2004-02-10 Qualcomm Incorporated Multiple mode variable rate speech coding
US6223151B1 (en) 1999-02-10 2001-04-24 Telefon Aktie Bolaget Lm Ericsson Method and apparatus for pre-processing speech signals prior to coding by transform-based speech coders
DE19910833C1 (de) 1999-03-11 2000-05-31 Mayer Textilmaschf Kurzketten-Schärmaschine
EP1099215B1 (en) * 1999-05-26 2005-02-23 Koninklijke Philips Electronics N.V. Audio signal transmission system
US6604070B1 (en) * 1999-09-22 2003-08-05 Conexant Systems, Inc. System of encoding and decoding speech signals
US6782360B1 (en) * 1999-09-22 2004-08-24 Mindspeed Technologies, Inc. Gain quantization for a CELP speech coder
US6978236B1 (en) * 1999-10-01 2005-12-20 Coding Technologies Ab Efficient spectral envelope coding using variable time/frequency resolution and time/frequency switching
US6366880B1 (en) 1999-11-30 2002-04-02 Motorola, Inc. Method and apparatus for suppressing acoustic background noise in a communication system by equaliztion of pre-and post-comb-filtered subband spectral energies
JP2001255882A (ja) * 2000-03-09 2001-09-21 Sony Corp 音声信号処理装置及びその信号処理方法
JP2002149200A (ja) 2000-08-31 2002-05-24 Matsushita Electric Ind Co Ltd 音声処理装置及び音声処理方法
US6850884B2 (en) 2000-09-15 2005-02-01 Mindspeed Technologies, Inc. Selection of coding parameters based on spectral content of a speech signal
CN1408146A (zh) 2000-11-03 2003-04-02 皇家菲利浦电子有限公司 音频信号的参数编码
US6925435B1 (en) 2000-11-27 2005-08-02 Mindspeed Technologies, Inc. Method and apparatus for improved noise reduction in a speech encoder
SE0004818D0 (sv) 2000-12-22 2000-12-22 Coding Technologies Sweden Ab Enhancing source coding systems by adaptive transposition
BR0204818A (pt) 2001-04-05 2003-03-18 Koninkl Philips Electronics Nv Métodos para modificar e expandir a escala de tempo de um sinal, e para receber um sinal de áudio, dispositivo de modificação de escala de tempo adaptado para modificar um sinal, e, receptor para receber um sinal de áudio
FI110729B (fi) 2001-04-11 2003-03-14 Nokia Corp Menetelmä pakatun audiosignaalin purkamiseksi
EP1386312B1 (en) 2001-05-10 2008-02-20 Dolby Laboratories Licensing Corporation Improving transient performance of low bit rate audio coding systems by reducing pre-noise
DE20108778U1 (de) 2001-05-25 2001-08-02 Mannesmann Vdo Ag Gehäuse für ein in einem Fahrzeug verwendbares Gerät zur automatischen Ermittlung von Straßenbenutzungsgebühren
US6879955B2 (en) 2001-06-29 2005-04-12 Microsoft Corporation Signal modification based on continuous time warping for low bit rate CELP coding
EP1278185A3 (en) 2001-07-13 2005-02-09 Alcatel Method for improving noise reduction in speech transmission
US6963842B2 (en) 2001-09-05 2005-11-08 Creative Technology Ltd. Efficient system and method for converting between different transform-domain signal representations
JP2005506582A (ja) * 2001-10-26 2005-03-03 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ オーディオコーダにおける正弦波パラメータのトラッキング
CA2365203A1 (en) 2001-12-14 2003-06-14 Voiceage Corporation A signal modification method for efficient coding of speech signals
JP2003316392A (ja) 2002-04-22 2003-11-07 Mitsubishi Electric Corp オーディオ信号の復号化及び符号化装置、復号化装置並びに符号化装置
US7457757B1 (en) 2002-05-30 2008-11-25 Plantronics, Inc. Intelligibility control for speech communications systems
US7447631B2 (en) * 2002-06-17 2008-11-04 Dolby Laboratories Licensing Corporation Audio coding system using spectral hole filling
TWI288915B (en) 2002-06-17 2007-10-21 Dolby Lab Licensing Corp Improved audio coding system using characteristics of a decoded signal to adapt synthesized spectral components
US7043423B2 (en) 2002-07-16 2006-05-09 Dolby Laboratories Licensing Corporation Low bit-rate audio coding systems and methods that use expanding quantizers with arithmetic coding
WO2004034379A2 (en) 2002-10-11 2004-04-22 Nokia Corporation Methods and devices for source controlled variable bit-rate wideband speech coding
EP1604352A4 (en) 2003-03-15 2007-12-19 Mindspeed Tech Inc SINGLE NOISE DELETION MODEL
JP4629353B2 (ja) * 2003-04-17 2011-02-09 インベンテイオ・アクテイエンゲゼルシヤフト エスカレータまたは動く歩道のための移動手摺り駆動装置
CN1820306B (zh) 2003-05-01 2010-05-05 诺基亚有限公司 可变比特率宽带语音编码中增益量化的方法和装置
US7363221B2 (en) 2003-08-19 2008-04-22 Microsoft Corporation Method of noise reduction using instantaneous signal-to-noise ratio as the principal quantity for optimal estimation
KR100604897B1 (ko) 2004-09-07 2006-07-28 삼성전자주식회사 하드 디스크 드라이브 조립체, 하드 디스크 드라이브의장착 구조 및 이를 채용한 휴대폰
KR100640893B1 (ko) 2004-09-07 2006-11-02 엘지전자 주식회사 음성 인식용 베이스밴드 모뎀 및 이동통신용 단말기
JP5143569B2 (ja) 2005-01-27 2013-02-13 シンクロ アーツ リミテッド 音響的特徴の同期化された修正のための方法及び装置
US8155965B2 (en) 2005-03-11 2012-04-10 Qualcomm Incorporated Time warping frames inside the vocoder by modifying the residual
UA90506C2 (ru) * 2005-03-11 2010-05-11 Квелкомм Инкорпорейтед Изменение масштаба времени кадров в вокодере с помощью изменения остатка
JP5129115B2 (ja) 2005-04-01 2013-01-23 クゥアルコム・インコーポレイテッド 高帯域バーストの抑制のためのシステム、方法、および装置
JP4550652B2 (ja) 2005-04-14 2010-09-22 株式会社東芝 音響信号処理装置、音響信号処理プログラム及び音響信号処理方法
US7885809B2 (en) 2005-04-20 2011-02-08 Ntt Docomo, Inc. Quantization of speech and audio coding parameters using partial information on atypical subsequences
TWI324336B (en) 2005-04-22 2010-05-01 Qualcomm Inc Method of signal processing and apparatus for gain factor smoothing
JP4450324B2 (ja) 2005-08-15 2010-04-14 日立オートモティブシステムズ株式会社 内燃機関の始動制御装置
JP2007084597A (ja) 2005-09-20 2007-04-05 Fuji Shikiso Kk 表面処理カーボンブラック組成物およびその製造方法
US7720677B2 (en) * 2005-11-03 2010-05-18 Coding Technologies Ab Time warped modified transform coding of audio signals
US7366658B2 (en) 2005-12-09 2008-04-29 Texas Instruments Incorporated Noise pre-processor for enhanced variable rate speech codec
KR100904439B1 (ko) 2006-02-23 2009-06-26 엘지전자 주식회사 오디오 신호의 처리 방법 및 장치
TWI294107B (en) 2006-04-28 2008-03-01 Univ Nat Kaohsiung 1St Univ Sc A pronunciation-scored method for the application of voice and image in the e-learning
US7873511B2 (en) 2006-06-30 2011-01-18 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder and audio processor having a dynamically variable warping characteristic
US8682652B2 (en) 2006-06-30 2014-03-25 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder and audio processor having a dynamically variable warping characteristic
EP2038879B1 (en) 2006-06-30 2015-11-04 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and audio decoder having a dynamically variable warping characteristic
CN100489965C (zh) * 2006-08-18 2009-05-20 广州广晟数码技术有限公司 音频编码系统
US8239190B2 (en) 2006-08-22 2012-08-07 Qualcomm Incorporated Time-warping frames of wideband vocoder
CN101025918B (zh) 2007-01-19 2011-06-29 清华大学 一种语音/音乐双模编解码无缝切换方法
US9653088B2 (en) * 2007-06-13 2017-05-16 Qualcomm Incorporated Systems, methods, and apparatus for signal encoding using pitch-regularizing and non-pitch-regularizing coding
EP2107556A1 (en) 2008-04-04 2009-10-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio transform coding using pitch correction
PL2311033T3 (pl) 2008-07-11 2012-05-31 Fraunhofer Ges Forschung Dostarczanie sygnału aktywującego dopasowanie czasowe i kodowanie sygnału audio z jego użyciem
MY154452A (en) 2008-07-11 2015-06-15 Fraunhofer Ges Forschung An apparatus and a method for decoding an encoded audio signal
JP5297891B2 (ja) 2009-05-25 2013-09-25 京楽産業.株式会社 遊技機
US8670990B2 (en) 2009-08-03 2014-03-11 Broadcom Corporation Dynamic time scale modification for reduced bit rate audio coding
WO2011048815A1 (ja) * 2009-10-21 2011-04-28 パナソニック株式会社 オーディオ符号化装置、復号装置、方法、回路およびプログラム

Also Published As

Publication number Publication date
EP2257944B1 (en) 2011-11-02
ES2376849T3 (es) 2012-03-20
AR072498A1 (es) 2010-09-01
HK1151883A1 (en) 2012-02-10
RU2010139021A (ru) 2012-03-27
AU2009267484A1 (en) 2010-01-14
HK1151619A1 (en) 2012-02-03
TWI451402B (zh) 2014-09-01
KR101205615B1 (ko) 2012-11-27
AU2009267485B2 (en) 2011-10-06
CA2718740A1 (en) 2010-01-14
CA2718740C (en) 2015-10-27
CN102007531B (zh) 2013-08-21
AU2009267486B2 (en) 2011-09-15
KR20100134625A (ko) 2010-12-23
HK1151620A1 (en) 2012-02-03
US9299363B2 (en) 2016-03-29
RU2010139022A (ru) 2012-03-27
KR101205644B1 (ko) 2012-11-27
US20110106542A1 (en) 2011-05-05
EP2260485A1 (en) 2010-12-15
PL2260485T3 (pl) 2013-08-30
MX2010010747A (es) 2010-11-30
BRPI0906319A2 (pt) 2023-03-14
WO2010003582A1 (en) 2010-01-14
US9025777B2 (en) 2015-05-05
BRPI0906300B1 (pt) 2021-11-09
EP2257945A1 (en) 2010-12-08
ES2404132T3 (es) 2013-05-24
AU2009267484B2 (en) 2011-09-01
AR072500A1 (es) 2010-09-01
RU2527760C2 (ru) 2014-09-10
TW201009809A (en) 2010-03-01
CN102007537A (zh) 2011-04-06
JP2011521304A (ja) 2011-07-21
BRPI0906320A2 (pt) 2020-01-14
CN102007536A (zh) 2011-04-06
BRPI0906320B1 (pt) 2021-05-18
TWI459374B (zh) 2014-11-01
CA2718857C (en) 2014-09-09
KR20100125372A (ko) 2010-11-30
AU2009267486A1 (en) 2010-01-14
AR072739A1 (es) 2010-09-15
MY154452A (en) 2015-06-15
RU2486484C2 (ru) 2013-06-27
JP5551686B2 (ja) 2014-07-16
ES2376974T3 (es) 2012-03-21
US20110158415A1 (en) 2011-06-30
PL2257945T3 (pl) 2012-04-30
MX2010010749A (es) 2010-11-30
JP6041815B2 (ja) 2016-12-14
JP5323180B2 (ja) 2013-10-23
TWI453732B (zh) 2014-09-21
JP5323179B2 (ja) 2013-10-23
PL2257944T3 (pl) 2012-04-30
CN102007531A (zh) 2011-04-06
CA2718857A1 (en) 2010-01-14
EP2260485B1 (en) 2013-04-03
EP2257944A1 (en) 2010-12-08
JP2011521303A (ja) 2011-07-21
MX2010010748A (es) 2010-11-30
US20110161088A1 (en) 2011-06-30
TW201009811A (en) 2010-03-01
WO2010003581A1 (en) 2010-01-14
CA2718859C (en) 2015-09-29
EP2257945B1 (en) 2011-11-02
ATE532176T1 (de) 2011-11-15
BRPI0906300A2 (pt) 2020-09-24
RU2010139023A (ru) 2012-03-27
AU2009267485A1 (en) 2010-01-14
JP2014130359A (ja) 2014-07-10
US9043216B2 (en) 2015-05-26
TW201009810A (en) 2010-03-01
RU2509381C2 (ru) 2014-03-10
KR101205593B1 (ko) 2012-11-27
ATE532177T1 (de) 2011-11-15
CA2718859A1 (en) 2010-01-14
JP2011521305A (ja) 2011-07-21
WO2010003583A1 (en) 2010-01-14
CN102007537B (zh) 2013-08-28
CN102007536B (zh) 2012-09-05

Similar Documents

Publication Publication Date Title
KR101205644B1 (ko) 오디오 신호 디코더, 시간 워핑 윤곽선 데이터 공급기, 방법 및 컴퓨터 프로그램
US9129597B2 (en) Audio signal decoder, audio signal encoder, methods and computer program using a sampling rate dependent time-warp contour encoding

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
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20151030

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161116

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20171115

Year of fee payment: 6