KR100728245B1 - 오디오 또는 비디오 데이터 인코딩의 출력 지연을변경하는 방법 및 장치 - Google Patents

오디오 또는 비디오 데이터 인코딩의 출력 지연을변경하는 방법 및 장치 Download PDF

Info

Publication number
KR100728245B1
KR100728245B1 KR1020010012237A KR20010012237A KR100728245B1 KR 100728245 B1 KR100728245 B1 KR 100728245B1 KR 1020010012237 A KR1020010012237 A KR 1020010012237A KR 20010012237 A KR20010012237 A KR 20010012237A KR 100728245 B1 KR100728245 B1 KR 100728245B1
Authority
KR
South Korea
Prior art keywords
data
audio
delay
output
time stamp
Prior art date
Application number
KR1020010012237A
Other languages
English (en)
Other versions
KR20010093656A (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 KR20010093656A publication Critical patent/KR20010093656A/ko
Application granted granted Critical
Publication of KR100728245B1 publication Critical patent/KR100728245B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/036Insert-editing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8106Monomedia components thereof involving special audio data, e.g. different tracks for different languages
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23608Remultiplexing multiplex streams, e.g. involving modifying time stamps or remapping the packet identifiers
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2368Multiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4341Demultiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4344Remultiplexing of multiplex streams, e.g. by modifying time stamps or remapping the packet identifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4347Demultiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Systems (AREA)
  • Color Television Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

TV 방송 목적을 위해, 관련된 비디오 인코더 및 오디오 인코더를 가진 인코딩 시스템이 사용된다. 오디오 및 비디오 스트림(streams)을 다중화(multiplexing)하고 송신하기 전에 오디오 및 비디오 지연이 정렬(aligned)된다. 시간 스탬프(stamping) 메커니즘에 따라, 인코딩 될 데이터와 링크되는 입력 시간 스탬프가 생성되며, 상기 입력 시간 스탬프는 출력 시간 스탬프에 의해 출력 전에 대체되며, 상기 출력 시간 스탬프는 상기 입력 시간 스탬프로부터 데이터 지연 상수를 사용하여 유도된다. 상기 입력 시간 스탬프는 인코딩 프로세스의 지연을 제어하기 위해 사용되고, 상기 출력 시간 스탬프는 출력 시간을 표시한다. 스위칭 가능한 출력 지연을 허용하기 위해, 데이터 지연 상수가 변경될 수 있다. 이미 할당된 출력 시간 스탬프는 변경되지 않은 채로 남는다. 출력 시간 스탬프가 아직 할당되지 않은 데이터를 위해, 상기 출력 시간 스탬프는 상기 새로운 지연 상수를 사용해 연산된다.

Description

오디오 또는 비디오 데이터 인코딩의 출력 지연을 변경하는 방법 및 장치{METHOD AND APPARATUS FOR CHANGING THE OUTPUT DELAY OF AUDIO OR VIDEO DATA ENCODING}
도 1은 출력 지연을 변경하는 방법에 대한 개략적인 흐름도를 도시한 도면.
도 2는 본 발명법을 사용하는 4-채널 오디오 인코더의 기능적 블록도를 도시한 도면.
<도면 주요 부분에 대한 부호의 설명>
1: 방법 단계 1 2: 방법 단계 2
3: 방법 단계 3 4: 방법 단계 4
5: 방법 단계 5 6: 방법 단계 6
7: 방법 단계 7 8: 방법 단계 8
9: 방법 단계 9 ASBUF : 비동기(asynchronous)의 버퍼
BUF : 동기(synchronous)의 버퍼
본 발명은 오디오 또는 비디오 데이터 인코딩의 출력 지연을 변경하는 방법 및 오디오 또는 비디오 데이터 인코딩의 출력 지연을 변경하는 장치에 관한 것이다.
관련된 비디오 인코더 및 오디오 인코더를 갖춘 인코딩 시스템은 다양한 애플리케이션, 예를 들면, TV 방송 목적을 위해 사용된다. 이 경우, 비디오 인코더는 1.5초에 달하는 가변의(variable) 인코딩 지연을 가질 수 있으며, 이는 예를 들면, 선택된 비트 율(rate)에 의존된다. 따라서, 오디오 및 비디오 지연은 오디오 및 비디오 스트림(stream)을 다중화(multiplexing)하고 송신하기 전에 정렬되어야 하며, 그 이유는 소비자 제품의 디코더에서 버퍼의 한계 때문이다.
오디오 인코더 내에서 시간 스탬프(stamping) 메커니즘의 도움을 얻어 지연을 제어하는 기본적 메커니즘은 유럽 특허 출원 제99250009호에서 찾을 수 있다. 다-채널 오디오 인코더 보드(board)에서 입력 시간 스탬프가 생성되며, 이는 적어도 하나의 입력 프로세싱 스테이지에서, 인코딩 될 오디오 데이터의 프레임과 링크(link)되며, 여기서 상기 입력 시간 스탬프 또는 입력 시간 스탬프로부터 유도된 시간 스탬프는 프로세싱에서 다른 프로세싱 스테이지에 있는, 대응하여 프로세싱 된 프레임 데이터와 링크된 채로 남지만, 적어도 출력 시간 스탬프에 의해 대체된 마지막 프로세싱 스테이지에 있다. 이들 각 스테이지에서, 프로세싱 될 현재의 프레임 데이터와 링크된, 대응하는 시간 스탬프 정보는 프로세싱의 전반적인 지연을 제어하기 위해 눈여겨 보아진다.
작동자의 선택에 따라 비디오 및 오디오 인코더에 대해 스위칭 가능한 비트 율을 허용하기 위해서, 예를 들면 추가의 TV 채널을 위한 공간을 만들기 위해 오디오 인코더의 스위칭 가능한 지연이 요망된다. 그러나, 유럽 특허 출원 제99250009호에는 그러한 지연 변경을 어떻게 다루어야 하는 것은 개시하지 않고 있다.
본 발명의 하나의 목적은 오디오 또는 비디오 데이터 인코딩의 출력 지연을 변경하는 방법을 개시하는 것이며, 특히 작동자의 선택에 따라 비디오 및 오디오 인코더에 대한 스위칭 가능한 비트 율의 목적을 위한 것이다. 이 목적은 청구 범위 제 1 항에 개시된 방법으로써 이루어진다.
본 발명의 추가의 목적은 본 발명법을 이용하는 오디오 또는 비디오 데이터 인코딩의 출력 지연을 변경하는 장치를 개시하는 것이다. 이 목적은 청구 범위 제 7 항에 개시된 장치로써 이루어진다.
원칙적으로, 본 발명법에 따라서 입력 시간 스탬프가 생성되며, 이는 인코딩 될 오디오 또는 비디오 데이터와 링크되고, 인코딩 프로세스의 지연을 제어하기 위해 사용된다. 출력 시간 스탬프는 데이터 지연 상수를 사용함으로써 입력 시간 스탬프로부터 유도되며, 출력 시간 표시를 위해 인코딩 된 데이터로 할당된다. 할당된 출력 시간 스탬프를 지닌 인코딩 된 데이터는 출력 전에 버퍼링되며(buffered), 여기서 상기 출력 지연의 변경을 위해 데이터 지연 상수가 변경된다. 이미 할당된 출력 시간 스탬프는 변경되지 않은 채로 남는다. 출력 시간 스탬프가 아직 할당되지 않는 데이터를 위해, 출력 시간 스탬프는 새로운 데이터 지연 상수를 사용해서 연산된다.
본 발명법의 유익한 추가적 실시예는 각각의 종속항에서 개시된다.
본 발명의 실시예는 첨부된 도면을 참조하여 설명된다.
(실시예)
도 1은 출력 지연을 변경하는 방법에 대한 개략적인 흐름도를 도시한다. 오디오 샘플 또는 오디오 계수로 입력 시간 스탬프 정보 ITS가 링크되거나 첫번째 방법 단계(1)에서 할당된다. 이어서, 오디오 샘플 또는 오디오 계수는 방법 단계(2)에서 인코딩된다. 방법 단계(3)에서, 사용자-정의한(user-defined) 지연 D의 변경이 요청되었는 지의 여부가 체크된다. 만약 그렇다면, 출력 시간 스탬프에 대한 프로세싱 방정식 OTS = ITS + D가 방법 단계(4)에서 변경된다. 이어서, 방법 단계(6)에서 버퍼링 되기 전에 방법 단계(5)에서 입력 시간 스탬프 정보 ITS는 출력 시간 스탬프 OTS에 의해 대체된다. 요구되는 메모리의 양이 이 측에서(at this side) 더 낮기 때문에, 버퍼링은 상기 인코딩 프로세스의 출력에서 수행된다. 따라서 입력 데이터는 오디오 인코더에 의해 수신되었을 때, 통상 즉시 인코딩되며, 인코딩 후에는 지연 버퍼로 들어갈 것이며, 특별히, 전송(transport) 스트림 패킷의 형태로 넣어질 것이다.
데이터를 방법 단계(9) 안의 출력으로 보내기 전에, OTS는 방법 단계(7)에서 체크된다. 만약 OTS 연속에서 갭(gap)이 발생하면, 스터핑(stuffing) 데이터 또는 제로(zero) 데이터가 방법 단계(8)에서 삽입된다. 만약, 한편으로, 같거나 중복되는(overlapping) OTS를 가진 두 개의 패킷이 지연 버퍼에서 발견되면, 이 역시 방법 단계(8)에서 특별한 취급을 요한다. 한 가지 가능성은 이미 지나간 출력 시간을 표시하는 패킷을 버리는 것이다. 이 경우를 다루는 다른 한가지 가능성은 차이(difference) 시간에 대한 변경 요청과 함께 시작하여 출력 지연 버퍼로 추가의 데이터를 기록하지 않는 것이며, 다음의 모든 패킷에 대해 OTS 연산을 위한 새로운 지연 시간을 사용하는 것이다. 마지막으로, 데이터는 방법 단계(9)에서 출력으로 보내진다.
다음에서, 데이터의 취급, 특히 방법 단계(8)에서의 데이터의 취급이 더 상세히 설명되며, 각각 0.3초 및 초기 지연 0.5초로 예로 든 지연 증가 또는 감소에 대한 것이다.
지연 증가를 위해, 지연 버퍼는 현재 유효한 지연 시간 0.5초와 동등한 특정 양(amount)의 데이터를 포함하며, 데이터의 이 양은 0.8초로 증가될 것이다. 이는, 지연 버퍼로 데이터 입력이 계속되는 동안, 지연 버퍼로부터 인코딩 된 데이터 출력이 효과적으로 0.3초 동안 멈추어야 할 필요가 있음을 내포한다.
지연 버퍼 내의 데이터는 이미 인코딩 된 데이터로서, 바로 전에 이미 출력된 지연 버퍼의 지속(continuation)을 나타낸다. 따라서, 지연 버퍼는, 지연 시간에 대한 변경 요청 후에, 지연 시간 변경 시, 지연 버퍼 내에 있었던 모든 데이터가 완전히 출력될 때까지, 데이터를 0.5초 동안 계속 운반하도록 다루어진다. 이어서, 지연 버퍼로부터의 출력이 멈추며, 이는 송신기/디코더 체인으로 스터핑, 제로 데이터가 보내지거나 또는 아무런 패킷도 보내지지 않는 것 중 어느 하나를 내포한다. 멈춤은 이어서 0.3초의 시간 동안 지속될 것이며, 이는 그에 따라 지연 버퍼 콘텐츠(contents)를 증가시키는 것을 요구한다.
이러한 작용(behavior)은 상기 언급된 시간 스탬프를 기초로 한 지연 제어 메커니즘을 사용함으로써 성취된다. 모든 출력 블록, 즉, TS 패킷은 주어진 시간에 지연 버퍼 내에 상주하며, 언제 패킷이 지연 버퍼에서 나와 그 후 송신기로 보내져야 하는, 시간의 지점을 표시하는 출력 시간 스탬프가 또한 스탬프된다. 이미 지연 버퍼 내에 있는 패킷에 대해서는 변경할 것이 없으며, 이들은 생성 시, 의도된 대로 출력된다. 오디오 지연 D가 변경되는 시간에서 즉시, 작동자에 의해 직접 또는 간접적으로, 상기 출력 시간 스탬프를 위한 프로세싱 방정식 OTS = ITS + D가 변경되며, 즉 모든 OTS 시간 스탬프는 0.3초씩 증가된다. "기존의(old)" 지연으로 연산된 모든 패킷은 지연 버퍼로부터 출력 스테이지에 의해 차례차례 순서적으로 출력된다. 이어서, 0.5초 후에, OTS 연속(continuity)에 갭이 있을 것이며, 즉, 다음 패킷은, 패킷이 지연 변경이 없었더라면 가졌을 시간보다 0.3초 만큼 증가된 시간을 표시하는 OTS를 표시할 것이다. 출력 스테이지는 이어서 스터핑 데이터 또는 제로 데이타를 보낼 수 있거나 또는 심지어 패킷을 보내지 않을 수 있다.
따라서, 사용자, 즉 디코더 측에서 청취하는 소비자를 위한 지연 증가의 순(net) 효과는, 지연 변경 요청 후에 다음과 같이 될 것이다.
- 오디오 프로그램은 현재 유효한(effective) 지연 시간 0.5초 동안 정상적으로 지속되며,
- 오디오 프로그램은 0.3초 동안 잠깐 소리가 나지 않으며(mute),
-프로그램은 새로운 지연 0.8초를 가지고 정상적으로 계속된다.
작동자 측에서, 지연 변경 요청을 하자마자, 다음이 발생한다.
- 인코더로 이미 입력된 모든 프로그램 부분(part)은 사용자에게 연속하여 전달될 것이며,
- 지연 스위칭 이후로 입력되는 모든 오디오 프로그램 부분은 사용자 측에서 앞서의 부분과 잠시의 중단(break)에 의해 분리될 것이다.
작동자는 되도록 사용자가 짜증나지 않도록 하기 위해, 프로그램 갭(gap)을 사용하거나 또는 지연 시간 변경에 대해 별개의 프로그램 부분 사이에 스위칭 순간(moment)을 사용할 수 있다.
또한 지연 감소에서, 지연 버퍼는 특정 양의 데이터를 포함한다. 지연은 이제 0.5초에서 0.2초 지연으로 감소된다. 이 경우, 지연 버퍼에 추가의 입력 데이터 기록을 멈추는 동안, 출력 프로세스를 0.3초 동안 정상적으로 지속하는 것이 필요할 것이다. 따라서, 인코더의 입력에서 사용 가능한 프로그램 자료(material)의 짧은 시간은 사용자에게 보내지지 않을 것이다. 원칙적으로, 사용자 측에서의 오디오 프로그램은 지속적이 될 수 있으나, 신호로부터 단편(a short piece)이 잘라내어질 것이다.
지연 감소는 지연 제어에 기초한 같은 시간 스탬프에 의해서 성취될 수 있다. 오디오 지연 변경 요청 직후, 지연 변경이 없었을 때 보다 0.3초 만큼 더 이른 시간의 한 지점을 상기 OTS가 표시하도록, 출력 시간 스탬프 OTS 연산이 변경된다.
만약 지연 버퍼로 데이터 패킷의 기록이 계속된다면, 이는 같거나 중복되는 OTS를 가진 두 개의 패킷을 지연 버퍼에서 찾게 되는 것을 초래할 것이다. 패킷이 지연 버퍼 내에서 정돈되기 때문에, 상기 오디오 지연 변경 요청 전의 "기존의(old)" 패킷 출력은, 변경 요청 시에 지연 버퍼 내에 있었던 모든 데이터가 출력될 때 까지 정상적으로 계속될 것이다. 이어서, 그 다음의 패킷은 이미 통과한 출력 시간 OTS를 0.3초 동안 표시할 것이며, 그래서 출력 드라이버 스테이지는 이들 패킷을 버려야 할 것이다.
이 경우를 다루는 또다른 방법은 차이 시간 0.3초 동안 출력 지연 버퍼로 변경 요청부터 시작하는 추가의 데이터를 기록하지 않는 것이며, 그 후의 모든 패킷에 대해 OTS 연산을 위해 새로운 지연 시간을 사용하는 것이다. 이 경우, 인코더의 출력 스테이지는 다소 지속적인 OTS 시퀀스를 발견할 것이다.
따라서 사용자(디코더 측에서 청취하는 소비자)를 위한 지연 감소의 순(net) 효과는 지연 변경 요청 후, 다음과 같이 될 것이다.
- 오디오 프로그램은 현재의 지연 시간 0.5초 동안 정상적으로 계속되며,
- 이어서, 프로그램은 새로운 지연 0.8초를 가지고 정상적으로 계속되나, 건너 뛴(skipped) 오디오 프로그램의 지연 차이 0.3초를 지닌다.
작동자 측에서, 변경 요청을 하자마자 다음이 발생한다.
- 인코더로 이미 입력된 모든 프로그램 부분은 연속적일 것이며, 즉 정상적으로 사용자에게 전달될 것이며,
- 지연 시간 차이 0.3초와 동등한 다음의 시간 기간에 대해 변경 요청 직후, 인코더로 공급된 프로그램 자료(material)는 사용자 측에서 들리지 않을 것이며(not audible),
- 이 시간 기간 0.3초 후, 인코더로 입력된 모든 오디오 프로그램 부분은 사용자 측에서 정상적으로 들릴 것이다.
따라서, 작동자는 지연 시간을 변경하기 위해 프로그램 콘텐트 스위치를 사용할 수 있으며, 청취자를 위해 프로그램이 전혀 분실되지 않음을 보증하기 위해 지연 시간 차이로써 단순히 다음 프로그램의 지연 시작을 사용할 수 있다.
청취자에게 들릴 수 있게 되는, 오디오 프로그램의 모든 불연속은 인코더에 의해, 즉 적절한 페이드 인(fade in) 및 아웃(out)에 의해 선택적으로 완화될 수도 있다. 지연 증가: 갭 앞에서 페이드 아웃, 갭 뒤에서 페이드 인. 지연 감소: 건너 뛴 부분 앞에서 페이드 아웃, 건너 뛴 부분 뒤에서 페이드 인. 오디오 프로그램 스위칭과 함께 지연 변경을 하는 경우, 이것이 필요 없을 수도 있으며, 그 이유는 오디오 프로그램이 이 스위칭을 포함할 것이기 때문이다.
본 발명의 방법은 도 2에 도시된 바와 같은 오디오 인코더에서 사용될 수도 있다. 인코더는 네 개의 스테레오 PCM 입력 신호 PCMA, PCMB, PCMC 및 PCMD를 수신한다. 예를 들어, MPEG 오디오 데이터는 프레임 기반이며, 각 프레임은 1152 모노 샘플 또는 스테레오 샘플을 포함한다. 도 2의 인코더 작동 시스템은 네 개의 MPEG 채널의 인코딩을 위해 여섯 개의 DSP들(도시되지 않음)을 포함할 수도 있다. 이들 DSP들은 도 2에 도시된 기술적(technical) 기능을 포함하는 소프트웨어 인코더를 형성한다. 적합한 타입의 DSP는 예를 들면 아날로그 디바이스의 ADSP 21060 또는 21061 또는 21062이다. 대안으로서, 도 2에 도시된 기술적 기능은 하드웨어에서 실현될 수 있다.
여섯 개의 DSP(들) 상에서, 또는 대응하는 하드웨어 상에서 구동하는 소프트웨어의 동기화(synchronization)는 FIFO 버퍼를 사용해서 이루어지며, 여기서 각 버퍼는 하나 또는 몇 개의 특정(specific) 프레임으로 할당된다. 이는, 특정 시간 순간에서, 그 수가 사용 가능한 버퍼의 수(quantity)에 의존하는, 이전의 프레임 뿐만 아니라 현재의 프레임이 상기 프로세싱 스테이지에 존재하는 것을 의미한다.
몇 개의 스테이지 사이에, 비동기(asynchronous)의 버퍼(ASBUF)가 삽입되며, 이는 비동기의 기록 및 판독 작동을 허용해 준다. 다른 스테이지 사이에서 동기(synchronous)의 버퍼(BUF)는 충분하다. PCM 입력 신호 PCMA, PCMB, PCMC 및 PCMD는 각각 비동기의 버퍼를 거쳐 각각의 변환기(converter) CONA, CONB, CONC 및 COND로 간다. 그러한 변환기에서, 인코딩 될 오디오 샘플의, 정수에서-부동으로(integer-to-floating) 표현(representation) 변환이 발생할 수도 있다. 또한 상기 인코더가 정수 표현 오디오 샘플을 프로세싱하는 것 역시 가능하다. 그러한 변환기에서, 하나의 프레임 안에서 하나 이상의 종류의 에너지 레벨이 연산될 수도 있으며, 예를 들면, 프레임의 모든 샘플의 에너지 또는 프레임의 샘플의 평균 에너지가 연산될 수 있다. 이들 에너지 값은 후속되는 정신음향의(psychoacoustic) 프로세싱에서 사용될 수도 있다.
덧붙여, 그러한 변환기에서, 아마도 변경된(adapted) 인코딩 파라미터가 상기 프레임 오디오 데이터와 링크될 수 있다. 각각의 파라미터 인코더 PENCA, PENCB, PENCC 및 PENCD에서, 원래의 인코딩 파라미터는 상술한 바와 같이 변환될 수도 있으며, 이어서 CONA, CONB, CONC 및 COND 각각으로 입력된다.
비동기의 버퍼를 거쳐, CONA, CONB, CONC 및 COND의 출력 데이터는 부대역(subband) 필터 SUBA, SUBB, SUBC 및 SUBD, 그리고 첫번째 왼쪽과 오른쪽 채널 정신음향의 연산자 Psycho1A_L, Psycho1A_R, Psycho1B_L, Psycho1B_R, Psycho1C_L, Psycho1C_R, Psycho1D_L 및 Psycho1D_R 각각으로 병행하여 입력된다(fed to). 상기 부대역 필터는 전체 오디오 스펙트럼을 주파수 대역으로 나누며, 아마도 FFT를 사용하고, 주파수 대역 또는 부대역(subband) 안의 계수의 최대 또는 스케일 인자를 연산할 수도 있다. 주파수 대역 내에서 정규화(normalisation)가 실행될 수도 있다. 부대역 필터는 상기 시간 스탬프 정보 및 대응하는 업스트림(upstream) 비동기의 버퍼로부터 판독되는 아마도 관련된 인코딩 파라미터를 참작한다.
첫번째 정신음향의 연산자는 예를 들면 1024 샘플의 길이를 갖는 FFT를 실행하고, 현재의 차폐(masking) 정보를 결정한다. 각 첫번째 정신음향의 연산자 다음에는 두번째 정신음향의 연산자 Psycho2A_L, Psycho2A_R, Psycho2B_L, Psycho2B_R, Psycho2C_L, Psycho2C_R, Psycho2D_L 및 Psycho2D_R 각각이 올 수 있으며, 상기 연산자는 부대역 필터에서 앞서 연산된 최대 또는 스케일 인자값을 구한다. 상기 첫번째 및 두번째 정신음향의 연산자는 상기 시간 스탬프 정보와, 대응하는 업스트림 비동기의 버퍼로부터 판독된 아마도 관련된 인코딩 파라미터를 참작한다.
Psycho2A_L, Psycho2A_R, Psycho2B_L, Psycho2B_R, Psycho2C_L, Psycho2C_R, Psycho2D_L 및 Psycho2D_R의 출력 신호는 비트 할당기(allocators) 및 양자화기(quantisers) Bal/Q/E_A, Bal/Q/E_B, Bal/Q/E_C 및 Bal/Q/E_D 각각에서 사용되며, 이는 할당된 비트의 수와, 버퍼를 거쳐 상기 연관된 부대역 필터로부터 나오는 상기 오디오 데이터 계수 양자화를 결정하기 위함이다. 또한, 첫번째 정신음 향의 연산자에서 연산 중인 것 외에, 두번째 정신음향의 연산자에서 연산하는 것도 가능하며, 그것으로 인해 첫번째 정신음향의 연산자를 생략하는 것도 가능하다.
최종적으로, Bal/Q/E_A, Bal/Q/E_B, Bal/Q/E_C 및 Bal/Q/E_D의 출력은 비동기의 버퍼와 출력 인터페이스 AES-EBU_A, AES-EBU_B, AES-EBU_C, AES-EBU_D 각각을 통과해 지나가며, 이는 인코더 스테레오 출력 신호 PCM_OUT A, PCM_OUT B, PCM_OUT C, PCM_OUT D 각각을 운반한다. 상기 출력 인터페이스는 IEC 958을 따를 수도 있다.
비디오 인코더는 다음의 스테이지를 포함한다: 블록 차이 스테이지, DCT(이산 코사인 변형), 양자화 및 피드백 루프(feedback loop)에서의 역 양자화, 역 DCT , 그 출력이 상기 블록 차이 스테이지로의 입력인 동작 보상된 보간법, 여기서 상기 양자화의 출력은 최종 출력 전에 아마도 VLC{가변의(variable) 길이 코딩} 인코딩되고 버퍼링되며, 버퍼 필링(filling) 레벨은 인코딩 결함(artefacts)이 가능한 한 차폐되도록 양자화를 제어하기 위해 사용된다.
이 인코더에서, 다음의 요소가 요구된다.
- 시스템 시간을 제공하는 시스템 시간 베이스로, 이는 구성된(comprised) 모든 입력 및 출력 스테이지를 위해 고유의 값을 운반한다.
- 충분히 정밀한 입력 시간 스탬프(ITS)를 얻기 위해 시스템 시간 베이스와 입력 데이터를 관련시키는 하드웨어 및/또는 소프트웨어 메커니즘.
- 출력 시간 스탬프(OTS)에 따라, 충분히 정밀한 출력을 얻기 위해 시스템 시간 베이스와 데이터 출력을 관련시키는 하드웨어 및/또는 소프트웨어 메커니즘.
이들 요소는 다음 방식으로 사용된다.
a) 시스템의 입력 인터페이스 마다, 입력 데이터는 시스템 타이머와 관계있으며, 즉, 인입(incoming) 데이터와 함께 입력 시간 스탬프 ITS가 얻어지고, 이는 데이터 프레임으로 할당된다. 예를 들면, 샘플링된 오디오 데이터 블록 또는 프레임의 첫번째 샘플의 샘플링 순간의 시스템 시간이 그에 따라 사용된다.
b) 다수의 입력의 경우, 입력 데이터 블록은 상기 입력 시간 스탬프에 의해 주어진 시간 정보에 의해 채널에 걸쳐서 재정렬될 수 있다.
예 1: 수 개의 두(two)-채널 인터페이스 상으로 분배된 다채널 오디오 입력.
예 2: 다수의 스테레오 인코더의 비트스트림 출력은 상기 채널에 걸쳐서 잘 정의된 시간 관계를 가지는, 즉 같은 지연 가능성을 가지는 MPEG TS(전송 스트림)로 다중화된다.
c) 입력 시간 스탬프 ITS와 의도되는 전반적인 지연 D로부터, 상기 출력 데이터를 위한 출력 시간 스탬프 OTS가 연산된다.
입력 데이터 블록 당 하나의 출력 데이터 블록이 시스템에 의해 연산되는 가장 쉬운 프로세싱 경우에서, 각 출력 블록의 의도된 출력 시간은 OTS(n) = ITS(n) + D로 주어지며, n= 0, 1, 2 ...는 데이터 블록 번호를 표시한다.
입력 데이터 블록 당 수 개의 출력 데이터 블록 또는 심지어 출력 블록의 비-정수(non-integer) 번호가 생성되는 경우, 출력 블록의 각각에 대한 OTS는 대응하는 시간 비율에 따라 보간될 수 있다. 하나의 예는 MPEG 인코더 1152 샘플 입력이며, 또는 하나 이상의 ESP들{초급{elementary) 스트림 패킷}을 가진 MPEG PES 패 킷과, MPEG TS 전송 스트림이며, 상기 MPEG TS 전송 스트림에서, 패킷은 188 바이트의 길이, 즉, 각 샘플 프레임에 대해 3 내지 7개 TS 패킷이 송신을 위해 요구된다.
d) 각 출력 인터페이스는 도 1에 대해 상술한 설명에서 상세히 설명한 바와 같은 현재의 시스템 시간에 관해 관련된 OTS를 위해, 프로세싱 스테이지에 의해 출력 버퍼로 제공될 때, 출력 데이터 블록을 검사한다(examine). 만약 OTS가 이미 통과한 시간 순간을 표시한다면, 애플리케이션에 의존하여, 출력 데이터 블록은 버려질 수 있거나, 즉시 출력될 수 있다. 만약 OTS가 미래의 시간 순간을 가리키고 있다면, 출력 스테이지는 그 시간 순간이 도래할 때 까지 대기할 것이며, 대기 시간 동안 아무것도 출력하지 않거나 한정된 필링 패턴을 출력하는 것 중 하나를 할 수 있다.
한 쌍의(a couple of) 관련된 메커니즘을 이용할 수 있으며, 이는 구현될 I/O 프로세스에 대해 요구되는 바와 같이 다른 조합(combination)으로 사용될 수 있다.
예로써, 최소 하드웨어 각본(scenario)의 예에서, 어떤 종류의 정상적인(regular) 또는 제어된 출력 드라이버 소프트웨어 활성화와 공동으로, 시스템은 통상 이미 각 DSP의 일부인, 단일 하드웨어 타이머를 사용한다. 이어서, 지연 제어의 나머지가 DSP에 의해 시행된다. 원칙적으로, 두 개의 타이머 기능이 요구된다.
- 'getTime()' 기능, 이는 소프트웨어가 실제 시스템 시간을 묻게 한다. 각 입력 데이터 블록의 처음 또는 마지막을 수신(DMA 또는 INT 기반) 하자마자, 상기 getTime() 기능은 상기 블록에 대해 ITS를 얻기 위해 사용될 수 있다.
- 대응하는 프로세싱이 끝난 출력 블록을 보내기 앞서, 출력 기능은 특정(certain) 지연을 필요로 할 수도 있다. 이는 폴링(polling) 방식, 즉, 만약 어떤 종류의 순환적인 활성화가 사용 가능할 시, 실제 시스템 시간 대(vs.) OTS의 순환적인 제어 또는 한정 가능한 지연 'interruptAfter(DELAY)' 후에 인터럽트(interrupt)를 내리는 특정(specific) 타이머-기반 지연 기능 또는 'threadActivityAfter(DELAY)' 기능 중 어느 하나에 의해서 될 수 있다.
제로에서 인터럽트가 있는 하향(backward) 카운터로서 작동하는, 단일 하드웨어 타이머와, DSP의 내장(build-in) 기능인 입력 및 출력 DMA 블록-완성 인터럽트가 사용된다.
상기 단일 하드웨어 타이머는 'interruptAfter(DELAY)'와 'getTime()' 기능을 제공할 수 있으며, 여기서 후자의 기능에 대해, 상기 타이머로 로딩(loaded)되는 후속의 지연 시간은 연속적인 시스템 시간을 얻기 위해 합산되며, 여기서 수 개의 'interruptAfter(DELAY)' 기능을 병행하여 구동할(run) 수 있다.
각 DSP가 각자의 고유한 타이머를 구현하지만, 다른 DSP에 걸쳐 지연 요건을 갖춘 출력 및 입력을 분배하는, 다중-DSP 시스템의 경우에, 타이머 동시성의 문제가 있다. 이 문제는 특별 순환적인 인터럽트 신호(예를 들면, 10ms 길이)에 의해 해결될 수 있으며, 상기 신호는 시스템 내의 모든 DSP로 인가되며, 시스템 시간을 재동기화시키는데(resynchronize) 사용된다. 카운터 출력 단어는 iiii.ffff 양식을 가질 수도 있으며, 여기서 iiii는 정수 부분으로서 해석되고, ffff는 분수 부분으로서 해석된다. 어느 10ms iiii나 다 '1'만큼 증분된다. 이 이벤트(event)는 DSP로 송신되며 거기에서 카운팅된다. DELAY에 대해 최대로 다루기 쉬운 값은 iiii 단어 길이에 의존한다. 그로 인해, 인터럽트는 재동기화의 순간을 표시하며, 상기 인터럽트 기간(period) 동안, 그 시간에 대한 지배적인(master) 값 iiii가 하나의 지배적 DSP로부터 다른 모든 DSP로 송신된다. 이 때, 순간 ffff는 제로로 설정된다.
상기 예의 각본에서 설명된 지연 제어가 오로지 최소의 하드웨어만을 필요로 하고, 따라서 작업의 대부분을 (더 저렴하고 더 융통성 있는)소프트웨어에 일임하는 반면에, 단점은, 상기 지연 시간 정확도가 예를 들면 인터럽트 잠복(latency) 시간, 최대 인터럽트 기능억제(disable) 시간 및 다중-DSP 시스템의 경우, 버스 중재(bus arbitration) 지연에 의해 제한된다. 만약 상기 얻어진 정확도가 충분하지 않다면, 하드웨어를 늘릴 수 있으며, 이는 시스템 시간에 비례하여 ITS를 얻는 프로세스를 만들며, 시스템 시간에 비례하는 OTS에서의 출력이 더 정확하도록 만든다. 시간에서 대강의 지점을 결정하는 소프트웨어와 시간에서 정확한 지점을 설정하는 특별한 하드웨어를 조합해 놓은 해결책은 요구되는 DSP 반응 시간(하드웨어와 비교하여 느린 경향이 있다)과 하드웨어 복잡도(시간 기간이 길수록 더 복잡한 경향이 있다) 사이에서 타협을 이루도록 할 것이다.
마지막 프로세싱 스테이지와 관련된 버퍼에서 시작하고, 앞(front)의 프로세싱 스테이지와 관련된 버퍼로 속행하는 이론상의 오버플로우(overflow)는 DSP 사이에서 신호주고받기(handshake)에 의해 저지된다.
지연을 변경하는 본 발명법은 또한, 단일 DSP 시스템 및 어떤 다른 종류의 실 시간 프로세싱에 대해서도 적용될 수 있다.
단순화된 애플리케이션, 예를 들면, AC-3 디코더에서, 각 블록에 대한 프로세싱 시간이 프레임 기간보다 짧아야 하는 실 시간 제약(constraint)을 수령한 후에 단일 데이터 프레임을 연산하는 것은 종종 사용되는 접근법이다. 이 접근법은 수 개의 후속 프로세싱 스테이지로 분할하는 것을 포함하는 더 분배된 프로세싱을 가진 해결책으로 확장될 수 있으며, 결국에는 수 개의 DSP에 걸쳐 분배된다. 이 경우, 각 프로세싱 스테이지는 잘 한정된 '시간 슬롯'으로 강제될 수 있고, 여기서 각 프로세싱 스테이지에 대해 프로세싱 시간은 상기 시간 슬롯 길이보다 짧아야 한다. 먼저 설명한 해결책과는 반대로, 단일 시간 제약 대신, 시간 슬롯/프로세싱 스테이지 당 하나의 시간 제약이 있을 것이다.
인코더가 다른 인코딩 파라미터를 가지고 작동할 수 있다는 것이 필요 조건일 수도 있으며, 그 이유는 MPEG는 예를 들면 다양한 샘플 주파수 및 전반적인 데이터 속도(rate)를 허용하기 때문이다.
본 발명은 작동자가 지연을 변경할 때, 가장 짧은 중단(disruption) 기간이 보장된다는 이점을 지닌다.
본 발명은 임의의 가변의(variable) 비트 율(rate) 인코더 또는 가변의 프로세싱 시간을 필요로 하는 인코더에 대해 고정되어 있지만 가변인 인코딩 지연을 보장하는 데 사용될 수 있다.
본 발명은 특별히, MPEG 계층 1, 2 또는 3을 위한 MPEG 1, 2 및 4 오디오 인코딩과 디코딩, AC-3을 위한 디지탈 비디오 방송 DVB, DVD 처리를 위한 MD 및 AAC 프로세싱과 오디오 데이터 인코딩 및 디코딩에 관한 인터넷 애플리케이션에 사용될 수 있다.

