KR100750520B1 - 부호화 스트림 생성 장치 및 방법, 데이터 전송 시스템 및 방법, 편집 시스템 및 방법 - Google Patents

부호화 스트림 생성 장치 및 방법, 데이터 전송 시스템 및 방법, 편집 시스템 및 방법 Download PDF

Info

Publication number
KR100750520B1
KR100750520B1 KR1019997004625A KR19997004625A KR100750520B1 KR 100750520 B1 KR100750520 B1 KR 100750520B1 KR 1019997004625 A KR1019997004625 A KR 1019997004625A KR 19997004625 A KR19997004625 A KR 19997004625A KR 100750520 B1 KR100750520 B1 KR 100750520B1
Authority
KR
South Korea
Prior art keywords
data
stream
time code
encoded
layer
Prior art date
Application number
KR1019997004625A
Other languages
English (en)
Other versions
KR20000069135A (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 KR20000069135A publication Critical patent/KR20000069135A/ko
Application granted granted Critical
Publication of KR100750520B1 publication Critical patent/KR100750520B1/ko

Links

Images

Classifications

    • 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/432Content retrieval operation from a local storage medium, e.g. hard-disk
    • H04N21/4325Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2368Multiplexing of audio and video streams
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/233Processing of audio elementary streams
    • 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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234327Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
    • 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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234354Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering signal-to-noise ratio parameters, e.g. requantization
    • 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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4305Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43072Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
    • 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/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/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/439Processing of audio elementary 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/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
    • 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
    • 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/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/90Tape-like record carriers
    • 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/032Electronic editing of digitised analogue information signals, e.g. audio or video signals on tapes
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)

Abstract

오리지널 데이터에 부가된 시간 코드들이 각각의 화상에 대응하여 묘사된 인코드 스트림이 발생된다. 비디오 인코더(16), 오디오 인코더(17), AC3 인코더(18)는 각각, 비디오 엘리멘터리 스트림, 오디오 엘리멘터리 스트림, AC3 스트림의 각 데이터 구조에 있어서 모든 디코딩 및 재생 유닛(픽처, 오디오 프레임)에 존재할 수 있고 임의의 데이터가 기록될 수 있는 영역에서 오리지널 데이터에 부가된 시간 코드들에 대한 정보를 기록한다.
비디오 인코더, 오디오 인코더, AC3 인코더, 인코드 스트림

Description

