KR101001745B1 - 스케일러블 BSAC(Bit Sliced Arithmetic Coding) 오디오 데이터 산술복호화 방법 및 장치 - Google Patents

스케일러블 BSAC(Bit Sliced Arithmetic Coding) 오디오 데이터 산술복호화 방법 및 장치 Download PDF

Info

Publication number
KR101001745B1
KR101001745B1 KR1020070004419A KR20070004419A KR101001745B1 KR 101001745 B1 KR101001745 B1 KR 101001745B1 KR 1020070004419 A KR1020070004419 A KR 1020070004419A KR 20070004419 A KR20070004419 A KR 20070004419A KR 101001745 B1 KR101001745 B1 KR 101001745B1
Authority
KR
South Korea
Prior art keywords
decoding
decoded
symbol
last layer
bsac
Prior art date
Application number
KR1020070004419A
Other languages
English (en)
Other versions
KR20070038992A (ko
Inventor
주기현
김중회
오은미
손창용
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020070004419A priority Critical patent/KR101001745B1/ko
Publication of KR20070038992A publication Critical patent/KR20070038992A/ko
Application granted granted Critical
Publication of KR101001745B1 publication Critical patent/KR101001745B1/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/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/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction

Landscapes

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

Abstract

스케일러블 BSAC 오디오 데이터 산술 복호화 방법 및 장치가 개시된다. 그 산술 복호화 방법은, 복호화하고자 하는 BSAC 오디오 데이터의 마지막 계층의 부가정보가 모두 복호화되었는지 체크하는 단계; 및 (b) 마지막 계층의 부가정보가 모두 복호화되었으면, BSAC스마트 복호화를 수행한후 복호화를 종료하고, 그렇지 않으면, 마지막 계층의 복호화를 종료하는 단계를 포함함을 특징으로 하고, 그 BSAC 스마트 복호화는 잘려진 비트스트림 이후에 읽어 들어야 할 정보를 이용하여 복호화할 경우, 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 복호화 될 심볼이 결정될 경우를 확인하는 단계; 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 복호화가 가능하면 복호화를 계속 진행하는 단계; 및 잘려진 비트스트림 이후에 읽어들인 데이터에 의존하여 복호화될 심볼이 결정될 경우에는 앰비규어티가 발생했다고 판단하고 복호화를 종료하는 단계를 포함한다.
[수학식1]
Figure 112010038390806-pat00001
본 발명에 의하면, MPEG-4 BSAC 복호화기에서 바이트 레벨의 scalability를 제공할 수 있으며, 비트스트림이 절단되었을 경우에도 복호화 종료 시점을 알 수 있게 하며, 잘려나간 부분에 대해서도 부가적인 복호화가 가능하다.

Description

스케일러블 BSAC(Bit Sliced Arithmetic Coding) 오디오 데이터 산술복호화 방법 및 장치{Scalable BSAC(Bit Sliced Arithmetic Coding) audio data arithmetic decoding method and apparatus}
도 1은 일반적인 산술 복호화 방법을 흐름도로 도시한 것이다.
도 2는 일반적인 확장성(scalability)을 위한 비트스트림 절단(bitstream truncation)의 경우를 도시한 것이다.
도 3은 일반적인 이진 산술복호화를 위한 수도 코드(pseudo code)를 나타낸 것이다.
도 4는 비트스트림이 절단(truncation) 되었을 경우의 절단점(truncation point) 부근에서의 버퍼에 입력된 값을 나타낸 것이다.
도 5는 본 발명에 의한 스케일러블 BSAC 오디오 데이터의 산술복호화 장치의 구성을 블록도로 도시한 것이다.
도 6은 스마트 복호화부(540)의 상세한 구성을 블록도로 도시한 것이다.
도 7은 본 발명에 의한 스케일러블 BSAC 오디오 데이터의 산술복호화 방법을 흐름도로 도시한 것이다.
도 8은 750단계의 BSAC 스마트 복호화에 대한 일 예를 흐름도로 도시한 것이다.
도 9는 본 발명에 의한 스케일러블 BSAC 비트스트림의 복원계속여부 판단방법을 적용하여 추가적으로 더 복호화한 예를 보여준다.
도 10는 부호(sign) 비트에서 앰비규어티(ambiguity)가 발생할 경우 이를 처리하는 예를 도시한 것이다.
본 발명은 스케일러블(scalable) 오디오 데이터 복호화에 관한 것으로서, 특히 스케일러블 BSAC 오디오 데이터 산술복호화 방법 및 장치에 관한 것이다.
오디오 무손실 부호화 방식에 대한 기술은 오디오 방송이나 아카이빙(archiving) 용도로 많은 수요가 있다. 무손실 오디오 부호화를 함에 있어서 주요 기술은 시간/주파수 변환 혹은 선형예측을 이용하여 엔트로피(entropy) 부호화기를 적용하는 것이 핵심기술이다.
비트스트림 리파싱(re-parsing)을 통한 확장성(scalability)을 적용할 경우에는 하나의 프레임(frame)에 해당하는 비트스트림(bitstream)을 서버(server) 단에서 임의의 위치에서 절단(truncate)하여 복호화단에 전송한다.
도 1은 일반적인 산술 복호화 방법을 흐름도로 도시한 것이다. 먼저, 초기화를 한 후(100단계), 복호화할 심볼을 찾는다.(110단계) 문맥(context)을 이용하여 심볼의 확률을 계산하여(120단계) 산술복호화를 수행한다.(130단계) 비트스트림의 끝(end) 인지 체크하여(140단계), 끝이 아니면 다시 복호화할 심볼을 찾아 위의 과정을 반복하고 끝이면 복호화를 종료한다. 그런데 보통 산술 복호화 과정을 거칠 때는 복호화할 전체 심볼을 알거나 특정 종결코드(termination code)를 삽입 하여 복호화기에게 복호화가 언제 종료되어야 하는지 알려준다. 그러나 도 2와 같이 비트스트림이 절단(truncation)되었을 경우에는 이러한 정보가 잘려나간 상태이기 때문에 복호화기는 언제 복호화를 종료해야 할지 알 수 없다. 정확한 종료시점을 알지 못하므로 복호화 할 때 원하지 않는 데이터가 복호화 될 수 있다.
한편, MPEG-4 BSAC에서는 스케일러빌리티(scalablility)를 제공할 때, 부가정보(side-info)를 사용하고 이를 통해서 1 kbps/ch 단위의 스케일러빌리티를 제공한다.
본 발명이 이루고자 하는 기술적 과제는 상술한 문제점을 해결하기 위해 복호화 에러 없이 복호화를 효율적으로 종료하는, 스케일러블 BSAC 데이터의 산술 복호화 방법 및 장치를 제공하는 것이다.
상기 기술적 과제를 이루기 위한 본 발명에 의한 스케일러블 BSAC 오디오 데이터 산술 복호화 방법은, 스케일러블 BSAC 오디오 데이터 산술 복호화 방법에 있어서, (a) 복호화하고자 하는 BSAC 오디오 데이터의 마지막 계층의 부가정보가 모두 복호화되었는지 체크하는 단계; 및 (b) 마지막 계층의 부가정보가 모두 복호화되었으면, BSAC 스마트 복호화를 수행한 후 복호화를 종료하고, 마지막 계층의 부가정보가 모두 복호화되지 않았으면, 상기 마지막 계층의 복호화를 종료하는 단계를 포함함을 특징으로 한다. 상기 (b)단계의 BSAC 스마트 복호화는 (b1) 잘려진 비트스트림 이후에 읽어 들어야 할 정보를 이용하여 복호화할 경우, 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 복호화 될 심볼이 결정될 경우를 확인하는 단계; (b2) 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 복호화가 가능하면 복호화를 계속 진행하는 단계; 및 (b3) 잘려진 비트스트림 이후에 읽어 들인 데이터에 의존하여 복호화 될 심볼이 결정될 경우에는 앰비규어티(ambiguity)가 발생했다고 판단하고 복호화를 종료하는 단계를 포함한다.
상기 (b3)단계는 잘려진 비트스트림 이후에 읽어 들인 데이터에 의존하여 복호화 될 심볼이 결정될 경우에는 앰비규어티(ambiguity)가 발생했다고 판단하는 단계; 및 부호비트에 대해, 앰비규어티가 발생했다고 결정되면, 이전에 복호화된 샘플을 0 으로 설정하고 복호화를 종료하는 단계를 포함함이 바람직하다.
상기 (b)단계의 BSAC 스마트 복호화는, 복호화하고자 하는 심볼과 그 확률을 이용하여 산술복호화하는 단계; (b2) 수학식 1 및 수학식 2의 우변 값을 K라 할 때, 상기 K를 계산하여 상기 K가 2dummy-1 이상이면 심볼을 1로 복호화하고, 상기 K가 0 이하이면 심볼을 0 으로 복호화하는 단계;
[수학식 1]
Figure 112007004098518-pat00002
[수학식 2]
Figure 112007004098518-pat00003
(여기서, v1은 절단된 후 남아있는 유효한 비트스트림의 값, v2는 절단된 후 잘려나간 비트스트림 값, dummy는 v2의 비트수, freq는 심볼의 확률값, high, low 는 심볼의 확률값이 존재하는 범위의 상한과 하한을 나타낸다.)
상기 K가 0 과 2dummy -1 사이에 있으면 앰비규어티가 발생했다고 결정하여 복호화를 중단하는 단계를 포함한다.
본 발명에 의한 스케일러블 BSAC 산술복호화 방법은 상기 (a)단계 전에 타겟 비트율을 참조하여 BSAC 오디오 데이터의 이용가능한 계층 수를 계산하는 단계; 및 복호화하고자 하는 BSAC 오디오 데이터 계층이 마지막 계층인지 체크하여, 마지막 계층이 아니면 BSAC 산술복호화를 수행하는 단계를 더 구비함이 바람직하다.
상기 기술적 과제를 이루기 위한 본 발명에 의한 스케일러블 BSAC 오디오 데이터 산술 복호화 장치는, 복호화하고자 하는 BSAC 오디오 데이터의 마지막 계층의 부가정보가 모두 복호화되었는지 체크하는 부가정보 체크부; 마지막 계층의 부가정보가 모두 복호화되었으면, BSAC 스마트 디코딩을 수행한 후 복호화를 종료하는 스마트 복호화부; 및 마지막 계층의 부가정보가 모두 복호화되지 않았으면, 상기 마지막 계층의 복호화를 종료하는 복호화종료부를 포함함을 특징으로 한다.
상기 스마트 복호화부의 BSAC 스마트 디코딩은 잘려진 비트스트림 이후에 읽어 들어야 할 정보를 이용하여 복호화할 경우, 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 복호화 될 심볼이 결정될 경우를 확인하여 무관하게 복호화가 가능하면 복호화를 계속 진행하고, 잘려진 비트스트림 이후에 읽어 들인 데이터에 의존되어 복호화 될 심볼이 결정될 경우에는 앰비규어티가 발생했다고 판단하고 복호화를 종료한다.
상기 스마트 복호화부는 복호화하고자 하는 심볼과 그 확률을 이용하여 산술복호화하는 심볼복호화부; 수학식 1 및 수학식 2의 우변 값을 K라 할 때, 상기 K를 계산하여 앰비규어티가 발생했는지 체크하는 앰비규어티(ambiguity) 체크부; 상기 K가 2dummy-1 이상이면 심볼을 1로 복호화하고, 상기 K가 0 이하이면 심볼을 0 으로 복호화하는 추가복호화부; 및 상기 K가 0 과 2dummy-1 사이에 있으면 앰비규어티가 발생했다고 결정하여 복호화를 중단하는 복호화중단부를 포함한다.
상기 복호화중단부는 부호비트에 대해, 상기 K가 0 과 2dummy-1 사이에 있으면 앰비규어티가 발생했다고 결정하고, 이전에 복호화된 샘플을 0 으로 설정함이 바람직하다.
본 발명에 의한 BSAC 오디오 데이터 산술복호화 장치는, 타겟 비트율을 참조하여 BSAC 오디오 데이터의 이용가능한 계층 수를 계산하는 계층수 계산부; 복호화하고자 하는 BSAC 오디오 데이터 계층이 마지막 계층인지 체크하는 마지막 계층 체크부; 및 상기 체크결과 마지막 계층이 아니면 BSAC 산술복호화를 수행하는 BSAC 산술복호화부를 더 구비함이 바람직하다.
그리고 상기 기재된 발명을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
이하, 첨부된 도면들을 참조하여 본 발명에 따른 스케일러블 오디오 데이터 산술복호화 방법 및 장치에 대해 상세히 설명한다.
도 3은 일반적인 이진 산술 복호화를 하기 위한 수도 코드(pseudo code)를 나타낸 것이다. 도 3에 기재된 수도 코드에 따르면 우선 현재의 frequency/low/high/value값에 의해 복호화된 심볼이 결정되며 이후에 low/high/value 값의 리스케일링(rescaling)과 업데이트(update)가 이루어진다.
도 4는 비트스트림이 절단(truncation) 되었을 경우의 절단점(truncation point) 부근에서의 버퍼에 입력된 값을 나타낸 것이다. 절단된 버퍼 인덱스(truncated buffer index) 이후의 비트스트림에는 더 이상 의미있는 정보가 없으므로 의미가 없는 값이며 여기서는 이 값을 v2라 하고 나머지 버퍼에 있는 값을 v1이라고 한다. 본 예에서는 v1비트(dummy bit)가 3bit이므로 v2의 범위는 0~7의 값을 가지게 된다.
도 5는 본 발명에 의한 스케일러블 BSAC 오디오 데이터 산술 복호화 장치의 구성을 블록도로 도시한 것으로서, 마지막 계층 부가정보 체크부(530), 스마트 복호화부(540) 및 복호화 종료부(550)를 포함하여 이루어진다.
상기 BSAC 산술복호화 장치는 계층수 계산부(500), 마지막 계층 체크부(510) 및 산술복호화부(520)를 더 구비함일 바람직하다. 상기 계층수 계산부(500)는 타겟 비트율(target bitrate)을 참조하여 BSAC 오디오 데이터의 이용가능한 계층 수(number of layers)를 계산한다.
상기 마지막 계층 체크부(510)는 복호화하고자 하는 BSAC 오디오 데이터 계층이 마지막 계층인지 체크한다. 상기 BSAC 산술복호화부(520)는 상기 체크결과 마지막 계층이 아니면 BSAC 산술복호화를 수행한다. 상기 마지막 계층 부가정보 체크부(530)는 복호화하고자 하는 BSAC 오디오 데이터의 마지막 계층의 부가정보가 모두 복호화되었는지 체크한다. 상기 스마트 복호화부(540)는 마지막 계층의 부가정보가 모두 복호화되었으면, BSAC 스마트 디코딩을 수행한 후 복호화를 종료한다.
상기 스마트 복호화부의 BSAC 스마트 디코딩은 잘려진 비트스트림 이후에 읽어 들어야 할 정보를 이용하여 복호화할 경우, 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 복호화 될 심볼이 결정될 경우를 확인하여 무관하게 복호화가 가능하면 복호화를 계속 진행하고, 잘려진 비트스트림 이후에 읽어 들인 데이터에 의존되어 복호화 될 심볼이 결정될 경우에는 앰비규어티(ambiguity)가 발생했다고 판단하고 복호화를 종료한다.
상기 복호화 종료부(550)는 마지막 계층의 부가정보가 모두 복호화되지 않았으면, 상기 마지막 계층의 복호화를 종료한다.
도 6은 상기 스마트 복호화부(540)의 보다 상세한 구성을 블록도로 도시한 것으로서, 심볼복호화부(600), 앰비규어티(ambiguity) 체크부(620), 추가 복호화부(640) 및 복호화 중단부(660)를 포함하여 이루어진다.
상기 심볼 복호화부(600)는 복호화하고자 하는 심볼과 그 확률을 이용하여 산술복호화한다. 상기 앰비규어티 체크부(620)는 수학식 1 및 수학식 2의 우변 값을 K라 할 때, 상기 K를 계산하여 앰비규어티가 발생했는지 체크한다. 상기 추가 복호화부(640)는 상기 K가 2dummy-1 이상이면 심볼을 1로 복호화하고, 상기 K가 0 이하이면 심볼을 0 으로 복호화한다.
[수학식 1]
Figure 112007004098518-pat00004
[수학식 2]
Figure 112007004098518-pat00005
(여기서, v1은 절단된 후 남아있는 유효한 비트스트림의 값, v2는 절단된 후 잘려나간 비트스트림 값, dummy는 v2의 비트수, freq는 심볼의 확률값, high, low는 심볼의 확률값이 존재하는 범위의 상한과 하한을 나타낸다.)
수학식 1과 수학식 2를 보다 상세히 설명하면 다음과 같다. 도 3에 도시된 수도 코드의 복호화(decoding) 수식을 v1과 v2로 나누어 전개한다.
만일 (v1 + v2 - low + 1)· 214 < (high - low +1)· freq 이면, 심볼(sym)은 1로 생성된다. 이를 v2를 중심으로 정리하면, 수학식 1과 같이 된다.
또한 만일 (v1 + v2 - low + 1)· 214 ≥ (high - low +1)· freq 이면, 심볼(sym)은 0 으로 생성된다. 이를 v2를 중심으로 정리하면, 수학식 2와 같이 된다.
수학식 1의 경우에는 만일 우변의 수식 값이 7보다 큰 경우에는 v2에 관계없이 1로 복호화되며, 수학식 2의 경우에는 우변의 수식값이 0보다 작은 경우에는 v2에 관계없이 0으로 복호화된다. 그 이외의 경우에는 복호화 앰비규어티가 발생하여 복호화를 종료한다.
상기 복호화중단부(660)는 상기 K가 0 과 2dummy-1 사이에 있으면 앰비규어티가 발생했다고 결정하여 복호화를 중단한다. 특히 부호비트에 대해서는, 상기 K가 0 과 2dummy-1 사이에 있으면 앰비규어티가 발생했다고 결정하고, 이전에 복호화된 샘플을 0 으로 설정한다.
비트플레인 상의 부호비트 복호화는 다음과 같이 이루어진다. MPEG-4 BSAC 비트스트림의 복호화에서는 비트플레인(bitplane) 상의 값 중 처음으로 0이 아닌 샘플이 복호화된 후 그에 해당하는 부호(sign)를 복호화 한다. 그런데 만일 부호값에서 앰비규어티 에러가 발생하였다고 바로 복호화를 종료하면 바로 이전에 복호화된 0이 아닌 샘플의 부호를 알 수 없다. 이러한 이유로 부호 값에서 복호화가 종료된 경우 바로 이전에 복호화된 샘플을 0으로 세팅하여 종료한다.
도 7은 본 발명에 의한 스케일러블 BSAC 오디오 데이터의 산술복호화 방법을 흐름도로 도시한 것으로서, 이를 참조하여 본 발명에 의한 스케일러블 BSAC 오디오 데이터의 산술복호화 방법의 일예를 설명하기로 한다.
먼저, 소정의 타겟 비트율을 갖는 비트스트림이 입력되면(700단계), 상기 타겟 비트율을 참조하여 BSAC 오디오 데이터의 이용가능한 계층(available layer)의 수(number)를 계산한다.(710단계) 그리고 나서 복호화하고자 하는 BSAC 오디오 데이터 계층이 마지막 계층인지 체크하여(720단계), 마지막 계층이 아니면 BSAC 산술복호화를 수행한다.(730단계)
만일 복호화하고자 하는 BSAC 오디오 데이터가 마지막 계층이면 상기 마지막 계층의 부가정보가 모두 복호화되었는지 체크한다.(740단계) 마지막 계층의 부가정보가 모두 복호화되었으면, BSAC 스마트 복호화를 수행한 후 복호화를 종료하고, 마지막 계층의 부가정보가 모두 복호화되지 않았으면, 상기 마지막 계층의 복호화를 종료한다.(750단계)
상기 BSAC 스마트 복호화는 잘려진 비트스트림 이후에 읽어 들어야 할 정보를 이용하여 복호화할 경우, 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 복호화 될 심볼이 결정될 경우를 확인하여, 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 복호화가 가능하면 복호화를 계속 진행하고, 잘려진 비트스트림 이후에 읽어 들인 데이터에 의존하여 복호화 될 심볼이 결정될 경우에는 앰비규어티가 발생했다고 판단하고 복호화를 종료한다.
부호비트 복호화는 다음과 같이 이루어진다. 잘려진 비트스트림 이후에 읽어 들인 데이터에 의존하여 복호화 될 심볼이 결정될 경우에는 앰비규어티가 발생했다고 판단한다. 그리고 나서, 부호비트에 대해, 앰비규어티가 발생했다고 결정되면, 이전에 복호화된 샘플을 0 으로 설정하고 복호화를 종료한다.
도 8은 750단계의 BSAC 스마트 복호화에 대한 일 예를 흐름도로 도시한 것이다. 먼저, 산술부호화된 스케일러블 비트스트림(truncated bitstream)에서 복호화할 심볼을 결정하고(800단계), 상기 결정된 심볼의 확률을 예측한다.(810단계)
상기 예측된 확률을 이용하여 심볼을 산술복호화하여 심볼을 생성한다.(820단계) 수학식 1 및 수학식 2의 우변 값을 K라 할 때, 만일 상기 K를 계산하여 K가 0 과 2dummy-1 사이에 있으면(830단계), 앰비규어티가 발생했다고 결정하여 산술 복호화를 중단한다.(840단계)
만일 상기 K가 0 이하이면(850단계), 심볼은 0 으로 복호화하고(860단계), K가 2dummy-1 이상이면 심볼은 1로 복호화한다.(870단계)
도 9는 본 발명에 의한 스케일러블 BSAC 비트스트림의 복원계속여부 판단방법을 적용하여 추가적으로 더 복호화한 예를 보여준다. 도 9에서는 5개의 샘플이 추가적으로 복호화 됨을 볼 수 있다.
MPEG-4 BSAC 복호화에서는 비트플레인(bitplane) 상의 값 중 처음으로 0이 아닌 샘플이 복호화된 후 그에 해당하는 부호(sign)를 복호화 한다. 그런데 만일 부호값에서 앰비규어티가 발생하였다고 결정되어 복호화를 종료하면 바로 이전에 복호화된 0이 아닌 샘플의 부호를 알 수 없다. 이러한 이유로 부호 값에서 복호화가 종료된 경우 바로 이전에 복호화된 샘플을 0으로 세팅하여 종료한다.
도 10은 부호(sign) 비트에서 앰비규어티가 발생할 경우 이를 처리하는 예를 도시한 것이다.
본 발명에 의한 비트스트림의 산술복호화는 주어진 타겟 비트율에 대응하는 인터미디에이트(intermediate) 계층를 복호화하는 효율적인 방법을 제공한다. 이는 복호화 버퍼에 들어가는 비트가 없다고 하더라도 복호화 버퍼 안에는 여전히 의미있는 정보를 포함하고 있다는 사실에 기초한 것이다. 복호화 과정은 심볼에 앰비규어티가 존재하지 않는 점까지 계속된다. 다음의 수도 코드는 산술 복호화 모듈에 서 앰비규어티를 검출하는 알고리즘을 나타낸다. 변수 num_dummy_bits 는 절단으로 인해 value 버퍼에 들어가 있지 않는 비트수를 나타낸다.
int ambiguity_check(int freq)
{
/* if there is no ambiguity, returns 1 */
/* otherwise, returns 0 */
upper = 1<<num_dummy_bits;
decisionVal = ((high-low)*freq>>PRE_SHT)-value+low-1;
if(decisionVal>upper || decisionVal<0) return 0;
else return 1;
}
부호비트 에러를 방지하기 위해, 현재의 스펙트럴 라인의 스펙트럴 값은 부호비트를 복호화하는 동안 앰비규어티가 발생할 때 0으로 설정된다. 본 발명에 의한 산술복호화 과정은 모든 인덱스 변수는 이전의 산술 복호화 과정으로부터 수행된다.
본 발명은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터(정보 처리 기능을 갖는 장치를 모두 포함한다)가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 장치의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
본 발명에 의한 스케일러블 BSAC 오디오 데이터 산술 복호화 방법 및 장치에 의하면, MPEG-4 BSAC 복호화기에서 바이트 레벨의 스케일러빌리티(scalablility)를 제공할 수 있으며, 중간 계층 중 낮은 전송율에서 더 큰 효과가 있다. 비트스트림이 절단(truncation)되었을 경우에도 복호화 종료 시점을 알 수 있게 하며, 잘려나간 부분에 대해서도 부가적인 복호화가 가능하다.

Claims (13)

  1. (a) 복호화하고자 하는 BSAC 오디오 데이터의 마지막 계층에 대한 부가정보가 모두 복호화되었는지 여부를 체크하는 단계;
    (b) 마지막 계층에 대한 부가정보가 모두 복호화되었으면, 잘려진 비트스트림 이후에 읽어 들어야 할 정보를 이용하여 BSAC 스마트 복호화할 경우, 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 심볼이 복호화되는 경우인지 여부를 판단하는 단계;
    (c) 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 심볼이 복호화되는 경우이면 복호화를 계속 진행하는 단계; 및
    (d) 잘려진 비트스트림 이후에 읽어 들인 데이터에 의존되어 심볼이 복호화되는 경우이면 복호화를 종료하는 단계를 포함하는 스케일러블 BSAC 오디오 데이터 산술 복호화 방법.
  2. 제1항에 있어서, 상기 BSAC 스마트 복호화는
    복호화하고자 하는 심볼과 그 확률을 이용하여 산술복호화하는 단계;
    수학식 1 및 수학식 2의 우변 값을 K라 할 때, 상기 K를 계산하여 상기 K가 2dummy-1 이상이면 심볼을 1로 복호화하고, 상기 K가 0 이하이면 심볼을 0 으로 복호화하는 단계;
    [수학식 1]
    Figure 112010038390806-pat00006
    [수학식 2]
    Figure 112010038390806-pat00007
    (여기서, v1은 절단된 후 남아있는 유효한 비트스트림의 값, v2는 절단된 후 잘려나간 비트스트림 값, dummy는 v2의 비트수, freq는 심볼의 확률값, high, low는 심볼의 확률값이 존재하는 범위의 상한과 하한을 나타낸다.)
    상기 K가 0 과 2dummy-1 사이에 있으면 앰비규어티(ambiguity)가 발생했다고 결정하여 복호화를 중단하는 단계를 포함하는, 스케일러블 BSAC 오디오 데이터 산술 복호화 방법.
  3. 제1항에 있어서, 상기 (d)단계는
    잘려진 비트스트림 이후에 읽어 들인 데이터에 의존하여 복호화 될 심볼이 결정될 경우에는 앰비규어티가 발생했다고 판단하는 단계; 및
    부호비트에 대해, 앰비규어티가 발생했다고 결정되면, 이전에 복호화된 샘플을 0 으로 설정하고 복호화를 종료하는 단계를 포함함을 특징으로 하는, 스케일러블 BSAC 오디오 데이터 산술 복호화 방법.
  4. 제1항에 있어서, 상기 (a)단계는
    타겟 비트율을 참조하여 BSAC 오디오 데이터의 이용가능한 계층 수를 계산하는 단계; 및
    복호화하고자 하는 BSAC 오디오 데이터 계층이 마지막 계층인지 체크하여, 마지막 계층이 아니면 BSAC 산술복호화를 수행하는 단계를 더 구비함을 특징으로 하는 스케일러블 BSAC 오디오 데이터 산술 복호화 방법.
  5. 복호화하고자 하는 BSAC 오디오 데이터의 마지막 계층에 대한 부가정보가 모두 복호화되었는지 여부를 체크하는 부가정보 체크부;
    마지막 계층에 대한 부가정보가 모두 복호화되었으면, 잘려진 비트스트림 이후에 읽어 들어야 할 정보를 이용하여 BSAC 스마트 복호화할 경우 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 심볼이 복호화될지 여부를 판단하고, 무관하게 심볼이 복호화되는 경우이면 복호화를 계속 진행하고, 잘려진 비트스트림 이후에 읽어 들인 데이터에 의존되어 심볼이 복호화되는 경우이면 복호화를 종료하는 스마트 복호화부를 포함하는 것을 특징으로 하는 스케일러블 BSAC 오디오 데이터 산술 복호화 장치.
  6. 제5항에 있어서, 상기 스마트 복호화부는
    복호화하고자 하는 심볼과 그 확률을 이용하여 산술복호화하는 심볼복호화부;
    수학식 1 및 수학식 2의 우변 값을 K라 할 때, 상기 K를 계산하여 앰비규어티가 발생했는지 체크하는 앰비규어티 체크부;
    상기 K가 2dummy-1 이상이면 심볼을 1로 복호화하고, 상기 K가 0 이하이면 심볼을 0 으로 복호화하는 추가복호화부; 및
    [수학식 1]
    Figure 112010038390806-pat00008
    [수학식 2]
    Figure 112010038390806-pat00009
    (여기서, v1은 절단된 후 남아있는 유효한 비트스트림의 값, v2는 절단된 후 잘려나간 비트스트림 값, dummy는 v2의 비트수, freq는 심볼의 확률값, high, low는 심볼의 확률값이 존재하는 범위의 상한과 하한을 나타낸다.)
    상기 K가 0 과 2dummy-1 사이에 있으면 앰비규어티가 발생했다고 결정하여 복호화를 중단하는 복호화중단부를 포함함을 특징으로 하는 스케일러블 BSAC 오디오 데이터 산술 복호화 장치.
  7. 제6항에 있어서, 상기 스마트 복호화부는
    부호비트에 대해, 상기 K가 0 과 2dummy-1 사이에 있으면 ambiguity가 발생했다고 결정하고, 이전에 복호화된 샘플을 0 으로 설정함을 특징으로 하는, 스케일러블 BSAC 오디오 데이터 산술 복호화 장치.
  8. 제6항에 있어서,
    타겟 비트율을 참조하여 BSAC 오디오 데이터의 이용가능한 계층 수를 계산하는 계층수 계산부;
    복호화하고자 하는 BSAC 오디오 데이터 계층이 마지막 계층인지 체크하는 마지막 계층 체크부; 및
    상기 체크결과 마지막 계층이 아니면 BSAC 산술복호화를 수행하는 BSAC 산술복호화부를 더 구비함을 특징으로 하는 스케일러블 BSAC 오디오 데이터 산술 복호화 장치.
  9. 제1항 내지 제4항 중 어느 한 항에 기재된 발명을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  10. (a) 복호화하고자 하는 BSAC 오디오 데이터의 마지막 계층에 대한 부가정보가 모두 복호화되었는지 여부를 체크하는 단계;
    (b) 마지막 계층에 대한 부가정보가 모두 복호화되지 않았으면, 상기 마지막 계층의 복호화를 종료하는 단계;
    (c) 마지막 계층에 대한 부가정보가 모두 복호화되었으면, 잘려진 비트스트림 이후에 읽어 들어야 할 정보를 이용하여 BSAC 스마트 복호화할 경우 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 심볼이 복호화되는 경우인지 여부를 판단하는 단계;
    (d) 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 심볼이 복호화되는 경우이면 복호화를 계속 진행하는 단계; 및
    (e) 잘려진 비트스트림 이후에 읽어 들인 데이터에 의존되어 심볼이 복호화되는 경우이면 복호화를 종료하는 단계를 포함하는 스케일러블 BSAC 오디오 데이터 산술 복호화 방법.
  11. 복호화하고자 하는 BSAC 오디오 데이터의 마지막 계층에 대한 부가정보가 모두 복호화되었는지 여부를 체크하는 부가정보 체크부;
    마지막 계층에 대한 부가정보가 모두 복호화되었으면, 잘려진 비트스트림 이후에 읽어 들어야 할 정보를 이용하여 BSAC 스마트 복호화할 경우 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 심볼이 복호화될지 여부를 판단하고, 무관하게 심볼이 복호화되는 경우이면 복호화를 계속 진행하고, 잘려진 비트스트림 이후에 읽어 들인 데이터에 의존되어 심볼이 복호화되는 경우이면 복호화를 종료하는 스마트 복호화부; 및
    마지막 계층에 대한 부가정보가 모두 복호화되지 않았으면, 상기 마지막 계층의 복호화를 종료하는 복호화종료부를 포함하는 것을 특징으로 하는 스케일러블 BSAC 오디오 데이터 산술 복호화 장치.
  12. (a) 복호화하고자 하는 BSAC 오디오 데이터의 마지막 계층의 부가정보가 모두 복호화되었는지 체크하는 단계; 및
    (b) 마지막 계층의 부가정보가 모두 복호화되었으면, BSAC 스마트 복호화를 수행한 후 복호화를 종료하고, 마지막 계층의 부가정보가 모두 복호화되지 않았으면, 상기 마지막 계층의 복호화를 종료하는 단계를 포함함을 특징으로 하고,
    상기 (b)단계의 스마트 복호화는
    (b1) 잘려진 비트스트림 이후에 읽어 들어야 할 정보를 이용하여 복호화할 경우, 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 복호화 될 심볼이 결정될 경우를 확인하는 단계;
    (b2) 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 복호화가 가능하면 복호화를 계속 진행하는 단계; 및
    (b3) 잘려진 비트스트림 이후에 읽어 들인 데이터에 의존하여 복호화 될 심볼이 결정될 경우에는 앰비규어티가 발생했다고 판단하고 복호화를 종료하는 단계를 포함하는 스케일러블 BSAC 오디오 데이터 산술 복호화 방법.
  13. 복호화하고자 하는 BSAC 오디오 데이터의 마지막 계층의 부가정보가 모두 복호화되었는지 체크하는 부가정보 체크부; 및
    마지막 계층의 부가정보가 모두 복호화되었으면, BSAC 스마트 디코딩을 수행한 후 복호화를 종료하는 스마트 복호화부;
    마지막 계층의 부가정보가 모두 복호화되지 않았으면, 상기 마지막 계층의 복호화를 종료하는 복호화종료부를 포함함을 특징으로 하고,
    상기 스마트 복호화부의 스마트 디코딩은
    잘려진 비트스트림 이후에 읽어 들어야 할 정보를 이용하여 복호화할 경우, 잘려진 비트스트림 이후에 읽어 들인 데이터에 무관하게 복호화 될 심볼이 결정될 경우를 확인하여 무관하게 복호화가 가능하면 복호화를 계속 진행하고, 잘려진 비트스트림 이후에 읽어 들인 데이터에 의존되어 복호화 될 심볼이 결정될 경우에는 앰비규어티가 발생했다고 판단하고 복호화를 종료하는, 스케일러블 BSAC 오디오 데이터 산술 복호화 장치.
KR1020070004419A 2007-01-15 2007-01-15 스케일러블 BSAC(Bit Sliced Arithmetic Coding) 오디오 데이터 산술복호화 방법 및 장치 KR101001745B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070004419A KR101001745B1 (ko) 2007-01-15 2007-01-15 스케일러블 BSAC(Bit Sliced Arithmetic Coding) 오디오 데이터 산술복호화 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070004419A KR101001745B1 (ko) 2007-01-15 2007-01-15 스케일러블 BSAC(Bit Sliced Arithmetic Coding) 오디오 데이터 산술복호화 방법 및 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020050093906A Division KR20070038699A (ko) 2005-10-06 2005-10-06 스케일러블 오디오 데이터 산술복호화 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20070038992A KR20070038992A (ko) 2007-04-11
KR101001745B1 true KR101001745B1 (ko) 2010-12-15

Family

ID=38160058

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070004419A KR101001745B1 (ko) 2007-01-15 2007-01-15 스케일러블 BSAC(Bit Sliced Arithmetic Coding) 오디오 데이터 산술복호화 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101001745B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005033373A (ja) 2003-07-09 2005-02-03 Seiko Epson Corp データ送信装置およびデータ受信装置、データ送信方法およびデータ受信方法、データ通信システム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005033373A (ja) 2003-07-09 2005-02-03 Seiko Epson Corp データ送信装置およびデータ受信装置、データ送信方法およびデータ受信方法、データ通信システム

Also Published As

Publication number Publication date
KR20070038992A (ko) 2007-04-11

Similar Documents

Publication Publication Date Title
TWI449033B (zh) 用以編碼係數節段之音訊編碼器和方法、用以解碼已編碼音訊流之音訊解碼器和方法、及電腦程式
CA2604521A1 (en) Lossless encoding of information with guaranteed maximum bitrate
CN104700840B (zh) 用于音频编码/解码/转码的频率域中水印插入
US20180308497A1 (en) Encoding and decoding of digital audio signals using variable alphabet size
KR101330209B1 (ko) 스케일러블 데이터 산술 복호화 방법
CN1717719A (zh) 音频编码
KR101001745B1 (ko) 스케일러블 BSAC(Bit Sliced Arithmetic Coding) 오디오 데이터 산술복호화 방법 및 장치
KR20070038699A (ko) 스케일러블 오디오 데이터 산술복호화 방법 및 장치
KR101001746B1 (ko) 스케일러블 오디오 데이터 산술 복호화 방법 및 장치
CN100568741C (zh) 算术解码方法和设备及截去音频数据比特流的方法和设备
CA2718865C (en) Rate-distortion optimization for advanced audio coding
CN1366659A (zh) 具有音调变化检测的纠错方法
US20090063161A1 (en) Method and apparatus for encoding and decoding continuation sinusoidal signal of audio signal
JP6509916B2 (ja) 連結されたrom−ramテーブルに基づいて算術コーディングを遂行する方法及び装置
Bauer et al. List-Decoding of MPEG coded audio signals

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20131128

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141127

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151127

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161129

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20171129

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee