KR20080066706A - 채널 스위치 프레임 - Google Patents

채널 스위치 프레임 Download PDF

Info

Publication number
KR20080066706A
KR20080066706A KR1020087009996A KR20087009996A KR20080066706A KR 20080066706 A KR20080066706 A KR 20080066706A KR 1020087009996 A KR1020087009996 A KR 1020087009996A KR 20087009996 A KR20087009996 A KR 20087009996A KR 20080066706 A KR20080066706 A KR 20080066706A
Authority
KR
South Korea
Prior art keywords
frame
coded
version
intra
frames
Prior art date
Application number
KR1020087009996A
Other languages
English (en)
Other versions
KR100967731B1 (ko
Inventor
고든 켄트 워커
비자얄라크쉬미 알. 라빈드란
페이송 첸
타오 티안
팡 쉬
스코트 티. 스와제이
세이플라 하리트 오거즈
아미트 로하트기
시타라만 가나파시 수브라마니아
파니쿠말 브하미디파티
Original Assignee
콸콤 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 콸콤 인코포레이티드 filed Critical 콸콤 인코포레이티드
Publication of KR20080066706A publication Critical patent/KR20080066706A/ko
Application granted granted Critical
Publication of KR100967731B1 publication Critical patent/KR100967731B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/164Feedback from the receiver or from the transmission channel
    • H04N19/166Feedback from the receiver or from the transmission channel concerning the amount of transmission errors, e.g. bit error rate [BER]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/37Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability with arrangements for assigning different transmission priorities to video input data or to video coded data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2383Channel coding or modulation of digital bit-stream, e.g. QPSK modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4383Accessing a communication channel
    • H04N21/4384Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/631Multimode Transmission, e.g. transmitting basic layers and enhancement layers of the content over different transmission paths or transmitting with different error corrections, different keys or with different transmission protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

고속 채널 포착, 개선된 에러 복원 및 개선된 효율성을 제공하는 멀티미디어 데이터 처리를 위한 방법 및 장치가 제공된다. 인코더 장치는 제1 버전을 생성하기 위해서 인터-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하고, 제2 버전을 생성하기 위해서 인트라-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩한다. 디코더 장치는 티미디어 데이터의 제1 부분의 인터-코딩된 제1 버전을 수신하고, 멀티미디어 데이터의 제1 부분의 인트라-코딩된 제2 버전을 수신하며, 상기 수신된 제1 및 제2 버전들을 선택적으로 디코딩한다.

Description

채널 스위치 프레임{CHANNEL SWITCH FRAME}
본 발명은 멀티미디어 신호 처리에 관한 것으로서, 특히 비디오 인코딩 및 디코딩에 관한 것이다.
비디오 인코더들과 같은 멀티미디어 처리 시스템들은 동영상 전문가 그룹(MPEG)-1,-2, 및 -4 표준, 국제 통신 유니온 (ITU)-T H.263 표준, 및 ITU-T H.264 표준, ISO/IEC MPEG-4, 파트 10, 즉 어드밴스드 비디오 코딩(AVC)과 같은 국제 표준들에 기반한 인코딩 방법들을 사용하여 멀티미디어 데이터를 인코딩한다. 이러한 인코딩 방법들은 일반적으로 전송 및/또는 저장을 위한 멀티미디어 데이터 압축에 관련된다. 압축은 데이터로부터 리던던시를 제거하는 광범위한 처리이다.
비디오 신호는 일련의 픽쳐들의 관점에서 제시되고, 이러한 일련의 픽쳐들은 프레임들(전체 픽쳐), 또는 필드들(예를 들면, 인터레이스된 비디오 스트림은 픽쳐의 홀수 또는 짝수 라인들을 교번하는 필드들을 포함함)을 포함한다. 여기서 사용되는, "프레임"은 픽쳐, 프레임, 또는 필드를 지칭한다. 비디오 인코딩 방법들은 각 프레임을 압축하기 위해서 손실 또는 무손실 압축 알고리즘을 사용함으로써 비디오 신호들을 압축한다. 인트라-프레임 코딩(여기서 인트라-코딩으로 지칭됨)은 단지 자신의 프레임만을 사용하여 프레임을 인코딩하는 것을 지칭한다. 인터-프레 임 코딩(여기서, 인터-코딩으로 지칭됨)은 다른, "기준" 프레임들에 기반하여 프레임을 인코딩하는 것을 지칭한다. 예를 들어, 비디오 신호들은 시간적인 리던던시를 가지며, 여기서 시간적인 프레임들 시퀀스에서 서로 다른 프레임 주변의 프레임들은 서로 매칭되거나 또는 적어도 부분적으로 매칭되는 적어도 일부들을 가진다.
비디오 인코더들과 같은 멀티미디어 프로세서들은 프레임을 블록들 또는 16x16 화소들로 이뤄진 "매크로블록들"로 분할함으로써 프레임을 인코딩한다. 인코더는 각 매크로블록을 추가로 서브블록들로 분할할 수 있다. 각 서브블록은 추가로 추가적인 서브블록들을 포함할 수 있다. 예를 들어, 매크로블록의 서브블록들은 16x8 및 8x16 서브블록들을 포함할 수 있다. 8x16 서브블록들은 8x8 서브블록들을 포함할 수 있다. 여기서 사용되는 용어 "블록"은 매크로블록 또는 서브블록을 지칭한다.
인코더는 인터-코딩 움직임 압축 기반 알고리즘을 사용하여 이러한 시간적인 리던던시를 이용한다. 움직임 압축 알고리즘은 블록에 적어도 부분적으로 매칭되는 기준 프레임의 부분들을 식별한다. 이러한 블록은 기준 프레임의 매칭 부분에 대해서 프레임 상에서 쉬프트될 수 있다. 이러한 쉬프트는 움직임 벡터에 의해 특성화된다. 이러한 블록과 기준 프레임의 부분적으로 매칭하는 부분 사이의 차이는 잔류(residual)의 관점에서 특성화된다. 인코더는 데이터로서 프레임을 인코딩하고, 이러한 데이터는 특정 프레임 파티셔닝(partitioning)에 대해 하나 이상의 움직임 벡터 및 잔류를 포함한다. 프레임을 인코딩하기 위한 블록들에 대한 특정한 분할(partition)은 인코딩으로부터 초래되는 프레임 컨텐츠의 왜곡과 인코딩 사이 즈를 밸런싱하는 비용 함수를 대략적으로 최소화하도록 선택된다.
인터-코딩은 인트라-코딩보다 많은 압축 효율을 제공한다. 그러나, 인터-코딩은 기준 데이터(예를 들어, 기준 프레임들 또는 기준 필드들)가 채널 에러 등에 의해 손실되는 경우 문제점을 생성한다. 에러들에 기인한 기준 데이터의 손실뿐만 아니라, 인터-코딩된 프레임에서 비디오 신호의 초기 포착 또는 재포착으로 인해 기준 데이터가 제공되지 않을 수도 있다. 이러한 경우들에서, 인터-코딩된 데이터의 디코딩은 불가능하거나, 또는 바람직하지 않은 에러 및 에러 전파를 야기할 수 있다. 이러한 시나리오들은 비디오 스트림의 동기화 손실을 초래할 수 있다. 독립적으로 디코딩가능한 인트라-코딩된 프레임은 비디오 신호의 재동기화를 인에이블하는 가장 일반적인 프레임 형태이다. MPEG-x 및 H.264 표준들은 픽쳐들 그룹(GOP)을 사용하고, GOP는 인트라-코딩된 프레임(I-프레임) 및 시간적으로 예측된 P-프레임 또는 양-방향으로 예측된 B-프레임을 포함하며, P-프레임 및 B-프레임은 GOP내의 I-프레임 및/또는 다른 P 및/또는 B 프레임들을 참조한다. 압축을 증가시키기 위해서 보다 긴 GOP가 바람직하지만, 보다 신속한 포착 및 재동기화를 위해서 보다 짧은 GOP가 허용된다. I-프레임들의 수 증가는 압축율을 희생하여 보다 짧은 포착 및 재동기화를 허용한다. 압축율을 보존하면서 비디오의 고속 포착 및 재동기화를 인에이블하는 방법이 요구된다.
본 발명의 시스템, 방법, 및 장치들은 각각 수개의 양상들을 가지며, 이들 중 어떤 것도 바람직한 속성들을 단독으로 책임지지는 않는다. 뒤이은 청구항들에서서 표현된 바와 같이, 본 발명의 범위를 제한함이 없이, 본 발명의 주요한 양상들이 간략하게 논의될 것이다. 이러한 논의 후에, 그리고 특히 "실시예" 부분을 읽은 후에, 당업자는 고속 채널 포착, 개선된 에러 복원 및 개선된 효율을 포함하는 장점들을 본 발명의 특징들이 어떻게 제공하는지를 이해할 것이다.
멀티미디어 데이터 처리 방법이 제공된다. 상기 방법은 제1 버전을 생성하기 위해서 인터-코딩을 사용하여 멀티미디어 데이터의 제1부분을 인코딩하는 단계, 및 제2 버전을 생성하기 위해서 인트라-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하는 단계를 포함한다.
멀티미디어 데이터 프로세서가 제공된다. 상기 프로세서는 제1 버전을 생성하기 위해서 인터-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하고, 제2 버전을 생성하기 위해서 인트라-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하도록 구성된 구성부(configuration) 포함한다.
멀티미디어 데이터를 처리하기 위한 장치가 제공된다. 상기 장치는 제1 버전을 생성하기 위해서 인터-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하는 제1 인코더, 및 제2 버전을 생성하기 위해서 인트라-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하는 제2 인코더를 포함한다.
기계 판독가능한 매체가 제공된다. 상기 기계 판독가능한 매체는 실행시에, 상기 기계로 하여금 제1 버전을 생성하기 위해서 인터-코딩을 사용하여 멀티미디어 데이터의 제1부분을 인코딩하는 명령, 및 제2 버전을 생성하기 위해서 인트라-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하는 명령을 포함한다.
멀티미디어 데이터를 처리하는 방법이 제공된다. 상기 방법은 멀티미디어 데이터의 제1 부분의 인터-코딩된 제1 버전을 수신하는 단계, 멀티미디어 데이터의 제1 부분의 인트라-코딩된 제2 버전을 수신하는 단계, 및 상기 수신된 제1 및 제2 버전들을 선택적으로 디코딩하는 단계를 포함한다.
멀티미디어 데이터 프로세서가 제공된다. 상기 프로세서는 멀티미디어 데이터의 제1 부분의 인터-코딩된 제1 버전을 수신하고, 멀티미디어 데이터의 제1 부분의 인트라-코딩된 제2 버전을 수신하고, 및 상기 수신된 제1 및 제2 버전들을 선택적으로 디코딩하는 구성부를 포함한다.
멀티미디어 데이터를 처리하는 장치가 제공된다. 상기 장치는 멀티미디어 데이터의 제1 부분의 인터-코딩된 제1 버전을 수신하고, 멀티미디어 데이터의 제1 부분의 인트라-코딩된 제2 버전을 수신하는 수신기, 및 상기 수신된 제1 및 제2 버전들을 선택적으로 디코딩하는 디코더를 포함한다.
기계 판독가능한 매체가 제공된다. 상기 기계 판독가능한 매체는 실행시에 상기 기계로 하여금 멀티미디어 데이터의 제1 부분의 인터-코딩된 제1 버전을 수신하는 명령, 멀티미디어 데이터의 제1 부분의 인트라-코딩된 제2 버전을 수신하는 명령, 및 상기 수신된 제1 및 제2 버전들을 선택적으로 디코딩하는 명령을 포함한다.
디지털 비디오 데이터를 전송하는 방법이 제공된다. 상기 방법은 복수의 디지털 비디오 채널들 각각에 대해 인터-코딩된 디지털 비디오 프레임들을 전송하는 단계, 및 각 채널에 대해 채널 스위치 프레임들을 전송하는 단계를 포함하며, 여기서 상기 채널 스위치 프레임들 중 적어도 하나는 각 채널에 대해 인터-코딩된 프레임들 중 하나에 대응하는 인터-코딩된 디지털 비디오 데이터를 포함한다.
디지털 비디오 데이터를 수신하는 방법이 제공된다. 상기 방법은 제1 채널과 관련된 인터-코딩된 디지털 비디오 데이터를 포함하는 인터-코딩된 프레임들을 획득하는 단계, 제2 채널로의 스위칭 요청을 수신하는 단계, 상기 요청에 응답하여 상기 제2 채널에 대한 인터-코딩된 프레임들 중 하나에 대응하는 인트라-코딩된 디지털 비디오 데이터를 포함하는 채널 스위치 프레임을 획득하는 단계를 포함한다.
도1은 일 양상에 따른 멀티미디어 통신 시스템을 보여주는 블록 다이아그램이다.
도2A는 도1에 제시된 시스템에서 사용될 수 있는 인코더 장치의 일 예를 보여주는 블록 다이아그램이다.
도2B는 도1에 제시된 시스템에서 사용될 수 있는 디코더 장치의 일 예를 보여주는 블록 다이아그램이다.
도3A는 도1에 제시된 시스템에서 비디오 스트림의 일부를 인코딩하는 방법의 일 예를 보여주는 흐름도이다.
도3B는 도3A에 제시된 방법의 블록(202)의 예를 상술하는 흐름도이다.
도3C는 도3A에 제시된 방법의 블록(202)의 또 다른 예를 상술하는 흐름도이다.
도3D는 도3에 제시된 방법의 블록(202)의 또 다른 예를 상술하는 흐름도이 다.
도4는 도3A 및 3B에 제시된 방법들을 사용하여 인코딩된 비디오 스트림의 일부들을 보여주는 도이다.
도5는 도3A 및 3C에 제시된 방법들을 사용하여 인코딩된 비디오 스트림의 일부들을 보여주는 도이다.
도6은 도3A 및 3D에 제시된 방법들을 사용하여 인코딩된 비디오 스트림의 일부들을 보여주는 도이다.
도7A는 도1에 제시된 시스템에서 비디오 스트림의 일부를 디코딩하는 방법의 일 예를 보여주는 흐름도이다.
도7B는 도7A의 방법의 일부에 대한 일 예를 상술하는 흐름도이다.
도7C는 도7A의 방법의 일부에 대한 또 다른 예를 상술하는 흐름도이다.
도7D는 도7A의 방법의 일부에 대한 또 다른 예를 상술하는 흐름도이다.
도8A 및 8B는 도7에 제시된 방법들을 사용하여 디코딩된 스케일가능한 비디오 스트림의 일부들을 보여주는 도이다.
도9는 도1에 제시된 시스템에서 사용될 수 있는 인코더 장치의 또 다른 예를 보여주는 블록 다이아그램이다.
도10은 도1에 제시된 시스템에서 사용될 수 있는 디코더 장치의 또 다른 예를 보여주는 블록 다이아그램이다.
도11은 도1에 제시된 시스템에서 사용될 수 있는 인코더 장치의 또 다른 예를 보여주는 블록 다이아그램이다.
도12는 도1에 제시된 시스템에서 사용될 수 있는 디코더 장치의 또 다른 예를 보여주는 블록 다이아그램이다.
도13은 도1에 제시된 시스템에서 사용될 수 있는 디지털 비디오 데이터 전송 장치의 일 예를 보여주는 블록 다아아그램이다.
도14는 도1에 제시된 시스템에서 사용될 수 있는 디지털 비디오 데이터 수신 장치의 일 예를 보여주는 블록 다이아그램이다.
하기 설명은 본 발명의 실시예들에 관한 것이다. 그러나, 본 발명은 청구항에 제시된 바와 같이, 많은 상이한 방식으로 구현될 수 있다. 본 설명에서, 도면이 참조되며, 유사한 구성요소들에는 유사한 도면번호가 사용된다.
비디오 신호들은 일련의 픽쳐들, 프레임들, 또는 필드들의 관점에서 특성화된다. 여기서 사용되는 용어 "프레임"은 프로그레시브 비디오 신호 프레임들, 또는 인터레이스된 비디오 신호 필드들을 포함하는 광의로 해석된다.
실시예들은 멀티미디어 전송 시스템의 인코더 및 디코더에서의 프로세싱을 개선하는 시스템 및 방법을 포함한다. 멀티미디어 데이터는 하나 이상의 동영상, 오디오, 정지화상, 또는 다른 적합한 타입의 오디오-비디오 데이터를 포함한다. 실시예들은 비디오 데이터를 인코딩하는 방법 및 장치를 포함한다. 예를 들어, 일 양상은 비디오 프레임의 제1 및 제2 버전을 인코딩하는 방법을 포함하며, 여기서 상기 버전들 중 하나는 비디오 스트림의 포착 및/또는 재동기화를 인에이블한다. 특히, 일 양상에 따라 비디오 데이터의 제1 버전을 인터-코딩하고, 비디오 데이터 의 제2 버전을 인트라 코딩함으로써, 디코딩 장치로 하여금 적절한 경우 포착을 인에이블하는 상기 제2 버전을 선택적으로 디코딩할 수 있도록 하여준다. 다른 실시예들은 상기 실시예들에 따라 인코딩된 비디오 데이터를 디코딩하는 장치 및 방법을 포함한다. 예를 들어, 일 양상에 따라, 인터-코딩된 버전이 의존하는 기준 데이터가 가용하지 않는 경우, 인트라-코딩된 버전을 선택적으로 디코딩하는 것은 디코딩 장치로 하여금 비디오 스트림을 포착 및/또는 재동기화할 수 있도록 하여준다. 특히, 일 양상에 따라 사용자에 의해 인지되는 품질에 상당한 영향을 미침이 없이, 비트 레이트 효율적인 방식으로 증가된 수의 포착 프레임들을 제공함으로써 사용자 경험이 개선될 수 있다.
멀티미디어 분배 시스템
도1은 일 양상에 따른 멀티미디어 통신 시스템(100)을 보여주는 블록 다이아그램이다. 시스템(100)은 네트워크(140)를 통해 디코더 장치(150)와 통신하는 인코더 장치(110)를 포함한다. 일 예에서, 인코더 장치는 외부 소스(102)로부터 멀티미디어 신호를 수신하여, 네트워크(140)에서의 전송을 위해 그 신호를 인코딩한다.
이러한 예에서, 인코더 장치(110)는 메모리(114) 및 트랜시버(116)에 연결된 프로세서(112)를 포함한다. 프로세서(112)는 멀티미디어 데이터 소스로부터의 데이터를 인코딩하여 네트워크(140) 상에서의 통신을 위해 이를 트랜시버(116)로 제공한다.
이러한 예에서, 디코더 장치(150)는 메모리(154) 및 트랜시버(156)에 연결된 프로세서(152)를 포함한다. 프로세서(152)는 하나 이상의 범용 프로세서 및/또는 디지털 신호 프로세서를 포함한다. 메모리(154)는 하나 이상의 고체 또는 디스크 기반 저장매체를 포함한다. 트랜시버(156)는 네트워크(140) 상에서 멀티미디어 데이터를 수신하고, 이를 디코딩을 위해 프로세서(152)로 제공하도록 구현된다. 일 예에서, 트랜시버(156)는 무선 트랜시버를 포함한다. 네트워크(140)는 하나 이상의 유선 또는 무선 통신 시스템을 포함하며, 이러한 통신 시스템은 이더넷, 전화(예를 들어, POTS), 케이블, 전력라인, 및 광섬유 시스템, 및/또는 무선 시스템(CDMA, CDMA 2000, FDMA, OFDM TDMA, GSM/GPRS/EDGE, TETRA 이동 전화 시스템, WCDMA, 1xEV-DO 또는 1xEV-DO 골드 멀티캐스트, IEEE 802.11, 미디어플로, DMB, 또는 DVB-H 등)을 포함한다.
도2A는 도1에 제시된 시스템(100)에서 사용될 수 있는 인코더 장치(110)의 일 예를 보여주는 블록 다이아그램이다. 이러한 예에서, 인코더(110)는 인터-코딩 인코더 엘리먼트(118), 인트라-코딩 인코더 엘리먼트(120), 기준 데이터 생성기 엘리먼트(122) 및 전송기 엘리먼트(124)를 포함한다. 인터-코딩 인코더(118)는 다른 시간 프레임들에 위치하는 비디오 데이터의 다른 부분들을 참조하여 (예를 들어, 움직임 보상 예측을 사용하여) 시간적으로 예측되는 인터-코딩되는 비디오 부분들을 인코딩한다. 인트라-코딩 인코더(120)는 다른 시간에 위치되는 비디오 데이터를 참조하지 않고 독립적으로 디코딩될 수 있는 인트라-코딩되는 비디오 부분들을 인코딩한다. 일부 실시예들에서, 인트라-코딩 인코더(120)는 동기 시간 프레임에 위치되는 다른 비디오 데이터에서의 리던던시를 이용하기 위해서 공간 예측을 사용할 수 있다.
일 양상에서, 기준 데이터 생성기(122)는 인코더(120 및 118) 각각에 의해 생성된 인트라-코딩된 비디오 데이터 및 인터-코딩된 비디오 데이터가 위치하는 장소를 표시하는 데이터를 생성한다. 예를 들어, 기준 데이터는 프레임 내의 위치를 파악하기 위해서 디코더에 의해 사용되는 서브블록들 및/또는 매크로블록들의 식별자들을 포함한다. 기준 데이터는 또한 비디오 프레임 시퀀스 내의 프레임 위치를 파악하기 위해서 사용되는 프레임 시퀀스 번호를 포함할 수 있다.
전송기(124)는 도1의 네트워크(140) 상에서, 인터-코딩된 데이터, 인트라-코딩된 데이터, 및 일부 실시예들에서 기준 데이터를 전송한다. 이러한 데이터는 하나 이상의 통신 링크들을 통해 전송될 수 있다. 여기서 사용되는 "통신 링크"는 일반적인 의미로 사용되고, 유선 또는 무선 네트워크, 가상 채널 등을 포함하는 임의의 통신 채널을 포함한다. 일부 실시예들에서, 인트라-코딩된 데이터는 베이스 계층 통신 링크에서 전송되고, 인터-코딩된 데이터는 인헨스먼트 계층 통신 링크에서 전송된다. 일부 실시예들에서, 인트라-코딩된 데이터 및 인터-코딩된 데이터는 동일한 통신 링크에서 전송된다. 일부 실시예들에서, 인터-코딩된 데이터, 인트라-코딩된 데이터, 및 기준 데이터 중 하나 이상은 사이드밴드 통신 링크에서 전송될 수 있다. 예를 들어, H.264의 보조 인헨스먼트 정보(SEI) 메시지 또는 MPEG-2의 사용자_데이터 메시지들과 같은 사이드밴드 통신 링크가 사용될 수 있다. 일부 실시예들에서, 인트라-코딩된 데이터, 인터-코딩된 데이터, 및 기준 데이터 중 하나 이상은 가상 채널 상에서 전송된다. 가상 채널은 가상 채널에 속할 때 데이터 패킷을 식별하는 식별가능한 패킷 헤더를 포함하는 데이터 패킷을 포함한다. 주파수 분할, 시간 분할, 코드 확산 등과 같은 가상 채널을 식별하는 다른 형태들이 공지되어 있다.
일부 실시예들에서, 도2A의 인코더(110)의 엘리먼트들 중 하나 이상은 재배열 및/또는 결합될 수 있다. 이러한 엘리먼트들은 하드웨어, 소프트웨어, 펌웨어, 미들웨어, 마이크로코드 또는 이들의 조합에 의해 구현될 수 있다. 인코더(110)의 엘리먼트들에 의해 수행되는 상세 동작들은 도3을 참조하여 논의될 것이다.
도2B는 도1에 제시된 시스템(100)에서 사용될 수 있는 디코더 장치(150)의 일 예를 보여주는 블록 다이아그램이다. 이러한 실시예에서, 디코더(150)는 수신기 엘리먼트(158), 선택적인 디코더 엘리먼트(160), 기준 데이터 결정기 엘리먼트(162), 및 하나 이상의 기준 데이터 가용성 검출기(채널 스위칭 검출기 엘리먼트(164) 및 에러 검출기 엘리먼트(166))를 포함한다.
수신기(158)는 인코딩된 비디오 데이터(예를 들어, 도1 및 2A의 인코더(110)에 의해 인코딩된 데이터)를 수신한다. 수신기(158)는 도1의 네트워크(140)와 같이 유선 또는 무선 네트워크에서 인코딩된 데이터를 수신한다. 데이터는 하나 이상의 통신 링크들 상에서 수신될 수 있다. 일부 실시예들에서, 인트라-코딩된 데이터는 베이스 계층 통신 링크에서 수신되고, 인터-코딩된 데이터는 인헨스먼트 계층 통신 링크에서 수신된다. 일부 실시예들에서, 인트라-코딩된 데이터 및 인터-코딩된 데이터가 동일 통신 링크에서 수신된다. 일부 실시예들에서, 인터-코딩된 데이터, 인트라-코딩된 데이터, 및 기준 데이터 중 하나 이상은 사이드밴드 통신 링크에서 수신된다. 예를 들어, H.264의 보조 인헨스먼트 정보(SEI) 메시지 또는 MPEG-2의 사용자_데이터 메시지와 같은 사이드밴드 통신 링크가 사용될 수 있다. 일부 실시예들에서, 인트라-코딩된 데이터, 인터-코딩된 데이터, 및 기준 데이터 중 하나 이상의 가상 채널에서 수신된다. 가상 채널은 가상 채널에 속할 때 데이터 패킷을 식별하는 식별가능한 패킷 헤더를 포함하는 데이터 패킷을 포함한다. 가상 채널을 식별하는 다른 형태들이 공지되어 있다.
선택적인 디코더(160)는 수신된 인터-코딩 및 인트라-코딩된 비디오 데이터를 디코딩한다. 일부 실시예들에서, 수신된 데이터는 비디오 데이터 부분에 대한 인터-코딩된 버전 및 상기 비디오 데이터 부분에 대한 인트라-코딩된 부분을 포함한다. 인터-코딩된 데이터는 자신의 예측이 기반하고 있는 기준 데이터가 디코딩된 후에 디코딩될 수 있다. 예를 들어, 움직임 보상 예측을 사용하여 인코딩된 데이터는 움직임 벡터 및 기준 데이터 위치를 식별하는 프레임 식별자를 포함한다. 움직임 벡터에 의해 식별되는 프레임 부분 및 인터-코딩된 버전의 프레임 식별자가 가용하면(예를 들어, 이미 디코딩되면), 선택적인 디코더(160)는 인터-코딩된 버전을 디코딩한다. 만약 기준 데이터가 가용하지 않으면, 선택적인 디코더(160)는 인트라-코딩된 버전을 디코딩할 수 있다.
일 양상에서, 기준 데이터 결정기(162)는 수신된 인코딩된 비디오 데이터에서 인트라-코딩 및 인터 코딩된 비디오 데이터가 위치하는 장소를 식별하는 수신된 기준 데이터를 식별한다. 예를 들어, 기준 데이터는 프레임 내의 위치를 파악하기 위해서 선택적인 디코더(160)에 의해 사용되는 서브블록들 및/또는 매크로블록들의 식별자들을 포함한다. 기준 데이터는 또한 비디오 프레임 시퀀스 내에서 프레임 위치를 파악하기 위해서 사용되는 프레임 시퀀스 번호를 포함한다. 이러한 수신된 기준 데이터를 사용함으로써, 디코더는 인터-코딩된 데이터가 의존하고 있는 기준 데이터가 가용한지 여부를 결정할 수 있다.
기준 데이터 가용성은 멀티-채널 통신 시스템에서 채널을 스위칭하는 사용자에 의해 영향을 받을 수 있다. 예를 들어, 다수의 비디오 방송들이 수신기(158)에 제공될 수 있다. 사용자가 수신기(158)에게 다른 방송 채널로 변경하도록 명령하면, 새로운 채널에 대한 인터-코딩된 데이터에 대한 기준 데이터는 즉시 제공되지 않을 수 있다. 채널 스위칭 검출기(164)는 채널 스위치 명령이 발령되었는지를 검출하고, 선택적인 디코더(160)에 이를 시그널링한다. 그리고 나서, 선택적인 디코더(160)는 기준 데이터 결정기로부터 획득된 정보를 사용하여 인터-코딩된 버전이 가용한지 여부를 식별할 수 있고, 그리고 나서 가장 근접한 인트라-코딩된 버전을 위치를 식별하여, 식별된 인트라-코딩된 버전을 선택적으로 디코딩할 수 있다.
기준 데이터 가용성은 수신된 비디오 데이터에서의 에러들에 의해 영향을 받는다. 에러 검출기(166)는 에러 검출 기술(예를 들어, 순방향 에러 정정)을 사용하여 비트 스트림에서의 수정 불가능한 에러들을 식별할 수 있다. 인터-코딩된 버전이 의존하는 기준 데이터에 수정 불가능한 에러가 존재하면, 에러 검출기(166)는 선택적인 디코더(160)에 시그널링하여 어떤 비디오 데이터가 에러들에 의해 영향을 받는지를 식별한다. 그리고 나서, 선택적인 디코더(160)는 인터-코딩된 버전을 디 코딩할지(예를 들어, 기준 데이터가 가용한 경우), 또는 인트라-코딩된 버전을 디코딩할지(예를 들어, 기준 데이터가 가용하지 않은 경우)를 결정할 수 있다.
일부 실시예들에서, 도2B의 디코더(150)의 엘리먼트들 중 하나 이상이 재배열 및/또는 결합될 수 있다. 이러한 엘리먼트들은 하드웨어, 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 또는 이들의 조합에 의해 구현될 수 있다. 디코더(110)의 엘리먼트들에 의해 수행되는 상세 동작들은 하기 도면 7을 참조하여 논의될 것이다.
스위치 프레임 인코딩 방법
도3A는 도1DP 제시된 시스템에서 비디오 스트림 부분을 인코딩하는 예시적인 방법을 보여주는 흐름도이다. 이러한 예에서, 상기 방법은 멀티미디어 데이터 부분의 다수의 버전들을 생성하고, 여기서 이러한 버전들 중 하나는 멀티미디어 데이터 부분의 적어도 부분적인 포착 및/또는 재동기를 허용한다. 부분적인 포착을 허용하는 버전은 상술한 인트라-코딩된 데이터와 같이, 독립적으로 디코딩 가능하다. 예측 인터-코딩은 인터-코딩의 증가된 압축 효율성의 장점을 이용하기 위해서 상기 버전들 중 하나에 대해 사용될 수 있다. 일 양상에서, 도3A의 방법은 비디오 비트 스트림에서 랜덤 액세스 포인트들을 제공하는 효율적인 방법을 제공한다. 보다 빈번한 랜덤 액세스 포인트들은 채널이 개시되는 경우(예를 들어, 사용자가 수신 장치에게 채널 스위칭을 명령하는 경우) 채널의 고속 포착을 허용한다. 보다 빈번한 랜덤 액세스 포인트들은 또한 에러 또는 신뢰할 수 없는 채널 조건으로 인해 비디 오 비트 스트림의 동기화가 손실되는 경우 보도 빠른 재동기화를 허용한다.
도3A를 참조하면, 상기 방법(200)은 블록(202)에서 시작되고, 여기서 인코딩 장치는 멀티미디어 데이터 부분의 제1 및 제2 버전을 생성하고, 여기서 상기 버전들 중 하나는 적어도 부분적인 포착을 인에이블한다. 예시를 위해, 제2 버전이 부분적인 포착을 인에이블하는 것으로 가정한다. 이러한 예에서, 부분적인 포착은 다른 멀티미디어 데이터를 참조하지 않고, (예를 들면, 인트라-코딩된 프레임 또는 인트라-코딩된 블록들에 의해) 프레임 부분의 제2 버전을 독립적으로 디코딩할 수있는 것을 지칭한다. 제2 버전이 나타내는 프레임 부분이 전체 프레임이면, 프레임의 전체 포착이 가능할 것이다. 부분적인 포착은 다른 이전에 디코딩 또는 디코딩될 멀티미디어를 참조하지 않고 프레임의 데이터 부분을 디코딩할 수 있는 것을 지칭한다. 예를 들어, 상술한 인트라-코딩은 독립적으로 디코딩 가능하며, 따라서 포착을 인에이블한다. 멀티미디어 데이터 부분은 전체 프레임 또는 프레임의 필드일 수 있다. 일 실시예에서, 도1 및/또는 2A의 인코딩 장치(110)는 블록(202)에서 제1 및 제2 버전들을 생성한다.
상기 방법(200)은 선택적인 블록(204)에서 계속되고, 여기서 인코딩 장치는 제1 및 제2 버전들에 관련된 정보를 생성한다. 일 양상에서, 생성된 정보는 리던던트한 멀티미디어 데이터의 제2 버전이 가용함을 표시하는 데이터, 및 제1 및 제2 버전들에 의해 표현되는 멀티미디어 데이터의 부분들이 위치하는 장소를 표시하는 데이터를 포함한다. 예를 들어, 기준 데이터는 프레임 내의 위치를 파악하기 위해서 디코더에 의해 사용되는 서브블록들 및/또는 매크로블록들의 식별자들을 포함할 수 있다. 기준 데이터는 또한 비디오 프레임 시퀀스 내의 위치를 파악하는데 사용되는 프레임 번호를 포함할 수 있다. 일 예에서, 도2A의 기준 데이터 생성기(122)는 블록(204)에서 이러한 정보를 생성한다. 일부 실시예들에서, 선택적인 블록(204)의 동작들이 생략될 수 있다. 예를 들어, 미리 결정된 프레임 번호 또는 미리 결정된 매크로블록들 또는 서브블록들의 시퀀스가 주기적으로 생성되고, 이로 인해 디코더 장치는 제1 및 제2 버전들이 비트 스트림의 특정 시점에서 특정 프레임 부분에 대해 수신될 것임을 미리 인지하게 된다.
선택적인 블록(206)으로 이동하여, 인코딩 장치는 제1 및 제2 버전들을 전송하고, 선택적으로 블록(204)에서 생성된 기준 데이터 정보를 전송한다. 이러한 데이터는 하나 이상의 통신 링크들에서 전송될 수 있다. 일부 실시예들에서, 인코딩된 데이터의 제2 버전(본 예에서 포착을 인에이블하는 버전)은 베이스 계층 통신 링크에서 전송되고, 인코딩된 데이터의 제1 버전은 인헨스먼트 계층 통신 링크에서 전송된다. 일부 실시예들에서, 제1 및 제2 버전들은 동일한 통신 링크에서 전송된다. 일부 실시예들에서, 제1 버전, 제2 버전, 및 기준 데이터 중 하나 이상이 사이드밴드 통신 링크에서 전송될 수 있다. 일부 실시예들에서, 제1 버전, 제2 버전, 및 기준 데이터 중 하나 이상이 가상 채널에서 전송된다. 가상 채널은 가상 채널에 속할 때 데이터 패킷을 식별하는 식별가능한 패킷 헤더를 포함하는 데이터 패킷들을 포함한다. 가상 채널을 식별하는 다른 형태들이 공지되어 있다. 도2A의 전송기(124)는 선택적인 블록(206)에서 전송 동작들을 수행할 수 있다.
실시예에 따라, 여기서 제시된 방법들의 특정 동작 및 이벤트들은 상이한 순 서로 수행될 수 있고, 특정 동작 및 이벤트가 추가, 병합, 생략될 수 있다(예를 들어, 여기서 제시된 모든 동작 또는 이벤트가 본 발명의 실시예 적합한 것은 아니다). 또한, 일부 실시예들에서, 동작 또는 이벤트들은 예를 들어 멀티-스레디드 처리 인터럽트 처리 또는 다중 프로세서를 통해, 순차적이 아니라 동시에 수행될 수도 있다.
도3B는 도3A에 제시된 블록(202)의 일 예를 상술하는 흐름도이다. 특히, 도3A의 블록(202)은 2개의 블록들(210 및 212)을 포함하는 것으로 제시된다. 블록(210)에서, 멀티미디어의 제1 버전이 인터-코딩을 사용하여 인코더 장치에 의해 생성된다. 인터-코딩은 움직임 보상 예측일 수 있다. 도2A의 인터-코딩 인코더(118)가 블록(210)에서 인터-코딩을 수행할 수 있다. 블록(212)에서, 멀티미디어의 제2 버전이 인트라-코딩을 사용하여 인코더 장치에 의해 생성된다. 따라서, 제2 버전은 독립적으로 디코딩될 수 있고, 따라서 포착 및/또는 재동기화를 인에이블한다. 도2A의 인트라-코딩 인코더(120)가 블록(212)에서 인트라-코딩을 수행할 수 있다.
도4는 도3A 및 특히 도3B의 방법들을 사용하여 인코딩된 비디오 스트림 부분들을 보여준다. 본 예는 S1 내지 S7으로 라벨링된 소스 프레임들을 포함하는 소스 비디오 시퀀스(400)의 부분을 보여준다. 소스 시퀀스(400)는 도3B의 방법(200)을 수행하는 인코더 장치가 압축하는 멀티미디어 데이터를 나타낸다. 본 예는 또한 E1 내지 E7으로 라벨링된 인코딩된 프레임들을 포함하는 인코딩된 시퀀스(410)를 포함한다. 인코딩된 프레임들은 다양한 인터-코딩 및/또는 인트라-코딩 기술들에 의해 인코딩된 각각의 소스 프레임들의 압축된 버전들을 나타낸다. 예를 들어, 인코딩된 프레임 E1은 소스 프레임 S1의 인트라-코딩된 버전이고, 예를 들어 비디오 시퀀스의 시작 또는 장면 전환시에 발생한다. 인코딩된 시퀀스(410)의 다른 인코딩된 프레임들은 화살표(412,414,416)들에 의해 제시된 바와 같이 시퀀스(410)의 다른 프레임들로부터 예측되는 인터-코딩된 부분들을 포함한다. 예를 들어, 소스 프레임 S5를 나타내는 프레임 E5는 화살표(416)에 의해 표시된 바와 같이, 인코딩된 프레임 E3의 부분들을 표시하는 움직임 벡터들을 포함하는 P-프레임으로 표시된다. 소스 프레임 S4를 나타내는 프레임 E4는 화살표(414 및 412)들 각각에 의해 표시된 바와 같이 인코딩된 프레임들 E3 및 E5 부분들을 표시하는 움직임 벡터들을 포함하는 B-프레임으로 제시된다. 프레임은 인터-코딩 및/또는 인트라 코딩된 부분들의 일 타입보다 많은 타입을 포함할 수 있다. 예를 들어, 화살표(416)에 의해 표시되는 P-프레임으로 제시된 인코딩된 프레임 E5는 다른 프레임으로부터 예측된 인트라-코딩된 부분들 및 다수의 프레임들로부터 예측된 부분들(예를 들어, 양방향으로 예측된 부분들)을 포함할 수 있다.
인코딩된 프레임 시퀀스(410)은 인터-코딩된 부분들이 의존하는 모든 기준 프레임들이 수신되는 경우 정상적으로 디코딩될 수 있다. 네트워크를 통한 전송시에 도입되는 에러들은 인터-코딩된 부분들의 디코딩을 불가능하게 한다. 또한, 인코딩된 프레임 E1(본 예에서 인트라-코딩된 프레임)을 제외한 임의의 포인트에서의 (예를 들어, 채널 스위칭에 기인한) 시퀀스(410)의 초기 포착은 에러 상태로 디코딩된 멀티미디어 데이터를 초래할 수 있다. 예를 들어, 에러 기준 데이터로 기인 한 인코딩된 시퀀스(410)의 재동기화 및/또는 초기 포착을 인에이블하기 위해서, 소스 프레임 S3의 제2 버전(420)이 인코딩된다. 이러한 예에서, 프레임(420)은 도3B의 방법의 블록(212)에서 인코딩된 멀티미디어 데이터의 제2 버전이고, 인코딩된 프레임 E3는 블록(210)에서 인코딩된 멀티미디어 데이터의 제1 버전이다. 이러한 예에서, 프레임(420)은 전체적으로 인트라-코딩되고, 따라서 온전하게 독립적으로 디코딩될 수 있다. 디코더 장치는 인코딩된 프레임 E3에 대한 기준 프레임이 가용한지 여부를 결정하여, 가용한 경우, 프레임(420)은 폐기될 수 있다. 프레임 E3가 의존하는 기준 데이터가 손실된 경우, 프레임(420)이 인코딩된 프레임 E3 대신에 디코딩될 수 있다. 이는 에러 상태로 수신된 기준 데이터에 의해 훼손된 기존 비디오 시퀀스의 재동기화를 위해, 또는 새로운 채널의 포착을 위해 이뤄질 수 있다. 일반적으로, 본 예에서 블록(212)에서 인코딩되는 제2 버전을 나타내는 프레임(420)과 같은 프레임은 여기서 스위치 프레임으로 지칭되며, 스위치 프레임은 채널 스위칭을 제외한 목적(예를 들어, 에러 전파 중지, 재동기화 인에이블링, 또는 고속 포워드 또는 리와인드 허용)으로 사용될 수 있다.
스위치 프레임(420)이 프레임 E3 대신에 디코딩되면, 프레임 E3에 의존한 인코딩된 시퀀스(410)의 뒤이은 프레임들은 프레임(420)을 참조하여 디코딩될 수 있다. 예를 들어, 인코딩된 프레임 E5는 화살표(416)에 의해 표시된 바와 같이 프레임 E3에 의존한 P-프레임이다. 프레임 E5는 점선 화살표(422)에 의해 표시된 바와 같이 디코딩된 스위치 프레임(420)을 참조하여 디코딩될 수 있다. 유사하게, B-프레임 E4는 점선 화살표(424)에 의해 표시된 바와 같이 스위치 프레임(420)을 참조 하고, 화살표(412)에 제시된 바와 같이 인코딩된 프레임 E5를 참조함으로써 디코딩될 수 있다. 프레임 E3에 의존하는 인코딩된 시퀀스(410) 내의 프레임들을 디코딩한 후에(여기서, 이들은 스위치 프레임(420)을 참조하여 디코딩됨), 시퀀스(410) 내의 잔존 프레임들은 정상적인 방식으로 디코딩될 수 있다. 이러한 스위치 프레임은 뒤이은 프레임들이 스위치 프레임에 선행하는 임의의 프레임에 대한 참조를 포함하지 않도록 인코딩된다.
인코딩된 프레임 E3는 도4에 제시된 예를 설명하기 위해서 임의적으로 선택되었다. 비디오 시퀀스에서 스위치 프레임 위치를 선택하는 다양한 방법들이 사용될 수 있다. 이러한 방법들은 아래에서 상세히 설명된다.
도4에 제시된 예는 전체 프레임을 포함하는 것으로서, 도3B의 블록(212)에서 인코딩된 멀티미디어 데이터의 제2 버전을 설명하였다. 그러나, 상기 방법(200)은 프레임의 단지 일부만이 제1 버전 및 제2 버전으로 인코딩되는 다른 예들에서도 사용될 수 있다. 이러한 예들에서, 제2 버전은 제2 버전을 포함하는 프레임 부분의 포착을 인에이블한다. 도3C,3D, 5, 및 6에 제시된 예들은 이러한 포인트를 설명할 것이다.
도3C는 도3A에 제시된 방법의 블록(202)의 다른 예를 상술하는 흐름도이다. 특히, 도3A의 블록(202)이 2개의 블록들(214 및 216)을 포함하는 것으로 제시된다. 블록(214)에서, 멀티미디어의 제1 버전이 프레임의 제1 부분에 대한 인터-코딩 및 프레임의 제2 부분에 대한 인트라-코딩을 사용하여 인코더 장치에 의해 생성된다. 인터-코딩은 움직임 보상 예측일 수 있다. 도2A의 인터-코딩 인코더(118)가 블 록(214)에서 인터-코딩을 수행하고, 인트라-코딩 인코더(120)가 블록(214)에서 인트라-코딩을 수행할 수 있다.
블록(216)에서, 멀티미디어 데이터의 제2 버전이 상기 제1 부분에 대한 인트라-코딩을 사용하여 인코더 장치에 의해 생성된다. 따라서, 상기 프레임의 제1 부분의 제2 버전은 독립적으로 디코딩될 수 있고, 따라서 스위치 프레임의 적어도 제1부분에 대한 포착 및/또는 재동기화를 인에이블한다. 도2A의 인트라-코딩 인코더(120)는 블록(216)에서 인트라-코딩을 수행할 수 있다. 인코더 장치는 프레임의 하나 이상의 제2 부분들을 인코딩하지 않도록 선택할 수 있는데, 왜냐하면 인트라-코딩된 버전이 블록(214)에서 인코딩된 제1 버전에서 디코더에 이미 제공되기 때문이다. 그러나, 인코더는 프레임의 각 영역이 인코딩될 필요가 있는 표준에 부합하기 위해서 상기 하나 이상의 제2 부분들을 인코딩하도록 선택할 수도 있다. 일부 실시예들에서, 인코더는 가능한 최소한의 비트들을 사용하여 프레임의 제2 부분을 인코딩하도록 선택할 수 있다. 이는 가용한 대략적인 양자화 방법으로 인코딩함으로써 달성될 수 있고, 따라서 최소한의 비트들을 사용하여 인트라-코딩된 계수들을 표현한다. 당업계에 공지된 제2 부분을 인코딩하는 다른 방법들이 사용될 수 있다. 도3C의 방법을 사용하는 상세한 실시예가 이제 설명된다.
도5는 도3A 및 특히 도3C에 제시된 방법들을 사용하여 인코딩되는 비디오 스트림 부분들을 보여주는 도이다. 본 예는 S1 내지 S7으로 라벨링된 소스 프레임들을 포함하는 소스 비디오 시퀀스(500)의 부분을 보여준다. 소스 시퀀스(500)는 도3C의 방법(200)을 수행하는 인코더 장치가 압축하는 멀티미디어 데이터를 나타낸 다. 본 예는 또한 E1 내지 E7으로 라벨링된 인코딩된 프레임들을 포함하는 인코딩된 시퀀스(510)를 포함한다. 도4를 참조하여 설명한 바와 같이, 인코딩된 시퀀스(510)는 I-프레임, P-프레임, 및 B-프레임들을 포함한다. P-프레임 및 B-프레임들 화살표(512,514, 및 516)에 의해 표시된 바와 같이 시퀀스(510)의 다른 프레임들의 부분들로부터 예측된다. 이러한 예에서, 프레임 E3는 블록(214)에서 인코딩된 멀티미디어 데이터의 제1 버전을 나타낸다. 프레임 E3는 526으로 라벨링된 섹션에 의해 표시되는 프레임의 인터-코딩된 제1 부분을 포함한다. 프레임 E3는 또한 528로 라벨링된 2개의 인트라-코딩된 부분들을 포함한다.
인코딩된 프레임 시퀀스(510)는 인터-코딩된 부분들이 의존하는 모든 기준 프레임들이 수신되는 경우에 정상적으로 디코딩될 수 있다. 네트워크를 통한 전송중에 도입되는 에러들 또는 새로운 비디오 채널로의 스위칭은 인터-코딩된 부분들의 디코딩을 불가능하게 할 수 있다. 스위치 프레임(520)이 인코딩된 시퀀스(510)의 재동기화를 인에이블하기 위해서 사용된다. 스위치 프레임(520)은 도3C의 방법의 블록(216)에서 인코딩된 멀티미디어 데이터의 제2 버전이다. 이러한 예에서, 스위치 프레임(520) 독립적으로 디코딩될 수 있는 하나 이상의 인트라-코딩된 부분들(530)을 포함한다. 디코더 장치는 인코딩된 프레임 E3를 디코딩하기 위한 기준 데이터가 가용한지 여부를 결정하고, 기준 데이터가 가용하면, 프레임(520)은 폐기될 수 있다. 프레임 E3가 의존하는 기준 데이터가 손실되면, 스위치 프레임(520)의 인트라-코딩된 섹션(530)이 인코딩된 프레임 E3의 대응하는 인터-코딩된 섹션(526) 대신에 디코딩될 수 있다. 인코딩된 프레임 E3의 인트라-코딩된 부분 들(528)은 독립적으로 디코딩되어, 스위치 프레임(520)의 디코딩된 섹션(530)과 결합되어 완전한 디코딩된 프레임을 형성한다.
프레임 E3에 의존하는 인코딩된 시퀀스(410)의 인트라-코딩된 부분들(528 및 530) 결합에 의해 형성된 프레임에 뒤이은 프레임들은 결합된 부분들(528 및 530)을 참조하여 디코딩된다. 예를 들어, 인코딩된 프레임 E5는 화살표(416)에 의해 표시된 바와 같이, 프레임 E3에 의존하는 P-프레임이다. 프레임 E5는 화살표(522)에 표시된 바와 같이 디코딩된 스위치 부분(530)을 참조하고, 화살표(516)에 의해 표시된 바와 같이 디코딩된 부분들(528)을 참조함으로써 디코딩될 수 있다. 유사하게, B-프레임 E4는 화살표(524)에 표시된 바와 같이 디코딩된 스위치 부분(530)을 참조하고, 화살표(514)에 표시된 바와 같이 프레임 E3로부터 디코딩된 부분들(528)을 참조하고, 화살표(512)에 표시된 바와 같이 이미 디코딩된 프레임을 참조함으로써 디코딩될 수 있다. 프레임 E3에 의존하는 인코딩된 시퀀스(510)의 프레임들을 디코딩한 후에(여기서, 이들은 스위치 부분(530) 및/또는 인트라-코딩된 부분들(528)을 참조하여 디코딩됨), 시퀀스(510) 내의 잔존 프레임들은 정상적인 방식으로 디코딩될 수 있다. 이러한 스위치 프레임은 스위치 프레임에 선행하는 임의의 프레임에 대한 참조를 뒤이은 프레임들이 포함하지 않도록 인코딩된다.
스위치 프레임(520)은 또한 인코딩된 프레임 E3의 섹션들(528)에 대응하는 섹션들(532)을 포함한다. 이러한 섹션들(532)은 블록(216)에서 인코딩되지 않은 상태로 유지될 수 있고, 멀티미디어 데이터의 제2 버전이 생성된다. 그러나, 이는 H.26x 및MPEGx와 같은 표준들과 일치하지 않을 것이다. 일 실시예에서, 프레임 E3 의 인트라-코딩된 부분들(528)은 대략적으로 인코딩되고, 스위치 프레임의 대응하는 부분들(532)은 정교하게 인코딩될 수 있다. 이러한 방식으로, 인코딩된 프레임 E3는 보다 적은 수의 비트들로 인코딩될 수 있다. 이러한 예에서, 프레임 E3 내의 대략적으로 코딩된 부분들(528)은 정교하게 인코딩된 부분들(532)로 대체될 수 있다. 다른 예에서, 인트라-코딩된 부분들(528)은 정교하게 인코딩되고, 스위치 프레임(520)의 대응하는 부분들(532)은 대략적으로 인코딩될 수 있다. 이러한 방식으로, 스위치 프레임(520)은 보다 적은 수의 비트들로 인코딩될 수 있다. 이러한 예에서, 스위치 프레임(520)의 대략적으로 코딩된 부분들(532)은 인코딩된 프레임 E3의 정교하게 인코딩된 부분들(528)로 대체될 수 있다. 이러한 2가지 예들 모두에서, 대략적으로 코딩된 섹션들은 모든 이미지 영역을 나타내고 모든 계수 값들을 0으로 설정하기 위해서 가장 적은 수의 비트들을 사용하는 방식으로 인트라-코딩 또는 인터-코딩된다. 이는 요구되는 비트들의 수를 감소시키고, 스위치 프레임(520) 및 인코딩된 프레임 E3를 표준과 호환되도록 하여준다.
본 예의 인트라-코딩된 부분들(528)이 독립적으로 디코딩될 수 있도록 하기 위해서, 이들은 프레임 E3의 인터-코딩된 부분들(526)에 의존하지 않는 방식으로 인트라-코딩되어야 한다. 예를 들어, 일부 인트라-코딩은 이웃 화소 블록들에 의존하는 공간 예측을 사용한다. 인터-코딩된 부분(526)이 에러 또는 채널 스위칭 조건으로 인해 가용하지 않을 수 있는 다른 프레임에 의존하면, 이러한 부분들(526)은 디코딩 불가능할 수도 있고, 따라서 부분들(526)에 의존하는 인트라-코딩된 부분(528) 또한 적절하게 디코딩되지 못할 수 있다.
도3D는 도3A에 제시된 방법의 블록(202)의 또 다른 예를 상술하는 흐름도이다. 특히, 도3A의 블록(202)은 2개의 블록들(218 및 220)을 포함하는 것으로 제시된다. 블록(218)에서, 멀티미디어 데이터의 제1 버전은 제1 프레임의 제1 부분에 대한 인터-코딩을 사용하여 인코더 장치에 의해 생성된다. 인터-코딩은 움직임 보상 예측일 수 있다. 도2A의 인터-코딩 인코더(118)는 블록(218)에서 인터-코딩을 수행할 수 있다. 제1 프레임의 하나 이상의 제2 부분들은 인터-코딩 및/또는 인트라-코딩에 의해 인코딩될 수 있지만, 제1 프레임의 제2 부분들에 대한 인코딩 타입은 본 예에서 중요하지 않다. 또한 블록(218)에서, 하나 이상의 제2 부분들은 비디오 프레임 시퀀스의 하나 이상의 뒤이은 프레임들에서 인트라-인코딩된다. 인트라-코딩 인코더(120)는 블록(218)에서 인트라-코딩을 수행할 수 있다.
블록(220)에서, 멀티미디어 데이터의 제2 버전은 스위치 프레임의 제1 부분에 대한 인트라-코딩을 사용하여 인코더 장치에 의해 생성된다. 스위치 프레임의 제1 부분의 제2 버전은 독립적으로 디코딩될 수 있고, 이를 통해 적어도 제1 부분에 대한 포착 및/또는 재동기화를 인에이블한다. 도2A의 인트라-코딩 인코더(120)는 블록(220)에서 인트라-코딩을 수행할 수 있다. 인코더 장치는 스위치 프레임의 하나 이상의 제2 부분들을 인코딩하지 않도록 선택할 수 있는데, 왜냐하면 인트라-코딩된 버전들이 블록(214)에서 인코딩된 제1 버전의 뒤이은 프레임들에서 디코더로 제공되기 때문이다. 그러나, 인코더는 프레임의 각 영역이 인코딩될 필요가 있는 표준과의 호환성을 유지하기 위해서 하나 이상의 제2 부분들을 인코딩하도록 선택할 수도 있다. 일부 실시예들에서, 인코더는 가능한 적은 수의 비트들을 사용하 여 스위치 프레임의 하나 이상의 제2 부분들을 인코딩하려고 선택한다. 이는 가용한 대략적인 양자화 방법으로 인코딩함으로써 달성되고, 따라서 최소 비트들을 사용하여 인트라-코딩된 계수들을 나타낸다. 당업계에 공지된 제2 부분 인코딩을 위한 다른 방법이 사용될 수 있다. 도3D의 방법을 사용하는 상세한 예가 이제 설명된다.
도6은 도3A 및 특히 도3D에 제시된 방법을 사용하여 인코딩된 비디오 스트림의 부분들을 보여주는 도이다. 본 예는 S1 내지 S7으로 라벨링된 소스 프레임들을 포함하는 소스 비디오 시퀀스(600)의 일부를 보여준다. 소스 시퀀스(600)는 도3D의 방법을 수행하는 인코더 장치가 압축하는 멀티미디어 데이터를 나타낸다. 본 예는 또한 E1 내지 E7으로 라벨링된 인코딩된 프레임들을 포함하는 인코딩된 시퀀스(610)를 포함한다. 도4를 참조하여 논의된 바와 같이, 인코딩된 시퀀스(610)는 I-프레임, P-프레임, 및 B-프레임을 포함한다. P-프레임 및 B-프레임들은 화살표(612,614,616)에 의해 표시된 바와 같이 시퀀스(610)의 다른 프레임들 부분들로부터 예측된다. 이러한 예에서, 프레임 E3는 블록(218)에서 인코딩된 멀티미디어 데이터의 제1 버전을 나타낸다. 프레임 E3는 626으로 라벨링된 섹션에 의해 표시되는, 블록(218)에서 인코딩된 제1 버전의 인터-코딩된 제1 부분을 포함한다. 프레임 E3는 또한 2개의 제2 부분들(628A 및 629A)을 포함한다. 본 예에서, 제2 부분들(628A 및 629A)은 인터-코딩된다.
인코딩된 프레임 시퀀스(610)는 또한 본 예에서 각각 인트라-코딩된 부분들(628B 및 629B)을 포함하는, 프레임들 E5 및 E6를 포함한다. 인트라-코딩된 부 분들(628B 및 629B)은 블록(218)에서 인트라-코딩된 제2 부분들을 나타낸다. 부분들(628B 및 629B)은 프레임의 부분들(628A 및 629A)을 갖는 각 프레임들의 대응하는 영역에 동일-위치된다.
인코딩된 프레임 시퀀스(610)는 인터-코딩된 부분들이 의존하는 모든 기준 프레임들이 수신되는 경우 정상적으로 디코딩될 수 있다. 네트워크를 통한 전송시에 도입되는 에러들 또는 새로운 비디오 채널로의 스위칭은 인터-코딩된 부분들의 디코딩을 불가능하게 할 수 있다. 스위치 프레임(620)이 인코딩된 시퀀스(610)의 재동기화를 인에이블하기 위해서 사용될 수 있다. 스위치 프레임(620)은 도3D의 방법 블록(220)에서 인코딩되는 멀티미디어 데이터의 제2 버전을 포함한다. 이러한 예에서, 스위치 프레임(620)의 제1 버전은 독립적으로 디코딩될 수 있는 하나 이상의 인트라-코딩된 부분들(630)을 포함한다. 이러한 부분(630)은 프레임 E3의 인터-코딩된 부분(626)을 갖는 프레임 영역들과 동일 위치된다. 디코더 장치는 기준 데이터가 인코딩된 프레임 E3를 디코딩하기 위해 가용한지 여부를 결정하고, 기준 데이터가 가용하면, 프레임(620)은 폐기될 수 있다. 프레임 E3가 의존하는 기준 데이터가 손실되면, 스위치 프레임(620)의 인트라-코딩된 섹션(630)이 인코딩된 프레임 E3의 대응하는 인터-코딩된 섹션(626) 대신에 디코딩될 수 있다. 인코딩된 프레임 E3의 인터-코딩된 부분들(628A 및 629A)은 이들이 의존하는 기준 데이터가 디코더 장치로 제공되지 않는 경우에는 디코딩될 수 없다. 이러한 상황에서, 부분들(628A 및 629A)에 대응하는 프레임 영역들에 대한 디코딩은 지연되거나, 독립적으로 디코딩되고 스위치 프레임(620)의 디코딩된 섹션(630)과 결합될 수 있는 프레 임들 E5 및 E6의 후에 수신된 인트라-코딩된 영역들(628B 및 629B)로 숨겨져서(또는 대체되어) 완전한 디코딩된 프레임을 형성한다. 다른 예에서, 스위치 프레임(620)의 인코딩된 부분들(632)은 스위치 프레임(620)의 인트라-코딩된 부분(630)으로 디코딩 및 디스플레이될 수 있다.
프레임 E3 및 스위치 프레임(620)에 뒤이은 프레임의 인터-코딩된 부분들은 섹션(630 및 632)을 참조하여 디코딩될 수 있다. 섹션(632)을 참조하는 인터-코딩된 부분들은 약간의 에러를 야기할 수 있는데, 왜냐하면 섹션(632)이 대체한 섹션들(628A 및 629A)과 동일한 이미지 품질을 섹션(632)이 가지지 않을 수도 있기 때문이다. 그러나, 열화된 이미지들은 짧은 시간 동안 디스플레이되어, 최대 3 프레임까지만 지속된다. 프레임 레이트가 초당 30 프레임이라면, 3 프레임은 단지 0.1초에 해당한다. 프레임 E3에 의존하는 인코딩된 시퀀스(610)의 프레임들을 디코딩한 후에(이들은 본 예에서 스위치 프레임(620)의 참조하여 디코딩됨), 시퀀스(610)의 잔존 프레임들은 정상적인 방식으로 디코딩될 수 있다. 채널 스위칭 조건이 발생하고 스위치 프레임(620)이 디스플레이될 제1 프레임인 경우에, 이러한 프레임의 디스플레이는 모든 코딩된 섹션들(630,628B 및 629B)이 제공될 때까지 지연될 수 있다. 이러한 상황에서, 프레임들 E4 및 E5의 인터-코딩된 섹션들은 스위치 프레임(620)을 참조하여 디코딩될 수 있고, 그리고 나서 인코딩된 시퀀스(610)의 다른 프레임들에 대한 기준 데이터로서 사용될 수 있다. 첫 번째 획득된 프레임의 디스플레이는 프레임 E6가 디코딩될 때까지 지연될 수 있다.
도5의 섹션(532)을 참조하여 논의한 바와 같이, 섹션(632)은 멀티미디어 데 이터의 제2 버전이 생성되는 블록(220)에서 인코딩되지 않은 상태로 유지될 수 있다. 그러나, 이는 H.26x 및 MPEGx와 같은 표준들과 일치하지 않을 것이다. 일 예에서, 부분들(628A 및 629A)은 대략적으로 인코딩될 수 있고, 스위치 프레임(520)의 동일 위치된 부분들(632)은 정교하게 인코딩될 수 있다. 이러한 방식으로, 인코딩된 프레임 E3는 보다 적은 수의 비트들로 인코딩될 수 있다. 이러한 예에서, 프레임 E3의 대략적으로 인코딩된 부분들(628A 및 629A)은 정교하게 인코딩된 부분들(632)로 대체될 수 있다. 다른 예에서, 인트라-코딩된 부분들(628B 및 629B)은 정교하게 인코딩되고, 스위치 프레임(620)의 동일 위치된 부분들(632)은 대략적으로 인코딩될 수 있다. 이러한 방식으로, 스위치 프레임(620)은 보다 적은 수의 비트들로 인코딩될 수 있다. 이러한 예에서, 스위치 프레임(620)의 대략적으로 코딩된 부분들(632)은 각각 인코딩된 프레임들 E5 및 E6의 정교하게 인코딩된 부분들(628B 및 629B)로 대체될 수 있다. 이러한 2가지 예들에서, 대략적으로 코딩된 섹션들은 모든 이미지 데이터를 나타내고 모든 계수 값들을 0으로 설정하기 위해서 가장 적은 수의 비트들을 사용하는 방식으로 인트라-코딩 또는 인터-코딩될 수 있다. 이는 요구되는 비트들의 수를 감소시키고, 스위치 프레임(620) 및 인코딩된 프레임 E3 모두가 표준에 부합하도록 하여준다. 스위치 프레임(620)에서 인터-코딩된 부분들(632)을 사용하는 경우에, 공간 에러 은닉의 일부 형태가 디코더 장치에 의해 사용되어 기준 데이터 없이 이러한 인터-코딩된 부분들이 디코딩될 수 없는 경우에 인터-코딩된 부분들을 커버할 수 있다. 스위치 프레임(620)의 낮은 품질 영역들을 참조하는 프레임 E5에서 인터-코딩된 부분들로 인해 도입되는 에러들 의 전파를 방지하기 위해서, 예를 들어 이러한 예의 인트라-코딩된 부분들(628B 및 629B)은 그들 각각의 프레임의 E5 및 E6의 인터-코딩된 부분들에 의존하지 않는 방식으로 인트라-코딩될 수 있다.
도3A,3B,3C, 및 3D의 인코딩 방법들은 에러 전파를 중단시키고 효율적인 채널 스위칭을 인에이블하기 위해 사용될 수 있는 채널 스위치 프레임을 인코딩하기 위한 예시적인 방법들이다. 채널 스위치 프레임들의 빈번한 발생은 에러 전파를 중단시키고, 신속한 채널 스위칭 또는 포착을 인에이블하는데 바람직하다. 2초 이하의 채널 스위치 지연은 전체 사용자 경험을 개선함이 알려진다.
일 실시예에서, 채널 스위치 프레임은 매 초마다 적어도 한번 인코딩되고, 수퍼 프레임으로 언급되는 한 그룹의 프레임들과 관련되며, 여기서 수퍼 프레임은 1초 동안 지속된다. 프레임 레이트가 초당 30 프레임이면, 수퍼 프레임은 30 프레임들을 포함하게 된다. 그러나, 수퍼 프레임은 또한 임의의 수의 프레임들 및 임의의 시간 길이를 가질 수 있다. 예를 들어, 수퍼 프레임은 N개의 프레임들을 포함할 수 있고, 여기서 N은 대략 1 내지 100, 또는 그 이상의 범위 내의 정수이다. 일 양상에서, 스위치 프레임은 수퍼 프레임의 시작부에 위치한다. 다른 양상에서, 수퍼 프레임 내의 하나의 프레임이 인터-코딩될 것이라고 인코더가 결정하면(예를 들어, 장면 전환시에), 이러한 프레임은 스위치 프레임으로 지정될 수 있다. 인코더는 수퍼 프레임이 단지 하나의 스위치 프레임을 가지도록 제한할 수 있거나, 또는 다수의 스위치 프레임들이 하나의 수퍼 프레임에서 인코딩될 수 있다. 스위치 프레임이 에러 전파를 중단시키기 위해서, 스위치 프레임은 IDR(순시 디코딩 리프 레쉬) 픽쳐로 인코딩될 수 있고, 여기서 시퀀스 내의 뒤이은 프레임들은 이러한 시퀀스의 스위치 프레임 전의 프레임들을 참조하지 않는다. 따라서, 스위치 프레임 후의 프레임들은 스위치 프레임 앞의 프레임들과는 독립적으로 디코딩될 수 있다.
다른 예에서, 수퍼 프레임 내에 I-프레임이 요구되지 않는다고 인코더가 결정하는 경우, 추가 또는 리던던트 프레임이 스위치 프레임으로 인코딩될 수 있다. 이러한 리던던트 스위치 프레임은 수퍼 프레임의 제1 프레임일 수 있다. 일부 예들에서, 스위치 프레임은 프레임들 시퀀스 내의 일 장소에 위치될 수 있고, 여기서 P-프레임 또는 B-프레임은 인트라-코딩된 부분들의 가장 큰 비율을 포함한다(예를 들어, 도3C 및 3D에 제시된 방법들을 사용함).
다른 예에서, 스위치 프레임은 수퍼 프레임의 제1 P-프레임과 동일 위치된다. 일 양상에서, 수퍼 프레임의 제1 인터-코딩된 P-프레임 및/또는 B-프레임은 다른 수퍼 프레임의 프레임을 참조하여 코딩될 수 있고, 수퍼 프레임 내의 다른 모든 인터-코딩된 프레임들은 다른 수퍼 프레임들의 데이터를 참조하지 않고 인코딩된다. 이러한 방법은 채널 스위치가 실제로 존재하는지 여부 및/또는 이전 수퍼 프레임에 에러들이 존재하는지 여부에 무관하게 비디오 시퀀스 디코딩에서 높은 동작 효율을 제공한다. 채널 스위치 이벤트가 존재하지 않거나 및/또는 에러가 검출되지 않는 경우, 인터-코딩된 제1 버전만을 디코딩 및 디스플레이하고, 스위치 프레임을 폐기하는 것이 종종 바람직하다. 인트라-코딩된 프레임을 매 초마다 디스플레이하는 것은 디스플레이된 비디오에서 진동 효과를 초래할 수 있다. 이러한 인코딩 및 관련 디코딩 방법에 대한 상세한 내용은 도8을 참조하여 설명되며, 이들 은 베이스 및 인헨스먼트 계층들에서의 스케일가능한 코딩의 예와 관련된다. 상술한 인코딩된 스위치 프레임과 관련된 디코딩은 이제 논의된다.
스위치 프레임 디코딩 방법
도7A는 도1에 제시된 시스템에서 비디오 스트림 부분을 디코딩하는 예시적인 방법(300)을 보여주는 흐름도이다. 도1 및 2B의 디코더 장치(150)와 같은 디코더 장치는 이러한 방법의 일부 또는 전부를 수행할 수 있다. 블록(302)에서, 디코더 장치는 멀티미디어 데이터의 제1 부분의 제1 버전을 수신한다. 이러한 예에서, 제1 버전은 도2A의 인코더 장치(110)의 인터-코딩 인코더 엘리먼트(118)에 의해 생성된 인터-코딩된 버전이다. 인터-코딩된 제1 버전은 다수의 매크로블록들 및/또는 서브블록들과 같은 부분 프레임 또는 멀티미디어 데이터의 전체 프레임을 포함할 수 있다.
블록(304)으로 진행하여, 디코더 장치는 멀티미디어 데이터의 제1 부분의 제2 버전을 수신한다. 이러한 예에서, 제2 버전은 도2A에 제시된 인트라-코딩 인코더 엘리먼트(120)에 의해 생성된 멀티미디어 데이터의 제1 부분의 인트라-코딩된 버전이다. 제2 버전은 다수의 매크로블록들 및/또는 서브블록들과 같이, 부분 프레임 또는 멀티미디어 데이터의 전체 프레임을 포함할 수 있다. 제2 버전은 도3A,3B,3C 및 3D에 제시된 방법에 의해 인코딩된 스위치 프레임이다. 도2B에 제시된 디코더 장치(150)의 수신기 엘리먼트(158)는 블록들(302 및 304)의 수신 동작들을 수행할 수 있다.
멀티미디어 데이터의 제1 부분의 제1 인터-코딩된 버전 및 제2 인트라-코딩된 버전을 수신한 후에, 디코더 장치는 블록(306)에서 상기 제1 및/또는 제2 버전을 선택적으로 디코딩한다. 정상적인 디코딩 모드에서, 디코더 장치는 블록(302)에서 수신된 제1 인터-코딩된 버전을 성공적으로 디코딩할 수 있다. 이러한 경우, 블록(304)에서 수신된 제2 버전은 폐기될 수 있다. 그러나, 일부 상황들에서, (예를 들어, 사용자 채널 스위치 요청 후에) 디코더는 인터-코딩된 데이터의 제1 버전의 일부 또는 전부를 디코딩할 수 없을 수도 있고, 디코더 장치는 인트라-코딩된 멀티미디어 데이터의 제2 버전의 일부 또는 전부를 선택적으로 디코딩할 수 있다. 도2B의 선택적인 디코더 엘리먼트(160)가 블록(306)의 디코딩 동작들을 수행하기 위해서 사용될 수 있다.
도7B는 도7A에 제시되 방법의 일부에 대한 예를 상술하는 흐름도이다. 구체적으로, 블록(306)의 선택적이 디코딩 동작이 제시된다. 디코더 장치는 결정 블록(308)에서 제1 인터-코딩된 버전이 의존하는 기준 데이터가 가용한지 여부를 결정한다. 기준 데이터가 가용하면, 상기 방법은 블록(310)으로 진행하고, 디코더 장치는 멀티미디어 데이터의 제1 인터-코딩된 버전을 디코딩한다. 디코더 장치는 인터-코딩된 제1 버전이 성공적으로 디코딩되는 경우 인트라-코딩된 데이터의 제2 버전을 폐기할 수 있다. 예를 들어 사용자가 채널 스위칭을 요청하는 경우처럼 기준 데이터가 가용하지 않으면, 상기 방법은 블록(312)으로 진행하고, 디코더 장치는 제2 인트라-코딩된 버전을 디코딩한다.
일 양상에서, 디코더 장치는 채널 스위치 모드에서 동작할 수 있고, 여기서 디코더 장치는 수신되는 비디오 스트림의 초기 포착을 수행한다. 이러한 모드에서, 디코더 장치는 블록(312)에서 멀티미디어 데이터의 제1 부분의 제2 버전을 선택적으로 디코딩할 수 있다. 제2 버전은 인트라-코딩된 데이터이기 때문에, 디코더 장치는 다른 프레임들로부터의 기준 데이터를 참조하지 않고 제2 버전을 디코딩할 수 있다. 인터-코딩된 데이터의 제1 버전은 이러한 채널 스위치 조건하에서 디코딩될 수 없는데, 왜냐하면 제1 버전은 디코딩에 가용하지 않는 기준 멀티미디어 데이터에 의존하기 때문이다. 도2B의 디코더 장치(150)의 채널 스위칭 검출기(164)는 채널 스위치 명령을 검출할 수 있고, 따라서 디코더로 하여금 다음 스위치 프레임을 탐색하도록 한다.
다른 양상에서, 디코더 장치는 도2B에 제시된 에러 검출기(166)를 사용하여 기준 데이터에서의 에러들을 검출할 수 있다. 에러 검출기(166)는 하나 이상의 다양한 에러 검출 및/또는 수정 방식들을 수행하도록 구현된다. 인코딩된 데이터는 에러 복원을 제공하기 위해서 다양한 방식들을 포함할 수 있다. 무선 및/또는 유선 네트워크와 같은 에러에 취약한 채널들은 디코더에 의해 수신되는 비트 스트림 내에 에러들을 도입할 수 있다. 이러한 에러 복원 방법들은 하나 이상의 에러 제어 코딩 방식, 인터리빙 방식 및 공지된 다른 방식들을 포함한다. 에러 검출기(166)는 에러들의 검출 및 수정을 인에이블하는 대응하는 에러 디코딩 컴포넌트들을 포함한다. 네트워크상에서 도입되는 일부 에러들은 에러 검출기(166)에 의해 수정 불가능할 수도 있다. 수정 불가능한 에러들에 대해서, 디코더 장치는 인터-코딩된 멀티미디어 데이터가 에러 데이터에 의존하는지 여부를 결정하고 결정 블 록(308)에서 기준 데이터가 가용하지 않는다고 결정한다. 그리고 나서, 디코더 장치는 에러 데이터에 의해 야기되는 에러 전파를 중지시키기 위해서 멀티미디어 데이터의 다음 인트라-코딩된 버전을 탐색한다.
결정 블록(308)에서 기준 데이터가 프레임 레벨, 슬라이스 레벨, 매크로블록 레벨 및/또는 서브블록 레벨에서 가용한지 여부를 디코더 장치가 결정한다. 예를 들어, 디코더 장치는 전체 프레임에 대해 모든 기준 데이터가 가용한지 여부를 결정할 수 있고, 기준 데이터의 모두가 가용하지 않는 경우 제2 버전을 디코딩하도록 결정할 수 있다. 유사한 디코딩 결정이 개별 슬라이스들(하나 이상의 매크로블록들의 그룹들), 개별 매크로블록들, 및/또는 개별 서브블록들에 대해 이뤄질 수 있다. 도2B의 디코더 장치(150)의 기준 데이터 결정기 엘리먼트(162)가 결정 블록(308)에서 이러한 동작들을 수행할 수 있다.
도7C는 도7A에 제시된 방법(300)의 일부에 대한 또 다른 예를 상술하는 흐름도이다. 도7C에 제시된 예시적인 방법(300)은 도3D 및 도6에 제시된 방법에 따라 인코딩된 비디오 데이터의 일부를 디코딩하는데 사용될 수 있다. 도6 및 도7C를 참조하면, 상기 방법(300)은 블록(302)에서 시작하고, 여기서 디코더 장치는 인코딩된 프레임 E3의 섹션(626)과 같은 멀티미디어 데이터의 제1 프레임의 제1 부분의 제1 인터-코딩된 버전을 수신한다. 이러한 예에서, 섹션(626)은 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치된다. 그러나, 이는 선택적인 특징이며 프레임은 수퍼 프레임의 임의의 부분에 존재할 수 있고, 비디오 시퀀스의 임의의 위치에 존재할 수 있다. 블록(304)으로 진행하여, 디코더 장치는 도6에 제시된 스위 치 프레임(620)의 섹션(630)과 같은, 제1 프레임의 제1 부분의 제2 인트라-코딩된 버전을 수신한다. 일 양상에서, 제1 프레임의 제1 부분은 스위치 프레임(620)의 섹션(632) 및 인코딩된 프레임 E3의 섹션들(628A,628B)와 같은, 제1 프레임의 하나 이상의 제2 부분들을 배제한다. 도6에서 논의한 바와 같이, 이러한 제2 부분들은 인코딩된 프레임 E3에서 인트라-코딩 또는 인터-코딩되고 스위치 프레임(620)에서 인트라-코딩된다.
블록(314)에서 계속하여, 디코더 장치는 프레임들 E5 및 E6 각각의 부분들 628B 및 629B와 같이, 수퍼 프레임의 하나 이상의 다른 프레임들에서의 하나 이상의 제2 부분들의 인트라-코딩된 버전들을 수신한다. 이러한 인트라-코딩된 부분들은 상술한 바와 같이, 이들이 위치하는 프레임들의 인터-코딩된 부분들에 의존하지 않도록 인코딩된다. 독립적으로 디코딩 가능한 제2 인트라-코딩된 부분들은 에러 전파를 제한하고, 초기 포착을 제공하며, 인코딩된 비디오 시퀀스(610)의 재포착을 제공한다. 도2B에 제시된 수신기 엘리먼트(158)는 블록들(302,304,306)의 수신 동작들을 수행할 수 있다.
제1 부분의 제1 및 제2 버전들 그리고 제2 부분들의 인트라-코딩된 버전들을 수신한 후에, 처리(300)는 선택적인 디코딩 블록(306)에서 계속된다. 도7C에 제시된 예시적인 방법(300)에서, 선택적인 디코딩 블록(306)은 결정 블록(308) 및 디코딩 블록(310 및 316)을 포함한다. 결정 블록(308)은 도7B와 동일한 방식으로 기능한다. 제1 부분의 인터-코딩된 제1 버전이 의존하는 기준 데이터가 가용하면, 인터-코딩된 제1 부분(626)이 블록(310)에서 디코딩된다. 에러 및/또는 인코딩된 프 레임 시퀀스의 초기 포착으로 인해, 기준 데이터의 일부 또는 전부가 가용하지 않으면, 디코더 장치는 제1 부분의 제2 인트라-코딩된 버전(도6의 섹션(630))을 디코딩하고, 프레임들 E5 및 E6 각각의 인트라-코딩된 부분들(628B 및 629B)을 디코딩한다. 일 양상에서, 디코더는 또한 스위치 프레임(620)의 부분들(632)을 수신하고, 이러한 부분들을 디코딩한다. 스위치 프레임(620)의 인트라-코딩된 부분(630) 및 프레임들 E5 및 E6의 인트라-코딩된 부분들(628B 및 629B)은 결합되어 전체 프레임의 완전한 인트라-코딩된 이미지를 형성한다. 인코딩된 프레임 E3에 의존하는 인코딩된 시퀀스(610)의 다른 프레임들의 다른 부분들은 논의된 바와 같이 스위치 프레임(620)의 디코딩된 부분들을 참조하여 디코딩된다(도6에서 프레임 E4 및 도5 그리고 예측 화살표 622 및 624 참조). 따라서, 전체 프레임은 본 예에서 스위치 프레임(620) 및/또는 프레임들 E5 및 E6 에서 적어도 한 번 인트라-코딩된다. 이는 인코딩된 시퀀스(610)의 포착을 인에이블하고, 에러 전파를 제한한다. 도2B의 기준 데이터 결정기 엘리먼트(162)는 기준 데이터가 결정 블록(308)에서 가용한지 여부를 결정할 수 있다. 선택적인 디코더 엘리먼트(160)는 블록들(310 및 316)에서 디코딩 동작들을 수행할 수 있다.
도7D는 도7A에 제시된 방법(300)의 일부에 대한 일 예를 상술하는 흐름도이다. 도7D에 제시된 방법(300)은 도3C 및 도5에 제시된 대로 인코딩된 비디오 데이터의 일부를 디코딩하는데 사용될 수 있다. 도5 및 7D를 참조하면, 상기 방법(300)은 블록(302)에서 시작하며, 여기서 디코더 장치는 수퍼 프레임의 제1 프레임 E3의 제1 버전을 수신한다. 제1 프레임 E3의 제1 버전은 인터-코딩된 제1 부 분(526) 및 하나 이상의 인트라-코딩된 제2 부분들(528)을 포함한다. 이러한 예에서, 섹션(526) 및 섹션들(528)은 멀티미디어 데이터의 수퍼프레임의 제1 프레임에 존재한다. 그러나, 이는 선택적인 특징이며 프레임은 수퍼 프레임의 임의의 부분, 또는 비디오 시퀀스의 임의의 위치에 존재할 수 있다. 블록(304)으로 진행하여, 디코더 장치는 도5에 제시된 수퍼 프레임(520)의 섹션(530)과 같은, 제1 프레임의 제1 부분의 제2 인트라-코딩된 버전을 수신한다. 일 양상에서, 제1 프레임의 제1 부분의 제2 버전은 인코딩된 프레임 E5 및 E6의 섹션들(628B,629B) 및 스위치 프레임(620)의 섹션들과 같은, 다른 프레임들에서 인트라-코딩된 하나 이상의 제2 부분들을 배제한다. 도6에서 논의한 바와 같이, 이러한 제2 부분들은 또한 스위치 프레임(620)에서 인트라-코딩될 수 있다.
제1 부분의 제1 및 제2 버전들 및 제2 부분들의 인트라-코딩된 버전을 수신한 후에, 처리(300)는 선택적인 디코딩 블록(306)으로 계속된다. 도7D에 제시된 바와 같이, 이러한 방법(300)에서, 선택적인 디코딩 블록(306)은 결정 블록(308), 및 디코딩 블록(310 및 318)을 포함한다. 결정 블록(308)은 은 도7B 및 7C에서 수행된 것과 동일한 방식으로 기능한다. 제1 부분의 인터-코딩된 제1 버전이 의존하는 기준 데이터가 가용하면, 인터-코딩된 제1 부분(526)이 블록(310)에서 디코딩된다. 에러 및/또는 인코딩된 프레임 시퀀스(510)의 초기 포착으로 인해 기준 데이터의 일부 또는 전부가 가용하지 않으면, 디코더 장치는 제1 부분의 제2 인트라-코딩된 버전(도5의 섹션 530 참조)을 디코딩하고, 프레임 E3의 인트라-코딩된 제2 부분들(528)을 디코딩한다. 일 양상에서, 디코더는 또한 스위치 프레임(520)의 부분 들(532)을 수신하고, 이러한 부분들을 디코딩하거나 또는 이들을 폐기한다. 일 예에서, 스위치 프레임(520)의 섹션들(532)은 최소수의 비트들로 인코딩되어 논의된 표준과의 호환성을 유지한다. 스위치 프레임(520)의 인트라-코딩된 부분(530) 및 프레임 E3의 인트라 코딩된 부분들(528)은 결합되어 전체 프레임의 완전한 인트라-코딩된 이미지를 형성한다. 인코딩된 프레임 E3에 의존하는 인코딩된 시퀀스(510)의 다른 프레임들의 다른 부분들은 스위치 프레임(520)의 디코딩된 부분들(530) (그리고 가능하게는 부분들(532) 디코딩된 경우에는 부분들(532)) 및 프레임 E3의 디코딩된 부분들(528)을 참조하여 디코딩된다(도6의 프레임들 E4 및 E5, 그리고 예측 화살표 522,524,514, 및 516 참조). 따라서, 전체 프레임은 본 예에서 스위치 프레임(620) 및/또는 프레임 E3에서 적어도 한 번 인트라-코딩된다. 이는 인코딩된 시퀀스(510)의 포착을 인에이블하고, 에러 전파를 제한한다. 도2B의 기준 데이터 결정기 엘리먼트(162)는 기준 데이터가 결정 블록(308)에서 가용한지 여부를 결정한다. 선택적인 디코더 엘리먼트(160)는 블록들(310 및 318)에서의 디코딩 동작들을 수행한다.
일부 예들에서, 디코더 장치는 제1 통신 링크 상에서 제1 인터-코딩된 버전 (및 선택적으로 도5 및 6에 제시된 임의의 인트라-코딩된 부분들)을 수신하고, 제2 통신 링크에서 제2 인트라-코딩된 스위치 프레임 버전들을 수신한다. 이러한 통신 링크들 중 하나 또는 양자 모두는 패킷 헤더 정보 등에 의해 정의되는 가상 채널을 포함할 수 있다. 일부 예들에서, 제1 인터-코딩된 버전들 및 제2 인트라-코딩된 버전들은 동일한 통신 링크 상에서 수신된다. 제1 인터-코딩 및 제2 인트라-코딩 된 버전들을 전송 및/또는 수신하는데 사용될 수 있는 한 쌍의 가상 채널들의 일 예는 스케일가능한 통신 시스템의 베이스 계층 및 인헨스먼트 계층이다.
베이스 및 인헨스먼트 계층들을 사용하는 스위치 프레임 방법들
일부 예들에서, 비디오 스트림과 같은 단일 애플리케이션에 타겟화된 멀티미디어 비트 스트림은 베이스 계층 및 인헨스먼트 계층과 같은 2개 이상의 개별 계층들(예를 들면, 스케일가능한 코딩을 사용함)에서 인코딩될 수 있다. 이러한 계층들은 확장성(scalability), 예를 들면 시간적 및/또는 SNR(신호대잡음비) 확장성을 제공하는데 사용될 수 있다. 스케일가능한 코딩의 일 예는 인트라-코딩된 픽쳐들(예를 들면, I-프레임) 및 인터-코딩된 픽쳐들(예를 들면, 움직임 보상 예측을 사용하여 유도되는 P-프레임 및 B-프레임)을 비트 스트림의 상이한 계층들로 분할한다. I-프레임은 베이스 계층에서 인코딩되고, P 및/또는 B-프레임은 인헨스먼트 계층에서 인코딩된다. 스케일가능한 코딩은 동적인 채널들에서 유용하고, 여기서 스케일가능한 비트 스트림들은 네트워크 대역폭의 변동에 매칭되도록 적응된다. 에러가 빈번한 채널들에서, 스케일가능한 코딩은 베이스 계층 및 인헨스먼트 계층에 대한 상이한 에러 보호를 통해 견고성을 추가할 수 있다. 보다 양호한 에러 보호가 보다 중요한 계층에 적용될 수 있다. 스케일가능한 코딩은 에러 전파를 제한하고 효율적인 채널 포착을 인에이블하도록 스위치 프레임을 제공하기 위해서 사용될 수 있다.
도8A는 도7에 제시된 방법의 일부를 보여는 도이다. 멀티미디어 비트 스트 림(800)은 베이스 계층(802) 및 인헨스먼트 계층(804)을 포함한다. 제시된 멀티미디어 비트 스트림(800)의 일부는 P 프레임 및 B 프레임(예를 들어, 단방향 및/또는 양방향성 움직임 보상 예측을 사용함)을 포함한다. 이러한 예의 일 양상에서, 베이스 계층 데이터는 P 프레임, B 프레임, 및 I 프레임(미도시)에 대해 특정 품질 레벨을 갖는 비디오를 포함하며, 인헨스먼트 계층 데이터는 베이스 계층 데이터보다 정교하다. P 프레임 및 B 프레임들은 비디오 시퀀스의 다른 프레임으로부터 예측된다(예를 들면, 이전 프레임 이후 프레임으로부터 예측되는 B 프레임 및 이전 프레임으로부터 예측되는 P 프레임). 비디오 비트 스트림(800)의 부분은 제1 수퍼 프레임 SF i(808 참조) 및 제2 수퍼 프레임 SF i+1(810 참조)를 분리시키는 경계(806) 상에 위치한다. 이러한 예에서, 제2 수퍼 프레임(810)의 제1 프레임은 B 프레임(B1)이고, 제2 프레임은 P 프레임(P1)이다. B 프레임(B1)은 제1 수퍼 프레임(808)의 최종 프레임 및 제2 수퍼 프레임의 P 프레임(P1)으로부터 예측되는 것으로 가정될 수 있다.
멀티미디어 비트 스트림(800)은 또한 I 프레임으로서 인트라-코딩된 스위치 프레임(812)을 포함할 수 있다. 그러나, 스위치 프레임은 도3,4,5, 및 6에서 논의된 바와 같이 임의의 스위치 프레임일 수 있다. 일부 예들에서, 스위치 프레임(812)은 상이한 채널(실제 또는 가상 채널) 상에서 전송 및 수신된다. 스위치 프레임(812)은 사이드밴드 메시지에서 전송 및 수신될 수 있다. 예를 들어, 스위치 프레임(812)은 H.264의 하나 이상의 보조 인헨스먼트 정보(SEI) 메시지 또는 MPEG-2의 사용자_데이터 메시지에서 전송 및 수신될 수 있다.
멀티미디어 비트 스트림(800)을 수신하는 디코더가 성공적으로 제1 수퍼 프레임(808)을 디코딩하였다면, 베이스 계층(802) 및 인헨스먼트 계층(804)의 B 프레임들 및 P 프레임들은 인코딩 처리에서 이들이 예측된 프레임들을 참조하여 정상적으로 디코딩된다. P 및 B 프레임들에 대한 기준 데이터가 가용하면, 스위치 프레임(812)은 폐기될 수 있다. 그러나, 디코더가 제1 수퍼 프레임(808)에서 에러 데이터를 수신하거나 또는 제1 수퍼 프레임(808) 동안 채널 스위칭 요청을 수신하였다면, 디코더는 스위치 프레임(812)을 사용하여야 하는지 여부를 결정한다. 이러한 경우, 베이스 및 인헨스먼트 계층의 B 프레임들(B1) 및 P 프레임들(P1)은 도5,6, 및 7에서 논의된 바와 같이 폐기 또는 부분적으로 폐기된다. 그리고 나서, 스위치 프레임이 디코딩되고, 뒤이은 P 프레임(P2)이 점선 화살표(814)에 의해 표시된 바와 같이 스위치 프레임(812)을 참조하여 디코딩된다. B 프레임(B2)은 스위치 프레임(812) 및 P 프레임(P2)을 참조하여 디코딩될 수 있다.
논의된 바와 같이, 일 양상에서, 수퍼 프레임의 인터-코딩된 부분들의 기준 프레임들이 제한될 수 있다. 예를 들어, 제2 수퍼 프레임(810)의 제1 B 프레임(B1) 및 제1 P 프레임(P1)은 제1 수퍼 프레임(808)과 같은 다른 수퍼 프레임 내의 프레임으로부터 예측될 수 있다. 스위치 프레임(812)이 P1을 대체하기 위해서 제공되고, 프레임 B1이 드롭될 수 있기 때문에(B1에 뒤이은 어떤 프레임도 B1으로부터 예측되지 않았다고 가정하며, 이는 B 프레임들에 대해 공통적인 규칙임), 제1 수퍼 프레임(808)으로부터 예측함으로써 프레임들 B1 및 P1을 인코딩하는 것은 에러 전파를 야기하지 않을 것이다. 그러나, 제2 수퍼 프레임의 다른 인터-코딩된 부분들은 x 화살표(816 및 818)로 표시된 바와 같이 다른 수퍼 프레임, 또는 스위치 프레임(812)으로부터 예측되는 것이 제한된다. 기준 프레임들을 제한하는 것은 프레임들 B2 및 P2, 그리고 수퍼 프레임(810)의 다른 뒤이은 프레임들에 대한 코딩 효율성에 영향을 미친다. 예를 들어, 프레임들 B2 및 P2는 순방향 기준으로서 P1 만을 사용하지만, P3 및 B3는 순방향 기준으로서 P1 및 P2 모두를 사용할 수 있기 때문에, 멀티미디어 데이터의 보다 양호한 매칭 블록 발견 가능성을 증가시킨다. 수퍼 프레임 경계(806)로부터 더 멀리 이격될수록, 영향은 감소하게 될 것이다. 따라서 P2 및 B2는 이러한 예에서 대부분의 코딩 효율을 상실할 것이다.
일 양상에서, 스위치 프레임들의 레이트 소비를 감소시키기 위해서, 스위치 프레임(812)은 인헨스먼트 계층 프레임들(804) 보다 낮은 품질 레벨에서 인코딩될 수 있다. 예를 들어, 인헨스먼트 계층 평균 QP(양자화 파라미터)가 QPenh 이면, 채널 스위치 프레임에 대한 QP는 QPenh+6일 될 수 있고, 이는 보다 낮은 품질의 QP이다. 낮은 품질의 스위치 프레임은 그 짧은 듀레이션으로 인해 사용자에게 인지 불가능하다. 도8A에 제시된 실시예는 스케일가능한 방법으로 제한되지 않고, 단일-계층 방식에도 적용될 수 있다.
도8B는 도7에 제시된 방법의 일부에 대한 또 다른 예를 보여주는 도이다. 멀티미디어 비트 스트림(850)은 베이스 계층(852) 및 인헨스먼트 계층(854)을 포함한다. 이러한 예에서, 제2 수퍼 프레임(856)의 인헨스먼트 계층의 제1 프레임은 인트라-코딩된 스위치 프레임(858)이다. 이러한 예에서, 베이스 계층 P 프레임들은 인헨스먼트 계층 P 프레임보다 낮은 품질로 인코딩된다. 이러한 예시적인 비디 오 시퀀스(850)에서, 베이스 계층 품질 I 및 P 프레임들이 디코딩될 수 있거나, 또는 인헨스먼트 계층 품질 P 프레임들이 디코딩될 수 있다. 예를 들어, 디코더 장치는 보다 낮은 품질 베이스 계층(852)을 디코딩하여 배터리 전력을 보존하고, 사용자가 보다 높은 품질을 원하는 경우보다 높은 품질의 인헨스먼트 계층(854)을 디코딩할 수 있다. 일반적으로 인헨스먼트 계층 P 프레임들은 베이스 계층 P 및 I 프레임들보다 높은 품질을 갖는다.
본 예에서, 스위치 프레임(858)은 채널 스위치 조건이 발생하고 디코더가 제1 수퍼 프레임(866)에서 데이터를 수신하거나, 또는 제1 수퍼 프레임(866)이 제2 수퍼 프레임(856)의 제1 P 프레임이 의존하는 기준 데이터를 에러 상태로 수신되는 경우에 사용된다. 이러한 경우들 중 하나가 발생되면, I 프레임(858)이 디코딩되고, 인헨스먼트 계층 P 프레임(860)이 폐기된다. 일 양상에서, 상술한 바와 같이, 제2 수퍼 프레임(850)의 제2 및 뒤이은 P 프레임들은 x 화살표(862)에 의해 표시되는 바와 같이, 제1 수퍼 프레임(866)과 같은 다른 수퍼 프레임의 프레임들을 참조하지 않고 인코딩될 수 있다.
스위치 프레임(858)이 요구되지 않으면(예를 들어, 채널 스위칭이 요청되지 않아서, 모든 기준 데이터가 가용한 경우), 스위치 프레임(858)은 폐기되고 인헨스먼트 계층 품질 P 프레임들이 정상적인 방식으로 디코딩된다. 대안적으로, 단지 베이스 계층 품질만이 디코딩될 예정이면, 인헨스먼트 계층 P 프레임들은 폐기 되고, 베이스 계층 스위치 프레임(858) 및 뒤이은 P 프레임들이 디코딩될 수 있다.
스위치 프레임들의 위치는 도8A 및 도8B에 제시된 시작부가 아니라, 수퍼 프 레임 또는 비디오 시퀀스의 다른 임의의 포인트들에 위치될 수 있다. 일부 실시예들에서, 스위치 프레임은 고정된 간격에서 인코딩될 수 있다. 고정된 인터벌은 대략 0.5초 내지 2.0초 범위에 존재한다. 다른 실시예들에서, 스위치 프레임들은 비디오 시퀀스에서 비규칙적인 인터벌에서 존재할 수 있다. 예를 들어, 인코딩 처리는 상술한 바와 같이 인트라-코딩된 블록들의 보다 높은 비율을 가지고 인터-코딩된 프레임과 부합하기 위해서 스위치 프레임의 위치를 선택할 수 있다.
도8A 및 8B에 제시된 예들은 수퍼 프레임에서 제1 P 및/또는 B 프레임들 후에 프레임들에 대해 사용되는 허용가능한 예측 프레임들을 제한하였다. 다른 예들에서, 프레임의 인터-코딩된 부분의 움직임 벡터들은 다른 수퍼 프레임의 원(original) 기준 프레임으로부터 스케일되어 현재 수퍼 프레임의 스위치 프레임 또는 다른 프레임에 대응할 수 있다. 움직임 벡터 스케일링의 일 예가 이제 설명된다.
도8B를 참조하여, 제2 수퍼 프레임(856)의 제2 P 프레임(868)이 제1 수퍼 프레임(866)의 최종 프레임(877)으로부터 예측되는 것으로 가정한다. 채널 스위치 프레임(858)이 에러 기준 데이터 또는 채널 스위칭 모드로 인해 디코딩되었다면, P 프레임의 움직임 벡터들은 스위치 프레임(858)의 시간적인 위치에 대응하도록 스케일링될 수 있다. 다양한 이미지 객체들의 비-선형 움직임으로 인한 에러가 존재할 수 있다. 움직임 벡터들의 스케일링은 다음과 같이 특성화될 수 있다:
MV_f_x = MV_x*N/M (1)
MV_f_y = MV_y*N/M (2)
여기서, MV_f_x 및 MV_f_y 는 스위치 프레임(858)을 포인팅하는 새로운 움직임 벡터의 x 및 y 성분이고, MV_x 및 MV_y는 프레임(870)을 포인팅하는 원 움직임 벡터의 x 및 y 성분이며, N은 프레임(868)으로부터 스위치 프레임(858)까지의 거리이고, M은 프레임(868)으로부터 원 기준 프레임(870)까지의 거리이다. 이러한 예에서, N=1 및 M=2의 경우, 원 움직임 벡터 성분들 MV_x 및 MV_y의 절반에 해당하는 MV_f_x 및 MV_f_y 가 생성된다. 따라서, 프레임(868)은 스위치 프레임(858)으로부터 추정될 수 있다. 다양한 거리들 N 및 M을 사용하는 다양한 형태의 움직임 벡터 스케일링을 당업자는 잘 이해할 수 있을 것이다.
도9는 도1에 제시된 시스템에서 사용될 수 있는 인코더 장치의 다른 실시예를 보여주는 블록 다이아그램이다. 이러한 도9의 인코더 장치(110)는 제1 버전을 생성하기 위해서 인터-코딩을 사용하여 멀티미디어 데이터를 제1 부분을 인코딩하는 제1 인코더 수단, 및 제2 버전을 생성하기 위해서 인트라-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하는 제2 인코더 수단을 포함한다. 제1 인코더 수단은 도9의 인터-코딩 인코더(905)를 포함한다. 제2 인코더는 도9의 인트라-코딩 인코더(910)를 포함한다.
도10은 도1에 제시된 시스템에서 사용될 수 있는 디코더 장치의 다른 실시예를 보여주는 블록 다이아그램이다. 도10의 디코더 장치(150)는 멀티미디어 데이터의 제1 부분의 인터-코딩된 제1 버전을 수신하고, 멀티미디어 데이터의 제1 부분의 인트라-코딩된 제2 버전을 수신하는 수단을 포함한다. 디코더 장치는 또한 상기 수신된 제1 및 제2 버전들을 선택적으로 디코딩하는 수단을 더 포함한다. 상기 수 신 수단은 도10의 수신기(1005)를 포함한다. 상기 선택적인 디코딩 수단은 도10의 선택적인 디코더(1010)를 포함한다.
도11은 도1에 제시된 시스템에서 사용될 수 있는 인코더 장치의 다른 실시예를 보여주는 블록 다이아그램이다. 도11의 인코더 장치(110)는 제1 버전을 생성하기 위해서 인터-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하는 제1 인코더 수단, 및 제2 버전을 생성하기 위해서 인트라-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하는 제2 인코더 수단을 포함한다. 상기 제1 인코더 수단은 도11의 인터-코딩(1105)을 사용하여 인코딩하는 모듈을 포함한다. 제2 인코더 수단은 도11의 인트라-코딩(1110)을 사용하여 인코딩하는 모듈을 포함한다.
도12는 도1에 제시된 시스템에서 사용될 수 있는 디코더 장치의 다른 실시예를 보여주는 블록 다이아그램이다. 도12의 디코더 장치(150)는 멀티미디어 데이터의 제1 부분의 인터-코딩된 제1 버전을 수신하고, 멀티미디어 데이터의 제1 부분의 인트라-코딩된 제2 버전을 수신하는 수단을 포함한다. 디코더 장치(150)는 또한 상기 수신된 제1 및 제2 버전들을 선택적으로 디코딩하는 수단을 더 포함한다. 상기 수신 수단은 도12의 수신 모듈(1205)을 포함한다. 상기 선택적인 디코딩 수단은 도12의 선택적인 디코딩 모듈(1210)을 포함한다.
도13은 도1에 제시된 시스템에서 사용될 수 있는 디지털 비디오를 전송하는 장치에 대한 실시예를 보여주는 블록 다이아그램이다. 도13의 장치(1300)는 다수의 디지털 비디오 채널들 각각에 대해 인터-코딩된 디지털 비디오 프레임들을 전송하는 수단, 및 상기 각 채널들에 대해 채널 스위치 프레임들을 전송하는 수단을 포 함하며, 여기서 상기 채널 스위치 프레임들 중 적어도 하나는 각 채널에 대한 인터-코딩된 프레임들 중 하나에 대응하는 인트라-코딩된 디지털 비디오 데이터를 포함한다. 상기 전송 수단은 인터-코딩된 디지털 비디오 프레임들을 전송하기 위한 모듈(1305)을 포함한다. 상기 채널 스위치 프레임들 전송 수단은 채널 스위치 프레임들을 전송하기 위한 모듈(1310)을 포함한다.
도14는 도1에 제시된 시스템에서 사용될 수 있는 디지털 비디오 데이터 수신 장치에 대한 일 실시예를 보여주는 블록 다이아그램이다. 도14의 장치(1400)는 제1 채널과 관련된 인터-코딩된 디지털 비디오 데이터를 포함하는 인터-코딩된 프레임들을 획득하는 수단, 및 제2 채널로의 스위칭 요청을 수신하는 수단을 포함한다. 상기 장치(1400)는 상기 요청에 응답하여, 제2 채널에 대한 인터-코딩된 프레임들 중 하나에 대응하는 인트라-코딩된 디지털 비디오 데이터를 포함하는 채널 스위치 프레임을 획득하는 수단을 더 포함한다. 상기 인터-코딩된 프레임들 획득 수단은 인터-코딩된 프레임들을 획득하기 위한 모듈(1405)을 포함한다. 상기 요청을 수신하는 수단은 요청을 수신하기 위한 모듈(1410)을 포함한다. 상기 채널 스위치 프레임 획득 수단은 채널 스위치 프레임을 획득하기 위한 모듈(1415)을 포함한다.
당업자는 정보 및 신호들이 다양한 타입의 상이한 기술들을 사용하여 표현될 수 있음을 잘 이해할 것이다. 예를 들어, 본 명세서상에 제시된 데이터, 지령, 명령, 정보, 신호, 비트, 심벌, 및 칩은 전압, 전류, 전자기파, 자기장 또는 입자, 광 필드 또는 입자, 또는 이들의 임의의 조합으로 표현될 수 있다.
당업자는 상술한 다양한 예시적인 논리블록, 모듈, 회로, 및 알고리즘 단계 들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이들의 조합으로서 구현될 수 있음을 잘 이해할 것이다. 하드웨어 및 소프트웨어의 상호 호환성을 명확히 하기 위해, 다양한 예시적인 소자들, 블록, 모듈, 회로, 및 단계들이 그들의 기능적 관점에서 기술되었다. 이러한 기능이 하드웨어로 구현되는지, 또는 소프트웨어로 구현 되는지는 특정 애플리케이션 및 전체 시스템에 대해 부가된 설계 제한들에 의존한다. 당업자는 이러한 기능들을 각각의 특정 애플리케이션에 대해 다양한 방식으로 구현할 수 있지만, 이러한 구현 결정이 본 발명의 영역을 벗어나는 것은 아니다.
다양한 예시적인 논리 블록들, 모듈들, 및 회로들이 범용 프로세서; 디지털 신호 처리기, DSP; 주문형 집적회로, ASIC; 필드 프로그램어블 게이트 어레이, FPGA; 또는 다른 프로그램어블 논리 장치; 이산 게이트 또는 트랜지스터 논리; 이산 하드웨어 컴포넌트들; 또는 이러한 기능들을 구현하도록 설계된 것들의 조합을 통해 구현 또는 수행될 수 있다. 범용 프로세서는 마이크로 프로세서 일 수 있지만; 대안적 실시예에서, 이러한 프로세서는 기존 프로세서, 제어기, 마이크로 제어기, 또는 상태 머신일 수 있다. 프로세서는 예를 들어, DSP 및 마이크로프로세서, 복수의 마이크로프로세서들, DSP 코어와 결합된 하나 이상의 마이크로 프로세서, 또는 이러한 구성들의 조합과 같이 계산 장치들의 조합으로서 구현될 수 있다.
상술한 방법의 단계들 및 알고리즘은 하드웨어에서, 프로세서에 의해 실행되는 소프트웨어 모듈에서, 또는 이들의 조합에 의해 직접 구현될 수 있다. 소프트웨어 모듈들은 랜덤 액세스 메모리(RAM); 플래쉬 메모리; 판독 전용 메모리(ROM); 전기적 프로그램어블 ROM(EPROM); 전기적 삭제가능한 프로그램어블 ROM(EEPROM); 레지스터; 하드디스크; 휴대용 디스크; 콤팩트 디스크 ROM(CD-ROM); 또는 공지된 저장 매체의 임의의 형태로서 존재한다. 예시적인 저장매체는 프로세서와 결합되어, 프로세서는 저장매체로부터 정보를 판독하여 저장매체에 정보를 기록한다. 대안적으로, 저장 매체는 프로세서의 구성요소일 수 있다. 이러한 프로세서 및 저장매체는 ASIC 에 위치한다. ASIC 는 사용자 단말에 위치할 수 있다. 대안적으로, 프로세서 및 저장 매체는 사용자 단말에서 이산 컴포넌트로서 존재할 수 있다.
상술한 실시예들은 당업자가 본원발명을 보다 용이하게 실시할 수 있도록 하기 위해 기술되었다. 따라서, 본 발명은 여기서 제시된 실시예들로 제한되지 않으며, 다양한 변형이 가능함을 당업자는 잘 이해할 수 있을 것이다.
따라서, 에러 상태의 양방향 예측된 멀티미디어 데이터의 시간적인 에러 은닉을 수행하는 방법 및 장치들이 제시되었다.

Claims (182)

  1. 제1 버전(version)을 생성하기 위해서 인터(inter)-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하는 단계;
    제2 버전을 생성하기 위해서 인트라(intra)-코딩을 사용하여 상기 멀티미디어 데이터의 제1 부분을 인코딩하는 단계를 포함하는, 멀티미디어 데이터 처리 방법.
  2. 제1항에 있어서,
    상기 인코딩된 제1 및 제2 버전들에 관련된 정보를 생성하는 단계를 더 포함하는, 멀티미디어 데이터 처리 방법.
  3. 제2항에 있어서,
    상기 생성된 정보는 상기 제2 인트라-코딩된 버전이 리던던트(redundant) 버전임을 표시하는 기준(reference) 정보를 포함하는, 멀티미디어 데이터 처리 방법.
  4. 제1항에 있어서,
    상기 제1 부분은 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임을 포함하는, 멀티미디어 데이터 처리 방법.
  5. 제4항에 있어서,
    상기 제1 프레임에 뒤이어 위치하는 제2 프레임을 인코딩하는 단계를 더 포함하며, 상기 제2 프레임은 선행하는 임의의 수퍼 프레임의 데이터를 참조하지 않고 인코딩되는, 멀티미디어 데이터 처리 방법.
  6. 제1항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부를 포함하며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 방법은
    인트라-코딩에 의해 상기 제2 부분들 중 하나 이상을 인코딩하는 단계를 더 포함하며, 상기 하나 이상의 제2 부분들은 상기 수퍼 프레임의 하나 이상의 제2 프레임들에 위치하는, 멀티미디어 데이터 처리 방법.
  7. 제1항에 있어서,
    상기 제1부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부를 포함하며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 방법은
    상기 제1 버전을 포함하기 위해서 인트라-코딩에 의해 상기 제1 프레임의 상기 제2 부분들 중 하나 이상을 인코딩하는 단계를 더 포함하는, 멀티미디어 데이터 처리 방법.
  8. 제2항에 있어서,
    상기 제1 버전을 전송하는 단계;
    상기 제2 버전을 전송하는 단계; 및
    상기 정보를 전송하는 단계를 더 포함하는, 멀티미디어 데이터 처리 방법.
  9. 제8항에 있어서,
    상기 제1 버전을 전송하는 단계는 제1 통신 링크 상에서 전송하는 단계를 포함하며, 상기 제2 버전을 전송하는 단계는 제2 통신 링크 상에서 전송하는 단계를 포함하는, 멀티미디어 데이터 처리 방법.
  10. 제8항에 있어서,
    상기 제1 및 제2 버전들의 전송은 하나의 통신 링크에서 발생하는, 멀티미디어 데이터 처리 방법.
  11. 제9항에 있어서,
    상기 제1 통신 링크 상에서의 전송 또는 상기 제2 통신 링크 상에서의 전송 단계는 가상 채널 상에서의 전송을 포함하는, 멀티미디어 데이터 처리 방법.
  12. 제4항에 있어서,
    상기 제2 버전이 리던던트 버전임을 표시하는 정보를 생성하는 단계는 상기 제1 부분을 포함하는 프레임의 프레임 시퀀스 번호를 식별하는 정보를 생성하는 단계를 포함하는, 멀티미디어 데이터 처리 방법.
  13. 제1항에 있어서,
    상기 제1 버전은 제1 품질 레벨과 관련되고, 상기 제2 버전은 상기 제1 품질 레벨 이하인 제2 품질 레벨과 관련되는, 멀티미디어 데이터 처리 방법.
  14. 제1 버전(version)을 생성하기 위해서 인터(inter)-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하고;
    제2 버전을 생성하기 위해서 인트라(intra)-코딩을 사용하여 상기 멀티미디어 데이터의 제1 부분을 인코딩하는 구성(configuration)을 포함하는, 멀티미디어 데이터 프로세서.
  15. 제14항에 있어서,
    상기 프로세서는 인코딩된 제1 및 제2 버전들에 관련된 정보를 생성하도록 추가로 구성되는, 멀티미디어 데이터 프로세서.
  16. 제15항에 있어서,
    상기 생성된 정보는 상기 제2 인트라-코딩된 버전이 리던던트(redundant) 버 전임을 표시하는 기준 정보를 포함하는, 멀티미디어 데이터 프로세서.
  17. 제14항에 있어서,
    상기 제1 부분은 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임을 포함하는, 멀티미디어 데이터 프로세서.
  18. 제17항에 있어서,
    상기 프로세서는 제1 프레임에 뒤이어 위치하는 제2 프레임을 인코딩하도록 추가로 구성되며, 상기 제2 프레임은 선행하는 임의의 수퍼 프레임의 데이터를 참조하지 않고 인코딩되는, 멀티미디어 데이터 프로세서.
  19. 제14항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부를 포함하며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 프로세서는
    인트라-코딩에 의해 상기 제2 부분들 중 하나 이상을 인코딩하도록 추가로 구성되며, 상기 하나 이상의 제2 부분들은 상기 수퍼 프레임의 하나 이상의 제2 프레임들에 위치하는, 멀티미디어 데이터 프로세서.
  20. 제14항에 있어서,
    상기 제1부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부를 포함하며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 프로세서는
    상기 제1 버전을 포함하기 위해서 인트라-코딩을 사용하여 상기 제1 프레임의 상기 제2 부분들 중 하나 이상을 인코딩하도록 추가로 구성되는, 멀티미디어 데이터 프로세서.
  21. 제15항에 있어서, 상기 프로세서는
    상기 제1 버전을 전송하고;
    상기 제2 버전을 전송하고; 및
    상기 정보를 전송하도록 추가로 구성되는, 멀티미디어 데이터 프로세서.
  22. 제21항에 있어서,
    상기 프로세서는 제1 통신 링크 상에서 상기 제1 버전을 전송하고, 제2 통신 링크 상에서 상기 제2 버전을 전송하도록 추가로 구성되는, 멀티미디어 데이터 프로세서.
  23. 제21항에 있어서,
    상기 제1 및 제2 버전들은 하나의 통신 링크상에서 전송되는, 멀티미디어 데이터 프로세서.
  24. 제22항에 있어서,
    상기 제1 통신 링크 또는 상기 제2 통신 링크는 가상 채널을 포함하는, 멀티미디어 데이터 프로세서.
  25. 제17항에 있어서,
    상기 제2 버전이 리던던트 버전임을 표시하는 정보는 상기 제1 부분을 포함하는 프레임의 프레임 시퀀스 번호를 식별하는 정보를 포함하는, 멀티미디어 데이터 프로세서.
  26. 제14항에 있어서,
    상기 제1 버전은 제1 품질 레벨과 관련되고, 상기 제2 버전은 상기 제1 품질 레벨 이하인 제2 품질 레벨과 관련되는, 멀티미디어 데이터 프로세서.
  27. 제1 버전(version)을 생성하기 위해서 인터(inter)-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하는 제1 인코더;
    제2 버전을 생성하기 위해서 인트라(intra)-코딩을 사용하여 상기 멀티미디어 데이터의 제1 부분을 인코딩하는 제2 인코더를 포함하는, 멀티미디어 데이터 처리 장치.
  28. 제27항에 있어서,
    상기 인코딩된 제1 및 제2 버전들에 관련된 정보를 생성하는 생성기를 더 포함하는, 멀티미디어 데이터 처리 장치.
  29. 제28항에 있어서,
    상기 생성된 정보는 상기 제2 인트라-코딩된 버전이 리던던트(redundant) 버전임을 표시하는 기준 정보를 포함하는, 멀티미디어 데이터 처리 장치.
  30. 제27항에 있어서,
    상기 제1 부분은 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임을 포함하는, 멀티미디어 데이터 처리 장치.
  31. 제30항에 있어서,
    상기 제1 인코더는 제1 프레임에 뒤이어 위치하는 제2 프레임의 멀티미디어 데이터를 인코딩하며, 상기 제2 프레임 멀티미디어 데이터는 선행하는 임의의 수퍼 프레임의 데이터를 참조하지 않고 인코딩되는, 멀티미디어 데이터 처리 장치.
  32. 제27항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부를 포함하며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 제2 인코더는
    인트라-코딩을 사용하여 상기 제2 부분들 중 하나 이상을 인코딩하며, 상기 하나 이상의 제2 부분들은 상기 수퍼 프레임의 하나 이상의 제2 프레임들에 위치하는, 멀티미디어 데이터 처리 장치.
  33. 제27항에 있어서,
    상기 제1부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부를 포함하며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 제2 인코더는
    상기 제1 버전을 포함하기 위해서 인트라-코딩을 사용하여 상기 제1 프레임의 상기 제2 부분들 중 하나 이상을 인코딩하는, 멀티미디어 데이터 처리 장치.
  34. 제28항에 있어서,
    상기 제1 버전, 상기 제2 버전 및 상기 생성된 정보를 전송하는 전송기를 더 포함하는, 멀티미디어 데이터 처리 장치.
  35. 제34항에 있어서,
    상기 전송기는 상기 제1 버전을 제1 통신 링크 상에서 전송하고, 상기 제2 버전을 제2 통신 링크 상에서 전송하는, 멀티미디어 데이터 처리 장치.
  36. 제34항에 있어서,
    상기 제1 및 제2 버전들은 하나의 통신 링크에서 전송되는, 멀티미디어 데이터 처리 장치.
  37. 제35항에 있어서,
    상기 제1 통신 링크 또는 상기 제2 통신 링크는 가상 채널을 포함하는, 멀티미디어 데이터 처리 장치.
  38. 제30항에 있어서,
    상기 제2 버전이 리던던트 버전임을 표시하는 정보는 상기 제1 부분을 포함하는 프레임의 프레임 시퀀스 번호를 식별하는 정보를 포함하는, 멀티미디어 데이터 처리 장치.
  39. 제27항에 있어서,
    상기 제1 버전은 제1 품질 레벨과 관련되고, 상기 제2 버전은 상기 제1 품질 레벨 이하인 제2 품질 레벨과 관련되는, 멀티미디어 데이터 처리 장치.
  40. 제1 버전(version)을 생성하기 위해서 인터(inter)-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하는 제1 인코더 수단;
    제2 버전을 생성하기 위해서 인트라(intra)-코딩을 사용하여 상기 멀티미디 어 데이터의 제1 부분을 인코딩하는 제2 인코더 수단을 포함하는, 멀티미디어 데이터 처리 장치.
  41. 제40항에 있어서,
    상기 인코딩된 제1 및 제2 버전들에 관련된 정보를 생성하는 수단을 더 포함하는, 멀티미디어 데이터 처리 장치.
  42. 제41항에 있어서,
    상기 정보는 상기 제2 인트라-코딩된 버전이 리던던트(redundant) 버전임을 표시하는 기준 정보를 포함하는, 멀티미디어 데이터 처리 장치.
  43. 제40항에 있어서,
    상기 제1 부분은 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임을 포함하는, 멀티미디어 데이터 처리 장치.
  44. 제43항에 있어서,
    상기 제1 인코더 수단은 제1 프레임에 뒤이어 위치하는 제2 프레임의 멀티미디어 데이터를 인코딩하며, 상기 제2 프레임 멀티미디어 데이터는 선행하는 임의의 수퍼 프레임의 데이터를 참조하지 않고 인코딩되는, 멀티미디어 데이터 처리 장치.
  45. 제40항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부를 포함하며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 제2 인코더 수단은
    인트라-코딩을 사용하여 상기 제2 부분들 중 하나 이상을 인코딩하며, 상기 하나 이상의 제2 부분들은 상기 수퍼 프레임의 하나 이상의 제2 프레임들에 위치하는, 멀티미디어 데이터 처리 장치.
  46. 제40항에 있어서,
    상기 제1부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부를 포함하며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 제2 인코더 수단은
    상기 제1 버전을 포함하기 위해서 인트라-코딩을 사용하여 상기 제1 프레임의 상기 제2 부분들 중 하나 이상을 인코딩하는, 멀티미디어 데이터 처리 장치.
  47. 제41항에 있어서,
    상기 제1 버전, 상기 제2 버전 및 상기 관련 정보를 전송하는 수단을 더 포함하는, 멀티미디어 데이터 처리 장치.
  48. 제47항에 있어서,
    상기 전송 수단은 상기 제1 버전을 제1 통신 링크 상에서 전송하고, 상기 제2 버전을 제2 통신 링크 상에서 전송하는, 멀티미디어 데이터 처리 장치.
  49. 제47항에 있어서,
    상기 제1 및 제2 버전들은 하나의 통신 링크에서 전송되는, 멀티미디어 데이터 처리 장치.
  50. 제48항에 있어서,
    상기 제1 통신 링크 또는 상기 제2 통신 링크는 가상 채널을 포함하는, 멀티미디어 데이터 처리 장치.
  51. 제41항에 있어서,
    상기 생성 수단은 상기 제1 부분을 포함하는 프레임의 프레임 시퀀스 번호를 식별하는 정보를 생성하는, 멀티미디어 데이터 처리 장치.
  52. 제40항에 있어서,
    상기 제1 버전은 제1 품질 레벨과 관련되고, 상기 제2 버전은 상기 제1 품질 레벨 이하인 제2 품질 레벨과 관련되는, 멀티미디어 데이터 처리 장치.
  53. 실행시에 기계(machine)로 하여금
    제1 버전(version)을 생성하기 위해서 인터(inter)-코딩을 사용하여 멀티미디어 데이터의 제1 부분을 인코딩하고
    제2 버전을 생성하기 위해서 인트라(intra)-코딩을 사용하여 상기 멀티미디어 데이터의 제1 부분을 인코딩하도록 하는 명령들을 포함하는, 기계 판독가능한 매체.
  54. 제53항에 있어서,
    실행시에 기계로 하여금 상기 인코딩된 제1 및 제2 버전들에 관련된 정보를 생성하도록 하는 명령들을 더 포함하는, 기계 판독가능한 매체.
  55. 제54항에 있어서,
    상기 생성된 정보는 상기 제2 인트라-코딩된 버전이 리던던트(redundant) 버전임을 표시하는 기준 정보를 포함하는, 기계 판독가능한 매체.
  56. 제53항에 있어서,
    상기 제1 부분은 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임을 포함하는, 기계 판독가능한 매체.
  57. 제56항에 있어서,
    실행시에 기계로 하여금 상기 제1 프레임에 뒤이어 위치하는 제2 프레임을 인코딩하도록 하는 명령을 더 포함하며, 상기 제2 프레임은 선행하는 임의의 수퍼 프레임의 데이터를 참조하지 않고 인코딩되는, 기계 판독가능한 매체.
  58. 제53항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부를 포함하며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 기계 판독가능한 매체는 실행시에 기계로 하여금
    인트라-코딩에 의해 상기 제2 부분들 중 하나 이상을 인코딩하도록 하는 명령을 더 포함하며, 상기 하나 이상의 제2 부분들은 상기 수퍼 프레임의 하나 이상의 제2 프레임들에 위치하는, 기계 판독가능한 매체.
  59. 제53항에 있어서,
    상기 제1부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부를 포함하며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 기계 판독가능한 매체는 실행시에 기계로 하여금
    상기 제1 버전을 포함하기 위해서 인트라-코딩에 의해 상기 제1 프레임의 상기 제2 부분들 중 하나 이상을 인코딩하도록 하는 명령을 더 포함하는, 기계 판독가능한 매체.
  60. 제54항에 있어서, 실행시에 기계로 하여금
    상기 제1 버전을 전송하고;
    상기 제2 버전을 전송하며; 그리고
    상기 정보를 전송하도록 하는 명령들을 더 포함하는, 기계 판독가능한 매체.
  61. 제60항에 있어서, 실행시에 기계로 하여금
    상기 제1 버전을 제1 통신 링크 상에서 전송하고, 상기 제2 버전을 제2 통신 링크 상에서 전송하도록 하는 명령들을 더 포함하는, 기계 판독가능한 매체.
  62. 제60항에 있어서,
    상기 제1 및 제2 버전들의 전송은 하나의 통신 링크에서 발생하는, 기계 판독가능한 매체.
  63. 제61항에 있어서,
    상기 제1 통신 링크 상에서의 전송 또는 상기 제2 통신 링크 상에서의 전송은 가상 채널 상에서의 전송을 포함하는, 기계 판독가능한 매체.
  64. 제56항에 있어서,
    상기 제2 버전이 리던던트 버전임을 표시하는 정보는 상기 제1 부분을 포함하는 프레임의 프레임 시퀀스 번호를 식별하는 정보를 포함하는, 기계 판독가능한 매체.
  65. 제53항에 있어서,
    상기 제1 버전은 제1 품질 레벨과 관련되고, 상기 제2 버전은 상기 제1 품질 레벨 이하인 제2 품질 레벨과 관련되는, 기계 판독가능한 매체.
  66. 멀티미디어 데이터의 제1 부분의 인터-코딩된 제1 버전을 수신하는 단계;
    상기 멀티미디어 데이터의 제1 부분의 인트라-코딩된 제2 버전을 수신하는 단계; 및
    상기 수신된 제1 및 제2 버전들을 선택적으로 디코딩하는 단계를 포함하는, 멀티미디어 데이터 처리 방법.
  67. 제66항에 있어서,
    상기 선택적인 디코딩 단계는
    기준 데이터가 가용한지 여부를 결정하는 단계 - 여기서, 상기 기준 데이터는 상기 제1 인터-코딩된 버전과 관련됨 - ; 및
    상기 결정에 기반하여 상기 제2 인트라-코딩된 버전을 디코딩하는 단계를 더 포함하는, 멀티미디어 데이터 처리 방법.
  68. 제66항에 있어서,
    상기 선택적인 디코딩 단계는
    기준 데이터가 가용한지 여부를 결정하는 단계 - 여기서, 상기 기준 데이터는 상기 제1 인터-코딩된 버전과 관련됨 - ; 및
    상기 기준 데이터가 가용하지 않다는 결정에 기반하여 상기 제2 인트라-코딩된 버전을 디코딩하는 단계를 더 포함하는, 멀티미디어 데이터 처리 방법.
  69. 제68항에 있어서,
    상기 기준 데이터가 가용하지 않다는 결정은 채널 스위칭 명령을 검출하고, 상기 채널 스위칭 명령 검출에 응답하여 기준 데이터가 가용하지 않다고 결정하는 단계를 포함하는, 멀티미디어 데이터 처리 방법.
  70. 제68항에 있어서,
    기준 데이터가 가용하지 않다는 결정은 상기 제1 인터-코딩된 버전이 의존하는 기준 데이터에서의 에러를 검출하고, 이러한 에러 검출에 응답하여 기준 데이터가 가용하지 않다고 결정하는 단계를 포함하는, 멀티미디어 데이터 처리 방법.
  71. 제66항에 있어서,
    상기 제1 부분은 멀티미디어 데이터의 수퍼 프레임의 제1 프레임을 포함하는, 멀티미디어 데이터 처리 방법.
  72. 제71항에 있어서,
    상기 수퍼 프레임의 제2 프레임을 수신하는 단계를 더 포함하며, 상기 제2 프레임은 상기 제1 프레임을 뒤따르며, 선행하는 임의의 수퍼 프레임의 데이터를 참조하지 않고 인코딩되는, 멀티미디어 데이터 처리 방법.
  73. 제66항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부이며, 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 제1 버전 수신 단계는
    인트라-코딩된 상기 제2 부분들 중 하나 이상을 수신하는 단계를 더 포함하며, 상기 하나 이상의 인트라-코딩된 제2 부분들은 상기 수퍼 프레임의 하나 이상의 제2 프레임들에 위치하는, 멀티미디어 데이터 처리 방법.
  74. 제73항에 있어서,
    상기 선택적인 디코딩 단계는
    상기 멀티미디어 데이터의 제2 버전의 인트라-코딩된 제1 부분을 디코딩하는 단계;
    상기 멀티미디어 데이터의 제1 버전의 하나 이상의 인트라-코딩된 제2 부분들을 디코딩하는 단계; 및
    하나의 프레임으로 디스플레이되기 위해서 상기 디코딩된 제1 부분을 상기 하나 이상의 디코딩된 제2 부분들과 결합하는 단계를 더 포함하는, 멀티미디어 데 이터 처리 방법.
  75. 제66항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부이며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 제1 버전 수신 단계는
    인트라-코딩된 제1 프레임의 제2 부분들 중 하나 이상을 수신하는 단계를 더 포함하는, 멀티미디어 데이터 처리 방법.
  76. 제75항에 있어서,
    상기 선택적인 디코딩 단계는
    상기 멀티미디어 데이터의 제2 버전의 인트라-코딩된 제1 부분을 디코딩하는 단계;
    상기 멀티미디어 데이터의 제1 버전의 하나 이상의 인트라-코딩된 제2 부분들을 디코딩하는 단계; 및
    하나의 프레임으로 디스플레이되기 위해서 상기 디코딩된 제1 부분을 상기 하나 이상의 디코딩된 제2 부분들과 결합하는 단계를 더 포함하는, 멀티미디어 데이터 처리 방법.
  77. 제66항에 있어서,
    상기 수신된 멀티미디어 데이터의 제1 버전 및 제2 버전들에 관련된 정보를 수신하는 단계를 더 포함하는, 멀티미디어 데이터 처리 방법.
  78. 제66항에 있어서,
    상기 제1 버전 수신 단계는 제1 통신 링크에서 수신하는 단계를 포함하며, 상기 제2 버전 수신 단계는 제2 통신 링크에서 수신하는 단계를 포함하는, 멀티미디어 데이터 처리 방법.
  79. 제78항에 있어서,
    상기 제1 통신 링크에서의 수신 또는 상기 제2 통신 링크에서의 수신 단계는 가상 채널에서 수신하는 단계를 포함하는, 멀티미디어 데이터 처리 방법.
  80. 제66항에 있어서,
    상기 제1 및 제2 버전들은 단일 통신 링크에서 수신되는, 멀티미디어 데이터 처리 방법.
  81. 멀티미디어 데이터의 제1 부분의 인터-코딩된 제1 버전을 수신하고;
    상기 멀티미디어 데이터의 제1 부분의 인트라-코딩된 제2 버전을 수신하며; 그리고
    상기 수신된 제1 및 제2 버전들을 선택적으로 디코딩하기 위한 구 성(configuration)을 포함하는, 멀티미디어 데이터 프로세서.
  82. 제81항에 있어서,
    상기 프로세서는
    기준 데이터가 가용한지 여부를 결정하고 - 여기서, 상기 기준 데이터는 상기 제1 인터-코딩된 버전과 관련됨 - ; 및
    상기 결정에 기반하여 상기 제2 인트라-코딩된 버전을 선택적으로 디코딩하도록 추가로 구성되는, 멀티미디어 데이터 프로세서.
  83. 제81항에 있어서,
    상기 프로세서는
    기준 데이터가 가용한지 여부를 결정하고 - 여기서, 상기 기준 데이터는 상기 제1 인터-코딩된 버전과 관련됨 - ; 및
    상기 기준 데이터가 가용하지 않다는 결정에 기반하여 상기 제2 인트라-코딩된 버전을 선택적으로 디코딩하도록 추가로 구성되는, 멀티미디어 데이터 프로세서.
  84. 제83항에 있어서,
    상기 프로세서는
    채널 스위칭 명령을 검출하고; 그리고
    상기 채널 스위칭 명령 검출에 응답하여 기준 데이터가 가용하지 않다고 결정하도록 추가로 구성되는, 멀티미디어 데이터 프로세서.
  85. 제83항에 있어서,
    상기 프로세서는
    상기 제1 인터-코딩된 버전이 의존하는 기준 데이터에서의 에러를 검출하고, 이러한 에러 검출에 응답하여 기준 데이터가 가용하지 않다고 결정하도록 추가로 구성되는, 멀티미디어 데이터 프로세서.
  86. 제81항에 있어서,
    상기 제1 부분은 멀티미디어 데이터의 수퍼 프레임의 제1 프레임을 포함하는, 멀티미디어 데이터 프로세서.
  87. 제86항에 있어서,
    상기 프로세서는
    상기 수퍼 프레임의 제2 프레임을 수신하도록 추가로 구성되며, 상기 제2 프레임은 상기 제1 프레임을 뒤따르며, 선행하는 임의의 수퍼 프레임의 데이터를 참조하지 않고 인코딩되는, 멀티미디어 데이터 프로세서.
  88. 제81항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부이며, 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 프로세서는
    인트라-코딩된 상기 제2 부분들 중 하나 이상을 수신하도록 추가로 구성되며, 상기 하나 이상의 인트라-코딩된 제2 부분들은 상기 수퍼 프레임의 하나 이상의 제2 프레임들에 위치하는, 멀티미디어 데이터 프로세서.
  89. 제88항에 있어서,
    상기 프로세서는
    상기 멀티미디어 데이터의 제2 버전의 인트라-코딩된 제1 부분을 디코딩하고;
    상기 멀티미디어 데이터의 제1 버전의 하나 이상의 인트라-코딩된 제2 부분들을 디코딩하고; 그리고
    하나의 프레임으로 디스플레이되기 위해서 상기 디코딩된 제1 부분을 상기 하나 이상의 디코딩된 제2 부분들과 결합하도록 추가로 구성되는, 멀티미디어 데이터 프로세서.
  90. 제81항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부이며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 프로세서는
    인트라-코딩된 제1 프레임의 제2 부분들 중 하나 이상을 수신하도록 추가로 구성되는, 멀티미디어 데이터 프로세서.
  91. 제90항에 있어서,
    상기 프로세서는
    상기 멀티미디어 데이터의 제2 버전의 인트라-코딩된 제1 부분을 디코딩하고;
    상기 멀티미디어 데이터의 제1 버전의 하나 이상의 인트라-코딩된 제2 부분들을 디코딩하며; 그리고
    하나의 프레임으로 디스플레이되기 위해서 상기 디코딩된 제1 부분을 상기 하나 이상의 디코딩된 제2 부분들과 결합하도록 추가로 구성되는, 멀티미디어 데이터 프로세서.
  92. 제81항에 있어서,
    상기 프로세서는
    상기 수신된 멀티미디어 데이터의 제1 버전 및 제2 버전들에 관련된 정보를 수신하도록 추가로 구성되는, 멀티미디어 데이터 프로세서.
  93. 제81항에 있어서,
    상기 프로세서는
    제1 통신 링크에서 상기 제1 버전을 수신하고,
    제2 통신 링크에서 상기 제2 버전을 수신하도록 추가로 구성되는, 멀티미디어 데이터 프로세서.
  94. 제93항에 있어서,
    상기 제1 통신 링크 또는 상기 제2 통신 링크는 가상 채널을 포함하는, 멀티미디어 데이터 프로세서.
  95. 제81항에 있어서,
    상기 프로세서는 상기 제1 및 제2 버전들을 단일 통신 링크에서 수신하도록 추가로 구성되는, 멀티미디어 데이터 프로세서.
  96. 멀티미디어 데이터의 제1 부분의 인터-코딩된 제1 버전을 수신하고, 상기 멀티미디어 데이터의 제1 부분의 인트라-코딩된 제2 버전을 수신하는 수신기; 및
    상기 수신된 제1 및 제2 버전들을 선택적으로 디코딩하는 디코더를 포함하는, 멀티미디어 데이터 처리 장치.
  97. 제96항에 있어서,
    기준 데이터가 가용한지 여부를 결정하는 결정기 - 여기서, 상기 기준 데이터는 상기 제1 인터-코딩된 버전과 관련됨 - 를 더 포함하며, 그리고
    상기 디코더는 상기 결정에 기반하여 상기 제2 인트라-코딩된 버전을 선택적으로 디코딩하는, 멀티미디어 데이터 처리 장치.
  98. 제96항에 있어서,
    기준 데이터가 가용한지 여부를 결정하는 결정기 - 여기서, 상기 기준 데이터는 상기 제1 인터-코딩된 버전과 관련됨 - 를 더 포함하며, 그리고
    상기 디코더는 상기 기준 데이터가 가용하지 않다는 결정에 기반하여 상기 제2 인트라-코딩된 버전을 선택적으로 디코딩하는, 멀티미디어 데이터 처리 장치.
  99. 제98항에 있어서,
    채널 스위칭 명령을 검출하는 검출기를 더 포함하며, 그리고
    상기 결정기는 상기 채널 스위칭 명령 검출에 응답하여 기준 데이터가 가용하지 않다고 결정하는, 멀티미디어 데이터 처리 장치.
  100. 제98항에 있어서,
    상기 제1 인터-코딩된 버전이 의존하는 기준 데이터에서의 에러를 검출하는 검출기를 더 포함하며, 그리고
    상기 결정기는 이러한 에러 검출에 응답하여 기준 데이터가 가용하지 않다고 결정하는, 멀티미디어 데이터 처리 장치.
  101. 제96항에 있어서,
    상기 제1 부분은 멀티미디어 데이터의 수퍼 프레임의 제1 프레임을 포함하는, 멀티미디어 데이터 처리 장치.
  102. 제101항에 있어서,
    상기 수신기는 상기 수퍼 프레임의 제2 프레임을 수신하며, 상기 제2 프레임은 상기 제1 프레임을 뒤따르며, 선행하는 임의의 수퍼 프레임의 데이터를 참조하지 않고 인코딩되는, 멀티미디어 데이터 처리 장치.
  103. 제101항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부이며, 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 수신기는
    인트라-코딩된 상기 제2 부분들 중 하나 이상을 수신하며, 상기 하나 이상의 인트라-코딩된 제2 부분들은 상기 수퍼 프레임의 하나 이상의 제2 프레임들에 위치하는, 멀티미디어 데이터 처리 장치.
  104. 제103항에 있어서,
    상기 디코더는
    상기 멀티미디어 데이터의 제2 버전의 인트라-코딩된 제1 부분을 선택적으로 디코딩하고;
    상기 멀티미디어 데이터의 제1 버전의 하나 이상의 인트라-코딩된 제2 부분들을 선택적으로 디코딩하며; 그리고
    하나의 프레임으로 디스플레이되기 위해서 상기 디코딩된 제1 부분을 상기 하나 이상의 디코딩된 제2 부분들과 결합하도록 구성되는, 멀티미디어 데이터 처리 장치.
  105. 제96항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부이며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 수신기는
    인트라-코딩된 제1 프레임의 제2 부분들 중 하나 이상을 수신하는, 멀티미디어 데이터 처리 장치.
  106. 제105항에 있어서,
    상기 디코더는
    상기 멀티미디어 데이터의 제2 버전의 인트라-코딩된 제1 부분을 선택적으로 디코딩하고;
    상기 멀티미디어 데이터의 제1 버전의 하나 이상의 인트라-코딩된 제2 부분들을 선택적으로 디코딩하며; 그리고
    하나의 프레임으로 디스플레이되기 위해서 상기 디코딩된 제1 부분을 상기 하나 이상의 디코딩된 제2 부분들과 결합하도록 구성되는, 멀티미디어 데이터 처리 장치.
  107. 제96항에 있어서,
    상기 수신기는 상기 수신된 멀티미디어 데이터의 제1 버전 및 제2 버전들에 관련된 정보를 수신하는, 멀티미디어 데이터 처리 장치.
  108. 제96항에 있어서,
    상기 수신기는
    상기 제1 버전을 제1 통신 링크에서 수신하며; 그리고,
    상기 제2 버전을 제2 통신 링크에서 수신하는, 멀티미디어 데이터 처리 장치.
  109. 제108항에 있어서,
    상기 제1 통신 링크 또는 상기 제2 통신 링크는 가상 채널을 포함하는, 멀티미디어 데이터 처리 장치.
  110. 제96항에 있어서,
    상기 수신기는 상기 제1 및 제2 버전들을 단일 통신 링크에서 수신하는, 멀티미디어 데이터 처리 장치.
  111. 멀티미디어 데이터의 제1 부분의 인터-코딩된 제1 버전을 수신하고, 상기 멀티미디어 데이터의 제1 부분의 인트라-코딩된 제2 버전을 수신하는 수단; 및
    상기 수신된 제1 및 제2 버전들을 선택적으로 디코딩하는 수단을 포함하는, 멀티미디어 데이터 처리 장치.
  112. 제111항에 있어서,
    기준 데이터가 가용한지 여부를 결정하는 수단 - 여기서, 상기 기준 데이터는 상기 제1 인터-코딩된 버전과 관련됨 - 을 더 포함하며, 그리고
    상기 선택적인 디코딩 수단은 상기 결정에 기반하여 상기 제2 인트라-코딩된 버전을 디코딩하는, 멀티미디어 데이터 처리 장치.
  113. 제111항에 있어서,
    기준 데이터가 가용한지 여부를 결정하는 수단 - 여기서, 상기 기준 데이터는 상기 제1 인터-코딩된 버전과 관련됨 - 을 더 포함하며, 그리고
    상기 선택적인 디코딩 수단은 상기 기준 데이터가 가용하지 않다는 결정에 기반하여 상기 제2 인트라-코딩된 버전을 디코딩하는, 멀티미디어 데이터 처리 장치.
  114. 제113항에 있어서,
    채널 스위칭 명령을 검출하는 수단을 더 포함하며, 그리고
    상기 결정 수단은 상기 채널 스위칭 명령 검출에 응답하여 기준 데이터가 가용하지 않다고 결정하는, 멀티미디어 데이터 처리 장치.
  115. 제113항에 있어서,
    상기 제1 인터-코딩된 버전이 의존하는 기준 데이터에서의 에러를 검출하는 수단을 더 포함하며, 그리고
    상기 결정 수단은 이러한 에러 검출에 응답하여 기준 데이터가 가용하지 않다고 결정하는, 멀티미디어 데이터 처리 장치.
  116. 제111항에 있어서,
    상기 제1 부분은 멀티미디어 데이터의 수퍼 프레임의 제1 프레임을 포함하는, 멀티미디어 데이터 처리 장치.
  117. 제116항에 있어서,
    상기 수신 수단은 상기 수퍼 프레임의 제2 프레임을 수신하며, 상기 제2 프레임은 상기 제1 프레임을 뒤따르며, 선행하는 임의의 수퍼 프레임의 데이터를 참조하지 않고 인코딩되는, 멀티미디어 데이터 처리 장치.
  118. 제111항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부이며, 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 수신 수단은
    인트라-코딩된 상기 제2 부분들 중 하나 이상을 수신하며, 상기 하나 이상의 인트라-코딩된 제2 부분들은 상기 수퍼 프레임의 하나 이상의 제2 프레임들에 위치하는, 멀티미디어 데이터 처리 장치.
  119. 제118항에 있어서,
    상기 선택적인 디코딩 수단은
    상기 멀티미디어 데이터의 제2 버전의 인트라-코딩된 제1 부분을 선택적으로 디코딩하고;
    상기 멀티미디어 데이터의 제1 버전의 하나 이상의 인트라-코딩된 제2 부분들을 선택적으로 디코딩하며; 그리고
    하나의 프레임으로 디스플레이되기 위해서 상기 디코딩된 제1 부분을 상기 하나 이상의 디코딩된 제2 부분들과 결합하도록 구성되는, 멀티미디어 데이터 처리 장치.
  120. 제111항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부이며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 상기 수신 수단은
    인트라-코딩된 제1 프레임의 제2 부분들 중 하나 이상을 수신하는, 멀티미디어 데이터 처리 장치.
  121. 제120항에 있어서,
    상기 선택적인 디코딩 수단은
    상기 멀티미디어 데이터의 제2 버전의 인트라-코딩된 제1 부분을 선택적으로 디코딩하고;
    상기 멀티미디어 데이터의 제1 버전의 하나 이상의 인트라-코딩된 제2 부분들을 선택적으로 디코딩하며; 그리고
    하나의 프레임으로 디스플레이되기 위해서 상기 디코딩된 제1 부분을 상기 하나 이상의 디코딩된 제2 부분들과 결합하도록 구성되는, 멀티미디어 데이터 처리 장치.
  122. 제111항에 있어서,
    상기 수신 수단은 상기 수신된 멀티미디어 데이터의 제1 버전 및 제2 버전들에 관련된 정보를 수신하는, 멀티미디어 데이터 처리 장치.
  123. 제111항에 있어서,
    상기 수신 수단은
    상기 제1 버전을 제1 통신 링크에서 수신하며; 그리고,
    상기 제2 버전을 제2 통신 링크에서 수신하는, 멀티미디어 데이터 처리 장치.
  124. 제123항에 있어서,
    상기 제1 통신 링크 또는 상기 제2 통신 링크는 가상 채널을 포함하는, 멀티미디어 데이터 처리 장치.
  125. 제111항에 있어서,
    상기 수신 수단은 상기 제1 및 제2 버전들을 단일 통신 링크에서 수신하는, 멀티미디어 데이터 처리 장치.
  126. 실행시에 기계로 하여금
    멀티미디어 데이터의 제1 부분의 인터-코딩된 제1 버전을 수신하고;
    상기 멀티미디어 데이터의 제1 부분의 인트라-코딩된 제2 버전을 수신하고; 그리고
    상기 수신된 제1 및 제2 버전들을 선택적으로 디코딩하도록 하는 명령들을 포함하는, 기계 판독가능한 매체.
  127. 제126항에 있어서,
    실행시에 기계로 하여금
    기준 데이터가 가용한지 여부를 결정하고 - 여기서, 상기 기준 데이터는 상기 제1 인터-코딩된 버전과 관련됨 - ; 및
    상기 결정에 기반하여 상기 제2 인트라-코딩된 버전을 선택적으로 디코딩하도록 하는 명령들을 더 포함하는, 기계 판독가능한 매체.
  128. 제126항에 있어서,
    실행시에 기계로 하여금
    기준 데이터가 가용한지 여부를 결정하고 - 여기서, 상기 기준 데이터는 상기 제1 인터-코딩된 버전과 관련됨 - ; 및
    상기 기준 데이터가 가용하지 않다는 결정에 기반하여 상기 제2 인트라-코딩된 버전을 선택적으로 디코딩하도록 하는 명령들을 더 포함하는, 기계 판독가능한 매체.
  129. 제128항에 있어서,
    실행시에 기계로 하여금
    채널 스위칭 명령을 검출하고; 그리고
    상기 채널 스위칭 명령 검출에 응답하여 기준 데이터가 가용하지 않다고 결정하도록 하는 명령들을 더 포함하는, 기계 판독가능한 매체.
  130. 제128항에 있어서,
    실행시에 기계로 하여금
    상기 제1 인터-코딩된 버전이 의존하는 기준 데이터에서의 에러를 검출하고; 그리고
    이러한 에러 검출에 응답하여 기준 데이터가 가용하지 않다고 결정하도록 하는 명령들을 더 포함하는, 기계 판독가능한 매체.
  131. 제126항에 있어서,
    상기 제1 부분은 멀티미디어 데이터의 수퍼 프레임의 제1 프레임을 포함하는, 기계 판독가능한 매체.
  132. 제131항에 있어서,
    실행시에 기계로 하여금
    상기 수퍼 프레임의 제2 프레임을 수신하도록 하는 명령을 더 포함하며, 상기 제2 프레임은 상기 제1 프레임을 뒤따르며, 선행하는 임의의 수퍼 프레임의 데이터를 참조하지 않고 인코딩되는, 기계 판독가능한 매체.
  133. 제126항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부이며, 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 실행시에 기계로 하여금
    인트라-코딩된 상기 제2 부분들 중 하나 이상을 수신하도록 하는 명령을 더 포함하며, 상기 하나 이상의 인트라-코딩된 제2 부분들은 상기 수퍼 프레임의 하나 이상의 제2 프레임들에 위치하는, 기계 판독가능한 매체.
  134. 제133항에 있어서,
    실행시에 기계로 하여금
    상기 멀티미디어 데이터의 제2 버전의 인트라-코딩된 제1 부분을 선택적으로 디코딩하고;
    상기 멀티미디어 데이터의 제1 버전의 하나 이상의 인트라-코딩된 제2 부분들을 선택적으로 디코딩하고; 그리고
    하나의 프레임으로 디스플레이되기 위해서 상기 디코딩된 제1 부분을 상기 하나 이상의 디코딩된 제2 부분들과 결합하도록 하는 명령들을 더 포함하는, 기계 판독가능한 매체.
  135. 제126항에 있어서,
    상기 제1 부분은 하나 이상의 제2 부분들을 배제하는 전체 프레임의 일부이며, 상기 멀티미디어 데이터의 수퍼 프레임의 제1 프레임에 위치하며, 실행시에 기계로 하여금
    인트라-코딩된 제1 프레임의 제2 부분들 중 하나 이상을 수신하도록 하는 명령을 더 포함하는, 기계 판독가능한 매체.
  136. 제135항에 있어서,
    실행시에 기계로 하여금
    상기 멀티미디어 데이터의 제2 버전의 인트라-코딩된 제1 부분을 선택적으로 디코딩하고;
    상기 멀티미디어 데이터의 제1 버전의 하나 이상의 인트라-코딩된 제2 부분들을 선택적으로 디코딩하며; 그리고
    하나의 프레임으로 디스플레이되기 위해서 상기 디코딩된 제1 부분을 상기 하나 이상의 디코딩된 제2 부분들과 결합하도록 하는 명령들을 더 포함하는, 기계 판독가능한 매체.
  137. 제126항에 있어서,
    실행시에 기계로 하여금
    상기 수신된 멀티미디어 데이터의 제1 버전 및 제2 버전들에 관련된 정보를 수신하도록 하는 명령을 더 포함하는, 기계 판독가능한 매체.
  138. 제126항에 있어서,
    실행시에 기계로 하여금
    상기 제1 버전을 제1 통신 링크에서 수신하고; 그리고
    상기 제2 버전을 제2 통신 링크에서 수신하도록 하는 명령들을 더 포함하는, 기계 판독가능한 매체.
  139. 제138항에 있어서,
    상기 제1 통신 링크 또는 상기 제2 통신 링크는 가상 채널을 포함하는, 기계 판독가능한 매체.
  140. 제126항에 있어서,
    실행시에 기계로 하여금 상기 제1 및 제2 버전들을 단일 통신 링크에서 수신하도록 하는 명령을 더 포함하는, 기계 판독가능한 매체.
  141. 다수의 디지털 비디오 채널들 각각에 대해 인터-코딩된 디지털 비디오 프레임들을 전송하는 단계; 및
    상기 채널들 각각에 대해 채널 스위치 프레임들을 전송하는 단계를 포함하며,
    상기 채널 스위치 프레임들 중 적어도 하나는 상기 각 채널에 대한 인터-코딩된 프레임들 중 하나에 대응하는 인트라-코딩된 디지털 비디오 데이터를 포함하는, 디지털 비디오 데이터 전송 방법.
  142. 제141항에 있어서,
    상기 채널 스위치 프레임들 중 하나를 뒤따르는 인터-코딩된 프레임들 중 적 어도 하나는 상기 각 채널 스위치 프레임에 선행하는 인터-코딩된 프레임들에 대한 역방향 참조를 배제하도록 인코딩되는, 디지털 비디오 데이터 전송 방법.
  143. 제142항에 있어서,
    상기 채널 스위치 프레임들 중 하나를 뒤따르는 인터-코딩된 프레임들 중 적어도 하나는 상기 각 채널 스위치 프레임과 일치하는(coincide) 프레임을 참조하는, 디지털 비디오 데이터 전송 방법.
  144. 제143항에 있어서,
    상기 각 채널 스위치 프레임과 일치하는 프레임은 채널 스위칭이 요청되는 경우 요청된 채널에 대한 채널 스위치 프레임, 또는 채널 스위칭이 요청되지 않는 경우에는 현재 채널에 대한 인터-코딩된 프레임들 중 하나인, 디지털 비디오 데이터 전송 방법.
  145. 제141항에 있어서,
    초당 적어도 한번 상기 채널 스위치 프레임들을 주기적으로 전송하는 단계를 더 포함하는, 디지털 비디오 데이터 전송 방법.
  146. 제141항에 있어서,
    상기 채널 스위치 프레임들 중 적어도 하나는 관리(administrative) 프레임 내에 포함되는, 디지털 비디오 데이터 전송 방법.
  147. 제146항에 있어서,
    상기 관리 프레임은 보조 인헨스먼트 정보(SEI) 프레임을 포함하는, 디지털 비디오 데이터 전송 방법.
  148. 제141항에 있어서,
    상기 채널 스위치 프레임의 디지털 비디오 데이터는 다른 인트라-코딩된 프레임들에 비해 감소된 비트 레이트로 인코딩되는, 디지털 비디오 데이터 전송 방법.
  149. 제141항에 있어서,
    상기 인터-코딩된 프레임들 전송 단계는 예측(P) 프레임들을 전송하는 단계를 포함하며, 상기 채널 스위치 프레임은 P 프레임들 중 하나에 대응하는 인트라-인코딩된 컨텐츠를 포함하는 인트라(I) 프레임을 포함하는, 디지털 비디오 데이터 전송 방법.
  150. 다수의 디지털 비디오 채널들 각각에 대해 인터-코딩된 디지털 비디오 프레임들을 전송하는 수단; 및
    상기 채널들 각각에 대해 채널 스위치 프레임들을 전송하는 수단을 포함하 며,
    상기 채널 스위치 프레임들 중 적어도 하나는 상기 각 채널에 대한 인터-코딩된 프레임들 중 하나에 대응하는 인트라-코딩된 디지털 비디오 데이터를 포함하는, 디지털 비디오 데이터 전송 장치.
  151. 제150항에 있어서,
    상기 채널 스위치 프레임들 중 하나를 뒤따르는 인터-코딩된 프레임들 중 적어도 하나는 상기 각 채널 스위치 프레임에 선행하는 인터-코딩된 프레임들에 대한 역방향 참조를 배제하도록 인코딩되는, 디지털 비디오 데이터 전송 장치.
  152. 제151항에 있어서,
    상기 채널 스위치 프레임들 중 하나를 뒤따르는 인터-코딩된 프레임들 중 적어도 하나는 상기 각 채널 스위치 프레임과 일치하는(coincide) 프레임을 참조하는, 디지털 비디오 데이터 전송 장치.
  153. 제152항에 있어서,
    상기 각 채널 스위치 프레임과 일치하는 프레임은 채널 스위칭이 요청되는 경우 요청된 채널에 대한 채널 스위치 프레임, 또는 채널 스위칭이 요청되지 않는 경우에는 현재 채널에 대한 인터-코딩된 프레임들 중 하나인, 디지털 비디오 데이터 전송 장치.
  154. 제150항에 있어서,
    초당 적어도 한번 상기 채널 스위치 프레임들을 주기적으로 전송하는 수단을 더 포함하는, 디지털 비디오 데이터 전송 장치.
  155. 제150항에 있어서,
    상기 채널 스위치 프레임들 중 적어도 하나는 관리(administrative) 프레임 내에 포함되는, 디지털 비디오 데이터 전송 장치.
  156. 제155항에 있어서,
    상기 관리 프레임은 보조 인헨스먼트 정보(SEI) 프레임을 포함하는, 디지털 비디오 데이터 전송 장치.
  157. 제150항에 있어서,
    상기 채널 스위치 프레임의 디지털 비디오 데이터는 다른 인트라-코딩된 프레임들에 비해 감소된 비트 레이트로 인코딩되는, 디지털 비디오 데이터 전송 장치.
  158. 제150항에 있어서,
    상기 인터-코딩된 프레임들 전송 수단은 예측(P) 프레임들을 전송하는 수단 을 포함하며, 상기 채널 스위치 프레임은 P 프레임들 중 하나에 대응하는 인트라-인코딩된 컨텐츠를 포함하는 인트라(I) 프레임을 포함하는, 디지털 비디오 데이터 전송 장치.
  159. 다수의 디지털 비디오 채널들 각각에 대해 인터-코딩된 디지털 비디오 프레임들을 전송하도록 구성된 제1 전송기; 및
    상기 채널들 각각에 대해 채널 스위치 프레임들을 전송하도록 구성된 제2 전송기를 포함하며,
    상기 채널 스위치 프레임들 중 적어도 하나는 상기 각 채널에 대한 인터-코딩된 프레임들 중 하나에 대응하는 인트라-코딩된 디지털 비디오 데이터를 포함하는, 디지털 비디오 데이터 전송 장치.
  160. 디지털 비디오 데이터를 전송하기 위한 프로세서로서, 상기 프로세서는
    다수의 디지털 비디오 채널들 각각에 대해 인터-코딩된 디지털 비디오 프레임들을 전송하도록 구성되고; 그리고
    상기 채널들 각각에 대해 채널 스위치 프레임들을 전송하도록 구성되며,
    상기 채널 스위치 프레임들 중 적어도 하나는 상기 각 채널에 대한 인터-코딩된 프레임들 중 하나에 대응하는 인트라-코딩된 디지털 비디오 데이터를 포함하는, 프로세서.
  161. 디지털 비디오 데이터를 전송하기 위한 명령을 포함하는 기계 판독가능한 매체로서, 상기 명령은 실행시에 기계로 하여금
    다수의 디지털 비디오 채널들 각각에 대해 인터-코딩된 디지털 비디오 프레임들을 전송하고; 그리고
    상기 채널들 각각에 대해 채널 스위치 프레임들을 전송하도록 하는 명령들을 포함하며,
    상기 채널 스위치 프레임들 중 적어도 하나는 상기 각 채널에 대한 인터-코딩된 프레임들 중 하나에 대응하는 인트라-코딩된 디지털 비디오 데이터를 포함하는, 기계 판독가능한 매체.
  162. 제1 채널과 관련된 인터-코딩된 디지털 비디오 데이터를 포함하는 인터-코딩된 프레임들을 획득하는 단계;
    제2 채널로의 스위칭 요청을 수신하는 단계; 및
    상기 요청에 응답하여, 상기 제2 채널에 대한 인터-코딩된 프레임들 중 하나에 대응하는 인트라-코딩된 디지털 비디오 데이터를 포함하는 채널 스위치 프레임을 획득하는 단계를 포함하는, 디지털 비디오 데이터 수신 방법.
  163. 제162항에 있어서,
    상기 채널 스위치 프레임을 뒤따르는 인터-코딩된 프레임들 중 적어도 하나는 상기 각 채널 스위치 프레임에 선행하는 인터-코딩된 프레임들에 대한 역방향 참조를 포함하지 않는, 디지털 비디오 데이터 수신 방법.
  164. 제163항에 있어서,
    상기 채널 스위치 프레임들 중 하나를 뒤따르는 인터-코딩된 프레임들 중 적어도 하나는 상기 각 채널 스위치 프레임과 일치하는 프레임을 참조하는, 디지털 비디오 데이터 수신 방법.
  165. 제164항에 있어서,
    상기 각 채널 스위치 프레임과 일치하는 프레임은 상기 제2 채널로의 스위칭 요청이 요청되는 경우 상기 제2 채널에 대한 채널 스위치 프레임이며, 또는 상기 제2 채널로의 스위칭 요청이 요청되지 않는 경우에는 상기 제1 채널에 대한 인터-코딩된 프레임들 중 하나인, 디지털 비디오 데이터 수신 방법.
  166. 제162항에 있어서,
    상기 채널 스위치 프레임 획득 단계는 상이한 채널들에 대응하는 다수의 채널 스위치 프레임들 중 하나를 획득하는 단계를 포함하는, 디지털 비디오 데이터 수신 방법.
  167. 제162항에 있어서,
    상기 채널 스위치 프레임은 관리 프레임 내에 포함되는, 디지털 비디오 데이 터 수신 방법.
  168. 제167항에 있어서,
    상기 관리 프레임은 보조 인헨스먼트 정보(SEI) 프레임을 포함하는, 디지털 비디오 데이터 수신 방법.
  169. 제162항에 있어서,
    상기 채널 스위치 프레임의 디지털 비디오 데이터는 다른 인트라-코딩된 프레임들에 비해 감소된 비트 레이트로 인코딩되는, 디지털 비디오 데이터 수신 방법.
  170. 제162항에 있어서,
    상기 인터-코딩된 프레임은 예측(P) 프레임들을 포함하며, 상기 채널 스위치 프레임은 P 프레임들 중 하나에 대응하는 인트라-인코딩된 디지털 비디오 데이터를 포함하는 인트라(I) 프레임을 포함하는, 디지털 비디오 데이터 수신 방법.
  171. 제1 채널과 관련된 인터-코딩된 디지털 비디오 데이터를 포함하는 인터-코딩된 프레임들을 획득하는 수단;
    제2 채널로의 스위칭 요청을 수신하는 수단; 및
    상기 요청에 응답하여, 상기 제2 채널에 대한 인터-코딩된 프레임들 중 하나 에 대응하는 인트라-코딩된 디지털 비디오 데이터를 포함하는 채널 스위치 프레임을 획득하는 수단을 포함하는, 디지털 비디오 데이터 수신 장치.
  172. 제171항에 있어서,
    상기 채널 스위치 프레임을 뒤따르는 인터-코딩된 프레임들 중 적어도 하나는 상기 각 채널 스위치 프레임에 선행하는 인터-코딩된 프레임들에 대한 역방향 참조를 포함하지 않는, 디지털 비디오 데이터 수신 장치.
  173. 제172항에 있어서,
    상기 채널 스위치 프레임들 중 하나를 뒤따르는 인터-코딩된 프레임들 중 적어도 하나는 상기 각 채널 스위치 프레임과 일치하는 프레임을 참조하는, 디지털 비디오 데이터 수신 장치.
  174. 제173항에 있어서,
    상기 각 채널 스위치 프레임과 일치하는 프레임은 상기 제2 채널로의 스위칭 요청이 요청되는 경우 상기 제2 채널에 대한 채널 스위치 프레임이며, 또는 상기 제2 채널로의 스위칭 요청이 요청되지 않는 경우에는 상기 제1 채널에 대한 인터-코딩된 프레임들 중 하나인, 디지털 비디오 데이터 수신 장치.
  175. 제171항에 있어서,
    상기 채널 스위치 프레임 획득 수단은 상이한 채널들에 대응하는 다수의 채널 스위치 프레임들 중 하나를 획득하는 수단을 포함하는, 디지털 비디오 데이터 수신 장치.
  176. 제171항에 있어서,
    상기 채널 스위치 프레임은 관리 프레임 내에 포함되는, 디지털 비디오 데이터 수신 장치.
  177. 제176항에 있어서,
    상기 관리 프레임은 보조 인헨스먼트 정보(SEI) 프레임을 포함하는, 디지털 비디오 데이터 수신 장치.
  178. 제171항에 있어서,
    상기 채널 스위치 프레임의 디지털 비디오 데이터는 다른 인트라-코딩된 프레임들에 비해 감소된 비트 레이트로 인코딩되는, 디지털 비디오 데이터 수신 장치.
  179. 제171항에 있어서,
    상기 인터-코딩된 프레임은 예측(P) 프레임들을 포함하며, 상기 채널 스위치 프레임은 P 프레임들 중 하나에 대응하는 인트라-인코딩된 디지털 비디오 데이터를 포함하는 인트라(I) 프레임을 포함하는, 디지털 비디오 데이터 수신 장치.
  180. 제1 채널과 관련된 인터-코딩된 디지털 비디오 데이터를 포함하는 인터-코딩된 프레임들을 획득하도록 구성된 제1 획득 모듈;
    제2 채널로의 스위칭 요청을 수신하도록 구성된 수신기; 및
    상기 요청에 응답하여, 상기 제2 채널에 대한 인터-코딩된 프레임들 중 하나에 대응하는 인트라-코딩된 디지털 비디오 데이터를 포함하는 채널 스위치 프레임을 획득하도록 구성된 제2 획득 모듈을 포함하는, 디지털 비디오 데이터 수신 장치.
  181. 디지털 비디오 데이터를 수신하는 프로세서로서, 상기 프로세서는
    제1 채널과 관련된 인터-코딩된 디지털 비디오 데이터를 포함하는 인터-코딩된 프레임들을 획득하고;
    제2 채널로의 스위칭 요청을 수신하고; 그리고
    상기 요청에 응답하여, 상기 제2 채널에 대한 인터-코딩된 프레임들 중 하나에 대응하는 인트라-코딩된 디지털 비디오 데이터를 포함하는 채널 스위치 프레임을 획득하도록 구성되는, 프로세서.
  182. 디지털 비디오 데이터를 수신하기 위한 명령들을 포함하는 기계 판독가능한 매체로서, 상기 명령들은 실행시에 기계로 하여금
    제1 채널과 관련된 인터-코딩된 디지털 비디오 데이터를 포함하는 인터-코딩된 프레임들을 획득하고;
    제2 채널로의 스위칭 요청을 수신하며: 그리고
    상기 요청에 응답하여, 상기 제2 채널에 대한 인터-코딩된 프레임들 중 하나에 대응하는 인트라-코딩된 디지털 비디오 데이터를 포함하는 채널 스위치 프레임을 획득하도록 하는 명령을 포함하는, 기계 판독가능한 매체.
KR1020087009996A 2005-09-27 2006-09-27 채널 스위치 프레임 KR100967731B1 (ko)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US72134505P 2005-09-27 2005-09-27
US60/721,345 2005-09-27
US76048406P 2006-01-20 2006-01-20
US60/760,484 2006-01-20
US78944206P 2006-04-04 2006-04-04
US60/789,442 2006-04-04
US84629506P 2006-09-20 2006-09-20
US60/846,295 2006-09-20

Publications (2)

Publication Number Publication Date
KR20080066706A true KR20080066706A (ko) 2008-07-16
KR100967731B1 KR100967731B1 (ko) 2010-07-05

Family

ID=37807949

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087009996A KR100967731B1 (ko) 2005-09-27 2006-09-27 채널 스위치 프레임

Country Status (8)

Country Link
EP (3) EP2293571A1 (ko)
JP (2) JP4885964B2 (ko)
KR (1) KR100967731B1 (ko)
CN (1) CN101313584B (ko)
AR (1) AR061395A1 (ko)
AT (1) ATE515886T1 (ko)
TW (1) TWI343752B (ko)
WO (1) WO2007038695A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016072775A1 (ko) * 2014-11-06 2016-05-12 삼성전자 주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8340183B2 (en) 2007-05-04 2012-12-25 Qualcomm Incorporated Digital multimedia channel switching
KR101885258B1 (ko) * 2010-05-14 2018-08-06 삼성전자주식회사 비디오 신호의 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치
JP5331773B2 (ja) * 2010-10-14 2013-10-30 株式会社ソニー・コンピュータエンタテインメント 動画再生装置、情報処理装置および動画再生方法
US9706227B2 (en) * 2011-03-10 2017-07-11 Qualcomm Incorporated Video coding techniques for coding dependent pictures after random access
US9351016B2 (en) * 2012-04-13 2016-05-24 Sharp Kabushiki Kaisha Devices for identifying a leading picture
CN102740063A (zh) * 2012-06-06 2012-10-17 北京工业大学 视频图像传输方法、系统及终端

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6480541B1 (en) * 1996-11-27 2002-11-12 Realnetworks, Inc. Method and apparatus for providing scalable pre-compressed digital video with reduced quantization based artifacts
GB2366464A (en) * 2000-08-14 2002-03-06 Nokia Mobile Phones Ltd Video coding using intra and inter coding on the same data
JP4544879B2 (ja) * 2003-03-03 2010-09-15 パナソニック株式会社 画像符号化方法、画像符号化装置及びプログラム
JP2004350263A (ja) * 2003-04-28 2004-12-09 Canon Inc 画像処理装置及び画像処理方法
CN100568965C (zh) * 2003-06-16 2009-12-09 汤姆森许可贸易公司 实现压缩视频的快速信道改变的编码方法和设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016072775A1 (ko) * 2014-11-06 2016-05-12 삼성전자 주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
US10666940B2 (en) 2014-11-06 2020-05-26 Samsung Electronics Co., Ltd. Video encoding method and apparatus, and video decoding method and apparatus

Also Published As

Publication number Publication date
WO2007038695A2 (en) 2007-04-05
EP1929785B1 (en) 2011-07-06
EP2293572A1 (en) 2011-03-09
CN101313584B (zh) 2014-10-08
TW200742441A (en) 2007-11-01
AR061395A1 (es) 2008-08-27
JP2011182452A (ja) 2011-09-15
CN101313584A (zh) 2008-11-26
JP2009521824A (ja) 2009-06-04
EP1929785A2 (en) 2008-06-11
KR100967731B1 (ko) 2010-07-05
WO2007038695A3 (en) 2007-05-31
ATE515886T1 (de) 2011-07-15
JP5502798B2 (ja) 2014-05-28
JP4885964B2 (ja) 2012-02-29
EP2293571A1 (en) 2011-03-09
TWI343752B (en) 2011-06-11

Similar Documents

Publication Publication Date Title
US8612498B2 (en) Channel switch frame
KR101010881B1 (ko) 채널 전환 프레임을 이용하는 애플리케이션을 위한 시스템 및 방법
KR100960282B1 (ko) 비디오 부호화
CA2693389C (en) Simultaneous processing of media and redundancy streams for mitigating impairments
JP3923898B2 (ja) 画像符号化方法及び装置
US7839930B2 (en) Signaling valid entry points in a video stream
JP5502798B2 (ja) チャネル交換フレーム
JP2009524365A (ja) 無線映像通信における誤り耐性アルゴリズムの方法および装置
KR20110033240A (ko) 스케일러블 비디오 코딩(svc)디코딩에서 향상 계층의 패킷 분실에 기인한 오류 은폐를 위한 방법
KR101094677B1 (ko) 통신 네트워크에서 데이터를 인코딩하는 방법 및 시스템
US20130230108A1 (en) Method and device for decoding a bitstream
Carreira et al. A robust video encoding scheme to enhance error concealment of intra frames
Apostolopoulos Error-resilient video compression
JP2006325095A (ja) 動画像復号装置
Carreira et al. Error resilience analysis of motion vector prediction in HEVC

Legal Events

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

Payment date: 20130531

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140529

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160330

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170710

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20180329

Year of fee payment: 9