KR20010102436A - 데이터 스트림을 변환하는 방법 및 장치 - Google Patents

데이터 스트림을 변환하는 방법 및 장치 Download PDF

Info

Publication number
KR20010102436A
KR20010102436A KR1020017011021A KR20017011021A KR20010102436A KR 20010102436 A KR20010102436 A KR 20010102436A KR 1020017011021 A KR1020017011021 A KR 1020017011021A KR 20017011021 A KR20017011021 A KR 20017011021A KR 20010102436 A KR20010102436 A KR 20010102436A
Authority
KR
South Korea
Prior art keywords
stream
format
data
elementary
program
Prior art date
Application number
KR1020017011021A
Other languages
English (en)
Other versions
KR100733856B1 (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 KR20010102436A publication Critical patent/KR20010102436A/ko
Application granted granted Critical
Publication of KR100733856B1 publication Critical patent/KR100733856B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4147PVR [Personal Video Recorder]
    • 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/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4305Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
    • 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations
    • 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
    • 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
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/806Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components with processing of the sound signal
    • H04N9/8063Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components with processing of the sound signal using time division multiplex of the PCM audio and PCM video signals

Abstract

디지털 비디오 레코더 또는 이와 유사한 장치는, MPEG-2 전송 스트림(TS) 포맷을 갖는 입력 데이터 스트림을 MPEG-2 프로그램 스트림(PS) 포맷을 갖는 출력 데이터 스트림으로 변환하는 방법을 구현한다. 입력 데이터 스트림(TS)은, TS 디코더 모델에 따라 생성되고 다중화된 적어도 제 1 및 제 2 기본 데이터 스트림(404, 406)의 데이터를 포함한다. 제 1 기본 스트림은 비디오 스트림인 반면, 제 2 스트림은 더 낮은 데이터 레이트를 갖는 오디오 스트림이다. 입력 스트림은 파싱되고(402), 기본 스트림들은 각각의 FIFO 큐(404, 406)로 역다중화된다. 각각의 스트림은, (404, 406에 있는) 스트림 데이터에 대한 포인터를 사용하여 (408, 410)에서 별개로 큐에 대기된 타임 스탬프 정보를 얻고 계산하기 위해 더 파싱된다. 입력 스트림(TS)에 있는 기본 스트림에 적용된 스케쥴과 패킷화는 출력 스트림(PS)을 생성하는데 직접 적용될 수 없다. 그러나, MPEG 또는 다른 사양에 의해 입력 스트림에 부과된 파라미터들과 제약들에 근거하여, 재다중화기(412)는, 스크래치로부터 기본 스트림들의 다중화를 위해 필요한 버퍼의 크기가 없어도, 기본 데이터 스트림을 유효한 출력 스트림(TS)으로 재스케쥴링하고 재패킷화할 수 있다.

Description

데이터 스트림을 변환하는 방법 및 장치{METHOD AND APPARATUS FOR CONVERTING DATA STREAMS}
본 발명은, 다중화된 데이터 스트림을 한 개의 다중화된 포맷으로부터 다른 포맷으로 변환하는(트랜스멀티플렉싱(transmultiplexing))하는 방법 및 장치에 관한 것이다. 본 발명은, 예를 들면 비디오 및 오디오 스트림을 MPEG-2 사양(ITU-T 권고안 H.222.0|ISO/IEC 13818-1)에 따라 전송 스트림 포맷으로부터 프로그램 스트림 포맷으로 트랜스멀티플렉싱하는데 있어서 특정한 응용을 모색한다.
전술한 MPEG-2 표준은 멀티미디어 다중화, 동기화 및 타임베이스(timebase) 복원에 대한 총괄적인 방법을 기술한다. 이 사양은, 각각의 기본 비트 스트림(비디오, 오디오, 기타 데이터)이 패킷화된 기본 스트림(Packetised Elementary Stream: PES)으로 분할된 후, 각각의 패킷이 2가지 서로 다른 스트림 형태 중에서 어느 한가지로 다중화되는 패킷 기반의 멀티미디어 다중화를 제공한다. 프로그램 스트림(Program Stream: PS)은 가변 길이의 PES 패킷의 다중화에 해당하며, 디스크 상의 기록과 같이, 에러가 없는 환경에서 사용하도록 설계된다. 전송 스트림(Transport Stream: TS)은 188 바이트의 고정된 길이의 패킷으로 구성되고, 한 개의 프로그램의 다수의 PES 패킷의 다중화 뿐만 아니라, 다중 프로그램 다중화의 기능을 가지며, 방송과 같은 에러가 발생하기 쉬운 환경에서 사용하도록 설계된다. 멀티미디어 동기화 및 타임베이스 복원은, 시스템 타임 클록과 프리젠테이션/디코딩을 위해 타임 스탬프를 사용함으로써 달성된다.
각각의 형태의 스트림이 서로 다른 환경에서 그 자신의 이점과 단점을 갖기 때문에, MPEG-2 사양에서는 이들 2가지 포맷간의 변환이 바람직한 것으로 인정하고 있다. 그러나, 포맷과, 특히 버퍼 크기, 시간 지연, 데이터 레이트 등에 관한 제약을 정의하는 "타겟 디코더" 모델간의 차이로 인해, 서로 다른 기본 스트림들은 한가지 포맷으로 계획될 수 없으며, 다른 포맷으로도 마찬가지이다. 따라서, 한가지 형태의 스트림을 다른 형태로 변환할 때에는 기본 스트림 데이터를 역다중화하고 재다중화(remultiplex)하는 것이 필요하다. 특정한 구조를 랜덤 액세스, 편집 등을 위해 설계된 PS 데이터로 변화시키는 시스템 정보가 일반적으로 TS 방송에는 존재하지 않는 요인도 존재한다.
EP-A-0 833 514(Sony)에는, 기록/재생장치와 프리젠테이션(표시)장치로 구성된 시스템이 제안되어 있다. 이 재생장치는, 예를 들면 디스크에서 PS 포맷을 읽어 그것을 표시하기 위해 TS 포맷으로 변환한다. 이에 반해, 이것의 실시예에 제시된 버퍼 크기가, 유효한 PS를 유효한 TS 포맷으로 변환하기 위해 서로 다른 기본 스트림의 재스케쥴링(rescheduling)을 요구하는 서로 다른 제약을 설명하는 것으로 여겨지지 않는다. 사실상, TS 사양 그 자체에 의해 부과된 제약은, 적어도 1초의 비디오 정보를 위한 버퍼와, 스크래치로부터 스트림을 만들기 위해 필요한 것과 동일한 처리 노력을 요구한다는 것을 밝힐 수 있다. TS에서 PS 포맷으로부터 변환은 EP '514에 기재되어 있지 않다.
결국, 본 발명의 목적은, MPEG 전송 스트림과 프로그램 스트림과 같은 포맷들 사이에서 데이터 스트림을 변환할 때, 계산상의 부담 및/또는 필요한 기억 공간을 줄이는데 있다. 임의의 2가지 포맷간에 다중화된 스트림을 변환할 때에도 유사한 문제가 일반적으로 발생하므로, 본 발명은 MPEG-2 호환 스트림의 엄격한 한계를 넘어 적용될 수 있다는 것이 명백하다.
본 발명자는, 한가지 포맷으로부터 다른 포맷으로 변환하는데에는 재스케쥴링이 불가피하지만, 변환시에 필요한 버퍼링의 크기 및/또는 처리량을 줄이기 위해 소스 포맷에 고유한 제약이 이용될 수 있다는 점을 인식하였다.
본 발명은, 특정한 전송 스트림(TS) 포맷으로 수신된 데이터 스트림을 특정한 프로그램 스트림(PS) 포맷의 출력 데이터 스트림으로 변환하되, TS 포맷은 원하는 프로그램에 관련된 인코딩된 정보의 적어도 제 1 및 제 2 패킷화된 기본 스트림이 복수의 TS 패킷으로 더 패킷화되고 서로 다른 프로그램과 관련된 또 다른 스트림과 함께 다중화된 포맷에 해당하고, PS 포맷은 선택된 프로그램에 일반적으로 관련된 제 1 및 제 2 기본 스트림과 선택적으로 다른 스트림이 패킷화되고, 이들 패킷이 복수의 PS 팩(pack)의 다중화된 스트림을 형성하도록 인터리브되어, 각각의 PS 팩이 한 개의 팩 헤더와 패킷화된 기본 스트림들의 1개 또는 그 이상의 전체 패킷을 포함하게 되는 포맷에 해당하는 변환방법에 있어서,
(a) 수신된 데이터 스트림으로부터, 제 1 및 제 2 기본 스트림의 각각에 대한 현재 스트림 색인을 식별하는 프로그램 매핑 정보를 추출하는 단계와,
(b) 수신된 데이터 스트림의 데이터를 필터링하여 원하는 기본 스트림을 갖는 복수의 패킷을 추출하는 단계와,
(c) 패킷 헤더 정보에 따라 제 1 및 제 2 기본 스트림를 파싱하여(parsing), 각각의 원하는 기본 스트림의 페이로드 내부의 복수의 프리젠테이션 유니트의 시퀀스를 식별하는 단계와,
(d) 재다중화하기 전에, 시퀀스 내부의 각각의 스트림의 프리젠테이션 유니트들을 제 1 및 제 2 페이로드 큐(payload queue)에 기록하는 단계와,
(e) 기본 스트림들 사이의 동기 관계, PS 타겟 디코더 모델 및 PS 스트림 제약에 따라, 제 1 및 제 2 페이로드 큐로부터의 페이로드 데이터를 일련의 PS 팩으로 재다중화하기 위한 유효한 PS 스케쥴을 결정하는 단계와,
(f) 결정된 PS 스케쥴에 따라, 각각의 큐로부터 상기 페이로드 데이터를 복원하고, 복수의 패킷 헤더를 삽입하여 각각의 기본 스트림을 재패킷화하며, PS 패킷 헤더를 발생하고, 제 1 및 제 2 기본 스트림의 패킷들을 일련의 PS 팩으로 다중화하여, 상기 출력신호를 발생하는 단계를 포함하고,
단계 (e)에서 결정된 PS 스케쥴이 수신된 TS 포맷 신호 내부의 프리젠테이션 유니트들의 스케쥴링에 의존하는 것을 특징으로 하는 변환방법을 제공한다.
상기한 방법은,
(g) 수신된 데이터 스트림으로부터 패킷화된 기본 스트림들 내부에 있는 특정한 시점과 연관된 타이밍 기준값을 추출하고, 수신된 TS 포맷 데이터 스트림 내부의 타이밍 기준값을 수반하지 않는 프리젠테이션 유니트들에 대한 보간된 타임 스탬프 값을 포함하는, 각각의 기본 스트림 내부의 각각의 프리젠테이션 유니트에 대한 타임 스탬프 값을 산출하는 단계와,
(h) 제 1 및 제 2 페이로드 큐에 입력된 각각의 프리젠테이션 유니트들과 대응하도록, 제 1 및 제 2 타임 스탬프 큐에 상기 타임 스탬프 값을 기록하는 단계와,
(i) 대응하는 페이로드 데이터를 복원할 때, 큐로부터 각각의 타임 스탬프 값을 복원하는 단계를 더 제공할 수 있다.
또한, 본 발명은, 프리젠테이션 타이밍 기준값이 PS 팩 내부에서 시작하는 새로운 프리젠테이션 유니트에 대한 상기 PS 팩 내부에 포함되고, 상기 프리젠테이션 타이밍은, 수신된 데이터 스트림 내부에 특정한 프리젠테이션 유니트들을 수반하는 TS 전달 타이밍 및 프리젠테이션 타이밍 기준 필드로부터의 계산과, 수신된 TS 포맷 데이터 스트림 내부의 전달 타이밍 기준값을 수반하지 않는 프리젠테이션 유니트에 대한 보간(interpolation)에 의해 얻어지는 방법을 제공할 수 있다.
본 명세서에 개시된 특정한 실시예에 있어서는, 제 1 기본 스트림의 데이터 레이트가 제 2 기본 스트림의 데이터 레이트보다 크다.
본 발명의 특정한 실시예에 있어서는, 단계 (e)에서, 제 1 기본 스트림의 복수의 TS 패킷으로부터의 페이로드 데이터는 상기 데이터 중에서 어느 하나를 PS 스케쥴로 스케쥴링하기 전에 전체 PS 팩을 채우도록 누적된다.
더구나, 상기한 실시예에 있어서, 단계 (e)에서는, 제 2 기본 스트림의 한 개의 전체 프리젠테이션 유니트는, 기본 스트림의 데이터를 대기하지 않고 전체 PS 팩을 채우도록 스케쥴에 넣어질 수 있다.
본 발명의 또 다른 실시예에 있어서는, 단계 (e)에서, 제 1 기본 스트림의데이터가 제 2 기본 스트림의 한 개의 전체 프리젠테이션 유니트를 수신하는데 필요한 최소 시간과 적어도 동일한 지연시간 만큼 제 1 페이로드 큐에서 지연될 수 있는 한편, 제 2 기본 스트림의 프리젠테이션 유니트는 그것이 전부 수신되자마자 스케쥴에 넣어질 수 있다.
본 발명의 실시예에 있어서는, 서로 다른 프리젠테이션 유니트의 데이터 크기 및/또는 서로 다른 데이터 전달 속도는 제 2 기본 스트림에 대한 TS 포맷 내에서 유효한 한편, 최소 시간은 적어도 가장 낮은 속도에서 가장 큰 크기를 갖는 한 개의 전체 프리젠테이션 유니트를 수신하는데 필요한 시간과 동일하게 설정된다.
본 발명의 일 실시예에 있어서, PS 포맷은 디코딩 과정 동안 호환가능한 디코더 내부에 제 1 기본 스트림 페이로드를 유지하지 하기 위한 최소 버퍼 크기를 특정하는 한편, 제 1 페이로드 큐는 최소 버퍼 크기의 1/10보다 작은 최대 용량을 갖는다.
더구나, PS 포맷은 디코딩 과정 동안 호환가능한 디코더 내부에 제 1 기본 스트림 페이로드를 유지하기 위한 최소 버퍼 크기를 특정하는 한편, 제 1 페이로드 큐는 상기 최소 버퍼 크기의 1/20보다 작은 최대 용량을 가질 수 있다.
제 1 페이로드 큐는, 각각의 PS 팩의 크기의 1.5 내지 4배의 최대 용량을 갖가질 수 있다.
타임 스탬프 내부의 각각의 항목은, 디코딩을 거친 후에 대응하는 프리젠테이션 유니트에 대해 수신된 데이터 스트림 내부의 프리젠테이션 유니트의 TS 포맷 전달 시간과 프리젠테이션 유니트에 대한 프리젠테이션 시간을 기록할 수 있으며,동일한 프리젠테이션 유니트를 포함하는 PS 팩은, 팩에 대한 PS 포맷 전달 시간의 표시와 PS 팩 내부의 적어도 한 개의 프리젠테이셔 유니트에 대한 프리젠테이션 시간의 표시를 포함한다.
본 발명의 일 실시예에 있어서, PS 포맷 출력 데이터 스트림 내부에 포함된 타이밍 기준값은, 수신된 TS 포맷 데이터 스트림 전체에 걸쳐 타임 베이스의 변화에 무관하게 한 개의 타임 베이스를 참조하여 계산된다.
본 발명의 특정한 실시예에 있어서, 복수의 PS 팩과 기본 스트림 패킷들은, 수신된 TS 포맷 데이터 스트림 내부의 해당하는 특징부들 사이의 오정렬에 무관하게, 새로운 프리젠테이션 유니트의 시작위치를 PS 팩의 시작 위치와 우선적으로 정렬하도록 발생된다.
본 발명의 특정한 실시예에 있어서, 상기한 PS 포맷 데이터 스트림은, TS 포맷 스트림 내부에서 신호가 공급되고 뒤따르는 프로그램 매핑의 변화에 무관하게, 고정된 프로그램 매핑을 채용하도록 발생된다.
본 발명의 개시된 실시예에 있어서는, 제 1 기본 스트림의 프리젠테이션 유니트는 인코딩된 복수의 비디오 화상을 포함하고, 제 2 기본 스트림의 프리젠테이션 유니트는 인코딩된 복수의 오디오 프레임을 포함한다.
더구나, 본 발명은, 특정한 전송 스트림(TS) 포맷으로 수신된 데이터 스트림을 특정한 프로그램 스트림(PS) 포맷의 출력 데이터 스트림으로 변환하는 변환방법에 있어서, 상기 TS 포맷은 MPEG-2 전송 스트림 사양을 따르는 한편, 상기 PS 포맷은 MPEG-2 프로그램 스트림 사양을 따르며, 이들 사양은 ITU-T 권고안 H.220.0 및ISO/IEC 13818-1에 규정된 것을 특징으로 하는 변환방법을 제공한다.
또한, 본 발명은, 오디오 비디오 프로그램을 기록하는 방법에 있어서, 기록하고자 하는 프로그램이 전송 스트림(TS) 포맷으로 전달된 복수의 프로그램 중에서 선택되고, 전술한 방법에 의해 프로그램 스트림(PS) 포맷으로 변환된 후, 추후의 복원 및 디코딩을 위해 기록매체 상에 기록되는 것을 특징으로 하는 기록방법을 제공한다.
더구나, 본 발명은 특히 전술한 본 발명에 따른 방법들 중에서 어느 하나를 구현하도록 구성된 장치를 제공한다. 이와 같은 장치는, 예를 들어 스탠드얼론형 디코더 장치(셋톱 박스), 프리젠테이션 장치(TV 수상기 등) 또는 기록 및 재생장치(디지털 VCR)의 일부를 구성할 수 있다.
위에서 설명한 것 이외의 본 발명의 다른 특징부와 이점과 본 발명의 다양한 변화 및 변형은, 이하의 특정한 실시예의 설명으로부터 당업자에게 자명할 것이다.
이하, 다음의 첨부도면을 참조하여 본 발명의 실시예를 설명한다.
도 1은 본 발명의 실시예에 적용된 예시적인 디지털 비디오 오락 시스템을 나타낸 것이고,
도 2는 전송 스트림(TS) 포맷으로 데이터의 포맷을 예시한 것이며,
도 3은 프로그램 스트림 포맷으로 데이터의 포맷을 예시한 것이고,
도 4는 본 발명의 일 실시예에 따라, TS 포맷 신호를 PS 포맷으로 변환하는데 있어서 주요 데이터 경로와 기능 블록을 나타낸 것이다.
예시적인 시스템
도 1은, 디지털 TV 튜너(100)와, 디지털 비디오 신호를 디코딩하고 유료 채널 등에 대한 액세스를 제어하는 "셋톱 박스"(102)와, 공지된 광 디스크 비디오 시스템 또는 미래의 DVR 레코더와 같은 디지털 비디오 재생 및 기록장치(104)와, 저장매체 그 자체(디스크(106))를 구비한 예시적인 가정용 디지털 비디오 오락 시스템을 나타낸 것이다. 본 실시예에 있어서, 이와 같은 구성에서, 위성, 케이블 또는 지상파 방송, 또는 디스크(106) 상의 기록물로부터 화상을 표시하기 위해 종래의 아날로그 TV 수상기(108)가 사용된다. 디지털 튜너(100)와 셋톱 박스(12) 사이에는, MPEG 호환 전송 스트림(TS) 포맷 신호가 다수의 디지털 TV 채널을 전달하며, 이들 신호 중에서 일부는 특수한 조건부 액세스(유료 TV) 장치를 사용하여 디코딩하기 위해 스크램블될 수 있다. 예를 들어, DVD, ATSC 및 ARIB와 같은 표준 디지털 방송 포맷이 MPEG-2 전송 스트림 포맷 내부의 특수한 응용에 해당한다.
셋톱 박스(102)도 전송 스트림 TS로부터 원하는 프로그램을 디코딩하여, 아날로그 오디오 및 비디오 신호를 TV 수상기(108)로 출력한다. 이들 아날로그 신호가 종래의 비디오 레코더(VCR)에 의해 기록될 수 있음은 물론이다. 이에 반해, 최대의 품질과 성능을 위해서는, 공지된 광 디스크 비디오 시스템 또는 DVR 레코더(104)와 같은 직접적인 디지털-디지털 레코더가 바람직하다. 이것은,IEEE1394("화이어와이어")와 같은 디지털 인터페이스를 통해 셋톱 박스에 연결된다. 이것은, 선택된 프로그램이 더 큰 TS 다중화로부터 분리되어, 여전히 TS 포맷으로 표시되는 "부분 TS(partial TS)"를 전달한다. 이에 반해, 향상된 디렉토리 구조와 랜덤 액세스 특징을 이용하기 위해서는, 재생장치/기록장치(104)가 TS 포맷을 디스크(106) 상에 기록하기 위해 PS 포맷으로 변환하고, 디지털 인터페이스 및 셋톱 박스(102)를 통해 TV(108) 상에 재생하기 위해 디스크(106) 상에 기록된 PS 포맷 스트림을 부분 TS 포맷으로 변환하도록 구성된다.
본 발명은 주로 전송 스트림(TS) 포맷으로부터 프로그램 스트림(PS) 포맷으로의 변환과정에 관한 것인 반면에, 다른 방향으로의 변환은, 발명의 명칭이 "Method and Apparatus for Converting Data Streams"이고 1999년 12월 30일자 출원된 영국 특허출원 제 9930787.8호의 우선권을 주장하는 동시 계류중인 출원[PHB 34445]의 주제에 해당한다. 이들 포맷간의 효율적인 변환을 위해 적용된 기술내용을 상세히 검토하기 전에, 도 2 및 도 3을 참조하여 이들 2가지 포맷을 더욱 상세히 설명한다.
전송 스트림(TS) 포맷
도 2는 MPEG-2 전송 스트림(TS) 포맷의 주요한 특징부와 구조를 예시한 것이다. 전송 스트림은, 도면에서 T-PKT로 라벨이 붙여지고 그 각각이 188 바이트의 데이터를 포함하며 도면의 상단에 도시된 포맷을 갖는 복수의 전송 패킷으로 구성된 연속적인 스트림에 해당한다. 구문법, 의미론과 적용가능한 제약을 포함하는 MPEG-2 전송 스트림의 전체 상세 내용은 ITU-T 권고안 H.262|ISO/IEC 13818-2에 기재되어 있다. MPEG-2 시스템에 대한 정보는, http://www.mpeg.org에서 온라인으로 입수가능하다. 간략하게 말하면, 각각의 전송 패킷은 헤더 부분과 페이로드 부분을 포함하며, 페이로드 부분은 도면에서 DAT-0 내지 DAT-N으로 표시된다. 헤더는 독특한 동기 바이트 SYNC로 시작하며, 그 뒤에는 전송 에러 지시자 TEI, 페이로드 유니트 시작 지시자 USI, 전송 우선순위 지시자 TPI, 패킷 식별자 PID, 전송 스크램블링 제어 필드 TSC, 적응 필드 제어 AFC와 연속성 카운터 CC를 포함하는 다양한 플래그와 제어 필드가 존재한다. 피드 AFC의 콘텐트에 의존하여, 페이로드 데이터에 다른 방식으로 할당된 공간의 일부를 점유하는 적응 필드 AF가 존재할 수 있다.
DVB 디지털 방송 포맷의 예에서는, TS 스트림의 데이터 레이트가 약 40(Mbits/s)인 한편, 오디오 비디오 프로그램에 대한 통상적인 데이터 레이트는 10 Mbits/s보다 작다. 따라서, 도 2의 TS에 도시된 것과 같이, 다수의 프로그램 PROG1, PROG3가 한 개의 전송 스트림으로 다중화될 수 있다. 각각의 전송 패킷의 필드 PID는 이 패킷이 관련된 적어도 한 개의 기본 스트림을 표시하며, 이들은 전송 패킷들의 유니트에서 다수의 다른 스트림과 인터리브된다. 한 개의 프로그램은, 예를 들면 한 개의 비디오 스트림(이 예에서는 PID='005'), 오디오 스트림(PID='006')과 텔레텍스트 데이터 스트림(PID='007')을 포함할 수 있다. PID 값과 프로그램 사이의 대응과, 각각의 PID를 지닌 데이터의 형태는 프로그램 특정 정보(program specific information: PSI) 테이블의 형태로 유지된다. 전송 스트림 내부에서 주기적으로, 프로그램 관련 테이블(program association table: PAT)이PID=0를 갖는 전송 패킷의 특수한 스트림에 전달된다. 한편, PAT는 PROG1, PROG3 등에 대해, 어떤 스트림이 한 개의 프로그램에 관련된 서로 다른 PID 값을 전부 나열하며 각각의 값들의 콘텐트(비디오, 오디오, 추가적인 언어 오디오 등)를 기술하는 프로그램 매핑 테이블 PMT을 갖는지를 표시한다. 제어 목적을 위한 이들 테이블과 기타 데이터는 본 명세서에서는 시스템 정보로 칭한다.
전송 스트림으로부터 주어진 프로그램(PROG1)을 재생 또는 기록하기 위해, 그 PID를 갖는 연속적인 전송 패킷의 페이로드 DAT-0 내지 DAT-N가 한 개의 스트림으로 연결되고, 이 스트림은 MPEG-2 사양에 추가적으로 규정된 패킷화된 기본 스트림 패킷 PES-PKT을 갖는다. 각각의 PES 패킷은 독특한 패킷 시작 코드 접두어 PSCP로 시작한다. PES 패킷 헤더의 다음에 존재하는 것은, 기본 스트림의 형태(예를 들면, 비디오, 오디오, 패딩(padding) 스트림 또는 개인 스트림)를 식별하는 스트림 식별자 SID이다. PES 패킷은 특정한 응용에서 지정되지 않는 한 고정 길이를 갖지 않으며, PES 패킷 길이 필드 LEN은 PES 패킷 내부의 바이트 수를 특정한다. 그 후에는, 예를 들어, 데이터 정렬 지시자 DAI와 헤더 길이 필드 HLEN을 포함하는 다수의 제어 및 플래그 필드 C&F가 뒤따른다. 다음에, C&F 필드 내부의 관련된 플래그의 값에 의존하여, 다수의 선택적인 필드가 헤더 HDAT 내부에 존재하는데, 예를 들면 시스템 클록을 참조하여 현재의 PES 패킷에서 시작하는 "프리젠테이션 유니트" 화상, 오디오 프레임 등이 표시되어야 하는 시간을 지정하는 프리젠테이션 타임 스탬프 PTS가 존재할 수 있다. 몇몇 경우에는, 프리젠테이션 유니트가 그들의 프리젠테이션 순서와 다른 순서로 디코딩되는데, 이 경우에는 디코딩 타임 스탬프 DTS도존재할 수 있다.
동일한 SID를 갖는 연속적인 PES 패킷의 페이로드 PY-0 내지 PY-N은 도 2에서 ES에 개략적으로 도시된 데이터의 연속적인 기본 스트림을 형성한다. 비디오 기본 스트림 ES-VIDEO의 경우에는, 클립의 다수의 화상 시퀀스 SEQ가 존재하는데, 각각의 화상 시퀀스는 그것의 시작 위치에 시퀀스 헤더 SEQH를 포함한다. 양자화 매트릭스, 버퍼 크기 등을 포함하는 디코더의 다수의 파라미터가 시퀀스 헤더 내부에 지정된다. 따라서, 비디오 스트림의 정확한 재생은, 시퀀스 헤더의 위치에서 디코더를 개시함으로써만 달성될 수 있다. 각 시퀀스에 대한 데이터 내부에는, 그 각각이 화상(응용에 따라 필드 또는 프레임)에 해당하는 비디오 데이터의 1개 또는 그 이상의 "액세스 유니트"가 존재한다. 각각의 화상 앞에는 화상 시작 코드 PSC가 위치한다. 복수의 화상의 그룹 GOP 앞에는 그룹 시작 코드 GSC가 위치하며, 모든 그룹 시작 코드는 특정한 시퀀스 헤더 SEQH 뒤에 놓인다.
공지된 것과 같이, MPEG-2 또는 다른 최근의 디지털 포맷의 화상은 서로를 참조하여 인코딩되어, 시간적인 중복성을 줄인다. 움직임 보상은, 인접한 화상 또는 화상들에 대해 이미 디코딩된 콘텐트로부터 한 개의 화상의 콘텐트에 해당 추정값을 제공한다. 따라서, 화상 그룹 GOP는 다음을 포함할 수 있다: 다른 화상들을 참조하지 않고 코딩된 인트라 코딩된 "I" 프레임과, 앞선 I 프레임에 근거한 움직임 벡터들을 이용하여 코딩된 "P"(predictive) 코딩된 화상들과, 시퀀스 내부의 앞 뒤에 있는 I 및/또는 P 프레임으로부터 예측에 의해 인코딩된 양방향 예측된 "B" 화상들. B 화상에 필요한 데이터 양은 P 화상에 대해 필요한 양보다 작고, 한편이 P 화상에 필요한 양은 I 화상에 대해 필요한 양보다 작다. 반면에, P 및 B 화상은 다른 화상들을 참조해서만 인코딩되기 때문에, 주어진 시퀀스의 재생을 개시하기 위한 실제적인 입구점(entry point)을 제공하는 것은 I 화상들 뿐이다. 더구나, GOP 데이터에 있어서, I 및 P 화상들은 대응하는 B 화상들 이전에 인코딩된 후, 디코딩하기 저에 순서가 재배치되어 정확한 프리젠테이션 순서를 얻게 된다는 점에 주목하기 바란다. 따라서, B와 P 화상들은 프리젠테이션 타임 스탬프 PTS와 디코딩 타임 스탬프 DTS가 다른 예에 해당한다.
마지막으로, 도 2에는 오디오 기본 스트림 ES-AUDIO의 표시가 도시되어 있다. 이것은 프레임 시작 코드를 갖는 단순한 데이터의 프레임 FRM을 포함한다. 샘플 레이드(32 kHz, 48 kHz 등)와 데이터 레이트(예를 들면 초당 32 kbits 또는 가변) 면에서 변화하는 다양한 오디오 포맷이 허용된다. 오디오 및 비디오 스트림의 이들 특성값과 다른 특성값들은 프로그램 특정 정보 PSI와 PES 패킷 헤더 내부에 인코딩된다.
PES 패킷 헤더
동일한 프리젠테이션 타임 스탬프 PTS를 갖는 오디오 프레임들과 비디오 화상들은 디코더의 출력에서 동시에 제공되어야 하는 것이다. 반면에, 서로 다른 기본 스트림으로부터의 데이터의 패킷들의 스케쥴링은 매우 자유로우므로, 동일한 PTS 값을 갖는 오디오 및 비디오 액세스부가 1초 떨어져 전송 스트림 TS에 도착할 수 있다.
프로그램 스트림(PS) 포맷
도 3은 MPEG-2 신호에 대해 지정된 다른 주된 포맷 형태인 프로그램 스트림(PS)을 나타낸 것이다. 도면에 상단에 도시된 것과 같이, PS는 도 2에 도시된 전송 스트림과 동일한 기본 스트림 ES-VIDEO와 ES-AUDIO를 전달하며, 마찬가지로 PES 패킷 PES-PKT의 형태를 갖는다. 프로그램 스트림은 TS와 같이 미세하게 분할 및 패킷화되지 않으며, 일반적으로 한 개의 프리젠테이션을 위해 필요한 스트림만을 갖는다. 전체 PES 패킷 PES-PKT는 한 개 또는 그 이상의 그룹들로 독특한 팩 시작 코드 PSC, 시스템 클록 기준 타임 스탬프 SCR과, 프로그램 스트림 PS가 디코더로 제공되도록 예정될 때의 비트 레이트에 해당하는 program_mux_rate의 표시 PMR을 포함하는 기본 헤더를 갖는 복수의 프로그램 스트림 팩 PACK으로 포장된다. 예를 들어, 공지된 광 디스크 비디오 시스템 사양에서의 program_mux_rate는 10.08 Mbits/s이다. 선택적으로, 프로그램 스트림 팩은 스터핑(stuffing) STF와 시스템 헤더 SYSH를 포함한다. 도 3의 상단에 도시된 것과 같이, 비디오 팩 V 또는 오디오 팩 A1, A2 등이 송신되기 전에, 디코더가 특정한 프로그램의 디코딩을 위해 적절히 설정되도록 하기 위해, 프로그램 스트림은 코딩 및 디코더의 다양한 파라미터, 시퀀스 헤더의 디렉토리와 프로그램 스트림을 갖는 예를 들면 디스크 또는 다른 저장매체 상의 그것의 위치를 특정하는 광범위한 시스템 헤더로 시작한다. PID 코드를 갖는 전송 패킷 구조가 존재하지 않기 때문에, 프로그램 스트림의 PES 패킷 내부의 스트림 식별자 SID는, 주어진 PES 패킷 내부에 존재하는 기본 스트림의 형태와, 필요한 경우에는, 정확한 스트림을 찾아 디코더로 제공될 수 있도록, 그 형태를 갖는 다수의 스트림(오디오 1, 오디오 2 등) 중에서 어떤 것이 전달되는가를 지정한다. 시스템 헤더 SYSH 내부의 시스템 정보는 추가적인 설명을 제공한다.
공지된 광 디스크 비디오 시스템과 같은 응용은, 프로그램 스트림 내부의 각각의 팩이 단지 한 개의 프로그램 스트림의 PES 패킷만을 갖고, 실제로 팩당 한 개의 PES 패킷이 전달되도록 지정한다. 광 디스크 또는 이와 유사한 기록매체 상의 저장의 경우에는, 각각의 PES 팩이 대체로 디스크 파일링 구조의 한 개의 검색 단위 또는 "섹터"에 해당한다. 일반적으로, MPEG-2 표준은 각각의 팩 내부에서 서로 형태 및 개수의 PES 패킷이 혼합될 수 있도록 허용하며, 다른 응용에서는 팩 크기가 변경되도록 허용된다.
시스템 타겟 디코더
실제적인 디코더의 버퍼링과 다른 면이 제공되는 오디오 비디오 프로그램의 단절이 없이 각각의 형태의 스트림을 디코딩할 수 있도록 보장하기 위하여, MPEG-2 표준은 전송 스트림 "시스템 타겟 디코더"(T-STD) 모델과 프로그램 스트림 시스템 타겟 디코더(P-STD) 모델을 지정한다. 대략적으로 말하면, 각각의 시스템 타겟 디코더는, TS 또는 PS 포맷의 서로 다른 기본 스트림을 역다중화하는 수단을 갖고, 데이터의 오디오, 비디오 및 시스템 제어 형태들 각각에 해당 디코더를 가지며, 데이터 채널로부터의 도착과 디코딩 및 프리젠테이션의 실제 시간 사이에 각각의 에너지 스트림의 데이터를 유지하는 디코더와 수신된 스트림 사이에 버퍼를 갖는 가상적인 실제 디코더의 모델에 해당한다.
MPEG-2 사양서에 더욱 상세히 기재되어 있는 것과 같이, T-STD와 P-STD는 전반적인 형태에서는 모두 비슷하다. 그러나, T-STD와 P-STD간의 차이점은, 일반적으로, 전송 스트림은 적어도 PES 패킷의 레벨에서의 재스케쥴링 없이는 프로그램 스트림으로 직접 매핑될 수 없으며, PS로부터 TS 포맷으로의 변환에 대해서도 마찬가지라는 것을 의미한다. 일례로서, TS 포맷에서의 오디오 디코더는 P-STD에서 보다 적은 버퍼를 갖는다. 다른 예로서, T-STD 내부의 각각의 주 버퍼의 앞에는, 전송 스트림 그 자체 내부의 다소 "버스트한(bursty)" 데이터를 부드럽게 하는 역할을 하는 전송 버퍼가 존재한다. 주어진 스트림에 대한 데이터가 초당 40 메가비트의 피크 전송속도에서는 다수의 전송 패킷의 버스트로 도착할 수 있지만, 이와 같은 스트림의 평균 전송속도는 전체 전송 스트림 다중화를 고려할 때 훨씬 낮다. 주 버퍼로 전달된 데이터가 존재하는 것으로 가정하여, 수신된 데이터를 초당 2 메가비트의 전송속도로 감소시키기 위해 전송 버퍼에 대해 "누설 전송속도(leak rate)"가 정의된다.
전송 스트림으로부터 프로그램 스트림으로의 변환
도 4는 도 1의 예시적인 응용에 있어서 레코더(104)에 의한 트랜스멀티플렉싱의 과정을 나타낸 것이다. 디지털 TV 디코더(102)로부터 디지털 인터페이스를 통해 수신된 DVD 표준 MPEG-2 전송 스트팀이 디스크(106) 상에 기록된 공지된 광 디스크 비디오 시스템 프로그램 스트림 포맷으로 변환된다.
트랜스멀티플렉싱의 이유
특정한 현존하는 제안된 디스크 기반의 포맷은 프로그램 스트림 디스크 포맷을 사용한다. 이들 포맷은, MPEG-2가 허용하는 가능한 프로그램 스트림 포맷의 서브집합에 해당한다. 모든 포맷은, 팩들이 단지 한 개의 데이터 형태를 포함하고 디스크 섹터당 한 개의 팩을 갖는 제한된 패킷화 구조를 사용한다. I 화상의 주파수가 규정되고, 특정한 데이터 성분의 정렬을 위한 특정한 요구사항이 존재한다. 이들 제약의 이유는, 다중화와 재생 엔진을 가능한한 단순화하여, 트릭 모드(예를 들면 빠른 전진 및 빠른 후진의 화상 검색)와 랜덤 액세스를 구현하기 더 용이하게 하고 뚜렷한 성능을 갖도록 하기 위한 것이다. WO-A-99/20045에는, 디지털 비디오 레코딩에 있어서 랜덤 액세스와 트랙 재생을 더욱 더 쉽게 하도록 설계된 한가지 형태의 추가적인 정보가 설명되어 있다.
이에 반해, DVB 및 이와 유사한 포맷(ATV, ATSC, B4SB 등)은 모두 전송 스트림에 기반을 둔 것으로, MPEG이 허용하는 가능성의 범위를 거의 서브집합화하지 않는다. 일반적으로, 이들 포맷은 시스템 정보에 대해 여분의 데이터 포맷을 정의함으로써, MPEG 표준에 성능을 추가한다. 이들 각각은 다른 포맷과 약간 차이가 난다. 일반적으로, 한 개의 전송 스트림은 다수의 개별 프로그램들을 갖는다. 한 개의 프로그램 스트림은 일반적으로 단지 한 개의 프로그램을 지닌다.
서로 다른 디스크 포맷의 수를 단지 한 개로 제한하고, 모든 입력신호를 이 포맷으로 변환하면, 기록 생성물을 단순화할 수 있을 것이다. 이와 같은 방식으로,재생장치 소프트웨어와 하드웨어의 양을 최소화하고, 신호들의 출처가 무엇인가에 무관하게 모든 신호가 균일하게 처리(예를 들면, 모든 모드에서 합성, 편집, 재생하는 것 등)될 수 있는 것을 최종 사용자에게 보장하는 것을 더욱 더 용이하게 할 수 있다. 이러한 이유로, 품질의 손실이 없이, 그리고 처리 노력과 저장 공간에 대한 과도한 요구조건이 없이, TS를 PS 포맷으로 변환하기 위한 요청이 있었다.
실제적인 예를 예시하기 위해, DVB 방송으로부터 가상적인 DVR 레코딩 장치로의 기록과정을 고려한다. "VBV"는 MPEG-2 사양에 정의된 비디오 버퍼 검증자의 크기를 표시한다.
DVD 전송 스트림 파라미터
파라미터 크기
MP @ML에 대한 VBV 229376 바이트(1835008 비트) 모든 MPEG-2 응용에 대해 동일하다
STD 비디오 버퍼 크기 VBV 크기 + 2500 + 7500 PES 헤더가 기본 데이터 이외에 버퍼에 입력된다.
전송 레이트 40 Mbits/s
비디오 레이트 18 Mbits/s(1.2x15 Mbits/s) 일반적으로 이 값보다 훨씬 작다(406 Mbits/s)
STD 오디오 버퍼 크기 3584 바이트
오디오 레이트 최대 384 kbit/s MPEG-1 스테레오
DVR 프로그램 스트림 파라미터
파라미터 크기
MP @ML에 대한 VBV 229376 바이트(1835008 비트) 모든 MPEG-2 응용에 대해 동일하다
STD 비디오 버퍼 크기 VBV 크기 + 2500 + 7500 한 개의 기본 데이터가 버퍼에 입력된다.
program_mux_rate 10 Mbits/s
비디오 레이트 10 Mbits/s 일반적으로 이 값보다 훨씬 작다(예를 들면, 6 Mbits/s)
STD 오디오 버퍼 크기 3584 바이트
오디오 레이트 최대 384 kbit/s MPEG-1 스테레오 - 다른 포맷도 지원된다(예를 들면, LPCM)
트랜스멀티플렉싱 장치 및 방법
도 4는 본 실시예에 있어서 TS를 PS로 트랜스멀티플렉싱하기 위한 기본 데이터 구조와 주요 과정을 나타낸 것으로, 입력 데이터 스트림 TS는 좌측에 도시되어 있고, 출력 스트림 PS는 우측에 도시되어 있다.
도 1의 디지털 비디오 레코더(104)는, TS 역다중화기(402), 버퍼 세트(404-410)와, PS 재다중화기(414)를 구비한다. 버퍼 404 및 406은 각각 비디오 및 오디오 페이로드 데이터에 대한 FIFO(first-in-first-out) 큐이다. 큐 버퍼의 크기는 비디오에 대해서는 Bv이고, 오디오에 대해서는 Ba이다. 버퍼 408 및 410은 각각 비디오 및 오디오에 대한 타임스탬프 큐이다. 재다중화기(414)는 비디오 STD(416)와 오디오 STD(418)을 포함하는 시스템 타겟 디코더 모델 STD을 유지한다. 트랜스멀티플렉서들은 그들이 스케쥴링 문제를 해결하는 방법과 그들이 얼마나 많은 중간 버퍼링을 필요로 하는가에 따라 차이가 난다.
트랜스멀티플렉서의 주요 기능 요소와 처리과정을 별개의 블록들로 도시하고 설명하지만, 본 발명에서 설명하는 다수의 버퍼와 처리과정은 재생장치(104) 또는다른 장치의 또 다른 용도로도 사용되는 범용 프로세서와 공유 메모리로 구현될 수 있다는 것은 자명하다. 마찬가지로, 특수한 디지털 신호 처리기 및/또는 전용 하드웨어가 정규 설계 고려사항에 따라 적절한 시점에 사용될 수 있다.
본 명세서에서는, 전송 스트림이 깨끗한 상태로(스크램블되지 않은 상태로) 기록장치의 입력에 존재하거나, 기록장치 내부에서 디스크램블될 수 있는 것으로 가정한다. 이 경우가 아니면, 셋톱 박스에 또는 셋톱 박스로부터 실시간 비트 스트림을 기록 및 재생하기 위한 별개의 모드가 필요하게 된다. 전송 스트림 포맷은 매우 포괄적이기 때문에, 패킷들을 재생하고, 어느 정도까지 출력 스트림에서의 이들 패킷의 전달의 스케쥴을 변경하는 것이 거의 항상 필요하다.
TS 역다중화기(402)
역다중화기(402)의 동작은 다음과 같다(MPEG 용어는 도 2 및 도 3을 참조하여 위에서 설명하였다):
· 전송 스트림을 판독한다 - 패킷들은 일정한(또는, 기본적으로 한 개의 프로그램을 지니 "부분 TS"의 경우에는 불연속적으로 일정하다) 전송속도로 도착한다.
· 전송 패킷 구조를 추적한다 - 동기어를 찾고 검사한다.
· 스트림을 파싱하여 (PID=0인) 프로그램 관련 테이블(PAT)을 만드는 섹션들을 포함하는 패킷들을 찾는다.
· PAT로부터, 각각의 프로그램에 대한 프로그램 맵 테이블(PMT)들을 포함하는 PID들의 세트를 찾는다.
· 관련된 전송 패킷들로부터 PMT를 구축한다.
· 사용자의 입력에 근거하여, PMT들이 검사되어 어떤 PID들이 기록하려는 기본 스트림을 포함하는지와 어떤 것이 이 프로그램에 대한 PCR(program clock reference)을 포함하는지를 찾는다.
· 전송 스트림을 필터링하여, 특정한 PID들을 갖는 전송 패킷들을 재다중화 큐로 전송하고, 나머지는 폐기한다.
· PES 헤더를 벗긴다.
· 기본 스트림들을 파싱하여, 시퀀스 시작 코드와 화상 시작 코드(비디오) 및 프레임 시작 코드(오디오)를 찾는다.
· 시작 코드, 화상 형태 및 위치를 알아내어, 필요한 경우에는 보간법을 사용하여, 각각의 프레임에 대한 타임 스탬프들 PTS/DTS를 생성한다.
· 타임 스탬프들을 처리하여 타임베이스의 불연속을 처리/제거한다(재스탬핑을 한다(restamp)).
· 각각의 액세스 유니트의 시작을 위한 PCR들을 발생한다.
· 기본 데이터를 관련된 큐(404, 406)로 전송한다.
· 타임 스탬프 데이터 FIFO를 해당하는 기본 데이터에 대한 포인터를 포함하여 대응하는 타임 스탬프 큐(408, 410)로 전송한다.
이때, PES 패킷 구조가 파괴되므로, 큐의 내용은 도 2 및 도 3에 도시된 연속적인 기본 스트림 ES과 기본적으로 일치하게 된다는 점에 주목하기 바란다.
PS 재다중화기(414)
재다중화기(414)는 다음과 같은 동작을 반복적으로 수행하여, PS 포맷으로 출력 스트림을 발생한다:
· 출력 스트림 내부에 팩(오디오 또는 비디오)을 다음에 포함시키기 위해 스케쥴링한다. 장치의 크기와 비용을 고려하여, 아래에서 설명하는 것과 같이 이를 위해 다수의 전략이 가능하다. 이 과정 중에 디코더 모델 416 및 418이 끊임없이 갱신된다.
· 팩 헤더를 구축한다(도 3 참조).
· 관련된 타임 스탬프 큐(408, 410)로부터 타임 스탬프를 삽입하는 것을 포함하여, PES 헤더를 구축한다. 정렬 규칙이 이 시점에서 수행된다.
· 관련된 FIFO 큐(404, 406)로부터 데이터를 판독하여 패킷 페이로드 데이터를 구축한다.
· 팩을 출력 채널(본 경우에는 저장매체)에 기록한다.
상기한 2 과정은, 범용 마이크로프로세서 또는 디지털 신호 처리기 칩(DSP)의 하드웨어 및 프로그래밍의 조합으로 구현될 수 있다. 일 실시예에 있어서는 한 개의 프로세서를 사용하여, 도 4에 도시된 트랜스멀티플렉서가 다음과 같은 2개의 처리로서 동작한다: 한 개(402)는 전송 스트림 역다중화, 출력 큐에의 기본 스트림 데이터와 타임 스탬프의 기록을 수행하는 한편, 다른 것(414)은 이들 큐를 판독하여 데이터를 프로그램 스트림으로 재다중화한다.
이 구현예의 다양한 측면을 이하에서 더욱 상세히 설명한다.
시스템 정보 파싱 및 PID 필터링
MPEG-2 전송 스트림 프로그램 사양 정보(PSI)와 이것의 DVB 구현(SI)은 파싱하기가 다소 복잡하다. 전체 다중값(multiplex)을 기록하기보다는 한 개의 프로그램을 기록하기 위해 다중값으로부터 선택을 하는 기록장치는, 디스크 상에 저장된 포맷(PS 또는 TS)에 무관하게 이와 같은 복잡성을 충족시켜야 한다.
각각의 전송 패킷은 그것이 속하는 스트림에 대한 PID 번호를 갖는다. 입력 스트림 TS를 처음으로 수신하면, 역다중화기(402)는 먼저 PID 번호 0에 있는 PSI 선택값들을 필터링하고 파싱하여 프로그램 관련 테이블을 구축해야 한다. PAT는, 프로그램 번호들과, 이 프로그램에 대한 프로그램 맵 테이블(PMT)을 포함하는 PID 번호의 목록을 제공한다. PAT를 수집한 후에는, 각각의 전송 패킷의 수신시에, 그것의 PID 번호를 검사하여 이것이 PAT에 지정된 것인지 여부를 조사하여야 한다. 패킷의 PID는 그것이 선택된 프로그램에 속하는지를 표시하는데, 이 경우에는 그것이 처리되거나, 아니면 폐기되어야 한다.
그것의 PMT 패킷인 경우에는, 파싱되고, PMT 섹션이 그 프로그램에 대한 PMT를 제공하도록 구성되어야 한다. PMT는 각각의 기본 스트림(오디오, 비디오, 오버레이 그래픽 등)에 대한 PID 번호와 스트림 형태의 목록을 제공한다. 더구나, PMT는 어떤 PID 패킷이 이 프로그램에 대한 PCR(program clock reference)을 갖는지를 표시한다. 이와 같은 간접적인 구조는, PID 필터링 과정이 PAT에 대해 모든 전송 패킷의 PID 값을 검사하는 과정을 포함한다는 것을 의미한다. 예를 들면, 각각의기본 스트림을 기술하기 위해, 서술자의 형태를 갖는 추가 정보가 PMT 내부에 삽입될 수도 있다.
PMT와 PAT는 입력 스트림 중에 임의의 시간에 임의의 방법으로 갱신될 수 있다.
타임 스탬프 불연속
전송 스트림 사양은, 프로그램의 타임 베이스(PCR)에 불연속이 존재하는 것을 허용한다. 전송 스트림 내부의 서로 다른 프로그램 각각은 일반적으로 그들 자신의 PCR을 갖는다. 이것을 PS로 변환하는데에는, PTS/DTS와 SCR을 재스탬핑을 하는 것이 필요하다. "순환(wrap-around)" 문제를 피하기 위해 PTS/DTS 값을 제로값의 SCR로부터 시작하도록 다시 베이스를 정하는 것은 좋은 생각이다. 비록, 장치들이 문제를 일으키지 않고 순환을 수용하는 것이 가능하게 제조될 수 있지만, 일부의 포맷은 SCR이 제로값에서 시작하는 것을 요구한다.
전송 스트림 PES 패킷 구조
MPEG-2 전송 스트림은 PES 패킷 구조에 어떠한 요구조건도 부과하지 않는다. 고정된 크기일 필요도 없으며, 비디오 또는 오디오 프레임과 정렬될 필요도 없다. 실제적으로는 수많은 다른 구조가 사용된다. 이에 반해, 프로그램 스트림은 PES 패킷을 인터리브 유니트로 사용한다. 따라서, 트랜스멀티플렉서는 기본 스트림을 패킷을 풀고(depacketise) 재패킷화(repacketise)하도록 준비되어야 한다. 공지된 광디스크 비디오 시스템은, 복수의 패킷이 그 내부에 끼워맞추어진 2048 바이트의 팩 크기를 갖는다.
TS 포맷은 모든 프레임/필드에 대해 PES 패킷을 갖도록 보증하지 않는다. PES 패킷이 존재하는 경우라도, 이것이 PTS/DTS을 갖는다는 것도 명기하지 않는다. 따라서, 전송 파서는 시퀀스, 화상 및 프레임 시작 코드를 찾기 위해 기본 스트림(오디오 및 비디오)을 파싱해야 한다. 오디오는 임의의 비트 레이트이거나 가변일 수 있다. 따라서, 오디오 프레임에 대한 모든 파서가 필요하다.
더구나, 비디오 파서는, 거의 모든 MPEG-2 비디오 포맷이 허용되기 때문에, 화상 형태를 추출하고, 첫 번째 필드 플래그를 반복하며, MPEG-2 비디오 부록 C의 전체 내용을 알 필요가 있다. 이것은, 자기 기록형 제품이 필요로 하는 다중화기 이상에 해당한다는 점에 주목하기 바란다. 자기 기록형 제품에 있어서, 인코더는 전체 MPEG 사양의 알려진 서브집합을 사용할 수 있으므로, 다중화를 단순화할 수 있다.
전체 과정에 걸친 A-V 싱크의 유지
전 과정에 걸쳐 오디오 및 비디오의 동기를 유지하는 것이 중요하다. 전송 스트림에 있어서, 동시에 표시되어야 하는 프레임들은 그들의 타임 스탬프(PTS-DTS)에 의해 식별된다. 동기 오디오 및 비디오 프레임은 일반적으로 비트 스트림에 있어서 멀리 떨어져 있다(스큐되어 있다(skew)). 전송 스트림의 최초의 판독시에, 파싱을 동기시키고 신뢰할 수 있는 정보를 추출하는데 약간의 시간을 필요로 한다.이미 설명한 것과 같이, 다음과 같은 동작이 필요하다:
1. 전송 동기어(도 2의 TS에서의 SYNC)를 찾고 검사한다.
2. PAT와 PMT들을 찾는다.
3. 기본 PID들의 파싱을 시작한다.
4. 비디오: 시퀀스 시작 코드와 I 화상을 기다린다.
5. 오디오: 프레임 싱크를 얻는다(비트 스트림 내부에서 프레임 시작 코드가 유일할 필요가 없으므로, 이것은 다수의 프레임을 취할 수 있다).
이들 단계를 거친 후에만, 역다중화기(402)가 기본 스트림을 출력할 준비가 된다. 이 결과, 기록을 위해 사용하기 위한 첫 번째 오디오 프레임이 기록을 위해 사용하기 위한 첫 번째 비디오 프레임과 동기가 맞추어지지 않게 된다. 따라서, 재다중화 및 기록과정은 이들이 정렬될 수 있도록 각각의 프레임에 대한 타임 스탬프(PTS)를 알 필요가 있다. 원리상, 이와 같은 타이밍 정보는 다수의 다른 방법으로 통신될 수 있다. PES 패킷 헤더를 사용하는 것이 더 간편할 것으로 생각된다. 불행하게도, 전송 스트림은, 기록을 시작할 수 있는 위치의 프레임이 PES 패킷 내부에 타임 스탬프를 갖는다는 보장을 제공하기 않으며, 어떤 경우에도, 전술한 것과 같이 스트림을 재패킷화할 필요가 있다.
본 실시예에서 선정된 해결책은, 각각의 기본 스트림에 대해 별개의 타임 스탬프 큐를 사용하는 것이다. 타임 스탬프 큐는, 기본 스트림 큐에 있는 모든 프레임에 대해, PTS/DTS, 프레임의 관련된 바이트의 전달 시간에 반영된 PCR의 샘플값과, 기본 스트림 큐에 있는 프레임의 첫 번째 바이트에 대한 포인터를 기록한다.모든 PTS, DTS 및 PCR/SCR 값에서 상수를 감산함으로써, 타임베이스가 제로값으로 다시 베이스가 정해진다. 이와 같은 상수는 방송 타임베이스에 있어서의 불연속을 제거하도록 조정된다.
기본 스트림을 파싱하는 것이 필요하다. 오디오의 경우에는, 신뢰할 수 있게 모든 프레임 시작 위치를 식별하는 것이 필요하다(비트 레이트, 샘플링 레이트와 이에 따른 프레임 크기를 사전에 알지 못하는데, 이들은 동적으로 계산되어야만 한다). 비디오의 경우에는, 모든 화상(필드 또는 프레임)의 시작 위치, 화상 코딩 형태, 화상 구조(필드 또는 프레임)와, 반복된 첫 번째 필드와 상단 필드의 첫 번째 플래그의 값과, 이에 따라 이것이 첫 번째 필드인지 두번째 필드인지의 여부를 알 필요가 있다. 이와 같은 정보는, 13818-2에 있는 부록 C의 VBV 모델에 따라 PTS/DTS의 정확한 값을 산출하는데 필요하다.
전송 스트림이 프로그램 스트림의 변환이 없이 직접적으로 기록되어야 하는 경우에도, 이와 같은 거의 모든 파싱 기능이 필요하다. FF/FR 트릭 모드와 랜덤 액세스를 가능하게 하기 위한 인덱싱 정보를 발생하기 위해서는 화상의 시작 위치와 종료 위치를 알 필요가 있다(예를 들면, 전술한 WO-A-99/20045를 참조할 것). 선택적으로, 동기 오디오 프레임을 찾기 위해서는 오디오를 파싱할 필요가 있다. 재생 입구점(시퀀스/GOP 헤더를 갖는 I 화상)이 길고 포맷으로 타임 스탬프가 찍힐 필요가 있을 것으로 생각된다. 방송 포맷은 이들 프레임이 타임 스탬프를 갖도록 보장하지 않는데, 이들을 찾아 타임 스탬프를 삽입할 필요가 있다.
프로그램 스트림에서의 패킷 스케쥴링-SCR 계산
기본 스트림들을 갖는 패킷을 스케쥴링하는 것은 트랜스멀티플렉서에 있어서 가장 어려운 문제이다. 다수의 서로 다른 전략이 가능한데, 이들 각각은 메모리 사용, 복잡성 및 패킹 효율면에서 서로 다른 장단점을 갖는다. 유일한 요구사항은, 결과적으로 얻어진 스트림이 프로그램 스트림 STD 모델을 따르는 것이다.
기록하고자 하는 기본 스트림의 입력 비트 레이트는 그들이 디스크 상에 저장될 수 있을 정도로 충분히 낮아야 한다(기본 스트림 비트 레이트의 합이 program_mux_rate보다 작아야 한다).
고려할 수 잇는 한가지 접근방법은, (비디오 230k의 경우에) 적어도 STD 버퍼만큼 큰 버퍼 사이즈를 갖는 기본 스트림을 저장하는 것이다. 이에 따라, 프로그램 스트림 재다중화기는, 알고리즘이 적합한 것으로 판단했을 때 PS STD 모델이 기본 스트림으로부터 복수의 패킷을 취하는 각각의 스트림에 대해 유지되는 정규 스케쥴링 알고리즘을 실행할 수 있다. 이와 같은 경우에, SCR 값과 패킷 스케쥴링 정책은 TS 내부의 PCR 값에 무관하게 결정된다. 이것은 항상 가능하지만, 상당히 큰 중간 큐(비디오에 대해서는 약 250k)와 다량의 처리 노력을 필요로 한다. 또한, 이것은, 기본적으로는 정규의 PS 다중화기에 필요한 것이기는 하지만, 비교적 복합한 스케쥴링 알고리즘을 필요로 한다.
비디오를 트랜스멀티플렉싱하는 것 뿐만 아니라 (예를 들면, 비디오 레이트를 제어하기 위해) 이 비디오를 트랜스코딩하는 것이 필요한 경우에는, 완전한 재스케쥴링 알고리즘이 적합할 수 있다. 어떤 경우에도 트랜스코딩하기 위한 메모리가 필요할 것이다. 그러나, 그렇지 않은 경우에는, 신호처리 용량과 저장의 사용이 이와 같은 장치를 비교적 고가로 만들고, 병렬로 다른 작업을 수행하기 위해 그것의 능력을 다른 곳으로 돌린다.
본 발명에서 선택된 접근방법의 목표는, 출력 스트림 PS를 발생할 때 가능한한 엄밀하게 원래의 전송 스트림의 스케쥴을 따르는 것이다. 이에 따라, 데이터가 TS 패킷으로부터 추출될 때 가능한 한 빨리 데이터가 프로그램 스트림 내부의 PES 패킷들로 포장된다. 이와 같은 구성은, 재다중화기 내부의 데이터의 지연과, 이에 따라 기본 스트림 큐에서 필요한 버퍼링의 양을 최소화한다. 이와 같은 원리의 구현에 대해서는 더 이상 설명하지 않는다.
전송 스트림 패킷 페이로드는 184 바이트이다(또는, 적응 헤더 AF가 존재하는 경우에는 이 보다 작다 - 도 2 참조). 전송 스트림은 이와 같은 거칠기(granularity)에서 스케쥴링될 수 있다. 그러나, 공지된 광 디스크 비디오 시스템 등에서 프로그램의 페이로드의 정규 크기는 약 2030 바이트이다(도 3 참조). 각각의 패킷 내부에 184 바이트의 프로그램 스트림 PES 패킷을 삽입하는 것은 가능하기는 하지만, 매우 비효율적이다. 더 큰 PS 패킷이 얻어질 수 있을 때까지 TS 패킷의 수를 누적시키는 것이 더 좋다. 이상적으로는, 한 개의 섹터를 완전히 채우는 프로그램 스트림 패킷을 만들 수 있다. 비디오 스트림의 경우에는, 이것이 가능하다.
그러나, 오디오의 경우에는, 이와 다른 접근방식을 선택해야 한다. MPEG-1 오디오 프레임은, 192 바이트(64kbits/s 48kHz)로부터 1728 바이트(384 kbits/s32Hz)로 크기가 변한다. 각각의 오디오 프레임의 최종 바이트는 "제 시간에" 입력 스트림 TS에 의해 디코더로 전달될 수 있는데, 이 경우에는 프레임들이 준비되자마자 다중화되어야 한다. 따라서, 오디오 데이터의 전체 섹터를 전송 스트림에 삽입하기 전에, 이것을 수신할 때까지 대기할 수 없다.
MPEG-2 시스템은 오디오에 o해서는 2 Mbits/s인 전송 버퍼로부터의 "누설 전송속도"를 규정한다. 2 Mbits/s에서 전체 전송 패킷의 184 바이트에 대한 전달 시간은 0.736 ms이다. 가상적인 DVR 프로그램 스트림의 전체 대역폭 program_mux_rate는 10 Mbits/s이다(도 2 참조). "최악의 시나리오"에서는, 전송 스트림에 있는 프레임의 최종 데이터 바이트가 T-STD에서 표시할 수 있게 된 바로 직후에, 최대 크기 프레임(1728 바이트)이 프리젠테이션을 위해 스케쥴링된다. 10 Mbits/s에서 1728 바이트의 전체 프레임을 전송하기 위한 시간은 1.4 ms이다.
본 실시예의 장치는, 오디오 데이터를 다중화하기 전에 전체 프레임을 만들기 위해 재다중화기(414)가 오디오 데이터를 누적하도록 한다. 사양을 위반하지 않고 이것을 달성하기 위해서는, 오디오 프레임 데이터 레이트의 전달을 방해할 가능성을 보상하기 위해 약간의 추가적인 지연(약 1.4 ms 또는 1750 바이트)이 모든 스트림에 추가된다. 스케쥴링 알고리즘에 있어서의 이와 같은 교란은, VBV 버퍼 채워짐에 있어서 약 2k의 증가를 일으킨다. 극단적인 경우에는, 원리상, 이것은 비디오 STD 버퍼 오버플로우를 일으킬 수 있다. 그러나, 실제로는, (i) 다중화 알고리즘에 있어서 약간의 느슨한 부분이 있어야 하고, (ii) 입력과 출력 STD(T-STD/P-STD) 사이에서 STD 버퍼 크기가 약간 다르며, (iii) PS STD 버퍼에 있어서 PES 헤더가 계수되지 않기 때문에, 이것은 실제적인 문제가 되지 않는다.
프로그램 스트림 내부의 SCR 값은, 기본 스트림 내부의 각각의 프레임의 전달 시간에 대한 반영된 PCR 값에 의해 결정된다. 이와 같은 알고리즘은, 각각의 기본 스트림에 대한 섹터 크기(약 4k-5k 바이트)의 약 2배를 갖는 큐 버퍼를 필요로 한다. 모의실험에 따르면, 이 알고리즘은 250k를 사용한 경우와 비교하여 매우 유리하게, 10k의 큐 버퍼 크기를 사용하여 동작가능하거나, 스크래치로부터 완전한 다중화를 위해 필요하다는 것이 확인되었다.

Claims (20)

  1. 특정한 전송 스트림(TS) 포맷으로 수신된 데이터 스트림을 특정한 프로그램 스트림(PS) 포맷의 출력 데이터 스트림으로 변환하되, TS 포맷은 원하는 프로그램에 관련된 인코딩된 정보의 적어도 제 1 및 제 2 패킷화된 기본 스트림이 복수의 TS 패킷으로 더 패킷화되고 서로 다른 프로그램과 관련된 또 다른 스트림과 함께 다중화된 포맷에 해당하고, PS 포맷은 선택된 프로그램에 일반적으로 관련된 제 1 및 제 2 기본 스트림과 선택적으로 다른 스트림이 패킷화되고, 이들 패킷이 복수의 PS 팩의 다중화된 스트림을 형성하도록 인터리브되어, 각각의 PS 팩이 한 개의 팩 헤더와 패킷화된 기본 스트림들의 1개 또는 그 이상의 전체 패킷을 포함하게 되는 포맷에 해당하는 변환방법에 있어서,
    (a) 수신된 데이터 스트림으로부터, 제 1 및 제 2 기본 스트림의 각각에 대한 현재 스트림 색인을 식별하는 프로그램 매핑 정보를 추출하는 단계와,
    (b) 수신된 데이터 스트림의 데이터를 필터링하여 원하는 기본 스트림을 갖는 복수의 패킷을 추출하는 단계와,
    (c) 패킷 헤더 정보에 따라 제 1 및 제 2 기본 스트림를 파싱하여, 각각의 원하는 기본 스트림의 페이로드 내부의 복수의 프리젠테이션 유니트의 시퀀스를 식별하는 단계와,
    (d) 재다중화하기 전에, 시퀀스 내부의 각각의 스트림의 프리젠테이션 유니트들을 제 1 및 제 2 페이로드 큐에 기록하는 단계와,
    (e) 기본 스트림들 사이의 동기 관계, PS 타겟 디코더 모델 및 PS 스트림 제약에 따라, 제 1 및 제 2 페이로드 큐로부터의 페이로드 데이터를 일련의 PS 팩으로 재다중화하기 위한 유효한 PS 스케쥴을 결정하는 단계와,
    (f) 결정된 PS 스케쥴에 따라, 각각의 큐로부터 상기 페이로드 데이터를 복원하고, 복수의 패킷 헤더를 삽입하여 각각의 기본 스트림을 재패킷화하며, PS 패킷 헤더를 발생하고, 제 1 및 제 2 기본 스트림의 패킷들을 일련의 PS 팩으로 다중화하여, 상기 출력신호를 발생하는 단계를 포함하고,
    단계 (e)에서 결정된 PS 스케쥴이 수신된 TS 포맷 신호 내부의 프리젠테이션 유니트들의 스케쥴링에 의존하는 것을 특징으로 하는 변환방법.
  2. 제 1항에 있어서,
    (g) 수신된 데이터 스트림으로부터 패킷화된 기본 스트림들 내부에 있는 특정한 시점과 연관된 타이밍 기준값을 추출하고, 수신된 TS 포맷 데이터 스트림 내부의 타이밍 기준값을 수반하지 않는 프리젠테이션 유니트들에 대한 보간된 타임 스탬프 값을 포함하는, 각각의 기본 스트림 내부의 각각의 프리젠테이션 유니트에 대한 타임 스탬프 값을 산출하는 단계와,
    (h) 제 1 및 제 2 페이로드 큐에 입력된 각각의 프리젠테이션 유니트들과 대응하도록, 제 1 및 제 2 타임 스탬프 큐에 상기 타임 스탬프 값을 기록하는 단계와,
    (i) 대응하는 페이로드 데이터를 복원할 때, 큐로부터 각각의 타임 스탬프 값을 복원하는 단계를 더 포함하는 것을 특징으로 하는 변환방법.
  3. 제 1항 또는 제 2항에 있어서,
    프리젠테이션 타이밍 기준값이 PS 팩 내부에서 시작하는 새로운 프리젠테이션 유니트에 대한 상기 PS 팩 내부에 포함되고, 상기 프리젠테이션 타이밍은, 수신된 데이터 스트림 내부에 특정한 프리젠테이션 유니트들을 수반하는 TS 전달 타이밍 및 프리젠테이션 타이밍 기준 필드로부터의 계산과, 수신된 TS 포맷 데이터 스트림 내부의 전달 타이밍 기준값을 수반하지 않는 프리젠테이션 유니트에 대한 보간에 의해 얻어지는 것을 특징으로 하는 변환방법.
  4. 제 3항에 있어서,
    제 1 기본 스트림의 데이터 레이트가 제 2 기본 스트림의 데이터 레이트보다 큰 것을 특징으로 하는 변환방법.
  5. 제 3항 또는 제 4항에 있어서,
    단계 (e)에서, 제 1 기본 스트림의 복수의 TS 패킷으로부터의 페이로드 데이터는 상기 데이터 중에서 어느 하나를 PS 스케쥴로 스케쥴링하기 전에 전체 PS 팩을 채우도록 누적되는 것을 특징으로 하는 변환방법.
  6. 제 5항에 있어서,
    단계 (e)에서는, 제 2 기본 스트림의 한 개의 전체 프리젠테이션 유니트는, 기본 스트림의 데이터를 대기하지 않고 전체 PS 팩을 채우도록 스케쥴에 넣어지는 것을 특징으로 하는 변환방법.
  7. 제 6항에 있어서,
    단계 (e)에서, 제 1 기본 스트림의 데이터가 제 2 기본 스트림의 한 개의 전체 프리젠테이션 유니트를 수신하는데 필요한 최소 시간과 적어도 동일한 지연시간 만큼 제 1 페이로드 큐에서 지연되는 한편, 제 2 기본 스트림의 프리젠테이션 유니트는 그것이 전부 수신되자마자 스케쥴에 넣어지는 것을 특징으로 하는 변환방법.
  8. 제 7항에 있어서,
    서로 다른 프리젠테이션 유니트의 데이터 크기 및 서로 다른 데이터 전달 속도는 제 2 기본 스트림에 대한 TS 포맷 내에서 유효한 한편, 상기 최소 시간은 적어도 가장 낮은 속도에서 가장 큰 크기를 갖는 한 개의 전체 프리젠테이션 유니트를 수신하는데 필요한 시간과 동일하게 설정되는 것을 특징으로 하는 변환방법.
  9. 선행하는 청구항 중 어느 한 항에 있어서,
    PS 포맷은 디코딩 과정 동안 호환가능한 디코더 내부에 제 1 기본 스트림 페이로드를 유지하지 하기 위한 최소 버퍼 크기를 특정하는 한편, 제 1 페이로드 큐는 상기 최소 버퍼 크기의 1/10보다 작은 최대 용량을 갖는 것을 특징으로 하는 변환방법.
  10. 선행하는 청구항 중 어느 한 항에 있어서,
    PS 포맷은 디코딩 과정 동안 호환가능한 디코더 내부에 제 1 기본 스트림 페이로드를 유지하기 위한 최소 버퍼 크기를 특정하는 한편, 제 1 페이로드 큐는 상기 최소 버퍼 크기의 1/20보다 작은 최대 용량을 갖는 것을 변환방법.
  11. 선행하는 청구항 중 어느 한 항에 있어서,
    제 1 페이로드 큐는, 각각의 PS 팩의 크기의 1.5 내지 4배의 최대 용량을 갖는 것을 특징으로 하는 변환방법.
  12. 선행하는 청구항 중 어느 한 항에 있어서,
    타임 스탬프 내부의 각각의 항목은, 디코딩을 거친 후에 대응하는 프리젠테이션 유니트에 대해 수신된 데이터 스트림 내부의 프리젠테이션 유니트의 TS 포맷 전달 시간과 프리젠테이션 유니트에 대한 프리젠테이션 시간을 기록하며, 동일한 프리젠테이션 유니트를 포함하는 PS 팩은, 팩에 대한 PS 포맷 전달 시간의 표시와 PS 팩 내부의 적어도 한 개의 프리젠테이션 유니트에 대한 프리젠테이션 시간의 표시를 포함하는 것을 특징으로 하는 변환방법.
  13. 선행하는 청구항 중 어느 한 항에 있어서,
    PS 포맷 출력 데이터 스트림 내부에 포함된 타이밍 기준값은, 수신된 TS 포맷 데이터 스트림 전체에 걸쳐 타임 베이스의 변화에 무관하게 한 개의 타임 베이스를 참조하여 계산되는 것을 특징으로 하는 변환방법.
  14. 선행하는 청구항 중 어느 한 항에 있어서,
    상기 복수의 PS 팩과 기본 스트림 패킷들은, 수신된 TS 포맷 데이터 스트림 내부의 해당하는 특징부들 사이의 오정렬에 무관하게, 새로운 프리젠테이션 유니트의 시작위치를 PS 팩의 시작 위치와 우선적으로 정렬하도록 발생되는 것을 특징으로 하는 변환방법.
  15. 선행하는 청구항 중 어느 한 항에 있어서,
    상기 PS 포맷 데이터 스트림은, TS 포맷 스트림 내부에서 신호가 공급되고 뒤따르는 프로그램 매핑의 변화에 무관하게, 고정된 프로그램 매핑을 채용하도록 발생되는 것을 특징으로 하는 변환방법.
  16. 선행하는 청구항 중 어느 한 항에 있어서,
    제 1 기본 스트림의 프리젠테이션 유니트는 인코딩된 복수의 비디오 화상을 포함하고, 제 2 기본 스트림의 프리젠테이션 유니트는 인코딩된 복수의 오디오 프레임을 포함하는 것을 특징으로 하는 변환방법.
  17. 선행하는 청구항 중 어느 한 항에 있어서,
    상기 TS 포맷은 MPEG-2 전송 스트림 사양을 따르는 한편, 상기 PS 포맷은 MPEG-2 프로그램 스트림 사양을 따르며, 이들 사양은 ITU-T 권고안 H.220.0 및 ISO/IEC 13818-1에 규정된 것을 특징으로 하는 변환방법.
  18. 오디오 비디오 프로그램을 기록하는 방법에 있어서,
    기록하고자 하는 프로그램이 전송 스트림(TS) 포맷으로 전달된 복수의 프로그램 중에서 선택되고, 선행하는 청구항 중 어느 한 항에 기재된 방법에 의해 프로그램 스트림(PS) 포맷으로 변환된 후, 추후의 복원 및 디코딩을 위해 기록매체 상에 기록되는 것을 특징으로 하는 기록방법.
  19. 데이터의 적어도 2개의 기본 스트림이 다중화되는 제 1 포맷으로 입력 데이터 스트림을 수신하는 수단과, 이 데이터를 제 2 포맷으로 변환하여 출력 스트림을 발생하는 변환수단을 구비한 장치에 있어서, 상기 변환수단은 선행하는 청구항 중 어느 한 항에 기재된 방법을 구현하도록 구성된 것을 특징으로 하는 장치.
  20. 제 19항에 있어서,
    상기 장치는, 디지털 비디오 프로그램을 위한 스탠드얼론형 디코더 장치와, 비디오 프로그램에 대한 디스플레이를 갖는 프리젠테이션 장치와, 디지털 비디오 프로그램을 재생하고 기록하기 위한 재생장치 중에서 어느 하나를 구비한 것을 특징으로 하는 장치.
KR1020017011021A 1999-12-30 2000-12-04 데이터 스트림을 변환하는 방법 및 장치 KR100733856B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB9930788.6A GB9930788D0 (en) 1999-12-30 1999-12-30 Method and apparatus for converting data streams
GB9930788.6 1999-12-30

Publications (2)

Publication Number Publication Date
KR20010102436A true KR20010102436A (ko) 2001-11-15
KR100733856B1 KR100733856B1 (ko) 2007-06-29

Family

ID=10867141

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020017011021A KR100733856B1 (ko) 1999-12-30 2000-12-04 데이터 스트림을 변환하는 방법 및 장치

Country Status (9)

Country Link
US (1) US6873629B2 (ko)
EP (1) EP1180309A1 (ko)
JP (1) JP4731083B2 (ko)
KR (1) KR100733856B1 (ko)
CN (1) CN1199475C (ko)
GB (1) GB9930788D0 (ko)
IL (2) IL145121A0 (ko)
TW (1) TW548925B (ko)
WO (1) WO2001050773A1 (ko)

Families Citing this family (122)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE47908E1 (en) 1991-12-23 2020-03-17 Blanding Hovenweep, Llc Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
US6850252B1 (en) 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
USRE48056E1 (en) 1991-12-23 2020-06-16 Blanding Hovenweep, Llc Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
US5903454A (en) 1991-12-23 1999-05-11 Hoffberg; Linda Irene Human-factored interface corporating adaptive pattern recognition based controller apparatus
USRE46310E1 (en) 1991-12-23 2017-02-14 Blanding Hovenweep, Llc Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
US7088725B1 (en) * 1999-06-30 2006-08-08 Sony Corporation Method and apparatus for transcoding, and medium
JP4659331B2 (ja) * 2000-07-17 2011-03-30 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ データストリームの符号化
US7224837B2 (en) * 2000-10-11 2007-05-29 Screenpeaks Ltd. Digital video broadcasting
GB0116119D0 (en) * 2001-06-30 2001-08-22 Koninkl Philips Electronics Nv Transcoding of video data streams
KR100895559B1 (ko) * 2001-07-23 2009-04-29 파나소닉 주식회사 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및방법
CN101477821B (zh) * 2001-07-23 2012-09-26 松下电器产业株式会社 将信息记录到信息记录介质的装置及方法
US20030044166A1 (en) * 2001-08-31 2003-03-06 Stmicroelectronics, Inc. System for multiplexing video data streams in a digital video recorder and method of operating the same
US20030048808A1 (en) * 2001-09-12 2003-03-13 Stahl Thomas Anthony Method and apparatus for changing received streaming content channels
DE10146036B4 (de) * 2001-09-18 2012-07-26 Robert Bosch Gmbh Verfahren zur Umwandlung eines Video-und /oder Audio-Datenstromes
US7646816B2 (en) * 2001-09-19 2010-01-12 Microsoft Corporation Generalized reference decoder for image or video processing
JP3825682B2 (ja) * 2001-11-09 2006-09-27 株式会社東芝 フォーマット変換を行う情報記録装置及び情報処理装置
US7120168B2 (en) * 2001-11-20 2006-10-10 Sony Corporation System and method for effectively performing an audio/video synchronization procedure
US6868125B2 (en) * 2001-11-29 2005-03-15 Thomson Licensing S.A. Transport stream to program stream conversion
CA2439048C (en) * 2001-11-30 2011-10-04 Matsushita Electric Industrial Co., Ltd. A method and an apparatus for stream conversion, a method and an apparatus for data recording, and data recording medium
US7373079B2 (en) * 2001-11-30 2008-05-13 Matsushita Electric Industrial Co., Ltd. Method and an apparatus for stream conversion, a method and an apparatus for data recording, and data recording medium
US7149247B2 (en) * 2002-01-22 2006-12-12 Microsoft Corporation Methods and systems for encoding and decoding video data to enable random access and splicing
DE60311231T2 (de) * 2002-01-22 2007-11-15 Microsoft Corp., Redmond Verfahren zum ermöglichen von direktzugriff und spleissen in einem verschlüsselten videostrom
WO2003075574A1 (en) 2002-03-05 2003-09-12 Koninklijke Philips Electronics N.V. Method and arrangement for converting a first data stream into a second data stream
CN100471267C (zh) * 2002-03-08 2009-03-18 法国电信公司 从属数据流传输方法
KR100848904B1 (ko) * 2002-03-27 2008-07-29 주식회사 엘지이아이 오디오 및 비디오 립싱크를 위한 실시간 pes 디코딩 방법
WO2003090470A2 (en) * 2002-04-19 2003-10-30 Microsoft Corporation Methods and systems for preventing start code emulation at non-byte aligned and/or bit-shifted locations
US7334065B1 (en) * 2002-05-30 2008-02-19 Cisco Technology, Inc. Multiple data bus synchronization
US7933411B2 (en) 2002-06-28 2011-04-26 Trident Microsystems (Far East) Ltd. Method of constructing MPEG program streams from encrypted MPEG transport streams
JP4566745B2 (ja) * 2002-09-30 2010-10-20 パナソニック株式会社 データ処理装置
CN100428791C (zh) * 2002-11-27 2008-10-22 腾研科技股份有限公司 Mpeg数据格式转换方法及使用该方法的解码系统
KR20050094838A (ko) * 2003-01-09 2005-09-28 톰슨 라이센싱 에스.에이. Mpeg 전송 스트림을 wlan 브로드캐스트용 ip패킷으로 매핑하는 방법 및 장치
JPWO2004080071A1 (ja) * 2003-03-06 2006-06-08 松下電器産業株式会社 データ処理装置
US20040199719A1 (en) * 2003-04-04 2004-10-07 Network Appliance, Inc. Standalone newtork storage system enclosure including head and multiple disk drives connected to a passive backplane
US8094994B2 (en) * 2003-04-10 2012-01-10 Panasonic Corporation Information recording medium, and apparatus and method for recording information to information recording medium
JP4902935B2 (ja) * 2003-05-08 2012-03-21 ソニー株式会社 情報処理装置、情報処理方法、プログラム、及び記録媒体
DE10323186B4 (de) * 2003-05-22 2006-03-02 Fujitsu Siemens Computers Gmbh Einrichtungen zur Verarbeitung eines MPEG-2-Datenstroms und Verfahren zur Verarbeitung eines MPEG-2 Datenstroms
US7380028B2 (en) * 2003-06-13 2008-05-27 Microsoft Corporation Robust delivery of video data
JP4346966B2 (ja) * 2003-06-13 2009-10-21 キヤノン株式会社 撮像装置
US7349395B2 (en) * 2003-06-23 2008-03-25 Microsoft Corporation System, method, and computer program product for parsing packetized, multi-program transport stream
US7882510B2 (en) * 2003-08-06 2011-02-01 Microsoft Corporation Demultiplexer application programming interface
EP1665264B1 (en) * 2003-09-04 2012-06-20 Koninklijke Philips Electronics N.V. Record carrier carrying a video signal, at least one additional information signal and scheduling information
US8345754B2 (en) * 2003-09-07 2013-01-01 Microsoft Corporation Signaling buffer fullness
US8107531B2 (en) * 2003-09-07 2012-01-31 Microsoft Corporation Signaling and repeat padding for skip frames
US7609762B2 (en) * 2003-09-07 2009-10-27 Microsoft Corporation Signaling for entry point frames with predicted first field
US7852919B2 (en) * 2003-09-07 2010-12-14 Microsoft Corporation Field start code for entry point frames with predicted first field
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7961786B2 (en) * 2003-09-07 2011-06-14 Microsoft Corporation Signaling field type information
US8582659B2 (en) 2003-09-07 2013-11-12 Microsoft Corporation Determining a decoding time stamp from buffer fullness
US8213779B2 (en) * 2003-09-07 2012-07-03 Microsoft Corporation Trick mode elementary stream and receiver system
US7924921B2 (en) * 2003-09-07 2011-04-12 Microsoft Corporation Signaling coding and display options in entry point headers
US7839930B2 (en) * 2003-11-13 2010-11-23 Microsoft Corporation Signaling valid entry points in a video stream
KR101029807B1 (ko) * 2004-01-09 2011-04-22 엘지전자 주식회사 Pvr 및 pvr 기능을 갖는 dmb 수신기
US7865255B2 (en) 2004-03-31 2011-01-04 Mstar Semiconductor, Inc. Audio buffering system and method of buffering audio in a multimedia receiver
CN100571361C (zh) * 2004-04-07 2009-12-16 松下电器产业株式会社 记录可以高速转换的流的信息记录装置和记录方法
CN101583007B (zh) * 2004-04-07 2010-12-08 松下电器产业株式会社 记录可以高速转换的流的信息记录装置和记录方法
US8059943B2 (en) * 2004-04-07 2011-11-15 Panasonic Corporation Information recording medium wherein stream convertible at high-speed is recorded, and recording apparatus and recording method therefor
EP1771976A4 (en) * 2004-07-22 2011-03-23 Korea Electronics Telecomm SAF SYNCHRONIZATION LAYER PACKAGE STRUCTURE AND SERVER SYSTEM THEREFOR
WO2006030974A1 (ja) * 2004-09-16 2006-03-23 Matsushita Electric Industrial Co., Ltd. デジタル放送受信端末
US7464171B2 (en) * 2004-10-01 2008-12-09 Microsoft Corporation Effective protection of computer data traffic in constrained resource scenarios
US7774494B2 (en) * 2004-10-07 2010-08-10 Thomson Licensing Audio/video router
JP4661373B2 (ja) * 2004-10-15 2011-03-30 Kddi株式会社 特定メディアデータの破棄を制御する送信装置及び送信プログラム
KR100662867B1 (ko) 2004-11-09 2007-01-02 삼성전자주식회사 아날로그 오디오의 디지털 변환장치
US20060104356A1 (en) * 2004-11-15 2006-05-18 Microsoft Corporation Timing for decoder buffer examination
US8270901B2 (en) * 2004-12-17 2012-09-18 Martin E. Hellman Dropout-resistant media broadcasting system
US8627354B2 (en) 2004-12-17 2014-01-07 Martin E. Hellman Tiered subscription broadcast system
US20060168291A1 (en) * 2005-01-05 2006-07-27 Van Zoest Alexander Interactive multichannel data distribution system
US7742687B2 (en) 2005-03-22 2010-06-22 Mediatek Inc. Digital television recorders and stream format conversion and methods thereof
JP4882269B2 (ja) * 2005-04-22 2012-02-22 ソニー株式会社 多重化装置および多重化方法、プログラム、並びに記録媒体
RU2407214C2 (ru) * 2005-04-26 2010-12-20 Конинклейке Филипс Электроникс Н.В. Устройство и способ обработки потока данных, имеющего последовательность пакетов и информацию синхронизации, относящуюся к пакетам
EP1882343B1 (en) * 2005-05-13 2019-05-01 Qualcomm Incorporated Improving error resilience using out of band directory information
US8842666B2 (en) * 2005-05-13 2014-09-23 Qualcomm Incorporated Methods and apparatus for packetization of content for transmission over a network
US20060280433A1 (en) * 2005-06-14 2006-12-14 Cain David C Distributed media recording module system processes
US7840178B2 (en) * 2005-07-12 2010-11-23 Martin E. Hellman FM broadcast system competitive with satellite radio
KR100698277B1 (ko) * 2005-07-15 2007-03-22 엘지전자 주식회사 영상표시장치 및 이를 이용한 방송신호 재생 방법
CN100391249C (zh) * 2005-09-28 2008-05-28 西安通视数据有限责任公司 一种数字视频广播转换方法及其装置
KR100929073B1 (ko) 2005-10-14 2009-11-30 삼성전자주식회사 휴대 방송 시스템에서 다중 스트림 수신 장치 및 방법
US7809018B2 (en) * 2005-12-16 2010-10-05 Coding Technologies Ab Apparatus for generating and interpreting a data stream with segments having specified entry points
DE602006006346D1 (de) * 2005-12-16 2009-05-28 Dolby Sweden Ab Vorrichtung zum erzeugen und interpretieren eines datenstroms mit einer reihe von segmenten unter verwendung von daten in nachfolgenden datenrahmen
KR100788685B1 (ko) * 2006-03-10 2007-12-26 삼성전자주식회사 데이터 스트림 포맷의 변환 방법 및 장치, 이를 이용한데이터 스트림 기록 방법 및 장치
US20080037956A1 (en) * 2006-06-30 2008-02-14 Scientific-Atlanta, Inc. Systems and Methods of Generating Encapsulated MPEG Program Streams
US9100702B2 (en) 2006-09-11 2015-08-04 Tivo Inc. Personal content distribution network
CN101179737B (zh) * 2006-11-08 2010-12-08 中兴通讯股份有限公司 一种多媒体广播网络中复用协议的转换方法
CN101179736B (zh) * 2006-11-08 2010-07-14 中兴通讯股份有限公司 一种传输流节目转换成中国移动多媒体广播节目的方法
CN101179738B (zh) * 2006-11-08 2010-12-01 中兴通讯股份有限公司 一种传输流到中国移动多媒体广播复用协议的转换方法
US7733921B2 (en) * 2007-05-08 2010-06-08 Zenith Electronics Llc Packet jitter mitigation for bursty transmission systems
US8171166B1 (en) * 2007-06-24 2012-05-01 Arris Group, Inc. Method and a computer program product for modifying or generating a multiple program transport stream
CN100544447C (zh) * 2007-07-11 2009-09-23 中兴通讯股份有限公司 一种移动多媒体广播业务数据流的传输方法
US8331459B2 (en) * 2007-09-26 2012-12-11 Intel Corporation Method and apparatus for smooth digital media playback
DE102008014981B4 (de) * 2008-03-19 2013-11-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Erzeugen eines Datenstroms basierend auf mit Paketfolgemarkierungen versehenen Datenpaketen und Satellitenempfänger zum Bereitstellen des Datenstroms
JP4702402B2 (ja) * 2008-06-05 2011-06-15 ソニー株式会社 信号送信装置、信号送信方法、信号受信装置及び信号受信方法
US8359612B2 (en) 2008-08-13 2013-01-22 Tivo Inc. Content distribution system using transportable memory devices
US8325764B2 (en) * 2009-02-24 2012-12-04 Verivue, Inc. Canonical scheduling for heterogeneous content delivery
US8719437B1 (en) * 2009-08-13 2014-05-06 Avvasi Inc. Enabling streaming to a media player without native streaming support
ATE540529T1 (de) * 2009-11-03 2012-01-15 Tektronix Int Sales Gmbh Verfahren und vorrichtung zum messen der verzögerung innerhalb eines komprimierten digitalen stroms
US8514853B2 (en) * 2010-01-11 2013-08-20 Cisco Technology, Inc. Remote re-multiplexing of transport streams
KR20120011791A (ko) * 2010-07-21 2012-02-08 한국전자통신연구원 통신 시스템에서 데이터 수신 장치 및 방법
KR101180540B1 (ko) * 2010-10-20 2012-09-06 연세대학교 산학협력단 스트리밍 서비스 송/수신 장치 및 방법
US9037743B2 (en) 2010-10-28 2015-05-19 Avvasi Inc. Methods and apparatus for providing a presentation quality signal
US9191284B2 (en) 2010-10-28 2015-11-17 Avvasi Inc. Methods and apparatus for providing a media stream quality signal
US9042449B2 (en) 2011-09-29 2015-05-26 Avvasi Inc. Systems and methods for dynamic transcoding of indexed media file formats
US9118738B2 (en) 2011-09-29 2015-08-25 Avvasi Inc. Systems and methods for controlling access to a media stream
US9438494B2 (en) 2011-12-28 2016-09-06 Avvasi Inc. Apparatus and methods for optimizing network data transmission
TWI508569B (zh) 2012-09-14 2015-11-11 Realtek Semiconductor Corp 行動高畫質連結資料轉換器以及行動高畫質連結資料轉換方法
CN103686035B (zh) * 2012-09-21 2018-12-07 瑞昱半导体股份有限公司 移动高清连接数据转换器以及移动高清连接数据转换方法
US9794375B2 (en) * 2013-03-14 2017-10-17 Openwave Mobility, Inc. Method, apparatus, and non-transitory computer medium for obtaining a required frame size for a compressed data frame
US9729919B2 (en) * 2013-06-13 2017-08-08 Microsoft Technology Licensing, Llc Remultiplexing bitstreams of encoded video for video playback
EP3035691A3 (en) * 2014-12-17 2016-08-24 Thomson Licensing Methods and apparatus for minimizing timing artifacts in remultiplexing
JP6986671B2 (ja) * 2015-10-07 2021-12-22 パナソニックIpマネジメント株式会社 受信装置及び受信方法
GB201519090D0 (en) * 2015-10-28 2015-12-09 Microsoft Technology Licensing Llc Multiplexing data
GB2547442B (en) * 2016-02-17 2022-01-12 V Nova Int Ltd Physical adapter, signal processing equipment, methods and computer programs
US10271069B2 (en) 2016-08-31 2019-04-23 Microsoft Technology Licensing, Llc Selective use of start code emulation prevention
CN108093292B (zh) 2016-11-21 2020-09-11 阿里巴巴集团控股有限公司 用于管理缓存的方法、装置及系统
RU2762400C1 (ru) * 2018-02-22 2021-12-21 Долби Интернешнл Аб Способ и устройство обработки вспомогательных потоков медиаданных, встроенных в поток mpeg-h 3d audio
CN110620986B (zh) * 2019-09-24 2020-12-15 深圳市东微智能科技股份有限公司 音频处理算法的调度方法、装置、音频处理器和存储介质
US11425459B2 (en) 2020-05-28 2022-08-23 Dish Network L.L.C. Systems and methods to generate guaranteed advertisement impressions
US11838596B2 (en) 2020-05-28 2023-12-05 Dish Network L.L.C. Systems and methods for overlaying media assets stored on a digital video recorder on a menu or guide
US11595724B2 (en) 2020-05-28 2023-02-28 Dish Network L.L.C. Systems and methods for selecting and restricting playing of media assets stored on a digital video recorder
US11606599B2 (en) 2020-06-10 2023-03-14 Dish Network, L.L.C. Systems and methods for playing media assets stored on a digital video recorder
US11265613B2 (en) 2020-06-10 2022-03-01 Dish Network L.L.C. Systems and methods for playing media assets stored on a digital video recorder while a customer service representative is online
US11523172B2 (en) 2020-06-24 2022-12-06 Dish Network L.L.C. Systems and methods for using metadata to play media assets stored on a digital video recorder
CN115484407B (zh) * 2022-08-25 2023-07-04 奥比中光科技集团股份有限公司 一种多路采集数据的同步输出方法、系统及rgbd相机

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX9801212A (es) * 1995-09-29 1998-04-30 Matsushita Electric Ind Co Ltd Metodo y dispositivo para grabar y reproducir una corriente de bits intercalada sobre y desde un medio.
JP3269768B2 (ja) * 1996-01-16 2002-04-02 株式会社東芝 ディジタル信号受信装置
US6172988B1 (en) * 1996-01-31 2001-01-09 Tiernan Communications, Inc. Method for universal messaging and multiplexing of video, audio, and data streams
JP3792770B2 (ja) * 1996-03-13 2006-07-05 キヤノン株式会社 記録再生装置
JPH09247119A (ja) * 1996-03-11 1997-09-19 Oki Electric Ind Co Ltd 多重化装置
JPH09261629A (ja) * 1996-03-25 1997-10-03 Ekushingu:Kk Mpeg2データのストリーム変換装置及びその変換装置を備えたデータ供給システム
JPH10154373A (ja) * 1996-09-27 1998-06-09 Sony Corp データデコードシステムおよびデータデコード方法、伝送装置および方法、並びに、受信装置および方法
KR19980042942A (ko) * 1996-11-27 1998-08-17 서지 포처 데이터 서브 방법 및 장치
JP2885217B2 (ja) 1997-02-21 1999-04-19 日本電気株式会社 Mpegデータ処理回路
JP3039444B2 (ja) * 1997-05-22 2000-05-08 日本電気株式会社 画像蓄積装置
JPH1145512A (ja) * 1997-07-25 1999-02-16 Hitachi Ltd ディジタルディスクレコーダ
US6275507B1 (en) * 1997-09-26 2001-08-14 International Business Machines Corporation Transport demultiplexor for an MPEG-2 compliant data stream
GB9721662D0 (en) 1997-10-14 1997-12-10 Philips Electronics Nv Encoded video signal formatting
KR100526218B1 (ko) * 1997-12-15 2005-11-04 마츠시타 덴끼 산교 가부시키가이샤 광디스크, 기록장치, 기록 프로그램을 저장하는 컴퓨터 판독가능 저장매체 및 기록방법
JP3338774B2 (ja) * 1997-12-22 2002-10-28 エヌイーシーソフト株式会社 Mpegエンコード装置,mpegのps多重化方法及びps多重化プログラムを記録した記録媒体
KR100264470B1 (ko) * 1997-12-24 2000-08-16 정선종 동영상디지털방송망에서의서비스게이트및이용자단말시스템과공통신호채널의운용방법및개별전송채널의할당방법
JP3844877B2 (ja) * 1998-04-08 2006-11-15 パイオニア株式会社 ストリーム変換装置
KR100304644B1 (ko) * 1998-06-19 2001-11-02 윤종용 네트워크를통한정보전송장치및방법
JP2000138896A (ja) * 1998-10-30 2000-05-16 Hitachi Ltd 画像音声記録装置

Also Published As

Publication number Publication date
GB9930788D0 (en) 2000-02-16
JP4731083B2 (ja) 2011-07-20
CN1349719A (zh) 2002-05-15
KR100733856B1 (ko) 2007-06-29
US6873629B2 (en) 2005-03-29
JP2003519992A (ja) 2003-06-24
TW548925B (en) 2003-08-21
CN1199475C (zh) 2005-04-27
EP1180309A1 (en) 2002-02-20
WO2001050773A1 (en) 2001-07-12
IL145121A (en) 2006-10-31
US20010009548A1 (en) 2001-07-26
IL145121A0 (en) 2002-06-30

Similar Documents

Publication Publication Date Title
KR100733856B1 (ko) 데이터 스트림을 변환하는 방법 및 장치
KR100822778B1 (ko) 데이터 스트림을 변환하는 방법 및 장치
JP4970688B2 (ja) デジタルビデオ記録物を作成、再生する方法及び装置と、この方法を用いて作成されたデジタルビデオ記録物
JP3605826B2 (ja) ビデオおよびオーディオ信号処理システムにおける補助情報のための合理的入力バッファの回路配列
US5619337A (en) MPEG transport encoding/decoding system for recording transport streams
KR100226528B1 (ko) 다중화 압축화상/음성데이타의 복호장치
KR100821575B1 (ko) 디지털 비디오 기록물의 데이터 처리 장치 및 방법과, 데이터 처리 방법에 의해 생성되는 기록물을 기록한 컴퓨터가 판독할 수 있는 기록매체와, 데이터 재생장치 및 데이터 재생방법 및, 데이터 재생방법에 의해 편집된 데이터 시퀀스를 재생하는 신호를 기록한 컴퓨터로 판독할 수 있는 기록매체
EP0868091A2 (en) Method and apparatus for storing multiple protocol, compressed audio and video data
JP2007102997A (ja) Mpeg情報信号変換システム
KR100981378B1 (ko) 비디오 데이터 및 보조 데이터의 판독-동기화를 위한 디바이스 및 방법, 및 이와 연관된 제품
JP2004208305A (ja) オーディオ/ビデオ復号方法および装置、ビデオドライバ回路およびそれを組み込んでいるデコーダボックス
KR101014664B1 (ko) 복수의 데이터 스트림 간의 연속 재생을 보장하는 재생방법 및 그 재생 장치
US7095945B1 (en) System for digital time shifting and method thereof
CN100563349C (zh) 再现设备和方法
JPH11205789A (ja) Mpeg2トランスポートストリーム伝送レート変換装 置
WO2004086396A1 (en) Reproducing apparatus and method, and recording medium

Legal Events

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

Payment date: 20110623

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee