KR20170095816A - 병렬 비디오 인코딩을 위한 레이트 제어 - Google Patents
병렬 비디오 인코딩을 위한 레이트 제어 Download PDFInfo
- Publication number
- KR20170095816A KR20170095816A KR1020177012687A KR20177012687A KR20170095816A KR 20170095816 A KR20170095816 A KR 20170095816A KR 1020177012687 A KR1020177012687 A KR 1020177012687A KR 20177012687 A KR20177012687 A KR 20177012687A KR 20170095816 A KR20170095816 A KR 20170095816A
- Authority
- KR
- South Korea
- Prior art keywords
- video frame
- frame
- bit rate
- video
- encoding
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
- 238000000034 method Methods 0.000 claims abstract description 148
- 239000000872 buffer Substances 0.000 claims abstract description 56
- 230000008569 process Effects 0.000 claims abstract description 29
- 238000013139 quantization Methods 0.000 claims abstract description 26
- 238000012545 processing Methods 0.000 claims description 100
- 230000004044 response Effects 0.000 claims description 10
- 230000008859 change Effects 0.000 claims description 8
- 230000001419 dependent effect Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 description 36
- 238000010586 diagram Methods 0.000 description 21
- 238000004458 analytical method Methods 0.000 description 10
- 238000005070 sampling Methods 0.000 description 7
- 239000000463 material Substances 0.000 description 5
- 238000003860 storage Methods 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000001914 filtration Methods 0.000 description 4
- 230000007774 longterm Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000011144 upstream manufacturing 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/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/436—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 using parallelised computational 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/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/115—Selection of the code volume for a coding unit prior to coding
-
- 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/124—Quantisation
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/15—Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/152—Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
도 1a는 일부 실시예에 따른 병렬 비디오 인코딩 아키텍처의 개략도이다.
도 1b는 일부 실시예에 따른 병렬 비디오 인코더 아키텍처의 개략도이다.
도 2a는 일부 실시예에 따라 초기 비디오 프레임에 적합한 병렬 비디오 인코딩 레이트 제어 방법을 예시하는 흐름도이다.
도 2b는 일부 실시예에 따라 후속 비디오 프레임에 적합한 병렬 비디오 인코딩 레이트 제어 방법을 도시하는 흐름도이다.
도 3a, 도 3b 및 도 3c는 일부 실시예에 따라 직전 프레임의 크기를 추정하기 위한 기술을 예시하는 블록도이다.
도 3d는 일부 실시예에 따라 프레임 타입의 함수로서 직전 프레임의 크기를 추정하는 방법을 예시하는 흐름도이다.
도 3e는 일부 실시예에 따라 직전 프레임의 크기를 추정하기 위한 기술을 예시하는 블록도이다.
도 3f는 일부 실시예에 따라 직전 프레임의 크기를 추정하기 위한 복수의 기술 중에서 동적으로 선택하는 방법을 예시하는 흐름도이다.
도 4는 일부 실시예에 따라 병렬 비디오 인코딩 레이트 제어를 위해 구성된 레이트 제어 모듈을 예시하는 블록도이다.
도 5는 일부 실시예에 따라 병렬 비디오 인코딩 레이트 제어를 위해 구성된 레이트 제어 모듈을 포함하는 비디오 프로세싱 시스템을 나타내는 블록도이다.
도 6은 일부 실시예에 따른 그래픽 프로세서에 대한 실시예의 블록도이다.
도 7은 일부 실시예에 따른 그래픽 프로세싱 엔진의 다른 실시예의 블록도이다.
도 8은 본 발명의 일 실시예에 따른 데이터 프로세싱 시스템의 블록도이다.
도 9는 일부 실시예에 따라 마련된 예시적인 이동 디바이스의 도면이다.
Claims (26)
- 병렬 비디오 인코딩을 위한 장치로서,
이전 비디오 프레임 또는 그 일부를 처리하고, 인코드 프로세스를 나타내는 하나 이상의 중간 파라미터를 생성하는 하나 이상의 인코딩 파이프라인과,
현재 비디오 프레임 또는 그 일부를 처리하는 부가적인 인코딩 파이프라인 - 상기 부가적인 인코딩 파이프라인은 레이트 컨트롤러(rate controller)를 포함함 - 을 포함하되,
상기 레이트 컨트롤러는,
상기 하나 이상의 중간 파라미터에 적어도 부분적으로 기초하여 상기 이전 비디오 프레임에 대한 비트레이트를 추정하는 로직을 포함하는 이전 비디오 프레임 크기 추정 모듈과,
상기 크기 추정 모듈에 연결된 버퍼 충만도(buffer fullness) 업데이트 모듈 - 상기 버퍼 충만도 업데이트 모듈은 상기 비트레이트 추정치에 적어도 부분적으로 기초하여 버퍼 충만도를 업데이트하는 로직을 포함함 - 과,
상기 비트레이트 추정치 및 상기 버퍼 충만도 업데이트에 적어도 부분적으로 기초하여 상기 현재 비디오 프레임에 대한 목표 비트레이트를 결정하는 로직을 포함하는 목표 비트레이트 결정 모듈을 포함하는
장치.
- 제 1 항에 있어서,
상기 추정 모듈은 상기 이전 비디오 프레임을 처리함으로써 이용 가능한 상기 중간 파라미터를 나타내는 동기화 정보에 의존하는 방식으로 상기 이전 프레임의 비트레이트를 추정하는
장치.
- 제 1 항에 있어서,
상기 하나 이상의 인코딩 파이프라인은,
상기 현재 비디오 프레임 직전의 제 1 비디오 프레임 또는 그 일부를 처리하는 제 1 인코딩 파이프라인과,
제 2 비디오 프레임 직전의 제 3 비디오 프레임을 처리하는 제 2 인코딩 파이프라인을 더 포함하며,
상기 크기 추정 모듈은,
상기 제 1 비디오 프레임과 연관된 목표 비트레이트, 상기 제 2 비디오 프레임과 연관된 실제 비트레이트 및 상기 제 2 비디오 프레임과 연관된 추정된 비트레이트를 포함하는 제 1 중간 파라미터 집합과,
상기 제 1 비디오 프레임과 연관된 추정된 예측 왜곡(prediction distortion, PD) 및 상기 제 1 비디오 프레임과 연관된 양자화 파라미터(quantization parameter, QP) 값, 상기 제 2 비디오 프레임과 연관된 QP 값 및 상기 제 2 비디오 프레임과 연관된 상기 실제 비트레이트를 포함하는 제 2 중간 파라미터 집합과,
상기 제 1 비디오 프레임과 연관된 실제 PD, 상기 제 2 비디오 프레임과 연관된 실제 PD 및 상기 제 2 비디오 프레임과 연관된 상기 실제 비트레이트를 포함하는 제 3 중간 파라미터 집합과,
제 1 비디오 프레임과 연관된 양자화 계수의 통계치를 포함하는 제 4 중간 파라미터 집합
중의 적어도 하나의 함수로서 상기 제 1 비디오 프레임 비트레이트를 추정하는 로직을 포함하는
장치.
- 제 3 항에 있어서,
상기 크기 추정 모듈은 상기 제 1 비디오 프레임과 연관된 상기 추정된 예측 왜곡 및 QP 값, 및 상기 제 2 비디오 프레임과 연관된 추정된 예측 왜곡, QP 값 및 실제 비트레이트에 기초하여 상기 제 1 비디오 프레임 비트레이트를 추정하는 로직을 포함하는
장치.
- 제 3 항에 있어서,
상기 크기 추정 모듈은 상기 제 1 비디오 프레임의 실제 예측 왜곡, 인코딩 모드 및 움직임 벡터 추정치와, 상기 제 2 비디오 프레임의 실제 예측 왜곡 및 상기 제 2 비디오 프레임의 실제 비트레이트의 함수에 기초하여 상기 제 1 비디오 프레임 비트레이트를 추정하는 로직을 더 포함하는
장치.
- 제 2 항에 있어서,
상기 크기 추정 모듈은,
상기 제 1 비디오 프레임의 상기 실제 PD가 이용 가능해짐에 따라 상기 제 1 비디오 프레임의 상기 실제 PD에 기초하여 상기 제 1 비디오 프레임 비트레이트를 추정하고,
상기 제 1 비디오 프레임의 상기 실제 PD가 이용 가능하지 않음에 따라 상기 제 1 비디오 프레임과 연관된 상기 추정된 PD 또는 상기 목표 비트레이트에 기초하여 상기 제 1 비디오 프레임 비트레이트를 추정하는
로직을 더 포함하는
장치.
- 제 1 항에 있어서,
상기 하나 이상의 인코딩 파이프라인은,
상기 현재 비디오 프레임 직전의 제 1 비디오 프레임 또는 그 일부를 처리하는 제 1 인코딩 파이프라인과,
상기 제 2 비디오 프레임 직전의 제 3 비디오 프레임을 처리하는 제 2 인코딩 파이프라인을 더 포함하며,
상기 크기 추정 모듈은 상기 제 2 비디오 프레임을 처리하여 생성되는 하나 이상의 중간 파라미터에 적어도 부분적으로 기초하여 상기 제 1 비디오 프레임 비트레이트를 추정하는 로직을 더 포함하는
장치.
- 제 1 항에 있어서,
상기 레이트 컨트롤러는 상기 이전 프레임 타입에 적어도 부분적으로 기초하여 상기 이전 프레임과 연관된 상기 비트레이트를 결정하는 로직을 더 포함하는
장치.
- 제 8 항에 있어서,
상기 하나 이상의 인코딩 파이프라인은,
상기 현재 비디오 프레임 직전의 제 1 비디오 프레임 또는 그 일부를 처리하는 제 1 인코딩 파이프라인과,
상기 제 2 비디오 프레임 직전의 제 3 비디오 프레임을 처리하는 제 2 인코딩 파이프라인을 더 포함하며,
상기 레이트 컨트롤러는 상기 제 1 프레임이 제 1 인트라 프레임인 것에 응답하여 또는 상기 제 2 비디오 프레임이 인트라 프레임, 장면 전환 프레임 또는 골든 프레임인 것에 응답하여 상기 제 1 비디오 프레임 비트레이트를 상기 목표 비트레이트로서 추정하는 로직을 더 포함하는
장치.
- 제 1 항에 있어서,
상기 하나 이상의 인코딩 파이프라인은,
상기 현재 비디오 프레임 직전의 제 1 비디오 프레임 또는 그 일부를 처리하는 제 1 인코딩 파이프라인과,
상기 제 2 비디오 프레임 직전의 제 3 비디오 프레임을 처리하는 제 2 인코딩 파이프라인을 더 포함하며,
상기 버퍼 충만도 업데이트 모듈은 상기 제 2 비디오 프레임에 대한 실제 비트레이트와 추정된 비트레이트 간의 차 및 상기 제 1 비디오 프레임에 대한 상기 추정된 비트레이트와 평균 비트레이트 간의 차의 함수에 기초하여 상기 버퍼 충만도를 업데이트하는 로직을 더 포함하는
장치.
- 제 1 항에 있어서,
상기 레이트 컨트롤러는 상기 현재 프레임 타입 및 상기 이전 프레임 타입 모두 다에 의존하는 방식으로 상기 현재 비디오 프레임에 대한 상기 목표 비트레이트를 결정하는 로직을 더 포함하는
장치.
- 비디오 인코더로서,
하나 이상의 이전 비디오 프레임 또는 그 일부를 인코딩하는 하나 이상의 인코딩 파이프라인과,
현재 비디오 프레임 또는 그 일부를 인코딩하는 부가적인 인코딩 파이프라인 - 상기 부가적인 인코딩 파이프라인은 레이트 컨트롤러를 포함함 - 을 포함하되,
상기 레이트 컨트롤러는,
상기 이전 비디오 프레임을 처리하여 생성되는 하나 이상의 중간 파라미터에 적어도 부분적으로 기초하여 상기 이전 비디오 프레임에 대한 비트레이트를 추정하고,
상기 추정된 비트레이트에 적어도 부분적으로 기초하여 버퍼 충만도 (buffer fullness)를 업데이트하고,
상기 추정된 비트 레이트 및 상기 업데이트된 버퍼 충만도에 적어도 부분적으로 기초하여 상기 현재 비디오 프레임에 대한 목표 비트레이트를 결정하는 수단을 갖는
비디오 인코더.
- 병렬 비디오 인코딩을 위한 컴퓨터 구현된(computer-implemented) 방법으로서,
하나 이상의 인코딩 파이프라인을 통해, 하나 이상의 이전 비디오 프레임 또는 그 일부를 처리하고 상기 처리를 나타내는 하나 이상의 중간 파라미터를 생성하는 단계와,
다른 인코딩 파이프라인을 통해, 현재 비디오 프레임 또는 그 일부를 처리하는 단계를 포함하되,
상기 현재 비디오 프레임을 처리하는 단계는,
상기 하나 이상의 중간 파라미터에 적어도 부분적으로 기초하여 상기 이전 비디오 프레임에 대한 비트 레이트를 추정하는 단계와,
상기 비트레이트 추정치에 적어도 부분적으로 기초하여 버퍼 충만도를 업데이트하는 단계와,
상기 비트 레이트 추정치 및 상기 버퍼 충만도 업데이트에 적어도 부분적으로 기초하여 상기 현재 비디오 프레임에 대한 목표 비트레이트를 결정하는 단계를 더 포함하는
병렬 비디오 인코딩을 위한 컴퓨터 구현된 방법.
- 제 13 항에 있어서,
상기 이전 프레임의 상기 비트레이트를 추정하는 단계는 상기 이전 비디오 프레임을 처리함으로써 이용 가능한 중간 파라미터를 나타내는 동기화 정보에 의존하는
병렬 비디오 인코딩을 위한 컴퓨터 구현된 방법.
- 제 13 항에 있어서,
상기 하나 이상의 이전 비디오 프레임을 처리하는 단계는,
상기 현재 비디오 프레임 직전의 제 1 비디오 프레임을 처리하는 단계와,
상기 제 1 비디오 프레임 직전의 제 2 비디오 프레임을 처리하는 단계를 더 포함하며,
상기 제 1 비디오 프레임 비트레이트는,
상기 제 1 비디오 프레임과 연관된 목표 비트레이트, 상기 제 2 비디오 프레임과 연관된 실제 비트레이트 및 상기 제 2 비디오 프레임과 연관된 추정된 비트레이트를 포함하는 제 1 중간 파라미터 집합과,
상기 제 1 비디오 프레임과 연관된 추정된 예측 왜곡(prediction distortion, PD) 및 상기 제 1 비디오 프레임과 연관된 양자화 파라미터(quantization parameter, QP) 값과, 상기 제 2 비디오 프레임과 연관된 QP 값 및 상기 제 2 비디오 프레임과 연관된 상기 실제 비트레이트를 포함하는 제 2 중간 파라미터 집합과,
상기 제 1 비디오 프레임과 연관된 실제 PD, 상기 제 2 비디오 프레임과 연관된 실제 PD 및 상기 제 2 비디오 프레임과 연관된 상기 실제 비트레이트를 포함하는 제 3 중간 파라미터 집합, 또는
제 1 비디오 프레임과 연관된 양자화 계수의 통계치를 포함하는 제 4 중간 파라미터 집합
중의 적어도 하나의 함수로서 추정되는
병렬 비디오 인코딩을 위한 컴퓨터 구현된 방법.
- 제 15 항에 있어서,
상기 제 1 비디오 프레임 비트레이트는 상기 제 1 비디오 프레임과 연관된 추정된 예측 왜곡 및 QP 값, 및 상기 제 2 비디오 프레임과 연관된 추정된 예측 왜곡, QP 값 및 실제 비트레이트에 기초하여 추정되는
병렬 비디오 인코딩을 위한 컴퓨터 구현된 방법.
- 제 15 항에 있어서,
상기 제 1 비디오 프레임 비트레이트는 상기 제 1 비디오 프레임의 실제 예측 왜곡, 인코딩 모드 및 움직임 벡터 추정치와, 상기 제 2 비디오 프레임의 실제 예측 왜곡 및 상기 제 2 비디오 프레임의 실제 비트레이트의 함수에 기초하여 추정되는
병렬 비디오 인코딩을 위한 컴퓨터 구현된 방법.
- 제 14 항에 있어서,
상기 이전 비디오 프레임의 상기 비트레이트를 추정하는 단계는,
상기 제 1 비디오 프레임의 상기 실제 PD가 이용 가능해짐에 따라 상기 제 1 비디오 프레임의 상기 실제 PD에 기초하여 상기 제 1 비디오 프레임 비트레이트를 추정하는 단계와,
상기 제 1 비디오 프레임의 상기 실제 PD가 이용 가능하지 않음에 따라 상기 제 1 비디오 프레임과 연관된 상기 추정된 PD 또는 상기 목표 비트레이트에 기초하여 상기 제 1 비디오 프레임 비트레이트를 추정하는 단계를 더 포함하는
병렬 비디오 인코딩을 위한 컴퓨터 구현된 방법.
- 제 13 항에 있어서,
상기 하나 이상의 이전 비디오 프레임을 처리하는 단계는,
상기 현재 비디오 프레임 직전의 제 1 비디오 프레임을 처리하는 단계와,
상기 제 1 비디오 프레임 직전의 제 2 비디오 프레임을 처리하는 단계를 더 포함하며,
상기 이전 프레임 비트레이트를 추정하는 단계는 상기 제 2 비디오 프레임을 처리하여 생성된 하나 이상의 중간 파라미터에 적어도 부분적으로 기초하여 상기 제 1 비디오 프레임 비트레이트를 추정하는 단계를 더 포함하는
병렬 비디오 인코딩을 위한 컴퓨터 구현된 방법.
- 제 13 항에 있어서,
상기 이전 프레임과 연관된 상기 비트레이트는 상기 이전 프레임 타입에 적어도 부분적으로 기초하여 추정되는
병렬 비디오 인코딩을 위한 컴퓨터 구현된 방법.
- 제 20 항에 있어서,
상기 이전 비디오 프레임을 처리하는 단계는,
상기 현재 비디오 프레임 직전의 제 1 비디오 프레임을 처리하는 단계와,
상기 제 1 비디오 프레임 직전의 제 2 비디오 프레임을 처리하는 단계를 더 포함하며,
제 1 비디오 프레임 비트 레이트는 상기 제 1 프레임이 제 1 인트라 프레임인 것에 응답하여, 또는 상기 제 2 비디오 프레임이 인트라 프레임, 장면 전환 프레임 또는 골든 프레임인 것에 응답하여 상기 목표 비트레이트로서 추정되는
병렬 비디오 인코딩을 위한 컴퓨터 구현된 방법.
- 제 13 항에 있어서,
상기 이전 비디오 프레임을 처리하는 단계는,
상기 현재 비디오 프레임 직전의 제 1 비디오 프레임을 처리하는 단계와,
상기 제 1 비디오 프레임 직전의 제 2 비디오 프레임을 처리하는 단계를 더 포함하며,
상기 버퍼 충만도는 상기 제 2 비디오 프레임에 대한 실제 비트레이트와 추정된 비트 레이트 간의 차 및 상기 제 1 비디오 프레임에 대한 상기 추정된 비트레이트와 평균 비트레이트 사이의 차의 함수에 기초하여 업데이트되는
병렬 비디오 인코딩을 위한 컴퓨터 구현된 방법.
- 제 13 항에 있어서,
상기 현재 비디오 프레임에 대한 상기 목표 비트레이트를 결정하는 단계는 상기 현재 프레임 타입 및 상기 이전 프레임 타입 모두에 의존하는
병렬 비디오 인코딩을 위한 컴퓨터 구현된 방법.
- 하나 이상의 컴퓨터 판독 가능한 매체로서,
컴퓨팅 디바이스상에서 실행될 때, 상기 컴퓨팅 장치로 하여금 청구항 제 13 항 내지 제 23 항 중의 어느 한 항의 방법을 수행하게 하는, 복수의 명령어가 저장된
컴퓨터 판독 가능한 매체.
- 제 24 항에 있어서,
상기 컴퓨팅 디바이스에 의해 실행될 때, 상기 디바이스로 하여금 상기 방법을 수행하게 하는 저장된 명령어를 더 포함하며,
상기 방법은,
하나 이상의 인코딩 파이프라인을 통해, 하나 이상의 이전 비디오 프레임 또는 그 일부를 처리하고 상기 처리를 나타내는 하나 이상의 중간 파라미터를 생성하는 단계와,
다른 인코딩 파이프라인을 통해, 현재 비디오 프레임 또는 그 일부를 처리하는 단계를 더 포함하며,
상기 현재 비디오 프레임을 처리하는 단계는,
상기 하나 이상의 중간 파라미터에 적어도 부분적으로 기초하여 상기 이전 비디오 프레임에 대한 비트레이트를 추정하는 단계와,
상기 추정된 비트레이트에 적어도 부분적으로 기초하여 버퍼 충만도를 업데이트하는 단계와,
상기 비트 레이트 추정치 및 상기 버퍼 충만도 업데이트에 적어도 부분적으로 기초하여 상기 현재 비디오 프레임에 대한 목표 비트레이트를 결정하는 단계를 더 포함하는
컴퓨터 판독 가능한 매체.
- 제 25 항에 있어서,
상기 컴퓨팅 디바이스에 의해 실행될 때, 상기 디바이스로 하여금 상기 방법을 수행하게 하는 저장된 명령어를 더 포함하며,
상기 방법은,
상기 현재 비디오 프레임 직전의 제 1 비디오 프레임을 처리하는 단계와,
상기 제 1 비디오 프레임 직전의 제 2 비디오 프레임을 처리하는 단계를 더 포함하며,
상기 제 1 비디오 프레임 비트레이트는,
상기 제 1 비디오 프레임과 연관된 목표 비트레이트, 상기 제 2 비디오 프레임과 연관된 실제 비트레이트 및 상기 제 2 비디오 프레임과 연관된 추정된 비트레이트를 포함하는 제 1 중간 파라미터 집합과,
상기 제 1 비디오 프레임과 연관된 추정된 예측 왜곡(prediction distortion, PD) 및 상기 제 1 비디오 프레임과 연관된 양자화 파라미터(quantization parameter, QP) 값과, 상기 제 2 비디오 프레임과 연관된 QP 값 및 상기 제 2 비디오 프레임과 연관된 상기 실제 비트레이트를 포함하는 제 2 중간 파라미터 집합과,
상기 제 1 비디오 프레임과 연관된 실제 PD, 상기 제 2 비디오 프레임과 연관된 실제 PD 및 상기 제 2 비디오 프레임과 연관된 상기 실제 비트레이트를 포함하는 제 3 중간 파라미터 집합과, 또는
제 1 비디오 프레임과 연관된 양자화 계수의 통계치를 포함하는 제 4 중간 파라미터 집합
중의 적어도 하나의 함수로서 추정되는
컴퓨터 판독 가능한 매체.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US14/567,600 US10097828B2 (en) | 2014-12-11 | 2014-12-11 | Rate control for parallel video encoding |
| US14/567,600 | 2014-12-11 | ||
| PCT/US2015/059709 WO2016094000A1 (en) | 2014-12-11 | 2015-11-09 | Rate control for parallel video encoding |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR20170095816A true KR20170095816A (ko) | 2017-08-23 |
Family
ID=56107911
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020177012687A Ceased KR20170095816A (ko) | 2014-12-11 | 2015-11-09 | 병렬 비디오 인코딩을 위한 레이트 제어 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US10097828B2 (ko) |
| EP (1) | EP3231176A4 (ko) |
| KR (1) | KR20170095816A (ko) |
| CN (1) | CN107113432B (ko) |
| WO (1) | WO2016094000A1 (ko) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20210077771A (ko) * | 2018-10-31 | 2021-06-25 | 에이티아이 테크놀로지스 유엘씨 | 콘텐츠 적응적 양자화 강도 및 비트 레이트 모델링 |
| KR102515254B1 (ko) | 2023-01-16 | 2023-03-30 | 황정석 | 발수 코팅 처리된 원단을 이용한 커튼 및 이의 제조 방법 |
Families Citing this family (28)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20160360206A1 (en) * | 2015-06-04 | 2016-12-08 | Microsoft Technology Licensing, Llc | Rate controller for real-time encoding and transmission |
| US11076153B2 (en) * | 2015-07-31 | 2021-07-27 | Stc.Unm | System and methods for joint and adaptive control of rate, quality, and computational complexity for video coding and video delivery |
| FR3040849A1 (fr) * | 2015-09-04 | 2017-03-10 | Stmicroelectronics (Grenoble 2) Sas | Procede de compression d'un flux de donnees video |
| CN107872669B (zh) * | 2016-09-27 | 2019-05-24 | 腾讯科技(深圳)有限公司 | 视频码率处理方法和装置 |
| CN108401159B (zh) * | 2017-02-07 | 2022-07-08 | 腾讯科技(深圳)有限公司 | 一种目标码率控制的方法以及电子设备 |
| JP2018191136A (ja) * | 2017-05-02 | 2018-11-29 | キヤノン株式会社 | 符号化装置、符号化方法およびプログラム |
| US10306250B2 (en) * | 2017-06-16 | 2019-05-28 | Oath Inc. | Video encoding with content adaptive resource allocation |
| KR102543444B1 (ko) * | 2017-08-29 | 2023-06-13 | 삼성전자주식회사 | 영상 부호화 장치 |
| WO2019055886A1 (en) * | 2017-09-18 | 2019-03-21 | Intel IP Corporation | APPARATUS, SYSTEM AND METHOD FOR VIDEO CODING |
| CN109660825B (zh) * | 2017-10-10 | 2021-02-09 | 腾讯科技(深圳)有限公司 | 视频转码方法、装置、计算机设备及存储介质 |
| CN110945870A (zh) * | 2018-08-01 | 2020-03-31 | 深圳市大疆创新科技有限公司 | 视频处理设备和方法 |
| CN108989814B (zh) * | 2018-08-06 | 2021-06-04 | 上海大学 | 一种基于并行编码结构的码率控制方法 |
| US20200053388A1 (en) * | 2018-08-10 | 2020-02-13 | Disney Enterprises, Inc. | Machine learning based video compression |
| US11544606B2 (en) * | 2018-09-14 | 2023-01-03 | Disney Enterprises, Inc. | Machine learning based video compression |
| KR102711111B1 (ko) * | 2018-09-28 | 2024-09-26 | 인텔 코포레이션 | 전송 제어 비디오 코딩 |
| WO2020089823A1 (en) | 2018-10-31 | 2020-05-07 | Beijing Bytedance Network Technology Co., Ltd. | Overlapped block motion compensation with adaptive sub-block size |
| CN113366831B (zh) * | 2019-01-13 | 2024-04-05 | 北京字节跳动网络技术有限公司 | 重叠块运动补偿和其他工具之间的协调 |
| CN110519599B (zh) * | 2019-08-22 | 2021-05-14 | 北京数码视讯软件技术发展有限公司 | 一种基于分布式分析的视频编码方法和装置 |
| CN110418144A (zh) * | 2019-08-28 | 2019-11-05 | 成都索贝数码科技股份有限公司 | 一种基于nvidia gpu实现一入多出转码多码率视频文件的方法 |
| CN114424549B (zh) * | 2019-10-31 | 2024-06-11 | 株式会社索思未来 | 运动图像编码方法、编码处理方法、运动图像编码装置及编码处理装置 |
| CN110996038B (zh) * | 2019-11-19 | 2020-11-10 | 清华大学 | 一种面向多人互动直播的自适应码率调节方法 |
| EP4200847A4 (en) | 2020-08-24 | 2024-10-02 | FD IP & Licensing LLC | Previsualization devices and systems for the film industry |
| US12401818B2 (en) | 2021-02-26 | 2025-08-26 | Qualcomm Incorporated | Efficient video encoder architecture |
| CN113784123B (zh) * | 2021-11-11 | 2022-03-15 | 腾讯科技(深圳)有限公司 | 视频编码方法和装置、存储介质及电子设备 |
| US12254551B2 (en) | 2022-07-13 | 2025-03-18 | Fd Ip & Licensing Llc | Method and application for animating computer generated images |
| GB2620922B (en) * | 2022-07-22 | 2024-08-14 | V Nova Int Ltd | Data processing in an encoding process |
| US11875492B1 (en) | 2023-05-01 | 2024-01-16 | Fd Ip & Licensing Llc | Systems and methods for digital compositing |
| US12368864B2 (en) | 2023-08-03 | 2025-07-22 | City University Of Hong Kong | Facilitating encoding of video data using neural network |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0899961A1 (en) | 1997-08-25 | 1999-03-03 | Tektronix, Inc. | Pipelined processing for moving picture compression bit rate control |
| US8054880B2 (en) | 2004-12-10 | 2011-11-08 | Tut Systems, Inc. | Parallel rate control for digital video encoder with multi-processor architecture and picture-based look-ahead window |
| US7274739B2 (en) | 2003-05-19 | 2007-09-25 | General Instrument Corporation | Methods and apparatus for improving video quality in statistical multiplexing |
| EP2328351B1 (en) | 2004-02-06 | 2017-03-22 | Apple Inc. | Rate and quality controller for H.264/AVC video coder and scene analyzer therefor |
| US9781433B2 (en) * | 2005-01-26 | 2017-10-03 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems, methods, and apparatus for real-time video encoding |
| US8126283B1 (en) * | 2005-10-13 | 2012-02-28 | Maxim Integrated Products, Inc. | Video encoding statistics extraction using non-exclusive content categories |
| JP2010515336A (ja) * | 2006-12-27 | 2010-05-06 | インテル コーポレイション | ビデオ情報をデコード及びエンコードする方法及び装置 |
| CN100562118C (zh) * | 2007-07-03 | 2009-11-18 | 上海富瀚微电子有限公司 | 一种视频编码的码率控制方法 |
| US8798137B2 (en) * | 2008-02-29 | 2014-08-05 | City University Of Hong Kong | Bit rate estimation in data or video compression |
| US8879623B2 (en) * | 2009-09-02 | 2014-11-04 | Sony Computer Entertainment Inc. | Picture-level rate control for video encoding a scene-change I picture |
| CA2722993A1 (fr) | 2010-12-01 | 2012-06-01 | Ecole De Technologie Superieure | Systeme d'ecodage video parallele multitrames et multitranches avec encodage simultane de trames predites |
| KR20130101412A (ko) * | 2012-03-05 | 2013-09-13 | 한국전자통신연구원 | 비디오 비트율 제어 방법 및 그 장치 |
| US9357210B2 (en) | 2013-02-28 | 2016-05-31 | Sonic Ip, Inc. | Systems and methods of encoding multiple video streams for adaptive bitrate streaming |
-
2014
- 2014-12-11 US US14/567,600 patent/US10097828B2/en not_active Expired - Fee Related
-
2015
- 2015-11-09 CN CN201580061746.6A patent/CN107113432B/zh not_active Expired - Fee Related
- 2015-11-09 EP EP15867693.2A patent/EP3231176A4/en not_active Withdrawn
- 2015-11-09 WO PCT/US2015/059709 patent/WO2016094000A1/en not_active Ceased
- 2015-11-09 KR KR1020177012687A patent/KR20170095816A/ko not_active Ceased
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20210077771A (ko) * | 2018-10-31 | 2021-06-25 | 에이티아이 테크놀로지스 유엘씨 | 콘텐츠 적응적 양자화 강도 및 비트 레이트 모델링 |
| KR102515254B1 (ko) | 2023-01-16 | 2023-03-30 | 황정석 | 발수 코팅 처리된 원단을 이용한 커튼 및 이의 제조 방법 |
Also Published As
| Publication number | Publication date |
|---|---|
| EP3231176A4 (en) | 2018-06-20 |
| CN107113432B (zh) | 2020-09-11 |
| US20160173875A1 (en) | 2016-06-16 |
| WO2016094000A1 (en) | 2016-06-16 |
| US10097828B2 (en) | 2018-10-09 |
| EP3231176A1 (en) | 2017-10-18 |
| CN107113432A (zh) | 2017-08-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN107113432B (zh) | 用于并行视频编码的码率控制 | |
| CN111066326B (zh) | 机器学习视频处理系统和方法 | |
| US9807410B2 (en) | Late-stage mode conversions in pipelined video encoders | |
| KR102587638B1 (ko) | 비디오 코딩을 위해 이웃 블록 패턴을 이용하는 모션 추정 방법 및 시스템 | |
| US10827186B2 (en) | Method and system of video coding with context decoding and reconstruction bypass | |
| CN110740318A (zh) | 用于视频处理和视频译码的自动自适应长期参考帧选择 | |
| US20160007046A1 (en) | Estimating rate costs in video encoding operations using entropy encoding statistics | |
| CN106664409B (zh) | 视频编码中黄金帧选择的方法、系统、设备和介质 | |
| CN113132728B (zh) | 编码方法及编码器 | |
| CN103503457A (zh) | 运动图像编码装置、运动图像解码装置、运动图像编码方法以及运动图像解码方法 | |
| KR102390162B1 (ko) | 데이터 인코딩 장치 및 데이터 인코딩 방법 | |
| CN106537918A (zh) | 用于视频编码的运动估计的系统和方法 | |
| KR102593525B1 (ko) | 비디오 픽처 디코딩 및 인코딩 방법 및 장치 | |
| CN106534850B (zh) | 图像处理装置、图像插值方法和图像编码方法 | |
| JP2022535859A (ja) | Mpmリストを構成する方法、クロマブロックのイントラ予測モードを取得する方法、および装置 | |
| CN110351554A (zh) | 用于视频编码的分割和模式决策的生成 | |
| KR20240039178A (ko) | 인코딩 및 디코딩 방법 그리고 장치 | |
| CN105245896A (zh) | Hevc并行运动补偿方法及装置 | |
| TW201724852A (zh) | 平行算術寫碼技術 | |
| CN103248891B (zh) | 一种基于n-bit截尾量化和块内二维预测的参考帧压缩方法 | |
| US10341664B2 (en) | Configurable intra coding performance enhancements | |
| Stefanoski et al. | Spatially and temporally scalable compression of animated 3D meshes with MPEG-4/FAMC | |
| KR20120088372A (ko) | 고화질 영상을 위한 무손실 영상 압축방법, 압축 해제방법 및 이를 적용한 전자기기 | |
| KR20140023918A (ko) | 동화상 부호화 장치 | |
| CN101854538A (zh) | 运动图像处理方法及运动图像处理器 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0105 | International application |
Patent event date: 20170511 Patent event code: PA01051R01D Comment text: International Patent Application |
|
| PG1501 | Laying open of application | ||
| A201 | Request for examination | ||
| PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20201109 Comment text: Request for Examination of Application |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20221124 Patent event code: PE09021S01D |
|
| E601 | Decision to refuse application | ||
| PE0601 | Decision on rejection of patent |
Patent event date: 20230621 Comment text: Decision to Refuse Application Patent event code: PE06012S01D Patent event date: 20221124 Comment text: Notification of reason for refusal Patent event code: PE06011S01I |