KR20220160576A - 비디오 코딩에서의 슬라이스 타입 - Google Patents

비디오 코딩에서의 슬라이스 타입 Download PDF

Info

Publication number
KR20220160576A
KR20220160576A KR1020227032740A KR20227032740A KR20220160576A KR 20220160576 A KR20220160576 A KR 20220160576A KR 1020227032740 A KR1020227032740 A KR 1020227032740A KR 20227032740 A KR20227032740 A KR 20227032740A KR 20220160576 A KR20220160576 A KR 20220160576A
Authority
KR
South Korea
Prior art keywords
video
picture
slice
bitstream
unit
Prior art date
Application number
KR1020227032740A
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 KR20220160576A publication Critical patent/KR20220160576A/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/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/167Position within a video image, e.g. region of interest [ROI]
    • 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/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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • 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/184Methods 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 bits, e.g. of the compressed video stream
    • 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/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet

Landscapes

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

Abstract

비디오 프로세싱 방법 및 장치가 기재된다. 비디오 프로세싱은 비디오 인코딩, 비디오 디코딩 또는 비디오 트랜스코딩을 포함할 수 있다. 하나의 예시적인 비디오 프로세싱 방법은 하나 이상의 슬라이스를 포함하는 하나 이상의 픽처를 포함하는 비디오 및 상기 비디오의 코딩된 표현 간의 변환을 수행하는 단계를 포함하고, 코딩된 표현은, 코딩된 표현 내의 필드의 조건이 슬라이스 타입에 대한 제약 또는 슬라이스 타입이 비디오 슬라이스에 대한 코딩된 표현에 포함되는지를 제어함을 명시하는 포맷 규칙을 따르고, 필드는 일반 제약 플래그, 네트워크 추상화 레이어 유닛 타입 또는 비디오 슬라이스가 액세스 유닛의 제1 비디오 픽처 내에 있는지를 포함한다.

Description

비디오 코딩에서의 슬라이스 타입
관련 출원의 상호 참조
파리 협약에 따른 적용가능한 특허법 및/또는 규칙에 따라, 본 출원은 2020년 3월 30일에 제출된 미국 가출원 번호 63/002,064에 대한 우선권과 혜택을 적시에 청구하기 위하여 만들어졌다. 법 하의 모든 목적을 위해, 상술한 출원의 전체 개시물은 본 출원의 개시의 일부로서 참고로 통합된다.
본 문서는 이미지 및 비디오 프로세싱에 관한 것이다.
디지털 비디오는 인터넷 및 다른 디지털 통신 네트워크 상에서 가장 큰 대역폭 사용을 차지한다. 비디오를 수신하고 디스플레이할 수 있는 연결된 사용자 장치의 수가 증가함에 따라, 디지털 비디오 사용에 대한 대역폭 요구가 계속 증가할 것으로 기대된다.
본 문서는 코딩된 표현의 디코딩에 유용한 제어 정보를 이용하여 비디오의 코딩된 표현을 프로세싱하기 위한 비디오 인코더 및 디코더에 의해 사용될 수 있는 기술을 개시한다.
일 예시적인 양태에서, 비디오 프로세싱 방법이 개시된다. 방법은 하나 이상의 슬라이스를 포함하는 하나 이상의 픽처를 포함하는 비디오 및 상기 비디오의 비트스트림 간의 변환을 수행하는 단계를 포함하고, 상기 비트스트림은 포맷 규칙을 따르고, 상기 포맷 규칙은 상기 하나 이상의 슬라이스의 슬라이스 타입이 상기 비트스트림에 표시되는지 또는 어떻게 표시되는지가 조건에 의존함을 명시하고, 상기 조건은 일반 제약 플래그, 네트워크 추상화 레이어 유닛 타입 또는 상기 슬라이스가 액세스 유닛의 제1 픽처 내에 있는지에 기초한다.
다른 예시적인 양태에서, 비디오 프로세싱 방법이 개시된다. 방법은 다수의 슬라이스를 포함하는 픽처를 포함하는 비디오와 상기 비디오의 비트스트림 간의 변환을 수행하는 단계를 포함하고, 상기 비트스트림은, 픽처 헤더 내의 플래그가 픽처 내의 모든 슬라이스의 적응적 루프 필터링의 적용가능성을 제어함을 명시하는 포맷 규칙에 따른다.
또 다른 예시적인 양태에서, 비디오 프로세싱 방법이 개시된다. 방법은 포맷 규칙에 따라 하나 이상의 슬라이스를 포함하는 하나 이상의 픽처를 포함하는 비디오와 상기 비디오의 비트스트림 간의 변환을 수행하는 단계(1002)를 포함하고, 포맷 규칙은 상기 비디오와 연관된 파라미터 세트의 반복 시간을 명시한다.
또 다른 예시적인 양태에서, 비디오 프로세싱 방법이 개시된다. 방법은 포맷 규칙에 따라 비디오 유닛 내의 픽처를 포함하는 비디오와 상기 비디오의 비트스트림 간의 변환을 수행하는 단계를 포함하고, 상기 포맷 규칙은, 상기 픽처의 폭이 상기 비디오 유닛 내의 최대 허용 픽처 폭과 동일하고 상기 픽처 높이가 상기 비디오 유닛 내의 최대 허용 픽처 높이와 동일한 것에 응답하여, 상기 픽처에 대응하는 픽처 파라미터 세트 내의 적합성 윈도우 플래그는 0 값으로 설정됨을 명시한다.
또 다른 예시적인 양태에서, 비디오 프로세싱 방법이 개시된다. 방법은 하나 이상의 슬라이스를 포함하는 하나 이상의 픽처를 포함하는 비디오와 상기 비디오의 코딩된 표현 간의 변환을 수행하는 단계를 포함하고, 상기 코딩된 표현은 코딩된 표현 내의 필드의 조건이 슬라이스 타입에 대한 제약 또는 슬라이스 타입이 비디오 슬라이스에 대한 코딩된 표현에 포함되는지를 제어함을 명시하는 포맷 규칙을 따르고, 필드는 일반 제약 플래그, 네트워크 추상화 레이어 유닛 타입 또는 비디오 슬라이스가 액세스 유닛의 제1 비디오 픽처 내에 있는지를 포함한다.
또 다른 예시적인 양태에서, 비디오 프로세싱 방법이 개시된다. 방법은 하나 이상의 슬라이스를 포함하는 하나 이상의 픽처를 포함하는 비디오와 상기 비디오의 코딩된 표현 간의 변환을 수행하는 단계를 포함하고, 상기 코딩된 표현은, 비디오 픽처의 픽처 헤더 내의 플래그의 값에 기초하여 비디오 픽처 내의 모든 슬라이스의 적응적 루프 필터링을 디스에이블하도록 명시하는 포맷 규칙을 따른다.
또 다른 예시적인 양태에서, 비디오 프로세싱 방법이 개시된다. 방법은 하나 이상의 슬라이스를 포함하는 하나 이상의 픽처를 포함하는 비디오와 상기 비디오의 코딩된 표현 간의 변환을 수행하는 단계를 포함하고, 상기 코딩된 표현은, 현재 픽처의 높이 및 폭이 상기 비디오에서의 최대 높이 및 최대 폭과 동일한 경우 적합성 윈도우 플래그가 디스에이블 모드로 설정됨을 명시하는 포맷 규칙을 따른다.
또 다른 예시적인 양태에서, 비디오 프로세싱 방법이 개시된다. 방법은 하나 이상의 슬라이스를 포함하는 하나 이상의 픽처를 포함하는 비디오와 상기 비디오의 코딩된 표현 간의 변환을 수행하는 단계를 포함하고, 상기 코딩된 표현은, 파라미터 세트에 대한 반복 시간을 명시하는 포맷 규칙을 따른다.
또 다른 예시적인 양태에서, 비디오 인코더 장치가 개시된다. 비디오 인코더는 전술한 방법을 구현하도록 구성된 프로세서를 포함한다.
또 다른 예시적인 양태에서, 비디오 디코더 장치가 개시된다. 비디오 디코더는 전술한 방법을 구현하도록 구성된 프로세서를 포함한다.
또 다른 예시적인 양태에서, 코드가 저장된 컴퓨터 판독가능 매체가 개시된다. 코드는 프로세서 실행 가능 코드의 형태로 여기에 설명된 방법 중 하나를 구현한다.
이들 및 기타 특징은 본 문서 전체에 걸쳐 설명되어 있다.
도 1는 예시적인 비디오 프로세싱 시스템의 블록도.
도 2는 비디오 프로세싱 장치의 블록도.
도 3은 예시적인 비디오 프로세싱 방법의 플로우챠트.
도 4는 본 개시의 일부 실시예에 따른 비디오 코딩 시스템을 나타내는 블록도.
도 5는 본 개시의 일부 실시예에 따른 인코더를 나타내는 블록도.
도 6은 본 개시의 일부 실시예에 따른 디코더를 나타내는 블록도.
도 7은 적응적 루프 필터(ALF) 필터 형상(크로마: 5x5 다이아몬드, 루마: 7x7 다이아몬드)의 예를 나타내는 도면.
도 8은 ALF 및 CC-ALF 다이어그램의 예를 나타내는 도면.
도 9 내지 11은 예시적인 비디오 프로세싱 방법의 플로우챠트.
섹션 표제는 이해의 편의를 위해 본 문서에서 사용되며, 각 섹션에 개시된 기술 및 실시예의 적용가능성은 그 섹션에만 제한되지 않는다. 또한, H.266 용어는 단지 이해의 편의를 위해 일부 설명에서 사용되며 개시된 기술의 범위를 제한하기 위한 것이 아니다.
1. 도입
이 문서는 비디오 코딩 기술에 관한 것이다. 구체적으로, VPS, SPS, PPS, APS 및 DCI NAL 유닛을 포함한 일부 비-VCL NAL 유닛의 반복 뿐만 아니라 슬라이스 타입, ALF 및 적합성 윈도우의 시그널링에 대한 개선에 관한 것이다. 아이디어는, 멀티레이어 비디오 코딩, 예를 들어 개발중인 VVC(Versatile Video Coding)을 지원하는 임의의 비디오 코딩 표준 또는 비표준 비디오 코덱에 개별적으로 또는 다양한 조합으로 적용될 수 있다.
2. 약어
ALF: 적응적 루프 필터(Adaptive Loop Filter)
APS 적응 파라미터 세트(Adaptation Parameter Set)
AU 액세스 유닛(Access Unit)
AUD 액세스 유닛 구분자(Access Unit Delimiter)
AVC 어드밴스드 비디오 코딩(Advanced Video Coding)
CLVS 코딩된 층 비디오 시퀀스(Coded Layer Video Sequence)
CPB 코딩된 픽처 버퍼(Coded Picture Buffer)
CRA 클린 랜덤 액세스(Clean Random Access)
CTU 코딩 트리 유닛(Coding Tree Unit)
CVS 코딩된 비디오 시퀀스(Coded Video Sequence)
DCI 디코딩 캐퍼빌러티 정보(Decoding Capability Information)
DPB 디코딩된 픽처 버퍼(Decoded Picture Buffer)
DU 디코딩 유닛(Decoding Unit)
EOB 비트스트림의 끝(End Of Bitstream)
EOS 시퀀스의 끝(End Of Sequence)
GDR 점진적 디코딩 리프레쉬(Gradual Decoding Refresh)
HEVC 고효율 비디오 코딩(High Efficiency Video Coding)
HRD 가상 참조 비디오(Hypothetical Reference Decoder)
IDR 즉각적인 디코딩 리프레쉬(Instantaneous Decoding Refresh)
JEM 조인트 익스플로레이션 모델(Joint Exploration Model)
LMCS 루마 매핑 및 크로마 스케일링 (Luma Mapping with Chroma Scaling)
MCTS 움직임 제한 타일 세트(Motion-Constrained Tile Sets)
NAL 네트워크 추상화 계층(Network Abstraction Layer)
OLS 출력 계층 세트(Output Layer Set)
PH 픽처 헤더(Picture Header)
PPS 픽처 파라미터 세트(Picture Parameter Set)
PTL 프로파일, 티어, 및 레벨(Profile, Tier and Level)
PU 픽처 유닛(Picture Unit)
RADL 랜덤 액세스 디코더블 리딩(픽처)(Random Access Decodable Leading (Picture))
RAP 랜덤 액세스 포인트(Random Access Point)
RASL 랜덤 액세스 스킵 리딩(픽처)(Random Access Skipped Leading (Picture))
RBSP 로 바이트 시퀀스 페이로드(Raw Byte Sequence Payload)
RPL 참조 픽처 리스트(Reference Picture List)
SAO 샘플 적응 오프셋(Sample Adaptive Offset)
SEI 추가 인핸스먼트 정보(Supplemental Enhancement Information)
SPS 시퀀스 파라미터 세트(Sequence Parameter Set)
STSA 단계적 시간 서브레이어 액세스(Step-wise Temporal Sublayer Access)
SVC 확장가능한 비디오 코딩(Scalable Video Coding)
VCL 비디오 코딩 계층(Video Coding Layer)
VPS 비디오 파라미터 세트(Video Parameter Set)
VTM VVS 테스트 모델(VVC Test Model)
VUI 비디오 사용성 정보(Video Usability Information)
VVC 다목적 비디오 코딩(Versatile Video Coding)
3. 초기 논의
비디오 코딩 표준은 주로 잘 알려진 ITU-T 및 ISO/IEC 표준의 개발을 통해 발전해왔다. ITU-T는 H.261 및 H.263을 제작하였고, ISO/IEC는 MPEG-1 및 MPEG-4 Visual을 제작하였고, 이들 두 조직은 공동으로 H.262/MPEG-2 Video 및 H.264/MPEG-4 Advanced Video Coding (AVC) 및 H.265/HEVC 표준을 제작하였다. H.262 이후, 비디오 코딩 표준은 시간 예측 및 변환 코딩이 이용되는 하이브리드 비디오 코딩 구조에 기초한다. HEVC 이후의 미래의 비디오 코딩 기술을 탐구하기 위하여, 2015년에 VCEG 및 MPEG가 공동으로 JVET(Joint Video Exploration Team)를 설립하였다. 그 후, 많은 새로운 방법이 JVET에 의해 채택되어 왔고, JEM(Joint Exploration Model)이라는 참조 소프트웨어에 적용되었다. JVET 회의는 분기마다 1회 동시 개최되며, 새로운 코딩 표준은 HEVC 대비 50% 비트레이트 감소를 목표로 하고 있다. 새로운 비디오 코딩 표준은 2018년 4월 JVET 회의에서 공식적으로 VVC(Versatile Video Coding)로 명명되었으며, 그 때 VVC 테스트 모델(VTM)의 첫 번째 버전이 출시되었다. VVC 표준화에 기여하는 지속적인 노력이 있기 때문에 모든 JVET 회의에서 새로운 코딩 기술이 VVC 표준에 채택되고 있다. 그런 다음 VVC 작업 초안 및 테스트 모델 VTM이 모든 회의 후에 업데이트된다. VVC 프로젝트는 현재 2020년 7월 회의에서의 기술 완료(FDIS)를 목표로 하고 있다.
3.1. 파라미터 세트
AVC, HEVC 및 VVC는 파라미터 세트를 나타낸다. 파라미터 세트의 타입은 SPS, PPS, APS 및 VPS를 포함한다. SPS와 PPS는 AVC, HEVC, VVC 모두에서 지원된다. VPS는 HEVC 이후 도입되었으며 HEVC와 VVC 모두에 포함된다. APS는 AVC 또는 HEVC에 포함되지 않았지만 최신 VVC 초안 텍스트에는 포함되어 있다.
SPS는 시퀀스 레벨 헤더 정보를 전달하도록 설계되었으며, PPS는 드물게 변경되는 픽처 레벨 헤더 정보를 전달하도록 설계되었다. SPS 및 PPS를 사용하면 드물게 변경되는 정보가 각 시퀀스 또는 픽처에 대해 반복될 필요가 없으므로 이 정보의 중복 시그널링을 피할 수 있다. 또한, SPS 및 PPS를 사용하면 중요한 헤더 정보의 대역 외 전송이 가능하므로, 중복 전송의 필요성을 피할 뿐만 아니라 오류 복원력도 향상된다.
VPS는 멀티-레이어 비트스트림 내의 모든 레이어에 공통적인 시퀀스 레벨 헤더 정보를 전달하기 위해 도입되었다.
APS는 코딩하는 데 꽤 많은 비트가 필요하는 픽처 레벨 또는 슬라이스 레벨 정보를 전달하기 위해 도입되었으며, 다수 픽처에 의해 공유할 수 있고, 시퀀스에서 상당히 다양한 변형이 있을 수 있다.
3.2. VVC에서의 슬라이스 헤더 및 픽처 헤더
HEVC와 유사하게, VVC에서의 슬라이스 헤더는 특정 슬라이스에 대한 정보를 전달한다. 이것은 슬라이스 어드레스, 슬라이스 타입, 슬라이스 QP, POC(picture order count) LSB(최하위 비트), RPS 및 RPL 정보, 가중 예측 파라미터, 루프 필터링 파라미터, 타일 및 WPP의 엔트리 오프셋 등을 포함한다.
VVC는 특정 픽처에 대한 헤더 파라미터를 포함하는 픽처 헤더(PH)를 도입했다. 각 픽처는 하나 또는 단 하나의 PH를 가져야 한다. PH는, 기본적으로 PH가 도입되지 않은 경우 슬라이스 헤더에 있었을 것이지만 각각이 픽처의 모든 슬라이스에 대해 동일한 값을 갖는 이들 파라미터를 전달한다. 이들은 IRAP/GDR 픽처 표시, 인터/인트라 슬라이스 허용 플래그, POC LSB 및 선택적으로 POC MSB, RPL에 대한 정보, 디블로킹, SAO, ALF, QP 델타 및 가중 예측, 코딩 블록 분할 정보, 가상 경계, 동일 위치 픽처 정보 등을 포함한다. 픽처의 전체 시퀀스의 각 픽처는 하나의 슬라이스만을 포함하는 경우가 종종 발생한다. 그러한 경우에 각 픽처에 대해 적어도 2개의 NAL 유닛을 갖지 않도록 하기 위해, PH 신택스 구조는 PH NAL 유닛 또는 슬라이스 헤더에 포함되도록 허용된다.
VVC에서, 시간적 모션 벡터 예측에 사용되는 동일 위치(collocated) 픽처에 대한 정보는 픽처 헤더 또는 슬라이스 헤더에 시그널링된다.
3.3 시퀀스 내의 픽처 해상도 변화
AVC 및 HEVC에서, 새로운 SPS를 사용하는 새로운 시퀀스가 시작되지 않는 한, IRAP 픽처로 픽처의 공간적 해상도는 변경될 수 없다. VVC는 항상 인트라 코딩되는 IRAP 픽처를 인코딩하지 않고 한 위치에서 시퀀스 내의 픽처 해상도 변경을 가능하게 한다. 이 특징(feature)은 참조 픽처가 디코딩되는 현재 픽처와 다른 해상도를 가질 때 인터 예측에 사용되는 참조 픽처의 리샘플링을 필요로 하기 때문에 때때로 참조 픽처 리샘플링(RPR)이라고 한다.
스케일링 비율은 1/2 이상(참조 픽처에서 현재 픽처로의 다운샘플링 2배), 8(업샘플링 8배) 이하로 제한된다. 참조 픽처와 현재 픽처 간의 다양한 스케일링 비율을 처리하기 위해 주파수 컷오프가 다른 3개의 리샘플링 필터 세트가 지정된다. 1/2 ~ 1/1.75, 1/1.75 ~ 1/1.25, 1/1.25 ~ 8 범위의 스케일링 비율에 대해 3개의 리샘플링 필터 세트가 각각 적용된다. 각 리샘플링 필터 세트에는 루마에 대해 16개의 위상 및 크로마에 대해 32개의 위상을 가지며, 이는 모션 보상 보간 필터의 경우와 동일하다. 실제로 일반적인 MC 보간 과정은 1/1.25 ~ 8 범위의 스케일링 비율을 갖는 리샘플링 프로세스의 특수한 경우이다. 수평 및 수직 스케일링 비율은 픽처의 폭과 높이, 및 참조 픽처 및 현재 픽처에 대하여 명시된 왼쪽, 오른쪽, 위, 아래 스케일링 오프셋을 기준으로 도출된다.
HEVC와 다른 이 특징의 지원을 위한 VVC 설계의 다른 측면은 다음을 포함한다: i) 픽처 해상도 및 대응하는 적합성 윈도우(conformance window)는 SPS 대신에 PPS에서 시그널링되는 반면, SPS에서는 최대 픽처 해상도가 시그널링된다. ii) 단일 레이어 비트스트림의 경우, 각 픽처 저장소(하나의 디코딩된 픽처를 저장하기 위한 DPB의 슬롯)는 최대 픽처 해상도를 갖는 디코딩된 픽처를 저장하는 데 필요한 버퍼 크기를 차지한다.
3.4. 적응적 루프 필터(ALF)
두 개의 다이아몬드 필터 형상(도 7 참조)이 블록 기반 ALF에 사용된다. 루마 컴포넌트에 대하여 7Х7 다이아몬드 형상이 적용되고, 크로마 컴포넌트에 대하여 5Х5 다이아몬드 형상이 적용된다. 로컬 그래디언트의 방향과 액티비티에 기초하여, 각 4Х4 블록에 대해 최대 25개의 필터 중 하나가 선택된다. 픽처의 각 4Х4 블록은 방향성과 액티비티에 기초하여 분류된다. 각 4Х4 블록을 필터링하기 전에, 해당 블록에 대해 계산된 그래디언트 값에 따라 회전 또는 대각선 및 수직 플립(flip)와 같은 간단한 기하학적 변환이 필터 계수에 적용될 수 있다. 이는 필터 지원 영역의 샘플에 이러한 변환을 적용하는 것과 같다. 아이디어는 방향성을 정렬함으로써 ALF가 적용되는 다른 블록을 더 유사하게 만드는 것이다. 크로마 컴포넌트에는 블록 기반 분류가 적용되지 않는다.
ALF 필터 파라미터는 APS(Adaptation Parameter Set)에서 시그널링된다. 하나의 APS에서, 최대 25세트의 루마 필터 계수 및 클리핑 값 인덱스와 최대 8세트의 크로마 필터 계수 및 클리핑 값 인덱스가 시그널링될 수 있다. 비트 오버헤드를 줄이기 위해, 루마 컴포넌트에 대한 상이한 분류의 필터 계수가 머지(merge)될 수 있다. 픽처 또는 슬라이스 헤더에서 최대 7개 APS의 ID가 시그널링되어 현재 픽처 또는 슬라이스에 사용되는 루마 필터 세트를 나타낼 수 있다. 필터링 프로세스는 CTB 레벨에서 추가로 제어된다. 루마 CTB는 16개의 고정 필터 세트와 APS에서 시그널링되는 필터 세트 중에서 하나의 필터 세트를 선택할 수 있다. 크로마 컴포넌트의 경우, APS ID는 현재 픽처 또는 슬라이스에 사용되는 크로마 필터 세트를 나타내기 위해 픽처 또는 슬라이스 헤더에서 시그널링된다. CTB 레벨에서, APS에 설정된 크로마 필터가 1보다 많으면, 각 크로마 CTB에 대해 필터 인덱스가 시그널링된다. CTB에 대해 ALF가 인에이블되면, CTB 내의 각 샘플에 대해, 인접 샘플과 현재 샘플 사이의 차이를 클립하기 위해 적용되는 클리핑 동작으로, 시그널링된 가중치를 갖는 다이아몬드 형상 필터가 수행된다. 클리핑 동작은, 현재 샘플 값과 너무 다른 인접 샘플 값의 영향을 줄임으로써 ALF를 보다 효율적으로 만들기 위해 비선형성을 도입한다.
CC-ALF(크로스-컴포넌트 적응적 루프 필터)는 이전에 설명된 ALF 위에 각 크로마 컴포넌트를 추가로 향상시킬 수 있다. CC-ALF의 목표는 루마 샘플 값을 사용하여 각 크로마 컴포넌트를 리파인하는 것이다. 이것은, 다이아몬드 형상의 고역 통과 선형 필터를 적용한 다음 크로마 리파인먼트를 위해 이 필터링 동작의 출력을 사용함으로써 달성된다. 도 8은 다른 루프 필터에 대한 CC-ALF 프로세스의 시스템 레벨 다이어그램을 제공한다. 도 8에 도시된 바와 같이. 전체 루프 필터 프로세스의 추가 단계를 피하기 위해 루마 ALF와 동일한 입력을 사용하는 CC-ALF가 도시된다.
4. 개시된 솔루션에 의해 해결되는 기술적 문제
(JVET-Q2001-vE/v15의) 최신의 VVC 텍스트의 기존 설계는 다음과 같은 문제를 갖는다.
1) slice_type의 값은 다음과 같이 제한된다:
nal_unit_type가 IDR_W_RADL에서 CRA_NUT까지의 범위에 있고 vps_independent_layer_flag[ GeneralLayerIdx[ nuh_layer_id ] ]가 1과 동일하면, slice_type은 2와 동일해야 한다.
그러나, 다음의 2가지 조건하에서, 즉, i) intra_only_constraint_flag가 1과 동일하고 ii) NAL 유닛 타입이 IRAP NAL 유닛 타입이고 현재 픽처가 현재 AU의 제1 픽처이면, slice_type의 값은 또한 2와 동일해야 한다.
2) 다음과 같이 정의된 ph_alf_enabled_flag의 시맨틱은 모호하다.
1과 동일한 ph_alf_enabled_flag 는, 적응적 루프 필터가 PH와 연관된 모든 슬라이스에 대하여 인에이블되고 슬라이스 내의 Y, Cb, 또는 Cr 컬러 컴포넌트에 적용될 수 있음을 나타낸다. 0과 동일한 ph_alf_enabled_flag 는 적응적 루프 필터가 PH와 연관된 하나 이상 또는 모든 슬라이스에 대하여 디스에이블될 수 있음을 나타낸다. 존재하지 않으면, ph_alf_enabled_flag는 0과 동일한 것으로 추론된다.
3) 픽처 폭 및 높이가 PPS에 의해 참조된 SPS에서 시그널링된 최대 픽처 폭 및 높이와 동일한 경우를 포함하여, 적합성 윈도우 파라미터는 항상 PPS에서 시그널링된다. 반면에, 최대 픽처 폭 및 높이를 갖는 적합성 윈도우 파라미터는 또한 SPS에서 시그널링된다. PPS 내의 최대 픽처 폭 및 높이를 갖는 픽처에 대한 적합성 윈도우 파라미터의 시그널링은 중복된다(redundant).
4) 다수의 SEI 메시지의 반복은 PU 또는 DU 내에서 최대 4회로 제한된다. PH, AUD, EOS, 및 EOB NAL 유닛의 반복은 허용되지 않는다. 필러(filler) 데이터 NAL 유닛의 반복은 (예를 들어, 일정한 비트 레이트를 달성하기 위해) 필요한 만큼 허용될 필요가 있다. 그러나, 다른 비-VCL NAL 유닛, 즉, VPS, SPS, PPS, APS, 및 DCI NAL 유닛의 반복 시간에는 제한이 없다.
5. 기술적 솔루션의 리스트
상기와 같은 문제점 및 다른 것을 해결하기 위하여, 아래와 같은 방법들이 개시된다. 발명은 일반적인 개념을 설명하기 위한 예시로 간주되어야 하며 좁은 의미로 해석되어서는 안된다. 또한 이러한 발명은 개별적으로 적용하거나 어떤 방식으로든 결합할 수 있다.
1) 문제 1을 해결하기 위하여, slice_type에 대한 제약 및/또는 slice_type의 시그널링은 일반 제약 플래그/NAL 유닛 타입/현재 픽처가 현재 AU의 제1 픽처인지의 여부에 관련된 조건에 의존할 수 있다.
a. 일 예에서, 조건은 다음을 포함한다:
i. intra_only_constraint_flag가 1과 동일한 경우.
ii. NAL 유닛 타입이 IRAP NAL 유닛 타입이고 현재 픽처가 현재 AU의 제1 픽처인 경우.
iii. 표시(예를 들어, SPS 플래그)가, 인트라 슬라이스만이 픽처(또는 현재 픽처를 포함하는 CLVS 또는 현재 픽처를 포함하는 임의의 다른 픽처 세트)에서 허용됨을 나타내는 경우.
b. slice_type 값에 대한 제약은, 처음 2개의 조건 중의 하나 또는 위의 모든 조건 중의 하나가 참이도록 업데이트될 수 있고, slice_type의 값이 2와 동일한 것이 요구된다.
c. 대안적으로, 처음 2개의 조건 또는 위의 모든 조건 중의 하나가 참인 경우 slice_type의 시그널링이 스킵되고 I 슬라이스(즉, slice_type가 2임)로 추론될 수 있다.
d. 또한, NAL 유닛 타입이 IRAP NAL 유닛 타입이고 현재 레이어가 독립 레이어인 경우, slice_typ의 시그널링도 스킵되고 I 슬라이스로 추론될 수 있다.
2) 문제 2를 해결하기 위하여, 0과 동일한 ph_alf_enabled_flag는 ALF가 현재 픽처의 모든 슬라이스에 대하여 디스에이블됨을 나타냄을 명시할 수 있다.
3) 문제 3을 해결하기 위하여, 픽처 폭 및 높이가 최대 픽처 폭 및 높이일 때 pps_conformance_window_flag의 값이 0이어야 하는 것이 요구될 수 있다.
a. 또한, 픽처 폭 및 높이가 최대 픽처 폭 및 높이이면 PPS 적합성 윈도우 신택스 요소의 값이 SPS에서 시그널링된 것과 동일한 것으로 추론되고 그렇지 않으면 0과 동일한 것으로 추론되는 것을 명시할 수 있다.
4) 문제 4를 해결하기 위하여, 랜덤 액세스와 같은 기능에 영향을 주지 않으면서 VPS, SPS, PPS, APS 및 DCI NAL 유닛의 반복 시간에 대한 약간의 제한을 제공하도록 다음의 제약 중의 하나 이상이 명시될 수 있다:
VPS에 대해
a. vps_video_parameter_set_id의 특정값을 갖는 VPS NAL 유닛이 CVS에 존재하면, VPS NAL 유닛은 CVS의 첫번째 AU에 존재해야 하고, IDR_W_RADL에서 GDR_NUT까지의 범위에서 nal_unit_type를 갖는 적어도 하나의 VCL NAL 유닛을 갖는 임의의 AU에 존재할 수 있고, 임의의 다른 AU에는 존재하지 않아야 한다.
i. 대안적으로, 위의 "IDR_W_RADL에서 GDR_NUT"까지는 "IDR_W_RADL에서 RSV_IRAP_12"까지로 변경된다.
b. PU에서 vps_video_parameter_set_id의 특정 값을 갖는 VPS NAL 유닛의 수는 1보다 크지 않아야 한다.
SPS에 대하여
c. CLVS의 연관된 AU 세트를 디코딩 순서에서 CLVS의 첫번째 픽처를 포함하는 AU에서 시작하여 디코딩 순서에서 CLVS의 마지막 픽처를 포함하는 AU까지의 AU 세트라고 하자.
d. sps_seq_parameter_set_id의 특정 값을 갖는 SPS NAL 유닛이 SPS를 참조하는 CLVS의 연관된 AU 세트 associatedAuSet에 존재하면, SPS NAL 유닛은 associatedAuSet의 첫번째 AU에 존재해야 하고, IDR_W_RADL에서 GDR_NUT까지의 범위에서 nal_unit_type을 갖는 적어도 하나의 VCL NAL 유닛을 갖는 associatedAuSet의 임의의 AU에 존재할 수 있고, 다른 임의의 AU에는 존재하지 않아야 한다.
i. 대안적으로, sps_seq_parameter_set_id의 특정 값을 갖는 SPS NAL 유닛이 CLVS에 존재하면, 이는 CLVS의 첫번째 PU에 존재해야 하고, IDR_W_RADL에서 GDR_NUT까지의 범위 내에서 nal_unit_type을 갖는 적어도 하나의 코딩된 슬라이스 NAL 유닛을 갖는 임의의 PU에 존재할 수 있고, 임의의 다른 PU에는 존재하지 않아야 한다.
ii. 대안적으로, 항목 4.d 또는 4.d.i, "IDR_W_RADL 에서 GDR_NUT"까지는 "IDR_W_RADL에서 RSV_IRAP_12"까지로 변경된다.
e. PU에서 sps_seq_parameter_set_id의 특정 값을 갖는 SPS NAL 유닛의 수는 1보다 크지 않아야 한다.
PPS에 대하여
f. PU에서 pps_pic_parameter_set_id의 특정 값을 갖는 PPS NAL 유닛의 수는 1보다 크지 않아야 한다.
APS에 대하여
g. PU에서 adaptation_parameter_set_id의 특정 값과 aps_params_type의 특정 값을 갖는 APS NAL 유닛의 수는 1보다 크지 않아야 한다.
i. 대안적으로, DU에서 adaptation_parameter_set_id의 특정 값과 aps_params_type의 특정 값을 갖는 APS NAL 유닛의 수는 1보다 크지 않아야 한다.
DCI에 대하여
h. DCI NAL 유닛이 비트스트림에 존재하면, 이는 비트스트림의 첫번째 CVS에 존재해야 한다.
i. DCI NAL 유닛이 CVS에 존재하면, 이는 CVS의 첫번째 AU에 존재해야 하고, IDR_W_RADL에서 GDR_NUT까지의 범위에서 nal_unit_type을 갖는 적어도 하나의 VCL NAL 유닛을 갖는 임의의 AU에 존재할 수 있고, 임의의 다른 AU에는 존재하지 않아야 한다.
j. PU에서의 DCI NAL 유닛의 수는 1보다 크지 않아야 한다.
6. 실시예의 예들 (Embodiment Examples)
아래는 VVC 사양에 적용될 수 있는 섹션 5에 요약된 본 발명의 양태들 중 일부에 대한 몇 가지 예시적인 실시예이다. 변경된 텍스트는 JVET-Q2001-vE/v15의 최신 VVC 텍스트를 기반으로 한다. 추가되거나 수정된 대부분의 관련 부분은 굵은 기울임꼴 로 강조 표시되고 일부 삭제된 부분은 이중 대괄호로 굵은 글꼴 로 강조 표시된다. 본질적으로 사설이거나 본 발명의 일부가 아니므로 강조 표시되지 않은 몇 가지 다른 변경 사항이 있다.
6.1. 제1 실시예
본 실시예는 항목 1에 대한 것이다.
다음의 제약은:
nal_unit_type이 IDR_W_RADL에서 CRA_NUT까지의 범위에 있고 vps_independent_layer_flag[ GeneralLayerIdx[ nuh_layer_id ] ]가 1과 동일하면, slice_type은 2와 동일해야 한다.
다음과 같이 변경된다:
intra_only_constraint_flag가 1과 동일하거나 다음의 조건 모두가 참이면, slice_type의 값은 2와 같아야 한다:
- nal_unit_type의 값이 IDR_W_RADL에서 CRA_NUT까지의 범위에 있다.
- vps_independent_layer_flag[ GeneralLayerIdx[ nuh_layer_id ] ]의 값이 1과 동일하거나 현재 픽처가 현재 AU의 첫번째 픽처이다.
6.2. 제2 실시예
본 실시예는 항목 2에 대한 것이다.
ph_alf_enabled_flag의 시맨틱은 다음과 같이 업데이트되도록 제안된다.:
0과 동일한 ph_alf_enabled_flag는 적응적 루프 필터가 PH와 연관된 [[하나 이상 또는]] 모든 슬라이스에 대하여 디스에이블된다[[될 수 있다]].
6.3. 제3 실시예
본 실시예는 항목 3에 대한 것이다.
7.4.3.4 픽처 파라미터 세트 RBSP 시맨틱
...
1과 동일한 pps_conformance_window_flag는 적합성 크로핑 윈도우 오프셋 파라미터가 PPS에서 다음을 따르는 것을 명시[[표시]]한다. 0과 동일한 pps_conformance_window_flag는 적합성 크로핑 윈도우 오프셋 파라미터가 PPS에 존재하지 않음을 명시[[표시]]한다. pic_width_in_luma_samples이 pic_width_max_in_luma_samples와 동일하고 pic_height_in_luma_samples이 pic_height_max_in_luma_samples와 동일하면, pps_conformance_window_flag의 값은 0과 동일해야 한다.
pps_conf_win_left_offset, pps_conf_win_right_offset, pps_conf_win_top_offset, 및 pps_conf_win_bottom_offset는 디코딩 프로세스에서 출력되는 CLVS의 픽처의 샘플을 출력용 픽처 좌표에서 명시된 직사각형 영역의 관점에서 명시한다.
pps_conformance_window_flag가 0과 동일하면, 다음이 적용된다:
- pic_width_in_luma_samples이 pic_width_max_in_luma_samples와 동일하고 pic_height_in_luma_samples아 pic_height_max_in_luma_samples와 동일하면, pps_conf_win_left_offset, pps_conf_win_right_offset, pps_conf_win_top_offset, 및 pps_conf_win_bottom_offset의 값은 각각 sps_conf_win_left_offset, sps_conf_win_right_offset, sps_conf_win_top_offset, 및 sps_conf_win_bottom_offset과 동일한 것으로 추론된다.
- 그렇지 않으면, pps_conf_win_left_offset, pps_conf_win_right_offset, pps_conf_win_top_offset, 및 pps_conf_win_bottom_offset의 값은 0과 동일한 것으로 추론된다.
적합성 크로핑 윈도우(conformance cropping window)는 SubWidthC * pps_conf_win_left_offset에서 pic_width_in_luma_samples - ( SubWidthC * pps_conf_win_right_offset + 1 )까지의 수평 픽처 좌표 및 SubHeightC * pps_conf_win_top_offset에서 pic_height_in_luma_samples - ( SubHeightC * pps_conf_win_bottom_offset + 1 )까지의 수직 픽처 좌표를 갖는 루마 샘플을 포함한다.
SubWidthC * ( pps_conf_win_left_offset + pps_conf_win_right_offset )의 값은 pic_width_in_luma_samples보다 작아야 하고, SubHeightC * ( pps_conf_win_top_offset + pps_conf_win_bottom_offset )의 값은 pic_height_in_luma_samples보다 작아야 한다.
ChromaArrayType이 0과 같지 않으면, 2개의 크로마 어레이의 해당 명시된 샘플이 픽처 좌표( x / SubWidthC, y / SubHeightC )를 갖는 샘플이고, 여기서, ( x, y )는 명시된 루마 샘플의 픽처 좌표이다.
주 2 - 적합성 크로핑 윈도우 오프셋 파라미터는 출력에만 적용된다. 모든 내부 디코딩 프로세스가 크롭되지 않은(uncropped) 픽처 크기에 적용된다.
ppsA와 ppsB를 동일한 SPS를 참조하는 임의의 두 PPS라 하자. ppsA 및 ppsB가 각각 pic_width_in_luma_samples 및 pic_height_in_luma_samples의 동일한 값을 가질 때 ppsA 및 ppsB는 각각 pps_conf_win_top_offset, 및 pps_conf_win_bottom_offset의 동일한 값을 가져야 하는 것이 비트스트림 적합성의 요구사항이다.
pic_width_in_luma_samples이 pic_width_max_in_luma_samples과 동일하고 pic_height_in_luma_samples이 pic_height_max_in_luma_samples와 동일하면, pps_conf_win_left_offset, pps_conf_win_right_offset, pps_conf_win_top_offset, 및 pps_conf_win_bottom_offset이 각각 sps_conf_win_left_offset, sps_conf_win_right_offset, sps_conf_win_top_offset, 및 sps_conf_win_bottom_offset와 동일한 것이 비트스트림 적합성의 요구사항이다.
도 1은 여기에 개시된 다양한 기술들이 구현될 수 있는 예시적인 비디오 프로세싱 시스템(1900)을 도시하는 블록도이다. 다양한 구현예는 시스템(1900)의 컴포넌트의 일부 또는 전부를 포함할 수 있다. 시스템(1900)은 비디오 콘텐츠를 수신하기 위한 입력(1902)을 포함할 수 있다. 비디오 콘텐츠는 원(raw) 또는 압축되지 않은 포맷, 예를 들어 8 또는 10비트 다중 컴포넌트 픽셀 값으로 수신될 수 있거나 압축 또는 인코딩된 포맷일 수 있다. 입력(1902)은 네트워크 인터페이스, 주변 버스 인터페이스, 또는 저장 인터페이스를 나타낼 수 있다. 네트워크 인터페이스의 예로는 이더넷, 수동 광 네트워크(PON) 등과 같은 유선 인터페이스와 Wi-Fi 또는 셀룰러 인터페이스와 같은 무선 인터페이스가 있다.
시스템(1900)은 본 문서에 설명된 다양한 코딩 또는 인코딩 방법을 구현할 수 있는 코딩 컴포넌트(704)를 포함할 수 있다. 코딩 컴포넌트(1904)는 비디오의 코딩된 표현을 생성하기 위해 코딩 컴포넌트(1904)의 입력(1902)으로부터 출력으로의 비디오의 평균 비트레이트를 감소시킬 수 있다. 따라서, 코딩 기술은 비디오 압축 또는 비디오 트랜스코딩 기술이라고도 한다. 코딩 컴포넌트(1904)의 출력은 컴포넌트(1906)에 의해 표현된 바와 같이 저장되거나 연결된 통신을 통해 전송될 수 있다. 입력(1902)에서 수신된 비디오의 저장 또는 통신된 비트스트림(또는 코딩된) 표현은 디스플레이 인터페이스(1910)로 전송되는 디스플레이가능한 비디오 또는 픽셀 값을 생성하기 위한 컴포넌트(1908)에 의해 사용될 수 있다. 비트스트림 표현으로부터 사용자가 볼 수 있는 비디오를 생성하는 프로세스는 때때로 비디오 압축 해제라고 불린다. 또한, 특정 비디오 처리 동작은 코딩 동작 또는 툴로 지칭되지만, 코딩 툴 또는 동작은 인코더에서 사용될 수 있으며, 코딩의 결과를 역전시키는 해당 디코딩 툴 또는 동작은 디코더에 의해 수행될 것이다.
주변 버스 인터페이스 또는 디스플레이 인터페이스의 예는 USB(Universal Serial Bus) 또는 HDMI(High Definition Multimedia Interface) 또는 Displayport 등을 포함할 수 있다. 저장 인터페이스의 예로는 SATA(Serial Advanced Technology Attachment), PCI, IDE 인터페이스 등이 있다. 본 문서에서 설명된 기술은 디지털 데이터 처리 및/또는 비디오 디스플레이를 수행할 수 있는 휴대폰, 랩탑, 스마트폰 또는 기타 장치와 같은 다양한 전자 장치에서 구현될 수 있다.
도 2는 비디오 프로세싱 장치(3600)의 블록도이다. 장치(3600)는 여기에 설명된 방법들 중 하나 이상을 구현하는 데 사용될 수 있다. 장치(3600)는 스마트폰, 태블릿, 컴퓨터, 사물 인터넷(IoT) 수신기 등으로 구현될 수 있다. 장치(3600)는 하나 이상의 프로세서(3602), 하나 이상의 메모리(3604) 및 비디오 프로세싱 하드웨어(3606)를 포함할 수 있다. 프로세서(들)(3602)는 본 문서에 설명된 하나 이상의 방법을 구현하도록 구성될 수 있다. 메모리(메모리)(3604)는 여기에 설명된 방법 및 기술을 구현하는 데 사용되는 데이터 및 코드를 저장하는 데 사용될 수 있다. 비디오 처리 하드웨어(3806)는 하드웨어 회로에서 본 문서에 설명된 일부 기술을 구현하는 데 사용될 수 있다.
도 4는 본 개시의 기법들을 이용할 수 있는 예시적인 비디오 코딩 시스템(100)을 예시하는 블록도이다.
도 4에 도시된 바와 같이, 비디오 코딩 시스템(100)은 소스 디바이스(110) 및 목적지 디바이스(120)를 포함할 수 있다. 소스 디바이스(110)는 인코딩된 비디오 데이터를 생성하고, 비디오 인코딩 디바이스로 지칭될 수 있다. 목적지 디바이스 (120)는 소스 디바이스 (110)에 의해 생성된 인코딩된 비디오 데이터를 디코딩할 수 있고, 비디오 디코딩 디바이스로 지칭될 수도 있다.
소스 디바이스(110)는 비디오 소스(112), 비디오 인코더(114), 및 입력/출력(I/O) 인터페이스(116)를 포함할 수 있다.
비디오 소스(112)는 비디오 캡처 디바이스와 같은 소스, 비디오 콘텐츠 제공자로부터 비디오 데이터를 수신하기 위한 인터페이스, 및/또는 비디오 데이터를 생성하기 위한 컴퓨터 그래픽 시스템, 또는 이러한 소스들의 조합을 포함할 수 있다. 비디오 데이터는 하나 이상의 픽처를 포함할 수 있다. 비디오 인코더(114)는 비디오 소스(112)로부터의 비디오 데이터를 인코딩하여 비트스트림을 생성한다. 비트스트림은 비디오 데이터의 코딩된 표현을 형성하는 비트들의 시퀀스를 포함할 수 있다. 비트스트림은 코딩된 픽처 및 연관된 데이터를 포함할 수 있다. 코딩된 픽처는 픽처의 코딩된 표현이다. 연관된 데이터는 시퀀스 파라미터 세트, 픽처 파라미터 세트, 및 기타 신택스 구조를 포함할 수 있다. I/O 인터페이스(116)는 변조기/복조기(모뎀) 및/또는 송신기를 포함할 수 있다. 인코딩된 비디오 데이터는 네트워크(130a)를 통해 I/O 인터페이스(116)를 통해 목적지 디바이스(120)로 직접 전송될 수 있다. 인코딩된 비디오 데이터는 또한 목적지 디바이스(120)에 의한 액세스를 위해 저장 매체/서버(130b)에 저장될 수 있다.
목적지 디바이스(120)는 I/O 인터페이스(126), 비디오 디코더(124), 및 디스플레이 디바이스(122)를 포함할 수 있다.
I/O 인터페이스(126)는 수신기 및/또는 모뎀을 포함할 수 있다. I/O 인터페이스(126)는 소스 디바이스(110) 또는 저장 매체/서버(130b)로부터 인코딩된 비디오 데이터를 획득할 수 있다. 비디오 디코더(124)는 인코딩된 비디오 데이터를 디코딩할 수 있다. 디스플레이 디바이스(122)는 디코딩된 비디오 데이터를 사용자에게 디스플레이할 수 있다. 디스플레이 디바이스(122)는 목적지 디바이스(120)와 통합될 수 있거나, 외부 디스플레이 디바이스와 인터페이스하도록 구성된 목적지 디바이스(120)의 외부에 있을 수 있다.
비디오 인코더(114) 및 비디오 디코더(124)는 HEVC(High Efficiency Video Coding) 표준, VVC(Versatile Video Coding) 표준 및 다른 현재 및/또는 추가 표준과 같은 비디오 압축 표준에 따라 동작할 수 있다.
도 5는 도 4에 예시된 시스템(100)의 비디오 인코더(114)일 수 있는 비디오 인코더(200)의 예를 예시하는 블록도이다.
비디오 인코더(200)는 본 개시의 기법들 중 임의의 것 또는 전부를 수행하도록 구성될 수도 있다. 도 5의 예에서. 비디오 인코더(200)는 복수의 기능적 컴포넌트를 포함한다. 본 개시에서 설명된 기법들은 비디오 인코더 (200)의 다양한 컴포넌트들 사이에서 공유될 수도 있다. 일부 예들에서, 프로세서는 본 개시에서 설명된 기법들 중 임의의 것 또는 모든 기법을 수행하도록 구성될 수도 있다.
비디오 인코더(200)의 기능적 컴포넌트는 분할부(201), 모드 선택부(203), 모션 추정부(204), 모션 보상부(205) 및 인트라 예측부(206)을 포함할 수 있는 예측부(202), 잔여 생성부(207), 변환부(208), 양자화부(209), 역양자화부(210), 역변환부(211), 복원부(212), 버퍼(213), 엔트로피 인코딩부(214)를 포함한다.
다른 예들에서, 비디오 인코더 (200)는 더 많거나, 더 적거나, 또는 상이한 기능적 컴포넌트들을 포함할 수 있다. 일 예에서, 예측부(202)는 인트라 블록 카피(IBC) 유닛을 포함할 수 있다. IBC 유닛은, 적어도 하나의 참조 픽처가 현재 비디오 블록이 위치한 픽처인 IBC 모드에서 예측을 수행할 수 있다.
또한, 모션 추정부(204) 및 모션 보상부(205)와 같은 일부 컴포넌트는 고도로 통합될 수 있지만, 도 5의 예에서는 설명을 목적으로 개별적으로 표현된다.
분할부(201)는 픽처를 하나 이상의 비디오 블록으로 분할할 수 있다. 비디오 인코더(200) 및 비디오 디코더(300)는 다양한 비디오 블록 크기들을 지원할 수 있다.
모드 선택부(203)는 예를 들어, 에러 결과들에 기초하여 인트라 또는 인터 코딩 모드들 중 하나를 선택할 수 있고, 결과적인 인트라- 또는 인터-코딩된 블록을 잔차 생성부(207)에 제공하여 잔차 블록 데이터를 생성하고 복원부(212)에 제공하여 참조 픽처로서 사용될 인코딩된 블록을 복원할 수 있다. 일부 예에서, 모드 선택부(203)는 예측이 인터 예측 신호 및 인트라 예측 신호에 기초하는 CIIP(Intra and Inter Predication) 모드의 조합을 선택할 수 있다. 모드 선택부(203)는 또한 인터 예측의 경우 블록에 대한 모션 벡터에 대한 해상도(예를 들어, 서브-픽셀 또는 정수 픽셀 정밀도)를 선택할 수 있다.
현재 비디오 블록에 대한 인터 예측을 수행하기 위해, 모션 추정부 (204)는 버퍼(213)로부터의 하나 이상의 참조 프레임들을 현재 비디오 블록과 비교함으로써 현재 비디오 블록에 대한 모션 정보를 생성할 수 있다. 모션 보상부(205)는 현재 비디오 블록과 연관된 픽처 이외의 버퍼(213)로부터의 픽처들의 디코딩된 샘플들 및 모션 정보에 기초하여 현재 비디오 블록에 대한 예측된 비디오 블록을 결정할 수 있다.
모션 추정부 (204) 및 모션 보상부 (205)는 예를 들어 현재 비디오 블록이 I 슬라이스, P 슬라이스, 또는 B 슬라이스에 있는지 여부에 따라 현재 비디오 블록에 대해 상이한 동작들을 수행할 수 있다.
일부 예들에서, 모션 추정부(204)는 현재 비디오 블록에 대해 단방향 예측을 수행할 수 있고, 모션 추정부(204)는 현재 비디오 블록에 대한 참조 비디오 블록에 대해 리스트 0 또는 리스트 1를 검색할 수 있다. 모션 추정부(204)는 그 다음 현재 비디오 블록과 참조 비디오 블록 사이의 공간적 변위를 나타내는 모션 벡터 및 참조 비디오 블록을 포함하는 리스트 0 또는 리스트 1의 참조 픽처를 나타내는 참조 인덱스를 생성할 수 있다. 모션 추정부(204)는 참조 인덱스, 예측 방향 표시자, 및 모션 벡터를 현재 비디오 블록의 모션 정보로서 출력할 수 있다. 모션 보상부(205)는 현재 비디오 블록의 움직임 정보가 지시하는 참조 비디오 블록에 기초하여 현재 블록의 예측된 비디오 블록을 생성할 수 있다.
다른 예들에서, 모션 추정부(204)는 현재 비디오 블록에 대한 양방향 예측을 수행할 수 있고, 모션 추정부(204)는 현재 비디오 블록에 대한 참조 비디오 블록에 대해 리스트 0에서 참조 픽처들을 검색할 수 있고, 또한 현재 비디오 블록에 대한 다른 참조 비디오 블록에 대한 리스트 1의 참조 화상을 검색할 수 있다. 모션 추정부(204)는 그 다음 참조 비디오 블록과 현재 비디오 블록 사이의 공간 변위를 나타내는 모션 벡터 및 참조 비디오 블록을 포함하는 리스트 0 및 리스트 1의 참조 픽처를 나타내는 참조 인덱스를 생성할 수 있다. 모션 추정부(204)는 현재 비디오 블록의 모션 정보로서 현재 비디오 블록의 참조 인덱스 및 모션 벡터를 출력할 수 있다. 모션 보상부(205)는 현재 비디오 블록의 움직임 정보에 의해 지시되는 참조 비디오 블록들에 기초하여 현재 비디오 블록의 예측된 비디오 블록을 생성할 수 있다.
일부 예들에서, 모션 추정부(204)는 디코더의 디코딩 프로세싱을 위한 모션 정보의 전체 세트를 출력할 수 있다.
일부 예들에서, 모션 추정부(204)는 현재 비디오에 대한 모션 정보의 전체 세트를 출력하지 않을 수 있다. 오히려, 모션 추정부(204)는 다른 비디오 블록의 모션 정보를 참조하여 현재 비디오 블록의 모션 정보를 시그널링할 수 있다. 예를 들어, 모션 추정부(204)는 현재 비디오 블록의 모션 정보가 인접하는 비디오 블록의 모션 정보와 충분히 유사하다고 결정할 수 있다.
일 예에서, 모션 추정부(204)는, 현재 비디오 블록과 연관된 신택스 구조에서, 현재 비디오 블록이 다른 비디오 블록과 동일한 모션 정보를 갖는다는 것을 비디오 디코더(300)에 나타내는 값을 나타낼 수 있다.
다른 예에서, 모션 추정부(204)는, 현재 비디오 블록과 연관된 신택스 구조에서, 다른 비디오 블록 및 모션 벡터 차이(MVD)를 식별할 수 있다. 움직임 벡터 차이는 현재 비디오 블록의 움직임 벡터와 지시된 비디오 블록의 움직임 벡터 간의 차이를 나타낸다. 비디오 디코더(300)는 지시된 비디오 블록의 움직임 벡터와 움직임 벡터 차이를 이용하여 현재 비디오 블록의 움직임 벡터를 결정할 수 있다.
위에서 논의된 바와 같이, 비디오 인코더(200)는 모션 벡터를 예측적으로 시그널링할 수 있다. 비디오 인코더(200)에 의해 구현될 수도 있는 예측 시그널링 기술의 두 가지 예는 AMVP(Advanced Motion Vector Predication) 및 병합 모드 시그널링을 포함한다.
인트라 예측부(206)는 현재 비디오 블록에 대해 인트라 예측을 수행할 수 있다. 인트라 예측부(206)가 현재 비디오 블록에 대해 인트라 예측을 수행할 때, 인트라 예측부(206)는 동일한 픽처의 다른 비디오 블록의 디코딩된 샘플에 기초하여 현재 비디오 블록에 대한 예측 데이터를 생성할 수 있다. 현재 비디오 블록에 대한 예측 데이터는 예측된 비디오 블록 및 다양한 신택스 요소를 포함할 수 있다.
잔차 생성부(207)는 현재 비디오 블록에서 현재 비디오 블록의 예측된 비디오 블록(들)을 감산함으로써(예를 들어, 빼기 부호로 표시됨) 현재 비디오 블록에 대한 잔차 데이터를 생성할 수 있다. 현재 비디오 블록의 잔차 데이터는 현재 비디오 블록의 샘플들의 상이한 샘플 성분들에 대응하는 잔차 비디오 블록들을 포함할 수 있다.
다른 예들에서, 예를 들어 스킵 모드에서 현재 비디오 블록에 대한 현재 비디오 블록에 대한 잔차 데이터가 없을 수 있고, 잔차 생성부(207)는 감산 동작을 수행하지 않을 수 있다.
변환 처리부(208)는 현재 비디오 블록과 연관된 잔차 비디오 블록에 하나 이상의 변환들을 적용함으로써 현재 비디오 블록에 대한 하나 이상의 변환 계수 비디오 블록들을 생성할 수 있다.
변환 처리부(208)가 현재 비디오 블록과 연관된 변환 계수 비디오 블록을 생성한 후, 양자화부(209)는 현재 비디오 블록과 연관된 하나 이상의 양자화 파라미터(QP) 값들에 기초하여 현재 비디오 블록과 연관된 변환 계수 비디오 블록을 양자화할 수 있다.
역양자화부(210) 및 역변환부(211)는 변환 계수 비디오 블록으로부터 잔차 비디오 블록을 복원하기 위해 각각 역양자화 및 역변환을 변환 계수 비디오 블록에 적용할 수 있다. 복원부(212)는 버퍼(213)에 저장될 현재 블록과 연관된 복원된 비디오 블록을 생성하기 위해 예측부(202)에 의해 생성된 하나 이상의 예측된 비디오 블록들로부터의 해당 샘플들에 복원된 잔차 비디오 블록을 추가할 수 있다.
복원부(212)가 비디오 블록을 복원한 후, 루프 필터링 동작이 수행되어 비디오 블록에서 비디오 블록킹 아티팩트(video blocking artifacts)를 감소시킬 수 있다.
엔트로피 인코딩부(214)는 비디오 인코더(200)의 다른 기능적 컴포넌트들로부터 데이터를 수신할 수 있다. 엔트로피 인코딩부(214)가 데이터를 수신하면, 엔트로피 인코딩부(214)는 하나 이상의 엔트로피 인코딩 동작을 수행하여 엔트로피 인코딩된 데이터를 생성하고 엔트로피 인코딩된 데이터를 포함하는 비트스트림을 출력한다.
도 6은 도 4에 예시된 시스템(100)의 비디오 디코더(114)일 수 있는 비디오 디코더(300)의 예를 나타내는 블록도이다.
비디오 디코더(300)는 본 개시의 기법들 중 임의의 것 또는 전부를 수행하도록 구성될 수 있다. 도 6의 예에서, 비디오 디코더(300)는 복수의 기능적 컴포넌트를 포함한다. 본 개시에서 설명된 기법들은 비디오 디코더(300)의 다양한 컴포넌트들 사이에서 공유될 수도 있다. 일부 예들에서, 프로세서는 본 개시에서 설명된 기법들 중 임의의 것 또는 모두를 수행하도록 구성될 수 있다.
도 6의 예에서, 비디오 디코더(300)는 엔트로피 디코딩부(301), 모션 보상부(302), 인트라 예측부(303), 역양자화부(304), 역변환부(305), 변환부(306) 및 버퍼(307)를 포함한다. 비디오 디코더(300)는, 일부 예들에서, 비디오 인코더(200)(도 5)에 대해 설명된 인코딩 패스(encoding pass)에 일반적으로 역인 디코딩 패스를 수행한다.
엔트로피 디코딩부(301)는 인코딩된 비트스트림을 검색(retrieve)할 수 있다. 인코딩된 비트스트림은 엔트로피 코딩된 비디오 데이터(예를 들어, 비디오 데이터의 인코딩된 블록)를 포함할 수 있다. 엔트로피 디코딩부(301)는 엔트로피 코딩된 비디오 데이터를 디코딩할 수 있고, 엔트로피 디코딩된 비디오 데이터로부터, 모션 보상부(302)는 모션 벡터, 모션 벡터 정밀도, 참조 픽처 리스트 인덱스, 및 다른 모션 정보를 포함하는 모션 정보를 결정할 수 있다. 모션 보상부(302)는 예를 들어 AMVP 및 머지 모드를 수행함으로써 그러한 정보를 결정할 수 있다.
모션 보상부(302)는 모션 보상된 블록을 생성할 수 있고, 가능하게는 보간 필터에 기초하여 보간을 수행할 수 있다. 서브픽셀 정밀도와 함께 사용될 보간 필터에 대한 식별자가 신택스 요소에 포함될 수 있다.
모션 보상부(302)는 비디오 블록의 인코딩 동안 비디오 인코더(200)에 의해 사용되는 보간 필터들을 사용하여 참조 블록의 서브-정수 픽셀들에 대한 보간된 값들을 계산할 수 있다. 모션 보상부(302)는 수신된 신택스 정보에 따라 비디오 인코더(200)에 의해 사용되는 보간 필터들을 결정할 수 있고 보간 필터를 사용하여 예측 블록들을 생성할 수 있다.
모션 보상부(302)는 신택스 정보의 일부를 사용하여 인코딩된 비디오 시퀀스의 프레임(들) 및/또는 슬라이스(들)를 인코딩하는 데 사용되는 블록의 크기, 인코딩된 비디오 시퀀스의 픽처의 각 매크로 블록이 어떻게 분할되는지를 설명하는 분할 정보, 각각의 분할이 인코딩되는 방법을 나타내는 모드, 각각의 인터 인코딩된 블록에 대한 하나 이상의 참조 프레임 (및 참조 프레임 리스트) 및 인코딩된 비디오 시퀀스를 디코딩하기 위한 다른 정보를 결정할 수 있다.
인트라 예측부(303)는 예를 들어 비트스트림에서 수신된 인트라 예측 모드들을 사용하여 공간적으로 인접한 블록들로부터 예측 블록을 형성할 수 있다. 역양자화부(303)는, 비트스트림에 제공되고 엔트로피 디코딩부(301)에 의해 디코딩된 양자화된 비디오 블록 계수를 역양자화(inverse quantize), 즉 역양자화(de-quantize)한다. 역변환부(303)는 역변환을 적용한다.
복원부(306)는 모션 보상부(202) 또는 인트라 예측부(303)에 의해 생성된 해당 예측 블록들과 잔차 블록들을 합산하여 디코딩된 블록들을 형성할 수 있다. 원하는 경우, 블록화(blockiness) 아티팩트를 제거하기 위해 디블록킹 필터를 적용하여 디코딩된 블록을 필터링할 수 있다. 그 다음 디코딩된 비디오 블록은 버퍼(307)에 저장되고, 버퍼는 후속 모션 보상/인트라 예측을 위한 참조 블록을 제공하고 또한 디스플레이 디바이스 상의 프리젠테이션을 위해 디코딩된 비디오를 생성한다.
일부 실시예에 의해 선호되는 솔루션의 리스트가 다음에 제공된다.
다음의 솔루션은 이전 섹션(예를 들어, 항목 1)에서 논의된 기술의 예시적인 실시예를 나타낸다.
1. 비디오 프로세싱 방법(예를 들어, 도 3에 도시된 방법(300))으로서, 하나 이상의 슬라이스를 포함하는 하나 이상의 픽처를 포함하는 비디오와 상기 비디오의 코딩된 표현 간의 변환을 수행하는 단계(3002)를 포함하고, 상기 코딩된 표현은 코딩된 표현 내의 필드의 조건이 슬라이스 타입에 대한 제약 또는 슬라이스 타입이 비디오 슬라이스에 대한 코딩된 표현에 포함되는지를 제어함을 명시하는 포맷 규칙을 따르고, 필드는 일반 제약 플래그, 네트워크 추상화 레이어 유닛 타입 또는 비디오 슬라이스가 액세스 유닛의 제1 비디오 픽처 내에 있는지를 포함하는 방법.
2. 솔루션 1에 있어서, 상기 포맷 규칙은, 조건이 인트라 전용 제약(intra-only constraint)이 상기 비디오 슬라이스에 대해서만 인에이블되었다는 것임을 명시하는 방법.
다음의 솔루션은 이전 섹션(예를 들어, 항목 2)에서 논의된 기술의 예시적인 실시예를 나타낸다.
3. 비디오 프로세싱 방법으로서, 하나 이상의 슬라이스를 포함하는 하나 이상의 픽처를 포함하는 비디오와 상기 비디오의 코딩된 표현 간의 변환을 수행하는 단계를 포함하고, 상기 코딩된 표현은, 비디오 픽처의 픽처 헤더 내의 플래그의 값에 기초하여 비디오 픽처 내의 모든 슬라이스의 적응적 루프 필터링을 디스에이블하도록 명시하는 포맷 규칙을 따르는 방법.
다음의 솔루션은 이전 섹션(예를 들어, 항목 3)에서 논의된 기술의 예시적인 실시예를 나타낸다.
4. 비디오 프로세싱 방법으로서, 하나 이상의 슬라이스를 포함하는 하나 이상의 픽처를 포함하는 비디오와 상기 비디오의 코딩된 표현 간의 변환을 수행하는 단계를 포함하고, 상기 코딩된 표현은, 현재 픽처의 높이 및 폭이 상기 비디오에서의 최대 높이 및 최대 폭과 동일한 경우 적합성 윈도우 플래그가 디스에이블 모드로 설정됨을 명시하는 포맷 규칙을 따르는 방법.
다음의 솔루션은 이전 섹션(예를 들어, 항목 4)에서 논의된 기술의 예시적인 실시예를 나타낸다.
5. 비디오 프로세싱 방법으로서, 하나 이상의 슬라이스를 포함하는 하나 이상의 픽처를 포함하는 비디오와 상기 비디오의 코딩된 표현 간의 변환을 수행하는 단계를 포함하고, 상기 코딩된 표현은, 파라미터 세트에 대한 반복 시간을 명시하는 포맷 규칙을 따르는 방법.
6. 솔루션 5에 있어서, 상기 파라미터 세트는 비디오 파라미터 세트 또는 시퀀스 파라미터 세트 또는 적응 파라미터 세트의 픽처 파라미터 세트인 방법.
7. 솔루션 5에 있어서, 상기 파라미터 세트는 디코딩 능력 정보 네트워크 추상화 레이어 유닛(DCI NAL)인 방법.
8. 솔루션 6에 있어서, 상기 파라미터 세트는 비디오 파라미터 세트이고, 상기 포맷 규칙은, 상기 비디오 파라미터 세트가 식별자 필드의 특정 값을 포함하는 경우 상기 비디오 파라미터 세트가 상기 코딩된 비디오 표현의 제1 액세스 유닛에 포함됨을 명시하는 방법.
9. 솔루션 8에 있어서, 상기 포맷 규칙은, 또다른 액세스 유닛이 2개의 미리 명시된 값 간의 범위에서 네트워크 추상화 레이어 타입을 갖는 경우 또는 그 경우에만 상기 식별자 필드의 특정 값을 갖는 비디오 파라미터 세트를 포함하도록 추가로 명시하는 방법.
10. 솔루션 6에 있어서, 상기 파라미터 세트는 시퀀스 파라미터 세트이고, 상기 포맷 규칙은, 상기 코딩된 표현이 비디오 시퀀스의 하나 이상의 코딩된 레이어의 하나 이상의 액세스 유닛으로서 조직(organized)됨을 명시하고, 상기 포맷 규칙은, 상기 시퀀스 파라미터 세트를 참조하는 액세스 유닛 세트의 제1 액세스 유닛에 특정 식별자 값을 갖는 시퀀스 파라미터 세트를 포함하는 네트워크 추상화 레이어를 포함하도록 명시하는 방법.
11. 솔루션 7에 있어서, 상기 포맷 규칙은, 상기 DCI NAL이 상기 비디오의 코딩된 표현에 포함되는 경우 상기 DCI NAL이 상기 비디오의 제1 코딩된 비디오 시퀀스에 포함됨을 명시하는 방법.
12. 솔루션 7 또는 11에 있어서, 상기 포맷 규칙은, 예측 유닛 내의 DCI NAL의 수를 1로 제한하도록 추가로 명시하는 방법.
13. 솔루션 1 내지 12 중 어느 하나에 있어서, 변환은 비디오를 코딩 표현으로 인코딩하는 것을 포함하는 방법.
14. 솔루션 1 내지 12 중 어느 하나에 있어서, 변환은 코딩 표현을 디코딩하여 비디오의 픽셀 값을 생성하는 것을 포함하는 방법.
15. 솔루션 1 내지 14 중 어느 하나에 기재된 방법을 구현하도록 구성되는 프로세서를 포함하는 비디오 디코딩 장치.
16. 솔루션 1 내지 14 중 어느 하나에 기재된 방법을 구현하도록 구성되는 프로세서를 포함하는 비디오 인코딩 장치.
17. 컴퓨터 코드가 저장된 컴퓨터 프로그램 제품으로서, 상기 코드는, 프로세서에 의해 실행될 때, 상기 프로세서가 솔루션 1 내지 14 중 어느 하나에 기재된 방법을 구현하도록 하는 컴퓨터 프로그램 제품.
18. 본 문서에 기재된 방법, 장치 또는 시스템.
다음의 리스트는 일부 실시예에 구현되는 제2 세트의 바람직한 솔루션을 제공한다.
다음의 솔루션은 이전 섹션(예를 들어, 항목 1)에서 논의된 기술의 예시적인 실시예를 나타낸다.
1. 비디오 프로세싱 방법(예를 들어, 도 3에 도시된 방법(3000)으로서, 하나 이상의 슬라이스를 포함하는 하나 이상의 픽처를 포함하는 비디오 및 상기 비디오의 비트스트림 간의 변환을 수행하는 단계를 포함하고, 상기 비트스트림은 포맷 규칙을 따르고, 상기 포맷 규칙은 상기 하나 이상의 슬라이스의 슬라이스 타입이 상기 비트스트림에 표시되는지 또는 어떻게 표시되는지가 조건에 의존함을 명시하고, 상기 조건은 일반 제약 플래그, 네트워크 추상화 레이어 유닛 타입 또는 상기 슬라이스가 액세스 유닛의 제1 픽처 내에 있는지에 기초하는 방법.
2. 솔루션 1에 있어서, 상기 조건은, 상기 일반 제약 플래그가 상기 슬라이스에 대한 인트라 전용 제약(intra-only constraint)을 표시하는 것을 포함하는 방법.
3. 솔루션 1에 있어서, 상기 조건은, 상기 슬라이스가 상기 액세스 유닛의 제1 픽처 내에 있고 상기 네트워크 추상화 레이어 유닛 타입은 특정 타입을 갖는 것을 포함하고, 상기 특정 타입은 인트라 랜덤 액세스 포인트 타입을 표시하는 방법.
4. 솔루션 1에 있어서, 상기 조건은, 인트라 슬라이스만이 상기 픽처를 포함하는 픽처 세트에서 허용됨을 비트스트림이 표시하는 것을 포함하거나 그에 대응하는 방법.
5. 솔루션 4에 있어서, 상기 픽처 세트는 상기 픽처에 대응하는 방법.
6. 솔루션 4에 있어서, 상기 픽처 세트는 상기 픽처를 포함하는 코딩된 레이어 비디오 시퀀스(CLVS; coded layer video sequence)에 대응하는 방법.
7. 솔루션 1 내지 6 중 어느 하나에 있어서, 상기 포맷 규칙은, (a) 상기 일반 제약 플래그 또는 네트워크 추상화 레이어 유닛 타입이 상기 조건을 충족하거나 (b) 상기 슬라이스가 상기 액세스 유닛의 제1 픽처 내에 있는 것에 응답하여, 슬라이스 타입 값 2가 상기 비트스트림에서 표시되는 것을 명시하는 방법.
8. 솔루션 1에 있어서, 상기 포맷 규칙은, 상기 슬라이스 타입이 값 2을 갖고 (a) 상기 일반 제약 플래그 또는 네트워크 추상화 레이어 유닛 타입이 상기 조건을 충족하거나 (b) 상기 슬라이스가 상기 액세스 유닛의 제1 픽처 내에 있는 것에 응답하여 상기 슬라이스 타입의 표시가 상기 비트스트림으로부터 생략됨을 명시하는 방법.
9. 솔루션 1에 있어서, 상기 포맷 규칙은, 상기 슬라이스 타입이 값 2을 갖고 (a) 상기 네트워크 추상화 레이어 유닛 타입이 인트라 랜덤 액세스 포인트 타입이고 (b) 상기 슬라이스를 포함하는 픽처가 속하는 레이어가 독립적으로 디코딩가능한 레이어인 것에 응답하여 상기 슬라이스 타입의 표시가 상기 비트스트림으로부터 생략됨을 명시하는 방법.
다음의 솔루션은 이전 섹션(예를 들어, 항목 2 및 4)에서 논의된 기술의 예시적인 실시예의 추가예를 나타낸다.
1. 비디오 프로세싱 방법(예를 들어, 도 9에 도시된 방법(900)으로서, 다수의 슬라이스를 포함하는 픽처를 포함하는 비디오와 상기 비디오의 비트스트림 간의 변환을 수행하는 단계(902)를 포함하고, 상기 비트스트림은, 픽처 헤더 내의 플래그가 픽처 내의 모든 슬라이스의 적응적 루프 필터링의 적용가능성을 제어함을 명시하는 포맷 규칙에 따르는 방법.
2. 솔루션 1에 있어서, 상기 플래그의 0 값은, 상기 적응적 루프 필터링이 상기 픽처 내의 모든 슬라이스에 대하여 디스에이블됨을 표시하는 방법.
3. 솔루션 1에 있어서, 상기 플래그의 1 값은, 상기 적응적 루프 필터링이 상기 픽처 내의 모든 슬라이스에 대하여 인에이블됨을 표시하는 방법.
4. 비디오 프로세싱 방법(예를 들어, 도 10에 도시된 방법(1000)으로서, 포맷 규칙에 따라 하나 이상의 슬라이스를 포함하는 하나 이상의 픽처를 포함하는 비디오와 상기 비디오의 비트스트림 간의 변환을 수행하는 단계(1002)를 포함하고, 포맷 규칙은 상기 비디오와 연관된 파라미터 세트의 반복 시간을 명시하는 방법.
5. 솔루션 4에 있어서, 상기 파라미터 세트는 비디오 파라미터 세트(VPS)인 방법.
6. 솔루션 5에 있어서, 상기 포맷 규칙은, 특정 식별자 값을 갖는 VPS를 포함하는 코딩된 비디오 시퀀스(CVS)의 VPS 네트워크 추상화 레이어(NAL) 유닛에 응답하여, 상기 VPS NAL 유닛은 상기 CVS의 제1 액세스 유닛(AU)에 포함되고 또다른 AU 내의 또다른 VPS NAL 유닛의 값에 기초하여 상기 CVS의 또다른 AU에 선택적으로 포함되고 상기 CVS의 나머지 AU들로부터 배제되는 것을 명시하는 방법.
7. 솔루션 6에 있어서, 상기 또다른 AU 내의 또다른 VPS NAL 유닛의 값은 IDR_W_RADL에서 GDR_NUT까지의 범위에 있는 방법.
8. 솔루션 6에 있어서, 상기 또다른 AU 내의 또다른 VPS NAL 유닛의 값은 IDR_W_RADL에서 RSV_IRAP_12까지의 범위에 있는 방법.
9. 솔루션 5 내지 8 중 어느 하나에 있어서, 상기 포맷 규칙은, 주어진 식별자 값의 1이하의 VPS NAL 유닛이 상기 비트스트림의 픽처 유닛(PU)에 포함됨을 추가로 명시하는 방법.
10. 솔루션 4에 있어서, 상기 파라미터 세트는 시퀀스 파라미터 세트(SPS)인 방법.
11. 솔루션 10에 있어서, 상기 비트스트림 내의 코딩된 레이어 비디오 시퀀스(CLVS)는 디코딩 순서에서 CLVS의 첫번째 픽처를 포함하는 첫번째 AU에서 디코딩 순서에서 CLVS의 마지막 픽처를 포함하는 마지막 AU까지의 AU들을 포함하는 연관된 액세스 유닛(AU)를 포함하는 방법.
12. 솔루션 11에 있어서, 상기 포맷 규칙은, 특정 식별자 값을 갖는 SPS를 포함하는 SPS 네트워크 추상화 레이어(NAL) 유닛에 응답하여, SPS NAL 유닛이 연관된 AU의 제1 AU에 포함되고 또다른 AU 내의 또다른 SPS NAL 유닛의 값에 기초하여 연관된 세트의 또다른 AU에 선택적으로 포함되고 CVS의 나머지 AU들로부터 배제됨을 명시하는 방법.
13. 솔루션 11에 있어서, 상기 포맷 규칙은, CVLS의 제1 픽처 유닛(PU) 내의 특정 식별자 값을 갖는 SPS를 포함하는 코딩된 레이어 비디오 시퀀스(CVLS)에 응답하여, SPS NAL 유닛은 또다른 PU 내의 슬라이스 NAL 유닛의 값에 기초하여 CVLS의 또다른 PU에 선택적으로 포함되고 CVLS의 나머지 PU들로부터 배제됨을 명시하는 방법.
14. 솔루션 12에 있어서, 또다른 AU 내의 또다른 SPS NAL 유닛의 값은 IDR_W_RADL에서 GDR_NUT까지의 범위에 있는 방법.
15. 솔루션 13에 있어서, 또다른 PU 내의 슬라이스 NAL 유닛의 값은 IDR_W_RADL에서 GDR_NUT까지의 범위에 있는 방법.
16. 솔루션 12에 있어서, 또다른 AU 내의 또다른 SPS NAL 유닛의 값은 IDR_W_RADL에서 RSV_IRAP_12까지의 범위에 있는 방법.
17. 솔루션 13에 있어서, 또다른 PU 내의 슬라이스 NAL 유닛의 값은 IDR_W_RADL에서 RSV_IRAP_12까지의 범위에 있는 방법.
18. 솔루션 11 내지 17 중의 어느 하나에 있어서, 상기 포맷 규칙은, 주어진 식별자 값의 1이하의 SPS NAL 유닛이 비트스트림에서 픽처 유닛(PU)에 포함됨을 추가로 명시하는 방법.
19. 솔루션 4에 있어서, 상기 파라미터는 픽처 파라미터 세트(PPS)이고, 상기 포맷 규칙은, 주어진 식별자 값의 1이하의 PPS 네트워크 추상화 레이어(NAL) 유닛이 비트스트림에서 픽처 유닛(PU)에 포함됨을 추가로 명시하는 방법.
20. 솔루션 4에 있어서, 상기 파라미터 세트는 적응 파라미터 세트(APS)인 방법.
21. 솔루션 20에 있어서, 상기 포맷 규칙은, 주어진 식별자 값의 1이하의 APS 네트워크 추상화 레이어(NAL) 유닛 및 파라미터 타입의 특정 값이 비트스트림에서 픽처 유닛(PU)에 포함됨을 추가로 명시하는 방법.
22. 솔루션 20에 있어서, 상기 포맷 규칙은, 주어진 식별자 값의 1이하의 APS 네트워크 추상화 레이어(NAL) 유닛 및 파라미터 타입의 특정 값이 비트스트림에서 디코딩 유닛(DU)에 포함됨을 추가로 명시하는 방법.
23. 솔루션 4에 있어서, 상기 파라미터 세트는 디코딩 능력 정보 네트워크 추상화 레이어 유닛(DCI NAL)인 방법.
24. 솔루션 23에 있어서, 상기 포맷 규칙은, 상기 DCI NAL 유닛이, 존재시, 비트스트림 내의 제1 CVS가 아닌 비트스트림 내의 코딩된 비디오 시퀀스(CVS)에 포함되는 것이 허용되지 않음을 명시하는 방법.
25. 솔루션 23에 있어서, 상기 포맷 규칙은, DCI NAL 유닛을 포함하는 코딩된 비디오 시퀀스(CVS)에 응답하여, 상기 DCI NAL 유닛이 상기 CVS의 제1 액세스 유닛(AU)에 있고 또다른 AU가 특정 NAL 유닛 식별자 값을 갖는 비디오 코딩 레이어(VCL) NAL 유닛을 포함하는지에 기초하여 선택적으로 또다른 AU에 존재하고 CVS의 나머지 AU로부터 배제됨을 명시하는 방법.
26. 솔루션 21에 있어서, 상기 특정 식별자 값은 IDR_W_RADL에서 GDR_NUT까지의 범위에 있는 방법.
27. 솔루션 23 내지 26 중 어느 하나에 있어서, 상기 포맷 규칙은, 픽처 유닛(PU)이 기껏해야 1개의 DCI NAL 유닛을 포함하는 방법.
다음의 솔루션은 이전 섹션(예를 들어, 항목 3)에서 논의된 기술의 바람직한 실시예의 추가예를 나타낸다.
1. 비디오 프로세싱 방법(예를 들어, 도 11에 도시된 방법(1100))으로서, 포맷 규칙에 따라 비디오 유닛 내의 픽처를 포함하는 비디오와 상기 비디오의 비트스트림 간의 변환을 수행하는 단계(1102)를 포함하고, 상기 포맷 규칙은, 상기 픽처의 폭이 상기 비디오 유닛 내의 최대 허용 픽처 폭과 동일하고 상기 픽처 높이가 상기 비디오 유닛 내의 최대 허용 픽처 높이와 동일한 것에 응답하여, 상기 픽처에 대응하는 픽처 파라미터 세트 내의 적합성 윈도우 플래그는 0 값으로 설정됨을 명시하는 방법.
2. 솔루션 1에 있어서, 상기 최대 허용 픽처 폭 및 상기 최대 허용 픽처 높이는 상기 비디오 유닛에 의해 참조된 시퀀스 파라미터 세트에서 표시되는 방법.
3. 솔루션 2에 있어서, 상기 포맷 규칙은, 상기 픽처의 폭이 상기 비디오 유닛 내의 최대 허용 픽처 폭과 동일하고 상기 픽처 높이가 상기 비디오 유닛 내의 최대 허용 픽처 높이와 동일한 것에 응답하여, 적합성 윈도우 신택스 요소가 상기 픽처 파라미터 세트로부터 배제되고 상기 시퀀스 파라미터 세트에 표시된 것과 동일한 값을 갖는 것으로 추론됨을 명시하는 방법.
4. 솔루션 2에 있어서, 상기 포맷 규칙은, 상기 픽처의 폭이 상기 비디오 유닛 내의 최대 허용 픽처 폭과 동일하지 않거나 상기 픽처 높이가 상기 비디오 유닛 내의 최대 허용 픽처 높이와 동일하지 않은 것에 응답하여, 적합성 윈도우 신택스 요소가 0 값을 갖는 것으로 추론됨을 명시하는 방법.
위에서 열거한 솔루션에서, 상기 변환은 상기 비디오를 상기 비트스트림으로 인코딩하는 단계를 포함한다.
위에서 열거한 솔루션에서, 상기 변환은 상기 비트스트림으로부터 상기 비디오를 생성하는 단계를 포함한다.
일부 실시예에서, 비디오 디코딩 장치는 상술한 솔루션 중의 하나 이상에 기재된 방법을 구현하도록 구성되는 프로세서를 포함할 수 있다.
일부 실시예에서, 비디오 인코딩 장치는 상술한 솔루션 중의 하나 이상에 기재된 방법을 구현하도록 구성되는 프로세서를 포함할 수 있다.
일부 실시예에서, 컴퓨터 판독가능 매체에는 코드가 저장되며, 상기 코드는, 프로세서에 의해 실행될 때, 상기 프로세서가 상술한 솔루션 중의 어느 것에 기재된 방법을 구현하도록 한다.
일부 실시예에서, 비디오 프로세싱 방법은 상술한 솔루션 중의 하나 이상에 기재된 방법에 따라 비트스트림을 생성하는 단계 및 상기 비트스트림을 컴퓨터 판독가능 매체에 저장하는 단계를 포함한다.
일부 실시예에서, 컴퓨터 판독가능 매체에는 비트스트림이 저장되며, 상기 비트스트림은 상술한 솔루션 중의 하나 이상에 기재된 방법에 따라 비디오로부터 생성된다.
본 문서에서 "비디오 프로세싱"이라는 용어는 비디오 인코딩, 비디오 디코딩, 비디오 압축 또는 비디오 압축해제를 지칭할 수 있다. 예를 들어, 비디오 압축 알고리즘은 비디오의 픽셀 표현에서 대응하는 비트스트림 표현으로 또는 그 반대로 변환하는 동안 적용될 수 있다. 현재 비디오 블록의 비트스트림 표현은, 예를 들어, 신택스에 의해 정의된 바와 같이 비트스트림 내의 다른 위치에 함께 배치되거나 확산되는 비트에 대응할 수 있다. 예를 들어, 매크로블록은, 변환되고 코딩된 에러 잔차 값의 관점에서 그리고 또한 헤더의 비트 및 비트스트림의 다른 필드를 사용하여 인코딩될 수 있다. 또한, 변환 동안 디코더는 위의 솔루션에서 설명된 바와 같이 결정에 기초하여 일부 필드가 존재하거나 없을 수 있다는 지식으로 비트스트림을 구문분석할 수 있다. 유사하게, 인코더는 소정의 신택스 필드가 포함되는지의 여부를 결정할 수 있고, 이에 따라 코딩된 표현으로부터 신택스 필드를 포함하거나 제외함으로써 코딩된 표현을 생성할 수 있다.
이 문서에 설명된 개시된 및 다른 솔루션, 예, 실시예, 모듈 및 기능적 동작은 디지털 전자 회로, 본 문서에 개시된 구조, 그들의 구조적 동등물들을 포함하는 컴퓨터 소프트웨어, 펌웨어, 또는 하드웨어 또는 이들 중의 하나 이상의 조합으로 구현될 수 있다. 개시된 실시예 및 다른 실시예는 하나 이상의 컴퓨터 프로그램 제품, 즉, 데이터 프로세싱 장치에 의한 실행 또는 그의 동작의 제어를 위해 컴퓨터 판독가능 매체 상에 인코딩되는 컴퓨터 프로그램 명령의 하나 이상의 모듈로서 구현될 수 있다. 컴퓨터 판독가능 매체는 머신-판독가능 저장 장치, 머신-판독가능 저장 기판, 메모리 장치, 머신-판독가능 전파 신호에 영향을 주는 물질의 구성 또는 그들 중의 하나 이상의 조합일 수 있다. 용어 "데이터 프로세싱 장치"는 데이터 처리를 위한 모든 장치, 디바이스 및 머신을 포함하며, 예를 들어 프로그램 가능한 프로세서, 컴퓨터 또는 다중 프로세서 또는 컴퓨터를 포함한다. 장치는 하드웨어에 더하여 문제의 컴퓨터 프로그램에 대한 실행 환경을 생성하는 코드, 예를 들어 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제, 또는 이들 중 하나의 조합을 구성하는 코드를 포함할 수 있다. 전파되는 신호는 인공적으로 생성된 신호, 예를 들어, 머신 생성 전기, 광, 또는 전자기 신호이며, 이는 적절한 수신기 장치로의 전송을 위한 정보를 인코딩하기 위해 생성된다.
컴퓨터 프로그램 (프로그램, 소프트웨어, 소프트웨어 애플리케이션, 스크립트 또는 코드라고도 함)은 컴파일된 언어 또는 해석된 언어를 포함하여 모든 형태의 프로그래밍 언어로 작성될 수 있으며, 독립형 프로그램 또는 컴퓨터 환경에서 사용되기에 적합한 모듈, 컴포넌트, 서브루틴 또는 다른 유닛으로서 임의의 형태로 배치(deploy)될 수 있다. 컴퓨터 시스템은 파일 시스템 내의 파일에 반드시 대응되는 것은 아니다. 프로그램은 다른 프로그램 또는 데이터를 보유하는 파일의 일부(예를 들어 마크업 언어 문서에 저장된 하나 이상의 스크립트) 또는 문제의 프로그램의 전용인 단일 파일 또는 다중 편성(coordinated) 파일(예를 들어, 하나 이상의 모듈, 서브 프로그램 또는 코드의 일부를 저장하는 파일)에 저장될 수 있다. 컴퓨터 프로그램은, 하나의 컴퓨터 또는 한 사이트에 위치하거나 다수의 사이트에 걸쳐 분배되고 통신 네트워크에 의해 상호 접속되는 다수의 컴퓨터 상에서 실행되도록 배치될 수 있다.
본 명세서에 설명된 프로세스 및 로직 흐름은 입력 데이터에 대해 작동하고 출력을 생성함으로써 기능을 수행하기 위해 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그래밍가능한 프로세서에 의해 수행될 수 있다. 프로세스 및 로직 흐름은 또한 FPGA (필드 프로그래밍 가능 게이트 어레이) 또는 ASIC (애플리케이션 특정 집적 회로)와 같은 특수 목적 로직 회로로 구현될 수 있다.
컴퓨터 프로그램의 실행에 적합한 프로세서는 예를 들어 범용 및 특수 목적의 마이크로 프로세서와 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서를 포함한다. 일반적으로, 프로세서는 리드 온리 메모리 또는 랜덤 액세스 메모리 또는 둘 다에서 명령과 데이터를 수신한다. 컴퓨터의 필수 요소는 명령을 수행하기위한 프로세서와 명령과 데이터를 저장하기 위한 하나 이상의 메모리 장치이다. 일반적으로, 컴퓨터는 또한 데이터를 저장하기 위한 하나 이상의 대용량 저장 장치, 예를 들어 자기, 광 자기 디스크 또는 광 디스크로부터 데이터를 수신하거나 데이터를 전송하거나 둘 모두를 수행하도록 동작 가능하게 결합된다. 그러나 컴퓨터가 이러한 장치를 가질 필요는 없다. 컴퓨터 프로그램 명령 및 데이터를 저장하기에 적합한 컴퓨터 판독 가능 매체는 예를 들어 EPROM, EEPROM 및 플래시 메모리 장치와 같은 반도체 메모리 장치; 내부 하드 디스크 또는 제거가능 디스크 등의 자기 디스크; 광자기 디스크 및 CD ROM 및 DVD-ROM 디스크를 포함하는 모든 형태의 비휘발성 메모리, 매체 및 메모리 장치를 포함한다. 프로세서와 메모리는 특수 목적 로직 회로에 의해 보완되거나 통합될 수 있다.
이 특허 문서에는 많은 세부 사항이 포함되어 있지만, 이는 임의의 발명의 범위 또는 청구 대상에 대한 제한으로 해석되어서는 안되며, 특정 발명의 특정 실시예에 특정될 수 있는 특징에 대한 설명으로 해석되어야 한다. 개별 실시예의 맥락에서 본 특허 문서에 설명된 특정 특징은 또한 단일 실시예에서 조합하여 구현될 수 있다. 반대로, 단일 실시 예의 맥락에서 설명된 다양한 특징은 또한 다중 실시 예에서 개별적으로 또는 임의의 적절한 하위 조합으로 구현될 수 있다. 더욱이, 특징이 특정 조합으로 작용하는 것으로 위에서 설명될 수 있고 심지어 처음에 그렇게 청구될 수도 있지만, 청구된 조합으로부터 하나 이상의 특징이 어떤 경우에는 조합으로부터 삭제될 수 있고, 청구된 조합은 하위 조합 또는 변형일 수 있다.
유사하게, 동작이 특정 순서로 도면에 도시되어 있지만, 이는 바람직한 결과를 달성하기 위해 그러한 동작이 도시된 특정 순서 또는 순차적인 순서로 수행되거나 모든 예시된 동작이 수행될 것을 요구하는 것으로 이해되어서는 안된다. 더욱이, 이 특허 문헌에 설명된 실시예들에서 다양한 시스템 컴포넌트들의 분리는 모든 실시예들에서 그러한 분리를 요구하는 것으로 이해되어서는 안된다.
단지 몇 가지 구현예 및 예가 설명되고, 다른 구현예, 향상 및 변형이 특허 문서에 설명되고 예시된 것에 기초하여 이루어질 수 있다.

Claims (17)

  1. 비디오 프로세싱 방법으로서,
    하나 이상의 슬라이스를 포함하는 하나 이상의 픽처를 포함하는 비디오 및 상기 비디오의 비트스트림 간의 변환을 수행하는 단계를 포함하고,
    상기 비트스트림은 포맷 규칙을 따르고,
    상기 포맷 규칙은 상기 하나 이상의 슬라이스의 슬라이스 타입이 상기 비트스트림에 표시되는지 또는 어떻게 표시되는지가 조건에 의존함을 명시하고,
    상기 조건은 일반 제약 플래그, 네트워크 추상화 레이어 유닛 타입 또는 상기 슬라이스가 액세스 유닛의 제1 픽처 내에 있는지에 기초하는 방법.
  2. 제1항에 있어서,
    상기 조건은, 상기 일반 제약 플래그가 상기 슬라이스에 대한 인트라 전용 제약(intra-only constraint)을 표시하는 것을 포함하는 방법.
  3. 제1항에 있어서,
    상기 조건은, 상기 슬라이스가 상기 액세스 유닛의 제1 픽처 내에 있고 상기 네트워크 추상화 레이어 유닛 타입은 특정 타입을 갖는 것을 포함하고, 상기 특정 타입은 인트라 랜덤 액세스 포인트 타입을 표시하는 방법.
  4. 제1항에 있어서,
    상기 조건은, 인트라 슬라이스만이 상기 픽처를 포함하는 픽처 세트에서 허용됨을 비트스트림이 표시하는 것을 포함하는 방법.
  5. 제4항에 있어서,
    상기 픽처 세트는 상기 픽처에 대응하는 방법.
  6. 제4항에 있어서,
    상기 픽처 세트는 상기 픽처를 포함하는 코딩된 레이어 비디오 시퀀스(CLVS; coded layer video sequence)에 대응하는 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 포맷 규칙은, (a) 상기 일반 제약 플래그 또는 네트워크 추상화 레이어 유닛 타입이 상기 조건을 충족하거나 (b) 상기 슬라이스가 상기 액세스 유닛의 제1 픽처 내에 있는 것에 응답하여, 슬라이스 타입 값 2가 상기 비트스트림에서 표시되는 것을 명시하는 방법.
  8. 제1항에 있어서,
    상기 포맷 규칙은, 상기 슬라이스 타입이 값 2을 갖고 (a) 상기 일반 제약 플래그 또는 네트워크 추상화 레이어 유닛 타입이 상기 조건을 충족하거나 (b) 상기 슬라이스가 상기 액세스 유닛의 제1 픽처 내에 있는 것에 응답하여 상기 슬라이스 타입의 표시가 상기 비트스트림으로부터 생략됨을 명시하는 방법.
  9. 제1항에 있어서,
    상기 포맷 규칙은, 상기 슬라이스 타입이 값 2을 갖고 (a) 상기 네트워크 추상화 레이어 유닛 타입이 인트라 랜덤 액세스 포인트 타입이고 (b) 상기 슬라이스를 포함하는 픽처가 속하는 레이어가 독립적으로 디코딩가능한 레이어인 것에 응답하여 상기 슬라이스 타입의 표시가 상기 비트스트림으로부터 생략됨을 명시하는 방법.
  10. 제1항 내지 제9항 중 어느 한 항에 있어서,
    상기 변환은 상기 비트스트림으로부터 상기 비디오를 생성하는 단계를 포함하는 방법.
  11. 제1항 내지 제9항 중 어느 한 항에 있어서,
    상기 변환은 상기 비디오를 상기 비트스트림으로 인코딩하는 단계를 포함하는 방법.
  12. 제1항 내지 제10항 중 하나 이상에 기재된 방법을 구현하도록 구성되는 프로세서를 포함하는 비디오 디코딩 장치.
  13. 제1항 내지 제11항 중 하나 이상에 기재된 방법을 구현하도록 구성되는 프로세서를 포함하는 비디오 인코딩 장치.
  14. 프로세서에 의해 실행될 때, 상기 프로세서가 제1항 내지 제11항 중 어느 것에 기재된 방법을 구현하도록 하는 코드가 저장된 컴퓨터 판독가능 매체.
  15. 비디오 프로세싱 방법으로서,
    제1항 내지 제11항 중 하나 이상에 기재된 방법에 따라 비트스트림을 생성하는 단계; 및
    상기 비트스트림을 컴퓨터 판독가능 매체에 저장하는 단계를 포함하는 방법.
  16. 비트스트림이 저장된 컴퓨터 판독가능 매체로서, 상기 비트스트림은 제1항 내지 제11항 중 하나 이상에 기재된 방법에 따라 비디오로부터 생성되는 컴퓨터 판독가능 매체.
  17. 본 문서에 기재된 방법, 장치, 비트스트림 또는 시스템.
KR1020227032740A 2020-03-30 2021-03-29 비디오 코딩에서의 슬라이스 타입 KR20220160576A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063002064P 2020-03-30 2020-03-30
US63/002,064 2020-03-30
PCT/US2021/024663 WO2021202387A1 (en) 2020-03-30 2021-03-29 Slice type in video coding

Publications (1)

Publication Number Publication Date
KR20220160576A true KR20220160576A (ko) 2022-12-06

Family

ID=77930148

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020227032740A KR20220160576A (ko) 2020-03-30 2021-03-29 비디오 코딩에서의 슬라이스 타입
KR1020227032741A KR20220159987A (ko) 2020-03-30 2021-03-29 비디오 코딩에서의 적합성 윈도우 파라미터

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020227032741A KR20220159987A (ko) 2020-03-30 2021-03-29 비디오 코딩에서의 적합성 윈도우 파라미터

Country Status (7)

Country Link
US (2) US11902558B2 (ko)
EP (2) EP4115611A4 (ko)
JP (3) JP7415038B2 (ko)
KR (2) KR20220160576A (ko)
CN (3) CN115380525A (ko)
BR (1) BR112022019770A2 (ko)
WO (3) WO2021202387A1 (ko)

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2702765A1 (en) * 2011-04-28 2014-03-05 Koninklijke Philips N.V. Method and apparatus for generating an image coding signal
US20120294353A1 (en) * 2011-05-16 2012-11-22 Mediatek Inc. Apparatus and Method of Sample Adaptive Offset for Luma and Chroma Components
WO2013128010A2 (en) * 2012-03-02 2013-09-06 Canon Kabushiki Kaisha Method and devices for encoding a sequence of images into a scalable video bit-stream, and decoding a corresponding scalable video bit-stream
US20140079138A1 (en) * 2012-09-14 2014-03-20 Sony Corporation Simplifiication of pic_order_cnt_lsb calculation in hm8
WO2014112354A1 (en) * 2013-01-15 2014-07-24 Sharp Kabushiki Kaisha Video decoder with signaling
JP2017500787A (ja) 2013-11-21 2017-01-05 エルジー エレクトロニクス インコーポレイティド 信号送受信装置及び信号送受信方法
US9641851B2 (en) * 2014-04-18 2017-05-02 Qualcomm Incorporated Conformance window information in multi-layer coding
TWI689196B (zh) * 2014-06-19 2020-03-21 美商Vid衡器股份有限公司 在3維基礎彩色映射中模型參數最佳化系統及方法
KR101663668B1 (ko) * 2014-06-27 2016-10-07 삼성전자주식회사 영상 패딩영역의 비디오 복호화 및 부호화 장치 및 방법
CN107113457B (zh) * 2014-12-29 2020-12-04 索尼公司 发送装置、发送方法、接收装置和接收方法
CN113613009A (zh) * 2015-02-27 2021-11-05 索尼公司 发送装置、发送方法、接收装置和接收方法
US10244249B2 (en) * 2015-09-21 2019-03-26 Qualcomm Incorporated Fixed point implementation of range adjustment of components in video coding
US10129558B2 (en) * 2015-09-21 2018-11-13 Qualcomm Incorporated Supplement enhancement information (SEI) messages for high dynamic range and wide color gamut video coding
US10200701B2 (en) * 2015-10-14 2019-02-05 Qualcomm Incorporated HDR and WCG coding architecture with SDR backwards compatibility in a single bitstream for video coding
JP6710970B2 (ja) * 2015-12-28 2020-06-17 ソニー株式会社 送信装置および送信方法
WO2017129793A1 (en) 2016-01-28 2017-08-03 Koninklijke Philips N.V. Encoding and decoding hdr videos
US11102495B2 (en) * 2016-05-17 2021-08-24 Qualcomm Incorporated Methods and systems for generating and processing content color volume messages for video
CN108370451B (zh) * 2016-10-11 2021-10-01 索尼公司 发送装置、发送方法、接收装置以及接收方法
PL3389278T3 (pl) * 2016-11-22 2023-03-13 Saturn Licensing, Llc Urządzenie nadawcze, sposób nadawania, urządzenie odbiorcze i sposób odbioru
US10812820B2 (en) 2016-11-30 2020-10-20 Qualcomm Incorporated Systems and methods for signaling and constraining a high dynamic range (HDR) video system with dynamic metadata
US11153579B2 (en) * 2018-03-23 2021-10-19 Qualcomm Incorporated Deriving dynamic range adjustment (DRA) parameters for video coding
CA3146230A1 (en) 2019-07-08 2020-10-22 Huawei Technologies Co., Ltd. Handling of multiple picture size and conformance windows for reference picture resampling in video coding
GB201913403D0 (en) * 2019-09-17 2019-10-30 Canon Kk Method and apparatus for encoding and decoding a video stream with subpictures
CN114600462A (zh) * 2019-10-25 2022-06-07 夏普株式会社 用于在视频编码中发送信号通知图片信息的系统和方法
JP2023011955A (ja) 2019-12-03 2023-01-25 シャープ株式会社 動画像符号化装置、動画像復号装置
GB2590634A (en) 2019-12-20 2021-07-07 Canon Kk High Level syntax for video coding and decoding
US11778215B2 (en) * 2020-02-28 2023-10-03 Qualcomm Incorporated Coding output layer set data and conformance window data of high level syntax for video coding
US11375212B2 (en) * 2020-04-18 2022-06-28 Qualcomm Incorporated Flexible chroma processing for dynamic range adjustment

Also Published As

Publication number Publication date
WO2021202393A1 (en) 2021-10-07
JP2023519938A (ja) 2023-05-15
BR112022019770A2 (pt) 2022-11-16
US11902557B2 (en) 2024-02-13
EP4115611A4 (en) 2023-06-28
EP4115608A1 (en) 2023-01-11
EP4115608A4 (en) 2023-05-24
WO2021202391A1 (en) 2021-10-07
JP7416974B2 (ja) 2024-01-17
CN115380525A (zh) 2022-11-22
JP2024038255A (ja) 2024-03-19
US20230052835A1 (en) 2023-02-16
CN115486063A (zh) 2022-12-16
KR20220159987A (ko) 2022-12-05
JP7415038B2 (ja) 2024-01-16
JP2023519939A (ja) 2023-05-15
WO2021202387A1 (en) 2021-10-07
CN115398898A (zh) 2022-11-25
EP4115611A1 (en) 2023-01-11
US20230034593A1 (en) 2023-02-02
US11902558B2 (en) 2024-02-13

Similar Documents

Publication Publication Date Title
WO2021197447A1 (en) Controlling quantization parameter delta signaling
WO2021169969A1 (en) Conditional signaling of syntax elements in a picture header
WO2021180163A1 (en) Adaptation parameter set signaling based on color format
WO2021204137A1 (en) Clipping operation for reference picture wrap around
KR20230025787A (ko) 코딩된 비디오에서 양자화 정보의 시그널링
WO2021204251A1 (en) Use of header syntax elements and adaptation parameter set
WO2021222036A1 (en) Conditional signaling of video coding syntax elements
CN115299063A (zh) 变换跳过残差编解码
US11902558B2 (en) Conformance window parameters in video coding
KR102616383B1 (ko) 비디오 픽처 헤더의 필터 파라미터 시그널링
WO2021204233A1 (en) Constraints on adaptation parameter set based on color format
WO2021213357A1 (en) Adaptive color transform in video coding
KR20220162713A (ko) 변환 스킵 모드에서 계수 코딩

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination