IP Library › Granted Patent US 8,265,164
Granted Patent B2
US 8,265,164 · App. 11/778,460 · Granted Sep 11, 2012

Method and apparatus for determining whether adjacent macroblocks are located in the same slice

Assignee: Via Technologies, Inc.
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 8,265,164
App. No.
11/778,460
Granted
Sep 11, 2012
Kind
B2
Abstract

The present invention is directed to a method for determining whether a current macroblock and an adjacent macroblock thereof are located in the same slice. The method is used in a predetermined process for a block-based digitally encoded image. The block-based digitally encoded image is represented as an encoded bit-stream and each macroblock therein is assigned a sequence characteristic number. The method includes: providing a memory space for storing and tracing a slice changing point; initializing the slice changing point to a predetermined number; checking the encoded bit-stream, and when the current slice is determined to change, setting the slice changing point to a derived sequence characteristic number derived from the sequence characteristic number of the current macroblock; and determining whether the current macroblock and the adjacent block thereof are in the same slice according to a comparison result between the sequence characteristic number of the adjacent block and the slice changing point. The invention also discloses an apparatus for performing the method.

Claims (24)

1. A method for determining whether two adjacent macroblocks are located in the same slice, the method being applicable to a specific process based on macroblocks for a block-based encoded image represented as an encoded bit-stream, each macroblock in the image being assigned a sequence characteristic number, the method comprising the steps of:

providing a memory space to store and trace a slice changing point;

initializing said slice changing point to a predetermined initial value;

decoding a current macroblock;

setting said slice changing point to a derived sequence characteristic number of a current macroblock when a current slice is determined to change by examining the encoded bit-stream, said derived sequence characteristic number being derived from said sequence characteristic number of the current macroblock; and

determining whether the current macroblock and an adjacent macroblock of the current macroblock are located in the same slice according to a comparison result between said sequence characteristic number of the adjacent macroblock and said slice changing point;

wherein said predetermined initial value is −1, and said derived sequence characteristic number is said sequence characteristic number of the current macroblock minus 1, and said determining step determines that the current macroblock and the adjacent macroblock are located in the same slice when said slice changing point is less than said sequence characteristic number of the adjacent macroblock.

2. The method according to claim 1 , wherein the adjacent macroblock is a left macroblock or a top macroblock of the current macroblock.

3. The method according to claim 1 , wherein the block-based encoded image is encoded with H.264 protocol.

4. The method according to claim 1 , wherein the specific process is a deblocking process.

5. The method according to claim 1 , wherein said sequence characteristic number is a macroblock sequence number starting at 0 and increasing by 1 in a specific order.

6. The method according to claim 1 , wherein whether the current slice changes or not is determined by examining whether there is more raw byte sequence payload (RBSP) or by examining value of end_of_slice_flag.

7. A block-based digital image decoding apparatus capable of determining whether two adjacent macroblocks are located in the same slice, the block-based digital image being represented as an encoded bit-stream, each macroblock in the block-based digital image being assigned a sequence characteristic number, the apparatus comprising:

a memory unit, providing a memory space to store and trace a slice changing point; and

a processing unit, comprising:

an initializing module, configured to initialize said slice changing point to a predetermined initial value;

a tracing module, configured to set said slice changing point to a derived sequence characteristic number of a current macroblock when a current slice is determined to change by examining the encoded bit-stream, said derived sequence characteristic number being derived from said sequence characteristic number of the current macroblock; and

a determining module, configured to determine whether the current macroblock and an adjacent macroblock of the current macroblock are located in the same slice according to a comparison result between said sequence characteristic number of the adjacent macroblock and said slice changing point;

wherein said predetermined initial value is −1, and said derived sequence characteristic number is said sequence characteristic number of the current macroblock minus 1, and said determining module determines that the current macroblock and the adjacent macroblock are located in the same slice when said slice changing point is less than said sequence characteristic number of the adjacent macroblock.

8. The apparatus according to claim 7 , wherein the adjacent macroblock is a left macroblock or a top macroblock of the current macroblock.

9. The apparatus according to claim 7 , wherein the block-based digital image is encoded with H.264 protocol.

10. The apparatus according to claim 7 , wherein if said determining module determines that the current macroblock and the adjacent macroblock are located in different slice, then the apparatus skips a deblocking process for boundary between the current macroblock and the adjacent macroblock.

11. The apparatus according to claim 7 , wherein said sequence characteristic number is a macroblock sequence number starting at 0 and increasing by 1 in a specific order.

12. The method according to claim 7 , wherein said tracing module determines whether the current slice changes or not by examining whether there is more raw byte sequence payload (RBSP) or by examining value of end_of_slice_flag.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 13, 2007
From: FU, FRANK; LEE, SEAN
To: VIA TECHNOLOGIES, INC.
Reel/Frame 019686/0503 →
Priority Claims (1)
TW 96117816 A · May 18, 2007 · national
Continuity (1)
Related Publication 20080285657A1 · Nov 20, 2008