IP Library Granted Patent US 9,615,096
Granted Patent B2
US 9,615,096 · App. 14/513,959 · Granted Apr 4, 2017

Device and method for video encoding

Inventor: Cheng-Long Lin (New Taipei, TW)
Assignee: HON HAI PRECISION INDUSTRY CO., LTD.
H04N19/124H04N19/107H04N19/167H04N19/17H04N19/129H04N19/162
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,615,096
App. No.
14/513,959
Granted
Apr 4, 2017
Kind
B2
Abstract

A video encoding device calculates number of frames into which the current image needs to be encoded. The video encoding device divides the current image into a plurality of macro blocks, identifies importance of the respective macro blocks according to content of the current image and ranks the macro blocks from high to low according to the assigned importance. The video encoding device labels each macro block with a label, and encodes the macro blocks according to its label to form frames.

Claims (38)

1. A video encoding device, comprising:

at least one processor;

a storage system; and

one or more programs stored in the storage system and executed by the at least one processor, and the one or more programs comprising instructions for:

determining whether to encode a current image into I-frame;

calculating N dispersed frames upon condition that the current image will be encoded into I-frame, wherein N is a positive integer starting at one;

dividing the current image into M macro blocks, and identifying importance of the M macro blocks according to a content of the current image, wherein M is a positive integer starting at one;

ranking the M macro blocks from high to low according to the importance, and labeling each macro block with a label x, wherein the label x is a positive integer from 1 to N;

encoding the macro blocks whose label x equals 1 with a low QP value and an intra-coding and encoding the macro blocks whose label x is greater than 1 with a high QP value and an intra-coded to form a first frame; and

encoding the macro blocks whose label x is less than n with the inter-coding to form a n th frame, wherein n is a positive integer from 2 to N,

wherein labeling each macro block with the label x comprising:

selecting part of all macro blocks sequentially one by one to add to a macro block list, calculating total coding size S Total of the macro block list until the total size S Total is larger than S max-frame , and labeling the macro blocks in the macro block list with label 1, wherein the S max-frame is the maximum allowable transmit threshold of network transmission channel, wherein S Total =[1−(C mb-list /C mb-total )]*S HQP +S INTRA , C mb-list is a number of list macro block list, C mb-total is a number of all of the macro blocks, S HQP is a size of the current image when encoding with a high QP value, S INTRA is a size of the macro block list when encoding with the intra-coding; and

clearing the macro block list and selecting the rest of all macro block sequentially one by one to add to the macro block list, calculating a total coding size S′ Total of the macro block list, until the total size S′ Total is larger than S max-frame , and labeling the macro blocks in the macro block list with the label x, wherein S′ Total =[1−(C mb-list /C mb-total )]*S PSKIP +S INTRA , wherein S PSKIP is a size of the current image when encoding with the inter-coding.

2. The video encoding device as claimed in claim 1 , wherein dividing the current image into M macro blocks comprises: dividing the current image into M macro blocks with 8×8 or 16×16 mode.

3. The video encoding device as claimed in claim 1 , wherein ranking the M macro blocks from high to low according to the importance, labeling each macro block with the label x comprises:

assigning the M macro blocks into N frames averagely, wherein the number of macro blocks in each frame is M/N, and the label x of each macro block is the number of corresponding frame.

4. The video encoding device as claimed in claim 1 , wherein encoding the macro blocks to form a n th frame comprises:

encoding the macro blocks with a low QP value and the encoding way is intra-coding when the label x of the macro blocks equals n; and

encoding the macro blocks with a high QP value and the encoding way is inter-coded when the label x of the macro blocks is greater than n.

5. The video encoding device as claimed in claim 1 , wherein calculating number N of dispersed frames upon condition that the current image will be encoded into I frame comprises: calculating number N of dispersed frames according to the maximum allowable transmit threshold S max-frame of network transmission channel.

6. A method for video coding, comprising:

determining whether to encode a current image into I frame;

calculating N dispersed frames upon condition that the current image will be encoded into I frame, wherein N is a positive integer starting at one;

dividing the current image into M macro blocks, and identifying importance of the M macro blocks according to a content of the current image, wherein M is a positive integer starting at one;

ranking the M macro blocks from high to low according to the importance, labeling each macro block with a label x, wherein the label x is a positive integer from 1 to N;

encoding the macro blocks whose label x equals 1 with a low QP value and an intra-coding and encoding the macro blocks whose label x is greater than 1 with a high QP value and an intra-coded to form a first frame; and

encoding the macro blocks whose label x is less than n with inter-coding to form a n th frame, wherein i is a positive integer from 2 to N,

wherein labeling each macro block with the label x comprising:

selecting part of all macro blocks sequentially one by one to add to a macro block list, calculating a total coding size S Total of the macro block list, until the total size S Total is larger than S max-frame , and labeling the macro blocks in the macro block list with label 1, wherein S Total =[1−(C mb-list /C mb-total )]*S HQP +S INTRA , C mb-list is a number of list macro block list, C mb-total is a number of all of the macro blocks, S HQP is a size of the current image when encoding with a high QP value, S INTRA is a size of the macro block list when encoding with the intra-coding; and

clearing the macro block list and selecting the rest of all macro block sequentially one by one to add to the macro block list, calculating a total coding size S′ Total of the macro block list, until the total size S Total is larger than S max-frame , and labeling the macro blocks in the macro block list with label x, wherein S′ Total =[1−(C mb-list /C mb-total )]*S PSKIP +S INTRA , wherein S PSKIP is a size of the current image when encoding with the inter-coding,

wherein the S max-frame is the maximum allowable transmit threshold of network transmission channel.

7. The method as claimed in claim 6 , wherein dividing the current image into M macro blocks further comprises: dividing the current image into M macro blocks with 8×8 or 16×16 mode.

8. The method as claimed in claim 6 , wherein ranking the M macro blocks from high to low according to the importance, labeling each macro block with the label x further comprises:

assigning the M macro blocks into N frames averagely, wherein the number of macro blocks in each frame is M/N, and the label x of each macro block is the number of corresponding frame.

9. The method as claimed in claim 6 , wherein encoding the macro blocks to form a n th frame further comprises:

encoding the macro blocks with a low QP value and the encoding way is intra-coding when the label x of the macro blocks equals n; and

encoding the macro blocks with a high QP value and the encoding way is inter-coded when the label x of the macro blocks is greater than n.

10. The method as claimed in claim 6 , wherein calculating number N of dispersed frames upon condition that the current image will be encoded into I frame further comprises: calculating number N of dispersed frames according to the maximum allowable transmit threshold S max-frame of network transmission channel.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2018
From: HON HAI PRECISION INDUSTRY CO., LTD.
To: CLOUD NETWORK TECHNOLOGY SINGAPORE PTE. LTD.
Reel/Frame 045171/0306 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 14, 2014
From: LIN, CHENG-LONG
To: HON HAI PRECISION INDUSTRY CO., LTD.
Reel/Frame 033987/0478 →
Priority Claims (1)
TW 103119450 A · Jun 4, 2014 · national
Continuity (1)
Related Publication 20150358625A1 · Dec 10, 2015