KR20220008254A - 가상 레퍼런스 디코더 - Google Patents
가상 레퍼런스 디코더 Download PDFInfo
- Publication number
- KR20220008254A KR20220008254A KR1020217031617A KR20217031617A KR20220008254A KR 20220008254 A KR20220008254 A KR 20220008254A KR 1020217031617 A KR1020217031617 A KR 1020217031617A KR 20217031617 A KR20217031617 A KR 20217031617A KR 20220008254 A KR20220008254 A KR 20220008254A
- Authority
- KR
- South Korea
- Prior art keywords
- picture
- data stream
- video data
- cpb
- predetermined
- Prior art date
Links
- 230000003139 buffering effect Effects 0.000 claims abstract description 64
- 239000000872 buffer Substances 0.000 claims abstract description 33
- 238000000034 method Methods 0.000 claims description 110
- 230000002123 temporal effect Effects 0.000 claims description 50
- 238000012937 correction Methods 0.000 claims description 48
- 230000011664 signaling Effects 0.000 claims description 34
- 230000003111 delayed effect Effects 0.000 claims description 5
- 238000012986 modification Methods 0.000 claims description 4
- 230000004048 modification Effects 0.000 claims description 4
- 238000009795 derivation Methods 0.000 claims description 3
- 238000012360 testing method Methods 0.000 claims description 3
- 230000001419 dependent effect Effects 0.000 claims description 2
- 238000012790 confirmation Methods 0.000 claims 1
- 238000002715 modification method Methods 0.000 claims 1
- 102100021277 Beta-secretase 2 Human genes 0.000 description 24
- 101000894883 Homo sapiens Beta-secretase 2 Proteins 0.000 description 24
- 238000004590 computer program Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 101001130441 Homo sapiens Ras-related protein Rap-2a Proteins 0.000 description 4
- 102100031420 Ras-related protein Rap-2a Human genes 0.000 description 4
- 101100193652 Dictyostelium discoideum rapA gene Proteins 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 101150056532 terf2ip gene Proteins 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000012447 hatching Effects 0.000 description 2
- 240000002791 Brassica napus Species 0.000 description 1
- 108091000069 Cystinyl Aminopeptidase Proteins 0.000 description 1
- 102100020872 Leucyl-cystinyl aminopeptidase Human genes 0.000 description 1
- 102100037812 Medium-wave-sensitive opsin 1 Human genes 0.000 description 1
- 240000007594 Oryza sativa Species 0.000 description 1
- 235000007164 Oryza sativa Nutrition 0.000 description 1
- 102100022851 Rab5 GDP/GTP exchange factor Human genes 0.000 description 1
- 101710203837 Replication-associated protein Proteins 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 235000009566 rice Nutrition 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 239000002699 waste material Substances 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/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
-
- 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/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/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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
-
- 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/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/58—Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23424—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2401—Monitoring of the client buffer
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Processing (AREA)
Abstract
인코딩된 비디오를 갖는 비디오 데이터 스트림을 설명한다. 비디오 데이터 스트림은 비디오 데이터 스트림의 완전 버전을 버퍼링할 경우 디코더 측에서 적용될 제1 코딩된 픽처 버퍼인 CPB 제거 시간에 대한 제1 타이밍 정보, 및 비디오 데이터 스트림의 완전 버전으로부터 비디오 데이터 스트림의 부분의 제거에 의해 비디오 데이터 스트림과 상이한 비디오 데이터 스트림의 축소 버전을 버퍼링하기 위해 디코더 측에서 적용될 제2 CPB 제거 시간에 대한 제2 타이밍 정보를 포함한다. 또한, 대응하는 비디오 인코더, 비디오 디코더, 네트워크 노드, 비디오 디코더의 코딩된 픽처 버퍼인 CPB를 관리하기 위한 장치, 및 비디오 데이터 스트림을 함께 스플라이싱하기 위한 장치에 관한 것이다.
Description
가상 레퍼런스 디코더(HRD; hypothetical reference decoder) 및 비트스트림과 디코더 적합성을 확인하기 위한 그 사용은 통상적으로 고급 비디오 코덱(Advanced Video Codec:AVC) 및 고효율 비디오 코딩(High Efficiency Video Coding:HEVC)에서와 같은 비디오 코딩 표준에 지정되어 있다.
본 발명에 따른 실시예는 비디오 스트림, 비디오 인코더, 비디오 디코더, 네트워크 노드, 비디오 디코더의 코딩된 픽처 버퍼인 CPB를 관리하기 위한 장치, 및 비디오 데이터 스트림을 함께 스플라이싱하기 위한 장치에 관한 것이다.
이하, 본 발명의 배경에 대한 소개를 제공할 것이다.
이를 위해, 가상 스트림 스케줄러(HSS), 코딩된 픽처 버퍼(CPB), 디코딩 프로세스(순간적으로 간주됨), 디코딩된 픽처 버퍼(DPB) 및 도 2에 도시된 바와 같은 출력 크로핑 프로세스로 구성된 HRD 버퍼 모델이 지정된다.
모델은 비트스트림이 코딩된 픽처 버퍼(Coded Picture Buffer)에 공급되는 타이밍 및 비트레이트를 정의하고, 그 디코딩 유닛(저지연 작동 모드의 경우에 액세스 유닛(AU) 또는 VCL NAL(VCL: 비디오 코딩 계층, NAL: 네트워크 추상화 계층) 유닛)이 CPB로부터 제거되고 순간적으로 디코딩되는 시간을 정의하고, 픽처가 DPB로부터 출력되는 출력 시간을 정의한다.
그렇게 함으로써, 버퍼 오버플로우(CPB에 보관될 수 있는 것보다 더 많은 데이터가 디코더로 전송됨) 또는 언더런(underruns)을 피하기 위해 디코더에 필요한 CPB 크기를 정의할 수도 있고 (필요한 더 낮은 비트레이트에서) 디코더로 전송되는 데이터가 적고 필요한 디코딩 유닛은 디코딩을 위한 디코더에서 적절한 시간에 있지 않다.
최신 코딩 표준은 비트스트림 및 HRD 요건 및 버퍼 모델을 설명하기 위해 다양한 파라미터를 지정한다.
예를 들어, 부계층당 HEVC에 정의된 hrd_parameters는 하나 이상 쌍의 Bitrate(i) 및 CPBsize(i)로 구성되며, 이는 스트림 스케줄러가 크기 CPBsize(i)의 CPB에 Bitrate(i)의 비트레이트를 공급하는 경우에 오버플로우 또는 언더플로우가 발생하지 않음을 나타낸다.
hrd_parameter 신택스 요소와 관련하여, 해당 픽처에 속하는 VCL NAL 유닛이 디코딩으로 전송될 때를 나타내는 CPB로부터 픽처의 제거 시간을 지정하는 비트스트림에 존재하는 추가 타이밍 정보가 있다.
이해의 편의를 위해, 부픽처 처리는 설명을 생략한다.
관련 정보는 InitialCPBRemovalDelay(i), InitialCPBRemovalOffset(i) 및 AuCPBRemovalDelay를 가진 버퍼링 기간 SEI(추가 개선 정보) 메시지 및 AuCPBRemovalDelay를 가진 픽처 타이밍 SEI 메시지에 존재한다.
가장 기본적인 작업의 경우, InitialCPBRemovalDelay(i) 및 AuCPBRemovalDelay만 사용된다.
이 경우, 디코딩되는 제1 액세스 유닛은 대응하는 버퍼링 기간 SEI 메시지가 있는 랜덤 액세스 포인트(RAP)이며, 시간 0은 랜덤 액세스 포인트의 제1 비트가 CPB에 들어가는 시간으로 정의된다. 그 후, InitialCPBRemovalDelay(i) 시간에, 랜덤 액세스 포인트에 대응하는 픽처가 CPB 및 추가 비RAP(non-RAP) 픽처로부터 제거되고 CPB의 제거는 InitialCPBRevovalDelay(i)+AuCPBRemovalDelay에서 발생한다(HEVC는 지연을 시간으로 변환하는 일부 파라미터를, 즉 ClockTick을, 정의하지만 본원에서는 이를 단순화를 위해 무시한다).
다음 RAP가 오면, 제거 시간은 비RAP 픽처에 대해 이전과 같이, 즉 InitialCPBRevovalDelay(i) + AuCPBRemovalDelay로 계산되고, 이 새로운 값은 다른 RAP까지의 추가 델타에 대한 앵커로 사용되고, 즉 anchorTime = InitialCPBRemovalDelay(i) + AuCPBRemovalDelay
그런 다음, 픽처의 제거는 anchorTime +AuCPBRemovalDelay가 되고 anchorTime은 버퍼링 SEI 메시지로 다음 RAP에서 업데이트된다;
anchorTime = anchorTime +AuCPBRemovalDelay 등.
설명된 작동 모드는 가장 간단한 모드이다. 고려해야 할 추가 사례가 있다.
현재 상황에서, 본 발명이 극복할 몇 가지 단점이 있다. 세부사항은 아래에 제시한다.
본 발명에 따른 일 실시예는 인코딩된 비디오를 갖는 비디오 데이터 스트림에 관한 것으로, 비디오 데이터 스트림은 비디오 데이터 스트림의 완전 버전을 버퍼링할 경우 디코더 측에서 적용될 제1 코딩된 픽처 버퍼인 CPB 제거 시간에 대한 제1 타이밍 정보, 및 비디오 데이터 스트림의 완전 버전으로부터 비디오 데이터 스트림의 부분의 제거에 의해 비디오 데이터 스트림과 상이한 비디오 데이터 스트림의 축소 버전을 버퍼링하기 위해 디코더 측에서 적용될 제2 CPB 제거 시간에 대한 제2 타이밍 정보를 포함한다.
본 발명에 따른 다른 실시예는 인코딩된 비디오를 갖는 비디오 데이터 스트림에 관한 것으로, 비디오 데이터 스트림은 최소 CPB 공급 비트레이트에 관한 제1 HRD 타이밍 정보 데이터, 최대 CPB 공급 비트레이트에 관한 제2 HRD 타이밍 정보 데이터를 포함하고, 제1 HRD 타이밍 정보 데이터 및 제2 HRD 타이밍 정보 데이터는 제1 및 제2 HRD 타이밍 정보 데이터 사이를 선형으로 보간함으로써 실제 CPB 공급 비트레이트에 대한 제3 HRD 타이밍 정보의 결정을 가능하게 한다.
본 발명에 따른 다른 실시예는 비디오 데이터 스트림에 관한 것으로, 비디오 데이터 스트림은 픽처부의 시퀀스로서, 각 픽처부는 인코딩된 비디오의 픽처를 갖고, 픽처부는 CPB 제거 시간 레퍼런스로서 역할을 하는 제1 유형의 픽처부 및 제2 유형의 픽처부를 포함하는, 픽처부의 시퀀스, 각 픽처부에서 각각의 픽처부의 제1 CPB 제거 시간에 대한 제1 타이밍 정보로서, 제1 CPB 제거 시간은 선행하는 제1 유형의 픽처부의 제거 이후 경과 시간을 측정하는, 제1 타이밍 정보, 미리정해진 제1 유형 픽처부에서 각각의 미리정해진 제1 유형 픽처부로부터 계속 비디오 데이터 스트림의 디코딩을 재개하는 경우에 각각의 미리정해진 제1 유형 픽처부의 제2 CPB 제거 시간에 대한 제2 타이밍 정보로서, 제2 CPB 제거 시간은 각각의 미리정해진 제1 유형 픽처부의 제1 비트의 CPB 도착 이후 경과 시간을 측정하는, 제2 타이밍 정보, 최종 CPB 도착과 CPB 제거 사이의 시간적 차이가 미리정해진 임계치를 초과하는 픽처부를 나타내는 스플라이스 포인트 표시를 포함하여, 동일한 것이 다른 비디오 데이터 스트림과의 스플라이스 포인트 이전의 마지막 픽처부로서 역할을 할 수 있다.
본 발명에 따른 다른 실시예는 비디오 인코더에 관한 것으로, 비디오 인코더는 비디오를 비디오 데이터 스트림으로 인코딩하고, 비디오 데이터 스트림에 비디오 데이터 스트림의 완전 버전을 버퍼링할 경우 디코더 측에서 적용될 제1 CPB 제거 시간에 대한 제1 타이밍 정보, 및 비디오 데이터 스트림의 완전 버전으로부터 비디오 데이터 스트림의 부분의 제거에 의해 비디오 데이터 스트림과 상이한 비디오 데이터 스트림의 축소 버전을 버퍼링하기 위해 디코더 측에서 적용될 제2 CPB 제거 시간에 대한 제2 타이밍 정보를 제공한다.
본 발명에 따른 다른 실시예는 비디오 인코더에 관한 것으로, 비디오 인코더는 비디오를 비디오 데이터 스트림으로 인코딩하고, 비디오 데이터 스트림에 최소 CPB 공급 비트레이트에 관한 제1 HRD 타이밍 정보, 최대 CPB 공급 비트레이트에 관한 제2 HRD 타이밍 정보를 제공하고, 제1 HRD 타이밍 정보 및 제2 HRD 타이밍 정보는 제1 및 제2 HRD 타이밍 정보 사이를 선형으로 보간함으로써 실제 CPB 공급 비트레이트에 대한 제3 HRD 타이밍 정보의 결정을 가능하게 한다.
본 발명에 따른 다른 실시예는 비디오를 비디오 데이터 스트림으로 인코딩하여 비디오 데이터 스트림이 픽처부의 시퀀스를 포함하기 위한 비디오 인코더에 관한 것으로, 각 픽처부는 인코딩된 비디오의 픽처를 갖고, 비디오 인코더는 픽처부를 CPB 제거 시간 레퍼런스로서 역할을 하는 제1 유형의 픽처부 및 제2 유형의 픽처부로 분류하고, 비디오 데이터 스트림에 각 픽처부에서 각각의 픽처부의 제1 CPB 제거 시간에 대한 제1 타이밍 정보로서, 제1 CPB 제거 시간은 선행하는 제1 유형의 픽처부의 제거 이후 경과 시간을 측정하는, 제1 타이밍 정보, 미리정해진 제1 유형 픽처부에서 각각의 미리정해진 제1 유형 픽처부로부터 계속 비디오 데이터 스트림의 디코딩을 재개하는 경우에 각각의 미리정해진 제1 유형 픽처부의 제2 CPB 제거 시간에 대한 제2 타이밍 정보로서, 제2 CPB 제거 시간은 각각의 미리정해진 제1 유형 픽처부의 제1 비트의 CPB 도착 이후 경과 시간을 측정하는, 제2 타이밍 정보를 제공하고, 미리정해진 픽처부 각각에 대해 최종 CPB 도착과 CPB 제거 사이의 시간적 차이가 미리정해진 임계치를 초과하는지 여부를 검사하여, 동일한 것이 다른 비디오 데이터 스트림과의 스플라이스 포인트 이전의 마지막 픽처부로서 역할을 할 수 있고, 비디오 데이터 스트림에 스플라이스 포인트 표시를 제공하여 최종 CPB 도착과 CPB 제거 사이의 시간적 차이가 미리정해진 임계치를 초과하는 해당 미리정해진 픽처부를 나타낸다.
본 발명에 따른 다른 실시예는 비디오 데이터 스트림으로부터 비디오 데이터 스트림의 부분을 제거하도록 비디오 데이터 스트림을 전달하기 위한 네트워크 노드에 관한 것이다.
본 발명에 따른 다른 실시예는 비디오 데이터 스트림을 CPB에 의해 버퍼링되는 방식으로 디코딩하는 비디오 디코더의 CPB를 관리하기 위한 장치에 관한 것으로, 장치는 부분이 비디오 데이터 스트림에 포함되는 경우에 제1 타이밍 정보에 따라, 그리고 부분이 제거된 경우에 제2 타이밍 정보에 따라 CPB를 관리한다.
본 발명에 따른 다른 실시예는 인코딩된 비디오를 갖는 비디오 데이터 스트림을 디코딩하는 비디오 디코더의 CPB를 관리하기 위한 장치에 관한 것으로, 장치는 비디오 데이터 스트림으로부터 최소 CPB 공급 비트레이트에 관한 제1 HRD 타이밍 정보를 도출하고, 최대 CPB 공급 비트레이트에 관한 제2 HRD 타이밍 정보를 도출하고, 제1 및 제2 HRD 타이밍 정보 사이를 선형으로 보간함으로써 실제 CPB 공급 비트레이트에 대한 제3 HRD 타이밍 정보를 결정하고, 제3 HRD 타이밍 정보를 사용하여 CPB를 관리한다.
본 발명에 따른 다른 실시예는 비디오 데이터 스트림을 CPB에 의해 버퍼링되는 방식으로 디코딩하는 비디오 디코더의 CPB를 관리하기 위한 장치에 관한 것으로, 장치는 제1 미리정해진 제1 유형 픽처부 내의 연결 플래그가 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인이 발생했음을 나타내는지 여부를 확인하고, CPB로부터 제1 미리정해진 제1 유형 픽처부를 제거할 시간을 결정한다. 이러한 결정은 제1 미리정해진 제1 유형 픽처부의 제1 타이밍 정보에 기초하여 제1 미리정해진 제1 유형 픽처부 내의 연결 플래그가 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인이 발생하지 않았음을 나타내는 경우에 이루어지고, 제1 미리정해진 제1 유형 픽처부의 제2 및 제3 타이밍 정보에 기초하여 제1 미리정해진 제1 유형 픽처부 내의 연결 플래그가 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인이 발생했음을 나타내는 경우에 이루어진다.
본 발명에 따른 다른 실시예는 제1 비디오 데이터 스트림 및 제2 비디오 데이터 스트림을 함께 스플라이싱하기 위한 장치에 관한 것으로, 제1 비디오 데이터 스트림 및 제2 비디오 데이터 스트림 각각은 픽처부의 시퀀스로서, 각 픽처부는 인코딩된 비디오의 픽처를 갖고, 픽처부는 CPB 제거 시간 레퍼런스로서 역할을 하는 제1 유형의 픽처부 및 제2 유형의 픽처부를 포함하는, 픽처부의 시퀀스, 각 픽처부에서 각각의 픽처부의 제1 CPB 제거 시간에 대한 제1 타이밍 정보로서, 제1 CPB 제거 시간은 선행하는 제1 유형의 픽처부의 제거 이후 경과 시간을 측정하는, 제1 타이밍 정보, 및 미리정해진 제1 유형 픽처부에서 각각의 미리정해진 제1 유형 픽처부로부터 계속 디코딩하는 비디오 데이터 스트림을 재개하는 경우에 각각의 미리정해진 제1 유형 픽처부의 제2 CPB 제거 시간에 대한 제2 타이밍 정보로서, 제2 CPB 제거 시간은 각각의 미리정해진 제1 유형 픽처부의 제1 비트의 CPB 도착 이후 경과 시간을 측정하는, 제2 타이밍 정보를 포함하고, 제2 비디오 데이터 스트림은 제1 미리정해진 제1 유형 픽처부에 연결 플래그 및 제3 타이밍 정보를 포함하고, 연결 플래그는 제2 비디오 데이터 스트림을 나타내는 제2 상태로 설정되고, 제1 미리정해진 제1 유형 픽처부는 제2 비디오 데이터 스트림을 계속하고, 제3 타이밍 정보는 제1 미리정해진 제1 유형 픽처부에서 제2 비디오 데이터 스트림을 스플라이스-인할 때 CPB 제거 시간을 결정하는 역할을 하는 제1 미리정해진 제1 유형 픽처부의 제3 CPB 제거 시간을 나타내고, 제3 CPB 제거 시간은 폐기 불가능한 픽처부의 가장 최근의 CPB 제거 이후 경과 시간을 측정한다. 본 장치는 제1 비디오 데이터 스트림에서의 스플라이스 포인트 표시가, 미리정해진 픽처부에 대해, CPB 도착과 CPB 제거 사이의 시간적 차이가 미리정해진 임계치를 초과하는 것으로 나타내는지 여부를 확인하여, 동일한 것이 제1 비디오 데이터 스트림이 제2 비디오 데이터 스트림과 스플라이싱되기 전에 마지막 픽처부로서 역할을 할 수 있고, yes인 경우, 제2 비디오 데이터 스트림의 제1 미리정해진 제1 유형 픽처부 내의 연결 플래그를 제2 비디오 데이터 스트림이 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인되었음을 나타내는 제1 상태로 설정하고, 미리정해진 픽처부 및 제1 미리정해진 제1 유형 픽처부에서 제1 및 제2 데이터 스트림을 각각 연결하여 스플라이싱된 비디오 데이터 스트림을 획득한다.
전술한 개념은 본 발명의 실시예에 따른 방법에 의해 구현될 수 있다. 이러한 방법은 전술한 디코더, 인코더, 장치 및 데이터 스트림과 동일한 고려사항을 기반으로 한다. 그러나, 본 방법은 디코더, 인코더, 장치 및 데이터 스트림과 관련하여 본원에 설명된 임의의 특징, 기능 및 세부사항에 의해 보완될 수 있다는 점을 유의해야 한다. 게다가, 본 방법은 개별적으로 및 조합하여 사용되는 디코더, 인코더, 장치 및 데이터 스트림의 특징, 기능 및 세부사항에 의해 보완될 수 있다.
마지막으로, 개념은 본 발명의 실시예에 따라 인코딩된 데이터 스트림을 생성하는 데 사용될 수도 있다. 데이터 스트림은 개별적으로 및 조합하여 사용되는 디코더, 인코더, 장치 및 방법의 특징, 기능 및 세부사항에 의해 보완될 수도 있다.
본 발명에 따른 실시예를 첨부 도면을 참조하여 이후에 설명할 것이다.
도 1은 본 출원의 일 실시예에 따른 인코딩된 데이터 스트림을 도시하고 있고,
도 2는 본 출원의 일 실시예에 따른 가상 레퍼런스 디코더에 대한 흐름도이고,
도 3 내지 도 7 및 도 9는 본 출원의 일 실시예에 따른 제거 시간을 포함하는 코딩된 픽처 버퍼의 상태를 도시하고 있고,
도 8, 도 10, 도 11, 도 20 내지 도 24, 및 도 26 내지 도 34는 본 출원의 실시예에 따른 예시적인 시그널링 신택스를 도시하고 있고,
도 12 내지 도 14, 도 16 및 도 18은 본 출원의 실시예에 따른 상이한 프레임레이트에 대한 데이터 스트림 구조를 도시하고 있고,
도 15, 도 17 및 도 19는 본 출원의 실시예에 따른 동일한 비트스트림으로 상이한 프레임레이트가 제공되는 경우 예시적인 제거 시간 값을 도시하고 있고,
도 25는 본 출원의 일 실시예에 따라 인코딩된 데이터 스트림이 함께 스티칭되는 것을 도시하고 있고,
도 35, 도 36 및 도 37은 본 출원의 실시예에 따른 CPB 크기의 계산 값의 테이블을 도시하고 있고,
도 38은 본 출원의 실시예에 따른 예시적인 CPB 충전 레벨의 그래프이다.
도면에서, 유사한 참조 부호는 유사한 요소 및 특징을 나타낸다.
도 1은 본 출원의 일 실시예에 따른 인코딩된 데이터 스트림을 도시하고 있고,
도 2는 본 출원의 일 실시예에 따른 가상 레퍼런스 디코더에 대한 흐름도이고,
도 3 내지 도 7 및 도 9는 본 출원의 일 실시예에 따른 제거 시간을 포함하는 코딩된 픽처 버퍼의 상태를 도시하고 있고,
도 8, 도 10, 도 11, 도 20 내지 도 24, 및 도 26 내지 도 34는 본 출원의 실시예에 따른 예시적인 시그널링 신택스를 도시하고 있고,
도 12 내지 도 14, 도 16 및 도 18은 본 출원의 실시예에 따른 상이한 프레임레이트에 대한 데이터 스트림 구조를 도시하고 있고,
도 15, 도 17 및 도 19는 본 출원의 실시예에 따른 동일한 비트스트림으로 상이한 프레임레이트가 제공되는 경우 예시적인 제거 시간 값을 도시하고 있고,
도 25는 본 출원의 일 실시예에 따라 인코딩된 데이터 스트림이 함께 스티칭되는 것을 도시하고 있고,
도 35, 도 36 및 도 37은 본 출원의 실시예에 따른 CPB 크기의 계산 값의 테이블을 도시하고 있고,
도 38은 본 출원의 실시예에 따른 예시적인 CPB 충전 레벨의 그래프이다.
도면에서, 유사한 참조 부호는 유사한 요소 및 특징을 나타낸다.
이하, 본 발명의 기저를 이루는 일부 고려사항을 논의할 것이고 몇 가지 해결책을 설명할 것이다. 특히, 본원에 개시된 임의의 실시예에 선택적으로 도입될 수 있는 다수의 세부사항을 개시할 것이다. 특히, 다음 설명은 다양한 전송 조건에서 스플라이싱, 스트림 추출, 스트리핑 확장식 비트스트림 및 비트스트림 공급에서 발생하고 이를 처리할 때 직면하는 문제에 대한 간략한 제시로 시작한다. 그런 다음, 대응하는 해결책을 사용하는 실시예의 후속적인 제시와 더불어 문제에 대한 특정 해결책을 제시한다.
다음 문제를 점검하고 해결한다.
스플라이싱: 버퍼링 SEI를 갖는 이전 RAP의 제거 시간은 AuCPBRemovalDelay를 추가하는 앵커로서 사용되어 픽처의 CPB 제거 시간이 사용된다.
그러나, 스플라이싱이 발생하면, 스플라이싱 포인트에서 anchorTime의 이전 값이 무엇인지 쉽게 알 수 없다. 그러므로, 이러한 경우, 스플라이싱되는 버퍼링 SEI를 갖는 RAP의 CPB 제거 시간의 도출은 다르게 수행된다.
그 문제를 해결하기 위해, HEVC는 버퍼링 기간 SEI 메시지를 포함하는 RAP에서 스플라이싱이 발생했는지 여부를 나타내는 concatenation_flag인 2개의 추가 파라미터를 포함하고 AuCPBRemovalDelta 시간은 버퍼링 기간 SEI 메시지를 갖는 이전 RAP를 지칭하는 대신 이전의 폐기 불가능한 픽처에 대한 시간상 델타를 지칭한다. 따라서, 스플라이싱 포인트에서 임의의 값을 계산하고 버퍼링 기간 SEI 메시지를 재작성해야 하는 것을 방지한다. 이 때 스플라이싱이 발생하는 RAP로부터 CPB 제거 시간은 다음과 같을 것이다:
Removal(previousNonDiscardable) + AuCPBRemovalDelta.
이는 끊김 없는 스플라이싱 시나리오를 가정한다. 그러나, (스플라이싱의 버퍼링 주기 SEI 메시지 결과를 갖는 RAP가 스플라이싱되지 않고 원래의 비트스트림 내에 있는 경우) 원래 비트스트림의 스플라이싱 포인트에서 그리고 스플라이싱 시 CPB 상태가 동일하다는 것을 보장할 수 없다. 보다 구체적으로, 도 3은 프레임 #3의 상단에 있는 비트스트림이 프레임 #2부터 계속 하단에 있는 비트스트림과 스플라이싱되는 서술된 문제를 보여주고 있다.
그러므로, (프레임이 taf3에 도착했을 때보다 더 빠를 수 있는) 전술한 바와 같이, 다음의 제거 시간을 갖는 대신
Removal(previousNonDiscardable) + AuCPBRemovalDelta
다음의 제거 시간이
Removal(previousNonDiscardable) + InitialCPBRevovalDelay(i) + taf2 - trm2
대신 사용된다.
즉, 스플라이싱된 RAP의 제거 시간은 다음과 같다:
Removal(previousNonDiscardable) + SplicingDelta
여기서 SplicingDelta는 AuCPBRemovalDeta 및 InitialCPBRevovalDelay(i) + taf2 - trm2의 최대 값으로 설정된다.
제2 값이 제1 값보다 큰 경우, 예를 들어 도 3에 도시된 바와 같이, 끊김 있는 스플라이싱이 발생할 것이다.
이러한 스플라이싱 작업은 AuFinalArrivalTime 및 NonDiscardable 픽처 후의 다른 픽처의 제거 시간을 알 수 없으므로 제1 비트스트림이 대응하는 NonDiscardable 픽처에서 끝나는 경우에만 작동하고, 이에 따라 두 값(tafX 및 trmX) 모두 간의 차이가 NonDiscardable 픽처의 경우와 같지 않으면 도출된 제거 시간이 잘못될 수 있다(InitialCPBRemovalDelay(i) + tafX - trmX).
CPB 충만도 및 지연: HRD 모델에서 발생하는 또 다른 문제는 CPB 버퍼를 사용하기 위해 제1 액세스 유닛(AU)의 제거를 위한 시간 지연이 필요하다는 점이다.
스플라이싱 후 제1 RAP가 CPB에 들어오면, 해당 AU의 제거는 전술한 바와 같이 나중에 InitialCPBRemovalDelay(i) 시간으로 지연된다. InitialCPBRemovalDelay(i) 동안 Bitrate(i)에서 CPB를 공급함으로써, 주어진 CPB 충만도가 달성된다, 예를 들어 CPBA. 이후에 버퍼링 주기 SEI 메시지가 있는 추가 RAP에서 CPBA보다 큰 CPBB를 달성할 수 없다. 그 이유는 AU가 CPB에 들어갈 수 있는 가장 빠른 시간을 수학적으로 확인하기 때문이라고 볼 수 있다.
initArrivalTime[n] = Max(AuFinalArrivalTime[n - 1], initArrivalEarliestTime[n]),
initArrivalEarliestTime[n] = RemovalTime[n] - InitCpbRemovalDelay(i)
이는, 버퍼링 주기 SEI 메시지가 있는 AU가 제거 시간의 InitialCPBRemovalDelay(i)보다 먼저 CPB에 들어갈 수 없는 경우, InitialCPBRemovalDelay(i) 동안 Bitrate(i)를 CPB에 공급하면 CPBA의 CPB 충만도를 달성할 수 있기 때문에 CPBA보다 큰 CPBB를 달성할 수 없음을 의미한다.
이러한 문제를 해결하기 위해, 아이디어는 도 4에 도시된 바와 같이 가상의 송신기(또는 도면의 HSS)가 주어진 시간 오프셋 InitialCPBRemovalOffset(i)을 사용하여 버퍼링 SEI 메시지를 갖는 제1 RAP의 스케줄링을 지연시키는 것이다.
이는 CBR에서와 같이 CBR이 아닌 VBR에서만 작동한다는 점을 언급하는 것이 중요하다
initArrivalTime[n] = AuFinalArrivalTime[n - 1].
이에 따라, 스케줄링은 다음과 같이 변경되고
initArrivalEarliestTime[ n ] = RemovalTime[n] - InitCpbRemovalDelay(i) - InitialCPBRemovalOffset(i)
이는 CPBB의 CPB 크기가 InitCpbRemovalDelay(i) + InitialCPBRemovalOffset(i)에 대한 Bitrate(i)를 CPB에 공급하여 얻은 크기에 대응할 수 있음을 의미한다.
AU의 드롭핑: HEVC에서의 HRD 모델은 또한 일부 NAL 유닛의 드롭핑을 지원한다. 보다 구체적으로, RAP 픽처와 연관된 "폐기 가능한" 픽처는 드롭핑될 수 있다. "폐기 가능한" 픽처는 RASL(랜덤 액세스 스킵형 리딩) 픽처를 의미한다, 즉 개방 GOP(픽처 그룹) 구조에서 제시 순서에서 RAP 픽처에 선행하지만 디코딩 순서에서는 뒤따르고 디코딩 순서에서 RAP에 앞선 픽처도 참조하는 픽처를 의미한다. 그러므로, 대응하는 RAP 픽처에서 랜덤 액세스 시, RASL 픽처를 디코딩할 수 없다. 이런 이유로, 이러한 비트스트림을 다른 비트스트림과 스플라이싱할 때 또는 해당 RAP 위치에서 세션을 개시할 때, RASL 픽처를 전송하는 것은 자원 낭비이며 일부 경우에 이러한 픽처는 전송 전에 드롭핑된다.
분명히, 타이밍 정보는, 즉 초기 도착 시간 및 픽처 제거 시간은, 비트스트림이 수정될 때 변경된다.
그러므로, 버퍼링 주기 SEI 메시지는 버퍼링 주기 SEI 메시지가 있는 RAP와 연관된 RASL 픽처가 드롭핑되는 경우에 대한 대체 타이밍을 포함한다.
ㆍ
AltInitCpbRemovalDelay(i)
ㆍ
AltInitialCPBRemovalOffset(i)
시간적 확장성: 부계층을 드롭핑하면, 타이밍 정보도 변경된다. 예를 들어, 원래의 비트스트림이 60Hz를 가지면, 디코딩 순서에서 2개의 연속적인 픽처 사이의 명목 제거 시간에서의 거리가 1/60초가 될 것으로 예상할 수 있다. 매 초마다 픽처를 드롭핑할 때, 거리는 1/30초가 될 것이다. 이는 픽처 타이밍 SEI 메시지를 대체해야 함을 의미한다. 게다가, InitCpbRemovalDelay(i) 및 InitialCPBRemovalOffset(i)도 변경되어야 할 것이다. 따라서, 버퍼링 기간 SEI 메시지를 대체해야 할 것이다. 이러한 작업을 위해, 통상적으로 추가적인 픽처 타이밍 SEI 메시지 및 버퍼링 기간 SEI 메시지는 소위 내포 SEI 메시지에 포함된다. 미들웨어가 부계층 비트스트림 추출(예를 들어, 60Hz 비트스트림으로부터 30Hz 비트스트림을 얻기 위해 매 초마다 프레임을 드롭핑)을 수행할 때, 원래의 픽처 타이밍 SEI 메시지 및 버퍼링 기간 SEI 메시지는 내포 SEI 메시지로부터 대응하는 픽처 타이밍 SEI 메시지 및 버퍼링 기간 SEI 메시지로 대체된다.
비트레이트 변형: Bitrate 및 CPB_size뿐만 아니라, initial_removal_delay 및 initial_removal_delay_offset과 같은 HRD 파라미터는 통상적으로 여러 값에 대해 제공된다. 아이디어는 주어진 비트스트림이 CPB에 공급되는 비트레이트가 달라질 수 있으므로 유효한 HRD 모델로 이어지는 여러 값이 제공된다는 것이다.
그러나, 적절하게 고려되지 않은 일부 양태가 있다.
ㆍ
CBR로 이어지는 비트레이트만 있을 수 있다.
ㆍ
적절한 비트레이트가 사전에 알려지지 않은 경우, 비트스트림은 유효한 HRD 모델(그에 대한 파라미터)을 제공할 수 없다.
전술한 바와 같이, nonDiscardable 포인트에서의 스플라이싱은 지금까지 달성하기 어려운 과제이므로, 이하에서 설명되는 실시예는 nonDiscardable 포인트에서도 스플라이싱이 가능한 가능성을 정확히 달성하는 것을 목적으로 한다. 첫 번째 간단한 해결책은 폐기 불가능한 픽처를 항상 앵커로서 사용하지 않고 스플라이싱 포인트 이후에 수신된 마지막 픽처를 사용하도록 공식을 정정하는 것일 수 있다. 즉, 다음으로부터 변경된다:
Removal(previousNonDiscardable) + SplicingDelta
여기서 SplicingDelta는 AuCPBRemovalDelta 및 InitialCPBRevovalDelay(i) + taf2 - trm2의 최대 값으로 설정되고
다음 중에서 최대 값으로 설정된다:
-
Removal(previousNonDiscardable) + AuCPBRemovalDelta
-
Removal(lastPictureBeforeSplicing) + InitialCPBRevovalDelay(i)+ taf2 - trm2, 여기서 Removal(lastPictureBeforeSplicing)은 실제로 trm2이다. (위의 예에서)
여전히, 스플라이서가 이전 픽처를 스플라이싱 전 마지막 픽처로 간주하기로 결정한 경우 공식에서 알 수 있는 바와 같이, 예를 들어 trm1인 두 경우 중 최대 값은 항상 Removal(previousNonDiscardable) + AuCPBRemovalDelta일 것이다. 이에 따라 스플라이서가 AuCPBRemovalDelta 값을 변경하고 (taf2 - trm2)의 차이가 끊김 없는 전환이 실현 가능하도록 이루어지는지 확인하는 한 어떤 AU에서도 끊김 없는 스플라이싱을 방지한다.
버퍼링 기간 SEI에서 AuCPBRemovalDelta 값을 변경하는 것은 실현 가능할 것이다. 그러나, (tafX 및 trmX)를 계속 추적하는 것이 그렇게 간단하지 않기 때문에 스플라이서가 (tafX 및 trmX) 값을 계속 추적하는 것은 간단하지 않다.
상이한 포인트에서 끊김 없는 스플라이싱이 바람직하므로, 주어진 픽처가 스플라이서를 고려하는지 여부를 나타내기 위한 일부 시그널링이 바람직할 것이다. 이는 인코더 측에서 (tafX 및 trmX) 값을 확인하고 차이(trmX - tafX)가 주어진 값보다 작아지지 않도록 확인함으로써 달성될 수 있다. 시그널링은 예를 들어 스플라이싱 포인트 이전에 마지막으로 사용될 수 있는 픽처와 연관된 픽처 타이밍 SEI에서 올 수 있다. 일 예는 도 26에서 볼 수 있다.
또는 다음의 폐기 가능한 픽처가 요건을 충족한다는 약속으로 nonDiscardable 픽처에서도 마찬가지이다. 일 예는 도 27에서 볼 수 있다.
(trmX - tafX)가 충족해야 하는 최소 값에 대한 요건은 스플라이싱된 비트스트림의 initial_removal_delay와 관련되기 때문이다. 버퍼링 기간 SEI에서 끊김 없는 스플라이싱에 픽처를 사용할 수 있는 값에 대한 일부 표시가 있어야 한다. 일 예는 도 28에서 볼 수 있다.
따라서, 지금까지 서술된 가능한 해결책에 대한 사고의 결과로, 다음의 실시예를 평가했다.
도 25에서, 그리고 도 26, 도 27 및 도 28의 시그널링 예에서, 비디오 데이터 스트림이 액세스 유닛과 같은 픽처부(23a)의 시퀀스를 포함할 수 있고, 각 픽처부는 인코딩된 비디오(12a)의 픽처(10a)를 갖는 것을 알 수 있다. 도 25는 2개의 데이터 스트림(14a, 14b)을 도시하고 있고, 스플라이싱 포인트(92)에 선행하는, 즉 이의 좌측에 있는, 스트림(14a)의 부분의 트레일링 단부가 스플라이싱 포인트(92)를 뒤따르는, 즉 이의 우측에 있는, 스트림(14b)의 부분의 리딩 단부와 인접하도록 스플라이싱 포인트(92)에서 스트림(14a 및 14b)의 스플라이싱을 예시하고 있다. 서버, 픽처 회의 시스템 또는 클라이언트-서버 스트리밍 시스템과 같은 스플라이싱 장치에 의해 수행된 스플라이싱 결과는 14c에, 즉 스플라이싱된 데이터 스트림에, 도시되어 있다.
픽처부는 일부 도면에서 십자 해칭되거나 단순히 해칭으로 표시되고 위에서 표시된 픽처로 불리는 제1 유형의 픽처부를 포함할 수 있다. 이에 대한 예는 버퍼링 기간 SEI를 갖거나 포함하는 AU이다. 이러한 제1 유형의 픽처부는 CPB 제거 시간 레퍼런스로서 역할을 하며, 즉 이의 CPB 제거는 AuCPBRemovalDelay와 같은 시간 오프셋으로 주어진 다른 타이밍에 대한 레퍼런스인 anchorTime으로 사용된다.
픽처부는 임의의 버퍼링 기간 SEI를 포함하지 않는 픽처와 같은, 일부 도면에서 해칭되지 않은 것으로 도시된, 제2 유형의 픽처부를 더 포함할 수 있다.
데이터 스트림(14a 및 14b)은 각각의 픽처부의 제1 CPB 제거 시간을 통지하는, 각 픽처부에서, AuCPBRemovalDelay 또는 au_cpb_removal_delay_minus1을 비교하는, 제1 타이밍 정보(95)를 추가로 포함한다. 제1 CPB 제거 시간은 선행하는 제1 유형의 픽처부를, 즉 도 25에 도시된 코딩 또는 비트스트림 순서로 선행하는 것을, 특히 가장 가까운 선행하는 것을, 제거한 이후 경과 시간을 측정한다.
데이터 스트림(14a 및 14b)은 미리정해진 제1 유형 픽처부 각각에서, 예를 들어 후술될 스플라이스 포인트 표시 이전과 같은 버퍼링 기간 SEI의 픽처 타이밍 신택스에 존재할 수 있는 initial_removal_delay를 비교하는, 제2 타이밍 정보를 더 포함한다. 이러한 미리정해진 제1 유형 픽처부는, 단순 해칭으로 도시되고 예를 들어 RAP인 것으로 표시된 버퍼링 기간 SEI를 갖는 AU, 또는 다시 말해서 버퍼링 기간 SEI를 포함하고 RAP인 것으로 표시된 AU와 같은 특정한 제1 유형의 픽처부인, 다른 제1 유형의 픽처부와 동일하게 구별하기 위해 도 25에서 십자 해칭으로 표시된다. 제2 타이밍 정보는 각각의 미리정해진 제1 유형 픽처부로부터 계속해서 비디오 데이터 스트림의 디코딩을 재개하는 경우에 각각의 미리정해진 제1 유형 픽처부의 제2 CPB 제거 시간을 통지한다. 제2 CPB 제거 시간은 각각의 미리정해진 제1 유형 픽처부의 제1 비트의 CPB 도착 이후, 즉 디코더의 CPB에 도착한 이후, 경과 시간을 측정한다.
도 25에서 데이터 스트림 중 적어도 하나인 14a는, 즉 스플라이싱 포인트(92)에 첨부된 다른 스트림인 여기서는 14b를 얻기 위해 분할되거나 스플라이싱되어야 하는 14a는, spliceable_flag 또는 following_pic_spliceable_flag와 같은, 스플라이스 포인트 표시(94, 94')를 더 포함할 수 있고, 이는 최종 CPB 도착과 CPB 제거 사이의, 위에 표시된 trm#-taf#과 같은, 시간적 차이가 미리정해진 임계치를 초과하는, 예를 들어 RAP가 없는, 픽처부를 나타내므로, 동일한 것이 다른 비디오 데이터 스트림(14b)과의 스플라이스 포인트(92) 이전의 마지막 픽처부로서 역할을 할 수 있고, 즉 스플라이싱하기에 적합하다.
임계치가 예를 들어 다음과 같이 계산될 수 있음을 유의한다:
제거 시간이 등거리이고 1/framerate와 같은 것으로 가정한다. 이 때, 도 25에서 AU(23b')와 같은 새로 스플라이싱된 AU에 대한 원하는 제거 시간은 trm# + 1/framerate가 되어야 하고, 여기서 trm#은 23'a가 가리키는 직전의 AU 또는 픽처부의 제거 시간이다.
trm# + 1/framerate는 trm# + 1/framerate 이상이어야 하고, 여기서 taf#는 각각의 AU(23b')의 CPB 최종 도착 시간이다. 따라서, "미리정해진 임계치"는 initial_removal_delay - 1/framerate이다.
max_val_initial_removal_delay_for_seamless_splicing의 변형에서, 즉 이러한 임계치가 다른 스트림(14b)이 첨부될 데이터 스트림(14a)과 같은 데이터 스트림 중 마지막 데이터 스트림에 명시적으로 표시되는 변형에서, trm# + 1/framerate는 taf# + max_val_initial_removal_delay_for_ _seamless_splicing 이상이다. 따라서, 그 후, "미리정해진 임계치"는 max_val_initial_removal_delay_for_seamless_splicing - 1/framerate이다.
즉, 비디오 데이터 스트림(14a)은 또한 최대 제2 CPB 제거 시간 값의 표시(99)를 포함할 수 있고, 이는 다른 비디오 데이터 스트림(14b)이 스플라이스 포인트(92)에서 비디오 데이터 스트림(14a)과 연결되는 다른 비디오 데이터 스트림(14b)의 시작 제1 유형 픽처부(23b')의 제2 CPB 제거 시간이 최대 제2 CPB 제거 시간 값 미만인 동안, 최종 CPB 도착과 CPB 제거 사이의 시간적 차이(trm#-taf#)가 스플라이스 포인트 표시에 의해 표시되어 소정 임계치를 초과하는 임의의 픽처부에 다른 비디오 데이터 스트림(14b)의 연결이 끊김 없는 스플라이싱을 초래함을 나타낸다.
위에서 주어진 버퍼링 기간 SEI 예는 표시(99), 연결 플래그(95), 및 제3 CPB 제거 시간(98)을 포함하는 점을 유의한다. 이는 두 스트림(14a, 14b) 모두가 동일한 종류의 정보 데이터를 운반하는 예를 나타낸다. 다른 예에서, 이는 다를 수 있다.
스플라이스 포인트 표시(94, 94')는 예를 들어 RAP가 없는 픽처부의 각각 또는 픽처부 세트의 각각에 존재하는 플래그(94)를 더 포함할 수 있고, 이는 각각의 픽처부에 대해 최종 CPB 도착과 CPB 제거 사이의 시간적 차이(trm#-taf#)가 미리정해진 임계치를 초과하는지 여부를 나타낸다.
대안적으로 또는 추가적으로, 스플라이스 포인트 표시(94, 94')는 픽처부의 각각 또는 픽처부 세트의 각각에, 예를 들어 RAP가 없는 해당 픽처부에, 존재하는 플래그(94')를 더 포함할 수 있고, 이는 각각의 픽처부로부터 다음의 제1 유형 픽처부까지의 각각에 대해 최종 CPB 도착과 CPB 제거 사이의 시간적 차이(trm#-taf#)가 미리정해진 임계치를 초과하는지 여부를 나타내는 플래그이다.
픽처부의 시퀀스는, 픽처부가 도 25와 같은 일부 도면에서 밑줄이 쳐지지 않은 것으로 도시된 폐기 불가능한 픽처부 및 그 내부에서 밑줄로 도시된 폐기 가능한 픽처부를 포함하는 방식으로, 모션 보상 예측과 같은 시간적 상호 예측(90)을 사용하여 인코딩된 비디오(12a)의 픽처를 더 구비할 수 있다.
이러한 폐기 불가능한 픽처부는 독립형 방식으로 디코딩할 수 있는 반면, 폐기 가능한 픽처부는 폐기 불가능한 픽처부를 디코딩하는 데 필요하지 않지만 자체 디코딩할 수 있도록 폐기 불가능한 픽처부를 필요로 할 수 있다. 폐기 가능한 픽처부를 디코딩하지 않고 향후 어떠한 문제도 없이 비디오를 디코딩할 수 있음을 유의한다.
즉, 폐기 가능한 픽처부는 예를 들어 시간적 상호 예측을 위한 레퍼런스 픽처로서 역할을 하지 않는 반면, 폐기 불가능한 픽처는 시간적 상호 예측을 위한 레퍼런스 픽처로서 역할을 할 수 있다. 계층적 시간 확장성을 사용하여 코딩된 데이터 스트림은 이러한 픽처부의 예를 나타낸다: 최저(베이스) 시간적 계층에 대한 픽처부는 폐기할 수 없는 반면, 다른 픽처부는 폐기 가능할 수 있다. 또 다른 예는 RASL 픽처가 폐기 가능할 수 있는 개방 GOP 코딩된 데이터 스트림이다.
비디오 데이터 스트림(14c)은 스플라이스 포인트(92)에서 스플라이싱되어 스플라이스 포인트 표시(94; 94')가 최종 CPB 도착과 CPB 제거 사이의 시간적 차이(trm#-taf#)가 미리정해진 임계치를 초과함을 나타내는 미리정해진 픽처부(23a')에 이어서 스플라이스-인 비디오 데이터 스트림(14b)에서 유래하는 제1 미리정해진 제1 유형 픽처부(23b')가 뒤따르고 이에 인접한다.
비디오 데이터 스트림(14c)은, AuCPBRemovalDelta 또는 au_cp_removal_delay_delta_minus1을 비교하는, 연결 플래그(96) 및 제3 타이밍 정보(98)를 제1 미리정해진 제1 유형 픽처부에 포함한다. 연결 플래그(96) 및 제3 타이밍 정보(98)는 스플라이싱 이전에 이미 스플라이스-인 데이터 스트림(14b)에 존재할 수 있지만, 스플라이싱 장치는 비스플라이싱을 나타내는 상태로부터 스플라이싱을 나타내는 상태로 플래그(96)를 재설정했을 수 있고 및/또는 제3 타이밍 정보(98)를 설정했을 수 있다. 즉, 연결 플래그(96)는 비디오 데이터 스트림이 제1 미리정해진 제1 유형 픽처부에서 스플라이싱되었음을 나타내는 제1 상태로 설정되고, 제3 타이밍 정보는, 제1 미리정해진 제1 유형 픽처부(23b')에서 스플라이싱 경우에 CPB 제거 시간을 결정하는 역할을 하는, 제1 미리정해진 제1 유형 픽처부(23b')의 제3 CPB 제거 시간을 나타낸다. 제3 CPB 제거 시간은 가장 최근의 폐기 불가능한 픽처부의 CPB 제거 이후 경과 시간을 측정한다. 예를 들어, 비디오 데이터 스트림의 가장 최근의 폐기 불가능한 픽처부의 제거가 스플라이싱된 데이터 스트림(14c)에서 인코딩된 이후.
선택적으로, 일부 도면에서 십자 해칭으로 도시된 미리정해진 제1 유형 픽처부의 각각이 연결 플래그(96) 및 제3 타이밍 정보(98)를 포함할 수 있고, 연결 플래그는 제1 및 제2 상태로 설정 가능하고, 제2 상태는 비디오 데이터 스트림이 각각의 미리정해진 제1 유형 픽처부에서 스플라이싱되지 않았음을 나타낸다.
본 실시예에 따른 비디오 인코더는 다음 방식으로 비디오를 비디오 데이터 스트림으로 인코딩할 수 있다. 예를 들어, 이러한 인코더가 데이터 스트림(14a)을 인코딩함을 상상한다. 또한, 전술한 바와 같이 동일하게 해석될 수 있는 데이터 스트림(14b)을 인코딩하도록 구성될 수 있다. 인코더는 비디오 데이터 스트림(14a)이 픽처부(23a)의 시퀀스를 포함하도록 인코딩을 수행할 것이고, 각 픽처부는 인코딩된 비디오(12a)의 픽처(10a)를 갖는다. 그 후, 비디오 인코더는 전술한 바와 같이 CPB 제거 시간 레퍼런스로서 역할을 하는 제1 유형 픽처부 및 제2 유형 픽처부로 픽처부를 분류할 수 있다. 인코더는 비디오 데이터 스트림에 제1 및 제2 타이밍 정보를 제공할 수 있고, 미리정해진 픽처부(예를 들어, 폐기 가능한 픽처부를 포함할 수 있음)의 각각에 대해 최종 CPB 도착과 CPB 사이의 시간적 차이가 미리정해진 임계치를 초과하는지 여부를 확인할 수 있다. 그렇다면, 각각의 미리정해진 픽처부는 다른 비디오 데이터 스트림(14b)과 함께 스플라이스 포인트(92) 이전의 마지막 픽처부로서 역할을 할 수 있다.
비디오 인코더는 비디오 데이터 스트림(14a)에 스플라이스 포인트 표시(94, 94')를 더 제공할 수 있다.
비디오 인코더는, 각 미리정해진 픽처부에 대해, 미리정해진 임계치로서, 각각의 미리정해진 픽처부, 예를 들어 23a'보다 앞선 일부 도면에서 단순히 해칭된 픽처부, 이전의 가장 최근의 미리정해진 제1 유형 픽처의 제2 CPB 제거 시간에 기초하여 결정된 값을 더 사용할 수 있다.
또한, 비디오 인코더는, 각 미리정해진 픽처부에 대해, 미리정해진 임계치로서 최대 제2 CPB 제거 시간 값에 기초하여 결정된 값을 사용할 수 있고, 각각의 미리정해진 픽처부, 예를 들어 23a'보다 앞선 도면에서 단순히 해칭된 픽처부, 이전의 가장 최근의 미리정해진 제1 유형 픽처로 최대 제2 CPB 제거 시간 값의 표시(99)를 작성할 수 있다.
다음은 전술한 바와 같이 스플라이싱된 데이터 스트림이 디코더 내부에서 예를 들어 디코더 내부의 HRD(46)에 의해, 또는 대안적으로 말하면, CPB에 의해 버퍼링되는 방식으로, 즉 픽처부가 전술한 최종 도착 시간에 완전히 CPB에 도달한 상태에서 제거 시간에 CPB를 통해 픽처부를 수신하는 방식으로, 결과적으로 비디오 데이터 스트림(14c)을 디코딩하는 비디오 디코더(44)의 CPB(48)를 관리하기 위한 장치(46)에 의해, 처리될 수 있는 방법에 관한 점검 사항이다. 이러한 장치는 제1 미리정해진 제1 유형 픽처부(23b') 내의 연결 플래그(96)가 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인이 발생했음을 나타내는지 여부를 확인할 수 있다. 그 후, 장치는 CPB로부터 제1 미리정해진 제1 유형 픽처부(23b')를 제거할 시간을 결정할 수 있다.
제1 미리정해진 제1 유형 픽처부 내의 연결 플래그가 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인이 발생하지 않았음을 나타내는 경우, 제거할 시간은 제1 미리정해진 제1 유형 픽처부(23b')의 제1 타이밍 정보(95)에 기초하여 결정될 수 있다.
제1 미리정해진 제1 유형 픽처부 내의 연결 플래그(96)가 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인이 발생했음을 나타내는 경우, 제거할 시간은 제1 미리정해진 제1 유형 픽처부(23b')의 제2 타이밍 정보(95), 예를 들어 initial_removal_delay, 및 제1 미리정해진 제1 유형 픽처부의 제3 타이밍 정보(98)에 기초하여 결정될 수 있다.
선택적으로, 장치는 폐기 불가능한 픽처부의 가장 최근의 CPB 제거 + 제1 미리정해진 제1 유형 픽처부의 제3 CPB 제거 시간과, 제1 미리정해진 제1 유형 픽처부 + 제2 CPB 시간 - 최종 CPB 도착과 미리정해진 픽처부(23a')의 CPB 제거 사이의 시간적 차이(trm#-taf#)가 뒤따르고 이에 인접하는 미리정해진 픽처부(23a')의 CPB 제거 사이의 최대치를 결정함으로써 이를 수행할 수 있다. 그 후, 이 시간은 CPB로부터 제1 미리정해진 제1 유형 픽처부(23b')를 제거하는 데 사용될 수 있다.
또한, 본 실시예에 따르면, 14c를 산출하기 위해 여기서는 14a 및 14b인 2개의 비디오 데이터 스트림을 함께 스플라이싱하기 위한 장치를, 즉 도 25에 도시된 장치를, 설명한다. 각각은 픽처부(23a,b)의 시퀀스를 포함하도록 전술한 설명된 바와 같으며, 각 픽처부는 인코딩된 비디오(12a,b)의 픽처(12a,b)를 갖는다.
픽처부는 또한 전술한 바와 같으며, 제1 및 제2 유형 픽처부, 제1 및 제2 타이밍 정보를 포함한다.
그 후, 제2 비디오 데이터 스트림은 제1 미리정해진 제1 유형 픽처부에 연결 플래그(96) 및 제3 타이밍 정보(98)를 포함할 것이다. 연결 플래그(96)는 제2 비디오 데이터 스트림을 나타내는 제2 상태로 설정되고, 제1 미리정해진 제1 유형 픽처부는 제2 비디오 데이터 스트림을 계속하고, 제3 타이밍 정보는 제1 미리정해진 제1 유형 픽처부에서 제2 비디오 데이터 스트림을 스플라이스-인할 때 CPB 제거 시간을 결정하는 역할을 하는 제1 미리정해진 제1 유형 픽처부의 제3 CPB 제거 시간을 나타내고, 제3 CPB 제거 시간은 폐기 불가능한 픽처부의 가장 최근의 CPB 제거 이후 경과 시간을 측정한다.
그 후, 장치는 제1 비디오 데이터 스트림에서의 스플라이스 포인트 표시(94; 94')가, 예를 들어 RAP가 없는 미리정해진 픽처부에 대해, CPB 도착과 CPB 제거 사이의 시간적 차이가 미리정해진 임계치를 초과하는 것으로 나타내는지 여부를 확인할 수 있어, 동일한 것이 제1 비디오 데이터 스트림이 제2 비디오 데이터 스트림과 스플라이싱되기 전에 마지막 픽처부로서 역할을 할 수 있다.
예를 들어, 일 변형에서, 미리정해진 임계치는 제1 스트림(14a)의 버퍼링 SEI의 intial_removal_delay에 기초하여 또는 max_val_initial_removal_delay_for_seamless_splicing]에 기초하여 결정되었다.
이러한 확인의 결과가 긍정적이면, 즉 "예(yes)"인 경우, 장치는 제2 비디오 데이터 스트림의 제1 미리정해진 제1 유형 픽처부 내의 연결 플래그(96)를 제2 비디오 데이터 스트림이 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인되었음을 나타내는 제1 상태로 설정할 수 있고, 미리정해진 픽처부(26a') 및 제1 미리정해진 제1 유형 픽처부(26b')에서 제1 및 제2 데이터 스트림을 각각 연결하여 스플라이싱된 비디오 데이터 스트림을 획득할 수 있다.
또한, yes인 경우, 장치는 제3 타이밍 정보(98)를 재작성하여, 제2 비디오 데이터 스트림 내에서 대신에, 스플라이싱된 비디오 데이터 스트림 내에서 제1 비디오 데이터 스트림의 폐기 불가능한 픽처부의 가장 최근의 CPB 제거 이후 경과 시간을 측정할 수 있다.
또한, yes인 경우, 장치는 제1 미리정해진 제1 유형 픽처부 이전의 폐기 불가능한 픽처부의 가장 최근의 CPB 제거 이후 경과 시간이 제2 비디오 데이터 스트림과 비교하여 스플라이싱된 비디오 데이터 스트림을 고려할 때 변경되었는지 여부를 더 확인할 수 있고, 그렇다면, 제3 타이밍 정보(98)를 재작성하여 스플라이싱된 비디오 데이터 스트림 내에서 제1 비디오 데이터 스트림의 폐기 불가능한 픽처부의 가장 최근의 CPB 제거 이후 경과 시간을 더 측정할 수 있다.
일반적으로, 장치는 또한 다음의 검사를 확인할 수 있으며 두 검사 모두가 yes를 나타내는 경우 설정 및 연결을 수행할 수 있다.
먼저, 각각의 미리정해진 픽처부 이전의 제1 비디오 데이터 스트림(14a)의 가장 최근의 미리정해진 제1 유형 픽처부의 제2 CPB 제거 시간과 동일하거나 이로부터 결정된 상한이 제2 비디오 데이터 스트림의 제1 미리정해진 제1 유형 픽처부(23b')의 제2 CPB 제거 시간보다 큰지 여부이다.
제1 스트림(14a)의 가장 최근의 미리정해진 제1 유형 픽처부는 일부 도면에서 단순히 해칭으로 도시되어 있다.
가장 최근의 미리정해진 제1 유형 픽처부의 제2 CPB 제거 시간은 가장 최근의 미리정해진 제1 유형 픽처부에 대해 추가된 CPB 공급 지연 시간을 가질 수도 있다. 이는 가장 최근의 미리정해진 제1 유형 픽처부의 제1 비트의 CPB 도착이 지연되어야 하는 경과 시간을 측정한다.
각각의 미리정해진 픽처부는 예를 들어 23a'보다 앞선 일부 도면에서 단순히 해칭된 픽처부이다.
제2 검사는 가장 최근의 미리정해진 제1 유형 픽처부에 표시된 최대 제2 CPB 제거 시간 값(99)이 제2 비디오 데이터 스트림의 제1 미리정해진 제1 유형 픽처부(23b')의 제2 CPB 제거 시간보다 큰지 여부이다.
예를 들어, 일 변형에서 미리정해진 임계치는 제1 스트림의 버퍼링 SEI의 intial_removal_delay일 수 있다. 대안적으로, 임계치는 initial_removal_delay + initial_removal_delay_offset, 즉 CPB 공급 지연 시간이다. 더 나아가, 대안적으로, 두 번째 옵션에서 설명된 바와 같이, 최대 값이 max_val_initial_removal_delay_for_seamless_splicing으로서 전송될 수 있다.
예를 들어, AuCPBRemovalDelta는 원래의 제2 비트스트림(14b)에서 폐기 불가능한 픽처까지의 거리인 원래 값이 스플라이싱된 비트스트림(14c)에서의 거리와 상이한 경우에만 재작성될 필요가 있다.
예를 들어, 두 비트스트림 모두 동일한 프레임레이트를 가지며 디코딩 순서로 도시된 다음의 비트스트림이 연결되는, 즉 스플라이싱되는, 것으로 가정할 수 있다:
제2 비트스트림: RAP1, B0, B1(폐기 불가능), B2, RAP2(splicing_point)
제1 비트스트림: rap1, b0(폐기 불가능), b1, b2, b3, b4
함께 스플라이싱됨:
rap1, b0(폐기 불가능), b1, b2, b3, RAP2(splicing_point)
원래, RAP2의 버퍼링 기간 SEI는 0으로 설정된 concatenation_flag 및 2/framerate와 동일한 AuCPBRemovalDelta를 포함한다.
스플라이싱된 비트스트림에서, concatenation_flag는 1로 설정될 것이고 AuCPBRemovalDelta는 4/framerate와 같을 것이다.
그러나, 스플라이싱된 비트스트림이 rap1, b0(폐기 불가능), b1, RAP2(splicing_point)인 경우, concatenation_flag는 1로 설정되고 AuCPBRemovalDelta는 2/framerate와 같다.
그러므로, 첫 번째 경우에는 AuCPBRemovalDelta를 재작성해야 하지만 두 번째 경우에는 그렇지 않다.
max_val_initial_removal_delay_for_seamless_splicing보다 작은 초기 제거 지연을 포함하는 스플라이싱된 스트림의 경우, 픽처 타이밍 SEI에서의 플래그가 그렇다고 하면 끊김 없는 스플라이스를 달성할 수 있다. 스플라이싱된 스트림의 초기 제거 지연이 더 높으면, 분명히 스플라이싱 가능한지 여부를 아는 것은 불가능하다.
위의 실시예는 폐기 불가능한 지점에서 스플라이싱을 가능하게 하는 문제와 관련된 반면, 다음의 설명은 DRAP와 같은 제거 가능한 픽처부에 대해 이용 가능한 제거 시간을 이용 가능하게도 하는 방법의 문제에 관한 것이다. 특히, 후속 실시예는 일부 AU의 드롭핑이 수행된 경우에 대한, 예를 들어 랜덤 액세스가 수행되거나 스플라이싱 작동이 수행될 때 개방 GOP 구조에 대한 RASL 픽처의 경우에 대한, 타이밍 정보(제거 시간)를 제공하는 것에 관한 것이다. 다시 말해서, 제거 시간이 종속 랜덤 액세스 포인트, DRAP, 픽처에도 적용 가능한지 여부이다.
여기서, 아이디어는 RAP의 버퍼링 기간 SEI의 initial_removal time을 수정하는 것이다. 이하, 상이한 경우를 논의하고 AU 제거 시간의 예를 제공한다.
도 1은 본 출원에 따른 발명의 개념을 도시하고 있다. 내부에 인코딩된 비디오(12)를 갖는 비디오 데이터 스트림이 도시되어 있고, 이러한 비디오 데이터 스트림은 비디오 데이터 스트림(14)의 완전 버전(15)을 버퍼링할 경우 디코더 측에서 적용될 제1 CPB 제거 시간(trm (1))에 대한 제1 타이밍 정보(16), 및 비디오 데이터 스트림의 완전 버전으로부터 비디오 데이터 스트림의 부분(24)의 제거(22)에 의해 비디오 데이터 스트림과 상이한 비디오 데이터 스트림(14)의 축소 버전(20)을 버퍼링하기 위해 디코더 측에서 적용될 제2 CPB 제거 시간(trm (2))에 대한 제2 타이밍 정보(18)를 포함한다.
선택적으로, 제2 타이밍 정보(18)는 제1 CPB 제거 시간(trm (1))을 수정하는 방법에 대한 타이밍 수정 정보를 통해 제2 CPB 제거 시간(trm (2))을 정의하여 제2 CPB 제거 시간(trm (2))을 산출한다. 이러한 타이밍 수정 정보의 예는 예를 들어 init_removal_delay_correction_offset이다.
더 나아가, 제1 타이밍 정보(16)는 픽처 단위로 그리고 디코딩 순서(26)에서 선행하는 표시된 픽처에 대한 증분을 통해 제1 CPB 제거 시간(trm (1))을 픽처에 시그널링할 수 있다.
증분은 예시적으로 AuCPBRemovalDelay 또는 au_cpb_removal_delay_minus1에 의해 시그널링될 수 있다. 표시된 픽처는 예를 들어 클린 랜덤 액세스 포인트인 CRA에 있고 버퍼링 기간 SEI를 포함하는 픽처가다. 통상적으로, 이러한 픽처는 RAP 픽처가지만 필수적인 다른 픽처, 예를 들어 시간적 계층 0 픽처일 수도 있다.
다시 말해서, 비디오 데이터 스트림의 각 픽처부(23)는 코딩 순서(26)를 따라 해당 픽처부에 선행하는 픽처부(23)를 갖는 RAP 픽처에 대한 CPB(48)로부터의 제거의 지연을 측정하는 증분을 포함한다. 픽처부(23)는 HEVC의 경우에서와 같이 액세스 유닛인 AU로도 불리운다.
선택적으로, 표시된 픽처는 표시된 픽처와 관련된 픽처부 내의 비디오 데이터 스트림에서 버퍼링 기간 메시지를 통해 표시된다.
더 나아가, 비디오 데이터 스트림을 디코딩하는 비디오 디코더(44)의 CPB(48)를 관리하기 위한 장치(46)는 부분이 비디오 데이터 스트림에 포함되는 경우에 제1 타이밍 정보(16)에 따라, 그리고 부분(24)이 제거된 경우에 제2 타이밍 정보(18)에 따라 CPB를 관리할 수 있다.
도 5는 완전한 비트스트림을 도시하고 있다. 클린 랜덤 액세스 포인트인 CRA의 초기 제거 시간은 8이다.
도 7에서, RASL 픽처는 제거된다. CRA의 초기 제거 시간은 7이다. 다음 픽처의 제거 시간은 이전 경우에 비해 4의 델타 오프셋을 갖는다.
도 6은 제거된 RASL 픽처 및 DRAP인 TRAIL4까지의(하지만 이는 제외) TRAIL(통상적 트레일링) 픽처를 도시하고 있다. CRA의 초기 제거는 이 시점에서 11이므로 CPB 레벨은 비트스트림이 처음부터 있었던 것과 동일하다.
한 가지 옵션은 드롭핑 프레임의 다양한 가능성에 대한 대체 타이밍을 추가하는 것이다. 즉, 하나는 RASL 픽처를 제거하기 위한 것, 제1 DRAP까지 제거하기 위한 것, 제2 DRAP까지 제거하기 위한 것 등이 있다.
그러나, 이는 버퍼링 기간 SEI의 크기를 증가시킬 것이고, 이 경우, 즉 RASL이 제거되었는지, 모든 AU가 제1 DRAP까지, 모든 AU가 제2 DRAP까지 적용되는지 등을 수신기에 나타낼 필요가 있을 것이다. 이는 SEI로 수행될 수 있다.
그러나, 버퍼링 SEI가 적절하게 작성될 수 있도록 모든 DRAP에 대해 인코딩을 수행해야 하므로, 인코더/송신기 측에서 추가 지연이 발생할 것이다.
대안적으로, 버퍼링 SEI 메시지에 단일 값이 표시되고, 이는 후속 SEI에 의해, 예를 들어 다음의 제거되지 않은 AU의 픽처 타이밍 SEI 메시지에 의해, 수정될 수 있다. 그 후, AU의 제거가 수행될 때, 플래그 aus_since_rap_removed_flag만 설정하면 된다. 이에 대한 일 예는 도 8에서 볼 수 있다.
그 내부에서, 전술한 도면과 조합하여, 제2 타이밍 정보(18)가, 제1 미리정해진 픽처 CRA에 관한 그리고 비디오 데이터 스트림 내의 부분(24')에 선행하는 비디오 데이터 스트림의 제1 픽처부(28')에 대한 제1 타이밍 정보에 의해 표시된, 제1 CPB 제거 시간(trm (1))을 수정하는 방법에 대한 제1 타이밍 수정 정보(19)를 통해 또는 제1 CPB 제거 시간(trm (1))을 대체하기 위한 제1 타이밍 대체 정보를 통해 제2 CPB 제거 시간(trm (2))을 정의하여 제1 픽처부(28')에 대한 제2 CPB 제거 시간(trm (2))을 산출할 수 있음을 알 수 있다.
제1 타이밍 수정 정보(19)는 예를 들어, init_removal_delay_correction_offset에 의해 시그널링될 수 있다.
더 나아가, 제1 타이밍 수정 정보(19) 또는 제1 타이밍 대체 정보는 비디오 데이터 스트림 내의 부분(24')을 뒤따르며 제2 미리정해진 픽처 TRAIL1와 관련된 비디오 데이터 스트림의 제2 픽처부(30') 내의 비디오 데이터 스트림에서 시그널링된다.
SEI 메시지가 또한 CPB에서 버퍼링되는 것으로 처리될 수 있어, 제1 및 제2 타이밍 정보를 결정할 때 고려되어야 할 수 있음을 유의한다. 제1 및 제2 타이밍 정보는 포함되는 제1 및 제2 타이밍 정보를 전달하는 SEI 메시지에 대해 한 번만 그리고 드롭핑되는 SEI 메시지에 대해 한 번만 계산 및 전달될 수 있다.
또한, 선택적으로, 제2 픽처부는 그 부분이 제거되었는지 여부를 나타내는 신호화(32)를 포함할 수 있다.
제1 타이밍 수정 정보(19) 또는 제1 타이밍 대체 정보는 그 부분이 제거되었음을 나타내는 신호화(32) 또는 그 부분이 제거되지 않았음을 나타내는 신호화(32)와 상관없이 비디오 데이터 스트림에서 시그널링될 수 있다.
제1 미리정해진 픽처는 표시된 픽처일 수 있다, 예를 들어 인트라 랜덤 액세스 포인트인 IRAP 또는 종속 랜덤 액세스 포인트인 DRAP 픽처일 수 있고, 즉 이는 위에서 상세히 설명된 바와 같이 타이밍 레퍼런스로서 역할을 한다.
또한, 제2 미리정해진 픽처는 TRAIL 또는 DRAP 픽처일 수 있다.
더 나아가, 제2 타이밍 정보(18)는, 제3 미리정해진 픽처와 관련되고 비디오 데이터 스트림 내의 부분(24')을 뒤따르고 제2 CPB 픽처부(28')를 포함하는 비디오 데이터 스트림의 하나 이상의 제3 픽처부(31')의 세트에 대해 제1 타이밍 정보에 의해 표시된 제1 CPB 제거 시간(trm (1))을 수정하는 방법에 대한 제2 타이밍 수정 정보(21)를 통해 제2 CPB 제거 시간(trm (2))을 추가로 정의하여 하나 이상의 제3 픽처부(30')의 세트에 대한 제2 CPB 제거 시간(trm (2))을 산출할 수 있고, 제2 타이밍 수정 정보(21)는 제2 픽처부(30') 내의 비디오 데이터 스트림에서 시그널링될 수 있다.
제2 타이밍 수정 정보(21)는 예를 들어 cpb_removal_delay_ offset에 의해 시그널링될 수 있다.
제2 픽처부는 그 부분이 제거되었는지 여부를 나타내는 신호화(32)를 포함할 수도 있고, 제2 타이밍 수정 정보(21)는 그 부분이 제거되었음을 나타내는 신호화(32) 또는 그 부분이 제거되지 않았음을 나타내는 신호화(32)와 상관없이 비디오 데이터 스트림에서 시그널링될 수 있다.
비디오 데이터 스트림의 하나 이상의 제3 픽처부(31')의 세트가 표시된 픽처와 관련된 제4 픽처부까지 연장되는 것은 옵션이다. 그 내부에서 표시된 픽처는 타이밍 레퍼런스를 위한 시작 포인트로서 역할을 할 수 있다.
최종적으로, 표시된 픽처는 표시된 픽처와 관련된 픽처부 내의 비디오 데이터 스트림에서 버퍼링 기간 메시지를 통해 표시될 수 있다.
DRAP에 대해 표시된 경우, CRA의 초기 제거는 전체 비트스트림을 고려할 때 8 대신 11이 되므로, CPB 충전 레벨이 원래의 경우에서보다 높다는 점에 유의한다. 이는 잠재적인 문제 및 버퍼 오버플로우를 야기할 수 있다.
또 다른 옵션은 (DRAP의 경우에) CPB로부터의 제거 시간이 모든 프레임에 대해 등거리가 아닌 것을 가능하게 하는 것일 수 있다. 보다 구체적으로, RAP 및 DRAP의 경우, 비등거리 거리를 가질 수 있고 다른 모든 AU의 경우에 yes이다.
이 경우, RAP의 버퍼링 기간 SEI 메시지는 전체 비트스트림에 대한 또는 RASL이 제거될 때와 DRAP 경우에 대한 두 타이밍을 가질 수 있다. 두 번째 경우에 RAP가 출력되지 않기 때문에, RAP의 제거 시간은 RAP의 최종 도착 시간이 제거 시간과 동일하도록 이루어질 수 있다. 그 후, DRAP AU는 버퍼를 원하는 레벨까지 구축하는 제2 제거 시간을 가질 것이다. 이러한 경우, RAP의 최종 도착 시간은 두 CBR 및 VBR 경우 모두에서 DRAP의 가장 빠른 도착 시간이다. 설명된 해결책은 도 9에 예시되어 있다.
예시적인 시그널링 신택스는 도 10 및 도 11에 도시되어 있다.
일 실시예에서, 제2 타이밍 정보(18)는 제3(33) 또는 제4(35) 타이밍 대체 정보를 수정하는 방법에 대한 제3(33) 및/또는 제4(35) 타이밍 수정 정보를 통해, 또는 제3(33) 또는 제4(35) 타이밍 대체 정보를 통해 제2 CPB 제거 시간(trm (2))을 정의할 수 있다.
제3 타이밍 수정/대체 정보(33)는 제1 미리정해진 픽처인 CRA와 관련되고 비디오 데이터 스트림 내의 부분(24'')에 선행하는 비디오 데이터 스트림의 제1 픽처부(28')에 대해 제1 타이밍 정보에 의해 표시된 제1 CPB 제거 시간(trm (1))을 수정하거나 대체하는 방법에 대한 것으로 제1 픽처부(28')에 대한 제2 CPB 제거 시간(trm (2))을 산출한다.
제3 타이밍 수정/대체 정보(33)는 예를 들어 drap_operation_initial_removal_delay에 의해 시그널링될 수 있다. cpb_drap_operation_removal_offset은 도착 시간과, 즉 특정 픽처부가, 즉 버퍼링 SEI 메시지를 통해 표시된 픽처부가, CPB에 들어가거나 이에 공급되는 시간과, 관련이 있음을 또한 유의해야 한다. 공급은 본 출원에서 설명된 바와 같이 CPB를 관리하기 위한 장치와 상이한 장치의 책임에 속할 수 있다. 도착 시간을 준수하는 것은 전송 중간 네트워크 노드에 달려 있을 수 있다.
제4 타이밍 수정/대체 정보(35)는 제3 미리정해진 픽처와 관련되고 비디오 데이터 스트림 내의 부분(24'')을 뒤따르는 비디오 데이터 스트림의 하나 이상의 제3 픽처부(31'')의 세트에 대해 제1 타이밍 정보에 의해 표시된 제1 CPB 제거 시간(trm (1))을 수정하거나 대체하는 방법에 대한 것으로, 하나 이상의 제3 픽처부(30'')의 세트에 대한 제2 CPB 제거 시간(trm (2))을 산출한다.
제4 타이밍 수정/대체 정보(35)는 예를 들어 cpb_drap_operation_removal_delay_offset에 의해 시그널링될 수 있다.
일반적으로, 또한 비디오 디코더의 CPB(48)를 관리하기 위한 장치(46)는 위에서 상세히 설명된 수정 또는 대체를 수행할 수 있다.
선택적으로, 제3 타이밍 수정/대체 정보(33)는 비디오 데이터 스트림의 제1 픽처부(28') 내의 비디오 데이터 스트림에서 시그널링될 수 있고, 제4 타이밍 수정/대체 정보(35)는 하나 이상의 제3 픽처부의 세트 중에서 코딩 순서(26)의 관점에서 앞서는 비디오 데이터 스트림의 제2 픽처부(30'') 내의 비디오 데이터 스트림에서 시그널링될 수 있다.
더 나아가, 제1 픽처부(28')는 제1 및 제2 픽처부의 제2 CPB 제거 시간 사이의 거리가 제2 및 제3 픽처부의 연속 쌍의 제2 CPB 제거 시간 사이의 거리로부터 벗어날 수 있는지 여부를 나타내는 신호화(36)를 포함할 수 있고, 제3 타이밍 수정 정보(33) 또는 제3 타이밍 대체 정보(33)는 제1 및 제2 픽처부의 제2 CPB 제거 시간 사이의 거리가 제2 및 제3 픽처부의 연속 쌍의 제2 CPB 제거 시간 사이의 거리로부터 벗어날 수 있는지를 나타내는 신호화(36)에 따라 조건부로 비디오 데이터 스트림의 제1 픽처부(28') 내의 비디오 데이터 스트림에서 시그널링된다.
비디오 인코더는 제2 미리정해진 픽처가 RAP인 제1 미리정해진 픽처를 참조하는 DRAP인지 여부를 확인하고, 제2 미리정해진 픽처가 RAP인 제1 미리정해진 픽처를 참조하는 DRAP인지 여부를 나타내도록 신호화(36)를 설정하고, 제2 미리정해진 픽처가 RAP인 제1 미리정해진 픽처를 참조하는 DRAP인 경우에 비디오 데이터 스트림의 제1 픽처부(28') 내의 비디오 데이터 스트림에서 제3 타이밍 수정/대체 정보(33)를 인코딩할 수 있다.
일반적으로, pic_timing SEI 메시지 내의 au_cpb_removal_delay_minus1이 연속적인 픽처부 사이에서 지속적으로 증가함을, 즉 동일한 거리를 두고 지속적으로 증가함을, 유의한다. 그러나, 제1 픽처부(28')로 코딩된 픽처를 생략하거나 제시하지 않거나 출력하는 경우, 이들은 실제로 출력되는 픽처가므로, 규칙적인 시간적 거리가 DRAP까지 중단된 후 그 다음부터 유효하다면 허용될 수 있다. 다시 말해서, 예시에서, pic_timing SEI 메시지 내의 au_cpb_removal_delay_minus1은 동일한 거리를 두고 지속적으로 증가한다. 통상적으로, 이러한 경우가 있지만 그렇지 않은 경우가 금지되지는 않는다. 예시는 이것이 원래 제거되지 않은 전체 비트스트림의 경우인 사례를 보여준다. 그러나, RAP와 DRAP 사이의 모든 것을 제거할 때, 더 이상 그렇지 않지만, DRAP 기능을 사용하는 경우에 RAP가 출력되거나 전혀 도시되지 않기 때문에 괜찮다.
더 나아가, 제2 픽처부(30'')는 그 부분(24')이 제거되었는지 여부를 나타내는 신호화(38)를 포함할 수 있다.
본 발명에 따른 비디오 디코더(44)의 CPB(48)를 관리하기 위한 장치(46)는 신호화(32; 38)의 점검 후에 비디오 데이터 스트림의 제1 픽처부의 제거를 지연시킬 수 있다.
대안적으로, 본 발명에 따른 비디오 데이터 스트림을 전달하기 위한 네트워크 노드(42)는 그 부분이 비디오 데이터 스트림으로부터 제거되었음을 나타내도록 신호화(32; 36)를 설정할 수 있다.
네트워크 노드(42)는 또한 비디오 데이터 스트림으로부터 비디오 데이터 스트림의 부분(24)을 제거할 수 있다, 즉 드롭할 수 있다.
도 5에서 알 수 있는 바와 같이, 선택적으로, 제2 타이밍 정보는 제2 CPB 제거 시간을 정의할 수 있어, 비디오 데이터 스트림 내의 부분에 선행하는 비디오 데이터 스트림의 제1 픽처부, 그 부분 및 제1 CPB 제거 시간에 따라 제2 픽처부의 버퍼 제거를 수행할 때 비디오 데이터 스트림 내의 부분 뒤의 비디오 데이터 스트림의 제2 픽처부를 버퍼링한 후 디코더 측에서 그 자체를 나타내는 디코더 측의 제1 CPB 충전 레벨(39a'; 39a'')은 그 부분이 버퍼링되지 않은 상태에서 제2 CPB 버퍼 시간에 따라 제2 픽처부의 버퍼 제거를 수행할 때 비디오 데이터 스트림의 제1 및 제2 픽처부를 버퍼링한 후 디코더 측에서 그 자체를 나타내는 디코더 측의 제2 CPB 충전 레벨(39b'; 39b'')과 동일하다.
비디오 인코더는 비디오 데이터 스트림이 전술한 바를 따르도록 제1 및 제2 타이밍 정보를 설정할 수 있다.
보다 일반적으로, 제2 타이밍 정보는 하나 이상의 RASL 픽처의 시퀀스에 관한 부분에 대해 또는 특정 DRAP에 선행하는 픽처의 시퀀스에 관한 부분에 대해 제2 CPB 제거 시간을 정의할 수 있다.
또한, 비디오 데이터 스트림은 그 부분이 제거되었는지 여부를 나타내는 신호화(32, 35)를 포함할 수 있다.
랜덤 액세스에 사용되는 DRAP의 오프셋은 다음 AU의 제거 시간 계산에서 사용될 것이다. 분명히, 픽처 타이밍 SEI 메시지에서 오프셋을 나타내는 것에 대안적으로, DRAP가 버퍼링 기간 SEI 메시지를 포함하고 이러한 오프셋이 버퍼링 기간 SEI 메시지에 표시되도록 명령될 수 있다.
후속적으로 설명되는 실시예가 관련된 문제는 시간적 확장성 및 이러한 코딩 환경에서 픽처 타이밍 SEI 및 버퍼링 기간 SEI 메시지에서 픽처 버퍼 타이밍에 관한 정보를 나타내는 방법의 문제이다. 따라서, 픽처 타이밍 SEI 메시지 및 버퍼링 기간 SEI 메시지에서 시간적 확장성을 위한 픽처의 대안 정보를 참조하는 실시예를 설명한다. 픽처 타이밍 SEI 메시지 및 버퍼링 기간 SEI 메시지의 시간적 확장성을 위해 픽처의 대체 정보를, 즉 픽처 타이밍 SEI 메시지의 타이밍에 대한 오프셋을 사용하는 정보를, 참조하는 실시예의 제시로 시작한다.
도 12 내지 도 14는 상이한 프레임레이트가 동일한 비트스트림(즉, 시간적 확장성)으로 제공될 때 제거 시간 값의 일부 예를 도시하고 있다.
도 17의 표는 프레임 "청색"에 대한 deltaTimes이 0, 1/60, 3/120, 2/60 및 6/120임을 보여준다. "적색 프레임"의 경우, 3/120 및 6/120. 청색 프레임은 30, 60 및 120 fps 값을 포함하는 표의 해당 라인으로 지칭된다. 적색 프레임은 60 및 120 fps에 대한 값만 포함하고 30 fps에 대해서는 해당 없음을 포함하는 표의 해당 라인으로 지칭된다.
최고의 프레임레이트가 도 16에 도시된 개방 GOP의 경우, 다음이 적용되며 이는 도 15에도 도시되어 있다. 도 15의 표에서, 프레임 "청색"에 대한 deltaTimes이 0, 1/60 및 3/120임을 알 수 있다. "적색 프레임"의 경우, 1/120 및 2/120. 다시, 청색 프레임은 30, 60 및 120 fps 값을 포함하는 표의 해당 라인으로 지칭된다. 적색 프레임은 60 및 120 fps에 대한 값만 포함하고 30 fps에 대해서는 해당 없음을 포함하는 표의 해당 라인으로 지칭된다.
요약하면, 상이한 프레임레이트에 대한 제거 시간의 deltaTimes에서 인코딩된 비트스트림의 GOP 구조로 인해 반복되는 일부 패턴이 있다.
설명된 패턴이 중단되기 때문에 고려해야 할 또 다른 양태는 장면 컷이다. 장면 컷의 위치가 다르면 값이 달라질 것이다. 단순화를 위해 도 18에는 하나의 위치만을 도시하고 있다.
도 19의 표에서 알 수 있는 바와 같이, 장면 컷의 영향을 받는 GOP는 패턴을 따르지 않음을 분명히 알 수 있다.
도 20은 상이한 프레임레이트(즉, 타겟 TemporalIds)에 대한 상이한 값을 포함하는 픽처 타이밍 SEI 메시지를 참조하는 예시적인 시그널링 구조를 도시하고 있다.
도 14에 도시된 일 실시예에서, 비디오 데이터 스트림은 비디오의 픽처(12)가 상이한 계층적 레벨(50i)의 픽처로 그룹화되도록 시간적으로 확장 가능한 방식으로 시간적 상호 예측을 사용하여 픽처의 그룹(50) 단위로 코딩되며, 각 계층적 레벨의 경우, 각각의 계층적 레벨의 모든 픽처는 각각의 레벨 또는 하위 계층적 레벨의 픽처에만 의존한다. 도면에서, 하나의 GOP의 시작부만이 도시되어 있다.
또한, 부분(24)은 최고의 계층적 레벨(503)에 또는 최고의 계층적 레벨(503) 및 계층적 순서(52)에서 최고의 계층적 레벨(503) 바로 아래의 최저의 계층적 레벨(501)을 제외한 하나 이상의 계층적 레벨(502)에 속하는 픽처로 구성된다.
그 후, 제1 타이밍 정보(16)는 픽처 단위로 그리고 디코딩 순서에서 현재의 픽처 그룹의 선행 표시된 픽처(53)에 대한 증분을 통해 제1 CPB 제거 시간(trm (1))을 픽처에 시그널링할 수 있다. 이러한 순서는 픽처가 레이블링된 것을 사용되는 분수 값의 순차적 순서로 표시된다.
다시, 증분은 예시적으로 AuCPBRemovalDelay 또는 au_cpb_removal_delay_minus1에 의해 시그널링될 수 있다. 현재 GOP는 각각의 픽처가 일부인 GOP의 리딩 픽처에 대한 픽처가다.
더 나아가, 표시된 픽처는 표시된 픽처와 관련된 픽처부 내의 비디오 데이터 스트림에서 버퍼링 기간 메시지를 통해 표시될 수 있다.
일 실시예에서, 제2 타이밍 정보(18)는 최고의 계층적 레벨 이외의 하나 이상의 계층적 레벨과 연관된 제5 픽처(54)와 관련된 비디오 데이터 스트림의 제5 픽처부(23) 각각 내의 비디오 데이터 스트림에서 시그널링되는 제5 타이밍 수정 정보(19) 또는 대체를 위한 제5 타이밍 대체 정보(19)를 통해 제2 CPB 제거 시간(trm (2))을 정의할 수 있다.
제5 타이밍 수정 정보(19)는 예를 들어 au_cpb_removal_pattern_offset에 의해 시그널링될 수 있고, 제5 타이밍 대체 정보(19)는 예를 들어 au_cpb_removal_delay_minus1[i]에 의해 시그널링될 수 있고, i는 pic_timing에 대한 픽처가 전송되고 속하는 현재의 계층적 레벨과 동일하지 않다.
제5 타이밍 수정/대체 정보(19)는 각각의 제5 픽처부(23)에 대해 제1 타이밍 정보에 의해 표시된 제1 CPB 제거 시간(trm (1))을 수정하거나 대체하는 방법에 대한 것으로, 제5 픽처부(23)에 대한 제2 CPB 제거 시간(trm (2))을 산출한다.
제1 타이밍 정보는 예를 들어 au_cpb_removal_delay_minus1[i]에 의해 시그널링될 수 있고, i는 pic_timing에 대한 픽처가 전송되고 속하는 현재의 계층적 레벨과 같거나 au_cpb_removal_delay_minus1이다.
부분(24)이 각각의 계층적 레벨 위의 각각의 계층적 레벨에 이르기까지 최고의 계층적 레벨을 포함하는 경우, 제5 타이밍 수정/대체 정보(19)는 최고 및 최저의 계층적 레벨, 즉 도시된 예에서 501 및 502, 사이의 계층적 레벨마다, 그리고 각각의 계층적 레벨 위에 있는 최고 및 최저의 계층적 레벨, 즉 도시된 예에서 502 및 503의 경우 503 및 501의 경우 502, 사이의 각 계층적 레벨에 대해 시그널링된다. 일 예로서, 숫자는 buffering_period_pattern_flag가 1인 경우에 num_sub_layer_cpb_removal_delays_minus1로 표시되고, buffering_period_pattern_flag가 0인 경우에 num_sub_layer_cpb_removal_delays_minus1+1로 표시된다.
도 21 및 도 22는 예시적인 시그널링 구조를 도시하고 있으며, 대안적으로 패턴은 각 버퍼링 주기 SEI 내에서 정의될 수 있고 이들은 픽처 타이밍 SEI 메시지에 표시될 수 있다. 전술한 바와 같이, 예를 들어 장면 컷의 이유로, 패턴을 적용할 수 없을 때, 값은 명시적으로(또는 일부 오프셋 형태로) 시그널링될 수 있다.
본 실시예에 따르면, 제2 타이밍 정보(18)는 제5 타이밍 수정 정보(19)를 통해, 예를 들어 au_cpb_removal_pattern_offset를 통해, 제2 CPB 제거 시간(trm (2))을 정의한다. 제5 타이밍 수정 정보(19)는 오프셋 값을 통해 제1 CPB 제거 시간을 수정하는 방법을 나타내고, 비디오 데이터 스트림은 하나 이상의 픽처 그룹에서 제1 CPB 제거 시간을 수정하기 위한 제5 수정 정보에 의해 표시된 오프셋 값에 의해 가정되는 대표 오프셋 값의 목록을 나타내는 데이터(60)를 포함한다. 그 후, 제5 타이밍 수정 정보(19)는 대표 오프셋 값의 목록을 가리키는 포인터를 통해 오프셋 값을 시그널링한다.
보다 일반적으로, 위의 실시예에서, 비디오 데이터 스트림은 부분(24)에 의해, 즉 그 결과 축소된 버전(20)에 의해, 감소되고, 비디오 데이터 스트림은 제1 및 제2 타이밍 정보(18)를 포함한다. 다시 말해서, 제2 타이밍 정보는 내포되지 않고 일부 중간 네트워크 장치에서 특정 계층적 레벨을 드롭핑하는 경우에 대응하는 제1 타이밍 정보를 대체하도록 내포되지 않는다. 오히려, 제1 및 제2 타이밍 정보는 변경되지 않고, 디코더 측에서, 비디오 데이터 스트림에서 전송된 시그널링에 따라 CPB 처리에 사용되고 어느 부분이 제거되었는지 또는 더 정확하게는 이전의 최고의 계층적 레벨 중 어느 부분이 제거/드롭핑되었는지를 설명하는 중간 네트워크 장치로 설정되기 위해 올바른 타이밍 정보가 선택된다.
픽처 타이밍 SEI 메시지 및 버퍼링 기간 SEI 메시지에서 시간적 확장성을 위해 픽처의 대안 정보를 참조하는 실시예에 대한 다른 예는 버퍼링 기간 SEI 메시지에서의 델타이다.
도 23에서 알 수 있는 바와 같이, vcl_initial_cpb_removal_delay[i] 및 vcl_initial_cpb_removal_offset[i]의 상이한 값은 단일 값이 모든 가능한 프레임레이트에 충분하지 않을 수 있으므로 버퍼링 기간 SEI 메시지에도 분명히 표시되어야 한다.
다른 실시예는 다수의 비트레이트 고려사항을 참조한다. 전술한 바와 같이, 상이한 전송 속도 또는 CPB 공급 속도를 지원하는 현재 방식은 Bitrates, CPBsizes 및 각각의 초기 제거 시간 및 오프셋에 대한 여러 값을 나타내는 것이다.
이러한 현재의 해결책과 관련된 문제는 모든 잠재적인 CPB 공급 비트레이트를 미리 알아야 하고 인코더에서의 속도 제어는 제공된 정보가 유효한지 확인하기 위해 모든 정보를 고려해야 한다는 점이다.
이를 통해 언급된 파라미터가 여러 방식으로 변경될 수 있는 높은 유연성이 어느 정도 가능하지만, 일부 실제 시나리오에서 많은 잠재적 CPB 공급 속도를 고려하는 것이 전송 측으로부터 바람직할 수 있지만 인코더 측에서는 구현하기 어려울 수 있다. 이러한 상황에서, HRD 모델의 일부 파라미터화가 수행되는 경우 "상당히" 제한적인 속도 제어가 도움이 될 수 있고, 이는 maxBitrate 및 minBitrate의 두 극단이 고려되고 그 사이의 임의의 것이 선형으로 보간될 수 있음을 의미한다. 이러한 해결책은 HRD 모델링 측면에서 유연한 해결책보다 더 제한적일 것이지만, 전송 측에서 maxBitrate와 minBitrate 사이의 임의의 속도를 사용할 수 있게 하고 여전히 최대 및 최소 값에 대해 시그널링된 값에 기초하여 계산될 수 있는 CPBsizes 및 초기 제거 시간으로 언더플로우 또는 오버플로우가 없는지를 확인할 것이다.
hrd_parameters는 세 부분으로 분할된다.
ㆍ
cbr_parameters_present_flag
ㆍ
vbr_min_parameter_present_flag
ㆍ
vbr_max_parameter_present_flag
vbr_min_parameter_present_flag 및 vbr_max_parameter_present_flag에 대해 제공된 둘 사이의 임의의 다른 비트레이트를 계산할 수 있다. 예시적인 시그널링은 도 24a, 도 29 및 도 30에 도시되어 있다.
유사하게, 버퍼링 기간 SEI 메시지는 도 24b 및 도 31에 도시된 바와 같이 hrd_parameters에도 존재하면 CBR, 최소 및 최대에 대한 값을 포함할 것이다.
이에 따르면, 제1 HRD 타이밍 정보 데이터, 제2 HRD 타이밍 정보 데이터 또는 복수의 HRD 타이밍 정보 데이터 중 임의의 데이터, 및 각 HRD 타이밍 정보 데이터와 같은 HRD 타이밍 정보 데이터는 다음 중 하나 이상을 포함한다:
-
각각의 HRD 타이밍 정보가 관련된 CPB 공급 비트레이트의 표시(104),
-
각각의 HRD 타이밍 정보가 관련된 각각의 CPB 공급 비트레이트에 대한 CPB 크기 필요성의 표시(106),
-
각각의 HRD 타이밍 정보가 관련된 각각의 CPB 공급 비트레이트에 대한 각각의 표시된 픽처부의 제1 비트의 CPB 도착 이후 경과 시간을 측정하는, 비디오 데이터 스트림의 표시된 픽처부의 각각에 대한 CPB 제거 시간의 표시(108), - 여기서 표시된 픽처부는 각각 RAP와 같은 버퍼링 주기 SEI를 갖는 부분으로, 다른 관련 도면에서는 십자 해칭으로 도시되지만, 다른 관련 도면에서는 단순 해칭된 것과 같은 다른 픽처임,
-
각각의 표시된 픽처부의 제1 비트의 CPB 도착이 각각의 HRD 타이밍 정보가 관련된 각각의 CPB 공급 비트레이트에 대해 지연될 경과 시간을 측정하는, 비디오 데이터 스트림의 표시된 픽처부의 각각에 대한 CPB 공급 지연 시간의 표시(110).
최소 값과 최대 값이 있으면, 그 사이의 임의의 값은 예를 들어 최소 값과 최대 값의 선형 보간으로 이어질 것이다.
여전히, 일부 경우에 HRD 모델을 선형 보간 모델로 제한하지 않는 추가 유연성이 바람직할 수 있기 때문이다(예를 들어, initial_removal_delay 축소 및 비선형적으로 Bitrate 증가). 그러므로, 시나리오에 따라, 인코더는 선형 보간을 사용하는 모드 또는 다수 값을 사용하는 모드 중에서 사용할 모드를 선택할 수 있다. 예시적인 시그널링은 도 32, 도 33 및 도 34에 도시되어 있다.
도 24, 도 29, 도 31, 도 32 및 도 34에 도시된 바와 같이, 비디오 스트림은 최소 CPB 공급 비트레이트에 관한 제1 HRD 타이밍 정보 데이터(70a,b), 및 최대 CPB 공급 비트레이트에 관한 제2 HRD 타이밍 정보 데이터(72a,b)를 포함할 수 있다. 그 후, 제1 HRD 타이밍 정보 데이터(70a,b) 및 제2 HRD 타이밍 정보 데이터(72a,b)는 제1 및 제2 HRD 타이밍 정보 데이터 사이를 선형으로 보간함으로써 실제 CPB 공급 비트레이트에 대한 제3 HRD 타이밍 정보의 결정을 가능하게 한다. 실제 CPB 공급 비트레이트는 예를 들어 비디오 데이터 스트림이 실제로 CPB에 공급되는 비트레이트이다.
비디오 데이터 스트림은 제1 HRD 타이밍 정보 데이터(70a,b) 및 제2 HRD 타이밍 정보 데이터(72a,b)가 존재하는지 여부를 나타내는 플래그(74), 예를 들어 hrd_interpolation-mode_flag, 또는 CPB 공급 비트레이트의 원하는 세트 각각에 관한 복수의 HRD 타이밍 정보 데이터(76)를 더 포함할 수 있다.
그 후, 비디오 인코더는 비디오 데이터 스트림에 제1 HRD 타이밍 정보(70) 및 제2 HRD 타이밍 정보(72)를 제공하거나 비디오 데이터 스트림에 CPB 공급 비트레이트의 원하는 세트 각각에 관한 복수의 HRD 타이밍 정보 데이터(76)를 제공하기로 결정할 수 있다.
비디오 인코더는 제1 및 제2 HRD 타이밍 정보 사이의 선형 보간이 최소 및 최대 CPB 공급 비트레이트 사이의 모든 CPB 공급 비트레이트에 대해 CPB 오버플로우 및 언더플로우 프리 상황을 초래하는지 여부를 실행 가능성 검사에 기초하여 결정을 선택적으로 수행할 수 있다.
그 후, 비디오 디코더(44)의 CPB(48)를 관리하기 위한 장치(46)는 제3 HRD 타이밍 정보를 사용하여 CPB를 관리할 수 있다.
유사하게, 장치는 비디오 데이터 스트림에서 플래그(74)를, 예를 들어 hrd_interpolation-mode_flag를, 점검할 수 있고, 플래그에 따라, 비디오 데이터 스트림으로부터 제1 HRD 타이밍 정보 데이터(70a,b) 및 제2 HRD 타이밍 정보 데이터(72a,b)의 도출을 수행하거나 비디오 데이터 스트림으로부터 CPB 공급 비트레이트의 원하는 세트의 각각에 관한 복수의 HRD 타이밍 정보 데이터(76)를 도출할 수 있다.
도 38은 3개의 작동 포인트에 대한 일 예를 도시하고 있다.
보간된 경우는 다음의 선형 보간 공식을 사용한다:
-
BRinterpolated= BRmin+(BRmax-BRmin)*alpha
-
INDinterpolated= INDmin+(INDmax-INDmin)*alpha (IND=InitialRemovalDelay 포함)
INDmin(최소의 비트레이트의 경우)은 INDmax(최고의 비트레이트의 경우)보다 크다는 것을 유의한다
도 37은 INDmin을 나타내고, 다음의 약어가 사용된다:
RmD = 제거 지연
Afinal = 도착 시간 최종
ArrivalEar = 프레임레이트로 인한 픽처의 제1 비트의 가장 빠른 도착 가능 시간
ArrivalInit = 픽처의 제1 비트의 실제 도착 시간
최대 CPB 크기가 15임을 알 수 있다.
도 36은 INDmax를 나타낸다. 이러한 두 번째 경우에 필요한 CPB 크기는 12,1125이다.
선형적으로 알파가 0.3인 계산된 초기 제거 지연 및 비트레이트의 경우, 도 35는 이 경우에 필요한 CPB 크기가 13,87912임을 보여준다. 선형 보간이 수행되면, 계산된 CPB 크기는 12,97875에 대응할 것이다. 알 수 있는 바와 같이, 그 값은 다르다.
그러므로, 인코더가 관련된 HRD 파라미터가 최대 및 최소 값 내에서 완전한 유연성으로 선형적으로 도출되어야 한다는 제약을 준수하고 싶다면, 인코더에서의 속도 제어는 보간할 때 CPB 크기 제한이 충족되도록 픽처의 크기를 결정할 때 고려되어야 한다.
이는 항상 가능한 것은 아니므로, 한 가지 옵션은 인코더가 보간이 가능하다고 처리하는 경우에만 시그널링하는 것이고, 그렇지 않은 경우에는 이산적인 수의 작동 포인트에 사용된 실제 값이 무엇이든 시그널링하는 것이다.
전술한 바와 같이, 전술한 개념은 비디오 스트림, 비디오 인코더, 비디오 디코더, 네트워크 노드, 비디오 디코더의 코딩된 픽처 버퍼인 CPB를 관리하기 위한 장치, 및 비디오 데이터 스트림을 함께 스플라이싱하기 위한 장치에 의해 이용될 수 있다.
마찬가지로, 그 개념은 본 발명의 실시예에 따른 대응 방법에 의해 구현될 수 있다. 이러한 방법은 전술한 비디오 스트림, 비디오 인코더, 비디오 디코더, 네트워크 노드, 비디오 디코더의 코딩된 픽처 버퍼인 CPB를 관리하기 위한 장치, 및/또는 비디오 데이터 스트림을 함께 스플라이싱하기 위한 장치와 동일한 고려사항을 기반으로 한다. 그러나, 본 방법이 비디오 스트림, 비디오 인코더, 비디오 디코더, 네트워크 노드, 비디오 디코더의 코딩된 픽처 버퍼인 CPB를 관리하기 위한 장치, 및/또는 비디오 데이터 스트림을 함께 스플라이싱하기 위한 장치와 관련하여 본원에 설명된 특징, 기능 및 세부사항 중 임의의 것에 의해 보완될 수 있음을 유의해야 한다. 게다가, 본 방법은, 개별적으로 및 조합하여 사용되는, 비디오 스트림, 비디오 인코더, 비디오 디코더, 네트워크 노드, 비디오 디코더의 코딩된 픽처 버퍼인 CPB를 관리하기 위한 장치, 및/또는 비디오 데이터 스트림을 함께 스플라이싱하기 위한 장치의 특징, 기능 및 세부사항에 의해 보완될 수 있다.
마지막으로, 개념은 본 발명의 실시예에 따라 인코딩된 데이터 스트림을 생성하는 데 사용될 수도 있다. 데이터 스트림은, 개별적으로 및 조합하여 사용되는, 방법, 비디오 인코더, 비디오 디코더, 네트워크 노드, 비디오 디코더의 코딩된 픽처 버퍼인 CPB를 관리하기 위한 장치, 및/또는 비디오 데이터 스트림을 함께 스플라이싱하기 위한 장치의 특징, 기능 및 세부사항에 의해 보완될 수도 있다.
결론적으로, 본원에 설명된 실시예는 본원에 설명된 임의의 중요한 요점 또는 양태에 의해 선택적으로 보완될 수 있다. 그러나, 본원에 설명된 중요한 요점 및 양태는 개별적으로 또는 조합하여 사용될 수 있고, 개별적으로 및 조합하여 본원에 설명된 임의의 실시예에 도입될 수 있음을 유의한다.
일부 양태를 장치의 맥락에서 설명하였지만, 이러한 양태는 또한 대응하는 방법의 설명을 나타내며, 장치 또는 그 부분은 방법 단계 또는 방법 단계의 특징에 대응한다. 유사하게, 방법 단계의 맥락에서 설명된 양태는 또한 대응하는 장치 또는 장치의 부분 또는 대응하는 장치의 항목 또는 특징의 설명을 나타낸다. 방법 단계의 일부 또는 전부는 예를 들어 마이크로프로세서, 프로그래머블 컴퓨터 또는 전자 회로와 같은 하드웨어 장치에 의해(또는 이를 사용하여) 실행될 수 있다. 일부 실시예에서, 가장 중요한 방법 단계 중 하나 이상이 이러한 장치에 의해 실행될 수 있다.
특정 구현 요건에 따라, 본 발명의 실시예는 하드웨어 또는 소프트웨어로 구현될 수 있다. 이러한 구현은, 각각의 방법이 수행되도록 프로그래머블 컴퓨터 시스템과 협력하는(또는 협력할 수 있는), 전자적으로 판독 가능한 제어 신호가 저장된, 플로피 디스크, DVD, Blu-Ray, CD, ROM, PROM, EPROM, EEPROM 또는 FLASH 메모리와 같은 디지털 저장 매체를 사용하여 수행될 수 있다. 그러므로, 디지털 저장 매체는 컴퓨터 판독 가능할 수 있다.
본 발명에 따른 일부 실시예는 프로그래머블 컴퓨터 시스템과 협력할 수 있는 전자적으로 판독 가능한 제어 신호를 갖는 데이터 캐리어를 포함하여, 본원에 설명된 방법 중 하나가 수행된다.
일반적으로, 본 발명의 실시예는 프로그램 코드를 갖는 컴퓨터 프로그램 제품으로서 구현될 수 있으며, 프로그램 코드는 컴퓨터 프로그램 제품이 컴퓨터 상에서 실행될 때 방법 중 하나를 수행하기 위해 작동한다. 프로그램 코드는 예를 들어 기계 판독 가능한 캐리어에 저장될 수 있다.
다른 실시예는 기계 판독 가능한 캐리어에 저장된, 본원에 설명된 방법 중 하나를 수행하기 위한, 컴퓨터 프로그램을 포함한다.
다시 말해서, 그러므로, 본 발명의 방법의 일 실시예는 컴퓨터 프로그램이 컴퓨터에서 실행될 때 본원에 설명된 방법 중 하나를 수행하기 위한 프로그램 코드를 갖는 컴퓨터 프로그램이다.
그러므로, 본 발명의 방법의 추가 실시예는 본원에 설명된 방법 중 하나를 수행하기 위한 컴퓨터 프로그램이 기록된 데이터 캐리어(또는 디지털 저장 매체, 또는 컴퓨터 판독 가능 매체)이다. 데이터 캐리어, 디지털 저장 매체 또는 기록 매체는 통상적으로 유형 및/또는 비일시적이다.
그러므로, 본 발명의 방법의 추가 실시예는 본원에 설명된 방법 중 하나를 수행하기 위한 컴퓨터 프로그램을 나타낸 데이터 스트림 또는 신호의 시퀀스이다. 예를 들어, 데이터 스트림 또는 신호의 시퀀스는 데이터 통신 연결을 통해, 예를 들어 인터넷을 통해, 전송되도록 구성될 수 있다.
추가 실시예는 본원에 설명된 방법 중 하나를 수행하도록 구성되거나 적용된 컴퓨터 또는 프로그래머블 논리 장치와 같은 처리 수단을 포함한다.
추가 실시예는 본원에 설명된 방법 중 하나를 수행하기 위한 컴퓨터 프로그램이 설치된 컴퓨터를 포함한다.
본 발명에 따른 추가 실시예는 본원에 설명된 방법 중 하나를 수행하기 위한 컴퓨터 프로그램을 수신기에 (예를 들어, 전자적으로 또는 광학적으로) 전송하도록 구성된 장치 또는 시스템을 포함한다. 수신기는 예를 들어 컴퓨터, 모바일 장치, 메모리 장치 등일 수 있다. 장치 또는 시스템은 예를 들어 컴퓨터 프로그램을 수신기로 전송하기 위한 파일 서버를 포함할 수 있다.
일부 실시예에서, 프로그래머블 논리 장치(예를 들어, 필드 프로그래머블 게이트 어레이)는 본원에 설명된 방법의 기능 중 일부 또는 전부를 수행하는 데 사용될 수 있다. 일부 실시예에서, 필드 프로그래머블 게이트 어레이는 본원에 설명된 방법 중 하나를 수행하기 위해 마이크로프로세서와 협력할 수 있다. 일반적으로, 방법은 임의의 하드웨어 장치에 의해 수행되는 것이 바람직하다.
본원에 설명된 장치는 하드웨어 장치를 사용하여, 또는 컴퓨터를 사용하여, 또는 하드웨어 장치와 컴퓨터의 조합을 사용하여 구현될 수 있다.
본원에 설명된 장치 또는 본원에 설명된 장치의 임의의 구성요소는 하드웨어 및/또는 소프트웨어로 적어도 부분적으로 구현될 수 있다.
본원에 설명된 방법은 하드웨어 장치를 사용하여, 또는 컴퓨터를 사용하여, 또는 하드웨어 장치와 컴퓨터의 조합을 사용하여 수행될 수 있다.
본원에 설명된 방법 또는 본원에 설명된 방법의 임의의 부분은 하드웨어 및/또는 소프트웨어에 의해 적어도 부분적으로 수행될 수 있다.
전술한 실시예는 단지 본 발명의 원리에 대한 예시일 뿐이다. 본원에 설명된 배열 및 세부사항의 수정 및 변형이 당업자에게 명백할 것임을 이해해야 한다. 그러므로, 본원의 실시예의 서술 및 설명을 통해 제시된 특정 세부사항에 의해서가 아니라 임박한 특허 청구범위의 범주에 의해서만 제한되도록 의도된다.
Claims (73)
- 인코딩된 비디오(12)를 갖는 비디오 데이터 스트림으로서,
상기 비디오 데이터 스트림(14)의 완전 버전(15)을 버퍼링하는 경우에 디코더 측에서 적용될 제1 코딩된 픽처 버퍼(coded picture buffer:CPB) 제거 시간(trm (1))에 대한 제1 타이밍 정보(16), 및
상기 비디오 데이터 스트림의 완전 버전으로부터 상기 비디오 데이터 스트림의 부분(24)의 제거(22)에 의해 상기 비디오 데이터 스트림과 상이한 상기 비디오 데이터 스트림(14)의 축소 버전(20)을 버퍼링하기 위해 디코더 측에서 적용될 제2 CPB 제거 시간(trm (2))에 대한 제2 타이밍 정보(18)를 포함하는, 인코딩된 비디오(12)를 갖는 비디오 데이터 스트림. - 제1항에 있어서,
상기 제2 타이밍 정보(18)는 상기 제1 CPB 제거 시간(trm (1))을 수정하는 방법에 대한 타이밍 수정 정보를 통해 상기 제2 CPB 제거 시간(trm (2))을 정의하여 상기 제2 CPB 제거 시간(trm (2))을 산출하는, 비디오 데이터 스트림. - 제1항 또는 제2항에 있어서,
상기 제1 타이밍 정보(16)는 픽처 단위로 그리고 디코딩 순서(26)에서 선행하는 표시된 픽처에 대한 증분을 통해 상기 제1 CPB 제거 시간(trm (1))을 픽처에 시그널링하는, 비디오 데이터 스트림. - 제3항에 있어서,
상기 표시된 픽처는 상기 표시된 픽처와 관련된 픽처부 내의 상기 비디오 데이터 스트림에서 버퍼링 기간 메시지를 통해 표시되는, 비디오 데이터 스트림. - 제1항 내지 제4항 중 어느 한 항에 있어서,
상기 제2 타이밍 정보(18)는, 제1 미리정해진 픽처(CRA)에 관한 그리고 상기 비디오 데이터 스트림 내의 부분(24')에 선행하는 상기 비디오 데이터 스트림의 제1 픽처부(28')에 대한 상기 제1 타이밍 정보에 의해 표시된, 상기 제1 CPB 제거 시간(trm (1))을 수정하는 방법에 대한 제1 타이밍 수정 정보(19)를 통해, 또는 상기 제1 CPB 제거 시간(trm (1))을 대체하기 위한 제1 타이밍 대체 정보를 통해 상기 제2 CPB 제거 시간(trm (2))을 정의하여 상기 제1 픽처부(28')에 대한 상기 제2 CPB 제거 시간(trm (2))을 산출하는, 비디오 데이터 스트림. - 제5항에 있어서,
상기 제1 타이밍 수정 정보(19) 또는 상기 제1 타이밍 대체 정보는 상기 비디오 데이터 스트림 내의 부분(24')을 뒤따르며 제2 미리정해진 픽처(TRAIL1)와 관련된 상기 비디오 데이터 스트림의 제2 픽처부(30') 내의 상기 비디오 데이터 스트림에서 시그널링되는, 비디오 데이터 스트림. - 제6항에 있어서,
상기 제2 픽처부는 상기 부분이 제거되었는지 여부를 나타내는 신호화(32)를 포함하는, 비디오 데이터 스트림. - 제7항에 있어서,
상기 제1 타이밍 수정 정보(19) 또는 상기 제1 타이밍 대체 정보는 상기 부분이 제거되었음을 나타내는 상기 신호화(32) 또는 상기 부분이 제거되지 않았음을 나타내는 상기 신호화(32)와 상관없이 상기 비디오 데이터 스트림에서 시그널링되는, 비디오 데이터 스트림. - 제6항 내지 제8항 중 어느 한 항에 있어서,
상기 제1 미리정해진 픽처는 표시된 픽처인, 비디오 데이터 스트림. - 제6항 내지 제9항 중 어느 한 항에 있어서,
상기 제2 미리정해진 픽처는 통상적인 트레일링 픽처(TRAIL) 또는 종속적인 랜덤 액세스 포인트(DRAP) 픽처인, 비디오 데이터 스트림. - 제6항 내지 제10항 중 어느 한 항에 있어서,
상기 제2 타이밍 정보(18)는 추가적으로, 제3 미리정해진 픽처와 관련되고 상기 비디오 데이터 스트림 내의 부분(24')을 뒤따르고 상기 제2 CPB 픽처부(28')를 포함하는 상기 비디오 데이터 스트림의 하나 이상의 제3 픽처부(31')의 세트에 대해 상기 제1 타이밍 정보에 의해 표시된 상기 제1 CPB 제거 시간(trm (1))을 수정하는 방법에 대한 제2 타이밍 수정 정보(21)를 통해, 상기 제2 CPB 제거 시간(trm (2))을 정의하여, 상기 하나 이상의 제3 픽처부(30')의 세트에 대한 상기 제2 CPB 제거 시간(trm (2))을 산출하고,
상기 제2 타이밍 수정 정보(21)는 상기 제2 픽처부(30') 내의 상기 비디오 데이터 스트림에서 시그널링되는, 비디오 데이터 스트림. - 제11항에 있어서,
상기 제2 픽처부는 상기 부분이 제거되었는지 여부를 나타내는 신호화(32)를 포함하고,
상기 제2 타이밍 수정 정보(21)는 상기 부분이 제거되었음을 나타내는 상기 신호화(32) 또는 상기 부분이 제거되지 않았음을 나타내는 상기 신호화(32)와 상관없이 상기 비디오 데이터 스트림에서 시그널링되는, 비디오 데이터 스트림. - 제11항 또는 제12항에 있어서,
상기 비디오 데이터 스트림의 하나 이상의 제3 픽처부(31')의 세트는 표시된 픽처와 관련된 제4 픽처부까지 연장되는, 비디오 데이터 스트림. - 제13항에 있어서,
상기 표시된 픽처는 상기 표시된 픽처와 관련된 픽처부 내의 상기 비디오 데이터 스트림에서 버퍼링 기간 메시지를 통해 표시되는, 비디오 데이터 스트림. - 제1항 내지 제14항 중 어느 한 항에 있어서,
상기 제2 타이밍 정보(18)는,
제1 미리정해진 픽처(CRA)에 관한 그리고 상기 비디오 데이터 스트림 내의 부분(24'')에 선행하는 상기 비디오 데이터 스트림의 제1 픽처부(28')에 대한 상기 제1 타이밍 정보에 의해 표시된, 상기 제1 CPB 제거 시간(trm (1))을 수정하는 방법에 대한 제3 타이밍 수정 정보(33)를 통해, 또는 상기 제1 CPB 제거 시간(trm (1))을 대체하기 위한 제3 타이밍 대체 정보(33)를 통해 상기 제2 CPB 제거 시간(trm (2))을 정의하여 상기 제1 픽처부(28')에 대한 상기 제2 CPB 제거 시간(trm (2))을 산출하고,
제3 미리정해진 픽처와 관련되고 상기 비디오 데이터 스트림 내의 부분(24'')을 뒤따르는 상기 비디오 데이터 스트림의 하나 이상의 제3 픽처부(31'')의 세트에 대해 상기 제1 타이밍 정보에 의해 표시된, 상기 제1 CPB 제거 시간(trm (1))을 수정하는 방법에 대한 제4 타이밍 수정 정보(35)를 통해, 또는 상기 제1 CPB 제거 시간(trm (1))을 대체하기 위한 제4 타이밍 대체 정보(35)를 통해 상기 제2 CPB 제거 시간(trm (2))을 정의하여 상기 하나 이상의 제3 픽처부(30'')의 세트에 대한 상기 제2 CPB 제거 시간(trm (2))을 산출하는, 비디오 데이터 스트림. - 제15항에 있어서,
상기 제3 타이밍 수정 정보(33) 또는 상기 제3 타이밍 대체 정보(33)는 상기 비디오 데이터 스트림의 제1 픽처부(28') 내의 상기 비디오 데이터 스트림에서 시그널링되고,
상기 제4 타이밍 수정 정보(35) 또는 상기 제4 타이밍 대체 정보(35)는 상기 하나 이상의 제3 픽처부의 세트 중에서 코딩 순서(26)의 관점에서 앞서는 상기 비디오 데이터 스트림의 제2 픽처부(30'') 내의 상기 비디오 데이터 스트림에서 시그널링되는, 비디오 데이터 스트림. - 제15항 또는 제16항에 있어서,
상기 제1 픽처부(28')는 상기 제1 및 제2 픽처부의 제2 CPB 제거 시간 사이의 거리가 상기 제2 및 제3 픽처부의 연속 쌍의 제2 CPB 제거 시간 사이의 거리로부터 벗어날 수 있는지 여부를 나타내는 신호화(signalization)(36)를 포함하고, 상기 제3 타이밍 수정 정보(33) 또는 상기 제3 타이밍 대체 정보(33)는 상기 제1 및 제2 픽처부의 제2 CPB 제거 시간 사이의 거리가 상기 제2 및 제3 픽처부의 연속 쌍의 제2 CPB 제거 시간 사이의 거리로부터 벗어날 수 있는지를 나타내는 상기 신호화(36)에 따라 조건부로 상기 비디오 데이터 스트림의 제1 픽처부(28') 내의 상기 비디오 데이터 스트림에서 시그널링되는, 비디오 데이터 스트림. - 제15항 내지 제17항 중 어느 한 항에 있어서,
상기 제2 픽처부(30'')는 상기 부분(24')이 제거되었는지 여부를 나타내는 신호화(38)를 포함하는, 비디오 데이터 스트림. - 제1항 내지 제18항 중 어느 한 항에 있어서,
상기 제2 타이밍 정보는 상기 제2 CPB 제거 시간을 정의하여, 상기 비디오 데이터 스트림 내의 부분에 선행하는 상기 비디오 데이터 스트림의 제1 픽처부, 상기 부분 및 상기 제1 CPB 제거 시간에 따라 제2 픽처부의 버퍼 제거를 수행할 때 상기 비디오 데이터 스트림 내의 부분 뒤의 상기 비디오 데이터 스트림의 제2 픽처부를 버퍼링한 후 상기 디코더 측에서 그 자체를 나타내는 상기 디코더 측의 제1 CPB 충전 레벨(39a'; 39a'')은 상기 부분이 버퍼링되지 않은 상태에서 상기 제2 CPB 버퍼 시간에 따라 상기 제2 픽처부의 버퍼 제거를 수행할 때 상기 비디오 데이터 스트림의 제1 및 제2 픽처부를 버퍼링한 후 상기 디코더 측에서 그 자체를 나타내는 상기 디코더 측의 제2 CPB 충전 레벨(39b'; 39b'')과 동일한, 비디오 데이터 스트림. - 제1항 내지 제19항 중 어느 한 항에 있어서,
상기 제2 타이밍 정보는,
하나 이상의 RASL 픽처의 시퀀스에 관한 상기 부분에 대해, 또는
특정 DRAP에 선행하는 픽처의 시퀀스에 관한 상기 부분에 대해, 상기 제2 CPB 제거 시간을 정의하는, 비디오 데이터 스트림. - 제1항 내지 제20항 중 어느 한 항에 있어서,
상기 비디오 데이터 스트림은 상기 부분이 제거되었는지 여부를 나타내는 신호화(32, 35)를 포함하는, 비디오 데이터 스트림. - 제1항 내지 제21항 중 어느 한 항에 있어서,
상기 비디오 데이터 스트림은, 상기 비디오의 픽처(12)가 상이한 계층적 레벨(50i)의 픽처로 그룹화되도록 시간적으로 확장 가능한 방식으로 시간적 상호 예측(temporal inter prediction)을 사용하여 픽처의 그룹(50) 단위로 코딩되며, 각 계층적 레벨의 경우, 상기 각각의 계층적 레벨의 모든 픽처는 상기 각각의 레벨 또는 하위 계층적 레벨의 픽처에만 의존하고,
상기 부분(24)은, 최고의 계층적 레벨(503)에 속하는 픽처들, 또는 계층적 순서(52)에서 상기 최고의 계층적 레벨(503) 바로 아래의 최저의 계층적 레벨(501)을 제외한 하나 이상의 계층적 레벨(502) 및 상기 최고의 계층적 레벨(503)에 속하는 픽처들로 구성되는, 비디오 데이터 스트림. - 제22항에 있어서,
상기 제1 타이밍 정보(16)는 픽처 단위로 그리고 디코딩 순서에서 현재의 픽처 그룹의 선행 표시된 픽처(53)에 대한 증분에 의해 픽처 상에 상기 제1 CPB 제거 시간(trm (1))을 시그널링하는, 비디오 데이터 스트림. - 제23항에 있어서,
상기 표시된 픽처는 상기 표시된 픽처와 관련된 픽처부 내의 상기 비디오 데이터 스트림에서 버퍼링 기간 메시지를 통해 표시되는, 비디오 데이터 스트림. - 제22항 내지 제24항 중 어느 한 항에 있어서,
상기 제2 타이밍 정보(18)는,
제5 타이밍 수정 정보(19) 또는 대체를 위한 제5 타이밍 대체 정보를 통해 상기 제2 CPB 제거 시간(trm (2))을 정의하고,
상기 제5 타이밍 수정 정보(19) 또는 상기 제5 타이밍 대체 정보는, 상기 최고의 계층적 레벨 이외의 하나 이상의 계층적 레벨과 연관된 제5 픽처(54)와 관련된 상기 비디오 데이터 스트림의 제5 픽처부(23)의 각각 내의 상기 비디오 데이터 스트림에서 시그널링되고,
상기 제5 타이밍 수정 정보(19) 또는 상기 제5 타이밍 대체 정보는, 상기 각각의 제5 픽처부(23)에 대해 상기 제1 타이밍 정보에 의해 표시된 상기 제1 CPB 제거 시간(trm (1))을 수정하거나 대체하는 방법에 대한 것으로, 상기 제5 픽처부(23)에 대한 상기 제2 CPB 제거 시간(trm (2))을 산출하는, 비디오 데이터 스트림. - 제22항 내지 제24항 중 어느 한 항에 있어서,
상기 제2 타이밍 정보(18)는,
제5 타이밍 수정 정보(19) 또는 대체를 위한 제5 타이밍 대체 정보를 통해 상기 제2 CPB 제거 시간(trm (2))을 정의하고,
상기 제5 타이밍 수정 정보(19) 또는 상기 제5 타이밍 대체 정보는, 상기 최고의 계층적 레벨 이외의 하나 이상의 계층적 레벨과 연관된 제5 픽처와 관련된 상기 비디오 데이터 스트림의 제5 픽처부(23)의 각각 내의 상기 비디오 데이터 스트림에서 시그널링되고,
상기 최고의 계층적 레벨과 상기 최저의 계층적 레벨 사이의 계층적 레벨마다,
상기 각각의 계층적 레벨 위의 상기 최고의 계층적 레벨과 상기 최저의 계층적 레벨 사이의 각 계층적 레벨에 대해,
상기 제5 타이밍 수정 정보(19) 또는 상기 제5 타이밍 대체 정보는 상기 각각의 제5 픽처부(23)에 대해 상기 제1 타이밍 정보에 의해 표시된 상기 제1 CPB 제거 시간(trm (1))을 수정하거나 대체하는 방법에 대한 것으로, 상기 부분(24)이 상기 각각의 계층적 레벨 위의 상기 각각의 계층적 레벨에 이르기까지 상기 최고의 계층적 레벨을 포함하는 경우에 대해 상기 제5 픽처부(23)에 대한 상기 제2 CPB 제거 시간(trm (2))을 산출하는, 비디오 데이터 스트림. - 제25항 또는 제26항에 있어서,
상기 제2 타이밍 정보(18)는 상기 제5 타이밍 수정 정보(19)를 통해 상기 제2 CPB 제거 시간(trm (2))을 정의하고,
상기 제5 타이밍 수정 정보(19)는 오프셋 값을 통해 상기 제1 CPB 제거 시간을 수정하는 방법을 나타내고,
상기 비디오 데이터 스트림은 하나 이상의 픽처 그룹에서 상기 제1 CPB 제거 시간을 수정하기 위한 상기 제5 수정 정보에 의해 표시된 상기 오프셋 값에 의해 가정되는 대표 오프셋 값의 목록을 나타내는 데이터(60)를 포함하고,
상기 제5 타이밍 수정 정보(19)는 상기 대표 오프셋 값의 목록을 가리키는 포인터를 통해 상기 오프셋 값을 시그널링하는, 비디오 데이터 스트림. - 제22항 내지 제27항 중 어느 한 항에 있어서,
상기 비디오 데이터 스트림은 상기 부분(24)에 의해 축소되고,
상기 비디오 데이터 스트림은 상기 제1 및 제2 타이밍 정보(18)를 포함하는, 비디오 데이터 스트림. - 비디오 인코더(40)로서,
비디오를 비디오 데이터 스트림으로 인코딩하도록 구성되고;
상기 비디오 데이터 스트림에,
상기 비디오 데이터 스트림(14)의 완전 버전(15)을 버퍼링하는 경우에 디코더 측에서 적용될 제1 CPB 제거 시간(trm (1))에 대한 제1 타이밍 정보(16), 및
상기 비디오 데이터 스트림의 완전 버전으로부터 상기 비디오 데이터 스트림의 부분(24)의 제거(22)에 의해 상기 비디오 데이터 스트림과 상이한 상기 비디오 데이터 스트림(14)의 축소 버전(20)을 버퍼링하기 위해 디코더 측에서 적용될 제2 CPB 제거 시간(trm (2))에 대한 제2 타이밍 정보(18)를 제공하도록 구성되는, 비디오 인코더. - 제29항에 있어서, 상기 비디오 데이터 스트림에 상기 제1 및 제2 타이밍 정보를 제공하도록 구성되어 상기 비디오 데이터 스트림은 제1항 내지 제28항 중 어느 한 항에 따른 것인, 비디오 인코더.
- 제29항 또는 제30항에 있어서, 상기 비디오 데이터 스트림은 제17항에 따른 것이고, 상기 비디오 인코더는 상기 제2 미리정해진 픽처가 랜덤 액세스 포인트(RAP)인 상기 제1 미리정해진 픽처를 참조하는 DRAP인지 여부를 확인하고, 상기 제2 미리정해진 픽처가 RAP인 상기 제1 미리정해진 픽처를 참조하는 DRAP인지 여부를 나타내도록 상기 신호화(36)를 설정하고, 상기 제2 미리정해진 픽처가 RAP인 상기 제1 미리정해진 픽처를 참조하는 DRAP인 경우에 상기 비디오 데이터 스트림의 제1 픽처부(28') 내의 상기 비디오 데이터 스트림에서 상기 제3 타이밍 수정 정보(33) 또는 상기 제3 타이밍 대체 정보(33)를 인코딩하도록 구성되는, 비디오 인코더.
- 제29항 내지 제31항 중 어느 한 항에 있어서, 상기 비디오 인코더는 상기 제1 및 제2 타이밍 정보를 설정하도록 구성되어 상기 비디오 데이터 스트림은 제19항에 따른 것인, 비디오 인코더.
- 제1항 내지 제28항 중 어느 한 항에 따른 비디오 데이터 스트림을 전달하기 위한 네트워크 노드(42)로서,
상기 비디오 데이터 스트림으로부터 상기 비디오 데이터 스트림의 부분(24)을 제거하도록 구성되는, 네트워크 노드. - 제33항에 있어서, 상기 비디오 데이터 스트림은 제7항 또는 제18항에 따른 것이고, 상기 네트워크 노드는 상기 부분이 상기 비디오 데이터 스트림으로부터 제거되었음을 나타내도록 상기 신호화(32; 36)를 설정하도록 구성되는, 네트워크 노드.
- 제1항 내지 제28항 중 어느 한 항에 따른 비디오 데이터 스트림을 CPB에 의해 버퍼링되는 방식으로 디코딩하는 비디오 디코더(44)의 CPB(48)를 관리하기 위한 장치(46)로서, 상기 장치는,
상기 부분이 상기 비디오 데이터 스트림에 포함되는 경우에 상기 제1 타이밍 정보(16), 및
상기 부분(24)이 제거된 경우에 상기 제2 타이밍 정보(18)에 따라 상기 CPB를 관리하도록 구성되는, 비디오 디코더(44)의 CPB(48)를 관리하기 위한 장치. - 제35항에 있어서, 상기 비디오 데이터 스트림은 제7항 또는 제18항에 따른 것이고, 상기 장치는 상기 신호화(32; 38)의 점검 후에 상기 비디오 데이터 스트림의 제1 픽처부의 제거를 지연시키도록 구성되는, 장치.
- 제35항 또는 제36항에 있어서, 상기 비디오 데이터 스트림은 제2항, 제5항 또는 제15항에 따른 것이고, 상기 장치는 상기 수정 또는 대체를 수행하도록 구성되는, 장치.
- 인코딩된 비디오(12)를 갖는 비디오 데이터 스트림으로서,
최소 CPB 공급 비트레이트에 관한 제1 HRD 타이밍 정보 데이터(70a,b), 및
최대 CPB 공급 비트레이트에 관한 제2 HRD 타이밍 정보 데이터(72a,b)를 포함하고,
상기 제1 HRD 타이밍 정보 데이터(70a,b) 및 제2 HRD 타이밍 정보 데이터(72a,b)는 상기 제1 및 제2 HRD 타이밍 정보 데이터 사이를 선형으로 보간함으로써 실제 CPB 공급 비트레이트에 대한 제3 HRD 타이밍 정보의 결정을 가능하게 하는, 인코딩된 비디오(12)를 갖는 비디오 데이터 스트림. - 제38항에 있어서,
상기 제1 HRD 타이밍 정보 데이터(70a,b) 및 제2 HRD 타이밍 정보 데이터(72a,b)가 존재하는지 여부를 나타내는 플래그(74) 또는 CPB 공급 비트레이트의 원하는 세트 각각에 관한 복수의 HRD 타이밍 정보 데이터(76)를 포함하는, 비디오 데이터 스트림. - 제38항 또는 제39항에 있어서, 각 HRD 타이밍 정보 데이터는,
상기 각각의 HRD 타이밍 정보가 관련된 상기 CPB 공급 비트레이트의 표시(104),
상기 각각의 HRD 타이밍 정보가 관련된 상기 각각의 CPB 공급 비트레이트에 대한 CPB 크기 필요성의 표시(106),
상기 각각의 HRD 타이밍 정보가 관련된 상기 각각의 CPB 공급 비트레이트에 대한 상기 각각의 표시된 픽처부의 제1 비트의 CPB 도착 이후 경과 시간을 측정하는, 상기 비디오 데이터 스트림의 표시된 픽처부의 각각에 대한 CPB 제거 시간의 표시(108), 및
상기 각각의 표시된 픽처부의 제1 비트의 CPB 도착이 상기 각각의 HRD 타이밍 정보가 관련된 상기 각각의 CPB 공급 비트레이트에 대해 지연될 경과 시간을 측정하는, 상기 비디오 데이터 스트림의 표시된 픽처부의 각각에 대한 CPB 공급 지연 시간의 표시(110)를 포함하는, 비디오 데이터 스트림. - 비디오 인코더(40)로서,
비디오를 비디오 데이터 스트림으로 인코딩하도록 구성되고;
상기 비디오 데이터 스트림에,
최소 CPB 공급 비트레이트에 관한 제1 HRD 타이밍 정보(70), 및
최대 CPB 공급 비트레이트에 관한 제2 HRD 타이밍 정보(72)를 제공하도록 구성되고,
상기 제1 HRD 타이밍 정보(70) 및 제2 HRD 타이밍 정보(72)는 상기 제1 및 제2 HRD 타이밍 정보 사이를 선형으로 보간함으로써 실제 CPB 공급 비트레이트에 대한 제3 HRD 타이밍 정보의 결정을 가능하게 하는, 비디오 인코더. - 제41항에 있어서,
상기 비디오 데이터 스트림에 상기 제1 HRD 타이밍 정보(70) 및 상기 제2 HRD 타이밍 정보(72)를 제공하거나 상기 비디오 데이터 스트림에 CPB 공급 비트레이트의 원하는 세트 각각에 관한 복수의 HRD 타이밍 정보 데이터(76)를 제공하기로 결정하도록 구성되는, 비디오 인코더. - 제42항에 있어서,
상기 제1 및 제2 HRD 타이밍 정보 사이의 선형 보간이 상기 최소 및 최대 CPB 공급 비트레이트 사이의 모든 CPB 공급 비트레이트에 대해 CPB 오버플로우 및 언더플로우 프리 상황을 초래하는지 여부를 실행 가능성 검사에 기초하여 결정을 수행하도록 구성되는, 비디오 인코더. - 제42항 또는 제43항에 있어서,
상기 비디오 데이터 스트림에 상기 제1 HRD 타이밍 정보 데이터(70a,b) 및 제2 HRD 타이밍 정보 데이터(72a,b) 또는 CPB 공급 비트레이트의 원하는 세트 각각에 관한 복수의 HRD 타이밍 정보 데이터(76)가 제공되는지 여부를 나타내는 플래그(74)를 상기 비디오 데이터 스트림에 제공하도록 구성되는, 비디오 인코더. - 인코딩된 비디오(12)를 갖는 비디오 데이터 스트림을 디코딩하는 비디오 디코더(44)의 CPB(48)를 관리하기 위한 장치(46)로서, 상기 장치는,
상기 비디오 데이터 스트림으로부터,
최소 CPB 공급 비트레이트에 관한 제1 HRD 타이밍 정보(70), 및
최대 CPB 공급 비트레이트에 관한 제2 HRD 타이밍 정보(72)를 도출하도록 구성되고,
상기 제1 및 제2 HRD 타이밍 정보 사이를 선형으로 보간함으로써 실제 CPB 공급 비트레이트에 대한 제3 HRD 타이밍 정보를 결정하도록 구성되고,
상기 제3 HRD 타이밍 정보를 사용하여 상기 CPB를 관리하도록 구성되는, 비디오 디코더(44)의 CPB(48)를 관리하기 위한 장치. - 제45항에 있어서,
상기 비디오 데이터 스트림에서 플래그(74)를 점검하고, 상기 플래그에 따라, 상기 비디오 데이터 스트림으로부터 상기 제1 HRD 타이밍 정보 데이터(70a,b) 및 제2 HRD 타이밍 정보 데이터(72a,b)의 도출을 수행하거나 상기 비디오 데이터 스트림으로부터 CPB 공급 비트레이트의 원하는 세트의 각각에 관한 복수의 HRD 타이밍 정보 데이터(76)를 도출하도록 구성되는, 장치. - 제45항 또는 제46항에 있어서, 각 HRD 타이밍 정보 데이터는,
상기 각각의 HRD 타이밍 정보가 관련된 상기 CPB 공급 비트레이트의 표시(104),
상기 각각의 HRD 타이밍 정보가 관련된 상기 각각의 CPB 공급 비트레이트에 대한 CPB 크기 필요성의 표시(106),
상기 각각의 HRD 타이밍 정보가 관련된 상기 각각의 CPB 공급 비트레이트에 대한 상기 각각의 표시된 픽처부의 제1 비트의 CPB 도착 이후 경과 시간을 측정하는, 상기 비디오 데이터 스트림의 표시된 픽처부의 각각에 대한 CPB 제거 시간의 표시(108), 및
상기 각각의 표시된 픽처부의 제1 비트의 CPB 도착이 상기 각각의 HRD 타이밍 정보가 관련된 상기 각각의 CPB 공급 비트레이트에 대해 지연될 경과 시간을 측정하는, 상기 비디오 데이터 스트림의 표시된 픽처부의 각각에 대한 CPB 공급 지연 시간의 표시(110)를 포함하는, 장치. - 비디오 데이터 스트림(14a; 14c)으로서,
픽처부(23a)의 시퀀스로서, 각 픽처부는 인코딩된 비디오(12a)의 픽처(10a)를 갖고, 상기 픽처부는 CPB 제거 시간 레퍼런스로서 역할을 하는 제1 유형의 픽처부 및 제2 유형의 픽처부를 포함하는, 픽처부(23a)의 시퀀스,
각 픽처부에서 상기 각각의 픽처부의 제1 CPB 제거 시간에 대한 제1 타이밍 정보(95)로서, 상기 제1 CPB 제거 시간은 선행하는 제1 유형의 픽처부의 제거 이후 경과 시간을 측정하는, 제1 타이밍 정보(95),
미리정해진 제1 유형 픽처부에서 상기 각각의 미리정해진 제1 유형 픽처부로부터 계속 상기 비디오 데이터 스트림의 디코딩을 재개하는 경우에 상기 각각의 미리정해진 제1 유형 픽처부의 제2 CPB 제거 시간에 대한 미리정해진 제1 유형 픽처부 각각 내의 제2 타이밍 정보 - 상기 제2 CPB 제거 시간은 상기 각각의 미리정해진 제1 유형 픽처부의 제1 비트의 CPB 도착 이후 경과 시간을 측정함 -, 및
동일한 것이 다른 비디오 데이터 스트림(14b)과의 스플라이스 포인트(92) 이전의 마지막 픽처부로서 역할을 할 수 있도록, 최종 CPB 도착과 CPB 제거 사이의 시간적 차이(trm#-taf#)가 미리정해진 임계치를 초과하는 픽처부를 나타내는 스플라이스 포인트 표시(splice point indication)(94, 94')
를 포함하는, 비디오 데이터 스트림. - 제48항에 있어서,
최대 제2 CPB 제거 시간 값의 표시(99)를 포함하고, 상기 최대 제2 CPB 제거 시간 값의 표시(99)는 다른 비디오 데이터 스트림이 상기 스플라이스 포인트(92)에서 상기 비디오 데이터 스트림과 연결되는 다른 비디오 데이터 스트림(14b)의 시작 제1 유형 픽처부의 제2 CPB 제거 시간이 상기 최대 제2 CPB 제거 시간 값 미만인 동안, 상기 최종 CPB 도착과 상기 CPB 제거 사이의 상기 시간적 차이(trm#-taf#)가 상기 스플라이스 포인트 표시에 의해 표시되어 상기 소정 임계치를 초과하는 임의의 픽처부에 다른 비디오 데이터 스트림의 연결이 끊김 없는 스플라이싱을 초래함을 나타내는, 비디오 데이터 스트림. - 제48항 또는 제49항에 있어서, 상기 스플라이스 포인트 표시(94, 94')는,
상기 각각의 픽처부에 대해 상기 최종 CPB 도착과 상기 CPB 제거 사이의 시간적 차이(trm#-taf#)가 상기 미리정해진 임계치를 초과하는지 여부를 나타내는 상기 픽처부의 각각에 또는 픽처부 세트의 각각에 존재하는 플래그(94), 또는
상기 각각의 픽처부로부터 계속 다음의 제1 유형 픽처부까지의 각각에 대해 상기 최종 CPB 도착과 상기 CPB 제거 사이의 시간적 차이(trm#-taf#)가 상기 미리정해진 임계치를 초과하는지 여부를 나타내는 상기 픽처부의 각각에 또는 픽처부 세트의 각각에 존재하는 플래그(94')를 포함하는, 비디오 데이터 스트림. - 제48항 내지 제50항 중 어느 한 항에 있어서,
상기 픽처부의 시퀀스는 상기 픽처부가 독립형 방식으로 디코딩될 수 있는 폐기 불가능한 픽처부 및 상기 폐기 불가능한 픽처부를 디코딩하는 데 필요하지 않은 폐기 가능한 픽처부를 포함하는 방식으로 시간적 상호 예측(90)을 사용하여 인코딩된 비디오(12a)의 픽처를 갖고,
상기 비디오 데이터 스트림(14c)은 스플라이스 포인트(92)에서 스플라이싱되어 상기 스플라이스 포인트 표시(94; 94')가 상기 최종 CPB 도착과 상기 CPB 제거 사이의 시간적 차이(trm#-taf#)가 상기 미리정해진 임계치를 초과함을 나타내는 미리정해진 픽처부(23a')에 이어서 스플라이스-인 비디오 데이터 스트림(14b)에서 유래하는 제1 미리정해진 제1 유형 픽처부(23b')가 뒤따르며 이에 인접하고,
상기 비디오 데이터 스트림(14c)은 상기 제1 미리정해진 제1 유형 픽처부에서,
연결 플래그(concatenation flag)(96) 및 제3 타이밍 정보(98)를 포함하고, 상기 연결 플래그(96)는 상기 비디오 데이터 스트림이 상기 제1 미리정해진 제1 유형 픽처부에서 스플라이싱되었음을 나타내는 제1 상태로 설정되고, 상기 제3 타이밍 정보는, 상기 제1 미리정해진 제1 유형 픽처부에서 스플라이싱 경우에 CPB 제거 시간을 결정하는 역할을 하는, 상기 제1 미리정해진 제1 유형 픽처부의 제3 CPB 제거 시간을 나타내고, 상기 제3 CPB 제거 시간은 폐기 불가능한 픽처부의 가장 최근의 CPB 제거 이후 경과 시간을 측정하는, 비디오 데이터 스트림. - 제51항에 있어서, 각 미리정해진 제1 유형 픽처부는 연결 플래그(96) 및 제3 타이밍 정보(98)를 포함하고, 상기 연결 플래그는 제1 및 제2 상태로 설정 가능하고, 상기 제2 상태는 상기 비디오 데이터 스트림이 상기 각각의 미리정해진 제1 유형 픽처부에서 스플라이싱되지 않았음을 나타내는, 비디오 데이터 스트림.
- 비디오를 비디오 데이터 스트림으로 인코딩하여 상기 비디오 데이터 스트림이 픽처부(23a)의 시퀀스를 포함하기 위한 비디오 인코더로서, 각 픽처부는 인코딩된 비디오(12a)의 픽처(10a)를 갖고, 상기 비디오 인코더는,
상기 픽처부를 CPB 제거 시간 레퍼런스로서 역할을 하는 제1 유형의 픽처부 및 제2 유형의 픽처부로 분류하도록 구성되고,
상기 비디오 데이터 스트림에,
각 픽처부에서 상기 각각의 픽처부의 제1 CPB 제거 시간에 대한 제1 타이밍 정보로서, 상기 제1 CPB 제거 시간은 선행하는 제1 유형의 픽처부의 제거 이후 경과 시간을 측정하는, 제1 타이밍 정보, 및
미리정해진 제1 유형 픽처부 각각에서 상기 각각의 미리정해진 제1 유형 픽처부로부터 계속 상기 비디오 데이터 스트림의 디코딩을 재개하는 경우에 상기 각각의 미리정해진 제1 유형 픽처부의 제2 CPB 제거 시간에 대한 제2 타이밍 정보 - 상기 제2 CPB 제거 시간은 상기 각각의 미리정해진 제1 유형 픽처부의 제1 비트의 CPB 도착 이후 경과 시간을 측정함 - 를 제공하도록 구성되고,
미리정해진 픽처부 각각에 대해 최종 CPB 도착과 그 CPB 제거 사이의 시간적 차이(trm#-taf#)가 미리정해진 임계치를 초과하는지 여부를 검사하여, 동일한 것이 다른 비디오 데이터 스트림(14b)과의 스플라이스 포인트(92) 이전의 마지막 픽처부로서 역할을 할 수 있도록 구성되고,
상기 비디오 데이터 스트림(14a)에 스플라이스 포인트 표시를 제공하여 최종 CPB 도착과 그 CPB 제거 사이의 시간적 차이(trm#-taf#)가 상기 미리정해진 임계치를 초과하는 해당 미리정해진 픽처부를 나타내도록 구성되는, 비디오 인코더. - 제53항에 있어서, 상기 비디오 데이터 스트림(14a)에 스플라이스 포인트 표시를 제공할 때,
상기 각각의 픽처부에 대해 상기 최종 CPB 도착과 그 CPB 제거 사이의 시간적 차이(trm#-taf#)가 상기 미리정해진 임계치를 초과하는지 여부를 나타내는 플래그(94)를 상기 픽처부의 각각에 또는 픽처부 세트의 각각에 제공하도록 구성되고, 또는
상기 각각의 픽처부로부터 계속 다음의 제1 유형 픽처부까지의 각각에 대해 상기 최종 CPB 도착과 상기 CPB 제거 사이의 시간적 차이(trm#-taf#)가 상기 미리정해진 임계치를 초과하는지 여부를 나타내는 플래그(94')를 상기 픽처부의 각각에 또는 픽처부 세트의 각각에 제공하도록 구성되는, 비디오 인코더. - 제53항 또는 제54항에 있어서,
상기 픽처부가 시간적 상호 예측을 위한 레퍼런스 픽처로서 역할을 하지 않는 폐기 가능한 픽처부 및 시간적 상호 예측을 위한 레퍼런스 픽처로서 역할을 하는 폐기 불가능한 픽처를 포함하는 방식으로, 상기 비디오(12a)의 픽처를 상기 시간적 상호 예측(90)을 사용하여 상기 픽처부의 시퀀스로 인코딩하도록 구성되고,
상기 미리정해진 제1 유형 픽처부의 각각에 연결 플래그(96) 및 제3 타이밍 정보(98)를 제공하도록 구성되고, 상기 연결 플래그는 상기 비디오 데이터 스트림이 상기 각각의 미리정해진 제1 유형 픽처부에서 스플라이싱되지 않았음을 나타내는 제2 상태로 설정 가능하고, 상기 제3 타이밍 정보는, 상기 각각의 제1 미리정해진 제1 유형 픽처부에서 스플라이싱되는 경우에 CPB 제거 시간을 결정하는 역할을 하는, 상기 각각의 제1 미리정해진 제1 유형 픽처부의 제3 CPB 제거 시간을 나타내고, 상기 제3 CPB 제거 시간은 가장 최근의 폐기 불가능한 픽처부의 CPB 제거 이후 경과 시간을 측정하는, 비디오 인코더. - 제53항 내지 제55항 중 어느 한 항에 있어서, 각 미리정해진 픽처부에 대해,
상기 각각의 미리정해진 픽처부 이전의 가장 최근의 미리정해진 제1 유형 픽처의 제2 CPB 제거 시간에 기초하여 결정된 값을 상기 미리정해진 임계치로서 사용하도록 구성되고,
상기 미리정해진 임계치로서 최대 제2 CPB 제거 시간 값에 기초하여 결정된 값을 사용하고, 상기 각각의 미리결정된 픽처부 이전의 가장 최근의 미리정해진 제1 유형 픽처로 상기 최대 제2 CPB 제거 시간 값의 표시(99)를 작성하도록 구성되는, 비디오 인코더. - 제51항 또는 제52항에 따른 비디오 데이터 스트림(14c)을 CPB에 의해 버퍼링되는 방식으로 디코딩하는 비디오 디코더(44)의 CPB(48)를 관리하기 위한 장치(46)로서, 상기 장치는,
상기 제1 미리정해진 제1 유형 픽처부 내의 상기 연결 플래그가 상기 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인(spliced-in)이 발생했음을 나타내는지 여부를 확인하도록 구성되고,
다음의 경우에 상기 CPB로부터 상기 제1 미리정해진 제1 유형 픽처부(23b')를 제거할 시간을 결정하도록 구성되는, 비디오 디코더(44)의 CPB(48)를 관리하기 위한 장치(46):
다음의 정보에 기초하여 상기 제1 미리정해진 제1 유형 픽처부 내의 상기 연결 플래그가 상기 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인이 발생하지 않았음을 나타내는 경우, 상기 제1 미리정해진 제1 유형 픽처부의 제1 타이밍 정보에 기초하여, 상기 CPB로부터 상기 제1 미리정해진 제1 유형 픽처부(23b')를 제거할 시간을 결정하도록 구성되고,
다음의 정보에 기초하여 상기 제1 미리정해진 제1 유형 픽처부 내의 상기 연결 플래그가 상기 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인이 발생했음을 나타내는 경우, 상기 제1 미리정해진 제1 유형 픽처부의 제2 및 제3 타이밍 정보에 기초하여, 상기 CPB로부터 상기 제1 미리정해진 제1 유형 픽처부(23b')를 제거할 시간을 결정하도록 구성되는, 장치. - 제57항에 있어서,
상기 제1 미리정해진 제1 유형 픽처부 내의 상기 연결 플래그가 상기 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인이 발생했음을 나타내는 경우,
"폐기 불가능한 픽처부의 가장 최근의 CPB 제거 + 상기 제1 미리정해진 제1 유형 픽처부의 제3 CPB 제거 시간"과 "상기 제1 미리정해진 제1 유형 픽처부가 후속하거나 상기 제1 미리정해진 제1 유형 픽처부에 인접한 CPB 제거 + 상기 제2 CPB 시간 - 상기 미리정해진 픽처부(23a')의 상기 CPB 제거와 상기 최종 CPB 도착 사이의 시간적 차이(trm#-taf#)" 사이의 최대치의 결정에 의해 상기 제1 미리정해진 제1 유형 픽처부의 제2 및 제3 타이밍 정보에 기초하여, 상기 CPB로부터 상기 제1 미리정해진 제1 유형 픽처부(23b')를 제거할 시간을 결정하도록 구성되는, 장치. - 제1 비디오 데이터 스트림(14a) 및 제2 비디오 데이터 스트림(14b)을 함께 스플라이싱하기 위한 장치로서, 상기 제1 비디오 데이터 스트림(14a) 및 상기 제2 비디오 데이터 스트림(14b) 각각은,
픽처부(23a,b)의 시퀀스로서, 각 픽처부는 인코딩된 비디오(12a,b)의 픽처(12a,b)를 갖고, 상기 픽처부는 CPB 제거 시간 레퍼런스로서 역할을 하는 제1 유형의 픽처부 및 제2 유형의 픽처부를 포함하는, 픽처부(23a,b)의 시퀀스,
각 픽처부에서 상기 각각의 픽처부의 제1 CPB 제거 시간에 대한 제1 타이밍 정보로서, 상기 제1 CPB 제거 시간은 선행하는 제1 유형의 픽처부의 제거 이후 경과 시간을 측정하는, 제1 타이밍 정보, 및
미리정해진 제1 유형 픽처부에서 상기 각각의 미리정해진 제1 유형 픽처부로부터 계속 디코딩하는 상기 비디오 데이터 스트림을 재개하는 경우에 상기 각각의 미리정해진 제1 유형 픽처부의 제2 CPB 제거 시간에 대한 제2 타이밍 정보 - 상기 제2 CPB 제거 시간은 상기 각각의 미리정해진 제1 유형 픽처부의 제1 비트의 CPB 도착 이후 경과 시간을 측정함 - 를 포함하고,
상기 제2 비디오 데이터 스트림은 제1 미리정해진 제1 유형 픽처부에 연결 플래그(96) 및 제3 타이밍 정보(98)를 포함하고, 상기 연결 플래그(96)는 상기 제2 비디오 데이터 스트림을 나타내는 제2 상태로 설정되고, 상기 제1 미리정해진 제1 유형 픽처부는 상기 제2 비디오 데이터 스트림을 계속하고, 상기 제3 타이밍 정보는 상기 제1 미리정해진 제1 유형 픽처부에서 상기 제2 비디오 데이터 스트림을 스플라이스-인할 때 CPB 제거 시간을 결정하는 역할을 하는 상기 제1 미리정해진 제1 유형 픽처부의 제3 CPB 제거 시간을 나타내고, 상기 제3 CPB 제거 시간은 폐기 불가능한 픽처부의 가장 최근의 CPB 제거 이후 경과 시간을 측정하고,
상기 장치는,
동일한 것이 제1 비디오 데이터 스트림이 제2 비디오 데이터 스트림과 스플라이싱되기 전에 마지막 픽처부로서 역할을 하기 위해 상기 제1 비디오 데이터 스트림에서의 스플라이스 포인트 표시(94; 94')가, 미리정해진 픽처부에 대해, CPB 도착과 CPB 제거 사이의 시간적 차이가 미리정해진 임계치를 초과하는 것으로 나타내는지 여부를 확인하도록 구성되고,
긍정(YES)으로 나타난 경우, 상기 제2 비디오 데이터 스트림의 제1 미리정해진 제1 유형 픽처부 내의 상기 연결 플래그(96)를, 상기 제2 비디오 데이터 스트림이 상기 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인되었음을 나타내는 제1 상태로 설정하도록 구성되고,
상기 미리정해진 픽처부(26a') 및 상기 제1 미리정해진 제1 유형 픽처부(26b')에서 상기 제1 및 제2 데이터 스트림을 각각 연결하여 스플라이싱된 비디오 데이터 스트림을 획득하도록 구성되는, 제1 비디오 데이터 스트림(14a) 및 제2 비디오 데이터 스트림(14b)을 함께 스플라이싱하기 위한 장치. - 제59항에 있어서,
yes인 경우, 상기 제3 타이밍 정보(98)를 재작성하여, 상기 스플라이싱된 비디오 데이터 스트림 내에서 상기 제1 비디오 데이터 스트림의 폐기 불가능한 픽처부의 가장 최근의 CPB 제거 이후 경과 시간을 측정하도록 더 구성되는, 장치. - 제59항에 있어서,
긍정(YES)으로 나타난 경우, 상기 제1 미리정해진 제1 유형 픽처부 이전의 폐기 불가능한 픽처부의 가장 최근의 CPB 제거 이후 경과 시간이 상기 제2 비디오 데이터 스트림과 비교하여 상기 스플라이싱된 비디오 데이터 스트림을 고려할 때 변경되었는지 여부를 확인하도록 더 구성되고,
만약 변경된 것으로 확인되면, 상기 제3 타이밍 정보(98)를 재작성하여 상기 스플라이싱된 비디오 데이터 스트림 내에서 상기 제1 비디오 데이터 스트림의 폐기 불가능한 픽처부의 가장 최근의 CPB 제거 이후 경과 시간을 측정하도록 더 구성되는, 장치. - 제59항 내지 제61항 중 어느 한 항에 있어서,
상기 각각의 미리정해진 픽처부 이전의 상기 제1 비디오 데이터 스트림(14a)의 가장 최근의 미리정해진 제1 유형 픽처부의 제2 CPB 제거 시간과 동일하거나 이로부터 결정된 상한이 상기 제2 비디오 데이터 스트림의 제1 미리정해진 제1 유형 픽처부(23b')의 제2 CPB 제거 시간보다 큰 지 여부, 또는 상기 각각의 미리정해진 픽처부 이전의 상기 제1 비디오 데이터 스트림(14a)의 가장 최근의 미리정해진 제1 유형 픽처부에 표시된 최대 제2 CPB 제거 시간 값(99)이 상기 제2 비디오 데이터 스트림의 제1 미리정해진 제1 유형 픽처부(23b')의 제2 CPB 제거 시간보다 큰 지 여부를 확인하도록 구성되고,
두 검사 모두가 긍정(YES)로 나타내는 경우, 상기 설정 및 연결을 수행하도록 구성되는, 장치. - 비디오(12)를 비디오 데이터 스트림으로 인코딩하는 방법으로서, 상기 비디오 데이터 스트림에,
상기 비디오 데이터 스트림(14)의 완전 버전(15)을 버퍼링하는 경우에 디코더 측에서 적용될 제1 코딩된 픽처 버퍼(CPB) 제거 시간(trm (1))에 대한 제1 타이밍 정보(16), 및
상기 비디오 데이터 스트림의 완전 버전으로부터 상기 비디오 데이터 스트림의 부분(24)의 제거(22)에 의해 상기 비디오 데이터 스트림과 상이한 상기 비디오 데이터 스트림(14)의 축소 버전(20)을 버퍼링하기 위해 디코더 측에서 적용될 제2 CPB 제거 시간(trm (2))에 대한 제2 타이밍 정보(18)를 제공하는 단계를 포함하는, 비디오(12)를 비디오 데이터 스트림으로 인코딩하는 방법. - 비디오(12)를 비디오 데이터 스트림으로 인코딩하는 방법으로서, 상기 비디오 데이터 스트림에,
상기 비디오 데이터 스트림(14)의 완전 버전(15)을 버퍼링하는 경우에 디코더 측에서 적용될 제1 CPB 제거 시간(trm (1))에 대한 제1 타이밍 정보(16), 및
상기 비디오 데이터 스트림의 완전 버전으로부터 상기 비디오 데이터 스트림의 부분(24)의 제거(22)에 의해 상기 비디오 데이터 스트림과 상이한 상기 비디오 데이터 스트림(14)의 축소 버전(20)을 버퍼링하기 위해 디코더 측에서 적용될 제2 CPB 제거 시간(trm (2))에 대한 제2 타이밍 정보(18)를 제공하는 단계를 포함하는, 비디오(12)를 비디오 데이터 스트림으로 인코딩하는 방법. - 제1항 내지 제28항 중 어느 한 항에 따른 비디오 데이터 스트림을 전달하는 방법으로서,
상기 비디오 데이터 스트림으로부터 상기 비디오 데이터 스트림의 부분(24)을 제거하는 단계를 포함하는, 비디오 데이터 스트림을 전달하는 방법. - 제1항 내지 제28항 중 어느 한 항에 따른 비디오 데이터 스트림을 CPB에 의해 버퍼링되는 방식으로 디코딩하는 비디오 디코더(44)의 CPB(48)를 관리하는 방법으로서,
상기 부분이 상기 비디오 데이터 스트림에 포함되는 경우에 상기 제1 타이밍 정보(16), 및
상기 부분(24)이 제거된 경우에 상기 제2 타이밍 정보(18)에 따라 상기 CPB를 관리하는 단계를 포함하는, 비디오 디코더(44)의 CPB(48)를 관리하는 방법. - 비디오(12)를 비디오 데이터 스트림으로 인코딩하는 방법으로서, 상기 비디오 데이터 스트림에,
최소 CPB 공급 비트레이트에 관한 제1 HRD 타이밍 정보 데이터(70a,b), 및
최대 CPB 공급 비트레이트에 관한 제2 HRD 타이밍 정보 데이터(72a,b)를 제공하는 단계를 포함하고,
상기 제1 HRD 타이밍 정보 데이터(70a,b) 및 제2 HRD 타이밍 정보 데이터(72a,b)는 상기 제1 및 제2 HRD 타이밍 정보 데이터 사이를 선형으로 보간함으로써 실제 CPB 공급 비트레이트에 대한 제3 HRD 타이밍 정보의 결정을 가능하게 하는, 비디오(12)를 비디오 데이터 스트림으로 인코딩하는 방법. - 비디오(12)를 비디오 데이터 스트림으로 인코딩하는 방법으로서, 상기 비디오 데이터 스트림에,
최소 CPB 공급 비트레이트에 관한 제1 HRD 타이밍 정보(70), 및
최대 CPB 공급 비트레이트에 관한 제2 HRD 타이밍 정보(72)를 제공하는 단계를 포함하고,
상기 제1 HRD 타이밍 정보(70) 및 제2 HRD 타이밍 정보(72)는 상기 제1 및 제2 HRD 타이밍 정보 사이를 선형으로 보간함으로써 실제 CPB 공급 비트레이트에 대한 제3 HRD 타이밍 정보의 결정을 가능하게 하는, 비디오(12)를 비디오 데이터 스트림으로 인코딩하는 방법. - 인코딩된 비디오(12)를 갖는 비디오 데이터 스트림을 디코딩하는 비디오 디코더(44)의 CPB(48)를 관리하는 방법으로서,
상기 비디오 데이터 스트림으로부터,
최소 CPB 공급 비트레이트에 관한 제1 HRD 타이밍 정보(70), 및
최대 CPB 공급 비트레이트에 관한 제2 HRD 타이밍 정보(72)를 도출하는 단계,
상기 제1 및 제2 HRD 타이밍 정보 사이를 선형으로 보간함으로써 실제 CPB 공급 비트레이트에 대한 제3 HRD 타이밍 정보를 결정하는 단계, 및
상기 제3 HRD 타이밍 정보를 사용하여 상기 CPB를 관리하는 단계를 포함하는, 비디오 디코더(44)의 CPB(48)를 관리하는 방법. - 비디오(12a)를 비디오 데이터 스트림(14a; 14c)으로 인코딩하는 방법으로서, 상기 비디오 데이터 스트림에,
픽처부(23a)의 시퀀스로서, 각 픽처부는 인코딩된 비디오(12a)의 픽처(10a)를 갖고, 상기 픽처부는 CPB 제거 시간 레퍼런스로서 역할을 하는 제1 유형의 픽처부 및 제2 유형의 픽처부를 포함하는, 픽처부(23a)의 시퀀스,
각 픽처부에서 상기 각각의 픽처부의 제1 CPB 제거 시간에 대한 제1 타이밍 정보(95) - 상기 제1 CPB 제거 시간은 선행하는 제1 유형의 픽처부의 제거 이후 경과 시간을 측정함-,
미리정해진 제1 유형 픽처부에서 상기 각각의 미리정해진 제1 유형 픽처부로부터 계속 상기 비디오 데이터 스트림의 디코딩을 재개하는 경우에 상기 각각의 미리정해진 제1 유형 픽처부의 제2 CPB 제거 시간에 대한 제2 타이밍 정보 - 상기 제2 CPB 제거 시간은 상기 각각의 미리정해진 제1 유형 픽처부의 제1 비트의 CPB 도착 이후 경과 시간을 측정함 -, 및
동일한 것이 다른 비디오 데이터 스트림(14b)과의 스플라이스 포인트(92) 이전의 마지막 픽처부로서 역할을 할 수 있도록, 최종 CPB 도착과 CPB 제거 사이의 시간적 차이(trm#-taf#)가 미리정해진 임계치를 초과하는 픽처부를 나타내는 스플라이스 포인트 표시(94, 94')
를 제공하는 단계를 포함하는, 비디오(12a)를 비디오 데이터 스트림(14a; 14c)으로 인코딩하는 방법. - 상기 비디오 데이터 스트림이 픽처부(23a)의 시퀀스를 포함하도록 비디오(12a)를 비디오 데이터 스트림으로 인코딩하는 방법으로서, 각 픽처부는 인코딩된 비디오(12a)의 픽처(10a)를 갖고, 상기 방법은,
상기 픽처부를 CPB 제거 시간 레퍼런스로서 역할을 하는 제1 유형의 픽처부 및 제2 유형의 픽처부로 분류하는 단계,
상기 비디오 데이터 스트림에,
상기 각각의 픽처부의 제1 CPB 제거 시간에 대한 각 픽처부에서의 제1 타이밍 정보 - 상기 제1 CPB 제거 시간은 선행하는 제1 유형의 픽처부의 제거 이후 경과 시간을 측정함 -, 및
미리정해진 제1 유형 픽처부에서 상기 각각의 미리정해진 제1 유형 픽처부로부터 계속 상기 비디오 데이터 스트림의 디코딩을 재개하는 경우에 상기 각각의 미리정해진 제1 유형 픽처부의 제2 CPB 제거 시간에 대한 제2 타이밍 정보 - 상기 제2 CPB 제거 시간은 상기 각각의 미리정해진 제1 유형 픽처부의 제1 비트의 CPB 도착 이후 경과 시간을 측정함 -
를 제공하는 단계,
동일한 것이 다른 비디오 데이터 스트림(14b)과의 스플라이스 포인트(92) 이전의 마지막 픽처부로서 역할을 할 수 있도록, 미리정해진 픽처부 각각에 대해 최종 CPB 도착과 그 CPB 제거 사이의 시간적 차이(trm#-taf#)가 미리정해진 임계치를 초과하는지 여부를 검사하는 단계, 및
최종 CPB 도착과 CPB 제거 사이의 시간적 차이(trm#-taf#)가 상기 미리정해진 임계치를 초과하는 해당 미리정해진 픽처부를 나타내기 위해, 상기 비디오 데이터 스트림(14a)에 스플라이스 포인트 표시를 제공하는 단계를 포함하는,
비디오를 비디오 데이터 스트림으로 인코딩하여 상기 비디오 데이터 스트림이 픽처부(23a)의 시퀀스를 포함하는 방법. - 제51항 또는 제52항에 따른 비디오 데이터 스트림(14c)을 CPB에 의해 버퍼링되는 방식으로 디코딩하는 비디오 디코더(44)의 CPB(48)를 관리하는 방법으로서,
상기 제1 미리정해진 제1 유형 픽처부 내의 상기 연결 플래그가 상기 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인이 발생했음을 나타내는지 여부를 확인하는 단계, 및
상기 제1 미리정해진 제1 유형 픽처부의 제1 타이밍 정보에 기초하여 상기 제1 미리정해진 제1 유형 픽처부 내의 상기 연결 플래그가 상기 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인이 발생하지 않았음을 나타내는 경우, 및 상기 제1 미리정해진 제1 유형 픽처부의 제2 및 제3 타이밍 정보에 기초하여 상기 제1 미리정해진 제1 유형 픽처부 내의 상기 연결 플래그가 상기 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인이 발생했음을 나타내는 경우에, 상기 CPB로부터 상기 제1 미리정해진 제1 유형 픽처부(23b')를 제거할 시간을 결정하는 단계를 포함하는, 비디오 디코더(44)의 CPB(48)를 관리하는 방법. - 제1 비디오 데이터 스트림(14a) 및 제2 비디오 데이터 스트림(14b)을 함께 스플라이싱하는 방법으로서, 상기 제1 비디오 데이터 스트림(14a) 및 상기 제2 비디오 데이터 스트림(14b) 각각은,
픽처부(23a,b)의 시퀀스로서, 각 픽처부는 인코딩된 비디오(12a,b)의 픽처(12a,b)를 갖고, 상기 픽처부는 CPB 제거 시간 레퍼런스로서 역할을 하는 제1 유형의 픽처부 및 제2 유형의 픽처부를 포함하는, 픽처부(23a,b)의 시퀀스,
각 픽처부에서 상기 각각의 픽처부의 제1 CPB 제거 시간에 대한 제1 타이밍 정보 - 상기 제1 CPB 제거 시간은 선행하는 제1 유형의 픽처부의 제거 이후 경과 시간을 측정함 -, 및
미리정해진 제1 유형 픽처부에서 상기 각각의 미리정해진 제1 유형 픽처부로부터 계속 디코딩하는 상기 비디오 데이터 스트림을 재개하는 경우에 상기 각각의 미리정해진 제1 유형 픽처부의 제2 CPB 제거 시간에 대한 제2 타이밍 정보 - 상기 제2 CPB 제거 시간은 상기 각각의 미리정해진 제1 유형 픽처부의 제1 비트의 CPB 도착 이후 경과 시간을 측정함 - 를 포함하고,
상기 제2 비디오 데이터 스트림은 제1 미리정해진 제1 유형 픽처부에 연결 플래그(96) 및 제3 타이밍 정보(98)를 포함하고, 상기 연결 플래그(96)는 상기 제2 비디오 데이터 스트림을 나타내는 제2 상태로 설정되고, 상기 제1 미리정해진 제1 유형 픽처부는 상기 제2 비디오 데이터 스트림을 계속하고, 상기 제3 타이밍 정보는 상기 제1 미리정해진 제1 유형 픽처부에서 상기 제2 비디오 데이터 스트림을 스플라이스-인할 때 CPB 제거 시간을 결정하는 역할을 하는 상기 제1 미리정해진 제1 유형 픽처부의 제3 CPB 제거 시간을 나타내고, 상기 제3 CPB 제거 시간은 폐기 불가능한 픽처부의 가장 최근의 CPB 제거 이후 경과 시간을 측정하고,
상기 방법은,
동일한 것이 제1 비디오 데이터 스트림이 제2 비디오 데이터 스트림과 스플라이싱되기 전에 마지막 픽처부로서 역할을 하도록, 상기 제1 비디오 데이터 스트림에서의 스플라이스 포인트 표시(94; 94')가, 미리정해진 픽처부에 대해 CPB 도착과 CPB 제거 사이의 시간적 차이가 미리정해진 임계치를 초과하는 것으로 나타내는지 여부를 확인하는 단계,
상기 확인이 긍정(YES)으로 나타난 경우, 상기 제2 비디오 데이터 스트림의 제1 미리정해진 제1 유형 픽처부 내의 상기 연결 플래그(96)를 상기 제2 비디오 데이터 스트림이 상기 제1 미리정해진 제1 유형 픽처부에서 스플라이스-인되었음을 나타내는 제1 상태로 설정하는 단계, 및
상기 미리정해진 픽처부(26a') 및 상기 제1 미리정해진 제1 유형 픽처부(26b')에서 상기 제1 및 제2 데이터 스트림을 각각 연결하여 스플라이싱된 비디오 데이터 스트림을 획득하는 단계를 포함하는,
제1 비디오 데이터 스트림(14a) 및 제2 비디오 데이터 스트림(14b)을 함께 스플라이싱하는 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19160423 | 2019-03-01 | ||
EP19160423.0 | 2019-03-01 | ||
PCT/EP2020/055122 WO2020178126A1 (en) | 2019-03-01 | 2020-02-27 | Hypothetical reference decoder |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220008254A true KR20220008254A (ko) | 2022-01-20 |
Family
ID=65729088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020217031617A KR20220008254A (ko) | 2019-03-01 | 2020-02-27 | 가상 레퍼런스 디코더 |
Country Status (9)
Country | Link |
---|---|
US (2) | US11936889B2 (ko) |
EP (1) | EP3932069A1 (ko) |
JP (2) | JP7346585B2 (ko) |
KR (1) | KR20220008254A (ko) |
CN (1) | CN113785584B (ko) |
BR (1) | BR112021017426A2 (ko) |
MX (1) | MX2021010393A (ko) |
TW (1) | TWI759695B (ko) |
WO (1) | WO2020178126A1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220408098A1 (en) * | 2021-06-18 | 2022-12-22 | Tencent America LLC | Block-wise entropy coding method in neural image compression |
JPWO2023021595A1 (ko) * | 2021-08-18 | 2023-02-23 | ||
US11695965B1 (en) * | 2022-10-13 | 2023-07-04 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Video coding using a coded picture buffer |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7257162B2 (en) * | 2002-07-02 | 2007-08-14 | Conexant Systems, Inc. | Hypothetical reference decoder for compressed image and video |
JP4884290B2 (ja) * | 2007-05-07 | 2012-02-29 | パナソニック株式会社 | 動画像復号化集積回路、動画像復号化方法、動画像復号化装置及び動画像復号化プログラム |
US8345774B2 (en) * | 2008-01-11 | 2013-01-01 | Apple Inc. | Hypothetical reference decoder |
US9565431B2 (en) * | 2012-04-04 | 2017-02-07 | Qualcomm Incorporated | Low-delay video buffering in video coding |
US9374583B2 (en) * | 2012-09-20 | 2016-06-21 | Qualcomm Incorporated | Video coding with improved random access point picture behaviors |
US9491456B2 (en) * | 2012-09-24 | 2016-11-08 | Qualcomm Incorporated | Coded picture buffer removal times signaled in picture and sub-picture timing supplemental enhancement information messages |
US9374585B2 (en) * | 2012-12-19 | 2016-06-21 | Qualcomm Incorporated | Low-delay buffering model in video coding |
US10003815B2 (en) * | 2013-06-03 | 2018-06-19 | Qualcomm Incorporated | Hypothetical reference decoder model and conformance for cross-layer random access skipped pictures |
WO2015007754A1 (en) * | 2013-07-15 | 2015-01-22 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Low delay concept in multi-layered video coding |
BR112015030894B1 (pt) * | 2013-09-12 | 2023-03-14 | Sony Corporation | Dispositivo codificador, transmissor e receptor |
WO2015138979A2 (en) * | 2014-03-14 | 2015-09-17 | Sharp Laboratories Of America, Inc. | Dpb capacity limits |
CN113347442B (zh) * | 2016-02-09 | 2022-08-23 | 弗劳恩霍夫应用研究促进协会 | 用于对编码有图片的数据流进行解码的方法 |
WO2019145262A1 (en) * | 2018-01-25 | 2019-08-01 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Efficient sub-picture extraction |
-
2020
- 2020-02-27 JP JP2021551746A patent/JP7346585B2/ja active Active
- 2020-02-27 MX MX2021010393A patent/MX2021010393A/es unknown
- 2020-02-27 CN CN202080032895.0A patent/CN113785584B/zh active Active
- 2020-02-27 BR BR112021017426A patent/BR112021017426A2/pt unknown
- 2020-02-27 EP EP20706305.8A patent/EP3932069A1/en active Pending
- 2020-02-27 TW TW109106558A patent/TWI759695B/zh active
- 2020-02-27 KR KR1020217031617A patent/KR20220008254A/ko unknown
- 2020-02-27 WO PCT/EP2020/055122 patent/WO2020178126A1/en active Application Filing
-
2021
- 2021-08-30 US US17/461,795 patent/US11936889B2/en active Active
-
2023
- 2023-09-06 JP JP2023144535A patent/JP2023164964A/ja active Pending
-
2024
- 2024-02-28 US US18/589,704 patent/US20240244240A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
CN113785584A (zh) | 2021-12-10 |
WO2020178126A1 (en) | 2020-09-10 |
JP7346585B2 (ja) | 2023-09-19 |
CN113785584B (zh) | 2024-10-01 |
EP3932069A1 (en) | 2022-01-05 |
JP2022522767A (ja) | 2022-04-20 |
MX2021010393A (es) | 2021-11-12 |
US20240244240A1 (en) | 2024-07-18 |
BR112021017426A2 (pt) | 2022-01-18 |
US11936889B2 (en) | 2024-03-19 |
JP2023164964A (ja) | 2023-11-14 |
TW202038616A (zh) | 2020-10-16 |
US20210392353A1 (en) | 2021-12-16 |
TWI759695B (zh) | 2022-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11936889B2 (en) | Hypothetical reference decoder | |
JP5820551B1 (ja) | 映像シーケンスのピクチャの復号化及び符号化 | |
KR102717190B1 (ko) | 비디오 인코더, 비디오 디코더, 인코딩 및 디코딩을 위한 방법 및 고급 비디오 코딩 개념을 실현하기 위한 비디오 데이터 스트림 | |
JP7361976B1 (ja) | 符号化ピクチャバッファを用いたビデオ符号化 | |
BR102023010473B1 (pt) | Aparelho para decodificação de vídeo, aparelho para codificação de um vídeo em um fluxo contínuo de dados, método para decodificação de vídeo e fluxo contínuo de dados |