부호화 스트림 생성 장치 및 방법, 데이터 전송 시스템 및 방법, 편집 시스템 및 방법{Encoded stream generating device and method, data transmission system and method, and editing system and method}
본 발명은 비디오 데이터 및 오디오 데이터 등의 소재 데이터를 부호화할 때, 각 픽처마다 타임 코드가 부가된 부호화 스트림을 생성하는 부호화 스트림 생성 장치 및 방법, 각 픽처마다 타임 코드가 부가된 부호화 스트림을 전송하는 데이터 전송 시스템 및 방법, 또한, 부호화 스트림에 부가된 타임 코드를 사용함으로써 소재 데이터를 편집하는 편집 시스템 및 방법에 관한 것이다.
최근에, 비디오 데이터나 오디오 데이터를 압축 부호화하는 MPEG(Moving Picture Experts Croup)규격에 관한 기술이 비약적으로 발달하여, MPEG 규격에 의해서 압축 부호화된 방송 소재를 수신 장치 측으로 전송하는 디지털 전송 시스템이나, MPEG(Moving Picture Experts Group)규격에 의해서 압축 부호화된 비디오 데이터나 오디오 데이터를, 대용량의 디지털 데이터를 기록할 수 있는 광디스크인 DVD(디지털·비디오·디스크)와 같은 축적 미디어를 사용하여 기록하거나, 재생하는 기록재생 시스템이 제안되어 있다.
또한, 비디오 데이터나 오디오 데이터나 그 밖의 프라이비트 데이터 등을 개별로 부호화하여 얻어지는 복수 종류의 부호화 스트림(이하, 스트림이라고도 한다.)을 실제의 어플리케이션에 적용하는 경우에는, 각 스트림을 통합하여 전달할 필요가 있고, 이러한 경우에, 디지털 데이터 전송 시스템이 사용되고 있다. 구체적으로는, 디지털 데이터 전송 시스템에서는, 복수종류의 스트림을, 스트림의 전달매체(축적 미디어나 전송로)에 적합하도록 시분할 다중화(멀티플렉스)함으로써, 수신기 측에 전송되는 트랜스포트 스트림을 생성한다. 한편, 수신기 측에서는, 송신 측에서 전송되어 온 트랜스포트 스트림을 수신하고, 비디오나 오디오 등의 종류마다 스트림으로 분리(디멀티플렉스)하여, 개별로 복호화하도록 되어 있다.
그런데, 이러한 전송 시스템에 있어서 취급되는 소재 데이터(비디오 데이터 및 오디오 데이터)에는, 일반적으로, 타임 코드라고 불리는 시간 정보가 첨부된다. 이 타임 코드란 SMPTE에서 정의되어 있는 시간 정보이며, "Time And Control Data”이다. 구체적으로는, 이 타임 코드는 프레임(FRAMES), 초(SECONDS), 분(MINUTES), 시(H0URS)의 데이터로 구성되어 있다.
한편, 디지털 데이터 전송 시스템에서는, 시간 정보는 STC(System Time Clock; 기준이 되는 시간 정보), PTS(Presentation Time Stamp; 재생출력의 시간관리정보), DTS(Decoding Time Stamp; 복호의 시간 관리 정보), SCR(System Clock Reference;시간 기준 참조치), PCR(Program Clock Reference; 프로그램 시간기준 참조치)이라는 독자의 시간개념에 따라서 관리되고 있다. 즉, MPEG 규격에 따라서 부호화된 부호화 스트림은 상술한 타임 코드와는 전혀 다른 시간 정보에 의해서 처리 타이밍이 관리되고 있다.
결국, 베이스밴드 비디오 데이터를 취급하고, 처리하는 베이스밴드 시스템의 분야에서, 베이스 밴드 비디오 데이터는 타임 코드를 사용하여 모든 처리 타이밍이 관리되어 있다. 한편, 부호화 스트림을 취급, 처리하는 부호화 시스템의 분야에서는, 부호화 스트림은 상술한 STC, PTS, DTS 및 SCR, PCR 등의 독자의 시간 정보에 의해서 모든 처리 타이밍이 관리되고 있다.
그런데, MPEG 규격에 있어서 부호화된 스트림은, 시퀀스 레이어와, GOP(Group 0f Picture) 레이어와, 픽처 레이어와, 슬라이스 레이어와, 매크로 블록 레이어와, 블록 레이어로 구성되어 있다. 또한, MPEG 규격에서는 GOP 레이어의 헤더 데이터를 기술하기 위한 group_of_picture_header()라는 함수가 정의되어 있다. 이 함수는, GOP 레이어의 헤더 데이터로서, 32비트의 group_start_code, 25비트의 time_code, 1 비트의 closed_gop, 및 1 비트의 broken_link라는 데이터를 갖고 있다. 이 group_start_code는, 그룹오브픽처 헤더의 시작을 나타내기 위한 데이터이고, GOP의 선두 픽처의 시퀀스의 선두로부터의 시간을 나타내는 타임 코드이다. closed_gop는, GOP 내의 화상이 다른 GOP에서 독립재생 가능한 것을 나타내는 플래그 데이터이다. broken_link는 편집 등을 위해서 GOP 내의 선두의 B 픽처가 정확하게 재생할 수 없는 것을 나타내는 플래그 데이터이다.
MPEG 규격에 있어서 정의되어 있는 group_of_picture_header() 함수에 의해서, GOP 레이어의 헤더 데이터로서 기술되는 time_code는 전송되는 프로그램의 시퀀스의 선두로부터의 타임 코드를 나타내는 데이터로서, 오리지널 소재에 부여되어 있는 오리지널 타임 코드가 사용되고 있는 것은 아니다. 예를 들면, 오리지널 소재의 선두 프레임에 대하여 외부 장치로부터 공급된 오리지널 타임 코드「01:30:00:00」가 부여되어 있었다고 하더라도, 그 오리지널 소재의 선두 프레임이 부호화되면, 부호화 스트림의 GOP 레이어의 헤더 데이터로서 기술되는 time_code는 「00:00:00:00」이 된다. 또한, 오리지널 소재의 각 프레임에 부여된 오리지널 타임 코드가 불연속인 타임 코드이었다고 해도, 부호화 스트림의 GOP 레이어의 헤더 데이터로서 기술되는 time_code는, 시퀀스 타임 코드가 된다. 즉, 오리지널 소재에 부여된 오리지널 타임 코드와, 부호화 스트림의 GOP 레이어의 헤더 데이터로서 기술되는 타임 코드는 반드시 일치하지 않는다.
또한, MPEG 규격의 group_of_picture_header() 함수에 의해서 기술되는 time_code는 GOP 레이어의 헤더 데이터로서 기술되는 데이터이기 때문에, MPEG 규격에 있어서는, 타임 코드를 GOP마다밖에 기술할 수 없다. 즉, MPEG 규격에 있어서는, 부호화 스트림의 GOP 레이어에 타임 코드를 기술하는 것에 의하여 GOP마다 타임 코드를 전송할 수는 있지만, 각 프레임(각 픽처)마다 타임 코드를 기술하도록 정의되어 있지 않기 때문에, 각 픽처마다 타임 코드를 전송할 수 없다.
따라서, MPEG 규격의 부호화 스트림에는, 타임 코드 정보가 각 픽처마다 부가되어 있지 않기 때문에, 오리지널 소재를 MPEG 규격에 따라서 부호화하여 부호화 스트림으로서 수신 장치 측으로 전송하는 경우에 있어서, 오리지널 소재의 각 프레임에 부여되어 있는 오리지널 타임 코드를, 수신 장치 측으로 전송할 수 없다는 문제가 있었다.
그 결과, 수신 장치 측에서, 오리지널 소재에 대하여 부여된 오리지널 타임 코드를 사용하여 편집하거나, 오리지널 소재와 오리지널 타임 코드가 대응되어서 기억 미디어와 완전히 같은 기록 미디어를 작성한다는 것을 전혀 실현할 수 없었다.
본 발명은 이러한 문제점을 감안하여 이루어진 것으로, 그 목적은 오리지널 소재 데이터에 첨부된 타임 코드가 각 픽처(각 프레임)에 대응하도록 기술된 부호화 스트림을 생성하는 부호화 스트림 생성 장치 및 방법, 및 타임 코드가 각 픽처(각 프레임)에 대응하도록 기술된 부호화 스트림을 전송하는 데이터 전송 시스템 및 방법을 제공하는 것이다.
또한, 본 발명의 다른 목적은 오리지널 소재 데이터에 첨부된 타임 코드를, 부호화 스트림과 같이 전송함으로써, 수신 측에서, 전송된 타임 코드를 사용한 편집처리를 가능하게 하는 편집 시스템 및 방법을 제공하는 것이다.
본 발명의 부호화 스트림 생성 장치는, 소재 데이터를 부호화함으로써 얻어지는 부호화 스트림을 생성하는 부호화 스트림 생성 장치에 있어서, 소재 데이터에 첨부된 타임 코드를, 부호화 스트림의 데이터 구조에 있어서 복호 재생의 단위마다 존재하고 또한 임의의 데이터를 기록할 수 있는 영역에 기록하여, 부호화 스트림을 생성하는 부호화 스트림 생성 수단을 구비한 것이다.
본 발명의 부호화 스트림 생성 방법은, 소재 데이터를 부호화함으로써 얻어지는 부호화 스트림을 생성하는 부호화 스트림 생성 방법에 있어서, 소재 데이터에 첨부된 타임 코드를, 부호화 스트림의 데이터 구조에 있어서 복호재생의 단위마다 존재하고 또한 임의의 데이터를 기록할 수 있는 영역에 기록하여, 부호화 스트림을 생성하는 것이다.
이들 부호화 스트림 생성 장치 또는 부호화 스트림 생성 방법에서는, 소재 데이터에 첨부된 타임 코드가, 부호화 스트림의 데이터 구조에 있어서 복호 재생의 단위마다 존재하고 또한 임의의 데이터를 기록할 수 있는 영역에 기록되어, 부호화 스트림이 생성된다.
본 발명의 다른 부호화 스트림 생성 장치는, 부호화 스트림을 생성하는 부호화 스트림 생성 장치에 있어서, 소스 비디오 데이터를 부호화함으로써 얻어지는 복수의 레이어로 이루어지는 계층구조의 부호화 스트림으로서, 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림을 생성하는 부호화 스트림 생성 수단을 구비한 것이다.
본 발명의 다른 부호화 스트림 생성 방법은, 부호화 스트림을 생성하는 부호화 스트림 생성 방법에 있어서, 소스 비디오 데이터를 부호화함으로써 얻어지는 복수의 레이어로 이루어지는 계층구조의 부호화 스트림으로서, 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림을 생성하는 것이다.
이들 부호화 스트림 생성 장치 또는 부호화 스트림 생성 방법에서는, 부호화 스트림의 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림이 생성된다.
본 발명의 또 다른 부호화 스트림 생성 장치는, 부호화 스트림을 생성하는 부호화 스트림 생성 장치에 있어서, 소스 비디오 데이터를 MPEG 규격에 기초하여 부호화함으로써 생성되는 부호화 스트림으로서, 부호화 스트림의 픽처 레이어의 사용자 데이터 영역에, 소스 비디오 데이터에 첨부된 타임 코드를 나타내는 데이터 엘리멘트가 기술된 부호화 스트림을 생성하는 부호화 스트림 생성 수단을 구비한 것이다.
본 발명의 또 다른 부호화 스트림 생성 방법은, 부호화 스트림을 생성하는 부호화 스트림 생성 방법에 있어서, 소스 비디오 데이터를 MPEG 규격에 기초하여 부호화함으로써 생성되는 부호화 스트림으로서, 부호화 스트림의 픽처 레이어의 사용자 데이터 영역에, 소스 비디오 데이터에 첨부된 타임 코드를 나타내는 데이터 엘리멘트가 기술된 부호화 스트림을 생성하는 것이다.
이들의 부호화 스트림 생성 장치 또는 부호화 스트림 생성 방법에서는, 부호화 스트림의 픽처 레이어의 사용자 데이터 영역에, 소스 비디오 데이터에 첨부된 타임 코드를 나타내는 데이터 엘리멘트가 기술된 부호화 스트림이 생성된다.
본 발명의 데이터 전송 시스템은, 소스 비디오 데이터를 전송하는 데이터 전송 시스템에 있어서, 소스 비디오 데이터와 소스 비디오 데이터에 첨부된 타임 코드가 관련지어져 기억된 기록 매체를 구비하며, 기록 매체로부터 소스 비디오 데이터와 소스 비디오 데이터에 관련하는 타임 코드를 출력하는 데이터 공급 수단과, 소스 비디오 데이터를 부호화함으로써 생성되는 복수의 레이어로 이루어지는 계층구조의 부호화 스트림으로서, 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림을 생성하는 부호화 수단과, 부호화 스트림을 전송하는 전송 수단과, 전송 수단을 통하여 전송된 부호화 스트림을 복호화함과 함께, 부호화 스트림의 신택스를 해석함으로써 부호화 스트림의 픽처 레이어로부터 타임 코드를 추출하는 복호화 수단과, 복호화 수단에 의해서 복호화된 복호화 데이터와 복호화 수단에 의해서 추출된 타임 코드 정보를 관련지어 기록 매체에 기록함으로써, 데이터 공급 수단의 기록 매체와 동일한 데이터가 기록된 기록 매체를 얻는 데이터 기록 수단을 구비한 것이다.
본 발명의 데이터 전송 방법은, 소스 비디오 데이터를 전송하는 데이터 전송 방법에 있어서, 소스 비디오 데이터와 소스 비디오 데이터에 첨부된 타임 코드가 관련지어져 기억된 기록 매체로부터, 소스 비디오 데이터와 소스 비디오 데이터에 관련되는 타임 코드를 출력하는 데이터 공급 단계와, 소스 비디오 데이터를 부호화함으로써 생성되는 복수의 레이어로 이루어지는 계층구조의 부호화 스트림으로서, 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림을 생성하는 부호화 단계와, 부호화 스트림을 전송하는 전송 단계와, 전송 단계에 의해서 전송된 부호화 스트림을 복호화 하는 동시에, 부호화 스트림의 신택스를 해석함으로써 부호화 스트림의 픽처 레이어로부터 타임 코드를 추출하는 복호화 단계와, 복호화 단계에 따라서 복호화된 복호화 데이터와 복호화 단계에 의해서 추출된 타임 코드 정보를 관련지어 기록 매체에 기록함으로써, 데이터 공급 단계에 의해서 출력하는 데이터가 기록된 기록 매체와 동일한 데이터가 기록된 기록 매체를 얻는 데이터 기록 단계를 포함하는 것이다.
이들 데이터 전송 시스템 또는 데이터 전송 방법에서는, 소스 비디오 데이터와 소스 비디오 데이터에 첨부된 타임 코드가 관련지어져 기억된 기록 매체로부터, 소스 비디오 데이터와 소스 비디오 데이터에 관련하는 타임 코드가 출력되고, 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림이 생성되며, 이 부호화 스트림이 전송된다. 또한, 전송된 부호화 스트림이 복호화되는 동시에, 부호화 스트림의 신택스를 해석함으로써 부호화 스트림의 픽처 레이어로부터 타임 코드가 추출되고, 복호화된 복호화 데이터와 추출된 타임 코드 정보를 관련지어 기록 매체에 기록함으로써, 데이터 공급 측에서 출력하는 데이터가 기록된 기록 매체와 동일한 데이터가 기록된 기록 매체가 얻어진다.
본 발명의 편집 시스템은, 소스 비디오 데이터를 편집하는 편집 시스템에 있어서, 소스 비디오 데이터에 대하여 설정된 편집점에 기초하여, 편집 리스트를 생성하는 수단과, 소스 비디오 데이터를 부호화함으로써 생성되는 복수의 레이어로 이루어지는 계층구조의 부호화 스트림이고, 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림을 생성하는 부호화 수단과, 부호화 스트림을 전송하는 전송 수단과, 전송 수단을 통하여 전송된 부호화 스트림을 복호화함과 함께, 부호화 스트림의 신택스를 해석함으로써 부호화 스트림의 픽처 레이어로부터 타임 코드를 추출하는 복호화 수단과, 부호화 스트림의 신택스를 해석함으로써 얻어진 타임 코드와 편집 리스트에 기초하여, 복호화 수단에 의해서 복호화된 복호화 소스 비디오 데이터를 편집하는 편집 수단을 구비한 것이다.
본 발명의 편집 방법은, 소스 비디오 데이터를 편집하는 편집 방법에 있어서, 소스 비디오 데이터에 대하여 설정된 편집점에 기초하여, 편집 리스트를 생성하는 단계와, 소스 비디오 데이터를 부호화함으로써 생성되는 복수의 레이어로 이루어지는 계층구조의 부호화 스트림으로서, 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림을 생성하는 부호화 단계와, 부호화 스트림을 전송하는 전송 단계와, 전송 단계에 의해서 전송된 부호화 스트림을 복호화함과 함께, 부호화 스트림의 신택스를 해석함으로써 부호화 스트림의 픽처 레이어로부터 타임 코드를 추출하는 복호화 단계와, 부호화 스트림의 신택스를 해석함으로써 얻어진 타임 코드와 편집 리스트에 기초하여, 복호화 단계에 의해서 복호화된 복호화 소스 비디오 데이터를 결집하는 편집 단계를 포함하는 것이다.
이들 편집 시스템 또는 편집 방법에서는, 소스 비디오 데이터에 대하여 설정된 편집점에 기초하여 편집 리스트가 생성되고, 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림이 생성되며, 이 부호화 스트림이 전송된다. 또한, 전송된 부호화 스트림이 복호화되는 동시에, 부호화 스트림의 신택스를 해석함으로써 부호화 스트림의 픽처 레이어로부터 타임 코드가 추출되고, 얻어진 타임 코드와 편집 리스트에 기초하여, 복호화된 복호화 소스 비디오 데이터가 편집된다.
본 발명의 다른 편집 시스템은, 소스 비디오 데이터를 부호화함으로써 얻어진 부호화 스트림을 편집하는 편집 시스템에 있어서, 소스 비디오 데이터에 대하여 설정된 편집점에 기초하여, 편집 리스트가 생성하는 수단과, 소스 비디오 데이터를 부호화함으로써 생성되는 복수의 레이어로 이루어지는 계층구조의 부호화 스트림이고, 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림을 생성하는 부호화 수단과, 부호화 스트림의 신택스를 해석함으로써 얻어진 타임 코드와 편집 리스트에 기초하여, 부호화 스트림을 편집하는 스트림 편집 수단을 구비한 것이다.
본 발명의 다른 편집 방법은, 소스 비디오 데이터를 부호화함으로써 얻어진 부호화 스트림을 편집하는 편집 방법에 있어서, 소스 비디오 데이터에 대하여 설정된 편집점에 기초하여, 편집 스트림을 생성하는 단계와, 소스 비디오 데이터를 부호화함으로써 생성되는 복수의 레이어로 이루어지는 계층구조의 부호화 스트림으로서, 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림을 생성하는 부호화 단계와, 부호화 스트림의 신택스를 해석함으로써 얻어진 타임 코드와 편집 리스트에 기초하여, 부호화 스트림을 편집하는 스트림 편집 단계를 포함하는 것이다.
이들 편집 시스템 또는 편집 방법에서는, 소스 비디오 데이터에 대하여 설정된 편집점에 기초하여 편집 리스트가 생성되고, 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림이 생성된다. 또한, 부호화 스트림의 신택스를 해석함으로써 얻어진 타임 코드와 편집 리스트에 기초하여, 부호화 스트림이 편집된다.
본 발명의 또 다른 편집 시스템은, 부호화 스트림을 편집하는 편집 시스템에 있어서, 베이스 밴드의 소스 비디오 데이터를 처리함으로써 설정된 편집점에 기초하여, 편집 리스트를 생성하는 베이스 밴드 시스템과, 소스 비디오 데이터를 부호화함으로써 생성되는 복수의 레이어로 이루어지는 계층구조의 부호화 스트림으로서, 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림을 생성하며, 부호화 스트림의 신택스를 해석함으로써 얻어진 타임 코드와 베이스 밴드 시스템에서 생성된 편집 리스트에 기초하여, 부호화 스트림을 스트림 레벨로 편집하는 부호화 시스템을 구비한 것이다.
본 발명의 또 다른 편집 방법은, 부호화 스트림을 편집하는 편집 방법에 있어서, 베이스 밴드의 소스 비디오 데이터를 처리함으로써 설정된 편집점에 기초하여, 편집 리스트를 생성하는 단계와, 소스 비디오 데이터를 부호화함으로써 생성되는 복수의 레이어로 이루어지는 계층구조의 부호화 스트림이고, 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림을 생성하고, 부호화 스트림의 신택스를 해석함으로써 얻어진 타임 코드와 편집 리스트를 생성하는 단계에 의해서 생성된 편집 리스트에 기초하여, 부호화 스트림을 스트림 레벨로 결집하는 부호화 단계를 포함하는 것이다.
이들 편집 시스템 또는 편집 방법에서는 베이스 밴드의 소스 비디오 데이터를 처리함으로써 설정된 편집점에 기초하여 편집 리스트가 생성된다. 또한, 복수의 레이어 중 픽처 레이어에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림이 생성되고, 부호화 스트림의 신택스를 해석함으로써 얻어진 타임 코드와 생성된 편집 리스트에 기초하여, 부호화 스트림이 스트림 레벨로 편집된다.
본 발명의 그 외의 목적, 특징 및 이점은 다음의 설명으로 충분히 명백하게 될 것이다.
도 1은 본 발명의 일실시예의 형태에 관계되는 부호화 스트림 생성 장치를 포함하는 디지털 데이터 전송 시스템의 구성의 일례를 도시하는 블록도.
도 2는 본 발명의 일실시예의 형태에 관계되는 부호화 스트림 생성 장치를 포함하는 디지털 데이터 처리 시스템의 구성의 일례를 도시하는 블록도.
도 3은 도 1 및 도 2에 있어서의 비디오 인코더의 구성의 일례를 도시하는 블록도.
도 4는 도 1 및 도 2에 있어서의 오디오 인코더의 구성의 일례를 도시하는 블록도.
도 5는 도 1 및 도 2도에 있어서의 AC3 인코더의 구성의 일례를 도시하는 블록도.
도 6은 MPEG 규격에 기초하는 부호화 스트림의 구문을 도시하는 도면.
도 7은 MPEG 규격에 기초하는 부호화 스트림의 구문을 도시하는 도면.
도 8은 MPEG 규격에 기초하는 부호화 스트림의 구문을 도시하는 도면.
도 9는 MPEG 규격에 기초하는 부호화 스트림의 구문을 도시하는 도면.
도 10은 MPEG 규격에 의한 부호화 비디오 스트림의 데이터 구조를 도시하는 도면.
도 11a 및 도 11b는 픽처 레이어의 사용자 데이터 영역 기술되는 타임 코드 정보의 데이터 구조를 도시하는 도면.
도 12는 픽처 레이어의 사용자 데이터 영역에 기술되는 정보의 데이터 식별 코드를 도시하는 도면.
도 13은 부호화 스트림에 타임 코드를 부가하는 제 1 방법을 설명하기 위한 설명도.
도 14는 부호화 스트림에 타임 코드를 부가하는 제 2 방법을 설명하기 위한 설명도.
도 15는 MPEG 규격에 의한 오디오 엘리멘터리 스트림의 데이터 구조를 도시하는 설명도.
도 16a 및 도 16b는 비디오 프레임과 오디오 프레임의 위상차를 설명하기 위한 설명도.
도 17은 AC3 규격에 의한 AC3 스트림의 데이터 구조를 도시하는 설명도.
이하, 본 발명의 일 실시 형태에 관계되는 부호화 스트림 생성 장치 및 부호화 스트림 생성 방법에 관해서, 도면을 참조하여 상세히 설명한다.
도 1은 본 발명의 일 실시의 형태에 관계되는 부호화 스트림 생성 장치를 포함하는 디지털 데이터 전송 시스템의 구성을 도시하는 블록도이다. 도 1에 개시된 디지털 데이터 전송 시스템은, 송신 시스템(1)과 수신 시스템(2)과 그 사이의 전주로(3)로 구성되어 있다. 실제로 이 디지털 데이터 전송 시스템이 운용되는 경우에는, 이 송신 시스템(1)과 수신 시스템(2)은 여러 가지 형태가 생각되고, 예를 들면, 수신 시스템(2)은 메인 또는 지방 등의 방송국인 것이 생각된다. 또한, 송신 시스템이 메인 방송국인 경우에는, 수신 시스템(2)은 지방 방송국인 것이 생각된다. 이하에, 송신 시스템(1) 및 수신 시스템(2)에 관해서 상세히 설명한다.
송신 시스템(1)은 크게 나눠, 베이스 밴드 비디오 데이터 및 베이스 밴드 오디오 데이터를 처리하여, 취급하기 위한 베이스 밴드 시스템(1A)과, 부호화된 부호화 스트림을 취급하는 부호화 시스템(1B)으로 구성된다. 또한, 여기서 설명한 베이스 밴드 및 베이스 밴드 오디오 데이터란, 압축 부호화되지 않는 데이터를 말한다.
송신 시스템(1)의 베이스 밴드 시스템(1A)은 취재 현장에서 비디오 카메라 등에 의해서 촬영된 오리지널 소스 소재가 기록된 테이프를 받아들이고, 그 테이프로부터 오리지널 소스 소재를 재생하거나, 테이프에 정보를 기록하기도 하기 위한 VTR(12)과, 랜덤 액세스 가능한 기록 매체를 가지며, 이 랜덤 액세스 가능한 기록 매체로부터 오리지널 소스 소재를 재생하거나, 기록 매체에 정보를 기록하기도 하기 위한 A/V 서버(13)와, VTR(12)에 있어서의 테이프 및 A/V 서버(13)에 있어서의 기록 매체에 기록된 오리지널 소스 소재를 사용하여 편집 리스트(EDL, 에디트디시젼리스트)를 생성하는 편집기(14)와, VTR(12)로부터 재생된 비디오 데이터(DV) 및 오디오 데이터(DA), A/V 서버(13)로부터 재생된 비디오 데이터(DV) 및 오디오 데이터(DA)를 루팅하여, 소정의 블록에 출력하기 위해서 루터(15)를 구비하고 있다.
송신 시스템(1)의 부호화 시스템(1B)은, 오리지널 소스 소재로서 공급된 비디오 데이터(DV)를 MPEG 비디오 규격에 따라서 인코드(부호화)하고, 비디오 엘리멘터리 스트림(비디오 ES)을 출력하는 비디오 인코더(16)와, 오리지널 소스 소재로서 공급된 오디오 데이터(DA)를 MPEG 오디오 규격에 따라서 인코드하며, 오디오 엘리멘터리 스트림(오디오 ES)을 출력하는 오디오 인코더(17)와, 오리지널 소스 소재로서 공급된 오디오 데이터(DA)를 AC3 규격에 따라서 인코드하여 프라이비트 엘리멘터리 스트림(프라이비트 ES)을 출력하는 AC3 인코더(18)와, 비디오 인코더(16), 오디오 인코더(17) 및 AC 인코더로부터 출력된 엘리멘터리 스트림을 각각 패킷화하여, 패킷화 엘리멘터리 스트림(PES : packetized elementary stream)을 각각 출력하는 패킷타이저(19, 20, 21)와, 이 패킷타이저(19, 20, 21)로부터 각각 출력된 패킷화 엘리멘터리 스트림을 다중화함으로써, 트랜스포트 스트림(TS)을 생성하는 트랜스포트 스트림 멀티플렉서(TSMUX, 17)로 구성된다.
도 1에 도시된 디지털 데이터 전송 시스템은, 또한, 이들의 베이스 밴드 시스템(1A) 및 부호화 시스템(1B)의 각 블록을 제어 및 관리하기 위한 CPU(11)를 구비하고 있다. 이 CPU(11)는 VTR(12)또는 A/V 서버(13)로부터 재생된 비디오 데이터 및 오디오 데이터의 각 프레임에 대응되어 있는 타임 코드(TC)를 받아들이고, 이 타임 코드(TC)를 소정의 포맷으로 변환하며, 비디오 인코더(16), 오디오 인코더(17) 및 AC3 인코더에 공급한다.
또한, 도 1에 도시된 수신 시스템(3)은, 부호화 스트림을 처리하고, 취급하는 복호화 시스템(3A)과, 복호화된 베이스 밴드 비디오 데이터나 베이스 밴드 오디오 데이터를 처리하며, 취급하는 베이스 밴드 시스템(3B)을 구비하고 있다.
수신 시스템(3)의 복호화 시스템(3A)은 전송 미디어(2)를 통하여 송신 시스템(1)으로부터 전송된 트랜스포트 스트림을 받아들이고, 비디오 패킷화 엘리멘터리 스트림(비디오 PES)과 오디오 패킷화 엘리멘터리 스트림(오디오 PES)과 프리이빗 패킷화 엘리멘터리 스트림(프라이비트 PES)과 디멀티플렉서하는 트랜스포트 스트림 디멀티플렉서(TSDEMUX, 32)와, 이 트랜스포트 스트림 디멀티플렉서(32)로부터 출력되는 비디오 패킷화 엘리멘터리 스트림, 오디오 패킷화 엘리멘터리 스트림 및 프라이비트 패킷화 엘리멘터리 스트림을 각각 디패킷화하고, 비디오 엘리멘터리 스트림(비디오 ES), 오디오 엘리멘터리 스트림(오디오 ES) 및 프라이비트 엘리멘터리 스트림(프라이비트 ES)을 출력하는 디패킷타이저(36, 37 및 38)와, 이 디패킷타이저(36)로부터 출력된 비디오 엘리멘터리 스트림을 디코드(복호화)하여 베이스 밴드의 비디오 데이터(DV)를 출력하는 비디오 디코더(36)와, 디패킷타이저(34)로부터 출력되는 오디오 엘리멘터리 스트림을 디코드하여 베이스 밴드의 오디오 데이터(DA)를 출력하는 오디오 디코더(37)와, 디패킷타이저(35)로부터 출력되는 프라이비트 엘리멘터리 스트림을 디코드하여 베이스 밴드의 오디오 데이터(DA)를 출력하는 AC3 디코더(38)를 구비하고 있다.
또한, 수신 시스템(3)의 베이스 밴드 시스템(3B)은 비디오 디코더(36)로부터 출력된 비디오 데이터(DV)와, 오디오 디코더(38)로부터 출력된 오디오 데이터(DA)와,, AC3 디코더(38)로부터 출력된 오디오 데이터(DA)를 받아들이고, 소정의 처리 장치에 루팅하기 위한 루터(39)와, 루터(39)로부터 출력된 비디오 데이터(DV) 및 오디오 데이터(DA)를 받아들이고, 테이프 형상의 기록 매체에 기록하는 VTR(40)과, 루터(39)로부터 출력된 비디오 데이터(DV) 및 오디오 데이터(DA)를 받아들이고, 랜덤 액세스 가능한 기록 매체에 기록하는 A/V 서버(41)와, VTR(40) 및 A/V 서버(41)에 격납된 비디오 데이터(DV) 및 오디오 데이터(DA)를 편집하기 위한 편집기(42)를 구비하고 있다. 또한, 비디오 디코더(36), 오디오 디코더(37) 및 AC3 디코더(38)는, 각각, 엘리멘터리 스트림의 신택스를 해석함으로써, 엘리멘터리 스트림 중에 기술되어 있는 타임 코드 정보를 추출하는 기능을 갖고 있다.
또한, 수신 시스템(3)은, 복호화 시스템(3A) 및 베이스 밴드 시스템(3B) 내의 모든 블록을 제어 및 관리하기 위한 CPU(42)을 구비하고 있다. 이 CPU(42)는 비디오 디코더(36), 오디오 디코더(37) 및 AC3 디코더(38)로부터 출력된 타임 코드 데이터(TC)를 받아들이고, 그 타임 코드(TC)를 편집기(42)에 공급한다.
다음에, 송신 시스템(1)과 수신 시스템(2)의 각 회로에 관해서 상세히 설명한다.
VTR(12) 및 A/V 서버(13)에는, 오리지널 소스 소재로서 베이스 밴드의 비디오 데이터 및 오디오 데이터가 기록되어 있다. 또한, 그 VTR(12) 및 A/V 서버(13)에 기록된 비디오 데이터 및 오디오 데이터는, 각 프레임마다 오리지널 타임 코드와 관련지어져 있다. 즉, 비디오 데이터 및 오디오 데이터의 각 프레임에는, 각각 타임 코드가 부여되어 있다는 것이다.
타임 코드에는, LTC(Longitudinal time_code/Linear time_code)와 VITC(Vertical Interval time_code)의 2종류가 있다. LTC는 테이프의 긴쪽 방향에 설치된 타임 코드 트랙에 기록된 타임 코드로서, VITC는 영상신호의 수직 블랭킹 기간에 삽입된 타임 코드이다. LTC 에서는, 셔틀 재생 등과 같이 재생 헤드가 테이프에 대하여 고속 액세스하고 있는 경우에는, 이 LTC에서 타임 코드를 판독할 수 있지만, 슬로나 스틸재생 등과 같이 재생헤드가 테이프에 대하여 초저속으로 액세스하고 있는 경우에는, 이 LTC로부터 타임 코드를 읽어낼 수 없게 된다. 이것에 대하여, VITC에서는, 재생헤드가 테이프에 대하여 초저속으로 액세스하고 있는 경우에는, 이 VITC에서 타임 코드를 읽어낼 수 있지만, 재생헤드가 테이프에 대하여 고속 액세스하고 있는 경우에는, VITC에서 타임 코드를 읽어낼 수 없다. 즉, LTC 및 VITC와 함께 일장일단이 있기 때문에, 통상적으로, 완전히 같은 타임 코드를 LTC 및 VITC로서 테이프 위에 기록하여, 테이프를 재생할 때는 LTC 또는 VITC의 어느 하나에 의해서 타임 코드를 판독하도록 한다.
본 발명의 실시예에 있어서는, VTR(12)및 A/V 서버(13)에서는, 함께 LTC와 VITC의 2종류의 타임 코드가 소정의 포맷으로 기록되어 있고, VTR(12) 및 A/V 서버(13)로부터 오리지널 비디오 데이터 및 오리지널 오디오 데이터가 재생되는 경우에는, 그 오리지널 데이터 및 오리지널 데이터에 대응한 타임 코드(TC)가 출력된다.
편집기(14)는 VTR(12)및 A/V 서버(13)에 기록된 오리지널 비디오 데이터 및 오리지널 오디오 데이터에 액세스하여, 인점이나 아웃점 등의 편집점을 오리지널 비디오 데이터 및 오리지널 오디오 데이터에 대하여 설정한다. 이 인점은 편집 개시점을 나타내는 타임 코드로 이루어지며, 아웃점은 편집 종료점을 나타내는 타임 코드로 이루어진다. 편집 오퍼레이터가 필요하다고 생각되는 목적하는 신만을 선택하도록, 이 편집기(14)를 조작하여 복수의 편집점을 오리지널 비디오 데이터 및 오리지널 오디오 데이터에 대하여 설정하면, 그 설정된 편집점에 기초하여 편집 리스트(EDL)가 생성된다. 이 편집 리스트는 설정된 인점의 타임 코드 및 아웃점의 타임 코드에 기초하는 단순한 타임 코드의 리스트이다. 한편, A/V 서버(13)로부터 출력되는 비디오 데이터(DV) 및 오디오 데이터(DA)는, 이 편집 리스트에 따라서 편집된 비디오 데이터 및 오디오 데이터가 아니며, 편집되어 있지 않는 오리지널의 비디오 데이터 및 오디오 데이터이다. 본 발명의 실시예에 있어서는, 이 편집기(14)에 의해서 생성된 편집 스트림에 따라서, 오리지널 비디오 데이터 및 오리지널 오디오 데이터를 편집하여, 편집된 비디오 데이터 및 편집된 오디오 데이터를 작성하는 편집 처리는, 수신 시스템(3)의 편집기(42)에 의해서 행해진다.
루터(15)는, VTR(12)및 A/V 서버(13)로부터 재생된 오리지널 비디오 데이터 (DV) 및 오리지널 오디오 데이터(DA)를 루팅하여, 소정의 프로세서에 공급하기 위한 회로이다. 예를 들면, 오리지널 비디오 데이터(DV)는, 비디오 인코더(16)에 공급되 도록 루팅되며, 오리지널 오디오 데이터(DA)는 오디오 인코더(17) 또는 AC3 인코더(18)에 공급되도록 루팅된다.
비디오 인코더(16)는 공급된 오리지널 오디오 데이터(DA)를 MPEG 규격에 따라서 압축 부호화함으로써 부호화 스트림(또는 비디오 엘리멘터리 스트림이라고도 한다)을 생성하는 회로이다. 또한, 비디오 인코더(16)는 CPU(11)로부터, 오리지널 비디오 데이터(DV)에 대응한 오리지널 타임 코드(TC)를 각 프레임마다 받아들이며, 그 타임 코드(TC)를, 부호화 스트림에 있어서의 픽처 레이어의 사용자 데이터 영역에 기술한다. 부호화 스트림의 어떤 장소에 이 타임 코드(TC)를 기술하는지에 관해서는 자세히는 후술한다.
오디오 인코더(17)는, 공급된 오리지널 오디오 데이터 (DV)를 MPEG 규격에 따라서 압축 부호화함으로써 부호화 오디오 스트림(오디오 엘리멘터리 스트림이라고도 한다)을 생성하는 회로이다. 또한, 오디오 인코더(17)는 CPU(11)로부터, 오리지널 오디오 데이터(DA)에 대응한 오리지널 타임 코드(TC)를 각 프레임마다 받아들이고, 그 타임 코드(TC)를, 부호화 스트림 중에 기술한다. 부호화 스트림의 어떤 장소에 이 오리지널 타임 코드를 기술할지에 대해서는 자세히는 후술한다.
AC3 인코더(18)는, 공급된 오리지널 오디오 데이터(DA)를 AC3 규격에 따라서 압축 부호화함으로써 부호화 프라이비트 스트림(프라이비트 엘리멘터리 스트림이라고도 한다)을 생성하는 회로이다. 또한, AC3 인코더(18)는 CPU(11)로부터, 오리지널 오디오 데이터(DA)에 대응한 오리지널 타임 코드(TC)를 각 프레임마다 받아들이고, 그 타임 코드(TC)를, 부호화 스트림 중에 기술한다. 부호화 스트림의 어느 장소에 이 오리지널 타임 코드를 기술할지에 대해서는 뒤에 구체적으로 설명한다.
패킷타이저(19, 20 및 21)는, 비디오 인코더(16)로부터 출력된 비디오 엘리멘터리 스트림, 오디오 인코더(17)로부터 출력된 오디오 엘리멘터리 스트림, 및 AC3 인코더(17)로부터 출력된 프라이비트 엘리멘터리 스트림을 각각 받아들이고, DVB(디지털 비디오 방송)에 있어서 규격화되어 있는 패킷화 엘리멘터리 스트림의 형태가 되도록 각각 패킷화한다. 패킷타이저(19)는, 패킷화한 비디오 엘리멘터리 스트림을, 비디오 패킷화 엘리멘터리 스트림으로서 트랜스포트 스트림 멀티플렉서(22)에 출력하고, 패킷타이저(20)는, 패킷화한 오디오 엘리멘터리 스트림을, 오디오 패킷화 엘리멘터리 스트림으로서 트랜스포트 스트림 멀티플렉서(22)에 출력하며, 패킷타이저(21)는, 패킷화한 프라이비트 엘리멘터리 스트림을, 프라이비트 패킷화 엘리멘터리 스트림으로서 트랜스포트 스트림 멀티플렉서(22)에 출력한다.
트랜스포트 스트림 멀티플렉서(22)는, 비디오 패킷화 엘리멘터리 스트림과 오디오 패킷화 엘리멘터리 스트림을 각각 트랜스포트 스트림 패킷의 단위로 분해하고, 그 트랜스포트 스트림 패킷 단위로 분해된 패킷을 각각 다중화하는 것에 의해서 트랜스포트 스트림을 생성한다.
트랜스포트 스트림 멀티플렉서(32)는, 전송 미디어(2)를 통하여 전송된 트랜스포트 스트림을, 비디오 패킷화 엘리멘터리 스트림과 오디오 패킷화 엘리멘터리 스트림과 프라이비트 패킷화 엘리멘터리 스트림으로 분리(디멀티플렉스)하여, 비디오 패킷화 엘리멘터리 스트림을 디패킷타이저(33)에 출력하여, 오디오 패킷화 엘리멘터리 스트림을 오디오 디코더(37)에 출력하여, 프라이비트 패킷화 엘리멘터리 스트림을 AC3 디코더에 출력한다.
디패킷타이저(33)는, 비디오 패킷화 엘리멘터리 스트림을 디패킷화하여, 비디오 엘리멘터리 스트림을 비디오 디코더(36)에 출력하여, 디패킷타이저(34)는, 오디오 패킷화 엘리멘터리 스트림을 디패킷화하여, 오디오 엘리멘터리 스트림을 오디오 디코더(37)에 출력하여, 디패킷타이저(26)는, 프라이비트 패킷화 엘리멘터리 스트림을 디패킷화하여, 프라이비트 엘리멘터리 스트림을 AC3 디코더(38)에 출력한다.
비디오 디코더(36)는, 우선, 공급된 비디오 엘리멘터리 스트림을 복호화하기 전에, 비디오 엘리멘터리 스트림의 문장 구성을 해석한다. 부호화 스트림의 문장 구성을 해석함으로써, 스트림의 픽처 레이어나 매크로 블록 레이어를 데이터 엘리멘트로서 스트림 중에 기술된 픽처 타입, 예측 모드, 움직임 벡터, 양자화 스텝, 및 DCT 모드 등의 부호화 파라미터를, 부호화 스트림 중에서 추출한다. 이와 같이 부호화 스트림의 문장 구성을 해석하는 이유는, 인코더에 있어서의 부호화처리에 대응한 복호화처리를 할 필요가 있기 때문이다. 본 발명의 실시예에 있어서는, 이와 같이 부호화 스트림의 문장 구성을 해석할 때에, 픽처 레이어의 사용자 데이터 영역에 픽처마다 기술되어 있는 타임 코드를 추출한다. 비디오 디코더(36)는, 스트림으로부터 추출된 각종의 부호화 파라미터에 따라서, 부호화 스트림을 복호화하여, 복호화된 비디오 데이터 Dv를 루터(39)에 공급한다. 또한, 비디오 디코더(36)는 부호화 스트림 중에서 추출한 프레임마다 타임 코드 TC를 CPU(31)에 공급한다.
오디오 디코더(37)는, 우선, 공급된 오디오 엘리멘터리 스트림을 복호화하기 전에, 오디오 엘리멘터리 스트림의 문장 구성을 해석한다. 이와 같이, 부호화 스트림의 문장 구성을 해석함으로써, 스트림 중에 기술된 부호화 파라미터를 스트림 중에서 추출한다. 본 발명의 실시예에 있어서는, 이 부호화 스트림의 문장 구성을 해석할 때에, 부호화 스트림 중에 기술되어 있는 타임 코드 정보를 프레임마다 추출한다. 오디오 디코더(37)는, 스트림으로부터 추출된 부호화 파라미터에 따라서, 부호화 오디오 스트림을 복호화하고, 복호화된 오디오 데이터 DA를 루터(39)에 공급한다. 또한, 오디오 디코더(37)는 부호화 스트림 중에서 추출한 프레임마다 타임 코드 TC를 CPU(31)에 공급한다.
AC3 디코더(38)는 우선, 공급된 프라이비트 엘리멘터리 시스템을 복호화하기 전에, 프라이비트 엘리멘터리 시스템의 신택스를 해석한다. 이와 같이, 부호화 스트림의 신택스를 해석함으로써, 스트림 중에 기술된 부호화 파라미터를 스트림 중에서 추출한다. 본 발명의 실시예에 있어서는 이 부호화 스트림의 신택스를 해석할 때에, 부호화 스트림 중에 기술되어 있는 타임 코드 정보를 추출한다. 프라이비트 디코더(36)는 스트림으로부터 추출된 부호화 파라미터에 따라서, 부호화 프라이비트 스트림을 복호화하고, 복호화된 오디오 데이터(DA)를 루터(39)에 공급한다. 또한, AC3 디코더(38)는 부호화 스트림 중에서 추출한 프레임마다의 타임 코드(TC)를 CPU(31)에 공급한다.
비디오 디코더(36), 오디오 디코더(37) 및 AC3 디코더(38)로부터 출력된 베이스 밴드의 비디오 데이터(Dv) 또는 베이스 밴드의 오디오 데이터(DA)는 루터(39)를 통해 VTR(40) 또는 A/V 서버(41)에 공급된다.
CPU(31)는 비디오 디코더(36)로부터 출력되는 비디오 데이터(DV)의 각 프레임에 대응하는 타임 코드(TC)를 비디오 디코더(36)로부터 받아들이고, 오디오 디코더(37)로부터 출력되는 오디오 데이터(DA)의 각 프레임에 대응하는 타임 코드(TC)를, 오디오 디코더(37)로부터 받아들이고, 또한, AC3 디코더(38)로부터 출력되는 오디오 데이터(DA)의 각 프레임에 대응하는 타임 코드(TC)를, AC3 디코더(38)로부터 받는다. 또한, CPU(31)는 비디오 디코더(36), 오디오 디코더(37) 및 AC3 디코더(38)로부터 받아들인 타임 코드(TC)에 의거하여 VTR(40) 또는 A/V 서버(41)에 공급되는 베이스 밴드의 비디오 데이터(DV) 및 베이스 밴드의 오디오 데이터(DA)에 대응하는 타임 코드(TC)를, VTR(40)및 A/V 서버(41)에 공급한다.
VTR(40) 또는 A/V 서버(41)는 루터(39)로부터 공급된 베이스 밴드의 비디오 데이터(DV) 및 베이스 밴드의 오디오 데이터(DA)를 기록 매체 상에 기록할 때에, CPU(31)로부터 공급된 타임 코드(TC)와 비디오 데이터(DV) 및 오디오 데이터(DA)의 각 프레임을 관련지어 기록한다. 예를 들면, VTR(40)에 있어서, 비디오 데이터(DV)와 오디오 데이터(DA)를, 테이프 상에 기록하는 경우에는 CPU(31)로부터 공급된 타임 코드(TC)에 포함되는 VITC를, 비디오 데이터(DV)의 블랭킹 구간에 삽입하여, 그것을 테이프상의 경사 트랙에 기록하는 동시에, CPU(31)로부터 공급된 타임 코드(TC)에 포함되는 LTC를, 테이프상의 긴쪽 트랙에 기록한다.
따라서, VTR(40)및 A/V 서버(41)의 기록 매체에는 송신 시스템(1)의 VTR(12)의 기록 매체 및 A/V 서버의 기록 매체에 기록되어 있던 오리지널 비디오 데이터, 오리지널 오디오 및 오리지널 타임 코드와, 완전히 같은 비디오 데이터, 오디오 및 타임 코드가 기록되어진다.
편집기(42)는 송신 시스템(1)의 편집기(14)로부터 전화 회선 등에 의해서 전송된 편집 리스트를 받아들이고, 편집 리스트에 따라서, VTR(40) 및 A/V 서버(42)에 기록된 비디오 데이터(DV) 및 오디오 데이터(DA)를 편집한다. 물론, 송신 시스템(1)의 편집기(14)로부터 공급되는 편집 리스트가 없다고 해도, VTR(40) 및 A/V 서버(41)의 기록 매체에는 송신 시스템(1)의 VTR(12)의 기록 매체 및 A/V 서버의 기록 매체에 기록되어 있던 오리지널 비디오 데이터, 오리지널 오디오 및 오리지널 타임 코드와, 완전히 동일한 비디오 데이터, 오디오 및 타임 코드가 기록되어 있기 때문에, 그 타임 코드를 사용하여 송신 시스템(1)의 편집기(14)에서의 편집 처리와 같은 편집 처리를 행할 수 있다.
이상과 같이, 종래의 MPEG를 사용한 전송 시스템에서는 전송된 부호화 스트림에는 각 프레임마다 타임 코드가 중첩되어 있지 않기 때문에, 부호화 스트림과 함께 수신 측에 각 프레임마다의 타임 코드를 전송할 수 없었지만, 도 1에 도시된 디지털 데이터 전송 시스템에 의하면, 송신 측에서 오리지널 소재에 부여된 오리지널 타임 코드를 부호화 스트림에서 각 프레임마다 중첩하도록 하였으므로, 수신 측에서도 오리지널 소재에 부여되어 있던 오리지널 타임 코드를 재현할 수 있다. 그 결과, 송신 측에서 오리지널 소재와 그 오리지널 소재의 각 프레임에 관련된 오리지널 타임 코드가 기록된 기록 매체와 완전히 같은 타임 코드가 기록된 기록 매체를 수신 측에서 작성할 수 있다.
따라서, 수신 측의 기록 매체에 기록된 오리지널 타임 코드를 사용하면, 송신 측의 편집 처리와 완전히 같은 편집 처리를 수신 측에서도 실현할 수 있다. 또한, 송신 측의 기록 매체와 수신 측의 기록 매체와는 완전히 같은 기록 매체이기 때문에, 송신 측에서 오리지널 소재에 대하여 생성된 편집 리스트를 사용하면, 수신 측에서는 자동적으로 편집 처리를 실행할 수 있다.
도 2는 본 발명의 다른 실시예에 따른 디지털 데이터 처리 시스템의 구성을 도시한 블록도이다. 도 1에 있어서 설명한 디지털 데이터 전송 시스템과 도 2에 개시된 디지털 데이터 처리 시스템과 다른 점은 도 1의 디지털 전송 시스템에서는 수신 시스템(3)측에서, 전송된 부호화 스트림을 디코드한 후, 베이스 밴드의 비디오 데이터 및 베이스 밴드의 오디오 데이터를 편집하도록 하고 있는 데 대하여, 상기 도 2에 개시된 디지털 데이터 처리 시스템에서는 복호화된 베이스 밴드의 비디오 데이터 및 오디오 데이터를 편집하지 않고, 부호화 스트림의 상태에서 편집하도록 하고 있는 점이 다르다.
도 2에 도시된 디지털 데이터 처리 시스템은 베이스 밴드 비디오 데이터를 처리하여, 취급하기 위한 베이스 밴드 시스템(50A)과, 부호화된 부호화 스트림을 취급하는 부호화 시스템(50B)으로 구성된다.
도 2에 도시된 디지털 데이터 처리 시스템에 있어서의 베이스 밴드 시스템(50A)은 랜덤 액세스 가능한 기록 매체로부터 베이스 밴드의 오리지널 소재를 재생하기 위한 A/V 서버(52)와, A/V 서버(52)의 기록 매체에 기록된 오리지널 소재를 사용하여 편집 리스트(EDL)를 생성하는 편집기(53)를 구비하고 있다.
또한, 도 2에 도시된 디지털 데이터 처리 시스템에 있어서의 부호화 시스템(50B)은 A/V 서버(52)로부터 재생된 베이스 밴드의 비디오 데이터(DV)를 MPEG 규격에 의거하여 부호화하고, 비디오 엘리멘터리 스트림을 출력하는 비디오 인코더(54)와, A/V 서버(52)로부터 재생된 베이스 밴드의 오디오 데이터(DA)를 MPEG 규격에 의거하여 부호화하여, 오디오 엘리멘터리 스트림을 출력하는 오디오 인코더(55)와, A/V 서버(52)로부터 재생된 베이스 밴드의 오디오 데이터(DA)를 AC3규격에 의거하여 부호화하고, 오디오 엘리멘터리 스트림을 출력하는 AC3 인코더(56)와, 비디오 인코더(54), 오디오 인코더(55) 및 AC3 인코더(56)로부터 출력된 엘리멘터리 스트림의 신택스를 각각 해석하여, 엘리멘터리 스트림 중에 기술된 타임 코드 정보를 추출하는 스트림 해석부(57)와, 비디오 인코더(54), 오디오 인코더(55) 및 AC3 인코더(56)로부터 출력된 엘리멘터리 스트림을, 각각 랜덤 액세스 가능한 기록 매체에 기록하는 스트림 서버(59)를 갖고 있다.
또한, 도 2에 도시된 디지털 데이터 처리 시스템은 이들 베이스 밴드 시스템(50A) 및 부호화 시스템(50B)의 각 블록을 제어 및 관리하기 위한 CPU(51)를 구비하고 있다. 이 CPU(51)는 A/V 서버(52)로부터 재생된 비디오 데이터 및 오디오 데이터의 각 프레임에 대응 붙여져 있는 타임 코드(TC)를 받아들이고, 이 타임 코드(TC)를 소정의 포맷으로 변환하여, 비디오 인코더(54), 오디오 인코더(55) 및 AC3 인코더(56)에 공급한다.
A/V 서버(52)에는 A/V 서버(13)와 마찬가지로, 오리지널 소스 소재로서의 베이스 밴드의 비디오 데이터 및 오디오 데이터가 기록되어 있고, 또한, 비디오 데이터 및 오디오 데이터는 각 프레임마다에 오리지널 타임 코드와 관련지어 기록 매체에 기록되어 있다. 또한, A/V 서버(52)에는 모두 LTC와 VITC의 2종류의 타임 코드가 소정의 포맷으로 기록되어 있고, A/V 서버(52)로부터 오리지널 비디오 데이터 및 오리지널 오디오 데이터가 재생되는 경우에는 그 오리지널 비디오 데이터 및 오리지널 오디오 데이터의 각 프레임에 대응하는 오리지널 타임 코드(TC)가 출력된다.
편집기(53)는 A/V 서버(52)에 기록된 오리지널 비디오 데이터 및 오리지널 오디오 데이터에 액세스하여, 인점이나 아웃점으로 구성되는 편집점을, 오리지널 비디오 데이터 및 오리지널 오디오 데이터에 대하여 설정한다. 편집 오퍼레이터가 이 편집기(14)를 조작함으로써, 오리지널 비디오 데이터 및 오리지널 오디오 데이터에 대하여, 편집 오퍼레이터가 필요하다고 생각되는 원하는 신만을 선택하도록, 복수의 인점 및 아웃점에 의해 정의되는 편집 구간을 설정하면, 그 설정한 인점 및 아웃점에 의거하여 편집 리스트(EDL)가 생성된다. 한편, A/V 서버(52)로부터 출력되는 비디오 데이터(DV) 및 오디오 데이터(DA)는 이 편집 리스트에 따라서 편집된 비디오 데이터 및 오디오 데이터가 아니고, 편집되지 않은 오리지널 비디오 데이터 및 오디오 데이터이다. 본 발명의 실시예에 있어서는 이 편집기(52)에 의해서 생성된 편집 리스트에 의거하여 오리지널 비디오 데이터 및 오리지널 오디오 데이터를 실제로 편집하여, 편집된 비디오 데이터 및 편집된 오디오를 생성하는 편집 처리는 편집기(58)에 의해서 행하여진다.
비디오 인코더(54)는 공급된 오리지널 비디오 데이터(DV)를 MPEG 규격에 따라서 압축 부호화함으로써 부호화 스트림(비디오 엘리멘터리 스트림이라고 한다)을 생성하는 회로이다. 또한, 비디오 인코더(54)는 CPU(51)로부터, 오리지널 비디오 데이터(DV)에 대응하는 오리지널 타임 코드(TC)를 각 프레임마다 받아들이고, 그 타임 코드(TC)를, 부호화 스트림의 픽처 레이어의 데이터 엘리멘트로서 기술한다. 부호화 스트림의 어느 곳에 상기 오리지널 타임 코드를 기술할 것인가에 관해서는 상세하게 이후에 설명한다.
오디오 인코더(55)는 공급된 오리지널 오디오 데이터(DA)를 MPEG 규격에 따라서 압축 부호화함으로써 부호화 오디오 스트림(오디오 엘리멘터리 스트림이라고 한다)을 생성하는 회로이다. 또한, 오디오 인코더(55)는 CPU(51)로부터, 오리지널오디오 데이터(DA)에 대응하는 오리지널 타임 코드(TC)를 각 프레임마다 받아들이고, 그 타임 코드(TC)를, 부호화 스트림 중에 기술한다.
AC3 인코더(56)는 공급된 오리지널 오디오 데이터(DA)를 AC3 규격에 따라서 압축 부호화함으로써 부호화 프라이비트 스트림(프라이비트 엘리멘터리 스트림이라고도 한다)을 생성하는 회로이다. 또한, AC3 인코더(56)는 CPU(51)로부터, 오리지널 오디오 데이터(DA)에 대응하는 오리지널 타임 코드(TC)를 각 프레임마다 받아들이고, 그 타임 코드(TC)를, 부호화 스트림 중에 각 프레임마다 기술한다.
스트림 해석부(57)는 비디오 인코더(54), 오디오 인코더(55) 및 AC3 인코더(56)로부터 각각 공급된 엘리멘터리 스트림의 신택스를 해석한다. 스트림 해석부(57)는 각각 공급된 엘리멘터리 스트림의 신택스를 해석함으로써, 픽처 레이어의 사용자 데이터 영역에 기술되어 있는 타임 코드 정보를 프레임마다(픽처마다)에 추출한다. 스트림 해석부(57)는 스트림 서버(59)에 공급되는 엘리멘터리 스트림의 각 프레임(픽처)에 대응하는 타임 코드(TC)를 편집기(58)에 공급한다.
편집기(58)는 스트림 서버(59)의 기록 재생 타이밍 및 기록 매체 상에서의 데이터의 기록 어드레스를 관리하기 위한 기능을 갖고 있다. 편집기(58)는 스트림 해석부(58)에 의해서 엘리멘터리 스트림으로부터 추출된 타임 코드(TC)를 받아들이고, 이 타임 코드(TC)에 대응하는 기록 어드레스를 생성하여, 그 기록 어드레스를 스트림 서버(59)에 공급한다. 즉, 이 편집기(58)는 스트림 서버(59)의 기록 매체에 기록된 부호화 스트림과, 그 프레임에 부여되어 있는 타임 코드를 관련짓기 위한 테이블형상의 메모리를 갖고 있다. 따라서, 이 테이블을 참조함으로써, 원하는 타임 코드에 대응하는 부호화 스트림이 스트림 서버(59)에서 기록 매체의 어느 어드레스에 기억되어 있는가를 판단할 수 있다. 또한, 편집기(58)는 베이스 밴드 시스템 중의 편집기(53)에서 편집 리스트를 받아들이고, 상술된 메모리 중의 기록 어드레스와 이 편집 리스트에 의거하여, 스트림 서버(59)의 재생을 제어한다. 구체적으로는 편집 리스트에 의해서 지정된 인점과 아웃점의 구간의 스트림을 스트림 서버(59)로부터 재생하도록 스트림 서버의 기록 재생을 제어한다. 따라서, 스트림 서버(59)로부터 출력된 편집 스트림은 편집기(53)에서 생성된 편집 리스트에 대응하는 스트림으로 된다.
이상과 같이, 도 2에 도시된 디지털 데이터 처리 시스템에 의하면, 베이스 밴드 시스템(50A)에서 생성한 편집 리스트에 따라서, 부호화 스트림을 스트림의 상태대로 편집할 수 있다. 예를 들면, 도 1에 도시된 디지털 데이터 전송 시스템의 A/V 서버(41)로부터 출력된 편집된 비디오 데이터 및 편집된 오디오 데이터를 포함한 편집 프로그램은 베이스 밴드 데이터이기 때문에, 이 편집 프로그램을 다른 전송로에 전송하는 경우에는 다시 이 편집 프로그램을 부호화할 필요가 있다. 그렇지만, 도 2에 도시된 디지털 데이터 처리 시스템에 의하면, 스트림 서버(59)로부터 출력된 편집 스트림은 부호화 스트림의 상태로 있으므로, 다시 부호화 처리하지 않고, 전송 매체에 전송할 수 있다. 따라서, 도 2에 도시된 디지털 데이터 처리 시스템에 의하면, 재부호화 처리에 의한 화질 열화를 방지할 수 있는 효과를 갖고 있다.
도 3은 비디오 인코더(16, 56)의 구성의 일례를 도시한 블록도이다. 이 비디오 인코더(16, 56)는 비디오 인코더내의 모든 블록을 제어 및 관리하기 위한 인코드 콘트롤러(60)와, 베이스 밴드의 비디오 데이터(DA)를 받아들이고, 부호화하는 순번에 따라서 픽처(I 픽처(intra coded picture), P 픽처(predictive coded picture), B 픽처(bidirectiona1ly predictive coded picture))의 단계를 바꾸는 화상 전환 회로(61)와, 이 화상 전환 회로(61)의 출력 데이터를 입력하여, 프레임 구조가 필드 구조인지를 판별하고, 판별 결과에 따른 주사 변환 및 16 x 16 화소의 매크로 블록화를 행하는 주사 변환·매크로 블록화 회로(62)와, 이 주사 변환·매크로 블록화 회로(62)의 출력 데이터에 의거하여 이동 벡터를 검출하고, 이동 벡터 데이터를 출력하는 이동 검출 회로(63)와, 주사 변환·매크로 플로터화 회로(62)의 출력 데이터와 예측 화상 데이터와의 차분을 갖는 감산 회로(64)와, 이 감산 회로(64)의 출력 데이터에 대하여, DCT(이산 코사인 변환) 블록 단위로 DCT를 행하여, DCT 계수를 출력하는 DCT 회로(65)와, 이 DCT 회로(65)의 출력 데이터를 양자화하는 양자화 회로(66)와, 이 양자화 회로(66)의 출력 데이터를 가변 길이 부호화하는 가변 길이 부호화 회로(67)와, 이 가변 길이 부호화 회로(67)의 출력 데이터를 일단 유지하여, 비디오 엘리멘터리 스트림(ES)으로서 출력하는 버퍼 메모리(68)를 구비하고 있다.
비디오 인코더(16, 54)는 또한, 양자화 회로(66)의 출력 데이터를 역양자화하는 역양자화 회로(69)와, 이 역양자화 회로(69)의 출력 데이터에 대하여 역 DCT를 행하는 역 DCT 회로(70)와, 이 역 DCT 회로(70)의 출력 데이터와 예측 화상 데 이터를 가산하여 출력하는 가산 회로(71)와, 이 가산 회로(71)의 출력 데이터를 유지하고, 이동 벡터에 의거하여 이동 보상을 행하여 예측 화상 데이터를 감산 회로(64) 및 가산 회로(71)에 출력하는 이동 보상 회로(72)와, 가변 길이 부호화 회로(67)로부터 발생 비트량 데이터에 의거하여, 양자화 회로(66)에서의 양자화 특성을 제어함으로써 목표 부호량을 제어하는 비트율 콘트롤부(43)를 구비하고 있다.
화상 전환 회로(61)는 베이스 밴드의 비디오 데이터(DV)를 받아들이고, 인코더 콘트롤러(60)의 제어에 따라서, 부호화하는 순번에 따라서 픽처의 순번의 열전환을 행한다. 픽처의 단계가 전환된 데이터는 주사 변환·매크로 블록화 회로(62)에 공급된다. 주사 변환·매크로 블록화 회로(62)는 공급된 데이터의 예측 모드에 의거하여 프레임/필드 등의 주사 변환 및 매크로 블록화가 행하여진다. 이동 검출 회로(63)는 주사 변환·매크로 블록화 회로(62)의 출력 데이터로부터 이동 벡터를 검출하여, 그 검출한 이동 벡터 데이터를 출력한다.
공급된 비디오 데이터를 I 픽처로서 부호화하는 경우에는 감산 회로(64)에 서 예측 화상 데이터와의 차분을 갖지 않고, 주사 변환·매크로 블록화 회로(62)의 출력 데이터를 그대로 DCT 회로(65)에 입력하여 DCT를 행하고, 양자화 회로(66)에 의해서 DCT 계수를 양자화하여, 가변 길이 부호화 회로(67)에 공급한다.
공급된 비디오 데이터를 P 픽처로서 부호화하는 경우에는 이동 보상 회로(72)에 의해, 유지하고 있는 과거의 I 픽처 또는 P 픽처에 대한 화상 데이터와 이동 검출 회로(63)로부터의 이동 벡터에 의거하여 예측 화상 데이터를 생성하여, 예측 화상 데이터를 감산 회로(64) 및 가산 회로(71)에 출력한다. 또한, 감산 회로(64)에 의해서, 주사 변환·매크로 블록화 회로(62)의 출력 데이터와 이동 보상 회로(72)로부터의 예측 화상 데이터와의 차분을 갖고, DCT 회로(65)에 의해서 DCT를 행하여, 양자화 회로(66)에 의해서 DCT 계수를 양자화하여, 그 양자화된 데이터를 가변 길이 부호화 회로(67)에 공급한다.
공급된 비디오 데이터를 B 픽처로서 부호화하는 경우에는 이동 보상 회로(72)에 의해서, 유지하고 있는 과거 및 미래의 I 픽처 또는 P 픽처에 대응하는 2개의 화상 데이터와 이동 검출 회로(63)로부터의 2개의 이동 벡터에 의거하여 예측 화상 데이터를 생성하고, 예측 화상 데이터를 감산 회로(64) 및 가산 회로(71)에 출력한다. 또한, 감산 회로(64)에 의해서, 주사 변환·매크로 블록화 회로(62)의 출력 데이터와 이동 보상 회로(72)로부터의 예측 화상 데이터와의 차분을 갖고, DCT 회로(65)에 의해서 DCT를 행하고, 양자화 회로(66)에 의해서 DCT 계수를 양자화하여, 양자화된 데이터를 가변 길이 부호화 회로(67)에 공급한다.
인코드 콘트롤러(60)는 픽처 형태, 예측 모드, 이동 벡터, 양자화 단계 및 DCT 모드 등의 MPEG 규격에서 정의되어 있는 각종의 부호화 파라미터를 가변 길이 부호화 회로(67)에 공급하는 동시에, CPU(11)로부터 공급된 타임 코드(TC)를 가변 길이 부호화 회로(67)에 공급한다. 이 부호화 파라미터란, 시퀀스 레이어, GOP 레이어, 픽처 레이어, 슬라이스 레이어, 매크로 블록 레이어 및 블록 레이어로서 기술해야 할 데이터 엘리멘트인 것이다.
가변 길이 부호화 회로(67)는 양자화 회로(66)에 있어서 양자화된 데이터를 가변 길이 부호화하는 동시에, 그 가변 길이 부호화된 부호화 데이터와 인코드 콘트롤러(60)로부터 공급된 각종의 부호화 파라미터에 따라서, 시퀀스 레이어, GOP 레이어, 픽처 레이어, 매크로 블록 레이어에 적절한 인 데이터 및 데이터 엘리멘트를 기술함으로써, 부호화 스트림을 생성한다. 이 부호화 스트림을 생성할 때에, 가변 길이 부호화 회로(67)는 인코드 콘트롤러(60)로부터 공급되는 타임 코드(TC)를, 픽처 레이어의 사용자 데이터 영역에 기술함으로써, 각 픽처마다 타임 코드 정보가 부가(중첩)된 부호화 스트림을 생성한다.
이상과 같이 하여, 오리지널 비디오 데이터에 첨부된 오리지널 타임 코드가 각 프레임마다 부가된 부호화 비디오 엘리멘터리 스트림이 생성된다.
도 4는 도 1 및 도 2에 도시된 오디오 인코더(17, 55)의 구성의 일례를 도시한 블록도이다. 이 오디오 인코더(17, 55)는 베이스 밴드의 오디오 데이터(DA)를 입력하여, 32대역의 서브 밴드 신호에 분할하여 출력하는 서브 밴드 분석 필터 뱅크(81)와, 이 서브 밴드 분석 필터 뱅크(81)의 각 출력 신호를 양자화하는 선형 양자화기(82)와, 이 선형 양자화기(82)의 각 출력 신호에 따라서, 부호화된 오디오 데이터를 생성하는 동시에, 이 부호화된 오디오 데이터에, CRC(순회 용장 체크)를 위한 에러 체크나, 후술하는 부호화된 사이드 정보나, CPU(11)로부터의 타임 코드 데이터(TC) 등을 부가하여, 소정의 데이터 구조의 비트 스트림을 형성하고, 오디오 엘리멘터리 스트림(ES)으로서 출력하는 비트 스트림 형성부(83)를 구비하고 있다.
오디오 인코더(17, 55)는 또한, 입력되는 오디오 데이터(DA)를 고속 푸리에 변환(FFT)하는 FFT부(84)와, 서브 밴드 분석 필터 뱅크(81)의 각 출력 신호로부터 스케일 팩터를 추출하는 스케일 팩터 추출부(85)와, FFT 부(84)의 출력 신호와 스케일 팩터 추출부(85)에 의해서 추출된 스케일 팩터를 사용하여, 심리 청각 분석을 위한 심리 청각 모델을 형성하는 심리 청각 모델 형성부(86)와, 이 심리 청각 모델형성부(86)에 의해서 형성된 심리 청각 모델에 의거하여, 동적으로 비트 할당을 행하고, 비트 할당 정보를 선형 양자화기(82)에 주어, 선형 양자화기(82)에서 양자화 특성을 제어하는 동적 비트 할당부(87)와, 스케일 팩터 추출부(85)에 의해서 추출된 스케일 팩터 및 동적 비트 할당부(87)로부터 비트 할당 정보를, 사이드정보로서 부호화하여, 부호화된 사이드 정보를 비트 스트림 형성부(83)에 주어지는 사이드 정보 부호화부(88)를 구비하고 있다.
서브 밴드 분석 필터 뱅크(81)는 공급된 베이스 밴드의 오디오 데이터(DA)를 받아들이고, 이 오디오 데이터(DA)를 32대역의 서브 밴드 신호로 분할하여, 이 서브 밴드 신호를, 선형 양자화기(82)에 출력한다. 또한, FFT부(84)는 공급된 베이스 밴드의 오디오 데이터(DA)를 받아들이고, 오디오 데이터(DA)를 고속 푸리에 변환하여, 그 푸리에 변환된 신호를 심리 청각 모델 형성부(86)에 공급한다.
스케일 팩터 추출부(85)는 서브 밴드 분석 필터 뱅크(81)의 각 출력 신호로부터 스케일 팩터를 추출하여, 그 추출한 스케일 팩터 정보를 심리 청각 모델 형성부(86)에 공급한다. 심리 청각 모델 형성부(86)는 FFT부(84)로부터의 출력 신호와 스케일 팩터 추출부(85)에 의해서 추출된 스케일 팩터 정보를 사용하여, 심리 청각분석을 위한 심리 청각 모델을 형성한다.
동적 비트 할당부(87)는 이 심리 청각 모델 형성부(86)에 의해서 생성된 심리 청각 모델에 따라서, 동적으로 비트 할당이 행하여지고, 선형 양자화기(82)에 있어서의 양자화 특성을 제어하기 위한 제어 신호를 생성한다. 선형 양자화기(82)는 동적 비트 할당부(87)로부터 양자화 특성 제어 신호에 의해 양자화 특성이 제어된다. 이 선형 양자화기(82)의 출력 신호는 비트 스트림 형성부(83)에 공급된다.
사이드 정보 부호화부(88)는 스케일 팩터 추출부(85)에 의해 추출된 스케일 팩터 및 동적 비트 할당부(87)로부터 비트 할당 정보를, 사이드 정보로서 부호화하여, 비트 스트림 형성부(83)에 공급한다.
비트 스트림 형성부(83)는 선형 양자화기(82)의 각 출력 신호를 사용하여, 부호화된 오디오 데이터가 생성되는 동시에, 이 부호화된 오디오 데이터에, 에러 체크나, 사이드 정보 부호화부(88)에 의해서 부호화된 사이드 정보를 부가한다. 또한, 이 비트 스트림 형성부(83)는 이 부호화된 오디오 데이터에, CPU(11)로부터의 타임 코드 데이터(TC) 등을 부가하여, 소정의 데이터 구조의 비트 스트림을 형성한다. 이렇게 하여, 타임 코드가 부가된 오디오 엘리멘터리 스트림이 생성된다.
도 5는 도 1 및 도 2에 도시된 AC3 인코더(18, 59)의 구성의 일례를 도시한 블록도이다. 이 AC3 인코더(18, 59)는 베이스 밴드의 오디오 데이터(DA)를 받아들이고, 주파수 영역에 변환하여, 지수부와 가수부로 이루어진 주파수 계수를 출력하는 주파수 영역 변환부(91)를 구비하고 있다. 주파수 계수의 지수부는 오디오 데이터의 스펙트럴 인벨로프(Spectra1 envelope)를 나타내고 있다. AC3 인코더(18, 59)는 또한, 주파수 영역 변환부(91)로부터 출력되는 주파수 계수의 지수부를 부호화하는 스펙트럴 인벨로프 부호화부(92)와, 주파수 영역 변환부(91)로부터 출력되는 주파수 계수의 가수부를 양자화하는 양자화부(93)와, 스펙트럴 인벨로프 부호화부(92)의 출력 데이터에 의거하여 비트 할당을 행하고, 비트 할당 정보를 양자화부(93)에 주어, 양자화부(93)에서 양자화 특성을 제어하는 비트 할당부(94)와, 스펙트럴 인벨로프 부호화부(92)의 출력 데이터 및 양자화부(93)의 출력 데이터에, CPU(l1)로부터의 타임 코드 데이터 DTC 등을 부가하고, 이들에 의해서, 소정의 데이터 구조의 비트 스트림을 형성하여, 프라이비트 엘리멘터리 스트림(ES)으로서 출력하는 비트 스트림 형성부(95)를 구비하고 있다.
주파수 영역 변환부(91)는 공급된 베이스 밴드의 오디오 데이터(DA)를 주파수 영역으로 변환하는 동시에, 그 주파수 영역으로 변환된 데이터를 지수부와 가수부로 이루어진 주파수 계수로 분해하여, 주파수 계수의 가수부를 양자화부(93)에 출력하여, 주파수 계수의 지수부를 스펙트럴 인벨로프 부호화부(92)에 출력한다.
스펙트럴 인벨로프 부호화부(92)는 주파수 영역 변환부(91)로부터 공급된 주파수 계수의 지수부를 부호화하여, 그 부호화된 데이터를 비트 할당부(94)와 비트 스트림 형성부(95)에 출력한다.
양자화부(93)는 주파수 영역 변환부(91)로부터 공급된 주파수 계수의 가수부를 양자화하여, 그 양자화한 데이터를 비트 스트림 형성부(95)에 출력한다.
비트 할당부(94)는 스펙트럴 인벨로프 부호화부(92)의 출력 데이터에 의거하여 비트 할당을 행하여, 비트 할당 정보를 양자화부(93)에 준다. 이 비트 할당부(94)로부터의 비트 할당 정보에 의거하여 양자화부(93)에서 양자화 특성이 제어된다.
비트 스트림 형성부(95)는 CPU(11)로부터 타임 코드 데이터(TC)를 받아들이고, 스펙트럴 인벨로프 부호화부(92)의 출력 데이터 및 양자화부(93)의 출력 데이터에, 그 타임 코드 데이터 TC를 부가한다.
이들에 의해서, 소정의 데이터 구조의 비트 스트림이 형성되어, 프라이비트 엘리멘터리 스트림(ES)으로서 출력된다. 이렇게 하여, 타임 코드가 부가된 프라이비트 엘리멘터리 스트림이 생성된다.
삭제
다음에, MPEG 규격에 기초하여 부호화된 부호화 스트림에 대하여 타임 코드를 부가하였을 때의 부호화 스트림의 구조에 관해서 설명한다.
도 6은 MPEG의 비디오 스트림의 신택스를 나타낸 도면이다. 비디오 인코더(16, 54)는 이 도면에 도시된 신택스에 따른 부호화 스트림을 생성하는 동시에, 비디오 디코더(36)는 이 도면에 도시된 신택스에 따라서 부호화 스트림을 해석함으로써, 부호화 비트 스트림으로부터 의미가 있는 복수의 데이터 항목(데이터 엘리멘트)을 추출한다. 도면에서는 하기에 설명하는 신택스중 함수나 조건문은 가는 활자로 나타내며, 데이터 엘리멘트는 굵은 활자로 나타내고 있다. 데이터 항목은, 그 명칭, 비트 길이 및 그 타입·전송 단계를 나타내는 니모닉(Mnemonic)으로 기술되어 있다.
우선, 이 도 6에 도시하고 있는 신택스에 있어서 사용되고 있는 함수에 관해서 설명한다. 실제로는, 이 도 6에 도시하고 있는 신택스는 비디오 디코더측에 있어서 전송된 부호화 스트림으로부터 소정의 의미가 있는 데이터를 추출하기 위해서 사용되는 신택스이다. 비디오 인코더측에 있어서 사용되는 신택스는 도 6에 도시된 신택스로부터 if 문이나 whi1e 문 등의 조건문을 생략한 신택스이다.
video_sequesce()에 있어서 최초로 기술되어 있는 next_start_code() 함수는 비트 스트림 중에 기술되어 있는 스타트 코드를 찾기 위한 함수이다. 이 도 6에 나타낸 신택스에 따라 생성된 부호화 스트림에는, 우선 최초로, sequence_header() 함수와 sequenc_extension() 함수에 의해서 정의된 데이터 엘리멘트가 기술되어 있다. 이 sequence_header() 함수는, MPEG 비트 스트림의 시퀀스 레이어의 헤더 데이터를 정의하기 위한 함수이고, sequence_extension() 함수는, MPEG 비트 스트림의 시퀀스 레이어의 확장 데이터를 정의하기 위한 함수이다.
sequence_extension() 함수의 다음에 배치되어 있는 do {} whi1e 문장의 구성은, while 문에 의해서 정의되어 있는 조건이 참(사실)인 동안, do 문의 {} 내의 함수에 기초하여 기술된 데이터 엘리멘트가 부호화 데이터 스트림 중에 기술되어 있는 것을 나타내는 문장의 구성이다. 이 while 문에 사용되고 있는 nextbits() 함수는, 비트 스트림 중에 기술되어 있는 비트 또는 비트열과, 참조되는 데이터 엘리멘트를 비교하기 위한 함수이다. 이 도 6에 도시된 신택스의 예로서는, nextbits() 함수는 비트 스트림 중의 비트 열과 비디오 시퀀스의 끝을 나타내는 sequence_end_code를 비교하여, 비트 스트림 중의 비트열과 sequence_end_code가 일치하지 않을 때에, 이, while 문의 조건이 참(眞)이 된다. 따라서, sequence_extension() 함수의 다음에 배치되고 있는 do {} while 문장의 구성은, 비트 스트림 중에, 비디오 시퀀스의 끝을 나타내는 sequence_end_code가 나타나지 않은 동안, do 문중의 함수에 의해서 정의된 데이터 엘리멘트가 부호화 비트 스트림 중에 기술되어 있는 것을 나타내고 있다.
부호화 비트 스트림에 있어서, sequence_extension() 함수에 의해서 정의된 각 데이터 엘리멘트의 다음에는, extension_and_user_data(0) 함수에 의해서 정의된 데이터 엘리멘트가 기술되어 있다. 이 extension_and_user_data(0) 함수는 MPEG 비트 스트림의 시퀀스 레이어에 있어서의 확장 데이터와 사용자 데이터를 정의하기 위한 함수이다.
이 extension_and_user_data(0) 함수의 다음에 배치되어 있는 do {} while 문장의 구성은, while 문에 의해서 정의되고 있는 조건이 참인 동안, do 문의 {} 내의 함수에 따라서 기술된 데이터 엘리멘트가, 비트 스트림에 기술되어 있는 것을 나타내는 함수이다. 이 while 문에 있어서 사용되고 있는 nextbits() 함수는, 비트 스트림 중에 나타나는 비트 또는 비트 열과, picture_start_code 또는 group_start_code와의 일치를 판단하기 위한 함수이고, 비트 스트림 중에 나타나는 비트 또는 비트열과, picture_start_code 또는 group_start_code가 일치하는 경우에는, whi1e 문에 의해서 정의된 조건이 참이 된다. 따라서, 이 do {} while 문장의 구성은, 부호화 비트 스트림 중에 있어서, picture_start_code 또는 group_start_code가 나타난 경우에는, 그 스타트 코드의 다음에, do 문중의 함수에 의해서 정의된 데이터 엘리멘트의 코드가 기술되어 있는 것을 나타내고 있다.
이 do 문의 최초에 기술되어 있는 if 문은, 부호화 비트 스트림 중에 group_start_code가 나타난 경우, 라는 조건을 나타내고 있다. 이 if 문에 의한 조건은 참인 경우에는, 부호화 비트 스트림 중에는, 이 group_start_code의 다음에 group_of_picture_header() 함수 및 extension_and_user_data(1) 함수에 의해서 정의되고 있는 데이터 엘리멘트가 단계으로 기술되어 있다.
이 group_of_picture_header() 함수는, MPEG 부호화 비트 스트림의 GOP 레이어의 헤더 데이터를 정의하기 위한 함수이고, extension_and_suer_data(1) 함수는 MPEG 부호화 비트 스트림의 GOP 레이어의 확장 데이터 및 사용자 데이터를 정의하기 위한 함수이다.
또한, 이 부호화 비트 스트림에 있어서, group_of_picture_header() 함수 및 extension_and_user_data(1) 함수에 의해서 정의되고 있는 데이터 엘리멘트의 다음에는, picture_header() 함수와 picture_coding_extension() 함수에 의해서 정의된 데이터 엘리멘트가 기술되어 있다. 물론, 먼저 설명한 if 문의 조건이 참으로 되지 않는 경우에는, grooup_of_picture_header() 함수 및 extension_and_user_data(1) 함수에 의해서 정의되어 있는 데이터 엘리멘트는 기술되어 있지 않기 때문에, extension_and_user_data(0) 함수에 의해서 정의되어 있는 데이터 엘리멘트의 다음에, picture_header() 함수, picture_coding_extension() 함수 및 extension_and_user_data(2) 함수에 의해서 정의된 데이터 엘리멘트가 기술되어 있다.
이 picture_header() 함수는, MPEG 부호화 비트 스트림의 픽처 레이어의 헤더 데이터를 정의하기 위한 함수이고, picture_coding_extension() 함수는, MPEG 부호화 비트 스트림의 픽처 레이어의 제 1의 확장 데이터를 정의하기 위한 함수이다. extension_and_user_data(2) 함수는, MPEG 부호화 비트 스트림의 픽처 레이어의 확장 데이터 및 사용자 데이터를 정의하기 위한 함수이다. 이 extension_and_user_data(2) 함수에 의해서 정의되는 사용자 데이터는, 픽처 레이어에 기술되어 있는 데이터이고, 각 픽처마다 기술할 수 있는 데이터이기 때문에, 본 발명에 있어서는, 이 extension_and_user_data(2) 함수에 의해서 정의되는 사용자 데이터로서, 타임 코드 정보를 기술하도록 하고 있다.
부호화 비트 스트림에 있어서, 픽처 레이어의 사용자 데이터의 다음에는, picture_data() 함수에 의해서 정의되는 데이터 엘리멘트가 기술되어 있다. 이 picture_data() 함수는 슬라이스 레이어 및 매크로 블록 레이어에 관한 데이터 엘리멘트를 기술하기 위한 함수이다.
상기 picture_data() 함수의 다음에 기술되고 있는 whi1e 문은, 이 while 문에 의해서 정의되고 있는 조건이 참인 동안, 다음 if 문의 조건판단을 하기 위한 함수이다. 이 while 문에 있어서 사용되고 있는 nextbits() 함수는, 부호화 비트 스트림 중에, picture_start_code 또는 group_start_code가 기술되어 있는지의 여부를 판단하기 위한 함수이고, 비트 스트림 중에 picture_start_code 또는 group_start_code가 기술되어 있는 경우에는, 이 while 문에 의해서 정의된 조건이 참이 된다.
다음 if 문은, 부호화 비트 스트림 중에 sequence_end_code가 기술되어 있는지의 여부를 판단하기 위한 조건문이고, sequence_end_code가 기술되어 있지 않은 것이면, sequence_header() 함수와 sequence_extension() 함수에 의해서 정의된 데이터 엘리멘트가 기술되어 있는 것을 나타내고 있다. sequence_end_code는 부호화 비디오 스트림의 시퀀스의 끝을 나타내는 코드이기 때문에, 부호화 스트림이 종료하지 않은 한, 부호화 스트림 중에는 sequence_header() 함수와 sequence_extension() 함수에 의해서 정의된 데이터 엘리멘트가 기술되어 있다.
이 sequence_header() 함수와 sequence_extension() 함수에 의해서 기술된 데이터 엘리멘트는, 비디오 스트림의 시퀀스의 선두에 기술된 sequence_header() 함수와 sequence_extension() 함수에 의해서 기술된 데이터 엘리멘트와 완전히 동일하다. 이와 같이 같은 데이터를 스트림 중에 기술하는 이유는, 비트 스트림 수신 장치측에서 데이터 스트림의 도중(예를 들면 픽처 레이어에 대응하는 비트 스트림부분)에서 수신이 개시된 경우에, 시퀀스 레이어의 데이터를 수신할 수 없게 되어, 스트림을 디코드할 수 없게 되는 것을 방지하기 때문이다.
이 최후의 sequence_header() 함수와 sequence_extension() 함수에 의해서 정의된 데이터 엘리멘트의 다음, 즉, 데이터 스트림의 최후에는 시퀀스의 끝을 나타내는 32 비트의 sequence_end_code가 기술되어 있다.
이하, sequence_header() 함수, sequence_extension() 함수, extension_and_user_data(0) 함수, group_of_picture_headcr() 함수 및 extension_and_user_data(1) 함수에 관해서 상세히 설명한다.
sequence_header() 함수에 의해서 정의된 데이터 엘리멘트는, sequence_header_code, sequence_header_present_f1ag, horizontal_size_va1ue, vertica1_size_va1ue, aspect_ratio_information, frame_rate_code, bit_rate_va1ue, marker_bit, VBV_buffer_size_va1ue, constrained_parameter_f1ag, 1oad_intra_quantizer_matrix, intra_quantizer_matrix, load_non_intra_quantizer_matrix, 및 non_intra_quantizer_matrix 등이다.
sequence_header_code는, 시퀀스 레이어의 스타트 동기 코드를 나타내는 데이터이다. sequence_header_present_flag는, sequence_header 내의 데이터가 유효한지 무효한지를 나타내는 데이터이다. horizonta1_size_va1ue는, 화상의 수평방향의 화소수의 하위 12 비트로 이루어지는 데이터이다. vertical_size_va1ue는, 화상의 세로의 라인수의 하위 12 비트로 이루어지는 데이터이다. aspect_ratio_information은, 화소의 애스펙트비(종횡비) 또는 표시화면 애스펙트비를 나타내는 데이터이다. frame_rate_code는, 화상의 표시주기를 나타내는 데이터이다. bit_rate_va1ue는, 발생 비트량에 대한 제한을 위한 비트·레이트의 하위 18 비트(400 bps 단위로 마무리한다) 데이터이다. marker_bitL는, 스타트 코드 에뮬레이션을 방지하기 위해서 삽입되는 비트 데이터이다. VBV_buffer_size_value는 발생 부호량 제어용의 가상 버퍼(비디오 버퍼 베리파이어)의 크기를 정하는 값의 하위 l0 비트 데이터이다. comstrained_parameter_flag는, 각 파라미터가 제한 이내인 것을 나타내는 데이터이다. load_intra_quantizer_matrix는, 인트라 MB 용 양자화 매트릭스·데이터의 존재를 나타내는 데이터이다. intra_uantizer_matrix는, 인트라 MB 용 양자화 매트릭스의 값을 나타내는 데이터이다. load_non_intra_quantizer_matrix는, 비 인트라 MB 용 양자화 매트릭스·데이터의 존재를 나타내는 데이터이다. non_intra_quantizer_matrix는, 비 인트라 MB 용 양자화 매트릭스의 값을 나타내는 데이터이다.
sequence_extension() 함수에 의해서 정의된 데이터 엘리멘트란, extension_start_code, extension_start_code_identifier, sequence_extension_present_f1ag, profile_and_level_indication, progressive_sequence, chroma_format, horizontal_size_extension, vertical_size_extension, bit_rate_extension, vbv_buffer_size_extension, 1ow_delay, frame_rate_extension_n, 및 frame_rate_extension_d 등의 데이터 엘리멘트이다.
extension_start_code는, 익스텐션 데이터의 스타트 동기 코드를 나타내는 데이터이다. extension_start_code_identifier는, 어떤 확장 데이터가 보내여져지는 가를 나타내는 데이터이다. sequence_extension_present_f1ag는, sequence_extension 내의 데이터가 유효한지 무효한지를 나타내는 데이터이다. profile_and_level_indication은, 비디오 데이터의 프로파일과 레벨을 지정하기 위한 데이터이다. progressive_sequence는, 비디오 데이터가 순차 주사인 것을 나타내는 데이터이다. chroma_format은, 비디오 데이터의 색차 포맷을 지정하기 위한 데이터이다. horizonta1_size_extension은, 시퀀스 헤더의 horizntal_size_va1ue에 더하는 상위 2 비트의 데이터이다. vertical_size_extension은, 시퀀스 헤더의 vertical_size_va1ue에 더하는 상위 2 비트의 데이터이다. bit_rate_extension은, 시퀀스 헤더의 bit_rate_va1ue에 더하는 상위 12 비트의 데이터이다. vbv_buffer_size_extension은, 시퀀스 헤더의 vbv_buffer_size_value에 더하는 상위 8 비트의 데이터이다. low_de1ay는, B 픽처를 포함하지 않은 것을 나타내는 데이터이다. frame_rate_extension_n은, 시퀀스 헤더의 frame_rate_ code와 조합시켜 프레임 레이트를 얻기 위한 데이터이다. frame_rate_extension_d는 시퀀스 헤더의 frame_rate_code와 조합시켜 프레임 레이트를 얻기 위한 데이터이다.
extension_and_user_data(i) 함수는, 「i」가 2 이외의 때는, extension_data() 함수에 의해서 정의되는 데이터 엘리멘트는 기술하지 않고, user_data() 함수에 의해서 정의되는 데이터 엘리멘트만을 기술한다. 따라서, extension_and_user_data(0) 함수는, user_data() 함수에 의해서 정의되는 데이터 엘리멘트만을 기술한다.
group_of_picture_header() 함수에 의해서 정의된 데이터 엘리멘트는, grouLstart_code, group_of_picture_header_present_flag, time_code, c1osed_gop, 및 broken_link로부터 구성된다.
group_start_code는, GOP 레이어의 개시 동기 코드를 나타내는 데이터이다. group_of_pictur_header_present_flag는, group_of_picture_header 내의 데이터 엘리멘트가 유효한지 무효인지를 나타내는 데이터이다. time_code는, GOP의 선두 픽처의 시퀀스의 선두로부터의 시간을 나타내는 타임 코드이다. c1osed_gop는, GOP 내의 화상이 다른 GOP에서 독립 재생 가능한 것을 나타내는 플래그 데이터이다. broken_link는, 편집 등을 위한 GOP 내의 선두의 B 픽처가 정확히 재생할 수 없는 것을 나타내는 플래그 데이터이다.
extension_ane_user_data(1) 함수는, extension_and_user_data(0) 함수와 같이, user_data() 함수에 의해서 정의되는 데이터 엘리멘트만을 기술하기 위한 함수이다.
다음에, 부호화 스트림의 픽처 레이어에 관한 데이터 엘리멘트를 기술하기 위한 picture_header() 함수, picture_coding_extension() 함수, extensions_and_user_data(2) 및 picture_data()에 관해서 설명한다.
picture_header() 함수에 의해 정의된 데이터 엘리멘트는 picture_start_code, temporal_reference, picture_coding_type, vbv_de1ay, full_pel_forward_vector, forwrard_f_code, fu11_pe1_backwrard_vector, backwrard_f_code, extra_bit_picture 및 extra_information_picture이다.
구체적으로는 picture_start_code는 픽처 레이어의 개시 동기 코드를 나타내는 데이터이다. temporal_reference는 픽처의 표시순을 나타내는 번호로 GOP의 선두에서 리셋되는 데이터이다. picture_coding_type는 픽처 타입을 나타내는 데이터이다. vbv_de1ay는 랜덤 액세스시의 가상 버퍼의 초기 상태를 나타내는 데이터이다. fu11_pe1_forward_vector는 순방향 이동 벡터의 정도가 정수 단위나 반화소 단위를 나타내는 데이터이다. forwrard_f_code는 순방향 이동 벡터 탐색 범위를 나타내는 데이터이다. fu11_pe1_backwrard_vector는 역방향 이동 벡터의 정밀도가 정수 단위나 반화소 단위를 나타내는 데이터이다. backwrard_f_code는 역방향 이동 벡터 탐색 범위를 나타내는 데이터이다. extra_bit_picture는 후속하는 추가 정보의 존재를 나타내는 플래그이다. 이 extra_bit_picture가「1」인 경우에는 다음에 extra_information_picture가 존재하고, extra_bit_picture가 「0」인 경우에는 이에 계속되는 데이터가 없음을 나타내고 있다. extra_information_picture는 규격에 있어서 예약된 정보이다.
이 picture_coding_extension() 함수에 의해 정의된 데이터 엘리멘트란 extension_start_code, extension_start_code_identifier, f_code[0][0], f_code[0][1], f_code[1][0], f_code[1][1], intra_dc_precision, picture_structure, top_field_first, frame_predictive_frame_dct, concea1ment_motion_vectors, q_scale_type, intra_v1c_format, alternate_scan, repeat_first_field, chroma_420_type, progressive_frame, composite_disp1ay_f1ag, v_axis, fie1d_sequence, sub_carrier, burst_amplitude 및 sub_carrier_phase로 구성된다.
extension_start_code는 픽처 레이어의 익스텐션 데이터의 시작을 나타내는 개시 코드이다. extension_start_code_identifier는 어떤 확장 데이터가 보내여지는가를 나타내는 코드이다. f_code[0][0]는 전진 방향의 수평 이동 벡터 탐색 범위를 나타내는 데이터이다. f_code[0][1]는 전진 방향의 수직 이동 벡터 탐색 범위를 나타내는 데이터이다. f_code[1][0]는 후진 방향의 수평 이동 벡터 탐색 범위를 나타내는 데이터이다. f_code[1][0]은 후진 방향의 수직 이동 벡터 탐색 범위를 나타내는 데이터이다. intra_dc_precision은 DC계수의 정밀도를 나타내는 데이터이다. picture_structure는 프레임 스트럭처나 필드 스트럭처를 나타내는 데이터이다. 필드 스트럭처의 경우는 상위 필드나 하위 필드도 더불어 나타내는 데이터이다. top_fie1d_first은 프레임 스트럭처의 경우, 최초의 필드가 상위나 하위를 나타내는 데이터이다. frame_predictive_frame_dct은 프레임 스트럭처의 경우, 프레임 모드 DCT의 예측이 프레임 모드만인 것을 나타내는 데이터이다. concealment_motion_vectors는 인트라 매크로 블록에 전송 에러를 은폐하기 위한 이동 벡터가 붙어 있는 것을 나타내는 데이터이다. q_sca1e_type는 선형 양자화 스케일를 사용하거나 비선형 양자화 스케일을 사용하는 것을 나타내는 데이터이다. inta_vlc_format은 인트라마크 블록에 별도의 2차원 VLC을 사용하는가 어떤지를 나타내는 데이터이다. a1ternate_scan은 지그재그 스캔을 사용하는가 올터네이트 스캔을 사용하는가의 선택을 표시하는 데이터이다. repeat_first_fie1d는 2:3 풀다운의 때에 쓰이는 데이터이다. chroma_420_type는 신호 포맷이 4:2:0인 경우에는 다음 progressive_frame과 같은 값이고, 그렇지 않은 경우는 0을 나타내는 데이터이다. progressive_frame는 이 픽처가 순차 주사로 되어있는지 어떤지를 나타내는 데이터이다. composite_disp1ay_f1ag는 소스 신호가 복합 신호이던지 어떤지를 나타내는 데이터이다. v_axis는 소스 신호가 PAL인 경우에 쓰이는 데이터이다. fie1d_sequence는 소스 신호가 PAL인 경우에 쓰이는 데이터이다. sub_carrier는 소스 신호가 PAL인 경우에 쓰이는 데이터이다. burst_amp1itude는 소스 신호가 PAL인 경우에 쓰이는 데이터이다. sub_carrier_phase는 소스 신호가 PAL인 경우에 쓰이는 데이터이다.
삭제
extension_and_user_data(2) 함수는 도 7에 도시하는 바와 같이, 부호화 비트스트림 중에 익스텐션 스타트 코드 extension_start_code가 존재하는 경우에는 extension_data() 함수에 의해 정의되는 데이터 엘리멘트가 기술되어 있다. 단, 비트 스트림 중에 익스텐션 스타트 코드가 존재하지 않는 경우에는 extension_data() 함수에 의해 정의되는 데이터 엘리멘트는 비트 스트림 중에는 기술되어 있지 않다. 이 extension_data() 함수에 의해 정의되어 있는 데이터 엘리멘트 다음에는 비트 스트림 중에 사용자 데이터 스타트 코드 user_data_start_code가 존재하는 경우에는, user_data() 함수에 의해 정의되는 데이터 엘리멘트가 기술되어 있다.
user_data() 함수는 도 8에 도시하는 바와 같이, user_data_start_code, time_code() 함수, user_data 등의 데이터 엘리멘트를 기술하기 위한 함수이다.
user_data_start_code는 MPEG 비트 스트림의 픽처 레이어의 사용자 데이터 영역의 개시를 나타내기 위한 스타트 코드이다. 이 user_data_start_code 다음에 기술되어 있는 while 구문은 부호화 비트 스트림 중에 23개의 '0'과 그것에 계속되는 '1'로 구성되는 24 비트의 데이터가 나타나지 않는 한 참이 된다. 이 23개의 '0'와 그것에 계속되는 '1'로 구성되는 24 비트의 데이터는 모든 스타트 코드의 선두에 부여되는 데이터이고 모든 스타트 코드는 이 24 비트 뒤에 설정됨으로써 부호화 비트 스트림 중에 있어 각 스타트 코드의 위치를 찾아 낼 수 있다.
time_code() 함수는 타임 코드를 기술하기 위한 함수이다. 구체적으로는 도 9에 도시하는 바와 같이, time_code() 함수에 의해 기술되는 데이터 엘리멘트는 픽처 레이어의 사용자 데이터에 있어서 타임 코드가 기술되어 있는 위치를 인식하기 위한 스타트 코드를 나타내는 time_code start_code와 그 스타트 코드에 계속되는 데이터의 식별 코드를 나타내는 데이터 ID와, 그 데이터 식별 코드에 대응하는 타임 코드 데이터 등이다.
본 발명의 특징인 time_code() 함수에 있어서는 도 11a 및 도 11b에 도시하는 바와 같이, 이 데이터 식별 코드 데이터 ID가 VITC를 나타내는 식별 코드이면, 그 다음에는 72비트의 VITC가 기술되고, 또한, 이 데이터 식별 코드 데이터 ID가 LTC를 나타내는 식별 코드이면, 그 다음에는 72비트의 LTC가 기술되게 되어 있다. 또한, 이 time_code() 함수에 의해 기술되는 데이터 엘리멘트에 관해서는 자세히는 후술한다.
picture_data() 함수에 의해 정의되는 데이터 엘리멘트는 slice() 함수에 의해 정의되는 데이터 엘리멘트이다. 단, 비트 스트림 중에, slice() 함수의 스타트 코드를 나타내는 slice_start_code가 존재하지 않는 경우에는 이 slice() 함수에 의해 정의되는 데이터 엘리멘트는 비트 스트림 중에 기술되어 있지 않다.
slice() 함수는 슬라이스 레이어에 관한 데이터 엘리멘트를 기술하기 위한 함수이고, 구체적으로는 slice_start_code, slice_quantiser_scale_code, intra_slice_flag, intra_slice, reserved_bits, extra_bit_s1ice, extra_information_slice 및 extra_bit_slice 등의 데이터 엘리멘트와, macrob1ock() 함수에 의해 정의되는 데이터 엘리멘트를 기술하기 위한 함수이다.
slice_start_code는 slice() 함수에 의해 정의되는 데이터 엘리멘트의 시작을 나타내는 스타트 코드이다. slice_quantiser_sca1e_code는 이 슬라이스 레이어에 존재하는 매크로 블록에 대하여 설정된 양자화 스텝 사이즈를 나타내는 데이터이다. 그러나, 각 매크로 블록마다 quantiser_sca1e_code가 설정되어 있는 경우에는 각 매크로 블록에 대하여 설정된 macroblock_quantiser_sca1e_code의 데이터가 우선하여 사용된다. intra_slice_f1ag는 비트 스트림 중에 intra_slice 및 reserved_bits가 존재하는가 아닌가를 나타내는 플래그이다. intra_slice는 슬라이스 레이어 중에 논인트라 매크로 블록이 존재하는가 아닌가를 나타내는 데이터이다. 슬라이스 레이어에 있어서의 매크로 블록의 어느 한 개가 논인트라 매크로 블록인 경우에는 intra_slice는「0」이 되고, 슬라이스 레이어에 있어서의 매크로 블록의 모두가 논인트라 매크로 블록인 경우에는 intra_slice는 「1」이 된다. reserved_bits는 7비트의 데이터이고 「0」의 값을 취한다. extra_bit_s1ice는 부호화 스트림으로서 추가의 정보가 존재하는 것을 나타내는 플래그이고, 다음에 extra_infomation_slice가 존재하는 경우에는「1」로 설정된다. 추가의 정보가 존재하지 않은 경우에는「0」로 설정된다.
macroblock() 함수는 매크로 블록 레이어에 관한 데이터 엘리멘트를 기술하기 위한 함수이고, 구체적으로는 macroblock_escape, macrob1ock_address_increment, 및 macroblock_quaantiser_sca1e_code 등의 데이터 엘리멘트와, macrob1ock_modes() 함수 및 macrob1ock_vectors(s) 함수에 의해 정의된 데이터 엘리멘트를 기술하기 위한 함수이다.
macrobrock_escape는 참조 매크로 블록과 앞의 매크로 블록과의 수평 방향의 차가 34이상인가 아닌가를 나타내는 고정 비트열이다. 참조 매크로 블록과 앞의 매크로 블록과의 수평방향의 차가 34이상인 경우에는 macroblock address increment의 값에 33을 더한다. macrob1ock_address_increment는 참조 매크로 블록 앞의 매크로 블록과의 수평방향의 차를 나타내는 데이터이다. 혹시, 이 macrob1ock_address_increment앞에 macrob1ock_escape가 1개 존재하는 것이면, 이 macrob1ock_address_increment의 값에 33을 더한 값이 실제의 참조 매크로 블록 앞의 매크로 블록과의 수평방향의 차분을 나타내는 데이터가 된다. macrob1ock_quantiser_sca1e_code는 각 매크로 블록마다 설정된 양자화 스텝 사이즈이다. 각 슬라이스 레이어에는 슬라이스 레이어의 양자화 스텝 사이즈를 나타내는 s1ice quantiser_scale_code가 설정되어 있지만, 참조 매크로 블록에 대하여 macrob1ock_quantiser_sca1e_code가 설정되어 있는 경우에는 이 양자화 스텝 사이즈를 선택한다.
다음에, 도 6에서 도 9에 의해 설명한 신텍스에 의해 생성되는 스트림의 구조를, 도 10을 참조하여 보다 알기 쉽게 설명한다.
도 10는 MPEG 부호화 스트림의 데이터 구조를 나타내는 설명도이다. 이 도면에 도시하는 바와 같이, 비디오 엘리멘트 스트림의 데이터 구조는 적어도 시퀀스 레이어, GOP 레이어 및 픽처 레이어를 포함하고 있다.
시퀀스 레이어는 next_start_code() 함수(101), sequence_header() 함수(102), extension_start_code(103), sequence_extension() 함수(104), extension_and_user_data(0) 함수(l05)에 의해 정의되는 데이터 엘리멘트로 구성되어 있다. GOP 레이어는 group_start_code(l06), group_of_pictures_header() 함수(107), extension_and_user_data(1) 함수(l08)에 의해 정의되는 데이터 엘리멘트로 구성되어 있다. 픽처 레이어는 picture_header() 함수(109), picture_coding_extension() 함수(110), extension_and_user_data(2) 함수(111), picture_data() 함수(112)에 의해 정의되는 데이터 엘리멘트를 포함하고 있다. 비디오 시퀀스의 최후에는 sequence_end_code(113)가 기술되어 있다.
extension_and_user_data(2) 함수(111)는 이미 도 7에 있어서 설명한 신텍스로부터도 이해할 수 있는 바와 같이 user_data_start_code(11), user_data() 함수(115), next_start_code(l16)에 의해 정의되는 데이터 엘리멘트를 포함하고 있다.
user_data() 함수(115)는 이미 도 8에에 있어서 설명한 신텍스로부터도 이해할 수 있는 바와 같이, time_code() 함수(117)와 user_data(118)에 의해 정의되는 데이터 엘리멘트를 포함하고 있다.
다음에, 도 11a , 도 11b를 참조하여 time_code() 함수에 의해 기술되는 데이터 엘리멘트에 관해서 상세히 설명한다.
도 11a는 time_code() 함수에 의해, 픽처 레이어의 사용자 데이터 영역에 VITC, LTC 및 안실러리 데이터(ancillary data)가 기술되어 있는 예를 도시하고 있는 도면이다. 도 11b는 이 72비트의 VITC 또는 LTC의 상세한 데이터 구조를 나타내고 있는 도면이다.
도 11a에 도시하는 바와 같이, 32비트의 time_code start_code 다음에는 이 사용자 데이터 영역에 기록되는 데이터의 식별 코드 data_ID가 기술되어 있다. 이 식별 코드 data_ID는 도 12와 같이 미리 설정되어 있고, 예컨대, data_ID가 '03'를 나타내는 데이터이면 그 다음의 72비트에는 VITC이 기술되고, data_ID가 '04'를 나타내는 데이터이면 그 다음 72비트에는 LTC가 기술되도록 되어 있다.
도 11b에 있어서, 제 1비트 째의 'CF'는 컬러 프레임을 나타내고, 다음 제 2미트째의 'DF'는 드롭 프레임을 나타내고 있다. 다음 3비트째로부터 8비트째까지의 6비트는 타임 코드의'프레임'의 부분을 나타내고, 9비트째는 페이즈 정정을 나타내고, l0비트째로부터 16비트째까지의 7 비트는 타임 코드의 '초'의 부분을 나타내고 있다. 17비트째, 34비트째, 51비트째 및 68비트째의 '1'은 상술한 바와 같이 0이 23개 연속하지 않도록 하기 위한 마커 비트이고, 이와 같이 소정 간격으로 마커 비트를 삽입함으로써 스타트 코드 에뮬레이션을 방지할 수 있다.
18 비트째, 26 비트째 및 27 비트째의 'BG'는 바이너리 그룹을 나타내고, 19 비트째로부터 25 비트째의 7 비트는 타임 코드의 '분'의 부분을 나타내며, 28 비트째로부터 33 비트째의 6 비트는 타임 코드의 '시'의 부분을 나타내고 있다.
35 비트째로부터 50 비트째의 16 비트 및 52 비트째로부터 67 비트까지의 16일이란 사용자의 임의의 사용자 데이터를 기술할 수 있도록 예약되어 있다. 또한, 최후의 4 비트는 바이트 정렬(Byte Array)하기 위한 스태프 비트이다.
다음에, MPEG 규격에 따라서 부호화된 부호화 스트림에 대하여 타임 코드를 부가하는 방법에 관해서 설명한다.
비디오 엘리멘트 스트림에서는 부호화의 형편상, 픽처가 병렬 교체되고 있다. 그 때문에, 비디오 엘리멘트 스트림에 대한 타임 코드의 부가 방법에는 다음 2종류가 생각된다. 또, 이하의 설명에서는 1픽처 또는 P픽처가 나타나는 주기(M)를 3으로 한다.
도 13은 비디오 엘리멘트 스트림에 대한 타임 코드 부가의 제 1 방법을 설명하기 위한 설명도이다. 도 13에 있어서, a는 비디오 인코더(16)의 입력 비디오 데이터에서의 픽처 타입을 나타내고 있다. 부호(I)는 I 픽처, P는 P 픽처, B는 B 픽처를 나타내며, 첨부된 숫자는 각 픽처 타입마다 픽처의 단계를 나타내고 있다. 또한, b는 각 픽처에 첨부된 타임 코드를 간략화하여 나타낸 것이다. 제 1 방법은 비디오 엘리멘터리 스트림에 대한 타임 코드의 부가시는 픽처의 병렬 교체를 고려하지 않고서 타임 코드를 부가하고, 재생시에 타임 코드를 새로 부가하는 방법이다. 보다 구체적으로 설명하면, 도 1에 있어서의 CPU(11)는 타임 코드를 취득하면 사용자 데이터(115)에의 타임 코드의 기록까지 지연을 고려하여 그대로 타임 코드를 기록한다. 이 제 1 방법에 의해 타임 코드를 부가한 경우에 있어서의 비디오 디코더(36)의 입력시의 픽처 타입과 타임 코드를 도 13c,13d에 도시한다. 제 1 방법에 의해 타임 코드를 부가한 경우에는 비디오 디코더(36)에서는 1 픽처 또는 P 픽처가 오면, 그것에 첨부되어 입력된 타임 코드를 다음 최초의 B 픽처에 부가하고 그 B 픽처에 첨부되어 입력된 타임 코드를 더욱 다음 2번째의 B 픽처에 부가한다. 그리고, 2번째의 B 픽처에 첨부되어 입력된 타임 코드를, 1 픽처 또는 P 픽처에 부가한다. 이 경우의 비디오 디코더(23)가 출력 비디오 데이터에 있어서의 픽처 타입과 타임 코드를 도 13e, 13f에 도시한다.
도 14는 비디오 엘리멘터리 스트림에 대한 타임 코드 부가의 제 2 방법을 설명하기 위한 설명도이다. 도 14에 있어서, a는 비디오 인코더(16)의 입력 비디오 데이터에 있어서의 픽처 타입을 나타내며, b는 각 픽처에 첨부된 타임 코드를 간략화하여 나타낸 것이다. 제 2 방법은 비디오 엘리멘터리 스트림에 대한 타임 코드 부가시에 픽처의 병렬 교체를 고려하여 타임 코드를 부가하며, 재생시에는 타임 코드가 새로 부가 교체를 하지 않는 방법이다. 보다 구체적으로 설명하면 도 1에서의 CPU(11)는 타임 코드를 취득하면 사용자 데이터(115)에의 타임 코드의 기록까지의 지연을 고려하여 픽처의 병렬 교체 전후에 있어서 픽처와 타임 코드와의 대응 관계가 일치하도록 픽처의 병렬 교체에 맞추어 타임 코드를 병렬 교체 기록한다. 이 제 2 방법에 의해 타임 코드를 부가한 경우에 있어서의 비디오 디코더(23)의 입력시의 픽처 타입과 타임 코드를 도 14c, 14d에 도시한다. 제 2 방법에 의해 타임 코드를 부가한 경우에는 비디오 디코더(36)에서는 픽처의 병렬 교체와 같이 타임 코드를 병렬 교체하여, 각 픽처에 타임 코드를 대응시킨다. 이 경우의 비디오 디코더(36)가 출력 비디오 데이터에 있어서의 픽처 타입과 타임 코드를 도 14e, 14f에 도시한다.
다음에, 타임 코드를 오디오 엘리멘터리 스트림에 부가하는 방법에 관해서 설명한다.
도 15는 MPEG 오디오 규격에 의한 오디오 엘리멘터리 스트림의 데이터 구조를 나타내는 설명도이다. 이 도에 도시하는 바와 같이, 오디오 엘리멘터리 스트림은 선두로부터 순차로 헤더(header)(121), 에러 체크(error_check)(122), 오디오 데이터(audio_data)(123), 안실러리 데이터(anci11ary_data)(124)에 의해 정의되는 데이터 엘리멘트로 구성된다.
안실러리 데이터(124)의 영역은 도 15에 도시한 오디오 스트림의 데이터 구조에 있어서 복호 재생의 단위로서의 1 프레임(오디오 프레임)마다 존재하고 또한 임의의 데이터를 기록할 수 있는 영역이다.
오디오 부호화 스트림에서는 비디오 스트림과 다르고, 비트 레이트에 의해 1 프레임의 크기가 결정되고 있다. 1 프레임의 데이터량은 예컨대 384 ×비트 레이트÷ 샘플링 주파수이다. 안실러리 데이터(124) 영역의 데이터량은 1 프레임의 데이터량으로부터 헤더(121), 에러 체크(122) 및 오디오 데이터(123)의 각 영역에서 실제로 사용되는 데이터량을 뺀 데이터량이 된다.
본 실시예에서는 도 15에 도시한 오디오 엘리멘터리 스트림의 안실러리 데이터(124)의 영역에 타임 코드를 기록한다. 안실러리 데이터(124)에 있어서의 타임 코드의 기술 방법은 도 11a 및 도 11b에 있어서 설명한 사용자 데이터 영역에 있어서의 타임 코드의 기술 방법과 같다. 오디오 부호화 스트림의 안실러리 데이터(124)의 영역에는 VITC나 LTC 등의 타임 코드 외에, 반드시 16 비트의 audio phase(오디오 위상 정보)가 기술된다. 안실러리 데이터(124)에 있어서, time_code start_code 뒤에 데이터 ID가 오디오 위상 정보를 나타내는 식별 코드이면 그 다음 2바이트에는 Audio phase가 기술되어 있다. 이 오디오 위상 정보는 오디오 프레임이 비디오 스트림에 있어서의 프레임(이하, 비디오 프레임이라고 한다)과는 동기하지 않고 있기 때문에, 오디오 프레임과 비디오 프레임과의 위상차를 나타내기 위한 데이터이다.
도 16a 및 도 16b는 비디오 프레임과 오디오 프레임과의 위상차를 설명하기 위한 설명도이다. 이 도에 있어서, 도 16a는 비디오 프레임을 나타내며 (1 블록이 1비디오 프레임을 나타내고 있다), 도중의 숫자는 각 비디오 프레임에 대응하는 타임 코드를 나타내고 있다. 또한, 도 16b는 오디오 프레임을 나타내며 (1 블록이 1 오디오 프레임을 나타내고 있다), 도중의 숫자는 각 오디오 프레임에 대응하여 기록되는 타임 코드를 나타내고 있다. 도 16a도, 도 16b로부터 알 수 있는 바와 같이, 오디오 프레임은 비디오 프레임과는 동기하지 않고 있다. 그래서, 본 실시예 에서는 각 오디오 프레임에 기록되는 타임 코드와 실제의 오디오 프레임의 개시점과의 시간의 어긋남을 위상차(도 16b에서는 부호(A 내지 F)로 나타내고 있다)로 하여, 각 오디오 프레임마다의 위상차를 오디오 위상 정보로서 타임 코드와 같이 부호화 스트림 중에 기술하도록 하고 있다. 또, 이 오디오 위상 정보는 오디오 데이터의 샘플수로 표시된다.
다음에, 타임 코드를 프라이비트 엘리멘터리 스트림인 AC3 스트림에 부가하는 방법에 관해서 설명한다. 도 17은 AC3 규격에 의한 AC3 스트림의 데이터 구조를 나타내는 설명도이다. 이 도에 도시하는 바와 같이, AC3 스트림의 데이터 구조는 선두에서 단계대로 싱크 정보(syncinfo)(131), 비트 스트림 정보(BSI)(132), 오디오 블록(audblk)(133), 보조 데이터(auxdata)(134), 에러 체크(errorcheck)(135)의 각 영역을 갖고 있다.
보조 데이터(134)의 영역은 도 17에 도시한 AC3 스트림의 데이터 구조에 있어서 복호 재생의 단위로서의 1 프레임(싱크 프레임(syncframe))마다 존재하고 또한 임의의 데이터를 기록할 수 있는 영역이다. 보조 데이터(134)의 영역의 데이터량은 1 프레임의 데이터량으로부터 보조 데이터(134)의 영역을 제외하는 영역에서 실제로 사용되는 데이터량을 뺀 데이터량이 된다.
본 실시예에서는 도 17에 도시한 AC3 스트림의 데이터 구조에 있어서의 보조 데이터(134)의 영역에 타임 코드(사용자 비트를 포함한다)를 기록한다. 보조 데이터(134)에 있어서의 타임 코드의 기술 방법은 오디오 부호화 스트림의 보조 데이터(124)에 있어서의 타임 코드의 기술 방법과 매우 동일하다.
이상 설명한 바와 같이, 본 실시예에서는 스트림의 데이터 구조에 있어서 복호 재생의 단위마다 존재하고 또한 임의의 데이터를 기록할 수 있는 영역에 타임 코드를 기록하도록 하고 있다. 구체적으로는 비디오 엘리멘터리 스트림에 대하여는 사용자 데이터(115)의 영역에 타임 코드를 기록하고, 오디오 스트림에 대하여는 보조 데이터(124)의 영역에 타임 코드를 기록하며, AC3 스트림에 대하여는 보조 데이터(134)의 영역에 타임 코드를 기록하도록 하고 있다. 이것에 의해, 본 실시예에 의하면 소재 데이터에 첨부된 타임 코드를 복호 재생의 단위마다 스트림에 대응시켜 확실히 전달할 수가 있다.
또한, 본 실시예에 의하면, 비디오 스트림, 오디오 스트림 및 AC3 스트림에 각각 타임 코드를 부가하도록 하였기 때문에, 수신 시스템(3)측에서 각 스트림을 분리한 후라도 어느쪽의 스트림이라도 타임 코드의 정보가 결핍되지 않는다. 이 것은 각 스트림을 예컨대 하드 디스크 등에 축적하여 각 스트림을 재사용하는 (예컨대, 가공하여 사용한다)경우라도 시간 정보를 잃지 않게 되므로, 매우 유익하다.
또한, 본 실시예에 의하면, 사용자 비트를 포함한 타임 코드를 비디오 스트림, 오디오 스트림 및 AC3 스트림에 각각 기록할 수 있기 때문에, 사용자 비트로서 기록된 임의의 정보도 각 스트림에 대응시켜 확실히 전달할 수가 있다.
또, 본 발명은 상기 실시예에 한정되지 않고, 예컨대, 타임 코드의 정보를 비디오 엘리멘터리 스트림, 오디오 엘리멘터리 스트림 및 프라이비트 엘리멘터리 스트림(AC3 스트림)에 부가할 때의 포맷은 실시예에 나타낸 포맷에 한하지 않고, 적당히 설정 가능하다.
이상 설명한 바와 같이, 본 발명의 부호화 스트림 생성 장치 또는 본 발명의 부호화 스트림 생성 방법에 의하면, 소재 데이터에 첨부된 타임 코드를, 부호화 스트림의 데이터 구조에 있어서 복호 재생의 단위마다 존재하고 또한 임의의 데이터를 기록할 수 있는 영역에 기록하도록 하였기 때문에, 소재 데이터에 첨부된 타임 코드를 복호 단위마다 부호화 스트림에 대응시켜 확실히 전달할 수 있는 효과를 나타낸다.
또한, 본 발명의 다른 부호화 스트림 생성 장치 또는 본 발명의 다른 부호화 스트림 생성 방법에 의하면, 부호화 스트림의 복수의 레이어 중 픽처 레이어에 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드를 기술한 부호화 스트림을 생성하도록 하였기 때문에, 오리지널 소재 데이터에 첨부된 타임 코드가 각 픽처에 대응하도록 기술된 부호화 스트림을 생성할 수 있다고 하는 효과를 나타낸다.
또한, 본 발명의 또 다른 부호화 스트림 생성 장치 또는 본 발명의 또 다른 부호화 스트림 생성 방법에 의하면, 부호화 스트림의 픽처 레이어의 사용자 데이터 영역에 소스 비디오 데이터에 첨부된 타임 코드를 나타내는 데이터 엘리멘트가 기술된 부호화 스트림을 생성하도록 하였기 때문에, 오리지널 소재 데이터에 첨부된 타임 코드가 각 픽처에 대응하도록 기술된 부호화 스트림을 생성할 수 있다는 효과를 나타낸다.
또한, 본 발명의 데이터 전송 시스템 또는 본 발명의 데이터 전송 방법에 의하면 송신 측에서는 복수의 레이어 중 픽처 레이어에 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림을 생성하여, 이 부호화 스트림을 전송하며, 수신 측에서는 전송된 부호화 스트림을 복호화함과 함께 부호화 스트림의 신택스를 해석함으로써 부호화 스트림의 픽처 레이어로부터 타임 코드를 추출하여 복호화된 복호화 데이터와 추출된 타임 코드 정보를 관련지어 기록 매체에 기록함으로써 데이터 공급원의 기록 매체와 동일한 데이터가 기록된 기록 매체를 얻도록 하였기 때문에, 오리지널 소재 데이터에 첨부된 타임 코드가 각 픽처에 대응하도록 기술된 부호화 스트림을 생성하여 전송할 수 있고, 또한, 수신 측에서 오리지널 소재 데이터와, 이 오리지널 소재 데이터의 각 프레임에 첨부된 타임 코드가 기록된 기록 매체를 얻을 수 있다고 하는 효과를 나타낸다.
또한, 본 발명의 편집 시스템 또는 본 발명의 편집 방법에 의하면, 송신 측에서는 소스 비디오 데이터에 대하여 설정된 편집점에 따라서 편집 리스트를 생성하여, 복수의 레이어 중 픽처 레이어에 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림을 생성하여 이 부호화 스트림을 전송하고, 수신 측에서는 전송된 부호화 스트림을 복호화함과 함께, 부호화 스트림의 신택스를 해석함으로써 부호화 스트림의 픽처 레이어로부터 타임 코드를 추출하고, 이 타임 코드와 편집 리스트에 따라서 복호화 소스 비디오 데이터를 편집하도록 하였기 때문에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드를 사용하여 송신 측에서의 편집 처리와 매우 같은 편집 처리를 수신 측에서 실현할 수 있다고 하는 효과를 나타낸다.
또한, 본 발명의 다른 편집 시스템 또는 본 발명의 다른 편집 방법에 의하면, 소스 비디오 데이터에 대하여 설정된 편집점에 따라서 편집 리스트를 생성하여, 부호화 스트림의 복수의 레이어 중 픽처 레이어에 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림을 생성하여 부호화 스트림의 신택스를 해석함으로써 얻어진 타임 코드와 편집 리스트에 라서, 부호화 스트림을 편집하도록 하였기 때문에, 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드를 사용하여 부호화 스트림의 편집을 실현할 수 있다고 하는 효과를 나타낸다.
또한, 본 발명의 또 다른 편집 시스템 또는 본 발명의 또 다른 편집 방법에 의하면 베이스 밴드의 소스 비디오 데이터를 처리함으로써 설정된 편집점에 따라서 편집 리스트를 생성하여, 소스 비디오 데이터를 부호화함으로써 생성된 복수의 레이어로 이루어지는 계층 구조의 부호화 스트림의 복수의 레이어 중 픽처 레이어에 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드가 기술된 부호화 스트림을 생성하여 부호화 스트림의 신택스를 해석함으로써 얻어진 타임 코드와 편집 리스트에 따라서 부호화 스트림을 스트림 레벨로 편집하도록 하였기 때문에, 부호화 스트림을 스트림 레벨로 편집할 수 있어 화질의 열화를 방지할 수 있다고 하는 효과를 나타낸다.
이상의 설명에 기초하여 본 발명의 여러 가지의 양태이나 변형예를 실시 가능한 것은 분명하다. 따라서, 이하의 청구범위의 균등 범위에 있어서 상기의 상세한 설명의 양태 이외의 양태로 본 발명을 실시하는 것이 가능하다.

