KR100942860B1 - 특정된 엔트리 포인트를 가진 세그먼트로 데이터 스트림을 생성하고 해석하는 장치, 방법 및 이들을 기록한 컴퓨터로 읽을 수 있는 매체 - Google Patents

특정된 엔트리 포인트를 가진 세그먼트로 데이터 스트림을 생성하고 해석하는 장치, 방법 및 이들을 기록한 컴퓨터로 읽을 수 있는 매체 Download PDF

Info

Publication number
KR100942860B1
KR100942860B1 KR1020077016665A KR20077016665A KR100942860B1 KR 100942860 B1 KR100942860 B1 KR 100942860B1 KR 1020077016665 A KR1020077016665 A KR 1020077016665A KR 20077016665 A KR20077016665 A KR 20077016665A KR 100942860 B1 KR100942860 B1 KR 100942860B1
Authority
KR
South Korea
Prior art keywords
data
segment
information block
frame
seg
Prior art date
Application number
KR1020077016665A
Other languages
English (en)
Other versions
KR20070094798A (ko
Inventor
안드레아 에렛
홀거 호리취
미하엘 쉬그
안드레아 슈나이더
Original Assignee
돌비 스웨덴 에이비
에스케이 텔레콤주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 돌비 스웨덴 에이비, 에스케이 텔레콤주식회사 filed Critical 돌비 스웨덴 에이비
Publication of KR20070094798A publication Critical patent/KR20070094798A/ko
Application granted granted Critical
Publication of KR100942860B1 publication Critical patent/KR100942860B1/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/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61PSPECIFIC THERAPEUTIC ACTIVITY OF CHEMICAL COMPOUNDS OR MEDICINAL PREPARATIONS
    • A61P3/00Drugs for disorders of the metabolism
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61PSPECIFIC THERAPEUTIC ACTIVITY OF CHEMICAL COMPOUNDS OR MEDICINAL PREPARATIONS
    • A61P3/00Drugs for disorders of the metabolism
    • A61P3/04Anorexiants; Antiobesity agents
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • H04N19/895Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder in combination with error concealment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/233Processing of audio elementary streams

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Veterinary Medicine (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Chemical & Material Sciences (AREA)
  • Chemical Kinetics & Catalysis (AREA)
  • General Chemical & Material Sciences (AREA)
  • Medicinal Chemistry (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Organic Chemistry (AREA)
  • Pharmacology & Pharmacy (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • General Health & Medical Sciences (AREA)
  • Public Health (AREA)
  • Hematology (AREA)
  • Diabetes (AREA)
  • Obesity (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Child & Adolescent Psychology (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Apparatus For Radiation Diagnosis (AREA)
  • Circuits Of Receivers In General (AREA)
  • Stereo-Broadcasting Methods (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

연속하는 데이터 프레임에 조직화되어 있는 데이터를 이용하여 일련의 세그먼트를 가진 데이터 스트림을 생성하는 장치가 제공된다. 상기 장치는, 데이터 프레임으로부터의 데이터를 제1 세그먼트 및 제2 세그먼트를 가진 상기 일련의 세그먼트로 패킷화하는 패킷화기로, 상기 제2 세그먼트는 해석가능 데이터 엔티티 및 데이터 엔티티 프래그먼트를 가지고, 상기 데이터 엔티티 프래그먼트는 해석가능 데이터 엔티티에 선행하는 해석가능 데이터 엔티티의 일부분만을 가지고 있는, 상기 패킷화기를 포함한다. 상기 장치는, 상기 제2 세그먼트에 연계된 정보 블록을 부가하는 정보 블록 부가기로서, 상기 정보 블록은 엔트리 포인트를 상기 제2 세그먼트로 지시하고, 상기 엔트리 포인트는 상기 데이터 엔티티 프래그먼트에 후속하는 상기 해석가능 데이터 엔티티의 개시점을 지시하고 있는, 상기 정보 블록 부가기를 포함한다.
에러 유발성 채널, 인지 음향, 연속하는 데이터 프레임, 패킷화기, 정보 블록

Description

특정된 엔트리 포인트를 가진 세그먼트로 데이터 스트림을 생성하고 해석하는 장치, 방법 및 이들을 기록한 컴퓨터로 읽을 수 있는 매체 {APPARATUS AND METHOD FOR GENERATING AND INTERPRETING A DATA STREAM WITH SEGMENTS HAVING SPECIFIED ENTRY POINTS, AND COMPUTER READABLE MEDIUM STORING A PROGRAM THEREOF}
본 발명은 고정 길이 데이터 패킷의 에러 유발성 채널을 통한 데이터 전송에 관한 것이고, 특히 인지 오디오 코딩에 적합한 것이다.
MPEG Layer 3, MPEG AAC, 또는 MPEG HE-AAC (Moving Picture Experts Group High Efficient Advanced Aoudio Coding) 과 같은 현재의 오디오 코딩 방법은, 인간의 귀의 음향 인지 성질을 이용하여 디지털 오디오 신호의 데이터 율을 감소시킬 수 있다. '프레임'이라 불리는 고정된 개수의 오디오 샘플의 블록이, 고정된 시간 간격으로 압축 비트 스트림으로 인코딩된다. 이 압축된 오디오 프레임은, 디코더에서 오디오 샘플 표현으로 다시 변환된다. 오디오 신호의 인코딩 관련성은 서로 다른 오디오 프레임 마다 변하게 되므로, 공지의 비트 저장 기술은 프레임간의 비트 교환을 허용한다. 전체적인 비트율은 일정할지라도, 결과적으로 비트 스트림 내의 프레임들의 길이는 가변적이다. 인코딩된 프레임은, 디코더가 압축 데이터를 해석하는데 이용되는 기초 정보와 사이드 정보 (Side Information)를 가진 부분을 포함하고 있으며, 압축 스펙트럼 데이터가 그 뒤에 뒤따른다.
전송을 위해, 그 압축 오디오 프레임은, MPEG ACC를 위한 ADTS (Audio Data Transport Stream) 전송 포맷 또는 LOAS (Low Overhead Audio Stream) 전송 포맷 등의 전송 포맷에 실려야(내장되어야) 한다. 전송시에 에러가 발생하면, 디코더는 하나 이상의 프레임의 손실 후에 비트 스트림에 대해 동기 워드 (sync word)를 통해 재 동기화를 실행할 수 있다. 현재의 오디오 코덱에서는 스펙트럼 데이터와 사이드 정보가 MPEG ACC의 허프만(Huffmann) 코딩과 같은 가변-길이 코드 워드로써 엔트로피 코딩될 수도 있기 때문에, 단일 비트 에러라도, 디코더가 전체의 프레임을 제거하여야 하고, 출력 신호를 무음화하거나, 무손실 프레임들 사이에 잡음을 삽입하거나 이들을 결합하는 것과 같은 에러 은닉 기술을 이용하여야 한다. 전송시에 더 큰 영역에서 에러가 발생하면, 디코더는 비트 스트림에 대해 재 동기화를 여전히 실행할 수 있지만, 손실된 프레임의 개수에 대한 정보는 가지지 못하게 된다. 또한, 다수 프레임의 은닉에 추가하여, 디코더가 재생하는 오디오에 대해 가청 시간 쉬프트를 야기하거나 또는 버퍼 오버런 또는 버퍼 언더런에 기인하는 누락(dropout)을 야기하게 된다. 특히, 에러 유발성 채널들에 대해서, 그 전송되는 오디오 신호의 품질을 고품질로 유지하기 위해서는, 정교한 에러 관리가 가능해야 하는 것은 매우 중요하다.
본 발명은, 고정 길이 데이터 세그먼트를 가진 에러 유발성 채널들에 대한 전송에 특히 적절하다. 압축 오디오 프레임과 같은 프레임의 가변 길이 때문에, 전술한 ADTS 포맷 또는 LOAS 포맷과 같은 공지의 전송 포맷을 위한 새로운 프레임이 고정 길이 데이터 세그먼트의 임의의 위치에서 개시하는 것이 일반적이다. 따라서, 2개의 연속하는 프레임의 데이터를 포함하고 있는 세그먼트가 손실된 경우에, 이들 프레임은 폐기되므로, 디코더의 에러 은닉 처리에 의해 대체되어야 한다.
유럽 특허 출원 공개 번호 EP 1021039 A2 공보에는, 화상 처리 장치 및 방법이 개시되어 있다.
다음의 상세한 설명에 있어서, 데이터 프레임은 MPEG-4 고효율 AAC와 같은 오디오 코덱으로부터의 데이터 프레임을 지칭한다. 이러한 데이터 프레임은 비트 단위로 변화하는 길이, 즉, 가변 크기를 가진다. 또한, 이 데이터 프레임은 일정한 크기의 수개의 데이터 세그먼트로 분할된다. 데이터 프레임 각각에 대해서 하나 또는 다수개의 일정한 크기의 세그먼트가 있을 수 있다. 일정한 크기를 가진 데이터 세그먼트 내에서는, 데이터 엔티티들이 존재한다. 이들은, 예로서 인코딩된 신호의 스펙트럼 데이터를 표현하는 Huffman 코드 워드와 같은 것에 대응한다. 데이터 세그먼트는 수개의 데이터 엔티티를 포함한다. 그 중의 일부는 해석가능 데이터 엔티티라 불리는 완전한 데이터 엔티티이고, 일부는 그 자체로는 해석 가능하지 않은 불완전한 데이터 엔티티인 데이터 엔티티 프래그먼트이다.
또한, 다음의 상세한 설명에 있어서, 전송 프로토콜 헤더 또는 정보 블록은, 단일의 데이터 세그먼트가 자체로 포함하게 하는 정보, 즉, 일정한 데이터 세그먼트가 커버하는 오디오 스펙트럼의 범위를 기술하는 정보를 포함하게 하는 요소들을 지칭하며, 그 데이터 세그먼트에 있어서 해석가능 데이터 엔티티가 다른 데이터 세그먼트의 유효한 수신에 의존하지 않고 시작한다.
본 발명은, 고정 길이 데이터 세그먼트를 가진 에러 유발성 채널에 걸쳐 가변 길이 프레임을 가진 패키징된 데이터를 효율적으로 전송하는 방법을 제공한다. 바람직한 실시예에서, 이 방법은 가변 길이의 오디오 프레임의 형식으로 압축 오디오 데이터를 전송하는 데에 이용되며, 그 방법은 다음과 같은 단계를 포함한다.
인코더에서, 임의의 크기를 가진 압축 오디오 데이터 프레임이 에러 유발성 채널을 통한 전송을 위해 고정 크기 데이터 세그먼트로 매핑되고; 전송 프로토콜 헤더 또는 정보 블록이 데이터 세그먼트의 각각의 개시점에서 삽입되고; 전송 프로토콜 헤더 또는 정보 블록은 그 해석가능 데이터 엔티티가 데이터 세그먼트 내의 어디에서 개시하는지를 식별할 수 있는 정보를 포함한다. 다른 실시 예에서는, 그 정보는 가변 길이 오디오 데이터 프레임의 경계를 식별하고; 전술한 전송 프로토콜 헤더 정보 또는 정보 블록은 매우 효율적인 방법을 통해 단일의 바이트로 코딩될 수 있다. 이것은, 높은 가능성 (likelihood)을 가진 경우만이 코딩되도록 어떤 파라미터의 상호 의존성을 이용함으로써 구현된다.
디코더에서, 전송 처리기가 세그먼트 및 전송이 성공하는지 여부를 나타내는 정보를 수신하고, 전송 프로토콜 헤더 또는 정보 블록을 추출하고, 디코더로 전달되어 수신된 프레임 각각의 데이터를 연결하고; 데이터 세그먼트 손실이 있는 경우에 전송 프로토콜 헤더 또는 정보 블록은 정확한 시간 동기를 제공하게 하는, 손실된 오디오 프레임의 개수를 재구성하기 위한 정보를 포함하고; 데이터 세그먼트 손실이 있는 경우에 전송 프로토콜 헤더 또는 정보 블록은 단일의 데이터 세그먼트가 자체로 포함하게 하는 정보, 즉, 일정한 데이터 세그먼트가 커버하는 오디오 스펙트럼의 범위를 기술하는 정보를 포함하게 하는 정보를, 다른 데이터 세그먼트의 유효한 수신에 의존하지 아니하고 포함한다. 이러한 정보가 디코더로 전달되면, 부분적 은닉 방법이 적용된다.
본 발명의 목적은, 에러 유발성 채널을 통하여 오디오 데이터를 전송하는 환경에서도 향상된 오디오 품질을 얻을 수 있는 기술을 제공하는 것이다.
본 발명의 제1 태양에 따르면, 본 발명의 목적은 패킷화기를 포함하는 장치에 의해 성취될 수 있다. 이 패킷화기는 데이터 프레임으로부터의 데이터를 제1 세그먼트 및 제2 세그먼트를 가진 상기 일련의 세그먼트로 패킷화한다. 여기서, 제2 세그먼트는 해석가능 데이터 엔티티 및 데이터 엔티티 프래그먼트를 가지고, 상기 데이터 엔티티 프래그먼트는 해석가능 데이터 엔티티에 선행하는 해석가능 데이터 엔티티의 일부분만을 가지고 있다. 상기 장치는 상기 제2 세그먼트에 연계된 정보 블록을 부가하는 정보 블록 부가기를 추가로 포함한다. 여기서 상기 정보 블록은 엔트리 포인트를 상기 제2 세그먼트로 지시하고, 상기 엔트리 포인트는 상기 데이터 엔티티 프래그먼트에 후속하는 상기 해석가능 데이터 엔티티의 개시점을 지시한다.
본 발명의 제2 태양에 따르면, 본 발명의 목적은, 연계된 부가적인 정보 블록을 가진 제1 세그먼트 및 연계된 정보 블록을 가진 제2 세그먼트를 가진 일련의 세그먼트를 포함하는 데이터 스트림을 해석하는 장치로서, 상기 부가적인 정보 블록은 해석가능 데이터 엔티티를 가진 데이터 프레임의 개시점을 지시하고, 상기 제2 세그먼트는 에러 세그먼트에 후속하며, 상기 정보 블록은 엔트리 포인트를 상기 제2 세그먼트로 지시하고, 상기 엔트리 포인트는 데이터 엔티티 프래그먼트에 후속하는 해석가능 데이터 엔티티의 개시점을 지시하고, 상기 데이터 엔티티 프래그먼트는 상기 해석가능 데이터 엔티티에 선행하는 해석가능 데이터 엔티티의 일부분만을 지시하는 상기 장치에 의해 성취될 수 있다. 상기 장치는: 상기 에러 세그먼트를 검출하는 에러 검출기; 상기 데이터 프레임의 상기 개시점에 관한 정보를 추출하기 위해 상기 부가적인 정보 블록을 해석하고, 상기 엔트리 포인트에 관한 정보를 추출하기 위해 상기 정보 블록을 해석하는 정보 블록 해석기; 및 상기 데이터 프레임의 상기 개시점으로부터 시작하는 상기 데이터를 수집하고, 상기 에러 세그먼트 및 상기 데이터 엔티티 프래그먼트를 삭제하고, 상기 부가적인 정보 블록 및 상기 정보 블록을 삭제하고, 삭제된 프레임 데이터에 대해 에러 은닉 동작을 수행함으로써, 상기 데이터 프레임의 데이터를 재구성하는 프레임 재구성기를 포함한다.
본 발명의 제3 태양에 따르면, 본 발명의 목적은 일련의 세그먼트에 조직화되는 데이터를 포함하는 데이터 스트림에 의해 성취될 수 있다. 상기 데이터 스트림은: 제1 세그먼트; 해석가능 데이터 엔티티 및 데이터 엔티티 프래그먼트를 가진 제2 세그먼트로서, 상기 데이터 엔티티 프래그먼트는 해석가능 데이터 엔티티에 선행하는 해석가능 데이터 엔티티의 일부분만을 포함하는, 상기 제2 세그먼트; 및 엔트리 포인트를 상기 제2 세그먼트로 지시하는 정보블록으로서, 상기 엔트리 포인트는 상기 데이터 엔티티 프래그먼트를 후속하는 상기 해석가능 데이터 엔티티의 개시점을 지시하는, 상기 정보 블록을 포함한다.
본 발명의 제4 태양에 따르면, 본 발명의 목적은 연속하는 데이터 프레임에 조직화되어 있어 데이터를 이용하여 일련의 세그먼트를 가진 데이터 스트림을 생성하는 방법에 의해 성취될 수 있다. 상기 방법은: 데이터 프레임으로부터의 데이터를 제1 세그먼트 및 제2 세그먼트를 가진 상기 일련의 세그먼트로 패킷화하는 단계와, 이 패킷화하는 단계에서는 상기 제2 세그먼트는 해석가능 데이터 엔티티 및 데이터 엔티티 프래그먼트를 가지고, 상기 데이터 엔티티 프래그먼트는 해석가능 데이터 엔티티에 선행하는 해석가능 데이터 엔티티의 일부분만을 가지고 있고, 그리고 상기 제2 세그먼트에 연계된 정보 블록을 부가하는 단계, 상기 정보 블록은 엔트리 포인트를 상기 제2 세그먼트로 지시하고, 상기 엔트리 포인트는 상기 데이터 엔티티 프래그먼트에 후속하는 상기 해석가능 데이터 엔티티의 개시점을 지시하고 있는, 부가 단계를 포함한다.
본 발명의 제5 태양에 따르면, 본 발명의 목적은 연계된 부가적인 정보 블록을 가진 제1 세그먼트 및 연계된 정보 블록을 가진 제2 세그먼트를 가진 일련의 세그먼트를 포함하는 데이터 스트림을 해석하는 방법으로서, 상기 부가적인 정보 블록은 해석가능 데이터 엔티티를 가진 데이터 프레임의 개시점을 지시하고, 상기 제2 세그먼트는 에러 세그먼트에 후속하며, 상기 정보 블록은 엔트리 포인트를 상기 제2 세그먼트로 지시하고, 상기 엔트리 포인트는 데이터 엔티티 프래그먼트에 후속하는 해석가능 데이터 엔티티의 개시점을 지시하고, 상기 데이터 엔티티 프래그먼트는 상기 해석가능 데이터 엔티티에 선행하는 해석가능 데이터 엔티티의 일부분만을 지시하는 상기 방법에 의해 성취될 수 있다. 상기 방법은: 상기 에러 세그먼트를 검출하는 단계; 상기 데이터 프레임의 상기 개시점에 관한 정보를 추출하기 위해 상기 부가적인 정보 블록을 해석하고, 상기 엔트리 포인트에 관한 정보를 추출하기 위해 상기 정보 블록을 해석하는 단계; 및 상기 데이터 프레임의 상기 개시점으로부터 시작하는 상기 데이터를 수집하고, 상기 에러 세그먼트 및 상기 데이터 엔티티 프래그먼트를 삭제하고, 상기 부가적인 정보 블록 및 상기 정보 블록을 삭제하고, 삭제된 프레임 데이터에 대해 에러 은닉 동작을 수행함으로써, 상기 데이터 프레임의 데이터를 재구성하는 단계를 포함한다. 본 발명은 또한, 전술한 본 발명의 방법을 구현하기 위한 컴퓨터 프로그램을 포함한다.
요약하면, 본 발명은 새롭고 효율적인 전송 포맷을 정의한다. 이로써, 에러 유발성 채널을 통한 손실 데이터 량을 상당히 감소시키게 되며, 이는 압축 오디오 데이터를 전송하는 데에 특히 적합하다. 이는, 에러 유발성 채널을 통해 전송되는 각각의 세그먼트에 부가적인 정보를 부가함으로써 구현되며, 이러한 정보는 데이터 출력의 해석을 재개하기 위해 특히 엔트리 포인트를 지시한다. 바람직하게는, 이들 엔트리 포인트는 스케일 팩터 대역의 개시점에서의 제1 코드 워드들이다. 스케일 팩터 대역은, 스펙트럼 표현내의 일정 영역에 대한 스케일 값을 정의하고 코드 워드로 인코딩된 프레임의 스펙트럼 값을 포함하며, 이들 코드 워드는 대응하는 주파수 값의 올림 차순으로 소팅된다. 엔트리 포인트에 관한 정보는 데이터 스트림으로의 옵셋을 포함하고, 여기서 새로운 스케일 팩터 대역이 개시한다. 이들 엔트리 포인트를 선택함으로써, 좀더 적은 정보가 전송되므로, 오버헤드가 감소하게 된다. 기본적으로는, 다른 코드 워드가 선택될 수 있지만, 스케일 팩터 대역이 엔트리 포인트를 표현하고 있는 코드 워드에 대한 추가 정보가 전송되어야 한다. 매우 효율적인 코딩에 있어서, 정보 블록은 단일의 바이트 또는 매우 적은 바이트만을 포함한다.
본 발명의 바람직한 실시예는, 상이한 데이터 프레임에 상이한 카운터 값을 할당함으로써 데이터 프레임 수에 관한 정보를 제공한다. 그 카운터 값을 해석함으로써, 손실된 데이터 프레임의 수가 식별될 수 있다. 이로써, 시간 동기의 오류 문제가 크게 감소하게 된다. 본 발명의 또 다른 실시예에서는, 데이터의 재정렬이 수행되어, 프레임 전체를 재구성하는 데에 (도 7 참조) 기본적으로 필요한 사이드 정보 데이터와 같은 매우 중요한 데이터가 단일의 세그먼트 내에 위치하게 되므로, 오디오 데이터 프레임 전체를 손실할 가능성을 줄이게 되는 이점을 얻을 수 있다.
압축 오디오 프레임을 표현하는 데이터 프레임의 예에서는, 비손상 오디오 프레임들 간의 데이터 내삽법(interpolating)에 의한 것, 에러 부분을 잡음 신호로 대체하는 것, 또는 단순히 출력을 무음화하는 것에 의한 은닉 처리는 공지된 처리 기법들이다. 이들 중의 가장 적절한 선택은, 상황에 의존한다. 예로서, 잡음으로의 대체가 허용되는 지의 여부, 정교한 내삽 알고리즘을 수행할 수 있을 정도로 충분한 자원이 가용한지 여부에 따라 선택된다. 본 발명의 이점 중에 가장 중요한 것은, 가장 최적인 경우에, 에러 세그먼트가 그 세그먼트내의 전송된 데이터를 손실만으로 되고, 그 프레임 내의 나머지 데이터 모두는 정확히 디코딩될 수 있다는 것이다.
본 발명은 예시적인 실시 예를 통하여 설명될 것이다. 본 발명의 특징은 다음과 같은 첨부된 도면을 참조하여 상세한 설명을 통하여 용이하게 이해되고 평가 될 수 있을 것이다:
도 1은 고정 길이를 가진 데이터 세그먼트와 가변 길이를 가진 압축 오디오 프레임을 도시하고;
도 2a는 본 발명에 따른 고정 길이 데이터 세그먼트를 가진 전송 채널에 대한 데이터 전송의 블록도를 도시하고;
도 2b는 본 발명에 따른 고정 길이 데이터 세그먼트를 가진 전송 채널에 대한 전송을 포함하는, 완전한 오디오 인코딩 및 디코딩 체인의 블록도를 도시하고;
도 3a 내지 도 3c는 본 발명에 있어서, 정보 블록들이 다수의 데이터 세그먼트에 대해 어떻게 분배되는지, 예를 들면, 하나의 원시 오디오 프레임과 전송 정보의 합이 다수의 데이터 세그먼트에 대해 어떻게 분배되는 지의 예를 도시하고;
도 4는 향상된 (에러) 은닉 기법을 도시하고;
도 5는 정보 블록을 가진 2개의 연속한 세그먼트와 데이터 엔티티를 도시하고;
도 6은 8 비트를 포함하는 정보 블록을 도시하고; 그리고
도 7은 인코딩된 오디오 프레임을 도시하는 개략도이다.
이하, 고정 길이 데이터 세그먼트를 가진 에러 유발성 채널을 통하여 압축 오디오의 전송을 향상시키는 본 발명의 원리를 예시적인 실시예를 통하여 설명한다. 여기에 설명된 구성과 구체적인 사항의 변경 및 변형이 관련 기술 분야의 통상의 지식을 가진 자에게 분명하다는 것은 이해될 것이다. 따라서, 본 실시예의 설명 및 예시에 있어서 구체적인 사항에 의해 본 발명이 제한되는 것이 아니다.
도 1은 고정 세그먼트 크기의 채널을 통해 전송되는, 가변 길이를 가진 압축 데이터 프레임을 도시한다. 도 1에는, 데이터 스트림 (102)의 부분으로서, 데이터 프레임 (d1), 데이터 프레임 (d2), 및 데이터 프레임 (d3)가 도시되어 있다. 이들 데이터 프레임을 고정 세그먼트 크기의 채널 (101)을 통해 전송하기 위해, 데이터 프레임들은 길이 (d)의 고정 크기 세그먼트들로 분할 된다. 본 발명은, 고정 길이 데이터 세그먼트를 가진 에러 유발성 채널을 통한 압축 오디오의 전송에 있어서, 전술한 불리한 점을 새롭고 효율적인 전송 포맷을 정의하여 해결하고자 한다. 특히, 고정 길이 데이터 세그먼트를 가진 에러 유발성 채널을 통해 전송이 수행되는 때에 유발될 수 있는, 2개의 데이터 프레임을 포함하는 세그먼트가 전송중에 손상되는 경우, 다중 프레임의 손실 가능성이 배제된다.
도 2a는 본 발명에 따른 데이터 흐름을 개략적으로 도시한다. 우선, 데이터는 패킷화기 (210)에 입력되고, 정보 블록 부가기 (220)에 보내진다. 에러 유발성 채널 (230)을 통과한 후에, 데이터는 에러 검출기 (240)에 보내지고, 에러 검출기는 그 데이터를 정보 블록 해석기 (250)로 보내고, 최종적으로 프레임 재구성기 (260)으로 보내지며, 여기서 데이터 출력 스트림이 생성된다. 본 발명의 목적은, 예로서 압축 오디오 프레임과 같은 가변 길이 데이터 프레임을 포함하는 입력 데이터 스트림을 고정 길이 데이터 세그먼트에 내장시키는 장치 및 방법을 제공하는 것이다. 따라서, 제1 단계에서, 패킷화기 (210)은, 그 패킷화기 (210)의 출력이 고정 크기를 가진 데이터 세그먼트가 되도록 데이터를 재배열한다. 정보 블록 부가 기 (220)는 정보 블록을 각각의 세그먼트에 부가한다. 이들 세그먼트를 에러 유발성 전송 채널 (230)을 통해 전송함에 의하여, 수개의 세그먼트가 왜곡될 수 있고, 에러 검출기 (240)은 에러 세그먼트를 식별한다. 전송 에러에 관한 정보는, 하부층 전송 프로토콜로부터 또는 부가적인 제어 정보로부터 얻을 수 있으며, 본 발명의 실시 예에서, 이들은 데이터 스트림에 부가되어 있다. 에러 세그먼트가 식별된 후에, 데이터 스트림으로부터 가능한 많은 정보를 재구성하기 위해, 정보 블록 해석기 (250)은 정보 블록을 독출한다. 이에 대해서는 도 3a에 더 자세히 설명되어 있다. 이 정보로써, 프레임 재구성기 (260)은 원시 데이터 프레임의 비훼손 부분을 구성하고, 훼손 부분에 대한 추가 정보를 제공하여, 도 4에 더욱 자세히 설명하는 바와 같이, 예로서 오디오 디코더에 의해 출력 스트림에 은닉이 적용될 수 있다. 세그먼트의 바람직한 크기는 하부층 전송 프로토콜에 의해 고정되며, 이는 전형적으로 데이터 스트림을 고정 크기의 세그먼트들로 분할하여 데이터를 전송한다. 다른 실시예에서는, 세그먼트의 크기는 하부층 전송 프로토콜에서의 세그먼트 크기의 배수일 수 있다. 이러한 대안적 실시예에 따르면, 정보 블록에 기인하는 오버헤드가 하부층 전송 프로토콜에서의 세그먼트 크기와 동일한 세그먼트 크기의 오버헤드보다 작다는 이점이 있다. 하지만, 더 많은 데이터가 손상될 가능성이 있는 단점이 있다.
도 2b는, 가변 길이 오디오 프레임을 고정 길이 데이터 세그먼트 내에 내장하는 방법을 도시한다. 디지털 오디오 입력 신호는 임의의 오디오 인코더 (201)에 공급된다. 본 발명에 따르면, 패킷화기 (210) 및 정보 블록 부가기 (220)를 포함 하는 패킷화기 (202)에서, 압축 오디오 프레임이 재배열되고, 전송 정보, 즉, 본 발명에 따른 정보 블록이 가변 길이 압축 오디오 프레임에 부가된다. 패킷화기 (202)의 출력은, 고정 크기를 가진 일련의 데이터 세그먼트이다. 이들 세그먼트를 에러 유발성 전송 채널 (230)을 통해 전송함으로써, 수개의 세그먼트가 제거될 수도 있다. 디-패킷화기 (204)는, 전송 정보, 즉, 본 발명에 따른 정보 블록을 추출하고, 패킷화기 (202)에 의한 변경전의 본래의 표현에 따라 비트 스트림을 재정렬한다. 압축 오디오 프레임은, 디지털 오디오 출력 샘플의 일 프레임을 계산하는 오디오 디코더 (205)를 통해 공급된다. 오디오 디코더 (205)가 훼손된 오디오 프레임의 비트 스트림 표현의 부분들에 대한 부가적인 정보를 디-패킷화기 (204)로부터 얻기 때문에, 비훼손 세그먼트에 통상의 디코딩을 행하고 훼손 세그먼트에 대응하는 주파수 스펙트럼의 부분에만 은닉을 행하는 부분적 은닉을 행할 수 있다.
도 3a는, 데이터 스트림 (301)의 데이터 프레임의 일 예와 상이한 세그먼트로의 분할의 일 예를 도시한다. 본 실시예에 있어서, 데이터 프레임의 데이터를 포함하는 제1 세그먼트는 Seg#-1로 나타내고, 나머지 데이터는 세그먼트 (Seg#0 내지 Seg#3) 에 분배된다. 본 발명에 따르면, 각각의 세그먼트는 고정 길이를 가지며, 정보 블록을 가진다. 세그먼트 Seg#0의 정보 블록은 302로 나타내고, 세그먼트 Seg#1의 정보 블록은 304로 나타낸다. 본 발명의 바람직한 실시예에서, 정보 블록은 각각의 세그먼트에 저장된 원시 데이터에 선행한다.
정보 블록의 목적은 다음의 가능성 있는 엔트리 포인트의 지시 및 시그널링된 엔트리 포인트에 속하는 위치를 포인팅하는 옵셋을 제공하는 것이고, 이로써 이 전의 세그먼트가 에러 전송에서 훼손될 지라도, 오디오 프레임의 스펙트럼 데이터를 디코딩하는 디코더에 의한 데이터 추출이 허락된다. 도 3a에 있어서, 포인터 (305)는 예시적으로 주어진 것이다. 새로운 해석가능 데이터 엔티티는, 엔트리 포인트에서 시작한다. 데이터 스트림이 압축 오디오 프레임의 스트림을 포함하고 스펙트럼 데이터가 가변 길이의 코드 워드로 코딩되는 예를 고찰하면, 이는 세그먼트의 개시점으로부터 다음의 가능성 있는 엔트리 포인트까지의 옵셋을, 일 비트의 정밀도로 시그널링할 것을 요구한다. 이것은, 시그널링될 위치의 개수를 증가시킨다. 하지만, 본 발명에 따르면, 엔트리 포인트 식별과 엔트리 포인트 옵셋의 가능성 있는 모든 조합을 시그널링하는 것을 고려할 필요는 없다. 오버헤드를 낮게 유지하기 위해서, 예로서 최대 확률 값을 포함하는 부분집합만을 시그널링하는 것도 가능하며, 그 결과 완전히 은닉될 필요가 있는 프레임의 개수를 감소시키게 되며, 따라서 인지된 오디오 품질이 종래기술의 방법과 비교하여 향상된다.
압축 오디오 데이터를 전송하는 경우에, 가능성 있는 엔트리 포인트들은 기본적으로 새로운 코드 워드의 개시점이 된다. 하지만, 오버헤드를 가능한 한 적게 유지하기 위해서, 바람직한 실시예에서는, 전술한 바와 같이, 엔트리 포인트는 스케일 팩터 대역의 개시점이 될 것이고, 정보 블록은 스케일 팩터 대역에 관한 정보를 제공하게 될 것이다. 주요 목적이 최대의 데이터 안정성을 제공하는 것이고, 오버헤드의 크기가 커지는 것이 허용된다면, 정보 블록은 다중의 엔트리 포인트를 지시할 수 있고, 이들 엔트리 포인트는 스케일 팩터의 개시점에 일치할 필요도 없다.
본 발명에 따르면, 데이터 프레임내의 기본적 데이터가 그 프레임의 개시점에서 저장되고 데이터 프레임내의 데이터의 나머지 부분을 디코딩할 것이 요구되는 경우에, 바람직한 실시예서는, 이 데이터는 새로운 데이터 세그먼트의 개시점에 위치되어야 한다. 예를 들면, 압축 오디오 데이터에 대하여, 오디오 프레임을 재구성하는 데에 필요한 정보가 프레임의 개시점에서 저장되는 경우가 이에 해당한다 (이하의 도 7 참조). 기본적 데이터를 새로운 데이터 세그먼트의 개시점에서 저장함으로써, 단일의 세그먼트 손실의 경우에 디코더가 2개의 연속하는 데이터 프레임을 은닉할 필요가 없다는 것이 보장되며, 이는 다음의 예에 의해 분명하게 될 것이다.
본 발명의 바람직한 실시예에 따르면, X0,X1, ..., Xm 의 순서로 소팅된 데이터 프레임의 데이터가 데이터 (X0, ..., Xi)를 포함하는 새로운 세그먼트 (Seg#0)로 개시되며 (더 중요한 데이터는 데이터 프레임내의 데이터의 나머지 부분을 디코딩하는 데에 필요함), 연속하는 데이터는 다음의 순서에 따라 소팅된다. 세그먼트 (Seg#-1)는 데이터 (Xi +1, ..., Xj)를 포함하고, 세그먼트 (Seg#1)는 데이터 (Xj +1, ..., Xk)를 포함하고, 세그먼트 (Seg#2)는 데이터 (Xk +1, ...., Xl)를 포함하고, 세그먼트 (Seg#3)는 나머지 데이터 (Xl +1, ..., Xm)를 포함한다 (도 3a 참조). 도 3a의 세그먼트 (Seg#-1)가 훼손되고 데이터 프레임에 저장된 제1 데이터가 데이터 프레임내의 데이터에 관한 기본적인 정보를 포함한다면, 후속하는 세그먼트 (Seg#0 내지 Seg# 3)가 정확하게 디코딩될 수 없기 때문에, 이러한 재정렬에 의해, 단일의 세그먼트 손실의 경우에, 2개의 연속하는 데이터 프레임을 은닉해야 하는 위험이 회피된다.
새로운 데이터 프레임 (Seg#0)의 개시점을 포함하는 데이터 세그먼트와 데이터 프레임 (Seg#1 내지 Seg#3)의 부가적인 부분을 포함하는 연속하는 세그먼트를 구별하기 위해, 서로 상이한 세그먼트 형식이 예로서 정보 블록 (302 및 304)내에 각각 시그널링되어 있다. 데이터 프레임의 개시점 (즉, 기본적 정보)는 도 3a에서 세그먼트 (Seg#0)에 위치되므로, 세그먼트 (Seg#-1)은 데이터 프레임으로부터의 기본적 데이터에 후속하는 데이터로 채워질 필요가 있다. 따라서, 이전의 데이터 프레임에 의해 남겨진 불완전한 이전의 세그먼트 (Seg#-1)의 나머지 부분은 현재의 데이터 프레임의 비트 스트림 데이터 (Xi +1, ..., Xj)의 일부분들로 채워진다. 데이터 프레임의 제1 세그먼트의 정보 블록 (302)내에 포함된 도 3a에서의 옵셋 포인터 (303)은 이전의 세그먼트 (Seg#-1)내의 데이터의 개시점을 포인팅한다. 8 비트를 포함하는 정보 및 고정 길이를 가진 데이터 세그먼트에 대한 aacPlus 비트 스트림의 압축 오디오 프레임의 전송에 대한 실시예가 아래와 같이 주어진다.
다른 실시예에서는, 세그먼트 (Seg#0)의 정보 블록이 새로운 데이터 프레임 각각에 대해서 증가하는 프레임 카운터를 가진다. 이러한 기법은, 더 많은 세그먼트가 손실되는 경우에 재동기화를 고려하고 있다. 데이터 프레임 (예로서, 304)의 개시점에 속하지 않은 다른 세그먼트에 대한 정보 블록은 제1세그먼트 정보 블록 (302)과 상이하다.
도 3b 및 도 3c는 데이터 프레임이 압축 오디오 데이터를 포함하는 예에 대한 정보 블록의 서로 상이한 형태를 더욱 명확히 정의하고 있다.
도 3b은, 정보 블록 (304)을 가진 데이터 (Xj +1, ..., Xk)를 포함하는 세그먼트 (Seg#1), 정보 블록 (306)을 가진 데이터 (Xk +1, ..., Xl)를 포함하는 세그먼트 (Seg#2)의 일부분, 및 세그먼트 (Seg#0)의 일부분을 도시한다. 이 예에서, 압축 오디오 데이터는, 대응하는 주파수 값에 올림차순으로 소팅되어 있는 코드 워드 (CW)로 인코딩된 프레임의 스펙트럼 값을 포함하는 상이한 스케일 팩터 대역 (SFB)에 조직화되어 있다. 정보 블록 (304)후에, 세그먼트 (Seg#1)내의 제1 데이터는 스케일 팩터 대역 (SFBa)에 속하는 코드 워드 (CWz)와 코드 워드 (CWz -1)을 포함한다. 이 스케일 팩터 대역에 속하는 나머지 코드 워드는 선행하는 세그먼트 (Seg#0)에 존재하며, 여기에 최종의 코드 워드 (CWz -1)이 도시되어 있다. 코드 워드 (CW0, CW1, ...)을 가진 다음의 스케일 팩터 대역 (SFBa +1)는 위치 (Xb)에서 개시한다. 정보 블록 (304)는, 비트 값 (Xb)을 의미하는 스케일 팩터 대역 (SFBa +1)의 개시점에 관한 정보 및 스케일 팩터 대역을 식별하기 위한 정보 (Ib)를 포함한다. 추가 1 비트는, 위치 (Xb)가 세그먼트 (Seg#1) 내의 포인터인 것을 지시하며, 즉, 이는 정보 블록이 연계된 동일한 세그먼트로의 순방향 포인터이라는 것을 지시한다. 본 실시예에서, 이 1 비트 신호는 값 0을 가진다. 다음의 세그먼트 (Seg#2) 는 정보 블록 (306)을 가진다. 이 정보 블록은, 엔트리 포인트가 속한 스케일 팩터 대역을 식별하는 정보 (Ic)와 연계된 엔트리 포인트 (Xc)의 비트 값을 포함하고, 위치 (Xc)를 지시하는 값 0를 가진 1비트 신호는 현재의 세그먼트 (Seg#2)로의 포인터이다 (상기 위치는 도면에 도시되어 있지 아니하다).
도 3c는 데이터 (X0, ..., Xi)를 포함하는 세그먼트 (Seg#0)의 정보 블록인 정보 블록 (302)를 더욱 상세히 설명한다. 이 정보 블록은, 현재의 데이터 프레임에 속한 다른 모든 정보 블록과 상이하다. 도 3c는 데이터 (Xi +1, ..., Xj)를 포함하는 세그먼트 (Seg#-1), 세그먼트 (Seg#0, 및 세그먼트 (Seg#1)의 일부분을 도시한다. 본 발명의 실시예에서, 데이터 프레임의 제1 데이터는 세그먼트 (Seg#0) 내에 존재하고, 코드 워드로 인코딩되는 프레임의 스펙트럼 값을 포함하는 후속하는 일련의 스케일 팩터 대역에 조직화되는 스펙트럼 데이터가 후속하는 사이드 정보 블록 (SIDE INFO)에서 개시한다. 제1 스케일 팩터 대역 (SFB1)은 코드 워드 (CW0, CW1 등)을 포함한다. 세그먼트 (Seg#0)는 스케일 팩터 대역 (SFBa)에 속하는 코드 워드 (CWa)까지의 스펙트럼 데이터를 포함하고, 후속하는 코드 워드는 세그먼트 (Seg#-1)에 포함되며, 이는 코드 워드 (CWa +2, ...)가 후속하는 코드 워드 (CWa +1)에서 개시하는 것을 의미한다. 이 경우에, 정보 블록 (302)내의 포인터는 세그먼트 (Seg#0)내의 위치를 포인팅하고 있지 않지만, 대신에 코드 워드 (CWa +1)이 개시하는 위치 (Xa)에 관한 정보를 포함하고 있다. 세그먼트 (Seg#-1)는 엔트리 포인트의 개시점에 대한 비트 값을 제공하는 포인터 (Xp)를 포함하는 정보 블록 (301) 및 대응하는 스케일 팩터 대역을 식별하는 정보 (Ip)를 가지고 있다. 위치 (Xa)전의 스펙트럼 데이터는 현재의 데이터 프레임에 속하지 않는다. 정보 블록 (302)는, 각각의 데이터 프레임에 값을 할당하는 프레임 카운터 (f#)를 더욱 포함하고 있다. 본 발명의 실시예에서, 이 프레임 카운터 값은 일정한 값 후에 랩어라운드되며, 즉, 데이터 프레임의 그룹에 속하는 데이터 프레임에게만 상이한 카운터 값이 할당된다. 하기의 예에서, 데이터 프레임의 그룹은 6개의 프레임을 포함하며, 즉 카운터 값은 수 0 내지 5를 포함하다. 정보 블록 (302)는, 그 정보 블록을 식별하는 1비트 신호를 포함하는 데, 비트 스트림내의 위치에의 포인터를 포함하며 그 후에 현재의 프레임의 데이터가 저장된다. 따라서, 대응하는 포인터는 선행하는 세그먼트 (Seg#-1)로의 방향, 즉, 역방향 포인팅을 한다. 본 실시예에서, 그 값은 1 이며, 따라서, 정보 블록 (302)는 정보 블록 (304) 및 데이터 프레임 내의 다른 모든 정보 블록 (예로서 304)와 상이하고, 이때의 1비트 신호의 값은 0이다.
요약하면, 본 발명의 바람직한 실시예에서는, 전송된 데이터가 압축 오디오 데이터이고, 도 3a 내지 3c는 고정 세그먼트 길이의 전송 채널로 본 발명에 따른 전송 정보와 함께 내장되는 하나의 오디오 프레임을 도시한다. 각각에 세그먼트에는, 소량의 전송 정보가 그 세그먼트가 저장된 원시 오디오 데이터에 선행한다. 본 발명에 있어서, 단일의 세그먼트 손실의 경우에 2개의 연속하는 오디오 프레임 을 은닉해야 하는 위험을 회피하기 위해, 오디오 프레임은 항상 새로운 세그먼트 (Seg#0)에서 개시한다. 전송 정보 (302 및 304)에 있어서는, 새로운 오디오 프레임의 개시점을 포함하는 데이터 세그먼트 (Seg#0)와 예시적인 압축 오디오 프레임의 부가적인 부분을 포함하는 후속하는 세그먼트 (Seg#1 내지 Seg#3)을 구별할 수 있다. 이러한 구별은, 각각의 전송 정보 (302 및 304) 에 세그먼트 형태를 시그널링함으로써 수행된다 (도 3b 및 도 3c에서의 값 0 또는 1). 이전의 오디오 프레임에 의해 남겨진 불완전한 이전의 세그먼트 (Seg#-1)의 나머지 부분은 현재의 프레임의 데이터의 비트 스트림 데이터의 일부분들로 채워진다. 오디오 프레임의 제1 세그먼트의 전송 정보 (302)내에 포함된 도 3a에서의 옵셋은 이전의 세그먼트 (Seg#-1)내의 데이터의 개시점을 포인팅한다. 또한, 오디오 프레임의 개시점을 가진 세그먼트의 전송 정보에는, 새로운 오디오 프레임 각각에 대해서 증가하는 도 3c의 작은 프레임 카운터 (f#)가 있다. 이러한 기법은, 세그먼트가 손실되는 경우에 즉각적인 재동기화를 고려하고 있다. 프레임 카운터 (f#)에 의해서, 손실된 오디오 프레임의 개수는 항상 알려져 있어, 시간 동기의 오류 문제는 매우 감소하게 된다. 오디오 프레임 (304)의 개시점에 포함되지 않은 다른 세그먼트에 대한 전송 정보는 제1 세그먼트에 대한 전송 정보 (302)와 상이하다. 다음의 가능성 있는 엔트리 포인트의 지시 (도 3b의 I) 및 시그널링된 엔트리 포인트에 속하는 위치를 포인팅하는 옵셋 (도 3b의 Xb)에 의해, 이전의 세그먼트가 에러 전송에 의해 훼손되어 있을지라도, 디코더로 하여금 스펙트럼 데이터를 계속 디코딩할 수 있게 한다. 스 펙트럼 데이터가 가변 길이의 코드 워드로 코딩되는 경우가 있을 수 있다. 이는, 세그먼트의 개시점으로부터 다음의 가능성 있는 엔트리 포인트 비트까지의 옵셋을 정확히 시그널링할 것을 요구하며, 이로써 시그널링될 위치의 개수가 증가된다. 엔트리 포인트 식별과 엔트리 포인트 옵셋의 가능성 있는 모든 조합을 시그널링하는 것을 고려할 필요는 없다. 오버헤드를 낮게 유지하기 위해서, 최대 확률 값을 포함하는 부분집합만을 시그널링하는 것도 가능하며, 그 결과 완전히 은닉될 필요가 있는 프레임의 개수를 감소시키게 되며, 따라서 인지된 오디오 품질이 향상된다.
도 4는 부분적 은닉의 이점을 도시한다. 오디오 프레임의 예로서 3개의 연속하는 데이터 프레임, 즉, 데이터 프레임 (401), 데이터 프레임 (402), 및 데이터 프레임 (403)의 스펙트럼 표현이 되어 있다. 이 예에서는, 에러 전송 때문에 데이터 프레임 (402)내의 데이터 세그먼트가 손실되며, 다음의 데이터 프레임 (403) 뿐만 아니라 이전의 데이터 프레임 (401)에는 에러가 없다. 통상적으로, 데이터 프레임 (402) 전체가 손실되거나, 바람직한 경우에는 손실될 데이터 세그먼트에 대응하는 스펙트럼내의 위치의 모든 스펙트럼 데이터가 가용하지 않은 것으로 평가될 필요가 있다. 본 발명에 따르면, 예로서 스펙트럼 데이터의 디코딩과 같은 데이터 추출을 위한 가능성 있는 엔트리 포인트에 관한 부가적인 정보가, 그 훼손된 세그먼트 (예로서 디코딩 중에 스펙트럼 데이터와 같은 데이터의 작은 부분만을 손실한 것)를 스킵하게 한다. 이전 데이터 프레임 (401)의 알려진 데이터 (예로서, 스펙트럼 데이터) 및 그 후속하는 데이터 프레임 (403)에 의해서, 스펙트럼 데이터의 손실된 부분에 대한 대체가 에러 은닉 알고리즘에 의해 계산되어야 한다. 압축 오디오 프레임을 표현하는 데이터 프레임의 예에서는, 비손상 오디오 프레임들 간의 데이터 내삽법에 의한 것, 에러 부분을 잡음 신호로 대체하는 것, 또는 단순히 출력을 무음화하는 것에 의한 은닉 처리는 공지된 처리 기법들이다. 이들 중의 가장 적절한 선택은, 상황에 의존한다. 예로서, 잡음으로의 대체가 허용되는 지의 여부, 정교한 내삽 알고리즘을 수행할 수 있을 정도로 충분한 자원이 가용한지 여부에 따라 선택된다.
도 5는 디지털화된 데이터 스트림 (500)에 대한 예를 도시하며, 여기서 정보 블록은 가능성 있는 엔트리 포인트에 대한 정보를 포함하고 있다. 이는, 정보 블록 (505)를 가진 세그먼트 (510), 정보 블록 (515)를 가진 세그먼트 (520), 및 정보 블록 (525)를 가진 후속하는 세그먼트를 포함한다. 데이터 스트림 (500)내의 정보는 코드 워드에 조직화되고, 제1 코드 워드는 선행하는 세그먼트에서 개시하기 때문에 완전히 도시되어 있지 않다. 다음의 코드 워드는 535이며, 이에는 코드 워드 (550)이 후속한다. 코드 워드 (560)은 세그먼트 (510 및 520)의 세그먼트 경계를 넘어서 확장한다. 최종으로 도시된 코드 워드는 570이며, 이는 세그먼트 (520)에서 개시하며 후속하는 세그먼트까지 확장한다 (도 5에는 도시되어 있지 아니함). 정보 블록 (505)는 선행하는 세그먼트가 손실될 경우를 위해 가능성 있는 엔트리 포인트에 관한 정보를 포함하고 있어, 예로서 디코더는 데이터의 디코딩을 재개할 수 있다. 바람직한 실시예에서, 정보 블록내의 정보는 주어진 세그먼트내의 제1 코드 워드를 포인팅하지 않지만, 대신에 스케일 팩터 대역의 개시점에서 제1 코드 워드를 포인팅한다. 도 5에 도시된 예에서, 스케일 팩터 대역은 포인트 (540)에서 개시하고, 정보 블록은 새로운 스케일 팩터 대역의 데이터를 표현하는 엔트리 포인트에의 포인터 (505)를 가진다. 세그먼트 (520)의 정보 블록 (515)에서, 포인터 (565)는 엔트리 포인트를 포인팅하고, 여기서 코드 워드 (570)이 개시한다. 이 엔트리 포인터는 바람직하게는 스케일 팩터 대역의 개시점, 즉, 데이터 스트림내의 비트를 표현하고, 여기서 새로운 스케일 팩터 대역이 개시한다 (도 3a 내지 도 3c의 설명을 참조). 도 3에 도시된 예에서, 코드 워드 (570)은 후속하는 세그먼트로 확장되고, 정보 블록 (525)은 포인터 (575)를 제공하고, 여기서 그 코드 워드는 종료하며, 새로운 코드 워드가 개시한다.
도 6은 8 비트 (610...680)를 포함하는 정보 블록 (600)의 예를 도시한다. 이들 비트 중의 하나, 예로서 610은, 나머지 비트 (620...680)가 데이터 프레임의 개시점에 관한 정보를 포함하는지 여부 또는 나머지 비트 (620...680)가 가능성 있는 엔트리 포인트에 관한 정보를 포함하는지, 즉, 세그먼트로의 포인터를 정의하는지 여부를 시그널링한다. 비트 단위로 측정된 세그먼트의 크기가 7 비트보다 크면, 정보 블록으로 코딩될 수 없는 가능성 있는 엔트리 포인트의 어떤 위치가 존재하게 된다. 따라서, 특별한 세그먼트에 대해 엔트리 포인트가 정의될 수 없는 경우가 발생할 수 있다. 이러한 정보 블록의 명확한 구현예는 아래에 제공된다.
도 7은 예로서 MPEG HE aac와 같은 오디오 인코더에 의해 생성되는 데이터 프레임 (700)의 개략도이다. 이러한 경우에, 오디오 인코더로부터의 데이터 프레임은 사이드 정보 데이터를 포함하며, 이는 후속하는 스펙트럼 데이터의 스케일 팩 터 대역의 개시점을 지시하는 소정의 스케일 펙터 대역 인덱스의 값들을 결합시킨 코드 룩업 테이블 및 예로서 코딩 포맷과 같이 데이터 프레임을 정확히 해석하기 위한 디코더에 필요한 기본적인 정보를 포함하고 있다. 이 사이드 정보 데이터는 메인 정보 부분이 후속하는 데이터 프레임의 개시점에 위치하며, 그 메인 정보 부분은 가변 길이의 코드 워드로 인코딩되는 스펙트럼 데이터를 포함하고, 프레임의 스펙트럼 값을 포함하는 상이한 스케일 팩터 대역으로 그룹화되며, 스케일 값으로 재스케일이되고 코드 워드로 인코딩되며, 대응하는 주파수 값들의 올림 차순으로 소팅된다. 도 7에는, 코드 워드 (710), 코드 워드 (720), 및 코드 워드 (730)의 단지 3개의 코드 워드가 도시되어 있다.
요약하면, 본 발명은 새롭고 효율적인 전송 포맷을 정의한다. 이로써, 에러 유발성 채널을 통한 손실 데이터 량을 상당히 감소시키게 되며, 이는 압축 오디오 데이터를 전송하는 데에 특히 적합하다. 이는, 에러 유발성 채널을 통해 전송되는 각각의 세그먼트에 부가적인 정보를 부가함으로써 구현되며, 이러한 정보는 데이터 출력의 해석을 재개하기 위해 특히 엔트리 포인트를 지시한다. 바람직하게는, 이들 엔트리 포인트는 스케일 팩터 대역의 개시점에서의 제1 코드 워드들이다. 스케일 팩터 대역은, 스펙트럼 표현내의 일정 영역에 대한 스케일 값을 정의하고 코드 워드로 인코딩된 프레임의 스펙트럼 값을 포함하며, 이들 코드 워드가 소팅되는 순서는, 최저 값으로부터 더 높은 값들이 후속하도록 소팅된 스펙트럼 값의 순서에 의해 주어진다. 엔트리 포인트에 관한 정보는 데이터 스트림의 비트를 제공하고, 여기서 새로운 스케일 팩터 대역이 개시하고, 그것은 스케일 팩터 대역이 된다. 이들 엔트리 포인트를 선택함으로써, 좀더 적은 정보가 전송되므로, 오버헤드가 감소하게 된다. 기본적으로는, 다른 코드 워드가 선택될 수 있지만, 스케일 팩터 대역내의 코드 워드를 식별하기 위해서 추가 정보가 전송되어야 한다. 매우 효율적인 코딩에 있어서, 정보 블록은 단일의 바이트 또는 매우 적은 바이트만을 포함한다. 적은 오버헤드로 인하여, 모든 엔트리 포인트를 지시할 필요는 없고, 단지 엔트리 포인트의 소정의 위치가 지시될 수 있다. 예로서, 정보 블록의 비트의 수가 적으면, 세그먼트의 일 부분내의 위치들만이 지시될 수 있다. 이 경우에, 엔트리 포인트는 주어지지 않으며, 정보 블록은 빈 상태를 유지하거나 또는 이스케이프 (escape) 값이 주어진다.
본 발명의 실시예는, 상이한 데이터 프레임에 상이한 카운터 값을 할당함으로써 데이터 프레임 수에 관한 더 많은 정보를 제공한다. 그 카운터 값을 해석함으로써, 손실된 데이터 프레임의 수가 식별될 수 있다. 이로써, 시간 동기의 오류 문제가 크게 감소하게 된다. 본 발명의 또 다른 실시예에서는, 데이터의 재정렬이 수행되어, 프레임 전체를 재구성하는 데에 기본적으로 필요한 사이드 정보 데이터와 같은 매우 중요한 데이터가 단일의 세그먼트 내에 위치하게 되고, 프레임 전체를 손실할 가능성을 줄이게 되는 이점을 얻을 수 있다.
또 다른 실시예에서는, 전송 후에 에러 세그먼트를 식별하기 위해, 정보 블록은 부가적인 추가 정보를 포함한다. 이는, 예로서 CRC, 패리티 비트 등이다. 이러한 에러 검출은, 예로서 ADTS 또는 LOAS와 같은 하부층 전송 프로토콜에서의 통상의 에러 검출 기법에 추가적으로 제공된다. 또한, 바람직한 실시예에서, 비트 단위로 측정되는 정보 블록의 크기는 모든 정보 블록에 대하여 고정되어 있다. 바람직한 실시예에서는, 세그먼트 크기 또한 고정되어 있기 때문에, 이는 각각의 세그먼트에 저장된 데이터가 고정 크기를 가진다는 것을 의미한다.
압축 오디오 프레임을 표현하는 데이터 프레임의 예에서는, 비손상 오디오 프레임들 간의 데이터 내삽법에 의한 것, 에러 부분을 잡음 신호로 대체하는 것, 또는 단순히 출력을 무음화하는 것에 의한 은닉 처리는 공지된 처리 기법들이다. 이들 중의 가장 적절한 선택은, 상황에 의존한다. 예로서, 잡음으로의 대체가 허용되는 지의 여부, 정교한 내삽 알고리즘을 수행할 수 있을 정도로 충분한 자원이 가용한지 여부에 따라 선택된다. 비손상 프레임의 카운터 값을 내삽화함으로써, 다수의 에러 프레임이 식별될 수 있고, 이들 다수의 에러 프레임에 대한 에러 은닉이 수행될 수 있다. 이러한 에러 은닉은, 압축 오디오 데이터에 대해, 대응하는 코드 워드를 대체함으로써 또는 디코딩 후에 대응하는 오디오 신호의 에러 부분을 대체함으로써, 수행될 수 있다.
본 발명의 이점 중에 가장 중요한 것은, 가장 최적인 경우에, 에러 세그먼트가 그 세그먼트 내의 전송된 데이터를 손실만으로 되고, 그 프레임 내의 나머지 데이터 모두는 에러 은닉을 수행하여 재구성될 수 있다는 것이다.
다른 실시예에 있어서, 세그먼트의 크기는 하부층 전송 프로토콜의 세그먼트의 크기의 배수가 될 수 있다. 이러한 대체 실시예는, 정보 블록에 의한 오버헤드가 하부층 전송 프로토콜에서의 세그먼트의 크기와 동일한 크기의 세그먼트 크기에 대한 오버헤드 보다 작게 된다는 이점을 가지고 있다. 하지만, 이는 더 많은 데이 터 손실이 있을 수도 있다는 단점을 가지게 된다.
전술한 본 발명을 더욱 명료하게 개시하기 위해, 추가적인 실시예에서는, 고정 길이를 가진 데이터 세그먼트에 대한 aacPlus 비트 스트림의 압축 오디오 프레임의 전송을 상세히 설명한다. 이 예에서, 데이터 세그먼트의 길이는 168 비트이고, 새로운 세그먼트는 20ms 마다 도달한다. 따라서, 전체적인 데이터 율은 168 비트/20 ms = 8400 비트/s 이다. 20ms 마다, 세그먼트가 1 바이트 정보 블록과 함께 개시한다. 그 aacPlus 오디오 프레임은 항상, aacPlus 사이드 정보 데이터 (AAC 스펙트럼 데이터를 디코딩하는데 필요한 사이드 정보 데이터를 포함함)를 가진 정보 블록 직후에 개시한다. 그 aacPlus 오디오 프레임에는, AAC 스펙트럼 데이터가 후속한다. 스펙트럼 데이터는, 0 스펙트럼 라인으로부터 최대 스펙트럼 라인까지 정렬된다.
그 aacPlus 사이드 정보를 포함하는 20ms 세그먼트가 손실되면, 오디오 프레임 전체가 aacPlus 디코더에 의해 은닉될 필요가 있다. 하지만, aacPlus 사이드 정보 데이터를 포함하지 않는 20ms 세그먼트중의 하나가 손실되면, 스펙트럼이 단지 일부분만이 은닉될 필요가 있다. 이는, 20ms 세그먼트에 의해 커버되는 스펙트럼의 부분을 특정하기 위한 정보를 그 정보 블록이 포함하고 있기 때문이다.
데이터 세그먼트의 구조가 표1에 도시되며, 정보 블록의 구조는 표2에 도시되어 있다. 의사 코드를 통해 해결 기법이 설명된다.
20ms 세그먼트의 구조
segment() { N 비트 설명
transport_header () 8
raw_payload () 160
}
전송 헤더: transport Header ()
N 비트 설명
if (audio_frame_start) { framecnt_offset_code 1 7
} else {
scfb_offset_code [seg] 7 코드 테이블의 선택은, 현재 프레임의 제1 세그먼트로부터 카운트된 세그먼트에 의존한다.
}
전술한 표에는 다음과 같은 정보가 나타나 있다.
raw_payload()는 원시 aacPlus 오디오 페이로드 데이터를 포함한다. 디멀디플렉서는 하나의 오디오 프레임에 속하는 원시 페이로드 청크를 연결하여, 완전한 원시 오디오 프레임을 aacPlus 디코더를 통과시킨다.
transport_header()는, 디멀티플렉서가 오디오 프레임 경계를 식별하는데 필요한 모든 정보를 포함하며, 에러 전송의 경우에, 손실된 오디오 프레임의 수 및 손실된 스펙트럼의 부분을 포함한다. 손실된 데이터에 관한 정보는, 향상된 은닉 알고리즘을 제어하기 위해 디코더로 전달된다.
audio_frame_start 는 aacPlus 오디오 프레임의 개시 경계를 지시하는 플래그이며, 예로서 그 값이 참이면, 세그먼트 (Seg#0)에 대한 정보 블록을 나타내고 (도 3a 참조), 예로서 그 값이 거짓이면, 그 정보 블록은 데이터 프레임의 나머지 세그먼트중의 하나에 속한다.
framecnt_offset_code 은 0 내지 5의 범위를 가진 aacPlus 프레임 카운터 값 프레임 (cnt) 의 값과 0 내지 20의 범위를 가진 옵셋 값을 결합하는 코드이다. 이 코드는, 예로서 정보 블록 (302)에 부가되며, 다음과 같은 식에 의해 계산된다.
코드 = 21 x 프레임 cnt + 옵셋
프레임 (cnt) 및 옵셋에 대한 전술한 범위에 있어서, 코드는 126개의 가능한 값을 가지며, 이는 정보 블록 내의 framecnt_offst_code에 할당된 7 비트에 의해 인코딩 될 수 있다. 그 aacPlus 오디오 프레임 시퀀스 카운터 값은, 손실된 오디오 프레임의 개수를 특정할 수 있게 한다. 그것은 각각의 오디오 프레임에 대해 1씩 증가한다. 그 오디오 프레임 카운터 프레임 (cnt)은, 값 6에서 랩 어라운드되어, 즉, 그 최대 값이 5가 된다. 옵셋 값은 이전의 20ms 세그먼트의 스펙트럼 데이터의 내용을 지시한다. 이것은 바이트 단위로 주어진 값으로써 후방향으로 지시하여, 옵셋 값 0은 이전의 20ms 세그먼트가 오디오 프레임에 속하는 스펙트럼 데이터를 전혀 포함하지 않는다는 것을 나타낸다.
scfb_offset_code [seg] 는, 후속하는 스펙트럼 데이터의 스케일 팩터 대역의 개시점을 지시하는 스케일 팩터 대역 인덱스의 값과 현재의 세그먼트의 스펙트럼 데이터의 내용을 지시하는 옵셋 포인터를 결합하는 코드 룩업 테이블에 의해 특정된다. 코드 룩업 테이블은 오디오 프레임 개시 세그먼트에 후속하는 세그먼트의 개수에 의존한다. 이 코드는 동일한 데이터 세그먼트 내에 포함된 스펙트럼 데이터를 참조한다. 이 옵셋은 비트 단위로 주어진 값으로써 순방향으로 포인팅하고, 옵셋 0은 옵셋이 존재하지 않는다는 것을 지시한다. 그 값이 룩업 테이블에 포함되어 있지 아니하여 개시 스케일 팩터 대역 인덱스와 옵셋 값의 결합이 코딩될 수 없다면, 이스케이프 값이, 현재의 데이터 세그먼트가 디코딩될 수 없고 대응하는 스펙트럼 범위가 은닉될 필요가 있다는 것을 지시하는데에 이용된다.
압축 오디오 데이터의 전송의 바람직한 실시예에 대하여, 본 발명은 다음과 같이 요약될 수 있다.
본 발명은 다음과 같은 단계를 포함하는 데이터 저장 및 데이터 전송의 방법을 제공한다. 연속적으로 전송하는 소스로부터 수신되는 가변 프레임 크기의 데이터 프레임이 세그먼트들로 패킷화되어, 그 평균 크기가 데이터 프레임보다 작거나 같게 되고, 모든 세그먼트는 동일한 크기를 가지며, 그 평균 크기가 데이터 프레임보다 항상 작거나 같게 된다. 모든 세그먼트는, 그 프레임의 개시점을 시그널링하는 정보를 포함하고, 이전의 세그먼트가 현재의 프레임의 일부를 포함하도록 시그널링하는 데에 부가적인 정보를 이용한다. 에러 세그먼트에 관한 정보는, 하부층 전송 또는 저장 기법에 의해 주어지거나, 또는 세그먼트에 예로서 CRC, 패리티 등의 리던던시를 부가함으로써 확보된다.
또한, 타이밍, 프레임의 재생 순서에 관한 정보, 예로서, 랩어라운드된 시퀀스 번호가 주어질 수 있다.
바람직하게는, 가장 중요한 정보가 단일의 바이트 또는 단지 수개의 바이트에 집중되는 것이다.
프레임의 개시점을 포함하지 하지 않는 세그먼트는, 전송 또는 저장 중에 세그먼트가 손실되더라도, 현재의 세그먼트 내의 데이터를 디코딩하기 위해 데이터 스트림의 배출 (drain)을 안내하는 부가적인 정보를 포함한다.
전송 또는 저장 중에 세그먼트가 손실되더라도 현재의 세그먼트 내의 데이터를 디코딩하기 위해 데이터 스트림의 배출을 안내하는데 이용되는 부가적인 정보는, 전송 오버헤드를 감소시키기 위해 최대의 우도 (likelihood)를 가진 경우에, 부가된다.
이러한 처리 중에 내장된 부가적인 정보는, 예로서 적응적 코드 테이블을 이용하거나, 다중의 심볼을 단일의 코드 워드에 결합하거나, Huffmann 코딩 등을 이용하여, 리던던시 감소를 위해 코딩된다.
데이터 소스는, 오디오 코덱에 기초하여 변환될 수 있고, 대역 확산이 이용되거나 또는 이용되지 않을 수도 있다.
디코더는, 신호의 손실 부분에 은닉 기법을 적용하기 위해서만 에러 세그먼트에 관한 정보를 이용할 수 있다.
전체적인 패키징 방법은 데이터에 관한 지식을 전혀 필요로 하지 않고, 그 부가된 정보는 인코더로부터 획득되며 디코더로 전달된다.
따라서, 본 발명은 가변 프레임 길이를 가진 압축 데이터를 고정 길이 데이터 세그먼트로 패키징하게 하는 전송 기법을 포함한다. 본 발명은, 매우 낮은 전송 오버헤드만을 부가하면서 전송 에러의 경우에 오디오 스펙트럼의 부분적 은닉을 적용하는 시그널링 수단을 제공한다. 본 발명은, 정확한 시간 정렬로써 전송 에러의 경우에 디코더에서 신속한 재동기화를 하게 한다. 본 발명은 또한, 에러 전달을 방지하는 것을 제공한다. 본 발명은, 낮은 복잡도 및 단순한 설계를 가진 해법을 구현할 수 있도록 원시 압축 데이터의 변경을 요구하지 않는다.
본 발명의 방법은, 그 구현을 위한 요구 사항에 따라서, 하드웨어적으로 또는 소프트웨어적으로 구현될 수도 있다. 이러한 구현은, 전자적으로 판독가능한 제어 신호가 저장되어 있는 디지털 저장 매체, 특히 플로피 디스크 또는 CD를 이용하여 수행될 수 있으며, 이는 프로그램가능한 컴퓨터 시스템과 협동하여, 본 발명의 방법이 실현될 수도 있다. 일반적으로, 본 발명은 기계 판독가능한 캐리어상에 저장된 프로그램 코드를 가진 컴퓨터 프로그램 제품이며, 그 프로그램 코드는, 컴퓨터 프로그램 제품이 컴퓨터에서 실행될 때, 본 발명의 방법을 수행하기 위한 동작을 한다. 다시 말하면, 본 발명의 방법은, 컴퓨터 프로그램이 컴퓨터에서 실행될 때, 본 발명의 방법들 중의 적어도 하나를 수행하기 위한 프로그램 코드를 가진 컴퓨터 프로그램일 수도 있다.

Claims (34)

  1. 연속하는 데이터 프레임에 조직화되어 있는 데이터를 이용하여 일련의 세그먼트를 가진 데이터 스트림 (102)을 생성하는 장치로서,
    데이터 프레임으로부터의 데이터를 제1 세그먼트 (Seg#0)및 제2 세그먼트 (Seg#1)를 가진 상기 일련의 세그먼트로 패킷화하는 패킷화기 (210)로서, 상기 제2 세그먼트 (Seg#1)는 해석가능 데이터 엔티티 및 데이터 엔티티 프래그먼트를 가지고, 상기 데이터 엔티티 프래그먼트는 해석가능 데이터 엔티티에 선행하는 해석가능 데이터 엔티티의 일부분만을 가지고 있는, 상기 패킷화기; 및
    상기 제2 세그먼트 (Seg#1)에 연계된 정보 블록 (304)을 부가하는 정보 블록 부가기 (220)로서, 상기 정보 블록은 엔트리 포인트를 상기 제2 세그먼트 (Seg#1)로 지시하고, 상기 엔트리 포인트는 상기 데이터 엔티티 프래그먼트에 후속하는 상기 해석가능 데이터 엔티티의 개시점을 지시하는 것인, 상기 정보 블록 부가기를 포함하고,
    상기 패킷화기 (210)는, 상기 제1 세그먼트 (Seg#0)와 상기 제2 세그먼트 (Seg#1)가 동일한 크기를 갖도록 상기 일련의 세그먼트를 패킷화하는 동작을 하는 것인, 데이터 스트림 생성 장치.
  2. 제1항에 있어서,
    상기 정보 블록 부가기 (220)는, 상기 제1 세그먼트 (Seg#0)에 부가적인 정보 블록 (302)을 부가하는 동작을 하고, 상기 부가적인 정보 블록 (302)은 상기 데이터 프레임의 개시점을 지시하는 것인 데이터 스트림 생성 장치.
  3. 제2항에 있어서,
    상기 패킷화기 (201)는 상기 데이터 프레임으로부터의 데이터를 제3 세그먼트 (Seg#-1)로 더욱 패킷화하고,
    상기 제3 세그먼트 (Seg#-1)의 프래그먼트만이 상기 데이터 프레임의 데이터를 가지고, 상기 데이터 프레임의 상기 개시점을 포함하고,
    상기 패킷화기 (210)는 상기 제3 세그먼트 (Seg#-1)를 상기 일련의 세그먼트에 부가하는 동작을 하는 것인 데이터 스트림 생성 장치.
  4. 제1항에 있어서,
    상기 연속하는 데이터 프레임은 추가 데이터 프레임을 포함하고,
    상기 패킷화기 (210)는 상기 추가 데이터 프레임을 일련의 추가 세그먼트로 패킷화하는 동작을 하고, 상기 일련의 추가 세그먼트는 제1 세그먼트 (Seg#0) 및 제2 세그먼트 (Seg#1)를 가지고, 상기 제2 세그먼트 (Seg#1)는 추가 해석가능 데이터 엔티티 및 추가 데이터 엔티티 프래그먼트를 가지고, 상기 추가 데이터 엔티티 프래그먼트는 추가 해석가능 데이터 엔티티에 선행하는 추가 해석가능 데이터 엔티티의 일부분만을 가지고, 상기 추가 데이터 엔티티 프래그먼트는 상기 데이터 엔티티 프래그먼트와 상이하고,
    상기 정보 블록 부가기 (220)는 추가 정보 블록 (304)을 상기 일련의 추가 세그먼트의 상기 제2 세그먼트 (Seg#1)에 부가하는 동작을 하고, 상기 추가 정보 블록 (304)은 엔트리 포인트를 상기 일련의 추가 세그먼트의 상기 제2 세그먼트 (Seg#1)로 지시하고, 상기 추가 엔트리 포인트는 상기 일련의 세그먼트의 상기 제2 세그먼트 (Seg#1)의 상기 엔트리 포인트와 상이한 것인 데이터 스트림 생성 장치.
  5. 제2항에 있어서,
    상기 연속하는 데이터 프레임은 데이터 프레임의 그룹을 포함하고, 상기 패킷화기 (210)는 상기 그룹의 각각의 데이터 프레임을 일련의 세그먼트로 패킷화하는 동작을 하고, 상기 일련의 세그먼트의 각각은 제1 세그먼트 (Seg#0) 및 제2 세그먼트 (Seg#1)를 가지고,
    상기 정보 블록 부가기 (220)는 데이터 프레임 각각의 제1 세그먼트 (Seg#0)와 연계된 부가적인 정보 블록 (302)을 부가하는 동작을 하고,
    상기 정보 블록 부가기 (220)는 상이한 카운터 값 (f#)을 데이터 프레임 각각의 상기 부가적인 정보 블록 (302)에 부가하는 동작을 하는 것인 데이터 스트림 생성 장치.
  6. 제5항에 있어서,
    상기 연속하는 데이터 프레임은 데이터 프레임의 추가 그룹을 포함하고,
    상기 패킷화기 (210)는 데이터 프레임의 상기 추가 그룹의 데이터 프레임 각각을 일련의 세그먼트로 패킷화하는 동작을 하고,
    상기 정보 블록 부가기 (220)는 상이한 카운터 값 (f#)을 상기 추가 그룹내의 데이터 프레임 각각의 부가적인 정보 블록 (302) 각각에 부가하는 동작을 하고,
    상기 정보 블록 부가기 (220)는 상기 데이터 프레임의 상기 그룹과 상기 추가 그룹에 대해 동일한 카운터 값 (f#)을 사용하는 것인 데이터 스트림 생성 장치.
  7. 제6항에 있어서,
    하나의 그룹내의 상기 프레임의 최대 수는 32 보다 작거나 같고,
    상기 정보 블록 부가기 (220)는 카운터 값 (f#)을 새로운 그룹의 제1 프레임에 부가하는 동작을 하고, 상기 카운터 값 (f#)은 선행하는 그룹의 제1 프레임과 연계된 카운터 값과 동일한 것인 데이터 스트림 생성 장치
  8. 제1항에 있어서,
    상기 정보 블록 부가기 (220)는, 상기 정보 블록 (304)이 복수의 비트를 포함하도록 상기 정보 블록 (304)을 생성하는 동작을 하고, 상기 복수의 비트중의 일 비트는 제1 모드 값을 가지고, 부가적인 비트는 상기 엔트리 포인트에 관한 정보를 포함하고,
    상기 정보 블록 부가기 (220)는, 상기 부가적인 정보 블록 (302)이 복수의 비트를 가지도록 상기 부가적인 정보 블록 (302)을 생성하는 동작을 하고, 일 비트는 제2 모드 값을 가지고, 부가적인 비트는 상기 데이터 프레임의 개시점 (Xa)에 관한 정보를 가지고, 상기 제2 모드 값은 상기 제1 모드 값과 상이한 것인 데이터 스트림 생성 장치.
  9. 제1항에 있어서,
    상기 정보 블록 부가기 (220)는, 상기 정보 블록 (304)을 압축하고, 상기 정보 블록 (304)을 압축 형태로 상기 제2 세그먼트 (Seg#1)에 부가하는 동작을 하는 것인 데이터 스트림 생성 장치.
  10. 제2항에 있어서,
    상기 정보 블록 부가기 (220)는, 상기 부가적인 정보 블록 (302)을 압축하고, 상기 부가적인 정보 블록 (302)을 압축 형태로 상기 제1 세그먼트 (Seg#0)에 부가하는 동작을 하는 것인 데이터 스트림 생성 장치.
  11. 제1항에 있어서,
    상기 패킷화기 (210)는, 오디오 인코더에 의해 생성된 데이터 프레임으로부터의 데이터를 패킷화하는 동작을 하고,
    상기 정보 블록 부가기 (220)는, 상기 엔트리 포인트가 복수의 스케일 팩터 대역중의 하나의 스케일 팩터 대역내의 제1 스펙트럼 값을 지시하는 코드 워드의 개시점 (Xb)을 지시하도록, 상기 정보 블록 (304)을 생성하고, 상기 복수의 스케일 팩터 대역은 오디오 신호의 단시간 스펙트럼을 표현하고,
    상기 정보 블록 (304)은 복수의 스케일 팩터 대역중의 상기 스케일 팩터 대역을 지시하는 스케일 팩터 대역 인덱스에 관한 정보를 포함하는 것인 데이터 스트림 생성 장치.
  12. 제1항에 있어서,
    상기 패킷화기 (210)는 상기 일련의 세그먼트의 각각의 세그먼트에 대하여 부가적인 리던던시 정보를 계산하는 동작을 하고,
    상기 정보 블록 부가기 (220)는 상기 리던던시 정보를 상기 정보 블록 (304)에 부가하도록 동작하는 것인 데이터 스트림 생성 장치.
  13. 제3항에 있어서,
    데이터 프레임은, 상기 프레임의 개시점으로부터 상기 프레임의 종료점까지의 데이터의 스트림 (102)을 포함하고,
    상기 패킷화기 (210)는 상기 데이터 프레임의 데이터를 상기 일련의 세그먼트로 복제하는 동작을 하여, 상기 제1 세그먼트 (Seg#0)가 상기 프레임의 상기 개시점을 포함하게 되고, 상기 제3 세그먼트 (Seg#-1), 상기 제2 세그먼트 (Seg#1), 및 부가적인 세그먼트가 상기 프레임의 상기 종료점까지의 프레임 데이터를 포함하게 되고,
    상기 패킷화기 (210)는, 데이터 세그먼트 생성기 및 데이터 세그먼트 수신기로부터의 전송 방향에 있어서의 상기 제1 세그먼트 (Seg#0) 및 상기 제2 세그먼트 (Seg#1) 전에, 상기 제3 세그먼트 (Seg#-1)를 상기 데이터 스트림 (102)으로 위치시키는 동작을 하는 것인 데이터 스트림 생성 장치.
  14. 제1항에 있어서,
    데이터 프레임은, 상기 프레임의 개시점으로부터 상기 프레임의 종료점까지의 데이터의 스트림을 포함하고,
    상기 패킷화기 (210)는 상기 데이터 프레임으로부터의 데이터의 적어도 일부를 상기 일련의 세그먼트로 복제하는 동작을 하여, 상기 정보 블록을 갖지 않은 상기 세그먼트내의 데이터가 상기 데이터 프레임으로부터의 데이터의 상기 적어도 일부와 동등하게 되는 것인 데이터 스트림 생성 장치.
  15. 제1항에 있어서,
    상기 프레임은, 스펙트럼 데이터가 후속하는 사이드 정보를 포함하고, 상기 스펙트럼 데이터는 스펙트럼 값에 대응하는 코드 워드를 가지고, 상기 스펙트럼 값은 상기 데이터 프레임 내에 소트되어, 상기 코드 워드의 순서가 상기 스펙트럼 값의 순서에 대응하게 되고,
    상기 패킷화기 (210)는, 세그먼트가 상기 세그먼트내의 제1 해석가능 데이터 엔티티로부터 상기 세그먼트내의 최종 해석가능 데이터 엔티티까지의 스펙트럼 범위를 정의하는 코드 워드를 포함하도록, 상기 프레임 데이터를 패킷화하는 것인 데이터 스트림 생성 장치.
  16. 연계된 부가적인 정보 블록 (302)을 가진 제1 세그먼트 (Seg#0) 및 연계된 정보 블록 (304)을 가진 제2 세그먼트 (Seg#1)를 가진 일련의 세그먼트를 포함하는 데이터 스트림 (102)을 해석하는 장치로서, 상기 부가적인 정보 블록 (302)은 해석가능 데이터 엔티티를 가진 데이터 프레임의 개시점 (Xa)을 지시하고, 상기 제2 세그먼트 (Seg#1)는 에러 세그먼트에 후속하며, 상기 정보 블록 (304)은 엔트리 포인트를 상기 제2 세그먼트 (Seg#1)로 지시하고, 상기 엔트리 포인트는 데이터 엔티티 프래그먼트에 후속하는 해석가능 데이터 엔티티의 개시점을 지시하고, 상기 데이터 엔티티 프래그먼트는 상기 해석가능 데이터 엔티티에 선행하는 해석가능 데이터 엔티티의 일부분만을 지시하는, 상기 장치에 있어서, 상기 장치는:
    상기 에러 세그먼트를 검출하는 에러 검출기 (240);
    상기 데이터 프레임의 상기 개시점 (Xa)에 관한 정보를 추출하기 위해 상기 부가적인 정보 블록 (302)을 해석하고, 상기 엔트리 포인트에 관한 정보를 추출하기 위해 상기 정보 블록 (304)을 해석하는 정보 블록 해석기 (250); 및
    상기 데이터 프레임의 상기 개시점 (Xa)으로부터 시작하는 상기 데이터를 수집하고, 상기 에러 세그먼트 및 상기 데이터 엔티티 프래그먼트를 삭제하고, 상기 부가적인 정보 블록 (302) 및 상기 정보 블록 (304)을 삭제하고, 삭제된 프레임 데이터에 대해 에러 은닉 동작을 수행함으로써, 상기 데이터 프레임의 데이터를 재구성하는 프레임 재구성기 (260)를 포함하고,
    상기 정보 정보 블록 해석기 (250)은 고정 세그먼트 크기 및 고정 정보 블록 크기를 저장하고, 상기 제1 세그먼트 (Seg#0) 및 상기 제2 세그먼트 (Seg#1)는 동일한 고정 세그먼트 크기 및 동일한 고정 정보 블록 크기를 가지는 데이터 스트림을 해석하는 장치.
  17. 제16항에 있어서,
    상기 프레임 재구성기 (260)는 상기 삭제된 데이터를 무음화하거나 상기 삭제된 데이터 세그먼트를 상기 해석하는 장치에서 생성된 데이터로 대체하는 동작을 하는 데이터 스트림을 해석하는 장치.
  18. 제16항에 있어서,
    상기 일련의 세그먼트는 추가 연계된 정보 블록을 가진 추가 세그먼트를 포함하고,
    상기 에러 검출기 (240)는 상기 추가 세그먼트내의 에러를 검출하지 않도록 동작하고,
    상기 프레임 재구성기 (260)는, 상기 추가 정보 블록을 삭제하고 상기 추가 세그먼트의 상기 데이터를 상기 데이터 프레임의 상기 데이터에 부가함으로써, 상기 추가 세그먼트로부터의 데이터를 재구성하는 동작을 하는 데이터 스트림을 해석하는 장치.
  19. 제16항에 있어서,
    상기 프레임 재구성기 (260)는 제3 세그먼트 (Seg#-1)를 포함하는 상기 데이터 프레임의 데이터를 재구성하는 동작을 하고, 상기 제3 세그먼트 (Seg#-1)의 프래그먼트만이 상기 데이터 프레임의 데이터를 가지는 데이터 스트림을 해석하는 장치.
  20. 제16항에 있어서,
    상기 정보 블록 해석기 (250)는 상기 고정 세그먼트 크기 및 상기 고정 정보 블록 크기에 기초하여 정보 블록 (304)과 세그먼트를 구별하는 동작을 하고, 상기 해석가능 데이터 엔티티는 가변 길이를 가진 코드 워드이고,
    상기 프레임 재구성기 (260)는 코드 워드 도메인에서 또는 상기 워드가 디코딩된 정보 값 도메인에서 에러 은닉을 수행하는 동작을 하는 데이터 스트림을 해석하는 장치.
  21. 제16항에 있어서,
    상기 데이터 스트림 (102)은, 상이한 부가적인 정보 블록 (302)이 연계된 상기 제1 세그먼트를 가진 상이한 일련의 세그먼트를 포함하고, 상기 상이한 부가적인 정보 블록 (302)은 카운터 값 (f#)을 가지고,
    상기 정보 블록 해석기 (250)는, 상기 상이한 부가적인 정보 블록 (302)내의 상기 카운터 값 (f#)을 독출하고, 상기 카운터 값 (f#)을 이용하여 데이터 프레임의 그룹내의 상기 데이터 프레임을 정렬하는 동작을 하는 데이터 스트림을 해석하는 장치.
  22. 제20항에 있어서,
    상기 에러 검출기 (240)는 적어도 2개의 데이터 프레임의 부가적인 정보 블록 (302)내에서 에러를 검출하는 동작을 하고,
    상기 프레임 재구성기 (260)는, 에러 없음으로 검출된 적어도 하나의 데이터 프레임의 상기 카운터 값 (f#)에 의해 주어진 순서를 이용하여 상기 적어도 2개의 데이터 프레임에 대한 에러 은닉을 수행하는 동작을 하는 데이터 스트림을 해석하는 장치.
  23. 제16항에 있어서,
    상기 정보 블록 (304)은 복수의 비트를 포함하고, 상기 복수의 비트 중의 일 비트는 제1 모드 값을 가지고, 부가적인 비트는 상기 엔트리 포인트에 관한 정보로 가지고,
    상기 부가적인 정보 블록 (302)은 복수의 비트를 포함하고, 상기 복수의 비트중 일 비트는 제2 모드 값을 가지고, 부가적인 비트는 상기 프레임의 개시점 (Xa)에 관한 정보를 가지고, 상기 제1 모드 값은 상기 제2 모드 값과 상이하고,
    상기 프레임 재구성기 (260)는, 정보 블록의 상기 일 비트를 독출하고, 상기 일 비트의 값에 의존하는 상기 정보 블록의 상기 부가적인 비트를 해석하는 동작을 하는 데이터 스트림을 해석하는 장치.
  24. 제16항에 있어서,
    상기 정보 블록 (304) 또는 상기 부가적인 정보 블록 (302)은 압축되고,
    상기 정보 블록 해석기 (250)는 상기 압축된 정보 블록 (304)을 압축해제하거나 상기 압축된 부가적인 정보 블록(302)을 압축해제하는 동작을 하는 데이터 스트림을 해석하는 장치.
  25. 제16항에 있어서,
    상기 엔트리 포인트는 복수의 스케일 팩터 대역중의 하나의 스케일 팩터 대역내의 제1 스펙트럼 값을 지시하는 코드 워드를 지시하고, 상기 복수의 스케일 팩터 대역은 오디오 신호의 단시간 스펙트럼을 표현하고,
    상기 프레임 재구성기 (260)는, 인코딩된 오디오 신호인 상기 데이터 프레임의 데이터를 재구성하는 동작을 하고,
    상기 정보 블록 해석기 (250)는 상기 정보 블록 (304)으로부터 상기 엔트리 포인트 및 상기 스케일 팩터 대역 인덱스를 얻는 동작을 하고,
    상기 프레임 재구성기 (260)는, 상기 프레임 내에서 상기 스케일 팩터 대역 인덱스에 기초하여 상기 세그먼트내의 데이터를 배열하고, 상기 데이터 프레임을 오디오 디코더로 전달하는 동작을 하는 데이터 스트림을 해석하는 장치.
  26. 제16항에 있어서,
    상기 정보 블록 (304)은 부가적인 리던던시 정보를 포함하고,
    상기 에러 검출기 (240)는, 에러 세그먼트를 식별하기 상기 부가적인 리던던시 정보를 독출하는 동작을 하는 데이터 스트림을 해석하는 장치.
  27. 제16항에 있어서,
    상기 프레임 재구성기 (260)는, 상기 재구성된 프레임이 프레임 데이터의 순서가 패킷화 전의 프레임의 프레임 데이터의 순서와 유사하도록 상기 일련의 세그먼트내의 상기 데이터를 재배열하는 동작을 하는 데이터 스트림을 해석하는 장치.
  28. 제25항에 있어서,
    상기 일련의 세그먼트중의 하나의 세그먼트는, 상기 세그먼트내의 제1 해석가능 데이터 엔티티로부터 상기 세그먼트내의 최종 해석가능 데이터 엔티티까지의 스펙트럼 범위를 정의하는 코드 워드를 포함하고,
    상기 프레임 재구성기 (260)는, 스펙트럼 데이터가 후속하는 사이트 정보를 포함하는 상기 프레임을 재구성하는 동작을 하고, 상기 스펙트럼 데이터는 스펙트럼 값에 대응하는 코드 워드를 가지고, 상기 스펙트럼 값은 상기 데이터 프레임 내에 소트되고, 상기 코드 워드의 순서가 상기 스펙트럼 값의 순서에 대응하게 되는 데이터 스트림을 해석하는 장치.
  29. 모두 동일한 크기를 가진 일련의 세그먼트에 조직화되는 데이터를 포함하는 데이터 스트림 (102)을 기록한 컴퓨터로 읽을 수 있는 매체로서, 상기 일련의 데이터 세그먼트는:
    제1 세그먼트 (Seg#0);
    해석가능 데이터 엔티티 및 데이터 엔티티 프래그먼트를 가진 제2 세그먼트 (Seg#1)로서, 상기 데이터 엔티티 프래그먼트는 해석가능 데이터 엔티티에 선행하는 해석가능 데이터 엔티티의 일부분만을 포함하는, 상기 제2 세그먼트; 및
    엔트리 포인트를 상기 제2 세그먼트 (Seg#1)로 지시하는 정보 블록 (304)으로서, 상기 엔트리 포인트는 상기 데이터 엔티티 프래그먼트를 후속하는 상기 해석가능 데이터 엔티티의 개시점을 지시하는, 상기 정보 블록을 포함하는, 데이터 스트림을 기록한 컴퓨터로 읽을 수 있는 매체.
  30. 연속하는 데이터 프레임에 조직화되어 있어 데이터를 이용하여, 모두 동일한 크기를 가진 일련의 세그먼트를 가진 데이터 스트림 (102)을 생성하는 방법으로서, 상기 방법은:
    데이터 프레임으로부터의 데이터를 제1 세그먼트 (Seg#0) 및 제2 세그먼트 (Seg#1)를 가진 상기 일련의 세그먼트로 패킷화하는 단계로서, 상기 제2 세그먼트(Seg#1)는 해석가능 데이터 엔티티 및 데이터 엔티티 프래그먼트를 가지고, 상기 데이터 엔티티 프래그먼트는 해석가능 데이터 엔티티에 선행하는 해석가능 데이터 엔티티의 일부분만을 가지고 있는, 상기 패킷화하는 단계; 및
    상기 제2 세그먼트 (Seg#1)에 연계된 정보 블록 (304)을 부가하는 단계로서, 상기 정보 블록 (304)은 엔트리 포인트를 상기 제2 세그먼트 (Seg#1)로 지시하고, 상기 엔트리 포인트는 상기 데이터 엔티티 프래그먼트에 후속하는 상기 해석가능 데이터 엔티티의 개시점을 지시하고 있는, 상기 부가하는 단계를 포함하는, 데이터 스트림을 생성하는 방법.
  31. 연계된 부가적인 정보 블록 (302)을 가진 제1 세그먼트 (Seg#0) 및 연계된 정보 블록 (304)을 가진 제2 세그먼트 (Seg#1)를 가지고, 모두 동일한 크기를 가진 일련의 세그먼트를 포함하는 데이터 스트림 (102)을 해석하는 방법으로서, 상기 부가적인 정보 블록 (302)은 해석가능 데이터 엔티티를 가진 데이터 프레임의 개시점(Xa)을 지시하고, 상기 제2 세그먼트 (Seg#1)는 에러 세그먼트에 후속하며, 상기 정보 블록 (304)은 엔트리 포인트를 상기 제2 세그먼트 (Seg#1)로 지시하고, 상기 엔트리 포인트는 데이터 엔티티 프래그먼트에 후속하는 해석가능 데이터 엔티티의 개시점을 지시하고, 상기 데이터 엔티티 프래그먼트는 상기 해석가능 데이터 엔티티에 선행하는 해석가능 데이터 엔티티의 일부분만을 지시하는 상기 방법에 있어서, 상기 방법은:
    상기 에러 세그먼트를 검출하는 단계;
    상기 데이터 프레임의 상기 개시점 (Xa)에 관한 정보를 추출하기 위해 상기 부가적인 정보 블록 (302)을 해석하고, 상기 엔트리 포인트에 관한 정보를 추출하기 위해 상기 정보 블록 (304)을 해석하는 단계; 및
    상기 데이터 프레임의 상기 개시점 (Xa)으로부터 시작하는 상기 데이터를 수집하고, 상기 에러 세그먼트 및 상기 데이터 엔티티 프래그먼트를 삭제하고, 상기 부가적인 정보 블록 (302) 및 상기 정보 블록 (304)을 삭제하고, 삭제된 프레임 데이터에 대해 에러 은닉 동작을 수행함으로써, 상기 데이터 프레임의 데이터를 재구성하는 단계를 포함하는 데이터 스트림을 해석하는 방법.
  32. 제30항 또는 제31항에 따른 상기 방법을 실행하기 위한 프로그램 코드를 가진 컴퓨터 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체.
  33. 삭제
  34. 삭제
KR1020077016665A 2005-12-16 2006-05-30 특정된 엔트리 포인트를 가진 세그먼트로 데이터 스트림을 생성하고 해석하는 장치, 방법 및 이들을 기록한 컴퓨터로 읽을 수 있는 매체 KR100942860B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US75089705P 2005-12-16 2005-12-16
US60/750,897 2005-12-16

Publications (2)

Publication Number Publication Date
KR20070094798A KR20070094798A (ko) 2007-09-21
KR100942860B1 true KR100942860B1 (ko) 2010-02-17

Family

ID=36764489

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020077019917A KR100969731B1 (ko) 2005-12-16 2006-05-30 데이터의 중요도에 따라 변형된 데이터 스트림을 생성하는장치 및 그 데이터 스트림을 해석하는 장치
KR1020077016665A KR100942860B1 (ko) 2005-12-16 2006-05-30 특정된 엔트리 포인트를 가진 세그먼트로 데이터 스트림을 생성하고 해석하는 장치, 방법 및 이들을 기록한 컴퓨터로 읽을 수 있는 매체

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020077019917A KR100969731B1 (ko) 2005-12-16 2006-05-30 데이터의 중요도에 따라 변형된 데이터 스트림을 생성하는장치 및 그 데이터 스트림을 해석하는 장치

Country Status (9)

Country Link
US (2) US20090209636A1 (ko)
EP (3) EP1964352B1 (ko)
KR (2) KR100969731B1 (ko)
CN (2) CN101331733B (ko)
AT (1) ATE429118T1 (ko)
DE (1) DE602006006346D1 (ko)
MY (2) MY164456A (ko)
TW (2) TWI337484B (ko)
WO (2) WO2007068296A1 (ko)

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8009696B2 (en) * 2004-08-06 2011-08-30 Ipeak Networks Incorporated System and method for achieving accelerated throughput
US8437370B2 (en) * 2011-02-04 2013-05-07 LiveQoS Inc. Methods for achieving target loss ratio
US9189307B2 (en) 2004-08-06 2015-11-17 LiveQoS Inc. Method of improving the performance of an access network for coupling user devices to an application server
US7953114B2 (en) 2004-08-06 2011-05-31 Ipeak Networks Incorporated System and method for achieving accelerated throughput
US9647952B2 (en) 2004-08-06 2017-05-09 LiveQoS Inc. Network quality as a service
CA2562427C (en) 2005-10-05 2012-07-10 Lg Electronics Inc. A digital broadcast system and method of processing traffic information
WO2007091779A1 (en) 2006-02-10 2007-08-16 Lg Electronics Inc. Digital broadcasting receiver and method of processing data
WO2007126196A1 (en) 2006-04-29 2007-11-08 Lg Electronics Inc. Digital broadcasting system and method of processing data
WO2007136166A1 (en) 2006-05-23 2007-11-29 Lg Electronics Inc. Digital broadcasting system and method of processing data
US7873104B2 (en) 2006-10-12 2011-01-18 Lg Electronics Inc. Digital television transmitting system and receiving system and method of processing broadcasting data
US7697532B2 (en) * 2007-02-08 2010-04-13 Corrigent Systems Ltd. Frame concatenation with drop precedence assignment
KR101285887B1 (ko) 2007-03-26 2013-07-11 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
KR101253185B1 (ko) 2007-03-26 2013-04-10 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
KR101285888B1 (ko) 2007-03-30 2013-07-11 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
KR101513028B1 (ko) 2007-07-02 2015-04-17 엘지전자 주식회사 방송 수신기 및 방송신호 처리방법
KR101490246B1 (ko) 2007-07-02 2015-02-05 엘지전자 주식회사 방송 수신기 및 방송신호 처리방법
KR20090004660A (ko) 2007-07-02 2009-01-12 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
KR101405971B1 (ko) 2007-07-02 2014-06-12 엘지전자 주식회사 방송 수신기 및 방송신호 처리방법
KR101531910B1 (ko) 2007-07-02 2015-06-29 엘지전자 주식회사 방송 수신기 및 방송신호 처리방법
KR20090004659A (ko) 2007-07-02 2009-01-12 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
KR20090004658A (ko) 2007-07-02 2009-01-12 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
KR101405972B1 (ko) 2007-07-02 2014-06-12 엘지전자 주식회사 방송 수신기 및 방송신호 처리방법
WO2009005326A2 (en) 2007-07-04 2009-01-08 Lg Electronics Inc. Digital broadcasting system and method of processing data
KR20090004661A (ko) 2007-07-04 2009-01-12 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
US8433973B2 (en) 2007-07-04 2013-04-30 Lg Electronics Inc. Digital broadcasting system and method of processing data
KR20090002855A (ko) 2007-07-04 2009-01-09 엘지전자 주식회사 디지털 방송 시스템 및 신호 처리 방법
KR20090004722A (ko) 2007-07-06 2009-01-12 엘지전자 주식회사 방송 수신기 및 데이터 처리 방법
KR20090004059A (ko) 2007-07-06 2009-01-12 엘지전자 주식회사 방송 수신이 가능한 텔레매틱스 단말기 및 방송 신호 처리방법
KR20090004773A (ko) 2007-07-06 2009-01-12 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
KR20090004061A (ko) 2007-07-06 2009-01-12 엘지전자 주식회사 방송 수신이 가능한 텔레매틱스 단말기 및 방송 신호 처리방법
KR20090004725A (ko) 2007-07-06 2009-01-12 엘지전자 주식회사 방송 수신기 및 방송 수신기의 데이터 처리 방법
KR20090012180A (ko) 2007-07-28 2009-02-02 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
EP2191644A4 (en) 2007-08-24 2015-01-07 Lg Electronics Inc DIGITAL BROADCASTING SYSTEM AND METHOD OF PROCESSING DATA IN A DIGITAL BROADCASTING SYSTEM
WO2009038408A2 (en) 2007-09-21 2009-03-26 Lg Electronics Inc. Digital broadcasting system and data processing method
US7813310B2 (en) 2007-09-21 2010-10-12 Lg Electronics, Inc. Digital broadcasting receiver and method for controlling the same
WO2009038442A2 (en) 2007-09-21 2009-03-26 Lg Electronics Inc. Digital broadcasting receiver and method for controlling the same
KR101572875B1 (ko) 2007-09-21 2015-11-30 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
KR101756834B1 (ko) 2008-07-14 2017-07-12 삼성전자주식회사 오디오/스피치 신호의 부호화 및 복호화 방법 및 장치
US8041848B2 (en) * 2008-08-04 2011-10-18 Apple Inc. Media processing method and device
US8208467B2 (en) * 2009-06-16 2012-06-26 Oracle America, Inc. Method and apparatus for modulating the width of a high-speed link
US8571032B2 (en) * 2010-11-17 2013-10-29 Ixia Testing packet fragmentation
US10951743B2 (en) 2011-02-04 2021-03-16 Adaptiv Networks Inc. Methods for achieving target loss ratio
US8717900B2 (en) 2011-02-07 2014-05-06 LivQoS Inc. Mechanisms to improve the transmission control protocol performance in wireless networks
US9590913B2 (en) 2011-02-07 2017-03-07 LiveQoS Inc. System and method for reducing bandwidth usage of a network
US20130034053A1 (en) * 2011-08-01 2013-02-07 Samsung Electronics Co., Ltd. Method and system for scalable information packetization and aggregation for information transmission in communication networks
US9641592B2 (en) 2013-11-11 2017-05-02 Amazon Technologies, Inc. Location of actor resources
US9634942B2 (en) 2013-11-11 2017-04-25 Amazon Technologies, Inc. Adaptive scene complexity based on service quality
US9578074B2 (en) * 2013-11-11 2017-02-21 Amazon Technologies, Inc. Adaptive content transmission
US9604139B2 (en) 2013-11-11 2017-03-28 Amazon Technologies, Inc. Service for generating graphics object data
US9805479B2 (en) 2013-11-11 2017-10-31 Amazon Technologies, Inc. Session idle optimization for streaming server
US9374552B2 (en) 2013-11-11 2016-06-21 Amazon Technologies, Inc. Streaming game server video recorder
US9582904B2 (en) 2013-11-11 2017-02-28 Amazon Technologies, Inc. Image composition based on remote object data
CN104065977B (zh) * 2014-06-06 2018-05-15 北京音之邦文化科技有限公司 音/视频文件的处理方法及装置
US10972569B2 (en) * 2017-04-24 2021-04-06 International Business Machines Corporation Apparatus, method, and computer program product for heterogenous compression of data streams
WO2020165262A2 (en) * 2019-02-13 2020-08-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio transmitter processor, audio receiver processor and related methods and computer programs
WO2020164751A1 (en) * 2019-02-13 2020-08-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decoder and decoding method for lc3 concealment including full frame loss concealment and partial frame loss concealment
CN110365342B (zh) * 2019-06-06 2023-05-12 中车青岛四方机车车辆股份有限公司 波形解码方法及装置
CN114303190A (zh) 2019-08-15 2022-04-08 杜比国际公司 用于生成和处理经修改的音频比特流的方法和设备
CN110933233B (zh) * 2020-01-21 2020-08-07 翱捷科技(上海)有限公司 一种移动终端及其处理语音通信的方法
EP4413718A1 (en) * 2021-10-05 2024-08-14 OP Solutions, LLC Systems and methods for predictive coding
CN115314157B (zh) * 2022-07-19 2023-10-24 烽火通信科技股份有限公司 一种以太网成帧方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020118749A1 (en) * 2001-02-27 2002-08-29 Philippe Gentric Method and device for encoding MPEG-4 video data
US20030133441A1 (en) * 1996-09-02 2003-07-17 Toshiaki Watanabe Information transmission method and encoding/decoding apparatus and encoding-multiplexing/decoding-demultiplexing apparatus in information transmission system to which information transmission method is applied

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW237589B (ko) * 1991-02-27 1995-01-01 Gen Electric
US5742623A (en) * 1995-08-04 1998-04-21 General Instrument Corporation Of Delaware Error detection and recovery for high rate isochronous data in MPEG-2 data streams
EP0965227B1 (en) 1997-03-11 2002-02-06 ACTV, Inc. A digital interactive system for providing full interactivity with live programming events
JP3766943B2 (ja) * 1998-03-18 2006-04-19 富士通株式会社 ポインタ処理誤動作防止方法及びsdh対応無線装置
US6631484B1 (en) * 1998-03-31 2003-10-07 Lsi Logic Corporation System for packet communication where received packet is stored either in a FIFO or in buffer storage based on size of received packet
US6470142B1 (en) * 1998-11-09 2002-10-22 Sony Corporation Data recording apparatus, data recording method, data recording and reproducing apparatus, data recording and reproducing method, data reproducing apparatus, data reproducing method, data record medium, digital data reproducing apparatus, digital data reproducing method, synchronization detecting apparatus, and synchronization detecting method
US6460086B1 (en) 1998-12-01 2002-10-01 Sun Microsystems, Inc. Method and apparatus for delivery of a bytecode embedded within a transport stream
JP2000209580A (ja) * 1999-01-13 2000-07-28 Canon Inc 画像処理装置およびその方法
US6728924B1 (en) 1999-10-21 2004-04-27 Lucent Technologies Inc. Packet loss control method for real-time multimedia communications
US6300887B1 (en) 1999-11-09 2001-10-09 Nokia Networks Oy Efficient handoff procedure for header compression
GB9930788D0 (en) * 1999-12-30 2000-02-16 Koninkl Philips Electronics Nv Method and apparatus for converting data streams
DE10102159C2 (de) * 2001-01-18 2002-12-12 Fraunhofer Ges Forschung Verfahren und Vorrichtung zum Erzeugen bzw. Decodieren eines skalierbaren Datenstroms unter Berücksichtigung einer Bitsparkasse, Codierer und skalierbarer Codierer
FI118067B (fi) * 2001-05-04 2007-06-15 Nokia Corp Menetelmä audiosignaalin pakkauksen purkamisessa, pakkauksen purkulaite, ja elektroniikkalaite
DE10129239C1 (de) 2001-06-18 2002-10-31 Fraunhofer Ges Forschung Vorrichtung und Verfahren zum Einbetten eines Wasserzeichens in ein Audiosignal
US7606928B2 (en) 2003-03-21 2009-10-20 Nokia Corporation Method and device for controlling receiver buffer fullness level in multimedia streaming
US20060062312A1 (en) * 2004-09-22 2006-03-23 Yen-Chi Lee Video demultiplexer and decoder with efficient data recovery

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030133441A1 (en) * 1996-09-02 2003-07-17 Toshiaki Watanabe Information transmission method and encoding/decoding apparatus and encoding-multiplexing/decoding-demultiplexing apparatus in information transmission system to which information transmission method is applied
US20020118749A1 (en) * 2001-02-27 2002-08-29 Philippe Gentric Method and device for encoding MPEG-4 video data

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
J. van der Meer et al., 'RTP Payload Format for Transport of MPEG-4 Elementary Streams', IETF RFC 3640, November 2003

Also Published As

Publication number Publication date
CN101395881B (zh) 2012-06-27
EP1961181B1 (en) 2009-04-15
US20070140359A1 (en) 2007-06-21
EP1964352A1 (en) 2008-09-03
US7936785B2 (en) 2011-05-03
MY164456A (en) 2017-12-15
US20090209636A1 (en) 2009-08-20
ATE429118T1 (de) 2009-05-15
CN101331733A (zh) 2008-12-24
TW200746752A (en) 2007-12-16
EP1961181A1 (en) 2008-08-27
MY142293A (en) 2010-11-15
KR100969731B1 (ko) 2010-07-13
CN101331733B (zh) 2011-12-07
KR20070094798A (ko) 2007-09-21
WO2007068294A1 (en) 2007-06-21
EP3116194B8 (en) 2022-06-22
EP3116194A1 (en) 2017-01-11
EP3116194B1 (en) 2022-04-27
EP1964352B1 (en) 2017-05-03
KR20070110311A (ko) 2007-11-16
CN101395881A (zh) 2009-03-25
TWI337484B (en) 2011-02-11
TWI333771B (en) 2010-11-21
TW200729852A (en) 2007-08-01
DE602006006346D1 (de) 2009-05-28
WO2007068296A1 (en) 2007-06-21

Similar Documents

Publication Publication Date Title
KR100942860B1 (ko) 특정된 엔트리 포인트를 가진 세그먼트로 데이터 스트림을 생성하고 해석하는 장치, 방법 및 이들을 기록한 컴퓨터로 읽을 수 있는 매체
US7809018B2 (en) Apparatus for generating and interpreting a data stream with segments having specified entry points
KR102637530B1 (ko) 오디오 송신기 프로세서, 오디오 수신기 프로세서 및 관련 방법 및 컴퓨터 프로그램
KR101364685B1 (ko) 오디오 신호의 샘플 정밀 표현을 위한 방법 및 인코더와 디코더
KR20110026445A (ko) 적어도 하나의 헤더 부분 및 대응 데이터 구조를 포함하는 프레임 기반의 비트 스트림 포맷 파일을 형성 또는 절단 또는 변경하기 위한 방법 및 장치
WO2020165262A2 (en) Audio transmitter processor, audio receiver processor and related methods and computer programs
KR100922391B1 (ko) A/v 데이터의 스트리밍 보호
JP2002538654A (ja) データストリームを生成する装置と方法およびデータストリームを読み取るための装置と方法
KR100604363B1 (ko) 디지탈 정보신호를 인코딩된 형태 및 인코딩되지 않은형태로 교대로 송신하는 송신장치
KR100813269B1 (ko) 비트 스트림 처리/전송 방법 및 장치, 비트 스트림수신/처리 방법 및 장치
EP1420401A1 (en) Method and apparatus for converting a compressed audio data stream with fixed frame length including a bit reservoir feature into a different-format data stream
RU2782730C1 (ru) Процессор передатчика звуковых сигналов, процессор приемника звуковых сигналов и связанные с ними способы и носители данных
JP2005039674A (ja) データ送信装置、データ受信装置及びデータ送受信装置
KR0178731B1 (ko) 디지탈 오디오신호의 에러 보정방법 및 이를 이용한 서브밴드복호화장치
KR20070042328A (ko) 디지털 신호 전송 방법
JP2003233396A (ja) 復号装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130130

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140203

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150129

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160128

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180131

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20190130

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20200130

Year of fee payment: 11