KR20010050766A - 트랜스포트 스트림 기록 장치 및 방법, 트랜스포트 스트림재생 장치 및 방법, 및 프로그램 기록 매체 - Google Patents

트랜스포트 스트림 기록 장치 및 방법, 트랜스포트 스트림재생 장치 및 방법, 및 프로그램 기록 매체 Download PDF

Info

Publication number
KR20010050766A
KR20010050766A KR1020000057428A KR20000057428A KR20010050766A KR 20010050766 A KR20010050766 A KR 20010050766A KR 1020000057428 A KR1020000057428 A KR 1020000057428A KR 20000057428 A KR20000057428 A KR 20000057428A KR 20010050766 A KR20010050766 A KR 20010050766A
Authority
KR
South Korea
Prior art keywords
information
transport
time
transport stream
packet
Prior art date
Application number
KR1020000057428A
Other languages
English (en)
Other versions
KR100564181B1 (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 KR20010050766A publication Critical patent/KR20010050766A/ko
Application granted granted Critical
Publication of KR100564181B1 publication Critical patent/KR100564181B1/ko

Links

Classifications

    • 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
    • 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/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main 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/433Content storage operation, e.g. storage operation in response to a pause request, caching 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/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
    • H04N21/4345Extraction or processing of SI, e.g. extracting service information from an MPEG 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • 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/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
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2541Blu-ray discs; Blue laser DVR discs
    • 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/87Regeneration of colour television signals
    • H04N9/88Signal drop-out compensation
    • H04N9/888Signal drop-out compensation for signals recorded by pulse code modulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Television Signal Processing For Recording (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

사용자 커맨드에 신속하게 응답하는 랜덤 액세스 재생이 실현된다. 스트림 해석블럭은 입력된 트랜스포트 스트림들을 순차적으로 해석하여 엔트리 포인트 데이터를 획득한다. PLL블럭으로부터 입력된 불연속 발생 플래그에 대응하여 불연속점 데이터가 획득된다. 순차적으로 입력된 트랜스포트 패킷들을 해석하여 마크점 데이터를 획득한다. 스트림 데이터베이스 작성블럭은 불연속점 데이터 및 마크점 데이터를 이용하여 스트림 데이터베이스를 작성한다. 스트림 데이터베이스는 기록 매체 상에 기록된다.

Description

트랜스포트 스트림 기록 장치 및 방법, 트랜스포트 스트림 재생 장치 및 방법, 및 프로그램 기록 매체{TRANSPORT STREAM RECORDING APPARATUS AND METHOD, TRANSPORT STREAM REPRODUCING APPARATUS AND METHOD, AND PROGRAM RECORDING MEDIUM}
본 발명은 일반적으로 트랜스포트 스트림 기록 장치 및 트랜스포트 스트림 기록 방법, 트랜스포트 스트림 재생 장치 및 트랜스포트 스트림 재생 방법, 및 프로그램 기록 매체에 관한 것이다. 예를 들면, 본 발명은 예를 들어 기록된 비디오 스트림이 랜덤 액세스 방식으로 재생될 수 있도록 MPEG 비디오 스트림을 데이터 기록 매체 상에 기록하고 그 MPEG 비디오 스트림을 재생하는 데 이용하기에 적합한 트랜스포트 스트림 기록 장치 및 트랜스포트 스트림 기록 방법, 트랜스포트 스트림 재생 장치 및 트랜스포트 스트림 재생 방법, 및 프로그램 기록 매체에 관한 것이다.
MPEG (Moving Picture Experts Group) 2 트랜스포트 스트림은 일본, 유럽 및 미국에서의 지상 디지털 방송 및 위성 디지털 방송에 이용된다. 즉, 디지털 방송파로서의 트랜스포트 스트림들은 방송 프로그램들의 비디오 및 오디오 신호에 대응하는 패킷화된 MPEG 비디오 및 오디오 스트림들에 의해 시분할 방식으로 다중화된다.
만일 이들 트랜스포트 스트림이 수신기 측에서 디지털 신호의 형태로 기록될 수 있다면, 사용자들은 화상 및 음향 품질의 열화 없이 프로그램들을 반복적으로 시청할 수 있다.
또한, 하드 디스크 및 광 디스크와 같은 랜덤 액세스 가능한 기록 매체 상에 트랜스포트 스트림을 기록할 경우 사용자에 의해 지정된 임의의 시점으로부터 방송 프로그램이 재생될 수 있는 랜덤 액세스 재생을 실현할 수 있다.
MPEG 비디오 시스템에서는, I 픽처, B 픽처, 및 P 픽처가 적절히 배열된다. B 픽처 및 P 픽처의 디코딩은 과거에 디코딩된 화상 데이터를 사용하므로, I 픽처만이 이들 3종류의 화상의 재생 개시 위치가 될 수 있다. 그러므로, 사용자 지정 재생 개시 위치로부터 랜덤 액세스 재생이 실행될 때, 지정된 재생 개시 위치에 가장 근접한 I 픽처가 검색되고 그 I 픽처에서 재생이 시작된다.
그러나, 기록된 트랜스포트 스트림으로부터 지정된 재생 개시 위치에 가장 근접한 I 픽처를 검색하기 위해서는, 트랜스포트 스트림으로부터 MPEG 비디오 패킷들을 추출하여 각 MPEG 패킷의 헤더 및 페이로드를 해석해야 한다. 이러한 해석 및 추출은 시간이 소요되므로, 사용자 지정에 응하여 신속한 랜덤 액세스 재생이 실현될 수 없다고 하는 문제가 제기된다.
그러므로, 본 발명의 목적은 기록될 트랜스포트 스트림 내의 I 픽처를 검출함으로써 그리고 트랜스포트 스트림의 데이터베이스로서 불연속 정보와 함께 I 픽처의 데이터가 저장되는 패킷을 식별하기 위한 정보를 데이터 기록 매체 상에 기록함으로써 사용자 커맨드에 응하여 신속한 랜덤 액세스 재생을 실현하는 데 있다.
본 발명의 실행함에 있어서 그 제1 국면에 따르면, 기록 매체 상에 트랜스포트 스트림을 기록하기 위한 트랜스포트 스트림 기록 장치로서, 상기 트랜스포트 스트림을 구성하는 트랜스포트 패킷으로부터, 상기 트랜스포트 스트림 내의 불연속점을 검출하기 위한 검출기, 상기 불연속점에 따라서 불연속점 정보를 생성하기 위한 불연속점 정보 생성기, 및 상기 불연속점 정보와 함께 상기 기록 매체 상에 상기 트랜스포트 패킷을 기록하기 위한 기록 유닛을 포함하는 트랜스포트 스트림 기록 장치가 제공된다.
본 발명의 제2 국면에 따르면, 상기 검출기가, 상기 트랜스포트 스트림 내에 위치하는 기준 시간 정보를 추출하기 위한 제1 추출블럭, 상기 기준 시간 정보에 기초하여 시스템 시간 정보를 생성하기 위한 시간 정보 생성기, 및 상기 기준 시간 정보 내의 불연속의 발생을 검출하기 위한 시간 불연속 검출기를 포함하는 트랜스포트 스트림 기록 장치가 제공된다.
본 발명의 제3 국면에 따르면, 상기 불연속점 정보 생성기가, 상기 불연속 정보로서, 시간축을 식별하기 위한 시간축 식별 정보 및 상기 시간축의 개시 시간에 대응하는 위치 정보를 생성하는 트랜스포트 스트림 기록 장치가 제공된다.
본 발명의 제4 국면에 따르면, 상기 불연속점 정보 생성기가, 상기 시간축 식별 정보로서, 상기 시간축의 개시 시간에 대응하는 상기 시스템 시간 정보 및 상기 시간축의 종료 시간에 대응하는 상기 시스템 시간 정보를 생성하는 트랜스포트 스트림 기록 장치가 제공된다.
본 발명의 제5 국면에 따르면, 상기 불연속점 정보 생성기가, 상기 시간축 식별 정보로서, 상기 시간축 상의 디스플레이 개시 시간에 대응하는 상기 시스템 시간 정보 및 상기 시간축 상의 디스플레이 종료 시간에 대응하는 상기 시스템 시간 정보를 생성하는 트랜스포트 스트림 기록 장치가 제공된다.
본 발명의 제6 국면에 따르면, 상기 검출기가, 상기 트랜스포트 스트림 내에 배열된 프로그램 정보에 기초하여, 프로그램 내용이 변하는 포인트를 추출하기 위한 제2 추출블럭를 포함하는 트랜스포트 스트림 기록 장치가 제공된다.
본 발명의 제7 국면에 따르면, 상기 트랜스포트 패킷들로부터, 재생 개시 위치를 제공할 수 있는 데이터를 포함하는 트랜스포트 패킷을 추출하기 위한 제1 해석기, 및 상기 데이터를 포함하는 상기 트랜스포트 패킷을 식별하기 위한 엔트리 포인트 맵(entry point map)을 생성하기 위한 엔트리 포인트 맵 생성기를 더 포함하고, 상기 기록 유닛은, 상기 불연속점 정보와 함께, 상기 트랜스포트 스트림에 대응하는 상기 데이터베이스로서 상기 기록 매체 상에 상기 엔트리 포인트 맵을 기록하는 트랜스포트 스트림 기록 장치가 제공된다.
상기 제1 해석기는 상기 재생 개시 위치를 제공할 수 있는 데이터가 기술되어 있는 트랜스포트 패킷으로서 I 픽처 데이터가 기술되어 있는 트랜스포트 패킷을 추출하도록 구성된다. 상기 엔트리 포인트 맵 생성기는 상기 I 픽처 데이터가 기술되어 있는 트랜스포트 패킷에 관한 위치 정보 및 상기 I 픽처 PTS를 이용하여 엔트리 포인트 맵을 생성하도록 구성된다.
본 발명의 제8 국면에 따르면, 상기 트랜스포트 패킷들로부터 마크점(mark point)을 제공하는 데이터를 포함하는 트랜스포트 패킷을 추출하기 위한 제2 해석기, 및 상기 마크점을 제공하는 상기 데이터를 포함하는 상기 트랜스포트 패킷을 식별하기 위한 마크점 정보를 생성하기 위한 마크점 정보 생성기를 더 포함하고, 상기 기록 유닛은 상기 불연속점 정보와 함께 상기 트랜스포트 스트림에 대응하는 상기 데이터베이스로서 상기 기록 매체 상에 상기 마크점 정보를 기록하는 트랜스포트 스트림 기록 장치가 제공된다.
본 발명의 제9 국면에 따르면, 상기 마크점 정보 생성기가, 상기 마크점의 시간 정보 및 상기 시간 정보가 속하는 시간축을 식별하기 위한 시간축 식별 정보를 이용하여 상기 마크점 정보를 생성하는 트랜스포트 스트림 기록 장치가 제공된다.
본 발명의 제10 국면에 따르면, 기록 매체 상에 트랜스포트 스트림을 기록하기 위한 트랜스포트 스트림 기록 방법으로서, 상기 트랜스포트 스트림을 구성하는 트랜스포트 패킷으로부터, 상기 트랜스포트 스트림 내의 불연속점을 검출하는 단계, 상기 불연속점에 따라서 불연속점 정보를 생성하는 단계, 및 상기 불연속점 정보와 함께 상기 기록 매체 상에 상기 트랜스포트 패킷을 기록하는 단계를 포함하는 트랜스포트 스트림 기록 방법이 제공된다.
본 발명의 제11 국면에 따르면, 데이터 기록 매체 상에 입력된 트랜스포트 스트림을 기록하기 위한 컴퓨터 판독 가능한 프로그램을 기록한 프로그램 기록 매체로서, 상기 프로그램은, 상기 트랜스포트 스트림을 구성하는 트랜스포트 패킷으로부터, 상기 트랜스포트 스트림 내의 불연속점을 검출하는 단계, 상기 불연속점에 따라서 불연속점 정보를 생성하는 단계, 및 상기 불연속점 정보와 함께 상기 기록 매체 상에 상기 트랜스포트 패킷을 기록하는 단계를 포함하는 프로그램 기록 매체가 제공된다.
본 발명의 제12 국면에 따르면, 기록 매체 상에 기록된 트랜스포트 스트림을 재생하기 위한 트랜스포트 스트림 재생 장치로서, 상기 기록 매체로부터 상기 트랜스포트 스트림을 재생하기 위한 재생 유닛, 상기 기록 매체로부터 상기 트랜스포트 스트림의 시간축 식별 정보 및 엔트리 포인트 맵이 재생되도록 제어를 실행하기 위한 재생 제어기, 및 재생 개시 위치를 찾아서 상기 시간축 식별 정보 및 상기 엔트리 포인트 맵을 검색하기 위한 제어기를 포함하며, 상기 재생 제어기는 상기 재생 개시 위치에 따라서 상기 기록 매체가 판독되도록 상기 재생 유닛을 제어하는 트랜스포트 스트림 재생 장치가 제공된다.
본 발명의 제13 국면에 따르면, 기록 매체로부터 트랜스포트 스트림을 재생하기 위한 트랜스포트 스트림 재생 방법으로서, 상기 재생 매체로부터 상기 트랜스포트 스트림의 시간축 식별 정보 및 엔트리 포인트 맵을 재생하는 단계, 재생 개시 위치를 찾아서 상기 시간축 식별 정보 및 상기 엔트리 포인트 맵을 검색하는 단계, 및 상기 재생 개시 위치에 따라서 상기 기록 매체를 판독하는 단계를 포함하는 트랜스포트 스트림 재생 방법이 제공된다.
본 발명의 제14 국면에 따르면, 기록 매체로부터 트랜스포트 스트림을 재생하기 위한 컴퓨터 판독 가능한 프로그램을 기록한 프로그램 기록 매체로서, 상기 프로그램은, 상기 재생 매체로부터 상기 트랜스포트 스트림의 시간축 식별 정보 및 엔트리 포인트 맵을 재생하는 단계, 재생 개시 위치를 찾아서 상기 시간축 식별 정보 및 상기 엔트리 포인트 맵을 검색하는 단계, 및 상기 재생 개시 위치에 따라서 상기 기록 매체를 판독하는 단계를 포함하는 프로그램 기록 매체가 제공된다.
본 발명에 따른 트랜스포트 스트림 기록 장치 및 방법 및 제1 기록 매체 상에 기록된 프로그램에서는, 코딩 정보 내의 불연속점의 검출을 위하여 트랜스포트 패킷이 해석되고, 그 해석 결과에 따라서, 불연속이 발생한 경우의 불연속점 정보가 작성된다. 게다가, 데이터 기록 매체 상에 트랜스포트 패킷 데이터가 기록되고 트랜스포트 스트림에 대응하는 데이터베이스로서 상기 데이터 기록 매체 상에 상기 불연속점 정보가 기록된다.
본 발명에 따른 트랜스포트 스트림 기록 장치 및 방법 및 제2 기록 매체 상에 기록된 프로그램에서는, 데이터 기록 매체로부터 트랜스포트 스트림에 대응하는 데이터베이스가 얻어진다. 게다가, 지정된 재생 개시 위치를 트랜스포트 스트림에 대응하는 데이터베이스 내에 포함된 정보와 비교하여 재생 개시 허용 위치를 찾는다. 데이터베이스 내에 포함된 정보를 이용함으로써, 재생 개시 허용 위치에 대응하는 트랜스포트 패킷이 존재하는 데이터 기록 매체 상의 어드레스가 계산된다. 트랜스포트 패킷의 판독은 데이터 기록 매체 상의 계산된 어드레스로부터 시작된다.
도 1은 본 발명의 일 실시예로서 실시된 기록 장치의 구성을 도시하는 블럭도.
도 2a, 2b 및 2c는 데이터 기록 매체 상에 기록될 DVR 트랜스포트 패킷을 도시하는 도면.
도 3은 도 1에 도시된 PLL 블럭을 도시하는 블럭도.
도 4는 기록 장치에 의한 트랜스포트 스트림 기록 처리를 설명하는 흐름도.
도 5는 도착 시간 스탬프가 발생되는 처리를 설명하는 흐름도.
도 6은 기록 장치에 의한 트랜스포트 스트림 기록 처리를 설명하는 흐름도.
도 7은 도 6에 도시된 단계 S21에서의 처리를 설명하는 흐름도.
도 8은 STC 불연속점과 엔트리 포인트 사이의 관계를 도시하는 도면.
도 9는 STC 불연속을 도시하는 도면.
도 10은 STC 불연속을 도시하는 도면.
도 11은 프로그램 시퀀스 내의 불연속을 해석하기 위한 처리를 설명하는 흐름도.
도 12는 엔트리 포인트 맵의 일례를 도시하는 도면.
도 13은 STC 시간축 정보의 일례를 도시하는 도면.
도 14는 STC 불연속 정보 구문의 제1 예를 도시하는 도면.
도 15는 STC 불연속 정보 구문의 제2 예를 도시하는 도면.
도 16은 프로그램 시퀀스 구문의 제1 예를 도시하는 도면.
도 17은 프로그램 시퀀스 구문의 제2 예를 도시하는 도면.
도 18은 program_sequence를 도시하는 도면.
도 19는 엔트리 포인트 맵 구문을 도시하는 도면.
도 20은 마크 구문을 도시하는 도면.
도 21은 STC_sequence_id 및 PTS 값들에 의해 마크를 표시하는 예를 도시하는 도면.
도 22는 EntryPointMap와 STC_Info 사이의 관계를 설명하는 도면.
도 23은 본 발명의 일 실시예로서 실시된 재생 장치의 예시적인 구성을 도시하는 블럭도.
도 24는 재생 장치에 의한 재생 처리를 설명하는 흐름도.
도 25a, 25b 및 25c는 마크점 정보를 이용하여 재생 방법을 설명하는 도면.
도 26은 마크점 정보에 의해 표시된 장면의 큐(qued) 재생 처리를 설명하는 흐름도.
도 27은 마크점 정보를 이용하여 CM 스킵 재생 처리를 설명하는 흐름도.
〈도면의 주요 부분에 대한 부호의 설명〉
11 : 스트림 해석 블럭
12 : PLL 블럭
13 : ATC 카운터
16 : 스트림 데이터 베이스 작성 블럭0
17 : 파일 시스템 블럭
18 : 에러 정정 블럭
19 : 모듈레이터
20 : 기입 블럭
21 : 데이터 기록 매체
22 : 컨트롤러
23 : 드라이브
34 : STC 카운터
41 : 판독 블럭
42 : 디모듈레이터
45 : 버퍼
47 : AV 디코더
본 발명은 첨부한 도면을 참조로 예로서 더욱 상세하게 설명될 것이다.
도 1을 참조하면서, 본 발명이 적용되는 기록 장치(10)의 예시적 구조가 설명할 것이다. 기록 장치(10)는 도 2a에 도시된 바와 같이, 트랜스포트 패킷 엑스트라 헤더를 트랜스포트 패킷(예컨데 MPEG 비디오 패킷 또는 MPEG 오디오 패킷)에 부가하고, 예컨데 셋 톱 박스(set top box)로부터 입력된 트랜스포트 스트림 상에 불규칙한 간격으로 멀티플렉스하고(도시하지 않음), 디지털 방송파를 수신함으로써 도 2b에 도시된 바와 같이 소스 패킷을 생성하여 소스 패킷의 간격을 제거함으로써 DVR 트랜스포트 스트림을 생성한다. 다음으로 생성된 DVR 트랜스포트 스트림은 데이터 기록 매체(21)에 기록된다. 도 2a 및 도 2b에서의 측축은 트랜스포트 패킷이 기록장치(10)에 도달하는 도달 시간 클럭에 대한 시간 축을 나타낸다는 것에 주의해야 한다.
스트림 해석블럭(11)은 예컨데 PCR(Program Clock Reference)이 저장되는 패킷에 대해 셋 톱 박스로부터 순차적으로 입력된 트랜스포트 패킷을 조사하고, PCR을 추출하고, 그것을 PLL(Phase Locked Loop)블럭(12)에 출력한다.
PCR이 저장되는 패킷들(이하, PCR 패킷)이 100 밀리초보다 작은 간격으로 트랜스포트 스트림에 배열된다. PCR은 각 트랜스포트 패킷에 저장된 데이터의 재생을 위한 기준 클럭을 제공하는 시스템 시간 클럭(이하, STC)을 할당하기 위한 정보이다. PCR은 27MHz로 정밀하다. 한 PCR 패킷과 다음 PCR 패킷에 저장된 PCR 의 값 간의 차이가 보통은 PCR 패킷들이 배열된 간격(100 밀리초보다 작음)에 비례한다는 것에 주의해야 한다. 그러나, 여러가지 이유로, 한 PCR 패킷과 다음 PCR 패킷에 저장된 PCR 간의 값의 차이가 정규의 레벨보다 클 수 있다. 그러한 경우에, PLL블럭(12)(후술될 것임)에서 생성된 STC는 불연속이되고, 불연속이 일어난 시간의 전후에 STC 시간 축을 변화시킨다.
스트림 해석블럭(11)은 또한 불연속 플래그를 생성하고 STC 불연속이 각각 입력된 트랜스포트 패킷의 헤더의 해석으로 알려지는 경우 PLL블럭(12)으로 그것을 출력한다. 더욱 상세하게는, PCR 패킷에서 패킷 ID 변화가 탐지되는 경우, 또는 DIT(불연속 정보 테이블, Discontinuity Information Table)탐지되는 경우, (1)이 트랜스포트 패킷의 헤더의 "불연속_표시기" 에 탐지된다.
더욱이, 스트림 해석블럭(11)은 시리얼 패킷 번호(패킷 식별 정보)를 각각 연속적으로 입력된 트랜스포트 패킷으로 나누어주고, 동시에 헤더 및 각각의 트랜스포트 패킷의 페이로드를 해석하여 엔트리 포인트 데이터(entry point data), 불연속 포인트 데이터, 및 마크 포인트 데이터(mark point data)를 생성하고, 그것들은 스트림 데이터베이스 작성블럭(16)으로 출력된다.
엔트리 포인트 데이터는 재생 개시 위치(엔트리 포인트)를 제공할 수 있는 I 픽쳐 데이터에서 패킷을 식별하기 위한 정보이다. 불연속 포인트 데이터는 STC 불연속이 발생하는 패킷을 표시하기 위한 정보이다. 마크 포인트 데이터는 장면 변화 위치, 상업적 개시 또는 종료 위치 등에 대응하는 이미지 데이터가 저장되는 패킷을 식별하기 위한 정보이다.
PLL블럭(12)은 스트림 해석블럭(11)으로부터 입력된 PCR를 사용하여 27MHz의 시스템 클럭 주파수를 할당하고 할당된 시스템 클럭 주파수를 도달 시간 클럭(ATC) 카운터에 출력한다. PLL블럭(12)은 또한 초기값으로 PCR을 가진 시스템 클럭 주파수로 동가화하여 카운팅하기 위한 STC를 생성하고 STC 또는 불연속 플래그가 스트림 해석블럭(11)으로부터 입력된다는 면에서 불연속이 일어나는 경우 스트림 해석블럭(11)으로 불연속 발생 플래그를 출력한다.
도 3은 PLL블럭(12)의 상세한 예시적 구조를 도시한다. 100 밀리초보다 작은 간격으로 스트림 해석블럭(11)으로부터 입력된 PCR은 비교기(31) 및 시스템 시간 클럭 카운터(34)로 공급된다. 비교기(31)는 스트림 해석블럭(11)으로부터의 PCR 값과 STC 카운터(34)로부터의 STC 값 간의 차이 값을 표시하는 신호를 생성하고, 생성된 신호를 로 패스 필터(lowpass filter, LPF)(32) 및 제어기(35)로 출력한다. 로 패스 필터(32)는 비교기(31)로부터의 차이 신호의 고주파 구성요소를 제거하고 결과로서 생기는 신호를 전압 제어 오실레이터(VCO)(33)에 출력한다. 전압 제어 오실레이터(33)는 27MHz의 시스템 클럭 주파수를 생성하고 다음 단계에서 그것을 STC 카운터(34) 및 ATC 카운터(13)(도 1)에 출력해서, 로 패스 필터(32)로부터의 신호 차는 0이 된다.
STC 카운터(34)는 전압 제어 오실레이터(33)로부터의 시스템 클럭 주파수(27MHz)로 동기성을 가진 초기값이 되는 먼저 입력된 PCR을 가진 STC를 카운트하고 결과로서 생기는 STC를 비교기(31)에 출력한다. 제어기(35)가 비교기(31)로부터의 차등 신호 값을 결정하는 경우, 그것이 소정의 임계치보다 크면, 제어기(35)는 불연속 발생 플래그를 생성하고 예컨데 불연속 플래그가 스트림 해석블럭(11)으로부터 입력되는 경우 그것을 스트림 해석블럭(11)으로 출력한다.
예컨데, 일정한 간격의 값을 가진 PCR이 PLL블럭(12)에 순차적으로 입력되는 경우, 비교기(31)로부터의 차이 값은 0이 되고, 그러므로 어떤 불연속 발생 플래그도 제어기(35)로부터 출력되지 않는다. 이전에 입력된 PCR의 값과 크게 다른 값을 가지는 PCR이 입력되는 경우, 비교기(31)로부터의 차이 값은 큰 값이되고 그것은 불연속 발생 플래그가 출력될 때 차이 값이 임계값보다 큰 제어기(35)에서 결정된다. 연속하지 않은 PCR은 새로운 STC 시간 축의 초기값으로서 시스템 클럭 카운터(34)에서 사용된다.
다시 도 1을 참조하면, ATC 카운터(13)는 PLL블럭(12)으로부터 입력된 시스템 클럭 주파수와 동기성을 가지고 도달 시간 클럭(이하, ATC)를 카운트하고, 동시에 ATC의 샘플 값인 도달 시간 스탬프(도달_시간_스탬프)를 트랜스포트 패킷 엑스트라 헤더(TP_엑스트라_헤더) 부가블럭(15)으로 출력한다. 부가하여, ATC 카운터(13)는 ATC를 스트림 해석블럭(11)으로 출력한다. 프로그램의 개시에서 위치된 트랜스포트 패킷이 기록장치(10)로 입력되는 경우 ATC가 0으로 초기화된다는 것에 주의해야 한다.
패킷이 셋 톱 박스로부터 트랜스포트 패킷(118 바이트)으로 입력되어 소스 패킷(192 바이트)을 생성하고 그것을 파일 시스템블럭(17)으로 출력하는 경우, 트랜스포트 패킷 엑스트라 헤더 부가블럭(15)은 카운터(13)로부터 입력되는 도달 시간 스탬프를 포함하는 트랜스포트 패킷 엑스트라 헤더(4 바이트)를 부가한다.
스트림 데이터베이스 작성블럭(16)은 엔트리 포인트 맵, 시스템 시간 클럭 시간축 정보, 프로그램 시퀀스 정보, 및 마크 포인트 정보(각각은 후술될 것임)를 스트림 해석블럭(11)으로부터 입력되는 엔트리 포인트 데이터, 불연속 포인트 데이터, 및 마크 포인트 데이터를 사용하여 작성하고 작성된 정보를 스트림 데이터베이스로서 파일 시스템블럭(17)에 출력한다. 스트림 데이터베이스는 데이터 기록 매체(21)상에 기록되는 트랜스포트 스트림의 랜덤 액세스 재생에 사용되는 정보이다.
파일 시스템블럭(17)은 트랜스포트 패킷 엑스트라 헤더 부가블럭(15)으로부터 입력된 소스 패키들 간의 간격을 제거하여 도 2c에 도시된 바와 같이 파일로서 DVR 트랜스포트 스트림을 생성한다. 부가하여, 파일 시스템블럭(27)은 스트림 데이터베이스 작성블럭(16)으로부터 입력된 스트림 데이터베이스(엔트린 포인트 맵, 시스템 시간 클럭 시간축 정보, 프로그램 시퀀스 정보 및 마크 포인트 정보)의 파일을 작성한다. 게다가, 파일 시스템블럭(17)은 작성된 DVR 트랜스포트 스트림 및 스트림 데이터베이스 파일을 에러 정정블럭(18)으로 출력한다.
에러 정정블럭(18)은 에러 정정 정보를 파일 시스템블럭(17)으로부터 입력된 파일에 부가하고 결과로서 생기는 파일을 변조 장치(19)에 출력한다. 변조 장치(19)는 소정의 방법으로 에러 정정블럭(18)으로부터의 파일을 변조하고 변조된 파일을 기입블럭(20)에 출력한다. 기입블럭(20)은 변조된 DVR 트랜스포트 스트림 파일을 파일에서 트랜스포트 패킷 수에 대응하는 데이더 기록 매체(21)상에 어드레스로 기록한다. 부가하여, 기입블럭(20)은 변조된 스트림 데이터베이스 파일을 데이터 기록 매체(21)의 소정의 위치에 기록한다. 데이터 기록 매체(21)는 그러한 매체가 예컨데 기록 장치(20)에 부착될 수 있고 기록 장치(20)로부터 분리될 수 있는 하드 디스크 또는 광 디스크로서 랜덤 액세스하는 것을 허용한다.
제어기(22)는 드라이브(23)를 제어하여 자기 디스크(24), 광 디스크(25), 광 자기 디스크(26) 또는 반도체 메모리(27)로부터 제어 프로그램을 판독함으로써, 사용자에 의해 입력된 이 제어 프로그램 및 커맨드에 기초하여 기록 장치(10)의 구성요소를 제어한다.
도 4에 도시된 흐름도를 참조하여, 기록 장치(10)에 의해 실행되는 트랜스포트 스트림 기록 과정을 설명한다. 이 트랜스포트 스트림 기록 과정은 사용자가 기록 개시 커맨드를 입력하는 경우 개시된다.
단계 S1에서, 예컨데 트랜스포트 엑스트라 헤더 부가블럭(15)은 ATC 카운터로부터 입력된 도달 시간 스탬프를 포함하는 트랜스포트 엑스트라 헤더를 셋 탑 박스로부터 입력된 트랜스포트 패킷에 부가하여 소스 패킷을 생성하여 그것을 파일 시스템블럭(17)에 출력한다.
도 5에 도시된 흐름도를 참조하여, 트랜스포트 패킷 엑스트라 헤더에 포함된 도달 시간 스탬프가 생성되는 과정을 설명한다.
단계 S11에서, 스트림 해석블럭(11)은 PAT를 판독하기 위해 입력된 트랜스포트 스트림의 PAT(Program Association Table)를 저장하는 0X0000의 PID를 갖는 PAT 패킷을 검출하여 PAT에 기술되어 있는 PMT(Program Map Table)를 저장하는 패킷(이후부터는 PMT 패킷이라 함)의 PID를 얻는다. 단계 S12에서, PMT 패킷은 PMT를 판독하기 위해 단계 S11에서 얻은 PMT 패킷의 PID에 근거하여 검출되어 PMT에 기술되는 PCR를 저장하는 패킷(이후부터는 PCR 패킷이라 함)의 PID를 얻게 된다. 단계 S13에서는, PCR은 PCR을 판독하기 위해 단계 S12에서 얻은 PCR 패킷의 PID에 근거하여 검출된다. 이 PCR은 PLL블럭(12)에 공급된다.
단계 S14에서, PLL블럭(12)은 스트림 해석블럭(11)으로부터 입력된 PCR을 사용하여 시스템 클럭 주파수를 조정하고 조정된 주파수를 ATC 카운터(13)에 공급한다. 단계 S15에서, ATC 카운터(13)는 PLL(12)로부터의 시스템 클럭 주파수에 동기하여 ACT를 카운트 업하고, 이와 동시에 그의 샘플링 값을 트랜스포트 패킷 엑스트라 헤더 부가블럭(15)에 도착 시간 스탬프로서 출력한다.
다시 도 4를 참조하면, 파일 시스템(17)은 트랜스포트 패킷 엑스트라 헤더 부가블럭(15)으로부터 입력된 소스 패킷들간의 간격을 제거하고, 그 결과 생기는 DVR 트랜스포트 스트림 파일의 파일을 생성하여 이 파일을 에러 정정블럭(18)으로 출력한다. 단계 S3에서, 에러 정정블럭(18)는 에러 정정 정보를 파일 시스템블럭(17)으로부터의 DVR 트랜스포트 스트림 파일에 부가한다. 변조기(19)는 에러 정정된 파일을 변조한다. 기입블럭(20)은 이 변조된 파일을 패킷 번호에 해당하는 데이터 기록 매체상의 어드레스에 기록한다.
이하에서는 도 6에 도시된 플로우챠트를 참조하여 상기한 트랜스포트 스트림 기록 처리와 함께 실행되는 스트림 데이터베이스 기록 처리에 대해서 설명한다.
단계 S21에서, 스트림 해석블럭(11)은 MPEG2 시스템 표준의 I 화상 데이터가 저장되어 있는 패킷을 검출하기 위해 순차적으로 입력된 트랜스포트 스트림을 해석하여 엔트리 포인트 데이터(entry point data)로서 이 패킷의 패킷 번호 및 이 I 화상의 PTS(Presentation Time Stamp)를 얻는다. PTS는 MPEG2 시스템 표준의 PES 패킷의 헤더에 포함된 정보로서 이 화상이 재생되는 시스템 타임 클럭 시간축에 따른 시간을 나타낸다는 것에 주의한다.
이하에서는, 도 7에 도시한 플로우챠트를 참조하면서 단계 S21의 특정 처리에 대해 설명한다. 단계 S31에서, 스트림 해석블럭(11)은 트랜스포트 패킷이 입력되었는지 여부를 판정하고 트랜스포트 패킷이 입력될 때까지 대기한다. 트랜스포트 패킷이 입력된 경우에는, 스트림 해석블럭(11)은 단계 S32로 진행한다.
단계 S32에서, 스트림 해석블럭(11)은 트랜스포트 패킷의 트랜스포트 패킷 헤더에 포함된 페이로드 유닛 시작 지시자(payload_unit_start_indicator)에 1이 기록되어 있는지를 검출하고, 그에 의해 트랜스포트 패킷의 페이로드가 PES 패킷의 첫번째 바이트부터 시작하는지 여부를 판정한다. 페이로드 유닛 시작 지시자에서 1이 검출되고 트랜스포트 패킷의 페이로드가 PES 패킷의 첫번째 바이트부터 시작하게 되는 경우에는, 스트림 해석블럭(11)은 단계 S33으로 진행한다.
단계 S33에서, 스트림 해석블럭(11)은 0X000001B3, MPEG 비디오의 시퀀스 헤더 코드(sequence_header_code)가 트랜스포트 패킷의 페이로드에 기술된 PES 패킷의 시작점에 기록된다. MPEG 비디오의 시퀀스 헤더 코드가 기록되어 있는 경우에는, 스트림 해석블럭(11)은 I 화상 데이터가 이 트랜스포트 패킷의 페이로드에 저장되어 있는 것으로 판정하고 단계 S34로 진행한다.
단계 S34에서, 스트림 해석블럭(11)은 이 트랜스포트 패킷이 엔트리 포인트인지를 판정하고, 이 트랜스포트 패킷의 패킷 번호(이 패킷 번호를 사용하여 이 패킷이 기록되어 있는 데이터 기록 매체(21)상의 어드레스를 식별할 수 있다)를 이 트랜스포트 패킷에 저장된 I 화상의 PTS와 관련시켜 그 결과의 PTS와 이 프로그램의 식별 번호(비디오 PID)를 스트림 데이터베이스 작성블럭(16)에 엔트리 포인트 데이터로서 출력한다.
예를 들면, 도 8에 도시한 바와 같이, I 화상 데이터가 패킷 번호 E11, E12, E21, 및 E22에 저장되어 있는 경우에는, PTS=x11, x12, x21, 및 x22는 스트림 데이터베이스 작성블럭(16)으로 출력되는 패킷 번호 E11, E12, E21, 및 E22에 각각 관련되어 있다.
단계 S35에서는, 스트림 해석블럭(11)은 트랜스포트 패킷의 입력이 종료되었는지 여부를 판정한다. 트랜스포트 패킷의 입력이 종료되지 않은 경우에는, 스트림 해석블럭(11)은 단계 S31로 되돌아와서 상기한 처리를 반복한다. 트랜스포트 패킷의 입력이 종료된 경우에는, 스트림 해석블럭(11)은 도 6에 도시한 단계 S22로 돌아간다.
단계 S22에서는, 스트림 해석블럭(11)은 트랜스포트 스트림 STC 시간축에 관한 불연속 정보 및 프로그램 시퀀스에 관한 불연속 정보를 스트림 데이터베이스 작성블럭(16)에 불연속점 데이터로서 출력한다. STC 시간축에 관한 불연속 정보에 관해서는, 스트림 해석블럭(11)은 PLL블럭(12)으로부터 스트림 데이터베이스 작성블럭(16)으로 불연속점 발생 플래그가 불연속점 데이터로서 입력되기 전후에 변화하는 STC 시간축에 관한 정보(STC 시간축 ID, PCR_PID, start_PCR_value, end_STC_value 및 ESPN_STC_start)를 출력한다. PSI/SI에 관한 불연속 정보에 관해서는, 스트림 해석블럭(11)은 PSI/SI의 변경 어드레스 및 새로운 PSI/SI의 내용을 스트림 데이터베이스 작성블럭(16)에 불연속점 데이터로서 출력한다.
이하에서는, 불연속점 데이터에 관해서 기술한다. STC 시간축 ID는 STC 시간축을 식별하기 위한 정보이다. start_PCR_value와 end_STC_value 쌍은 연속한 STC 시간축의 시작 시간과 종료 시간을 각각 나타낸다.
start_PCR_value의 경우, STC 불연속을 야기하는 PCR의 값이 사용된다. 그러나, 입력된 트랜스포트 스트림의 제1의 start_PCR_value의 경우, 제1의 PCR 패킷에 저장된 PCR의 값이 사용된다.
end_STC_value는 이하의 식으로부터 얻어진다:
end_STC_value = last_PCR + PCR_gap
여기서, last_PCR은 STC 시간축을 변화시킨 PCR 패킷 바로 이전의 PCR 패킷의 값이다. PCR_gap은 last_PCR과 STC 불연속의 발생간의 시간차이다. 그러나, 입력된 트랜스포트 스트림의 마지막 end_STC_value으로는, 마지막 트랜스포트 패킷의 입력 시간이 사용된다.
RSPN_STC_start의 경우, STC가 시작되는 패킷의 패킷 번호가 사용된다. 보다 상세하게는, start_PCR_value를 제공하는 PCR 패킷의 패킷 번호가 사용된다. 여기서, RSPN은 상대 패킷 번호(Relative Packet Number)를 나타내며, 트랜스포트 스트림의 헤드 패킷에 주어진 패킷 번호를 초기값으로 하여 카운트된 상대적인 패킷 번호이다. 그 대신에, STC 불연속의 검출시 주어진 패킷 번호, PCR 패킷의 패킷 ID의 변화의 검출시에 주어지는 패킷 번호, 트랜스포트 패킷의 헤더의 discontinuity_indicator에서 1을 검출할 시에주어지는 패킷 번호, 또는 DIT 패킷의 검출시에 주어지는 패킷 번호를 RSPN_STC_start로서 사용할 수도 있다.
보다 상세하게는, 도 9에 도시한 바와 같이, STC 불연속이 트랜스포트 스트림의 시퀀스에서 한번 발생하고 트랜스포트 스트림의 시작점부터 불연속 발생점까지의 STC 시간축이 STC1이고, 그 이후의 STC 시간축이 STC2라고 할 경우, STC 시간축 STC1의 start_PCR_value로서는 start_PCR1이 사용되고, end_STC_value로서는 PCR_gap를 last_PCR에 가산하여 얻어지는 end_stc1이 사용된다. STC 시간축 STC2의 start_PCR_value로서는 start_PCR2가 사용되고, end_STC_value로서는 end_stc2가 사용된다.
도 9 및 도 10으로부터 알 수 있는 바와 같이, STC 불연속에 관계없이, ATC 카운터에 의해 발생되는 ATC는 STC 불연속에 관계없이 연속적이다. 그러나, 도10을 참조하면, 횡축은 ATC를 나타내고, 수직축은 start_PCR_value와 end_STC_value간의 관계를 나타내는 STC를 나타낸다.
이하에서는, 도 11에 도시한 플로우챠트를 참조하면서 프로그램 시퀀스에 관한 불연속 정보를 해석하기 위한 처리에 대해 설명한다.
단계 S41에서, 스트림 해석블럭(11)은 PSI/SI의 트랜스포트 패킷이 입력될 때까지 대기한다. PSI/SI의 트랜스포트 패킷이 입력되었으면, 스트램 해석블럭(11)은 단계 S42로 진행한다.
보다 상세하게는, PSI/SI의 트랜스포트 패킷은 PAT, PMT 및 SIT의 패킷이다. SIT는 DVB 표준에 의해 규정된 부분 트랜스포트 스트림의 서비스 정보를 기술하는 트랜스포트 패킷이다.
단계 S42에서, 스트림 해석블럭(11)은 PSI/SI의 내용에 변경이 있는지 여부를 판정한다. 즉, 스트림 해석블럭(11)은 PAT, PMT 및 SIT 각각의 내용이 이전이 입력된 것들과 다른지 여부를 판정한다. 변경이 있으면, 스트림 해석블럭(11)은 단계 S43으로 진행한다. 기록이 개시된 후의 첫번째 단계 S42에서, 스트림 해석블럭(11)은 또한 단계 S43으로 가는데, 이것은 이전에 입력된 PSI/SI 트랜스포트 패킷이 없기 때문이다.
단계 S43에서, 스트림 해석블럭은 새로운 PSI/SI 및 그의 내용을 전송하기 위해 트랜스포트 패킷에 주어진 패킷 번호를 획득하고 이 패킷 번호 및 내용을 스트림 데이터베이스 작성블럭(16)에 출력한다. 단계 S44에서, 스트림 데이터베이스 작성블럭(16)은 프로그램 시퀀스의 불연속 정보를 생성한다.
단계 S45에서, 스트림 해석블럭(11)는 트랜스포트 패킷의 입력이 완료되었는지 여부를 판정한다. 입력이 완료되지 않은 경우에는, 스트림 해석블럭은 단계 S41로 되돌아가서 상기한 처리를 반복하게 된다.
만약 스텝(S45)에서 입력이 완료한 것으로 알려지면, 이 처리는 종료한다.
만약 스텝(S42)에서 PSI/SI의 내용에서 어떤 변화도 발견되지 않으면, 스트림 해석 블럭은 스텝(S41)으로 되돌아가서 상기 처리를 반복한다.
도 6을 다시 참조하면, 스트림 해석 블럭(11)은 스텝(S23)에서 각각 연속적으로 입력된 트랜스포트 패킷의 헤더와 페이로드를 해석하여 마크 포인트(장면 변화 위치, 광고 시작 및 종료 위치 등)를 검출하고, 그 화상 데이터를 저장하는 패킷을 식별하기 위한 정보(이 프로그램의 식별 정보(비디오 PID), 시스템 타임 클럭 시간축 ID 및 이 픽쳐의 PTS)를 마크 포인트 데이터로서 스트림 데이터베이스 생성 블럭(16)에 출력한다.
스텝(S21) 내지 스텝(S23)의 처리 동작은 설명의 편의를 위해 시간 순으로 설명되었음을 유의한다. 그런데, 실제로 이 처리 동작은 입력된 트랜스포트 패킷 각각에 대해 병렬로 실행된다.
스텝(S24)에서, 스트림 데이터베이스 생성 블럭(16)은 각 프로그램에 대해 스트림 해석 블럭(11)으로부터의 엔트리 포인트 데이터를 설명하는 도 12에 도시된 바와 같은 엔트리 포인트 맵을 생성한다. 오프셋 소스 패킷 번호는 트랜스포트 스트림의 제1 패킷에 할당된 패킷 번호임을 유의한다.
스트림 데이터베이스 생성 블럭(16)은 또한 도 13에 도시된 바와 같이 시스템 타임 클럭 시간축 ID(STC_sequence_id), PCR_PID, start_PCR_value, end_STC_value 및 RSPN_STC_start로 구성된 시스템 타임 클럭 시간축 정보를 생성한다. RSPN_STC_start는 상기 오프셋 소스 패킷 번호를 초기값으로 하여 카운트된 패킷 번호이다.
또한, 스트림 데이터베이스 생성 블럭(16)은 스트림 해석 블럭(11)으로부터 공급된 마크 포인트 데이터를 기술하는 마크 포인트 정보(비디오 PID, 시스템 타임 클럭 시간축 ID 및 화상의 PTS)를 생성한다.
또한, 스트림 데이터베이스 생성 블럭(16)은 스트림 해석 블럭(11)으로부터 공급된 프로그램 시퀀스의 불연속 포인트 데이터(상세한 것은 설명될 것임)를 기술하는 프로그램 시퀀스 정보를 생성한다.
스텝(S25)에서, 스트림 해석 블럭(11)은 스텝(S24)에서 생성된 엔트리 포인트 맵, 시스템 타임 클럭 시간축 정보 및 마크 포인트 정보를 스트림 데이터베이스로서 파일 시스템 블럭(17)으로 출력한다. 파일 시스템 블럭(17)은 입력 스트림 데이터베이스의 파일을 생성한다. 스트림 데이터베이스 파일은 에러 정정 블럭(18)에 의해 에러 정정 정보가 부가되고, 이 에러 정정된 스트림 데이터베이스는 변조기(19)에 의해 변조되고, 이 변조된 스트림 데이터베이스는 기입 블럭(20)에 의해 소정 위치에서 데이터 기록 매체(21) 상에 기록된다.
설명한 바와 같이, 데이터 기록 매체(21) 상에 기록된 스트림 데이터베이스는 후술될 재생 처리, 특히 랜덤 억세스 재생을 위해 사용된다.
스트림 데이터베이스의 엔트리 포인트 맵은 엔트리 포인트의 위치를 식별하기 위한 정보로서 패킷 번호를 기술하고, 이에 의해 바이트 정확도의 어드레스에 의한 엔트리 포인트 위치의 표현에 비해 필요한 비트의 수를 감소시키는 점에 유의한다.
도 14를 참조하면, STC 불연속 정보 신택스의 제1 예가 도시되어 있다.
STC_Info()는 이 신택스가 STC 불연속 포인트 정보를 제공함을 나타낸다. STC_Info()는 num_of_STC_sequence에 의해 지시된 수의 STC 시간축 정보를 갖는다. STC_sequence_id는 STC 시간축 ID를 나타낸다(도 13 참조). PCR_PID, RSPN_STC_start, start_PCR_value 및 end_stc_value의 필드들은 도 13에 도시된 대응 변수명과 동일한 의미를 갖는다.
도 15를 참조하면, STC 불연속 정보 신택스의 제2 예가 도시되어 있다. STC_Info()는 num_of_STC_sequence에 의해 지시된 수의 STC 시간축 정보를 갖는다. STC_sequence_id는 STC 시간축 ID를 나타낸다(도 13 참조). Offset_STC_sequence_id는 트랜스포트 스트림의 STC 시간축의 선두에 오도록 주어진 STC 시간축 ID이다. RSPN_STC_start의 필드는 도 13에 도시된 대응 변수명과 동일한 의미를 갖는다.
이 신택스는 도 14에 도시된 신택스에서 사용된 start_PCR_value 및 end_STC_value 대신에 start_PTS 및 end_PTS를 사용한다. start_PTS는 STC_sequence_id에 의해 지시된 STC 시간축 ID 상의 제1 프리젠테이션 유닛의 PTS를 나타낸다. end_PTS는 STC_sequnece_id에 의해 지시된 STC 시간축 ID 상의 최종 프리젠테이션 유닛의 PTS를 나타낸다.
PCR_PID는 그 포맷을 기록될 트랜스포트 스트림에 의해 참조되는 단지 하나의 PCR_PID에만 한정함으로써 도 15에 도시된 신택스로부터 생략됨을 유의한다.
도 16을 참조하면, 프로그램 시퀀스의 불연속 정보 신택스의 제1 예가 도시되어 있다.
ProgramInfo()는 이 신택스가 프로그램 시퀀스 불연속 정보임을 나타낸다. ProgramInfo()는 number_of_PSI_SI_change에 의해 지시된 수의 PSI/SI 정보를 갖는다. PSI/SI_type는 그 다음의 PSI/SI의 유형을 나타낸다. PSI_SI_type=0은 PAT를 나타내고, PSI_SI_type=1은 PMT를 나타내고, PSI_SI_type=2는 SIT를 나타낸다. PSI_SI_type=3 ~ 255는 리저브(reserve)를 나타냄을 유의한다.
만약 PSI_SI_type이 PAT를 나타내면, start_PAT_address의 필드가 이어진다. start_PAT_address는 새로운 PAT가 저장된 트랜스포트 패킷의 DVR 트랜스포트 스트림 파일 상의 어드레스를 나타내고 패킷 번호로 표현된다.
만약 PSI_SI_type이 PMT를 나타내면, program_map_PID, start_PMT_address, program_number, PCR_PID, number_of_videos, number_of_audios 및 number_of_videos 각각에 지시된 수와 동일한 video_PID와 VideoCodingInfo()의 필드와, VideoCodingInfo() 및 number_of_audios에 의해 지시된 수와 동일한 audio_PID 및 AudioCodingInfo()의 필드가 이어진다.
program_map_PID는 새로운 PMT의 패킷 ID이다. start_PMT_address는 새로운 PMT가 저장되어 있는 트랜스포트 패킷의 DVR 트랜스포트 스트림 파일 상의 어드레스이고 패킷 번호로 표현된다. program_number는 새로운 PMT의 내용에 기입된 프로그램 번호이다. PCR_PID는 새로운 PMT의 내용에 기입된 PCR을 전송하는 트랜스포트 패킷의 패킷 ID이다. number_of_videos는 새로운 PMT의 내용에 기입된 비디오 스트림의 수이다. video_PID는 비디오 스트림을 전송하는 트랜스포트 패킷의 패킷 ID이다.
VideoCodingInfo()는 그 비디오 스트림의 부호화 정보를 나타내고, 예를 들어 비디오가 SDTV인지 HDTV인지를 나타내는 정보와 비디오 프레임 주파수와 픽셀 애스펙트비를 나타내는 정보를 포함한다. number_of_audios는 새로운 PMT의 내용에 기입되어 있는 오디오 스트림의 수를 나타낸다. audio_PID는 오디오 스트림을 전송하는 트랜스포트 패킷의 패킷 ID이다.
AudioCodingInfo()는 그 오디오 스트림의 부호화 정보이고, 예를 들어, 오디오 부호화 방법(예를 들어 MPEG1 audio, MPEG2AAC audio 또는 Dolby AC3), 컴포넌트 유형(예를 들어 2채널 스테레오 또는 5.1ch-다중채널 스테레오) 및 샘플링 주파수에 대한 정보를 포함한다.
만약 PSI_SI_type이 SIT를 나타내면, start_SIT_address의 필드가 이어진다. start_SIT_address는 새로운 SIT가 저장되어 있는 트랜스포트 패킷의 DVR 트랜스포트 스트림 파일 상의 어드레스이고 패킷 번호로 표현된다.
도 17을 참조하면, ProgramInfo() 신택스의 제2 예가 도시되어 있다. 이 신택스는 그 포맷을 기록될 트랜스포트 스트림에 의해 참조되는 하나의 PCR_PID에만 한정하는데 사용될 수 있다. 이 포맷에서는, 트랜스포트 스트림내에서 다음의 특성 (1) 내지 (3)을 갖는 시간 간격을 program_sequence라 부른다.
(1) PCR_PID 값은 변화되지 않고 유지된다.
(2) 비디오 기본 스트림의 수는 변화되지 않고 유지된다. 각 비디오 스트림에 대한 PID값과 VideoCodingInfo에 의해 정의된 부호화 정보는 변화되지 않고 유지된다.
(3) 오디오 기본 스트림의 수는 변화되지 않고 유지된다. 각 오디오 스트림에 대한 PID값과 AudioCodingInfo에 의해 정의된 부호화 정보는 변화되지 않고 유지된다.
program_sequence는 한번에 하나의 시스템 타임 베이스만을 가진다. 또한, program_sequence는 한번에 단지 하나의 PMT만을 가진다. ProgramInfo()는 program_sequence가 시작하는 위치의 어드레스를 저장한다. RSPN_program_sequence_start는 이 어드레스를 지시한다. 그 값은 상기 정의된 program_sequence가 변화하는 경계의 소스 패킷 번호만을 나타낼 수도 있다. 예를 들어, 상기 start_PMT_address(새로운 PMT가 저장되어 있는 트랜스포트 패킷의 어드레스)가 설정될 수도 있다.
도 18은 program_sequence의 일예를 나타낸다. 이 예에서, program_sequence의 내용은 이 트랜스포트 스트림 도중에 두 번 변화하여, 3개의 program_sequence가 있다. program_sequence의 변화지점에서 시작 소스 패킷 번호(어드레스)와 소스 패킷 번호들(어드레스들)은 RSPN_program_sequence_start에 저장된다.
도 19를 참조하면, 엔트리 포인트 맵 신택스의 일예가 도시되어 있다.
EntryPointMap()은 이 신택스가 엔트리 포인트 맵에 대한 것임을 나타낸다. EntryPointMap()은 number_of_video streams 의해 지시된 수의 video_PID 각각에 대한 엔트리 포인트 정보를 갖는다. video_PID는 비디오 스트림들을 전송하는 트랜스포트 패킷의 패킷 ID이다. number_of_entry_points는 이 비디오 스트림의 엔트리 포인트들의 수를 나타낸다. PTS_EP_start와 RSPN_EP_start는 도 12에 각각 도시되어 있는 엔트리 포인트의 PTS와 엔트리 포인트의 어드레스와 동일한 의미를 갖는다.
도 20을 참조하면 마크 신택스(syntax)가 도시되었다. ClipMark 는 관련된 신택스가 마크의 신택스인 것을 표시한다. version_number는 ClipMark()의 버젼 번호를 표시하는 네개의 문자를 나타낸다. length 는 길이 필드(length field)의 바로 뒤에서부터 ClipMark의 최종까지의 Clipmark()의 바이트 수를 표시하는 32 비트의 사인되지 않은 정수이다. number_of_Clip_marks 는 ClipMark 에 저장된 마크의 수를 나타내는 16 비트의 사인 안된 정수이다. number_of_Clip_marks 는 제로일 수 있다. mark_type 은 마크 유형을 나타내는 8 비트의 필드인데, 이는 Cm 시작 및 종료를 표시한다. 32 비트의 필드를 갖는 mark_time_stamp 는 마크가 특정되는 포인트를 표시하는 시간 스탬프를 저장한다. mark_time_stamp 는 마크에 의해 참조되는 프리젠테이션 유닛에 상응하는 33 비트의 PTS의 상위 32 비트를 표시해야 한다. 8 비트의 필드를 갖는 STC_sequence 는 마크가 배치되는 STC 연속 인터벌의 STC_sequence_id 를 표시한다.
도 21 은 한 예를 도시하는데, 이 예에서 기록된 트랜스포트 스트림 파일(DVR 트랜스포트 스트림 파일)에 대한 인 포인트(in-point) 및 아웃 포인트(out-point)의 액세스 포인트와 같은 마크 및 CM 의 시작 또는 종료점들이 STC_sequence_id 및 PTS 의 값으로 대표된다. 인 포인트 및 아웃 포인트들은 각기 재생의 개시점 및 종료점 들이다.
기록될 트랜스포트 스트림이 STC 비연속점들을 포함할 수 있기 때문에, 동일 값을 갖는 PTS 들이 이 트랜스포트 스트림에서 나타날 수 있다. 따라서 트랜스포트 스트림이 기록될 액세스 포인트가 PTS 를 기반으로 설정되었다면 PTS 값만으로는 액세스 포인트를 식별하는 데에 충분하지 않다. 식별을 하기 위해서는 PTS 가 포함된 STC 시간축 ID 가 함께 사용된다.
다음은 EntryPointMap 과 STC_Info 사이의 관계가 설명된다. 하나의 video_PID 에 의해 참조될 비디오 스트림에 관한 EntryPointMap -기록될 트랜스포트 스트림의 파일에 부착된 데이타베이스임- 이 STC 비연속점에 관계없이 하나의 테이블내에서 생성된다. STC_Info() 에서 규정된 RSPN_EP_start 의 값과 RSPN_STC_start 의 값을 비교하는 것은 각 STC_sequence 에 속하는 EP_map 의 데이타의 경계를 표시한다.
도 22 에 도시된 예에서 EntryPointMap 에 포함된 EntryPoint의 어드레스 X21은 RSPN_STC_start#2 보다 크며, STC_Info()에 의해 표시된 STC 시간축의 개시 어드레스가 된다. EntryPoint의 어드레스 X1n 전의 엔트리 포인트 데이타는 STC_sequence#1의 STC 시간축에 속한다. 어드레스 X21 후의 엔트리 포인트 데이타는 STC_sequence#2의 STC 시간축에 속한다.
도 23 은 그 위에서 DVR 트랜스포트 스트림 및 스트림 데이타베이스 파일들이 기록 장치(10)에 의해 기록되는 데이타 기록 매체(21)로부터 DVR 트랜스포트 스트림을 재생하기 위한 재생 장치(40)의 예시적 구성예이다.
재생 장치(40)는 또한 사용자가 특정한 마크 포인트(시청동안 사용자가 선호하는 광경의 위치, 시청이 단절된 위치 및 그와 같은 것들)를 데이타 기록 매체(21)에 기록된 스트림 데이타 베이스에 포함된 마크 포인트 정보에 추가하고 추가된 마크 포인트를 그쪽에 기록하는 능력을 갖는다.
판독블럭(41)은 제어기(49)로부터 입력된 판독 제어 신호를 수신했을 때 데이타 기록 매체(21)로부터 DVR 트랜스포트 스트림 파일 도는 스트림 데이타베이스 파일에 해당하는 데이타를 판독하고 판독된 데이타를 복조기(42)로 출력시킨다. 복조기(42)는 도 1 에 도시된 변조기(19)에 상응하여 판독블럭(41)으로부터 입력된 데이타에 대해서 복조를 실행하고 복조된 데이타를 에러 정정블럭(43)으로 출력시킨다. 에러 정정블럭(43) 도 1 에 도시된 에러 정정 블럭(18)에 의해 주어진 에러 정정 정보에 기초하여 데이타에 대한 에러 정정을 실행하고 귀결되는 DVR 트랜스포트 스트림 파일 또는 스트림 데이타베이스 파일을 파일 시스템 블럭(44)으로 출력시킨다.
파일 시스템 블럭(44)은 에러 정정 블럭(43)으로부터 입력된 DVR 트랜스포트 스트림 파일을 소스 패킷들로 분리시키고 이들을 버퍼(45)로 출력시킨다. 파일 시스템 블럭(44)은 또한 에러 정정 블럭(43)으로부터 입력된 스트림 데이타베이스를 제어기(49)로 출력시킨다.
버퍼(45)는 소스 패킷의 트랜스포트 패킷 엑스트라 헤더 내에 포함된 도착 시간 스탬프가 클럭 오실레이터(48)로부터 공급된 ATC 와 동일하게 되었을 때 이 소스 패킷에서 트랜스포트 패킷 엑스트라 헤더를 제거하여 획득된 트랜스포트 패킷을 디멀티플렉서(46)에게 출력시킨다.
디멀티플렉서(46)는 버퍼(45)로부터 입력된 트랜스포트 패킷으로부터 사용자가 특정한 프로그램에 해당하는 비디오 패킷 및 오디오 패킷을 추출하고 추출된 패킷을 AV 디코더(47)로 출력시킨다. AV 디코더(47)는 디멀티플렉서(46)로부터 공급된 비디오 패킷 및 오디오 패킷을 디코드하고 귀결되는 비디오 신호 및 오디오 신호를 다음 단계로 출력시킨다. 클럭 오실레이터(48)는 27 MHz의 ATC 를 발생시켜서 버퍼(45)에게 출력시킨다. 제어기(49)는 드라이브(51)을 제어하여 마그네틱 디스크(52), 광 디스크(53), 광자기 디스크(54), 또는 반도체 메모리(53)로부터 제어 프로그램을 판독하고 이로써 제어 프로그램 및 사용자에 의해 입력된 명령에 기초하여 재생 장치(40)의 각 소자를 제어한다.
새로운 마크 포인트를 특정하기 위한 명령이 사용자에 의해 입력되었을 때 제어기(49)는 신규 마크 포인트의 위치를 마크 포인트 데이타(video PID, 시스템 시간 클럭 시간축 ID, 및 이미지의 PTS) 로 변환시키고 마크 포인트 데이타를 기입 블럭(50)으로 출력시킨다.
기입 블럭(50)은 제어기(49)로부터 입력된 마크 포인트 데이타를 데이타 기록 매체(21) 상에 기록된 스트림 데이타 베이스 내에 포함된 마크 포인트 정보에 추가하고 그 위에 마크 포인트 데이타를 기록한다.
다음에서 도 24 의 흐름도를 참조하여 재생 장치(40)가 수행하는 재생 처리를 설명한다. 이 재생 처리는 재생 프로그램을 특정하고 재생 처리를 개시하기 위한 명령이 사용자에 의해 입력되었을 때 시작된다.
단계 S51 에서 재생 프로그램에 대한 스트림 데이타베이스가 데이타 기록 매체(21)로부터 판독 블럭(41)에 의해 판독되고, 스트림 데이타 베이스는 파일 시스템 블럭(44)을 통해서 복조기(42)에 의해서 처리되고, 귀결되는 스트림 데이타베이스는 제어기(49)로 공급된다. 단계 S52 에서 재생 개시 위치 데이타(video PID, STC 시간축 ID, 및 이미지의 PTS)가 사용자에 의해 제어기(49)로 입력된다. 재생이 시작되는 위치에 대해 스트림 데이타베이스 내에 포함된 마크 포인트 정보의 마크 포인트가 특정될 수 있다는 점을 인지해야 한다.
단계 S53 에서 제어기(49)는 단계 S52 에서 입력된 재생 개시 위치와 단계 S51 에서 획득된 스트림 데이타베이스를 비교하여 재생 개시 위치에 가장 근접한 엔트리 포인트를 검출한다. 검출된 엔트리 포인트에 기입된 패킷 번호를 사용하여 제어기는 DVR 트랜스포트 스트림의 판독 개시 어드레스를 계산한다.
단계 S54 에서 제어기(49)의 제어하에서 판독 블럭(41)은 단계 S53 에서 결정된 데이타 기록 매체(21) 상의 판독 개시 어드레스로부터 DVR 트랜스포트 스트림을 판독하기 시작한다. DVR 트랜스포트 스트림은 디멀티플렉서(46)를 통해서 복조기(42)에 의해 처리되며 귀결 비디오 패킷 및 오디오 패킷은 AV 디코더(47)로 입력된다.
단계(S55)에서, AV 디코더(47)는 역다중화기(demultiplexer)(46)로 부터 공급된 비디오 패킷 및 오디오 패킷을 디코드하고, 실례를 모니터(도시되지 않음)하기 위하여 그 결과로 발생한 비디오 신호 및 오디오 신호를 출력한다.
단계(S56)에서, 제어기(49)는 실례에 대해 랜덤 액세스 재생을 위한 재생 위치에서의 변화가 사용자에 의해 지정되었는지를 판단한다. 변화가 지정된 것으로 판정되면, 제어기는 단계(S53)으로 리턴하여 판독 시작 어드레스를 판정하고 상술한 프로세싱을 반복한다.
단계(S56)에서 어떠한 변화도 지정되어 있지 않은 것으로 판정된다면, 제어기는 단계(S57)로 진행된다. 단계(S57)에서, 제어기(49)는 재생의 종료가 사용자에 의해 지정되었는지를 판정한다. 재생의 종료가 지정되지 않은 것으로 판정되면, 제어기는 단계(S54)로 리턴하여 상술한 프로세싱을 반복한다. 그 후, 재생의 종료가 지정된 것으로 판정되다면, 이러한 재생 프로세싱은 종료한다.
다음으로, 마크 포인트(mark point) 정보의 사용에 의한 재생이 설명될 것이다. 예를 들면, 도 25a 내지 도 25c에서 도시된 것과 같이, DVR 트랜스포트 스트림 파일, 그의 데이터 베이스, EntryPointMap, ClipMark, 및 STC_info가 기록된다고 가정하자.
마크 포인트에 의해 표시된 씬의 큐 재생 프로세싱(cued reproduction processing)이 도 26에 도시된 플로우챠트를 참조로 하여 설명될 것이다.
단계(S71)에서, DVR 트랜스포트 스트림 파일의 데이터 베이스인 EntryPointMap, STC_info, Program_info, 및 ClipMark가 판독된다. 단계(S72)에서, 사용자에 의한 재생 시작 포인트용 마크 포인트의 규격이 용인된다. 예를 들면, 씬의 시작 포인트의를 지시하는 작은 화상이 메뉴 스크린에 표시된다. 여기서, 사용자에 의해 선택된 작은 화상에 관련된 마크 포인트가 용인된다.
단계(S73)에서, 사용자에 의해 지정된 마크 포인트의 PTS 및 STC_sequence_id가 획득된다. 단계(S74)에서, STC_sequence_id에 대응하는 STC 시간 축에서 소스 패킷 번호가 STC_info로 부터 획득된다. 단계(S75)에서, 시간적으로 마크 포인트의 PTS 앞이고 가장 근접한 엔트리 포인트를 갖는 소스 패킷 번호가 STC 시간 축 시작 및 마크 포인트의 PTS에서의 패킷 번호로부터 획득된다.
단계(S76)에서, 트랜스포트 스트림 데이타는 단계(S75)에서 획득되고, AV 디코더(47)로 공급된 소스 패킷 번호로부터 판독된다. 단계(S77)에서, AV 디코더(47)는 마크 포인트의 PTS의 영상을 시작하면서 트랜스포트 스트림 데이타를 표시하기 시작한다.
예로서 도 25a 내지 25c에 도시된 CM 시작 포인트(CMstart)의 영상 매칭 PTS(a0)를 표시하기 위한 프로세싱이 다음에 구체적으로 설명된다. CM 시작 포인트는 STC_sequence_id가 id0인 STC 시간 축 및 STC 시간 축 시작이 A 보다 작은 소스 패킷 번호상에 있는 것으로 가정된다. 예를 들면, PTS(A) 〉 PTS(a0)이면, 패킷 번호(A)는 단계(S75)에서 획득된다. 그 후, 단계(S76)에서, 패킷 번호 A로 시작되는 트랜스포트 스트림이 디코드될 AV 디코더(47)로 공급된다. 단계(S77)에서, PTS(a0)에 대응하는 영상과 함께 표시되기 시작한다.
다음으로, 마크 포인트 정보의 사용에 의한 CM 스킵 재생 프로세싱(CM skip reproduction processing)이 도 27에 도시된 플로우챠트를 참조로 하여 설명될 것이다.
단계(S81)에서, DVR 트랜스포트 스트림 파일의 데이타베이스인, EntryPointMap, STC_info, Program_Info, 및 ClipMark가 판독된다. 단계(S82)에서, 사용자에 의한 CM 스킵 재생 규격이 수용된다. 단계(S83)에서, CM 시작 포인트 및 CM 종료 포인트(CMend)인 마크 타입을 갖는 마크 정보의 개별 부분의 PTS 및 STC_sequence_id가 취득된다.
단계(S84)에서, CM 시작 포인트의 STC_sequence_id에 대응하는 STC 시간 축에서의 소스 패킷 번호가 취득된다. 단계(S85)에서, 트랜스포트 스트림의 디코딩이 시작된다.
단계(S86)에서, 현재 표시된 화상이 CM 시작 포인트의 PTS에 대응하는 것인지를 판정한다. 상기 결정이 ‘아니오’라면, 그 다음, 단계(S87)에서, 현재 화상이 표시된다. 프로세싱은 단계(S85)로 돌아가서 상술한 후속 동작을 반복한다. 단계(S86)에서, 상기 결정이 ‘예’라면, 그 후, 단계(S88)에서, 상기 화상의 디코딩 및 표시는 중지된다.
단계(S89)에서, CM 종료 포인트의 STC 시간 축 및 CM 종료 포인트의 PTS에서의 패킷 번호로부터, 시간적으로 종료 포인트의 PTS 이전이며 가장 근접한 엔트리 포인트를 갖는 소스 패킷 번호가 취득된다. 단계(S90)에서, 트랜스포트 스트림의 데이타는 단계(S89)에서 취득되고 AV 디코더(47)로 공급된 소스 패킷 번호로 부터 판독된다. 단계(S91)에서, AV 디코더(47)은 CM 종료 포인트의 PTS에 대응하는 영상으로 시작하는 표시를 다시 시작한다.
예로서, 도 25a 내지 25c에 도시된 CM 스킵 동작이 아래에 구체적으로 설명된다. CM 시작 포인트 및 CM 종료 포인트는, id0인 동일한 STC_sequence_id를 갖는 STC 시간 축 및 상기 STC 시간 축 시작이 A 보다 작은 소스 패킷 번호상에 있는 것으로 가정된다.
트랜스포트 스트림이 디코드될 경우 단계(S86)에서 표시 시간이 PTS(a0)로 된다면, 상기 디코딩 및 기록은 중딘된다. 그 후, 예를 들면, PTS(C) 〈 PTS(c0)이라면, 단계(90)에서, 패킷 번호 C를 갖는 데이타로 시작되는 스크림으로 디코딩이 시작된다. 단계(S91)에서, 표시는 PTS(c0)에 대응하는 영상으로 재시작한다.
재생시 ProgramInfo를 사용하는 방법이 아래에 설명된다. 재생 시스템이 스트릴내에 포함되는 프로그램 콘텐츠에 대한 정보, 즉, 패킷 전송 비디오 또는 오디오 기본 스트림의 PID, 를 아는 것이 효과적이고, DVR 트랜스포트 스트림이전의 비디오 또는 오디오 구성 타입(예를 들면, HDTV 비디오 스트림 또는 MPEG2 AAC 오디오 스트림)이 재생된다.
이러한 정보는 사용자에게 기록된 트랜스포트 스트림의 콘텐츠를 설명하거나, 상기 스트림 디코딩 이전에 AV 디코더(47) 및 역확산기(46)를 초기화시키기 위한 메뉴 스크린을 생성하는데 도움이 된다.
도 18에 도시된 것과 같이, 프로그램 콘텐츠는 기록될 트랜스포트 스트림내의 중간까지 변화될 수 있다. 예를 들면, 비디오 스트림 변화나 비디오 스트림 변화의 콘텐츠를 전송하기 위한 패킷의 PID가 SDTV로 부터 HDTV로 변화한다. ProgramInfo는 프로그램 콘텐츠가 스트림내의 중간으로 변화하는 어드레스(소스 패킷 번호)를 저장한다. 재생 시작 시간이 지정될 경우, 재생 시스템은 판독이 시작되는 소스 패킷 번호를 확인하고, ProgramInfo로 부터 상기 어드레스에 저장된 프로그램 콘텐츠를 미리 알 수 있다.
설명한 바와 같이, 재생 프로세싱에서, 재생은 스트림 데이타베이스내에 포함된 엔트리 포인트 맵에 설명되어진 엔트리 포인트(I 영상 위치)로 시작하며, 그 결과, 판독 위치를 쉽고 빠르게 제어한다.
본 실시예에서, 기록 장치(10) 및 재생 장치(40)의 구성은 별도로 도시된다. 기록 장치(10) 및 재생 장치(40)사 하나의 장치로 결합될 수 있는 것은 자명하다.
주의해야 할 점은, 프로세싱 동작의 상술한 시퀀스는 하드웨어 뿐만 아니라 소프트웨어에 의해서도 실행될 수 있다는 것이다. 프로세싱 동작의 상술한 시퀀스를 소프트웨어로 실행하기 위하여, 프로스램은 소프트웨어가 기록 매체로부터 지정된 하드웨어내에 장착된 컴퓨토로 또는 다양한 기능들을 실행할 수 있는 범용 개인용 컴퓨터로 설치되는 것을 포함한다.
이러한 기록 매체는 자기 디스크(24)(플로피 디스크 포함함), 광디스크(25)(CD-ROM(Compact Disc Read Only Momory)을 포함함) 및 DVD(Digital Versatile Disc), 광자기 디스크(26)(MD(mini disc)를 포함함), 또는 프로그램을 컴퓨터로부터 개별적으로 사용자에게 제공하기 위해 배치되는, 도 1에 도시된 반도체 메모리(27)로 이루어진 패키지 매체 뿐만 아니라, 프로그램이 사용자에게 제공되기 위해 저장되는 컴퓨터-내장 ROM 하드 디스크로도 이루어진다.
주의 해야 할 점은, 본 명세서에서는, 기록 매체에 기록될 프로그램을 설명하기 위한 단계가 시간상 순차적으로 실행될 프로세싱 동작 뿐만 아니라 병렬적 또는 별도로 실행될 프로세싱 동작을 포함한다는 것이다.
또한, 주의 해야 할 점은, 본 명세서에서는, 시스템이 2개이상의 디바이스로 이루어진 전체를 나타낸다는 것이다.
설명한 바와 같이, 트랜스포트 스트림 기록 장치 및 방법, 및 본 발명과 연관된 제1 프로그램 기록 매체에 저장된 프로그램에 따르면, 불연속 포인트 정보는 트랜스포트 스트림에 대응하는 데이타베이스로서 데이타 기록 매체에 기록된다. 이러한 신규 구성은 트랜스포트 스트림의 기록으로 하여금 사용자의 명령에 반응하여 즉시 랜덤 액세스 재생이 실현되도록 한다.
또한, 트랜스포트 스트림 기록 장치 및 방법, 및 본 발명과 연관된 제1 프로그램 기록 매체에 저장된 프로그램에 따르면, 트랜스포트 패킷의 판독은 트랜스포트 스트림에 대응하는 데이타베이스의 사용에 의해 시작된다. 이러한 신규 구성도 사용자 명령에 반응하여 빠른 랜덤 액세스 재생을 실현한다.
본 발명의 바람직한 실시예가 특정한 용어를 사용하여 설명되었으나, 그러한 설명은 단지 예시적인 목적을 위한 것이며, 첨부된 청구범위의 범주 또는 사상에 벗어남이 없이 변화 및 변형들이 이루어 질 수 있다는 것을 이해해야 한다.

Claims (56)

  1. 기록 매체 상에 트랜스포트 스트림(transport stream)을 기록하기 위한 트랜스포트 스트림 기록 장치에 있어서,
    상기 트랜스포트 스트림을 구성하는 트랜스포트 패킷으로부터, 상기 트랜스포트 스트림 내의 불연속점을 검출하기 위한 검출기;
    상기 불연속점에 따라서 불연속점 정보를 생성하기 위한 불연속점 정보 생성기; 및
    상기 불연속점 정보와 함께 상기 기록 매체 상에 상기 트랜스포트 패킷을 기록하기 위한 기록 유닛
    을 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  2. 제1항에 있어서,
    상기 검출기는,
    상기 트랜스포트 스트림 내에 위치하는 기준 시간 정보를 추출하기 위한 제1 추출 블럭;
    상기 기준 시간 정보에 기초하여 시스템 시간 정보를 생성하기 위한 시간 정보 생성기; 및
    상기 기준 시간 정보 내의 불연속의 발생을 검출하기 위한 시간 불연속 검출기
    를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  3. 제2항에 있어서,
    상기 불연속점 정보 생성기는, 상기 불연속 정보로서, 시간축을 식별하기 위한 시간축 식별 정보 및 상기 시간축의 개시 시간에 대응하는 위치 정보를 생성하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  4. 제3항에 있어서,
    상기 불연속점 정보 생성기는, 상기 시간축 식별 정보로서, 상기 시간축의 개시 시간에 대응하는 상기 시스템 시간 정보 및 상기 시간축의 종료 시간에 대응하는 상기 시스템 시간 정보를 생성하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  5. 제3항에 있어서,
    상기 불연속점 정보 생성기는, 상기 시간축 식별 정보로서, 상기 시간축 상의 디스플레이 개시 시간에 대응하는 상기 시스템 시간 정보 및 상기 시간축 상의 디스플레이 종료 시간에 대응하는 상기 시스템 시간 정보를 생성하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  6. 제 2항에 있어서,
    상기 기준 시간 정보는 프로그램 클럭(clock) 기준이며, 상기 시스템 시간 정보는 시스템 시간 클럭인것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  7. 제 1항에 있어서,
    상기 검출기는,
    상기 트랜스포트 스트림내에 배치된 프로그램 정보에 기초하여, 프로그램 내용이 변하는 점을 추출하기 위한 제 2의 추출 블럭을 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  8. 제 7항에 있어서,
    상기 불연속점 정보 생성기는 상기 프로그램 내용이 변하는 점에 대응하는 위치 정보를 생성하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  9. 제 8항에 있어서,
    상기 불연속점 정보 생성기는 프로그램 맵을 전송하기 위한 패킷의 패킷 식별자, 프로그램 클럭 기준을 전송하기 위한 패킷의 패킷 식별자, 비디오 스트림을 전송하기 위한 패킷의 패킷 식별자, 비디오 스트림의 코드화 정보, 오디오 스트림을 전송하기 위한 패킷의 패킷 식별자, 및 오디오 스트림의 코드화 정보중의 적어도 하나를 생성하는 것을 특징으로 하는 트랜스포트 스트림 기록장치.
  10. 제1항에 있어서,
    상기 트랜스포트 패킷들로부터, 재생 개시 위치를 제공할 수 있는 데이터를 포함하는 트랜스포트 패킷을 추출하기 위한 제1 해석기; 및
    상기 데이터를 포함하는 상기 트랜스포트 패킷을 식별하기 위한 엔트리 포인트 맵(entry point map)을 생성하기 위한 엔트리 포인트 맵 생성기를 더 포함하고,
    상기 기록 유닛은, 상기 불연속점 정보와 함께, 상기 트랜스포트 스트림에 대응하는 상기 데이터베이스로서 상기 기록 매체 상에 상기 엔트리 포인트 맵을 기록하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  11. 제10항에 있어서,
    상기 제1 해석기는 상기 재생 개시 위치를 제공할 수 있는 상기 데이터를 포함하는 트랜스포트 패킷으로서 I 픽처 데이터를 포함하는 트랜스포트 패킷을 추출하고,
    상기 엔트리 포인트 맵 생성기는 상기 I 픽처 데이터를 포함하는 상기 트랜스포트 패킷의 위치 정보 및 상기 I 픽처의 시간 정보를 이용하여 상기 엔트리 포인트 맵을 생성하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  12. 제1항에 있어서,
    상기 트랜스포트 패킷들로부터 마크점(mark point)을 제공할 수 있는 데이터를 포함하는 트랜스포트 패킷을 추출하기 위한 제2 해석기; 및
    상기 마크점을 제공하는 상기 데이터를 포함하는 상기 트랜스포트 패킷을 식별하기 위한 마크점 정보를 생성하기 위한 마크점 정보 생성기
    를 더 포함하고,
    상기 기록 유닛은 상기 불연속점 정보와 함께 상기 트랜스포트 스트림에 대응하는 상기 데이터베이스로서 상기 기록 매체 상에 상기 마크점 정보를 기록하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  13. 제12항에 있어서,
    상기 마크점 정보 생성기는 상기 마크점의 시간 정보 및 상기 시간 정보가 속하는 시간축을 식별하기 위한 시간축 식별 정보를 이용하여 상기 마크점 정보를 생성하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  14. 제 13항에 있어서,
    상기 시간 정보는 프리젠테이션 시간 스템프(presentation time stamp)인것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  15. 기록 매체 상에 트랜스포트 스트림을 기록하기 위한 트랜스포트 스트림 기록 방법에 있어서,
    상기 트랜스포트 스트림을 구성하는 트랜스포트 패킷으로부터, 상기 트랜스포트 스트림 내의 불연속점을 검출하는 단계;
    상기 불연속점에 따라서 불연속점 정보를 생성하는 단계; 및
    상기 불연속점 정보와 함께 상기 기록 매체 상에 상기 트랜스포트 패킷을 기록하는 단계
    를 포함하는 트랜스포트 스트림 기록 방법.
  16. 제 15항에 있어서,
    상기 검출 단계는,
    상기 트랜스포트 스트림에 위치한 기준 시간 정보를 추출하는 단계;
    상기 기준 시간 정보에 기초하여, 시스템 시간 정보를 생성하는 단계; 및
    상기 기준 시간 정보내에서 불연속의 발생을 검출하는 단계
    를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 방법.
  17. 제 16항에 있어서,
    상기 불연속점 정보 생성 단계는,
    상기 불연속 정보로서, 시간축을 식별하기 위한 시간축 식별 정보 및 상기 시간축의 개시 시간에 대응하는 위치 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 방법.
  18. 제 17항에 있어서,
    상기 불연속점 정보 생성 단계는 상기 시간축 식별 정보로서, 상기 시간축의 개시 시간에 대응하는 시스템 시간 정보 및 상기 시간축의 종료 시간에 대응하는 상기 시스템 시간 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 방법.
  19. 제 17항에 있어서,
    상기 불연속점 정보 생성 단계는 상기 시간축 식별 정보로서, 상기 시간축상의 디스플레이 개시 시간에 대응하는 상기 시스템 시간 정보 및 상기 시간축상의 디스플레이 종료 시간에 대응하는 상기 시스템 시간 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 방법.
  20. 제 16항에 있어서,
    상기 기준 시간 정보는 프로그램 클럭 기준이며, 상기 시스템 시간 정보는 시스템 시간 클럭인 것을 특징으로 하는 트랜스포트 스트림 기록 방법.
  21. 제 15항에 있어서,
    상기 검출 단계는,
    상기 트랜스포트 스트림내에 배치된 프로그램 정보에 기초하여, 프로그램 내용이 변하는 점을 추출하는 단계를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 방법.
  22. 제 21항에 있어서,
    상기 불연속점 정보 생성 단계는,
    상기 프로그램 내용이 변하는 상기 점에 대응하는 위치 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 방법.
  23. 제 22항에 있어서,
    상기 불연속점 정보 생성 단계는,
    프로그램 맵을 전송하기 위한 패킷의 패킷 식별자, 프로그램 클럭 기준을 전송하기 위한 패킷의 패킷 식별자, 비디오 스트림을 전송하기 위한 패킷의 패킷 식별자, 비디오 스트림의 코드화 정보, 오디오 스트림을 전송하기 위한 패킷의 패킷 식별자, 및 오디오 스트림의 코드화 정보중의 적어도 하나를 생성하는 것을 특징으로 하는 트랜스포트 스트림 기록 방법.
  24. 제 15항에 있어서,
    상기 트랜스포트 패킷으로부터, 재생 개시 위치를 제공하는 데이터를 포함하는 트랜스포트 패킷을 추출하는 단계; 및
    상기 데이터를 포함하는 상기 트랜스포트 패킷을 식별하기 위한 엔트리 포인트 맵을 생성하는 단계를 포함하며,
    상기 기록 단계는 상기 불연속점 정보와 함께, 상기 트랜스포트 스트림에 대응하는 상기 데이터 베이스로서 상기 기록 매체상에 상기 엔트리 포인트 맵을 기록하는 것을 특징으로 하는 트랜스포트 스트림 기록 방법.
  25. 제 24항에 있어서,
    상기 추출 단계는,
    상기 재생 개시점을 제공하는 상기 데이터를 포함하는 상기 트랜스포트 패킷으로서 I 픽쳐 데이터를 포함하는 트랜스포트 패킷을 추출하는 단계; 및
    상기 I 픽쳐 데이터 및 상기 I 픽쳐의 시간 정보를 포함하는 상기 트랜스포트 패킷의 위치 정보를 사용하여 상기 엔트리 포인트 맵을 생성하는 단계를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 방법.
  26. 제 15항에 있어서,
    상기 트랜스포트 패킷으로부터 마크점을 제공하는 데이터를 포함하는 트랜스포트 패킷을 추출하는 단계; 및
    상기 마크점을 제공하는 상기 데이터를 포함하는 상기 트랜스포트 패킷을 식별하기 위한 마크점 정보를 생성하는 단계를 더 포함하며,
    상기 기록 단계는 상기 불연속점 정보와 함께, 상기 트랜스포트 스트림에 대응하는 상기 데이터 베이스로서 상기 기록 매체상에 상기 마크점 정보를 기록하는 것을 특징으로 하는 트랜스포트 스트림 기록 방법.
  27. 제 26항에 있어서,
    상기 마크점 정보 생성 단계는,
    상기 시간 정보가 포함된 시간축을 식별하기 위해 상기 마크점의 시간 정보 및 시간축 식별 정보를 사용하여 상기 마크점 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 방법.
  28. 제 27항에 있어서,
    상기 시간 정보는 프리젠테이션 시간 스템프 인것을 특징으로 하는 트랜스포트 스트림 기록 방법.
  29. 데이터 기록 매체 상에 입력된 트랜스포트 스트림을 기록하기 위한 컴퓨터 판독 가능한 프로그램을 기록한 프로그램 기록 매체에 있어서,
    상기 프로그램은,
    상기 트랜스포트 스트림을 구성하는 트랜스포트 패킷으로부터, 상기 트랜스포트 스트림 내의 불연속점을 검출하는 단계;
    상기 불연속점에 따라서 불연속점 정보를 생성하는 단계; 및
    상기 불연속점 정보와 함께 상기 기록 매체 상에 상기 트랜스포트 패킷을 기록하는 단계
    를 포함하는 것을 특징으로 하는 프로그램 기록 매체.
  30. 제 29항에 있어서,
    상기 검출 단계는,
    상기 트랜스포트 스트림내에 위치한 기준 시간 정보를 추출하는 단계;
    상기 기준 시간 정보에 기초하여, 시스템 시간 정보를 생성하는 단계; 및
    상기 기준 시간 정보내의 불연속의 발생을 검출하는 단계를 포함하는 것을 특징으로 하는 프로그램 기록 매체.
  31. 제 30항에 있어서,
    상기 불연속점 정보 생성 단계는,
    상기 불연속 정보로서, 상기 시간축의 개시 시간에 대응하는 시간축 및 위치 정보를 식별하기 위한 시간축 식별 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 프로그램 기록 매체.
  32. 제 31항에 있어서,
    상기 불연속점 정보 생성 단계는,
    상기 시간축 식별 정보로서, 상기 시간축의 개시 시간에 대응하는 상기 시스템 시간 정보 및 상기 시간축의 종료 시간에 대응하는 상기 시스템 시간 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 프로그램 기록 매체.
  33. 제 31항에 있어서,
    상기 불연속점 정보 생성 단계는,
    상기 시간축 식별 정보로서, 상기 시간축상의 디스플레이 개시 시간에 대응하는 상기 시스템 시간 정보 및 상기 시간축상의 디스플레이 종료 시간에 대응하는 상기 시스템 시간 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 프로그램 기록 매체.
  34. 제 30항에 있어서,
    상기 기준 시간 정보는 프로그램 클럭 기준이며, 상기 시스템 시간 정보는 시스템 시간 클럭인 것을 특징으로 하는 프로그램 기록 매체.
  35. 제 29항에 있어서,
    상기 검출 단계는,
    상기 트랜스 포트 스트림내에 배치된 프로그램 정보에 기초하여 프로그램 내용이 변하는 점을 추출하는 단계를 포함하는 것을 특징으로 하는 프로그램 기록 매체.
  36. 제 34항에 있어서,
    상기 불연속점 정보 생성 단계는,
    상기 프로그램 내용이 변하는 상기 점에 대응하는 위치 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 프로그램 기록 매체.
  37. 제 35항에 있어서,
    상기 불연속점 정보 생성 단계는,
    프로그램 맵을 전송하기 위한 패킷의 패킷 식별자, 프로그램 클럭 기준을 전송하기 위한 패킷의 패킷 식별자, 비디오 스트림을 전송하기 위한 패킷의 패킷 식별자, 비디오 스트림의 코드화 정보, 오디오 스트림을 전송하기 위한 패킷의 패킷 식별자, 및 상기 오디오 스트림의 코드화 정보중의 적어도 하나를 생성하는 단계를 포함하는 것을 특징으로 하는 프로그램 기록 매체.
  38. 제 29항에 있어서,
    상기 트랜스포트 패킷으로부터, 재생 개시점을 제공하는 데이터를 포함하는 트랜스포트 패킷을 추출하는 단계; 및
    상기 데이터를 포함하는 상기 트랜스포트 패킷을 식별하기 위한 엔트리 포인트 맵을 생성하는 단계를 더 포함하며,
    상기 기록 단계는, 상기 불연속점 정보와 함께, 상기 엔트리 포인트 맵을, 상기 트랜스포트 스트림에 대응하는 상기 데이터 베이스로서, 상기 기록 매체에 기록하는 것을 특징으로 하는 프로그램 기록 매체.
  39. 제 37항에 있어서,
    상기 추출 단계는,
    상기 재생 개시 위치를 제공하는 상기 데이터를 포함하는 상기 트랜스포트 패킷으로서, I 픽쳐 데이터를 포함하는 트랜스포트 패킷을 추출하는 단계; 및
    상기 I 픽쳐 데이터 및 상기 I 픽쳐의 시간 정보를 포함하는 상기 트랜스포트 패킷의 위치 정보를 사용하여 상기 엔트리 포인트 맵을 생성하는 단계를 포함하는 것을 특징으로 하는 프로그램 기록 매체.
  40. 제 29항에 있어서,
    상기 트랜스포트 패킷으로부터 마크점을 제공하는 데이터를 포함하는 트랜스포트 패킷을 추출하는 단계; 및
    상기 마크점을 제공하는 상기 데이터를 포함하는 상기 트랜스포트 패킷을 식별하기 위한 마크점 정보를 생성하는 단계를 더 포함하고,
    상기 기록 단계는, 상기 불연속점 정보와 함께, 상기 트랜스포트 스트림에 대응하는 상기 데이터 베이스로서, 상기 기록 매체에 상기 마크점 정보를 기록하는 것을 특징으로 하는 프로그램 기록 매체.
  41. 제 40항에 있어서,
    상기 마크점 정보 생성 단계는,
    상기 마크점의 시간 정보 및 상기 시간 정보가 포함된 시간축을 식별하기 위한 시간축 식별 정보를 사용하여 상기 마크점 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 프로그램 기록 매체.
  42. 제 41항에 있어서,
    상기 시간 정보는 프리젠테이션 시간 스템프인 것을 특징으로 하는 프로그램 기록 매체.
  43. 기록 매체 상에 기록된 트랜스포트 스트림을 재생하기 위한 트랜스포트 스트림 재생 장치에 있어서,
    상기 기록 매체로부터 상기 트랜스포트 스트림을 재생하기 위한 재생 유닛;
    상기 기록 매체로부터 상기 트랜스포트 스트림의 시간축 식별 정보 및 엔트리 포인트 맵이 재생되도록 제어를 실행하기 위한 재생 제어기; 및
    재생 개시 위치를 찾아서 상기 시간축 식별 정보 및 상기 엔트리 포인트 맵을 검색하기 위한 제어기
    를 포함하며,
    상기 재생 제어기는 상기 재생 개시 위치에 따라서 상기 기록 매체가 판독되도록 상기 재생 유닛을 제어하는 것을 특징으로 하는 트랜스포트 스트림 재생 장치.
  44. 기록 매체로부터 트랜스포트 스트림을 재생하기 위한 트랜스포트 스트림 재생 방법에 있어서,
    상기 재생 매체로부터 상기 트랜스포트 스트림의 시간축 식별 정보 및 엔트리 포인트 맵을 재생하는 단계;
    재생 개시 위치를 찾아서 상기 시간축 식별 정보 및 상기 엔트리 포인트 맵을 검색하는 단계; 및
    상기 재생 개시 위치에 따라서 상기 기록 매체를 판독하는 단계
    를 포함하는 것을 특징으로 하는 트랜스포트 스트림 재생 방법.
  45. 기록 매체로부터 트랜스포트 스트림을 재생하기 위한 컴퓨터 판독 가능한 프로그램을 기록한 프로그램 기록 매체에 있어서, 상기 프로그램은,
    상기 재생 매체로부터 상기 트랜스포트 스트림의 시간축 식별 정보 및 엔트리 포인트 맵을 재생하는 단계;
    재생 개시 위치를 찾아서 상기 시간축 식별 정보 및 상기 엔트리 포인트 맵을 검색하는 단계; 및
    상기 재생 개시 위치에 따라서 상기 기록 매체를 판독하는 단계
    를 포함하는 것을 특징으로 하는 프로그램 기록 매체.
  46. 트랜스포트 스트림 기록 장치에 있어서,
    트랜스포트 스트림이 입력되는 입력 유닛;
    상기 트랜스포트 스트림내의 PCR_PID 값이 불변하는 단위 간격에서 재생 관리 정보를 생성하는 생성기; 및
    상기 트랜스포트 스트림과 함께 상기 재생 관리 정보를 기록하는 기록 유닛
    을 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  47. 제 46항에 있어서,
    상기 생성기는, PCR_PID 를 식별하기 위한 정보를 추출하는 해석기를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  48. 제 46항에 있어서,
    상기 생성기는, 상기 단위 간격에 포함된 비디오 기본 스트림의 번호를 추출하는 해석기를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  49. 제 46항에 있어서,
    상기 생성기는, 상기 단위 간격에 포함된 오디오 기본 스트림의 번호를 추출하는 해석기를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  50. 제 46항에 있어서,
    상기 생성기는, 상기 단위 간격에 포함된 각 비디오 스트림의 패킷 식별기를 추출하는 해석기를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  51. 제 46항에 있어서,
    상기 생성기는, 상기 단위 간격에 포함된 각 오디오 스트림의 패킷 식별기를 식별하기 위한 정보를 추출하는 해석기를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  52. 제 46항에 있어서,
    상기 생성기는, 상기 단위 간격에 포함된 각 비디오 스트림의 코딩 특성 정보를 추출하는 해석기를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  53. 제 46항에 있어서,
    상기 생성기는, 상기 단위 간격에 포함된 각 오디오 스트림의 코딩 특성 정보를 추출하는 해석기를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 장치.
  54. 트랜스포트 스트림 기록 방법에 있어서,
    입력된 트랜스포트 스트림내의 PCR_PID 값이 불변하는 각 단위 간격에서 재생 관리 정보를 생성하는 단계; 및
    상기 트랜스포트 스트림과 함께 상기 재생 관리 정보를 기록하는 단계
    를 포함하는 것을 특징으로 하는 트랜스포트 스트림 기록 방법.
  55. 기록 매체상에 트랜스포트 스트림을 기록하기 위한 컴퓨터 판독 가능한 프로그램을 기록한 프로그램 기록 매체에 있어서, 상기 프로그램은,
    입력된 트랜스포트 스트림내의 PCR_PID 값이 불변하는 각 단위 간격에서 재생 관리 정보를 생성하는 단계; 및
    상기 트랜스포트 스트림과 함께 상기 재생 관리 정보를 기록하는 단계
    를 포함하는 것을 특징으로 하는 프로그램 기록 매체.
  56. 트랜스포트 스트림을 기록하는 기록 매체에 있어서,
    재생 관리 정보는 상기 트랜스포트 스트림내의 PCR_PID 값이 불변하는 각 단위 간격내에 기록되는 것을 특징으로 하는 기록 매체.
KR20000057428A 1999-09-29 2000-09-29 트랜스포트 스트림 기록 장치 및 방법, 트랜스포트 스트림재생 장치 및 방법, 및 프로그램 기록 매체 KR100564181B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP1999-275837 1999-09-29
JP27583799 1999-09-29

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020040047389A Division KR100661954B1 (ko) 1999-09-29 2004-06-24 트랜스포트 스트림 기록 장치 및 방법, 트랜스포트 스트림재생 장치 및 방법, 및 프로그램 기록 매체

Publications (2)

Publication Number Publication Date
KR20010050766A true KR20010050766A (ko) 2001-06-25
KR100564181B1 KR100564181B1 (ko) 2006-03-29

Family

ID=17561131

Family Applications (2)

Application Number Title Priority Date Filing Date
KR20000057428A KR100564181B1 (ko) 1999-09-29 2000-09-29 트랜스포트 스트림 기록 장치 및 방법, 트랜스포트 스트림재생 장치 및 방법, 및 프로그램 기록 매체
KR1020040047389A KR100661954B1 (ko) 1999-09-29 2004-06-24 트랜스포트 스트림 기록 장치 및 방법, 트랜스포트 스트림재생 장치 및 방법, 및 프로그램 기록 매체

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020040047389A KR100661954B1 (ko) 1999-09-29 2004-06-24 트랜스포트 스트림 기록 장치 및 방법, 트랜스포트 스트림재생 장치 및 방법, 및 프로그램 기록 매체

Country Status (7)

Country Link
US (2) US6950604B1 (ko)
EP (3) EP1089565B1 (ko)
JP (2) JP4389365B2 (ko)
KR (2) KR100564181B1 (ko)
CN (2) CN1294751C (ko)
HK (2) HK1041392B (ko)
TW (1) TW520605B (ko)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL132859A (en) 1999-11-10 2008-07-08 Nds Ltd Data stream processing system
BRPI0103897B1 (pt) * 2000-01-10 2015-07-28 Koninkl Philips Nv Métodos para gerar marcas de tempo de chegada de pacote de uma sequência de tempo real recebida de pacotes de sinal de informação, para reproduzir uma sequência de tempo real armazenada de pacotes de sinal de informação e para reproduzir duas sequências concatenadas de pacotes de sinal de informação em tempo real armazenados e aparelhos para gravar uma sequência de tempo real de pacotes de sinal de informação
JP4352567B2 (ja) * 2000-03-17 2009-10-28 ソニー株式会社 データ処理装置及び方法
US7284064B1 (en) 2000-03-21 2007-10-16 Intel Corporation Method and apparatus to determine broadcast content and scheduling in a broadcast system
JP4599740B2 (ja) 2000-04-21 2010-12-15 ソニー株式会社 情報処理装置および方法、記録媒体、プログラム、並びに記録媒体
CN1199446C (zh) * 2000-04-21 2005-04-27 索尼公司 信息处理设备和方法
EP1280348A4 (en) * 2000-04-21 2004-10-06 Sony Corp INFORMATION PROCESSING DEVICE AND PROCEDURE, PROGRAM AND RECORDING MEDIUM
JP3794257B2 (ja) * 2000-09-27 2006-07-05 日本ビクター株式会社 映像信号再生装置
JP2002135729A (ja) * 2000-10-30 2002-05-10 Sony Corp 記録再生装置、記録再生装置の変速再生方法
ES2401565T3 (es) 2001-03-08 2013-04-22 Sony Corporation Grabadora de datos
US7295755B2 (en) * 2001-06-22 2007-11-13 Thomson Licensing Method and apparatus for simplifying the access of metadata
JP4409792B2 (ja) * 2001-06-22 2010-02-03 ソニー株式会社 データ伝送装置および方法、記録媒体並びにプログラム
GB0117926D0 (en) * 2001-07-23 2001-09-12 Nds Ltd Method for random access to encrypted content
EP1280362A3 (en) * 2001-07-27 2004-05-12 Matsushita Electric Industrial Co., Ltd. Digital video recording/reproduction apparatus and program therefor
US7231653B2 (en) * 2001-09-24 2007-06-12 Intel Corporation Method for delivering transport stream data
US8943540B2 (en) 2001-09-28 2015-01-27 Intel Corporation Method and apparatus to provide a personalized channel
JP3948979B2 (ja) * 2002-02-18 2007-07-25 パイオニア株式会社 情報記録媒体、情報記録装置及び方法、情報再生装置及び方法、情報記録再生装置及び方法、記録又は再生制御用のコンピュータプログラム、並びに制御信号を含むデータ構造
JP3954406B2 (ja) * 2002-02-18 2007-08-08 パイオニア株式会社 情報記録媒体、情報記録装置及び方法、情報再生装置及び方法、情報記録再生装置及び方法、記録又は再生制御用のコンピュータプログラム、並びに制御信号を含むデータ構造
US7693399B2 (en) * 2002-07-11 2010-04-06 Lg Electronics Inc. Method for providing program specific information recorded on high density disc medium
US8189730B2 (en) * 2002-09-30 2012-05-29 Ati Technologies Ulc Method and apparatus for system time clock recovery
KR100541114B1 (ko) * 2002-12-27 2006-01-11 엘지전자 주식회사 다이나믹 서치 방법
KR20040096718A (ko) * 2003-05-10 2004-11-17 삼성전자주식회사 멀티미디어 데이터 재생장치, 오디오 데이터 수신방법 및오디오 데이터 구조
DE10355345A1 (de) 2003-11-25 2005-06-23 Deutsche Thomson-Brandt Gmbh Verfahren und Vorrichtung zum Speichern oder Wiederfinden von definierten Positionen in einem Datenstrom
US8391672B2 (en) 2004-02-06 2013-03-05 Panasonic Corporation Recording medium, reproduction device, program, and reproduction method
ATE433828T1 (de) * 2004-04-13 2009-07-15 Black & Decker Inc Elektrisches schleifgerät mit niedrigem profil
EP1746825B1 (en) 2004-04-16 2011-06-08 Panasonic Corporation Recording medium, reproduction device, program
EP1761055A4 (en) 2004-06-02 2007-05-30 Matsushita Electric Ind Co Ltd RECORDING MEDIUM, PLAYING DEVICE, PROGRAM AND PLAYING PROCESS
WO2006003814A1 (ja) * 2004-07-01 2006-01-12 Mitsubishi Denki Kabushiki Kaisha ランダムアクセス可能な映像情報記録媒体、及び記録方法、及び再生装置及び再生方法
US20070185941A1 (en) 2004-08-31 2007-08-09 Yoshinori Matsui Information recording medium, multiplexer, and decoder
US8150232B2 (en) 2004-09-03 2012-04-03 Panasonic Corporation Recording medium, recording device, program, and recording method
US7742687B2 (en) * 2005-03-22 2010-06-22 Mediatek Inc. Digital television recorders and stream format conversion and methods thereof
JP4661469B2 (ja) * 2005-09-08 2011-03-30 ソニー株式会社 放送受信録画装置
CN100518312C (zh) * 2006-03-06 2009-07-22 鸿富锦精密工业(深圳)有限公司 流媒体数据处理系统及方法
US8125987B2 (en) * 2006-03-30 2012-02-28 Broadcom Corporation System and method for demultiplexing different stream types in a programmable transport demultiplexer
JP4719053B2 (ja) * 2006-03-31 2011-07-06 株式会社東芝 エントリポイントを用いた再生方法およびこの方法を用いる記録再生装置
KR101323331B1 (ko) * 2006-11-06 2013-10-29 삼성전자주식회사 불연속 동영상 데이터의 재생 방법 및 장치
JP2008271253A (ja) * 2007-04-20 2008-11-06 Toshiba Corp ストリーム再生装置
KR101346735B1 (ko) * 2007-07-13 2014-01-03 삼성전자주식회사 전송 스트림 저장장치 및 방법
JP5351039B2 (ja) * 2007-11-01 2013-11-27 パナソニック株式会社 記録媒体、再生装置、記録装置、再生方法、及び記録方法
US9571901B2 (en) * 2007-12-28 2017-02-14 Intel Corporation Synchronizing audio and video frames
KR20100059009A (ko) * 2008-11-25 2010-06-04 삼성전자주식회사 디지털 방송장치 및 디지털 방송방법
US10028018B1 (en) 2011-03-07 2018-07-17 Verint Americas Inc. Digital video recorder with additional video inputs over a packet link
JP5143295B1 (ja) * 2012-01-27 2013-02-13 株式会社東芝 電子機器及びインデックス生成方法
JP6493403B2 (ja) * 2014-06-30 2019-04-03 ソニー株式会社 ファイル生成装置および方法、並びにコンテンツ再生装置および方法
US10490226B2 (en) * 2015-07-22 2019-11-26 Arris Enterprises Llc Metadata recordation and navigation for stitched content
JP6502789B2 (ja) * 2015-08-25 2019-04-17 株式会社東芝 コミュニケーション支援装置、コミュニケーション支援方法、および、プログラム

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB887574A (en) 1960-01-22 1962-01-17 Standard Telephones Cables Ltd Improvements in or relating to electric wave filters
JP2785220B2 (ja) * 1992-09-22 1998-08-13 ソニー株式会社 データ符号化装置および方法、並びにデータ復号化装置および方法
CA2110334C (en) * 1992-12-04 2002-02-19 Masaki Oguro Apparatus for recording and reproducing a digital video and audio signal
JP3483612B2 (ja) * 1994-04-08 2004-01-06 株式会社東芝 記録方法、記録装置並びに再生装置
JP3517463B2 (ja) * 1994-11-14 2004-04-12 キヤノン株式会社 再生装置
JP3528989B2 (ja) * 1995-01-20 2004-05-24 ソニー株式会社 データ多重化装置、データ多重化方法、多重化データ処理装置および多重化データ処理方法
US5619337A (en) * 1995-01-27 1997-04-08 Matsushita Electric Corporation Of America MPEG transport encoding/decoding system for recording transport streams
JP4095681B2 (ja) 1995-02-24 2008-06-04 株式会社日立製作所 データ記録方法及び装置及びデータ記録再生装置
US5745643A (en) * 1995-04-06 1998-04-28 Kabushiki Kaisha Toshiba System for and method of reproducing playback data appropriately by the use of attribute information on the playback data
JP3740712B2 (ja) 1995-06-13 2006-02-01 三菱電機株式会社 記録再生装置および記録再生方法
JP3484832B2 (ja) * 1995-08-02 2004-01-06 ソニー株式会社 記録装置、記録方法、再生装置及び再生方法
JPH0974566A (ja) * 1995-09-04 1997-03-18 Sony Corp 圧縮符号化装置及び圧縮符号化データの記録装置
TW305043B (ko) * 1995-09-29 1997-05-11 Matsushita Electric Ind Co Ltd
TW319942B (ko) * 1995-11-14 1997-11-11 Nippon Bickter Kk
JP3060919B2 (ja) 1995-11-16 2000-07-10 松下電器産業株式会社 圧縮動画像復号・表示装置および圧縮動画像簡易編集装置
JP4190594B2 (ja) 1995-12-28 2008-12-03 ソニー株式会社 電子機器及び信号処理方法
US6334024B1 (en) * 1996-02-13 2001-12-25 Victor Company Of Japan, Ltd. Helical scan data recording apparatus and a helical scan data reproducing apparatus
JP3233850B2 (ja) * 1996-03-13 2001-12-04 松下電器産業株式会社 デジタル放送受信システム
EP0932949B1 (en) 1996-10-11 2004-12-22 Sarnoff Corporation Apparatus and method for analyzing bitstreams
KR100480156B1 (ko) * 1996-11-29 2005-07-12 엘지전자 주식회사 광디스크기록/재생장치
US6711343B1 (en) * 1997-07-17 2004-03-23 Matsushita Electric Industrial Co., Ltd. Data recording/reproducing device, file managing method, file information generating method, file managing method, management information generating device, management information analyzing device, and medium
JP3450662B2 (ja) 1997-08-14 2003-09-29 パイオニア株式会社 情報記録媒体、その再生装置及び方法並びにその記録装置及び方法
CN1237310A (zh) 1997-08-21 1999-12-01 索尼公司 在盘上记录图片和从盘再现图片的方法和装置及记录介质
EP1300850A3 (en) * 1997-09-17 2004-06-09 Matsushita Electric Industrial Co., Ltd. Video data editing apparatus, optical disc for use a recording medium of a video data editing apparatus, and computer-readable recoding medium storing an editing program
JPH1196730A (ja) 1997-09-17 1999-04-09 Matsushita Electric Ind Co Ltd 光ディスク及びその編集装置、再生装置
KR100750520B1 (ko) * 1997-09-25 2007-08-21 소니 가부시끼 가이샤 부호화 스트림 생성 장치 및 방법, 데이터 전송 시스템 및 방법, 편집 시스템 및 방법
JPH11112452A (ja) 1997-10-03 1999-04-23 Sony Corp 情報処理装置および方法、並びに伝送媒体
CN1222723A (zh) * 1997-10-17 1999-07-14 索尼公司 记录/重播装置、方法及记录介质
EP2146499B1 (en) 1997-11-14 2012-10-31 Sony Deutschland Gmbh Distribution of MPEG-2 transport streams on the IEEE 1394-based home network
JPH11261958A (ja) * 1998-03-09 1999-09-24 Sony Corp 映像編集装置及び映像編集方法
US6788880B1 (en) * 1998-04-16 2004-09-07 Victor Company Of Japan, Ltd Recording medium having a first area for storing an audio title set and a second area for storing a still picture set and apparatus for processing the recorded information
US6643449B1 (en) * 1998-11-10 2003-11-04 Kabushiki Kaisha Toshiba Recording/reproducing apparatus, video data recording apparatus, recording method, reproducing method
WO2001015163A1 (fr) 1999-08-20 2001-03-01 Sony Corporation Dispositif d'enregistrement et de reproduction d'information
EP1081967B1 (en) * 1999-09-02 2011-01-19 Panasonic Corporation Recording apparatus and coding apparatus
US6738427B2 (en) * 2000-09-15 2004-05-18 International Business Machines Corporation System and method of processing MPEG streams for timecode packet insertion

Also Published As

Publication number Publication date
TW520605B (en) 2003-02-11
EP1613088B1 (en) 2016-05-25
CN1522062A (zh) 2004-08-18
US20040156623A1 (en) 2004-08-12
JP4737572B2 (ja) 2011-08-03
KR20040068055A (ko) 2004-07-30
EP1089565B1 (en) 2012-06-13
EP2323393B1 (en) 2019-07-31
KR100661954B1 (ko) 2006-12-28
CN1303216A (zh) 2001-07-11
EP1613088A1 (en) 2006-01-04
HK1086143A1 (zh) 2006-09-08
JP4389365B2 (ja) 2009-12-24
EP1089565A2 (en) 2001-04-04
JP2001169247A (ja) 2001-06-22
US6950604B1 (en) 2005-09-27
EP1089565A3 (en) 2005-01-05
CN1294751C (zh) 2007-01-10
KR100564181B1 (ko) 2006-03-29
JP2009277349A (ja) 2009-11-26
HK1041392A1 (en) 2002-07-05
EP2323393A3 (en) 2011-12-28
HK1041392B (zh) 2005-12-02
CN1197388C (zh) 2005-04-13
EP2323393A2 (en) 2011-05-18
US7778518B2 (en) 2010-08-17

Similar Documents

Publication Publication Date Title
KR100564181B1 (ko) 트랜스포트 스트림 기록 장치 및 방법, 트랜스포트 스트림재생 장치 및 방법, 및 프로그램 기록 매체
RU2291501C2 (ru) Устройство и способ для записи данных
KR100722357B1 (ko) 전송 스트림 기록 장치 및 방법, 전송 스트림 재생 장치 및 방법, 프로그램 기록 매체, 데이터 기록 매체, 및 컴퓨터 판독가능한 캐리어
KR100695657B1 (ko) 기록 장치, 기록 방법, 재생 장치, 재생 방법 및 기록 매체
US5758008A (en) Information recording apparatus and information reproducing apparatus
EP1369869A1 (en) Information recording apparatus and method, information reproducing apparatus and method, information recording medium, program storage medium, and program
US20040114908A1 (en) Av data recording/reproducing apparatus and method for the same, and disc on which data is recorded by the av data recording/reproducing apparatus or method
US7680398B2 (en) Recording device, information recording medium and recording method
KR20050050444A (ko) 기록 장치, 재생 장치, 기록 방법, 재생 방법 및 그기록매체
MXPA06007710A (en) Reproduction device, reproduction method, program, recording medium, and data structure

Legal Events

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

Payment date: 20130308

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140307

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee