가중 윈도우들을 코딩/디코딩하는 지연최적화 오버랩 변환

申请号 KR1020147002098 申请日 2012-06-26 公开(公告)号 KR1020140085415A 公开(公告)日 2014-07-07
申请人 오렌지; 发明人 포흐쥴리앙; 필립피에릭;
摘要 본 발명은 샘플들의 연속 블록으로 구성되고, 오버랩 타입으로 코딩이 변환되며, 분석시 M 샘플들의 2개의 연속 블록들에 걸쳐 가중 윈도우의 적용을 포함하는 디지털 신호 코딩/디코딩 방법에 관한 것이다. 특히, 이 가중 윈도우는 비대칭이고, 샘플들의 제 1 간격에 걸쳐 증가하는 제 1 부분(w
1 ); 제 2 간격에 걸쳐 일정한 1의 값의 제 2 부분(w
2 ); 제 3 간격에 걸쳐 감소하는 제 3 부분(w
3 ); 및 제 4 간격에 걸쳐 일정한 0의 값의 제 4 부분(w
4 )을 갖는, 상술한 2개 블록들에 걸쳐 연속으로 확장되는 4개의 식별부분들을 포함한다.
权利要求
  • 샘플들의 연속 블록으로 디지털 신호가 구성되고, 오버랩 타입으로 코딩이 변환되며, 분석시 M 샘플들의 2개의 연속 블록들에 걸쳐 가중 윈도우의 적용을 포함하는 디지털 신호 코딩 방법으로서,
    상기 가중 윈도우는 비대칭이고,
    - 샘플들의 제 1 간격에 걸쳐 증가하는 제 1 부분(w 1 ),
    - 제 2 간격에 걸쳐 1의 값으로 일정한 제 2 부분(w 2 ),
    - 제 3 간격에 걸쳐 감소하는 제 3 부분(w 3 ), 및
    - 제 4 간격에 걸쳐 0의 값으로 일정한 제 4 부분(w 4 )
    을 갖는, 상기 2개 블록들에 걸쳐 연속으로 확장되는 4개의 식별부분들을 포함하는 것을 특징으로 하는 디지털 신호 코딩 방법.
  • 제 1 항에 있어서,
    제 1, 제 2, 및 제 3 간격은 적어도 제 4 간격(M z )의 함수로서 계산되는 것을 특징으로 하는 디지털 신호 코딩 방법.
  • 제 1 항 또는 제 2 항에 있어서,
    윈도우는 아래와 같이 타입의 함수(w 1 ):

    로서, R 1 으로 표시된 제 1 간격에 걸쳐 변하며, 여기서, C 1 및 R 1 은 0보다 큰 상수인 것을 특징으로 하는 디지털 신호 코딩 방법.
  • 제 3 항에 있어서,
    용어 C 1 은 3 내지 5 사이에 있는 것을 특징으로 하는 디지털 신호 코딩 방법.
  • 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    윈도우는 아래와 같이 타입의 함수(w 3 ):

    로서, R 2 로 표시된 제 3 간격에 걸쳐 변하며, 여기서, C 2 및 R 2 는 0보다 큰 상수인 것을 특징으로 하는 디지털 신호 코딩 방법.
  • 제 5 항에 있어서,
    용어 C 2 는 0.85 내지 1.05 사이에 있는 것을 특징으로 하는 디지털 신호 코딩 방법.
  • 제 1 항 내지 제 6 항 중 어느 한 항에 있어서,
    M z 로 표시된 제 4 간격의 기간은 다음과 같이 선택되고:

    여기서 는 x에 가장 가까운 x이상의 정수를 나타내며, M은 블록의 기간에 해당하는 것을 특징으로 하는 디지털 신호 코딩 방법.
  • 제 3 항 내지 제 7 항 중 어느 한 항에 있어서,
    R 1 으로 표시된 제 1 간격은 다음과 같은 기간을 갖고:

    여기서 M은 블록의 기간에 해당하며, 표시 는 x에 가장 가까운 x 이하의 정수를 나타내는 것을 특징으로 하는 디지털 신호 코딩 방법.
  • 제 5 항 내지 제 8 항 중 어느 한 항에 있어서,
    R 2 로 표시된 제 3 간격은 다음과 같은 기간을 갖고:

    여기서 M은 블록의 기간에 해당하며, 표시 는 x에 가장 가까운 x 이하의 정수를 나타내는 것을 특징으로 하는 디지털 신호 코딩 방법.
  • 제 1 항, 제 2 항 및 제 7 항 중 어느 한 항에 있어서,
    R 1 으로 표시된 제 1 간격은 다음과 같은 기간을 갖고:

    여기서 M은 블록의 기간에 해당하며, M z 는 제 4 간격의 기간에 해당하는 것을 특징으로 하는 디지털 신호 코딩 방법.
  • 제 10 항에 있어서,
    R 2 로 표시된 제 2 간격은 다음과 같은 기간을 갖고:

    여기서 M은 블록의 기간에 해당하며, M z 는 제 4 간격의 기간에 해당하는 것을 특징으로 하는 디지털 신호 코딩 방법.
  • 제 1 항 내지 제 11 항 중 어느 한 항에 있어서,
    연속 블록 쌍들에 비대칭이며 상기 4개의 부분들을 포함하는 복수의 연속 윈도우들을 적용하는 것을 특징으로 하는 디지털 신호 코딩 방법.
  • 오버랩 타입으로 디코딩이 변환되고, 합성시, 코딩된 샘플들의 2개 연속 블록들에 걸쳐 가중 윈도우의 적용을 포함하는 제 1 항 내지 제 12 항 중 어느 한 항에 따른 방법의 수단에 의해 코딩되는 디지털 신호 디코딩 방법으로서,
    상기 가중 윈도우는 합성시 코딩에 사용된 시간 반전된 분석 윈도우와 동일한 것을 특징으로 하는 디지털 신호 디코딩 방법.
  • 코딩 또는 디코딩 장치의 메모리 저장되도록 되어 있는 컴퓨터 프로그램으로서,
    장치의 프로세서에 의해 명령어들이 실행될 때, 제 1 항 내지 제 12 항 중 어느 한 항에 따른 코딩 방법 또는 제 13 항에 따른 디코딩 방법의 실행을 위한 명령어들을 포함하는 것을 특징으로 하는 컴퓨터 프로그램.
  • 제 1 항 내지 제 12 항 중 어느 한 항에 따른 코딩 방법의 실행을 위해 분석 가중 윈도우의 데이터를 저장(MEM) 및/또는 컴퓨팅(μP)하기 위한 수단을 포함하는 것을 특징으로 하는 신호 코딩장치.
  • 제 13 항에 따른 디코딩 방법의 실행을 위해 합성 가중 윈도우의 데이터를 저장(MEM') 및/또는 컴퓨팅(μP)하기 위한 수단을 포함하는 것을 특징으로 하는 신호 디코딩장치.
  • 说明书全文

    가중 윈도우들을 코딩/디코딩하는 지연최적화 오버랩 변환{Delay-optimized overlap transform, coding/decoding weighting windows}

    본 발명은 디지털 오디오 신호의 코딩/디코딩 분야에 관한 것으로, 보다 상세하게는 소위 "오디오 코딩/디코딩을 오버랩으로 변환"하는 분야에 관한 것이다.

    "코딩 변환"은 시간영역 신호들을 변환(주파수) 영역으로 코딩하는 데 있다. 이 변환은 특히 코딩 효율을 최적화 및 강화하기 위해 오디오 신호(음악, 연설, 기타)의 주파수 특징을 이용할 수 있다. 가령 간결하게 코딩될 수 있는 유한하고 줄어든 개수의 스펙트럼 광선들에 의해 하모닉 사운드가 주파수 영역에서 표현되는 사실로 사용이 구성된다. 또한 가령 가능한 한 들리 않는 식으로 코딩 소음을 포맷하기 위해 주파수 마스킹 효과로 이점적으로 사용이 구성된다.

    표준변환 코딩기술이 다음과 같이 요약되어 있다.

    코딩되는 (주어진 샘플링 주파수 (Fs)에서) 디지털 오디오스트림은 유한한 샘플 갯수(2M)의 프레임들(또는 보다 일반적으로 "블록들")로 절단된다. 각 프레임은 편의상 50%까지 선행 프레임과 오버랩된다. 가중 윈도우(h a )("분석 윈도우"라고 함)가 각 프레임에 적용된다.

    그런 후 변환이 신호에 적용된다. "변형이산 코사인변환("Modified Discrete Cosine Transform, MDCT)"라는 변환의 경우, 및 특별한 실시예에서, 가중 프레임은 2M 샘플들을 M 샘플들로 변환에 따라 "폴딩"된다. 그런 후 변환된 영역에서 M 크기의 프레임을 얻기 위해 IV 타입의 DCT 변환이 폴딩된 프레임에 적용된다.

    변환된 영역에서 프레임은 그런 후 적절한 퀀타이저(quantizer)를 이용해 양자화된다. 양자화는 데이터의 크기를 줄일 수 있게 하나, 원래 프레임에 (음성이건 아니건) 노이즈를 도입한다. 코더의 비트레이트가 더 클수록, 이 노이즈가 더 줄어들고 양자화 프레임이 원래 프레임에 더 가까워진다.

    디코딩시, 역 MDCT 변환이 이후 양자화 프레임에 적용된다. 크기 M의 양자화 프레임은 역 IV 타입의 DCT를 이용해 시간영역에서 크기 M의 프레임으로 변환된다. 그런 후, 제 2의 M에서 2M "언폴딩" 변환이 크기 M의 임시 프레임에 적용된다.

    그 다음, 소위 "합성" 가중 윈도우(syntesis weighting window)(h s )가 크기 2M의 프레임에 적용된다.

    디코딩된 오디오 스트림이 그런 후 오버랩핑 부분들을 규합함으로써 합성된다.

    합성 윈도우와 주어진 오버랩을 위해, (양자화가 없는 상태에서) 코딩될 신호의 완벽한 재구성을 얻을 수 있는 합성 윈도우가 결정된다.

    통상적으로 변환 코딩에 사용된 윈도우는 분석 및 합성 모두에서 동일한 사인형 타입의 윈도우이다. 이 구성에서, 코딩 시스템에 의해 도입된 최소 알고리즘 지연은 2M/Fs 초이다.

    이 지연을 줄이기 위해, 합성 윈도우의 시작시에 및 분석 윈도우의 마지막에 0을 부과할 수 있다. "0"씩 신호를 증대한 결과가 사전에 알려져 있기 때문에, 윈도우의 위치들에 대한 프레임 레이트를 오프세트시킬 수 있다. 이들 대칭 윈도우들은 가령:

    - 구해질 알고리즘적 지연의 절반에 해당하는 간격에 걸쳐 확장되는 소정의 0개수(M z ),

    - 길이(M-2M z )의 사인형 상승부,

    - 1에서 2M 값의 섹션, 및

    - 첨부도면 1에 도시된 바와 같이 최종적으로 제 1의 대칭 반사인 윈도우의 제 2 절반으로 구성된다.

    이들 윈도우들은 (2M-2M z )/Fs 초의 알고리즘적 지연을 가지며 따라서 2M z /Fs 초만큼 지연을 줄일 수 있다.

    그러나, 지연의 감소가 직사각형 윈도우와 닮게 증가되면, 이와 같은 기술은 지연을 줄일 수 있는 한편 그런 경향이 있다. 이런 윈도우 폼은 매우 주파수 선택적이며 궁극적으로 인코딩된 신호의 오디오 품질을 극적으로 떨어뜨린다. 또한, 4M z 샘플들이 구성에 부과되기 때문에 윈도우를 크게 제한한다. 특히 상당한 주파수 선택성을 제공하기 위해 코딩을 위한 유효 윈도우를 제안하는 많은 자유도가 가용하지 않다.

    참조문헌 WO-2009/081003은 이 문제를 완화하기 위해 비대칭 위노ㄷ우를 이용할 것을 제안하였다. 분석으로부터 이들 윈도우들은 분석 윈도우의 마지막에 걸쳐 단지 0들로만 구성된다. 필요한 저장공간을 제한하기 위해, 합성 윈도우는 분석 윈도우의 시간 반전(temporal reversal)이게 선택된다. 이 기술은 인코딩 지연뿐 아니라 디코딩 지연을 현저히 줄일 수 있다. 상술한 대칭 윈도우의 개수보다 2배 더 낮은 0들의 총 개수(M z )에 대해, 지연 이득은 같다. 0들의 개수가 줄어들면, 이런 비대칭 윈도우의 주파수 선택성은 대칭 윈도우의 선택성보다 더 커진다. 이로써 디코딩된 신호의 오디오 품질이 향상된다.

    보다 상세하게, 참조문헌 WO-2009/081003은 하기에 주어진 초기 윈도우 h(n)으로부터 2부분(h a1 및 h a2 )으로 구성된 분석 윈도우 h a (n):

    및 하기에 주어진 완벽한 재구성 조건을 갖질 수 있는 보정계수 Δ(n)을 나타낸다:

    분석 윈도우(h a )는 다음과 같이 주어진다:

    h a1 (n+M)= h(n+M)/Δ(n), 및

    h a2 (n)= h(n)/Δ(n) (0≤n<M에 대해)

    합성 윈도우(h s (n))는 분석 윈도우의 시간 반전이다:

    h s (2M-1-n)= h a (n) (0≤n<2M에 대해)

    이런 윈도우들은 1 및 동일 지연이득을 위해 더 나은 주파수 선택성으로 인해 대칭 윈도우보다 더 나은 품질을 갖는다.

    그러나, 종래 기술이 이점적이며 선행 기술들에 비해 품질의 향상을 제안하더라도, 더 큰 지연이득을 갖는 방안이 구해지면, 가령, M/4보다 더 많은 개수의 0들(M z )(여기서 M은 프레임 기간임)로, 이런 윈도우들을 적용함으로써 가청 열화가 관찰되며, 이는 윈도우 일부가 도 2에 도시된 바와 같이 1보다 훨씬 더 큰 높은 값을 취하는 사실로 인해 명백히 설명될 수 있다. 현재, 디지털 신호 프로세싱에서 고정점 실행으로 인해 절대값으로서 1 미만의 값을 갖는 가중화를 이용하는 것이 일반적으로 바람직하다.

    본 발명은 상기 상황을 개선시킨다.

    이를 위해, 샘플들의 연속 블록으로 디지털 신호가 구성되고, 오버랩 타입으로 코딩이 변환되며, 분석시 M 샘플들의 2개의 연속 블록들에 걸쳐 가중 윈도우의 적용을 포함하는 디지털 신호 코딩 방법을 제안한다. 특히, 상술한 가중 윈도우는 비대칭이고,

    - 샘플들의 제 1 간격에 걸쳐 증가하는 제 1 부분,

    - 제 2 간격에 걸쳐 1의 값으로 일정한 제 2 부분,

    - 제 3 간격에 걸쳐 감소하는 제 3 부분, 및

    - 제 4 간격에 걸쳐 0의 값으로 일정한 제 4 부분을 갖는, 상기 2개 블록들에 걸쳐 연속으로 확장되는 4개의 식별부분들을 포함한다.

    나중에 알게 되는 바와 같이, 본 발명을 통해 얻은 이점들 중 하나에 따르면, 도 3을 참조로 나중에 알게 되는 바와 같이 낮은 지연 이점을 얻고 또한 오디오 표현 품질을 강화하는 한편, 제 2 간격 동안 1로 윈도우의 불변성은 참조문헌 WO-2009/081003에 기술된 바와 같이 종래 기술의 윈도우의 사용의 복잡도를 줄일 수 있게 한다.

    더욱이, 제 1, 제 2 및 제 3 간격이 하기의 예시적인 실시예들에서 알게 되는 바와 같이 이점적으로 알고리즘적 지연으로 순환될 수 있는 상술한 지연을 설정하는 적어도 제 4 간격의 기간(윈도우의 마지막에서 0들의 개수)의 함수로서 계산되는 것이 이점적이다. 마찬가지로, 각각의 증가 및 감소 부분들의 상승 및 하강 에지들은 명백히 제 4 간격의 기간의 함수로서 최적화될 수 있다. 제 4 간격(이하 M z 로 표시됨)은 블록당 샘플들의 개수(M)의 함수 및 물론 소정의 최대 지연의 함수로서 자체표현된다.

    분석 윈도우들의 연속은 상술한 참조문헌 WO-2009/081003에 기술된 특징들과 유사한 특징들을 나타낸다. 특히, 동일한 크기 2M의 샘플들의 2개 블록들은 제 1 및 제 2 분석 윈도우에 의해 각각 가중화되고, 제 2 윈도우의 상승 에지는 일시적으로 반전된 제 1 윈도우의 하강 에지와 다를 수 있다. 따라서, 이들 에지들은 선험적 대칭이 아니다.

    더욱이, 본 발명의 실행에서, 코딩시, 상술한 특징들(상승, 1에서 일정, 하강 및 0에서 일정)을 갖는 동일한 분석 윈도우들의 개수는 도 10에 도시된 바와 같이 M개 샘플들을 오버랩함으로써, 2M개 샘플들의 복수의 연속 블록들에 연이어 적용될 수 있다. 일반적인 면에서, 본 발명은 비대칭이며 상술한 4개의 부분들을 포함하는 복수의 연속 윈도우들을 연속한 블록 쌍들에 적용하는 것을 포함한다. 따라서, 참조문헌 WO-2009/081003에서와 같이, 여기서 다시, 비대칭 윈도우가 적용될 때 특정한 전이 윈도우가 전혀 제공되지 않는다.

    특별한 실시예에서, 윈도우는 하기의 타입의 함수(w 1 )로서, R 1 으로 표시된 제 1 간격에 걸쳐 변한다:

    여기서, C 1 및 R 1 은 0보다 큰 상수이다.

    예컨대 최적화에 의해, 15 에서 30ms의 크기의 지연 범위에 대해 항(C 1 )은 3 내지 5 사이에 있을 수 있다. 특히 예시적인 실시예에서, C 1 = 4.8425이다.

    R 1 으로 표시된 제 1 간격은 이 예시적인 실시예에서 다음으로 주어진 기간을 갖고:

    여기서, M은 블록의 기간에 해당하며, 표시

    는 x에 가장 가까운 x 이하의 정수를 나타낸다.

    윈도우의 제 2 부분에 대해, 예시적인 실시예에서, 하기의 타입의 함수(w 3 )로서, R 2 로 표시된 제 2 간격에 걸쳐 변할 수 있다:

    여기서, C 2 및 R 2 는 0보다 큰 상수이다.

    수행된 최적화 테스트에 따르면, 항(C 2 )은 바람직하게는 0.85 내지 1.05이며, 특별한 예시적인 실시예에서, C 2 = 0.9659이다.

    R 2 로 표시된 제 3 간격은 이 예시적인 실시예에서 하기에 주어진 우선 기간을 갖고:

    여기서 M은 블록의 기간에 해당하며, 표시

    는 x에 가장 가까운 x 이하의 정수를 나타낸다.

    이 예시적인 실시예에서, M z 로 표시된 제 4 간격의 기간은 다음과 같이 주어진 기간을 갖도록 초기에 선택되고:

    여기서

    는 x에 가장 가까운 x이상의 정수를 나타내며, M은 블록의 기간에 해당한다.

    물론, 다른 지연들도 실행될 수 있고 따라서 제 4 간격(M z )의 다른 기간들도 제공될 수 있다. 하기에 상세히 설명된 예시적인 실시예에 주어진 표 1은 다른 지연 값들 및 이에 따른 다른 4번째 간격 기간들(M z )에 대해 파라미터(C 1 ,C 2 ) 및 간격(R 1 ,R 2 )의 값을 나타낸다.

    따라서, 상기 방법은 윈도우 형태의 최적화의 예비 단계를 이점적으로 포함할 수 있고, 이 최적화는 최적화 파라미터(C 1 ,C 2 ) 및/또는 심지어 상술한 간격(R 1 ,R 2 )에 도달하기 위한 적어도 하나의 비용함수 평가를 기반으로 한다.

    전반적으로, 특히 양호한 품질의 오디오 연출을 위해 만들어진 최적화에 따라 윈도우에 총 "1"의 개수가 0의 개수보다 대략 2배 더 크게 되는 것이 이점적이다.

    따라서, 또 다른 특별한 예시적인 실시예에서, R 1 으로 표시된 제 1 간격은 가령 하기에 주어진 기간을 갖고:

    여기서 M은 블록의 기간에 해당하며, M z 는 제 4 간격의 기간에 해당한다.

    이 예에서, 제 3 간격(R 2 )은 하기에 주어진 기간을 가질 수 있고:

    여기서 M은 블록의 기간에 해당하며, M z 는 제 4 간격의 기간에 해당한다.

    하기에 상세히 설명된 예시적인 실시예에 주어진 표 2는 다른 지연 값들 및 이에 따른 다른 4번째 간격 기간들(M z )에 대해 간격(R 1 ,R 2 )이 이에 따라 설정되었을 때, 파라미터(C 1 , C2 )의 값들을 나타낸다.

    따라서, 본 발명은, 참조문헌 WO-2009/081003에 나타낸 타입의 선택된 0들의 개수로 완벽한 재구성을 갖는 비대칭 윈도우 원리에 의거해, 효과적인 실행을 보장하면서 양호한 음향 연출을 가질 수 있는 최적화된 분석 및 합성 윈도우들의 사용을 제안한다. 도 3은 본 발명에 따른 윈도우(참조부호 INV), 참조문헌 WO-2009/081003에 따른 윈도우(참조부호 AA) 및 26ms 지연에 대한 종래 사인형 윈도우(SIN) 간에 오디오 품질 면에서 성능 비교를 나타낸다. 미참조된 다른 지점들은 다른 종래 기술들에 관한 것이다. 본 발명은 참조문헌 WO-2009/081003에 기술된 실행에 의해 달성된 지연 이득에 상당하는 지연 이득을 제공하면서 종래 윈도우(SIN)로 달성된 오디오 품질과 동일한 오디오 품질을 보존할 수 있게 하는 것을 나타낸다. 그런 후 인식 품질은 하기 설명에서 평가 기준으로서 유지되고, 변환의 재구성 에러는 기설정된 인식 임계치와 관련해 인식 면에서 무시할 수 있는 채 남아 있다.

    본 발명은 오버랩 타입으로 디코딩이 변환되고, 합성시, 코딩된 샘플들의 2개 연속 블록들에 걸쳐 가중 윈도우의 적용을 포함하는 상기 방법의 실행에 의해 코딩된 디지털 신호를 디코딩하기 위한 방법을 목표로 한다. 특히, 합성시 가중 윈도우는 가령, 나중에 알게 되는 바와 같이 완벽한 재구성 속성을 보장하기 위해 시간적으로 반전된 코딩에 사용된 분석 윈도우와 동일하다.

    본 발명은 또한 코딩 또는 디코딩 장치의 메모리 저장되도록 되어 있고, 장치의 프로세서에 의해 명령어들이 실행될 때, 특히 상기 코딩 방법 또는 상술한 디코딩 방법의 실행을 위한 명령어들을 포함하는 컴퓨터 프로그램을 목표로 한다. 특히, 코딩에 특정한 제 1 부와 디코딩에 특정한 제 2 부를 포함한 컴퓨터 프로그램이 될 수 있다. 후술된 도 7은 이런 프로그램의 일반적 알고리즘의 흐름도의 일예이며 도 8은 특정 실시예에서, 특히, 이 프로그램이 본 발명에 따른 코딩/디코딩 방법이 이용되는 분석 및 합성 윈도우의 선행 구성을 위한 명령어들을 포함한다면, 이 프로그램의 알고리즘이 포함할 수 있는 예비 단계들을 나타낸다.

    도 9에 개략적으로 나타낸 바와 같이, 본 발명은 또한 본 발명에 따른 코딩 방법의 실행을 위해 분석 가중 윈도우의 데이터를 저장(MEM) 및/또는 컴퓨팅(μP)하기 위한 수단을 포함하는 신호 코딩장치(COD)를 목표로 한다. 마찬가지로, 본 발명은 또한 본 발명에 따른 디코딩 방법의 실행을 위해 합성 가중 윈도우의 데이터를 저장(MEM') 및/또는 컴퓨팅(μP)하기 위한 수단을 포함하는 신호 디코딩장치(DECOD)를 목표로 한다. 이는 특히 코딩 및 디코딩 모두가 (메모리(MEM 및/또는 MEM')에 저장된) 사전 초기화 분석 및/또는 합성 윈도우 값들로부터 시작하고 가능하게는 분주히 (계산수단(μP)의 실행에 의해) 이들 값들을 최적화할 수 있다.

    본 발명의 내용에 포함됨.

    본 발명의 다른 이점 및 특징은 첨부도면과 하기에 주어진 비제한적인 실시예들의 예에 대한 상세한 설명을 읽을 때 명백해진다.
    도 1은 윈도위의 시작과 끝에서 0을 포함한 로우 지연을 갖는 종래 대칭 윈도우의 모습을 도시한 것이다.
    도 2는 40ms의 프레임(2M)에 대해 15ms의 지연 이득을 갖는 참조문헌 WO 2009/081003에 기술된 바와 같은 비대칭 윈도우의 모습을 도시한 것이다.
    도 3은 26ms의 지연에 대해 본 발명에 따른 윈도우(INV), 도 1에 따른 사인형 윈도우(SIN), 및 도 2에 따른 윈도우(AA) 간의 오디오 품질의 비교를 도시한 것이다.
    도 4는 본 발명에 따른 분석 윈도우의 구성을 위한 제 1 예시적인 초기화 윈도우(h i )를 도시한 것이다.
    도 5는 본 발명에 따른 분석 윈도우의 구성을 위한 제 2 예시적인 초기화 윈도우(h i )를 도시한 것이다.
    도 6은 도 5에 표현된 타입의 초기화 윈도우으로부터 얻은 본 발명에 따른 예시적인 분석 윈도우를 도시한 것이다.
    도 7은 본 발명의 상황을 나타내기 위해 예시적인 변환 코딩/디코딩 방법의 단계들을 개략적으로 도시한 것이다.
    도 8은 본 발명에 따른 방법의 실행을 위한 분석 및 합성 윈도우의 예시적인 구성 단계들을 개략 도시한 것이다.
    도 9는 본 발명의 실행을 위한 코딩 및 디코딩 장치를 개략 도시한 것이다.
    도 10은 오버랩으로 적용된 본 발명에 따른 연속 분석 윈도우들을 도시한 것이다.

    본 발명의 실행을 위한 전체 구조로서 (단계 70에서 주어진) 디지털 신호를 코딩/디코딩하는 방법을 설명하기 위해 먼저 도 7을 참조한다. 상기 방법은 디지털 오디오 신호를 프레임 길이(M)로 나누는 단계(71)를 포함한다. 그런 후, 각 프레임은 앞선 프레임과 그룹핑되는데, 이는 50%의 오버랩에 해당한다. 다음 단계(72)에서, 분석 윈도우(h a )가 2개 프레임 세트에 적용된다. 도 6은 본 발명에 따른 예시적인 분석 윈도우(h a )(샘플 갯수"Nb Ech"의 함수로서 0에서 1까지 진폭)를 도시한 것이다. 분석 윈도우(h a )는 0에서 Mz 값들로 끝나고 총 길이는 2M이 되는 것이 나타내질 것이다.

    다음 단계(73)는 가령 MDCT 타입을 2개의 프레임 블록들로 변환을 적용하고이에 따라 윈도우(h a )에 의해 가중화되고, 그런 후, 변환 영역에서 값들을 양자화시킨다(단계 74).

    디코딩시, 단계 75에서, 역변환이 값들을 시간 영역으로 재변환시킬 수 있게 한다. 코딩시 변환이 가령 MDCT 타입이면, 역변환 iMDCT이 디코딩시 가해질 수 있다.

    단계 76에서, 완벽한 재구성 조건을 보장하기 위해, 합성 윈도우(h s )가 2개의 디코딩 프레임에 적용된다. 참조문헌 WO 2009/081003에 기술된 바와 같이, 이 조건은 초기 윈도우(h i )에 가해진 (하기에 더 상세히 기술된) 보정계수 1/Δn를 부여해 분석 윈도우(h a )를 얻는다. 합성 윈도우(h s )는 분석 윈도우(h a )의 시간 역수로 나타나 진다:

    단계 77에서, 겹치는 블록들은 완벽한 재구성을 보장하는 디코딩된 신호를 최종적으로 전달하기 위해 규합된다.

    이런 방법에, 특히 코딩시에 이용된 분석 윈도우(h a )의 모습을 더 상세히 실명하기 위해 도 6을 참조한다. 분석 윈도우는 4개의 식별 세그먼트들(w1,w2,w3,w4)로 구성된다. 같은 것이 분석 윈도우의 시간 역수로서 나타나는 합성 윈도우(h s )에 적용된다.

    하기에 표시된 R 1 의 제 1 간격에 대해, 합성 윈도우는 다음과 같은 타입의 함수(w 1 )로서 변한다:

    그런 후, 분석 윈도우는 일정하고 제 2 간격에 걸쳐 값 (w2=1)을 갖는다.

    하기에 표시된 R 2 의 제 3 간격에 대해, 윈도우는 다음과 같은 타입의 함수(w s )로서 변한다:

    마지막으로, 4번째 간격(M z )에 대해, 분석 윈도우는 일정하고 값(w4=0)을 갖는다.

    종래기술 WO 2009/081003에 비해, 이런 윈도우의 형태는 (가능하게는 가령 40%까지에 이르는) 상당한 지연이득을 위해 최적의 오디오 품질을 보장하게 할 수 있는 것이 하기에 도시되어 있다. 증가, 1에서 일정, 감소 및 0에서 일정의 일반적 변형의 이런 윈도우들의 사용은 한가지 타입의 변환 MDCT에 국한되지 않는다. 이들은 또한 코딩이 코딩되는 신호의 일부(가령, 또 다른 코딩 기술에 비해 코딩 에러를 처리하기 위해, 예컨대, 단지 오디오 밴드의 일부 또는 기타)에만 단지 관련된 경우에도 이용될 수 있다.

    도 7을 참조로 상술된 바와 같은 방법에 이용되는 윈도우(h a )가 어떻게 얻어지는지 도 8을 참조로 설명한다.

    초기화 단계(80)에 이어, 초기화 파라미터(R 1 , R 2 , C 1 및 C 2 )가 단계(81)에 정의된다. 다음 단계(82)에서, 초기화 윈도우(h i )가 이들 초기화 파라미터들로부터 계산된다. 도 4 및 도 5에 도시된 바와 같이, 이 초기화 윈도우(h i )는 4개의 세그먼트들(W 1 ,W 2 ,W 3 ,W 4 )로 구성된다.

    길이(R 1 )의 제 1 세그먼트(W 1 )는 하기의 식으로 정의된다:

    여기서, C 1 은 0보다 큰 상수이다.

    길이 L=2M-R 1 -R 2 -M z 의 제 2 세그먼트(W 2 )는 1에서의 값들로 구성된다.

    길이(R 2 )의 제 3 세그먼트(W 3 )는 하기의 식으로 정의된다:

    여기서, C 2 는 0보다 큰 상수이다.

    길이 M z 의 제 4 세그먼트(W 4 )는 0에서의 값들로 구성된다.

    따라서, 초기화 윈도우(h i )는 다음과 같이 주어진다:

    단계(83)에서, 계수 1/Δ n 은 초기화 윈도우(h i )에 가해지고, 이는 완벽한 재구성 조건을 보장할 수 있게 하고 합성 윈도우가 분석 윈도우의 시간 반전이고 디코딩시 변환이 듀얼이 되게 하는 (가령, MDCT 변환이 코딩시 가해졌다면 iMDCT 변환인) 가정을 토대로 한다.

    항 Δ n 은 다음과 같이 주어진다:

    완벽한 재구성을 위한 분석 윈도우(h a )는 다음과 같이 주어진다:

    엄밀히 "1"에서 값들은 가중화 곱을 전혀 필요치 않는 것을 알게 될 것이다. 따라서, 본 발명을 통해 얻은 또 다른 이점에 따르면 하기의 표에 도시된 바와 같이 복잡성에 예상된 이득이 종래 기술에 비해 상당해진다.

    윈도우(512개 점들) 곱셈 갯수 이득
    도 1의 윈도우(SIN) 512 0%
    도 2의 윈도우(AA) 416 19&
    도 6의 윈도우(INV) 224 56%

    따라서, 주어진 지연이득(주어진 0들의 개수(M z ))에 대해, 최선의 가능한 오디오 품질을 가질 수 있는 분석 및 합성 윈도우의 정밀한 형태를 정의하는 4개의 파라미터들(R 1 ,R 2 ,C 1 ,C 2 )의 최적 조합이 있다. 이들 파라미터들은 차후에 도 8에 대해 다시 한번 더 참조로 기술되는 바와 같이 연속 반복의 최적화로 구해질 수 있다.

    가령, (본 명세서에 기술된 예에서 40ms 프레임에 대하 14ms에 해당하는) 35%의 지연이득은 간단히 코더의 알고리즘적 지연에 해당한다. 기술된 예에서 26ms의 이 지연은 다음에 의해 주어진 0들의 개수(M z )를 부여한다:

    여기서

    는 x에 가장 가까운 x이상의 정수를 나타낸다. 따라서, M=40ms에 대해 M

    z =14ms인 것이 밝혀진다.

    이 선택으로, 분석 및 합성 윈도우의 파라미터 값들은 가령 다음과 같이 주어질 수 있다;

    여기서

    는 x에 가장 가까운 x 이하의 정수를 나타낸다.

    이와 같은 실시예는 도 4에 도시된 초기화 윈도우에 해당한다.

    또 다른 예시적인 접근은 구해 초기화 윈도우 파라미터의 개수를 줄일 수 있게 한다. 이 접근은 윈도우(h i )에서 "1"의 개수가 "0"의 개수의 2배여야 하고 윈도우(h i )의 대칭축은 도 5에 도시된 바와 같이 세그먼트 W 2 중간에 해당한다고 고려하는데 있다. 이들 조건에서, 간격 R 2 및 R 1 값들은 간격 M z 의 범위에만(즉, 초기화 윈도우의 끝에서 "0"의 선택된 개수에만)의존한다.

    이들 조건에서:

    여기서 G 지연 은 ms 단위로 지연에서의 소정 이득이고, FL은 ms 단위로 프레임(2M)의 길이이다(샘플링 주파수는 밀리세컨드 단위 또는 "ms"로 카운팅할 경우 Fs=2M/FL×1000로 주어진다).

    그런 후, 도 8의 단계(84)에서, 예컨대 (가령, 소위 "그래디언트" 기술과 같은) 반복 최적화의 실행에 의해 상수 C 1 및 C 2 (및 가능하게는 R 1 및 R 2 )를 결정하기 위해 노력들이 행해진다.

    예컨대, 각각 2M z ; M z ; 1 및 1의 R 1 , R 2 , C 1 및 C 2 의 값들에 대한 초기 파라미터의 선택으로 단계(81)에서 시작하면, 비용함수는 아래와 같이 적용되는 단계 84에서 계산된다:

    - 상술한 타입의 형태를 갖는 초기화 윈도우로부터 넘겨지는 분석 윈도우, 및

    - 완벽한 재구성을 보장하는 합성 듀얼.

    비용함수는 테스트(85)에서 검증되는 기준 세트로 구성될 수 있다. 비제한적인 예에 언급될 수 있는 예들은 다음을 포함한다:

    - 윈도우의 제 1 도함수의 분석:

    - 윈도우의 제 2 도함수의 분석:

    - 가령, 참조문헌 WO 2009/081003에 정의된 바와 같은 코딩 이득 검색,

    - 본 발명에 따른 분석 윈도우와 합성 윈도우 모두를 적용함으로써 주어진 오디오 샘플에 대해 논코딩 신호와 코딩에 의해 도입된 에러 간의 알고리즘으로 표현된 신호 대 잡음비 "SMR"의 최대화.

    테스트(85)에서, 최적화 기준의 마지막에 도달했는지 여부(비용함수 값, 파라미터의 값의 변화 또는 기타)를 검사할 수 있다. 적절하면(OK 화살표), 최적화된 파라미터 값들이 마지막 단계(87)에서 발견된다. 그렇지 않으면, 반대의 경우(KO 화살표)에서, R 1 , R 2 , C 1 및 C 2 의 값들이 비용함수를 줄이기 위해 이런 식으로 변경된다.

    따라서, 각각 2M z ; M z ; 1 및 1의 초기 파라미터 R 1 , R 2 , C 1 및 C 2 의 선택으로부터 시작함으로써, 선택이 모두 아래의 이들 4개의 파라미터들을 최적화하기 위해 취해진 경우, 최적화 후에,

    또는 대안으로, 2개 파라미터들(C 1 및 C 2 )만을 최적화하지 않게 선택이 취해진 경우에,

    - 5에 가까운 값을 갖는 C 1 , 및

    - 1에 가까운 값을 갖는 C 2 가 발견된다.

    따라서, 이 두번째 옵션에서, 1의 개수가 0의 개수의 2배이고 도 5에 도시된 바와 같이 윈도우의 대칭축이 세그먼트 W 2 의 중간에 해당하는 경우에 C 1 및 C 2 로 최적화 값들의 검색을 제한할 수 있다.

    (상술한 바와 같은 26ms 대신) 28ms의 지연에 대한 모든 파라미터들을 최적화하는 상술한 제 1 옵션으로, 이 최적화 기술에 따라 C 1 =4.1582 및 C 2 =0.9181인 것이 밝혀진다.

    보다 일반적으로, 하기의 표 1은 다른 지연 옵션들 및 이에 따라 "0" 샘플들(M z )의 개수에 따른 R 1 , R 2 , C 1 및 C 2 의 최적화 파라미터 세트를 나타낸다. 48,000 Hz 샘플링 주파수와 20ms 프레임들에 대해 프레임(M) 당 샘플들의 개수가 다음과 같이 주어진다:

    지연(ms) M Mz R 1 R 2 C 1 C 2
    26 960 336 404*M/640=606 196*M/640=294 4.8425 0.9659
    28 960 288 M-Mz=672 M-2*Mz=384 4.1582 0.9181
    30 960 240 480*M/640=720 320*M/640=480 3.8945 0.8502
    26 960 336 398*M/640=597 190*M/640=285 5.0304 0.9777

    표 2: 모두 4개의 파라미터들(R 1 , C 1 , R 2 , C 2 )의 최적화

    이 표의 데이터는 특히 다음과 같이 제 4 간격Mz으로 "0" 샘플들의 개수의 함수로서 표현된다:

    지연(ms) M Mz R 1 R 2 C 1 C 2
    26 960 336 404*(20/7)*Mz/640=606 196*(20/7)*Mz/640=294 4.8425 0.9659
    28 960 288 M-Mz=672 M-2*Mz=384 4.1582 0.9181
    30 960 240 M-Mz=720 M-2*Mz=480 3.8945 0.8502
    26 960 336 398*(20/7)*Mz/640=597 190*(20/7)*Mz/640=285 5.0304 0.9777

    표 3: 모두 4개의 파라미터들(R 1 , C 1 , R 2 , C 2 )의 최적화

    아래의 표 4는 O들의 개수(Mz)의 함수로서 간격(R 1 및 R 2 )를 설정함으로써 상술한 제 2 옵션에 따라 최적화된 파라미터(C 1 및 C 2 ) 세트를 나타낸다. 48,000 Hz 샘플링 주파수와 20ms 프레임들에 대해 프레임(M) 당 샘플 개수가 다음과 같이 주어진다.

    지연(ms) M Mz R 1 =M-Mz+1 R 2 =M-2*Mz+1 C 1 C 2
    26 960 336 625 289 4.4265 1.0256
    28 960 288 673 385 4.1406 0.9163
    30 960 240 721 481 3.7382 0.8699

    표 4: 간격(R 1 및 R 2 )을 설정한 후 2개 파라미터(C 1 및 C 2 )의 최적화

    물론, 본 발명은 예로서 상술된 실시예에 국한되지 않는다: 다른 변형들로 확장된다.

    가령, 반복에 의한 최적화 방법은 물론 다른 변형들이 가능하나 상술한 바와 같이 소위 "그래디언트" 타입의 방법일 수 있다. 예컨대, 상대적으로 일정한 가중치로 음향 샘플을 처리하기 위해 최적화 프로세스 내에서 윈도우(h a )의 최대화를 1로 설정할 수 있다.

    보다 일반적으로, 분석 및 합성 윈도우의 값들이 (상술한 바와 같은 최적화에 의해) 이전에 결정될 수 있고, 그런 후 코딩 또는 디코딩 방법에 사용되게 코딩 또는 디코딩 장치의 메모리에 하드저장될 수 있다. 변형으로, 초기화 윈도우를 정의하고, 상술한 장치들의 메모리에 이들을 저장하며, 그런 후 가령 통신 조건에 따라 최적화할 수 있다.

    QQ群二维码
    意见反馈