KR20220055500A - 픽처 레벨에서 논-픽처-레벨 신택스 요소의 시그널링 - Google Patents

픽처 레벨에서 논-픽처-레벨 신택스 요소의 시그널링 Download PDF

Info

Publication number
KR20220055500A
KR20220055500A KR1020227012390A KR20227012390A KR20220055500A KR 20220055500 A KR20220055500 A KR 20220055500A KR 1020227012390 A KR1020227012390 A KR 1020227012390A KR 20227012390 A KR20227012390 A KR 20227012390A KR 20220055500 A KR20220055500 A KR 20220055500A
Authority
KR
South Korea
Prior art keywords
picture
flag
video
rpl
present
Prior art date
Application number
KR1020227012390A
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 KR20220055500A publication Critical patent/KR20220055500A/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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/58Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one

Landscapes

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

Abstract

비디오 디코더에 의해 구현되는 방법은: 상기 비디오 디코더가 참조 픽처 리스트(reference picture list, RPL) 플래그를 포함하는 비디오 비트스트림을 수신하는 단계 - 여기서 제1 값과 동일한 RPL 플래그는 RPL 시그널링이 픽처 헤더(picture header, PH)에 존재한다는 것을 지정하고, 제2 값과 동일한 RPL 플래그는 RPL 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정함 - ; 및 상기 비디오 디코더가 디코딩된 픽처를 획득하기 위해 상기 RPL 플래그를 사용하여 코딩된 픽처를 디코딩하는 단계를 포함한다. 비디오 디코더에 의해 구현되는 방법은: 상기 비디오 디코더가 샘플 적응 오프셋(sample adaptive offset, SAO) 플래그를 포함하는 비디오 비트스트림을 수신하는 단계 - 상기 SAO 플래그는 SAO 정보가 PH에 존재할 수 있거나 존재하지 않는다는 것을 지정하거나 또는 SAO 정보가 슬라이스 헤더에 존재할 수 있거나 존재하지 않는다는 것을 지정함 - ; 및 상기 비디오 디코더가 디코딩된 픽처를 획득하기 위해 상기 SAO 플래그를 사용하여 코딩된 픽처를 디코딩하는 단계를 포함한다.

Description

픽처 레벨에서 논-픽처-레벨 신택스 요소의 시그널링
이것은 Futurewei Technologies, Inc.에 의해 2019년 9월 24일에 출원되었으며 발명의 명칭이 "비디오 코딩에서 픽처 헤더의 논-픽처 레벨 신택스 요소의 시그널링"인 No. 62/905,228에 대한 우선권을 주장하며, 이는 참조로 포함된다.
개시된 실시예는 일반적으로 비디오 코딩 및 특히 픽처 레벨에서 논-픽처-레벨 신택스 요소의 시그널링에 관한 것이다.
비교적 짧은 비디오라도 묘사하는 데 필요한 비디오 데이터의 양은 상당할 수 있으며, 이는 데이터가 스트리밍되거나 제한된 대역폭 용량으로 통신 네트워크를 통해 통신될 때 어려움을 초래할 수 있다. 따라서 비디오 데이터는 일반적으로 현대의 통신 네트워크를 통해 통신되기 전에 압축된다. 메모리 리소스가 제한될 수 있기 때문에 비디오가 저장 장치에 저장될 때 비디오의 크기도 문제가 될 수 있다. 비디오 압축 장치는 전송 또는 저장 전에 비디오 데이터를 코딩하기 위해 소스에서 소프트웨어 및/또는 하드웨어를 사용하여 디지털 비디오 이미지를 나타내는 데 필요한 데이터의 양을 줄이는 경우가 많다. 압축된 데이터는 비디오 데이터를 디코딩하는 비디오 압축 해제 장치에 의해 목적지에서 수신된다. 제한된 네트워크 리소스와 더 높은 비디오 품질에 대한 요구가 계속 증가함에 따라 이미지 품질을 거의 또는 전혀 희생하지 않으면서 압축 비율을 개선하는 개선된 압축 및 압축 해제 기술이 바람직하다.
제1 관점은 비디오 디코더에 의해 구현되는 방법에 관한 것으로, 상기 방법은: 비디오 디코더가 RPL 플래그를 포함하는 비디오 비트스트림을 수신하는 단계를 포함하며, 제1 값과 동일한 RPL 플래그는 RPL 시그널링이 PH에 존재한다는 것을 지정하고, 제2 값과 동일한 RPL 플래그는 RPL 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정한다.
구현에서, 신택스 요소가 동일할 때 픽처 헤더에 신택스 요소가 포함되거나 신택스 요소가 변할 때 슬라이스 헤더에 포함된다. 그렇지만, 일부 실시예에서, 신택스 요소는 둘 다에 포함되지 않을 수 있다. 첫째, 논-픽처-레벨 신택스 요소가 PH에 존재할 수 있다. 논-픽처-레벨 신택스 요소는 픽처 레벨 이외의 비디오 비트스트림 레벨에 있는 신택스 요소이다. 둘째, 논-픽처 레벨 신택스 요소의 각 카테고리에 대해 플래그는 카테고리의 신택스 요소가 PH 또는 슬라이스 헤더에 존재하는 때를 지정한다. 플래그는 PH에 있을 수 있다. 논-픽처-레벨 신택스 요소에는 RPL의 시그널링, 공동 Cb Cr 부호 플래그, SAO 도구 인에이블링 및 파라미터, ALF 도구 인에이블링 및 파라미터, LMCS 도구 인에이블링 및 파라미터, 스케일링 리스트 도구 인에이블링 및 파라미터와 연관된 요소가 포함된다. 셋째, 논-픽처 레벨 신택스 요소가 PH에 존재할 때, 대응하는 신택스 요소는 신택스 요소를 포함하는 픽처 헤더와 연관된 픽처의 어떠한 슬라이스에도 존재하지 않아야 한다. PH에 존재하는 논-픽처-레벨 신택스 요소의 값은 신택스 요소를 포함하는 픽처 헤더와 연관된 픽처의 모든 슬라이스에 적용된다. 넷째, 논-픽처 레벨의 신택스 요소가 PH에 존재하지 않을 때, 대응하는 신택스 요소는 픽처 헤더와 연관된 픽처의 슬라이스의 슬라이스 헤더에 존재할 수 있다. 논-픽처 레벨 신택스 요소의 시그널링을 픽처 레벨로 이동함으로써, 중복성이 감소되고 인코딩된 비트스트림에서 더 적은 낭비 비트가 있다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 1과 동일한 RPL 플래그가 RPL 시그널링이 PH에 존재한다는 것을 지정하는 것을 제공한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 1과 동일한 RPL 플래그가 RPL 시그널링이 슬라이스에 존재하지 않는다는 것을 지정하는 것을 제공한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 0과 동일한 RPL 플래그가 RPL 시그널링이 PH에 존재하지 않는다는 것을 지정하는 것을 제공한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 0과 동일한 RPL 플래그가 RPL 시그널링이 슬라이스 헤더들에 존재할 수 있다는 것을 지정하는 것을 제공한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 비트스트림은 RPL 시퀀스 파라미터 세트(sequence parameter set, SPS) 플래그를 더 포함하고, 여기서 RPL SPS 플래그는 SPS에서 i와 동일한 listIdx를 갖는 ref_pic_list_struct(listIdx, rplsIdx) 신택스 구조 중 하나에 기초하여 RPL i가 유도된다는 것을 지정하거나, 또는 직접적으로 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조 중 하나에 기초하여 RPL i가 유도된다는 것을 지정한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 비트스트림은 RPL 인덱스를 더 포함하고, 상기 RPL 인덱스는 현재 픽처의 RPL i의 유도에 사용되는 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조의 인덱스를, 시퀀스 파라미터 세트(SPS)에 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct(listIdx, rplsIdx) 신택스 구조의 리스트으로 지정한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 전자 장치의 디스플레이 상에 디코딩된 픽처를 표시하는 단계를 더 포함하는 방법을 제공한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 논-픽처 레벨 신택스 요소가 PH에 존재할 때 대응하는 신택스 요소가 신택스 요소를 포함하는 PH와 연관된 픽처의 어떤 슬라이스에도 존재하지 않아야 한다는 것을 제공한다.
제2 관점은 비디오 인코더에 의해 구현되는 방법에 관한 것으로, 상기 방법은: RPL 플래그를 생성하는 단계를 포함하고, 여기서 제1 값과 동일한 RPL 플래그는 RPL 시그널링이 PH에 존재한다는 것을 지정하고, 제2 값과 동일한 RPL 플래그는 RPL 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 1과 동일한 RPL 플래그가 RPL 시그널링이 PH에 존재한다는 것을 지정하는 것을 제공한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 1과 동일한 RPL 플래그가 RPL 시그널링이 슬라이스에 존재하지 않는다는 것을 지정하는 것을 제공한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 0과 동일한 RPL 플래그가 RPL 시그널링이 PH에 존재하지 않는다는 것을 지정하는 것을 제공한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 0과 동일한 RPL 플래그가 RPL 시그널링이 슬라이스 헤더들에 존재할 수 있다는 것을 지정하는 것을 제공한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 방법이 RPL 시퀀스 파라미터 세트(sequence parameter set, SPS) 플래그를 생성하는 단계를 더 포함하는 것을 제공하고, 여기서 RPL SPS 플래그는 SPS에서 i와 동일한 listIdx를 갖는 ref_pic_list_struct(listIdx, rplsIdx) 신택스 구조 중 하나에 기초하여 RPL i가 유도된다는 것을 지정하거나, 또는 직접적으로 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조 중 하나에 기초하여 RPL i가 유도된다는 것을 지정한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 방법이 RPL 인덱스를 생성하는 단계를 더 포함하는 것을 제공하고, 여기서 RPL 인덱스는 현재 픽처의 RPL i의 유도에 사용되는 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조의 인덱스를, 시퀀스 파라미터 세트(SPS)에 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct(listIdx, rplsIdx) 신택스 구조의 리스트으로 지정한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 논-픽처 레벨 신택스 요소가 PH에 존재할 때 대응하는 신택스 요소가 신택스 요소를 포함하는 PH와 연관된 픽처의 어떤 슬라이스에도 존재하지 않아야 한다는 것을 제공한다.
제3 관점은 비디오 디코더에 의해 구현되는 방법에 관한 것으로, 상기 방법은: 비디오 디코더가 SAO 플래그를 포함하는 비디오 비트스트림을 수신하는 단계 - 여기서 제1 값과 동일한 SAO 플래그는 SAO 시그널링이 PH에 존재한다는 것을 지정하고, 제2 값과 동일한 SAO 플래그는 SAO 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정함 - ; 및 비디오 디코더가 SAO 플래그를 사용하여 코딩된 픽처를 디코딩하여 디코딩된 픽처를 획득하는 단계를 포함한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 전자 장치의 디스플레이 상에 디코딩된 픽처를 표시하는 단계를 더 포함하는 방법을 제공한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 논-픽처 레벨 신택스 요소가 PH에 존재할 때 대응하는 신택스 요소가 신택스 요소를 포함하는 PH와 연관된 픽처의 어떤 슬라이스에도 존재하지 않아야 한다는 것을 제공한다.
제4 관점은 비디오 인코더에 의해 구현되는 방법에 관한 것으로, 상기 방법은: SAO 플래그를 생성하는 단계 - 여기서 제1 값과 동일한 SAO 플래그는 SAO 시그널링이 PH에 존재한다는 것을 지정하고, 제2 값과 동일한 SAO 플래그는 SAO 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정함 - ; 비디오 인코더가 SAO 플래그를 비디오 비트스트림으로 인코딩하는 단계; 및 비디오 인코더가 비디오 디코더를 향한 통신을 위해 비디오 비트스트림을 저장하는 단계를 포함한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 논-픽처 레벨 신택스 요소가 PH에 존재할 때 대응하는 신택스 요소가 신택스 요소를 포함하는 PH와 연관된 픽처의 어떤 슬라이스에도 존재하지 않아야 한다는 것을 제공한다.
제5 관점은 비디오 디코더에 의해 구현되는 방법에 관한 것으로, 상기 방법은: 비디오 디코더가 ALF 플래그를 포함하는 비디오 비트스트림을 수신하는 단계 - 제1 값과 동일한 ALF 플래그는 ALF 시그널링이 PH에 존재한다는 것을 지정하고, 제2 값과 동일한 ALF 플래그는 ALF 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정함 - ; 및 비디오 디코더가 ALF 플래그를 사용하여 코딩된 픽처를 디코딩하여 디코딩된 픽처를 획득하는 단계를 포함한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 전자 장치의 디스플레이 상에 디코딩된 픽처를 표시하는 단계를 더 포함하는 방법을 제공한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 논-픽처 레벨 신택스 요소가 PH에 존재할 때 대응하는 신택스 요소가 신택스 요소를 포함하는 PH와 연관된 픽처의 어떤 슬라이스에도 존재하지 않아야 한다는 것을 제공한다.
제6 관점은 비디오 인코더에 의해 구현되는 방법에 관한 것으로, 상기 방법은: ALF 플래그를 생성하는 단계 - 여기서 제1 값과 동일한 ALF 플래그는 ALF 시그널링이 PH에 존재한다는 것을 지정하고, 제2 값과 동일한 ALF 플래그는 ALF 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정함 - ; 비디오 인코더가 ALF 플래그를 비디오 비트스트림으로 인코딩하는 단계; 및 비디오 인코더가 비디오 디코더를 향한 통신을 위해 비디오 비트스트림을 저장하는 단계를 포함한다.
선택적으로, 선행 관점들 중 임의의 것에서, 관점의 다른 구현은 논-픽처 레벨 신택스 요소가 PH에 존재할 때 대응하는 신택스 요소가 신택스 요소를 포함하는 PH와 연관된 픽처의 어떤 슬라이스에도 존재하지 않아야 한다는 것을 제공한다.
제7 관점은 비디오 디코더에 의해 구현되는 방법에 관한 것으로, 상기 방법은: 비디오 디코더가 신택스 요소를 포함하는 비디오 비트스트림을 수신하는 단계 - 여기서 신택스 요소는 정보가 PH에 존재할 수도 있고 존재하지 않을 수도 있다는 것을 지정하거나 정보가 슬라이스 헤더에 존재하거나 존재하지 않을 수 있다는 것을 지정함 - ; 및 비디오 디코더가 디코딩된 픽처를 획득하기 위해 신택스 요소를 사용하여 코딩된 픽처를 디코딩하는 단계를 포함한다.
위의 실시예 중 임의의 것은 새로운 실시예를 생성하기 위해 상기 다른 임의의 실시예와 조합될 수 있다. 이들 및 다른 특징은 첨부된 도면 및 청구범위와 함께 취해진 다음의 상세한 설명으로부터 더 명확하게 이해될 것이다.
본 개시의 보다 완전한 이해를 위해, 유사한 참조 번호가 유사한 부분을 나타내는 첨부 도면 및 상세한 설명과 관련하여 취해진 다음의 간략한 설명을 이제 참조한다.
도 1은 비디오 신호를 코딩하는 예시적인 방법의 흐름도이다.
도 2는 비디오 코딩을 위한 예시적인 코딩 및 디코딩(코덱) 시스템의 개략도이다.
도 3은 예시적인 비디오 인코더를 예시하는 개략도이다.
도 4는 예시적인 비디오 디코더를 예시하는 개략도이다.
도 5는 비디오 비트스트림의 실시예를 예시한다.
도 6은 제1 실시예에 따른 비트스트림 디코딩 방법을 나타내는 흐름도이다.
도 7은 제1 실시예에 따른 비트스트림 인코딩 방법을 나타내는 흐름도이다.
도 8은 제2 실시예에 따른 비트스트림 디코딩 방법을 나타내는 흐름도이다.
도 9는 제2 실시예에 따른 비트스트림 인코딩 방법을 나타내는 흐름도이다.
도 10은 제3 실시예에 따른 비트스트림 디코딩 방법을 나타내는 흐름도이다.
도 11은 제3 실시예에 따른 비트스트림 인코딩 방법을 나타내는 흐름도이다.
도 12는 비디오 코딩 디바이스의 개략도이다.
도 13은 코딩 수단의 실시예의 개략도이다.
하나 이상의 실시예의 예시적인 구현이 아래에 제공되지만, 개시된 시스템 및/또는 방법은 현재 알려져 있거나 존재하는 임의의 수의 기술을 사용하여 구현될 수 있다는 것이 처음부터 이해되어야 한다. 본 개시는 여기에 예시되고 설명된 예시적인 설계 및 구현을 포함하여 아래에 예시된 예시적인 구현, 도면 및 기술에 결코 제한되어서는 안 되며, 등가물의 전체 범위와 함께 첨부된 청구범위의 범위 내에서 수정될 수 있다.
다음 약어가 적용된다:
ALF(adaptive loop filter): 적응루프 필터
APS(adaptation parameter set): 적응 파라미터 세트
ASIC(application-specific integrated circuit): 애플리케이션별 집적 회로
AU(access unit): 액세스 유닛
AUD(access unit delimiter): 액세스 유닛 구분 기호
BT(binary tree): 이진 트리
CABAC(context-adaptive binary arithmetic coding): 컨텍스트 적응형 이진 산술 코딩
CAVLC(context-adaptive variable-length coding): 컨텍스트 적응형 가변 길이 코딩
Cb(blue difference chroma): 블루 차이 크로마
CLVS(coded layer-wise video sequence): 코딩된 계층별 비디오 시퀀스
CLVS(coded layer video sequence): 코딩된 레이어 비디오 시퀀스
CPU(central processing unit): 중앙 처리 장치
Cr(red difference chroma): 레드 차이 크로마
CRA(clean random access): 클린 랜덤 액세스
CTB(coding tree block): 코딩 트리 블록
CTU(coding tree unit): 코딩 트리 유닛
CU(coding unit): 코딩 유닛
CVS(coded video sequence): 코딩된 비디오 시퀀스
DC(direct current): 직류
DCI(decoding capability information): 디코딩 기능 정보
DCT(discrete cosine transform): 이산 코사인 변환
DMM(depth modeling mode): 깊이 모델링 모드
DPB(decoded picture buffer): 디코딩된 픽처 버퍼
DPS(decoding parameter set): 디코딩 파라미터 세트
DSP(digital signal processor): 디지털 신호 프로세서
DST(discrete sine transform): 이산 사인 변환
EO(electrical-to-optical): 전기광학
FPGA(field-programmable gate array): 현장 프로그래밍 가능한 게이트 어레이
GDR(gradual decoding refresh): 점진적 디코딩 리프레시
HEVC(High Efficiency Video Coding): 고효율 비디오 코딩
ID: 식별자
IDR(instantaneous decoding refresh): 즉각적인 디코딩 리프레시
IEC(International Electrotechnical Commission): 국제 전기 기술 위원회
I/O(input/output): 입력/출력
IRAP(intra random access pictures): 인트라 랜덤 액세스 픽처
ISO(international Organization for Standardization): 국제 표준화 기구
ITU(international Telecommunication Union): 국제 전기 통신 연합
ITU-T(ITU Telecommunication Standardization Sector): ITU 통신 표준화 부문
LMCS(luma mapping with chroma scaling): 크로마 스케일링을 사용한 루마 매핑
LTRP(long-term reference picture): 장기 참조 픽처
MVP(motion vector predictor): 모션 벡터 예측기
NAL(network abstraction layer): 네트워크 추상화 계층
OE(optical-to-electrical): 광-전기
PH(picture header): 픽처 헤더
PIPE(probability interval partitioning entropy): 확률 구간 분할 엔트로피
POC(picture order count): 픽처 순서 카운트
PPS(picture parameter set): 픽처 파라미터 세트
PU(picture unit): 픽처 단위
QT(quad tree): 쿼드 트리
RADL(random access decodable leading): 랜덤 액세스 디코더블 리딩
RAM(random access memory): 랜덤 액세스 메모리
RASL(random access skipped leading): 랜덤 액세스 스킵드 리딩
RBSP(raw byte sequence payload): 원시 바이트 시퀀스 페이로드
RDO(rate-distortion optimization): 레이트 왜곡 최적화
ROM(read-only memory): 읽기 전용 메모리
RPL(reference picture list): 참조 픽처 리스트
Rx(receiver unit): 수신기 유닛
SAD(sum of absolute differences): 절대 차의 합
SAO(sample adaptive offset): 샘플 적응 오프셋
SBAC(syntax-based arithmetic coding): 구문 기반 산술 코딩
SOP(sequence of pictures): 픽처의 순서
SPS(sequence parameter set): 시퀀스 파라미터 세트
SRAM(static RAM): 정적 RAM
SSD(sum of squared differences): 차이 제곱의 합
TCAM(ternary content-addressable memory): 삼항 콘텐츠 주소 지정 가능 메모리
TT(tripple tree): 트리플 트리
TU(transformation unit): 변환 유닛
Tx(transmission unit): 송신기 유닛
VCL(video coding layer): 비디오 코딩 계층
VPS(video parameter set): 비디오 파라미터 세트
VVC(video versatile coding): 다목적 비디오 코딩.
다른 곳에서 수정하지 않는 한 다음 정의가 적용된다. 비트스트림은 인코더와 디코더 간의 전송을 위해 압축된 비디오 데이터를 포함하는 비트 시퀀스이다. 인코더는 인코딩 프로세스를 사용하여 비디오 데이터를 비트스트림으로 압축하는 장치이다. 디코더는 표시를 위한 비트스트림에서 비디오 데이터를 재구성하기 위해 디코딩 프로세스를 사용하는 장치이다. 픽처는 프레임 또는 필드를 생성하는 루마 샘플 또는 크로마 샘플의 어레이이다. 인코딩 또는 디코딩되고 있는 픽처는 현재 픽처로 지칭될 수 있다. 참조 픽처는 인터 예측 또는 인터-레이어 예측에 따라 다른 픽처를 참조로 코딩할 때 사용할 수 있는 참조 샘플을 포함한다. 참조 픽처 리스트는 인터 예측 또는 인터 레이어 예측에 사용되는 참조 픽처의 리스트이다. 플래그는 0 또는 1의 두 가지 가능한 값 중 하나를 취할 수 있는 가변 또는 단일 비트 신택스 요소이다. 일부 비디오 코딩 시스템은 참조 픽처 리스트 1 및 참조 픽처 리스트 0으로 표시될 수 있는 2개의 참조 픽처 리스트를 활용한다. 참조 픽처 리스트 구조는 여러 참조 픽처 리스트를 포함하는 주소 지정 가능한 신택스 구조이다. 인터 예측은 현재 픽처와 현재 픽처가 동일한 계층에 있는 현재 픽처와 다른 참조 픽처의 지시된 샘플을 참조하여 현재 픽처의 샘플을 코딩하는 메커니즘이다. 참조 픽처 리스트 구조 엔트리는 참조 픽처 리스트와 연관된 참조 픽처를 나타내는 참조 픽처 리스트 구조의 주소 지정 가능한 위치이다. 슬라이스 헤더는 슬라이스에 표현된 타일 내의 모든 비디오 데이터와 연관된 데이터 요소를 포함하는 코딩된 슬라이스의 일부이다. PPS는 전체 그림과 관련된 데이터를 포함한다. 보다 구체적으로, PPS는 각 픽처 헤더에서 발견되는 신택스 요소에 의해 결정되는 0개 이상의 전체 코딩된 픽처에 적용되는 신택스 요소를 포함하는 신택스 구조이다. SPS는 일련의 픽처와 연관된 데이터를 포함한다. AU는 DPB로부터의 출력을 위한 (예를 들어, 사용자에 대한 디스플레이를 위한) 동일한 디스플레이 시간(예를 들어, 동일한 픽처 순서 카운트)과 연관된 하나 이상의 코딩된 픽처의 세트이다. AUD는 AU의 시작 또는 AU 사이의 경계를 나타낸다. 디코딩된 비디오 시퀀스는 사용자에게 표시하기 위해 디코더에 의해 재구성된 픽처 시퀀스이다.
도 1은 비디오 신호를 코딩하는 예시적인 동작 방법(100)의 흐름도이다. 구체적으로, 비디오 신호는 인코더에서 인코딩된다. 인코딩 프로세스는 비디오 파일 크기를 줄이기 위해 다양한 메커니즘을 사용하여 비디오 신호를 압축한다. 파일 크기가 작을수록 압축된 비디오 파일이 사용자에게 전송되는 동시에 관련 대역폭 오버헤드가 줄어든다. 그런 다음 디코더는 압축된 비디오 파일을 디코딩하여 최종 사용자에게 표시할 원본 비디오 신호를 재구성한다. 디코딩 프로세스는 일반적으로 디코더가 비디오 신호를 일관되게 재구성할 수 있도록 인코딩 프로세스를 미러링한다.
단계(101)에서, 비디오 신호는 인코더에 입력된다. 예를 들어, 비디오 신호는 메모리에 저장된 비압축 비디오 파일일 수 있다. 다른 예로서, 비디오 파일은 비디오 카메라와 같은 비디오 캡처 장치에 의해 캡처될 수 있고 비디오의 라이브 스트리밍을 지원하도록 인코딩될 수 있다. 비디오 파일은 오디오 성분과 비디오 성분을 모두 포함할 수 있다. 비디오 성분에는 일련의 이미지 프레임이 포함되어 있어 시퀀스로 볼 때 모션에 대한 시각적 인상을 준다. 프레임은 여기에서 루마 성분(또는 루마 샘플)이라고 하는 광과 크로마 성분(또는 컬러 샘플)이라고 하는 색상으로 표현되는 픽셀을 포함한다. 일부 예에서, 프레임은 또한 3차원 보기를 지원하기 위해 깊이 값을 포함할 수 있다.
단계(103)에서, 비디오는 블록으로 분할된다. 분할에는 압축을 위해 각 프레임의 픽셀을 정사각형 및/또는 직사각형 블록으로 세분화하는 작업(subdividing)이 포함된다. 예를 들어, HEVC에서 프레임은 먼저 미리 정의된 크기(예를 들어, 64 픽셀 x 64픽셀) 의 블록인 CTU로 분할될 수 있다. CTU에는 루마 및 크로마 샘플이 모두 포함되어 있다. 코딩 트리를 사용하여 CTU를 블록으로 분할하고 그런 다음 추가 인코딩을 지원하는 구성이 달성될 때까지 블록을 재귀적으로 세분화할 수 있다. 예를 들어, 프레임의 루마 성분은 개별 블록이 상대적으로 균일한 조명 값을 포함할 때까지 세분화될 수 있다. 또한, 프레임의 크로마 성분은 개별 블록이 비교적 균일한 색상 값을 포함할 때까지 세분화될 수 있다. 따라서 비디오 프레임의 내용에 따라 분할 메커니즘이 달라진다.
단계(105)에서, 단계(103)에서 분할된 이미지 블록을 압축하기 위해 다양한 압축 메커니즘이 사용된다. 예를 들어, 인터-예측 및/또는 인트라-예측이 사용될 수 있다. 상호 예측은 공통 장면의 객체가 연속 프레임에 나타나는 경향이 있다는 사실을 이용하도록 설계되었다. 따라서, 참조 프레임에서 객체를 나타내는 블록은 인접 프레임에서 반복적으로 기술될 필요가 없다. 구체적으로, 테이블과 같은 객체는 여러 프레임에 걸쳐 일정한 위치에 남아 있을 수 있다. 따라서 테이블은 한 번 설명되고 인접 프레임은 참조 프레임을 다시 참조할 수 있다. 패턴 일치 메커니즘을 사용하여 여러 프레임에 걸쳐 객체를 일치시킬 수 있다. 또한, 움직이는 객체는 예를 들어 물체의 모션이나 카메라의 모션으로 인해 여러 프레임에 걸쳐 표현될 수 있다. 특정 예로서, 비디오는 여러 프레임에 걸쳐 화면을 가로질러 움직이는 자동차를 보여줄 수 있다. 모션 벡터는 이러한 모션을 설명하는 데 사용할 수 있다. 모션 벡터는 프레임에 있는 객체의 좌표에서 참조 프레임에 있는 객체의 좌표까지 오프셋을 제공하는 2차원 벡터이다. 이와 같이 인터 예측은 현재 프레임의 이미지 블록을 참조 프레임의 해당 블록으로부터의 오프셋을 나타내는 모션 벡터의 집합으로 인코딩할 수 있다.
인트라 예측은 공통 프레임의 블록을 인코딩한다. 인트라 예측은 루마 및 크로마 성분이 프레임에서 클러스터링되는 경향이 있다는 사실을 이용한다. 예를 들어, 나무의 한 부분에 있는 녹색 패치는 유사한 녹색 패치에 인접하게 배치되는 경향이 있다. 인트라 예측은 다중 방향 예측 모드(예를 들어, HEVC에서 33), 평면 모드 및 DC 모드를 사용한다. 방향성 모드는 현재 블록이 해당 방향에서 이웃 블록의 샘플과 유사/동일함을 나타낸다. 평면 모드는 행/열(예를 들어, 평면)을 따라 일련의 블록이 행 가장자리에 있는 이웃 블록을 기반으로 보간될 수 있다는 것을 나타낸다. 실제로 평면 모드는 값을 변경할 때 상대적으로 일정한 기울기를 사용하여 행/열에 걸쳐 조명/색상의 부드러운 전환을 나타낸다. DC 모드는 경계 평활화를 위해 사용되며 방향 예측 모드의 각도 방향과 관련된 모든 이웃 블록의 샘플과 관련된 평균값과 유사/동일한 블록을 나타낸다. 따라서 인트라 예측 블록은 실제 값이 아닌 다양한 관계형 예측 모드 값으로 영상 블록을 표현할 수 있다. 또한, 인터 예측 블록은 실제 값이 아닌 모션 벡터 값으로 영상 블록을 나타낼 수 있다. 어느 경우든 예측 블록은 경우에 따라 이미지 블록을 정확하게 나타내지 않을 수 있다. 모든 차이는 잔여 블록에 저장된다. 파일을 추가로 압축하기 위해 나머지 블록에 변환을 적용할 수 있다.
단계(107)에서, 다양한 필터링 기술이 적용될 수 있다. HEVC에서 필터는 인-루프 필터링 방식에 따라 적용된다. 위에서 논의된 블록 기반 예측은 디코더에서 블록 이미지의 생성을 초래할 수 있다. 또한, 블록 기반 예측 방식은 블록을 인코딩하고 그런 다음 나중에 참조 블록으로 사용하기 위해 인코딩된 블록을 재구성할 수 있다. 인-루프 필터링 방식은 블록/프레임에 노이즈 억제 필터, 디블로킹 필터, 적응 루프 필터 및 SAO 필터를 반복적으로 적용한다. 이러한 필터는 인코딩된 파일이 정확하게 재구성될 수 있도록 이러한 차단 아티팩트를 완화한다. 또한, 이러한 필터는 재구성된 참조 블록에서 아티팩트를 완화하여 아티팩트가 재구성된 참조 블록에 기초하여 인코딩되는 후속 블록에서 추가 아티팩트를 생성할 가능성이 적다.
비디오 신호가 분할, 압축 및 필터링되면, 결과 데이터는 단계(109)에서 비트스트림으로 인코딩된다. 비트스트림은 위에서 논의된 데이터는 물론 디코더에서 적절한 비디오 신호 재구성을 지원하기 위해 원하는 임의의 시그널링 데이터를 포함한다. 예를 들어, 그러한 데이터는 파티션 데이터, 예측 데이터, 잔여 블록, 및 디코더에 코딩 명령을 제공하는 다양한 플래그를 포함할 수 있다. 비트스트림은 요청 시 디코더를 향한 전송을 위해 메모리에 저장될 수 있다. 비트스트림은 또한 복수의 디코더를 향해 브로드캐스트 및/또는 멀티캐스트될 수 있다. 비트스트림 생성은 반복적인 프로세스이다. 따라서, 단계(101, 103, 105, 107, 및 109)는 많은 프레임 및 블록에 걸쳐 연속적으로 및/또는 동시에 발생할 수 있다. 도 1에 도시된 순서는 논의의 명료함과 용이함을 위해 제시되며, 비디오 코딩 프로세스를 특정 순서로 제한하려는 의도가 아니다.
디코더는 단계(111)에서 비트스트림을 수신하고 디코딩 프로세스를 시작한다. 구체적으로, 디코더는 비트스트림을 대응하는 신택스 및 비디오 데이터로 변환하기 위해 엔트로피 디코딩 방식을 사용한다. 디코더는 단계(111)에서 비트스트림으로부터의 신택스 데이터를 사용하여 프레임에 대한 파티션을 결정한다. 단계(103)에서 파티셔닝은 블록 파티셔닝의 결과와 일치해야 한다. 이제 단계(111)에서 사용된 엔트로피 인코딩/디코딩을 설명한다. 인코더는 입력 이미지에서의 값의 공간적 포지셔닝에 기초하여 여러 가능한 선택 중에서 블록 분할 방식을 선택하는 것과 같이, 압축 프로세스 동안 많은 선택을 한다. 정확한 선택을 시그널링하는 것은 많은 수의 빈(bin)을 사용할 수 있다. 본 명세서에서 사용된 바와 같이, 빈은 변수로 취급되는 이진 값(예를 들어, 컨텍스트에 따라 변할 수 있는 비트 값)이다. 엔트로피 코딩을 사용하면 인코더가 특정 경우에 명확하게 실행 가능하지 않은 옵션을 버리고 허용 가능한 옵션 집합을 남길 수 있다. 그런 다음 각각의 허용 가능한 옵션에 코드 워드가 할당된다. 코드 워드의 길이는 허용 가능한 옵션의 수를 기반으로 한다(예를 들어, 2개 옵션의 경우 1개의 빈이고, 3 내지 4개의 옵션의 경우 2개의 빈 등이다). 그런 다음 인코더는 선택한 옵션에 대한 코드 워드를 인코딩한다. 이 방식은 코드 워드가 가능한 모든 옵션의 잠재적으로 큰 집합으로부터의 선택을 고유하게 표시하는 것과 대조적으로 허용 가능한 옵션의 작은 하위 집합으로부터의 선택을 고유하게 나타내도록 원하는 만큼 크므로 코드 워드의 크기를 줄인다. 그런 다음 디코더는 인코더와 유사한 방식으로 허용 가능한 옵션 세트를 결정하여 선택을 디코딩한다. 허용 가능한 옵션 세트를 결정함으로써 디코더는 코드 워드를 읽고 인코더에 의해 만들어진 선택을 결정할 수 있다.
단계(113)에서, 디코더는 블록 디코딩을 수행한다. 구체적으로, 디코더는 역변환을 사용하여 잔여 블록을 생성한다. 그런 다음 디코더는 잔여 블록 및 대응하는 예측 블록을 사용하여 분할에 따라 이미지 블록을 재구성한다. 단계(105)에서 예측 블록은 인코더에서 생성된 인트라 예측 블록 및 인터 예측 블록 모두를 포함할 수 있다. 재구성된 이미지 블록은 그런 다음 단계(111)에서 결정된 분할 데이터에 따라 재구성된 비디오 신호의 프레임에 위치된다. 단계(113)는 또한 위에서 논의된 바와 같이 엔트로피 코딩을 통해 비트스트림에서 시그널링될 수 있다.
단계(115)에서, 인코더에서 단계(107)와 유사한 방식으로 재구성된 비디오 신호의 프레임에 대해 필터링이 수행된다. 예를 들어, 노이즈 억제 필터, 디블로킹 필터, 적응 루프 필터 및 SAO 필터를 프레임에 적용하여 차단 아티팩트를 제거할 수 있다. 프레임이 필터링되면, 비디오 신호는 최종 사용자가 보기 위해 단계(117)에서 디스플레이로 출력될 수 있다.
도 2는 비디오 코딩을 위한 예시적인 코딩 및 디코딩(코덱) 시스템(200)의 개략도이다. 구체적으로, 코덱 시스템(200)은 동작 방법(100)의 구현을 지원하는 기능을 제공한다. 코덱 시스템(200)은 인코더와 디코더 모두에 사용되는 컴포넌트를 묘사하도록 일반화된다. 코덱 시스템(200)은 동작 방법(100)의 단계(101 및 103)와 관련하여 논의된 바와 같이 비디오 신호를 수신 및 분할하며, 이는 분할된 비디오 신호(201)를 생성한다. 그런 다음 코덱 시스템(200)은 동작 방법(100)에서 단계(105, 107, 및 109)와 관련하여 논의된 바와 같이 인코더로서 동작할 때 그 분할된 비디오 신호(201)를 코딩된 비트스트림으로 압축한다. 디코더로서 동작할 때, 코덱 시스템(200)은 동작 방법(100)에서 단계(111, 113, 115, 및 117)와 관련하여 논의된 바와 같이 비트스트림으로부터 출력 비디오 신호를 생성한다. 코덱 시스템(200)은 일반 코더 제어 컴포넌트(211), 변환 스케일링 및 양자화 컴포넌트(213), 인트라-픽처 추정 컴포넌트(215), 인트라-픽처 예측 컴포넌트(217), 모션 보상 컴포넌트(219), 모션 추정 컴포넌트(221), 스케일링 및 역변환 컴포넌트(229), 필터 제어 분석 컴포넌트(227), 인-루프 필터 컴포넌트(225), 디코딩된 픽처 버퍼 컴포넌트(223), 및 헤더 포매팅 및 CABAC 컴포넌트(231)를 포함한다. 이러한 컴포넌트는 도시된 바와 같이 결합된다. 도 2에서, 흑색선은 인코딩/디코딩될 데이터의 이동을 나타내고, 점선은 다른 컴포넌트의 동작을 제어하는 제어 데이터의 이동을 나타낸다. 코덱 시스템(200)의 컴포넌트는 모두 인코더에 존재할 수 있다. 디코더는 코덱 시스템(200)의 컴포넌트들의 하위 집합을 포함할 수 있다. 예를 들어, 디코더는 인트라 픽처 예측 컴포넌트(217), 모션 보상 컴포넌트(219), 스케일링 및 역변환 컴포넌트(229), 인-루프 필터 컴포넌트(225) 및 디코딩된 픽처 버퍼 컴포넌트(223)를 포함한다. 이들 컴포넌트에 대해 이제 설명한다.
분할된 비디오 신호(201)는 코딩 트리에 의해 픽셀 블록으로 분할된 캡처된 비디오 시퀀스이다. 코딩 트리는 픽셀 블록을 더 작은 픽셀 블록으로 세분화하기 위해 다양한 분할 모드를 사용한다. 그런 다음 이러한 블록을 더 작은 블록으로 세분화할 수 있다. 블록은 코딩 트리 상의 노드로 지칭될 수 있다. 더 큰 상위 노드는 더 작은 하위 노드로 분할된다. 노드가 세분화되는 횟수를 노드/코딩 트리의 깊이라고 한다. 분할된 블록은 경우에 따라 CU에 포함될 수 있다. 예를 들어, CU는 CU에 대한 대응하는 신택스 명령과 함께 루마 블록, Cr 블록(들) 및 Cb 블록(들)을 포함하는 CTU의 하위 부분일 수 있다. 분할 모드는 사용된 분할 모드에 따라 다양한 모양의 노드를 각각 2, 3 또는 4개의 자식 노드로 분할하는 데 사용되는 BT, TT 및 QT를 포함할 수 있다. 분할된 비디오 신호(201)는 일반 코더 제어 컴포넌트(211), 변환 스케일링 및 양자화 컴포넌트(213), 인트라 픽처 추정 컴포넌트(215), 필터 제어 분석 컴포넌트(227), 및 압축을 위한 모션 추정 컴포넌트(221)로 포워딩된다.
일반 코더 제어 컴포넌트(211)는 애플리케이션 제약에 따라 비디오 시퀀스의 이미지를 비트스트림으로 코딩하는 것과 관련된 결정을 내리도록 구성된다. 예를 들어, 일반 코더 제어 컴포넌트(211)는 비트레이트/비트스트림 크기 대 재구성 품질의 최적화를 관리한다. 이러한 결정은 저장 공간/대역폭 가용성 및 이미지 해상도 요청을 기반으로 할 수 있다. 일반 코더 제어 컴포넌트(211)는 또한 버퍼 언더런 및 오버런 문제를 완화하기 위해 전송 속도에 비추어 버퍼 활용을 관리한다. 이러한 문제를 관리하기 위해 일반 코더 제어 컴포넌트(211)는 다른 컴포넌트에 의한 분할, 예측 및 필터링을 관리한다. 예를 들어, 일반 코더 제어 컴포넌트(211)는 해상도를 증가시키고 대역폭 사용을 증가시키기 위해 압축 복잡도를 동적으로 증가시키거나 해상도 및 대역폭 사용을 감소시키기 위해 압축 복잡도를 감소시킬 수 있다. 따라서, 일반 코더 제어 컴포넌트(211)는 코덱 시스템(200)의 다른 컴포넌트를 제어하여 비디오 신호 재구성 품질과 비트 레이트 문제의 균형을 맞춘다. 일반 코더 제어 컴포넌트(211)는 다른 컴포넌트의 동작을 제어하는 제어 데이터를 생성한다. 제어 데이터는 또한 디코더에서 디코딩하기 위한 신호 파라미터로 비트스트림에서 인코딩되도록 헤더 포매팅 및 CABAC 컴포넌트(231)로 전달된다.
분할된 비디오 신호(201)는 또한 인터 예측을 위해 모션 추정 컴포넌트(221) 및 모션 보상 컴포넌트(219)로 전송된다. 분할된 비디오 신호(201)의 프레임 또는 슬라이스는 다수의 비디오 블록으로 분할될 수 있다. 모션 추정 컴포넌트(221) 및 모션 보상 컴포넌트(219)는 시간 예측을 제공하기 위해 하나 이상의 참조 프레임의 하나 이상의 블록에 대해 수신된 비디오 블록의 인터 예측 코딩(inter-predictive coding)을 수행한다. 코덱 시스템(200)은 예를 들어 비디오 데이터의 각각의 블록에 대한 적절한 코딩 모드를 선택하기 위해 다수의 코딩 패스를 수행할 수도 있다.
모션 추정 컴포넌트(221) 및 모션 보상 컴포넌트(219)는 고도로 통합될 수 있지만, 개념적 목적을 위해 별도로 예시된다. 모션 추정 컴포넌트(221)에 의해 수행되는 모션 추정은 비디오 블록에 대한 모션을 추정하는 모션 벡터를 생성하는 프로세스이다. 예를 들어, 모션 벡터는 예측 블록에 대한 코딩된 객체의 변위를 나타낼 수 있다. 예측 블록은 픽셀 차이 측면에서 코딩될 블록과 밀접하게 일치하는 것으로 발견된 블록이다. 예측 블록은 참조 블록이라고도 할 수 있다. 이러한 픽셀 차이는 SAD, SSD, 또는 다른 차이 메트릭에 의해 결정될 수 있다. HEVC는 CTU, CTB 및 CU를 비롯한 여러 코딩된 객체를 사용한다. 예를 들어, CTU는 CTB로 분할될 수 있으며, 그런 다음 CU에 포함되기 위해 CB로 분할될 수 있다. CU는 예측 데이터를 포함하는 예측 단위 및/또는 CU에 대한 변환된 잔여 데이터를 포함하는 TU로서 인코딩될 수 있다. 모션 추정 컴포넌트(221)는 레이트 왜곡 최적화 프로세스의 일부로서 레이트-왜곡 분석을 사용함으로써 모션 벡터, 예측 유닛, 및 TU를 생성한다. 예를 들어, 모션 추정 컴포넌트(221)는 현재 블록/프레임에 대한 다중 참조 블록, 다중 모션 벡터 등을 결정할 수 있고, 최상의 레이트 왜곡 특성을 갖는 참조 블록, 모션 벡터 등을 선택할 수 있다. 최상의 레이트 왜곡 특성은 비디오 재구성의 품질(예를 들어, 압축에 의한 데이터 손실의 양)과 코딩 효율성(예를 들어, 최종 인코딩의 크기)의 균형을 유지한다.
일부 예에서, 코덱 시스템(200)은 디코딩된 픽처 버퍼 컴포넌트(223)에 저장된 참조 픽처의 정수 이하 픽셀 위치에 대한 값을 계산할 수 있다. 예를 들어, 비디오 코덱 시스템(200)은 1/4 픽셀 위치, 1/8 픽셀 위치, 또는 참조 픽처의 다른 분수 픽셀 위치의 값을 보간할 수 있다. 따라서, 모션 추정 컴포넌트(221)는 전체 픽셀 위치 및 부분 픽셀 위치에 대한 모션 검색을 수행하고 부분 픽셀 정밀도를 갖는 모션 벡터를 출력할 수 있다. 모션 추정 컴포넌트(221)는 예측 단위의 위치를 참조 픽처의 예측 블록의 위치와 비교함으로써 인터 코딩된 슬라이스에서 비디오 블록의 예측 단위에 대한 모션 벡터를 계산한다. 모션 추정 컴포넌트(221)는 인코딩 및 모션을 위해 헤더 포매팅 및 CABAC 컴포넌트(231)에 대한 모션 데이터로서 그 계산된 모션 벡터를 모션 보상 컴포넌트(219)에 출력한다.
모션 보상 컴포넌트(219)에 의해 수행되는 모션 보상은 모션 추정 컴포넌트(221)에 의해 결정된 모션 벡터에 기초하여 예측 블록을 페치하거나 생성하는 것을 수반할 수 있다. 다시, 모션 추정 컴포넌트(221) 및 모션 보상 컴포넌트(219)는 일부 예들에서 기능적으로 통합될 수 있다. 현재 비디오 블록의 예측 단위에 대한 모션 벡터를 수신할 때, 모션 보상 컴포넌트(219)는 모션 벡터가 가리키는 예측 블록을 찾을 수도 있다. 그런 다음, 코딩되고 있는 현재 비디오 블록의 픽셀 값으로부터 예측 블록의 픽셀 값을 빼서 픽셀 차이 값을 형성함으로써 잔여 비디오 블록이 형성된다. 일반적으로, 모션 추정 컴포넌트(221)는 루마 성분에 대한 모션 추정을 수행하고, 모션 보상 컴포넌트(219)는 크로마 성분 및 루마 성분 모두에 대한 루마 성분에 기초하여 계산된 모션 벡터를 사용한다. 예측 블록 및 잔여 블록은 변환 스케일링 및 양자화 컴포넌트(213)로 포워딩한다.
분할된 비디오 신호(201)는 또한 인트라 픽처 추정 컴포넌트(215) 및 인트라 픽처 예측 컴포넌트(217)로 전송된다. 모션 추정 컴포넌트(221) 및 모션 보상 컴포넌트(219)와 마찬가지로, 인트라 픽처 추정 컴포넌트(215) 및 인트라 픽처 예측 컴포넌트(217)는 고도로 통합되어 있지만 개념적 목적을 위해 별도로 설명되어 있다. 인트라 픽처 추정 컴포넌트(215) 및 인트라 픽처 예측 컴포넌트(217)는 위에서 설명한 대로 프레임 간의 모션 추정 컴포넌트(221) 및 모션 보상 컴포넌트(219)에 의해 수행되는 인터 예측에 대한 대안으로서 현재 프레임의 블록에 대한 현재 블록을 인트라 예측한다. 특히, 인트라 픽처 추정 컴포넌트(215)는 현재 블록을 인코딩하기 위해 사용할 인트라 예측 모드를 결정한다. 일부 예들에서, 인트라 픽처 추정 컴포넌트(215)는 다수의 테스트된 인트라 예측 모드들로부터 현재 블록을 인코딩하기 위해 적절한 인트라 예측 모드를 선택한다. 선택된 인트라 예측 모드는 인코딩을 위해 헤더 포매팅 및 CABAC 컴포넌트(231)로 포워딩된다.
예를 들어, 인트라-픽처 추정 컴포넌트(215)는 테스트된 다양한 인트라 예측 모드에 대한 레이트 왜곡 분석을 사용하여 레이트 왜곡 값을 계산하고 테스트된 모드 중에서 최상의 레이트 왜곡 특성을 갖는 인트라-예측 모드를 선택한다. 레이트 왜곡 분석은 일반적으로 인코딩된 블록과 인코딩된 블록을 생성하기 위해 인코딩되었던 원본의 비인코딩된 블록 사이의 왜곡(또는 오류)의 양, 그리고 인코딩된 블록을 생성하는 데 사용된 비트레이트(예를 들어, 비트 수)를 결정한다. 인트라-픽처 추정 컴포넌트(215)는 블록에 대한 최상의 레이트 왜곡 값을 나타내는 인트라 예측 모드를 결정하기 위해 다양한 인코딩된 블록에 대한 왜곡 및 레이트로부터 비율을 계산한다. 또한, 인트라-픽처 추정 컴포넌트(215)는 RDO에 기초한 DMM을 사용하여 깊이 맵의 깊이 블록을 코딩하도록 구성될 수 있다.
인트라-픽처 예측 컴포넌트(217)는 인코더 상에서 구현될 때 인트라-픽처 추정 컴포넌트(215)에 의해 결정된 선택된 인트라 예측 모드에 기초하여 예측 블록으로부터 잔여 블록을 생성하거나 디코더 상에서 구현될 때 비트스트림으로부터 잔여 블록을 판독할 수 있다. 잔여 블록은 예측 블록과 원본 블록 간의 값의 차이를 포함하며 행렬로 표현된다. 그런 다음, 잔여 블록은 변환 스케일링 및 양자화 컴포넌트(213)로 포워딩된다. 인트라 픽처 추정 컴포넌트(215) 및 인트라 픽처 예측 컴포넌트(217)는 루마 및 크로마 성분 모두에 대해 동작할 수 있다.
변환 스케일링 및 양자화 컴포넌트(213)는 잔여 블록을 추가로 압축하도록 구성된다. 변환 스케일링 및 양자화 컴포넌트(213)는 DCT, DST 또는 개념적으로 유사한 변환과 같은 변환을 잔여 블록에 적용하여 잔여 변환 계수 값을 포함하는 비디오 블록을 생성한다. 웨이블릿 변환, 정수 변환, 부분대역 변환 또는 다른 유형의 변환도 사용할 수 있다. 변환은 잔여 정보를 픽셀 값 도메인으로부터 주파수 도메인과 같은 변환 도메인으로 변환할 수 있다. 변환 스케일링 및 양자화 컴포넌트(213)는 또한 예를 들어 주파수에 기초하여 변환된 잔여 정보를 스케일링하도록 구성된다. 그러한 스케일링은 스케일 팩터를 잔여 정보에 적용하여 상이한 주파수 정보가 상이한 입도(granularity)에서 양자화되도록 하는 것을 포함하며, 이는 재구성된 비디오의 최종 시각적 품질에 영향을 미칠 수 있다. 변환 스케일링 및 양자화 컴포넌트(213)는 또한 비트 레이트를 추가로 감소시키기 위해 변환 계수를 양자화하도록 구성된다. 양자화 프로세스는 계수의 일부 또는 전부와 연관된 비트 깊이를 감소시킬 수 있다. 양자화의 정도는 양자화 파라미터를 조정함으로써 수정될 수 있다. 일부 예들에서, 변환 스케일링 및 양자화 컴포넌트(213)는 그런 다음 양자화된 변환 계수들을 포함하는 행렬의 스캔을 수행할 수 있다. 양자화된 변환 계수는 헤더 포매팅 및 CABAC 컴포넌트(231)로 전송되어 비트스트림에서 인코딩된다.
스케일링 및 역변환 컴포넌트(229)는 모션 추정을 지원하기 위해 변환 스케일링 및 양자화 컴포넌트(213)의 역연산을 적용한다. 스케일링 및 역변환 컴포넌트(229)는 예를 들어, 다른 현재 블록에 대한 예측 블록이 될 수 있는 참조 블록으로서 나중에 사용하기 위해, 픽셀 도메인에서 잔여 블록을 재구성하기 위해 역 스케일링, 변환, 및/또는 양자화를 적용한다. 모션 추정 컴포넌트(221) 및/또는 모션 보상 컴포넌트(219)는 나중에 블록/프레임의 모션 추정에 사용하기 위해 대응하는 예측 블록에 잔여 블록을 다시 추가함으로써 참조 블록을 계산할 수도 있다. 필터는 스케일링, 양자화 및 변환 중에 생성된 아티팩트를 완화하기 위해 재구성된 참조 블록에 적용된다. 그렇지 않으면 후속 블록이 예측될 때 이러한 아티팩트가 부정확한 예측을 야기할 수 있다(그리고 추가 아티팩트를 생성할 수 있다).
필터 제어 분석 컴포넌트(227) 및 인-루프 필터 컴포넌트(225)는 필터를 잔여 블록 및/또는 재구성된 이미지 블록에 적용한다. 예를 들어, 스케일링 및 역변환 컴포넌트(229)로부터의 변환된 잔여 블록은 인트라 픽처 예측 컴포넌트(217) 및/또는 모션 보상 컴포넌트(219)로부터의 대응하는 예측 블록과 결합되어 원본 이미지 블록을 재구성할 수 있다. 그런 다음 필터는 재구성된 이미지 블록에 적용될 수 있다. 일부 예들에서, 필터들은 그 대신에 잔여 블록들에 적용될 수 있다. 도 2의 다른 컴포넌트와 마찬가지로, 필터 제어 분석 컴포넌트(227) 및 인-루프 필터 컴포넌트(225)는 고도로 통합되어 함께 구현될 수 있지만 개념적 목적을 위해 별도로 도시된다. 재구성된 참조 블록에 적용된 필터는 특정 공간 영역에 적용되며 이러한 필터가 적용되는 방식을 조정하기 위해 여러 파라미터를 포함한다. 필터 제어 분석 컴포넌트(227)는 재구성된 참조 블록을 분석하여 그러한 필터가 적용되어야 하는 위치를 결정하고 대응하는 파라미터를 설정한다. 그러한 데이터는 인코딩을 위한 필터 제어 데이터로서 헤더 포매팅 및 CABAC 컴포넌트(231)로 포워딩된다. 인-루프 필터 컴포넌트(225)는 필터 제어 데이터에 기초하여 이러한 필터를 적용한다. 필터는 디블로킹 필터, 잡음 억제 필터, SAO 필터 및 적응 루프 필터를 포함할 수 있다. 그러한 필터는 예에 따라 (예를 들어, 재구성된 픽셀 블록 상의) 공간/픽셀 도메인 또는 주파수 도메인에서 적용될 수 있다.
인코더로서 동작할 때, 필터링된 재구성된 이미지 블록, 잔여 블록, 및/또는 예측 블록은 위에서 논의된 바와 같이 모션 추정에서 나중에 사용하기 위해 디코딩된 픽처 버퍼 컴포넌트(223)에 저장된다. 디코더로서 동작할 때, 디코딩된 픽처 버퍼 컴포넌트(223)는 재구성되고 필터링된 블록을 저장하고 출력 비디오 신호의 일부로서 디스플레이를 향해 포워딩한다. 디코딩된 픽처 버퍼 컴포넌트(223)는 예측 블록, 잔여 블록, 및/또는 재구성된 이미지 블록을 저장할 수 있는 임의의 메모리 장치일 수 있다.
헤더 포매팅 및 CABAC 컴포넌트(231)는 코덱 시스템(200)의 다양한 컴포넌트로부터 데이터를 수신하고 디코더를 향한 전송을 위해 이러한 데이터를 코딩된 비트스트림으로 인코딩한다. 구체적으로, 헤더 포매팅 및 CABAC 컴포넌트(231)는 일반 제어 데이터 및 필터 제어 데이터와 같은 제어 데이터를 인코딩하기 위한 다양한 헤더를 생성한다. 또한, 인트라 예측 및 모션 데이터를 포함하는 예측 데이터와 양자화된 변환 계수 데이터 형태의 잔여 데이터가 모두 비트스트림에 인코딩된다. 최종 비트스트림은 원본 분할된 비디오 신호(201)를 재구성하기 위해 디코더가 원하는 모든 정보를 포함한다. 이러한 정보는 또한 인트라 예측 모드 인덱스 테이블(코드워드 매핑 테이블이라고도 함), 다양한 블록에 대한 인코딩 컨텍스트의 정의, 가장 가능성 있는 인트라 예측 모드의 표시, 파티션 정보의 표시 등을 포함할 수 있다. 이러한 데이터는 엔트로피 코딩을 사용하여 인코딩될 수 있다. 예를 들어, 정보는 CAVLC, CABAC, SBAC, PIPE 코딩, 또는 다른 엔트로피 코딩 기술을 사용하여 인코딩될 수 있다. 엔트로피 코딩에 이어, 코딩된 비트스트림은 다른 장치(예를 들어, 비디오 디코더)로 전송되거나 나중의 전송 또는 검색을 위해 보관될 수 있다.
도 3은 예시적인 비디오 인코더(300)를 예시하는 블록도이다. 비디오 인코더(300)는 코덱 시스템(200)의 인코딩 기능들을 구현하고 그리고/또는 동작 방법(100)의 단계들(101, 103, 105, 107, 및/또는 109)을 구현하기 위해 사용될 수 있다. 인코더(300)는 입력 비디오 신호를 분할하여 분할된 비디오 신호(301)를 생성하며, 이는 분할된 비디오 신호(201)와 실질적으로 유사하다. 분할된 비디오 신호(301)는 그런 다음 인코더(300)의 컴포넌트에 의해 압축되고 비트스트림으로 인코딩된다.
구체적으로, 분할된 비디오 신호(301)는 인트라 예측을 위해 인트라 픽처 예측 컴포넌트(317)로 포워딩된다. 인트라 픽처 예측 컴포넌트(317)는 인트라 픽처 추정 컴포넌트(215) 및 인트라 픽처 예측 컴포넌트(217)와 실질적으로 유사할 수 있다. 모션 보상 컴포넌트(321)는 모션 추정 컴포넌트(221) 및 모션 보상 컴포넌트(219)와 실질적으로 유사할 수 있다. 인트라-픽처 예측 컴포넌트(317)로부터의 예측 블록 및 잔여 블록은 잔여 블록의 변환 및 양자화를 위한 변환 및 양자화 컴포넌트(313)로 포워딩된다. 변환 및 양자화 컴포넌트(313)는 변환 스케일링 및 양자화 컴포넌트(213)와 실질적으로 유사할 수 있다. 변환 및 양자화된 잔여 블록 및 대응하는 예측 블록(관련 제어 데이터와 함께)은 비트스트림으로 코딩하기 위해 엔트로피 코딩 컴포넌트(331)로 포워딩된다. 엔트로피 코딩 컴포넌트(331)는 헤더 포매팅 및 CABAC 컴포넌트(231)와 실질적으로 유사할 수 있다.
변환 및 양자화된 잔여 블록 및/또는 대응하는 예측 블록은 또한 모션 보상 컴포넌트(321)에 의해 사용하기 위한 참조 블록으로의 재구성을 위해 변환 및 양자화 컴포넌트(313)에서 역변환 및 양자화 컴포넌트(329)로 포워딩된다. 역변환 및 양자화 컴포넌트(329)는 스케일링 및 역변환 컴포넌트(229)와 실질적으로 유사할 수 있다. 인-루프 필터 컴포넌트(325)의 인-루프 필터는 또한 예에 따라 잔여 블록 및/또는 재구성된 참조 블록에 적용된다. 인-루프 필터 컴포넌트(325)는 필터 제어 분석 컴포넌트(227) 및 인-루프 필터 컴포넌트(225)와 실질적으로 유사할 수 있다. 인-루프 필터 컴포넌트(325)는 인-루프 필터 컴포넌트(225)와 관련하여 논의된 바와 같은 다중 필터를 포함할 수 있다. 필터링된 블록은 그런 다음 모션 보상 컴포넌트(321)에 의한 참조 블록으로서 사용하기 위해 디코딩된 픽처 버퍼 컴포넌트(323)에 저장된다. 디코딩된 픽처 버퍼 컴포넌트(323)는 디코딩된 픽처 버퍼 컴포넌트(223)와 실질적으로 유사할 수 있다.
도 4는 예시적인 비디오 디코더(400)를 예시하는 블록도이다. 비디오 디코더(400)는 코덱 시스템(200)의 디코딩 기능을 구현하고 그리고/또는 동작 방법(100)의 단계(111, 113, 115, 및/또는 117)를 구현하기 위해 사용될 수 있다. 디코더(400)는 예를 들어 인코더(300)로부터의 비트스트림을 생성하고, 최종 사용자에게 표시하기 위해 비트스트림에 기초하여 재구성된 출력 비디오 신호를 생성한다.
비트스트림은 엔트로피 디코딩 컴포넌트(433)에 의해 수신된다. 엔트로피 디코딩 컴포넌트(433)는 CAVLC, CABAC, SBAC, PIPE 코딩, 또는 다른 엔트로피 코딩 기술과 같은 엔트로피 디코딩 방식을 구현하도록 구성된다. 예를 들어, 엔트로피 디코딩 컴포넌트(433)는 헤더 정보를 사용하여 비트스트림에서 코드워드로서 인코딩된 추가 데이터를 해석하기 위한 컨텍스트를 제공할 수 있다. 디코딩된 정보는 일반 제어 데이터, 필터 제어 데이터, 파티션 정보, 모션 데이터, 예측 데이터 및 잔여 블록으로부터의 양자화된 변환 계수와 같이, 비디오 신호를 디코딩하기 위한 임의의 원하는 정보를 포함한다. 양자화된 변환 계수는 잔여 블록으로의 재구성을 위해 역변환 및 양자화 컴포넌트(429)로 포워딩된다. 역변환 및 양자화 컴포넌트(429)는 역변환 및 양자화 컴포넌트(329)와 유사할 수 있다.
재구성된 잔여 블록 및/또는 예측 블록은 인트라 예측 동작에 기초한 이미지 블록으로의 재구성을 위해 인트라 픽처 예측 컴포넌트(417)로 포워딩된다. 인트라 픽처 예측 컴포넌트(417)는 인트라 픽처 추정 컴포넌트(215) 및 인트라 픽처 예측 컴포넌트(217)와 유사할 수 있다. 구체적으로, 인트라-픽처 예측 컴포넌트(417)는 예측 모드를 적용하여 프레임에서 참조 블록을 찾아내고 그 결과에 잔여 블록을 적용하여 인트라 예측된 이미지 블록을 재구성한다. 재구성된 인트라 예측된 이미지 블록 및/또는 잔여 블록 및 대응하는 인터 예측 데이터는 디코딩된 픽처 버퍼 컴포넌트(223) 및 인-루프 필터 컴포넌트(225)와 각각 실질적으로 유사할 수 있는 인-루프 필터 컴포넌트(425)를 통해 디코딩된 픽처 버퍼 컴포넌트(423)로 포워딩된다. 인-루프 필터 컴포넌트(425)는 재구성된 이미지 블록, 잔여 블록 및/또는 예측 블록을 필터링하고, 이러한 정보는 디코딩된 픽처 버퍼 컴포넌트(423)에 저장된다. 디코딩된 픽처 버퍼 컴포넌트(423)로부터의 재구성된 이미지 블록은 인터-예측을 위해 모션 보상 컴포넌트(421)로 포워딩된다. 모션 보상 컴포넌트(421)는 모션 추정 컴포넌트(221) 및/또는 모션 보상 컴포넌트(219)와 실질적으로 유사할 수 있다. 구체적으로, 모션 보상 컴포넌트(421)는 참조 블록으로부터 모션 벡터를 적용하여 예측 블록을 생성하고 그 결과에 잔여 블록을 적용하여 이미지 블록을 재구성한다. 결과적인 재구성된 블록은 또한 인-루프 필터 컴포넌트(425)를 통해 디코딩된 픽처 버퍼 컴포넌트(423)로 포워딩될 수 있다. 디코딩된 픽처 버퍼 컴포넌트(423)는 파티션 정보를 통해 프레임으로 재구성될 수 있는 추가의 재구성된 이미지 블록을 계속해서 저장한다. 이러한 프레임은 시퀀스에 배치될 수도 있다. 시퀀스는 재구성된 출력 비디오 신호로서 디스플레이를 향해 출력된다.
도 5는 비디오 비트스트림(500)의 실시예를 예시한다. 비디오 비트스트림(500)은 또한 코딩된 비디오 비트스트림, 비트스트림, 또는 이들의 변형으로 지칭될 수 있다. 비트스트림(500)은 적어도 하나의 PU(501)를 포함한다. PU(501) 중 3개가 도 5에 도시되어 있지만, 실제 적용에서 다른 수의 PU(501)가 비트스트림(500)에 존재할 수 있다. 각각의 PU(501)는 지정된 분류 규칙에 따라 서로 연관되고 디코딩 순서가 연속적이며 정확히 하나의 코딩된 픽처(예를 들어, 픽처(514))를 포함하는 NAL 유닛 세트이다. 일 실시예에서, 각각의 PU(501)는 임시 ID(519)를 갖거나 그와 연관된다.
실시예에서, 각각의 PU(501)는 DCI(502), VPS(504), SPS(506), PPS(508), PH(512), 및 픽처(514) 중 하나 이상을 포함한다. DCI(502), VPS(504), SPS(506) 및 PPS(508) 각각은 일반적으로 파라미터 세트로 지칭될 수 있다. 도 5에 도시되지 않은 다른 파라미터 세트 역시 예를 들어 APS와 같은 비트스트림(500)에 포함될 수 있으며, 이는 슬라이스 헤더(520)에서 발견되는 0개 이상의 신택스 요소에 의해 결정되는 0개 이상의 슬라이스에 적용되는 신택스 구조를 포함하는 신택스 구조이다.
DPS라고도 하는 DCI(502)는 전체 비트스트림에 적용되는 신택스 요소를 포함하는 신택스 구조이다. DCI(502)는 세션의 수명으로 변환될 수 있는 비디오 비트스트림(예를 들어, 비트스트림(500))의 수명 동안 일정하게 유지되는 파라미터를 포함한다. DCI(502)는 세션 내에서 비디오 시퀀스의 스플라이싱이 발생하더라도 절대 초과되지 않는 최대 복잡성 상호 운용성 포인트(maximum complexity interop point)를 결정하기 위해 프로파일, 레벨 및 서브-프로파일 정보를 포함할 수 있다. 제한 플래그를 선택적으로 추가로 포함하는 경우, 이 제한 플래그는 비디오 비트스트림이 해당 플래그의 값에 의해 지시되는 특정 기능의 사용으로 제한될 것임을 나타낸다. 이를 통해 비트스트림은 디코더 구현에서 무엇보다도 리소스 할당을 허용하는 특정 도구를 사용하지 않는 것으로 레이블링될 수 있다. 모든 파라미터 세트와 마찬가지로 DCI(502)는 처음 참조될 때 존재하고, 비디오 시퀀스의 맨 처음 픽처에 의해 참조될 때, 비트스트림의 첫 번째 NAL 유닛 사이에서 전송되어야 함을 의미한다. 다수의 DCI(502)가 비트스트림에 있을 수 있지만, 그 안의 신택스 요소의 값은 참조될 때 불일치할 수 없다.
VPS(504)는 향상 계층(enhancement layers)의 참조 픽처 세트 구성을 위한 디코딩 의존성 또는 정보를 포함한다. VPS(504)는 스케일러블 시퀀스의 전체 관점 또는 보기를 제공하며, 이러한 스케일러블 시퀀스는 어떤 유형의 동작 지점이 제공되는지, 동작 지점의 프로필(profile), 계층(tier) 및 수준(level), 세션 협상 및 콘텐츠 선택의 기반으로서 사용될 수 있는 일부 다른 비트스트림의 하이-레벨 속성을 포함한다.
SPS(506)는 SOP의 모든 그림에 공통적인 데이터를 포함한다. SPS(506)는 각 픽처 헤더에서 발견된 신택스 요소에 의해 참조되는 PPS에서 발견된 신택스 요소의 콘텐츠에 의해 결정되는 바와 같이 0개 이상의 전체 CLVS에 적용되는 신택스 요소를 포함하는 신택스 구조이다. 대조적으로, PPS(508)는 전체 픽처에 공통된 데이터를 포함한다. PPS(508)는 각각의 픽처 헤더(예를 들어, PH(512))에서 발견되는 신택스 요소에 의해 결정되는 바와 같이 0개 이상의 전체 코딩된 픽처에 적용되는 신택스 요소를 포함하는 신택스 구조이다.
DCI(502), VPS(504), SPS(506), 및 PPS(508)는 상이한 유형의 NAL 유닛에 포함된다. NAL 유닛은 뒤따를 데이터의 유형(예를 들어, 코딩된 비디오 데이터)의 표시를 포함하는 신택스 구조이다. NAL 유닛은 VCL NAL 유닛과 논-VCL(non-VCL) NAL 유닛으로 분류된다. VCL NAL 유닛은 비디오 픽처의 샘플 값을 나타내는 데이터를 포함하고, 논-VCL NAL 유닛은 파라미터 세트와 같은 임의의 관련 추가 정보(여러 VCL NAL 유닛에 적용될 수 있는 중요한 데이터) 및 추가 향상 정보(디코딩된 비디오 신호의 사용성을 향상시킬 수 있지만 비디오 픽처의 샘플 값을 디코딩하는 데 필요하지 않은 타이밍 정보 및 기타 추가 데이터)를 포함한다.
PH(512)는 코딩된 픽처(예를 들어, 픽처(514))의 모든 슬라이스(예를 들어, 슬라이스(518))에 적용되는 신택스 요소를 포함하는 신택스 구조이다. 실시예에서, PH(512)는 PH NAL 유닛으로 지정된 새로운 유형의 논-VCL NAL 유닛에 있다. 따라서, PH NAL 유닛은 PH NUT(예를 들어, PH_NUT)를 갖는다. 실시예에서, 각각의 PU(501)에 포함된 단 하나의 PH (512)가 있다. 즉, PU(501)는 단일 또는 단독의 PH(512)를 포함한다. 실시예에서, 비트스트림(500)의 각 픽처(501)에 대해 정확히 하나의 PH NAL 유닛이 존재한다.
픽처(514)는 모노크롬 포맷에서의 루마 샘플 어레이 또는 4:2:0, 4:2:2 및 4:4:4 컬러 포맷에서의 루마 샘플의 어레이 및 두 개의 대응하는 크로마 샘플 어레이이다. 일 실시예에서, 각 PU(501)에는 오직 하나의 픽처(514)가 포함된다. 이와 같이, 각각의 PU(501)에는 오직 하나의 PH(512) 및 해당 PH(512)에 대응하는 하나의 픽처(514)만이 존재한다. 즉, PU(501)는 단일 또는 단독 픽처(514)를 포함한다.
각각의 픽처(514)는 하나 이상의 슬라이스(518)를 포함한다. 슬라이스(518)는 픽처(예를 들어, 픽처(514))의 타일 내의 완전한 타일의 정수 또는 연속적인 완전한 CTU 행의 정수이다. 각각의 슬라이스(518)는 단일 NAL 유닛(예를 들어, VCL NAL 유닛)에 배타적으로 포함된다. 실시예에서, 단일 NAL 유닛은 계층 ID(515)와 연관되거나 이를 갖는다. 타일(도시되지 않음)은 픽처(예를 들어, 픽처(514))의 특정 타일 행 및 특정 타일 열 내의 CTU의 직사각형 영역이다. 타일은 수평 및 수직 경계에 의해 생성된 픽처의 분할된 부분이다. 타일은 직사각형 및/또는 정사각형일 수 있다. 구체적으로 타일은 직각으로 연결된 네 개의 변을 포함한다. 네 개의 변에는 두 쌍의 평행한 변이 포함된다. 또한, 평행한 변 쌍의 변의 길이는 동일하다. 따라서 타일은 모든 직사각형 모양이 될 수 있다. 여기서 정사각형은 네 변의 길이가 모두 같은 직사각형의 특수한 경우이다. 이미지/픽처는 하나 이상의 타일을 포함할 수 있다. CTU(도시되지 않음)는 루마 샘플의 CTB, 세 개의 샘플 어레이를 갖는 픽처의 크로마 샘플의 두 개의 해당 CTB, 또는 세 개의 개별 컬러 평면 및 샘플을 코딩하는 데 사용되는 신택스 구조를 사용하여 코딩되는 픽처 또는 모노크롬 픽처의 샘플의 CTB이다. CTB(도시되지 않음)는 컴포넌트를 CTB로 분할하는 것이 파티셔닝이 되도록 N의 일부 값에 대한 샘플의 N×N 블록이다. 블록(도시되지 않음)은 샘플(예를 들어, 픽셀)의 MxN(M-열 x N-행) 어레이, 또는 변환 계수의 MxN 어레이이다.
픽처(514) 및 그 슬라이스(518)는 인코딩 또는 디코딩되는 이미지 또는 비디오와 연관된 데이터를 포함한다. 따라서, 픽처(514) 및 그 슬라이스(518)는 비트스트림(500)에 실려 전달되는 페이로드 또는 데이터로 간단히 지칭될 수 있다. PH(512) 및 슬라이스 헤더(520)는 플래그(522)를 포함할 수 있다. 플래그(522)는 RPL 플래그, SAO 플래그 또는 아래에 설명된 ALF 플래그이다.
VVC 사양은 픽처 레벨인 소수의 신택스 요소만을 지정하지만, 일반적인 사용의 경우 동일한 픽처의 슬라이스 간에 값이 다를 수 있지만 일반적으로 동일한 픽처의 모든 슬라이스에 대해 동일한 값을 갖는 더 많은 신택스 요소가 있다. 이러한 신택스 요소의 예는 RPL, 조인트 크로마 사인 플래그, SAO 인에이블 플래그, ALF 인에이블 플래그 및 파라미터, LMCS 인에이블 플래그 및 파라미터, 스케일링 리스트 인에이블 플래그 및 파라미터와 연관된 신택스 요소이다. 이와 같은 논-픽처-레벨 신택스 요소는 PH에서 시그널링되지 않으므로 동일한 화상의 모든 슬라이스에 대해 동일한 값을 갖는 경우에도 여전히 해당 슬라이스의 모든 슬라이스 헤더에서 반복되어야 한다. 다시 말해, 일부 접근 방식에서 이러한 신택스 요소는 슬라이스 헤더에서 시그널링되었다. 이것은 그들이 운반하는 데이터가 슬라이스마다 다를 수 있기 때문이다. 그러나 대부분의 경우 그들은 슬라이스가 포함된 전체 픽처에 대해 동일하다. 결과는 이러한 요소가 그림당 여러 번 시그널링되지만 값은 일반적으로 동일하므로 중복되고 인코딩된 비트스트림에서 비트가 낭비된다.
픽처 레벨에서 논-픽처 레벨 신택스의 시그널링을 위한 실시예가 여기에 개시된다. 실시예에서, 신택스 요소가 동일할 때 픽처 헤더에 신택스 요소가 포함되거나 신택스 요소가 변할 때 슬라이스 헤더에 포함된다. 그렇지만, 일부 실시예에서, 신택스 요소는 둘 다에 포함되지 않을 수 있다. 첫째, 논-픽처-레벨 신택스 요소가 PH에 존재할 수 있다. 논-픽처-레벨 신택스 요소는 픽처 레벨 이외의 비디오 비트스트림 레벨에 있는 신택스 요소이다. 둘째, 논-픽처 레벨 신택스 요소의 각 카테고리에 대해 플래그는 카테고리의 신택스 요소가 PH 또는 슬라이스 헤더에 존재하는 때를 지정한다. 플래그는 PH에 있을 수 있다. 논-픽처-레벨 신택스 요소에는 RPL 신호, 공동 Cb Cr 부호 플래그, SAO 도구 인에이블링 및 파라미터, ALF 도구 인에이블링 및 파라미터, LMCS 도구 인에이블링 및 파라미터, 스케일링 리스트 도구 인에이블링 및 파라미터와 연관된 요소가 포함된다. 셋째, 논-픽처 레벨 신택스 요소가 PH에 존재할 때, 대응하는 신택스 요소는 신택스 요소를 포함하는 픽처 헤더와 연관된 픽처의 어떤 슬라이스에도 존재하지 않아야 한다. PH에 존재하는 논-픽처-레벨 신택스 요소의 값은 신택스 요소를 포함하는 픽처 헤더와 연관된 픽처의 모든 슬라이스에 적용된다. 넷째, 논픽처 레벨의 신택스 요소가 PH에 존재하지 않을 때, 해당 신택스 요소는 픽처 헤더와 연관된 픽처의 슬라이스의 슬라이스 헤더에 존재할 수 있다. 논-픽처-레벨 신택스 요소의 시그널링을 픽처 레벨로 이동함으로써 중복성이 감소되고 인코딩된 비트스트림에서 낭비되는 비트가 더 적다.
PH RBSP 구문
Figure pct00001
Figure pct00002
Figure pct00003
슬라이스 헤더 RBSP 구문
Figure pct00004
Figure pct00005
Figure pct00006
Figure pct00007
Figure pct00008
Figure pct00009
Figure pct00010
PH RBSP 의미론
PH는 디코딩 순서에서 다음 VCL NAL 유닛이 첫 번째 코딩된 슬라이스인 코딩된 픽처의 모든 슬라이스에 대해 공통인 정보를 포함한다.
pic_type은 pic_type의 주어진 값에 대해 표 1에 나열된 바와 같이 코딩된 픽처의 특성을 나타낸다. pic_type의 값은 이 사양의 이 버전을 따르는 비트스트림에서 0에서 5(포함)까지와 같아야 한다. pic_type의 다른 값들은 ITU-T ISO/IEC에서 향후 사용을 위해 예약되어 있다. 이 사양의 이 버전을 따르는 디코더는 pic_type의 예약된 값을 무시해야 한다.
pic_type 코딩된 픽처의 특성화
0 코딩된 픽처는 IDR 픽처이다.
1 코딩된 픽처는 CRA 픽처이다.
2 코딩된 픽처는 GDR 픽처이다.
3 코딩된 픽처는 비IRAP, 비GDR 픽처이며 I 슬라이스만 포함한다.
4 코딩된 픽처는 비IRAP, 비GDR 픽처이며 P 및 I 슬라이스만 포함한다.
5 코딩된 픽처는 비IRAP, 비GDR 픽처이며 B, P 및 I 슬라이스를 포함한다.
표 1. pic_type의 해석
pic_parameter_set_id는 사용 중인 PPS에 대한 pps_pic_parameter_set_id의 값을 지정한다. pic_parameter_set_id의 값은 0에서 63까지의 범위에 있어야 한다.
1과 동일한 non_reference_picture_flag는 PH와 연관된 픽처가 참조 픽처로서 절대 사용되지 않는다는 것을 지정한다. 0과 동일한 non_reference_picture_flag는 픽처가 참조 픽처로서 사용될 수도 있고 사용되지 않을 수도 있다는 것을 지정한다.
color_plane_id는 separator_colour_plane_flag가 1과 같을 때 PH와 연관된 픽처와 연관된 색 평면을 지정한다. color_plane_id의 값은 0에서 2(포함)까지의 범위에 있어야 한다. color_plane_id 값 0, 1 및 2는 각각 Y, Cb 및 Cr 평면에 대응한다. color_plane_id 값이 서로 다른 픽처의 디코딩 프로세스 간에는 종속성이 없다.
pic_order_cnt_lsb는 PH와 연관된 픽처에 대한 픽처 순서 카운트 모듈로 MaxPicOrderCntLsb를 지정한다. pic_order_cnt_lsb 신택스 요소의 길이는 log2_max_pic_order_cnt_lsb_minus4 + 4비트이다. pic_order_cnt_lsb의 값은 0에서 MaxPicOrderCntLsb - 1(포함)까지의 범위에 있어야 한다.
Recovery_poc_cnt는 출력 순서에 따라 디코딩된 픽처의 복구 지점을 지정한다. CVS의 디코딩 순서에서 현재 GDR 픽처를 따르는 픽처 picA가 있고 현재 GDR 픽처의 PicOrderCntVal에 recovery_poc_cnt의 값을 더한 것과 동일한 PicOrderCntVal을 갖는 경우, 픽처 picA는 복구 포인트 픽처로 지칭된다. 그렇지 않으면, 현재 픽처의 PicOrderCntVal에 recovery_poc_cnt의 값을 더한 것보다 더 큰 PicOrderCntVal을 갖는 출력 순서의 첫 번째 픽처를 복구 포인트 픽처라고 한다. 복구 지점 픽처는 디코딩 순서에서 현재 GDR 화면보다 선행하지 않아야 한다. Recovery_poc_cnt의 값은 0에서 MaxPicOrderCntLsb - 1(포함)의 범위에 있어야 한다.
변수 RpPicOrderCntVal은 다음과 같이 유도된다: RpPicOrderCntVal = PicOrderCntVal + recovery_poc_cnt.
no_output_of_prior_pics_flag는 부록 C에 지정된 비트스트림의 첫 번째 픽처가 아닌 CLVSS 픽처의 디코딩 후 디코딩된 픽처 버퍼에서 이전에 디코딩된 픽처의 출력에 영향을 준다.
pic_output_flag는 부록 C에 명시된 디코딩된 화면 출력 및 제거 프로세스에 영향을 준다. pic_output_flag가 존재하지 않을 때 1과 동일한 것으로 유추된다.
pic_rpl_present_flag는 1과 동일하며 RPL 시그널링이 PH에 존재한다는 것을 지정한다. pic_rpl_present_flag가 0이라는 것은 RPL 시그널링이 PH에 존재하지 않고 픽처의 슬라이스의 슬라이스 헤더에 존재할 수 있다는 것을 지정한다. 존재하지 않을 때, pic_rpl_present_flag의 값은 0과 동일한 것으로 추론된다. RPL 시그널링은 비디오 비트스트림(500)에 포함된 RPL 정보이다.
1과 동일한 pic_rpl_sps_flag[ i ]는 픽처의 RPL i가 SPS에서 i와 동일한 listIdx를 갖는 ref_pic_list_struct(listIdx, rplsIdx) 신택스 구조 중 하나에 기초하여 유도된다는 것을 지정한다. 0과 동일한 ref_pic_list_sps_flag[ i ]는 픽처 헤더에 직접 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조에 기초하여 픽처의 참조 픽처 리스트 i가 유도된다는 것을 지정한다.
pic_rpl_sps_flag[ i ]가 존재하지 않을 때, 다음이 적용된다: num_ref_pic_lists_in_sps[ i ]가 0과 같으면, pic_rpl_sps_flag[ i ]의 값은 0과 동일한 것으로 추론된다. 그렇지 않으면 (num_ref_pic_lists_in_sps[ i]보다 크다. rpl1_idx_present_flag가 0과 같으면, pic_rpl_sps_flag[ 1 ]의 값은 pic_rpl_sps_flag[ 0 ]와 같은 것으로 추론된다. 그렇지 않으면, pic_rpl_sps_flag[ i ]의 값은 pps_ref_pic_list_sps_idc[ i ] - 1과 동일한 것으로 추론된다.
pic_rpl_idx[ i ]는 현재 픽처의 RPL i의 유도에 사용되는 listIdx가 i와 동일한 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조의 인덱스를, SPS에 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조의 리스트에 지정한다. 신택스 요소 pic_rpl_idx[ i ]는 Ceil( Log2( num_ref_pic_lists_in_sps[ i ] ) 비트로 표시된다. 존재하지 않을 때, pic_rpl_idx[ i ]의 값은 0과 같은 것으로 추론된다. pic_rpl_idx[ i ]의 값은 0에서 num_ref_pic_lists_in_sps[ i ] - 1(포함)의 범위에 있어야 한다. pic_rpl_sps_flag[ i ]가 1과 같고 num_ref_pic_lists_in_sps[ i ]가 1과 같을 때, pic_rpl_idx[ i ]의 값은 0과 동일한 것으로 추론된다. pic_rpl_idx[ 1 ]의 값은 pic_rpl_idx[ 0 ]와 동일한 것으로 추론된다.
변수 PicRplsIdx[ i ]는 다음과 같이 유도된다: PicRplsIdx[ i ] = pic_rpl_sps_flag[ i ] pic_rpl_idx[ i ] : num_ref_pic_lists_in_sps[ i ].
pic_poc_lsb_lt[ i ][ j ]는 PH와 연관된 픽처에 대한 i번째 참조 픽처 리스트에서 j번째 LTRP 항목의 픽처 순서 카운트 모듈로 MaxPicOrderCntLsb의 값을 지정한다. pic_poc_lsb_lt[ i ][ j ] 신택스 요소의 길이는 log2_max_pic_order_cnt_lsb_minus4 + 4비트이다.
변수 PicPocLsbLt[ i ][ j ]는 다음과 같이 유도된다: PicPocLsbLt[ i ][ j ] = ltrp_in_slice_header_flag[ i ][ PicRplsIdx[ i ] pic_poc_lsb_lt[ i ][ j ] : rpls_poc_lsb_lt[ listIdx ][ PicRplsIdx[ i ] j ].
1과 동일한 pic_delta_poc_msb_present_flag[ i ][ j ]는 pic_delta_poc_msb_cycle_lt[ i ][ j ]가 존재한다는 것을 지정한다. 0과 동일한 pic_delta_poc_msb_present_flag[ i ][ j ]는 pic_delta_poc_msb_cycle_lt[ i ][ j ]가 존재하지 않는다는 것을 지정한다.
prevTid0Pic을 nuh_layer_id가 PH와 동일하고 TemporalId가 0이며 RASL 또는 RADL 픽처가 아닌 디코딩 순서에서의 이전 픽처라고 하자. setOfPocVals를 다음으로 구성된 세트로 둔다: prevTid0Pic의 PicOrderCntVal; prevTid0Pic의 RefPicList[ 0 ] 또는 RefPicList[ 1 ]의 항목에 의해 참조되고 현재 픽처와 동일한 nuh_layer_id를 갖는 각 픽처의 PicOrderCntVal; 및 디코딩 순서에서 prevTid0Pic 다음에 오는 각 픽처의 PicOrderCntVal은 현재 픽처와 동일한 nuh_layer_id를 가지며 디코딩 순서에서 현재 픽처보다 앞선다.
modulo MaxPicOrderCntLsb 값이 PicPocLsbLt[ i ][ j ]와 동일한 setOfPrevPocVals에 둘 이상의 값이 있을 때 pic_delta_poc_msb_present_flag[ i ][ j ]의 값은 1과 동일해야 한다.
pic_delta_poc_msb_cycle_lt[ i ][ j ]
Figure pct00011
i ][ j ] 변수의 값을 다음과 같이 지정한다:
if( j = = 0 )
deltaPocMsbCycleLt[ i ][ j ] = pic_delta_poc_msb_cycle_lt[ i ][ j ]
else (7 97)
deltaPocMsbCycleLt[ i ][ j ] = pic_delta_poc_msb_cycle_lt[ i ][ j ] + deltaPocMsbCycleLt[ i ][ j - 1 ]
PicFullPocLt[ i ][ j ] = PicOrderCntVal - deltaPocMsbCycleLt[ i ][ j ] * MaxPicOrderCntLsb -
( PicOrderCntVal & ( MaxPicOrderCntLsb - 1 ) ) + PicPocLsbLt[ i ][ j ]
pic_delta_poc_msb_cycle_lt[ i ][ j ]의 값은 0에서 2(32 - log2_max_pic_order_cnt_lsb_minus4 - 4(포함)의 범위에 있어야 한다. 존재하지 않을 때, pic_delta_poc_msb_cycle_lt[ i ][ j ]의 값은 0과 같은 것으로 추론된다.
pic_temporal_mvp_enabled_flag는 시간적 MVP가 인터 예측에 사용될 수 있는지 여부를 지정한다. pic_temporal_mvp_enabled_flag가 0과 같으면, 픽처 헤더와 연관된 픽처의 신택스 요소는 픽처의 디코딩에 시간적 MVP가 사용되지 않도록 제한되어야 한다. 그렇지 않으면(pic_temporal_mvp_enabled_flag가 1과 동일하다), 픽처의 디코딩에 시간적 MVP가 사용될 수 있다.
pic_temporal_mvp_enabled_flag가 존재하지 않을 때, 다음이 적용된다: sps_temporal_mvp_enabled_flag가 0과 같으면, pic_temporal_mvp_enabled_flag의 값은 0과 동일한 것으로 추론된다. 그렇지 않으면(sps_temporal_mvp_enabled_flag가 1과 동일하다), pic_temporal_mvp_enabled_flag의 값은 pps_temporal_mvp_enabled_idc - 1과 같은 것으로 추론된다.
1과 동일한 pic_level_joint_cbcr_sign_flag는 slice_joint_cbcr_sign_flag가 슬라이스 헤더에 존재하지 않는다는 것을 지정한다. 0과 동일한 pic_level_joint_cbcr_sign_flag는 slice_joint_cbcr_sign_flag가 슬라이스 헤더에 존재할 수 있다는 것을 지정한다. 존재하지 않을 때, pic_level_joint_cbcr_sign_flag의 값은 0과 같은 것으로 추론된다.
1과 동일한 pic_level_alf_enabled_flag는 ALF가 PH와 연관된 픽처에 속하는 모든 슬라이스에 대해 인에이블되고 슬라이스의 Y, Cb 또는 Cr 컬러 성분에 적용될 수 있다는 것을 지정한다. 0과 동일한 pic_level_alf_enabled_flag는 ALF가 PH와 연관된 픽처에 속하는 하나 이상 또는 모든 슬라이스에 대해 디스에이블될 수 있다는 것을 지정한다. 존재하지 않을 때 pic_level_alf_enabled_flag는 0과 동일한 것으로 유추된다.
pic_num_alf_aps_ids_luma는 슬라이스가 참조하는 PH와 연관된 픽처에 속하는 ALF APS의 수를 지정한다. slice_num_alf_aps_ids_luma의 값은 0에서 7(포함)까지의 범위에 있어야 한다.
pic_alf_aps_id_luma[ i ]는 PH와 연관된 픽처의 슬라이스의 루마 성분이 참조하는 i번째 ALF APS의 적응_파라미터_세트_id를 지정한다.
0과 동일한 pic_alf_chroma_idc는 ALF가 Cb 및 Cr 컬러 성분에 적용되지 않는다는 것을 지정한다. 1과 동일한 pic_alf_chroma_idc는 ALF가 Cb 컬러 성분에 적용된다는 것을 나타낸다. 2와 동일한 pic_alf_chroma_idc는 ALF가 Cr 컬러 성분에 적용된다는 것을 나타낸다. 3과 동일한 pic_alf_chroma_idc는 ALF가 Cb 및 Cr 컬러 성분에 적용된다는 것을 나타낸다. pic_alf_chroma_idc가 존재하지 않을 때, 0과 같은 것으로 추론된다.
pic_alf_aps_id_chroma는 픽처 헤더와 연관된 픽처의 슬라이스의 크로마 성분이 참조하는 ALF APS의 적응_파라미터_세트_id를 지정한다.
1과 동일한 pic_level_lmcs_enabled_flag는 크로마 스케일링을 갖는 루마 매핑이 픽처 헤더와 연관된 픽처에 속하는 모든 슬라이스에 대해 인에이블된다는 것을 지정한다. 0과 동일한 pic_level_lmcs_enabled_flag는 크로마 스케일링을 갖는 루마 매핑이 픽처 헤더와 연관된 픽처에 속하는 하나 이상 또는 모든 슬라이스에 대해 디스에이블될 수 있다는 것을 지정한다. 존재하지 않을 때 pic_level_lmcs_enabled_flag의 값은 0과 동일한 것으로 유추된다.
pic_lmcs_aps_id는 픽처 헤더와 연관된 픽처의 슬라이스가 참조하는 LMCS APS의 적응_파라미터_세트_id를 지정한다.
1과 동일한 pic_chroma_residual_scale_flag는 픽처 헤더와 연관된 픽처에 속하는 모든 슬라이스에 대해 크로마 잔여 스케일링이 인에이블된다는 것을 지정한다. 0과 동일한 pic_chroma_residual_scale_flag는 크로마 잔여 스케일링이 픽처 헤더와 연관된 픽처에 속하는 하나 이상 또는 모든 슬라이스에 대해 디스에이블될 수 있다는 것을 지정한다. pic_chroma_residual_scale_flag가 존재하지 않을 때, 0과 같은 것으로 추론된다.
1과 동일한 pic_level_scaling_list_present_flag는 픽처 헤더와 연관된 픽처의 슬라이스에 사용되는 스케일링 리스트 데이터가 참조된 스케일링 리스트 APS에 포함된 스케일링 리스트 데이터에 기초하여 유도된다는 것을 지정한다. 0과 동일한 pic_level_scaling_list_present_flag는 픽처 헤더와 연관된 픽처의 하나 이상 또는 모든 슬라이스에 사용되는 스케일링 리스트 데이터가 7.4.3.16절에 명시된 기본 스케일링 리스트 데이터임을 지정한다. 존재하지 않을 때, pic_level_scaling_list_present_flag의 값은 0과 같은 것으로 추론된다.
pic_scaling_list_aps_id는 스케일링 리스트 APS의 적응_파라미터_세트_id를 지정한다.
슬라이스 헤더 RBSP 의미론
1과 동일한 slice_rpl_sps_flag[ i ]는 현재 슬라이스의 RPL i가 SPS에서 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조 중 하나에 기초하여 유도된다는 것을 지정한다. 0과 동일한 slice_rpl_sps_flag[ i ]는 현재 픽처의 슬라이스 헤더에 직접 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조에 기초하여 현재 슬라이스의 RPL i가 유도된다는 것을 지정한다.
slice_rpl_sps_flag[ i ]가 존재하지 않을 때, 다음이 적용된다: pic_rpl_present_flag가 1과 같으면, slice_rpl_sps_flag[ i ]의 값은 pic_rpl_sps_flag[ i ]와 동일한 것으로 추론된다. 그렇지 않고, num_ref_pic_lists_in_sps[ i ]가 0과 같으면, slice_rpl_sps_flag[ i ]의 값은 0과 같은 것으로 추론된다. 그렇지 않고(num_ref_pic_lists_in_sps[ i ]는 0보다 크다), rpl1_idx_present_flag의 값이 0과 같으면, slice_rpl_sps_flag[ 1 ]의 값은 slice_rpl_sps_flag[ 0 ]와 동일한 것으로 추론된다. 그렇지 않으면, slice_rpl_sps_flag[ i ]의 값은 pps_ref_pic_list_sps_idc[ i ] - 1과 동일한 것으로 추론된다.
slice_rpl_idx[ i ]는 현재 슬라이스의 참조 픽처 리스트 i의 유도에 사용되는 listIdx가 i와 동일한 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조의 인덱스를, SPS에 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조의 리스트에 지정한다. 신택스 요소 slice_rpl_idx[ i ]는 Ceil( Log2( num_ref_pic_lists_in_sps[ i ] ) 비트로 표시된다. slice_rpl_idx[ i ]의 값은 0에서 num_ref_pic_lists_in_sps[ i ] - 1(포함)까지의 범위에 있어야 한다. slice_rpl_sps_flag[ i ]가 1과 같고 num_ref_pic_lists_in_sps[ i ]가 1과 같을 때, slice_rpl_idx[ i ]의 값은 0과 같은 것으로 추론된다. slice_rpl_idx[ 1 ]의 값이 1과 같고 rpl1_idx_present_flag의 값이 0과 같을 때, slice_rpl_idx[ 1 ]의 값은 slice_rpl_idx[ 0 ]와 동일한 것으로 추론된다.
변수 RplsIdx[ i ]는 다음과 같이 유도된다:
if( pic_rpl_present_flag )
RplsIdx[ i ] = PicRplsIdx[ i ]
else
RplsIdx[ i ] = slice_rpl_sps_flag[ i ] slice_rpl_idx[ i ] : num_ref_pic_lists_in_sps[ i ]
slice_poc_lsb_lt[ i ][ j ]는 현재 슬라이스에 대한 i번째 참조 픽처 리스트에서 j번째 LTRP 항목의 픽처 순서 카운트 모듈로 MaxPicOrderCntLsb의 값을 지정한다. slice_poc_lsb_lt[ i ][ j ] 신택스 요소의 길이는 log2_max_pic_order_cnt_lsb_minus4 + 4비트이다.
변수 PocLsbLt[ i ][ j ]는 다음과 같이 유도된다:
if( pic_rpl_present_flag )
PocLsbLt[ i ][ j ] = PocLsbLt[ i ][ j ]
else
PocLsbLt[ i ][ j ] = ltrp_in_slice_header_flag[ i ][ RplsIdx[ i ] ] slice_poc_lsb_lt[ i ][ j ] : rpls_poc_lsb_lt[ listIdx ][ RplsIdx[ i ] ][ j ]
1과 동일한 slice_delta_poc_msb_present_flag[ i ][ j ]는 slice_delta_poc_msb_cycle_lt[ i ][ j ]가 존재한다는 것을 지정한다. 0과 동일한 slice_delta_poc_msb_present_flag[ i ][ j ]는 slice_delta_poc_msb_cycle_lt[ i ][ j ]가 존재하지 않는다는 것을 지정한다.
prevTid0Pic을 현재 픽처와 동일한 nuh_layer_id를 갖고 TemporalId가 0이며 RASL 또는 RADL 픽처가 아닌 디코딩 순서의 이전 픽처라고 하자. setOfPocVals를 prevTid0Pic의 PicOrderCntVal, prevTid0Pic의 RefPicList[ 0 ] 또는 RefPicList[ 1 ]의 항목에 의해 참조되고 현재 픽처와 동일한 PicOrderCntal_id를 갖는 각 픽처의 PicOrderCntVal로 구성된 집합이라고 하자. prevTid0Pic 다음에 오는 각각의 픽처 중 nuh_layer_id는 현재 픽처와 같으며 디코딩 순서는 현재 픽처보다 앞선다.
pic_rpl_present_flag가 0과 같고 값 모듈로 MaxPicOrderCntLsb가 PocLsbLt[ i ][ j ]와 동일한 setOfPrevPocVals에 둘 이상의 값이 있을 때, slice_delta_poc_msb_present_flag[ i ][ j 1 ]의 값은 1과 같아야 한다.
slice_delta_poc_msb_cycle_lt[ i ][ j ]는 FullPocLt[ i ][ j ] 변수의 값을 다음과 같이 지정한다:
if( pic_rpl_present_flag )
FullPocLt[ i ][ j ] = PicFullPocLt[ i ][ j ]
else {
if( j = = 0 )
deltaPocMsbCycleLt[ i ][ j ] = slice_delta_poc_msb_cycle_lt[ i ][ j ]
else
deltaPocMsbCycleLt[ i ][ j ] = slice_delta_poc_msb_cycle_lt[ i ][ j ] + deltaPocMsbCycleLt[ i ][ j - 1 ]
FullPocLt[ i ][ j ] = PicOrderCntVal - deltaPocMsbCycleLt[ i ][ j ] * MaxPicOrderCntLsb - ( PicOrderCntVal & ( MaxPicOrderCntLsb - 1 ) ) + PocLsbLt[ i ][ j ]
}
slice_delta_poc_msb_cycle_lt[ i ][ j ]는 값은 0에서 2(32 - log2_max_pic_order_cnt_lsb_minus4 - 4(포함)의 범위에 있어야 한다. 존재하지 않을 때, slice_delta_poc_msb_cycle_lt[ i ][ j ]의 값은 0과 같은 것으로 추론된다.
slice_joint_cbcr_sign_flag는 tu_joint_cbcr_residual_flag[ x0 ][ y0 ]가 1인 변환 유닛에서 두 크로마 성분의 공존하는 잔여 샘플이 반전된 부호를 갖는지 여부를 지정한다. 변환 유닛에 대해 tu_joint_cbcr_residual_flag[ x0 ][ y0 ]가 1과 같을 때, 0과 같은 slice_joint_cbcr_sign_flag는 Cr(또는 Cb) 성분의 각 잔여 샘플의 부호가 공존하는 Cb(또는 Cr ) 잔여 샘플의 부호와 같다는 것을 지정하고 1과 동일한 slice_joint_cbcr_sign_flag는 Cr(또는 Cb) 성분의 각 잔여 샘플의 부호가 공존하는 Cb(또는 Cr) 잔여 샘플의 반전된 부호에 의해 주어지는 것을 지정한다. 존재하지 않을 때, slice_joint_cbcr_sign_flag의 값은 pic_level_joint_cbcr_sign_flag와 동일한 것으로 추론된다.
1과 동일한 slice_sao_luma_flag는 SAO가 현재 슬라이스의 luma 컴포넌트에 대해 인에이블된다는 것을 지정한다. 0과 동일한 slice_sao_luma_flag는 현재 슬라이스의 luma 컴포넌트에 대해 SAO가 디스에이블된다는 것을 지정한다. slice_sao_luma_flag가 존재하지 않을 때, pic_level_sao_luma_enabled_flag와 동일한 것으로 추론된다.
1과 동일한 slice_sao_chroma_flag는 현재 슬라이스의 크로마 성분에 대해 SAO가 인에이블된다는 것을 지정한다. 0과 동일한 slice_sao_chroma_flag는 현재 슬라이스의 크로마 성분에 대해 SAO가 디스에이블된다는 것을 지정한다. slice_sao_chroma_flag가 존재하지 않을 때, pic_level_sao_chroma_enabled_flag와 동일한 것으로 추론된다.
1과 동일한 slice_alf_enabled_flag는 ALF가 인에이블되고 슬라이스의 Y, Cb 또는 Cr 컬러 성분에 적용될 수 있다는 것을 지정한다. 0과 동일한 slice_alf_enabled_flag는 슬라이스의 모든 색상 구성 요소에 대해 ALF가 디스에이블된다는 것을 지정한다. 존재하지 않을 때, slice_alf_enabled_flag의 값은 pic_level_alf_enabled_flag와 동일한 것으로 추론된다.
slice_num_alf_aps_ids_luma는 슬라이스가 참조하는 ALF APS의 수를 지정한다. slice_alf_enabled_flag가 1이고 slice_num_alf_aps_ids_luma가 존재하지 않을 때, slice_num_alf_aps_ids_luma의 값은 pic_num_alf_aps_ids_luma의 값과 동일한 것으로 추론된다. slice_num_alf_aps_ids_luma의 값은 0에서 7(포함)까지의 범위에 있어야 한다.
slice_alf_aps_id_luma[ i ]는 슬라이스의 루마 성분이 참조하는 i번째 ALF APS의 adaptation_parameter_set_id를 지정한다. ALF_APS와 동일한 aps_params_type 및 slice_alf_aps_id_luma[ i ]와 동일한 adaptation_parameter_set_id를 갖는 APS NAL 유닛의 TemporalId는 코딩된 슬라이스 NAL 유닛의 TemporalId보다 작거나 같아야 한다. slice_alf_enabled_flag가 1이고 slice_alf_aps_id_luma[ i ]가 존재하지 않을 때, slice_alf_aps_id_luma[ i ]의 값은 pic_alf_aps_id_luma[ i ]의 값과 동일한 것으로 추론된다.
IRAP 픽처의 인트라 슬라이스 및 슬라이스의 경우, slice_alf_aps_id_luma[ i ]는 인트라 슬라이스 또는 IRAP 픽처를 포함하는 픽처가 아닌 다른 픽처와 연관된 ALF APS를 참조하지 않아야 한다.
0과 동일한 slice_alf_chroma_idc는 ALF가 Cb 및 Cr 컬러 성분에 적용되지 않는다는 것을 지정한다. 1과 동일한 slice_alf_chroma_idc는 ALF가 Cb 컬러 성분에 적용된다는 것을 나타낸다. 2와 동일한 slice_alf_chroma_idc는 ALF가 Cr 컬러 성분에 적용된다는 것을 나타낸다. 3과 동일한 slice_alf_chroma_idc는 ALF가 Cb 및 Cr 컬러 성분에 적용된다는 것을 나타낸다. slice_alf_chroma_idc가 존재하지 않을 때, pic_alf_chroma_idc와 동일한 것으로 추론된다.
slice_alf_aps_id_chroma는 슬라이스의 크로마 성분이 참조하는 ALF APS의 적응_파라미터_세트_id를 지정한다. ALF_APS와 동일한 aps_params_type 및 slice_alf_aps_id_chroma와 동일한 adaptation_parameter_set_id를 갖는 APS NAL 유닛의 TemporalId는 코딩된 슬라이스 NAL 유닛의 TemporalId보다 작거나 같아야 한다. slice_alf_enabled_flag가 1이고 slice_alf_aps_id_chroma가 존재하지 않을 때, slice_alf_aps_id_chroma의 값은 pic_alf_aps_id_chroma의 값과 동일한 것으로 추론된다.
IRAP 픽처의 인트라 슬라이스 및 슬라이스의 경우, slice_alf_aps_id_chroma는 인트라 슬라이스 또는 IRAP 픽처를 포함하는 픽처보다는 다른 픽처와 연관된 ALF APS를 참조하지 않아야 한다.
1과 동일한 slice_lmcs_enabled_flag는 크로마 스케일링이 있는 루마 매핑이 현재 슬라이스에 대해 인에이블된다는 것을 지정한다. 0과 동일한 slice_lmcs_enabled_flag는 크로마 스케일링이 있는 루마 매핑이 현재 슬라이스에 대해 인에이블되지 않는다는 것을 지정한다. slice_lmcs_enabled_flag가 존재하지 않으면 pic_lmcs_enabled_flag와 동일한 것으로 유추된다.
slice_lmcs_aps_id는 슬라이스가 참조하는 LMCS APS의 adaptation_parameter_set_id를 지정한다. LMCS_APS와 동일한 aps_params_type 및 slice_lmcs_aps_id와 동일한 adaptation_parameter_set_id를 갖는 APS NAL 유닛의 TemporalId는 코딩된 슬라이스 NAL 유닛의 TemporalId보다 작거나 같아야 한다. slice_lmcs_enabled_flag가 1이고 slice_lmcs_aps_id가 존재하지 않을 때, slice_lmcs_aps_id의 값은 pic_lmcs_aps_id의 값과 동일한 것으로 추론된다.
존재하는 경우, slice_lmcs_aps_id의 값은 그림의 모든 슬라이스에 대해 동일해야 한다.
1과 동일한 slice_chroma_residual_scale_flag는 현재 슬라이스에 대해 크로마 잔여 스케일링이 인에이블된다는 것을 지정한다. 0과 동일한 slice_chroma_residual_scale_flag는 현재 슬라이스에 대해 크로마 잔여 스케일링이 인에이블되지 않는다는 것을 지정한다. slice_chroma_residual_scale_flag가 존재하지 않을 때, pic_chroma_residual_scale_flag와 동일한 것으로 추론된다.
1과 동일한 slice_scaling_list_present_flag는 현재 슬라이스에 사용되는 스케일링 리스트 데이터가 참조된 스케일링 리스트 APS에 포함된 스케일링 리스트 데이터에 기초하여 유도된다는 것을 지정한다. 0과 동일한 slice_scaling_list_present_flag는 현재 픽처에 사용된 스케일링 리스트 데이터가 7.4.3.16절에 명시된 유도된 기본 스케일링 리스트 데이터임을 지정한다. 존재하지 않을 때, slice_scaling_list_present_flag의 값은 pic_level_scaling_list_present_flag와 동일한 것으로 추론된다.
slice_scaling_list_aps_id는 스케일링 리스트 APS의 적응_파라미터_세트_id를 지정한다. SCALING_APS와 동일한 aps_params_type 및 slice_scaling_list_aps_id와 동일한 adaptation_parameter_set_id를 갖는 APS NAL 유닛의 TemporalId는 코딩된 슬라이스 NAL 유닛의 TemporalId보다 작거나 같아야 한다. slice_scaling_list_enabled_flag가 1이고 slice_scaling_list_aps_id가 존재하지 않을 때, slice_scaling_list_aps_id의 값은 pic_scaling_list_aps_id의 값과 동일한 것으로 유추된다.
도 6은 제1 실시예에 따른 비트스트림을 디코딩하는 방법(600)을 예시하는 흐름도이다. 디코더(400)는 방법(600)을 구현할 수 있다. 단계(610)에서, RPL 플래그를 포함하는 비디오 비트스트림이 수신된다. 제1 값과 동일한 RPL 플래그는 RPL 시그널링이 PH에 존재한다는 것을 지정한다. 제2 값과 동일한 RPL 플래그는 RPL 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정한다. 마지막으로, 단계(620)에서, 코딩된 픽처는 디코딩된 픽처를 획득하기 위해 RPL 플래그를 사용하여 디코딩된다.
방법(600)은 추가적인 실시예를 구현할 수 있다. 예를 들어, 제1 값은 1이다. 제2 값은 0이다. 비트스트림은 RPL SPS 플래그를 더 포함하고, 여기서 RPL SPS 플래그는 SPS에서 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx) 신택스 구조 중 하나에 기반하여 RPL i가 유도된다는 것을 지정하거나, SPS에서 직접 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조 중 하나에 기초하여 RPL i가 유도된다는 것을 지정한다. 비트스트림은 RPL 인덱스를 더 포함하고, 여기서 RPL 인덱스는 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조의 인덱스를, SPS에 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조의 리스트에 지정한다. 현재 픽처의 RPL i의 유도에 사용되는 i와 동일하다. 디코딩된 픽처는 전자 장치의 디스플레이에 표시된다.
도 7은 제1 실시예에 따른 비트스트림을 인코딩하는 방법(700)을 예시하는 흐름도이다. 인코더(300)는 방법(700)을 구현할 수 있다. 단계(710)에서, RPL 플래그가 생성된다. 제1 값과 동일한 RPL 플래그는 RPL 시그널링이 PH에 존재한다는 것을 지정한다. 제2 값과 동일한 RPL 플래그는 RPL 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정한다. 마지막으로, 단계(730)에서, 비디오 비트스트림은 비디오 디코더를 향한 통신을 위해 저장된다.
방법(700)은 추가적인 실시예를 구현할 수 있다. 예를 들어, 제1 값은 1이다. 제2 값은 0이다. RPL SPS 플래그가 생성되며, 여기서 RPL SPS 플래그는 SPS에서 i와 동일한 listIdx를 갖는 ref_pic_list_struct(listIdx, rplsIdx) 신택스 구조 중 하나에 기반하여 RPL i가 유도된다는 것을 지정하거나, 또는 직접 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조 중 하나에 기초하여 RPL i가 유도된다는 것을 지정한다. RPL 인덱스가 생성되고, 여기서 RPL 인덱스는 현재 픽처의 RPL i 유도에 사용되는 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조의 인덱스를, 시퀀스 파라미터 세트(SPS)에 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조의 리스트에 지정한다.
도 8은 제2 실시예에 따른 비트스트림을 디코딩하는 방법(800)을 예시하는 흐름도이다. 디코더(400)는 방법(800)을 구현할 수 있다. 단계(810)에서, SAO 플래그를 포함하는 비디오 비트스트림이 수신된다. 제1 값과 동일한 SAO 플래그는 SAO 시그널링이 PH에 존재한다는 것을 지정하고, 제2 값과 동일한 SAO 플래그는 SAO 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정한다. 마지막으로, 단계(820)에서, 코딩된 픽처는 디코딩된 픽처를 획득하기 위해 SAO 플래그를 사용하여 디코딩된다. 방법(800)은 추가적인 실시예를 구현할 수 있다. 예를 들어, 디코딩된 픽처는 전자 장치의 디스플레이에 표시될 수 있다.
도 9는 제2 실시예에 따른 비트스트림을 인코딩하는 방법(900)을 예시하는 흐름도이다. 인코더(300)는 방법(900)을 구현할 수 있다. 단계(910)에서, SAO 플래그가 생성된다. 제1 값과 동일한 SAO 플래그는 SAO 시그널링이 PH에 존재한다는 것을 지정하고, 제2 값과 동일한 SAO 플래그는 SAO 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정한다. 단계(920)에서, RPL 플래그는 비디오 비트스트림으로 인코딩된다. 마지막으로, 단계(930)에서, 비디오 비트스트림은 비디오 디코더를 향한 통신을 위해 저장된다.
도 10은 제3 실시예에 따른 비트스트림을 디코딩하는 방법(1000)을 예시하는 흐름도이다. 디코더(400)는 방법(1000)을 구현할 수 있다. 단계(1010)에서, ALF 플래그를 포함하는 비디오 비트스트림이 수신된다. 제1 값과 동일한 ALF 플래그는 ALF 시그널링이 PH에 존재한다는 것을 지정하고, 제2 값과 동일한 ALF 플래그는 ALF 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정한다. 마지막으로, 단계(1020)에서, 코딩된 픽처는 디코딩된 픽처를 획득하기 위해 ALF 플래그를 사용하여 디코딩된다. 방법(1000)은 추가적인 실시예를 구현할 수 있다. 예를 들어, 디코딩된 픽처는 전자 장치의 디스플레이에 표시될 수 있다.
도 11은 제3 실시예에 따른 비트스트림을 인코딩하는 방법(1100)을 예시하는 흐름도이다. 인코더(300)는 방법(1100)을 구현할 수 있다. 단계(1110)에서, ALF 플래그가 생성된다. 제1 값과 동일한 ALF 플래그는 ALF 시그널링이 PH에 존재한다는 것을 지정하고, 제2 값과 동일한 ALF 플래그는 ALF 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정한다. 단계(1120)에서, ALF 플래그는 비디오 비트스트림으로 인코딩된다. 마지막으로, 단계(1130)에서, 비디오 비트스트림은 비디오 디코더를 향한 통신을 위해 저장된다.
도 12는 본 개시의 실시예에 따른 비디오 코딩 장치(1200)(예를 들어, 비디오 인코더(300) 또는 비디오 디코더(400))의 개략도이다. 비디오 코딩 장치(1200)는 개시된 실시예를 구현하기에 적합하다. 비디오 코딩 장치(1200)는 데이터를 수신하기 위한 입구 포트(1210) 및 Rx(1220)를 포함하고; 데이터를 처리하기 위한 프로세서, 논리 유닛, 또는 CPU(1230); 데이터를 전송하기 위한 Tx(1240) 및 출구 포트(1250); 및 데이터를 저장하기 위한 메모리(1260)를 포함한다. 비디오 코딩 장치(1200)는 또한 전기 신호 또는 광학 신호의 진입 및 배출을 위해 입구 포트(1210), 수신기 유닛(1220), 송신기 유닛(1240), 및 출구 포트(1250)에 결합된 OE 컴포넌트 및 EO 컴포넌트를 포함할 수 있다.
프로세서(1230)는 하드웨어 및 소프트웨어로 구현된다. 프로세서(1230)는 하나 이상의 CPU 칩, 코어(예를 들어, 멀티 코어 프로세서), FPGA, ASIC, 및 DSP로 구현될 수 있다. 프로세서(1230)는 입구 포트(1210), Rx(120), Tx(1240), 출구 포트(1250), 및 메모리(1260)와 통신한다. 프로세서(1230)는 코딩 모듈(1270)을 포함한다. 코딩 모듈(1270)은 개시된 실시예를 구현한다. 예를 들면, 코딩 모듈(1270)은 다양한 코덱 기능을 구현, 처리, 준비 또는 제공할 수 있다. 따라서, 코딩 모듈(1270)의 포함은 비디오 코딩 장치(1200)의 기능에 대한 실질적인 개선을 제공하고 비디오 코딩 장치(1200)를 다른 상태로 변환하는 효과를 가져온다. 대안적으로, 코딩 모듈(1270)은 메모리(1260)에 저장되고 프로세서(1230)에 의해 실행되는 명령으로서 구현된다.
비디오 코딩 장치(1200)는 또한 사용자와 데이터를 통신하기 위한 I/O 장치들(1280)을 포함할 수 있다. I/O 장치(1280)는 비디오 데이터를 표시하기 위한 디스플레이, 오디오 데이터를 출력하기 위한 스피커 등과 같은 출력 장치를 포함할 수 있다. I/O 장치(1280)는 또한 키보드, 마우스 또는 트랙볼과 같은 입력 장치, 또는 이러한 출력 장치와 상호 작용하기 위한 해당 인터페이스를 포함할 수 있다.
메모리(1260)는 하나 이상의 디스크, 테이프 드라이브 및 솔리드 스테이트 드라이브를 포함하고 오버플로 데이터 저장 장치로 사용될 수 있으며, 이러한 프로그램이 실행을 위해 선택될 때 프로그램을 저장하고, 프로그램 실행 중에 판독되는 명령 및 데이터를 저장한다. 메모리(1260)는 휘발성 및/또는 비휘발성일 수 있으며, ROM, RAM, TCAM 또는 SRAM일 수 있다.
도 13은 코딩 수단(1300)의 실시예의 개략도이다. 일 실시예에서, 코딩 수단(1300)은 비디오 코딩 장치(1302)(예를 들어, 비디오 인코더(300) 또는 비디오 디코더(400))에서 구현된다. 비디오 코딩 장치(1302)는 수신 수단(1301)을 포함한다. 수신 수단(1301)은 인코딩할 픽처를 수신하거나 디코딩할 비트스트림을 수신하도록 구성된다. 비디오 코딩 장치(1302)는 수신 수단(1301)에 연결된 전송 수단(1307)을 포함한다. 전송 수단(1307)은 비트스트림을 디코더로 전송하거나 디코딩된 이미지를 디스플레이 수단(예를 들어, I/O 장치(1280) 중 하나)에 전송하도록 구성된다.
비디오 코딩 장치(1302)는 저장 수단(1303)을 포함한다. 저장 수단(1303)은 수신 수단(1301) 또는 전송 수단(1307) 중 적어도 하나에 연결된다. 저장 수단(1303)은 명령을 저장하도록 구성된다. 비디오 코딩 장치(1302)는 또한 프로세싱 수단(1305)을 포함한다. 프로세싱 수단(1305)은 저장 수단(1303)에 연결된다. 프로세싱 수단(1305)은 여기에 개시된 방법들을 수행하기 위해 저장 수단(1303)에 저장된 명령들을 실행하도록 구성된다.
일 실시예에서, 수신 수단은 RPL 플래그를 포함하는 비디오 비트스트림을 수신한다. RPL 플래그는 RPL 시그널링이 PH에 있는지 여부를 지정하거나 RPL 시그널링이 슬라이스 헤더에 존재할 수 있다는 것을 지정한다. 프로세싱 수단은 디코딩된 픽처를 획득하기 위해 RPL 플래그를 사용하여 코딩된 픽처를 디코딩한다.
"약"이라는 용어는 달리 명시되지 않는 한 후속 숫자의 ÷10%를 포함하는 범위를 의미한다. 몇몇 실시예가 본 개시에서 제공되었지만, 개시된 시스템 및 방법은 본 개시의 사상 또는 범위를 벗어나지 않고 많은 다른 특정 형태로 구현될 수 있다는 것을 이해할 수 있다. 본 예는 예시적인 것으로 간주되어야 하며 제한적이지 않으며, 의도는 여기에 제공된 세부 사항으로 제한되지 않는다. 예를 들어, 다양한 구성 요소 또는 구성 요소가 다른 시스템에 결합 또는 통합되거나 특정 기능이 생략되거나 구현되지 않을 수 있다.
또한, 별개의 또는 별개의 것으로 다양한 실시예에서 설명되고 예시된 기술, 시스템, 서브시스템 및 방법은 본 개시의 범위를 벗어나지 않고 다른 시스템, 컴포넌트, 기술, 또는 방법과 결합되거나 통합될 수 있다. 결합된 것으로 도시되거나 논의된 다른 항목은 전기적으로, 기계적으로 또는 다른 방식으로든 직접 결합되거나 간접적으로 결합되거나 일부 인터페이스, 장치 또는 중간 컴포넌트를 통해 통신할 수 있다. 변경, 대체 및 변경의 다른 예는 당업자에 의해 확인 가능하고 여기에 개시된 정신 및 범위를 벗어나지 않고 이루어질 수 있다.

Claims (39)

  1. 비디오 디코더에 의해 구현되는 방법으로서,
    상기 비디오 디코더가 참조 픽처 리스트(reference picture list, RPL) 플래그를 포함하는 비디오 비트스트림을 수신하는 단계 - 여기서 제1 값과 동일한 RPL 플래그는 RPL 시그널링이 픽처 헤더(picture header, PH)에 존재한다는 것을 지정하고, 제2 값과 동일한 RPL 플래그는 RPL 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정함 - ; 및
    상기 비디오 디코더가 디코딩된 픽처를 획득하기 위해 상기 RPL 플래그를 사용하여 코딩된 픽처를 디코딩하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 제1 값은 1인, 방법.
  3. 제1항 내지 제2항 중 어느 한 항에 있어서,
    상기 제2 값은 0인, 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 비트스트림은 RPL 시퀀스 파라미터 세트(sequence parameter set, SPS) 플래그를 더 포함하고, 상기 RPL SPS 플래그는 SPS에서 i와 동일한 listIdx를 갖는 ref_pic_list_struct(listIdx, rplsIdx) 신택스 구조 중 하나에 기초하여 RPL i가 유도된다는 것을 지정하거나, 또는 직접적으로 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조 중 하나에 기초하여 RPL i가 유도된다는 것을 지정하는, 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 비트스트림은 RPL 인덱스를 더 포함하고, 상기 RPL 인덱스는 현재 픽처의 RPL i의 유도에 사용되는 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조의 인덱스를, 시퀀스 파라미터 세트(SPS)에 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct(listIdx, rplsIdx) 신택스 구조의 리스트으로 지정하는, 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 디코딩된 픽처를 전자 장치의 디스플레이 상에 표시하는 단계
    를 더 포함하는 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 PH에 논-픽처 레벨 신택스 요소가 존재할 때, 대응하는 신택스 요소는 상기 신택스 요소를 포함하는 PH와 연관된 픽처의 어떠한 슬라이스에도 존재하지 않는, 방법.
  8. 비디오 디코더로서,
    명령을 저장하도록 구성된 메모리; 및
    상기 메모리에 연결되고 상기 명령을 실행하여 제1항 내지 제7항 중 어느 한 항을 수행하도록 구성된 프로세서
    를 포함하는 비디오 디코더.
  9. 컴퓨터 프로그램 제품으로서,
    비 일시적 매체에 저장하기 위한 컴퓨터 실행 가능형 명령을 포함하고, 상기 컴퓨터 실행 가능형 명령은 프로세서에 의해 실행될 때 비디오 디코더가 제1항 내지 제7항 중 어느 한 항을 수행하게 하는, 컴퓨터 프로그램 제품.
  10. 비디오 인코더에 의해 구현되는 방법으로서,
    참조 픽처 리스트(reference picture list, RPL) 플래그를 생성하는 단계 - 제1 값과 동일한 RPL 플래그는 RPL 시그널링이 픽처 헤더(picture header, PH)에 존재한다는 것을 지정하고, 제2 값과 동일한 RPL 플래그는 RPL 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정함 - ;
    상기 비디오 인코더가 상기 RPL 플래그를 비디오 비트스트림으로 인코딩하는 단계; 및
    상기 비디오 인코더가 비디오 디코더를 향한 통신을 위해 상기 비디오 비트스트림을 저장하는 단계
    를 포함하는 방법.
  11. 제10항에 있어서,
    상기 제1 값은 1인, 방법.
  12. 제10항 내지 제11항 중 어느 한 항에 있어서,
    상기 제2 값은 0인, 방법.
  13. 제10항 내지 제12항 중 어느 한 항에 있어서,
    RPL 시퀀스 파라미터 세트(sequence parameter set, SPS) 플래그를 생성하는 단계
    를 더 포함하고, 상기 RPL SPS 플래그는 SPS에서 i와 동일한 listIdx를 갖는 ref_pic_list_struct(listIdx, rplsIdx) 신택스 구조 중 하나에 기초하여 RPL i가 유도된다는 것을 지정하거나, 또는 직접적으로 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조 중 하나에 기초하여 RPL i가 유도된다는 것을 지정하는, 방법.
  14. 제10항 내지 제13항 중 어느 한 항에 있어서,
    RPL 인덱스를 생성하는 단계
    를 더 포함하고, 상기 RPL 인덱스는 현재 픽처의 RPL i의 유도에 사용되는 i와 동일한 listIdx를 갖는 ref_pic_list_struct( listIdx, rplsIdx ) 신택스 구조의 인덱스를, 시퀀스 파라미터 세트(SPS)에 포함된 i와 동일한 listIdx를 갖는 ref_pic_list_struct(listIdx, rplsIdx) 신택스 구조의 리스트로 지정하는, 방법.
  15. 제10항 내지 제14항 중 어느 한 항에 있어서,
    상기 PH에 논-픽처 레벨 신택스 요소가 존재할 때, 대응하는 신택스 요소는 상기 신택스 요소를 포함하는 PH와 연관된 픽처의 어떠한 슬라이스에도 존재하지 않는, 방법.
  16. 비디오 인코더로서,
    명령을 저장하도록 구성된 메모리; 및
    상기 메모리에 연결되고 상기 명령을 실행하여 제10항 내지 제15항 중 어느 한 항을 수행하도록 구성된 프로세서
    를 포함하는 비디오 인코더.
  17. 컴퓨터 프로그램 제품으로서,
    비 일시적 매체에 저장하기 위한 컴퓨터 실행 가능형 명령을 포함하고, 상기 컴퓨터 실행 가능형 명령은 프로세서에 의해 실행될 때 비디오 인코더가 제10항 내지 제15항 중 어느 한 항을 수행하게 하는, 컴퓨터 프로그램 제품.
  18. 비디오 코딩 시스템으로서,
    인코더; 및
    디코더
    를 포함하며,
    상기 인코더 또는 상기 디코더는 제1항 내지 제7항 또는 제10항 내지 제15항 중 어느 한 항을 수행하도록 구성되는, 비디오 코딩 시스템.
  19. 비디오 디코더에 의해 구현되는 방법으로서,
    상기 비디오 디코더가 샘플 적응 오프셋(sample adaptive offset, SAO) 플래그를 포함하는 비디오 비트스트림을 수신하는 단계 - 제1 값과 동일한 SAO 플래그는 SAO 시그널링이 픽처 헤더(picture header, PH)에 존재한다는 것을 지정하고, 제2 값과 동일한 SAO 플래그는 SAO 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정함 - ; 및
    상기 비디오 디코더가 디코딩된 픽처를 획득하기 위해 상기 SAO 플래그를 사용하여 코딩된 픽처를 디코딩하는 단계
    를 포함하는 방법.
  20. 제19항에 있어서,
    상기 디코딩된 픽처를 전자 장치의 디스플레이 상에 표시하는 단계
    를 더 포함하는 방법.
  21. 제19항 또는 제20항에 있어서,
    상기 PH에 논-픽처 레벨 신택스 요소가 존재할 때, 대응하는 신택스 요소는 상기 신택스 요소를 포함하는 PH와 연관된 픽처의 어떠한 슬라이스에도 존재하지 않는, 방법.
  22. 비디오 디코더로서,
    명령을 저장하도록 구성된 메모리; 및
    상기 메모리에 연결되고 상기 명령을 실행하여 제19항 내지 제21항 중 어느 한 항을 수행하도록 구성된 프로세서
    를 포함하는 비디오 디코더.
  23. 컴퓨터 프로그램 제품으로서,
    비 일시적 매체에 저장하기 위한 컴퓨터 실행 가능형 명령을 포함하고, 상기 컴퓨터 실행 가능형 명령은 프로세서에 의해 실행될 때 비디오 디코더가 제19항 내지 제21항 중 어느 한 항을 수행하게 하는, 컴퓨터 프로그램 제품.
  24. 비디오 인코더에 의해 구현되는 방법으로서,
    샘플 적응 오프셋(sample adaptive offset, SAO) 플래그를 생성하는 단계 - 제1 값과 동일한 SAO 플래그는 SAO 시그널링이 픽처 헤더(picture header, PH)에 존재한다는 것을 지정하고, 제2 값과 동일한 SAO 플래그는 SAO 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정함 - ; 및
    상기 비디오 인코더가 상기 SAO 플래그를 비디오 비트스트림으로 인코딩하는 단계; 및
    상기 비디오 인코더가 비디오 디코더를 향한 통신을 위해 상기 비디오 비트스트림을 저장하는 단계
    를 포함하는 방법.
  25. 제24항에 있어서,
    상기 PH에 논-픽처 레벨 신택스 요소가 존재할 때, 대응하는 신택스 요소는 상기 신택스 요소를 포함하는 PH와 연관된 픽처의 어떠한 슬라이스에도 존재하지 않는, 방법.
  26. 비디오 인코더로서,
    명령을 저장하도록 구성된 메모리; 및
    상기 메모리에 연결되고 상기 명령을 실행하여 제24항 내지 제25항 중 어느 한 항을 수행하도록 구성된 프로세서
    를 포함하는 비디오 인코더.
  27. 컴퓨터 프로그램 제품으로서,
    비 일시적 매체에 저장하기 위한 컴퓨터 실행 가능형 명령을 포함하고, 상기 컴퓨터 실행 가능형 명령은 프로세서에 의해 실행될 때 비디오 인코더가 제24항 내지 제25항 중 어느 한 항을 수행하게 하는, 컴퓨터 프로그램 제품.
  28. 비디오 코딩 시스템으로서,
    인코더; 및
    디코더
    를 포함하며,
    상기 인코더 또는 상기 디코더는 제19항 내지 제21항 또는 제24항 내지 제25항 중 어느 한 항을 수행하도록 구성되는, 비디오 코딩 시스템.
  29. 비디오 디코더에 의해 구현되는 방법으로서,
    상기 비디오 디코더가 적응 루프 필터(adaptive loop filter, ALF) 플래그를 포함하는 비디오 비트스트림을 수신하는 단계 - 제1 값과 동일한 ALF 플래그는 ALF 시그널링이 픽처 헤더(picture header, PH)에 존재한다는 것을 지정하고, 제2 값과 동일한 ALF 플래그는 ALF 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정함 - ; 및
    상기 비디오 디코더가 디코딩된 픽처를 획득하기 위해 상기 ALF 플래그를 사용하여 코딩된 픽처를 디코딩하는 단계
    를 포함하는 방법.
  30. 제29항에 있어서,
    상기 디코딩된 픽처를 전자 장치의 디스플레이 상에 표시하는 단계
    를 더 포함하는 방법.
  31. 제29항 내지 제30항 중 어느 한 항에 있어서,
    상기 PH에 논-픽처 레벨 신택스 요소가 존재할 때, 대응하는 신택스 요소는 상기 신택스 요소를 포함하는 PH와 연관된 픽처의 어떠한 슬라이스에도 존재하지 않는, 방법.
  32. 비디오 디코더로서,
    명령을 저장하도록 구성된 메모리; 및
    상기 메모리에 연결되고 상기 명령을 실행하여 제29항 내지 제31항 중 어느 한 항을 수행하도록 구성된 프로세서
    를 포함하는 비디오 디코더.
  33. 컴퓨터 프로그램 제품으로서,
    비 일시적 매체에 저장하기 위한 컴퓨터 실행 가능형 명령을 포함하고, 상기 컴퓨터 실행 가능형 명령은 프로세서에 의해 실행될 때 비디오 디코더가 제29항 내지 제31항 중 어느 한 항을 수행하게 하는, 컴퓨터 프로그램 제품.
  34. 비디오 인코더에 의해 구현되는 방법으로서,
    적응 루프 필터(adaptive loop filter, ALF) 플래그 플래그를 생성하는 단계 - 제1 값과 동일한 ALF 플래그는 ALF 시그널링이 픽처 헤더(picture header, PH)에 존재한다는 것을 지정하고, 제2 값과 동일한 ALF 플래그는 ALF 시그널링이 PH에 존재하지 않고 슬라이스 헤더에 존재할 수 있다는 것을 지정함 - ;
    상기 비디오 인코더가 ALF 플래그를 비디오 비트스트림으로 인코딩하는 단계; 및
    상기 비디오 인코더가 비디오 디코더를 향한 통신을 위해 상기 비디오 비트스트림을 저장하는 단계
    를 포함하는 방법.
  35. 제34항에 있어서,
    상기 PH에 논-픽처 레벨 신택스 요소가 존재할 때, 대응하는 신택스 요소는 상기 신택스 요소를 포함하는 PH와 연관된 픽처의 어떠한 슬라이스에도 존재하지 않는, 방법.
  36. 비디오 인코더로서,
    명령을 저장하도록 구성된 메모리; 및
    상기 메모리에 연결되고 상기 명령을 실행하여 제34항 내지 제35항 중 어느 한 항을 수행하도록 구성된 프로세서
    를 포함하는 비디오 인코더.
  37. 컴퓨터 프로그램 제품으로서,
    비 일시적 매체에 저장하기 위한 컴퓨터 실행 가능형 명령을 포함하고, 상기 컴퓨터 실행 가능형 명령은 프로세서에 의해 실행될 때 비디오 인코더가 제34항 내지 제35항 중 어느 한 항을 수행하게 하는, 컴퓨터 프로그램 제품.
  38. 비디오 코딩 시스템으로서,
    인코더; 및
    디코더
    를 포함하며,
    상기 인코더 또는 상기 디코더는 제29항 내지 제31항 또는 제34항 내지 제35항 중 어느 한 항을 수행하도록 구성되는, 비디오 코딩 시스템.
  39. 비디오 디코더에 의해 구현되는 방법으로서,
    상기 비디오 디코더가 신택스 요소를 포함하는 비디오 비트스트림을 수신하는 단계 - 상기 신택스 요소는 정보가 픽처 헤더(picture header, PH)에 존재할 수 있거나 존재하지 않는다는 것을 지정하거나 또는 정보가 슬라이스 헤더에 존재할 수 있거나 존재하지 않는다는 것을 지정함 - ; 및
    상기 비디오 디코더가 디코딩된 픽처를 획득하기 위해 상기 신택스 요소를 사용하여 코딩된 픽처를 디코딩하는 단계
    를 포함하는 방법.
KR1020227012390A 2019-09-24 2020-09-23 픽처 레벨에서 논-픽처-레벨 신택스 요소의 시그널링 KR20220055500A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962905228P 2019-09-24 2019-09-24
US62/905,228 2019-09-24
PCT/US2020/052281 WO2021022264A1 (en) 2019-09-24 2020-09-23 Signaling of non-picture-level syntax elements at the picture level

Publications (1)

Publication Number Publication Date
KR20220055500A true KR20220055500A (ko) 2022-05-03

Family

ID=74228310

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227012390A KR20220055500A (ko) 2019-09-24 2020-09-23 픽처 레벨에서 논-픽처-레벨 신택스 요소의 시그널링

Country Status (12)

Country Link
US (1) US20220217380A1 (ko)
EP (1) EP4022913A4 (ko)
JP (2) JP7454657B2 (ko)
KR (1) KR20220055500A (ko)
CN (9) CN117412052A (ko)
AU (1) AU2020319902A1 (ko)
BR (1) BR112022005447A2 (ko)
CA (1) CA3152319A1 (ko)
CL (1) CL2022000701A1 (ko)
IL (1) IL291612A (ko)
MX (1) MX2022003450A (ko)
WO (1) WO2021022264A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220088795A (ko) * 2019-12-12 2022-06-28 엘지전자 주식회사 픽처 레벨 또는 슬라이스 레벨에서 적용되는 영상 정보를 시그널링하는 방법 및 장치
KR20220156831A (ko) * 2020-03-20 2022-11-28 바이트댄스 아이엔씨 서브픽처의 레퍼런스 픽처 목록에 대한 제약
US11563963B2 (en) 2020-05-19 2023-01-24 Qualcomm Incorporated Determining whether to code picture header data of pictures of video data in slice headers
WO2024080916A1 (en) * 2022-10-13 2024-04-18 Telefonaktiebolaget Lm Ericsson (Publ) Inter-predicted reference picture lists

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120050475A1 (en) * 2009-05-01 2012-03-01 Dong Tian Reference picture lists for 3dv
JP5932811B2 (ja) * 2011-09-19 2016-06-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 画像復号方法、及び画像復号装置
US9420307B2 (en) * 2011-09-23 2016-08-16 Qualcomm Incorporated Coding reference pictures for a reference picture set
CN104054351B (zh) * 2012-01-17 2017-07-14 瑞典爱立信有限公司 参考画面列表处理
US9313500B2 (en) * 2012-09-30 2016-04-12 Microsoft Technology Licensing, Llc Conditional signalling of reference picture list modification information
JP6365924B2 (ja) * 2013-05-09 2018-08-01 サン パテント トラスト 画像復号方法及び画像復号装置
WO2015015058A1 (en) * 2013-07-31 2015-02-05 Nokia Corporation Method and apparatus for video coding and decoding
CN108322754A (zh) * 2017-01-16 2018-07-24 联发科技股份有限公司 编码方法与相对应的编码器以及解码器
WO2020112488A1 (en) * 2018-11-30 2020-06-04 Futurewei Technologies, Inc. Signaling of reference picture lists in video coding
US11979611B2 (en) * 2019-09-06 2024-05-07 Sharp Kabushiki Kaisha Systems and methods for signaling temporal sub-layer information in video coding

Also Published As

Publication number Publication date
US20220217380A1 (en) 2022-07-07
CN117528094A (zh) 2024-02-06
EP4022913A1 (en) 2022-07-06
CN117579824A (zh) 2024-02-20
CN117528095A (zh) 2024-02-06
AU2020319902A1 (en) 2022-04-21
CN117061755A (zh) 2023-11-14
CL2022000701A1 (es) 2022-11-18
BR112022005447A2 (pt) 2022-06-21
MX2022003450A (es) 2022-04-19
EP4022913A4 (en) 2023-02-22
CN114424555A (zh) 2022-04-29
WO2021022264A1 (en) 2021-02-04
JP7454657B2 (ja) 2024-03-22
CA3152319A1 (en) 2021-02-04
JP2022549648A (ja) 2022-11-28
CN117651136A (zh) 2024-03-05
CN117412052A (zh) 2024-01-16
IL291612A (en) 2022-05-01
JP2024045167A (ja) 2024-04-02
CN114424555B (zh) 2023-11-10
CN117425010A (zh) 2024-01-19
CN115460411B (zh) 2023-07-07
CN115460411A (zh) 2022-12-09

Similar Documents

Publication Publication Date Title
KR20210126772A (ko) 인코더, 디코더 및 대응하는 방법
KR20220071275A (ko) 다중 계층 비디오 스트림에서의 중복 시그널링 방지
EP3738315B1 (en) Luma and chroma block partitioning
JP7454657B2 (ja) ピクチャーレベルでの非ピクチャーレベルの構文要素のシグナリング
KR102665551B1 (ko) 다층 비디오 비트스트림에 대한 dpb 파라미터의 시그널링 기법
KR20220065061A (ko) 다계층 비디오 비트스트림에서 불필요한 계층 금지
AU2022204213B2 (en) Filter flags for subpicture deblocking
KR20220058960A (ko) 다중 레이어 비디오 비트스트림의 액세스 유닛 내 혼합 irap 및 비-irap 픽처 지원
US20220166970A1 (en) Types of Reference Pictures in Reference Picture Lists
KR20210135621A (ko) 비디오 코딩에서 슬라이스 엔트리 포인트
KR20210104900A (ko) 비디오 인코더, 비디오 디코더 및 상응하는 방법들
US20220159285A1 (en) Alf aps constraints in video coding

Legal Events

Date Code Title Description
A201 Request for examination