KR101253225B1 - 오디오 메타데이터 검증 - Google Patents
오디오 메타데이터 검증 Download PDFInfo
- Publication number
- KR101253225B1 KR101253225B1 KR1020077023402A KR20077023402A KR101253225B1 KR 101253225 B1 KR101253225 B1 KR 101253225B1 KR 1020077023402 A KR1020077023402 A KR 1020077023402A KR 20077023402 A KR20077023402 A KR 20077023402A KR 101253225 B1 KR101253225 B1 KR 101253225B1
- Authority
- KR
- South Korea
- Prior art keywords
- dialnorm
- bitstream
- bits
- audio
- metadata
- Prior art date
Links
- 238000012795 verification Methods 0.000 title claims abstract description 110
- 238000000034 method Methods 0.000 claims description 62
- 238000012545 processing Methods 0.000 claims description 6
- 238000003672 processing method Methods 0.000 claims 3
- 238000010200 validation analysis Methods 0.000 abstract description 16
- 230000008859 change Effects 0.000 abstract description 8
- 238000007906 compression Methods 0.000 description 49
- 230000006835 compression Effects 0.000 description 49
- 230000006870 function Effects 0.000 description 47
- 230000008569 process Effects 0.000 description 43
- 238000005259 measurement Methods 0.000 description 39
- 238000010586 diagram Methods 0.000 description 12
- 238000012937 correction Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 6
- 238000012857 repacking Methods 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000005236 sound signal Effects 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 230000009467 reduction Effects 0.000 description 4
- 101000651958 Crotalus durissus terrificus Snaclec crotocetin-1 Proteins 0.000 description 3
- 101100258328 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) crc-2 gene Proteins 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000013144 data compression Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000000873 masking effect Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000012856 packing Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000000593 degrading effect Effects 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000012958 reprocessing Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/02—Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
- G11B27/031—Electronic editing of digitised analogue information signals, e.g. audio or video signals
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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/16—Vocoder architecture
- G10L19/167—Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (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)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
오디오, 오디오에 대해 정확하게 되도록 한 메타데이터, 메타데이터 검증정보를 나타내는 데이터 비트들을 포함하는 디지털 비트스트림으로서, 메타데이터의 전부 혹은 일부는 오디오에 대해 정확하지 않을 수 있다. 메타데이터 검증정보는 메타데이터가 오디오에 대해 정확한지 여부를 검출하고, 정확하지 않으면, 정확하도록 메타데이터를 변경할 수 있다. 메타데이터를 검출하고 변경할 수 있는 메타데이터 검증정보는 메타데이터의 정확한 버전의 카피, 혹은 데이터 압축된 카피를 포함할 수 있다.
Description
본 발명은 오디오 신호 처리에 관한 것으로, 특히 이러한 시스템들에 채용되는 메타데이터의 검증 및 정정에 관한 것이다. 발명은 돌비 디지털(AC-3), 돌비 디지털 플러스, 및 돌비 E. 돌비로서 알려진 오디오 코딩 시스템에서 특히 유용하며, 돌비 디지털, 돌비 디지털 플러스, 및 돌비 E. 돌비는 돌비 래보레토리스 라이센싱 코포레이션의 등록상표들이다. 발명의 면들은 MPEG-4 AAC와 같은 다른 유형들의 오디오 코딩에서 사용될 수 있다.
돌비 디지털 코딩의 상세는 다음 참조문헌들에 개시되어 있다:
ATSC Standard A52/A: Digital Audio Compression Standard (AC-3), Revision A, Advanced Television Systems Committee, 20 Aug. 2001. A/52A 문헌은 http://www.atsc.org/standards.html에 WWW(World Wide Web)에서 입수할 수 있다.
Flexible Perceptual Coding for Audio Transmission and Storage," by Craig C. Todd, et al, 96th Convention of the Audio Engineering Society, February 26, 1994, Preprint 3796;
"Design and Implementation of AC-3 Coders," by Steve Vernon, IEEE Trans. Consumer Electronics, Vol. 41, No. 3, August 1995.
"The AC-3 Multichannel Coder" by Mark Davis, Audio Engineering Society Preprint 3774, 95th AES Convention, October, 1993.
"High Quality, Low-Rate Audio Transform Coding for Transmission and Multimedia Applications," by Bosi et al, Audio Engineering Society Preprint 3365, 93rd AES Convention, October, 1992.
미국특허 5,583,962; 5,632,005; 5,633,981; 5,727,119; 및 6,021,386.
돌비 디지털 플러스 코딩의 상세는 "Introduction to Dolby Digital Plus, an Enhancement to the Dolby Digital Coding System," AES Convention Paper 6196, 117th AES Convention, October 28, 2004에 개시되어 있다.
돌비 E 코딩의 상세는 "Efficient Bit Allocation, Quantization, and Coding in an Audio Distribution System", AES Preprint 5068, 107th AES Conference, August 1999 및 "Professional Audio Coder Optimized for Use with Video", AES Preprint 5033, 107th AES Conference August 1999에 개시되어 있다.
MPEG-2 AAC 코딩의 상세는 ISO/IEC 13818- 7: 1997(E) "Information technology -Generic coding of moving pictures and associated audio information -, Part 7: Advanced Audio Coding (AAC)," International Standards Organization (April 1997); "MP3 and AAC Explained" by Karlheinz Brandenburg, AES 17th International Conference on High Quality Audio Coding, August 1999; and "ISO/IEC MPEG-2 Advanced Audio Coding" by Bosi, et. al., AES preprint 4382, 101st AES Convention, October 1996에 개시되어 있다.
돌비 엔코더들, MPEG 엔코더들, 그외를 포함하여, 각종의 지각(perceptual) 코더들의 개요는 "Overview of MPEG Audio: Current and Future Standards for Low-Bit-Rate Audio Coding," by Karlheinz Brandenburg and Marina Bosi, J. Audio Eng. Soc, Vol. 45, No. 1/2, January/February 1997에 개시되어 있다.
위에 인용된 참조문헌들 전부는 각각의 전체를 여기 참조문헌으로 포함시킨다.
본 발명이 AC-3에서 사용으로 제한되는 것은 아닐지라도, 편의상 AC-3 시스템의 환경에서 기술될 것이다. AC-3는 디지털 텔레비전, DVD 비디오, 및 DVD 오디오를 포함한 애플리케이션들에서 오디오의 전달(delivery)을 위해 사용되는 디지털 오디오 데이터 압축 시스템이다. AC-3 비트스트림은 2가지 주요 성분들로서, 오디오 콘텐츠와 메타데이터로 구성된다. 1 내지 6 채널들의 오디오 콘텐츠는 지각 오디오 코딩을 사용하여 압축된 데이터이다. AC-3에서 여러 가지 유형들의 메타데이터 중에는 청취 환경에 전달되는 프로그램의 사운드를 특정하게 변경하도록 된 몇몇의 메타데이터 파라미터들이 있다. 이들을 이하 기술한다.
AC-3 시스템은 프레임들의 바이너리 정보로, 데이터 압축된 오디오로 구성된 비트스트림을 전달한다. 각 프레임은 오디오 콘텐츠와 1536 샘플들의 디지털 오디오에 대한 메타데이터를 내포한다. 48kHz의 샘플링 레이트에 있어서, 이것은 32 ms의 디지털 오디오 혹은 오디오의 초 당 31.25 프레임들의 레이트를 나타낸다. 각 프레임 내 내포된 비트들의 수는 전달되는 채널들의 수 및 채널들에 적용되는 데이터 압축량에 따른다. 예를 들면, DVD 비디오디스크들은 통상적으로 초 당 448,000 비트 데이터 레이트의 6채널들의 오디오 혹은 1792 바이트들의 프레임 크기(바이트는 8비트)를 전달한다.
각각의 AC-3 프레임은 구획(section)들로 분할된다. 이들은 (1) 동기화 워드(SW)를 내포하는 동기화 정보(SI), 및 2개의 오류정정 워드들 중 제1 워드(CRC1); (2) 메타데이터의 대부분을 내포하는 비트스트림 정보(BSI); (3) 데이터 압축된 오디오 콘텐츠를 내포하는 6개의 오디오 블록들(AB0 내지 AB5); (4) 오디오 콘텐츠가 압축된 후에 남겨진 임의의 미사용된 비트들을 내포하는 폐(waste) 비트들(W); (5) 더 많은 메타데이터를 내포하는 보조(AUX) 정보; 및 (6) 두 개의 오류정정 워드들 중 제2 워드(CRC2)를 포함한다.
이들은 후술하는 도 9에 도시되었다. 지각 오디오 데이터 압축 및 동반한 메타데이터를 포함하는 AC-3 프레임은 위에 인용된 AC-3 참조문헌들에, 그리고 이하 도 9의 설명에 상세히 기술되어 있다.
위에 언급된 바와 같이, AC-3에서는 청취 환경에 전달되는 프로그램의 사운드를 특정하게 변경하도록 된 몇몇의 오디오 메타데이터 파라미터들이 있다. 이들 메타데이터 파라미터들 중 3개는 재생 신호 레벨과 동적범위(dynamic range)인 DIALNORM, COMPR 및 DYNRNG에 관계된 것이다. DIALNORM 파라미터는 오디오 재생 신호 범위에 영향을 미치며, 관계된 COMPR 및 DYNRNG 파라미터들 -이하 "동적범위 압축"이라고도 함- 은 오디오 재생 신호의 동적 범위에 영향을 미친다. 디코딩 모드에 따라, 디코딩에서 COMPR 및 DYNRNG 파라미터들 둘 다는 아니고 이들 중 하나가 사용되거나, 어느 것도 사용되지 않는다. 통상적으로 DIALNORM은 사용자에 의해 설 정되며, 자동으로는 생성되지 않으나, 어떠한 값도 사용자에 의해 설정되지 않는다면 내정된 DIALNORM 값이 있다. 예를 들면, 사용자, 또는 "콘텐트 작성자(creator)"는 AC-3 엔코더 외부에 프로세스 혹은 디바이스로 소리세기(loudness) 측정을 행하고 이어서 결과를 엔코더에 전송할 수 있다. 따라서, DIALNORM 파라미터 값을 정확하게 설정하기 위해 사용자에게 의지한다. COMPR 및 DYNRNG 파라미터들은, 이들이 DIALNORM 파라미터들에 관계될지라도, 통상적으로 사용자가 설정한 DIALNORM 파라미터 값 및 다수의 동적범위 압축 프로파일들(혹은 프로파일 없이. 이것은 DIALNORM을 적용하는 결과로 되나 최대 동적범위로 재생될 수 있게 한다) 중 하나에 응하여 엔코딩 동안 자동으로 계산된다. 이러한 프로파일 각각은 어택 및 릴리스 시정수들, 및 압축비들을 포함하는 표준 오디오 동적범위 압축 파라미터 정보를 내포한다. 청취 환경에서 사운드에 영향을 미치는 이외 다른 메타데이터 파라미터들은 각종의 "다운믹싱(downmixing)" 파라미터들로서 CLEV, CMIXLEV, SLEV, SURMIXLEV, MIXLEVEL 및 MIXLEVEL2를 포함한다. 이러한 다운믹싱 메타데이터는 원 5.1 채널들을 소수의 재생 채널들로서 예를 들면 하나 혹은 2개의 채널들로 다운믹싱하기 위해 디코더에 명령들을 제공한다.
DIALNORM 파라미터는 임의의 AC-3 비트스트림을 디코딩할 때 대화의 균일한 재생을 할 수 있게 한다. 보통의 대화의 주관적 레벨이 기준으로서 사용된다. 이에 따라, 재생 시스템 이득은 대화에 대한 청취자의 원하는 재생 음압 레벨, 및 DIALNORM 값 둘 다의 함수가 된다. 원리적으로 DIALNORM 값이 재생 이득을 조정하기 위해 디코딩(디지털 영역에서 혹은 아날로그 영역에서)에 이어 시간 영역에서 적용될 수도 있을지라도, AC-3 디코더들은 통상적으로, 재생 이득이 조정되는 것으로서 이득을 스케일링하기 위해 디코더 내에서 디지털 영역에서 DIALNORM 값을 채용한다.
오디오 콘텐츠 내 대화의 레벨을 편리하고 쉽게 측정하는 유용한 도구들(예를 들면 돌비 LM100 소리세기 계기)가 있고 AC-3가 대화의 레벨을 전달하는(DIALNORM 파라미터를 사용하여) 메타데이터를 제공하지만, 압축된 오디오를 PCM으로 완전하게 디코딩하고 공인된 계측 기술로 소리세기 측정을 수행함이 없이는, AC-3 비트스트림 내 DIALNORM 값이 정확하게 설정되고 오디오의 실제 대화 소리세기 값에 부합하는지를 검증할 방법은 없다. 이러한 완전-디코딩 방법은 "Method for Correcting the Playback Loudness and Dynamic Range of AC-3 (Dolby Digital) Compressed Audio Information" 명칭의 Smithers 등의 2004년 7월 1일에 출원된 미국특허출원번호 10/884,177에 기술되어 있다. 이 출원은 전부를 참조문헌으로 여기 포함시킨다.
AC-3 비트스트림 내 DIALNORM 파라미터가 부정확할 수 있는지는 몇가지 서로 다른 이유들이 있다. 첫째로, 위에 언급된 바와 같이, 각각의 AC-3 엔코더는 DIALNORM 값이 콘텐츠 작성자에 의해 설정되지 않은 경우 비트스트림의 생성동안 사용되는 내정된 DIALNORM 값을 갖는다. 이 내정값은 일반적으로 -27dB로서 선택되는데, 오디오의 실제 대화 소리세기 레벨과는 실질적으로 다를 수 있다. 두 번째로, 콘텐츠 작성자가 소리세기를 측정하고 이에 따라 DIALNORM 값을 설정할지라도, 권고되는 AC-3 소리세기 측정 방법에 준하지 않는 소리세기 측정 알고리즘 혹은 계 기가 사용되었을 수도 있어, 부정확한 DIALNORM 값을 초래할 수 있다. 세 번째로, AC-3 비트스트림이 콘텐츠 작성자에 의해 정확하게 측정되어 설정된 DIALNORM 값을 사용하여 생성되었을지라도, 비트스트림의 전송 및/또는 저장동안에 부정확한 값으로 변경되었을 수도 있다. 예를 들면, AC-3 비트스트림들이 부정확한 DIALORM 메타데이터 정보를 사용하여 디코딩되고, 수정되고 이어서 재 엔코딩되는 것은 텔레비전 방송 애플리케이션들에서는 다반사이다. 그러므로, DIALORM 값이 항시 AC-3 비트스트림 내 내포되어 있어도, 이것은 틀리거나 부정확할 수 있고 따라서 청취 경험의 질에 부정적인 영향을 미칠 수 있다.
따라서, AC-3 비트스트림 내 DIALORM 값이 콘텐츠 작성자에 의해 정확하게 설정되고 분배 및 전송 동안 변경되지 않았음을 검증하는 방법에 대한 필요성이 있다. 바람직하게, 이러한 검증은 비트스트림이 현존의 AC-3 디코더들과 호환되는 상태에 있도록(즉, 기존과의 호환성이 보존된다) AC-3 비트스트림의 표준 신택스를 변경하지 않을 것이다.
도 1은 본 발명의 면들에 따라 비트스트림을 생성하기 위한 장치의 개략적인 기능 블록도이다.
도 2는 비트스트림에 메타데이터 검증 데이터를 위한 포맷의 예의 개념적 표현이다.
도 3은 도 4의 흐름도에서 판단 단계의 상세를 나타낸 판단 흐름도와 유사한 것이다.
도 4는 비트스트림이 정확한 메타데이터 및 부합하는 메타데이터 검증 데이터를 가짐을 확실시하는 것에 관계된 발명의 면들을 이해하는데 유용한 판단 흐름도와 유사한 것이다.
도 5는 도 4의 단계들 404 내지 413의 여러 서브-단계들을 실시하기 위한 장치의 개략적 기능 블록도이다.
도 6a는 도 4의 단계들 408 내지 410의 부분을 실시하기 위한 장치의 개략적 기능 블록도이다.
도 6b는 도 4의 단계들 408 및 411 내지 413의 부분을 실시하기 위한 장치의 개략적 기능 블록도이다.
도 7은 도 6a의 비트스트림 재 패킹 기능을 실시하기 위한 장치의 개략적 기능 블록도이다.
도 8은 검증 데이터 인식 디코딩에 관계된 발명의 면들을 이해하는데 유용한 판단 흐름도와 유사한 것이다.
도 9a는 한 프레임의 AC-3 일련의 코딩된 비트스트림을 예시한 개략도이다. 축적에 맞춘 것은 아니다.
도 9b는 AC-3 일련의 코딩된 비트스트림의 SI 부분을 상세히 예시한 개략도이다. 실제 크기는 아니다.
도 9c는 AC-3 일련의 코딩된 비트스트림의 비트스트림 헤더 정보(BSI) 부분을 상세히 예시한 개략도이다. 축적에 맞춘 것은 아니다.
도 9d는 AC-3 일련의 코딩된 비트스트림의 오디오 블록 부분을 상세히 예시 한 개략도이다. 축적에 맞춘 것은 아니다.
도 9e는 AC-3 엔코더 혹은 엔코딩 기능의 개략적인 기능 블록도이다.
도 10a는 3개의 오디오 아이템들의 DIALNORM 레벨 및 동적범위를 나타낸 가설 그래프이다.
도 10b는 재생동안 3개의 오디오 아이템들의 DIALNORM 레벨 및 동적범위를 나타낸 가설 그래프이다.
도 11a는 3개의 오디오 아이템들에 동적범위 제어 파라미터들의 영향을 나타낸 가설 그래프이다.
도 11b는 재생동안 3개의 오디오 아이템들에 DIALNORM 및 동적범위 제어 파라미터들의 영향을 나타낸 가설 그래프이다.
발명은 다수의 면들을 갖는 것으로서 볼 수 있고, 이들 모두는 오디오 메타데이터 검증정보를 수반한다. 이들 면들 각각은 다음을 포함한다.
(1) 정확한 메타데이터 및 메타데이터의 적어도 일부의 정확함을 검증하는 정보를 갖는 엔코딩된 오디오 비트스트림;
(2) 정확한 메타데이터 및 메타데이터의 적어도 일부의 정확함을 검증하는 정보를 갖는 엔코딩된 오디오 비트스트림을 생성하는 프로세스 혹은 디바이스;
(3) 엔코딩된 오디오 비트스트림이 정확한 메타데이터를 갖고 있음과 또한 메타데이터의 적어도 일부의 정확함을 검증하는 정보를 내포함을 확실하게 하는 프로세스 혹은 디바이스;
(4) 엔코딩된 오디오 비트스트림의 모든 메타데이터가 정확한지에 따라 이 비트스트림을 디코딩하고 정정된 메타데이터를 생성하고 대치하며, 메타데이터의 적어도 일부의 정확함을 검증하는 정보 -있다면- 를 고려하는 프로세스 혹은 디바이스.
발명의 다른 면들은 청구항들에 개시되고 그리고 작성된 설명 및 도면들에 개시된다.
오디오 메타데이터 검증정보는 비트 오류 검출 및/또는 정정을 제공하는 기능을 제공하지 않는 것에 유의한다. 검증정보를 지닌 비트스트림들은 통상적으로 어떤 종류의 비트 오류 검출 및/또는 정정, 예를 들면 AC-3 비트스트림에 CRC 코드 워드들을 갖는다. 본 발명의 면들에서, 메타데이터는 예를 들면 초기에 정확하게 설정되지 않았거나 초기에 정확하게 설정되었더라도, 전송이나 저장에서 비트 오류들 때문이 아니라, 사람의 개입 혹은 다른 것의 결과로서 전송 혹은 저장동안 변경되었기 때문에 부정확할 수 있다. 사실, 오디오 메타데이터 검증정보는 메타데이터가 정확하지 않다면 이 메타데이터를 정확한 값으로 변경할 목적으로 작용하기 때문에 비트 오류 검출 혹은 정정의 목적으로 작용하지 않을 것이다. 비트 오류 정정은 단지 메타데이터 내 비트 오류들을 정정하므로, 비트 오류들이 없을지라도 메타데이터를 부정확한 상태로 있게 할 것이다. 즉, 오디오 메타데이터 검증정보는 비트들 자체들의 정확함에 관계된 것이 아니라, 메타데이터를 나타내는 비트들에 담긴 정보의 정확함에 관계된 것이다.
여기에 기술된 발명의 면들의 예들에서, 엔코딩된 오디오 비트스트림이 돌비 디지털(AC-3) 엔코딩된 비트스트림일지라도, 복수 세트들의 메타데이터는 DIALNORM 및 관계된 동적범위 제어 메타데이터이며, 검증정보는 정확한 DIALNORM 메타데이터에 대응하며, 발명의 면들은 이외 다른 오디오 코딩 시스템들 및 이러한 코딩 시스템들의 비트스트림들에서 다른 메타데이터에 적용할 수 있다. 발명의 면들이 유용할 수 있는 다른 오디오 코딩 시스템들은, 예를 들면, 돌비 E 시스템 및 MPEG-4 AAC 시스템을 포함한다. 돌비 디지털에 관하여, 메타데이터는 DIALNORM 및 관계된 동적범위 제어 메타데이터(이 경우 검증정보는 또한 관계되거나 대신에 다운믹싱 메타데이터에 관계된다) 외에도 혹은 이들 대신에 다운믹싱 메타데이터일 수도 있다.
검증정보는 비트스트림이 현존의 혹은 레거시 프로세스들 및 디바이스들에 기존과 호환될 수 있게, 엔코딩된 오디오 비트스트림 내에 지니게 될 수 있다. 여기에 기술된 발명의 면들의 예들에서, 검증정보는 유용한 정보를 지니지 않고 표준 AC-3 디코더들에 의해 무시되었을, 위에 언급된, AC-3 폐 비트들에 지니게 된다. 다른 오디오 코딩 시스템들은, 사용이 가능할 수 있고 통상 표준 디코더들에 의해 무시되는 "폐" 비트들("눌" 비트들 혹은 "충만(fill)" 비트들 등이라고도 함) 혹은 유사 비트들, 예를 들면, 사용자에 의해 정의되는 데이터 구획인 MPEG-4 AAC 내 데이터 스트림 요소와 같은 추가의 데이터 필드들을 가질 수 있다. 그러나, 일부 코딩 시스템들에서 이러한 비트들은, AC-3 코딩 시스템에서 실현되었을 때 본 발명의 면들의 유용한 특징인 것으로 엔코드/디코드 동작에 의해 소실되지 않을 수 있다. 엔코딩된 비트스트림들에서 "폐" 혹은 유사 비트들에 데이터를 지니는 기술은 Truman 등에 의한 "Adding Data to a Compressed Data Frame" 명칭의 미국특허 6,807,528 Bl에 개시되어 있고, 이 특허 전체를 여기 참조문헌으로 포함시킨다.
검증정보는 "은닉"되는 방식으로, 엔코딩된 오디오 비트스트림에 지닐 수도 있다. 예를 들면, 폐 비트들(waste bits)에 지니는 검증정보는 암호화될 수 있다. 검증데이터를 은닉하는 것은 엔코딩된 비트스트림 내 DIALNORM 값을 고의로 변경하는 어떤 사람이 검증정보를 변경하는데 어려움을 가지게 되거나 변경할 수 없게 되는 이점이 있다.
모든 AC-3 프레임이 추가의 정보를 전달하기 위한 충분한 미사용된 데이터 비트들을 가질 수 있는 것은 아닐지라도, 이것은 DAILNORM 값이 전체 프로그램에 걸쳐 일정할 땐 문제가 안 되는데, 적어도 일부 AC-3 프레임들이 검증 데이터용으로 사용하기에 충분한 미사용 데이터 비트들을 갖는 것만으로 충분하다.
대안적으로, 엔코딩될 수 있는 폐 비트들에 검증정보를 지니는 대신에, US 2004/0024588 Al으로서, 2004년 2월 5일 공개된 Watson 등에 의한 "Modulating One or More Parameters of an Audio or Video Perceptual Coding System in Response to Supplemental Information" 명칭의 2001년 8월 15일 출원된(PCT) 미국특허출원번호 10/344,388에 기술된 것과 같은 기술들을 사용하여 비트스트림에 스테가노그래픽 엔코딩될 수 있다. 상기 출원은 전체를 참조문헌으로 여기 포함시킨다. 스테가노그래픽 엔코딩은 기존과의 호환성을 유지하며 또한 데이터를 은닉하는 이점이 있다. 그러나, 비트스트림을 디코딩 하여 재 엔코딩하는 것이 검증정보를 소거 혹은 "제거"하지 않을 수 있는데(후술하는 바와 같이), 이는 단점이다.
검증 데이터는 이의 가장 간단한 형태로, 정확한 DIALNORM 값의 카피(적합한 프레이밍 혹은 동기화 및 식별 데이터와 함께)일 수 있다. AC-3 비트스트림에 미사용 비트들은 통상적으로 눌 혹은 랜덤한 값들로 설정되기 때문에, AC-3 비트스트림 내 미사용 데이터 비트들이 DIALNORM 검증 데이터 포맷과 일치할 가능성은 매우 낮다. 또한, 전형적인 것으로서, 엔코딩된 AC-3 프로그램마다 단지 하나의 일정한 DIALNORM 값이 사용될 때, 미사용 데이터 비트들에 내포된 DIALNORM 검증정보 또한 일정한, 고정된 값이다. 이 경우, 일련의 AC-3 프레임들에 DIALNORM 검증 데이터의 복수의 경우들에 대해 체크하는 것은 검증 데이터 비트들용으로 미사용 데이터 비트들이 잘못 취해질 가능성을 감소시킨다.
DIALNORM 측정, 메타데이터 생성, 및 검증 데이터 삽입이 AC-3 비트스트림에 실시간으로 연속적으로 수행되면, 전체 프로그램에 걸쳐 일정한 DIALNORM 값은 발생하지 않을 수 있다. 이 경우, 검증은 일련의 AC-3 프레임들(각종의 DIALNORM 메타데이터 값들을 내포할 수 있는)을 분석하고 미사용 데이터 비트들에 놓여진 DIALNORM 검증 필드들이 사용가능할 때, 이들 필드들이 DIALNORM 값들과 부합하는가를 체크함으로써 수행될 수 있다. 최소 수의 부합하는 DIALNORM 및 DIANLNORM 검증 데이터 필드들은 미사용 데이터 필드들에 랜덤한 데이터가 DIALNORM 파라미터 값들과 부합할 확률을 감소시키기 위해서 요구될 수 있다.
이 발명의 또 다른 면은 바람직하게는 공인된 프로세스들 혹은 디바이스들만이 DIALNORM 검증 데이터를 AC-3 비트스트림에 기입할 수 있게 하는 것이다. 이와 같이 하는 것이 검증 데이터의 유효성을 보장한다. 이에 따라, DIALNORM 메타데이 터 파라미터 값의 정확함이 위에 언급된 것들과 같은 이유들로 정확한 것으로 보증되지 않을지라도, DIALNORM 검증 데이터는 이의 정확성에 신뢰로 사용될 수 있다. 또한, 정확한 DIALNORM 파라미터가 변질되는 문제는 DIALNORM 검증 데이터가 AC-3 비트스트림의 다른 미사용 데이터 비트들에 놓여지기 때문에 극복된다. 유효 검증 데이터를 내포하는 AC-3 비트스트림이 디코딩되어 재 엔코딩된다면, 재 엔코딩한 결과로서 DIALNORM 검증 데이터를 대신하는 결과적인 미사용 데이터 비트들이, 동일 AC-3 DIALNORM 메타데이터 값들이 사용될지라도, 정확한 상태에 있게 되지는 않게 된다. 이것은 검증된 AC-3 비트스트림의 임의의 추가의 처리가 검증 데이터를 확실히 "제거"하게 한다(후술하는 바와 같이, 소리세기 측정 및 검증 능력들을 갖춘 공인된 AC-3 엔코더가 재 처리에 사용되지 않는다).
발명의 이들 및 다른 면들은 발명을 실행하기 위한 다음의 실시형태들을 읽고 이해할 때 더 잘 이해될 것이다.
<발명을 실시하기 위한 최상의 형태>
정확한 DIALNORM 및 부합하는 검증 데이터를 갖는 AC-3 비트스트림 생성
발명의 이 면은 정확한 DIALNORM 파라미터 값을 가지며 부합하는 DIALNORM 검증 데이터를 갖는 AC-3 비트스트림을 생성하는 것에 관한 것이다.
도 1은 2개의 요소들로서, 수정된 AC-3 엔코딩 기능 혹은 수정된 AC-3 엔코 더("수정된 AC-3 엔코드")(102), 및 대화 레벨 측정 기능 혹은 대화 레벨 측정기("대화 레벨 측정)(104)를 포함하는 장치(100)를 도시한 것이다. PCM 오디오(101)는 수정된 AC-3 엔코드(102) 및 대화 레벨 측정(104) 둘 다에 인가된다. 수정된 AC-3 엔코드는 이것이 DIALNORM 검증 데이터를 받아들여 이를, 위에 논의된 바와 같이, 어떤 적합한 방법으로 AC-3 비트스트림에 삽입할 수 있는 것을 제외하곤 표준 AC-3 엔코더 혹은 엔코딩 기능과 동일할 수 있다. 수정된 AC-3 엔코드는 DIALNORM 검증 데이터를 포함하는 기존과 호환되는 AC-3 비트스트림 출력을 제공한다. 대화 레벨 측정(104)은 입력된 PCM를 분석하고, 정확한 DIALNORM 값을 계산하고 이를(103을 통해서) 수정된 AC-3 엔코드(102)에 보낸다.
정규 AC-3 엔코딩에 있어서, 가용 미사용 비트들의 수는 오디오의 복잡도(즉, 오디오가 원하는 비트레이트로 엔코딩하기가 얼마는 어려운가 하는)에 직접 관계된다. AC-3 오디오 프레임당 가용 비트수는 고정되어 있기 때문에, 오디오가 코딩하기가 어려울수록, 질적 수준을 달성하는데 사용되는 비트들이 더 많아지고 따라서 코딩 프로세스에서 미사용되고 DIALNORM 검증 데이터를 지니는데 사용할 수 있는 비트들은 더 적어진다. 그러므로, 코딩하기가 더 간단한 오디오 신호들은 DIALNORM 검증 데이터를 저장하는데 사용할 수 있는 더 많은 미사용된 데이터 비트들을 가질 것이다. 그러므로, 선택적인, 그러나 유용한, 수정된 AC-03 엔코더에 대한 수정은 엔코딩 프로세스가 엔코딩 동안 사용하지 않을 최소 수의 데이터 비트들을 명시하는 능력이다. DIALNORM 검증 데이터를 전달하는데 필요한 적은 수의 비트들이 주어졌을 때(후술하는 바와 같이), 의도적으로 얼마간의 미사용 데이터 비트 들을 보유하는 것은 코딩된 오디오 신호의 품질에 거의 혹은 전혀 영향을 미치지 않을 수 있다.
대화 레벨 측정(104)
대화의 소리세기 레벨의 측정은 먼저 주로 스피치를 내포하는 오디오 콘텐츠의 세그먼트들을 분리함으로써 수행될 수 있다. 이러한 방법은 US2004/0044525 Al으로서 3월 4일 공개된 "Controlling Loudness of Speech in Signals That Contain Speech and Other Types of Audio Information" 명칭의 Vinton 등의 미국특허출원번호 10/233,073에 기술되어 있고, 이 출원은 전체를 참조문헌으로 여기 포함시킨다. 그러나, 이외 다른 방법들이 사용될 수도 있다. 다음에, 주로 스피치인 오디오 세그먼트들은 소리세기 측정 알고리즘에 보내진다. AC-3에서, 이 알고리즘은 표준 A- 가중 파워 측정이다. 표준 B- 혹은 C-가중 파워 측정들, 혹은 소리세기의 음향심리(psychoacoustic) 모델들에 기초한 것들을 포함한 그외 다른 소리세기 측정들도 사용될 수 있다. 파워 측정은 오디오 디지털 풀-스케일 정현파(0 dB FS)에 관하여 계산된다.
스피치 세그먼트들의 분리는 필수는 아니지만, 측정의 정확성을 향상시키며 청취자 견지에서 더 만족스러운 결과들을 제공한다. 모든 오디오 콘텐츠가 스피치를 내포하는 것은 아니기 때문에, 전체 오디오 콘텐츠의 소리세기 측정은 스피치가 있다고 해도, 오디오의 대화 레벨의 충분한 근사를 제공할 수 있다.
방법이 유한 길이의 비트스트림이 아니라 연속적인 비트스트림에 작용하고 있다면, 이 측정은 연속적으로 업데이트되고 예를 들면 마지막 몇 초에 대해서만, 대화의 레벨을 나타낼 수 있다. 방법이 사전에 저장된 유한 길이 비트스트림(이를테면 하드디스크에 저장된 오디오 파일)에 작용하고 있다면, 전체 프로그램이 분석될 수 있고 단일 DIALNORM 값이 계산될 수 있다.
수정된 AC-3 엔코드(102)
입력된 오디오 PCM은 비트스트림 DIALNORM 및 관계된 동적범위 압축 메타데이터 파라미터들을 설정하기 위해 계산된 DIALNORM 값(들)을 사용하는 수정된 AC-3 엔코딩을 사용하여 엔코딩된다. 수정된 AC-3 엔코딩은 위에 기술된 바와 같이 추가의 소리세기 측정 기능이 DIALNORM 파라미터 값을 명백하고 정확하게 측정하여 이를 비트스트림에 포함시키기 위해 엔코더에 제공하는 것을 제외하곤, 통상의 AC-3와 동일할 수 있다. 또한, 이 예에서는 공인된 DIALNORM 측정 프로세스가 객관적인 측정을 제공하였기 때문에, 수정된 엔코더는 DIALNORM 검증 데이터를 생성하여 이를 AC-3의 다른 미사용 데이터 비트들에 삽입한다. 수정된 AC-3 엔코드(102)에 의해 생성된 AC-3 비트스트림은 위에 인용된 A/52A 문헌에 정의된 AC-3 비트스트림의 표준들에 준하게 하여 현존의 AC-3 디코더들에 기존과 호환되게 하는 것이 바람직하다.
수정된 AC-3 엔코드가 최소 수의 미사용 데이터 비트들을 명시하는 능력을 또한 구비하고 있다면, 이것은 오디오 코딩에 사용할 수 있는 AC-3 프레임 당 총 비트수의 값을 변경함으로써 구현될 수 있다. 예를 들면, AC-3 엔코딩 프로세스가 사용할 수 있는 비트수가 정규로 N_TOTAL_ENCODE_BITS 이고 적어도 N_TOTAL_VERIFICATION_BITS를 갖는 것이 요망된다면, 가용한 엔코딩 비트의 새로운 총 개수는 (N_TOTAL_ENCODE_BITS - N-TOTAL_VERIFICATION_BITS)이 될 것이며 오디오 코딩은 통상대로 진행된다.
DIALFORM 검증 데이터의 포맷
DIALNORM 검증 데이터가 디코딩을 함이 없이 쉽게 식별되고 AC-3 비트스트림으로부터 읽혀지게 하기 위해서, 데이터는 사전의 정의된 포맷을 갖는 것이 유용하다. 도 2는 디코딩되지 않은 AC-3 비트스트림으로부터(실시간으로 AC-3 비트스트림이거나, 디지털 파일로서 저장되는 AC-3 비트스트림) 데이터를 찾아내고 읽는 것을 단순화하는 바이트 정렬 방식으로 DIALNORM 검증 데이터를 저장하는데 적합한 포맷을 개괄한 것이다. 포맷은 결정적인 것은 아니고 다른 포맷들도 사용될 수 있다. 도 2에 도시된 바와 같이, DIALNORM 검증 데이터에 대한 예로서의 포맷은 몇 개의 연속된 바이트들로 구성된다. 제1 바이트는 사전에 정의된 DIALNORM 검증 헤더 바이트이다. 이 헤더 바이트는 임의의 값을 취할 수 있는데, 그러나 미사용 데이터 비트들이 다른 AC-3 비트스트림들에서 제로 값들로 초기화되어 있을 수 있기 때문에 비-제로 값(AC-3 SYNCWORD와는 유사하나 동일하지 않은)이 바람직하다. 이 예에 서 DIALNORM 검증 헤더 다음에, 데이터 바이트들은 DIALNORM 검증 및 추가의 선택적 데이터를 전달하는데 사용된다. 표준 AC-3 DIALNORM 값이 5 비트로 구성되기 때문에, 한 데이터 바이트는 3개의 추가 데이터 비트들을 제공하며 2개의 데이터 바이트들은 11개의 추가의 데이터 비트들을 제공한다. 2개의 DIALNORM 검증 데이터 바이트들의 사용이 도 2의 예에 도시되었다. 이들 바이트들은 사용되는 소리세기 알고리즘의 유형 혹은 버전과 같은 정보 혹은 이외 다른 정보를 저장하는데 사용될 수 있다. 도 2에 도시된 최종 바이트는 DIALNORM 검증 헤더 및 데이터 바이트들을 사용하여 계산되는 순환 용장성 체크(CRC) 데이터 바이트이다. 이 바이트는 이것이 모든 4개의 바이트들에 대한 CRC 체크를 통과한 AC-3 비트스트림(유효한 DIALNORM 검증 헤더 바이트, 2개의 중간 데이터 바이트들 및 CRC바이트를 갖는 일련의 바이트들을 내포하는) 내 미사용 데이터 비트들의 확률을 크게 감소시키는 점에서 유용하다.
앞에서 논의된 바와 같이, 수정된 AC-3 엔코더가 DIALNORM 검증 데이터를 내포하는데 충분한 미사용 데이터 비트들을 확보하고 있다면, 도 2에 개괄한 구조가 주어졌을 때, 이것은 각각의 1792 바이트 AC-3 데이터 프레임에 대해 단지 4개의 바이트 또는 32비트를 요구하며, 이는 총 데이터의 단지 0.2%에 해당한다.
AC-3 비트스트림이 정확한 DIALNORM 및 부합하는 검증 데이터를 갖는지를 확실히 함
발명의 또 다른 면은 AC-3 비트스트림 내 DIALNORM 값이 정확하고 비트스트림이 부합하는 DIALNORM 검증 정보를 갖는 것을 확실히 하는 것이다. 발명의 이 면은 도 4의 흐름도에 개시되어 있다. 이하 설명되는 바와 같이, 도 4의 프로세스 전부 혹은 도 4의 프로세스의 일부가 채용될 수 있다. 프로세스들의 단계들을 채용하는 이러한 프로세스들 혹은 디바이스들은, 예를 들면, 콘텐츠 작성자에 의한 비트스트림의 생성에 이어서, 그리고 청취자를 위한 비트스트림의 최종 디코딩에 앞서, 비트스트림의 전송 혹은 저장에 유용할 수 있다. 도 4의 단계들 혹은 이의 일부들은 하나 이상의 프로세스들의 부분들을 나타낼 수도 있고 하나 이상의 디바이스들에서 수행되는 기능들일 수도 있음이 이해될 것이다.
도 4의 단계들은 유한 길이 오디오 아이템의 오디오를 나타내는 비트스트림에 관해 수행될 수 있다. 예를 들면, 텔레비전 프로그램 혹은 광고들로 구성된 오디오 아이템은 파일 서버 혹은 다른 것에 디지털 형태로 저장된다. 여기서에 사용되는 "오디오 아이템"이라는 것은 연속된 하나의 오디오 정보이며, 예를 들면, 30초 텔레비전 광고 혹은 전체 영화(동화상)이다. 그러나, 도 4의 단계들은 AC-3 프레임들의 연속적인 실시간 비트스트림, 예를 들면 텔레비전 방송국 혹은 채널의 오디오를 나타내는 연속된 AC-3 비트스트림을 측정하고 업데이트하는데 사용될 수 있다.
DIALNORM 검증 데이터의 존재에 대한 테스트(도 4 및 도 3의 단계 401)
도 4에 도시된 바와 같이, 수행되는 제1 단계(단계 401)는 AC-3 DIALNORM 검증 데이터가 엔코딩된 AC-3 비트스트림에 존재하는지를 판정하는 것이다. 도 3은 이러한 체크를 수행하기 위한 흐름도를 도시한 것이다. 도 3에 도시된 바와 같이, 입력은 프레임 단위로 처리될 수 있는 AC-3 오디오 비트스트림이다. AC-3 프레임 내 미사용 데이터 비트들의 위치를 알고 있기 때문에, 전체 프레임 혹은 비트스트림의 전역(exhaustive) 탐색 -이 탐색은 미사용 비트 구획 혹은 구획들의 시작에서 시작할 수 있다- 을 수행하는 것은 필요하지 않다. DIALNORM 검증 데이터가 연속된 바이트들의 데이터로 구성될지라도, 이 데이터는 다른 AC-3 프레임 데이터와 정렬된 바이트일 수도 있고 아닐 수도 있다. 그러므로, 도 3에 프로세스에서 제1 단계(단계 301)인 "비트스트림으로부터 데이터 독출"은 비트씩으로 데이터를 독출할 것과 독출된 각각의 비트로부터 연속된 바이트들의 데이터를 구성할 것을 요구할 수 있다.
도 3의 예의 단계 303에서, AC-3 프레임으로부터 읽은 각 바이트의 데이터는 사전에 정의된 DIALNORM 검증 헤더 바이트와 비교된다. 바이트가 부합하지 않는다면, 더 많은 데이터가 독출되고 또 다른 바이트 비교가 수행된다. 바이트 값이 헤더 값과 일치한다면, 부합하는 바이트 다음의 연속한 바이트들의 데이터가 독출된다. 단계 302에서 판정되는 바와 같이, 검증 헤더 바이트와 부합하는 바이트가 AC-3 프레임의 끝 근처에 있고, 데이터 다음에 3개의 바이트들이 가용하지 않다면, 데이터에 대한 탐색은 중단된다. 4개의 바이트들(도 2에 개괄한 바와 같이 부합하는 검증 헤더 바이트를 포함하는)은 단계 304에서 CRC 체크를 계산하는데 사용된다. CRC 체크에 통과한다면(단계 305), DIALNORM 검증 데이터가 존재하고 DIALNORM 검증 정보는 후술하는 바와 같이 데이터 바이트들로부터 검색될 수 있다.
DIALNORM 검증 데이터가 AC-3 DIALNORM 데이터와 부합하는지를 테스트(402)
도 4의 단계 401에 나타낸 바와 같이, DIALNORM 검증 데이터가 존재할 때(단계 401의 예 출력), 다음 단계인 단계 402는 검증 데이터가 AC-3 DIALNORM 값에 부합하는지를 판정하는 것이다. 도 9에 도시된 바와 같이, 후술하는 바와 같이, 정규 DIALNORM 데이터의 위치 및 포맷은 알고 있어 AC-3 비트스트림으로부터 쉽게 읽혀질 수 있다. 정규 DIALNORM 및 검증 DIALNORM 값들이 부합하는지 판정하기 위한 테스트는 간단한 수치 비교이다. 값들이 일치한다면, 정규 DIALNORM 값은 정확하며 더 이상의 분석 혹은 처리는 요구되지 않는다. 값들은 2개의 값들간 차이의 절대값이 임계값 미만이면 충분히 "부합"하는 것으로 간주될 수 있다. 원한다면, 이 임계값은 제로와 같게 설정될 수도 있지만, 바람직한 구현들에서 임계값은 메타데이터 파라미터들의 정확도와, 본 발명을 구현하는데 필요한 계산자원들의 비용과, DIALNORM 값과 검증값간의 차이가 재생동안 오디오 정보의 질을 저하시킬 가능성간에 절충에 균형이 맞도록 선택된다. 3(3dB)의 임계값은 대부분의 애플리케이션들에 적합할 수 있다. AC-3 비트스트림 출력은 저장되거나, 전송되거나, 디코딩될 수 있다.
DIALNORM 검증 데이터로 정규 AC-3 DIALNORM 데이터를 정정(단계 403)
DIALNORM 검증 데이터가 AC-3 비트스트림으로부터 추출되고 정규 AC-3 DIALNORM 메타데이터(단계 402의 아니오 출력)와 부합하지 않을 때, DIALNORM 메타데이터는 검증 DIALNORM 값으로 업데이트된다(즉, 이 값으로 설정 혹은 이 값과 같아지게 한다)(403). 정규 DIALNORM 값은 부정확한 것으로 판정되었고 업데이트될 것이기 때문에, 관계된 AC-3 동적범위 압축 메타데이터 또한 부정확할 수 있다. 그러므로, 동적범위 압축 정보는 분석되어야 하고 올바르다면, DIALNORM 메타데이터 파라미터만이 업데이트된다. 동적범위 압축 정보가 부정확하다면, 업데이트되어야 한다. 이러한 분석 및 업데이트의 상세는 도 4, 도 6a, 6b 및 9c의 단계 409 내지 단계 413에 관련하여 이하 설명된다.
AC-3 비트스트림에 없는 검증 데이터
정확한 DIALNORM 메타데이터(단계들 404-407)
도 4의 예에서 보인 바와 같이, DIALNORM 검증 데이터가 AC-3 비트스트림 내 내포되어 있지 않다면(단계 401의 아니오 출력), AC-3 비트스트림은 DIALNORM 파라미터 및 관계된 동적범위 제어 파라미터들을 적용함이 없이 PCM으로 디코딩되고(이들 메타데이터 파라미터들은 부정확하므로) 따라서 디코딩된 오디오 콘텐츠는 비트 스트림을 생성하는데 사용되었던 엔코더에 입력된 것과 동일 레벨에 있다(단계 404). 그러면 대화의 소리세기는 정확한 DIALNORM 레벨을 판정하기 위해 측정된다(단계 405). 이 측정은 위에 기술된 대화 레벨 측정(104)의 디바이스 혹은 기능에 의해 달성된다. 단계 405에서 대화의 레벨 측정에 이어, 측정된 값은 단계 406에서 AC-3 DIALNORM 메타데이터와 비교된다(이러한 비교의 상세는 이하 주어진다). 도시된 바와 같이 단계 406의 예(YES) 출력에 이어, 정규 DIALNORM 메타데이터가 정확하다면, 요구되는 유일한 동작은 AC-3 비트스트림에서 DIALNORM 검증 데이터를 포맷하고 저장하는 것이다(단계 407).
위에 논의된 바와 같이, 가용 미사용 데이터 비트 수는 오디오의 복잡성에 따르며 일부 AC-3 프레임들은 매 프레임 내 DIALNORM 검증 데이터를 저장할 만큼 충분한 미사용 데이터 비트들을 갖지 않을 수 있다. 충분한 미사용 데이터 비트들로 AC-3 프레임들에만 검증 데이터를 저장하는 것과(이 경우 DIALNORM 검증 데이터는 단계 404에서 디코딩된 AC-3 비트스트림를 재-엔코딩한 결과로부터 나온 AC-3 비트스트림에가 아니라 원 입력된 AC-3 비트스트림에 삽입될 수 있다), 혹은 단계 404의 AC-3 디코딩한 결과로부터 나온 오디오를 재 엔코딩하여, 각 프레임에 검증 데이터가 들어맞을 수 있게 충분한 수의 미사용 데이터 비트들을 확보하는 것인, 두 가지 선택들이 가능하다.
단계 404의 AC-3 디코딩과 단계 405의 소리세기 측정에 대한 대안은 AC-3 비트스트림의 완전한 디코딩을 요구하지 않는 기술에 의해 소리세기의 근사를 얻는 것이다. 서브-대역 지수들의 크기에 기초하여, 코딩된 오디오 스펙트럼의 대략적 추정을 얻기 위해서 AC-3 비트스트림과 같은 비트스트림을 부분적으로 디코딩하는 이러한 기술은, 본원과 동일자 출원된 Brett Graham Crockett, Michael John Smithers, Alan Jeffrey Seefeldt, Attorneys' Docket DOL157의 미국 가 특허출원에 개시되어 있다. 상기 Corckett 등의 DOL157 출원은 그 전체를 참조문헌으로 여기 포함시킨다.
도 5는 도 4의 단계 404 내지 단계 413의 여러 일부분들을 실시하기 위한 장치(500)의 예를 도시한 것이다. 도 5에 도시된 바와 같이, AC-3 프레임들(501)은 수정된 AC-3 디코딩 기능 혹은 디코더("AC-3 디코더")(502)에 의해 디지털 오디오(503)로 디코딩된다. AC-3 디코드(502)에 의한 AC-3 프레임들의 디코딩 동안에, DIALNORM 파라미터 및 동적범위 압축 정보는, 후술하는 바와 같이, 부분적 다른 사용을 위해 복구될지라도, 오디오 디코딩의 목적을 위해 무시되며 따라서 디코딩된 오디오(503)는 비트스트림을 생성하는데 사용되었던 엔코더에의 입력과 동일 레벨에 있으며 이와 동일한 동적범위를 갖는다. 대화 레벨 측정기능 혹은 대화 레벨 측정기("대화 레벨 측정)(504)는 디코딩된 오디오(503)를 수신하여 대화(505)의 레벨을 계산한다. 대화(504)의 측정은 도 1에 관련하여 위에 기술된 대화의 측정(104)과 동일한 기능 혹은 디바이스일 수 있다. AC-3 디코더(502)는 위에 기술된 바와 같이 단계 404를 수행할 수 있고, 대화 레벨 측정(504)은 위에 기술된 바와 같이 단계 405를 수행할 수 있다. 비트스트림 업데이트 기능 혹은 업데이터("비트스트림 업데이트")(506)은 대화의 레벨을 각 프레임에 있는 DIALNORM 파라미터와 비교한다. 비교의 더 상세한 것은 이하 주어진다. 또한, 단계 406 및 408의 판단들에 따 라, 단계 407, 혹은 단계들 408-410(도 6a 및 이하 이의 설명을 참조)을 수행하거나, 단계들 408 및 411-413(도 6b 및 이하 이의 설명을 참조)을 수행한다. 단계 407을 수행할 때, DIALNORM 검증 정보를 입력 AC-3 비트스트림에 삽입하여, 원 DIALNORM 및 관계된 동적범위 제어 정보를 버린다. 단계 407을 수행함에 있어, 비트스트림 업데이트(506)는 미사용 데이터 비트들에 대해 AC-3 프레임들을 탐색한다. 충분한 수의 미사용된 데이터 비트들을 가진 AC-3 프레임들은 미사용 비트들이 DIALNORM 검증 데이터를 내포하게 업데이트되도록 수정된다. 대안적으로, AC-3 디코드(502)에 의해 생성되는 디코딩된 오디오는 재-엔코딩되어, 검증 데이터가 각 프레임에 들어맞을 수 있도록(이 경우 비트스트림 업데이트(506)는 도 1의 수정된 AC-3 엔코드(102)와 같은 수정된 AC-3 엔코더를 포함한다) 충분한 수의 미사용 데이터 비트들을 확보한다.
보다 구체적으로, 단계 406을 수행함에 있어, 비트스트림 업데이트(506)는 측정된 대화 레벨을 DIALNORM 파라미터에 의해 지시된 대화의 레벨과 비교한다. DIALNORM 파라미터는 1dB 증분들로, -31dB 내지 -1dB의 범위를 갖는다. 대화의 측정된 레벨이 이 범위 내이고 비트스트림으로부터의 DIALNORM의 값과 다르다면, DIALNORM 파라미터는 측정된 레벨을 예를 들면 가장 근접한 1dB로 어림(rounded)하여, 조건부로 업데이트된다(충분한 미사용 비트들이 검증 정보를 지니는데 사용될 수 있는지 판정에 따라 "조건부"이다). 대화의 측정된 레벨이 비트스트림 내 DIALNORM의 값간에 차이의 절대값이 임계값 미만이면, 대화의 측정된 레벨은 비트스트림 내 DIALNORM의 값과는 다른 것으로 간주될 수 있다. 원한다면, 이 임계값은 제로와 같게 설정될 수 있지만, 바람직한 구현들에서 임계값은 메타데이터 파라미터들의 정확도와, 본 발명을 구현하는데 필요한 계산자원들의 비용과, DIALNORM 값과 측정된 대화 레벨간의 차이가 재생동안 오디오 정보의 질을 저하시킬 가능성간에 절충에 균형이 맞도록 선택된다. 3(3dB)의 임계값은 대부분의 애플리케이션들에 적합할 수 있다. 정확한 DIALNORM 파라미터를 내포하게 비트스트림을 업데이트하는 것 외에도, 비트스트림 업데이트(506)는 각 AC-3 프레임에서 미사용된 데이터 비트들을 탐색한다. 프레임이 충분한 수의 미사용된 데이터 비트들을 내포한다면, 이들은 DIALNORM 검증 데이터로 대치되어, 정확하고 공인된 소리세기 측정 프로세스가 행해졌다는 것과 AC-3 비트스트림에 내장된 DIALNORM 값은 정확하다는 것을 나타낸다.
AC-3 비트스트림에 없는 검증 데이터
부정확한 DIALNORM 메타데이터
DIALNORM 파라미터 범위 내의 소리세기(단계들 408-410)
도 4의 예에서 보인 바와 같이, 검증 정보가 존재하지 않고(단계 401의 아니오 출력) 현존의 AC-3 DIALNORM 값이 부정확하다면(단계 406의 아니오 출력), 측정된 소리세기 레벨이 DIALNORM 파라미터의 유효 범위 내에 있는지 판정되어야 한다(단계 408). DIALNORM 파라미터는 대화(505)의 측정된 레벨이 AC-3 비트스트림에서 허용되는 DIALNORM 파라미터의 유효 범위밖에 있을 때 레벨을 전달하기에 충분한 범위를 갖지 않는다. 즉, 측정된 레벨은 -31DB 미만이거나 -1dB보다 크다. DIALNORM 파라미터가 레벨을 전달하는데 충분한 범위를 갖는다면(단계 408의 예 출력), 단계들 409 및 410은 다음과 같이 수행되며, 이의 더 상세한 것은 도 6a 및 도 7에 관련하여 설명된다.
도 6a는 새로운 동적범위 압축 정보가 어떻게 판정되는가와(단계 409), DIALNORM의 값이 변경되고 DIALNORM 검증 데이터가 삽입되었을 때 비트스트림이 어떻게 업데이트되고 다시 패킹되는가(단계 410)를 도시한 것이다. 전술한 바와 같이, 도 6a의 예는 단계들 408-410을 수행하는데 유용한 도 5의 비트스트림 업데이트(507)의 변형이다. 도 6a의 요소들은 다음과 같이 기술될 수 있다.
DIALNORM 추출(602)
DIALNORM 파라미터의 값은 도 5 및 도 6a에 의해 나타낸 바와 같은, AC-3 비트스트림 추출 디바이스 혹은 기능(602)("DIALNORM 추출"(602)) -디코딩되지 않은 비트스트림(501)은 DIALNORM에 적용된다- 으로부터 추출된다.
동적범위 압축 프로파일 판정(604)
도 6a에 도시된 바와 같이, 동적범위 압축 프로파일 판정 디바이스 혹은 기능("동적범위 압축 프로파일 판정"(604))은 디코딩되지 않은 비트스트림으로부터 추출된 DIALNORM 파라미터 값 및 AC-3 디코드(도 5의 502)의 출력을 수신하여 동적범위 압축 프로파일을 판정한다. AC-3 프레임 내 동적범위 압축 메타데이터는 디코딩 동안 오디오 콘텐츠에 적용될 수 있는 이득 변경들을 나타낸다. 이 메타데이터는 2개의 서로 다른 파라미터들로서 존재한다. 비트스트림 정보(BSI) 내 COMPR 파라미터는 -48.14dB 내지 +47.88 dB을 가지며 전체 한 프레임의 오디오에 적용되는 스케일링이다. 각각의 오디오 블록(AB)에 하나인 DYNRNG 파라미터는 -24.06dB 내지 +23.94dB의 범위를 가지며 각 블록을 독립적으로 스케일링하는 수단을 제공한다. 디코딩 모드에 따라, 디코더에서 이들 파라미터들은 둘 다는 아니고 이들 중 하나가 사용되거나 어느 것도 사용되지 않는다.
위에 언급된 바와 같이, COMPR 및 DYNRNG 파라미터들은 DIALNORM 파라미터와 다수의 동적범위 압축 프로파일들 없이 혹은 이들 중 하나를 사용하여 엔코딩 동안에 계산된다. 각 프로파일은 어택 및 릴리스 시정수들, 및 압축비들을 포함하는 표준 오디오 동적범위 압축 파라미터 정보를 내포한다.
DIALNORM 파라미터는 변경되기 때문에, 비트스트림에서 COMPR 및 DYNRNG의 값들은 더 이상 정확하지 않을 수 있다. COMPR 및 DYNRNG 파라미터들은 비트스트림에서 변경되지 않은채로 있을 수 있으나 재생에서 오디오는 심하고 성가신 이득 변동들을 나타낼 수 있고/있거나 디코더 과부하(디지털 클리핑)로 이어지게 할 수 있다. 더 나은 방법은 COMPR 및 DYNRNG 파라미터들을 업데이트하는 것이다. 이것은 이들의 원 값들을 계산하는데 사용되는 동적범위 압축 프로파일을 앎으로써 최상으로 달성된다. 프로파일에 관한 정보가 비트스트림에 없기 때문에, 임의의 프로파일 이 선택될 수도 있고(다 함께 동적범위 압축을 무능화하는 것을 포함하여), 또는 프로파일은 비트스트림에서 원 COMPR 및 DYNRNG 값들로부터 추론될 수도 있다. 프로파일을 추론하는 것은 동적범위 압축에 관하여 콘텐츠 작성자의 원 의향에 더 근접하게 부합할 수도 있다.
동적범위 압축 프로파일 판정(604)에서, 디코딩된 오디오(503) 및 원 DIALNORM 값(603)은 다수 세트들의 COMPR 및 DYNRNG 값들 - 한 세트는 AC-3 엔코더들에 존재하는 것으로 알려진 각 프로파일에 대한 것임- 을 계산하는데 함께 사용된다. 원 비트스트림에 COMPR 및 DYNRNG 값들에 가장 가깝게 부합하는 한 세트의 COMRP 및 DYNRNG 값들을 갖는 프로파일의 색인 번호는 606으로서 출력된다.
이 방법이 연속된 한 스트림의 프레임들에 작용한다면, 프로파일 색인은 연속적으로 업데이트될 수 있다. 예를 들면, 몇 초 전의 프레임들에 대해 가장 가능한 프로파일을 나타낼 수 있다.
추정된 동적범위 압축 프로파일은 원래 사용된 프로파일과 동일하지 않은 것이 가능하다. 그러므로, 대화의 측정된 레벨과 DIALNORM 값간의 절대 차이가 위에 언급된 바와 같이 임계값보다 클 경우에만 DIALNORM 및 동적범위 압축정보를 업데이트하는 것이 바람직할 수 있다.
새로운 동적범위 정보 계산(607)
기능 혹은 디바이스("새로운 동적범위 정보 계산")(607)은 새로운 동적범위 정보를 계산한다. 대화의 실제 레벨의 측정(505)(도 5)은 어림되고 새로운 DIANORM 값이 된다. 가장 가까운 1dB로의 어림이 사용될 수 있는 것으로 발견되었지만, 이것은 결정적인 것은 아니다. 프로파일 색인(606), 디코딩된 오디오(503)(이에 적용된 구(old) DIALNORM 및 동적범위 압축), 및 새로운 DIALNORM 값(어림된 것(505))을 사용하여, 새로운 한 세트의 COMPR 및 DYNRNG 값들(608)이 계산된다.
비트스트림 재 팩킹(609)
비트스트림 리팩커(repacker) 혹은 재 팩킹기능("비트스트림 재 패킹")(609)은 디코딩되지 않은 AC-3 비트스트림(501), COMRP 및 DYNRNG 값들(608) 및 측정된 대화 레벨(505)을 수신한다. 위에서처럼, 대화의 실제 레벨의 측정(505)은 예를 들면 1dB로 어림되는데, 그러나 이것은 결정적인 것은 아니며, 새로운 DIALNORM 값이 된다. 새로운 DIALNORM 값 및 새로운 COMPR 및 DYNRNG 값들은 디코딩되지 않은 AC-3 비트스트림(501)에서 업데이트된다. 또한, 비트스트림 재 팩킹(609)에서 판정된 바와 같이, 충분한 미사용 데이터 비트들이 존재한다면, 미사용 데이터 비트들의 일부 혹은 전부를 대치하기 위해 DIALNORM 검증 데이터가 사용된다. 새로운 업데이트된 AC-3 비트스트림은 새로운 비트스트림(610)으로서 출력된다.
비트스트림 재 팩킹(609)의 상세는 도 7의 예에 개시되었으며, 이는 다음과 같이 기술된다.
가용 공간 판정(701)
기능 혹은 디바이스("가용 공간 판정")(701)는 COMPR 및 DYNRNG 값들을 업데이트하고 새로운 DIALNORM 검증 데이터를 포함시키는데 사용될 수 있는 모든 미사용 데이터 비트들을 확인한다. COMPR 및 DYNRNG 파라미터들 둘 다는 각각이 AC-3 비트스트림에 8 비트들을 요구한다. 이들 파라미터들의 각각의 발생은 조건부의 "존재" 플래그를 갖는다. COMPR 파라미터는, 1로 설정되었다면 비트스트림에 COMPR 파라미터가 이어지게 됨을 나타내는 COMPRE 플래그를 갖는다. 유사하게, 각각의 DYNRNG 파라미터는 1로 설정되었다면 비트스트림에 DYNRNG 파라미터가 이어지게 됨을 나타내는 DYNRNGE 플래그를 갖는다. 프레임의 제1 블록에 DYNRNGE 플래그가 0으로 설정되었다면, 디코더는 0dB의 초기 DYNRNG 값을 취한다. 프레임 내 블록들 1 내지 5 중 임의의 블록에 DYNRNGE 플래그가 0으로 설정되었다면, 디코더는 이전 블록으로부터 DYNRNG 값을 다시 사용한다. 각 프레임에 COMPR 및 DYNRNG 파라미터들의 이 조건부적인 존재는 COMPR 및 DYNRNG에 의해 사용되는 총 비트수가 달라질 수 있음을 의미한다.
새로운 COMPR 및 DYNRNG값들에 대해 요구되는 총 비트수는 구(old) COMPR 및 DYNRNG 값들에 의해 사용되는 총 비트 수보다 클 수도 있기 때문에(COMPR 및 DYNRNG의 존재와 값들이 DIALNORM의 값에 의존하기 때문에), 프레임에 어떤 미사용 비트들이 있는지 판정하는 것이 필요하다. 이들 미사용 비트들은 새로운 COMPR 및 DYNRG 값들에 의해 요구되는 추가의 비트들을 위해 확보하기 위해 AC-3 프레임 내 에서 정보를 이동시킬 뿐만 아니라 새로운 DIALNORM 검증 데이터용으로 사용될 수 있다.
동적범위 압축정보 감소(703)
기능 혹은 디바이스("D.R.C. 정보 감소")(703)는 미사용 데이터 비트의 식별(702)을 수신하고 새로운 COMPR 및 DYNRNG 값들을 위한 총 비트수가 미사용 비트와 구 COMPR 및 DYNRNG값에 의해 사용되는 총 비트수를 합한 것보다 더 많다면 이 새로운 COMPR 및 DYNRNG 값들에 의해 요구되는 비트수를 감소시키기 위해서 새로운 동적범위 정보(608)를 계산한다. 기능 혹은 디바이스(703)의 출력은 이러한 비트 요건들에 비추어 조정되어 있을 수도 있는 새로운 COMPR 및 DYNRNG값들이다.
각각의 AC-3 프레임마다 존재하는 제약이 있다. 도 9a는 2개의 프레임 경계들로서, 5/8번째 프레임 경계와, 오디오 블록 1과 오디오 블록 2간의 경계(AB1-AB2)를 도시한 것이다. 제약은 프레임이 엔코딩될 때, AB1-AB2 경계가 5/8번째 프레임 경계보다 비트스트림 안쪽에 있을 수 있다는 것이다. 오디오 블록 0 및 오디오 블록 1 내 새로운 DYNRNG 값들에 대해 요구되는 비트 수가 오디오 블록 0 및 오디오 블록 1 내 미사용 스킵 데이터 비트와 오디오 블록 0과 오디오 블록 1 내 구 DYNRNG값들에 의해 사용되는 비트수를 합한 것보다 크다면, 추가의 비트들용으로 확보하는 것은 AB1-AB2 경계를 5/8번째 프레임 경계를 넘어서 밀리게 할 수 있게 된다. 이것이 발생한다면, 블록 0 및 블록 1 내 새로운 DYNRNG 값들에 의해 요구되 는 비트수는 감소될 것이다. 이것은 다양한 방법들로 수행될 수 있다.
적합한 방법은 먼저 오디오 블록 0 및 오디오 블록 1에 대한 새로운 DYNRNG값들 및 DYNRNGE 플래그들을 분석하는 것이다. 블록 0 내 새로운 DYNRNGE 플래그만이 1로 설정되어 있다면, 이 플래그는 0으로 설정되고 블록 0 및 블록 1의 새로운 DYNRNG 값은 제로와 같게 설정된다. 블록 1 내 새로운 DYNRNGE 플래그만이 1로 설정되어 있다면, 이 플래그는 0으로 설정되고 블록 1의 새로운 DYNRNG 값은 블록 0의 값과 같게 설정된다. 블록 0 및 블록 1 내 새로운 DYNRNGE 플래그들이 1로 설정되어 있다면, 두 가지 비교들이 수행된다. 블록 0에 대한 DYNRNG의 새로운 값과 0dB간에 절대 차이가 블록 0 및 블록 1에 대한 새로운 값들간의 절대 차이 미만이면, 블록 0에 대한 새로운 DYNRNGE 플래그는 0으로 설정되고 블록 0에 대한 DYNRNG의 새로운 값은 0으로 설정된다. 그렇지 않다면, 블록 1에 대한 새로운 DYNRNGE 플래그는 0으로 설정되고 블록 0 및 블록 1에 대한 새로운 DYNRNG 값들은 블록 0 및 1로부터의 DYNRNG의 최소 값으로 설정된다. 이것은 새로운 DYNRNG 워드들에 대해 요구되는 비트수를 8비트만큼 감소시킨다. 블록 0 혹은 1의 DYNRNGE 플래그들 중 하나가 1로 설정되고 더욱 비트 감소가 요구된다면, 위의 프로세스가 반복된다. 임의의 비트 감소가 완료된 후에, 블록 1에 대한 새로운 DYNRNG 값은 블록 2에 대한 새로운 DYNRNG 값과 비교된다. 이들 값들이 같다면, 블록 2에 대한 새로운 DYNRNGE 플래그는 0으로 설정된다. 새로운 DYNRNG값들이 같지 않다면, 블록 2에 대한 새로운 DYNRNGE 플래그는 1로 설정된다.
6블록들의 전체 한 프레임을 보았을 때, 새로운 COMPR 및 DYNRNG 값들에 대 해 요구되는 총 비트수가 미사용 비트들과 구 COMPR 및 DYNRNG 값들에 의해 사용되는 총 비트수를 합한 것보다 많다면, 새로운 파라미터들에 의해 요구되는 비트 수를 감소시키는 것이 필요하다. 이것은 다양한 방법들로 수행될 수 있다.
적합한 방법은 프레임 내 6개의 오디오 블록들에 걸쳐 새로운 DYNRNG 값들 및 DYNRNGE 플래그들을 고찰하고 블록들을 영역들로 그룹화하는 것인데, 여기서 각 영역은 1로 설정된 DYNRNGE 플래그를 가진 블록을 나타내거나, 혹은 블록 0의 DYNRNGE 플래그가 0으로 설정된 경우엔 제1 블록과, 이에 더하여 0으로 설정된 DYNRNGE 플래그들을 가진 임의의 다음 블록들을 나타내는 영역들을 나타낸다. 이에 따라, 영역들의 수는 모든 블록들 중 어느 하나는 1로 설정된 DYNRNGE 플래그를 갖지 않거나 제1 블록만이 1로 설정된 현존의 플래그를 가져 1만큼 낮을 수도 있고, 혹은 영역들의 수는 모든 블록이 1로 설정된 DYNRNGE 플래그를 가져 6만큼 클 수도 있을 것이다. 각 영역에 대한 DYNRNG의 값은 각 이웃한 영역에서 DYNRNG의 값과 비교된다. DYNRNG의 가장 가까운 값들을 가진 이웃한 한 쌍의 영역들은 먼저 두 영역들에 DYNRNG 값을 어느 한 영역의 최소 값으로 설정하고 두 번째로 제2 영역의 DYNRNGE 플래그를 0으로 설정함으로써 하나의 영역으로 조합된다. 이것은 새로운 COMPR 및 DYNRNG 정보에 의해 요구되는 총 비트수를 8비트만큼 감소시킨다. 이 프로세스는 새로운 COMPR 및 DYNRNG값들에 대해 요구되는 총 비트수가 미사용 비트들과 구 COMPR 및 DYNRNG값들에 의해 요구되는 총 비트수의 합 이하가 될 때까지 반복된다.
위에 나타낸 바와 같이, AC-3 프레임 내 미사용 데이터 비트들 전부가, 업데 이트된 DYNRNG 및 COMPR 파라미터들용으로 사용되고, 그럼으로써 DIALNORM 검증 데이터용으로 미사용 비트들을 전혀 남기지 않는 것이 가능하다. 앞에서 논의된 바와 같이, 이것이 예상되며 충분한 미사용 데이터 비트들이 존재하는 프레임들에 DIALNORM 검증 데이터를 삽입하는 이러한 유용성을 감소시키지 않는다.
DIANLORM, 동적범위 압축 및 DIALNORM 검증 정보 업데이트(705)
디바이스 혹은 기능("DIALNORM, D.R.C. 및 DIALNORM 검증 정보 업데이트")(705)은 비트 요건에 비추어 조종되어 있을 수도 있는, 디코딩되지 않은 AC-3 비트스트림(501), 새로운 COMPR 및 DYNRNG 값들(704), 및 측정된 대화 레벨(505)을 수신하고, 비트스트림의 DIALNORM 파라미터, 동적범위 파라미터들을 업데이트하고, DIALNORM 검증 정보를 비트스트림에 삽입한다.
프레임은 항시 DIALNORM 파라미터를 갖기 때문에, 새로운 DIALNORM 값은 BSI 내 그의 소정의 위치에 기입될 수 있다. 그러나, COMPR 및 DYNRNG 파라미터들을 업데이트하는 것은 새로운 값들을 위해 확보하기 위해 AC-3 프레임의 부분들을 임의로 이동시키는 것을 수반할 수도 있다. 새로운 COMPR 및 DYNRNG 값들에 대해 요구되는 총 비트 수가 구(old) 값들에 의해 사용되는 총 비트수보다 크다면, SKIPD 필드들의 일부와 아마도 폐 비트들(W)의 길이들은 감소될 필요가 있다. 그러나, 요구되는 총 비트수가 적다면, 폐 비트들(W)의 길이는 증가된다. 이들 파라미터 업데이트들에 이어 충분한 수의 미사용 데이터 비트들이 존재한다면, DIALNORM 검증 데이 터가 미사용 데이터 비트 위치들에 놓여지게 된다.
COMPR 파라미터를 업데이트하기 위해서, 구 COMPRE 플래그가 1로 설정된다면, 구 COMPR 값은 새로운 COMPR값으로 덮어씌여질 수 있다. 그러나, 구 COMPRE 플래그가 0으로 설정되고 새로이 계산된 COMPRE 값이 1로 설정된다면, COMPRE 파라미터 다음에 모든 바이너리 데이터는 새로운 COMPRE 값에 대해 확보하기 위해 8비트만큼 시프트되어야 한다. 그러면, 프레임 내 COMPRE 플래그는 1로 설정되고 새로운 COMPRE 값은 공간의 새로운 생성된 8비트에 기입된다. 구 COMPRE 플래그가 1로 설정되고 새로운 COMPRE 플래그가 0으로 설정되면 프레임 내 COMPRE은 0으로 설정되고 COMPRE 파라미터 다음에 모든 바이너리 데이터는, COMPR 파라미터가 프레임에 더 이상 존재하지 않기 때문에, 8비트만큼 시프트될 것이다.
각 오디오 블록 내 DYNRNG 파라미터들을 업데이트하기 위해서, 구 DYNRNGE 플래그가 1로 설정된다면, 구 DYNRNG 값은 새로운 DYNRNG 값으로 덮어씌어질 수 있다. 그러나, 구 DYNRNGE 플래그가 0으로 설정되고 새로운 DYNRNGE 플래그가 1로 설정된다면, DYNRNGE 파라미터 다음에 모든 바이너리 데이터는 새로운 DYNRNG 값에 대해 확보하기 위해서 시프트되어야 한다. 그러면, 프레임 내 DYNRNGE 플래그는 1로 설정되고 새로운 DYNRNG 값은 공간의 새로이 생성된 8비트에 기입될 수 있다. 구 DYNRNGE 플래그가 1로 설정되고 새로운 DYNRNGE 플래그가 0으로 설정되면, 프레임 내 DYNRNGE 플래그는 0으로 설정되고 DYNRNG 파라미터 다음의 모든 바이너리 데이터는, DYNRNG 파라미터가 비트스트림에 더 이상 존재하지 않기 때문에 8비트만큼 시프트될 것이다.
SKIPL 파라미터는 바이트들로 SKIPD 필드의 길이를 나타낸다. SKIPD 필드의 길이를 감소시키기 위해서, SKIPD 필드의 우측에의 바이너리 데이터는 8비트의 배수만큼 시프트되어야 한다. 그러면 SKIPL 파라미터는 SKIPD 필드의 새로운 길이를 반영하기 위해 업데이트된다. 때때로, SKIPD 필드는 AC3 표준(예를 들면, 위에 인용된 A52/A 문서 참조)에 공식적으로 정의되어 있지 않은 선택적 정보를 내포할 수도 있다. SKIPD 필드에 제1 비트가 1이라면, 데이터를 가진 정보가 SKIPD 필드 내에 오고, 그렇지 않다면 SKIPD 필드 내 비트들은 모두 0으로 설정된다. 정보가 존재하고 SKIPD 필드가 단축될 필요가 있다면, 이 정보로 단축될 수 있을 뿐이다. 이것은 정보가 AC-3 프레임 이내에 유지될 수 있게 한다.
미사용 데이터 비트들의 수정 및 업데이트에 이어, DIALNORM 검증 데이터가 미사용 비트들에 삽입될 수 있다. 앞에서 논의된 바와 같이, 이 데이터는 충분한 동기화 및 식별 데이터 정보와 함께 2중의 프레임 DIALNORM 파라미터를 포함한, 몇가지 형태들을 취할 수 있다. 이것은 DIALNORM 검증 디코더가 미사용 데이터 비트들을 탐색하고, DIALNORM 검증 데이터가 존재하는지 확인하고 이를 AC-3 비트스트림에 내포된 표준 DIALNORM 파라미터와 비교할 수 있게 한다.
CRC 업데이트(707)
DIALNORM 검증 정보를 포함하는 업데이트된 AC-3 비트스트림은 오류정정 워드 생성 디바이스 혹은 기능(CRC 업데이트)(707)에 인가된다. AC-3 프레임 내 데이 터가 변경되었을 때, 2개의 오류 검출 워드들(CRC1, CRC2)이 다시 계산될 것이다. 5/8번째 프레임 경계까지의 데이터만이 변경되었다면, CRC1만이 다시 계산될 필요가 있다. 마찬가지로 5/8번째 프레임 경계부터 프레임의 끝까지의 데이터만이 변경되었다면, CRC2만이 다시 계산될 필요가 있다.
AC-3 비트스트림에 없는 검증 데이터
부정확한 DIALNORM 메타데이터
레벨을 전달하는데 불충분한 DIALNORM 범위
도 4의 예에 도시된 바와 같이, 검증 정보가 존재하지 않고(단계 401의 아니오 출력) 현존의 AC-3 DIALNORM 값이 부정확하다면(단계 406의 아니오 출력), 측정된 소리세기 레벨이 DIALNORM의 유효 범위 내에 있는지 판정될 것이다(단계 408). 위에 언급된 바와 같이, DIALNORM 파라미터는 대화(505)의 측정된 레벨이 AC-3 비트스트림에서 허용되는 DIALNORM 파라미터의 유효범위밖에 있을 때 레벨을 전달하는데 충분한 범위를 갖지 않는다. 즉, 측정된 레벨은 -31dB보다 작거나 -1dB보다 크다. 이 경우 단계 408의 출력은 아니오 이다. 이러한 상황을 정정하는 한 방법은 위에 기술된 바와 같이 프레임 내 DIALNORM 파라미터를 가장 가까운 유효한 값으로 업데이트하는 것이다. 그러나, 이것은 DIALNORM 값과 대화의 측정된 레벨간에 어떤 오차를 남길 수 있다. 이러한 오차를 최소화하는 적합한 대안은 다음과 같이 도 6b 의 예를 참조하여 기술되는 바와 같이 도 4의 단계들 411, 412, 413을 수행하는 것이다. 위에 언급된 바와 같이, 도 6b는 단계들 411, 412, 413을 수행하는데 유용한 도 5의 비트스트림 업데이트(507)의 변형이다. 도 6a의 요소들과 다른 도 6b의 요소들은 다음과 같이 기술될 수 있다. 도 6a 및 도 6b에 공통되는 요소들은 동임 참조부호를 사용한다.
이득 조정(611)
디코딩된 오디오(503)는 조종가능 이득 변경기 혹은 이득 변경 기능("이득 조정")(611)에 인가된다. 적합한 이득 변경은 측정된 대화 레벨과 DIALNORM 값 간에 오류를 감소시키기 위해 오디오에 적용될 수 있다(단계 411). 예를 들면, 측정된 대화 레벨이 -36dB이라면, DIALNORM은 가장 가까운 유효한 값인 -31dB로 설정될 수 있고, 이에 따라 오디오를 5dB만큼인 -36dB에서 -31dB로 상승시킨다.
수정된 AC- 3 엔코드(629)
다음에, 이득 조정된 오디오는 이를, 새로운 DIALNORM 및 동적범위 압축정보(608)와 함께(단계 412), 수정된 AC-3 엔코더 혹은 엔코딩 기능("수정된 AC-3 엔코드")(629)에 적용하는 수정된 AC-3 오디오 엔코딩을 사용하여 다시 엔코딩된다. 수정된 AC-3 엔코드는 DIALNORM 검증 데이터 적용 능력들을 알고 있고 이러한 데이 터를 엔코딩 프로세스 다음에 그리고 최종 비트스트림 패킹 전에 미사용 데이터 비트들에 삽입하기 때문에 "수정된" 이라는 것을 특징으로 한다. 이러한 재 엔코딩은 원 비트스트림(510) 프레임으로부터 모든 원 BSI(DIALNORM, 동적범위 압축 정보, 및 DIALNORM 검증을 제외) 및 AUX 메타데이터를 유지하며, 새로운 오류검출 워드들을 계산하는 것을 포함한다.
도 6b의 이외 다른 기능들 및 디바이스들은 위에 언급된 도 6a의 대응하는 기능들 및 디바이스들과 같을 수 있다.
단계들 411, 412, 413의 실행은 오디오 콘텐츠의 디코딩 및 재-엔코딩에 기인한 사운드 질의 어떤 손실로 이어질 수도 있다. 그러므로, 측정된 대화 레벨과 가장 가까운 DIALNORM 값간에 절대 오차가 임계값보다 크다면 콘텐츠를 재 엔코딩하는 것만이 요망될 수 있다. 3(3dB)의 임계값은 많은 애플리케이션들에 적합할 수 있다.
도 4의 일부들
위에 언급된 바와 같이, 도 4의 프로세스 전부, 혹은 프로세스들의 단계들을 채용하는 도 4의 프로세스 혹은 디바이스의 일부들이 채용될 수 있다.
도 4의 한 유용하고 저렴한 일부는 단계 401 내지 단계 403을 채용하는 것이다. 검증 정보가 비트스트림에 존재한다면(401은 예 이다), 단계들 402 및 403은 위에 기술된 바와 같이 동작하여 AC-3 비트스트림이 변경되지 않은 채로 있게 하거 나 DIALNORM 값을 검증값으로 설정한다. 어떠한 검증 정보도 비트스트림에 존재하지 않는다면(401의 출력은 아니오 이다), DIALNORM은 그대로 두거나 내정값으로 설정될 수 있다.
도 4의 프로세스의 또 다른 유용한 일부는 단계 401 및 404 내지 407을 채용하는 것이다. 이것은 검증정보가 없고 현존의 DIALNORM이 정확할 때 검증 정보를 추가하는 것이 요망될 때 유용하다. 검증 정보가 비트스트림에 존재한다면(401이 예 이다), 비트스트림은 변경되지 않은 채로 둘 수 있다. 검증정보가 존재하지 않는다면(401의 출력은 아니오 이다), 단계들 404, 405 및 406은 현존 DIALNORM이 정확한지(406의 출력이 예) 정확하지 않은지(406의 출력이 아니오)를 판정한다. 현존의 DIALNORM 이 정확하다면, 검증정보는 비트스트림에 추가될 수 있다. 현존 DIALNORM이 부정확하다면, DIALNORM은 내정값으로 설정될 수 있다.
또 다른 유용한, 그러나 다소 비용이 더 드는, 도 4 프로세스 혹은 디바이스들의 일부는 단계들 401 내지 406을 채용하는 것이다. 동작은 검증정보가 존재할 때(401의 출력이 예) 지금 기술된 바와 같으나, 그러나 검증정보가 존재하지 않을 때(401의 출력이 아니오), 단계들 404, 405 및 406은 현존의 DIALNORM이 정확한지(406의 출력이 예) 아닌지(406의 출력이 아니오)를 판정한다. 현존 DIALNORM이 정확하다면, 비트스트림은 변경되지 않은 채로 둘 수 있다. 현존 DIALNORM이 부정확하다면, DIALNORM은 내정값으로 설정될 수 있다.
검증 데이터 인식 디코딩
발명의 또 다른 면은 AC-3 비트스트림이 정확한 DIALNORM 및 부합하는 검증 데이터를 갖고 있든지간에 AC-3 비트스트림을 적합하게 디코딩하는데, 이들이 있을 땐 이러한 검증 데이터를 이용하는 것이다. 이것을 "검증 데이터 인식" 디코딩이라 한다. 발명의 이 면은 도 8의 흐름도에 개시되어 있다. 이하 설명되는 바와 같이, 도 8 프로세스의 전부 혹은 도 8 프로세스의 일부들이 채용될 수 있다. 이러한 프로세스들 혹은 프로세스들의 단계들을 채용하는 디바이스들은 예를 들면 비트스트림의 디코딩에서 유용할 수 있다. 일반적으로 도 4에 단계들에 대응하는 도 8의 단계들은 대응하는 참조번호들(예를 들면, "801" 및 "401")을 채용한다. 도 8의 단계들 혹은 이의 일부들은 하나 이상의 프로세스들의 부분들을 나타낼 수 있고 혹은 하나 이상의 디바이스들에서 수행되는 기능들일 수도 있음을 알 것이다.
DIALNORM 검증 데이터의 존재에 대한 테스트(단계 801)
도 8에 도시된 바와 같이, 수행된 제1 단계(단계 801)는 AC-3 DIALNORM 검증 데이터가 AC-3 비트스트림에 존재하는지를 판정하는 것이다. 이 단계는 위에 기술된(도 3에 도시된 상세를 포함하여), 도 4의 단계 401과 동일한 방식으로 수행될 수 있다.
DIALNORM 검증 데이터가 AC-3 DIALNORM과 부합하는지 테스트(802)
도 8의 단계 801에 나타낸 바와 같이, DIALNORM 검증 데이터가 존재할 때(단계 801의 예(YES) 출력), 다음 단계인 단계 802는 검증 데이터가 AC-3 DIALNORM 값에 부합하는지를 판정하는 것이다. 이 단계는 위에 기술된, 도 4의 단계 402와 동일한 방식으로 수행될 수 있다. 값들이 부합한다면, 정규 DIALNORM 값은 정확하며 프로세스에 적용되는 AC-3 비트스트림(단계 801의 입력)은 단계 814에 나타낸 바와 같이, 이의 현존의 DIALNORM 및 관계된 동적범위 메타데이터를 사용하여 디코딩될 수 있어, 이에 따라 디코딩된 AC-3 오디오 비트스트림을 제공한다. 단계 402의 설명에 관련하여 위에 설명된 바와 같이, 값들이 "부합"하는지 여부는 이들이 임계값 내에 있는지 여부에 의해 판정될 수 있다.
DIALNORM 검증 데이터로 정규 AC-3 DIALNORM 데이터를 정정(803)
DIALNORM 검증 데이터가 AC-3 비트스트림으로부터 추출되고 정규 AC-3 DIALNORM 메타데이터와 부합하지 않을 때(단계 802의 아니오 출력), DIALNORM 메타데이터는 검증 DIALNORM 값(803)으로 업데이트된다. 정규 DIALNORM 값은 부정확한 것으로 판정되었고 업데이트되어야 하므로, 관계된 AC-3 동적범위 압축 메타데이터 또한 부정확할 수 있다. 그러므로, 동적범위 압축 정보는 분석되어야 하고 이것이 정확하다면, DIALNORM 메타데이터 파라미터만이 업데이트된다. 동적범위 압축정보가 부정확하다면, 이 또한 업데이트되어야 한다. 이러한 분석 및 업데이트의 상세 는 도 4 및 도 6b의 단계들 409 내지 413에 관련하여 여기에 설명된다.
AC-3 비트스트림에 없는 검증 데이터
정확한 DIALNORM 메타데이터
도 8의 예에 보인 바와 같이, DIALNORM 검증 데이터가 AC-3 비트스트림 내에 내포되어 있지 않으면(단계 801의 아니오 출력), AC-3 비트스트림은 DIALNORM 파라미터 및 관계된 동적범위 제어 파라미터들을 오디오에 적용함이 없이(이들 메타데이터 파라미터들은 부정확할 수 있기 때문에) 오디오에 디코딩될 수 있고(예를 들면 PCM 코딩된 오디오) 따라서 디코딩된 콘텐츠는 비트스트림을 생성하는데 사용되었던 엔코더에 입력과 동일한 레벨에 있다. 다음에, 디코딩된 오디오의 DIALNORM 레벨이 측정된다(단계 805). DIALNORM의 이러한 측정은 위에서 기술된 대화 레벨 측정(104)에 의해 수행되는 바와 동일할 수 있다. 단계 805에서 대화 레벨의 측정에 이어, 측정된 값은, 단계 806에서, 입력된 AC-3 비트스트림의 AC-3 DIALNORM 메타데이터 값과 비교된다. 도시된 바와 같이 단계 806의 예(YES) 출력에 이어, 이 DIALNORM 값이 정확하다면(단계 806의 예(YES) 출력), 입력 AC-3 비트스트림의 원 DIALNORM 값 및 관계된 원 동적범위 압축정보는 단계 804의 AC-3 디코드에 의해 생성된 디코딩된 오디오에 적용되어 정확한 DIALNORM 및 동적범위 압축 파라미터 값들이 적용되었던 디코딩된 AC-3 오디오 비트스트림을 제공한다.
AC-3 비트스트림에 없는 검증 데이터
부정확한 DIALNORM 메타데이터
현존 DIALNORM 메타데이터가 부정확할 때(단계 806으로부터 아니오 출력), DIALNORM 값을 단계 805의 측정된 DIALNORM 값에 설정하고 측정된 DIALNORM 파라미터 값으로부터 새로운 동적범위 압축정보를 판정하는 것이 필요하다. 이것은 단계 815에서 달성될 수 있고, 이 단계는 단계 412와 동일할 수 있다. 측정된 DIALNORM 값 및 단계 815에 의해 판정된 동적범위 압축정보는, 단계 816에서, 단계 804에 의해 제공된 디코딩된 디지털 혹은 아날로그 오디오에 적용될 수 있다.
도 8의 일부들
위에 언급된 바와 같이, 도 8의 프로세스 전부, 혹은 프로세스들의 단계들을 채용하는 도 8의 프로세스 혹은 디바이스의 일부들이 채용될 수 있다.
도 8의 한 유용하고 저렴한 일부는 단계 801 내지 단계 803 및 단계 814을 채용하는 것이다. 검증 정보가 비트스트림에 존재한다면(801은 예 이다), 단계들 802, 803 및 814는 AC-3 비트스트림을 디코딩하기 위해 위에 기술된 바와 같이 동작한다. 비트스트림에 어떠한 검증 정보도 존재하지 않는다면(출력 801은 아니오), 비트스트림은 이의 현존의 DIALNORM 값 및 관계된 동적범위 압축 파라미터 값들을 사용하여, 혹은 내정 DIALNORM 값 및 관계된 동적범위 압축 파라미터 값들을 사용 함으로써 디코딩될 수 있다.
또 다른 유용한, 그러나 다소 비용이 더 드는 도 8 프로세스의 일부는 단계 815를 제외하고 전부를 채용하는 것이다. 이것은 측정된 DIALNORM에 관계된 동적범위 압축 정보를 판정함에 있어 요구되는 계산을 회피한다. 동작은 단계 806이 현존의 DIALNORM이 부정확하다고 판정할 때 입력 AC-3 비트스트림이 DIANORM 및 관계된 동적범위 파라미터 값들을 내정값으로 설정함으로써 디코딩될 수 있는 것을 제외하곤, 도 8에 관련하여 지금 기술된 바와 같다.
추가의 배경
AC-3 비트 할당 및 미사용 데이터 비트
단순화한 AC-3 엔코더 블록도가 도 9e에 도시되었다. PCM 오디오 샘플들은 주파수 영역 변환 기능(902)에 입력된다. 블록 처리에 따른 에지 아티팩트들을 피하기 위해서 입력 데이터를 윈도윙하기 위해, 50% 중첩의 512-포인트 수정된 이산 코사인 변환(MDCT)이 사용된다. 과도(transient) 신호들의 경우에, 개선된 시간적 수행(감소된 과도 프리-노이즈(pre-noise))은 512-포인트 변환 대신 두 개의 256-포인트 변환들이 계산되는 블록-전환 기술을 사용하여 달성된다. 기능(902)으로부터의 변환계수들은 각 변환계수를 지수와 가수 쌍들로 분할하는 블록 부동점 프로세스(904)에 인가된다. 변환계수 가수들은 블록 부동점 지수들에 응하여 파라미터적 비트 할당 모델에 대해 작용하는 비트 할당 기능(908)에 의해 할당된 가변 비트 수로 가수 양자화 기능(906)에서 양자화된다.
AC-3 비트 할당 모델은 주어진 주파수 대역에서 각 가수에 할당되는 비트수를 선택하기 위해 음향심리 마스킹 원리를 사용한다. 마스킹의 정도에 따라, 일부 가수들은 매우 적은 수의 비트들을 받거나 전혀 비트들을 받지 못할 수 있다. 이것은 추가되는(들리지는 않을지라도) 잡음의 대가로, 소스 오디오를 나타내는데 요구되는 비트 수를 줄인다.
이외 어떤 다른 코딩 시스템들과는 달리, AC-3는 압축된 오디오 비트스트림으로 비트 할당 결과들을 디코더에 전달하지 않는다. 대신에, 오디오 엔코더가 이의 마스킹 모델을 변환계수 지수들 및 몇 개의 주요 신호 의존성 파라미터들에 기초하여 구성하는 파라미터 방법이 취해진다. 이들 파라미터들은 비트 할당 기능(908)으로부터 비트스트림을 통해 디코더에 전달하기 위해 비트스트림 패킹 기능(910)에 전달되고, 생(raw) 비트 할당 값들을 전송하는데 필요하였을 것보다 훨씬 적은 수의 비트들을 요구한다. 엔코딩된 오디오 비트스트림을 생성하는 비트스트림 패킹 기능(910)은 비트스트림에 포함하기 위해 지수들 및 양자화된 가수들을 수신한다. 디코더에서, 비트 할당은 수신된 지수들 및 비트 할당 파라미터들에 근거하여 재구성된다. 이러한 장치는 혼성 역방향/순방향 적응형 비트 할당을 구성한다.
AC-3의 코딩 효율은 소스 채널들의 수가 2개의 주요 특징들로서 전역 비트 풀(pool) 및 고주파 커플링에 기인하여 증가함에 따라 향상된다. 전역 비트 풀 기술은 비트 할당기가 필요에 따라 오디오 채널들 간에 가용 비트들을 배당할 수 있 게 한다. 하나 이상의 채널들이 특정의 시각에서 비활성이 되면, 나머지 채널들은 그렇지 않을 경우에 받았을 것보다 더 많은 비트들을 받는다.
AC-3 오디오 압축 시스템에서, 비트 할당 프로세스는 유한 탐색을 채용한다. 탐색의 각각의 반복에서, 신호 대 잡음(SNR) 파라미터는 비트들의 할당을 제어하기 위해 가변된다. 이것은 다른 파라미터들의 값들에도 영향을 미친다. 탐색의 끝에서, 사용된 비트들의 수가 할당된 비트들의 수를 초과한다면, 마지막 규정 할당이 사용된다. 흔히, 이 할당은 모든 가용 비트들을 사용할 수 없고, 그럼으로써 미사용 혹은 낭비되는 비트들을 남기게 된다.
앞에서 논의된 바와 같이, AC-3 일련의 코딩된 오디오 비트스트림은 도 9a에 도시된 바와 같이 구성된 일련의 프레임들로 구성된다. 각각의 AC-3 프레임은 모든 코딩된 채널들에 걸쳐 1536 PCM 샘플들의 일정한 시간간격을 나타내며, 6개의 코딩된 오디오 블록들(AB0 내지 AB5)을 내포하고, 각각의 오디오 블록은 256개의 새로운 오디오 샘플들을 나타낸다. 각각의 AC-3 프레임은 PCM 샘플 레이트(32kHz, 44.1 kHz 혹은 48 kHz)와 코딩된 오디오 비트레이트(32kpbs 내지 640 kbps 범위 내 이산적인 값들)에 따르는 고정된 크기(64 내지 1920 비트 범위 내 비트수들의 몇가지 크기들 중 하나)를 갖는다. 각 프레임의 시작부분에 동기화 정보(SI) 헤더는 동기화를 획득하여 유지하는데 필요한 정보를 내포한다. 비트스트림 정보(BSI) 헤더는 SI 필드 다음에 오며, 코딩된 오디오 서비스를 기술하는 파라미터들을 내포한다. SI 및 BSI 필드들은 샘플 레이트, 데이터 레이트, 코딩된 오디오 채널 수, 및 몇몇의 그외 다른 시스템 레벨의 요소들을 포함하여, 비트스트림 구성을 기술한다. 코 딩된 오디오 블록들(AB0 내지 AB5) 다음은 보조 데이터(AUX) 필드이다. 각 프레임의 끝에는 오류검출을 위한 CRC 워드(순환 용장성 정정 코드 워드)를 포함하는 오류 체크 필드가 있다. 또한 또 다른 CRC 워드는 SI 헤더 내 위치한다.
도 9a에 비트스트림 요소들의 폭이 일반적으로 각 요소 내 전형적인 비트수를 제시할지라도, 도면은 축적에 맞추어 있지 않다. 오디오 블록들에 그리고 AUX 필드에 할당되어 사용되는 비트수는 가변적이다. 블록 AB0은 다른 프레임들과는 근본적으로 무관하고 블록들 AB1 내지 AB5는 정보를 반복함이 없이 블록 AB0에 의해 지니게 되는 정보를 공유할 수 있어, 블록들 AB1 내지 AB5가 블록 AB0보다 적은 비트들을 지니기 때문에 다른 블록들보다는 넓게 도시되었다. 가능한 공유는 별문제로 하고, 오디오 블록들은 각 블록 내 양자화된 가수 데이터에 할당될 수 있는 가변 비트수 때문에 가변 길이를 갖는다.
위에 인용된 미국특허 6,807,528에 설명된 바와 같이, 미사용 비트들은 엔코더 내 비트 할당 기능이 오디오 신호를 엔코딩하기 위한 모든 가용 비트들을 이용하지 않을 때마다 프레임 내 존재한다. 이것은 마지막 비트 할당이 모든 가용 비트들을 사용에 부족하거나 입력된 오디오가 모든 가용 비트들을 요구하지 않는다면 일어난다. 이들 미사용 비트들은 프레임이 필수적인 고정된 크기를 갖기 위해서 프레임 내 어떤 곳에 놓여질 것이기 때문에, 엔코더는 프레임의 길이를 채우기 위해서 비트스트림 내에 더미 혹은 널 비트들을 삽입한다. 이러한 널 비트들은 AUX 필드에만 아니라(도 9d에 도시된 바와 같이) 하나 이상의 오디오 블록들 내 "스킵 필드"에 삽입된다. 각각의 스킵 필드는 8비트 바이트로 널 비트들을 받아들이며, AUX 필드는 프레임 길이의 "미세 조율"을 제공하고 마지막 CRC 워드가 프레임의 마지막 16 비트들에 행해질 수 있게 최대 7개의 널 비트를 받아들인다. 실제로, 널 비트들은 랜덤한 비트들이다. 이러한 널 비트들은 유용한 정보를 지니지 않는 낭비되는 비트들이다. 비트스트림 내 내포된 AC-3 파라미터들의 일부(특히 도 9c에 도시된 DIALNORM 파라미터)에 관계된, 정보를 지닌 비트들을 지니기 위한 일부 혹은 전부의 이러한 널 비트들의 값들을 사용하는 것이 본 발명의 면이다.
스킵 필드들 및 AUX 필드 내 널 비트들은 디코더에 의해 스킵 혹은 무시된다. AC-3 디코더가 널 비트들을 확인하여 이들을 무시할 수 있을지라도, 널 비트 수 및 비트스트림 내 이들의 위치는 미리 알지 못하거나(이들의 수 및 위치는 프레임마다 변한다. 즉 스킵 필드들은 가변 크기이며 블록들 AB1 내지 AB5 내에 이들의 시작 위치들은 변하며, 유사하게 AUX 필드는 가변 크기이고 이의 시작 위치는 다르다), 이들의 수 및 위치를 AC-3 비트스트림의 단순한 조사에 의해 식별하는 것도 가능하지 않다(널 비트들은 랜덤하고 비트스트림 내 다른 데이터와 구별할 수 없다).
각각의 오디오 블록(AB0 내지 AB5)은 워드 크기들(비트 길이들)을 미리 알고 있는 비트스트림 요소들을 구성된 "고정된 데이터"로(즉, 이들 고정된 데이터 요소들은 사전에 할당된 비트수를 가지며 비트 배당에 의해 할당되지 않는다) 시작한다. 고정된 데이터는 블록 전환 플래그들, 커플링 정보, 지수들 및 비트 할당 파라미터들을 포함한 일단의 파라미터들 및 플래그들이다. 고정된 데이터 다음은 스킵 필드가 널 비트들을 내포하지 않으면 1비트의 최소 크기와, 널 비트를 내포한다면 최대 크기의 522 비트를 갖는 "스킵 필드" 데이터이다. 스킵 필드의 최소 콘텐츠들인 1비트 워드는 스킵 필드가 널 비트들을 포함함을 나타낸다. 그러하다면, 다음에, 9비트 워드는 널 비트들의 바이트들의 수를 나타낸다. 이 다음에는 눌 바이트들이 온다. 스킵 다음에는 가수 데이터이다. 가수 데이터의 크기는 가변적이고 비트 할당에 의해 결정된다.
특정 오디오 블록이 널 비트를 갖는 스킵 필드를 내포하는지 여부는, 1) SYNCINFO 필드들(즉, SYNCOWRD, 제1 CRC 워드, 샘플링 주파수 코드 워드 및 프레임 크기 코드 워드), BSI 필드들, 오디오 블록 0(AB0) 및 오디오 블록 1(AB1)의 결합된 크기는 프레임의 5/8을 결코 초과하지 않으며, 2) 오디오 블록 5(AB5) 가수 데이터, AUX 데이터 필드, 및 오류 체크 필드의 결합된 크기는 프레임의 최종 3/8을 결코 초과하지 않는다는 규칙들에 의해 결정된다. 5/8 및 3/8 구성은 레이턴시(제1 CRC 워드가 프레임의 제1 5/8에 적용하여 보다 빠른 디코딩을 허용한다)를 감소시키는데 사용된다. 원리적으로, 5/8 및 3/8 구성에 대한 것이 아니었다면, 모든 널 비트들은 하나 이상의 스킵 필드들에 대한 필요성이 없이 AUX 필드에 삽입될 수도 있을 것이다.
AUX 데이터 필드는 2개의 기능들을 갖는다. 위에 언급된, AUX 데이터 필드의 한 기능은 프레임 길이의 미세 조율을 제공하며 프레임의 마지막 16비트가 제2 CRC 워드용으로 사용될 수 있게 하는 것이다. 최대 7개의 널 비트들이 AUX 필드에 삽입된다. 선택적인 것이고 제1 기능과는 무관한 것인, AUX 필드의 제2 기능은 오디오 블록들에 가수에 할당되었을 수도 있었을 비트들을 사용하는 대가로 추가의 정 보("auxdata")를 지니는 것이다. AUX 데이터 필드의 마지막 비트는 선택적인 auxdata가 존재하는지 여부를 나타낸다. 비트가 이것이 존재하지 않음을 나타낸다면, 선행하는 14비트 워드는 auxdata의 길이 및 다음 선행 비트들이 auxdata임을 나타낸다. 널 비트들 -있다면- 은 이번에는 AUX 필드 내 auxdata에 선행한다. auxfield가 auxdata를 갖고 있지 않다면, 널 비트들 -있다면- 은 auxdata가 존재하는지를 나타내는 AUX 데이터 필드의 끝에 단일 비트에 선행한다. 이에 따라, auxdata가 있는지 여부에 따라, AUX 필드에 널 비트들이 있을 수도 있고 없을 수도 있다. 미사용 비트들이 전혀 없다면(전혀 미사용 비트들이 주어진 프레임 존재하지 않는 것이 가능하나 많은 연속된 프레임들에 이러한 것이 일어날 확률은 극히 낮다), 혹은 널 비트 수가 8로 나누어질 수 있고, 이에 따라 널 비트 전부가 하나 이상의 스킵 필드들에 지니게 된다면 AUX 필드에 널 비트들이 없다.
표준 AC-3 코딩 장치에서, AUX 필드 및/또는 AUX 필드 및 하나 이상의 스킵 필드들 내 널 비트들은 미사용 혹은 낭비되는 비트들(즉, 이들은 유용한 정보를 지니지 않는다)이다. 본 발명의 면들에 따라서, 위에 논의된 바와 같이, 현존의 AC-3 엔코더들 및 디코더들과 완전한 호환성을 유지하고 엔코딩된 오디오 신호들의 어떠한 열화도 피하면서도, 일부 혹은 전부의 이러한 미사용 비트들은 정보를 지니는, 메타데이터 검증 비트들로 대치된다.
새로운 정보 적재 비트들은 바람직하게는 공지의 혹은 소정의 포맷 혹은 신택스에 준하며 따라서 이들은 메타데이터 파라미터(예를 들면 DIALNORM) 검증 디코더 프로세스에 의해 복구될 수 있다. 낭비되는 비트들을 메타데이터(DAILNORM) 검 증 비트들로의 대치는 어떤 유효한 AC-3 엔코더가 AC-3 비트스트림을 생성한 후에 달성될 수 있다. 예를 들면, 종래의, 수정되지 않은 AC-3 엔코더는 표준 AC-3 비트스트림을 생성하기 위해 채용될 수 있다. 결과적인 비트스트림은 각 프레임 내 일부 혹은 전부의 미사용 비트들의 위치를 확인하기 위해 분석된다. 확인된 미사용 비트들의 일부 혹은 전부는 미사용 비트들에 의해 전에 점유된 위치들 내 내포된 정보 적재 비트들(DIALNORM 검증 데이터 비트들)로 대치된다. 데이터의 일부가 변경되기 때문에(널 비트들의 일부 혹은 전부가 변경된다), 전체 프레임에 대한 체크섬은 다시 계산되고, 전체 프레임에 적용하는 제2 CRC 워드는 새로운 CRC 워드로 대치되고, 프레임의 첫 번째 3/8 내의 데이터가 변경된 경우, 프레임의 이 부분에 대한 체크섬이 다시 계산되고, 이 프레임의 첫 번째 3/8에 적용하는 제1 CRC 워드 또한 새로운 CRC 워드로 대치된다.
대안적으로, AC-3 비트스트림 내 일부 혹은 전부의 미사용 비트들이 표준 엔코딩에 이어 정보 적재 비트들로 대치하는 대신에, 추가의 분석 및 메타데이터 검증 능력들을 포함하는 수정된 AC-3 엔코더는 엔코딩 프로세스 동안에 랜덤 널 비트들 대신에 프레임의 미사용 비트 위치들의 일부 혹은 전부에 정보 적재 비트들을 삽입할 수 있다.
AC-3 비트스트림이 엔코딩 프로세스 전 혹은 후에 수정되든지 간에, 결과적인 수정된 비트스트림은 통상적인 AC-3 디코더에 동일하게 나타난다. 수정된 비트스트림을 수신한 수정되지 않은 AC-3 디코더는 동일 비트 위치들에 널 비트들을 무시하거나 이들을 스킵하는 것과 동일한 방식으로 정보 적재 비트들을 무시한다. 미 사용 비트들을 대치하는 정보 적재 비트들은 수정된 AC-3 디코더에서, 혹은 프레임 내 미사용 비트들의 위치를 확인하고 미사용 비트 위치들 내 데이터를 검출하고 AC-3 비트스트림에 관해 수행되는 메타데이터 검증 분석의 결과들을 보고하는 특별한 AC-3 메타데이터 분석 프로세스에서 복구될 수 있다. 어느 경우이든, AC-3 비트스트림에 미사용 비트들을 대치하는 검증 데이터의 복구 및 분석은 비트스트림의 나머지를 교란하지 않는다. 이에 따라, 본 발명의 면들은 두가지 방법들로 오디오 질을 보존할 수 있는데, 오디오에 대해 사용하게 될 수도 있었을 비트들을 사용하지 않고 비트스트림을 디코딩하고 재 엔코딩할 필요성을 피할 수 있다(그러나 이것은 위에 기술된 바와 같이 필요하고 유용할 수도 있다).
AC-3 대화 레벨 및 압축 메타데이터 파라미터들
위에 언급된 바와 같이, AC-3 프레임 메타데이터에는 압축된 오디오에 내포된 스피치 혹은 대화의 소리세기 레벨을 나타내는 파라미터가 포함된다. 이 파라미터는 DIALNORM이라 하며 이 파라미터의 의향은 오디오 아이템이 엔코딩되거나 데이터 압축되기 전에, 아이템 내 대화 혹은 스피치의 압도적 레벨이 측정되는 것이다. 그러면 이 측정은 압축된 오디오 아이템을 내포하는 비트스트림의 각 프레임에 DIALNORM 파라미터를 설정하는데 사용된다. 비트스트림의 재생 동안에, AC-3 디코더는 아이템의 재생 레벨 혹은 소리세기를 수정하기 위해 DIALNORM 파라미터를 사용함으로써, 대화의 지각된 소리세기는 일관된 레벨에 있게 된다.
도 10a는 3개의 서로 다른 오디오 아이템들을 내포하는 예를 도시한 것이다. 디지털 레벨은 디지털 풀-스케일 정현파(0 dB FS)에 관한 데이터 압축된 오디오 콘텐트의 레벨이다. 각 아이템에 대한 최대 및 최소 레벨이, 대화의 압도적 레벨과 함께 도시되었다. 각 아이템에 대한 DIALNORM 파라미터는 1dB의 단위들로 어림된, 대화의 레벨이다. 도 10b는, 재생 동안에, 각 아이템에 대한 대화의 레벨 혹은 소리세기가 동일하게 되게 혹은 매우 유사해지도록 각 아이템의 레벨을 어떻게 스케일링하는지를 도시한 것이다. AC-3 시스템에 있어서, 각 아이템의 대화가 스케일링되는 기준 레벨은 -31dB FS이다. 이 기준 디지털 레벨은 재생 시스템에서 원하는 음압 레벨로 캘리브레이트될 수 있다.
AC-3에서 DIALNORM 파라미터의 사용은 서로 다른 청취 환경들에서 그리고 다른 목적들을 위해서 서로 다른 사람들에 의해 생성되는 서로 다른 오디오 아이템들간에 존재하는 극적인 소리세기 차이들을 감소시킴으로써 청취자들에게 보다 일관성있고 예측가능한 청취 경험을 제공한다. 그러나, DIALNORM 파라미터는 위에 논의된 이유들로 부정확할 수 있다.
동적범위 압축
또한, AC-3 프레임 메타데이터에는, 재생동안 오디오에 적용된다면, 오디오 콘텐츠의 동적범위를 감소시키는 작용을 하는 파라미터들이 포함된다. 이것은 오디오의 소리가 더 큰 부분들을 조용하게 만들고 오디오의 조용한 부분들을 크게 만든 다. 이들 동적범위 압축 파라미터는 COMPR 및 DYNRNG라 하며 AC-3 비트스트림의 엔코딩동안 자동으로 계산된다. 도 9를 참조한다.
오디오의 동적범위를 감소시키는 능력은 다양한 상황들에서 유용하다. 예를 들면, 밤늦게 영화를 시청할 때, 잠자는 가족들 혹은 이웃사람들에게 방해가 되지 않도록 감소된 재생 볼륨으로 듣는 것이 흔히 필요하다. 영화들은 매우 큰 동적범위를 갖는 경향이 있기 때문에, 감소된 재생 볼륨은 영화의 대부분을 너무 조용해서 들리지 않게 한다. 동적범위 압축의 사용은 조용한 부분들을 증가시키는데 도움을 주어, 이들을 들을 수 있게 하고, 가장 큰 부분들을 감소시켜 이들을 덜 성가시게 한다.
동적범위 압축 파라미터들은 DIALNORM 파라미터에 의해 지시된 바와 같이, 대화의 레벨을 기준으로 계산된다. 이것은 대화의 평균 레벨이 변경되지 않게 하고 오디오 아이템의 보다 크거나 낮은 부분들만이 변경되게 한다.
도 12는 3개의 서로 다른 오디오 아이템들을 내포하는 예를 도시한 것이다. 도 12a는 평균 대화 레벨 및 처리되지 않은 오디오 아이템의 동적범위를 도시한 것이다. 도 12b는 재생동안에 어떻게 동적범위 압축 및 DIALNORM 파라미터의 적용으로 일관된 평균 대화 레벨이 되고 3개의 모든 아이템에 걸쳐 감소된 동적범위 출력신호로 되는지를 도시한 것이다.
동적범위 압축 파라미터들은 대화 레벨에 관계하여 계산되기 때문에, 이들의 사용은 DIALNORM 파라미터를 정확하게 측정하고 설정하는 콘텐트 작성자에 달려있다. DIALNORM 파라미터에 의해 지시된 대화의 레벨과 오디오 콘텐츠에 대화의 실제 레벨간에 오차가 있다면, 대화는 압축에 기인하여, 원하지 않는, 들리는 동적 이득 변화들을 나타내게 될 것이다.
DIALNORM2
,
COMPR2
및
DYNRNG2
대부분의 상황들 하에서, AC-3 시스템은 모든 채널들에 대해서 단일의 대화 레벨 및 단일의 한 세트의 동적범위 정보 파라미터들을 사용한다. 그러나, AC-3는 2개의 채널들이 독립적으로 동작하게 하는 동작 모드를 포함하는데, 즉, 각 채널은 독립적인 대화 레벨 및 동적범위 정보를 갖는다. 이 모드에서, 2개의 채널들 중 두 번째는 DIALN0RM2, COMPR2 및 DYNRNG2 파라미터들을 사용한다. (도 9 참조). DIALNORM2, COMPR2 및 DYNRNG2은 DIALNORM, C1OMPR, 및 DYNRNG와 정확히 동일한 방식으로 해석되어 사용되기 때문에, 후자의 동작만이 이 문헌에서 기술된다.
구현
발명은 하드웨어 혹은 소프트웨어, 혹은 이들의 조합(예를 들면, 프로그램가능 로직 어레이들)으로 구현될 수 있다. 다른 것이 명시되지 않은 한, 발명의 일부로서 포함된 알고리즘들 혹은 프로세스들은 본질적으로 임의의 특정한 컴퓨터 혹은 이외 다른 장치에 관계되지 않는다. 특히, 다양한 범용 기계들이 여기에 교시된 것들에 따라 작성된 프로그램들에 사용될 수 있고, 혹은 요구된 방법의 단계들을 수 행하기 위한 보다 전문화된 장치(예를 들면 집적회로들)을 구축하는 것이 더 편리할 수도 있다. 이에 따라, 발명은, 각각이 적어도 하나의 프로세서와, 적어도 하나의 데이터 저장 시스템(휘발성 및 비휘발성 메모리 및/또는 저장 요소들)과, 적어도 하나의 입력 디바이스 또는 포트와, 적어도 하나의 출력 디바이스 혹은 포트를 포함하는 것인 하나 이상의 프로그램가능 컴퓨터 시스템에서 실행하는 하나 이상의 컴퓨터 프로그램들에 구현될 수 있다. 프로그램 코드는 여기에 기술된 기능들을 수행하기 위해 데이터를 입력하고 출력 정보를 발생하기 위해 적용된다. 출력정보는 하나 이상의 출력 디바이스들에 기지의 형태로 적용된다.
각각의 이러한 프로그램은 컴퓨터 시스템과 통신하기 위해 임의의 원하는 컴퓨터 언어(머신, 어셈블리, 혹은 하이 레벨 절차, 논리, 혹은 객체 지향적 프로그램 언어들)로 구현될 수 있다. 어느 경우이든, 언어는 컴파일되거나 번역된 언어일 수 있다.
도면들에 도시된 일부 단계들 혹은 기능들은 복수의 서브-단계들을 수행하고 또한 하나의 단계 혹은 기능보다는 복수의 단계들 혹은 기능들로서 보여질 수도 있음을 알 것이다. 여기 여러 예들에 도시 및 기술된 다양한 디바이스들, 기능들, 단계들, 및 프로세스들은 여러 도면들에 도시된 것 이외의 방식들로 조합 혹은 분리되어 보여질 수도 있음을 알 것이다. 예를 들면, 컴퓨터 소프트웨어 명령 시퀀스들에 의해 구현될 때, 도면들의 다양한 기능들 및 단계들은 적합한 디지털 신호처리 하드웨어에서 동작하는 멀티스레드 소프트웨어 명령 시퀀스들에 의해 구현될 수 있고, 이 경우 도면들에 도시된 예들에서 여러 디바이스들 및 기능들은 소프트웨어 명령들의 부분들에 대응할 수 있다.
각각의 이러한 컴퓨터 프로그램은 바람직하게는 저장 매체들 혹은 디바이스가 여기 기술된 절차들을 수행하기 위해 컴퓨터 시스템에 의해 독출되었을 때 컴퓨터를 구성하고 동작시키기 위해서, 범용 혹은 전용 프로그램가능 컴퓨터에 의해 독출가능한 저장 매체 혹은 디바이스(예를 들면, 고체상태 메모리 혹은 매체, 혹은 자기 혹은 광학 매체)에 저장 혹은 이에 다운로드된다. 또한, 본 발명의 시스템은 컴퓨터 프로그램으로 구성된, 컴퓨터 독출가능한 저장 매체로서 구현되는 것으로 간주될 수 있고, 이렇게 구성되는 저장매체는 여기 기술된 기능들을 수행하는 특정의 기정의된 방식으로 컴퓨터 시스템이 동작하게 한다.
발명의 다수의 실시예들이 기술되었다. 그러나, 발명의 정신 및 범위 내에서 다양한 수정들이 행해질 수 있음을 알 것이다. 예를 들면, 여기에 기술된 일부 단계들은 순서가 독립적일 수 있고, 따라서 기술된 것과는 다른 순서로 수행될 수 있다.
Claims (28)
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 오디오를 표현하는 데이터 비트들;균일한 대화 소리세기 레벨(uniform dialog loudness level)을 제공하기 위한, 재생성된 출력 레벨을 제어하기 위해 사용될 수 있는 DIALNORM 데이터 워드를 표현하는 메타데이터; 및상기 메타데이터의 DIALNORM 데이터 워드에 대응하는 DIALNORM 데이터 워드를 포함하는 메타데이터 검증 정보;를포함하는 디지털 오디오 비트스트림을 취급하기 위한 처리 방법으로서,상기 메타데이터의 DIALNORM 데이터 워드와 상기 검증 정보의 DIALNORM 데이터 워드를 비교하는 단계; 및(a) 상기 비교에 따른 차이가 임계치보다 크면, 상기 메타데이터 검증 정보의 DIALNORM 데이터 워드로 상기 메타데이터를 교체하며, 그리고,(b) 상기 비교에 따른 차이가 임계치 보다 작으면, 상기 메타데이터를 교체하지 않고 남겨두는 단계;를 포함하는 것을 특징으로 하는디지털 오디오 비트스트림을 처리하기 위한 방법.
- 삭제
- 삭제
- 오디오를 표현하는 데이터 비트들;균일한 대화 소리세기 레벨(uniform dialog loudness level)을 제공하기 위한, 디코딩된 출력 레벨을 제어하기 위해 사용될 수 있는 DIALNORM 데이터 워드를 표현하는 메타데이터; 및상기 메타데이터의 DIALNORM 데이터 워드에 대응하는 DIALNORM 데이터 워드를 포함하는 메타데이터 검증 정보;를포함하는 디지털 오디오 비트스트림을 디코딩하기 위한 처리 방법으로서,상기 메타데이터의 DIALNORM 데이터 워드와 상기 검증 정보의 DIALNORM 데이터 워드를 비교하는 단계; 및(a) 상기 비교에 따른 차이가 임계치 보다 크면, 상기 메타데이터 검증 정보의 DIALNORM 데이터 워드를 이용하여 상기 디지털 오디오 비트스트림을 디코딩하며, 그리고,(b) 상기 비교에 따른 차이가 임계치 보다 작으면, 상기 메타데이터의 DIALNORM 데이터 워드를 이용하여 상기 디지털 오디오 비트스트림을 디코딩하는 단계;를 포함하는 것을 특징으로 하는디지털 오디오 비트스트림을 디코딩하기 위한 처리 방법.
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US67136105P | 2005-04-13 | 2005-04-13 | |
US60/671,361 | 2005-04-13 | ||
PCT/US2006/011202 WO2006113062A1 (en) | 2005-04-13 | 2006-03-23 | Audio metadata verification |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080009078A KR20080009078A (ko) | 2008-01-24 |
KR101253225B1 true KR101253225B1 (ko) | 2013-04-16 |
Family
ID=36655019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020077023402A KR101253225B1 (ko) | 2005-04-13 | 2006-03-23 | 오디오 메타데이터 검증 |
Country Status (17)
Country | Link |
---|---|
US (1) | US20090063159A1 (ko) |
EP (1) | EP1878010B1 (ko) |
JP (1) | JP5166241B2 (ko) |
KR (1) | KR101253225B1 (ko) |
CN (1) | CN101160616B (ko) |
AU (1) | AU2006237491B2 (ko) |
BR (1) | BRPI0609300A2 (ko) |
CA (1) | CA2604817C (ko) |
DK (1) | DK1878010T3 (ko) |
ES (1) | ES2527552T3 (ko) |
HK (1) | HK1113429A1 (ko) |
IL (1) | IL186047A (ko) |
MX (1) | MX2007012734A (ko) |
MY (1) | MY147064A (ko) |
PL (1) | PL1878010T3 (ko) |
TW (1) | TW200638335A (ko) |
WO (1) | WO2006113062A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102453919B1 (ko) | 2022-05-09 | 2022-10-12 | (주)피플리 | 인공지능 기반 문화 콘텐츠 관련 가이드 음원의 검증 방법, 장치 및 시스템 |
Families Citing this family (55)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7461002B2 (en) | 2001-04-13 | 2008-12-02 | Dolby Laboratories Licensing Corporation | Method for time aligning audio signals using characterizations based on auditory events |
US7610205B2 (en) | 2002-02-12 | 2009-10-27 | Dolby Laboratories Licensing Corporation | High quality time-scaling and pitch-scaling of audio signals |
US7711123B2 (en) | 2001-04-13 | 2010-05-04 | Dolby Laboratories Licensing Corporation | Segmenting audio signals into auditory events |
DE602005005640T2 (de) | 2004-03-01 | 2009-05-14 | Dolby Laboratories Licensing Corp., San Francisco | Mehrkanalige audiocodierung |
US7508947B2 (en) | 2004-08-03 | 2009-03-24 | Dolby Laboratories Licensing Corporation | Method for combining audio signals using auditory scene analysis |
KR101251426B1 (ko) | 2005-06-03 | 2013-04-05 | 돌비 레버러토리즈 라이쎈싱 코오포레이션 | 디코딩 명령으로 오디오 신호를 인코딩하기 위한 장치 및방법 |
DE602007011594D1 (de) | 2006-04-27 | 2011-02-10 | Dolby Lab Licensing Corp | Tonverstärkungsregelung mit erfassung von publikumsereignissen auf der basis von spezifischer lautstärke |
JP4193865B2 (ja) * | 2006-04-27 | 2008-12-10 | ソニー株式会社 | デジタル信号切換え装置及びその切換え方法 |
JP4175390B2 (ja) * | 2006-06-09 | 2008-11-05 | ソニー株式会社 | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
US7934264B2 (en) * | 2007-07-27 | 2011-04-26 | International Business Machines Corporation | Methods, systems, and computer program products for detecting alteration of audio or image data |
EP2232700B1 (en) | 2007-12-21 | 2014-08-13 | Dts Llc | System for adjusting perceived loudness of audio signals |
RU2468451C1 (ru) * | 2008-10-29 | 2012-11-27 | Долби Интернэшнл Аб | Защита от ограничения сигнала с использованием заранее существующих метаданных коэффициента усиления аудиосигнала |
US9179235B2 (en) * | 2008-11-07 | 2015-11-03 | Adobe Systems Incorporated | Meta-parameter control for digital audio data |
US8527267B2 (en) * | 2008-12-04 | 2013-09-03 | Linear Accoustic, Inc. | Adding additional data to encoded bit streams |
TWI384459B (zh) * | 2009-07-22 | 2013-02-01 | Mstar Semiconductor Inc | 音框檔頭之自動偵測方法 |
US8538042B2 (en) * | 2009-08-11 | 2013-09-17 | Dts Llc | System for increasing perceived loudness of speakers |
TWI525987B (zh) | 2010-03-10 | 2016-03-11 | 杜比實驗室特許公司 | 在單一播放模式中組合響度量測的系統 |
EP2589234A4 (en) | 2010-06-29 | 2018-01-24 | Georgia Tech Research Corporation | Systems and methods for detecting call provenance from call audio |
US8948406B2 (en) * | 2010-08-06 | 2015-02-03 | Samsung Electronics Co., Ltd. | Signal processing method, encoding apparatus using the signal processing method, decoding apparatus using the signal processing method, and information storage medium |
US20120033819A1 (en) * | 2010-08-06 | 2012-02-09 | Samsung Electronics Co., Ltd. | Signal processing method, encoding apparatus therefor, decoding apparatus therefor, and information storage medium |
TWI716169B (zh) * | 2010-12-03 | 2021-01-11 | 美商杜比實驗室特許公司 | 音頻解碼裝置、音頻解碼方法及音頻編碼方法 |
TWI574565B (zh) * | 2011-03-31 | 2017-03-11 | Sony Corp | A transmitting apparatus, a transmitting method, a receiving apparatus, a receiving method, a computer-readable medium, and a broadcasting system |
US9620131B2 (en) | 2011-04-08 | 2017-04-11 | Evertz Microsystems Ltd. | Systems and methods for adjusting audio levels in a plurality of audio signals |
EP2695161B1 (en) | 2011-04-08 | 2014-12-17 | Dolby Laboratories Licensing Corporation | Automatic configuration of metadata for use in mixing audio programs from two encoded bitstreams |
US8965774B2 (en) * | 2011-08-23 | 2015-02-24 | Apple Inc. | Automatic detection of audio compression parameters |
WO2013078056A1 (en) | 2011-11-22 | 2013-05-30 | Dolby Laboratories Licensing Corporation | Method and system for generating an audio metadata quality score |
JP5909100B2 (ja) * | 2012-01-26 | 2016-04-26 | 日本放送協会 | ラウドネスレンジ制御システム、伝送装置、受信装置、伝送用プログラム、および受信用プログラム |
US9312829B2 (en) | 2012-04-12 | 2016-04-12 | Dts Llc | System for adjusting loudness of audio signals in real time |
EP2680259A1 (en) * | 2012-06-28 | 2014-01-01 | Thomson Licensing | Method and apparatus for watermarking an AC-3 encoded bit stream |
FR2996388B1 (fr) * | 2012-10-01 | 2015-10-30 | Sigfox | Procede de transmission d'une information utile entre deux terminaux et procede de generation d'une table d'association utilisee dans le cadre de la transmission |
CN112652316B (zh) * | 2013-01-21 | 2023-09-15 | 杜比实验室特许公司 | 利用响度处理状态元数据的音频编码器和解码器 |
RU2631139C2 (ru) | 2013-01-21 | 2017-09-19 | Долби Лэборетериз Лайсенсинг Корпорейшн | Оптимизация громкости и динамического диапазона через различные устройства воспроизведения |
RU2719690C2 (ru) * | 2013-01-21 | 2020-04-21 | Долби Лабораторис Лайсэнзин Корпорейшн | Аудиокодер и аудиодекодер с метаданными громкости и границы программы |
RU2639663C2 (ru) | 2013-01-28 | 2017-12-21 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Способ и устройство для нормализованного проигрывания аудио медиаданных с вложенными метаданными громкости и без них на новых медиаустройствах |
US9559651B2 (en) * | 2013-03-29 | 2017-01-31 | Apple Inc. | Metadata for loudness and dynamic range control |
TWM487509U (zh) | 2013-06-19 | 2014-10-01 | 杜比實驗室特許公司 | 音訊處理設備及電子裝置 |
US20150025894A1 (en) * | 2013-07-16 | 2015-01-22 | Electronics And Telecommunications Research Institute | Method for encoding and decoding of multi channel audio signal, encoder and decoder |
CN109920440B (zh) | 2013-09-12 | 2024-01-09 | 杜比实验室特许公司 | 用于各种回放环境的动态范围控制 |
SG11201603116XA (en) * | 2013-10-22 | 2016-05-30 | Fraunhofer Ges Forschung | Concept for combined dynamic range compression and guided clipping prevention for audio devices |
PT3522554T (pt) | 2014-05-28 | 2021-01-06 | Fraunhofer Ges Forschung | Processador de dados e transporte de dados de controlo do utilizador para descodificadores e renderizadores de áudio |
US9286383B1 (en) | 2014-08-28 | 2016-03-15 | Sonic Bloom, LLC | System and method for synchronization of data and audio |
EP4044180A1 (en) * | 2014-10-01 | 2022-08-17 | Dolby International AB | Decoding an encoded audio signal using drc profiles |
CN112185402B (zh) | 2014-10-10 | 2024-06-04 | 杜比实验室特许公司 | 基于发送无关的表示的节目响度 |
US10338794B2 (en) | 2015-05-15 | 2019-07-02 | Spotify Ab | Playback of media streams in dependence of a time of a day |
US20160337429A1 (en) * | 2015-05-15 | 2016-11-17 | Spotify Ab | Method and device for resumed playback of streamed media |
US9837086B2 (en) * | 2015-07-31 | 2017-12-05 | Apple Inc. | Encoded audio extended metadata-based dynamic range control |
US11130066B1 (en) | 2015-08-28 | 2021-09-28 | Sonic Bloom, LLC | System and method for synchronization of messages and events with a variable rate timeline undergoing processing delay in environments with inconsistent framerates |
FR3044814A1 (fr) * | 2016-04-21 | 2017-06-09 | Continental Automotive France | Systeme et procede de controle du volume sonore dans un systeme multimedia |
US20170311005A1 (en) * | 2016-04-26 | 2017-10-26 | Szu-Tung Lin | Method of wireless audio transmission and playback |
US10210881B2 (en) * | 2016-09-16 | 2019-02-19 | Nokia Technologies Oy | Protected extended playback mode |
US10091349B1 (en) | 2017-07-11 | 2018-10-02 | Vail Systems, Inc. | Fraud detection system and method |
US10623581B2 (en) | 2017-07-25 | 2020-04-14 | Vail Systems, Inc. | Adaptive, multi-modal fraud detection system |
TWI809289B (zh) | 2018-01-26 | 2023-07-21 | 瑞典商都比國際公司 | 用於執行一音訊信號之高頻重建之方法、音訊處理單元及非暫時性電腦可讀媒體 |
CN113993060A (zh) | 2018-04-09 | 2022-01-28 | 杜比国际公司 | 用于mpeg-h 3d音频的三自由度(3dof+)扩展的方法、设备和系统 |
US11250867B1 (en) * | 2019-10-08 | 2022-02-15 | Rockwell Collins, Inc. | Incorporating data into a voice signal with zero overhead |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002530950A (ja) * | 1998-11-17 | 2002-09-17 | ドルビー・ラボラトリーズ・ライセンシング・コーポレーション | フレームベースとする符号化された音声情報により補助情報をエンコードする方法 |
JP2002539487A (ja) * | 1999-03-10 | 2002-11-19 | ディジマーク コーポレイション | 信号処理方法及び装置 |
Family Cites Families (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59221047A (ja) * | 1983-05-30 | 1984-12-12 | Victor Co Of Japan Ltd | デイジタル信号伝送における同期信号検出回路 |
JPH0681058B2 (ja) * | 1983-09-26 | 1994-10-12 | パイオニア株式会社 | デ−タ送受信方式 |
CA1235189A (en) * | 1985-01-14 | 1988-04-12 | Haruhiko Akiyama | Error correction encoding system |
US4953112A (en) * | 1988-05-10 | 1990-08-28 | Minnesota Mining And Manufacturing Company | Method and apparatus for determining acoustic parameters of an auditory prosthesis using software model |
MY110584A (en) * | 1992-10-09 | 1998-08-29 | Koninklijke Philips Electronics Nv | Method of and device for correction errors and erasures in digital information |
GB2272615A (en) * | 1992-11-17 | 1994-05-18 | Rudolf Bisping | Controlling signal-to-noise ratio in noisy recordings |
JP2611667B2 (ja) * | 1994-07-27 | 1997-05-21 | 日本電気株式会社 | 異種フレーム形式混在通信システム |
JP2671821B2 (ja) * | 1994-09-28 | 1997-11-05 | 日本電気株式会社 | データ伝送装置 |
US5646997A (en) * | 1994-12-14 | 1997-07-08 | Barton; James M. | Method and apparatus for embedding authentication information within digital data |
JP2768297B2 (ja) * | 1995-03-23 | 1998-06-25 | 日本電気株式会社 | データ転送方法とその装置 |
US5699369A (en) * | 1995-03-29 | 1997-12-16 | Network Systems Corporation | Adaptive forward error correction system and method |
CA2175394C (en) * | 1995-05-19 | 2001-07-03 | Ichiro Okajima | Terminal, network, and communication system |
US5828677A (en) * | 1996-03-20 | 1998-10-27 | Lucent Technologies Inc. | Adaptive hybrid ARQ coding schemes for slow fading channels in mobile radio systems |
US6427012B1 (en) * | 1997-05-19 | 2002-07-30 | Verance Corporation | Apparatus and method for embedding and extracting information in analog signals using replica modulation |
US6185309B1 (en) * | 1997-07-11 | 2001-02-06 | The Regents Of The University Of California | Method and apparatus for blind separation of mixed and convolved sources |
US6088826A (en) * | 1997-08-21 | 2000-07-11 | Advanced Micro Devices Inc. | Method for checking data for errors in data communication systems |
US6141788A (en) * | 1998-03-13 | 2000-10-31 | Lucent Technologies Inc. | Method and apparatus for forward error correction in packet networks |
GB2340351B (en) * | 1998-07-29 | 2004-06-09 | British Broadcasting Corp | Data transmission |
JP2000235458A (ja) * | 1999-02-15 | 2000-08-29 | Sharp Corp | 補助記憶装置およびこの補助記憶装置を搭載した情報処理装置 |
JP3728578B2 (ja) * | 1999-03-31 | 2005-12-21 | 富士通株式会社 | マルチキャリア伝送における不均一誤り保護方法並びにその符号器及び復号器 |
JP3699863B2 (ja) * | 1999-07-12 | 2005-09-28 | 株式会社日立コミュニケーションテクノロジー | エラー訂正符号装置、エラー訂正符号復号装置および伝送装置 |
US6748362B1 (en) * | 1999-09-03 | 2004-06-08 | Thomas W. Meyer | Process, system, and apparatus for embedding data in compressed audio, image video and other media files and the like |
US7027981B2 (en) * | 1999-11-29 | 2006-04-11 | Bizjak Karl M | System output control method and apparatus |
US6748441B1 (en) * | 1999-12-02 | 2004-06-08 | Microsoft Corporation | Data carousel receiving and caching |
US6678855B1 (en) * | 1999-12-02 | 2004-01-13 | Microsoft Corporation | Selecting K in a data transmission carousel using (N,K) forward error correction |
US6553511B1 (en) * | 2000-05-17 | 2003-04-22 | Lsi Logic Corporation | Mass storage data integrity-assuring technique utilizing sequence and revision number metadata |
JP2002006885A (ja) * | 2000-06-19 | 2002-01-11 | Sharp Corp | 条件付きデジタル情報の記録再生装置と再生方法とそれに用いられる記録媒体 |
JP2004506947A (ja) * | 2000-08-16 | 2004-03-04 | ドルビー・ラボラトリーズ・ライセンシング・コーポレーション | 補足情報に応答するオーディオ又はビデオ知覚符号化システムのパラメータ変調 |
AUPQ952700A0 (en) * | 2000-08-21 | 2000-09-14 | University Of Melbourne, The | Sound-processing strategy for cochlear implants |
US6928433B2 (en) * | 2001-01-05 | 2005-08-09 | Creative Technology Ltd | Automatic hierarchical categorization of music by metadata |
US6807528B1 (en) * | 2001-05-08 | 2004-10-19 | Dolby Laboratories Licensing Corporation | Adding data to a compressed data frame |
US7295755B2 (en) * | 2001-06-22 | 2007-11-13 | Thomson Licensing | Method and apparatus for simplifying the access of metadata |
US20040037421A1 (en) * | 2001-12-17 | 2004-02-26 | Truman Michael Mead | Parital encryption of assembled bitstreams |
US7707221B1 (en) * | 2002-04-03 | 2010-04-27 | Yahoo! Inc. | Associating and linking compact disc metadata |
AU2003237120B2 (en) * | 2002-04-29 | 2008-10-09 | Sony Electronics, Inc. | Supporting advanced coding formats in media files |
US7551745B2 (en) * | 2003-04-24 | 2009-06-23 | Dolby Laboratories Licensing Corporation | Volume and compression control in movie theaters |
US7617438B2 (en) * | 2004-04-15 | 2009-11-10 | International Business Machines Corporation | Method and apparatus for supporting checksum offload in partitioned data processing systems |
DE602005019559D1 (de) * | 2004-05-11 | 2010-04-08 | Nippon Telegraph & Telephone | Schallpaket-sendeverfahren, schallpaket-sendevorrichtung, schallpaket-sendeprogramm und aufzeichnungsmedium, in dem dieses programm aufgezeichnet wurde |
US7617109B2 (en) * | 2004-07-01 | 2009-11-10 | Dolby Laboratories Licensing Corporation | Method for correcting metadata affecting the playback loudness and dynamic range of audio information |
-
2006
- 2006-03-22 TW TW095109832A patent/TW200638335A/zh unknown
- 2006-03-23 KR KR1020077023402A patent/KR101253225B1/ko active IP Right Grant
- 2006-03-23 WO PCT/US2006/011202 patent/WO2006113062A1/en active Application Filing
- 2006-03-23 ES ES06748775.1T patent/ES2527552T3/es active Active
- 2006-03-23 EP EP06748775.1A patent/EP1878010B1/en active Active
- 2006-03-23 MX MX2007012734A patent/MX2007012734A/es active IP Right Grant
- 2006-03-23 US US11/918,367 patent/US20090063159A1/en not_active Abandoned
- 2006-03-23 AU AU2006237491A patent/AU2006237491B2/en active Active
- 2006-03-23 JP JP2008506487A patent/JP5166241B2/ja active Active
- 2006-03-23 DK DK06748775.1T patent/DK1878010T3/en active
- 2006-03-23 CA CA2604817A patent/CA2604817C/en active Active
- 2006-03-23 PL PL06748775T patent/PL1878010T3/pl unknown
- 2006-03-23 CN CN2006800121334A patent/CN101160616B/zh active Active
- 2006-03-23 BR BRPI0609300-0A patent/BRPI0609300A2/pt not_active Application Discontinuation
- 2006-04-07 MY MYPI20061584A patent/MY147064A/en unknown
-
2007
- 2007-09-18 IL IL186047A patent/IL186047A/en active IP Right Grant
-
2008
- 2008-03-27 HK HK08103411.7A patent/HK1113429A1/xx unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002530950A (ja) * | 1998-11-17 | 2002-09-17 | ドルビー・ラボラトリーズ・ライセンシング・コーポレーション | フレームベースとする符号化された音声情報により補助情報をエンコードする方法 |
JP2002539487A (ja) * | 1999-03-10 | 2002-11-19 | ディジマーク コーポレイション | 信号処理方法及び装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102453919B1 (ko) | 2022-05-09 | 2022-10-12 | (주)피플리 | 인공지능 기반 문화 콘텐츠 관련 가이드 음원의 검증 방법, 장치 및 시스템 |
Also Published As
Publication number | Publication date |
---|---|
JP5166241B2 (ja) | 2013-03-21 |
EP1878010A1 (en) | 2008-01-16 |
IL186047A0 (en) | 2008-02-09 |
IL186047A (en) | 2013-11-28 |
MX2007012734A (es) | 2008-01-11 |
HK1113429A1 (en) | 2008-10-03 |
JP2008536193A (ja) | 2008-09-04 |
DK1878010T3 (en) | 2015-01-12 |
CN101160616A (zh) | 2008-04-09 |
ES2527552T3 (es) | 2015-01-26 |
AU2006237491A1 (en) | 2006-10-26 |
CN101160616B (zh) | 2011-12-07 |
WO2006113062A1 (en) | 2006-10-26 |
KR20080009078A (ko) | 2008-01-24 |
CA2604817A1 (en) | 2006-10-26 |
EP1878010B1 (en) | 2014-11-05 |
CA2604817C (en) | 2015-06-16 |
US20090063159A1 (en) | 2009-03-05 |
MY147064A (en) | 2012-10-15 |
TW200638335A (en) | 2006-11-01 |
BRPI0609300A2 (pt) | 2010-03-23 |
PL1878010T3 (pl) | 2015-03-31 |
AU2006237491B2 (en) | 2011-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101253225B1 (ko) | 오디오 메타데이터 검증 | |
KR101112565B1 (ko) | 오디오 정보의 재생 음량 및 동적 범위에 영향을 미치는메타데이터를 정정하는 방법 | |
JP5219800B2 (ja) | コード化されたオーディオの経済的な音量計測 | |
US20100274557A1 (en) | Method and an apparatus for processing a signal | |
CN110600043A (zh) | 音频处理单元、由音频处理单元执行的方法和存储介质 | |
US9373334B2 (en) | Method and system for generating an audio metadata quality score | |
US20220238127A1 (en) | Method and system for coding metadata in audio streams and for flexible intra-object and inter-object bitrate adaptation | |
EP1517300B1 (en) | Encoding of audio data | |
US7444289B2 (en) | Audio decoding method and apparatus for reconstructing high frequency components with less computation | |
US7860721B2 (en) | Audio encoding device, decoding device, and method capable of flexibly adjusting the optimal trade-off between a code rate and sound quality | |
US20030220800A1 (en) | Coding multichannel audio signals | |
RU2800629C2 (ru) | Аудиокодер и аудиодекодер с метаданными громкости и границы программы |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20160324 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20170329 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20180327 Year of fee payment: 6 |