Nothing Special   »   [go: up one dir, main page]

KR101652208B1 - 비디오 코딩에서의 비트스트림 속성들 - Google Patents

비디오 코딩에서의 비트스트림 속성들 Download PDF

Info

Publication number
KR101652208B1
KR101652208B1 KR1020157010473A KR20157010473A KR101652208B1 KR 101652208 B1 KR101652208 B1 KR 101652208B1 KR 1020157010473 A KR1020157010473 A KR 1020157010473A KR 20157010473 A KR20157010473 A KR 20157010473A KR 101652208 B1 KR101652208 B1 KR 101652208B1
Authority
KR
South Korea
Prior art keywords
bitstream
syntax element
cvss
indicating whether
same
Prior art date
Application number
KR1020157010473A
Other languages
English (en)
Other versions
KR20150063456A (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 KR20150063456A publication Critical patent/KR20150063456A/ko
Application granted granted Critical
Publication of KR101652208B1 publication Critical patent/KR101652208B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8451Structuring of content, e.g. decomposing content into time segments using Advanced Video Coding [AVC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

디바이스가 비트스트림의 속성을 시그널링한다. 비트스트림은 복수의 코딩된 비디오 시퀀스 (coded video sequence; CVS) 들을 포함한다. 그 속성이 특정 값을 갖는 경우, 그 비트스트림의 모든 CVS들은 동일한 프로파일을 준수한다. 비디오 프로세싱 디바이스는, 그 속성에 기초하여, 비트스트림을 프로세싱할 지의 여부를 결정할 수 있다.

Description

비디오 코딩에서의 비트스트림 속성들{BITSTREAM PROPERTIES IN VIDEO CODING}
본 출원은 2012년 9월 24일자로 출원된 미국 가출원 제61/705,047호와, 2012년 9월 28일자로 출원된 미국 가출원 제61/707,612호를 우선권 주장하며, 그것들의 각각의 전체 내용은 참조로 본원에 통합된다.
기술 분야
본 개시물은 비디오 인코딩 및 디코딩에 관한 것이다.
디지털 비디오 능력들은 디지털 텔레비전들, 디지털 직접 브로드캐스트 시스템들, 무선 브로드캐스트 시스템들, 개인휴대 정보단말들 (PDA들), 랩톱 또는 데스크톱 컴퓨터들, 태블릿 컴퓨터들, e-북 리더들, 디지털 카메라들, 디지털 레코딩 디바이스들, 디지털 미디어 플레이어들, 비디오 게이밍 디바이스들, 비디오 게임 콘솔들, 셀룰러 또는 위성 무선 전화기들, 이른바 "스마트 폰들", 비디오 원격회의 디바이스들, 비디오 스트리밍 디바이스들 등을 포함하는 넓은 범위의 디바이스들에 통합될 수 있다. 디지털 비디오 디바이스들은 MPEG-2, MPEG-4, ITU-T H.263 또는 ITU-T H.264/MPEG-4, 파트 10, 고급 비디오 코딩 (AVC) 에 의해 규정된 표준들, 현재 개발중인 고 효율 비디오 코딩 (High Efficiency Video Coding, HEVC) 표준, 및 이러한 표준들의 확장본들에 기재된 것들과 같은 비디오 압축 기법들을 구현한다. 비디오 디바이스들은 그런 비디오 압축 기법들을 구현하는 것에 의해 디지털 비디오 정보를 더 효율적으로 송신, 수신, 인코딩, 디코딩, 및/또는 저장할 수도 있다.
비디오 압축 기법들은 공간적 (화상 내) 예측 및/또는 시간적 (화상 간) 예측을 수행하여 비디오 시퀀스들에 내재하는 리던던시를 감소시키거나 제거한다. 블록 기반 비디오 코딩의 경우, 비디오 슬라이스 (즉, 비디오 프레임 또는 비디오 프레임의 부분) 는 비디오 블록들로 구획될 수도 있다. 화상의 인트라 코딩식 (intra-coded; I) 슬라이스에서의 비디오 블록들은 동일한 화상의 이웃 블록들에서의 참조 샘플들에 관한 공간적 예측을 이용하여 인코딩된다. 화상의 인터 코딩식 (inter-coded; P 또는 B) 슬라이스에서의 비디오 블록들은 동일한 화상의 이웃 블록들에서의 참조 샘플들에 관한 공간적 예측 또는 다른 참조 화상들에서의 참조 샘플들에 관한 시간적 예측을 이용할 수도 있다. 화상들은 프레임들이라고 지칭될 수도 있고, 참조 화상들은 참조 프레임들이라고 지칭될 수도 있다.
공간적 또는 시간적 예측은 코딩될 블록에 대한 예측 블록으로 나타나게 된다. 잔여 데이터는 코딩될 원본 블록과 예측 블록 사이의 화소 차이들을 나타낸다. 인터 코딩식 블록은 예측 블록을 형성하는 참조 샘플들의 블록을 가리키는 모션 벡터에 따라 인코딩되고, 잔여 데이터는 코딩된 블록 및 예측 블록 사이의 차이를 나타낸다. 인트라 코딩식 블록이 인트라 코딩 모드 및 잔여 데이터에 따라 인코딩된다. 추가 압축을 위해, 잔여 데이터는 화소 도메인으로부터 변환 도메인으로 변환될 수도 있으며, 결과적으로 잔여 계수들이 생겨나며, 그 계수들은 그 다음에 양자화될 수도 있다. 처음에는 2차원 어레이로 배열된 양자화된 계수들은, 계수들의 1차원 벡터를 생성하기 위하여 스캐닝될 수도 있고, 엔트로피 코딩이 더 많은 압축을 달성하기 위해 적용될 수도 있다.
멀티뷰 코딩 비트스트림이, 예컨대, 다수의 관점들에서 뷰들을 인코딩함으로써 생성될 수도 있다. 멀티뷰 코딩 양태들을 사용하는 일부 3차원 (3D) 비디오 표준들이 개발되어 있다. 예를 들어, 상이한 뷰들이 3D 비디오를 지원하기 위해 좌측 및 우측 눈 뷰들을 전송할 수도 있다. 대안으로, 일부 3D 비디오 코딩 프로세스들이 이른바 멀티뷰 더하기 심도 (multiview plus depth) 코딩을 적용할 수도 있다. 멀티뷰 더하기 심도 코딩에서, 3D 비디오 비트스트림이 텍스처 뷰 성분들뿐만 아니라, 심도 뷰 성분들도 포함할 수도 있다. 예를 들어, 각각의 뷰는 하나의 텍스처 뷰 성분과 하나의 심도 뷰 성분을 포함할 수도 있다.
대체로, 본 개시물은 비디오 인코딩, 디코딩, 저장, 및 애플리케이션 시스템들에서 비트스트림 속성들 및 기본 스트림 속성들을 시그널링하는 기법들을 설명한다. 일부 예들에서, 디바이스가 비트스트림의 속성을 시그널링한다. 비트스트림은 복수의 코딩된 비디오 시퀀스 (coded video sequence; CVS) 들을 포함한다. 그 속성이 특정 값을 갖는 경우, 그 비트스트림의 모든 CVS들은 동일한 프로파일을 준수한다. 비디오 프로세싱 디바이스가, 그 속성에 기초하여, 비트스트림을 프로세싱 (예컨대, 디코딩) 할 지의 여부를 결정할 수도 있다.
일부 예들에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비디오 데이터의 인코딩된 표현을 포함하는 비트스트림의 시그널링된 속성에 기초하여, 비디오 디코더가 비트스트림을 디코딩할 수 있는지의 여부를 결정하는 것으로서, 비트스트림은 비디오 코딩 사양을 준수하고 복수의 CVS들을 포함하고, 시그널링된 속성이 특정 값을 갖는 경우, 비트스트림의 모든 CVS들은 동일한 프로파일을 준수하며, 프로파일은 비디오 코딩 사양에 의해 특정되는 전체 비트스트림 신택스의 서브세트인, 상기 비트스트림을 디코딩할 수 있는지의 여부를 결정하는 것; 및 그 결정에 기초하여, 비트스트림을 프로세싱하는 것을 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림의 속성을 시그널링하는 것으로서, 비트스트림은 비디오 코딩 사양을 준수하고 복수의 CVS들을 포함하고, 그 속성이 특정 값을 갖는 경우, 비트스트림의 모든 CVS들은 동일한 프로파일을 준수하며, 프로파일은 비디오 코딩 사양에 의해 특정되는 전체 비트스트림 신택스의 서브세트인, 상기 비트스트림의 속성을 시그널링하는 것을 포함한다.
다른 예에서, 본 개시물은, 비디오 데이터의 인코딩된 표현을 포함하는 비트스트림의 시그널링된 속성에 기초하여, 비디오 디코더가 비트스트림을 디코딩할 수 있는지의 여부를 결정하도록; 그리고 그 결정에 기초하여, 비트스트림을 프로세싱하도록 구성된 하나 이상의 프로세서들을 포함하며, 비트스트림은 비디오 코딩 사양을 준수하고 복수의 CVS들을 포함하고, 시그널링된 속성이 특정 값을 갖는 경우, 비트스트림의 모든 CVS들은 동일한 프로파일을 준수하며, 프로파일은 비디오 코딩 사양에 의해 특정되는 전체 비트스트림 신택스의 서브세트인 비디오 프로세싱 디바이스를 설명한다.
다른 예에서, 본 개시물은, 비트스트림의 속성을 시그널링하도록 구성된 하나 이상의 프로세서들을 포함하며, 비트스트림은 비디오 코딩 사양을 준수하고 복수의 CVS들을 포함하고, 그 속성이 특정 값을 갖는 경우, 비트스트림의 모든 CVS들은 동일한 프로파일을 준수하며, 프로파일은 비디오 코딩 사양에 의해 특정되는 전체 비트스트림 신택스의 서브세트인 비디오 프로세싱 디바이스를 설명한다.
다른 예에서, 본 개시물은, 비디오 프로세싱 디바이스를 설명하는데, 그 디바이스는, 비디오 데이터의 인코딩된 표현을 포함하는 비트스트림의 시그널링된 속성에 기초하여, 비디오 디코더가 비트스트림을 디코딩할 수 있는지의 여부를 결정하는 수단으로서, 비트스트림은 비디오 코딩 사양을 준수하고 복수의 CVS들을 포함하고, 시그널링된 속성이 특정 값을 갖는 경우, 비트스트림의 모든 CVS들은 동일한 프로파일을 준수하며, 프로파일은 비디오 코딩 사양에 의해 특정되는 전체 비트스트림 신택스의 서브세트인, 상기 결정하는 수단; 및 그 결정에 기초하여, 비트스트림을 프로세싱하는 수단을 포함한다.
다른 예에서, 본 개시물은, 비디오 프로세싱 디바이스를 설명하는데, 그 디바이스는, 비트스트림의 속성을 시그널링하는 수단을 포함하며, 비트스트림은 비디오 코딩 사양을 준수하고 복수의 CVS들을 포함하고, 그 속성이 특정 값을 갖는 경우, 비트스트림의 모든 CVS들은 동일한 프로파일을 준수하며, 프로파일은 비디오 코딩 사양에 의해 특정되는 전체 비트스트림 신택스의 서브세트이다.
비일시적 컴퓨터 판독가능 데이터 저장 매체가 명령들을 저장하고 있는데, 상기 명령들은, 실행되는 경우, 비디오 데이터의 인코딩된 표현을 포함하는 비트스트림의 시그널링된 속성에 기초하여, 비디오 디코더가 비트스트림을 디코딩할 수 있는지의 여부를 결정하도록; 및 그 결정에 기초하여, 비트스트림을 프로세싱하도록 비디오 디코더를 구성하고, 비트스트림은 비디오 코딩 사양을 준수하고 복수의 CVS들을 포함하고, 시그널링된 속성이 특정 값을 갖는 경우, 비트스트림의 모든 CVS들은 동일한 프로파일을 준수하며, 프로파일은 비디오 코딩 사양에 의해 특정되는 전체 비트스트림 신택스의 서브세트이다.
비일시적 컴퓨터 판독가능 데이터 저장 매체가 명령들을 저장하고 있는데, 상기 명령들은, 실행되는 경우, 비트스트림의 속성을 시그널링하도록 비디오 프로세싱 디바이스를 구성하고, 비트스트림은 비디오 코딩 사양을 준수하고 복수의 CVS들을 포함하고, 속성이 특정 값을 갖는 경우, 상기 비트스트림의 모든 CVS들은 동일한 프로파일을 준수하며, 프로파일은 비디오 코딩 사양에 의해 특정되는 전체 비트스트림 신택스의 서브세트이다.
본 개시물의 하나 이상의 예들의 상세는 첨부 도면들 및 다음의 설명에서 언급된다. 다른 특징들, 목적들, 및 장점들은 상세한 설명 및 도면들로부터, 그리고 청구항들로부터 명확하게 될 것이다.
도 1은 본 개시물에서 설명되는 기법들을 이용할 수도 있는 일 예의 비디오 코딩 시스템을 도시하는 블록도이다.
도 2는 본 개시물에서 설명되는 기법들을 구현할 수도 있는 일 예의 비디오 인코더를 도시하는 블록도이다.
도 3은 본 개시물에서 설명되는 기법들을 구현할 수도 있는 일 예의 비디오 디코더를 도시하는 블록도이다.
도 4는 다수의 타일들로 구획되는 화상에 대한 일 예의 코딩 트리 블록 코딩 순서를 도시하는 개념도이다.
도 5는 파면 (wavefront) 병렬 프로세싱의 일 예를 도시하는 개념도이다.
도 6은 본 개시물의 하나 이상의 기법들에 따른, 비디오 디코더의 일 예의 동작을 도시하는 흐름도이다.
도 7은 본 개시물의 하나 이상의 기법들에 따른, 비디오 프로세싱 디바이스의 일 예의 동작을 도시하는 흐름도이다.
비트스트림이 하나 이상의 코딩된 비디오 시퀀스들 (CVS들) 을 형성하는 코딩된 화상들의 표현 및 연관된 데이터를 형성하는 비트들의 시퀀스를 포함할 수도 있다. 기본 스트림이 하나 이상의 비트스트림들의 시퀀스를 포함할 수도 있다. 코딩된 화상이 화상의 모든 코딩 트리 유닛들을 포함하는 화상의 코딩된 표현을 포함할 수도 있다. 코딩 트리 유닛 (coding tree unit; CTU) 이 루마 샘플들의 코딩 트리 블록 (coding tree block; CTB) 과 크로마 샘플들의 두 개의 대응하는 CTB들 및 그 샘플들을 코딩하는데 사용된 신택스 구조들을 포함할 수도 있다. CVS가 액세스 유닛들의 시퀀스를 포함할 수도 있다. 액세스 유닛들의 각각이 동일한 타임 인스턴스에 연관된 코딩된 화상들의 세트를 포함할 수도 있다.
프로파일들, 티어 (tier) 들, 및 레벨들이 비트스트림들에 대한 제약 (restriction) 들을 특정하고 그래서 비트스트림들을 디코딩하는데 필요한 능력들을 제한한다. 프로파일들, 티어들 및 레벨들은 또한, 개개의 디코더 구현예들 간의 상호운용성 포인트들을 나타내는데 사용될 수도 있다. "프로파일"이 비디오 코딩 사양 (예컨대, HEVC) 에 의해 특정되는 전체 비트스트림 신택스의 서브세트일 수도 있다. 예를 들면, 각각의 프로파일은 당해 프로파일을 준수하는 모든 디코더들에 의해 지원될 알고리즘 특징들 및 제한들의 서브세트를 특정할 수도 있다. 비디오 인코더들이 프로파일에서 지원되는 모든 특징들을 사용할 필요는 없다.
티어의 각각의 레벨이 신택스 엘리먼트들에 의해 취해질 수도 있는 값들에 대한 제한들의 세트를 특정할 수도 있다. 티어 및 레벨 정의들의 동일한 세트는 모든 프로파일들과 함께 사용되지만, 개개의 구현예들은 상이한 티어들을 그리고 티어 내에서는 각각의 지원된 프로파일에 대해 상이한 레벨들을 지원할 수도 있다. 임의의 주어진 프로파일에 대해, 티어의 레벨이 특정 디코더 프로세싱 부하 및 메모리 능력에 일반적으로 대응할 수도 있다. 비디오 디코더들의 능력들은 프로파일들, 티어들 및 레벨들의 제약들을 준수하는 비디오 스트림들을 디코딩하는 능력의 측면에서 특정될 수도 있다. 각각의 이러한 프로파일에 대해, 당해 프로파일에 대해 지원되는 티어 및 레벨이 또한 표현될 수도 있다. 일부 비디오 디코더들은 특정 프로파일들, 티어들, 또는 레벨들을 디코딩할 수 없을 수도 있다.
비트스트림이 상이한 프로파일들에 연관되는 다수의 CVS들을 포함할 수도 있다. 따라서, 비트스트림이 주어지면, 비트스트림의 제 1 CVS에 대해 액티브 시퀀스 파라미터 세트 (sequence parameter set; SPS) 에 포함된 프로파일 정보를 단순히 검사하는 것은 특정 프로파일을 준수하는 비디오 디코더가 전체 비트스트림을 디코딩할 수 있는지의 여부를 알기에는 충분하지 않을 수도 있다. 비디오 디코더가 전체 비트스트림을 디코딩할 수 있는 것을 보장하기 위해, 비디오 디코더는 비디오 디코더가 디코딩할 수 있는 프로파일을 모든 CVS들이 준수하는지의 여부를 결정하기 위해 비트스트림에서의 모든 CVS들을 검사하는 것을 필요로 할 수도 있다. 이러한 검사 (inspection) 는 간단하지 않을 수도 있는데, 비트스트림에서의 거의 모든 네트워크 추상 계층 (network abstraction layer; NAL) 유닛들이 모든 액티브 SPS들을 식별하기 위해 체크되어야 할 수도 있기 때문이다.
본 개시물의 일부 예의 기법들은 비트스트림으로 비트스트림의 속성들을 시그널링함으로써 비트스트림들에서 이전에 언급된 문제들을 해결할 수도 있다. 비디오 디코더가 비트스트림을 디코딩할 수 있는지의 여부를 결정하기 위해 그 비디오 디코더는 비트스트림의 시그널링된 속성들을 사용할 수도 있다. 따라서, 비디오 디코더는 비트스트림의 디코딩 동안 액티브인 파라미터 세트들을 결정하기 위해 비트스트림에서의 모든 파라미터 세트들 (예컨대, 비디오 파라미터 세트 (video parameter set; VPS) 들, SPS들, 화상 파라미터 세트들 (PPS들) 등) 을 검사하는 것을 필요로 하지 않을 수도 있다.
본 개시물의 일부 기법들에서, 비디오 인코더 (또는 다른 비디오 프로세싱 디바이스) 가 비트스트림의 속성을 시그널링할 수도 있다. 비트스트림은 복수의 CVS들을 포함한다. 비트스트림의 이 시그널링된 속성이 특정 값을 갖는 경우, 비트스트림의 모든 CVS들은 동일한 프로파일을 준수한다. 비디오 프로세싱 디바이스가, 그 속성에 기초하여, 비트스트림을 프로세싱 (예컨대, 디코딩) 할 지의 여부를 결정할 수도 있다. 예를 들어, 비디오 인코더 (또는 다른 비디오 프로세싱 디바이스) 는 비트스트림의 비트스트림 속성들을 비트스트림 속성들 보충 강화 정보 (Supplemental Enhancement Information; SEI) 메시지로 시그널링할 수도 있다. SEI 메시지들은 화상들의 샘플 값들의 올바른 디코딩에 필요하지 않은 메타데이터를 포함할 수도 있다. 비트스트림 속성들 SEI 메시지는 SEI 메시지를 포함하는 전체 비트스트림에 대한 정보를 제공할 수도 있다. 예를 들어, 비트스트림의 각각의 SPS가 SPS에 대한 적용가능 CVS가 준수하는 프로파일을 나타내는 프로파일 표시자 신택스 엘리먼트를 포함할 수도 있다. 이 예에서, 특정 값 (예컨대, 1) 을 갖는 비트스트림 속성들 SEI 메시지에서의 특정 신택스 엘리먼트가, 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 프로파일 표시자 신택스 엘리먼트들의 값들이 동일하다는 것을 나타낸다.
기본 스트림이 하나 이상의 비트스트림들의 시퀀스를 포함할 수도 있다. 본 개시물의 기법들은 기본 스트림들에 관한 유사한 문제들을 해결할 수도 있다. 다시 말하면, 기본 스트림의 디코딩 동안에 어떤 파라미터 세트들이 액티브인지를 결정하기 위해 기본 스트림의 각각의 CVS를 파싱하는 일 없이 비디오 디코더가 기본 스트림을 디코딩할 수 있는지의 여부를 그 비디오 디코더는 결정하지 못할 수도 있다. 본 개시물의 기법들은 기본 스트림의 속성들을 기본 스트림으로 시그널링함으로써 이 문제를 극복할 수도 있다. 본 개시물의 일부 이러한 기법들에 따라, 비디오 인코더 (또는 다른 비디오 프로세싱 디바이스) 가 기본 스트림의 속성을 시그널링할 수도 있다. 기본 스트림은 하나 이상의 비트스트림들을 포함하는데, 그 비트스트림들의 각각은 하나 이상의 CVS들을 포함한다. 그 속성이 특정 값을 갖는 경우, 그 기본 스트림의 모든 CVS들은 동일한 프로파일을 준수한다. 비디오 프로세싱 디바이스가, 그 속성에 기초하여, 기본 스트림을 프로세싱할 지의 여부를 결정할 수도 있다.
예를 들어, 비디오 프로세싱 디바이스는 기본 스트림 레벨 속성들을 시그널링하기 위해 기본 스트림 속성들 (elementary stream properties; ESP) SEI 메시지를 생성할 수도 있다. ESP SEI 메시지는 ESP SEI 메시지를 포함하는 전체 기본 스트림에 대한 정보를 제공한다. 예를 들어, 기본 스트림의 각각의 SPS는 SPS에 대한 적용가능 CVS가 준수하는 프로파일을 나타내는 프로파일 표시자 신택스 엘리먼트를 포함할 수도 있다. 이 예에서, 특정 값 (예컨대, 1) 을 갖는 ESP SEI 메시지에서의 특정 신택스 엘리먼트가, 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 프로파일 표시자 신택스 엘리먼트들의 값들이 동일하다는 것을 나타낸다.
도 1은 본 개시물의 기법들을 이용할 수도 있는 일 예의 비디오 코딩 시스템 (10) 을 도시하는 블록도이다. 본원에서 사용되는 바와 같이, 용어 "비디오 코더"는 비디오 인코더들 및 비디오 디코더들 양쪽 모두를 일반적으로 지칭한다. 본 개시물에서, "비디오 코딩" 또는 "코딩"이란 용어들은 비디오 인코딩 또는 비디오 디코딩을 일반적으로 지칭할 수도 있다.
도 1에 도시된 바와 같이, 비디오 코딩 시스템 (10) 은 소스 디바이스 (12) 와 목적지 디바이스 (14) 를 구비한다. 소스 디바이스 (12) 는 인코딩된 비디오 데이터를 생성한다. 따라서, 소스 디바이스 (12) 는 비디오 인코딩 디바이스 또는 비디오 인코딩 장치라고 지칭될 수도 있다. 목적지 디바이스 (14) 는 소스 디바이스 (12) 에 의해 생성된 인코딩된 비디오 데이터를 디코딩할 수도 있다. 따라서, 목적지 디바이스 (14) 는 비디오 디코딩 디바이스 또는 비디오 디코딩 장치라고 지칭될 수도 있다. 소스 디바이스 (12) 와 목적지 디바이스 (14) 는 비디오 코딩 디바이스들 또는 비디오 코딩 장치들의 예들일 수도 있다.
소스 디바이스 (12) 와 목적지 디바이스 (14) 는 데스크톱 컴퓨터들, 모바일 컴퓨팅 디바이스들, 노트북 (예컨대, 랩톱) 컴퓨터들, 태블릿 컴퓨터들, 셋톱 박스들, 이른바 "스마트" 폰들과 같은 전화기 핸드셋들, 텔레비전들, 카메라들, 디스플레이 디바이스들, 디지털 미디어 플레이어들, 비디오 게이밍 콘솔들, 차량내 컴퓨터 등을 포함한 다양한 범위의 디바이스들을 포함할 수도 있다.
목적지 디바이스 (14) 는 소스 디바이스 (12) 로부터의 인코딩된 비디오 데이터를 채널 (16) 을 통해 수신할 수도 있다. 채널 (16) 은 소스 디바이스 (12) 로부터 목적지 디바이스 (14) 로 인코딩된 비디오 데이터를 이동시킬 수 있는 하나 이상의 매체들 또는 디바이스들을 포함할 수도 있다. 하나의 예에서, 채널 (16) 은 소스 디바이스 (12) 가 인코딩된 비디오 데이터를 목적지 디바이스 (14) 로 직접 실시간으로 송신하는 것을 가능하게 하는 하나 이상의 통신 매체들을 포함할 수도 있다. 이 예에서, 소스 디바이스 (12) 는 인코딩된 비디오 데이터를 통신 표준, 이를테면 무선 통신 프로토콜에 따라 변조할 수도 있고, 변조된 비디오 데이터를 목적지 디바이스 (14) 로 송신할 수도 있다. 하나 이상의 통신 매체들은 무선 및/또는 유선 통신 매체들, 이를테면 무선 주파수 (RF) 스펙트럼 또는 하나 이상의 물리적 송신 라인들을 포함할 수도 있다. 하나 이상의 통신 매체들은 패킷 기반 네트워크, 이를테면 로컬 영역 네트워크, 광역 네트워크, 또는 글로벌 네트워크 (예컨대, 인터넷) 의 일부를 형성할 수도 있다. 하나 이상의 통신 매체들은 라우터들, 스위치들, 기지국들, 또는 소스 디바이스 (12) 로부터 목적지 디바이스 (14) 로의 통신을 용이하게 하는 다른 장비를 포함할 수도 있다.
다른 예에서, 채널 (16) 은 소스 디바이스 (12) 에 의해 생성된 인코딩된 비디오 데이터를 저장하는 저장 매체를 포함할 수도 있다. 이 예에서, 목적지 디바이스 (14) 는 예컨대, 디스크 액세스 또는 카드 액세스를 통해 저장 매체에 액세스할 수도 있다. 저장 매체는 블루 레이 디스크들, DVD들, CD-ROM들, 플래시 메모리, 또는 인코딩된 비디오 데이터를 저장하기 위한 다른 적합한 디지털 저장 매체들과 같은 다양한 국소적으로 액세스되는 데이터 저장 매체들을 포함할 수도 있다.
추가의 예에서, 채널 (16) 은 소스 디바이스 (12) 에 의해 생성된 인코딩된 비디오 데이터를 저장하는 파일 서버 또는 다른 중간 저장 디바이스를 포함할 수도 있다. 이 예에서, 목적지 디바이스 (14) 는 파일 서버 또는 다른 중간 저장 디바이스에 저장된 인코딩된 비디오 데이터를 스트리밍 또는 다운로드를 통해 액세스할 수도 있다. 파일 서버는 인코딩된 비디오 데이터를 저장하고 그 인코딩된 비디오 데이터를 목적지 디바이스 (14) 로 송신할 수 있는 유형의 서버일 수도 있다. 예의 파일 서버들은 웹 서버들 (예컨대, 웹사이트용), 파일 전송 프로토콜 (FTP) 서버들, 네트워크 부속 스토리지 (network attached storage; NAS) 디바이스들, 및 로컬 디스크 드라이브들을 포함한다.
목적지 디바이스 (14) 는 표준 데이터 접속, 이를테면 인터넷 접속을 통해, 인코딩된 비디오 데이터에 액세스할 수도 있다. 예의 유형들의 데이터 접속들은 파일 서버 상에 저장된 인코딩된 비디오 데이터에 액세스하기에 적합한 무선 채널들 (예컨대, Wi-Fi 접속들), 유선 접속들 (예컨대, 디지털 가입자 회선 (digital subscriber line; DSL), 케이블 모뎀 등), 또는 양쪽 모두의 조합들을 포함할 수도 있다. 파일 서버로부터의 인코딩된 비디오 데이터의 송신은 스트리밍 송신, 다운로드 송신, 또는 양쪽 모두의 조합일 수도 있다.
본 개시물의 기법들은 무선 애플리케이션들 또는 설정 (setting) 들로 제한되지 않는다. 그 기법들은, 다양한 멀티미디어 애플리케이션들, 이를테면 OTA (over-the-air) 텔레비전 브로드캐스트들, 케이블 텔레비전 송신들, 위성 텔레비전 송신들, 예컨대, 인터넷을 통한 스트리밍 비디오 송신들 중 임의의 것의 지원 하의 비디오 코딩, 데이터 저장 매체 상의 저장을 위한 비디오 데이터의 인코딩, 데이터 저장 매체 상에 저장된 비디오 데이터의 디코딩, 또는 다른 애플리케이션들에 적용될 수도 있다. 일부 예들에서, 비디오 코딩 시스템 (10) 은 비디오 스트리밍, 비디오 플레이백, 비디오 브로드캐스팅, 및/또는 화상 통화와 같은 애플리케이션들을 지원하기 위해 단방향 또는 양방향 비디오 송신을 지원하도록 구성될 수도 있다.
도 1은 단지 일 예이고 본 개시물의 기법들은 인코딩 및 디코딩 디바이스들 간에 임의의 데이터 통신을 반드시 포함하지는 않는 비디오 코딩 설정들 (예컨대, 비디오 인코딩 또는 비디오 디코딩) 에 적용될 수도 있다. 다른 예들에서, 데이터는 로컬 메모리로부터 취출되며, 네트워크를 통해 스트리밍되는 등등이 된다. 비디오 인코딩 디바이스가 데이터를 인코딩하고 메모리에 저장할 수도 있으며, 그리고/또는 비디오 디코딩 디바이스가 메모리로부터 데이터를 취출하고 디코딩할 수도 있다. 많은 예들에서, 인코딩 및 디코딩은, 서로 통신하지 않지만 단순히 데이터를 메모리에 인코딩하고 및/또는 메모리로부터 데이터를 취출하고 디코딩하는 디바이스들에 의해 수행된다.
도 1의 예에서, 소스 디바이스 (12) 는 비디오 소스 (18), 비디오 인코더 (20), 및 출력 인터페이스 (22) 를 구비한다. 일부 예들에서, 출력 인터페이스 (22) 는 변조기/복조기 (모뎀) 및/또는 송신기를 구비할 수도 있다. 비디오 소스 (18) 는 비디오 캡처 디바이스, 예컨대, 비디오 카메라, 이전에 캡처된 비디오 데이터를 포함한 비디오 아카이브, 비디오 콘텐츠 제공자로부터 비디오 데이터를 수신하는 비디오 피드 인터페이스, 및/또는 비디오 데이터를 생성하는 컴퓨터 그래픽 시스템, 또는 비디오 데이터의 이러한 소스들의 조합을 포함할 수도 있다.
비디오 인코더 (20) 는 비디오 소스 (18) 로부터의 비디오 데이터를 인코딩할 수도 있다. 일부 예들에서, 소스 디바이스 (12) 는 출력 인터페이스 (22) 를 통해 목적지 디바이스 (14) 로 인코딩된 비디오 데이터를 직접 송신할 수도 있다. 다른 예들에서, 인코딩된 비디오 데이터는 또한 디코딩 및/또는 플레이백을 위한 목적지 디바이스 (14) 에 의한 나중의 액세스를 위해 저장 매체 또는 파일 서버 상에 저장될 수도 있다.
도 1의 예에서, 목적지 디바이스 (14) 는 입력 인터페이스 (26), 비디오 디코더 (30), 및 디스플레이 디바이스 (32) 를 구비한다. 일부 예들에서, 입력 인터페이스 (28) 는 수신기 및/또는 모뎀을 구비한다. 입력 인터페이스 (28) 는 채널 (16) 을 통해 인코딩된 비디오 데이터를 수신할 수도 있다. 비디오 디코더 (30) 는 비디오 데이터를 디코딩할 수도 있다. 디스플레이 디바이스 (32) 는 디코딩된 비디오 데이터를 디스플레이할 수도 있다. 디스플레이 디바이스 (32) 는 목적지 디바이스 (14) 와 통합되거나 또는 그것 외부에 있을 수도 있다. 디스플레이 디바이스 (32) 는 액정 디스플레이 (LCD), 플라즈마 디스플레이, 유기 발광 다이오드 (OLED) 디스플레이, 또는 다른 유형의 디스플레이 디바이스와 같은 다양한 디스플레이 디바이스들을 포함할 수도 있다.
비디오 인코더 (20) 와 비디오 디코더 (30) 각각은 다양한 적합한 회로, 이를테면 하나 이상의 마이크로프로세서들, 디지털 신호 프로세서들 (DSP들), 주문형 집적회로들 (ASIC들), 필드 프로그램가능 게이트 어레이들 (FPGA들), 개별 로직, 하드웨어, 또는 그것들의 임의의 조합 중 임의의 것으로서 구현될 수도 있다. 그 기법들이 부분적으로 소프트웨어로 구현되면, 디바이스는 적합한 비일시적 컴퓨터 판독가능 저장 매체 내에 소프트웨어에 대한 명령을 저장할 수도 있고 하나 이상의 프로세서들을 사용하여 하드웨어에서 그 명령들을 실행하여 본 개시물의 기법들을 수행할 수도 있다. 전술한 바 (하드웨어, 소프트웨어, 하드웨어 및 소프트웨어의 조합 등을 포함) 의 임의의 것은 하나 이상의 프로세서들이라고 간주될 수도 있다. 비디오 인코더 (20) 및 비디오 디코더 (30) 의 각각은 하나 이상의 인코더들 또는 디코더들 내에 구비될 수도 있고, 그것들 중 어느 하나는 결합형 인코더/디코더 (CODEC) 의 일부로서 개별 디바이스 내에 통합될 수도 있다.
본 개시물은 다른 디바이스, 이를테면 비디오 디코더 (30) 에 특정한 정보를 "시그널링하는" 비디오 인코더 (20) 에 일반적으로 관련이 있다. 용어 "시그널링"은 일반적으로 압축된 비디오 데이터를 디코딩하는데 사용되는 신택스 엘리먼트들 및/또는 다른 데이터의 통신을 말할 수도 있다. 이러한 통신은 실시간 또는 거의 실시간으로 일어날 수도 있다. 대안으로, 이러한 통신은, 인코딩 시에 신택스 엘리먼트들을 인코딩된 비트스트림으로 컴퓨터 판독가능 저장 매체에 저장하고 그 신택스 엘리먼트들이 이 매체에 저장된 후의 임의의 시간에 디코딩 디바이스에 의해 취출될 수도 있는 경우에 일어날 바와 같이 시간 (span of time) 에 걸쳐 일어날 수도 있다.
일부 예들에서, 비디오 인코더 (20) 와 비디오 디코더 (30) 는, 국제표준화기구 (ISO) /IEC MPEG-4 비주얼 그리고 SVC (Scalable Video Coding) 확장본, MVC (Multiview Video Coding) 확장본, MVC 기반 3차원 비디오 (3DV) 확장본을 포함한 ITU-T H.264 (또한 ISO/IEC MPEG-4 AVC로 알려짐) 와 같은 비디오 압축 표준에 따라 동작한다. 일부 경우들에서, H.264/AVC의 MVC 기반 3DV 확장본을 준수하는 임의의 비트스트림은 H.264/AVC의 MVC 확장본을 따르는 서브-비트스트림을 항상 포함한다. 더욱이, 비디오 인코더 (20) 와 비디오 디코더 (30) 는 현재 개발 중인 H.264/AVC에 대한 3DV 코딩 확장본 (즉, AVC 기반 3DV) 에 따라 동작할 수도 있다. 다른 예들에서, 비디오 인코더 (20) 와 비디오 디코더 (30) 는 국제 전기통신 연합 전기통신 표준화 부문 (ITU-T) H.261, 국제 표준화 기구 (ISO) /국제 전기 표준 회의 (IEC) 동 화상 전문가 그룹 (MPEG) -1 비주얼, ITU-T H.262 또는 ISO/IEC MPEG-2 비주얼, 및 ITU-T H.264, ISO/IEC 비주얼에 따라 동작할 수도 있다.
다른 예들에서, 비디오 인코더 (20) 와 비디오 인코더 (30) 는, ITU-T 비디오 코딩 전문가 그룹 (VCEG) 및 ISO/IEC 동 화상 전문가 그룹 (MPEG) 의 JCT-VC (Joint Collaboration Team on Video Coding) 에 의해 개발된 고 효율 비디오 코딩 (HEVC) 에 따라 동작할 수도 있다. "HEVC 규격 초안 8"이라고 지칭되는 HEVC 표준의 초안이, 『Bross et al., "High Efficiency Video Coding (HEVC) text specification draft 8," Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 10th Meeting, Stockholm, Sweden, July 2012』에 기재되어 있으며, 이는 2013년 9월 3일 현재, http://phenix.int-evry.fr/jct/doc_end_user/documents/10_Stockholm/wg11/JCTVC-J1003-v8.zip으로부터 입수가능하다. 더욱이, 비디오 인코더 (20) 와 비디오 디코더 (30) 는 현재 개발 중인 HEVC에 대한 스케일러블 비디오 코딩, 멀티-뷰 코딩, 및 3DV 확장본들에 따라 동작할 수도 있다. HEVC의 스케일러블 비디오 코딩 확장본은 SHEVC라고 지칭될 수도 있다. HEVC의 3DV 확장본은 HEVC 기반 3DV 또는 3DV-HEVC라고 지칭될 수도 있다.
HEVC 및 다른 비디오 코딩 사양들에서, 비디오 시퀀스가 일련의 화상들을 통상 포함한다. 화상들은 "프레임들"이라고 또한 지칭될 수도 있다. 화상이, SL, SCb 및 SCr로 표시되는 3 개의 샘플 어레이들을 포함할 수도 있다. SL은 루마 샘플들의 2차원 어레이 (즉, 블록) 이다. SCb는 Cb 색차 샘플들의 2차원 어레이이다. SCr은 Cr 색차 샘플들의 2차원 어레이이다. 색차 샘플들은 본원에서 "크로마" 샘플들이라고 또한 지칭될 수도 있다. 다른 경우들에서, 화상이 모노크롬일 수도 있고 루마 샘플들의 어레이만을 포함할 수도 있다.
화상의 인코딩된 표현을 생성하기 위해, 비디오 인코더 (20) 는 코딩 트리 유닛들 (CTU들) 의 세트를 생성할 수도 있다. CTU들의 각각은, 루마 샘플들의 코딩 트리 블록, 크로마 샘플들의 2 개의 대응 코딩 트리 블록들, 및 코딩 트리 블록들의 샘플들을 코딩하는데 사용된 신택스 구조들을 포함할 수도 있다. 모노크롬 화상들 또는 세 개의 별개의 컬러 평면들을 갖는 화상들에서, CTU가 단일 코딩 트리 블록과 그 코딩 트리 블록의 샘플들을 코딩하는데 사용된 신택스 구조들을 포함할 수도 있다. 코딩 트리 블록이 샘플들의 NxN 블록일 수도 있다. CTU가 "트리 블록" 또는 "최대 코딩 유닛 (largest coding unit; LCU)" 이라고 또한 지칭될 수도 있다. HEVC의 CTU들은 다른 표준들, 이를테면 H.264/AVC의 매크로블록들과 대체로 유사할 수도 있다. 그러나, CTU가 특정 사이즈로 반드시 제한되는 것은 아니고 하나 이상의 코딩 유닛들 (CU들) 을 포함할 수도 있다. 슬라이스가 래스터 스캔 순서에서 연속하여 순서화된 정수 수의 CTU들을 포함할 수도 있다.
코딩된 CTU를 생성하기 위해, 비디오 인코더 (20) 는 CTU의 코딩 트리 블록들에 대해 쿼드트리 구획화를 재귀적으로 수행하여 코딩 트리 블록들을 코딩 블록들로 나눌 수도 있으며, 그래서 그 이름이 "코딩 트리 유닛들"이다. 코딩 블록이 샘플들의 N×N 블록이다. CU가, 루마 샘플 어레이, Cb 샘플 어레이 및 Cr 샘플 어레이를 갖는 화상의 루마 샘플들의 코딩 블록 및 크로마 샘플들의 2 개의 대응 코딩 블록들과, 그리고 그 코딩 블록들의 샘플들을 코딩하는데 사용된 신택스 구조들을 포함할 수도 있다. 모노크롬 화상들 또는 세 개의 별개의 컬러 평면들을 갖는 화상들에서, CU가 단일 코딩 블록과 그 코딩 블록의 샘플들을 코딩하는데 사용된 신택스 구조들을 포함할 수도 있다.
비디오 인코더 (20) 는 CU의 코딩 블록을 하나 이상의 예측 블록들로 구획할 수도 있다. 예측 블록이 동일한 예측이 적용되는 샘플들의 직사각형 (즉, 정사각형이거나 또는 정사각형이 아닌) 블록일 수도 있다. CU의 예측 유닛 (PU) 이 루마 샘플들의 예측 블록, 크로마 샘플들의 2 개의 대응하는 예측 블록들, 및 그 예측 블록 샘플들을 예측하는데 사용된 신택스 구조들을 포함할 수도 있다. 모노크롬 화상들 또는 세 개의 별개의 컬러 평면들을 갖는 화상들에서, PU가 단일 예측 블록과 그 예측 블록을 예측하는데 사용된 신택스 구조들을 포함할 수도 있다. 비디오 인코더 (20) 는 CU의 각각의 PU의 루마, Cb 및 Cr 예측 블록들에 대한 예측 루마, Cb 및 Cr 블록들을 생성할 수도 있다.
비디오 인코더 (20) 는 PU에 대한 예측 블록들을 생성하기 위해 인트라 예측 또는 인터 예측을 사용할 수도 있다. 비디오 인코더 (20) 가 PU의 예측 블록들을 생성하기 위해 인트라 예측을 사용하면, 비디오 인코더 (20) 는 PU에 연관된 화상의 디코딩된 샘플들에 기초하여 PU의 예측 블록들을 생성할 수도 있다. 본 개시물에서, "에 기초하여"라는 어구는 "에 적어도 부분적으로 기초하여"를 나타낼 수도 있다. 비디오 인코더 (20) 가 PU의 예측 블록들을 생성하기 위해 인터 예측을 사용하면, 비디오 인코더 (20) 는 PU에 연관된 화상 이외의 하나 이상의 화상들의 디코딩된 샘플들에 기초하여 PU의 예측 블록들을 생성할 수도 있다.
인터 예측을 지원하기 위해, 비디오 인코더 (20) 는 하나 이상의 참조 화상 리스트들을 생성할 수도 있다. 이들 참조 화상 리스트들은 RefPicList0 및 RefPicList1이라고 지칭될 수도 있다. 일부 예들에서, 비디오 인코더 (20) 는 상이한 화상들 또는 화상들의 상이한 슬라이스들에 대해 상이한 참조 화상 리스트들을 생성할 수도 있다. 따라서, 상이한 화상들 및/또는 슬라이스들의 상이한 PU들은 RefPicList0 및 RefPicList1의 상이한 버전들에 연관될 수도 있다.
더욱이, 비디오 인코더 (20) 가 PU의 예측 블록을 생성하기 위해 인터 예측을 사용하는 경우, 비디오 인코더 (20) 는 PU에 대한 모션 정보를 시그널링할 수도 있다. 그 모션 정보는 PU에 대한 참조 인덱스와 PU에 대한 모션 벡터를 포함할 수도 있다. PU에 대한 참조 인덱스는 참조 화상의, PU에 연관된 참조 화상 리스트들 중 하나의 참조 화상 리스트 내에서의, 포지션을 나타낼 수도 있다. PU에 대한 모션 벡터는 PU의 예측 블록과 참조 화상에서의 참조 로케이션 사이의 공간적 변위를 나타낼 수도 있다. 비디오 인코더 (20) 는 참조 로케이션에 연관된 참조 화상의 샘플들을 사용하여 PU에 대한 예측 블록을 생성할 수도 있다. PU가 두 개의 참조 화상들에 연관될 수도 있기 때문에, PU는 두 개의 참조 인덱스들과 두 개의 모션 벡터들을 가질 수도 있다. 따라서, PU가 RefPicList0 참조 인덱스와 RefPicList1 참조 인덱스를 가질 수도 있다. PU의 RefPicList0 참조 인덱스는 PU의 RefPicList0의 버전에서의 참조 화상을 나타낸다. PU의 RefPicList1 참조 인덱스는 PU의 RefPicList1의 버전에서의 참조 화상을 나타낸다. 마찬가지로, PU는 RefPicList0 모션 벡터와 RefPicList1 모션 벡터를 가질 수도 있다. PU의 RefPicList0 모션 벡터는 참조 화상의 참조 로케이션을 PU의 RefPicList0의 버전으로 나타낼 수도 있다. PU의 RefPicList1 모션 벡터는 참조 화상의 참조 로케이션을 PU의 RefPicList1의 버전으로 나타낼 수도 있다.
비디오 인코더 (20) 는 PU의 참조 인덱스들과 모션 벡터들을 비트스트림으로 시그널링할 수도 있다. 다르게 말하면, 비디오 인코더 (20) 는, 비트스트림에, PU의 참조 인덱스들 및 모션 벡터들을 나타내는 데이터를 포함시킬 수도 있다. 비디오 디코더 (30) 는 PU의 RefPicList0 및/또는 RefPicList1의 버전들을 복원할 수도 있고, PU의 참조 인덱스들 및 모션 벡터들을 사용하여 PU에 대한 하나 이상의 예측 블록들을 결정할 수도 있다. 비디오 디코더 (30) 는 샘플들을 디코딩하기 위해, 잔여 데이터와 함께 PU에 대한 예측 블록들을 사용할 수도 있다.
비디오 인코더 (20) 가 CU의 하나 이상의 PU들에 대한 예측 루마 블록들을 생성한 후, 비디오 인코더 (20) 는 그 CU에 대한 루마 잔여 블록을 생성할 수도 있다. CU의 루마 잔여 블록에서의 각각의 샘플은 CU의 예측 루마 블록들 중 하나의 예측 루마 블록에서의 루마 샘플 및 CU의 원래의 루마 코딩 블록에서의 대응하는 샘플 사이의 차이를 나타낸다. 덧붙여서, 비디오 인코더 (20) 는 CU에 대한 Cb 잔여 블록을 생성할 수도 있다. CU의 Cb 잔여 블록에서의 각각의 샘플은 CU의 예측 Cb 블록들 중 하나의 예측 Cb 블록에서의 Cb 샘플 및 CU의 원래의 Cb 코딩 블록에서의 대응하는 샘플 사이의 차이를 나타낼 수도 있다. 비디오 인코더 (20) 는 CU에 대한 Cr 잔여 블록을 또한 생성할 수도 있다. CU의 Cr 잔여 블록에서의 각각의 샘플은 CU의 예측 Cr 블록들 중 하나의 예측 Cr 블록에서의 Cr 샘플 및 CU의 원래의 Cr 코딩 블록에서의 대응하는 샘플 사이의 차이를 나타낼 수도 있다.
더욱이, 비디오 인코더 (20) 는 쿼드트리 구획화를 사용하여 CU의 루마, Cb 및 Cr 잔여 블록들을 하나 이상의 루마, Cb 및 Cr 변환 블록들로 분해할 수도 있다. 변환 블록이 동일한 변환이 적용되는 샘플들의 직사각형 (즉, 정사각형이거나 또는 정사각형이 아닌) 블록일 수도 있다. CU의 변환 유닛 (PU) 가 루마 샘플들의 변환 블록, 크로마 샘플들의 2 개의 대응하는 변환 블록들, 및 그 변환 블록 샘플들을 변환하는데 사용된 신택스 구조들을 포함할 수도 있다. 따라서, CU의 각각의 TU는 루마 변환 블록, Cb 변환 블록, 및 Cr 변환 블록에 연관될 수도 있다. TU에 연관된 루마 변환 블록은 CU의 루마 잔여 블록의 서브-블록일 수도 있다. Cb 변환 블록은 CU의 Cb 잔여 블록의 서브-블록일 수도 있다. Cr 변환 블록은 CU의 Cr 잔여 블록의 서브-블록일 수도 있다. 모노크롬 화상들 또는 세 개의 별개의 컬러 평면들을 갖는 화상들에서, TU가 단일 변환 블록과 그 변환 블록의 샘플들을 변환하는데 사용된 신택스 구조들을 포함할 수도 있다.
비디오 인코더 (20) 는 하나 이상의 변환들을 TU의 루마 변환 블록에 적용하여 TU에 대한 루마 계수 블록을 생성할 수도 있다. 계수 블록이 변환 계수들의 2차원 어레이일 수도 있다. 변환 계수가 스칼라 양일 수도 있다. 비디오 인코더 (20) 는 하나 이상의 변환들을 TU의 Cb 변환 블록에 적용하여 TU에 대한 Cb 계수 블록을 생성할 수도 있다. 비디오 인코더 (20) 는 하나 이상의 변환들을 TU의 Cr 변환 블록에 적용하여 TU에 대한 Cr 계수 블록을 생성할 수도 있다.
계수 블록 (예컨대, 루마 계수 블록, Cb 계수 블록 또는 Cr 계수 블록) 을 생성한 후, 비디오 인코더 (20) 는 그 계수 블록을 양자화할 수도 있다. 양자화는 일반적으로 변환 계수들이 그 변환 계수들을 표현하는데 사용된 데이터의 양을 가능한 한 줄이도록 양자화되어서, 추가의 압축을 제공하는 프로세스를 말한다. 비디오 인코더 (20) 가 계수 블록을 앙자화한 후, 비디오 인코더 (20) 는 양자화된 변환 계수들을 나타내는 신택스 엘리먼트들을 엔트로피 인코딩할 수도 있다. 예를 들어, 비디오 인코더 (20) 는 양자화된 변환 계수들을 나타내는 신택스 엘리먼트들에 대해 콘텍스트 적응 이진 산술 코딩 (CABAC) 을 수행할 수도 있다.
비디오 인코더 (20) 는 코딩된 화상들의 표현 및 연관된 데이터를 형성하는 비트들의 시퀀스를 포함하는 비트스트림을 출력할 수도 있다. 용어 "비트스트림"은 네트워크 추상 계층 (NAL) 유닛 스트림 (예컨대, NAL 유닛들의 시퀀스) 또는 바이트 스트림 (예컨대, HEVC 표준의 부록 B에 의해 특정된 바와 같은 시작 코드 접두부 (prefix) 들 및 NAL 유닛들을 포함하는 NAL 유닛 스트림의 캡슐화물) 중 어느 하나를 지칭하는데 사용되는 총칭적 용어일 수도 있다. NAL 유닛이, NAL 유닛에서의 데이터의 유형의 표시 (indication) 와 에뮬레이션 방지 바이트들로 필요한대로 점재된 (interspersed) RBSP (raw byte sequence payload) 의 형태로 당해 데이터를 포함하는 바이트들을 포함하는 신택스 구조이다. NAL 유닛들의 각각은 NAL 유닛 헤더를 포함할 수도 있고 RBSP를 캡슐화할 수도 있다. NAL 유닛 헤더는 NAL 유닛 유형 코드를 나타내는 신택스 엘리먼트를 포함할 수도 있다. NAL 유닛의 NAL 유닛 헤더에 의해 특정된 NAL 유닛 유형 코드는 NAL 유닛의 유형을 나타낸다. RBSP는 NAL 유닛 내에 캡슐화되는 정수 수의 바이트들을 포함하는 신택스 구조일 수도 있다. 일부 경우들에서, RBSP는 0 비트들을 포함한다.
상이한 유형들의 NAL 유닛들이 상이한 유형들의 RBSP들을 캡슐화할 수도 있다. 예를 들어, 제 1 유형의 NAL 유닛이 화상 파라미터 세트 (PPS) 에 대한 RBSP를 캡슐화할 수도 있으며, 제 2 유형의 NAL 유닛이 코딩된 슬라이스에 대한 RBSP를 캡슐화할 수도 있으며, 제 3 유형의 NAL 유닛이 SEI에 대한 RBSP를 캡슐화할 수도 있다는 등등이다. 비디오 코딩 데이터에 대한 RBSP들 (파라미터 세트들 및 SEI 메시지들에 대한 RBSP과는 대조적임) 을 캡슐화하는 NAL 유닛들은, 비디오 코딩 계층 (VCL) NAL 유닛들이라고 지칭될 수도 있다. 파라미터 세트들 (예컨대, VPS들, SPS들, PPS들 등) 을 포함하는 NAL 유닛들은 파라미터 세트 NAL 유닛들이라고 지칭될 수도 있다.
비디오 디코더 (30) 는 비디오 인코더 (20) 에 의해 생성된 비트스트림을 수신할 수도 있다. 덧붙여서, 비디오 디코더 (30) 는 비트스트림으로부터 신택스 엘리먼트들을 획득하기 위해 그 비트스트림을 파싱할 수도 있다. 비디오 디코더 (30) 는 비트스트림으로부터 획득된 신택스 엘리먼트들에 적어도 부분적으로 기초하여 비디오 데이터의 화상들을 복원할 수도 있다. 비디오 데이터를 복원하는 프로세스는 비디오 인코더 (20) 에 의해 수행된 프로세스에 일반적으로 역일 수도 있다. 예를 들면, 비디오 디코더 (30) 는 현재 CU의 PU들에 대한 예측 블록들을 결정하기 위해 그 PU들의 모션 벡터들을 사용할 수도 있다. 덧붙여서, 비디오 디코더 (30) 는 현재 CU의 TU들에 연관된 계수 블록들을 역 양자화할 수도 있다. 비디오 디코더 (30) 는 현재 CU의 TU들에 연관된 변환 블록들을 복원하기 위해 계수 블록들에 대해 역 변환들을 수행할 수도 있다. 비디오 디코더 (30) 는 현재 CU의 PU들에 대한 예측 블록들의 샘플들을 현재 CU의 TU들의 변환 블록들의 대응하는 샘플들에 가산함으로써 현재 CU의 코딩 블록들을 복원할 수도 있다. 화상의 각각의 CU에 대한 코딩 블록들을 복원함으로써, 비디오 디코더 (30) 는 그 화상을 복원할 수도 있다.
멀티-뷰 코딩에서는, 동일한 장면의 상이한 관점들로부터의 다수의 뷰들이 있을 수도 있다. 멀티-뷰 코딩의 맥락에서, 용어 "액세스 유닛"은 동일한 시간 인스턴스에 대응하는 화상들의 세트를 지칭하는데 사용될 수도 있다. 따라서, 비디오 데이터는 시간이 지남에 따라 발생하는 일련의 액세스 유닛들로서 개념화될 수도 있다. "뷰 성분"이 단일 액세스 유닛에서의 뷰의 코딩된 표현일 수도 있다. 본 개시물에서, "뷰"가 동일한 뷰 식별자에 연관된 뷰 성분들의 시퀀스를 지칭할 수도 있다. 일부 예들에서, 뷰 성분이 텍스처 뷰 성분 (즉, 텍스처 화상) 또는 심도 뷰 성분 (즉, 심도 화상) 일 수도 있다.
멀티-뷰 코딩은 뷰 간 예측을 지원한다. 뷰 간 예측은 HEVC에서 사용된 인터 예측과 유사하고, 동일한 신택스 엘리먼트들을 사용할 수도 있다. 그러나, 비디오 코더가 현재 비디오 유닛 (이를테면 PU) 에 대해 뷰 간 예측을 수행하는 경우, 비디오 인코더 (20) 는, 참조 화상으로서, 현재 비디오 유닛과 동일한 액세스 유닛에 있지만 상이한 뷰에 있는 화상을 사용할 수도 있다. 그 반면, 기존의 인터 예측은 상이한 액세스 유닛들에서의 화상들만을 참조 화상들로서 사용한다.
멀티-뷰 코딩에서, 비디오 디코더 (예컨대, 비디오 디코더 (30)) 가 뷰에서의 화상들을 임의의 다른 뷰에서의 화상들을 참조하지 않고 디코딩할 수 있다면, 그 뷰는 "기본 뷰 (base view)"라고 지칭될 수도 있다. 비기본 뷰 (non-base view) 들 중 하나의 비기본 뷰에서의 화상을 코딩하는 경우, 그 화상이 상이한 뷰에 있지만 비디오 코더가 현재 코딩하고 있는 화상과는 동일한 시간 인스턴스 (즉, 액세스 유닛) 내에 있다면, 비디오 코더 (예컨대, 비디오 인코더 (20) 또는 비디오 디코더 (30)) 는 그 화상을 참조 화상 리스트에 추가할 수도 있다. 다른 인터 예측 참조 화상들처럼, 비디오 코더는 뷰간 예측 참조 화상을 참조 화상 리스트의 임의의 포지션에 삽입할 수도 있다.
예를 들면, NAL 유닛들이 헤더들 (즉, NAL 유닛 헤더들) 과 패이로드들 (예컨대, RBSP들) 을 포함할 수도 있다. NAL 유닛 헤더들은 nuh_reserved_zero_6bits 신택스 엘리먼트들을 포함할 수도 있다. 상이한 값들을 특정하는 nuh_reserved_zero_6bit 신택스 엘리먼트들을 갖는 NAL 유닛들은 비트스트림의 상이한 "계층들"에 속한다. 따라서, 멀티-뷰 코딩, 3DV, 또는 SVC에서, NAL 유닛의 nuh_reserved_zero_6bits 신택스 엘리먼트는 NAL 유닛의 계층 식별자 (즉, 계층 ID) 를 특정한다. NAL 유닛이 멀티-뷰 코딩, 3DV 코딩, 또는 SVC에서의 기본 계층에 관련되면, 그 NAL 유닛의 nuh_reserved_zero_6bits 신택스 엘리먼트는 0과 동일하다. 비트스트림의 기본 계층에서의 데이터는 그 비트스트림의 임의의 다른 계층에서의 데이터에 대한 참조 없이 디코딩될 수도 있다. NAL 유닛이 멀티-뷰 코딩, 3DV, 또는 SVC에서의 기본 계층에 관련되지 않으면, nuh_reserved_zero_6bits 신택스 엘리먼트는 0이 아닌 값을 가질 수도 있다. 멀티-뷰 코딩 및 3DV 코딩에서, 비트스트림의 상이한 계층들은 상이한 뷰들에 대응할 수도 있다. SVC에서, 기본 계층 이외의 계층들은 "강화 계층 (enhancement layer) 들"이라고 지칭될 수도 있고 비트스트림으로부터 디코딩된 비디오 데이터의 시각적 품질을 향상시키는 정보를 제공할 수도 있다.
더욱이, 계층 내의 일부 화상들이 동일한 계층 내의 다른 화상들에 대한 참조 없이 디코딩될 수도 있다. 따라서, 계층의 특정한 화상들의 데이터를 캡슐화하는 NAL 유닛들은 그 계층에서의 다른 화상들의 디코딩능력 (decodability) 에 영향을 미치는 일 없이 비트스트림으로부터 제거될 수도 있다. 이러한 화상들의 데이터를 캡슐화하는 NAL 유닛들을 제거하는 것은 비트스트림의 프레임 레이트를 감소시킬 수도 있다. 계층 내의 다른 화상들에 대한 참조 없이 디코딩될 수도 있는 그 계층 내의 화상들의 서브세트가 "서브-계층" 또는 "시간적 서브-계층"이라고 지칭될 수도 있다.
NAL 유닛들은 temporal_id 신택스 엘리먼트들을 포함할 수도 있다. NAL 유닛의 temporal_id 신택스 엘리먼트는 NAL 유닛의 시간적 식별자를 특정한다. NAL 유닛의 시간적 식별자는 NAL 유닛이 연관되는 서브-계층을 식별한다. 따라서, 비트스트림의 각각의 서브-계층이 상이한 시간적 식별자와 연관될 수도 있다. 제 1 NAL 유닛의 시간적 식별자가 제 2 NAL 유닛의 시간적 식별자보다 작으면, 제 1 NAL 유닛에 의해 캡슐화된 데이터는 제 2 NAL 유닛에 의해 캡슐화된 데이터에 대한 참조 없이 디코딩될 수도 있다.
비트스트림이 복수의 동작 지점들과 연관될 수도 있다. 비트스트림의 각각의 동작 지점은 계층 식별자들의 세트 (즉, nuh_reserved_zero_6bits 값들의 세트) 및 시간적 식별자와 연관된다. 계층 식별자들의 세트는 OpLayerIdSet로서 표시될 수도 있고 시간적 식별자는 TemporalID로서 표시될 수도 있다. NAL 유닛의 계층 식별자가 동작 지점의 계층 식별자들의 세트 내에 있고 NAL 유닛의 시간적 식별자가 동작 지점의 시간적 식별자보다 작거나 같으면, NAL 유닛은 그 동작 지점과 연관된다. 동작 지점 표현이 동작 지점과 연관되는 비트스트림 서브 세트이다. 동작 지점 표현은 동작 지점과 연관되는 각각의 NAL 유닛을 포함할 수도 있다. 일부 예들에서, 동작 지점 표현은 동작 지점과 연관되지 않는 VCL NAL 유닛들을 포함하지 않는다.
미디어 인식 네트워크 엘리먼트 (media aware network element; MANE) 가 다수의 서브-계층들로 인코딩되는 HEVC 비트스트림에 비트스트림 솎음 (thinning) 을 적용할 수도 있다. 비트스트림에서의 임의의 포인트에서, MANE가, 더 낮은 서브-계층들 (즉, 더 낮은 시간적 식별자들에 연관된 서브-계층들) 에서의 화상들이 여전히 디코딩가능하다는 사실에 기초하여 더 높은 서브-계층들 (즉, 더 높은 시간적 식별자들에 연관된 서브-계층들) 의 NAL 유닛들을 제거하는 것을 시작할 수 있는데, 더 낮은 서브-계층들에서의 화상들에 대한 디코딩 프로세스가 더 높은 서브-계층들의 NAL 유닛들에 의존하지 않기 때문이다. 특정한 값보다 높은 시간적 식별자들을 갖는 모든 NAL 유닛들을 제거하는 액션은 시간적 다운-스위칭이라고 지칭될 수 있다. 시간적 다운-스위칭은 항상 가능할 수도 있다.
용어 "시간적 업-스위칭"은 당해 포인트까지 포워딩되지 않은 특정한 서브-계층의 NAL 유닛들을 포워딩하는 것을 시작하는 액션을 지칭할 수도 있다. 시간적 업-스위칭은 스위치되는 계층에서의 화상들이 스위치가 수행되었던 비트스트림에서의 포인트 전의 동일한 서브-계층에서의 임의의 화상에 의존하지 않아야만 가능할 수도 있다. 따라서, 용어 "시간적 서브-계층 스위칭 포인트"는, 화상과 동일한 서브-계층에 있고 디코딩 순서에서 그 화상에 선행하는 임의의 다른 화상에 대해, 의존성을 가지지 않는 화상을 지칭할 수도 있다.
H.264/AVC 비디오 코딩 표준의 스케일러블 비디오 코딩 확장본 (즉, H.264/SVC) 에서, 시간적 서브-계층 스위칭 포인트들은 SPS들에서의 temporal_id_nesting_flag 신택스 엘리먼트들을 통해 나타내어질 수 있다. 예를 들면, 특정 CVS에 적용가능한 SPS에서의 temporal_id_nesting_flag 신택스 엘리먼트가 1과 동일하면, 0보다 큰 시간적 식별자들을 갖는 CVS에서의 모든 화상들은 시간적 계층 스위칭 포인트들일 수도 있다. 더욱이, H.264/SVC에서, 시간적 레벨 스위칭 포인트 SEI 메시지들은 시간적 서브-계층 스위칭 포인트들을 나타낼 수도 있다. 시간적 레벨 스위칭 포인트 SEI 메시지들이 시간적 서브-계층 스위칭 포인트들을 나타내는 일부 예들에서, 시간적 레벨 스위칭 포인트 SEI 메시지가 시간적 계층 M이 스위치 포인트에서 시간적 계층 M + 1로 스위치 업하기 위하여 그 스위치 포인트 전에 디코딩되어야 하는 시간의 길이에 관한 정보를 포함할 수도 있다.
HEVC에서는, H.264/SVC에서처럼, SPS가 sps_temporal_id_nesting_flag 신택스 엘리먼트를 포함할 수도 있다. sps_temporal_id_nesting_flag 신택스 엘리먼트가 1과 동일한 값을 갖는 경우, 0보다 큰 시간적 식별자들을 갖는 모든 화상들은 서브-계층 스위칭 포인트들이다. HEVC에서는, 서브-계층 스위칭 포인트들에 연관된 두 개의 화상 유형들, 즉 시간적 서브-계층 액세스 (temporal sub-layer access; TSA) 화상 유형 및 계단식 시간적 서브-계층 액세스 (step-wise temporal sub-layer access; STSA) 화상 유형이 있을 수도 있다. TSA 및 STSA 화상 유형들은 시간적 서브-계층 스위칭 포인트들을 나타내는데 사용될 수도 있다.
TSA 화상과 디코딩 순서에서 TSA 화상을 뒤따르는 화상들이 인터 예측 참조를 위해 TSA 화상의 TemporalId보다 크거나 같은 TemporalId를 갖는 화상들을 사용하지 않는다. TSA 화상이, 바로 하위의 (immediately lower) 서브-계층으로부터 TSA 화상을 포함하는 서브-계층 또는 임의의 더 높은 서브-계층으로의 업-스위칭을 TSA 화상에서 가능하게 한다. 일부 예들에서, 모든 TSA 화상들은 0보다 큰 시간적 식별자들을 갖는다.
STSA 화상이 인터 예측 참조를 위해 STSA 화상과 동일한 TemporalId를 갖는 화상들을 사용하지 않는다. STSA 화상과 동일한 시간적 식별자를 갖는 디코딩 순서에서의 STSA 화상을 뒤따르는 화상들은 인터 예측 참조를 위해 STSA 화상과 동일한 시간적 식별자를 갖는 디코딩 순서에서의 STSA 화상 전의 화상들을 사용하지 않는다. STSA 화상이, 바로 하위의 서브-계층으로부터 STSA 화상을 포함하는 서브-계층으로의 업-스위칭을 STSA 화상에서 가능하게 한다. 일부 예들에서, 모든 STSA 화상들은 0보다 큰 시간적 식별자들을 갖는다. 따라서, TSA 화상과는 대조적으로, STSA 화상이 임의의 더 높은 서브-계층으로의 업-스위칭을 반드시 가능하게 하지는 않는다. 오히려, STSA 화상이 STSA 화상을 포함하는 서브-계층으로의 업-스위칭만을 가능하게 할 수도 있다.
HEVC는 H.264/AVC로부터의 파라미터 세트들의 개념을 상속한다. 그러나, HEVC는 H.264/AVC의 파라미터들 세트들에 여러 수정들 및 추가들을 제공한다. HEVC에서 제공된 H.264/AVC의 파라미터 세트들에 대한 수정들 및 추가들은 세 개의 그룹들로 분류될 수 있다: (1) H.264/AVC와 비교할 때 HEVC의 상이한 코딩 도구들에 의해 불가피하게 이루어진 추가들 및 수정, (2) H.264/AVC를 이용한 운영상의 경험으로부터 생긴 추가들 및 수정들, 그리고 (3) HEVC에서 도입된 비디오 파라미터 세트 (VPS).
위에서 나타낸 바와 같이, 화상이 다수의 세그먼트들 (예컨대, 슬라이스들) 로 구획될 수도 있다. 화상을 다수의 세그먼트들로 구획하는 것과 세그먼트들을 그것들 자신의 트랜스포트 유닛 (transport unit) 들로 전송하는 것은 최대 전송 유닛 (maximum transfer unit; MTU) 사이즈 매칭에 대해 바람직할 수도 있다. 슬라이스들의 각각은 트랜스포트 유닛 (예컨대, 패킷) 으로 전송될 수도 있다. 일부 비디오 코딩 사양들에서, 화상의 제 1 트랜스포트 유닛은 그 화상의 제 1 세그먼트를 위한 데이터와 또한 그 화상의 화상 헤더를 포함할 수도 있다. 화상 헤더가 화상의 모든 세그먼트들을 디코딩하는데 필요할 수도 있기 때문에, 심지어 그 화상의 다른 세그먼트들을 포함하는 트랜스포트 유닛들이 손실되지 않더라도, 그 화상의 제 1 트랜스포트 유닛의 손실은 비디오 디코더가 그 화상의 임의의 세그먼트와, 때때로 뒤따르는 화상들의 세그먼트들을 올바르게 구축하는 것을 방해할 수도 있다. 더구나, 화상의 제 1 세그먼트를 포함하는 트랜스포트 유닛은 GOP (Group-of-Pictures) 헤더 및/또는 시퀀스 헤더를 포함할 수도 있다. 따라서, 화상의 제 1 세그먼트를 포함하는 트랜스포트 유닛의 손실은 비디오 디코더가 전체 GOP 또는 전체 시퀀스를 올바르게 디코딩하는 것을 방해할 수도 있다. 따라서, 화상이 다수의 세그먼트들 (예컨대, 슬라이스들) 로 구획되고 그들 세그먼트들이 그것들 자신의 트랜스포트 유닛 (예컨대, 실시간 프로토콜 (Real Time Protocol; RTP) 패킷) 로 전송되면, 시퀀스 헤더 또는 화상 헤더의 손실은 디코딩 프로세스에 상당한 영향을 미칠 수도 있다. 이 문제 때문에, 일부 디코더 구현예들은 화상의 화상 헤더를 포함하는 트랜스포트 유닛이 손실되었다면 화상의 수신된 트랜스포트 유닛들을 디코딩하는 것을 시도하지 않을 것이다.
파라미터 세트들은 시퀀스 헤더들 및 화상 헤더들의 손실들의 영향들에 응하여 H.264/AVC에서 도입되었다. 이 취약점 (vulnerability) 을 방지하기 위해, 트랜스포트 계층 기반 메커니즘들이 도입되었다. 예를 들어, RFC (Request for Comments) 2429에서 특정된, H.263에 대한 RTP 패이로드 포맷은, 인코더/패킷화기가 선택하는 만큼의 패킷들에서 화상 헤더의 중복 사본을 운반하는 것을 허용한다. H.264/AVC의 설계 동안, 화상 헤더의 취약점이, 전송 문제가 아니라, 비디오 코덱 자체의 구성적 문제이고, 그러므로 파라미터 세트 개념이 그 문제에 대한 해결책으로서 도입되었다는 것이 인식되었다. 파라미터 세트들은 비디오 비트스트림의 부분일 수 있거나 또는 다른 수단 (신뢰성 있는 채널을 사용한 대역 외 송신, 비디오 인코더 및 비디오 디코더에서의 하드 코딩 등을 포함) 을 통해 비디오 디코더에 의해 수신될 수 있다.
파라미터 세트가 슬라이스의 슬라이스 헤더로부터 직접적으로 또는 간접적으로 참조되는 식별 (identification) 을 포함할 수도 있다. 참조 프로세스는 "활성화"로서 알려져 있다. 따라서, 비디오 디코더 (30) 가 특정 슬라이스를 디코딩하는 경우, 특정 슬라이스의 슬라이스 헤더에서의 신택스 엘리먼트에 의해 직접적으로 또는 간접적으로 참조되는 파라미터 세트가 "활성화된 (activated)" 것이라고 말해진다. 파라미터 세트 유형에 의존하여, 활성화는 화상마다 또는 시퀀스마다 일어날 수도 있다. 참조를 통한 활성화의 개념은, 다른 이유들 중에서도, 비트스트림에서의 정보의 포지션 때문인 무조건적 활성화 (비디오 코덱의 다른 신택스 엘리먼트들에 대해 공통임) 가 파라미터 세트들의 대역 외 송신의 경우에 이용가능하지 않을 수도 있기 때문에 도입되었다.
더욱이, VPS는 다수의 계층들뿐만 아니라 서브-계층들에 적용가능한 정보를 전달하기 위해 HEVC에 도입되었다. H.264/AVC의 버전은 VPS에 맞먹는 파라미터 세트를 포함하지 않는다. H.264/AVC가 VPS에 맞먹는 파라미터 세트를 포함하지 않기 때문에, 능력 교환 및 세션 협상과 같은 목적들을 위한 계층화 구조의 복잡한 모델링이 요구될 수도 있다. H.264/AVC의 SVC 확장본에서, 확장성 정보 SEI 메시지가 VPS와 대략 동일한 콘텐츠를 제공할 수도 있지만, SEI 메시지인 그것의 특성에 의해, 동일한 정보의 대부분이 시퀀스 파라미터 세트들 (SPS들) 에서 반복된다. 일부 애플리케이션들에서, SPS들은 대역 외 송신되는 것을 또한 필요로 한다. 결과적으로, H.264/AVC에서의 VPS의 결여는, 대역 외 송신에서의 신뢰성을 보장하기 위해, 특히 재송신이 관여되는 경우, 증가된 초기 지연을 유발할 수도 있다. 파라미터 세트들의 대역 내 송신을 갖는 브로드캐스트 및 멀티캐스트의 경우들에서, 파라미터 세트들이 동조 (tuning in) 및 채널 스위칭을 위해 각각의 랜덤 액세스 포인트에서 반복될 것이 필요할 수도 있으므로 동일한 정보의 반복은 상당한 오버헤드가 될 수 있다. VPS는 이들 단점들을 해결하기 위해 뿐만 아니라 다층 코덱들의 깨끗하고 확장가능한 하이-레벨 설계를 가능하게 하기 위해 도입되었다.
비트스트림의 비디오 시퀀스가 다수의 계층들을 가질 수도 있다. 그 계층들은 동일한 또는 상이한 SPS들과 연관될 수도 있다. 그러나, 비디오 시퀀스의 각각의 계층은, 그 계층들이 동일한 SPS 또는 상이한 SPS들에 연관되는지의 여부에 무관하게, 동일한 VPS를 참조할 수도 있다. VPS는 다음을 포함하는 정보를 전달할 수도 있다:
(1) 다수의 계층들 또는 동작 지점들에 의해 공유된 공통 신택스 엘리먼트들. VPS에서의 다수의 계층들 또는 동작 지점들에 의해 공유된 공통 신택스 엘리먼트들을 전달하는 것은 이러한 신택스 엘리먼트들의 불필요한 중복들을 피할 수도 있다;
(2) 세션 협상을 위해 필요한 동작 지점들의 정보, 이를테면 프로파일 정보와 레벨 정보; 및
(3) 하나의 SPS에 속하지 않은 다른 동작 지점 특정 정보, 이를테면 계층들 또는 서브-계층들에 대한 가상 참조 디코더 (Hypothetical Reference Decoder; HRD) 파라미터들.
비디오 디코더 (30) 는 비트스트림으로부터 정보 (예컨대, 신택스 엘리먼트들) 를 추출하기 위해 그 비트스트림을 파싱할 수도 있다. 일부 예들에서, 각각의 동작 지점의 정보의 파싱은 비디오 디코더 (30) 가 엔트로피 코딩 (예컨대, CABAC, 콘텍스트-적응 가변 길이 코딩 (CAVLC), 골롬 (Golomb) 코딩 등) 을 수행하는 것을 필요로 하지 않는다. 따라서, 각각의 동작 지점의 정보의 파싱은 대부분의 네트워크 엘리먼트들에 대해 가벼운 것으로서 간주될 수도 있다.
HEVC에서, 각각의 유형의 파라미터 세트는 확장 메커니즘을 포함할 수도 있다. 파라미터 세트의 확장 메커니즘은, 하위 호환성 (backward compatibility) 을 파괴하는 일 없이 그리고 VPS 및/또는 SPS에서 운반된 프로파일/레벨 정보에 대한 파싱 의존성을 생성하는 일 없이, 파라미터 세트가 HEVC의 장래의 버전들 및 확장본들을 위해 연장되는 것을 허용할 수도 있다. 예를 들어, HEVC는 HEVC의 확장본들 (예컨대, SHEVC, MV-HEVC, 3D-HEVC, 등) 이 VPS들에서의 부가적인 신택스 엘리먼트들을 포함하는 것을 허용하는 메커니즘을 제공한다. 다르게 말하면, HEVC는 VPS 확장본들이 HEVC의 특정 확장본들에 특정된 부가적인 신택스 엘리먼트들을 포함하는 것을 허용한다. 다르게 말하면, HEVC 확장본들에서 특정된 VPS 확장본들은 기본 HEVC 사양에 대해 특정된 VPS에서의 그것들보다 많은 신택스 엘리먼트들을 포함할 수도 있다. VPS 확장본들에서의 신택스 엘리먼트들은 효율적인 파라미터 시그널링, 플렉시블 및 경량 세션 협상, 고급 비트스트림 적응 (예컨대, 3D-HEVC에서의 뷰 식별자들에 기초한 비트스트림 적응) 등을 제공할 수도 있다.
HEVC 규격 초안 8에 따르면, 일부 정보가 계층에 속한 VPS 및 SPS들 간에 중복된다. 이 중복은 HEVC 사양의 제 1 버전을 준수하는 비디오 디코더가 VPS NAL 유닛을 무시하는 것과 비트스트림을 디코딩하기 위해 요구된 이용가능한 모든 정보를 여전히 가지는 것을 허용할 수도 있다.
H.264/AVC 및 HEVC에서, SPS들은 CVS의 모든 슬라이스들에 적용되는 정보를 포함할 수도 있다. HEVC에서, CVS가, 순간적 디코딩 리프레시 (instantaneous decoding refresh; IDR) 화상, 또는 깨진 링크 액세스 (broken link access; BLA) 화상, 또는 비트스트림에서의 제 1 화상인 깨끗한 랜덤 액세스 (clean random access; CRA) 화상으로부터 시작하여, IDR 또는 BLA 화상이 아닌 모든 후속 화상들을 포함할 수도 있다. 다시 말하면, HEVC에서, CVS가, 비트스트림에서의 제 1 액세스 유닛인 CRA 액세스 유닛, IDR 액세스 유닛 또는 BLA 액세스 유닛과, 임의의 후속 IDR 또는 BLA 액세스 유닛 전까지를 포함하는 모든 후속 액세스 유닛들을 포함한 뒤따르는 0 이상의 비-IDR 및 비-BLA 액세스 유닛들로 디코딩 순서로 구성될 수도 있는 액세스 유닛들의 시퀀스를 포함할 수도 있다.
비트스트림이 하나 이상의 CVS들을 포함한다 (그리고 그것들로 구성될 수도 있다). SPS의 콘텐츠는 다음의 6 개의 카테고리들로 나누어질 수 있다:
(1) 자체-참조 (즉, SPS의 식별자);
(2) 디코더 동작 지점 관련 데이터 (예컨대, 프로파일 데이터, 레벨 데이터, 화상 사이즈 데이터, 넘버 서브-계층들 데이터, 등);
(3) 프로파일 내에서 이용가능한 특정 코딩 도구들, 특정 코딩 도구들에 연관된 코딩 도구 파라미터들을 인에이블하기 위한 플래그들 (또는 다른 신택스 엘리먼트들);
(4) 구조들의 유연성을 제한하는 정보 및 변환 계수 코딩의 유연성을 제한하는 정보;
(5) 시간적 확장성 제어 (H.264/SVC와 유사함); 및
(6) HRD 정보를 포함하는 시각적 유용성 정보 (Visual Usability Information; VUI).
HEVC PPS가 화상에서 화상으로 변할 수 있는 데이터를 포함할 수도 있다. HEVC PPS가 H.264/AVC PPS에 포함된 데이터에 대략 맞먹는 데이터를 포함할 수도 있다. 예를 들어, HEVC PPS들 및 H.264/AVC PPS들 모두는 다음을 포함할 수도 있다:
(1) 자체-참조 (예컨대, PPS의 식별자);
(2) 초기 화상 제어 정보, 이를테면 초기 양자화 파라미터 (QP), PPS를 참조하는 슬라이스들의 슬라이스 헤더들에서의 특정한 코딩 도구들 또는 제어 정보의 사용, 또는 그 존재를 나타내는 다수의 플래그들; 및
(3) 타일링 (tiling) 정보.
HEVC에서, 슬라이스 헤더가 슬라이스에서 슬라이스로 변할 수 있는 데이터를 포함할 수도 있다. 덧붙여서, 슬라이스 헤더가 특정 슬라이스 유형들 또는 특정 화상 유형들에 대해서만 상대적으로 작거나 또는 관련되는 화상 관련 데이터를 포함할 수도 있다. 슬라이스 헤더의 사이즈는, 특히 그 슬라이스 헤더가 명시적으로 시그널링되는 타일 엔트리 포인트 오프셋들 또는 파면 엔트리 포인트 오프셋들, 참조 화상 세트들, 예측 가중치들, 또는 참조 화상 리스트 수정들을 포함하는 경우, PPS의 사이즈보다 더 클 수도 있다. 슬라이스에 대한 슬라이스 헤더의 타일 엔트리 포인트 오프셋들은 특정 타일들에 연관된 데이터의, 슬라이스의 슬라이스 데이터 내에서의, 스타팅 포지션들을 나타낼 수도 있다. 대체로, 타일이, 타일의 코딩 트리 블록 래스터 스캔으로 연속하여 순서화되는, 하나의 열 및 하나의 행에서 함께 발생하는 정수 수의 코딩 트리 블록들이다. 행이 정수 수의 코딩 트리 블록들일 수도 있다. 열들은 화상의 상단 경계로부터 하단 경계까지 연장하는 수직 경계들에 의해 서로로부터 윤곽이 그려지고, 그 화상에서 좌측부터 우측으로 연속하여 순서화된다. 행들은 화상의 좌측 경계로부터 우측 경계까지 연장하는 수평 경계들에 의해 서로로부터 윤곽이 그려지고, 그 화상에서 상단부터 하단까지 연속하여 순서화된다. 열이 정수 수의 코딩 트리 블록들일 수도 있다. 슬라이스에 대한 슬라이스 헤더의 파면 엔트리 포인트 오프셋들은 특정 파면들에 연관된 데이터의, 슬라이스의 슬라이스 데이터 내에서의, 스타팅 포지션들을 나타낼 수도 있다. 타일들과 파면들은 본 개시물에서 각각 도 4 및 도 5에 관하여 다른 곳에서 설명된다.
HEVC에서의 파라미터 세트들의 활성화가 H.264/AVC에서의 파라미터 세트들의 활성화와 유사하다. HEVC에서, 슬라이스 헤더가 PPS에 대한 참조를 포함한다. PPS는, 결국, SPS에 대한 참조를 포함한다. SPS는 VPS에 대한 참조를 포함한다. 파라미터 세트들에 대한 하나의 공통 구현예 전략은 최대 사이즈들이 파라미터 세트 식별자들의 넘버링된 범위에 의해 간접적으로 특정되는 테이블들에서 주어진 유형 (예컨대, PPS, SPS, 및 VPS) 의 모든 파라미터 세트들을 유지하는 것이다. 이 구현예 전략 하에서, 파라미터 세트 활성화는 슬라이스 헤더에서의 정보에 기초하여 PPS 테이블들을 액세스하는 것, PPS 테이블들에서 발견된 정보를 관련 디코더 데이터 구조들 속으로 복사하는 것, 및 PPS에서의 참조를 관련 SPS에 대해 추종하는 것, 그리고 SPS에서의 참조를 관련 VPS에 대해 추종하는 것만큼 간단할 수 있다. 이들 동작들이 (최악의 경우 시나리오에서) 화상 당 오직 한 번만 수행되는 것을 필요로 할 수도 있으므로, 동작은 경량일 수도 있다. SPS가 버퍼링 기간 SEI 메시지에서 참조됨으로써 또한 활성화될 수도 있다.
마찬가지로, 파라미터 세트 NAL 유닛의 핸들링은, 파라미터 세트 NAL 유닛의 유형에 상관 없이, 또한 비교적 간단할 수도 있다. HEVC에서, 파라미터 세트 NAL 유닛들은 파싱 의존성들을 포함하지 않는다. 다르게 말하면, 파라미터 세트 NAL 유닛의 신택스 엘리먼트들은 임의의 다른 NAL 유닛에서의 신택스 엘리먼트들에 대한 참조 없이 획득될 수도 있다. 파라미터 세트 NAL 유닛들이 파싱 의존성들을 포함하지 않기 때문에, 파라미터 세트 NAL 유닛들은 자체 포함적이고 파싱을 위해 다른 NAL 유닛들로부터 도출된 콘텍스트를 필요로 하지 않는다. 비록 파라미터 세트 NAL 유닛들을 파싱하는 능력을 독립적으로 유지하는 것이 몇몇 더 많은 비트들을 요할 수도 있지만, 파라미터 세트 NAL 유닛들을 파싱하는 능력을 독립적으로 유지하는 것은 그 파라미터 세트들에 대해 그것들의 개별 테이블 엔트리들에서의 파라미터 세트들의 상대적으로 간단한 파싱 및 저장을 가능하게 할 수도 있다.
더욱이, HEVC 규격 초안 8은 액티브 파라미터 세트 SEI 메시지의 사양을 포함한다. 액티브 파라미터 세트 SEI 메시지는 액티브 VPS 및/또는 액티브 SPS를 나타내는 신택스 엘리먼트들을 포함할 수도 있다. 액티브 파라미터 세트 SEI 메시지는 슬라이스 헤더들, PPS들, SPS들, 및 VPS들에서의 파라미터 세트 식별자들에 기초하는 파라미터 세트들에 대한 활성화 프로세스를 무시 (override) 할 수도 있다.
비디오 프로세싱 디바이스 (예컨대, 비디오 인코더 (20), MANE, 등) 가 둘 이상의 비트스트림들을 스플라이싱할 수도 있다. 비트스트림 스플라이싱은 둘 이상의 비트스트림들 또는 그 일부들의 연접 (concatenation) 을 지칭할 수도 있다. 예를 들어, 제 1 비트스트림에는, 스플라이싱된 비트스트림을 생성하기 위해 비트스트림들 중 하나 또는 양쪽 모두에 대한 아마도 일부 수정들로, 제 2 비트스트림이 첨부될 수도 있다. 이 예에서, 제 2 비트스트림에서의 제 1 코딩된 화상은 "스플라이싱 포인트"라고 지칭될 수도 있다. 그러므로, 스플라이싱된 비트스트림에서 스플라이싱 포인트 뒤에 발생하는 화상들은 제 2 비트스트림으로부터 유래된 반면 스플라이싱된 비트스트림에서 스플라이싱 포인트에 선행하는 화상들은 제 1 비트스트림으로부터 유래된다.
비트스트림 스플라이서들이 비트스트림 스플라이싱을 수행할 수도 있다. 일부 예들에서, 비트스트림 스플라이서들은 경량이고 비디오 인코더들보다 덜 복잡할 수도 있다. 예를 들어, 비트스트림 스플라이서들에는 엔트로피 디코딩 및 엔트로피 인코딩 능력들이 장비되지 않을 수도 있다.
비트스트림 스위칭은 비디오 편집 및 적응적 스트리밍 환경들에서 사용될 수도 있다. 스위치된 (switched-to) 비트스트림의 특정 화상에서의 비트스트림 스위칭 동작이 사실상, 스플라이싱 포인트가 비트스트림 스위칭 포인트, 즉, 스위치된 비트스트림으로부터의 제 1 화상이 되는 비트스트림 스플라이싱 동작이 될 수도 있다.
기본 스트림이 하나 이상의 비트스트림들의 시퀀스를 포함할 수도 있다. 둘 이상의 비트스트림들을 포함하는 기본 스트림이 둘 이상의 비트스트림들 (또는 그 일부들) 을 함께 스플라이싱함으로써 형성될 수도 있다. 기본 스트림이 다수의 비트스트림들을 포함하면, 마지막 비트스트림을 제외한 비트스트림들의 각각은 비트스트림 종료 (EOS) NAL 유닛과 함께 종료한다.
HEVC 및 다른 비디오 코딩 표준들은 비트스트림들 속으로의 랜덤 액세스를 가능하게 하는 메커니즘들을 제공한다. 랜덤 액세스는 비트스트림에서 제 1 코딩된 화상이 아닌 코딩된 화상으로부터 시작하는 비트스트림의 디코딩을 지칭한다. 비트스트림에 대한 랜덤 액세스는 다양한 비디오 애플리케이션들, 이를테면 브로드캐스팅과 스트리밍에서 필요할 수도 있다. 비트스트림에 대한 랜덤 액세스는 사용자들이 임의의 시간에 프로그램에 튜닝하는 것, 상이한 채널들 간에 스위치하는 것, 비디오의 특정 부분들로 점프하는 것, 또는 스트림 적응 (예컨대, 비트 레이트의 적응, 프레임 레이트의 적응, 공간적 레졸루션의 적응 등) 을 위해 상이한 비트스트림으로 스위치하는 것을 가능하게 할 수도 있다. 규칙적인 간격들로 비트스트림 속으로의 랜덤 액세스 화상들 또는 랜덤 액세스 포인트들의 삽입은 랜덤 액세스를 가능하게 할 수도 있다. 랜덤 액세스 화상들의 예의 유형들은 IDR 화상들, CRA 화상들, 및 BLA 화상들을 포함한다. 따라서, IDR 화상들, CRA 화상들 및 BLA 화상들은 랜덤 액세스 포인트 (random access point; RAP) 화상들이라고 총칭된다.
IDR 화상이 I 슬라이스들 (즉, 인트라 예측만이 사용되는 슬라이스들) 만을 포함한다. IDR 화상이 디코딩 순서에서 비트스트림에서의 제 1 화상일 수도 있거나, 또는 비트스트림에서 나중에 나타날 수도 있다. 각각의 IDR 화상은 디코딩 순서에서 CVS의 제 1 화상이다. IDR 화상들은, HEVC 및 H.264/AVC에서 특정된 바와 같이, 랜덤 액세스를 위해 사용될 수도 있다. 그러나, 디코딩 순서에서 IDR 화상을 뒤따르는 화상들은 IDR 화상 전에 디코딩된 화상들을 참조로서 사용할 수 없다. 따라서, 랜덤 액세스를 위한 IDR 화상들에 의존하는 비트스트림들은 상당히 더 낮은 코딩 효율과 랜덤 액세스 화상들의 부가적인 유형들을 사용하는 비트스트림을 가질 수 있다. IDR 액세스 유닛이 IDR 화상을 포함하는 액세스 유닛이다.
CRA 화상들의 개념은 디코딩 순서에서 CRA 화상을 뒤따르지만 출력 순서에서 CRA 화상에 선행하는 화상들이, CRA 화상 전에 디코딩된 화상들을 참조를 위해 사용하는 것을 허용하기 위해 HEVC에서 도입되었다. 디코딩 순서에서 CRA 화상을 뒤따르지만 출력 순서에서 CRA 화상에 선행하는 화상들은, CRA 화상에 연관된 리딩 화상들 (또는 CRA 화상의 리딩 화상들) 이라고 지칭된다. 다시 말하면, 코딩 효율을 개선하기 위해, CRA 화상들의 개념은 디코딩 순서에서 CRA 화상을 뒤따르지만 출력 순서에서 CRA 화상에 선행하는 화상들이 CRA 화상 전에 디코딩된 화상들을 참조로서 사용하는 것을 허용하기 위해 HEVC에서 도입되었다. CRA 액세스 유닛이 코딩된 화상이 CRA 화상인 액세스 유닛이다.
CRA 화상의 리딩 화상들은 디코딩이 디코딩 순서에서 그 CRA 화상 전에 발생하는 IDR 화상 또는 CRA 화상으로부터 시작하면 올바르게 디코딩가능하다. 그러나, CRA 화상의 리딩 화상들은 CRA 화상으로부터의 랜덤 액세스가 발생하는 경우 디코딩가능하지 않을 수도 있다. 따라서, 비디오 디코더가 랜덤 액세스 디코딩 동안 CRA 화상의 리딩 화상들을 통상 디코딩한다. 디코딩이 시작하는 곳에 의존하여 이용가능하지 않을 수도 있는 참조 화상들로부터의 에러 전파를 방지하기 위해, 디코딩 순서 및 출력 순서 양쪽 모두에서 CRA 화상을 뒤따르는 화상은, 디코딩 순서 또는 출력 순서 중 어느 하나에서 CRA 화상에 선행하는 임의의 화상 (리딩 화상들을 포함함) 을 참조로서 사용하지 않을 수도 있다.
깨진 링크 액세스 (BLA) 화상의 개념은 CRA 화상들의 도입 후에 HEVC에서 도입되었고 CRA 화상들의 개념에 기초하고 있다. BLA 화상이 CRA 화상의 포지션에서의 비트스트림 스플라이싱으로부터 통상 유래하고, 스플라이싱된 비트스트림에서 스플라이싱 포인트 CRA 화상은 BLA 화상으로 변경된다. RAP 화상을 포함하는 액세스 유닛이 본원에서는 RAP 액세스 유닛이라고 지칭될 수도 있다. BLA 액세스 유닛이 BLA 화상을 포함하는 액세스 유닛이다.
BLA 화상들 및 CRA 화상들 간의 하나의 차이는 다음과 같다. CRA 화상의 경우, 연관된 리딩 화상들은 디코딩 순서에서 CRA 화상 전에 RAP 화상으로부터 디코딩이 시작하면 올바르게 디코딩가능하다. 그러나, CRA 화상에 연관된 리딩 화상들은, CRA 화상으로부터의 랜덤 액세스가 발생하는 경우 (즉, 디코딩이 CRA 화상으로부터 시작하는 경우, 또는 다르게 말하면, CRA 화상이 비트스트림에서의 제 1 화상인 경우) 올바르게 디코딩가능하지 않을 수도 있다. 그 반면, 심지어 디코딩이 디코딩 순서에서 BLA 화상 전에 RAP 화상으로부터 시작하는 경우에도, BLA 화상에 연관된 리딩 화상들이 디코딩가능한 시나리오가 없을 수도 있다.
특정 CRA 화상 또는 특정 BLA 화상에 연관된 리딩 화상들의 일부들은 심지어 특정 CRA 화상 또는 특정 BLA 화상이 비트스트림에서의 제 1 화상인 경우에도 올바르게 디코딩가능할 수도 있다. 이들 리딩 화상들은 디코딩가능한 리딩 화상 (decodable leading picture; DLP) 들이라고 지칭될 수도 있다. 다른 리딩 화상들은 비-디코딩가능한 리딩 화상 (non-decodable leading picture; NLP) 들이라고 지칭될 수도 있다. HEVC 규격 초안 8은 NLP들을 TFD (tagged for discard) 화상들이라고 또한 지칭할 수도 있다.
하나 이상의 HEVC 비트스트림들은 특정 파일 포맷을 준수하는 파일에 저장될 수도 있다. 일부 예들에서, 비디오 데이터 비트스트림 (예컨대, HEVC 비트스트림) 이 ISO 기본 미디어 파일 포맷 (ISOBMFF) 을 준수하는 파일에 저장될 수도 있다. ISOBMFF는 ISO/IEC 14496-12라고 또한 지칭될 수도 있다. 비디오 데이터 비트스트림들의 저장을 위한 다른 예의 파일 포맷들은, MPEG-4 파일 포맷 (ISO/IEC 14496-14), 3 세대 파트너십 프로젝트 (3GPP) 파일 포맷 (3GPP TS 26.244), 및 AVC 파일 포맷 (ISO/IEC 14496-15) 을 포함한 ISOBMFF로부터 파생된 파일 포맷들을 포함한다. HEVC 비디오 콘텐츠의 저장을 위한 AVC 파일 포맷에 대한 개정 (amendment) 이 MPEG에 의해 개발 중에 있다. 이 AVC 파일 포맷 개정이 HEVC 파일 포맷이라고 지칭될 수도 있다.
HEVC 파일 포맷을 준수하는 파일들이 복수의 트랙들을 포함할 수도 있다. 각각의 트랙은 관련된 샘플들의 타임식 시퀀스 (timed sequence) 일 수도 있다. HEVC 파일 포맷의 맥락에서, "샘플"이 단일 타임스탬프에 연관된 데이터를 포함할 수도 있다. 샘플의 예들은 다음을 포함한다: 비디오의 개개의 프레임, 디코딩 순서의 일련의 비디오 프레임들, 또는 디코딩 순서의 오디오의 압축된 섹션. HEVC 파일 포맷에서, 각각의 트랙은 복수의 "박스들"을 포함할 수도 있다. "박스"가 고유한 유형 식별자 및 길이로 정의되는 객체 지향적 빌딩 블록이다.
3GPP 멀티미디어 서비스들이 HTTP를 통한 3GPP 동적 적응적 스트리밍 (3GP-DASH, 3GPP TS 26.247), 패킷-교환식 스트리밍 (PSS, 3GPP TS 26.234), 멀티미디어 브로드캐스트 및 멀티캐스트 서비스 (MBMS, 3GPP TS 26.346) 그리고 IMS를 통한 멀티미디어 전화기 서비스 (MTSI, 3GPP TS 26.114) 를 포함한다. MPEG은 HTTP를 통한 동적 적응적 스트리밍 (dynamic adaptive streaming over HTTP; DASH) 표준 (ISO/IEC IS 23009-1) 을 또한 특정했다. 실시간 프로토콜 (RTP) 패이로드 포맷들이 RFC 6184에서의 H.264 패이로드 포맷, RFC 6190에서의 SVC 패이로드 포맷 및 많은 다른 것들을 포함한다. 현재, HEVC RTP 패이로드 포맷은 인터넷 엔지니어링 태스크 포스 (IETF) 에 의해 개발되고 있다.
DASH는, 인코딩된 미디어 콘텐츠의 다수의 표현들이 있지만 각각의 표현은 대역폭 적응을 허용하는 상이한 비트레이트를 갖는 네트워크 스트리밍을 지향한다. 대역폭이 증가함에 따라, 클라이언트가 높은 대역폭 표현으로부터 데이터를 취출할 수 있고, 대역폭이 감소하는 경우, 클라이언트는 더 낮은 대역폭 표현으로부터 데이터를 취출할 수 있다. DASH 미디어 프레젠테이션 기술 (MPD) 이 어떤 표현들이 이용가능한지, 뿐만 아니라 그것들의 비트레이트들을 기술하는 문서 (예컨대, XML-형식 문서) 이다. DASH MPD가 "매니페스트 파일"이라고 또한 지칭될 수도 있다. 특정 시간에 결정된 양의 네트워크 대역폭이 주어진다고 하면, 클라이언트가 DASH MPD를 사용하여 표현을 선택할 수도 있다.
DASH에서, 미디어 프레젠테이션이 하나 이상의 기간들의 시퀀스를 포함할 수도 있다. 기간들은 MPD에서의 기간 엘리먼트에 의해 정의될 수도 있다. 각각의 기간은 동일한 미디어 콘텐츠에 대해 하나 이상의 표현들을 포함할 수도 있다. 표현이 오디오 또는 비디오 데이터의 다수의 대안적 인코딩된 버전들 중 하나일 수도 있다. 그 표현들은 인코딩 유형들에 의해, 예컨대, 비디오 데이터에 대한 비트레이트, 레졸루션, 및/또는 코덱과, 오디오 데이터에 대한 비트레이트, 언어, 및/또는 코덱에 의해 상이할 수도 있다. 용어 표현 (representation) 은 멀티미디어 콘텐츠의 특정 기간에 대응하고 특정 방법으로 인코딩되는 인코딩된 오디오 또는 비디오 데이터의 섹션을 말하는데 이용될 수도 있다.
DASH의 사용은 클라이언트 디바이스들이 소스 디바이스들 및 클라이언트 디바이스 간에 네트워크 경로들을 따라 발생할 수 있는 이용가능한 대역폭에서의 변동들에 적응하는 것을 허용할 수도 있다. 특히, 콘텐츠 생산자들이, 각 표현이 동일한 특성들을 갖지만 상이한 비트레이트들에서 코딩된 표현들의 세트를 종종 생산한다. 표현들의 이러한 세트는 "적응 세트"라고 지칭될 수도 있다. 매니페스트 파일, 이를테면 MPD가, 표현들에 대한 비트레이트들을 포함한 적응 세트들의 표현들의 특성들을 기술하고, 표현들의 세그먼트들 (예컨대, 개개의 파일들) 에 대한 URL (uniform resource locator) 들과 같은 표현들의 데이터를 취출하기 위한 정보를 또한 제공할 수도 있다.
HEVC 및 다른 비디오 코딩 표준들이 프로파일들, 티어들, 및 레벨들을 특정한다. 프로파일들, 티어 (tier) 들, 및 레벨들이 비트스트림들에 대한 제약 (restriction) 들을 특정하고 그래서 비트스트림들을 디코딩하는데 필요한 능력들을 제한한다. 프로파일들, 티어들 및 레벨들은 또한, 개개의 디코더 구현예들 간의 상호운용성 포인트들을 나타내는데 사용될 수도 있다. 각각의 프로파일은 당해 프로파일을 준수하는 모든 비디오 디코더들에 의해 지원되는 알고리즘 특징들 및 제한들의 서브세트를 특정한다. 비디오 인코더들이 프로파일에서 지원되는 모든 특징들을 사용할 필요는 없다. 티어의 각각의 레벨이 신택스 엘리먼트들이 가질 수도 있는 값들에 대한 제한들의 세트를 특정할 수도 있다. 티어 및 레벨 정의들의 동일한 세트는 모든 프로파일들과 함께 사용될 수도 있지만, 개개의 구현예들은 상이한 티어를 그리고 티어 내에서는 각각의 지원된 프로파일에 대해 상이한 레벨을 지원할 수도 있다. 임의의 주어진 프로파일에 대해, 티어의 레벨이 특정 디코더 프로세싱 부하 및 메모리 능력에 일반적으로 대응할 수도 있다. 비디오 디코더들의 능력들은 특정 프로파일들, 티어들 및 레벨들의 제약들을 준수하는 비디오 스트림들을 디코딩하는 능력의 측면에서 특정될 수도 있다. 각각의 이러한 프로파일에 대해, 당해 프로파일에 대해 지원되는 티어 및 레벨이 또한 표현될 수도 있다. 일부 비디오 디코더들은 특정 프로파일들, 티어들, 또는 레벨들을 디코딩할 수 없을 수도 있다.
HEVC에서, 프로파일들, 티어들, 및 레벨들은 profile_tier_level( ) 신택스 구조에 의해 시그널링될 수도 있다. profile_tier_level( ) 신택스 구조는 VPS 및/또는 SPS에 포함될 수도 있다. profile_tier_level( ) 신택스 구조는 include general_profile_idc 신택스 엘리먼트, general_tier_flag 신택스 엘리먼트, 및 general_level_idc 신택스 엘리먼트를 포함할 수도 있다. general_profile_idc 신택스 엘리먼트는 CVS가 준수하는 프로파일을 나타낼 수도 있다. general_tier_flag 신택스 엘리먼트는 general_level_idc 신택스 엘리먼트의 해석을 위한 티어 콘텍스트를 나타낼 수도 있다. general_level_idc 신택스 엘리먼트는 CVS가 준수하는 레벨을 나타낼 수도 있다. 이들 신택스 엘리먼트들에 대한 다른 값들은 유보될 수도 있다.
비디오 디코더들의 능력들은 프로파일들, 티어들 및 레벨들의 제약들을 준수하는 비디오 스트림들을 디코딩하는 능력의 측면에서 특정될 수도 있다. 각각의 이러한 프로파일에 대해, 당해 프로파일에 대해 지원되는 티어 및 레벨이 또한 표현될 수도 있다. 일부 예들에서, 비디오 디코더들은 HEVC에서 특정된 값들 간의 general_profile_idc 신택스 엘리먼트의 유보된 값이 특정된 프로파일들 간의 중간 능력들을 나타낸다는 것을 유추하지 못한다. 그러나, 비디오 디코더들은 HEVC에서 특정된 값들 간의 general_tier_flag 신택스 엘리먼트의 특정 값에 연관된 general_level_idc 신택스 엘리먼트의 유보된 값이 티어의 특정된 레벨들 간의 중간 능력들을 나타낸다는 것을 유추할 수도 있다.
비트스트림이 (아마도 0 내지 31의 범위의 i에 대한 general_profile_compatibility_flag[i]와, HEVC에서 특정된 바와 같은 general_reserved_zero_16bits에서 시그널링되는 바와 같은 부가적인 제약들을 갖는) 상이한 프로파일들로부터인 다수의 CVS들을 포함할 수도 있다. 따라서, 비트스트림이 주어지면, 제 1 CVS에 대해 액티브 SPS에 포함된 프로파일 정보를 단순히 검사하는 것은 특정 프로파일을 준수하는 비디오 디코더가 전체 비트스트림을 디코딩할 수 있는지의 여부를 알기에는 충분하지 않다. 비디오 디코더가 전체 비트스트림을 디코딩할 수 있다는 것을 보장하기 위해, 비디오 디코더는 모든 CVS들이 동일한 프로파일을 준수하는지의 여부를 확인하기 위해 비트스트림에서의 모든 CVS들을 검사할 수도 있다. 이러한 검사는 단순하지 않을 수도 있는데, 비디오 디코더가 모든 액티브 SPS들을 결정하기 위해 비트스트림에서의 거의 모든 NAL 유닛들을 검사하는 것을 필요로 할 수도 있기 때문이다. 모든 액티브 SPS들을 결정하는 것은 SPS NAL 유닛들, EOS NAL 유닛들, RAP 화상들의 NAL 유닛들, 및 SEI NAL 유닛들을 결정하는 것과, 어떤 SPS가 CVS에 대해 액티브인지를 결정하기 위해 RAP 화상들의 NAL 유닛들의 슬라이스 헤더들 및/또는 버퍼링 기간 SEI 메시지들로 파싱하는 것을 수반할 수도 있다.
비트스트림에서의 거의 모든 NAL 유닛들을 파싱하고 검사하는 일 없이 비트스트림의 속성을 결정할 수 없는 상황은, 아래에 열거된 것들과 같은 다른 유형들의 비트스트림 레벨 정보 (즉, 비트스트림 속성들) 에 관해 또한 발생할 수도 있다. 그러나, 다음의 비트스트림 속성들의 일부를 결정하는 것에 관계된 복잡도의 레벨은 비트스트림에서의 거의 모든 NAL 유닛들의 파싱 및 검사를 반드시 필요로 하지는 않을 것이라는 것이 이해되어야 한다.
1) 티어 및 레벨이 비트스트림에서의 모든 CVS들에 대해 변경 없이 유지되는지의 여부.
2) 비트스트림에서의 모든 CVS들이 동일한 공간적 레졸루션을 갖는지의 여부.
3) 비트스트림에서의 모든 CVS들이 시간적 서브-계층들의 동일한 (최대) 수를 갖는지의 여부.
4) 비트스트림에서의 모든 CVS들이 계층들의 동일한 (최대) 수 (즉, VCL NAL 유닛들을 위한 nuh_reserved_zero_6bits에 대한 값들의 수) 를 갖는지의 여부와, 그렇다면, 비트스트림에서의 모든 CVS들에서 모든 계층들이 계층 식별자들의 동일한 세트 (즉, nuh_reserved_zero_6bits 값들의 동일한 세트) 를 갖는지의 여부.
5) 비트스트림에서의 모든 CVS들이 동작 지점들의 동일한 세트를 지원하는지의 여부.
6) 비트스트림에서의 모든 CVS들이 동일한 (최대) 화상 레이트를 갖는지의 여부.
7) 비트스트림에서의 모든 CVS들이 동일한 최대 비트레이트를 갖는지의 여부.
8) 비트스트림에서의 모든 CVS들이 동일한 컬러 포맷을 갖는지의 여부.
9) 비트스트림에서의 모든 CVS들이 동일한 샘플 애스팩트 비를 갖는지의 여부.
10) 비트스트림에서의 모든 CVS들이 루마 및 크로마에 대해 비트 심도들의 동일한 세트를 갖는지의 여부. 샘플 값 (예컨대, 루마 샘플 또는 크로마 샘플) 에 대한 비트 심도는 얼마나 많은 비트들이 샘플 값을 표현하는데 사용되는지를 나타낼 수도 있다.
11) 비트스트림에서의 적어도 하나의 파라미터 세트가 업데이트되는지의 여부. 다르게 말하면, VPS, SPS 또는 PPS의 콘텐츠가 변하지만 동일한 VPS 식별자, SPS 식별자, 또는 PPS 식별자가 사용되는지의 여부. 다르게 말하면, 비트스트림에서 적어도 하나의 VPS가 업데이트되는지의 여부, 비트스트림에서 적어도 하나의 SPS가 업데이트되는지의 여부, 및 비트스트림에서 적어도 하나의 PPS가 업데이트되는지의 여부.
12) 모든 파라미터 세트들이 비트스트림의 시작부분에 (즉, 비트스트림에서의 제 1 액세스 유닛 내에) 존재하는지의 여부. 그 조건이 참이면, 예컨대 에러 내성 목적을 위해 다른 액세스 유닛들에서 반복되는 파라미터 세트들이 여전히 있을 수도 있다. 그러나, 반복된 파라미터 세트들 중에는 임의의 파라미터 세트 업데이트들이 없을 수도 있다. 다르게 말하면, 모든 VPS들이 비트스트림의 시작부분에 존재하는지의 여부, 모든 SPS들이 비트스트림의 시작부분에 존재하는지의 여부, 및 모든 PPS들이 비트스트림의 시작부분에 존재하는지의 여부.
13) 비트스트림에서의 파라미터 세트들의 존재는 완전한 랜덤 접근성을 가능하게 한다. 다시 말하면, RAP 액세스 유닛 전의 모든 액세스 유닛들을 버림으로써 각각의 RAP 액세스 유닛의 포지션에서 랜덤 액세스를 수행하는 것과 RAP 화상 및 디코딩 순서에서의 모든 후속 비-TFD 화상들을 올바르게 디코딩하는 것이 가능한지의 여부. 이는 위의 랜덤 액세스가 임의의 RAP 액세스 유닛에서 수행되는 경우, 각각의 파라미터 세트는 그 파라미터 세트가 활성화되는 것을 필요로 할 때 비트스트림에서 이용가능한 것을 필요로 할 수도 있다.
14) 비트스트림에서의 모든 CVS들이 프레임 화상들에서 코딩된 프로그레시브 프레임들만을 포함하는지의 여부, 즉, 스캔 유형이 인터레이스가 아니라 프로그레시브이고, 필드 화상들이 없는지의 여부.
15) 비트스트림에서의 임의의 CVS가 프레임 패킹 배열 SEI 메시지를 포함하는지의 여부. 다르게 말하면, 비트스트림에서의 각각의 CVS에 의해 표현된 비디오 세그먼트가 프레임-패킹되는지의 여부. 프레임 패킹 배열 SEI 메시지가 SEI 메시지에 연관된 화상이 상이한 뷰들을 표현하는 두 개의 화상들을 패킹함으로써 구성되는 프레임인지의 여부와, 만약 그렇다면, 어떻게 패킹이 행해졌는지를 나타낸다.
16) 타일들이 비트스트림의 모든 CVS들에 대해 가능하게 되는지의 여부 및/또는 비트스트림의 모든 CVS들에서의 모든 화상들이 동일한 타일 구성을 갖는지의 여부.
17) 비트스트림에서의 모든 CVS들이 동일한 코딩 트리 블록 사이즈 및 동일한 최소 코딩 블록 사이즈를 갖는지의 여부.
18) 비트스트림에서의 모든 CVS들이 (예컨대, HEVC에서 특정된 바와 같은 hrd_parameters( ) 신택스 구조로 시그널링되는 바와 같은) 시퀀스 레벨 HRD 파라미터들 (또는 그 일부) 의 동일한 세트 및/또는 (예컨대, HEVC에서 특정된 바와 같은 vps_max_dec_pic_buffering[i] 신택스 엘리먼트에 의해 시그널링되는 바와 같은) 디코딩된 화상 버퍼 사이즈들의 동일한 세트를 갖는지의 여부.
19) 비트스트림에서의 모든 CVS들이 특정 코딩 도구를 사용하는지의 여부. 예를 들어, 비트스트림의 모든 CVS들이 의존성 슬라이스들 (dependent_slices_enabled_flag 신택스 엘리먼트가 1과 동일한 경우에 지원됨), 파면 병렬 프로세싱 (entropy_coding_sync_enabled_flag 신택스 엘리먼트가 1과 동일한 경우에 지원됨), 가중된 예측 등을 사용하는지의 여부.
20) 비트스트림에서의 모든 CVS들이 화상들의 동일한 구조 (same structure of pictures; SOP) 기술 SEI 메시지들에 의해 설명된 바와 같은 SOP들을 갖는지의 여부. SOP 기술 SEI 메시지는 참조 화상 세트 (reference picture set; RPS) 들을 통해 비트스트림의 구조를 설명한다. SOP 기술 SEI 메시지의 설계는 시간적 및 인터 예측 구조의 지식이 유용한 여러 사용 사례들을 다룰 수도 있다. 예를 들어, 게이트웨이가 포워딩된 비트스트림의 디코딩에 영향을 미치는 일 없이 빼버릴 수 있는 인터 관련된 화상들의 세트를 결정하기 위해 비트 레이트 적응에서 SOP 정보를 사용할 수 있다. 이러한 비트스트림 트리밍은 TemporalId에 기초하여 서브-비트스트림 추출보다 더 미세한 세분도 (granularity) 를 가질 수 있고 그러므로 미묘한 임시 비트 레이트 적응에 더욱 적합해질 수 있다. SOP 기술 SEI 메시지는 SOP의 제 1 액세스 유닛에 존재한다. SOP 기술 SEI 메시지는 SOP에서의 각각의 화상에 다음의 정보를 제공한다: 그 화상이 참조 화상인지 또는 비-참조 화상인지의 표시, 그 화상의 TemporalId 값, 그 화상에 의해 사용된 단기 RPS 인덱스, SOP의 제 1 화상에 대한 화상 순서 카운트. 정보의 이들 조각들은 SOP의 시간적 구조 및 인터 예측 계층구조를 포괄적으로 표현한다.
21) 비트스트림에서의 모든 CVS들의 TFD 화상들이 용인가능한 품질로 디코딩되고 출력될 수도 있는지의 여부.
22) 비트스트림이 디코딩되는 경우 활성화되는 하나의 VPS만이 있는지의 여부; 및 비트스트림이 디코딩되는 경우 활성화되는 하나의 VPS만이 있다면, 그 VPS의 VPS 식별자.
23) 비트스트림이 디코딩되는 경우 활성화되는 하나의 SPS만이 있는지의 여부; 및 비트스트림이 디코딩되는 경우 활성화되는 하나의 SPS만이 있다면, 그 SPS의 SPS 식별자.
24) 비트스트림이 디코딩되는 경우 활성화되는 하나의 PPS만이 있는지의 여부; 및 비트스트림이 디코딩되는 경우 활성화되는 하나의 PPS만이 있다면, 그 PPS의 PPS 식별자.
25) 다음의 것들 및 그것들의 조합들 중 하나 이상:
a. 비트스트림에서의 모든 RAP 화상들이 IDR 화상들인지의 여부.
b. 비트스트림에서의 모든 RAP 화상들이 IDR 화상들이 아닌지의 여부.
c. 비트스트림에서 IDR 화상들인 RAP 화상들이 있는지의 여부.
d. 비트스트림에서 비-IDR RAP 화상들이 있는지의 여부.
e. 비트스트림에서의 모든 RAP 화상들이 CRA 화상들인지의 여부.
f. 비트스트림에서의 모든 RAP 화상들이 CRA 화상들이 아닌지의 여부.
g. 비트스트림에서 CRA 화상들인 RAP 화상들이 있는지의 여부.
h. 비트스트림에서 비-CRA RAP 화상들이 있는지의 여부.
i. 비트스트림에서의 모든 RAP 화상들이 BLA 화상들인지의 여부.
j. 비트스트림에서의 모든 RAP 화상들이 BLA 화상들이 아닌지의 여부.
k. 비트스트림에서 BLA 화상들인 RAP 화상들이 있는지의 여부.
l. 비트스트림에서 비-IDR BLA 화상들이 있는지의 여부.
m. 비트스트림에서 DLP 화상들이 있는지의 여부.
n. 비트스트림에서 TFD 화상들이 있는지의 여부.
o. 비트스트림에서 TSA 화상들이 있는지의 여부.
p. 비트스트림에서 STSA 화상들이 있는지의 여부.
26) 비트스트림 (또는 기본 스트림) 이 디코딩되는 경우 sps_temporal_id_nesting_flag 신택스 엘리먼트들의 값들이 활성화되는 모든 SPS들에 대해 동일한지의 여부.
27) 비트스트림 (또는 기본 스트림) 이 디코딩되는 경우 vps_temporal_id_nesting_flag 신택스 엘리먼트들의 값들이 활성화되는 모든 VPS들에 대해 동일한지의 여부.
더욱이, 비트스트림 속성을 결정하기 위해 비트스트림의 거의 모든 NAL 유닛들을 파싱하는 상황은 비트스트림 레벨 정보의 일부 더 자세한 유형들, 이를테면 다음의 속성들에 적용가능할 수도 있다:
1) 비트스트림에서의 (아마도 0 내지 31의 범위의 i에 대한 general_profile_compatibility_flag[i]와, HEVC에서 특정된 바와 같은 general_reserved_zero_16bits에서 시그널링된 바와 같은 부가적인 제약들을 갖는) 프로파일들의 세트. 대안으로, 비트스트림에서의 프로파일들의 최대 세트 (즉, 비트스트림에서의 CVS가 그 세트에 포함되지 않는 프로파일을 준수하지 않는다).
2) 비트스트림에서의 티어들 및 레벨들의 (최대) 세트. 이는 최고 티어로서, 그리고 각각의 티어에 대해 최고 레벨로서 효율적으로 시그널링될 수도 있다.
3) 비트스트림에서의 공간적 레졸루션들의 (최대) 세트.
4) 비트스트림에서의 시간적 서브-계층들의 (최대) 수들의 (최대) 세트.
5) 비트스트림에서의 계층들의 (최대) 수들 (즉, VCL NAL 유닛들을 위한 nuh_reserved_zero_6bits에 대한 값들의 수) 의 (최대) 세트 및 계층 ID들 (즉, nuh_reserved_zero_6bits 값들) 의 (최대) 세트.
6) 비트스트림에서의 동작 지점들의 (최대) 세트.
7) 비트스트림에서의 (최대) 프레임 레이트들의 (최대) 세트.
8) 비트스트림에서의 최대 비트레이트들의 (최대) 세트.
9) 비트스트림에서의 컬러 포맷들의 (최대) 세트.
10) 비트스트림에서의 샘플 애스팩트 비들의 (최대) 세트.
11) 비트스트림에서의 루마 비트 심도들 및 크로마 비트 심도들의 (최대) 세트.
12) 비트스트림에서의 프레임 패킹 유형들의 (최대) 세트.
13) 비트스트림에서의 타일들의 (최대) 수.
14) 비트스트림에서의 코딩 트리 블록 사이즈들 및 최소 코딩 블록 사이즈들의 (최대) 세트.
위의 리스트에서, 문장의 괄호 속의 단어 "최대"는 그 단어 "최대"가 그 문장에 옵션으로 포함될 수도 있다는 것을 나타낸다. 예를 들면, "비트스트림에서의 타일들의 (최대) 수"라는 문장은 "비트스트림에서의 타일들의 수" 또는 "비트스트림에서의 타일들의 최대 수" 중 어느 하나로 읽힐 수도 있다.
기본 스트림이 다수의 비트스트림들을 포함할 수도 있고 결과적으로 다수의 CVS들을 또한 포함할 수도 있다. 기본 스트림에서의 CVS들은 상이한 프로파일들을 또한 가질 수도 있다. 따라서, 비트스트림의 속성들을 결정하기 위해 비트스트림의 거의 모든 NAL 유닛들을 파싱하고 검사하는 것을 필요로 하는 문제는 기본 스트림들의 맥락에서 발생할 수도 있다. 따라서, 기본 스트림의 속성들 (즉, 기본 스트림 속성들) 을 결정하기 위해 기본 스트림의 거의 모든 NAL 유닛들을 파싱하고 검사하는 것이 필요할 수도 있다. 이러한 기본 스트림 속성들은 용어 "비트스트림"이 용어 "기본 스트림"으로 교체된 위에서 열거된 비트스트림 속성들 중 하나 또는 전부를 포함할 수도 있다.
본 개시물의 기법들은 위에서 설명된 문제들 중 하나 이상을 해결할 수도 있다. 예를 들어, 비디오 인코더 (20) 는, 비트스트림으로, 그 비트스트림의 비트스트림 속성들을 시그널링할 수도 있다. 비트스트림의 비트스트림 속성들은 비트스트림에 전체적으로 적용가능할 수도 있다. 비트스트림의 비트스트림 속성들은 위에서 열거된 비트스트림 속성들 중 하나 이상을 특정할 수도 있다. 일부 기법들에서, 비트스트림 속성들 SEI 메시지가 비트스트림 레벨 속성들을 시그널링하기 위해 정의된다. 비트스트림 속성들 SEI 메시지는 SEI 메시지를 포함하는 전체 비트스트림에 대한 정보를 제공한다. 다르게 말하면, 비트스트림 속성들 SEI 메시지는 SEI 메시지를 포함하는 전체 비트스트림에 대한 정보를 제공할 수도 있다.
예를 들어, 비디오 인코더 (20) 는 복수의 CVS들을 포함하는 비트스트림의 속성을 시그널링할 수도 있다. 이 예에서, 그 속성이 특정 값을 갖는 경우, 비트스트림의 모든 CVS들은 동일한 프로파일을 준수한다. 예를 들면, 그 속성은 특정 신택스 엘리먼트일 수도 있다. 이 경우, 비디오 인코더 (20) 는, 비트스트림으로, 특정 신택스 엘리먼트를 포함하는 SEI 메시지를 시그널링할 수도 있다. 특정 신택스 엘리먼트가 특정 값을 갖는 경우, 비트스트림이 디코딩되는 경우에 활성화되는 개별 SPS들에서의 일반 프로파일 표시자 신택스 엘리먼트들은 동일한 값을 갖는다. 이 예에서, 일반 프로파일 표시자 신택스 엘리먼트들의 각각은 CVS가 준수하는 프로파일을 나타낸다.
유사한 예에서, 비디오 디코더 (30) (또는 다른 비디오 프로세싱 디바이스) 는, 비디오 데이터의 인코딩된 표현을 포함하는 비트스트림의 시그널링된 속성에 기초하여, 비디오 디코더 (30) 가 비트스트림을 디코딩할 수 있는지의 여부를 결정할 수도 있다. 이 예에서, 비트스트림은 복수의 CVS들을 포함하고 시그널링된 속성이 특정 값을 갖는 경우, 비트스트림의 모든 CVS들은 동일한 프로파일을 준수한다. 더욱이, 이 예에서, 비디오 디코더 (30) (또는 다른 비디오 프로세싱 디바이스) 는, 그 결정에 기초하여, 비트스트림을 프로세싱 (예컨대, 디코딩) 할 수도 있다. 예를 들면, 비디오 디코더 (30) (또는 다른 비디오 프로세싱 디바이스) 는, 비디오 데이터의 인코딩된 표현을 포함하는 비트스트림에서의 SEI 메시지에서의 특정 신택스 엘리먼트에 기초하여, 비디오 디코더 (30) 가 비트스트림을 디코딩할 수 있는지의 여부를 결정할 수도 있다. 특정 신택스 엘리먼트가 특정 값을 갖는 경우, 비트스트림이 디코딩되는 경우에 활성화되는 개별 SPS들에서의 일반 프로파일 표시자 신택스 엘리먼트들은 동일한 값을 갖는다. 일반 프로파일 표시자 신택스 엘리먼트들의 각각은 CVS가 준수하는 프로파일을 나타낸다. 이 예에서, 비디오 디코더 (30) 는, 그 결정에 기초하여, 비트스트림을 디코딩할 수도 있다.
더욱이, 비디오 인코더 (20) 는, 기본 스트림으로, 기본 스트림의 비트스트림 속성들을 시그널링할 수도 있다. 기본 스트림의 비트스트림 속성들은 기본 스트림에 전체적으로 적용가능할 수도 있다. 기본 스트림의 기본 스트림 속성들은 위에서 열거된 기본 스트림 속성들 중 하나 이상을 특정할 수도 있다. 일부 예들에서, 기본 스트림 속성들 (ESP) SEI 메시지가 기본 스트림 레벨 속성들을 시그널링하기 위해 정의된다. 예를 들면, 비디오 인코더 (20) 는 기본 스트림 속성들을 특정하는 신택스 엘리먼트들을 포함하는 ESP SEI 메시지를 생성할 수도 있다. ESP SEI 메시지는 SEI 메시지를 포함하는 전체 기본 스트림에 대한 정보를 제공할 수도 있다.
예를 들어, 비디오 인코더 (20) 는, 기본 스트림으로, 특정 신택스 엘리먼트를 포함하는 SEI 메시지를 시그널링할 수도 있다. 특정 신택스 엘리먼트가 특정 값을 갖는 경우, 기본 스트림이 디코딩되는 경우에 활성화되는 개별 SPS들에서의 일반 프로파일 표시자 신택스 엘리먼트들은 동일한 값을 갖는다. 이 예에서, 일반 프로파일 표시자 신택스 엘리먼트들의 각각은 CVS가 준수하는 프로파일을 나타낸다.
유사한 예에서, 비디오 디코더 (30) 는, 비디오 데이터의 인코딩된 표현을 포함하는 기본 스트림의 SEI 메시지에서의 특정 신택스 엘리먼트에 기초하여, 비디오 디코더 (30) 가 기본 스트림을 디코딩할 수 있는지의 여부를 결정할 수도 있다. 특정 신택스 엘리먼트가 특정 값을 갖는 경우, 비트스트림이 디코딩되는 경우에 활성화되는 개별 SPS들에서의 일반 프로파일 표시자 신택스 엘리먼트들은 동일한 값을 갖는다. 일반 프로파일 표시자 신택스 엘리먼트들의 각각은 CVS가 준수하는 프로파일을 나타낼 수도 있다. 이 예에서, 비디오 디코더 (30) 는, 그 결정에 기초하여, 기본 스트림을 디코딩할 수도 있다.
일부 예들에서, 비트스트림의 하나 이상의 비트스트림 속성들은 ISO 기본 미디어 파일 포맷으로 시그널링될 수도 있다. 예를 들어, 하나 이상의 비트스트림 속성들은 ISO 기본 미디어 파일 포맷의 HEVC 비디오 트랙에서의 샘플 엔트리에서 시그널링될 수도 있다. 따라서, 비트스트림의 속성 (예컨대, 비트스트림의 모든 CVS들이 동일한 프로파일을 준수하는지의 여부를 나타내는 속성) 이 ISO 기본 미디어 파일 포맷 파일에서 (예컨대, ISO 미디어 파일 포맷 파일의 HEVC 비디오 트랙에서) 시그널링될 수도 있다. 마찬가지로, 일부 예들에서, 하나 이상의 기본 스트림 속성들은 ISO 기본 미디어 파일 레벨에서 시그널링될 수도 있다. 예를 들어, 하나 이상의 기본 스트림 속성들은 트랙 헤더 박스, 미디어 정보 박스, 비디오 미디어 헤더 박스, 또는 HEVC 비디오 트랙의 다른 박스에 포함되는 새로운 박스 (예컨대, 기본 스트림 속성 박스) 에서 시그널링될 수도 있다.
일부 예들에서, 하나 이상의 비트스트림 속성들은 DASH MPD에서의 엘리먼트 또는 속성에서 시그널링될 수도 있다. 따라서, 비트스트림의 속성 (예컨대, 비트스트림의 모든 CVS들이 동일한 프로파일을 준수하는지의 여부를 나타내는 속성) 이 DASH MPD에서 시그널링될 수도 있다. 비트스트림 속성들 중 하나 이상이 DASH MPD의 엘리먼트 또는 속성으로 시그널링되는 일부 예들에서, 하나 이상의 비트스트림 속성들은 기간 레벨, 적응 세트 레벨, 표현 레벨 또는 서브-표현 레벨로 시그널링될 수도 있다. 마찬가지로, 기본 스트림 속성들 중 하나 이상은 DASH MPD의 엘리먼트 또는 속성으로 시그널링될 수도 있다. 기본 스트림 속성들 중 하나 이상이 DASH MPD의 엘리먼트 또는 속성으로 시그널링되는 일부 예들에서, 하나 이상의 기본 스트림 속성들은 기간 레벨, 적응 세트 레벨, 표현 레벨 또는 서브-표현 레벨로 시그널링될 수도 있다.
본 개시물의 일부 예의 기법들에 따라, 기본 스트림 속성들 중 하나 이상은 세션 기술 프로토콜 (Session Description Protocol; SDP) 파일에서 시그널링될 수도 있다. 따라서, 비트스트림의 속성 (예컨대, 비트스트림의 모든 CVS들이 동일한 프로파일을 준수하는지의 여부를 나타내는 속성) 이 SPD에서 시그널링될 수도 있다. SDP는 초기화 파라미터들을 설명하기 위한 포맷이다. 일부 예들에서, 기본 스트림 속성들 중 하나 이상은 SDP 파일에서의 다양한 미디어 레벨 SDP 속성들에서 시그널링될 수도 있다. 예를 들면, 다수의 프로파일들 및/또는 티어들 및 레벨들은 기본 스트림에서의 프로파일들, 티어들, 및 레벨들의 (최대) 세트들을 나타내기 위해 하나 이상의 미디어 레벨 SDP 속성들에서 시그널링될 수도 있다. HEVC RTP 패이로드 포맷에서, 다수의 프로파일들을 포함할 수도 있는 옵션의 패이로드 유형 파라미터가 정의될 수도 있다. 일부 예들에서, 프로파일들은 콤마로 분리될 수도 있다. 파라미터는 기본 스트림의 속성들 또는 수신기 구현예의 능력들을 시그널링하는데 사용될 수도 있다. 이러한 패이로드 유형 파라미터는 SDP 파일에서의 SDP 속성에 포함될 수도 있다. SDP 제안 (offer) 이 다수의 프로파일들을 포함할 수도 있는 그런 SDP 속성을 포함할 수도 있다. 그 응답자는 제안된 프로파일들 중 하나 이상을 선택할 수도 있다.
더욱이, 본 개시물의 하나 이상의 예의 기법들에 따라, 비트스트림 속성들 또는 기본 스트림 속성들은 RFC 6381에서 정의된 바와 같은 코덱 파라미터들에서 시그널링될 수도 있다. 예를 들면, 다수의 프로파일들 및/또는 티어들 및 레벨들은 비트스트림 또는 기본 스트림의 프로파일들, 티어들 및 레벨들의 (최대) 세트들을 나타내는 코덱 파라미터들에서 시그널링될 수도 있다.
도 2는 본 개시물의 기법들을 구현할 수도 있는 일 예의 비디오 인코더 (20) 를 도시하는 블록도이다. 도 2는 설명의 목적으로 제공되고 본 개시물에서 폭넓게 예시되고 설명된 바와 같은 기법들의 제한으로서 고려되지 않아야 한다. 설명의 목적으로, 본 개시물은 HEVC 코딩의 맥락에서 비디오 인코더 (20) 를 설명한다. 그러나, 본 개시물의 기법들은 다른 코딩 표준들 또는 방법들에 적용가능할 수도 있다.
도 2의 예에서, 비디오 인코더 (20) 는 예측 프로세싱 유닛 (100), 잔여 생성 유닛 (102), 변환 프로세싱 유닛 (104), 양자화 유닛 (106), 역 양자화 유닛 (108), 역 변환 프로세싱 유닛 (110), 복원 유닛 (112), 필터 유닛 (114), 디코딩된 화상 버퍼 (116), 및 엔트로피 인코딩 유닛 (118) 을 포함한다. 예측 프로세싱 유닛 (100) 은 인터 예측 프로세싱 유닛 (120) 과 인트라 예측 프로세싱 유닛 (126) 을 구비한다. 인터 예측 프로세싱 유닛 (120) 은 모션 추정 유닛 (122) 과 모션 보상 유닛 (124) 을 구비한다. 다른 예들에서, 비디오 인코더 (20) 는 더 많거나, 더 적거나, 또는 상이한 기능성 컴포넌트들을 포함할 수도 있다.
비디오 인코더 (20) 는 비디오 데이터를 수신할 수도 있다. 비디오 인코더 (20) 는 비디오 데이터의 화상의 슬라이스에서의 각각의 CTU를 인코딩할 수도 있다. 비디오 인코더 (20) 는 CTU의 CU들을 인코딩하여 CU들의 인코딩된 표현들 (즉, 코딩된 CU들) 을 생성할 수도 있다. CU를 인코딩하는 부분으로서, 예측 프로세싱 유닛 (100) 은 CU의 하나 이상의 PU들 중에서 CU에 연관된 코딩 블록들을 구획할 수도 있다. 따라서, 각각의 PU는 루마 예측 블록 및 대응하는 크로마 예측 블록들에 연관될 수도 있다. 비디오 인코더 (20) 와 비디오 디코더 (30) 는 다양한 사이즈들을 갖는 PU들을 지원할 수도 있다. CU의 사이즈는 CU의 루마 코딩 블록의 사이즈를 말할 수도 있고 PU의 사이즈는 PU의 루마 예측 블록의 사이즈를 말할 수도 있다. 특정 CU의 사이즈가 2Nx2N이라고 가정하면, 비디오 인코더 (20) 와 비디오 디코더 (30) 는 인트라 예측을 위한 2Nx2N 또는 NxN의 PU 사이즈들과, 인터 예측을 위한 2Nx2N, 2NxN, Nx2N, NxN, 또는 유사한 것의 대칭적 PU 사이즈들을 지원할 수도 있다. 비디오 인코더 (20) 와 비디오 디코더 (30) 는 또한 인터 예측을 위해 2NxnU, 2NxnD, nLx2N, 및 nRx2N의 PU 사이즈들에 대한 비대칭 구획화를 지원할 수도 있다.
인터 예측 프로세싱 유닛 (120) 은 CU의 각각의 PU에 대해 인터 예측을 수행함으로써 PU에 대한 예측 데이터를 생성할 수도 있다. PU에 대한 예측 데이터는 PU의 예측 블록들 및 그 PU에 대한 모션 정보를 포함할 수도 있다. 인터 예측 프로세싱 유닛 (120) 은 PU가 I 슬라이스, P 슬라이스, 또는 B 슬라이스 중 어느 것에 있는지에 의존하여 CU의 PU에 대해 상이한 동작들을 수행할 수도 있다. I 슬라이스에서, 모든 PU들이 인트라 예측된다. 따라서, PU가 I 슬라이스에 있으면, 인터 예측 프로세싱 유닛 (120) 은 PU에 대해 인터 예측을 수행하지 않는다.
PU가 P 슬라이스에 있으면, 모션 추정 유닛 (122) 은 PU에 대한 참조 지역을 참조 화상들의 리스트 (예컨대, "RefPicList0") 에서의 참조 화상들에서 검색할 수도 있다. PU에 대한 참조 지역은, 참조 화상 내의, PU의 예측 블록들에 가장 밀접하게 대응하는 샘플들을 포함하는 지역일 수도 있다. 모션 추정 유닛 (122) 은 PU에 대한 참조 지역을 포함하는 참조 화상의 RefPicList0에서의 포지션을 나타내는 참조 인덱스를 생성할 수도 있다. 덧붙여서, 모션 추정 유닛 (122) 은 PU의 코딩 블록 및 참조 지역에 연관된 참조 로케이션 사이의 공간적 변위를 나타내는 모션 벡터를 생성할 수도 있다. 예를 들면, 모션 벡터는 현재 화상에서의 좌표들로부터 참조 화상에서의 좌표들로의 오프셋을 제공하는 2차원 벡터일 수도 있다. 모션 추정 유닛 (122) 은 참조 인덱스 및 모션 벡터를 PU의 모션 정보로서 출력할 수도 있다. 모션 보상 유닛 (124) 은 PU의 모션 벡터에 의해 나타내어진 참조 로케이션에 있는 실제 또는 보간된 샘플들에 기초하여 PU의 예측 블록들을 생성할 수도 있다.
PU가 B 슬라이스에 있다면, 모션 추정 유닛 (122) 은 PU에 대해 단예측 (uni-prediction) 또는 양예측 (bi-prediction) 을 수행할 수도 있다. PU에 대한 단예측을 수행하기 위해, 모션 추정 유닛 (122) 은 PU에 대한 참조 지역을 RefPicList0 또는 제 2 참조 화상 리스트 (예컨대, "RefPicList1") 의 참조 화상들에서 검색할 수도 있다. 모션 추정 유닛 (122) 은, PU의 모션 정보로서, 참조 지역을 포함하는 참조 화상의 RefPicList0 또는 RefPicList1에서의 포지션을 나타내는 참조 인덱스, PU의 예측 블록 및 참조 지역에 연관된 참조 로케이션 사이의 공간적 변위를 나타내는 모션 벡터, 및 참조 화상이 RefPicList0에 있는지 또는 RefPicList1에 있는지를 나타내는 하나 이상의 예측 방향 표시자들을 출력할 수도 있다. 모션 보상 유닛 (124) 은 PU의 모션 벡터에 의해 나타내어진 참조 로케이션에 있는 실제 또는 보간된 샘플들에 적어도 부분적으로 기초하여 PU의 예측 블록들을 생성할 수도 있다.
PU에 대한 양방향 인터 예측을 수행하기 위해, 모션 추정 유닛 (122) 은 그 PU에 대한 참조 지역을 RefPicList0에서의 참조 화상들에서 검색할 수도 있고, 또한 그 PU에 대한 다른 참조 지역을 RefPicList1에서의 참조 화상들에서 검색할 수도 있다. 모션 추정 유닛 (122) 은 참조 지역들을 포함하는 참조 화상들의 RefPicList0 및 RefPicList1에서의 포지션들을 나타내는 참조 인덱스들을 생성할 수도 있다. 덧붙여서, 모션 추정 유닛 (122) 은 그 참조 지역들에 연관된 참조 로케이션들 및 PU의 예측 블록 사이의 공간적 변위들을 나타내는 모션 벡터들을 생성할 수도 있다. PU의 모션 정보는 PU의 참조 인덱스들 및 모션 벡터들을 포함할 수도 있다. 모션 보상 유닛 (124) 은 PU의 모션 벡터들에 의해 나타내어진 참조 로케이션들에 있는 실제 또는 보간된 샘플들에 적어도 부분적으로 기초하여 PU의 예측 블록들을 생성할 수도 있다.
인트라 예측 프로세싱 유닛 (126) 은 PU에 대해 인트라 예측을 수행함으로써 그 PU에 대한 예측 데이터를 생성할 수도 있다. PU에 대한 예측 데이터는 PU에 대한 예측 블록들과 다양한 신택스 엘리먼트들을 포함할 수도 있다. 인트라 예측 프로세싱 유닛 (126) 은 I 슬라이스들, P 슬라이스들, 및 B 슬라이스들에서의 PU들에 대해 인트라 예측을 수행할 수도 있다.
PU에 대해 인트라 예측을 수행하기 위해, 인트라 예측 프로세싱 유닛 (126) 은 PU에 대한 예측 블록들의 다수의 세트들을 생성하기 위해 다수의 인트라 예측 모드들을 사용할 수도 있다. 특정 인트라 예측 모드를 사용하여 인트라 예측을 수행하는 경우, 인트라-예측 프로세싱 유닛 (126) 은 이웃하는 블록들로부터의 샘플들의 특정 세트를 사용하여 PU에 대한 예측 블록들을 생성할 수도 있다. PU들, CU들, 및 CTU 들에 대한 좌측에서 우측으로, 상단에서 하단으로의 인코딩 순서를 가정하면, 이웃하는 블록들은 PU의 상측, 우상측, 좌상측, 또는 좌측에 있을 수도 있다. 인트라 예측 프로세싱 유닛 (126) 은 다양한 수들의 인트라 예측 모드들, 예컨대, 33 개의 방향성 인트라 예측 모드들을 사용할 수도 있다. 일부 예들에서, 인트라 예측 모드들의 수는 PU의 예측 블록들의 사이즈에 의존할 수도 있다.
예측 프로세싱 유닛 (100) 은 CU의 PU들에 대한 예측 데이터를, 그 PU들에 대해 인터 예측 프로세싱 유닛 (120) 에 의해 생성된 예측 데이터 또는 그 PU들에 대해 인트라 예측 프로세싱 유닛 (126) 에 의해 생성된 예측 데이터 중에서 선택할 수도 있다. 일부 예들에서, 예측 프로세싱 유닛 (100) 은 예측 데이터의 세트들의 레이트/왜곡 메트릭들에 기초하여 CU의 PU들에 대한 예측 데이터를 선택한다. 선택된 예측 데이터의 예측 블록들은 본원에서는 선택된 예측 블록들이라고 지칭될 수도 있다.
잔여 생성 유닛 (102) 은, CU의 루마, Cb 및 Cr 코딩 블록 및 그 CU의 PU들의 선택된 예측 루마, Cb 및 Cr 블록들에 기초하여, CU의 루마, Cb 및 Cr 잔여 블록들을 생성할 수도 있다. 예를 들면, 잔여 생성 유닛 (102) 은 CU의 잔여 블록들에서의 각각의 샘플이 그 CU의 코딩 블록에서의 샘플 및 그 CU의 PU의 대응하는 선택된 예측 블록에서의 대응하는 샘플 사이의 차이와 동일한 값을 가지도록 CU의 잔여 블록들을 생성할 수도 있다.
변환 프로세싱 유닛 (104) 은 쿼드트리 구획화를 수행하여 CU의 잔여 블록들을 그 CU의 TU들에 연관된 변환 블록들로 구획할 수도 있다. 따라서, TU가 루마 변환 블록 및 2 개의 대응하는 크로마 변환 블록들에 연관될 수도 있다. CU의 TU들의 루마 및 크로마 변환 블록들의 사이즈들 및 포지션들은 그 CU의 PU들의 예측 블록들의 사이즈들 및 포지션들에 기초할 수도 있거나 또는 기초하지 않을 수도 있다.
변환 프로세싱 유닛 (104) 은 CU의 각각의 TU에 대한 변환 계수 블록들을, 하나 이상의 변환들을 TU의 변환 블록들에 적용함으로써 생성할 수도 있다. 변환 프로세싱 유닛 (104) 은 다양한 변환들을 TU에 연관된 변환 블록에 적용할 수도 있다. 예를 들어, 변환 프로세싱 유닛 (104) 은 이산 코사인 변환 (DCT), 방향성 변환, 또는 개념적으로 유사한 변환을 변환 블록에 적용할 수도 있다. 일부 예들에서, 변환 프로세싱 유닛 (104) 은 변환들을 변환 블록에 적용하지 않는다. 그런 예들에서, 변환 블록은 변환 계수 블록으로서 다루어질 수도 있다.
양자화 유닛 (106) 은 계수 블록에서의 변환 계수들을 양자화할 수도 있다. 양자화 프로세스는 변환 계수들의 일부 또는 전부에 연관된 비트 심도를 감소시킬 수도 있다. 예를 들어, n-비트 변환 계수는 양자화 동안에 m-비트 변환 계수로 버림될 (rounded down) 수도 있으며, 여기서 n은 m보다 크다. 양자화 유닛 (106) 은 CU에 연관된 양자화 파라미터 (QP) 값에 기초하여 그 CU의 TU에 연관된 계수 블록을 양자화할 수도 있다. 비디오 인코더 (20) 는 CU에 연관된 QP 값을 조정함으로써 그 CU에 연관된 계수 블록들에 적용되는 양자화 정도를 조정할 수도 있다. 양자화는 정보의 손실을 도입할 수도 있고, 그러므로, 양자화된 변환 계수들은 원래의 것들보다 낮은 정밀도를 가질 수도 있다.
역 양자화 유닛 (108) 과 역 변환 프로세싱 유닛 (110) 은 계수 블록으로부터 잔여 블록을 복원하기 위해 역 양자화 및 역 변환들을 계수 블록에 각각 적용할 수도 있다. 복원 유닛 (112) 은 TU에 연관된 복원된 변환 블록을 생성하기 위해 복원된 잔여 블록을 예측 프로세싱 유닛 (100) 에 의해 생성된 하나 이상의 예측 블록들로부터의 대응하는 샘플들에 가산할 수도 있다. CU의 각각의 TU에 대한 변환 블록들을 이런 식으로 복원함으로써, 비디오 인코더 (20) 는 CU의 코딩 블록들을 복원할 수도 있다.
필터 유닛 (114) 은 하나 이상의 블록화제거 동작들을 수행하여 CU에 연관된 코딩 블록들에서의 블록화 아티팩트들을 감소시킬 수도 있다. 디코딩된 화상 버퍼 (116) 는, 필터 유닛 (114) 이 복원된 코딩 블록들에 대해 하나 이상의 블록화제거 동작들을 수행한 후에 복원된 코딩 블록들을 저장할 수도 있다. 인터 예측 프로세싱 유닛 (120) 은 다른 화상들의 PU들에 대해 인터 예측을 수행하기 위해 복원된 코딩 블록들을 포함하는 참조 화상을 사용할 수도 있다. 덧붙여서, 인트라 예측 프로세싱 유닛 (126) 은 CU와 동일한 화상에서의 다른 PU들에 대해 인트라 예측을 수행하기 위해 디코딩된 화상 버퍼 (116) 에서의 복원된 코딩 블록들을 사용할 수도 있다.
엔트로피 인코딩 유닛 (118) 은 비디오 인코더 (20) 의 다른 기능성 컴포넌트들로부터 데이터를 수신할 수도 있다. 예를 들어, 엔트로피 인코딩 유닛 (118) 은 양자화 유닛 (106) 으로부터 계수 블록들을 수신할 수도 있고 예측 프로세싱 유닛 (100) 으로부터 신택스 엘리먼트들을 수신할 수도 있다. 엔트로피 인코딩 유닛 (118) 은 데이터에 대해 하나 이상의 엔트로피 인코딩 동작들을 수행하여 엔트로피 인코딩된 데이터를 생성할 수도 있다. 예를 들어, 엔트로피 인코딩 유닛 (118) 은 그 데이터에 대해 CAVLC 동작, CABAC 동작, 가변 대 가변 (variable-to-variable; V2V) 길이 코딩 동작, 신택스 기반 콘텍스트 적응 이진 산술 코딩 (SBAC) 동작, 확률 간격 구획화 엔트로피 (PIPE) 코딩 동작, 지수-골롬 인코딩 동작, 또는 다른 유형의 엔트로피 인코딩 동작을 수행할 수도 있다. 비디오 인코더 (20) 는 엔트로피 인코딩 유닛 (118) 에 의해 생성된 엔트로피 인코딩된 데이터를 포함하는 비트스트림을 출력할 수도 있다.
비디오 인코더 (20) 에 의해 생성된 비트스트림은 전체적으로 비트스트림에 관한 정보를 제공하는 비트스트림 속성들의 세트들을 포함할 수도 있다. 예를 들어, 비디오 인코더 (20) 는 비트스트림에 비트스트림 속성들 SEI 메시지를 포함시킬 수도 있다. 비트스트림 속성들 SEI 메시지는 비트스트림 속성들을 특정하는 신택스 엘리먼트들을 포함할 수도 있다. 다른 예에서, 비디오 인코더 (20) 는 비트스트림에 비트스트림 속성 NAL 유닛을 포함시킬 수도 있다. 비트스트림 속성 NAL 유닛은 비트스트림 속성들을 특정하는 신택스 엘리먼트들을 포함할 수도 있다.
일부 예들에서, 비디오 인코더 (20) 는 비트스트림을 포함하는 기본 스트림을 생성할 수도 있다. 비디오 인코더 (20) 에 의해 생성된 기본 스트림은 전체적으로 기본 스트림에 관한 정보를 제공하는 기본 스트림 속성들의 세트들을 포함할 수도 있다. 예를 들어, 비디오 인코더 (20) 는 기본 스트림에 ESP SEI 메시지를 포함시킬 수도 있다. ESP SEI 메시지는 기본 스트림 속성들을 특정하는 신택스 엘리먼트들을 포함할 수도 있다. 다른 예에서, 비디오 인코더 (20) 는 기본 스트림에 기본 스트림 속성 NAL 유닛을 포함시킬 수도 있다. 기본 스트림 속성 NAL 유닛은 기본 스트림 속성들을 특정하는 신택스 엘리먼트들을 포함할 수도 있다.
도 3은 본 개시물의 기법들을 구현하도록 구성되는 일 예의 비디오 디코더 (30) 를 도시하는 블록도이다. 도 3은 설명의 목적으로 제공되고 본 개시물에서 폭넓게 예시되고 설명된 바와 같은 기법들로 제한하고 있지는 않다. 설명의 목적으로, 본 개시물은 HEVC 코딩의 맥락에서 비디오 디코더 (30) 를 설명한다. 그러나, 본 개시물의 기법들은 다른 코딩 표준들 또는 방법들에 적용가능할 수도 있다.
도 3의 예에서, 비디오 디코더 (30) 는 엔트로피 디코딩 유닛 (150), 예측 프로세싱 유닛 (152), 역 양자화 유닛 (154), 역 변환 프로세싱 유닛 (156), 복원 유닛 (158), 필터 유닛 (160), 및 디코딩된 화상 버퍼 (162) 를 구비한다. 예측 프로세싱 유닛 (152) 은 모션 보상 유닛 (164) 과 인트라 예측 프로세싱 유닛 (166) 을 구비한다. 다른 예들에서, 비디오 디코더 (30) 는 더 많거나, 더 적거나, 또는 상이한 기능성 컴포넌트들을 포함할 수도 있다.
코딩된 화상 버퍼 (coded picture buffer; CPB) (151) 가 비트스트림의 인코딩된 비디오 데이터 (예컨대, NAL 유닛들) 를 수신하고 저장할 수도 있다. 엔트로피 디코딩 유닛 (150) 은 CPB (151) 로부터 NAL 유닛들을 수신하고 그 NAL 유닛들을 파싱하여 비트스트림으로부터 신택스 엘리먼트들을 획득할 수도 있다. 엔트로피 디코딩 유닛 (150) 은 NAL 유닛들에서의 엔트로피 인코딩된 신택스 엘리먼트들을 엔트로피 디코딩할 수도 있다. 예측 프로세싱 유닛 (152), 역 양자화 유닛 (154), 역 변환 프로세싱 유닛 (156), 복원 유닛 (158), 및 필터 유닛 (160) 은 비트스트림으로부터 획득된 신택스 엘리먼트들에 기초하여 디코딩된 비디오 데이터를 생성할 수도 있다.
비트스트림의 NAL 유닛들은 코딩된 슬라이스 NAL 유닛들을 포함할 수도 있다. 비트스트림을 디코딩하는 부분으로서, 엔트로피 디코딩 유닛 (150) 은 코딩된 슬라이스 NAL 유닛들로부터 신택스 엘리먼트들을 파싱 및 엔트로피 디코딩할 수도 있다. 코딩된 슬라이스들의 각각은 슬라이스 헤더 및 슬라이스 데이터를 포함할 수도 있다. 슬라이스 헤더는 슬라이스에 관한 신택스 엘리먼트들을 포함할 수도 있다.
비트스트림으로부터 신택스 엘리먼트들을 디코딩하는 것 외에도, 비디오 디코더 (30) 는 CU에 대해 디코딩 동작을 수행할 수도 있다. CU에 대해 디코딩 동작을 수행함으로써, 비디오 디코더 (30) 는 그 CU의 코딩 블록들을 복원할 수도 있다.
CU에 대해 디코딩 동작을 수행하는 부분으로서, 역 양자화 유닛 (154) 은 그 CU의 TU들에 연관된 계수 블록들을 역 양자화, 즉, 양자화 해제 (de-quantization) 할 수도 있다. 역 양자화 유닛 (154) 은 TU의 CU에 연관된 QP 값을 사용하여 양자화 정도를 결정하고, 비슷하게, 역 양자화 유닛 (154) 에 대해 적용할 역 양자화 정도를 결정할 수도 있다. 다시 말하면, 압축 비율, 즉, 원래의 시퀀스 및 압축된 것을 표현하는데 사용된 비트들의 수의 비율은, 변환 계수들을 양자화하는 경우에 사용된 QP의 값을 조정함으로써 제어될 수도 있다. 압축 비율은 또한 채용된 엔트로피 코딩하는 방법에 의존할 수도 있다.
역 양자화 유닛 (154) 이 계수 블록을 역 양자화한 후, 역 변환 프로세싱 유닛 (156) 은 TU에 연관된 잔여 블록을 생성하기 위하여 하나 이상의 역 변환들을 계수 블록에 적용할 수도 있다. 예를 들어, 역 변환 프로세싱 유닛 (156) 은 역 DCT, 역 정수 변환, 역 카루넨-뢰베 변환 (Karhunen-Loeve transform; KLT), 역 회전 변환, 역 방향성 변환, 또는 다른 역 변환을 계수 블록에 적용할 수도 있다.
PU가 인트라 예측을 사용하여 인코딩되면, 인트라 예측 프로세싱 유닛 (166) 은 PU에 대한 예측 블록들을 생성하기 위해 인트라 예측을 수행할 수도 있다. 인트라 예측 프로세싱 유닛 (166) 은 인트라 예측 모드를 사용하여 공간적으로 이웃하는 PU들의 예측 블록들에 기초하여 PU에 대한 예측 루마, Cb 및 Cr 블록들을 생성할 수도 있다. 인트라 예측 프로세싱 유닛 (166) 은 비트스트림으로부터 디코딩된 하나 이상의 신택스 엘리먼트들에 기초하여 PU에 대한 인트라 예측 모드를 결정할 수도 있다.
예측 프로세싱 유닛 (152) 은 비트스트림으로부터 추출된 신택스 엘리먼트들에 기초하여 제 1 참조 화상 리스트 (RefPicList0) 및 제 2 참조 화상 리스트 (RefPicList1) 를 구성할 수도 있다. 더욱이, PU가 인터 예측을 사용하여 인코딩되면, 엔트로피 디코딩 유닛 (150) 은 그 PU에 대한 모션 정보를 획득할 수도 있다. 모션 보상 유닛 (164) 은, PU의 모션 정보에 기초하여, PU에 대한 하나 이상의 참조 지역들을 결정할 수도 있다. 모션 보상 유닛 (164) 은, PU에 대한 하나 이상의 참조 블록들에서의 샘플들에 기초하여, PU에 대한 예측 루마, Cb 및 Cr 블록들을 생성할 수도 있다.
복원 유닛 (158) 은, 적용가능한 것으로서, CU의 TU들에 연관된 루마, Cb 및 Cr 변환 블록들과 그 CU의 PU들의 예측 루마, Cb 및 Cr 블록들, 즉 인트라 예측 데이터 또는 인터 예측 데이터 중 어느 하나를 사용하여 그 CU의 루마, Cb 및 Cr 코딩 블록들을 복원할 수도 있다. 예를 들어, 복원 유닛 (158) 은 루마, Cb 및 Cr 변환 블록들의 샘플들을 예측 루마, Cb 및 Cr 블록들의 대응하는 샘플들에 가산하여 CU의 루마, Cb 및 Cr 코딩 블록들을 복원할 수도 있다.
필터 유닛 (160) 은 블록화제거 동작을 수행하여 CU의 루마, Cb 및 Cr 코딩 블록들에 연관된 블록화 아티팩트들을 감소시킬 수도 있다. 비디오 디코더 (30) 는 CU의 루마, Cb 및 Cr 코딩 블록들을 디코딩된 화상 버퍼 (162) 에 저장할 수도 있다. 디코딩된 화상 버퍼 (162) 는 후속하는 모션 보상, 인트라 예측, 및 디스플레이 디바이스, 이를테면 도 1의 디스플레이 디바이스 (32) 상의 프레젠테이션을 위해 참조 화상들을 제공할 수도 있다. 예를 들면, 비디오 디코더 (30) 는, 디코딩된 화상 버퍼 (162) 에서의 루마, Cb 및 Cr 블록들에 기초하여, 다른 CU들의 PU들에 대해 인트라 예측 또는 인터 예측 동작들을 수행할 수도 있다. 이런 식으로, 비디오 디코더 (30) 는, 비트스트림으로부터, 중대한 루마 계수 블록의 변환 계수 레벨들을 추출하며, 그 변환 계수 레벨들을 역 양자화하며, 그 변환 계수 레벨들에 변환을 적용하여 변환 블록을 생성하며, 그 변환 블록에 적어도 부분적으로 기초하여, 코딩 블록을 생성하고, 그 코딩 블록을 디스플레이를 위해 출력할 수도 있다.
본 개시물의 다른 곳에서 나타낸 바와 같이, 비디오 인코더 (20) 는 ESP SEI 메시지에서 기본 스트림의 ESP들을 시그널링할 수도 있다. ESP SEI 메시지는 그 SEI 메시지를 포함하는 전체 기본 스트림에 적용가능한 정보를 제공한다. 일부 예들에서, ESP SEI 메시지는 기본 스트림의 제 1 액세스 유닛에만 존재한다. 더욱이, 일부 예들에서, ESP SEI 메시지는 네스트식 (nested) SEI 메시지가 아니다. 다시 말하면, 그런 예들에서, ESP SEI 메시지를 포함하는 SEI NAL 유닛은 다른 SEI 메시지들을 포함하지 않는다.
NAL 유닛의 nuh_reserved_temporal_id_plus1 신택스 엘리먼트는 NAL 유닛의 시간적 식별자 더하기 1을 나타낼 수도 있다. 일부 예들에서, 기본 스트림 속성들 (ESP) SEI 메시지를 포함하는 SEI NAL 유닛의 nuh_reserved_temporal_id_plus1 신택스 엘리먼트는 항상 0과 동일할 수도 있다.
ESP SEI 메시지가 기본 스트림 내의 다양한 로케이션들에서 시그널링될 수도 있다. 예를 들어, ESP SEI 메시지가 비트스트림의 제 1 액세스 유닛에 존재할 수도 있다. 다르게 말하면, 비디오 코딩 사양이 ESP SEI 메시지가 비트스트림의 제 1 액세스 유닛에 존재하는 것을 요구할 수도 있다. 다른 예에서, ESP SEI 메시지가 비트스트림에서의 임의의 RAP 액세스 유닛에 존재할 수도 있다. 다르게 말하면, 비디오 코딩 사양이 ESP SEI 메시지가 비트스트림에서의 임의의 RAP 액세스 유닛에 존재하는 것을 허용할 수도 있다.
다른 예에서, ESP SEI 메시지가 비트스트림에서의 임의의 액세스 유닛에 존재할 수도 있다. 다르게 말하면, 비디오 코딩 사양이 ESP SEI 메시지가 비트스트림에서의 임의의 액세스 유닛에 존재하는 것을 허용할 수도 있다. 더욱이, 다른 예에서, ESP SEI 메시지가 SEI NAL 유닛에 존재하는 경우, 비디오 코딩 사양은 ESP SEI 메시지가 SEI NAL 유닛에서의 제 1 SEI 메시지인 것을 요구한다. 다른 예에서, 비디오 코딩 사양이 ESP SEI 메시지를 포함하는 SEI NAL 유닛이 다른 SEI 메시지들을 포함하지 않을 것을 요구할 수도 있다. 더욱이, 다른 예에서, SEI NAL 유닛이 ESP SEI 메시지를 포함하는 경우, 비디오 코딩 사양이 SEI NAL 유닛이 SEI NAL 유닛을 포함하는 액세스 유닛에서의 제 1 SEI NAL 유닛인 것을 요구한다.
다른 예에서, 비디오 코딩 사양이 기본 스트림의 제 1 액세스 유닛이 ESP SEI 메시지를 포함하는 SEI NAL 유닛을 포함할 것을 요구한다. 다른 예에서, 비디오 코딩 사양이 기본 스트림의 제 1 액세스 유닛이 ESP SEI 메시지만을 포함하는 SEI NAL 유닛을 포함할 것을 요구한다.
아래의 표 1은 ESP SEI 메시지에 대한 일 예의 신택스를 도시한다. 아래의 표 1 및 본 개시물의 다른 신택스 표들에서, n이 음이 아닌 정수인 형태 u(n)의 기술자를 갖는 신택스 엘리먼트는, 길이 n의 부호없는 값들이다. ESP SEI 메시지의 신택스 엘리먼트들의 시맨틱스의 다음의 논의에서, 용어 "기본 스트림"은 "기본 스트림 속성들 SEI 메시지를 포함하는 기본 스트림"을 지칭할 수도 있다. 다른 예들에서, ESP SEI 메시지는, 표 1의 것들보다 더 많거나, 더 적거나, 또는 상이한 신택스 엘리먼트들을 포함할 수도 있다.
표 1
Figure 112015039319128-pct00001
VPS가 general_profile_space 신택스 엘리먼트, general_profile_idc 신택스 엘리먼트, general_profile_compatibility_flag[i] 신택스 엘리먼트 (즉, 복수의 일반 프로파일 호환성 플래그들), 및 general_reserved_zero_16bits 신택스 엘리먼트를 포함할 수도 있다. general_profile_space 신택스 엘리먼트는 general_profile_idc 신택스 엘리먼트와 0 내지 31의 범위의 i의 모든 값들에 대한 general_profile_compatibility_flag[i] 신택스 엘리먼트의 해석을 위한 콘텍스트를 특정한다. general_profile_space 신택스 엘리먼트가 0과 동일한 경우, general_profile_idc 신택스 엘리먼트는 CVS가 준수하는 프로파일을 나타낸다. HEVC 규격 초안 8의 부록 A는 프로파일들의 일 예의 세트를 설명한다. general_profile_space 신택스 엘리먼트가 0과 동일하고 general_profile_compatibility_flag[i] 신택스 엘리먼트가 1과 동일한 경우, general_profile_compatibility_flag[i] 신택스 엘리먼트는 i와 동일한 general_profile_idc 신택스 엘리먼트에 의해 나타내어진 프로파일을 CVS가 준수한다는 것을 나타낸다. general_profile_space 신택스 엘리먼트가 0과 동일한 경우, general_profile_idc[general_profile_idc]는 1과 동일하다. "general_profile_idc[general_profile_idc]"는 general_profile_idc 신택스 엘리먼트에 의해 특정된 인덱스 값에 연관된 general_profile_idc 신택스 엘리먼트를 나타낸다. 일부 예들에서, general_profile_compatibility_flag[i] 신택스 엘리먼트는 general_profile_idc의 허용된 값으로서 특정되지 않은 i의 임의의 값에 대해 0과 동일하다. HEVC 규격 초안 8의 부록 A는 general_profile_idc 신택스 엘리먼트의 허용된 값들의 일 예의 세트를 특정한다. general_reserved_zero_16bits 신택스 엘리먼트는 비트스트림들에서 0과 동일하다. general_reserved_zero_16bits 신택스 엘리먼트들의 특정한 값들이 HEVC의 확장본들을 위해 사용될 수도 있다.
표 1의 예에서, 1과 동일한 es_profile_unchanging_flag 신택스 엘리먼트는, general_profile_idc 신택스 엘리먼트, 0 내지 31의 범위의 i에 대한 general_profile_compatibility_flag[i] 신택스 엘리먼트, 및 general_reserved_zero_16bits 신택스 엘리먼트의 값들이 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하다는 것을 나타낸다. 0과 동일한 es_profile_unchanging_flag 신택스 엘리먼트는, general_profile_idc 신택스 엘리먼트, 0 내지 31의 범위의 i에 대한 general_profile_compatibility_flag[i] 신택스 엘리먼트, 및 general_reserved_zero_16bits 신택스 엘리먼트의 값들이 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하지 않다는 것을 나타낸다.
VPS가 general_tier_flag 신택스 엘리먼트 및 general_level_idc 신택스 엘리먼트를 포함하는 profile_tier_level 신택스 구조를 포함할 수도 있다. general_tier_flag 신택스 엘리먼트는 general_level_idc 신택스 엘리먼트의 해석을 위한 티어 콘텍스트를 특정한다. general_level_idc 신택스 엘리먼트는 CVS가 준수하는 레벨을 나타낸다. HEVC 규격 초안 8의 부록 A는 general_tier_flag 신택스 엘리먼트에 의해 특정된 티어 콘텍스트에 기초하여 general_level_idc 신택스 엘리먼트의 일 예의 해석을 특정한다.
표 1의 예에서, 1과 동일한 es_tier_level_unchanging_flag 신택스 엘리먼트는, general_tier_flag 신택스 엘리먼트 및 general_level_idc 신택스 엘리먼트의 값들이 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하다는 것을 나타낸다. 0과 동일한 es_tier_level_unchanging_flag 신택스 엘리먼트는, general_tier_flag 신택스 엘리먼트 및 general_level_idc 신택스 엘리먼트의 값들이 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하지 않다는 것을 나타낸다. 따라서, es_tier_level_unchanging_flag 신택스 엘리먼트는, general_tier_flag 신택스 엘리먼트 및 general_level_idc 신택스 엘리먼트의 값들이 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 동일한지의 여부를 나타낼 수도 있다.
SPS가 pic_width_in_luma_samples 신택스 엘리먼트 및 pic_height_in_luma_samples 신택스 엘리먼트를 포함할 수도 있다. pic_width_in_luma_samples는 루마 샘플들의 유닛으로 각각의 디코딩된 화상의 폭을 특정할 수도 있다. pic_height_in_luma_samples는 루마 샘플들의 유닛으로 각각의 디코딩된 화상의 높이를 특정할 수도 있다. 표 1의 예에서, 1과 동일한 es_spatial_resolution_unchanging_flag 신택스 엘리먼트는, pic_width_in_luma_samples 신택스 엘리먼트 및 pic_height_in_luma_samples 신택스 엘리먼트의 값들이 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하다는 것을 나타낸다. 0과 동일한 es_spatial_resolution_unchanging_flag 신택스 엘리먼트는, pic_width_in_luma_samples 신택스 엘리먼트 및 pic_height_in_luma_samples 신택스 엘리먼트의 값들이 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하지 않다는 것을 나타낸다. 따라서, es_spatial_resolution_unchanging_flag 신택스 엘리먼트는 기본 스트림의 모든 CVS들이 동일한 공간적 레졸루션을 갖는지의 여부를 나타낼 수도 있다.
본 개시물에서 나타낸 바와 같이, 시간적 서브-계층이 계층 내의 다른 화상들에 대한 참조 없이 디코딩될 수도 있는 그 계층 내의 화상들의 서브세트를 말할 수도 있다. 표 1의 예에서, 1과 동일한 es_num_sub_layers_unchanging_flag 신택스 엘리먼트는, 시간적 서브-계층들의 수가 기본 스트림에서의 모든 CVS들에 대해 동일하다는 것을 나타낸다. 0과 동일한 es_num_sub_layers_unchanging_flag 신택스 엘리먼트는 시간적 서브-계층들의 수가 기본 스트림에서의 모든 CVS들에 대해 동일하지 않다는 것을 나타낸다. 따라서, es_num_sub_layers_unchanging_flag 신택스 엘리먼트는 기본 스트림의 시간적 서브-계층들의 수가 기본 스트림에서의 모든 CVS들에 대해 동일한지의 여부를 나타낼 수도 있다.
더욱이, 표 1의 예에서, 1과 동일한 es_max_bitrate_unchanging_flag 신택스 엘리먼트는 최대 비트레이트가 기본 스트림에서의 모든 CVS들에 대해 동일하다는 것을 나타낸다. 0과 동일한 es_max_bitrate_unchanging_flag 신택스 엘리먼트는 최대 비트레이트가 기본 스트림에서의 모든 CVS들에 대해 동일하지 않다는 것을 나타낸다.
최대 화상 레이트는 초 당 화상들의 최대 수를 나타낼 수도 있다. 표 1의 예에서, 1과 동일한 es_max_pic_rate_unchanging_flag 신택스 엘리먼트는 최대 화상 레이트가 기본 스트림에서의 모든 CVS들에 대해 동일하다는 것을 나타낸다. 0과 동일한 es_max_pic_rate_unchanging_flag 신택스 엘리먼트는 최대 화상 레이트가 기본 스트림에서의 모든 CVS들에 대해 동일하지 않다는 것을 나타낸다. 따라서, es_max_pic_rate_unchanging_flag 신택스 엘리먼트는 최대 화상 레이트가 기본 스트림에서의 모든 CVS들에 대해 동일한지의 여부를 나타낼 수도 있다.
SPS가 chroma_format_idc 신택스 엘리먼트를 포함할 수도 있다. SPS의 chroma_format_idc 신택스 엘리먼트는 크로마 샘플링을 특정할 수도 있다. HEVC 규격 초안 8에서, chroma_format_idc 신택스 엘리먼트는 HEVC 규격 초안 8의 하위절 6.2에서 특정된 루마 샘플링에 비교하여 크로마 샘플링을 특정한다. 현재 화상에 대해 활성화된 SPS의 chroma_format_idc 신택스 엘리먼트가 0과 동일하면, 현재 화상은 하나의 샘플 어레이 (예컨대, SL) 로 구성될 수도 있다. 그렇지 않고, chroma_format_idc 신택스 엘리먼트가 0과 동일하지 않으면, 현재 화상은 세 개의 샘플 어레이들 (예컨대, SL, SCb, 및 SCr) 을 포함할 수도 있다. 표 1의 예에서, 1과 동일한 es_color_format_unchanging_flag 신택스 엘리먼트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 chroma_format_idc의 값이 동일하다는 것을 나타낸다. 0과 동일한 es_color_format_unchanging_flag 신택스 엘리먼트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 chroma_format_idc 신택스 엘리먼트의 값이 동일하지 않다는 것을 나타낸다. 따라서, es_color_format_unchanging_flag 신택스 엘리먼트는 기본 스트림에서의 모든 CVS들이 동일한 컬러 포맷을 갖는지의 여부를 나타낼 수도 있다.
SPS가 aspect_ratio_idc 신택스 엘리먼트를 포함하는 VUI 파라미터들 신택스 구조를 포함할 수도 있다. aspect_ratio_idc 신택스 엘리먼트는 루마 샘플들의 샘플 애스팩트 비의 값 (예컨대, 1:1, 12:11, 10:11, 16:11, 40:33 등) 을 특정한다. HEVC 규격 초안 8의 표 E-1은 aspect_ratio_idc 신택스 엘리먼트의 일 예의 해석을 나타낸다. 더욱이, aspect_ratio_idc 신택스 엘리먼트가 Extended_SAR을 나타내는 경우 (예컨대, aspect_ratio_idc 신택스 엘리먼트가 255와 동일한 경우), VUI 파라미터들 신택스 구조는 sar_width 신택스 엘리먼트 및 sar_height 신택스 엘리먼트를 포함할 수도 있다. sar_width 신택스 엘리먼트는 샘플 애스팩트 비의 수평 사이즈를 (임의적 (arbitrary) 유닛들로) 나타낸다. sar_height 신택스 엘리먼트는 sar_width 신택스 엘리먼트를 위해 사용되는 동일한 임의적 유닛들에서 샘플 애스팩트 비의 수직 사이즈를 나타낸다.
표 1의 예에서, 1과 동일한 es_aspect_ratio_unchanging_flag 신택스 엘리먼트는, aspect_ratio_idc 신택스 엘리먼트의 값이 기본 스트림이 디코딩되는 경우에 활성화되는 모든 시퀀스 파라미터 세트들에 대해 동일하다는 것과, aspect_ratio_idc가 Extended_SAR과 동일한 경우, sar_width 신택스 엘리먼트 및 sar_height 신택스 엘리먼트의 값들이 기본 스트림이 디코딩되는 경우에 활성화되는 모든 시퀀스 파라미터 세트들에 대해 각각 동일하다는 것을 나타낸다. 0과 동일한 es_aspect_ratio_unchanging_flag 신택스 엘리먼트는, aspect_ratio_idc 신택스 엘리먼트의 값이 기본 스트림이 디코딩되는 경우에 활성화되는 모든 시퀀스 파라미터 세트들에 대해 동일하지 않거나, 또는 sar_width 신택스 엘리먼트 및 sar_height 신택스 엘리먼트의 값들이 기본 스트림이 디코딩되는 경우에 활성화되는 모든 시퀀스 파라미터 세트들에 대해 각각 동일하지 않다는 것을 나타낸다. 따라서, es_aspect_ratio_unchanging_flag 신택스 엘리먼트는 기본 스트림에서의 모든 CVS들이 동일한 샘플 애스팩트 비를 갖는지의 여부를 나타낼 수도 있다.
SPS가 bit_depth_minus8 신택스 엘리먼트 및 bit_depth_chroma_minus8 신택스 엘리먼트를 포함할 수도 있다. bit_depth_minus8 신택스 엘리먼트 더하기 8은, 루마 어레이의 샘플들의 비트 심도 및 루마 양자화 파라미터 범위 오프세트의 값을 특정한다. bit_depth_chroma_minus8 신택스 엘리먼트 더하기 8은, 크로마 어레이들의 샘플들의 비트 심도 및 크로마 양자화 파라미터 범위 오프셋의 값을 특정한다. 표 1의 예에서, 1과 동일한 es_bit_depth_unchanging_flag 신택스 엘리먼트는 bit_depth_luma_minus8 신택스 엘리먼트 및 bit_depth_chroma_minus8 신택스 엘리먼트의 값들이 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하다는 것을 나타낸다. 0과 동일한 es_bit_depth_unchanging_flag 신택스 엘리먼트는, bit_depth_luma_minus8 신택스 엘리먼트 및 bit_depth_chroma_minus8 신택스 엘리먼트의 값들이 기본 스트림이 디코딩되는 경우에 활성화되는 모든 시퀀스 파라미터 세트들에 대해 각각 동일하지 않다는 것을 나타낸다. 따라서, es_bit_depth_unchanging_flag 신택스 엘리먼트는 기본 스트림에서의 모든 CVS들이 루마 및 크로마에 대해 비트 심도들의 동일한 세트를 갖는지의 여부를 나타낼 수도 있다.
더욱이, 표 1의 예에서, 1과 동일한 es_full_random_access_enabled_flag 신택스 엘리먼트는, RAP 액세스 유닛 전의 모든 액세스 유닛들을 버림으로써 기본 스트림에서의 각각의 RAP 액세스 유닛의 포지션에서 랜덤 액세스를 수행하는 것과, RAP 화상과 디코딩 순서에서의 모든 후속 비-TFD 화상들을 올바르게 디코딩하는 것이 가능하다는 것, 즉, 각각의 RAP 액세스 유닛에 대해, RAP 액세스 유닛 전의 모든 액세스 유닛들이 버려지고 기본 스트림의 남아 있는 부분이 디코딩되는 경우, 각각의 파라미터 세트는 그것이 활성화되는 것을 필요로 하는 경우 기본 스트림에서 여전히 이용가능하다는 것을 나타낸다. 0과 동일한 es_full_random_access_enabled_flag 신택스 엘리먼트는, RAP 액세스 유닛 전의 모든 액세스 유닛들을 버림으로써 기본 스트림에서의 각각의 RAP 액세스 유닛의 포지션에서 랜덤 액세스를 수행하는 것이 가능하지 않다는 것 및/또는 RAP 화상과 디코딩 순서에서의 모든 후속 비-TFD 화상들을 올바르게 디코딩하는 것이 가능하지 않다는 것을 나타낸다. 따라서, es_full_random_access_enabled_flag 신택스 엘리먼트는 기본 스트림에서의 파라미터 세트들의 존재가 완전한 랜덤 접근성을 가능하게 하는지의 여부를 나타낼 수도 있다. 이는 위의 랜덤 액세스가 임의의 RAP 액세스 유닛에서 수행되는 경우, 각각의 파라미터 세트는 그것이 활성화되는 것을 필요로 할 때 비트스트림에서 이용가능한 것을 필요로 할 수도 있다.
표 1의 예에서, 1과 동일한 es_all_vps_in_first_au_flag 신택스 엘리먼트는, 기본 스트림이 디코딩되는 경우에 활성화되는 모든 VPS들이 기본 스트림에서의 제 1 액세스 유닛에 존재한다는 것을 나타낸다. 0과 동일한 es_all_vps_in_first_au_flag 신택스 엘리먼트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 VPS들이 기본 스트림에서의 제 1 액세스 유닛에 존재하는 것은 아니라는 것을 나타낸다. es_all_vps_in_first_au_flag 신택스 엘리먼트가 1과 동일한 경우, 기본 스트림에서의 다른 액세스 유닛들에서 반복되는 VPS들이 (예컨대, 에러 내성 목적으로) 여전히 있을 수도 있다. 그러나, 반복된 VPS들 중에는 임의의 VPS 업데이트가 없을 수도 있다. 따라서, es_all_vps_in_first_au_flag 신택스 엘리먼트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 VPS들이 기본 스트림에서의 제 1 액세스 유닛에 존재하는지의 여부를 나타낼 수도 있다.
VPS가 그 VPS를 식별하는 video_parameter_set_id 신택스 엘리먼트를 포함할 수도 있다. SPS가 그 SPS를 위한 사용에서 VPS를 식별하는 video_parameter_set_id 신택스 엘리먼트를 포함할 수도 있다. 표 1의 예에서, 1과 동일한 es_no_vps_update_flag 신택스 엘리먼트는 VPS NAL 유닛에서의 video_parameter_set_id 신택스 엘리먼트를 변경하는 일 없이 기본 스트림에서의 적어도 하나의 VPS의 콘텐츠가 변경된다는 것을 나타낸다. 0과 동일한 es_no_vps_update_flag 신택스 엘리먼트는 VPS NAL 유닛에서의 video_parameter_set_id 신택스 엘리먼트를 변경하는 일 없이 기본 스트림에서의 VPS의 콘텐츠가 변경되지 않는다는 것을 나타낸다. 따라서, es_no_vps_update_flag는 VPS NAL 유닛에서의 video_parameter_set_id 신택스 엘리먼트를 변경하는 일 없이 기본 스트림에서의 적어도 하나의 VPS의 콘텐츠가 변경되는지의 여부를 나타낼 수도 있다.
더욱이, 표 1의 예에서, 1과 동일한 es_all_sps_in_first_au_flag 신택스 엘리먼트는, 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들이 기본 스트림의 제 1 액세스 유닛에 존재한다는 것을 나타낸다. 0과 동일한 es_all_sps_in_first_au_flag 신택스 엘리먼트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들이 기본 스트림의 제 1 액세스 유닛에 존재하는 것은 아니라는 것을 나타낸다. es_all_sps_in_first_au_flag 신택스 엘리먼트가 1과 동일한 경우, 기본 스트림에서의 다른 액세스 유닛들에서 반복되는 SPS들이 (예컨대, 에러 내성 목적으로) 여전히 있을 수도 있다. 그러나, 반복된 SPS들 중에는 임의의 SPS 업데이트가 없다. 따라서, es_all_sps_in_first_au_flag 신택스 엘리먼트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들이 기본 스트림에서의 제 1 액세스 유닛에 존재하는지의 여부를 나타낼 수도 있다.
SPS가 그 SPS를 식별하는 seq_parameter_set_id 신택스 엘리먼트를 포함할 수도 있다. PPS가 그 PPS를 위한 사용에서 SPS를 식별하는 seq_parameter_set_id 신택스 엘리먼트를 포함할 수도 있다. 표 1의 예에서, 1과 동일한 es_no_sps_update_flag 신택스 엘리먼트는 SPS NAL 유닛에서의 seq_parameter_set_id 신택스 엘리먼트를 변경하는 일 없이 기본 스트림에서의 적어도 하나의 SPS의 콘텐츠가 변경된다는 것을 나타낸다. 0과 동일한 es_no_sps_update_flag 신택스 엘리먼트는 SPS NAL 유닛에서의 seq_parameter_set_id를 변경하는 일 없이 기본 스트림에서의 SPS의 콘텐츠가 변경되지 않는다는 것을 나타낸다. 따라서, es_no_sps_update_flag 신택스 엘리먼트는 동일한 SPS 식별자가 사용되지만 적어도 하나의 SPS가 기본 스트림에서 업데이트되는지의 여부를 나타낸다.
더욱이, 표 1의 예에서, 1과 동일한 es_all_pps_in_first_au_flag 신택스 엘리먼트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 PPS들이 기본 스트림에서의 제 1 액세스 유닛에 존재한다는 것을 나타낸다. 0과 동일한 es_all_pps_in_first_au_flag 신택스 엘리먼트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 PPS들이 기본 스트림에서의 제 1 액세스 유닛에 존재하는 것은 아니라는 것을 나타낸다. es_all_pps_in_first_au_flag 신택스 엘리먼트가 1과 동일한 경우, 기본 스트림에서의 다른 액세스 유닛들에서 반복되는 PPS들이 (예컨대, 에러 내성 목적으로) 여전히 있을 수도 있다. 그러나, 반복된 PPS들 중에는 임의의 PPS 업데이트가 없을 수도 있다. 따라서, es_all_pps_in_first_au_flag 신택스 엘리먼트는 모든 PPS들이 기본 스트림의 시작부분에 존재하는지의 여부를 나타낼 수도 있다.
PPS가 그 PPS를 식별하는 pic_parameter_set_id 신택스 엘리먼트를 포함할 수도 있다. 슬라이스의 슬라이스 헤더가 그 슬라이스를 위한 사용에서 PPS를 식별하는 pic_parameter_set_id 신택스 엘리먼트를 포함할 수도 있다. 표 1의 예에서, 1과 동일한 es_no_pps_update_flag 신택스 엘리먼트는 PPS NAL 유닛에서의 pic_parameter_set_id 신택스 엘리먼트를 변경하는 일 없이 기본 스트림에서의 적어도 하나의 PPS의 콘텐츠가 변경된다는 것을 나타낸다. 0과 동일한 es_no_pps_update_flag 신택스 엘리먼트는 PPS NAL 유닛에서의 pic_parameter_set_id를 변경하는 일 없이 기본 스트림에서의 PPS의 콘텐츠가 변경되지 않는다는 것을 나타낸다. 따라서, es_no_pps_update_flag 신택스 엘리먼트는 기본 스트림에서 동일한 PPS 식별자를 사용하지만 적어도 하나의 PPS가 변경되는지의 여부를 나타낼 수도 있다.
SPS가 field_seq_flag 신택스 엘리먼트를 포함하는 VUI 파라미터들 신택스 구조를 포함할 수도 있다. field_seq_flag 신택스 엘리먼트는 CVS가 필드들을 표현하는 화상들을 전달하는지의 여부를 특정할 수도 있고, 필드 표시 SEI 메시지가 CVS의 모든 액세스 유닛에 존재할 것인지의 여부를 특정한다. 대체로, 필드 (즉, "비디오 필드") 가 기수 또는 우수 번호의 라인들을 표현할 수도 있다. 필드들의 사용은 인터레이싱을 가능하게 할 수도 있다. HEVC 규격 초안 8의 하위절 D.1.19는 필드 표시 SEI 메시지를 위한 일 예의 신택스를 제공한다. HEVC 규격 초안 8의 하위절 D.2.19는 필드 표시 SEI 메시지를 위한 예의 시맨틱스를 제공한다. 표 1의 예에서, 1과 동일한 es_progressive_frames_only_flag 신택스 엘리먼트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 field_seq_flag 신택스 엘리먼트의 값이 0과 동일하다는 것과 기본 스트림에는 필드 표시 SEI 메시지가 없다는 것을 나타낸다. 0과 동일한 es_progressive_frames_only_flag 신택스 엘리먼트는 기본 스트림에는 적어도 하나의 필드 표시 SEI 메시지가 있다는 것을 나타낸다. 따라서, es_progressive_frames_only_flag 신택스 엘리먼트는 기본 스트림에서의 모든 CVS들이 프레임 화상들에서 코딩된 프로그레시브 프레임들만을 포함하는지의 여부를 나타낼 수도 있다.
프레임 패킹 배열 SEI 메시지가 입체 비디오를 HEVC 비트스트림으로 패킹하는 것에 관한 정보를 제공할 수도 있다. Rec. ITU-T H.264 | ISO/IEC 14496-10의 하위절 D.1.25는 프레임 패킹 배열 SEI 메시지를 위한 일 예의 신택스를 제공한다. 표 1의 예에서, 1과 동일한 es_unpacked_frames_only_flag 신택스 엘리먼트는 기본 스트림에는 프레임 패킹 배열 SEI 메시지가 없다는 것을 나타낸다. 0과 동일한 es_unpacked_frames_only_flag 신택스 엘리먼트는 기본 스트림에는 적어도 하나의 프레임 패킹 배열 SEI 메시지가 있다는 것을 나타낸다. 따라서, es_unpacked_frames_only_flag 신택스 엘리먼트는 기본 스트림에서의 모든 CVS들이 프레임 패킹 배열 SEI 메시지들을 포함하지 않는지의 여부를 나타낼 수도 있다.
PPS가 tiles_enabled_flag 신택스 엘리먼트를 포함할 수도 있다. PPS의 tiles_enabled_flag 신택스 엘리먼트는 PPS를 참조하는 각각의 화상에 하나를 초과하는 타일들이 있을 수도 있는지의 여부를 특정할 수도 있다. 화상의 타일들은 그 화상을 통과하는 수평 및/또는 수직 타일 경계들에 의해 정의된다. 화상의 타일들은 래스터 스캔 순서에 따라 코딩되고 각각의 타일 내의 CTB들이 또한 래스터 스캔 순서에 따라 코딩된다. 더욱이, SPS가 tiles_fixed_structure_flag 신택스 엘리먼트를 포함하는 VUI 파라미터들 신택스 구조를 포함할 수도 있다. tiles_fixed_structure_flag 신택스 엘리먼트는 CVS에서의 액티브인 각각의 PPS가 화상들의 타일 구조를 정의하는 신택스 엘리먼트들 (예컨대, num_tile_columns_minus1, num_tile_rows_minus1, uniform_spacing_flag, column_width_minus1[i], row_height_minus1[i], 및 loop_filter_across_tiles_enabled_flag) 의 동일한 값을 갖는지의 여부를 나타낸다. num_columns_minus1 신택스 엘리먼트 더하기 1은, 화상을 구획하는 타일 열들의 수를 특정한다. num_tile_rows_minus1 신택스 엘리먼트 더하기 1은, 화상을 구획하는 타일 행들의 수를 특정한다. uniform_spacing_flag 신택스 엘리먼트는 열 경계들과 또한 행 경계들이 화상 전체에 걸쳐 균일하게 분포하는지의 여부를 나타낸다. column_width_minus1[i] 신택스 엘리먼트 더하기 1은, 코딩 트리 블록들의 유닛으로 i번째 타일 열의 폭을 특정한다. row_height_minus1[i] 신택스 엘리먼트 더하기 1은, 코딩 트리 블록들의 유닛으로 i번째 타일 행의 높이를 특정한다. loop_filter_across_tiles_enabled_flag는 루프-내 (in-loop) 필터링 동작들이 타일 경계들을 가로질러 수행되는지의 여부를 나타낸다. 본 개시물의 다른 곳에서 설명되는 도 4는, 비디오 코딩에서의 타일들의 사용을 설명한다.
표 1의 예에서, 1과 동일한 es_tiles_unchanging_flag 신택스 엘리먼트는, 기본 스트림이 디코딩되는 경우에 활성화되는 모든 PPS들에 대해 tiles_enabled_flag 신택스 엘리먼트의 값이 동일하고, tiles_enabled_flag 신택스 엘리먼트의 값이 1과 동일한 경우, 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 tiles_fixed_structure_flag 신택스 엘리먼트의 값이 동일하다는 것을 나타낸다. 0과 동일한 es_tiles_unchanging_flag 신택스 엘리먼트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 PPS들에 대해 tiles_enabled_flag 신택스 엘리먼트의 값이 동일하지 않거나, 또는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 tiles_fixed_structure_flag 신택스 엘리먼트의 값이 동일하지 않다는 것을 나타낸다. 따라서, es_tiles_unchanging_flag 신택스 엘리먼트는 기본 스트림에서의 모든 CVS들이 동일한 타일 구성을 갖는지의 여부를 나타낼 수도 있다.
더욱이, PPS가 entropy_coding_sync_enabled_flag 신택스 엘리먼트를 포함할 수도 있다. PPS의 entropy_coding_sync_enabled_flag 신택스 엘리먼트는, 그 PPS를 참조하는 각각의 화상의 각각의 타일에서의 코딩 트리 블록들의 행의 제 1 코딩 트리 블록을 디코딩하기 전에 콘텍스트 변수들에 대한 특정 동기화 프로세스가 호출되고 그 PPS를 참조하는 각각의 화상의 각각의 타일에서의 코딩 트리 블록들의 행의 두 개의 코딩 트리 블록들을 디코딩한 후에 콘텍스트 변수들에 대한 특정 기억 프로세스가 호출되는지의 여부를 나타낼 수도 있다. 이 특정 동기화 프로세스 및 특정 기억 프로세스는 파면 병렬 프로세싱 (wavefront parallel processing; WPP) 을 가능하게 할 수도 있다. WPP에서, 화상에서의 CTB들의 각각의 행이 "WPP 파 (wave)"이다. 비디오 코더가 화상을 코딩하는데 WPP를 사용하는 경우, 비디오 코더가 바로 상위의 (immediately higher) WPP 파의 둘 이상의 CTB들을 코딩한 후에 비디오 코더는 좌측부터 우측으로 WPP 파의 CTB들의 코딩을 시작할 수도 있다. 본 개시물의 다른 곳에서 설명되는 도 5는, 화상의 WPP 코딩을 예시하는 개념도이다.
표 1의 예에서, 1과 동일한 es_wpp_unchanging_flag 신택스 엘리먼트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 PPS들에 대해 entropy_coding_sync_enabled_flag 신택스 엘리먼트들의 값들이 동일하다는 것을 나타낸다. 0과 동일한 es_wpp_unchanging_flag 신택스 엘리먼트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 PPS들에 대해 entropy_coding_sync_enabled_flag 신택스 엘리먼트들의 값들이 동일하지 않다는 것을 나타낸다. 따라서, es_wpp_unchanging_flag 신택스 엘리먼트는 기본 스트림에서의 모든 CVS들이 파면 병렬 프로세싱을 사용하는지의 여부를 나타낼 수도 있다.
dependent_slices_enabled_flag 신택스 엘리먼트는 dependent_slice_flag 신택스 엘리먼트들이 PPS를 참조하는 코딩된 화상들에 대한 슬라이스 헤더들에 존재하는지의 여부를 특정하는 PPS에서의 신택스 엘리먼트이다. 슬라이스 헤더의 dependent_slice_flag 신택스 엘리먼트는 슬라이스 헤더에 존재하지 않는 각각의 슬라이스 헤더 신택스 엘리먼트의 값이 선행하는 슬라이스에서의 대응하는 슬라이스 헤더 신택스 엘리먼트의 값과 동일한 것으로 유추되는지의 여부를 나타낼 수도 있다. 표 1의 예에서, 1과 동일한 es_dependent_slices_unchanging_flag 신택스 엘리먼트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 PPS들에 대해 dependent_slices_enabled_flag 신택스 엘리먼트의 값이 동일하다는 것을 나타낸다. 0과 동일한 es_dependent_slices_unchanging_flag 신택스 엘리먼트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 PPS들에 대해 dependent_slices_enabled_flag 신택스 엘리먼트의 값이 동일하지 않다는 것을 나타낸다. 따라서, es_dependent_slices_unchanging_flag 신택스 엘리먼트는 기본 스트림에서의 모든 CVS들이 의존성 슬라이스들을 사용하는지의 여부를 나타낼 수도 있다.
표 1의 예에서, 0과 동일한 es_properties_sei_extension_flag 신택스 엘리먼트는 ESP SEI 메시지 내에서 부가적인 데이터가 뒤따르지 않는다는 것을 나타낸다. es_properties_sei_extension_flag 신택스 엘리먼트의 값이 0과 동일할 것이라는 것이 비트스트림 적합성 (conformance) 의 요건일 수도 있다. es_properties_sei_extension_flag 신택스 엘리먼트에 대한 값 1은 ITU-T | ISO/IEC에 의한 향후의 사용을 위해 유보될 수도 있다. 일부 예들에서, 비디오 디코더들은 ESP SEI 메시지에서의 es_properties_sei_extension_flag 신택스 엘리먼트의 값을 무시할 것이고 es_properties_sei_extension_flag 신택스 엘리먼트에 대한 값 1 뒤의 ESP SEI 메시지 내에서 뒤따르는 모든 데이터를 무시할 것이다. 따라서, es_properties_sei_extension_flag 신택스 엘리먼트는 임의의 부가적인 데이터가 SEI 메시지에서 뒤따르는지의 여부를 나타낼 수도 있다.
일부 예들에서, 별개의 NAL 유닛 유형 (예컨대, ESP NAL 유닛) 이 ESP SEI 메시지 대신에 기본 스트림 레벨 속성들을 시그널링하기 위해 정의된다. ESP NAL 유닛은 비-VCL NAL 유닛들로서 특정될 수도 있다. ESP NAL 유닛은 NAL 유닛을 포함하는 전체 기본 스트림에 대한 정보를 제공한다. ESP NAL 유닛은 위의 표 1의 신택스 엘리먼트들의 일부 또는 전부를 포함할 수도 있다. 더욱이, 일부 예들에서, ESP NAL 유닛은 표 1의 것들 외의 신택스 엘리먼트들을 포함할 수도 있다.
일부 예들에서, ESP NAL 유닛이 기본 스트림의 제 1 액세스 유닛에 존재할 수도 있다. 다른 예들에서, ESP NAL 유닛이 기본 스트림에서의 임의의 RAP 액세스 유닛에 존재할 수도 있다. 또 다른 예들에서, ESP NAL 유닛이 기본 스트림에서의 임의의 액세스 유닛에 존재할 수도 있다. 더욱이, 일부 예들에서, ESP NAL 유닛이 ESP NAL 유닛을 포함하는 액세스 유닛에서의 제 1 NAL 유닛이여야만 하는 것이 요구된다. 일부 예들에서, 기본 스트림의 제 1 액세스 유닛이 ESP NAL 유닛을 포함할 것이 요구된다.
본 개시물의 다른 곳에서 나타낸 바와 같이, 비디오 인코더 (20) 는 비트스트림 속성들 SEI 메시지에서 비트스트림의 비트스트림 속성들을 시그널링할 수도 있다. 비트스트림 속성들 SEI 메시지는 SEI 메시지를 포함하는 전체 비트스트림에 적용가능한 정보를 제공한다. 일부 예들에서, 비트스트림 속성들 SEI 메시지는 비트스트림의 제 1 액세스 유닛에만 존재할 수도 있다. 더욱이, 일부 예들에서, 비트스트림 속성들 SEI 메시지를 포함하는 SEI NAL 유닛은 다른 SEI 메시지들을 포함하지 않을 것이다. 일부 예들에서, 비디오 코딩 사양이 비트스트림 속성들 SEI 메시지를 포함하는 SEI NAL 유닛에서의 nuh_temporal_id_plus1 신택스 엘리먼트의 값이 0과 동일하게 되는 것을 요구할 수도 있다.
비트스트림 속성들 SEI 메시지가 비트스트림 내의 다양한 로케이션들에서 시그널링될 수도 있다. 예를 들어, 비디오 코딩 사양이, 비트스트림 속성들 SEI 메시지가 비트스트림의 제 1 액세스 유닛에 존재할 수도 있다는 것을 요구할 수도 있다. 다른 예에서, 비디오 코딩 사양이, 비트스트림 속성들 SEI 메시지가 비트스트림에서의 임의의 RAP 액세스 유닛에 존재하는 것을 허용할 수도 있다. 다른 예에서, 비디오 코딩 사양이, 비트스트림 속성들 SEI 메시지가 비트스트림에서의 임의의 액세스 유닛에 존재하는 것을 허용할 수도 있다. 다른 예에서, 비트스트림 속성들 SEI 메시지가 SEI NAL 유닛에 존재하는 경우, 비디오 코딩 사양이 비트스트림 속성들 SEI 메시지가 SEI NAL 유닛에서의 제 1 SEI 메시지일 것을 요구할 수도 있다. 다른 예에서, 비디오 코딩 사양이 비트스트림 속성들 SEI 메시지를 포함하는 SEI NAL 유닛이 다른 SEI 메시지들을 포함하지 않는 것을 요구할 수도 있다. 더욱이, 일부 예들에서, SEI NAL 유닛이 비트스트림 속성들 SEI 메시지를 포함하는 경우, 비디오 코딩 사양이, 그 SEI NAL 유닛이 그 SEI NAL 유닛을 포함하는 액세스 유닛에서의 기본 스트림 레벨 NAL 유닛이 아닌 제 1 SEI NAL 유닛일 것을 요구할 수도 있다. 더욱이, 비디오 코딩 사양이, 각각의 비트스트림의 제 1 액세스 유닛이 비트스트림 속성들 SEI 메시지를 포함하는 SEI NAL 유닛을 포함하는 것을 요구할 수도 있다. 대체 예에서, 비디오 코딩 사양이, 각각의 비트스트림의 제 1 액세스 유닛이 비트스트림 속성들 SEI 메시지만을 포함하는 SEI NAL 유닛을 포함하는 것을 요구할 수도 있다.
하나의 예에서, 비트스트림 속성들 SEI 메시지는 아래의 표 2에 도시된 신택스를 준수할 수도 있다. 다른 예에서, 비트스트림 속성들 SEI 메시지는 표 2의 예에 도시된 것들보다 더 많거나, 더 적거나, 또는 상이한 신택스 엘리먼트들을 포함할 수도 있다.
표 2
Figure 112015039319128-pct00002
비트스트림 속성들 SEI 메시지에서의 신택스 엘리먼트들의 다음의 설명에서, "비트스트림"은 "비트스트림 속성들 SEI 메시지를 포함하는 비트스트림"을 지칭할 수도 있다.
VPS가 general_profile_space 신택스 엘리먼트, general_profile_idc 신택스 엘리먼트, general_profile_compatibility_flag[i] 신택스 엘리먼트, 및 general_reserved_zero_16bits 신택스 엘리먼트를 포함할 수도 있다. 표 2의 예에서, 1과 동일한 bitstream_profile_unchanging_flag 신택스 엘리먼트는, general_profile_idc 신택스 엘리먼트, 0 내지 31의 범위의 i에 대한 general_profile_compatibility_flag[i] 신택스 엘리먼트, 및 general_reserved_zero_16bits 신택스 엘리먼트의 값들이 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하다는 것을 나타낸다. bitstream_profile_unchanging_flag 신택스 엘리먼트가 0과 동일하면, general_profile_idc 신택스 엘리먼트, 0 내지 31의 범위의 i에 대한 general_profile_compatibility_flag[i] 신택스 엘리먼트, 및 general_reserved_zero_16bits 신택스 엘리먼트의 값들은 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하지 않다.
따라서, 비트스트림이 디코딩되는 경우에 활성화되는 SPS들의 각각은 복수의 일반 프로파일 호환성 플래그 신택스 엘리먼트들을 포함할 수도 있다. 각각의 복수의 일반 프로파일 호환성 플래그 신택스 엘리먼트들에서의 각각의 개별 일반 프로파일 호환성 플래그 신택스 엘리먼트는 인덱스 (예컨대, i) 와 연관된다. 더욱이, 대응하는 일반 프로파일 호환성 플래그 신택스 엘리먼트들은 동일한 인덱스와 연관된다. 따라서, 제 1 SPS에서의 인덱스 i에 연관된 일반 프로파일 호환성 플래그 신택스 엘리먼트가 제 2 SPS에서의 인덱스 i를 갖는 일반 프로파일 호환성 플래그 신택스 엘리먼트에 대응할 수도 있다.특정 신택스 엘리먼트 (예컨대, bitstream_profile_unchanging_flag) 가 특정 값 (예컨대, 1) 을 갖는 경우, SPS들에서의 대응하는 일반 프로파일 호환성 플래그 신택스 엘리먼트들의 각각은 동일한 값을 갖는다. 더욱이, SPS들의 각각은 general_reserved_zero_16bits 신택스 엘리먼트를 포함할 수도 있다. 특정 신택스 엘리먼트 (예컨대. bitstream_profile_unchanging_flag) 가 특정 값 (예컨대, 1) 을 갖는 경우, SPS들의 각각에서의 general_reserved_zero_16bits 신택스 엘리먼트는 동일한 값을 갖는다.
VPS가 general_tier_flag 신택스 엘리먼트 및 general_level_idc 신택스 엘리먼트를 포함하는 profile_tier_level 신택스 구조를 포함할 수도 있다. 표 2의 예에서, bitstream_tier_level_unchanging_flag 신택스 엘리먼트가 1과 동일하면, general_tier_flag 신택스 엘리먼트 및 general_level_idc 신택스 엘리먼트의 값들은 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하다. bitstream_tier_level_unchanging_flag 신택스 엘리먼트가 0과 동일하면, general_tier_flag 신택스 엘리먼트 및 general_level_idc 신택스 엘리먼트의 값들은 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하지 않다. 따라서, bitstream_tier_level_unchanging_flag 신택스 엘리먼트는, general_tier_flag 신택스 엘리먼트 및 general_level_idc 신택스 엘리먼트의 값들이 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 동일한지의 여부를 나타낼 수도 있다.
SPS가 pic_width_in_luma_samples 신택스 엘리먼트 및 pic_height_in_luma_samples 신택스 엘리먼트를 포함할 수도 있다. 표 2의 예에서, bitstream_spatial_resolution_unchanging_flag 신택스 엘리먼트가 1과 동일하면, pic_width_in_luma_samples 신택스 엘리먼트 및 pic_height_in_luma_samples 신택스 엘리먼트의 값들은 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하다. bitstream_spatial_resolution_unchanging_flag 신택스 엘리먼트가 0과 동일하면, pic_width_in_luma_samples 신택스 엘리먼트 및 pic_height_in_luma_samples 신택스 엘리먼트의 값들은 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하지 않다. 따라서, bitstream_spatial_resolution_unchanging_flag 신택스 엘리먼트는 비트스트림의 모든 CVS들이 동일한 공간적 레졸루션을 갖는지의 여부를 나타낼 수도 있다.
더욱이, 표 2의 예에서, bitstream_num_sub_layers_unchanging_flag 신택스 엘리먼트가 1과 동일하면, 시간적 서브-계층들의 수는 비트스트림에서의 모든 CVS들에 대해 동일하다. bitstream_num_sub_layers_unchanging_flag 신택스 엘리먼트가 0과 동일하면, 시간적 서브-계층들의 수는 비트스트림에서의 모든 CVS들에 대해 동일하지 않다. 따라서, bitstream_num_sub_layers_unchanging_flag 신택스 엘리먼트는 비트스트림의 시간적 서브-계층들의 수가 비트스트림에서의 모든 CVS들에 대해 동일한지의 여부를 나타낼 수도 있다.
표 2의 예에서, bitstream_max_bitrate_unchanging_flag가 1과 동일하면, 최대 비트레이트는 비트스트림에서의 모든 CVS들에 대해 동일하다. bitstream_max_bitrate_unchanging_flag 신택스 엘리먼트가 0과 동일하면, 최대 비트레이트는 비트스트림에서의 모든 CVS들에 대해 동일하지 않다. 따라서, bitstream_max_bitrate_unchanging_flag 신택스 엘리먼트는 최대 비트레이트가 비트스트림에서의 모든 CVS들에 대해 동일한지의 여부를 나타낼 수도 있다.
덧붙여서, 표 2의 예에서, bitstream_max_pic_rate_unchanging_flag 신택스 엘리먼트가 1과 동일하면, 최대 화상 레이트는 비트스트림에서의 모든 CVS들에 대해 동일하다. bitstream_max_pic_rate_unchanging_flag 신택스 엘리먼트가 0과 동일하면, 최대 화상 레이트는 비트스트림에서의 모든 CVS들에 대해 동일하지 않다. 따라서, bitstream_max_pic_rate_unchanging_flag 신택스 엘리먼트는 최대 화상 레이트가 비트스트림에서의 모든 CVS들에 대해 동일한지의 여부를 나타낼 수도 있다.
더욱이, 표 2의 예에서, 1과 동일한 bitstream_color_format_unchanging_flag 신택스 엘리먼트는 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 chroma_format_idc 신택스 엘리먼트의 값이 동일하다는 것을 나타낸다. 0과 동일한 bitstream_color_format_unchanging_flag 신택스 엘리먼트는 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 chroma_format_idc 신택스 엘리먼트의 값이 동일하지 않다는 것을 나타낸다. 따라서, bitstream_color_format_unchanging_flag 신택스 엘리먼트는 비트스트림에서의 모든 CVS들이 동일한 컬러 포맷을 갖는지의 여부를 나타낼 수도 있다.
SPS가 aspect_ratio_idc 신택스 엘리먼트를 포함하는 VUI 파라미터들 신택스 구조를 포함할 수도 있다. 표 2의 예에서, 1과 동일한 bitstream_aspect_ratio_unchanging_flag 신택스 엘리먼트는, 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 aspect_ratio_idc 신택스 엘리먼트의 값이 동일하고, aspect_ratio_idc 신택스 엘리먼트가 Extended_SAR과 동일한 경우, sar_width 신택스 엘리먼트 및 sar_height 신택스 엘리먼트의 값들이 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하다는 것을 나타낸다. 0과 동일한 bitstream_aspect_ratio_unchanging_flag 신택스 엘리먼트는, 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 aspect_ratio_idc 신택스 엘리먼트의 값이 동일하지 않거나, 또는, sar_width 신택스 엘리먼트 및 sar_height 신택스 엘리먼트의 값들이 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하지 않다는 것을 나타낸다. 따라서, bitstream_aspect_ratio_unchanging_flag 신택스 엘리먼트는 비트스트림에서의 모든 CVS들이 동일한 샘플 애스팩트 비를 갖는지의 여부를 나타낼 수도 있다.
SPS가 bit_depth_minus8 신택스 엘리먼트 및 bit_depth_chroma_minus8 신택스 엘리먼트를 포함할 수도 있다. 1과 동일한 표 2의 bitstream_bit_depth_unchanging_flag 신택스 엘리먼트는 bit_depth_luma_minus8 신택스 엘리먼트 및 bit_depth_chroma_minus8 신택스 엘리먼트의 값들이 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하다는 것을 나타낸다. 0과 동일한 bitstream_bit_depth_unchanging_flag 신택스 엘리먼트는 bit_depth_luma_minus8 신택스 엘리먼트 및 bit_depth_chroma_minus8 신택스 엘리먼트의 값들이 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 각각 동일하지 않다는 것을 나타낸다. 따라서, bitstream_bit_depth_unchanging_flag 신택스 엘리먼트는 비트스트림에서의 모든 CVS들이 루마 및 크로마에 대해 비트 심도들의 동일한 세트를 갖는지의 여부를 나타낼 수도 있다.
더욱이, 1과 동일한 표 2의 bitstream_full_random_access_enabled_flag 신택스 엘리먼트는, RAP 액세스 유닛 전의 모든 액세스 유닛들을 버림으로써 비트스트림에서의 각각의 RAP 액세스 유닛의 포지션에서 랜덤 액세스를 수행하는 것과 RAP 화상과 디코딩 순서에서의 모든 후속 비-TFD 화상들을 올바르게 디코딩하는 것이 가능하다는 것을 나타낸다. 다시 말하면, 각각의 RAP 액세스 유닛에 대해, RAP 액세스 유닛 전의 모든 액세스 유닛들이 버려지고 비트스트림의 남아있는 부분이 디코딩되는 경우, 각각의 파라미터 세트는 그 파라미터 세트가 활성화되는 것을 필요로 하는 경우에 비트스트림에서 여전히 이용가능하다. 따라서, bitstream_full_random_access_enabled_flag 신택스 엘리먼트는 비트스트림에서의 파라미터 세트들의 존재가 완전한 랜덤 접근성을 가능하게 하는지의 여부를 나타낼 수도 있다. 이는 위의 랜덤 액세스가 임의의 RAP 액세스 유닛에서 수행되는 경우, 각각의 파라미터 세트는 그 파라미터 세트가 활성화되는 것을 필요로 할 때 비트스트림에서 이용가능한 것을 요구할 수도 있다.
표 2의 예에서, 1과 동일한 bitstream_all_parameter_sets_in_first_au_flag 신택스 엘리먼트는 비트스트림이 디코딩되는 경우에 활성화되는 모든 파라미터 세트들이 비트스트림에서의 제 1 액세스 유닛에 존재한다는 것을 나타낸다. 0과 동일한 bitstream_all_parameter_sets_in_first_au_flag 신택스 엘리먼트는 비트스트림이 디코딩되는 경우에 활성화되는 모든 파라미터 세트들이 비트스트림에서의 제 1 액세스 유닛에 존재하는 것은 아니라는 것을 나타낸다. bitstream_all_parameter_sets_in_first_au_flag 신택스 엘리먼트가 1과 동일한 경우, 비트스트림에서의 다른 액세스 유닛들에서 반복되는 파라미터 세트들이 (예컨대, 에러 내성 목적으로) 여전히 있을 수도 있다. 그러나, 반복된 파라미터 세트들 중에는 파라미터 세트 업데이트들이 있을 수도 있다. 따라서, bitstream_all_parameter_sets_in_first_au_flag 신택스 엘리먼트는 모든 파라미터 세트들이 비트스트림에서의 제 1 액세스 유닛 내에 존재하는지의 여부를 나타낼 수도 있다.
덧붙여서, 표 2의 예에서, 1과 동일한 bitstream_no_parameter_set_update_flag 신택스 엘리먼트는, 파라미터 세트 NAL 유닛에서의 video_parameter_set_id, seq_parameter_set_id, 또는 pic_parameter_set_id를 변경하는 일 없이, 비트스트림에서의 적어도 하나의 비디오 파라미터 세트, 시퀀스 파라미터 세트, 또는 화상 파라미터 세트의 콘텐츠가 변경된다는 것을 나타낸다. 0과 동일한 bitstream_no_parameter_set_update_flag 신택스 엘리먼트는, 파라미터 세트 NAL 유닛에서의 video_parameter_set_id, seq_parameter_set_id, 또는 pic_parameter_set_id를 변경하는 일 없이 파라미터 세트의 콘텐츠가 변경되지 않는다는 것을 나타낸다. 따라서, bitstream_no_parameter_set_update_flag 신택스 엘리먼트는 비트스트림에서 적어도 하나의 VPS가 업데이트되는지의 여부, 비트스트림에서 적어도 하나의 SPS가 업데이트되는지의 여부, 또는 비트스트림에서 적어도 하나의 PPS가 업데이트되는지의 여부를 나타낸다.
표 2의 예에서, 1과 동일한 bitstream_all_sps_in_first_au_flag 신택스 엘리먼트는, 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들이 비트스트림에서의 제 1 액세스 유닛에 존재한다는 것을 나타낸다. 0과 동일한 bitstream_all_sps_in_first_au_flag 신택스 엘리먼트는 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들이 비트스트림에서의 제 1 액세스 유닛에 존재하는 것은 아니라는 것을 나타낸다. bitstream_all_sps_in_first_au_flag가 1과 동일한 경우, 비트스트림에서의 다른 액세스 유닛들에서 반복되는 SPS들이, 예컨대, 에러 내성 목적으로 여전히 있을 수도 있다. 그러나, 반복된 SPS들 간에 임의의 SPS 업데이트가 없을 수도 있다. 따라서, bitstream_all_sps_in_first_au_flag 신택스 엘리먼트는 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들이 비트스트림에서의 제 1 액세스 유닛에 존재하는지의 여부를 나타낼 수도 있다.
더욱이, 표 2의 예에서, 1과 동일한 bitstream_no_sps_update_flag 신택스 엘리먼트는, 비트스트림에서의 적어도 하나의 SPS의 콘텐츠가 그 SPS를 캡슐화하는 SPS NAL 유닛에서의 seq_parameter_set_id를 변경하는 일 없이 변경된다는 것을 나타낸다. 0과 동일한 bitstream_no_sps_update_flag 신택스 엘리먼트는, 비트스트림에서의 SPS의 콘텐츠가 SPS NAL 유닛에서의 seq_parameter_set_id를 변경하는 일 없이 변경되지 않는다는 것을 나타낸다. 따라서, bitstream_no_sps_update_flag 신택스 엘리먼트는 동일한 SPS 식별자가 사용되는 동안 적어도 하나의 SPS가 업데이트되는지의 여부를 나타낼 수도 있다.
1과 동일한 표 2의 bitstream_all_pps_in_first_au_flag 신택스 엘리먼트는 비트스트림이 디코딩되는 경우에 활성화되는 모든 PPS들이 그 비트스트림에서의 제 1 액세스 유닛에 존재한다는 것을 나타낸다. 0과 동일한 bitstream_all_pps_in_first_au_flag 신택스 엘리먼트는 비트스트림이 디코딩되는 경우에 활성화되는 모든 PPS들이 그 비트스트림에서의 제 1 액세스 유닛에 존재하는 것은 아니라는 것을 나타낸다. bitstream_all_pps_in_first_au_flag 신택스 엘리먼트가 1과 동일한 경우, 비트스트림에서의 다른 액세스 유닛들에서 반복되는 PPS들이, 예컨대, 에러 내성 목적으로 여전히 있을 수도 있다. 그러나, 반복된 PPS들 중에는 임의의 PPS 업데이트가 없을 수도 있다. 따라서, bitstream_all_pps_in_first_au_flag 신택스 엘리먼트는 모든 PPS들이 비트스트림의 시작부분에 존재하는지의 여부를 나타낼 수도 있다.
덧붙여서, 표 2의 예에서, 1과 동일한 bitstream_no_pps_update_flag 신택스 엘리먼트는 PPS NAL 유닛에서의 pic_parameter_set_id 신택스 엘리먼트를 변경하는 일 없이 비트스트림에서의 적어도 하나의 PPS의 콘텐츠가 변경된다는 것을 나타낸다. 0과 동일한 bitstream_no_pps_update_flag 신택스 엘리먼트는 PPS NAL 유닛에서의 pic_parameter_set_id 신택스 엘리먼트를 변경하는 일 없이 비트스트림에서의 PPS의 콘텐츠가 변경되지 않는다는 것을 나타낸다. 따라서, bitstream_no_pps_update_flag 신택스 엘리먼트는 비트스트림에서 동일한 PPS 식별자가 사용되지만 적어도 하나의 PPS가 변경되는지의 여부를 나타낼 수도 있다.
SPS가 field_seq_flag 신택스 엘리먼트를 포함하는 VUI 파라미터들 신택스 구조를 포함할 수도 있다. 더욱이, 표 2의 예에서, 1과 동일한 bitstream_progressive_frames_only_flag 신택스 엘리먼트는 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 SPS의 field_seq_flag 신택스 엘리먼트의 값이 0과 동일하고 그 비트스트림에는 필드 표시 SEI 메시지가 없다는 것을 나타낸다. 0과 동일한 bitstream_progressive_frames_only_flag 신택스 엘리먼트는 비트스트림에 적어도 하나의 필드 표시 SEI 메시지가 있다는 것을 나타낸다. 따라서, bitstream_progressive_frames_only_flag 신택스 엘리먼트는 비트스트림에서의 모든 CVS들이 프레임 화상들에서 코딩된 프로그레시브 프레임들만을 포함하는지의 여부를 나타낼 수도 있다.
표 2의 예에서, 1과 동일한 bitstream_unpacked_frames_only_flag 신택스 엘리먼트는 비트스트림에는 프레임 패킹 배열 SEI 메시지가 없다는 것을 나타낸다. 0과 동일한 bitstream_unpacked_frames_only_flag 신택스 엘리먼트는 비트스트림에는 적어도 하나의 프레임 패킹 배열 SEI 메시지가 있다는 것을 나타낸다. 따라서, bitstream_unpacked_frames_only_flag 신택스 엘리먼트는 비트스트림에서의 모든 CVS들이 프레임 패킹 배열 SEI 메시지들을 포함하지 않는지의 여부를 나타낼 수도 있다.
PPS가 tiles_enabled_flag 신택스 엘리먼트를 포함할 수도 있다. PPS의 tiles_enabled_flag 신택스 엘리먼트는 PPS를 참조하는 각각의 화상에 하나를 초과하는 타일들이 있을 수도 있는지의 여부를 특정할 수도 있다. 표 2의 예에서, 1과 동일한 bitstream_tiles_unchanging_flag 신택스 엘리먼트는, 비트스트림이 디코딩되는 경우에 활성화되는 모든 PPS들에 대해 PPS들의 tiles_enabled_flag 신택스 엘리먼트들의 값들이 동일하고, tiles_enabled_flag 신택스 엘리먼트들의 값이 1과 동일한 경우, 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 tiles_fixed_structure_flag 신택스 엘리먼트들의 값들이 동일하다는 것을 나타낸다. 0과 동일한 bitstream_tiles_unchanging_flag 신택스 엘리먼트는, 비트스트림이 디코딩되는 경우에 활성화되는 모든 PPS들에 대해 tiles_enabled_flag 신택스 엘리먼트들의 값들이 동일하지 않거나, 또는 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 tiles_fixed_structure_flag 신택스 엘리먼트들의 값들이 동일하지 않다는 것을 나타낸다. 따라서, bitstream_tiles_unchanging_flag 신택스 엘리먼트는 비트스트림에서의 모든 CVS들이 동일한 타일 구성을 갖는지의 여부를 나타낼 수도 있다.
PPS가 entropy_coding_sync_enabled_flag 신택스 엘리먼트를 포함할 수도 있다. 표 2의 예에서, 1과 동일한 bitstream_wpp_unchanging_flag 신택스 엘리먼트는, 비트스트림이 디코딩되는 경우에 활성화되는 모든 PPS들에 대해 PPS의 entropy_coding_sync_enabled_flag 신택스 엘리먼트들의 값들이 동일하다는 것을 나타낸다. 0과 동일한 bitstream_wpp_unchanging_flag 신택스 엘리먼트는 비트스트림이 디코딩되는 경우에 활성화되는 모든 PPS들에 대해 entropy_coding_sync_enabled_flag 신택스 엘리먼트들의 값들이 동일하지 않다는 것을 나타낸다. 따라서, bitstream_wpp_unchanging_flag 신택스 엘리먼트는 비트스트림에서의 모든 CVS들이 파면 병렬 프로세싱을 사용하는지의 여부를 나타낼 수도 있다.
dependent_slices_enabled_flag 신택스 엘리먼트는 dependent_slice_flag 신택스 엘리먼트들이 PPS를 참조하는 코딩된 화상들에 대한 슬라이스 헤더들에 존재하는지의 여부를 특정하는 PPS에서의 신택스 엘리먼트이다. 덧붙여서, 표 2의 예에서, 1과 동일한 bitstream_dependent_slices_unchanging_flag 신택스 엘리먼트는 비트스트림이 디코딩되는 경우에 활성화되는 모든 PPS들에 대해 PPS들의 dependent_slices_enabled_flag 신택스 엘리먼트들의 값들이 동일하다는 것을 나타낸다. 0과 동일한 bitstream_dependent_slices_unchanging_flag 신택스 엘리먼트는 비트스트림이 디코딩되는 경우에 활성화되는 모든 PPS들에 대해 dependent_slices_enabled_flag 신택스 엘리먼트들의 값들이 동일하지 않다는 것을 나타낸다. 따라서, bitstream_dependent_slices_unchanging_flag 신택스 엘리먼트는 비트스트림에서의 모든 CVS들이 의존성 슬라이스들을 사용하는지의 여부를 나타낼 수도 있다.
더욱이, 표 2의 예에서, 0과 동일한 bitstream_properties_sei_extension_flag 신택스 엘리먼트는 비트스트림 속성들 SEI 메시지 내에서 부가적인 데이터가 뒤따르지 않는다는 것을 나타낸다. bitstream_properties_sei_extension_flag 신택스 엘리먼트의 값이 0과 동일할 것은 비트스트림 적합성의 요건일 수도 있다. bitstream_properties_sei_extension_flag 신택스 엘리먼트에 대한 값 1은 ITU-T | ISO/IEC에 의해 향후의 사용을 위해 유보될 수도 있다. 일부 예들에서, 비디오 디코더들은 비트스트림 속성들 SEI 메시지에서 bitstream_properties_sei_extension_flag 신택스 엘리먼트의 값을 무시할 것이고, bitstream_properties_sei_extension_flag에 대한 값 1 뒤의 비트스트림 속성들 SEI 메시지 내에서 뒤따르는 모든 데이터를 무시할 것이다. 따라서, bitstream_properties_sei_extension_flag 신택스 엘리먼트는 임의의 부가적인 데이터가 비트스트림 속성들 SEI 메시지에서 뒤따르는지의 여부를 나타낼 수도 있다.
다른 예들에서, 별개의 NAL 유닛 유형이 비트스트림 속성들 SEI 메시지 대신에 비트스트림 레벨 속성들을 시그널링하기 위해 정의된다. 이 NAL 유닛 유형에 속하는 NAL 유닛들은 비트스트림 속성들 NAL 유닛들이라고 지칭될 수도 있다. 비트스트림 속성들 NAL 유닛은 비-VCL NAL 유닛으로서 특정될 수도 있다. 비트스트림 속성들 NAL 유닛은 NAL 유닛을 포함하는 전체 비트스트림에 대한 정보를 제공할 수도 있다. 비트스트림 속성들 NAL 유닛은 위의 표 2의 신택스 엘리먼트들의 일부 또는 전부를 포함할 수도 있다.
일부 예들에서, 비트스트림 속성들 NAL 유닛은 비트스트림의 제 1 액세스 유닛에 존재할 수도 있다. 대안으로, 다른 예들에서, 비트스트림 속성들 NAL 유닛은 비트스트림에서의 임의의 RAP 액세스 유닛에 존재할 수도 있다. 더욱이, 일부 예들에서, 비트스트림 속성들 NAL 유닛은 비트스트림에서의 임의의 액세스 유닛에 존재할 수도 있다. 일부 예들에서, 비트스트림 속성들 NAL 유닛은 그 비트스트림 속성들 NAL 유닛을 포함하는 액세스 유닛에서의 기본 스트림 레벨 NAL 유닛이 아닌 제 1 NAL 유닛이여야만 한다는 것이 요구된다. 대안으로, 다른 예들에서, 각각의 비트스트림의 제 1 액세스 유닛이 비트스트림 속성들 NAL 유닛을 포함할 것이 요구된다.
도 4는 다수의 타일들 (202A, 202B, 202C, 202D, 202E, 및 202F) (총칭하여, "타일들 (202)") 로 구획되는 화상 (200) 에 대한 일 예의 CTB 코딩 순서를 도시하는 개념도이다. 화상 (200) 에서의 각각의 정사각형 블록이 CTU에 연관된 코딩 트리 블록 (CTB) 을 나타낸다. 두꺼운 파선들은 예의 타일 경계들을 나타낸다. 교차 해칭 (cross-hatching) 의 상이한 유형들은 상이한 슬라이스들에 대응한다.
화소 블록들에서의 숫자들은 화상 (200) 에 대한 타일 코딩 순서에서의 대응하는 CTB들의 포지션들을 나타낸다. 도 4의 예에서 도시된 바와 같이, 타일 (202A) 에서의 CTB들이 먼저, 뒤이어 타일 (202B) 에서의 CTB들, 뒤이어 타일 (202C) 에서의 CTB들, 뒤이어 타일 (202D) 에서의 CTB들, 뒤이어 타일 (202E) 에서의 CTB들, 뒤이어 타일 (202F) 에서의 CTB들이 코딩된다. 타일들 (202) 의 각각 내에서, CTB들은 래스터 스캔 순서에 따라 코딩된다.
비디오 인코더가 화상 (200) 에 대해 네 개의 코딩된 슬라이스 NAL 유닛들을 생성할 수도 있다. 제 1 코딩된 슬라이스 NAL 유닛은 CTB들 (1-18) 의 인코딩된 표현들을 포함할 수도 있다. 제 1 코딩된 슬라이스 NAL 유닛의 슬라이스 데이터는 두 개의 서브-스트림들을 포함할 수도 있다. 제 1 서브-스트림은 CTB들 (1-9) 의 인코딩된 표현들을 포함할 수도 있다. 제 2 서브-스트림은 CTB들 (10-18) 의 인코딩된 표현들을 포함할 수도 있다. 따라서, 제 1 코딩된 슬라이스 NAL 유닛은 다수의 타일들을 포함하는 슬라이스의 인코딩된 표현을 포함할 수도 있다.
제 2 코딩된 슬라이스 NAL 유닛이 CTB들 (19-22) 의 인코딩된 표현들을 포함할 수도 있다. 제 2 코딩된 슬라이스 NAL 유닛의 슬라이스 데이터는 단일 서브-스트림을 포함할 수도 있다. 제 3 코딩된 슬라이스 NAL 유닛이 CTB들 (23-27) 의 인코딩된 표현들을 포함할 수도 있다. 제 3 코딩된 슬라이스 NAL 유닛의 슬라이스 데이터는 단일 서브-스트림만을 포함할 수도 있다. 따라서, 타일 (202C) 은 다수의 슬라이스들을 포함할 수도 있다.
제 4 코딩된 슬라이스 NAL 유닛이 CTB들 (28-45) 의 인코딩된 표현들을 포함할 수도 있다. 제 4 코딩된 슬라이스 NAL 유닛의 슬라이스 데이터는 각각 타일들 (202D, 202E, 및 202F) 을 위한 것인 세 개의 서브-스트림들을 포함할 수도 있다. 따라서, 제 4 코딩된 슬라이스 NAL 유닛은 다수의 타일들을 포함하는 슬라이스의 인코딩된 표현을 포함할 수도 있다.
도 5는 WPP의 일 예를 도시하는 개념도이다. 위에서 설명된 바와 같이, 화상이, CTU에 각각 연관되는 CTB들로 구획될 수도 있다. 도 5는 백색 정사각형들의 그리드로서 CTB들을 예시한다. 화상은 CTB 행들 (250A-250E) (총칭하여, "CTB 행들 (250)") 을 포함한다.
제 1 병렬 프로세싱 스레드 (예컨대, 복수의 병렬 프로세싱 코어들 중 하나에 의해 실행됨) 가 CTB 행 (250A) 의 CTB들을 코딩하는 것일 수도 있다. 동시에, 다른 스레드들 (예컨대, 다른 병렬 프로세싱 코어들에 의해 실행됨) 이 CTB 행들 (250B, 250C, 및 250D) 의 CTB들을 코딩하는 것일 수도 있다. 도 5의 예에서, 제 1 스레드는 CTB (252A) 를 현재 코딩하고 있으며, 제 2 스레드는 CTB (252B) 를 현재 코딩하고 있으며, 제 3 스레드는 CTB (252C) 를 현재 코딩하고 있고, 제 4 스레드는 CTB (252D) 를 현재 코딩하고 있다. 본 개시물은 CTB들 (252A, 252B, 252C, 및 252D) 을 총칭하여 "현재 CTB들 (252)"이라고 지칭할 수도 있다. 비디오 코더가 CTB 행을 바로 상위의 행의 2 개를 초과하는 CTB들이 코딩된 후에 코딩 시작할 수도 있기 때문에, 현재 CTB들 (252) 은 2 개의 CTB들의 폭들만큼 서로로부터 수평방향으로 변위된다.
도 5의 예에서, 스레드들은 현재 CTB들 (252) 에서의 CU들에 대해 인트라 예측 또는 인터 예측을 수행하기 위해 두꺼운 회색 화살표들에 의해 표시된 CTB들로부터의 데이터를 사용할 수도 있다. (스레드들은 또한 CU들에 대한 인터 예측을 수행하기 위해 하나 이상의 참조 프레임들로부터의 데이터를 사용할 수도 있다.) 주어진 CTB를 코딩하기 위해, 스레드가 이전에 코딩된 CTB들에 연관된 정보에 기초하여 하나 이상의 CABAC 콘텍스트들을 선택할 수도 있다. 스레드는 주어진 CTB의 제 1 CU에 연관된 신택스 엘리먼트들에 대해 CABAC 코딩을 수행하기 위해 하나 이상의 CABAC 콘텍스트들을 사용할 수도 있다. 주어진 CTB가 행의 가장 좌측 CTB가 아니면, 스레드는, 주어진 CTB의 좌측으로의 CTB의 마지막 CU에 연관된 정보에 기초하여 하나 이상의 CABAC 콘텍스트들을 선택할 수도 있다. 주어진 CTB가 행의 가장 좌측 CTB이면, 스레드는, 주어진 CTB의 위 및 두 CTB들 우측인 CTB의 마지막 CU에 연관된 정보에 기초하여 하나 이상의 CABAC 콘텍스트들을 선택할 수도 있다. 스레드들은 현재 CTB들 (252) 의 제 1 CU들에 대한 CABAC 콘텍스트들을 선택하기 위해 가는 흑색 화살표들에 의해 표시된 CTB들의 마지막 CU들로부터의 데이터를 사용할 수도 있다.
도 6은 본 개시물의 하나 이상의 기법들에 따른, 비디오 디코더 (30) 의 일 예의 동작 (300) 을 도시하는 흐름도이다. 도 6의 예에서, 비디오 프로세싱 디바이스 (예컨대, 비디오 디코더 (30)) 가, 비디오 데이터의 인코딩된 표현을 포함하는 비트스트림에서의 보충 강화 정보 (SEI) 메시지에서의 특정 신택스 엘리먼트에 기초하여, 비디오 디코더 (30) 가 비트스트림을 디코딩할 수 있는지의 여부를 결정할 수도 있다 (302). 일부 예들에서, 시그널링된 속성이 특정 값을 갖는 경우, 비트스트림의 모든 CVS들은 동일한 프로파일을 준수한다. 다른 예에서, 시그널링된 속성은 특정 신택스 엘리먼트 (예컨대, bitstream_profile_unchanging_flag) 일 수도 있고, 특정 신택스 엘리먼트가 특정 값을 갖는 경우, 비트스트림이 디코딩되는 경우에 활성화되는 개별 SPS들에서의 일반 프로파일 표시자 (예컨대, general_profile_idc) 신택스 엘리먼트들은 동일한 값들을 갖는다. 일반 프로파일 표시자 신택스 엘리먼트들의 각각은 CVS가 준수하는 프로파일을 나타낸다.
비디오 디코더 (30) 가 비트스트림을 디코딩할 수 있는 경우 (302의 "예"), 비디오 프로세싱 디바이스는 비트스트림을 프로세싱할 수도 있다 (304). 예를 들어, 비디오 프로세싱 디바이스는 비트스트림을 디코딩할 수도 있다. 다른 예에서, 비디오 프로세싱 디바이스는 비트스트림을 비디오 디코더 (30) 로 포워딩할 수도 있다. 그렇지 않고, 비디오 디코더 (30) 가 비트스트림을 디코딩할 수 없는 경우 (302의 "아니오"), 비디오 프로세싱 디바이스는 비트스트림을 프로세싱하지 않는다 (306). 예를 들어, 비디오 프로세싱 디바이스는 그 비트스트림을 디코딩하지 않는다. 다른 예에서, 비디오 프로세싱 디바이스는 그 비트스트림을 비디오 디코더 (30) 로 포워딩하지 않는다. 이런 식으로, 비디오 프로세싱 디바이스는, 그 결정에 기초하여, 비트스트림을 프로세싱할 수도 있다.
도 7은 본 개시물의 하나 이상의 기법들에 따른, 비디오 프로세싱 디바이스의 일 예의 동작 (350) 을 도시하는 흐름도이다. 도 7의 예에서, 비디오 프로세싱 디바이스는 비디오 인코더 (예컨대, 비디오 인코더 (20)), MANE, 또는 다른 유형의 디바이스일 수도 있다. 더욱이, 도 7의 예에서, 비디오 프로세싱 디바이스는 비트스트림의 모든 CVS들이 동일한 프로파일을 준수하는지의 여부를 결정할 수도 있다 (352). 예를 들면, 비디오 프로세싱 디바이스는 비트스트림이 디코딩되는 경우에 활성화되는 개별 SPS들에서의 일반 프로파일 신택스 엘리먼트들이 동일한 값을 갖는지의 여부를 결정할 수도 있다.
더욱이, 비디오 프로세싱 디바이스는, 비트스트림의 속성이 특정 값을 갖는 경우 비트스트림의 모든 CVS들이 동일한 프로파일을 준수하는 비트스트림의 속성을 시그널링할 수도 있다 (354). 예를 들어, 비디오 프로세싱 디바이스는, 비트스트림 또는 기본 스트림에서, 특정 신택스 엘리먼트를 포함하는 SEI 메시지를 시그널링할 수도 있다. 이 예에서, 특정 신택스 엘리먼트가 특정 값을 갖는 경우, 비트스트림이 디코딩되는 경우에 활성화되는 개별 SPS들에서의 일반 프로파일 표시자 신택스 엘리먼트들이 동일한 값을 갖는데, 일반 프로파일 표시자 신택스 엘리먼트들의 각각은 CVS가 준수하는 프로파일을 나타낸다.
일부 예들에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트 또는 기본 스트림에서 ESP의 세트를 시그널링하는 것을 포함하며, 상기 시그널링하는 것은, 비트스트림 속성들 SEI 메시지에서 비트스트림 속성들의 세트를 시그널링하는 것; ESP SEI 메시지에서 ESP의 세트를 시그널링하는 것; 별개의 NAL 유닛 유형이 NAL 유닛에서 비트스트림 속성들의 세트의 존재를 정의하는, 상기 별개의 NAL 유닛 유형을 갖는 NAL 유닛에서 비트스트림 속성들의 세트를 시그널링하는 것; 별개의 ESP NAL 유닛 유형이 NAL 유닛에서 ESP 속성들의 세트의 존재를 정의하는, 상기 별개의 ESP NAL 유닛 유형을 갖는 NAL 유닛에서 ESP의 세트를 시그널링하는 것; ISO 기본 미디어 파일 포맷에서 비트스트림 속성들의 세트를 시그널링하는 것; ISO 기본 미디어 파일 포맷에서 ESP의 세트를 시그널링하는 것; DASH가 HTTP를 통한 동적 적응적 스트리밍을 의미하며, HTTP가 하이퍼텍스트 전송 프로토콜을 의미하고 MPD가 미디어 프레젠테이션 기술을 의미하는, DASH MPD에서 비트스트림 속성들의 세트를 시그널링하는 것; DASH MPD에서 ESP의 세트를 시그널링하는 것; RFC 6381에 따른 코덱 파라미터들로서 비트스트림 속성들의 세트를 시그널링하는 것; RFC 6381에 따른 코덱 파라미터들로서 ESP의 세트를 시그널링하는 것; 세션 기술 프로토콜 (SDP) 파일에서 비트스트림 속성들의 세트를 시그널링하는 것; 및 SDP 파일에서 ESP의 세트를 시그널링하는 것 중 적어도 하나를 포함한다. 이 예에서, 프로세싱은 인코딩하는 것을 포함할 수도 있으며; 그리고 시그널링하는 것은 비트스트림 속성들의 세트를 포함하기 위해서 비트스트림을 생성하는 것 또는 ESP를 포함하기 위해서 기본 스트림을 생성하는 것을 포함할 수도 있다. 대안으로, 이 예에서, 프로세싱은 디코딩하는 것을 포함하며; 그리고 시그널링하는 것은 비트스트림 속성들의 세트를 포함하는 비트스트림을 수신하고 디코딩하는 것 또는 ESP를 포함하기 위해서 기본 스트림을 수신하고 디코딩하는 것을 포함한다. 이 예에서, 프로로세싱은 MANE에서 발생할 수도 있으며; 그리고 시그널링하는 것은 비트스트림을 완전히 디코딩하는 일 없이 비트스트림 속성들의 세트를 수신하고 해석하는 것 또는 기본 스트림을 완전히 코딩하는 일 없이 ESP를 수신하고 해석하는 것을 포함한다. 디바이스가 이 예의 방법을 수행하도록 구성된다.그 디바이스는, 인코더; 디코더; 및 MANE 중 하나를 포함할 수도 있다. 컴퓨터 판독가능 저장 매체가, 실행되는 경우, 하나 이상의 프로세서로 하여금, 이 예의 방법을 수행하게 하는 명령들을 포함한다.비디오 데이터를 프로세싱하는 디바이스가, 이 예의 방법을 수행하는 수단을 포함한다.
본 개시물의 하나 이상의 기법들이 비디오 데이터를 프로세싱하는 방법을 제공하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들의 세트를 시그널링하는 것은 비트스트림 속성들 SEI 메시지에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함한다. 이 예에서, 비트스트림 속성들 SEI 메시지는 비트스트림의 제 1 액세스 유닛에 존재할 수도 있다. 대안으로, 이 예에서, 비트스트림 속성들 SEI 메시지는 비트스트림의 RAP 액세스 유닛에 존재한다. 이 예에서, 비트스트림 속성들 SEI 메시지는, SEI NAL 유닛에 존재하는 경우, SEI NAL 유닛에서 제 1 SEI 메시지로서 위치될 수도 있다. 대안으로, 이 예에서, 비트스트림 속성들 SEI 메시지는, 존재하는 경우, 임의의 다른 SEI 메시지들을 포함하지 않는 SEI NAL 유닛에 위치될 수도 있다. 대안으로, 이 예에서, 비트스트림 속성들 SEI 메시지는, SEI NAL 유닛에 존재하는 경우, SEI NAL 유닛을 포함하는 액세스 유닛에서의 기본 스트림 레벨 NAL 유닛이 아니라, 그 액세스 유닛에서의 제 1 SEI 메시지로서 위치된다. 이 예에서, 비트스트림은 비트스트림 속성들 SEI 메시지를 포함하는 SEI NAL 유닛을 포함하는 제 1 액세스 유닛을 포함하는 것이 요구될 수도 있다. 일부 예들에서, 제 1 액세스 유닛에서의 SEI NAL 유닛은 임의의 다른 SEI 메시지들을 포함하지 않는다. 이 예의 방법에서, 비트스트림 속성들 SEI 메시지는 다음의 복수의 플래그들 중 하나 이상을 포함할 수도 있다: bitstream_profile_unchanging_flag; bitstream_tier_level_unchanging_flag; bitstream_spatial_resolution_unchanging_flag; bitstream_num_sub_layers_unchanging_flag; bitstream_max_bitrate_unchanging_flag; bitstream_max_pic_rate_unchanging_flag; bitstream_color_format_unchanging_flag; bitstream_aspect_ratio_unchanging_flag; bitstream_bit_depth_unchanging_flag; bitstream_full_random_access_enabled_flag; bitstream_all_parameter_sets_in_first_au_flag; bitstream_no_parameter_set_update_flag; es_all_sps_in_first_au_flag; es_no_sps_update_flag; es_all_pps_in_first_au_flag; es_no_pps_update_flag; bitstream_progressive_frames_only_flag; bitstream_unpacked_frames_only_flag; bitstream_tiles_unchanging_flag; bitstream_wpp_unchanging_flag; bitstream_dependent_slices_unchanging_flag; 및 bitstream_proterties_sei_extension_flag. 이 예의 방법에서, 비트스트림 속성들 SEI 메시지는 위에서 열거된 복수의 플래그들의 서브세트를 포함할 수도 있는데, 그 서브세트는 복수의 플래그들 중 적어도 2 개 이상의 플래그들을 포함한다. 이 예의 방법에서, 비트스트림 속성들 SEI 메시지는 위에서 열거된 복수의 플래그들의 모두를 포함할 수도 있다. 이 예의 방법에서, 비트스트림 속성들 SEI 메시지는 위에는 없는 적어도 하나의 부가적인 플래그를 포함한다. 위의 방법은, 프로세싱이 인코딩하는 것을 포함하는 것; 및 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것이 비트스트림 속성들의 세트를 포함하기 위해서 비트스트림을 생성하는 것을 포함하는 것을 더 포함할 수도 있다. 위의 방법에서, 프로세싱은 디코딩하는 것을 포함할 수도 있고; 그리고 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것은 비트스트림 속성들의 세트를 포함하는 비트스트림을 수신하고 디코딩하는 것을 포함할 수도 있다. 더욱이, 이 방법에서 프로세싱은 MANE에서 발생할 수도 있고; 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것은 비트스트림을 완전히 디코딩하는 일 없이 비트스트림 속성들의 세트를 수신하고 해석하는 것을 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP의 세트를 시그널링하는 것을 포함하며, ESP의 세트를 시그널링하는 것은 ESP SEI 메시지에서 ESP의 세트를 시그널링하는 것을 포함한다. 이 예의 방법에서, ESP SEI 메시지는 ESP SEI 메시지를 포함하는 전체 기본 스트림에 대한 정보를 포함할 수도 있다. 더욱이, 이 예의 방법에서, ESP SEI 메시지는 기본 스트림의 제 1 액세스 유닛에 포함될 수도 있다. 이 예의 방법에서, ESP SEI 메시지는 기본 스트림의 RAP 액세스 유닛에 포함될 수도 있다. 이 예의 방법에서, ESP SEI 메시지는 기본 스트림의 임의의 액세스 유닛 내에 포함될 수 있다. 더욱이, 이 예의 방법에서, ESP SEI 메시지는, SEI NAL 유닛에 존재하는 경우, SEI NAL 유닛에서 제 1 SEI 메시지로서 위치된다. 이 예의 방법에서, ESP SEI 메시지는, 존재하는 경우, 임의의 다른 SEI 메시지들을 포함하지 않는 SEI NAL 유닛에 위치될 수도 있다. 이 예의 방법에서, ESP SEI 메시지는, SEI NAL 유닛에 존재하는 경우, 액세스 유닛에서 제 1 SEI 메시지로서 위치될 수도 있다. 더욱이, 이 예의 방법에서, 기본 스트림은 ESP SEI 메시지를 포함하는 SEI NAL 유닛을 포함하는 제 1 액세스 유닛을 포함하는 것이 요구될 수도 있다. 이 예의 방법에서, ESP SEI 메시지는 다음의 복수의 플래그들 중 하나 이상의 플래그를 포함할 수도 있다: es_profile_unchanging_flag; es_tier_level_unchanging_flag; es_spatial_resolution_unchanging_flag; es_num_sub_layers_unchanging_flag; es_max_bitrate_unchanging_flag; es_max_pic_rate_unchanging_flag; es_color_format_unchanging_flag; es_aspect_ratio_unchanging_flag; es_bit_depth_unchanging_flag; es_full_random_access_enabled_flag; es_all_vps_in_first_au_flag; es_no_vps_update_flag; es_all_sps_in_first_au_flag; es_no_sps_update_flag; es_all_pps_in_first_au_flag; es_no_pps_update_flag; es_progressive_frames_only_flag; es_unpacked_frames_only_flag; es_tiles_unchanging_flag; es_wpp_unchanging_flag; es_dependent_slices_unchanging_flag; 및 es_proterties_sei_extension_flag. 이 예의 방법에서, ESP SEI 메시지는 위에서 열거된 복수의 플래그들의 서브세트를 포함할 수도 있는데, 그 서브세트는 복수의 플래그들 중 적어도 2 개 이상의 플래그들을 포함한다. 이 예의 방법에서, ESP SEI 메시지는 위에서 열거된 복수의 플래그들의 모두를 포함할 수도 있다. 이 예의 방법에서, ESP SEI 메시지는 위에서 열거되지 않은 적어도 하나의 부가적인 플래그를 포함할 수도 있다. 이 예의 방법에서, 프로세싱은 인코딩하는 것을 포함할 수도 있고; 그리고 ESP의 세트를 시그널링하는 것은 ESP를 포함하기 위해서 기본 스트림을 생성하는 것을 포함할 수도 있다. 이 예의 방법에서, 프로세싱은 디코딩하는 것을 포함할 수도 있고; 기본 스트림에서 ESP의 세트를 시그널링하는 것은 ESP의 세트를 포함하는 기본 스트림을 수신하고 디코딩하는 것을 포함할 수도 있다. 이 예의 방법에서, 프로세싱은 MANE에서 발생할 수도 있고; 기본 스트림에서 ESP의 세트를 시그널링하는 것은 기본 스트림을 완전히 디코딩하는 일 없이 기본 스트림을 수신하고 해석하는 것을 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들의 세트를 시그널링하는 것은 별개의 NAL 유닛 유형을 갖는 네트워크 추상 계층 NAL 유닛에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 별개의 NAL 유닛 유형은 NAL 유닛에서의 비트스트림 속성들의 세트의 존재를 정의한다. 이 예의 방법에서, 별개의 NAL 유닛 유형을 갖는 NAL 유닛은 비트스트림 속성들 NAL 유닛을 포함할 수도 있다. 어떤 경우들에서, 별개의 NAL 유닛 유형을 갖는 NAL 유닛은 가변 길이 코딩 (VCL) 되지 않을 수도 있다. 이 예의 방법에서, 별개의 NAL 유닛 유형을 갖는 NAL 유닛은 NAL 유닛을 포함하는 전체 비트스트림에 대한 정보를 제공할 수도 있다. 이 예의 방법에서, 별개의 NAL 유닛 유형을 갖는 NAL 유닛은 비트스트림의 제 1 액세스 유닛에 존재할 수도 있다. 이 예에서, 별개의 NAL 유닛 유형을 갖는 NAL 유닛은 비트스트림에서의 RAP 액세스 유닛에 존재할 수도 있다. 이 예에서, 별개의 NAL 유닛 유형을 갖는 NAL 유닛은 비트스트림에서의 임의의 액세스 유닛에 존재할 수도 있다. 이 예에서, 별개의 NAL 유닛 유형을 갖는 NAL 유닛은 별개의 NAL 유닛 유형을 갖는 NAL 유닛을 포함하는 액세스 유닛에서 기본 스트림 레벨 NAL 유닛이 아닌 제 1 NAL 유닛을 포함할 수도 있다. 이 예에서, 별개의 NAL 유닛 유형을 갖는 NAL 유닛은 특정 비디오 코딩 표준에 따라 코딩되는 모든 비트스트림의 제 1 액세스 유닛에 포함될 수도 있다. 이 예에서, 프로세싱은 인코딩하는 것을 포함할 수도 있고; 그리고 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것은 비트스트림 속성들의 세트를 포함하기 위해서 비트스트림을 생성하는 것을 포함할 수도 있다. 이 예에서, 프로세싱은 디코딩하는 것을 포함할 수도 있고; 그리고 비트스트림에서의 비트스트림 속성들의 세트를 시그널링하는 것은 비트스트림 속성들의 세트를 수신하고 디코딩하는 것을 포함할 수도 있다. 이 예에서, 프로세싱은 MANE에서 발생할 수도 있고; 그리고 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것은 비트스트림을 완전히 디코딩하는 일 없이 비트스트림 속성들의 세트를 수신하고 해석하는 것을 포함할 수도 있다. 이 예에서, 그 방법을 수행하는 디바이스는 인코더; 디코더; 및 MANE 중 하나를 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP의 세트를 시그널링하는 것을 포함하며, ESP의 세트를 시그널링하는 것은 별개의 ESP NAL 유닛 유형을 갖는 NAL 유닛에서 ESP의 세트를 시그널링하는 것을 포함하며, 별개의 ESP NAL 유닛 유형은 NAL 유닛에서의 ESP 속성들의 세트의 존재를 정의한다. 어떤 경우에서는, 이 예에서, 별개의 ESP NAL 유닛 유형을 갖는 NAL 유닛은 가변 길이 코딩 (VCL) 되지 않는다. 이 예에서, 별개의 ESP NAL 유닛 유형을 갖는 NAL 유닛은 NAL 유닛을 포함하는 전체 비트스트림에 대한 정보를 제공할 수도 있다. 이 예에서, 별개의 ESP NAL 유닛 유형을 갖는 NAL 유닛은 비트스트림의 제 1 액세스 유닛에 존재할 수도 있다. 이 예에서, 별개의 ESP NAL 유닛 유형을 갖는 NAL 유닛은 비트스트림에서의 RAP 액세스 유닛에 존재할 수도 있다. 이 예에서, 별개의 ESP NAL 유닛 유형을 갖는 NAL 유닛은 비트스트림에서의 임의의 액세스 유닛에 존재할 수도 있다. 이 예에서, 별개의 ESP NAL 유닛 유형을 갖는 NAL 유닛은 별개의 ESP NAL 유닛 유형을 갖는 NAL 유닛을 포함하는 액세스 유닛에서의 제 1 NAL 유닛을 포함할 수도 있다. 이 예에서, 별개의 ESP NAL 유닛 유형을 갖는 NAL 유닛은 특정 비디오 코딩 표준에 따라 코딩되는 모든 기본 스트림의 제 1 액세스 유닛에 포함될 수도 있다. 이 예에서, 프로세싱은 인코딩하는 것을 포함할 수도 있고; 그리고 ESP의 세트를 시그널링하는 것은 ESP의 세트를 포함하기 위해서 기본 스트림을 생성하는 것을 포함할 수도 있다. 이 예에서, 프로세싱은 디코딩하는 것을 포함할 수도 있고; 그리고 ESP의 세트를 시그널링하는 것은 ESP의 세트를 포함하는 기본 스트림을 수신하고 디코딩하는 것을 포함할 수도 있다. 이 예에서, 프로세싱은 MANE에서 발생할 수 있고; 그리고 ESP의 세트를 시그널링하는 것은 기본 스트림을 완전히 디코딩하는 일 없이 ESP를 수신하고 해석하는 것을 포함할 수도 있다. 이 예에서, 그 방법을 수행하는 디바이스는 인코더; 디코더; 및 MANE 중 하나를 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들의 세트를 시그널링하는 것은 ISO 기본 미디어 파일 포맷에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함한다. 이 예에서, ISO 기본 미디어 파일 포맷은 HEVC 트랙에서 샘플 엔트리를 포함할 수도 있다. 이 예에서, ISO 기본 미디어 파일 포맷은 다음 중 하나 이상에 포함되는 속성들 박스를 포함할 수도 있다: HEVC 비디오 트랙의 트랙 헤더 박스, 미디어 정보 박스, 및 비디오 미디어 헤더 박스.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP의 세트를 시그널링하는 것을 포함하며, ESP의 세트를 시그널링하는 것은 ISO 기본 미디어 파일 포맷으로 ESP의 세트를 시그널링하는 것을 포함한다. 이 예에서, ISO 기본 미디어 파일 포맷은, HEVC 비디오 트랙의 트랙 헤더 박스, 미디어 정보 박스, 및 비디오 미디어 헤더 박스 중 하나 이상에 포함되는 기본 스트림 속성들 박스를 포함할 수도 있다. 이 예에서, 프로세싱은 인코딩하는 것을 포함할 수도 있으며; 그리고 비트스트림 속성들의 세트 또는 ESP를 시그널링하는 것은 비트스트림 속성들의 세트를 포함하기 위해서 비트스트림을 생성하는 것 또는 ESP를 포함하기 위해서 기본 스트림을 생성하는 것을 포함할 수도 있다. 이 예에서, 프로세싱은 디코딩하는 것을 포함할 수도 있고; 그리고 비트스트림 속성들의 세트 또는 ESP를 시그널링하는 것은 비트스트림 속성들의 세트를 포함하는 비트스트림 또는 ESP를 포함하는 기본 스트림을 수신하고 디코딩하는 것을 포함한다. 이 예에서, 프로세싱은 MANE에서 발생할 수도 있고; 그리고 비트스트림 속성들의 세트 또는 ESP를 시그널링하는 것은 비트스트림 또는 기본 스트림을 완전히 디코딩하는 일 없이 비트스트림 속성들의 세트 또는 ESP를 수신하고 해석하는 것을 포함할 수도 있다. 이 예에서, 그 방법을 수행하는 디바이스는 인코더; 디코더; 및 MANE 중 하나를 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들의 세트를 시그널링하는 것은 DASH MPD에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, DASH는 HTTP 통한 동적 적응적 스트리밍을 의미하며, HTTP는 하이퍼텍스트 전송 프로토콜을 의미하고 MPD는 미디어 프레젠테이션 기술을 의미한다. 이 예에서, DASH MPD에서 비트스트림 속성들의 세트를 시그널링하는 것은 기간 레벨; 적응 세트 레벨; 표현 레벨; 및 서브-표현 레벨 중 하나 상에서 시그널링하는 것을 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, DASH MPD에서 ESP의 세트를 시그널링하는 것을 포함하며, DASH는 HTTP를 통한 동적 적응적 스트리밍을 의미하며, HTTP는 하이퍼텍스트 전송 프로토콜을 의미하고 MPD는 미디어 프레젠테이션 기술을 의미한다. 이 예에서, DASH MPD에서 ESP의 세트를 시그널링하는 것은 기간 레벨; 적응 세트 레벨; 표현 레벨; 및 서브-표현 레벨 중 하나 상에서 시그널링하는 것을 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들의 세트를 시그널링하는 것은 RFC 6381에 따른 CODEC 파라미터들로서 비트스트림 속성들의 세트를 시그널링하는 것을 포함한다. 이 예에서, CODEC 파라미터들로서 비트스트림 속성들의 세트를 시그널링하는 것은 비트스트림의 프로파일들, 티어들 및 레벨들의 최대 세트들을 표현하기 위해 코덱들 파라미터들에서 다수의 프로파일들 및/또는 티어들 및 레벨들을 시그널링하는 것을 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, RFC 6381에 따른 CODEC 파라미터들로서 ESP의 세트를 시그널링하는 것을 포함한다. 이 예에서, CODEC 파라미터들로서 ESP의 세트를 시그널링하는 것은 기본 스트림의 프로파일들, 티어들 및 레벨들의 최대 세트들을 표현하기 위해 코덱들 파라미터들에서 다수의 프로파일들 및/또는 티어들 및 레벨들을 시그널링하는 것을 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들의 세트를 시그널링하는 것은 SDP 파일에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함한다. 이 예에서, SDP 파일에서 비트스트림 속성들의 세트를 시그널링하는 것은 비트스트림에서 프로파일들, 티어들 및 레벨들의 최대 세트들을 표현하기 위해 하나 이상의 미디어 레벨 SDP 속성들에서 다수의 프로파일들 및/또는 티어들 및 레벨들을 시그널링하는 것을 포함할 수도 있다. 이 예에서, SDP 파일에서 비트스트림 속성들의 세트를 시그널링하는 것은 다수의 프로파일들을 포함하는 옵션의 패이로드 유형 파라미터를 사용하는 것을 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, SDP 파일에서 ESP의 세트를 시그널링하는 것을 포함한다. 이 예에서, SDP 파일에서 ESP의 세트를 시그널링하는 것은 비트스트림에서 프로파일들, 티어들 및 레벨들의 최대 세트들을 표현하기 위해 하나 이상의 미디어 레벨 SDP 속성들에서 다수의 프로파일들 및/또는 티어들 및 레벨들을 시그널링하는 것을 포함할 수도 있다. 이 예에서, SDP 파일에서 비트스트림 속성들의 세트를 시그널링하는 것은 다수의 프로파일들을 포함하는 옵션의 패이로드 유형 파라미터를 사용하는 것을 포함할 수도 있다. 이 예에서, 프로세싱은 인코딩하는 것을 포함할 수도 있고; 그리고 비트스트림 속성들의 세트 또는 ESP를 시그널링하는 것은 비트스트림 속성들의 세트 또는 ESP를 포함하기 위해서 비트스트림 또는 기본 스트림을 생성하는 것을 포함할 수도 있다. 이 예에서, 프로세싱은 디코딩하는 것을 포함할 수도 있고; 그리고 비트스트림 속성들의 세트 또는 ESP를 시그널링하는 것은 비트스트림 속성들의 세트를 포함하는 비트스트림 또는 ESP를 포함하는 기본 스트림을 수신하고 디코딩하는 것을 포함할 수도 있다. 이 예에서, 프로세싱은 MANE에서 발생할 수도 있고; 그리고 비트스트림 속성들의 세트를 시그널링하는 것은 비트스트림 또는 기본 스트림을 완전히 디코딩하는 일 없이 비트스트림 속성들의 세트 또는 ESP를 수신하고 해석하는 것을 포함할 수도 있다. 이 예에서, 그 방법을 수행하는 디바이스는 인코더; 디코더; 및 MANE 중 하나를 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 티어 및 레벨이 비트스트림에서 모든 CVS들에 대한 변경 없이 남아 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 동일한 공간적 레졸루션을 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 시간적 서브-계층들의 동일한 최대 수를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 계층들의 동일한 최대 수를 갖는지의 여부를 나타내는 정보를 포함한다. 이 예에서, 그 방법은 비트스트림에서의 모든 CVS들에서, 모든 계층들이 계층 ID들의 동일한 세트를 갖는지의 여부를 시그널링하는 것을 더 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 동작 지점들의 동일한 세트를 지원하는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 동일한 최대 화상 레이트를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 동일한 최대 비트레이트를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 동일한 컬러 포맷을 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 동일한 애스팩트 비를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 루마 샘플들 및 크로마 샘플들에 대해 비트 심도들의 동일한 세트를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 적어도 하나의 파라미터 세트가 비트스트림에서 업데이트되는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 모든 파라미터 세트들이 비트스트림의 시작부분에 존재하는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 파라미터 세트들의 존재가 완전한 랜덤 접근성을 가능하게 하는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 프레임 화상들에서 코딩된 프로그레시브 프레임들만을 포함하는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 프레임 패킹 배열 SEI 메시지들을 포함하지 않는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 타일들의 지원을 포함하는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 동일한 타일 구성을 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 동일한 코딩 트리 블록 사이즈를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 동일한 최대 코딩 트리 블록 사이즈를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 동일한 최소 코딩 트리 블록 사이즈를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 시퀀스 레벨 파라미터들의 동일한 세트를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 시퀀스 레벨 파라미터들의 일부 코멘트 세트를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 특정 코딩 도구를 사용하는지의 여부를 나타내는 정보를 포함한다. 이 예에서, 특정 코딩 도구는 의존성 슬라이스들; 파면 병렬 프로세싱; 타일들; 및 가중된 예측 중 하나일 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 SOP 기술 SEI 메시지들에 의해 설명된 바와 동일한 SOP를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 CVS들이 용인가능한 품질로 디코딩되고 출력될 수 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림이 디코딩되는 경우에 활성화되는 하나의 VPS만이 있어야 하는지의 여부를 나타내는 정보를 포함한다. 이 예에서, 그 방법은 하나의 VPS의 VPS 식별 (ID) 을 시그널링하는 것을 더 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림이 디코딩되는 경우에 활성화되는 하나의 SPS만이 있어야 하는지의 여부를 나타내는 정보를 포함한다. 이 예에서, 그 방법은 하나의 SPS의 SPS 식별 (ID) 을 시그널링하는 것을 더 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림이 디코딩되는 경우에 활성화되는 하나의 PPS만이 있어야 하는지의 여부를 나타내는 정보를 포함한다. 이 예에서, 그 방법은 하나의 PPS의 PPS 식별 (ID) 을 시그널링하는 것을 더 포함할 수도 있다.
다른 예에서, 비디오 데이터를 프로세싱하는 방법이 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 모든 RAP 화상들이 비트스트림에서의 IDR 화상들인지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 모든 RAP 화상들이 비트스트림에서의 IDR 화상들이 아닌지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 IDR 화상들인 RAP 화상들이 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 RAP 화상들인 비-IDR 화상들이 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 RAP 화상들이 CRA 화상들인지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 RAP 화상들이 CRA 화상들이 아닌지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 CRA 화상들인 RAP 화상들이 비트스트림에 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 RAP 화상들인 비-CRA 화상들이 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 RAP 화상들이 BLA 화상들인지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 모든 RAP 화상들이 BLA 화상들이 아닌지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 BLA 화상들인 RAP 화상들이 비트스트림에 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 BLA 화상들인 비-IDR 화상들이 비트스트림에 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에 DLP들이 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에 비-NLP들이 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에 시간적 TSA 화상들이 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에 STSA 화상들이 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 기본 스트림이 디코딩되는 경우에 활성화되는 모든 시퀀스 파라미터 세트들에 대해 sps_temporal_id_nesting_flag의 값이 동일한지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 기본 스트림이 디코딩되는 경우에 활성화되는 모든 비디오 파라미터 세트들에 대해 vps_temporal_id_nesting_flag의 값이 동일한지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 프로파일들의 세트를 나타내는 정보를 포함한다.
비디오 데이터를 프로세싱하는 방법이, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 프로파일들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 티어들 및 레벨들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 공간적 레졸루션들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 시간적 서브-계층들의 최대 수들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 계층들의 최대 수들 및 계층 식별들 (ID들) 의 최대 수들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 동작 지점들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 최대 프레임 레이트들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 최대 비트레이트들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 컬러 포맷들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 샘플 애스팩트 비들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 루마 비트 심도들 및 크로마 비트 심도들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 프레임 패킹 유형들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 타일들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서의 최대 코딩 트리 블록 사이즈들 및 최소 코딩 블록 사이즈들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 위에서 설명된 방법들의 임의의 조합을 포함하는 방법을 설명한다. 이 예와 다른 예들의 방법들에서, 그 방법은 비트스트림 속성들의 세트를 시그널링하는 것을 포함할 수도 있다. 이 예에서, 비트스트림 속성들의 세트를 시그널링하는 것은, 비트스트림 속성들 SEI 메시지에서 비트스트림 속성들의 세트를 시그널링하는 것; 별개의 NAL 유닛 유형이 NAL 유닛에서 비트스트림 속성들의 세트의 존재를 정의하는, 별개의 NAL 유닛 유형을 갖는 NAL 유닛에서 비트스트림 속성들의 세트를 시그널링하는 것; ISO 기본 미디어 파일 포맷에서 비트스트림 속성들의 세트를 시그널링하는 것; DASH가 HTTP를 통한 동적 적응적 스트리밍을 의미하며, HTTP가 하이퍼텍스트 전송 프로토콜을 의미하고 MPD가 미디어 프레젠테이션 기술을 의미하는, DASH MPD에서 비트스트림 속성들의 세트를 시그널링하는 것; RFC 6381에 따른 코덱 파라미터들로서 비트스트림 속성들의 세트를 시그널링하는 것; 및 SDP 파일에서 비트스트림 속성들의 세트를 시그널링하는 것 중 적어도 하나를 포함할 수도 있다. 이 방법에서, 프로세싱은 인코딩하는 것을 포함할 수도 있고; 그리고 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것은 비트스트림 속성들의 세트를 포함하기 위해서 비트스트림을 생성하는 것을 포함할 수도 있다. 대안으로, 이 방법에서, 프로세싱은 디코딩하는 것을 포함할 수도 있고; 그리고 비트스트림에서의 비트스트림 속성들의 세트를 시그널링하는 것은 비트스트림 속성들의 세트를 수신하고 디코딩하는 것을 포함할 수도 있다. 이 방법에서, 프로세싱은 MANE에서 발생할 수도 있고; 그리고 비트스트림에서 비트스트림 속성들의 세트를 시그널링하는 것은 비트스트림을 완전히 디코딩하는 일 없이 비트스트림 속성들의 세트를 수신하고 해석하는 것을 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들에 대해 티어 및 레벨이 변경 없이 남아있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 동일한 공간적 레졸루션을 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 시간적 서브-계층들의 동일한 최대 수를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 계층들의 동일한 최대 수를 갖는지의 여부를 나타내는 정보를 포함한다. 이 예에서, 그 방법은 기본 스트림에서의 모든 CVS들에서, 모든 계층들이 계층 ID들의 동일한 세트를 갖는지의 여부를 시그널링하는 것을 더 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 동작 지점들의 동일한 세트를 지원하는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 동일한 최대 화상 레이트를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 동일한 최대 비트레이트를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 동일한 컬러 포맷을 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 동일한 샘플 애스팩트 비를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 루마 샘플들 및 크로마 샘플들에 대해 비트 심도들의 동일한 세트를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 적어도 하나의 파라미터 세트가 기본 스트림에서 업데이트되는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 모든 파라미터 세트들이 기본 스트림의 시작부분에 존재하는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 파라미터 세트들의 존재가 완전한 랜덤 접근성을 가능하게 하는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 프레임 화상들에서 코딩된 프로그레시브 프레임들만을 포함하는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 프레임 패킹 배열 SEI 메시지를 포함하지 않는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 타일들의 지원을 포함하는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 동일한 타일 구성을 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 동일한 코딩 트리 블록 사이즈를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 동일한 최대 코딩 트리 블록 사이즈를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 동일한 최소 코딩 트리 블록 사이즈를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 시퀀스 레벨 파라미터들의 동일한 세트를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 시퀀스 레벨 파라미터들의 일부 코멘트 세트를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서의 모든 CVS들이 특정 코딩 도구를 사용하는지의 여부를 나타내는 정보를 포함한다. 이 예에서, 특정 코딩 도구는 의존성 슬라이스들; 파면 병렬 프로세싱; 타일들; 및 가중된 예측 중 하나일 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 SOP 기술 SEI 메시지들에 의해 설명된 바와 동일한 SOP를 갖는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 CVS들이 용인가능한 품질로 디코딩되고 출력될 수 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림이 디코딩되는 경우에 활성화된 하나의 VPS만이 있어야 하는지의 여부를 나타내는 정보를 포함한다. 이 예에서, 그 방법은 하나의 VPS의 VPS 식별 (ID) 을 시그널링하는 것을 더 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, 기본 스트림은 기본 스트림이 디코딩되는 경우에 활성화된 하나의 SPS만이 있어야 하는지의 여부를 나타내는 정보를 포함한다. 이 예에서, 그 방법은 하나의 SPS의 SPS 식별 (ID) 을 시그널링하는 것을 더 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림이 디코딩되는 경우에 활성화된 하나의 PPS만이 있어야 하는지의 여부를 나타내는 정보를 포함한다. 이 예에서, 그 방법은 하나의 PPS의 PPS 식별 (ID) 을 시그널링하는 것을 더 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 모든 RAP 화상들이 기본 스트림에서의 IDR 화상들인지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 모든 RAP 화상들이 기본 스트림에서의 IDR 화상들이 아닌지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서 IDR 화상들인 RAP 화상들이 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서 RAP 화상들인 비-IDR 화상들이 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서의 모든 RAP 화상들이 CRA 화상들인지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 RAP 화상들이 CRA 화상들이 아닌지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 CRA 화상들인 RAP 화상들이 기본 스트림에 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서 RAP 화상들인 비-CRA 화상들이 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 RAP 화상들이 BLA 화상들인지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에서의 모든 RAP 화상들이 BLA 화상들이 아닌지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 BLA 화상들인 RAP 화상들이 기본 스트림에 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 BLA 화상들인 비-IDR 화상들이 기본 스트림에 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에 DLP들이 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에 NLP들이 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에 TSA 화상들이 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림에 STSA 화상들이 있는지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 시퀀스 파라미터 세트들에 대해 sps_temporal_id_nesting_flag의 값이 동일한지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP의 세트는 기본 스트림이 디코딩되는 경우에 활성화되는 모든 비디오 파라미터 세트들에 대해 vps_temporal_id_nesting_flag의 값이 동일한지의 여부를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, 비트스트림 속성들은 비트스트림에서 프로파일들의 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서 프로파일들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서 티어들 및 레벨들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서 공간적 레졸루션들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서의 시간적 서브-계층들의 최대 수들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서 계층들의 최대 수들 및 계층 식별들 (ID들) 의 최대 수들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서의 동작 지점들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서의 최대 프레임 레이트들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서의 최대 비트레이트들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서의 최대 세트 컬러 프레임들을 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서의 샘플 애스팩트 비들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서의 루마 비트 심도들 및 크로마 비트 심도들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서의 프레임 패킹 유형들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서의 타일들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 ESP들의 세트를 시그널링하는 것을 포함하며, ESP들은 기본 스트림에서의 최대 코딩 트리 블록 사이즈를 및 최소 코딩 블록 사이즈들의 최대 세트를 나타내는 정보를 포함한다.
다른 예에서, 본 개시물은 기본 스트림에서 ESP들의 세트를 시그널링하는 위의 방법들의 임의의 조합들을 포함하는 방법을 설명한다. 이 예에서, ESP들의 세트를 시그널링하는 것은, ESP SEI 메시지에서 ESP의 세트를 시그널링하는 것; 별개의 ESP NAL 유닛 유형이 NAL 유닛에서 ESP 속성들의 세트의 존재를 정의하는, 별개의 ESP NAL 유닛 유형을 갖는 NAL 유닛에서 ESP의 세트를 시그널링하는 것; ISO 기본 미디어 파일 포맷에서 ESP의 세트를 시그널링하는 것; DASH MPD에서 ESP의 세트를 시그널링하는 것; RFC 6381에 따른 CODEC 파라미터들로서 ESP들의 세트를 시그널링하는 것; 및 SDP 파일에서 ESP의 세트를 시그널링하는 것 중 적어도 하나를 포함할 수도 있다. 이 예에서, 프로세싱은 인코딩하는 것을 포함할 수도 있고; 그리고 ESP들의 세트를 시그널링하는 것은 ESP의 세트를 포함하기 위해서 기본 스트림을 생성하는 것을 포함할 수도 있다. 이 예에서, 프로세싱은 디코딩하는 것을 포함할 수도 있고; 그리고 ESP의 세트를 시그널링하는 것은 ESP의 세트를 포함하는 기본 스트림을 수신하고 디코딩하는 것을 포함할 수도 있다. 이 예에서, 프로세싱은 MANE에서 발생할 수도 있고; 그리고 ESP의 세트를 시그널링하는 것은 기본 스트림을 완전히 디코딩하는 일 없이 ESP의 세트를 수신하고 해석하는 것을 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 비트스트림에서 비트스트림 속성들을 시그널링하는 것을 포함하며, 비트스트림 속성들은 본 개시물에서 설명되는 비트스트림 속성들 중 하나 이상을 포함한다. 이 예에서, 프로세싱은 인코딩하는 것을 지칭할 수도 있고 시그널링은 비트스트림 또는 기본 스트림을 생성하는 것을 포함할 수도 있다. 이 예에서, 프로세싱은 디코딩하는 것을 지칭할 수도 있고 시그널링은 비트스트림 또는 기본 스트림을 수신하고 해석하는 것을 포함할 수도 있다. 이 예에서, 프로세싱은 디코딩 없는 프로세싱을 지칭할 수도 있고 시그널링은 비트스트림 또는 기본 스트림의 부분들을 수신하고 해석하는 것을 포함할 수도 있다.
다른 예에서, 본 개시물은 비디오 데이터를 프로세싱하는 방법을 설명하는데, 그 방법은, 기본 스트림에서 기본 스트림 속성들을 시그널링하는 것을 포함하며, 기본 스트림 속성들은 본 개시물에서 설명되는 기본 스트림 속성들 중 하나 이상을 포함한다. 이 예에서, 프로세싱은 인코딩하는 것을 지칭할 수도 있고 시그널링은 비트스트림 또는 기본 스트림을 생성하는 것을 포함할 수도 있다. 이 예에서, 프로세싱은 디코딩하는 것을 지칭할 수도 있고 시그널링은 비트스트림 또는 기본 스트림을 수신하고 해석하는 것을 포함할 수도 있다. 이 예에서, 프로세싱은 디코딩 없는 프로세싱을 지칭할 수도 있고 시그널링은 비트스트림 또는 기본 스트림의 부분들을 수신하고 해석하는 것을 포함할 수도 있다.
위에서 설명된 예의 방법들 중 하나 이상, 또는 그것들의 조합들에서, 속성들은, 다음 중 적어도 하나를 나타내는 정보를 포함할 수도 있다:
1) 티어 및 레벨이 비트스트림 또는 기본 스트림에서 모든 CVS들에 대해 변경 없이 유지되는지의 여부.
2) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 동일한 공간적 레졸루션을 갖는지의 여부.
3) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 시간적 서브-계층들의 동일한 (최대) 수를 갖는지의 여부.
4) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 계층들의 동일한 (최대) 수 (즉, VCL NAL 유닛들을 위한 nuh_reserved_zero_6bits에 대한 값들의 수) 를 갖는지의 여부와, 그렇다면, 비트스트림 또는 기본 스트림에서의 모든 CVS들에서 모든 계층들이 계층 ID들의 동일한 세트 (즉, nuh_reserved_zero_6bits 값들의 동일한 세트) 를 갖는지의 여부.
5) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 동작 지점들의 동일한 세트를 지원하는지의 여부. 동작 지점이, 예컨대, OpLayerIdSet로서 표시된 nuh_reserved_zero_6bits 값들 및 OpTid로서 표시된 TemporalId 값의 세트, 및 입력들로서의 OpTid 및 OpLayerIdSet가 독립적으로 디코딩가능한 HEVC에서 특정된 바와 같은 서브-비트스트림 추출 프로세스의 출력으로서 도출된 연관된 비트스트림 서브 세트에 의해 식별된다.
6) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 동일한 (최대) 화상 레이트를 갖는지의 여부.
7) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 동일한 최대 비트레이트를 갖는지의 여부.
8) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 동일한 컬러 포맷을 갖는지의 여부.
9) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 동일한 샘플 애스팩트 비를 갖는지의 여부.
10) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 루마 및 크로마에 대해 비트 심도들의 동일한 세트를 갖는지의 여부.
11) 비트스트림 또는 기본 스트림에서 적어도 하나의 파라미터 세트가 업데이트되는지의 여부, 즉, 동일한 VPS, SPS 또는 PPS ID를 사용하지만 VPS, SPS 또는 PPS가 변경되는지의 여부. 또는 비트스트림 또는 기본 스트림에서 적어도 하나의 VPS가 업데이트되는지의 여부, 비트스트림 또는 기본 스트림에서 적어도 하나의 SPS가 업데이트되는지의 여부, 및 비트스트림 또는 기본 스트림에서 적어도 하나의 PPS가 업데이트되는지의 여부.
12) 모든 파라미터 세트들이 비트스트림 또는 기본 스트림의 시작부분에 (즉, 비트스트림 또는 기본 스트림에서의 제 1 액세스 유닛 내에) 존재하는지의 여부 - 조건이 참이면, 예컨대, 에러 내성 목적으로, 다른 액세스 유닛들에서 반복되는 파라미터 세트들이 여전히 있을 수도 있지만, 임의의 파라미터 세트 업데이트가 없을 수도 있다는 것에 주의한다. 또는, 모든 VPS들이 비트스트림 또는 기본 스트림의 시작부분에 존재하는지의 여부, 모든 SPS들이 비트스트림 또는 기본 스트림의 시작부분에 존재하는지의 여부, 및 모든 PPS들이 비트스트림 또는 기본 스트림의 시작부분에 존재하는지의 여부.
13) 비트스트림 또는 기본 스트림에서의 파라미터 세트들의 존재가 완전한 랜덤 접근성을 가능하게 하는지의 여부, 즉, RAP 액세스 유닛 전의 모든 액세스 유닛들을 버림으로써 각각의 RAP 액세스 유닛의 포지션에서 랜덤 액세스를 수행하는 것과 RAP 화상 및 디코딩 순서에서의 모든 후속 비-TFD 화상들을 올바르게 디코딩하는 것이 가능한지의 여부. 이는 위의 랜덤 액세스가 임의의 RAP 액세스 유닛에서 수행되는 경우, 각각의 파라미터 세트는 그것이 활성화되는 것을 필요로 할 때 비트스트림에서 이용가능한 것을 필요로 한다.
14) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 프레임 화상들에서 코딩된 프로그레시브 프레임들만을 포함하는지의 여부, 즉, 스캔 유형이 인터레이스가 아니라 프로그레시브이고, 필드 화상들이 없는지의 여부.
15) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 프레임 패킹 배열 SEI 메시지들을 포함하지 않는지의 여부, 즉, 비트스트림 또는 기본 스트림에서 각각의 CVS에 의해 표현되는 비디오 세그먼트가 프레임-패킹된 것이 아닌지의 여부.
16) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 타일들의 지원 및/또는 동일한 타일 구성을 갖는지의 여부.
17) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 동일한 코딩 트리 블록 사이즈 및 동일한 최소 코딩 블록 사이즈를 갖는지의 여부.
18) 비트스트림 또는 기본 스트림에서의 모든 CVS들이, 예컨대, HEVC에서 특정된 바와 같은 hrd_parameters( ) 신택스 구조로 시그널링되는 바와 같은, 시퀀스 레벨 HRD 파라미터들 (또는 그 일부) 의 동일한 세트 및/또는, 예컨대, HEVC에서 특정된 바와 같은 vps_max_dec_pic_buffering[i] 신택스 엘리먼트에 의해 시그널링되는 바와 같은, 디코딩된 화상 버퍼 사이즈들의 동일한 세트를 갖는지의 여부.
19) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 특정 코딩 도구, 예컨대, 의존성 슬라이스들 (dependent_slices_enabled_flag가 1과 동일한 경우에 지원됨), 파면 병렬 프로세싱 (entropy_coding_sync_enabled_flag가 1과 동일한 경우에 지원됨), 가중된 예측 등을 사용하는지의 여부.
20) 비트스트림 또는 기본 스트림에서의 모든 CVS들이 SOP 기술 SEI 메시지들에 의해 설명된 바와 같은 화상들의 동일한 구조 (same structure of pictures; SOP) 들을 갖는지의 여부.
21) 비트스트림 또는 기본 스트림에서의 모든 CVS들의 TFD 화상들이 용인가능한 품질로 디코딩되고 출력될 수도 있는지의 여부.
22) 비트스트림 또는 기본 스트림이 디코딩되는 경우에 활성화되는 하나의 VPS만이 있는지의 여부와, 만약 그렇다면, 당해 VPS의 VPS ID가 있는지의 여부.
23) 비트스트림 또는 기본 스트림이 디코딩되는 경우에 활성화되는 하나의 SPS만이 있는지의 여부와, 만약 그렇다면, 당해 SPS의 SPS ID가 있는지의 여부.
24) 비트스트림 또는 기본 스트림이 디코딩되는 경우에 활성화되는 하나의 PPS만이 있는지의 여부와, 만약 그렇다면, 당해 PPS의 PPS ID가 있는지의 여부.
25) 다음의 것들 및 그것들의 조합들 중 하나 이상:
a. 비트스트림 또는 기본 스트림에서 모든 RAP 화상들이 IDR 화상들인지의 여부.
b. 비트스트림 또는 기본 스트림에서 모든 RAP 화상들이 IDR 화상들이 아닌지의 여부.
c. 비트스트림 또는 기본 스트림에서 IDR 화상들인 RAP 화상들이 있는지의 여부.
d. 비트스트림 또는 기본 스트림에서 비-IDR RAP 화상들이 있는지의 여부.
e. 비트스트림 또는 기본 스트림에서 모든 RAP 화상들이 CRA 화상들인지의 여부.
f. 비트스트림 또는 기본 스트림에서 모든 RAP 화상들이 CRA 화상들이 아닌지의 여부.
g. 비트스트림 또는 기본 스트림에서 CRA 화상들인 RAP 화상들이 있는지의 여부.
h. 비트스트림 또는 기본 스트림에서 비-CRA RAP 화상들이 있는지의 여부.
i. 비트스트림 또는 기본 스트림에서 모든 RAP 화상들이 BLA 화상들인지의 여부.
j. 비트스트림 또는 기본 스트림에서 모든 RAP 화상들이 BLA 화상들이 아닌지의 여부.
k. 비트스트림 또는 기본 스트림에서 BLA 화상들인 RAP 화상들이 있는지의 여부.
l. 비트스트림 또는 기본 스트림에서 비-IDR BLA 화상들이 있는지의 여부.
m. 비트스트림 또는 기본 스트림에서 DLP 화상들이 있는지의 여부.
n. 비트스트림 또는 기본 스트림에서 TFD 화상들이 있는지의 여부.
o. 비트스트림 또는 기본 스트림에서 TSA 화상들이 있는지의 여부.
p. 비트스트림 또는 기본 스트림에서 STSA 화상들이 있는지의 여부.
26) 기본 스트림이 디코딩되는 경우에 활성화되는 모든 시퀀스 파라미터 세트들에 대해 sps_temporal_id_nesting_flag의 값이 동일한지의 여부.
27) 기본 스트림이 디코딩되는 경우에 활성화되는 모든 비디오 파라미터 세트들에 대해 vps_temporal_id_nesting_flag의 값이 동일한지의 여부.
위에서 설명된 예의 방법들 중 하나 이상, 또는 그것들의 조합들에서, 속성들은, 다음 중 적어도 하나를 나타내는 정보를 포함할 수도 있다:
1) 비트스트림에서의 (아마도 0 내지 31의 범위의 i에 대한 general_profile_compatibility_flag[i]와, HEVC에서 특정된 바와 같은 general_reserved_zero_16bits에서 시그널링된 바와 같은 부가적인 제약들을 갖는) 프로파일들의 세트. 대안으로, 비트스트림 또는 기본 스트림에서의 프로파일들의 최대 세트 (즉, 비트스트림 또는 기본 스트림에서의 CVS가 그 세트에 포함되지 않는 프로파일을 준수하지 않을 것임).
2) 비트스트림 또는 기본 스트림에서의 티어들 및 레벨들의 (최대) 세트. 이는 최고 티어로서, 그리고 각각의 티어에 대해 최고 레벨로서 효율적으로 시그널링될 수도 있다.
3) 비트스트림 또는 기본 스트림에서의 공간적 레졸루션들의 (최대) 세트.
4) 비트스트림 또는 기본 스트림에서의 시간적 서브-계층들의 (최대) 수들의 (최대) 세트.
5) 비트스트림 또는 기본 스트림에서의 계층들의 (최대) 수들 (즉, VCL NAL 유닛들을 위한 nuh_reserved_zero_6bits에 대한 값들의 수) 의 (최대) 세트 및 계층 ID들 (즉, nuh_reserved_zero_6bits 값들) 의 (최대) 세트.
6) 비트스트림 또는 기본 스트림에서의 동작 지점들의 (최대) 세트.
7) 비트스트림 또는 기본 스트림에서의 (최대) 프레임 레이트들의 (최대) 세트.
8) 비트스트림 또는 기본 스트림에서의 최대 비트레이트들의 (최대) 세트.
9) 비트스트림 또는 기본 스트림에서의 컬러 포맷들의 (최대) 세트.
10) 비트스트림 또는 기본 스트림에서의 샘플 애스팩트 비들의 (최대) 세트.
11) 비트스트림 또는 기본 스트림에서의 루마 비트 심도들 및 크로마 비트 심도들의 (최대) 세트.
12) 비트스트림 또는 기본 스트림에서의 프레임 패킹 유형들의 (최대) 세트.
13) 비트스트림 또는 기본 스트림에서의 타일들의 (최대) 수.
14) 비트스트림 또는 기본 스트림에서의 코딩 트리 블록 사이즈들 및 최소 코딩 블록 사이즈들의 (최대) 세트.
위에서 설명된 예의 방법들의 하나 이상에서, 그것들의 조합들에서, 시그널링하는 것은 SEI 메시지를 통해 시그널링하는 것을 포함할 수도 있다. 위에서 설명된 예의 방법들의 하나 이상에서, 그것들의 조합들에서, 시그널링하는 것은 NAL 메시지를 통해 시그널링하는 것을 포함할 수도 있다.
하나 이상의 디바이스들은 위에서 설명된 방법들을 수행하도록 구성될 수도 있다. 일부 예들에서, 하나 이상의 디바이스들은 인코더, 디코더, 또는 MANE를 포함할 수도 있다.
하나 이상의 예들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 그것들의 임의의 조합으로 구현될 수도 있다. 소프트웨어로 구현된다면, 그 기능들은 하나 이상의 명령들 또는 코드로서 컴퓨터 판독가능 매체 상에 저장되거나 또는 그것을 통해 송신될 수도 있고 하드웨어 기반 프로세싱 유닛에 의해 실행될 수도 있다. 컴퓨터 판독가능 매체들은, 데이터 저장 매체들과 같은 유형의 (tangible) 매체에 대응하는 컴퓨터 판독가능 저장 매체들, 또는 예컨대 통신 프로토콜에 따라 한 장소에서 다른 장소로 컴퓨터 프로그램의 전달을 용이하게 하는 임의의 매체를 포함하는 통신 매체들을 포함할 수도 있다. 이런 방식으로, 컴퓨터 판독가능 매체들은 일반적으로 (1) 비일시적 (non-transitory) 인 유형의 (tangible) 컴퓨터 판독가능 저장 매체들 또는 (2) 신호 또는 반송파와 같은 통신 매체에 해당할 수도 있다. 데이터 저장 매체들은 본 개시물에서 설명된 기법들의 구현을 위한 명령들, 코드 및/또는 데이터 구조들을 취출하기 위해 하나 이상의 컴퓨터들 또는 하나 이상의 프로세서들에 의해 액세스될 수 있는 임의의 이용가능 매체들일 수도 있다. 컴퓨터 프로그램 제품은 컴퓨터 판독가능 매체를 포함할 수도 있다.
비제한적인 예로, 이러한 컴퓨터 판독가능 저장 매체들은 RAM, ROM, EEPROM, CD-ROM 또는 다른 광 디스크 스토리지, 자기 디스크 스토리지, 또는 다른 자기 저장 디바이스들, 플래시 메모리, 또는 소망의 프로그램 코드를 컴퓨터에 의해 액세스될 수 있는 명령들 또는 데이터 구조들의 형태로 저장하는데 사용될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 접속이 컴퓨터 판독가능 매체로 적절히 칭해진다. 예를 들어, 명령들이 웹사이트, 서버, 또는 다른 원격 자원으로부터 동축 케이블, 광섬유 케이블, 연선 (twisted pair), 디지털 가입자 회선 (DSL), 또는 무선 기술들 이를테면 적외선, 라디오, 및/또는 마이크로파를 이용하여 송신된다면, 동축 케이블, 광섬유 케이블, 연선, DSL, 또는 적외선, 라디오, 및 마이크로파와 같은 무선 기술은 매체의 정의에 포함된다. 그러나, 컴퓨터 판독가능 저장 매체들 및 데이터 저장 매체들은 커넥션들, 반송파들, 신호들, 또는 다른 일시적인 매체들을 포함하지 않지만, 대신 비일시적 (non-transient), 유형의 저장 매체들을 지향하고 있음이 이해되어야 한다. 디스크 (disk 및 disc) 는 본원에서 사용되는 바와 같이, 콤팩트 디스크 (compact disc, CD), 레이저 디스크, 광 디스크, 디지털 다용도 디스크 (DVD), 플로피 디스크 (floppy disk) 및 블루레이 디스크를 포함하는데, disk들은 보통 데이터를 자기적으로 재생하지만, disc들은 레이저들로써 광적으로 데이터를 재생한다. 상기한 것들의 조합들은 또한 컴퓨터 판독가능 매체들의 범위 내에 포함되어야 한다.
명령들은 하나 이상의 프로세서들, 이를테면 하나 이상의 디지털 신호 프로세서들 (DSP들), 범용 마이크로프로세서들, 주문형 집적회로들 (ASIC들), 필드 프로그램가능 로직 어레이들 (FPGA들), 또는 다른 동등한 집적 또는 개별 로직 회로에 의해 실행될 수도 있다. 따라서, 본원에서 사용되는 바와 같은 용어 "프로세서"는 앞서의 구조 또는 본원에서 설명된 기법들의 구현에 적합한 임의의 다른 구조 중 임의의 것을 말할 수도 있다. 덧붙여서, 일부 양태들에서, 본원에서 설명된 기능성은 인코딩 및 디코딩을 위해 구성되는, 또는 결합형 코덱 (codec) 으로 통합되는 전용 하드웨어 및/또는 소프트웨어 모듈들 내에 제공될 수도 있다. 또한, 본 기법들은 하나 이상의 회로들 또는 로직 엘리먼트들 내에 완전히 구현될 수 있다.
본 개시물의 기법들은 무선 핸드셋, 집적회로 (IC) 또는 IC들의 세트 (예컨대, 칩 셋) 를 포함하는 매우 다양한 디바이스들 또는 장치들로 구현될 수도 있다. 다양한 컴포넌트들, 모듈들, 또는 유닛들은 개시된 기법들을 수행하도록 구성된 디바이스들의 기능적 양태들을 강조하기 위해 본 개시물에서 설명되지만, 상이한 하드웨어 유닛들에 의한 실현을 반드시 요구하지는 않는다. 대신에, 위에서 설명된 바와 같이, 다양한 유닛들은 코덱 하드웨어 유닛에 결합되거나 또는 적합한 소프트웨어 및/또는 펌웨어와 함께, 위에서 설명된 바와 같은 하나 이상의 프로세서들을 포함하는, 상호운용적 하드웨어 유닛들의 컬렉션에 의해 제공될 수도 있다.
다양한 예들이 설명되어 있다. 이들 및 다른 예들은 다음의 청구항들의 범위 내에 있다.

Claims (51)

  1. 비디오 데이터를 프로세싱하는 방법으로서,
    상기 비디오 데이터의 인코딩된 화상들의 표현을 형성하는 비트들의 시퀀스를 포함하는 비트스트림의 시그널링된 속성에 기초하여, 비디오 디코더가 상기 비트스트림을 디코딩할 수 있는지의 여부를 결정하는 단계로서,
    특정 값을 갖는 상기 시그널링된 속성은, 프로파일 표시자 (indicator) 신택스 엘리먼트들의 값들이 상기 비트스트림이 디코딩되는 경우에 활성화되는 모든 시퀀스 파라미터 세트 (sequence parameter set; SPS) 들에 대해 각각 동일한 것을 나타내고,
    상기 SPS들의 각각은 코딩된 비디오 시퀀스 (CVS) 의 모든 슬라이스들에 적용하는 정보를 포함하며,
    상기 프로파일 표시자 신택스 엘리먼트들은, 상기 SPS들이 적용하는 CVS들이 프로파일을 준수하는 것을 나타내며, 상기 프로파일은 상기 프로파일을 준수하는 디코더들에 의해 지원된 알고리즘 특징들 및 제한들의 서브세트를 특정하는, 상기 비트스트림을 디코딩할 수 있는지의 여부를 결정하는 단계; 및
    상기 결정에 기초하여, 상기 비트스트림을 프로세싱하는 단계를 포함하는, 비디오 데이터를 프로세싱하는 방법.
  2. 제 1 항에 있어서,
    상기 시그널링된 속성은 국제 표준화 기구 (International Organization for Standardization; ISO) 기본 미디어 파일 포맷 파일로 시그널링되는, 비디오 데이터를 프로세싱하는 방법.
  3. 제 2 항에 있어서,
    상기 시그널링된 속성은 상기 ISO 기본 미디어 파일 포맷 파일의 고 효율 비디오 코딩 (High Efficiency Video Coding; HEVC) 비디오 트랙에서의 샘플 엔트리에서 시그널링되는, 비디오 데이터를 프로세싱하는 방법.
  4. 제 1 항에 있어서,
    상기 시그널링된 속성은 하이퍼텍스트 전송 프로토콜을 통한 동적 적응적 스트리밍 (dynamic adaptive streaming over hypertext transfer protocol; DASH) 의 미디어 프레젠테이션 기술 (media presentation description; MPD) 의 엘리먼트 또는 속성에서의 파라미터를 포함하는, 비디오 데이터를 프로세싱하는 방법.
  5. 제 1 항에 있어서,
    상기 시그널링된 속성은 세션 기술 프로토콜 (session description protocol; SDP) 의 파라미터를 포함하는, 비디오 데이터를 프로세싱하는 방법.
  6. 제 1 항에 있어서,
    상기 비트스트림을 프로세싱하는 단계는 상기 비트스트림을 디코딩하는 단계를 포함하는, 비디오 데이터를 프로세싱하는 방법.
  7. 제 1 항에 있어서,
    상기 시그널링된 속성은 특정 신택스 엘리먼트에 의해 표시되는, 비디오 데이터를 프로세싱하는 방법.
  8. 제 7 항에 있어서,
    상기 SPS들의 각각은 복수의 일반 프로파일 호환성 플래그 신택스 엘리먼트들을 포함하고,
    각각의 복수의 일반 프로파일 호환성 플래그 신택스 엘리먼트들에서의 각각의 개별 일반 프로파일 호환성 플래그 신택스 엘리먼트가 인덱스와 연관되며,
    대응하는 일반 프로파일 호환성 플래그 신택스 엘리먼트들은 동일한 인덱스와 연관되며,
    상기 특정 신택스 엘리먼트가 상기 특정 값을 갖는 경우, 상기 SPS들에서의 상기 대응하는 일반 프로파일 호환성 플래그 신택스 엘리먼트들의 각각은 동일한 값을 갖는, 비디오 데이터를 프로세싱하는 방법.
  9. 제 7 항에 있어서,
    상기 SPS들의 각각은 general_reserved_zero_16bits 신택스 엘리먼트를 포함하고,
    상기 특정 신택스 엘리먼트가 상기 특정 값을 갖는 경우, 상기 SPS들의 각각에서의 상기 general_reserved_zero_16bits 신택스 엘리먼트는 동일한 값을 갖는, 비디오 데이터를 프로세싱하는 방법.
  10. 제 1 항에 있어서,
    상기 시그널링된 속성은 보충 강화 정보 (Supplemental Enhancement Information; SEI) 메시지에서의 특정 신택스 엘리먼트를 포함하는, 비디오 데이터를 프로세싱하는 방법.
  11. 제 10 항에 있어서,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 비트스트림에서 처음 발생한 액세스 유닛에 있을 것을 요구하는, 비디오 데이터를 프로세싱하는 방법.
  12. 제 10 항에 있어서,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 비트스트림의 임의의 랜덤 액세스 포인트 (random access point; RAP) 액세스 유닛에서 시그널링되는 것을 허용하는, 비디오 데이터를 프로세싱하는 방법.
  13. 제 10 항에 있어서,
    네트워크 추상 계층 (Network Abstraction Layer; NAL) 유닛이 상기 SEI 메시지를 캡슐화하고,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 NAL 유닛에서의 임의의 SEI 메시지들 중 처음일 것을 요구하는, 비디오 데이터를 프로세싱하는 방법.
  14. 제 10 항에 있어서,
    네트워크 추상 계층 (NAL) 유닛이 상기 SEI 메시지를 캡슐화하고,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 NAL 유닛에서의 유일한 SEI 메시지일 것을 요구하는, 비디오 데이터를 프로세싱하는 방법.
  15. 제 10 항에 있어서,
    액세스 유닛에서의 네트워크 추상 계층 (NAL) 유닛이 상기 SEI 메시지를 캡슐화하고,
    비디오 코딩 사양은, 기본 스트림 레벨 NAL 유닛을 제외하면, 상기 NAL 유닛이 상기 액세스 유닛에서의 임의의 SEI NAL 유닛들 중 처음일 것을 요구하는, 비디오 데이터를 프로세싱하는 방법.
  16. 제 10 항에 있어서,
    상기 SEI 메시지는 다음의 복수의 플래그들:
    general_tier_flag 신택스 엘리먼트들 및 general_level_idc 신택스 엘리먼트들의 값들이 상기 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 동일한지의 여부를 나타내는 bitstream_tier_level_unchanging_flag 신택스 엘리먼트로서, 상기 general_tier_flag 신택스 엘리먼트들은 상기 general_level_idc 신택스 엘리먼트들의 해석을 위한 티어 콘텍스트들을 나타내고 상기 general_level_idc 신택스 엘리먼트들은 상기 비트스트림에서 CVS들이 준수하는 레벨들을 나타내는, 상기 bitstream_tier_level_unchanging_flag 신택스 엘리먼트;
    상기 비트스트림의 모든 상기 CVS들이 동일한 공간적 레졸루션을 갖는지의 여부를 나타내는 bitstream_spatial_resolution_unchanging_flag 신택스 엘리먼트;
    상기 비트스트림의 시간적 서브-계층들의 수가 상기 비트스트림에서의 모든 상기 CVS들에 대해 동일한지의 여부를 나타내는 신택스 엘리먼트;
    최대 비트레이트가 상기 비트스트림에서의 모든 상기 CVS들에 대해 동일한지의 여부를 나타내는 신택스 엘리먼트;
    최대 화상 레이트가 상기 비트스트림에서의 모든 상기 CVS들에 대해 동일한지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 동일한 컬러 포맷을 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 동일한 샘플 애스팩트 비를 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 루마 및 크로마에 대해 비트 심도들의 동일한 세트를 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 파라미터 세트들의 존재가 완전한 랜덤 접근성 (accessibility) 을 가능하게 하는지의 여부를 나타내는 신택스 엘리먼트;
    모든 파라미터 세트들이 상기 비트스트림에서 처음 발생한 액세스 유닛 내에 존재하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서 적어도 하나의 VPS가 업데이트되는지의 여부, 상기 비트스트림에서 적어도 하나의 SPS가 업데이트되는지의 여부, 또는 상기 비트스트림에서 적어도 하나의 화상 파라미터 세트 (PPS) 가 업데이트되는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들이 상기 비트스트림에서 처음 발생한 상기 액세스 유닛에 존재하는지의 여부를 나타내는 신택스 엘리먼트;
    동일한 SPS 식별자를 사용하지만 적어도 하나의 SPS가 업데이트되는지의 여부를 나타내는 신택스 엘리먼트;
    모든 PPS들이 상기 비트스트림의 시작부분에 존재하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서 동일한 PPS 식별자가 사용되지만 적어도 하나의 PPS가 변경되는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 프레임 화상들에서 코딩된 프로그레시브 프레임들만을 포함하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 프레임 패킹 배열 SEI 메시지들을 포함하지 않는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 동일한 타일 구성을 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 파면 병렬 프로세싱을 사용하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 의존성 슬라이스들을 사용하는지의 여부를 나타내는 신택스 엘리먼트; 및
    임의의 부가적인 데이터가 상기 SEI 메시지에서 뒤따르는지의 여부를 나타내는 신택스 엘리먼트
    중 하나 이상을 포함하는, 비디오 데이터를 프로세싱하는 방법.
  17. 비디오 데이터를 프로세싱하는 방법으로서,
    비트스트림의 속성을 시그널링하는 단계로서, 상기 비트스트림은 상기 비디오 데이터의 인코딩된 화상들의 표현을 형성하는 비트들의 시퀀스를 포함하고,
    특정 값을 갖는 상기 속성은, 프로파일 표시자 신택스 엘리먼트들의 값들이 상기 비트스트림이 디코딩되는 경우에 활성화되는 모든 시퀀스 파라미터 세트 (SPS) 들에 대해 각각 동일한 것을 나타내고,
    상기 SPS들의 각각은 코딩된 비디오 시퀀스 (CVS) 의 모든 슬라이스들에 적용하는 정보를 포함하며,
    상기 프로파일 표시자 신택스 엘리먼트들은, 상기 SPS들이 적용하는 CVS들이 프로파일을 준수하는 것을 나타내며, 상기 프로파일은 상기 프로파일을 준수하는 디코더들에 의해 지원된 알고리즘 특징들 및 제한들의 서브세트인, 상기 비트스트림의 속성을 시그널링하는 단계를 포함하는, 비디오 데이터를 프로세싱하는 방법.
  18. 제 17 항에 있어서,
    상기 속성은 특정 신택스 엘리먼트에 의해 표시되는, 비디오 데이터를 프로세싱하는 방법.
  19. 제 18 항에 있어서,
    상기 SPS들의 각각은 복수의 일반 프로파일 호환성 플래그 신택스 엘리먼트들을 포함하며,
    각각의 복수의 일반 프로파일 호환성 플래그 신택스 엘리먼트들에서의 각각의 개별 일반 프로파일 호환성 플래그 신택스 엘리먼트가 인덱스와 연관되며,
    대응하는 일반 프로파일 호환성 플래그 신택스 엘리먼트들은 동일한 인덱스와 연관되고,
    상기 특정 신택스 엘리먼트가 상기 특정 값을 갖는 경우, 상기 SPS들에서의 상기 대응하는 일반 프로파일 호환성 플래그 신택스 엘리먼트들의 각각은 동일한 값을 갖는, 비디오 데이터를 프로세싱하는 방법.
  20. 제 18 항에 있어서,
    상기 SPS들의 각각은 general_reserved_zero_16bits 신택스 엘리먼트를 포함하고,
    상기 특정 신택스 엘리먼트가 상기 특정 값을 갖는 경우, 상기 SPS들의 각각에서의 상기 general_reserved_zero_16bits 신택스 엘리먼트는 동일한 값을 갖는, 비디오 데이터를 프로세싱하는 방법.
  21. 제 17 항에 있어서,
    상기 속성을 시그널링하는 단계는 보충 강화 정보 (SEI) 메시지에서의 특정 신택스 엘리먼트를 시그널링하는 단계를 포함하는, 비디오 데이터를 프로세싱하는 방법.
  22. 제 21 항에 있어서,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 비트스트림에서 처음 발생한 액세스 유닛에 있을 것을 요구하는, 비디오 데이터를 프로세싱하는 방법.
  23. 제 21 항에 있어서,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 비트스트림의 임의의 랜덤 액세스 포인트 (RAP) 액세스 유닛에서 시그널링되는 것을 허용하는, 비디오 데이터를 프로세싱하는 방법.
  24. 제 21 항에 있어서,
    네트워크 추상 계층 (NAL) 유닛이 상기 SEI 메시지를 캡슐화하고,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 NAL 유닛에서의 임의의 SEI 메시지들 중 처음일 것을 요구하는, 비디오 데이터를 프로세싱하는 방법.
  25. 제 21 항에 있어서,
    네트워크 추상 계층 (NAL) 유닛이 상기 SEI 메시지를 캡슐화하고,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 NAL 유닛에서의 유일한 SEI 메시지일 것을 요구하는, 비디오 데이터를 프로세싱하는 방법.
  26. 제 21 항에 있어서,
    액세스 유닛에서의 네트워크 추상 계층 (NAL) 유닛이 상기 SEI 메시지를 캡슐화하고,
    비디오 코딩 사양은, 기본 스트림 레벨 NAL 유닛을 제외하면, 상기 NAL 유닛이 상기 액세스 유닛에서의 임의의 SEI NAL 유닛들 중 처음일 것을 요구하는, 비디오 데이터를 프로세싱하는 방법.
  27. 제 21 항에 있어서,
    상기 SEI 메시지는 다음의 복수의 플래그들:
    general_tier_flag 신택스 엘리먼트들 및 general_level_idc 신택스 엘리먼트들의 값들이 상기 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 동일한지의 여부를 나타내는 bitstream_tier_level_unchanging_flag 신택스 엘리먼트로서, 상기 general_tier_flag 신택스 엘리먼트들은 상기 general_level_idc 신택스 엘리먼트들의 해석을 위한 티어 콘텍스트들을 나타내고 상기 general_level_idc 신택스 엘리먼트들은 상기 비트스트림에서 CVS들이 준수하는 레벨들을 나타내는, 상기 bitstream_tier_level_unchanging_flag 신택스 엘리먼트;
    상기 비트스트림의 모든 상기 CVS들이 동일한 공간적 레졸루션을 갖는지의 여부를 나타내는 bitstream_spatial_resolution_unchanging_flag 신택스 엘리먼트;
    상기 비트스트림의 시간적 서브-계층들의 수가 상기 비트스트림에서의 모든 상기 CVS들에 대해 동일한지의 여부를 나타내는 신택스 엘리먼트;
    최대 비트레이트가 상기 비트스트림에서의 모든 상기 CVS들에 대해 동일한지의 여부를 나타내는 신택스 엘리먼트;
    최대 화상 레이트가 상기 비트스트림에서의 모든 상기 CVS들에 대해 동일한지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 동일한 컬러 포맷을 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 동일한 샘플 애스팩트 비를 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 루마 및 크로마에 대해 비트 심도들의 동일한 세트를 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 파라미터 세트들의 존재가 완전한 랜덤 접근성을 가능하게 하는지의 여부를 나타내는 신택스 엘리먼트;
    모든 파라미터 세트들이 상기 비트스트림에서 처음 발생한 액세스 유닛 내에 존재하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서 적어도 하나의 VPS가 업데이트되는지의 여부, 상기 비트스트림에서 적어도 하나의 SPS가 업데이트되는지의 여부, 또는 상기 비트스트림에서 적어도 하나의 화상 파라미터 세트 (PPS) 가 업데이트되는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들이 상기 비트스트림에서 처음 발생한 상기 액세스 유닛에 존재하는지의 여부를 나타내는 신택스 엘리먼트;
    동일한 SPS 식별자를 사용하지만 적어도 하나의 SPS가 업데이트되는지의 여부를 나타내는 신택스 엘리먼트;
    모든 PPS들이 상기 비트스트림의 시작부분에 존재하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서 동일한 PPS 식별자가 사용되지만 적어도 하나의 PPS가 변경되는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 프레임 화상들에서 코딩된 프로그레시브 프레임들만을 포함하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 프레임 패킹 배열 SEI 메시지들을 포함하지 않는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 동일한 타일 구성을 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 파면 병렬 프로세싱을 사용하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 의존성 슬라이스들을 사용하는지의 여부를 나타내는 신택스 엘리먼트; 및
    임의의 부가적인 데이터가 상기 SEI 메시지에서 뒤따르는지의 여부를 나타내는 신택스 엘리먼트
    중 하나 이상을 포함하는, 비디오 데이터를 프로세싱하는 방법.
  28. 비디오 프로세싱 디바이스로서,
    비디오 데이터의 인코딩된 화상들의 표현을 형성하는 비트들의 시퀀스를 포함하는 비트스트림의 적어도 일부를 저장하도록 구성된 하나 이상의 데이터 저장 매체; 및
    하나 이상의 프로세서들을 포함하고,
    상기 하나 이상의 프로세서들은,
    상기 비트스트림의 시그널링된 속성에 기초하여, 비디오 디코더가 비트스트림을 디코딩할 수 있는지의 여부를 결정하는 것으로서,
    특정 값을 갖는 상기 시그널링된 속성은, 프로파일 표시자 신택스 엘리먼트들의 값들이 상기 비트스트림이 디코딩되는 경우에 활성화되는 모든 시퀀스 파라미터 세트 (SPS) 들에 대해 각각 동일한 것을 나타내고,
    상기 SPS들의 각각은 코딩된 비디오 시퀀스 (CVS) 의 모든 슬라이스들에 적용하는 정보를 포함하며,
    상기 프로파일 표시자 신택스 엘리먼트들은, 상기 SPS들이 적용하는 CVS들이 프로파일을 준수하는 것을 나타내며, 상기 프로파일은 상기 프로파일을 준수하는 디코더들에 의해 지원된 알고리즘 특징들 및 제한들의 서브세트를 특정하는, 상기 비트스트림을 디코딩할 수 있는지의 여부를 결정하며;
    상기 결정에 기초하여, 상기 비트스트림을 프로세싱하도록 구성되는, 비디오 프로세싱 디바이스.
  29. 제 28 항에 있어서,
    상기 시그널링된 속성은 특정 신택스 엘리먼트에 의해 표시되는, 비디오 프로세싱 디바이스.
  30. 제 29 항에 있어서,
    상기 SPS들의 각각은 복수의 일반 프로파일 호환성 플래그 신택스 엘리먼트들을 포함하고,
    각각의 복수의 일반 프로파일 호환성 플래그 신택스 엘리먼트들에서의 각각의 개별 일반 프로파일 호환성 플래그 신택스 엘리먼트가 인덱스와 연관되며,
    대응하는 일반 프로파일 호환성 플래그 신택스 엘리먼트들은 동일한 인덱스와 연관되고,
    상기 특정 신택스 엘리먼트가 상기 특정 값을 갖는 경우, 상기 SPS들에서의 상기 대응하는 일반 프로파일 호환성 플래그 신택스 엘리먼트들의 각각은 동일한 값을 갖는, 비디오 프로세싱 디바이스.
  31. 제 29 항에 있어서,
    상기 SPS들의 각각은 general_reserved_zero_16bits 신택스 엘리먼트를 포함하고,
    상기 특정 신택스 엘리먼트가 상기 특정 값을 갖는 경우, 상기 SPS들의 각각에서의 상기 general_reserved_zero_16bits 신택스 엘리먼트는 동일한 값을 갖는, 비디오 프로세싱 디바이스.
  32. 제 28 항에 있어서,
    상기 시그널링된 속성은 보충 강화 정보 (SEI) 메시지에서의 특정 신택스 엘리먼트를 포함하는, 비디오 프로세싱 디바이스.
  33. 제 32 항에 있어서,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 비트스트림에서 처음 발생한 액세스 유닛에 있을 것을 요구하는, 비디오 프로세싱 디바이스.
  34. 제 32 항에 있어서,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 비트스트림의 임의의 랜덤 액세스 포인트 (RAP) 액세스 유닛에서 시그널링되는 것을 허용하는, 비디오 프로세싱 디바이스.
  35. 제 32 항에 있어서,
    네트워크 추상 계층 (NAL) 유닛이 상기 SEI 메시지를 캡슐화하고,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 NAL 유닛에서의 임의의 SEI 메시지들 중 처음일 것을 요구하는, 비디오 프로세싱 디바이스.
  36. 제 32 항에 있어서,
    네트워크 추상 계층 (NAL) 유닛이 상기 SEI 메시지를 캡슐화하고,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 NAL 유닛에서의 유일한 SEI 메시지일 것을 요구하는, 비디오 프로세싱 디바이스.
  37. 제 32 항에 있어서,
    액세스 유닛에서의 네트워크 추상 계층 (NAL) 유닛이 상기 SEI 메시지를 캡슐화하고,
    비디오 코딩 사양은, 기본 스트림 레벨 NAL 유닛을 제외하면, 상기 NAL 유닛이 상기 액세스 유닛에서의 임의의 SEI NAL 유닛들 중 처음일 것을 요구하는, 비디오 프로세싱 디바이스.
  38. 제 32 항에 있어서,
    상기 SEI 메시지는 다음의 복수의 플래그들:
    general_tier_flag 신택스 엘리먼트들 및 general_level_idc 신택스 엘리먼트들의 값들이 상기 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 동일한지의 여부를 나타내는 bitstream_tier_level_unchanging_flag 신택스 엘리먼트로서, 상기 general_tier_flag 신택스 엘리먼트들은 상기 general_level_idc 신택스 엘리먼트들의 해석을 위한 티어 콘텍스트들을 나타내고 상기 general_level_idc 신택스 엘리먼트들은 상기 비트스트림에서 CVS들이 준수하는 레벨들을 나타내는, 상기 bitstream_tier_level_unchanging_flag 신택스 엘리먼트;
    상기 비트스트림의 모든 상기 CVS들이 동일한 공간적 레졸루션을 갖는지의 여부를 나타내는 bitstream_spatial_resolution_unchanging_flag 신택스 엘리먼트;
    상기 비트스트림의 시간적 서브-계층들의 수가 상기 비트스트림에서의 모든 상기 CVS들에 대해 동일한지의 여부를 나타내는 신택스 엘리먼트;
    최대 비트레이트가 상기 비트스트림에서의 모든 상기 CVS들에 대해 동일한지의 여부를 나타내는 신택스 엘리먼트;
    최대 화상 레이트가 상기 비트스트림에서의 모든 상기 CVS들에 대해 동일한지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 동일한 컬러 포맷을 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 동일한 샘플 애스팩트 비를 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 루마 및 크로마에 대해 비트 심도들의 동일한 세트를 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 파라미터 세트들의 존재가 완전한 랜덤 접근성을 가능하게 하는지의 여부를 나타내는 신택스 엘리먼트;
    모든 파라미터 세트들이 상기 비트스트림에서 처음 발생한 액세스 유닛 내에 존재하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서 적어도 하나의 VPS가 업데이트되는지의 여부, 상기 비트스트림에서 적어도 하나의 SPS가 업데이트되는지의 여부, 또는 상기 비트스트림에서 적어도 하나의 화상 파라미터 세트 (PPS) 가 업데이트되는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들이 상기 비트스트림에서 처음 발생한 상기 액세스 유닛에 존재하는지의 여부를 나타내는 신택스 엘리먼트;
    동일한 SPS 식별자를 사용하지만 적어도 하나의 SPS가 업데이트되는지의 여부를 나타내는 신택스 엘리먼트;
    모든 PPS들이 상기 비트스트림의 시작부분에 존재하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서 동일한 PPS 식별자가 사용되지만 적어도 하나의 PPS가 변경되는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 프레임 화상들에서 코딩된 프로그레시브 프레임들만을 포함하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 프레임 패킹 배열 SEI 메시지들을 포함하지 않는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 동일한 타일 구성을 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 파면 병렬 프로세싱을 사용하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 의존성 슬라이스들을 사용하는지의 여부를 나타내는 신택스 엘리먼트; 및
    임의의 부가적인 데이터가 상기 SEI 메시지에서 뒤따르는지의 여부를 나타내는 신택스 엘리먼트
    중 하나 이상을 포함하는, 비디오 프로세싱 디바이스.
  39. 비디오 프로세싱 디바이스로서,
    비디오 데이터를 저장하도록 구성된 하나 이상의 데이터 저장 매체; 및
    하나 이상의 프로세서들을 포함하고,
    상기 하나 이상의 프로세서들은,
    상기 비디오 데이터의 인코딩된 화상들의 표현을 형성하는 비트들의 시퀀스를 포함하는 비트스트림의 속성을 시그널링하도록 구성되며,
    특정 값을 갖는 상기 시그널링된 속성은, 프로파일 표시자 신택스 엘리먼트들의 값들이 상기 비트스트림이 디코딩되는 경우에 활성화되는 모든 시퀀스 파라미터 세트 (SPS) 들에 대해 각각 동일한 것을 나타내고,
    상기 SPS들의 각각은 코딩된 비디오 시퀀스 (CVS) 의 모든 슬라이스들에 적용하는 정보를 포함하며,
    상기 프로파일 표시자 신택스 엘리먼트들은, 상기 SPS들이 적용하는 CVS들이 프로파일을 준수하는 것을 나타내며, 상기 프로파일은 상기 프로파일을 준수하는 디코더들에 의해 지원된 알고리즘 특징들 및 제한들의 서브세트를 특정하는, 비디오 프로세싱 디바이스.
  40. 제 39 항에 있어서,
    상기 속성은 특정 신택스 엘리먼트에 의해 표시되는, 비디오 프로세싱 디바이스.
  41. 제 40 항에 있어서,
    상기 SPS들의 각각은 복수의 일반 프로파일 호환성 플래그 신택스 엘리먼트들을 포함하며,
    각각의 복수의 일반 프로파일 호환성 플래그 신택스 엘리먼트들에서의 각각의 개별 일반 프로파일 호환성 플래그 신택스 엘리먼트가 인덱스와 연관되며,
    대응하는 일반 프로파일 호환성 플래그 신택스 엘리먼트들은 동일한 인덱스와 연관되고,
    상기 특정 신택스 엘리먼트가 상기 특정 값을 갖는 경우, 상기 SPS들에서의 상기 대응하는 일반 프로파일 호환성 플래그 신택스 엘리먼트들의 각각은 동일한 값을 갖는, 비디오 프로세싱 디바이스.
  42. 제 40 항에 있어서,
    상기 SPS들의 각각은 general_reserved_zero_16bits 신택스 엘리먼트를 포함하고,
    상기 특정 신택스 엘리먼트가 상기 특정 값을 갖는 경우, 상기 SPS들의 각각에서의 상기 general_reserved_zero_16bits 신택스 엘리먼트는 동일한 값을 갖는, 비디오 프로세싱 디바이스.
  43. 제 39 항에 있어서,
    상기 하나 이상의 프로세서들은, 보충 강화 정보 (SEI) 메시지에서 특정 신택스 엘리먼트를 시그널링하도록 구성되는, 비디오 프로세싱 디바이스.
  44. 제 43 항에 있어서,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 비트스트림에서 처음 발생한 액세스 유닛에 있을 것을 요구하는, 비디오 프로세싱 디바이스.
  45. 제 43 항에 있어서,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 비트스트림의 임의의 랜덤 액세스 포인트 (RAP) 액세스 유닛에서 시그널링되는 것을 허용하는, 비디오 프로세싱 디바이스.
  46. 제 43 항에 있어서,
    네트워크 추상 계층 (NAL) 유닛이 상기 SEI 메시지를 캡슐화하고,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 NAL 유닛에서의 임의의 SEI 메시지들 중 처음일 것을 요구하는, 비디오 프로세싱 디바이스.
  47. 제 43 항에 있어서,
    네트워크 추상 계층 (NAL) 유닛이 상기 SEI 메시지를 캡슐화하고,
    비디오 코딩 사양은 상기 SEI 메시지가 상기 NAL 유닛에서의 유일한 SEI 메시지일 것을 요구하는, 비디오 프로세싱 디바이스.
  48. 제 43 항에 있어서,
    액세스 유닛에서의 네트워크 추상 계층 (NAL) 유닛이 상기 SEI 메시지를 캡슐화하고,
    비디오 코딩 사양은, 기본 스트림 레벨 NAL 유닛을 제외하면, 상기 NAL 유닛이 상기 액세스 유닛에서의 임의의 SEI NAL 유닛들 중 처음일 것을 요구하는, 비디오 프로세싱 디바이스.
  49. 제 43 항에 있어서,
    상기 SEI 메시지는 다음의 복수의 플래그들:
    general_tier_flag 신택스 엘리먼트들 및 general_level_idc 신택스 엘리먼트들의 값들이 상기 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들에 대해 동일한지의 여부를 나타내는 bitstream_tier_level_unchanging_flag 신택스 엘리먼트로서, 상기 general_tier_flag 신택스 엘리먼트들은 상기 general_level_idc 신택스 엘리먼트들의 해석을 위한 티어 콘텍스트들을 나타내고 상기 general_level_idc 신택스 엘리먼트들은 상기 비트스트림에서 CVS들이 준수하는 레벨들을 나타내는, 상기 bitstream_tier_level_unchanging_flag 신택스 엘리먼트;
    상기 비트스트림의 모든 상기 CVS들이 동일한 공간적 레졸루션을 갖는지의 여부를 나타내는 bitstream_spatial_resolution_unchanging_flag 신택스 엘리먼트;
    상기 비트스트림의 시간적 서브-계층들의 수가 상기 비트스트림에서의 모든 상기 CVS들에 대해 동일한지의 여부를 나타내는 신택스 엘리먼트;
    최대 비트레이트가 상기 비트스트림에서의 모든 상기 CVS들에 대해 동일한지의 여부를 나타내는 신택스 엘리먼트;
    최대 화상 레이트가 상기 비트스트림에서의 모든 상기 CVS들에 대해 동일한지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 동일한 컬러 포맷을 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 동일한 샘플 애스팩트 비를 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 루마 및 크로마에 대해 비트 심도들의 동일한 세트를 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 파라미터 세트들의 존재가 완전한 랜덤 접근성을 가능하게 하는지의 여부를 나타내는 신택스 엘리먼트;
    모든 파라미터 세트들이 상기 비트스트림에서 처음 발생한 액세스 유닛 내에 존재하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서 적어도 하나의 VPS가 업데이트되는지의 여부, 상기 비트스트림에서 적어도 하나의 SPS가 업데이트되는지의 여부, 또는 상기 비트스트림에서 적어도 하나의 화상 파라미터 세트 (PPS) 가 업데이트되는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림이 디코딩되는 경우에 활성화되는 모든 SPS들이 상기 비트스트림에서 처음 발생한 상기 액세스 유닛에 존재하는지의 여부를 나타내는 신택스 엘리먼트;
    동일한 SPS 식별자를 사용하지만 적어도 하나의 SPS가 업데이트되는지의 여부를 나타내는 신택스 엘리먼트;
    모든 PPS들이 상기 비트스트림의 시작부분에 존재하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서 동일한 PPS 식별자가 사용되지만 적어도 하나의 PPS가 변경되는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 프레임 화상들에서 코딩된 프로그레시브 프레임들만을 포함하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 프레임 패킹 배열 SEI 메시지들을 포함하지 않는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 동일한 타일 구성을 갖는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 파면 병렬 프로세싱을 사용하는지의 여부를 나타내는 신택스 엘리먼트;
    상기 비트스트림에서의 모든 상기 CVS들이 의존성 슬라이스들을 사용하는지의 여부를 나타내는 신택스 엘리먼트; 및
    임의의 부가적인 데이터가 상기 SEI 메시지에서 뒤따르는지의 여부를 나타내는 신택스 엘리먼트
    중 하나 이상을 포함하는, 비디오 프로세싱 디바이스.
  50. 비디오 디코딩 디바이스로서,
    비디오 데이터의 인코딩된 화상들의 표현을 형성하는 비트들의 시퀀스를 포함하는 비트스트림의 시그널링된 속성에 기초하여, 비디오 디코더가 상기 비트스트림을 디코딩할 수 있는지의 여부를 결정하는 수단으로서,
    특정 값을 갖는 상기 시그널링된 속성은, 프로파일 표시자 신택스 엘리먼트들의 값들이 상기 비트스트림이 디코딩되는 경우에 활성화되는 모든 시퀀스 파라미터 세트 (SPS) 들에 대해 각각 동일한 것을 나타내고,
    상기 SPS들의 각각은 코딩된 비디오 시퀀스 (CVS) 의 모든 슬라이스들에 적용하는 정보를 포함하며,
    상기 프로파일 표시자 신택스 엘리먼트들은, 상기 SPS들이 적용하는 CVS들이 프로파일을 준수하는 것을 나타내며, 상기 프로파일은 상기 프로파일을 준수하는 디코더들에 의해 지원된 알고리즘 특징들 및 제한들의 서브세트를 특정하는, 상기 비트스트림을 디코딩할 수 있는지의 여부를 결정하는 수단; 및
    상기 결정에 기초하여, 상기 비트스트림을 프로세싱하는 수단을 포함하는, 비디오 디코딩 디바이스.
  51. 명령들을 저장하고 있는 비일시적 컴퓨터 판독가능 데이터 저장 매체로서,
    상기 명령들은, 실행되는 경우, 비디오 디코더로 하여금,
    비디오 데이터의 인코딩된 화상들의 표현을 형성하는 비트들의 시퀀스를 포함하는 비트스트림의 시그널링된 속성에 기초하여, 비디오 디코더가 상기 비트스트림을 디코딩할 수 있는지의 여부를 결정하게 하는 것으로서,
    특정 값을 갖는 상기 시그널링된 속성은, 프로파일 표시자 신택스 엘리먼트들의 값들이 상기 비트스트림이 디코딩되는 경우에 활성화되는 모든 시퀀스 파라미터 세트 (SPS) 들에 대해 각각 동일한 것을 나타내고,
    상기 SPS들의 각각은 코딩된 비디오 시퀀스 (CVS) 의 모든 슬라이스들에 적용하는 정보를 포함하며,
    상기 프로파일 표시자 신택스 엘리먼트들은, 상기 SPS들이 적용하는 CVS들이 프로파일을 준수하는 것을 나타내며, 상기 프로파일은 상기 프로파일을 준수하는 디코더들에 의해 지원된 알고리즘 특징들 및 제한들의 서브세트를 특정하는, 상기 비트스트림을 디코딩할 수 있는지의 여부를 결정하게 하며;
    상기 결정에 기초하여, 상기 비트스트림을 프로세싱하게 하도록 구성되는, 비일시적 컴퓨터 판독가능 데이터 저장 매체.
KR1020157010473A 2012-09-24 2013-09-24 비디오 코딩에서의 비트스트림 속성들 KR101652208B1 (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201261705047P 2012-09-24 2012-09-24
US61/705,047 2012-09-24
US201261707612P 2012-09-28 2012-09-28
US61/707,612 2012-09-28
US14/034,172 2013-09-23
US14/034,172 US9161039B2 (en) 2012-09-24 2013-09-23 Bitstream properties in video coding
PCT/US2013/061337 WO2014047613A1 (en) 2012-09-24 2013-09-24 Bitstream properties in video coding

Publications (2)

Publication Number Publication Date
KR20150063456A KR20150063456A (ko) 2015-06-09
KR101652208B1 true KR101652208B1 (ko) 2016-08-29

Family

ID=50338853

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157010473A KR101652208B1 (ko) 2012-09-24 2013-09-24 비디오 코딩에서의 비트스트림 속성들

Country Status (6)

Country Link
US (1) US9161039B2 (ko)
EP (1) EP2898698B1 (ko)
JP (1) JP5973077B2 (ko)
KR (1) KR101652208B1 (ko)
CN (1) CN104813671B (ko)
WO (1) WO2014047613A1 (ko)

Families Citing this family (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9992490B2 (en) 2012-09-26 2018-06-05 Sony Corporation Video parameter set (VPS) syntax re-ordering for easy access of extension parameters
US20140092992A1 (en) * 2012-09-30 2014-04-03 Microsoft Corporation Supplemental enhancement information including confidence level and mixed content information
US10219006B2 (en) 2013-01-04 2019-02-26 Sony Corporation JCTVC-L0226: VPS and VPS_extension updates
US10419778B2 (en) * 2013-01-04 2019-09-17 Sony Corporation JCTVC-L0227: VPS_extension with updates of profile-tier-level syntax structure
BR112015017192B1 (pt) * 2013-01-18 2023-11-07 Canon Kabushiki Kaisha Método e dispositivo para encapsular dados de mídia programada particionados, meio de armazenamento e meio de gravação
HUE043713T2 (hu) * 2013-03-29 2019-09-30 Intel Ip Corp Minõségtudatos sebességillesztési technikák DASH streameléshez
US20140372569A1 (en) * 2013-06-14 2014-12-18 Samsung Electronics Co., Ltd. Controlling dash client rate adaptation
CN105359522B (zh) * 2013-07-12 2019-09-17 索尼公司 图像解码装置和方法
MY177309A (en) * 2013-07-22 2020-09-11 Sony Corp Information processing apparatus and method
US20150049105A1 (en) * 2013-08-13 2015-02-19 Mediatek Inc. Data processing apparatus for transmitting/receiving indication information of pixel data grouping setting via display interface and related data processing method
GB2519745B (en) * 2013-10-22 2018-04-18 Canon Kk Method of processing disordered frame portion data units
EP3085083B1 (en) * 2013-12-18 2021-12-15 HFI Innovation Inc. Method and apparatus for palette initialization and management
EP3087742B1 (en) 2013-12-27 2020-09-23 HFI Innovation Inc. Method and apparatus for syntax redundancy removal in palette coding
WO2015096647A1 (en) 2013-12-27 2015-07-02 Mediatek Inc. Method and apparatus for major color index map coding
WO2015096812A1 (en) 2013-12-27 2015-07-02 Mediatek Inc. Method and apparatus for palette coding with cross block prediction
US20150195554A1 (en) * 2014-01-03 2015-07-09 Sharp Laboratories Of America, Inc. Constraints and enhancements for a scalable video coding system
BR112016012449A2 (pt) 2014-01-07 2017-08-08 Mediatek Inc Método e aparelho para predição de índices de cores
JP2015136059A (ja) * 2014-01-17 2015-07-27 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
US10334260B2 (en) * 2014-03-17 2019-06-25 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
US20150264404A1 (en) * 2014-03-17 2015-09-17 Nokia Technologies Oy Method and apparatus for video coding and decoding
US9402083B2 (en) * 2014-04-24 2016-07-26 Vidyo, Inc. Signaling conformance points using profile space
US9794626B2 (en) * 2014-05-01 2017-10-17 Qualcomm Incorporated Partitioning schemes in multi-layer video coding
US9813719B2 (en) 2014-06-18 2017-11-07 Qualcomm Incorporated Signaling HRD parameters for bitstream partitions
CN104093028B (zh) * 2014-06-25 2019-02-01 中兴通讯股份有限公司 一种设备能力协商的方法和装置
US20170127073A1 (en) * 2014-06-30 2017-05-04 Sony Corporation Information processing device and method
MX368088B (es) * 2014-06-30 2019-09-19 Sony Corp Procesador de informacion y metodo de procesamiento de informacion.
US10397642B2 (en) * 2014-08-07 2019-08-27 Sony Corporation Transmission device, transmission method, and reception device
US20160112724A1 (en) * 2014-10-15 2016-04-21 Qualcomm Incorporated Hrd descriptor and buffer model of data streams for carriage of hevc extensions
US9930378B2 (en) * 2015-02-11 2018-03-27 Qualcomm Incorporated Signaling of operation points for carriage of HEVC extensions
US10129566B2 (en) 2015-03-16 2018-11-13 Microsoft Technology Licensing, Llc Standard-guided video decoding performance enhancements
US9979983B2 (en) 2015-03-16 2018-05-22 Microsoft Technology Licensing, Llc Application- or context-guided video decoding performance enhancements
US20170091896A1 (en) * 2015-09-30 2017-03-30 Samsung Display Co., Ltd. Independent multi-source display device
US10798422B2 (en) 2015-10-20 2020-10-06 Intel Corporation Method and system of video coding with post-processing indication
EP3417625A1 (en) 2016-02-16 2018-12-26 Fraunhofer Gesellschaft zur Förderung der Angewand Efficient adaptive streaming
CN107395950B (zh) * 2016-05-16 2021-11-09 西安电子科技大学 媒体数据处理方法和装置及系统
US10623755B2 (en) 2016-05-23 2020-04-14 Qualcomm Incorporated End of sequence and end of bitstream NAL units in separate file tracks
US11166027B2 (en) 2016-06-10 2021-11-02 Apple Inc. Content adaptation for streaming
CN109691103B (zh) 2016-07-14 2023-02-28 皇家Kpn公司 视频编码
US10834153B2 (en) * 2016-08-24 2020-11-10 Qualcomm Incorporated System level signaling of SEI tracks for media data streaming
CN114928736B (zh) 2016-10-12 2024-04-19 弗劳恩霍夫应用研究促进协会 空间不均等流媒体化
US10805611B2 (en) * 2016-10-18 2020-10-13 Mediatek Inc. Method and apparatus of constrained sequence header
CN116233424A (zh) 2016-12-23 2023-06-06 华为技术有限公司 一种用于扩展预定定向帧内预测模式集合的帧内预测装置
US10999605B2 (en) * 2017-01-10 2021-05-04 Qualcomm Incorporated Signaling of important video information in file formats
GB2560720B (en) * 2017-03-20 2021-08-25 Canon Kk Method and apparatus for encoding and transmitting at least a spatial part of a video sequence
CN108965894B (zh) * 2017-05-27 2021-12-21 华为技术有限公司 一种视频图像的编解码方法及装置
CN117336495A (zh) * 2017-10-06 2024-01-02 松下电器(美国)知识产权公司 编码方法和解码方法
CN110035331B (zh) 2018-01-12 2021-02-09 华为技术有限公司 一种媒体信息的处理方法及装置
WO2019162230A1 (en) * 2018-02-20 2019-08-29 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Picture/video coding supporting varying resolution and/or efficiently handling region-wise packing
WO2019195037A1 (en) 2018-04-03 2019-10-10 Futurewei Technologies, Inc. Bitstream signaling of error mitigation in sub-picture bitstream based viewport dependent video coding
US11381621B2 (en) 2018-04-11 2022-07-05 Samsung Electronics Co., Ltd. Device and method for processing data in multimedia system
US11553180B2 (en) 2018-06-21 2023-01-10 Telefonaktiebolaget Lm Ericsson (Publ) Tile partitions with sub-tiles in video coding
US11711530B2 (en) 2018-06-21 2023-07-25 Telefonaktiebolaget Lm Ericsson (Publ) Tile shuffling for 360 degree video decoding
WO2019243541A2 (en) 2018-06-21 2019-12-26 Telefonaktiebolaget Lm Ericsson (Publ) Flexible tile partitions
ES2962871T3 (es) * 2018-09-18 2024-03-21 Nokia Technologies Oy Método y aparato para señalización de restricción de perfil no binario para codificación de video
US11196789B2 (en) * 2018-09-20 2021-12-07 Panasonic Intellectual Property Management Co., Ltd. Recording device and recording method
US11477470B2 (en) * 2018-10-02 2022-10-18 Telefonaktiebolaget Lm Ericsson (Publ) Encoding and decoding pictures based on tile group ID
US11310516B2 (en) * 2018-12-21 2022-04-19 Hulu, LLC Adaptive bitrate algorithm with cross-user based viewport prediction for 360-degree video streaming
CN113170100A (zh) 2018-12-29 2021-07-23 华为技术有限公司 用于帧内预测的方法和装置
BR112021012708A2 (pt) * 2018-12-31 2021-09-14 Huawei Technologies Co., Ltd. Método e aparelho de modelagem linear de componente cruzado para predição intra
US11032574B2 (en) * 2018-12-31 2021-06-08 Tencent America LLC Method and apparatus for video coding
EP3769522A4 (en) * 2019-01-16 2021-01-27 Telefonaktiebolaget LM Ericsson (publ) VIDEO ENCODING WITH EQUAL TILE DISTRIBUTION WITH REMAINING
CN113383548A (zh) 2019-02-03 2021-09-10 北京字节跳动网络技术有限公司 Mv精度和mv差编解码之间的相互作用
JPWO2020162609A1 (ja) * 2019-02-08 2021-12-23 シャープ株式会社 動画像符号化装置および動画像復号装置
KR102662449B1 (ko) 2019-02-14 2024-04-30 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 디코더 측 정제 툴들의 크기 선택 적용
US11272158B2 (en) * 2019-03-01 2022-03-08 Tencent America LLC Method and apparatus for point cloud compression
WO2020182815A1 (en) * 2019-03-11 2020-09-17 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Encoder and decoder, encoding method and decoding method with profile and level dependent coding options
WO2020185885A1 (en) * 2019-03-11 2020-09-17 Futurewei Technologies, Inc. Interpolation filter clipping for sub-picture motion vectors
KR20220024142A (ko) * 2019-06-24 2022-03-03 인터디지털 브이씨 홀딩스 인코포레이티드 하이 레벨 구문 요소들을 이용하여 디코딩 데이터를 시그널링하기 위한 방법 및 장치
CN110446047A (zh) * 2019-08-16 2019-11-12 苏州浪潮智能科技有限公司 视频码流的解码方法及装置
KR20220062085A (ko) * 2019-09-20 2022-05-13 알리바바 그룹 홀딩 리미티드 비디오 처리에서 양자화 파라미터 시그널링
AU2020352952A1 (en) 2019-09-24 2022-04-21 Huawei Technologies Co., Ltd. An encoder, a decoder and corresponding methods
JP2022549451A (ja) * 2019-09-24 2022-11-25 フラウンホッファー-ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 復号装置、符号化装置、および方法
AU2020319904A1 (en) 2019-10-07 2022-04-28 Huawei Technologies Co., Ltd. Error avoidance in sub-bitstream extraction
EP4029245A4 (en) * 2019-10-12 2022-11-23 Beijing Bytedance Network Technology Co., Ltd. HIGH LEVEL SYNTAX FOR VIDEO CODING TOOLS
US11375182B2 (en) 2019-12-17 2022-06-28 Hfi Innovation Inc. Method and apparatus of constrained layer-wise video coding
JP7526268B2 (ja) * 2019-12-23 2024-07-31 エルジー エレクトロニクス インコーポレイティド Nalユニット関連情報に基づく映像又はビデオコーディング
CN114868399A (zh) 2019-12-26 2022-08-05 字节跳动有限公司 条带类型和视频层的信令通知
BR112022012708A2 (pt) 2019-12-26 2022-09-06 Bytedance Inc Métodos para processamento de vídeo e para armazenar fluxo contínuo de bits, aparelhos de decodificação e de codificação de vídeo, mídias de armazenamento e de gravação legíveis por computador não transitórias, e, método, aparelho ou sistema
CN114902567A (zh) * 2019-12-27 2022-08-12 字节跳动有限公司 视频编解码中的子图像信令
JP7460774B2 (ja) 2020-01-09 2024-04-02 バイトダンス インコーポレイテッド ビデオストリームにおけるフィラーデータユニットの処理
KR20220101719A (ko) * 2020-01-13 2022-07-19 엘지전자 주식회사 영상/비디오 코딩 시스템에서 인터 예측 방법 및 장치
US11330305B2 (en) * 2020-02-24 2022-05-10 Qualcomm Incorporated Signaling constraints and sequence parameter set sharing in video coding
US11516469B2 (en) * 2020-03-02 2022-11-29 Tencent America LLC Loop filter block flexible partitioning
US11943429B2 (en) * 2020-03-04 2024-03-26 Qualcomm Incorporated Subpicture signaling in video coding
US11706428B2 (en) 2020-04-06 2023-07-18 Tencent America LLC Method for signaling picture header in coded video stream
WO2021217435A1 (zh) * 2020-04-28 2021-11-04 青岛海信传媒网络技术有限公司 流媒体同步方法及显示设备
US11523137B2 (en) * 2020-06-09 2022-12-06 FG Innovation Company Limited Device and method for decoding video data using general constraints information
US11503342B2 (en) * 2020-06-10 2022-11-15 Sharp Kabushiki Kaisha Systems and methods for signaling sequence parameter information in video coding
KR20220037382A (ko) 2020-09-17 2022-03-24 레몬 인크. 디코더 구성 레코드에서의 픽처 치수 표시
US11792433B2 (en) * 2020-09-28 2023-10-17 Sharp Kabushiki Kaisha Systems and methods for signaling profile and level information in video coding
US11575941B2 (en) * 2021-03-23 2023-02-07 Tencent America LLC Parallel processing in video coding

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120023249A1 (en) 2010-07-20 2012-01-26 Qualcomm Incorporated Providing sequence data sets for streaming video data

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2003237120B2 (en) * 2002-04-29 2008-10-09 Sony Electronics, Inc. Supporting advanced coding formats in media files
US7415069B2 (en) * 2003-12-09 2008-08-19 Lsi Corporation Method for activation and deactivation of infrequently changing sequence and picture parameter sets
US7974517B2 (en) * 2005-10-05 2011-07-05 Broadcom Corporation Determination of decoding information
US20080253467A1 (en) 2007-04-13 2008-10-16 Nokia Corporation System and method for using redundant pictures for inter-layer prediction in scalable video coding
WO2010143853A2 (ko) * 2009-06-07 2010-12-16 엘지전자 주식회사 비디오 신호의 디코딩 방법 및 장치
US8948241B2 (en) * 2009-08-07 2015-02-03 Qualcomm Incorporated Signaling characteristics of an MVC operation point
EP3346711A1 (en) 2009-10-20 2018-07-11 Telefonaktiebolaget LM Ericsson (publ) Provision of supplemental processing information
CN103621085B (zh) 2011-06-30 2016-03-16 微软技术许可有限责任公司 降低视频解码中的延迟的方法和计算系统
US10244257B2 (en) 2011-08-31 2019-03-26 Nokia Technologies Oy Video coding and decoding
AU2013243822B2 (en) * 2012-04-06 2016-06-23 Vidyo, Inc. Level signaling for layered video coding

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120023249A1 (en) 2010-07-20 2012-01-26 Qualcomm Incorporated Providing sequence data sets for streaming video data

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Benjamin Bross et al., ‘High efficiency video coding (HEVC) text specification draft 8’, JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 10th Meeting: Stockholm, SE, 11-20 July 2012, JCTVC-J1003
Ye-Kui Wang et al., ‘AHG10: Video parameter set HEVC base specification’, JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 10th Meeting: Stockholm, SE, 11-20 July 2012, JCTVC-J0114
Ye-Kui Wang et al., ‘AHG9: Signalling of bitstream and elementary stream properties’, JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 11th Meeting: Shanghai, CN, 10-19 Oct. 2012, JCTVC-K0127

Also Published As

Publication number Publication date
US20140086333A1 (en) 2014-03-27
KR20150063456A (ko) 2015-06-09
EP2898698A1 (en) 2015-07-29
JP2015529439A (ja) 2015-10-05
US9161039B2 (en) 2015-10-13
CN104813671A (zh) 2015-07-29
CN104813671B (zh) 2016-12-07
JP5973077B2 (ja) 2016-08-23
WO2014047613A1 (en) 2014-03-27
EP2898698B1 (en) 2016-07-20

Similar Documents

Publication Publication Date Title
KR101652208B1 (ko) 비디오 코딩에서의 비트스트림 속성들
KR101924254B1 (ko) 비디오 데이터에 대한 파일 포맷
EP3058743B1 (en) Support of multi-mode extraction for multi-layer video codecs
KR101697886B1 (ko) 가설 참조 디코더 파라미터 신택스 구조
US10003815B2 (en) Hypothetical reference decoder model and conformance for cross-layer random access skipped pictures
KR101751144B1 (ko) 비디오 코딩에서의 파라미터 세트들
WO2014165653A2 (en) Picture alignments in multi-layer video coding
KR101968425B1 (ko) 비디오 코딩 확장본들의 캐리지를 위한 전송 스트림

Legal Events

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