KR101070207B1 - 오디오 신호와 관련된 프레임으로 윈도우를 변형하는 시스템 및 방법 - Google Patents

오디오 신호와 관련된 프레임으로 윈도우를 변형하는 시스템 및 방법 Download PDF

Info

Publication number
KR101070207B1
KR101070207B1 KR1020097003972A KR20097003972A KR101070207B1 KR 101070207 B1 KR101070207 B1 KR 101070207B1 KR 1020097003972 A KR1020097003972 A KR 1020097003972A KR 20097003972 A KR20097003972 A KR 20097003972A KR 101070207 B1 KR101070207 B1 KR 101070207B1
Authority
KR
South Korea
Prior art keywords
frame
windowed
frames
mdct
speech
Prior art date
Application number
KR1020097003972A
Other languages
English (en)
Other versions
KR20090035717A (ko
Inventor
벤카테시 크리시난
아난타파드마나브한 에이 칸드하다이
Original Assignee
퀄컴 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20090035717A publication Critical patent/KR20090035717A/ko
Application granted granted Critical
Publication of KR101070207B1 publication Critical patent/KR101070207B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/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/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/20Vocoders using multiple modes using sound class specific coding, hybrid encoders or object based coding

Landscapes

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

Abstract

오디오 신호와 관련된 프레임으로 윈도우를 변형하는 방법이 설명된다. 신호가 수신된다. 그 신호는 복수의 프레임들로 파티션된다. 복수의 프레임들 내의 일 프레임이 넌-스피치 신호와 관련되는지가 판정된다. 그 프레임이 넌-스피치 신호와 관련된다고 판정되었으면, 변형된 이산 코사인 변환 (MDCT) 윈도우 함수가 그 프레임에 적용되어 제 1 제로 패드 영역 및 제 2 제로 패드 영역을 생성한다. 그 프레임이 인코딩된다. 디코더 윈도우는 인코더 윈도우와 동일하다.
프레임, 윈도우, 이산 코사인 변환

Description

오디오 신호와 관련된 프레임으로 윈도우를 변형하는 시스템 및 방법{SYSTEMS AND METHODS FOR MODIFYING A WINDOW WITH A FRAME ASSOCIATED WITH AN AUDIO SIGNAL}
35 U.S.C.§119 하의 우선권 주장
본 특허출원은, "Windowing for Perfect Reconstruction in MDCT with Less than 50% Frame Overlap" 의 명칭으로 2006년 7월 31일자로 출원되어 본 발명의 양수인에게 양도되어 있으며 본 명세서에 참조로 명백히 포함되는 가출원 제 60/834,674 호를 우선권 주장한다.
기술분야
본 시스템 및 방법은 일반적으로 스피치 프로세싱 기술에 관한 것이다. 더 상세하게는, 본 시스템 및 방법은 오디오 신호와 관련된 프레임으로 윈도우를 변형하는 것에 관한 것이다.
배경
디지털 기술들에 의한 음성의 송신은, 특히, 장거리 디지털 무선 전화 애플리케이션, 컴퓨터를 이용한 비디오 메시징 등에 있어서 널리 보급되었다. 차례로, 이는, 복원된 스피치의 인지된 품질을 유지하면서 채널을 통해 전송될 수 있는 최소량의 정보를 결정하는 것에 대한 관심을 일으켰다. 스피치를 압축하는 디바이스들은 다수의 원격통신 분야에서의 이용을 발견한다. 원격통신의 일 예는 무선 통신이다. 다른 예는 인터넷과 같은 컴퓨터 네트워크를 통한 통신이다. 통신 분야는, 예를 들어, 컴퓨터, 랩탑, 개인휴대 정보단말기 (PDA), 코드리스 전화기, 페이저, 무선 로컬 루프, 셀룰러 및 휴대 통신 시스템 (PCS) 전화 시스템과 같은 무선 전화, 이동 인터넷 프로토콜 (IP) 전화 및 위성 통신 시스템을 포함한 다수의 애플리케이션들을 가진다.
도면의 간단한 설명
도 1 은 무선 통신 시스템의 일 구성을 도시한 것이다.
도 2 는 컴퓨팅 환경의 일 구성을 도시한 블록도이다.
도 3 은 신호 송신 환경의 일 구성을 도시한 블록도이다.
도 4a 는 오디오 신호와 관련된 프레임으로 윈도우를 변형하는 방법의 일 구성을 도시한 흐름도이다.
도 4b 는 오디오 신호와 관련된 프레임으로 윈도우를 변형하는 인코더 및 디코더의 일 구성을 도시한 블록도이다.
도 5 는 오디오 신호의 인코딩된 프레임을 복원하는 방법의 일 구성을 도시한 흐름도이다.
도 6 은 멀티-모드 디코더와 통신하는 멀티-모드 인코더의 일 구성을 도시한 블록도이다.
도 7 은 오디오 신호 인코딩 방법의 일 예를 도시한 흐름도이다.
도 8 은 윈도우 함수가 각각의 프레임에 적용된 이후의 복수의 프레임들의 일 구성을 도시한 블록도이다.
도 9 는 넌-스피치 (non-speech) 신호와 관련된 프레임에 윈도우 함수를 적용하는 방법의 일 구성을 도시한 흐름도이다.
도 10 은 윈도우 함수에 의해 변형된 프레임을 복원하는 방법의 일 구성을 도시한 흐름도이다.
도 11 은 통신/컴퓨팅 디바이스의 일 구성에 있어서의 특정 컴포넌트들의 블록도이다.
상세한 설명
오디오 신호와 관련된 프레임으로 윈도우를 변형하는 방법이 설명된다. 일 신호가 수신된다. 그 신호는 복수의 프레임들로 파티션된다. 복수의 프레임들 내의 일 프레임이 넌-스피치 신호와 관련되는지가 판정된다. 그 프레임이 넌-스피치 신호와 관련된다고 판정되었다면, 변형된 이산 코사인 변환 (MDCT) 윈도우 함수가 그 프레임에 적용되어 제 1 제로 패드 영역 및 제 2 제로 패드 영역을 생성한다. 그 프레임이 인코딩된다.
오디오 신호와 관련된 프레임으로 윈도우를 변형하는 장치가 또한 설명된다. 그 장치는 프로세서 및 그 프로세서와 전자 통신하는 메모리를 포함한다. 명령들이 그 메모리에 저장된다. 그 명령들은 신호를 수신하고, 그 신호를 복수의 프레임들로 파티션하고, 복수의 프레임들 내의 일 프레임이 넌-스피치 신호와 관련되는지를 판정하고, 그 프레임이 넌-스피치 신호와 관련된다고 판정되었다면, 변형된 이산 코사인 변환 (MDCT) 윈도우 함수를 그 프레임에 적용하여 제 1 제로 패드 영역 및 제 2 제로 패드 영역을 생성하며, 그 프레임을 인코딩하도록 실행가 능하다.
오디오 신호와 관련된 프레임으로 윈도우를 변형하도록 구성된 시스템이 또한 설명된다. 그 시스템은 프로세싱하는 수단 및 신호를 수신하는 수단을 포함한다. 그 시스템은 또한, 그 신호를 복수의 프레임들로 파티션하는 수단 및 복수의 프레임들 내의 일 프레임이 넌-스피치 신호와 관련되는지를 판정하는 수단을 포함한다. 그 시스템은, 그 프레임이 넌-스피치 신호와 관련된다고 판정되었다면, 변형된 이산 코사인 변환 (MDCT) 윈도우 함수를 그 프레임에 적용하여 제 1 제로 패드 영역 및 제 2 제로 패드 영역을 생성하는 수단 및 그 프레임을 인코딩하는 수단을 더 포함한다.
명령들의 세트를 저장하도록 구성된 컴퓨터-판독가능 매체가 또한 설명된다. 그 명령들은 신호를 수신하고, 그 신호를 복수의 프레임들로 파티션하고, 복수의 프레임들 내의 일 프레임이 넌-스피치 신호와 관련되는지를 판정하고, 그 프레임이 넌-스피치 신호와 관련된다고 판정되었다면, 변형된 이산 코사인 변환 (MDCT) 윈도우 함수를 그 프레임에 적용하여 제 1 제로 패드 영역 및 제 2 제로 패드 영역을 생성하며, 그 프레임을 인코딩하도록 실행가능하다.
프레임의 변형된 이산 코사인 변환 (MDCT) 을 계산하는데 사용될 윈도우 함수를 선택하는 방법이 또한 설명된다. 프레임의 MDCT 를 계산하는데 사용될 윈도우 함수를 선택하는 알고리즘이 제공된다. 선택된 윈도우 함수가 프레임에 적용된다. 그 프레임은 부가적인 코딩 모드들에 의해 MDCT 코딩 모드에 부과된 제약에 기초하여 MDCT 코딩 모드로 인코딩되며, 여기서, 그 제약은 프레임의 길이, 룩-어헤드 (look ahead) 길이 및 지연을 포함한다.
오디오 신호의 인코딩된 프레임을 복원하는 방법이 또한 설명된다. 일 패킷이 수신된다. 그 패킷은 인코딩된 프레임을 취출하도록 분해된다. 제 1 제로 패드 영역과 제 1 영역 사이에 위치된 프레임의 샘플들이 합성된다. 제 1 길이의 중첩 영역이 이전 프레임의 룩-어헤드 길이와 가산된다. 그 프레임의 제 1 길이의 룩-어헤드가 저장된다. 복원된 프레임이 출력된다.
다음으로, 그 시스템 및 방법의 다양한 구성들이 도면들을 참조하여 설명되며, 도면들에서, 동일한 참조부호들은 동일하거나 기능적으로 유사한 엘리먼트들을 나타낸다. 본 명세서의 도면들에 일반적으로 설명되고 도시된 바와 같은 본 시스템 및 방법의 특징들은 매우 다양한 상이한 구성들로 배열 및 설계될 수 있다. 따라서, 아래의 상세한 설명은 청구된 바와 같은 시스템 및 방법의 범위를 한정하도록 의도되지 않고, 그 시스템 및 방법의 구성들의 단지 대표예일 뿐이다.
본 명세서에서 개시된 구성들의 다수의 특징들은 컴퓨터 소프트웨어, 전자 하드웨어, 또는 이들의 조합으로서 구현될 수도 있다. 하드웨어와 소프트웨어의 대체 가능성을 분명히 예시하기 위하여, 다양한 컴포넌트들이 일반적으로 그들의 기능의 관점에서 설명될 것이다. 그러한 기능이 하드웨어로서 구현될지 소프트웨어로서 구현될지는 전체 시스템에 부과된 특정 애플리케이션 및 설계 제약들에 의존한다. 당업자는 설명된 기능을 각각의 특정 애플리케이션에 대해 다양한 방식으로 구현할 수도 있지만, 그러한 구현의 결정이 본 시스템 및 방법의 범위로부터의 일탈을 야기하는 것으로서 해석하지 말아야 한다.
설명된 기능이 컴퓨터 소프트웨어로서 구현될 경우, 그러한 소프트웨어는, 메모리 디바이스 내에 위치되고/되거나 시스템 버스 또는 네트워크를 통해 전자 신호들로서 송신되는 임의의 타입의 컴퓨터 명령 또는 컴퓨터 실행가능 코드를 포함할 수도 있다. 본 명세서에서 설명되는 컴포넌트들과 관련된 기능을 구현하는 소프트웨어는 단일 명령 또는 다수의 명령들을 포함할 수도 있고, 수개의 상이한 코드 세그먼트들을 통해, 상이한 프로그램들 중에서, 및 수개의 메모리 디바이스들에 걸쳐 분산될 수도 있다.
본 명세서에서 사용되는 바와 같이, 용어 "일 구성", "구성", "구성들", "그 구성", "그 구성들", "하나 이상의 구성들", "일부 구성들", "특정 구성들", "하나의 구성", "다른 구성" 등은, 다른 방법으로 명백히 특정하지 않는다면, "개시된 시스템 및 방법의 하나 이상 (하지만, 반드시 모두는 아님) 의 구성들" 을 의미한다.
용어 "판정하는" (및 그 문법적 변형물) 은 극도로 넓은 의미로 사용된다. 용어 "판정하는" 은 매우 다양한 액션들을 포괄하며, 따라서, "판정하는 것" 은 계산하는 것, 연산하는 것, 프로세싱하는 것, 유도하는 것, 조사하는 것, 검색 (look-up) 하는 것 (예를 들어, 테이블, 데이터베이스, 또는 다른 데이터 구조에서 검색하는 것), 확인하는 것 등을 포함할 수 있다. 또한, "판정하는 것" 은 수신하는 것 (예를 들어, 정보를 수신하는 것), 액세스하는 것 (예를 들어, 메모리 내의 데이터에 액세스하는 것) 등을 포함할 수 있다. 또한, "판정하는 것" 은 결정하는 것, 선택하는 것, 선출하는 것, 확립하는 것 등을 포함할 수 있다.
어구 "기초하는" 은, 다른 방법으로 명백히 특정하지 않는다면, "기초만 하는" 을 의미하지 않는다. 즉, 어구 "기초하는" 은 "기초만 하는" 과 "적어도 기초하는" 양자를 기술한다. 일반적으로, 어구 "오디오 신호" 는 청취될 수도 있는 신호를 지칭하도록 사용될 수도 있다. 오디오 신호들의 예는 인간의 스피치, 기계적 및 음성의 음악, 음색의 사운드 등을 나타내는 것을 포함할 수도 있다.
도 1 은 복수의 이동국들 (102), 복수의 기지국들 (104), 기지국 제어기 (BSC; 106), 및 이동 스위칭 센터 (MSC; 108) 를 포함할 수도 있는 코드분할 다중 액세스 (CDMA) 무선 전화 시스템 (100) 을 도시한 것이다. MSC (108) 는 공중 스위치 전화 네트워크 (PSTN; 110) 와 인터페이스하도록 구성될 수도 있다. MSC (108) 는 또한 BSC (106) 와 인터페이스하도록 구성될 수도 있다. 시스템 (100) 에 2 이상의 BSC (106) 가 존재할 수도 있다. 각각의 기지국 (104) 은 적어도 하나의 섹터 (미도시) 를 포함할 수도 있으며, 여기서, 각각의 섹터는 기지국들 (104) 로부터 방사상으로 떨어진 특정 방향에 포인팅된 안테나 또는 무지향성 안테나를 가질 수도 있다. 대안적으로, 각각의 섹터는 다이버시티 수신을 위해 2 개의 안테나를 포함할 수도 있다. 각각의 기지국 (104) 은 복수의 주파수 할당을 지원하도록 설계될 수도 있다. 섹터와 주파수 할당의 교차점은 CDMA 채널로서 지칭될 수도 있다. 이동국들 (102) 은 셀룰러 또는 휴대 통신 시스템 (PCS) 전화기들을 포함할 수도 있다.
셀룰러 전화 시스템 (100) 의 동작 동안, 기지국들 (104) 은 역방향 링크 신호들의 세트를 이동국들 (102) 의 세트로부터 수신할 수도 있다. 이동국들 (102) 은 전화 콜 또는 다른 통신을 수행하고 있을 수도 있다. 소정의 기지국 (104) 에 의해 수신된 각각의 역방향 링크 신호는 그 기지국 (104) 내에서 프로세싱될 수도 있다. 결과적인 데이터는 BSC (106) 에 포워딩될 수도 있다. BSC (106) 는, 기지국들 (104) 간의 소프트 핸드오프의 통합을 포함하여 콜 리소스 할당 및 이동도 관리 기능을 제공할 수도 있다. BSC (106) 는 또한 수신 데이터를 MSC (108) 에 라우팅할 수도 있으며, 이 MSC (108) 는 PSTN (110) 과의 인터페이스를 위해 부가적인 라우팅 서비스들을 제공한다. 유사하게, PSTN (110) 은 MSC (108) 와 인터페이스할 수도 있고, MSC (108) 는 BSC (106) 와 인터페이스할 수도 있으며, 차례로, 이 BSC (106) 는 기지국들 (104) 을 제어하여 순방향 링크 신호들의 세트를 이동국들 (102) 의 세트에 송신할 수도 있다.
도 2 는 소스 컴퓨팅 디바이스 (202), 수신 컴퓨팅 디바이스 (204) 및 수신 이동 컴퓨팅 디바이스 (206) 를 포함하는 컴퓨팅 환경 (200) 의 일 구성을 도시한 것이다. 소스 컴퓨팅 디바이스 (202) 는 네트워크 (210) 를 통해 수신 컴퓨팅 디바이스들 (204, 206) 과 통신할 수도 있다. 네트워크 (210) 는 인터넷, 로컬 영역 네트워크 (LAN), 캠퍼스 영역 네트워크 (CAN), 도시 영역 네트워크 (MAN), 광역 네트워크 (WAN), 링 네트워크, 스타 네트워크, 토큰 링 네트워크 등을 포함하지만 이에 한정되지 않는 일 타입의 컴퓨팅 네트워크일 수도 있다.
일 구성에 있어서, 소스 컴퓨팅 디바이스 (202) 는 오디오 신호들 (212) 을 인코딩하고, 그 오디오 신호들 (212) 을 네트워크 (210) 를 통해 수신 컴퓨팅 디바이스들 (204, 206) 에 송신할 수도 있다. 오디오 신호들 (212) 은 스피치 신호 들, 음악 신호들, 톤, 배경 잡음 신호들 등을 포함할 수도 있다. 본 명세서에서 사용되는 바와 같이, "스피치 신호들" 은 인간 스피치 시스템에 의해 생성된 신호들을 지칭할 수도 있고, "넌-스피치 신호들" 은 인간 스피치 시스템에 의해 생성되지 않은 신호들 (즉, 음악, 배경 잡음 등) 을 지칭할 수도 있다. 소스 컴퓨팅 디바이스 (202) 는 이동 전화기, 개인휴대 정보단말기 (PDA), 랩탑 컴퓨터, 퍼스널 컴퓨터, 또는 프로세서를 갖는 임의의 다른 컴퓨팅 디바이스일 수도 있다. 수신 컴퓨팅 디바이스 (204) 는 퍼스널 컴퓨터, 전화기 등일 수도 있다. 수신 이동 컴퓨팅 디바이스 (206) 는 이동 전화기, PDA, 랩탑 컴퓨터, 또는 프로세서를 갖는 임의의 다른 이동 컴퓨팅 디바이스일 수도 있다.
도 3 은 인코더 (302), 디코더 (304), 및 송신 매체 (306) 를 포함하는 신호 송신 환경 (300) 을 도시한 것이다. 인코더 (302) 는 이동국 (102) 또는 소스 컴퓨팅 디바이스 (202) 내에서 구현될 수도 있다. 디코더 (304) 는 기지국 (104) 에서, 이동국 (102) 에서, 수신 컴퓨팅 디바이스 (204) 에서, 또는 수신 이동 컴퓨팅 디바이스 (206) 에서 구현될 수도 있다. 인코더 (302) 는 오디오 신호 (s(n); 310) 를 인코딩하여 인코딩된 오디오 신호 (senc(n); 312) 를 형성할 수도 있다. 인코딩된 오디오 신호 (312) 는 송신 매체 (306) 를 가로질러 디코더 (304) 에 송신될 수도 있다. 송신 매체 (306) 는 인코더 (302) 가 인코딩된 오디오 신호 (312) 를 무선으로 디코더에 송신하는 것을 용이하게 할 수도 있거나, 또는 인코더 (302) 가 인코딩된 오디오 신호 (312) 를, 인코더 (302) 와 디코더 (304) 사이의 무선 접속을 통해 송신하는 것을 용이하게 할 수도 있다. 디코더 (304) 는 senc(n) (312) 을 디코딩하여, 합성된 오디오 신호 (
Figure 112009011865105-pct00001
; 316) 를 생성할 수도 있다.
본 명세서에서 사용되는 바와 같은 용어 "코딩" 은 일반적으로 인코딩 및 디코딩 양자를 포괄하는 방법들을 지칭할 수도 있다. 일반적으로, 코딩 시스템, 방법 및 장치는 수용가능한 신호 재생 (즉, s(n) (310)
Figure 112009011865105-pct00002
Figure 112009011865105-pct00003
(316)) 을 유지하면서 송신 매체 (306) 를 통해 송신된 비트의 수를 최소화 (즉, senc(n) (312) 의 대역폭을 최소화) 하려 한다. 인코딩된 오디오 신호 (312) 의 합성은 인코더 (302) 에 의해 이용된 특정 오디오 코딩 모드에 따라 변할 수도 있다. 다양한 코딩 모드들이 이하 설명된다.
이하 설명되는 인코더 (302) 및 디코더 (304) 의 컴포넌트들은 전자 하드웨어로서, 컴퓨터 소프트웨어로서, 또는 이들의 조합으로서 구현될 수도 있다. 이들 컴포넌트들은 그들의 기능의 관점에서 이하 설명된다. 그 기능이 하드웨어로서 구현될지 소프트웨어로서 구현될지는 전체 시스템에 부과된 특정 애플리케이션 및 설계 제약에 의존할 수도 있다. 송신 매체 (306) 는 지상 기반 통신 라인, 기지국과 위성 간의 링크, 셀룰러 전화기와 기지국 간 그리고 셀룰러 전화기와 위성 간의 무선 통신, 또는 컴퓨팅 디바이스들 간의 통신을 포함하지만 이에 한정되지 않는 다수의 상이한 송신 매체를 나타낼 수도 있다.
통신에 대한 각각의 당사자는 데이터를 송신할 뿐아니라 데이터를 수신할 수 도 있다. 각각의 당사자는 인코더 (302) 및 디코더 (304) 를 이용할 수도 있다. 하지만, 신호 송신 환경 (300) 은 송신 매체 (306) 의 일단에서 인코더 (302) 를 포함하고 타단에서 디코더 (304) 를 포함하는 것으로서 이하 설명될 것이다.
일 구성에 있어서, s(n) (310) 은 상이한 음성 사운드 및 묵음 (silence) 주기를 포함하는 통상의 대화 동안 획득된 디지털 스피치 신호를 포함할 수도 있다. 스피치 신호 (s(n); 310) 는 프레임들로 파티션될 수도 있으며, 각각의 프레임은 서브프레임들로 더 파티션될 수도 있다. 이들의 임의적으로 선택된 프레임/서브프레임 경계들은 어떠한 블록 프로세싱이 수행될 경우에 이용될 수도 있다. 프레임들에 대해 수행되는 것으로서 설명되는 동작들이 또한 서브프레임들에 대해 수행될 수도 있으며, 이러한 의미에서, 프레임 및 서브프레임은 본 명세서에서 대체가능하게 사용된다. 또한, 하나 이상의 프레임은 윈도우에 포함될 수도 있으며, 이 윈도우는 다양한 프레임들 간의 배치 및 타이밍을 나타낼 수도 있다.
다른 구성에 있어서, s(n) (310) 은 음악 신호와 같은 넌-스피치 신호를 포함할 수도 있다. 넌-스피치 신호는 프레임들로 파티션될 수도 있다. 하나 이상의 프레임들이 윈도우에 포함될 수도 있으며, 이 윈도우는 다양한 프레임들 간의 배치 및 타이밍을 나타낼 수도 있다. 윈도우의 선택은 신호를 인코딩하도록 구현된 코딩 기술들 및 시스템에 부과될 수도 있는 지연 제약들에 의존할 수도 있다. 본 시스템 및 방법은, 스피치 신호 및 넌-스피치 신호 양자를 코딩할 수 있는 시스템에 있어서의 변형된 이산 코사인 변환 (MDCT) 및 인버스 변형된 이산 코사인 변환 (IMDCT) 기반 코딩 기술로 넌-스피치 신호들을 인코딩 및 디코딩함에 있어서 채용되는 윈도우 형상을 선택하는 방법을 설명한다. 그 시스템은, 균일한 레이트로 인코딩된 정보를 생성하게 하기 위해 얼마나 많은 프레임 지연 및 룩-어헤드가 MDCT 기반 코더에 의해 사용될 수 있는지에 대한 제약을 부과할 수도 있다.
일 구성에 있어서, 인코더 (302) 는 넌-스피치 신호들과 관련된 프레임들을 포함하는 윈도우를 포맷팅할 수도 있는 윈도우 포맷팅 모듈 (308) 을 포함한다. 포맷팅된 윈도우에 포함된 프레임들이 인코딩될 수도 있고, 디코더는 프레임 복원 모듈 (314) 을 구현함으로써 그 코딩된 프레임들을 복원할 수도 있다. 프레임 복원 모듈 (314) 은 그 코딩된 프레임들을 합성하여, 그 프레임들이 스피치 신호 (310) 의 사전-코딩된 프레임들과 유사하게 한다.
도 4 는 오디오 신호와 관련된 프레임으로 윈도우를 변형하는 방법 (400) 의 일 구성을 도시한 흐름도이다. 방법 (400) 은 인코더 (302) 에 의해 구현될 수도 있다. 일 구성에 있어서, 신호가 수신된다 (402). 그 신호는 이전에 설명된 바와 같은 오디오 신호일 수도 있다. 그 신호는 복수의 프레임들로 파티션될 수도 있다 (404). 윈도우 함수가 윈도우를 생성하기 위해 적용될 수도 있으며 (408), 제 1 제로 패드 영역 및 제 2 제로 패드 영역이 변형된 이산 코사인 변환 (MDCT) 을 계산하기 위해 윈도우의 일부로서 생성될 수도 있다. 즉, 윈도우의 시작부 및 종단부의 값은 제로일 수도 있다. 일 양태에 있어서, 제 1 제로 패드 영역의 길이 및 제 2 제로 패드 영역의 길이는 인코더 (302) 의 지연 제약 의 함수일 수도 있다.
변형된 이산 코사인 변환 (MDCT) 함수가 수개의 오디오 코딩 표준에 사용되어, 펄스 코드 변조 (PCM) 신호 샘플들 또는 그 프로세싱된 버전을 그 균등의 주파수 도메인 표현으로 변환할 수도 있다. MDCT 는 서로 중첩하는 프레임들의 가산 특성을 갖는 타입 IV 이산 코사인 변환 (DCT) 과 유사할 수도 있다. 즉, MDCT 에 의해 변환된 연속적인 신호 프레임들은 서로 50%만큼 중첩할 수도 있다.
부가적으로, 2M개의 샘플들의 각 프레임에 대해, MDCT 는 M개의 변환 계수들을 생성할 수도 있다. MDCT 는 임계적으로 샘플링된 완전 복원 필터 뱅크일 수도 있다. 완전 복원을 제공하기 위해, 신호 프레임 x(n) (n = 0, 1, ..., 2M) 으로부터 획득된 MDCT 계수 X(k) (k = 0, 1, ..., M) 가
(수학식 1)
Figure 112009011865105-pct00004
에 의해 주어질 수도 있으며, 여기서, k = 0, 1, ..., M 에 대해,
(수학식 2)
Figure 112009011865105-pct00005
이며, w(n) 은,
(수학식 3)
Figure 112009011865105-pct00006
를 나타내는 프린센-브래들리 (Princen-Bradley) 조건을 만족할 수도 있는 윈도우이다.
디코더에서, M개의 코딩된 계수들은 인버스 MDCT (IMDCT) 를 이용하여 시간 도메인으로 다시 변환될 수도 있다.
Figure 112009011865105-pct00007
(k = 0, 1, 2, ..., M) 이 수신된 MDCT 계수들이라면, 대응하는 IMDCT 디코더는,
(수학식 4)
Figure 112009011865105-pct00008
에 따라 2M개의 샘플들을 획득하기 위해 그 수신된 계수들의 IMDCT 를 먼저 취하고, 그 후, 현재 프레임의 제 1 의 M개의 샘플들을, 이전 프레임의 IMDCT 출력의 마지막 M개의 샘플들 및 다음 프레임의 IMDCT 출력으로부터의 제 1 의 M개의 샘플들과 중첩 및 가산함으로써 복원된 오디오 신호를 생성하며, 수학식 4 에서 hk(n) 은 수학식 2 에 의해 정의된다. 따라서, 다음 프레임에 대응하는 디코딩된 MDCT 계수들이 소정 시간에 이용가능하지 않다면, 오직 현재 프레임의 M개의 오디오 샘플들만이 완전히 복원될 수도 있다.
MDCT 시스템은 M개의 샘플들의 룩-어헤드를 이용할 수도 있다. MDCT 시스템은, 소정의 윈도우를 사용하여 오디오 신호 또는 그 오디오 신호의 필터링된 버전의 MDCT 를 획득하는 인코더, 및 인코더가 사용한 것과 동일한 윈도우를 사용하는 IMDCT 함수를 포함하는 디코더를 포함할 수도 있다. MDCT 시스템은 또한 중첩 및 가산 모듈을 포함할 수도 있다. 예를 들어, 도 4b 는 MDCT 인코더 (401) 를 도시한 것이다. 입력 오디오 신호 (403) 가 프리프로세서 (preprocessor; 405) 에 의해 수신된다. 프리프로세서 (405) 는 프리프로세싱, 선형 예측 코딩 (LPC) 필터링 및 다른 타입의 필터링을 구현한다. 프로세싱된 오디오 신호 (407) 가 프리프로세서 (405) 로부터 생성된다. MDCT 함수 (409) 가 적절히 윈도잉된 2M개의 신호 샘플들에 적용된다. 일 구성에 있어서, 양자화기 (411) 는 M개의 계수들 (413) 을 양자화 및 인코딩하고, 코딩된 M개의 계수들은 MDCT 디코더 (429) 에 송신된다.
디코더 (429) 는 M개의 코딩된 계수들 (413) 을 수신한다. IMDCT (415) 가 인코더 (401) 에서와 동일한 윈도우를 사용하여 M개의 수신된 계수들 (413) 에 대해 적용된다. 2M 개의 신호 값들 (417) 이 제 1 의 M개의 샘플들 (423) 의 선택으로서 분류될 수도 있으며, 마지막 M개의 샘플들 (419) 이 저장될 수도 있다. 또한, 마지막 M개의 샘플들 (419) 은 지연부 (421) 에 의해 일 프레임 지연될 수도 있다. 제 1 의 M개의 샘플들 (423) 과 지연된 마지막 M개의 샘플들 (419) 이 합산기 (425) 에 의해 합산될 수도 있다. 합산된 샘플들은 오디오 신호의 복원된 M개의 샘플들 (427) 을 생성하기 위해 사용될 수도 있다.
통상적으로, MDCT 시스템에 있어서, 2M개의 신호들은 현재 프레임의 M개의 샘플들 및 나중 프레임의 M개의 샘플들로부터 유도될 수도 있다. 하지만, 나중 프레임으로부터 오직 L개의 샘플들만이 이용가능하다면, 나중 프레임의 L개의 샘플들을 구현하는 윈도우가 선택될 수도 있다.
서킷 스위칭 네트워크를 통해 동작하는 실시간 음성 통신 시스템에 있어서, 룩-어헤드 샘플들의 길이는 최대 허용가능 인코딩 지연에 의해 제약될 수도 있다. L 의 룩-어헤드 길이가 이용가능하다고 가정할 수도 있다. L 은 M 보다 작거나 같을 수도 있다. 이러한 조건 하에서, 완전 복원 특성을 보존하면서, 연속적인 프레임들 간 중첩이 L개의 샘플인 MDCT 를 이용하는 것이 여전히 바람직할 수도 있다.
본 시스템 및 방법은, 코딩 모드의 선택에 관계없이 인코더가 송신용 정보를 규칙적인 간격으로 생성할 것으로 기대되는 실시간 양방향 통신 시스템에 대해 특히 관련될 수도 있다. 그 시스템은 인코더에 의한 그러한 정보의 생성에 있어서의 지터를 허용하지 못할 수도 있거나, 또는 그러한 정보의 생성에 있어서의 지터가 바람직하지 않을 수도 있다.
일 구성에 있어서, 변형된 이산 코사인 변환 (MDCT) 함수가 프레임에 적용된다 (410). 윈도우 함수를 적용하는 것은 프레임의 MDCT 를 계산함에 있어서의 일 단계일 수도 있다. 일 구성에 있어서, MDCT 함수는 2M개의 입력 샘플들을 프로세싱하여 M개의 계수들을 생성하며, 그 후, 이 M개의 계수들은 양자화 및 송신될 수도 있다.
일 구성에 있어서, 프레임이 인코딩될 수도 있다 (412). 일 양태에 있어서, 그 프레임의 계수들이 인코딩될 수도 있다 (412). 그 프레임은, 이하 더 충분히 설명될 다양한 인코딩 모드들을 이용하여 인코딩될 수도 있다. 그 프레임은 패킷으로 포맷팅될 수도 있으며 (414), 그 패킷이 송신될 수도 있다 (416). 일 구성에 있어서, 그 패킷은 디코더로 송신된다 (416).
도 5 는 오디오 신호의 인코딩된 프레임을 복원하는 방법 (500) 의 일 구성을 도시한 흐름도이다. 일 구성에 있어서, 방법 (500) 은 디코더 (304) 에 의해 구현될 수도 있다. 패킷이 수신될 수도 있다 (502). 그 패킷은 인코더 (302) 로부터 수신될 수도 있다 (502). 그 패킷은 프레임을 취출하기 위해 분해될 수도 있다 (504). 일 구성에 있어서, 그 프레임은 디코딩될 수도 있다 (506). 그 프레임이 복원될 수도 있다 (508). 일 예에 있어서, 오디오 신호의 사전-인코딩된 프레임과 유사하게 하기 위해, 프레임 복원 모듈 (314) 이 그 프레임을 복원한다. 복원된 프레임이 출력될 수도 있다 (510). 출력된 프레임은 부가적인 출력 프레임들과 결합되어 오디오 신호를 재생할 수도 있다.
도 6 은 통신 채널 (606) 을 가로질러 멀티-모드 디코더 (604) 와 통신하는 멀티-모드 인코더 (602) 의 일 구성을 도시한 블록도이다. 멀티-모드 인코더 (602) 및 멀티-모드 디코더 (604) 를 포함하는 시스템은, 상이한 오디오 신호 타입들을 인코딩하기 위한 수개의 상이한 코딩 방식들을 포함하는 인코딩 시스템일 수도 있다. 통신 채널 (606) 은 무선 주파수 (RF) 인터페이스를 포함할 수도 있다. 인코더 (602) 는 관련 디코더 (미도시) 를 포함할 수도 있다. 인코더 (602) 및 그 관련 디코더는 제 1 코더를 형성할 수도 있다. 디코더 (604) 는 관련 인코더 (미도시) 를 포함할 수도 있다. 디코더 (604) 및 그 관련 인코더는 제 2 코더를 형성할 수도 있다.
인코더 (602) 는 초기 파라미터 계산 모듈 (618), 모드 분류 모듈 (622), 복 수의 인코딩 모드들 (624, 626, 628) 및 패킷 포맷팅 모듈 (630) 을 포함할 수도 있다. 인코딩 모드들 (624, 626, 628) 의 수는 N 으로서 도시되어 있으며, 이는 인코딩 모드들 (624, 626, 628) 의 임의의 수를 나타낼 수도 있다. 간략화를 위해, 3개의 인코딩 모드들 (624, 626, 628) 이 도시되어 있으며, 점선은 다른 인코딩 모드들의 존재를 나타낸다.
디코더 (604) 는 패킷 분해기 모듈 (632), 복수의 디코딩 모드들 (634, 636, 638), 프레임 복원 모듈 (640) 및 포스트 필터 (642) 를 포함할 수도 있다. 디코딩 모드들 (634, 636, 638) 의 수는 N 으로서 도시되어 있으며, 이는 디코딩 모드들 (634, 636, 638) 의 임의의 수를 나타낼 수도 있다. 간략화를 위해, 3개의 디코딩 모드들 (634, 636, 638) 이 도시되어 있으며, 점선은 다른 디코딩 모드들의 존재를 나타낸다.
오디오 신호 (s(n); 610) 는 초기 파라미터 계산 모듈 (618) 및 모드 분류 모듈 (622) 에 제공될 수도 있다. 신호 (610) 는 프레임으로서 지칭되는 샘플들의 블록으로 분할될 수도 있다. 값 n 은 프레임 번호를 지정할 수도 있거나, 또는 그 값 n 은 프레임 내의 샘플 번호를 지정할 수도 있다. 대안적인 구성에 있어서, 선형 예측 (LP) 잔여 에러 신호가 오디오 신호 (610) 대신 사용될 수도 있다. LP 잔여 에러 신호는 코드 여기 선형 예측 (CELP) 코더와 같은 스피치 코더들에 의해 이용될 수도 있다.
초기 파라미터 계산 모듈 (618) 은 현재 프레임에 기초하여 다양한 파라미터들을 유도할 수도 있다. 일 양태에 있어서, 이들 파라미터들은 선형 예측 코딩 (LPC) 필터 계수, 선형 스펙트럼 쌍 (LSP) 계수, 정규화된 자기상관 함수 (NACF), 개루프 래그, 제로 크로싱 레이트, 대역 에너지, 및 포르만트 잔여 신호 중 적어도 하나를 포함한다. 다른 양태에 있어서, 초기 파라미터 계산 모듈 (618) 은 신호 (610) 를 필터링하고 피치를 계산하는 등에 의해 신호 (610) 를 프리프로세싱할 수도 있다.
초기 파라미터 계산 모듈 (618) 은 모드 분류 모듈 (622) 에 커플링될 수도 있다. 모드 분류 모듈 (622) 은 인코딩 모드들 (624, 626, 628) 사이에서 동적으로 스위칭할 수도 있다. 초기 파라미터 계산 모듈 (618) 은 현재 프레임에 관한 파라미터들을 모드 분류 모듈 (622) 에 제공할 수도 있다. 모드 분류 모듈 (622) 은 현재 프레임에 대한 적절한 인코딩 모드 (624, 626, 628) 를 선택하기 위해 프레임 단위로 인코딩 모드들 (624, 626, 628) 사이를 동적으로 스위칭하도록 커플링될 수도 있다. 모드 분류 모듈 (622) 은 그 파라미터들을 소정의 임계값 및/또는 실링 (ceiling) 값과 비교함으로써 현재 프레임에 대한 파라미터 인코딩 모드 (624, 626, 628) 를 선택할 수도 있다. 예를 들어, 넌-스피치 신호와 관련된 프레임이 MDCT 코딩 방식들을 이용하여 인코딩될 수도 있다. MDCT 코딩 방식은 프레임을 수신하고 특정 MDCT 윈도우 포맷을 그 프레임에 적용할 수도 있다. 특정 MDCT 윈도우 포맷의 예는 도 8 과 관련하여 이하 설명된다.
모드 분류 모듈 (622) 은 스피치 프레임을 스피치 또는 비활성 스피치 (예를 들어, 묵음, 배경 잡음 또는 단어간 일시중지) 로서 분류할 수도 있다. 프레임의 주기성에 기초하여, 모드 분류 모듈 (622) 은 스피치 프레임을 특정 타입의 스 피치, 예를 들어, 음성형, 무음형 (unvoiced), 또는 과도형 (transient) 으로서 분류할 수도 있다.
음성형 스피치는 비교적 높은 정도의 주기성을 나타내는 스피치를 포함할 수도 있다. 피치 주기는, 프레임의 컨텐츠를 분석 및 복원하는데 사용될 수도 있는 스피치 프레임의 컴포넌트일 수도 있다. 무음형 스피치는 자음 사운드 (consonant sounds) 를 포함할 수도 있다. 과도형 스피치 프레임들은 음성형 스피치와 무음형 스피치 간의 천이를 포함할 수도 있다. 음성형 스피치로도 무음형 스피치로도 분류되지 않는 프레임들이 과도형 스피치로서 분류될 수도 있다.
프레임들을 스피치 또는 넌-스피치로서 분류하는 것은 상이한 인코딩 모드들 (624, 626, 628) 이 상이한 타입의 프레임을 인코딩하는데 이용되게 할 수도 있으며, 이는 통신 채널 (606) 과 같은 공유 채널에 있어서 대역폭의 더 효율적인 이용을 야기한다.
모드 분류 모듈 (622) 은 프레임의 분류에 기초하여 현재 프레임에 대한 인코딩 모드 (624, 626, 628) 를 선택할 수도 있다. 다양한 인코딩 모드들 (624, 626, 628) 이 병렬로 커플링될 수도 있다. 인코딩 모드들 (624, 626, 628) 중 하나 이상이 임의의 소정 시간에 동작할 수도 있다. 일 구성에 있어서, 하나의 인코딩 모드 (624, 626, 628) 가 현재 프레임의 분류에 따라 선택된다.
상이한 인코딩 모드들 (624, 626, 628) 이 상이한 코딩 비트 레이트, 상이한 코딩 방식, 또는 코딩 비트 레이트와 코딩 방식의 상이한 조합에 따라 동작할 수도 있다. 또한, 상이한 인코딩 모드들 (624, 626, 628) 은 일 프레임에 상이한 윈 도우 함수를 적용할 수도 있다. 사용되는 다양한 코딩 레이트들은 풀 레이트, 하프 레이트, 1/4 레이트, 및/또는 1/8 레이트일 수도 있다. 사용되는 다양한 코딩 모드들 (624, 626, 628) 은 MDCT 코딩, 코드 여기 선형 예측 (CELP) 코딩, 프로토타입 피치 주기 (PPP) 코딩 (또는 파형 보간 (WI) 코딩), 및/또는 잡음 여기 선형 예측 (NELP) 코딩일 수도 있다. 따라서, 예를 들어, 특정 인코딩 모드 (624, 626, 628) 는 MDCT 코딩 방식일 수도 있고, 다른 인코딩 모드는 풀 레이트 CELP 일 수도 있고, 다른 인코딩 모드 (624, 626, 628) 는 하프 레이트 CELP 일 수도 있고, 다른 인코딩 모드 (624, 626, 628) 는 풀 레이트 PPP 일 수도 있으며, 다른 인코딩 모드 (624, 626, 628) 는 NELP 일 수도 있다.
오디오 신호의 M개의 샘플들을 인코딩, 송신, 수신 및 디코더에서의 복원을 위해 종래의 윈도우를 이용하는 MDCT 코딩 방식에 따르면, MDCT 코딩 방식은 인코더에서 입력 신호의 2M개의 샘플들을 이용한다. 즉, 오디오 신호의 현재 프레임의 M개의 샘플들에 부가하여, 인코더는, 인코딩이 시작할 수도 있기 전에 수집될 부가적인 M개의 샘플들을 대기할 수도 있다. MDCT 코딩 방식이 CELP 와 같은 다른 코딩 모드들과 공존하는 멀티모드 코딩 시스템에 있어서, MDCT 계산을 위한 종래의 윈도우 포맷의 사용은 전체 코딩 시스템의 룩-어헤드 길이 및 전체 프레임 사이즈에 영향을 줄 수도 있다. 본 시스템 및 방법은 임의의 소정 프레임 사이즈 및 룩-어헤드 길이에 대해 MDCT 계산을 위한 윈도우 포맷의 선택 및 설계를 제공하여, MDCT 코딩 방식이 멀티모드 코딩 시스템에 대한 제약을 부과하지 않게 한다.
CELP 인코딩 모드에 따르면, 선형 예측 성도 (vocal tract) 모델이 LP 잔여 신호의 양자화 버전으로 여기될 수도 있다. CELP 인코딩 모드에 있어서, 현재 프레임이 양자화될 수도 있다. CELP 인코딩 모드는 과도형 스피치로서 분류된 프레임들을 인코딩하는데 이용될 수도 있다.
NELP 인코딩 모드에 따르면, 필터링된 의사-랜덤 잡음 신호가 LP 잔여 신호를 모델링하는데 이용될 수도 있다. NELP 인코딩 모드는 낮은 비트 레이트를 달성하는 비교적 간단한 기술일 수도 있다. NELP 인코딩 모드는 무음형 스피치로서 분류된 프레임들을 인코딩하는데 이용될 수도 있다.
PPP 인코딩 모드에 따르면, 각각의 프레임 내의 피치 주기들의 서브세트가 인코딩될 수도 있다. 스피치 신호의 나머지 주기들은 이들 프로토타입 주기들 사이를 보간함으로써 복원될 수도 있다. PPP 코딩의 시간 도메인 구현에 있어서, 현재 프로토타입 주기를 근사화하기 위해 이전의 프로토타입 주기를 변형하는 방법을 기술하는 제 1 세트의 파라미터들이 계산될 수도 있다. 합산될 경우, 현재 프로토타입 주기와 변형된 이전의 프로토타입 주기 간의 차이를 근사화하는 하나 이상의 코드벡터들이 선택될 수도 있다. 제 2 세트의 파라미터들이 이들 선택된 코드벡터들을 기술한다. PPP 코딩의 주파수 도메인 구현에 있어서, 프로토타입의 진폭 및 위상 스펙트럼을 기술하기 위해 일 세트의 파라미터들이 계산될 수도 있다. PPP 코딩의 구현에 따르면, 디코더 (604) 는 진폭 및 위상을 기술한 파라미터들의 세트에 기초하여 현재 프로토타입을 복원함으로써 출력 오디오 신호 (616) 를 합성할 수도 있다. 스피치 신호는 복원된 현재 프로토타입 주기 와 복원된 이전의 프로토타입 주기 사이의 영역에 걸쳐 보간될 수도 있다. 프로토타입은 오디오 신호 (610) 또는 LP 잔여 신호를 디코더 (604) 에서 복원하기 위해 현재 프레임 내에 유사하게 위치된 이전 프레임들로부터의 프로토타입으로 선형적으로 보간될 현재 프레임의 일부를 포함할 수도 있다 (즉, 과거 프로토타입 주기가 현재 프로토타입 주기의 예측자로서 이용됨).
전체 프레임보다는 프로토타입 주기를 코딩하는 것은 코딩 비트 레이트를 감소시킬 수도 있다. 음성형 스피치로서 분류된 프레임들은 PPP 인코딩 모드로 코딩될 수도 있다. 음성형 스피치의 주기성을 이용함으로써, PPP 인코딩 모드는 CELP 인코딩 모드보다 더 낮은 비트 레이트를 달성할 수도 있다.
선택된 인코딩 모드 (624, 626, 628) 는 패킷 포맷팅 모듈 (630) 에 커플링될 수도 있다. 선택된 인코딩 모드 (624, 626, 628) 는 현재 프레임을 인코딩 또는 양자화하고, 양자화된 프레임 파라미터들 (612) 을 패킷 포맷팅 모듈 (630) 에 제공할 수도 있다. 일 구성에 있어서, 양자화된 프레임 파라미터들은 MDCT 코딩 방식으로부터 생성되는 인코딩된 계수들이다. 패킷 포맷팅 모듈 (630) 은 양자화된 프레임 파라미터들 (612) 을 포맷팅된 패킷 (613) 으로 집합시킬 수도 있다. 패킷 포맷팅 모듈 (630) 은 포맷팅된 패킷 (613) 을 통신 채널 (606) 을 통해 수신기 (미도시) 에 제공할 수도 있다. 수신기는 포맷팅된 패킷 (613) 을 수신, 복조, 및 디지털화하고, 그 패킷 (613) 을 디코더 (604) 에 제공할 수도 있다.
디코더 (604) 에 있어서, 패킷 분해기 모듈 (632) 은 패킷 (613) 을 수신기 로부터 수신할 수도 있다. 패킷 분해기 모듈 (632) 은 인코딩된 프레임을 추출하기 위해 패킷 (613) 을 언패킹 (unpack) 할 수도 있다. 패킷 분해기 모듈 (632) 은 또한, 패킷 단위로 디코딩 모드들 (634, 636, 638) 사이를 동적으로 스위칭하도록 구성될 수도 있다. 디코딩 모드들 (634, 636, 638) 의 수는 인코딩 모드들 (624, 626, 628) 의 수와 동일할 수도 있다. 각각의 넘버링된 인코딩 모드 (624, 626, 628) 는, 동일한 코딩 비트 레이트 및 코딩 방식을 채용하도록 구성된 각각의 유사하게 넘버링된 디코딩 모드 (634, 636, 638) 와 관련될 수도 있다.
패킷 분해기 모듈 (632) 이 패킷 (613) 을 검출하면, 패킷 (613) 은 분해되고, 관련 디코딩 모드 (634, 636, 638) 에 제공된다. 관련 디코딩 모드 (634, 636, 638) 는 패킷 (613) 내의 프레임에 기초하여 MDCT, CELP, PPP 또는 NELP 디코딩 기술들을 구현할 수도 있다. 패킷 분해기 모듈 (632) 이 패킷을 검출하지 않았다면, 패킷 손실이 선언되고, 소거 (erasure) 디코더 (미도시) 가 프레임 소거 프로세싱을 수행할 수도 있다. 디코딩 모드들 (634, 636, 638) 의 병렬 어레이가 프레임 복원 모듈 (640) 에 커플링될 수도 있다. 프레임 복원 모듈 (640) 은 프레임을 복원 또는 합성하여 합성된 프레임을 출력할 수도 있다. 합성된 프레임은 다른 합성된 프레임들과 결합되어, 합성된 오디오 신호 (
Figure 112009011865105-pct00009
; 616) 를 생성할 수도 있으며, 이 합성된 오디오 신호는 입력 오디오 신호 (s(n); 610) 와 유사하다.
도 7 은 오디오 신호 인코딩 방법 (700) 의 일 예를 도시한 흐름도이다. 현재 프레임의 초기 파라미터들이 계산될 수도 있다 (702). 일 구성에 있어서, 초기 파라미터 계산 모듈 (618) 이 그 파라미터들을 계산한다 (702). 넌-스피치 프레임들에 있어서, 그 파라미터들은 프레임이 넌-스피치 프레임이다는 것을 나타내기 위한 하나 이상의 계수들을 포함할 수도 있다. 스피치 프레임들은 선형 예측 코딩 (LPC) 필터 계수, 선형 스펙트럼 쌍 (LSP) 계수, 정규화된 자기상관 함수 (NACF), 개루프 래그, 대역 에너지, 제로 크로싱 레이트, 및 포르만트 잔여 신호 중 하나 이상의 파라미터들을 포함할 수도 있다. 또한, 넌-스피치 프레임들은 선형 예측 코딩 (LPC) 필터 계수와 같은 파라미터들을 포함할 수도 있다.
현재 프레임은 스피치 프레임 또는 넌-스피치 프레임으로서 분류될 수도 있다 (704). 전술한 바와 같이, 스피치 프레임은 스피치 신호와 관련될 수도 있고, 넌-스피치 프레임은 넌-스피치 신호 (즉, 음악 신호) 와 관련될 수도 있다. 단계 702 및 단계 704 에서 실시된 프레임 분류에 기초하여, 인코더/디코더 모드가 선택될 수도 있다 (710). 도 6 에 도시된 바와 같이, 다양한 인코더/디코더 모드들이 병렬로 접속될 수도 있다. 상이한 인코더/디코더 모드들이 상이한 코딩 방식들에 따라 동작한다. 특정 모드들은 특정 특성을 나타내는 오디오 신호 (s(n); 610) 의 코딩 부분에서 더 효과적일 수도 있다.
전술한 바와 같이, MDCT 코딩 방식은 음악과 같은 넌-스피치 프레임들로서 분류된 프레임들을 코딩하기 위해 선택될 수도 있다. CELP 모드는 과도형 스피치로서 분류된 프레임들을 코딩하기 위해 선택될 수도 있다. PPP 모드는 음성형 스피치로서 분류된 프레임들을 코딩하기 위해 선택될 수도 있다. NELP 모드 는 무음형 스피치로서 분류된 프레임들을 코딩하기 위해 선택될 수도 있다. 종종, 동일한 코딩 기술이, 변하는 성능 레벨을 갖는 상이한 비트 레이트에서 동작될 수도 있다. 도 6 에 있어서의 상이한 인코더/디코더 모드들은 상이한 코딩 기술들, 또는 상이한 비트 레이트에서 동작하는 동일한 코딩 기술, 또는 이들의 조합을 나타낼 수도 있다. 선택된 인코더 모드 (710) 는 적절한 윈도우 함수를 프레임에 적용할 수도 있다. 예를 들어, 선택된 인코딩 모드가 MDCT 코딩 방식이라면, 본 시스템 및 방법의 특정 MDCT 윈도우 함수가 적용될 수도 있다. 대안적으로, 선택된 인코딩 모드가 CELP 코딩 방식이라면, CELP 코딩 방식과 관련된 윈도우 함수가 적용될 수도 있다. 선택된 인코더 모드가 현재 프레임을 인코딩하고 (712), 인코딩된 프레임을 패킷으로 포맷팅할 수도 있다 (714). 패킷은 디코더에 송신될 수도 있다 (716).
도 8 은 특정 MDCT 윈도우 함수가 각각의 프레임에 적용된 이후의 복수의 프레임들 (802, 804, 806) 의 일 구성을 도시한 블록도이다. 일 구성에 있어서, 이전 프레임 (802), 현재 프레임 (804), 및 나중 프레임 (806) 이 각각 넌-스피치 프레임들로서 분류될 수도 있다. 현재 프레임 (804) 의 길이 (820) 는 2M 에 의해 나타낼 수도 있다. 이전 프레임 (802) 및 나중 프레임 (806) 의 길이들이 또한 2M 일 수도 있다. 현재 프레임 (804) 은 제 1 제로 패드 영역 (810) 및 제 2 제로 패드 영역 (818) 을 포함할 수도 있다. 즉, 제 1 및 제 2 제로 패드 영역들 (810, 818) 에 있어서의 계수들의 값은 제로일 수도 있다.
일 구성에 있어서, 현재 프레임 (804) 은 또한 중첩 길이 (812) 및 룩-어헤 드 길이 (816) 를 포함한다. 중첩 및 룩-어헤드 길이들 (812, 816) 은 L 로서 나타낼 수도 있다. 중첩 길이 (812) 는 이전 프레임 (802) 의 룩-어헤드 길이를 중첩할 수도 있다. 일 구성에 있어서, 값 L 은 값 M 보다 더 작다. 다른 구성에 있어서, 값 L 은 값 M 과 동일하다. 현재 프레임은 또한, 단위 길이 (unity length; 814) 내의 프레임의 각각의 값이 1 인 단위 길이 (814) 를 포함할 수도 있다. 도시된 바와 같이, 나중 프레임 (806) 은 현재 프레임 (804) 의 중간 포인트 (808) 에서 시작할 수도 있다. 즉, 나중 프레임 (806) 은 현재 프레임 (804) 의 길이 M 에서 시작할 수도 있다. 유사하게, 이전 프레임 (802) 은 현재 프레임 (804) 의 중간 포인트 (808) 에서 종료할 수도 있다. 이와 같이, 현재 프레임 (804) 에 대해 이전 프레임 (802) 과 나중 프레임 (806) 의 50% 중첩이 존재한다.
양자화기/MDCT 계수 모듈이 디코더에서 MDCT 계수들을 충실히 복원한다면, 특정 MDCT 윈도우 함수는 디코더에서 오디오 신호의 완전한 복원을 용이하게 할 수도 있다. 일 구성에 있어서, 양자화기/MDCT 계수 인코딩 모듈은 디코더에서 MDCT 계수들을 충실히 복원하지 않을 수도 있다. 이 경우, 디코더의 복원 충실도는, 계수들을 충실히 복원하기 위한 양자화기/MDCT 계수 인코딩 모듈의 능력에 의존할 수도 있다. 이전 프레임과 나중 프레임 양자에 의해 50% 만큼 중첩된다면, MDCT 윈도우를 현재 프레임에 적용하는 것은 현재 프레임의 완전한 복원을 제공할 수도 있다. 부가적으로, 프린센-브래들리 조건이 만족된다면, MDCT 윈도우는 완전한 복원을 제공할 수도 있다. 전술한 바와 같이, 프린센-브래들리 조 건은
(수학식 3)
Figure 112009011865105-pct00010
로서 표현될 수도 있으며, 여기서, w(n) 은 도 8 에 도시된 MDCT 윈도우를 나타낼 수도 있다. 수학식 3 에 의해 표현된 조건은 다른 프레임 (802, 804, 806) 상의 대응하는 포인트에 가산된 프레임 (802, 804, 806) 상의 포인트가 1 의 값을 제공할 것임을 내포할 수도 있다. 예를 들어, 중간 길이 (808) 에 있어서의 현재 프레임 (804) 의 대응하는 포인트에 가산된 중간 길이 (808) 에 있어서의 이전 프레임 (802) 의 포인트가 1 의 값을 산출한다.
도 9 는 도 8 에서 설명된 현재 프레임 (804) 과 같은, 넌-스피치 신호와 관련된 프레임에 MDCT 윈도우 함수를 적용하는 방법 (900) 의 일 구성을 도시한 흐름도이다. MDCT 윈도우 함수를 적용하는 프로세스는 MDCT 를 계산함에 있어서의 일 단계일 수도 있다. 즉, 2개의 연속 윈도우들 간의 50% 중첩의 조건 및 전술한 프린센-브래들리 조건을 만족하는 윈도우를 사용하지 않는다면, 완전한 복원 MDCT 가 적용되지 않을 수도 있다. 방법 (900) 에 있어서 설명되는 윈도우 함수는 MDCT 함수를 프레임에 적용하는 것의 일부로서 구현될 수도 있다. 일 예에 있어서, L개의 룩-어헤드 샘플들은 물론, 현재 프레임 (804) 으로부터의 M개의 샘플들이 이용가능할 수도 있다. L 은 임의의 값일 수도 있다.
현재 프레임 (804) 의 (M-L)/2개 샘플들의 제 1 제로 패드 영역이 생성될 수도 있다 (902). 전술된 바와 같이, 제로 패드는, 제 1 제로 패드 영역 (810) 내의 샘플들의 계수들이 제로일 수도 있음을 내포할 수도 있다. 일 구성에 있어서, 현재 프레임 (804) 의 L개 샘플들의 중첩 길이가 제공될 수도 있다 (904). 현재 프레임의 L개 샘플들의 중첩 길이가 이전 프레임 (802) 의 복원된 룩-어헤드 길이와 중첩 및 가산될 수도 있다 (906). 현재 프레임 (804) 의 중첩 길이 및 제 1 제로 패드 영역은 이전 프레임 (802) 을 50% 만큼 중첩할 수도 있다. 일 구성에 있어서, 현재 프레임의 (M-L)개 샘플들이 제공될 수도 있다 (908). 또한, 현재 프레임에 대한 룩-어헤드의 L개 샘플들이 제공될 수도 있다 (910). 룩-어헤드의 L개 샘플들이 나중 프레임 (806) 을 중첩할 수도 있다. 현재 프레임의 (M-L)/2개 샘플들의 제 2 제로 패드 영역이 생성될 수도 있다. 일 구성에 있어서, 현재 프레임 (804) 의 제 2 제로 패드 영역 및 룩-어헤드의 L개 샘플들은 나중 프레임 (806) 을 50% 만큼 중첩할 수도 있다. 방법 (900) 을 적용한 프레임은 전술한 바와 같은 프린센-브래들리 조건을 만족할 수도 있다.
도 10 은 MDCT 윈도우 함수에 의해 변형된 프레임을 복원하는 방법 (1000) 의 일 구성을 도시한 흐름도이다. 일 구성에 있어서, 방법 (1000) 은 프레임 복원 모듈 (314) 에 의해 구현된다. 제 1 제로 패드 영역 (812) 의 종단부에서 시작하여 (M-L) 영역 (814) 의 종단부까지, 현재 프레임 (804) 의 샘플들이 합성될 수도 있다 (1002). 현재 프레임 (804) 의 L개 샘플들의 중첩 영역이 이전 프레임 (802) 의 룩-어헤드 길이와 가산될 수도 있다 (1004). 일 구성에 있어서, 현재 프레임 (804) 의 L개 샘플들의 룩-어헤드 (816) 가 (M-L) 영역 (814) 의 종단부에서 시작하여 제 2 제로 패드 영역 (818) 의 시작부에 저장될 수도 있다 (1006). 일 예에 있어서, L개 샘플들의 룩-어헤드 (816) 가 디코더 (304) 의 메모리 컴포넌트에 저장될 수도 있다. 일 구성에 있어서, M개 샘플들이 출력된다 (1008). 출력된 M개 샘플들은 부가적인 샘플들과 결합되어 현재 프레임 (804) 을 복원할 수도 있다.
도 11 은 본 명세서에서 설명된 시스템 및 방법에 따라 통신/컴퓨팅 디바이스 (1108) 에서 이용될 수도 있는 다양한 컴포넌트들을 도시한 것이다. 통신/컴퓨팅 디바이스 (1108) 는 그 디바이스 (1108) 의 동작을 제어하는 프로세서 (1102) 를 포함할 수도 있다. 프로세서 (1102) 는 또한 CPU 로서 지칭될 수도 있다. 판독 전용 메모리 (ROM) 및 랜덤 액세스 메모리 (RAM) 양자를 포함할 수도 있는 메모리 (1104) 는 명령들 및 데이터를 프로세서 (1102) 에 제공한다. 메모리 (1104) 의 일부는 또한 비휘발성 랜덤 액세스 메모리 (NVRAM) 를 포함할 수도 있다.
디바이스 (1108) 는 또한, 액세스 단말기 (1108) 와 원격 위치 사이에서 데이터의 송신 및 수신을 허용하기 위한 송신기 (1110) 및 수신기 (1112) 를 포함하는 하우징 (1122) 을 포함할 수도 있다. 송신기 (1110) 및 수신기 (1112) 는 트랜시버 (1120) 로 결합될 수도 있다. 안테나 (1118) 는 하우징 (1122) 에 부착되고 트랜시버 (1120) 에 전기적으로 커플링된다. 송신기 (1110), 수신기 (1112), 트랜시버 (1120), 및 안테나 (1118) 는 통신 디바이스 (1108) 구성에서 이용될 수도 있다.
디바이스 (1108) 는 또한, 트랜시버 (1120) 에 의해 수신된 신호들의 레벨을 검출 및 정량화하는데 이용되는 신호 검출기 (1106) 를 포함한다. 신호 검출기 (1106) 는 그 신호들을 총 에너지, 의사잡음 (PN) 칩 당 파일럿 에너지, 전력 스펙트럼 밀도, 및 다른 신호들로서 검출한다.
통신 디바이스 (1108) 의 상태 변경기 (1114) 는, 트랜시버 (1120) 에 의해 수신되고 신호 검출기 (1106) 에 의해 검출된 부가적인 신호들 및 현재 상태에 기초하여 통신/컴퓨팅 디바이스 (1108) 의 상태를 제어한다. 디바이스 (1108) 는 다수의 상태들 중 임의의 상태에서 동작할 수도 있다.
통신/컴퓨팅 디바이스 (1108) 는 또한, 디바이스 (1108) 를 제어하고 현재 서비스 제공자 시스템이 부적절하다고 판정할 경우에 디바이스 (1108) 가 어떠한 서비스 제공자 시스템으로 전송해야 하는지를 판정하는데 이용되는 시스템 판정기 (1124) 를 포함한다.
통신/컴퓨팅 디바이스 (1108) 의 다양한 컴포넌트들은, 데이터 버스에 부가하여 전력 버스, 제어 신호 버스, 및 상태 신호 버스를 포함할 수도 있는 버스 시스템 (1126) 에 의해 함께 커플링된다. 하지만, 명료화를 위해, 다양한 버스들은 버스 시스템 (1126) 으로서 도 11 에 도시되어 있다. 통신/컴퓨팅 디바이스 (1108) 는 또한, 신호들을 프로세싱하는데 사용하기 위한 디지털 신호 프로세서 (DSP; 1116) 를 포함할 수도 있다.
정보 및 신호들은 임의의 다양한 서로 다른 기술 및 기법들을 이용하여 표현될 수도 있다. 예를 들어, 상기의 설명 전반에 걸쳐 참조될 수도 있는 데이터, 명령, 커맨드 (commands), 정보, 신호, 비트, 심볼, 및 칩은 전압, 전류, 전자기 파, 자계 또는 자성 입자, 광계 또는 광자, 또는 이들의 임의의 조합에 의해 표현될 수도 있다.
본 명세서에서 개시된 구성들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 회로들, 및 알고리즘 단계들은 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이들의 조합으로서 구현될 수도 있다. 하드웨어와 소프트웨어의 이러한 대체 가능성을 분명히 설명하기 위하여, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들이 주로 그들의 기능의 관점에서 상술되었다. 그러한 기능이 하드웨어로서 구현될지 소프트웨어로서 구현될지는 전체 시스템에 부과된 특정 애플리케이션 및 설계 제약들에 의존한다. 당업자는 설명된 기능을 각각의 특정 애플리케이션에 대하여 다양한 방식으로 구현할 수도 있지만, 그러한 구현의 결정이 본 시스템 및 방법의 범위를 벗어나게 하는 것으로 해석하지는 않아야 한다.
본 명세서에서 개시된 구성들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 및 회로들은 범용 프로세서, 디지털 신호 프로세서 (DSP), 주문형 집적회로 (ASIC), 필드 프로그래머블 게이트 어레이 신호 (FPGA) 또는 다른 프로그래머블 로직 디바이스, 별개의 게이트 또는 트랜지스터 로직, 별개의 하드웨어 컴포넌트들, 또는 본 명세서에서 설명된 기능들을 수행하도록 설계된 이들의 임의의 조합으로 구현 또는 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안적으로, 그 프로세서는 임의의 프로세서, 제어기, 마이크로 제어기, 또는 상태 기계일 수도 있다. 또한, 프로세서는 컴퓨팅 디바이스들의 조 합, 예를 들어, DSP 와 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 결합된 하나 이상의 마이크로프로세서들, 또는 임의의 기타 다른 구성으로서 구현될 수도 있다.
본 명세서에 개시된 구성들과 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로, 프로세서에 의해 실행되는 소프트웨어 모듈로, 또는 그 2 개의 조합으로 직접 구현될 수도 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, 소거가능 프로그래머블 판독 전용 메모리 (EPROM), 전기적 소거가능 프로그래머블 판독 전용 메모리 (EEPROM), 레지스터, 하드 디스크, 착탈형 디스크, 컴팩트 디스크 판독 전용 메모리 (CD-ROM), 또는 당업계에 알려진 임의의 다른 형태의 저장 매체에 상주할 수도 있다. 저장 매체는 프로세서에 커플링되어, 그 프로세서는 저장 매체로부터 정보를 판독할 수 있고 저장 매체에 정보를 기입할 수 있다. 대안적으로, 저장 매체는 프로세서와 일체형일 수도 있다. 프로세서 및 저장 매체는 ASIC 내에 상주할 수도 있다. ASIC 은 사용자 단말기 내에 상주할 수도 있다. 대안적으로, 프로세서 및 저장 매체는 사용자 단말기 내에 별개의 컴포넌트들로서 상주할 수도 있다.
본 명세서에 개시된 방법들은 설명된 방법을 달성하기 위한 하나 이상의 단계들 또는 액션들을 포함한다. 그 방법 단계들 및/또는 액션들은 본 시스템 및 방법의 범위를 벗어나지 않고 서로 대체될 수도 있다. 즉, 단계들 또는 액션들의 특정 순서가 그 구성의 적절한 동작을 위해 특정되지 않는다면, 특정 단계들 및/또는 액션들의 순서 및/또는 이용은 본 시스템 및 방법의 범위를 벗어나지 않고 변형될 수도 있다. 본 명세서에서 개시된 방법들은 하드웨어, 소프트웨어, 또는 이들 양자로 구현될 수도 있다. 하드웨어 및 메모리의 예는 RAM, ROM, EPROM, EEPROM, 플래시 메모리, 광학 디스크, 레지스터, 하드 디스크, 착탈형 디스크, CD-ROM, 또는 임의의 다른 타입의 하드웨어 및 메모리를 포함할 수도 있다.
본 시스템 및 방법의 특정 구성 및 애플리케이션이 예시 및 설명되었지만, 그 시스템 및 방법은 본 명세서에 개시된 정확한 구성 및 컴포넌트들에 한정되지 않음을 이해해야 한다. 청구된 시스템 및 방법의 사상 및 범위를 벗어나지 않고, 당업자에게 명백할 다양한 변형, 변경 및 변화가 본 명세서에 개시된 방법 및 시스템의 배열, 동작, 및 상세에서 행해질 수도 있다.

Claims (26)

  1. 오디오 신호와 관련된 프레임으로 윈도우를 변형하는 방법으로서,
    일 신호를 복수의 프레임들로 파티션하는 단계; 및
    상기 복수의 프레임들이 넌-스피치 신호와 관련되어 있을 시, 변형된 이산 코사인 변환 (MDCT) 윈도우 함수를 상기 복수의 프레임들 각각에 적용하여 복수의 윈도잉된 프레임들을 생성하는 단계를 포함하고,
    각각의 윈도잉된 프레임은 상기 윈도잉된 프레임의 제 1 부분에 위치한 제 1 제로 패드 영역을 포함하고, 상기 제 1 제로 패드 영역은 (M-L)/2의 길이를 갖고, L은 M 이하의 임의의 값이고 2M은 각각의 윈도잉된 프레임에서의 샘플들의 개수인, 윈도우 변형 방법.
  2. 제 1 항에 있어서,
    상기 복수의 윈도잉된 프레임들의 각각의 윈도잉된 프레임의 각각의 샘플에 MDCT 코딩 기반 방식을 적용하여 상기 복수의 윈도잉된 프레임들 각각을 인코딩하는 단계를 더 포함하고,
    상기 윈도잉된 프레임들은 연속적으로 인접한, 윈도우 변형 방법.
  3. 제 1 항에 있어서,
    각각의 윈도잉된 프레임은 2M 의 길이를 포함하는, 윈도우 변형 방법.
  4. 삭제
  5. 제 1 항에 있어서,
    각각의 윈도잉된 프레임은 제 2 제로 패드 영역을 포함하고, 각각의 윈도잉된 프레임의 상기 제 2 제로 패드 영역은 상기 윈도잉된 프레임의 제 2 부분에 위치되는, 윈도우 변형 방법.
  6. 제 5 항에 있어서,
    각각의 윈도잉된 프레임의 상기 제 2 제로 패드 영역은 (M-L)/2 의 제 2 제로 패드 길이를 갖는, 윈도우 변형 방법.
  7. 제 6 항에 있어서,
    각각의 윈도잉된 프레임 내에 길이 L 의 현재 중첩 영역을 포함하는 단계를 더 포함하고,
    특정 윈도잉된 프레임의 상기 현재 중첩 영역은 이전 윈도잉된 프레임과 관련된 룩-어헤드 (look-ahead) 샘플들을 중첩하는, 윈도우 변형 방법.
  8. 제 7 항에 있어서,
    상기 특정 윈도잉된 프레임의 상기 현재 중첩 영역과 연관된 샘플을 상기 이전 윈도잉된 프레임과 관련된 대응하는 룩-어헤드 샘플에 가산하는 단계를 더 포함하는, 윈도우 변형 방법.
  9. 제 5 항에 있어서,
    상기 L 은 M 보다 작은 룩-어헤드 영역인, 윈도우 변형 방법.
  10. 제 9 항에 있어서,
    상기 룩-어헤드 영역은 나중 윈도잉된 프레임과 관련된 나중 중첩 영역을 중첩하는, 윈도우 변형 방법.
  11. 제 7 항에 있어서,
    상기 제 1 제로 패드 영역 및 현재 중첩 영역은 이전 프레임을 대략 50% 만큼 중첩하는, 윈도우 변형 방법.
  12. 제 9 항에 있어서,
    상기 제 2 제로 패드 영역 및 룩-어헤드 영역은 나중 윈도잉된 프레임을 대략 50% 만큼 중첩하는, 윈도우 변형 방법.
  13. 제 1 항에 있어서,
    중첩된 윈도잉된 프레임으로부터의 관련 샘플과 가산된 제 1 윈도잉된 프레임의 각각의 샘플의 제곱들의 합이 1 과 동일한, 윈도우 변형 방법.
  14. 오디오 신호와 관련된 프레임으로 윈도우를 변형하는 장치로서,
    프로세서;
    상기 프로세서와 전자 통신하는 메모리; 및
    상기 메모리에 저장된 명령들을 포함하며,
    상기 명령들은,
    일 신호를 복수의 프레임들로 파티션하고, 그리고
    상기 복수의 프레임들이 넌-스피치 신호와 관련되어 있을 시, 변형된 이산 코사인 변환 (MDCT) 윈도우 함수를 상기 복수의 프레임들 각각에 적용하여 복수의 윈도잉된 프레임들을 생성하도록 실행가능하고,
    각각의 윈도잉된 프레임은 상기 윈도잉된 프레임의 제 1 부분에 위치한 제 1 제로 패드 영역을 포함하고, 상기 제 1 제로 패드 영역은 (M-L)/2의 길이를 갖고, L은 M 이하의 임의의 값이고 2M은 각각의 윈도잉된 프레임에서의 샘플들의 개수인, 윈도우 변형 장치.
  15. 제 14 항에 있어서,
    상기 명령들은 또한 MDCT 코딩 기반 방식을 사용하여 상기 복수의 윈도잉된 프레임들 각각을 인코딩하도록 실행되고,
    상기 윈도잉된 프레임들은 연속적으로 인접한, 윈도우 변형 장치.
  16. 제 14 항에 있어서,
    각각의 윈도잉된 프레임은 2M 과 동일한 샘플 길이를 포함하는, 윈도우 변형 장치.
  17. 삭제
  18. 제 14 항에 있어서,
    각각의 윈도잉된 프레임은 제 2 제로 패드 영역을 포함하고, 상기 제 2 제로 패드 영역은 상기 윈도잉된 프레임의 제 2 부분에 위치되는, 윈도우 변형 장치.
  19. 오디오 신호와 관련된 프레임으로 윈도우를 변형하도록 구성된 시스템으로서,
    프로세싱하는 수단;
    일 신호를 복수의 프레임들로 파티션하는 수단;
    상기 복수의 프레임들이 넌-스피치 신호와 관련되어 있을 시, 변형된 이산 코사인 변환 (MDCT) 윈도우 함수를 상기 복수의 프레임들의 각각의 프레임에 적용하여 연속적으로 인접한 복수의 윈도잉된 프레임들을 생성하는 수단으로서,
    각각의 윈도잉된 프레임은 상기 윈도잉된 프레임의 제 1 부분에 위치한 제 1 제로 패드 영역을 포함하고, 상기 제 1 제로 패드 영역은 (M-L)/2의 길이를 갖고, L은 M 이하의 임의의 값이고 2M은 각각의 윈도잉된 프레임에서의 샘플들의 개수인, 상기 복수의 윈도잉된 프레임을 생성하는 수단; 및
    MDCT 코딩 기반 방식을 사용하여 상기 복수의 윈도잉된 프레임들 각각을 인코딩하는 수단을 포함하는, 윈도우를 변형하도록 구성된 시스템.
  20. 일 신호를 복수의 프레임들로 파티션하고,
    상기 복수의 프레임들이 넌-스피치 신호와 관련되어 있을 시, 변형된 이산 코사인 변환 (MDCT) 윈도우 함수를 상기 복수의 프레임들의 각각의 프레임에 적용하여 연속적으로 인접한 복수의 윈도잉된 프레임들을 생성하고, 그리고,
    MDCT 코딩 기반 방식을 사용하여 상기 복수의 윈도잉된 프레임들 각각을 인코딩하도록 실행가능한, 명령들의 세트를 저장하도록 구성되고,
    각각의 윈도잉된 프레임은 상기 윈도잉된 프레임의 제 1 부분에 위치한 제 1 제로 패드 영역을 포함하고, 상기 제 1 제로 패드 영역은 (M-L)/2의 길이를 갖고, L은 M 이하의 임의의 값이고 2M은 각각의 윈도잉된 프레임에서의 샘플들의 개수이인, 컴퓨터-판독가능 매체.
  21. 일 프레임의 변형된 이산 코사인 변환 (MDCT) 을 계산하는데 이용될 윈도우 함수를 선택하는 방법으로서,
    윈도우 함수를 선택하는 알고리즘을 제공하는 단계;
    상기 선택된 윈도우 함수를 복수의 넌-스피치 프레임들 각각에 적용하여 복수의 윈도잉된 프레임들을 생성하는 단계로서, 상기 윈도잉된 프레임들은 연속적으로 인접하고, 각각의 윈도잉된 프레임은 상기 윈도잉된 프레임의 제 1 부분에 위치한 제 1 제로 패드 영역을 포함하고, 상기 제 1 제로 패드 영역은 (M-L)/2의 길이를 갖고, L은 M 이하의 임의의 값이고 2M은 각각의 윈도잉된 프레임에서의 샘플들의 개수인, 상기 복수의 윈도잉된 프레임들을 생성하는 단계; 및
    MDCT 코딩 모드에 부과된 제약들에 기초하여 변형된 이산 코사인 변환 (MDCT) 코딩 모드로 상기 복수의 윈도잉된 프레임들 각각을 인코딩하는 단계를 포함하며,
    상기 제약들은 상기 프레임의 길이, 룩-어헤드 길이 및 지연을 포함하는, 윈도우 함수의 선택 방법.
  22. 삭제
  23. 오디오 신호의 일 부분이 스피치로 분류되는 경우:
    상기 오디오 신호의 상기 부분의 일 프레임이 음성형 스피치로 분류되는 경우 상기 프레임을 제 1 인코딩 방식에 따라 인코딩하는 단계; 및
    상기 오디오 신호의 상기 부분의 상기 프레임이 무음형 (unvoiced) 스피치로 분류될 시 상기 프레임을 제 2 인코딩 방식에 따라 인코딩하는 단계로서, 상기 제 2 인코딩 방식은 상기 제 1 인코딩 방식과 상이한, 상기 제 2 인코딩 방식에 따라 인코딩하는 단계;
    상기 오디오 신호의 상기 부분이 넌-스피치로 분류되고, 상기 오디오 신호의 상기 부분이 연속적으로 인접한 프레임들인 현재 프레임, 이전 프레임 및 나중 프레임을 포함하는 경우:
    변형된 이산 코사인 변환 (MDCT) 윈도우 함수를 상기 현재 프레임, 상기 이전 프레임 및 상기 나중 프레임 각각에 적용하여 윈도잉된 현재 프레임, 윈도잉된 이전 프레임 및 윈도잉된 나중 프레임을 포함하는 복수의 윈도잉된 프레임들을 생성하는 단계로서, 각각의 윈도잉된 프레임은 상기 윈도잉된 프레임의 제 1 부분에 위치한 제 1 제로 패드 영역을 포함하고, 상기 제 1 제로 패드 영역은 (M-L)/2의 길이를 갖고, L은 M 이하의 임의의 값이고 2M은 각각의 윈도잉된 프레임에서의 샘플들의 개수인, 상기 복수의 윈도잉된 프레임들을 생성하는 단계를 포함하는, 방법.
  24. 제 23 항에 있어서,
    상기 윈도잉된 현재 프레임은 상기 윈도잉된 이전 프레임과 50% 중첩하고 상기 윈도잉된 나중 프레임과 50% 중첩하며,
    변형된 이산 코사인 변환 코딩 방식에 따라 상기 현재 윈도잉된 프레임을 인코딩하는 단계를 더 포함하는, 방법.
  25. 제 23 항에 있어서,
    상기 오디오 신호의 상기 부분이 과도형 (transient) 스피치로 분류되는 경우, 상기 오디오 신호의 상기 부분의 상기 프레임을 제 3 인코딩 방식에 따라 인코딩하는 단계를 더 포함하고,
    상기 제 3 인코딩 방식은 상기 제 1 인코딩 방식 및 상기 제 2 인코딩 방식과 상이한, 방법.
  26. 제 1 항에 있어서,
    상기 복수의 윈도잉된 프레임들 각각에 대해, 상기 윈도잉된 프레임의 샘플들에 더하여 L 샘플들을 수신한 후에 그리고 상기 윈도잉된 프레임의 샘플들에 더하여 M 샘플들을 수신하기 전에 MDCT 코딩 기반 방식을 적용함으로써 상기 윈도잉된 프레임을 인코딩하는 단계를 더 포함하는, 윈도우 변형 방법.
KR1020097003972A 2006-07-31 2007-07-31 오디오 신호와 관련된 프레임으로 윈도우를 변형하는 시스템 및 방법 KR101070207B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US83467406P 2006-07-31 2006-07-31
US60/834,674 2006-07-31
US11/674,745 2007-02-14
US11/674,745 US7987089B2 (en) 2006-07-31 2007-02-14 Systems and methods for modifying a zero pad region of a windowed frame of an audio signal

Publications (2)

Publication Number Publication Date
KR20090035717A KR20090035717A (ko) 2009-04-10
KR101070207B1 true KR101070207B1 (ko) 2011-10-06

Family

ID=38792218

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097003972A KR101070207B1 (ko) 2006-07-31 2007-07-31 오디오 신호와 관련된 프레임으로 윈도우를 변형하는 시스템 및 방법

Country Status (10)

Country Link
US (1) US7987089B2 (ko)
EP (1) EP2047463A2 (ko)
JP (1) JP4991854B2 (ko)
KR (1) KR101070207B1 (ko)
CN (1) CN101496098B (ko)
BR (1) BRPI0715206A2 (ko)
CA (1) CA2658560C (ko)
RU (1) RU2418323C2 (ko)
TW (1) TWI364951B (ko)
WO (1) WO2008016945A2 (ko)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2911228A1 (fr) * 2007-01-05 2008-07-11 France Telecom Codage par transformee, utilisant des fenetres de ponderation et a faible retard.
ATE548728T1 (de) * 2007-03-02 2012-03-15 Ericsson Telefon Ab L M Nichtkausales nachfilter
US8214200B2 (en) * 2007-03-14 2012-07-03 Xfrm, Inc. Fast MDCT (modified discrete cosine transform) approximation of a windowed sinusoid
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
KR100922897B1 (ko) * 2007-12-11 2009-10-20 한국전자통신연구원 Mdct 영역에서 음질 향상을 위한 후처리 필터장치 및필터방법
KR101441896B1 (ko) * 2008-01-29 2014-09-23 삼성전자주식회사 적응적 lpc 계수 보간을 이용한 오디오 신호의 부호화,복호화 방법 및 장치
PL2301020T3 (pl) 2008-07-11 2013-06-28 Fraunhofer Ges Forschung Urządzenie i sposób do kodowania/dekodowania sygnału audio z użyciem algorytmu przełączania aliasingu
MX2011000375A (es) * 2008-07-11 2011-05-19 Fraunhofer Ges Forschung Codificador y decodificador de audio para codificar y decodificar tramas de una señal de audio muestreada.
KR20100007738A (ko) * 2008-07-14 2010-01-22 한국전자통신연구원 음성/오디오 통합 신호의 부호화/복호화 장치
US9384748B2 (en) 2008-11-26 2016-07-05 Electronics And Telecommunications Research Institute Unified Speech/Audio Codec (USAC) processing windows sequence based mode switching
KR101397512B1 (ko) * 2009-03-11 2014-05-22 후아웨이 테크놀러지 컴퍼니 리미티드 선형 예측 코딩 분석을 위한 방법, 장치 및 시스템
CN102930871B (zh) * 2009-03-11 2014-07-16 华为技术有限公司 一种线性预测分析方法、装置及系统
KR101297026B1 (ko) * 2009-05-19 2013-08-14 광운대학교 산학협력단 Mdct―tcx 프레임과 celp 프레임 간 연동을 위한 윈도우 처리 장치 및 윈도우 처리 방법
PL2473995T3 (pl) * 2009-10-20 2015-06-30 Fraunhofer Ges Forschung Koder sygnału audio, dekoder sygnału audio, sposób dostarczania zakodowanej reprezentacji treści audio, sposób dostarczania dekodowanej reprezentacji treści audio oraz program komputerowy do wykorzystania w zastosowaniach z małym opóźnieniem
EP2372703A1 (en) * 2010-03-11 2011-10-05 Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. Signal processor, window provider, encoded media signal, method for processing a signal and method for providing a window
US8924222B2 (en) 2010-07-30 2014-12-30 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for coding of harmonic signals
US9208792B2 (en) 2010-08-17 2015-12-08 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for noise injection
CN103229235B (zh) * 2010-11-24 2015-12-09 Lg电子株式会社 语音信号编码方法和语音信号解码方法
US20130311174A1 (en) * 2010-12-20 2013-11-21 Nikon Corporation Audio control device and imaging device
US9942593B2 (en) * 2011-02-10 2018-04-10 Intel Corporation Producing decoded audio at graphics engine of host processing platform
SG185519A1 (en) 2011-02-14 2012-12-28 Fraunhofer Ges Forschung Information signal representation using lapped transform
MY159444A (en) 2011-02-14 2017-01-13 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E V Encoding and decoding of pulse positions of tracks of an audio signal
EP2676264B1 (en) 2011-02-14 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder estimating background noise during active phases
JP5625126B2 (ja) 2011-02-14 2014-11-12 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン スペクトル領域ノイズ整形を使用する線形予測ベースコーディングスキーム
BR112013020482B1 (pt) 2011-02-14 2021-02-23 Fraunhofer Ges Forschung aparelho e método para processar um sinal de áudio decodificado em um domínio espectral
SG192734A1 (en) 2011-02-14 2013-09-30 Fraunhofer Ges Forschung Apparatus and method for error concealment in low-delay unified speech and audio coding (usac)
MY160265A (en) * 2011-02-14 2017-02-28 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E V Apparatus and Method for Encoding and Decoding an Audio Signal Using an Aligned Look-Ahead Portion
ES2623291T3 (es) 2011-02-14 2017-07-10 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codificación de una porción de una señal de audio utilizando una detección de transitorios y un resultado de calidad
JP5800915B2 (ja) 2011-02-14 2015-10-28 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ オーディオ信号のトラックのパルス位置の符号化および復号化
FR2977439A1 (fr) * 2011-06-28 2013-01-04 France Telecom Fenetres de ponderation en codage/decodage par transformee avec recouvrement, optimisees en retard.
US9037456B2 (en) 2011-07-26 2015-05-19 Google Technology Holdings LLC Method and apparatus for audio coding and decoding
CN103325373A (zh) 2012-03-23 2013-09-25 杜比实验室特许公司 用于传送和接收音频信号的方法和设备
KR20140075466A (ko) * 2012-12-11 2014-06-19 삼성전자주식회사 오디오 신호의 인코딩 및 디코딩 방법, 및 오디오 신호의 인코딩 및 디코딩 장치
WO2014128194A1 (en) 2013-02-20 2014-08-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for generating an encoded signal or for decoding an encoded audio signal using a multi overlap portion
DK2981958T3 (en) 2013-04-05 2018-05-28 Dolby Int Ab AUDIO CODES AND DECODS
SG11201510353RA (en) 2013-06-21 2016-01-28 Fraunhofer Ges Forschung Apparatus and method realizing a fading of an mdct spectrum to white noise prior to fdns application
EP2980797A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio decoder, method and computer program using a zero-input-response to obtain a smooth transition
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
TWI555510B (zh) * 2015-12-03 2016-11-01 財團法人工業技術研究院 非侵入式血醣量測裝置及使用其之量測方法
CN112735449B (zh) * 2020-12-30 2023-04-14 北京百瑞互联技术有限公司 优化频域噪声整形的音频编码方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030009325A1 (en) * 1998-01-22 2003-01-09 Raif Kirchherr Method for signal controlled switching between different audio coding schemes
US20070150271A1 (en) * 2003-12-10 2007-06-28 France Telecom Optimized multiple coding method

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5384891A (en) * 1988-09-28 1995-01-24 Hitachi, Ltd. Vector quantizing apparatus and speech analysis-synthesis system using the apparatus
US5357594A (en) * 1989-01-27 1994-10-18 Dolby Laboratories Licensing Corporation Encoding and decoding using specially designed pairs of analysis and synthesis windows
CN1062963C (zh) * 1990-04-12 2001-03-07 多尔拜实验特许公司 用于产生高质量声音信号的解码器和编码器
FR2675969B1 (fr) * 1991-04-24 1994-02-11 France Telecom Procede et dispositif de codage-decodage d'un signal numerique.
US5455888A (en) * 1992-12-04 1995-10-03 Northern Telecom Limited Speech bandwidth extension method and apparatus
JP3531177B2 (ja) 1993-03-11 2004-05-24 ソニー株式会社 圧縮データ記録装置及び方法、圧縮データ再生方法
EP0732687B2 (en) * 1995-03-13 2005-10-12 Matsushita Electric Industrial Co., Ltd. Apparatus for expanding speech bandwidth
US5704003A (en) * 1995-09-19 1997-12-30 Lucent Technologies Inc. RCELP coder
US6134518A (en) * 1997-03-04 2000-10-17 International Business Machines Corporation Digital audio signal coding using a CELP coder and a transform coder
DE60024963T2 (de) 1999-05-14 2006-09-28 Matsushita Electric Industrial Co., Ltd., Kadoma Verfahren und vorrichtung zur banderweiterung eines audiosignals
JP4792613B2 (ja) 1999-09-29 2011-10-12 ソニー株式会社 情報処理装置および方法、並びに記録媒体
EP1199711A1 (en) * 2000-10-20 2002-04-24 Telefonaktiebolaget Lm Ericsson Encoding of audio signal using bandwidth expansion
US7461002B2 (en) * 2001-04-13 2008-12-02 Dolby Laboratories Licensing Corporation Method for time aligning audio signals using characterizations based on auditory events
US7136418B2 (en) * 2001-05-03 2006-11-14 University Of Washington Scalable and perceptually ranked signal coding and decoding
US6658383B2 (en) 2001-06-26 2003-12-02 Microsoft Corporation Method for coding speech and music signals
US6879955B2 (en) * 2001-06-29 2005-04-12 Microsoft Corporation Signal modification based on continuous time warping for low bit rate CELP coding
EP1341160A1 (en) * 2002-03-01 2003-09-03 Deutsche Thomson-Brandt Gmbh Method and apparatus for encoding and for decoding a digital information signal
US7116745B2 (en) * 2002-04-17 2006-10-03 Intellon Corporation Block oriented digital communication system and method
US20040098255A1 (en) * 2002-11-14 2004-05-20 France Telecom Generalized analysis-by-synthesis speech coding method, and coder implementing such method
GB0321093D0 (en) 2003-09-09 2003-10-08 Nokia Corp Multi-rate coding
US7516064B2 (en) * 2004-02-19 2009-04-07 Dolby Laboratories Licensing Corporation Adaptive hybrid transform for signal analysis and synthesis
KR20070068424A (ko) 2004-10-26 2007-06-29 마츠시타 덴끼 산교 가부시키가이샤 음성 부호화 장치 및 음성 부호화 방법
CA2603255C (en) * 2005-04-01 2015-06-23 Qualcomm Incorporated Systems, methods, and apparatus for wideband speech coding

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030009325A1 (en) * 1998-01-22 2003-01-09 Raif Kirchherr Method for signal controlled switching between different audio coding schemes
US20070150271A1 (en) * 2003-12-10 2007-06-28 France Telecom Optimized multiple coding method

Also Published As

Publication number Publication date
BRPI0715206A2 (pt) 2013-06-11
JP4991854B2 (ja) 2012-08-01
KR20090035717A (ko) 2009-04-10
CA2658560A1 (en) 2008-02-07
JP2009545780A (ja) 2009-12-24
CA2658560C (en) 2014-07-22
RU2418323C2 (ru) 2011-05-10
RU2009107161A (ru) 2010-09-10
US20080027719A1 (en) 2008-01-31
TW200816718A (en) 2008-04-01
US7987089B2 (en) 2011-07-26
WO2008016945A9 (en) 2008-05-29
WO2008016945A2 (en) 2008-02-07
TWI364951B (en) 2012-05-21
EP2047463A2 (en) 2009-04-15
WO2008016945A3 (en) 2008-04-10
CN101496098B (zh) 2012-07-25
CN101496098A (zh) 2009-07-29

Similar Documents

Publication Publication Date Title
KR101070207B1 (ko) 오디오 신호와 관련된 프레임으로 윈도우를 변형하는 시스템 및 방법
RU2470384C1 (ru) Кодирование сигнала с использованием кодирования с регуляризацией основных тонов и без регуляризации основных тонов
JP5373217B2 (ja) 可変レートスピーチ符号化
US7426466B2 (en) Method and apparatus for quantizing pitch, amplitude, phase and linear spectrum of voiced speech
KR100805983B1 (ko) 가변율 음성 코더에서 프레임 소거를 보상하는 방법
JP4824167B2 (ja) 周期的スピーチコーディング
RU2421828C2 (ru) Системы и способы для включения идентификатора в пакет, ассоциативно связанный с речевым сигналом
ES2297578T3 (es) Procedimiento y aparato para submuestrear informacion del espectro de fase.
KR101164834B1 (ko) 제 1 비트 레이트와 연관된 제 1 패킷을 제 2 비트 레이트와 연관된 제 2 패킷으로 디밍하는 시스템 및 방법

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: 20140828

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160629

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 8