KR101127407B1 - 멀티미디어 분배 시스템 - Google Patents

멀티미디어 분배 시스템 Download PDF

Info

Publication number
KR101127407B1
KR101127407B1 KR1020067013801A KR20067013801A KR101127407B1 KR 101127407 B1 KR101127407 B1 KR 101127407B1 KR 1020067013801 A KR1020067013801 A KR 1020067013801A KR 20067013801 A KR20067013801 A KR 20067013801A KR 101127407 B1 KR101127407 B1 KR 101127407B1
Authority
KR
South Korea
Prior art keywords
delete delete
chunk
subtitle
video
information
Prior art date
Application number
KR1020067013801A
Other languages
English (en)
Other versions
KR20060122893A (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=34634434&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR101127407(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 디브이엑스, 엘엘씨. filed Critical 디브이엑스, 엘엘씨.
Publication of KR20060122893A publication Critical patent/KR20060122893A/ko
Application granted granted Critical
Publication of KR101127407B1 publication Critical patent/KR101127407B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/278Subtitling
    • 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/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00731Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/036Insert-editing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/485End-user interface for client configuration
    • H04N21/4856End-user interface for client configuration for language selection, e.g. for the menu or subtitles
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/265Mixing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/84Television signal recording using optical recording
    • H04N5/85Television signal recording using optical recording on discs or drums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • H04N9/8047Transformation 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 using transform coding
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00731Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
    • G11B20/00739Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction is associated with a specific geographical region

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Television Systems (AREA)

Abstract

본 발명은 멀티미디어 파일과 이러한 멀티미디어 파일을 생성, 분배 및 이용하는 방법에 관한 것이다. 본 발명에 따른 멀티미디어 파일은 이 파일의 컨텐츠에 관련된 "메타데이터"와 파일의 컨텐츠에 액세스하기 위한 메뉴 인터페이스를 생성하는데 이용될 수 있는, 다수의 비디오 트랙, 다수의 오디오 트랙, 다수의 서브타이틀 트랙, 및 데이터를 얻을 수 있다. 본 발명에 따른 멀티미디어 파일은 비디오 트랙, 오디오 트랙, 서브타이틀 트랙 및 파일 외부의 "메타데이터"를 포함한다. 본 발명의 멀티미디어 파일의 실시예에서는 복수 개의 부호화된 비디오 트랙을 포함한다.

Description

멀티미디어 분배 시스템{MULTIMEDIA DISTRIBUTION SYSTEM}
본 발명은 멀티미디어 파일의 부호화, 전송 및 복호화에 관한 것으로서, 더 구체적으로는, 단일의 오디오 트랙 및 단일의 비디오 트랙 외에 다른 트랙을 포함할 수 있는 멀티미디어 파일의 부호화, 전송 및 복호화에 관한 것이다.
인터넷이 발달함에 따라, 표준화된 생성, 분배 및 표시 가능한 멀티미디어 정보용의 파일의 형식에 대한 개발도 촉진되고 있다. 통상적으로, 단일의 멀티미디어 파일은 단일의 비디오 트랙과 단일의 오디오 트랙을 포함한다. 멀티미디어 정보가, 고용량의 DVD(Digital Video Disk) 등의 휴대 가능한 미디어에 기록되어 있는 경우, 많은 수의 비디오 트랙, 오디오 트랙 및 서브타이틀(subtitle) 트랙을 제공하기 위하여 다수의 파일(multiple file)이 이용될 수 있다. 대화형(interactive) 메뉴를 생성하는데 이용될 수 있는 정보를 포함하는 추가의 파일이 제공될 수 있다.
본 발명의 실시예는 멀티미디어 파일과, 이러한 멀티미디어 파일을 생성, 분배 및 복호화하기 위한 시스템을 포함한다. 본 발명의 특징에 의하면, 멀티미디어 파일은 복수 개의 부호화된 비디오 트랙(video track)을 포함한다. 본 발명의 다른 특징에 의하면, 멀티미디어 파일은 복수 개의 부호화된 오디오 트랙(audio track)을 포함한다. 본 발명의 또 다른 특징에서는, 멀티미디어 파일이 하나 이상의 서브타이틀 트랙을 포함한다. 또 다른 특징으로서, 멀티미디어 파일은 부호화된 "메타데이터"(meta data)를 포함한다. 또 다른 특징으로서, 멀티미디어 파일은 부호화된 메뉴 정보를 포함한다.
본 발명의 실시예에 따른 멀티미디어 파일은, 복수 개의 부호화된 비디오 트랙을 포함한다. 본 발명의 다른 실시예에서는, 멀티미디어 파일이 복수 개의 연결된 'RIFF'(Resource Interchange File Format) 청크를 포함하며, 각각의 부호화된 비디오 트랙은 개별의 'RIFF' 청크에 포함된다. 또한, 비디오는 사이코비주얼 인핸스먼트(psychovisual enhancement)를 이용하여 비디오를 부호화하고, 각각의 비디오 트랙은 적어도 하나의 오디오 트랙과 연관된다.
다른 실시예에서, 각각의 비디오 트랙은 'RIFF' 청크 내에서 일련의 'video' 청크로서 부호화되며, 각각의 비디오 트랙과 동반하는 오디오 트랙은, 연관된 비디오 트랙의 'video' 청크를 포함하는 'RIFF' 청크 내에서 인터리브된 일련의 'audio' 청크로서 부호화된다. 또한, 각각의 'video' 청크는 비디오 트랙으로부터 단일 프레임의 비디오를 생성하는데 이용될 수 있는 정보를 포함하며, 각각의 'audio' 청크는, 오디오 트랙의 'video' 청크를 이용하여 생성된 프레임에 동반하는 부분으로부터 오디오 정보를 포함한다. 또한, 'audio' 청크는 'RIFF' 청크 내에서 대응하는 'video' 청크의 앞에 인터리브된다.
본 발명의 실시예에 따라, 멀티미디어 파일을 부호화하는 시스템은 복수 개의 비디오 트랙을 부호화하고, 부호화된 비디오 트랙을 연결하며, 부호화 및 연결된 비디오 트랙을 단일의 파일에 기록하도록 구성된 프로세서를 포함한다. 다른 실시예에서, 프로세서는 각각의 비디오 트랙이 개별의 'RIFF' 청크 내에 포함되도록 비디오 트랙을 부호화하도록 구성되어 있다. 또, 프로세서는 사이코비주얼 인핸스먼트를 이용하여 부호화되도록 구성되어 있다. 또한, 각각의 비디오 트랙에는 각각 오디오 트랙이 하나 이상 관련되어 있다.
다른 실시예에서, 프로세서는, 각각의 비디오 트랙을 'RIFF' 청크 내에서 일련의 'video' 청크로서 부호화하며, 각각의 비디오 트랙에 동반하는 하나 이상의 오디오 트랙을, 관련된 비디오 트랙의 'video' 청크를 포함하는 'RIFF' 청크 내에서 인터리브된 일련의 '오디오' 청크로서 부호화하도록 구성되어 있다.
또 다른 실시예에서, 프로세서는, 각각의 'video' 청크가 비디오 트랙으로부터 단일 프레임의 비디오를 생성하는데 이용될 수 있도록 비디오 트랙을 부호화하며, 각각의 '오디오' 청크가 비디오 트랙으로부터 생성된 'video' 청크를 이용하여 생성된 프레임에 동반하는 오디오 트랙 부분으로부터 오디오 정보를 포함하도록, 비디오 트랙과 관련된 오디오 트랙을 부호화하도록 구성되어 있다. 또한, 프로세서는 'RIFF' 청크 내에서 대응하는 'video' 청크의 앞에 각각의 '오디오' 청크를 인터리브한다.
본 발명의 실시예에 따라, 복수 개의 부호화된 비디오 트랙을 포함하는 멀티미디어 파일을 복호화하는 시스템은, 멀티미디어 파일로부터 정보를 추출하도록 구성된 프로세서를 포함한다. 이 프로세서는 멀티미디어 파일 내에 포함된 부호화된 비디오 트랙의 수에 관련된 정보를 추출하도록 구성된다.
다른 실시예에서, 프로세서는 부호화된 비디오 트랙을 'RIFF' 청크 내에서 찾아내도록 구성된다. 또한, 부호화된 비디오 트랙 중, 부호화된 제1 비디오 트랙은 표준 4cc 코드(FourCC code)를 갖는 제1 'RIFF' 청크 내에 포함되며, 부호화된 제2 비디오 트랙은 전용의 4cc 코드를 갖는 제2 'RIFF' 청크 내에 포함되고, 전용의 4cc 코드는 표준 4cc 코드의 처음 2개의 문자를 자신의 마지막 2개의 문자로서 갖는다.
다른 실시예에서, 각각의 부호화된 비디오 트랙은 개별의 'RIFF' 청크 내에 포함된다.
다른 실시예에서, 복호화된 비디오 트랙은 멀티미디어 파일을 생성할 때 부호화되었던 원래의 비디오 트랙과 유사하고, 복호화된 비디오 트랙과 원래의 비디오 트랙 간의 편차 중 적어도 일부는, 비디오 트랙의 프레임 중 어두운 부분에 위치하며, 복호화된 비디오 트랙과 원래의 비디오 트랙 간의 편차 중 적어도 일부는, 비디오 트랙의 고속 동작 장면에 위치한다.
추가의 실시예에서, 각각의 비디오 트랙은 적어도 하나의 오디오 트랙과 연관되어 있다.
다른 실시예에서, 프로세서는, 'RIFF' 청크 내에서 일련의 'video' 청크를 복호화함으로써 비디오 트랙으로부터 비디오를 표시하며, 비디오 트랙의 'video' 청크를 포함하는 'RIFF' 청크 내에서 인터리브된 일련의 'audio' 청크를 복호화함으로써, 각각의 비디오 트랙에 동반하는 오디오 트랙으로부터 오디오를 생성하도록 구성된다.
또 다른 실시예에서, 프로세서는, 비디오 트랙의 단일 프레임을 생성하기 위하여 각각의 'video' 청크로부터 추출된 정보를 이용하며, 'video' 청크를 이용하여 생성된 프레임과 동반하는 오디오 트랙의 일부를 생성하기 위하여 각각의 'audio' 청크로부터 추출된 정보를 이용하도록 구성된다. 또한, 프로세서는 'RIFF' 청크 내에 연관되어 있는 'video' 청크의 앞에서 'audio' 청크를 찾아내도록 구성된다.
본 발명의 실시예에 따른 멀티미디어 파일은, 일련의 부호화된 비디오 프레임; 및 부호화된 비디오 프레임 사이에서 인터리브한 부호화된 오디오를 포함하며, 부호화된 오디오는 2개 이상의 오디오 정보 트랙을 포함한다.
또 다른 실시예에서, 오디오 정보 트랙의 적어도 하나는 복수 개의 오디오 채널을 포함한다.
다른 실시예에서, 멀티미디어 파일에 포함된 오디오 파일의 수를 식별하는 헤더 정보를 추가로 포함하고, 오디오 정보 트랙의 적어도 하나에 관한 기술 정보(description information)를 포함하는 헤더 정보를 추가로 포함한다.
또 다른 실시예에서, 각각의 부호화된 비디오 프레임은 부호화된 오디오 정보에 의해 처리되며, 비디오 프레임의 앞에 배치되는 부호화된 오디오 정보는, 부호화된 비디오 프레임과 동반하는 각각의 오디오 트랙의 일부에 대한 오디오 정보를 포함한다.
다른 실시예에서, 비디오 정보는 멀티미디어 파일 내에 청크로서 저장된다. 또 다른 실시예에서, 비디오 정보의 각각의 청크는 단일의 비디오 프레임을 포함한다. 또, 오디오 정보는 상기 멀티미디어 파일 내에 청크로서 저장되며, 2개의 개별적인 오디오 트랙으로부터의 오디오 정보는 오디오 정보의 단일의 청크 내에 포함되지 않는다.
또 다른 실시예에서, 비디오 청크는 상기 각각의 오디오 트랙으로부터 적어도 하나의 오디오 청크에 의해 분리된다. 또, 비디오 청크를 분리하는 오디오 청크는, 오디오 청크에 따르는 비디오 청크 내에 포함된 비디오 정보와 동반하는 오디오 청크의 일부에 대한 오디오 정보를 포함한다.
본 발명의 실시예에 따라, 멀티미디어 파일을 부호화하는 시스템은, 비디오 트랙을 부호화하며, 복수 개의 오디오 트랙을 부호화하고, 비디오 트랙으로부터의 정보를, 복수 개의 오디오 트랙으로부터의 정보와 인터리브하며, 인터리브된 비디오 및 오디오 정보를 단일의 파일에 기록하도록 구성된 프로세서를 구비한다.
다른 실시예에서, 오디오 트랙의 적어도 하나는 복수 개의 오디오 채널을 포함한다.
또 다른 실시예에서, 프로세서는, 부호화된 오디오 트랙의 수를 식별하는 헤더 정보를 부호화하며, 헤더 정보를 단일의 파일에 기록하도록 구성된다.
또 다른 실시예에서, 프로세서는, 부호화된 오디오 트랙의 적어도 하나에 관한 기술 정보를 식별하는 헤더 정보를 부호화하며, 헤더 정보를 단일의 파일에 기록하도록 구성된다.
다른 실시예에서, 프로세서는 비디오 트랙을 비디오 정보의 청크로서 부호화한다. 또한, 프로세서는 각각의 오디오 트랙을 오디오 정보의 일련의 청크로서 부호화한다.
다른 실시예에서, 오디오 정보의 각각의 청크는 단일의 오디오 트랙으로부터 오디오 정보를 포함한다. 또한, 프로세서는 오디오 정보의 청크를 비디오 정보의 청크 사이에 인터리브하도록 구성된다.
다른 실시예에서, 프로세서는, 'video' 청크 내의 비디오 정보와 동반하는 각각의 오디오 트랙의 일부를 'audio' 청크로 부호화하도록 구성되며, 'video' 청크를 'audio' 청크와 인터리브하여, 'video' 청크에 포함된 비디오 정보와 동반하는 각각의 오디오 트랙으로부터 오디오 정보를 포함하는 'audio' 청크가 각각의 'video' 청크보다 앞서 배치되도록 구성된다. 또한, 프로세서는, 단일의 비디오 프레임이 각각의 비디오 청크 내에 포함되도록, 비디오 트랙을 부호화한다.
다른 실시예에서, 프로세서는 범용의 프로세서이다.
또 다른 실시예에서, 프로세서는 전용 회로이다.
본 발명의 실시예에 따라, 복수 개의 오디오 트랙을 포함하는 멀티미디어 파일을 복호화하는 시스템은, 멀티미디어 파일로부터 정보를 추출하도록 구성된 프로세서를 포함하며, 프로세서는 멀티미디어 파일 내에 포함된 오디오 트랙의 수에 관한 정보를 추출하도록 구성된다.
다른 실시예에서, 프로세서는 복수 개의 오디오 트랙으로부터 단일의 오디오 트랙을 선택하도록 구성되며, 프로세서는 선택된 오디오 트랙으로부터 오디오 정보를 복호화하도록 구성된다.
다른 실시예에서, 오디오 트랙의 적어도 하나는 복수 개의 오디오 채널을 포함한다.
또 다른 실시예에서, 프로세서는 오디오 트랙의 적어도 하나에 관한 기술 정보를 포함하는 멀티미디어 파일에 있는 헤더로부터 정보를 추출하도록 구성된다.
본 발명의 실시예에 따라, 멀티미디어 정보를 통신하기 위한 시스템은, 네트워크; 멀티미디어 파일을 포함하며, 서버를 통해 네트워크에 접속되는 기억 장치; 및 네트워크에 접속되는 클라이언트를 포함하며, 클라이언트는 서버로부터 멀티미디어 파일의 전송을 요청할 수 있고, 멀티미디어 파일은 적어도 하나의 비디오 트랙과 비디오 트랙과 동반하는 복수 개의 오디오 트랙을 포함한다.
본 발명에 따른 멀티미디어 파일은, 일련의 부호화된 비디오 프레임; 및 부호화된 비디오 프레임 사이에 인터리브된 적어도 하나의 부호화된 서브타이틀 트랙을 포함한다.
다른 실시예에서, 적어도 하나의 부호화된 서브타이틀 트랙은 복수 개의 부호화된 서브타이틀 트랙을 포함한다.
또 다른 실시예에서, 멀티미디어 파일에 포함된 부호화된 서브타이틀 트랙의 수를 식별하는 헤더 정보를 추가로 포함한다.
다른 실시예에서, 부호화된 서브타이틀 트랙의 적어도 하나에 대한 기술 정보를 갖는 헤더 정보를 추가로 포함한다.
다른 실시예에서, 각각의 서브타이틀 트랙은 일련의 비트맵을 포함한다.
또 다른 실시예에서, 각각의 서브타이틀 트랙은 일련의 압축된 비트맵을 포함한다. 또한, 각각의 비트맵은 런 랭스 부호화(run length encoding)를 이용하여 압축된다.
다른 실시예에서, 일련의 부호화된 비디오 프레임은 일련의 비디오 청크로서 부호화되며, 각각의 부호화된 서브타이틀 트랙은 일련의 서브타이틀 청크로서 부호화되고, 각각의 서브타이틀 청크는 디스플레이 상에 텍스트로서 표현될 수 있는 정보를 포함한다.
다른 실시예에서, 각각의 서브타이틀 청크는 단일의 서브타이틀에 관한 정보를 포함한다.
또 다른 실시예에서, 각각의 서브 타이틀 청크는 비디오 시퀀스의 서브타이틀이 중첩되어야 하는 부분에 관한 정보를 포함한다. 또한, 각각의 서브타이틀 청크는 디스플레이의 서브타이틀이 위치하여야 하는 부분에 관한 정보를 포함한다.
다른 실시예에서, 각각의 서브타이틀 청크는 상기 서브타이틀의 컬러에 관한 정보를 포함한다. 또한, 컬러에 관한 정보는 컬러 팔레트를 포함한다. 또한, 서브타이틀 청크는, 제1 컬러 팔레트에 관련된 정보를 포함하는 제1 서브타이틀 청크와, 제1 컬러 팔레트에 관련된 정보를 대체하는 제2 컬러 팔레트에 관한 정보를 포함하는 제2 서브타이틀 청크를 구비한다.
본 발명의 실시예에 따라, 멀티미디어 파일을 부호화하는 시스템은, 비디오 트랙을 부호화며, 적어도 하나의 서브타이틀 트랙을 부호화하고, 비디오 트랙으로부터의 정보를 적어도 하나의 서브타이틀 트랙으로부터의 정보와 인터리브하며, 인터리브된 비디오 및 서브타이틀 정보를 단일의 파일에 기록하도록 구성된 프로세서를 포함한다.
다른 실시예에서, 적어도 하나의 서브타이틀 트랙은 복수 개의 서브타이틀 트랙을 포함한다.
또 다른 실시예에서, 프로세서는, 멀티미디어 파일에 포함된 서브타이틀 트랙의 수를 식별하는 헤더 정보를 부호화하여 단일의 파일에 기록하도록 구성되어 있다.
다른 실시예에서, 프로세서는, 적어도 하나의 서브타이틀 트랙에 관련된 기술 정보를 부호화하여 단일의 파일에 기록하도록 구성되어 있다.
다른 실시예에서, 비디오 트랙은 비디오 청크로서 부호화되며, 적어도 하나의 서브타이틀 트랙의 각각은 서브타이틀 청크로서 부호화된다. 또한, 서브타이틀 청크의 각각은 비디오 트랙의 일부와 동반하는 단일의 서브타이틀을 포함하며, 인터리버는 서브타이틀 청크 내의 서브타이틀과 동반하는 비디오 트랙의 일부를 포함하는 비디오 청크의 앞에 각각의 서브타이틀 청크를 인터리브하도록 구성된다.
다른 실시예에서, 프로세서는 서브타이틀을 비트맵으로서 부호화하여 서브타이틀 청크를 생성하도록 구성된다.
다른 실시예에서, 서브타이틀은 압축된 비트맵으로서 부호화된다.
또 다른 실시예에서, 비트맵은 런 랭스 부호화를 이용하여 압축된다. 또한, 프로세서는 각각의 서브타이틀 청크에, 서브타이틀이 중첩되어야 하는 디스플레이의 부분에 관련된 정보를 포함한다.
또 다른 실시예에서, 프로세서는, 각각의 서브타이틀 청크에, 서브타이틀이 위치되어야 하는 디스플레이의 부분에 관련된 정보를 포함한다. 프로세서는, 각각의 서브타이틀 청크에, 서브타이틀의 컬러에 관한 정보를 포함한다.
또 다른 실시예에서, 컬러 관련 정보는 컬러 팔레트를 포함한다. 또한, 서브타이틀 청크는 제1 컬러 팔레트에 관한 정보를 포함하는 제1 서브타이틀 청크와, 제1 컬러 팔레트에 관련된 정보를 대체하는 제2 컬러 팔레트에 관한 정보를 포함하는 제2 서브타이틀 청크를 구비한다.
본 발명의 실시예에 따라, 멀티미디어 파일을 복호화하는 시스템은, 상기 멀티미디어 파일로부터 정보를 추출하도록 구성된 프로세서를 포함하며, 프로세서는 적어도 하나의 서브타이틀 트랙이 존재하는지 여부를 판정하도록 멀티미디어 파일을 조사하도록 구성된다.
다른 실시예에서, 적어도 하나의 서브타이틀 트랙은, 복수 개의 서브타이틀 트랙과, 멀티미디어 파일 내의 서브타이틀 트랙의 수를 판정하도록 구성된 프로세서를 구비한다.
다른 실시예에서, 프로세서는 멀티미디어 파일로부터 서브타이틀 트랙의 수를 식별하는 헤더 정보를 추출하도록 구성된다.
또 다른 실시예에서, 프로세서는 멀티미디어 파일로부터 적어도 하나의 서브타이틀 트랙에 관한 기술 정보를 추출하도록 구성된다.
다른 실시예에서, 멀티미디어 파일은 비디오 청크로서 부호화된 적어도 하나의 비디오 트랙을 포함하며, 멀티미디어 파일은 서브타이틀 청크로서 부호화된 적어도 하나의 서브타이틀 트랙을 포함한다. 또한, 각각의 서브타이틀 청크는 단일의 서브타이틀에 관련된 정보를 포함한다.
또 다른 실시예에서, 각각의 서브타이틀은 서브타이틀 청크에 비트맵으로 부호화되며, 프로세서는 비디오 트랙을 복호화하도록 구성되고, 프로세서는 비디오 시퀀스의 일부분의 위에 비트맵을 중첩시킴으로써 비디오 프레임을 표시하도록 구성된다.
다른 실시예에서, 서브타이틀은 압축된 비트맵으로서 부호화되며, 프로세서는 비트맵을 압축해제하도록 구성된다. 또한, 프로세서는 런 랭스 부호화(run length encoding)된 비트맵을 압축해제하도록 구성된다.
다른 실시예에서, 각각의 서브타이틀 청크는 비디오 트랙의 서브타이틀이 중첩되어야 하는 부분에 관한 정보를 포함하며, 프로세서는 서브타이틀 청크 내의 정보에 의해 표시되는 각각의 비디오 프레임 상에 서브타이틀의 비트맵을 중첩시킴으로써 표시를 위한 비디오 프레임의 시퀀스를 생성하도록 구성된다.
또 다른 실시예에서, 각각의 서브타이틀 청크는, 서브타이틀이 위치하여야 하는 프레임 내의 위치에 관련된 정보를 포함하며, 프로세서는 서브타이틀 청크 내의 정보에 의해 표시된 각각의 비디오 프레임 내의 위치에 서브타이틀을 중첩시키도록 구성된다.
다른 실시예에서, 각각의 서브타이틀 청크는 서브타이틀의 컬러에 관련된 정보를 포함하며, 프로세서는 서브타이틀 청크 내의 컬러 정보에 의해 표시되는 하나 이상의 컬러에 서브타이틀을 중첩시키도록 구성된다.
또 다른 실시예에서, 서브타이틀 청크 내의 컬러 정보는 컬러 팔레트를 포함하며, 프로세서는 서브타이틀의 비트맵 내에서 이용되는 컬러 정보를 획득하기 위하여 컬러 팔레트를 이용하여 서브타이틀을 중첩시키도록 구성된다.
다른 실시예에서, 서브타이틀 청크는 제1 컬러 팔레트에 관한 정보를 포함하는 제1 서브타이틀 청크와, 제2 컬러 팔레트에 관한 정보를 포함하는 제2 서브타이틀 청크를 구비하며, 프로세서는 제1 청크가 처리된 이후 서브타이틀의 비트맵에 이용된 컬러에 관한 정보를 획득하기 위하여 제1 컬러 팔레트를 이용하여 서브타이틀을 중첩시키도록 구성되며, 제2 청크가 처리된 이후 서브타이틀의 비트맵에 이용된 컬러에 관한 정보를 획득하기 위하여 제2 컬러 팔레트를 이용하여 서브타이틀을 중첩시키도록 구성된다.
본 발명의 실시예에 따라, 멀티미디어 정보를 통신하기 위한 시스템은, 네트워크; 멀티미디어 파일을 포함하며, 서버를 통해 네트워크에 접속되는 기억 장치; 및 네트워크에 접속되는 클라이언트를 포함하며, 클라이언트는 서버로부터 멀티미디어 파일의 전송을 요청할 수 있고, 멀티미디어 파일은 적어도 하나의 비디오 트랙과 비디오 트랙과 동반하는 적어도 하나의 서브타이틀 트랙을 포함한다.
본 발명의 실시예에 따른 멀티미디어 파일은, 일련의 부호화된 비디오 프레임; 및 부호화된 메뉴 정보를 포함한다. 또한, 부호화된 메뉴 정보는 청크로서 저장된다.
다른 실시예에서, 메뉴 정보의 적어도 2개의 개별적인 'menu'(메뉴) 청크를 추가로 구비한다. 또한, 적어도 2개의 개별적인 'menu' 청크는, 적어도 2개의 개별적인 'RIFF' 청크에 포함된다.
다른 실시예에서, 'menu' 청크를 갖는 제1 'RIFF' 청크는 표준 4cc 코드를 포함하며, 'menu' 청크를 갖는 제2 'RIFF' 청크는 전용의 4cc 코드를 포함하는데, 표준 4cc 코드의 첫 번째 2개의 문자는 전용의 4cc 코드의 마지막 2개의 문자처럼 나타난다.
또 다른 실시예에서, 적어도 2개의 개별적인 'menu' 청크는 단일의 'RIFF' 청크에 포함된다.
다른 실시예에서, 'menu' 청크는 일련의 메뉴를 기술하는 청크와, 일련의 메뉴와 관련된 미디어를 포함하는 'MRIF' 청크를 포함한다. 또한, 'MRIF' 청크는 비디오 트랙, 오디오 트랙 및 오버레이 트랙을 구비하는 미디어 정보를 포함한다.
또 다른 실시예에서, 일련의 메뉴를 기술하는 청크는, 전체 메뉴 시스템을 기술하는 청크; 메뉴를 언어로 그룹화하는 적어도 하나의 청크; 개별적인 메뉴 디스플레이와 이에 동반하는 배경 오디오를 기술하는 적어도 하나의 청크; 메뉴 상의 버튼을 기술하는 적어도 하나의 청크; 스크린 상의 버튼의 위치를 기술하는 적어도 하나의 청크; 및 버튼과 관련된 다양한 동작을 기술하는 적어도 하나의 청크를 포함한다.
또 다른 실시예에서, 제2 파일에 대한 링크을 추가로 포함하며, 부호화된 메뉴 정보가 상기 제2 파일 내에 포함된다.
본 발명의 실시예에 따라, 멀티미디어 파일을 부호화하기 위한 시스템은, 메뉴 정보를 부호화하도록 구성된 프로세서를 포함하며, 프로세서는 부호화된 비디오 트랙 및 부호화된 메뉴 정보를 갖는 멀티미디어 파일을 생성하도록 구성된다.
다른 실시예에서, 프로세서는 메뉴의 객체 모델(object model)을 생성하며, 객체 모델을 구성 파일(configuration file)로 변환하고, 구성 파일을 청크로 파싱(parsing) 처리하며, 미디어 정보를 구비하는 AVI(Audio Video Interleave) 파일을 생성하고, AVI 파일 내의 미디어를 'MRIF' 청크로 인터리브하며, 파싱 처리된 청크를 'MRIF' 청크에 연결하여 'menu' 청크를 작성하도록 구성된다.
다른 실시예에서, 프로세서는 객체 모델을 이용하여 제2의 더 작은 'menu' 청크를 생성하도록 구성된다. 또한, 프로세서는 제2 메뉴를 부호화하도록 구성된다.
또 다른 실시예에서, 프로세서는 부호화된 제1 메뉴를 제1 'RIFF' 청크에 삽입하고, 부호화된 제2 메뉴를 제2 'RIFF' 청크에 삽입한다. 또한, 프로세서는 단일의 'RIFF' 청크에 부호화된 제1 메뉴 및 제2 메뉴를 포함한다. 또한, 프로세서는 제2 파일 내의 부호화된 메뉴에 대한 참조를 멀티미디어 파일에 삽입한다.
본 발명의 실시예에 따라, 멀티미디어 파일을 복호화하기 위한 시스템은, 멀티미디어 파일로부터 정보를 추출하도록 구성된 프로세서를 포함하며, 프로세서는 부호화된 메뉴 정보가 포함되어 있는지 여부를 판정하기 위해 멀티미디어 파일을 조사하도록 구성된다. 또한, 프로세서는 'RIFF' 청크 내의 'menu' 청크로부터 메뉴 정보를 추출하도록 구성된다. 또한, 프로세서는 'menu' 청크 내에 저장된 비디오 정보를 이용하여 메뉴 디스플레이를 구성한다.
다른 실시예에서, 프로세서는 'menu' 청크에 저장된 오디오 정보를 이용하여 메뉴 디스플레이와 동반하는 배경 오디오를 생성하도록 구성된다.
다른 실시예에서, 프로세서는 'menu' 청크로부터의 비디오 정보의 위에 'menu' 청크를 오버레이 처리함으로써 메뉴 디스플레이를 생성하도록 구성된다.
본 발명의 실시예에 따른 멀티미디어 정보를 통신하기 위한 시스템은, 네트워크; 멀티미디어 파일을 포함하며, 서버를 통해 네트워크에 접속되는 기억 장치; 및 네트워크에 접속되는 클라이언트를 포함하며, 클라이언트는 서버로부터 멀티미디어 파일의 전송을 요청할 수 있고, 멀티미디어 파일은 부호화된 메뉴 정보를 포함한다.
멀티미디어 파일은 일련의 부호화된 비디오 프레임; 및 멀티미디어 파일에 관한 부호화된 메타데이터를 포함하며, 부호화된 메타데이터는 주어부, 술어부, 객체부 및 출처부를 구비하는 적어도 하나의 문을 포함하여 이루어진다.
다른 실시예에서, 주어부는 메타데이터에 의해 기술되는 파일, 아이템, 개인 또는 조직을 식별하는 정보를 포함한다.
또 다른 실시예에서, 술어부는 주어부의 특성을 나타내는 정보를 포함한다. 또한, 객체부는 술어부에 의해 식별된 주어부의 특성을 기술하는 정보를 포함한다. 출처부는 문의 소스에 관련된 정보를 포함한다.
또 다른 실시예에서, 주어부는 타입과 값을 구비하는 청크에 해당하며, 값은 정보를 포함하고, 타입은 청크가 리소스인지 또는 익명 노드인지를 나타낸다.
다른 실시예에서, 술어부는 타입 및 값을 구비하는 청크에 해당하며, 값은 정보를 포함하고, 타입은 값 정보가 서술형 URI(Universal Resource Identifier)인지 또는 정규의 리스트 엔트리인지 여부를 나타낸다.
다른 실시예에서, 객체부는 타입, 언어, 데이터 타입 및 값을 구비하는 청크에 해당하며, 값은 정보를 포함하고, 타입은 값 정보가 UTF-8(8 bit UCS Transformation Format) 문자인지, 문자 정수인지 또는 문자 XML 데이터인지 여부를 나타내며, 데이터 타입은 값 정보의 타입을 나타내고, 언어는 특정 언어를 식별하는 정보를 포함한다.
또 다른 실시예에서, 출처부는 타입 및 값을 구비하는 청크에 해당하며, 값은 정보를 포함하고, 타입은 값 정보가 문의 출처라는 것을 나타낸다.
다른 실시예에서, 부호화된 데이터의 적어도 일부는 이진 데이터로서 표현된다.
또한, 부호화된 데이터의 적어도 일부는 64 비트의 ASCI 데이터로서 표현된다.
다른 실시예에서, 부호화된 데이터의 적어도 제1 부분은 이진 데이터로서 표현되며, 부호화된 데이터의 적어도 제2 부분은 다른 형식으로 표현된 데이터를 포함하는 추가의 청크로서 표현된다.
다른 실시예에서, 추가의 청크는 각각 단일 부분으로 된 메타데이터를 포함한다.
본 발명의 실시예에 따라 멀티미디어 파일을 부호화하기 위한 시스템은, 비디오 트랙을 부호화하도록 구성된 프로세서를 포함하며, 프로세서는 멀티미디어 파일에 관련된 메타데이터를 부호화하도록 구성되어 있고, 부호화된 메타데이터는 주어부, 술어부, 객체부, 및 출처부를 구비하는 적어도 하나의 문을 포함하여 이루어진다. 또한, 주어부는 메타데이터에 의해 기술되는 파일, 아이템, 개인 또는 조직을 식별하는 정보를 포함한다. 또한, 술어부는 주어부의 특성을 나타내는 정보를 포함한다. 객체부는 술어부에 의해 식별된 주어부의 특성을 기술하는 정보를 포함한다. 출처부는 문의 소스에 관련된 정보를 포함한다.
다른 실시예에서, 프로세서는 주어부를 타입 및 값을 포함하는 청크로서 부호화하도록 구성되어 있으며, 값은 정보를 포함하고, 타입은 청크가 리소스인지 또는 익명 노드인지 여부를 나타낸다.
다른 실시예에서, 프로세서는, 타입 및 값을 구비하는 청크로서 술어부를 부호화하도록 구성되어 있으며, 값은 정보를 포함하고, 타입은 값 정보가 서술형 URI인지 또는 정규의 리스트 엔트리인 여부를 나타낸다.
또 다른 실시예에서, 프로세서는 객체부를, 타입, 언어, 데이터 타입 및 값을 구비하는 청크에서 부호화하도록 구성되어 있으며, 값은 정보를 포함하고, 타입은 값 정보가 UTF-8 문자인지, 문자 정수인지 또는 문자 XML 데이터인지 여부를 나타내며, 데이터 타입은 상기 값 정보의 타입을 나타내고, 언어는 특정 언어를 식별하는 정보를 포함한다.
다른 실시예에서, 프로세서는 출처부를 타입 및 값을 포함하는 청크로서 부호화하도록 구성되어 있으며, 값은 정보를 포함하고, 타입은 값 정보가 문의 출처부라는 것을 나타낸다.
다른 실시예에서, 프로세서는 멀티미디어 파일에 관련된 메타데이터의 적어도 일부를 이진 데이터로서 부호화하도록 구성된다.
다른 실시예에서, 프로세서는 멀티미디어 파일에 관련된 메타데이터의 적어도 일부를 64 비트의 ASCI 데이터로서 부호화하도록 구성된다. 또한, 프로세서는 멀티미디어 파일에 관련된 메타데이터의 적어도 제1 부분을 이진 데이터로서 부호화하고, 멀티미디어 파일에 관련된 메타데이터의 적어도 제2 부분을 다른 형식으로 표현된 데이터를 포함하는 추가의 청크로서 부호화하도록 구성된다.
다른 실시예에서, 프로세서는 추가의 청크를 단일 부분으로 이루어진 메타데이터로 부호화하도록 구성된다.
본 발명의 실시예에 따라, 멀티미디어 파일을 복호화하기 위한 시스템은, 멀티미디어 파일로부터 정보를 추출하도록 구성된 프로세서를 포함하며, 프로세서는 멀티미디어 파일에 관련된 메타데이터 정보를 추출하도록 구성되어 있으며, 메타데이터 정보는 주어부, 술어부, 객체부 및 출처부를 구비하는 적어도 하나의 문을 포함한다.
다른 실시예에서, 프로세서는 메타데이터에 의해 기술되는 파일, 아이템, 개인 또는 조직을 식별하는 정보를 주어부로부터 추출하도록 구성된다. 또한, 프로세서는 술어부로부터 주어부의 특성을 나타내는 정보를 추출하도록 구성된다. 또한, 프로세서는 술어부에 의해 식별된 주어부의 특성을 기술하는 정보를 객체부로부터 추출하도록 구성된다.
다른 실시예에서, 프로세서는 문의 소스에 관련된 정보를 출처부로부터 추출하도록 구성된다.
또 다른 실시예에서, 주어부는 타입 및 값을 포함하는 청크에 해당하며, 프로세서는 타입을 조사함으로써 청크가 주어부 정보를 포함하는 것을 식별하도록 구성되어 있고, 프로세서는 값으로부터 정보를 추출하도록 구성된다.
다른 실시예에서, 술어부는 타입 및 값을 포함하는 청크에 해당하며, 프로세서는 타입을 조사함으로써 청크가 술어부 정보를 포함하는 것을 식별하도록 구성되어 있고, 프로세서는 값으로부터 정보를 추출하도록 구성된다.
다른 실시예에서, 객체부는 타입, 언어, 데이터 타입 및 값을 포함하는 청크에 해당하며, 프로세서는 타입을 조사함으로써 청크가 객체 정보를 포함하는 것을 식별하도록 구성되어 있고, 프로세서는 값에 포함된 정보의 데이터 타입을 판정하기 위해 데이터 타입을 조사하도록 구성되어 있으며, 프로세서는 데이터 타입에 의해 표시되는 타입의 정보를 값으로부터 추출하도록 구성되어 있고, 프로세서는 특정의 언어를 식별하는 정보를 언어로부터 추출하도록 구성되어 있다.
또 다른 실시예에서, 출처부는 타입 및 값을 포함하는 청크에 해당하며, 프로세서는 타입을 조사함으로써 청크가 출처부 정보를 포함하는 것을 식별하도록 구성되어 있고, 프로세서는 값으로부터 정보를 추출하도록 구성되어 있다.
다른 실시예에서, 프로세서는 메타데이터 문으로부터 정보를 추출하고, 정보의 적어도 일부를 표시하도록 구성된다.
다른 실시예에서, 프로세서는 메타데이터를 이용하여 메모리 내에 방향성 라벨부착 그래프(DLG: Directed-Labeled Graphs)를 나타내는 데이터 구조를 구성한다.
다른 실시예에서, 프로세서는, 복수 개의 문에 대하여 주어부, 술어부, 객체부 및 출처부 중 적어도 하나를 조사함으로써, 메타데이터를 통해 정보를 검색하도록 구성된다.
다른 실시예에서, 프로세서는 검색의 결과를 그래픽 사용자 인터페이스의 일부로서 표시하도록 구성된다. 또한, 프로세서는 외부 장치로부터의 요청에 따라 검색을 수행하도록 구성된다.
또 다른 실시예에서, 멀티미디어 파일과 관련된 메타데이터 정보의 적어도 일부는 이진 데이터로서 표현된다.
다른 실시예에서, 멀티미디어 파일과 관련된 메타데이터 정보의 적어도 일부는 64 비트의 ASCI 데이터로서 표현된다.
또 다른 실시예에서, 멀티미디어 파일에 관련된 메타데이터 정보의 적어도 제1 부분은 이진 데이터로서 표현되며, 멀티미디어 파일에 관련된 메타데이터 정보의 적어도 제2 부분은 다른 형식으로 표현된 데이터를 포함하는 추가의 청크로서 표현된다. 또한, 추가의 청크는 단일 부분으로 된 메타데이터를 포함한다.
본 발명의 실시예에 따라, 멀티미디어 정보를 통신하기 위한 시스템은, 네트워크; 멀티미디어 파일을 포함하며, 서버를 통해 네트워크에 접속되는 기억 장치; 및 네트워크에 접속되는 클라이언트를 포함하며, 클라이언트는 서버로부터 멀티미디어 파일의 전송을 요청할 수 있고, 멀티미디어 파일은 멀티미디어 파일에 관련된 메타데이터를 포함하며, 메타데이터는 주어부, 술어부, 객체부 및 출처부를 구비하는 적어도 하나의 문을 포함한다.
본 발명의 실시예에 따른 멀티미디어 파일은, 적어도 하나의 부호화된 비디오 트랙; 적어도 하나의 부호화된 오디오 트랙; 복수 개의 부호화된 텍스트 문자열을 포함하며, 부호화된 텍스트 문자열이 적어도 하나의 비디오 트랙과 적어도 하나의 오디오 트랙의 특성을 기술한다.
다른 실시예에서, 복수 개의 텍스트 문자열은, 비디오 트랙 또는 오디오 트랙의 동일한 특성을, 상이한 언어를 이용하여 기술한다.
다른 실시예에서, 적어도 하나의 부호화된 서브타이틀 트랙을 추가로 포함하며, 복수 개의 부호화된 텍스트 문자열은 서브타이틀 트랙의 특성을 기술하는 문자열을 포함한다.
본 발명의 실시예에 따라, 멀티미디어 파일을 작성하기 위한 시스템은, 적어도 하나의 비디오 트랙을 부호화하고, 적어도 하나의 오디오 트랙을 부호화하며, 부호화된 오디오 트랙의 적어도 하나를 상기 비디오 트랙과 인터리브하고, 적어도 하나의 비디오 트랙과 적어도 하나의 오디오 트랙의 다수의 특성의 각각을 복수 개의 언어로 기술하는 텍스트 문자열을 삽입하도록 구성된 프로세서를 포함한다.
본 발명의 실시예에 따라, 부호화된 오디오, 비디오 및 텍스트 문자열을 포함하는 멀티미디어 파일을 표시하기 위한 시스템은, 부호화된 텍스트 문자열을 멀티미디어 파일로부터 추출하며, 텍스트 문자열을 이용하여 풀 다운(pull down) 메뉴 디스플레이를 생성하도록 구성된 프로세서를 포함한다.
도 1은 부호화, 분배 및 복호화하기 위한 본 발명의 실시예에 따른 시스템을 나타내는 도면.
도 2a는 본 발명의 실시에에 따른 멀티미디어 파일의 구조를 나타내는 도면.
도 2aa는 본 발명의 다른 실시예에 따른 멀티미디어 파일의 구조를 나타내는 도면.
도 2b는 본 발명의 실시예에 따른 'hdrl' 리스트 청크의 개념도.
도 2c는 본 발명의 실시예에 따른 'strl' 청크의 개념도.
도 2d는 본 발명의 실시예에 따른 멀티미디어 파일의 'DXDT' 청크를 저장하기 위해 할당된 메모리의 개념도.
도 2da는 본 발명의 실시예에 따른 멀티미디어 파일의 'DXDT' 청크에 포함될 수 있는 '메타데이터'의 개념도.
도 2e는 본 발명의 실시예에 따른 "DMNU' 청크의 개념도.
도 2f는 본 발명의 실시예에 따른 'WowMenuManager' 청크 내에 포함되는 메뉴 청크의 개념도.
도 2g는 본 발명의 실시예에 따른 'WowMenuManager' 청크 내에 포함되는 메뉴 청크의 개념도.
도 2ga는 'DMNU' 청크 내에 포함되는 다양한 청크 사이의 관계를 나타내는 개념도.
도 2h는 본 발명의 실시예에 따른 멀티미디어 파일의 'movi' 리스트 청크의 개념도.
도 2i는 DRM을 포함하는 본 발명의 실시예에 따른 멀티미디어 파일의 'movi' 리스트 청크의 개념도.
도 2j는 본 발명의 실시예에 따른 'DRM' 청크의 개념도.
도 3a는 본 발명의 실시예에 따른 멀티미디어 파을 생성하기 위한 시스템의 블록도.
도 3b는 본 발명의 실시예에 따른 'DXDT' 청크를 생성하기 위한 시스템의 블록도.
도 3c는 본 발명의 실시예에 따른 'DMNU' 청크를 생성하기 위한 시스템의 블록도.
도 3d는 본 발명의 실시예에 따른 미디어 모델의 개념도.
도 3da는 본 발명의 실시예에 따라 소형 메뉴를 자동으로 생성하는데 이용될 수 있는 미디어 모델로부터의 객체(object)의 개념도.
도 3e는 본 발명의 실시예에 따라 오디오를 리청크(re-chunk)하는데 이용될 수 있는 처리과정을 나타내는 흐름도.
도 3f는 본 발명의 실시예에 따른 비디오 인코더의 블록도.
도 3g는 본 발명의 실시예에 따라 I 프레임 상에서의 평활한 사이코비주얼 인핸스먼트를 수행하는 방법을 나타내는 흐름도.
도 3h는 본 발명의 실시예에 따라 매크로블록 SAD 사이코비주얼 인핸스먼트를 수행하기 위한 처리과정을 나타내는 흐름도.
도 3i는 본 발명의 실시예에 따라 단일 패스 레이트 제어를 위한 처리과정을 나타내는 흐름도.
도 3j는 본 발명의 실시예에 따라 N번째 패스 VBV 레이트 제어를 수행하기 위한 처리과정을 나타내는 흐름도.
도 4a는 본 발명의 실시예에 따라 멀티미디어 파일로부터 요청된 멀티미디어 정보를 위치시키고 멀티미디어 정보를 표시하기 위한 처리과정을 나타내는 흐름도.
도 4b는 본 발명의 실시예에 따른 디코더의 블록도.
도 4c는 본 발명의 실시예에 따라 표시한 메뉴의 예를 나타내는 도면.
도 4d는 본 발명의 실시예에 따라 도 4c에 나타낸 디스플레이를 생성하는데 이용되는 정보 소스를 나타내는 개념도.
도면을 참조하여, 멀티미디어 파일을 복호화, 전송 및 복호화할 수 있는 본 발명의 실시예에 대하여 설명한다. 본 발명의 실시예에 따른 멀티미디어 파일은, 다중의 비디오 트랙, 다중의 오디오 트랙, 다중의 서브타이틀 트랙, 파일의 컨텐츠에 접근하기 위한 메뉴 인터페이스를 생성하는데 이용될 수 있는 데이터, 및 파일의 컨텐츠에 관련된 "메타데이터"(meta data)를 포함할 수 있다. 본 발명의 몇몇 실시예에 따른 멀티미디어 파일은, 이 파일과 관련되지 않은 비디오 트랙, 오디오 트랙, 서브타이틀 트랙 및 "메타데이터"에 대한 기준을 포함한다.
1. 시스템의 설명
도 1에는, 본 발명의 실시예에 따라 파일을 부호화, 분배 및 복호화하기 위한 시스템을 나타낸다. 이 시스템(10)은 네트워크(14)를 통해 다른 다양한 연산 장치에 접속되는 컴퓨터(12)를 포함한다. 네트워크에 접속될 수 있는 장치(이하, 단순히 '장치'라고 함)에는, 서버(16), 랩탑 컴퓨터(18) 및 개인 휴대정보 단말 기(PDA: personal digital assistant)(20)가 포함된다. 다양한 실시예에서, 장치와 네트워크 사이의 접속은 유선 또는 무선으로 가능하며, 다양한 네트워크 프로토콜을 사용하여 구현될 수 있다.
동작에 있어서, 컴퓨터(12)는 본 발명의 실시예에 따라 멀티미디어 파일을 부호화하는데 이용될 수 있다. 컴퓨터(12)는, 또한 본 발명의 실시예에 따라 멀티미디어 파일을 복호화 및 분배하는데에도 이용될 수 있다. 이러한 컴퓨터는 피투피(P2P: peer-to-peer) 네트워크를 포함하는 다양한 파일 전송 프로토콜을 이용하여 파일을 분배할 수 있다. 또한, 컴퓨터(12)는 본 발명의 실시예에 따라 멀티미디어 파일을 서버(18)에 전송할 수 있으며, 서버(18)는 다른 장치가 파일에 접근할 수 있게 되어 있다. 다른 장치로는, 컴퓨팅 장치나 전용의 디코더 장치도 포함할 수 있다. 본 예에서는, 랩탑 컴퓨터와 PDA가 도시되어 있다. 다른 실시예에서는, 디지털 셋톱박스, 데스크톱 컴퓨터, 게임 머신, 가전 제품 및 그와 다른 장치가, 네트워크에 접속되어 멀티미디어 파일을 다운로드해서 복호화할 수 있다.
일실시예에서, 장치는 네트워크를 통해 서버로부터 멀티미디어 파일을 액세스한다. 다른 실시예에서, 장치는 피투피 네트워크를 통해 다수의 컴퓨터로부터 멀티미디어 파일을 액세스한다. 몇몇 실시예에서, 멀티미디어 파일은 디스크 드라이브, CD-ROM, DVD 등의 휴대형 기억 장치에 기록될 수 있다. 많은 실시예에서, 전자 장치는 휴대형 기억 장치에 기록된 멀티미디어 파일을 액세스할 수 있다.
2. 파일 구조의 설명
본 발명의 실시예에 따른 멀티미디어 파일은, 워싱턴주 레드몬드에 소재한 마이크로소프트(Microsoft Corporation) 및 뉴욕주 아몬크에 소재한 아이비엠(IBM)에서 정한 자원교환 파일형식(RIFF: Resource Interchange File Format)과 호환 가능하도록 구성될 수 있다. RIFF는 멀티미디어 데이터 및 이와 관련된 정보를 기억하기 위한 파일 형식이다. RIFF 파일은 통상적으로 파일을 식별하여 후속하는 파일의 남은 길이(즉, file_length - 8)를 제공하는 8 바이트의 RIFF 헤더를 가진다. RIFF 파일의 잔여부분 전체는 "청크"(chunk)와 "리스트"(list)를 포함하여 이루어진다. 각각의 청크는 그 타입을 식별하며 그 다음에 이어지는 데이터 바이트 길이를 제공하는 8 바이트의 청크 헤더를 포함한다. 각각의 리스트는 리스트의 타입을 식별하며 후속하는 데이터의 길이(바이트 단위)를 나타내는 8 바이트의 리스트 헤더를 갖는다. 리스트에서의 데이터는 청크 및/또는 리스트를 포함한다(결과적으로 청크 및/또는 다른 리스트를 포함할 수 있다). RIFF 리스트를, "리스트 청크"(list chunks)라고도 한다.
AVI(Audio Video Interleave) 파일은, RIFF 파일의 형식에 따르기는 하지만 멀티미디어 데이터를 특정의 형식으로 갖는 식별자가 정의된, 다양한 청크와 리스트를 포함하는 특별한 형식의 RIFF 파일이다. AVI 포맷은 마이크로소프트(Microsoft Corporation)에서 개발 및 정의된 것이다. AVI 파일은 멀티미디어 데이터를 AVI 형식으로 출력할 수 있는 인코더를 이용하여 생성되는 것이 일반적이다. AVI 파일은, 총괄적으로 AVI 디코더로서 알려져 있는 소프트웨어 그룹 중 임의의 것에 의해 복호화되는 것이 일반적이다.
RFII 및 AVI 포맷은, 이들이 소정의 파일 포맷의 일부에 해당하는 청크 및 리스트만을 정의하지만, 파일이 RIFF 및/또는 AVI 디코더에 의해 판독할 수 없도록 하지 않으면서, RIFF 및/또는 AVI 파일 포맷 정의와 관계없는 리스트 및/또는 청크를 포함한다는 점에서 유연성을 갖는다. 실제로, AVI(마찬가지로 RIFF) 디코더는, 이들이 AVI 파일 포맷 정의에서는 발견하지 못한 헤더 정보를 포함하는 리스트와 청크를 그냥 무시하도록 하여 구현된다. AVI 디코더는 비(非)-AVI 청크와 리스트를 통해 계속해서 판독할 수 있어야 하며, AVI 디코더의 동작이 완만해져야 하지만, 그렇지 않다면, 이들은 아무 영향도 미치지 않으면 AVI 디코더 의해 무시된다.
본 발명의 실시예에 따른 멀티미디어 파일을 도 2a에 도시한다. 예시된 멀티미디어 파일(30)은 문자 세트 청크('CSET' chunk)(32), 정보 리스트 청크('INFO' 리스트 chunk))(34), 파일 헤더 청크('hdrl' 리스트 chunk)(36), 메타데이터 청크('DXDT' chunk)(38), 메뉴 청크('DMNU" chunk)(40), 정크 청크('junk' chunk)(41), 영화 리스트 청크('movi' list chunk)(42), 선택적 인덱스 청크('idxl' chunk)(44), 및 부차적 메뉴 청크('DMNU' chunk)(46)를 포함한다. 이들 청크 중 일부와 그외 다른 부분은 AVI 파일 포맷에서 정의하고 있으나, AVI 파일 포맷에 포함되지 않는 부분도 있다. 이하, 모두는 아니지만 많은 경우에 있어서, AVI 파일 포맷의 일부로서 정의하고 있는 청크 또는 청크의 일부에 대하여 설명한다.
본 발명의 실시예에 따른 다른 멀티미디어 파일을 도 2aa에 나타낸다. 멀티미디어 파일(30')은 도 2a에 나타낸 멀티미디어 파일과 유사하지만, 파일에 다중의 연결된 'RIFF' 청크가 포함되어 있다는 점이 다르다. 'RIFF' 청크는 부차적 'DMNU' 청크(46)를 배제할 수 있으며, 메뉴 정보를 'DMNU' 청크(46')의 형태로 포함할 수 있는, 도 2a에 도시한 것과 유사한, 'RIFF' 청크를 포함할 수 있다.
도시한 예에서, 멀티미디어는 다중의 연결된 'RIFF' 청크를 포함하며, 제1 'RIFF' 청크(50)는, 문자 세트 청크('CSET' chunk)(32'), 정보 리스트 청크('INFO' 리스트 chunk)(34'), 파일 헤더 청크('hdrl' 리스트 chunk)(36), 메타데이터 청크('DXDT' chunk)(38), 메뉴 청크('DMNU" chunk)(40), 정크 청크('junk' chunk)(41), 영화 리스트 청크('movi' list chunk)(42), 선택적 인덱스 청크('idxl' chunk)(44)를 포함한다. 제2 'RIFF' 청크(52)는, 다른 메뉴 청크('DMNU' chunk)(46')를 포함한다. 'RIFF' 메뉴 청크(52) 이후에, 추가의 타이틀을 포함하는 추가의 'RIFF' 청크(54)가 포함될 수 있다. 추가의 'RIFF' 청크는 독립적인 미디어를 호환 가능한 AVI 파일 형식으로 포함할 수 있다. 일실시예에서, 제2 메뉴 청크(46')와 추가의 'RIFF' 청크는 4개의 문자 코드(AVI 포맷에서 정의되어 있음, 이하 설명함)로 특정된다. 이 4개의 문자 코드 중 처음 2개의 문자는 2개의 제2 문자를 나타내며, 다음 2개의 문자는 2개의 제1 문자를 나타낸다.
2.1 'CSET' 청크
'CSET' 청크(32)는 마이크로소프트에서 만든 AVI(Audio Video Interleave: 오디오 비디오 겸용)의 파일 포맷(AVI file format)에서 정의한 청크이다. 'CSET' 청크는 멀티미디어 파일의 문자 세트와 언어 정보를 정의한다. 'CSET' 청크를 포함할지 여부는 본 발명의 실시예에 따라 선택적이다.
본 발명의 실시예에 따른 멀티미디어 파일은, 'CSET' 청크를 이용하지 않고, RFC 3066 Language Specification(언어 사양)과 조합한 디폴트에 의해 설정된 문자에 대해서는 유니코드 컨소니엄(Unicode Consortium)에서 정의하고, 언어 정보에 대해서는 IETF(Internet Engineering Task Force)에서 정의한 UTF-8을 이용한다.
2.2 'INFO' 리스트 청크
'INFO' 리스트 청크(34)는 멀티미디어 파일의 컨텐츠를 식별하는데 도움을 주는 정보를 저장할 수 있다. 'INFO' 리스트는, AVI 파일 형식으로 정의되며, 멀티미디어 파일에 포함할지 여부는 본 발명의 실시예에 따라 선택적이다. 'DXDT' 청크를 포함하는 많은 실시예에서는 'INFO' 리스트 청크를 포함하지 않는다.
2.3 'hdrl' 리스트 청크
'hdrl' 리스트 청크(38)는 AVI 파일 형식으로 정의되며, 멀티미디어 파일 내의 데이터의 형식 관련 정보를 제공한다. 'hdrl' 리스트 청크 또는 유사한 설명 정보를 갖는 청크는 일반적으로 포함되어야 한다. 'hdrl' 리스트 청크는 각각의 비디오 트랙, 각각의 오디오 트랙 및 각각의 서브타이틀 트랙에 대한 청크를 포함한다.
단일의 비디오 트랙(62), 2개의 오디오 트랙(64), 외부 오디오 트랙(66), 2개의 서브타이틀 트랙(68) 및 외부 서브타이틀 트랙(70)을 포함하는 본 발명의 일실시예에 따른 'hdrl' 리스트 청크(38)의 개념도를 도 2b에 나타낸다. 'hdrl' 리스트(60)는 'avih' 청크를 포함한다. 'avih' 청크(60)는 파일 내의 스트림의 수, 멀티미디어 파일 내에 포함되는 비디오의 폭과 높이와 같은 전체 파일에 대한 글로벌(전역) 정보를 포함한다. 'avih' 청크는 AVI 파일 형식에 따라 구현될 수 있다.
'avih' 청크에 추가로, 'hdrl' 리스트는 각각의 오디오, 비디오 및 서브타이틀 트랙에 대한 스트림 기술어 리스트(stream descriptor list)를 포함한다. 일실시예에서, 스트림 기술어 리스트는 'strl' 청크를 이용하여 구현된다. 본 발명의 일실시예에 따른 'strl' 청크는 도 2c에 도시되어 있다. 각각의 'strl' 청크는 멀티미디어 파일 내의 각각의 트랙을 기술하는 기능을 한다. 멀티미디어 파일 내의 오디오, 비디오 및 서브타이틀 트랙에 대한 'strl' 청크는, 'strh' 청크(92), 'strf' 청크(94), 'strd' 청크(96) 및 'strn' 청크(98)를 참조하는 'strl' 청크를 포함한다. 이들 모든 청크는 AVI 파일 형식에 따라 구현될 수 있다. 특별히 중점을 둘 것은, 미디어 트랙의 타입을 특정하는 'strh' 청크(92)와, 비디오가 디지털 권리 관리에 의해 보호되는지 여부를 나타내기 위해 변형 가능한 'strd' 청크(96)이다. 본 발명의 실시예에 따라 디지털 권리 관리를 다양하게 구현하는 것에 대하여 이하 설명한다.
본 발명의 실시예에 따른 멀티미디어 파일은 추가의 오디오 트랙 또는 추가의 서브타이틀 트랙과 같은 멀티미디어 정보를 유지하는 외부 파일에 대한 참조를 포함할 수 있다. 이들 트랙에 대한 참조(references)는 'hdrl' 청크 또는 'junk' 청크(41)에 포함될 수 있다. 어느 경우에서나, 로컬 파일이나 원격에 저장된 파일을 참조하는, 'strl' 청크(90)의 'strh' 청크(92)에 대한 참조가 포함될 수 있다. 참조된 파일은 추가의 트랙을 포함하는 본 발명의 실시예에 따라 멀티미디어 파일 또는 표준 AVI 파일이 될 수 있다.
다른 실시예에서, 참조된 파일은 ''DMNU' 청크, 'DXDT' 청크 및 멀티미디어 표현(multimedia presentation)에 대한 오디오, 비디오 및/또는 서브타이틀 트랙과 관련된 청크를 포함하는 참조용 파일에 존재할 수 있는 임의의 청크를 포함할 수 있다. 예를 들어, 제1 멀티미디어 파일은, 제1 멀티미디어 파일의 'movi' 리스트 청크 내에 위치한 제1 멀티미디어 표현과, 제2 멀티미디어 파일의 'movi' 리스트 청크 내에 위치한 제2 멀티미디어 표현을 참조하는 'DMNU' 청크(이하 상세하게 설명함)를 포함할 수 있다. 이와 달리, 이들 2개의 'movi' 리스트 청크는 'DMNU' 청크가 위치해 있는 파일과 동일한 파일일 필요가 없는 동일한 멀티미디어 파일 내에 포함될 수 있다.
2.4 'DXDT' 청크
'DXDT' 청크(38)는, 소위 "메타데이터"라고도 불린다. "메타데이터"는 파일, 문서 또는 방송의 컨텐츠에 관련된 정보를 제공하는 데이터를 기술하기 위해 이용되는 용어이다. 본 발명의 일실시예에 따라 멀티미디어 파일의 'DXDT' 청크 내에 저장된 메타데이터는, 제목, 저자, 저작권 소유자 및 배역(cast)과 같은 컨텐츠 특정 정보를 저장하는데 이용될 수 있다. 또한, 각각의 과정 이후 이용되는 CLI 옵션 및 등화기 분배와 같은, 멀티미디어 파일을 부호화하는데 이용되는 코덱(codec)에 대한 기술적 설명이 제공될 수 있다.
일실시예에서, 메타데이터는 주어부(subject), 술어부(predicate), 객체부(object) 및 출처부(authority)를 포함하는 각각의 문(statement)으로 이루어진 일련의 문으로서 'DXDT' 청크 내에 표현된다. 주어부는 기술되는 대상을 나타낸다. 주어부는 파일, 아이템, 개인 또는 조직을 나타낸다. 주어부는 서술 가능한 특징을 갖는 것이면 어느 것이나 가능하다. 술어부는 서술의 대상이 되는 주어부의 특징을 식별한다. 객체부는 주어부의 식별된 특징에 대한 설명이며, 출처부는 정보의 소스를 식별한다.
이하는, 다양한 "메타데이터"가 객체부, 술어부, 주어부 및 출처부로 어떻게 표현될 수 있는지를 나타내는 표이다.
"메타데이터"의 개념적 표현
주어부 술어부 객체부 출처부
_:file281 http://purl.org/dc/elements/1.1/title The Matrix _:auth42
_:file281 http://xmlns.divxne tworks .com/2004/11/cast#Person _:cast871 _:auth42
_:file281 http://xmlns.divxne tworks .com/2004/11/cast#Person _:cast872 _:auth42
_:file281 http://xmlns.divxne tworks .com/2004/11/cast#Person _:cast873 _:auth42
_:cast871 http://xmlns.divxn etworks .com/2004/11cast#name Keanu Reeves _:auth42
_:cast871 http://xmlns.divxn etworks .com/2004/11/cast#role Actor _:auth42
_:cast871 http://xmlns.divxn etworks .com/2004/11/cast#character Neo _:auth42
_:cast282 http://xmlns.divxn etworks .com/2004/11/cast#name Andy Wachowski
(앤디 위쇼스키)
_:auth42
_:cast282 http://xmlns.divxn etworks .com/2004/11/cast#role Director(감독) _:auth42
_:cast283 http://xmlns.divxne tworks .com/2004/11/cast#name Larry Wachowski(래리 위쇼스키) _:auth42
_:cast283 http://xmlns.divxn etworks .com/2004/11/cast#role Director (감독_ _:auth42
_:file281 http://purl.org/dc/elements/1.1/ righ ts Copyright 1998 Warner Brothers. All Rights Reserved. _:auth42
_:file281 Series _:file321 _:auth42
_:file321 Episode 2 _:auth42
_:file321 http://purl.org/dc/elements/1.1/ titl e The Matrix Reloaded _:auth42
_:file321 Series _:file122 _:auth42
_:file22 Episde 3 _:auth42
_:auth42 http://xmlns.com/foaf/0.1/ Organizati on _:foaf92 _:auth42
_:foaf92 http://xmlns.com/foaf/0.1/name Warner Brothers _:auth42
_:file281 http://xmlns.divxn etworks .com/2004/11/track#track _:track#dc00 _:auth42
_:track#dc00
http://xmlns.divxne tworks .com/2004/11/track#resolution 1024x768 _:auth42
_:file281 http://xmlns.divxne tworks .com/2004/11/content# certificationLevel HT _:auth42
_:track#dc0 http://xmlns.divxne tworks .com/2004/11/track# frameTypeDist 32, 1, 3, 5 _:auth42
_:track#dc00 http://xmlns.divxne tworks .com/2004/11/track# codecSettings bv1 276 -psy 0 -key 300 -b 1 -sc 50 -pq 5 -vbv 6951200, 3145728, 2359296 - profile 3 -nf _:auth42
일실시예에서, 주어부, 술어부, 객체부 및 출처부의 표현은, 방향성 라벨부착 그래프(DLG: Directed-Labeled Graphs)를 형성하는 것으로 고려될 수 있는 데이터의 이진 표현을 이용하여 구현된다. DLG는 리소스(resource) 또는 리터럴(literal)에 해당하는 노드로 구성된다. 리소스는 인터넷 엔지니어링 태스크포스(Internet Engineering Taskforce)(http://www.ietf.org/rfc/rfc2396.txt)에 의해 RFC 2396에서 정의된 바와 같은 "URI"(Universal Resource Identifier) 등의 이름 부여 방식(naming convention)에 부합되거나, 시스템 전용의 데이터를 의미하는 식별자이다. 리터럴은 참조용이 아니라 실제 값을 나타낸다.
DLG의 장점은, 영화의 배역과 같이, 동일한 타입의 데이터로서 탄력적인 개수의 데이터 아이템을 포함할 수 있다는 것이다. 표 1에 나타낸 예에서는 3개의 배역이 포함되어 있다. 그러나, 임의의 수의 배역이 포함될 수 있다. DLG에 의하면 다른 데이터 타입에도 상관적인 연결 관계를 가질 수 있다. 표1 에는, 주어부 "_:file281", 술어부 "Series", 객체부 "_:file321"을 갖는 "메타데이터" 아이템이 있다. 주제 "_:file321"은 "메타데이터"가 "_:file321"로서 참조된 파일의 내용(이 경우에는 영화 "The Matrix")을 참조한다는 것을 나타낸다. 술어부는, 객체부가 "The Matrix"가 속하는 시리즈에서 다른 영화와 관련된 정보를 가진다는 것을 의미한다. 그러나, "_:file321"은 "The Matrix"를 포함하는 시리즈에 관한 임의의 다른 특정한 정보가 아니라, "_:file321"에 관한 더 많은 정보를 제공하는 다른 엔트리에 대한 참조이다. 주어부 "_:file321"을 갖는 다음 "메타데이터"엔트리는, "_:file321"에 대한 데이터, 즉 이 결과의 "http://purl.org/dc/elements/1.1/ title"로 표시된 것과 같이 듀블린 코어 어휘(Dublin Core Vocabulary)에서 특정하는 타이틀이 "The Matrix Reloaded"라는 것을 포함한다.
표 1에서 추가의 '메타데이터' 문은 키아누 리브스(Keanu Reeves)가 네오(Neo)의 역할을 수행하는 배역이었으며, 래리 위쇼스키(Larry Wachowski)와 앤디 위쇼스키(Andy Wachowski)가 감독이었다는 것을 특정한다. 기술적 정보도 또한 '메타데이터'로 표현된다. 이 '메타데이터' 문은 "_:file281"이 트랙 "_:track#dc00"을 포함한다는 것을 식별한다. '메타데이터'는 비디오 트랙의 해상도, 비디오 트랙 및 코덱 설정의 인증 수준을 포함하는 정보를 제공한다. 표 1에는 나타내지 않았지만, '메타데이터'는 부호화할 때 트랙에 할당되는 고유 식별자를 포함할 수도 있다. 고유 식별자가 사용되는 경우, 동일한 컨텐츠를 여러 번 부호화하면, 그 컨텐츠의 부호화된 각각의 버전에 대해 상이한 식별자가 사용될 것이다. 그러나, 부호화된 비디오 트랙의 복제는 복제된 때부터 트랙의 식별자를 유지할 것이다.
표 1에 나타낸 엔트리는, UPnP 포럼(http://www.upnpforum.org 참조)에서 정한, UPnp 어휘 등의 다른 어휘로 대체시킬 수 있다. 다른 대안은, MPEG-21 표준에 대한 작업의 일부로서 국제 표준화 기구(ISO)에서 개발한 Digital Item Declaration Language(DIDL) 또는 DIDL-Lite 어휘가 될 수 있다. 이하, UPnP 어휘 내에서의 술어부의 예이다.
urn:schemas-upnp-org:metadata-1-0/upnp/artist
urn:schemas-upnp-org:metadata-1-0/upnp/actor
urn:schemas-upnp-org:metadata-1-0/upnp/author
urn:schemas-upnp-org:metadata-1-0/upnp/producer
urn:schemas-upnp-org:metadata-1-0/upnp/director
urn:schemas-upnp-org:metadata-1-0/upnp/genre
urn:schemas-upnp-org:metadata-1-0/upnp/album
urn:schemas-upnp-org:metadata-1-0/upnp/playlist
urn:schemas-upnp-org:metadata-1-0/upnp/originalTrackNumber
urn:schemas-upnp-org:metadata-1-0/upnp/userAnnotation
모든 '메타데이터'에 대한 출처부는 '_:auth42'이다. '메타데이터' 문은 '_:auth42'가 'Warner Brothers'이다. 출처부에 의하여 파일의 품질과 이 파일에 관련된 '메타데이터' 문의 품질을 모두 평가할 수 있다.
그래프 내부의 노드는 명명된 리소스 노드를 통해 접속된다. '메타데이터'의 문은 주어부 노드, 서술부 노드 및 객체부 노드로 구성된다. 선택적으로, 출처부 노드는 '메타데이터' 문의 일부로서 DLG에 접속될 수 있다.
각각의 노드에 대하여, 노드의 기능을 설명하는데 도움이 되는 소정의 특징이 있다. ANSI C 프로그래밍 언어를 이용하여 가능한 타입을 다음과 같이 나타낸다.
/**Invalid Type*/
#define RDF_IDENTIFIER_TYPE_UNKNOWN 0X00
/**Resource URI rdf:about*/
#define RDF_IDENTIFIER_TYPE_UNKNOWN 0X01
/**rdf:NodeId, _:file or generated N-Triples*/
#define RDF_IDENTIFIER_TYPE_UNKNOWN 0X02
/**Predicate URI*/
#define RDF_IDENTIFIER_TYPE_UNKNOWN 0X03
/**rdf:li, rdf:_<n>*/
#define RDF_IDENTIFIER_TYPE_UNKNOWN 0X04
/**Authority URI*/
#define RDF_IDENTIFIER_TYPE_UNKNOWN 0X05
/**UTF-8 formatted literal*/
#define RDF_IDENTIFIER_TYPE_UNKNOWN 0X06
/**Literal Integer*/
#define RDF_IDENTIFIER_TYPE_UNKNOWN 0X07
/**Literal XML data*/
#define RDF_IDENTIFIER_TYPE_UNKNOWN 0X08
'DXDT' 청크 내에 포함되는 '메타데이터' 청크를 나타내는 데이터 구조(ANSI C 프로그래밍 언어로 표현됨)의 예는 다음과 같다.
typedef struct RDFDataStruct
{
RDFHeader Header;
uint32_t numOfStatements;
RDFStatement statements[RDF_MAX_STATEMENTS];
} RDFData
'RDFData' 청크는 'RDFHeader' 청크, 'numOfStatements' 값 및 'RDFStatement' 청크의 리스트로서 불리는 청크를 포함한다.
'RDFHeader' 청크는 '메타데이터'가 청크로 포맷화되는 방식에 대한 정보를 포함한다. 일실시예에서, 'RDFHeader' 청크 내의 데이터는 다음과 같이 나타낼 수 있다(ANSI C 프로그램잉 언어로 표현).
typedef struct RDFHeaderStruct
{
unit16_t versionMajor;
unit16_t versionMinor;
unit16_t versionFix;
unit16_t numOfSchemas;
RDFSchema schemas[RDF_MAX_SCHEMA];
} RDFHeader;
'RDFHeader' 청크는 포워드 호환성을 가능하게 하도록 리소스 서술 포맷의 버전을 나타내는 '버전'의 수를 포함한다. 헤더는 'RDFHeader' 청크의 일부를 형성하기도 하는, 리스트 'schemas' 에서의 'RDFSchema' 청크의 수를 나타내는 'numOfSchemas'의 다른 수를 포함한다. 몇몇 실시예에서, 'RDFSchema' 청크는 복합적인 리소스를 더 효과적으로 나타내는데 이용된다. 일실시예에서, 'RDFSchema' 청크에 포함되는 데이터는 다음과 같이 나타낼 수 있다(ANSI C 프로그래밍 언어로 표현되어 있음).
typedef struct RDFSchemaStruct
{
wchar_t* prefix;
wchar_t* uri;
} RDFSchema;
'RDFSchema' 청크는, '프리픽스'로 식별된 'dc' 등의 텍스트로 이루어진 제1 문자열과, 'uri'로 식별된 "http://purl.org/dc/elements/1.1/'과 같은 텍스트로 이루어진 제2 문자열을 포함한다. '프리픽스'는 'uri' 대신에 '메타데이터'에서 사용될 수 있는 용어를 정의한다. 'uri'는, 범용 리소스 식별자(Universal Resource Identifier)로서, 특정의 표준화된 어휘에 부합하거나 특정의 시스템에 대한 특정의 어휘에 부합할 수 있다.
'RDFData' 청크에 대하여 다시 설명한다. 'RDFHeader' 청크에 추가하여, 'RDFData' 청크는 'RDFStatement' 청크의 'numOfStatements' 값 및 'statement' 리스트를 포함한다. 'numOfStatements' 값은 정보를 포함하는 리스트 'statement'에서의 'RDFStatement' 청크의 실제 개수를 나타낸다. 일실시예에서, 'RDFStatement' 청크에 포함된 데이터는 다음과 같이 표현될 수 있다(ANSI C 프로그래밍 언어로 표현되어 있음).
typedef struct RDFStatementStruct
{
RDFSubject subject;
RDFPredicate predicate;
RDFObject object
RDFAuthority authority;
} RDFStatemtnt;
각각의 'RDFStatement' 청크는 멀티미디어 파일과 관련된 '메타데이터'의 일부를 포함한다. 청크인 '주어부', '술어부', 객체부' 및 '출처부'는 상술한 '메타데이터'의 다양한 성분을 저장하는데 이용된다. '주어부'는 'RDFSubject' 청크이며, 앞서 설명한 '메타데이터'의 다양한 구성 요소를 유지하는데 이용된다.
'주어'는 'RDFStubject' 청크이며, 이 청크는 앞서 셜명한 '메타데이터'의 제어부분을 나타낸다. 일실시예에서, 'RDFSubject' 청크 내에 포함되는 데이터는 다음과 같이 표현될 수 있는 'RDFSubject'내에 포함된다(ANSI C 프로그래밍 언어로 표현되어 있음).
typedef struct RDFSSubjectStruct
{
unit16_t type;
wchar_t* value;
} RDFSubject;
위에 나타낸 'RDFSubject' 청크는, 데이터가 리소스(Resource) 또는 '메타데이터'와 유니코드 텍스트 문자열 '값'의 일부의 익명의 노드(anonymous node)라는 것을 나타내는 'type'(타입) 값을 포함한다. 이 유니코드 텍스트 문자열 '값'(value)은 '메타데이터'의 일부의 주어부를 나타내는 데이터를 포함한다. 'RDFSchema' 청크가 정의된 실시예에서, 그 값은 리소스에 대한 직접적인 참조 대신에 정의된 용어가 도리 수 있다.
'RDFStatement' 청크에서의 '서술부'(predicate)는 'RDFPredicate' 청크이며, '메타데이터'의 서술부의 일부를 나타낸다. 일실시예에서, 'RDFPredicate' 청크 내에 포함된 데이터는 다음과 같이 나타낼 수 있다(ANSI C 프로그래밍 언어로 표현되어 있음).
typedef struct RDFPredicateStruct
{
unit16_t type;
wchar_t* value;
} RDFPredicate;
위에 나타낸 'RDFPredicate' 청크는, 데이터가 서술형 URI 또는 '메타데이터'의 일부 정규의 리스트 엔트리와 텍스트 문자열 '값을 나타내는, '타입'(type) 값을 포함하며, 여기서 텍스트 문자열 '값'은 '메타데이터'의 일부의 서술부를 나타내는 데이터를 포함한다. 'RDFSchema' 청크가 정해진 실시예에서, 그 값은 리소스에 대한 직접 참조 대신에 정의된 용어가 될 수 있다.
'RDFStatement' 청크에서 '객체'(object)는 'RDFObject' 청크이며, '메타데이터'의 일부의 객체 부분을 나타낸다. 일실시예에서, 'RDFObject' 청크에 포함된 데이터는 다음과 같이 표현될 수 있다(ANSI C 프로그래밍 언어로 표현되어 있음).
typedef struct RDFObjectStruct
{
unit16_t type;
wchar_t* value;
wchar_t* dataTypeURI;
wchar_t* value;
} RDFObject;
위에 나타낸 'RDFObject' 청크는, 데이터의 일부가 UTF-8 문자열, 문자 정수또는 '메타데이터'의 일부의 문자 XML 데이터라는 것을 나타내는 'type' 값을 포함한다. 이 청크는 또한, 3개의 값을 포함한다. 첫 번째 값 'language'는 '메타데이터' 부분이 표현되는 언어를 나타내는데 이용된다(예컨대, 영화의 타이틀이 언어에 따라 달라질 수 있다). 몇몇 실시예에서, 언어를 식별하기 위하여 표준 표현이 이용될 수 있다(예컨대, RFC3066-IETF에서 지정한 언어의 식별을 위한 태그, http://www.ietf.org/rfc/rfc3066.txt 참조). 두 번째 값인 'dataTypeURI'는, 'type'(타입) 필드에 의해 명시적으로 표시되지 않는 경우, 'value'(값) 필드 내에 포함되는 데이터의 타입을 나타내는데 이용된다. 특정 타입의 데이터를 기술하는데 이용되는 일반적인 RDF URI Vocabulary에 대한 dataTypeURI에서 지정된 URI 포인트가 이용된다. URI가 표현될 수 있는 여러 포맷에 대해서는 http://www.w3.org/TR/rdf-concepts/#section-Datatypes에서 설명하고 있다. 일실시예에서, 'value'는 'wide character'(확장 문자)이다. 다른 실시예에서, 이 'value'는 단일 비트에서 이미지 또는 비디오 시퀀스까지의 다양한 타입의 데이터 중 임의의 것이 될 수 있다. 이 'value'는 '메타데이터'의 객체 부분을 포함한다.
'RDFStatement' 청크에서의 'authority'(출처부)는 'RDFAuthority' 청크이며, '메타데이터'의 일부 중 출처부 부분을 나타낸다. 일실시예에서, 'RDFAuthority' 청크 내에 포함되는 데이터는 다음과 같이 나타낼 수 있다(ANSI C 프로그래밍 언어로 표현되어 있음).
typedef struct RDFAuthorityStruct
{
unit16_t type;
wchar_t* value;
} RDFAuthority;
위에 나타낸 'RDFAuthority' 데이터는 이 데이터가 리소스 또는 '메타데이터'의 일부의 익명의 노드라는 것을 나타내는 'type' 값을 포함한다. 'value'는 '메타데이터'에 대한 출처부를 나타내는 데이터를 포함한다. 'RDFSchema' 청크가 정의된 실시예에서, 그 값은 리소스에 대한 직접 참조 대시에 정의된 용어가 될 수 있다.
도 2d에, 본 발명의 실시예에 따른 멀티미디어 파링의 'DXDT' 청크의 기억장치를 개념적으로 나타낸다. 'DXDT' 청크(38)는, 'RDFHeader' 청크(110), 'numOfStatements' 값(112) 및 RDFStatement 청크(114)의 리스트를 포함한다. 'RDFHeader' 청크(110)는, '버전' 값(116), 'numOfSchemas' 값(118), 및 'Schema' 청크(120)의 리스트를 포함한다. 각각의 'RDFStatement' 청크(114)는 'RDFSubject' 청크(122), 'RDFPredicate' 청크(124), 'RDFObject' 청크(126) 및 'RDFAuthority' 청크(128)를 포함한다. 'RDFSubject' 청크는, 'type' 값(130) 및 'value' 값(136)을 포함한다. 'RDFObject' 청크(126)는, 'type' 값(138), 'language' 값(140)(도면에서는 'lang'로 표시함), 'dataTypeURI' 값(142)(도면에서는 'dataT'로 표시함) 및 'value' 값(144)을 포함한다. 'RDFAuthority' 청크(128)는, 'type' 값(146) 및 'value' 값(148)을 포함한다. 'DXDT' 청크는 단일의 'Schema' 청크와 단일의 'RDFStatement' 청크를 포함하는 것으로 도시하고 있지만, 본 기술분야의 당업자라면 여러 개수의 'Schema' 청크와 'RDFStatement' 청크가 '메타데이터'를 기술하는 청크에 사용될 수 있다는 것을 용이하게 이해할 수 있을 것이다.
이하 설명하는 바와 같이, 본 발명의 실시예에 따른 멀티미디어 파일은 계속해서 변경 및 갱신될 수 있다. '메타데이터'가 파일 자체와 관련되도록 미리 판정하는 것과 '메타데이터'가 원격으로 액세스(예컨대, 인터넷을 통해)되도록 미리 판정하는 것은 어려울 수 있다. 통상적으로, 파일의 컨텐츠를 기술하기 위하여, 본 발명의 실시예에 따른 멀티미디어 파일 내에는 충분한 '메타데이터'가 포함된다. 파일을 검토하는 장치가 네트워크를 통해 파일 내에서부터 참조된 '메타데이터'를 포함하는 다른 장치를 액세스할 수 있는 경우 추가의 정보가 획득될 수 있다.
상기 설명한 '메타데이터'를 나타내는 방법은 확장이 가능하며, 시간의 경과에 따라 변경하는데 필요한 파일 내에 저장된 상이한 '메타데이터' 필드를 추가 및 제거하는 능력을 제공한다. 또한, '메타데이터'의 표현이 수정 표현들 사이에서 포워드 호환 가능하다.
'메타데이터'가 본 발명의 실시예에 따라 표현되는 구조화 방식에 의하여, 장치는 멀티미디어 파일에 질의를 행하여 그 파일 내의 컨텐츠를 더 효과적으로 판정할 수 있게 된다. 이러한 질의(query)는 멀티미디어 파일의 컨텐츠를 갱신하고, 멀티미디어 파일에 관한 추가의 '메타데이터'를 획득하며, 파일의 컨텐츠에 관련된 메뉴를 생성하고, 표준 포맷으로 표현된 데이터를 자동 처리를 포함하는 임의의 다른 기능을 수행하는데 이용될 수 있다. 또한, '메타데이터'의 파서 가능한 소자의 길이를 한정함으로써, 가정용 전자 제품 등과 같이 기억용량이 제한된 장치를 이용하여 '메타데이터'를 액세스하는 것이 더 용이하게 된다.
다른 실시예에서, '메타데이터'는 '메타데이터'의 각 부분에 대한 개별 청크를 이용하여 표현된다. 본 발명에 따른 몇 개의 'DXDT' 청크는 상술한 바와 같이 '메타데이터'와 상술한 바와 같이 또는 다른 형식으로 포맷화된 '메타데이터'의 각각의 부분을 포함하는 추가의 청크를 포함하는 이진 청크를 포함한다. 이진 '메타데이터'가 DXDT' 청크에 포함되는 실시예에서, 이진 '메타데이터'는 64 비트로 부호화된 ASCII 코드를 이용하여 표현될 수 있다. 다른 실시예에서는, 다른 이진 표현도 가능하다.
본 ㅂ라명에 따라 'DXDT' 청크에 포함될 수 있는 개별 청크의 예가 도 2da에 도시되어 있다. '메타데이터'는, 'PixelAspectRatioMetaData' 청크(152a), 'EncoderURIMetaData' 청크(152b), 'CodexSettingsMetaData' 청크(152c), 'FrameTypeMetaData' 청크(152d), 'VideoResolutionMetaData' 청크(152e), 'PublisherMetaData' 청크(152f), 'CreatorMetaData' 청크(152g), 'GenreMetaData' 청크(152h), 'CreatorToolMetaData' 청크(152i), 'RightsMetaData' 청크(152j), 'RunTimeMetaData' 청크(152k), 'QuantizerMetaData' 청크(152l), 'CodecInfoMetaData' 청크(152m), 'EncoderNameMetaData' 청크(152n), 'FrameRateMetaData' 청크(152o), 'InputSourceMetaData' 청크(152p), 'FileIDMetaData' 청크(152q), 'TypeMetaData' 청크(152r), 'TitleMetaData' 청크(152s) 및/또는 'CertLevelMetaData' 청크(152t)를 포함할 수 있는 'MetaData' 청크(150)를 구비한다.
'PixelAspectRatioMetaData' 청크(152a)는 부호화된 비디오의 픽셀 종횡비(어스팩트비)에 관한 정보를 포함한다. 'EncoderURIMetaData' 청크(152b)는 인코더에 관한 정보를 포함한다. 'CodexSettingsMetaData' 청크(152c)는 비디오를 부호화하는데 이용되는 코덱의 설정에 관한 정보를 포함한다. 'FrameTypeMetaData' 청크(152d)는 비디오 프레임에 관한 정보를 포함한다. 'VideoResolutionMetaData' 청크(152e)는 부호화된 비디오의 영상 해상도에 관한 정보를 포함한다. 'PublisherMetaData' 청크(152f)는 미디어를 발행하는 개인이나 기관에 관한 정보를 포함한다. 'CreatorMetaData' 청크(152g)는 컨텐츠의 작성자에 관한 정보를 포함한다. 'GenreMetaData' 청크(152h)는 미디어의 장르에 관한 정보를 포함한다. 'CreatorToolMetaData' 청크(152i)는 파일을 작성하는데 이용되는 도구에 관한 정보를 포함한다. 'RightsMetaData' 청크(152j)는 DRM 관련 정보를 포함한다. 'RunTimeMetaData' 청크(152k)는 미디어의 실행 시간에 관련된 정보를 포함한다. 'QuantizerMetaData' 청크(152l)는 비디오를 부호화하는데 이용하는 양자화기에 관한 정보를 포함한다. 'CodecInfoMetaData' 청크(152m)은 코덱 관련 정보를 포함한다. 'EncoderNameMetaData' 청크(152n)은 인코더의 이름 관련 정보를 포함한다. 'FrameRateMetaData' 청크(152o)는 미디어의 프레임 레이트(frame rate)에 관련된 정보를 포함한다. 'InputSourceMetaData' 청크(152p)는 입력 소스에 관한 정보를 포함한다. 'FileIDMetaData' 청크(152q)는 파일에 대해 고유한 식별자를 포함한다. 'TypeMetaData' 청크(152r)은 멀티미디어 파일의 타입에 관한 정보를 포함한다. 'TitleMetaData' 청크(152s)는 미디어의 타이틀을 포함하며, 'CertLevelMetaData' 청크(152t)는 미디어의 인증 수준에 관한 정보를 포함한다. 다른 실시예에서는, 추가의 '메타데이터'를 포함하는 추가의 청크가 포함될 수 있다. 몇몇 실시예에서, 상술한 바와 같이 '메타데이터'를 이진 형태로 포함하는 청크는 '메타데이터' 청크 내에 포함될 수 있다. 일실시예에서, 이진 '메타데이터'의 청크는 64 비트의 ASCII 코드로서 부호화된다.
2.5 'DMNU' 청크
도 2a 내지 2.0.1을 참조하면, 제1 'DMNU' 청크 (40; 40')와 제2 'DMNU' 청크(46; 46')가 도시되어 있다. 도 2a에서, 제2 'DMNU' 청크(46)는 멀티미디어 파일(30)의 일부를 형성한다. 도 2aa에 나타낸 실시예에서, 'DMNU' 청크(46')는 개별의 RIFF 청크 내에 포함된다. 위 2가지 경우 모두, 제1 및 제2 'DMNU' 청크가 조정가능한 메뉴를 표시하는데 이용될 수 있는 데이터를 포함한다. 일실시예에서, 제1 'DMNU' 청크(40; 40')는 확장된 애니메이션 배경과 같이 진보된 특징을 포함하지 않는 단순한 메뉴를 작성하는데 이용될 수 있는 데이터를 포함한다. 또한, 제2 'DMNU' 청크(46; 46')는 확장된 애니메이션 배경과 같이 진보된 특징을 포함하는 보다 복잡한 메뉴를 작성하는데 이용될 수 있는 데이터를 포함한다.
몇몇 실시예에서, 단순하고 복잡한 메뉴를 제공함으로써, 장치는 원하는 메뉴를 선택하여 표시할 수 있게 된다. 'movi' 리스트 청크(42)의 앞에 더 작은 2개의 매뉴를 배치함으로써, 메뉴를 표시할 수 없는 본 발명의 실시예에 따른 장치가 표시될 수 없는 정보를 신속하게 스킵할 수 있도록 한다.
다른 실시예에서, 단일의 메뉴를 작성하는데 필요한 데이터는 제1 'DMNU' 청크와 제2 'DMNU' 청크로 분할된다. 대안으로서, 'DNMU' 청크는 단일 세트의 메뉴 또는 다중 세트의 메뉴에 대한 데이터를 포함하는 'movi' 청크의 앞에 놓이는 단일의 청크가 될 수 있다. 다른 실시예에서, 'DMNU' 청크는 멀티미디어 파일 전체를 통해 다른 위치에 배치되는 단일의 청크 또는 다중의 청크가 될 수 있다.
본 ㅂ라명의 실시예에 따른 몇몇 멀티미디어 파일에 있어서, 제1 'DMNU' 청크(40; 40')는 제2 'DMNU' 청크(46; 46') 내의 '더 풍부한' 메뉴에 기초하여 자동으로 생성될 수 있다. 메뉴의 자동 생성에 대해서는 나중에 더 상세하게 설명한다.
본 발명의 실시예에 따른 'DMNU' 청크의 구조에 대하여 도 2e에 나타낸다. 'DMNU' 청크(158)는 메뉴 청크(160)와 'MRIF' 청크(162)를 포함하는 리스트 청크이다. 메뉴 청크는 메뉴를 통해 구성 및 네비게이트하는데 필요한 정보를 포함한다. 'MRIF' 청크는 서브타이틀, 배경 비디오 및 배경 오디오를 메뉴에 제공하는데 이용될 수 있는 미디어 정보를 포함한다. 몇몇 실시예에서, 'DMNU' 청크는 메뉴를 여러 가지 언어로 표시할 수 있는 메뉴 정보를 포함한다.
일실시예에서, 'WowMenu' 청크(160)는 도 2f에 개념적으로 도시한 메뉴 정크 객체의 계층을 포함한다. 이 계층의 최상부는 'WowNenuManager' 청크(170)이다. 'WowNenuManager' 청크는 하나 이상의 'LanguageMenu' 청크(172)와 하나의 'Media' 청크(174)를 포함할 수 있다.
'LanguageMenus' 청크(172)를 이용함으로써, 'DMNU' 청크(158)는 상이한 언어로 된 메뉴 정보를 포함할 수 있다. 각각의 'LanguageMenus' 청크(172)는 지정된 언어로 된 완전한 세트의 메뉴를 생성하는데 이용되는 정보를 포함한다. 따라서, 'LanguageMenus' 청크는 'LanguageMenus' 청크와 관련된 정보의 언어를 식별하는 식별자를 포함한다. 'LanguageMenus' 청크는 또한 'WowMenu' 청크(175)의 리스트를 포함한다.
각각의 'WowMenu' 청크(175)는 특정의 메뉴에 대해 스크린상에 표시될 모든 정보를 포함한다. 이 정보는 배경 비디오 및 오디오를 포함할 수 있다. 이 정보는 또한 다른 메뉴에 액세스하거나, 메뉴에서 빠져나가고 멀티미디어 파일의 일부의 표시를 개시하는데 이용될 수 있는 버튼 동작과 관련된 데이터를 포함할 수 있다. 일실시예에서, 'WowMenu' 청크(175)는 미디어에 대한 참조 리스트를 포함한다. 이들 참조는, 이하 더 상세하게 설명하는 'Media' 청크(174)에 포함된 정보를 참조한다. 이러한 미디어에 대한 참조는 메뉴에 대한 배경 비디오 및 배경 오디로를 정의할 수 있다. 'WowMenu' 청크(175)는 또한, 메뉴가 첫 번째로 액세스될 때, 특정의 버튼을 강조(밝게)하는데 이용될 수 있는 오버레이(overlay)를 정의한다.
또한, 각각의 'WowMenu' 청크(175)는 많은 수의 'ButtonMenu' 청크(176)를 포함한다. 각각의 'ButtonMenu' 청크는 스크린상의 버튼의 특성을 정의한다. 'ButtonMenu' 청크는, 사용자에 의해 버튼이 강조될 때 이용되는 오버레이, 버튼의 이름, 및 메뉴를 통한 사용자의 네비게이션에 의해 수행되는 다양한 동작에 어떻게 응답하는 지에 관한 것들을 기술할 수 있다. 동작에 따른 응답은 'Action' 청크(178)를 참조함으로써 정의된다. 단일의 동작, 예컨대 버튼을 선택하는 동작에 의해 여러 개의 'Action' 청크가 액세스될 수 있다. 사용자가 디스플레이 상에서 온스크린 포인터를 제한 없이 이동시킬 수 있는 마우스 등의 장치를 이용하여 메뉴와 상호동작을 행할 수 있는 환경에서, 버튼의 온스크린 위치는 'MenuRectangle' 청크(180)를 이용하여 정의될 수 있다. 버튼의 온스크린 위치를 알면, 시스템은 자유 범위의 입력 장치를 이용하면서, 사용자가 버튼을 선택하고 있는지를 판정할 수 있다.
각각의 'Action' 청크는 동작 관련 청크의 많은 상이한 변형 중 하나 이상을 식별하며, 이러한 동작 관련 청크에는, 'PlayAction' 청크(182), 'MenuTransitionAction' 청크(184), 'ReturnToPlayAction' 청크(186), 'AudioSelectAcion' 청크(188), 'SubtitleSelectAction' 청크(190) 및 'ButtonTransitionAction' 청크(191)가 포함된다. 'PlayAction' 청크(182)는 멀티미디어 파일 내의 비디오, 오디오 및 서브타이틀 트랙의 각각의 부분을 식별한다. 'PlayAction' 청크는 'MediaTrack' 청크에 대한 참조를 이용하여 비디오 트랙의 일부를 참조한다(이하 참조). 'PlayAction' 청크는 'SubtitleTrack' 청크(192)와 'AudioTrack' 청크(194)를 이용하여 오디오 및 서브타이틀 트랙을 식별한다. 'SubtitleTrack' 청크와 'AudioTrack' 청크는 'MediaTrack' 청크(198)에 대한 참조를 포함한다. 'PlayAction' 청크가 본 발명의 실시예에 따라 동작을 기본을 형성하면, 선택된 오디오 및 서브타이틀 트랙이 디폴트로서 초기에 설정된 변수 값으로서 결정되고, 사용자가 메뉴를 사용하여 변경시킬 수 있다.
각 'MenuTransitionAction' 청크(184)는 'WowMenu' 청크(175)에 관한 참조를 포함하고 있다. 상기 참조는 다른 메뉴를 표시하거나 전환하기 위한 정보를 얻을 수 있다.
각 'ReturnToPlayAction' 청크(186)는 사용자가 메뉴를 불러오기 전에 액세스했었던 멀티미디어 파일 부분으로 조작자가 되돌아갈 수 있도록 하는 정보를 포함하고 있다.
각 'AudioSelectAction' 청크(188)는 특정의 오디오 트랙을 선택하는데 이용될 수 있는 정보를 포함하고 있다. 일 실시예에서, 오디오 트랙은 본 발명의 실시예에 따른 멀티미디어 파일의 내에 포함된 오디오 트랙으로부터 선택된다. 다른 실시예에서, 오디오 트랙은 외부에서 참조하는 파일에 위치할 수 있다.
각 'SubtitleSelectAction' 청크(190)는 특정의 서브타이틀을 선택하는데 이용될 수 있는 정보를 포함하고 있다. 일 실시예에서, 서브타이틀 트랙은 본 발명의 실시예에 따른 멀티미디어 파일의 내에 포함된 서브타이틀로부터 선택된다. 다른 실시예에서, 서브타이틀 트랙은 외부에서 참조하는 파일에 위치할 수 있다.
각 'ButtonTransitionAction' 청크(191)는 동일 메뉴 내에서의 다른 버튼으로 전환하는데 이용될 수 있는 정보를 포함하고 있다. 다른 버튼으로의 전환은, 하나의 버튼과 관련된 다른 동작이 수행된 후에 행하여진다.
'Media' 청크(174)는 많은 수의 'MediaSource' 청크(166)와 'MediaTrack' 청크(198)를 포함한다. 'Media' 청크는 자질문자(feature system)와 메뉴 시스템에 이용되는 모든 멀티미디어 트랙(예컨대, 오디오, 비디오, 서브타이틀)을 규정한다. 각 'MediaSource' 청크(196)는 본 발명의 실시예에 따른 멀티미디어 파일 내의 RIFF 청크를 정의함으로써, 다수의 RIFF 청크를 포함할 수 있다. 각 'MediaTrack' 청크(198)는 'MediaSource' 청크에 의해 특정되는 RIFF 청크 내의 멀티미디어 트랙의 일부를 식별한다.
'MRIF' 청크(162)는 그 자신의 RIFF 포맷에 따르는 소형 멀티미디어 파일이다. 'MRIF' 청크는 메뉴용의 배경 오디오, 비디오 및 오버레이를 제공하는데 이용되는 오디오, 비디오 및 서브타이틀 트랙을 포함한다. 'MRIF' 청크는 강조된 메뉴 버튼을 지시하기 위한 오버레이로 이용될 수 있는 비디오를 포함할 수도 있다. 일 실시예에서, 메뉴 데이터가 덜 요구되는 실시예의 경우, 배경 비디오는 스틸 프레임(avi 포맷의 변경예)이 되거나 시퀀스가 작은 동일한 프레임이 될 수 있다. 다른 실시예에서, 더 정교한 비디오 시퀀스는 배경 비디오를 제공하는데에 이용될 수 있다.
상술한 바와 같이, 'WowMenu' 청크(175)와 'WowMenu' 청크 부분을 형성하는 다양한 청크는 실제 미디어 트랙에 대한 참조를 자체적으로 포함하고 있다. 이러한 각 참조는 전형적으로 RIFF 청크의 'hdrl' 리스트 청크에서 규정한 미디어 트랙에 대한 참조가다.
도 2g에는 본 발명에 따라 'DMNU' 청크를 작성하는데 이용될 수 있는 다른 청크들이 도시되어 있다. 'DMNU' 청크는 'WowMenuManager' 청크(170')를 포함한다. 'WowMenuManager' 청크(170')는 적어도 하나의 "LanguageMenus' 청크(172'), 적어도 하나의 'Media' 청크(174'), 및 적어도 하나의 'TranslationTable' 청크(200)를 포함한다.
'LanguageMenus' 청크(172')의 컨텐츠는, 도 2f에 도시된 'LanguageMenus' 청크(172)의 컨텐츠와 대략적으로 유사하다. 주요한 차이는 'PlayAction' 청크(182')가 'SubtitleTrack' 청크(192)와 'AudioTrack' 청크(194)를 포함하고 있지 않다는 것이다.
'Media' 청크(174')는 도 2f에 도시된 'Media' 청크(174)와 명백히 다르다. 'Media' 청크(174')는 적어도 하나의 'Title' 청크(202)와 적어도 하나의 'MenuTracks' 청크(204)를 포함한다. 'Title' 청크는 멀티미디어 파일 내의 타이틀을 의미한다. 상기 언급한 바와 같이, 본 발명의 실시예에 따른 멀티미디어 파일은 하나 이상의 타이틀(예컨대, TV 시리즈에서의 여러 개의 에피소드, 장편 영화 중에서 연관된 시리즈, 또는 단순한 다른 영화의 선택)을 포함할 수 있다. 'MenuTracks' 청크(204)는 메뉴 디스플레이, 오디오 사운드 트랙 및 디스플레이에 동반되는 서브타이틀을 작성하는데 이용되는 미디어 정보에 대한 정보를 포함한다.
'Title' 청크는 적어도 하나의 'Chapter' 청크(206)를 포함할 수 있다. 'Chapter'청크(206)는 특정한 타이틀 내에서의 장면(scene)을 참조한다. 'Chapter' 청크(206)는 'Chapter' 청크에 의해 나타나는 장면에 대응하는 비디오 트랙, 각 오디오 트랙 및 서브타이틀 트랙의 일부에 대한 참조를 포함한다. 일 실시예에서, 참조는 도 2f와 관련해서 언급된 것과 유사한 'MediaSource' 청크(196')와 'MediaTrack' 청크(198')를 이용하여 구현된다. 몇몇 실시예에서, 'MediaTrack' 청크는 비디오 트랙의 적절한 부분과 다수의 추가적인 'MediaTrack' 청크를 참조하며, 이들 추가적인 'MediaTrack' 청크의 각각은 오디오 트랙이나 서브타이틀 트랙 중 하나를 참조한다. 일 실시예에서, 특정의 비디오 트랙에 대응하는 모든 오디오 트랙과 서브타이틀 트랙은 별도의 'MediaTrack' 청크를 이용하여 참조된다.
상술한 바와 같이, 'MenuTracks' 청크(204)는 메뉴의 오디오, 비디오 및 오버레이 미디어를 생성하는데 이용되는 미디어에 대한 참조를 포함한다. 일 실시예에서, 미디오 정보에 대한 참조는 'MenuTracks' 청크에 있는 'MediaSource'청크(196')와 'MediaTrack' 청크(198')를 이용하여 이루어진다. 일 실시예에서, 'MediaSource' 청크(196')와 'MediaTrack' 청크(198')는, 도 2f와 관련하여 설명한 부분에서의 방식으로 구현된다.
'TranslationTable' 청크(200)는 각 타이틀과 쳅터를 다양한 언어로 기술하는 문자열(text string)을 포함하는데 이용될 수 있다. 일 실시예에서, 'TranslationTable' 청크(200)는 적어도 하나의 'TranslationLookup' 청크(208)를 포함한다. 각 'TranslationLookup' 청크(208)는 'Title' 청크(202), 'Chapter' 청크(206) 또는 'MediaTrack' 청크(196')와 관련이 있고, 복수의 'Translation' 청크(210)를 포함한다. 'TranslationLookup' 청크의 각 'Translation' 청크는, 'TranslationLookup' 청크와 관련된 청크를, 'Translation' 청크에 의해 지시되는 언어로 기술하는 문자열을 포함한다.
도 2ga에는, 'DMNU' 청크 안에 포함된 다양한 청크 사이의 관계를 개념적으로 나타내고 있다. 도 2ga은 굵은 실선의 화살표시를 이용하여, 하나의 청크가 다른 청크에 포함되는 것을 보여준다. 화살표시가 가리키는 방향은 하나의 청크가 화살표가 시작되는 부분의 다른 청크에 포함되는 것을 나타낸다. 하나의 청크가 다른 청크를 참조하는 것은 점선으로 나타내고 있으며, 참조된 청크는 점선 화살표시로 나타내고 있다.
2.6. 'junk' 청크
'junk' 청크(41)는 본 발명의 실시예에 따른 멀티미디어 파일에 포함될 수 있는 임의 선택적인 청크이다. 'junk' 청크의 속성은 AVI 포맷에서 지정된다.
2.7. 'movi' 리스트 청크
'movi' 리스트 청크(42)는 다수의 'data' 청크를 포함한다. 'data' 청크가 포함할 수 있는 정보의 예는, 오디오, 비디오 또는 서브타이틀 데이터이다. 일 실시예에서, 'movi' 리스트 청크는 적어도 하나의 비디오 트랙, 다수의 오디오 트랙및 다수의 서브타이틀 트랙용 데이터를 포함한다.
도 2h에는, 하나의 비디오 트랙, 3개의 오디오 트랙 및 3개의 서브타이틀 트랙을 포함하는 멀티미디어 파일의 'movi' 리스트 청크(42)에 'data' 청크를 인터리브(삽입) 배치하는 것(인터리빙)이 나타나 있다. 편의상, 비디오를 포함하는 'data' 청크를 'video' 청크로 하고, 오디오를 포함하는 'data' 청크를 'audio' 청크라고 한다. 또한, 서브타이틀을 포함하는 'data' 청크를 'subtitle' 청크로 할 것이다. 도면에 표시된 'movi' 리스트 청크(42)에 있어서, 각 'video' 청크(262)는 각 오디오 트랙으로부터의 'audio' 청크(264)에 의해 다음 'video' 청크와 분리되어 있다. 여러 실시예에서, 'audio' 청크는 'audio' 청크에 후속하는 'video' 청크에 포함된 비디오의 일부에 대응하는 오디오 트랙의 일부를 포함한다.
인접한 'video' 청크는, 하나 이상의 'subtitle'청크(266)에 의해, 하나의 서브타이틀 트랙으로부터 분리될 수 있다. 일 실시예에서, 'subtitle' 청크(266)는 서브타이틀, 개시 시간, 정지 시간을 포함한다. 여러 실시예에서, 'subtitle' 청크는, 'subtitle' 청크에 후속하는 'video' 청크가 서브타이틀의 개시 시간에 동작하는 비디오 부분을 포함하도록, 'movi' 리스트 청크에 인터리브된다. 다른 실시예에서, 모든 'subtitle'과 'audio' 청크의 개시 시간은 이에 상응하는 비디오의 개시 시간에 앞선다. 일 실시예에서, 'audio'와 'subtitle' 청크는 대응되는 'video' 청크의 개시 시간부터 5초 범위 이내에 배치될 수 있고, 다른 실시예에서는, 파일 내의 오디오와 비디오를 표시할 수 있는 장치에 의해 버퍼링될 수 있는 비디오의 분량과 관련된 시간 내에 배치될 수 있다.
일 실시예에서, 'data' 청크는 'data' 청크가 속하는 스트림을 식별하기 위해 'FOURCC' 코드를 포함한다. 'FOURCC' 코드는 청크에서 정보의 타입을 규정하는 2자리 문자 코드가 뒤따르는 2자리 숫자 스트림 번호로 구성된다. 다른 'FOURCC' 코드는 2자리 숫자 스트림 번호가 뒤따르는 청크에서 정보의 타입을 정의하는 2자리 문자 코드를 포함하여 이루어진다.
2자리 문자 코드의 예를 다음의 표에 나타낸다.
FOURCC 코드에서 사용되는 선택된 2자리 문자 코드
2자리 문자 코드 설명
db 압축해제된 비디오 프레임
dc 압축된 비디오 프레임
dd 비디오 프레임용 DRM 키 정보
pc 팔레트 변경
wb 오디오 데이터
st 서브타이틀(텍스트 모드)
sb 서브타이틀(비트맵 모드)
ch 챕터
일 실시예에서, 'video' 청크(262)와 'audio' 청크(264)의 구조는 AVI 파일 포맷에 따른다. 다른 실시예에서, 비디오의 속성을 특정하거나 부호화된 미디어를 포함하는 청크용의 다른 포맷이 이용될 수 있다.
여러 실시예에서, 'subtitle' 청크(266) 내에 포함된 데이터는 다음과 같이 표현할 수 있다.
typedef struct_subtitlechunk {
FOURCC fcc ;
DWORD cb;
STR duration;
STR subtitle;
} SUBTITLECHUNK;
'fcc'의 값은 서브타이틀 트랙과 서브타이틀 트랙의 속성(텍스트 또는 비트맵 모드)을 나타내는 FOURCC 코드이다. 'cb'의 값은 구조의 크기를 특정한다. 'duration'의 값은 서브타이틀의 시작 지점과 끝 지점에서의 시간을 나타내며, 일 실시예에서는 hh:mm:ss.xxx-hh:mm:ss.xxx의 형태로 될 수 있다. hh는 시간을 나타내고, mm은 분을, ss는 초를, xxx는 밀리초를 각각 나타낸다. 'subtitle'의 값은 텍스트 모드에서의 서브타이틀의 유니코드 텍스트 또는 비트맵 모드에서의 서브타이틀의 비트맵 이미지를 포함한다. 본 발명의 여러 실시예에서는 서브타이틀 정보를 나타내기 위한 압축된 비트맵 이미지를 이용한다.
일 실시예에서, 'subtitle' 필드는 서브타이틀의 폭, 높이 및 온스크린 위치에 관한 정보를 포함한다. 또한, 'subtitle' 필드는 컬러(색채) 정보와 실제 비트맵의 화소를 포함할 수 있다. 여러 실시예에서, 런 랭스 부호화(run length encoding)는 비트맵을 표현하는데 필요한 화소 정보의 양을 감소시키는 데 이용할 수 있다.
본 발명에 따른 멀티미디어 파일은 디지털 저작권 관리 정보(digital rights management)를 포함할 수 있다. 이 정보는 주문형 비디오 애플리케이션에 이용될 수 있다. 디지털 저작권 관리기능에 의해 보호되는 멀티미디어 파일은, 지정된 재생 권한을 부여받은 사용자에 의해서만 바르게 재생될 수 있다. 일 실시예에서, 디지털 저작권 관리기능에 의해 트랙이 보호되고 있다는 것은, 'hdrl' 리스트 청크(상술한 내용 참조)에서의 트랙에 관한 정보에 표시될 수 있다. 디지털 저작권 관리기능에 의해 보호되는 트랙을 포함하는, 본 발명에 따른 멀티미디어 파일은, 'movi' 리스트 청크에서의 디지털 저작권 관리기능에 관한 정보를 포함할 수 있다.
도 2i에는, 비디오 트랙, 다수의 오디오 트랙, 적어도 하나의 서브타이틀 트랙, 및 디지털 저작권 관리기능을 가능하게 하는 정보를 포함하는 본 발명에 따른 멀티미디어 파일의 'movi'리스트 청크가 도시되어 있다. 'movi' 리스트 청크(42')는 각 비디오 청크(262') 이전에 'DRM' 청크(270)가 추가된, 도 2h에 도시된 'movi' 리스트 청크와 유사하다. 'DRM' 청크(270)는 디지털 저작권 관리기능 관련 정보를 포함하는 'data' 청크이고, FOURCC 코드 'nndd'에 의해 식별될 수 있다. 처음 2개의 문자인 'nn'은 트랙 번호를 나타내고, 다음 2개의 문자인 'dd'는 청크가 디지털 저작권 관리기능 관련 정보를 포함한다는 것을 의미한다. 일 실시예에서, 'DRM' 청크(270)는 'DRM' 청크와 동반하는'video' 청크(262')용의 디지털 저작권 관리기능 관련 정보를 제공한다. 디지털 저작권 관리기능에 의해 보호되는 비디오 트랙을 재생시키는 장치는, 'DRM' 청크의 정보를 이용하여, 'video' 청크의 비디오 정보를 복호화한다. 통상, 'video' 청크의 앞에 'DRM' 청크가 없으면, 'video' 청크가 보호되지 않는다는 의미로서 해석된다.
본 발명의 실시예에 따른 암호화 시스템에서, 비디오 청크는 부분적으로만 암호화된다. 부분적 암호화가 이용되는 'DRM' 청크는 'video' 청크의 암호화된 부분에 대한 참조와 암호화된 부분을 해독하는 데 이용될 수 있는 키(key)에 대한 참조를 포함하고 있다. 해독 키는 'strd' 청크(상술한 내용 참조)의 일부분에 해당하는 'DRM' 헤더에 위치할 수 있다. 해독 키는 스크램블처리되고 마스터 키로 암호화된다. 'DRM' 헤더는 마스터 키를 식별하는 정보를 포함한다.
도 2j에서는, 'DRM' 청크의 정보를 개념적으로 나타내고 있다. 'DRM' 청크(270)는 'frame' 값(280), 'status' 값(282), 'offset' 값(284), 'number' 값(286), 및 'key' 값(288)을 포함할 수 있다. 'frame' 값은 비디오의 암호화된 프레임을 참조하는데 이용될 수 있다. 'status' 값은 프레임이 암호화되었는지 여부를 나타내는데에 이용되고, 'offset' 값(284)은 프레임 내의 암호화된 블록의 개시 부분을 나타내고, 'number' 값(286)은 블록 내의 암호화된 바이트의 수를 나타낸다. 'key' 값(288)은 블록을 해독하는데 이용될 수 있는 해독 키를 참조한다.
2.8. 'idxl' 청크
'idxl'청크(44)는 'movi'리스트 청크(42)에서 'data' 청크를 인덱스할 수 있는 임의 선택적 청크이다. 일 실시예에서, 'idxl' 청크는 AVI 포맷에서 특정되는 것으로 실행된다. 다른 실시예에서, 'idxl' 청크는 'movi' 리스트 청크에서 각 데이터 청크의 파일 내의 위치를 참조하는 데이터 구조를 이용하여 구현된다. 여러 실시예에서, 'idxl' 청크는 데이터의 트랙 번호와 데이터의 타입에 의해 각 'data' 청크를 식별한다. 이를 위하여, 상기 언급한 FOURCC 코드가 이용될 수 있다.
3. 멀티미디어 파일의 부호화
본 발명의 실시예는 많은 방법으로 멀티미디어 파일을 생성할 수 있다. 예를 들어, 본 발명에 따른 시스템은 별개의 비디오 트랙, 오디오 트랙 및 서브타이틀 트랙을 포함하는 파일로부터 멀티미디어 파일을 생성할 수 있다. 또한, 메뉴 정보나 "메타데이터"와 같은 다른 정보를 작성하여, 파일에 삽입할 수 있다.
본 발명에 따른 다른 시스템도 디지털 비디오 디스크(digital video disk: DVD) 상의 다양한 파일로부터 정보를 추출할 수 있으며, 단일의 멀티미디어 파일을 작성할 수 있다. DVD가 정보의 초기 소스인 경우, 본 발명의 시스템은 더 많은 압축을 얻기 위해 코덱(codec)을 이용할 수 있고, 오디오를 리청크(re-chunk)함으로써, 오디오 청크가 새롭게 작성한 멀티미디어 파일 내의 비디오 청크에 대응하도록 할 수 있다. 또한, DVD 메뉴 시스템에서의 메뉴 정보는 파싱(parsing) 처리되어, 멀티 미디어 파일에 포함된 메뉴 정보를 생성할 수 있다.
다른 실시예에서는 본 발명의 실시예에 따라 기존의 멀티미디어 파일에 부가 컨텐츠를 추가함으로써 새로운 멀티미디어 파일을 생성할 수 있다. 부가 컨텐츠를 추가하는 예는, 해설(예컨대, 감독의 논평, 작성한 이후의 휴가 비디오의 이야기 설명)을 포함하는 오디오 트랙 등의 부가 오디오 트랙을 파일에 추가할 수 있을 것이다. 멀티미디어 파일에 인터리브된 부가 오디오 트랙 정보는, 새로운 오디오 트랙의 재생을 가능하게 하기 위하여 멀티미디어 파일에서의 메뉴 정보를 수정함으로써 가능하다.
3.1. 저장된 데이터 트랙을 이용한 생성
본 발명의 실시예에 따른 멀티미디어 파일을 생성하기 위한 시스템은 도 3a에 나타나 있다. 시스템(350)의 주요 구성요소는 인터리버(interleaver)(352)이다. 인터리버는, 정보의 청크를 수신하여 인터리브함으로써, 본 발명의 실시예에 따른 멀티 미디어 파일을 상기 설명한 포맷으로 생성할 수 있다. 인터리버는 메타데이터 매니저(354)로부터 "메타데이터"에 관한 정보를 수신한다. 인터리버는 본 발명의 실시예에 따른 멀티미디어 파일을 기억 장치(356)에 출력한다.
통상, 인터리버에 제공되는 청크는 기억 장치에 저장된다. 여러 실시예에서, 모든 청크는 동일한 기억 장치에 저장된다. 다른 실시예에서, 청크는 다양한 기억 장치로부터 인터리브에 제공되거나, 생성한다음 인터리브에 실시간으로 제공될 수 있다.
도 3a에 도시된 실시예에서는, 'DMNU' 청크(358)와 'DXDT' 청크(360)가 이미 생성되어 기억 장치에 저장되어 있다. 비디오 소스(362)는 기억 장치에 저장되고, 비디오 디코드(364)를 이용하여 복호화된 후, 비디오 인코더(366)를 이용하여 암호화된 다음, 'video' 청크를 생성하게 된다. 오디오 소스(368)도 역시 기억 장치에 저장된다. 오디오 청크는, 오디오 디코더(370)를 이용한 오디오 소스를 복호화하고, 이 복호화된 오디오를 오디오 인코더(372)를 이용하여 부호화하여 생성된다. 'subtitle' 청크는 기억 장치에 저장된 텍스트 서브타이틀(374)로부터 생성된다. 서브타이틀은 제1 트랜스코더(376)에 제공되고, 이 트랜스코더에 의해 복수의 서브타이틀 포맷이 초기 비트맵 포맷으로 전환된다. 일 실시예에서, 저장된 서브타이틀 포맷은 SRT, SUB, 또는 SSA와 같은 포맷이 될 수 있다. 또한, 비트맵 포맷은 컬러 팔레트(palate) 조사 테이블을 포함하는 4비트 비트맵의 포맷이 될 수 있다. 컬러 팔레트 조사 테이블은, 16개로 이루어진 4비트 컬러 코드의 각각에 대해 24비트 컬러 깊이를 갖는 식별자를 포함한다. 단일의 멀티미디어 파일은 하나 이상의 컬러 팔레트 조사 테이블(표 2에서의 "pc" 팔레트 FOURCC 코드 참조)을 포함한다. 4비트 비트맵은 각 메뉴가 1천6백만 컬러의 팔레트에서 동시에 취한 16개의 다른 컬러를 가질 수 있다. 다른 실시예에서, 픽셀 당 비트의 수와 컬러 깊이를 다르게 할 수 있다. 제1 트랜스코더(376)의 출력은 제2 트랜스코더(378)에 제공되고, 제2 트랜스코더(378)에서는 비트맵을 압축한다. 일 실시예에서, 비트맵을 압축하기 위하여 런 랭스 부호화가 이용된다. 다른 실시예에서, 다른 적절한 압축 포맷이 이용된다.
일 실시예예서, 다양한 인코더, 디코더, 트랜스코더 사이의 인터페이스(interface)는 마이크로소프트사에서 지정한 Direct Show 표준을 따른다. 다른 실시예에서, 인코딩, 디코딩, 트랜스코딩을 수행하기 위한 소프트웨어는 이러한 표준을 따를 필요는 없다.
도시된 실시예에서, 각각의 미디어 소스에 대해 개별의 처리용 구성요소가 도시되어 있다. 다른 실시예에서 리소스(resources)는 공유 가능하다. 예컨대, 단일 오디오 디코더와 오디오 인코더는 모든 소스로부터의 오디오 청크를 생성하는 데 이용될 수 있다. 전형적으로, 전체 시스템은 소프트웨어를 이용하고 하드 디스크 드라이버와 같은 기억 장치에 연결된 컴퓨터에서 수행될 수 있다.
상술한 방법으로 인터리버를 사용하기 위하여, 본 발명의 실시예에 따라, 'DMNU' 청크, 'DXDT' 청크, 'video' 청크, 'audio' 청크 및 'subtitle' 청크를 생성하여, 인터리버에 제공되어야 한다. 본 발명의 실시예에 따른 멀티미디어 파일에서의 다양한 청크 각각을 생성하기 위한 과정은 이하 더 구체적으로 설명한다.
3.2. 'DXDT' 청크의 생성
'DXDT' 청크는 많은 방법으로 생성될 수 있다. 일 실시예에서, 'meta data'는 그래픽 사용자 인터페이스를 통해 데이터 구조로 입력되어, 'DXDT' 청크로 파싱 처리된다. 일 실시예에서, 'meta data'는 일련의 주어부(subject), 술어부(predicate), 객체부(object) 및 출처(authority) 서술문으로 표현된다. 다른 실시예에서, 'meta data' 문은 다양한 포맷으로 표현된다. 여러 실시예에서, 각 'meta data' 문은 파싱 처리되어 개별 청크로 된다. 다른 실시예에서, 제1 포맷(주어부, 술어부, 객체부, 및 출처 표현과 같은)에서의 몇몇 'meta data' 문은 파싱 처리되어 제1 청크로 되고, 다른 포맷으로 된 다른 'meta data' 문은 파싱 처리되어 개별 청크로 된다. 일 실시예에서, 'meta data' 문은 XML 형식의 파일로 기록되고, XML 형식의 파일은 'DXDT' 청크 내에 청크를 작성하도록 파싱 처리된다.
도 3b에는, XML 형식의 파일 내에 포함된 일련의 'meta data' 문으로부터 'DXDT' 청크를 생성하기 위한 시스템의 예를 도시하고 있다. 시스템(380)은 파서(parser)(384)에 제공될 수 있는 XML 형식의 파일(382)을 포함한다. XML 형식의 파일은 XML로 암호화된 'meta data'를 포함한다. 파서는 XML을 분석하고 'meta data' 문을 상술한 'meta data' 청크 포맷에 따라 'DXDT' 청크로 기록된 청크로 변환함으로써, 'DXDT' 청크(386)를 생성한다.
3.3. 'DMNU' 청크의 생성
도 3c에는, 본 발명의 실시예에 따른 'DMNU' 청크를 생성하기 위해 이용될 수 있는 시스템을 도시하고 있다. 시스템(420)을 생성하는 메뉴 청크는 미디어 모델(422)과 미디어 정보를 입력해야 한다. 미디어 정보는, 비디오 소스(424), 오디오 소스(426), 및 오버레이 소스(428)의 형식을 취할 수 있다.
시스템을 생성하는 메뉴 청크를 입력으로 이용하는 'DMNU' 청크의 생성은, 복수의 중간 파일(intermediate file)의 생성을 포함한다. 미디어 모델(422)은 XML 형식의 파일(430)을 생성하는 데 이용되고, 미디어 정보는 복수의 AVI 파일(432)을 생성하는 데 이용된다. XML 형식의 파일은 모델 트랜스코더(434)에 의해 작성된다. AVI 파일(432)은 인터리버(436)를 이용하는 비디오, 오디오, 오버레이 정보를 인터리빙함으로써 작성된다. 비디오 정보는, 비디오 소스(424)를 복호화하고 아래 설명될 방법으로 재부호화하기 위해, 비디오 디코더(438)와 비디오 인코더(440)를 이용하여 얻을 수 있다. 오디오 정보는 오디오를 복호화하고 아래 설명될 방법으로 부호화하기 위하여, 오디오 디코더(442)와 오디오 인코더(444)를 이용하여 얻을 수 있다. 오버레이 정보는 제1 트랜스코더(446)와 제2 트랜스코더(448)를 이용하여 생성된다. 제1 트랜스코더(446)는 오버레이를 표준 비트맵과 같은 그래픽 표현으로 전환하고, 제2 트랜스코더(448)는 그래픽 정보를 취하여, 멀티미디어 파일에 포함시켜야 할 때 포맷화한다. 메뉴를 만들기 위해 요구되는 정보를 포함하는 XML 파일 및 AVI 파일이 생성되면, 메뉴 생성기(menu generator)(450)는 'DMNU' 청크(358)를 생성하기 위한 정보를 이용할 수 있다.
3.3.1. 메뉴 모델
일 실시예에서, 미디어 모델은 모든 메뉴와 보조 구성요소(subcomponents)를 나타내는 객체 지향(object-oriented)의 모델이다. 미디어 모델은 메뉴를 계층구조로 조직화하고, 메뉴가 언어 선택(language selection)에 의해 조직화되도록 한다. 도 3d에, 본 발명의 실시예에 따른 미디어 모델이 도시되어 있다. 미디어 모델(460)은 최상단의 'MediaManager' 객체(462)를 포함하고, 'MediaManager' 객체(462)는, 복수의 'LanguageMenu' 객체(463), 'Media' 객체(464) 및 'TranslationTable' 객체(465)와 관련되어 있다. 'MenuManager' 역시 디폴트(default) 메뉴 언어를 포함한다. 일 실시예에서, 디폴트 언어는 ISO 639 2문자 언어 코드로 표시될 수도 있다.
'LanguageMenu' 객체는 언어 선택에 의해 다양한 메뉴용 정보를 조직한다. 소정 언어에 대한 모든 'Menu' 객체(466)는 그 언어에 대한 'LanguageMenu'객체(463)와 연관되어 있다. 각 'Menu' 객체는 복수의 'Button' 객체(468)와 관련이 있고, 복수의 'MediaTrack' 객체(488)를 참조한다. 참조된 'MediaTrack' 객체(488)는 'Menu' 객체에 대한 배경 비디오와 배경 오디오를 나타낸다.
각 'Button' 객체(468)는 'Action' 객체(470)와 'Rectangle' 객체(484)와 연관되어 있다. 또한, 'Button' 객체(468)는, 버튼이 디스플레이상에 강조되었을 때 이용되는 오버레이를 나타내는 'MediaTrack' 객체(488)에 대한 참조를 포함한다. 각 'Action' 객체(470)는 'MenuTransition' 객체(472), 'ButtonTransition' 객체(474), 'ReturnToPlay' 객체(476), 'Subtitle Selection' 객체(478), 'AudioSelection' 객체(480) 및 'PlayAction' 객체(482)와 같은 복수의 객체와 연관되어 있다. 이러한 각객체는 사용자로부터의 다양한 입력에 대한 메뉴 시스템의 응답을 규정한다. 'MenuTransition' 객체는 동작에 따라 변환되어야 할 메뉴를 나타내는 'Menu' 객체에 대한 참조를 포함하고 있다. 'ButtonTransition' 객체는 동작에 따라 강조되어야 하는 버튼을 나타낸다. 'ReturnToPlay' 객체는 플레이어로 하여금 피처(feature)의 재생을 재개하도록 할 수 있다. 'SubtitleSelection' 및 'AudioSelection' 객체는 'Title' 객체(487)(이하 참조)에 대한 참조를 포함한다. 'PlayAction' 객체는 'Chapter' 객체(492)(이하 참조)에 대한 참조를 포함한다. 'Rantangle' 객체(484)는 스크린상의 버튼이 차지하는 부분을 나타낸다.
'Media' 객체(464)는 메뉴 시스템에서 참조된 미디어 정보를 나타낸다. 'Media' 객체는 하나의 'MenuTrack' 객체(486) 및 이와 관련된 다수의 'Title' 객체(487)을 포함한다. 'MenuTracks' 객체(486)는 메뉴(즉, 배경 오디오, 배경 비디오 및 오버레이)를 구성하기 위해 이용되는 미디어를 나타내는 'MediaTrack' 객체(488)를 참조한다.
'Title' 객체(487)는 멀티미디어 재현을 나타내며, 다수의 'Chapter' 객체(492) 및 이와 관련된 'MediaSource' 객체(490)를 구비한다. 'Title' 객체는 'TranslationLookup' 객체(494)에 대한 참조를 포함한다. 'Chapter' 객체는 멀티미디어 재현에서의 소정의 포인트를 나타내며, 이와 관련된 다수의 'MediaTrack' 객체(488)를 구비한다.
'Chapter' 객체는 'TranslationLookup' 객체(494)에 대한 참조를 포함한다. 'Chapter' 객체와 관련된 각각의 'MediaTrack' 객체는 멀티미디어 재현의 오디오, 비디오 또는 서브타이틀 트랙의 포인트를 나타내고, 'MediaSource' 객체(490) 및 'TranslationLookup' 객체(494)를 참조한다(이하 설명함).
'TranslationTable' 객체(465)는 'Title' 객체, 'Chapter' 객체 및 'Mediatrack' 객체에 의해 지시되는 멀티미디어 재현의 다양한 부분을 기술하는 다수의 문자열을 그룹화한다. 'TranslationTable' 객체(465)는 이와 관련된 다수의 'TranslationLookup' 객체(494)를 구비한다. 각각의 'TranslationLookup' 객체는 특정의 객체를 나타내며, 이와 관련된 다수의 'Translation' 객체(496)를 구비한다. 'Translation' 객체는 'TranslationLookup' 객체에 의해 지시되는 객체를 특정의 언어로 기술하는 문자열을 각각 나타낸다.
상기 설명한 다양한 객체를 생성하고, 필요한 연관성 및 객체간의 참조를 설정하도록 구성된 소프트웨어를 이용하여 미디어 객체 모델이 구성될 수 있다.
3.3.2
XML 파일의 생성
XML 구성 파일은 메뉴와 이들의 부분 구성요소 모두를 나타내는 메뉴 모델로부터 생성된다. XML 구성 파일은 메뉴에 의해 사용되는 모든 미디어 파일을 식별한다. XML은 객체 모델을 파싱 처리하여 XML 코드화하는 적절한 파서 애플리케이션을 수행시킴으로써 생성될 수 있다.
다른 실시예에서, 비디오 편집 애플리케이션에 의해 제공되는 사용자 인터페이스에 의해, 사용자는 메뉴 모델을 작성하지 않고 XML 구성 파일을 직접 생성할 수 있다.
다른 메뉴 시스템이 DVD 메뉴 등의 메뉴 모델의 기본이 되는 실시예에서, 메뉴는 본 발명의 실행에 따라 생성된 멀티미디어 파일에 포함되지 않는 컨텐츠에 관련된 메뉴 옵션을 제거하기 위해 사용자에 의해 제거될 수 있다. 일실시예에서, 이러한 제거는 메뉴 모델로부터 객체를 제거할 수 있도록 해주는 그래픽 사용자 인터페이스를 제공함으로써 이루어질 수 있다. 다른 실시예에서, 메뉴를 제거하는 것은, XML 구성 파일을 편집할 수 있는 텍스트 인터페이스 또는 그래픽 사용자 인터페이스를 제공함으로써 달성될 수 있다.
3.3.3 미디어 정보
'DMNU' 청크가 생성되면, 메뉴 생성기(450)에 제공된 미디어 정보는, 메뉴 모델에서 특정된 버튼에 대한 배경 비디오, 배경 오디오 및 전경 오버레이를 제공하도록 요구된 데이터를 포함한다(이하의 설명 참조). 일실시예에서, 캘리포니아 산타클라라에 소재하는 Roxio, Inc.에서 만든 Video Wave 등의 비디오 편집 애플리케이션은, 각각의 메뉴에 대해 비디오, 오디오 및 버튼 선택 오버레이를 표현하는 소스 미디어 트랙을 제공하는데 이용된다.
3.3.4 중간 AVI 파일의 생성
상술한 바와 같이, 배경 비디오, 배경 오디오 및 전경 버튼 오버레이로서 이용되는 미디어 트랙은 하나 이상의 메뉴에 대해 단일의 AVI 파일에 저장된다. 메뉴 AVI 파일에 미디어 트랙을 포함하는 청크는 비디오, 오디오 및 버튼 오버레이 트랙을 인터리브하도록 설계된 소프트웨어를 이용하여 작성될 수 있다. 'audio', 'video' 및 'overlay' 청크(즉, 오버레이 정보를 포함하는 'subtitle' 청크)는 인터리버(interleaver)를 이용하여 AVI 포맷에 호환가능한 파일로 인터리브된다.
상술한 바와 같이, 각각의 메뉴에 대해 개별 AVI 파일이 작성될 수 있다. 다른 실시예에서, 배경 오디오, 배경 비디오 및 전경 오버레이 정보를 제공하기 위해 이용되는 미디어 정보를 포함하기 위하여, 다른 파일 포맷이나 단일의 파일이 이용될 수 있다.
3.3.5 XML 구성 파일 및 AVI 파일의 조합
일실시예에서, 컴퓨터는 XML 구성 파일로부터의 정보를 파싱 처리하여 'WowMenu' 청크(이하 설명됨)를 작성하도록 구성된다. 또한, 컴퓨터는 각각의 메뉴에 대해 미디어를 포함하는 AVI 파일을 이용하여 'MRIF' 청크(이하 설명됨)를 작성할 수 있다. 컴퓨터는 'MRIF' 청크에서의 미디어 청크와 'WowMenu' 청크 사이에서 필요한 참조를 작성함으로써 'DMNU' 청크의 생성을 완료할 수 있다. 몇몇 실시예에서, 메뉴 정보는 암호화될 수 있다. 암호화는 'video' 청크와 관련하여 아래 설명하는 것과 유사한 방식으로 'MRIF' 청크에 포함된 미디어 정보를 암호화함으로써 달성될 수 있다. 다른 실시예에서는 다른 암호화 기법이 이용될 수 있다.
3.3.6 객체 모델로부터 메뉴의 자동 생성
도 3d을 보면, 풀 메뉴보다 컨텐츠가 적은 메뉴는 'Media' 객체(464)와 관련된 'Title' 객체(487)를 단순히 조사함으로써 메뉴 모델로부터 자동으로 생성될 수 있다. 본 발명의 실시예에 따라 메뉴를 자동을 생성하는데 이용되는 객체가 도 3da에 도시되어 있다. 소프트웨어는 이용할 오디오 및 서브타이틀 트랙의 선택 및 멀티미디어 제현의 특정의 선택을 가능하게 하는 단순한 메뉴에 대해 XML 구성 파일을 생성할 수 있다.
3.3.7 단일의 구성 파일을 이용한 'DXDT' 및 'DMNU' 청크의 생성
본 발명의 몇몇 실시예에 따른 시스템은 'DXDT' 및 'DMNU' 청크를 생성하기 위해 XML 파일을 이용하고 'meta data' 및 메뉴 정보를 포함하는 단일의 XML 구성 파일을 생성할 수 있다. 이들 시스템은 메뉴 객체 모델과 'meta data' 정보를 이용하여 XML 구성 파일을 유도한다. 다른 실시예에서, 구성 파일은 XML이 아니어도 된다.
3.4 'audio' 청크의 생성
본 발명의 실시예에 따른 멀티미디어 파일의 'movi' 리스트 청크에서의 'audio' 청크는 오디오 소스를 복호화하고 그 소스를 본 발명에 따라 'audio' 청크로 부호화함으로써 생성될 수 있다. 일실시예에서, 'audio' 청크는 mp3 코덱을 이용하여 부호화될 수도 있다.
3.4.1 오디오 리청크
대응하는 'video' 청크의 컨텐츠에 대응하는 오디오 정보를 포함하지 않는 청크에 오디오 소스가 제공되는 경우, 본 발명의 실시예는 오디오를 리청크(re-chunk)할 수 있다. 오디오를 리청크하는데 이용될 수 있는 프로세스를 도 3e에 나타낸다. 이 프로세스(480)는 'video' 청크의 식별(482), 'video' 청크와 동반하는 오디오 정보의 식별(484) 및 새로운 'audio' 청크를 작성(488)하기 위하여 기존의 오디오 청크로부터 오디오 정보를 추출(486)하는 과정을 포함한다. 이 프로세스는 모든 오디오 소스가 리청크되었다는 판정(490)이 이루어질 때까지 반복된다. 이 시점에서, 오디오는 리청크 과정이 완료(492)된다.
3.5 'video' 청크의 생성
상술한 바와 같이, 비디오 청크를 작성하는 프로세서는 비디오 소스를 복호화하고, 복호화된 비디오를 'video' 청크로 부호화하는 과정을 포함할 수 있다. 일실시예에서, 각각의 'video' 청크는 단일의 비디오 프레임에 대한 정보를 포함한다. 복호화 프로세스는 비디오를 특정의 포맷으로 포맷화하고 압축해제될 수 있는 표준 비디오 포맷으로 포맷화되는 비디오를 복호화하는 과정을 포함한다. 부호화 과정은 표준 비디오를 수신하고, 이 비디오를 부호화하며, 부호화된 비디오를 이용하여 'video' 청크를 생성하는 과정을 포함한다.
본 발명의 실시예에 따른 비디오 인코더는 도 3f에 개념적으로 도시되어 있다. 비디오 인코더(500)는 표준 비디오 정보(504)를 전처리(502)한다. 전처리된 비디오에 움직임 보상(508)을 제공하기 위하여 전처리된 비디오에 대해 움직임 추정(506)이 수행된다. 움직임 보상된 비디오에 대해 이산 코사인 변환(DCT 변환)(510)이 수행된다. DCT 변환 이후에, 비디오는 양자화되고(512), 예측(514)이 수행된다. 움직임 추정의 결과를 이용하여 생성된 움직임 코딩(520)과 비디오의 텍스트 코딩된(518) 버전을 조합함으로써, 압축된 비트스트림(516)이 생성된다. 압축된 비트스트림은 'video' 청크를 생성하는데 이용된다.
움직임 추정(506)을 수행하기 위하여, 시스템은 복호화 장치에 의해 복호화될 비디오의 사전에 어떻게 프레임을 처리했는지를 알고 있어야 한다(예컨대, 압축된 비디오를 플레이어가 보려고 압축해제한 경우). 이 정보는 양자화기(512)의 출력을 역양자화(522)함으로써 얻어질 수 있다. 역 DCT(542)는 역 양자화기의 출력에 대해 수행될 수 있다. 움직임 추정 프로세서 동안의 액세스를 위해 그 결과가 프레임 단위로 저장될 수 있다.
본 발명의 실시예에 따른 멀티미디어 파일은 다수의 사이코비주얼 인핸스먼트(528)를 포함할 수 있다. 사이코비주얼 인핸스먼트는 인간의 지각에 기초하여 비디오를 압축하는 방식이다. 이러한 기술은, 이하 설명하며, 비디오의 다양한 특징을 표현하기 위해 양자화기에 의해 이용되는 비트의 수를 변경하는 과정을 포함하는 것이 일반적이다. 부호화 프로세스의 다른 특징도 사이코비주얼 인핸스먼트를 포함할 수 있다.
일실시예에서, 모든 부호화 시스템(500)은 상기 설명한 다양한 기능을 수행하기 위하여 구성된 컴퓨터를 이용하여 구현될 수 있다. 이들 기능들의 상세한 구현의 예를 이하 설명한다.
3.5.1 전처리
본 발명의 실시예에 따라 인코더(500)에 의해 임의 선택적으로 수행될 수 있는 전처리 동작(502)은 부호화된 비디오의 품질을 향상시키기 위하여 다수의 신호 처리 기술을 포함할 수 있다. 일실시예에서, 전처리(502)는 디인터레이싱(deinterlacing), 시간/공간 노이즈 감소 및 리사이징(resizing) 중 하나 또는 모두를 포함할 수 있다. 이들 전처리 기술 중 3가지 모두가 사용되는 실시예에 있어서, 디인터레이싱은 시간/공간 노이즈 감소 및 리사이징에 후속해서 수행되는 것이 일반적이다.
3.5.2 움직임 추청 및 보상
본 발명의 실시예에 따른 비디오 인코더는 다수의 프레임에서 반복되는 픽셀에 대한 검색에 의해 비디오 트랙을 표현하는데 요구되는 픽셀의 수를 감소시킬 수 있다. 필수적으로, 비디오에서의 각각의 프레임은 이전에 가졌던 것과 동일한 수의 픽셀을 포함하는 것이 일반적이다. 인코더는 각 프레임 사이에서 픽셀의 매칭(예컨대, 매크로블록, 픽셀, 하프픽셀, 쿼터픽셀)에 대한 몇 가지 타입의 검색을 수행할 수 있으며, 이미지 품질의 감소 없이 이러한 용장성을 제거할 수 있다. 움직임 추청을 이용하여, 인코더는 모든 프레임에 대해 전체 화면을 저장하지 않고 최후의 프레임 이후에 발생된 변화를 기록함으로써 대부분의 화면을 표현할 수 있다. 움직임 추정 동안, 인코더는 프레임을 분할하고 해석하여 균일한 그리드의 블록(매크로블록이라고도 함)을 생성한다. 프레임 내의 각각의 '매크로블록'에 대해, 인코더는 이전 프레임에서의 매칭 블록을 발견하고자 할 수 있다. 매칭 블록을 찾는 과정을 '움직임 검색'이라고 한다. '매크로블록'의 움직임은 2차원 벡터, 즉 (x, y) 표현으로 표시될 수 있다. 움직임 검색 알고리즘은 다양한 정확도로 수행될 수 있다. 홀플(whole-ple) 검색은 인코더가 일정 시간에 1차원 픽셀에서의 참조 프레임을 통해 스테핑함으로써 매칭 블록을 찾는 것이다. 하프픽셀 검색에 있어서, 인코더는 참조 프레임을 통해 일정 시간에 픽셀의 절반에 의한 차원을 스테핑함으로써 매칭 블록을 찾는다. 인코더는 픽셀보다 큰 입도를 포함하는 쿼터픽셀, 다른 픽셀 프랙션이나 검색을 이용할 수 있다.
도 3f에 도시된 인코더 실시예는 본 발명의 실시예에 따라 움직임 추정을 수행한다. 움직임 추정 동안, 인코더는 프레임 기억 장치(526)에 저장되는, 이전 프레임과 전처리된 비디오(502)에 대한 액세스를 갖는다. 이전 프레임은 양자화하기의 출력을 수신하고, 역 양자화(522)와 역 DCT 변환(524)을 수행함으로써 생성된다. 역 기능을 수행하는 이유는 프레임 기억 장치 내의 프레임이 본 발명의 실시예에 따라 플레이어에 의해 복호화될 때 나타나는 것처럼 하기 위해서이다.
움직임 보상은 움직임 추정의 결과로서 생성된 블록과 벡터를 가짐으로써 수행된다. 그 결과는 추가의 텍스트 정보를 제공함으로써 실제의 이미지에 대해 매칭될 수 있는 부호화된 이미지의 근사값이다.
3.5.3 이산 코사인 변환
도 3f에 도시된 인토더에 의해 수행되는 DCT 및 역DCT는 ISO/IEC 14496-2:2001(E), 부록 A.1(코딩 변환)에서 특정한 표준에 따라 이루어진다.
3.5.3.1 변환의 설명
DCT는 주파수 영역 표현에 대한 공간 영역 데이터 포인트의 세트를 변환하는 방법이다. 비디오 압축의 경우, 2차원 DCT는 이미지 블록을 용장성이 용이하게 이용되는 형태로 변환한다. 주파수 영역 블록은 엔트로피 코딩에 의해 용이하게 압축되는 희소 행렬(sparse matrix)이 될 수 있다.
3.5.3.2 변환에 대한 사이코비주얼 인핸스먼트
DCT 계수는, 보는 사람에 대해 용이하게 보이는 영역에서의 양자화 노이즈를 감소시킴으로써 양자화된 이미지의 화질을 개선하기 위해 변경될 수 있다. 또한, 파일 사이즈는 보는 사람에 의해 용이하게 분간이 가능하지 않은 이미지 부분에서의 양자화 노이즈를 증가시킴으로써 감소될 수 있다.
본 발명의 실시예에 따른 인코더는 'slow'(슬로우) 사이코비주얼 인핸스먼트로 불리는 기능을 수행할 수 있다. '슬로우' 사이코비주얼 인핸스먼트는 비디오 이미지의 블록을 분석하고 비디오의 외양을 열화시키지 않고 몇몇 비트를 세이브시킬 수 있는 몇몇 노이즈를 결정한다. 이 프로세스는 블록당 하나의 메트릭스를 이용한다. 이 프로세스를 '슬로우' 프로세스라고 하고, 이는 블로킹 또는 링잉 현상(ringing artifacts)를 피하기 위해 상당한 양의 연산을 수행하기 때문이다.
본 발명의 실시에에 따른 인코더의 다른 예는, 'fast'(패스트) 사이코비주얼 인핸스먼트를 수행한다. '패스트' 사이코비주얼 인핸스먼트는 블록 내에 보이는 노이즈를 제어할 수 있으며 양자화 노이즈를 정형화할 수 있다.
'슬로우' 및 '패스트' 사이코비주얼 인핸스먼트에 대해서는 이하 더 상세히 설명한다. 다른 사이코비주얼 인핸스먼트는 이미지 에지에서의 노이즈를 제거하는 것, 사람의 눈에 명백하게 보이지 않는 이미지 영역에서의 양자화 노이즈의 더 높은 레벨을 집중시키도록 하는 본 발명의 실시예에 따라 수행될 수 있다.
3.5.3.3 '슬로우' 사이코비주얼 인핸스먼트
'슬로우' 사이코비주얼 인핸스먼트는, 비디오 이미지의 블록을 분석하고, 비디오의 외양을 열화시키지 않는 몇몇 노이즈가 비트를 세이브시킬 수 있는지 여부를 판정한다. 일실시예에서, 이 알고리즘은 2가지 단계를 포함한다. 첫 번째 단계는 입력 휘도 픽셀에 대해 식별된 이미지의 생성을 포함한다. 식별된 이미지는 이하의 방식으로 생성된다. 두 번째 단계는 양자화 이전에 DCT 계수를 변경하는 단계를 포함한다.
3.5.3.3.1 식별된 이미지의 생성
식별된 이미지의 각각의 픽셀 P'xy는 이하에 따라 압축해제된 소스 픽셀 Pxy로부터 연산된다.
Figure 112006048936875-pct00001
여기서, P'xy는 0 에서 255까지의 범위(8 비트 비디오라고 가정함)를 가질 것이다.
3.5.3.2 DCT 계수의 변경
DCT 계수의 변경은 블록 링잉 팩터의 연산, 블록 에너지의 연산 및 계수 값의 실질적인 변경을 포함할 수 있다.
3.5.3.3.3 블록 링잉 팩터(block ringing factor)
이미지의 각각의 블록에 대해, 식별된 이미지의 로컬 영역에 기초하여 "링잉 팩터"(ringing factor)가 계산된다. 블록이 8x8 블록으로 규정된 실시예인 경우, 링잉 팩터는 다음과 같은 방법을 이용하여 결정될 수 있다.
처음에, 8x8 블록 이내의 최대 휘도 및 최소 휘도 픽셀에 기초하여 임계값이 결정된다.
Figure 112006048936875-pct00002
식별된 이미지와 임계값은 블록의 이웃에 있는 "플랫"(flat) 픽셀의 맵을 생성하는데 이용될 수 있다. 상이한 임계값을 갖는 각 블록의 가능성 때문에 전체 프레임에 대한 플랫 픽셀의 맵의 작성을 방지한다. 이 맵은 다음과 같이 생성된다.
P' xy threshold block 이면, flat xy = 1
그외의 경우에는 flat xy = 0
플랫 픽셀의 맵은 간단한 논리 연산에 따라 필터링된다.
flat xy =1, flat x -1y =1, flat xy -1 =1, flat x -1y-1 =1 이면, flat' xy = 1
그외의 경우에는 flat' xy
필터링된 맵에서의 플랫 픽셀은 8x8 블록에 차지하는 9x9 블록에 대해 카운트된다.
Figure 112006048936875-pct00003
가시적 링잉 현상의 위험은 다음 식을 이용하여 평가될 수 있다.
Figure 112006048936875-pct00004
8x8 블록의 링잉 팩터는 다음 식을 이용하여 유도될 수 있다.
ringingrisk > 255 이면 Ringingfactor =0
ringingrisk < 0 이면 Ringingfactor = 255
그외의 경우에는 Ringingfactor = 255 - ringingrisk
3.5.3.3.4 블록 에너지의 연산
이미지의 블록에 대한 에너지는 다음의 과정에 의해 산출될 수 있다. 몇몇 실시예에서, 이미지의 8x8 블록이 이용된다.
소스 이미지에 대해 순방향 DCT가 수행된다.
Figure 112006048936875-pct00005
여기서, S는 관련된 8x8 블록의 64개의 소스 이미지 휘도 값이며, T는 소스 이미지의 동일 부분의 변환된 버전이다.
특정한 계수 위치에서의 에너지는 계수 값을 제곱계산한 것으로 규정된다.
0 = k = 63인 경우 ek = t2 k
여기서, tk는 변환된 블록 T의 k번째 계수
3.5.3.3.5 계수 수정
DCT 계수의 수정은 이하의 과정에 따라 본 발명의 실시예에서 수행될 수 있다. 몇몇 실시예에서, 이 과정은 양자화 이전에 논제로(non-zero) AC DCT 계수에 대해 수행된다. 각각의 계수의 크기는 작은 델타에 의해 변경되고, 이 델타의 값은 사이코비주얼 기술에 따라 결정된다.
각 논제로 AC 계수 ck의 DCT 계수 수정은 다음 공식을 이용하여 로컬 및 블록 에너지에 기초하여 에너지를 계산함으로써 수행된다.
Figure 112006048936875-pct00006
여기서, ak는 이하의 표에 기재되어 있는 것과 같이 계수 위치에 기초하는 값을 갖는 상수이다.
계수 테이블
0.0 1.0 1.5 2.0 2.0 2.0 2.0 2.0
1.0 1.5 2.0 2.0 2.0 2.0 2.0 2.0
1.5 2.0 2.0 2.0 2.0 2.0 2.0 2.0
2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0
2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0
2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0
2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0
2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0
에너지는 다음 관계식을 이용하여 블록의 링잉 팩터에 따라 수정될 수 있다.
Figure 112006048936875-pct00007
결과 값은 조사 테이블(LUT)에 입력으로 사용되기 전에 시프트 및 클립 처리된다.
Figure 112006048936875-pct00008
'오프셋'(offset) 값은 이하 표에 개시된 바와 같이 양자화기 Qp에 의존한다.
Qp 값의 함수로서의 offset
Qp offset Qp offset
1 0.5 16 8.5
2 1.5 17 7.5
3 1.0 18 9.5
4 2.5 19 8.5
5 1.5 20 10.5
6 3.5 21 9.5
7 2.5 22 11.5
8 4.5 23 10.5
9 3.5 24 12.5
10 5.5 25 11.5
11 4.5 26 13.5
12 6.5 27 12.5
13 5.5 28 14.5
14 7.5 29 13.5
15 6.5 30 15.5
31 14.5
변수 ktexture 및 kflat는 플랫하고 텍스처가 있는 영역에서의 사이코비주얼 효과에 대한 강도를 제어한다. 일실시예에서, 0과 1 사이의 범위(0은 효과가 없으며, 1은 풀 효과를 의미함)를 갖는다. 일실시예에서, 변수 ktexture 및 kflat는 다음과 같이 설정된다.
휘도
Figure 112006048936875-pct00009
크로미넌스
Figure 112006048936875-pct00010
조사 테이블로부터의 출력(dk)은 부가적인 처리에 의해 DCT 계수의 크기를 수정하는데 이용된다.
Figure 112006048936875-pct00011
마지막으로, DCT 계수 ck는 수정된 계수 c'k로 대체되고 양자화를 위한 진행을 계속한다.
3.5.3.4 '패스트' 사이코비주얼 인핸스먼트
'패스트' 사이코비주얼 인핸스먼트는 입력 휘도 픽셀에 대해 '중요한' 맵을 계산하고 DCT 계수를 수정함으로써 DCT 계수에 대해 수행된다.
3.5.3.4.1 '중요한' 맵의 계산
'중요한' 맵은 입력 비디오 프레임의 휘도 공간에서의 각각의 픽셀에 대한 '중요한' 값을 계산함으로써 생성될 수 있다. 몇몇 실시예에서, '중요한' 값은 특정의 픽셀에 위치하는 임의의 왜곡에 대한 인간 눈의 감도를 근사한다. 이 '중요한' 맵은 픽셀의 '중요한' 값의 어레이이다.
이 '중요한' 픽셀은 첫 번째로 픽셀(dxy) 주위의 픽셀의 블록의 동적 범위를 계산함으로써 결정된다. 몇몇 실시예에서, 픽셀 위치(x, y)에 대해 중심에 있는 픽셀의 3x3 블록의 동적 범위는 그 영역에서 가장 밝은 값에서 가장 어두운 픽셀의 값을 감산함으로써 산출된다.
'중요한' 픽셀(mxy)은 다음과 같이 픽셀의 동적 범위로부터 유도될 수 있다.
Figure 112006048936875-pct00012
3.5.3.4.2 DCT 계수의 수정
일실시예에서, DCT 계수의 수정은 기본 기능 에너지 매트릭스와 델타 조사 테이블의 생성을 포함한다.
3.5.3.4.3 기본 기능 에너지 매트릭스의 생성
기본 기능 에너지 메트릭스의 세트는 DCT 계수를 수정하는데 이용될 수 있다. 이들 매트릭스는 부호화 이전에 산출될 수 있는 상수 값을 포함한다. 8x8 매트릭스는 64개의 DCT 기본 기능의 각각에 이용된다. 각의 매트릭스는, 8x8 블록에서의 모든 픽셀이 대응하는 계수의 수정에 의해 어떻게 영향을 받는지를 개시한다. k번째 기본 기능 에너지 매트릭스는 8x8 매트릭스 Ak를 취함으로써 유도되는데, 대응하는 계수는 100으로 설정되고 다른 계수는 0으로 설정된다.
n = k 이면 akn = 100 이고,
그외의 경우는 akn = 0 이다.
여기서, n은 8x8 매트릭스 내의 계수 위치를 나타낸다: 0 = n = 63.
역 DCT는 추가의 8x8 매트릭스 A'k를 제공하기 위하여 매트릭스에 대해 수행된다. 매트릭스(a'kn)의 요소는 k번째 기본 기능을 나타낸다.
Figure 112006048936875-pct00013
변환된 매트릭스에서의 각각의 값은 제곱계산된다.
0 = n = 63 인 경우에 대해 bkn = a'kn 2
이 과정은 기본 기능 에너지 매트릭스 Bk를 생성하기 위해 64번 수행되며(0 = n = 63), 각각 64번의 자연 값을 구비한다. 각각의 매트릭스 값은 8x8 블록에서의 n번째 위치에서의 픽셀이 임의의 에러 또는 계수 k의 수정에 의해 얼마나 많이 영향을 받는지에 대한 측정값이다.
3.5.3.4.4 델타 조사 테이블의 생성
조사 테이블(LUT)은 계수 수정 델타의 계산을 촉진하는데 이용될 수 있다. 테이블의 내용은 '패스트' 사이코비주얼 인핸스먼트와 양자화 파라미터(Qp)의 소망하는 강도에 의존하는 방식으로 생성될 수 있다.
조사 테이블의 값은 다음 관계식에 따라 생성될 수 있다.
Figure 112006048936875-pct00014
여기서, i는 테이블 내의 위치, 0 = i = 1023.
strengthoffset은 이하의 표에서 개시하는 바와 같이 양자화기 Qp에 의존한다.
strengthoffset의 값과 Qp의 값 간의 관계
Qp strength offset Qp Strength offset
1 0.2 -0.5 16 2.0 8.5
2 0.6 1.5 17 2.0 7.5
3 1.0 1.0 18 2.0 9.5
4 1.2 2.5 19 2.0 8.5
5 1.3 1.5 20 2.0 10.5
6 1.4 3.5 21 2.0 9.5
7 1.6 2.5 22 2.0 11.5
8 1.8 4.5 23 2.0 10.5
9 2.0 3.5 24 2.0 12.5
10 2.0 5.5 25 2.0 11.5
11 2.0 4.5 26 2.0 13.5
12 2.0 6.5 27 2.0 12.5
13 2.0 5.5 28 2.0 14.5
14 2.0 7.5 29 2.0 13.5
15 2.0 6.5 30 2.0 15.5
31 2.0 14.5
변수 ktexture 및 kflat는 플랫하고 텍스처가 있는 영역에서의 사이코비주얼 효과에 대한 강도를 제어한다. 일실시예에서, 0과 1 사이의 범위(0은 효과가 없으며, 1은 풀 효과를 의미함)를 갖는다. 일실시예에서, 변수 ktexture 및 kflat는 다음과 같이 설정된다.
휘도
Figure 112006048936875-pct00015
크로미넌스
Figure 112006048936875-pct00016
3.5.3.4.5 DCT 계수의 수정
DCT 계수는 상기 산출한 값을 이용하여 수정될 수 있다. 일실시예에서, 각각의 논제로 AC DCT 계수는 양자화 이전에 이하의 과정에 따라 수정된다.
처음에, 'energy'(에너지) 값(ek)은 대응하는 기본 기능 에너지 매트릭스와 중요한 맵으로부터의 적절한 8x8 블록의 도토 곱(dot product)을 취함으로써 산출된다. 이 '에너지'는 특정 계수에서의 양자화 에러가 인간에 의해 얼마나 인지될 수 있는지를 나타내는 측정값이다. 픽셀 중요도와 픽셀 기본 기능 에너지의 곱의 합이다.
Figure 112006048936875-pct00017
여기서, M은 8x8 블록의 중요 맵의 값을 포함하며,
Bk는 k번째 기본 기능 에너지 매트릭스이다.
그 결과로서의 '에너지' 값은 인덱스(dk)로서 이용되기 전에 델타 조사 테이블에 시프트 및 클립 처리된다.
Figure 112006048936875-pct00018
여기서, i=e'k
델타 조사 테이블의 출력은 추가의 처리과정에 의해 DCT 계수의 크기를 수정하는데 이용된다.
Figure 112006048936875-pct00019
DCT 계수 ck는 수정된 c'k로 대체되고, 양자화를 위해 진행된다.
3.5.4 양자화
본 발명의 실시예에 따른 인코더는 1996년 International Telecommunication Union as Video Coding for Low Bitrate Communication, ITU-T Rcommendation H.263에 의해 규정된 양자화기와 같은 표준 양자화기를 이용할 수 있다.
3.5.4.1 양자화에 대한 사이코비주얼 인핸스먼트
본 발명의 실시예에 따른 인코더의 일부는 더 효과적인 압축을 얻기 위하여 인간 시각의 심리적 효과를 이용하는 사이코비주얼 인핸스먼트 기능을 이용한다. 심리 시각적 효과는 프레임 단위와 매크로블록 단위에 적용될 수 있다.
3.5.4.2 프레임 단위의 사이코비주얼 인핸스먼트
프레임 단위로 적용될 때, 사이코비주얼 인핸스먼트는 레이트 제어(rate control) 알고리즘의 일부이며 그 목적은 부호화를 조정하는 것이고 주어진 양의 비트 레이트는 인간 시각이 인지할 수 있는 최대의 가시적 질을 보장하는데 최적으로 이용된다. 프레임 레이트 사이코비주얼 인핸스먼트는, 액션이 클 때 인간 시각이 미세 부분을 무시한다는 원리와, 이미지가 정적일 때 인간 시각이 미세 부분을 주목한다는 원리에 의해 촉진된다. 일실시예에서, 움직임의 양은 프레임에 대해 절대 차(absolute difference: SAD)의 합을 조사함으로써 결정된다. 일실시예에서, SAD 값은 2개의 블록의 함께 있는 휘도 픽셀의 절대 차를 가산함으로써 결정된다. 몇몇 실시예에서, 16x16 픽셀 블록의 절대 차가 이용된다. 일부분의 픽셀 오프셋을 취급하는 실시예에서, 절대 차의 합이 계산되기 전에, MPEG-4 표준(ISO/IEC의 동화상 전문가 그룹에서 개발한 ISO/IEC 표준)에서 규정한 보간(interpolation)이 수행된다.
프레임 단위의 사이코비주얼 인핸스먼트는 비디오 트랙의 P 프레임에만 적용되며 그 프레임의 SAD 값에 기초한다. 부호화 동안, 사이코비주얼 모듈은 비디오 트랙의 모든 P 프레임의 평균 SAD(즉,
Figure 112006048936875-pct00020
)의 기록을 유지하며, 그 전체 SAD(즉,
Figure 112006048936875-pct00021
)로부터 각 프레임의 SAD의 평균 거리의 기록을 유지한다. 평균화는 지수 이동 평균 알고리즘을 이용하여 이루어질 수 있다. 일실시예에서, 상술한 단일 패스 레이트 제어 알고리즘은 여기서 평균화 기간으로서 이용된다(상기 설명 참조).
부호화된 비디오 트랙의 각각의 P 프레임에 대해, 프레임 양자화기 Q(레이즈 제어 모듈로부터 획득됨)는 적용되는 사이코비주얼 보정을 갖는다. 일실시예에서, 이 과정은 이하의 공식을 이용하여 레이트 R을 연산하는 과정을 포함한다.
Figure 112006048936875-pct00022
여기서, I는 상수로서 계속 0.5로 설정되어 있다. R은 [1, -1]의 바운드 내로 클립 처리된다.
양자화기는 이하 나타낸 수식을 통해 레이트 R에 따라 조정된다.
Figure 112006048936875-pct00023
여기서, Sframe는 프레임 단위의 사이코비주얼 인핸스먼트에 대한 강도 상수이다.
Sframe 상수는 프레임 단위의 사이코비주얼에 대해 조정이 얼마나 강하게 이루어질 수 있는지를 결정한다. 코덱의 일실시예에서는, Sframe을 0.2, 0.3 또는 0.4로 설정하는 옵션을 이용할 수 있다.
3.5.4.3 매크로블록 단위의 사이코비주얼 인핸스먼트
매크로블록 단위로 사이코비주얼 인핸스먼트를 이용하는 본 발명의 실시예에 따른 인코더는 사용자에 대한 비디오의 가시적 품질에 대해 현저하고 이들 매크로블록을 더 높은 품질로 코드화하는 매크로블록을 식별한다. 매크로블록 단위의 사이코비주얼 인핸스먼트의 효과는 프레임의 덜 중요한 부분으로부터 비트를 제거하고 이들을 프레임의 중요한 부분에 적용하는 것이다. 몇몇 실시예에서, 인핸스먼트는 평활화, 밝기 및 매크로블록 SAD에 기초하는 기술을 이용하여 달성된다. 이들 기술을 단독으로 사용하거나 또는 다른 기술을 조합하거나 다른 기술만을 사용하는 다른 실시예가 가능하다.
일실시예에서, 상기 설명한 이들 3가지 매크로블록 단위의 사이코비주얼 인핸스먼트는 공통의 파라미터 SMB를 공유하는데, 이 파라미터는 매크로블록 단위의 사이코비주얼 인핸스먼트의 강도를 제어한다. 매크로블록에 대한 최대 및 최소 양자화기는 이하 나타낸 수식을 이용하여 프레임 양자화기 Qframe와 강도 파라미터로부터 유도된다.
Figure 112006048936875-pct00024
여기서, QMBMax는 최대 양자화기이며,
QMBMin은 최소 양자화기이다.
QMBMax와 QMBMin은 전체 프레임에 대한 매크로블록 양자화기의 상한 및 하한을 규정한다. 일실시예에서, 값 SMB를 값 0.2, 0.3 및 0.4 중 어느 것으로 설정하는 옵션이 제공된다. 다른 실시예에서, SMB의 다른 값을 이용할 수도 있다.
3.5.4.3.1 밝기 인핸스먼트
사이코비주얼 인핸스먼트가 매크로블록의 밝기에 기초하여 수행되는 실시예에서, 인코더의 더 밝은 매크로블록의 화질을 더 높이도록 부호화한다. 이러한 인핸스먼트의 이론적 원리는, 사용자가 프레임의 상대적으로 어두운 부분을 더 많이 또는 더 적게 무시한다는 것에 기초한다. 이러한 매크로블록 사이코비주얼 인핸스먼트는 비디오 트랙의 I 프레임과 P 프레임에 적용된다. 각 프레임에 대해, 인코더는 먼저 전체 프레임을 전체적으로 본다. 평균 밝기(
Figure 112006048936875-pct00025
)이 계산되고, 평균값(
Figure 112006048936875-pct00026
)으로부터 밝기의 평균차가 계산된다. 이들 값은, 사이코비주얼 인핸스먼트가 적용되어야 하는지에 대한 지시기로서 사용될 수 있는 2개의 임계값(TBRLower, TBRUpper)을 만드는데 이용된다.
Figure 112006048936875-pct00027
밝기 인핸스먼트는 매크로블록에 대한 의도된 양자화기(QMB)를 생성하기 위해 아래 설명한 조건을 이용하여 2개의 임계값에 기초하여 적용된다.
Figure 112006048936875-pct00028
여기서, BR은 특정 매크로블록에 대한 밝기 값이다.
인코더가 MPEG-4 표준에서 사용되는 실시예에서, 매크로블록 단위의 사이코비주얼 밝기 인핸스먼트 기술은 하나의 매크로블록에서 다음 매크로블록까지 ±2 이상 양자화기를 변경하지 않는다. 따라서, 계산된 QMB는 이전 매크로블록에서 이용된 양자화기에 기초한 변경을 요구할 수 있다.
3.5.4.3.2 평활화 인핸스먼트
평활화 사이코비주얼 인핸스먼트를 포함하는 본 발명의 실시예에 따른 인코더는, 부호화되는 이미지의 공간 편차에 기초하여 양자화기를 수정한다. 인간의 시각은 이미지의 평탄한 부분에서의 양자화 아티팩트(quantization artifacts)에 대해 민감도가 증가한다는 원리에 따라, 평활화 사이코비주얼 인핸스먼트의 이용이 촉진된다. 따라서, 평활화 사이코비주얼 인핸스먼트는 이미지의 더 평활한 부분을 표현하기 위해 비트의 수를 증가시키는 기술과, 이미지에서의 공간 편차가 높은 곳에서의 비트의 수를 감소시키는 기술을 포함한다.
일실시예에서, 이미지의 일부의 평활화는 매크로블록(
Figure 112006048936875-pct00029
)의 밝기에 대한 매크로블록에서의 픽셀의 휘도의 평균 차로서 측정된다. 본 발명의 실시예에 따라 I 프레임에 대해 평활화 사이코비주얼 인핸스먼트를 수행하는 방법이 도 3g에 도시되어 있다. 프로세스(540)는
Figure 112006048936875-pct00030
을 계산(542)하기 위해 전체 프레임을 조사하는 과정을 포함한다. 평활화 인핸스먼트를 적용하기 위한 임계값 TDR은 이하의 식을 이용하여 유도(544)될 수 있다.
Figure 112006048936875-pct00031
이하의 평활화 인핸스먼트는 이 임계값에 기초하여 수행된다(546).
DR ≥ TDR인 경우, QMB = Qframe,
DR < TDR 인 경우, QMB = QMBMin
여기서, QMB는 매크로블록에 대한 의도된 양자화기이며, DR은 매크로블록에 대한 편차 값(즉, 평균 휘도 - 평균 밝기)이다.
MPEG-4 표쥰에 따라 파일을 부호화는 실시예는, 매크로블록 단위의 양자화기 변화가 하나의 매크로블록에서 다른 매크로블록으로 최대 ±2가 된다는 것에 제한된다.
3.5.4.3.3 매크로블록 SAD 앤핸스먼트
본 발명의 실시예에 따른 인코더는 매크로블록 SAD 사이코비주얼 인핸스먼트를 이용할 수 있다. 매크로블록 SAD 사이코비주얼 인핸스먼트는 정적 매크로블록에 대한 상세를 증가시키는데 이용될 수 있으며, 높은 동작 장면이 이용되는 프레임의 부분에서의 상세를 감소시키는데 이용될 수 있다.
본 발명의 실시예에 따라 매크로블록 SAD 사이코비주얼 인핸스먼트를 수행하는 프로세스가 도 3h에 도시되어 있다. 이 프로세스(570)는 전체 프레임에서의 모든 매크로블록에 대하여 평균 SAD(즉,
Figure 112006048936875-pct00032
)를 결정하기 위해 I 프레임 전체를 조사(572)하는 과정을 포함하고, 평균(즉,
Figure 112006048936875-pct00033
)로부터 매크로의 SAD의 평균 편차를 얻는다. 일실시예에서, 이들 2개의 매크로블록은 프레임간 부호화 매크로블록(움직임 보상 또는 이전 부호화된 비디오 프레임에서의 다른 종속성을 이용하여 부호화된 매크로블록)에 대해 평균화된다. 매크로블록 SAD를 적용하기 위한 2개의 임계값은 다음 공식을 이용하여 이들 평균값으로부터 유도(574)된다.
Figure 112006048936875-pct00034
여기서, TMBSADLower은 하한 임계값이며, TMBSADUpper은 상한 임계값으로서, 필요한 경우 1024만큼 제한될 수 있다.
매크로블록 SAD 인핸스먼트는 다음 조건에 따라 이들 2개의 임계값에 기초하여 적용(576)된다.
Figure 112006048936875-pct00035
여기서, QMB는 매크로블록에 대한 의도된 양자화기이며, MBSAD는 특정 매크로블록에 대한 SAD 값이다.
MPEG-4 사양에 따라 파일을 부호화하는 실시예는, 상기 설명한 바와 같이, 매크로블록 단위의 양자화기 변경이 하나의 매크로블록으로부터 다음 매크로블록까지 최대 ±2가 된다는 것에 제한된다.
3.5.5 레이트 제어(rate control)
본 발명의 실시예에 따라 부호화기에 의해 이용되는 레이트 제어 기술은, 인코더가 비디오 시퀀스를 부호화하기 위해 할당된 비트 레이트를 어떻게 이용하는지 결정할 수 있다. 인코더는 미리 정해진 비트 레이트로 부호화할 것이며, 레이트 제어 기술은 미리 정해진 비트 레이트에 가능한 가깝게 인코더에 의해 생성되는 비트 레이트를 매칭시키게 된다. 이러한 레이트 제어 기술은 비디오 시퀀스의 가장 높은 가시적 품질을 복호화할 때 보장하는 방식으로 비트 레이트를 할당할 수 있다. 많은 레이트 제어는 양자화기를 조정함으로써 수행된다. 양자화기는 인코더가 비디오 시퀀스를 얼마나 정교하게 부호화하는지 결정한다. 더 작은 양자화기는 더 높은 품질과 더 높은 비트 소비를 초래한다. 따라서, 레이트 제어 알고리즘은 비디오 품질과 비트 소비의 상충되는 관점에서의 균형을 맞추는 방식으로 양자화기를 수정하게 된다.
본 발명의 실시예에 따른 인코더는 여러 가지 다양한 레이트 제어 기술을 이용할 수 있다. 일실시예에서, 단일 패스 레이트 제어 기술이 이용된다. 다른 실시예에서는, 이중(또는 다중) 패스 레이트 제어 기술이 이용된다. 또한, 필요에 따라, '인증된 비디오 버퍼' 레이트 제어가 수행될 수 있다. 이들 기술에 대한 특정의 예를 이하 설명한다. 그러나, 본 발명의 적용에 따라 인코더에 임의의 레이트 제어 기술이 이용될 수 있다.
3.5.5.1 단일 패스 레이트 제어
본 발명의 실시예에 따른 단일 패스 레이트 제어 기술의 실시예는, 움직임이 큰 장면에 대해 높은 비트 레이크 피크를 허용하게 된다. 몇몇 실시예에서, 단일 패스 레이트 제어 기술은 소정 장면에서의 움직임의 양의 증가에 따라 비트 레이트를 완만하게 증가시키고, 소정 장면에서의 움직임의 양의 감소에 따라 비트 레이트를 급격하게 감소시키게 된다.
일실시예에서, 단일 패스 레이트 제어 알고리즘은 비트 레이트를 추종하기 위해 2개의 평균 기간을 이용한다. 이들 2개의 평균 기간은, 전체 비트 레이트의 수렴(convergence)을 보장하기 위한 장기 평균화와, 소정 장면에서의 동작의 양의 편차에 따라 반응하도록 하는 단기 평균화이다.
본 발명의 실시예에 따른 단일 패스 레이트 제어 기술은 도 3i에 도시되어 있다. 단일 패스 레이트 제어 기술(580)은 인코더를 소망하는 비트 레이트, 비디오 프레임 레이트 및 다양한 다른 파라미터(이하 설명함)로 초기화(584)함으로써 개시(582)한다. 양자화기를 나타내는 부동소수점 변수가 저장된다. 프레임을 양자화하는 경우(586), 부동소수점 변수가 검색되며(588), 양자화기에 의해 부동소수점 변수를 가장 인접한 정수로 라운딩 처리함으로써 획득된다. 다음으로, 프레임이 부호화된다(590). 새로운 양자화 값의 결정(592)을 가능하게 하는 프레임의 부호화 동안 관측(observation)이 이루어진다. 프로세스는 더 이상 프레임이 없는 경우까지 반복을 결정한다(594). 이 시점에서, 부호화가 완료된다(596).
상술한 바와 같이, 인코더는 다양한 파라미터에 의해 초기화된다(584). 이들 파라미터는, '비트 레이트', '프레임 레이트', 'Max Key Frame Interval'(최대 키 프레임 구간), 'Maximum Quantizer'(최대 양자화기), 'Minimum Quantizer'(최소 양자화기), '평균화 기간', '반응 기간', '다운 비율/업 비율'이다. 이하 이들 파라미터의 각각에 대해 설명한다.
3.5.5.1.1. "비트 레이트"
"비트 레이트" 파라미터는 부호화의 목표 비트 레이트를 설정한다.
3.5.5.1.2. "프레임 레이트"
"프레임 레이트"는 비디오 프레임 사이의 기간을 정의한다.
3.5.5.1.3. "최대 키 프레임 구간"(Max Key Frame Interval)
"최대 키 프레임 구간"은 키 프레임 사이의 최대 구간을 특정한다. 키 프레임은 코덱이 장면 전환을 검출한 때에 부호화된 비디오에 자동으로 삽입된다. 단일 컷없이 긴 구간동안 장명이 연속하는 환경에서, 키 프레임은 그 키 프레임 사이의 구간이 항상 "최대 키 프레임 구간" 미만이거나 동일하다는 것을 보장하면서 삽입될 수 있다. 일실시예에서, "최대 키 프레임 구간" 파라미터는 300 프레임의 값으로 설정될 수 있다. 다른 실시예에서는 다른 값이 사용될 수 있다.
3.5.5.1.4. "최대 양자화기" 및 "최소 양자화기"
"최대 양자화기" 및 "최소 양자화기" 파라미터는 부호화에 사용된 양자화기의 상위 경계와 하위 경계를 설정한다. 일실시예에서, 양자화기 경계는 1과 31 사이의 값으로 설정된다.
3.5.5.1.5. "평균 기간"
"평균 기간" 파라미터는 양자화기를 수정할 때에 간주되는 비디오의 양을 제어한다. 긴 평균 기간은 통상적으로 더욱 정확한 전체 레이트를 갖는 부호화된 비디오의 결과로 나타날 것이다. 일실시예에서는 2000의 "평균 기간"이 이용된다. 그러나, 다른 실시예에서는 다른 값이 이용될 수도 있다.
3.5.5.1.6. "반응 기간"
"반응 기간" 파라미터는 최근의 장면에서의 움직임의 변화를 부호화기가 얼마나 고속으로 적응시키는지를 결정한다. "반응 기간"의 값이 더 길면, 고속 움직임 장면은 더 우수한 화질이 되고, 저속 움직임 장면은 화질이 더 열화될 수 있다. 일실시예에서는 10의 "반응 기간"이 이용된다. 그러나, 다른 실시예에서는 다른 값이 이용될 수도 있다.
3.5.5.1.7. "다운/업 비율"
"다운/업 비율" 파라미터는 움직임이 큰 장면 또는 움직임이 작은 장면에 반응하여 양자화기 조정을 위한 상대적인 민감도를 제어한다. 이 값이 더 크면, 움직임이 큰 장면은 화질이 더 우수하게 되고, 비트 소모를 증가시킨다. 일실시예에서는 20의 "다운/업 비율"이 이용된다. 그러나, 다른 실시예에서는 다른 값이 이용될 수도 있다.
3.5.5.1.8. 양자화기값을 계산
전술한 바와 같이, 단일 패스 레이트 제어 기술은 각각의 프레임의 부호화 후에 양자화기값의 계산을 수반한다. 이하는 양자화기값을 갱신하기 위해 사용될 수 있는 본 발명의 실시예에 따른 기술에 대한 설명이다.
부호화기는 "평균 기간"(Paverage) 및 "반응 기간"(Preaction)과 동일한 기간을 갖는 2개의 지수함수적 이동 평균을 비트 레이트의 이동 평균으로서 유지한다. 2개의 지수함수적 이동 평균은 다음의 관계에 따라 계산될 수 있다:
Figure 112006048936875-pct00036
여기서,
At는 순간 t에서의 평균이고,
At-1은 순간 t-T에서의 평균(통상, 이전 프레임에서의 평균)이며,
T는 간격 기간(통상, 프레임 시간)을 나타내고,
P는 Paverage 및/또는 Preaction 중의 하나가 될 수 있는 평균 기간이다.
위에서 계산된 이동 평균은 다음의 계산을 이용하여 현재 순간과 과거 순간 사이의 시간 구간을 분할함으로써 비트 레이트로 조정된다:
Figure 112006048936875-pct00037
여기서,
Rt는 비트 레이트이고,
At는 이동 평균 중의 하나이며,
T는 현재 순간과 과거 순간 사이의 시간 구간이다(이것은 통상적으로 프레임 레이트의 역이다).
부호화기는 다음 프레임의 목표 비트 레이트(Rtarget)를 다음과 같이 계산할 수 있다:
Figure 112006048936875-pct00038
여기서,
Roverall은 전체 비디오에 대해 설정된 전체적인 비트 레이트이고,
Raverage는 긴 평균 기간을 이용하는 평균 비트 레이트이다.
여러 실시예에서, 목표 비트 레이트는 하위 경계가 전체 비트 레이트의 75%이다. 목표 비트 레이트가 이 경계 아래로 떨어지면, 목표 비트 레이트는 비디오의 화질을 보장하기 위해 경계의 위로 강제로 상향될 것이다.
그 후, 부호화기는 Rtarger과 Rreaction 간의 차이에 기초하여 내부 양자화기를 갱신한다. Rreaction이 Rtarget 미만이라면, 이전의 프레임이 비교적 낮은 복잡도의 것일 가능성이 있다. 따라서, 양자화기는 다음의 계산을 수행함으로써 감소될 수 있다:
Figure 112006048936875-pct00039
여기서, Rreaction이 Rtarget 보다 클 때, 처리된 이전의 프레임이 비교적 높은 레벨의 복잡도를 가질 상당한 가능성이 존재한다. 따라서, 양자화기는 다음의 계산을 수행함으로써 증가될 수 있다:
Figure 112006048936875-pct00040
여기서,
s는 "업/다운 비율"이다.
3.5.5.1.9. B-VOP 부호화
전술한 알고리즘은 B-VCO는 부호화에 적용될 수도 있다. B-VOP가 부호화시에 인에이블될 때, B-VOP(Qb)에 대한 양자화기는 B-VOP 다음의 P-VOR(Qp)의 양자화기에 기초하여 선택된다. 그 값은 다음의 관계에 따라 획득될 수 있다:
Figure 112006048936875-pct00041
3.5.5.2. 이중 패스 레이트 제어
이중(또는 다중) 패스 레이트 제어 기술을 이용하는 본 발명의 실시예에 따른 부호화기는 제1 패스에서 비디오 시퀀스의 속성을 결정할 수 있고, 그 후 전체 시퀀스의 속성에 대한 지식을 가지고 비디오 시퀀스를 부호화한다. 따라서, 부호화기는 비디오 시퀀스에서의 다른 프레임과 비교한 상대적인 복잡도에 기초하여 각각의 프레임에 대한 양자화 레벨을 조정할 수 있다.
본 발명의 실시예에 따른 이중 패스 레이트 제어 기술에서, 부호화기는 비디오가 전술한 단일 패스 레이트 제어 기술에 따라 부호화되고 각각의 프레임의 복잡도가 기록되는(복잡도를 측정하기 위한 광범위의 상이한 측정법 중의 어떠한 것도 이용될 수 있음) 제1 패스를 수행한다. 평균 복잡도 및 그에 따라 평균 양자화기(Qref)가 제1 패스에 기초하여 결정될 수 있다. 제2 패스에서, 비트 스트림은 제1 패스 동안에 계산된 복잡도값에 기초하여 결정된 양자화기로 부호화된다.
3.5.5.2.1. I-VOP에 대한 양자화기
I-VOP에 대한 양자화기 Q는 다음 프레임이 I-VOP가 아닌 경우에는 0.75×Qref로 설정된다. 다음 프레임 또한 I-VOP 이라면, Q(현재 프레임에 대한)는 1.25×Qref 로 설정된다.
3.5.5.2.2. P-VOP에 대한 양자화기
P-VOP에 대한 양자화기는 다음의 표현식을 이용하여 계산될 수 있다:
Figure 112006048936875-pct00042
여기서,
Ccomplexity는 프레임의 복잡도이고,
Figure 112006048936875-pct00043
는 비디오 시퀀스의 평균 복잡도이다.
F(x)는 양자화값 x를 갖는 양자화기를 이용하여 프레임을 부호화하기 위해 요구된 비트의 수를 제공하도록 프레임의 복잡도가 승산되어야 하는 횟수를 제공하는 함수이며,
F'(x)는 F(x)의 역함수이며,
k는 강도 파라미터이다.
다음의 표는 양자화기 Q와 함께 부호화기를 이용하여 프레임을 부호화하도록 요구된 비트의 수를 계산하기 위해 프레임의 복잡도가 승산되어야 하는 계수를 생성하기 위해 사용될 수 있는 함수 F(Q)의 실시예를 정의한다.
Figure 112006048936875-pct00044
Q에 대한 F(Q)의 값
강도 파라미터 k가 0로 되도록 선택되면, 그 결과는 일정 양자화기가 된다. 강도 파라미터가 1이 되도록 선택될 때, 양자화기는 Ccomplexity에 비례한다. 본 발명의 실시예에 따른 여러 부호화기는 0.5와 동일한 강도 파라미터 k를 갖는다.
3.5.5.2.3. B-VOP에 대한 양자화기
B-VOP에 대한 양자화기는 전술한 단일 패스 기술에서의 B-VOP에 대한 양자화기를 선택하는 기술을 이용하여 선택될 수 있다.
3.5.5.3. 비디오 버퍼 검증 레이트 제어
프레임을 표현하기 위해 요구된 비트의 수는 비디오 시퀀스의 특성에 따라 좌우되어 변화할 수 있다. 대부분의 통신 시스템은 일정한 비트 레이트로 동작한다. 가변 비트 레이트 통신이 가질 수도 있는 문제점은 리소스 사용에서의 피크를 처리하기 위해 충분한 리소스를 할당하는 것이다. 본 발명의 실시예에 따른 여러 부호화기는, 가변 비트 레이트 통신의 비트 레이트가 급감할 때, 복호화기 비디오 버퍼의 오버플로우를 방지한다는 관점에서 비디오를 부호화한다.
비디오 버퍼 검증기(VBV) 레이트 제어의 목적은 전송시에 복호화기의 버퍼를 초과하지 않을 비디오를 생성하는 것을 포함한다. 또한, 부호화된 비디오가 목표 비트 레이트에 부합하고 레이트 제어가 높은 화질의 비디오를 생성하는 것이 바람직하다.
본 발명의 여러 실시예에 따른 부호화기는 적어도 2개의 VBV 레이트 제어 기술의 선택을 제공한다. VBV 레이트 제어 기술 중의 하나는 코절 레이트(causal rate) 제어로서 지칭되며, 다른 한 가지 기술은 N번째 패스 레이트 제어로서 지칭된다.
3.5.5.3.1 코절 레이트 제어
코절 VBV 레이트 제어는 단일 패스 레이트 제어 기술과 함께 사용되고, 현재의 양자화기값 및 이전의 양자화기값에 기초하여 간략히 출력을 생성할 수 있다. 본 발명의 실시예에 따른 부호화기는 다음의 관계에 따라 프레임 n에 대한 양자화기(즉, Qn)를 설정하는 과정을 포함하는 코절 레이트 제어를 포함한다.
Figure 112006048936875-pct00045
여기에서, Q'n은 단일 패스 레이트 제어에 의해 평가된 양자화기이며, Xbitrate는 요구된 비트 레이트로부터의 드리프트에 기초하여 목표 비트 레이트를 결정함으로써 계산되며, Xvelocity는 VBV 버퍼가 오버플로우하거나 또는 언더플로우할 때까지의 평가 시간에 기초하여 계산되며, Xsize는 P-VOP의 결과에만 적용되고, 압축된 P-VOP의 크기가 시간 경과에 따라 변화하는 레이트에 기초하여 계산되며, Xdrift는 요구된 비트 레이트로부터의 드리프트량이다.
3.5.5.3.2. N번째 패스 VBV 레이트 제어
N번째 패스 VBV 레이트 제어는 복수의 패스 레이트 제어 기술과 관련하여 사용될 수 있으며, 비디오 시퀀스의 이전의 분석 동안에 축적된 정보를 이용한다. 본 발명의 여러 실시예에 따른 부호화기는 도 3.9에 예시된 프로세스에 따라 N번째 VBV 레이트 제어를 수행한다. 프로세스(600)는 제1 패스가 개시되고, 그 동안 분석(602)이 수행된다. 맵 생성이 수행되고(604), 전략(strategy)이 생성된다(606). 그 후, n번째 패스 레이트 제어가 수행된다(608).
3.5.5.3.3. 분석
일실시예에서, 제1 패스는 일부 형태의 코절 레이트 제어를 이용하며, 프레임의 지속시간, 프레임의 코딩 유형, 사용된 양자화기, 생성된 움직임 비트, 및 생성된 텍스쳐 비트 등에 관하여 각각의 프레임에 대해 데이터가 기록된다. 또한, 타임스케일, 레졸루션 및 코덱 설정 등의 전체적인 정보 또한 기록될 수 있다.
3.5.5.3.4. 맵 생성
분석으로부터의 정보는 비디오 시퀀스의 맵을 생성하기 위해 사용된다. 맵은 각각의 프레임(I/B/P)에 대한 코딩 유형을 특정할 수 있고, 프레임의 지속시간, 움직임 복잡도 및 텍스쳐 복잡도에 관하여 각각의 프레임에 대한 데이터를 포함할 수 있다. 다른 실시예에서, 맵은 또한 압축 프레임 크기 및 지각 변화(perceptual distortion)에 관한 양자화기 및 다른 파라미터의 영향의 더 우수한 예측을 가능하게 하는 정보를 포함할 수도 있다. 여러 실시예에서, 맵 생성은 N번째 패스가 완료된 후에 수행된다.
3.5.5.3.5. 전략 생성
맵은 N번째 패스 레이트 제어가 어떻게 작용할지에 관해 전략을 세우기 위해 사용될 수 있다. 모든 프레임이 부호화된 후 이상적인 레벨의 VBV 버퍼가 계획될 수 있다. 일실시예에서, 전략 생성은 요구된 압축 프레임 크기를 포함한 각각의 프레임에 대한 정보, 즉 요구된 프레임 양자화기의 결과로 나타난다. 여러 실시예에서, 전략 생성은 맵 생성 후와 N번째 패스 이전에 수행된다.
일실시예에서, 전략 생성 프로세스는 반복 프로세스를 이용하여, 부호화기를 시뮬레이션하고, 양자화기를 가능한 한 중간 양자화기값에 근접하게 유지하도록 함으로써 각각의 프레임에 대한 요구된 양자화기값을 결정한다. 전체 비디오 시퀀스에 대한 베이스 양자화기를 생성하기 위해 이진수 탐색이 사용될 수 있다. 베이스 양자화기는 시뮬레이터로 하여금 요구된 목표 비트 레이트를 달성하도록 하는 정수값이다. 베이스 양자화기가 발견된 후, 전략 생성 프로세스는 VBV 제한사항을 고려한다. 일실시예에서, 일정 양자화기가 VBV 제한사항을 수정하지 않을 것이라면, 일정 양자화기가 사용된다. 다른 실시예에서, 양자화기는 비디오 프레임에서의 움직임의 복잡도에 기초하여 변조된다. 이 과정은 장면 전환 및 기타 임시 효과의 차단을 통합하도록 추가로 확장될 수 있다.
3.5.5.3.6. 인루프 N번째 패스 레이트 제어
일실시예에서, 인루프 N번째 패스 레이트 제어는 전략을 사용하며, 압축된 프레임 크기 및 지각 변화에 관한 양자화기 및 다른 파라미터의 영향에 대한 최상의 가능한 예측을 행하기 위해 맵을 사용한다. 그 전략에서 탈피하여 단기간 보정 전략(short-term corrective strategy)을 취하기 위한 제한된 재량권이 존재할 수 있다. 통상적으로, 전략에 후속하여서는 VBV 모델의 위반을 방지할 것이다. 일실시예에서, 인루프 N번째 패스 레이트 제어는 PID 제어 루프를 이용한다. 제어 루프에서의 피드백은 이상적인 비트 레이트로부터의 누적된 드리프트양이다.
전략 생성이 프레임을 저하시키는 단계를 포함하지는 않지만, 인루프 N번째 레이트 제어는, N번째 레이트 제어가 프레임을 저하시키지 않을 경우에 VBV 버퍼가 언더플로우할 것이라면, 프레임을 저하시킬 수도 있다. 마찬가지로, 인루프 N번째 패스 레이트 제어는 VBV 오버플로우를 방지하기 위해 삽입될 비디오 스터핑(video stuffing)을 요청할 수 있다.
3.5.6. 예측
일실시예에서, AD/DC 예측은 7.4.3.절(DC 및 AC 예측) 및 7.7.1.절(필드 DC 및 AC 예측)의 ISO/IEC 1449-2:2001(E)로 지칭된 표준에 따르는 방식으로 수행된다.
3.5.7. 문자 코딩
본 발명의 실시예에 따른 부호화기는 부록 B(가변장 코드) 및 7.4.1.절(가변장 복호화)의 ISO/IEC 14496-2:2001(E)로 지칭된 표준에 따르는 방식으로 문자 코딩을 수행할 수 있다.
3.5.8. 움직임 코딩
본 발명의 실시예에 따른 부호화기는 부록 B(가변장 코드) 및 7.6.3.절(움직임 벡터 복호화)의 ISO/IEC 14496-2:2001(E)로 지칭된 표준에 따르는 방식으로 문자 코딩을 수행할 수 있다.
3.5.9. "비디오" 청크를 생성
비디오 트랙은 1 내지 N의 프레임 시퀀스로 고려될 수 있다. 본 발명의 실시예에 따른 시스템은 압축 비트스트림을 생성하기 위해 시퀀스를 부호화할 수 있다. 압축 비트스트림은 압축 비트스트림을 청크 1 내지 N으로 단편화함으로써 포맷화된다. 각각의 비디오 프레임 n은 대응하는 청크 n을 갖는다.
청크는 청크 n이 청크 1 내지 n-1과 함께 비디오 프레임 n을 복호화하기 위해 본 발명의 실시예에 따른 복호화기에 대한 충분한 정보를 포함할때까지 비트스트림으로부터의 비트를 청크 n에 추가함으로써 생성된다. 비디오 프레임 n을 생성하기 위해 충분한 정보가 청크 1 내지 n-1에 포함되는 경우, 본 발명의 실시예에 따른 부호화기는 마커 청크를 포함할 수 있다. 일실시예에서, 마커 청크는 이전의 프레임만큼의 동일한 프레임 정보를 갖는 코딩되지 않은 P-프레임이다.
3.6. "서브타이틀" 청크를 생성
본 발명의 실시예에 따른 부호화기는 일련의 표준 포맷 중의 한 포맷의 서브타이틀을 취하고, 그 후 이 서브타이틀을 비트 맵으로 변환할 수 있다. 비트 맵에서의 정보는 그 후 실행 길이 부호화를 이용하여 압축된다. 실행 길이 부호화된 비트 맵은 청크로 포맷화되며, 이 청크 또한 청크 내에 포함된 특정의 서브타이틀에 대한 개시 시각 및 중지 시간에 관련한 정보를 포함한다. 여러 실시예에서, 화면 상의 서브타이틀의 컬러, 크기 및 위치에 관련한 정보 또한 청크 내에 포함될 수 있다. 청크는 서브타이틀에 대한 팰릿(palette)을 설정하고 그 팰릿이 변경되었다는 것을 나타내는 서브타이틀 트랙에 포함될 수 있다. 서브타이틀을 표준 서브타이틀 포맷으로 생성할 수 있는 임의의 어플리케이션이 사용되어 서브타이틀의 텍스트를 생성한다. 이와 달리, 사용자가 직접 입력한 텍스트를 서브타이틀 정보로 변환하기 위해 소프트웨어가 사용될 수도 있다.
3.7. 인터리빙
인터리버(interleaver)가 전술한 청크 전부를 수신한 후, 인터리버는 멀티미디어 파일을 구성한다. 멀티미디어 파일을 구성하는 것은 "CSET" 청크, "INFO" 리스트 청크, "hdrl" 청크, "movi" 리스트 청크 및 idxl 청크를 작성하는 단계를 포함할 수 있다. 이하에서는 이들 청크를 작성하고 멀티미디어 파일을 생성하기 위한 본 발명의 실시례에 따른 방법이 설명된다.
3.7.1. "CSET" 청크를 생성
전술한 바와 같이, "CSET" 청크는 옵션이며, AVI 컨테이너 포맷 사양에 따른 인터리버에 의해 생성될 수 있다.
3.7.2. "INFO" 리스트 청크를 생성
전술한 바와 같이, "CSET" 청크는 옵션이며, AVI 컨테이너 포맷 사양에 따른 인터리버에 의해 생성될 수 있다.
3.7.3. "hdrl" 리스트 청크를 생성
"hdrl" 리스트 청크는 인터리버에 제공된 다양한 청크에서의 정보에 기초하여 인터리버에 의해 생성된다. "hdrl" 리스트 청크는 참조된 청크의 파일 내의 위치(location)를 참조한다. 일실시예에서, "hdrl" 리스트 청크는 기준을 확립하기 위해 파일 오프셋을 사용한다.
3.7.4. "movi" 리스트 청크를 생성
전술한 바와 같이, "movi" 리스트 청크는 "오디오", "비디오" 및 "서브타이틀" 청크를 작성하기 위해 오디오, 비디오 및 서비타이틀 트랙을 부호화하고 그 후 이들 청크를 인터리브함으로써 작성된다. 여러 실시예에서, "movi" 리스트 청크 또한 디지털 권리 관리 정보를 포함할 수 있다.
3.7.4.1. 비디오/오디오/서브타이틀을 인터리브
오디오, 비디오 및 서브타이틀 청크를 인터리브하기 위해 다양한 규칙이 사용될 수 있다. 대표적으로, 인터리버는 비디오 트랙 및 오디오 트랙의 각각에 대해 다수의 대기열을 구성한다. 인터리버는 어느 대기열이 출력 파일에 기입되어야 하는지를 결정한다. 대기열 선택은 최저의 인터리브 기간이 기입되는 대기열에서부터 기록함으로써 인터리브 기간에 기초하여 이루어질 수 있다. 인터리버는 청크가 파일에 기입될 수 있기 전에 대기열에 제공될 전체 인터리브 기간을 대기하여야만 할 것이다.
일실시예에서, 생성된 "오디오", "비디오" 및 "서브타이틀" 청크는, 이들이 대응하는 비디오 프레임에 관련한 정보를 포함하고 있는 "비디오" 청크에 앞서 "오디오" 및 "서브타이틀" 청크가 파일 내에 위치되도록 인터리브된다. 다른 실시예에서, "오디오" 및 "서브타이틀" 청크는 이들이 대응하는 "비디오" 청크 뒤에 위치될 수도 있다. "오디오", "비디오" 및 "서브타이틀" 청크의 위치 간의 시간차는 디바이스를 플레이하기 위해 사용되는 플레이어의 버퍼링 성능에 크게 좌우된다. 버퍼링이 제한되거나 알려져 있지 않은 실시예에서, 인터리버는 "오디오" 및 "서브타이틀" 청크가 "비디오" 청크 사이에 위치되도록 "오디오", "비디오" 및 "서브타이틀" 청크를 인터리브하며, "오디오" 및 "서브타이틀" 청크를 바로 후속하는 "비디오" 청크는 오디오 또는 서브타이틀에 대응하는 제1 비디오 프레임을 포함한다.
3.7.4.2. DRM 정보를 생성
멀티미디어 파일의 비디오 컨텐츠를 보호하기 위해 DRM이 사용되는 실시예에서, DRM 정보는 비디오 청크의 부호화와 동시에 생성될 수 있다. 각각의 청크가 생성될 때, 청크는 암호화되어, 비디오 청크의 암호화에 관련한 정보를 포함하여 생성된 DRM 청크가 될 수 있다.
3.7.4.3. DRM 정보를 인터리브
본 발명의 실시예에 따른 인터리버는 비디오 청크의 암호화에 관련한 정보를 포함하는 DRM 청크를 비디오 청크의 앞에 인터리브한다. 일실시예에서, 비디오 청크 n에 대한 DRM 청크는 비디오 청크 n-1과 비디오 청크 n 사이에 위치된다. 다른 실시예에서, 비디오 청크 n의 전과 후의 간격은 멀티미디어 파일을 복호화하는 디바이스 내에 제공된 버퍼링의 양에 좌우된다.
3.7.5. "idxl" 청크의 생성
"movi" 리스트 청크가 생성된 후에는, "idxl" 청크의 생성은 간단한 프로세스가 된다. "idxl" 청크는 각각의 "data" 청크의 "movi" 리스트 청크 내에서의 위치를 판독함으로써 작성된다. 이 정보는 "data" 청크가 속하는 트랙에 관련한 "data" 청크로부터 판독된 정보 및 "data" 청크의 컨텐츠와 조합된다. 이 정보의 전부는 그 후 전술한 포맷의 어느 것이라도 정보를 표현하기 위해 사용될 수 있는 적합한 방식으로 "idxl" 청크에 삽입된다.
4. 멀티미디어 파일의 전송 및 분배
멀티미디어 파일이 생성된 후, 생성된 멀티미디어 파일은 다양한 네트워크를 통해 분배될 수 있다. 다수의 실시예에서 다른 것 중에서도 멀티미디어 재현 및 메뉴를 생성하는데 요구된 요소가 단일 파일 내에 포함된다는 사실은 정보의 전달을 간략화한다. 여러 실시예에서, 멀티미디어 파일은 멀티미디어 파일의 컨텐츠를 해독하기 위해 요구된 정보와는 별개로 분배될 수 있다.
일실시예에서, 멀티미디어 컨텐츠는 제1 서버에 제공되고, 본 발명에 따라 멀티미디어 파일을 작성하기 위해 부호화된다. 그 후, 멀티미디어 파일은 제1 서버 또는 제2 서버 중의 하나에 위치될 수 있다. 다른 실시예에서, DRM 정보가 제1 서버, 제2 서버 또는 제3 서버에 위치될 수 있다. 일실시예에서, 제1 서버는 부호화된 멀티미디어 파일의 위치를 규명하고 및/또는 DRM 정보의 위치를 규명하기 위해 질의될 수 있다.
5. 멀티미디어 파일을 복호화
본 발명의 실시예에 따른 멀티미디어 파일로부터의 정보는 적합한 소프트웨어를 사용하여 구성된 컴퓨터, 멀티미디어 파일로부터의 정보를 액세스하기 위해 배선으로 연결되는 전용 플레이어, 또는 AVI 파일을 구문분석할 수 있는 임의의 다른 디바이스에 의해 액세스될 수 있다. 여러 실시예에서, 디바이스는 멀티미디어 파일의 모든 정보를 액세스할 수 있다. 다른 실시예에서, 디바이스는 본 발명의 실시예에 따른 멀티미디어 파일 내의 모든 정보를 액세스할 수도 있을 것이다. 특정 실시예에서, 디바이스는 AVI 파일 포맷으로 특정되지 않은 청크 내에 저장되는 전술한 정보 중의 어떠한 정보를 액세스할 수 없다. 정보의 전부가 액세스될 수 있지 않은 실시예에서, 통상적으로, 디바이스는 이 디바이스에 의해 인식되지 않는 청크들을 폐기할 것이다.
대표적으로, 본 발명의 실시예에 따른 멀티미디어 파일에 포함된 정보를 액세스할 수 있는 디바이스는 다수의 기능을 수행할 수 있다. 디바이스는 가시 디스플레이 상의 비디오의 디스플레이를 수반하는 멀티미디어 재현을 디스플레이하고, 오디오 시스템 상의 다수의 오디오 트랙 중의 하나로부터 오디오를 생성하고, 다수의 서브타이틀 트랙 중의 하나로부터 서브타이틀을 디스플레이한다. 약간의 실시예는 또한 동반하는 오디오 및/또는 비디오를 디스플레이하면서 가시 디스플레이 상의 메뉴를 디스플레이할 수 있다. 이들 디스플레이 메뉴는 선택 가능한 버튼, 풀다운 메뉴 및 서브-메뉴 등의 특징을 갖는 대화식이이다. 일부 실시예에서, 메뉴 아이템은 현재 액세스되고 있는 멀티미디어 파일 이외의 오디오/비디오 컨텐츠를 가리킬 수 있다. 외부의 컨텐츠는 멀티미디어 파일을 액세스하는 디바이스에 대해 근거리에 위치될 수도 있고, 근거리 통신망, 광역 통신망 또는 공중 통신망을 통해서와 같이 원거리에 위치될 수도 이다. 다수의 실시예는 멀티미디어 파일에 포함된 "메타 데이터" 또는 하나 이상의 멀티미디어 파일에 의해 참조된 "메타 데이터"에 따르 하나 이상의 멀티미디어 파일을 선택할 수 있다.
5.1. 멀티미디어 재현의 디스플레이
본 발명의 실시예에 따른 멀티미디어 파일의 성능이 복수의 오디오 트랙, 복수의 비디오 트랙 및 복수의 서브타이틀 트랙을 지원하도록 제공되면, 비디오, 오디오 및/또는 서브타이틀을 합성하는 이러한 멀티미디어 파일을 이용한 멀티미디어 재현의 디스플레이는 시각적 메뉴 시스템 또는 풀다운 메뉴 시스템(그 동작은 아래에 설명됨) 중의 하나, 또는 멀티미디어 재현을 생성하기 위해 사용된 디바이스의 디폴트 세팅을 통한 특정 오디오 트랙, 비디오 트랙 및/또는 서브타이틀 트랙의 선택을 필요로 할 수 있다. 오디오 트랙, 비디오 트랙 및 서브타이틀 트랙이 선택된 후, 멀티미디어 재현의 디스플레이가 진행할 수 있다.
DRM을 포함하는 멀티미디어 파일로부터의 요구된 멀티미디어 정보를 위치시키고 본 발명의 실시예에 따라 멀티미디어 정보를 디스플레이하기 위한 프로세스가 도 4.0에 예시되어 있다. 프로세스(620)는 DRM 헤더를 해독하기 위해 요구된 암호화 키를 획득하는 단계를 포함한다(622). 암호화 키는 그 후 DRM 헤더를 해독하기 위해 사용되며(624), 제1 DRM 청크는 멀티미디어 파일의 "movi" 리스트 청크 내에 위치된다(626). "DRM" 청크를 해독하기 위해 요구된 암호화 키는 "DRM" 헤더의 테이블로부터 획득되며(628), 암호화 키는 암호화된 비디오 프레임을 해독하기 위해 사용된다. 비디오 정크를 수반하는 요구된 오디오 정크 및 임의의 요구된 서브타이틀 정크는 그 후 복호화되며(630), 오디오, 비디오 및 임의의 적합한 정보가 디스플레이 및 사운드 시스템을 통해 표시된다(632).
여러 실시예에서, 선택된 오디오 트랙은 스테레오 또는 서라운드 사운드 오디오를 제공하기 위해 복수의 채널을 포함할 수 있다. 적합한 트랙이 디스플레이되도록 선택될 때, 이전의 비디오 프레임이 서브타이틀을 포함하였는지에 관한 판정이 이루어질 수 있다(이러한 판정은 현재 복호화된 비디오 프레임을 통해 디스플레이되어야 하는 서브타이틀 정보를 포함하고 있던 이전의 "서브타이틀" 정크를 식별하는 성과를 달성하는 다양한 방식 중의 하나로 이루어질 수도 있다. 이전의 서브타이틀이 서브타이틀을 포함하고, 서브타이틀에 대한 타이밍 정보가 그 서브타이틀이 현재 프레임으로 디스플레이되어야 한다는 것을 나타낸다면, 그 서브타이틀은 복호화된 비디오 프레임에 중첩된다. 이전의 프레임이 서브타이틀을 포함하지 않거나, 이전의 프레임 상의 서브타이틀에 대한 타이밍 정보가 그 서브타이틀이 현재 복호화된 프레임과 함께 디스플레이되지는 않아야 한다면, 선택된 서브타이틀 트랙에 대한 "서브타이틀" 청크가 탐색된다. "서브타이틀" 정크가 위치된다면, 그 서브타이틀은 복호화된 비디오 상에 중첩된다. 그 후, 비디오(임의의 중첩된 서브타이틀을 포함)가 오디오를 동반하여 디스플레이된다.
도 4.0의 설명을 참조하면, 프로세스는 임의의 추가의 DRM 정크가 존재하는지의 여부를 판정한다(634). 존재한다면, 다음 DRM 청크가 위치되고(626), 프로세스는 추가의 DRM 정크가 남지 않을 때까지 지속한다. 이 때에, 오디오, 비디오 및/또는 서브타이틀 트랙의 재현이 완료된다(636).
여러 실시예에서, 디바이스는 본 발명에 따른 멀티미디어 파일의 "hdrl" 청크 내에 포함된 정보를 이용하여 멀티미디어 정보의 특정 부분(예컨대, 특정의 동반 오디오 트랙 및 옵션으로 특정의 동반 서브타이틀 트랙을 갖는 영화의 특정 장면)을 탐색할 수 있다. 다수의 실시예에서, "비디오" 정크, "오디오" 정크 및/또는 "서브타이틀" 정크의 복호화는 다른 태스크와 병렬로 수행될 수 있다.
멀티미디어 파일로부터 정보를 액세스할 수 있고 특정의 오드오 트랙 및/또는 특정의 서브타이틀 트랙과 함께 비디오를 디스플레이할 수 있는 디바이스의 예로는 소프트웨어를 이용하는 전술한 방식으로 구성되는 컴퓨터가 있다. 또 다른 예로는 이들 성능을 포함하는 코덱이 설치된 DVD 플레이어가 있다. 다른 실시예에서, 특정 미디어 트랙에 대응하는 "데이터" 청크를 위치확인하거나 선택(의도적으로이던 임의적으로던)하고 프레젠테이션을 위해 이들 코덱을 복호화하도록 구성된 임의의 디바이스는 본 발명의 실시예에 따른 멀티미디어 파일을 이용하여 멀티미디어 재현을 생성할 수 있다.
여러 실시예에서, 디바이스는 외부 파일로부터의 멀티미디어 정보와 조합하여 멀티미디어 파일로부터 멀티미디어 정보를 플레이할 수 있다. 통상적으로, 이러한 디바이스는 전술한 유형의 멀티미디어 파일에 참조된 로컬 파일로부터 오디오 트랙 또는 서브타이틀 트랙이 공급되게 함으로써 상기와 같이 할 것이다. 참조된 파일이 근거리에 저장되지 않거나 디바이스가 저장되지 않은 위치에 디바이스가 네트워킹된다면, 디바이스는 파일의 로컬 카피를 획득할 수 있다. 그 후, 디바이스는 멀티미디어의 다양한 트랙이 상이한 파일 소스로부터 입력되는 비디오, 오디오 및 서브타이틀(필요시) 파이프라인을 구성하는 양측 파일을 액세스할 것이다.
5.2. 메뉴의 생성
본 발명의 실시예에 따른 복호화기가 도 4.1에 예시되어 있다. 복호화기(650)는 파일을 디멀티플렉서(654)에 제공함으로써 본 발명의 실시예에 따른 멀티미디어 파일(652)을 처리한다. 디멀티플렉서는 멀티미디어 파일로부터 "DMNU" 청크를 추출하고, "DMNU" 청크로부터 "LanguageMenus" 청크의 전부를 추출하여 메뉴 마서(menu parser)(656)에 제공한다. 디멀티플렉서는 또한 "DMNU" 청크로부터 "Media" 청크 전부를 추출하여 미디어 렌더러(media renderer)(658)에 제공한다. 메뉴 파서(656)는 "LanguageMenu" 청크에 정의된 메뉴 구조를 표현하는 스테이트 머신을 구축하기 위해 "LanguageMenu" 청크로부터의 정보를 구문분석한다. 메뉴 구조를 표현하는 스테이트 머신은 사용자에게 디스플레이를 제공하고 사용자 명령에 응답하도록 사용될 수 있다. 스테이트 머신은 메뉴 스테이트 컨트롤러(660)에 제공된다. 메뉴 스테이트 컨트롤러는 메뉴 스테이트 머신의 현재 상태의 트랙을 유지하고, 사용자로부터 명령을 수신한다. 사용자로부터의 명령은 상태 전이(state transtion)를 야기할 수 있다. 사용자에게 제공된 초기 디스플레이 및 메뉴 상태 전이를 동반하는 디스플레이에 대한 임의의 업데이트는 메뉴 플레이어 인터페이스(662)를 이용하여 제어될 수 있다. 메뉴 플레이어 인터페이스(662)는 메뉴 스테이트 컨트롤러 및 미디어 렌더(media render)에 접속될 수 있다. 메뉴 플레이어 인터페이스는 어느 미디어가 미디어 청크로부터 추출되어 미디어 렌더러에 접속된 플레이어(664)를 통해 사용자에게 제공되어야 하는지에 관해 미디어 렌더러에게 지시한다. 사용자는 키보드, 마우스 또는 원격 제어기 등의 입력 장치를 이용하여 플레이어에게 지시를 제공할 수 있다. 일반적으로, 멀티미디어 파일은 사용자에 대해 초기에 디스플레이되는 메뉴를 지정하고, 사용자의 지시는 초기 메뉴의 생성에 후속하여 디스플레이된 비디오 및 오디오를 지정한다. 도 4.1에 예시된 시스템은 컴퓨터 및 소프트웨어를 사용하여 구현될 수 있다. 다른 예에서, 시스템은 특정 기능의 집적회로를 사용하거나 또는 소프트웨어와 펌웨어의 조합을 이용하여 구현될 수 있다.
본 발명의 실시예에 따른 메뉴의 예가 도 4.2에 예시되어 이다. 메뉴 디스플레이(670)는 4개의 버튼 영역(672)과, 타이틀(676)을 포함하는 배경 비디오(674)와, 포인터(678)를 포함한다. 메뉴는 또한 배경 오디오(도시하지 않음)를 포함한다. 디스플레이에 의해 형성된 시각적 효과는 믿을 수 없는 것일 수도 있다. 버튼의 시각적 외형은 통상적으로 배경 비디오의 일부이고, 버튼 자체는 배경 비디오의 간략하게 정의된 영역으로, 이 영역은 이 영역이 포인터에 의해 활성화될 때에 이 영역에 연관된 특정의 동작을 갖는다. 포인터로는 대표적으로 오버레이(overlay)가 있다.
도 4.3은 도 4.2에 도시된 디스플레이에서의 모든 정보의 소스를 개념적으로 예시한다. 배경 비디오(674)는 메뉴 타이틀, 버튼의 시각적 외형 및 디스플레이의 배경을 포함할 수 있다. 이들 요소 및 추가의 요소의 전부는 정지 화상으로 보여지거나 또는 애니메이션화되어 보여질 수 있다. 배경 비디오는 비디오 트랙(702) 내의 배경 비디오의 위치를 나타내는 "MediaTrack" 청크(708)에 포함된 정보를 이용함으로써 추출된다. 메뉴와 동반될 수 있는 배경 오디오(706)는 오디오 트랙(710) 내의 배경 오디오의 위치를 나타내는 "MediaTrack" 청크(708)를 이용하여 위치될 수 있다. 전술한 바와 같이, 포인터(678)는 오버레이(713)의 일부이다. 오버레이(713)는 또한 버튼으로서 보여지는 배경 비디오의 일부분을 강조 표시하도록 보여지는 그래픽을 포함할 수 있다. 일실시예에서, 오버레이(713)는 오버레이 트랙(714) 내에서의 오버레이의 위치를 나타내는 "MediaTrack" 청크(712)를 이용하여 획득된다. 메뉴가 사용자와 대화하는 방식은 버튼의 각각에 관련된 "Action" 청크(도시하지 않음)에 의해 정의된다. 예시된 실시예에서는 "PlayAction" 청크(716)가 예시되어 있다. "PlayAction" 청크는 멀티미디어 파일(즉, 오디오, 비디오 및 가능하게는 서브타이틀 트랙) 내에 포함된 멀티미디어 재현 내의 장면을 간접적으로 참조한다("PlayTrack" 청크에 의해 참조된 다른 청크는 도시되지 않음). "PlayAction" 청크(716)는 궁극적으로는 "MediaTrack" 청크(718)를 이용하여 장면을 참조하며, "MediaTrack" 청크는 특징 트랙 내의 장면을 나타낸다. 선택되거나 디폴트된 오디오 트랙 및 가능하게는 서브타이틀 트랙에서의 포인트 또한 참조된다.
사용자가 입력 장치를 이용하여 명령을 입력할 때, 디스플레이는 버튼의 선택에 응답하여서 뿐만 아니라 버튼 영역 내에 위치되는 포인터에 의해서도 갱신될 수 있을 것이다. 전술한 바와 같이, 메뉴를 생성하기 위해 사용된 미디어 정보의 전부는 멀티미디어 파일 내에 위치되고, 보다 구체적으로는 "DMNU" 청크 내에 위치된다. 다른 실시예에서 이루어지는 것이기는 하지만, 정보는 그 파일 내의 다른 곳에 위치되거나 및/또는 다른 파일에 위치될 수 있다.
5.3. 메타 데이터를 액세스
"메타 데이터"는 정보를 표현하는 표준 방법이다. "메타 데이터"의 표준 성질은 데이터가 자동 프로세스에 의해 액세스되어 이해될 수 있도록 하는 것이다. 일실시예에서, "메타 데이터"는 추출되어, 시청을 위해 사용자에게 제공된다. 여러 실시예는 서버 상의 멀티미디어 파일이 검사되어 사용자의 시청 습관 및 시청 선호도에 관한 정보를 제공하도록 한다. 이러한 정보는 소프트웨어 애플리케이션에 의해 사용되어 사용자가 시청을 즐길 수도 있는 다른 멀티미디어 파일을 권유하도록 할 수 있다. 일실시예에서, 이러한 권유는 다른 사용자의 서버에 포함된 멀티미디어 파일에 기초하여 이루어질 수 있다. 다른 실시예에서, 사용자는 멀티미디어 파일을 요청할 수 있고, 그 파일은 다양한 위치에 있는 멀티미디어 파일의 "메타 데이터"를 검사하는 검색 엔진 및/또는 지능형 에이전트에 의해 위치확인될 수 있다. 또한, 사용자는 상이한 버젼의 재현의 각각이 부호화되는 방식에 관한 "메타 데이터"에 기초하여 특정의 멀티미디어 재현을 포함하고 있는 다양한 멀티미디어 파일 간에 선택이 가능하게 된다.
여러 실시예에서, 본 발명의 실시예에 따른 멀티미디어 파일의 "메타 데이터"는 카다로그화하고자 하는 목적(purpose of cataloging)으로 액세스되거나 또는 파일의 컨텐츠를 액세스하기 위한 간단한 메뉴를 작성하기 위해 액세스될 수 있다.
전술한 설명이 본 발명의 다수의 특정 실시예를 포함하고 있지만, 이러한 실시예는 본 발명의 사상을 제한하려는 것이 아니라, 단지 본 발명을 예시하기 위한 것이다. 예컨대, 본 발명의 실시예에 따른 멀티미디어 파일은 단일의 멀티미디어 재현을 포함할 수도 있고 복수의 멀티미디어 재현을 포함할 수도 있다. 또한, 이러한 파일은 하나 이상의 메뉴와 다양한 상이한 유형의 "메타 데이터"를 포함할 수 있다. 따라서, 본 발명의 사상은 예시된 실시예에 의해서가 아니라 첨부된 청구범위 및 그 등가물에 의해 정해져야 한다.

Claims (169)

  1. 멀티미디어 파일(multimedia file) 내에 포함된 적어도 비디오 트랙, 오디오 트랙, 및 서브타이틀(subtitle) 트랙과 관련된 정보를 갖는 헤더(header)를 포함하는 상기 멀티미디어 파일을 복호화하기 위한 시스템으로서,
    상기 멀티미디어 파일 내의 적어도 비디오 트랙, 오디오 트랙, 및 서브타이틀 트랙과 관련된 정보를 갖는 상기 멀티미디어 파일로부터 헤더 정보를 추출하도록 구성된 프로세서를 포함하며,
    상기 프로세서는 비트맵(bitmap)으로 부호화된 서브타이틀을 복호화하도록 구성되고,
    상기 프로세서는 텍스트(text)로서 부호화된 서브타이틀을 복호화하도록 구성되며,
    상기 프로세서는 디스플레이를 위해 상기 비디오 트랙으로부터 부호화된 프레임에 부호화 서브타이틀을 오버레이(overlay)하도록 구성되고,
    상기 프로세서는 상기 멀티미디어 파일로부터 서브타이틀 트랙의 수를 식별하는 헤더 정보를 추출하도록 구성된,
    멀티미디어 파일 복호화 시스템.
  2. 삭제
  3. 제1항에 있어서,
    상기 멀티미디어 파일은 비디오 청크(video chunks)로서 부호화된 비디오 트랙을 하나 이상 포함하며,
    상기 멀티미디어 파일은 서브타이틀 청크(subtitle chunks)로서 부호화된 서브타이틀 트랙을 하나 이상 포함하는, 멀티미디어 파일 복호화 시스템.
  4. 제3항에 있어서,
    상기 서브타이틀 청크는 단일의 서브타이틀과 관련된 정보를 각각 포함하는, 멀티미디어 파일 복호화 시스템.
  5. 멀티미디어 파일을 복호화하기 위한 시스템으로서,
    상기 멀티미디어 파일로부터 정보를 추출하도록 구성된 프로세서를 포함하며,
    상기 프로세서는 서브타이틀 트랙이 하나 이상 존재하는지 여부를 판정하기 위하여 상기 멀티미디어 파일을 조사(inspect)하도록 구성되고,
    상기 멀티미디어 파일은 비디오 청크로서 부호화된 비디오 트랙을 하나 이상 포함하며, 서브타이틀 청크로서 부호화된 서브타이틀 트랙을 하나 이상 포함하고,
    상기 서브타이틀 청크는 단일의 서브타이틀과 관련된 정보를 각각 포함하며,
    상기 서브타이틀 청크 내에는 서브타이틀이 비트맵으로서 각각 부호화되며,
    상기 프로세서는 상기 비디오 청크를 복호화하고, 복호화된 비디오 청크에 대한 서브타이틀 정보를 포함하는 이전(previous) 서브타이틀 청크를 식별하도록 구성되고,
    상기 프로세서는 상기 식별된 서브타이틀 청크로부터의 비트맵을 비디오 시퀀스의 일부에 중첩(superimpose)시킴으로써 디스플레이를 위한 비디오 프레임을 구성하도록 되어 있는, 멀티미디어 파일 복호화 시스템.
  6. 제5항에 있어서,
    상기 서브타이틀은 압축된 비트맵으로서 부호화되며,
    상기 프로세서는 상기 비트맵을 압축해제(uncompress)하도록 구성되어 있는, 멀티미디어 파일 복호화 시스템.
  7. 제6항에 있어서,
    상기 프로세서는 런 랭스(run length) 부호화된 비트맵을 압축해제하도록 구성된, 멀티미디어 파일 복호화 시스템.
  8. 제5항에 있어서,
    상기 서브타이틀 청크는 상기 비디오 트랙의, 상기 서브타이틀이 중첩되는 부분에 관련된 정보를 각각 포함하며,
    상기 프로세서는 상기 서브타이틀 청크 내의 정보에 의해 표시되는 각각의 비디오 프레임 상에 상기 서브타이틀의 비트맵을 중첩시킴으로써, 비디오 프레임의 시퀀스를 생성하여 표시하도록 구성된, 멀티미디어 파일 복호화 시스템.
  9. 제5항에 있어서,
    상기 서브타이틀 청크는 상기 서브타이틀이 위치하여야 하는 프레임 내의 위치에 관련된 정보를 각각 포함하며,
    상기 프로세서는, 상기 각각의 비디오 프레임 내의, 상기 서브타이틀 청크 내의 정보에 의해 표시된 위치에, 상기 서브타이틀을 중첩시키도록 구성된, 멀티미디어 파일 복호화 시스템.
  10. 제5항에 있어서,
    상기 서브타이틀 청크는 상기 서브타이틀의 컬러(color)에 관련된 정보를 각각 포함하며,
    상기 프로세서는, 상기 서브타이틀 청크 내의 컬러 정보에 의해 표시되는 하나 이상의 컬러에 상기 서브타이틀을 중첩시키도록 구성된, 멀티미디어 파일 복호화 시스템.
  11. 제10항에 있어서,
    상기 서브타이틀 청크 내의 컬러 정보는 컬러 팔레트(color palette)를 포함하며,
    상기 프로세서는, 상기 서브타이틀의 비트맵 내에서 이용되는 컬러 정보를 획득하기 위하여, 상기 컬러 팔레트를 이용하여 상기 서브타이틀을 중첩시키도록 구성된, 멀티미디어 파일 복호화 시스템.
  12. 제11항에 있어서,
    상기 서브타이틀 청크는, 제1 컬러 팔레트에 관한 정보를 포함하는 제1 서브타이틀 청크와, 제2 컬러 팔레트에 관한 정보를 포함하는 제2 서브타이틀 청크를 포함하며,
    상기 프로세서는, 상기 제1 청크가 처리된 이후 상기 서브타이틀의 비트맵에 이용된 컬러에 관한 정보를 획득하기 위하여, 상기 제1 컬러 팔레트를 이용하여 상기 서브타이틀을 중첩시키도록 구성되며, 상기 제2 청크가 처리된 이후 상기 서브타이틀의 비트맵에 이용된 컬러에 관한 정보를 획득하기 위하여, 상기 제2 컬러 팔레트를 이용하여 상기 서브타이틀을 중첩시키도록 구성된, 멀티미디어 파일 복호화 시스템.
  13. 제5항에 있어서,
    상기 서브타이틀 청크는 대응하는 비디오 청크에 앞서 상기 멀티미디어 파일 내에 위치하며, 상기 서브타이틀 청크는 상기 대응하는 비디오 청크의 비디오 프레임에 관한 서브타이틀을 포함하는, 멀티미디어 파일 복호화 시스템.
  14. 제5항에 있어서,
    상기 비디오 청크는 상기 비디오 청크에 바로 앞서는 서브타이틀 청크에 대응하는 제1 비디오 프레임을 포함하는, 멀티미디어 파일 복호화 시스템.
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
  38. 삭제
  39. 삭제
  40. 삭제
  41. 삭제
  42. 삭제
  43. 삭제
  44. 삭제
  45. 삭제
  46. 삭제
  47. 삭제
  48. 삭제
  49. 삭제
  50. 삭제
  51. 삭제
  52. 삭제
  53. 삭제
  54. 삭제
  55. 삭제
  56. 삭제
  57. 삭제
  58. 삭제
  59. 삭제
  60. 삭제
  61. 삭제
  62. 삭제
  63. 삭제
  64. 삭제
  65. 삭제
  66. 삭제
  67. 삭제
  68. 삭제
  69. 삭제
  70. 삭제
  71. 삭제
  72. 삭제
  73. 삭제
  74. 삭제
  75. 삭제
  76. 삭제
  77. 삭제
  78. 삭제
  79. 삭제
  80. 삭제
  81. 삭제
  82. 삭제
  83. 삭제
  84. 삭제
  85. 삭제
  86. 삭제
  87. 삭제
  88. 삭제
  89. 삭제
  90. 삭제
  91. 삭제
  92. 삭제
  93. 삭제
  94. 삭제
  95. 삭제
  96. 삭제
  97. 삭제
  98. 삭제
  99. 삭제
  100. 삭제
  101. 삭제
  102. 삭제
  103. 삭제
  104. 삭제
  105. 삭제
  106. 삭제
  107. 삭제
  108. 삭제
  109. 삭제
  110. 삭제
  111. 삭제
  112. 삭제
  113. 삭제
  114. 삭제
  115. 삭제
  116. 삭제
  117. 삭제
  118. 삭제
  119. 삭제
  120. 삭제
  121. 삭제
  122. 삭제
  123. 삭제
  124. 삭제
  125. 삭제
  126. 삭제
  127. 삭제
  128. 삭제
  129. 삭제
  130. 삭제
  131. 삭제
  132. 삭제
  133. 삭제
  134. 삭제
  135. 삭제
  136. 삭제
  137. 삭제
  138. 삭제
  139. 삭제
  140. 삭제
  141. 삭제
  142. 삭제
  143. 삭제
  144. 삭제
  145. 삭제
  146. 삭제
  147. 삭제
  148. 삭제
  149. 삭제
  150. 삭제
  151. 삭제
  152. 삭제
  153. 삭제
  154. 삭제
  155. 삭제
  156. 삭제
  157. 삭제
  158. 삭제
  159. 삭제
  160. 삭제
  161. 삭제
  162. 삭제
  163. 삭제
  164. 삭제
  165. 삭제
  166. 삭제
  167. 삭제
  168. 삭제
  169. 삭제
KR1020067013801A 2003-12-08 2004-12-08 멀티미디어 분배 시스템 KR101127407B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/731,809 2003-12-08
US10/731,809 US7519274B2 (en) 2003-12-08 2003-12-08 File format for multiple track digital data
PCT/US2004/041667 WO2005057906A2 (en) 2003-12-08 2004-12-08 Multimedia distribution system

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020117022407A Division KR101380262B1 (ko) 2003-12-08 2004-12-08 멀티미디어 분배 시스템

Publications (2)

Publication Number Publication Date
KR20060122893A KR20060122893A (ko) 2006-11-30
KR101127407B1 true KR101127407B1 (ko) 2012-03-23

Family

ID=34634434

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020117022407A KR101380262B1 (ko) 2003-12-08 2004-12-08 멀티미디어 분배 시스템
KR1020067013801A KR101127407B1 (ko) 2003-12-08 2004-12-08 멀티미디어 분배 시스템
KR1020137020778A KR20130105908A (ko) 2003-12-08 2004-12-08 멀티미디어 분배 시스템
KR1020127033797A KR101380265B1 (ko) 2003-12-08 2004-12-08 멀티미디어 분배 시스템

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020117022407A KR101380262B1 (ko) 2003-12-08 2004-12-08 멀티미디어 분배 시스템

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020137020778A KR20130105908A (ko) 2003-12-08 2004-12-08 멀티미디어 분배 시스템
KR1020127033797A KR101380265B1 (ko) 2003-12-08 2004-12-08 멀티미디어 분배 시스템

Country Status (9)

Country Link
US (12) US7519274B2 (ko)
EP (3) EP2927816B1 (ko)
JP (4) JP2007532044A (ko)
KR (4) KR101380262B1 (ko)
CN (1) CN101124561B (ko)
BR (1) BRPI0416738B1 (ko)
ES (2) ES2784837T3 (ko)
HK (1) HK1215889A1 (ko)
WO (1) WO2005057906A2 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10257443B2 (en) 2003-12-08 2019-04-09 Divx, Llc Multimedia distribution system for multimedia files with interleaved media chunks of varying types
US10902883B2 (en) 2007-11-16 2021-01-26 Divx, Llc Systems and methods for playing back multimedia files incorporating reduced index structures
US11017816B2 (en) 2003-12-08 2021-05-25 Divx, Llc Multimedia distribution system

Families Citing this family (163)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100406630B1 (ko) * 2001-03-13 2003-11-20 엘지전자 주식회사 데모용 데이터의 기록 및 재생방법과, 그에 따른 기록매체
KR20020072934A (ko) * 2001-03-13 2002-09-19 엘지전자 주식회사 데모용 데이터가 기록된 재생전용 광디스크와, 그 재생방법
US7215770B2 (en) * 2002-01-02 2007-05-08 Sony Corporation System and method for partially encrypted multimedia stream
KR20040000290A (ko) * 2002-06-24 2004-01-03 엘지전자 주식회사 고밀도 광디스크의 멀티 경로 데이터 스트림 관리방법
US7116716B2 (en) 2002-11-01 2006-10-03 Microsoft Corporation Systems and methods for generating a motion attention model
US7260261B2 (en) * 2003-02-20 2007-08-21 Microsoft Corporation Systems and methods for enhanced image adaptation
US20070206682A1 (en) * 2003-09-29 2007-09-06 Eric Hamilton Method And Apparatus For Coding Information
US20060200744A1 (en) * 2003-12-08 2006-09-07 Adrian Bourke Distributing and displaying still photos in a multimedia distribution system
US7649539B2 (en) * 2004-03-10 2010-01-19 Microsoft Corporation Image formats for video capture, processing and display
RU2376659C2 (ru) * 2004-03-26 2009-12-20 ЭлДжи ЭЛЕКТРОНИКС ИНК. Носитель записи и способ и устройство для воспроизведения потока текстовых субтитров, записанного на носителе записи
ATE479987T1 (de) * 2004-03-26 2010-09-15 Lg Electronics Inc Speichermedium,verfahren, und gerät zum wiedergeben von untertiteldatenströmen
US7624021B2 (en) * 2004-07-02 2009-11-24 Apple Inc. Universal container for audio data
US9053754B2 (en) 2004-07-28 2015-06-09 Microsoft Technology Licensing, Llc Thumbnail generation and presentation for recorded TV programs
US7986372B2 (en) * 2004-08-02 2011-07-26 Microsoft Corporation Systems and methods for smart media content thumbnail extraction
KR100628655B1 (ko) * 2004-10-20 2006-09-26 한국전자통신연구원 상이한 디지털 저작권 관리 도메인간의 콘텐츠 교환을 위한방법 및 시스템
TWI237806B (en) * 2004-11-03 2005-08-11 Sunplus Technology Co Ltd Audio decoding system with ring buffer and method thereof
US20060123063A1 (en) * 2004-12-08 2006-06-08 Ryan William J Audio and video data processing in portable multimedia devices
KR100703738B1 (ko) * 2005-01-19 2007-04-05 삼성전자주식회사 컨텐츠 재생시 화면 보호기의 동작을 제어하는 방법 및 장치
GB2424534B (en) * 2005-03-24 2007-09-05 Zootech Ltd Authoring audiovisual content
US20060222073A1 (en) * 2005-03-29 2006-10-05 Guillaume Mercier Authoring running marks in compressed data
US7876819B2 (en) 2005-09-22 2011-01-25 Qualcomm Incorporated Two pass rate control techniques for video coding using rate-distortion characteristics
US8379721B2 (en) * 2005-09-22 2013-02-19 Qualcomm Incorported Two pass rate control techniques for video coding using a min-max approach
TWI388216B (zh) * 2005-10-13 2013-03-01 Lg Electronics Inc 用於編碼/解碼之方法與裝置
US20090160862A1 (en) * 2005-10-13 2009-06-25 Tae Hyeon Kim Method and Apparatus for Encoding/Decoding
US20070112811A1 (en) * 2005-10-20 2007-05-17 Microsoft Corporation Architecture for scalable video coding applications
US8180826B2 (en) * 2005-10-31 2012-05-15 Microsoft Corporation Media sharing and authoring on the web
US7773813B2 (en) 2005-10-31 2010-08-10 Microsoft Corporation Capture-intention detection for video content analysis
US8196032B2 (en) * 2005-11-01 2012-06-05 Microsoft Corporation Template-based multimedia authoring and sharing
KR100667840B1 (ko) * 2005-11-30 2007-01-11 삼성전자주식회사 멀티미디어 파일을 생성 방법, 재생 방법, 재생 장치 및멀티미디어 파일이 기록된 정보저장매체
US7949131B2 (en) * 2005-12-19 2011-05-24 Sigmatel, Inc. Digital security system
US20070162855A1 (en) * 2006-01-06 2007-07-12 Kelly Hawk Movie authoring
US20070162857A1 (en) * 2006-01-06 2007-07-12 Ralf Weber Automated multimedia authoring
US7636889B2 (en) * 2006-01-06 2009-12-22 Apple Inc. Controlling behavior of elements in a display environment
WO2007106844A2 (en) 2006-03-14 2007-09-20 Divx, Inc. Federated digital rights management scheme including trusted systems
US7962933B2 (en) * 2006-04-06 2011-06-14 Velti USA, Inc. Mid-roll insertion of digital media
US20080040215A1 (en) * 2006-04-06 2008-02-14 Ad Infuse, Inc. Mid-Roll Insertion of Digital Media
US8880571B2 (en) * 2006-05-05 2014-11-04 Microsoft Corporation High dynamic range data format conversions for digital media
US20080005175A1 (en) * 2006-06-01 2008-01-03 Adrian Bourke Content description system
US20070283158A1 (en) * 2006-06-02 2007-12-06 Microsoft Corporation Microsoft Patent Group System and method for generating a forensic file
US8275814B2 (en) * 2006-07-12 2012-09-25 Lg Electronics Inc. Method and apparatus for encoding/decoding signal
KR100903958B1 (ko) * 2006-08-02 2009-06-25 엠텍비젼 주식회사 디지털 오디오 데이터의 복호화 방법, 디지털 오디오데이터의 복호화 장치 및 디지털 오디오 데이터의 복호화방법을 수행하는 기록매체
US20080066107A1 (en) * 2006-09-12 2008-03-13 Google Inc. Using Viewing Signals in Targeted Video Advertising
EP2089882A4 (en) * 2006-10-19 2010-12-08 Lg Electronics Inc Coding method and apparatus and decoding method and apparatus
CN101636726B (zh) 2007-01-05 2013-10-30 Divx有限责任公司 包含连续播放的视频分配系统
US8054886B2 (en) * 2007-02-21 2011-11-08 Microsoft Corporation Signaling and use of chroma sample positioning information
US8667532B2 (en) 2007-04-18 2014-03-04 Google Inc. Content recognition for targeting video advertisements
US20080276266A1 (en) * 2007-04-18 2008-11-06 Google Inc. Characterizing content for identification of advertising
US20080294691A1 (en) * 2007-05-22 2008-11-27 Sunplus Technology Co., Ltd. Methods for generating and playing multimedia file and recording medium storing multimedia file
US8433611B2 (en) * 2007-06-27 2013-04-30 Google Inc. Selection of advertisements for placement with content
US8249451B2 (en) * 2007-08-16 2012-08-21 Futurewei Technologies, Inc. Methods for characterizing optical switches and multiplexers/demultiplexers
US9064024B2 (en) 2007-08-21 2015-06-23 Google Inc. Bundle generation
KR101482099B1 (ko) * 2007-10-08 2015-01-13 엘지전자 주식회사 멀티 미디어 데이터의 부호화/복호화 방법 및 장치
US8230125B2 (en) * 2007-10-30 2012-07-24 Mediatek Inc. Methods for reserving index memory space in AVI recording apparatus
US20090119332A1 (en) * 2007-11-01 2009-05-07 Lection David B Method And System For Providing A Media Transition Having A Temporal Link To Presentable Media Available From A Remote Content Provider
US8301793B2 (en) 2007-11-16 2012-10-30 Divx, Llc Chunk header incorporating binary flags and correlated variable-length fields
US7836107B2 (en) * 2007-12-20 2010-11-16 Microsoft Corporation Disk seek optimized file system
US8997161B2 (en) 2008-01-02 2015-03-31 Sonic Ip, Inc. Application enhancement tracks
KR20090076689A (ko) * 2008-01-09 2009-07-13 삼성전자주식회사 디지털 비디오 방송 시스템에서 전자 서비스 가이드를송/수신하는 장치 및 방법
US9824372B1 (en) 2008-02-11 2017-11-21 Google Llc Associating advertisements with videos
EP2107811A1 (en) * 2008-03-31 2009-10-07 British Telecmmunications public limited campany Encoder
US20090257484A1 (en) * 2008-04-15 2009-10-15 Winbond Electronics Corp. Method for audio-video encoding and apparatus for multimedia storage
US20100037149A1 (en) * 2008-08-05 2010-02-11 Google Inc. Annotating Media Content Items
WO2010039126A1 (en) * 2008-09-30 2010-04-08 Hewlett-Packard Development Company, L.P. Nas-based multimedia file distribution service
KR100989079B1 (ko) * 2008-10-28 2010-10-25 한국전자통신연구원 오케스트라 미디어 서비스 시스템 및 방법
WO2010051545A1 (en) * 2008-10-31 2010-05-06 Divx, Inc. System and method for playing content on certified devices
WO2010080911A1 (en) 2009-01-07 2010-07-15 Divx, Inc. Singular, collective and automated creation of a media guide for online content
FR2946820B1 (fr) * 2009-06-16 2012-05-11 Canon Kk Procede de transmission de donnees et dispositif associe.
US8355433B2 (en) * 2009-08-18 2013-01-15 Netflix, Inc. Encoding video streams for adaptive video streaming
KR101246596B1 (ko) * 2009-08-26 2013-03-25 에스케이플래닛 주식회사 서비스 영상 전송 시스템, 서버 및 방법
US20110066488A1 (en) * 2009-09-17 2011-03-17 Ad Infuse, Inc. Mobile ad routing
CA2782825C (en) 2009-12-04 2016-04-26 Divx, Llc Elementary bitstream cryptographic material transport systems and methods
US9152708B1 (en) 2009-12-14 2015-10-06 Google Inc. Target-video specific co-watched video clusters
US20110153337A1 (en) * 2009-12-17 2011-06-23 Electronics And Telecommunications Research Institute Encoding apparatus and method and decoding apparatus and method of audio/voice signal processing apparatus
JP2011253589A (ja) * 2010-06-02 2011-12-15 Funai Electric Co Ltd 画像音声再生装置
WO2012010928A1 (en) * 2010-07-20 2012-01-26 Nokia Corporation A media streaming apparatus
CN102387121B (zh) * 2010-08-30 2014-07-23 株式会社日立制作所 管理服务器、影像分发控制系统及影像分发控制方法
US20120143986A1 (en) * 2010-11-30 2012-06-07 Rovi Technologies Corporation Systems and methods for downloading by different processes
US8914534B2 (en) * 2011-01-05 2014-12-16 Sonic Ip, Inc. Systems and methods for adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol
WO2012125006A2 (ko) 2011-03-16 2012-09-20 한국전자통신연구원 레프리젠테이션을 사용하는 스트리밍 콘텐츠 제공 장치 및 방법
JP5857449B2 (ja) * 2011-05-27 2016-02-10 ソニー株式会社 画像処理装置及び録画装置
US9467708B2 (en) 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
US8818171B2 (en) 2011-08-30 2014-08-26 Kourosh Soroushian Systems and methods for encoding alternative streams of video for playback on playback devices having predetermined display aspect ratios and network connection maximum data rates
US9955195B2 (en) 2011-08-30 2018-04-24 Divx, Llc Systems and methods for encoding and streaming video encoded using a plurality of maximum bitrate levels
US8799647B2 (en) 2011-08-31 2014-08-05 Sonic Ip, Inc. Systems and methods for application identification
US8787570B2 (en) 2011-08-31 2014-07-22 Sonic Ip, Inc. Systems and methods for automatically genenrating top level index files
US8909922B2 (en) 2011-09-01 2014-12-09 Sonic Ip, Inc. Systems and methods for playing back alternative streams of protected content protected using common cryptographic information
US8964977B2 (en) * 2011-09-01 2015-02-24 Sonic Ip, Inc. Systems and methods for saving encoded media streamed using adaptive bitrate streaming
US9918115B2 (en) 2011-10-04 2018-03-13 Google Llc System and method for obtaining video streams
US8976814B2 (en) * 2011-12-09 2015-03-10 General Electric Company Method of transporting data from sending node to destination node
US20130179199A1 (en) 2012-01-06 2013-07-11 Rovi Corp. Systems and methods for granting access to digital content using electronic tickets and ticket tokens
US10616782B2 (en) 2012-03-29 2020-04-07 Mgage, Llc Cross-channel user tracking systems, methods and devices
US20130329808A1 (en) * 2012-06-12 2013-12-12 Jorg-Ulrich Mohnen Streaming portions of a quilted image representation along with content control data
US9197685B2 (en) 2012-06-28 2015-11-24 Sonic Ip, Inc. Systems and methods for fast video startup using trick play streams
US9143812B2 (en) 2012-06-29 2015-09-22 Sonic Ip, Inc. Adaptive streaming of multimedia
US10452715B2 (en) 2012-06-30 2019-10-22 Divx, Llc Systems and methods for compressing geotagged video
US9436300B2 (en) * 2012-07-10 2016-09-06 Nokia Technologies Oy Method and apparatus for providing a multimodal user interface track
WO2014015110A1 (en) 2012-07-18 2014-01-23 Verimatrix, Inc. Systems and methods for rapid content switching to provide a linear tv experience using streaming content distribution
US8914836B2 (en) 2012-09-28 2014-12-16 Sonic Ip, Inc. Systems, methods, and computer program products for load adaptive streaming
US8997254B2 (en) 2012-09-28 2015-03-31 Sonic Ip, Inc. Systems and methods for fast startup streaming of encrypted multimedia content
US9313510B2 (en) 2012-12-31 2016-04-12 Sonic Ip, Inc. Use of objective quality measures of streamed content to reduce streaming bandwidth
US9191457B2 (en) 2012-12-31 2015-11-17 Sonic Ip, Inc. Systems, methods, and media for controlling delivery of content
US9264475B2 (en) 2012-12-31 2016-02-16 Sonic Ip, Inc. Use of objective quality measures of streamed content to reduce streaming bandwidth
US8943068B2 (en) * 2013-02-26 2015-01-27 Cray Inc Dynamic graph system for a semantic database
US20160156697A1 (en) * 2013-03-04 2016-06-02 Yimwai Yau Communication terminal product supporting interactive association system
US9372531B2 (en) * 2013-03-12 2016-06-21 Gracenote, Inc. Detecting an event within interactive media including spatialized multi-channel audio content
US9680901B2 (en) * 2013-03-14 2017-06-13 Openwave Mobility, Inc. Method, apparatus and non-transitory computer medium for encoding data of a media file
US10397292B2 (en) 2013-03-15 2019-08-27 Divx, Llc Systems, methods, and media for delivery of content
US9906785B2 (en) 2013-03-15 2018-02-27 Sonic Ip, Inc. Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata
US9344517B2 (en) 2013-03-28 2016-05-17 Sonic Ip, Inc. Downloading and adaptive streaming of multimedia content to a device with cache assist
US9247317B2 (en) 2013-05-30 2016-01-26 Sonic Ip, Inc. Content streaming with client device trick play index
US9094737B2 (en) 2013-05-30 2015-07-28 Sonic Ip, Inc. Network video streaming with trick play based on separate trick play files
US9967305B2 (en) 2013-06-28 2018-05-08 Divx, Llc Systems, methods, and media for streaming media content
CA2898667C (en) 2013-08-19 2019-01-15 Huawei Technologies Co., Ltd. Data object processing method and apparatus
CN103491416B (zh) * 2013-09-29 2018-09-04 深圳Tcl新技术有限公司 字幕数据的单图层显示方法和装置
KR102318785B1 (ko) 2013-10-14 2021-10-27 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 비디오 및 영상 코딩 및 디코딩에 대한 기본 색상 인덱스 맵 모드의 특징
US9343112B2 (en) 2013-10-31 2016-05-17 Sonic Ip, Inc. Systems and methods for supplementing content from a server
US9621613B1 (en) * 2013-11-05 2017-04-11 Visualon, Inc. Bitrate adaptation transitioning using key frames
GB201321851D0 (en) 2013-12-10 2014-01-22 Canon Kk Run length parameters coding for palette mode
JP2017508326A (ja) * 2013-12-19 2017-03-23 エルジー エレクトロニクス インコーポレイティド 放送伝送装置、放送伝送装置の動作方法、放送受信装置および放送受信装置の動作方法
US10542274B2 (en) 2014-02-21 2020-01-21 Microsoft Technology Licensing, Llc Dictionary encoding and decoding of screen content
US10063912B2 (en) * 2014-02-28 2018-08-28 Avago Technologies General Ip (Singapore) Pte. Ltd. Adaptive transcoding bypass system
US9866878B2 (en) 2014-04-05 2018-01-09 Sonic Ip, Inc. Systems and methods for encoding and playing back video at different frame rates using enhancement layers
JP6331670B2 (ja) * 2014-05-12 2018-05-30 ソニー株式会社 受信装置、および送信装置、並びにデータ処理方法
MX369767B (es) * 2014-05-30 2019-11-21 Sony Corp Dispositivo de procesamiento de informacion y metodo de procesamiento de informacion.
CN105338394B (zh) 2014-06-19 2018-11-30 阿里巴巴集团控股有限公司 字幕数据的处理方法及系统
WO2015194393A1 (ja) * 2014-06-20 2015-12-23 ソニー株式会社 情報処理装置および情報処理方法
CA3171803A1 (en) 2014-09-30 2016-04-07 Microsoft Technology Licensing, Llc Rules for intra-picture prediction modes when wavefront parallel processing is enabled
EP3243130B1 (en) 2015-01-06 2019-08-14 Sonic IP, Inc. Systems and methods for encoding and sharing content between devices
JP6891492B2 (ja) 2015-02-03 2021-06-18 ソニーグループ株式会社 送信装置、送信方法、受信装置および受信方法
CN106664405B (zh) * 2015-06-09 2020-06-09 微软技术许可有限责任公司 用调色板模式对经逸出编码的像素的稳健编码/解码
US10602153B2 (en) * 2015-09-11 2020-03-24 Facebook, Inc. Ultra-high video compression
US10602157B2 (en) 2015-09-11 2020-03-24 Facebook, Inc. Variable bitrate control for distributed video encoding
US10499070B2 (en) 2015-09-11 2019-12-03 Facebook, Inc. Key frame placement for distributed video encoding
US10341561B2 (en) 2015-09-11 2019-07-02 Facebook, Inc. Distributed image stabilization
US10063872B2 (en) 2015-09-11 2018-08-28 Facebook, Inc. Segment based encoding of video
US10506235B2 (en) 2015-09-11 2019-12-10 Facebook, Inc. Distributed control of video encoding speeds
US10375156B2 (en) 2015-09-11 2019-08-06 Facebook, Inc. Using worker nodes in a distributed video encoding system
CN105592368B (zh) * 2015-12-18 2019-05-03 中星技术股份有限公司 一种视频码流中版本标识的方法
TWI728061B (zh) * 2016-03-15 2021-05-21 日商新力股份有限公司 送訊裝置及收訊裝置
US10075292B2 (en) 2016-03-30 2018-09-11 Divx, Llc Systems and methods for quick start-up of playback
US9619588B1 (en) 2016-03-31 2017-04-11 Ca, Inc. Detecting and displaying cumulative lossy transformation
US10148989B2 (en) 2016-06-15 2018-12-04 Divx, Llc Systems and methods for encoding video content
CN107526742B (zh) * 2016-06-21 2021-10-08 伊姆西Ip控股有限责任公司 用于处理多语言文本的方法和设备
CN106231222B (zh) * 2016-08-23 2019-05-14 深圳亿维锐创科技股份有限公司 基于多码流可交互的示教录像文件格式的存储播放方法
CN107919943B (zh) 2016-10-11 2020-08-04 阿里巴巴集团控股有限公司 二进制数据的编码、解码方法和装置
TWI640195B (zh) * 2016-12-14 2018-11-01 日商夏普股份有限公司 具有統一資源識別符訊息浮水印有效負載之廣播系統
US10498795B2 (en) 2017-02-17 2019-12-03 Divx, Llc Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming
US10187443B2 (en) 2017-06-12 2019-01-22 C-Hear, Inc. System and method for encoding image data and other data types into one data format and decoding of same
US11588872B2 (en) 2017-06-12 2023-02-21 C-Hear, Inc. System and method for codec for combining disparate content
US11146608B2 (en) * 2017-07-20 2021-10-12 Disney Enterprises, Inc. Frame-accurate video seeking via web browsers
KR102343958B1 (ko) * 2017-11-03 2021-12-27 현대자동차주식회사 멀티미디어 장치 및 멀티미디어 장치에 의한 오류 표시 검출 방법
CN111147896A (zh) * 2018-11-05 2020-05-12 中兴通讯股份有限公司 一种字幕数据处理方法、装置、设备和计算机存储介质
CN110197177B (zh) * 2019-04-22 2024-03-19 平安科技(深圳)有限公司 提取视频字幕的方法、装置、计算机设备及存储介质
CN110334705B (zh) * 2019-06-25 2021-08-03 华中科技大学 一种结合全局和局部信息的场景文本图像的语种识别方法
CN111565330A (zh) * 2020-07-13 2020-08-21 北京美摄网络科技有限公司 一种同步字幕的添加方法及装置、电子设备、存储介质
CN111901538B (zh) 2020-07-23 2023-02-17 北京字节跳动网络技术有限公司 一种字幕生成方法、装置、设备及存储介质
CN112055262B (zh) * 2020-08-11 2022-10-21 视若飞信息科技(上海)有限公司 一种网络流媒体字幕的显示方法及系统
CN112000308B (zh) * 2020-09-10 2023-04-18 成都拟合未来科技有限公司 一种双音轨音频播放控制方法、系统、终端及介质
US20230059035A1 (en) * 2021-08-23 2023-02-23 Netflix, Inc. Efficient encoding of film grain noise
WO2023026065A1 (en) 2021-08-27 2023-03-02 Blackbird Plc Methods of encrypting a multimedia file, methods of decrypting an encrypted multimedia file; computer program products and apparatus
TWI777771B (zh) * 2021-09-15 2022-09-11 英業達股份有限公司 行動影音裝置及影音播放控制方法
CN114238524B (zh) * 2021-12-21 2022-05-31 军事科学院系统工程研究院网络信息研究所 基于增强样本模型的卫星频轨数据信息抽取方法
CN115103222A (zh) * 2022-06-24 2022-09-23 湖南快乐阳光互动娱乐传媒有限公司 一种视频音轨处理方法及相关设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5745643A (en) * 1995-04-06 1998-04-28 Kabushiki Kaisha Toshiba System for and method of reproducing playback data appropriately by the use of attribute information on the playback data

Family Cites Families (651)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3609227A (en) 1968-09-09 1971-09-28 Ampex Random access audio/video information retrieval system
US4009331A (en) 1974-12-24 1977-02-22 Goldmark Communications Corporation Still picture program video recording composing and playback method and system
JPS5343143A (en) 1976-09-30 1978-04-19 Tokai Trw & Co Ignition plug
US4694491A (en) 1985-03-11 1987-09-15 General Instrument Corp. Cryptographic system using interchangeable key blocks and selectable key fragments
US4694357A (en) 1985-04-24 1987-09-15 Thomson-Csf Broadcast, Inc. Apparatus and method for video signal processing
US4802170A (en) 1987-04-29 1989-01-31 Matrox Electronics Systems Limited Error disbursing format for digital information and method for organizing same
US4964069A (en) 1987-05-12 1990-10-16 International Business Machines Corporation Self adjusting video interface
US5274758A (en) 1989-06-16 1993-12-28 International Business Machines Computer-based, audio/visual creation and presentation system and method
US5119474A (en) 1989-06-16 1992-06-02 International Business Machines Corp. Computer-based, audio/visual creation and presentation system and method
US5470631A (en) * 1990-04-03 1995-11-28 Masonite Corporation Flat oriented strand board-fiberboard composite structure and method of making the same
US5428529A (en) 1990-06-29 1995-06-27 International Business Machines Corporation Structured document tags invoking specialized functions
JP3236015B2 (ja) 1990-10-09 2001-12-04 キヤノン株式会社 情報処理装置及び方法
US5132992A (en) 1991-01-07 1992-07-21 Paul Yurt Audio and video transmission and receiving system
US5253275A (en) 1991-01-07 1993-10-12 H. Lee Browne Audio and video transmission and receiving system
US5412773A (en) 1991-11-19 1995-05-02 Sony Electronics Inc. Computerized interactive menu-driven video signal processing apparatus and method
US5404436A (en) 1991-11-27 1995-04-04 Digital Equipment Corporation Computer method and apparatus for converting compressed characters for display in full size
US6850252B1 (en) 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
JP2521016B2 (ja) 1991-12-31 1996-07-31 インターナショナル・ビジネス・マシーンズ・コーポレイション マルチメディア・デ―タ処理システム
US5341474A (en) 1992-05-15 1994-08-23 Bell Communications Research, Inc. Communications architecture and buffer for distributing information services
US5420974A (en) 1992-10-15 1995-05-30 International Business Machines Corporation Multimedia complex form creation, display and editing method apparatus
US5400401A (en) 1992-10-30 1995-03-21 Scientific Atlanta, Inc. System and method for transmitting a plurality of digital services
US5420801A (en) 1992-11-13 1995-05-30 International Business Machines Corporation System and method for synchronization of multimedia streams
US5471576A (en) 1992-11-16 1995-11-28 International Business Machines Corporation Audio/video synchronization for application programs
US5539908A (en) 1992-11-24 1996-07-23 International Business Machines Corporation Dynamically linked and shared compression/decompression
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
US5719786A (en) * 1993-02-03 1998-02-17 Novell, Inc. Digital media data stream network management system
US5396497A (en) 1993-02-26 1995-03-07 Sony Corporation Synchronization of audio/video information
US5544318A (en) 1993-04-16 1996-08-06 Accom, Inc., Asynchronous media server request processing system for servicing reprioritizing request from a client determines whether or not to delay executing said reprioritizing request
ES2074417T3 (es) 1993-06-23 2001-02-01 Wella Ag Producto acuoso para el fijado del cabello.
JP2707950B2 (ja) 1993-07-30 1998-02-04 ソニー株式会社 ディジタル画像情報処理装置
EP0790739B1 (en) * 1993-09-16 2001-03-14 Kabushiki Kaisha Toshiba Digital video signal
US5596564A (en) 1993-10-08 1997-01-21 Matsushita Electric Industrial Co., Ltd. Information recording medium and apparatus and method for recording and reproducing information
EP0651391A3 (en) * 1993-10-29 1997-02-05 Tokyo Shibaura Electric Co Threaded fastener.
US5574934A (en) 1993-11-24 1996-11-12 Intel Corporation Preemptive priority-based transmission of signals using virtual channels
US5684542A (en) * 1993-12-21 1997-11-04 Sony Corporation Video subtitle processing system
US6473860B1 (en) 1994-04-07 2002-10-29 Hark C. Chan Information distribution and processing system
JP2945842B2 (ja) 1994-04-13 1999-09-06 株式会社東芝 データ記録方法、データ再生装置及びデータ再生方法
US5583652A (en) 1994-04-28 1996-12-10 International Business Machines Corporation Synchronized, variable-speed playback of digitally recorded audio and video
US5477263A (en) 1994-05-26 1995-12-19 Bell Atlantic Network Services, Inc. Method and apparatus for video on demand with fast forward, reverse and channel pause
JPH07327029A (ja) * 1994-05-31 1995-12-12 Fujitsu Ltd 暗号化通信システム
US5642171A (en) 1994-06-08 1997-06-24 Dell Usa, L.P. Method and apparatus for synchronizing audio and video data streams in a multimedia system
US5633472A (en) 1994-06-21 1997-05-27 Microsoft Corporation Method and system using pathnames to specify and access audio data at fidelity levels other than the level at which the data is stored
US5907597A (en) * 1994-08-05 1999-05-25 Smart Tone Authentication, Inc. Method and system for the secure communication of data
JPH0856356A (ja) 1994-08-10 1996-02-27 Fujitsu Ltd 符号化装置および復号化装置
US5761417A (en) 1994-09-08 1998-06-02 International Business Machines Corporation Video data streamer having scheduler for scheduling read request for individual data buffers associated with output ports of communication node to one storage node
EP0787391B1 (en) 1994-09-09 2002-01-23 The Titan Corporation Conditional access system
US5541662A (en) 1994-09-30 1996-07-30 Intel Corporation Content programmer control of video and data display using associated data
US5614940A (en) 1994-10-21 1997-03-25 Intel Corporation Method and apparatus for providing broadcast information with indexing
WO1996017313A1 (en) 1994-11-18 1996-06-06 Oracle Corporation Method and apparatus for indexing multimedia information streams
US7349976B1 (en) 1994-11-30 2008-03-25 Realnetworks, Inc. Audio-on-demand communication system
US5793980A (en) 1994-11-30 1998-08-11 Realnetworks, Inc. Audio-on-demand communication system
JP2842796B2 (ja) 1994-12-06 1999-01-06 富士通株式会社 動画像の暗号化処理方法及び装置及び暗号化された動画像の復号化処理方法及び装置
JPH08163488A (ja) 1994-12-12 1996-06-21 Matsushita Electric Ind Co Ltd 動画像ダイジェスト生成方法及び動画像ダイジェスト生成装置
US5721720A (en) * 1994-12-28 1998-02-24 Kabushiki Kaisha Toshiba Optical recording medium recording pixel data as a compressed unit data block
US5485611A (en) 1994-12-30 1996-01-16 Intel Corporation Video database indexing and method of presenting video database index to a user
CA2168641C (en) * 1995-02-03 2000-03-28 Tetsuya Kitamura Image information encoding/decoding system
US5533021A (en) 1995-02-03 1996-07-02 International Business Machines Corporation Apparatus and method for segmentation and time synchronization of the transmission of multimedia data
CN1912885B (zh) 1995-02-13 2010-12-22 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法
DE727780T1 (de) 1995-02-16 1997-02-13 Toshiba Kawasaki Kk Ausgabesteuerungssystem für umschaltbare Torkanäle
JP3602635B2 (ja) 1995-02-16 2004-12-15 株式会社東芝 音声切換方法および再生装置
US6009237A (en) 1995-02-24 1999-12-28 Hitachi Ltd. Optical disk and optical disk reproduction apparatus
US6002834A (en) 1995-02-24 1999-12-14 Hitachi, Ltd. Optical disk having table relating sector address and time and optical disk reproducing apparatus
US6937729B2 (en) 1995-04-03 2005-08-30 Scientific-Atlanta, Inc. Representing entitlements to service in a conditional access system
US5813010A (en) 1995-04-14 1998-09-22 Kabushiki Kaisha Toshiba Information storage and information transmission media with parental control
TW430785B (en) 1995-04-14 2001-04-21 Toshiba Corp Interactively broadcasting recording-media and its regeneration system
US5809173A (en) 1995-04-18 1998-09-15 Advanced Micro Devices, Inc. Method and apparatus for improved video decompression using previous frame DCT coefficients
US6026232A (en) * 1995-07-13 2000-02-15 Kabushiki Kaisha Toshiba Method and system to replace sections of an encoded video bitstream
US5852664A (en) 1995-07-10 1998-12-22 Intel Corporation Decode access control for encoded multimedia signals
US5822524A (en) 1995-07-21 1998-10-13 Infovalue Computing, Inc. System for just-in-time retrieval of multimedia files over computer networks by transmitting data packets at transmission rate determined by frame size
US6516064B1 (en) 1995-07-25 2003-02-04 Sony Corporation Signal recording apparatus, signal record medium and signal reproducing apparatus
JP3326670B2 (ja) * 1995-08-02 2002-09-24 ソニー株式会社 データ符号化/復号化方法および装置、および符号化データ記録媒体
US5763800A (en) 1995-08-14 1998-06-09 Creative Labs, Inc. Method and apparatus for formatting digital audio data
WO1997007504A1 (fr) 1995-08-21 1997-02-27 Matsushita Electric Industrial Co., Ltd. Disque optique multimedia capable de creer des situations tout a fait inattendues sur la base de l'interactivite, appareil et procede de reproduction de ce disque
US5978482A (en) 1995-08-21 1999-11-02 International Business Machines Corporation Method and system for protection of digital information
TW436777B (en) 1995-09-29 2001-05-28 Matsushita Electric Ind Co Ltd A method and an apparatus for reproducing bitstream having non-sequential system clock data seamlessly therebetween
TW305043B (ko) * 1995-09-29 1997-05-11 Matsushita Electric Ind Co Ltd
TW385431B (en) 1995-09-29 2000-03-21 Matsushita Electric Ind Co Ltd A method and an apparatus for encoding a bitstream with plural possible searching reproduction paths information useful in multimedia optical disk
US5751280A (en) 1995-12-11 1998-05-12 Silicon Graphics, Inc. System and method for media stream synchronization with a base atom index file and an auxiliary atom index file
US5765164A (en) 1995-12-21 1998-06-09 Intel Corporation Apparatus and method for management of discontinuous segments of multiple audio, video, and data streams
US5675511A (en) 1995-12-21 1997-10-07 Intel Corporation Apparatus and method for event tagging for multiple audio, video, and data streams
US5627936A (en) 1995-12-21 1997-05-06 Intel Corporation Apparatus and method for temporal indexing of multiple audio, video and data streams
CA2237293A1 (en) 1995-12-29 1997-07-10 Scientific-Atlanta, Inc. Method and apparatus for providing conditional access in connection-oriented, interactive networks with a multiplicity of service providers
US6957350B1 (en) * 1996-01-30 2005-10-18 Dolby Laboratories Licensing Corporation Encrypted and watermarked temporal and resolution layering in advanced television
US5959690A (en) * 1996-02-20 1999-09-28 Sas Institute, Inc. Method and apparatus for transitions and other special effects in digital motion video
US5630005A (en) 1996-03-22 1997-05-13 Cirrus Logic, Inc Method for seeking to a requested location within variable data rate recorded information
US5675382A (en) * 1996-04-08 1997-10-07 Connectix Corporation Spatial compression and decompression for video
US6031622A (en) 1996-05-16 2000-02-29 Agfa Corporation Method and apparatus for font compression and decompression
US6065050A (en) 1996-06-05 2000-05-16 Sun Microsystems, Inc. System and method for indexing between trick play and normal play video streams in a video delivery system
US5903261A (en) 1996-06-20 1999-05-11 Data Translation, Inc. Computer based video system
US5874986A (en) 1996-06-26 1999-02-23 At&T Corp Method for communicating audiovisual programs over a communications network
US5844575A (en) 1996-06-27 1998-12-01 Intel Corporation Video compression interface
JP3093678B2 (ja) 1996-06-28 2000-10-03 株式会社東芝 暗号化方法、復号方法、記録再生装置、復号装置、復号化ユニット装置及び記録媒体の製造方法
US5828370A (en) 1996-07-01 1998-10-27 Thompson Consumer Electronics Inc. Video delivery system and method for displaying indexing slider bar on the subscriber video screen
US5956729A (en) 1996-09-06 1999-09-21 Motorola, Inc. Multimedia file, supporting multiple instances of media types, and method for forming same
US5805700A (en) * 1996-10-15 1998-09-08 Intel Corporation Policy based selective encryption of compressed video data
US6578200B1 (en) 1996-10-31 2003-06-10 Matsushita Electric Industrial Co., Ltd. Data transmission/reception apparatus for use in a two-way digital broadcasting system
JPH10145773A (ja) * 1996-11-14 1998-05-29 Toshiba Corp 動画像データの暗号化方法およびその方法が適用されるコンピュータシステム並びに動画像データ符号化/復号化装置
US5878135A (en) 1996-11-27 1999-03-02 Thomson Consumer Electronics, Inc. Decoding system for processing encrypted broadcast, cable or satellite video data
US6038000A (en) * 1997-05-28 2000-03-14 Sarnoff Corporation Information stream syntax for indicating the presence of a splice point
JP3653569B2 (ja) 1997-01-30 2005-05-25 マイクロソフト コーポレーション ビデオをオン・デマンドでレンダリングするvcrに似た機能
FI106071B (fi) 1997-03-13 2000-11-15 Nokia Mobile Phones Ltd Mukautuva suodatin
US6128653A (en) 1997-03-17 2000-10-03 Microsoft Corporation Method and apparatus for communication media commands and media data using the HTTP protocol
MY124583A (en) 1997-03-19 2006-06-30 Sony Corp Video data decoding apparatus and method and video signal reproduction apparatus and method
US6654933B1 (en) 1999-09-21 2003-11-25 Kasenna, Inc. System and method for media stream indexing
CA2257578C (en) * 1997-04-07 2003-01-21 At&T Corp. System and method for processing object-based audiovisual information
US5963202A (en) 1997-04-14 1999-10-05 Instant Video Technologies, Inc. System and method for distributing and managing digital video information in a video distribution network
US5892915A (en) 1997-04-25 1999-04-06 Emc Corporation System having client sending edit commands to server during transmission of continuous media from one clip in play list for editing the play list
US6535878B1 (en) 1997-05-02 2003-03-18 Roxio, Inc. Method and system for providing on-line interactivity over a server-client network
US6611537B1 (en) * 1997-05-30 2003-08-26 Centillium Communications, Inc. Synchronous network for digital media streams
JP3791720B2 (ja) 1997-06-11 2006-06-28 ソニー株式会社 伝送装置及び伝送方法
US6970564B1 (en) 1998-07-13 2005-11-29 Sony Corporation Data multiplexing device, program distribution system, program transmission system, pay broadcast system, program transmission method, conditional access system, and data reception device
FI103003B1 (fi) 1997-06-13 1999-03-31 Nokia Mobile Phones Ltd Suodatusmenetelmä, suodatin ja matkaviestinpääte
KR100242448B1 (ko) 1997-06-28 2000-02-01 윤종용 디지털 비디오 디스크 고속 재생 제어장치 및 방법
US6573907B1 (en) 1997-07-03 2003-06-03 Obvious Technology Network distribution and management of interactive video and multi-media containers
US5860292A (en) * 1997-08-26 1999-01-19 Augustine Medical, Inc. Inflatable thermal blanket for convectively cooling a body
JPH1175178A (ja) 1997-08-28 1999-03-16 Sanyo Electric Co Ltd 画像符号化装置及び画像符号化方法
US5970147A (en) 1997-09-30 1999-10-19 Intel Corporation System and method for configuring and registering a cryptographic device
US6594699B1 (en) 1997-10-10 2003-07-15 Kasenna, Inc. System for capability based multimedia streaming over a network
US6697566B2 (en) * 1997-10-17 2004-02-24 Sony Corporation Encoded signal characteristic point recording apparatus
US6046778A (en) 1997-10-29 2000-04-04 Matsushita Electric Industrial Co., Ltd. Apparatus for generating sub-picture units for subtitles and storage medium storing sub-picture unit generation program
KR19990042668A (ko) 1997-11-27 1999-06-15 정선종 다중 비디오 전송을 위한 비디오 부호화 장치 및 방법
US6057832A (en) 1997-12-02 2000-05-02 V Soft Ltd. Method and apparatus for video-on-demand with fast play capability
KR100252108B1 (ko) 1997-12-20 2000-04-15 윤종용 Mpeg 압축부호화 및 복호화기를 채용한 디지털 기록 재생장치 및 그 방법
US6665835B1 (en) 1997-12-23 2003-12-16 Verizon Laboratories, Inc. Real time media journaler with a timing event coordinator
JP4186242B2 (ja) 1997-12-26 2008-11-26 ソニー株式会社 画像信号処理装置及び画像信号処理方法
US6453355B1 (en) * 1998-01-15 2002-09-17 Apple Computer, Inc. Method and apparatus for media data transmission
US6453459B1 (en) * 1998-01-21 2002-09-17 Apple Computer, Inc. Menu authoring system and method for automatically performing low-level DVD configuration functions and thereby ease an author's job
JP3394899B2 (ja) 1998-01-23 2003-04-07 株式会社東芝 オーディオ用データ記録媒体とデータ処理装置及び方法
US6751623B1 (en) 1998-01-26 2004-06-15 At&T Corp. Flexible interchange of coded multimedia facilitating access and streaming
US7809138B2 (en) 1999-03-16 2010-10-05 Intertrust Technologies Corporation Methods and apparatus for persistent control and protection of content
US7233948B1 (en) 1998-03-16 2007-06-19 Intertrust Technologies Corp. Methods and apparatus for persistent control and protection of content
IL123819A (en) 1998-03-24 2001-09-13 Geo Interactive Media Group Lt Network media streaming
JP3120773B2 (ja) 1998-04-06 2000-12-25 日本電気株式会社 画像処理装置
JP3997367B2 (ja) * 1998-04-30 2007-10-24 ソニー株式会社 記録再生装置および方法、並びに記録媒体
JP3383580B2 (ja) 1998-05-15 2003-03-04 株式会社東芝 情報記憶媒体と情報記録再生装置と方法
US6859496B1 (en) 1998-05-29 2005-02-22 International Business Machines Corporation Adaptively encoding multiple streams of video data in parallel for multiplexing onto a constant bit rate channel
JP2002518898A (ja) 1998-06-11 2002-06-25 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ディジタルビデオレコーダのトリックプレイ信号生成
JP3383587B2 (ja) 1998-07-07 2003-03-04 株式会社東芝 静止画像連続情報記録方法と光ディスクと光ディスクの情報再生装置と情報再生方法
US6320905B1 (en) 1998-07-08 2001-11-20 Stream Machine Company Postprocessing system for removing blocking artifacts in block-based codecs
US6199107B1 (en) 1998-07-22 2001-03-06 Microsoft Corporation Partial file caching and read range resume system and method
US6973090B2 (en) * 1998-07-22 2005-12-06 Synchrodyne Networks, Inc. Switching with multiple time references
US8380041B2 (en) 1998-07-30 2013-02-19 Tivo Inc. Transportable digital video recorder system
US7457415B2 (en) 1998-08-20 2008-11-25 Akikaze Technologies, Llc Secure information distribution system utilizing information segment scrambling
US6931531B1 (en) 1998-09-02 2005-08-16 Matsushita Electric Industrial Co., Ltd. Image object recording, compression, and encryption method and system
EP1122951B1 (en) * 1998-09-08 2003-11-19 Sharp Kabushiki Kaisha Time-varying image editing method and time-varying image editing device
JP2000090644A (ja) 1998-09-08 2000-03-31 Sharp Corp 画像管理方法及び画像管理装置
US6351538B1 (en) 1998-10-06 2002-02-26 Lsi Logic Corporation Conditional access and copy protection scheme for MPEG encoded video data
CN1165165C (zh) 1998-10-12 2004-09-01 松下电器产业株式会社 信息记录介质及用于记录或再现数据的装置和方法
EP1001419B1 (en) 1998-11-09 2004-03-03 Matsushita Electric Industrial Co., Ltd. Data conversion apparatus and method in copyright protecting system
CA2289958C (en) 1998-11-19 2003-01-21 Tomoyuki Okada Information recording medium, apparatus and method for recording or reproducing data thereof
SE513356C2 (sv) * 1998-11-20 2000-08-28 Ericsson Telefon Ab L M Förfarande och anordning för kryptering av bilder
US6236764B1 (en) 1998-11-30 2001-05-22 Equator Technologies, Inc. Image processing circuit and method for reducing a difference between pixel values across an image boundary
US6414996B1 (en) * 1998-12-08 2002-07-02 Stmicroelectronics, Inc. System, method and apparatus for an instruction driven digital video processor
US6374144B1 (en) 1998-12-22 2002-04-16 Varian Semiconductor Equipment Associates, Inc. Method and apparatus for controlling a system using hierarchical state machines
US7209892B1 (en) * 1998-12-24 2007-04-24 Universal Music Group, Inc. Electronic music/media distribution system
EP1021048A3 (en) 1999-01-14 2002-10-02 Kabushiki Kaisha Toshiba Digital video recording system and its recording medium
AU2515800A (en) 1999-01-26 2000-08-07 Infolio, Inc. Universal mobile id system and method for digital rights management
JP3433125B2 (ja) 1999-01-27 2003-08-04 三洋電機株式会社 動画像再生装置
US6169242B1 (en) 1999-02-02 2001-01-02 Microsoft Corporation Track-based music performance architecture
WO2000046803A1 (fr) 1999-02-05 2000-08-10 Kabushiki Kaisha Toshiba Procede permettant de creer des trains de donnees et procede permettant d'effectuer des suppressions partielles
CN100477735C (zh) 1999-02-08 2009-04-08 三洋电机株式会社 移动图像记录装置与数码照相机
US6498865B1 (en) * 1999-02-11 2002-12-24 Packetvideo Corp,. Method and device for control and compatible delivery of digitally compressed visual data in a heterogeneous communication network
DE19906450C1 (de) 1999-02-16 2000-08-17 Fraunhofer Ges Forschung Verfahren und Vorrichtung zum Erzeugen eines verschlüsselten Nutzdatenstroms und Verfahren und Vorrichtung zum Entschlüsseln eines verschlüsselten Nutzdatenstroms
DE19906449C1 (de) 1999-02-16 2000-08-10 Fraunhofer Ges Forschung Verfahren und Vorrichtung zum Erzeugen eines verschlüsselten Nutzdatenstroms und Verfahren und Vorrichtung zum Abspielen eines verschlüsselten Nutzdatenstroms
JP3805985B2 (ja) 1999-02-18 2006-08-09 株式会社東芝 ストリームデータの情報記憶媒体、その記録方法、再生方法、記録装置および再生装置
US6415031B1 (en) 1999-03-12 2002-07-02 Diva Systems Corporation Selective and renewable encryption for secure distribution of video on-demand
WO2000055854A1 (fr) 1999-03-17 2000-09-21 Kabushiki Kaisha Toshiba Procede d'enregistrement de donnees en fluxet de leur structure
DK1162995T3 (da) 1999-03-17 2003-06-23 Solvay Pharm Gmbh Enzymer til behandling af diabetes mellitus type I
EP1039468A3 (en) 1999-03-19 2000-10-04 Deutsche Thomson-Brandt Gmbh Method for implementing trickplay modes in a data stream recorder
US6658056B1 (en) 1999-03-30 2003-12-02 Sony Corporation Digital video decoding, buffering and frame-rate converting method and apparatus
US8689265B2 (en) 1999-03-30 2014-04-01 Tivo Inc. Multimedia mobile personalization system
US6865747B1 (en) * 1999-04-01 2005-03-08 Digital Video Express, L.P. High definition media storage structure and playback mechanism
US6721794B2 (en) 1999-04-01 2004-04-13 Diva Systems Corp. Method of data management for efficiently storing and retrieving data to respond to user access requests
US6748481B1 (en) 1999-04-06 2004-06-08 Microsoft Corporation Streaming information appliance with circular buffer for receiving and selectively reading blocks of streaming information
US6535920B1 (en) 1999-04-06 2003-03-18 Microsoft Corporation Analyzing, indexing and seeking of streaming information
CA2388565A1 (en) 1999-04-21 2000-10-26 Research Investment Network, Inc. System, method and article of manufacture for updating content stored on a portable storage medium
US20050182828A1 (en) 1999-04-21 2005-08-18 Interactual Technologies, Inc. Platform specific execution
US6453420B1 (en) 1999-04-21 2002-09-17 Research Investment Network, Inc. System, method and article of manufacture for authorizing the use of electronic content utilizing a laser-centric medium
US7493018B2 (en) 1999-05-19 2009-02-17 Kwang Su Kim Method for creating caption-based search information of moving picture data, searching and repeating playback of moving picture data based on said search information, and reproduction apparatus using said method
US6807306B1 (en) 1999-05-28 2004-10-19 Xerox Corporation Time-constrained keyframe selection method
US6330286B1 (en) 1999-06-09 2001-12-11 Sarnoff Corporation Flow control, latency control, and bitrate conversions in a timing correction and frame synchronization apparatus
US6725281B1 (en) * 1999-06-11 2004-04-20 Microsoft Corporation Synchronization of controlled device state using state table and eventing in data-driven remote device control model
US7330875B1 (en) 1999-06-15 2008-02-12 Microsoft Corporation System and method for recording a presentation for on-demand viewing over a computer network
GB9916181D0 (en) 1999-07-09 1999-09-08 Simoco Int Ltd Method and apparatus for transmitting data
JP2001043668A (ja) 1999-08-02 2001-02-16 Nippon Columbia Co Ltd 光ディスク装置
US7133598B1 (en) 1999-08-20 2006-11-07 Thomson Licensing Method for converting packetized video data and corresponding navigation data into a second data format
US6731758B1 (en) 1999-08-29 2004-05-04 Intel Corporation Digital video content transmission ciphering and deciphering method and apparatus
KR20020064888A (ko) 1999-10-22 2002-08-10 액티브스카이 인코포레이티드 객체 지향형 비디오 시스템
CA2388606C (en) 1999-10-27 2009-12-29 Diva Systems Corporation Picture-in-picture and multiple video streams using slice-based encoding
US6912513B1 (en) 1999-10-29 2005-06-28 Sony Corporation Copy-protecting management using a user scrambling key
US7151832B1 (en) 1999-11-18 2006-12-19 International Business Machines Corporation Dynamic encryption and decryption of a stream of data
US6988144B1 (en) * 1999-11-18 2006-01-17 International Business Machines Corporation Packet scheduling system and method for multimedia data
US6996720B1 (en) 1999-12-17 2006-02-07 Microsoft Corporation System and method for accessing protected content in a rights-management architecture
US7051110B2 (en) 1999-12-20 2006-05-23 Matsushita Electric Industrial Co., Ltd. Data reception/playback method and apparatus and data transmission method and apparatus for providing playback control functions
US20010030710A1 (en) * 1999-12-22 2001-10-18 Werner William B. System and method for associating subtitle data with cinematic material
CN1159918C (zh) * 1999-12-29 2004-07-28 上海龙林通信技术有限公司 Ip网上压缩多媒体源信号的装置
US7110542B1 (en) 1999-12-30 2006-09-19 Intel Corporation Protecting audio/video content during storage and playback on a processor-based system
US6871008B1 (en) * 2000-01-03 2005-03-22 Genesis Microchip Inc. Subpicture decoding architecture and method
US6810131B2 (en) 2000-01-05 2004-10-26 Canon Kabushiki Kaisha Information processing method and apparatus
KR100320476B1 (ko) * 2000-01-12 2002-01-15 구자홍 비디오 디코더 및 디코딩 방법
ATE387775T1 (de) 2000-01-21 2008-03-15 Sony Corp Daten-identifizierungs-system
JP2001209583A (ja) 2000-01-26 2001-08-03 Sony Corp データ記録再生器およびセーブデータ処理方法、並びにプログラム提供媒体
BRPI0107875B1 (pt) * 2000-01-28 2015-09-08 Opentv Inc método, decodificador, interativo e sistemas destinados a combinarem múltiplas correntes de vídeo codificadas em mpeg
US6693959B1 (en) 2000-03-03 2004-02-17 Ati International Srl Method and apparatus for indexing and locating key frames in streaming and variable-frame-length data
EP1143658A1 (en) 2000-04-03 2001-10-10 Canal+ Technologies Société Anonyme Authentication of data transmitted in a digital transmission system
AU2001251353A1 (en) 2000-04-08 2001-10-23 Sun Microsystems, Inc. Streaming a single media track to multiple clients
JP4599740B2 (ja) 2000-04-21 2010-12-15 ソニー株式会社 情報処理装置および方法、記録媒体、プログラム、並びに記録媒体
US7302490B1 (en) 2000-05-03 2007-11-27 Microsoft Corporation Media file format to support switching between multiple timeline-altered media streams
US6609548B2 (en) 2000-05-11 2003-08-26 Michelin Recherche Et Technique S.A. Asymmetrical vehicle tire with balanced wet and dry performance
GB2362532B (en) 2000-05-15 2004-05-05 Nokia Mobile Phones Ltd Video coding
EP1158799A1 (en) 2000-05-18 2001-11-28 Deutsche Thomson-Brandt Gmbh Method and receiver for providing subtitle data in several languages on demand
KR100448452B1 (ko) 2000-06-09 2004-09-13 엘지전자 주식회사 고밀도 광 기록매체의 메뉴 지원방법
JP2001359070A (ja) 2000-06-14 2001-12-26 Canon Inc データ処理装置、データ処理方法及びコンピュータ可読記憶媒体
US8091106B1 (en) * 2000-06-26 2012-01-03 Thomson Licensing Method and apparatus for using DVD subpicture information in a television receiver
US6965646B1 (en) 2000-06-28 2005-11-15 Cisco Technology, Inc. MPEG file format optimization for streaming
US7647340B2 (en) 2000-06-28 2010-01-12 Sharp Laboratories Of America, Inc. Metadata in JPEG 2000 file format
US6871006B1 (en) 2000-06-30 2005-03-22 Emc Corporation Processing of MPEG encoded video for trick mode operation
FI109393B (fi) * 2000-07-14 2002-07-15 Nokia Corp Menetelmä mediavirran enkoodaamiseksi skaalautuvasti, skaalautuva enkooderi ja päätelaite
US7548565B2 (en) 2000-07-24 2009-06-16 Vmark, Inc. Method and apparatus for fast metadata generation, delivery and access for live broadcast program
KR20040041082A (ko) 2000-07-24 2004-05-13 비브콤 인코포레이티드 멀티미디어 북마크와 비디오의 가상 편집을 위한 시스템및 방법
US6395969B1 (en) * 2000-07-28 2002-05-28 Mxworks, Inc. System and method for artistically integrating music and visual effects
JP4810752B2 (ja) 2000-08-04 2011-11-09 ソニー株式会社 データ記録媒体、データ記録方法及び装置、データ再生方法及び装置、データ送信方法及び装置、並びに、データ受信方法及び装置
US7373422B1 (en) 2000-08-04 2008-05-13 Oracle International Corporation Techniques for supporting multiple devices in mobile applications
US6704024B2 (en) 2000-08-07 2004-03-09 Zframe, Inc. Visual content browsing using rasterized representations
KR20020013664A (ko) * 2000-08-14 2002-02-21 민홍기 청각장애인을 위한 인터넷 자막방송용 서버, 클라이언트구현
AU2001288265A1 (en) 2000-08-21 2002-03-04 University Of Utah Research Foundation Human cytidine monophosphate (cmp) kinase cdna
WO2002017637A1 (fr) 2000-08-25 2002-02-28 Matsushita Electric Industrial Co., Ltd. Procede de transmission de donnees et procede de relais de donnees
JP4552294B2 (ja) 2000-08-31 2010-09-29 ソニー株式会社 コンテンツ配信システム、コンテンツ配信方法、および情報処理装置、並びにプログラム提供媒体
US6453115B1 (en) 2000-08-31 2002-09-17 Keen Personal Media, Inc. Digital video recording system which generates an index data structure for displaying a video stream in trickplay mode
US7242772B1 (en) 2000-09-07 2007-07-10 Eastman Kodak Company Encryption apparatus and method for synchronizing multiple encryption keys with a data stream
WO2002023315A2 (en) 2000-09-12 2002-03-21 Aladdin Knowledge Systems, Ltd. System for managing rights and permitting on-line playback of digital content
US7212726B2 (en) 2000-09-15 2007-05-01 International Business Machines Corporation System and method of processing MPEG streams for file index insertion
US7103906B1 (en) 2000-09-29 2006-09-05 International Business Machines Corporation User controlled multi-device media-on-demand system
US6934334B2 (en) 2000-10-02 2005-08-23 Kabushiki Kaisha Toshiba Method of transcoding encoded video data and apparatus which transcodes encoded video data
US20030079222A1 (en) 2000-10-06 2003-04-24 Boykin Patrick Oscar System and method for distributing perceptually encrypted encoded files of music and movies
US7231132B1 (en) 2000-10-16 2007-06-12 Seachange International, Inc. Trick-mode processing for digital video
US7031393B2 (en) 2000-10-20 2006-04-18 Matsushita Electric Industrial Co., Ltd. Block distortion detection method, block distortion detection apparatus, block distortion removal method, and block distortion removal apparatus
KR20020032803A (ko) * 2000-10-27 2002-05-04 구자홍 스트리밍 서비스를 위한 파일 구조
US7143289B2 (en) 2000-10-30 2006-11-28 Geocodex Llc System and method for delivering encrypted information in a communication network using location identity and key tables
US6985588B1 (en) 2000-10-30 2006-01-10 Geocodex Llc System and method for using location identity to control access to digital information
US7058177B1 (en) 2000-11-28 2006-06-06 Xilinx, Inc. Partially encrypted bitstream method
US6931543B1 (en) 2000-11-28 2005-08-16 Xilinx, Inc. Programmable logic device with decryption algorithm and decryption key
US20020107802A1 (en) 2000-12-06 2002-08-08 Ashwin Philips Secure file downloading
WO2002047080A2 (en) 2000-12-07 2002-06-13 Sandisk Corporation System, method, and device for playing back recorded audio, video or other content from non-volatile memory cards, compact disks or other media
US7117231B2 (en) 2000-12-07 2006-10-03 International Business Machines Corporation Method and system for the automatic generation of multi-lingual synchronized sub-titles for audiovisual data
KR100433516B1 (ko) 2000-12-08 2004-05-31 삼성전자주식회사 트랜스코딩 방법
US20030002578A1 (en) 2000-12-11 2003-01-02 Ikuo Tsukagoshi System and method for timeshifting the encoding/decoding of audio/visual signals in real-time
AU2001217236A1 (en) 2000-12-13 2002-06-24 Chun Hay Chan Method and system for delivering media selections through a network
US7401351B2 (en) 2000-12-14 2008-07-15 Fuji Xerox Co., Ltd. System and method for video navigation and client side indexing
US6798912B2 (en) 2000-12-18 2004-09-28 Koninklijke Philips Electronics N.V. Apparatus and method of program classification based on syntax of transcript information
US6920175B2 (en) 2001-01-03 2005-07-19 Nokia Corporation Video coding architecture and methods for using same
KR20030005223A (ko) 2001-01-12 2003-01-17 코닌클리케 필립스 일렉트로닉스 엔.브이. 스케일링가능한 비디오 트랜스코딩을 위한 방법 및 장치
JP4048407B2 (ja) 2001-01-18 2008-02-20 富士フイルム株式会社 デジタルカメラ
US7665115B2 (en) 2001-02-02 2010-02-16 Microsoft Corporation Integration of media playback components with an independent timing specification
GB0103245D0 (en) * 2001-02-09 2001-03-28 Radioscape Ltd Method of inserting additional data into a compressed signal
US7401037B2 (en) 2001-02-20 2008-07-15 The Prudential Insurance Company Of America System, method, and computer program product for providing stabilized annuity payments and control of investments in a variable annuity
US7162314B2 (en) 2001-03-05 2007-01-09 Microsoft Corporation Scripting solution for interactive audio generation
US6970506B2 (en) * 2001-03-05 2005-11-29 Intervideo, Inc. Systems and methods for reducing frame rates in a video data stream
US6970822B2 (en) 2001-03-07 2005-11-29 Microsoft Corporation Accessing audio processing components in an audio generation system
US7305273B2 (en) 2001-03-07 2007-12-04 Microsoft Corporation Audio generation system manager
JP3889233B2 (ja) 2001-03-08 2007-03-07 株式会社モノリス 画像符号化方法と装置および画像復号方法と装置
WO2002073437A1 (en) 2001-03-12 2002-09-19 Edgestream, Inc. Seek architecture for media streaming
EP1244310A1 (en) 2001-03-21 2002-09-25 Canal+ Technologies Société Anonyme Data referencing system
JP2002278996A (ja) 2001-03-22 2002-09-27 Sony Corp 記録装置および記録方法、並びに記録媒体
US7450641B2 (en) 2001-09-14 2008-11-11 Sharp Laboratories Of America, Inc. Adaptive filtering based upon boundary strength
US8060906B2 (en) * 2001-04-06 2011-11-15 At&T Intellectual Property Ii, L.P. Method and apparatus for interactively retrieving content related to previous query results
JP3788260B2 (ja) * 2001-04-09 2006-06-21 日本電気株式会社 配信システムとその配信方法、及び配信プログラム
BR0204835A (pt) 2001-04-18 2003-06-10 Koninkl Philips Electronics Nv Métodos para codificar um sinal de áudio, e para decodificar um fluxo de áudio, codificador de áudio, reprodutor de áudio, sistema de áudio, fluxo de áudio, e, meio de armazenamento
US20020169926A1 (en) 2001-04-19 2002-11-14 Thomas Pinckney Systems and methods for efficient cache management in streaming applications
US7110664B2 (en) 2001-04-20 2006-09-19 Front Porch Digital, Inc. Methods and apparatus for indexing and archiving encoded audio-video data
US7121666B2 (en) * 2001-04-25 2006-10-17 Tseng Scheffer C G Apparatus and method for the kinetic analysis of tear stability
US7035335B1 (en) * 2001-05-11 2006-04-25 Advanced Micro Devices, Inc. Transport stream parser
US7243346B1 (en) 2001-05-21 2007-07-10 Microsoft Corporation Customized library management system
CN100435164C (zh) 2001-05-29 2008-11-19 松下电器产业株式会社 权限管理设备
US8275716B2 (en) * 2001-05-31 2012-09-25 Contentguard Holdings, Inc. Method and system for subscription digital rights management
US6973445B2 (en) * 2001-05-31 2005-12-06 Contentguard Holdings, Inc. Demarcated digital content and method for creating and processing demarcated digital works
US7103261B2 (en) 2001-06-04 2006-09-05 William Grecia Consumer friendly error correcting formating method for white book 2.0 video compact disc with CD-DA red book audio tracks
US7747853B2 (en) * 2001-06-06 2010-06-29 Sony Corporation IP delivery of secure digital content
US7895616B2 (en) * 2001-06-06 2011-02-22 Sony Corporation Reconstitution of program streams split across multiple packet identifiers
US7139398B2 (en) 2001-06-06 2006-11-21 Sony Corporation Time division partial encryption
US6742082B1 (en) 2001-06-12 2004-05-25 Network Appliance Pre-computing streaming media payload method and apparatus
FR2825877B1 (fr) 2001-06-12 2003-09-19 Canal Plus Technologies Procede de controle d'acces a un programme crypte
US20020194606A1 (en) * 2001-06-14 2002-12-19 Michael Tucker System and method of communication between videoconferencing systems and computer systems
US6948073B2 (en) 2001-06-27 2005-09-20 Microsoft Corporation Protecting decrypted compressed content and decrypted decompressed content at a digital rights management client
JP2003087785A (ja) 2001-06-29 2003-03-20 Toshiba Corp 動画像符号化データの形式変換方法及び装置
US7065213B2 (en) 2001-06-29 2006-06-20 Scientific-Atlanta, Inc. In a subscriber network receiving digital packets and transmitting digital packets below a predetermined maximum bit rate
US7356245B2 (en) * 2001-06-29 2008-04-08 International Business Machines Corporation Methods to facilitate efficient transmission and playback of digital information
CN1326353C (zh) 2001-07-05 2007-07-11 乔治·B·古罗夫 用于计算机网络中分布式数据处理的集成式保护的方法与系统
JP2003023607A (ja) * 2001-07-06 2003-01-24 Kenwood Corp 再生装置
CN100470654C (zh) 2001-07-23 2009-03-18 松下电器产业株式会社 将信息记录到信息记录介质的装置及方法
JP4145586B2 (ja) 2001-07-24 2008-09-03 セイコーエプソン株式会社 画像処理装置及び画像処理プログラム、並びに画像処理方法
US7139470B2 (en) 2001-08-17 2006-11-21 Intel Corporation Navigation for MPEG streams
EP1286349A1 (en) * 2001-08-21 2003-02-26 Canal+ Technologies Société Anonyme File and content management
US7218635B2 (en) 2001-08-31 2007-05-15 Stmicroelectronics, Inc. Apparatus and method for indexing MPEG video data to perform special mode playback in a digital video recorder and indexed signal associated therewith
AU2002323591A1 (en) 2001-09-05 2003-03-18 Emblaze Systems Ltd. Method for reducing blocking artifacts
KR100424762B1 (ko) 2001-09-06 2004-03-30 삼성전자주식회사 영상 데이터 제공 시스템 및 방법
JP3593075B2 (ja) * 2001-09-10 2004-11-24 株式会社東芝 情報記憶媒体とその情報記録方法及び装置と情報再生方法及び装置
MY141618A (en) 2001-09-12 2010-05-31 Nagravision Sa Data transmission method between a local server and local peripherals
US6983079B2 (en) 2001-09-20 2006-01-03 Seiko Epson Corporation Reducing blocking and ringing artifacts in low-bit-rate coding
FI20011871A (fi) 2001-09-24 2003-03-25 Nokia Corp Multimediadatan prosessointi
US7457359B2 (en) 2001-09-26 2008-11-25 Mabey Danny L Systems, devices and methods for securely distributing highly-compressed multimedia content
US20030077071A1 (en) 2001-10-23 2003-04-24 Shu Lin Fast forward trick mode and reverse trick mode using an information file
US7148908B2 (en) * 2001-10-31 2006-12-12 Eastman Kodak Company Method and apparatus for generating image transitions
US20030093799A1 (en) 2001-11-14 2003-05-15 Kauffman Marc W. Streamed content Delivery
JP2003152698A (ja) 2001-11-15 2003-05-23 Nippon Hoso Kyokai <Nhk> コンテンツ利用制御送信方法、コンテンツ利用制御受信方法およびコンテンツ利用制御送信装置、コンテンツ利用制御受信装置ならびにコンテンツ利用制御送信プログラム、コンテンツ利用制御受信プログラム
US20030099364A1 (en) 2001-11-28 2003-05-29 Thompson Mark R. Playback manipulation of HTTP streamed content objects
AU2002347635B2 (en) 2001-11-29 2008-04-24 Godo Kaisha Ip Bridge 1 Coding distortion removal method and video encoding end decoding methods
EP2320661B8 (en) 2001-11-29 2015-09-02 Godo Kaisha IP Bridge 1 Coding distortion removal method
US7380120B1 (en) * 2001-12-12 2008-05-27 Guardian Data Storage, Llc Secured data format for access control
US20040037421A1 (en) 2001-12-17 2004-02-26 Truman Michael Mead Parital encryption of assembled bitstreams
DE10164135A1 (de) 2001-12-30 2003-07-17 Juergen K Lang System und Verfahren zur kopier- und nutzungsgeschützten Ver- und Entschlüsselung, Übertragung und Speicherung elektronischer Ton- und Bildmedien
US7233669B2 (en) 2002-01-02 2007-06-19 Sony Corporation Selective encryption to enable multiple decryption keys
US8027470B2 (en) 2002-01-02 2011-09-27 Sony Corporation Video slice and active region based multiple partial encryption
US7242773B2 (en) 2002-09-09 2007-07-10 Sony Corporation Multiple partial encryption using retuning
US7292691B2 (en) * 2002-01-02 2007-11-06 Sony Corporation Progressive video refresh slice detection
US7376233B2 (en) * 2002-01-02 2008-05-20 Sony Corporation Video slice and active region based multiple partial encryption
EP1486071A4 (en) 2002-01-02 2009-09-30 Sony Electronics Inc ELEMENTAL POWER PARTIALVERSCHLÜSSELUNG
US7292690B2 (en) 2002-01-02 2007-11-06 Sony Corporation Video scene change detection
US7302059B2 (en) * 2002-01-02 2007-11-27 Sony Corporation Star pattern partial encryption
US7215770B2 (en) 2002-01-02 2007-05-08 Sony Corporation System and method for partially encrypted multimedia stream
US7075587B2 (en) 2002-01-04 2006-07-11 Industry-Academic Cooperation Foundation Yonsei University Video display apparatus with separate display means for textual information
US20030135633A1 (en) 2002-01-04 2003-07-17 International Business Machines Corporation Streaming and managing complex media content on Web servers
AU2003202815A1 (en) * 2002-01-12 2003-07-24 Coretrust, Inc. Method and system for the information protection of digital content
US7065651B2 (en) 2002-01-16 2006-06-20 Microsoft Corporation Secure video card methods and systems
JP2003230089A (ja) 2002-01-31 2003-08-15 Toshiba Corp 情報記憶媒体及び情報記録装置
JP2003250113A (ja) 2002-02-22 2003-09-05 Fuji Photo Film Co Ltd 画像音声記録再生装置
US20030236836A1 (en) 2002-03-21 2003-12-25 Borthwick Ernest Mark System and method for the design and sharing of rich media productions via a computer network
US7170936B2 (en) 2002-03-28 2007-01-30 Intel Corporation Transcoding apparatus, system, and method
US8214655B2 (en) * 2002-03-29 2012-07-03 Kabushiki Kaisha Toshiba Data structure of multimedia file format, encrypting method and device thereof, and decrypting method and device thereof
US20030185302A1 (en) 2002-04-02 2003-10-02 Abrams Thomas Algie Camera and/or camera converter
US7231516B1 (en) 2002-04-11 2007-06-12 General Instrument Corporation Networked digital video recording system with copy protection and random access playback
US20040006701A1 (en) 2002-04-13 2004-01-08 Advanced Decisions Inc. Method and apparatus for authentication of recorded audio
US8155498B2 (en) 2002-04-26 2012-04-10 The Directv Group, Inc. System and method for indexing commercials in a video presentation
EP1500002A1 (en) 2002-04-29 2005-01-26 Sony Electronics Inc. Supporting advanced coding formats in media files
US7363647B1 (en) 2002-05-07 2008-04-22 Unisys Corporation Mapping process for use in sending trick-mode video streams with a high performance
US20030212993A1 (en) 2002-05-07 2003-11-13 Pere Obrador System and method for efficiently managing video files
EP1505762A4 (en) 2002-05-10 2012-11-07 Sony Corp ENCRYPTING DEVICE AND DECOMPOSITION DEVICE
US7054804B2 (en) 2002-05-20 2006-05-30 International Buisness Machines Corporation Method and apparatus for performing real-time subtitles translation
JP4186512B2 (ja) 2002-05-20 2008-11-26 ソニー株式会社 サービス提供システム、機器端末およびその処理方法、認証装置および方法、サービス提供装置および方法、並びにプログラム
US7155109B2 (en) 2002-06-14 2006-12-26 Microsoft Corporation Programmable video recorder having flexible trick play
US7206940B2 (en) 2002-06-24 2007-04-17 Microsoft Corporation Methods and systems providing per pixel security and functionality
US7644172B2 (en) 2002-06-24 2010-01-05 Microsoft Corporation Communicating via a connection between a streaming server and a client without breaking the connection
US7174021B2 (en) 2002-06-28 2007-02-06 Microsoft Corporation Systems and methods for providing secure server key operations
WO2004006579A1 (en) 2002-07-09 2004-01-15 Kaleidescape, Inc. Content and key distribution system for digital content representing media streams
US9445133B2 (en) * 2002-07-10 2016-09-13 Arris Enterprises, Inc. DVD conversion for on demand
FR2842690B1 (fr) 2002-07-17 2004-10-08 Thomson Licensing Sa Procede et dispositif de transmission de donnees video pour la mise en oeuvre de modes speciaux
US20040021684A1 (en) * 2002-07-23 2004-02-05 Dominick B. Millner Method and system for an interactive video system
US7627229B2 (en) 2002-07-26 2009-12-01 Fujifilm Corporation Moving image recording apparatus and method of recording moving image
US20040022391A1 (en) 2002-07-30 2004-02-05 O'brien Royal Digital content security system and method
AU2003268037A1 (en) 2002-07-30 2004-02-16 Digital Interactive Streams, Inc. Digital content security system and method
US7167560B2 (en) 2002-08-08 2007-01-23 Matsushita Electric Industrial Co., Ltd. Partial encryption of stream-formatted media
US7418190B2 (en) 2002-08-22 2008-08-26 Microsoft Corporation Accelerated access to frames from a compressed digital video stream without keyframes
MXPA04004148A (es) 2002-09-05 2005-07-05 Lg Electronics Inc Medio de grabacion, que tiene estructura de datos para adminstrar reproduccion de imagenes fijas ahi grabadas y metodos y aparatos para grabacion y reproduccion.
WO2004023480A1 (en) 2002-09-06 2004-03-18 Lg Electronics Inc. Recording medium having data structure for managing reproduction of still images recorded thereon and recording and reproducing methods and apparatuses
US8818896B2 (en) * 2002-09-09 2014-08-26 Sony Corporation Selective encryption with coverage encryption
US20040052501A1 (en) 2002-09-12 2004-03-18 Tam Eddy C. Video event capturing system and method
US20050144468A1 (en) 2003-01-13 2005-06-30 Northcutt J. D. Method and apparatus for content protection in a personal digital network environment
US8064508B1 (en) 2002-09-19 2011-11-22 Silicon Image, Inc. Equalizer with controllably weighted parallel high pass and low pass filters and receiver including such an equalizer
MXPA05003235A (es) * 2002-09-26 2005-07-05 Koninkl Philips Electronics Nv Metodo y dispositivo para grabar informacion en un medio de grabacion, medio de grabacion que contiene informacion, y metodo y dispositivo para leer la informacion de un medio.
US7020287B2 (en) 2002-09-30 2006-03-28 Sony Corporation Method and system for key insertion for stored encrypted content
KR100910974B1 (ko) * 2002-10-02 2009-08-05 엘지전자 주식회사 고밀도 광디스크의 그래픽 데이터 관리방법
US20040071453A1 (en) * 2002-10-08 2004-04-15 Valderas Harold M. Method and system for producing interactive DVD video slides
ATE346462T1 (de) * 2002-10-10 2006-12-15 Koninkl Philips Electronics Nv Itv-trick-abspielen ber eine digitale schnittstelle
US7295673B2 (en) 2002-10-23 2007-11-13 Divx, Inc. Method and system for securing compressed digital video
KR20040039852A (ko) 2002-11-05 2004-05-12 주식회사 디지털앤디지털 프레임 인덱스를 이용한 트릭 플레이 구현방법
US8572408B2 (en) 2002-11-05 2013-10-29 Sony Corporation Digital rights management of a digital device
JP2004164731A (ja) * 2002-11-12 2004-06-10 Sony Corp 記録装置および方法、記録媒体、並びにプログラム
WO2004045213A2 (en) * 2002-11-13 2004-05-27 General Instrument Corporation Efficient distribution of encrypted content for multiple content access systems
EP1420580A1 (en) 2002-11-18 2004-05-19 Deutsche Thomson-Brandt GmbH Method and apparatus for coding/decoding items of subtitling data
RU2334285C2 (ru) 2002-11-20 2008-09-20 Эл Джи Электроникс Инк. Носитель записи со структурой данных для управления воспроизведением записанных на нем данных и способы и устройства записи и воспроизведения
US7227901B2 (en) 2002-11-21 2007-06-05 Ub Video Inc. Low-complexity deblocking filter
WO2004054247A1 (en) 2002-12-09 2004-06-24 Koninklijke Philips Electronics N.V. Interactive television system with partial character set generator
US8054880B2 (en) 2004-12-10 2011-11-08 Tut Systems, Inc. Parallel rate control for digital video encoder with multi-processor architecture and picture-based look-ahead window
US8631451B2 (en) 2002-12-11 2014-01-14 Broadcom Corporation Server architecture supporting adaptive delivery to a variety of media players
US8195714B2 (en) 2002-12-11 2012-06-05 Leaper Technologies, Inc. Context instantiated application protocol
TWI349204B (en) 2003-01-10 2011-09-21 Panasonic Corp Group admission system and server and client therefor
US7581255B2 (en) * 2003-01-21 2009-08-25 Microsoft Corporation Systems and methods for licensing one or more data streams from an encoded digital media file
GB2398210A (en) 2003-02-05 2004-08-11 Sony Uk Ltd Encryption using a binary tree structure
TWI256614B (en) * 2003-02-12 2006-06-11 Quanta Storage Inc Laser beam selection method of CD driver
JP4550044B2 (ja) 2003-02-21 2010-09-22 パナソニック株式会社 オーディオビジュアル再生システムとオーディオビジュアル再生方法
WO2004080081A1 (en) 2003-03-03 2004-09-16 Koninklijke Philips Electronics N.V. Video encoding
KR100553885B1 (ko) 2003-03-13 2006-02-24 삼성전자주식회사 Smil을 사용하여 제작된 멀티미디어 컨텐츠를관리하는 방법 및 그 파일 시스템
US7007170B2 (en) 2003-03-18 2006-02-28 Widevine Technologies, Inc. System, method, and apparatus for securely providing content viewable on a secure device
US20080008455A1 (en) 2003-03-20 2008-01-10 Koninklijke Philips Electronics N.V. Cpi data for steam buffer channels
JP4170808B2 (ja) 2003-03-31 2008-10-22 株式会社東芝 情報表示装置、情報表示方法及びプログラム
US7406176B2 (en) * 2003-04-01 2008-07-29 Microsoft Corporation Fully scalable encryption for scalable multimedia
DE602004027799D1 (de) 2003-04-10 2010-08-05 Panasonic Corp Informationsaufzeichnungsmedium, einrichtung und verfahren zum aufzeichnen von informationen in einem informationsaufzeichnungsmedium
US7055039B2 (en) 2003-04-14 2006-05-30 Sony Corporation Protection of digital content using block cipher crytography
US7237061B1 (en) * 2003-04-17 2007-06-26 Realnetworks, Inc. Systems and methods for the efficient reading of data in a server system
JP3918766B2 (ja) 2003-04-22 2007-05-23 日本電気株式会社 媒体自動交換機
CN1777945B (zh) * 2003-04-23 2012-10-31 Lg电子株式会社 对记录在交互记录介质上的主内容以及其附加内容进行同步再现的方法和设备
WO2004097824A1 (en) * 2003-04-29 2004-11-11 Lg Electronics Inc. Recording medium having a data structure for managing reproduction of graphic data and methods and apparatuses of recording and reproducing
US7616865B2 (en) * 2003-04-30 2009-11-10 Lg Electronics Inc. Recording medium having a data structure for managing reproduction of subtitle data and methods and apparatuses of recording and reproducing
KR20040096718A (ko) 2003-05-10 2004-11-17 삼성전자주식회사 멀티미디어 데이터 재생장치, 오디오 데이터 수신방법 및오디오 데이터 구조
KR100492567B1 (ko) 2003-05-13 2005-06-03 엘지전자 주식회사 이동통신 시스템의 http 기반 비디오 스트리밍 장치및 방법
JP2007504778A (ja) 2003-05-16 2007-03-01 コニンクリユケ フィリップス エレクトロニクス エヌ.ブイ. 記録再生方法及び映像記録再生システム
US7409454B2 (en) 2003-06-02 2008-08-05 Microsoft Corporation Automatic detection of intermediate network device capabilities
US7739715B2 (en) 2003-06-24 2010-06-15 Microsoft Corporation Variable play speed control for media streams
US7424501B2 (en) 2003-06-30 2008-09-09 Intel Corporation Nonlinear filtering and deblocking applications utilizing SIMD sign and absolute value operations
JP4411879B2 (ja) 2003-07-01 2010-02-10 株式会社ニコン 信号処理装置、信号処理プログラム、および電子カメラ
US20050005025A1 (en) 2003-07-04 2005-01-06 Michael Harville Method for managing a streaming media service
JP4047237B2 (ja) 2003-07-04 2008-02-13 株式会社リコー インデックスデータ作成装置、映像再生装置
KR101081729B1 (ko) 2003-07-07 2011-11-08 로비 솔루션스 코포레이션 저작권 침해를 제어하고 쌍방향 컨텐츠를 인에이블시키기 위한 재프로그램가능한 보안
US9615061B2 (en) 2003-07-11 2017-04-04 Tvworks, Llc System and method for creating and presenting composite video-on-demand content
US20070168287A1 (en) * 2003-07-16 2007-07-19 Digital Networks North America, Inc. Method and apparatus for distributing media in a pay per play architecture with remote playback
US20050013494A1 (en) 2003-07-18 2005-01-20 Microsoft Corporation In-loop deblocking filter
US7907833B2 (en) 2003-07-21 2011-03-15 Thomson Licensing Apparatus and method for communicating stop and pause commands in a video recording and playback system
US7382879B1 (en) 2003-07-23 2008-06-03 Sprint Communications Company, L.P. Digital rights management negotiation for streaming media over a network
JP2005057435A (ja) 2003-08-01 2005-03-03 Sony Corp クライアント機器及びクライアント機器におけるコンテンツ処理方法、並びにコンテンツ提供システム
US7941554B2 (en) 2003-08-01 2011-05-10 Microsoft Corporation Sparse caching for streaming media
DE602004031625D1 (de) 2003-08-07 2011-04-14 Pervenio Ltd Server zum bestimmen und speichern von mobilgerät-leistungsmerkmalen
US7467202B2 (en) * 2003-09-10 2008-12-16 Fidelis Security Systems High-performance network content analysis platform
US7681035B1 (en) * 2003-09-10 2010-03-16 Realnetworks, Inc. Digital rights management handler and related methods
DK1665769T3 (da) 2003-09-12 2014-06-30 Opentv Inc Fremgangsmåde og system til styring af optagelse og afspilning af interaktive applikationer
US20050227773A1 (en) 2003-09-24 2005-10-13 Lu Priscilla M Portable video storage and playback device
US20070206682A1 (en) * 2003-09-29 2007-09-06 Eric Hamilton Method And Apparatus For Coding Information
KR20050035678A (ko) * 2003-10-14 2005-04-19 엘지전자 주식회사 광디스크 장치의 부가 데이터 재생방법 및 장치와, 이를위한 광디스크
US7979886B2 (en) 2003-10-17 2011-07-12 Telefonaktiebolaget Lm Ericsson (Publ) Container format for multimedia presentations
US7346163B2 (en) 2003-10-31 2008-03-18 Sony Corporation Dynamic composition of pre-encrypted video on demand content
US7853980B2 (en) 2003-10-31 2010-12-14 Sony Corporation Bi-directional indices for trick mode video-on-demand
US20050102371A1 (en) 2003-11-07 2005-05-12 Emre Aksu Streaming from a server to a client
DE10353564A1 (de) 2003-11-14 2005-06-16 Deutsche Thomson-Brandt Gmbh Verfahren zur abschnittsweisen, diskontinuierlichen Übertragung von Daten in einem Netzwerk verteilter Stationen sowie Netzwerkteilnehmerstation als Anforderungsgerät bei der Durchführung eines solchen Verfahrens als auch Netzwerkteilnehmerstation als Quellgerät bei der Durchführung eines solchen Verfahrens
US7882034B2 (en) 2003-11-21 2011-02-01 Realnetworks, Inc. Digital rights management for content rendering on playback devices
US7398327B2 (en) 2003-11-25 2008-07-08 Robert Bosch Gmbh Apparatus, method and system for providing automated services to heterogenous devices across multiple platforms
DE60334913D1 (de) 2003-11-26 2010-12-23 Packet Video Network Solutions Verfahren für garantierte Ablieferung von Multimediainhalten, basiert auf den Terminalfähigkeiten
US8472792B2 (en) 2003-12-08 2013-06-25 Divx, Llc Multimedia distribution system
KR101244308B1 (ko) * 2003-12-08 2013-03-18 삼성전자주식회사 동영상 파일의 암호화 방법 및 그를 이용한 디지털 저작권관리방법
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
JP4155185B2 (ja) 2003-12-11 2008-09-24 日本ビクター株式会社 コンテンツ配信方法、コンテンツ配信サーバ、およびコンテンツ受信装置
EP1693999A4 (en) 2003-12-11 2011-09-14 Panasonic Corp PACK STATION DEVICE
JP4118232B2 (ja) 2003-12-19 2008-07-16 三菱電機株式会社 映像データ処理方法および映像データ処理装置
FR2864407B1 (fr) 2003-12-22 2006-03-10 Canon Kk Procede et dispositif de transmission continue d'une video dans un reseau de communication
US7602908B2 (en) 2003-12-22 2009-10-13 Aol Llc System and method for using a streaming protocol
US20050138655A1 (en) 2003-12-22 2005-06-23 Randy Zimler Methods, systems and storage medium for managing digital rights of segmented content
JP4537083B2 (ja) 2004-01-28 2010-09-01 キヤノン株式会社 データ処理装置及びその制御方法
US20050180641A1 (en) 2004-02-02 2005-08-18 Clark Adam L. System and method for transmitting live audio/video information
US9094699B2 (en) 2004-02-05 2015-07-28 Broadcom Corporation System and method for security key transmission with strong pairing to destination client
WO2005076601A1 (en) 2004-02-10 2005-08-18 Lg Electronic Inc. Text subtitle decoder and method for decoding text subtitle streams
US8832434B2 (en) 2004-02-13 2014-09-09 Hewlett-Packard Development Company, L.P. Methods for generating data for describing scalable media
JP2005229395A (ja) * 2004-02-13 2005-08-25 Canon Inc 再生装置
US7546641B2 (en) 2004-02-13 2009-06-09 Microsoft Corporation Conditional access to digital rights management conversion
JP5119566B2 (ja) 2004-02-16 2013-01-16 ソニー株式会社 再生装置および再生方法、プログラム記録媒体、並びにプログラム
US7512658B2 (en) 2004-02-26 2009-03-31 International Business Machines Corporation Providing a portion of an electronic mail message based upon a transfer rate, a message size, and a file format
US20050216752A1 (en) 2004-03-26 2005-09-29 Microsoft Corporation Common scrambling
WO2005094080A1 (ja) 2004-03-29 2005-10-06 Matsushita Electric Industrial Co., Ltd. 蓄積表示装置及び連動表示方法並びにシステム
JP2005284041A (ja) 2004-03-30 2005-10-13 Victor Co Of Japan Ltd コンテンツ配信方法、コンテンツ配信サーバ、およびコンテンツ受信装置
EP1746825B1 (en) 2004-04-16 2011-06-08 Panasonic Corporation Recording medium, reproduction device, program
US7539248B2 (en) 2004-04-29 2009-05-26 Mediatek Incorporation Adaptive de-blocking filtering apparatus and method for MPEG video decoder
US7397853B2 (en) 2004-04-29 2008-07-08 Mediatek Incorporation Adaptive de-blocking filtering apparatus and method for MPEG video decoder
US7400679B2 (en) 2004-04-29 2008-07-15 Mediatek Incorporation Adaptive de-blocking filtering apparatus and method for MPEG video decoder
US8868772B2 (en) 2004-04-30 2014-10-21 Echostar Technologies L.L.C. Apparatus, system, and method for adaptive-rate shifting of streaming content
US7477749B2 (en) 2004-05-12 2009-01-13 Nokia Corporation Integrity protection of streamed content
US20060037057A1 (en) 2004-05-24 2006-02-16 Sharp Laboratories Of America, Inc. Method and system of enabling trick play modes using HTTP GET
US7299406B2 (en) 2004-06-02 2007-11-20 Research In Motion Limited Representing spreadsheet document content
US7885405B1 (en) 2004-06-04 2011-02-08 GlobalFoundries, Inc. Multi-gigabit per second concurrent encryption in block cipher modes
CN103037254B (zh) 2004-06-07 2016-07-13 斯灵媒体公司 个人媒体广播系统
JP2005351994A (ja) 2004-06-08 2005-12-22 Sony Corp コンテンツ配信サーバ,コンテンツ配信方法,プログラム
EP1759531A2 (en) 2004-06-14 2007-03-07 ROK Productions Limited Media player
GB0413261D0 (en) 2004-06-15 2004-07-14 Ibm Method and arrangement for front building
US7756271B2 (en) 2004-06-15 2010-07-13 Microsoft Corporation Scalable layered access control for multimedia
CN1981342A (zh) 2004-06-18 2007-06-13 松下电器产业株式会社 再现装置、程序、再现方法
US8600217B2 (en) 2004-07-14 2013-12-03 Arturo A. Rodriguez System and method for improving quality of displayed picture during trick modes
KR100611985B1 (ko) 2004-07-27 2006-08-11 삼성전자주식회사 실시간 컨텐츠 관리 방법, 소오스 장치 및 싱크 장치
WO2006018790A1 (en) 2004-08-12 2006-02-23 Koninklijke Philips Electronics N.V. Selection of content from a stream of video or audio data
CN1989564A (zh) 2004-08-17 2007-06-27 松下电器产业株式会社 信息记录媒体、数据区别装置、以及数据再生装置
JPWO2006022304A1 (ja) 2004-08-26 2008-05-08 松下電器産業株式会社 コンテンツ起動制御装置
US7675891B2 (en) * 2004-09-23 2010-03-09 Telefonakiebolaget L M Ericsson (Publ) Multimedia reception in communication networks
KR20060030164A (ko) 2004-10-05 2006-04-10 전문석 동영상 데이터 보호를 위한 공유키 풀 기반의 drm 시스템
JP2007065928A (ja) 2005-08-30 2007-03-15 Toshiba Corp 情報記憶媒体、情報処理方法、情報転送方法、情報再生方法、情報再生装置、情報記録方法、情報記録装置、及びプログラム
US7797720B2 (en) 2004-10-22 2010-09-14 Microsoft Corporation Advanced trick mode
US7412149B2 (en) 2004-10-28 2008-08-12 Bitband Technologies, Ltd. Trick mode generation in video streaming
WO2006045334A1 (en) 2004-10-28 2006-05-04 Telecom Italia S.P.A. A method for configuring a radio terminal through a radio communication network, related network and computer program product therefor
US20060093320A1 (en) 2004-10-29 2006-05-04 Hallberg Bryan S Operation modes for a personal video recorder using dynamically generated time stamps
WO2006048039A1 (en) 2004-11-08 2006-05-11 Telefonaktiebolaget Lm Ericsson (Publ) Technique for registering a device with a rights issuer system
US8218439B2 (en) 2004-11-24 2012-07-10 Sharp Laboratories Of America, Inc. Method and apparatus for adaptive buffering
JP4901751B2 (ja) 2004-12-06 2012-03-21 トムソン ライセンシング ディジタル・ネットワークにおけるマルチプル・クローズド・キャプション・フローおよびカスタマー・アクセス
JP2006174309A (ja) 2004-12-17 2006-06-29 Ricoh Co Ltd 動画再生装置、プログラム、及び記録媒体
FR2879878B1 (fr) 2004-12-22 2007-05-25 Thales Sa Procede de chiffrement selectif compatible pour flux video
GB0428155D0 (en) 2004-12-22 2005-01-26 British Telecomm Buffer underflow prevention
US7664872B2 (en) 2005-01-05 2010-02-16 Divx, Inc. Media transfer protocol
US7957535B2 (en) 2005-01-18 2011-06-07 Panasonic Corporation Data storing method, data playback method, data recording device, data playback device, and recording medium
EP1839446A1 (en) 2005-01-19 2007-10-03 THOMSON Licensing Method and apparatus for real time parallel encoding
DE102005004941B4 (de) 2005-02-02 2006-12-21 Avt Audio Vision Technology Gmbh Konvertierung von Daten, insbesondere zur Wiedergabe von Audio- und/oder Videoinformationen
US20070166000A1 (en) 2005-03-01 2007-07-19 Ramesh Nallur System and method for generating trick mode streams
US7627888B2 (en) 2005-03-09 2009-12-01 Vudu, Inc. Method and system for keeping a library of titles updated
US20060218251A1 (en) 2005-03-14 2006-09-28 Matsushita Electric Industrial Co., Ltd. AV server, AV contents reproducing apparatus, AV contents transmitting method, program and recording medium
US7349886B2 (en) 2005-03-25 2008-03-25 Widevine Technologies, Inc. Securely relaying content using key chains
KR100677026B1 (ko) 2005-04-07 2007-02-01 (주)아이티너스 코리아 영상 신호 송수신 시스템 및 이에 사용되는 보안 모듈
US20080120342A1 (en) 2005-04-07 2008-05-22 Iofy Corporation System and Method for Providing Data to be Used in a Presentation on a Device
US20080120330A1 (en) 2005-04-07 2008-05-22 Iofy Corporation System and Method for Linking User Generated Data Pertaining to Sequential Content
US7676495B2 (en) 2005-04-14 2010-03-09 Microsoft Corporation Advanced streaming format table of contents object
US20060235883A1 (en) 2005-04-18 2006-10-19 Krebs Mark S Multimedia system for mobile client platforms
AU2006247999A1 (en) 2005-04-20 2006-11-23 Videoegg, Inc. Browser enabled video manipulation
US7478325B2 (en) 2005-04-22 2009-01-13 Microsoft Corporation Methods for providing an accurate visual rendition of a text element formatted with an unavailable font
US8683066B2 (en) 2007-08-06 2014-03-25 DISH Digital L.L.C. Apparatus, system, and method for multi-bitrate content streaming
JP4356645B2 (ja) 2005-04-28 2009-11-04 ソニー株式会社 字幕生成装置及び方法
KR100716900B1 (ko) 2005-05-12 2007-05-10 에스케이 텔레콤주식회사 방송 컨텐츠 보호 시스템 및 그 방법
JP4293160B2 (ja) 2005-05-19 2009-07-08 ソニー株式会社 コンテンツ再生装置及びコンテンツ再生方法
KR100717008B1 (ko) 2005-05-31 2007-05-10 삼성전자주식회사 부분폰트 파일 송신 및 수신하는 방법 및 장치
US20070005333A1 (en) 2005-06-30 2007-01-04 Benard Setiohardjo Analog tape emulation
CA2513016A1 (en) 2005-07-22 2007-01-22 Research In Motion Limited A secure method of synchronizing cache contents of a mobile browser with a proxy server
KR20070020727A (ko) 2005-08-16 2007-02-22 주식회사 팬택 순차 조각 다운로드 방식을 이용한 의사 스트리밍 다운로드기능을 가지는 단말기 및 그 방법
EP1808858B1 (en) 2005-08-31 2013-05-15 Sony Corporation File processing device, file processing method, program and recording medium
JP4321550B2 (ja) 2005-08-31 2009-08-26 ソニー株式会社 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
US20070055982A1 (en) 2005-09-02 2007-03-08 Netgear Inc. System and method for digital content media distribution
JP2007074608A (ja) 2005-09-09 2007-03-22 Hitachi Ltd 再生装置および再生方法
US8504597B2 (en) 2005-09-09 2013-08-06 William M. Pitts Distributed file system consistency mechanism extension for enabling internet video broadcasting
US20070067472A1 (en) 2005-09-20 2007-03-22 Lsi Logic Corporation Accurate and error resilient time stamping method and/or apparatus for the audio-video interleaved (AVI) format
US8522290B2 (en) 2005-10-07 2013-08-27 Infosys Technologies, Ltd. Video on demand system and methods thereof
US20070083467A1 (en) 2005-10-10 2007-04-12 Apple Computer, Inc. Partial encryption techniques for media data
US20070086528A1 (en) 2005-10-18 2007-04-19 Mauchly J W Video encoder with multiple processors
FR2892885B1 (fr) 2005-11-02 2008-01-25 Streamezzo Sa Procede de gestion de polices de caractere a l'interieur de scenes multimedia, programme d'ordinateur et terminal correspondants.
FR2895545B1 (fr) 2005-12-23 2008-05-30 Trusted Logic Sa Procede d'authentification d'applications d'un systeme informatique
KR20080081190A (ko) 2005-12-23 2008-09-08 코닌클리케 필립스 일렉트로닉스 엔.브이. 데이터 스트림 처리 장치 및 방법
EP1806919A1 (en) 2006-01-05 2007-07-11 Alcatel Lucent Media delivery system with content-based trick play mode
US8214516B2 (en) 2006-01-06 2012-07-03 Google Inc. Dynamic media serving infrastructure
US7577980B2 (en) 2006-01-19 2009-08-18 International Business Machines Corporation Bit-rate constrained trick play through stream switching and adaptive streaming
US7991891B2 (en) 2006-02-02 2011-08-02 Microsoft Corporation Version-specific content searching
US20070239839A1 (en) 2006-04-06 2007-10-11 Buday Michael E Method for multimedia review synchronization
US7992175B2 (en) 2006-05-15 2011-08-02 The Directv Group, Inc. Methods and apparatus to provide content on demand in content broadcast systems
US8775319B2 (en) 2006-05-15 2014-07-08 The Directv Group, Inc. Secure content transfer systems and methods to operate the same
CN1873820A (zh) 2006-05-18 2006-12-06 北京中星微电子有限公司 视频文件处理方法、视频索引方法和视频索引装置
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
KR101013686B1 (ko) 2006-06-29 2011-02-10 엘지전자 주식회사 Drm에서 유저 도메인 내의 장치 관리 방법 및 시스템
US8224041B2 (en) 2006-07-19 2012-07-17 Panasonic Corporation Media data processing apparatus and media data processing method
US7783773B2 (en) 2006-07-24 2010-08-24 Microsoft Corporation Glitch-free media streaming
US8082442B2 (en) 2006-08-10 2011-12-20 Microsoft Corporation Securely sharing applications installed by unprivileged users
US20080077592A1 (en) 2006-09-27 2008-03-27 Shane Brodie method and apparatus for device authentication
US7743161B2 (en) 2006-10-10 2010-06-22 Ortiva Wireless, Inc. Digital content buffer for adaptive streaming
TW200820783A (en) 2006-10-25 2008-05-01 Realtek Semiconductor Corp Apparatus and method for deblock filtering
US8270819B2 (en) 2006-10-31 2012-09-18 Tivo Inc. Performing trick play functions in a digital video recorder with efficient use of resources
US8711929B2 (en) 2006-11-01 2014-04-29 Skyfire Labs, Inc. Network-based dynamic encoding
JP4609773B2 (ja) 2006-11-28 2011-01-12 コニカミノルタビジネステクノロジーズ株式会社 文書データ作成装置及び文書データ作成方法並びに制御プログラム
AR064274A1 (es) 2006-12-14 2009-03-25 Panasonic Corp Metodo de codificacion de imagenes en movimiento, dispositivo de codificacion de imagenes en movimiento, metodo de grabacion de imagenes en movimiento, medio de grabacion, metodo de reproduccion de imagenes en movimiento, dispositivo de reproduccion de imagenes en movimiento, y sistema de reproducci
US9826197B2 (en) 2007-01-12 2017-11-21 Activevideo Networks, Inc. Providing television broadcasts over a managed network and interactive content over an unmanaged network to a client device
US7921221B2 (en) 2007-01-22 2011-04-05 Minborg Invent I Goteborg Ab Method and apparatus for obtaining digital objects in a communication network
US20080192818A1 (en) 2007-02-09 2008-08-14 Dipietro Donald Vincent Systems and methods for securing media
US20080201705A1 (en) 2007-02-15 2008-08-21 Sun Microsystems, Inc. Apparatus and method for generating a software dependency map
US20080279535A1 (en) 2007-05-10 2008-11-13 Microsoft Corporation Subtitle data customization and exposure
US20080294691A1 (en) 2007-05-22 2008-11-27 Sunplus Technology Co., Ltd. Methods for generating and playing multimedia file and recording medium storing multimedia file
US7558760B2 (en) 2007-06-12 2009-07-07 Microsoft Corporation Real-time key frame generation
US8243924B2 (en) 2007-06-29 2012-08-14 Google Inc. Progressive download or streaming of digital media securely through a localized container and communication protocol proxy
KR20090004659A (ko) 2007-07-02 2009-01-12 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
US8321556B1 (en) 2007-07-09 2012-11-27 The Nielsen Company (Us), Llc Method and system for collecting data on a wireless device
US9602757B2 (en) 2007-09-04 2017-03-21 Apple Inc. Display of video subtitles
KR101058042B1 (ko) 2007-09-06 2011-08-19 삼성전자주식회사 멀티스트림 재생장치 및 재생방법
US8023562B2 (en) 2007-09-07 2011-09-20 Vanguard Software Solutions, Inc. Real-time video coding/decoding
US8046453B2 (en) 2007-09-20 2011-10-25 Qurio Holdings, Inc. Illustration supported P2P media content streaming
US10277956B2 (en) 2007-10-01 2019-04-30 Cabot Communications Method and apparatus for streaming digital media content and a communication system
US20090106082A1 (en) 2007-10-23 2009-04-23 Senti Thad E System and method to facilitate targeted advertising
JP5513400B2 (ja) 2007-11-16 2014-06-04 ソニック アイピー, インコーポレイテッド マルチメディアファイルのための階層的で簡略なインデックス構造体
US8301793B2 (en) 2007-11-16 2012-10-30 Divx, Llc Chunk header incorporating binary flags and correlated variable-length fields
US8169916B1 (en) 2007-11-23 2012-05-01 Media Melon, Inc. Multi-platform video delivery configuration
US8131875B1 (en) 2007-11-26 2012-03-06 Adobe Systems Incorporated Device profile assignment based on device capabilities
WO2009075766A2 (en) 2007-12-05 2009-06-18 Swarmcast, Inc. Dynamic bit rate scaling
US8997161B2 (en) 2008-01-02 2015-03-31 Sonic Ip, Inc. Application enhancement tracks
US8776161B2 (en) 2008-02-12 2014-07-08 Ciena Corporation Systems and methods for video processing in network edge devices
US8341715B2 (en) 2008-02-29 2012-12-25 Research In Motion Limited System and method for shared resource owner based access control
WO2009109976A2 (en) 2008-03-05 2009-09-11 Webtview Ltd. Distributing internet channels to a media viewer
CN101540645A (zh) 2008-03-21 2009-09-23 华为技术有限公司 动态内容分发方法和装置
US20090249081A1 (en) 2008-03-31 2009-10-01 Kabushiki Kaisha Toshiba-1 Shibaura 1-Chomominatoku Storage device encryption and method
US8379851B2 (en) 2008-05-12 2013-02-19 Microsoft Corporation Optimized client side rate control and indexed file layout for streaming media
US8456380B2 (en) 2008-05-15 2013-06-04 International Business Machines Corporation Processing computer graphics generated by a remote computer for streaming to a client computer
US8423889B1 (en) 2008-06-05 2013-04-16 Amazon Technologies, Inc. Device specific presentation control for electronic book reader devices
WO2009149364A2 (en) 2008-06-06 2009-12-10 Deluxe Digital Studios, Inc. Methods and systems for use in providing playback of variable length content in a fixed length framework
EP2304587A4 (en) 2008-06-06 2012-07-11 Divx Inc MULTIMEDIA DISTRIBUTION AND READING SYSTEMS, AND METHODS USING ENHANCED METADATA STRUCTURES
US7991801B2 (en) 2008-06-10 2011-08-02 International Business Machines Corporation Real-time dynamic and synchronized captioning system and method for use in the streaming of multimedia data
US8527876B2 (en) 2008-06-12 2013-09-03 Apple Inc. System and methods for adjusting graphical representations of media files based on previous usage
US20090313564A1 (en) 2008-06-12 2009-12-17 Apple Inc. Systems and methods for adjusting playback of media files based on previous usage
US8775566B2 (en) 2008-06-21 2014-07-08 Microsoft Corporation File format for media distribution and presentation
US8352996B2 (en) 2008-06-27 2013-01-08 Microsoft Corporation Adaptive video switching for variable network conditions
US20110055585A1 (en) 2008-07-25 2011-03-03 Kok-Wah Lee Methods and Systems to Create Big Memorizable Secrets and Their Applications in Information Engineering
CN101426179A (zh) 2008-09-22 2009-05-06 深圳华为通信技术有限公司 业务激活的方法和业务提供的方法以及终端设备和服务器
US8938549B2 (en) 2008-10-15 2015-01-20 Aster Risk Management Llc Reduction of peak-to-average traffic ratio in distributed streaming systems
US8051287B2 (en) 2008-10-15 2011-11-01 Adobe Systems Incorporated Imparting real-time priority-based network communications in an encrypted communication session
EP2180664A1 (en) 2008-10-22 2010-04-28 Vivendi Mobile Entertainment System and method for accessing multi-media content via a mobile terminal
US8249168B2 (en) 2008-11-06 2012-08-21 Advanced Micro Devices, Inc. Multi-instance video encoder
EP2359536B1 (en) 2008-11-24 2016-03-16 Ankeena Networks, Inc., Adaptive network content delivery system
US9015209B2 (en) 2008-12-16 2015-04-21 Sandisk Il Ltd. Download management of discardable files
US8311115B2 (en) 2009-01-29 2012-11-13 Microsoft Corporation Video encoding using previously calculated motion information
US8396114B2 (en) 2009-01-29 2013-03-12 Microsoft Corporation Multiple bit rate video encoding using variable bit rate and dynamic resolution for adaptive video streaming
US20100218208A1 (en) 2009-02-26 2010-08-26 Comcast Cable Communications, Llc Method and Apparatus for Generating Alternative Commercials
CA2755774C (en) 2009-03-19 2015-01-06 Azuki Systems, Inc. Method for scalable live streaming delivery for mobile audiences
WO2010111261A1 (en) 2009-03-23 2010-09-30 Azuki Systems, Inc. Method and system for efficient streaming video dynamic rate adaptation
RU2011147112A (ru) 2009-04-20 2013-05-27 Конинклейке Филипс Электроникс Н.В. Верификация и синхронизация файлов, полученных отдельно от видеоконтента
US8270473B2 (en) 2009-06-12 2012-09-18 Microsoft Corporation Motion based dynamic resolution multiple bit rate video encoding
US8225061B2 (en) 2009-07-02 2012-07-17 Apple Inc. Method and apparatus for protected content data processing
CN102792291B (zh) 2009-08-17 2015-11-25 阿卡麦科技公司 基于http的流分发的方法和系统
US8355433B2 (en) 2009-08-18 2013-01-15 Netflix, Inc. Encoding video streams for adaptive video streaming
US9203816B2 (en) 2009-09-04 2015-12-01 Echostar Technologies L.L.C. Controlling access to copies of media content by a client device
US8473558B2 (en) 2009-09-22 2013-06-25 Thwapr, Inc. Progressive registration for mobile media sharing
US20110096828A1 (en) 2009-09-22 2011-04-28 Qualcomm Incorporated Enhanced block-request streaming using scalable encoding
EP2484090A1 (en) 2009-09-29 2012-08-08 Nokia Corp. System, method and apparatus for dynamic media file streaming
US9237387B2 (en) 2009-10-06 2016-01-12 Microsoft Technology Licensing, Llc Low latency cacheable media streaming
US10264029B2 (en) 2009-10-30 2019-04-16 Time Warner Cable Enterprises Llc Methods and apparatus for packetized content delivery over a content delivery network
US8930991B2 (en) 2009-11-19 2015-01-06 Gregory Philpott System and method for delivering content to mobile devices
US9164967B2 (en) 2009-11-25 2015-10-20 Red Hat, Inc. Extracting font metadata from font files into searchable metadata for package distribution
US8625667B2 (en) 2009-11-30 2014-01-07 Alcatel Lucent Method of opportunity-based transmission of wireless video
US8767825B1 (en) 2009-11-30 2014-07-01 Google Inc. Content-based adaptive video transcoding framework
CA2782825C (en) 2009-12-04 2016-04-26 Divx, Llc Elementary bitstream cryptographic material transport systems and methods
KR20110066578A (ko) 2009-12-11 2011-06-17 삼성전자주식회사 디지털 컨텐츠와 이를 위한 재생장치 및 방법
US9344735B2 (en) 2009-12-21 2016-05-17 Tmm, Inc. Progressive shape based encoding of video content within a swarm environment
US9038116B1 (en) 2009-12-28 2015-05-19 Akamai Technologies, Inc. Method and system for recording streams
US20110296048A1 (en) 2009-12-28 2011-12-01 Akamai Technologies, Inc. Method and system for stream handling using an intermediate format
DK2526671T3 (en) 2010-01-18 2017-02-27 ERICSSON TELEFON AB L M (publ) METHODS AND DEVICES FOR HTTP MEDIA FLOW DISTRIBUTION
EP2360924A1 (en) 2010-01-18 2011-08-24 Alcatel-Lucent España, S.A. A digital multimedia data transmission device and method
US20110179185A1 (en) 2010-01-20 2011-07-21 Futurewei Technologies, Inc. System and Method for Adaptive Differentiated Streaming
US20110197267A1 (en) 2010-02-05 2011-08-11 Vivianne Gravel Secure authentication system and method
EP3333741B1 (en) 2010-02-17 2019-07-31 Verimatrix, Inc. Systems and methods for securing content delivered using a playlist
EP2362651A1 (en) 2010-02-19 2011-08-31 Thomson Licensing Multipath delivery for adaptive streaming
EP2360923A1 (en) 2010-02-24 2011-08-24 Thomson Licensing Method for selectively requesting adaptive streaming content and a device implementing the method
US8819116B1 (en) 2010-03-08 2014-08-26 Amazon Technologies, Inc. Providing services using a device capabilities service
US8386621B2 (en) 2010-03-12 2013-02-26 Netflix, Inc. Parallel streaming
EP2375680A1 (en) 2010-04-01 2011-10-12 Thomson Licensing A method for recovering content streamed into chunk
US9043484B2 (en) 2010-04-02 2015-05-26 Disney Enterprises, Inc. Streaming playback and dynamic ad insertion
US9137278B2 (en) 2010-04-08 2015-09-15 Vasona Networks Inc. Managing streaming bandwidth for multiple clients
WO2011139305A1 (en) 2010-05-04 2011-11-10 Azuki Systems, Inc. Method and apparatus for carrier controlled dynamic rate adaptation and client playout rate reduction
KR101837687B1 (ko) 2010-06-04 2018-03-12 삼성전자주식회사 콘텐트의 품질을 결정하는 복수의 인자에 기초한 적응적인 스트리밍 방법 및 장치
US8407753B2 (en) 2010-06-10 2013-03-26 Sony Corporation Content list tailoring for capability of IPTV device
US8705616B2 (en) 2010-06-11 2014-04-22 Microsoft Corporation Parallel multiple bitrate video encoding to reduce latency and dependences between groups of pictures
US9485546B2 (en) 2010-06-29 2016-11-01 Qualcomm Incorporated Signaling video samples for trick mode video representations
US20130080267A1 (en) 2011-09-26 2013-03-28 Unicorn Media, Inc. Single-url content delivery
AU2010202741B1 (en) 2010-06-30 2010-12-23 Brightcove Inc. Dynamic chunking for media streaming
WO2012011726A2 (en) 2010-07-19 2012-01-26 Samsung Electronics Co., Ltd. Method and apparatus for providing drm service
US8782268B2 (en) 2010-07-20 2014-07-15 Microsoft Corporation Dynamic composition of media
US9319448B2 (en) 2010-08-10 2016-04-19 Qualcomm Incorporated Trick modes for network streaming of coded multimedia data
US8677428B2 (en) 2010-08-20 2014-03-18 Disney Enterprises, Inc. System and method for rule based dynamic server side streaming manifest files
US9998749B2 (en) 2010-10-19 2018-06-12 Otoy, Inc. Composite video streaming using stateless compression
WO2012059376A1 (en) 2010-11-02 2012-05-10 Telefonaktiebolaget L M Ericsson (Publ) Methods and devices for media description delivery
US9264750B2 (en) 2010-12-23 2016-02-16 Verizon Patent And Licensing Inc. Advertising insertion for playback of video streams on user devices
WO2012094171A1 (en) 2011-01-05 2012-07-12 Divx, Llc. Adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol
US8914534B2 (en) 2011-01-05 2014-12-16 Sonic Ip, Inc. Systems and methods for adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol
EP2666316B1 (en) 2011-01-17 2020-06-03 Telefonaktiebolaget LM Ericsson (publ) Method and apparatus for authenticating a communication device
US9215466B2 (en) 2011-01-31 2015-12-15 Apple Inc. Joint frame rate and resolution adaptation
US8849950B2 (en) 2011-04-07 2014-09-30 Qualcomm Incorporated Network streaming of video data using byte range requests
US8516144B2 (en) 2011-04-29 2013-08-20 Cbs Interactive Inc. Startup bitrate in adaptive bitrate streaming
US9646141B2 (en) 2011-06-22 2017-05-09 Netflix, Inc. Fast start of streaming digital media playback with deferred license retrieval
EP2724531A4 (en) 2011-06-23 2014-10-29 Saab Ab QUALITY OPTIMIZATION PER MAXIMUM BITRATE
BR112013032846A2 (pt) 2011-06-28 2017-02-21 Ericsson Telefon Ab L M técnica para gerenciar o tráfego de mídia de transmissão em uma entidade de rede
CN103650451B (zh) 2011-07-07 2016-10-19 瑞典爱立信有限公司 网络容量优化的自适应http流播
US9887852B2 (en) 2011-08-11 2018-02-06 Intel Corporation Methods for switching between a MBMS download and an HTTP-based delivery of DASH formatted content over an IMS network
US8948249B2 (en) 2011-08-19 2015-02-03 Google Technology Holdings LLC Encoder-aided segmentation for adaptive streaming
US8909922B2 (en) 2011-09-01 2014-12-09 Sonic Ip, Inc. Systems and methods for playing back alternative streams of protected content protected using common cryptographic information
US8856218B1 (en) 2011-12-13 2014-10-07 Google Inc. Modified media download with index adjustment
US20130196292A1 (en) 2012-01-30 2013-08-01 Sharp Kabushiki Kaisha Method and system for multimedia-based language-learning, and computer program therefor
US9813740B2 (en) 2012-08-24 2017-11-07 Google Inc. Method and apparatus for streaming multimedia data with access point positioning information
EP3562167A1 (en) 2013-02-12 2019-10-30 Ericsson AB Method for providing variant manifest file to media player for rendering content from personal over-the-top network video recorder
US9226007B2 (en) 2013-02-15 2015-12-29 Cox Communications, Inc. Cloud-enabled network-based digital video recorder
US9549000B2 (en) 2013-03-15 2017-01-17 Arris Enterprises, Inc. Streaming media from a server delivering individualized content streams to clients
WO2018169571A1 (en) * 2017-03-15 2018-09-20 Google Llc Segmentation-based parameterized motion models
US11330296B2 (en) * 2020-09-14 2022-05-10 Apple Inc. Systems and methods for encoding image data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5745643A (en) * 1995-04-06 1998-04-28 Kabushiki Kaisha Toshiba System for and method of reproducing playback data appropriately by the use of attribute information on the playback data
KR100221423B1 (ko) * 1995-04-06 1999-09-15 니시무로 타이죠 재생 데이타의 속성 정보를 이용하여 재생 데이타를 재생하는 방법

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10257443B2 (en) 2003-12-08 2019-04-09 Divx, Llc Multimedia distribution system for multimedia files with interleaved media chunks of varying types
US11012641B2 (en) 2003-12-08 2021-05-18 Divx, Llc Multimedia distribution system for multimedia files with interleaved media chunks of varying types
US11017816B2 (en) 2003-12-08 2021-05-25 Divx, Llc Multimedia distribution system
US11159746B2 (en) 2003-12-08 2021-10-26 Divx, Llc Multimedia distribution system for multimedia files with packed frames
US11297263B2 (en) 2003-12-08 2022-04-05 Divx, Llc Multimedia distribution system for multimedia files with packed frames
US11355159B2 (en) 2003-12-08 2022-06-07 Divx, Llc Multimedia distribution system
US11509839B2 (en) 2003-12-08 2022-11-22 Divx, Llc Multimedia distribution system for multimedia files with packed frames
US11735228B2 (en) 2003-12-08 2023-08-22 Divx, Llc Multimedia distribution system
US11735227B2 (en) 2003-12-08 2023-08-22 Divx, Llc Multimedia distribution system
US10902883B2 (en) 2007-11-16 2021-01-26 Divx, Llc Systems and methods for playing back multimedia files incorporating reduced index structures
US11495266B2 (en) 2007-11-16 2022-11-08 Divx, Llc Systems and methods for playing back multimedia files incorporating reduced index structures

Also Published As

Publication number Publication date
EP3641317A1 (en) 2020-04-22
EP1692859A4 (en) 2013-01-23
US20220046188A1 (en) 2022-02-10
CN101124561A (zh) 2008-02-13
US20050123283A1 (en) 2005-06-09
JP5589043B2 (ja) 2014-09-10
US10257443B2 (en) 2019-04-09
KR101380262B1 (ko) 2014-04-01
JP2012019548A (ja) 2012-01-26
EP2927816A1 (en) 2015-10-07
EP3641317B1 (en) 2022-06-15
US10708521B2 (en) 2020-07-07
US20160360123A1 (en) 2016-12-08
WO2005057906A3 (en) 2007-09-07
ES2927630T3 (es) 2022-11-08
US20220345643A1 (en) 2022-10-27
US11509839B2 (en) 2022-11-22
JP2007532044A (ja) 2007-11-08
KR20110124325A (ko) 2011-11-16
JP2014233086A (ja) 2014-12-11
JP2013013146A (ja) 2013-01-17
EP1692859A2 (en) 2006-08-23
US20200288069A1 (en) 2020-09-10
US20210258514A1 (en) 2021-08-19
US20220408032A1 (en) 2022-12-22
KR20130105908A (ko) 2013-09-26
WO2005057906A2 (en) 2005-06-23
US11159746B2 (en) 2021-10-26
ES2784837T3 (es) 2020-10-01
US20220256102A1 (en) 2022-08-11
US11297263B2 (en) 2022-04-05
CN101124561B (zh) 2013-11-27
US20150104153A1 (en) 2015-04-16
KR20130006717A (ko) 2013-01-17
EP2927816B1 (en) 2020-01-22
BRPI0416738B1 (pt) 2018-12-26
US20050207442A1 (en) 2005-09-22
US20190289226A1 (en) 2019-09-19
US9369687B2 (en) 2016-06-14
KR101380265B1 (ko) 2014-04-01
BRPI0416738A (pt) 2007-01-16
KR20060122893A (ko) 2006-11-30
HK1215889A1 (zh) 2016-09-23
US11012641B2 (en) 2021-05-18
US8731369B2 (en) 2014-05-20
US7519274B2 (en) 2009-04-14
USRE45052E1 (en) 2014-07-29
EP1692859B1 (en) 2015-04-08

Similar Documents

Publication Publication Date Title
US11159746B2 (en) Multimedia distribution system for multimedia files with packed frames
US11735227B2 (en) Multimedia distribution system

Legal Events

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

Payment date: 20150309

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160304

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170220

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180308

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190304

Year of fee payment: 8