KR102311046B1 - 프레임 레이트 스케일러블 비디오 코딩 - Google Patents
프레임 레이트 스케일러블 비디오 코딩 Download PDFInfo
- Publication number
- KR102311046B1 KR102311046B1 KR1020207027642A KR20207027642A KR102311046B1 KR 102311046 B1 KR102311046 B1 KR 102311046B1 KR 1020207027642 A KR1020207027642 A KR 1020207027642A KR 20207027642 A KR20207027642 A KR 20207027642A KR 102311046 B1 KR102311046 B1 KR 102311046B1
- Authority
- KR
- South Korea
- Prior art keywords
- shutter
- frame
- value
- angle
- fixed
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 33
- 230000002123 temporal effect Effects 0.000 claims description 35
- 230000011664 signaling Effects 0.000 claims description 28
- 238000003491 array Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 2
- 230000000153 supplemental effect Effects 0.000 claims 1
- 238000013459 approach Methods 0.000 description 12
- 238000006243 chemical reaction Methods 0.000 description 12
- 238000004519 manufacturing process Methods 0.000 description 10
- 239000000872 buffer Substances 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 230000000750 progressive effect Effects 0.000 description 9
- 238000012935 Averaging Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 241000238876 Acari Species 0.000 description 6
- 101150103552 cagE gene Proteins 0.000 description 5
- 238000009826 distribution Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 241001482237 Pica Species 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 241000023320 Luma <angiosperm> Species 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011143 downstream manufacturing Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 229940075930 picrate Drugs 0.000 description 1
- OXNIZHLAWKMVMX-UHFFFAOYSA-M picrate anion Chemical compound [O-]C1=C([N+]([O-])=O)C=C([N+]([O-])=O)C=C1[N+]([O-])=O OXNIZHLAWKMVMX-UHFFFAOYSA-M 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/31—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/172—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/184—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/187—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Holo Graphy (AREA)
- Mechanical Light Control Or Optical Switches (AREA)
- Particle Accelerators (AREA)
- Television Systems (AREA)
- Fuel Cell (AREA)
- Liquid Crystal (AREA)
- Indication In Cameras, And Counting Of Exposures (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
프레임 레이트 스케일러빌리티를 위한 방법 및 시스템이 기술된다. 장면 전반에 걸쳐 가변 프레임 레이트 및 가변 셔터 각도를 갖는 입력 및 출력 비디오 시퀀스, 또는 고정 입력 프레임 레이트 및 입력 셔터 각도를 갖는 입력 비디오 시퀀스에 대한 지원이 제공되지만, 디코더가 대응하는 입력 값과 상이한 출력 프레임 레이트 및 셔터 각도로 비디오 출력을 생성할 수 있다. 또한, 디코더가, 허용되는 것 중에서, 특정한 하위 호환 목표 프레임 레이트 및 셔터 각도를 더욱 계산 효율적으로 디코딩할 수 있게 하는 기술이 제공된다.
Description
관련된
출원에 대한 상호참조
본 출원은 2019년 3월 11일에 출원된 미국 가출원 제62/816,521호, 2019년 5월 21일에 출원된 미국 가출원 제62/850,985호, 2019년 8월 6일에 출원된 미국 가출원 제62/883,195호 및 2019년 9월 24일에 출원된 미국 가출원 제62/904,744호의 우선권의 이익을 주장하며, 각각은 그 전체로서 참조로 포함된다.
기술분야
본 문서는 일반적으로 이미지에 관한 것이다. 구체적으로, 본 발명의 실시예는 프레임 레이트 스케일러블(scalable) 비디오 코딩에 관한 것이다.
본원에서 사용되는 바에 따르면, 용어 '동적 범위(dynamic range)'(DR)는 이미지에서 강도(예를 들어, 휘도, 루마)의 범위, 예를 들어, 가장 어두운 회색(검정)으로부터 가장 밝은 흰색(하이라이트)까지를 지각하는 인간 시각 시스템(HVS)의 능력과 관련될 수 있다. 이러한 의미에서, DR은 '장면 참조('scene-referred)' 강도와 관련된다. DR은 또한 특정 폭의 강도 범위를 적절하게 또는 대략적으로 렌더링하는 디스플레이 장치의 능력과 관련될 수 있다. 이러한 의미에서 DR은 '디스플레이 참조(display-referred)' 강도와 관련된다. 특정 의미가 본원의 설명의 임의의 지점에서 특정한 중요성을 갖는 것으로 명시적으로 지정되지 않는 한, 용어는 어떤 의미로도, 예를 들어, 교환 가능한 방식으로 사용될 수 있다고 추론되어야 한다.
본원에서 사용되는 바에 따르면, 용어 HDR(high dynamic range)은 인간 시각 시스템(HVS)의 14-15 자릿수(orders of magnitude)에 걸친 DR 폭과 관련된다. 실제로, 인간이 광범위한 강도 범위를 동시에 지각할 수 있는 DR은, HDR과 관련하여 다소 불완전(truncated) 할 수 있다.
실제로, 이미지는 하나 이상의 색상 성분(예를 들어, 루마 Y 및 채도 Cb 및 Cr)을 포함하며, 여기에서 각 색상 성분은 픽셀 당 n-비트의 정밀도(예를 들어, n = 8)로 표현된다. 선형 휘도 코딩을 사용하면, n ≤ 8 인 이미지(예를 들어, 24 비트 컬러 JPEG 이미지)는 표준 동적 범위(SDR)의 이미지로 간주되고, n > 8 인 이미지는 향상된 동적 범위의 이미지로 간주될 수 있다. HDR 이미지는 또한 인더스트리얼 라이트 앤드 매직(Industrial Light and Magic)에서 개발한 OpenEXR 파일 형식과 같은 고정밀도(예를 들어, 16 비트) 부동 소수점 형식을 사용하여 저장 및 유통될 수 있다.
현재, 돌비 레버러토리즈(Dolby laboratories)의 돌비 비전(Dolby Vision) 또는 블루레이(Blue-Ray)의 HDR10과 같은 HDR 비디오 콘텐츠의 유통은 많은 재생 디바이스의 성능에 의해 4K 해상도(예를 들어, 4096 x 2160 또는 3840 x 2160 등) 및 초당 60 프레임(fps)으로 제한된다. 향후 버전에서는, 최대 8K 해상도(예를 들어, 7680 x 4320) 및 120fps의 콘텐츠를 유통 및 재생에 사용할 수 있을 것으로 예상된다. 돌비 비전과 같은 HDR 재생 콘텐츠 생태계를 단순화하기 위하여 향후의 콘텐츠 유형이 기존의 재생 디바이스와 호환되는 것이 바람직하다. 이상적으로 콘텐츠 제작자는 기존의 HDR 디바이스(예를 들어, HDR10 또는 돌비 비전)와 호환되는 콘텐츠의 특별 버전을 유도 및 유통하지 않고도 향후의 HDR 기술을 채택하고 유통할 수 있어야 한다. 본원에서 발명자들에 의해 인식된 바와 같이, 비디오 콘텐츠, 특히 HDR 콘텐츠의 스케일러블 유통을 위한 개선된 기술이 요구된다.
이 섹션에서 기술된 접근법은 추구될 수 있는 접근법이지만, 반드시 이전에 구상되거나 추구된 접근법은 아니다. 따라서, 달리 표시되지 않는 한, 이 섹션에 기술된 접근법은 단순히 이 섹션에 포함된 것으로 인해 선행 기술로서의 자격을 얻는 것으로 가정되어서는 안된다. 유사하게, 하나 이상의 접근법과 관련하여 식별된 문제는, 달리 명시되지 않는 한, 이 섹션을 기반으로 선행 기술에서 인식되었다고 가정해서는 안된다.
본 발명의 실시예는 첨부 도면의 도에서, 제한이 아닌 예로서 도시되고, 유사한 참조 번호는 유사한 요소를 지칭한다.
도 1은 비디오 전달 파이프라인에 대한 예시적인 프로세스를 도시한다.
도 2는 본 발명의 실시예에 따른 목표 셔터 각도로 목표 프레임 레이트를 렌더링하기 위하여 연속적인 원본 프레임을 결합하는 예시적인 프로세스를 도시한다.
도 3은 본 발명의 실시예에 따른 고정 프레임 레이트를 갖는 컨테이너에서 가변 입력 프레임 레이트 및 가변 셔터 각도를 갖는 입력 시퀀스의 예시적인 표현을 도시한다.
도 4는 본 발명의 실시예에 따른 하위 호환성을 갖는 다양한 프레임 레이트 및 셔터 각도에서의 시간적 스케일러빌리티에 대한 예시적인 표현을 도시한다.
도 1은 비디오 전달 파이프라인에 대한 예시적인 프로세스를 도시한다.
도 2는 본 발명의 실시예에 따른 목표 셔터 각도로 목표 프레임 레이트를 렌더링하기 위하여 연속적인 원본 프레임을 결합하는 예시적인 프로세스를 도시한다.
도 3은 본 발명의 실시예에 따른 고정 프레임 레이트를 갖는 컨테이너에서 가변 입력 프레임 레이트 및 가변 셔터 각도를 갖는 입력 시퀀스의 예시적인 표현을 도시한다.
도 4는 본 발명의 실시예에 따른 하위 호환성을 갖는 다양한 프레임 레이트 및 셔터 각도에서의 시간적 스케일러빌리티에 대한 예시적인 표현을 도시한다.
비디오 코딩을 위한 프레임 레이트 스케일러빌리티와 관련된 예시적인 실시예가 본원에서 기술된다. 다음의 설명에서, 본 발명의 다양한 실시예에 대한 완전한 이해를 제공하기 위하여 다수의 특정 세부 사항이 설명의 목적으로 제시된다. 그러나, 본 발명의 다양한 실시예는 이러한 특정 세부 사항 없이 실시될 수 있음이 명백할 것이다. 다른 예에서, 공지의 구조 및 디바이스는 본 발명의 실시예를 불필요하게 가리거나, 불분명하게 하거나, 모호하게 하는 것을 피하기 위하여 철저한 상세 사항까지 설명하지 않는다.
요약
본원에 기술된 예시적인 실시예는 비디오 코딩의 프레임 레이트 스케일러빌리티에 관한 것이다. 일 실시예에서, 프로세서를 갖는 시스템이 코딩된 비디오 프레임을 포함하는 코딩된 비트스트림을 수신하고, 하나 이상의 코딩된 프레임은 제1 프레임 레이트 및 제1 셔터 각도로 인코딩된다. 프로세서는 제2 프레임 레이트 및 제2 셔터 각도로 디코딩되어야 하는 코딩된 프레임 그룹의 존재를 나타내는 제1 플래그를 수신하고, 코딩된 비트스트림으로부터 코딩된 프레임 그룹에 대한 제2 프레임 레이트 및 제2 셔터 각도 값에 액세스하며, 코딩된 프레임 그룹, 제1 프레임 레이트, 제1 셔터 각도, 제2 프레임 레이트 및 제2 셔터 각도에 기반하여 제2 프레임 레이트 및 제2 셔터 각도로 디코딩된 프레임을 생성한다.
제2 실시예에서, 프로세서를 갖는 디코더가:
코딩된 비디오 프레임 그룹을 포함하는 코딩된 비트스트림을 수신하고-코딩된 비트스트림 내의 모든 코딩된 비디오 프레임은 제1 프레임 레이트로 인코딩됨;
결합된 프레임의 수 N을 수신하고;
베이스라인 프레임 레이트에 대한 값을 수신하고;
N개의 연속 코딩된 프레임 그룹에 액세스하고-N개의 연속 코딩된 프레임 그룹 내의 i번째 코딩된 프레임(여기에서 i= 1, 2, ..., N)은 제1 셔터 각도 및 상기 제1 프레임 레이트에 기반하여 상기 베이스라인 프레임 레이트 및 i번째 셔터 각도로 인코더 내에서 인코딩된 최대 i개의 입력 비디오 프레임의 평균을 나타냄;
제2 프레임 레이트 및 제2 셔터 각도로 N개의 연속 코딩된 프레임 그룹을 디코딩하기 위하여, 코딩된 비트스트림으로부터 또는 사용자 입력으로부터 제2 프레임 레이트 및 제2 셔터 각도의 값에 액세스하고; 및
N개의 연속 코딩된 프레임 그룹, 제1 프레임 레이트, 제1 셔터 각도, 제2 프레임 레이트 및 제2 셔터 각도에 기반하여 제2 프레임 레이트 및 제2 셔터 각도로 디코딩된 프레임을 생성한다.
제3 실시예에서, 인코딩된 비디오 스트림 구조는:
비디오 화상 시퀀스의 인코딩을 포함하는 인코딩된 화상 섹션; 및
1초에 지나가는 시간 단위의 수를 나타내는 셔터 간격 시간 스케일 매개변수;
상기 셔터 간격 시간 스케일 매개변수의 주파수에서 동작하는 클록의 시간 단위의 수를 나타내는 셔터 간격 클록 틱 매개변수-상기 셔터 간격 시간 스케일 매개변수로 나눈 상기 셔터 간격 클록 틱 매개변수는 노출 지속시간 값을 나타냄;
상기 인코딩된 화상 섹션 내의 모든 시간 서브레이어에 대하여 노출 지속시간 정보가 고정되어 있는지 여부를 나타내는 셔터 간격 지속시간 플래그의 인코딩을 포함하는 시그널링 섹션을 포함하고,
상기 셔터 간격 지속시간 플래그가 상기 노출 지속시간 정보가 고정되어 있음을 나타내면, 상기 인코딩된 화상 섹션 내의 모든 상기 시간 서브레이어에 대하여 상기 비디오 화상 시퀀스의 디코딩된 버전이 상기 셔터 간격 시간 스케일 매개변수 및 상기 셔터 간격 클록 틱 매개변수에 기반한 상기 노출 지속시간 값의 계산에 의해 디코딩되고, 그렇지 않으면
상기 시그널링 섹션은 서브레이어 매개변수의 하나 이상의 배열을 포함하고, 상기 셔터 간격 시간 스케일 매개변수와 결합된 서브레이어 매개변수의 하나 이상의 배열의 값을 사용하여 각 서브레이어에 대하여 상기 비디오 화상 시퀀스의 상기 시간 서브레이어의 디코딩된 버전을 디스플레이하기 위한 대응하는 서브레이어 노출 지속시간을 계산한다.
예시적인 비디오 전달 처리 파이프라인
도 1은 비디오 캡처에서부터 비디오 콘텐츠 디스플레이까지의 다양한 단계를 보여주는 종래의 비디오 전달 파이프라인(100)의 예시적인 프로세스를 도시한다. 비디오 프레임 시퀀스(102)가 이미지 생성 블록(105)을 사용하여 캡처되거나 생성된다. 비디오 프레임(102)은 비디오 데이터(107)를 제공하기 위하여 (예를 들어, 디지털 카메라에 의해) 디지털 방식으로 캡처되거나 (예를 들어, 컴퓨터 애니메이션을 사용하여) 컴퓨터에 의해 생성될 수 있다. 대안적으로, 비디오 프레임(102)은 필름 카메라에 의해 필름 상에 캡처될 수 있다. 필름은 비디오 데이터(107)를 제공하기 위하여 디지털 형식으로 변환된다. 프로덕션 단계(110)에서, 비디오 데이터(107)가 편집되어 비디오 프로덕션 스트림(112)을 제공한다.
프로덕션 스트림(112)의 비디오 데이터는 포스트 프로덕션 편집을 위하여 블록(115)에서 프로세서에 제공된다. 블록(115) 포스트 프로덕션 편집은 이미지 품질을 향상시키거나 비디오 제작자의 창조적 의도에 따라 이미지의 특정 외관을 달성하기 위하여 이미지의 특정 영역에서 색상 또는 밝기를 조정 또는 수정하는 것을 포함할 수 있다. 이는 "색상 타이밍" 또는 "색상 그레이딩"으로 지칭되기도 한다. 다른 편집(예를 들어, 장면 선택 및 순서 지정, 이미지 자르기, 컴퓨터 생성 시각 특수 효과 추가, 저더(judder) 또는 블러(blur) 제어, 프레임 레이트 제어 등)이 블록(115)에서 수행되어 유통을 위한 프로덕션의 최종 버전(117)을 생성할 수 있다. 포스트 프로덕션 편집(115) 동안, 기준 디스플레이(125)에서 비디오 이미지를 볼 수 있다. 포스트 프로덕션(115) 후에, 최종 프로덕션(117)의 비디오 데이터는 텔레비전 세트, 셋톱 박스, 영화관 등과 같은 디코딩 및 재생 디바이스로 다운스트림을 전달하기 위하여 인코딩 블록(120)으로 전달될 수 있다. 일부 실시예에서, 코딩 블록(120)은 코딩된 비트스트림(122)을 생성하기 위하여 ATSC, DVB, DVD, 블루레이 및 기타 전달 포맷에 의해 정의된 것과 같은 오디오 및 비디오 인코더를 포함할 수 있다. 수신기에서, 코딩된 비트스트림(122)은 디코딩 유닛(130)에 의해 디코딩되어 신호(117)와 동일하거나 근접한 근사를 나타내는 디코딩된 신호(132)를 생성한다. 수신기는 기준 디스플레이(125)와 완전히 상이한 특성을 가질 수 있는 목표 디스플레이(140)에 부착될 수 있다. 이 경우, 디스플레이 관리 블록(135)은 디스플레이 매핑된 신호(137)를 생성함으로써 디코딩된 신호(132)의 동적 범위를 목표 디스플레이(140)의 특성에 매핑하는 데 사용될 수 있다.
스케일러블 코딩(Scalable Coding)
스케일러블 코딩은 이미 MPEG-2, AVC 및 HEVC와 같은 다수의 비디오 코딩 표준의 일부이다. 본 발명의 실시예에서, 스케일러블 코딩은 특히 초고해상도 HDR 콘텐츠와 관련이 있기 때문에 성능 및 유연성을 개선하기 위해 확장된다.
본원에서 사용되는 바에 따르면, 용어 "셔터 각도"는 각 프레임 간격 동안 필름이 빛에 노출되는 시간의 비율을 제어하는 조정 가능한 셔터 설정을 의미한다. 예를 들어, 일 실시예에서 다음과 같다.
이 용어는 기존의 기계식 회전 셔터에서 유래하지만, 최신 디지털 카메라 또한 셔터를 전자적으로 조정할 수 있다. 촬영 감독은 셔터 각도를 사용하여 각 프레임에 기록되는 모션 블러 또는 저더의 양을 제어할 수 있다. "노출 시간"을 사용하는 대신, "노출 지속시간", "셔터 간격" 및 "셔터 속도"와 같은 대체 용어를 사용할 수도 있다. 마찬가지로, "프레임 간격"을 사용하는 대신 "프레임 지속시간"이라는 용어를 사용할 수 있다. 또는 "프레임 간격"을 "1/프레임 레이트"로 대체할 수 있다. 노출 시간 값은 일반적으로 프레임의 지속시간보다 작거나 같다. 예를 들어, 셔터 각도가 180도이면 노출 시간이 프레임 지속시간의 절반임을 나타낸다. 일부 상황에서, 노출 시간은, 예를 들어, 인코딩된 프레임 레이트가 120fps이고 인코딩 및 디스플레이 이전에 연관된 비디오 콘텐츠의 프레임 레이트가 60fps인 경우, 코딩된 비디오의 프레임 지속시간보다 클 수 있다.
제한 없이, 원본 콘텐츠가 360 도의 셔터 각도로 원본 프레임 레이트(예를 들어, 120fps)로 촬영(또는 생성)되는 실시예를 고려한다. 그 후, 수신 디바이스에서, 예를 들어, 평균화 또는 기타 당업계에 알려진 작업에 의하여, 원래 프레임의 공정한 조합에 의하여 원래 프레임 레이트와 같거나 더 낮은 다양한 프레임 레이트로 비디오 출력을 렌더링할 수 있다.
결합 프로세스는 (예를 들어, 감마, PQ 또는 HLG를 사용하여) 비선형 인코딩된 신호로 수행될 수 있지만, 먼저 비선형 인코딩된 신호를 선형 광 표현으로 변환한 다음 변환된 프레임을 결합하고 마지막으로 비선형 전달 함수로 출력을 다시 인코딩함으로써 선형 광 영역의 프레임을 결합하여 최상의 이미지 품질을 얻을 수 있다. 이 프로세스는 비선형 영역에서 결합하는 것보다 실제 카메라 노출에 대한 더 정확한 시뮬레이션을 제공한다.
일반적으로, 프레임 결합 프로세스는 원본 프레임 레이트, 목표 프레임 레이트, 목표 셔터 각도, 결합될 프레임 수로 다음과 같이 표현될 수 있으며,
n_frames=(target_shutter_angle/360)*(original_frame_rate/target_frame_rate) (2)
이는 다음 식과 동등하고
target_shutter_angle=360*n_frames*(target_frame_rate/original_frame_rate) (3)
여기에서 n_frames는 결합될 프레임 수이고, original_frame_rate는 원본 콘텐츠의 프레임 레이트이고, target_frame_rate는 렌더링될 프레임 레이트이며(여기에서, target_frame_rate ≤ original_frame_rate), target_shutter_angle은 원하는 모션 블러 양을 나타낸다. 이 예에서, target_shutter_angle의 최대값은 360 도이고 최대 모션 블러에 대응한다. target_shutter_angle의 최소값은 360*(target_frame_rate/original_frame_rate)로 표현될 수 있으며 최소 모션 블러에 대응한다. n_frames의 최대값은(original_frame_rate/target_frame_rate)로 표현될 수 있다. target_frame_rate 및 target_shutter_angle의 값은 n_frames의 값이 0이 아닌 정수가 되도록 선택되어야 한다.
원본 프레임 레이트가 120fps인 특별한 경우에서, 식 (2) 는 다음과 같이 재작성될 수 있으며,
n_frames = target_shutter_angle/(3*target_frame_rate) (4)
이는 다음의 식과 동등하다.
target_shutter_angle = 3*n_frames*target_frame_rate (5)
target_frame_rate, n_frames 및 target_shutter_angle 값 사이의 관계는 original_frame_rate = 120fps의 경우에 대해 표 1에 나타나 있다. 표 1에서, "NA"는 목표 프레임 레이트와 결합될 프레임 수의 대응하는 조합이 허용되지 않음을 나타낸다.
표 1: 원본 프레임
레이트
120fps에
대한 목표 프레임
레이트
, 결합 프레임 수 및 목표 셔터 각도 사이의 관계
목표 프레임 레이트(fps) | 결합될 프레임 수 | ||||
5 | 4 | 3 | 2 | 1 | |
목표 셔터 각도(도) | |||||
24 | 360 | 288 | 216 | 144 | 72 |
30 | NA | 360 | 270 | 180 | 90 |
40 | NA | NA | 360 | 240 | 120 |
60 | NA | NA | NA | 360 | 180 |
도 2는 일 실시예에 따라 목표 셔터 각도에서 목표 프레임 레이트를 렌더링하기 위해 연속적인 원본 프레임을 결합하는 예시적인 프로세스를 도시한다. 120fps의 입력 시퀀스(205)와 360도의 셔터 각도가 주어지면, 프로세스는 5개의 연속 프레임 세트에서 3개의 입력 프레임(예를 들어, 처음 3개의 연속 프레임)을 결합하고, 나머지 2개는 드롭하여 24fps와 216도의 셔터 각도의 출력 비디오 시퀀스(210)를 생성한다. 일부 실시예에서, (210)의 출력 프레임-01이 프레임 1, 3 및 5, 또는 프레임 2, 4 및 5 등과 같은 대체 입력 프레임(205)을 결합하여 생성될 수 있다는 점에 유의한다. 그러나 연속된 프레임을 결합하면 더 나은 품질의 비디오 출력을 얻을 것으로 예측할 수 있다.
예를 들어, 예술적 및 스타일 효과를 관리하기 위하여 가변 프레임 레이트로 원본 콘텐츠를 지원하는 것이 바람직하다. 또한 원본 콘텐츠의 가변 입력 프레임 레이트는 콘텐츠 제작, 교환 및 유통을 단순화하기 위하여 고정 프레임 레이트를 갖는 "컨테이너"에 패키징되는 것이 바람직하다. 예로서, 고정 프레임 레이트 컨테이너에서 가변 프레임 레이트 비디오 데이터를 표현하는 방법에 대한 3개의 실시예가 제시된다. 명확성을 위하여 및 제한 없이, 다음의 설명에서는 고정된 120fps 컨테이너를 사용하지만, 이 접근법은 대안적인 프레임 레이트 컨테이너로 쉽게 확장될 수 있다.
제1 실시예(가변 프레임 레이트)
제1 실시예는 일정한 프레임 레이트를 갖는 컨테이너에 패키징된 가변(비-일정) 프레임 레이트를 갖는 원본 콘텐츠에 대한 명시적 설명이다. 예를 들어, 상이한 장면에 대해, 24, 30, 40, 60 또는 120fps으로 상이한 프레임 레이트를 갖는 원본 콘텐츠가 120fps의 일정한 프레임 레이트를 갖는 컨테이너에 패키징될 수 있다. 이 예에서는, 각 입력 프레임을 5x, 4x, 3x, 2x 또는 1x로 복제하여 공통 120fps 컨테이너로 패키징할 수 있다.
도 3은 고정 프레임 레이트로 코딩된 비트스트림 B로 표현되는 가변 프레임 레이트 및 가변 셔터 각도를 갖는 입력 비디오 시퀀스 A의 예를 도시한다. 이어서, 디코더에서, 디코더는 장면마다 변경될 수 있는 원하는 프레임 레이트와 셔터 각도에서 출력 비디오 시퀀스 C를 재구성한다. 예를 들어, 도 3에 도시된 바와 같이, 시퀀스 B를 구성하기 위하여 일부 입력 프레임은 복제되고, 일부는 그대로(복제 없이) 코딩되며, 일부는 4회 복사된다. 그런 다음, 시퀀스 C를 구성하기 위하여, 각 복제 프레임 세트에서 하나의 프레임을 선택하여 원래 프레임 레이트 및 셔터 각도와 일치하는 출력 프레임을 생성한다.
이 실시예에서, 원본(기본(base)) 프레임 레이트 및 셔터 각도를 나타내기 위하여 메타데이터가 비트스트림에 삽입된다. 메타데이터는 SPS(Sequence Parameter Set), PPS(Picture Parameter Set), Slice 또는 Tile Group 헤더 등과 같은 고수준 구문을 사용하여 시그널링될 수 있다. 메타데이터가 있으면 인코더와 디코더가 다음과 같은 유용한 기능을 수행할 수 있다.
a) 인코더는 복제된 프레임을 무시할 수 있으므로, 인코딩 속도를 높이고 처리를 단순화한다. 예를 들어, 복제된 프레임의 모든 코딩 트리 단위(CTU)는 복제된 프레임이 복사되는 디코딩된 프레임을 참조하는 참조 프레임의 LIST 0에서 SKIP 모드 및 참조 인덱스 0을 사용하여 인코딩될 수 있다.
b) 디코더는 복제 프레임의 디코딩을 우회하여 처리를 단순화할 수 있다. 예를 들어, 비트스트림의 메타데이터는, 프레임이, 디코더가 새로운 프레임을 디코딩하지 않고 복사하여 재생할 수 있는 이전에 디코딩된 프레임의 복제임을 나타낼 수 있다.
c) 재생 디바이스는, 예를 들어 프레임 레이트 변환 또는 노이즈 감소 알고리즘을 조정하여, 기본 프레임 레이트를 표시하여 다운스트림 처리를 최적화할 수 있다.
이 실시예는 최종 사용자가 콘텐츠 생성자에 의해 의도된 프레임 레이트로 렌더링된 콘텐츠를 볼 수 있게 한다. 이 실시예는 컨테이너의 프레임 레이트, 예를 들어 120fps를 지원하지 않는 디바이스와의 하위 호환성을 제공하지 않는다.
표 2 및 3은 시퀀스 매개변수 세트 및 Tile Group 헤더에 대한 원시 바이트 시퀀스 페이로드(RBSB)의 예시적인 구문을 도시하며, 여기에서 제안된 새로운 구문 요소는 이탤릭체로 묘사된다. 나머지 구문은 VVC(Versatile Video Codec)에서 제안된 표준의 구문을 따른다(참고문헌 [2]).
예로서, SPS(표 2 참조)에서, 가변 프레임 레이트를 가능하게 하는 플래그를 추가할 수 있다.
sps _ vfr _enabled_flag가 1인 것은 코딩된 비디오 시퀀스(CVS)가 가변 프레임 레이트 콘텐츠를 포함할 수 있음을 지정한다. sps_vfr_enabled_flag가 0인 것은 CVS가 고정 프레임 레이트 콘텐츠를 포함하는 것을 지정한다.
tile_group header()에서(표 3 참조),
tile_group_ vrf _info_present_flag 가 1인 것은 구문 요소 tile_group_true_fr 및 tile_group_shutterangle이 구문에 있음을 지정한다. tile_group_vrf_info_present_flag 가 0인 것은 구문 요소 tile_group_true_fr 및 tile_group_shutterangle이 구문에 없음을 지정한다. tile_group_vrf_info_present_flag 가 없으면, 0인 것으로 추론한다.
tile_group_true_ fr 은 이 비트스트림에서 전달되는 비디오 데이터의 실제 프레임 레이트를 나타낸다. tile_group_ shutterangle 은 이 비트스트림에서 전달되는 비디오 데이터의 실제 프레임 레이트에 대응하는 셔터 각도를 나타낸다.
tile_group_skip_flag 가 1인 것은 현재 타일 그룹이 다른 타일 그룹으로부터 복사된 것을 지정한다. tile_group_skip_flag 가 0인 것은 현재 타일 그룹이 다른 타일 그룹으로부터 복사되지 않은 것을 지정한다.
tile_group_copy_ pic _order_ cnt _ lsb 는 tile_group_skip_flag가 1로 설정된 때 현재 화상이 그것으로부터 복사된 이전에 디코딩된 화상에 대한 화상 순서 카운트 모듈로 MaxPicOrderCntLsb를 지정한다.
표 2: 가변 프레임
레이트를
갖는 콘텐츠에 대한 예시적인 매개변수 세트
RBSP
구문
seq_parameter_set_rbsp( ) { |
설명자
(Descriptor) |
sps_max_sub_layers_minus1 | u(3) |
sps_reserved_zero_5bits | u(5) |
profile_tier_level( sps_max_sub_layers_minus1 ) | |
sps_seq_parameter_set_id | ue(v) |
... | |
sps_vfr_enabled_flag | u(1) |
... | |
sps_extension_flag | u(1) |
if( sps_extension_flag ) | |
while( more_rbsp_data( ) ) | |
sps_extension_data_flag | u(1) |
rbsp_trailing_bits( ) | |
} |
표 3: 가변 프레임
레이트를
갖는 콘텐츠를 지원하는 예시적인 Tile Group 헤더 구문
tile_group_header( ) { | 설명자 |
tile_group_pic_parameter_set_id | ue(v) |
if( NumTilesInPic > 1 ) { | |
tile_group_address | u(v) |
num_tiles_in_tile_group_minus1 | ue(v) |
} | |
tile_group_type | ue(v) |
tile_group_pic_order_cnt_lsb | u(v) |
if( sps_vfr_enabled_flag ) { | |
tile_group_vfr_info_present_flag | u(1) |
if(tile_group_vfr_info_present_flag) { | |
tile_group_true_fr | u(9) |
tile_group_shutterangle | u(9) |
} | |
tile_group_skip_flag | u(1) |
} | |
if( tile_group_skip_flag ) | |
tile_group_copy_pic_order_cnt_lsb | u(v) |
else{ | |
ALL OTHER TILE_GROUP_SYNTAX | |
} | |
if( num_tiles_in_tile_group_minus1 > 0 ) { | |
offset_len_minus1 | ue(v) |
for( i = 0; i < num_tiles_in_tile_group_minus1; i++ ) | |
entry_point_offset_minus1[ i ] | u(v) |
} | |
byte_alignment( ) | |
} |
제2
실시예
- 고정 프레임
레이트
컨테이너
제2 실시예는 고정된 프레임 레이트 및 셔터 각도를 갖는 원본 콘텐츠가, 도 2에 도시된 바와 같이, 대안적인 프레임 레이트 및 가변 시뮬레이션된 셔터 각도에서 디코더에 의해 렌더링될 수 있는 사용 사례를 가능하게 한다. 예를 들어, 원본 콘텐츠의 프레임 레이트가 120fps이고 셔터 각도가 360도(셔터가 1/120초 열림)인 경우, 디코더는 120fps 이하의 여러 프레임 레이트를 렌더링할 수 있다. 예를 들어, 표 1에 설명된 바와 같이, 216도 시뮬레이션된 셔터 각도로 24fps를 디코딩하기 위하여, 디코더는 3개의 디코딩된 프레임을 결합하고 24fps로 디스플레이할 수 있다. 표 4는 표 1을 확장하여 출력 목표 프레임 레이트와 원하는 목표 셔터 각도에서 렌더링하기 위하여 상이한 수의 인코딩된 프레임을 결합하는 방법을 도시한다. 프레임을 결합하는 것은 단순 픽셀 평균화, 특정 프레임의 픽셀은 다른 프레임의 픽셀보다 가중치가 더 높을 수 있으며 모든 가중치의 합이 1인 가중된 픽셀 평균화, 또는 이 분야에서 공지된 다른 필터 보간 방식에 의해 수행될 수 있다. 표 4에서 함수 Ce(a, b)는 인코딩된 프레임 a 내지 b의 조합을 나타내며, 여기에서 결합은 평균화, 가중 평균화, 필터링 등에 의해 수행될 수 있다.
표
4: 120fps에서
입력 프레임을 결합하여 목표 fps 및 셔터 각도 값에서 출력 프레임을 생성하는 예
입력 | s1 | s2 | s3 | s4 | s5 | s6 | s7 | s8 | s9 | s10 |
Enc. | e1 | e2 | e3 | e4 | e5 | e6 | e7 | e8 | e9 | e10 |
Dec. 120fps | ||||||||||
@360 | e1 | e2 | e3 | e4 | e5 | e6 | e7 | e8 | e9 | e10 |
Dec. 60fps | ||||||||||
@360 | Ce(1,2) | Ce(3,4) | Ce(5,6) | Ce(7,8) | Ce(9,10) | |||||
@180 | e1 | e3 | e5 | e7 | e9 | |||||
Dec.40fps | ||||||||||
@360 | Ce(1,3) | Ce(4,6) | Ce(7,9) | Ce(10,12) | ||||||
@240 | Ce(1,2) | Ce(4,5) | Ce(7,8) | Ce(10,11) | ||||||
@120 | e1 | e4 | e7 | e10 | ||||||
Dec.30fps | ||||||||||
@360 | Ce(1,4) | Ce(5,8) | Ce(9,12) | |||||||
@270 | C(1,3) | Ce(5,7) | Ce(9,11) | |||||||
@180 | Ce(1,2) | Ce(5,6) | Ce(9,10) | |||||||
@90 | e1 | e5 | e9 | |||||||
Dec. 24fps | ||||||||||
@360 | Ce(1,5) | Ce(6,10) | ||||||||
@288 | Ce(1,4) | Ce(6,9) | ||||||||
@216 | Ce(1,3) | Ce(6,8) | ||||||||
@144 | Ce(1,2) | Ce(6,7) | ||||||||
@72 | e1 | e6 |
목표 셔터 각도의 값이 360도 미만일 때, 디코더는 상이한 디코딩된 프레임 세트를 결합할 수 있다. 예를 들어, 표 1에서, 360도에서 120fps의 원본 스트림이 주어졌을 때, 40fps 및 240도 셔터 각도에서 스트림을 생성하려면 디코더가 가능한 세 프레임 중 두 프레임을 결합해야 한다. 따라서, 제1 및 제2 프레임 또는 제2 및 제3 프레임을 결합할 수 있다. 결합할 프레임의 선택은 다음과 같이 표현되는 "디코딩 단계"로 기술될 수 있다.
decode_phase = decode_phase_idx*(360/n_frames) (6)
여기에서 decode_phase_idx는 [0, n_frames_max-1] 내의 인덱스 값을 갖는 일련의 프레임 세트 내의 오프셋 인덱스를 나타내며, 여기에서 n_frames는 식 (2)로 주어지고,
n_frames_max = orig_frame_rate/target_frame_rate (7)
이다.
일반적으로, decode_phase_idx의 범위는 [0, n_frames_max-n_frames]이다. 예를 들어, 120fps 및 360도 셔터 각도의 원본 시퀀스의 경우, 240도 셔터 각도에서 40fps의 목표 프레임 레이트에 대하여 n_frames_max = 120/40 = 3이다. 식 (2)로부터, n_frames = 2이므로, 따라서 decode_phase_idx의 범위는 [0, 1]이다. 따라서, decode_phase_idx = 0은 인덱스가 0과 1인 프레임을 선택함을 나타내고, decode_phase_idx = 1은 인덱스가 1과 2인 프레임을 선택함을 나타낸다.
이 실시예에서, 콘텐츠 생성자에 의해 의도된 렌더링된 가변 프레임 레이트는 부가적 향상 정보(SEI) 메시지 또는 비디오 유용성 정보(VUI)와 같은 메타데이터로서 시그널링될 수 있다. 선택적으로, 렌더링된 프레임 레이트는 수신기 또는 사용자에 의해 제어될 수 있다. 콘텐츠 생성자의 선호 프레임 레이트 및 셔터 각도를 지정하는 프레임 레이트 변환 SEI 메시지의 예가 표 5에 나타나 있다. SEI 메시지는 또한 프레임 결합이 코딩된 신호 도메인(예를 들어, 감마, PQ 등) 또는 선형 광 영역에서 수행되는지 나타낼 수 있다. 후처리에는 디코더 화상 버퍼(decoder picture buffer; DPB)와 함께 프레임 버퍼가 필요함을 유의한다. SEI 메시지는 필요한 추가 프레임 버퍼의 수 또는 프레임을 결합하는 다른 방법을 나타낼 수 있다. 예를 들어, 복잡성을 줄이기 위하여, 프레임은 감소된 공간 해상도로 재결합될 수 있다.
표 4에 나타난 바와 같이, 프레임 레이트 및 셔터 각도의 특정 조합(예를 들어, 30fps 및 360도 또는 24fps 및 288 또는 360도에서)에서 디코더는 3개 이상의 디코딩된 프레임을 결합해야 할 수 있으며, 이는 디코더에 필요한 버퍼 공간 수를 증가시킨다. 디코더에서 추가 버퍼 공간의 부담을 줄이기 위하여, 일부 실시예에서, 프레임 레이트 및 셔터 각도의 특정 조합은 허용된 디코딩 매개변수 세트에 대한 제한을 벗어날 수 있다(예를 들어, 적절한 코딩 프로파일 및 레벨을 설정함으로써).
다시 예를 들어, 24fps로 재생하는 경우를 고려하면, 디코더는 120fps 출력 프레임 레이트로 디스플레이되도록 동일한 프레임을 5번 디스플레이하도록 결정할 수 있다. 이는 24fps 출력 프레임 레이트로 프레임을 한 번만 표시하는 것과 완전히 동일하다. 일정한 출력 프레임 레이트를 유지하는 것의 이점은 디스플레이가 일정한 클록 속도로 실행될 수 있다는 것이며, 이는 모든 하드웨어를 훨씬 간단하게 만든다. 디스플레이가 클록 속도를 동적으로 변경할 수 있으면, 프레임을 한 번만(1/24초 동안) 표시하는 것이 동일한 프레임을 5번(각 1/120초) 반복하는 것보다 더 합리적일 수 있다. 전자의 접근법은 약간 더 높은 화질, 더 나은 광학 효율성 또는 더 나은 전력 효율성을 가져올 수 있다. 유사한 고려 사항이 다른 프레임 레이트에도 또한 적용된다.
표 5는 실시예에 따른 프레임 레이트 변환 SEI 메시지 구문의 예를 나타낸다.
표 5: 프레임
레이트
변환을 허용하는
SEI
메시지 구문의 예
framerate_conversion( payloadSize ) { | 설명자 |
framerate_conversion_cancel_flag | u(1) |
if( !frame_conversion_cancel_flag ) { | |
base_frame_rate | u(9) |
base_shutter_angle | u(9) |
decode_phase_ idx _present_flag | u(1) |
if( decode_phase_idx_present_flag ) { | |
decode_phase_ idx | u(3) |
} | |
conversion_domain_idc | u(1) |
num _frame_buffer | u(3) |
framerate_conversion_persistence_flag | u(1) |
} | |
} |
framerate _conversion_cancel_flag 가 1인 것은 SEI 메시지가 출력 순서에서 이전 프레임 레이트 변환 SEI 메시지의 지속성을 취소하는 것을 나타낸다. framerate_conversion_cancel_flag 가 0인 것은 프레임 레이트 변환 정보를 따르는 것을 나타낸다.
base_frame_rate는 원하는 프레임 레이트를 지정한다.
base_shutter_angle 는 원하는 셔터 각도를 지정한다.
decode_phase_ idx _present_flag 가 1인 것은 디코딩 단계 정보가 존재하는 것을 나타낸다. decode_phase_idx_present_flag 가 0인 것은 디코딩 단계 정보가 존재하지 않는 것을 나타낸다.
decode_phase_ idx 는 인덱스 값이 0..(n_frames_max-1)인 일련의 프레임 세트 내의 오프셋 인덱스를 나타내며, 여기에서 n_frames_max = 120/base_frame_rate이다. decode_phase_idx의 값은 0..(n_frames_max-n_frames) 범위에 있어야 하며, 여기에서 n_frames = base_shutter_angle/(3*base_frame_rate)이다. decode_phase_idx가 없으면, 0으로 추론된다.
conversion_domain_idc 가 0인 것은 프레임 조합이 선형 영역에서 수행되는 것을 나타낸다. conversion_domain_idc 가 1인 것은 프레임 조합이 비선형 영역에서 수행되는 것을 나타낸다.
num _frame_buffers 는 추가 프레임 버퍼 수를 지정한다(DPB는 계산하지 않음).
framerate _conversion_persistence_flag는 현재 레이어에 대한 프레임 레이트 변환 SEI 메시지의 지속성을 지정한다. framerate_conversion_persistence_flag가 0인 것은 프레임 레이트 변환 SEI 메시지가 현재 디코딩된 화상에만 적용되도록 지정한다. picA가 현재 화상이라고 한다. framerate_conversion_persistence_flag 가 1인 것은 프레임 레이트 변환 SEI 메시지가 다음 조건 중 하나 이상이 참일 때까지 출력 순서로 현재 레이어에 대해 지속되도록 지정한다:
- 현재 레이어의 새로운 코딩된 레이어 별 비디오 시퀀스(CLVS)가 시작된다.
- 비트스트림이 종료된다.
- PicOrderCnt(picB)가 PicOrderCnt(picA)보다 큰 현재 레이어에 적용할 수 있는 프레임 레이트 변환 SEI 메시지를 포함하는 액세스 유닛의 현재 레이어에 있는 화상 picB가 출력되며, 여기에서 PicOrderCnt(picB) 및 PicOrderCnt(picA) )는 picB에 대한 화상 순서 카운트에 대한 디코딩 프로세스의 호출 직후 각각 picB 및 picA의 PicOrderCntVal 값이다.
제3
실시예
-다중 셔터 각도로 인코딩된 입력
제3 실시예는 비트스트림으로부터 서브 프레임 레이트의 추출을 허용하여 하위 호환성을 지원하는 코딩 방식이다. HEVC에서, 이는 시간적 스케일러빌리티(temporal scalability)에 의해 달성된다. 디코딩된 프레임에 대한 temporal_id 구문 요소에 상이한 값을 할당함으로써 시간 레이어 스케일러빌리티가 가능하게 된다. 따라서 비트스트림은 temporal_id 값에 기초하여 간단히 추출될 수 있다. 그러나, 시간적 스케일러빌리티에 대한 HEVC 스타일의 접근법은 상이한 셔터 각도로 출력 프레임 레이트를 렌더링할 수 없다. 예를 들어 120fps 원본에서 추출한 60fps 기본 프레임 레이트는 항상 180도의 셔터 각도를 갖는다.
ATSC 3.0에서, 360도 셔터 각도를 갖는 60fps의 프레임이 2개의 120fps 프레임의 가중 평균으로 에뮬레이션되는 대안적인 방법이 설명된다. 에뮬레이션된 60fps 프레임에는 temporal_id 값 0이 할당되고 temporal_id 값 1이 할당된 원본 120fps 프레임과 교대로 결합된다. 60fps가 필요한 경우, 디코더는 temporal_id 0의 프레임만 디코딩하면 된다. 120fps가 필요한 경우, 디코더는 각 temporal_id = 1 프레임(즉, 120fps 프레임)을 대응하는 각 temporal_id = 0 프레임(즉, 에뮬레이트된 60fps 프레임)의 스케일링된 버전에서 빼서 명시적으로 전송되지 않은 대응하는 원본 120fps 프레임을 복구하여, 모든 원본 120fps 프레임을 재구성할 수 있다.
본 발명의 실시예에서, 하위 호환(BC) 방식으로 다중 목표 프레임 레이트 및 목표 셔터 각도를 지원하는 새로운 알고리즘이 기술된다. 제안은 여러 셔터 각도에서 기본 프레임 레이트로 원본 120fps 콘텐츠를 전처리하는 것이다. 그런 다음, 디코더에서, 다양한 다른 셔터 각도에서 다른 프레임 레이트를 간단히 유도할 수 있다. ATSC 3.0 접근법은 제안된 방식의 특별한 경우로 생각할 수 있는데, temporal_id = 0 인 프레임은 60fps @ 360 셔터 각도에서 프레임을 전달하고 temporal_id = 1 인 프레임은 60fps @ 180 셔터 각도에서 프레임을 전달한다.
제1 예로서, 도 4에 나타난 바와 같이, 기본 레이어 프레임 레이트가 40fps이고 셔터 각도가 120, 240 및 360 도인 시퀀스를 인코딩하는 데 사용되는 120fps 및 360 셔터 각도의 입력 시퀀스를 고려한다. 이 방식에서 인코더는 최대 3개의 원래 입력 프레임을 결합하여 새 프레임을 계산한다. 예를 들어, 입력 프레임 1과 2를 결합하여 40fps 및 240도에서 입력을 나타내는 인코딩된 프레임 2(En-2)가 생성되고, 프레임 En-2를 입력 프레임 3에 결합함으로써 40fps 및 360도에서 입력을 나타내는 인코딩된 프레임 3(En-3)이 생성된다. 디코더에서, 입력 시퀀스를 재구성하기 위하여, 프레임 En-2에서 프레임 En-1을 빼서 디코딩된 프레임 2(Dec-2)를 생성하고, 프레임 En-3에서 프레임 En-2를 빼서 디코딩된 프레임 3(Dec- 3)을 생성한다. 디코딩된 3 개의 프레임은 기본 프레임 레이트 120fps 및 셔터 각도 360도에서의 출력을 나타낸다. 추가 프레임 레이트 및 셔터 각도는 표 6에 나타난 바와 같이 디코딩된 프레임을 사용하여 외삽될 수 있다. 표 6에서, 함수 Cs(a, b)는 입력 프레임 a 내지 b의 조합을 나타내며, 여기에서 결합은 평균화, 가중 평균화, 필터링 등에 의해 수행될 수 있다.
표
6: 40fps
베이스라인을 갖는 프레임 조합의 예
입력 프레임 120fps @360 |
s1 | s2 | s3 | s4 | s5 | s6 | s7 | s8 | s9 |
인코딩된 프레임 120fps |
e1=s1 | e2=Cs(1,2) | e3=Cs(1,3) | e4=s4 | e5=Cs(4,5) | e6=Cs(4,6) | e7=s7 | e8=Cs(7.8) | e9=Cs(7,9) |
디코딩 120fps |
|||||||||
@360 | e1=s1 | e2-e1=s2 | e3-e2=s3 | e4=s4 | e5-e4=s5 | e6-e4=s6 | e7=s7 | e8-e7=s8 | e9-e8=s9 |
디코딩 60fps |
|||||||||
@360 | e2 | e3-e2+e4=Cs(3,4) | e6-e4=Cs(5,6) | e8=Cs(7,8) | e9-e8+e10 | ||||
@180 | e1 | e3-e2=s3 | e5-e4=s5 | e7 | e9-e8 | ||||
디코딩 40fps |
|||||||||
@360 | e3=Cs(1,3) | e6 | e9 | ||||||
@240 | e2=Cs(1,2) | e5 | e8 | ||||||
@120 | e1=s1 | e4 | e7 | ||||||
디코딩 30fps |
|||||||||
@360 | e3+e4=Cs(1,4) | e6-e4+e8=Cs(5,8) | e9-e8+e12 | ||||||
@270 | e3=Cs(1,3) | e6-e5+e7=Cs(5,7) | e9-e8+e11 | ||||||
@180 | e2=Cs(1,2) | e6-e4=Cs(5,6) | e9-e8+e10 | ||||||
@90 | e1 | e5-e4=s5 | e9-e8 | ||||||
디코딩 24fps |
|||||||||
@360 | e3+e5=Cs(1,5) | e6-e5+e9+e10=Cs(6,10) | |||||||
@288 | e3+e4=Cs(1,4) | e6-e5+e9=Cs(6,9) | |||||||
@216 | e3=Cs(1,3) | e6-e5+e8=Cs(6,8) | |||||||
@144 | e2=Cs(1,2) | e6-e5+e7=Cs(6,7) | |||||||
@72 | e1=s1 | e6-e5=s6 |
이 접근법의 장점은, 표 6에 나타난 바와 같이, 모든 40fps 버전이 추가 처리 없이 디코딩될 수 있다는 것이다. 다른 장점은 다양한 셔터 각도에서 다른 프레임 레이트를 유도할 수 있다는 것이다. 예를 들어, 30fps 및 셔터 각도 360에서 디코딩하는 디코더를 가정한다. 표 4로부터, 출력은 Ce(1,4) = Cs(1,4), Cs(5,8), Cs(9,12) 등에 의해 생성된 프레임 시퀀스에 대응하며, 이는 표 6에 나타난 디코딩 시퀀스와도 일치한다. 그러나 표 6에서는 Cs(5,8) = e6-e4 + e8이다. 실시예에서, 룩업 테이블(LUT)을 사용하여 지정된 출력 프레임 레이트 및 에뮬레이트된 셔터 각도에서 출력 시퀀스를 생성하기 위해 디코딩된 프레임을 결합하는 방법을 정의할 수 있다.
다른 예에서, 아래에 나타난 바와 같이 72, 144, 216, 288 및 360도의 셔터 각도에서 24fps 기본 레이어의 추출을 단순화하기 위하여 인코더에서 최대 5개의 프레임을 결합하는 것이 제안된다. 이는 기존의 TV에서 24fps로 가장 잘 표현되는 영화 콘텐츠에 적합하다.
표
7: 24fps
베이스라인을 갖는 프레임 조합의 예
입력 프레임 120fps @360 |
s1 | s2 | s3 | s4 | s5 | s6 | s7 | s8 | s9 |
인코딩된프레임 | e1= s1 |
e2 = Cs(1,2) | e3=Cs(1,3) | e4=Cs(1,4) | e5=Cs(1,5) | e6= s6 |
e7 = Cs(6,7) | e8 = Cs(6,8) | e9 = Cs(6,9) |
디코딩 120fps | |||||||||
@360 | e1 | e2-e1 | e3-e2 | e4-e3 | e5-e4 | e6 | e7-e6 | e8-e7 | e9-e8 |
디코딩 60fps | |||||||||
@360 | e2 | e4-e2 | e5-e4+e6 | e8-e6 | e10-e8 | ||||
@180 | e1 | e3-e2 | e5-e4 | e7-e6 | e9-e8 | ||||
디코딩 40fps | |||||||||
@360 | e3 | e5-e3+e6 | e9-e6 | ||||||
@240 | e2 | e5-e3 | e8-e6 | ||||||
@120 | e1 | e4-e3 | e7-e6 | ||||||
디코딩 30fps | |||||||||
@360 | e4 | e5-e4+e8 | e10-e8+e12 | ||||||
@270 | e3 | e5-e4+e7 | e10-e8+e11 | ||||||
@180 | e2 | e5-e4+e6 | e10-e8 | ||||||
@90 | e1 | e5-e4 | e9-e8 | ||||||
디코딩 24fps | |||||||||
@360 | e5 | e10 | |||||||
@288 | e4 | e9 | |||||||
@216 | e3 | e8 | |||||||
@144 | e2 | e7 | |||||||
@72 | e1 | e6 |
표 7에 나타난 바와 같이, 디코딩 프레임 레이트가 베이스라인 프레임 레이트(24fps)와 일치하면, 5개 프레임의 각 그룹(예를 들어, e1 내지 e5) 내에서 디코더는 원하는 셔터 각도에서 하나의 프레임을 간단히 선택할 수 있다(예를 들어, 144도 셔터 각도의 경우 e2). 상이한 프레임 레이트와 특정 셔터 각도에서 디코딩하려면, 디코더가 디코딩된 프레임을 적절하게 결합 하는 방법(예를 들어, 더하기 또는 빼기)을 결정해야 한다. 예를 들어, 30fps 및 180도 셔터 각도에서 디코딩하려면 다음 단계를 따를 수 있다.
a) 디코더는 하위 호환성을 고려하지 않고 120fps 및 360도에서 전송하는 가상 인코더를 고려할 수 있으며, 그렇다면, 표 1로부터, 디코더가 원하는 프레임 레이트 및 셔터 각도에서 출력 시퀀스를 생성하기 위하여 4개의 프레임 중 2개를 결합해야 한다. 예를 들어, 표 4에 나타난 바와 같이, 시퀀스는 Ce(1,2) = Avg(s1, s2), Ce(5,6) = Avg(s5, s6) 등이 포함되며, 여기에서 Avg(s1, s2)는 프레임 s1 및 s2의 평균을 나타낼 수 있다.
b) 정의에 따라 인코딩된 프레임이 e1 = s1, e2 = Avg(s1, s2), e3 = Avg(s1, s3) 등으로 표현될 수 있다는 점을 감안할 때, 단계 a)의 프레임 시퀀스가 또한 다음과 같이 표현될 수 있음을 쉽게 유도할 수 있다.
ㆍCe(1,2) = Avg(s1,s2) = e2
ㆍCe(5,6) = Avg(s5,s6) = Avg(s1,s5) - Avg(s1,s4) + s6 = e5-e4+e6
ㆍ등
이전과 마찬가지로, 디코딩된 프레임의 적절한 조합을 미리 계산하여 LUT로 사용할 수 있다.
제안된 방법의 장점은 콘텐츠 생성자와 사용자 모두에게 옵션을 제공한다는 것이다. 즉, 이는 감독/편집 선택 및 사용자 선택을 가능하게 한다. 예를 들어, 인코더에서 콘텐츠를 전처리하면 다양한 셔터 각도로 기본 프레임 레이트를 만들 수 있다. 각 셔터 각도에는 [0, (n_frames -1)] 범위의 temporal_id 값이 할당될 수 있으며, 여기에서 n_frames는 120을 기본 프레임 레이트로 나눈 값을 갖는다(예를 들어, 기본 프레임 레이트가 24fps인 경우, temporal_id는 [0,4] 범위에 있다). 압축 효율성을 최적화하거나 미적인 이유로 선택이 이루어질 수 있다. 일부 사용 사례에서, 예를 들어 오버더탑 스트리밍의 경우, 상이한 기본 레이어를 갖는 여러 비트스트림을 인코딩하고 저장하고 사용자가 선택하도록 제공할 수 있다.
개시된 방법의 제2 예에서, 다수의 하위 호환 프레임 레이트가 지원될 수 있다. 이상적으로는, 24fps 기본 레이어를 얻기 위하여 초당 24 프레임, 30fps 시퀀스를 얻기 위하여 초당 30 프레임, 60fps 시퀀스를 얻기 위하여 초당 60 프레임 등으로 디코딩할 수 있기를 원할 수 있다. 목표 셔터 각도가 지정되지 않은 경우, 소스 및 목표 프레임 레이트에 대해 허용되는 셔터 각도 중에서 가능한 한 180도에 가까운 디폴트 목표 셔터 각도가 권장된다. 예를 들어, 표 7에 나타난 값의 경우, 120, 60, 40, 30 및 24 fps에 대해 선호되는 목표 셔터 각도는 360, 180, 120, 180 및 216 도이다.
위의 예들로부터 콘텐츠를 인코딩하는 방법의 선택이 특정 기본 레이어 프레임 레이트 디코딩의 복잡성에 영향을 미칠 수 있음을 알 수 있다. 본 발명의 일 실시예는 원하는 기본 레이어 프레임 레이트에 기초하여 인코딩 방식을 적응적으로 선택하는 것이다. 예를 들어 영화 콘텐츠의 경우 24fps이고 스포츠의 경우 60fps 일 수 있다.
본 발명의 BC 실시예에 대한 예시 구문이 아래 표 8 및 9에 나타나 있다.
SPS(표 8)에서, sps_hfr_BC_enabled_flag 및 sps_base_framerate (sps_hfr_BC_enabled_flag가 1로 설정된 경우)의 두 가지 구문 요소가 추가된다.
sps _ hfr _BC_enabled_flag가 1인 것은 코딩된 비디오 시퀀스(coded video sequence; CVS)에서 하위 호환성이 있는 높은 프레임 레이트를 사용할 수 있도록 지정한다. sps_hfr_BC_enabled_flag가 0인 것은 CVS에서 하위 호환성이있는 높은 프레임 레이트를 사용하지 않도록 지정한다.
sps _base_ framerate는 현재 CVS의 기본 프레임 레이트를 지정한다.
타일 그룹 헤더에서 sps_hfr_BC_enabled_flag가 1로 설정되면, number_avg_frames 구문이 비트스트림으로 전송된다.
number_ avg _frames는 기본 프레임 레이트로 현재 화상을 생성하기 위해 결합되는 최고 프레임 레이트(예를 들어, 120fps)의 프레임 수를 지정한다.
표 8: 다양한 셔터 각도에서의 입력에 대한 예시적인
RBSP
구문
seq_parameter_set_rbsp( ) { | 설명자 |
sps_max_sub_layers_minus1 | u(3) |
sps_reserved_zero_5bits | u(5) |
profile_tier_level( sps_max_sub_layers_minus1 ) | |
sps_seq_parameter_set_id | ue(v) |
... | |
sps_hfr_BC_enabled_flag | u(1) |
if( sps_hfr_BC_enabled_flag ) { | u(1) |
sps_base_frame_rate | u(9) |
} | |
... | |
sps_extension_flag | u(1) |
if( sps_extension_flag ) | |
while( more_rbsp_data( ) ) | |
sps_extension_data_flag | u(1) |
rbsp_trailing_bits( ) | |
} |
표 9: 다양한 셔터 각도에서의 입력에 대한 예시적인 화상 매개변수 세트
RBSB
구문
pic_parameter_set_rbsp( ) { | 설명자 |
pps_pic_parameter_set_id | ue(v) |
pps_seq_parameter_set_id | ue(v) |
... | |
if( sps_hfr_BC_enabled_flag ) | |
number_avg_frames | |
... | se(v) |
rbsp_trailing_bits( ) | |
} |
제2 실시예의 변형(고정 프레임 레이트)
HEVC(H.265) 코딩 표준(참고문헌 [1]) 및 개발중인 다용도 비디오 코딩 표준(Versatile Video Coding Standard)(일반적으로 VVC로 지칭됨, 참고문헌 [2] 참조)은 화상이 프레임으로 또는 하나 이상의 필드로 디스플레이되어야 하는지 및 디코딩된 화상이 반복되어야 하는지를 나타내는 구문 요소, pic_struct를 정의한다. 쉽게 참조할 수 있도록 부록에서 HEVC의 표 D.2,“의 해석”사본이 제공된다.
본 발명자들에 의해 이해되는 바에 따르면, 기존의 pic_struct 구문 요소는 고정 프레임 레이트 코딩 컨테이너를 사용할 때 콘텐츠 프레임 레이트의 특정 서브세트만을 지원할 수 있다는 점에 유의하는 것이 중요하다. 예를 들어, 60fps의 고정 프레임 레이트 컨테이너를 사용할 때, 기존 pic_struct 구문은 fixed_pic_rate_within_cvs_flag가 1 일 때 프레임 더블링을 사용하여 30fps를 지원할 수 있으며, 프레임 더블링과 프레임 트리플링을 교차 조합으로 사용하여 24fps를 지원할 수 있다. 그러나 120fps의 고정 프레임 레이트 컨테이너를 사용하는 경우, 현재 pic_struct 구문은 24fps 또는 30fps의 프레임 레이트를 지원할 수 없다. 이 문제를 완화하기 위하여, 두 가지 새로운 방법이 제안되었다. 하나는 HEVC 버전의 확장이고, 다른 하나는 그렇지 않은 것이다.
방법 1: 하위 호환되지 않는 pic_struct
VVC는 아직 개발 중이므로, 최대한 자유롭게 구문을 설계할 수 있다. 실시예에서, pic_struct에서, 프레임 더블링 및 프레임 트리플링에 대한 옵션을 제거하고, pic_struct의 특정 값을 사용하여 임의의 프레임 반복을 표시하고, 반복할 프레임 수를 지정하는 새로운 구문 요소 num_frame_repetition_minus2를 추가하는 것이 제안된다. 제안된 구문의 예는 다음 표에 기술되어 있으며, 표 10은 HEVC에서 표 D.2.3에 대한 변경 사항을 나타내고 표 11은 부록에 표시된 표 D.2의 변경 사항을 나타낸다.
표 10: 예시적인 화상 타이밍
SEI
메시지 구문, 방법 1
pic_timing( payloadSize ) { | 설명자 |
if( frame_field_info_present_flag ) { | |
pic_struct | u(4) |
if( pic_struct == 7) | u(4) |
num_frame_repetition_minus2 | u(4) |
source_scan_type | u(2) |
duplicate_flag | u(1) |
} | |
...(as the original) |
num_frame_repetition_minus2 + 2는 fixed_pic_rate_within_cvs_flag가 1 일 때, 프레임이 식 E-73에 의해 주어진 DpbOutputElementalInterval [n]과 같은 프레임 새로고침 간격으로 num_frame_repetition_minus2 + 2 번 연속적으로 디스플레이에 표시되어야 함을 나타낸다.
표 11: 방법 1에 따라 수정된
pic
_
struct의
예
값 | 지시된 화상 디스플레이 | 제한 |
0 | (프로그레시브) 프레임 | field_seq_flag는 0이어야 한다 |
1 | 위쪽 필드 | field_seq_flag는 1이어야 한다 |
2 | 아래쪽 필드 | field_seq_flag는 1이어야 한다 |
3 | 위쪽 필드, 아래쪽 필드, 그 순서대로 | field_seq_flag는 0이어야 한다 |
4 | 아래쪽 필드, 위쪽 필드, 그 순서대로 | field_seq_flag는 0이어야 한다 |
5 | 위쪽 필드, 아래쪽 필드, 위쪽 필드 반복, 그 순서대로 | field_seq_flag는 0이어야 한다 |
6 | 아래쪽 필드, 위쪽 필드, 아래쪽 필드 반복, 그 순서대로 | field_seq_flag는 0이어야 한다 |
7 | 프레임 반복 |
field_seq_flag는 0이어야 한다
fixed_pic_rate_within_cvs_flag는 1이어야 한다 |
8 | 출력 순서에서 위쪽 필드가 이전 아래쪽 필드와 쌍을 이룸 | field_seq_flag는 1이어야 한다 |
9 | 출력 순서에서 아래쪽 필드가 이전 위쪽 필드와 쌍을 이룸 | field_seq_flag는 1이어야 한다 |
10 | 출력 순서에서 위쪽 필드가 다음 아래쪽 필드와 쌍을 이룸 | field_seq_flag는 1이어야 한다 |
11 | 출력 순서에서 아래쪽 필드가 다음 위쪽 필드와 쌍을 이룸 | field_seq_flag는 1이어야 한다 |
방법 2: pic_struct의 HEVC 버전의 확장 버전
AVC 및 HEVC 디코더는 이미 배치되어 있으므로, 기존 옵션을 제거하지 않고 기존 pic_struct 구문을 간단히 확장하는 것이 바람직할 수 있다. 일 실시예에서, 새로운 pic_struct = 13, "프레임 반복 확장(frame repetition extension)"값 및 새로운 구문 요소인 num_frame_repetition_minus4가 추가된다. 제안된 구문의 예가 표 12와 13에 기술되어있다. pic_struct 값이 0-12인 경우, 제안된 구문이 표 D.2의 구문(부록 참조)과 동일하므로, 간단하게 하기 위하여 이 값은 생략한다.
표 12: 예시적인 화상 타이밍
SEI
메시지 구문, 방법 2
pic_timing( payloadSize ) { | 설명자 |
if( frame_field_info_present_flag ) { | |
pic_struct | u(4) |
if( pic_struct == 13) | u(4) |
num_frame_repetition_minus4 | u(4) |
source_scan_type | u(2) |
duplicate_flag | u(1) |
} | |
...(as the original) |
num _frame_repetition_ minus4 + 4는 fixed_pic_rate_within_cvs_flag가 1 일 때, 프레임이 식 E-73에 의해 주어진 DpbOutputElementalInterval [n]과 같은 프레임 새로고침 간격으로 num_frame_repetition_minus4 + 4번 연속적으로 디스플레이에 표시되어야 함을 나타낸다.
표 13: 수정된
pic
_
struct의
예, 방법 2
값 | 지시된 화상 디스플레이 | 제한 |
0-12 | 표 D.2와 동일 | 표 D.2와 동일 |
13 | 프레임 반복 확장 |
field_seq_flag는 0이어야 한다
fixed_pic_rate_within_cvs_flag는 1이어야 한다 |
HEVC에서, 매개변수 frame_field_info_present_flag는 비디오 사용성 정보(VUI)에 존재하지만, 구문 요소 pic_struct, source_scan_type 및 duplicate_flag는 pic_timing() SEI 메시지에 있다. 일 실시예에서, frame_field_info_present_flag와 함께, 모든 관련된 구문 요소를 VUI로 이동하는 것이 제안된다. 제안된 구문의 예는 표 14에 나타난 바와 같다.
표 14: 수정된
pic
_
struct
구문 요소를 지원하는 예시적인
VUI
매개변수 구문
vui_parameters( ) { | 설명자 |
... | u(1) |
field_seq_flag | u(1) |
frame_field_info_present_flag | u(1) |
if( frame_field_info_present_flag ) { | |
pic_struct | u(4) |
source_scan_type | u(2) |
duplicate_flag | u(1) |
} | |
... | |
} |
셔터 각도 정보의 대체 시그널링
가변 프레임 레이트를 다룰 때, 원하는 프레임 레이트와 원하는 셔터 각도를 모두 식별하는 것이 바람직하다. 이전의 비디오 코딩 표준에서, "비디오 사용성 정보"(VUI)는 화면 비율, 원색, 크로마 서브 샘플링 등과 같은 비디오 콘텐츠의 적절한 디스플레이를 위한 필수 정보를 제공한다. VUI는 또한 fixed pic rate가 1로 설정된 경우 프레임 레이트 정보도 제공할 수 있지만, 셔터 각도 정보는 지원되지 않는다. 실시예는 상이한 시간 레이어에 대해 상이한 셔터 각도가 사용될 수 있도록 허용하고, 디코더는 디스플레이 상의 최종 모습을 개선하기 위해 셔터 각도 정보를 사용할 수 있다.
예를 들어, HEVC는 기본적으로 프레임 드롭 기술을 사용하여 더 높은 프레임 레이트에서 더 낮은 프레임 레이트로 이동하는 시간적 서브레이어를 지원한다. 이것의 가장 큰 문제는 각 프레임이 드롭될 때마다 효과적인 셔터 각도가 감소한다는 것이다. 예를 들어, 60fps는 120fps 비디오에서 하나 걸러 하나의 프레임을 드롭하여 유도될 수 있다. 30fps는 4개의 프레임 중 3개를 드롭하여 얻을 수 있다. 24fps는 5개의 프레임 중 4개를 드롭하여 얻을 수 있다. 120Hz의 전체 360도 셔터를 가정하면, 단순한 프레임 드롭으로 60fps, 30fps 및 24fps의 셔터 각도는 각각 180, 90, 72도이다[3]. 경험에 따르면 180도 미만의 셔터 각도는 일반적으로 허용되지 않으며, 특히 프레임 레이트가 50Hz 미만일 때 그러하다. 셔터 각도 정보를 제공함으로써, 예를 들어, 디스플레이가 각 시간 레이어에 대해 감소된 셔터 각도를 갖는 120Hz 비디오로부터 영화 효과를 생성하는 것이 바람직하다면, 스마트 기술을 적용하여 최종 모습을 개선할 수 있다.
다른 예에서, 동일한 셔터 각도를 갖는 상이한 시간 레이어(즉, 120fps 비트스트림 내의 60fps 서브 비트스트림)을 지원하기를 원할 수 있다. 그러면 가장 큰 문제는 120fps 비디오를 120Hz로 디스플레이할 때, 짝수/홀수 프레임이 상이한 유효 셔터 각도를 갖는다는 점이다. 디스플레이에 관련 정보가 있으면, 스마트 기술을 적용하여 최종 모양을 개선할 수 있다. 제안된 구문의 예가 표 15에 나타나 있으며, HEVC의 E.2.1 VUI 매개변수 구문 표(참고문헌 [1])는 언급된 바와 같이 셔터 각도 정보를 지원하도록 수정되었다. 다른 실시예에서, shutter_angle 구문을 절대 각도로 표현하는 대신, 셔터 속도에 대한 프레임 레이트의 비율로 대안적으로 표현할 수 있음을 유의한다(식 (1) 참조).
표 15: 셔터 각도를 지원하는 예시적인
VUI
매개변수 구문
vui_parameters( ) { | 설명자 |
... | |
vui_timing_info_present_flag | u(1) |
if( vui_timing_info_present_flag ) { | |
vui_num_units_in_tick | u(32) |
vui_time_scale | u(32) |
vui_poc_proportional_to_timing_flag | u(1) |
if( vui_poc_proportional_to_timing_flag ) | |
vui_num_ticks_poc_diff_one_minus1 | ue(v) |
vui_hrd_parameters_present_flag | u(1) |
if( vui_hrd_parameters_present_flag ) | |
hrd_parameters( 1, sps_max_sub_layers_minus1 ) | |
} | |
vui_shutter_angle_info_present_flag | u(1) |
if( vui_shutter_angles_info_present_flag ) { | |
fixed_shutter_angle_within_cvs_flag | u(1) |
if(fixed_shutter_angle_with_cvs_flag ) | |
fixed_shutter_angle | u(9) |
else { | |
for( i = 0; i <= sps_max_sub_layers_minus1; i++ ) { | |
sub_layer_shutter_angle[ i ] | u(9) |
} | |
} | |
... | |
} |
vui _shutter_angle_info_present_flag가 1인 것은 vui_parameters( ) 구문 구조에 셔터 각도 정보가 존재함을 지정한다. vui_shutter_angle_info_present_flag 가 0인 것은 vui_parameters( ) 구문 구조에 셔터 각도 정보가 존재하지 않음을 지정한다.
fixed_shutter_angle_within_ cvs _flag 가 1인 것은 셔터 각도 정보가 CVS 내의 모든시간 서브레이어에 대하여 동일한 것을 지정한다. fixed_shutter_angle_within_cvs_flag 가 0인 것은 셔터 각도 정보가 CVS 내의 모든시간 서브레이어에 대하여 동일하지 않을 수 있다는 것을 지정한다.
fixed_shutter_angle 은 CVS내의 셔터 각도가 몇 도인지 지정한다. fixed_shutter_angle의 값은 0 내지 360의 범위 내이다.
sub_layer_shutter_angle[ i ] 은 HighestTid가 i일 때 셔터 각도가 몇 도인지 지정한다. sub_layer_shutter_angle[ i ] 의 값은 0 내지 360의 범위 내이다.
코딩된 비디오 시퀀스(CVS) 내의 점진적인 프레임 레이트 업데이트
실험에 따르면 HDR 디스플레이에 표시되는 HDR 콘텐츠의 경우, 100 니트 디스플레이에서 표준 동적 범위(SDR) 재생과 동일한 모션 저더를 감지하기 위해서는, 콘텐츠의 밝기에 기반하여 프레임 레이트가 증가되어야 한다. 대부분의 표준(AVC, HEVC, VVC 등)에서 비디오 프레임 레이트는, 예를 들어, 이하의 표 16에 나타난 바와 같이(참고문헌 [1]의 섹션 E.2.1 참조), vui _time_scale, vui_num_units_in_tick 및 elemental_duration_in_ tc _ minus1 [temporal_id_max] 구문 요소를 사용하여 VUI(SPS에 포함됨) 내에 표시될 수 있다.
표 16:
HEVC
내의 프레임
레이트를
나타내기 위한
VUI
구문 요소
vui_parameters( ) { | 설명자 |
... | |
vui_timing_info_present_flag | u(1) |
if( vui_timing_info_present_flag ) { | |
vui_num_units_in_tick | u(32) |
vui _time_scale | u(32) |
vui_poc_proportional_to_timing_flag | u(1) |
if( vui_poc_proportional_to_timing_flag ) | |
vui_num_ticks_poc_diff_one_minus1 | ue(v) |
vui_hrd_parameters_present_flag | u(1) |
if( vui_hrd_parameters_present_flag ) | |
hrd_parameters( 1, sps_max_sub_layers_minus1 ) | |
} | |
... |
참고문헌 [1]에서 논의된 바와 같이,
변수 ClockTick은 다음과 같이 유도되며 클록 틱으로 지칭된다.
ClockTick = vui_num_units_in_tick ÷ vui_time_scale
picture_duration= ClockTick*(elemental_duration_in_tc_minus1[ i ] + 1 )
frame_rate = 1/pic_duration
그러나, 프레임 레이트는 특정 시점, 예를 들어, HEVC에서, 인트라 랜덤 액세스 포인트(IRAP) 프레임에서만 또는 새로운 CVS가 시작될 때에만 변경될 수 있다. HDR 재생의 경우, 페이드 인 또는 페이드 아웃 케이스가 있을 때, 화상의 밝기가 프레임 별로 변경되므로, 모든 화상에 대해 프레임 레이트 또는 화상 지속시간을 변경해야 할 수 있다. 임의의 시점(프레임 단위로도)에서 프레임 레이트 또는 화상 지속시간 새로고침을 허용하기 위하여, 일 실시예에서, 표 17에 나타낸 바와 같이 "점진적 새로고침 레이트"에 대한 새로운 SEI 메시지가 제안된다.
표 17:
SEI
메시지 내에서 점진적
새로고침
프레임
레이트를
지원하기 위한 예시적인 구문
gradual_refresh_rate( payloadSize ) { | 설명자 |
num _units_in_tick | u(32) |
time_scale | u(32) |
} |
새로운 구문 num _units_in_ tick 의 정의는 vui_num_units_in_tick와 동일하고, time_scale 의 정의는 vui_time_scale와 동일하다.
num _units_in_tick는 클록 틱 카운터의 한 증분(클록 틱으로 지칭됨)에 해당하는 주파수 time_scale Hz에서 작동하는 클록의 시간 단위 수이다. num_units_in_tick는 0보다 커야 한다. 초 단위의 클록 틱은 time_scale로 나눈 num_units_in_tick의 몫과 같다. 예를 들어, 비디오 신호의 화상 레이트가 25Hz 일 때, time_scale은 27,000,000일 수 있고, num_units_in_tick는 1,080,000일 수 있으며, 결과적으로 클록 틱은 0.04초가 될 수 있다.
time_scale 은 1초에 지나가는 시간 단위의 수이다. 예를 들어, 27MHz 클록을 사용하여 시간을 측정하는 시간 좌표계는 27,000,000의 time_scale을 갖는다. time_scale의 값은 0보다 커야 한다.
gradual_refresh_rate SEI 메시지를 사용하는 화상의 화상 지속시간은 다음과 같이 정의된다.
picture_duration = num_units_in_tick ÷ time_scale
SEI 메시지를 통한 셔터 각도 정보 시그널링
앞서 논의된 바와 같이, 표 15는 셔터 각도를 지원하는 예시적인 VUI 매개변수 구문을 제공한다. 예로서, 제한 없이, 표 18은 동일한 구문 요소를 나열하지만, 이제 이는 셔터 각도 정보에 대한 SEI 메시지의 일부이다. SEI 메시지는 예로서만 사용되며 유사한 메시지가 SPS(Sequence Parameter Set), PPS(Picture Parameter Set), Slice 또는 Tile Group 헤더 등과 같은 고수준 구문의 다른 레이어에서 구성될 수 있다.
표 18: 셔터 각도 정보를 위한 예시적인
SEI
메시지 구문
shutter_angle_information( payloadSize ) { | 설명자 |
fixed_shutter_angle_within_cvs_flag | u(1) |
if(fixed_shutter_angle_within_cvs_flag) | |
fixed_shutter_angle | u(9) |
else { | |
for( i = 0; i <= sps_max_sub_layers_minus1; i++ ) | |
sub_layer_shutter_angle[ i ] | u(9) |
} | |
} |
셔터 각도는 일반적으로 0 내지 360도의 각도로 표현된다. 예를 들어, 셔터 각도가 180도이면 노출 지속시간이 프레임 지속시간의 ½임을 나타낸다. 셔터 각도는 shutter_angle = frame_rate * 360 * shutter_speed와 같이 표현될 수 있으며, 여기에서 shutter_speed는 노출 지속시간이고 frame_rate는 프레임 지속시간의 역수이다. 주어진 시간적 서브레이어 Tid에 대한 frame_rate는 num_units_in_tick, time_scale, elemental_duration_in_tc_minus1 [Tid]로 표시될 수 있다. 예를 들어, fixed_pic_rate_within_cvs_flag [Tid]가 1과 같을 때:
frame_rate=time_scale/(num_units_in_tick *(elemental_duration_in_tc_minus1[Tid]+1))
이다.
일부 실시예에서, 셔터 각도의 값(예를 들어, fixed_shutter_angle) 은 정수가 아닐 수 있으며, 예를 들어 135.75도일 수 있다. 정밀도를 높이기 위하여, 표 21에서, u(9)(부호없는 9비트)를 u(16) 또는 다른 적절한 비트 깊이(예를 들어, 12비트, 14비트 또는 16비트 이상)로 대체할 수 있다.
일부 실시예에서, "클록 틱"의 관점에서 셔터 각도 정보를 표현하는 것이 유익할 수 있다. VVC에서, 변수 ClockTick은 다음과 같이 유도된다:
ClockTick = num_units_in_tick ÷ time_scale (8)
그런 다음, 프레임 지속시간과 노출 지속시간을 클록 틱의 배수 또는 분수로 표현할 수 있다.
exposure_duration = fN*ClockTick , (9)
frame_duration = fM*ClockTick (10)
그러면
shutter_angle frame_rate * 360*shutter_speed =
=(1/frame_duration)*360*exposure_duration = (11)
=(exposure_duration*360)/frame_duration =
=(fN*ClockTick*360)/(fM*ClockTick ) =
=(fN/fM ) * 360 =(Numerator/Denominator) * 360이고,
여기에서 분자와 분모는 fN/fM 비율에 가까운 정수이다.
표 19는 식 (11)에 의해 나타나는 예시적인 SEI 메시지이다. 이 예에서, 실제 카메라의 경우 셔터 각도는 0보다 커야 한다.
표 19: 클록
틱에
기반한
셔터 각도 정보에 대한 예시적인
SEI
메시지
shutter_angle_information( payloadSize ) { | 설명자 |
fixed_shutter_angle_within_cvs_flag | u(1) |
if(fixed_shutter_angle_within_cvs_flag) { | |
fixed_shutter_angle_numer_minus1 | u(16) |
fixed_shutter_angle_denom_minus1 | u(16) |
} | |
else { | |
for( i = 0; i <= sps_max_sub_layers_minus1; i++ ) { | |
sub_layer_shutter_angle_numer_minus1[ i ] | u(16) |
sub_layer_shutter_angle_denom_minus1[ i ] | u(16) |
} | |
} |
앞서 논의한 바와 같이, 셔터 각도 정밀도를 위하여 u(16)(부호없는 16 비트)를 사용하는 것이 예로 설명되며 이는 360/216 = 0.0055의 정밀도에 해당한다. 실제 응용 프로그램에 따라 정밀도를 조정할 수 있다. 예를 들어, u(8)을 사용하면 정밀도는 360/28 = 1.4063이다.
참고 - 셔터 각도는 0보다 크지만 360도보다 작거나 같은 각도로 표현된다. 예를 들어, 셔터 각도가 180도이면 노출 지속시간이 프레임 지속시간의 ½임을 나타낸다.
fixed_shutter_angle_within_ cvs _flag 이 1인 것은 셔터 각도 정보가 CVS 내의 모든 시간 서브레이어에 대하여 동일한 것을 지정한다. fixed_shutter_angle_within_cvs_flag 이 0인 것은 셔터 각도 정보가 CVS 내의 모든 시간 서브레이어에 대하여 동일하지 않을 수 있는 것을 지정한다.
fixed_shutter_angle_ numer _ minus1 + 1은 셔터 각도 값을 유도하는 데 사용되는 분자를 지정한다. fixed_shutter_angle_numer_minus1 값은 0 내지 65535의 범위에 있어야 한다.
fixed_shutter_angle_ demom _ minus1 + 1은 셔터 각도 값을 유도하는 데 사용되는 분모를 지정한다. fixed_shutter_angle_demom_minus1 값은 0 내지 65535의 범위에 있어야 한다.
fixed_shutter_angle_numer_minus1 값은 fixed_shutter_angle_demom_minus1 값 이하이어야 한다.
각도의 변수 shutterAngle은 다음과 같이 유도된다:
shutterAngle = 360*(fixed_shutter_angle_numer_minus1+1) ÷ (fixed_shutter_angle_demom_minus1 + 1))
sub_layer_shutter_angle_ numer _ minus1 [ i ] + 1은 HighestTid가 i일 때 셔터 각도 값을 유도하는 데 사용되는 분자를 지정한다. sub_layer_shutter_angle_numer_minus1[ i ] 값은 0 내지 65535의 범위에 있어야 한다.
sub_layer_shutter_angle_ demom _ minus1 [ i ] + 1은 HighestTid가 i일 때 셔터 각도 값을 유도하는 데 사용되는 분모를 지정한다. sub_layer_shutter_angle_demom_minus1[ i ] 값은 0 내지 65535의 범위에 있어야 한다.
sub_layer_shutter_angle_numer_minus1[ i ] 값은 sub_layer_shutter_angle_denom_minus1[ i ] 값 이하이어야 한다.
각도의 변수 subLayerShutterAngle[ i ] 은 다음과 같이 유도된다:
subLayerShutterAngle[ i ] = 360 *
(sub_layer_shutter_angle_numer_minus1[ i ] + 1) ÷ sub_layer_shutter_angle_demom_minus1[ i ] + 1)
다른 실시예에서, 프레임 지속시간(예를 들어, frame_duration)은 일부 다른 수단에 의해 지정된다. 예를 들어, DVB/ATSC에서, fixed_pic_rate_within_cvs_flag[ Tid ]이가 1일 때:
frame_rate=time_scale/(num_units_in_tick*(elemental_duration_in_tc_minus1[Tid]+1)),
frame_duration = 1/frame_rate
이다.
표 19 및 일부 후속 표의 구문은 셔터 각도가 항상 0보다 클 것이라고 가정한다. 그러나 콘텐츠가 모션 블러 없이 표시되어야 하는 창의적인 의도를 나타내기 위하여 셔터 각도 = 0이 사용될 수 있다. 이는 움직이는 그래픽, 애니메이션, CGI 텍스처 및 매트 화면 등의 경우가 될 수 있다. 예를 들어 시그널링 셔터 각도 = 0은 트랜스코더에서 모드 결정에 유용할 수 있으며(예를 들어, 가장자리를 보존하는 트랜스코딩 모드 선택) CTA 인터페이스 또는 3GPP 인터페이스를 통해 셔터 각도 메타데이터를 수신하는 디스플레이에서도 마찬가지이다. 예를 들어, 셔터 각도 = 0은 노이즈 제거, 프레임 보간 등과 같은 어떤 동작 처리도 수행하지 않아야 하는 디스플레이를 표시하는 데 사용될 수 있다. 이러한 실시예에서, 구문 요소 fixed_shutter_angle_numer_minus1 및 sub_layer_shutter_angle_ numer _ minus1 [ i ] 은 구문 요소 fixed_shutter_angle_ numer 및 sub_layer_shutter_angle_ numer[ i ]로 대체될 수 있으며, 여기에서
fixed_shutter_angle_ numer 은 셔터 각도 값을 유도하는 데 사용되는 분자를 지정한다. fixed_shutter_angle_numer 값은 0 내지 65535의 범위에 있어야 한다.
sub_layer_shutter_angle_ numer [ i ] 은 HighestTid가 i일 때 셔터 각도 값을 유도하는 데 사용되는 분자를 지정한다. sub_layer_shutter_angle_numer[ i ] 값은 0 내지 65535의 범위에 있어야 한다.
다른 실시예에서, fixed_shutter_angle_denom_minus1 및 sub_layer_shutter_angle_denom_minus1[ i ]이 또한 구문 요소 fixed_shutter_angle_denom 및 sub_layer_shutter_angle_denom[ i ]로 대체될 수 있다.
일 실시예에서, 표 20에 나타난 바와 같이, VVC에서 general_hrd_parameters_present_flag를 1로 설정하여 SPS에서 정의된 num_units_in_tick 및 time_scale 구문을 재사용할 수 있다. 이 시나리오에서, SEI 메시지는 노출 지속시간 SEI 메시지로 재명명될 수 있다.
표 20: 노출 지속시간
시그널링을
위한 예시적인
SEI
메시지
exposure_duration_information( payloadSize ) { | 설명자 |
fixed_exposure_duration_within_cvs_flag | u(1) |
if(fixed_shutter_angle_within_cvs_flag) { | |
fixed_exposure_duration_numer_minus1 | u(16) |
fixed_exposure_duration_denom_minus1 | u(16) |
} | |
else { | |
for( i = 0; i <= sps_max_sub_layers_minus1; i++ ) { | |
sub_layer_exposure_duration_numer_minus1[ i ] | u(16) |
sub_layer_exposure_duration_denom_minus1[ i ] | u(16) |
} | |
} |
fixed_exposure_duration_within_ cvs _flag 가 1인 것은 유효 노출 지속시간 값이 CVS 내의 모든 시간 서브레이어에 대하여 동일한 것을 지정한다. fixed_exposure_duration_within_cvs_flag 가 0인 것은 유효 노출 지속시간 값이 CVS 내의 모든 시간 서브레이어에 대하여 동일하지 않을 수 있는 것을 지정한다.
fixed_exposure_duration_ numer _ minus1 + 1은 노출 지속시간 값을 유도하는 데 사용되는 분자를 지정한다. fixed_exposure_duration_numer_minus1 값은 0 내지 65535의 범위에 있어야 한다.
fixed_exposure_duration_ demom _ minus1 + 1은 노출 지속시간 값을 유도하는 데 사용되는 분모를 지정한다. fixed_exposure_duration_demom_minus1 값은 0 내지 65535의 범위에 있어야 한다.
fixed_exposure_during_numer_minus1 값은 fixed_exposure_duration_demom_minus1 값 이하이어야 한다.
변수 fixedExposureDuration는 다음과 같이 유도된다:
fixedExposureDuration =( fixed_exposure_duration_numer_minus1 + 1 ) ÷ ( fixed_exposure_duration_demom_minus1 + 1 ) * ClockTicks
sub_layer_exposure_duration_ numer _ minus1 [ i ] + 1은 HighestTid가 i일 때 노출 지속시간 값을 유도하는 데 사용되는 분자를 지정한다. sub_layer_exposure_duration_numer_minus1[ i ] 값은 0 내지 65535의 범위에 있어야 한다.
sub_layer_exposure_duration_ demom _ minus1 [ i ] +1은 HighestTid가 i일 때 노출 지속시간 값을 유도하는 데 사용되는 분모를 지정한다. sub_layer_exposure_duration_demom_minus1[ i ] 값은 0 내지 65535의 범위에 있어야 한다.
sub_layer_exposure_duration_numer_minus1[ i ] 값은 sub_layer_exposure_duration_demom_minus1[ i ] 값 이하이어야 한다.
i와 같은 HigestTid에 대한 변수 subLayerExposureDuration[ i ]는 다음과 같이 유도된다:
subLayerExposureDuration[i]=(sub_layer_exposure_duration_numer_minus1[i]+1)÷(sub_layer_exposure_duration_demom_minus1[i]+1)*ClockTicks
다른 실시예에서, 표 21에 나타난 바와 같이, 구문 요소 expo_num_units_in_tick 및 expo_time_scale에 의하여 명시적으로 clockTick을 정의할 수 있다. 여기에서 장점은 이전 실시예와 같이 VVC에서 general_hrd_parameters_present_flag가 1로 설정되었는지 여부에 의존하지 않는다는 것이며, 그러면
clockTick = expo_num_units_in_tick ÷ expo_time_scale (12)
이다.
표 21: 노출 시간
시그널링을
위한 예시적인
SEI
메시지
exposure_duration_information( payloadSize ) { | 설명자 |
expo_num_units_in_tick | u(32) |
expo_time_scale | u(32) |
fixed_exposure_duration_within_cvs_flag | u(1) |
if(!fixed_exposure_duration_within_cvs_flag) | |
for( i = 0; i <= sps_max_sub_layers_minus1; i++ ) { | |
sub_layer_exposure_duration_numer_minus1[ i ] | u(16) |
sub_layer_exposure_duration_denom_minus1[ i ] | u(16) |
} | |
} |
expo_ num _units_in_tick는 클록 틱 카운터의 한 증분(클록 틱으로 지칭됨)에 해당하는 주파수 time_scale Hz에서 작동하는 클록의 시간 단위 수이다. expo_num_units_in_tick는 0보다 커야 한다. 변수 clockTick에 의해 정의된 초 단위의 클록 틱은 expo_num_units_in_tick를 expo_time_scale로 나눈 몫과 같다.
expo_time_scale은 1초에 지나가는 시간 단위의 수이다.
clockTick = expo_num_units_in_tick ÷ expo_time_scale
참고 : 두 가지 구문 요소 expo_num_units_in_tick 및 expo_time_scale은 노출 지속시간을 측정하기 위해 정의된다.
num_units_in_tick 및 time_scale이 존재할 때 clockTick이 ClockTick 이하이어야 한다는 것은 비트스트림 적합성을 위한 요구 사항이다.
fixed_exposure_duration_within_ cvs _flag 가 1인 것은 유효 노출 지속시간 값이 CVS 내의 모든 시간 서브레이어에 대하여 동일한 것을 지정한다. fixed_exposure_duration_within_cvs_flag 가 0인 것은 유효 노출 지속시간 값이 CVS 내의 모든 시간 서브레이어에 대하여 동일하지 않을 수 있는 것을 지정한다. fixed_exposure_duration_within_cvs_flag 가 1일 때, 변수 fixedExposureDuration는 clockTick과 동일하게 설정된다.
sub_layer_exposure_duration_ numer _ minus1 [ i ] + 1은 HighestTid가 i일 때 노출 지속시간 값을 유도하는 데 사용되는 분자를 지정한다. sub_layer_exposure_duration_numer_minus1[ i ] 값은 0 내지 65535의 범위에 있어야 한다.
sub_layer_exposure_duration_ demom _ minus1 [ i ] + 1은 HighestTid가 i일 때 노출 지속시간 값을 유도하는 데 사용되는 분모를 지정한다. sub_layer_exposure_duration_demom_minus1[ i ] 값은 0 내지 65535의 범위에 있어야 한다.
sub_layer_exposure_duration_numer_minus1[ i ] 값은 sub_layer_exposure_duration_demom_minus1[ i ] 값 이하이어야 한다.
i와 같은 HigestTid에 대한 변수 subLayerExposureDuration[ i ]는 다음과 같이 유도된다:
subLayerExposureDuration[i]=(sub_layer_exposure_duration_numer_minus1[i]+1)÷(sub_layer_exposure_duration_denom_minus1[i]+1)*clockTick.
먼저 논의된 바와 같이, 구문 매개변수 sub_layer_exposure_duration_numer_minus1[ i ] 및 sub_layer_exposure_duration_denom_minus1[ i ]는 sub_layer_exposure_duration_numer[ i ] 및 sub_layer_exposure_duration_denom[ i ]로 대체될 수 있다.
다른 실시예에서, 표 22에 나타난 바와 같이, 매개변수 ShutterInterval(즉, 노출 지속시간)을 구문 요소 sii_num_units_in_shutter_interval 및 sii_time_scale에 의해 정의할 수 있으며, 여기에서
ShutterInterval=sii_num_units_in_shutter_interval÷sii_time_scale (13)
이다.
표 22: 노출 지속시간(셔터 간격 정보)
시그널링을
위한 예시적인
SEI
메시지
shutter_interval_information( payloadSize ) { | 설명자 |
sii_num_units_in_shutter_interval | u(32) |
sii _time_scale | u(32) |
fixed_shutter_interval_within_cvs_flag | u(1) |
if( !fixed_shutter_interval_within_cvs_flag ) | |
for( i = 0; i <= sps_max_sub_layers_minus1; i++ ) { | |
sub_layer_shutter_interval_numer[ i ] | u(16) |
sub_layer_shutter_interval_denom[ i ] | u(16) |
} |
셔터 간격 정보
SEI
메시지 의미
셔터 간격 정보 SEI 메시지는 인코딩 및 디스플레이 이전의 연관된 비디오 콘텐츠에 대한 셔터 간격을 나타낸다. 예를 들어, 카메라 캡처 콘텐츠의 경우, 이미지 센서가 화상을 생성하기 위해 노출된 시간이다.
sii _ num _units_in_shutter_interval은 셔터 클록 틱 카운터의 한 증분에 해당하는 주파수 sii_time_scale Hz에서 작동하는 클록의 시간 단위 수를 지정한다. 변수 ShutterInterval로 정의되는 초 단위의 셔터 간격은 sii_num_units_in_shutter_interval을 sii_time_scale로 나눈 몫과 같다. 예를 들어, ShutterInterval이 0.04 초일 때, sii_time_scale은 27,000,000이고 sii_num_units_in_shutter_interval은 1,080,000일 수 있다.
sii _time_scale은 1초에 지나가는 시간 단위 수를 지정한다. 예를 들어, 27MHz 클록을 사용하여 시간을 측정하는 시간 좌표계의 sii_time_scale은 27,000,000이다.
sii_time_scale의 값이 0보다 클 때, ShutterInterval의 값은 다음과 같이 지정된다:
ShutterInterval = sii_num_units_in_shutter_interval ÷ sii_time_scale
그렇지 않으면(sii_time_scale의 값이 0), ShutterInterval은 알 수 없거나 지정되지 않은 것으로 해석되어야 한다.
참고 1 - ShutterInterval 값이 0인 것은 연관된 비디오 콘텐츠가 화면 캡처 콘텐츠, 컴퓨터 생성 콘텐츠 또는 기타 비 카메라 캡처 콘텐츠가 포함되어 있음을 나타낼 수 있다.
참고 2 - 코딩된 화상레이트의 역수 값, 코딩된 화상 간격보다 큰 ShutterInterval의 값은 코딩된 화상 레이트가 연관된 비디오 콘텐츠가 생성된 화상 레이트보다 크다는 것을 나타낼 수 있다-예를 들어, 코딩된 화상 레이트가 120Hz이고 인코딩 및 디스플레이 이전의 연관된 비디오 콘텐츠의 화상 레이트가 60Hz일 때이다. 주어진 시간 서브레이어 Tid에 대한 코딩된 간격은 ClockTick 및 elemental_duration_in_tc_minus1[ Tid ]로 나타낼 수 있다. 예를 들어, fixed_pic_rate_within_cvs_flag[ Tid ]가 1일 때, 변수 PictureInterval[ Tid ]에 의해 정의되는, 주어진 시간 서브레이어 Tid에 대한 화상 간격은 다음과 같이 지정될 수 있다:
PictureInterval[Tid]=ClockTick*(elemental_duration_in_tc_minus1[Tid]+1)
fixed_shutter_interval_within_ cvs _flag 가 1인 것은 ShutterInterval 값이 CVS 내의 모든 시간 서브레이어에 대하여 동일한 것을 지정한다. fixed_shutter_interval_within_cvs_flag 가 0인 것은 ShutterInterval 값이 CVS 내의 모든 시간 서브레이어에 대하여 동일하지 않을 수 있는 것을 지정한다.
sub_layer_shutter_interval_ numer [ i ] 는 HighestTid가 i와 같을 때 변수 subLayerShutterInterval [i]에 의해 정의된 초 단위의 서브레이어 셔터 간격을 유도하는 데 사용되는 분자를 지정한다.
sub_layer_shutter_interval_ denom [ i ] 는 HighestTid가 i와 같을 때 변수 subLayerShutterInterval [i]에 의해 정의된 초 단위의 서브레이어 셔터 간격을 유도하는 데 사용되는 분모를 지정한다.
i와 같은 HigestTid에 대한 subLayerShutterInterval[ i ] 값은 다음과 같이 유도된다. fixed_shutter_interval_within_cvs_flag 값이 0이고 sub_layer_shutter_interval_denom[ i ] 값이 0보다 클 때:
subLayerShutterInterval[i] = ShutterInterval * sub_layer_shutter_interval_numer[i] ÷ sub_layer_shutter_interval_denom[i]
그렇지 않으면(sub_layer_shutter_interval_denom[i] 값이 0), subLayerShutterInterval[ i ]는 알 수 없거나 지정되지 않은 것으로 해석되어야 한다. fixed_shutter_interval_within_cvs_flag 값이 0이 아닐 때,
subLayerShutterInterval[ i ] = ShutterInterval
대안적인 실시예에서, 서브레이어 셔터 간격을 시그널링하기 위하여 분자와 분모를 사용하는 대신, 단일 값을 사용한다. 이러한 구문의 예가 표 23에 나타나 있다.
표 23: 셔터 간격
시그널링을
위한 예시적인
SEI
메시지
shutter_interval_information( payloadSize ) { | 설명자 |
sii_num_units_in_shutter_interval | u(32) |
sii _time_scale | u(32) |
fixed_shutter_interval_within_cvs_flag | u(1) |
if( !fixed_shutter_interval_within_cvs_flag ) | |
for( i = 0; i <= sps_max_sub_layers_minus1; i++ ) { | |
sub_layer_num_units_in_shutter_interval[ i ] | u(32) |
} | |
} |
셔터 간격 정보
SEI
메시지 의미
셔터 간격 정보 SEI 메시지는 인코딩 및 디스플레이 이전의 연관된 비디오 콘텐츠에 대한 셔터 간격을 나타낸다. 예를 들어, 카메라 캡처 콘텐츠의 경우, 이미지 센서가 화상을 생성하기 위해 노출된 시간이다.
sii _ num _units_in_shutter 는 셔터 클록 틱 카운터의 한 증분에 해당하는 주파수 sii_time_scale Hz에서 작동하는 클록의 시간 단위 수를 지정한다. 변수 ShutterInterval로 정의되는 초 단위의 셔터 간격은 sii_num_units_in_shutter_interval을 sii_time_scale로 나눈 몫과 같다. 예를 들어, ShutterInterval이 0.04 초일 때, sii_time_scale은 27,000,000이고 sii_num_units_in_shutter_interval은 1,080,000일 수 있다.
sii _time_scale은 1초에 지나가는 시간 단위 수를 지정한다. 예를 들어, 27MHz 클록을 사용하여 시간을 측정하는 시간 좌표계의 sii_time_scale은 27,000,000이다.
sii_time_scale의 값이 0보다 클 때, ShutterInterval의 값은 다음과 같이 지정된다:
ShutterInterval = sii_num_units_in_shutter_interval ÷ sii_time_scale
그렇지 않으면(sii_time_scale의 값이 0), ShutterInterval은 알 수 없거나 지정되지 않은 것으로 해석되어야 한다.
참고 1 - ShutterInterval 값이 0인 것은 연관된 비디오 콘텐츠가 화면 캡처 콘텐츠, 컴퓨터 생성 콘텐츠 또는 기타 비 카메라 캡처 콘텐츠가 포함되어 있음을 나타낼 수 있다.
참고 2 - 코딩된 화상레이트의 역수 값, 코딩된 화상 간격보다 큰 ShutterInterval의 값은 코딩된 화상 레이트가 연관된 비디오 콘텐츠가 생성된 화상 레이트보다 크다는 것을 나타낼 수 있다 -예를 들어, 코딩된 화상 레이트가 120Hz이고 인코딩 및 디스플레이 이전의 연관된 비디오 콘텐츠의 화상 레이트가 60Hz일 때이다. 주어진 시간 서브레이어 Tid에 대한 코딩된 화상 간격은 ClockTick 및 elemental_duration_in_tc_minus1[ Tid ]로 나타낼 수 있다. 예를 들어, fixed_pic_rate_within_cvs_flag[ Tid ]가 1일 때, 변수 PictureInterval[ Tid ]에 의해 정의되는, 주어진 시간 서브레이어 Tid에 대한 화상 간격은 다음과 같이 지정될 수 있다:
PictureInterval[Tid]=ClockTick*(elemental_duration_in_tc_minus1[Tid]+1)
fixed_shutter_interval_within_ cvs _flag 가 1인 것은 ShutterInterval 값이 CVS 내의 모든 시간 서브레이어에 대하여 동일한 것을 지정한다. fixed_shutter_interval_within_cvs_flag 가 0인 것은 ShutterInterval 값이 CVS 내의 모든 시간 서브레이어에 대하여 동일하지 않을 수 있는 것을 지정한다.
sub_layer_ num _units_in_shutter_interval[ i ] 는 셔터 클록 틱 카운터의 한 증분에 해당하는 주파수 sii_time_scale Hz에서 작동하는 클록의 시간 단위 수이다. 변수 subLayerShutterInterval[ i ]에 의해 정의된 초 단위의 서브레이어 셔터 간격은, HighestTid가 i일 때, sub_layer_num_units_in_shutter_interval[ i ]를 sii_time_scale 로 나눈 몫과 같다.
fixed_shutter_interval_within_cvs_flag의 값이 0이고 sii_time_scale 값이 0보다 클 때, subLayerShutterInterval[ i ]의 값은 다음과 같이 지정된다:
subLayerShutterInterval[ i ] = sub_layer_num_units_in_shutter_interval[ i ] ÷ sii_time_scale
그렇지 않으면(sii_time_scale 값이 0), subLayerShutterInterval[ i ]은 알 수 없거나 지정되지 않은 것으로 해석되어야 한다. fixed_shutter_interval_within_cvs_flag 값이 0이 아니면,
subLayerShutterInterval[ i ] = ShutterInterval
이다.
표 24는 셔터 각도 또는 노출 지속시간에 관한 SEI 메시지를 제공하기 위하여 표 18 내지 23에서 논의된 가지 접근법의 요약을 제공한다.
표 24: 신호 셔터 각도 정보
시그널링을
위한
SEI
메시지 접근법 요약
표 번호 | 주요 신호 요소 및 종속성 |
18 | 셔터 각도(0 내지 360)가 명시적으로 시그널링된다. |
19 | 셔터 각도가 분자와 분모 값의 비율로 표현되며 360으로 조정된다(클록 틱 값이 암시 됨). |
20 | 노출 지속시간이 분자와 분모 값의 비율로 시그널링된다(클록 틱 값이 암시 됨). |
21 | 노출 지속시간이 분자와 분모 값의 비율로 시그널링된다; 클록 틱 값이 두 값의 비율로 명시적으로 시그널링된다. |
22 | 셔터 간격 정보가 두 값-노출의 클록 틱 단위 수 및 노출 시간 스케일-의 비율로 시그널링된다; 서브레이어 관련 노출 시간이 두 값의 비율로 시그널링된다 |
23 | 셔터 간격 정보 또는 노출 지속시간이 두 값-노출의 클록 틱 단위 수 및 노출 시간 스케일-의 비율로 시그널링된다; 서브레이어 관련 노출 시간이 각 서브레이어 내의 노출의 클록 틱 단위 수로 시그널링된다 |
가변 프레임 레이트 시그널링
2019년 8월 6일에 출원된 미국 가출원 제62/883,195호에서 논의된 바와 같이, 많은 애플리케이션에서 디코더가 가변 프레임 레이트로 재생을 지원하는 것이 바람직하다. 프레임 레이트 적응은 일반적으로 예를 들어 참고문헌 [2] 의 Annex C에 기술된 것처럼 가상 참조 디코더(HRD)에서의 동작의 일부이다. 일 실시예에서, SEI 메시징 또는 다른 수단을 통해 90kHz 클록의 함수로서 화상 프리젠테이션 시간(PPT; Picture Presentation Time)을 정의하는 구문 요소를 시그널링하는 것이 제안된다. 이는 HRD에 지정된 대로 공칭 디코더 화상 버퍼(DPB; Decoder Picture buffer) 출력 시간의 일종의 반복이지만, 이제는 MPEG-2 시스템에 지정된 대로 90kHz 클록 틱 정밀도를 사용한다. 이 SEI 메시지의 이점은 다음과 같다: a) HRD를 사용할 수 없는 경우에도, PPT SEI 메시지를 사용하여 각 프레임에 대한 타이밍을 나타낼 수 있다; b) 비트스트림 타이밍 및 시스템 타이밍의 변환을 쉽게 할 수 있다.
표 25는 MPEG-2 전송(H.222)(참고문헌 [4]) 에서 사용되는 프리젠테이션 타임스탬프(PTS; presentation time stamp) 변수의 구문과 일치하는 제안된 PPT 타이밍 메시지 구문의 예를 기술한다.
표 25: 화상
프리젠테이션
시간 메시지의 예시적인 구문
picture_presentation_time( payloadSize ) { | 설명자 |
PPT | u(33) |
} |
PPT(화상 프리젠테이션 시간)
- 프리젠테이션 시간은 다음과 같이 디코딩 시간과 관련되어야 한다. PPT는 3개의 개별 필드에 코딩된 33비트 숫자이다. 기본 스트림 n의 프리젠테이션 단위 k의 시스템 목표 디코더에서, 프리젠테이션 시간 tpn(k)을 나타낸다. PPT의 값은 시스템 클록 주파수를 300으로 나눈 주기(90kHz) 단위로 지정된다. 화상 프레젠테이션 시간은 아래 식에 따라 PPT로부터 유도되며
PPT(k) = ((system_clock_frequency x tpn(k))/300)%233
여기에서 tpn(k)는 프리젠테이션 단위 Pn(k)의 프리젠테이션 시간이다.
참고문헌
본원에 열거된 참고문헌 각각은 그 전체로서 참조로 포함된다.
[1] 고효율 비디오 코딩, H.265, 시리즈 H, 동영상 코딩, ITU,(02/2018).
[2] B. Bross, J. Chen, and S. Liu, "다용도 비디오 코딩(드래프트 5),"JVET 출력 문서, JVET-N1001, v5, 2019년 5월 14일 업로드.
[3] C. Carbonara, J. DeFilippis, M. Korpi, "고 프레임 레이트 캡처 및 프로덕션,"SMPTE 2015 연례 기술 컨퍼런스 및 전시회, 2015년 10월 26-29일.
[4] 시청각 서비스 인프라 - 전송 다중화 및 동기화, H.222.0, 시리즈 H, 동영상 및 관련 오디오 정보의 일반 코딩 : 시스템, ITU, 08/2018.
예시적인 컴퓨터 시스템 구현
본 발명의 실시예는 컴퓨터 시스템, 전자 회로 및 구성요소로 구성된 시스템, 마이크로 컨트롤러와 같은 집적 회로(IC) 디바이스, 필드 프로그래머블 게이트 어레이(FPGA), 또는 다른 구성 가능하거나 프로그래밍 가능한 논리 디바이스(PLD), 이산 시간 또는 디지털 신호 프로세서(DSP), 주문형 IC(ASIC) 및/또는 이러한 시스템, 디바이스 또는 구성요소 중 하나 이상을 포함하는 장치로 구현될 수 있다. 컴퓨터 및/또는 IC는 본원에 기술된 것과 같은 프레임 레이트 스케일러빌리티와 관련된 명령을 수행, 제어 또는 실행할 수 있다. 컴퓨터 및/또는 IC는 본원에 기술된 것과 같은 프레임 레이트 스케일러빌리티와 관련된 임의의 다양한 매개변수 또는 값을 계산할 수 있다. 이미지 및 비디오 실시예는 하드웨어, 소프트웨어, 펌웨어 및 이들의 다양한 조합으로 구현될 수 있다.
본 발명의 특정 구현은 프로세서가 본 발명의 방법을 수행하게 하는 소프트웨어 명령을 실행하는 컴퓨터 프로세서를 포함한다. 예를 들어, 디스플레이, 인코더, 셋톱 박스, 트랜스코더 등의 하나 이상의 프로세서는 프로세서가 액세스할 수 있는 프로그램 메모리에서 소프트웨어 명령을 실행함으로써 전술 한 프레임 레이트 스케일러빌리티와 관련된 방법을 구현할 수 있다. 본 발명의 실시예는 또한 프로그램 제품의 형태로 제공될 수 있다. 프로그램 제품은, 데이터 프로세서에 의해 실행될 때, 데이터 프로세서가 본 발명의 방법을 실행하게 하는 명령을 포함하는 컴퓨터 판독 가능 신호 세트를 갖는 임의의 비일시적이며 유형의 매체를 포함할 수 있다. 본 발명에 따른 프로그램 제품은 다양한 비일시적이며 유형의 형태로 존재할 수 있다. 프로그램 제품은 예를 들어 플로피 디스켓을 포함하는 자기 데이터 저장 매체, 하드 디스크 드라이브, CD ROM, DVD를 포함하는 광학 데이터 저장 매체, ROM, 플래시 RAM을 포함하는 전자 데이터 저장 매체 등과 같은 물리적 매체를 포함할 수 있다. 프로그램 제품의 컴퓨터 판독 가능 신호는 선택적으로 압축되거나 암호화될 수 있다.
구성요소(예를 들어, 소프트웨어 모듈, 프로세서, 어셈블리, 디바이스, 회로 등)가 위에서 언급된 경우, 달리 명시되지 않는 한, 해당 구성 요소에 대한 참조("수단"에 대한 참조 포함)는 본 발명에서 설명된 예시적인 실시예에서 기능을 수행하는 개시된 구조와 구조적으로 동등하지 않은 구성요소를 포함하여, 설명된 구성요소의 기능을 수행하는(예를 들어, 기능적으로 동등한) 임의의 구성요소인 그 구성요소의 등가물을 포함하는 것으로 해석되어야 한다.
등가, 확장, 대안 및 기타
프레임 레이트 스케일러빌리티와 관련된 예시적인 실시예가 설명된다. 전술한 명세서에서, 본 발명의 실시예는 구현에 따라 달라질 수 있는 수많은 특정 세부 사항을 참조하여 설명되었다. 따라서, 발명이 무엇인지 및 출원인이 발명이 되도록 의도한 것이 무엇인지에 대한 유일하고 배타적인 지표는 이 출원으로부터 발행되는 청구범위의 집합이며, 이는 후속의 정정을 포함하여 이러한 청구범위가 발행되는 특정 형태로서이다. 이러한 청구범위에 포함된 용어에 대해 본원에 명시적으로 제시된 모든 정의는 청구범위에서 사용되는 이러한 용어의 의미를 지배한다. 따라서, 청구범위에 명시적으로 언급되지 않은 제한, 요소, 특성, 특징, 이점 또는 속성은 어떠한 방식으로든 이러한 청구범위를 제한해서는 안된다. 따라서, 명세서 및 도면은 제한적인 의미가 아니라 예시적인 의미로 간주되어야 한다.
부록
이 부록은 H.265 표준의 표 D.2 및 연관된 pic_struct 관련 정보의 사본을 제공한다(참고문헌 [1]).
표 D.2-pic_struct 해석
값 | 지시된 화상 디스플레이 | 제한 |
0 | (프로그레시브) 프레임 | field_seq_flag는 0이어야 한다 |
1 | 위쪽 필드 | field_seq_flag는 1이어야 한다 |
2 | 아래쪽 필드 | field_seq_flag는 1이어야 한다 |
3 | 위쪽 필드, 아래쪽 필드, 그 순서대로 | field_seq_flag는 0이어야 한다 |
4 | 아래쪽 필드, 위쪽 필드, 그 순서대로 | field_seq_flag는 0이어야 한다 |
5 | 위쪽 필드, 아래쪽 필드, 위쪽 필드 반복, 그 순서대로 | field_seq_flag는 0이어야 한다 |
6 | 아래쪽 필드, 위쪽 필드, 아래쪽 필드 반복, 그 순서대로 | field_seq_flag는 0이어야 한다 |
7 | 프레임 더블링 | field_seq_flag는 0이어야 한다 fixed_pic_rate_within_cvs_flag는 1이어야 한다 |
8 | 프레임 트리플링 | field_seq_flag는 0이어야 한다 fixed_pic_rate_within_cvs_flag는 1이어야 한다 |
9 | 출력 순서에서 위쪽 필드가 이전 아래쪽 필드와 쌍을 이룸 | field_seq_flag는 1이어야 한다 |
10 | 출력 순서에서 아래쪽 필드가 이전 위쪽 필드와 쌍을 이룸 | field_seq_flag는 1이어야 한다 |
11 | 출력 순서에서 위쪽 필드가 다음 아래쪽 필드와 쌍을 이룸 | field_seq_flag는 1이어야 한다 |
12 | 출력 순서에서 아래쪽 필드가 다음 위쪽 필드와 쌍을 이룸 | field_seq_flag는 1이어야 한다 |
pic_struct 구문 요소의 의미
pic_struct는 화상이 프레임으로 또는 하나 이상의 필드로 디스플레이되어야 하는지를 나타내고, fixed_pic_rate_within_cvs_flag가 1 일 때, 프레임 디스플레이를 위해 식 E-73에 의해 주어진 DpbOutputElementalInterval [n]와 같은 고정 프레임 새로고침 간격을 사용하는 디스플레이에 대해 프레임 더블링 또는 트리플링 반복 주기를 나타낼 수 있다. pic_struct의 해석은 표 D.2에 지정되어 있다. 표 D.2에 열거되지 않은 pic_struct의 값은 향후 ITU-T | ISO/IEC 에서 사용하기 위해 예약되어 있으며, 표준의 이 버전을 준수하는 비트스트림에는 존재하지 않아야 한다. 디코더는 pic_struct의 예약된 값을 무시해야 한다.
존재하는 경우, pic_struct의 값이 다음 조건 중 정확히 하나가 참이 되도록 제한되어야 한다는 것이 비트스트림 적합성의 요구 사항이다:
- pic_struct의 값이 CVS의 모든 화상에 대해 0, 7 또는 8이다.
- pic_struct의 값이 CVS의 모든 화상에 대해 1, 2, 9, 10, 11 또는 12이다.
- pic_struct의 값이 CVS의 모든 화상에 대해 3, 4, 5 또는 6이다.
fixed_pic_rate_within_cvs_flag가 1일 때, pic_struct가 7인 것에 의하여 프레임 더블링이 표시되며, 이는 식 E-73에 의해 주어진 DpbOutputElementalInterval [n]과 같은 프레임 새로고침 간격으로 디스플레이에 프레임이 연속으로 두 번 디스플레이되어야 함을 나타내고, pic_struct가 8인 것에 의하여 프레임 트리플링이 표시되며, 이는 식 E-73에 의해 주어진 DpbOutputElementalInterval [n]과 같은 프레임 새로고침 간격으로 디스플레이에 프레임이 연속으로 세 번 디스플레이되어야 함을 나타낸다.
참고 3 - 프레임 더블링은, 예를 들어 50Hz 프로그레시브 스캔 디스플레이에 25Hz 프로그레시브 스캔 비디오를, 60Hz 프로그레시브 스캔 디스플레이에 30Hz 프로그레시브 스캔 비디오를 표시하는 데 사용할 수 있다. 60Hz 프로그레시브 스캔 디스플레이에서 24Hz 프로그레시브 스캔 비디오를 표시하기 위하여 프레임 더블링과 프레임 트리플링을 교차 조합으로 사용할 수 있다.
4:2:0, 4:2:2 및 4:4:4 크로마 형식에 대한 위쪽 및 아래쪽 필드에 있는 샘플의 공칭 수직 및 수평 샘플링 위치가 각각 도 D.1, 도 D.2 및 도 D.3에 도시된다.
필드에 대한 연관 표시기(pic_struct는 9 내지 12임)는 상보 패리티 필드를 프레임으로 함께 연관시키는 힌트를 제공한다. 필드의 패리티는 위쪽 또는 아래쪽일 수 있으며, 한 필드의 패리티가 위쪽이고 다른 필드의 패리티가 아래쪽이면 두 필드의 패리티가 상보적인 것으로 간주된다.
frame_field_info_present_flag가 1일 때, 표 D.2의 세 번째 열에 명시된 제약이 적용되는 것이 비트스트림 적합성의 요구 사항이다.
참고 4 - frame_field_info_present_flag가 0일 때, 많은 경우 디폴트 값이 다른 방법으로 추론되거나 표시될 수 있다. 화상의 의도된 디스플레이 유형에 대한 다른 표시가 없는 경우, 디코더는 frame_field_info_present_flag가 0 일 때 pic_struct의 값이 0인 것으로 추론하여야 한다.
Claims (26)
- 인코딩된 비디오 스트림 구조가 저장된 비일시적 프로세서 판독 가능한 매체에 있어서, 상기 인코딩된 비디오 스트림 구조는:
비디오 화상 시퀀스의 인코딩을 포함하는 인코딩된 화상 섹션; 및
상기 인코딩된 화상 섹션 내의 모든 시간 서브레이어에 대하여 셔터 각도 정보가 고정되어 있는지 여부를 나타내는 제1 셔터 각도 플래그의 인코딩을 포함하는 시그널링 섹션을 포함하고,
상기 제1 셔터 각도 플래그가 상기 셔터 각도 정보가 고정되어 있음을 나타내면, 상기 시그널링 섹션은 고정된 셔터 각도 값을 사용하여 상기 인코딩된 화상 섹션 내의 모든 상기 시간 서브레이어에 대하여 비디오 화상 시퀀스의 디코딩된 버전을 디스플레이하기 위한 상기 고정된 셔터 각도 값을 포함하고, 그렇지 않으면
상기 시그널링 섹션은 서브레이어 셔터 각도 값의 배열을 포함하며, 상기 시간 서브레이어의 각각에 대하여, 서브레이어 셔터 각도 값의 상기 배열 내의 값이 상기 비디오 화상 시퀀스의 상기 시간 서브레이어의 디코딩된 버전을 디스플레이하기 위한 대응하는 셔터 각도를 나타내는 비일시적 프로세서 판독 가능한 매체. - 제1항에 있어서, 상기 시그널링 섹션은 상기 비디오 화상 시퀀스 내에서 디코딩된 화상이 연속적으로 디스플레이되어야 하는 횟수를 나타내는 프레임 반복 값의 인코딩을 더 포함하는 비일시적 프로세서 판독 가능한 매체.
- 제1항에 있어서, 상기 시그널링 섹션은 1초에 지나가는 시간 단위 수를 나타내는 time_scale 값의 주파수에서 동작하는 클록의 시간 단위 수를 나타내는 num_units_in_tick 값의 인코딩 및 time_scale 값의 인코딩을 더 포함하며, 상기 num_units_in_tick 및 time_scale 값은 프레임 단위로 재생하는 동안 프레임 반복 및/또는 지속시간을 조정하기 위해 디코더에 의해 사용되는 비일시적 프로세서 판독 가능한 매체.
- 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 시그널링 섹션은 부가적 향상 정보(SEI) 메시징 섹션 또는 비디오 사용자 정보(VUI) 메시징 섹션을 포함하는 비일시적 프로세서 판독 가능한 매체.
- 인코딩된 비디오 스트림 구조가 저장된 비일시적 프로세서 판독 가능한 매체에 있어서, 상기 인코딩된 비디오 스트림 구조는:
비디오 화상 시퀀스의 인코딩을 포함하는 인코딩된 화상 섹션; 및
상기 인코딩된 화상 섹션 내의 모든 시간 서브레이어에 대하여 셔터 각도 정보가 고정되어 있는지 여부를 나타내는 제1 셔터 각도 플래그의 인코딩을 포함하는 시그널링 섹션을 포함하고,
상기 제1 셔터 각도 플래그가 상기 셔터 각도 정보가 고정되어 있음을 나타내면, 상기 시그널링 섹션은 고정 셔터 각도 분자 값 및 고정 셔터 각도 분모 값에 기반한 고정 셔터 각도를 사용하여 상기 인코딩된 화상 섹션 내의 모든 상기 시간 서브레이어에 대하여 상기 비디오 화상 시퀀스의 디코딩된 버전을 디스플레이하기 위한 상기 고정 셔터 각도 분자 값 및 상기 고정 셔터 각도 분모 값을 포함하고, 그렇지 않으면
상기 시그널링 섹션은 서브레이어 셔터 각도 분자 값의 배열 및 서브레이어 셔터 각도 분모 값의 배열을 포함하며, 상기 서브레이어 셔터 각도 분자 값 및 상기 서브레이어 셔터 각도 분모 값의 각각을 적용하여 상기 비디오 화상 시퀀스의 상기 시간 서브레이어의 디코딩된 버전을 디스플레이하기 위한 대응하는 서브레이어 셔터 각도를 계산하는 비일시적 프로세서 판독 가능한 매체. - 인코딩된 비디오 스트림 구조가 저장된 비일시적 프로세서 판독 가능한 매체에 있어서, 상기 인코딩된 비디오 스트림 구조는:
비디오 화상 시퀀스의 인코딩을 포함하는 인코딩된 화상 섹션; 및
상기 인코딩된 화상 섹션 내의 모든 시간 서브레이어에 대하여 노출 지속시간 정보가 고정되어 있는지 여부를 나타내는 제1 노출 지속시간 플래그의 인코딩을 포함하는 시그널링 섹션을 포함하고,
상기 제1 노출 지속시간 플래그가 상기 노출 지속시간 정보가 고정되어 있음을 나타내면, 상기 시그널링 섹션은 고정 노출 지속시간 분자 값 및 고정 노출 지속시간 분모 값에 기반한 고정 노출 지속시간을 사용하여 상기 인코딩된 화상 섹션 내의 모든 상기 시간 서브레이어에 대하여 상기 비디오 화상 시퀀스의 디코딩된 버전을 디스플레이하기 위한 상기 고정 노출 지속시간 분자 값 및 상기 고정 노출 지속시간 분모 값을 포함하고, 그렇지 않으면
상기 시그널링 섹션은 서브레이어 노출 지속시간 분자 값의 배열 및 서브레이어 노출 지속시간 분모 값의 배열을 포함하며, 상기 서브레이어 노출 지속시간 분자 값 및 상기 서브레이어 노출 지속시간 분모 값의 각각을 적용하여 상기 비디오 화상 시퀀스의 상기 시간 서브레이어의 디코딩된 버전을 디스플레이하기 위한 대응하는 서브레이어 노출 지속시간을 계산하는 비일시적 프로세서 판독 가능한 매체. - 제6항에 있어서, 상기 시그널링 섹션은 클록 틱 값을 결정하기 위한 시그널링 매개변수를 더 포함하는 비일시적 프로세서 판독 가능한 매체.
- 제7항에 있어서, 상기 클록 틱 값을 결정하기 위한 상기 시그널링 매개변수는 노출 시간을 클록의 시간 단위 수로 표현하는 제1 클록 틱 매개변수 및 1초 내의 상기 시간 단위 수의 노출 시간 스케일을 표현하는 제2 클록 틱 매개변수를 포함하고, 상기 클록 틱 값은 상기 제1 클록 틱 매개변수와 상기 제2 클록 틱 매개변수의 비율로 결정되는 비일시적 프로세서 판독 가능한 매체.
- 인코딩된 비디오 스트림 구조가 저장된 비일시적 프로세서 판독 가능한 매체에 있어서, 상기 인코딩된 비디오 스트림 구조는:
비디오 화상 시퀀스의 인코딩을 포함하는 인코딩된 화상 섹션; 및
1초에 지나가는 시간 단위의 수를 나타내는 셔터 간격 시간 스케일 매개변수;
상기 셔터 간격 시간 스케일 매개변수의 주파수에서 동작하는 클록의 시간 단위의 수를 나타내는 셔터 간격 클록 틱 매개변수-상기 셔터 간격 시간 스케일 매개변수로 나눈 상기 셔터 간격 클록 틱 매개변수는 노출 지속시간 값을 나타냄;
상기 인코딩된 화상 섹션 내의 모든 시간 서브레이어에 대하여 노출 지속시간 정보가 고정되어 있는지 여부를 나타내는 셔터 간격 지속시간 플래그의 인코딩을 포함하는 시그널링 섹션을 포함하고,
상기 셔터 간격 지속시간 플래그가 상기 노출 지속시간 정보가 고정되어 있음을 나타내면, 상기 인코딩된 화상 섹션 내의 모든 상기 시간 서브레이어에 대하여 상기 비디오 화상 시퀀스의 디코딩된 버전이 상기 셔터 간격 시간 스케일 매개변수 및 상기 셔터 간격 클록 틱 매개변수에 기반한 상기 노출 지속시간 값의 계산에 의해 디코딩되고, 그렇지 않으면
상기 시그널링 섹션은 서브레이어 매개변수의 하나 이상의 배열을 포함하고, 상기 셔터 간격 시간 스케일 매개변수와 결합된 상기 서브레이어 매개변수의 하나 이상의 배열의 값을 사용하여 각 서브레이어에 대하여 상기 비디오 화상 시퀀스의 상기 시간 서브레이어의 디코딩된 버전을 디스플레이하기 위한 대응하는 서브레이어 노출 지속시간을 계산하는 비일시적 프로세서 판독 가능한 매체. - 제9항에 있어서, 상기 서브레이어 매개변수의 하나 이상의 배열은 각각 상기 셔터 간격 시간 스케일 매개변수의 주파수에서 동작하는 상기 클록의 시간 단위의 수를 나타내는 서브레이어 셔터 간격 클록 틱 값의 배열을 포함하는 비일시적 프로세서 판독 가능한 매체.
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020217031824A KR20210125110A (ko) | 2019-03-11 | 2020-03-11 | 프레임 레이트 스케일러블 비디오 코딩 |
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962816521P | 2019-03-11 | 2019-03-11 | |
US62/816,521 | 2019-03-11 | ||
US201962850985P | 2019-05-21 | 2019-05-21 | |
US62/850,985 | 2019-05-21 | ||
US201962883195P | 2019-08-06 | 2019-08-06 | |
US62/883,195 | 2019-08-06 | ||
US201962904744P | 2019-09-24 | 2019-09-24 | |
US62/904,744 | 2019-09-24 | ||
PCT/US2020/022018 WO2020185853A2 (en) | 2019-03-11 | 2020-03-11 | Frame-rate scalable video coding |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020217031824A Division KR20210125110A (ko) | 2019-03-11 | 2020-03-11 | 프레임 레이트 스케일러블 비디오 코딩 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210055025A KR20210055025A (ko) | 2021-05-14 |
KR102311046B1 true KR102311046B1 (ko) | 2021-10-12 |
Family
ID=70166175
Family Applications (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020207027642A KR102311046B1 (ko) | 2019-03-11 | 2020-03-11 | 프레임 레이트 스케일러블 비디오 코딩 |
KR1020247023252A KR20240112373A (ko) | 2019-03-11 | 2020-03-11 | 프레임 레이트 스케일러블 비디오 코딩 |
KR1020237040629A KR20230169394A (ko) | 2019-03-11 | 2020-03-11 | 프레임 레이트 스케일러블 비디오 코딩 |
KR1020217031824A KR20210125110A (ko) | 2019-03-11 | 2020-03-11 | 프레임 레이트 스케일러블 비디오 코딩 |
KR1020237039091A KR102717224B1 (ko) | 2019-03-11 | 2021-06-15 | 프레임 레이트 스케일러블 비디오 코딩 |
KR1020227043358A KR102502747B1 (ko) | 2019-03-11 | 2021-06-15 | 프레임 레이트 스케일러블 비디오 코딩 |
Family Applications After (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020247023252A KR20240112373A (ko) | 2019-03-11 | 2020-03-11 | 프레임 레이트 스케일러블 비디오 코딩 |
KR1020237040629A KR20230169394A (ko) | 2019-03-11 | 2020-03-11 | 프레임 레이트 스케일러블 비디오 코딩 |
KR1020217031824A KR20210125110A (ko) | 2019-03-11 | 2020-03-11 | 프레임 레이트 스케일러블 비디오 코딩 |
KR1020237039091A KR102717224B1 (ko) | 2019-03-11 | 2021-06-15 | 프레임 레이트 스케일러블 비디오 코딩 |
KR1020227043358A KR102502747B1 (ko) | 2019-03-11 | 2021-06-15 | 프레임 레이트 스케일러블 비디오 코딩 |
Country Status (18)
Country | Link |
---|---|
US (14) | US11523127B2 (ko) |
EP (6) | EP4236325B1 (ko) |
JP (6) | JP7087100B2 (ko) |
KR (6) | KR102311046B1 (ko) |
CN (14) | CN114666597A (ko) |
BR (2) | BR112020019362A2 (ko) |
CA (4) | CA3231105A1 (ko) |
DK (3) | DK3850847T3 (ko) |
ES (2) | ES2952678T3 (ko) |
FI (2) | FI4236325T3 (ko) |
HR (2) | HRP20220863T1 (ko) |
HU (2) | HUE062299T2 (ko) |
IL (5) | IL314816A (ko) |
MX (4) | MX2023011520A (ko) |
PH (1) | PH12020551511A1 (ko) |
PL (2) | PL4064706T3 (ko) |
PT (2) | PT4064706T (ko) |
WO (2) | WO2020185853A2 (ko) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110198474B (zh) * | 2018-02-27 | 2022-03-15 | 中兴通讯股份有限公司 | 一种码流处理方法及装置 |
CN114666597A (zh) | 2019-03-11 | 2022-06-24 | 杜比实验室特许公司 | 帧速率可伸缩视频编码 |
JP2022543627A (ja) | 2019-08-06 | 2022-10-13 | ドルビー ラボラトリーズ ライセンシング コーポレイション | 描画面サイズ拡張可能ビデオコーディング |
US11812165B2 (en) * | 2021-06-16 | 2023-11-07 | Mediatek Inc. | Method and apparatus for dynamically changing frame rate of sensor output frames according to whether motion blur condition is met |
WO2024135530A1 (ja) * | 2022-12-23 | 2024-06-27 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 符号化装置、復号装置、ビットストリーム出力装置、符号化方法及び復号方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160234500A1 (en) | 2013-11-22 | 2016-08-11 | Sony Corporation | Transmission device, transmission method, reception device, and reception method |
Family Cites Families (77)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4596221B2 (ja) * | 2001-06-26 | 2010-12-08 | ソニー株式会社 | 画像処理装置および方法、記録媒体、並びにプログラム |
JP3960789B2 (ja) * | 2001-12-07 | 2007-08-15 | オリンパス株式会社 | シャッタディレイ調整方法および撮像装置 |
US7561793B2 (en) * | 2002-11-12 | 2009-07-14 | Eastman Kodak Company | User interface for controlling cropping in electronic camera |
JP4579503B2 (ja) * | 2003-05-09 | 2010-11-10 | キヤノン株式会社 | 固体撮像素子 |
US20060104356A1 (en) * | 2004-11-15 | 2006-05-18 | Microsoft Corporation | Timing for decoder buffer examination |
JP4509917B2 (ja) | 2005-11-21 | 2010-07-21 | 株式会社メガチップス | 画像処理装置及びカメラシステム |
WO2008140656A2 (en) * | 2007-04-03 | 2008-11-20 | Gary Demos | Flowfield motion compensation for video compression |
US9826243B2 (en) * | 2007-04-12 | 2017-11-21 | Thomson Licensing | Methods and apparatus for video usability information (VUI) for scalable video coding (SVC) |
JP5098502B2 (ja) * | 2007-08-08 | 2012-12-12 | 株式会社ニコン | 固体撮像装置 |
JP5264920B2 (ja) * | 2007-10-05 | 2013-08-14 | トムソン ライセンシング | マルチビュー・ビデオ(mvc)コーディング・システムにビデオ・ユーザビリティ情報(vui)を組み込むための方法と装置 |
US8698908B2 (en) | 2008-02-11 | 2014-04-15 | Nvidia Corporation | Efficient method for reducing noise and blur in a composite still image from a rolling shutter camera |
JP5350090B2 (ja) * | 2009-06-17 | 2013-11-27 | キヤノン株式会社 | 撮像装置およびその制御方法 |
JP5432799B2 (ja) * | 2010-03-30 | 2014-03-05 | オリンパスイメージング株式会社 | 撮像装置、撮像システム、撮像方法 |
JP2011217272A (ja) | 2010-04-01 | 2011-10-27 | Canon Inc | 映像処理装置及びその制御方法 |
US8736700B2 (en) * | 2010-09-30 | 2014-05-27 | Apple Inc. | Techniques for synchronizing audio and video data in an image signal processing system |
JP2012195734A (ja) * | 2011-03-16 | 2012-10-11 | Sony Corp | 固体撮像装置、撮像装置、電子機器、及び、固体撮像装置の駆動方法 |
CN103597839B (zh) * | 2011-05-31 | 2017-10-20 | 杜比实验室特许公司 | 视频压缩方法、视频重构方法和系统、及编码器 |
US10237565B2 (en) | 2011-08-01 | 2019-03-19 | Qualcomm Incorporated | Coding parameter sets for various dimensions in video coding |
JP2013046013A (ja) * | 2011-08-26 | 2013-03-04 | Sony Corp | 固体撮像素子および電子機器 |
US9196016B2 (en) | 2012-01-18 | 2015-11-24 | Linkedin Corporation | Systems and methods for improving video stutter in high resolution progressive video |
SG11201406036RA (en) * | 2012-04-13 | 2014-11-27 | Mitsubishi Electric Corp | Video encoding device, video decoding device, video encoding method and video decoding method |
US20140003534A1 (en) | 2012-07-02 | 2014-01-02 | Sony Corporation | Video coding system with temporal scalability and method of operation thereof |
US10110890B2 (en) | 2012-07-02 | 2018-10-23 | Sony Corporation | Video coding system with low delay and method of operation thereof |
US9912941B2 (en) | 2012-07-02 | 2018-03-06 | Sony Corporation | Video coding system with temporal layers and method of operation thereof |
KR20230080500A (ko) * | 2013-01-04 | 2023-06-07 | 지이 비디오 컴프레션, 엘엘씨 | 효율적인 확장가능한 코딩 개념 |
US9374581B2 (en) | 2013-01-07 | 2016-06-21 | Qualcomm Incorporated | Signaling of picture order count to timing information relations for video timing in video coding |
KR102271879B1 (ko) * | 2013-01-07 | 2021-07-01 | 한국전자통신연구원 | 영상 부호화/복호화 방법 및 장치 |
US10003815B2 (en) | 2013-06-03 | 2018-06-19 | Qualcomm Incorporated | Hypothetical reference decoder model and conformance for cross-layer random access skipped pictures |
US10009628B2 (en) * | 2013-06-07 | 2018-06-26 | Apple Inc. | Tuning video compression for high frame rate and variable frame rate capture |
US10034019B2 (en) * | 2013-06-12 | 2018-07-24 | Mitsubishi Electric Corporation | Image encoding device, image encoding method, image decoding device, and image decoding method |
JP6571314B2 (ja) | 2013-06-18 | 2019-09-04 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 送信方法 |
JP6605789B2 (ja) | 2013-06-18 | 2019-11-13 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 送信方法、受信方法、送信装置、および、受信装置 |
WO2015008477A1 (en) * | 2013-07-14 | 2015-01-22 | Sharp Kabushiki Kaisha | Tile alignment signaling and conformance constraints |
US20150016547A1 (en) * | 2013-07-15 | 2015-01-15 | Sony Corporation | Layer based hrd buffer management for scalable hevc |
JP6625318B2 (ja) | 2013-08-29 | 2019-12-25 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 送信方法および受信方法 |
TWI652937B (zh) | 2013-10-07 | 2019-03-01 | Vid衡器股份有限公司 | 多層視訊編碼組合可調能力處理方法 |
US10187662B2 (en) * | 2013-10-13 | 2019-01-22 | Sharp Kabushiki Kaisha | Signaling parameters in video parameter set extension and decoder picture buffer operation |
JP6538324B2 (ja) | 2013-10-18 | 2019-07-03 | パナソニック株式会社 | 画像符号化方法および画像符号化装置 |
US8830367B1 (en) | 2013-10-21 | 2014-09-09 | Gopro, Inc. | Frame manipulation to reduce rolling shutter artifacts |
CN103595922A (zh) * | 2013-11-04 | 2014-02-19 | 西北核技术研究所 | 一种基于电子快门曝光编码的成像方法 |
JP6652320B2 (ja) | 2013-12-16 | 2020-02-19 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 送信方法、受信方法、送信装置及び受信装置 |
US9860540B2 (en) | 2014-01-03 | 2018-01-02 | Qualcomm Incorporated | Inference of nooutputofpriorpicsflag in video coding |
US10368097B2 (en) | 2014-01-07 | 2019-07-30 | Nokia Technologies Oy | Apparatus, a method and a computer program product for coding and decoding chroma components of texture pictures for sample prediction of depth pictures |
US11228764B2 (en) | 2014-01-15 | 2022-01-18 | Avigilon Corporation | Streaming multiple encodings encoded using different encoding parameters |
WO2015115946A1 (en) * | 2014-01-30 | 2015-08-06 | Telefonaktiebolaget L M Ericsson (Publ) | Methods for encoding and decoding three-dimensional video content |
KR101797506B1 (ko) * | 2014-02-21 | 2017-11-15 | 엘지전자 주식회사 | 방송 신호 송신 장치 및 방송 신호 수신 장치 |
ES2913983T3 (es) | 2014-03-17 | 2022-06-07 | Nokia Technologies Oy | Un aparato, un método y un programa informático para codificación y decodificación de vídeo |
US10187659B2 (en) | 2014-04-25 | 2019-01-22 | Sharp Kabushiki Kaisha | Image decoding device, image coding device, and coding data transform device |
WO2015183480A1 (en) | 2014-05-30 | 2015-12-03 | Thomson Licensing | High frame rate tiling compression technique |
JP2016005244A (ja) * | 2014-06-19 | 2016-01-12 | 株式会社ニコン | 画像符号化装置、画像復号装置、画像符号化方法および画像復号方法 |
CN107079079B (zh) | 2014-10-02 | 2019-10-15 | 杜比实验室特许公司 | 用于抖动可视性控制的双端元数据 |
CN105744251A (zh) * | 2014-12-11 | 2016-07-06 | 深圳市华天瑞彩科技开发有限公司 | 快门式led三维显示控制系统 |
EP3254462A1 (en) * | 2015-02-05 | 2017-12-13 | Cisco Technology, Inc. | Method and system for processing hevc coded video in broadcast and streaming applications |
CN107431845B (zh) | 2015-03-31 | 2021-03-26 | 松下电器(美国)知识产权公司 | 发送方法、接收方法、发送装置以及接收装置 |
US9942474B2 (en) * | 2015-04-17 | 2018-04-10 | Fotonation Cayman Limited | Systems and methods for performing high speed video capture and depth estimation using array cameras |
WO2016167814A1 (en) * | 2015-04-17 | 2016-10-20 | Pelican Imaging Corporation | Systems and methods for performing high speed video capture and depth estimation using array cameras |
CN107534790B (zh) * | 2015-05-19 | 2020-06-23 | 索尼公司 | 图像处理装置、图像处理方法、接收装置及发送装置 |
GB2538997A (en) * | 2015-06-03 | 2016-12-07 | Nokia Technologies Oy | A method, an apparatus, a computer program for video coding |
EP3349456A4 (en) | 2015-09-10 | 2019-04-24 | Sony Corporation | SENDING DEVICE, TRANSMISSION PROCEDURE, RECEPTION DEVICE AND RECEPTION PROCEDURE |
KR102267922B1 (ko) | 2015-09-23 | 2021-06-22 | 노키아 테크놀로지스 오와이 | 360도 파노라마 비디오를 코딩하는 방법, 장치 및 컴퓨터 프로그램 제품 |
US10148983B2 (en) | 2015-09-25 | 2018-12-04 | Qualcomm Incorporated | Methods and systems of improved video stream switching and random access |
WO2017067429A1 (en) * | 2015-10-19 | 2017-04-27 | Mediatek Inc. | Method and apparatus for decoded picture buffer management in video coding system using intra block copy |
US9681111B1 (en) * | 2015-10-22 | 2017-06-13 | Gopro, Inc. | Apparatus and methods for embedding metadata into video stream |
JP6588801B2 (ja) | 2015-10-30 | 2019-10-09 | キヤノン株式会社 | 画像処理装置、画像処理方法、及び、プログラム |
TWI605705B (zh) | 2015-11-30 | 2017-11-11 | 晨星半導體股份有限公司 | 位元流解碼方法與位元流解碼電路 |
CN113347439B (zh) * | 2016-02-09 | 2022-05-17 | 弗劳恩霍夫应用研究促进协会 | 解码器、编码器、方法、网络设备以及可读存储介质 |
JPWO2017150237A1 (ja) | 2016-03-03 | 2018-12-27 | ソニー株式会社 | 表示制御装置、表示制御方法、及び、プログラム |
US10440401B2 (en) * | 2016-04-07 | 2019-10-08 | Dolby Laboratories Licensing Corporation | Backward-compatible HDR codecs with temporal scalability |
US10021320B2 (en) * | 2016-06-28 | 2018-07-10 | Foveon, Inc. | Electronically controlled graduated density filters in stacked image sensors |
TWI670964B (zh) | 2016-12-13 | 2019-09-01 | 日商夏普股份有限公司 | 用於減少於視訊之時間可適性層之假影之系統及方法 |
US20210136421A1 (en) | 2016-12-31 | 2021-05-06 | Sharp Kabushiki Kaisha | Systems and methods for reducing artifacts in temporal scalable layers of video |
US11019302B2 (en) | 2017-09-28 | 2021-05-25 | Dolby Laboratories Licensing Corporation | Frame rate conversion metadata |
CN107613159B (zh) * | 2017-10-12 | 2024-05-14 | 北京工业职业技术学院 | 图像时间校准方法及系统 |
CN108510560B (zh) * | 2018-04-11 | 2020-01-24 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、存储介质和计算机设备 |
US10499009B1 (en) * | 2018-09-25 | 2019-12-03 | Pixelworks, Inc. | Realistic 24 frames per second output from high frame rate content |
US11234044B2 (en) | 2018-12-28 | 2022-01-25 | Sony Group Corporation | Transmission apparatus, transmission method, encoding apparatus, encoding method, reception apparatus, and reception method |
CN114666597A (zh) * | 2019-03-11 | 2022-06-24 | 杜比实验室特许公司 | 帧速率可伸缩视频编码 |
-
2020
- 2020-03-11 CN CN202210472084.3A patent/CN114666597A/zh active Pending
- 2020-03-11 WO PCT/US2020/022018 patent/WO2020185853A2/en active Application Filing
- 2020-03-11 HU HUE22166777A patent/HUE062299T2/hu unknown
- 2020-03-11 IL IL314816A patent/IL314816A/en unknown
- 2020-03-11 KR KR1020207027642A patent/KR102311046B1/ko active IP Right Grant
- 2020-03-11 FI FIEP23177309.4T patent/FI4236325T3/fi active
- 2020-03-11 KR KR1020247023252A patent/KR20240112373A/ko active Application Filing
- 2020-03-11 CN CN202210472078.8A patent/CN114666596A/zh active Pending
- 2020-03-11 CN CN202210474194.3A patent/CN114666599B/zh active Active
- 2020-03-11 PL PL22166777.7T patent/PL4064706T3/pl unknown
- 2020-03-11 EP EP23177309.4A patent/EP4236325B1/en active Active
- 2020-03-11 CN CN202080002086.5A patent/CN111971964B/zh active Active
- 2020-03-11 PT PT221667777T patent/PT4064706T/pt unknown
- 2020-03-11 DK DK20717040.8T patent/DK3850847T3/da active
- 2020-03-11 KR KR1020237040629A patent/KR20230169394A/ko not_active Application Discontinuation
- 2020-03-11 US US17/281,380 patent/US11523127B2/en active Active
- 2020-03-11 CN CN202210474189.2A patent/CN114666598A/zh active Pending
- 2020-03-11 IL IL289965A patent/IL289965B/en unknown
- 2020-03-11 BR BR112020019362-3A patent/BR112020019362A2/pt unknown
- 2020-03-11 IL IL304034A patent/IL304034B1/en unknown
- 2020-03-11 ES ES22166777T patent/ES2952678T3/es active Active
- 2020-03-11 DK DK22166777.7T patent/DK4064706T3/da active
- 2020-03-11 HU HUE20717040A patent/HUE059347T2/hu unknown
- 2020-03-11 EP EP23211188.0A patent/EP4300975A3/en active Pending
- 2020-03-11 EP EP20717040.8A patent/EP3850847B1/en active Active
- 2020-03-11 ES ES20717040T patent/ES2922799T3/es active Active
- 2020-03-11 KR KR1020217031824A patent/KR20210125110A/ko active Application Filing
- 2020-03-11 HR HRP20220863TT patent/HRP20220863T1/hr unknown
- 2020-03-11 HR HRP20230760TT patent/HRP20230760T1/hr unknown
- 2020-03-11 JP JP2020551482A patent/JP7087100B2/ja active Active
- 2020-03-11 CN CN202210463453.2A patent/CN114845110A/zh active Pending
- 2020-03-11 CN CN202210462703.0A patent/CN114845109A/zh active Pending
- 2020-03-11 CN CN202210469179.XA patent/CN114666594A/zh active Pending
- 2020-03-11 CN CN202210473165.5A patent/CN114845111A/zh active Pending
- 2020-03-11 PT PT207170408T patent/PT3850847T/pt unknown
- 2020-03-11 DK DK23177309.4T patent/DK4236325T3/da active
- 2020-03-11 FI FIEP22166777.7T patent/FI4064706T3/fi active
- 2020-03-11 PL PL20717040.8T patent/PL3850847T3/pl unknown
- 2020-03-11 IL IL295131A patent/IL295131B2/en unknown
- 2020-03-11 EP EP22166777.7A patent/EP4064706B1/en active Active
- 2020-03-11 CN CN202210471917.4A patent/CN114666595A/zh active Pending
- 2020-06-15 US US16/901,911 patent/US10999585B2/en active Active
- 2020-09-15 IL IL277365A patent/IL277365B/en unknown
- 2020-09-19 PH PH12020551511A patent/PH12020551511A1/en unknown
-
2021
- 2021-03-25 US US17/212,701 patent/US11323728B2/en active Active
- 2021-06-15 JP JP2022573730A patent/JP7353520B2/ja active Active
- 2021-06-15 CN CN202310746227.XA patent/CN116668696B/zh active Active
- 2021-06-15 EP EP21825958.8A patent/EP4150909A4/en active Pending
- 2021-06-15 CA CA3231105A patent/CA3231105A1/en active Pending
- 2021-06-15 MX MX2023011520A patent/MX2023011520A/es unknown
- 2021-06-15 KR KR1020237039091A patent/KR102717224B1/ko active IP Right Grant
- 2021-06-15 KR KR1020227043358A patent/KR102502747B1/ko active IP Right Grant
- 2021-06-15 CA CA3192296A patent/CA3192296A1/en active Pending
- 2021-06-15 CA CA3231109A patent/CA3231109A1/en active Pending
- 2021-06-15 CN CN202311299849.9A patent/CN117478882B/zh active Active
- 2021-06-15 CN CN202180042591.7A patent/CN115702564B/zh active Active
- 2021-06-15 CA CA3187271A patent/CA3187271C/en active Active
- 2021-06-15 MX MX2022016068A patent/MX2022016068A/es unknown
- 2021-06-15 CN CN202310746229.9A patent/CN117014611B/zh active Active
- 2021-06-15 MX MX2023004340A patent/MX2023004340A/es unknown
- 2021-06-15 BR BR112022025555A patent/BR112022025555A2/pt unknown
- 2021-06-15 WO PCT/US2021/037449 patent/WO2021257578A1/en active Application Filing
- 2021-06-15 EP EP23210896.9A patent/EP4300974A3/en active Pending
-
2022
- 2022-02-08 US US17/666,887 patent/US11582472B2/en active Active
- 2022-06-08 JP JP2022093134A patent/JP7411727B2/ja active Active
- 2022-09-21 US US17/950,087 patent/US11871015B2/en active Active
- 2022-12-14 MX MX2023011519A patent/MX2023011519A/es unknown
-
2023
- 2023-01-12 US US18/096,425 patent/US11818372B2/en active Active
- 2023-06-13 US US18/334,306 patent/US11979588B2/en active Active
- 2023-09-19 JP JP2023151374A patent/JP7559171B2/ja active Active
- 2023-09-28 US US18/477,511 patent/US12108060B2/en active Active
- 2023-11-10 US US18/506,758 patent/US11936888B1/en active Active
- 2023-11-13 US US18/508,088 patent/US11979589B2/en active Active
- 2023-11-30 JP JP2023202943A patent/JP2024020591A/ja active Pending
- 2023-12-25 JP JP2023218291A patent/JP2024029104A/ja active Pending
-
2024
- 2024-01-11 US US18/410,975 patent/US12015793B1/en active Active
- 2024-02-01 US US18/430,444 patent/US12003741B1/en active Active
- 2024-03-26 US US18/616,841 patent/US12108061B2/en active Active
- 2024-04-29 US US18/649,619 patent/US20240292006A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160234500A1 (en) | 2013-11-22 | 2016-08-11 | Sony Corporation | Transmission device, transmission method, reception device, and reception method |
Non-Patent Citations (1)
Title |
---|
S. McCarthy, et al. AHG7: indication of shutter angle for variable frame rate application. JCT-VC of ITU-T and ISO/IEC. JCTVC-AJ0029 Ver.2, Jul. 11, 2019, pp.1-5 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102311046B1 (ko) | 프레임 레이트 스케일러블 비디오 코딩 | |
KR20230026549A (ko) | 프레임 레이트 스케일러블 비디오 코딩 | |
KR20240152958A (ko) | 프레임 레이트 스케일러블 비디오 코딩 | |
KR20240152959A (ko) | 프레임 레이트 스케일러블 비디오 코딩 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E701 | Decision to grant or registration of patent right |