KR20220113400A - 비디오 데이터 스트림, 비디오 인코더, hrd 타이밍 픽스를 위한 장치 및 방법, 확장가능하고 병합가능한 비트스트림들을 위한 추가 기능들 - Google Patents

비디오 데이터 스트림, 비디오 인코더, hrd 타이밍 픽스를 위한 장치 및 방법, 확장가능하고 병합가능한 비트스트림들을 위한 추가 기능들 Download PDF

Info

Publication number
KR20220113400A
KR20220113400A KR1020227020745A KR20227020745A KR20220113400A KR 20220113400 A KR20220113400 A KR 20220113400A KR 1020227020745 A KR1020227020745 A KR 1020227020745A KR 20227020745 A KR20227020745 A KR 20227020745A KR 20220113400 A KR20220113400 A KR 20220113400A
Authority
KR
South Korea
Prior art keywords
data stream
video data
video
supplemental enhancement
information
Prior art date
Application number
KR1020227020745A
Other languages
English (en)
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 KR20220113400A publication Critical patent/KR20220113400A/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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/188Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • 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

Landscapes

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

Abstract

인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 지시를 포함한다.

Description

비디오 데이터 스트림, 비디오 인코더, HRD 타이밍 픽스를 위한 장치 및 방법, 확장가능하고 병합가능한 비트스트림들을 위한 추가 기능들
본 발명은 비디오 인코딩 및 비디오 디코딩에 관한 것이며, 특히 비디오 인코더, 비디오 디코더, 인코딩 및 디코딩을 위한 방법들 및 진보된 비디오 코딩 개념들을 실현하기 위한 비디오 데이터 스트림(video data stream)에 관한 것이다.
H.265/HEVC(HEVC = 고효율 비디오 코딩(High Efficiency Video Coding)) 는 인코더 및/또는 디코더에서 병렬 처리를 높이거나 심지어 활성화하는 도구를 이미 제공하는 비디오 코덱이다. 예를 들어, HEVC는 픽처를 서로 독립적으로 인코딩된(encoded) 타일들의 어레이로 서브-분할(sub-division)하는 것을 지원한다. HEVC에 의해 지원되는 또 다른 개념은 WPP에 관한 것이며, 이에 따라 픽처의 CTU-행(CTU-row)들 또는 CTU 라인들은 연속적인 CTU 라인(CTU = 코딩 트리 유닛(coding tree unit)) 의 처리에서 일부 최소 CTU 오프셋을 따르는 경우 스트라이프(stripe)에서 왼쪽에서 오른쪽으로 병렬로 처리될 수 있다. 그러나 비디오 인코더 및/또는 비디오 디코더의 병렬 처리 기능을 훨씬 더 효율적으로 지원하는 비디오 코덱을 사용하는 것이 좋다.
일반적으로 비디오 코딩에서 픽처 샘플들의 코딩 프로세스에는 더 작은 파티션(partition)들이 필요하고, 여기에서,샘플들은 예측 또는 변환 코딩과 같은 결합 처리(joint processing)를 위해 일부 직사각형 영역들로 분할된다. 따라서, 픽처는 비디오 시퀀스의 인코딩 동안 일정한 특정한 크기의 블록으로 파티셔닝된다. H.264/AVC에서는 매크로블록(macroblock)이라고 하는 16x16 샘플들의 표준 고정 크기 블록들이 사용된다(AVC = 고급 비디오 코딩(Advanced Video Coding)).
최신 기술의 HEVC 표준(state-of-the-art HEVC standard)([1] 참조) 에는 최대 64 x 64 샘플들의 크기의 코딩된 트리 블록(Coded Tree Block)(CTB)들 또는 코딩 트리 유닛(Coding Tree Unit)(CTU)들이 있다. HEVC에 대한 추가 설명에서 이러한 종류의 블록에 대해, 보다 일반적인 용어 CTU가 사용된다.
CTU는 왼쪽 상단 CTU부터 시작하여 픽처의 CTU를 오른쪽 하단 CTU까지 처리하는 래스터 스캔 순서(raster scan order)로 처리된다.
코딩된 CTU 데이터는 슬라이스(slice)라는 일종의 컨테이너(container)로 구성된다. 원래, 이전의 비디오 코딩 표준들에서 슬라이스는 픽처의 하나 이상의 연속적인 CTU를 포함하는 세그먼트를 의미한다. 슬라이스는 코딩된 데이터의 분할(segmentation)에 사용된다. 다른 관점에서 볼 때 완전한 픽처는 하나의 큰 세그먼트로 정의될 수도 있으므로 역사적으로 슬라이스라는 용어가 여전히 적용된다. 코딩된 픽처 샘플들 외에도 슬라이스들은 소위 슬라이스 헤더에 배치되는 슬라이스 자체의 코딩 프로세스와 관련된 추가 정보도 포함한다.
최신 기술에 따르면 VCL(비디오 코딩 레이어(video coding layer)))은 조각화(fragmentation) 및 공간적 파티셔닝 기술도 포함한다. 이러한 파티셔닝은 예를 들어 병렬화(parallelization)에서의 로드 밸런싱(load-balancing), 네트워크 전송에서의 CTU 크기 매칭, 에러-완화(error-mitigation) 등을 처리하는 다양한 이유로 비디오 코딩에 적용될 수 있다.
비디오 코딩 표준에 명시된 비트스트림은 HRD 적합성 연관 정보를 갖는다. 이 적합성은 가상 참조 디코더(hypothetical reference decoder)(HRD)로 구성되고, HRD는 NAL 유닛들이 디코더 전에 코딩된 픽처 버퍼(Coded Picture Buffer)(CPB)에 들어가고 CPB 크기가 초과(버퍼 오버런)되지 않거나 NAL 유닛들이 제거되어야 할 때보다 늦게 도착(버퍼 언더런(buffer underrun))하지 않도록 보장하는 특정 시간에 디코더로부터 제거된다고 가정하는 버퍼 모델을 포함한다. 또한 모델은 디코딩된 픽처 버퍼(Decoded Picture Buffer)(DPB) 로 구성되며, 디코딩된 픽처는 더 이상 예측에 필요하지 않고 많은 구현들에서 크기가 마찬가지로 제한되는 경우에 출력된다. HRD에 대한 타이밍 정보(timing information)는 소위 SEI 메시지들, 특히 버퍼링 주기(다수의 액세스 유닛들 또는 AU)에 대한 특정한 타이밍 정보를 정의하는 버퍼링 주기(buffering period)(BP) SEI 메시지, 단일 연관된 AU에 대한 타이밍 정보를 전달하는 픽처 타이밍(picture timing)(PT) SEI 메시지, 및 AU의 연관 서브세트, 즉 디코딩 단위 또는 DU에 대한 타이밍 정보를 전달하는 디코딩 유닛 정보(Decoding Unit Information)(DUI) SEI 메시지를 통해 비트스트림으로 전달된다.
비디오 코딩 표준에 명시된 비트스트림은 HRD(가상 참조 디코더) 적합성 연관 정보를 갖는다. 이 적합성은 HRD로 구성되고, HRD는 NAL 유닛들이 디코더 전에 코딩된 픽처 버퍼(Coded Picture Buffer)(CPB)에 들어가고 CPB 크기가 초과(버퍼 오버런)되지 않거나 NAL 유닛들이 제거되어야 할 때보다 늦게 도착(버퍼 언더런)하지 않도록 보장하는 특정 시간에 디코더로부터 제거된다고 가정하는 버퍼 모델을 포함한다.
비트스트림이 확장가능한 비트스트림인 경우 프루닝(pruning)은 적절한(conforming) 비트스트림이기도 한 서브-비트스트림을 획득하기 위해 수행될 수 있다. 이하에서 B3라고 지칭되는 해상도 확장성을 가지는 3개의 레이어(예: 480p 기본 레이어(base layer), 720p 1차 강화 레이어(enhancement layer) 및 1080p 2차 강화 레이어)를 포함하는 출력 레이어 세트(Output Layer Set)(OLS)가 있는 경우, 2개의 서브-비트스트림들이 획득될 수 있다: 하나는 2개의 레이어(480p 및 720p) B2를 포함하고 다른 하나는 하나의 레이어(480p) B1을 포함한다. 마찬가지로 OLS는 시간적 확장성(temporal scalability)에 사용될 수 있고, 여기서 B3, B2 및 B1은 해상도는 동일하지만 프레임 레이트들이 다르다.
분명히 이러한 비트스트림 B3, B2 및 B1은 필요한 CPB 크기, 비트레이트 및 타이밍 정보(timing information)가 다를 수 있으므로 HRD 적합성(HRD conformance)이 다르다.
서로 다른 CPB 크기들과 비트레이트들은 정의된 출력 레이어 세트들의 특성으로 VPS에 지시(indicate)된다(설명된 예에서는 3). 소위 네스팅 SEI 메시지들(nesting SEI messages)에 의해 서로 다른 타이밍 정보가 제공된다. 네스팅 SEI 메시지는 비트스트림 프루닝(비트스트림 추출)에 의해 획득될 있는 서브-비트스트림에 적용되는 네스팅된 버퍼링 주기 SEI들 및 픽처 타이밍 SEI들을 포함할 수 있다. 그 후에 이 동작(추출 또는 프루닝이 수행됨)의 경우, 예를 들어 입력 비트스트림 B3의 버퍼링 주기 SEI 메시지 및 픽처 타이밍 SEI 메시지는 비트스트림으로부터 제거되고, 제2 향상 레이어(enhancement layer)에 속하는 NAL 유닛들로부터도 제거된다. 게다가, 네스팅 SEI 메시지에서 전달되는 비트스트림 B2 에 대응하는 버퍼링 주기 SEI 메시지 및 픽처 타이밍 SEI 메시지는 네스팅된 SEI 메시지 중 비트스트림에 배치되어 제거된 것으로 대체된다.
본 발명의 목적은 비디오 인코딩 및 비디오 디코딩을 위한 개선된 개념들을 제공하는 것이다.
본 발명의 목적은 독립항들의 주제에 의해 해결된다.
바람직한 실시예들은 종속항들에서 제공된다.
일 실시예에 따르면, 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 하나 이상의 출력 레이어 세트(output layer set) 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지(scalable nesting supplemental enhancement information message; scalable nesting SEI message)가 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 지시(indication)를 포함한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 지시를 포함하도록, 비디오 데이터 스트림을 생성한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 장치는 서브-비트스트림(sub-bitstream)을 획득하기 위해 입력 비트스트림을 처리한다. 지시는 하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는지 여부를 지시한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 방법이 제공된다. 방법은 비디오 데이터 스트림이 하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 지시를 포함하도록, 비디오 데이터 스트림을 생성하는 단계를 포함한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법이 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 방법은 서브-비트스트림을 획득하기 위해 입력 비트스트림을 처리하는 단계를 포함한다. 지시는 하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는지 여부를 지시한다.
더욱이, 컴퓨터 또는 신호 프로세서에서 실행되는 경우 상술한 방법들 중 하나를 구현하기 위한 컴퓨터 프로그램들이 제공된다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림 내의 지시는 서브-비트스트림에 대한 타이밍 정보가, 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림 내의 제1 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다. 및/또는, 비디오 데이터 스트림 내의 제2 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다.
더욱이, 일 실시예에 따르면, 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림이 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함하는 경우는, 확장가능한 네스팅 보충 강화 정보 메시지에 따라서 다음을 지시한다: 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지 모두가 타이밍 정보(예를 들어, 타이밍 정보는 픽처 타이밍 정보 또는 버퍼링 주기 정보 또는 디코딩 유닛 정보임)를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의해 대체된다는 것. 또는, 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 강화 정보 메시지 중 적어도 하나를 포함하는 서브세트가 타이밍 정보(예를 들어, 타이밍 정보는 픽처 타이밍 정보 또는 버퍼링 주기 정보 또는 디코딩 유닛 정보임)를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의해 대체된다는 것.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는, 비디오 데이터 스트림 내의 지시가 서브-비트스트림에 대한 타이밍 정보가, 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하도록 비디오 데이터 스트림을 생성한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 데이터 스트림 내의 제1 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다. 및/또는, 비디오 데이터 스트림 내의 제2 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지를 포함하도록 비디오 데이터 스트림을 생성한다. 비디오 데이터 스트림이 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함하는 경우는, 확장가능한 네스팅 보충 강화 정보 메시지에 따라서 다음을 지시한다: 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지 모두가 타이밍 정보(예를 들어, 타이밍 정보는 픽처 타이밍 정보 또는 버퍼링 주기 정보 또는 디코딩 유닛 정보임)를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의해 대체된다는 것. 또는: 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지 중 적어도 하나를 포함하는 서브세트가 타이밍 정보(예를 들어, 타이밍 정보는 픽처 타이밍 정보 또는 버퍼링 주기 정보 또는 디코딩 유닛 정보임)를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의해 대체된다는 것.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 장치는 서브-비트스트림을 획득하기 위해 입력 비트스트림을 처리한다. 비디오 데이터 스트림 내의 지시는 서브-비트스트림에 대한 타이밍 정보가, 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 장치는 서브-비트스트림을 획득하기 위해 입력 비트스트림을 처리한다. 비디오 데이터 스트림 내의 제1 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다. 및/또는 비디오 데이터 스트림 내의 제2 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 장치는 서브-비트스트림을 획득하기 위해 입력 비트스트림을 처리한다. 비디오 데이터 스트림은 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지(non-scalable-nested decoding unit supplemental enhancement information messages)를 포함한다. 비디오 데이터 스트림이 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함하는 경우, 장치는 확장가능한 네스팅 보충 강화 정보 메시지에 따라서 다음을 대체한다: 타이밍 정보(예를 들어, 타이밍 정보는 픽처 타이밍 정보 또는 버퍼링 주기 정보 또는 디코딩 유닛 정보임)를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의한 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지의 모두. 또는, 타이밍 정보(예를 들어, 타이밍 정보는 픽처 타이밍 정보 또는 버퍼링 주기 정보 또는 디코딩 유닛 정보임)를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의한 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지 중 적어도 하나를 포함하는 서브세트.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 방법이 제공된다. 방법은 비디오 데이터 스트림 내의 지시가 서브-비트스트림에 대한 타이밍 정보가, 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하도록 비디오 데이터 스트림을 생성하는 단계를 포함한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법이 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 방법은 서브-비트스트림을 획득하기 위해 입력 비트스트림을 처리하는 단계를 포함한다. 비디오 데이터 스트림 내의 지시는 서브-비트스트림에 대한 타이밍 정보가, 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 방법이 제공된다. 비디오 데이터 스트림 내의 제1 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다. 및/또는 비디오 데이터 스트림 내의 제2 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법이 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 방법은 서브-비트스트림을 획득하기 위해 입력 비트스트림을 처리하는 단계를 포함한다. 비디오 데이터 스트림 내의 제1 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다. 및/또는, 비디오 데이터 스트림 내의 제2 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 방법이 제공된다. 방법은 비디오 데이터 스트림이 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지를 포함하도록 비디오 데이터 스트림을 생성하는 단계를 포함한다. 비디오 데이터 스트림이 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함하는 경우는 방법은 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 중 적어도 하나가 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의해 대체된다는 것을 지시한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법이 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 방법은 서브-비트스트림을 획득하기 위해 입력 비트스트림을 처리하는 단계를 포함한다. 비디오 데이터 스트림은 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지를 포함한다. 비디오 데이터 스트림이 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함하는 경우, 방법은 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의해 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 중 적어도 하나를 대체하는 단계를 포함한다.
더욱이, 컴퓨터 또는 신호 프로세서에서 실행되는 경우 상술한 방법들 중 하나를 구현하기 위한 컴퓨터 프로그램들이 제공된다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 액세스 유닛이 포함하는 경우, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보는 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일하다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 액세스 유닛이 포함하는 경우, 비디오 데이터 스트림은 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한지 여부를 지시하는 지시를 포함한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타난다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 비디오 데이터 스트림은 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는지 여부를 지시하는 지시를 포함한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록 비디오 데이터 스트림을 생성한다. 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 비디오 인코더는, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한지 여부를 지시하는 지시를 비디오 데이터 스트림이 포함하도록, 비디오 데이터 스트림을 생성한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록 비디오 데이터 스트림을 생성한다. 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 비디오 인코더는 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나도록, 비디오 데이터 스트림을 생성한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록 비디오 데이터 스트림을 생성한다. 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 비디오 인코더는 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는지 여부를 지시하는 지시를 포함하도록, 비디오 데이터 스트림을 생성한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 입력 비트스트림은 복수의 액세스 유닛들을 포함한다. 장치는 서브-비트스트림을 획득하기 위해 액세스 유닛들을 처리한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 액세스 유닛이 포함하는 경우, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보는 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일하다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 입력 비트스트림은 복수의 액세스 유닛들을 포함한다. 장치는 서브-비트스트림을 획득하기 위해 액세스 유닛들을 처리한다. 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 액세스 유닛이 포함하는 경우, 비디오 데이터 스트림은 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한지 여부를 지시하는 지시를 포함한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 입력 비트스트림은 복수의 액세스 유닛들을 포함하고, 장치는 서브-비트스트림을 획득하기 위해 액세스 유닛들을 처리한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타난다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 입력 비트스트림은 복수의 액세스 유닛들을 포함한다. 장치는 서브-비트스트림을 획득하기 위해 액세스 유닛들을 처리한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 비디오 데이터 스트림은 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는지 여부를 지시하는 지시를 포함한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 방법이 제공된다. 방법은 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 비디오 데이터 스트림을 생성하는 단계를 포함한다. 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 방법은 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일하도록, 비디오 데이터 스트림을 생성하는 단계를 포함한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 방법이 제공된다. 방법은 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 비디오 데이터 스트림을 생성하는 단계를 포함한다. 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 방법은 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한지 여부를 지시하는 지시를 비디오 데이터 스트림이 포함하도록 비디오 데이터 스트림을 생성하는 단계를 포함한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 방법이 제공된다. 방법은 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 비디오 데이터 스트림을 생성하는 단계를 포함한다. 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 방법은 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나도록, 비디오 데이터 스트림을 생성하는 단계를 포함한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 방법이 제공된다. 방법은 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 비디오 데이터 스트림을 생성하는 단계를 포함한다. 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 방법은 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는지 여부를 지시하는 지시를 포함하도록, 비디오 데이터 스트림을 생성하는 단계를 포함한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법이 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 입력 비트스트림은 복수의 액세스 유닛들을 포함한다. 방법은 입력 비트스트림의 액세스 유닛들을 처리하여 서브-비트스트림을 획득하는 단계를 포함한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 액세스 유닛이 포함하는 경우, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보는 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일하다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법이 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 입력 비트스트림은 복수의 액세스 유닛들을 포함한다. 방법은 입력 비트스트림의 액세스 유닛들을 처리하여 서브-비트스트림을 획득하는 단계를 포함한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 액세스 유닛이 포함하는 경우, 비디오 데이터 스트림은 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한지 여부를 지시하는 지시를 포함한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법이 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 입력 비트스트림은 복수의 액세스 유닛들을 포함한다. 방법은 입력 비트스트림의 액세스 유닛들을 처리하여 서브-비트스트림을 획득하는 단계를 포함한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타난다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법이 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 입력 비트스트림은 복수의 액세스 유닛들을 포함한다. 방법은 입력 비트스트림의 액세스 유닛들을 처리하여 서브-비트스트림을 획득하는 단계를 포함한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 비디오 데이터 스트림은 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는지 여부를 지시하는 지시를 포함한다.
더욱이, 컴퓨터 또는 신호 프로세서에서 실행되는 경우 상술한 방법들 중 하나를 구현하기 위한 컴퓨터 프로그램들이 제공된다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 비디오 데이터 스트림은 비디오 데이터 스트림의 서브-비트스트림들의 수에 의존하는 확산 인자를 포함하고; 또는 비디오 데이터 스트림은 비디오 데이터 스트림의 서브-비트스트림들 사이에서 최상위 서브-비트스트림에 의존하는 클록 서브-틱 값을 포함한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록 비디오 데이터 스트림을 생성한다. 또한, 비디오 인코더는 비디오 데이터 스트림이, 비디오 데이터 스트림의 서브-비트스트림들의 수에 의존하는 확산 인자를 포함하도록 비디오 데이터 스트림을 생성하고; 또는 비디오 인코더는 비디오 데이터 스트림이, 비디오 데이터 스트림의 서브-비트스트림들 사이에서 최상위 서브-비트스트림에 의존하는 클록 서브-틱 값을 포함하도록 비디오 데이터 스트림을 생성한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 서브-레이어에 대한 서브-레이어 특정 프레임 레이트 정보를 포함하도록 비디오 데이터 스트림을 생성하고; 및/또는 비디오 인코더는 비디오 데이터 스트림이 서브-레이어에 대한 서브-레이어 특정 프레임 디스플레이 지속기간 정보를 포함하도록 비디오 데이터 스트림을 생성한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더에 있어서, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 비디오 디코더는 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩한다. 비디오 데이터 스트림은 비디오 데이터 스트림의 서브-비트스트림들의 수에 의존하는 확산 인자를 포함하고, 비디오 디코더는 확산 인자를 사용하여 비디오를 디코딩하고; 또는 비디오 데이터 스트림은 비디오 데이터 스트림의 서브-비트스트림들 사이에서 최상위 서브-비트스트림에 의존하는 클록 서브-틱 값을 포함하고, 비디오 디코더는 클록 서브-틱 값을 사용하여 비디오를 디코딩한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더가 제공되고, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 비디오 디코더는 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩한다. 비디오 데이터 스트림은 서브-레이어에 대한 서브-레이어 특정 프레임 레이트 정보를 포함하고/거나, 비디오 데이터 스트림은 서브-레이어에 대한 서브-레이어 특정 프레임 디스플레이 지속기간 정보를 포함한다. 디코더는 서브-레이어에 대한 서브-레이어 특정 프레임 레이트 정보를 사용하고/거나 서브-레이어 특정 프레임 디스플레이 지속기간 정보를 사용하여 확산 인자를 결정한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 방법이 제공된다. 방법은 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 비디오 데이터 스트림을 생성하는 단계를 포함한다. 더욱이 방법은 비디오 데이터 스트림이 비디오 데이터 스트림의 서브-비트스트림들의 수에 의존하는 확산 인자를 포함하도록, 비디오 데이터 스트림을 생성하는 단계를 포함하고; 또는 방법은 비디오 데이터 스트림이 비디오 데이터 스트림의 서브-비트스트림들 중 최상위 서브-비트스트림에 의존하는 클록 서브-틱 값을 포함하도록, 비디오 데이터 스트림을 생성하는 단계를 포함한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 방법은 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩하는 단계를 포함한다. 비디오 데이터 스트림은 비디오 데이터 스트림의 서브-비트스트림들의 수에 의존하는 확산 인자를 포함하고; 방법은 확산 인자를 사용하여 비디오를 디코딩하는 단계를 포함하고; 또는 비디오 데이터 스트림은 비디오 데이터 스트림의 서브-비트스트림들 사이에서 최상위 서브-비트스트림에 의존하는 클록 서브-틱 값을 포함하고, 방법은 클록 서브-틱 값을 사용하여 비디오를 디코딩하는 단계를 포함한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 방법은 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩하는 단계를 포함한다. 비디오 데이터 스트림은 서브-레이어에 대한 서브-레이어 특정 프레임 레이트 정보를 포함하고/거나, 비디오 데이터 스트림은 서브-레이어에 대한 서브-레이어 특정 프레임 디스플레이 지속기간 정보를 포함한다. 방법은 서브-레이어에 대한 서브-레이어 특정 프레임 레이트 정보를 사용하고/거나 서브-레이어 특정 프레임 디스플레이 지속기간 정보를 사용하여 확산 인자를 결정하는 단계를 포함한다.
더욱이, 컴퓨터 또는 신호 프로세서에서 실행되는 경우 상술한 방법들 중 하나를 구현하기 위한 컴퓨터 프로그램들이 제공된다.
일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더가 제공되고, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 비디오 디코더는 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩한다. 비디오를 디코딩하기 위해, 비디오 디코더는 현재 코딩된 픽처 버퍼 크기 정보를 지시하는 비디오 데이터 스트림 내의 정보에 의존하는 서브픽처에 대한 코딩된 픽처 버퍼 크기를 추정한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더가 제공되고, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 비디오 디코더는 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩한다. 비디오를 디코딩하기 위해, 비디오 디코더는 현재 코딩된 비디오 시퀀스 비트레이트 정보를 지시하는 비디오 데이터 스트림 내의 정보에 의존하는 서브픽처에 대한 비트레이트를 추정한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더가 제공되고, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 비디오 디코더는 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩한다. 비디오를 디코딩하기 위해, 비디오 디코더는 비디오 데이터 스트림 내에서 인코딩되는 서브픽처에 대한 코딩된 픽처 버퍼 크기를 수신하고, 비디오를 디코딩하기 위해 서브픽처에 대한 코딩된 픽처 버퍼 크기를 사용하고/거나; 비디오를 디코딩하기 위해, 비디오 디코더는 비디오 데이터 스트림 내에서 인코딩되는 서브픽처에 대한 비트레이트를 수신하고, 비디오를 디코딩하기 위해 서브픽처에 대한 비트레이트를 사용한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 신택스 요소 cpb_size_value_minus1[ i ][ j ] 및 신택스 요소 cpb_size_scale을 포함한다. 또는, 비디오 데이터 스트림은 신택스 요소 bit_rate_value_minus1[ i ][ j ] 및 신택스 요소 bit_rate_scale을 포함한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 현재 코딩된 픽처 버퍼 크기 정보를 사용하여 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 포함하고/거나, 비디오 데이터 스트림은 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하여 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 서브픽처에 대한 코딩된 픽처 버퍼 크기가 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 포함하고/거나, 비디오 데이터 스트림은 서브픽처에 대한 비트레이트가 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이, 신택스 요소 cpb_size_value_minus1[ i ][ j ] 및 신택스 요소 cpb_size_scale을 포함하도록 비디오 데이터 스트림을 생성한다. 또는 비디오 인코더는 비디오 데이터 스트림이, 신택스 요소 bit_rate_value_minus1[ i ][ j ] 및 신택스 요소 bit_rate_scale을 포함하도록 비디오 데이터 스트림을 생성한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 데이터 스트림이 현재 코딩된 픽처 버퍼 크기 정보를 사용하여 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 포함하도록 비디오 데이터 스트림을 생성하고/거나, 비디오 인코더는 비디오 데이터 스트림이 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하여 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함하도록 비디오 데이터 스트림을 생성한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 서브픽처에 대한 코딩된 픽처 버퍼 크기가 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 포함하도록 비디오 데이터 스트림을 생성하고/거나, 비디오 인코더는 비디오 데이터 스트림이 서브픽처에 대한 비트레이트가 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함하도록 비디오 데이터 스트림을 생성한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는, 비디오 데이터 스트림이 공통 디코딩 유닛 제거 타이밍 정보 및 복수의 추출가능한 서브-비트스트림들을 포함하는 경우, 비디오 파라미터 세트 또는 시퀀스 파라미터 세트(sequence parameter set) 또는 비디오 데이터 스트림의 보충 강화 정보 메시지에서 각 출력 레이어 세트-특정 가상 참조 디코더 파라미터 신택스 구조가, 공통 디코딩 유닛 제거 타이밍들을 스케일링하기 위한 확산 인자 또는 틱 제수의 절댓값을 포함하도록, 비디오 데이터 스트림을 생성한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법이 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 방법은 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩하는 단계를 포함한다. 비디오를 디코딩하기 위해, 방법은 현재 코딩된 픽처 버퍼 크기 정보를 지시하는 비디오 데이터 스트림 내의 정보에 의존하는 서브픽처에 대한 코딩된 픽처 버퍼 크기를 추정하는 단계를 포함한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법이 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 방법은 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩하는 단계를 포함한다. 비디오를 디코딩하기 위해, 방법은 현재 코딩된 비디오 시퀀스 비트레이트 정보를 지시하는 비디오 데이터 스트림 내의 정보에 의존하는 서브픽처에 대한 비트레이트를 추정하는 단계를 포함한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법이 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 방법은 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩하는 단계를 포함한다. 비디오를 디코딩하기 위해, 방법은 비디오 데이터 스트림 내에서 인코딩되는 서브픽처에 대한 코딩된 픽처 버퍼 크기를 수신하는 단계, 및 비디오를 디코딩하기 위해 서브픽처에 대한 코딩된 픽처 버퍼 크기를 사용하는 단계를 포함하고/거나; 비디오를 디코딩하기 위해, 방법은 비디오 데이터 스트림 내에서 인코딩되는 서브픽처에 대한 비트레이트를 수신하는 단계, 및 비디오를 디코딩하기 위해 서브픽처에 대한 비트레이트를 사용하는 단계를 포함하다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 방법이 제공된다. 방법은 신택스 요소 cpb_size_value_minus1[ i ][ j ] 및 신택스 요소 cpb_size_scale을 비디오 데이터 스트림이 포함하도록, 비디오 데이터 스트림을 생성하는 단계를 포함하거나, 방법은 신택스 요소 bit_rate_value_minus1[ i ][ j ] 및 신택스 요소 bit_rate_scale을 비디오 데이터 스트림이 포함하도록, 비디오 데이터 스트림을 생성하는 단계를 포함한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 방법이 제공된다. 방법은 현재 코딩된 픽처 버퍼 크기 정보를 사용하여 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 비디오 데이터 스트림이 포함하도록, 비디오 데이터 스트림을 생성하는 단계를 포함하고/거나, 방법은 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하여 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 비디오 데이터 스트림이 포함하도록, 비디오 데이터 스트림을 생성하는 단계를 포함한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 방법이 제공된다. 방법은 서브픽처에 대한 코딩된 픽처 버퍼 크기가 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 비디오 데이터 스트림이 포함하도록 비디오 데이터 스트림을 생성하는 단계를 포함하고, 방법은 서브픽처에 대한 비트레이트가 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 비디오 데이터 스트림이 포함하도록 비디오 데이터 스트림을 생성하는 단계를 포함한다.
또한, 컴퓨터 또는 신호 프로세서에서 실행되는 경우 상술한 방법들 중 하나를 구현하기 위한 컴퓨터 프로그램들이 제공된다.
일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 또한, 비디오 데이터 스트림은 복수의 액세스 유닛들 중 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 포함하고, 액세스 유닛의 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛에 대한 디코딩 유닛 제거 시간은 액세스 유닛에 대한 액세스 유닛 제거 시간 및 디코딩 유닛에 대한 델타 시간 정보에 의존한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록 비디오 데이터 스트림을 생성한다. 또한, 비디오 인코더는 비디오 데이터 스트림이, 복수의 액세스 유닛들 중 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 포함하도록 비디오 데이터 스트림을 생성하고, 액세스 유닛의 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛에 대한 디코딩 유닛 제거 시간은 액세스 유닛에 대한 액세스 유닛 제거 시간 및 디코딩 유닛에 대한 델타 시간 정보에 의존한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더가 제공되고, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 비디오 디코더는 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩한다. 더욱이, 비디오 데이터 스트림은 복수의 액세스 유닛들 중 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 포함하고, 액세스 유닛의 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛에 대한 디코딩 유닛 제거 시간은 액세스 유닛에 대한 액세스 유닛 제거 시간 및 디코딩 유닛에 대한 델타 시간 정보에 의존하고, 비디오 디코더는 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 사용하여 비디오 데이터 스트림을 디코딩한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 방법이 제공된다. 방법은 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 비디오 데이터 스트림을 생성하는 단계를 포함한다. 더욱이, 방법은 비디오 데이터 스트림이, 복수의 액세스 유닛들 중 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 포함하도록 비디오 데이터 스트림을 생성하는 단계를 포함하고, 액세스 유닛의 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛에 대한 디코딩 유닛 제거 시간은 액세스 유닛에 대한 액세스 유닛 제거 시간 및 디코딩 유닛에 대한 델타 시간 정보에 의존한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법이 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 방법은 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩하는 단계를 포함한다. 또한, 비디오 데이터 스트림은 복수의 액세스 유닛들 중 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 포함하고, 액세스 유닛의 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛에 대한 디코딩 유닛 제거 시간은 액세스 유닛에 대한 액세스 유닛 제거 시간 및 디코딩 유닛에 대한 델타 시간 정보에 의존하고, 방법은 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 사용하여 비디오 데이터 스트림을 디코딩하는 단계를 포함한다.
더욱이, 컴퓨터 또는 신호 프로세서에서 실행되는 경우 상술한 방법들 중 하나를 구현하기 위한 컴퓨터 프로그램들이 제공된다.
도 1은 일 실시예에 따른 비디오를 비디오 데이터 스트림으로 인코딩하기 위한 비디오 인코더를 도시한다.
도 2는 일 실시예에 따른 입력 비디오 데이터 스트림을 수신하는 장치를 도시한다.
도 3은 일 실시예에 따라 저장된 비디오를 포함하는 비디오 데이터 스트림을 수신하는 비디오 디코더를 도시한다.
도 4는 액세스 유닛 당 3개의 디코딩 유닛이 있는 경우의 제거 시간들의 변경을 예시한다.
도 5는 2개의 레이어들과 두 레이어들의 액세스 유닛들 및 디코딩 유닛들의 제거 시간들을 예시한다.
도 6은 비디오 인코더를 예시한다.
도 7은 비디오 디코더를 예시한다.
도 8은 한편으로는 재구성된(reconstructed) 신호, 예를 들어 재구성된 픽처와, 다른 한편으로는 데이터 스트림에서 시그널링된 예측 잔차 신호와 예측 신호의 결합 사이의 관계를 예시한다.
도면들에 대한 다음 설명은, 본 발명의 실시예들이 내장(built in)될 수 있는 코딩 프레임워크(coding framework)에 대한 예를 형성하기 위해, 비디오의 픽처들을 코딩하는 블록-기반 예측 코덱(block-based predictive codec)의 인코더 및 디코더에 대한 설명의 표현(presentation)으로 시작(start)한다. 각각의 인코더 및 디코더는 도 6 내지 도 8와 관련하여 설명된다. 이하에서, 본 발명의 개념의 실시예들에 대한 설명은 이러한 개념들이 도 6 및 도 7의 인코더 및 디코더에 각각 구축될 수 있는 방법에 대한 설명과 함께 제공되지만, 도 1 내지 도 3 및 다음으로 설명되는 실시예가 도 6 및 도 7의 인코더 및 디코더의 기초가 되는 코딩 프레임워크에 따라 동작하지 않는 인코더들 및 디코더들을 형성하기 위해서도 사용될 수 있다.
도 6은 비디오 인코더, 예를 들어 변환-기반 잔차 코딩(transform-based residual coding)을 사용하여 픽처(12)를 데이터 스트림(14)으로 예측 코딩하는 장치를 도시한다. 장치 또는 인코더는 참조 부호(reference sign)(10)를 사용하여 지시된다. 도 7은 대응하는 비디오 디코더(20), 예를 들어 변환-기반 잔차 디코딩(transform-based residual decoding)을 또한 사용하여 데이터 스트림(14)으로부터 픽처(12')를 예측 디코딩하도록 구성된 장치(20)를 도시하고, 여기서 아포스트로피(apostrophe)는 디코더(20)에 의해 재구성된 픽처(12')가 예측 잔차 신호의 양자화에 의해 도입된 코딩 손실(coding loss)의 관점에서 장치(10)에 의해 원래 인코딩된 픽처(12)로부터 벗어남을 지시하기 위해 사용되었다. 도 6 및 도 7은 예시적으로 변환 기반 예측 잔차 코딩을 사용하지만, 본 출원의 실시예들은 이러한 종류의 예측 잔차 코딩으로 제한되지 않는다. 이는 아래에 설명된 바와 같이 도 6 및 도 7과 관련하여 설명된 다른 세부 사항들에도 해당된다.
인코더(10)는 예측 잔차 신호를 공간-대-스펙트럼 변환(spatial-to-spectral transformation)에 적용(subject)하고 이렇게 획득된 예측 잔차 신호를 데이터 스트림(14)으로 인코딩하도록 구성된다. 마찬가지로, 디코더(20)는 데이터 스트림(14)으로부터 예측 잔차 신호를 디코딩하고 이렇게 획득된 예측 잔차 신호에 스펙트럼-대-공간 변환을 적용하도록 구성된다.
내부적으로, 인코더(10)는 원래 신호, 예를 들어, 픽처(12)로부터 예측 신호(26)의 편차(deviation)를 측정하기 위해 예측 잔차(24)를 생성하는 예측 잔차 신호 형성기(22)를 포함할 수 있다. 예측 잔차 신호 형성기(22)는 예를 들어, 원래 신호, 예를 들어 픽처(12)로부터 예측 신호를 감산(subtract)하는 감산기(subtractor)일 수 있다. 그 후, 인코더(10)는 예측 잔차 신호(24)에 공간-스펙트럼 변환을 적용하여 스펙트럼 영역 예측 잔차 신호(24')를 획득한 다음 인코더(10)에 포함된 양자화기(quantizer)(32)에 의해 양자화되는 변환기(28)를 더 포함한다. 따라서 이렇게 양자화된 예측 잔차 신호(quantized prediction residual signal)(24") 는 비트스트림(14)으로 코딩된다. 이를 위해, 인코더(10)는 선택적으로 데이터 스트림(14)으로 변환되고 양자화될 때 예측 잔차 신호를 엔트로피 코딩하는 엔트로피 코더(entropy coder)(34)를 포함할 수 있다. 예측 신호(26)는 데이터 스트림(14)으로 인코딩되고 데이터 스트림(14)으로부터 디코딩될 수 있는 예측 잔차 신호(24")에 기초하여 인코더(10)의 예측 스테이지(prediction stage)(36)에 의해 생성된다. 이를 위해, 도 6에 도시된 바와 같이, 예측 스테이지(36)는 내부적으로 역양자화기(38)를 포함할 수 있고, 역양자화기(38)는 예측 잔차 신호(24'')를 역양자화하여 스펙트럼 영역 예측 잔차 신호(24''')를 획득하고, 스펙트럼 영역 예측 잔차 신호(24''')는 양자화 손실을 제외하고 신호(24')에 대응하고 역 변환기(40)가 뒤따르고, 역 변환기(40)는 후자의 예측 잔차 신호(24''')를 역변환, 예를 들어 스펙트럼-대-공간으로 변환하여 예측 잔차 신호(24'''')를 획득하고, 예측 잔차 신호(24'''')는 양자화 손실을 제외하고 원래 예측 잔차 신호(24)에 대응한다. 그 후, 예측 스테이지(36)의 결합기(combiner)(42)는 재구성된 신호(46), 예를 들어, 원래 신호(12)의 재구성을 획득하기 위해 예측 신호(26) 및 예측 잔차 신호(24")를 가산하는 것에 의해 재결합한다. 재구성된 신호(46) 는 신호(12')에 대응할 수 있다. 그 후, 예측 스테이지(36)의 예측 모듈(44)은 예를 들어 공간적 예측, 예를 들어 인트라-픽처 예측(intra-picture prediction), 및/또는 시간적 예측, 예를 들어 인터-픽처 예측(inter-picture prediction)을 사용하는 것에 의해 신호(46)에 기초하여 예측 신호(26)를 생성한다.
마찬가지로, 도 7에 도시된 바와 같이 디코더(20)는 예측 스테이지(36)에 대응하는 구성요소들로 내부적으로 구성될 수 있고, 예측 스테이지(36)에 대응하는 방식으로 상호접속될 수 있다. 특히, 디코더(20)의 엔트로피 디코더(50)는 데이터 스트림으로부터 양자화된 스펙트럼 영역 예측 잔차 신호(24'')를 엔트로피 디코딩할 수 있고, 이에 따라 예측 단계(36)의 모듈과 관련하여 위에서 설명한 방식으로 상호 연결되고 협력하는 역양자화기(52), 역변환기(54), 결합기(56) 및 예측 모듈(58)은 예측 잔차 신호(24'')에 기초하여 재구성된 신호를 복구하여 도 7에 도시된 바와 같이 결합기(56)의 출력이 재구성된 신호, 즉 픽처(12')를 생성하도록 한다.
위에서 구체적으로 설명하지 않았지만, 예를 들어, 코딩 비용과 같은 일부 레이트 및 왜곡 관련 기준을 최적화하는 방식과 같은 일부 최적화 방식에 따라, 인코더(10)가 예를 들어 예측 모드, 움직임 파라미터 등을 포함하는 일부 코딩 파라미터를 설정할 수 있다는 것은 쉽게 명백하다. 예를 들어, 인코더(10) 및 디코더(20) 및 대응하는 모듈들(44, 58)은 각각 인트라-코딩 모드들 및 인터-코딩 모드들과 같은 상이한 예측 모드들을 지원할 수 있다. 인코더와 디코더가 이들 예측 모드 타입들 사이에서 스위칭하는 입도(granularity)는 각각 픽처(12, 12')를 코딩 세그먼트들 또는 코딩 블록들로 서브분할하는 것에 대응할 수 있다. 예를 들어, 이러한 코딩 세그먼트들의 유닛으로, 픽처는 인트라-코딩되는 블록들과 인터-코딩되는 블록들로 서브분할될 수 있다. 인트라-코딩된 블록들은 아래에 자세히 설명된 바와 같이 각 블록의 공간적, 이미 코딩/디코딩된 주위(neighborhood)를 기반으로 예측된다. 각 방향성 인트라-코딩 모드에 특정한 특정 방향을 따라 이웃의 샘플 값들을 각각의 인트라-코딩된 세그먼트로 외삽함으로써 각각의 세그먼트가 채워지는 방향성 또는 각도 인트라-코딩 모드를 포함하는 여러 인트라-코딩 모드들이 존재할 수 있으며 각 인트라-코딩된 세그먼트에 대해 선택될 수 있다. 예를 들어, 인트라-코딩 모드는 또한 각각의 인트라-코딩된 블록에 대한 예측이 각각의 인트라-코딩된 세그먼트 내의 모든 샘플에 DC 값을 할당하는 DC 코딩 모드, 및/또는 예측에 따른 평면 인트라-코딩 모드와 같은 하나 이상의 추가 모드를 포함할 수 있고, 각 블록의 예측은 인접 샘플을 기반으로 하는 2차원 선형 함수에 의해 정의된 평면의 오프셋 및 구동 기울기가 있는 각 인트라-코딩된 블록의 샘플 위치들에 대해 2차원 선형 함수에 의해 설명된 샘플 값들의 공간적 분포로 근사되거나 결정된다. 이와 비교하여, 인터-코딩된 블록들은, 예를 들어 시간적으로(temporally), 예측될 수 있다. 인터-코딩된 블록들에 대해, 모션 벡터(motion vector)들은 데이터 스트림 내에서 시그널링될 수 있고, 모션 벡터는 각각의 인터-코딩된 블록에 대한 예측 신호를 획득하기 위해, 이전에 코딩된/디코딩된 픽처가 샘플링된 픽처(12)가 속하는 비디오의 이전 코딩된 픽처 부분의 공간적 변위(spatial displacement)를 지시한다. 이것은, 양자화된 스펙트럼 영역 예측 잔차 신호(24'')를 나타내는 엔트로피 코딩된 변환 계수 레벨들과 같은 데이터 스트림(14)에 포함된 잔차 신호 코딩에 추가하여, 데이터 스트림(14)이 코딩 모드를 다양한 블록에 할당하기 위한 코딩 모드 파라미터, 인터-코딩된 세그먼트에 대한 움직임 파라미터와 같은 일부 블록에 대한 예측 파라미터, 및 픽처(12 및 12')의 서브분할을 제어하고 시그널링하기 위한 파라미터와 같은 선택적 추가 파라미터, 및 세그먼트로 각각 인코딩되었을 수 있다는 것을 의미한다. 디코더(20)는 인코더가 했던 것과 동일한 방식으로 픽처를 서브분할하고, 동일한 예측 모드들을 세그먼트들에 할당하고, 동일한 예측 신호를 초래하도록 동일한 예측을 수행하기 위해 이들 파라미터들을 사용한다.
도 8은 한편으로는 재구성된 신호, 예를 들어 재구성된 픽처(12')와 데이터 스트림(14)에서 시그널링된 예측 잔차 신호(24") 와 다른 한편으로는 예측 신호(26)의 결합 사이의 관계를 도시한다. 이미 위에 표시된 것처럼 결합은 추가될 수 있다. 예측 신호(26)는 도 8에서 해칭(hatching)을 사용하여 예시적으로 지시되는 인트라-코딩된 블록들, 및 예시적으로 해칭되지 않은 것으로 지시된 인터-코딩된 블록들로의 픽처 영역의 서브분할로서 도시된다. 서브분할은 정사각형 블록들 또는 정사각형이 아닌 블록들의 행과 열로 픽처 영역의 규칙적인 서브분할, 또는 트리 루트 블록에서 쿼드 트리 서브분할 등과 같은 다양한 크기의 복수의 리프 블록들로 픽처(12)의 다중 트리 서브분할과 같은 임의의 서브분할이 될 수 있고, 이들의 혼합이 도 8에 예시되어 있으며, 여기서 픽처 영역은 먼저 트리 루트 블록들의 행 및 열로 서브분할되고, 그 다음 하나 이상의 리프 블록으로의 재귀적 다중 트리 서브분할에 따라 더 서브분할된다.
다시, 데이터 스트림(14)은 인트라-코딩된 블록들(80)에 대해 코딩된 인트라-코딩 모드를 포함할 수 있고, 이는 몇몇 지원되는 인트라-코딩 모드들 중 하나를 각각의 인트라-코딩된 블록(80)에 할당한다. 인터-코딩된 블록들(82)에 대해, 데이터 스트림(14)은 코딩된 하나 이상의 움직임 파라미터를 포함할 수 있다. 일반적으로, 인터-코딩된 블록들(82)은 시간적으로 코딩(temporally coded)되는 것으로 제한되지 않는다. 대안적으로, 인터-코딩된 블록들(82)은 픽처(12)가 속하는 비디오의 이전에 코딩된 픽처들, 또는 인코더 및 디코더가 각각 확장가능한 인코더들 및 디코더들인 경우 다른 뷰 또는 계층적으로 하위 레이어의 픽처와 같이 현재 픽처(12) 자체를 넘어 이전에 코딩된 부분들로부터 예측된 임의의 블록일 수 있다.
도 8의 예측 잔차 신호(24")는 또한 픽처 영역을 블록들(84)로 서브분할하는 것으로 도시된다. 이러한 블록들은 코딩 블록들(80, 82)로부터 동일하게 구별하기 위해 변환 블록들이라고 할 수 있다. 실제로, 도 8은 인코더(10) 및 디코더(20)는 각각 픽처(12) 및 픽처(12')의 2개의 상이한 서브분할들을 블록들로 사용할 수 있는데, 즉 하나는 코딩 블록들(80 및 82)로 각각 서브분할하고 다른 하나는 변환 블록들(84)로 서브분할 할 수 있음을 예시한다. 두 서브분할들은 동일할 수 있으며, 예를 들어, 각각의 코딩 블록(80, 82)은 동시에 변환 블록(84)을 형성할 수 있지만, 도 8은 블록들(80 및 82)의 두 블록들 사이의 임의의 경계가 두 블록들(84) 사이의 경계를 오버레이하거나 대안적으로 각 블록(80, 82)이 변환 블록들(84) 중 하나와 일치하거나 변환 블록들(84)의 클러스터와 일치하도록, 예를 들어 변환 블록들(84)로의 서브분할이 코딩 블록들(80, 82)로의 서브분할의 확장을 형성하는 경우를 예시한다. 그러나, 변환 블록들(84)이 블록들(80, 82)사이의 블록 경계들을 대안적으로 교차할 수 있도록, 서브분할들은 또한 서로 독립적으로 결정되거나 선택될 수 있다. 변환 블록(84) 으로의 서브분할에 관한 한, 블록들(80, 82)로의 서브분할에 대해 제기된 것과 같은 유사한 진술이 사실이고, 예를 들어, 블록들(84)은 픽처 영역을 블록들로(행 및 열로의 배열이 있거나 없는) 규칙적으로 서브분할한 결과, 픽처 영역의 재귀적 다중 트리 서브분할의 결과, 또는 이들의 결합 또는 임의의 다른 종류의 차단(any other sort of blockation)일 수 있다. 제쳐두고 블록들(80, 82 및 84)은 정사각형(quadratic), 직사각형 또는 다른 모양으로 제한되지 않는다.
도 8은 예측 신호(26)와 예측 잔차 신호(24"")의 결합이 재구성된 신호 (12')를 직접 초래한다는 것을 더 예시한다. 그러나, 하나 이상의 예측 신호(26)가 예측 잔차 신호(24") 와 결합되어 대안적인 실시예들에 따라 픽처(12')가 될 수 있다는 점에 유의해야 한다.
도 8에서 변환 블록들(84)은 다음과 같은 중요성을 가질 수 있다. 변환기(28) 및 역변환기(54)는 이들 변환 블록들(84)의 유닛들로의 변환들을 수행한다. 예를 들어, 많은 코덱들은 모든 변환 블록들(84)에 대해 일종의 DST 또는 DCT를 사용한다. 일부 코덱들은 변환을 스킵하는 것을 허용하여, 일부 변환 블록들(84)에 대해, 예측 잔차 신호가 공간적 영역에서 직접 코딩되도록 한다. 그러나, 아래에 설명된 실시예들에 따라, 인코더(10) 및 디코더(20)는 이들이 여러 변환들을 지원하는 방식으로 구성된다. 예를 들어 인코더(10) 및 디코더(20)에서 지원하는 변환은 다음과 같이 구성될 수 있다:
o DCT-II (또는 DCT-III). 여기서 DCT는 이산 코사인 변환(Discrete Cosine Transform)을 나타낸다.
o DST-IV, 여기서 DST는 이산 사인 변환을 나타낸다.
o DCT-IV
o DST-VII
o 아이덴티티 변환(Identity Transformation)(IT)
당연히, 변환기(28)는 이러한 변환들의 모든 순방향 변환 버전(forward transform version)들을 지원할 것이지만, 디코더(20) 또는 역변환기(54)는 대응하는 역방향(backward) 또는 역 버전(inverse version)들을 지원할 것이다:
o 역 DCT-II (또는 역 DCT-III)
o 역 DST-IV
o 역 DCT-IV
o 역 DST-VII
o 아이덴티티 변환(IT)
후속 설명은 인코더(10) 및 디코더(20)에 의해 어떤 변환들이 지원될 수 있는지에 대한 자세한 내용을 제공한다. 어쨌든 지원되는 변환들의 세트는 하나의 스펙트럼-대-공간 또는 공간-대-스펙트럼 변환과 같은 하나의 변환으로 구성될 수 있다는 점에 유의해야 한다.
이미 위에서 설명한 바와 같이, 도 6 내지 도 8은 본 출원에 따라 인코더들 및 디코더들에 대한 구체적인 예들을 형성하기 위해 아래에 추가로 기술된 본 발명의 개념이 구현될 수 있는 예로서 제시되었다. 지금까지, 도 6 및 도 7의 인코더 및 디코더는 각각 아래에서 설명되는 인코더들 및 디코더들의 가능한 구현들을 나타낼 수 있다. 그러나 도 6과 도 7은 예들일 뿐이다. 그러나, 본 출원의 실시예들에 따른 인코더는 예를 들어 동일한 비디오 인코더가 없다는 점에서 그러나 정지 픽처 인코더(still picture encoder)는 인터 예측을 지원하지 않거나 블록들(80)로의 서브-분할이 도 8에 예시된 것과 다른 방식으로 수행된다는 점에서와 같이 도 6의 인코더와 상이하고 아래에 더 상세히 설명된 개념을 사용하여 픽처(12)의 블록 기반 인코딩을 수행할 수 있다. 마찬가지로, 본 출원의 실시예들에 따른 디코더들은 아래에 추가로 설명되는 코딩 개념을 사용하여 데이터 스트림(14)으로부터 픽처(12')의 블록 기반 디코딩을 수행할 수 있지만, 예를 들어 비디오 디코더가 아니라 정지 픽처 디코더라는 점에서, 인트라 예측을 지원하지 않는다는 점에서, 또는 도 8과 관련하여 설명된 것과 다른 방식으로 픽처(12')를 블록들로 서브-분할한다는 점에서 및/또는 예를 들어, 변환 영역에서 데이터 스트림(14)으로부터 예측 잔차를 도출하지 않고 공간적 영역에서 도출한다는 점에서, 도 7의 디코더(20)와 다를 수 있다.
도 1은 일 실시예에 따른 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더(100)를 도시한다. 비디오 인코더(100)는 비디오 데이터 스트림을 생성하도록 구성된다.
도 2는 일 실시예에 따른 입력 비디오 데이터 스트림을 수신하는 장치(200)를 도시한다. 입력 비디오 데이터 스트림은 입력 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 장치(200)는 입력 비디오 데이터 스트림으로부터 출력 비디오 데이터 스트림을 생성하도록 구성된다.
도 3은 일 실시예에 따라 저장된 비디오를 포함하는 비디오 데이터 스트림을 수신하는 비디오 디코더(300)를 도시한다. 비디오 디코더(300)는 비디오 데이터 스트림으로부터 비디오를 디코딩하도록 구성된다.
또한, 일 실시예에 따른 시스템이 제공된다. 시스템은 도 2의 장치 및 도 3의 비디오 디코더를 포함한다. 도 3의 비디오 디코더(300)는 도 2의 장치(200)의 출력 비디오 데이터 스트림을 수신하도록 구성된다. 도 3의 비디오 디코더(300)는 도 2의 장치(200)의 출력 비디오 데이터 스트림으로부터 비디오를 디코딩하도록 구성된다.
일 실시예에서, 시스템은 예를 들어 도 1의 비디오 인코더(100)를 더 포함할 수 있다. 도 2의 장치(200)는 예를 들어, 도 1의 비디오 인코더(100)로부터 비디오 데이터 스트림을 입력 비디오 데이터 스트림으로서 수신하도록 구성될 수 있다.
장치(200)의 (선택적인) 중간 장치(intermediate device)(210)는 예를 들어, 비디오 인코더(100)로부터 비디오 데이터 스트림을 입력 비디오 데이터 스트림으로서 수신하고 입력 비디오 데이터 스트림으로부터 출력 비디오 데이터 스트림을 생성하도록 구성될 수 있다. 예를 들어, 중간 장치는 입력 비디오 데이터 스트림의 정보(헤더(header)/메타 데이터(meta data))를 수정하도록 구성될 수 있고/거나 입력 비디오 데이터 스트림으로부터 픽처들을 삭제하도록 구성될 수 있고/거나 인코딩된 제2 비디오를 포함하는 추가의 제2 비트스트림과 입력 비디오 데이터 스트림을 믹스(mix)/스플라이스(splice)하도록 구성될 수도 있다.
(선택적인) 비디오 디코더(221)는 예를 들어, 출력 비디오 데이터 스트림으로부터 비디오를 디코딩하도록 구성될 수 있다.
(선택적인) 가상 참조 디코더(222)는 예를 들어, 출력 비디오 데이터 스트림에 의해 결정되어 비디오에 대한 타이밍 정보를 결정하도록 구성될 수 있거나, 예를 들어, 비디오 또는 비디오의 일부가 저장될 버퍼에 대한 버퍼 정보를 결정하도록 구성될 수 있다.
시스템은 도 1의 비디오 인코더(101) 및 도 2의 비디오 디코더(151) 를 포함한다.
비디오 인코더(101)는 인코딩된 비디오 신호를 생성하도록 구성된다. 비디오 디코더(151)는 비디오의 픽처를 재구성하기 위해 인코딩된 비디오 신호를 디코딩하도록 구성된다.
다음에서, 특정한 실시예들이 설명된다.
HEVC에서, 추출 프로세스 사양(extraction process specification)의 노트(note)에는 다음과 같이 네스팅된 SEI 메시지 처리에 대해 설명한다:
"스마트" 비트스트림 추출기는 적절한 확장 불가능한-네스팅된 버퍼링 픽처 SEI 메시지, 확장 불가능한-네스팅된 픽처 타이밍 SEI 메시지 및 확장 불가능한-네스팅된 디코딩 유닛 정보 SEI 메시지를 추출된 서브-비트스트림에 포함시킬 수 있고, 단, 서브 비트스트림에 적용가능한 SEI 메시지는 원래 비트스트림에 확장가능한 네스팅된 SEI 메시지로 존재한다.
VVC에서, 구상된 설계는 규범적으로 명시된 동작 양식(behaviour)을 가지는 것이 적절하다. 예를 들어, JVET-p2001-VC에 정의된 바와 같은 추출 프로세스와 관련하여 다음과 같은 동작 양식(behaviour)을 가질 수 있으며, 여기서 본 발명의 실시예들이 추가되었다.
서브-비트스트림 추출 프로세스
이 프로세스에 대한 입력은 비트스트림 inBitstream, 타겟 OLS 인덱스 targetOlsIdx 및 타겟 최고 임시 ID 값 tIdTarget이다.
이 프로세스의 출력은 서브-비트스트림 outBitstream이다.
비트스트림과 함께 이 절에 명시된 프로세스의 출력인 모든 출력 서브-비트스트림이 입력 비트스트림에 대한 비트스트림 적합성의 요건이고, targetOlsIdx는 VPS에 의해 명시된 OLS 리스트에 대한 인덱스와 같고, tIdTarget은 입력들로서, 0 내지 6의 범위에 있는 임의의 값과 같으며 다음 조건들을 만족하는 적절한 비트스트림이어야 한다:
- 출력 서브-비트스트림은 LayerIdInOls[targetOlsIdx] 내의 각각의 nuh_layer_id 값들과 동일한 nuh_layer_id를 갖는 적어도 하나의 VCL NAL 유닛을 포함한다.
- 출력 서브-비트스트림은 TemporalId가 tIdTarget과 동일한 적어도 하나의 VCL NAL 유닛을 포함한다.
유의― 적절한 비트스트림에는 TemporalId가 0과 같은 하나 이상의 코딩된 슬라이스 NAL 유닛이 포함되지만 nuh_layer_id가 0과 같은 코딩된 슬라이스 NAL 유닛들을 포함할 필요는 없다.
출력 서브-비트스트림 outBitstream은 다음과 같이 도출된다:
- 비트스트림 outBitstream은 비트스트림 inBitstream과 동일하게 설정된다.
- TemporalId가 tIdTarget보다 큰 모든 NAL 유닛들을 outBitstream으로부터 제거한다.
- outBitstream으로부터, nal_unit_type이 VPS_NUT, DPS_NUT 및 EOB_NUT와 같지 않고 nuh_layer_id가 LayerIdInOls[targetOlsIdx] 리스트에 포함되지 않은 모든 NAL 유닛들을 제거한다.
- nesting_ols_flag가 1이고 NestingOlsIdx[i]가 targetOlsIdx와 같도록 0에서 nesting_num_olss_minus1까지의 범위에 i 값이 없는 확장가능한 네스팅 SEI 메시지를 포함하는 모든 SEI NAL 단위를 outBitstream으로부터 제거한다.
- targetOlsIdx가 0보다 큰 경우, payloadType이 0(버퍼링 주기), 1(픽처 타이밍) 또는 130(디코딩 유닛 정보)과 같은 확장 불가능한-네스팅된 SEI 메시지가 포함된 모든 SEI NAL 유닛들을 outBitstream으로부터 제거한다.
특정한 실시예들에 따르면:
- outBitstream에 nesting_ols_flag가 1과 같은 확장가능한 네스팅 SEI 메시지가 포함되고 outBitstream에 적용할 수 있는 SEI NAL 유닛들이 포함된 경우(NestingOlsIdx[i]는 targetOlsIdx와 같음) 다음을 수행한다:
- 확장가능한 네스팅 SEI 메시지에서 PayloadType이 0 (버퍼링 주기), 1 (픽처 타이밍) 또는 130 (디코딩 유닛 정보)과 같은 적절한 확장 불가능한-네스팅 SEI 메시지를 추출하여 해당 메시지를 OutBitStream에 넣는다.
- 확장가능한 네스팅 SEI 메시지가 포함된 모든 SEI NAL 유닛들을 outBitstream으로부터 제거한다.
다음에서, 비트스트림에서의 OLS에 대한 확장가능한 네스팅 SEI 메시지들의 존재가 설명된다.
일 실시예에 따르면, 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 지시를 포함한다.
일 실시예에서, 지시는 파라미터 세트 플래그(parameter set flag)이다. 비디오 데이터 스트림은, 예를 들어, 하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 파라미터 세트 플래그를 포함할 수 있다.
일 실시예에 따르면, 청구항 2에 따른 비디오 데이터 스트림에 있어서, 비디오 데이터 스트림의 시퀀스 파라미터 세트는 예를 들어, 파라미터 세트 플래그를 포함할 수 있다.
일 실시예에서, 파라미터 세트 플래그는 sps_ols_nest_timing_present_flag이다.
일 실시예에 따르면, 비디오 데이터 스트림은 예를 들어, 파라미터 세트 플래그를 포함할 수 있는 추가적인 보충 강화 정보 메시지를 포함할 수 있다. 파라미터 세트 플래그는 하나 이상의 출력 레이어 세트 각각에 대한 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는지 여부를 지시한다.
일 실시예에서 타이밍 정보는 예를 들어, 픽처 타이밍 정보(picture timing information), 버퍼링 주기 정보(buffering period information), 및 디코딩 유닛 정보(decoding unit information) 중 적어도 하나를 포함할 수 있다.
일 실시예에 따르면, 타이밍 정보는 가상 참조 디코더(Hypothetical Reference Decoder)(HRD)에 대한 타이밍 정보이다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 지시를 포함하도록, 비디오 데이터 스트림을 생성한다.
일 실시예에 따르면, 지시는 파라미터 세트 플래그이다. 비디오 인코더는 예를 들어, 하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 파라미터 세트 플래그를 비디오 데이터 스트림이 포함할 수 있도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에서, 비디오 인코더는 예를 들어, 비디오 데이터 스트림의 시퀀스 파라미터 세트가 파라미터 세트 플래그를 포함할 수 있도록 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에 따르면, 비디오 인코더는 예를 들어, 파라미터 세트 플래그가, sps_ols_nest_timing_present_flag이 되도록 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에서, 비디오 인코더는 예를 들어, 파라미터 세트 플래그를 포함하는 추가적인 보충 강화 정보 메시지를 비디오 데이터 스트림이 포함할 수 있도록 비디오 데이터 스트림을 생성할 수 있도록 구성될 수 있다. 비디오 인코더는 예를 들어, 하나 이상의 출력 레이어 세트 각각에 대한 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는지 여부를 파라미터 세트 플래그가 지시하도록 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에 따르면, 타이밍 정보는 예를 들어 픽처 타이밍 정보 및 버퍼링 주기 정보 및 디코딩 유닛 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 타이밍 정보는 가상 참조 디코더에 대한 타이밍 정보이다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 장치는 서브-비트스트림을 획득하기 위해 입력 비트스트림을 처리한다. 지시는 하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는지 여부를 지시한다.
일 실시예에 따르면, 지시는 파라미터 세트 플래그이다. 장치는 예를 들어, 하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 파라미터 세트 플래그를 포함하는 비디오 데이터 스트림을 처리하도록 구성될 수 있다.
일 실시예에서, 비디오 데이터 스트림의 시퀀스 파라미터 세트는 예를 들어, 파라미터 세트 플래그를 포함할 수 있다.
일 실시예에 따르면, 파라미터 세트 플래그는 sps_ols_nest_timing_present_flag이다.
일 실시예에서, 비디오 데이터 스트림은 예를 들어, 파라미터 세트 플래그를 포함할 수 있는 추가적인 보충 강화 정보 메시지를 포함할 수 있다. 파라미터 세트 플래그는 하나 이상의 출력 레이어 세트 각각에 대한 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는지 여부를 지시한다. 장치는 예를 들어, 추가적인 보충 강화 정보 메시지를 처리하도록 구성될 수 있다.
일 실시예에 따르면, 타이밍 정보는 예를 들어 픽처 타이밍 정보 및 버퍼링 주기 정보 및 디코딩 유닛 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에 따르면, 하나 이상의 출력 레이어 세트 각각에 대한 픽처 타이밍 정보(picture timing information)를 포함할 수 있는 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는 경우, 장치는 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지(non-scalable-nested picture timing supplemental enhancement information message)의 픽처 타이밍 정보를 대체(substitute)하도록 구성될 수 있다. 하나 이상의 출력 레이어 세트 각각에 대한 버퍼링 주기 정보(buffering period information)를 포함하는 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는 경우, 장치는 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지(non-scalable-nested buffering period supplemental enhancement information message)의 버퍼링 주기 정보를 대체하도록 구성될 수 있다. 하나 이상의 출력 레이어 세트 각각에 대한 디코딩 유닛 정보(decoding unit information)를 포함하는 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 비디오 데이터 스트림 내에 존재하는 경우, 장치는 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지(non-scalable-nested decoding unit supplemental enhancement information message)의 디코딩 유닛 정보를 대체하도록 구성될 수 있다.
일 실시예에서, 타이밍 정보는 가상 참조 디코더에 대한 타이밍 정보이다.
일 실시예에 따르면, 장치는 비디오를 디코딩하기 위해 서브-비트스트림을 디코딩하도록 구성될 수 있다.
더욱이, 일 실시예에 따르면, 비디오를 비디오 데이터 스트림으로 인코딩하고 비디오를 디코딩하는 시스템이 제공된다. 시스템은 상술한 바와 같은 비디오 인코더 및 상술한 바와 같은 장치를 포함한다. 비디오 인코더는 예를 들어, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하도록 구성될 수 있다. 장치는 예를 들어, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하도록 구성될 수 있다. 더욱이, 장치는 예를 들어, 서브-비트스트림을 획득하기 위해 입력 비트스트림을 처리하도록 구성될 수 있다. 또한, 장치는 비디오를 디코딩하기 위해 서브-비트스트림을 디코딩하도록 구성될 수 있다.
VVC 드래프트 사양(VVC draft specification)에는 네스팅된 형식(확장가능한 네스팅 SEI 메시지)으로 비트스트림에 있는 각 HRD SEI 메시지들 (BP, PT, DUI)에 기초하는 OLS 서브-비트스트림의 HRD 기반 적합성 테스트에도 사용할 수 있는 VPS의 OLS 정의가 포함되어 있다. OLS가 정의되는 경우, 적합성 테스트를 가능하게 하려면 이러한 OLS에 대한 각 HRD SEI 메시지들이 비트스트림에 있는지 확인하는 것이 중요하다.
따라서, 지시가 비트스트림(예를 들어, SPS에서의 sps_ols_scal_nest_timing_present_flag와 같은 파라미터 세트 플래그 또는 그러한 플래그를 포함하는 새로운 SEI 메시지)에 있다는 것은 모든 OLS에 대한 확장가능한 네스팅 SEI 메시지가 비트스트림 내에 존재해야 함을 지시하는 본 발명의 일부이다.
다음에서는 HRD SEI들이 서브-비트스트림들에 적용되는 방식이 설명된다.
일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림 내의 지시는 서브-비트스트림에 대한 타이밍 정보가, 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다.
일 실시예에서, 지시가, 서브-비트스트림에 대한 타이밍 정보가 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되지 않는다는 것을 지시하는 경우, 지시는 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지로 대체된다는 것을 지시한다.
일 실시예에서, 지시는 플래그이다. 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지 중 하나는 예를 들어, 서브-비트스트림에 대한 타이밍 정보가 예를 들어, 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되도록 구성될 수 있는지 여부를 지시하는 플래그를 포함할 수 있다.
일 실시예에 따르면, 플래그는 use_orig_pic_timing_flag이다.
일 실시예에서, 비디오 데이터 스트림은 예를 들어, 비디오 파라미터 세트를 포함할 수 있다. 지시는 플래그이다. 비디오 파라미터 세트는 예를 들어, 서브-비트스트림에 대한 타이밍 정보가 예를 들어, 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되도록 구성될 수 있는지 여부를 지시하는 플래그를 포함할 수 있다.
일 실시예에 따르면, 플래그는 same_pic_timing_within_ols_flag이다.
일 실시예에서, 플래그는 general_same_pic_timing_in_all_ols_flag이다.
일 실시예에 따르면, 지시는 하나 이상의 액세스 유닛의 각각의 액세스 유닛에서 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 각각이 비디오 데이터 스트림에서 설정(set)된 임의의 출력 레이어에 대한 액세스 유닛에 적용되고, 확장가능한 네스팅 픽처 타이밍 보충 강화 정보 메시지들이 존재하지 않는다는 것을 지시하거나, 또는 하나 이상의 액세스 유닛의 각각의 액세스 유닛에서 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 비디오 데이터 스트림에서 설정된 임의의 출력 레이어에 대한 액세스 유닛에 적용되거나 적용되지 않고, 확장가능한 네스팅된 픽처 타이밍 보충 강화 정보 메시지들이 존재할 수 있다는 것을 지시한다.
일 실시예에서, 지시가, 서브-비트스트림에 대한 타이밍 정보가 예를 들어 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되도록 구성될 수 있다는 것을 지시하는 경우, 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지 중 적어도 하나는 비트스트림의 액세스 유닛 내에서, 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 이전에 발생한다.
일 실시예에 따르면, 지시는 제약 플래그이다. 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지는 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 하나 이상의 서브-비트스트림 중 적어도 하나에 적용(apply)되는지 여부를 지시하는 제약 플래그를 포함한다.
일 실시예에서, 지시는 제1 지시이다. 비디오 데이터 스트림 내의 제2 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 더 획득되는지 여부를 지시하고/거나, 비디오 데이터 스트림 내의 제3 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 더 획득되는지 여부를 지시한다.
일 실시예에 따르면, 비디오 데이터 스트림 내의 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 더 획득되는지 여부를 더 지시하고/거나, 비디오 데이터 스트림 내의 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 더 획득되는지 여부를 더 지시한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림 내의 제1 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다. 및/또는, 비디오 데이터 스트림 내의 제2 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다.
더욱이, 일 실시예에 따르면, 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림이 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함하는 경우는, 확장가능한 네스팅 보충 강화 정보 메시지에 따라서 다음을 지시한다: 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지 모두가 타이밍 정보(예를 들어, 타이밍 정보는 픽처 타이밍 정보 또는 버퍼링 주기 정보 또는 디코딩 유닛 정보임)를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의해 대체된다는 것. 또는, 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 강화 정보 메시지 중 적어도 하나를 포함하는 서브세트가 타이밍 정보(예를 들어, 타이밍 정보는 픽처 타이밍 정보 또는 버퍼링 주기 정보 또는 디코딩 유닛 정보임)를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의해 대체된다는 것.
일 실시예에 따르면, 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지는, 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지이고, 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지는, 확장가능한 네스팅 픽처 타이밍 보충 강화 정보 메시지(scalable nesting picture timing supplemental enhancement information message)이다. 또는, 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지는, 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지이고, 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지는, 확장가능한 네스팅 버퍼링 주기 보충 강화 정보 메시지(scalable nesting buffering period supplemental enhancement information message)이다. 또는 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지는, 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지이고, 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지는, 확장가능한 네스팅 디코딩 유닛 보충 강화 정보 메시지(scalable nesting decoding unit supplemental enhancement information message)이다.
일 실시예에서, 비디오 데이터 스트림이 예를 들어, 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함하는 경우, 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지는,
비트스트림의 액세스 유닛 내에서, 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지 이전에 발생한다.
일 실시예에 따르면, 타이밍 정보는 가상 참조 디코더(Hypothetical Reference Decoder)(HRD)에 대한 타이밍 정보이다.
일 실시예에서, 서브-비트스트림은 출력 레이어 세트에 의존(depend)하고/거나, 서브-레이어(sub-layer)에 의존하고/하거나, 서브픽처에 의존하고/하거나, 디코딩 유닛의 서브세트에 의존한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는, 비디오 데이터 스트림 내의 지시가 서브-비트스트림에 대한 타이밍 정보가, 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하도록 비디오 데이터 스트림을 생성한다.
일 실시예에 따르면, 지시가, 서브-비트스트림에 대한 타이밍 정보가 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되지 않는다는 것을 지시하는 경우, 지시는 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지로 대체된다는 것을 지시한다.
일 실시예에서, 지시는 플래그이다. 비디오 인코더는 예를 들어,하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지 중 하나가, 예를 들어, 서브-비트스트림에 대한 타이밍 정보가 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는 플래그를 포함할 수 있도록 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에 따르면, 플래그는 use_orig_pic_timing_flag이다.
일 실시예에서, 비디오 데이터 스트림은 예를 들어, 비디오 파라미터 세트를 포함할 수 있다. 지시는 예를 들어 플래그일 수 있다. 비디오 인코더는 예를 들어, 서브-비트스트림에 대한 타이밍 정보가 예를 들어, 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는 플래그를 포함할 수 있도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에 따르면, 플래그는 same_pic_timing_within_ols_flag이다.
일 실시예에서, 플래그는 general_same_pic_timing_in_all_ols_flag이다.
일 실시예에 따르면, 지시는 하나 이상의 액세스 유닛의 각각의 액세스 유닛에서 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 각각이 비디오 데이터 스트림에서 설정(set)된 임의의 출력 레이어에 대한 액세스 유닛에 적용되고, 확장가능한 네스팅 픽처 타이밍 보충 강화 정보 메시지들이 존재하지 않는다는 것을 지시하거나, 또는 하나 이상의 액세스 유닛의 각각의 액세스 유닛에서 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 비디오 데이터 스트림에서 설정된 임의의 출력 레이어에 대한 액세스 유닛에 적용되거나 적용되지 않고, 확장가능한 네스팅된 픽처 타이밍 보충 강화 정보 메시지들이 존재할 수 있다는 것을 지시한다.
일 실시예에서, 지시가, 서브-비트스트림에 대한 타이밍 정보가 예를 들어 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되도록 구성될 수 있다는 것을 지시하는 경우, 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지 중 적어도 하나는 비트스트림의 액세스 유닛 내에서, 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 이전에 발생한다.
일 실시예에 따르면, 지시는 제약 플래그이다. 비디오 인코더는 예를 들어,하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 하나 이상의 서브-비트스트림 중 적어도 하나에 적용되는지 여부를 지시하는 제약 플래그를 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 포함하도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에서, 지시는 제1 지시이다. 비디오 데이터 스트림 내의 제2 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 더 획득되는지 여부를 지시하고/거나, 비디오 데이터 스트림 내의 제3 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 더 획득되는지 여부를 지시한다.
일 실시예에 따르면, 비디오 데이터 스트림 내의 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 더 획득되는지 여부를 더 지시하고/거나, 비디오 데이터 스트림 내의 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 더 획득되는지 여부를 더 지시한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 데이터 스트림 내의 제1 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다. 및/또는, 비디오 데이터 스트림 내의 제2 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지를 포함하도록 비디오 데이터 스트림을 생성한다. 비디오 데이터 스트림이 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함하는 경우는, 확장가능한 네스팅 보충 강화 정보 메시지에 따라서 다음을 지시한다: 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지 모두가 타이밍 정보(예를 들어, 타이밍 정보는 픽처 타이밍 정보 또는 버퍼링 주기 정보 또는 디코딩 유닛 정보임)를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의해 대체된다는 것. 또는: 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지 중 적어도 하나를 포함하는 서브세트가 타이밍 정보(예를 들어, 타이밍 정보는 픽처 타이밍 정보 또는 버퍼링 주기 정보 또는 디코딩 유닛 정보임)를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의해 대체된다는 것.
일 실시예에 따르면, 비디오 인코더는 예를 들어, 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지가 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지이고, 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지가 확장가능한 네스팅 픽처 타이밍 보충 강화 정보 메시지이도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다. 또는, 비디오 인코더는 예를 들어, 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지가 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지이고, 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지가 확장가능한 네스팅 버퍼링 주기 보충 강화 정보 메시지이도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다. 또는, 비디오 인코더는 예를 들어, 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지가 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지이고, 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지가 확장가능한 네스팅 디코딩 유닛 보충 강화 정보 메시지이도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에서, 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 비디오 데이터 스트림이 포함할 수 있는 경우, 비디오 인코더는 예를 들어,타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지가, 비트스트림의 액세스 유닛 내에서, 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지 이전에 발생하도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에 따르면, 타이밍 정보는 가상 참조 디코더(Hypothetical Reference Decoder)(HRD)에 대한 타이밍 정보이다.
일 실시예에서, 서브-비트스트림은 출력 레이어 세트에 의존(depend)하고/거나, 서브-레이어(sub-layer)에 의존하고/하거나, 서브픽처에 의존하고/하거나, 디코딩 유닛의 서브세트에 의존한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 장치는 서브-비트스트림을 획득하기 위해 입력 비트스트림을 처리한다. 비디오 데이터 스트림 내의 지시는 서브-비트스트림에 대한 타이밍 정보가, 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다.
일 실시예에 따르면, 서브-비트스트림에 대한 타이밍 정보가 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되지 않는다는 것을 지시하는 경우, 장치는 예를 들어,하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지로 대체된다는 것을 지시하도록 구성될 수 있다.
일 실시예에 따르면, 지시는 예를 들어 플래그일 수 있다. 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지 중 하나는 예를 들어,서브-비트스트림에 대한 타이밍 정보가 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는 플래그를 포함할 수 있다.
일 실시예에서, 플래그는 use_orig_pic_timing_flag이다.
일 실시예에 따르면, 비디오 데이터 스트림은 예를 들어 비디오 파라미터 세트를 포함할 수 있다. 지시는 예를 들어 플래그일 수 있다. 비디오 파라미터 세트는 예를 들어, 서브-비트스트림에 대한 타이밍 정보가 예를 들어, 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되도록 구성될 수 있는지 여부를 지시하는 플래그를 포함할 수 있다.
일 실시예에서, 플래그는 same_pic_timing_within_ols_flag이다.
일 실시예에 따르면, 플래그는 general_same_pic_timing_in_all_ols_flag이다.
일 실시예에서, 지시는 하나 이상의 액세스 유닛의 각각의 액세스 유닛에서 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 각각이 비디오 데이터 스트림에서 설정(set)된 임의의 출력 레이어에 대한 액세스 유닛에 적용되고, 확장가능한 네스팅 픽처 타이밍 보충 강화 정보 메시지들이 존재하지 않는다는 것을 지시하거나, 또는 하나 이상의 액세스 유닛의 각각의 액세스 유닛에서 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 비디오 데이터 스트림에서 설정된 임의의 출력 레이어에 대한 액세스 유닛에 적용되거나 적용되지 않고, 확장가능한 네스팅된 픽처 타이밍 보충 강화 정보 메시지들이 존재할 수 있다는 것을 지시한다.
일 실시예에 따르면, 하나 이상의 액세스 유닛의 각각의 액세스 유닛에서 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 비디오 데이터 스트림에서 설정된 임의의 출력 레이어에 대한 액세스 유닛에 적용되거나 적용되지 않고, 확장가능한 네스팅된 픽처 타이밍 보충 강화 정보 메시지들이 존재할 수 있다는 것을 지시하는 경우,
장치는 입력 비트스트림 또는 서브-비트스트림으로부터, 픽처 타이밍 콘텐트(picture timing content)를 가지는 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지들을 포함하는 모든 보충 강화 정보 네트워크 추상화 레이어 유닛(supplemental enhancement information network abstraction layer unit)들을 제거하도록 구성된다.
일 실시예에서, 지시가, 서브-비트스트림에 대한 타이밍 정보가, 예를 들어 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되도록 구성될 수 있다는 것을 지시하는 경우, 장치는 예를 들어, 장치가 예를 들어, 비트스트림의 액세스 유닛 내에서 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지를 처리하도록 구성될 수 있기 이전에, 비트스트림의 액세스 유닛 내에서의 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 전에 발생하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지 중 적어도 하나를 처리하도록 구성될 수 있다.
일 실시예에 따르면, 지시는 제약 플래그이다. 장치는 예를 들어, 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 하나 이상의 서브-비트스트림 중 적어도 하나에 적용되는지 여부를 지시하는 제약 플래그를 포함하는 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지를 처리하도록 구성될 수 있다.
일 실시예에서, 지시는 제1 지시이다. 비디오 데이터 스트림 내의 제2 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 더 획득되는지 여부를 지시하고/거나, 비디오 데이터 스트림 내의 제3 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 더 획득되는지 여부를 지시한다.
일 실시예에 따르면, 비디오 데이터 스트림 내의 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 더 획득되는지 여부를 더 지시하고/거나, 비디오 데이터 스트림 내의 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 더 획득되는지 여부를 더 지시한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 장치는 서브-비트스트림을 획득하기 위해 입력 비트스트림을 처리한다. 비디오 데이터 스트림 내의 제1 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다. 및/또는 비디오 데이터 스트림 내의 제2 지시는 서브-비트스트림에 대한 타이밍 정보가 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 획득되는지 여부를 지시한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 장치는 서브-비트스트림을 획득하기 위해 입력 비트스트림을 처리한다. 비디오 데이터 스트림은 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지를 포함한다. 비디오 데이터 스트림이 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함하는 경우, 장치는 확장가능한 네스팅 보충 강화 정보 메시지에 따라서 다음을 대체한다: 타이밍 정보(예를 들어, 타이밍 정보는 픽처 타이밍 정보 또는 버퍼링 주기 정보 또는 디코딩 유닛 정보임)를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의한 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지의 모두. 또는, 타이밍 정보(예를 들어, 타이밍 정보는 픽처 타이밍 정보 또는 버퍼링 주기 정보 또는 디코딩 유닛 정보임)를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의한 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지 중 적어도 하나를 포함하는 서브세트.
일 실시예에 따르면, 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지는, 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지이고, 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지는, 확장가능한 네스팅 픽처 타이밍 보충 강화 정보 메시지(scalable nesting picture timing supplemental enhancement information message)이다. 또는, 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지는, 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지이고, 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지는, 확장가능한 네스팅 버퍼링 주기 보충 강화 정보 메시지(scalable nesting buffering period supplemental enhancement information message)이다. 또는, 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지는, 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지이고, 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지는, 확장가능한 네스팅 디코딩 유닛 보충 강화 정보 메시지(scalable nesting decoding unit supplemental enhancement information message)이다.
일 실시예에서, 비디오 데이터 스트림이 예를 들어 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함할 수 있는 경우. 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지는, 비트스트림의 액세스 유닛 내에서 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지 이전에 발생한다. 장치는 예를 들어, 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지 이전에, 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 처리하도록 구성될 수 있다.
일 실시예에 따르면, 타이밍 정보는 가상 참조 디코더(Hypothetical Reference Decoder)(HRD)에 대한 타이밍 정보이다.
일 실시예에서, 서브-비트스트림은 출력 레이어 세트에 의존(depend)하고/거나, 서브-레이어(sub-layer)에 의존하고/하거나, 서브픽처에 의존하고/하거나, 디코딩 유닛의 서브세트에 의존한다.
일 실시예에 따르면, 장치는 비디오를 디코딩하기 위해 서브-비트스트림을 디코딩하도록 구성될 수 있다.
더욱이, 일 실시예에 따르면, 비디오를 비디오 데이터 스트림으로 인코딩하고 비디오를 디코딩하는 시스템이 제공된다. 시스템은 상술한 바와 같은 비디오 인코더 및 상술한 바와 같은 장치를 포함한다. 비디오 인코더는 예를 들어, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하도록 구성될 수 있다. 장치는 예를 들어, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하도록 구성될 수 있다. 더욱이, 장치는 예를 들어, 서브-비트스트림을 획득하기 위해 입력 비트스트림을 처리하도록 구성될 수 있다. 또한, 장치는 비디오를 디코딩하기 위해 서브-비트스트림을 디코딩하도록 구성될 수 있다.
VVC 드래프트 사양에는, 비트스트림이 디코딩되는 경우, HRD 타이밍 동작 양식(HRD timing behaviour)(예를 들어, 버퍼링 주기 SEI 메시지 및 픽처 타이밍 SEI 메시지)을 제어하는 SEI 메시지가 포함되어 있다.
현재 VVC 드래프트 사양에는 여러 타겟 임시 ID들에 적용되는 모든 픽처 타이밍 SEI 메시지들이 이미 포함되어 있고, 즉, 시간적 확장성에 추가 타이밍 정보의 확장가능한 네스팅이 반드시 필요한 것은 아니다. 따라서 서브-비트스트림을 추출하는 경우(예: OLS를 통해 레이어화된 시나리오에서 또는 서브-픽처들을 공간적으로 추출하는 것에 의해) 경우에 따라 이러한 방식으로 픽처 타이밍 SEI 메시지들을 수정/교환할 필요가 없을 수 있다.
다음에서는 출력 레이어 세트 추출에 대해 설명된다.
일 실시예에서, 비트스트림의 픽처 타이밍 SEI 메시지가 비트스트림(일부 OLS B에 의해 정의됨/대응함)의 모든 서브-비트스트림(일부 OLS A에 정의됨/대응함)에 적용되고 버퍼링 주기 SEI 메시지만이 확장가능한 네스팅된 대응물(counterpart)들로 대체됨을 지시하는 시그널링이 추가된다. 예시 신택스:
scalable_nesting( payloadSize ) { Descriptor
nesting_ols_flag u(1)
if( nesting_ols_flag ) {
use_orig_pic_timing_flag u(1)
nesting_num_olss_minus1 ue(v)
for( i = 0; i <= nesting_num_olss_minus1; i++ )
nesting_ols_idx_delta_minus1[i] ue(v)
} else {
nesting_all_layers_flag u(1)
if( !nesting_all_layers_flag ) {
nesting_num_layers_minus1 ue(v)
for( i = 1; i <= nesting_num_layers_minus1; i++ )
nesting_layer_id[i] u(6)
}
}
nesting_num_supplemental enhancement informations_minus1 ue(v)
while( !byte_aligned( ) )
nesting_zero_bit /* equal to 0 */ u(1)
for( i = 0; i <= nesting_num_supplemental enhancement informations_minus1; i++ )
supplemental enhancement information_message( )
}
현재 확장가능한 네스팅 SEI 메시지들은 액세스 장치 내의 HRD SEI 메시지들을 뒤 따른다. 따라서, 실시예의 일부로서, use_orig_pic_timing_flag가 1과 같을 때, OLS 특정 HRD SEI 메시지들을 포함하는 확장가능한 네스팅 SEI 메시지는 비트스트림 순서로 액세스 유닛 내의 각각의 PT SEI 메시지 (추출 동안 유지할 메시지) 이전에 발생해야 한다.또는 대안적인 실시예에서, 지시는 제약 플래그로서 VPS에 있다:
general_constraint_info( ) { Descriptor
general_progressive_source_flag u(1)
...
same_pic_timing_within_ols_flag u(1)
...
while( !byte_aligned( ) )
gci_alignment_zero_bit f(1)
}
또는 대안적인 실시예에서, 지시는 제약 플래그로서 픽처 타이밍 SEI 메시지 내에 있다.
이 추출 프로세스가 변경되었다.
다음에서, 서브-비트스트림 추출 프로세스가 설명된다.
이 프로세스에 대한 입력은 비트스트림 inBitstream, 타겟 OLS 인덱스 targetOlsIdx 및 타겟 최고 임시 ID 값 tIdTarget이다.
이 프로세스의 출력은 서브-비트스트림 outBitstream이다.
비트스트림과 함께 이 절에 명시된 프로세스의 출력인 모든 출력 서브-비트스트림이 입력 비트스트림에 대한 비트스트림 적합성의 요건이고, targetOlsIdx는 VPS에 의해 명시된 OLS 리스트에 대한 인덱스와 같고, tIdTarget은 입력들로서, 0 내지 6의 범위에 있는 임의의 값과 같으며 다음 조건들을 만족하는 적절한 비트스트림이어야 한다:
- 출력 서브-비트스트림은 LayerIdInOls[targetOlsIdx] 내의 각각의 nuh_layer_id 값들과 동일한 nuh_layer_id를 갖는 적어도 하나의 VCL NAL 유닛을 포함한다.
- 출력 서브-비트스트림은 TemporalId가 tIdTarget과 동일한 적어도 하나의 VCL NAL 유닛을 포함한다.
유의― 적절한 비트스트림에는 TemporalId가 0과 같은 하나 이상의 코딩된 슬라이스 NAL 유닛이 포함되지만 nuh_layer_id가 0과 같은 코딩된 슬라이스 NAL 유닛들을 포함할 필요는 없다.
출력 서브-비트스트림 outBitstream은 다음과 같이 도출된다:
- 비트스트림 outBitstream은 비트스트림 inBitstream과 동일하게 설정된다.
- TemporalId가 tIdTarget보다 큰 모든 NAL 유닛들을 outBitstream으로부터 제거한다.
- outBitstream으로부터, nal_unit_type이 VPS_NUT, DPS_NUT 및 EOB_NUT와 같지 않고 nuh_layer_id가 LayerIdInOls[targetOlsIdx] 리스트에 포함되지 않은 모든 NAL 유닛들을 제거한다.
- nesting_ols_flag가 1이고 NestingOlsIdx[i]가 targetOlsIdx와 같도록 0에서 nesting_num_olss_minus1까지의 범위에 i 값이 없는 확장가능한 네스팅 SEI 메시지를 포함하는 모든 SEI NAL 단위를 outBitstream으로부터 제거한다.
- targetOlsIdx가 0보다 큰 경우, payloadType이 0(버퍼링 주기), 1(픽처 타이밍) 또는 130(디코딩 유닛 정보)과 같은 확장 불가능한-네스팅된 SEI 메시지를 포함하는 모든 SEI NAL 유닛들을 outBitstream으로부터 제거한다.
- targetOlsIdx가 0보다 크고 use_orig_pic_timing_flag/same_pic_timing_within_ols_flag가 0과 같은 경우, outBitstream에서 payloadType이 1(픽처 타이밍)과 같은 확장 불가능한-네스팅된 SEI 메시지를 포함하는 모든 SEI NAL 유닛들을 제거한다.
- outBitstream에 확장가능한 네스팅 SEI 메시지가 포함되어 있고 outBitstream에 적용할 수 있는 SEI NAL 유닛들이 포함된 경우 (NestingOlsIdx[i]는 targetOlsIdx와 같음) 다음을 수행한다:
- use_orig_pic_timing_flag/same_pic_timing_within_ols_flag가 0과 같은 경우, 확장가능한 네스팅 SEI 메시지로부터 payloadType이 0(버퍼링 주기), 1(픽처 타이밍) 또는 130(디코딩 유닛 정보)과 같은 적절한 확장 불가능한-네스팅된 SEI 메시지들을 추출하고 해당 메시지들을 outBitstream에 넣는다.
- 그렇지 않으면, (use_orig_pic_timing_flag/same_pic_timing_within_ols_flag가 1과 같은 경우), outBitstream에 적용가능한 확장가능한 네스팅 SEI 메시지(NestingOlsIdx[i]는 targetOlsIdx와 같음)가 있는 경우 확장가능한 네스팅 SEI 메시지로부터 payloadType이 0(버퍼링 주기)또는 130(디코딩 유닛 정보)과 같은 적절한 확장 불가능한-네스팅된 SEI 메시지를 추출하고 해당 메시지들을 outBitstream에 넣는다.
- 확장가능한 네스팅 SEI 메시지가 포함된 모든 SEI NAL 유닛들을 outBitstream으로부터 제거한다.
지시, 예를 들어, 플래그가 사용될 수 있고, 예를 들어, general_same_pic_timing_in_all_ols_flag 또는 예를 들어, same_pic_timing_within_ols_flag가 사용될 수 있다.
제1 값과 동일한 general_same_pic_timing_in_all_ols_flag(또는 same_pic_timing_within_ols_flag), 예를 들어, 1과 같은 각 AU의 확장 불가능한-네스팅된 PT SEI 메시지들이 비트스트림의 임의의 OLS에 대한 AU에 적용되고 확장가능한 네스팅된 PT SEI 메시지가 존재하지 않음을 명시한다. 제2 값, 예를 들어 0과 같은 general_same_pic_timing_in_all_ols_flag는 각 AU의 확장 불가능한-네스팅된 PT SEI 메시지가 비트스트림 및 확장가능한 네스팅된 PT SEI 메시지들의 임의의 OLS에 대한 AU에 적용되거나 적용되지 않을 수 있음을 명시한다.
예를 들어, general_same_pic_timing_in_all_ols_flag가 제2 값, 예를 들어 0과 같은 경우 (장치는) 입력 비트스트림 또는 출력 비트스트림 (예: outBitstream/서브-비트스트림) 으로부터 payloadType이 1 (PT) 과 같은 확장 불가능한-네스팅된 SEI 메시지를 구성하는 모든 SEI NAL 유닛들을 제거할 수 있다.
실시예들에서, 또한 어떤 경우에 버퍼링 주기 SEI 메시지는 추가 지시가 파라미터 세트 또는 버퍼링 주기 SEI 메시지 자체에서 전달될 수 있도록 확장가능한 네스팅된 변형을 통한 교체가 필요하지 않을 수 있으며, 지시된 타이밍은 추출된 서브-비트스트림에도 적용되고, 추출 프로세스는 각각의 지시에 따라 원래 BP 및 PT SEI 메시지들을 유지하도록 추가로 수정된다.
다음에서는 서브픽처 추출이 설명된다.
서브픽처 서브-비트스트림 추출의 경우를 고려하는 다른 실시예에서, 비트스트림에 포함된 모든 서브픽처들의 결합으로 구성된 비트스트림의 서브-픽처 세트 또는 서브픽처에 의해 정의된 임의의 서브비트스트림에 비트스트림의 픽처 타이밍 SEI 메시지들이 적용됨을 지시하는 각 시그널링이 비트스트림에 추가되고(예: 서브-픽처 네스팅 SEI 메시지의 신택스, 픽처 타이밍 SEI 메시지, 파라미터 세트들), 버퍼링 주기 SEI 메시지들만 해당 서브픽처-네스팅된 대응물들로 대체된다.
대안적으로, 또한 어떤 경우에, 버퍼링 주기 SEI 메시지는 추가 지시가 파라미터 세트 또는 버퍼링 주기 SEI 메시지 자차에서 전달될 수 있도록 서브픽처-네스팅된 변형을 통한 교체가 필요하지 않을 수 있으며, 지시된 타이밍은 추출된 서브-비트스트림에도 적용되고, 추출 프로세스는 각각의 지시에 따라 원래 BP 및 PT SEI 메시지들을 유지하도록 추가로 수정된다.
다음에서, 확장가능한 네스팅된 HRD SEI 메시지들의 존재에 기초하여 확장가능한 네스팅된 HRD SEI 메시지들의 제거가 설명된다.
본 발명의 다른 실시예에서, 확장 불가능한-네스팅된 HRD SEI 메시지(예: BP, PT, DUI SEI 메시지들)의 범위, 즉 일부(예: PT SEI 메시지들만) 또는 전체가 추출 가능한 서브-비트스트림들(예: OLS)에 적용되는지 여부는 확장가능한 네스팅된 HRD SEI 메시지들의 형태로 각각의 대체 SEI 메시지의 존재를 통해 지시되고, 그러한 메시지들의 부재는 각각의 확장 불가능한 HRD SEI 메시지들이 OLS에 적용된다는 지시이다. 이 범위 지시의 결과는, 하위 비트스트림 추출 프로세스에서 확장 불가능한-네스팅된 SEI 메시지들의 제거는 제거된 메시지들을 대체할 수 있는 확장가능한 네스팅된 SEI 메시지들의 존재와 그러한 확장가능한 네스팅된 SEI 메시지들이 부재한 경우에 의존한다는 것이고, 확장 불가능한-네스팅된 SEI 메시지들은 추출된 서브-비트스트림에 남아 있다.
추가의 실시예에서, 각각의 확장가능한-네스팅된 HRD SEI 메시지들은 추출 동안 비트스트림의 순차적 처리를 용이하게 하기 위해 액세스 유닛에서 비트스트림 순서로 확장가능한-네스팅된 HRD SEI 메시지들 앞에 배치된다.
다음에서는 단순화된 확장가능한 네스팅이 설명된다.
일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 액세스 유닛이 포함하는 경우, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보는 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일하다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 액세스 유닛이 포함하는 경우, 비디오 데이터 스트림은 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한지 여부를 지시하는 지시를 포함한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타난다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 비디오 데이터 스트림은 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는지 여부를 지시하는 지시를 포함한다.
일 실시예에서, 동일한 값의 식별자를 가지는 액세스 유닛의 모든 확장가능한 네스팅된 보충 강화 정보 메시지들은, 예를 들어, 동일한 버퍼 주기 정보 및/또는 동일한 픽처 타이밍 정보를 전달(carry)할 수 있고, 식별자는 출력 레이어 세트를 식별한다.
일 실시예에 따르면, 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 픽처 타이밍 보충 강화 정보 메시지는 예를 들어,동일한 픽처 타이밍 정보를 전달할 수 있다. 및/또는, 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 버퍼 주기 보충 강화 정보 메시지는 예를 들어,동일한 버퍼 주기 정보를 전달할 수 있다. 및/또는, 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 디코딩 유닛 보충 강화 정보 메시지는 예를 들어,동일한 디코딩 유닛 정보를 전달할 수 있다.
일 실시예에서, 동일한 값의 식별자를 가지는 액세스 유닛에서 특정한 페이로드 유형(payload type)의 2개의 확장가능한 네스팅된 보충 강화 정보 메시지들은, 예를 들어, 동일한 콘텐트를 전달할 수 있고, 식별자는 출력 레이어 세트를 식별한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록 비디오 데이터 스트림을 생성한다. 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 비디오 인코더는, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일하도록, 비디오 데이터 스트림을 생성한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록 비디오 데이터 스트림을 생성한다. 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 비디오 인코더는, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한지 여부를 지시하는 지시를 비디오 데이터 스트림이 포함하도록, 비디오 데이터 스트림을 생성한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록 비디오 데이터 스트림을 생성한다. 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 비디오 인코더는 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나도록, 비디오 데이터 스트림을 생성한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록 비디오 데이터 스트림을 생성한다. 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 비디오 인코더는 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는지 여부를 지시하는 지시를 포함하도록, 비디오 데이터 스트림을 생성한다.
일 실시예에서, 동일한 값의 식별자를 가지는 액세스 유닛의 모든 확장가능한 네스팅된 보충 강화 정보 메시지들은, 예를 들어, 동일한 버퍼 주기 정보 및/또는 동일한 픽처 타이밍 정보를 전달(carry)할 수 있고, 식별자는 출력 레이어 세트를 식별한다.
일 실시예에 따르면, 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 픽처 타이밍 보충 강화 정보 메시지는 예를 들어,동일한 픽처 타이밍 정보를 전달할 수 있다. 및/또는, 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 버퍼 주기 보충 강화 정보 메시지는 예를 들어,동일한 버퍼 주기 정보를 전달할 수 있다. 및/또는, 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 디코딩 유닛 보충 강화 정보 메시지는 예를 들어,동일한 디코딩 유닛 정보를 전달할 수 있다.
일 실시예에서, 동일한 값의 식별자를 가지는 액세스 유닛에서 특정한 페이로드 유형의 2개의 확장가능한 네스팅된 보충 강화 정보 메시지들은 동일한 콘텐트를 전달하고, 식별자는 출력 레이어 세트를 식별한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 입력 비트스트림은 복수의 액세스 유닛들을 포함한다. 장치는 서브-비트스트림을 획득하기 위해 액세스 유닛들을 처리한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 액세스 유닛이 포함하는 경우, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보는 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일하다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 입력 비트스트림은 복수의 액세스 유닛들을 포함한다. 장치는 서브-비트스트림을 획득하기 위해 액세스 유닛들을 처리한다. 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 액세스 유닛이 포함하는 경우, 비디오 데이터 스트림은 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 액세스 유닛의 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한지 여부를 지시하는 지시를 포함한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 입력 비트스트림은 복수의 액세스 유닛들을 포함하고, 장치는 서브-비트스트림을 획득하기 위해 액세스 유닛들을 처리한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타난다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치가 제공되며, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 입력 비트스트림은 복수의 액세스 유닛들을 포함한다. 장치는 서브-비트스트림을 획득하기 위해 액세스 유닛들을 처리한다. 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해, 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우, 비디오 데이터 스트림은 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보가, 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나를 바로 뒤따르는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는지 여부를 지시하는 지시를 포함한다.
일 실시예에서, 동일한 값의 식별자를 가지는 액세스 유닛의 모든 확장가능한 네스팅된 보충 강화 정보 메시지들은, 예를 들어, 동일한 버퍼 주기 정보 및/또는 동일한 픽처 타이밍 정보를 전달(carry)할 수 있고, 식별자는 출력 레이어 세트를 식별한다.
일 실시예에 따르면, 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 픽처 타이밍 보충 강화 정보 메시지는 예를 들어,동일한 픽처 타이밍 정보를 전달할 수 있다. 및/또는, 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 버퍼 주기 보충 강화 정보 메시지는 예를 들어,동일한 버퍼 주기 정보를 전달할 수 있다. 및/또는, 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 디코딩 유닛 보충 강화 정보 메시지는 예를 들어,동일한 디코딩 유닛 정보를 전달할 수 있다.
일 실시예에서, 동일한 값의 식별자를 가지는 액세스 유닛에서 특정한 페이로드 유형의 2개의 확장가능한 네스팅된 보충 강화 정보 메시지들은 동일한 콘텐트를 전달하고, 식별자는 출력 레이어 세트를 식별한다.
일 실시예에 따르면, 장치가 출력 레이어 세트에 대한 버퍼 주기 확장가능한 네스팅 보충 강화 정보 메시지를 발견했을 경우, 장치는 예를 들어,출력 레이어 세트에 대한 추가적인 버퍼 주기 확장가능한 네스팅 보충 강화 정보 메시지들을 검색하지 않고, 출력 레이어 세트에 대한 버퍼 주기 확장가능한 네스팅 보충 강화 정보의 콘텐트를 사용하도록 구성될 수 있다. 및/또는, 장치가 출력 레이어 세트에 대한 픽처 타이밍 확장가능한 네스팅 보충 강화 정보 메시지를 발견했을 경우, 장치는 예를 들어,출력 레이어 세트에 대한 추가적인 픽처 타이밍 확장가능한 네스팅 보충 강화 정보 메시지들을 검색하지 않고, 출력 레이어 세트에 대한 픽처 타이밍 확장가능한 네스팅 보충 강화 정보의 콘텐트를 사용하도록 구성될 수 있다.
일 실시예에 따르면, 장치는 비디오를 디코딩하기 위해 서브-비트스트림을 디코딩하도록 구성될 수 있다.
더욱이, 일 실시예에 따르면, 비디오를 비디오 데이터 스트림으로 인코딩하고 비디오를 디코딩하는 시스템이 제공된다. 시스템은 상술한 바와 같은 비디오 인코더 및 상술한 바와 같은 장치를 포함한다. 비디오 인코더는 예를 들어, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하도록 구성될 수 있다. 장치는 예를 들어, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하도록 구성될 수 있다. 더욱이, 장치는 예를 들어, 서브-비트스트림을 획득하기 위해 입력 비트스트림을 처리하도록 구성될 수 있다. 또한, 장치는 비디오를 디코딩하기 위해 서브-비트스트림을 디코딩하도록 구성될 수 있다.
확장가능한 네스팅 SEI 메시지를 사용하여 비트스트림의 모든 OLS에 대한 BP 및 PT SEI 메시지를 대체할 수 있는 경우, 현재의 최신 기술을 통해 인코더는 BP 및 PT를 확장가능한 네스팅 SEI 메시지에 분산시킬 수 있다. 이러한 비트스트림을 처리하는 추출기는 적용가능한 확장가능한 네스팅 BP 및 PT SEI 메시지들이 발견될 때까지 액세스 유닛(OLS 및 반복의 양을 고려할 때 많을 수 있음)에서 모든 확장가능한 네스팅 SEI 메시지들을 잠재적으로 스캔해야 한다.
인코더가 제1 확장가능한-네스팅된 BP 또는 PT SEI 메시지를 비트스트림의 액세스 유닛에 넣고, 액세스 유닛의 픽처들을 인코딩하는 과정에서, BP 또는 PT SEI 메시지 파라미터의 업데이트를 실현하는 경우, 다른 BP 또는 PT SEI 메시지를 비트스트림의 액세스 유닛에 기록함으로써 BP 또는 PT SEI 메시지 파라미터들의 업데이트가 필요하다는 것을 인지하고, 추출기는 액세스 유닛을 추출하는 경우 비트스트림 내의 액세스 유닛에 넣어진 최신 또는 가장 최신의 BP 또는 PT SEI 메시지들을 사용하도록 보장해야 하는 후속적으로 부담이 된다.
본 발명은 전술된 비분별적 옵션(non-sensible option)들을 제거하는 제약들을 부과하는 것에 의해 추출기의 동작을 단순화한다.
일 실시예에서, 예를 들어 nesting_ols_idx_delta_minus1(즉, OLS를 식별하는 식별자/인덱스)의 동일한 값을 가지는 액세스 유닛의 모든 확장가능한 SEI 메시지가 동일한 콘텐트(예를 들어, 동일한 버퍼링 주기 정보 및/또는 동일한 픽처/타이밍 정보)를 전달하는 것은 비트스트림 적합성의 요건일 수 있다. 이에 의해, OLS에 대한 BP 및 PT SEI 메시지들이 하나의 확장가능한 네스팅 SEI 메시지에서 발견될 수 있고, 추출기는 타겟팅된 OLS를 가지는 확장가능한 네스팅 SEI 메시지를 발견하면 필요한 모든 정보를 갖는다는 것을 확신할 수 있다.
일 실시예에서, OLS를 식별하는 식별자, 예를 들어 인덱스의 동일한 값을 가지는 액세스 유닛의 모든 확장가능한-네스팅된 SEI 메시지들은 동일한 콘텐트(예를 들어, 동일한 버퍼링 주기 정보 및/또는 동일한 픽처/타이밍 정보)를 전달하는 것은 비트스트림 적합성의 요건일 수 있다. 예를 들어 특정한 액세스 유닛에 대해, 레이어들 및 서브-레이어들의 세트(예: 특정 OLS의 경우)에 적용되는 모든 PT SEI 메시지 페이로드는 동일해야 한다(예: 2개의 개별 확장가능한 네스팅 SEI 메시지에 포함된 2개의 PT SEI 메시지의 경우). BP SEI 메시지 및 DUI SEI 메시지에도 동일하게 적용된다. 이에 의해, OLS에 대한 BP 및 PT SEI 메시지들이 하나의 확장가능한 네스팅 SEI 메시지에서 발견될 수 있고, 추출기는 타겟팅된 OLS를 가지는 확장가능한 네스팅 SEI 메시지를 발견하면 필요한 모든 정보를 포함한다는 것을 확신할 수 있다.
일 실시예에 따르면, 동일한 값의 식별자를 가지는 액세스 유닛에서 특정한 페이로드 유형(payload type)의 2개의 확장가능한 네스팅된 SEI 메시지들은, 동일한 콘텐트(예를 들어, 동일한 버퍼링 주기 정보 및/또는 동일한 픽처/타이밍 정보)를 전달하고, 식별자(예를 들어, 인덱스)는 OLS를 식별한다. 예를 들어, 예를 들어 동일한 OLS에 적용되는 2개의 확장가능한 네스팅 PT SEI 메시지들을 전달하는 비트스트림의 특정한 액세스 유닛의 경우, 이러한 2개의 확장가능한 네스팅 PT SEI 메시지들의 페이로드는 동일해야 하며 추출기는 타겟 OLS와 함께 확장가능한 네스팅 SEI 메시지를 발견하면 필요한 모든 정보를 포함한다는 것을 확신할 수 있다.
일 실시예에서, OLS를 식별하는 식별자, 예를 들어 인덱스의 동일한 값을 가지는 액세스 유닛의 모든 확장가능한-네스팅된 SEI 메시지들은 동일한 콘텐트(예를 들어, 동일한 버퍼링 주기 정보 및/또는 동일한 픽처/타이밍 정보)를 전달하는 것은 비트스트림 적합성의 요건일 수 있다. 예를 들어, OLS에 대한 BP 및 PT SEI 메시지들은 하나의 확장가능한 네스팅 SEI 메시지에서 찾을 수 있으며 추출기는 타겟 OLS가 포함된 확장가능한 네스팅 SEI 메시지를 발견하면 필요한 모든 정보를 포함한다는 것을 확신할 수 있다.
일 실시예에 따르면, 예를 들어, OLS에 적용 가능한 BP 및 PT SEI 메시지들이 비트스트림 순서로 OLS에 적용할 수 없는 다른 확장가능한 네스팅 SEI 메시지 NAL 유닛 없이 연속해서 2개의 확장가능한 네스팅 SEI 메시지 내에 오는 것은 비트스트림 적합성의 요건일 수 있다.
다음은 저 지연(low delay) 및 DU 타이밍에 대한 시간적 확장성이 설명된다.
일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 비디오 데이터 스트림은 비디오 데이터 스트림의 서브-비트스트림들의 수에 의존하는 확산 인자를 포함하고; 또는 비디오 데이터 스트림은 비디오 데이터 스트림의 서브-비트스트림들 사이에서 최상위 서브-비트스트림에 의존하는 클록 서브-틱 값을 포함한다.
일 실시예에 따르면, 서브-비트스트림들 각각은, 출력 레이어 세트에 의존하고/거나, 서브-레이어에 의존하고/하거나, 서브픽처에 의존한다.
일 실시예에서, 디코딩 유닛 제거 시간은 액세스 유닛 제거 시간 및 확산 인자에 의존한다.
일 실시예에 따르면, 비디오 데이터 스트림은, 예를 들어, 시간적 거리(temporal distance)를 포함할 수 있고, 시간적 거리는 예를 들어,도출된(derived) 클록 서브-틱 값에 의해 곱해지도록 구성될 수 있고, 도출된 클록 서브-틱 값은 확산 인자를 사용하여 도출가능(derivable)하다.
일 실시예에서, 복수의 확산 인자들 각각은 복수의 서브레이어들의 서브레이어에 할당된다. 비디오 데이터 스트림은 예를 들어, 복수의 확산 인자들을 포함할 수 있다.
일 실시예에 따르면, 클록 서브-틱 값은, 클록 틱에 의존하고, 확산 인자에 의존한다.
일 실시예에서, 클록 서브-틱 값은 다음에 따라 정의된다:
ClockSubTick =
= ClockTick / ( tick_divisor_minus2 + 2 ) * ( tick_divisor_factor_minus1[HTid] + 1 )
ClockSubTick은 클록 서브-틱 값이고, ClockTick은 클록 틱이고, tick_divisor_minus2은 추가 틱 제수(tick divisor)이고, 및 tick_divisor_factor_minus1[HTid]는 비디오 데이터 스트림의 확산 인자를 지시한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록 비디오 데이터 스트림을 생성한다. 또한, 비디오 인코더는 비디오 데이터 스트림이, 비디오 데이터 스트림의 서브-비트스트림들의 수에 의존하는 확산 인자를 포함하도록 비디오 데이터 스트림을 생성하고; 또는 비디오 인코더는 비디오 데이터 스트림이, 비디오 데이터 스트림의 서브-비트스트림들 사이에서 최상위 서브-비트스트림에 의존하는 클록 서브-틱 값을 포함하도록 비디오 데이터 스트림을 생성한다.
일 실시예에 따르면, 서브-비트스트림들 각각은, 출력 레이어 세트에 의존하고/거나, 서브-레이어에 의존하고/하거나, 서브픽처에 의존한다.
일 실시예에서, 비디오 인코더는 예를 들어, 디코딩 유닛 제거 시간이, 액세스 유닛 제거 시간 및 확산 인자에 의존하도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에 따르면, 비디오 인코더는 예를 들어,비디오 데이터 스트림이 시간적 거리를 포함하도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있고, 시간적 거리는 예를 들어,도출된 클록 서브-틱 값에 의해 곱해지도록 구성될 수 있고, 도출된 클록 서브-틱 값은 확산 인자를 사용하여 도출가능하다.
일 실시예에서, 복수의 확산 인자들 각각은 복수의 서브레이어들의 서브레이어에 할당된다. 비디오 인코더는 예를 들어, 비디오 데이터 스트림이 예를 들어 복수의 확산 인자를 포함할 수 있도록 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에 따르면, 클록 서브-틱 값은, 클록 틱에 의존하고, 확산 인자에 의존한다.
일 실시예에서, 클록 서브-틱 값은 다음에 따라 정의된다:
ClockSubTick =
= ClockTick / ( tick_divisor_minus2 + 2 ) * ( tick_divisor_factor_minus1[HTid] + 1 )
ClockSubTick은 클록 서브-틱 값이고, ClockTick은 클록 틱이고, tick_divisor_minus2은 추가 틱 제수(tick divisor)이고, 및 tick_divisor_factor_minus1[HTid]는 비디오 데이터 스트림의 확산 인자를 지시한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 서브-레이어에 대한 서브-레이어 특정 프레임 레이트 정보를 포함하도록 비디오 데이터 스트림을 생성하고; 및/또는 비디오 인코더는 비디오 데이터 스트림이 서브-레이어에 대한 서브-레이어 특정 프레임 디스플레이 지속기간 정보를 포함하도록 비디오 데이터 스트림을 생성한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더에 있어서, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 비디오 디코더는 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩한다. 비디오 데이터 스트림은 비디오 데이터 스트림의 서브-비트스트림들의 수에 의존하는 확산 인자를 포함하고, 비디오 디코더는 확산 인자를 사용하여 비디오를 디코딩하고; 또는 비디오 데이터 스트림은 비디오 데이터 스트림의 서브-비트스트림들 사이에서 최상위 서브-비트스트림에 의존하는 클록 서브-틱 값을 포함하고, 비디오 디코더는 클록 서브-틱 값을 사용하여 비디오를 디코딩한다.
일 실시예에 따르면, 서브-비트스트림들 각각은, 출력 레이어 세트에 의존하고/거나, 서브-레이어에 의존하고/하거나, 서브픽처에 의존한다.
일 실시예에서, 디코딩 유닛 제거 시간은 액세스 유닛 제거 시간 및 확산 인자에 의존한다.
일 실시예에 따르면, 비디오 데이터 스트림은, 예를 들어, 시간적 거리를 포함할 수 있다. 비디오 디코더는 예를 들어 시간적 거리를, 도출된 클록 서브-틱 값에 의해 곱하도록 구성될 수 있다. 비디오 디코더는 예를 들어, 확산 인자를 사용하여, 도출된 클록 서브-틱 값을 도출하도록 구성될 수 있다.
일 실시예에서, 확산 인자는 복수의 확산 인자들 중 하나이다. 복수의 확산 인자들 각각은, 예를 들어, 복수의 서브레이어들의 서브레이어에 할당될 수 있다. 비디오 데이터 스트림은 예를 들어, 복수의 확산 인자들을 포함할 수 있다. 비디오 디코더는 예를 들어,복수의 확산 인자들을 사용하여 비디오를 디코딩하도록 구성될 수 있다.
일 실시예에 따르면, 클록 서브-틱 값은, 클록 틱에 의존하고, 확산 인자에 의존한다.
일 실시예에서, 클록 서브-틱 값은 다음에 따라 정의된다:
ClockSubTick =
= ClockTick / ( tick_divisor_minus2 + 2 ) * ( tick_divisor_factor_minus1[HTid] + 1 )
ClockSubTick은 클록 서브-틱 값이고, ClockTick은 클록 틱이고, tick_divisor_minus2은 추가 틱 제수(tick divisor)이고, 및 tick_divisor_factor_minus1[HTid]는 비디오 데이터 스트림의 확산 인자를 지시한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더가 제공되고, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 비디오 디코더는 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩한다. 비디오 데이터 스트림은 서브-레이어에 대한 서브-레이어 특정 프레임 레이트 정보를 포함하고/거나, 비디오 데이터 스트림은 서브-레이어에 대한 서브-레이어 특정 프레임 디스플레이 지속기간 정보를 포함한다. 디코더는 서브-레이어에 대한 서브-레이어 특정 프레임 레이트 정보를 사용하고/거나 서브-레이어 특정 프레임 디스플레이 지속기간 정보를 사용하여 확산 인자를 결정한다.
더욱이, 일 실시예에 따르면, 비디오를 비디오 데이터 스트림으로 인코딩하고 비디오를 디코딩하는 시스템이 제공된다. 시스템은 상술한 바와 같은 비디오 인코더 및 상술한 바와 같은 비디오 디코더를 포함한다. 비디오 인코더는 비디오 데이터 스트림이, 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록 비디오를 비디오 데이터 스트림으로 인코딩한다. 비디오 디코더는 비디오 데이터 스트림을 수신하고, 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩한다.
시간적 서브-레이어들의 제거는 하위 시간적 서브-레이어들의 나머지 액세스 유닛들의 제거 시간들을 변경한다. 특히 프레임 재정렬(reordering)이 있는 경우이다. 그러나 저 지연 구성들 및 특히 DU 타이밍들이 제공되는 경우, 제거 시간은 매우 구조화된 방식으로 변경되고, 즉, 시간이 지남에 따라 디코딩 시간들을 스케일링 또는 분산시키는 것과 같이 수정된다. 도 4에서는 액세스 유닛 당 3개의 DU들이 있는 경우의 문제를 예시한다.
전체 비트스트림이 디코딩되는 경우, AU들의 최종 디코딩 시간이 그 서브-스트림일 뿐인 경우와 다르기 때문에 초-저 지연(ultra-low delay)의 특성이 손실된다는 점에 유의해야 한다. 일반적으로 이것은 다른 디코딩 기능을 포함하는 결과이고, 즉, 60fps를 디코딩 할 수 있는 디코더는 1/60 초 내에 프레임을 처리할 수 있는 반면 30fps를 디코딩 할 수 있는 디코더는 1/30 초 만에 프레임을 처리할 수 있다.
DU 제거 시간들은 AU 제거 시간의 델타들로 지시된다. deltaTime은 픽처 타이밍 SEI 메시지 또는 디코딩 유닛 정보 SEI 메시지에서 클록 서브틱들의 개수로 시그널링된다. 이 DeltaTime은 AU 제거 시간과 비교하여 DU의 제거 시간을 지시한다. CPB으로부터 DU 제거 시간들(AU 제거 시간과 비교 한 DeltaTimes) 을 지시하기 위해 다수의 시간적 서브-레이어들에 걸친 루프를 갖는 대신 확산 인자가 도출될 수 있다. 일 실시예에서, 확산 인자는 예를 들어, 2개의 그러한 서브-레이어들의 그러한 정보의 비율들에 의존하는, 서브-레이어 특정 프레임 레이트 정보(예를 들어, 서브-레이어 T0 30fps, 서브-레이어 L1 60fps) 또는 서브-레이어 특정 프레임 디스플레이 지속기간(섹션 6에서 아래에 설명된 FrameTimeInterval, 예를 들어 서브-레이어 L0 1/30s 및 서브-레이어 L1 1/60s)으로부터 도출된다.
대안적으로, 이러한 확산 인자가 지시될 수 있다. 실시예는 AU 제거 시간에 대한 델타로서 대응하는 DU 시간들을 계산하기 위해 확산 인자를 지시하는 DU 제거 시간들의 정보를 추가하는 것이다.
다음 중 하나에 지시된 대로:
general_hrd_parameters( firstSubLayer, maxNumSubLayersMinus1 ) { Descriptor
general_nal_hrd_parameters_present_flag u(1)
general_vcl_hrd_parameters_present_flag u(1)
[...]
if( !low_delay_hrd_flag[i] )
hrd_cpb_cnt_minus1[i] ue(v)
if( decoding_unit_hrd_params_present_flag && i != maxNumSubLayersMinus1)
tick_divisor_factor_minus1[i] u(8)
if( general_nal_hrd_parameters_present_flag )
sub_layer_hrd_parameters( i )
if( general_vcl_hrd_parameters_present_flag )
sub_layer_hrd_parameters( i )
}
}
또는 대안적인 실시예로서 다음과 같다:
sub_layer_hrd_parameters( subLayerId ) { Descriptor
for( j = 0; j <= hrd_cpb_cnt_minus1[subLayerId]; j++ ) {
bit_rate_value_minus1[subLayerId][j] ue(v)
cpb_size_value_minus1[subLayerId][j] ue(v)
if( decoding_unit_hrd_params_present_flag ) {
cpb_size_du_value_minus1[subLayerId][j] ue(v)
bit_rate_du_value_minus1[subLayerId][j] ue(v)
}
cbr_flag[subLayerId][j] u(1)
}
if( decoding_unit_hrd_params_present_flag && subLayerId  != maxNumSubLayersMinus1)
tick_divisor_factor_minus1[subLayerId] u(8)
}
HRD 사양에서 연관 변수 ClockSubtick의 도출은 다음에 따라 변경된다.변수 ClockSubtick은 다음과 같이 도출되며 클록 서브-틱이라고 한다.
ClockSubTick = ClockTick / ( tick_divisor_minus2 + 2 ) * ( tick_divisor_factor_minus1[HTid] + 1 ) (C-2)
그런 다음 DeltaTime은 비트스트림에 존재하는 최고 서브-레이어에 따라 더 크거나 작은 ClockSubtick을 사용한다.
대안적으로, 신택스 요소 tick_divisor_minus2는 최고 시간 서브레이어(HTid)가 각각의 서브레이어와 동일하게 설정되는 경우에 정확한 틱 제수를 지시하는 서브레이어마다 복제될 수 있다. 이 경우, 확산 인자는 없지만 다수의 ClockSubTicks가 각각의 비트스트림에 존재하는 최고 서브-레이어의 다른 값에 대해 시그널링되어, 원래 비트스트림으로부터 서브-레이어가 제거되는 경우에 사용된 ClockSubTick이 다른 것이다.
다음에서는 공통 DU 타이밍을 사용하는 경우에, OLS 추출과의 관련성(relevance)에 대해 설명한다.
비트스트림이 OLS 및 공통 DU 타이밍(공통 DU 타이밍을 포함하는 확장 불가능한-네스팅된 PT SEI 메시지)에 특정한 추출가능한 서브-비트스트림을 포함하는 경우, 비트레이트 오버헤드 및 처리 복잡성의 관점에서 대체물로서 확장가능한 네스팅된 PT SEI 메시지들을 제공하는 대신 위의 지시(use_orig_pic_timing_flag 및 same_pic_timing_within_ols_flag)와 비교하는 방식으로 PT SEI 메시지를 재-사용하는 것이 바람직하다.
도 5는 상단에 2개의 레이어들이 상단에 묘사되고, 2개의 레이어들의 AU 및 DU의 제거 시간이 전체 비트스트림 (예: 0-th OLS) 에 대해 하단에 도시되고 레이어 ID L0(예: 제1 OLS)을 가지는 단일 레이어를 추출하는 예시이다.
이 경우 공통 타이밍은 tick_divisor_factor_minus1[] 또는 조정된 틱 제수의 절대 지시(absolute indication)로서 위와 같은 방식으로 스케일링되어야 한다(픽처의 DU 시간 분산 참조). 따라서, 일 실시예에서, VPS에서의 각각의 OLS-특정 HRD 파라미터 신택스 구조는 공통 DU 제거 타이밍을 스케일링하기 위해 상대 인자(relative factor) 또는 틱 제수의 절댓값을 전달한다.
그러나 이 사용 시나리오에서 AU에는 L0 및 L1의 픽처가 모두 포함되어 있으므로 추출에 따라 AU당 DU들의 수가 변경된다. 즉, 추출 후 남은 DU들의 정확한 수를 도출하기 위해 양태 6의 뒷부분에서 설명하는 양태들도 필요하다.
다음에서는 공통 DU 타이밍을 사용하는 경우에 서브-픽처 추출과의 관련성에 대해 설명한다.
비트스트림이 추출 가능한 서브픽처들(움직임 보상 예측을 위한 서브픽처 경계 처리가 가능함) 및 공통 DU 타이밍들(공통 타이밍을 포함하는 확장 불가능한-네스팅된 PT SEI 메시지들)을 포함하는 경우, 마찬가지로 비트레이트 오버헤드 및 처리 복잡성의 관점에서 대체 가능한 확장가능한 네스팅된 PT SEI 메시지를 제공하는 대신 위의 지시들(use_orig_pic_timing_flag 및 same_pic_timing_within_ols_flag)과 비교하여 이러한 SEI 메시지들을 재사용하는 것이 바람직하다.
이 경우 추출 후 남은 DU들의 정확한 수를 도출하기 위해, tick_divisor_factor_minus1[] 또는 조정된 틱 제수의 절대 지시로서 위와 동일한 방식으로 공통 타이밍들을 스케일링해야 한다. 따라서, 일 실시예에서, VPS/SPS에서의 서브픽처-특정 HRD 파라미터 신택스 구조는 공통 DU 제거 타이밍들을 스케일링하기 위해 상대 인자 또는 틱 제수의 절댓값을 전달한다.
대안적으로, SEI 메시지 (예를 들어, 서브픽처 레벨 정보 SEI 메시지) 는 추출된 서브-비트스트림에서의 HRD 파라미터가 적절하게 도출될 수 있도록 스케일링 정보 또는 절댓값을 전달한다.
다음에서는 서브픽처들에 대한 CPB/비트레이트 크기 도출에 대해 설명한다.
일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더가 제공되고, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 비디오 디코더는 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩한다. 비디오를 디코딩하기 위해, 비디오 디코더는 현재 코딩된 픽처 버퍼 크기 정보를 지시하는 비디오 데이터 스트림 내의 정보에 의존하는 서브픽처에 대한 코딩된 픽처 버퍼 크기를 추정한다.
일 실시예에 따르면, 비디오 데이터 스트림은 예를 들어, 참조 레벨(reference level)에 대한 시그널링된 코딩된 픽처 버퍼 크기(signalled coded picture buffer size)를 포함할 수 있다.
일 실시예에서, 현재 레벨(current level)이 참조 레벨과 동일한 경우, 비디오 디코더는 예를 들어, 참조 레벨에 대한 코딩된 픽처 버퍼 크기를 사용하여 코딩된 픽처 버퍼 크기를 결정하도록 구성될 수 있다.
일 실시예에 따르면, 비디오 디코더는 예를 들어, 비디오 데이터 스트림의 신택스 요소(syntax element) cpb_size_value_minus1[i][j]에 의존하는 코딩된 픽처 버퍼 크기를 추정하도록 구성될 수 있다.
일 실시예에서, 비디오 디코더는 예를 들어, 비디오 데이터 스트림의 신택스 요소 cpb_size_scale에 의존하는 코딩된 픽처 버퍼 크기를 추정하도록 구성될 수 있다.
실시예에 따르면, 비디오 디코더는 예를 들어, 비디오 코딩 레이어 코딩된 픽처 버퍼 크기(video coding layer coded picture buffer size)인 서브픽처에 대한 코딩된 픽처 버퍼 크기를 추정하도록 구성될 수 있고, 예를 들어, 네트워크 추상화 레이어 코딩된 픽처 버퍼 크기(network abstraction layer coded picture buffer size)인 서브픽처에 대한 추가 코딩된 픽처 버퍼 크기를 추정하도록 구성될 수 있다.
일 실시예에서, 비디오 디코더는 예를 들어, 참조 레벨 프랙션 값(reference level fraction value)에 의존하는 비디오 코딩 레이어 코딩된 픽처 버퍼 크기 및/또는 네트워크 추상화 레이어 코딩된 픽처 버퍼 크기를 추정하도록 구성될 수 있다.
일 실시예에 따르면, 비디오 디코더는 예를 들어, 다음에 따라 비디오 코딩 레이어 코딩된 픽처 버퍼 크기를 추정하도록 구성될 수 있다:
SubPicCbpSizeVcl[s]=
= Floor(( cpb_size_value_minus1[i][j] + 1 )
* 2( 4 + cpb_size_scale )* RefLevelFraction[i][j] / 256)
장치는 예를 들어, 다음에 따라 네트워크 추상화 레이어 코딩된 픽처 버퍼 크기를 추정하도록 구성될 수 있다:
SubPicCbpSizeNal[s] =
= Floor(( cpb_size_value_minus1[i][j] + 1 )
* 2( 4 + cpb_size_scale)* RefLevelFraction[i][j] / 256),
여기서 RefLevelFraction은 참조 레벨 프랙션 값이다.
일 실시예에서, 비디오 디코더는 예를 들어, 다음에 따라 비디오 코딩 레이어 코딩된 픽처 버퍼 크기를 추정하도록 구성될 수 있다:
SubpicCpbSizeVcl[i][j][k] =
Floor( CpbVclFactor * MaxCPB * OlsRefLevelFraction[i][j][k] / 256)
SubpicCpbSizeNal[i][j][k] = Floor( CpbNalFactor * MaxCPB * OlsRefLevelFraction[i][j][k] / 256)
여기서 i 및 j 및 k는 인덱스들이고, OlsRefLevelFraction[i][j][k]는
실수(real number)이다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더가 제공되고, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 비디오 디코더는 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩한다. 비디오를 디코딩하기 위해, 비디오 디코더는 현재 코딩된 비디오 시퀀스 비트레이트 정보를 지시하는 비디오 데이터 스트림 내의 정보에 의존하는 서브픽처에 대한 비트레이트를 추정한다.
일 실시예에 따르면, 비디오 데이터 스트림은 예를 들어, 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하여 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함할 수 있다. 비디오 데이터 스트림의 지시가 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하여 서브픽처에 대한 비트레이트가 추정되어야 하는 것을 지시하는 경우, 비디오 디코더는 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하여 비트레이트를 추정한다. 비디오 데이터 스트림의 지시가, 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하지 않고 서브픽처에 대한 비트레이트가 추정되어야 하는 것을 지시하는 경우, 비디오 디코더는 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하지 않고 미리 정의된 값 또는 최악의 경우 값(worst-case value)을 사용하여 비트레이트를 추정한다.
일 실시예에서, 현재 코딩된 비디오 시퀀스 비트레이트 정보는,
참조 레벨에 대한 시그널링된 비트레이트이다. 비디오 데이터 스트림은 예를 들어, 참조 레벨에 대한 시그널링된 비트레이트를 포함할 수 있다. 현재 레벨이 참조 레벨과 동일한 경우, 비디오 디코더는 예를 들어,참조 레벨에 대한 시그널링된 비트레이트를 사용하여 서브픽처에 대한 비트레이트를 결정하도록 구성될 수 있다.
일 실시예에 따르면, 비디오 디코더는 예를 들어,비디오 데이터 스트림의 신택스 요소 bit_rate_value_minus1[i][j]에 의존하는 서브픽처에 대한 비트레이트를 추정하도록 구성될 수 있다.
일 실시예에서, 비디오 디코더는 예를 들어, 비디오 데이터 스트림의 신택스 요소 bit_rate_scale에 의존하는 서브픽처에 대한 비트레이트를 추정하도록 구성될 수 있다.
일 실시예에 따르면, 비디오 디코더는 예를 들어,서브픽처에 대한 비디오 코딩 레이어 비트레이트인, 서브픽처에 대한 비트레이트를 추정하도록 구성될 수 있고, 예를 들어, 서브픽처에 대한 네트워크 추상화 레이어 비트레이트인 서브픽처에 대한 추가 코딩된 픽처 버퍼 크기를 추정하도록 구성될 수 있다.
일 실시예에서, 비디오 디코더는 예를 들어, 참조 레벨 프랙션 값(reference level fraction value)에 의존하는 비디오 코딩 레이어 코딩된 픽처 버퍼 크기 및/또는 네트워크 추상화 레이어 코딩된 픽처 버퍼 크기를 추정하도록 구성될 수 있다.
일 실시예에 따르면, 비디오 디코더는 예를 들어, 다음에 따라 서브픽처에 대한 비디오 코딩 레이어 비트레이트를 추정하도록 구성될 수 있다:
SubPicBitRateVcl[s] =
= Floor(( bit_rate_value_minus1[i][j] + 1 ) * 2(6 + bit_rate_scale) * RefLevelFraction[i][j] / 256)
장치는 예를 들어, 다음에 따라 서브픽처에 대한 네트워크 추상화 레이어 비트레이트를 추정하도록 구성될 수 있다:
SubPicBitRateNal[s] =
= Floor(( bit_rate_value_minus1[i][j] + 1 ) * 2(6 + bit_rate_scale) * RefLevelFraction[i][j] / 256),
여기서 RefLevelFraction은 참조 레벨 프랙션 값이다.
일 실시예에서, 비디오 디코더는 예를 들어, 다음에 따라 서브픽처에 대한 비디오 코딩 레이어 비트레이트를 추정하도록 구성될 수 있다:
SubpicBitRateVcl[i][j][k] = Floor( CpbVclFactor * ValBR * OlsRefLevelFraction[0][j][k] / 256)
SubpicBitRateNal[i][j][k] = Floor( CpbNalFactor * ValBR * OlsRefLevelFraction[0][j][k] / 256)
여기서 i 및 j 및 k는 인덱스들이고, OlsRefLevelFraction[0][j][k]는 실수이다.
일 실시예에서, i는 예를 들어, 지시된 특정한 참조 레벨의 인덱스를 지시할 수 있고, j는 예를 들어, 비디오 데이터 스트림에서 액세스 유닛의 픽처들의 특정한 서브픽처의 인덱스를 지시할 수 있고, k는 예를 들어, 비디오 데이터 스트림이 포함하고, 및/또는 비디오 디코더가 동작(operate)하는 최대 시간적 서브레이어의 인덱스(maximum temporal sublayer)를 지시할 수 있다.
일 실시예에 따르면, OlsRefLevelFraction[i][j][k]는 예를 들어, 변수 sli_non_subpic_layers_fraction[i][k]에 의존할 수 있고, 변수 sli_non_subpic_layers_fraction[i][k]는 Htid가 k와 같을 경우, 0과 같은 sps_num_subpics_minus1을 포함하는 targetCvss의 레이어들과 연관된 비트스트림 레벨 제한(bitstream level limit)들의 i 번째 프랙션을 지시한다.
일 실시예에서,
vps_max_layers_minus1이 0과 같은 경우, 또는 비트스트림의 어떤 레이어도 0과 같은 sps_num_subpics_minus1을 포함하지 않는 경우,
예를 들어, sli_non_subpic_layers_fraction[i][k] = 0이고,
k가 sli_max_sublayers_minus1보다 작고 sli_non_subpic_layers_fraction[i][k]가 존재하지 않는 경우,
예를 들어, sli_non_subpic_layers_fraction[i][k] = sli_non_subpic_layers_fraction[i][k + 1]이다.
일 실시예에 따르면, 예를 들어
OlsRefLevelFraction[i][j][k] =
= sli_non_subpic_layers_fraction[i][k] + ( n - sli_non_subpic_layers_fraction[i][k] ) / n
* ( sli_ref_level_fraction_minus1[i][j][k] + 1 ).
여기서 n은 양의 정수를 지시한다.
일 실시예에 따르면, 예를 들어, n=256; 또는 n=128; 또는 n=512; 또는 n=1024; 또는 n=2048; 또는 n=4096이다.
일 실시예에 따르면, i, j 및 k는 sli_ref_level_fraction_minus1에 의존하여 정의되며, sli_ref_level_fraction_minus1[i][j][k]은 고려되는 서브레이어 인덱스인 Htid가 k와 같을 때 sps_num_subpics_minus1이 0보다 큰 targetCvss의 레이어에서 서브픽처 인덱스가 j와 동일한 서브픽처에 대해 sli_ref_level_idc[i][k]와 연관된 레벨 제한들의 i번째 프랙션을 명시한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더가 제공되고, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 비디오 디코더는 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩한다. 비디오를 디코딩하기 위해, 비디오 디코더는 비디오 데이터 스트림 내에서 인코딩되는 서브픽처에 대한 코딩된 픽처 버퍼 크기를 수신하고, 비디오를 디코딩하기 위해 서브픽처에 대한 코딩된 픽처 버퍼 크기를 사용하고/거나; 비디오를 디코딩하기 위해, 비디오 디코더는 비디오 데이터 스트림 내에서 인코딩되는 서브픽처에 대한 비트레이트를 수신하고, 비디오를 디코딩하기 위해 서브픽처에 대한 비트레이트를 사용한다.
일 실시예에 따르면, 비디오 데이터 스트림은 예를 들어, 서브픽처에 대한 코딩된 픽처 버퍼 크기가 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 포함할 수 있다. 비디오 데이터 스트림의 지시가, 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는 것을 지시하는 경우, 비디오 디코더는 서브픽처에 대한 코딩된 픽처 버퍼 크기를 추정한다. 비디오 데이터 스트림의 지시가, 서브픽처에 대한 코딩된 픽처 버퍼 크기가 비디오 데이터 스트림 내에서 인코딩된다는 것을 지시하는 경우, 비디오 디코더는 비디오 데이터 스트림 내에서 인코딩된 서브픽처에 대한 코딩된 픽처 버퍼 크기를 사용한다.
일 실시예에서, 비디오 데이터 스트림은, 예를 들어, 서브픽처에 대한 비트레이트가 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함할 수 있다. 비디오 데이터 스트림의 지시가, 서브픽처에 대한 비트레이트가 추정되어야 하는 것을 지시하는 경우, 비디오 디코더는 서브픽처에 대한 비트레이트를 추정한다. 비디오 데이터 스트림의 지시가, 서브픽처에 대한 비트레이트가 비디오 데이터 스트림 내에서 인코딩된다는 것을 지시하는 경우, 비디오 디코더는 비디오 데이터 스트림 내에서 인코딩된 서브픽처에 대한 코딩된 픽처 버퍼 크기를 사용한다.
일 실시예에 따르면, 복수의 추출가능한 서브-비트스트림(extractable sub-bitstream)들 각각은 출력 레이어 세트에 특정(specific)하고, 서브픽처는 복수의 추출가능한 서브-비트스트림들 중 적어도 하나의 추출가능한 서브-비트스트림에 할당된다. 비디오 데이터 스트림이 예를 들어, 공통 디코딩 유닛 제거 타이밍 정보(common decoding unit removal timing information) 및 복수의 추출가능한 서브-비트스트림들을 포함하는 경우, 비디오 파라미터 세트 또는 시퀀스 파라미터 세트 또는 비디오 데이터 스트림의 보충 강화 정보 메시지에서 각 출력 레이어 세트-특정 가상 참조 디코더 파라미터 신택스 구조는, 예를 들어, 공통 디코딩 유닛 제거 타이밍들을 스케일링하기 위한 확산 인자 또는 틱 제수의 절댓값을 포함할 수 있다. 비디오 디코더는 예를 들어, 비디오 디코더는, 확산 계수 또는 틱 제수의 절댓값을 처리하도록 구성될 수 있다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 예를 들어, 신택스 요소 cpb_size_value_minus1[i][j] 및 신택스 요소 cpb_size_scale을 포함할 수 있다. 또는, 비디오 데이터 스트림은 예를 들어, 신택스 요소 bit_rate_value_minus1[i][j] 및 신택스 요소 bit_rate_scale을 포함할 수 있다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 현재 코딩된 픽처 버퍼 크기 정보를 사용하여 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 포함하고/거나, 비디오 데이터 스트림은 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하여 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함한다.
일 실시예에 따르면, 현재 코딩된 픽처 버퍼 크기 정보는 참조 레벨에 대한 시그널링된 코딩된 픽처 버퍼 크기이고, 비디오 데이터 스트림은 예를 들어, 참조 레벨에 대한 시그널링된 코딩된 픽처 버퍼 크기를 포함할 수 있고/거나, 현재 코딩된 비디오 시퀀스 비트레이트 정보는 참조 레벨에 대한 시그널링된 비트레이트이고, 비디오 데이터 스트림은 예를 들어, 참조 레벨에 대한 시그널링된 비트레이트를 포함할 수 있다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 서브픽처에 대한 코딩된 픽처 버퍼 크기가 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 포함하고/거나, 비디오 데이터 스트림은 서브픽처에 대한 비트레이트가 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함한다.
일 실시예에 따르면, 복수의 추출가능한 서브-비트스트림(extractable sub-bitstream)들 각각은 출력 레이어 세트에 특정(specific)하고, 서브픽처는 복수의 추출가능한 서브-비트스트림들 중 적어도 하나의 추출가능한 서브-비트스트림에 할당된다. 비디오 데이터 스트림이 예를 들어, 공통 디코딩 유닛 제거 타이밍 정보(common decoding unit removal timing information) 및 복수의 추출가능한 서브-비트스트림들을 포함하는 경우, 비디오 파라미터 세트 또는 시퀀스 파라미터 세트 또는 비디오 데이터 스트림의 보충 강화 정보 메시지에서 각 출력 레이어 세트-특정 가상 참조 디코더 파라미터 신택스 구조는, 예를 들어, 공통 디코딩 유닛 제거 타이밍들을 스케일링하기 위한 확산 인자 또는 틱 제수의 절댓값을 포함할 수 있다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 예를 들어, 신택스 요소 cpb_size_value_minus1[i][j] 및 신택스 요소 cpb_size_scale을 포함할 수 있도록 비디오 데이터 스트림을 생성한다. 또는, 비디오 인코더는 비디오 데이터 스트림이 예를 들어, 신택스 요소 bit_rate_value_minus1[i][j] 및 신택스 요소 bit_rate_scale을 포함할 수 있도록 비디오 데이터 스트림을 생성한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 데이터 스트림이 현재 코딩된 픽처 버퍼 크기 정보를 사용하여 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 포함하도록 비디오 데이터 스트림을 생성하고/거나, 비디오 인코더는 비디오 데이터 스트림이 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하여 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함하도록 비디오 데이터 스트림을 생성한다.
일 실시예에 따르면, 비디오 인코더는 예를 들어, 현재 코딩된 픽처 버퍼 크기 정보가 참조 레벨에 대한 시그널링된 코딩된 픽처 버퍼 크기가 되도록 비디오 데이터 스트림을 생성하도록 구성될 수 있고, 비디오 데이터 스트림은 예를 들어, 참조 레벨에 대한 시그널링된 코딩된 픽처 버퍼 크기를 포함할 수 있고/거나 비디오 인코더는 예를 들어, 현재 코딩된 비디오 시퀀스 비트레이트 정보가 참조 레벨에 대한 시그널링된 비트레이트이도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있고, 비디오 데이터 스트림은 예를 들어, 참조 레벨에 대한 시그널링된 비트레이트를 포함할 수 있다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 서브픽처에 대한 코딩된 픽처 버퍼 크기가 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 포함하도록 비디오 데이터 스트림을 생성하고/거나, 비디오 인코더는 비디오 데이터 스트림이 서브픽처에 대한 비트레이트가 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함하도록 비디오 데이터 스트림을 생성한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는, 비디오 데이터 스트림이 공통 디코딩 유닛 제거 타이밍 정보 및 복수의 추출가능한 서브-비트스트림들을 포함하는 경우, 비디오 파라미터 세트 또는 시퀀스 파라미터 세트 또는 비디오 데이터 스트림의 보충 강화 정보 메시지에서 각 출력 레이어 세트-특정 가상 참조 디코더 파라미터 신택스 구조가, 공통 디코딩 유닛 제거 타이밍들을 스케일링하기 위한 확산 인자 또는 틱 제수의 절댓값을 포함하도록, 비디오 데이터 스트림을 생성한다.
더욱이, 일 실시예에 따르면, 비디오를 비디오 데이터 스트림으로 인코딩하고 비디오를 디코딩하는 시스템이 제공된다. 시스템은 상술한 바와 같은 비디오 인코더 및 상술한 바와 같은 비디오 디코더를 포함한다. 비디오 인코더는 예를 들어, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하도록 구성될 수 있다. 비디오 디코더는 예를 들어, 비디오 데이터 스트림을 수신하고, 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩하도록 구성될 수 있다.
현재 VVC 드래프트 사양에는 서브픽처들의 레벨 정보와 서브픽처 세트의 레벨을 추정하는 데 도움이 되는 추가 정보를 지시하는 SEI 메시지가 포함되어 있다. 이를 달성하는 방법은 주어진 신호 참조 레벨에 서브픽처가 기여하는 프랙션을 시그널링하는 것이다. 각 서브픽처의 레벨 프랙션에 기초하여, 변수 CpbSize 및 Bitrate 및 그 이후의 서브픽처 비트스트림의 레벨이 근사화된다. 또한 누적된 레벨 프랙션들은 서브픽처들의 세트로 구성된 비트스트림들의 CBP 크기 및 비트레이트를 도출하고 해당 레벨을 근사화하는 데 사용된다. 그러나 이러한 모든 도출에서 참조 레벨에 대한 MaxCpbSize 및/또는 MaxBitRate가 사용되고, 이는 대부분의 비트스트림이 주어진 레벨의 MaxCPBSize 및/또는 최대 비트레이트까지 CPB 및 비트레이트 예산(budget)을 완전히 차지하지 못할 수 있으므로 문제가 된다. 이러한 값들을 사용하여 서브픽처 비트스트림 또는 서브픽처 세트 비트스트림의 병합된 비트스트림의 레벨을 근사화하는 경우 (누적된) CPB 크기들 및 비트레이트들이 오버프로비저닝될(overprovisioned) 가능성이 높다.
VVC 드래프트 사양에는 다음과 같이 변수 SubPicCpbSizeVcl[i][j] 및 SubPicCpbSizeNal[i][j]의 도출이 포함되어 있다.
SubPicCpbSizeVcl[i][j] = Floor( CpbVclFactor * MaxCPB * RefLevelFraction[i][j] / 256)
SubPicCpbSizeNal[i][j] = Floor( CpbNalFactor * MaxCPB * RefLevelFraction[i][j] / 256)
모든 서브픽처들을 포함하는 원본 비트스트림은 비트스트림의 레벨로부터 참조에 의해 도출된 각각의 최댓값들의 정보만이 아니라 비트스트림의 정확한 CPB 크기 및 비트레이트 (cpb_size_value_minus1 및 cpb_size_scale) 에 대한 더 정확한 정보를 이미 전달할 수 있기 때문이다. 따라서, 본 발명의 목적은 CBP 크기 및 서브픽처당 비트레이트의 각각의 값들에 대한 훨씬 더 정확한 값이 서브픽처 세트 레벨에서의 근사화에서 도출되고 사용될 수 있다는 것이다. 추가의 실시예에서, 서브-픽처 CPB는 다음과 같이 도출된다:
SubPicCbpSizeVcl[s]=
Floor(( cpb_size_value_minus1[i][j] + 1 ) * 2( 4 + cpb_size_scale )* RefLevelFraction[i][j] / 256)
SubPicCbpSizeNal[s]
= Floor(( cpb_size_value_minus1[i][j] + 1 ) * 2( 4 + cpb_size_scale )* RefLevelFraction[i][j] / 256)
신택스 요소 cpb_size_value_minus1[i][j]는 Vcl 및 Nal HRD 파라미터들에 대해 별도로 제출되며 각각 위의 도출에 사용된다. 따라서 SubPicCbpSizeVcl[s] 및 SubPicCbpSizeVcl[s]의 값은 잠재적으로 다른 값들로 도출된다.
CPB 크기들은 주어진 레벨에 대해 시그널링되므로 해당 레벨이 참조 레벨로서 포함된 경우에만 위의 도출을 수행할 수 있다.
비트레이트들의 경우 각 도출은 아래와 같이 최대 비트레이트를 참조( Br[Vcl/Nal]Factor * MaxBR )로 사용하는 것으로부터 변경된다
SubPicBitRateVcl[s]= Floor( BrVclFactor * MaxBR * RefLevelFraction[i][j] / 256)
SubPicBitRateNal[s]= Floor( BrNalFactor * MaxBR * RefLevelFraction[i][j] / 256)
다음과 같이 시그널링된 ((bit_rate_value_minus1[i][j] + 1) * 2( 6 + bit_rate_scale)로 비트스트림의 실제 비트레이트를 사용한다.
SubPicBitRateVcl[s]
= Floor(( bit_rate_value_minus1[i][j] + 1 ) * 2(6 + bit_rate_scale) * RefLevelFraction[i][j] / 256)
SubPicBitRateNal[s]
= Floor(( bit_rate_value_minus1[i][j] + 1 ) * 2(6 + bit_rate_scale) * RefLevelFraction[i][j] / 256)
여기서 CPB 크기에 대해 위와 동일하게 적용되며 신택스 요소 bit_rate_value_minus1[i][j]의 값은 Nal 또는 Vcl HRD를 고려하는지 여부에 의존하므로 SubBitRateVcl[s] 및 SubPicBitrateVcl[s]의 값은 잠재적으로 다른 값들로 도출된다.
실시예들에서, 변수 SubpicCpbSizeVcl[i][j][k] and SubpicCpbSizeNal[i][j][k]는 다음과 같이 도출된다:
SubpicCpbSizeVcl[i][j][k] = Floor( CpbVclFactor * MaxCPB * OlsRefLevelFraction[i][j][k] / 256)
SubpicCpbSizeNal[i][j][k] = Floor( CpbNalFactor * MaxCPB * OlsRefLevelFraction[i][j][k] / 256)
MaxCPB를 사용하여 sli_ref_level_idc[i][k]로부터 도출됨
실시예들에서, 변수 SubpicBitRateVcl[i][j][k] 및 SubpicBitRateNal[i][j][k]는 다음과 같이 도출된다:
SubpicBitRateVcl[i][j][k] = Floor( CpbVclFactor * ValBR * OlsRefLevelFraction[0][j][k] / 256)
SubpicBitRateNal[i][j][k] = Floor( CpbNalFactor * ValBR * OlsRefLevelFraction[0][j][k] / 256)
예를 들어, 변수 OlsRefLevelFraction[i][j][k]는 숫자 (예: 실수) 이다.
예를 들어, 변수 OlsRefLevelFraction[i][j][k]는 예를 들어 다음에 의존하여 도출될 수 있다.
sli_non_subpic_layers_fraction[i][k] + ( n - sli_non_subpic_layers_fraction[i][k] ) / n
* ( sli_ref_level_fraction_minus1[i][j][k] + 1 ).
식에서 n은 양의 정수를 지시하며, 예를 들어 n = 256; 또는 예를 들어 n = 128; 또는 예를 들어 n = 1024; 또는 예를 들어 n = 2048; 또는 예를 들어 n = 4096이다.
따라서 예를 들면 다음과 같다.
OlsRefLevelFraction[i][j][k] =
= sli_non_subpic_layers_fraction[i][k] + ( 256 - sli_non_subpic_layers_fraction[i][k] )
/ 256 * ( sli_ref_level_fraction_minus1[i][j][k] + 1 ).
sli_non_subpic_layers_fraction [i] [k] 는 예를 들어 Htid가 k와 같을 때 sps_num_subpics_minus1이 0과 같은 targetCvss의 레이어들과 연관된 비트스트림 레벨 제한들의 i번째 v프랙션을 지시할 수 있다. vps_max_layers_minus1이 0과 같거나 비트스트림의 레이어에 sps_num_subpics_minus1이 0이 아닌 경우 sli_non_subpic_layers_fraction [i] [k] 는 0과 같아야 한다. k가 sli_max_sublayers_minus1보다 작고 sli_non_subpic_layers_fraction [i] [k] 가 존재하지 않는 경우, sli_non_subpic_layers_fraction[i][k + 1]과 동일한 것으로 추론되고 sli_ref_level_fraction_minus1[i][j][k] plus 1는 Htid가 k와 같을 때 sps_num_subpics_minus1이 0보다 큰 targetCvss의 레이어에서 j와 같은 서브픽처 인덱스를 가진 서브픽처에 대해 sli_ref_level_idc[i][k]과 연관된 레벨 제한들의 i번째 프랙션을 명시한다. k가 sli_max_sublayers_minus1보다 작고 sli_ref_level_fraction_minus1[i][j][k] 이 존재하지 않는 경우, sli_ref_level_fraction_minus1[i][j][k + 1]과 동일한 것으로 추론된다.
대안적으로, 다른 실시예에서, 각 서브-픽처의 CPB 크기 및/또는 비트레이트는 도출되는 대신 직접 시그널링될 수 있다. 또한 값이 도출될 수 있는지 또는 값에 명시적으로 시그널링될 수 있는지를 지시하는 게이팅 플래그가 있을 수 있다.
다음에서, 픽처 타이밍 SEI에서의 DU 타이밍 시그널링이 설명된다.
일 실시예에 따르면, 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 비디오 데이터 스트림이 제공된다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 또한, 비디오 데이터 스트림은 복수의 액세스 유닛들 중 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 포함하고, 액세스 유닛의 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛에 대한 디코딩 유닛 제거 시간은 액세스 유닛에 대한 액세스 유닛 제거 시간 및 디코딩 유닛에 대한 델타 시간 정보에 의존한다.
일 실시예에 따르면, 비디오 데이터 스트림은 예를 들어 픽처 타이밍 보충 강화 정보를 포함할 수 있다. 픽처 타이밍 보충 강화 정보 메시지는, 예를 들어, 액세스 유닛의 2개 이상의 디코딩 유닛들에 대한 델타 시간 정보를 포함할 수 있다.
일 실시예에서, 델타 시간 정보는 액세스 유닛의 2개 이상의 디코딩 유닛들 중 2개의 디코딩 유닛들 사이의 제거 시간 차(removal time difference)를 지시한다.
일 실시예에 따르면, 액세스 유닛의 2개 이상의 디코딩 유닛들 사이에서의 마지막 디코딩 유닛(last decoding unit)은, 액세스 유닛의 제거 시간과 동일한 제거 시간을 포함한다.
일 실시예에서, 액세스 유닛은 예를 들어 3개 이상의 디코딩 유닛들을 포함할 수 있다. 제거 시간 차는 액세스 유닛의 3개 이상의 디코딩 유닛들 중 2개의 연속적인(consecutive) 디코딩 유닛들의 각 쌍(pair)에 대해 동일하다.
일 실시예에 따르면, 픽처 타이밍 보충 강화 정보 메시지는 비디오 데이터 스트림으로부터 도출되는 서브-비트스트림에 적용되고, 디코딩 유닛들의 수는 일정(constant)하게 유지된다.
일 실시예에서, 프레임 시간 간격(frame time interval)은 비디오 데이터 스트림의 파라미터 세트에서, 시퀀스 파라미터 세트의 HRD 파라미터에서 시그널링된다.
일 실시예에 따르면, 프레임 시간 간격은 최상위 시간적 레벨(highest temporal level)에서 2개의 연속적인 액세스 유닛의 제거 시간의 차로서 도출가능(derivable)하다.
일 실시예에서, 액세스 유닛의 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛은 하나의 비디오 코딩 레이어 네트워크 추상화 레이어 유닛을 포함할 수 있다.
일 실시예에 따르면, 픽처 타이밍 보충 강화 정보 메시지는 비디오 데이터 스트림으로부터 도출된 서브-비트스트림에 적용되고, 다른 수의 디코딩 유닛들이 존재한다.
일 실시예에서, 프레임 시간 간격은 다음과 같이 도출가능하다
(elemental_duration_in_tc_minus1[maxTiD] +1 )에 ClockTicks를 곱하는 것.
일 실시예에 따르면, 비디오 데이터 스트림은, 예를 들어, 디코딩 유닛들의 수가 비디오 데이터 스트림에 대해 가변적(variable)인지 여부를 지시하는 지시를 포함할 수 있다.
일 실시예에서, 비디오 데이터 스트림은 디코딩 유닛들의 수가 비디오 데이터 스트림에 대해 가변적인지 여부를 지시하는 지시를 포함하지 않는다.
일 실시예에 따르면, 액세스 유닛 내의 디코딩 유닛들의 수는 프레임 시간 간격(frame time interval) 및 공통 지연 증분(common delay increment)에 의존한다.
일 실시예에서, 비디오 데이터 스트림은 예를 들어, 액세스 유닛의 2개 이상의 디코딩 유닛들 중 디코딩 유닛에 대한 디코딩 유닛 정보 보충 강화 정보 메시지를 포함할 수 있다. 디코딩 유닛에 대한 디코딩 유닛 정보 보충 강화 정보 메시지는 예를 들어, 디코딩 유닛에 대한 델타 시간 정보를 포함할 수 있다.
일 실시예에 따르면, 비디오 데이터 스트림은 예를 들어, 비디오 데이터 스트림의 시퀀스 파라미터 세트 또는 비디오 파라미터 세트의 최소 픽처 지속기간 플래그를 포함할 수 있고, 최소 픽처 지속기간 플래그는 일정한 프레임레이트(framerate)가 없는 경우, 프레임 시간 간격 정보가 존재하는지 여부를 지시한다.
더욱이, 일 실시예에 따르면, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하는 비디오 인코더가 제공된다. 비디오 인코더는 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록 비디오 데이터 스트림을 생성한다. 또한, 비디오 인코더는 비디오 데이터 스트림이, 복수의 액세스 유닛들 중 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 포함하도록 비디오 데이터 스트림을 생성하고, 액세스 유닛의 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛에 대한 디코딩 유닛 제거 시간은 액세스 유닛에 대한 액세스 유닛 제거 시간 및 디코딩 유닛에 대한 델타 시간 정보에 의존한다.
일 실시예에 따르면, 비디오 인코더는 예를 들어, 비디오 데이터 스트림이 예를 들어, 픽처 타이밍 보충 강화 정보를 포함할 수 있도록 비디오 데이터 스트림을 생성하도록 구성될 수 있다. 비디오 인코더는 예를 들어, 픽처 타이밍 보충 강화 정보가 예를 들어, 액세스 유닛의 2개 이상의 디코딩 유닛들에 대한 델타 시간 정보를 포함할 수 있도록 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에서, 비디오 인코더는 예를 들어, 델타 시간 정보가, 액세스 유닛의 2개 이상의 디코딩 유닛들 중 2개의 디코딩 유닛들 사이의 제거 시간 차를 지시하도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에 따르면, 액세스 유닛의 2개 이상의 디코딩 유닛들 사이에서의 마지막 디코딩 유닛(last decoding unit)은, 액세스 유닛의 제거 시간과 동일한 제거 시간을 포함한다.
일 실시예에서, 비디오 인코더는 예를 들어, 액세스 유닛이, 예를 들어 3개 이상의 디코딩 유닛들을 포함할 수 있도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다. 제거 시간 차는 액세스 유닛의 3개 이상의 디코딩 유닛들 중 2개의 연속적인(consecutive) 디코딩 유닛들의 각 쌍(pair)에 대해 동일하다.
일 실시예에 따르면, 픽처 타이밍 보충 강화 정보 메시지는 비디오 데이터 스트림으로부터 도출되는 서브-비트스트림에 적용되고, 디코딩 유닛들의 수는 일정(constant)하게 유지된다.
일 실시예에서, 비디오 인코더는 예를 들어, 프레임 시간 간격이, 비디오 데이터 스트림의 파라미터 세트에서, 시퀀스 파라미터 세트의 HRD 파라미터에서 시그널링되도록 비디오 인코더를 생성하도록 구성될 수 있다.
일 실시예에 따르면, 비디오 인코더는 예를 들어, 프레임 시간 간격이, 최상위 시간적 레벨(highest temporal level)에서 2개의 연속적인 액세스 유닛의 제거 시간의 차로서 도출가능하도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에서, 비디오 인코더는 예를 들어, 액세스 유닛의 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛이 예를 들어 하나의 비디오 코딩 레이어 네트워크 추상화 레이어 유닛을 포함할 수 있도록 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에 따르면, 비디오 인코더는 예를 들어, 픽처 타이밍 보충 강화 정보 메시지가 비디오 데이터 스트림으로부터 도출된 서브-비트스트림에 적용되도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있고, 다른 수의 디코딩 유닛들이 존재한다.
일 실시예에서, 프레임 시간 간격은 다음과 같이 도출가능하다
(elemental_duration_in_tc_minus1[maxTiD] +1 )에 ClockTicks를 곱하는 것.
일 실시예에 따르면, 비디오 인코더는 예를 들어, 디코딩 유닛들의 수가 비디오 데이터 스트림에 대해 가변적인지 여부를 지시하는 지시를 비디오 데이터 스트림이 포함할 수 있도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에서, 비디오 인코더는 예를 들어, 디코딩 유닛들의 수가 비디오 데이터 스트림에 대해 가변적인지 여부를 지시하는 지시를 비디오 데이터 스트림이 포함하지 않도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에 따르면, 비디오 인코더는 예를 들어, 액세스 유닛 내의 디코딩 유닛들의 수가, 프레임 시간 간격 및 공통 지연 증분에 의존하도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에서, 비디오 인코더는 예를 들어, 비디오 데이터 스트림이 예를 들어, 액세스 유닛의 2개 이상의 디코딩 유닛들 중 디코딩 유닛에 대한 디코딩 유닛 정보 보충 강화 정보 메시지를 포함할 수 있도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다. 비디오 인코더는 예를 들어, 디코딩 유닛에 대한 디코딩 유닛 정보 보충 강화 정보 메시지가, 예를 들어 디코딩 유닛에 대한 델타 시간 정보를 포함할 수 있도록, 비디오 데이터 스트림을 생성하도록 구성될 수 있다.
일 실시예에 따르면, 비디오 데이터 스트림은 예를 들어, 비디오 데이터 스트림의 시퀀스 파라미터 세트 또는 비디오 파라미터 세트의 최소 픽처 지속기간 플래그를 포함할 수 있고, 최소 픽처 지속기간 플래그는 일정한 프레임레이트(framerate)가 없는 경우, 프레임 시간 간격 정보가 존재하는지 여부를 지시한다.
또한, 일 실시예에 따르면, 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더가 제공되고, 비디오 데이터 스트림은 비디오 데이터 스트림에 인코딩된 비디오를 포함한다. 비디오 데이터 스트림은 복수의 액세스 유닛들을 포함한다. 비디오 디코더는 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩한다. 더욱이, 비디오 데이터 스트림은 복수의 액세스 유닛들 중 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 포함하고, 액세스 유닛의 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛에 대한 디코딩 유닛 제거 시간은 액세스 유닛에 대한 액세스 유닛 제거 시간 및 디코딩 유닛에 대한 델타 시간 정보에 의존하고, 비디오 디코더는 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 사용하여 비디오 데이터 스트림을 디코딩한다.
일 실시예에 따르면, 비디오 데이터 스트림은 예를 들어 픽처 타이밍 보충 강화 정보를 포함할 수 있다. 픽처 타이밍 보충 강화 정보 메시지는, 예를 들어 , 액세스 유닛의 2개 이상의 디코딩 유닛들에 대한 델타 시간 정보를 포함할 수 있다.
일 실시예에서, 델타 시간 정보는 액세스 유닛의 2개 이상의 디코딩 유닛들 중 2개의 디코딩 유닛들 사이의 제거 시간 차를 지시하고, 비디오 디코더는 예를 들어, 2개의 디코딩 유닛들 사이의 제거 시간 차를 사용하여 비디오 데이터 스트림을 디코딩하도록 구성될 수 있다.
일 실시예에 따르면, 액세스 유닛의 2개 이상의 디코딩 유닛들 사이에서의 마지막 디코딩 유닛은 액세스 유닛의 제거 시간과 동일한 제거 시간을 포함하고, 비디오 디코더는 예를 들어, 액세스 유닛의 제거 시간을 사용하여 비디오 데이터 스트림을 디코딩하도록 구성될 수 있다.
일 실시예에서, 액세스 유닛은 예를 들어 3개 이상의 디코딩 유닛들을 포함할 수 있다. 제거 시간 차는 액세스 유닛의 3개 이상의 디코딩 유닛들 중 2개의 연속적인(consecutive) 디코딩 유닛들의 각 쌍(pair)에 대해 동일하다.
일 실시예에 따르면, 픽처 타이밍 보충 강화 정보 메시지는 비디오 데이터 스트림으로부터 도출되는 서브-비트스트림에 적용되고, 디코딩 유닛들의 수는 일정(constant)하게 유지된다.
일 실시예에서, 프레임 시간 간격은 비디오 데이터 스트림의 파라미터 세트에서, 시퀀스 파라미터 세트의 HRD 파라미터에서 시그널링되고, 비디오 디코더는 예를 들어, 프레임 시간 간격을 사용하여 비디오 데이터 스트림을 디코딩하도록 구성될 수 있다.
일 실시예에 따르면, 프레임 시간 간격은 최상위 시간적 레벨에서 2개의 연속적인 액세스 유닛의 제거 시간의 차로서 도출가능하고, 비디오 디코더는 예를 들어, 프레임 시간 간격을 사용하여 비디오 데이터 스트림을 디코딩하도록 구성될 수 있다.
일 실시예에서, 액세스 유닛의 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛은 하나의 비디오 코딩 레이어 네트워크 추상화 레이어 유닛을 포함할 수 있다.
일 실시예에 따르면, 픽처 타이밍 보충 강화 정보 메시지는 비디오 데이터 스트림으로부터 도출된 서브-비트스트림에 적용되고, 다른 수의 디코딩 유닛들이 존재한다.
일 실시예에서, 비디오 디코더는 예를 들어, 다음에 따라 프레임 시간 간격을 도출하도록 구성될 수 있다:
(elemental_duration_in_tc_minus1[maxTiD] +1 )에 ClockTicks를 곱하는 것.
일 실시예에 따르면, 비디오 데이터 스트림은 예를 들어, 디코딩 유닛들의 수가 비디오 데이터 스트림에 대해 가변적인지 여부를 지시하는 지시를 포함할 수 있고, 비디오 디코더는 예를 들어, 지시를 처리하는 것에 의해 비디오 데이터 스트림을 디코딩하도록 구성될 수 있다.
일 실시예에서, 비디오 데이터 스트림은 디코딩 유닛들의 수가 비디오 데이터 스트림에 대해 가변적인지 여부를 지시하는 지시를 포함하지 않는다.
일 실시예에 따르면, 액세스 유닛 내의 디코딩 유닛들의 수는 프레임 시간 간격(frame time interval) 및 공통 지연 증분(common delay increment)에 의존한다.
일 실시예에서, 비디오 데이터 스트림은 예를 들어, 액세스 유닛의 2개 이상의 디코딩 유닛들 중 디코딩 유닛에 대한 디코딩 유닛 정보 보충 강화 정보 메시지를 포함할 수 있다. 디코딩 유닛에 대한 디코딩 유닛 정보 보충 강화 정보 메시지는 예를 들어, 디코딩 유닛에 대한 델타 시간 정보를 포함할 수 있고, 비디오 디코더는 예를 들어, 디코딩 유닛에 대한 델타 시간 정보를 사용하여 비디오 데이터 스트림을 디코딩하도록 구성될 수 있다.
일 실시예에 따르면, 비디오 데이터 스트림은 예를 들어, 비디오 데이터 스트림의 시퀀스 파라미터 세트 또는 비디오 파라미터 세트의 최소 픽처 지속기간 플래그를 포함할 수 있고, 최소 픽처 지속기간 플래그는 일정한 프레임레이트(framerate)가 없는 경우, 프레임 시간 간격 정보가 존재하는지 여부를 지시한다.
더욱이, 일 실시예에 따르면, 비디오를 비디오 데이터 스트림으로 인코딩하고 비디오를 디코딩하는 시스템이 제공된다. 시스템은 상술한 바와 같은 비디오 인코더 및 상술한 바와 같은 비디오 디코더를 포함한다. 비디오 인코더는 예를 들어, 비디오 데이터 스트림이 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 비디오를 비디오 데이터 스트림으로 인코딩하도록 구성될 수 있다. 비디오 디코더는 예를 들어, 비디오 데이터 스트림을 수신하고, 비디오를 디코딩하기 위해 비디오 데이터 스트림을 디코딩하도록 구성될 수 있다.
앞서 언급한 것처럼 DU 타이밍은 AU 타이밍에 델타로서 주어진다. 보다 구체적으로, DU의 제거 시간은 픽처 타이밍 SEI 메시지 또는 특정한 DU를 포함하는 AU의 제거 시간에 상대적인 디코딩 유닛 정보 SEI 메시지에서 델타 시간을 제공함으로써 지시된다.
정보가 픽처 타이밍 SEI 메시지에 포함되는 경우 시그널링되는 정보는 2개의 DU들 사이의 제거 시간 차이다. AU의 마지막 DU는 AU 제거 시간과 동일한 제거 시간을 가지며 다른 DU는 다음 DU에 대한 제거 시간의 차로서 시그널링된다. 시그널링하는 2개의 옵션들이 있다 (다른 색상들로 강조됨).
pic_timing( payloadSize ) { Descriptor
...
dpb_output_delay u(v)
if( bp_decoding_unit_hrd_params_present_flag )
pic_dpb_output_du_delay u(v)
if( bp_decoding_unit_hrd_params_present_flag &&
decoding_unit_cpb_params_in_pic_timing_supplemental enhancement information_flag ) {
num_decoding_units_minus1 ue(v)
du_common_cpb_removal_delay_flag u(1)
if( du_common_cpb_removal_delay_flag )
for( i = TemporalId; i <= bp_max_sublayers_minus1; i++ )
if( pt_sublayer_delays_present_flag[i] )
du_common_cpb_removal_delay_increment_minus1[i] u(v)
for( i = 0; i <= num_decoding_units_minus1; i++ ) {
num_nalus_in_du_minus1[i] ue(v)
if( !du_common_cpb_removal_delay_flag && i < num_decoding_units_minus1 )
for( j = TemporalId; j <= bp_max_sublayers_minus1; j++ )
if( pt_sublayer_delays_present_flag[j] )
du_cpb_removal_delay_increment_minus1[i][j] u(v)
}
}
if( additional_concatenation_info_present_flag )
delay_for_concatenation_ensured_flag u(1)
}
시그널링하는 제1 방법은 DU들이 모두에게 공통적인 동일한 제거 시간 차를 가지는 경우이다. 제2 경우는 AU 내 DU들 사이의 제거 시간 차가 동일하지 않은 경우이다.
DU 타이밍이 존재할 때 픽처 타이밍 SEI 메시지의 현재 신택스는 본 발명 내에서 논의되는 양태 2의 적용 가능성을 방지하는데, 그 이유는 서브-비트스트림이 비트스트림으로부터 추출되는 경우에 DU들의 수가 변경될 수 있기 때문이다.
원칙적으로 CU들 사이의 공통 제거 시간 차가 동일한 경우 DU들의 수가 변경되더라도 픽처 타이밍 SEI 메시지가 계속 적용되도록 할 수 있다. 일 실시예에서 PT SEI 메시지에는 모드가 존재하는데, PT SEI 메시지는 상이한 수의 DU들이 존재하는 서브-비트스트림에 적용된다. DU들의 수는 다른 신택스 요소들로부터 도출된다. PT SEI 메시지가 다음과 같이 변경된다:
pic_timing( payloadSize ) { Descriptor
...
dpb_output_delay u(v)
if( bp_decoding_unit_hrd_params_present_flag )
pic_dpb_output_du_delay u(v)
if( bp_decoding_unit_hrd_params_present_flag &&
decoding_unit_cpb_params_in_pic_timing_supplemental enhancement information_flag ) {
du_not_constraint_flag u(1)
if( du_not_constraint_flag ) {
num_decoding_units_minus1 ue(v)
du_common_cpb_removal_delay_flag u(1)
}
if( du_common_cpb_removal_delay_flag )
for( i = TemporalId; i <= bp_max_sublayers_minus1; i++ )
if( pt_sublayer_delays_present_flag[i] )
du_common_cpb_removal_delay_increment_minus1[i] u(v)
if( du_not_constraint_flag ) {
for( i = 0; i <= num_decoding_units_minus1; i++ ) {
num_nalus_in_du_minus1[i] ue(v)
if( !du_common_cpb_removal_delay_flag && i < num_decoding_units_minus1 )
for( j = TemporalId; j <= bp_max_sublayers_minus1; j++ )
if( pt_sublayer_delays_present_flag[j] )
du_cpb_removal_delay_increment_minus1[i][j] u(v)
}
}
}
if( additional_concatenation_info_present_flag )
delay_for_concatenation_ensured_flag u(1)
}
du_not_constraint_flag가 0과 같으면 du_common_cpb_removal_delay_flag의 값은 1로 추론된다. num_decoding_units_minus1의 값은 FrameTimeInterval을 (du_common_cpb_removal_delay_increment_minus1 + 1 )*ClockSubTicks minus 1로 나눈 값과 같도록 추론된다.
FrameTimeInterval은 파라미터 세트, SPS의 HRD 파라미터에서 시그널링되거나 최고 시간적 레벨에서 연속적인 2개의 액세스 유닛들의 제거 시간 차로 도출될 수 있다.
이 경우 각 DU에 하나의 VCL NAL 유닛이 포함되어야 한다는 추가 제약 조건이 있다.
다음과 같이 FrameTimeInterval을 명시적으로 시그널링할 수 있다:
ols_hrd_parameters( firstSubLayer, maxSubLayers ) { Descriptor
for( i = firstSubLayer; i <= maxSubLayers; i++ ) {
fixed_pic_rate_general_flag[i] u(1)
if( !fixed_pic_rate_general_flag[i] )
fixed_pic_rate_within_cvs_flag[i] u(1)
if( fixed_pic_rate_within_cvs_flag[i] || (( i == maxSubLayers)
&& min_pic_duration_within_cvs_present_flag ) )
elemental_duration_in_tc_minus1[i] ue(v)
else if( hrd_cpb_cnt_minus1 = = 0 )
low_delay_hrd_flag[i] u(1)
if( general_nal_hrd_params_present_flag )
sublayer_hrd_parameters( i )
if( general_vcl_hrd_params_present_flag )
sublayer_hrd_parameters( i )
}
}
여기서 min_pic_duration_within_cvs_present_flag는 일정한 프레임레이트가 없을 때 FrameTimeInterval이 존재함을 지시하는 SPS 또는 VPS의 플래그이다. 이를 통해 프레임레이트가 일정한 경우 및 프레임 레이트가 일정하지 않은 경우 두 경우 모두 FrameTimeInterval을 지시할 수 있다.
제2 경우에는 일정한 프레임레이트가 있는 경우에만 du_not_constraint_flag를 1로 설정할 수 있다. 이 경우 FrameTimeInterval의 값은 (elemental_duration_in_tc_minus1[maxTiD] +1) 에 ClockTicks을 곱한 값으로 도출된다.
대안적으로, 추가 시그널링 플래그는 각각의 지시를 다음과 같이 공통 DU 타이밍 모드 시그널링과 병합하는 것에 의해 생략될 수 있다:
Figure pct00001
위에서 설명한 AU 내의 DU들의 수의 도출은 FrameTimeInterval 및 공통 지연 증분에 기초하고, 두 번째는 클럭 서브-틱의 수로 제공된다. 또한 양태 4에서 클록-서브-틱은 비트스트림에 있는 시간적 서브-레이어에 따라 변경된다. DU들의 수는 최고 시간적 레이어에 대한 클록-서브-틱들로 도출되거나 양태 4에서 논의된 확산 계수도 FrameTimeInterval에 대해서도 고려되어 동일한 결과가 달성될 수 있다.
일부 양태들이 장치의 맥락에서 설명되었지만, 이들 양태들은 또한 대응하는 방법의 설명을 나타내는 것이 분명하며, 여기서 블록 또는 장치는 방법 단계 또는 방법 단계의 특징에 대응한다. 유사하게, 방법 단계의 컨텍스트에서 설명되는 양태들은 또한 대응하는 장치의 대응하는 블록 또는 아이템 또는 특징의 설명을 나타낸다. 방법 단계들 중 일부 또는 전부는 예를 들어 마이크로프로세서, 프로그래밍가능한 컴퓨터 또는 전자 회로와 같은 하드웨어 장치에 의해 (또는 이를 이용하여) 실행될 수 있다. 일부 실시예들에서, 가장 중요한 방법 단계들 중 하나 이상이 이러한 장치에 의해 실행될 수 있다.
특정 구현 요건들에 의존하여, 본 발명의 실시예들은 하드웨어 또는 소프트웨어에서 또는 적어도 부분적으로 하드웨어에서 또는 적어도 부분적으로 소프트웨어에서 구현될 수 있다. 구현은 프로그래밍가능한 컴퓨터와 협력 (또는 협력할 수 있는) 전자적으로 판독가능한 제어 신호를 갖는 디지털 저장 매체, 예를 들어 플로피 디스크, DVD, 블루레이, CD, ROM, PROM, EPROM, EEPROM 또는 플래시 메모리를 사용하여 수행될 수 있다.각각의 방법이 수행되도록 시스템을 구성한다. 따라서, 디지털 저장 매체는 컴퓨터로 판독 가능할 수 있다.
본 발명에 따른 일부 실시예들은 전자적으로 판독가능한 제어 신호를 갖는 데이터 캐리어를 포함하며, 데이터 캐리어는 프로그램 가능한 컴퓨터 시스템과 협력할 수 있어서, 본 명세서에 기술된 방법들 중 하나가 수행된다.
일반적으로, 본 발명의 실시예들은 프로그램 코드를 갖는 컴퓨터 프로그램 제품으로서 구현될 수 있으며, 프로그램 코드는 컴퓨터 프로그램 제품이 컴퓨터 상에서 실행될 때 방법들 중 하나를 수행하기 위해 동작한다. 프로그램 코드는 예를 들어 기계 판독가능 캐리어에 저장될 수 있다.
다른 실시예들은 기계 판독가능 캐리어 상에 저장된, 본 명세서에 기술된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 포함한다.
즉, 본 발명의 방법의 실시예는 컴퓨터 프로그램이 컴퓨터 상에서 실행될 때, 본 명세서에 기술된 방법들 중 하나를 수행하기 위한 프로그램 코드를 갖는 컴퓨터 프로그램이다.
따라서, 본 발명의 방법들의 추가 실시예는 여기에 기술된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 기록한 데이터 캐리어 (또는 디지털 저장 매체, 또는 컴퓨터 판독가능 매체) 이다. 데이터 캐리어, 디지털 저장 매체 또는 기록 매체는 일반적으로 유형 및/또는 비일시적이다.
따라서, 본 발명의 방법의 또 다른 실시예는 본 명세서에 기술된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 나타내는 데이터 스트림 또는 신호들의 시퀀스이다. 데이터 스트림 또는 신호들의 시퀀스는 예를 들어 데이터 통신 접속을 통해, 예를 들어 인터넷을 통해 전송되도록 구성될 수 있다.
추가의 실시예는 본 명세서에 기술된 방법들 중 하나를 수행하도록 구성되거나 적응되는 처리 수단, 예를 들어 컴퓨터, 또는 프로그래밍가능한 논리 장치를 포함한다.
추가의 실시예는 본 명세서에 기술된 방법들 중 하나를 수행하기 위해 컴퓨터 프로그램을 설치한 컴퓨터를 포함한다.
본 발명에 따른 추가 실시예는 본 명세서에 기술된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 (예를 들어, 전자적으로 또는 광학적으로) 수신기로 전송하도록 구성된 장치 또는 시스템을 포함한다. 수신기는 예를 들어 컴퓨터, 모바일 장치, 메모리 장치 등일 수 있다. 장치 또는 시스템은 예를 들어 컴퓨터 프로그램을 수신기로 전송하기 위한 파일 서버를 포함할 수 있다.
일부 실시예들에서, 프로그래밍가능한 논리 장치(예를 들어, 필드 프로그래밍가능한 게이트 어레이)는 본 명세서에 기술된 방법들의 기능들 중 일부 또는 전부를 수행하기 위해 사용될 수 있다. 일부 실시예들에서, 필드 프로그래밍가능한 게이트 어레이는 본 명세서에 기술된 방법들 중 하나를 수행하기 위해 마이크로프로세서와 협력할 수 있다. 일반적으로, 방법은 임의의 하드웨어 장치에 의해 수행되는 것이 바람직하다.
본 명세서에 설명된 장치는 하드웨어 장치를 사용하거나, 컴퓨터를 사용하거나, 하드웨어 장치와 컴퓨터의 결합을 사용하여 구현될 수 있다.
본 명세서에 설명된 방법들은 하드웨어 장치를 사용하여, 또는 컴퓨터를 사용하거나, 하드웨어 장치와 컴퓨터의 결합을 사용하여 수행될 수 있다.
상술된 실시예들은 본 발명의 원리에 대해 단지 예시적인 것일 뿐이다. 여기에 설명된 배열 및 세부 사항의 수정 및 변형은 당업자에게 분명하다는 것을 이해한다. 따라서 임박한 특허 청구의 범위에 의해서만 제한되고 본 발명의 실시 예에 대한 설명 및 설명을 통해 제시된 구체적인 세부 사항에 의해서만 제한되는 것이 아니다.
· 참고 자료
[1] ISO/IEC, ITU-T. 고효율 비디오 코딩(High efficiency video coding). ITU-T 권장 사항(ITU-T Recommendation) H.265 | ISO/IEC 23008 10 (HEVC), 에디션 1, 2013; 에디션 2, 2014년.

Claims (251)

  1. 비디오 데이터 스트림(video data stream)에 있어서,
    상기 비디오 데이터 스트림에 인코딩된(encoded) 비디오
    를 포함하고,
    상기 비디오 데이터 스트림은,
    하나 이상의 출력 레이어 세트(output layer set) 각각에 대한 타이밍 정보(timing information)를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지(scalable nesting supplemental enhancement information message)가 상기 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 지시(indication)를 포함하는,
    비디오 데이터 스트림.
  2. 제1항에 있어서,
    상기 지시는,
    파라미터 세트 플래그(parameter set flag)이고,
    상기 비디오 데이터 스트림은,
    상기 하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 상기 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 상기 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 상기 파라미터 세트 플래그를 포함하는,
    비디오 데이터 스트림.
  3. 제2항에 있어서,
    상기 비디오 데이터 스트림의 시퀀스 파라미터 세트(sequence parameter set)는,
    상기 파라미터 세트 플래그를 포함하는,
    비디오 데이터 스트림.
  4. 제3항에 있어서,
    상기 파라미터 세트 플래그는,
    sps_ols_nest_timing_present_flag인,
    비디오 데이터 스트림.
  5. 제1항에 있어서,
    상기 비디오 데이터 스트림은,
    파라미터 세트 플래그를 포함하는 추가적인 보충 강화 정보 메시지(further supplemental enhancement information message)를 포함하고,
    상기 파라미터 세트 플래그는,
    상기 하나 이상의 출력 레이어 세트 각각에 대한 상기 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 상기 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는,
    비디오 데이터 스트림.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 타이밍 정보는,
    픽처 타이밍 정보(picture timing information),
    버퍼링 주기 정보(buffering period information), 및
    디코딩 유닛 정보(decoding unit information)
    중 적어도 하나를 포함하는,
    비디오 데이터 스트림.
  7. 제1항 내지 지6항 중 어느 한 항에 있어서,
    상기 타이밍 정보는,
    가상 참조 디코더(Hypothetical Reference Decoder)(HRD)에 대한 타이밍 정보인,
    비디오 데이터 스트림.
  8. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 비디오 인코더에 있어서,
    상기 비디오 인코더는,
    하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 상기 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 지시를 상기 비디오 데이터 스트림이 포함하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  9. 제8항에 있어서,
    상기 지시는,
    파라미터 세트 플래그이고,
    상기 비디오 인코더는,
    상기 하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 상기 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 상기 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 상기 파라미터 세트 플래그를 상기 비디오 데이터 스트림이 포함하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  10. 제9항에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림의 시퀀스 파라미터 세트가 상기 파라미터 세트 플래그를 포함하도록 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  11. 제10항에 있어서,
    상기 비디오 인코더는,
    상기 파라미터 세트 플래그가, sps_ols_nest_timing_present_flag이 되도록 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  12. 제8항에 있어서,
    상기 비디오 인코더는,
    파라미터 세트 플래그를 포함하는 추가적인 보충 강화 정보 메시지를 상기 비디오 데이터 스트림이 포함하도록 상기 비디오 데이터 스트림을 생성하고,
    상기 비디오 인코더는,
    상기 하나 이상의 출력 레이어 세트 각각에 대한 상기 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 상기 비디오 데이터 스트림 내에 존재하는지 여부를 상기 파라미터 세트 플래그가 지시하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  13. 제8항 내지 제12항 중 어느 한 항에 있어서,
    상기 타이밍 정보는,
    픽처 타이밍 정보,
    버퍼링 주기 정보, 및
    디코딩 유닛 정보
    중 적어도 하나를 포함하는,
    비디오 인코더.
  14. 제8항 내지 제13항 중 어느 한 항에 있어서,
    상기 타이밍 정보는,
    가상 참조 디코더에 대한 타이밍 정보인,
    비디오 인코더.
  15. 비디오 데이터 스트림을 입력 비트스트림(input bitstream)으로서 수신하는 장치에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 장치는,
    서브-비트스트림(sub-bitstream)을 획득하기 위해 상기 입력 비트스트림을 처리하고,
    지시는,
    하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 상기 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는,
    장치.
  16. 제15항에 있어서,
    상기 지시는,
    파라미터 세트 플래그이고,
    상기 장치는,
    상기 하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 상기 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 상기 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 상기 파라미터 세트 플래그를 포함하는 상기 비디오 데이터 스트림을 처리하는,
    장치.
  17. 제16항에 있어서,
    상기 비디오 데이터 스트림의 시퀀스 파라미터 세트는,
    상기 파라미터 세트 플래그를 포함하는,
    장치.
  18. 제17항에 있어서,
    상기 파라미터 세트 플래그는,
    sps_ols_nest_timing_present_flag인,
    장치.
  19. 제15항에 있어서,
    상기 비디오 데이터 스트림은,
    파라미터 세트 플래그를 포함하는 추가적인 보충 강화 정보 메시지를 포함하고,
    상기 파라미터 세트 플래그는,
    상기 하나 이상의 출력 레이어 세트 각각에 대한 상기 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 상기 비디오 데이터 스트림 내에 존재하는지 여부를 지시하고,
    상기 장치는,
    상기 추가적인 보충 강화 정보 메시지를 처리하는,
    장치.
  20. 제15항 내지 제19항 중 어느 한 항에 있어서,
    상기 타이밍 정보는,
    픽처 타이밍 정보,
    버퍼링 주기 정보, 및
    디코딩 유닛 정보
    중 적어도 하나를 포함하는,
    장치.
  21. 제15항 내지 제20항 중 어느 한 항에 있어서,
    상기 하나 이상의 출력 레이어 세트 각각에 대한 픽처 타이밍 정보(picture timing information)를 포함하는 타이밍 정보를 포함하는 상기 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 상기 비디오 데이터 스트림 내에 존재하는 경우, 상기 장치는 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지(non-scalable-nested picture timing supplemental enhancement information message)의 픽처 타이밍 정보를 대체(substitute)하고,
    상기 하나 이상의 출력 레이어 세트 각각에 대한 버퍼링 주기 정보(buffering period information)를 포함하는 타이밍 정보를 포함하는 상기 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 상기 비디오 데이터 스트림 내에 존재하는 경우, 상기 장치는 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지(non-scalable-nested buffering period supplemental enhancement information message)의 버퍼링 주기 정보를 대체하고,
    상기 하나 이상의 출력 레이어 세트 각각에 대한 디코딩 유닛 정보(decoding unit information)를 포함하는 타이밍 정보를 포함하는 상기 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 상기 비디오 데이터 스트림 내에 존재하는 경우, 상기 장치는 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지(non-scalable-nested decoding unit supplemental enhancement information message)의 디코딩 유닛 정보를 대체하는,
    장치.
  22. 제15항 내지 제21항 중 어느 한 항에 있어서,
    상기 타이밍 정보는,
    가상 참조 디코더(Hypothetical Reference Decoder)에 대한 타이밍 정보인,
    장치.
  23. 제15항 내지 제22항 중 어느 한 항에 있어서,
    상기 장치는,
    상기 비디오를 디코딩하기 위해 상기 서브-비트스트림을 디코딩하는,
    장치.
  24. 비디오를 비디오 데이터 스트림으로 인코딩하고, 상기 비디오를 디코딩하는 시스템에 있어서,
    상기 시스템은,
    제8항 내지 제14항 중 어느 한 항에 따른 비디오 인코더; 및
    제23항에 따른 장치
    를 포함하고,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 상기 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하고,
    상기 장치는,
    상기 비디오 데이터 스트림을 입력 비트스트림으로서 수신하고,
    상기 장치는,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림을 처리하고,
    상기 장치는,
    상기 비디오를 디코딩하기 위해 상기 서브-비트스트림을 디코딩하는,
    시스템.
  25. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 방법에 있어서,
    상기 방법은,
    하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 상기 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는 지시를 상기 비디오 데이터 스트림이 포함하도록, 상기 비디오 데이터 스트림을 생성하는 단계
    를 포함하는,
    방법.
  26. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 방법은,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림을 처리하는 단계를 포함하고,
    상기 지시는,
    하나 이상의 출력 레이어 세트 각각에 대한 타이밍 정보를 포함하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지가 상기 비디오 데이터 스트림 내에 존재하는지 여부를 지시하는,
    방법.
  27. 컴퓨터 또는 신호 프로세서에서 실행되는 경우 제25항 또는 제26항의 방법을 구현하기 위한 컴퓨터 프로그램.
  28. 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 상기 비디오 데이터 스트림에 있어서,
    상기 비디오 데이터 스트림 내의 지시는,
    서브-비트스트림에 대한 타이밍 정보가, 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는,
    비디오 데이터 스트림.
  29. 제28항에 있어서,
    상기 지시가, 상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되지 않는다는 것을 지시하는 경우,
    상기 지시는,
    상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지로 대체된다는 것을 지시하는,
    비디오 데이터 스트림.
  30. 제28항 또는 제29항에 있어서,
    상기 지시는,
    플래그(flag)이고,
    상기 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지 중 하나는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는 상기 플래그를 포함하는,
    비디오 데이터 스트림.
  31. 제30항에 있어서,
    상기 플래그는,
    use_orig_pic_timing_flag인,
    비디오 데이터 스트림.
  32. 제28항 또는 제29항에 있어서,
    상기 비디오 데이터 스트림은
    비디오 파라미터 세트를 포함하고,
    상기 지시는,
    플래그이고,
    상기 비디오 파라미터 세트는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는 상기 플래그를 포함하는,
    비디오 데이터 스트림.
  33. 제32항에 있어서,
    상기 플래그는,
    same_pic_timing_within_ols_flag인,
    비디오 데이터 스트림.
  34. 제32항에 있어서,
    상기 플래그는,
    general_same_pic_timing_in_all_ols_flag인,
    비디오 데이터 스트림.
  35. 제28항 내지 제34항 중 어느 한 항에 있어서,
    상기 지시가, 상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득된다는 것을 지시하는 경우,
    하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지 중 적어도 하나는,
    상기 비트스트림의 액세스 유닛(access unit) 내에서, 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 이전에 발생하는,
    비디오 데이터 스트림.
  36. 제28항 또는 제29항에 있어서,
    상기 지시는
    제약 플래그(constraint flag)이고,
    상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지는,
    상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 상기 하나 이상의 서브-비트스트림 중 적어도 하나에 적용(apply)되는지 여부를 지시하는 상기 제약 플래그를 포함하는,
    비디오 데이터 스트림.
  37. 제28항 내지 제36항 중 어느 한 항에 있어서,
    상기 지시는,
    제1 지시이고,
    상기 비디오 데이터 스트림 내의 제2 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 더 획득되는지 여부를 지시하고/거나,
    상기 비디오 데이터 스트림 내의 제3 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 더 획득되는지 여부를 지시하는,
    비디오 데이터 스트림.
  38. 제28항 내지 제37항 중 어느 한 항에 있어서,
    상기 비디오 데이터 스트림 내의 상기 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 더 획득되는지 여부를 더 지시하고/거나,
    상기 비디오 데이터 스트림 내의 상기 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 더 획득되는지 여부를 더 지시하는,
    비디오 데이터 스트림.
  39. 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 상기 비디오 데이터 스트림에 있어서,
    상기 비디오 데이터 스트림 내의 제1 지시는,
    서브-비트스트림에 대한 타이밍 정보가 상기 비디오 데이터 스트림의 상기 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하고/거나,
    상기 비디오 데이터 스트림 내의 제2 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 상기 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는,
    비디오 데이터 스트림.
  40. 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 상기 비디오 데이터 스트림에 있어서,
    상기 비디오 데이터 스트림은,
    타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지를 포함하고,
    상기 비디오 데이터 스트림이 상기 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함하는 경우는,
    상기 확장가능한 네스팅 보충 강화 정보 메시지에 따라서,
    상기 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 강화 정보 메시지 모두가 상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지에 의해 대체된다는 것; 또는
    상기 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지 중 적어도 하나를 포함하는 서브세트(subset)가 상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지에 의해 대체된다는 것
    을 지시하는,
    비디오 데이터 스트림.
  41. 제40항에 있어서,
    상기 타이밍 정보는,
    상기 픽처 타이밍 정보 또는 상기 버퍼링 주기 정보 또는 상기 디코딩 유닛 정보인,
    비디오 데이터 스트림.
  42. 제40항 또는 제41항에 있어서,
    상기 타이밍 정보를 포함하는 상기 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지는, 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지이고, 상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지는, 확장가능한 네스팅 픽처 타이밍 보충 강화 정보 메시지(scalable nesting picture timing supplemental enhancement information message)이거나, 또는
    상기 타이밍 정보를 포함하는 상기 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지는, 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지이고, 상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지는, 확장가능한 네스팅 버퍼링 주기 보충 강화 정보 메시지(scalable nesting buffering period supplemental enhancement information message)이거나, 또는
    상기 타이밍 정보를 포함하는 상기 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지는, 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지이고, 상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지는, 확장가능한 네스팅 디코딩 유닛 보충 강화 정보 메시지(scalable nesting decoding unit supplemental enhancement information message)인,
    비디오 데이터 스트림.
  43. 제40항 내지 제42항 중 어느 한 항에 있어서,
    상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지를 상기 비디오 데이터 스트림이 포함하는 경우,
    상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지는,
    상기 비트스트림의 액세스 유닛 내에서, 상기 타이밍 정보를 포함하는 상기 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지 이전에 발생하는,
    비디오 데이터 스트림.
  44. 제28항 내지 제43항 중 어느 한 항에 있어서,
    상기 타이밍 정보는,
    가상 참조 디코더에 대한 타이밍 정보인,
    비디오 데이터 스트림.
  45. 제28항 내지 제44항 중 어느 한 항에 있어서,
    상기 서브-비트스트림은,
    출력 레이어 세트에 의존(depend)하고/거나,
    서브-레이어(sub-layer)에 의존하고/하거나,
    서브픽처에 의존하고/하거나,
    디코딩 유닛의 서브세트에 의존하는,
    비디오 데이터 스트림.
  46. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 비디오 인코더에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림 내의 지시가, 서브-비트스트림에 대한 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하도록,
    상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  47. 제46항에 있어서,
    상기 지시가, 상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되지 않는다는 것을 지시하는 경우,
    상기 지시는,
    상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지로 대체된다는 것을 지시하는,
    비디오 인코더.
  48. 제46항 또는 제47항에 있어서,
    상기 지시는,
    플래그이고,
    상기 비디오 인코더는,
    상기 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지 중 하나가, 상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는 상기 플래그를 포함하도록,
    상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  49. 제48항에 있어서,
    상기 플래그는,
    use_orig_pic_timing_flag인,
    비디오 인코더.
  50. 제46항 또는 제47항에 있어서,
    상기 비디오 데이터 스트림은,
    비디오 파라미터 세트를 포함하고,
    상기 지시는,
    플래그이고,
    상기 비디오 인코더는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는 상기 플래그를 포함하도록,
    상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  51. 제50항에 있어서,
    상기 플래그는,
    same_pic_timing_within_ols_flag인,
    비디오 인코더.
  52. 제50항에 있어서,
    상기 플래그는,
    general_same_pic_timing_in_all_ols_flag인,
    비디오 인코더.
  53. 제46항 내지 제52항에 있어서,
    상기 지시는,
    하나 이상의 액세스 유닛의 각각의 액세스 유닛에서 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 각각이 상기 비디오 데이터 스트림에서 설정(set)된 임의의 출력 레이어에 대한 액세스 유닛에 적용되고, 확장가능한 네스팅 픽처 타이밍 보충 강화 정보 메시지들이 존재하지 않는다는 것을 지시하거나, 또는
    상기 하나 이상의 액세스 유닛의 각각의 액세스 유닛에서 상기 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 상기 비디오 데이터 스트림에서 설정된 임의의 출력 레이어에 대한 상기 액세스 유닛에 적용되거나 적용되지 않고, 확장가능한 네스팅된 픽처 타이밍 보충 강화 정보 메시지들이 존재할 수 있다는 것을 지시하는,
    비디오 인코더.
  54. 제46항 내지 제53항 중 어느 한 항에 있어서,
    상기 지시가, 상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는 것을 지시하는 경우,
    하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지 중 적어도 하나는,
    상기 비트스트림의 액세스 유닛 내에서, 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 이전에 발생하는,
    비디오 인코더.
  55. 제46항 또는 제47항에 있어서,
    상기 지시는
    제약 플래그이고,
    상기 비디오 인코더는,
    상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 상기 하나 이상의 서브-비트스트림 중 적어도 하나에 적용되는지 여부를 지시하는 상기 제약 플래그를 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 포함하도록,
    상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  56. 제46항 내지 제55항 중 어느 한 항에 있어서,
    상기 지시는,
    제1 지시이고,
    상기 비디오 데이터 스트림 내의 제2 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 더 획득되는지 여부를 지시하고/거나,
    상기 비디오 데이터 스트림 내의 제3 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 더 획득되는지 여부를 지시하는,
    비디오 인코더.
  57. 제46항 내지 제55항 중 어느 한 항에 있어서,
    상기 비디오 데이터 스트림 내의 상기 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 더 획득되는지 여부를 더 지시하고/거나,
    상기 비디오 데이터 스트림 내의 상기 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 더 획득되는지 여부를 더 지시하는,
    비디오 인코더.
  58. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 비디오 인코더에 있어서,
    상기 비디오 데이터 스트림 내의 제1 지시는,
    서브-비트스트림에 대한 타이밍 정보가 상기 비디오 데이터 스트림의 상기 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하고/거나,
    상기 비디오 데이터 스트림 내의 제2 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 상기 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는,
    비디오 인코더.
  59. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 비디오 인코더에 있어서,
    상기 비디오 인코더는,
    타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지를 상기 비디오 데이터 스트림이 포함하도록 상기 비디오 데이터 스트림을 생성하고,
    상기 비디오 데이터 스트림이 상기 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함하는 경우는,
    상기 확장가능한 네스팅 보충 강화 정보 메시지에 따라서,
    상기 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지 모두가 상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지에 의해 대체된다는 것; 또는
    상기 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지 중 적어도 하나를 포함하는 서브세트가 상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지에 의해 대체된다는 것
    을 지시하는,
    비디오 인코더.
  60. 제59항에 있어서,
    상기 타이밍 정보는,
    상기 픽처 타이밍 정보 또는 상기 버퍼링 주기 정보 또는 상기 디코딩 유닛 정보인,
    비디오 인코더.
  61. 제59항 또는 제60항에 있어서,
    상기 비디오 인코더는,
    상기 타이밍 정보를 포함하는 상기 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지가 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지이고, 상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지가 확장가능한 네스팅 픽처 타이밍 보충 강화 정보 메시지이도록, 상기 비디오 데이터 스트림을 생성하거나, 또는
    상기 비디오 인코더는,
    상기 타이밍 정보를 포함하는 상기 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지가 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지이고, 상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지가 확장가능한 네스팅 버퍼링 주기 보충 강화 정보 메시지이도록, 상기 비디오 데이터 스트림을 생성하거나, 또는
    상기 비디오 인코더는,
    상기 타이밍 정보를 포함하는 상기 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지가 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지이고, 상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지가 확장가능한 네스팅 디코딩 유닛 보충 강화 정보 메시지이도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  62. 제59항 내지 제61항 중 어느 한 항에 있어서,
    상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지를 상기 비디오 데이터 스트림이 포함하는 경우,
    상기 비디오 인코더는,
    상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지가, 상기 비트스트림의 액세스 유닛 내에서, 상기 타이밍 정보를 포함하는 상기 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지 이전에 발생하도록,
    상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  63. 제46항 내지 제62항 중 어느 한 항에 있어서,
    상기 타이밍 정보는,
    가상 참조 디코더에 대한 타이밍 정보인,
    비디오 인코더.
  64. 제46항 내지 제63항 중 어느 한 항에 있어서,
    상기 서브-비트스트림은,
    출력 레이어 세트에 의존(depend)하고/거나,
    서브-레이어(sub-layer)에 의존하고/하거나,
    서브픽처에 의존하고/하거나,
    디코딩 유닛의 서브세트에 의존하는,
    비디오 인코더.
  65. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 장치는,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림을 처리하고,
    상기 비디오 데이터 스트림 내의 지시는,
    서브-비트스트림에 대한 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는,
    장치.
  66. 제65항에 있어서,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되지 않는다는 것을 지시하는 경우,
    상기 장치는,
    상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지로 대체된다는 것을 지시하는,
    장치.
  67. 제65항 또는 제66항에 있어서,
    상기 지시는,
    플래그이고,
    상기 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지 중 하나는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는 상기 플래그를 포함하는,
    장치.
  68. 제67항에 있어서,
    상기 플래그는,
    use_orig_pic_timing_flag인,
    장치.
  69. 제65항 또는 제66항에 있어서,
    상기 비디오 데이터 스트림은
    비디오 파라미터 세트를 포함하고,
    상기 지시는,
    플래그이고,
    상기 비디오 파라미터 세트는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는 상기 플래그를 포함하는,
    장치.
  70. 제69항에 있어서,
    상기 플래그는,
    same_pic_timing_within_ols_flag인,
    장치.
  71. 제69항에 있어서,
    상기 플래그는,
    general_same_pic_timing_in_all_ols_flag인,
    장치.
  72. 제65항 내지 제71항 중 어느 한 항에 있어서,
    상기 지시는,
    하나 이상의 액세스 유닛의 각각의 액세스 유닛에서 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 각각이 상기 비디오 데이터 스트림에서 설정된 임의의 출력 레이어에 대한 액세스 유닛에 적용되고, 확장가능한 네스팅 픽처 타이밍 보충 강화 정보 메시지들이 존재하지 않는다는 것을 지시하거나, 또는
    상기 하나 이상의 액세스 유닛의 각각의 액세스 유닛에서 상기 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 상기 비디오 데이터 스트림에서 설정된 임의의 출력 레이어에 대한 상기 액세스 유닛에 적용되거나 적용되지 않고, 확장가능한 네스팅된 픽처 타이밍 보충 강화 정보 메시지들이 존재할 수 있다는 것을 지시하는,
    장치.
  73. 제72항에 있어서,
    상기 하나 이상의 액세스 유닛의 각각의 액세스 유닛에서 상기 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 상기 비디오 데이터 스트림에서 설정된 임의의 출력 레이어에 대한 상기 액세스 유닛에 적용되거나 적용되지 않고, 확장가능한 네스팅된 픽처 타이밍 보충 강화 정보 메시지들이 존재할 수 있다는 것을 지시하는 경우,
    상기 장치는,
    상기 입력 비트스트림 또는 상기 서브-비트스트림으로부터, 픽처 타이밍 콘텐트(picture timing content)를 가지는 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지들을 포함하는 모든 보충 강화 정보 네트워크 추상화 레이어 유닛(supplemental enhancement information network abstraction layer unit)들을 제거하도록 구성되는,
    장치.
  74. 제65항 내지 제73항 중 어느 한 항에 있어서,
    상기 지시가, 상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 획득되는 것을 지시하는 경우,
    상기 장치는,
    상기 장치가, 상기 비트스트림의 액세스 유닛 내에서 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지를 처리하기 이전에,
    상기 비트스트림의 상기 액세스 유닛 내에서의 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 전에 발생하는 하나 이상의 확장가능한 네스팅 보충 강화 정보 메시지 중 적어도 하나를 처리하는,
    장치.
  75. 제65항 또는 제66항에 있어서,
    상기 지시는,
    제약 플래그이고,
    상기 장치는,
    상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지가 상기 하나 이상의 서브-비트스트림 중 적어도 하나에 적용되는지 여부를 지시하는 상기 제약 플래그를 포함하는 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지를 처리하는,
    장치.
  76. 제65항 내지 제75항 중 어느 한 항에 있어서,
    상기 지시는,
    제1 지시이고,
    상기 비디오 데이터 스트림 내의 제2 지시는,
    상기 비디오 데이터 스트림 내의 제2 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 더 획득되는지 여부를 지시하고/거나,
    상기 비디오 데이터 스트림 내의 제3 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 더 획득되는지 여부를 지시하는,
    장치.
  77. 제65항 내지 제75항 중 어느 한 항에 있어서,
    상기 비디오 데이터 스트림 내의 상기 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 더 획득되는지 여부를 더 지시하고/거나,
    상기 비디오 데이터 스트림 내의 상기 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 더 획득되는지 여부를 더 지시하는,
    장치.
  78. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 장치는,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림을 처리하고,
    상기 비디오 데이터 스트림 내의 제1 지시는,
    서브-비트스트림에 대한 타이밍 정보가 상기 비디오 데이터 스트림의 상기 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하고/거나,
    상기 비디오 데이터 스트림 내의 제2 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 상기 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는,
    장치.
  79. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 장치는,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림을 처리하고,
    상기 비디오 데이터 스트림은,
    타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지를 포함하고,
    상기 비디오 데이터 스트림이 상기 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함하는 경우,
    상기 장치는,
    상기 확장가능한 네스팅 보충 강화 정보 메시지에 따라서,
    상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지에 의한 상기 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지의 모두; 또는
    상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지에 의한 상기 하나 이상의 확장 불가능한-네스팅된 타이밍 정보 보충 강화 정보 메시지 중 적어도 하나를 포함하는 서브세트
    를 대체하는,
    장치.
  80. 제79항에 있어서,
    상기 타이밍 정보는,
    상기 픽처 타이밍 정보 또는 상기 버퍼링 주기 정보 또는 상기 디코딩 유닛 정보인,
    장치.
  81. 제79항 또는 제80항에 있어서,
    상기 타이밍 정보를 포함하는 상기 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지는, 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지이고, 상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지는, 확장가능한 네스팅 픽처 타이밍 보충 강화 정보 메시지이거나, 또는
    상기 타이밍 정보를 포함하는 상기 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지는, 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지이고, 상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지는, 확장가능한 네스팅 버퍼링 주기 보충 강화 정보 메시지이거나, 또는
    상기 타이밍 정보를 포함하는 상기 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지는, 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지이고, 상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지는, 확장가능한 네스팅 디코딩 유닛 보충 강화 정보 메시지인,
    장치.
  82. 제79항 내지 제81항 중 어느 한 항에 있어서,
    상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지를 상기 비디오 데이터 스트림이 포함하는 경우,
    상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지는,
    상기 비트스트림의 액세스 유닛 내에서 상기 타이밍 정보를 포함하는 상기 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지 이전에 발생하고,
    상기 장치는,
    상기 타이밍 정보를 포함하는 상기 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지 이전에, 상기 타이밍 정보를 포함하는 상기 확장가능한 네스팅 보충 강화 정보 메시지를 처리하는,
    장치.
  83. 제65항 내지 제82항 중 어느 한 항에 있어서,
    상기 타이밍 정보는,
    가상 참조 디코더에 대한 타이밍 정보인,
    장치.
  84. 제65항 내지 제83항 중 어느 한 항에 있어서,
    상기 서브-비트스트림은,
    출력 레이어 세트에 의존(depend)하고/거나,
    서브-레이어(sub-layer)에 의존하고/하거나,
    서브픽처에 의존하고/하거나,
    디코딩 유닛의 서브세트에 의존하는,
    장치.
  85. 제65항 내지 제84항 중 어느 한 항에 있어서,
    상기 장치는,
    상기 비디오를 디코딩하기 위해 상기 서브-비트스트림을 디코딩하는,
    장치.
  86. 비디오를 비디오 데이터 스트림으로 인코딩하고, 상기 비디오를 디코딩하는 시스템에 있어서,
    상기 시스템은:
    제46항 내지 제64항 중 어느 한 항에 따른 비디오 인코더; 및
    제85항에 따른 장치,
    를 포함하고,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 상기 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하고,
    상기 장치는,
    상기 비디오 데이터 스트림을 입력 비트스트림으로서 수신하고,
    상기 장치는,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림을 처리하고,
    상기 장치는,
    상기 비디오를 디코딩하기 위해 상기 서브-비트스트림을 디코딩하는,
    시스템.
  87. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 방법에 있어서,
    상기 방법은,
    상기 비디오 데이터 스트림 내의 지시가, 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 서브-비트스트림에 대한 타이밍 정보가 획득되는지 여부를 지시하도록, 상기 비디오 데이터 스트림을 생성하는 단계
    를 포함하는,
    방법.
  88. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 방법은,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림을 처리하는 단계
    를 포함하고,
    상기 비디오 데이터 스트림 내의 지시는,
    상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지로부터 서브-비트스트림에 대한 타이밍 정보가 획득되는지 여부를 지시하는,
    방법.
  89. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 방법에 있어서,
    상기 비디오 데이터 스트림 내의 제1 지시는,
    서브-비트스트림에 대한 타이밍 정보가 상기 비디오 데이터 스트림의 상기 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하고/거나,
    상기 비디오 데이터 스트림 내의 제2 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는,
    방법.
  90. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 방법은,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림을 처리하는 단계를 포함하고,
    상기 비디오 데이터 스트림 내의 제1 지시는,
    서브-비트스트림에 대한 타이밍 정보가 상기 비디오 데이터 스트림의 하나 이상의 확장 불가능한-네스팅된 버퍼링 주기 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하고/거나,
    상기 비디오 데이터 스트림 내의 제2 지시는,
    상기 서브-비트스트림에 대한 상기 타이밍 정보가 상기 비디오 데이터 스트림의 상기 하나 이상의 확장 불가능한-네스팅된 디코딩 유닛 보충 강화 정보 메시지로부터 획득되는지 여부를 지시하는,
    방법.
  91. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 방법에 있어서,
    상기 방법은,
    상기 비디오 데이터 스트림이 타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지를 포함하도록, 상기 비디오 데이터 스트림을 생성하는 단계
    를 포함하고,
    상기 비디오 데이터 스트림이 상기 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함하는 경우는,
    상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 중 적어도 하나가 상기 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의해 대체된다는 것을 지시하는,
    방법.
  92. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 방법은,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림을 처리하는 단계를 포함하고,
    상기 비디오 데이터 스트림은,
    타이밍 정보를 포함하는 하나 이상의 확장 불가능한-네스팅된 보충 강화 정보 메시지를 포함하고,
    상기 비디오 데이터 스트림이 상기 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지를 포함하는 경우,
    상기 방법은,
    상기 타이밍 정보를 포함하는 확장가능한 네스팅 보충 강화 정보 메시지에 의해 상기 하나 이상의 확장 불가능한-네스팅된 픽처 타이밍 보충 강화 정보 메시지 중 적어도 하나를 대체하는 단계
    를 포함하는,
    방법.
  93. 컴퓨터 또는 신호 프로세서에서 실행되는 경우 제87항 내지 제92항 중 어느 한 항의 방법을 구현하기 위한 컴퓨터 프로그램.
  94. 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 상기 비디오 데이터 스트림에 있어서,
    상기 비디오 데이터 스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해,
    출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보(buffer period information)를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지(scalable nested supplemental enhancement information message)들을 상기 액세스 유닛이 포함하는 경우,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보는,
    상기 액세스 유닛의 상기 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한,
    비디오 데이터 스트림.
  95. 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 상기 비디오 데이터 스트림에 있어서,
    상기 비디오 데이터 스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해,
    출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 상기 액세스 유닛이 포함하는 경우,
    상기 비디오 데이터 스트림은,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보가, 상기 액세스 유닛의 상기 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한지 여부를 지시하는 지시를 포함하는,
    비디오 데이터 스트림.
  96. 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 상기 비디오 데이터 스트림에 있어서,
    상기 비디오 데이터 스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보는,
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 상기 하나를 바로 뒤따르는(immediately succeed) 상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는,
    비디오 데이터 스트림.
  97. 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 상기 비디오 데이터 스트림에 있어서,
    상기 비디오 데이터 스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 비디오 데이터 스트림은,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보가,
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 상기 하나를 바로 뒤따르는 상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는지 여부를 지시하는 지시를 포함하는,
    비디오 데이터 스트림.
  98. 제94항 내지 제97항 중 어느 한 항에 있어서,
    동일한 값의 식별자를 가지는 액세스 유닛의 모든 확장가능한 네스팅된 보충 강화 정보 메시지들은,
    동일한 버퍼 주기 정보 및/또는 동일한 픽처 타이밍 정보를 전달(carry)하고,
    상기 식별자는,
    출력 레이어 세트를 식별하는,
    비디오 데이터 스트림.
  99. 제98항에 있어서,
    상기 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 상기 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 픽처 타이밍 보충 강화 정보 메시지는,
    상기 동일한 픽처 타이밍 정보를 전달하고/거나,
    상기 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 상기 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 버퍼 주기 보충 강화 정보 메시지는,
    상기 동일한 버퍼 주기 정보를 전달하고/거나,
    상기 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 상기 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 디코딩 유닛 보충 강화 정보 메시지는,
    동일한 디코딩 유닛 정보를 전달하는,
    비디오 데이터 스트림.
  100. 제98항 또는 제99항에 있어서,
    상기 동일한 값의 식별자를 가지는 액세스 유닛에서 특정한 페이로드 유형(payload type)의 2개의 확장가능한 네스팅된 보충 강화 정보 메시지들은,
    동일한 콘텐트를 전달하고,
    상기 식별자는,
    출력 레이어 세트를 식별하는,
    비디오 데이터 스트림.
  101. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 비디오 인코더에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 상기 비디오 데이터 스트림을 생성하고,
    상기 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 비디오 인코더는,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보가, 상기 액세스 유닛의 상기 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  102. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 비디오 인코더에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 상기 비디오 데이터 스트림을 생성하고,
    상기 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 비디오 인코더는,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보가, 상기 액세스 유닛의 상기 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한지 여부를 지시하는 지시를 상기 비디오 데이터 스트림이 포함하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  103. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 비디오 인코더에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 상기 비디오 데이터 스트림을 생성하고,
    상기 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 비디오 인코더는,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보가,
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 상기 하나를 바로 뒤따르는 상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나도록,
    상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  104. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 비디오 인코더에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 상기 비디오 데이터 스트림을 생성하고,
    상기 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 비디오 인코더는,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보가,
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 상기 하나를 바로 뒤따르는 상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는지 여부를 지시하는 지시를 포함하도록,
    상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  105. 제101항 내지 제104항 중 어느 한 항에 있어서,
    동일한 값의 식별자를 가지는 액세스 유닛의 모든 확장가능한 네스팅된 보충 강화 정보 메시지들은,
    상기 동일한 버퍼 주기 정보 및/또는 상기 동일한 픽처 타이밍 정보를 전달하고,
    상기 식별자는,
    출력 레이어 세트를 식별하는,
    비디오 인코더.
  106. 제105항에 있어서,
    상기 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 상기 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 픽처 타이밍 보충 강화 정보 메시지는,
    상기 동일한 픽처 타이밍 정보를 전달하고/거나,
    상기 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 상기 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 버퍼 주기 보충 강화 정보 메시지는,
    상기 동일한 버퍼 주기 정보를 전달하고/거나,
    상기 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 상기 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 디코딩 유닛 보충 강화 정보 메시지는,
    동일한 디코딩 유닛 정보를 전달하는,
    비디오 인코더.
  107. 제105항 또는 제106항에 있어서,
    상기 동일한 값의 식별자를 가지는 액세스 유닛에서 특정한 페이로드 유형의 2개의 확장가능한 네스팅된 보충 강화 정보 메시지들은,
    동일한 콘텐트를 전달하고,
    상기 식별자는,
    출력 레이어 세트를 식별하는,
    비디오 인코더.
  108. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 입력 비트스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 장치는,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림의 상기 액세스 유닛들을 처리하고,
    상기 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보는,
    상기 액세스 유닛의 상기 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한,
    장치.
  109. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 입력 비트스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 장치는,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림의 상기 액세스 유닛들을 처리하고,
    상기 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 비디오 데이터 스트림은,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보가, 상기 액세스 유닛의 상기 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한지 여부를 지시하는 지시를 포함하는,
    장치.
  110. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 입력 비트스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 장치는,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림의 상기 액세스 유닛들을 처리하고,
    상기 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보는,
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 상기 하나를 바로 뒤따르는 상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는,
    장치.
  111. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 장치에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 입력 비트스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 장치는,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림의 상기 액세스 유닛들을 처리하고,
    상기 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 비디오 데이터 스트림은,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보가,
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 상기 하나를 바로 뒤따르는 상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는지 여부를 지시하는 지시를 포함하는,
    장치.
  112. 제108항 내지 제111항 중 어느 한 항에 있어서,
    동일한 값의 식별자를 가지는 액세스 유닛의 모든 확장가능한 네스팅된 보충 강화 정보 메시지들은,
    상기 동일한 버퍼 주기 정보 및/또는 상기 동일한 픽처 타이밍 정보를 전달하고,
    상기 식별자는,
    출력 레이어 세트를 식별하는,
    장치.
  113. 제112항에 있어서,
    상기 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 상기 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 픽처 타이밍 보충 강화 정보 메시지는,
    상기 동일한 픽처 타이밍 정보를 전달하고/거나,
    상기 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 상기 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 버퍼 주기 보충 강화 정보 메시지는,
    상기 동일한 버퍼 주기 정보를 전달하고/거나,
    상기 복수의 액세스 유닛들 중 특정한 액세스 유닛에 대해, 상기 출력 레이어 세트에 대한 서브-레이어들 및 레이어들의 세트에 적용되는 임의의 디코딩 유닛 보충 강화 정보 메시지는,
    동일한 디코딩 유닛 정보를 전달하는,
    장치.
  114. 제112항 또는 제113항에 있어서,
    상기 동일한 값의 식별자를 가지는 액세스 유닛에서 특정한 페이로드 유형의 2개의 확장가능한 네스팅된 보충 강화 정보 메시지들은,
    동일한 콘텐트를 전달하고,
    상기 식별자는,
    출력 레이어 세트를 식별하는,
    장치.
  115. 제112항 내지 제114항 중 어느 한 항에 있어서,
    상기 장치가 출력 레이어 세트에 대한 버퍼 주기 확장가능한 네스팅 보충 강화 정보 메시지를 발견했을 경우,
    상기 장치는,
    상기 출력 레이어 세트에 대한 추가적인 버퍼 주기 확장가능한 네스팅 보충 강화 정보 메시지들을 검색하지 않고, 상기 출력 레이어 세트에 대한 상기 버퍼 주기 확장가능한 네스팅 보충 강화 정보의 콘텐트를 사용하고/거나,
    상기 장치가 출력 레이어 세트에 대한 픽처 타이밍 확장가능한 네스팅 보충 강화 정보 메시지를 발견했을 경우,
    상기 장치는,
    상기 출력 레이어 세트에 대한 추가적인 픽처 타이밍 확장가능한 네스팅 보충 강화 정보 메시지들을 검색하지 않고, 상기 출력 레이어 세트에 대한 상기 픽처 타이밍 확장가능한 네스팅 보충 강화 정보의 콘텐트를 사용하는,
    장치.
  116. 제108항 내지 제115항 중 어느 한 항에 있어서,
    상기 장치는,
    상기 비디오를 디코딩하기 위해 상기 서브-비트스트림을 디코딩하는,
    장치.
  117. 비디오를 비디오 데이터 스트림으로 인코딩하고, 상기 비디오를 디코딩하는 시스템에 있어서,
    상기 시스템은:
    제101항 내지 제107항 중 어느 한 항에 따른 비디오 인코더; 및
    제116항에 따른 장치
    를 포함하고,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 상기 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하고,
    상기 장치는,
    상기 비디오 데이터 스트림을 입력 비트스트림으로서 수신하고,
    상기 장치는,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림을 처리하고,
    상기 장치는,
    상기 비디오를 디코딩하기 위해 상기 서브-비트스트림을 디코딩하는,
    시스템.
  118. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 방법에 있어서,
    상기 방법은,
    상기 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 상기 비디오 데이터 스트림을 생성하는 단계
    를 포함하고,
    상기 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 방법은,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보가, 상기 액세스 유닛의 상기 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일하도록, 상기 비디오 데이터 스트림을 생성하는 단계
    를 포함하는,
    방법.
  119. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 방법에 있어서,
    상기 방법은,
    상기 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 상기 비디오 데이터 스트림을 생성하는 단계
    를 포함하고,
    상기 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 방법은,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보가, 상기 액세스 유닛의 상기 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한지 여부를 지시하는 지시를 상기 비디오 데이터 스트림이 포함하도록 상기 비디오 데이터 스트림을 생성하는 단계
    를 포함하는,
    방법.
  120. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 방법에 있어서,
    상기 방법은,
    상기 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 상기 비디오 데이터 스트림을 생성하는 단계
    를 포함하고,
    상기 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 방법은,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보가,
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 상기 하나를 바로 뒤따르는 상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나도록,
    상기 비디오 데이터 스트림을 생성하는 단계를 포함하는,
    방법.
  121. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 방법에 있어서,
    상기 방법은,
    상기 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 상기 비디오 데이터 스트림을 생성하는 단계
    를 포함하고,
    상기 복수의 액세스 유닛들 중 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 방법은,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보가,
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 상기 하나를 바로 뒤따르는 상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는지 여부를 지시하는 지시를 포함하도록,
    상기 비디오 데이터 스트림을 생성하는 단계를 포함하는,
    방법.
  122. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 입력 비트스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 방법은,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림의 상기 액세스 유닛들을 처리하는 단계
    를 포함하고,
    상기 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보는,
    상기 액세스 유닛의 상기 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한,
    방법.
  123. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 입력 비트스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 방법은,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림의 상기 액세스 유닛들을 처리하는 단계
    를 포함하고,
    상기 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 비디오 데이터 스트림은,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보가, 상기 액세스 유닛의 상기 2개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 모두에서 동일한지 여부를 지시하는 지시를 포함하는,
    방법.
  124. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 입력 비트스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 방법은,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림의 상기 액세스 유닛들을 처리하는 단계
    를 포함하고,
    상기 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보는,
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 상기 하나를 즉시 뒤따르는 상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는,
    방법.
  125. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 입력 비트스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 방법은,
    서브-비트스트림을 획득하기 위해 상기 입력 비트스트림의 상기 액세스 유닛들을 처리하는 단계
    를 포함하고,
    상기 복수의 액세스 유닛들의 각각의 액세스 유닛에 대해,
    상기 액세스 유닛이 출력 레이어 세트에 대한 픽처 타이밍 정보 및/또는 버퍼 주기 정보를 포함하는 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들을 포함하는 경우,
    상기 비디오 데이터 스트림은,
    상기 출력 레이어 세트에 대한 상기 픽처 타이밍 정보 및/또는 상기 버퍼 주기 정보가,
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 하나, 및
    상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 상기 하나를 바로 뒤따르는 상기 3개 이상의 확장가능한 네스팅된 보충 강화 정보 메시지들 중 다른 하나에만 나타나는지 여부를 지시하는 지시를 포함하는,
    방법.
  126. 컴퓨터 또는 신호 프로세서에서 실행되는 경우 제118항 내지 제125항 중 어느 한 항의 방법을 구현하기 위한 컴퓨터 프로그램.
  127. 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 상기 비디오 데이터 스트림에 있어서,
    상기 비디오 데이터 스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림의 서브-비트스트림들의 수에 의존(depend)하는 확산 인자(spread factor)를 포함하고
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림의 상기 서브-비트스트림들 중에서 최상위 서브-비트스트림(highest sub-bitstream)에 의존하는 클록 서브-틱 값(clock sub-tick value)을 포함하는,
    비디오 데이터 스트림.
  128. 제127항에 있어서,
    상기 서브-비트스트림들 각각은,
    출력 레이어 세트(output layer set)에 의존(depend)하고/거나,
    서브-레이어(sub-layer)에 의존하고/하거나,
    서브픽처에 의존하는,
    비디오 데이터 스트림.
  129. 제127항 또는 제128항에 있어서,
    디코딩 유닛 제거 시간(decoding unit removal time)은,
    액세스 유닛 제거 시간(access unit removal time) 및 상기 확산 인자에 의존하는,
    비디오 데이터 스트림.
  130. 제129항에 있어서,
    상기 비디오 데이터 스트림은,
    시간적 거리(temporal distance)를 포함하고,
    상기 시간적 거리는,
    도출된(derived) 클록 서브-틱 값에 의해 곱해지고,
    상기 도출된 클록 서브-틱 값은,
    상기 확산 인자를 사용하여 도출가능한(derivable),
    비디오 데이터 스트림.
  131. 제127항 내지 제130항 중 어느 한 항에 있어서,
    상기 확산 인자는,
    복수의 확산 인자들 중 하나이고,
    상기 복수의 확산 인자들 각각은,
    복수의 서브레이어들의 서브레이어에 할당되고,
    상기 비디오 데이터 스트림은,
    상기 복수의 확산 인자들을 포함하는,
    비디오 데이터 스트림.
  132. 제127항 내지 제130항 중 어느 한 항에 있어서,
    상기 클록 서브-틱 값은,
    클록 틱에 의존하고,
    상기 확산 인자에 의존하는,
    비디오 데이터 스트림.
  133. 제132항에 있어서,
    상기 클록 서브-틱 값은,
    ClockSubTick =
    = ClockTick / ( tick_divisor_minus2 + 2 ) * ( tick_divisor_factor_minus1[ HTid ] + 1 )에 따라서 정의되고,
    ClockSubTick은,
    상기 클록 서브-틱 값이고,
    ClockTick은,
    상기 클록 틱이고,
    tick_divisor_minus2은,
    추가적인 틱 제수(tick divisor)이고, 및
    tick_divisor_factor_minus1[ HTid ]는,
    상기 비디오 데이터 스트림의 상기 확산 인자를 지시하는,
    비디오 데이터 스트림.
  134. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 비디오 인코더에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 상기 비디오 데이터 스트림을 생성하고,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이, 상기 비디오 데이터 스트림의 서브-비트스트림들의 수에 의존하는 확산 인자를 포함하도록 상기 비디오 데이터 스트림을 생성하고,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이, 상기 비디오 데이터 스트림의 상기 서브-비트스트림들 사이에서 최상위 서브-비트스트림에 의존하는 클록 서브-틱 값을 포함하도록 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  135. 제134항에 있어서,
    상기 서브-비트스트림들 각각은,
    출력 레이어 세트에 의존(depend)하고/거나,
    서브-레이어(sub-layer)에 의존하고/하거나,
    서브픽처에 의존하는,
    비디오 인코더.
  136. 제134항 또는 제135항에 있어서,
    상기 비디오 인코더는,
    디코딩 유닛 제거 시간이, 액세스 유닛 제거 시간 및 상기 확산 인자에 의존하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  137. 제136항에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 시간적 거리를 포함하도록, 상기 비디오 데이터 스트림을 생성하고,
    상기 시간적 거리는,
    도출된 클록 서브-틱 값에 의해 곱해지고,
    상기 도출된 클록 서브-틱 값은,
    상기 확산 인자를 사용하여 도출가능한,
    비디오 인코더.
  138. 제134항 내지 제137항 중 어느 한 항에 있어서,
    상기 확산 인자는,
    복수의 확산 인자들 중 하나이고,
    상기 복수의 확산 인자들 각각은,
    복수의 서브레이어들의 서브레이어에 할당되고,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 상기 복수의 확산 인자들을 포함하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  139. 제134항 내지 제137항 중 어느 한 항에 있어서,
    상기 클록 서브-틱 값은,
    클록 틱에 의존하고,
    상기 확산 인자에 의해 더 결정되는,
    비디오 인코더.
  140. 제139항에 있어서,
    상기 클록 서브-틱 값은,
    ClockSubTick =
    = ClockTick / ( tick_divisor_minus2 + 2 ) * ( tick_divisor_factor_minus1[ HTid ] + 1 )에 따라서 정의되고,
    ClockSubTick은,
    상기 클록 서브-틱 값이고,
    ClockTick은,
    상기 클록 틱이고,
    tick_divisor_minus2은,
    추가적인 틱 제수이고, 및
    tick_divisor_factor_minus1[ HTid ]는,
    상기 비디오 데이터 스트림의 상기 확산 인자를 지시하는,
    비디오 인코더.
  141. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 비디오 인코더에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 서브-레이어에 대한 서브-레이어 특정 프레임 레이트 정보(sub-layer specific frame rate information)를 포함하도록 상기 비디오 데이터 스트림을 생성하고, 및/또는
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 상기 서브-레이어에 대한 서브-레이어 특정 프레임 디스플레이 지속기간 정보(sub-layer specific frame display duration information)를 포함하도록 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  142. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 입력 비트스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 비디오 디코더는,
    상기 비디오를 디코딩하기 위해 상기 비디오 데이터 스트림을 디코딩하고,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림의 서브-비트스트림들의 수에 의존하는 확산 인자를 포함하고,
    상기 비디오 디코더는,
    상기 확산 인자를 사용하여 상기 비디오를 디코딩하고, 또는
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림의 상기 서브-비트스트림들 사이에서 최상위 서브-비트스트림에 의존하는 클록 서브-틱 값을 포함하고,
    상기 비디오 디코더는,
    상기 클록 서브-틱 값을 사용하여 상기 비디오를 디코딩하는,
    비디오 디코더.
  143. 제142항에 있어서,
    상기 서브-비트스트림들 각각은,
    출력 레이어 세트에 의존(depend)하고/거나,
    서브-레이어(sub-layer)에 의존하고/하거나,
    서브픽처에 의존하는,
    비디오 디코더.
  144. 제142항 또는 제143항에 있어서,
    디코딩 유닛 제거 시간은,
    액세스 유닛 제거 시간 및 상기 확산 인자에 의존하는,
    비디오 디코더.
  145. 제144항에 있어서,
    상기 비디오 데이터 스트림은,
    시간적 거리를 포함하고,
    상기 비디오 디코더는,
    상기 시간적 거리를, 도출된 클록 서브-틱 값에 의해 곱하고,
    상기 비디오 디코더는,
    상기 확산 인자를 사용하여 상기 도출된 클록 서브-틱 값을 도출하는,
    비디오 디코더.
  146. 제142항 내지 제145항 중 어느 한 항에 있어서,
    상기 확산 인자는,
    복수의 확산 인자들 중 하나이고,
    상기 복수의 확산 인자들 각각은,
    복수의 서브레이어들의 서브레이어에 할당되고,
    상기 비디오 데이터 스트림은,
    상기 복수의 확산 인자들을 포함하고,
    상기 비디오 디코더는,
    상기 복수의 확산 인자들을 사용하여 상기 비디오를 디코딩하는,
    비디오 디코더.
  147. 제142항 내지 제145항 중 어느 한 항에 있어서,
    상기 클록 서브-틱 값은,
    클록 틱에 의존하고,
    상기 확산 인자에 의존하는,
    비디오 디코더.
  148. 제147항에 있어서,
    상기 클록 서브-틱 값은,
    ClockSubTick =
    = ClockTick / ( tick_divisor_minus2 + 2 ) * ( tick_divisor_factor_minus1[ HTid ] + 1 )에 따라서 정의되고,
    ClockSubTick은,
    상기 클록 서브-틱 값이고,
    ClockTick은,
    상기 클록 틱이고,
    tick_divisor_minus2은,
    추가적인 틱 제수이고,
    tick_divisor_factor_minus1[ HTid ]는,
    상기 비디오 데이터 스트림의 상기 확산 인자를 지시하는,
    비디오 디코더.
  149. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 비디오 디코더는,
    상기 비디오를 디코딩하기 위해 상기 비디오 데이터 스트림을 디코딩하고,
    상기 비디오 데이터 스트림은,
    서브-레이어에 대한 서브-레이어 특정 프레임 레이트 정보를 포함하고/거나,
    상기 비디오 데이터 스트림은,
    상기 서브-레이어에 대한 서브-레이어 특정 프레임 디스플레이 지속기간 정보를 포함하고,
    상기 디코더는,
    상기 서브-레이어에 대한 상기 서브-레이어 특정 프레임 레이트 정보를 사용하고/거나 상기 서브-레이어 특정 프레임 디스플레이 지속기간 정보를 사용하여 확산 인자를 결정하는,
    비디오 디코더.
  150. 비디오를 비디오 데이터 스트림으로 인코딩하고, 상기 비디오를 디코딩하는 시스템에 있어서,
    상기 시스템은:
    제134항 내지 제141항 중 어느 한 항에 따른 비디오 인코더; 및
    제142항 내지 제149항 중 어느 한 항에 따른 비디오 디코더
    를 포함하고,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 상기 비디오를 포함하도록 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하고,
    상기 비디오 디코더는,
    상기 비디오 데이터 스트림을 수신하고, 상기 비디오를 디코딩하기 위해 상기 비디오 데이터 스트림을 디코딩하는,
    시스템.
  151. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 방법에 있어서,
    상기 방법은,
    상기 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 상기 비디오 데이터 스트림을 생성하는 단계
    를 포함하고,
    상기 방법은,
    상기 비디오 데이터 스트림이 상기 비디오 데이터 스트림의 서브-비트스트림들의 수에 의존하는 확산 인자를 포함하도록, 상기 비디오 데이터 스트림을 생성하는 단계
    를 포함하고,
    상기 방법은,
    상기 비디오 데이터 스트림이 상기 비디오 데이터 스트림의 상기 서브-비트스트림들 중 최상위 서브-비트스트림에 의존하는 클록 서브-틱 값을 포함하도록, 상기 비디오 데이터 스트림을 생성하는 단계
    를 포함하는,
    방법.
  152. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 비디오 데이터 스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 방법은,
    상기 비디오를 디코딩하기 위해 상기 비디오 데이터 스트림을 디코딩하는 단계
    를 포함하고,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림의 서브-비트스트림들의 수에 의존하는 확산 인자를 포함하고,
    상기 방법은,
    상기 확산 인자를 사용하여 상기 비디오를 디코딩하는 단계
    를 포함하고, 또는
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림의 상기 서브-비트스트림들 중 최상위 서브-비트스트림에 의존하는 클록 서브-틱 값을 포함하고,
    상기 방법은,
    상기 클록 서브-틱 값을 사용하여 상기 비디오를 디코딩하는,
    방법.
  153. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 방법은,
    상기 비디오를 디코딩하기 위해 상기 비디오 데이터 스트림을 디코딩하는 단계
    를 포함하고,
    상기 비디오 데이터 스트림은,
    서브-레이어에 대한 서브-레이어 특정 프레임 레이트 정보를 포함하고/거나,
    상기 비디오 데이터 스트림은,
    상기 서브-레이어에 대한 서브-레이어 특정 프레임 디스플레이 지속기간 정보를 포함하고,
    상기 방법은,
    상기 서브-레이어에 대한 상기 서브-레이어 특정 프레임 레이트 정보를 사용하고/거나 상기 서브-레이어 특정 프레임 디스플레이 지속기간 정보를 사용하여 확산 인자를 결정하는 단계
    를 포함하는,
    방법.
  154. 컴퓨터 또는 신호 프로세서에서 실행되는 경우 제151항 내지 제153항 중 어느 한 항의 방법을 구현하기 위한 컴퓨터 프로그램.
  155. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 비디오 디코더는,
    상기 비디오를 디코딩하기 위해 상기 비디오 데이터 스트림을 디코딩하고,
    상기 비디오를 디코딩하기 위해, 상기 비디오 디코더는,
    현재 코딩된 픽처 버퍼 크기 정보(current coded picture buffer size information)를 지시하는 상기 비디오 데이터 스트림 내의 정보에 의존하는 서브픽처에 대한 코딩된 픽처 버퍼 크기를 추정하는,
    비디오 디코더.
  156. 제155항에 있어서,
    상기 비디오 데이터 스트림은,
    참조 레벨(reference level)에 대한 시그널링된 코딩된 픽처 버퍼 크기(signalled coded picture buffer size)를 포함하는,
    비디오 디코더.
  157. 제155항에 있어서,
    현재 레벨(current level)이 참조 레벨과 동일한 경우,
    상기 비디오 디코더는,
    상기 참조 레벨에 대한 상기 코딩된 픽처 버퍼 크기를 사용하여 상기 코딩된 픽처 버퍼 크기를 결정하는,
    비디오 디코더.
  158. 제155항 내지 제157항 중 어느 한 항에 있어서,
    상기 비디오 디코더는,
    상기 비디오 데이터 스트림의 신택스 요소(syntax element) cpb_size_value_minus1[ i ][ j ]에 의존하는 상기 코딩된 픽처 버퍼 크기를 추정하는,
    비디오 디코더.
  159. 제155항 내지 제158항 중 어느 한 항에 있어서,
    상기 비디오 디코더는,
    상기 비디오 데이터 스트림의 신택스 요소 cpb_size_scale에 의존하는 상기 코딩된 픽처 버퍼 크기를 추정하는,
    비디오 디코더.
  160. 제155항 내지 제159항 중 어느 한 항에 있어서,
    상기 비디오 디코더는,
    비디오 코딩 레이어 코딩된 픽처 버퍼 크기(video coding layer coded picture buffer size)인 상기 서브픽처에 대한 상기 코딩된 픽처 버퍼 크기를 추정하고,
    네트워크 추상화 레이어 코딩된 픽처 버퍼 크기(network abstraction layer coded picture buffer size)인 상기 서브픽처에 대한 추가 코딩된 픽처 버퍼 크기를 추정하는,
    비디오 디코더.
  161. 제160항에 있어서,
    상기 비디오 디코더는,
    참조 레벨 프랙션 값(reference level fraction value)에 의존하는 상기 네트워크 추상화 레이어 코딩된 픽처 버퍼 크기 및/또는 상기 비디오 코딩 레이어 코딩된 픽처 버퍼 크기를 추정하는,
    비디오 디코더.
  162. 제161항에 있어서,
    상기 비디오 디코더는,
    SubPicCbpSizeVcl[ s ]=
    = Floor(( cpb_size_value_minus1[ i ][ j ] + 1 )
    * 2( 4 + cpb_size_scale )* RefLevelFraction[i][j] / 256)
    에 따라서 상기 비디오 코딩 레이어 코딩된 픽처 버퍼 크기를 추정하고,
    상기 장치는,
    SubPicCbpSizeNal[ s ] =
    = Floor(( cpb_size_value_minus1[ i ][ j ] + 1 )
    * 2( 4 + cpb_size_scale)* RefLevelFraction[i][j] / 256)에 따라서 상기 네트워크 추상화 레이어 코딩된 픽처 버퍼 크기를 추정하고,
    RefLevelFraction는 상기 참조 레벨 프랙션 값인,
    비디오 디코더.
  163. 제161항에 있어서,
    상기 비디오 디코더는,
    SubpicCpbSizeVcl[ i ][ j ][ k ] =
    Floor( CpbVclFactor * MaxCPB * OlsRefLevelFraction[ i ][ j ][ k ] / 256)
    SubpicCpbSizeNal[ i ][ j ][ k ] = Floor( CpbNalFactor * MaxCPB * OlsRefLevelFraction[ i ][ j ][ k ] / 256)에 따라서 상기 비디오 코딩 레이어 코딩된 픽처 버퍼 크기를 추정하고,
    i 및 j 및 k는,
    인덱스들이고,
    OlsRefLevelFraction[ i ][ j ][ k ]는,
    실수(real number)인,
    비디오 디코더.
  164. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 비디오 디코더는,
    상기 비디오를 디코딩하기 위해 상기 비디오 데이터 스트림을 디코딩하고,
    상기 비디오를 디코딩하기 위해, 상기 비디오 디코더는,
    현재 코딩된 비디오 시퀀스 비트레이트 정보(current coded video sequence bitrate information)를 지시하는 상기 비디오 데이터 스트림 내의 정보에 의존하는 서브픽처에 대한 비트레이트를 추정하는,
    비디오 디코더.
  165. 제164항에 있어서,
    상기 비디오 데이터 스트림은,
    상기 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하여 상기 서브픽처에 대한 상기 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함하고,
    상기 비디오 데이터 스트림의 상기 지시가,
    상기 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하여 상기 서브픽처에 대한 상기 비트레이트가 추정되어야 하는 것을 지시하는 경우,
    상기 비디오 디코더는,
    상기 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하여 상기 비트레이트를 추정하고,
    상기 비디오 데이터 스트림의 상기 지시가, 상기 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하지 않고 상기 서브픽처에 대한 상기 비트레이트가 추정되어야 하는 것을 지시하는 경우,
    상기 비디오 디코더는,
    상기 현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하지 않고 미리 정의된 값 또는 최악의 경우 값(worst-case value)을 사용하여 비트레이트를 추정하는,
    비디오 디코더.
  166. 제164항 또는 제165항에 있어서,
    상기 현재 코딩된 비디오 시퀀스 비트레이트 정보는,
    참조 레벨에 대한 시그널링된 비트레이트이고,
    상기 비디오 데이터 스트림은,
    상기 참조 레벨에 대한 상기 시그널링된 비트레이트를 포함하고,
    현재 레벨이 상기 참조 레벨과 동일한 경우,
    상기 비디오 디코더는,
    상기 참조 레벨에 대한 상기 시그널링된 비트레이트를 사용하여 상기 서브픽처에 대한 상기 비트레이트를 결정하는,
    비디오 디코더.
  167. 제164항 내지 제166항 중 어느 한 항에 있어서,
    상기 비디오 디코더는,
    상기 비디오 데이터 스트림의 신택스 요소 bit_rate_value_minus1[ i ][ j ]에 의존하는 상기 서브픽처에 대한 상기 비트레이트를 추정하는,
    비디오 디코더.
  168. 제164항 내지 제167항 중 어느 한 항에 있어서,
    상기 비디오 디코더는,
    상기 비디오 데이터 스트림의 신택스 요소 bit_rate_scale에 의존하는 상기 서브픽처에 대한 상기 비트레이트를 추정하는,
    비디오 디코더.
  169. 제164항 내지 제168항 중 어느 한 항에 있어서,
    상기 비디오 디코더는,
    상기 서브픽처에 대한 비디오 코딩 레이어 비트레이트인, 상기 서브픽처에 대한 비트레이트를 추정하고,
    상기 서브픽처에 대한 네트워크 추상화 레이어 비트레이트인 상기 서브픽처에 대한 추가 코딩된 픽처 버퍼 크기를 추정하는,
    비디오 디코더.
  170. 제169항에 있어서,
    상기 비디오 디코더는,
    참조 레벨 프랙션 값에 의존하는 상기 네트워크 추상화 레이어 코딩된 픽처 버퍼 크기 및/또는 상기 비디오 코딩 레이어 코딩된 픽처 버퍼 크기를 추정하는,
    비디오 디코더.
  171. 제170항에 있어서,
    상기 비디오 디코더는,
    SubPicBitRateVcl[s] =
    = Floor(( bit_rate_value_minus1[i][j] + 1 )
    * 2(6 + bit_rate_scale) * RefLevelFraction[i][j] / 256)에 따라서 상기 서브픽처에 대한 상기 비디오 코딩 레이어 비트레이트를 추정하고,
    상기 장치는,
    SubPicBitRateNal[s] =
    = Floor(( bit_rate_value_minus1[i][j] + 1 )
    * 2(6 + bit_rate_scale) * RefLevelFraction[i][j] / 256)에 따라서 상기 서브픽처에 대한 상기 네트워크 추상화 레이어 비트레이트를 추정하고,
    RefLevelFraction는 상기 참조 레벨 프랙션 값인,
    비디오 디코더.
  172. 제170항에 있어서,
    상기 비디오 디코더는,
    SubpicBitRateVcl[i][j][k] = Floor( CpbVclFactor * ValBR * OlsRefLevelFraction[0][j][k] / 256)
    SubpicBitRateNal[i][j][k] = Floor( CpbNalFactor * ValBR * OlsRefLevelFraction[0][j][k] / 256)
    에 따라서 상기 서브픽처에 대한 상기 비디오 코딩 레이어 비트레이트를 추정하고,
    i 및 j 및 k는,
    인덱스들이고,
    OlsRefLevelFraction[0][j][k]는,
    실수인,
    비디오 디코더.
  173. 제163항 또는 제172항에 있어서,
    i는 지시된 특정한 참조 레벨의 인덱스를 지시하고,
    j는 상기 비디오 데이터 스트림에서 액세스 유닛의 상기 픽처들의 특정한 서브픽처의 인덱스를 지시하고,
    k는 상기 비디오 데이터 스트림이 포함하고, 및/또는 상기 비디오 디코더가 동작(operate)하는 최대 시간적 서브레이어의 인덱스(maximum temporal sublayer)를 지시하는,
    비디오 디코더.
  174. 제163항 또는 제172항 또는 제173항에 있어서,
    OlsRefLevelFraction[i][j][k]는,
    변수 sli_non_subpic_layers_fraction[i][k]에 의존하고,
    상기 변수 sli_non_subpic_layers_fraction[i][k]는,
    Htid가 k와 같을 경우, 0과 동일한 sps_num_subpics_minus1을 포함하는 targetCvss의 레이어와 관련된 비트스트림 레벨 제한(bitstream level limit)들의 i 번째 프랙션을 지시하는,
    비디오 디코더.
  175. 제174항에 있어서,
    vps_max_layers_minus1이 0인 경우, 또는 상기 비트스트림의 어떤 레이어도 0과 동일한 sps_num_subpics_minus1을 포함하지 않는 경우,
    sli_non_subpic_layers_fraction[ i ][ k ]는 0이고,
    k가 sli_max_sublayers_minus1보다 작고 sli_non_subpic_layers_fraction[ i ][ k ]가 존재하지 않는 경우,
    sli_non_subpic_layers_fraction[ i ][ k ] = sli_non_subpic_layers_fraction[ i ][ k + 1 ]인,
    비디오 디코더.
  176. 제163항 및 제172항 내지 제175항 중 어느 한 항에 있어서,
    OlsRefLevelFraction[i][j][k] =
    = sli_non_subpic_layers_fraction[i][k] + ( n - sli_non_subpic_layers_fraction[i][k] ) / n
    * ( sli_ref_level_fraction_minus1[i][j][k] + 1 )이고,
    상기 n은,
    양의 정수를 지시하는,
    비디오 디코더.
  177. 제176항에 있어서,
    n = 256; 또는 n = 128; 또는 n = 512; 또는 n = 1024; 또는 n = 2048; 또는 n = 4096인,
    비디오 디코더.
  178. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 비디오 디코더는,
    상기 비디오를 디코딩하기 위해 상기 비디오 데이터 스트림을 디코딩하고,
    상기 비디오를 디코딩하기 위해, 상기 비디오 디코더는,
    상기 비디오 데이터 스트림 내에서 인코딩되는 서브픽처에 대한 코딩된 픽처 버퍼 크기를 수신하고. 상기 비디오를 디코딩하기 위해 상기 서브픽처에 대한 상기 코딩된 픽처 버퍼 크기를 사용하고/거나,
    상기 비디오를 디코딩하기 위해, 상기 비디오 디코더는,
    상기 비디오 데이터 스트림 내에서 인코딩되는 서브픽처에 대한 비트레이트를 수신하고, 상기 비디오를 디코딩하기 위해 상기 서브픽처에 대한 상기 비트레이트를 사용하는,
    비디오 디코더.
  179. 제178항에 있어서,
    상기 비디오 데이터 스트림은,
    상기 서브픽처에 대한 코딩된 픽처 버퍼 크기가 상기 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 상기 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 포함하고,
    상기 비디오 데이터 스트림의 상기 지시가, 상기 서브픽처에 대한 상기 코딩된 픽처 버퍼 크기가 추정되어야 하는 것을 지시하는 경우,
    상기 비디오 디코더는,
    상기 서브픽처에 대한 상기 코딩된 픽처 버퍼 크기를 추정하고,
    상기 비디오 데이터 스트림의 상기 지시가, 상기 서브픽처에 대한 상기 코딩된 픽처 버퍼 크기가 상기 비디오 데이터 스트림 내에서 인코딩된다는 것을 지시하는 경우,
    상기 비디오 디코더는,
    상기 비디오 데이터 스트림 내에서 인코딩된 상기 서브픽처에 대한 상기 코딩된 픽처 버퍼 크기를 사용하는,
    비디오 디코더.
  180. 제178항 또는 제179항에 있어서,
    상기 비디오 데이터 스트림은,
    상기 서브픽처에 대한 상기 비트레이트가 상기 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 상기 서브픽처에 대한 상기 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함하고,
    상기 비디오 데이터 스트림의 상기 지시가, 상기 서브픽처에 대한 상기 비트레이트가 추정되어야 하는 것을 지시하는 경우,
    상기 비디오 디코더는,
    상기 서브픽처에 대한 상기 비트레이트를 추정하고,
    상기 비디오 데이터 스트림의 상기 지시가, 상기 서브픽처에 대한 상기 비트레이트가 상기 비디오 데이터 스트림 내에서 인코딩된다는 것을 지시하는 경우,
    상기 비디오 디코더는,
    상기 비디오 데이터 스트림 내에서 인코딩된 상기 서브픽처에 대한 상기 코딩된 픽처 버퍼 크기를 사용하는,
    비디오 디코더.
  181. 제155항 내지 제180항 중 어느 한 항에 있어서,
    복수의 추출가능한 서브-비트스트림(extractable sub-bitstream)들 각각은,
    출력 레이어 세트에 특정(specific)하고,
    상기 서브픽처는,
    상기 복수의 추출가능한 서브-비트스트림들 중 적어도 하나의 추출가능한 서브-비트스트림에 할당되고,
    상기 비디오 데이터 스트림이 공통 디코딩 유닛 제거 타이밍 정보(common decoding unit removal timing information) 및 상기 복수의 추출가능한 서브-비트스트림들을 포함하는 경우,
    비디오 파라미터 세트 또는 시퀀스 파라미터 세트 또는 상기 비디오 데이터 스트림의 보충 강화 정보 메시지에서 각 출력 레이어 세트-특정 가상 참조 디코더 파라미터 신택스 구조는,
    상기 공통 디코딩 유닛 제거 타이밍들을 스케일링하기 위한 확산 인자 또는 틱 제수의 절대값을 포함하고,
    상기 비디오 디코더는,
    상기 확산 계수 또는 상기 틱 제수의 절댓값을 처리하는,
    비디오 디코더.
  182. 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 상기 비디오 데이터 스트림에 있어서,
    상기 비디오 데이터 스트림은,
    신택스 요소 cpb_size_value_minus1[ i ][ j ] 및 신택스 요소 cpb_size_scale을 포함하고; 또는
    상기 비디오 데이터 스트림은,
    신택스 요소 bit_rate_value_minus1[ i ][ j ] 및 신택스 요소 bit_rate_scale을 포함하는,
    비디오 데이터 스트림.
  183. 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 상기 비디오 데이터 스트림에 있어서,
    상기 비디오 데이터 스트림은,
    현재 코딩된 픽처 버퍼 크기 정보를 사용하여 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 포함하고/거나,
    상기 비디오 데이터 스트림은,
    현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하여 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함하는,
    비디오 데이터 스트림.
  184. 제182항 또는 제183항에 있어서,
    상기 현재 코딩된 픽처 버퍼 크기 정보는,
    참조 레벨에 대한 시그널링된 코딩된 픽처 버퍼 크기이고,
    상기 비디오 데이터 스트림은,
    상기 참조 레벨에 대한 시그널링된 코딩된 픽처 버퍼 크기를 포함하고/거나,
    상기 현재 코딩된 비디오 시퀀스 비트레이트 정보는,
    참조 레벨에 대한 시그널링된 비트레이트이고,
    상기 비디오 데이터 스트림은,
    상기 참조 레벨에 대한 시그널링된 비트레이트를 포함하는,
    비디오 데이터 스트림.
  185. 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 상기 비디오 데이터 스트림에 있어서,
    상기 비디오 데이터 스트림은,
    서브픽처에 대한 코딩된 픽처 버퍼 크기가 상기 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 상기 서브픽처에 대한 상기 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 포함하고/거나,
    상기 비디오 데이터 스트림은,
    상기 서브픽처에 대한 비트레이트가 상기 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 상기 서브픽처에 대한 상기 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함하는,
    비디오 데이터 스트림.
  186. 제182항 내지 제185항 중 어느 한 항에 있어서,
    복수의 추출가능한 서브-비트스트림들 각각은,
    출력 레이어 세트에 특정하고,
    상기 서브픽처는,
    상기 복수의 추출가능한 서브-비트스트림들 중 적어도 하나의 추출가능한 서브-비트스트림에 할당되고,
    상기 비디오 데이터 스트림이 공통 디코딩 유닛 제거 타이밍 정보 및 상기 복수의 추출가능한 서브-비트스트림들을 포함하는 경우,
    비디오 파라미터 세트 또는 시퀀스 파라미터 세트 또는 상기 비디오 데이터 스트림의 보충 강화 정보 메시지에서 각 출력 레이어 세트-특정 가상 참조 디코더 파라미터 신택스 구조는,
    상기 공통 디코딩 유닛 제거 타이밍들을 스케일링하기 위한 확산 인자 또는 틱 제수의 절대값을 포함하는,
    비디오 데이터 스트림.
  187. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 비디오 인코더에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이, 신택스 요소 cpb_size_value_minus1[ i ][ j ] 및 신택스 요소 cpb_size_scale을 포함하도록 상기 비디오 데이터 스트림을 생성하고,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이, 신택스 요소 bit_rate_value_minus1[ i ][ j ] 및 신택스 요소 bit_rate_scale을 포함하도록 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  188. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 비디오 인코더에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이, 현재 코딩된 픽처 버퍼 크기 정보를 사용하여 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 포함하도록 상기 비디오 데이터 스트림을 생성하고,
    상기 비디오 인코더는,
    현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하여 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 상기 비디오 데이터 스트림이 포함하도록 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  189. 제187항 또는 제188항에 있어서,
    상기 비디오 인코더는,
    상기 현재 코딩된 픽처 버퍼 크기 정보가 참조 레벨에 대한 시그널링된 코딩된 픽처 버퍼 크기이도록, 상기 비디오 데이터 스트림을 생성하고,
    상기 비디오 데이터 스트림은,
    상기 참조 레벨에 대한 상기 시그널링된 코딩된 픽처 버퍼 크기를 포함하고/거나,
    상기 비디오 인코더는,
    상기 현재 코딩된 비디오 시퀀스 비트레이트 정보가 참조 레벨에 대한 시그널링된 비트레이트이도록, 상기 비디오 데이터 스트림을 생성하고,
    상기 비디오 데이터 스트림은,
    상기 참조 레벨에 대한 상기 시그널링된 비트레이트를 포함하는,
    비디오 인코더.
  190. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 비디오 인코더에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이, 서브픽처에 대한 코딩된 픽처 버퍼 크기가 상기 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 상기 서브픽처에 대한 상기 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 포함하도록, 상기 비디오 데이터 스트림을 생성하고,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이, 상기 서브픽처에 대한 비트레이트가 상기 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 상기 서브픽처에 대한 상기 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 포함하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  191. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 비디오 인코더에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 공통 디코딩 유닛 제거 타이밍 정보 및 복수의 추출가능한 서브-비트스트림들을 포함하는 경우,
    비디오 파라미터 세트 또는 시퀀스 파라미터 세트 또는 상기 비디오 데이터 스트림의 보충 강화 정보 메시지에서 각 출력 레이어 세트-특정 가상 참조 디코더 파라미터 신택스 구조가, 상기 공통 디코딩 유닛 제거 타이밍들을 스케일링하기 위한 확산 인자 또는 틱 제수의 절대값을 포함하도록,
    상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  192. 비디오를 비디오 데이터 스트림으로 인코딩하고, 상기 비디오를 디코딩하는 시스템에 있어서,
    상기 시스템은:
    제197항 내지 제191항 중 어느 한 항에 따른 비디오 인코더; 및
    제155항 내지 제181항 중 어느 한 항에 따른 비디오 디코더; 및
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 상기 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하고,
    상기 비디오 디코더는,
    상기 비디오 데이터 스트림을 수신하고, 상기 비디오를 디코딩하기 위해 상기 비디오 데이터 스트림을 디코딩하는,
    시스템.
  193. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 비디오를 디코딩하기 위해,
    상기 방법은,
    현재 코딩된 픽처 버퍼 크기 정보를 지시하는 상기 비디오 데이터 스트림 내의 정보에 의존하는 서브픽처에 대한 코딩된 픽처 버퍼 크기를 추정하는 단계
    를 포함하는,
    방법.
  194. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 방법은,
    상기 비디오를 디코딩하기 위해 상기 비디오 데이터 스트림을 디코딩하는 단계
    를 포함하고,
    상기 비디오를 디코딩하기 위해, 상기 방법은,
    현재 코딩된 비디오 시퀀스 비트레이트 정보를 지시하는 상기 비디오 데이터 스트림 내의 정보에 의존하는 서브픽처에 대한 비트레이트를 추정하는 단계
    를 포함하는,
    방법.
  195. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 방법은,
    상기 비디오를 디코딩하기 위해 상기 비디오 데이터 스트림을 디코딩하는 단계
    를 포함하고,
    상기 비디오를 디코딩하기 위해, 상기 방법은,
    상기 비디오 데이터 스트림 내에서 인코딩되는 서브픽처에 대한 코딩된 픽처 버퍼 크기를 수신하는 단계
    를 포함하고,
    상기 비디오를 디코딩하기 위해 상기 서브픽처에 대한 상기 코딩된 픽처 버퍼 크기를 사용하는 단계
    를 포함하고,
    상기 비디오를 디코딩하기 위해,
    상기 방법은,
    상기 비디오 데이터 스트림 내에서 인코딩되는 서브픽처에 대한 비트레이트를 수신하는 단계
    를 포함하고,
    상기 비디오를 디코딩하기 위해 상기 서브픽처에 대한 상기 비트레이트를 사용하는 단계
    를 포함하는,
    방법.
  196. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 방법에 있어서,
    상기 방법은,
    신택스 요소 cpb_size_value_minus1[ i ][ j ] 및 신택스 요소 cpb_size_scale을 상기 비디오 데이터 스트림이 포함하도록, 상기 비디오 데이터 스트림을 생성하는 단계를 포함하거나,
    상기 방법은,
    신택스 요소 bit_rate_value_minus1[ i ][ j ] 및 신택스 요소 bit_rate_scale을 상기 비디오 데이터 스트림이 포함하도록, 상기 비디오 데이터 스트림을 생성하는 단계를 포함하는,
    방법.
  197. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 방법에 있어서,
    상기 방법은,
    현재 코딩된 픽처 버퍼 크기 정보를 사용하여 서브픽처에 대한 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 상기 비디오 데이터 스트림이 포함하도록, 상기 비디오 데이터 스트림을 생성하는 단계를 포함하고,
    상기 방법은,
    현재 코딩된 비디오 시퀀스 비트레이트 정보를 사용하여 서브픽처에 대한 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 상기 비디오 데이터 스트림이 포함하도록, 상기 비디오 데이터 스트림을 생성하는 단계를 포함하는,
    방법.
  198. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 방법에 있어서,
    상기 방법은,
    서브픽처에 대한 코딩된 픽처 버퍼 크기가 상기 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 상기 서브픽처에 대한 상기 코딩된 픽처 버퍼 크기가 추정되어야 하는지 여부를 지시하는 지시를 상기 비디오 데이터 스트림이 포함하도록 상기 비디오 데이터 스트림을 생성하는 단계를 포함하고,
    상기 방법은,
    상기 서브픽처에 대한 비트레이트가 상기 비디오 데이터 스트림 내에서 인코딩되는지 여부 또는 상기 서브픽처에 대한 상기 비트레이트가 추정되어야 하는지 여부를 지시하는 지시를 상기 비디오 데이터 스트림이 포함하도록 상기 비디오 데이터 스트림을 생성하는 단계
    를 포함하는,
    방법.
  199. 컴퓨터 또는 신호 프로세서에서 실행되는 경우 제193항 내지 제198항 중 어느 한 항의 방법을 구현하기 위한 컴퓨터 프로그램.
  200. 비디오 데이터 스트림에 인코딩된 비디오를 포함하는 상기 비디오 데이터 스트림에 있어서,
    상기 비디오 데이터 스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 비디오 데이터 스트림은,
    상기 복수의 액세스 유닛들 중 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보(delta time information)를 포함하고,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛에 대한 디코딩 유닛 제거 시간은,
    상기 액세스 유닛에 대한 액세스 유닛 제거 시간 및 상기 디코딩 유닛에 대한 상기 델타 시간 정보에 의존하는,
    비디오 데이터 스트림.
  201. 제200항에 있어서,
    상기 비디오 데이터 스트림은,
    픽처 타이밍 보충 강화 정보 메시지를 포함하고,
    상기 픽처 타이밍 보충 강화 정보 메시지는,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들에 대한 상기 델타 시간 정보를 포함하는,
    비디오 데이터 스트림.
  202. 제200항 또는 제201항에 있어서,
    상기 델타 시간 정보는,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들 중 2개의 디코딩 유닛들 사이의 제거 시간 차(removal time difference)를 지시하는,
    비디오 데이터 스트림.
  203. 제202항에 있어서,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들 사이에서의 마지막 디코딩 유닛(last decoding unit)은,
    상기 액세스 유닛의 상기 제거 시간과 동일한 제거 시간을 포함하는,
    비디오 데이터 스트림.
  204. 제202항 또는 제203항에 있어서,
    상기 액세스 유닛은,
    3개 이상의 디코딩 유닛들을 포함하고,
    상기 제거 시간 차는,
    상기 액세스 유닛의 상기 3개 이상의 디코딩 유닛들 중 2개의 연속적인(consecutive) 디코딩 유닛들의 각 쌍(pair)에 대해 동일한,
    비디오 데이터 스트림.
  205. 제204항에 있어서,
    상기 픽처 타이밍 보충 강화 정보 메시지는,
    상기 비디오 데이터 스트림으로부터 도출되는 서브-비트스트림에 적용되고,
    디코딩 유닛들의 수는 일정(constant)하게 유지되는,
    비디오 데이터 스트림.
  206. 제205항에 있어서,
    프레임 시간 간격(frame time interval)은,
    상기 비디오 데이터 스트림의 파라미터 세트에서, 시퀀스 파라미터 세트의 HRD 파라미터에서 시그널링되는,
    비디오 데이터 스트림.
  207. 제205항에 있어서,
    프레임 시간 간격은,
    최상위 시간적 레벨(highest temporal level)에서 2개의 연속적인 액세스 유닛의 제거 시간의 차로서 도출가능(derivable)한,
    비디오 데이터 스트림.
  208. 제205항 내지 제207항 중 어느 한 항에 있어서,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛은,
    하나의 비디오 코딩 레이어 네트워크 추상화 레이어 유닛을 포함하는,
    비디오 데이터 스트림.
  209. 제204항에 있어서,
    상기 픽처 타이밍 보충 강화 정보 메시지는,
    상기 비디오 데이터 스트림으로부터 도출된 서브-비트스트림에 적용되고,
    다른 수의 디코딩 유닛들이 존재하는,
    비디오 데이터 스트림.
  210. 제200항 내지 제209항 중 어느 한 항에 있어서,
    프레임 시간 간격은,
    (elemental_duration_in_tc_minus1[maxTiD] +1 )에 ClockTicks를 곱하는 것에 의해 도출가능(derivable)한,
    비디오 데이터 스트림.
  211. 제204항 내지 제210항 중 어느 한 항에 있어서,
    상기 비디오 데이터 스트림은,
    디코딩 유닛들의 수가 상기 비디오 데이터 스트림에 대해 가변적(variable)인지 여부를 지시하는 지시를 포함하는,
    비디오 데이터 스트림.
  212. 제204항 내지 제210항 중 어느 한 항에 있어서,
    상기 비디오 데이터 스트림은,
    디코딩 유닛들의 수가 상기 비디오 데이터 스트림에 대해 가변적인지 여부를 지시하는 지시를 포함하지 않는,
    비디오 데이터 스트림.
  213. 제212항에 있어서,
    액세스 유닛 내의 상기 디코딩 유닛들의 수는,
    프레임 시간 간격(frame time interval) 및 공통 지연 증분(common delay increment)에 의존하는,
    비디오 데이터 스트림.
  214. 제200항에 있어서,
    상기 비디오 데이터 스트림은,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들 중 디코딩 유닛에 대한 디코딩 유닛 정보 보충 강화 정보 메시지를 포함하고,
    상기 디코딩 유닛에 대한 상기 디코딩 유닛 정보 보충 강화 정보 메시지는,
    상기 디코딩 유닛에 대한 상기 델타 시간 정보를 포함하는,
    비디오 데이터 스트림.
  215. 제200항 내지 제214항 중 어느 한 항에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림의 시퀀스 파라미터 세트 또는 비디오 파라미터 세트의 최소 픽처 지속기간 플래그를 포함하고,
    상기 최소 픽처 지속기간 플래그는,
    일정한 프레임레이트(framerate)가 없는 경우, 프레임 시간 간격 정보가 존재하는지 여부를 지시하는,
    비디오 데이터 스트림.
  216. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 방법에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 상기 비디오 데이터 스트림을 생성하고,
    상기 비디오 인코더는,
    상기 복수의 액세스 유닛들 중 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 상기 비디오 데이터 스트림이 포함하도록 상기 비디오 데이터 스트림을 생성하고,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛에 대한 디코딩 유닛 제거 시간은,
    상기 액세스 유닛에 대한 액세스 유닛 제거 시간 및 상기 디코딩 유닛에 대한 상기 델타 시간 정보에 의존하는,
    비디오 인코더.
  217. 제216항에 있어서,
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 픽처 타이밍 보충 강화 정보 메시지를 포함하도록, 상기 비디오 데이터 스트림을 생성하고,
    상기 비디오 인코더는,
    상기 픽처 타이밍 보충 강화 정보 메시지가 상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들에 대한 상기 델타 시간 정보를 포함하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  218. 제216항 또는 제217항에 있어서,
    상기 비디오 인코더는,
    상기 델타 시간 정보가, 상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들 중 2개의 디코딩 유닛들 사이의 제거 시간 차를 지시하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  219. 제218항에 있어서,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들 사이에서의 마지막 디코딩 유닛은,
    상기 액세스 유닛의 상기 제거 시간과 동일한 제거 시간을 포함하는,
    비디오 인코더.
  220. 제218항 또는 제219항에 있어서,
    상기 비디오 인코더는,
    상기 액세스 유닛이 3개 이상의 디코딩 유닛들을 포함하도록 상기 비디오 데이터 스트림을 생성하고,
    상기 제거 시간 차는,
    상기 액세스 유닛의 상기 3개 이상의 디코딩 유닛들 중 2개의 연속적인 디코딩 유닛들의 각 쌍에 대해 동일한,
    비디오 인코더.
  221. 제220항에 있어서,
    상기 픽처 타이밍 보충 강화 정보 메시지는,
    상기 비디오 데이터 스트림으로부터 도출되는 서브-비트스트림에 적용되고,
    디코딩 유닛들의 수는 일정하게 유지되는,
    비디오 인코더.
  222. 제221항에 있어서,
    상기 비디오 인코더는,
    프레임 시간 간격이, 상기 비디오 데이터 스트림의 파라미터 세트에서, 시퀀스 파라미터 세트의 HRD 파라미터에서 시그널링되도록 상기 비디오 인코더를 생성하는,
    비디오 인코더.
  223. 제221항에 있어서,
    상기 비디오 인코더는,
    프레임 시간 간격이, 최상위 시간적 레벨(highest temporal level)에서 2개의 연속적인 액세스 유닛의 제거 시간의 차로서 도출가능하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  224. 제221항 내지 제223항 중 어느 한 항에 있어서,
    상기 비디오 인코더는,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛이, 하나의 비디오 코딩 레이어 네트워크 추상화 레이어 유닛을 포함하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  225. 제220항에 있어서,
    상기 비디오 인코더는,
    상기 픽처 타이밍 보충 강화 정보 메시지가 상기 비디오 데이터 스트림으로부터 도출된 서브-비트스트림에 적용되도록, 상기 비디오 데이터 스트림을 생성하고,
    다른 수의 디코딩 유닛들이 존재하는,
    비디오 인코더.
  226. 제216항 내지 제225항 중 어느 한 항에 있어서,
    프레임 시간 간격은,
    (elemental_duration_in_tc_minus1[maxTiD] +1 )에 ClockTicks를 곱하는 것에 의해 도출가능한,
    비디오 인코더.
  227. 제220항 내지 제226항 중 어느 한 항에 있어서,
    상기 비디오 인코더는,
    디코딩 유닛들의 수가 상기 비디오 데이터 스트림에 대해 가변적인지 여부를 지시하는 지시를 상기 비디오 데이터 스트림이 포함하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  228. 제220항 내지 제226항 중 어느 한 항에 있어서,
    상기 비디오 인코더는,
    디코딩 유닛들의 수가 상기 비디오 데이터 스트림에 대해 가변적인지 여부를 지시하는 지시를 상기 비디오 데이터 스트림이 포함하지 않도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  229. 제228항에 있어서,
    상기 비디오 인코더는,
    액세스 유닛 내의 상기 디코딩 유닛들의 수가, 프레임 시간 간격 및 공통 지연 증분에 의존하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  230. 제216항에 있어서,
    상기 비디오 인코더는,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들 중 디코딩 유닛에 대한 디코딩 유닛 정보 보충 강화 정보 메시지를 상기 비디오 데이터 스트림이 포함하도록, 상기 비디오 데이터 스트림을 생성하고,
    상기 비디오 인코더는,
    상기 디코딩 유닛에 대한 상기 디코딩 유닛 정보 보충 강화 정보 메시지가, 상기 디코딩 유닛에 대한 상기 델타 시간 정보를 포함하도록, 상기 비디오 데이터 스트림을 생성하는,
    비디오 인코더.
  231. 제216항 내지 제230항 중 어느 한 항에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림의 시퀀스 파라미터 세트 또는 비디오 파라미터 세트의 최소 픽처 지속기간 플래그를 포함하고,
    상기 최소 픽처 지속기간 플래그는,
    일정한 프레임레이트가 없는 경우, 프레임 시간 간격 정보가 존재하는지 여부를 지시하는,
    비디오 인코더.
  232. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 비디오 디코더에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 비디오 디코더는,
    상기 비디오를 디코딩하기 위해 상기 비디오 데이터 스트림을 디코딩하고,
    상기 비디오 데이터 스트림은,
    상기 복수의 액세스 유닛들 중 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 포함하고,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛에 대한 디코딩 유닛 제거 시간은,
    상기 액세스 유닛에 대한 액세스 유닛 제거 시간 및 상기 디코딩 유닛에 대한 상기 델타 시간 정보에 의존하고,
    상기 비디오 디코더는,
    상기 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 상기 델타 시간 정보를 사용하여 상기 비디오 데이터 스트림을 디코딩하는,
    비디오 디코더.
  233. 제232항에 있어서,
    상기 비디오 데이터 스트림은,
    픽처 타이밍 보충 강화 정보 메시지를 포함하고,
    상기 픽처 타이밍 보충 강화 정보 메시지는,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들에 대한 상기 델타 시간 정보를 포함하는,
    비디오 디코더.
  234. 제232항 또는 제233항에 있어서,
    상기 델타 시간 정보는,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들 중 2개의 디코딩 유닛들 사이의 제거 시간 차를 지시하고,
    상기 비디오 디코더는,
    상기 2개의 디코딩 유닛들 사이의 제거 시간 차를 사용하여 상기 비디오 데이터 스트림을 디코딩하는,
    비디오 디코더.
  235. 제234항에 있어서,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들 사이에서의 마지막 디코딩 유닛은,
    상기 액세스 유닛의 상기 제거 시간과 동일한 제거 시간을 포함하고,
    상기 비디오 디코더는,
    상기 액세스 유닛의 상기 제거 시간을 사용하여 상기 비디오 데이터 스트림을 디코딩하는,
    비디오 디코더.
  236. 제234항 또는 제235항에 있어서,
    상기 액세스 유닛은,
    3개 이상의 디코딩 유닛들을 포함하고,
    상기 제거 시간 차는,
    상기 액세스 유닛의 상기 3개 이상의 디코딩 유닛들 중 2개의 연속적인 디코딩 유닛들의 각 쌍에 대해 동일한,
    비디오 디코더.
  237. 제236항에 있어서,
    상기 픽처 타이밍 보충 강화 정보 메시지는,
    상기 비디오 데이터 스트림으로부터 도출되는 서브-비트스트림에 적용되고,
    디코딩 유닛들의 수는 일정하게 유지되는,
    비디오 디코더.
  238. 제237항에 있어서,
    프레임 시간 간격은,
    상기 비디오 데이터 스트림의 파라미터 세트에서, 시퀀스 파라미터 세트의 HRD 파라미터에서 시그널링되고,
    상기 비디오 디코더는,
    상기 프레임 시간 간격을 사용하여 상기 비디오 데이터 스트림을 디코딩하는,
    비디오 디코더.
  239. 제237항에 있어서,
    프레임 시간 간격은,
    최상위 시간적 레벨에서 2개의 연속적인 액세스 유닛의 제거 시간의 차로서 도출가능하고,
    상기 비디오 디코더는,
    상기 프레임 시간 간격을 사용하여 상기 비디오 데이터 스트림을 디코딩하는,
    비디오 디코더.
  240. 제237항 내지 제239항 중 어느 한 항에 있어서,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛은,
    하나의 비디오 코딩 레이어 네트워크 추상화 레이어 유닛을 포함하는,
    비디오 디코더.
  241. 제236항에 있어서,
    상기 픽처 타이밍 보충 강화 정보 메시지는,
    상기 비디오 데이터 스트림으로부터 도출된 서브-비트스트림에 적용되고,
    다른 수의 디코딩 유닛들이 존재하는,
    비디오 디코더.
  242. 제232항 내지 제241항 중 어느 한 항에 있어서,
    상기 비디오 디코더는,
    (elemental_duration_in_tc_minus1[maxTiD] +1 )에 ClockTicks를 곱하는 것에 따라서 상기 프레임 시간 간격을 도출하는,
    비디오 디코더.
  243. 제236항 내지 제242항 중 어느 한 항에 있어서,
    상기 비디오 데이터 스트림은,
    디코딩 유닛들의 수가 상기 비디오 데이터 스트림에 대해 가변적인지 여부를 지시하는 지시를 포함하고,
    상기 비디오 디코더는,
    상기 지시를 처리하는 것에 의해 상기 비디오 데이터 스트림을 디코딩하는,
    비디오 디코더.
  244. 제226항 내지 제242항 중 어느 한 항에 있어서,
    상기 비디오 데이터 스트림은,
    디코딩 유닛들의 수가 상기 비디오 데이터 스트림에 대해 가변적인지 여부를 지시하는 지시를 포함하지 않는,
    비디오 디코더.
  245. 제244항에 있어서,
    액세스 유닛 내의 상기 디코딩 유닛들의 수는,
    프레임 시간 간격 및 공통 지연 증분에 의존하는,
    비디오 디코더.
  246. 제232항에 있어서,
    상기 비디오 데이터 스트림은,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들 중 디코딩 유닛에 대한 디코딩 유닛 정보 보충 강화 정보 메시지를 포함하고,
    상기 디코딩 유닛에 대한 상기 디코딩 유닛 정보 보충 강화 정보 메시지는,
    상기 디코딩 유닛에 대한 상기 델타 시간 정보를 포함하고,
    상기 비디오 디코더는,
    상기 디코딩 유닛에 대한 상기 델타 시간 정보를 사용하여 상기 비디오 데이터 스트림을 디코딩하는,
    비디오 디코더.
  247. 제232항 내지 제246항 중 어느 한 항에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림의 시퀀스 파라미터 세트 또는 비디오 파라미터 세트의 최소 픽처 지속기간 플래그를 포함하고,
    상기 최소 픽처 지속기간 플래그는,
    일정한 프레임레이트가 없는 경우, 프레임 시간 간격 정보가 존재하는지 여부를 지시하는,
    비디오 디코더.
  248. 비디오를 비디오 데이터 스트림으로 인코딩하고, 상기 비디오를 디코딩하는 시스템에 있어서,
    상기 시스템은:
    제216항 내지 제231항 중 어느 한 항에 따른 비디오 인코더; 및
    제232항 내지 제247항 중 어느 한 항에 따른 비디오 디코더; 및
    상기 비디오 인코더는,
    상기 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 상기 비디오를 포함하도록 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하고,
    상기 비디오 디코더는,
    상기 비디오 데이터 스트림을 수신하고, 상기 비디오를 디코딩하기 위해 상기 비디오 데이터 스트림을 디코딩하는,
    시스템.
  249. 비디오 데이터 스트림이 상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하도록, 상기 비디오를 상기 비디오 데이터 스트림으로 인코딩하는 방법에 있어서,
    상기 방법은,
    상기 비디오 데이터 스트림이 복수의 액세스 유닛들을 포함하도록, 상기 비디오 데이터 스트림을 생성하는 단계를 포함하고,
    상기 방법은,
    상기 비디오 데이터 스트림이, 상기 복수의 액세스 유닛들 중 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 포함하도록 상기 비디오 데이터 스트림을 생성하는 단계를 포함하고,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛에 대한 디코딩 유닛 제거 시간은,
    상기 액세스 유닛에 대한 액세스 유닛 제거 시간 및 상기 디코딩 유닛에 대한 상기 델타 시간 정보에 의존하는,
    방법.
  250. 비디오 데이터 스트림을 입력 비트스트림으로서 수신하는 방법에 있어서,
    상기 비디오 데이터 스트림은,
    상기 비디오 데이터 스트림에 인코딩된 비디오를 포함하고,
    상기 비디오 데이터 스트림은,
    복수의 액세스 유닛들을 포함하고,
    상기 방법은,
    상기 비디오를 디코딩하기 위해 상기 비디오 데이터 스트림을 디코딩하는 단계를 포함하고,
    상기 비디오 데이터 스트림은,
    상기 복수의 액세스 유닛들 중 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 델타 시간 정보를 포함하고,
    상기 액세스 유닛의 상기 2개 이상의 디코딩 유닛들의 각각의 디코딩 유닛에 대한 디코딩 유닛 제거 시간은,
    상기 액세스 유닛에 대한 액세스 유닛 제거 시간 및 상기 디코딩 유닛에 대한 상기 델타 시간 정보에 의존하는,
    상기 방법은,
    상기 액세스 유닛의 2개 이상의 디코딩 유닛들 각각에 대한 상기 델타 시간 정보를 사용하여 상기 비디오 데이터 스트림을 디코딩하는 단계를 포함하는,
    방법.
  251. 컴퓨터 또는 신호 프로세서에서 실행되는 경우 제249항 또는 제250항의 방법을 구현하기 위한 컴퓨터 프로그램.
KR1020227020745A 2019-12-20 2020-12-18 비디오 데이터 스트림, 비디오 인코더, hrd 타이밍 픽스를 위한 장치 및 방법, 확장가능하고 병합가능한 비트스트림들을 위한 추가 기능들 KR20220113400A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP19218926 2019-12-20
EP19218926.4 2019-12-20
PCT/EP2020/087013 WO2021123159A1 (en) 2019-12-20 2020-12-18 Video data stream, video encoder, apparatus and methods for hrd timing fixes, and further additions for scalable and mergeable bitstreams

Publications (1)

Publication Number Publication Date
KR20220113400A true KR20220113400A (ko) 2022-08-12

Family

ID=69005360

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227020745A KR20220113400A (ko) 2019-12-20 2020-12-18 비디오 데이터 스트림, 비디오 인코더, hrd 타이밍 픽스를 위한 장치 및 방법, 확장가능하고 병합가능한 비트스트림들을 위한 추가 기능들

Country Status (9)

Country Link
US (1) US20230037902A1 (ko)
EP (1) EP4078960A1 (ko)
JP (1) JP2023506879A (ko)
KR (1) KR20220113400A (ko)
CN (1) CN114788281A (ko)
AU (1) AU2020406151A1 (ko)
CA (1) CA3164491A1 (ko)
TW (1) TWI808365B (ko)
WO (1) WO2021123159A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4336472A1 (en) 2022-09-07 2024-03-13 Hyundai Mobis Co., Ltd. Apparatus for managing vehicle

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021236903A1 (en) 2020-05-21 2021-11-25 Bytedance Inc. Signaling of gradual decoding refresh and reference picture lists
KR20230015391A (ko) 2020-05-22 2023-01-31 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 서브-비트스트림 추출에서 코딩된 비디오의 핸들링
CN115668942A (zh) 2020-05-22 2023-01-31 Ge视频压缩有限责任公司 用于实现高级视频编码概念的视频编码器、视频解码器、编码和解码方法以及视频数据流
CN115668949A (zh) * 2020-05-26 2023-01-31 字节跳动有限公司 编解码视频中的帧间层参考图片的标识
KR20230019847A (ko) 2020-06-08 2023-02-09 바이트댄스 아이엔씨 비디오 픽처에서 서브픽처 수에 대한 제약들
WO2021252541A1 (en) 2020-06-09 2021-12-16 Bytedance Inc. Signaling non-scalable-bested hypothetical reference video decoder information
CN115769571A (zh) 2020-06-17 2023-03-07 字节跳动有限公司 视频编解码中的解码的图片缓冲器管理和子图片
EP4205399A4 (en) 2020-09-25 2024-03-06 Beijing Bytedance Network Tech Co Ltd MINING OF SECONDARY BIT STREAMS
KR20240032899A (ko) * 2021-07-03 2024-03-12 엘지전자 주식회사 포인트 클라우드 데이터의 전송 장치와 이 전송 장치에서 수행되는 방법 및, 포인트 클라우드 데이터의 수신 장치와 이 수신 장치에서 수행되는 방법
WO2023090906A1 (ko) * 2021-11-17 2023-05-25 엘지전자 주식회사 포인트 클라우드 데이터의 전송 장치와 이 전송 장치에서 수행되는 방법 및, 포인트 클라우드 데이터의 수신 장치와 이 수신 장치에서 수행되는 방법
WO2023113443A1 (ko) * 2021-12-13 2023-06-22 엘지전자 주식회사 포인트 클라우드 데이터의 전송 장치와 이 전송 장치에서 수행되는 방법 및, 포인트 클라우드 데이터의 수신 장치와 이 수신 장치에서 수행되는 방법
WO2023113405A1 (ko) * 2021-12-13 2023-06-22 엘지전자 주식회사 포인트 클라우드 데이터의 전송 장치와 이 전송 장치에서 수행되는 방법 및, 포인트 클라우드 데이터의 수신 장치와 이 수신 장치에서 수행되는 방법
WO2023113417A1 (ko) * 2021-12-14 2023-06-22 엘지전자 주식회사 포인트 클라우드 데이터의 전송 장치와 이 전송 장치에서 수행되는 방법 및, 포인트 클라우드 데이터의 수신 장치와 이 수신 장치에서 수행되는 방법
WO2023113418A1 (ko) * 2021-12-15 2023-06-22 엘지전자 주식회사 포인트 클라우드 데이터의 전송 장치와 이 전송 장치에서 수행되는 방법 및, 포인트 클라우드 데이터의 수신 장치와 이 수신 장치에서 수행되는 방법
WO2023132605A1 (ko) * 2022-01-04 2023-07-13 엘지전자 주식회사 포인트 클라우드 데이터의 전송 장치와 이 전송 장치에서 수행되는 방법 및, 포인트 클라우드 데이터의 수신 장치와 이 수신 장치에서 수행되는 방법
WO2023136597A1 (ko) * 2022-01-11 2023-07-20 엘지전자 주식회사 포인트 클라우드 데이터의 전송 장치와 이 전송 장치에서 수행되는 방법 및, 포인트 클라우드 데이터의 수신 장치와 이 수신 장치에서 수행되는 방법
WO2023200291A1 (ko) * 2022-04-14 2023-10-19 엘지전자 주식회사 포인트 클라우드 데이터의 전송 장치와 이 전송 장치에서 수행되는 방법 및, 포인트 클라우드 데이터의 수신 장치와 이 수신 장치에서 수행되는 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015009693A1 (en) * 2013-07-15 2015-01-22 Sony Corporation Layer based hrd buffer management for scalable hevc
WO2015056179A1 (en) * 2013-10-15 2015-04-23 Nokia Technologies Oy Video encoding and decoding using syntax element
US10284858B2 (en) * 2013-10-15 2019-05-07 Qualcomm Incorporated Support of multi-mode extraction for multi-layer video codecs
WO2015194179A1 (en) * 2014-06-17 2015-12-23 Sharp Kabushiki Kaisha Bitstream partitions operation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4336472A1 (en) 2022-09-07 2024-03-13 Hyundai Mobis Co., Ltd. Apparatus for managing vehicle

Also Published As

Publication number Publication date
TWI808365B (zh) 2023-07-11
WO2021123159A1 (en) 2021-06-24
JP2023506879A (ja) 2023-02-20
US20230037902A1 (en) 2023-02-09
AU2020406151A1 (en) 2022-08-11
EP4078960A1 (en) 2022-10-26
CN114788281A (zh) 2022-07-22
CA3164491A1 (en) 2021-06-24
TW202133623A (zh) 2021-09-01

Similar Documents

Publication Publication Date Title
KR20220113400A (ko) 비디오 데이터 스트림, 비디오 인코더, hrd 타이밍 픽스를 위한 장치 및 방법, 확장가능하고 병합가능한 비트스트림들을 위한 추가 기능들
CN106464881B (zh) 块自适应颜色空间转换译码的方法和装置
US10687079B2 (en) Constrained depth intra mode coding for 3D video coding
CN105934948B (zh) 解码和编码视频数据的方法和装置及计算机可读存储介质
CN106464918B (zh) 用信号表示用于位流分区的hrd参数
KR101881239B1 (ko) 멀티-계층 비디오 코덱들에 대한 레벨 정의들
JP2017517185A (ja) マルチレイヤコーディングにおける適合ウィンドウ情報
JP6752723B2 (ja) マルチレイヤコーデックのためのピクチャ順序カウントリセット
US20230345022A1 (en) Video Encoder, Video Decoder, Methods for Encoding and Decoding and Video Data Stream for Realizing Advanced Video Coding Concepts
CN114556933A (zh) 基于调色板转义编码的图像或视频编码
KR20210132009A (ko) 유연한 크기의 화상 파티션에 대한 복잡도가 처리된 인코더 및 디코더, 인코딩 방법 및 디코딩 방법
US20230095686A1 (en) Video data stream, video encoder, apparatus and methods for a hypothetical reference decoder and for output layer sets
US11909957B2 (en) Encoder and decoder, encoding method and decoding method for reference picture resampling extensions
OA21017A (en) Video encoder, video decoder, methods for encoding and decoding and video data stream for realizing advanced video coding concepts.
WO2020249530A1 (en) Layered video data stream