KR101436713B1 - 비대칭 스테레오 비디오에 대한 프레임 패킹 - Google Patents

비대칭 스테레오 비디오에 대한 프레임 패킹 Download PDF

Info

Publication number
KR101436713B1
KR101436713B1 KR1020127032680A KR20127032680A KR101436713B1 KR 101436713 B1 KR101436713 B1 KR 101436713B1 KR 1020127032680 A KR1020127032680 A KR 1020127032680A KR 20127032680 A KR20127032680 A KR 20127032680A KR 101436713 B1 KR101436713 B1 KR 101436713B1
Authority
KR
South Korea
Prior art keywords
picture
resolution
frame
asymmetric
asymmetric frame
Prior art date
Application number
KR1020127032680A
Other languages
English (en)
Other versions
KR20130030270A (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 KR20130030270A publication Critical patent/KR20130030270A/ko
Application granted granted Critical
Publication of KR101436713B1 publication Critical patent/KR101436713B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/161Encoding, multiplexing or demultiplexing different image signal components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • 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
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • 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/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • 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/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Abstract

코딩된 비디오 비트스트림의 비대칭 프레임은 좌측 뷰의 전체 해상도 픽쳐 및 우측 뷰의 감소된 해상도 픽쳐를 포함할 수도 있으며, 여기서 좌측 및 우측 뷰들은 3-차원 비디오 재생을 위한 스테레오 뷰 쌍을 형성한다. 일 예에서는, 장치는 제 1 해상도를 가지는 장면의 제 1 뷰의 제 1 픽쳐를 수신하고, 제 1 해상도에 상대적으로 감소된 해상도를 가지는 해당 장면의 제 2 뷰의 제 2 픽쳐를 수신하며, 제 1 픽쳐 및 제 2 픽쳐를 포함하는 비대칭 프레임을 형성하고, 그리고 비대칭 프레임을 인코딩하도록 구성되는 비디오 인코더를 포함한다. 이러한 방식에서, 다양한 성능들을 가지는 디코더들이 동일한 비트스트림을 수신할 수도 있으며, 비트스트림은 스테레오 뷰 쌍의 전체 해상도 픽쳐들을 가지는 비트스트림들보다 더 적은 대역폭을 소모할 수도 있다. 비트스트림은 서브샘플링된 픽쳐들을 가지는 비트스트림보다 더 양호한 품질을 가질 수도 있다.

Description

비대칭 스테레오 비디오에 대한 프레임 패킹{FRAME PACKING FOR ASYMMETRIC STEREO VIDEO}
본 출원은 2010 년 5 월 13 일에 출원된 미국 가출원 번호 제 61/334,253 호, 2010 년 7 월 21 일에 출원된 미국 가출원 번호 제 61/366,436 호, 및 2011 년 1 월 14 일에 출원된 미국 가출원 번호 제 61/433,110 호에 대한 우선권을 주장하는데, 이들 각각은 본 명세서에 그 전체로서 참조되어 통합된다.
본 개시물은 비디오 코딩에 관련된다.
디지털 비디오 성능들은 디지털 텔레비전들, 디지털 다이렉트 브로드캐스트 시스템들, 무선 브로드캐스트 시스템들, 개인휴대 정보 단말들 (personal digital assistants, PDAs), 랩톱 또는 데스크톱 컴퓨터들, 디지털 카메라들, 디지털 녹화 디바이스들, 디지털 미디어 재생기들, 비디오 게임 디바이스들, 비디오 게임 콘솔들, 셀룰러 또는 위성 무선 전화기들, 비디오 원격 화상 회의 디바이스들 (video teleconferencing devices) 등을 포함하는 광범위한 디바이스들에 통합될 수 있다. 디지털 비디오 디바이스들은 디지털 비디오 정보를 더 효율적으로 송신 및 수신하기 위한, MPEG-2, MPEG-4, ITU-T H.263 또는 ITU-T H.264/MPEG-4, 파트 10, 고급 비디오 코딩 (Advanced Video Coding, AVC) 에 의하여 정의되는 표준들 및 이러한 표준들의 확장판들에 설명되어 있는 것과 같은 비디오 압축 기술들을 구현한다.
비디오 압축 기술들은 공간적 예측 및/또는 시간적 예측을 수행하여 비디오 시퀀스에 내재된 리던던시를 감소시키거나 제거한다. 블록-기반 비디오 코딩에서는, 비디오 프레임 또는 슬라이스는 매크로블록들로 파티셔닝될 수도 있다. 각 매크로블록들은 더 파티셔닝될 수 있다. 인트라-코딩된 (I) 프레임 또는 슬라이스 내의 매크로블록들은 인접 매크로블록들에 대한 공간적 예측을 이용하여 인코딩된다. 인터-코딩된 (P 또는 B) 프레임 또는 슬라이스 내의 매크로블록들은 동일한 프레임 또는 슬라이스 내의 인접 매크로블록들에 대한 공간적 예측을 이용하거나 다른 기준 프레임들에 대한 시간적 예측을 이용할 수도 있다.
H.264/AVC 에 기반한 새로운 비디오 코딩 표준들을 개발하기 위한 노력들이 이루어져 왔다. 하나의 이러한 표준은 스케일링가능한 비디오 코딩 (scalable video coding, SVC) 표준인데, 이것은 H.264/AVC에 대한 스케일링가능한 확장이다. 다른 표준은 멀티-뷰 비디오 코딩 (multi-view video coding, MVC) 인데, 이것은 H.264/AVC 에 대한 멀티뷰 확장이 되었다. MVC 에 대한 결합된 초안 (joint draft) 은 JVT-AB204, "Joint Draft 8.0 on Multiview Video Coding", 28th JVT meeting, Hannover, Germany, July 2008, 에 설명되는데, 이것은 http://wftp3.itu.int/av-arch/jvt-site/2008_07_Hannover/JVT-AB204.zip 에서 구할 수 있다. AVC 표준의 일 버전은 JVT-AD007, "Editors' draft revision to ITU-T Rec. H.264 | ISO/IEC 14496-10 Advanced Video Coding - in preparation for ITU-T SG 16 AAP Consent (in integrated form)", 30th JVT meeting, Geneva, CH, Feb. 2009" 에 설명되는데, 이것은 http://wftp3.itu.int/av-arch/jvt-site/2009_01_Genova/JVT-AD007.zip 에서 구할 수 있다. JVT-AD007 문서는 AVC 사양에서 SVC 및 MVC 를 통합한다.
일반적으로, 본 개시물은 스테레오 비디오 데이터, 예컨대, 3-차원 (3D) 효과를 생성하기 위하여 이용되는 비디오 데이터를 지원하기 위한 기술들을 설명한다. 3-차원 효과를 비디오에서 생성하기 위하여, 장면의 두 개의 뷰들, 예컨대, 좌안 뷰 및 우안 뷰가 동시에 또는 거의 동시에 보여진다. 본 개시물의 기술들은 패킹된 프레임들을 가지는 비트스트림을 형성하는 것을 포함하는데, 여기서 패킹된 프레임은 한 장면의 두 뷰들에 대한 데이터를 가지는 단일 프레임에 대응한다. 특히, 본 개시물의 기술들은 장면의 한 뷰의 전체 해상도 프레임 및 해당 장면의 다른 뷰의 감소된 해상도 프레임을 가지는 패킹된 프레임을 인코딩하는 것을 포함한다. 감소된 해상도 프레임은 다른 뷰의 프레임에 대하여 인코딩될 수도 있다. 이러한 방법으로, 본 개시물은 또한 패킹된 프레임의 감소된 해상도 프레임에 대한 뷰-간 예측을 수행하기 위한 기술들을 제공한다.
일 예에서는, 방법은 제 1 해상도를 가지는 장면의 제 1 뷰의 제 1 픽쳐를 수신하는 단계, 제 1 해상도에 비하여 감소된 해상도를 가지는 해당 장면의 제 2 뷰의 제 2 픽쳐를 수신하는 단계, 제 1 해상도 픽쳐 및 감소된 해상도 픽쳐를 포함하는 비대칭 프레임을 형성하는 단계, 상기 비대칭 프레임을 인코딩하는 단계, 및 상기 비대칭 프레임을 출력하는 단계를 포함한다.
다른 예에서는, 비디오 데이터를 인코딩하기 위한 장치는 제 1 해상도를 가지는 장면의 제 1 뷰의 제 1 픽쳐를 수신하고, 상기 제 1 해상도에 비하여 감소된 해상도를 가지는 상기 장면의 제 2 뷰의 제 2 픽쳐를 수신하며, 제 1 픽쳐 및 제 2 픽쳐를 포함하는 비대칭 프레임을 형성하고, 그리고 상기 비대칭 프레임을 인코딩하도록 구성되는 비디오 인코더를 포함한다.
다른 예에서는, 장치는 제 1 해상도를 가지는 장면의 제 1 뷰의 제 1 픽쳐를 수신하기 위한 수단, 상기 제 1 해상도에 비하여 감소된 해상도를 가지는 상기 장면의 제 2 뷰의 제 2 픽쳐를 수신하기 위한 수단, 제 1 픽쳐 및 제 2 픽쳐를 포함하는 비대칭 프레임을 형성하기 위한 수단, 및 상기 비대칭 프레임을 인코딩하기 위한 수단을 포함한다.
다른 예에서는, 컴퓨터 프로그램 제품은, 실행되면 프로세서로 하여금 제 1 해상도를 가지는 장면의 제 1 뷰의 제 1 픽쳐를 수신하고, 상기 제 1 해상도에 비하여 감소된 해상도를 가지는 상기 장면의 제 2 뷰의 제 2 픽쳐를 수신하며, 제 1 픽쳐 및 제 2 픽쳐를 포함하는 비대칭 프레임을 형성하고, 상기 비대칭 프레임을 인코딩하며, 그리고 인코딩된 비대칭 프레임을 출력하게 하는 명령들을 저장하고 있는 컴퓨터-판독가능 저장 매체를 포함한다.
다른 예에서는, 방법은 장면의 제 1 뷰의 제 1 해상도 픽쳐 및 상기 장면의 제 2 뷰의 감소된 해상도 픽쳐를 포함하는 인코딩된 비대칭 프레임을 수신하는 단계로서, 상기 감소된 해상도 픽쳐는 상기 제 1 해상도에 비하여 감소된 해상도를 가지는, 상기 단계, 상기 비대칭 프레임을 디코딩하는 단계, 디코딩된 비대칭 프레임을 상기 제 1 해상도 픽쳐 및 상기 감소된 해상도 픽쳐로 분할하는 단계, 상기 감소된 해상도 픽쳐를 업샘플링하여 상기 제 1 해상도를 가지는 상기 장면의 제 2 픽쳐를 생성하는 단계, 및 상기 제 1 픽쳐 및 상기 제 2 픽쳐를 출력하는 단계로서, 상기 제 1 픽쳐 및 상기 제 2 픽쳐는 스테레오 이미지 쌍을 형성하는, 상기 단계를 포함한다.
다른 예에서는, 장치는, 장면의 제 1 뷰의 제 1 해상도 픽쳐 및 상기 장면의 제 2 뷰의 감소된 해상도 픽쳐를 포함하는 인코딩된 비대칭 프레임을 수신하고, 상기 비대칭 프레임을 디코딩하며, 디코딩된 비대칭 프레임을 상기 제 1 해상도 픽쳐 및 상기 감소된 해상도 픽쳐로 분할하고, 그리고 상기 감소된 해상도 픽쳐를 업샘플링하여 상기 제 1 해상도를 가지는 상기 장면의 제 2 픽쳐를 생성하도록 구성되는 비디오 디코더를 포함하며, 상기 감소된 해상도 픽쳐는 상기 제 1 해상도에 비하여 감소된 해상도를 가지고, 상기 제 1 디코딩된 픽쳐 및 상기 제 2 디코딩된 픽쳐는 스테레오 이미지 쌍을 형성한다.
다른 예에서는, 장치는, 장면의 제 1 뷰의 제 1 해상도 픽쳐 및 상기 장면의 제 2 뷰의 감소된 해상도 픽쳐를 포함하는 비대칭 프레임을 수신하기 위한 수단으로서, 상기 감소된 해상도 픽쳐는 상기 제 1 해상도에 비하여 감소된 해상도를 가지는 상기 수단, 상기 비대칭 프레임을 디코딩하기 위한 수단, 상기 디코딩된 비대칭 프레임을 상기 제 1 해상도 픽쳐 및 상기 감소된 해상도 픽쳐로 분할하기 위한 수단, 및 상기 감소된 해상도 픽쳐를 업샘플링하여 상기 제 1 해상도를 가지는 상기 장면의 제 2 픽쳐를 생성하기 위한 수단으로서, 상기 제 1 디코딩된 픽쳐 및 상기 제 2 디코딩된 픽쳐는 스테레오 이미지 쌍을 형성하는, 상기 수단을 포함한다.
다른 예에서는, 컴퓨터 프로그램 제품은, 실행되면 프로세서로 하여금 장면의 제 1 뷰의 제 1 해상도 픽쳐 및 상기 장면의 제 2 뷰의 감소된 해상도 픽쳐를 포함하는 비대칭 프레임을 수신하고, 상기 비대칭 프레임을 디코딩하며, 디코딩된 비대칭 프레임을 상기 제 1 해상도 픽쳐 및 상기 감소된 해상도 픽쳐로 분할하고, 상기 감소된 해상도 픽쳐를 업샘플링하여 상기 제 1 해상도를 가지는 상기 장면의 제 2 픽쳐를 생성하며, 그리고 상기 제 1 픽쳐 및 상기 제 2 픽쳐를 출력하도록 야기하되, 상기 감소된 해상도 픽쳐는 상기 제 1 해상도에 비하여 감소된 해상도를 가지고, 상기 제 1 픽쳐 및 상기 제 2 픽쳐는 스테레오 이미지 쌍을 형성하는 명령들을 저장하고 있는 컴퓨터-판독가능 저장 매체를 포함한다.
다른 예에서는, 방법은, 장면의 제 1 뷰의 제 1 픽쳐를 인코딩하여 제 1 해상도를 가지는 인코딩된 픽쳐를 생성하는 단계, 제 1 뷰의 기준 픽쳐에 대하여 상기 장면의 제 2 뷰의 제 2 픽쳐의 적어도 일부를 인코딩하여 제 1 해상도에 비하여 감소된 해상도를 가지는 인코딩된 픽쳐를 생성하는 단계, 및 인코딩된 제 1 해상도 픽쳐 및 인코딩된 감소된 해상도 픽쳐를 공통 비트스트림 내에서 출력하는 단계를 포함한다.
다른 예에서는, 장치는, 장면의 제 1 뷰의 제 1 픽쳐를 인코딩하여 제 1 해상도를 가지는 인코딩된 픽쳐를 생성하고, 제 1 뷰의 기준 픽쳐에 대하여 상기 장면의 제 2 뷰의 제 2 픽쳐의 적어도 일부를 인코딩하여 제 1 해상도에 비하여 감소된 해상도를 가지는 인코딩된 픽쳐를 생성하며, 그리고 인코딩된 제 1 해상도 픽쳐 및 인코딩된 감소된 해상도 픽쳐를 공통 비트스트림 내에서 출력하도록 구성되는 비디오 인코더를 포함한다.
다른 예에서는, 장치는 장면의 제 1 뷰의 제 1 픽쳐를 인코딩하여 제 1 해상도를 가지는 인코딩된 픽쳐를 생성하기 위한 수단, 제 1 뷰의 기준 프레임에 대하여 상기 장면의 제 2 뷰의 제 2 픽쳐의 적어도 일부를 인코딩하여 제 1 해상도에 비하여 감소된 해상도를 가지는 인코딩된 픽쳐를 생성하기 위한 수단, 및 인코딩된 제 1 해상도 픽쳐 및 인코딩된 감소된 해상도 픽쳐를 공통 비트스트림 내에서 출력하기 위한 수단을 포함한다.
다른 예에서는, 컴퓨터 프로그램 제품은, 실행되면 프로세서로 하여금 장면의 제 1 뷰의 제 1 픽쳐를 인코딩하여 제 1 해상도를 가지는 인코딩된 픽쳐를 생성하고, 제 1 뷰의 기준 픽쳐에 대하여 상기 장면의 제 2 뷰의 제 2 픽쳐의 적어도 일부를 인코딩하여 제 1 해상도에 비하여 감소된 해상도를 가지는 인코딩된 픽쳐를 생성하며, 그리고 인코딩된 제 1 해상도 픽쳐 및 인코딩된 감소된 해상도 픽쳐를 공통 비트스트림 내에서 출력하게 하는 명령들을 저장하고 있는 컴퓨터-판독가능 저장 매체를 포함한다.
다른 예에서는, 방법은, 공통 비트스트림으로부터 장면의 제 1 뷰의 제 1 해상도 인코딩된 픽쳐 및 상기 장면의 제 2 뷰의 감소된 해상도 인코딩된 픽쳐를 수신하되, 상기 감소된 해상도 인코딩된 픽쳐는 상기 제 1 해상도에 비하여 감소된 해상도를 가지는 단계, 상기 제 1 해상도 인코딩된 픽쳐를 디코딩하여 제 1 디코딩된 픽쳐를 생성하는 단계, 상기 제 1 뷰의 기준 픽쳐에 비하여 감소된 해상도 인코딩된 픽쳐의 적어도 일부를 디코딩하는 단계, 감소된 해상도 픽쳐를 업샘플링하여 제 1 해상도를 가지는 상기 장면의 제 2 디코딩된 픽쳐를 생성하는 단계, 및 제 1 디코딩된 픽쳐 및 제 2 디코딩된 픽쳐를 출력하는 단계로서, 제 1 디코딩된 픽쳐 및 제 2 디코딩된 픽쳐는 스테레오 이미지 쌍을 형성하는 단계를 포함한다.
다른 예에서는, 장치는 공통 비트스트림으로부터 장면의 제 1 뷰의 제 1 해상도 인코딩된 픽쳐 및 상기 장면의 제 2 뷰의 감소된 해상도 인코딩된 픽쳐를 수신하고, 상기 제 1 해상도 인코딩된 픽쳐를 디코딩하여 제 1 디코딩된 픽쳐를 생성하며, 상기 제 1 뷰의 기준 픽쳐에 비하여 감소된 해상도 인코딩된 픽쳐의 적어도 일부를 디코딩하고, 감소된 해상도 픽쳐를 업샘플링하여 제 1 해상도를 가지는 상기 장면의 제 2 디코딩된 픽쳐를 생성하며, 그리고 제 1 디코딩된 픽쳐 및 제 2 디코딩된 픽쳐를 출력하도록 구성되는 비디오 디코더를 포함하는데, 상기 감소된 해상도 인코딩된 픽쳐는 상기 제 1 해상도에 비하여 감소된 해상도를 가지고, 제 1 디코딩된 픽쳐 및 제 2 디코딩된 픽쳐는 스테레오 이미지 쌍을 형성한다.
다른 예에서는, 장치는, 공통 비트스트림으로부터 장면의 제 1 뷰의 제 1 해상도 인코딩된 픽쳐 및 상기 장면의 제 2 뷰의 감소된 해상도 인코딩된 픽쳐를 수신하기 위한 수단으로서, 상기 감소된 해상도 인코딩된 픽쳐는 상기 제 1 해상도에 비하여 감소된 해상도를 가지는 수단, 상기 제 1 해상도 인코딩된 픽쳐를 디코딩하여 제 1 디코딩된 픽쳐를 생성하기 위한 수단, 상기 제 1 뷰의 기준 픽쳐에 비하여 감소된 해상도 인코딩된 픽쳐의 적어도 일부를 디코딩하기 위한 수단, 감소된 해상도 픽쳐를 업샘플링하여 제 1 해상도를 가지는 상기 장면의 제 2 디코딩된 픽쳐를 생성하기 위한 수단, 및 제 1 디코딩된 픽쳐 및 제 2 디코딩된 픽쳐를 출력하기 위한 수단으로서, 제 1 디코딩된 픽쳐 및 제 2 디코딩된 픽쳐는 스테레오 이미지 쌍을 형성하는 수단을 포함한다.
다른 예에서는, 컴퓨터 프로그램 제품은, 실행되면 프로세서로 하여금 공통 비트스트림으로부터 장면의 제 1 뷰의 제 1 해상도 인코딩된 픽쳐 및 상기 장면의 제 2 뷰의 감소된 해상도 인코딩된 픽쳐를 수신하고, 상기 제 1 해상도 인코딩된 픽쳐를 디코딩하여 제 1 디코딩된 픽쳐를 생성하며, 상기 제 1 뷰의 기준 픽쳐에 비하여 감소된 해상도 인코딩된 픽쳐의 적어도 일부를 디코딩하고, 감소된 해상도 픽쳐를 업샘플링하여 제 1 해상도를 가지는 상기 장면의 제 2 디코딩된 픽쳐를 생성하며, 그리고 제 1 디코딩된 픽쳐 및 제 2 디코딩된 픽쳐를 출력하게 하는 명령들을 저장하고 있는 컴퓨터-판독가능 저장 매체를 포함하는데, 상기 제 1 디코딩된 픽쳐 및 제 2 디코딩된 픽쳐는 스테레오 이미지 쌍을 형성한다.
하나 이상의 예들은 첨부 도면들 아래의 발명을 실시하기 위한 구체적인 내용에서 설명된다. 다른 다른 피쳐들, 목적들, 및 장점들은 발명을 실시하기 위한 구체적인 내용 및 도면들로부터, 그리고 특허청구범위로부터 명백해 질 것이다.
도 1 은 한 장면의 두 개의 대응하는 뷰들로부터의 픽쳐들을 포함하는 비대칭 패킹된 프레임 (asynchronous packed frames) 을 형성하기 위한 기술들을 이용할 수도 있는 예시적인 비디오 인코딩 및 디코딩 시스템을 예시하는 블록도이다.
도 2 는 비대칭 패킹된 프레임들을 생성하기 위한 기술들을 구현할 수도 있는 비디오 인코더의 일 예를 예시하는 블록도 이다.
도 3 은 비디오 디코더의일 예를 예시하는데, 이것은 인코딩된 비디오 시퀀스를 디코딩한다.
도 4 는 비디오 인코더에 의하여 통합되어 상-하향 프레임 패킹 구조를 가지는 비대칭 패킹된 프레임을 형성하는 좌안 뷰 및 우안 뷰의 픽쳐들을 예시하는 개념적인 도면이다.
도 5 는 비디오 인코더에 의하여 통합되어 측면향 프레임 패킹 구조를 가지는 비대칭 패킹된 프레임을 형성하는 좌안 뷰 및 우안 뷰의 픽쳐들을 예시하는 개념적인 도면이다.
도 6 은 필드로서 인코딩된 감소된 해상도 픽쳐를 포함하는 비대칭 패킹된 프레임을 형성하기 위한 예시적인 프로세스를 예시하는 개념적인 도면이다.
도 7 은 비대칭 패킹된 프레임 내에 포함되기 위한 감소된 해상도 인코딩된 픽쳐를 생성하기 위한 픽쳐의 필드 인코딩을 예시하는 개념적인 도면이다.
도 8 은 비대칭 패킹된 프레임의 감소된 해상도 인코딩된 픽쳐의 블록의 뷰-간 예측을 예시하는 개념적인 도면이다.
도 9 는 두 개의 상이한 뷰들의 두 픽쳐들을 인코딩하고 이 픽쳐들을 통합하여 비대칭 패킹된 프레임을 형성하기 위한 예시적인 방법을 예시하는 흐름도이다.
도 10 은 비대칭 프레임을 디코딩하기 위한 예시적인 방법을 예시하는 흐름도이다.
도 11 은 본 개시물의 기술들에 따르는 프레임 필드 인터리빙 코딩 (frame field interleaved coding) 을 수행하기 위한 예시적인 방법을 예시하는 흐름도이다.
도 12 는 본 개시물의 기술들에 따르는 프레임 필드 인터리빙 코딩된 비트스트림을 디코딩 하기 위한 예시적인 방법을 예시하는 흐름도이다.
일반적으로, 본 개시물은 스테레오 비디오 데이터, 예를 들어 3-차원 효과를 생성하기 위하여 이용되는 비디오 데이터를 지원하기 위한 기술들에 관련된다. 비디오에서 3-차원 효과를 생성하기 위하여, 한 장면의 두 개의 뷰들, 예를 들어 좌안 뷰 및 우안 뷰가 동시에 또는 거의 동시에 표시된다. 장면의 좌안 뷰 및 우안 뷰에 대응하는, 동일한 장면의 두 픽쳐들은, 시청자의 좌안 및 우안 사이의 수평 오프셋을 나타내는 다소 상이한 수평 포지션들로부터 캡쳐될 수도 있다. 이러한 두 개 픽쳐들을 동시에 또는 거의 동시에 디스플레이하여 좌안 뷰 픽쳐는 시청자의 좌안에 의하여 인식되고 우안 뷰 픽쳐는 시청자의 우안에 의하여 인식되도록 함으로써, 시청자는 3-차원 비디오 효과를 경험할 수도 있다.
본 개시물은 패킹된 프레임들을 포함하는 비트스트림을 형성하기 위한 기술들을 제공한다. 패킹된 프레임은 한 장면의 상이한 뷰들에 대응하는 두 개의 픽쳐들에 대한 데이터를 가지는 비디오 데이터의 단일 프레임에 대응할 수도 있다. 특히, 본 개시물의 기술들은 한 장면의 한 뷰의 전체 해상도 픽쳐 및 해당 장면의 다른 뷰의 감소된 해상도 픽쳐를 가지는 패킹된 프레임을 인코딩하는 것을 포함한다. 어떤 장면의 제 1 뷰의 전체 해상도 픽쳐 및 해당 장면의 제 2 의 상이한 뷰의 감소된 해상도 픽쳐를 포함하는 패킹된 프레임은 비대칭 패킹된 프레임, 또는 간단히 비대칭 프레임이라고 지칭될 수도 있다.
일반적으로, "픽쳐" 및 "프레임" 이라는 용어는 상호 교환가능하도록 이용될 수도 있다. 본 개시물은 일반적으로 픽쳐를 뷰의 샘플로서 지칭한다. 본 개시물은 일반적으로 프레임을 하나 이상의 픽쳐들을 포함하는 것으로서 지칭하는데, 이것은 특정 시간 인스턴스를 나타내는 액세스 유닛으로서 코딩될 것이다. 이에 상응하여, 프레임은 뷰의 샘플 (즉, 단일 픽쳐) 에 대응하거나, 또는 패킹된 프레임들의 경우에는 다중 뷰들로부터의 샘플들 (즉, 두 개 이상의 픽쳐들) 에 대응할 수도 있다.
일 예로서, 두 개의 뷰 픽쳐들은 상하향 포맷을 가지는 프레임으로서 패킹될 수도 있다. 이러한 예에서는, 한 개의 뷰 픽쳐가 다른 것의 위에 배치될 수도 있다. 각각의 픽쳐는 동일한 너비인 w 개의 픽셀들을 가질 수도 있다. 전체 해상도 픽쳐는 h 개 픽셀들의 높이를 가질 수도 있으며, 감소된 해상도 픽쳐는 h/2 픽셀들의 높이를 가질 수도 있다. 또 다른 예로서, 2 뷰 픽쳐들은 측면향 포맷을 가지는 한 프레임으로서 패킹될 수도 있다. 이러한 예에서는, 2 뷰 픽쳐들은 서로의 옆에 배치될 수도 있다. 각각의 픽쳐는 h 개 픽셀들의 동일한 높이를 가질 수도 있다. 전체 해상도 픽쳐는 w 개 픽셀들의 너비를 가질 수도 있으며, 감소된 해상도 픽쳐는 w/2 픽셀들의 너비를 가질 수도 있다.
이러한 방식으로 비대칭 프레임들을 형성하는 것은 수 개의 장점들을 제공할 수도 있다. 예를 들어, 동일한 비트스트림은 3-차원 비디오 데이터를 제공하도록 구성된 디바이스들 및 오직 2 차원 비디오 데이터에만 한정된 디바이스들에게 전송될 수도 있다. 3-차원 비디오 성능부 (capable) 디바이스들은 비대칭 프레임들을 구성 뷰들 (constituent views) 로 분할하며, 감소된 해상도 뷰를 업샘플링하고, 그리고 두 개 뷰들을 동시에 또는 거의 동시에 디스플레이할 수도 있다. 2 차원 비디오 성능부 디바이스들은 감소된 해상도 뷰를 제거하고 전체 해상도 뷰만을 디스플레이할 수도 있다. 이러한 방식으로, 비디오 콘텐츠 제공자, 예컨대, 네트워크-기반의 서버 또는 브로드캐스터는 오직 하나의 비트스트림만을 형성할 필요가 있고, 다양한 성능들을 가지는 디바이스들은 각각 동일한 비트스트림을 수신할 수도 있다. 더욱이, 비트스트림은 무시가능한 주관적인 품질 열화를 도입하면서, 두 개 이상의 뷰들 각각의 전체 해상도 픽쳐들을 포함하는 비트스트림보다 더 적은 대역폭을 요구할 수도 있다.
이에 상응하여, 본 개시물의 기술들은 3-차원 비디오 데이터를 제공할 수 없는 레거시 디바이스들과의 역방향 호환가능성을 지원할 수도 있다. 두 개의 서브-샘플링된 픽쳐들을 포함하는 대칭적 패킹 프레임들을 수신할 수 있고 디코딩할 수 있는 디바이스들과는 달리, 본 개시물의 기술들에 따라서 비대칭 패킹된 프레임을 수신하는 비대칭 패킹된 프레임들을 수신하는 디바이스들은 전체 해상도 픽쳐 및 감소된 해상도 픽쳐를 수신할 수도 있다. 이에 상응하여, 디바이스들은 단지 2 차원 비디오 프리젠테이션을 생성하기 위해서 픽쳐를 업샘플링할 필요가 없다. 더욱이, 본 개시물의 기술들에 따르는 비트스트림은 (예컨대, 비대칭 패킹된 프레임들을 포함하는) 3-차원 비디오 데이터를 위한 두 개의 전체 해상도 픽쳐들을 가지는 비트스트림보다 더 적은 대역폭을 소모할 수도 있다.
몇 가지 예들에서는, 감소된 해상도 프레임은 다른 뷰의 프레임에 대하여 인코딩될 수도 있다. 즉, 인코더는 비대칭 패킹된 프레임들의 감소된 해상도 픽쳐들에 대한 뷰-간 예측을 수행할 수도 있다. 본 개시물은 감소된 해상도 픽쳐들을 필드로서 인코딩하고 감소된 해상도 픽쳐들을 뷰-간 인코딩하기 위하여 변위 벡터들을 이용하기 위한 기술들을 설명한다. 이러한 방식으로, 본 개시물은 또한 비대칭 패킹된 프레임의 감소된 해상도 픽쳐에 대한 뷰-간 예측을 수행하기 위한 기술들을 제공한다. 본 개시물은 더 나아가 프레임 필드 인터리빙 (frame field interleaved) 코딩 기술들을 제공하는데, 여기서는 한 뷰의 픽쳐들이 프레임들로서 코딩될 수도 있고, 다른 뷰의 픽쳐들은 필드들로서 코딩될 수도 있으며, 두 뷰들의 프레임 픽쳐들 및 필드 픽쳐들이 공통 비트스트림 내에서 인터리빙될 수도 있다. 각 뷰의 픽쳐들은 동일한 비트스트림의 이산, 독립형 액세스 유닛들을 형성할 수도 있다.
본 개시물은 또한 프레임 패킹 타입을 네트워크 추상화 계층 (network abstraction layer, NAL) 에서, 예를 들어 NAL 유닛들의 보충적 확장 정보 (supplemental enhancement information, SEI) 메시지들 내에서 시그널링하기 위한 기술들을 제공한다. 네트워크 추상화 계층 (NAL) 유닛들은 예를 들어, SEI 메시지들을 이용하여 코딩된 오디오 및 비디오 데이터를 포함 및/또는 설명할 수도 있다. H.264/AVC (진보된 비디오 코딩) 의 예에서, 코딩된 비디오 세그먼트들은 NAL 유닛들 내에 조직화되는데, 이들은 "네트워크-친화적" 비디오 표현 어드레싱 애플리케이션들, 예컨대 비디오 화상 회의, 저장, 브로드캐스트, 또는 스트리밍을 제공한다. NAL 유닛들은 비디오 코딩 계층 (Video Coding Layer, VCL) NAL 유닛들 및 비-VCL NAL 유닛들로서 범주화될 수 있다. VCL 유닛들은 코어 압축 엔진으로부터의 출력을 포함할 수도 있으며, 블록, 매크로블록, 및/또는 슬라이스 레벨 데이터를 포함할 수도 있다. 다른 NAL 유닛들은 비-VCL NAL 유닛들일 수도 있다. 몇 가지 예들에서는, 일반적으로는 주된 코딩된 픽쳐 (primary coded picture) 로서 제공되는, 하나의 시간 인스턴스 내의 코딩된 픽쳐는 액세스 유닛 내에 포함될 수도 있는데, 이것은 하나 이상의 NAL 유닛들을 포함할 수도 있다.
몇 가지 예들에서는, 본 개시물의 기술들은 H.264/AVC 코덱들 또는 진보된 비디오 코딩 (AVC), 예컨대 스케일링가능한 비디오 인코딩 (SVC), 멀티뷰 비디오 코딩 (MVC), 또는 H.264/AVC 의 다른 확장들에 기반한 코덱들에 적용될 수도 있다. 이러한 코덱들은 SEI 메시지들이 액세스 유닛과 연관된다면 SEI 메시지들을 식별하도록 구성될 수도 있는데, 여기서 SEI 메시지는 ISO 베이스 매체들 파일 포맷 또는 MPEG-2 시스템들 비트스트림 내의 액세스 유닛 내에 캡슐화될 수도 있다. 이러한 기술들은 또한 미래의 코딩 표준들, 예컨대, H.265/HEVC (high efficiency video coding) 에도 적용될 수도 있다.
SEI 메시지들은 VCL NAL 유닛들로부터의 코딩된 픽쳐들 샘플들을 디코딩하는데 필요하지 않은 정보를 포함할 수 있지만, 디코딩, 디스플레이, 에러 탄력성 (error resilience), 및 다른 목적들에 관련된 프로세스들을 도울 수도 있다. SEI 메시지들은 비-VCL NAL 유닛들 내에 포함될 수도 있다. SEI 메시지들은 몇 개의 표준 사양들의 규범적인 부분이며, 따라서 표준 규격의 디코더 구현에 언제나 강제적이지는 않다. SEI 메시지들은 시퀀스 레벨 SEI 메시지들 또는 픽쳐 레벨 SEI 메시지들일 수도 있다. 몇 개의 시퀀스 레벨 정보는 SEI 메시지들, 예컨대 MVC 내의 SVC 및 뷰 스케일가능성 정보 SEI 메시지들의 예에서의 스케일가능성 정보 SEI 메시지들 내에 포함될 수도 있다. 이러한 예시적인 SEI 메시지들은 정보를, 예컨대 동작 포인트들의 추출 및 동작 포인트들의 특징들 상에서 운반할 수도 있다.
H.264/AVC 는 프레임 패킹 SEI 메시지를 제공하는데, 이것은 두 개의 픽쳐들, 예를 들어 장면의 좌측 뷰 및 우측 뷰를 포함하는 프레임에 대한 프레임 패킹 타입을 표시하는 코덱-레벨 메시지이다. 이러한 방식으로, H.264/AVC 는 좌측 뷰 및 우측 뷰의 두 픽쳐들의 하나의 픽쳐 내로의 인터리빙 및 이러한 픽쳐들을 하나의 비디오 시퀀스로 코딩하는 것을 지원한다. 프레임 패킹 SEI 메시지는 "Information technology - Coding of audio-visual objects - Part 10: Advanced Video Coding, AMENDMENT 1: Constrained baseline profile, stereo high profile and frame packing arrangement SEI message", N10703, MPEG of ISO/IEC JTC1/SC29/WG11, Xian, China, Oct. 2009 에서 설명되는데, 이것은 H.264/AVC 표준의 최근 버전에 통합된다.
이러한 SEI 메시지 내에서는, 두 개의 프레임들의 공간적 인터리빙을 위하여 다양한 타입의 들프레임 패킹 방법들이 지원된다. 지원되는 인터리빙 방법들은 체커보드 (checkerboard), 열 인터리빙, 행 인터리빙, 측면향, 상하향, 및 체커보드 상향변환 (upconversion) 을 가지는 측면향을 포함한다. 본 개시물은 추가적인 프레임 패킹 타입들, 예컨대 비대칭 프레임 패킹 구조들을 지원하기 위한 기술들을 제공한다. 특히, 본 개시물은 비대칭 패킹이 특정 프레임에 대하여 인에이블되었는지 여부 및 만일 그러하다면 비대칭 프레임이 상하향 또는 측면향 중 어느 것으로 패킹되었는지를 표시하는 수정된 프레임 패킹 SEI 메시지를 제공한다. 예를 들어, 프레임 패킹 SEI 메시지는 동일한 프레임 내의 두 개의 뷰들에 대한 픽쳐들이 전체 해상도 픽쳐 아래의 감소된 해상도 픽쳐로써 배열되는지 또는 프레임 내의 전체 해상도 픽쳐의 우측으로 배열되는지 여부를 표시할 수도 있다. 디코더는 이 정보를 이용하여, 프레임이 비대칭 프레임인지 여부를 결정하고 그리고 비대칭 프레임을 두 개의 뷰들의 구성 픽쳐들로 적합하게 분할할 수도 있다.
본 개시물은 몇 개의 예들에서 프레임이 H.264/AVC 에 대하여 SEI 메시지 내의 비대칭 패킹된 프레임인지 여부를 시그널링하기 위한 기술들을 포함한다. 일 예로서, 인코더는 프레임이 비대칭 패킹된 프레임이라고 독립 SEI 메시지 내에서 시그널링할 수도 있다. 다른 예로서, 인코더는 비대칭 패킹된 프레임이라고 프레임 패킹 구조 SEI 메시지의 수정된 버전 내에서 시그널링할 수도 있다. 인코더도 또한 비디오 사용성 정보 (video usability information, VUI) 내에서 해당 비대칭 패킹된 프레임에 대한 종횡비를 시그널링하여 해당 비대칭 패킹된 프레임에 대한 패킹 구조를 표시할 수도 있다. 예를 들어, 인코더는 4:3 (또는 H.264/AVC 사양 내의 표 E-1 의 비특정 값들 중 하나) 의 종횡비를 시그널링함으로써 측면향 패킹 배열을 표시할 수도 있다. 다른 예로서, 인코더는 3:4 (또는 역시 H.264/AVC 사양 내의 표 E-1 의 비특정 값들 중 하나) 의 종횡비를 시그널링함으로써 상하 패킹 배열을 표시할 수도 있다.
감소된 해상도 픽쳐의 서브-샘플링 및 업-샘플링을 위한 방법들은 임의의 특정 기술들로 한정되지 않는다는 것이 이해되어야 한다. 예를 들기 위한 목적에서, 본 개시물은 일반적으로 수평 또는 수직 다운-샘플링 및 업샘플링을 일반적으로 설명한다. 그러나, 5 점형 (quincunx) (즉, 체커보드) 샘플링도 역시 이용될 수도 있다.
또한, 본 개시물은 비대칭 패킹된 프레임들을 포함하는 비트스트림을 고선명 멀티미디어 인터페이스 (HDMI) 상에서 전달하기 위한 기술들을 제공한다. 이러한 방식으로, 본 개시물은 3-차원 비디오 인터페이스, 예컨대 HDMI 가 하나 이상의 프레임들에서 비대칭 패킹을 가지는 뷰 이미지들을 수락할 수도 있는 수단이 되는 기술들을 제공한다.
도 1 은 하나의 장면의 두 개의 대응하는 뷰로부터의 픽쳐들을 포함하는 비대칭 패킹된 프레임들을 형성하기 위한 기술들을 이용할 수도 있는 예시적인 비디오 인코딩 및 디코딩 시스템 (10) 을 예시하는 블록도이다. 도 1 에 도시된 바와 같이, 시스템 (10) 은 인코딩된 비디오를 통신 채널 (16) 을 통하여 목적지 디바이스 (14) 로 송신하는 소스 디바이스 (12) 를 포함한다. 소스 디바이스 (12) 및 목적지 디바이스 (14) 는 광범위한 디바이스들, 예컨대 고정식 또는 모바일 컴퓨팅 디바이스들, 셋-톱 박스들, 게임 콘솔들, 디지털 미디어 재생기들 등 중 임의의 것을 포함할 수도 있다. 몇 가지 경우들에서, 소스 디바이스 (12) 및 목적지 디바이스 (14) 는 무선 핸드셋들, 소위 셀룰러 또는 위성 무선 전화기들, 또는 통신 채널 (16) 상에서 비디오 정보를 통신할 수 있는 임의의 무선 디바이스들을 포함할 수도 있는데, 이 경우에는 통신 채널 (16) 은 무선이다.
그러나, 비대칭 패킹된 프레임들의 형성에 관련한 이 개시물의 기술들은 무선 애플리케이션들 또는 세팅들에 반드시 한정되는 것은 아니다. 예를 들어, 이러한 기술들은 공중파 텔레비전 브로드캐스트들, 케이블 텔레비전 송신들, 위성 텔레비전 송신들, 인터넷 비디오 송신들, 저장 매체 상에 인코딩되는 인코딩된 디지털 비디오, 또는 다른 시나리오들에도 적용될 수도 있다. 따라서, 통신 채널 (16) 은 인코딩된 비디오 데이터의 송신에 적합한 무선 또는 유선 매체의 모든 조합을 포함할 수도 있다.
도 1 의 예에서, 소스 디바이스 (12) 는 비디오 소스 (18), 비디오 인코더 (20), 변조기/복조기 (모뎀) (22) 및 송신기 (24) 를 포함한다. 목적지 디바이스 (14) 는 수신기 (26), 모뎀 (28), 비디오 디코더 (30), 및 디스플레이 디바이스 (32) 를 포함한다. 이 개시물에 따르면, 소스 디바이스 (12) 의 비디오 인코더 (20) 는, 비대칭 패킹된 프레임들, 예를 들어 각각이 하나의 장면의 상이한 뷰로부터 나온 두 개의 픽쳐들에 대한 코딩된 데이터를 포함하는 프레임들을 포함하는 비트스트림을 형성하기 위한 기술들을 적용하도록 구성될 수도 있는데, 여기서 픽쳐들 중 하나는 전체 해상도를 가지고 다른 픽쳐는 감소된 해상도, 예를 들어 전체 해상도 프레임의 해상도의 절반을 가진다. 게다가, 비디오 인코더 (20) 는 감소된 해상도 프레임을 뷰-간 인코딩하도록 구성될 수도 있다. 다른 예들에서, 소스 디바이스 및 목적지 디바이스는 다른 구성 요소들 또는 장치들을 포함할 수도 있다. 예를 들어, 소스 디바이스 (12) 는 외부 카메라와 같은 외부 비디오 소스 (18) 로부터 비디오 데이터를 수신할 수도 있다. 이와 유사하게, 목적지 디바이스 (14) 는 내장된 디스플레이 디바이스를 포함하는 대신에 외부 디스플레이 디바이스와 인터페이싱할 수도 있다.
도 1 의 예시된 시스템 (10) 은 단지 한 예일 뿐이다. 비대칭 패킹된 프레임들을 생성하고 비대칭 패킹된 프레임들을 구성 뷰들로 분리하기 위한 기술들은 임의의 디지털 비디오 인코딩 및/또는 디코딩 장치에 의해서 수행될 수도 있다. 비록 일반적으로 이 개시물의 기술들이 비디오 인코딩 디바이스에서 수행되지만, 이 기술들은 전형적으로는 "코덱 (CODEC)" 이라고 불리는 비디오 인코더/디코더에 의해서도 수행될 수 있다. 더 나아가, 이 개시물의 기술들의 일정한 양태들은 비디오 전처리 프로세서 (preprocessor) 또는 비디오 후처리 프로세서, 예컨대 파일 캡슐화 유닛, 파일 역캡슐화 유닛, 비디어 다중화기, 또는 비디오 역다중화기에 의해서도 의해서도 수행될 수 있다. 소스 디바이스 (12) 및 목적지 디바이스 (14) 는 소스 디바이스 (12) 가 목적지 디바이스 (14) 로 송신될 코딩된 비디오 데이터를 생성하는 이러한 코딩 디바이스들의 예들에 불과하다. 몇 가지 예들에서, 디바이스들 (12, 14) 은 실질적으로 대칭적인 방식으로 동작함으로써, 디바이스들 (12, 14) 각각이 비디오 인코딩 및 디코딩 구성 요소들을 포함하도록 할 수도 있다. 그러므로, 시스템 (10) 은, 예를 들어 비디오 스트리밍, 비디오 재생, 비디오 브로드캐스팅, 비디오 게임, 또는 화상 통화 (video telephony) 를 위한 단방향 또는 양방향 비디오 송신을 디바이스들 (12, 14) 사이에서 지원할 수도 있다.
소스 디바이스 (12) 의 비디오 소스 (18) 는 비디오 캡쳐 디바이스, 예컨대 비디오 카메라, 예전에 캡쳐된 비디오를 포함하는 비디오 저장소, 및/또는 비디오 콘텐츠 제공자로부터의 비디오 피드 (video feed) 를 포함할 수도 있다. 다른 대안으로서, 비디오 소스 (18) 는 소스 비디오로서 컴퓨터 그래픽-기반 데이터를 생성하거나, 실시간 비디오, 저장된 비디오, 및 컴퓨터에 의하여 생성된 비디오의 조합을 생성할 수 있다. 몇 가지 경우들에서, 비디오 소스 (18) 가 비디오 카메라라면, 소스 디바이스 (12) 및 목적지 디바이스 (14) 는 소위 카메라 전화기들 또는 비디오 전화기들을 형성할 수도 있다. 그러나, 위에서 언급된 바와 같이, 이 개시물은 내에서 설명되는 기술들은 일반적인 비디오 코딩에 적용될 수도 있으며, 모바일 또는 일반적으로 비-모바일 컴퓨팅 디바이스들에 의하여 실행되는 무선 및/또는 유선 애플리케이션들에 적용될 수도 있다. 임의의 경우에서, 캡쳐되거나, 사전-캡쳐되거나, 또는 컴퓨터에 의하여 생성된 비디오는 비디오 인코더 (20) 에 의하여 인코딩될 수 있다.
비디오 소스 (18) 는 두 개 이상 뷰들로 부터의 픽쳐들을 비디오 인코더 (20) 로 제공할 수도 있다. 동일한 장면의 두 개 픽쳐들은 다소 상이한 수평 포지션들로부터 동시에 또는 거의 동시에 캡쳐됨으로써, 두 픽쳐들이 3-차원 효과를 생성하는데 이용될 수 있도록 할 수도 있다. 대안적으로는, 비디오 소스 (18) (또는 소스 디바이스 (12) 의 유닛) 은 깊이 정보 또는 격차 정보 (disparity information) 을 이용하여 제 1 뷰의 제 1 픽쳐로부터 제 2 뷰의 제 2 픽쳐를 생성할 수도 있다. 깊이 또는 격차 정보는 제 1 뷰를 캡쳐하는 카메라에 의하여 결정될 수도 있으며, 또는 제 1 뷰 내의 데이터로부터 연산될 수도 있다.
MPEG-C part-3 은 비디오 스트림 내의 픽쳐에 대한 깊이 맵을 포함하는 규정된 포맷을 제공한다. 사양은 "Text of ISO/IEC FDIS 23002-3 Representation of Auxiliary Video and Supplemental Information," ISO/IEC JTC 1/SC 29/WG 11, MPEG Doc, N8768, Marrakech, Morocoo, January 2007 에 설명된다. MPEG-C Part 3 에서는, 보조 비디오는 깊이 맵 또는 시차 (parallax) 맵일 수 있다. 깊이 맵을 나타낼 때, MPEG-C Part-3 은 깊이 맵의 각 깊이 값 및 해상도를 나타내는데 이용되는 비트들의 개수의 관점에서 탄력성을 제공할 수도 있다. 예를 들어, 맵은 해당 맵에 의하여 기술되는 이미지의 너비의 4 분의 1 이고 높이의 절반일 수도 있다. 맵은 단색 비디오 샘플로서 코딩될 수도 있으며, 예를 들어 휘도 성분만을 가지는 H.264/AVC 비트스트림 내에서 코딩될 수도 있다. 대안적으로는, 맵은 H.264/AVC 에서 정의된 바와 같이 보조 비디오 데이터로서 코딩될 수도 있다. 이 개시물의 콘텍스트에서, 깊이 맵 또는 시차 맵은 주된 비디오 데이터와 동일한 해상도를 가질 수도 있다. 비록 H.264/AVC 사양이 현재로는 깊이 맵을 코딩하기 위한 보조 비디오 데이터의 용법을 규정하지 않지만, 이 개시물의 기술들은 이러한 깊이 맵 또는 시차 맵을 이용하기 위한 기술들과 결합되어 이용될 수도 있다.
그러면, 인코딩된 비디오 정보는 통신 표준에 따라서 모뎀 (22) 에 의하여 변조될 수 있고, 송신기 (24) 를 통하여 목적지 디바이스 (14) 로 송신될 수도 있다. 모뎀 (22) 은 다양한 믹서들, 필터들, 증폭기들 또는 신호 변조를 위하여 설계된 다른 구성 요소들을 포함할 수도 있다. 송신기 (24) 는 데이터를 송신하기 위하여 설계된, 증폭기들, 필터들, 및 하나 이상의 안테나들을 포함하는 회로들을 포함할 수도 있다.
목적지 디바이스 (14) 의 수신기 (26) 는 채널 (16) 상에서 정보를 수신하며, 모뎀 (28) 은 이 정보를 복조한다. 역시, 비디오 인코딩 프로세스는 본 명세서에서 설명되는 기술들 중 하나 이상을 구현하여 하나의 뷰의 전체 해상도 픽쳐 및 다른 장면의 감소된 해상도 픽쳐를 가지는 비대칭 패킹된 프레임을 형성할 수도 있다.
채널 (16) 상에서 통신된 정보는 비디오 인코더 (20) 에 의하여 정의되며 비디오 디코더 (30) 에 의해서도 이용되는 구문 정보 (syntax information) 를 포함할 수도 있는데, 구문 정보는 매크로블록들 및 다른 코딩된 유닛들, 예를 들어 GOP들을 설명하는 구문 요소들을 포함한다. 이에 상응하여, 비디오 디코더 (30) 는 비대칭 패킹된 프레임을 해당 장면들의 구성 픽쳐들로 언패킹하고, 픽쳐들을 디코딩하며, 그리고 감소된 해상도 픽쳐를 전체 해상도로 업샘플링한다. 디스플레이 디바이스 (32) 는 사용자에게 디코딩된 비디오 데이터를 디스플레이할 수도 있다.
디스플레이 디바이스 (32) 는 광범위한 디스플레이 디바이스들, 예컨대 음극선관 (CRT), 액정 디스플레이 (LCD), 플라즈마 디스플레이, 유기 발광 다이오드 (OLED) 디스플레이, 또는 다른 타입들의 디스플레이 디바이스 중 임의의 것을 포함할 수도 있다. 디스플레이 디바이스 (32) 는 비대칭 패킹된 프레임으로부터의 두 개의 픽쳐들을 동시에 또는 거의 동시에 디스플레이할 수도 있다. 예를 들어, 디스플레이 디바이스 (32) 는 두 개의 뷰들을 동시에 또는 거의 동시에 디스플레이할 수 있는 입체적 3-차원 디스플레이 디바이스를 포함할 수도 있다.
사용자는 신속하게 그리고 교번적으로 좌안 및 우안 렌즈들을 셔터링함으로써, 디스플레이 디바이스 (32) 가 신속하게 능동식 안경과 동기되어 좌안 뷰 및 우안 뷰 사이에서 스위칭할 수도 있도록 하는 능동식 안경을 착용할 수도 있다. 대안적으로는, 디스플레이 디바이스 (32) 는 두 개 뷰들을 동시에 디스플레이할 수도 있고, 그리고 사용자는 뷰들을 필터링하여 적합한 뷰들이 사용자의 눈들로 지나가도록 야기하는 수동식 안경 (예를 들어, 편광 렌즈들을 가지는 안경) 을 착용할 수도 있다. 예로서, 디스플레이 디바이스 (32) 는 자동입체적 (autostereoscopic) 디스플레이를 포함할 수도 있는데, 이러한 디스플레이에 대해서는 안경이 필요하지 않다.
몇 가지 예들에서는, 모뎀 (28) 및 비디오 디코더 (30) 는 별개의 디바이스들 내에 포함될 수도 있다. 별개의 디바이스들은 고선명 멀티미디어 인터페이스 (HDMI) 에 의하여 커플링될 수도 있다. 이러한 개시물은, 몇 가지 예들에서는, HDMI 를 비대칭 패킹된 프레임들의 전달을 지원하도록 수정하도록 제안한다. HDMI 는 3-차원 비디오 포맷들을 HDMI 사양의 버전 1.4 의 Appendix H 에서 제공하는데, 이것은 다음에서 이용가능하다. 이러한 사양은 3-차원 비디오 데이터를 하나의 프레임, 예컨대, 3D_Structure 필드 내에 패킹하기 위한 다양한 포맷들을 지원한다. 본 개시물의 기술들에 따르면, 디바이스들은 HDMI 버전 1.4 에 의하여 이미 제공된 그러한 패킹 구조들에 추가하여 HDMI 를 통해서 비대칭 패킹된 프레임들을 교환할 수도 있다.
일 예로서, 3D_Structure 필드는 프레임이 H.264/AVC 내의 상하향 구조와 유사하지만 서브-샘플링이 없는 프레임 패킹 포맷을 가진다는 것을 표시하는 값을 포함할 수도 있다. 몇 개의 공백 영역이 HDMI에 대한 프레임 패킹 포맷을 가지는 프레임 내에 존재할 수도 있다. 다른 예로서, 3D_Structure 필드는 프레임이 필드 교번 포맷을 가진다는 것을 표시하는 값을 포함할 수도 있는데, 이것은 좌안-뷰 이미지 및 우안-뷰 이미지가 대응하는 프레임의 필드들이라는 것을 표시한다. 다른 예로서, 3D_Structure 필드는 프레임이 측면향 전체 포맷 (side-by-side full format) 을 가진다는 것을 표시하는 값을 포함할 수도 있는데, 이것은 뷰들이 나란히 배열되며 서브-샘플링되지 않는다는 것을 표시한다.
또 다른 예로서, 3D_Structure 필드는 프레임이 측면향 절반 포맷 (side-by-side half format) 을 가진다는 것을 표시하는 값을 가질 수도 있는데, 이것은 뷰들이 절반 해상도로써 서브- 샘플링되고 나란히 배열된다는 것을 표시한다. 측면향 절반 포맷이 인에이블되면, 서브샘플링 및 포지션 정보가 역시 예를 들어 3D_Ext_Data 필드에서 시그널링될 수도 있다. 프레임은 서브-샘플링의 두 개의 타입들인: 수평 서브-샘플링 또는 오점형 (예컨대, 체커보드) 행렬을 지원할 수도 있다. 포지션 정보는 서브-샘플링된 좌측 및 우측 뷰들의 위상 시프트를 표시하는 데이터를 제공할 수도 있다. HDMI 또한 텍스쳐 이미지 더하기 깊이 이미지 정보, 및 그래픽 표현을 가지는 비디오 콘텐츠를 지원한다.
위에서 언급된 바와 같이, 본 개시물의 기술들은 비대칭 패킹된 프레임들을 지원하도록 HDMI를 수정하는 것을 포함한다. 예를 들어, 이러한 개시물에 따르면, 디바이스는 HDMI 데이터의 3D_Structure 필드의 값을 프레임이 비대칭 패킹된 프레임이라는 것을 표시하도록 설정할 수도 있다. 3D_Structure 필드는 프레임이 스테레오 쌍을 형성하는 전체 해상도 픽쳐 및 감소된 해상도 픽쳐를 포함한다는 것을 표시하고, 그리고 이러한 픽쳐들이 측면향으로 또는 상-하향으로 배열된다는 것을 표시하는 값을 포함할 수도 있다.
도 1 의 예에서, 통신 채널 (16) 은 임의의 무선 또는 유선 통신 매체, 예컨대 무선 주파수 (radio frequency, RF) 스펙트럼 또는 하나 이상의 물리적 송신선들, 또는 무선 및 유선 매체들의 임의의 조합을 포함할 수도 있다. 통신 채널 (16) 은 패킷-기반 네트워크, 예컨대 근거리 통신망, 광역 통신망, 또는 인터넷과 같은 글로벌 네트워크의 일부를 구성할 수도 있다. 통신 채널 (16) 은 일반적으로 임의의 적합한 통신 매체를 나타내거나 소스 디바이스 (12) 로부터 목적지 디바이스 (14) 로 비디오 데이터를 송신하기 위한, 무선 또는 유선 매체의 임의의 적합한 조합을 포함하는 상이한 통신 매체들의 조합을 나타낸다. 통신 채널 (16) 은 라우터들, 스위치들, 기지국들, 또는 소스 디바이스 (12) 로부터 목적지 디바이스 (14) 로의 통신을 용이하게 하는데 유용할 수 있는 모든 다른 장비를 포함할 수도 있다.
비디오 인코더 (20) 및 비디오 디코더 (30) 는 비디오 압축 표준, 예컨대 ITU-T H.264 표준에 따라서 동작할 수도 있는데, 이 표준은 또는 MPEG 4, Part 10, 고급 비디오 코딩 (Advanced Video Coding, AVC) 이라고도 지칭된다. 그러나, 본 개시물의 기술들은 임의의 특정한 코딩 표준에 한정되지 않는다. 다른 예들은 MPEG-2 및 ITU-T H.263 을 포함한다. 비록 도 1 에는 도시되지 않지만, 몇 가지 양태들에서는 비디오 인코더 (20) 및 비디오 디코더 (30) 는 각각 오디오 인코더 및 디코더와 통합될 수도 있으며, 그리고 공통 데이터 스트림 또는 개별 데이터 스트림 내의 오디오 및 비디오 양자의 인코딩을 핸들링하기 위한 적절한 MUX-DEMUX 유닛들, 또는 다른 하드웨어 및 소프트웨어를 포함할 수도 있다. 적용가능하다면, MUX-DEMUX 유닛들은 ITU H.223 멀티플렉서 프로토콜 또는 다른 프로토콜들, 예컨대 사용자 데이터그램 프로토콜 (user datagram protocol, UDP) 을 따를 수 있다.
ITU-T H.264/MPEG-4 (AVC) 표준은, 조인트 비디오 팀 (Joint Video Team, JVT) 이라고 알려진 총체적 파트너십의 결과로서, ITU-T 비디오 코딩 전문가 그룹 (Video Coding Experts Group, VCEG) 및 ISO/IEC 동화상 전문가 그룹 (Moving Picture Experts Group, MPEG) 에 의하여 제정되었다. 몇 가지 양태들에서, 이 개시물에서 설명되는 기술들은 일반적으로 H.264 표준을 따르는 디바이스들에 적용될 수도 있다. H.264 표준은 ITU-T 연구 그룹에 의한, 2005 년 3 월자의 ITU-T 추천 H.264 인 범용 음향시각적 서비스를 위한 고급 비디오 코딩 (Advanced Video Coding for generic audiovisual services) 에서 설명되며, 이것은 본 명세서에서 H.264 표준 또는 H.264 사양, 또는 H.264/AVC 표준 또는 사양이라고 지칭될 수도 있다. 조인트 비디오 팀 (Joint Video Team, JVT) 은 H.264/MPEG-4 AVC 에 대한 확장들에 관해 계속 연구 중이다.
비디오 인코더 (20) 및 비디오 디코더 (30) 각각은 다양한 적합한 인코더 회로 중 임의의 것으로서 구현될 수도 있는데, 예컨대 하나 이상의 마이크로프로세서들, 디지털 신호 프로세서들 (DSP들), 주문형 집적회로들 (ASIC들), 필드 프로그램가능 게이트 어레이들 (FPGA들), 이산 로직, 소프트웨어, 하드웨어, 펌웨어, 또는 이들의 조합으로서 구현될 수도 있다. 비디오 인코더 (20) 및 비디오 디코더 (30) 각각은 하나 이상의 인코더들 또는 디코더들 내에 포함될 수도 있는데, 이들 중 하나는 개별 카메라, 컴퓨터, 모바일 디바이스, 가입자 디바이스, 브로드캐스트 디바이스, 셋탑 박스, 서버 등 내에서 조합된 인코더/디코더 (CODEC) 의 일부로서 통합될 수도 있다.
통상적으로, 비디오 시퀀스는 일련의 비디오 프레임들을 포함한다. 픽쳐들의 그룹 (GOP) 은 일반적으로 일련의 하나 이상의 비디오 프레임들을 포함한다. GOP 는 GOP 내에 포함되는 프레임들의 개수를 설명하는 구문 데이터를 GOP의 헤더 내에, GOP의 하나 이상의 프레임들의 헤더 내에, 또는 다른 곳에 포함할 수도 있다. 각 프레임은 개별 프레임에 대한 인코딩 모드를 설명하는 프레임 구문 데이터를 포함할 수도 있다. 비디오 인코더 (20) 는 통상적으로 비디오 데이터를 인코딩하기 위하여 개별 비디오 프레임들 내의 비디오 블록들에 관해 동작한다. 비디오 블록은 매크로블록 또는 매크로블록의 파티션에 대응될 수도 있다. 비디오 블록들은 고정 크기들 또는 변동하는 크기들을 가질 수도 있으며, 특정된 코딩 표준에 따라서 크기가 다를 수도 있다. 각 비디오 프레임은 복수 개의 슬라이스들을 포함할 수도 있다. 각 슬라이스는 복수 개의 매크로블록들을 포함할 수도 있으며, 이들은 서브-블록들이라고도 불리는 파티션들로 배열될 수도 있다.
일 예로서, ITU-T H.264 표준은 다양한 블록 크기들, 예컨대 루마 성분 (luma component) 들에 대해서는 16x16, 8x8, 또는 4x4, 및 크로마 성분 (chroma component) 들에 대해서는 8x8 에서의 인트라 예측을 지원하고, 그리고 다양한 블록 크기들, 예컨대 루마 성분들에 대해서는 16x16, 16x8, 8x16, 8x8, 8x4, 4x8 및 4x4 그리고 크로마 성분들에 대해서는 대응하는 스케일링된 크기들에서의 인터 예측을 지원한다. 본 개시물에서, "NxN" 및 "N 곱하기 N" 이란 수직 및 수평 차원들을 이용하여 블록의 픽셀 차원들을 가리키기 위하여 상호 교환 가능하도록 사용될 수도 있으며, 예를 들어 16x16 픽셀들 또는 16 곱하기 16 픽셀들이라고 사용될 수 있다. 일반적으로, 16x16 블록은 수직 방향으로 16 개의 픽셀들을 (y = 16) 그리고 수평 방향으로 16 개의 픽셀들 (x = 16) 을 가질 것이다. 이와 유사하게, NxN 블록은 일반적으로 수직 방향으로 N개의 픽셀들을 그리고 수평 방향으로 N개의 픽셀들을 가지는데, 여기서 N은 음이 아닌 정수 값을 나타낸다. 한 블록 내의 픽셀들은 행들 및 열들로 배열될 수 있다. 게다가, 블록들은 반드시 수평 방향에 수직 방향과 동일한 개수의 픽셀들을 가질 필요가 없다. 예를 들어, 블록들은 NxM 픽셀들을 가질 수 있는데, 여기서 M 은 N과 동일할 필요가 없다.
16 곱하기 16 보다 작은 블록 크기들은 16 곱하기 16 매크로블록의 파티션들이라고 불릴 수도 있다. 비디오 블록들은, 예를 들어 이산 여현 변환 (discrete cosine transform, DCT), 정수 변환 (integer transform), 웨이브릿 변환 (wavelet transform), 또는 이와 개념적으로 유사한 변환을 코딩된 비디오 블록들 및 예측 비디오 블록들 간의 픽셀차들을 나타내는 잔차 비디오 블록 데이터 (residual video block data) 에 적용한 후에, 픽셀 도메인에서 픽셀 데이터의 블록들 또는 변환 도메인 (transform domain) 에서 변환 계수들의 블록들을 포함할 수도 있다. 몇 가지 경우에서는, 비디오 블록들은 변환 도메인 내에서 양자화된 변환 계수들의 블록들을 포함할 수도 있다.
비디오 블록들이 작아질수록 더 나은 해상도를 제공할 수 있으며, 이것은 고도의 상세함 (detail) 를 포함하는 비디오 프레임의 위치들에 이용될 수도 있다. 일반적으로, 매크로블록들 및 때때로 서브-블록들이라고 불리는 다양한 파티션들이 비디오 블록들인 것으로 간주될 수도 있다. 또한, 슬라이스는 복수 개의 비디오 블록들, 예컨대 매크로블록들 및/또는 서브-블록들인 것으로 간주될 수도 있다. 각 슬라이스는 비디오 프레임의 독립적으로 디코딩될 수 있는 단위일 수도 있다. 또는, 프레임들 스스로가 디코딩가능한 단위들일 수도 있으며, 또는 프레임의 다른 부분들이 디코딩가능한 단위들인 것으로 정의될 수도 있다. "코딩된 단위" 또는 "코딩 단위" 라는 용어는, 비디오 프레임의 임의의 독립적으로 디코딩가능한 유닛 단위, 예컨대 전체 프레임, 프레임의 슬라이스, 시퀀스라고도 지칭되는 픽쳐들의 그룹 (GOP), 또는 적용가능한 코딩 기술들에 따라서 정의되는 다른 독립적으로 디코딩가능한 단위를 지칭할 수도 있다.
본 개시물의 기술들에 따르면, 비디오 인코더 (20) 는 두 개의 뷰의 수신된 비디오 데이터로부터 비대칭 패킹된 프레임들을 형성할 수도 있다. 즉, 비디오 인코더 (20) 는 두 개의 뷰들의 로 (raw) 이미지 데이터를, 예를 들어, 비디오 소스 (18) 로부터 수신할 수도 있다. 일반적으로, 두 개의 뷰들은 픽쳐들의 시퀀스를 포함함으로써, 한 뷰의 각 픽쳐에 대하여, 제 1 뷰의 픽쳐와 스테레오 쌍을 형성하는 다른 뷰의 픽쳐가 존재하도록 할 수도 있다. 스테레오 쌍은 일반적으로, 동시에 또는 거의 동시에 디스플레이될 때 3-차원 비디오 효과를 생성하는 두 개의 픽쳐들에 대응한다. 스테레오 쌍을 형성하는 픽쳐들은 현재 픽쳐가 함께 스테레오 쌍을 형성하는 다른 뷰의 대응하는 픽쳐를 표시하는 기술적 데이터, 예컨대 타임스탬프들을 포함할 수도 있다.
어떠한 경우에서도, 비디오 인코더 (20) 는 제 1 뷰의 픽쳐를 정상적으로, 예를 들어, ITU-T H.264/AVC 인코딩 표준들 또는 MPEG-2, MPEG-4, H.265 등과 같은 다른 인코딩 표준에 따라서 인코딩할 수도 있다. 비디오 인코더 (20), 또는 소스 디바이스 (12) 의 비디오 사전처리 유닛 (이것은 프로세서, 프로세싱 유닛, ASIC, DSP, FPGA, 또는 비디오 소스 (18) 및 비디오 인코더 (20) 사이에 커플링된 다른 프로세싱 회로부를 포함할 수도 있다) 은 제 1 뷰의 인코딩된 픽쳐와 스테레오 쌍을 형성하는 제 2 뷰의 픽쳐를 공간적으로 다운샘플링할 수도 있다. 공간적 다운샘플링은, 예를 들어 수직 및/또는 수평 픽셀 해상도를 감소시킴으로써 공간 해상도들을 감소시키는 것을 포함할 수도 있다. 일 예에서는, 비디오 인코더 (20) 는 픽쳐의 수직 픽셀 해상도를 절반으로 감소시킬 수도 있다.
그러면, 비디오 인코더 (20) 는 다른 뷰의 감소된 해상도 픽쳐를 인코딩할 수도 있다. 몇 가지 예들에서는, 비디오 인코더 (20) 는 감소된 해상도 픽쳐를 인트라-예측 모드 (예컨대, I-픽쳐로서) 또는 인터-예측 모드 (예컨대, P-픽쳐 또는 B-픽쳐로서) 에서 인코딩할 수도 있다. 이러한 방식으로, 비디오 인코더 (20) 는 감소된 해상도 픽쳐를 비디오 인코더 (20) 에 의해서 생성된 비트스트림 내에서 더 일찍 (디코딩-시간 순서에서) 발생하는 동일한 뷰 내의 다른 픽쳐들에 대해서 인코딩할 수도 있다. 몇 가지 예들에서는, 비디오 인코더 (20) 는 뷰-간 예측을 구현할 수 도 있는데, 여기서는, 비디오 인코더 (20) 는 감소된 해상도 뷰를 전체 해상도 픽쳐를 포함하는 뷰의 픽쳐들에 상대적으로 인코딩할 수도 있다. 예를 들어, 비디오 인코더 (20) 는 감소된 해상도 뷰 픽쳐를 전체 해상도 인코딩된 픽쳐를 포함하는, 뷰의 이전에 인코딩된 픽쳐들에 상대적으로 인코딩할 수도 있다. 비디오 인코더 (20) 는 감소된 해상도 뷰 픽쳐를, 동일한 패킹된 프레임의 또는 이전에 코딩된 프레임들의 전체 해상도 픽쳐에 상대적으로 인코딩할 수도 있다.
일 예로서, 비디오 인코더 (20) 는 감소된 해상도 픽쳐를 필드로서 인코딩할 수도 있다. 인터레이싱된 비디오 데이터 코딩을 위한 기술들이 감소된 해상도 픽쳐를 필드로서 인코딩하는데 채택될 수도 있는데, 이 경우에는 감소된 해상도 픽쳐의 픽셀들의 수평 행들이 전체 해상도 픽쳐의 픽셀들의 교번하는 행들로부터 예측될 수도 있다. 즉, 비디오 인코더 (20) 는 감소된 해상도 픽쳐를 탑 필드 또는 바텀 필드 중 하나로서 인코딩할 수도 있다. 몇 가지 예들에서는, 비디오 인코더 (20) 는 하나의 뷰의 전체 해상도 픽쳐를 한 액세스 유닛으로서 그리고 상이한 뷰의 대응하는 감소된 해상도 픽쳐를 별개의 액세스 유닛으로서 출력할 수도 있다. 따라서, 비디오 인코더 (20) 는 반드시 두 개의 픽쳐들을 하나의 비대칭 프레임으로 통합하여 두 개의 뷰들에 대한 데이터를 단일의 공통 비트스트림으로 통합하기 위한 기술들을 수행할 필요가 없다.
다른 예로서, 비디오 인코더 (20) 는 감소된 해상도 픽쳐를 변위 벡터들을 이용해서 인코딩할 수도 있다. 변위 벡터들은 동일한 뷰 내의 감소된 해상도 픽쳐들 또는 전체 해상도 픽쳐들을 포함하는 뷰 내의 전체 해상도 픽쳐들에 상대적일 수도 있다. 변위 벡터가 전체 해상도 픽쳐를 참조할 경우, 비디오 인코더 (20) 는 비대칭 프레임 내의 감소된 해상도 픽쳐의 포지션을 설명할 수도 있다. 예를 들어, 비대칭 패킹된 프레임이, 프레임 내에 감소된 해상도 픽쳐가 전체 해상도 픽쳐 밑에 있는 상하 패킹 배열로 픽쳐들을 포함한다고 가정한다. 비디오 인코더 (20) 는 전체 해상도 픽쳐의 높이를 수직 성분으로부터 감산하고, 감소된 해상도 픽쳐가 전체 해상도 픽쳐의 해상도의 절반을 가진다고 가정할 때, 결과적으로 얻어지는 차분치를 2 로써 승산함으로써 변위 벡터의 수직 성분을 수정할 수도 있다.
예측 데이터 및 잔차 데이터 (residual data) 를 생성하는 인트라-예측 또는 인터-예측 코딩에 후속하고, 그리고 잔차 데이터에 적용되어 변환 계수들을 생성하는 임의의 변환들 (예컨대, H.264/AVC에서 이용되는 4x4 또는 8x8 정수 변환 또는 이산 여현 변환 (DCT) 과 같은 변환들) 에 후속하여, 변환 계수들의 양자화가 수행될 수도 있다. 일반적으로, 양자화는 변환 계수들이 양자화되어 해당 계수들을 표현하기 위하여 이용되는 데이터의 양을 감소시키는 것이 가능한 프로세스를 지칭한다. 양자화 프로세스는 계수들 중 일부 또는 전부와 관련되는 비트 깊이 (bit depth) 를 감소시킬 수도 있다. 예를 들어, n-비트 값은 양자화 동안에 m-비트 값으로 버림 (round down) 될 수도 있는데, 여기서 nm 보다 크다.
양자화에 후속하여, 양자화된 데이터의 엔트로피 코딩이 수행될 수도 있으며, 예를 들어 콘텐츠 적응형 가변 길이 코딩 (content adaptive variable length coding, CAVLC), 콘텍스트 적응형 이진 산술 코딩 (context adaptive binary arithmetic coding, CABAC), 또는 다른 엔트로피 코딩 방법론들에 따라서 수행될 수도 있다. 엔트로피 코딩을 위하여 구성된 처리 유닛 또는 다른 처리 유닛이, 다른 처리 기능들, 예컨대 양자화된 계수들의 제로 런 길이 부호화 (zero run length coding) 및/또는 코딩된 블록 패턴 (coded block pattern, CBP) 값들, 매크로블록 타입, 코딩 모드, 코딩된 유닛 (예컨대, 프레임, 슬라이스, 매크로블록, 또는 시퀀스) 에 대한 최대 매크로블록 크기 등과 같은 구문 정보의 생성 등을 수행할 수도 있다.
비디오 인코더 (20) 는 더 나아가 구문 데이터, 예컨대 블록-기반 구문 데이터, 프레임-기반 구문 데이터, 및/또는 GOP-기반 구문 데이터를, 예를 들어, 프레임 헤더, 블록 헤더, 슬라이스 헤더, 또는 GOP 헤더 내에서 비디오 디코더 (30) 로 전송할 수도 있다. GOP 구문 데이터는 개별 GOP 내의 복수 개의 프레임들을 기술할 수도 있으며, 프레임 구문 데이터는 대응하는 프레임을 인코딩하는데 이용되는 인코딩/예측 모드를 표시할 수도 있다. 따라서, 비디오 디코더 (30) 는 표준 비디오 디코더를 포함할 수도 있으며, 그리고 반드시 본 개시물의 기술들을 실효화하거나 (effect) 또는 이용하도록 특별히 구성될 필요가 없다.
비디오 인코더 (20) 및 비디오 디코더 (30) 각각은 적합하며 적용가능한 다양한 인코더 또는 디코더 회로 중 임의의 것으로서 구현될 수도 있는데, 예컨대 하나 이상의 마이크로프로세서들, 디지털 신호 프로세서 (DSP) 들, 주문형 집적회로 (ASIC) 들, 필드 프로그램가능 게이트 어레이 (FPGA) 들, 이산 로직 회로, 소프트웨어, 하드웨어, 펌웨어, 또는 이들의 조합으로서 구현될 수도 있다. 비디오 인코더 (20) 및 비디오 디코더 (30) 각각은 하나 이상의 인코더들 또는 디코더들 내에 포함될 수도 있는데, 이들 중 어느 것은 조합된 비디오 인코더/디코더 (CODEC) 의 일부로서 집적될 수도 있다. 비디오 인코더 (20) 및/또는 비디오 디코더 (30) 를 포함하는 장치는 집적 회로, 마이크로프로세서, 컴퓨팅 디바이스, 및/또는 모바일 전화기와 같은 무선 통신 디바이스를 포함할 수도 있다.
비디오 디코더 (30) 는 비대칭 패킹된 프레임들을 포함하는 비트스트림을 수신하도록 구성될 수도 있다. 비디오 디코더 (30) 는 더 나아가 이러한 프레임을 대응하는 픽쳐들, 예를 들어, 한 뷰의 전체 해상도 픽쳐 및 다른 뷰의 감소된 해상도 픽쳐로 언패킹하도록 구성될 수도 있다. 비디오 디코더 (30) 는 픽쳐들을 디코딩하고 감소된 해상도 픽쳐를 업샘플링하여 (예를 들어, 보간을 통하여) 두 개의 디코딩된 전체 해상도 픽쳐들을 생성할 수도 있다. 몇 가지 예들에서는, 비디오 디코더 (30) 는 전체 해상도 픽쳐에 대응하는 뷰로부터의 디코딩된 픽쳐를 참조하여 감소된 해상도 픽쳐를 디코딩할 수도 있다. 즉, 비디오 디코더 (30) 도 뷰-간 예측을 지원할 수도 있다.
몇 가지 예들에서는, 비디오 디코더 (30) 는 목적지 디바이스 (14) 가 3-차원 데이터를 디코딩하고 디스플레이할 수 있는지 여부를 결정하도록 구성될 수도 있다. 만일 할 수 없다면, 비디오 디코더 (30) 는 수신된 비대칭 패킹된 프레임을 언패킹하지만, 감소된 해상도 픽쳐를 폐기할 수도 있다. 비디오 디코더 (30) 는 동일한 뷰의 전체 해상도 픽쳐 및 다른 픽쳐들을 디코딩하고, 그리고 비디오 디스플레이 (32) 로 하여금 이러한 뷰로부터의 픽쳐들을 디스플레이 하여 2 차원 비디오 데이터를 제공하도록 야기할 수도 있다. 따라서, 비디오 디코더 (30) 는 전체 해상도 픽쳐를 디코딩하고 디코딩된 전체 해상도 픽쳐를 감소된 해상도 픽쳐를 디코딩하려고 시도하지 않은 채 디스플레이 디바이스 (32) 로 제공할 수도 있다.
이러한 방식으로, 목적지 디바이스 (14) 가 3-차원 비디오 데이터를 디스플레이할 수 있는지 없는지와 무관하게, 목적지 디바이스 (14) 는 비대칭 패킹된 프레임들을 포함하는 비트스트림을 수신할 수도 있다. 따라서, 다양한 디코딩 및 렌더링 능력들을 가지는 다양한 목적지 디바이스들은 소스 디바이스 (20) 로부터 동일한 비트스트림을 수신하도록 구성될 수도 있다. 즉, 몇 개의 목적지 디바이스들은 3-차원 비디오 데이터를 디코딩 및 렌더링할 수도 있고 다른 것들은 3-차원 비디오 데이터를 디코딩 및/또는 렌더링할 수가 없을 수도 있지만, 하지만 디바이스들 각각은 비대칭 패킹된 프레임들을 포함하는 동일한 비트스트림으로부터 데이터를 수신하고 이용하도록 구성될 수도 있다.
도 2 는 비대칭 패킹된 프레임들을 생성하기 위한 기술들을 구현할 수도 있는 비디오 인코더 (20) 의 일 예를 예시하는 블록도이다. 비디오 인코더 (20) 는 비디오 프레임들 내의, 매크로블록들 또는 매크로블록들의 파티션들 또는 서브-파티션들을 포함하는 블록들의 인트라- 및 인터-코딩을 수행할 수도 있다. 인트라-코딩은 주어진 비디오 프레임 내의 비디오에서의 공간적 리던던시를 감소 또는 제거하는 공간적 예측에 의존한다. 인터-코딩은 비디오 시퀀스의 인접 프레임들 간의 비디오에서의 시간적 리던던시를 감소 또는 제거하기 위한 시간적 예측에 의존한다. 인트라-모드 (I-모드) 는 수 개의 공간 기반 압축 모드들 중 임의의 것을 지칭할 수도 있으며, 일방향 예측 (P-모드) 또는 양방향 예측 (B-모드) 과 같은 인터-모드들은 수 개의 시간 기반 압축 모드들 중 임의의 것을 지칭할 수도 있다. 또한, 비디오 인코더 (20) 는 몇 개의 예들에서는 비대칭 패킹된 프레임 내의 감소된 해상도 픽쳐들의 뷰-간 예측을 수행하도록 구성될 수도 있다.
도 2 에 도시된 바와 같이, 비디오 인코더 (20) 는 인코딩될 비디오 픽쳐 내의 현재 비디오 블록을 수신한다. 도 2 의 예에서, 비디오 인코더 (20) 는 모션 보상 유닛 (44), 모션 추정 유닛 (42), 기준 프레임 저장소 (64), 합산기 (50), 변환 유닛 (52), 양자화 유닛 (54), 및 엔트로피 코딩 유닛 (56) 을 포함한다. 비디오 블록 재구성을 위하여, 비디오 인코더 (20) 는 역양자화 유닛 (58), 역변환 유닛 (60), 및 합산기 (62) 를 더 포함한다. 디블록킹 필터 (deblocking filter) (도 2 에는 미도시) 도 포함되어 블록 경계들을 필터링하여 재구성된 비디오로부터 블록화 아티팩트 (blockiness artifact) 들을 제거할 수도 있다. 소망되는 경우에는, 디블록킹 필터는 전형적으로 합산기 (62) 의 출력을 필터링할 것이다.
인코딩 프로세스 동안에, 비디오 인코더 (20) 는 코딩될 비디오 픽쳐 또는 슬라이스를 수신한다. 픽쳐 또는 슬라이스는 다중 비디오 블록들로 분할될 수도 있다. 모션 추정 유닛 (42) 및 모션 보상 유닛 (44) 은 하나 이상의 기준 프레임들 내의 하나 이상의 블록들에 상대적으로 수신 비디오 블록의 인터-예측 코딩을 수행하여 시간적 압축을 제공한다. 인트라 예측 유닛은 코딩될 블록으로서 동일한 프레임 또는 슬라이스 내의 하나 이상의 인접 블록들에 상대적으로 수신된 비디오 블록의 인트라-예측 코딩을 수행하여 공간적 압축을 제공할 수도 있다. 모드 선택 유닛 (40) 은 인트라 또는 인터의 코딩 모드들 중 하나를, 예를 들어 예러 결과들에 기초하여 선택할 수도 있고, 결과적으로 얻어진 인트라- 또는 인터-코딩된 블록을 합산기 (50) 로 제공하여 잔차 값 블록 데이터를 생성하고 그리고 이것을 합산기 (62) 로 제공하여 기준 프레임으로서 사용하기 위한 인코딩된 블록을 재구성한다.
특히, 비디오 인코더 (20) 는 스테레오 뷰 쌍을 형성하는 두 개의 뷰로부터 픽쳐들을 수신할 수도 있다. 두 개의 뷰들은 뷰 0 및 뷰 1 로서 지칭될 수도 있다. 일반성을 잃지 않으면서, 뷰 0 이 좌안 뷰이고 뷰 1 이 우안 뷰 라고 추정한다. 뷰들은 다르게도 명명될 수도 있으며, 그리고 이 대신에 뷰 1 이 좌안 뷰에 대응할 수도 있고 뷰 0 이 우안 뷰에 대응할 수도 있다는 것이 이해되어야 한다. 일 예에서는, 비디오 인코더 (20) 는 뷰 0 의 픽쳐들을 전체 해상도에서, 그리고 뷰 1 의 픽쳐들을 감소된 해상도에서 인코딩할 수도 있다. 비디오 인코더 (20) 는 뷰 1 의 픽쳐들을 수평 또는 수직 방향에서 1/2 의 인자에서 다운샘플링할 수도 있다.
비디오 인코더 (20) 는 더 나아가 인코딩된 픽쳐들을 비대칭 패킹된 프레임 으로 패킹할 수도 있다. 예를 들어, 비디오 인코더 (20) 가, 각각 h개의 픽셀들의 높이 및 w개의 픽셀들의 너비를 가지는 뷰 0 픽쳐 및 뷰 1 픽쳐를 수신한다고 가정하는데, 여기서 wh 는 음이 아니며 0 이 아닌 정수들이다. 비디오 인코더 (20) 는 뷰 1 픽쳐의 높이를 다운샘플링함으로써 상하로 배열된 비대칭 패킹된 프레임을 형성할 수도 있다. 예를 들어, 뷰 1 픽쳐의 다운샘플링 및 인코딩에 후속하여, 인코딩된 다운샘플링된 뷰 1 픽쳐는 h/2 개의 픽셀들의 높이 및 w개의 픽셀들의 너비를 가질 수도 있다. 그러면, 비디오 인코더 (20) 는 인코딩된 뷰 0 픽쳐 및 인코딩된 뷰 0 픽쳐 아래에 인코딩되며 다운샘플링된 뷰 1 픽쳐를 포함하는 비대칭 패킹된 프레임을 형성함으로써, 비대칭 프레임이 3/2 h 개의 픽셀들의 높이 및 w개의 픽셀들의 너비를 가지도록 할 수도 있다.
다른 예로서, 비디오 인코더 (20) 는 뷰 1 픽쳐를 다운샘플링함으로써 나란히 배열된 비대칭 패킹된 프레임을 형성할 수도 있다. 예를 들어, 뷰 1 픽쳐의 다운샘플링 및 인코딩에 후속하여, 뷰 1 픽쳐는 w/2 개의 픽셀들의 너비 및 h개의 픽셀들의 높이를 가질 수도 있다. 그러면, 비디오 인코더 (20) 인코딩된 뷰 0 픽쳐 및 인코딩된 뷰 0 픽쳐의 우측에 있는 인코딩되고 다운샘플링된 뷰 1 픽쳐를 포함하는 비대칭 패킹된 프레임을 형성함으로써, 비대칭 프레임이 h개의 픽셀들의 높이 및 3/2 w개의 픽셀들의 너비를 가지도록 할 수도 있다.
비디오 인코더 (20) 은 더 나아가 비대칭 패킹된 프레임에 대한 패킹 구조를 나타내는 정보를 제공할 수도 있다. 이러한 정보는 해당 프레임이 비대칭 패킹된 프레임인지 여부, 및 그렇다면 패킹 구조가 측면향 또는 상하향 중 어느 것인지 여부를 표시할 수도 있다. 일 예로서, 비디오 인코더 (20) 는 이러한 정보를 프레임 패킹 구조 SEI 메시지의 형태로 제공할 수도 있다. 프레임 패킹 구조 SEI 메시지는 다음의 표 1 의 예시적인 데이터 구조에 따라서 정의될 수도 있다:
[표 1] frame_packing_arrangement SEI 메시지
Figure 112012103933286-pct00001
프레임 패킹 구조 SEI 메시지는 비디오 디코더, 예컨대 비디오 디코더 (30) 에게 출력된 디코딩된 픽쳐가 표시된 프레임 패킹 구조 기법을 이용한 다중 이산 공간적으로 패킹 구성 프레임들로 이루어진 프레임의 샘플들을 포함한다는 것을 통지할 수도 있다. 본 개시물의 기술들에 따르면, 프레임은 비대칭 패킹된 프레임을 포함할 수도 있다. SEI 메시지의 정보는 샘플들을 재배열하고 구성 프레임들의 샘플들을 디스플레이 및 다른 목적들을 위하여 적합하게 처리하기 위하여 디코더에 의해 이용될 수 있다. 이러한 SEI 메시지는 프레임들 또는 필드들 중 하나인 픽쳐들과 연관될 수도 있다. 샘플들의 프레임 패킹 구조는, 픽쳐가 이러한 패킹된 프레임의 단일 필드인지 또는 완전 패킹된 프레임인지 여부와 관련하여 불변인 프레임 패킹 구조를 정의하기 위하여, 프레임의 샘플링 구성 (sampling structure) 과 관련하여 규정될 수도 있다.
비디오 인코더 (20) 는 frame_packing_arrangement_id 를 프레임 패킹 구조 SEI 메시지의 용을 식별하기 위하여 이용될 수도 있는 식별 번호를 포함하는 값으로 설정할 수도 있다. 비디오 인코더 (20) 는 frame_packing_arrangement_id 의 값을 범위 상한 및 하한을 포함하는 0 내지 232 - 2 의 범위 내에서 설정할 수도 있다. 0 내지 255 및 512 내지 231 - 1 의 frame_packing_arrangement_id 의 값들이 비디오 인코더 (20) 에 의하여 결정되는 바와 같이 이용될 수도 있다. 256 내지 511 및 231 내지 232 - 2 의 frame_packing_arrangement_id 의 값들은 ITU-T | ISO/IEC 에 의한 장래의 사용을 위해서 예비될 수도 있다. 비디오 디코더들은 256 내지 511 의 범위 또는 231 내지 232 - 2 의 범위 내의 frame_packing_arrangement_id 의 값을 포함하는 모든 프레임 패킹 구조 SEI 메시지들 무시 (예를 들어, 비트스트림에서 제거하고 폐기) 할 수도 있다.
비디오 인코더 (20) 는 frame_packing_arrangement_cancel_flag 의 값을 1 과 동일하게 설정하여 프레임 패킹 구조 SEI 메시지가 출력 순서에서 임의의 이전 프레임 패킹 구조 SEI 메시지의 일관성 (persistence) 을 취소한다는 것을 표시할 수도 있다. 비디오 인코더 (20) 는 frame_packing_arrangement_cancel_flag 의 값을 0 과 동일하게 설정하여 프레임 패킹 구조 정보가 후속한다는 것을 표시할 수도 있다.
비디오 인코더 (20) 는 asymmetric_packing_idc (비대칭 패킹 표시자) 의 값을 설정하여 비대칭 코딩의 타입을 표시할 수도 있다. 예를 들어, 비디오 인코더 (20) 는 asymmetric_packing_idc 을 0 의 값으로 설정하여 두 개의 구성 프레임들이 동일한 해상도를 가진다는 것, 즉, 대응하는 프레임이 비대칭 패킹된 프레임이 아니라는 것을 표시할 수도 있다. 비디오 인코더 (20) 는 asymmetric_packing_idc 의 값을 0 보다 크게 (예컨대, 1 또는 2) 설정하여 두 개의 구성 프레임들이 상이한 해상도들을 가진다는 것을 표시할 수도 있다. 예를 들어, 프레임들 중 하나는 다른 것의 절반일 수도 있다.
일 예에서는, 비디오 인코더 (20) 는 asymmetric_packing_idc equal 의 값을 1 로 설정하여 두 개의 구성 프레임들이 상이한 해상도들을 가지며, 그리고 프레임 1 이 프레임 0 의 절반 해상도를 가진다는 것을 표시할 수도 있다. 일 예에서는, 비디오 인코더 (20) 는 asymmetric_packing_idc equal 의 값을 2 로 설정하여 두 개의 구성 프레임들이 상이한 해상도들을 가지며, 그리고 프레임 0 이 프레임 1 의 절반 해상도를 가진다는 것을 표시할 수도 있다. asymmetric_packing_idc 에 대한 값 3 은 현재는 규정되지 않으며 장래의 사용을 위하여 예비된다. 아래의 표 2 는 asymmetric_packing_idc 의 값을 해석하는데 대한 일 예를 제공한다:
[표 2] asymmetric_packing_idc
Figure 112012103933286-pct00002
비디오 인코더 (20) 는 frame_packing_arrangement_type 의 값을 아래의 표 3 에 규정된 프레임들의 패킹 구조의 타입을 표시하도록 설정할 수도 있다. 비디오 인코더 (20) 가 asymmetric_packing_idc 의 값을 0 보다 크게 (예컨대, 1 또는 2) 설정하면, 비디오 인코더 (20) 는 frame_packing_arrangement_type 의 값을 6, 7, 8, 또는 9 중 하나로 설정할 수도 있다.
[표 3] frame_packing_arrangement_type
Figure 112012103933286-pct00003
비디오 인코더 (20) 는 quincunx_sampling_flag 의 값을 1 과 동일하게 설정하여 각각의 구성 프레임의 각각의 칼라 성분 평면이 오점형 샘플링된다는 것을 표시할 수도 있다. 비디오 인코더 (20) 는 quincunx_sampling_flag 의 값을 0 과 동일하게 설정하여 각각의 구성 프레임의 칼라 성분 평면들이 오점형 샘플링되지 않는다는 것을 표시할 수도 있다. 비디오 인코더 (20) 가 frame_packing_arrangement_type 의 값을 0 과 동일하게 설정하면, 비디오 인코더 (20) 는 또한 quincunx_sampling_flag 의 값을 1 과 동일하게 설정할 수도 있다. 비디오 인코더 (20) 가 frame_packing_arrangement_type 의 값을 5 와 동일하게 설정한다면, 비디오 인코더 (20) 는 또한 quincunx_sampling_flag 의 값을 0 과 동일하게 설정할 수도 있다.
비디오 인코더 (20) 는 content_interpretation_type 의 값을 표 4 에 규정된 바와 같은 구성 프레임들의 의도된 해석을 표시하기 위하여 설정할 수도 있다. 표 4 에 나타나지 않는 content_interpretation_type 의 값들은 ITU-T | ISO/IEC 에 의한 미래 사양을 위하여 예비될 수도 있다. 각각의 규정된 프레임 패킹 구조 방식에 대하여, 두 개의 구성 프레임들 (픽쳐들) 이 존재할 수도 있다는데, 이들은 표 4 에서 프레임 0 및 프레임 1 이라고 지칭된다.
[표 4] content_interpretation_type
Figure 112012103933286-pct00004
비디오 인코더 (20) 는 spatial_flipping_flag 의 값을, frame_packing_arrangement_type 의 값이 3 또는 4 와 동일하게 설정된다면 1 과 동일하게 설정하여, 두 개의 구성 프레임들 중 하나가 디스플레이 또는 다른 이러한 목적들을 위하여 자신의 의도된 방위 (orientation) 에 상대적으로 공간적으로 플리핑된다 (flipped) 는 것을 표시할 수도 있다. frame_packing_arrangement_type 이 3 또는 4 와 동일하고 spatial_flipping_flag 이 1 과 동일하다면, 표시되는 공간적 플리핑의 타입은 다음과 같을 수도 있다. 만일 frame_packing_arrangement_type 이 3 과 동일하다면, 표시된 공간적 플리핑은 수평 플리핑이다. 그렇지 않으면 (즉, frame_packing_arrangement_type 의 값이 4 와 동일하다면), 표시된 공간적 플리핑은 수직 플리핑이다.
frame_packing_arrangement_type 이 3 또는 4 와 동일하지 않으면, 비디오 인코더 (20) 는 spatial_flipping_flag 의 값을 0 과 동일하게 설정할 수도 있다. frame_packing_arrangement_type dl 이 또는 4 와 동일하지 않으면, frame_packing_arrangement_type 의 값 1 은 ITU-T | ISO/IEC 에 의한 장래 사용을 위하여 예비될 수도 있다. frame_packing_arrangement_type 이 3 또는 4 와 동일하지 않으면, 비디오 디코더들은 spatial_flipping_flag 에 대해 값 1 을 무시할 수도 있다.
비디오 인코더 (20) 는 frame0_flipped_flag 의 값을 1 과 동일하게 설정하여 두 개의 구성 프레임들 중 어느 것이 플리핑되는 지를 표시할 수도 있다. spatial_flipping_flag 이 1 과 동일하면, 비디오 인코더 (20) 는 frame0_flipped_flag 의 값을 0 과 동일하게 설정하여 프레임 0 이 공간적으로 플리핑되지 않으며 그리고 프레임 1 이 공간적으로 플리핑된다는 것을 표시할 수도 있으며, 또는 비디오 인코더 (20) 는 frame0_flipped_flag 의 값을 1 과 동일하게 설정하여 프레임 0 이 공간적으로 플리핑되고 프레임 1 은 공간적으로 플리핑되지 않는다는 것을 표시할 수도 있다.
비디오 인코더 (20) 가 spatial_flipping_flag 의 값을 0 과 동일하게 설정하면, 비디오 인코더 (20) 는 frame0_flipped_flag 의 값을 0 과 동일하게 설정할 수도 있다. 비디오 인코더 (20) 가 spatial_flipping_flag 의 값을 0 과 동일하게 설정하면, spatial_flipping_flag 의 값 1 은 ITU-T | ISO/IEC 에 의한 장래 이용을 위하여 예비될 수도 있다. spatial_flipping_flag 이 0 과 동일하면, 비디오 디코더들은 frame0_flipped_flag 의 값을 무시할 수도 있다.
비디오 인코더 (20) 가 quincunx_sampling_flag 의 값을 0 과 동일하게 설정하면, 비디오 인코더 (20) 는 공간적 위치 기준 정보를 제공하여 각 구성 프레임의 좌상 루마 샘플의 공간적 기준 포인트에 상대적인 위치를 규정할 수도 있다. 비디오 인코더 (20) 는 크로마 샘플들의 루마 샘플들에 상대적인 위치를 비디오 사용가능성 정보 (video usability information, VUI) 파라미터들 내의 chroma_sample_loc_type_top_field 및 chroma_sample_loc_type_bottom_field 구문 요소들 (syntax elements) 에 의하여 표시할 수도 있다.
비디오 인코더 (20) 는 field_views_flag 의 값을 1 과 동일하게 설정하여 현재 코딩된 비디오 시퀀스내의 모든 픽쳐들이 상보적 필드 쌍들로서 코딩된다는 것을 표시할 수도 있다. 특정 패리티의 모든 필드들은 제 1 구성 프레임이라고 간주될 수도 있고, 그리고 반대 패리티의 모든 필드들은 제 2 구성 프레임이라고 간주될 수도 있다. 비디오 인코더 (20) 가 frame_packing_arrangement_type 의 값을 2 와 동일하게 설정하지 않으면, 비디오 인코더 (20) 는 field_views_flag 의 값을 0 과 동일하게 설정할 수도 있다. 비디오 인코더 (20) 가 frame_packing_arrangement_type 의 값을 2 와 동일하게 설정하지 않으면, field_views_flag 에 대한 값 1 은 ITU-T | ISO/IEC 에 의한 장래 이용을 위하여 예비될 수도 있다. frame_packing_arrangement_type 이 2 와 동일하지 않으면, 비디오 디코더들은 field_views_flag 의 값을 무시할 수도 있다.
비디오 인코더 (20) 는, frame_packing_arrangement 이 5 와 동일하면, current_frame_is_frame0_flag 의 값을 1 과 동일하게 설정하여, 현재의 디코딩된 프레임이 구성 프레임 0 이고 출력 순서에서 다음 디코딩된 프레임이 구성 프레임 1 이라는 것을 표시할 수도 있으며, 그리고 구성 프레임 0 의 디스플레이 시간은 구성 프레임 1 의 디스플레이 시간과 일치하기 위하여 지연되어야 한다. 이에 상응하여, 비디오 디코더, 예컨대 비디오 디코더 (30), 는 구성 프레임 0 의 디스플레이 시간을 지연시켜서 구성 프레임 1 의 디스플레이 시간과 일치하게 할 수도 있다. 비디오 인코더 (20) 는, frame_packing_arrangement 이 5 와 동일하면, current_frame_is_frame0_flag 의 값을 0 과 동일하게 설정함으로써, 현재의 디코딩된 프레임이 구성 프레임 1 이고 출력 순서 내의 이전 디코딩된 프레임이 구성 프레임 0 이라는 것을 표시할 수도 있으며, 그리고 구성 프레임 1 의 디스플레이 시간은 스테레오-뷰 페어링의 목적들을 위하여 지연되어서는 안된다. 이에 상응하여, 비디오 디코더, 예컨대 비디오 디코더 (30), 는 current_frame_is_frame0_flag 의 값이 0 과 동일하다면 구성 프레임 1 의 디스플레이 시간을 지연할 필요가 없다.
비디오 인코더 (20) 가 frame_packing_arrangement_type 의 값을 5 와 동일하게 설정하지 않으면, 디코딩된 프레임의 상좌 샘플과 연관된 구성 프레임은 구성 프레임 0 이라고 간주될 수도 있으며 그리고 다른 구성 프레임이 구성 프레임 1 이라고 간주될 수도 있다. frame_packing_arrangement_type 이 5 와 동일하지 않으면, 비디오 인코더 (20) 는 current_frame_is_frame0_flag 의 값을 0 과 동일하게 설정할 수도 있다. frame_packing_arrangement_type 이 5 와 동일하지 않으면, current_frame_is_frame0_flag 에 대한 값 1 이 ITU-T | ISO/IEC 에 의한 장래 이용을 위하여 예비될 수도 있다. frame_packing_arrangement_type 이 5 와 동일하지 않으면, 디코더들은 current_frame_is_frame0_flag의 값들을 무시할 수도 있다.
비디오 인코더 (20) 는 frame0_self_contained_flag 의 값을 1 과 동일하게 설정하여 코딩된 비디오 시퀀스의 구성 프레임 0 의 샘플들에 대한 디코딩 프로세스 내의 인터 예측 동작들이 임의의 구성 프레임 1 의 샘플들을 참조하지 않는다는 것을 표시할 수도 있다. 비디오 인코더 (20) 는 frame0_self_contained_flag 의 값을 0 과 동일하게 설정하여 코딩된 비디오 시퀀스의 구성 프레임 0 의 샘플들에 대한 디코딩 프로세스 내의 몇 개의 인터 예측 동작들이 어떤 구성 프레임 1 의 샘플들을 참조할 수도 있고 참조하지 않을 수도 있다는 것을 표시할 수도 있다. frame_packing_arrangement_type 이 0 또는 1 과 동일하다면, 비디오 인코더 (20) 는 frame0_self_contained_flag 의 값을 0 과 동일하게 설정할 수도 있다. frame_packing_arrangement_type 이 0 또는 1 과 동일하다면, frame0_self_contained_flag 에 대한 값 1 은 ITU-T | ISO/IEC 에 의한 장래 이용을 위하여 예비될 수도 있다. frame_packing_arrangement_type 이 0 또는 1 과 동일하다면, 비디오 디코더들은 frame0_self_contained_flag 의 값을 무시할 수도 있다. 코딩된 비디오 시퀀스 내에서, 비디오 인코더 (20) 는 모든 프레임 패킹 구조 SEI 메시지들 내의 frame0_self_contained_flag 의 값을 동일한 값으로 설정할 수도 있다.
비디오 인코더 (20) 는 frame1_self_contained_flag 의 값을 1 과 동일하게 설정하여 코딩된 비디오 시퀀스의 구성 프레임 1 의 샘플들에 대한 디코딩 프로세스 내의 인터 예측 동작들이 임의의 구성 프레임 0 의 샘플들을 참조하지 않는다는 것을 표시할 수도 있다. 비디오 인코더 (20) 는 frame1_self_contained_flag 의 값을 0 과 동일하게 설정하여 코딩된 비디오 시퀀스의 구성 프레임 1 의 샘플들에 대한 디코딩 프로세스 내의 몇 개의 인터 예측 동작들이 어떤 구성 프레임 0 의 샘플들을 참조할 수도 있고 참조하지 않을 수도 있다는 것을 표시할 수도 있다. frame_packing_arrangement_type 이 0 또는 1 과 동일하다면, frame1_self_contained_flag 이 0 과 동일해야 한다는 것이 비트스트림 순응성 (conformance) 의 요구사항이다. frame_packing_arrangement_type 이 0 또는 1 과 동일하다면, frame1_self_contained_flag 에 대한 값 1 은 ITU-T | ISO/IEC 에 의한 장래 이용을 위하여 예비될 수도 있다. frame_packing_arrangement_type 이 0 또는 1 과 동일하다면, 비디오 디코더들은 frame1_self_contained_flag 의 값을 무시할 수도 있다. 코딩된 비디오 시퀀스 내에서, 비디오 인코더 (20) 는 모든 프레임 패킹 구조 SEI 메시지들 내의 frame1_self_contained_flag 의 값을 동일한 값으로 설정할 수도 있다.
frame0_self_contained_flag 이 1 과 동일하거나 또는 frame1_self_contained_flag 이 1 과 동일하며, 그리고 frame_packing_arrangement_type 이 2 와 동일하다면, 디코딩된 프레임은 비-매크로블록-레벨 적응적 프레임/필드 (non-macroblock-level adaptive frame/field, MBAFF) 프레임일 수도 있다.
몇 가지 예들에서는, 비디오 인코더 (20) 는 frame0_self_contained_flag 1 및 frame1_self_contained_flag 양자의 값을 1 과 동일하게 설정할 수도 있다. 이러한 방식으로, 비디오 인코더 (20) 는 각각의 뷰들이 개별적으로 디코딩되고 렌더링될 수 있다는 것을 시그널링할 수도 있다.
비디오 인코더 (20) 는 frame0_grid_position_x (존재한다면) 의 값을 설정하여, 디코딩된 프레임내에 존재하는 (디스플레이 또는 다른 목적들을 위한 임의의 업샘플링 이전에) 구성 프레임 0 의 열들의 샘플들 간의 루마 샘플 격자 간극 (luma sample grid spacing) 의 16 분의 1 의 단위로서, 공간적 기준 포인트의 우측으로의 구성 프레임 0 의 상좌 샘플의 수평 위치를 규정할 수도 있다.
비디오 인코더 (20) 는 frame0_grid_position_y (존재한다면) 의 값을 설정하여, 디코딩된 프레임내에 존재하는 (디스플레이 또는 다른 목적들을 위한 임의의 업샘플링 이전에) 구성 프레임 0 의 행들의 샘플들 간의 루마 샘플 격자 간극의 16 분의 1 의 단위로서, 공간적 기준 포인트 아래로의 구성 프레임 0 의 상좌 샘플의 수직 위치를 규정할 수도 있다.
비디오 인코더 (20) 는 frame1_grid_position_x (존재한다면) 의 값을 설정하여, 디코딩된 프레임내에 존재하는 (디스플레이 또는 다른 목적들을 위한 임의의 업샘플링 이전에) 구성 프레임 1 의 열들의 샘플들 간의 루마 샘플 격자 간극 의 16 분의 1 의 단위로서, 공간적 기준 포인트의 우측으로의 구성 프레임 1 의 상좌 샘플의 수평 위치를 규정할 수도 있다.
비디오 인코더 (20) 는 frame1_grid_position_y (존재한다면) 의 값을 설정하여, 디코딩된 프레임내에 존재하는 (디스플레이 또는 다른 목적들을 위한 임의의 업샘플링 이전에) 구성 프레임 1 의 행들의 샘플들 간의 루마 샘플 격자 간극의 16 분의 1 의 단위로서, 공간적 기준 포인트 아래로의 구성 프레임 1 의 상좌 샘플의 수직 위치를 규정할 수도 있다.
frame_packing_arrangement_reserved_byte 는 ITU-T | ISO/IEC 에 의한 장래 이용을 위하여 예비될 수도 있다. 비디오 인코더 (20) 는 frame_packing_arrangement_reserved_byte 의 값을 0 과 동일하게 설정할 수도 있다. frame_packing_arrangement_reserved_byte 의 모든 다른 값들은 ITU-T | ISO/IEC 에 의한 장래 이용을 위하여 예비될 수도 있다. 비디오 디코더들은 frame_packing_arrangement_reserved_byte의 값을 무시 (예를 들어 비트스트림으로부터 제거하고 폐기) 할 수도 있다.
비디오 인코더 (20) 는 frame_packing_arrangement_repetition_period 의 값을 설정하여 프레임 패킹 구조 SEI 메시지의 일관성을 규정할 수도 있는데, 이것은 비디오 인코더 (20) 가 비트스트림 내에 존재하도록 한 바 있는 frame_packing_arrangement_id 의 동일한 값을 가지는 다른 프레임 패킹 구조 SEI 메시지 또는 코딩된 비디오 시퀀스의 끝의 한계가 되는 프레임 순서 카운트 간격 (frame order count interval) 을 규정할 수도 있다. 비디오 인코더 (20) 는 frame_packing_arrangement_repetition_period 의 값을 상한 및 하한을 포함하는 0 내지 16,384 의 범위 내에서 설정할 수도 있다.
비디오 인코더 (20) 는 frame_packing_arrangement_repetition_period 의 값을 0 과 동일하게 설정하여 프레임 패킹 구조 SEI 메시지가 현재의 디코딩된 프레임에만 적용된다는 것을 규정할 수도 있다. 비디오 인코더 (20) 는 frame_packing_arrangement_repetition_period 의 값을 1 과 동일하게 설정하여, 다음 조건들: 새로운 코딩된 비디오 시퀀스가 시작하는 것, 또는 frame_packing_arrangement_id 의 동일한 값을 가지는 프레임 패킹 구조 SEI 메시지를 포함하는 액세스 유닛 내의 프레임이 PicOrderCnt (CurrPic) 보다 큰 PicOrderCnt () 를 가지고 출력되는 것 중 임의의 것이 참일 때까지 출력 순서에서 프레임 패킹 구조 SEI 메시지가 일관된다는 것을 규정할 수도 있다.
비디오 인코더 (20) 는 frame_packing_arrangement_repetition_period 의 값을 0 또는 1 과 동일하게 설정하여 동일한 frame_packing_arrangement_id 의 값을 가지는 다른 프레임 패킹 구조 SEI 메시지가 존재할 수도 존재하지 않을 수도 있다는 것을 표시할 수도 있다. 비디오 인코더 (20) 는 frame_packing_arrangement_repetition_period 의 값을 1 보다 크게 설정하여, 다음 조건들 : 새로운 코딩된 비디오 시퀀스가 시작하는 것 또는 동일한 frame_packing_arrangement_id 의 값을 가지는 프레임 패킹 구조 SEI 메시지를 포함하는 액세스 유닛 내의 프레임이 PicOrderCnt (CurrPic) 보다 크고 PicOrderCnt (CurrPic) + frame_packing_arrangement_repetition_period 이하인 PicOrderCnt () 을 가지고 출력되는 것 중 임의의 것이 참일 때까지 프레임 패킹 구조 SEI 메시지가 일관된다는 것을 규정할 수도 있다.
비디오 인코더 (20) 는 frame_packing_arrangement_repetition_period 의 값을 1 보다 크게 설정하여, 이러한 프레임의 출력이 없이 비트스트림이 끝나거나 또는 새로 코딩된 비디오 시퀀스가 시작되지 않는다면, frame_packing_arrangement_frames_id 의 동일한 값을 가지는 다른 프레임 패킹 구조 SEI 메시지가, PicOrderCnt (CurrPic) 보다 크고 및 PicOrderCnt (CurrPic) + frame_packing_arrangement_repetition_period 이하인 PicOrderCnt () 을 가지고 출력되는 액세스 유닛 내의 프레임에 대하여 존재한다는 것을 표시할 수도 있다.
비디오 인코더 (20) 는 frame_packing_arrangement_extension_flag 의 값을 0 과 동일하게 설정하여 프레임 패킹 구조 SEI 메시지 내에서 추가적인 데이터가 후속되지 않는다는 것을 표시할 수도 있다. 이러한 경우에는, 비디오 인코더 (20) 는 frame_packing_arrangement_extension_flag 의 값을 0 과 동일하게 설정할 수도 있다. frame_packing_arrangement_extension_flag 에 대한 값 1 은 ITU-T | ISO/IEC 에 의한 장래 이용을 위하여 예비될 수도 있다. 비디오 디코더들은 프레임 패킹 구조 SEI 메시지 내의 frame_packing_arrangement_extension_flag 에 대한 값 1 을 무시할 수도 있고, 그리고 frame_packing_arrangement_extension_flag 에 대한 값 1 이후에 프레임 패킹 구조 SEI 메시지 내에서 후속하는 모든 데이터를 무시할 수도 있다.
모드 선택 유닛 (40) 은 로 비디오 데이터를 뷰 0 픽쳐로 부터의 블록들의 형태로 수신할 수도 있다. 뷰 0 픽쳐를 인코딩한 이후에, 비디오 인코더 (20) 는 뷰 0 픽쳐와 대응하는 뷰 1 픽쳐를 다운샘플링할 수도 있다. 즉, 뷰 0 픽쳐 및 뷰 1 픽쳐는 실질적으로 동일한 시간에서 캡쳐된 바 있을 수도 있다. 다운샘플링 뷰 1 픽쳐를 다운샘플링한 이후에, 비디오 인코더 (20) 는 뷰 1 픽쳐를 인코딩할 수도 있다. 비디오 인코더 (20) 는 또한 뷰 0 픽쳐의 디코딩된 버전을 기준 프레임 저장소 (64) 내에 저장함으로써, 모션 추정 유닛 (42) 및 모션 보상 유닛 (44) 이 뷰 1 픽쳐를 인코딩할 때 뷰 0 픽쳐에 대하여 뷰-간 예측을 수행할 수 도 있게 할 수도 있다.
모션 추정 유닛 (42) 및 모션 보상 유닛 (44) 은 고집적화될 수 있지만 개념적인 이해를 위한 목적으로 개별적으로 예시된다. 모션 추정은 비디오 블록들의 모션을 추정하는 모션 벡터들을 생성하기 위한 프로세스이다. 예를 들어, 모션 벡터는 현재의 프레임 내에서 코딩되는 중인 현재 블록 (또는 다른 코딩된 유닛) 에 관하여 예측 기준 프레임 내의 예측 블록 (또는 다른 코딩된 유닛) 의 변위 (displacement) 를 표시할 수도 있다. 예측 블록은 픽셀 차분의 관점에서, 코딩될 블록과 근접하게 매칭되는 것으로 발견되는 블록인데, 픽셀 차분은 절대 차분의 합 (sum of absolute difference, SAD), 제곱 차분의 합 (sum of square difference, SSD), 또는 다른 차분 지표에 의하여 결정될 수 있다. 모션 벡터는 또한 매크로블록의 파티션의 변위를 표시할 수도 있다. 모션 보상은, 모션 추정에 의하여 결정된 모션 벡터에 기초하여 예측 블록을 페치 (fetch) 하거나 생성하는 것을 수반할 수도 있다. 다시 말하건데, 모션 추정 유닛 (42) 및 모션 보상 유닛 (44) 은 몇 가지 예들에서는 기능적으로 통합될 수도 있다.
모션 추정 유닛 (42) 은 비디오 블록을 기준 프레임 저장소 (64) 내의 기준 프레임의 비디오 블록들과 비교함으로써, 인터-코딩된 프레임의 비디오 블록에 대한 모션 벡터를 연산할 수도 있다. 모션 보상 유닛 (44) 은 또한 기준 프레임, 예를 들어 I-프레임 또는 P-프레임의 서브-정수 픽셀들 (sub-integer pixels) 을 보간 (interpolate) 할 수도 있다. ITU-T H.264 표준은 기준 프레임들의 "리스트들"을 참조하며, 예를 들어 리스트 0 및 리스트 1 을 참조한다. 리스트 0 은 현재 픽쳐보다 이른 디스플레이 순서를 가지는 기준 프레임들을 포함하고, 리스트 1 은 현재 픽쳐보다 나중인 디스플레이 순서를 가지는 기준 프레임들을 포함한다. 모션 추정 유닛 (42) 은 기준 프레임 저장소 (64) 로부터의 하나 이상의 기준 프레임들의 블록들을 현재 픽쳐, 예를 들어 P- 픽쳐 또는 B-픽쳐의 인코딩될 블록과 비교한다. 기준 프레임 저장소 (64) 내의 기준 프레임들이 서브-정수 픽셀들에 대한 값들을 포함하면, 모션 추정 유닛 (42) 에 의하여 연산된 모션 벡터는 기준 프레임의 서브-정수 픽셀 위치를 참조할 수도 있다. 모션 추정 유닛 (42) 은 연산된 모션 벡터를 엔트로피 코딩 유닛 (56) 및 모션 보상 유닛 (44) 으로 전송한다. 모션 벡터에 의하여 식별된 기준 프레임 블록은 예측 블록으로서 지칭될 수도 있다. 모션 보상 유닛 (44) 은 기준 프레임의 예측 블록에 대한 잔차 에러 값들을 연산한다.
모션 추정 유닛 (42) 은 뷰 1 픽쳐들에 대하여 뷰-간 예측을 수행하도록 구성될 수도 있는데, 이 경우에 모션 추정 유닛 (42) 은 뷰 1 픽쳐의 블록들 및 뷰 0 의 기준 프레임의 대응하는 블록들 간의 변위 벡터들을 연산할 수도 있다. 변위 벡터를 연산할 때, 모션 추정 유닛 (42) 은, 비대칭 패킹된 프레임 내에 포지셔닝된 현재 블록의 포지션에 아니라, 비대칭 프레임으로부터 분할된 감소된 해상도 픽쳐 내의 현재 블록의 포지션에 상대적으로 모션 벡터의 값을 설정할 수도 있다.
예를 들어, 감소된 해상도 픽쳐 내의 현재 블록의 포지션이 (x0, y0) 라고 가정한다. 더 나아가 비디오 인코더 (20) 가 비대칭 프레임을 상하향 프레임 패킹 구조로써 패킹할 것이라고 가정한다. 전체 해상도 픽쳐는 h개의 픽셀들의 높이 및 w개의 픽셀들의 너비를 가질 수도 있다. 이에 상응하여, 모션 추정 유닛 (42) 은 (x0, 2* (y0-h)) 에 상대적으로 변위 벡터를 연산할 수도 있다. 다른 예로서, 이 대신에 비디오 인코더 (20) 가 비대칭 프레임을 측면향 프레임 패킹 구조로써 패킹할 것이라고 가정한다. 이러한 예에서는, 모션 추정 유닛 (42) 은 (2* (x0-w), y0) 에 상대적으로 변위 벡터를 연산할 수도 있다. 따라서, 모션 추정 유닛 (42) 은 비대칭 프레임 내의 현재 블록의 포지션이 아니라, 홀로 독립적으로 존재하는 감소된 해상도 프레임 내의 현재 블록의 포지션에 상대적으로 변위 벡터를 연산할 수도 있다. 모션 보상 유닛 (44) 은 예측 블록에 기반하여 예측 데이터를 연산할 수도 있다. 비디오 인코더 (20) 는 모션 보상 유닛 (44) 으로부터의 예측 데이터를 코딩되는 중인 원본 비디오 블록으로부터 감산함으로써, 코딩될 블록의 픽셀들의 값들 및 예측 블록 간의 잔차 에러를 표시하는 잔차 비디오 블록을 형성한다. 합산기 (50) 가 이러한 감산 동작을 수행하는 구성 요소 또는 구성 요소들을 나타낸다.
대안적으로는, 비디오 인코더 (20) 는 뷰 1 픽쳐들을 필드들로서 인코딩하도록 구성될 수도 있다. 그러나, 뷰 1 픽쳐들에 대한 인터레이싱된 탑 및 바텀 필드들의 쌍을 인코딩하는 대신에, 비디오 인코더 (20) 는 뷰 1 픽쳐들의 각각에 대한 단일 필드만을 인코딩하도록 구성될 수도 있다. 비디오 인코더 (20) 는 더 나아가 이전에 코딩된 뷰 1 픽쳐들의 필드들 또는 뷰 0 픽쳐들의 탑 또는 바텀 필드들에 상대적인 필드들로서 뷰 1 픽쳐들을 인코딩할 수도 있다. 이전에 코딩된 뷰 0 픽쳐들 각각은 탑 필드 및 바텀 필드 모두를 포함할 수도 있다. 비록 비디오 인코더 (20) 가 뷰 1 픽쳐들을 필드들로서 인코딩하도록 구성될 수도 있지만, 비디오 인코더 (20) 는 여전히 뷰 0 픽쳐들을 프레임들로서 인코딩할 수도 있다는 것이 이해되어야 한다.
뷰 1 의 픽쳐를 필드로서 인코딩하기 위하여, 모션 추정 유닛 (42) 은 뷰 1 의 픽쳐를 디코딩된 바 있는 뷰 1 의 이전에 코딩된 픽쳐들, 또는 디코딩된 바 있는 이전에 코딩된 뷰 0 픽쳐들의 탑 또는 바텀 필드들과 비교하도록 구성될 수도 있다. 필드 코딩된 픽쳐들은 전체 해상도 픽쳐의 수직 해상도의 절반을 포함할 수도 있다. 일반적으로, 픽쳐의 필드는 픽쳐의 짝수 개의 라인들을 포함하는 탑 필드 또는 픽쳐의 홀수 개의 라인들을 포함하는 바텀 필드를 포함할 수도 있다. 이에 상응하여, 뷰 1 픽쳐를 지금 디코딩된 이전 코딩된 뷰 1 픽쳐에 상대적으로 인코딩하기 위하여, 비디오 인코더 (20) 는 해당 뷰 1 픽쳐에 대한 필드 (예를 들어, 뷰 1 픽쳐의 탑 필드 또는 바텀 필드) 를 선택하고, 기준 프레임으로서 이제 디코딩된 이전에 코딩된 뷰 1 픽쳐를 선택하며, 그리고 선택된 필드 및 기준 픽쳐 간의 차분을 연산할 수도 있다. 이와 유사하게, 뷰 1 픽쳐를 지금 디코딩된 이전에 코딩된 뷰 0 픽쳐에 상대적으로 인코딩하기 위하여, 비디오 인코더 (20) 는 유사한 단계 들을 수행할 수도 있는데, 하지만 추가적으로 뷰 1 픽쳐를 뷰 0 기준 픽쳐의 탑 필드 또는 바텀 필드에 상대적으로 인코딩할지 여부를 결정한다.
변환 유닛 (52) 은 변환, 예컨대 이산 여현 변환 (DCT), 정수 변환, 또는 개념적으로 유사한 변환을 잔차 블록 (residual block) 에 적용하여 잔차 변환 계수 값들을 포함하는 비디오 블록을 생성한다. 변환 유닛 (52) 은 H.264 표준에 의하여 정의되며 DCT 와 개념적으로 유사한 것과 같은 다른 변환들을 수행할 수도 있다. 웨이브릿 (wavelet) 변환들, 정수 변환들, 서브-대역 변환들 또는 다른 타입의 변환들도 이용될 수 있다. 어느 경우에는, 변환 유닛 (52) 은 변환을 잔차 블록에 적용하여 잔차 변환 계수들의 블록을 생성한다. 변환 유닛 (52) 은 잔차 정보를 픽셀 값 도메인으로부터 변환 도메인, 예컨대 주파수 도메인으로 변환할 수도 있다. 양자화 유닛 (54) 은 잔차 변환 계수들을 양자화하여 비트율 (bit rate) 을 더 감소시킨다. 양자화 프로세스는 계수들 일부 또는 전부와 관련되는 비트 깊이 (bit depth) 를 감소시킬 수도 있다. 양자화의 정도는 양자화 파라미터를 조절함으로써 수정될 수도 있다.
양자화에 후속하여, 엔트로피 코딩 유닛 (56) 은 양자화된 변환 계수들을 엔트로피 코딩한다. 예를 들어, 엔트로피 코딩 유닛 (56) 은 콘텐츠 적응형 가변 길이 코딩 (CAVLC), 콘텍스트 적응형 이진 산술 코딩 (CABAC), 또는 다른 엔트로피 코딩 기술을 수행할 수도 있다. 엔트로피 코딩 유닛 (56) 에 의한 엔트로피 코딩에 후속하여, 인코딩된 비디오는 다른 디바이스로 송신되거나 후속 송신 또는 취출을 위하여 저장될 수도 있다. 콘텍스트 적응형 이진 산술 코딩 (CABAC) 의 경우에, 콘텍스트는 인접 매크로블록들에 기초할 수도 있다.
몇 가지 경우들에서, 엔트로피 코딩 유닛 (56) 또는 비디오 인코더 (20) 의 다른 유닛은 엔트로피 코딩에 외에도 다른 코딩 기능들을 수행하도록 구성될 수도 있다. 예를 들어, 엔트로피 코딩 유닛 (56) 은 매크로블록들 및 파티션들에 대한 CBP 값들을 결정하도록 구성될 수도 있다. 또한, 몇 가지 경우들에서, 엔트로피 코딩 유닛 (56) 은 매크로블록 또는 그의 파티션 내에서 계수들의 가변 길이 코딩을 수행할 수도 있다. 특히, 엔트로피 코딩 유닛 (56) 은 지그재그 스캔 또는 다른 스캔 패턴을 적용하여 매크로블록 또는 파티션 내의 변환 계수들을 스캔하고 압축을 더 하기 위하여 0 들의 런 (run) 들을 인코딩할 수도 있다. 엔트로피 코딩 유닛 (56) 은 인코딩된 비디오 비트스트림 내에, 송신을 위한 적합한 구문 요소들로써 헤더 정보를 구성할 수도 있다.
역양자화 유닛 (58) 및 역변환 유닛 (60) 은 역양자화 및 역변환을 각각 적용하여, 픽셀 도메인에서 잔차 블록을, 예를 들어 기준 블록으로서 추후 이용되도록 복원한다. 모션 보상 유닛 (44) 은 잔차 블록을 기준 프레임 저장소 (64) 의 프레임들 중 하나의 예측 블록에 가산하여 기준 블록을 연산할 수도 있다. 또한, 모션 보상 유닛 (44) 은 하나 이상의 보간 필터들을 복원된 잔차 블록에 적용함으로써 모션 추정에서 이용하기 위한 서브-정수 픽셀 값들을 연산할 수도 있다. 합산기 (62) 는 복원된 잔차 블록을 모션 보상 유닛 (44) 에 의하여 생성된 모션 보상된 예측 블록에 가산하여 기준 프레임 저장소 (64) 에 저장하기 위한 복원된 비디오 블록을 생성한다. 복원된 비디오 블록은 모션 추정 유닛 (42) 및 모션 보상 유닛 (44) 에 의하여, 후속 비디오 프레임 내의 블록들을 인터-코딩하기 위한 기준 블록으로서 이용될 수도 있다.
도 3 은 인코딩된 비디오 시퀀스를 디코딩하는 비디오 디코더 (30) 의 일 예를 예시하는 블록도이다. 도 3 의 예에서, 비디오 디코더 (30) 는 엔트로피 디코딩 유닛 (70), 모션 보상 유닛 (72), 인트라 예측 유닛 (74), 역양자화 유닛 (76), 역변환 유닛 (78), 기준 프레임 저장소 (82) 및 합산기 (80) 를 포함한다. 몇 가지 예들에서, 비디오 디코더 (30) 는 비디오 인코더 (20) (도 2) 와 관련하여 설명된 인코딩 패스와 일반적으로 역인 디코딩 패스를 수행할 수도 있다.
특히, 비디오 디코더 (30) 는 비대칭 패킹된 프레임들을 포함하는 비트스트림을 수신하도록 구성될 수도 있다. 비디오 디코더 (30) 는 비트스트림이 비대칭 패킹된 프레임들을 포함하는지 여부, 그리고 그렇다면 비대칭 패킹된 프레임들에 대한 프레임 패킹 구조를 나타내는 정보를 수신할 수도 있다. 예를 들어, 비디오 디코더 (30) 는 프레임 패킹 구조 SEI 메시지들을 해석하도록 구성될 수도 있다. 비디오 디코더 (30) 는 비대칭 패킹된 프레임 내의 양 픽쳐들을 모두 디코딩할 지, 또는 이들 중 오직 하나, 예를 들어 전체 해상도 픽쳐만을 디코딩할지 여부를 결정하도록 구성될 수도 있다. 이러한 결정은 비디오 디스플레이 (32) (도 1) 가 3-차원 비디오 데이터를 디스플레이할 수 있는지 여부, 비디오 디코더 (30) 가 특정 비트 레이트 및/또는 프레임 레이트의 두 뷰들을 디코딩 (그리고 감소된 해상도 뷰를 업샘플링) 하기 위한 기능을 가지는지 여부, 또는 비디오 디코더 (30) 및/또는 비디오 디스플레이 (32) 와 관련된 다른 인자들에 기반할 수도 있다.
목적지 디바이스 (40) 가 비대칭 패킹된 프레임들로부터의 3-차원 비디오 데이터를 디코딩 및/또는 디스플레이할 수가 없으면, 비디오 디코더 (30) 는 수신된 비대칭 프레임들을 구성 전체 해상도 인코딩된 픽쳐들 및 감소된 해상도 인코딩된 픽쳐들로 언패킹하고, 그리고 감소된 해상도 인코딩된 픽쳐들을 폐기할 수도 있다. 따라서, 비디오 디코더 (30) 는, 예를 들어 뷰 0 의 전체-해상도 픽쳐들만을 디코딩하도록 선택할 수도 있다. 반면에, 목적지 디바이스 (40) 가 비대칭 패킹된 프레임들의 3-차원 비디오 데이터를 디코딩 및 디스플레이할 수 있으면, 비디오 디코더 (30) 는 수신된 비대칭 프레임들을 구성 전체 및 감소된 해상도 인코딩된 픽쳐들들로 언패킹하고, 전체 및 감소된 해상도 인코딩된 픽쳐들을 디코딩하며, 감소된 해상도 픽쳐를 업샘플링하고, 그리고 픽쳐들을 비디오 디스플레이 (32) 로 전송할 수도 있다. 몇 가지 예들에서는, 비디오 디코더 (30) 는 비대칭 패킹된 프레임들을 HDMI 를 통해서 수신할 수도 있다.
비디오 디코더 (30) 는 더 나아가 비대칭 프레임의 감소된 해상도 인코딩된 픽쳐가 필드로서 또는 픽쳐로서 인코딩되는지 여부를 나타내는 정보를 수신할 수도 있다. 픽쳐로서 인코딩될 때, 비디오 디코더 (30) 는 뷰-간 인코딩된 감소된 해상도 픽쳐들에 대한 변위 벡터들, 또는 뷰-내, 뷰-간 예측 인코딩된 감소된 해상도 픽쳐들에 대한 모션 벡터들을 취출할 수도 있다. 비디오 디코더 (30) 는 변위 또는 모션 벡터들을 이용하여 감소된 해상도 픽쳐의 블록을 디코딩하기 위한 예측 블록을 취출할 수도 있다. 감소된 해상도 픽쳐를 디코딩한 이후에, 비디오 디코더 (30) 는 디코딩된 픽쳐를 동일한 비대칭 프레임의 전체 해상도 픽쳐와 동일한 해상도로 업샘플링할 수도 있다.
모션 보상 유닛 (72) 은 엔트로피 디코딩 유닛 (70) 으로부터 수신된 모션 벡터들에 기초하여 예측 데이터를 생성할 수도 있다. 모션 보상 유닛 (72) 은 비트스트림 내에서 수신된 모션 벡터들을 이용하여 기준 프레임 저장소 (82) 내의 기준 프레임들 내의 예측 블록을 식별할 수도 있다. 인트라 예측 유닛 (74) 은 비트스트림 내에서 수신된 인트라 예측 모드들을 이용하여 공간적으로 인접한 블록들로부터 예측 블록을 형성할 수도 있다. 역양자화 유닛 (76) 은 비트스트림 내에서 제공되며 엔트로피 디코딩 유닛 (70) 에 의하여 디코딩된 양자화된 블록 계수들을 역 양자화, 즉, 양자화해제 (de-quantize) 한다. 역 양자화 프로세스는, 예를 들어 H.264 디코딩 표준 내에 정의되는 바와 같은 종래의 프로세스를 포함할 수도 있다. 또한, 역 양자화 프로세스는, 적용되어야 하는 양자화의 정도 및 유사한 방식으로 역 양자화의 정도를 결정하기 위하여, 각 매크로블록에 대하여 인코더 (20) 에 의하여 연산된 양자화 파라미터 QPY 를 이용하는 것을 포함할 수도 있다.
픽셀 도메인에서 잔차 블록들을 생성하기 위하여, 역 변환 유닛 (58) 은 역 변환을, 예를 들어, 역 DCT, 역 정수 변환, 또는 개념적으로 유사한 역 변환 프로세스를 변환 계수들에 적용한다. 모션 보상 유닛 (72) 은, 모션 보상된 블록들을 생성하는데, 이 때 보간 필터들에 기초한 보간을 수행할 수도 있다. 서브-픽셀 정밀도 (sub-pixel precision) 를 가지고 모션 추정을 위하여 이용될 보간 필터들에 대한 식별자들이 구문 요소 내에 포함될 수도 있다. 모션 보상 유닛 (72) 은, 비디오 블록의 인코딩 도중에 비디오 인코더 (20) 에 의하여 이용된 바와 같은 보간 필터들을 이용하여 기준 블록의 서브-정수 픽셀들에 대한 보간된 값들을 연산할 수도 있다. 모션 보상 유닛 (72) 은 수신된 구문 정보에 따라서 비디오 인코더 (20) 에 의하여 이용된 보간 필터들을 결정하고 이 보간 필터들을 이용하여 예측 블록들을 생성할 수도 있다.
모션 보상 유닛 (72) 은 구문 정보 중 몇 가지를 이용하여, 인코딩된 비디오 시퀀스의 프레임 을 인코딩하는데 이용된 매크로블록들의 크기들, 인코딩된 비디오 시퀀스의 프레임의 각 매크로블록이 어떻게 파티셔닝되었는지를 설명하는 파티션 정보, 어떻게 각 파티션이 인코딩되는지를 표시하는 모드들, 각 인터-인코딩된 매크로블록 또는 파티션에 대한 하나 이상의 기준 프레임들 (또는 리스트들), 및 인코딩된 비디오 시퀀스를 디코딩하기 위한 다른 정보를 결정할 수도 있다.
합산기 (80) 는 잔차 블록들을 모션 보상 유닛 (72) 또는 인트라-예측 유닛에 의하여 생성된 대응하는 예측 블록들과 합산하여 디코딩된 블록들을 형성한다. 원하는 경우, 블록화 아티팩트들을 제거하기 위하여, 디블록킹 필터가 디코딩된 블록들을 필터링하기 위하여 적용될 수도 있다. 그러면, 디코딩된 비디오 블록들이 기준 프레임 저장소 (82) 내에 저장되는데, 이것이 후속 모션 보상을 위한 기준 블록들을 제공하고, 디스플레이 디바이스 (도 1 의 디스플레이 디바이스 (32) 와 같은 디바이스) 에 제시되기 위한 디코딩된 비디오를 생성한다.
비대칭 프레임의 감소된 해상도 픽쳐가 필드로서 인코딩될 때, 비디오 인코더 (30) 는 다른 뷰의 이전에 디코딩된 픽쳐의 탑 필드 또는 바텀 필드를 감소된 해상도 인코딩된 픽쳐를 디코딩하기 위한 기준 필드로서 이용할 수도 있다. 비디오 인코더 (30) 는 동일한 뷰의 이전에 디코딩된 감소된 해상도 픽쳐를 기준 필드로서 이용할 수도 있는데, 여기서 이전에 디코딩된 감소된 해상도 픽쳐들은 업샘플링 이전에 기준 프레임 저장소 (82) 에 저장될 수도 있다. 이러한 방식으로, 비디오 디코더 (30) 는 감소된 해상도 인코딩된 픽쳐를 동일한 뷰의 감소된 해상도 디코딩된 픽쳐에 상대적으로, 또는 반대 뷰의 전체 해상도 디코딩된 픽쳐의 탑 또는 바텀 필드에 상대적으로 디코딩할 수도 있다. 감소된 해상도 픽쳐를 디코딩한 이후에, 비디오 디코더 (30) 는 감소된 해상도 디코딩된 픽쳐를 기준 프레임 저장소 (82) 내에 저장하고, 그리고 감소된 해상도 디코딩된 픽쳐를 업샘플링하여 대응하는 뷰의 전체 해상도 픽쳐를 형성할 수도 있다.
도 4 는 좌안 뷰 및 우안 뷰의 픽쳐들 (100, 102) 이 비디오 인코더 (20) 에 의하여 통합되어 비대칭 패킹된 프레임 (104) 을 형성하는 것을 예시하는 개념적인 도면이다. 이러한 예에서는, 비디오 인코더 (20) 는 장면의 좌안 뷰의 로 비디오 데이터를 포함하는 픽쳐 (100) 및 해당 장면의 우안 뷰의 로 비디오 데이터를 포함하는 픽쳐 (102) 를 수신한다. 좌안 뷰는 뷰 0 에 대응할 수도 있고, 우안 뷰는 뷰 1 에 대응할 수도 있다. 픽쳐들 (100, 102) 은 동일한 시간적 인스턴스의 두 개의 픽쳐들에 대응할 수도 있다. 예를 들어, 픽쳐들 (100, 102) 은 실질적으로 동일한 시간에 카메라들에 의하여 캡쳐된 바 있을 수도 있다.
도 4 의 예에서는, 픽쳐 (100) 의 샘플들이 X들로써 표시되고, 픽쳐 (102) 의 샘플들 (예컨대, 픽셀들) 은 O들로써 표시된다. 이러한 예에서는, 비디오 인코더 (20) 는 픽쳐 (100) 를 인코딩하고, 픽쳐 (102) 를 다운샘플링 및 인코딩하며, 그리고 픽쳐들을 통합하여 비대칭 패킹된 프레임 (104) 을 형성한다. 이러한 예에서는, 비디오 인코더 (20) 는 픽쳐 (100) 에 대한 전체 해상도 인코딩된 픽쳐 및 픽쳐 (102) 에 대한 감소된 해상도 인코딩된 픽쳐를 비대칭 패킹된 프레임 (104) 내에 상하향 구조로 배열한다. 픽쳐 (102) 를 다운샘플링하기 위하여, 비디오 인코더 (20) 는 픽쳐 (102) 의 교번하는 행들을 데시메이션 (decimate) 할 수도 있다. 다른 예로서, 비디오 인코더 (20) 는 픽쳐 (102) 의 교번하는 행들을 완전히 제거하여 픽쳐 (102) 의 다운샘플링된 버전을 생성할 수도 있다. 예로서, 비디오 인코더 (20) 는 픽쳐 (102) 를 오점형 (체커보드) 샘플링하고, 그리고 이러한 샘플들을 비대칭 패킹된 프레임 (104) 내에서 행들로 배열할 수도 있다.
도 4 의 예시에서는, 비대칭 패킹된 프레임 (104) 은 픽쳐 (100) 로부터의 데이터에 대응하는 X 들 및 픽쳐 (102) 로부터의 데이터에 대응하는 O들을 포함한다. 그러나, 픽쳐 (102) 에 대응하는 비대칭 패킹된 프레임 (104) 의 데이터는 다운샘플링에 후속하여 픽쳐 (102) 의 데이터와 반드시 정확하게 배열되지는 않을 수도 있다는 것이 이해되어야 한다. 이와 유사하게, 인코딩에 후속하여, 비대칭 패킹된 프레임 (104) 내의 픽쳐들의 데이터는 픽쳐들 (100, 102) 의 데이터와는 상이하게 될 가능성이 있을 것이다. 이에 상응하여, 비대칭 패킹된 프레임 (104) 내의 하나의 X 의 데이터가 반드시 픽쳐 (100) 내의 대응하는 X 와 동일하다는 것이 추정되지 않아야 한다. 이와 유사하게, 비대칭 패킹된 프레임 (104) 내의 하나의 O 의 데이터가 픽쳐 (102) 내의 대응하는 O 와 동일하다는 것, 또는 비대칭 패킹된 프레임 (104) 의 O들이 픽쳐 (102) 의 O들과 동일한 해상도를 가진다는 것이 추정되지 않아야 한다.
비대칭 패킹된 프레임 (104) 은 상하향 프레임 패킹 구조에 대응할 수도 있다. 즉, 픽쳐 (100) 에 대응하는 데이터가 비대칭 패킹된 프레임 (104) 내의 픽쳐 (102) 에 대응하는 데이터 상부에 배치된다. 비록 행들로서 도시되지만, 비대칭 패킹된 프레임 (104) 내의 픽쳐 (102) 에 대응하는 데이터는 오점형 (체커보드) 샘플링될 수도 있으며, 따라서 역시 오점형 구조를 이용하여 업샘플링될 수도 있다. 대안적으로는, 비대칭 패킹된 프레임 (104) 내의 픽쳐 (102) 에 대응하는 데이터는 픽쳐 (102) 의 교번하는 행들로부터 샘플링될 수도 있으며, 이러한 경우에 데이터는, 예를 들어 디코딩에 후속하여 데이터의 교번하는 행들을 보간함으로써 업샘플링될 수도 있다.
도 5 는 좌안 뷰 및 우안 뷰의 픽쳐들 (100, 102) 이 비디오 인코더 (20) 에 의하여 통합되어 비대칭 패킹된 프레임 (106) 을 형성하는 것을 예시하는 개념적인 도면이다. 이러한 예에서는, 비디오 인코더 (20) 는 장면의 좌안 뷰의 로 비디오 데이터를 포함하는 픽쳐 (100) 및 해당 장면의 우안 뷰의 로 비디오 데이터를 포함하는 픽쳐 (102) 를 수신한다. 픽쳐들 (100, 102) 은 동일한 시간적 인스턴스의 두 개의 픽쳐들에 대응할 수도 있다. 예를 들어, 픽쳐들 (100, 102) 은 실질적으로 동일한 시간에 카메라들에 의하여 캡쳐된 바 있을 수도 있다.
도 5 의 예에서는, 픽쳐 (100) 의 샘플들이 X들로써 표시되고, 픽쳐 (102) 의 샘플들은 O들로써 표시된다. 이러한 예에서는, 비디오 인코더 (20) 는 픽쳐 (100) 를 인코딩하고, 픽쳐 (102) 를 다운샘플링 및 인코딩하며, 그리고 픽쳐들을 통합하여 비대칭 패킹된 프레임 (106) 을 형성한다. 이러한 예에서는, 비디오 인코더 (20) 는 픽쳐 (100) 에 대한 전체 해상도 인코딩된 픽쳐 및 픽쳐 (102) 에 대한 감소된 해상도 인코딩된 픽쳐를 비대칭 패킹된 프레임 (106) 내에 사이드-바이-사이드 배열로 배열한다. 픽쳐 (102) 를 다운샘플링하기 위하여, 비디오 인코더 (20) 는 픽쳐 (102) 의 교번하는 열들을 데시메이션 할 수도 있다. 대안적으로는, 비디오 인코더 (20) 는 픽쳐 (102) 의 교번하는 열들을 완전히 제거하여 픽쳐 (102) 의 다운샘플링된 버전을 생성할 수도 있다.
도 5 의 예시에서는, 비대칭 패킹된 프레임 (106) 은 픽쳐 (100) 로부터의 데이터에 대응하는 X 들 및 픽쳐 (102) 로부터의 데이터에 대응하는 O들을 포함한다. 그러나, 픽쳐 (102) 에 대응하는 비대칭 패킹된 프레임 (106) 의 데이터는 다운샘플링에 후속하여 픽쳐 (102) 의 데이터와 반드시 정확하게 배열되지는 않을 수도 있다는 것이 이해되어야 한다. 이와 유사하게, 인코딩에 후속하여, 비대칭 패킹된 프레임 (106) 내의 픽쳐들의 데이터는 픽쳐들 (100, 102) 의 데이터와는 상이하게 될 가능성이 있을 것이다. 이에 상응하여, 비대칭 패킹된 프레임 (106) 내의 하나의 X 의 데이터가 반드시 픽쳐 (100) 내의 대응하는 X 와 동일하다는 것이 추정되지 않아야 한다. 이와 유사하게, 비대칭 패킹된 프레임 (106) 내의 하나의 O 의 데이터가 픽쳐 (102) 내의 대응하는 O 와 동일하다는 것, 또는 비대칭 패킹된 프레임 (106) 의 O들이 픽쳐 (102) 의 O들과 동일한 해상도를 가진다는 것이 추정되지 않아야 한다.
비대칭 패킹된 프레임 (106) 은 측면향 패킹 배열에 대응할 수도 있다. 즉, 픽쳐 (100) 에 대응하는 데이터가 픽쳐 (102) 에 대응하는 데이터와 나란하게 배치된다. 비록 열들로서 도시되지만, 비대칭 패킹된 프레임 (106) 내의 픽쳐 (102) 에 대응하는 데이터는 오점형 (체커보드) 샘플링될 수도 있으며, 따라서 역시 오점형 구조를 이용하여 업샘플링될 수도 있다. 대안적으로는, 비대칭 패킹된 프레임 (106) 내의 픽쳐 (102) 에 대응하는 데이터는 픽쳐 (102) 의 교번하는 열들로부터 샘플링될 수도 있으며, 이러한 경우에 데이터는, 예를 들어 디코딩에 후속하여 데이터의 교번하는 열들을 보간함으로써 업샘플링될 수도 있다.
도 6 은, 우안 뷰의 픽쳐들 (112A-112D (픽쳐들 (112)) 을 필드들로서 인코딩하는 동안 좌안 뷰의 픽쳐들 (110A-110D (픽쳐들 (110)) 을 프레임들로서 인코딩하기 위한 예시적인 프로세스를 예시하는 개념적인 도면이다. 이러한 예에서는, 픽쳐들 (110) 은 좌안 뷰 (예를 들어, 뷰 0) 에 대응하고, 픽쳐들 (112) 은 우안 뷰 (예를 들어, 뷰 1) 에 대응한다. 일반적으로, 픽쳐들 (112) 은 우안 뷰의 다운샘플링된 픽쳐들을 포함할 수도 있다. 예를 들어, 비디오 처리 유닛은 우안 뷰의 도달하는 픽쳐들의 행들을 데시메이션하여 픽쳐들 (112) 을 생성할 수도 있다.
비디오 인코더, 예컨대 비디오 인코더 (20), 또는 비디오 인코더에 커플링된 비디오 사전처리 유닛은 좌안 뷰 및 우안 뷰의 전체 해상도의 인코딩되지 않은 픽쳐들을 수신할 수도 있다. 비디오 인코더 (20) 는 우안 뷰의 픽쳐들을 데시메이션함으로써 우안 뷰의 픽쳐들의 해상도를 감소시킬 수도 있다. 이러한 방식으로, 비디오 인코더 (20) 는 픽쳐들 (110) 의 수직 해상도의 절반을 가지지만, 하지만 픽쳐들 (110) 과 동일한 수평 해상도 (너비) 를 가지는 픽쳐들 (112) 을 생성할 수도 있다.
비디오 인코더는 정상적으로, 즉 프레임들로서 픽쳐들 (110) 을 인코딩할 수도 있다. 그러나, 이러한 예에서는, 비디오 인코더 (20) 는 픽쳐들 (112) 을 필드들로서 인코딩할 수도 있다. 비디오 인코더 (20) 는 픽쳐들 (112) 을 우안 뷰의 이전에 인코딩된 (그리고 순차적으로 디코딩된) 픽쳐들에 대하여, 또는 좌안 뷰의 이전에 인코딩된 (그리고 순차적으로 디코딩된) 픽쳐들에 상대적으로 인코딩할 수도 있다. 예를 들어, 비디오 인코더 (20) 는 픽쳐들 (112) 을 픽쳐들 (110) 중 하나의 탑 필드 또는 픽쳐들 (110) 중 하나의 바텀 필드에 상대적으로 인코딩할 수도 있다. 즉, 비디오 인코더 (20) 는 픽쳐들 (110) 중 하나의 탑 필드를, 예를 들어 픽쳐들 (112) 중 하나의 필드의 행들 및 픽쳐들 (110) 중 하나의 교번하는 행들 (탑 행으로부터 시작하는) 간의 차분들을 연산함으로써, 픽쳐들 (112) 중 하나를 인코딩하기 위한 기준 필드로서 이용할 수도 있다. 대안적으로는, 비디오 인코더 (20) 는 픽쳐들 (110) 중 하나의 바텀 필드를 기준 필드로서 이용할 수도 있는데, 이 경우에는 비디오 인코더 (20) 는 픽쳐들 (112) 중 하나의 행들 및 픽쳐들 (110) 중 하나의 교번하는 행들 (탑 행 다음의 행부터 시작하는) 간의 차분들을 연산할 수도 있다. 일반적으로, 비디오 인코더 (20) 는 픽쳐들 (112) 을 이전에 코딩된 픽쳐들 (112) 및 이전에 코딩된 픽쳐들 (110) 의 탑 및/또는 바텀 필드들에 상대적으로 인코딩할 수도 있다.
비디오 인코더 (20) 는 픽쳐들 (110) 및 픽쳐들 (112) 로부터 독립적인 액세스 유닛들을 형성할 수도 있다. 이와 함께, 픽쳐들 (110A 및 112A) 은 스테레오 이미지 쌍을 형성할 수도 있다. 이와 유사하게, 픽쳐들 (110B 및 112B) 이 스테레오 이미지 쌍을 형성할 수도 있고, 픽쳐들 (110C 및 112C) 이 스테레오 이미지 쌍을 형성할 수도 있으며, 그리고 픽쳐들 (110D 및 112D) 이 스테레오 이미지 쌍을 형성할 수도 있다. 그러나, 오히려 스테레오 이미지 쌍을 형성하는 두 개의 이미지들을 포함하는 비대칭 프레임을 형성하는 대신에, 비디오 인코더 (20) 는 픽쳐들 (110 및 112) 각각으로부터 독립적인 액세스 유닛들을 형성할 수도 있다. 비디오 인코더 (20) 는 도 6 의 예에서 예시된 바와 같이, 교번적으로 픽쳐들 (110 및 112) 을 출력할 수도 있다. 이러한 기술은 프레임 필드 인터리브드 코딩 (frame field interleaved coding) 이라고 지칭될 수도 있다. 따라서, 비디오 인코더 (20) 는 프레임로서 코딩된 픽쳐들 및 필드들로서 코딩된 픽쳐들 모두를 포함하는 비트스트림을 형성할 수도 있고, 그리고 필드 코딩된 픽쳐들은 프레임 코딩된 픽쳐들에 비하여 감소된 해상도를 가질 수도 있다. 더욱이, 필드 코딩된 픽쳐들은 비트스트림 내에서 더 이전에 발생하는 하나 이상의 프레임 또는 필드 코딩된 픽쳐들에 상대적으로 코딩될 수도 있다.
프레임 필드 인터리브드 코딩은 전체 해상도 픽쳐로부터 감소된 해상도 픽쳐의 예측을 허용하기 위한 일 예이다. 전체 해상도 픽쳐들을 프레임들로서 코딩하고 감소된 해상도 픽쳐들을 필드들로서 코딩함으로써, 상대적으로 높은 코딩 및 비트스트림 효율이 달성될 수도 있다. 디코딩된 픽쳐들 (110) 은 상보적 필드 쌍들로서 다뤄지고 그리고 감소된 해상도 필드, 즉, 픽쳐들 (112) 중 하나가 코딩될 때 기준 픽쳐들로서 이용될 수도 있다. 몇 가지 예들에서는, 한 뷰 (예를 들어, 좌측 뷰 또는 뷰 0) 의 각각의 픽쳐는 프레임으로서 코딩될 수도 있고, 다른 뷰 (예를 들어, 우측 뷰 또는 뷰 1) 의 각각의 픽쳐는 필드로서 코딩될 수도 있다. 이에 상응하여, 전체 해상도 인코딩된 픽쳐들을 포함하는 뷰는 전체 해상도 뷰 또는 고해상도 뷰라고 지칭될 수도 있고, 감소된 해상도 인코딩된 픽쳐들을 포함하는 뷰는 감소된 해상도 뷰 또는 저해상도 뷰라고 지칭될 수도 있다.
이러한 기술은 몇 가지 예들에서는 H.264/AVC 의 확장으로서 이용될 수도 있다. 몇 가지 예들에서는, 이러한 기술은, 미래 코딩 표준들, 예컨대 H. 265 와 같은 표준들이, 프레임 및 필드 코딩 모두를 지원한다고 가정하면 이들에 대한 확장으로서 이용될 수도 있다. 따라서, 이러한 기술들은 블록 레벨에서의 신규한 코딩 툴들을 반드시 요청하지는 않는다.
도 7 은 픽쳐를 필드 인코딩하여 비대칭 패킹된 프레임 내에 포함되기 위한 감소된 해상도 인코딩된 픽쳐를 생성하는 것을 예시하는 개념적인 도면이다. 도 7 은 픽쳐 (120) 를 뷰 0 (예를 들어, 좌안 뷰) 기준 픽쳐로서, 그리고 픽쳐 (122) 를 필드로서 코딩될 뷰 1 (예를 들어, 우안 뷰) 픽쳐로서 예시한다. 이러한 예에서는, 픽쳐 (120) 의 탑 필드에 대응하는 뷰 0 기준 픽쳐의 픽셀들의 행들은 X들로써 예시되고, 픽쳐 (120) 의 바텀 필드에 대응하는 픽쳐 (120) 의 픽셀들의 행들은 O들로써 표시된다.
이러한 예에서는, 픽쳐 (122) 는 픽쳐 (120) 의 탑 필드에 상대적으로 필드로서 인코딩된다. 따라서, 픽쳐 (122) 의 행들은 픽쳐 (120) 의 탑 필드로부터 예측될 수도 있다. 다시 말하면, 인코더는 픽쳐 (122) 의 탑 필드를 기준 필드로서 이용할 수도 있다. 픽쳐 (122) 내의 각각의 픽셀에 대하여, 비디오 인코더는 픽셀 및 픽쳐 (122) 의 탑 필드의 대응하는 행 내의 병기된 (collocated) 픽셀 간의 차분을 연산할 수도 있다. 그러면, 비디오 인코더는 픽쳐 (122) 의 식별자, 픽쳐 (122) 의 탑 필드가 픽쳐 (122) 의 인코딩된 버전을 예측하는데 이용되었다는 표시자, 및 픽쳐 (122) 를 인코딩하기 위한 잔차 값들 (즉, 픽쳐 (122) 및 픽쳐 (120) 의 탑 필드 간의 연산된 차분들) 을 인코딩할 수도 있다. 그러면, 비디오 인코더는, 예를 들어 도 6 에 도시된 바와 같이 뷰 0 의 두 개의 프레임-코딩된 픽쳐들 사이에서 인터리빙된 픽쳐 (122) 의 인코딩된 버전을 출력할 수도 있다.
도 8 은 이 비대칭 패킹된 프레임 (140) 의 감소된 해상도 인코딩된 픽쳐 (144) 의 블록 (148) 의 뷰-간 예측을 예시하는 개념적인 도면이다. 도 8 은 두 개의 예시적인 비대칭 패킹된 프레임들 (130, 140) 을 예시한다. 비대칭 패킹된 프레임 (130) 은 좌안 뷰 (예를 들어, 뷰 0) 에 대응하는 전체 해상도 인코딩된 픽쳐 (132), 및 우안 뷰 (예를 들어, 뷰 1) 에 대응하는 감소된 해상도 인코딩된 픽쳐 (134) 를 포함한다. 비대칭 패킹된 프레임 (140) 은 좌안 뷰에 대응하는 전체 해상도 인코딩된 픽쳐 (142), 및 우안 뷰에 대응하는 감소된 해상도 인코딩된 픽쳐 (144) 를 포함한다.
감소된 해상도 인코딩된 픽쳐 (144) 는 블록 (148) 을 포함할 수도 있는데, 이것은 예를 들어 비대칭 패킹된 프레임 (130) 의 감소된 해상도 인코딩된 픽쳐 (134) 의 블록 (138) 에 상대적으로 뷰-내 예측될 수도 있다. 도 8 의 예는 블록 (148) 에 상대적인 블록 (138) 의 위치를 표시하는 모션 벡터 (154) 를 예시한다. 대안적으로는, 블록 (148) 은, 예를 들어 비대칭 패킹된 프레임 (140) 의 전체 해상도 인코딩된 픽쳐 (142) 의 블록 (146) (변위 벡터 (150) 에 의하여 도시된 바와 같이) 또는 비대칭 패킹된 프레임 (130) 의 전체 해상도 인코딩된 픽쳐 (132) 의 블록 (136) (변위 벡터 (152) 에 의하여 도시된 바와 같이) 에 상대적으로 뷰-간 예측될 수도 있다.
변위 벡터 (150) 는 전체 해상도 인코딩된 픽쳐 (142) 내의 블록 (148) 에 상대적인 블록 (146) 의 위치를 표시할 수도 있다. 변위 벡터 (152) 는 비대칭 프레임 (130) 의 전체 해상도 인코딩 픽쳐 (132) 내의 블록 (148) 에 상대적인 블록 (136) 의 위치를 표시할 수도 있다. 변위 벡터 (154) (모션 벡터라고 간주될 수도 있다) 는 감소된 해상도 인코딩된 픽쳐 (134) 내의 블록 (148) 에 상대적인 블록 (138) 의 위치를 표시할 수도 있다. 이러한 방식으로, 블록 (148) 은 뷰-내 프레임-간 인코딩되거나, 뷰-간 프레임-내 인코딩되거나, 또는 뷰-간 프레임-간 인코딩될 수도 있다. 이에 상응하여, 3 개의 인코딩 모드들: 변위 벡터 (154) 의 예에 의하여 예시된 바와 같이 상이한 프레임들 내의 동일한 뷰 (예를 들어, 우안 뷰) 로부터의 블록 (148) 의 예측, 변위 벡터 (150) 의 예에 의하여 예시된 바와 같이 다른 뷰 (예를 들어, 좌안 뷰) 내의 동일한 프레임으로부터의 블록 (148) 의 예측, 및 변위 벡터 (152) 의 예에 의하여 예시된 바와 같이 상이한 프레임 및 다른 뷰 (예를 들어, 좌안 뷰) 로부터의 블록 (148) 의 예측이 존재할 수도 있다.
위에서 언급된 바와 같이, 비디오 인코더, 예컨대 비디오 인코더 (20) 는 비대칭 패킹된 프레임 (140) 외부의 기준 블록 (148) 의 위치에 상대적으로 변위 벡터들 (150, 152, 154) 을 연산할 수도 있다. 즉, 변위 벡터들 (150, 152, 154) 은 픽쳐 (144) 가 픽쳐 (142) 와 통합되지 않고, 반대로 개별 픽쳐인 것처럼 블록 (148) 의 위치에 상대적으로 연산될 수도 있다. 이를 수행하기 위해서, 비대칭 프레임 (140) 내의 블록 (148) 의 위치가 포지션 (x0, y0) 에서 식별된다고 한다. 전체 해상도 픽쳐 (142) 는 h개의 픽셀들의 높이 및 w개의 픽셀들의 너비를 가진다고 한다.
일 예에서는, 도 8 의 예에서 예시된 바와 같이 비대칭 패킹된 프레임 (140) 이 상하향 패킹 구조를 가진다고 가정하면, 픽쳐 (144) 는 전체 해상도 픽쳐 (142) 와 동일한 너비 (즉, w 개의 픽셀들의 너비) 를 가지지만 전체 해상도 픽쳐 (142) 의 높이보다는 적은 높이를 가질 수도 있다. 예를 들어, 픽쳐 (144) 는 h/2 개의 픽셀들의 높이를 가질 수도 있다. 이러한 예에서는, 변위 벡터들 (150, 152) 은 위치 (x0, 2* (y0-h)) 에 상대적으로 연산될 수도 있다. 더욱 일반적으로는, 만일 감소된 해상도 픽쳐 (144) 가 n*h/d 의 높이를 가진다면, 변위 벡터들 (150, 152) 은 위치 (x0, (d/n) * (y0-h)) 에 상대적으로 연산될 수도 있고 그리고 변위 벡터 (154) 는 위치 (x0, y0) 에 상대적으로 연산될 수도 있다.
다른 예로서, 비대칭 패킹된 프레임 (140) 이 측면향 패킹 배열을 가진다고 가정하면, 픽쳐 (144) 는 전체 해상도 픽쳐 (142) 와 동일한 높이 (즉, h 개의 픽셀들의 높이) 를 가지지만 전체 해상도 픽쳐 (142) 의 너비보다는 적은 너비를 가질 수도 있다. 예를 들어, 픽쳐 (144) 는 w/2 개의 픽셀들의 너비를 가질 수도 있다. 이러한 예에서는, 변위 벡터들 (150, 152) 은 위치 (2* (x0-w), y0) 에 상대적으로 연산될 수도 있다. 더욱 일반적으로는, 만일 감소된 해상도 픽쳐 (144) 가 n*w/d 의 너비를 가진다면, 변위 벡터들 (150, 152) 은 위치 ( (d/n) * (x0-w), y0) 에 상대적으로 연산될 수도 있다.
도 9 는 두 개의 상이한 뷰들의 두 개의 픽쳐들을 하나의 비대칭 패킹된 프레임으로 통합하고 이러한 비대칭 패킹된 프레임을 인코딩하기 위한 예시적인 방법을 예시하는 흐름도이다. 비록 도 1 및 도 2 의 예시적인 구성 요소들에 대해서 일반적으로 설명되었지만, 다른 인코더들, 인코딩 유닛들, 및 인코딩 디바이스들이 도 9 의 방법을 수행하도록 구성될 수도 있다는 것이 이해되어야 한다. 더욱이, 도 9 의 방법의 단계 들은 도 9 에 도시된 순서로 반드시 수행될 필요가 없으며, 추가적이거나 대안적인 단계 들이 수행될 수도 있다.
도 9 의 예에서는, 비디오 인코더 (20) 는 우선 좌안 뷰 (160), 예를 들어, 뷰 0 의 픽쳐를 수신한다. 비디오 인코더 (20) 는 또한 우안 뷰, 예를 들어, 뷰 1 (162) 의 픽쳐를 수신함으로써, 두 개의 수신된 픽쳐들이 스테레오 이미지 쌍을 형성하도록 할 수도 있다. 좌안 뷰 및 우안 뷰는 스테레오 뷰 쌍을 형성할 수도 있는데, 이것은 또한 상보적 뷰 쌍이라고 지칭된다. 수신된 우안 뷰 픽쳐는 수신된 좌안 뷰 픽쳐와 동일한 시간적 위치에 대응할 수도 있다. 즉, 좌안 뷰 픽쳐 및 우안 뷰 픽쳐는 실질적으로 동일한 시간에 캡쳐되거나 생성된 바 있을 수 있다. 그러면, 비디오 인코더 (20) 는 우안 뷰 픽쳐 (166) 의 해상도를 감소시킬 수도 있다. 몇 가지 예들에서는, 비디오 인코더 (20) 의 사전처리 유닛이 픽쳐들을 수신할 수도 있다. 몇 가지 예들에서는, 비디오 사전처리 유닛은 비디오 인코더 (20) 의 외부에 있을 수도 있다.
도 9 의 예에서는, 비디오 인코더 (20) 는 우안 뷰 픽쳐 (164) 의 해상도를 감소시킨다. 예를 들어, 비디오 인코더 (20) 는 수신된 우안 뷰 픽쳐를 서브샘플링 (예를 들어, 행-단위, 열-단위, 또는 오점형 (체커보드) 서브샘플링을 이용하여) 하고, 수신된 우안 뷰 픽쳐의 행들 또는 열들을 데시메이션하며, 또는 그렇지 않으면 수신된 우안 뷰 픽쳐의 해상도를 감소시킬 수도 있다. 몇 가지 예들에서는, 비디오 인코더 (20) 는 좌안 뷰의 전체 해상도 픽쳐의 너비의 절반 또는 높이의 절반을 가지는 감소된 해상도 픽쳐를 생성할 수도 있다. 비디오 전처리기를 포함하는 다른 예들에서는, 비디오 전처리기는 우안 뷰 픽쳐의 해상도를 감소시키도록 구성될 수도 있다.
그러면, 비디오 인코더 (20) 는 수신된 좌안 뷰 픽쳐 및 다운샘플링된 우안 뷰 픽쳐 (166) 모두를 포함하는 비대칭 프레임을 형성할 수도 있다. 예를 들어, 비디오 인코더 (20) 는, 우안 뷰 픽쳐가 좌안 뷰 픽쳐와 동일한 너비를 가진다고 가정하면, 상하향 구조를 가지는 비대칭 프레임을 형성할 수도 있다. 몇 가지 예들에서는, 비디오 인코더 (20) 는, 전체 해상도 픽쳐가 감소된 해상도 픽쳐 위에 존재하는, 예를 들어 좌안 뷰 픽쳐가 감소된 해상도를 가지는 우안 뷰 픽쳐 위에 배치되는, 상하향 구조를 가지는 비대칭 프레임을 형성할 수도 있다. 다른 예들에서는, 비디오 인코더 (20) 는, 전체 해상도 픽쳐가 감소된 해상도 픽쳐 아래에 존재하는, 예를 들어 좌안 뷰 픽쳐가 감소된 해상도를 가지는 우안 뷰 픽쳐 아래에 배치되는, 상하향 구조를 가지는 비대칭 프레임을 형성할 수도 있다. 또 다른 예들에서는, 예를 들어, 감소된 해상도 픽쳐가 전체 해상도 픽쳐에 비하여 동일한 높이를 가지나 감소된 너비를 가지는 경우에서는, 비디오 인코더 (20) 는 사이드-바이-사이드 배열를 가지는 비대칭 프레임을 형성할 수도 있고, 그리고 전체 해상도 픽쳐는 감소된 해상도 픽쳐의 좌측에 또는 우측에 배치될 수도 있다.
그러면, 비디오 인코더 (20) 는 비대칭 프레임 (168) 을 인코딩할 수도 있다. 몇 가지 예들에서는, 비디오 인코더 (20) 는 비대칭 프레임의 우안 뷰 픽쳐 부분을 오직 우안 뷰의 이전에 코딩된 데이터에 상대적으로 인코딩하도록 구성될 수도 있다. 따라서, 비디오 인코더 (20) 는 동일한 픽쳐의 다른 데이터에 상대적으로 인트라-예측 (I-예측) 모드에서, 또는 우안 뷰의 하나 이상의 이전에 인코딩된 픽쳐들에 상대적으로 인터-예측 (P-예측 또는 B-예측) 모드에서 감소된 해상도 픽쳐를 인코딩할 수도 있다.
다른 예들에서는, 비디오 인코더 (20) 는 우안 뷰의 또는 좌안 뷰의 데이터에 상대적으로 비대칭 프레임의 감소된 해상도 우안 뷰 픽쳐 부분을 인코딩하도록 구성될 수도 있다. 예를 들어, 비디오 인코더 (20) 는 비대칭 프레임의 좌안 뷰 부분에 상대적으로 감소된 해상도 우안 뷰 픽쳐를 인코딩할 수도 있다. 또한, 비디오 인코더 (20) 는 비대칭 프레임의 감소된 해상도 우안 뷰 부분을 이전에 인코딩된 비대칭 프레임들의 좌안 뷰 부분들에 상대적으로 인코딩할 수도 있다.
비디오 인코더 (20) 는 감소된 해상도 우안 뷰 픽쳐를 우안 뷰의 픽쳐에 상대적으로 또는 이전에 인코딩된 비대칭 프레임의 좌안 뷰의 픽쳐에 상대적으로 인코딩할 수도 있다. 따라서, 비디오 인코더 (20) 는 인터-모드에서 현재 비대칭 프레임의 우안 뷰 부분의 각 블록을, 이전에 인코딩된 우안 뷰 픽쳐들의 블록들, 동일한 비대칭 프레임의 좌안 뷰 픽쳐 부분의 블록들, 또는 이전에 인코딩된 비대칭 프레임들의 이전에 인코딩된 좌안 뷰 부분들의 블록들에 상대적으로 인코딩할 수도 있다. 위에서 언급된 바와 같이, 현재 픽쳐의 블록들을 인코딩하기 위하여, 비디오 인코더 (20) 는, 비대칭 패킹된 프레임 내에 포지셔닝된 블록의 위치가 아니라 감소된 해상도 우안 뷰 픽쳐 내의 블록의 위치에 상대적으로 변위 벡터들을 연산할 수도 있다.
비대칭 프레임을 인코딩한 이후에, 비디오 인코더 (20) 는 뷰-간 예측이 우안 뷰 픽쳐 (170) 를 인코딩하는데 이용되었는지 여부를 시그널링할 수도 있다. 예를 들어, 비디오 인코더 (20) 는 비대칭 패킹된 프레임들이 비디오 인코더 (20) 에 의하여 형성된 비트스트림 내에 존재하는지 여부 및, 그렇다면 비대칭 패킹된 프레임들 중 임의의 것이 뷰-간 예측 모드에서 인코딩된 감소된 해상도 픽쳐를 포함하는지 여부 모두를 표시하는 프레임 패킹 구조 SEI 메시지를 생성할 수도 있다.
또한, 비디오 인코더 (20) 는 비대칭 패킹된 프레임 (172) 에 대한 프레임 패킹 타입을 시그널링할 수도 있다. 예를 들어, 비디오 인코더 (20) 는 해당 비대칭 패킹된 프레임에 대한 프레임 패킹 구조, 예를 들어 측면향 또는 상하향 패킹을 표시하는 위에서 논의된 정보를 프레임 패킹 구조 SEI 메시지 내에 포함할 수도 있다. 더욱이, 비디오 인코더 (20) 는 전체 해상도 픽쳐에 대한 데이터 및 감소된 해상도 픽쳐에 대한 데이터의 상대적인 위치를 나타내는 정보를 예를 들어 프레임 패킹 구조 SEI 메시지 내에 포함할 수도 있다.
그러면, 비디오 인코더 (20) 는 비대칭 프레임 (174) 을 출력할 수도 있다. 예를 들어, 비디오 인코더 (20), 또는 비디오 인코더 (20) 에 커플링된 유닛은 비대칭 프레임을 컴퓨터-판독가능 저장 매체로 저장하고, 비대칭 프레임을 브로드캐스트하며, 비대칭 프레임을 네트워크 송신 또는 네트워크 브로드캐스트를 통하여 송신하고, 또는 그렇지 않으면 인코딩된 비디오 데이터를 제공할 수도 있다. 몇 가지 예들에서는, 비디오 인코더 (20), 또는 비디오 인코더 (20) 에 커플링된 유닛은, 비대칭 프레임을 고선명 멀티미디어 인터페이스 (HDMI) 를 통하여 출력할 수도 있다.
또한, 비디오 인코더 (20) 는, 비트스트림이 비대칭 패킹된 프레임들을 포함하는지 여부, 및 프레임 패킹 구조들 및 비트스트림의 각 프레임에 대해서 전체 및 감소된 해상도 픽쳐들의 위치들의 표시자들을 나타내는 정보를 반드시 제공할 필요는 없다는 것이 이해되어야 한다. 몇 가지 예들에서는, 비디오 인코더 (20) 는 비트스트림의 각 프레임에 대해서 이러한 정보를 표시하는 전체 비트스트림에 대한 정보의 단일 세트, 예를 들어 단일 프레임 패킹 SEI 메시지를 제공할 수도 있다. 몇 가지 예들에서는, 비디오 인코더 (20) 는 정보를 주기적으로, 예를 들어, 각각의 비디오 프래그먼트, 픽쳐들의 그룹 (GOP), 또는 비디오 세그먼트이후에, 또는 프레임들의 특정 개수마다, 또는 다른 주기적 기간들로 제공할 수도 있다. 비디오 인코더 (20), 또는 비디오 인코더 (20) 와 연관된 다른 유닛이 또한, 예를 들어 프레임 패킹 구조 SEI 메시지에 대한 클라이언트 디바이스로부터의 요청 또는 비트스트림의 헤더 데이터에 대한 일반적인 요청에 응답하여, 몇 가지 예들에서는 수요에 의하여 프레임 패킹 구조 SEI 메시지를 제공할 수도 있다.
도 10 은 비대칭 프레임을 디코딩하기 위한 예시적인 방법을 예시하는 흐름도이다. 비록 도 1 및 도 3 의 예시적인 구성 요소들에 대해서 일반적으로 설명되지만, 다른 디코더들, 디코딩 유닛들, 및 디코딩 디바이스들이 도 10 의 방법을 수행하도록 구성될 수도 있다는 것이 이해되어야 한다. 더욱이, 도 10 의 방법의 단계 들은 반드시 도 10 에 도시된 순서로 수행되어야 할 필요는 없으며, 추가적이거나 대안적인 단계 들이 수행될 수도 있다.
먼저, 비디오 디코더 (30) 는 비대칭 프레임 (200) 을 수신할 수도 있다. 몇 가지 예들에서는, 비디오 디코더 (30), 또는 비디오 디코더 (30) 에 커플링된 유닛은 비대칭 프레임을 고선명 멀티미디어 인터페이스 (HDMI) 를 통하여 수신할 수도 있다. 그러면, 비디오 디코더 (30) 는 비대칭 프레임 (202) 에 대한 프레임 패킹 타입을 결정할 수도 있다. 예를 들어, 비디오 디코더 (30) 는 해당 비대칭 프레임에 대한 프레임 패킹 타입 (예를 들어, 상하향 또는 측면향) 및 비대칭 프레임 내의 전체 해상도 픽쳐 및 감소된 해상도 픽쳐의 위치들을 표시하는 프레임 패킹 구조 SEI 메시지를 수신할 수도 있다. 몇 가지 예들에서는, 비디오 디코더 (30) 는 비대칭 프레임을 수신하기 이전에 해당 비트스트림에 대한 프레임 패킹 구조 SEI 메시지를 사전에 수신한 바 있을 수도 있는데, 이 경우에는 비디오 디코더 (30) 는 비대칭 프레임을 수신하기 이전에 해당 비트스트림에 대한 프레임들 (가장 최근에 수신된 비대칭 프레임을 포함) 에 대한 프레임 패킹 타입을 결정한 바 있을 수도 있다.
프레임 패킹 타입 정보에 기반하여, 비디오 디코더 (30) 는 비대칭 프레임 (204) 을 디코딩할 수도 있다. 비디오 디코더 (30) 는 우선 비대칭 프레임의 좌안 뷰 부분을 디코딩하고, 이에 후속하여 비대칭 프레임의 우안 뷰 부분을 디코딩할 수도 있다. 비디오 디코더 (30) 는 비대칭 프레임의 좌안 뷰 및 우안 뷰 부분을 프레임 패킹 타입 정보에 기반하여 결정할 수도 있다. 몇 가지 예들에서는, 비디오 디코더 (30) 는 좌안 뷰 픽쳐에 상대적으로 우안 뷰 픽쳐를 디코딩할 수도 있다.
비대칭 프레임을 디코딩한 이후에, 비디오 디코더 (30) 는 디코딩된 프레임을 구성 픽쳐들, 예를 들어, 좌안 뷰 픽쳐 및 우안 뷰 픽쳐 (206) 로 분할할 수도 있다. 비디오 디코더 (30) 는 다른 좌안 뷰 픽쳐들 및, 몇 가지 예들에서는 우안 뷰 픽쳐들을 디코딩하기 위한 기준으로서 좌안 뷰 픽쳐의 복제본을 저장할 수도 있다. 비디오 디코더 (30) 는, 예를 들어 업샘플링 이전에, 후속하여 수신되는 비대칭 프레임들의 우안 뷰 부분들을 디코딩하기 위한 기준 픽쳐로서 이용하기 위하여 디코딩된 우안 뷰 픽쳐의 복제본을 저장할 수도 있다.
위의 예들을 유지한 채, 우안 뷰 픽쳐는 또한 감소된 해상도를 가질 수도 있는데, 하지만 다른 예들에서는 우안 뷰 픽쳐가 전체 해상도를 가지고 좌안 뷰 픽쳐가 감소된 해상도를 가질 수도 있다. 이에 상응하여, 예를 들어 비디오 디코더 (30) 손실된 정보를 보간하여 우안 뷰 픽쳐의 전체 해상도 버전을 형성함으로써 우안 뷰 픽쳐 (208) 를 업샘플링할 수도 있다. 이러한 방식으로, 비디오 디코더 (30) 는 좌안 뷰 픽쳐와 동일한 해상도를 가지는 우안 뷰 픽쳐를 형성할 수도 있다. 그러면, 비디오 디코더 (30) 는 디코딩된 좌안 및 우안 뷰 픽쳐들을 비디오 디스플레이 (32) 로 전송할 수도 있고, 이것은 좌안 및 우안 뷰 픽쳐들을 동시에 또는 거의 동시에 디스플레이할 수도 있다 (212).
도 11 은 본 개시물의 기술들에 따르는 프레임 필드 인터리브드 코딩을 수행하기 위한 예시적인 방법을 예시하는 흐름도이다. 비록 도 1 및 도 2 의 예시적인 구성 요소들에 대하여 일반적으로 설명되었지만, 다른 인코더들, 인코딩 유닛들, 및 인코딩 디바이스들이 도 11 의 방법을 수행하도록 구성될 수도 있다는 것이 이해되어야 한다. 더욱이, 도 9 의 방법의 단계 들은 도 11 에 도시된 순서대로 반드시 수행될 필요가 없으며, 추가적이거나 대안적인 단계들이 수행될 수도 있다.
먼저, 비디오 인코더 (20) 는 좌안 뷰 픽쳐, 예를 들어, 뷰 0 (220) 의 픽쳐를 수신할 수도 있다. 그러면, 비디오 인코더 (20) 는 좌안 뷰 픽쳐 (222) 를, 예를 들어, 인트라- 또는 인터-예측 모드 중 하나에서 프레임으로서 인코딩할 수도 있다. 따라서, 비디오 인코더 (20) 는 좌안 뷰 픽쳐를 동일한 픽쳐의 다른 데이터에 상대적으로, 또는 좌안 뷰의 하나 이상의 기준 픽쳐들에 상대적으로 인코딩할 수도 있다.
또한, 비디오 인코더 (20) 는 우안 뷰, 예를 들어, 뷰 1 (224) 의 픽쳐를 수신함으로써, 우안 뷰 픽쳐 및 좌안 뷰 픽쳐가 스테레오 이미지 쌍을 형성하도록 할 수도 있다. 좌안 뷰 및 우안 뷰는 스테레오 뷰 쌍을 형성할 수도 있는데, 이것은 또한 상보적 뷰 쌍이라고 지칭된다. 수신된 우안 뷰 픽쳐는 수신된 좌안 뷰 픽쳐와 동일한 시간적 위치에 대응할 수도 있다. 즉, 좌안 뷰 픽쳐 및 우안 뷰 픽쳐는 실질적으로 동일한 시간에 캡쳐되거나 또는 생성된 바 있을 수도 있다. 그러면, 비디오 인코더 (20) 는 우안 뷰 픽쳐의 해상도 (226) 를 감소시킬 수도 있다. 몇 가지 예들에서는, 비디오 인코더 (20) 의 비디오 사전처리 유닛이 우안 뷰 픽쳐를 수신하고 인코딩 이전에 우안 뷰 픽쳐의 해상도를 감소시킬 수도 있다. 몇 가지 예들에서는, 비디오 사전처리 유닛은 비디오 인코더 (20) 의 외부에 있을 수도 있다.
우안 뷰 픽쳐의 해상도를 감소시키기 위하여, 비디오 인코더 (20) (또는 비디오 사전처리 유닛) 은 우안 뷰 픽쳐를 몇 가지 예들에서는 데시메이션할 수도 있다. 이러한 방식으로, 비디오 인코더 (20) 는 이 예에서는 우안 뷰 픽쳐의 해상도를 감소시킬 수 도 있는데, 이것은 좌안 뷰 픽쳐의 수직 해상도의 절반을 가질 수도 있다.
그러면, 비디오 인코더 (20) 는 우안 뷰 픽쳐의 감소된 해상도 픽쳐를 좌안 뷰 (228) 의 픽쳐에 기반하여 인코딩할 수도 있다. 즉, 비디오 인코더 (20) 는 이전에 코딩된 좌안 뷰 픽쳐를 우안 뷰 픽쳐를 인코딩하기 위한 기준 픽쳐로서 이용할 수도 있다. 비록 몇 가지 경우들에서는 비디오 인코더 (20) 가 단계 (222) 에서 인코딩된 좌안 뷰 픽쳐를 우안 뷰 픽쳐를 인코딩하기 위한 기준 픽쳐로서 이용할 수도 있지만, 일반적으로는 비디오 인코더 (20) 는 좌안 뷰의 임의의 이전에 인코딩된 픽쳐를 기준 픽쳐로서 이용할 수도 있다. 따라서, 비디오 인코더 (20) 는 단계 (222) 에서 인코딩된 좌안 뷰 픽쳐를 우안 뷰 픽쳐를 인코딩하기 위한 기준 픽쳐로서 이용하는 것에 한정되지 않는다. 몇 가지 예들에서는, 비디오 인코더 (20) 는 이전에 인코딩된 우안 뷰 픽쳐를 현재의 우안 뷰 픽쳐를 인코딩하기 위한 기준 픽쳐로서 이용할 수도 있다. 즉, 비디오 인코더 (20) 는 이전에 인코딩된 좌안 뷰 픽쳐 또는 이전에 인코딩된 우안 뷰 픽쳐 중 어느 것을 현재의 우안 뷰 픽쳐를 인코딩하기 위한 기준 픽쳐로서 이용할 지 여부를 결정할 수도 있다. 더욱이, 몇 가지 예들에서는, 비디오 인코더 (20) 는 현재의 우안 뷰 픽쳐의 인트라 및 인터-모드 인코드 사이에서 선택할 수도 있다.
비디오 인코더 (20) 는 우안 뷰 픽쳐를 필드로서 인코딩할 수도 있다. 이에 상응하여, 우안 뷰 픽쳐를 인코딩하기 위하여, 비디오 인코더 (20) 는 우안 뷰 픽쳐의 행들 및 참조된 좌안 뷰 픽쳐의 교번하는 행들 간의 차분을 연산할 수도 있다. 이러한 방식으로, 비디오 인코더 (20) 는 이전에 인코딩된 좌안 뷰 픽쳐의 탑 필드 또는 바텀 필드 중 하나를 참조하여 우안 뷰 픽쳐를 필드로서 인코딩할 수도 있다.
그러면, 비디오 인코더 (20) 는 인코딩된 좌안 뷰 픽쳐 (230) 및 인코딩된 우안 뷰 픽쳐 (232) 를 출력할 수도 있다. 이러한 예에서는, 비디오 인코더 (20) 는, 비대칭 패킹된 프레임을 형성하는 대신에, 인코딩된 픽쳐들을 동일한 비트스트림 내에 별개의 액세스 유닛들로서 출력할 수도 있다. 그러므로, 비트스트림은 좌안 뷰의 전체 해상도 인코딩 픽쳐 및 우안 뷰의 감소된 해상도 인코딩된 픽쳐를 포함할 수도 있는데, 여기서 좌안 뷰 픽쳐들은 프레임들로서 인코딩되고 우안 뷰 픽쳐들은 필드들로서 인코딩된다. 비트스트림은 도 6 의 예시를 닮을 수도 있음으로써, 비트스트림은 프레임 필드 인터리브드 인코딩된다.
도 12 는 본 개시물의 기술들에 따르는 프레임 필드 인터리브드 코딩된 비트스트림을 디코딩하기 위한 예시적인 방법을 예시하는 흐름도이다. 비록 도 1 및 도 3 의 예시적인 구성요소들에 대해서 일반적으로 설명되었지만, 다른 디코더들, 디코딩 유닛들, 및 디코딩 디바이스들이 도 12 의 방법을 수행하도록 구성될 수도 있다는 것이 이해되어야 한다. 더욱이, 도 10 의 방법의 단계 들은 반드시 도 12 에 도시된 순서로 수행될 필요가 없으며, 추가적이거나 대안적인 단계들도 수행될 수도 있다.
비디오 디코더 (30) 는 프레임 필드 인터리브드 인코딩된 비트스트림을 수신 및 디코딩하도록 구성될 수도 있다. 이에 상응하여, 비디오 디코더 (30) 는 좌안 뷰, 예를 들어 뷰 0 (240) 의 인코딩된 픽쳐를 수신할 수도 있다. 그러면, 비디오 디코더 (30) 는 좌안 뷰 픽쳐 (242) 를 디코딩할 수도 있다. 또한, 비디오 디코더 (30) 는 우안 뷰, 예를 들어 뷰 1 (244) 의 인코딩된 픽쳐를 수신할 수도 있다. 좌안 뷰 및 우안 뷰는 스테레오 뷰 쌍을 형성할 수도 있으며, 이것은 또한 상보적 뷰 쌍으로서 지칭된다. 이러한 예에서는, 비록 두 개의 픽쳐들이 동일한 시간적 기간에 대응될 수도 있다고 하더라도, 좌안 뷰 픽쳐 및 우안 뷰 픽쳐는 독립적인 액세스 유닛들을 형성할 수도 있다. 예를 들어, 두 개의 픽쳐들은 거의 동시에 캡쳐됨으로써, 두 개의 픽쳐들이 3-차원 비디오 재생을 생성하는 스테레오 이미지 쌍을 형성하게 할 수도 있다.
비디오 디코더 (30) 는 우안 뷰 픽쳐를 이전에 디코딩된 좌안 뷰 픽쳐 (246) 에 기반하여 디코딩할 수도 있다. 즉, 비디오 디코더 (30) 는 좌안 뷰 픽쳐를 우안 뷰 픽쳐를 디코딩할 때 기준 픽쳐로서 이용할 수도 있다. 비록 기준 픽쳐가 단계 (242) 에서 디코딩된 기준 픽쳐를 포함할 수도 있지만, 기준 픽쳐는 일반적으로 좌안 뷰의 임의의 이전에 디코딩된 픽쳐를 포함할 수도 있다. 우안 뷰 픽쳐를 디코딩하기 위하여, 비디오 디코더 (30) 는 수신되고 인코딩된 우안 뷰 픽쳐의 행들의 값들을 기준 픽쳐의 교번하는 행들, 예를 들어, 기준 픽쳐의 탑 필드 또는 바텀 필드에 가산할 수도 있다. 비트스트림은 우안 뷰 픽쳐에 대한 기준 픽쳐 및 탑 필드 또는 바텀 필드를 우안 뷰 픽쳐를 디코딩하기 위한 기준 픽쳐로서 이용할지 여부를 나타내는 정보를 포함할 수도 있다. 다른 예들에서는, 비디오 디코더 (30) 는 더 나아가 우안 뷰 픽쳐를 좌안 뷰 픽쳐의 탑 필드 또는 바텀 필드에 상대적으로, 또는 이전에 디코딩된 우안 뷰 픽쳐에 상대적으로 디코딩할지 여부를 결정하도록 구성될 수도 있다.
우안 뷰 픽쳐를 디코딩한 이후에, 비디오 디코더 (30) 는 디코딩된 우안 뷰 픽쳐 (248) 를 업샘플링할 수도 있다. 예를 들어, 비디오 디코더 (30) 는 디코딩된 우안 뷰 픽쳐의 정보의 손실된 행들을 보간하도록 구성될 수도 있다. 비디오 디코더 (30) 는 디코딩된 좌안 뷰 픽쳐 (250) 및 디코딩되고 업샘플링된 우안 뷰 픽쳐 (252) 를 출력할 수도 있다. 예를 들어, 비디오 디코더 (30) 는 디코딩된 픽쳐들을 디스플레이로 전송할 수도 있으며, 이것은 픽쳐들을 동시에 또는 거의 동시에 디스플레이할 수도 있다.
몇 가지 예들에서는, 비디오 디코더 (30) 는 3-차원 비디오 재생을 할 수 없는 디바이스 내에 포함될 수도 있다. 이러한 예들에서는, 비디오 디코더 (30) 는 단순히 좌안 뷰 픽쳐들을 디코딩하고 우안 뷰 픽쳐들을 스킵 (예를 들어, 폐기) 할 수도 있다. 이러한 방식으로, 디바이스들은 해당 디바이스들이 3-차원 비디오 데이터를 디코딩 및/또는 렌더링할 수 있는지 여부와 무관하게 프레임 필드 인터리브드 인코딩된 비트스트림을 수신 및 디코딩할 수도 있다.
비록 비디오 인코더 및 비디오 디코더에 대하여 일반적으로 설명되었지만, 본 개시물의 기술들은 다른 디바이스들 및 코딩 유닛들에서도 구현될 수도 있다. 예를 들어, 비대칭 패킹된 프레임을 형성하기 위한 기술들은 두 개의 별개의 상보적 비트스트림들을 수신하고 두 개의 비트스트림들을 트랜스코딩하여 비대칭 패킹된 프레임들을 포함하는 단일 비트스트림을 형성하도록 구성되는 트랜스코더에 의하여 수행될 수도 있다. 다른 예로서, 비대칭 패킹된 프레임을 분해 (disassembling) 하기 위한 기술들이, 비대칭 패킹된 프레임들을 포함하는 비트스트림을 수신하고, 각각이 개별 뷰에 대한 인코딩된 비디오 데이터를 포함하는 비대칭 패킹된 프레임의 개별 뷰들에 대응하는 두 개의 별개의 비트스트림들을 생성하도록 구성되는 트랜스코더에 의하여 수행될 수도 있다.
하나 이상의 예들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 그것들의 임의의 조합으로도 구현될 수 있다. 소프트웨어로 구현된다면, 이러한 기능들은 하나 이상의 명령어들 또는 코드로서 컴퓨터 판독 가능한 매체 상에 저장되거나 송신될 수 있으며, 하드웨어 기초의 처리 유닛에 의하여 실행될 수도 있다. 컴퓨터 판독 가능한 매체는 데이터 저장 매체와 같은 컴퓨터 판독가능 매체나, 또는 예를 들어 통신 프로토콜에 따라, 한 장소에서 다른 장소로의 컴퓨터 프로그램의 전달을 용이하게 하는 임의의 매체를 포함하는 통신 매체를 포함할 수도 있다. 이러한 방법으로, 컴퓨터 판독 가능 매체는 일반적으로 (1) 비-일시적인 유형의 컴퓨터 판독가능 매체 또는 (2) 신호 또는 반송파와 같은 통신 매체에 대응할 수도 있다. 데이터 저장 매체는 이 개시물에서 설명된 기법들의 구현을 위한 명령어들, 코드들 및/또는 데이터 구조들을 취출하기 위해 하나 이상의 컴퓨터들 또는 하나 이상의 프로세서들에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수도 있다. 컴퓨터 프로그램 제품은 컴퓨터 판독 가능한 매체를 포함할 수도 있다.
한정하는 것이 아니라 예시적인 예로서, 이러한 컴퓨터 판독가능 매체는 RAM, ROM, EEPROM, CD-ROM 또는 기타의 광 디스크 스토리지, 자기 디스크 스토리지, 또는 다른 자기 저장 디바이스들, 플래시 메모리, 또는 원하는 프로그램 코드를 컴퓨터에 의해 액세스될 수 있는 명령어들 또는 데이터 구조들의 형태로 저장하는데 사용될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 연결도 적절하게 컴퓨터 판독가능 매체라고 칭한다. 예를 들어, 명령어들이 웹사이트, 서버, 또는 다른 원격 자원으로부터 동축 케이블, 광섬유 케이블, 연선 (twisted pair), 디지털 가입자 회선 (DSL), 또는 무선 기술들 이를테면 적외선, 라디오, 및/또는 마이크로파를 이용하여 전송된다면, 동축 케이블, 광섬유 케이블, 연선, DSL, 또는 적외선, 라디오, 및 마이크로파와 같은 무선 기술이 매체의 정의에 포함된다. 그러나, 컴퓨터 판독 가능 저장 매체 및 데이터 저장 매체가, 연결들, 반송파들, 신호들 또는 다른 일시적 매체를 포함하지 않고, 대신에 비일시적이며 유형적인 저장 매체에 관련된 것이라는 것은 이해되어야 한다. 디스크 (Disk) 및 디스크 (disc) 는 여기서 사용되는 바와 같이, 콤팩트 디스크 (CD), 레이저 디스크, 광 디스크, 디지털 다용도 디스크 (DVD), 플로피 디스크 및 블루레이 디스크를 포함하는데, disk들은 보통 데이터를 자기적으로 재생하지만, disc들은 레이저들로써 광학적으로 데이터를 재생한다. 상기한 것들의 조합들도 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
명령어들은 하나 이상의 프로세서들, 이를테면 하나 이상의 디지털 신호 프로세서들 (DSPs), 범용 마이크로프로세서들, 주문형 집적회로들 (ASICs), 필드 프로그램가능 로직 어레이들 (FPGAs), 또는 기타 동등한 집적 또는 개별 로직 회로에 의해 실행될 수 있다. 따라서, 여기서 사용된 용어 "프로세서"는 앞서의 구조 또는 여기서 설명된 기법들의 구현에 적합한 임의의 다른 구조 중의 어느 것이라도 가리킬 수 있다. 또한, 일부 양태들에서, 여기서 설명된 기능은 인코딩 및 디코딩을 위해 구성되는 전용 하드웨어 및/또는 소프트웨어 모듈들 내에 제공되거나, 또는 조합된 코덱 (codec) 내에 통합될 수도 있다. 또한, 그 기술들은 하나 이상의 회로들 또는 로직 요소들 내에서 완전히 구현될 수 있다.
이 개시물의 기법들은 무선 핸드셋, 집적회로 (IC) 또는 한 세트의 IC들 (예컨대, 칩 셋) 을 포함하는 매우 다양한 디바이스들 또는 장치들에서 구현될 수 있다. 다양한 구성요소들, 모듈들, 또는 유닛들이 개시된 기법들을 수행하도록 구성되는 디바이스들의 기능적 양태들을 강조하기 위하여 이 개시물에서 설명되지만, 상이한 하드웨어 유닛들에 의하여 반드시 구현되어야 하는 것은 아니다. 오히려, 위에서 설명된 바와 같이, 다양한 유닛들은, 적합한 소프트웨어 및/또는 펌웨어와 연계하여, 위에서 설명된 바와 같은 하나 이상의 프로세서들을 포함하는, 상호운용적 하드웨어 유닛들의 컬렉션에 의해 제공되거나 코덱 하드웨어 유닛 내에 조합될 수도 있다.
다양한 예들이 설명되어 왔다. 이들 예들 및 다른 예들은 다음의 청구의 특허청구범위 내에 속한다.

Claims (50)

  1. 비디오 데이터를 인코딩하기 위한 방법으로서:
    제 1 해상도를 가지는 장면의 제 1 뷰의 제 1 픽쳐를 수신하는 단계;
    상기 제 1 해상도에 비하여 감소된 해상도를 가지는 상기 장면의 제 2 뷰의 제 2 픽쳐를 수신하는 단계;
    제 1 해상도 픽쳐 및 감소된 해상도 픽쳐를 포함하는 비대칭 프레임을 형성하는 단계;
    상기 비대칭 프레임을 인코딩하는 단계;
    상기 비대칭 프레임이 비대칭 프레임이라는 것을 표시하는 비대칭 패킹 표시자(asymmetric packing indicator) 값, 상기 제 1 픽쳐 및 상기 제 2 픽쳐가 사이드-바이-사이드 배열 (side-by-side arrangement) 및 상하 배열 (top-bottom arrangement) 중 하나를 가진다는 것을 표시하는 프레임 패킹 배열 타입 값, 및 상기 비대칭 프레임에서 상기 제 2 픽쳐에 대한 상기 제 1 픽쳐의 위치를 나타내는 정보를 포함하는 보충적 확장 정보 (supplemental enhancement information, SEI) 메시지를 형성하는 단계;
    비디오 코딩 계층 (VCL) 네트워크 추상화 계층 (NAL) 유닛에서 상기 비대칭 프레임을 캡슐화하는 단계;
    상기 SEI 메시지를 비-VCL NAL 유닛에서 캡슐화하는 단계;
    상기 비대칭 프레임을 포함하는 상기 VCL NAL 유닛 및 상기 SEI 메시지를 포함하는 상기 비-VCL NAL 유닛을 액세스 유닛에서 캡슐화하는 단계로서, 상기 액세스 유닛은 특정 시간 인스턴스에 대응하는, 상기 비-VCL NAL 유닛을 액세스 유닛에서 캡슐화하는 단계; 및
    상기 액세스 유닛을 출력하는 단계를 포함하는, 비디오 데이터 인코딩 방법.
  2. 제 1 항에 있어서,
    상기 제 2 픽쳐의 상기 감소된 해상도는 상기 제 1 픽쳐의 상기 제 1 해상도의 절반이며,
    상기 SEI 메시지를 형성하는 단계는 상기 비대칭 프레임 내의 상기 제 2 픽쳐가 상기 제 1 픽쳐의 상기 제 1 해상도의 절반을 포함한다는 것을 나타내도록 상기 SEI 메시지를 형성하는 단계를 포함하는, 비디오 데이터 인코딩 방법.
  3. 제 1 항에 있어서,
    상기 비대칭 프레임을 형성하는 단계는 상기 제 1 픽쳐 및 상기 제 2 픽쳐를 사이드-바이-사이드 배열 (side-by-side arrangement) 로 배열하는 단계를 포함하고,
    상기 SEI 메시지를 형성하는 단계는 상기 비대칭 프레임이 사이드-바이-사이드 배열로 형성되고 상기 제 1 픽쳐 및 상기 제 2 픽쳐가 동일한 높이를 가진다는 것을 나타내도록 상기 SEI 메시지를 형성하는 단계를 포함하는, 비디오 데이터 인코딩 방법.
  4. 제 1 항에 있어서,
    비대칭 패킹된 픽쳐들(asymmetric packed pictures) 은 상하 배열 (top-bottom arrangement) 로 프레임을 형성하고,
    상기 SEI 메시지를 형성하는 단계는 상기 비대칭 프레임이 상하 배열로 형성되고 상기 제 1 픽쳐 및 상기 제 2 픽쳐가 동일한 너비를 가진다는 것을 나타내도록 상기 SEI 메시지를 형성하는 단계를 포함하는, 비디오 데이터 인코딩 방법.
  5. 제 1 항에 있어서,
    상기 제 1 해상도는 제 1 수평 방향 해상도 및 제 1 수직 방향 해상도에 의해 정의되는 제 1 공간 해상도를 포함하고,
    상기 감소된 해상도는 제 2 수평 방향 해상도 및 제 2 수직 방향 해상도에 의해 정의되고,
    상기 제 2 수평 방향 해상도가 상기 제 1 수직 방향 해상도와 동일하거나 상기 제 2 수직 방향 해상도가 상기 제 1 수직 방향 해상도와 동일한, 비디오 데이터 인코딩 방법.
  6. 제 1 항에 있어서,
    상기 비대칭 프레임을 캡슐화하는 단계는, ISO 베이스 미디어 파일 포맷에 순응하는 파일, ISO 베이스 미디어 파일 포맷의 확장에 순응하는 파일, MPEG-2 전송 스트림에 순응하는 데이터, MPEG-2 전송 스트림에 대한 헤더 정보, 및 하이퍼텍스트 전달 프로토콜 (hypertext transfer protocol, HTTP) 스트리밍 포맷에 따르는 데이터 중 적어도 하나를 형성하는 단계를 포함하는, 비디오 데이터 인코딩 방법.
  7. 비디오 데이터를 인코딩하기 위한 장치로서:
    제 1 해상도를 가지는 장면의 제 1 뷰의 제 1 픽쳐를 수신하고, 상기 제 1 해상도에 비하여 감소된 해상도를 가지는 상기 장면의 제 2 뷰의 제 2 픽쳐를 수신하며, 상기 제 1 픽쳐 및 상기 제 2 픽쳐를 포함하는 비대칭 프레임을 형성하고, 상기 비대칭 프레임을 인코딩하며, 상기 비대칭 프레임이 비대칭 프레임이라는 것을 표시하는 비대칭 패킹 표시자 값, 상기 제 1 픽쳐 및 상기 제 2 픽쳐가 사이드-바이-사이드 배열 및 상하 배열 중 하나를 가진다는 것을 표시하는 프레임 패킹 배열 타입 값, 및 상기 비대칭 프레임에서 상기 제 2 픽쳐에 대한 상기 제 1 픽쳐의 위치를 나타내는 정보를 포함하는 보충적 확장 정보 (SEI) 메시지를 형성하고,
    비디오 코딩 계층 (VCL) 네트워크 추상화 계층 (NAL) 유닛에서 상기 비대칭 프레임을 캡슐화하고;
    상기 SEI 메시지를 비-VCL NAL 유닛에서 캡슐화하고;
    상기 비대칭 프레임을 포함하는 상기 VCL NAL 유닛 및 상기 SEI 메시지를 포함하는 상기 비-VCL NAL 유닛을 액세스 유닛에서 캡슐화하되, 상기 액세스 유닛이 특정 시간 인스턴스에 대응하도록 구성된 비디오 인코더를 포함하는, 비디오 데이터 인코딩 장치.
  8. 제 7 항에 있어서,
    상기 제 2 픽쳐의 상기 감소된 해상도는 상기 제 1 픽쳐의 상기 제 1 해상도의 절반이며,
    상기 비디오 인코더는 상기 비대칭 프레임 내의 상기 제 2 픽쳐가 상기 제 1 픽쳐의 상기 제 1 해상도의 절반을 포함한다는 것을 나타내도록 상기 SEI 메시지를 형성하도록 구성된, 비디오 데이터 인코딩 장치.
  9. 제 7 항에 있어서,
    상기 비디오 인코더는,
    상기 제 1 픽쳐 및 상기 제 2 픽쳐를 상기 비대칭 프레임 내에서 사이드-바이-사이드 배열로 배열하도록, 그리고 상기 비대칭 프레임이 사이드-바이-사이드 배열로 형성되고 상기 제 1 픽쳐 및 상기 제 2 픽쳐가 동일한 높이를 가진다는 것을 나타내는 정보를 생성하도록 구성된, 비디오 데이터 인코딩 장치.
  10. 제 7 항에 있어서,
    상기 비디오 인코더는,
    상기 제 1 픽쳐 및 상기 제 2 픽쳐를 상기 비대칭 프레임 내에서 상하 배열로 배열하도록, 그리고 상기 비대칭 프레임이 상하 배열로 형성되고 상기 제 1 픽쳐 및 상기 제 2 픽쳐가 동일한 너비를 가진다는 것을 나타내는 정보를 생성하도록 구성된, 비디오 데이터 인코딩 장치.
  11. 제 7 항에 있어서,
    상기 제 1 해상도는 제 1 수평 방향 해상도 및 제 1 수직 방향 해상도에 의해 정의되는 제 1 공간 해상도를 포함하고,
    상기 감소된 해상도는 제 2 수평 방향 해상도 및 제 2 수직 방향 해상도에 의해 정의되고,
    상기 제 2 수평 방향 해상도가 상기 제 1 수직 방향 해상도와 동일하거나 상기 제 2 수직 방향 해상도가 상기 제 1 수직 방향 해상도와 동일한, 비디오 데이터 인코딩 장치.
  12. 제 7 항에 있어서,
    상기 비디오 인코더는, 인코딩된 비대칭 프레임을, ISO 베이스 미디어 파일 포맷에 순응하는 파일, ISO 베이스 미디어 파일 포맷의 확장에 순응하는 파일, MPEG-2 전송 스트림에 순응하는 데이터, MPEG-2 전송 스트림에 대한 헤더 정보, 및 하이퍼텍스트 전달 프로토콜 (HTTP) 스트리밍 포맷에 따르는 데이터 중 적어도 하나로서 캡슐화하도록 구성된, 비디오 데이터 인코딩 장치.
  13. 제 7 항에 있어서,
    상기 비디오 데이터 인코딩 장치는:
    집적 회로;
    마이크로프로세서; 및
    상기 비디오 인코더를 포함하는 무선 통신 디바이스 중 적어도 하나를 포함하는, 비디오 데이터 인코딩 장치.
  14. 비디오 데이터를 인코딩하기 위한 장치로서:
    제 1 해상도를 가지는 장면의 제 1 뷰의 제 1 픽쳐를 수신하기 위한 수단;
    상기 제 1 해상도에 비하여 감소된 해상도를 가지는 상기 장면의 제 2 뷰의 제 2 픽쳐를 수신하기 위한 수단;
    상기 제 1 픽쳐 및 상기 제 2 픽쳐를 포함하는 비대칭 프레임을 형성하기 위한 수단;
    상기 비대칭 프레임을 인코딩하기 위한 수단;
    상기 비대칭 프레임이 비대칭 프레임이라는 것을 표시하는 비대칭 패킹 표시자(asymmetric packing indicator) 값, 상기 제 1 픽쳐 및 상기 제 2 픽쳐가 사이드-바이-사이드 배열 및 상하 배열 중 하나를 가진다는 것을 표시하는 프레임 패킹 배열 타입 값, 및 상기 비대칭 프레임에서 상기 제 2 픽쳐에 대한 상기 제 1 픽쳐의 위치를 나타내는 정보를 포함하는 보충적 확장 정보 (supplemental enhancement information, SEI) 메시지를 형성하기 위한 수단;
    비디오 코딩 계층 (VCL) 네트워크 추상화 계층 (NAL) 유닛에서 상기 비대칭 프레임을 캡슐화하는 단계;
    상기 SEI 메시지를 비-VCL NAL 유닛에서 캡슐화하기 위한 수단;
    상기 비대칭 프레임을 포함하는 상기 VCL NAL 유닛 및 상기 SEI 메시지를 포함하는 상기 비-VCL NAL 유닛을 액세스 유닛에서 캡슐화하기 위한 수단으로서, 상기 액세스 유닛은 특정 시간 인스턴스에 대응하는, 상기 비-VCL NAL 유닛을 액세스 유닛에서 캡슐화하기 위한 수단; 및
    상기 액세스 유닛을 출력하기 위한 수단을 포함하는, 비디오 데이터 인코딩 장치.
  15. 제 14 항에 있어서,
    상기 제 2 픽쳐의 상기 감소된 해상도는 상기 제 1 픽쳐의 상기 제 1 해상도의 절반이며,
    상기 SEI 메시지를 형성하기 위한 수단은 상기 비대칭 프레임 내의 상기 제 2 픽쳐가 상기 제 1 픽쳐의 상기 제 1 해상도의 절반을 포함한다는 것을 나타내도록 상기 SEI 메시지를 형성하기 위한 수단을 포함하는, 비디오 데이터 인코딩 장치.
  16. 제 14 항에 있어서,
    상기 비대칭 프레임을 형성하기 위한 수단은, 상기 제 1 픽쳐 및 상기 제 2 픽쳐를 상기 비대칭 프레임 내에서 사이드-바이-사이드 배열로 배열하기 위한 수단을 포함하며,
    상기 SEI 메시지를 형성하기 위한 수단은 상기 비대칭 프레임이 사이드-바이-사이드 배열로 형성되고 상기 제 1 픽쳐 및 상기 제 2 픽쳐가 동일한 높이를 가진다는 것을 나타내도록 상기 SEI 메시지를 형성하기 위한 수단을 포함하는, 비디오 데이터 인코딩 장치.
  17. 제 14 항에 있어서,
    상기 비대칭 프레임을 형성하기 위한 수단은,
    상기 제 1 픽쳐 및 상기 제 2 픽쳐를 비대칭 프레임 내에서 상하 배열로 배열하기 위한 수단을 포함하며,
    상기 SEI 메시지를 형성하기 위한 수단은 상기 비대칭 프레임이 상하 배열로 형성되고 상기 제 1 픽쳐 및 상기 제 2 픽쳐가 동일한 너비를 가진다는 것을 나타내도록 상기 SEI 메시지를 형성하기 위한 수단을 포함하는, 비디오 데이터 인코딩 장치.
  18. 제 14 항에 있어서,
    상기 제 1 해상도는 제 1 수평 방향 해상도 및 제 1 수직 방향 해상도에 의해 정의되는 제 1 공간 해상도를 포함하고,
    상기 감소된 해상도는 제 2 수평 방향 해상도 및 제 2 수직 방향 해상도에 의해 정의되고,
    상기 제 2 수평 방향 해상도가 상기 제 1 수직 방향 해상도와 동일하거나 상기 제 2 수직 방향 해상도가 상기 제 1 수직 방향 해상도와 동일한, 비디오 데이터 인코딩 장치.
  19. 명령들을 저장한 컴퓨터 판독가능 저장 매체로서,
    상기 명령들은, 실행 시, 비디오 데이터를 인코딩하기 위한 디바이스의 프로세서로 하여금:
    제 1 해상도를 가지는 장면의 제 1 뷰의 제 1 픽쳐를 수신하고;
    상기 제 1 해상도에 비하여 감소된 해상도를 가지는 상기 장면의 제 2 뷰의 제 2 픽쳐를 수신하며;
    상기 제 1 픽쳐 및 상기 제 2 픽쳐를 포함하는 비대칭 프레임을 형성하고;
    상기 비대칭 프레임을 인코딩하며;
    상기 인코딩된 비대칭 프레임을 출력하고;
    상기 비대칭 프레임이 비대칭 프레임이라는 것을 표시하는 비대칭 패킹 표시자 값, 상기 제 1 픽쳐 및 상기 제 2 픽쳐가 사이드-바이-사이드 배열 (side-by-side arrangement) 및 상하 배열 (top-bottom arrangement) 중 하나를 가진다는 것을 표시하는 프레임 패킹 배열 타입 값, 및 상기 비대칭 프레임에서 상기 제 2 픽쳐에 대한 상기 제 1 픽쳐의 위치를 나타내는 정보를 포함하는 보충적 확장 정보 (SEI) 메시지를 형성하며;
    비디오 코딩 계층 (VCL) 네트워크 추상화 계층 (NAL) 유닛에서 상기 비대칭 프레임을 캡슐화하고;
    상기 SEI 메시지를 비-VCL NAL 유닛에서 캡슐화하며;
    상기 비대칭 프레임을 포함하는 상기 VCL NAL 유닛 및 상기 SEI 메시지를 포함하는 상기 비-VCL NAL 유닛을 액세스 유닛에서 캡슐화하되, 상기 액세스 유닛이 특정 시간 인스턴스에 대응하고;
    상기 액세스 유닛을 출력하게 하는, 컴퓨터 판독가능 저장 매체.
  20. 제 19 항에 있어서,
    상기 제 2 픽쳐의 상기 감소된 해상도는 상기 제 1 픽쳐의 상기 제 1 해상도의 절반이며,
    상기 프로세서로 하여금, 상기 비대칭 프레임 내의 상기 제 2 픽쳐가 상기 제 1 픽쳐의 상기 제 1 해상도의 절반을 포함한다는 것을 나타내도록 상기 SEI 메시지를 형성하게 하는 명령들을 포함하는, 컴퓨터 판독가능 저장 매체.
  21. 제 19 항에 있어서,
    상기 프로세서로 하여금 상기 비대칭 프레임을 형성하게 하는 명령들은, 상기 프로세서로 하여금 상기 제 1 픽쳐 및 상기 제 2 픽쳐를 사이드-바이-사이드 배열로 배열하게 하는 명령들을 포함하고,
    상기 프로세서로 하여금, 상기 비대칭 프레임이 사이드-바이-사이드 배열로 형성되고 상기 제 1 픽쳐 및 상기 제 2 픽쳐가 동일한 높이를 가진다는 것을 나타내도록 상기 SEI 메시지를 형성하게 하는 명령들을 포함하는, 컴퓨터 판독가능 저장 매체.
  22. 제 19 항에 있어서,
    상기 프로세서로 하여금 상기 비대칭 프레임을 형성하게 하는 명령들은, 상기 프로세서로 하여금 상기 제 1 픽쳐 및 상기 제 2 픽쳐를 상하 배열로 배열하게 하는 명령들을 포함하고,
    상기 프로세서로 하여금, 상기 비대칭 프레임이 상하 배열로 형성되고 상기 제 1 픽쳐 및 상기 제 2 픽쳐가 동일한 너비를 가진다는 것을 나타내도록 상기 SEI 메시지를 형성하게 하는 명령들을 포함하는, 컴퓨터 판독가능 저장 매체.
  23. 제 19 항에 있어서,
    상기 제 1 해상도는 제 1 수평 방향 해상도 및 제 1 수직 방향 해상도에 의해 정의되는 제 1 공간 해상도를 포함하고,
    상기 감소된 해상도는 제 2 수평 방향 해상도 및 제 2 수직 방향 해상도에 의해 정의되고,
    상기 제 2 수평 방향 해상도가 상기 제 1 수직 방향 해상도와 동일하거나 상기 제 2 수직 방향 해상도가 상기 제 1 수직 방향 해상도와 동일한, 컴퓨터 판독가능 저장 매체.
  24. 제 19 항에 있어서,
    상기 프로세서로 하여금 상기 인코딩된 비대칭 프레임을 캡슐화하게 하는 명령들은,
    상기 프로세서로 하여금, ISO 베이스 미디어 파일 포맷에 순응하는 파일, ISO 베이스 미디어 파일 포맷의 확장에 순응하는 파일, MPEG-2 전송 스트림에 순응하는 데이터, MPEG-2 전송 스트림에 대한 헤더 정보, 및 하이퍼텍스트 전달 프로토콜 (HTTP) 스트리밍 포맷에 따르는 데이터 중 적어도 하나를 형성하게 하는 명령들을 포함하는, 컴퓨터 판독가능 저장 매체.
  25. 비디오 데이터를 디코딩하기 위한 방법으로서:
    특정 시간 인스턴스에 대응하는 액세스 유닛을 수신하는 단계로서, 상기 액세스 유닛은 비디오 코딩 계층 (VCL) 네트워크 추상화 계층 (NAL) 유닛에서 캡슐화되는 인코딩된 비대칭 프레임을 포함하고, 상기 인코딩된 비대칭 프레임은 장면의 제 1 뷰의 제 1 해상도 픽쳐 및 상기 장면의 제 2 뷰의 감소된 해상도 픽쳐를 포함하고, 상기 감소된 해상도 픽쳐는 상기 제 1 해상도에 비하여 감소된 해상도를 가지며, 상기 액세스 유닛은 비-VCL NAL 유닛에서 캡슐화된 보충적 확장 정보 (SEI) 메시지를 포함하고, 상기 SEI 메시지는 상기 비대칭 프레임이 비대칭 프레임이라는 것을 표시하는 비대칭 패킹 표시자 값, 상기 제 1 해상도 픽쳐 및 상기 감소된 해상도 픽쳐가 사이드-바이-사이드 배열 및 상하 배열 중 하나를 가진다는 것을 표시하는 프레임 패킹 배열 타입 값, 및 상기 비대칭 프레임 내의 상기 감소된 해상도 픽쳐에 대한 상기 제 1 해상도 픽쳐의 위치를 나타내는 정보를 포함하는, 상기 액세스 유닛을 수신하는 단계;
    상기 SEI 메시지에 기초하여 상기 비대칭 프레임을 디코딩하는 단계;
    상기 SEI 메시지에 기초하여 상기 디코딩된 비대칭 프레임을 상기 제 1 해상도 픽쳐 및 상기 감소된 해상도 픽쳐로 분할하는 단계;
    상기 감소된 해상도 픽쳐를 업샘플링하여 상기 제 1 해상도를 가지는 상기 장면의 제 2 픽쳐를 생성하는 단계; 및
    상기 제 1 픽쳐 및 상기 제 2 픽쳐를 출력하는 단계로서, 상기 제 1 픽쳐 및 상기 제 2 픽쳐는 스테레오 이미지 쌍을 형성하는, 상기 출력하는 단계를 포함하는 비디오 데이터 디코딩 방법.
  26. 제 25 항에 있어서,
    상기 SEI 메시지는 상기 비대칭 프레임이 상하 패킹 배열 및 측면향 패킹 배열 중 하나를 가진다는 것을 나타내는 정보를 수신하는, 비디오 데이터 디코딩 방법.
  27. 제 26 항에 있어서,
    상기 SEI 메시지는, 상기 정보가, 상기 비대칭 프레임이 상기 상하 패킹 배열을 가진다는 것을 나타내면, 상기 SEI 메시지를 이용하여 상기 디코딩된 비대칭 프레임을 분할하는 단계는 상기 비대칭 프레임을 상부 및 하부로 분할하는 단계를 포함하며,
    상기 상부는 상기 제 1 해상도 픽쳐에 대응하고, 상기 하부는 상기 감소된 해상도 픽쳐에 대응하는, 비디오 데이터 디코딩 방법.
  28. 제 26 항에 있어서,
    상기 SEI 메시지는, 상기 정보가, 상기 비대칭 프레임이 상기 측면향 패킹 배열을 가진다는 것을 나타내면, 상기 SEI 메시지를 이용하여 상기 디코딩된 비대칭 프레임을 분할하는 단계는 상기 비대칭 프레임을 좌측부 및 우측부로 분할하는 단계를 포함하며,
    상기 좌측부는 상기 제 1 해상도 픽쳐에 대응하고, 상기 우측부는 상기 감소된 해상도 픽쳐에 대응하는, 비디오 데이터 디코딩 방법.
  29. 제 26 항에 있어서,
    상기 제 1 해상도는 제 1 수평 방향 해상도 및 제 1 수직 방향 해상도에 의해 정의되는 제 1 공간 해상도를 포함하고,
    상기 감소된 해상도는 제 2 수평 방향 해상도 및 제 2 수직 방향 해상도에 의해 정의되고,
    상기 제 2 수평 방향 해상도가 상기 제 1 수직 방향 해상도와 동일하거나 상기 제 2 수직 방향 해상도가 상기 제 1 수직 방향 해상도와 동일한, 비디오 데이터 디코딩 방법.
  30. 제 25 항에 있어서,
    상기 비대칭 프레임을 포함하는 액세스 유닛을 수신하는 단계는 비대칭 프레임들을 수신하도록 구성된 고해상도 멀티미디어 인터페이스 (high definition multimedia interface, HDMI) 를 통하여 상기 비대칭 프레임을 포함하는 상기 액세스 유닛을 수신하는 단계를 포함하는, 비디오 데이터 디코딩 방법.
  31. 비디오 데이터를 디코딩하기 위한 장치로서:
    특정 시간 인스턴스에 대응하는 액세스 유닛을 수신하되, 상기 액세스 유닛은 비디오 코딩 계층 (VCL) 네트워크 추상화 계층 (NAL) 유닛에서 캡슐화되는 인코딩된 비대칭 프레임을 포함하고, 상기 인코딩된 비대칭 프레임은 장면의 제 1 뷰의 제 1 해상도 픽쳐 및 상기 장면의 제 2 뷰의 감소된 해상도 픽쳐를 포함하고, 상기 감소된 해상도 픽쳐는 상기 제 1 해상도에 비하여 감소된 해상도를 가지며, 상기 액세스 유닛은 비-VCL NAL 유닛에서 캡슐화된 보충적 확장 정보 (SEI) 메시지를 포함하고, 상기 SEI 메시지는 상기 비대칭 프레임이 비대칭 프레임이라는 것을 표시하는 비대칭 패킹 표시자 값, 상기 제 1 해상도 픽쳐 및 상기 감소된 해상도 픽쳐가 사이드-바이-사이드 배열 및 상하 배열 중 하나를 가진다는 것을 표시하는 프레임 패킹 배열 타입 값, 및 상기 비대칭 프레임 내의 상기 감소된 해상도 픽쳐에 대한 상기 제 1 해상도 픽쳐의 위치를 나타내는 정보를 포함하고;
    상기 SEI 메시지에 기초하여 상기 비대칭 프레임을 디코딩하며,
    상기 SEI 메시지에 기초하여 상기 디코딩된 비대칭 프레임을 상기 제 1 해상도 픽쳐 및 상기 감소된 해상도 픽쳐로 분할하고,
    상기 감소된 해상도 픽쳐를 업샘플링하여 상기 제 1 해상도를 가지는 상기 장면의 제 2 픽쳐를 생성하도록 구성된 비디오 디코더를 포함하며,
    제 1 디코딩된 픽쳐 및 제 2 디코딩된 픽쳐는 스테레오 이미지 쌍을 형성하는, 비디오 데이터 디코딩 장치.
  32. 제 31 항에 있어서,
    상기 제 1 디코딩된 픽쳐 및 상기 제 2 디코딩된 픽쳐를 실질적으로 동시에 디스플레이하여 3-차원 비디오 데이터를 디스플레이하도록 구성된 3-차원 비디오 디스플레이를 더 포함하는, 비디오 데이터 디코딩 장치.
  33. 제 31 항에 있어서,
    상기 SEI 메시지는 상기 비대칭 프레임이 상하 패킹 배열 및 측면향 패킹 배열 중 하나를 가진다는 것을 나타내는 정보를 포함하는, 비디오 데이터 디코딩 장치.
  34. 제 33 항에 있어서,
    상기 비디오 디코더는, 상기 SEI 메시지가, 상기 비대칭 프레임이 상기 상하 패킹 배열을 가진다는 것을 나타내면, 상기 디코딩된 비대칭 프레임을 상부 및 하부로 분할하도록 구성되며,
    상기 상부는 상기 제 1 해상도 픽쳐에 대응하고, 상기 하부는 상기 감소된 해상도 픽쳐에 대응하는, 비디오 데이터 디코딩 장치.
  35. 제 33 항에 있어서,
    상기 비디오 디코더는, 상기 SEI 메시지가 상기 비대칭 프레임이 상기 측면향 패킹 배열을 가진다는 것을 나타내면, 상기 디코딩된 비대칭 프레임을 좌측부 및 우측부로 분할하도록 구성되며,
    상기 좌측부는 상기 제 1 해상도 픽쳐에 대응하고, 상기 우측부는 상기 감소된 해상도 픽쳐에 대응하는, 비디오 데이터 디코딩 장치.
  36. 제 33 항에 있어서,
    상기 제 1 해상도는 제 1 수평 방향 해상도 및 제 1 수직 방향 해상도에 의해 정의되는 제 1 공간 해상도를 포함하고,
    상기 감소된 해상도는 제 2 수평 방향 해상도 및 제 2 수직 방향 해상도에 의해 정의되고,
    상기 제 2 수평 방향 해상도가 상기 제 1 수직 방향 해상도와 동일하거나 상기 제 2 수직 방향 해상도가 상기 제 1 수직 방향 해상도와 동일한
    , 비디오 데이터 디코딩 장치.
  37. 제 31 항에 있어서,
    비대칭 프레임들을 수신하도록 구성되고 상기 비대칭 프레임들을 상기 비디오 디코더로 제공하도록 구성된 고해상도 멀티미디어 인터페이스(HDMI) 를 더 포함하는, 비디오 데이터 디코딩 장치.
  38. 제 31 항에 있어서,
    상기 비디오 데이터 디코딩 장치는:
    집적 회로;
    마이크로프로세서; 및
    상기 비디오 디코더를 포함하는 무선 통신 디바이스 중 적어도 하나를 포함하는, 비디오 데이터 디코딩 장치.
  39. 비디오 데이터를 디코딩하기 위한 장치로서:
    특정 시간 인스턴스에 대응하는 액세스 유닛을 수신하기 위한 수단으로서, 상기 액세스 유닛은 비디오 코딩 계층 (VCL) 네트워크 추상화 계층 (NAL) 유닛에서 캡슐화되는 인코딩된 비대칭 프레임을 포함하고, 상기 인코딩된 비대칭 프레임은 장면의 제 1 뷰의 제 1 해상도 픽쳐 및 상기 장면의 제 2 뷰의 감소된 해상도 픽쳐를 포함하고, 상기 감소된 해상도 픽쳐는 상기 제 1 해상도에 비하여 감소된 해상도를 가지며, 상기 액세스 유닛은 비-VCL NAL 유닛에서 캡슐화된 보충적 확장 정보 (SEI) 메시지를 포함하고, 상기 SEI 메시지는 상기 비대칭 프레임이 비대칭 프레임이라는 것을 표시하는 비대칭 패킹 표시자 값, 상기 제 1 해상도 픽쳐 및 상기 감소된 해상도 픽쳐가 사이드-바이-사이드 배열 및 상하 배열 중 하나를 가진다는 것을 표시하는 프레임 패킹 배열 타입 값, 및 상기 비대칭 프레임 내의 상기 감소된 해상도 픽쳐에 대한 상기 제 1 해상도 픽쳐의 위치를 나타내는 정보를 포함하는, 상기 액세스 유닛을 수신하기 위한 수단;
    상기 SEI 메시지에 기초하여 상기 비대칭 프레임을 디코딩하기 위한 수단;
    상기 SEI 메시지에 기초하여 상기 디코딩된 비대칭 프레임을 상기 제 1 해상도 픽쳐 및 상기 감소된 해상도 픽쳐로 분할하기 위한 수단; 및
    상기 감소된 해상도 픽쳐를 업샘플링하여 상기 제 1 해상도를 가지는 상기 장면의 제 2 픽쳐를 생성하기 위한 수단으로서, 상기 제 1 디코딩된 픽쳐 및 상기 제 2 디코딩된 픽쳐는 스테레오 이미지 쌍을 형성하는, 상기 생성하기 위한 수단을 포함하는, 비디오 데이터 디코딩 장치.
  40. 제 39 항에 있어서,
    상기 SEI 메시지는 상기 비대칭 프레임이 상하 패킹 배열 및 측면향 패킹 배열 중 하나를 가진다는 것을 나타내는 정보를 함하는, 비디오 데이터 디코딩 장치.
  41. 제 40 항에 있어서,
    상기 분할하기 위한 수단은 상기 비대칭 프레임을 상부 및 하부로 분할하기 위한 수단을 포함하며,
    상기 SEI 메시지가 상기 비대칭 프레임이 상기 상하 패킹 배열을 가진다는 것을 나타내면, 상기 상부는 상기 제 1 해상도 픽쳐에 대응하고, 상기 하부는 상기 감소된 해상도 픽쳐에 대응하는, 비디오 데이터 디코딩 장치.
  42. 제 40 항에 있어서,
    상기 SEI 메-시지가 상기 비대칭 프레임이 상기 측면향 패킹 배열을 가진다는 것을 나타내면, 상기 분할하기 위한 수단은, 상기 비대칭 프레임을 좌측부 및 우측부로 분할하기 위한 수단을 포함하며,
    상기 좌측부는 상기 제 1 해상도 픽쳐에 대응하고, 그리고 상기 우측부는 상기 감소된 해상도 픽쳐에 대응하는, 비디오 데이터 디코딩 장치.
  43. 제 40 항에 있어서,
    상기 제 1 해상도는 제 1 수평 방향 해상도 및 제 1 수직 방향 해상도에 의해 정의되는 제 1 공간 해상도를 포함하고,
    상기 감소된 해상도는 제 2 수평 방향 해상도 및 제 2 수직 방향 해상도에 의해 정의되고,
    상기 제 2 수평 방향 해상도가 상기 제 1 수직 방향 해상도와 동일하거나 상기 제 2 수직 방향 해상도가 상기 제 1 수직 방향 해상도와 동일한 비디오 데이터 디코딩 장치.
  44. 제 39 항에 있어서,
    상기 비대칭 프레임을 포함하는 상기 액세스 유닛을 수신하기 위한 수단은, 비대칭 프레임들을 수신하도록 구성된 고해상도 멀티미디어 인터페이스 (HDMI) 를 통해 상기 비대칭 프레임들을 포함하는 상기 액세스 유닛을 수신하기 위한 수단을 포함하는, 비디오 데이터 디코딩 장치.
  45. 명령들을 저장한 컴퓨터 판독가능 저장 매체로서,
    상기 명령들은, 실행 시, 비디오 데이터를 디코딩하기 위한 디바이스의 프로세서로 하여금:
    특정 시간 인스턴스에 대응하는 액세스 유닛을 수신하되, 상기 액세스 유닛은 비디오 코딩 계층 (VCL) 네트워크 추상화 계층 (NAL) 유닛에서 캡슐화되는 인코딩된 비대칭 프레임을 포함하고, 상기 인코딩된 비대칭 프레임은 장면의 제 1 뷰의 제 1 해상도 픽쳐 및 상기 장면의 제 2 뷰의 감소된 해상도 픽쳐를 포함하고, 상기 감소된 해상도 픽쳐는 상기 제 1 해상도에 비하여 감소된 해상도를 가지며, 상기 액세스 유닛은 비-VCL NAL 유닛에서 캡슐화된 보충적 확장 정보 (SEI) 메시지를 포함하고, 상기 SEI 메시지는 상기 비대칭 프레임이 비대칭 프레임이라는 것을 표시하는 비대칭 패킹 표시자 값, 상기 제 1 해상도 픽쳐 및 상기 감소된 해상도 픽쳐가 사이드-바이-사이드 배열 및 상하 배열 중 하나를 가진다는 것을 표시하는 프레임 패킹 배열 타입 값, 및 상기 비대칭 프레임 내의 상기 감소된 해상도 픽쳐에 대한 상기 제 1 해상도 픽쳐의 위치를 나타내는 정보를 포함하고;
    상기 SEI 메시지에 기초하여 상기 비대칭 프레임을 디코딩하며;
    상기 SEI 메시지에 기초하여 상기 디코딩된 비대칭 프레임을 상기 제 1 해상도 픽쳐 및 상기 감소된 해상도 픽쳐로 분할하고;
    상기 감소된 해상도 픽쳐를 업샘플링하여 상기 제 1 해상도를 가지는 상기 장면의 제 2 픽쳐를 생성하며;
    상기 제 1 픽쳐 및 상기 제 2 픽쳐를 출력하게 하되, 상기 제 1 픽쳐 및 상기 제 2 픽쳐는 스테레오 이미지 쌍을 형성하는, 컴퓨터 판독가능 저장 매체.
  46. 제 45 항에 있어서,
    상기 SEI 메시지는 상기 비대칭 프레임이 상하 패킹 배열 및 측면향 패킹 배열 중 하나를 가진다는 것을 나타내는 정보를 포함하는, 컴퓨터 판독가능 저장 매체.
  47. 제 46 항에 있어서,
    상기 SEI 메시지가 상기 비대칭 프레임이 상기 상하 패킹 배열을 가진다는 것을 나타내면, 상기 명령들은 상기 프로세서로 하여금 상기 비대칭 프레임을 상부 및 하부로 분할하게 하며,
    상기 상부는 상기 제 1 해상도 픽쳐에 대응하고, 상기 하부는 상기 감소된 해상도 픽쳐에 대응하는, 컴퓨터 판독가능 저장 매체.
  48. 제 46 항에 있어서,
    상기 SEI 메시지가 상기 비대칭 프레임이 상기 측면향 패킹 배열을 가진다는 것을 나타내면, 상기 명령들은 상기 프로세서로 하여금 상기 비대칭 프레임을 좌측부 및 우측부로 분할하게 하며,
    상기 좌측부는 상기 제 1 해상도 픽쳐에 대응하고, 상기 우측부는 상기 감소된 해상도 픽쳐에 대응하는, 컴퓨터 판독가능 저장 매체.
  49. 제 46 항에 있어서,
    상기 제 1 해상도는 제 1 수평 방향 해상도 및 제 1 수직 방향 해상도에 의해 정의되는 제 1 공간 해상도를 포함하고,
    상기 감소된 해상도는 제 2 수평 방향 해상도 및 제 2 수직 방향 해상도에 의해 정의되고,
    상기 제 2 수평 방향 해상도가 상기 제 1 수직 방향 해상도와 동일하거나 상기 제 2 수직 방향 해상도가 상기 제 1 수직 방향 해상도와 동일한, 컴퓨터 판독가능 저장 매체.
  50. 제 45 항에 있어서,
    상기 프로세서로 하여금 상기 비대칭 프레임을 포함하는 상기 액세스 유닛을 수신하게 하는 것은,
    상기 프로세서로 하여금, 비대칭 프레임들을 수신하도록 구성된 고해상도 멀티미디어 인터페이스(HDMI) 를 통하여 상기 비대칭 프레임을 포함하는 상기 액세스 유닛을 수신하게 하는 명령들을 포함하는, 컴퓨터 판독가능 저장 매체.
KR1020127032680A 2010-05-13 2011-05-13 비대칭 스테레오 비디오에 대한 프레임 패킹 KR101436713B1 (ko)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US33425310P 2010-05-13 2010-05-13
US61/334,253 2010-05-13
US36643610P 2010-07-21 2010-07-21
US61/366,436 2010-07-21
US201161433110P 2011-01-14 2011-01-14
US61/433,110 2011-01-14
US13/035,448 US9225961B2 (en) 2010-05-13 2011-02-25 Frame packing for asymmetric stereo video
US13/035,448 2011-02-25
PCT/US2011/036499 WO2011143599A1 (en) 2010-05-13 2011-05-13 Frame packing for asymmetric stereo video

Publications (2)

Publication Number Publication Date
KR20130030270A KR20130030270A (ko) 2013-03-26
KR101436713B1 true KR101436713B1 (ko) 2014-09-02

Family

ID=44911745

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127032680A KR101436713B1 (ko) 2010-05-13 2011-05-13 비대칭 스테레오 비디오에 대한 프레임 패킹

Country Status (6)

Country Link
US (2) US20110280311A1 (ko)
EP (1) EP2569943A1 (ko)
JP (1) JP2013532412A (ko)
KR (1) KR101436713B1 (ko)
CN (1) CN102918836B (ko)
WO (1) WO2011143599A1 (ko)

Families Citing this family (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
EP2355360B1 (en) 2002-10-05 2020-08-05 QUALCOMM Incorporated Systematic encoding and decoding of chain reaction codes
WO2005036753A2 (en) 2003-10-06 2005-04-21 Digital Fountain, Inc. Error-correcting multi-stage code generator and decoder for communication systems having single transmitters or multiple transmitters
EP2202888A1 (en) 2004-05-07 2010-06-30 Digital Fountain, Inc. File download and streaming system
CN101686107B (zh) 2006-02-13 2014-08-13 数字方敦股份有限公司 使用可变fec开销和保护周期的流送和缓冲
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
WO2007134196A2 (en) 2006-05-10 2007-11-22 Digital Fountain, Inc. Code generator and decoder using hybrid codes
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
JP5027305B2 (ja) 2007-09-12 2012-09-19 デジタル ファウンテン, インコーポレイテッド 信頼できる通信を可能にするためのソース識別情報の生成および伝達
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
CA2758104C (en) 2009-04-07 2015-04-07 Lg Electronics Inc. Broadcast transmitter, broadcast receiver and 3d video data processing method thereof
KR101353115B1 (ko) * 2009-08-03 2014-01-21 제너럴 인스트루먼트 코포레이션 비디오 컨텐트를 인코딩하는 방법
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US20110280311A1 (en) 2010-05-13 2011-11-17 Qualcomm Incorporated One-stream coding for asymmetric stereo video
US9485546B2 (en) 2010-06-29 2016-11-01 Qualcomm Incorporated Signaling video samples for trick mode video representations
ES2561078T3 (es) 2010-07-15 2016-02-24 Ge Video Compression, Llc Codificación de vídeo híbrido que soporta síntesis de vistas intermedias
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US20120169845A1 (en) * 2010-12-30 2012-07-05 General Instrument Corporation Method and apparatus for adaptive sampling video content
CN107277542B (zh) * 2011-02-10 2019-12-10 太阳专利托管公司 动态图像解码方法、动态图像解码装置
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
CN108391136B (zh) * 2011-06-15 2022-07-19 韩国电子通信研究院 可伸缩解码方法/设备、可伸缩编码方法/设备和介质
JP5815326B2 (ja) * 2011-08-12 2015-11-17 ルネサスエレクトロニクス株式会社 動画像復号装置及び画像表示装置
US20130050183A1 (en) * 2011-08-25 2013-02-28 Himax Technologies Limited System and Method of Rendering Stereoscopic Images
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
CN103814572B (zh) * 2011-09-16 2017-02-22 杜比实验室特许公司 帧兼容的全分辨率立体3d压缩和解压缩
US9843844B2 (en) 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
US9432704B2 (en) * 2011-11-06 2016-08-30 Akamai Technologies Inc. Segmented parallel encoding with frame-aware, variable-size chunking
JP2013126157A (ja) * 2011-12-15 2013-06-24 Sony Corp 画像処理装置及び画像処理方法
KR20130088636A (ko) * 2012-01-31 2013-08-08 삼성전자주식회사 영상 전송 장치 및 방법, 그리고 영상 재생 장치 및 방법
ITTO20120134A1 (it) * 2012-02-16 2013-08-17 Sisvel Technology Srl Metodo, apparato e sistema di impacchettamento di frame utilizzanti un nuovo formato "frame compatible" per la codifica 3d.
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
WO2013142990A1 (en) * 2012-03-29 2013-10-03 Tandemlaunch Technologies Inc. System and method for providing light efficient stereo projection
WO2013150944A1 (ja) 2012-04-06 2013-10-10 ソニー株式会社 復号装置および復号方法、並びに、符号化装置および符号化方法
DE102012207420B4 (de) * 2012-05-04 2019-01-17 Olympus Winter & Ibe Gmbh Verfahren, Stereovideoendoskop und System zur Verarbeitung stereoendoskopischer Bilddaten
TWI521940B (zh) * 2012-06-14 2016-02-11 杜比實驗室特許公司 用於立體及自動立體顯示器之深度圖傳遞格式
US10110890B2 (en) 2012-07-02 2018-10-23 Sony Corporation Video coding system with low delay and method of operation thereof
US9912941B2 (en) 2012-07-02 2018-03-06 Sony Corporation Video coding system with temporal layers and method of operation thereof
CN103532563B (zh) * 2012-07-06 2016-09-14 孕龙科技股份有限公司 信号解码方法
US9674499B2 (en) * 2012-08-15 2017-06-06 Qualcomm Incorporated Compatible three-dimensional video communications
JP6158929B2 (ja) * 2012-09-06 2017-07-05 ノキア テクノロジーズ オーユー 画像処理装置、方法及びコンピュータプログラム
US9743064B2 (en) * 2012-09-11 2017-08-22 The Directv Group, Inc. System and method for distributing high-quality 3D video in a 2D format
EP2901688B1 (en) 2012-09-28 2019-10-23 Nokia Technologies Oy An apparatus and a method for video coding and decoding
US9979960B2 (en) * 2012-10-01 2018-05-22 Microsoft Technology Licensing, Llc Frame packing and unpacking between frames of chroma sampling formats with different chroma resolutions
US20140098883A1 (en) * 2012-10-09 2014-04-10 Nokia Corporation Method and apparatus for video coding
US9661340B2 (en) 2012-10-22 2017-05-23 Microsoft Technology Licensing, Llc Band separation filtering / inverse filtering for frame packing / unpacking higher resolution chroma sampling formats
US9584792B2 (en) * 2013-01-04 2017-02-28 Qualcomm Incorporated Indication of current view dependency on reference view in multiview coding file format
EP2946551A4 (en) * 2013-01-15 2016-09-07 Imax Corp METHOD AND SYSTEM FOR MULTIPLEXING IMAGE FRAMES
US10284842B2 (en) * 2013-03-05 2019-05-07 Qualcomm Incorporated Inter-layer reference picture construction for spatial scalability with different aspect ratios
US20140269920A1 (en) * 2013-03-15 2014-09-18 Cisco Technology, Inc. Motion Estimation Guidance in Transcoding Operation
CN103179424B (zh) * 2013-03-26 2015-03-11 深圳市掌网立体时代视讯技术有限公司 立体图像合成方法及装置
TWI558166B (zh) * 2013-04-04 2016-11-11 杜比國際公司 用於多視點裸視立體顯示器的深度地圖遞送格式
FR3011429A1 (fr) * 2013-09-27 2015-04-03 Orange Codage et decodage video par heritage d'un champ de vecteurs de mouvement
US9485456B2 (en) 2013-12-30 2016-11-01 Akamai Technologies, Inc. Frame-rate conversion in a distributed computing system
US11228764B2 (en) 2014-01-15 2022-01-18 Avigilon Corporation Streaming multiple encodings encoded using different encoding parameters
ES2716676T3 (es) * 2014-03-13 2019-06-14 Qualcomm Inc Predicción residual avanzada simplificada para la 3d-hevc
CN105224879B (zh) * 2014-06-30 2019-03-15 奇点新源国际技术开发(北京)有限公司 一种图片封装、图片解封装方法及装置
US20170332092A1 (en) * 2014-10-31 2017-11-16 Samsung Electronics Co., Ltd. Method and device for encoding or decoding image
EP3041233A1 (en) * 2014-12-31 2016-07-06 Thomson Licensing High frame rate-low frame rate transmission technique
US9749646B2 (en) 2015-01-16 2017-08-29 Microsoft Technology Licensing, Llc Encoding/decoding of high chroma resolution details
US9854201B2 (en) 2015-01-16 2017-12-26 Microsoft Technology Licensing, Llc Dynamically updating quality to higher chroma sampling rate
US9832450B2 (en) * 2015-02-17 2017-11-28 Nextvr Inc. Methods and apparatus for generating and using reduced resolution images and/or communicating such images to a playback or content distribution device
US10362290B2 (en) 2015-02-17 2019-07-23 Nextvr Inc. Methods and apparatus for processing content based on viewing information and/or communicating content
US10091506B2 (en) 2015-06-11 2018-10-02 Sony Corporation Data-charge phase data compression architecture
US10027968B2 (en) 2015-06-12 2018-07-17 Sony Corporation Data-charge phase data compression tool
US10170154B2 (en) 2015-11-16 2019-01-01 Virtual Dreamware, LLC Symmetrically mirrored video segment
GB2545729A (en) 2015-12-23 2017-06-28 Nokia Technologies Oy Methods and apparatuses relating to the handling of a plurality of content streams
KR102571080B1 (ko) 2016-02-12 2023-08-25 삼성전자주식회사 홀로그래픽 이미지를 처리하는 방법 및 장치
CN105704570B (zh) * 2016-03-08 2019-05-07 上海小蚁科技有限公司 用于产生视频的一个或多个预览帧的方法和装置
US10547879B2 (en) * 2016-07-14 2020-01-28 Mediatek Inc. Method and apparatus for streaming video content
US10368080B2 (en) 2016-10-21 2019-07-30 Microsoft Technology Licensing, Llc Selective upsampling or refresh of chroma sample values
CN107046637A (zh) * 2017-01-05 2017-08-15 北京大学深圳研究生院 一种针对三维图像的非对称拼接方法
US10834164B2 (en) * 2017-02-08 2020-11-10 Wyse Technology L.L.C. Virtualizing audio and video devices using synchronous A/V streaming
US9872062B1 (en) * 2017-02-22 2018-01-16 Wyse Technology L.L.C. Enforcing synchronization by embedding audio within video frame data
US10613811B2 (en) 2017-03-13 2020-04-07 Qualcomm Incorporated Driving multiple display devices with a single display port
US11196975B2 (en) * 2017-05-18 2021-12-07 Sony Interactive Entertainment Inc. Image generating device, image display system, and image generating method
CN110870302B (zh) 2017-07-03 2021-06-29 诺基亚技术有限公司 用于全向视频的装置、方法和计算机程序
EP3474550A1 (en) * 2017-10-20 2019-04-24 Thomson Licensing Stereo omnidirectional frame packing
US10742966B2 (en) * 2017-11-16 2020-08-11 Htc Corporation Method, system and recording medium for adaptive interleaved image warping
CN111602401B (zh) * 2018-01-16 2024-01-09 Vid拓展公司 用于360度视频译码的自适应帧封装
US11570400B2 (en) 2018-06-13 2023-01-31 Analog Devices, Inc. Systems and methods for asymmetric image splitter clock generation
US11509879B2 (en) * 2018-10-02 2022-11-22 Lg Electronics Inc. Method for transmitting video, apparatus for transmitting video, method for receiving video, and apparatus for receiving video
WO2020091404A1 (ko) * 2018-10-30 2020-05-07 엘지전자 주식회사 비디오 송신 방법, 비디오 전송 장치, 비디오 수신 방법 및 비디오 수신 장치
CN109302600B (zh) * 2018-12-06 2023-03-21 成都工业学院 一种立体场景拍摄装置
US11445200B2 (en) * 2020-05-12 2022-09-13 Alibaba Group Holding Limited Method and system for processing video content
US11653047B2 (en) * 2021-07-29 2023-05-16 International Business Machines Corporation Context based adaptive resolution modulation countering network latency fluctuation
TWI778749B (zh) * 2021-08-17 2022-09-21 睿至股份有限公司 適用虛擬實境的影像傳輸方法、影像處理裝置及影像生成系統

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070274389A1 (en) 2006-02-22 2007-11-29 Samsung Electronics Co., Ltd. Method and apparatus for encoding/decoding interlaced video signal using different types of information of lower layer
US20090195640A1 (en) 2008-01-31 2009-08-06 Samsung Electronics Co., Ltd. Method and apparatus for generating stereoscopic image data stream for temporally partial three-dimensional (3d) data, and method and apparatus for displaying temporally partial 3d data of stereoscopic image
JP2009531999A (ja) 2006-03-29 2009-09-03 クゥアルコム・インコーポレイテッド スケーラビリティを有する映像処理
KR20100015611A (ko) * 2007-04-25 2010-02-12 톰슨 라이센싱 다운샘플링된 기준 화상을 이용한 인터-뷰 예측

Family Cites Families (223)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3909721A (en) 1972-01-31 1975-09-30 Signatron Signal processing system
US4365338A (en) 1980-06-27 1982-12-21 Harris Corporation Technique for high rate digital transmission over a dynamic dispersive channel
US4589112A (en) 1984-01-26 1986-05-13 International Business Machines Corporation System for multiple error detection with single and double bit error correction
GB8815978D0 (en) 1988-07-05 1988-08-10 British Telecomm Method & apparatus for encoding decoding & transmitting data in compressed form
US5136592A (en) 1989-06-28 1992-08-04 Digital Equipment Corporation Error detection and correction system for long burst errors
US5421031A (en) 1989-08-23 1995-05-30 Delta Beta Pty. Ltd. Program transmission optimisation
US5701582A (en) 1989-08-23 1997-12-23 Delta Beta Pty. Ltd. Method and apparatus for efficient transmissions of programs
US5329369A (en) 1990-06-01 1994-07-12 Thomson Consumer Electronics, Inc. Asymmetric picture compression
US5455823A (en) 1990-11-06 1995-10-03 Radio Satellite Corporation Integrated communications terminal
US5164963A (en) 1990-11-07 1992-11-17 At&T Bell Laboratories Coding for digital transmission
US5465318A (en) 1991-03-28 1995-11-07 Kurzweil Applied Intelligence, Inc. Method for generating a speech recognition model for a non-vocabulary utterance
US5379297A (en) 1992-04-09 1995-01-03 Network Equipment Technologies, Inc. Concurrent multi-channel segmentation and reassembly processors for asynchronous transfer mode
EP0543070A1 (en) 1991-11-21 1993-05-26 International Business Machines Corporation Coding system and method using quaternary codes
US5371532A (en) 1992-05-15 1994-12-06 Bell Communications Research, Inc. Communications architecture and method for distributing information services
US5425050A (en) 1992-10-23 1995-06-13 Massachusetts Institute Of Technology Television transmission system using spread spectrum and orthogonal frequency-division multiplex
US5372532A (en) 1993-01-26 1994-12-13 Robertson, Jr.; George W. Swivel head cap connector
EP0613249A1 (en) 1993-02-12 1994-08-31 Altera Corporation Custom look-up table with reduced number of architecture bits
DE4316297C1 (de) 1993-05-14 1994-04-07 Fraunhofer Ges Forschung Frequenzanalyseverfahren
AU665716B2 (en) 1993-07-05 1996-01-11 Mitsubishi Denki Kabushiki Kaisha A transmitter for encoding error correction codes and a receiver for decoding error correction codes on a transmission frame
JP2576776B2 (ja) 1993-11-10 1997-01-29 日本電気株式会社 パケット伝送方法・パケット伝送装置
US5517508A (en) 1994-01-26 1996-05-14 Sony Corporation Method and apparatus for detection and error correction of packetized digital data
US5432787A (en) 1994-03-24 1995-07-11 Loral Aerospace Corporation Packet data transmission system with adaptive data recovery method
US5757415A (en) 1994-05-26 1998-05-26 Sony Corporation On-demand data transmission by dividing input data into blocks and each block into sub-blocks such that the sub-blocks are re-arranged for storage to data storage means
US5568614A (en) 1994-07-29 1996-10-22 International Business Machines Corporation Data streaming between peer subsystems of a computer system
US5926205A (en) 1994-10-19 1999-07-20 Imedia Corporation Method and apparatus for encoding and formatting data representing a video program to provide multiple overlapping presentations of the video program
US5659614A (en) 1994-11-28 1997-08-19 Bailey, Iii; John E. Method and system for creating and storing a backup copy of file data stored on a computer
US5617541A (en) 1994-12-21 1997-04-01 International Computer Science Institute System for packetizing data encoded corresponding to priority levels where reconstructed data corresponds to fractionalized priority level and received fractionalized packets
CA2219379A1 (en) 1995-04-27 1996-10-31 Cadathur V. Chakravarthy High integrity transport for time critical multimedia networking applications
US5835165A (en) 1995-06-07 1998-11-10 Lsi Logic Corporation Reduction of false locking code words in concatenated decoders
US5805825A (en) 1995-07-26 1998-09-08 Intel Corporation Method for semi-reliable, unidirectional broadcast information services
US5751336A (en) 1995-10-12 1998-05-12 International Business Machines Corporation Permutation based pyramid block transmission scheme for broadcasting in video-on-demand storage systems
US6055012A (en) 1995-12-29 2000-04-25 Lucent Technologies Inc. Digital multi-view video compression with complexity and compatibility constraints
US6012159A (en) 1996-01-17 2000-01-04 Kencast, Inc. Method and system for error-free data transfer
US5852565A (en) 1996-01-30 1998-12-22 Demografx Temporal and resolution layering in advanced television
US5936659A (en) 1996-01-31 1999-08-10 Telcordia Technologies, Inc. Method for video delivery using pyramid broadcasting
US5903775A (en) 1996-06-06 1999-05-11 International Business Machines Corporation Method for the sequential transmission of compressed video information at varying data rates
US5936949A (en) 1996-09-05 1999-08-10 Netro Corporation Wireless ATM metropolitan area network
US6011590A (en) 1997-01-03 2000-01-04 Ncr Corporation Method of transmitting compressed information to minimize buffer space
US6044485A (en) 1997-01-03 2000-03-28 Ericsson Inc. Transmitter method and transmission system using adaptive coding based on channel characteristics
US6141053A (en) 1997-01-03 2000-10-31 Saukkonen; Jukka I. Method of optimizing bandwidth for transmitting compressed video data streams
US5983383A (en) 1997-01-17 1999-11-09 Qualcom Incorporated Method and apparatus for transmitting and receiving concatenated code data
EP0854650A3 (en) 1997-01-17 2001-05-02 NOKIA TECHNOLOGY GmbH Method for addressing a service in digital video broadcasting
US6014706A (en) 1997-01-30 2000-01-11 Microsoft Corporation Methods and apparatus for implementing control functions in a streamed video display system
KR20000075982A (ko) 1997-03-07 2000-12-26 다카노 야스아키 디지탈 방송 수신기 및 디스플레이 장치
US6115420A (en) 1997-03-14 2000-09-05 Microsoft Corporation Digital video signal encoder and encoding method
DE19716011A1 (de) 1997-04-17 1998-10-22 Abb Research Ltd Verfahren und Vorrichtung zur Informationsübertragung über Stromversorgungsleitungen
US5970098A (en) 1997-05-02 1999-10-19 Globespan Technologies, Inc. Multilevel encoder
US6081907A (en) 1997-06-09 2000-06-27 Microsoft Corporation Data delivery system and method for delivering data and redundant information over a unidirectional network
US5917852A (en) 1997-06-11 1999-06-29 L-3 Communications Corporation Data scrambling system and method and communications system incorporating same
KR100240869B1 (ko) 1997-06-25 2000-01-15 윤종용 이중 다이버서티 시스템을 위한 데이터 전송 방법
US6175944B1 (en) 1997-07-15 2001-01-16 Lucent Technologies Inc. Methods and apparatus for packetizing data for transmission through an erasure broadcast channel
US5933056A (en) 1997-07-15 1999-08-03 Exar Corporation Single pole current mode common-mode feedback circuit
US6047069A (en) 1997-07-17 2000-04-04 Hewlett-Packard Company Method and apparatus for preserving error correction capabilities during data encryption/decryption
US6904110B2 (en) 1997-07-31 2005-06-07 Francois Trans Channel equalization system and method
US6178536B1 (en) 1997-08-14 2001-01-23 International Business Machines Corporation Coding scheme for file backup and systems based thereon
FR2767940A1 (fr) 1997-08-29 1999-02-26 Canon Kk Procedes et dispositifs de codage et de decodage et appareils les mettant en oeuvre
US6088330A (en) 1997-09-09 2000-07-11 Bruck; Joshua Reliable array of distributed computing nodes
US6134596A (en) 1997-09-18 2000-10-17 Microsoft Corporation Continuous media file server system and method for scheduling network resources to play multiple files having different data transmission rates
US6272658B1 (en) 1997-10-27 2001-08-07 Kencast, Inc. Method and system for reliable broadcasting of data files and streams
US6081909A (en) 1997-11-06 2000-06-27 Digital Equipment Corporation Irregularly graphed encoding technique
US6081918A (en) 1997-11-06 2000-06-27 Spielman; Daniel A. Loss resilient code with cascading series of redundant layers
US6073250A (en) 1997-11-06 2000-06-06 Luby; Michael G. Loss resilient decoding technique
US6195777B1 (en) 1997-11-06 2001-02-27 Compaq Computer Corporation Loss resilient code with double heavy tailed series of redundant layers
US6163870A (en) 1997-11-06 2000-12-19 Compaq Computer Corporation Message encoding with irregular graphing
US5870412A (en) 1997-12-12 1999-02-09 3Com Corporation Forward error correction system for packet based real time media
US6243846B1 (en) 1997-12-12 2001-06-05 3Com Corporation Forward error correction system for packet based data and real time media, using cross-wise parity calculation
US6849803B1 (en) 1998-01-15 2005-02-01 Arlington Industries, Inc. Electrical connector
US6097320A (en) 1998-01-20 2000-08-01 Silicon Systems, Inc. Encoder/decoder system with suppressed error propagation
US6144762A (en) 1998-02-23 2000-11-07 Olympus America Inc. Stereo video microscope
US6141788A (en) 1998-03-13 2000-10-31 Lucent Technologies Inc. Method and apparatus for forward error correction in packet networks
US6278716B1 (en) 1998-03-23 2001-08-21 University Of Massachusetts Multicast with proactive forward error correction
JP2002510947A (ja) 1998-04-02 2002-04-09 サーノフ コーポレイション 圧縮ビデオ・データのバースト状データ伝送
US6185265B1 (en) 1998-04-07 2001-02-06 Worldspace Management Corp. System for time division multiplexing broadcast channels with R-1/2 or R-3/4 convolutional coding for satellite transmission via on-board baseband processing payload or transparent payload
US6067646A (en) 1998-04-17 2000-05-23 Ameritech Corporation Method and system for adaptive interleaving
US6018359A (en) 1998-04-24 2000-01-25 Massachusetts Institute Of Technology System and method for multicast video-on-demand delivery system
US6445717B1 (en) 1998-05-01 2002-09-03 Niwot Networks, Inc. System for recovering lost information in a data stream
US6421387B1 (en) 1998-05-15 2002-07-16 North Carolina State University Methods and systems for forward error correction based loss recovery for interactive video transmission
US6333926B1 (en) 1998-08-11 2001-12-25 Nortel Networks Limited Multiple user CDMA basestation modem
CA2341747C (en) 1998-09-04 2007-05-22 At&T Corp. Combined channel coding and space-time block coding in a multi-antenna arrangement
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US7243285B2 (en) 1998-09-23 2007-07-10 Digital Fountain, Inc. Systems and methods for broadcasting information additive codes
US6320520B1 (en) 1998-09-23 2001-11-20 Digital Fountain Information additive group code generator and decoder for communications systems
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US6704370B1 (en) 1998-10-09 2004-03-09 Nortel Networks Limited Interleaving methodology and apparatus for CDMA
IT1303735B1 (it) 1998-11-11 2001-02-23 Falorni Italia Farmaceutici S Acidi ialuronici reticolati e loro usi medici.
US6166544A (en) 1998-11-25 2000-12-26 General Electric Company MR imaging system with interactive image contrast control
PL192020B1 (pl) 1998-12-03 2006-08-31 Fraunhofer Ges Forschung Sposób i urządzenie do nadawania informacji oraz sposób i urządzenie do odbierania informacji
US6496980B1 (en) 1998-12-07 2002-12-17 Intel Corporation Method of providing replay on demand for streaming digital multimedia
US6223324B1 (en) 1999-01-05 2001-04-24 Agere Systems Guardian Corp. Multiple program unequal error protection for digital audio broadcasting and other applications
JP3926499B2 (ja) 1999-01-22 2007-06-06 株式会社日立国際電気 畳み込み符号軟判定復号方式の受信装置
US6618451B1 (en) 1999-02-13 2003-09-09 Altocom Inc Efficient reduced state maximum likelihood sequence estimator
US6466698B1 (en) 1999-03-25 2002-10-15 The United States Of America As Represented By The Secretary Of The Navy Efficient embedded image and video compression system using lifted wavelets
US6609223B1 (en) 1999-04-06 2003-08-19 Kencast, Inc. Method for packet-level fec encoding, in which on a source packet-by-source packet basis, the error correction contributions of a source packet to a plurality of wildcard packets are computed, and the source packet is transmitted thereafter
US6535920B1 (en) 1999-04-06 2003-03-18 Microsoft Corporation Analyzing, indexing and seeking of streaming information
US6154452A (en) 1999-05-26 2000-11-28 Xm Satellite Radio Inc. Method and apparatus for continuous cross-channel interleaving
US6229824B1 (en) 1999-05-26 2001-05-08 Xm Satellite Radio Inc. Method and apparatus for concatenated convolutional endcoding and interleaving
IL141800A0 (en) 1999-07-06 2002-03-10 Samsung Electronics Co Ltd Rate matching device and method for a data communication system
US6643332B1 (en) 1999-07-09 2003-11-04 Lsi Logic Corporation Method and apparatus for multi-level coding of digital signals
JP3451221B2 (ja) 1999-07-22 2003-09-29 日本無線株式会社 誤り訂正符号化装置、方法及び媒体、並びに誤り訂正符号復号装置、方法及び媒体
US6453440B1 (en) 1999-08-04 2002-09-17 Sun Microsystems, Inc. System and method for detecting double-bit errors and for correcting errors due to component failures
US6430233B1 (en) 1999-08-30 2002-08-06 Hughes Electronics Corporation Single-LNB satellite data receiver
JP4284774B2 (ja) 1999-09-07 2009-06-24 ソニー株式会社 送信装置、受信装置、通信システム、送信方法及び通信方法
US6523147B1 (en) 1999-11-11 2003-02-18 Ibiquity Digital Corporation Method and apparatus for forward error correction coding for an AM in-band on-channel digital audio broadcasting system
US6748441B1 (en) 1999-12-02 2004-06-08 Microsoft Corporation Data carousel receiving and caching
US6678855B1 (en) 1999-12-02 2004-01-13 Microsoft Corporation Selecting K in a data transmission carousel using (N,K) forward error correction
US6487692B1 (en) 1999-12-21 2002-11-26 Lsi Logic Corporation Reed-Solomon decoder
US6965636B1 (en) 2000-02-01 2005-11-15 2Wire, Inc. System and method for block error correction in packet-based digital communications
US20020009137A1 (en) 2000-02-01 2002-01-24 Nelson John E. Three-dimensional video broadcasting system
WO2001058130A2 (en) 2000-02-03 2001-08-09 Bandwiz, Inc. Coding method
IL140504A0 (en) 2000-02-03 2002-02-10 Bandwiz Inc Broadcast system
DE10009443A1 (de) 2000-02-29 2001-08-30 Philips Corp Intellectual Pty Empfänger und Verfahren zum Detektieren und Dekodieren eines DQPSK-modulierten und kanalkodierten Empfangssignals
US6384750B1 (en) 2000-03-23 2002-05-07 Mosaid Technologies, Inc. Multi-stage lookup for translating between signals of different bit lengths
US6510177B1 (en) 2000-03-24 2003-01-21 Microsoft Corporation System and method for layered video coding enhancement
WO2001076077A2 (en) 2000-03-31 2001-10-11 Ted Szymanski Transmitter, receiver, and coding scheme to increase data rate and decrease bit error rate of an optical data link
US6473010B1 (en) 2000-04-04 2002-10-29 Marvell International, Ltd. Method and apparatus for determining error correction code failure rate for iterative decoding algorithms
US6742154B1 (en) 2000-05-25 2004-05-25 Ciena Corporation Forward error correction codes for digital optical network optimization
US6694476B1 (en) 2000-06-02 2004-02-17 Vitesse Semiconductor Corporation Reed-solomon encoder and decoder
US6738942B1 (en) 2000-06-02 2004-05-18 Vitesse Semiconductor Corporation Product code based forward error correction system
US6486803B1 (en) 2000-09-22 2002-11-26 Digital Fountain, Inc. On demand encoding with a window
US7490344B2 (en) 2000-09-29 2009-02-10 Visible World, Inc. System and method for seamless switching
US6411223B1 (en) 2000-10-18 2002-06-25 Digital Fountain, Inc. Generating high weight encoding symbols using a basis
US6694478B1 (en) 2000-11-07 2004-02-17 Agere Systems Inc. Low delay channel codes for correcting bursts of lost packets
US6732325B1 (en) 2000-11-08 2004-05-04 Digeo, Inc. Error-correction with limited working storage
US7072971B2 (en) 2000-11-13 2006-07-04 Digital Foundation, Inc. Scheduling of multiple files for serving on a server
US7240358B2 (en) 2000-12-08 2007-07-03 Digital Fountain, Inc. Methods and apparatus for scheduling, serving, receiving media-on demand for clients, servers arranged according to constraints on resources
US7447791B2 (en) 2000-12-15 2008-11-04 British Telecommunications Public Limited Company Transmission and reception of audio and/or video material
US6850736B2 (en) 2000-12-21 2005-02-01 Tropian, Inc. Method and apparatus for reception quality indication in wireless communication
US6868083B2 (en) 2001-02-16 2005-03-15 Hewlett-Packard Development Company, L.P. Method and system for packet communication employing path diversity
US6785836B2 (en) 2001-04-11 2004-08-31 Broadcom Corporation In-place data transformation for fault-tolerant disk storage systems
US6820221B2 (en) 2001-04-13 2004-11-16 Hewlett-Packard Development Company, L.P. System and method for detecting process and network failures in a distributed system
US7010052B2 (en) 2001-04-16 2006-03-07 The Ohio University Apparatus and method of CTCM encoding and decoding for a digital communication system
US20020191116A1 (en) 2001-04-24 2002-12-19 Damien Kessler System and data format for providing seamless stream switching in a digital video recorder
US6633856B2 (en) 2001-06-15 2003-10-14 Flarion Technologies, Inc. Methods and apparatus for decoding LDPC codes
US6895547B2 (en) 2001-07-11 2005-05-17 International Business Machines Corporation Method and apparatus for low density parity check encoding of data
US6928603B1 (en) 2001-07-19 2005-08-09 Adaptix, Inc. System and method for interference mitigation using adaptive forward error correction in a wireless RF data transmission system
US7110412B2 (en) 2001-09-18 2006-09-19 Sbc Technology Resources, Inc. Method and system to transport high-quality video signals
US6990624B2 (en) 2001-10-12 2006-01-24 Agere Systems Inc. High speed syndrome-based FEC encoder and decoder and system using same
EP1472847A1 (en) 2002-01-30 2004-11-03 Koninklijke Philips Electronics N.V. Streaming multimedia data over a network having a variable bandwidth
US7249291B2 (en) 2002-02-15 2007-07-24 Digital Fountain, Inc. System and method for reliably communicating the content of a live data stream
US6677864B2 (en) 2002-04-18 2004-01-13 Telefonaktiebolaget L.M. Ericsson Method for multicast over wireless networks
AU2003235940A1 (en) 2002-04-25 2003-11-10 Sharp Kabushiki Kaisha Image encodder, image decoder, record medium, and image recorder
CN100479333C (zh) 2002-06-11 2009-04-15 数字方敦股份有限公司 通过被恢复符号的钝化作用对链式反应代码解码的装置和方法
US6956875B2 (en) 2002-06-19 2005-10-18 Atlinks Usa, Inc. Technique for communicating variable bit rate data over a constant bit rate link
JP4154569B2 (ja) 2002-07-10 2008-09-24 日本電気株式会社 画像圧縮伸長装置
JP4120461B2 (ja) 2002-07-12 2008-07-16 住友電気工業株式会社 伝送データ生成方法及び伝送データ生成装置
EP2355360B1 (en) 2002-10-05 2020-08-05 QUALCOMM Incorporated Systematic encoding and decoding of chain reaction codes
DE60323860D1 (de) 2002-11-18 2008-11-13 British Telecomm Videoübertragung
US7293222B2 (en) 2003-01-29 2007-11-06 Digital Fountain, Inc. Systems and processes for fast encoding of hamming codes
US7756002B2 (en) 2003-01-30 2010-07-13 Texas Instruments Incorporated Time-frequency interleaved orthogonal frequency division multiplexing ultra wide band physical layer
EP1455504B1 (en) 2003-03-07 2014-11-12 Samsung Electronics Co., Ltd. Apparatus and method for processing audio signal and computer readable recording medium storing computer program for the method
US7408486B2 (en) 2003-04-21 2008-08-05 Qbit Corporation System and method for using a microlet-based modem
US20050041736A1 (en) 2003-05-07 2005-02-24 Bernie Butler-Smith Stereoscopic television signal processing method, transmission system and viewer enhancements
US7113773B2 (en) 2003-05-16 2006-09-26 Qualcomm Incorporated Reliable reception of broadcast/multicast content
KR100479206B1 (ko) 2003-06-14 2005-03-29 한국전자통신연구원 비대칭 축소 다중화를 이용한 3차원 영상 신호 처리 장치및 그 방법
US7254754B2 (en) 2003-07-14 2007-08-07 International Business Machines Corporation Raid 3+3
US8694869B2 (en) 2003-08-21 2014-04-08 QUALCIMM Incorporated Methods for forward error correction coding above a radio link control layer and related apparatus
US20070159476A1 (en) 2003-09-15 2007-07-12 Armin Grasnick Method for creating a stereoscopic image master for imaging methods with three-dimensional depth rendition and device for displaying a steroscopic image master
WO2005036753A2 (en) 2003-10-06 2005-04-21 Digital Fountain, Inc. Error-correcting multi-stage code generator and decoder for communication systems having single transmitters or multiple transmitters
KR101103443B1 (ko) 2003-10-14 2012-01-09 파나소닉 주식회사 데이터 컨버터
US7650036B2 (en) 2003-10-16 2010-01-19 Sharp Laboratories Of America, Inc. System and method for three-dimensional video coding
US7168030B2 (en) 2003-10-17 2007-01-23 Telefonaktiebolaget Lm Ericsson (Publ) Turbo code decoder with parity information update
US7412641B2 (en) 2003-12-01 2008-08-12 Digital Fountain, Inc. Protection of data from erasures using subsymbol based codes
US7574706B2 (en) 2003-12-15 2009-08-11 Microsoft Corporation System and method for managing and communicating software updates
KR100834750B1 (ko) 2004-01-29 2008-06-05 삼성전자주식회사 엔코더 단에서 스케일러빌리티를 제공하는 스케일러블비디오 코딩 장치 및 방법
KR100586883B1 (ko) 2004-03-04 2006-06-08 삼성전자주식회사 비디오 스트리밍 서비스를 위한 비디오 코딩방법, 프리디코딩방법, 비디오 디코딩방법, 및 이를 위한 장치와, 이미지 필터링방법
KR100596705B1 (ko) 2004-03-04 2006-07-04 삼성전자주식회사 비디오 스트리밍 서비스를 위한 비디오 코딩 방법과 비디오 인코딩 시스템, 및 비디오 디코딩 방법과 비디오 디코딩 시스템
US7240236B2 (en) 2004-03-23 2007-07-03 Archivas, Inc. Fixed content distributed data storage using permutation ring encoding
TW200534875A (en) 2004-04-23 2005-11-01 Lonza Ag Personal care compositions and concentrates for making the same
EP2202888A1 (en) 2004-05-07 2010-06-30 Digital Fountain, Inc. File download and streaming system
US20050254575A1 (en) 2004-05-12 2005-11-17 Nokia Corporation Multiple interoperability points for scalable media coding and transmission
US8331445B2 (en) 2004-06-01 2012-12-11 Qualcomm Incorporated Method, apparatus, and system for enhancing robustness of predictive video codecs using a side-channel based on distributed source coding techniques
US20070110074A1 (en) 2004-06-04 2007-05-17 Bob Bradley System and Method for Synchronizing Media Presentation at Multiple Recipients
US7139660B2 (en) 2004-07-14 2006-11-21 General Motors Corporation System and method for changing motor vehicle personalization settings
US7721184B2 (en) 2004-08-11 2010-05-18 Digital Fountain, Inc. Method and apparatus for fast encoding of data symbols according to half-weight codes
JP4405875B2 (ja) 2004-08-25 2010-01-27 富士通株式会社 エラー訂正用データの生成方法及び生成装置並びに生成プログラム及び同プログラムを格納したコンピュータ読み取り可能な記録媒体
US7751324B2 (en) 2004-11-19 2010-07-06 Nokia Corporation Packet stream arrangement in multimedia transmission
KR20060065482A (ko) 2004-12-10 2006-06-14 마이크로소프트 코포레이션 스트리밍 미디어 데이터의 코딩 비트 레이트의 제어 시스템및 프로세스
US7398454B2 (en) 2004-12-21 2008-07-08 Tyco Telecommunications (Us) Inc. System and method for forward error correction decoding using soft information
US7925097B2 (en) 2005-02-18 2011-04-12 Sanyo Electric Co., Ltd. Image display method, image coding apparatus, and image decoding apparatus
US7418649B2 (en) 2005-03-15 2008-08-26 Microsoft Corporation Efficient implementation of reed-solomon erasure resilient codes in high-rate applications
US7219289B2 (en) 2005-03-15 2007-05-15 Tandberg Data Corporation Multiply redundant raid system and XOR-efficient method and apparatus for implementing the same
US8228994B2 (en) 2005-05-20 2012-07-24 Microsoft Corporation Multi-view video coding based on temporal and view decomposition
US7644335B2 (en) 2005-06-10 2010-01-05 Qualcomm Incorporated In-place transformations with applications to encoding and decoding various classes of codes
US7676735B2 (en) 2005-06-10 2010-03-09 Digital Fountain Inc. Forward error-correcting (FEC) coding and streaming
WO2007029443A1 (ja) 2005-09-09 2007-03-15 Matsushita Electric Industrial Co., Ltd. 画像処理方法、画像記録方法、画像処理装置および画像ファイルフォーマット
US8879857B2 (en) 2005-09-27 2014-11-04 Qualcomm Incorporated Redundant data encoding methods and device
US7164370B1 (en) 2005-10-06 2007-01-16 Analog Devices, Inc. System and method for decoding data compressed in accordance with dictionary-based compression schemes
EP1946563A2 (en) 2005-10-19 2008-07-23 Thomson Licensing Multi-view video coding using scalable video coding
FR2894421B1 (fr) 2005-12-07 2008-01-18 Canon Kk Procede et dispositif de decodage d'un flux video code suivant un codage hierarchique
JP5227187B2 (ja) 2006-01-09 2013-07-03 トムソン ライセンシング マルチビュービデオ符号化のための低解像度アップデートモードを提供する方法及び装置
BRPI0707457A2 (pt) 2006-01-11 2011-05-03 Nokia Corp agregação compatìvel inversa de imagens em codificação de vìdeo redimensionável
KR100934677B1 (ko) 2006-01-12 2009-12-31 엘지전자 주식회사 다시점 비디오의 처리
CN101686107B (zh) 2006-02-13 2014-08-13 数字方敦股份有限公司 使用可变fec开销和保护周期的流送和缓冲
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
US8320450B2 (en) 2006-03-29 2012-11-27 Vidyo, Inc. System and method for transcoding between scalable and non-scalable video codecs
WO2007134196A2 (en) 2006-05-10 2007-11-22 Digital Fountain, Inc. Code generator and decoder using hybrid codes
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
WO2008054100A1 (en) 2006-11-01 2008-05-08 Electronics And Telecommunications Research Institute Method and apparatus for decoding metadata used for playing stereoscopic contents
KR20080066408A (ko) 2007-01-12 2008-07-16 삼성전자주식회사 3차원 영상 처리 장치 및 방법
MX2009007696A (es) 2007-01-18 2009-09-04 Nokia Corp Carro de mensajes de informacion de mejoramiento suplementario en formato de carga util de protocolo de transporte en tiempo real.
BRPI0823512A2 (pt) * 2007-04-12 2013-11-26 Thomson Licensing Ladrilhamento em codificação e decodificação de vídeo
FR2917262A1 (fr) 2007-06-05 2008-12-12 Thomson Licensing Sas Dispositif et procede de codage d'un contenu video sous la forme d'un flux scalable.
US8487982B2 (en) 2007-06-07 2013-07-16 Reald Inc. Stereoplexing for film and video applications
EP2153670A4 (en) 2007-06-11 2011-03-09 Samsung Electronics Co Ltd METHOD AND DEVICE FOR GENERATING HEADLINE INFORMATION ON A STEREOSCOPIC IMAGE
JP5027305B2 (ja) 2007-09-12 2012-09-19 デジタル ファウンテン, インコーポレイテッド 信頼できる通信を可能にするためのソース識別情報の生成および伝達
US20090125636A1 (en) 2007-11-13 2009-05-14 Qiong Li Payload allocation methods for scalable multimedia servers
EP2086237B1 (en) 2008-02-04 2012-06-27 Alcatel Lucent Method and device for reordering and multiplexing multimedia packets from multimedia streams pertaining to interrelated sessions
US8151174B2 (en) 2008-02-13 2012-04-03 Sunrise IP, LLC Block modulus coding (BMC) systems and methods for block coding with non-binary modulus
US20090219985A1 (en) 2008-02-28 2009-09-03 Vasanth Swaminathan Systems and Methods for Processing Multiple Projections of Video Data in a Single Video File
WO2009130561A1 (en) 2008-04-21 2009-10-29 Nokia Corporation Method and device for video coding and decoding
KR20100040640A (ko) 2008-10-10 2010-04-20 엘지전자 주식회사 수신 시스템 및 데이터 처리 방법
CN104717521B (zh) 2009-01-26 2018-06-01 汤姆森特许公司 用于视频解码的方法
EP3226559A1 (en) 2009-01-29 2017-10-04 Dolby Laboratories Licensing Corporation Methods and devices for sub-sampling and interleaving multiple images, e.g. stereoscopic
US8621044B2 (en) 2009-03-16 2013-12-31 Microsoft Corporation Smooth, stateless client media streaming
KR20120015443A (ko) 2009-04-13 2012-02-21 리얼디 인크. 향상된 해상도의 스테레오스코픽 비디오의 엔코딩, 디코딩 및 배포
WO2010126221A2 (en) * 2009-04-27 2010-11-04 Lg Electronics Inc. Broadcast transmitter, broadcast receiver and 3d video data processing method thereof
US20110032333A1 (en) 2009-08-07 2011-02-10 Darren Neuman Method and system for 3d video format conversion with inverse telecine
US9438861B2 (en) 2009-10-06 2016-09-06 Microsoft Technology Licensing, Llc Integrating continuous and sparse streaming data
JP2011087103A (ja) 2009-10-15 2011-04-28 Sony Corp コンテンツ再生システム、コンテンツ再生装置、プログラム、コンテンツ再生方法、およびコンテンツサーバを提供
CN107911332B (zh) 2009-11-04 2021-01-08 阿莫泰克有限公司 媒体内容流播的方法、系统和计算机可读介质
KR101786050B1 (ko) 2009-11-13 2017-10-16 삼성전자 주식회사 데이터 전송 방법 및 장치
US20110280311A1 (en) 2010-05-13 2011-11-17 Qualcomm Incorporated One-stream coding for asymmetric stereo video
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070274389A1 (en) 2006-02-22 2007-11-29 Samsung Electronics Co., Ltd. Method and apparatus for encoding/decoding interlaced video signal using different types of information of lower layer
JP2009531999A (ja) 2006-03-29 2009-09-03 クゥアルコム・インコーポレイテッド スケーラビリティを有する映像処理
KR20100015611A (ko) * 2007-04-25 2010-02-12 톰슨 라이센싱 다운샘플링된 기준 화상을 이용한 인터-뷰 예측
US20090195640A1 (en) 2008-01-31 2009-08-06 Samsung Electronics Co., Ltd. Method and apparatus for generating stereoscopic image data stream for temporally partial three-dimensional (3d) data, and method and apparatus for displaying temporally partial 3d data of stereoscopic image

Also Published As

Publication number Publication date
JP2013532412A (ja) 2013-08-15
US20110280311A1 (en) 2011-11-17
WO2011143599A1 (en) 2011-11-17
CN102918836A (zh) 2013-02-06
US9225961B2 (en) 2015-12-29
US20110280316A1 (en) 2011-11-17
EP2569943A1 (en) 2013-03-20
KR20130030270A (ko) 2013-03-26
CN102918836B (zh) 2015-10-21

Similar Documents

Publication Publication Date Title
KR101436713B1 (ko) 비대칭 스테레오 비디오에 대한 프레임 패킹
JP5866364B2 (ja) ステレオビデオデータの符号化
US10764596B2 (en) Tiling in video encoding and decoding
Vetro et al. Overview of the stereo and multiview video coding extensions of the H. 264/MPEG-4 AVC standard
US9288505B2 (en) Three-dimensional video with asymmetric spatial resolution
US9565449B2 (en) Coding multiview video plus depth content
KR101733852B1 (ko) 3차원의 비디오 코덱들에서 심도 맵들에 대한 슬라이스 헤더 예측
US20120236934A1 (en) Signaling of multiview video plus depth content with a block-level 4-component structure
KR20150064118A (ko) 비디오 코딩에서의 잔차 예측 수행
EP2438760A1 (en) Encoding of three-dimensional conversion information with two-dimensional video sequence
EP2859724A1 (en) Method and apparatus of adaptive intra prediction for inter-layer and inter-view coding
WO2013074162A1 (en) Signaling depth ranges for three-dimensional video coding
TW201223249A (en) Coding stereo video data
Assunção et al. 3D Media Representation and Coding
Lee et al. Interlaced MVD format for free viewpoint video

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: 20170629

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 6