Claims (98)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 부호화 스트림 생성 장치에 있어서:
    오디오 데이터 및 비디오 데이터를 수신하고, 이로부터 타임 코드 정보를 추출하는 수단;
    동화상 압축 방식(MPEG) 표준에 따라 부호화된 비디오 스트림, 상기 MPEG 표준에 따라 부호화된 제 1 형태의 오디오 스트림, 및 상기 MPEG 표준과는 다른 표준에 따라 부호화된 제 2 형태의 오디오 스트림을 생성하기 위하여, 상기 비디오 데이터 및 상기 오디오 데이터를 부호화하는 수단; 및
    상기 부호화된 비디오 스트림, 상기 부호화된 제 1 형태의 오디오 스트림 및 상기 부호화된 제 2 형태의 오디오 스트림의 픽처 레이어의 사용자 데이터 영역에 상기 타임 코드 정보를 삽입하는 수단을 포함하는, 부호화 스트림 생성 장치.
  10. 제 9 항에 있어서,
    상기 부호화 스트림은 시퀀스 레이어, GOP 레이어, 상기 픽처 레이어, 슬라이스 레이어 및 매크로블록 레이어를 포함하는 복수의 레이어들을 갖는 계층 구조를 갖는, 부호화 스트림 생성 장치.
  11. 제 10 항에 있어서,
    상기 시퀀스 레이어에는, sequence_header() 함수에 의해 정의되는 데이터 엘리멘트와, sequence_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(0)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 GOP 레이어에는, group_of_picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(1)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 픽처 레이어에는, picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, picture_coding_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(2)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 타임 코드 정보는 extension_and_user_data(2) 함수에 의해 표시된 user_data() 함수에 의해 표시된 time_code() 함수에 의해 정의되는, 부호화 스트림 생성 장치.
  12. 제 9 항에 있어서,
    상기 타임 코드 정보는 상기 픽처 레이어의 사용자 데이터 영역에 기술되는 데이터이며, 상기 타임 코드 정보가 고유의 스타트 코드로 혼동(mistake)되지 않도록, 마커 비트가 미리 결정된 간격들로 그에 삽입되는, 부호화 스트림 생성 장치.
  13. 삭제
  14. 삭제
  15. 제 9 항에 있어서,
    상기 타임 코드 정보는 LTC(Longitudinal Time Code / Linear Time Code)와 VITC(Vertical Interval Time Code)를 포함하는, 부호화 스트림 생성 장치.
  16. 부호화 스트림 생성 방법에 있어서:
    오디오 데이터 및 비디오 데이터를 수신하고, 이로부터 타임 코드 정보를 추출하는 단계;
    동화상 압축 방식(MPEG) 표준에 따라 부호화된 비디오 스트림, 상기 MPEG 표준에 따라 부호화된 제 1 형태의 오디오 스트림, 및 상기 MPEG 표준과는 다른 표준에 따라 부호화된 제 2 형태의 오디오 스트림을 생성하기 위하여, 상기 비디오 데이터 및 상기 오디오 데이터를 부호화하는 단계; 및
    상기 부호화된 비디오 스트림, 상기 부호화된 제 1 형태의 오디오 스트림 및 상기 부호화된 제 2 형태의 오디오 스트림의 픽처 레이어의 사용자 데이터 영역에 상기 타임 코드 정보를 삽입하는 단계를 포함하는, 부호화 스트림 생성 방법.
  17. 제 16 항에 있어서,
    상기 부호화 스트림은 시퀀스 레이어, GOP 레이어, 상기 픽처 레이어, 슬라이스 레이어 및 매크로블록 레이어를 포함하는 복수의 레이어들을 갖는 계층 구조를 갖는, 부호화 스트림 생성 방법.
  18. 제 17 항에 있어서,
    상기 시퀀스 레이어에는, sequence_header() 함수에 의해 정의되는 데이터 엘리멘트와, sequence_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(0)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 GOP 레이어에는, group_of_picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(1)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 픽처 레이어에는, picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, picture_coding_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(2)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 타임 코드 정보는 extension_and_user_data(2) 함수에 의해 표시된 user_data() 함수에 의해 표시된 time_code() 함수에 의해 정의되는, 부호화 스트림 생성 방법.
  19. 제 16 항에 있어서,
    상기 타임 코드 정보는 상기 픽처 레이어의 사용자 데이터 영역에 기술되는 데이터이며, 상기 타임 코드 정보가 고유의 스타트 코드로 혼동되지 않도록, 마커 비트가 미리 결정된 간격들로 그에 삽입되는, 부호화 스트림 생성 방법.
  20. 삭제
  21. 삭제
  22. 제 16 항에 있어서,
    상기 타임 코드 정보는 LTC(Longitudinal Time Code / Linear Time Code)와 VITC(Vertical Interval Time Code)를 포함하는, 부호화 스트림 생성 방법.
  23. 부호화 비디오 스트림을 생성하는 장치에 있어서:
    동화상 압축 방식(MPEG) 표준에 따라 부호화 비디오 스트림을 생성하기 위해 비디오 데이터를 부호화하는 수단; 및
    상기 부호화 비디오 스트림의 픽처 레이어의 사용자 데이터 영역에 타임 코드 정보를 삽입하는 수단으로서, 상기 픽처 레이어는 MPEG 표준에 정의되어 있는, 상기 삽입 수단을 포함하는, 부호화 비디오 스트림 생성 장치.
  24. 제 23 항에 있어서,
    상기 부호화 비디오 스트림은 시퀀스 레이어, GOP 레이어, 상기 픽처 레이어, 슬라이스 레이어 및 매크로블록 레이어를 포함하는 복수의 레이어들을 갖는 계층 구조를 가지고, 상기 구조는 MPEG 표준에 정의되어 있는, 부호화 비디오 스트림 생성 장치.
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 제 23 항에 있어서,
    비디오 데이터를 수신하고, 이로부터 타임 코드 정보를 추출하는 수단을 더 포함하고, 상기 삽입 수단은 상기 추출된 타임 코드 정보를 상기 픽처 레이어에 삽입하는, 부호화 비디오 스트림 생성 장치.
  30. 부호화 비디오 스트림을 생성하는 방법에 있어서:
    동화상 압축 방식(MPEG) 표준에 따라 부호화 비디오 스트림을 생성하기 위하여 비디오 데이터를 부호화하는 단계; 및
    상기 부호화 비디오 스트림의 픽처 레이어의 사용자 데이터 영역에 타임 코드 정보를 삽입하는 단계로서, 상기 픽처 레이어는 상기 MPEG 표준에 정의되어 있는, 상기 삽입 단계를 포함하는, 부호화 비디오 스트림 생성 방법.
  31. 제 30 항에 있어서,
    상기 부호화 비디오 스트림은 시퀀스 레이어, GOP 레이어, 상기 픽처 레이어, 슬라이스 레이어 및 매크로블록 레이어를 포함하는 복수의 레이어들을 갖는 계층 구조를 가지고, 상기 구조는 MPEG 표준에 정의되어 있는, 부호화 비디오 스트림 생성 방법.
  32. 제 30 항에 있어서,
    비디오 데이터를 수신하고, 이로부터 타임 코드 정보를 추출하는 단계를 더 포함하고, 상기 추출된 타임 코드 정보는 상기 부호화 비디오 스트림의 상기 픽처 레이어에 삽입되는, 부호화 비디오 스트림 생성 방법.
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 데이터 전송 시스템에 있어서:
    소스 오디오 데이터, 소스 비디오 데이터 및 상기 소스 비디오 데이터에 첨부된 타임 코드 정보를 저장하는 제 1 기록 매체와 동작 가능한 데이터 공급 수단으로서, 상기 타임 코드 정보는 상기 소스 비디오 데이터의 각 비디오 프레임과 연관되는, 상기 데이터 공급 수단;
    동화상 압축 방식(MPEG) 표준에 따라 부호화된 제 1 오디오 스트림, 상기 MPEG 표준과 상이한 표준에 따라 부호화된 제 2 오디오 스트림, 및 상기 소스 비디오 데이터를 부호화함으로써 생성된 복수의 레이어들을 갖는 부호화 스트림을 생성하고, 상기 소스 비디오 데이터의 각 프레임에 첨부된 상기 타임 코드 정보를 상기 복수의 레이어들 중 픽처 레이어에 기술하는 부호화 수단;
    상기 부호화 스트림을 전송하는 전송 수단;
    상기 전송 수단을 통해 전송된 상기 부호화 스트림을 복호하고, 상기 부호화 스트림의 신택스를 해석(parsing)함으로써 상기 부호화 스트림의 상기 픽처 레이어로부터 상기 타임 코드 정보를 추출하는 복호 수단; 및
    상기 제 1 기록 매체 상의 데이터와 동일한 데이터를 얻기 위하여, 제 2 기록 매체 상으로 서로 연관되는 방식으로, 상기 복호 수단에 의해 복호된 데이터와 상기 복호 수단에 의해 추출된 상기 타임 코드 정보를 기록하는 데이터 기록 수단을 포함하는, 데이터 전송 시스템.
  38. 제 37 항에 있어서,
    상기 부호화 스트림의 복수의 레이어들은 시퀀스 레이어, GOP 레이어, 상기 픽처 레이어, 슬라이스 레이어 및 매크로블록 레이어를 포함하는, 데이터 전송 시스템.
  39. 제 38 항에 있어서,
    상기 시퀀스 레이어에는, sequence_header() 함수에 의해 정의되는 데이터 엘리멘트와, sequence_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(0)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 GOP 레이어에는, group_of_picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(1)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 픽처 레이어에는, picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, picture_coding_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(2)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 타임 코드 정보는 extension_and_user_data(2) 함수에 의해 표시된 user_data() 함수에 의해 표시된 time_code() 함수에 의해 정의되는, 데이터 전송 시스템.
  40. 제 37 항에 있어서,
    상기 타임 코드 정보는 상기 픽처 레이어의 사용자 데이터 영역에 기술되는 데이터이며, 상기 부호화 스트림을 분석할 때, 상기 타임 코드 정보가 상기 부호화 스트림에 포함된 고유의 스타트 코드로 혼동되지 않도록, 마커 비트가 미리 결정된 간격들로 그에 삽입되는, 데이터 전송 시스템.
  41. 제 37 항에 있어서,
    상기 소스 오디오 데이터의 각 프레임과 연관된 타임 코드 정보는 상기 소스 오디오 데이터에 첨부되고, 상기 소스 오디오 데이터의 각 프레임에 첨부된 상기 타임 코드 정보는 상기 부호화된 제 1 및 제 2 오디오 스트림들의 보조 데이터 영역들에 기술되는, 데이터 전송 시스템.
  42. 제 41 항에 있어서,
    상기 부호화 오디오 스트림의 보조 데이터 영역에는, 상기 소스 비디오 데이터의 각각의 프레임과 상기 오디오 데이터의 대응하는 프레임 사이의 위상차를 나타내는 위상 정보와, 상기 소스 오디오 데이터에 대응하는 상기 타임 코드 정보가 기술되는, 데이터 전송 시스템.
  43. 제 37 항에 있어서,
    상기 타임 코드 정보는 LTC(Longitudinal Time Code / Linear Time Code)와 VITC(Vertical Interval Time Code)를 포함하는, 데이터 전송 시스템.
  44. 데이터 전송 방법에 있어서:
    제 1 기록 매체로부터 소스 오디오 데이터, 소스 비디오 데이터 및 상기 소스 비디오 데이터에 첨부된 타임 코드 정보를 공급하는 단계로서, 상기 타임 코드 정보는 상기 소스 비디오 데이터의 각 비디오 프레임과 연관되는, 상기 공급 단계;
    동화상 압축 방식(MPEG) 표준에 따라 부호화된 제 1 오디오 스트림, 상기 MPEG 표준과 상이한 표준에 따라 부호화된 제 2 오디오 스트림, 및 상기 소스 비디오 데이터를 부호화함으로써 생성된 복수의 레이어들을 갖는 부호화 스트림을 생성하고, 상기 소스 비디오 데이터의 각 프레임에 첨부된 상기 타임 코드 정보를 상기 복수의 레이어들 중 픽처 레이어에 기술하는 단계;
    상기 부호화 스트림을 전송하는 단계;
    상기 전송된 부호화 스트림을 복호하고, 상기 부호화 스트림의 신택스를 해석(parsing)함으로써 상기 부호화 스트림의 상기 픽처 레이어로부터 상기 타임 코드 정보를 추출하는 단계; 및
    상기 제 1 기록 매체 상의 데이터와 동일한 데이터를 얻기 위하여, 제 2 기록 매체 상으로 서로 연관되는 방식으로, 상기 복호된 데이터 및 상기 추출된 타임 코드 정보를 기록하는 단계를 포함하는, 데이터 전송 방법.
  45. 제 44 항에 있어서,
    상기 부호화 스트림의 복수의 레이어들은 시퀀스 레이어, GOP 레이어, 상기 픽처 레이어, 슬라이스 레이어 및 매크로블록 레이어를 포함하는, 데이터 전송 방법.
  46. 제 45 항에 있어서,
    상기 시퀀스 레이어에는, sequence_header() 함수에 의해 정의되는 데이터 엘리멘트와, sequence_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(0)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 GOP 레이어에는, group_of_picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(1)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 픽처 레이어에는, picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, picture_coding_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(2)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 타임 코드 정보는 extension_and_user_data(2) 함수에 의해 표시된 user_data() 함수에 의해 표시된 time_code() 함수에 의해 정의되는, 데이터 전송 방법.
  47. 제 44 항에 있어서,
    상기 타임 코드 정보는 상기 픽처 레이어의 사용자 데이터 영역에 기술되는 데이터이며, 상기 부호화 스트림을 분석할 때, 상기 타임 코드 정보가 상기 부호화 스트림에 포함된 고유의 스타트 코드로 혼동되지 않도록, 마커 비트가 미리 결정된 간격들로 그에 삽입되는, 데이터 전송 방법.
  48. 제 44 항에 있어서,
    상기 소스 오디오 데이터의 각 프레임과 연관된 타임 코드 정보는 상기 소스 오디오 데이터에 첨부되고, 상기 소스 오디오 데이터의 각 프레임에 첨부된 상기 타임 코드 정보는 상기 부호화된 제 1 및 제 2 오디오 스트림들의 보조 데이터 영역들에 기술되는, 데이터 전송 방법.
  49. 제 48 항에 있어서,
    상기 부호화 오디오 스트림의 보조 데이터 영역에는, 상기 소스 비디오 데이터의 각각의 프레임과 상기 오디오 데이터의 대응하는 프레임 사이의 위상차를 나타내는 위상 정보와, 상기 소스 오디오 데이터에 대응하는 상기 타임 코드 정보가 기술되는, 데이터 전송 방법.
  50. 제 44 항에 있어서,
    상기 타임 코드 정보는 LTC(Longitudinal Time Code / Linear Time Code)와 VITC(Vertical Interval Time Code)를 포함하는, 데이터 전송 방법.
  51. 소스 비디오 데이터를 편집하는 편집 시스템에 있어서:
    상기 소스 비디오 데이터에 설정된 편집점들에 기초하여 편집 리스트를 생성하는 수단;
    상기 소스 비디오 데이터를 부호화함으로써 생성된 복수의 레이어들을 갖는 부호화 스트림을 생성하는 부호화 수단으로서, 상기 복수의 레이어들 중 픽처 레이어에 상기 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드 정보가 기술되는, 상기 부호화 수단;
    상기 부호화 스트림을 전송하는 전송 수단;
    상기 전송 수단을 통해 전송된 상기 부호화 스트림을 복호하고, 상기 부호화 스트림의 신택스를 해석함으로써 상기 부호화 스트림의 상기 픽처 레이어로부터 상기 타임 코드 정보를 추출하는 복호 수단; 및
    상기 부호화 스트림의 신택스를 해석함으로써 얻어진 상기 타임 코드 정보 및 상기 편집 리스트에 기초하여 상기 복호 수단에 의해 복호된 상기 비디오 데이터를 편집하는 편집 수단을 포함하는, 편집 시스템.
  52. 제 51 항에 있어서,
    상기 부호화 스트림의 복수의 레이어들은 시퀀스 레이어, GOP 레이어, 상기 픽처 레이어, 슬라이스 레이어 및 매크로블록 레이어를 포함하는, 편집 시스템.
  53. 제 52 항에 있어서,
    상기 시퀀스 레이어에는, sequence_header() 함수에 의해 정의되는 데이터 엘리멘트와, sequence_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(0)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 GOP 레이어에는, group_of_picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(1)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 픽처 레이어에는, picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, picture_coding_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(2)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 타임 코드 정보는 extension_and_user_data(2) 함수에 의해 표시된 user_data() 함수에 의해 표시된 time_code() 함수에 의해 정의되는, 편집 시스템.
  54. 제 51 항에 있어서,
    상기 타임 코드 정보는 상기 픽처 레이어의 사용자 데이터 영역에 기술되는 데이터이며, 상기 부호화 스트림을 분석할 때, 상기 타임 코드 정보가 상기 부호화 스트림에 포함된 고유의 스타트 코드로 혼동되지 않도록, 마커 비트가 미리 결정된 간격들로 그에 삽입되는, 편집 시스템.
  55. 제 51 항에 있어서,
    상기 소스 비디오 데이터에 대응하는 소스 오디오 데이터를 부호화함으로써 얻어지는 부호화 오디오 스트림을 생성하는 부호화 오디오 스트림 생성 수단으로서, 상기 소스 오디오 데이터의 각 프레임에 첨부된 상기 타임 코드 정보는 상기 부호화 오디오 스트림의 보조 데이터 영역에 기술되는, 상기 부호화 오디오 스트림 생성 수단을 더 포함하는, 편집 시스템.
  56. 제 55 항에 있어서,
    상기 부호화 오디오 스트림의 보조 데이터 영역에는, 상기 소스 비디오 데이터의 각각의 프레임과 상기 오디오 데이터의 대응하는 프레임 사이의 위상차를 나타내는 위상 정보와, 상기 소스 오디오 데이터에 대응하는 상기 타임 코드 정보가 기술되는, 편집 시스템.
  57. 제 51 항에 있어서,
    상기 타임 코드 정보는 LTC(Longitudinal Time Code / Linear Time Code)와 VITC(Vertical Interval Time Code)를 포함하는, 편집 시스템.
  58. 소스 비디오 데이터를 편집하는 편집 방법에 있어서:
    상기 소스 비디오 데이터에 설정된 편집점들에 기초하여 편집 리스트를 생성하는 단계;
    상기 소스 비디오 데이터를 부호화함으로써 생성된 복수의 레이어들을 갖는 부호화 스트림을 생성하는 단계로서, 상기 복수의 레이어들 중 픽처 레이어에 상기 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드 정보가 기술되는, 상기 부호화 스트림 생성 단계;
    상기 부호화 스트림을 전송하는 단계;
    상기 전송된 부호화 스트림을 복호하고, 상기 부호화 스트림의 신택스를 해석함으로써 상기 부호화 스트림의 상기 픽처 레이어로부터 상기 타임 코드 정보를 추출하는 단계; 및
    상기 부호화 스트림의 신택스를 해석함으로써 얻어진 상기 타임 코드 정보 및 상기 편집 리스트에 기초하여 상기 복호된 상기 비디오 데이터를 편집하는 단계를 포함하는, 편집 방법.
  59. 제 58 항에 있어서,
    상기 부호화 스트림의 복수의 레이어들은 시퀀스 레이어, GOP 레이어, 상기 픽처 레이어, 슬라이스 레이어 및 매크로블록 레이어를 포함하는, 편집 방법.
  60. 제 59 항에 있어서,
    상기 시퀀스 레이어에는, sequence_header() 함수에 의해 정의되는 데이터 엘리멘트와, sequence_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(0)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 GOP 레이어에는, group_of_picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(1)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 픽처 레이어에는, picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, picture_coding_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(2)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 타임 코드 정보는 extension_and_user_data(2) 함수에 의해 표시된 user_data() 함수에 의해 표시된 time_code() 함수에 의해 정의되는, 편집 방법.
  61. 제 58 항에 있어서,
    상기 타임 코드 정보는 상기 픽처 레이어의 사용자 데이터 영역에 기술되는 데이터이며, 상기 타임 코드 정보가 상기 부호화 스트림에 포함된 고유의 스타트 코드로 혼동되지 않도록, 마커 비트가 미리 결정된 간격들로 그에 삽입되는, 편집 방법.
  62. 제 58 항에 있어서,
    상기 소스 비디오 데이터에 대응하는 소스 오디오 데이터를 부호화함으로써 얻어지는 부호화 오디오 스트림을 생성하는 단계로서, 상기 소스 오디오 데이터의 각 프레임에 첨부된 상기 타임 코드 정보는 상기 부호화 오디오 스트림의 보조 데이터 영역에 기술되는, 상기 부호화 오디오 스트림 생성 단계를 더 포함하는, 편집 방법.
  63. 제 62 항에 있어서,
    상기 부호화 오디오 스트림의 보조 데이터 영역에는, 상기 소스 비디오 데이터의 각각의 프레임과 상기 소스 오디오 데이터의 대응하는 프레임 사이의 위상차를 나타내는 위상 정보와, 상기 소스 오디오 데이터에 대응하는 상기 타임 코드 정보가 기술되는, 편집 방법.
  64. 제 58 항에 있어서,
    상기 타임 코드 정보는 LTC(Longitudinal Time Code / Linear Time Code)와 VITC(Vertical Interval Time Code)를 포함하는, 편집 방법.
  65. 소스 비디오 데이터를 부호화함으로써 얻어진 부호화 스트림을 편집하는 편집 시스템에 있어서:
    상기 소스 비디오 데이터에 설정된 편집점들에 기초하여 편집 리스트를 생성하는 수단;
    상기 소스 비디오 데이터를 부호화함으로써 생성된 복수의 레이어들을 갖는 부호화 스트림을 생성하는 부호화 수단으로서, 상기 복수의 레이어들 중 픽처 레이어에 상기 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드 정보가 기술되는, 상기 부호화 수단; 및
    상기 부호화 스트림의 신택스를 해석함으로써 얻어진 상기 타임 코드 정보 및 상기 편집 리스트에 기초하여 상기 부호화 스트림을 편집하는 편집 수단을 포함하는, 편집 시스템.
  66. 제 65 항에 있어서,
    상기 부호화 스트림의 복수의 레이어들은 시퀀스 레이어, GOP 레이어, 상기 픽처 레이어, 슬라이스 레이어 및 매크로블록 레이어를 포함하는, 편집 시스템.
  67. 제 66 항에 있어서,
    상기 시퀀스 레이어에는, sequence_header() 함수에 의해 정의되는 데이터 엘리멘트와, sequence_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(0)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 GOP 레이어에는, group_of_picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(1)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 픽처 레이어에는, picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, picture_coding_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(2)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 타임 코드 정보는 extension_and_user_data(2) 함수에 의해 표시된 user_data() 함수에 의해 표시된 time_code() 함수에 의해 정의되는, 편집 시스템.
  68. 제 65 항에 있어서,
    상기 타임 코드 정보는 상기 픽처 레이어의 사용자 데이터 영역에 기술되는 데이터이며, 상기 부호화 스트림을 분석할 때, 상기 픽처 레이어의 상기 사용자 데이터 영역에 기술된 상기 타임 코드 정보가 상기 부호화 스트림 고유의 스타트 코드로 혼동되지 않도록, 마커 비트가 미리 결정된 간격들로 그에 삽입되는, 편집 시스템.
  69. 제 65 항에 있어서,
    상기 소스 비디오 데이터에 대응하는 소스 오디오 데이터를 부호화함으로써 얻어지는 부호화 오디오 스트림을 생성하는 수단으로서, 상기 소스 오디오 데이터의 각 프레임에 첨부된 상기 타임 코드 정보는 상기 부호화 오디오 스트림의 보조 데이터 영역에 기술되는, 상기 부호화 오디오 스트림 생성 수단을 더 포함하는, 편집 시스템.
  70. 제 69 항에 있어서,
    상기 부호화 오디오 스트림의 보조 데이터 영역에는, 상기 소스 비디오 데이터의 각각의 프레임과 상기 소스 오디오 데이터의 대응하는 프레임 사이의 위상차를 나타내는 위상 정보와, 상기 소스 오디오 데이터에 대응하는 상기 타임 코드가 기술되는, 편집 시스템.
  71. 제 65 항에 있어서,
    상기 타임 코드 정보는 LTC(Longitudinal Time Code / Linear Time Code)와 VITC(Vertical Interval Time Code)를 포함하는, 편집 시스템.
  72. 소스 비디오 데이터를 부호화함으로써 얻어진 부호화 스트림을 편집하는 편집 방법에 있어서:
    상기 소스 비디오 데이터에 설정된 편집점들에 기초하여 편집 리스트를 생성하는 단계;
    상기 소스 비디오 데이터를 부호화함으로써 생성된 복수의 레이어들을 갖는 부호화 스트림을 생성하는 단계로서, 상기 복수의 레이어들 중 픽처 레이어에 상기 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드 정보가 기술되는, 상기 부호화 스트림 생성 단계; 및
    상기 부호화 스트림의 신택스를 해석함으로써 얻어진 상기 타임 코드 정보 및 상기 편집 리스트에 기초하여 상기 부호화 스트림을 편집하는 단계를 포함하는, 편집 방법.
  73. 제 72 항에 있어서,
    상기 부호화 스트림의 복수의 레이어들은 시퀀스 레이어, GOP 레이어, 상기 픽처 레이어, 슬라이스 레이어 및 매크로블록 레이어를 포함하는, 편집 방법.
  74. 제 73 항에 있어서,
    상기 시퀀스 레이어에는, sequence_header() 함수에 의해 정의되는 데이터 엘리멘트와, sequence_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(0)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 GOP 레이어에는, group_of_picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(1)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 픽처 레이어에는, picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, picture_coding_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(2)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 타임 코드 정보는 extension_and_user_data(2) 함수에 의해 표시된 user_data() 함수에 의해 표시된 time_code() 함수에 의해 정의되는, 편집 방법.
  75. 제 72 항에 있어서,
    상기 타임 코드 정보는 상기 픽처 레이어의 사용자 데이터 영역에 기술되는 데이터이며, 상기 부호화 스트림을 분석할 때, 상기 픽처 레이어의 상기 사용자 데이터 영역에 기술된 상기 타임 코드 정보가 상기 부호화 스트림 고유의 스타트 코드로 혼동되지 않도록, 마커 비트가 미리 결정된 간격들로 그에 삽입되는, 편집 방법.
  76. 제 72 항에 있어서,
    상기 소스 비디오 데이터에 대응하는 소스 오디오 데이터를 부호화함으로써 얻어지는 부호화 오디오 스트림을 생성하는 단계로서, 상기 소스 오디오 데이터의 각 프레임에 첨부된 상기 타임 코드 정보는 상기 부호화 오디오 스트림의 보조 데이터 영역에 기술되는, 상기 부호화 오디오 스트림 생성 단계를 더 포함하는, 편집 방법.
  77. 제 76 항에 있어서,
    상기 부호화 오디오 스트림의 보조 데이터 영역에는, 상기 소스 비디오 데이터의 각각의 프레임과 상기 오디오 데이터의 대응하는 프레임 사이의 위상차를 나타내는 위상 정보와, 상기 소스 오디오 데이터에 대응하는 상기 타임 코드 정보가 기술되는, 편집 방법.
  78. 제 72 항에 있어서,
    상기 타임 코드 정보는 LTC(Longitudinal Time Code / Linear Time Code)와 VITC(Vertical Interval Time Code)를 포함하는, 편집 방법.
  79. 부호화 스트림을 편집하는 편집 시스템에 있어서:
    기저 대역 소스 비디오 데이터를 처리함으로써 설정된 편집점들에 기초하여 편집 리스트를 생성하는 기저 대역 시스템; 및
    상기 소스 비디오 데이터를 부호화함으로써 생성된 복수의 레이어들을 갖는 부호화 스트림을 생성하는 부호화 시스템으로서, 상기 복수의 레이어들 중 픽처 레이어에 상기 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드 정보가 기술되고, 상기 부호화 스트림은, 상기 부호화 스트림의 신택스를 해석함으로써 얻어진 상기 타임 코드 정보와, 상기 기저 대역 시스템에서 생성된 상기 편집 리스트에 기초하여 스트림 레벨로 편집되는, 상기 부호화 시스템을 포함하는, 편집 시스템.
  80. 제 79 항에 있어서,
    상기 부호화 스트림의 복수의 레이어들은 시퀀스 레이어, GOP 레이어, 상기 픽처 레이어, 슬라이스 레이어 및 매크로블록 레이어를 포함하는, 편집 시스템.
  81. 제 80 항에 있어서,
    상기 시퀀스 레이어에는, sequence_header() 함수에 의해 정의되는 데이터 엘리멘트와, sequence_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(0)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 GOP 레이어에는, group_of_picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(1)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 픽처 레이어에는, picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, picture_coding_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(2)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 타임 코드 정보는 extension_and_user_data(2) 함수에 의해 표시된 user_data() 함수에 의해 표시된 time_code() 함수에 의해 정의되는, 편집 시스템.
  82. 제 79 항에 있어서,
    상기 타임 코드 정보는 상기 픽처 레이어의 사용자 데이터 영역에 기술되는 데이터이며, 상기 부호화 스트림을 분석할 때, 상기 픽처 레이어의 상기 사용자 데이터 영역에 기술된 상기 타임 코드가 상기 부호화 스트림 고유의 스타트 코드로 혼동되지 않도록, 마커 비트가 미리 결정된 간격들로 그에 삽입되는, 편집 시스템.
  83. 제 79 항에 있어서,
    상기 소스 비디오 데이터에 대응하는 소스 오디오 데이터를 부호화함으로써 얻어지는 부호화 오디오 스트림을 생성하는 부호화 오디오 스트림 생성 수단으로서, 상기 소스 오디오 데이터의 각 프레임에 첨부된 상기 타임 코드 정보는 상기 부호화 오디오 스트림의 보조 데이터 영역에 기술되는, 상기 부호화 오디오 스트림 생성 수단을 더 포함하는, 편집 시스템.
  84. 제 83 항에 있어서,
    상기 부호화 오디오 스트림의 보조 데이터 영역에는, 상기 소스 비디오 데이터의 각각의 프레임과 상기 소스 오디오 데이터의 대응하는 프레임 사이의 위상차를 나타내는 위상 정보와, 상기 소스 오디오 데이터에 대응하는 상기 타임 코드 정보가 기술되는, 편집 시스템.
  85. 제 79 항에 있어서,
    상기 타임 코드 정보는 LTC(Longitudinal Time Code / Linear Time Code)와 VITC(Vertical Interval Time Code)를 포함하는, 편집 시스템.
  86. 부호화 스트림을 편집하는 편집 방법에 있어서:
    기저 대역 소스 비디오 데이터를 처리함으로써 설정된 편집점들에 기초하여 편집 리스트를 생성하는 단계; 및
    상기 소스 비디오 데이터를 부호화함으로써 생성된 복수의 레이어들을 갖는 부호화 스트림을 생성하는 단계로서, 상기 복수의 레이어들 중 픽처 레이어에 상기 소스 비디오 데이터의 각 프레임에 첨부된 타임 코드 정보가 기술되고, 상기 부호화 스트림은, 상기 부호화 스트림의 신택스를 해석함으로써 얻어진 상기 타임 코드 정보와, 상기 생성된 편집 리스트에 기초하여 스트림 레벨로 편집되는, 상기 부호화 스트림 생성 단계를 포함하는, 편집 방법.
  87. 제 86 항에 있어서,
    상기 부호화 스트림의 복수의 레이어들은 시퀀스 레이어, GOP 레이어, 상기 픽처 레이어, 슬라이스 레이어 및 매크로블록 레이어를 포함하는, 편집 방법.
  88. 제 87 항에 있어서,
    상기 시퀀스 레이어에는, sequence_header() 함수에 의해 정의되는 데이터 엘리멘트와, sequence_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(0)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 GOP 레이어에는, group_of_picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(1)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 픽처 레이어에는, picture_header() 함수에 의해 정의되는 데이터 엘리멘트와, picture_coding_extension() 함수에 의해 정의되는 데이터 엘리멘트와, extension_and_user_data(2)에 의해 정의되는 데이터 엘리멘트가 기술되고;
    상기 타임 코드 정보는 extension_and_user_data(2) 함수에 의해 표시된 user_data() 함수에 의해 표시된 time_code() 함수에 의해 정의되는, 편집 방법.
  89. 제 86 항에 있어서,
    상기 타임 코드 정보는 상기 픽처 레이어의 사용자 데이터 영역에 기술되는 데이터이며, 상기 픽처 레이어의 상기 사용자 데이터 영역에 기술된 상기 타임 코드가 상기 부호화 스트림에 포함된 고유의 스타트 코드로 혼동되지 않도록, 마커 비트가 미리 결정된 간격들로 그에 삽입되는, 편집 방법.
  90. 제 86 항에 있어서,
    상기 소스 비디오 데이터에 대응하는 소스 오디오 데이터를 부호화함으로써 얻어지는 부호화 오디오 스트림을 생성하는 단계로서, 상기 소스 오디오 데이터의 각 프레임에 첨부된 상기 타임 코드 정보는 상기 부호화 오디오 스트림의 보조 데이터 영역에 기술되는, 상기 부호화 오디오 스트림 생성 단계를 더 포함하는, 편집 방법.
  91. 제 90 항에 있어서,
    상기 부호화 오디오 스트림의 보조 데이터 영역에는, 상기 소스 비디오 데이터의 각각의 프레임과 상기 오디오 데이터의 대응하는 프레임 사이의 위상차를 나타내는 위상 정보와, 상기 소스 오디오 데이터에 대응하는 상기 타임 코드 정보가 기술되는, 편집 방법.
  92. 제 86 항에 있어서,
    상기 타임 코드 정보는 LTC(Longitudinal Time Code / Linear Time Code)와 VITC(Vertical Interval Time Code)를 포함하는, 편집 방법.
  93. 동화상 압축 방식(MPEG) 표준에 따라 부호화 비디오 스트림을 생성하기 위하여 비디오 데이터를 부호화하고;
    상기 부호화 비디오 스트림의 픽처 레이어로서, 상기 MPEG 표준에 정의되어 있는 상기 픽처 레이어의 사용자 데이터 영역에 타임 코드 정보를 삽입함으로써 생성된 부호화 비디오 스트림을 기록한 컴퓨터 판독 가능한 기록 매체.
  94. 제 93 항에 있어서,
    상기 부호화 비디오 스트림은 시퀀스 레이어, GOP 레이어, 상기 픽처 레이어, 슬라이스 레이어 및 매크로블록 레이어를 포함하는 복수의 레이어들을 갖는 계층 구조를 가지고, 상기 구조는 MPEG 표준에 정의되어 있는, 부호화 비디오 스트림을 기록한 컴퓨터 판독 가능한 기록 매체.
  95. 제 93 항에 있어서,
    비디오 데이터를 수신하고, 이로부터 타임 코드 정보를 추출하고, 상기 추출된 타임 코드 정보는 상기 부호화 비디오 스트림의 상기 픽처 레이어에 삽입되는, 부호화 비디오 스트림을 기록한 컴퓨터 판독 가능한 기록 매체.
  96. 비디오 데이터로부터 동화상 압축 방식(MPEG) 표준에 따라 부호화된 부호화 비디오 스트림으로서, 상기 부호화 비디오 스트림은 MPEG 표준에 정의된 픽처 레이어를 갖고; 타임 코드 정보가 상기 픽처 레이어의 사용자 데이터 영역에 삽입되어, 이로부터 추출 가능한, 부호화 비디오 스트림을 기록한 컴퓨터 판독 가능한 기록 매체.
  97. 제 96 항에 있어서,
    상기 부호화 비디오 스트림은 시퀀스 레이어, GOP 레이어, 상기 픽처 레이어, 슬라이스 레이어 및 매크로블록 레이어를 포함하는 복수의 레이어들을 갖는 계층 구조를 가지며, 상기 구조는 MPEG 표준에 정의되어 있는, 부호화 비디오 스트림을 기록한 컴퓨터 판독 가능한 기록 매체.
  98. 제 96 항에 있어서,
    추출된 상기 타임 코드 정보는 편집에 이용되는, 부호화 비디오 스트림을 기록한 컴퓨터 판독 가능한 기록 매체.