Claims (10)

  1. 제 1 오디오 데이터를 인코딩용의 관련된 제 2 오디오 또는 비디오 데이터에 정렬시키는 방법으로서, 인코딩될 오디오 데이터 또는 비디오 데이터와 함께 링크되고 인코딩 프로세스의 지연을 제어하는데 사용되는 입력 시간 스탬프(stamp)가 생성되며, 출력 시간 스탬프는 데이터 지연 상수를 사용하여 상기 입력 시간 스탬프로부터 유도되고(derived) 출력 시간을 표시하기 위해 인코딩된 데이터에 할당되며, 할당된 출력 시간 스탬프를 가진 인코딩된 데이터는 출력 전에 버퍼링(buffering)되는, 제 1 오디오 데이터를 인코딩용의 관련된 제 2 오디오 또는 비디오 데이터에 정렬시키는 방법에 있어서,
    - 상기 제 1 오디오 데이터의 출력 지연이 상기 관련된 제 2 오디오 또는 비디오 데이터의 출력 시간에 따라 변경되고;
    - 상기 출력 지연의 변경을 위하여, 상기 데이터 지연 상수가 변경되고;
    - 이미 할당된 출력 시간 스탬프가 변경되지 않은 채로 남아있고;
    - 출력 시간 스탬프가 아직 할당되지 않은 데이터에 대해, 상기 출력 시간 스탬프가 새로운 데이터 지연 상수를 사용하여 연산되는 것을
    특징으로 하는, 제 1 오디오 데이터를 인코딩용의 관련된 제 2 오디오 또는 비디오 데이터에 정렬시키는 방법.
  2. 제 1 항에 있어서, 상기 출력 지연은 작동자의 요청이 있을 때 변경되는, 제 1 오디오 데이터를 인코딩용의 관련된 제 2 오디오 또는 비디오 데이터에 정렬시키는 방법.
  3. 제 1 항 또는 제 2 항에 있어서,
    지연 증가시에 나타나는 출력 시간 스탬프 시퀀스(sequence) 내의 갭(gap) 동안에, 스터핑(stuffing) 데이터 또는 제로(zero) 데이터가 보내지거나, 또는 심지어 데이터가 보내지지 않는, 제 1 오디오 데이터를 인코딩용의 관련된 제 2 오디오 또는 비디오 데이터에 정렬시키는 방법.
  4. 제 1 항 또는 제 2 항에 있어서,
    지연 감소에서 나타나는, 같거나 중복(overlapping)되는 출력 시간 스탬프를 가진 데이터에 대해, 이미 통과된 출력 시간 스탬프를 표시하는 나중의 데이터는 버려지는, 제 1 오디오 데이터를 인코딩용의 관련된 제 2 오디오 또는 비디오 데이터에 정렬시키는 방법.
  5. 제 1 항 또는 제 2 항에 있어서,
    지연 감소를 위해, 상기 출력 지연 변경 이전의 데이터 지연 상수인 기존의(old) 데이터 지연 상수와 새로운 데이터 지연 상수 사이의 차이(difference)에 대응하는 시간 지속 기간 동안, 작동자의 상기 출력 지연 변경 요청이 있을 때부터 시작해서, 어떠한 추가적인 데이터도 출력 지연 버퍼에 기록되지 않으며,
    상기 새로운 데이터 지연 상수는 이후의 모든 데이터에 대한 상기 출력 시간 스탬프의 연산에 사용되는, 제 1 오디오 데이터를 인코딩용의 관련된 제 2 오디오 또는 비디오 데이터에 정렬시키는 방법.
  6. 제 1 항 또는 제 2 항에 있어서,
    상기 오디오 또는 비디오 데이터의 불연속(discontinuities)은 인코더에 의해 완화되는, 제 1 오디오 데이터를 인코딩용의 관련된 제 2 오디오 또는 비디오 데이터에 정렬시키는 방법.
  7. 제 1 항 또는 제 2 항에 있어서,
    불연속은, 상기 출력 시간 스탬프 시퀀스 내의 갭, 즉 건너뛴 부분 앞에서 페이드 아웃(fading out)하고, 상기 출력 시간 스탬프 시퀀스 내의 갭, 즉 건너뛴 부분 뒤에서 페이드 인(fading in)함으로써 완화되는, 제 1 오디오 데이터를 인코딩용의 관련된 제 2 오디오 또는 비디오 데이터에 정렬시키는 방법.
  8. 제 1 오디오 데이터를 공통 인코딩용의 관련된 제 2 오디오 또는 비디오 데이터에 정렬시키는 장치로서, 인코딩될 오디오 데이터 또는 비디오 데이터와 함께 링크되고 인코딩 프로세스의 지연을 제어하는데 사용되는 입력 시간 스탬프가 생성되며, 출력 시간 스탬프는 데이터 지연 상수를 사용하여 상기 입력 시간 스탬프로부터 유도되고 출력 시간을 표시하기 위해 인코딩된 데이터에 할당되며, 할당된 출력 시간 스탬프를 가진 인코딩된 데이터는 출력 전에 버퍼링되는, 제 1 오디오 데이터를 공통 인코딩용의 관련된 제 2 오디오 또는 비디오 데이터에 정렬시키는 장치에 있어서,
    - 상기 제 1 오디오 데이터의 출력 지연을 상기 관련된 제 2 오디오 또는 비디오 데이터의 출력 시간에 따라 변경시키기 위한 수단으로서, 상기 데이터 지연 상수는 변경되는, 출력 지연 변경 수단과;
    - 상기 제 1 오디오 데이터의 이후의 부분에 대해, 상기 출력 시간 스탬프의 연산을 위해 상기 변경된 데이터 지연 상수를 사용하기 위한 수단으로서, 이미 할당된 출력 시간 스탬프가 변경되지 않은 채로 남아있는, 데이터 지연 상수 사용 수단을 포함하는 것을
    특징으로 하는, 제 1 오디오 데이터를 공통 인코딩용의 관련된 제 2 오디오 또는 비디오 데이터에 정렬시키는 장치.
  9. 제 8항에 있어서, 상기 데이터 지연 상수를 변경하기 위한 상기 수단은 작동자의 요청이 있을 때 사용되는, 제 1 오디오 데이터를 공통 인코딩용의 관련된 제 2 오디오 또는 비디오 데이터에 정렬시키는 장치.
  10. 제 8항 또는 제 9항에 있어서,
    지연 감소를 위해, 상기 출력 지연 변경 이전의 데이터 지연 상수인 기존의 데이터 지연 상수와 새로운 데이터 지연 상수 사이의 차이에 대응하는 시간 지속 기간 동안, 작동자의 상기 출력 지연 변경 요청이 있을 때부터 시작해서, 어떠한 추가적인 데이터도 출력 버퍼에 기록되지 않으며,
    상기 새로운 데이터 지연 상수는 상기 제 1 오디오 데이터의 이후의 모든 데이터에 대한 상기 출력 시간 스탬프의 연산에 사용되는, 제 1 오디오 데이터를 공통 인코딩용의 관련된 제 2 오디오 또는 비디오 데이터에 정렬시키는 장치.
KR1020010012237A 2000-03-29 2001-03-09 오디오 또는 비디오 데이터 인코딩의 출력 지연을변경하는 방법 및 장치 KR100728245B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP00400854.6 2000-03-29
EP00400854A EP1139665A1 (en) 2000-03-29 2000-03-29 Method and apparatus for changing the output delay of audio or video data encoding

Publications (2)

Publication Number Publication Date
KR20010093656A KR20010093656A (ko) 2001-10-29
KR100728245B1 true KR100728245B1 (ko) 2007-06-14

Family

ID=8173619

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010012237A KR100728245B1 (ko) 2000-03-29 2001-03-09 오디오 또는 비디오 데이터 인코딩의 출력 지연을변경하는 방법 및 장치

Country Status (7)

Country Link
US (1) US6891573B2 (ko)
EP (1) EP1139665A1 (ko)
JP (1) JP2001313630A (ko)
KR (1) KR100728245B1 (ko)
CN (1) CN1176550C (ko)
AT (1) ATE470312T1 (ko)
DE (1) DE60142272D1 (ko)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10031355A1 (de) * 2000-06-28 2002-01-17 Grundig Ag Verfahren und Vorrichtung zur zeitsynchronen Weiterleitung von Signalen
WO2003104942A2 (en) * 2002-06-07 2003-12-18 Yahoo. Inc. Method and system for controling and monitoring a web-cast
JP3644503B2 (ja) 2002-10-01 2005-04-27 日本電気株式会社 無線端末およびそのエンド間遅延制御方法とプログラム
JP2004186840A (ja) * 2002-11-29 2004-07-02 Sony Corp 非初期化バッファモデルを用いた方法
JP4872253B2 (ja) * 2004-10-12 2012-02-08 ソニー株式会社 多重化装置、多重化方法、プログラム、および記録媒体
CN101180887B (zh) * 2005-05-24 2010-09-29 Nxp股份有限公司 用于音频视频处理系统的设备
US7423693B2 (en) * 2005-07-28 2008-09-09 Cole James R Video delay stabilization system and method
CN100579146C (zh) * 2005-09-02 2010-01-06 深圳市东进通讯技术股份有限公司 综合电信平台中的模块配置管理方法
US8405773B2 (en) * 2005-09-06 2013-03-26 Nippon Telegraph And Telephone Corporation Video communication quality estimation apparatus, method, and program
US7970222B2 (en) * 2005-10-26 2011-06-28 Hewlett-Packard Development Company, L.P. Determining a delay
WO2007120245A1 (en) 2006-04-18 2007-10-25 Thomson Licensing Method for reducing channel change times in a digital video apparatus
US7908147B2 (en) 2006-04-24 2011-03-15 Seiko Epson Corporation Delay profiling in a communication system
US8458744B2 (en) 2006-11-07 2013-06-04 Thomson Licensing Method for reducing channel change times and synchronizing audio/video content during channel change
US20110293021A1 (en) * 2010-05-28 2011-12-01 Jayant Kotalwar Prevent audio loss in the spliced content generated by the packet level video splicer
CN102857333B (zh) * 2011-06-28 2015-06-17 富士通株式会社 对来自传感器网络的数据包进行同步的装置和方法
JP6275506B2 (ja) * 2014-02-21 2018-02-07 ルネサスエレクトロニクス株式会社 コンテンツ出力装置
CN108282720B (zh) * 2017-01-05 2020-08-07 北京小鸟听听科技有限公司 一种音频数据流的传输方法及装置
EP3483878A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio decoder supporting a set of different loss concealment tools
EP3483879A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Analysis/synthesis windowing function for modulated lapped transformation
EP3483884A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Signal filtering
WO2019091576A1 (en) * 2017-11-10 2019-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits
EP3483882A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Controlling bandwidth in encoders and/or decoders
EP3483886A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Selecting pitch lag
JP2022107993A (ja) * 2021-01-12 2022-07-25 ヤマハ株式会社 信号処理方法、信号処理装置、および信号処理プログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996008115A1 (en) * 1994-09-07 1996-03-14 Philips Electronics N.V. Mpeg information signal conversion system
WO1999037048A1 (en) * 1998-01-14 1999-07-22 Skystream Corporation Video program bearing transport stream remultiplexer

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5486864A (en) * 1993-05-13 1996-01-23 Rca Thomson Licensing Corporation Differential time code method and apparatus as for a compressed video signal
US5467139A (en) * 1993-09-30 1995-11-14 Thomson Consumer Electronics, Inc. Muting apparatus for a compressed audio/video signal receiver
US5694174A (en) * 1994-10-21 1997-12-02 Nec Corporation Television system capable of synchronizing a receiver with a transmitter by using a reference signal having a varying phase angle
JP3446372B2 (ja) * 1994-11-14 2003-09-16 ソニー株式会社 ディジタルデータ記録/再生装置および方法
US5913031A (en) * 1994-12-02 1999-06-15 U.S. Philips Corporation Encoder system level buffer management
JP3149328B2 (ja) * 1995-01-09 2001-03-26 松下電器産業株式会社 送信装置と受信装置
US5793927A (en) * 1995-06-07 1998-08-11 Hitachi America, Ltd. Methods for monitoring and modifying a trick play data stream to insure MPEG compliance
US5862140A (en) * 1995-11-21 1999-01-19 Imedia Corporation Method and apparatus for multiplexing video programs for improved channel utilization
US6330033B1 (en) * 1995-12-07 2001-12-11 James Carl Cooper Pulse detector for ascertaining the processing delay of a signal
US6836295B1 (en) * 1995-12-07 2004-12-28 J. Carl Cooper Audio to video timing measurement for MPEG type television systems
JPH1051469A (ja) * 1996-08-02 1998-02-20 Nec Corp Atmスイッチ
JP3350365B2 (ja) * 1996-09-11 2002-11-25 株式会社東芝 映像同期信号補正装置
US5793425A (en) * 1996-09-13 1998-08-11 Philips Electronics North America Corporation Method and apparatus for dynamically controlling encoding parameters of multiple encoders in a multiplexed system
US6806909B1 (en) * 1997-03-03 2004-10-19 Koninklijke Philips Electronics N.V. Seamless splicing of MPEG-2 multimedia data streams
US6052384A (en) * 1997-03-21 2000-04-18 Scientific-Atlanta, Inc. Using a receiver model to multiplex variable-rate bit streams having timing constraints
US6101195A (en) * 1997-05-28 2000-08-08 Sarnoff Corporation Timing correction method and apparatus
JP3407287B2 (ja) * 1997-12-22 2003-05-19 日本電気株式会社 符号化復号システム
JP3810918B2 (ja) * 1998-02-23 2006-08-16 株式会社東芝 マルチメディアデータ中継装置及び方法
US6611624B1 (en) * 1998-03-13 2003-08-26 Cisco Systems, Inc. System and method for frame accurate splicing of compressed bitstreams
IL123906A0 (en) * 1998-03-31 1998-10-30 Optibase Ltd Method for synchronizing audio and video streams
DE19822975A1 (de) * 1998-05-25 1999-12-02 Thomson Brandt Gmbh Verfahren und Vorrichtung zum Aufnehmen und Wiedergeben von Video- und/oder Audiosignalen
US6570922B1 (en) * 1998-11-24 2003-05-27 General Instrument Corporation Rate control for an MPEG transcoder without a priori knowledge of picture type
EP1021045A1 (en) * 1999-01-12 2000-07-19 Deutsche Thomson-Brandt Gmbh Method for processing and apparatus for encoding audio or video frame data
US6490250B1 (en) * 1999-03-09 2002-12-03 Conexant Systems, Inc. Elementary stream multiplexer
US6429902B1 (en) * 1999-12-07 2002-08-06 Lsi Logic Corporation Method and apparatus for audio and video end-to-end synchronization

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996008115A1 (en) * 1994-09-07 1996-03-14 Philips Electronics N.V. Mpeg information signal conversion system
WO1999037048A1 (en) * 1998-01-14 1999-07-22 Skystream Corporation Video program bearing transport stream remultiplexer

Also Published As

Publication number Publication date
US6891573B2 (en) 2005-05-10
US20010026327A1 (en) 2001-10-04
EP1139665A1 (en) 2001-10-04
CN1176550C (zh) 2004-11-17
JP2001313630A (ja) 2001-11-09
KR20010093656A (ko) 2001-10-29
ATE470312T1 (de) 2010-06-15
CN1318947A (zh) 2001-10-24
DE60142272D1 (de) 2010-07-15

Similar Documents

Publication Publication Date Title
KR100728245B1 (ko) 오디오 또는 비디오 데이터 인코딩의 출력 지연을변경하는 방법 및 장치
KR100461211B1 (ko) 디지털다용도디스크디바이스와다중채널재생장치간의비-pcm비트스트림을엔코딩,전송및디코딩하기위한방법및디바이스
JP5156110B2 (ja) リアルタイム・マルチチャネル対話型デジタル・オーディオを提供するための方法
US6490250B1 (en) Elementary stream multiplexer
CN102171750B (zh) 用于输送对齐的多通道音频的方法和设备
JP2010154574A (ja) プログラムストリーム変換のためのトランスポートストリーム
KR20040075090A (ko) 오디오 코딩
US6804655B2 (en) Systems and methods for transmitting bursty-asnychronous data over a synchronous link
KR100490403B1 (ko) 오디오 스트림의 버퍼링 제어 방법 및 그 장치
EP1021045A1 (en) Method for processing and apparatus for encoding audio or video frame data
US6487528B1 (en) Method and apparatus for encoding or decoding audio or video frame data
EP1744559A3 (en) Method and device for generating a multiplexed MPEG signal
CN103177725B (zh) 用于输送对齐的多通道音频的方法和设备
CN103474076B (zh) 用于输送对齐的多通道音频的方法和设备
EP1139666B1 (en) Method and apparatus for changing the output delay of audio or video data encoding
JPH09247670A (ja) 情報多重化装置
KR100973835B1 (ko) 디지털 스트림의 프로세싱 방법
WO2003096698A1 (en) Method and/or system for transferring/receiving audio and/or video signals and minimizing delay time over internet networks and relating apparatuses
EP1020997A2 (en) Method for processing and apparatus for encoding audio or video frame data
EP1020998B1 (en) Method and apparatus for encoding audio frame data
JPH09312625A (ja) データ多重化装置およびその方法
US7190693B2 (en) Method, system and apparatuses for transferring audio and/or video signals between synchronous and asynchronous network and for minimizing delay time in such networks
KR100499518B1 (ko) 오디오 립 싱크 제어방법
GB2596107A (en) Managing network jitter for multiple audio streams
KR20020020957A (ko) 인터랙티브 프로세스 시스템

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

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee