[go: up one dir, main page]

KR20020033830A - 디지털 비디오 시스템에서 트릭모드 생성을 위한 방법 및디바이스 - Google Patents

디지털 비디오 시스템에서 트릭모드 생성을 위한 방법 및디바이스 Download PDF

Info

Publication number
KR20020033830A
KR20020033830A KR1020027003982A KR20027003982A KR20020033830A KR 20020033830 A KR20020033830 A KR 20020033830A KR 1020027003982 A KR1020027003982 A KR 1020027003982A KR 20027003982 A KR20027003982 A KR 20027003982A KR 20020033830 A KR20020033830 A KR 20020033830A
Authority
KR
South Korea
Prior art keywords
descriptor
video
pes
sequence
header
Prior art date
Application number
KR1020027003982A
Other languages
English (en)
Other versions
KR100741433B1 (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
Priority claimed from EP00400941A external-priority patent/EP1148727A1/en
Priority claimed from EP00402115A external-priority patent/EP1148728A1/en
Application filed by 데니스 에이치. 얼백, 톰슨 라이센싱 소시에떼 아노님 filed Critical 데니스 에이치. 얼백
Publication of KR20020033830A publication Critical patent/KR20020033830A/ko
Application granted granted Critical
Publication of KR100741433B1 publication Critical patent/KR100741433B1/ko

Links

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/005Reproducing at a different information rate from the information rate of recording
    • 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/4343Extraction or processing of packetized elementary streams [PES]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • 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/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • 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/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • 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
    • 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/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/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/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport 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/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4828End-user interface for program selection for searching program descriptors
    • 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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/781Television signal recording using magnetic recording on disks or drums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/782Television signal recording using magnetic recording on tape
    • H04N5/783Adaptations for reproducing at a rate different from the recording rate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B2020/10935Digital recording or reproducing wherein a time constraint must be met
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B2020/1264Formatting, e.g. arrangement of data block or words on the record carriers wherein the formatting concerns a specific kind of data
    • G11B2020/1265Control data, system data or management information, i.e. data used to access or process user data
    • G11B2020/1267Address data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Television Signal Processing For Recording (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Studio Circuits (AREA)

Abstract

본 발명은 디지털 비디오 시스템에 리코딩(recoded) 될 디지털 비디오 스트림을 위한 트릭모드 정보를 생성하는 방법에 관한 것이다. 본 방법은, 상기 비디오 스트림의 구조를 분석하는 단계와, 상기 스트림의 복수의 대상 디스크립터를 추론하는 단계와, 상기 스트림을 기록 매체에 라이트(write) 하는 단계와, 상기 기록 매체 위의 상기 대상의 어드레스를 기술하는 정보를 상기 대상 디스크립터에 삽입하는 단계를 포함한다. 본 발명은 수신기가 리코딩 수단에 맞게 설치된 디지털 텔레비전 시스템에 적용가능하다.

Description

디지털 비디오 시스템에서 트릭모드 생성을 위한 방법 및 디바이스{METHOD AND DEVICE FOR TRICKMODE GENERATION IN A DIGITAL VIDEO SYSTEM}
MPEG Ⅱ 또는 DVB 적응 디지털 텔레비전 스트림은, 몇몇 계층, 그 중에서 기본 스트림 계층, 패킷화된 기본 스트림(PES: Packetized Elementary Stream) 계층 및 전송 스트림(TS: Transport Stream) 계층을 포함한다. 해당 디코더는 특정 TS 계층 패킷을 필터링하기 위한 디멀티플렉서와, PES 계층을 제거하며 원래 기본 스트림을 전송하기 위한 PES 파서와, 및 비디오 기본 스트림을 디코드 하기 위한 적어도 비디오 디코더를 보통 포함한다.
장래의 디코더는 압축된 TS 또는 PES 스트림을 리코딩(recording) 하기 위하여 대용량 저장 디바이스를 병합할 것이다. 저속 또는 고속 전진(forward) 또는 후진(backward) 플레이와 같은 트릭모드를 구현하기 위하여, 비디오 스트림은 대용량 저장 디바이스로부터 비디오 디코더로 전송되기 이전에 편집될 필요가 있다. 특히 고속 전진 또는 후진 플레이에서, 특정 화상 또는 화상 시퀀스만이 디스플레이 되어야 한다. 이리하여 기록 매체 위의 이러한 정보를 억세스 하는 효과적인 방식이요구된다.
본 발명은 디지털 비디오 환경에서 트릭모드 정보를 코딩하기 위한 방법 및 이 정보를 생성하기 위한 디바이스에 관한 것이다.
도 1은 본 실시예에 따른 텔레비전 수신기의 블록도.
도 2는 본 실시예에 따른 대용량 저장 매체로 사용되는 하드 디스크 드라이브의 파일 시스템을 도시하는 도면.
도 3은 오디오/비디오 스트림의 리코딩 및 재생에 전용되는 파일 시스템의 일부를 도시하는 도면.
도 4a는 PES 모드에서 스트림 데이터를 저장하는데 사용되는 기본 저장 단위(elementary storage unit)('SEU')를 도시하는 도면.
도 4b는 전송 스트림 모드에서 스트림 데이터를 저장하는데 사용되는 SEU를도시하는 도면.
도 5a 및 도 5b는 PES 모드에 있을 때 하드 디스크 드라이브에 라이트 될 PES 데이터를 저장하는데 사용되는 FIFO를 도시하는 도면.
도 6은 본 실시예에 따른 트릭모드 정보를 저장하기 위한 여러 데이터 구조를 표시하는 도면.
도 7a는 더미 PES 헤더를 삽입하기 전에 PES 계층의 비디오 스트림을 표시하는 도면.
도 7b는 더미 PES 헤더를 삽입하기 후의 도 7a의 PES 계층의 비디오 스트림을 표시하는 도면.
도 8a는 더미 PES 헤더를 포함하는 TS 패킷을 삽입하기 전에 TS 계층의 비디오 스트림을 표시하는 도면.
도 8b는 더미 PES 헤더를 포함하는 TS 패킷을 삽입하기 후의 도 8a의 TS 계층의 비디오 스트림을 표시하는 도면.
도 9는 비디오 디코더의 입력 버퍼가 보는 기본 비디오 스트림을 표시하는 도면.
본 발명의 목적은 디지털 비디오 시스템에서 리코딩 될 디지털 비디오 스트림에 대한 트릭모드 정보를 생성하기 위한 방법으로서,
상기 비디오 스트림의 구조를 분석하며 상기 스트림의 복수의 대상 디스크립터를 추론하는 단계와,
상기 스트림을 기록 매체에 라이트(write) 하는 단계와,
기록 매체 위의 상기 대상의 어드레스를 기술하는 정보를 상기 대상 디스크립터에 삽입하는 단계를 특징으로 한다.
본 발명의 다른 특성과 이점은 도면에 의해 예시된 본 발명의 비제한적인 특정 실시예(non-limiting embodiments)의 상세한 설명을 통해 나타날 것이다.
본 상세한 설명은 MPEG Ⅱ 적응 데이터 스트림을 허용하는 시스템의 프레임에서 이루어지며 해당 용어를 사용한다. 비디오 및 전송 레벨 코딩을 위한 MPEG Ⅱ 표준 구문에 관한 더 많은 정보는, 예를 들어 문서들, 즉 ISO/IEC 13818-1(정보 기술 - 움직이는 화상(moving picture)과 이와 연관된 오디오 정보의 일반적 코딩:시스템) 및 ISO/IEC 13818-2(정보 기술 - 움직이는 화상과 이와 연관된 오디오 정보의 일반적 코딩: 비디오)에서 찾을 수 있다. 본 시스템은 또한 DVB ETR-154 표준에 따른다.
본 발명은 물론 MPEG Ⅱ 환경으로 제한되지 않으며 또는 본 특허 출원에서 기술된 데이터 계층으로 제한되지 않는다.
1. 시스템 개요
로컬 대용량 저장 디바이스로부터 비디오 스트림을 플레이백 할 때 고품질의 트릭모드 관리를 달성하기 위하여, 리코딩 된 비디오 스트림의 구조의 지식이 필요하다. 이 구조는 이후에는 트릭모드 정보(trickmode information)라고 불리운다. 이 구조는 비디오 스트림의 리코딩 전에 그리고 리코딩 동안에 실행된 파싱 프로세스(parsing process)로부터 유래한다. 파싱은 스트림 구조를 분석하는 것과 특정 문장 구조의 성질을 기억하는 것으로 되어 있다. 대용량 저장 매체 위의 그 위치 뿐만 아니라 구조에 관한 정보 또한 리코딩 된다.
본 실시예에 따라, 비디오와 같은 데이터, 그러나 비디오로 제한되지 않는 데이터가 전송 스트림 계층 또는 패킷화된 기본 스트림 계층에서 리코딩 된다. 트릭모드 정보는, 압축된 비디오 정보로 다운된, 다수의 계층에서 저장된 비디오 스트림{잘 알려진 MPEG Ⅱ 구문에 따라 전송 스트림(TS : Transport Stream) - 패킷화된 기본 스트림(PES : Packetized Elementary Stream) - 기본 스트림(ES : Elementary Stream)}의 구조를 기술한다. TS 계층 레벨에서 리코딩을 실행하는, 주 실시예가 먼저 기술될 것이다. PES 계층 레벨에서 리코딩 하는, 제 2 실시예와의차이는 각 경우에 나타낼 것이다. 두 리코딩 레벨이 동일한 디코더에서 공존(cohabit)할 수 있다는 점에서 두 실시예가 호환되므로, 두 실시예는 모두 도 1을 참조하여 기술될 것이다.
(a) TS 계층 리코딩
도 1은 본 실시예에 따른 디지털 텔레비전 수신기의 블록도이다. 수신기(1)는, 전송 스트림을 전송 스트림 디멀티플렉서 및 필터(4)로 출력할 수 있는 프런트-엔드 회로(front-end circuitry)(2)를 포함한다. 프런트-엔드 회로는, 튜너, 아날로그/디지털 변환기, 적절한 복조기 및 순방향 에러 정정 회로(forward error correction circuit)를 전형적으로 포함한다. 이 프런트-엔드 회로는 신호 소스(도시되지 않음)로부터 신호를 수신하며, 이 신호 소스는 전형적으로 케이블, 위성 안테나 및 이와 연관된 저잡음 블록 및 다운 변환기, 또는 지상 안테나이다. 본 시스템에서 글로벌 자원은 RAM(5), PES 파서(6), 제 2 전송 스트림 디멀티플렉서(7), 오디오 및 비디오 디코더(8 및 9) 및 마이크로프로세서(10)를 포함한다. TS 필터 및 디멀티플렉서(4)는 마이크로프로세서에 의해 특정 기준에 해당하는 인입 전송 스트림 데이터 패킷을 필터링하여 그것으로부터 전형적으로 특정 패킷 식별자(PID : Packet Identifier) 값을 가지는 데이터 패킷을 추출하기 위해 프로그래밍 된다. 인입 스트림 콘텐츠, 특히 PID 할당은, 예를 들어 MPEG Ⅱ 표준 또는 DVB 서비스 정보 표준(문서 참조 번호 ETSI EN 300 468)에 의해 정의된 특정 개수의 전송 데이터 표로부터 알려진다. 개인전용 PID 값 또한 정의될 수 있다.
필터링된 전송 스트림 데이터 패킷은 메모리(5)에서 버퍼링 되며, 이 버퍼의일부는 스트림 파서(Stream Parser)(3)에 의해 더 처리하기 위해 TS Write FIFO (15)로서 배열되어 있다.
TS 패킷의 PID 값과 그에 따른 목적 어플리케이션(destination application)(예를 들어, 오디오 및 비디오 디코더)에 따라 여러 TS 패킷을 개별 버퍼로 발송하는 종래의 디멀티플렉서와는 달리, TS 필터 및 디멀티플렉서(4)는 리코딩 될 스트림의 PID에 해당하는 모든 패킷을 단일 버퍼{본 실시예에서 TS Write FIFO(15)}에 패킷 수신의 순서로 라이트(write) 한다.
압축된 스트림 데이터와 다른 데이터(예를 들어, 제어 데이터)는 버스(11)로 모델화된 데이터 경로를 통해 주변 블록들 사이에 전송된다. 이 수신기는 본 실시예에 따라 하드 디스크 드라이브가 되는 대용량 저장 디바이스(12)를 더 포함한다. 대용량 저장 디바이스(12)는 인터페이스(13), 본 경우에는 EIDE 인터페이스를 통해 버스(11)에 연결된다. 비디오 디코더 회로(9)는 비디오 처리 및 디스플레이 회로(14)에 알려진 방식으로 연결된다.
메모리(5)는 다음의 영역을 포함한다, 즉:
- 하드 디스크에 라이트 될 필터링된 TS 패킷 데이터를 저장하기 위한 이미 언급된 write FIFO (15)와,
- 하드 디스크로부터 판독된 TS 패킷 데이터를 저장하기 위한 TS read FIFO(16)와,
- 하드 디스크에 라이트 될(또는 하드 디스크로부터 판독될) 트릭모드 정보를 저장하기 위한 트릭모드 버퍼 영역(17)을 포함한다.
(b) PES 계층 리코딩
PES 계층의 리코딩을 위하여, 메모리(5)는 오디오 PES, 비디오 PES, 및 다른 데이터에 각각 전용되는 세 개의 write FIFO(18 내지 20)와, 이와 유사한 타입의 패킷에 각각 전용된 세 개의 read FIFO(21 내지 23)를 또한 포함한다.
디코더가 PES 모드에서 작동할 때, 제 2 디멀티플렉서(7)는 사용되지 않으며, PES 패킷은 하드 디스크(12)로부터 FIFO(21 및 22)를 통해 PES 파서(6)로 직접 전송된다.
FIFO(15, 16 및 18 내지 23)는 순환 방식(circular manner)으로 구성되는 것이 바람직하다.
2. 대용량 저장 디바이스
하드 디스크 드라이브 파일 시스템이 이제 기술될 것이다. 디스크 드라이브(12)는 도 2의 도식으로 도시된 파일 시스템을 소유하며, 이 파일 시스템은 오디오/비디오 스트림 리코딩 및 재생에 전용된다. 파일 시스템은 이 시스템이 관리하는 데이터 타입의 특정 요건에 반응한다. 본 파일 시스템은 비교적 큰 사이즈의 블록으로 등시 데이터 스트림(isochronous data stream)의 순차 억세스를 위해 최적화된다.
일 변형으로서, 스트림 데이터보다 다른 데이터의 리코딩 및 검색에 전용된 제 2 파일 시스템(도시되지 않음)이 동일한 하드 디스크 위에 제공될 수 있다. 이 제 2 파일 시스템은 보다 종래의 컴퓨터 타입의 파일에 대한 랜덤 억세스를 위해 최적화된다. 부트 블록(boot block)은 두 파일 시스템에 모두 공통일 수 있다. 이제 2 파일 시스템은 UNIX 또는 MINIX 파일 시스템과 같은 종래의 타입이며, 그리하여 보다 상세하게 기술되지 않을 것이다.
도 3은 스트림 파일 시스템의 좀더 상세한 모양을 도시한 것이다. 이 파일 시스템은, 수퍼블록(superblock), 노드 저장 영역(node storage area), 실행부 확장 저장 영역(run extension storage area), 오디오/비디오 데이터 저장 영역 및 비트 표 영역(bit table area)을 포함하며, 이 비트 표 영역은 세 개의 저장 영역 각각의 기본 저장 구조의 각 상태를 기술하는 세 개의 비트 표(bit table)를 보유한다.
부트 블록은 볼륨 이름과 볼륨 식별자, BIOS 파라미터 및 부트 프로그램과 같은 하드 디스크 드라이브에 관한 일반적 정보를 포함한다.
수퍼블록은 스트림 파일 시스템에 관한 정보, 특히 파일 시스템의 여러 영역의 어드레스{논리 블록 어드레스 - 'LBA(logical block address)'의 형태임}와 사이즈를 포함한다.
노드 저장 영역은 노드를 저장하는데 사용된다. 노드는 오디오/비디오 데이터 저장 영역에 저장된 파일을 기술하는 데이터 구조이다. 이 노드는 또한 디렉토리를 기술할 수 있다. 이 노드는 파일이 위치되어 있는 오디오/비디오 데이터 저장 영역의 부분의 파일 이름, 부모 디렉토리 정보(parent directory information), 상세한 설명과 같은 정보를 포함한다. 이 정보는 LBA 시작 어드레스(LBA starting address) 및 실행부(run)를 이루는 다수의 LBA 블록에 의해 정의된, LBA 실행부 형태로 주어진다. 제한된 수의 실행부가 주어진 노드에 저장될 수 있으므로, 노드 내의 포인터는 해당 저장 영역에 위치된 실행부 확장 데이터 구조(run extension data structure)를 가리킬 수 있다. 파일 위치 정보는 이 노드가 디렉토리를 기술하는데 사용되면 파일 식별자 또는 디렉토리 식별자로 교체된다. 제 1 노드는 루트 디렉토리를 기술한다.
실행부 확장 저장 영역은 주어진 파일에 대해 추가 LBA 실행부를 식별하는 특정 데이터 구조를 포함한다.
비트 표 영역은 세 개의 비트 표, 즉 노드 비트 표(node bit table), 실행부 확장 비트 표(run extension bit table) 및 저장 기본 단위 비트 표(Storage Elementary Unit bit table)를 포함한다. 처음 두 개의 표는 각 노드, 각 실행부 확장의 자유 상태 또는 사용 상태를 각각 나타낸다. 세 번째 표는, 본 실시예에 따라, 128K 바이트의 블록(물론 서로 다른 사이즈의 블록과 특히 더 큰 사이즈의 블록이 사용될 수 있으며, 128K의 값은 단지 일례로서 주어진 것이다)을 나타내는, 각 기본 저장 단위에 대해 동일한 것을 나타낸다.
마지막으로, 오디오/비디오 데이터 저장 영역은 일련의 기본 저장 단위(series of elementary storage units)('SEU')를 포함한다. 각 SEU는 256 개의 섹터를 포함하며, 이리하여 128K 바이트를 나타낸다.
위의 데이터 구조를 사용하면, 마이크로프로세서(10)는 이들 파일로 가는 라이트 데이터(write data)와 이들 파일로부터 오는 리드 데이터(read data) 뿐만 아니라 파일을 생성 및 삭제할 수 있다.
(a) TS 계층의 리코딩에 대해:
도 4b는 TS 계층의 리코딩에 사용될 때의 SEU의 도면이다.
SEU는 다수의 멀티플렉스된 전체 TS 패킷으로 이루어진 페이로드(payload)와 짧은 헤더를 포함한다. SEU 사이즈가 512 바이트의 배수이기 때문에, 이 SEU 사이즈가 정수개의 TS 패킷을 포함하므로, 특정 개수의 스터핑 비트(stuffing bits)가 이 페이로드에 추가되어야 한다.
(b) PES 계층의 리코딩에 대해:
도 4a는 PES 스트림 SEU의 콘텐츠를 예시한다. SEU는 헤더를 포함하며, 본 실시예에 따라, 비디오 PES 패킷, 오디오 PES 패킷 및 다른 PES 패킷에 각각 전용되는 최대 세 개의 가변 사이즈의 영역을 포함한다.
비록 이것이 실재 예이기는 하지만 이 영역의 개수는 세 개로 제한되지 않는다. 몇몇 비디오 기본 스트림, 오디오 기본 스트림 및 보조 데이터 스트림은 해당 개수의 SEU 내 영역으로 인도될 수 있다. 이 경우에, 메모리(5)는 해당 개수의 read/write FIFO를 포함할 수 있다.
3. 리코딩 프로세스
(a) TS 계층의 리코딩
TS 계층의 리코딩 및 재생을 위한 SEU의 구성은, 필터링된 TS 패킷이 이 수신기의 여러 요소에 의해 어떻게 처리되는지를 기술함으로써 최상으로 설명될 수 있다. 일단 디멀티플렉서가 프로그래밍 된 PID 값에 해당하는 패킷을 선택하였다면, 디멀티플렉서는 이 패킷을 메모리(5) 내의 순환(circular) write FIFO(15)에 저장한다. 패킷의 콘텐츠 타입, 즉 비디오(V), 오디오(A), 또는 기타(O)는 패킷 헤더 내의 각 PID 값으로부터 마이크로프로세서(10)에 의해 결정된다. 디멀티플렉서에 의해 처리되는 비디오(V) 전송 스트림 패킷의 콘텐츠는 이후에 좀더 자세하게 기술되는 트릭모드 정보의 특정 타입의 추출을 위하여 스트림 파서(3)에 의해 파싱(parsed), 즉 분석된다. 대체로, 이러한 분석은 오디오 또는 다른 데이터 패킷에 대해서는 수행되지 않는다. 스트림 내의 TS 패킷의 처음 순서(initial order)는 FIFO(15) 내에 유지된다. 이 방식으로 여러 패킷에 있는 연속 카운터 값(continuity counter value)은 코히런트(coherent)하게 남아있다. 더구나, 여러 스트림(특히 동일 이벤트에 해당하는 비디오 스트림 및 오디오 스트림) 사이의 동기화가 유지된다. 마이크로프로세서(10)는 write FIFO(15)에 대한 리드 포인터(lead pointer) 및 라이트 포인터(write pointer)를 관리한다. 라이트 포인터와 리드 포인터 사이의 차이가 128K 바이트에서 SEU 헤더의 사이즈를 뺀 것과 같게 될 때, 마이크로프로세서는 하드 디스크로의 라이트 프로세스(write process)를 시작한다.
TS 리코딩에 대해, 각 SEU 헤더는 TS 패킷과 스터핑 비트 사이를 구별하기 위하여 TS 패킷 페이로드 내의 유효 데이터의 길이의 표시를 포함한다.
(b) PES 계층의 리코딩:
이 경우에, 디멀티플렉서 및 필터(4)는 TS 패킷을 필터링만 하지 않는다: 이디멀티플렉서 및 필터(4)는 TS 페이로드를 라이트 하기 전에, 즉 PES 패킷을 RAM (5)에 라이트 하기 전에 TS 계층을 벗겨낸다. PES 패킷은 패킷이 전송된 TS 패킷의 PID의 값에 따라 순환 write FIFO(18 내지 20) 중 하나로 전송된다. 마이크로프로세서(10)는 이들 FIFO 각각에 대해 리드 포인터 및 라이트 포인터를 관리한다. 모든 버퍼에 대한 라이트 포인터 및 리드 포인터 사이의 모든 차이의 합이 128K 바이트에서 SEU 헤더의 사이즈를 뺀 것과 같게 될 때, 마이크로프로세서는 하드 디스크로의 라이트 프로세스를 시작한다. 비디오 PES는 트릭 모드 정보를 위해 스트림 파서(3)에 의해 파싱(parsed)된다.
PES 리코딩에 대해, 헤더는 SEU에 라이트 되고자 하는 각 타입의 데이터 양의 정보, 즉 특정 PID와 연관된 각 영역의 사이즈와, SEU 내의 각 영역의 오프셋 어드레스를 포함한다. PES 리코딩의 경우에 스터핑 비트(stuffing bits)가 사용되지 않는다: PES 패킷은 하나의 SEU에서 시작하며 그 다음 SEU에서 끝날 수 있다.
TS 또는 PES 리코딩에 대한 것인, 라이트 프로세스는, 마이크로프로세스(10)에 의해, 라이팅(writing)이 시작되어야 하는 LBA 어드레스와 라이팅 될 LBA 의 개수를 명시하는, 적절한 명령을 EIDE 인터페이스로 보냄으로써 시작된다. 하드 디스크 드라이브가 라이팅 프로세스를 실행할 준비가 되면, EIDE 인터페이스는 적절한 인터럽트에 의해 마이크로프로세서에 알려준다.
라이트 프로세스는 마이크로프로세서(10)에 의해 생성된 SEU 헤더 콘텐츠를 HDD 인터페이스에 라이트 함으로써 계속된다. 라이트 프로세스는, (TS 리코딩에 대해) TS Write FIFO(15)로부터 또는 차례로 (PES 리코딩에 대해) write FIFO(18 내지 20) 각각에 대해 DMA 프로세스를 HDD 인터페이스(13)로 개시함으로써 더 계속된다. 알려진 방식으로, HDD 인터페이스(13)는 디스크 억세스를 위한 버퍼로 작용하는 캐시 메모리를 포함한다.
물론, 여기에서는 적당한 파일이 마이크로프로세서에 의해 열려졌다는 것과 마이크로프로세서는 데이터가 EIDE 인터페이스로 전송되도록 목적 SEU를 또한 나타내었다는 것이 제안되어 있다.
이 하드 디스크 라이트 프로세스(hard disk write process)가 일어나는 동안, 패킷(TS 이든 또는 PES 이든)은 FIFO로 라이트 되는 것이 계속된다.
PES 리코딩에 대해, 만약 도 5a가 디스크로 전송이 시작하기 바로 전에 FIFO 및 리드 포인터의 상태 및 라이트 포인터의 상태를 도시한다면, 도 5b는 일단 전송이 달성된 경우의 상태를 나타낸다. 포인터가 FIFO의 상부 어드레스(top address)에 도달할 때, 이 포인터는 하부 어드레스(bottom address)를 완료한다(wrap around). 비록 FIFO 전부가 도 5a 및 도 5b에서 동일한 외견상 사이즈를 가지고 있지만, 여러 다른 사이즈가 사용될 수도 있다. 이와 유사한 프로세스가 TS 리코딩에도 적용된다.
4. 트릭모드 데이터의 생성
도 6은 트릭모드 정보를 저장하는데 사용되는 데이터 구조의 도면이다. 이들 구조와 그 저장이 먼저 기술되고 이후에 스트림 리코딩 동안 해당 데이터를 얻기 위한 방법이 기술된다.
트릭모드 정보 데이터 구조는 몇몇 기능을 가지는데, 즉 이 기능으로:
- 이 구조는 스트림의 비디오 MPEG 구조를 기술하며;
- 이 구조는 하드 디스크 드라이브 위의 MPEG 비디오 억세스 단위에 억세스하며 이들 단위를 디코더로 전송하기 위해 필요한 데이터를 제공하며;
- 이 구조는 시간 색인 기능에 기초하여 MPEG 비디오 억세스 단위에 대한 랜덤 억세스를 가능하게 하며;
- 이것은 양방향성(즉, 전진 방향과 후진 방향)으로 사용될 수 있는 구조이며: MPEG 구문 요소의 디스크립터는 스트림에서 그 순서에 따라 서로에 대해 링크되며, 그리고 이 디스크립터와 표는 현재의 디스크립터에 앞서 또는 그 이후에 있는 디스크립터를 용이하게 찾도록 하는 방식으로 정의되며;
- 트릭모드 데이터는 상황에 따라 정보에 대한 손쉬우면서 신속한 억세스를 위해 세 가지 서로다른 구조, 즉 비디오 기술 단위 표(Video Description Unit Table)(VDU 표), 시간 색인 표(Temporal Indexing Table)(TT) 및 다수의 블록(비디오 기술 단위 - VDU)에 걸쳐 분포(spread over)되며;
- 비디오 기술 단위는 메모리에 재위치 가능하다. 상대적 어드레스 포인터는 이 목적으로 구현된다. 결과적으로, 트릭모드 정보 데이터 구조가 하드 디스크 드라이브 위에 저장될 때, 이용가능한 메모리에 따라 요구되는 대로 부분적으로 메모리에 로딩될 수 있다;
- VDU 표는 하드 디스크 위의 VDU에 억세스하며 VDU를 메모리에 부분적으로 또는 비-부분적으로 저장하기 위한 정보를 포함하는 등이 있다.
도 6은 회색으로 보이는 두 개의 VDU를 도시한다. VDU는 다수의 시퀀스의 디스크립터와, 각 시퀀스에 대해 그 시퀀스에 포함된 PES 헤더와 화상에 관한 디스크립터를 포함한다. 일례로서, 도 6에서, 각 VDU는 거의 1.5초의 비디오에 해당하는, 세 개의 시퀀스 디스크립터를 포함한다. 트릭모드 정보는 필요에 따라 시스템으로하여금 VDU에만 억세스하게 하며 그리고 이 데이터를 조작하는데 필요한 전체 메모리의 양을 감소시키기 위하여 복수의 VDU에 걸쳐 분포(spread over)된다.
VDU는 단순히 최대 사이즈를 가지며 가변 개수의 시퀀스를 기술할 수도 있다. 이 시스템에 의한 VDU의 최대 사이즈의 인식은 메모리 요구(memory needs)를 예상할 수 있게 해준다. 예를 들어, 플레이백 동안, 메모리에 항상 두 개의 VDU, 즉 현재 처리되는 VDU와 연속되는 VDU(consecutive VDU)를 가지는 것이 바람직할 수 있다.
바람직하게는, 각 VDU는 부분적인 시퀀스가 아닌 전체 시퀀스에 관한 디스크립터를 보유한다. 이것은, 동일한 시퀀스의 화상에 작용할 때 (그 중 일부가 먼저 로딩되어야 할 수 있는) 서로다른 VDU에 작용하여야 하는 것을 회피시켜 준다.
아래에 주어지는 표와 해설은 PES 계층의 리코딩 모드를 언급한다. TS 계층의 리코딩에 대해, 디스크 위의 또는 SEU 내의 어느 한 항목의 어드레스가 그 항목의 첫 바이트를 포함하는 TS 패킷의 TS 패킷 헤더의 어드레스로 교체되어야 한다.
본 실시예에 따라, 전체 SEU 만이 디스크로부터 판독(read)되며 이 디스크에 라이트(write) 된다. 그러므로, 각 스트림 대상 디스크립터는, (a) 디스크 드라이브로부터 해당 SEU의 전송을 가능하게 하며, (b) 메모리로부터 디코더로 전송할 수 있게 해주는 정보를 포함한다.
단계 (a) (정수 SEU의 전송)에 대해, 다음의 데이터가 사용되는데, 즉
(1) 전송될 첫 SEU의 어드레스(논리 블록 어드레스)와
(2) 전송될 SEU의 개수
단계(b)에 대해
(3) 첫 SEU에서 대상의 오프셋과
(4) (예를 들어, 바이트 단위로) 대상의 길이가 사용된다.
추가적 데이터, 특히 디스크립터를 링크하기 위한 데이터가 아래에 나타낸 바와 같이 각 디스크립터에 또한 제공된다.
각 시퀀스 디스크립터("S" 디스크립터)는 표 1에 도시된 데이터를 포함한다.
시퀀스 디스크립터
1 시퀀스 색인
2 PES 정열
3 바이트 단위의 SEQ 및 EXT 헤더 사이즈
4 SEU 단위의 SEQ 및 EXT 헤더 사이즈
5 첫 화상의 디스크립터에 대한 포인터
6 맨마지막 화상의 디스크립터에 대한 포인터
7 그 다음 시퀀스의 디스크립터에 대한 포인터
8 그 이전의 시퀀스의 디스크립터에 대한 포인터
9 시퀀스의 첫 바이트를 포함하는 SEU의 논리 블록 어드레스
10 시퀀스 전부를 포함하는 SEU의 개수
11 이러한 바이트를 포함하는 첫 SEU 내부에 시퀀스의 첫 바이트의 바이트 단위의 오프셋
12 바이트 단위의 시퀀스 사이즈
본 실시예에 따라, '시퀀스'는 ISO/IEC 13818-1 문서에 정의된 바와 같은 MPEG Ⅱ 시퀀스이다.
시퀀스색인은 리코딩 된 비디오 스트림의 시작에 비해 시퀀스의 순위(rank)를 제공한다. 이것은 또한 시퀀스 디스크립터의 식별자의 역할을 한다.
PES 정열(alignment)은 시퀀스에서 PES 헤더 이후에 바로 화상 헤더가 따라오는지 아닌지를 나타내는 플래그(flag)이다.
위 "바이트 단위의 SEQ 및 EXT 헤더 사이즈"는 MPEG 시퀀스 헤더에 이 시퀀스에서 첫 화상 헤더가 앞장서는 이후에 오는 모든 MPEG 헤더 및 확장을 더한 것의 바이트의 수의 사이즈이다.
이 정보는 {다른 데이터 중에서, MPEG 정량 표(quantification tables), 화상 사이즈...를 포함하는} 이들 헤더를 디코더로 신속하게 전송가능하게 하며, 또는 시퀀스의 첫 화상과 함께 시퀀스 헤더를 전송하는 것을 가능하게 한다.
위 "SEU 단위의 SEQ 및 EXT 헤더 사이즈"는, MPEG 헤더가 몇몇 SEU에 걸쳐 분포되어 있을 수 있으므로, 이전의 항목과 연계하여 언급된 이들 MPEG 헤더 및 확장의 일부를 포함하는 SEU의 개수이다. 본 실시예에서, 이 개수는 최대 2이다.
위 "첫 화상의 디스크립터에 대한 포인터"는 고려되는 시퀀스에서 첫 화상의 화상 디스크립터에 대한 VDU 내의 포인터이다. 시퀀스 디스크립터와 이러한 시퀀스에 속하는 모든 화상의 디스크립터는 본 실시예에 따라 구성에 의해 항상 동일한 VDU 내에 있다는 것을 주목해야 한다.
VDU 내의 모든 포인터는 VDU 기저 어드레스(base address)에 기초한 상대적 어드레싱 구조를 사용한다. 이 방식으로 VDU는 유효 포인터 값(valid pointer values)을 보유하면서 임의의 메모리 영역으로 로딩될 수 있다.
위 "맨마지막 화상의 디스크립터에 대한 포인터"는 고려되는 시퀀스에서 맨마지막 화상의 화상 디스크립터에 대한 VDU 내의 포인터이다.
첫 번째 화상과 맨마지막 화상에 대한 포인터는 전진 방향, 역 방향으로 각각 플레이백을 실행하는데 유용하다. 표 2와 관련하여 볼 수 있는 바와 같이, 각 화상 디스크립터는 그 이전 화상과 그 다음 화상을 가리킨다.
위 "그 다음 시퀀스의 디스크립터에 대한 포인터"는 스트림에서 이후의 시퀀스의 디스크립터에 대한 VDU 내의 포인터이다. 만약 이 디스크립터가 동일 VDU 내에 있지 않으면, 이 포인터는 눌(null)이다. 이 경우에, 이후의 시퀀스의 디스크립터는 그 다음의 VDU 내의 첫 번째 시퀀스 디스크립터이다. 이 다른 VDU는 VDU 표의 사용으로 용이하게 억세스 될 수 있다.
위 "그 이전의 시퀀스의 디스크립터에 대한 포인터"는 스트림에서 이전의 시퀀스의 디스크립터에 대한 VDU 내의 포인터이다. 만약 이 디스크립터가 동일 VDU 내에 있지 않으면, 이 포인터는 눌이다. 이 경우에, 이전의 시퀀스의 디스크립터는 그 이전의 VDU의 맨 마지막 시퀀스 디스크립터이다. 이 이전 VDU는 VDU 표의 사용으로 억세스 될 수 있다.
논리 블록 어드레스(항목 9)는 시퀀스 헤더의 첫 번째 바이트를 포함하는 SEU의 어드레스이다. 항목 11(시퀀스 헤더의, SEU 시작에서부터의, 오프셋)과 관련하여, 디스크로부터 판독된 SEU는 용이하게 파싱된다. 위SEU(저장 기본 단위) 어드레스는 시퀀스 헤더의 첫 바이트를 포함하는 128Kb 블록의, 하드 디스크 위의, 어드레스이다.
SEU의 개수(항목 10)는 메모리 내에 시퀀스 전부를 가지기 위하여 로딩되어야만 하는 SEU의 개수를 나타낸다. 사실, 하나의 판독 모드(reading mode)에 따라, 적어도 하나의 전체 시퀀스는 한번에 메모리 내로 로딩되며, 그후 이 메모리로부터 하나씩 추출된 이미지는 적절한 디코더에 송신된다. 이 종류의 프로세스는, 디스크 억세스 효율에 관한 것인 한, 역 플레이백 모드에서 매우 효과적이다.
각 화상 디스크립터("P" 디스크립터)는 다음의 데이터 항목을 보유한다.
화상 디스크립터
1 화상 색인
2 타입
3 시간 참조
4 필드/프레임
5 동일 시퀀스에서 그 다음 화상의 디스크립터에 대한 포인터
6 동일 시퀀스에서 그 이전의 화상의 디스크립터에 대한 포인터
7 화상 데이터를포함하는 정열된PES 패킷의 디스크립터에 대한 포인터
8 현 화상내부에서 시작하는첫 PES 패킷의 디스크립터에 대한 포인터
9 첫 번째 SEU 어드레스
10 전체 화상을 포함하는 SEU의 개수
11 SEU의 첫 번째 바이트 어드레스: 이러한 바이트를 포함하는 첫 번째 SEU 내부에 화상 헤더의 첫 번째 바이트의, 바이트 단위의 오프셋
12 시퀀스에서 첫 번째 바이트 어드레스: 이러한 화상을 포함하는 시퀀스의 첫 바이트와 화상 헤더의 첫 바이트 사이의, 바이트 단위의 오프셋
13 바이트 단위의 화상 사이즈
화상 색인(picture index)은 리코딩 된 비디오 스트림의 처음(beginning)에 비해, 화상의 순위(rank)를 제공한다. 이것은 또한 특히 아래에 기술되는 시간 표(Temporal Table)와 관하여 화상 디스크립터의 식별자의 역할을 한다.
위 화상의타입정보는, 이 화상이 인트라(Intra) 코딩 타입, 예상(Predictive) 코딩 타입 또는 양방향 코딩 타입(Bi-directional coding type)으로 이루어져 있는지를 나타낸다.
시간 참조(Temporal Reference)정보는 MPEG Ⅱ 화상 헤더로부터 직접 추출된다. 이것은 서로에 대해 화상의 디스플레이 순서를 제공한다.
필드/프레임정보는, 화상이 짝수 필드(even field), 홀수 필드(odd field), 또는 전체 프레임(whole frame)을 포함하는지를 나타낸다.
위 "그 다음 화상의 디스크립터에 대한 포인터"는 현 시퀀스에서 그 다음 화상의 화상 디스크립터에 대한 VDU 내의 포인터이다. 만약 현 화상이 시퀀스에서 마지막 화상이라면, 그 포인터는 눌이다.
위 "그 이전 화상의 디스크립터에 대한 포인터"는 현 시퀀스에서 그 이전 화상의 화상 디스크립터에 대한 VDU 내의 포인터이다. 만약 현 화상이 시퀀스에서 첫 번째 화상이라면, 그 포인터는 눌이다.
만약 현 PES 스트림이정열되면, 각 화상은 단일 PES 패킷 내부에 캡슐화(encapsulated)된다. 이 경우에는 화상을 캡슐화하는 PES 패킷과 각 화상을 연관시키는 것이 중요하다. 표 2에서 필드 7은 화상이 포함하는 화상의 디스크립터와정열된 PES 패킷의 디스크립터를 연관시킬 수 있게 한다. 여기에 정열이 있는지 없는지는 PES 헤더에 존재하는 정보로부터 유추할 수 있다. 정열이 있는 경우에는 해당 PES 헤더와 함께 화상 데이터가 임의의 다른 프로세싱 없이 메모리로부터 PES 파서(parser)로 송신될 수 있다.
필드 7의 콘텐츠는 거기에 정열이 없는 경우에 눌(null)로 설정된다.
만약 현 스트림이 정열되어 있지 않다면, 화상이 몇몇 PES 패킷에 걸쳐 분포되어 있을 수 있다. 이 경우에는 메모리에서 프로세싱을 통해 PES 헤더를 제거하기 위해 또는 그 헤더를 변경하기 위해 화상 '내부'에서 시작하는 PES 헤더를 식별하는 것이 중요하다. 특히, PES 헤더에 존재하는 PES 패킷 길이 항목은, 일부분만의 PES 패킷이 PES 파서로 전송되는 경우에 변경될 필요가 있다. 표 2에서 필드 8은 현 화상에 해당하는 데이터 내에 포함된 첫 번째 PES 패킷의 디스크립터를 가리킨다. 각 PES 패킷 디스크립터는 동일 화상에 이후의 PES 패킷의 디스크립터 자체를 가리킨다.
SEU (저장 기본 단위) 어드레스는 화상 헤더의 첫 바이트를 포함하는 SEU의, 하드 디스크 위의, (논리 블록 어드레스 번호) 어드레스이다.
SEU 단위의 첫 번째 바이트 어드레스는 SEU 어드레스의 처음에 비해 화상 헤더의 첫 번째 바이트의 바이트 단위의 오프셋이다. 이것은 화상의 첫 번째 바이트로 직접 억세스 하게 한다. 이 정보는 스트림 파서에 의해 추론된다.
PES 시퀀스에서 첫 번째 바이트의 어드레스는 화상 시작 코드의 첫 바이트와 전체 비디오 시퀀스의 첫 바이트 사이의 상대적 어드레스이며, 이것은 복구 하는 동안 편집을 위해 메모리에 로딩될 것이다.
항목 10 및 항목 12는 하나의 화상에 대한 모든 데이터를 포함하는 SEU의 로딩을 가능하게 한다. 따라서, 전체 시퀀스를 로딩할 필요가 없으며, 디스크로부터 전송하도록 잠재적으로 사용되지 않는 데이터의 양을 줄이기 위하여 (즉, 만약 하나의 화상만이 도시되어야 하면 전체 시퀀스의 전송을 회피하기 위해), 단일 화상에 대한 SEU 만이 전송될 수 있다. 비디오 디코더로 적절한 파라미터를 송신하도록 해당 시퀀스 헤더를 또한 로딩할 필요가 있을 수 있다.
PES 헤더의 콘텐츠가 화상을 적절히 디코딩 및/또는 제공하는데 필요할 수 있다. 결과적으로, 디스크립터는 PES 헤더를 위해서도 생성된다.
각 PES 디스크립터("E" 디스크립터)는 다음의 데이터 항목을 보유한다:
PES 디스크립터
1 PES 색인
2 첫 번째 SEU 어드레스
3 SEU 단위의 첫 바이트의 어드레스
4 전체 PES 패킷을 포함하는 SEU의 개수
5 이러한 PES 패킷을 포함하는 화상의 첫 바이트와 PES 패킷의 첫 바이트 사이의, 바이트 단위의 오프셋
6 동일 화상에서 그 다음 PES의 디스크립터에 대한 포인터
7 바이트 단위의 PES 패킷의 사이즈
8 바이트 단위의PES 패킷 헤더의 사이즈
9 전체PES 패킷의 헤더를 포함하는 SEU의 개수
PES 색인은 리코딩 된 비디오 스트림의 처음에 비해, PES 패킷의 순위(rank)를 제공한다. 이것은 또한 PES 디스크립터의 식별자의 역할을 한다.
SEU 어드레스는 PES 헤더의 첫 바이트를 포함하는 SEU (128Kb 블록)의 첫 LBA의 개수이다.
SEU 단위의 위첫 바이트 어드레스는 SEU 어드레스의 처음에 비해, PES 헤더의 첫 바이트의, 바이트 단위의 오프셋이다.
필드 6은 동일 화상에서 그 다음 PES의 디스크립터에 대한 포인터이다. 만약 여기에서 동일 화상에 다음의 PES 패킷이 없다면, 이 포인터는 눌(null)이다.
표 1 및 표 2에서 언급되었던 것에 주어지는, 표 3의 다른 항목들은 자체 해설적(self-explanatory)이다.
비록 이것이 본 실시예에서 그 경우가 아닐지라도, 변형 실시예에 따라, 다른 디스크립터가 화상의 그룹(GOP: Groups of Picture)과 그 헤더와 연관된다.
시간 색인 표는 표 4로 도시된 포맷을 가진다.
시간 표
시간 색인 시퀀스 디스크립터 어드레스 SEU 어드레스
0 xxx Yyy
1 xxx Yyy
2 xxx Yyy
3 xxx Yyy
... ... ...
14400 xxx yyy
시간 색인은 비디오 스트림의 처음에서부터 계산되는, 초 단위의 수에 해당한다. 본 실시예에 따라, 4 시간의 비디오에 해당하는 14400 엔트리도 가능하며, 하나의 화상 또는 프레임은 40㎳를 나타낸다.
시퀀스 디스크립터 어드레스는 해당 VDU 기저 어드레스(base address)에 비해, 시간 색인 이후 첫 화상을 포함하는 시퀀스 디스크립터에 대한 포인터를 제공한다. 만약 해당 VDU가 메모리에 존재하지 않으면, 이 VDU는 VDU 표에 주어져 있는 정보를 사용하여 하드 디스크로부터 먼저 로딩되어야 한다.
SEU 어드레스는,
(a) TS 계층의 리코딩의 경우에, T 초 후에 시작하는 첫 비디오 시퀀스의 시퀀스 헤더를 포함하는 전송 스트림 패킷의 전송 패킷 헤더와,
(b) PES 계층의 리코딩의 경우에, T 초 후에 시작하는 첫 비디오 시퀀스의 시퀀스 헤더
를 포함하는 SEU의, 하드 디스크 드라이브 위의 LBA 번호의, 어드레스이다.
초 단위의 시간 T에서 거의 시작하는 비디오 시퀀스에 억세스 하기 위해, 색인으로서 T를 사용하여 시간 표를 어드레스 하며, 시퀀스{(a)의 경우} 또는 직접시퀀스 헤더 위치{(b)의 경우}를 디코딩 하는데 필요한 전송 스트림 패킷의 처음을 포함하는 LBA에서 시작하는 디스크로부터 판독을 시작하도록 해당 SEU 어드레스를 사용하는 것으로 충분하다. 시간 표만이 이와 같은 억세스에 필요하다.
표와 VDU 모두에 저장된 나머지 데이터는 트릭모드 재생에 주로 사용된다.
VDU 표는 표 5에 도시된 포맷을 가진다:
VDU 표
VDU 색인 LBA 어드레스 LBA의 사이즈 시간 표 색인
0 Xxx yyy Zzz 내지 Qqq
1 Xxx yyy Zzz 내지 Qqq
2 Xxx yyy Zzz 내지 Qqq
... ... ... ...
VDU 표는 각 VDU에 대한 엔트리를 가지며, 각 VDU에 대해, 하드 디스크 위의 첫 LBA의 번호, LBA에 대한 VDU의 사이즈, 및 VDU에 의해 표시되는 비디오 부분의 시간 간격(비디오 스트림의 처음에서부터 시작하며 초 단위인)을 나타낸다.
시간 색인 표(Temporal Index Table), VDU 표, 및 VDU는 하드 디스크 위에 저장된다. 표는 하드 디스크에 비디오를 리코딩 하는 경우에는 변경하기 위해 그리고 하드 디스크로부터 재생하는 경우에는 참조하기 위해 메모리(5)의 트릭모드 버퍼 영역(17)으로 또한 로딩된다. 필요한 VDU는 또한 비어있는 메모리(free memory)의 이용가능한 양에 따라, 요구대로 하드 디스크로부터/하드 디스크로 리드(read)/라이트(write) 된다.
TT 및 VDU 표에 그리고 VDU에 저장된 트릭모드 데이터의 생성은 아래와 같이 실행된다.
생성될 정보는 세 종류, 즉 디멀티플렉싱된 비디오 패킷으로부터 직접 추출된 정보, 비디오 스트림의 구조를 기술하는 정보, 및 하드 디스크 드라이브 위의 특정 비디오 스트림 데이터의 위치에 관한 정보로 이루어져 있다. 첫 번째 경우에는, 스트림에서 PES 또는 화상 헤더의 간단한 파싱은 요구된 정보를 생산한다. 두 번째 경우에는, 비디오 스트림이 분석되어야 하며 그 구조가 기억된다. 세 번째 경우에는, 추가 정보가 파일 시스템으로부터 찾아져야 한다. 표 6은 각 종류의 데이터의 출처(origin)를 나타낸다.
디스크립터 데이터 출처
S 시퀀스 색인 비디오 스트림 분석
S PES 정열 PES 헤더
S 바이트 단위의 SEQ 및 EXT 헤더 사이즈 비디오 스트림 분석
S SEU 단위의 SEQ 및 EXT 헤더 사이즈 비디오 스트림 분석
S 첫 화상의 디스크립터에 대한 포인터 VDU 구조
S 맨마지막 화상의 디스크립터에 대한 포인터 VDU 구조
S 그 다음 시퀀스의 디스크립터에 대한 포인터 VDU 구조
S 그 이전 시퀀스의 디스크립터에 대한 포인터 VDU 구조
S 시퀀스의 첫 바이트를 포함하는 SEU의 논리 블록 어드레스 파일 시스템 및 Write FIFO 관리
S 전체 시퀀스를 포함하는 SEU의 개수 파일 시스템 및 Write FIFO 관리
S 이러한 바이트를 포함하는 첫 SEU 내부에서 시퀀스의 첫 바이트의, 바이트 단위의 오프셋 파일 시스템 및 Write FIFO 관리 및 비디오 스트림 분석
S 바이트 단위의 시퀀스의 사이즈 비디오 스트림 분석
P 화상 색인 비디오 스트림 분석
P 타입 화상 헤더
P 시간 참조 화상 헤더
P 필드/프레임 화상 헤더
P 동일 시퀀스에서 그 다음 화상의 디스크립터에 대한 포인터 VDU 구조
P 동일 시퀀스에서 그 이전 화상의 디스크립터에 대한 포인터 VDU 구조
P 현 화상을포함하는 정열된PES 패킷의 디스크립터에 대한 포인터 VDU 구조
P 현 화상의내부에서 시작하는첫 PES 패킷의 디스크립터에 대한 포인터 VDU 구조
P SEU 어드레스 파일 시스템 및 Write FIFO 관리
P 전체 화상을 포함하는 SEU의 개수 파일 시스템 및 Write FIFO 관리
P 이러한 바이트를 포함하는 첫 SEU 내부에서 화상의 첫 바이트의, 바이트 단위의 오프셋 파일 시스템 및 Write FIFO 관리 및 비디오 스트림 분석
P 이러한 화상을 포함하는 시퀀스의 첫 바이트와 화상의 첫 바이트 사이의, 바이트 단위의 오프셋 비디오 스트림 분석
P 바이트 단위의 시퀀스의 사이즈 비디오 스트림 분석
E PES 색인 비디오 스트림 분석
E SEU 어드레스 파일 시스템 및 Write FIFO 관리
E SEU 단위의 첫 바이트의 어드레스 파일 시스템 및 Write FIFO 관리 및 비디오 스트림 분석
E 전체 PES 패킷을 포함하는 SEU의 개수 파일 시스템 및 Write FIFO 관리 및 비디오 스트림 분석
E 이러한 PES 패킷을 포함하는 화상의 첫 바이트와 PES 패킷의 첫 바이트 사이의, 바이트 단위의 오프셋 비디오 스트림 분석
E 동일 화상의 그 다음 PES의 디스크립터에 대한 포인터 VDU 구조
E 바이트 단위의 PES 패킷의 사이즈 비디오 스트림 분석
E 바이트 단위의PES 패킷의 헤더의 사이즈 비디오 스트림 분석
E 전체PES 패킷의 헤더를 포함하는 SEU의 개수 파일 시스템 및 Write FIFO 관리 및 비디오 스트림 분석
단 하나의 기본 비디오 스트림이 주어진 시간에 리코딩 되는 것, 즉 단 하나의 비디오 PID가 필터링 되는 것이 이후에 제안된다. 만약 하나를 초과하는 비디오 PID가 필터링 되면, 표와 VDU는 각 스트림에 대해 개별적이며 병렬로 만들어진다.
TS와 PES 계층의 리코딩에 대해 유사한 방식으로 파싱이 수행되는데, 즉 동일 항목이 그 저장된 데이터에 배치(spotted)된다. 변하는 것은 TS 리코딩에 대해서는 한 항목이 배치될 때 이 항목을 포함하는 TS 패킷의 TS 헤더의 어드레스가 그 항목의 어드레스 대신에 사용되는 것이다.
디멀티플렉서에 의해 메모리(5)에 저장된 TS 또는 PES 패킷은 시퀀스 헤더, 즉 PES 헤더 또는 화상 헤더를 먼저 검출함으로써 분석된다. 이들 헤더 각각은 MPEG Ⅱ 비디오 표준에 의해 정의된 미리 정의된 시작 코드를 가지며, 인입 TS 패킷 페이로드(packet payloads) 또는 PES 패킷에 용이하게 배치될 수 있다. 두 개의 PES 패킷에 걸쳐 분포되어 있는 화상 또는 시퀀스 시작 코드를 놓치지 않도록 주의하여야 하며, 그리고 두 개의 TS 패킷에 걸쳐 분포되어 있는 화상, 시퀀스 또는 PES 헤더 시작 코드를 놓치지 않도록 주의하여야 한다. 각 검출된 헤더에 대해, 해당 디스크립터(S, P, E)가 만들어진다. PES 헤더와 화상 헤더는 이 디스크립터 내에 삽입될 관련 필드를 추출하도록 더 파싱된다. 시퀀스, PES 패킷, 및 화상은, 첫 번째 시퀀스, 즉 PES 패킷 또는 화상 각각으로부터 시작하여 번호지정된다.
본 실시예에 따라, VDU는 완전한 시퀀스만을 보유한다. VDU의 최대 사이즈는 PES 패킷의 존재와 시퀀스마다 화상의 수에 따라 VDU 내에 저장된 시퀀스의 개수를 제한하며, 미리 정의될 수 있다. 일단 모든 연관 화상과 PES 패킷을 갖는 첫 번째 시퀀스가 기술되었다면, 연관 트릭모드 정보를 저장하는데 필요한 메모리 공간의 사이즈는 알려지며, 각 VDU 내에 기술될 시퀀스의 개수가 결정될 수 있다.
마이크로프로세서(10)는 또한 (파일 시스템을 통해) 오디오, 비디오 및/또는 다른 데이터가 기록될 그 다음 SEU 블록 어드레스를 결정한다. 파싱 프로세스 동안, 스트림 파서(3)는 SEU의 처음에 비해, 주어진 데이터 부분의 바이트 단위(또는 LBA 단위와 바이트 단위)의 오프셋을 결정한다. 이 오프셋은 SEU가 디스크에 라이트 될 때마다 재설정된다. 오프셋은 특히 이후의 데이터 항목, 즉 PES 계층의 리코딩에 대해서는, 시퀀스 헤더, 화상 헤더, PES 헤더에 대해 결정되며, 그리고 TS 계층의 리코딩에 대해서는, 해당 TS 패킷 헤더의 어드레스에 대하여 결정된다. 세 개의 헤더에 대한 SEU 어드레스와 오프셋은 각 디스크립터 내로 삽입된다.
VDU의 생성과 병행하여, 마이크로프로세서는 VDU 표와 시간 표를 생성한다.
VDU 표 내의 엔트리는, VDU가 디스크에 라이트 될 준비가 될 때마다 생성된다. (본 실시예에 따라, VDU는 스트림 파일 시스템의 파일에 라이트 된다). 각 VDU 에 대해, 그 위치와 사이즈가 LBA 단위로 주어진다. VDU가 커버하는 (비디오 스트림의 처음에 비해 초 단위의) 시간 간격은 VDU에 포함된 화상의 개수에 기초하여 계산된다. 이 정보는 또한 VDU 표에 삽입된다.
시간 색인 표는 본 실시예에 따라 매 초당 하나의 엔트리를 포함한다. 그 콘텐츠는 (TS 계층의 리코딩에 대해서는) VDU 및 TS 헤드 오프셋의 콘텐츠 또는 (PES 계층의 리코딩에 대해서는) 시퀀스 헤더 오프셋을 사용하여 결정된다.
물론, 특정 어플리케이션에 따라, TT 엔트리의 주기(periodicity)는 1초보다 하나보다 더 크거나 더 작을 수 있다.
VDU 표와 시간 색인 표 모두는 일단 이들이 생성된 경우에 하드 디스크에 라이트 된다. 이들의 사이즈와 이용 가능한 메모리에 따라, 요구된 대로 이들 표를 분할하며 표의 일부를 로딩하는 것이 필요할 수 있다.
VDU는 의도적으로 메모리의 분할과 메모리 내의 동적 재위치지정을 가능하게 하도록 상대적 어드레싱을 사용하여 링크된 요소로 이루어진다.
비디오의 재생 동안, 트릭모드 정보의 분석은 두 개의 포인터, 즉 하나의 시퀀스로부터 다른 시퀀스로 건너뛰는 시퀀스 디스크립터에 대한 포인터와, 시퀀스 포인터에 의해 지시된 시퀀스 내부의 화상을 가리키는 화상 디스크립터에 대한 포인터를 포함하는 커서 구조를 사용하여 구현된다.
5. 트릭모드 복구
본 실시예에 따라, 트릭모드 비디오 복구 동안, 오디오 데이터는 오디오 디코더에 전송되지 않는다.
트릭모드 목적을 위하여, 하드 디스크 드라이브로부터의 재생이 이제 기술될 것이다. 이 단계 동안, 마이크로프로세서(10)는, 이전에 리코딩 된 비디오 스트림의 실시간 스트림 편집, 트릭모드 정보에 기초한 비디오 억세스 단위의 추출 및 재순서화(reordering), 디코더(9)의 공급(feeding), 및 디코딩과 디스플레이 프로세스의 제어를 수행한다.
하드 디스크 드라이브에 대한 랜덤 억세스 시간이 너무 길어지면, 실제적인 방법은 디스크로부터 단일 비디오 시퀀스를 포함하는 리코딩 된 스트림의 슬라이스(slice)를 메모리(5)로 읽는 것이다. 전체 시퀀스가 메모리(5) 내에 있다면, 그 시퀀스 내의 각 화상(또는 시퀀스 헤더와 같은 다른 데이터)이 비디오 디코더로 전송되도록 억세스 될 수 있다.
PES 파서(6) 및/또는 TS 디멀티플렉서(7)는 해당 PES 계층 또는 TS 계층을 제거하며, PES 헤더, TS 헤더 각각으로부터 더 낮은 계층에 관련된 정보를 추출한다. 직접 버스로부터든 또는 디멀티플렉서(7)로부터든 데이터를 수신할 때, PES 파서는 유효 PES 헤더 시작 코드 이전에 나타나는 임의의 데이터를 거절한다.
트릭모드 재생을 위해, 해당 시퀀스가 하드 디스크로부터 판독된 후에 스트림 내의 화상은 메모리에서 하나씩 억세스된다. 하지만, TS 리코딩 모드에서든 또는 PES 리코딩 모드에서든, PES 헤더는 해당 화상 헤더보다 구조적으로 직접 앞서지 못한다. 환언하면, 화상 헤더는 PES 패킷 페이로드의 처음에 반드시 정열될 필요는 없으며 그리하여 고려되는 화상에 무관한 데이터가 화상 헤더와 PES 헤더 사이에 존재할 수 있다. 그럼에도 불구하고 PES 파서가 올바르게 작동하도록 하기 위하여, 이 PES 헤더를 공급할 필요가 있다. 그렇지 않으면 PES 파서는 비디오 디코더(9)로 화상 데이터를 송신하지 않을 수 있으며, 이로 인해 첫 PES 헤더에 선행하는 모든 데이터가 디코더가 재설정된 후에는 통상 거절된다. 이리하여, PES 헤더가 앞장서지 않은 화상 데이터가 뒤따르는 화상 헤더도 또한 거절될 것이다. 본 실시예에 따라, 더미(dummy) PES 헤더는 디코딩 될 화상의 화상 헤더 이전에 삽입된다. 이리하여 하드 디스크로부터 판독되는 무관련 데이터가 최소로 되며, 디코더(9)로 송신되는 무관련 데이터는 없게 되는, 코히런트(coherent)한 PES 스트림이 복구된다.
정상 속도의 12배로 고속 전진을 수반하는 간단한 예는 더미 PES 헤더의 삽입을 기술하는데 사용된다. 이 예를 위하여, I-타입만의 화상이 억세스되는 것이 제안될 것이다. 이것이 그 경우가 아닌 때, 즉 디스플레이 될 화상이 P 또는 B-타입일 때에, 취해야 할 예비 조처는 이후에 기술될 것이다.
정상 속도의 12배로 고속 전진하는 것은, (그 타입의 화상만이 억세스 된다고 가정하면) 12개 중에서 하나의 화상을 판독하고 디코딩하는 것과 50㎐ 프레임율의 경우에 매 40㎳마다 디코딩 된 화상을 한 화상의 정상 속도로 디스플레이 하는 것을 수반한다.
(a) PES 계층의 레벨에서 스트림 편집
마이크로프로세서(10)의 첫 임무는 하드 디스크 드라이브로부터 추출될 첫 번째 비디오 억세스 단위를 결정하는 것이다. 비디오 스트림의 처음에 비해 시간 T에서 고속 전진이 시작한다고 가정하면, 디스플레이 될 첫 화상은 T 후에 스트림에 존재하는 첫 화상이 된다.
VDU 표와 시간 표에 색인으로 사용되기 위하여, T는 정수의 초 단위(integer number of second)로 절단(truncated)된다. VDU 표를 사용하면, 해당 VDU는 EIDE 인터페이스로부터 요청되며 메모리(즉, 트릭모드 버퍼 영역)(만약 그것이 이미 존재하지 않으면)로 로딩된다.
시간 표는 화상 디스크립터를 포함하는 이 VDU에 시퀀스 디스크립터를 가리킨다. 시퀀스 디스크립터의 콘텐츠는 해당하는 전체 비디오 시퀀스를 메모리(5)로 로딩하는데 사용된다. 디코더(9)는 마이크로프로세서(10)가 디코더(9)의 디코딩 파라미터를 조정할 수 있도록 하기 위한 것이다. 화상 데이터가 뒤따르는 더미 PES 헤더를 전송하기 이전에 시퀀스 헤더를 PES 파서로 전송할 필요가 없을 수 있다.
각 화상이 40㎳를 나타내며 (시퀀스에서 화상의 여러 화상 디스크립터를 가리키는) 화상 리스트를 사용하면, 시간적으로 T에 가장 가까운 화상 디스크립터를 억세스 하는 것이 용이하다. 화상 디스크립터는 메모리에 로딩된 비디오 시퀀스에 화상 헤더의 오프셋을 나타낸다. 이리하여 원하는 화상이 디코더로 송신되며, 그리고 이 디코더는 이 화상을 올바르게 처리하도록 마이크로프로세서(10)에 의해 프로그래밍 된다.
이 경우에, 전송 계층이 이미 제거되었기 때문에 메모리(5)로부터 PES 파서(6)로 데이터가 제공된다.
도 7a 및 도 7b는 디코딩 될 화상을 포함하는 PES 패킷으로 매핑된 순차 화상의 형태로 된 PES 스트림을 나타낸다. 이 스트림의 표시된 부분은, PES 계층만이 리코딩 되었다고 가정하여, 비디오 read FIFO에 저장된 것일 수 있다. 각 화상 데이터는 화상 헤더가 앞장서며, 이 둘은 비디오 억세스 단위를 형성한다. 이 스트림은 기본 비디오 스트림의 콘텐츠와 일반적으로 독립적인 위치에 PES 헤더를 포함한다.
도 7a는 편집되지 않은 PES 스트림을 도시하며, 여기서 화상 n은 디스플레이 될 화상이다. 이 화상은 헤더가 앞선다. 화상 n의 화상 헤더를 포함하는 PES 패킷의 헤더는 화살표로 나타나 있다. 도 7b는 편집된 PES 스트림을 도시하며, 마이크로프로세서(10)는 두 헤더들 사이에 임의의 개입 데이터를 회피하기 위하여 화상 n의 화상 헤더 바로 앞에, 이 더미 PES 헤더를 삽입하였다.
본 실시예에 따라, 더미 PES 헤더는 표 7에 주어진 포맷을 가진다. 이것은 MPEG Ⅱ 시스템 문서에 의해 허용된 가장 짧은 헤더(즉, 9바이트)이며 비디오 read FIFO의 콘텐츠가 화상 헤더 오프셋으로 정의된 어드레스로부터 시작하여 판독되기 전에 비디오 디코더(9)로 송신된다. 그후 디코더는 유효 PES 스트림을 확인하고 마이크로프로세서(10)에 의해 명령받은대로 화상 데이터를 처리할 것이다.
더미 PES 헤더는 디코더로 송신될 비디오 억세스 단위의 시퀀스에 갭이 있을 때마다 삽입된다.
아래 표에서, 표시 '0x'는 16진수 값을 가리킨다.
아래의 경우 문자 'u'는 가변 이진 값을 가리킨다.
더미 PES 헤더
의미
0000 0000 0000 0000 00000001("0x000001") 패킷 시작 코드 접두사
1110 uuuu (여기서 'uuuu'는 "0xE0 -> 0xEF" 사이에서 변한다) 비디오 스트림 번호(uuuu)b
0000 0000 0000 0000("0x0000") PES 패킷 길이
10(7:6)uu(5:4)0(3)0(2)0(1)0(0) PES_scrambling_control이들 두 비트는 그 이전의 PES 패킷 헤더로부터 동일 비트의 복사본이어야 한다PES_Priority low Data_alignment_indicator:비디오 시작 코드는 PES 헤더를 바로 따라오는지 아닌지를 규정하지 않는다.Copyright Original_or_copy:PES 패킷 페이로드는 복사본이다.
00(7:6) PTS_DTA_Flag: PTS 및 DTS 필드들은 존재하지 않음
0(5) ESCR_Flag: ESCR 필드는 존재하지 않음
0(4) ES_rate_Flag: ES_rate field는 존재하지 않음
0(3) DSM_trick_mode_Flag: DSM_trick_mode 필드는 존재하지 않음
0(2) Additional_copy_info_Flag: 해당 필드는 존재하지 않음
0(1) PES_CRC_Flag: 해당 필드는 존재하지 않음
0(0) PES_extension_Flag: 해당 필드는 존재하지 않음
0000 0000("0x00") PES 패킷 헤더 길이(더 이상 PES 헤더 내의 바이트가 아닌)
(b) TS 계층의 레벨에서 스트림 편집
이 경우에, 데이터는 read FIFO(22)로부터 전송 스트림 디멀티플렉서(7)로 전송된다.
TS 계층은 PES 계층에 비해 추가적인 제한을 가지는데: 이것은 편집이 TS 패킷 레벨에서만 행해질 수 있으며, 즉 전체 TS 패킷이 추가 또는 제거되어야만 한다는 것이다. 현존 패킷에 바이트를 삽입 또는 삭제하는 것은, TS 패킷이 188 바이트의 고정된 길이를 가지므로 무효의 TS 스트림으로 된다.
결과적으로 디코딩 될 화상을 포함하는 SEU의 결정은 (a)의 경우에 비해 약간 다른 방식으로 실행된다. 또다시, 화상을 포함하는 비디오 시퀀스를 포함하는 스트림의 슬라이스 전부가 메모리(5)에 로딩된다. 전체 TS 패킷만을 디멀티플렉서(7)로 제공하기 위한 요건에 부합하기 위하여, 디코딩 될 화상의 화상 헤더를 포함하는 TS 패킷의 TS 헤더로부터 시작하여 판독을 시작할 필요가 있다. 트릭모드 정보는 필요한 어드레스 정보를 제공하는데: 즉 TS 스트림 리코딩의 경우에는, 트릭모드 정보 디스크립터의 모든 어드레스가 TS 패킷 경계 상에 적절히 정열된다.
도 8a는 디코딩 될 화상의 화상 헤더를 포함하는 동일 비디오 성분의 패킷(즉 동일한 PID를 가지는 패킷)의 TS 스트림을 나타낸다.
PES 헤더만을 삽입하는 대신에, 전체 TS 패킷이 삽입된다. 이 TS 패킷은 (a)의 경우에서와 같은 이유로 또한 더미 PES 헤더를 포함한다. 도 8b는 TS 패킷을 삽입한 후의 스트림을 도시한다.
삽입된 TS 패킷 헤더는, 화상 헤더를 포함하는 TS 패킷의 TS 패킷 헤더의 것과 동일한 PID 값을 포함한다. TS 패킷 헤더는, 그 다음의 TS 패킷의 값과 일치하도록, 하나씩 감소되며 모듈로 16에서 취한, 화상 헤더를 포함하는 TS 패킷의 TS 패킷 헤더의 것과 동일한 연속_카운트 값(continuity_count value)을 또한 포함한다. 연속 카운트 값은 메모리 내의 스트림에서 직접 판독된다. 적응 필드 플래그(adaptation field flag) 중에서, 불연속 에러 플래그(discontinuity error flag)는 임의의 그 이전의 연속_카운트 값에 비해 불연속을 나타내도록 설정된다. 적응 필드의 길이는 헤더가 포함된 전체 TS 패킷의 길이가 188 바이트가 되도록 선택된다.
TS 페이로드는 이미 기술된 더미 PES 헤더를 포함한다. (a)의 경우와는 달리, 무관련 데이터 또는 무사용 데이터가 디코딩 될 화상의 화상 헤더와 PES 헤더 사이에 존재할 수 있는데, 이는 화상 헤더가 TS 헤더의 끝과 반드시 정열될 필요가 없기 때문이다. 이러한 무관련 데이터를 무시하도록 비디오 디코더에 알려주기 위하여, 삽입된 TS 헤더는 더미 PES 헤더 이후 시퀀스 에러 코드를 또한 포함한다. 도 9는 디코더에 의해 수신되며 PES 계층이 제거된 데이터를 나타낸다. 화상 X는 디코딩 될 화상이다. 디코더의 입력 버퍼는 디코딩 될 이전의 화상, 예를 들어 화상 B의 전송에서 기인하는 화상 B+1에 관해 이전에 수신된 부분 데이터를 여전히 포함한다. 화상 X-1에 관한 데이터는 마이크로프로세서(10)에 의해 삽입된 더미 TS 패킷과 화상 X의 화상 헤더 사이에 존재하는 데이터이다. 더미 TS 패킷의 TS 헤더는 디멀티플렉서(7)에 의해 제거되었으며, 더미 TS 패킷의 페이로드에 포함된 더미 PES 헤더는 PES 파서(6)에 의해 제거되었다. 화상 B+1과 화상 X-1의 부분 데이터 사이에는 다른 코드("0xB4")가 앞장서는 에러 시퀀스 코드("0x00 00 01 B4")가 남아있다.
MPEG Ⅱ 비디오 문서의 섹션 6.2.1과 표 6-1에서 특히 언급된 시퀀스 에러 코드의 검출시에, 디코더(9)는 에러 코드 전에 수신된 모든 데이터와 그 다음 화상 헤더까지 장래에 수신된 모든 데이터를 거절한다. 디코더(9)는 이 동작을 하도록 구성된다.
새로운 문제가 시퀀스 에러 코드의 삽입으로 야기되는데: 즉 일단 PES 파서(6)가 이 스트림에서 PES 헤더를 제거하면, 시퀀스 에러 코드의 첫 바이트(즉 "0x00")와 결합된 삽입된 PES 패킷에 앞서는 PES 패킷의 페이로드의 맨마지막 바이트가 화상 헤더 시작 코드(즉, "0x00 00 01 00")를 구성하는 일이 일어날 수 있다. 이 경우를 회피하기 위하여, 한 바이트의 값("0xB4")은 더미 PES 헤더와 시퀀스 에러 코드 사이에 삽입된다. 이 경우에, 앞서는 PES 패킷 페이로드의 맨마지막 세 바이트가 사실상 "0x00 00 01" 이라면, 이 때 형성된 코드는 다른 시퀀스 에러 코드 ("0x00 00 01 B4")이다. 이 코드가 한 번 존재하는지 또는 두 번 존재하는지는, 비디오 디코더의 동작에 관련되는 한 중요하지 않다. 맨 마지막 세 바이트와 "0xB4"바이트가 시퀀스 에러 코드를 형성하지 않을 때, B4의 존재는 중요하지 않은데, 그 이유는 그 다음의 시퀀스 에러 코드가, 추가적인 "0xB4"를 포함하는, 비디오 디코더의 입력 버퍼의 그 이전의 콘텐츠를 임의의 이벤트에서 제거할 수 있기 때문이다.
더미 PES 헤더와 시퀀스 에러를 가지는 TS 패킷
의미
헤더
0x47 싱크(Sync) 바이트
0(7)1(6)0(5)(PID 5 MSB)(4:0) TS 패킷에 에러 없음PES 패킷의 시작전송 우선권 낮음비디오 스트림 성분 PID의 5 MSB
(PID 8 LSB)(7:0) 비디오 스트림 성분 PID의 8 LSB
00(7:6)11(5:4)(N-1)(3:0) TS 페이로드 스크램블링 안됨적응 필드 이후에 페이로드 따라옴연속_카운트: 이후의 TS 패킷 연속_카운트에서 1을 뺀 것의 값을 가짐(모듈로 16)
0xA9(169Dec) 적응 필드 길이: 183에서-더미 PES 헤더길이(9 바이트)-시퀀스 에러 코드길이(5 바이트)를 합한 것을 뺀 것과 같음
1(7)0000000(6:0) 적응 필드 플래그:불연속 에러가 설정됨
0xFF*168 168 스터핑 바이트
페이로드
0x000x000x01(1110 uuuu)b0x000x00(10uu 0000)b0x000x00 더미 PES 헤더
0xB4 이후에 주어지는 코드가 원치 않는 시퀀스에 포함되지 않도록 보장함
00 00 01 B4 시퀀스 에러 코드
통상, 트릭모드 동안 하나씩 억세스 되는 화상은 반드시 인트라 타입 화상(intra-type picture)일 필요는 없다. 따라서, 다른 화상을 디코딩 하며 특정 화상을 디코딩 하기 위하여 메모리에 이 다른 화상을 유지할 필요가 있을 수 있다. 만약 디스플레이 될 화상이 P 타입 화상이라면, (디스플레이 될 화상의 화상 디스크립터에 선행하는 화상 디스크립터를 사용하여 찾을 수 있는) 선행하는 I 타입 화상을 디코딩 하며, 그리고 이 I 타입 화상을 먼저 디코딩 할 필요가 있을 것이다. 화상들이 디스플레이 되어야 하는 순서에 따르지 않고 디코딩 되어야 할 순서에 따라 그 화상들이 전송 - 그리고 저장- 된다는 것을 기억하여야 한다. 이 순서는 일반적으로 디스플레이 순서와는 다르다. 비디오 디코더는 I 타입 화상을 디스플레이 하지 않고, I 타입 화상을 디코딩만 할 수 있도록 마이크로프로세서(10)에 의해 명령을 받을 수 있다. P 타입 화상은 그후 디코딩 되고 디스플레이 된다.
유사하게, 만약 B 타입의 화상이 디코딩 되어야 한다면, 앞장서고 따라오는 I 및/또는 P 타입 화상이 하드 디스크로부터 추출되고 먼저 디코딩 되어야 한다.
본 실시예는 주로 TS 스트림 패킷 리코딩 및 재생에 관한 것이지만, 물론 기타 계층의 리코딩/재생, 특히 PES 계층은 본 발명의 범주 밖에 있지 않다.
더구나, 본 실시예에 따라, 마이크로프로세서(10)가 하드 디스크 드라이브의 파일 시스템을 관리할지라도, 이러한 임무는 수신기, 특히 비디오 디코더(9)에서 다른 프로세서에 의해서도 수행될 수 있다.
또한 본 실시예에 사용되는 대용량 저장 디바이스가 하드 디스크 드라이브이지만, 다른 타입의 디바이스도 사용될 수 있다. 예를 들어, 리코딩 가능한 콤팩트디스크나 디지털 비디오 디스크도 사용될 수 있다.
상술한 바와 같이, 본 발명은 디지털 비디오 환경에서 트릭모드 정보를 코딩하기 위한 방법 및 이 정보를 생성하기 위한 디바이스에 이용된다.

Claims (18)

  1. 디지털 비디오 시스템에서 리코딩(recording) 될 디지털 비디오 스트림에 대한 트릭모드 정보를 생성하기 위한 방법으로서,
    상기 비디오 스트림의 구조를 분석하며 상기 스트림의 복수의 대상 디스크립터를 추론(derive)하는 단계와,
    상기 스트림을 리코딩 매체에 라이트(write) 하는 단계와,
    상기 리코딩 매체 위의 상기 대상의 어드레스를 기술하는 정보를 상기 대상 디스크립터에 삽입하는 단계를
    특징으로 하는 트릭모드 정보 생성 방법.
  2. 제 1 항에 있어서, 각 디스크립터는
    상기 디스크립터와 연관된 상기 대상을 포함하는 리코딩 매체 데이터 블록을 식별하는 정보와,
    상기 리코딩 매체 데이터 블록 내에 상기 대상의 위치를 식별하는 정보를 포함하는, 트릭모드 정보 생성 방법.
  3. 제 1 항 또는 제 2 항에 있어서, 각 디스크립터는 그 이전의 디스크립터 및/또는 그 이후의 디스크립터와의 링크를 포함하는, 트릭모드 정보 생성 방법.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서, 각 디스크립터는 상기 리코딩된 스트림의 처음에 대해 상기 대상의 순위(rank)를 제공하는 식별자를 포함하는, 트릭모드 정보 생성 방법.
  5. 제 1 항 중 제 4 항 중 어느 한 항에 있어서, 비디오 기술 단위(video description unit) 내의 시간 간격에 해당하는 대상의 디스크립터를 모으는 단계와,
    모든 비디오 기술 단위의 비디오 기술 단위 색인 표를 생성하는 단계를 더 포함하는, 트릭모드 정보 생성 방법.
  6. 제 5 항에 있어서, 비디오 기술 단위는 N개의 화상 시퀀스에 관한 모든 디스크립터를 포함하며, 여기서 N은 1보다 더 큰 정수이거나 1인, 트릭모드 정보 생성 방법.
  7. 제 5 항 또는 제 6 항에 있어서, 비디오 기술 단위의 기저 어드레스(base address)에 관한 디스크립터에 대한 포인터가 제공되는, 트릭모드 정보 생성 방법.
  8. 제 1 항 내지 제 7 항 중 어느 한 항에 있어서, 상기 디스크립터는 화상 시퀀스, 화상, 및 PES 패킷에 관한 디스크립터를 포함하는, 트릭모드 정보 생성 방법.
  9. 제 8 항에 있어서, 시퀀스 디스크립터는 상기 시퀀스에 첫 번째 화상 디스크립터와 맨 마지막 화상 디스크립터에 대한 포인터를 포함하는, 트릭모드 정보 생성 방법.
  10. 제 8 항 또는 제 9 항에 있어서, 시퀀스 디스크립터는 상기 리코딩 매체 데이터 블록에 시퀀스 헤더 및 그 확장(sequence header and its extensions)의 위치를 식별하는 데이터를 포함하는, 트릭모드 정보 생성 방법.
  11. 제 8 항 내지 제 10 항 중 어느 한 항에 있어서, 화상 디스크립터는 PES 패킷과 화상 헤더가 정열되어 있는지 여부에 대한 정보를 포함하는, 트릭모드 정보 생성 방법.
  12. 제 3 항 및 제 8 항 내지 제 10 항 중 어느 한 항에 있어서, 화상 디스크립터는 상기 리코딩된 화상 데이터 내에 삽입된 PES 헤더에 해당하는 PES 디스크립터에 대한 포인터를 포함하는, 트릭모드 정보 생성 방법.
  13. 제 8 항 내지 제 12 항 중 어느 한 항에 있어서, 화상 디스크립터는 상기 화상을 포함하는 시퀀스의 시퀀스 디스크립터에 대한 포인터를 더 포함하는, 트릭모드 정보 생성 방법.
  14. 제 1 내지 제 4 항 또는 제 6 항 내지 제 13 항 중 어느 한 항과 결합된 제 5 항에 있어서, 상기 리코딩 매체 위에 비디오 기술 단위를 리코딩 하는 단계와,
    상기 리코딩 매체 위에 상기 비디오 기술 단위의 어드레스를 상기 비디오 기술 단위 표(video description unit table)에 삽입하는 단계를 더 포함하는, 트릭모드 정보 생성 방법.
  15. 제 1 항 내지 제 4 항 과 제 6 항 내지 제 14 항 중 어느 한 항과 결합된 제 5 항에 있어서, 각 비디오 기술 단위에 대해, 다음의 데이터, 즉
    - 상기 비디오 기술 단위가 리코딩 되는 첫 리코딩 매체 데이터 블록의 어드레스와,
    - 상기 비디오 기술 단위에 의해 점유된 리코딩 매체 데이터 블록의 수를
    상기 비디오 기술 단위 표 내에 포함하는 단계를 더 포함하는, 트릭모드 정보 생성 방법.
  16. 제 1 항 내지 제 4 항 과 제 6 항 내지 제 15 항 중 어느 한 항과 결합된 제 5 항에 있어서, 상기 비디오 기술 단위 표는 각 비디오 기술 단위에 대해 상기 단위에 의해 기술되는 비디오 스트림의 시간 간격을 정의하는 정보를 더 포함하는, 트릭모드 정보 생성 방법.
  17. 제 1 항 내지 제 16 항 중 어느 한 항에 있어서, 복수의 시간 색인을 포함하는 시간 색인 표와, 각 색인에 대해 상기 색인으로부터 시작하여 상기 비디오 스트림을 복구하는데 필요한 상기 데이터의 처음의 어드레스를 리코딩 매체 위에 생성하는 단계를 더 포함하는, 트릭모드 정보 생성 방법.
  18. 제 17 항과 결합된 제 5 항에 있어서, 상기 시간 색인 표는 각 색인에 대해 주어진 색인에 해당하는 시퀀스 디스크립터의, 비디오 기술 단위의 기저 어드레스에 관한, 포인터를 더 포함하는, 트릭모드 정보 생성 방법.
KR1020027003982A 1999-10-07 2000-10-06 디지털 비디오 시스템에서 트릭모드 생성을 위한 방법 및디바이스 KR100741433B1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
FR9912481 1999-10-07
FR99/12481 1999-10-07
EP00400941.1 2000-04-05
EP00400941A EP1148727A1 (en) 2000-04-05 2000-04-05 Method and device for decoding a digital video stream in a digital video system using dummy header insertion
EP00402115.0 2000-07-24
EP00402115A EP1148728A1 (en) 2000-04-05 2000-07-24 Trick play signal generation for a digital video recorder

Publications (2)

Publication Number Publication Date
KR20020033830A true KR20020033830A (ko) 2002-05-07
KR100741433B1 KR100741433B1 (ko) 2007-07-23

Family

ID=27223601

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020027003982A KR100741433B1 (ko) 1999-10-07 2000-10-06 디지털 비디오 시스템에서 트릭모드 생성을 위한 방법 및디바이스
KR1020027004113A KR100758001B1 (ko) 1999-10-07 2000-10-09 비디오 스트림의 특별 재생 모드에 관한 정보를 관리하기 위한 디바이스 및 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020027004113A KR100758001B1 (ko) 1999-10-07 2000-10-09 비디오 스트림의 특별 재생 모드에 관한 정보를 관리하기 위한 디바이스 및 방법

Country Status (9)

Country Link
EP (2) EP1222822B1 (ko)
JP (2) JP2003511918A (ko)
KR (2) KR100741433B1 (ko)
CN (2) CN1159917C (ko)
AT (1) ATE275800T1 (ko)
AU (2) AU7786800A (ko)
DE (1) DE60013624T2 (ko)
MX (2) MXPA02002798A (ko)
WO (2) WO2001026375A1 (ko)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002077818A (ja) * 2000-09-04 2002-03-15 Pioneer Electronic Corp 蓄積再生システム、トランスポートストリームの蓄積方法及びトランスポートストリームの再生方法
FR2818788B1 (fr) * 2000-12-26 2005-06-03 Thomson Multimedia Sa Procede et dispositif d'enregistrement de donnees numeriques multimedia, disque dur, support d'enregistrement et suite de donnees numeriques associes
US6714721B2 (en) * 2001-06-18 2004-03-30 Thomson Licensing Changing a playback speed for video presentation recorded in a non-progressive frame structure format
US7215871B2 (en) 2001-07-27 2007-05-08 Thomson Licensing Changing a playback speed for video presentation recorded in a field structure format
KR20030087193A (ko) * 2002-05-07 2003-11-14 엘지전자 주식회사 멀티 채널 방송 스트림의 기록 관리방법
EP1508245A1 (en) * 2002-05-28 2005-02-23 Matsushita Electric Industrial Co., Ltd. Moving picture data reproducing device with improved random access
FR2842979B1 (fr) 2002-07-24 2004-10-08 Thomson Licensing Sa Procede et dispositif de traitement de donnees numeriques
EP1713252A1 (en) * 2004-01-22 2006-10-18 Semiconductores Investigaci n Y Diseno S.A. -(SIDSA) Integrated circuit for the processing and subsequent routing of motion picture expert group (mpeg) data between interfaces
PL2207183T3 (pl) * 2004-04-28 2012-09-28 Panasonic Corp Urządzenie do generowania strumienia ruchomego obrazu, urządzenie do kodowania ruchomego obrazu, urządzenie do multipleksowania ruchomego obrazu oraz urządzenie do dekodowania ruchomego obrazu
US8797926B2 (en) 2004-06-04 2014-08-05 Apple Inc. Networked media station
US8443038B2 (en) 2004-06-04 2013-05-14 Apple Inc. Network media device
US10972536B2 (en) 2004-06-04 2021-04-06 Apple Inc. System and method for synchronizing media presentation at multiple recipients
US20070110074A1 (en) 2004-06-04 2007-05-17 Bob Bradley System and Method for Synchronizing Media Presentation at Multiple Recipients
US7631119B2 (en) 2004-06-25 2009-12-08 Apple Inc. Techniques for providing audio for synchronized playback by multiple devices
FR2880497A1 (fr) * 2005-01-05 2006-07-07 Thomson Licensing Sa Dispositif et procede d'enregistrement de donnees
KR100727933B1 (ko) * 2005-02-26 2007-06-13 삼성전자주식회사 멀티미디어 컨텐츠에 포함된 미디어 컨텐츠의 일부분을 탐색하는 방법 및 장치
US7620753B1 (en) 2005-03-17 2009-11-17 Apple Inc. Lockless access to a ring buffer
US7792024B1 (en) 2005-03-18 2010-09-07 Apple Inc. IO latency reduction
KR20080081190A (ko) 2005-12-23 2008-09-08 코닌클리케 필립스 일렉트로닉스 엔.브이. 데이터 스트림 처리 장치 및 방법
US8588575B2 (en) 2010-04-26 2013-11-19 Eldon Technology Limited Apparatus and methods for high-speed video presentation
FR3000633B1 (fr) * 2012-12-28 2015-01-09 Thales Sa Procede et systeme pour la synchronisation pour trame dvb-s2 et sa structure de trame associee
US9749679B2 (en) 2015-01-06 2017-08-29 Arris Enterprises Llc Method for efficient processing of BTP enabled MPEG4 stream
US11297369B2 (en) 2018-03-30 2022-04-05 Apple Inc. Remotely controlling playback devices
US10993274B2 (en) 2018-03-30 2021-04-27 Apple Inc. Pairing devices by proxy
US10783929B2 (en) 2018-03-30 2020-09-22 Apple Inc. Managing playback groups
US10614857B2 (en) 2018-07-02 2020-04-07 Apple Inc. Calibrating media playback channels for synchronized presentation
US11666560B2 (en) * 2020-09-24 2023-06-06 George Mason University Anti-fibrotic agent
US11853218B2 (en) * 2020-11-20 2023-12-26 Western Digital Technologies, Inc. Semi and cached TLP coalescing
CN113297112B (zh) * 2021-04-15 2022-05-17 上海安路信息科技股份有限公司 PCIe总线的数据传输方法、系统及电子设备

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3276124D1 (en) * 1981-08-18 1987-05-27 Hitachi Construction Machinery Hydraulic circuit of hydraulic power shovel
DE3132923A1 (de) * 1981-08-20 1983-03-03 Basf Ag, 6700 Ludwigshafen Verfahren zur herstellung von 2,4,6-triisocyanato-toluol
JPH05344495A (ja) * 1992-06-10 1993-12-24 Ricoh Co Ltd 動画像符号化方式
US5481543A (en) * 1993-03-16 1996-01-02 Sony Corporation Rational input buffer arrangements for auxiliary information in video and audio signal processing systems
JP3359745B2 (ja) 1994-07-29 2002-12-24 シャープ株式会社 動画像再生装置、及び動画像記録装置
JP3791024B2 (ja) * 1994-09-12 2006-06-28 松下電器産業株式会社 映像信号記録再生装置
JP3248380B2 (ja) * 1994-12-15 2002-01-21 ソニー株式会社 データ復号化装置およびデータ復号化方法
JP3953512B2 (ja) * 1994-12-23 2007-08-08 テラヨン コミュニケーションズ システムズ, インコーポレイテッド 分散ビデオデータを観察するためのvcrのようなトリック・モード機能を提供するための方法ならびにその装置
JP3491365B2 (ja) * 1995-01-31 2004-01-26 ソニー株式会社 符号化データ復号方法および復号装置
JP3604186B2 (ja) * 1995-02-16 2004-12-22 三菱電機株式会社 記録媒体の記録方法及び再生方法
JP3329979B2 (ja) * 1995-02-24 2002-09-30 株式会社日立製作所 光ディスク及び光ディスク再生装置
DE19543017A1 (de) * 1995-11-18 1997-05-22 Thomson Brandt Gmbh Verfahren zur Erzeugung von Bildsequenzen für einen schnellen Suchvorgang bei einem Filmabspielgerät und Vorrichtung zur Durchführung des Verfahrens
JP3194694B2 (ja) * 1995-12-01 2001-07-30 松下電器産業株式会社 ビデオサーバ装置
US5630005A (en) * 1996-03-22 1997-05-13 Cirrus Logic, Inc Method for seeking to a requested location within variable data rate recorded information
JP3663017B2 (ja) * 1996-10-02 2005-06-22 株式会社東芝 再生装置と再生方法
JPH10150635A (ja) * 1996-11-19 1998-06-02 Sony Corp 映像信号再生装置及び映像信号の再生方法
JPH10150636A (ja) * 1996-11-19 1998-06-02 Sony Corp 映像信号再生装置及び映像信号の再生方法
JPH10210419A (ja) * 1997-01-23 1998-08-07 Matsushita Electric Ind Co Ltd ビデオサーバ装置、端末装置及びデータ送信方法
JP3491533B2 (ja) * 1998-07-24 2004-01-26 ヤマハ株式会社 ディジタルオーディオデータの再生方法及び装置
JP2001069464A (ja) * 1999-08-26 2001-03-16 Victor Co Of Japan Ltd 映像信号再生装置
JP2001103427A (ja) * 1999-09-30 2001-04-13 Matsushita Electric Ind Co Ltd 圧縮画像再生装置及びプログラム記録媒体

Also Published As

Publication number Publication date
WO2001026375A1 (en) 2001-04-12
WO2001026375A8 (en) 2001-06-14
CN1194551C (zh) 2005-03-23
DE60013624D1 (de) 2004-10-14
AU7786800A (en) 2001-05-10
MXPA02002797A (es) 2002-10-23
CN1378748A (zh) 2002-11-06
KR100741433B1 (ko) 2007-07-23
CN1159917C (zh) 2004-07-28
AU1384401A (en) 2001-05-10
KR20020037055A (ko) 2002-05-17
EP1222822A2 (en) 2002-07-17
JP2003511918A (ja) 2003-03-25
EP1224810A1 (fr) 2002-07-24
KR100758001B1 (ko) 2007-09-12
WO2001026374A1 (fr) 2001-04-12
MXPA02002798A (es) 2003-10-14
ATE275800T1 (de) 2004-09-15
DE60013624T2 (de) 2005-10-13
EP1222822B1 (en) 2004-09-08
CN1378747A (zh) 2002-11-06
JP2003511810A (ja) 2003-03-25

Similar Documents

Publication Publication Date Title
KR100741433B1 (ko) 디지털 비디오 시스템에서 트릭모드 생성을 위한 방법 및디바이스
US6823131B2 (en) Method and device for decoding a digital video stream in a digital video system using dummy header insertion
JP5765828B2 (ja) プログラムを記録するための情報の処理方法
AU716349B2 (en) Processing of digital data and program guide information
JP4646148B2 (ja) プログラムを表すパケット化されたデータストリームを復号化する方法
US5844478A (en) Program specific information formation for digital data processing
EP1148728A1 (en) Trick play signal generation for a digital video recorder
EP1148729B1 (en) Method and device for decoding a digital video stream in a digital video system using dummy header insertion

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20020327

Patent event code: PA01051R01D

Comment text: International Patent Application

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20051005

Comment text: Request for Examination of Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20061027

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20070425

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20070713

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20070716

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
G170 Re-publication after modification of scope of protection [patent]
PG1701 Publication of correction
PR1001 Payment of annual fee

Payment date: 20100712

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20110620

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20120620

Start annual number: 6

End annual number: 6

FPAY Annual fee payment

Payment date: 20130620

Year of fee payment: 7

PR1001 Payment of annual fee

Payment date: 20130620

Start annual number: 7

End annual number: 7

FPAY Annual fee payment

Payment date: 20140630

Year of fee payment: 8

PR1001 Payment of annual fee

Payment date: 20140630

Start annual number: 8

End annual number: 8

FPAY Annual fee payment

Payment date: 20150619

Year of fee payment: 9

PR1001 Payment of annual fee

Payment date: 20150619

Start annual number: 9

End annual number: 9

FPAY Annual fee payment

Payment date: 20160624

Year of fee payment: 10

PR1001 Payment of annual fee

Payment date: 20160624

Start annual number: 10

End annual number: 10

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20180424