KR1019997004625A 1997-09-25 1998-09-25 부호화 스트림 생성 장치 및 방법, 데이터 전송 시스템 및 방법, 편집 시스템 및 방법 KR100750520B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP26003397 1997-09-25
JP97-260033 1997-09-25
PCT/JP1998/004292 WO1999016196A1 (en) 1997-09-25 1998-09-25 Device and method for generating encoded stream, system and method for transmitting data, and system and method for edition

Publications (2)

Publication Number Publication Date
KR20000069135A KR20000069135A (ko) 2000-11-25
KR100750520B1 true KR100750520B1 (ko) 2007-08-21

Family

ID=17342377

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019997004625A KR100750520B1 (ko) 1997-09-25 1998-09-25 부호화 스트림 생성 장치 및 방법, 데이터 전송 시스템 및 방법, 편집 시스템 및 방법

Country Status (4)

Country Link
US (5) US6438317B1 (ko)
JP (2) JP4150083B2 (ko)
KR (1) KR100750520B1 (ko)
WO (1) WO1999016196A1 (ko)

Families Citing this family (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4150083B2 (ja) * 1997-09-25 2008-09-17 ソニー株式会社 符号化ストリーム生成装置及び方法、ならびに編集システム及び方法
US6754439B1 (en) * 1998-04-06 2004-06-22 Seachange International, Inc. Method and apparatus for using multiple compressed digital video and audio signals
JPH11353790A (ja) * 1998-06-08 1999-12-24 Yamaha Corp ディジタルビデオ信号送信装置及び受信装置
US7272556B1 (en) * 1998-09-23 2007-09-18 Lucent Technologies Inc. Scalable and embedded codec for speech and audio signals
KR100523943B1 (ko) * 1998-12-23 2005-12-21 주식회사 코오롱 울팩용 포지
KR100420740B1 (ko) * 1999-02-05 2004-03-02 소니 가부시끼 가이샤 인코딩 장치, 인코딩 방법, 디코딩 장치, 디코딩 방법,코딩 시스템, 코딩 방법
US20040161032A1 (en) * 1999-04-06 2004-08-19 Amir Morad System and method for video and audio encoding on a single chip
US7589789B2 (en) * 1999-05-08 2009-09-15 Lg Electronics Inc. Video converting device and method for digital TV
JP3550509B2 (ja) * 1999-05-26 2004-08-04 松下電器産業株式会社 画像記録再生装置と画像再生装置と不正利用防止方法
US6754276B1 (en) * 1999-09-20 2004-06-22 Matsushita Electric Industrial Co., Ltd. System stream creating apparatus which adjusts system clock reference based on total number of pictures to be stored and decoded during certain time period
JP4389365B2 (ja) * 1999-09-29 2009-12-24 ソニー株式会社 トランスポートストリーム記録装置および方法、トランスポートストリーム再生装置および方法、並びにプログラム記録媒体
US6882793B1 (en) 2000-06-16 2005-04-19 Yesvideo, Inc. Video processing system
TW540248B (en) * 2000-07-19 2003-07-01 Koninkl Philips Electronics Nv Method and device for generating a multiplexed MPEG signal
JP4506053B2 (ja) * 2000-08-10 2010-07-21 ソニー株式会社 ビデオ信号処理装置、ビデオ信号処理方法、ビデオデータ処理装置、ビデオデータ処理方法、ビデオデータ編集装置およびビデオデータ編集方法。
JP3825615B2 (ja) * 2000-08-11 2006-09-27 株式会社東芝 動画像符号化装置および動画像符号化方法およびプログラムを記録した媒体
US6738427B2 (en) * 2000-09-15 2004-05-18 International Business Machines Corporation System and method of processing MPEG streams for timecode packet insertion
US7177520B2 (en) * 2000-09-15 2007-02-13 Ibm Corporation System and method of timecode repair and synchronization in MPEG streams
KR100769375B1 (ko) 2001-05-12 2007-10-22 엘지전자 주식회사 스크립트 파일이 포함 기록된 기록매체와, 그 재생장치 및방법
KR100771264B1 (ko) * 2001-05-12 2007-10-29 엘지전자 주식회사 스크립트 파일이 포함 기록된 기록매체와, 그 재생장치 및방법
KR100769371B1 (ko) * 2001-05-12 2007-10-22 엘지전자 주식회사 스크립트 파일이 포함 기록된 기록매체와, 그 재생장치 및방법
US6862592B1 (en) * 2001-12-21 2005-03-01 Adobe Systems Incorporated Document processing in a cross-platform environment
US20030131362A1 (en) * 2002-01-09 2003-07-10 Koninklijke Philips Electronics N.V. Method and apparatus for multimodal story segmentation for linking multimedia content
DE60311231T2 (de) * 2002-01-22 2007-11-15 Microsoft Corp., Redmond Verfahren zum ermöglichen von direktzugriff und spleissen in einem verschlüsselten videostrom
US7072402B2 (en) * 2002-05-13 2006-07-04 General Instrument Corporation Methods and apparatus for dynamically adjusting f-codes for a digital picture header
WO2003098412A2 (en) * 2002-05-13 2003-11-27 Mediavu Llc Content delivery system
US7136417B2 (en) * 2002-07-15 2006-11-14 Scientific-Atlanta, Inc. Chroma conversion optimization
JP4806888B2 (ja) * 2002-07-19 2011-11-02 ソニー株式会社 復号化装置及び復号化方法
US20130138231A1 (en) * 2011-11-30 2013-05-30 Arbitron, Inc. Apparatus, system and method for activating functions in processing devices using encoded audio
US8959016B2 (en) 2002-09-27 2015-02-17 The Nielsen Company (Us), Llc Activating functions in processing devices using start codes embedded in audio
US9711153B2 (en) 2002-09-27 2017-07-18 The Nielsen Company (Us), Llc Activating functions in processing devices using encoded audio and detecting audio signatures
US20120203363A1 (en) * 2002-09-27 2012-08-09 Arbitron, Inc. Apparatus, system and method for activating functions in processing devices using encoded audio and audio signatures
US20040067042A1 (en) * 2002-10-07 2004-04-08 Hughes Robert K. Extended time-code for multimedia presentations
JP3896949B2 (ja) * 2002-11-08 2007-03-22 日本電気株式会社 ビデオ編集装置及びビデオ編集プログラム
US7489362B2 (en) 2003-03-04 2009-02-10 Broadcom Corporation Television functionality on a chip
US7715482B2 (en) * 2003-08-14 2010-05-11 Broadcom Corporation System and method for generating pseudo MPEG information from digital video information
BRPI0408066A (pt) * 2003-03-05 2006-02-14 Nokia Corp método de transmissão e recepção de dados, nó transmissor de dados, nó receptor de dados, e, aparelho de transmissão de dados
US20050013274A1 (en) * 2003-03-05 2005-01-20 Harri Pekonen System and method for data transmission and reception
JP3912536B2 (ja) * 2003-03-25 2007-05-09 ソニー株式会社 記録方法、記録装置、記録媒体、撮像装置および撮像方法
GB0306973D0 (en) * 2003-03-26 2003-04-30 British Telecomm Transmitting video
WO2004090677A2 (en) * 2003-04-04 2004-10-21 Bbc Technology Holdings Limited System and method for processing multimedia content
CA2522022C (en) * 2003-04-10 2012-06-12 Matsushita Electric Industrial Co., Ltd. Information recording medium, device and method for recording information in information recording medium
US20050025463A1 (en) * 2003-06-20 2005-02-03 Bloom Jeffrey Adam Method and apparatus for creating multiple unique copies of content
JP2005109829A (ja) * 2003-09-30 2005-04-21 Toshiba Corp トランスポートストリーム記録編集装置及び記録編集方法
US8427494B2 (en) * 2004-01-30 2013-04-23 Nvidia Corporation Variable-length coding data transfer interface
GB0406901D0 (en) * 2004-03-26 2004-04-28 British Telecomm Transmitting recorded material
US8131134B2 (en) * 2004-04-14 2012-03-06 Microsoft Corporation Digital media universal elementary stream
US7590059B2 (en) * 2004-05-21 2009-09-15 Broadcom Corp. Multistandard video decoder
US20050259735A1 (en) * 2004-05-21 2005-11-24 Qin-Fan Zhu System and method for video error masking using standard prediction
JP4586429B2 (ja) * 2004-06-11 2010-11-24 ソニー株式会社 データ処理装置およびデータ処理方法、並びに、プログラムおよびプログラム記録媒体
US20070058723A1 (en) * 2005-09-14 2007-03-15 Chandramouly Ashwin A Adaptively adjusted slice width selection
US7589796B2 (en) * 2006-02-06 2009-09-15 Vixs Systems Inc. Video display device, video encoder, and methods for use therewith
WO2007115352A1 (en) * 2006-02-13 2007-10-18 Vividas Technologies Pty Ltd Method, system and software product for streaming content
WO2007114107A1 (ja) * 2006-03-30 2007-10-11 Pioneer Corporation コンテンツ送信システムにおけるサーバー装置およびコンテンツ送信方法
US8880571B2 (en) * 2006-05-05 2014-11-04 Microsoft Corporation High dynamic range data format conversions for digital media
US20080013915A1 (en) * 2006-05-12 2008-01-17 Gill Barjinderpal S System and method for distributing a media product by providing access to an edit decision list
US20080037956A1 (en) * 2006-06-30 2008-02-14 Scientific-Atlanta, Inc. Systems and Methods of Generating Encapsulated MPEG Program Streams
US8509590B2 (en) 2007-05-28 2013-08-13 Panasonic Corporation Metadata recording device and method thereof
US8725504B1 (en) 2007-06-06 2014-05-13 Nvidia Corporation Inverse quantization in audio decoding
US8726125B1 (en) 2007-06-06 2014-05-13 Nvidia Corporation Reducing interpolation error
US8477852B2 (en) * 2007-06-20 2013-07-02 Nvidia Corporation Uniform video decoding and display
EP2034485A1 (en) 2007-09-07 2009-03-11 Thomson Licensing System and method for generating linear time code data
US8165060B2 (en) 2007-09-11 2012-04-24 The Directv Group, Inc. Method and system for monitoring and switching between primary and back-up uplink signal processing circuits in a satellite communication system
US8424044B2 (en) * 2007-09-11 2013-04-16 The Directv Group, Inc. Method and system for monitoring and switching between a primary encoder and a back-up encoder in a communication system
US8973058B2 (en) * 2007-09-11 2015-03-03 The Directv Group, Inc. Method and system for monitoring and simultaneously displaying a plurality of signal channels in a communication system
US9756290B2 (en) 2007-09-11 2017-09-05 The Directv Group, Inc. Method and system for communicating between a local collection facility and a remote facility
US20090070829A1 (en) * 2007-09-11 2009-03-12 The Directv Group, Inc. Receiving circuit module for receiving and encoding channel signals and method for operating the same
US9313457B2 (en) * 2007-09-11 2016-04-12 The Directv Group, Inc. Method and system for monitoring a receiving circuit module and controlling switching to a back-up receiving circuit module at a local collection facility from a remote facility
US8472871B2 (en) * 2007-09-11 2013-06-25 The Directv Group, Inc. Method and system for monitoring and switching between a primary and diverse site in a satellite communication system
US9473751B2 (en) * 2007-09-11 2016-10-18 The Directv Group, Inc. Method and system for operating a monitoring system for a satellite communication system
US9300412B2 (en) * 2007-09-11 2016-03-29 The Directv Group, Inc. Method and system for operating a receiving circuit for multiple types of input channel signals
US8356321B2 (en) 2007-09-11 2013-01-15 The Directv Group, Inc. Method and system for monitoring and controlling receiving circuit modules at a local collection facility from a remote facility
US8804499B2 (en) * 2007-09-11 2014-08-12 The Directv Group, Inc. Method and system for monitoring and switching between a first uplink signal processing circuit and a secondary uplink signal processing circuit
US8792336B2 (en) * 2007-09-11 2014-07-29 The Directv Group, Inc. Method and system for monitoring and switching between primary and back-up receiver decoder circuits in a communication system
US8479234B2 (en) 2007-09-12 2013-07-02 The Directv Group, Inc. Method and system for monitoring and controlling a local collection facility from a remote facility using an asynchronous transfer mode (ATM) network
US8849051B2 (en) * 2007-09-17 2014-09-30 Nvidia Corporation Decoding variable length codes in JPEG applications
US8502709B2 (en) * 2007-09-17 2013-08-06 Nvidia Corporation Decoding variable length codes in media applications
US9049037B2 (en) * 2007-10-31 2015-06-02 The Directv Group, Inc. Method and system for monitoring and encoding signals in a local facility and communicating the signals between a local collection facility and a remote facility using an IP network
US8934539B2 (en) 2007-12-03 2015-01-13 Nvidia Corporation Vector processor acceleration for media quantization
US8687875B2 (en) * 2007-12-03 2014-04-01 Nvidia Corporation Comparator based acceleration for media quantization
US8704834B2 (en) * 2007-12-03 2014-04-22 Nvidia Corporation Synchronization of video input data streams and video output data streams
US9876599B2 (en) * 2007-12-17 2018-01-23 Avago Technologies General Ip (Singapore) Pte. Ltd. System(s), method(s), and apparatus for accurate detection of the end of stream
TWI357263B (en) * 2008-02-22 2012-01-21 Novatek Microelectronics Corp Method and related device for converting transport
EP2101503A1 (en) * 2008-03-11 2009-09-16 British Telecommunications Public Limited Company Video coding
KR101230691B1 (ko) * 2008-07-10 2013-02-07 한국전자통신연구원 공간정보 기반의 다객체 오디오 부호화에서의 오디오 객체 편집 방법 및 그 장치
EP2338278B1 (en) 2008-09-16 2015-02-25 Intel Corporation Method for presenting an interactive video/multimedia application using content-aware metadata
US9762973B2 (en) * 2008-11-04 2017-09-12 The Directv Group, Inc. Method and system for operating a receiving circuit module to encode a channel signal into multiple encoding formats
EP2200319A1 (en) 2008-12-10 2010-06-23 BRITISH TELECOMMUNICATIONS public limited company Multiplexed video streaming
US9307267B2 (en) 2008-12-11 2016-04-05 Nvidia Corporation Techniques for scalable dynamic data encoding and decoding
WO2010069375A1 (en) 2008-12-17 2010-06-24 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for measuring audiovisual synchronisation
EP2219342A1 (en) 2009-02-12 2010-08-18 BRITISH TELECOMMUNICATIONS public limited company Bandwidth allocation control in multiple video streaming
US8879895B1 (en) 2009-03-28 2014-11-04 Matrox Electronic Systems Ltd. System and method for processing ancillary data associated with a video stream
US8665949B1 (en) * 2009-09-09 2014-03-04 Marvell International Ltd. Methods and apparatus for transmission of data at different modulation and/or coding rates
US8743178B2 (en) * 2010-01-05 2014-06-03 Dolby Laboratories Licensing Corporation Multi-view video format control
US8782803B2 (en) 2010-04-14 2014-07-15 Legitmix, Inc. System and method of encrypting a derivative work using a cipher created from its source
US8925102B2 (en) * 2010-10-14 2014-12-30 Legitmix, Inc. System and method of generating encryption/decryption keys and encrypting/decrypting a derivative work
US9831971B1 (en) 2011-04-05 2017-11-28 The Directv Group, Inc. Method and system for operating a communication system encoded into multiple independently communicated encoding formats
JP5306415B2 (ja) * 2011-05-30 2013-10-02 株式会社東芝 ビデオサーバ、mxfファイル再生方法
US9998750B2 (en) 2013-03-15 2018-06-12 Cisco Technology, Inc. Systems and methods for guided conversion of video from a first to a second compression format
CN105075275B (zh) * 2014-01-16 2020-05-12 索尼公司 数据处理装置和数据处理方法
US10271069B2 (en) 2016-08-31 2019-04-23 Microsoft Technology Licensing, Llc Selective use of start code emulation prevention

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0166607A2 (en) * 1984-06-28 1986-01-02 Reginald Alfred King Encoding method for time encoded data
JPH08168042A (ja) * 1994-12-15 1996-06-25 Sony Corp データ復号化装置およびデータ復号化方法

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5164839A (en) * 1988-12-27 1992-11-17 Explore Technology, Inc. Method for handling audio/video source information
JP2965320B2 (ja) 1990-05-28 1999-10-18 日本電信電話株式会社 映像編集方法
JP2927913B2 (ja) * 1990-08-28 1999-07-28 日本電気ホームエレクトロニクス株式会社 画像圧縮装置
JPH05101609A (ja) * 1990-09-28 1993-04-23 Digital Fx Inc ビデオテープエデイテイングシステムとビデオテープデータエデイテイング方法
JPH04332991A (ja) * 1991-05-02 1992-11-19 Matsushita Electric Ind Co Ltd タイムコード自動判別切り換え装置
US5493339A (en) * 1993-01-21 1996-02-20 Scientific-Atlanta, Inc. System and method for transmitting a plurality of digital services including compressed imaging services and associated ancillary data services
JPH06295566A (ja) 1993-04-09 1994-10-21 Matsushita Electric Ind Co Ltd 動画像編集装置
US5701153A (en) * 1994-01-14 1997-12-23 Legal Video Services, Inc. Method and system using time information in textual representations of speech for correlation to a second representation of that speech
JPH0879703A (ja) 1994-07-05 1996-03-22 Sony Corp 画像情報処理方法及び装置
TW377935U (en) * 1994-08-10 1999-12-21 Gen Instrument Corp Dram mapping for a digital video decompression processor
JPH08205170A (ja) * 1995-01-23 1996-08-09 Matsushita Electric Ind Co Ltd 動画像復号化装置及び動画像符号化装置
JPH08205082A (ja) 1995-01-25 1996-08-09 Sony Corp データ処理装置
US5721952A (en) * 1995-02-17 1998-02-24 Acer Incorporated Method and apparatus for automatic detection of disk type in a computer system
JP3635710B2 (ja) 1995-04-05 2005-04-06 ソニー株式会社 ニュース素材を伝送する方法及び装置
JPH098763A (ja) * 1995-06-16 1997-01-10 Hitachi Denshi Ltd データ伝送システム
US5699124A (en) * 1995-06-28 1997-12-16 General Instrument Corporation Of Delaware Bandwidth efficient communication of user data in digital television data stream
JP3701051B2 (ja) 1995-07-04 2005-09-28 パイオニア株式会社 情報記録装置及び情報再生装置
US5598415A (en) * 1995-08-04 1997-01-28 General Instrument Corporation Of Delaware Transmission of high rate isochronous data in MPEG-2 data streams
US5703859A (en) * 1995-09-01 1997-12-30 Sony Corporation Digital video copy protection system
US5959672A (en) * 1995-09-29 1999-09-28 Nippondenso Co., Ltd. Picture signal encoding system, picture signal decoding system and picture recognition system
US5844594A (en) * 1995-10-05 1998-12-01 Microsoft Corporation Method and apparatus for MPEG encoding
JPH09116860A (ja) 1995-10-19 1997-05-02 Matsushita Electric Ind Co Ltd 動画範囲選択方法及びビデオ編集装置
JP3711603B2 (ja) * 1995-12-12 2005-11-02 ソニー株式会社 符号化装置及びその方法、並びに記録装置及びその方法
JP3763153B2 (ja) * 1995-12-13 2006-04-05 ソニー株式会社 データ処理装置及びデータ処理方法
US5822547A (en) * 1996-05-31 1998-10-13 Texas Instruments Incorporated Method and apparatus for providing a portable computer with hot pluggable modular bays
US5920709A (en) * 1996-06-04 1999-07-06 Exabyte Corporation Bus interface for IDE device
JPH1098677A (ja) * 1996-09-25 1998-04-14 Matsushita Electric Ind Co Ltd 映像情報編集装置
US5844615A (en) * 1997-01-16 1998-12-01 General Instrument Corporation Communication of VBI data in digital television data streams
JP4150083B2 (ja) * 1997-09-25 2008-09-17 ソニー株式会社 符号化ストリーム生成装置及び方法、ならびに編集システム及び方法
US6182162B1 (en) * 1998-03-02 2001-01-30 Lexar Media, Inc. Externally coupled compact flash memory card that configures itself one of a plurality of appropriate operating protocol modes of a host computer
KR100420740B1 (ko) * 1999-02-05 2004-03-02 소니 가부시끼 가이샤 인코딩 장치, 인코딩 방법, 디코딩 장치, 디코딩 방법,코딩 시스템, 코딩 방법
DE20006458U1 (de) * 2000-04-07 2000-06-15 Key Technology Corp RAID-Vorrichtung mit anpassungsfähiger Befehlsverarbeitung und Datenübertragung

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0166607A2 (en) * 1984-06-28 1986-01-02 Reginald Alfred King Encoding method for time encoded data
JPH08168042A (ja) * 1994-12-15 1996-06-25 Sony Corp データ復号化装置およびデータ復号化方法

Also Published As

Publication number Publication date
JP4816667B2 (ja) 2011-11-16
US20010048803A1 (en) 2001-12-06
WO1999016196A1 (en) 1999-04-01
JP4150083B2 (ja) 2008-09-17
US6594439B2 (en) 2003-07-15
US20010001023A1 (en) 2001-05-10
US7209636B2 (en) 2007-04-24
US20070076798A1 (en) 2007-04-05
KR20000069135A (ko) 2000-11-25
JP2008263601A (ja) 2008-10-30
US6438317B1 (en) 2002-08-20
US6453112B2 (en) 2002-09-17
US20030215215A1 (en) 2003-11-20
US8891937B2 (en) 2014-11-18

Similar Documents

Publication Publication Date Title
KR100750520B1 (ko) 부호화 스트림 생성 장치 및 방법, 데이터 전송 시스템 및 방법, 편집 시스템 및 방법
US8131135B2 (en) MPEG picture data recording apparatus, MPEG picture data recording method, MPEG picture data recording medium, MPEG picture data generating apparatus, MPEG picture data reproducing apparatus, and MPEG picture data reproducing method
JP2003169292A (ja) アフレコ装置、コンピュータプログラム、記録媒体、伝送方法及び再生装置
JP2003169295A (ja) Mpeg記録装置、記録媒体、再生装置及び伝送装置
JP3748234B2 (ja) Mpegデータ記録方法
JP2006222930A (ja) 情報記録装置、情報再生装置、情報記録プログラムおよび情報再生プログラム
JP2005198350A (ja) アフレコ信号再生方法
JP3748243B2 (ja) Mpegデータ記録装置
JP2004297829A (ja) Mpegデータ再生装置
JP3748240B2 (ja) Mpegデータ記録方法
JP3748242B2 (ja) Mpegデータ記録方法
JP3748241B2 (ja) Mpegデータ記録方法
JP3748244B2 (ja) Mpegデータ記録装置
JP3748245B2 (ja) Mpegデータ記録装置
JP2005198349A (ja) 記録媒体
JP2008005520A (ja) Mpegデータ記録再生装置
JP2007325304A (ja) Mpegデータ記録再生方法
JP2005245006A (ja) アフレコ信号再生装置
JP2004254347A (ja) Mpegデータ再生方法
JP2005260979A (ja) アフレコ信号伝送方法
JP2004289872A (ja) Mpegデータ再生装置
JP2005253093A (ja) アフレコ信号伝送装置
JP2005260978A (ja) アフレコ信号生成用プログラム
JP2005237021A (ja) アフレコ信号再生用プログラム
JP2004289871A (ja) Mpegデータ再生方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Re-publication after modification of scope of protection [patent]
FPAY Annual fee payment

Payment date: 20120806

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130802

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140801

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee