IP Library Granted Patent US 7,145,567
Granted Patent B2
US 7,145,567 · App. 10/406,013 · Granted Dec 5, 2006

Bitstream format and reading and writing methods and apparatus therefor

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 7,145,567
App. No.
10/406,013
Granted
Dec 5, 2006
Kind
B2
Abstract

Image data having a bit depth of m bits, where m is not a power of two, may be divided into two parts for storage. The first part is the n most significant bits, where n is a power of two. The second part is the k least significant bits, where k=m−n and k<n. For example, 10-bit data may be separated into 8-bit and 2-bit parts. The 8-bit data for a given image is placed in the bitstream as a contiguous block with the end of the data aligned with a memory boundary, such as a page boundary. The 2-bit data is collected into bytes that are placed in the bitstream as a contiguous block. The block of 2-bit data is placed in the bitstream preceding and contiguous with the block of 8-bit data. Padding may be provided to align the beginning of the image data with a memory boundary. The image data for multiple images may be placed in the bitstream contiguously for storage. 10-bit data for an alpha channel, if any, also may be split into 8-bit and 2-bit parts. The 8-bit alpha data for a given image is placed in the bitstream as a contiguous block with the beginning of the data aligned with a memory boundary, such as a page boundary. The 2-bit alpha data is collected into bytes that are placed in the bitstream as a contiguous block. The block of 2-bit alpha data is placed in the bistream subsequent to and contiguous with the block of 8-bit alpha data. Padding may be provided to align the end of the alpha data with a page boundary. The alpha data for multiple images may be placed in the bitstream contiguously for storage.

Claims (26)

1. A method for reading a bitstream of m-bit image data, wherein the bitstream comprises, for each frame of image data, a first data portion including n most significant bits of the m-bit image data for all pixels in the frame in a contiguous block, wherein n is an integer and a power of two, a second data portion including k least significant bits of the m-bit image data for all pixels in the frame in a contiguous block, wherein k equals the difference between m and n, wherein the first data portion ends on a memory boundary; and wherein the second data portion precedes and is contiguous with the first data portion in the bitstream, the method for reading comprising:

accessing an n-bit representation for a single frame of image data, including:

determing an offset and a size of the n-bit representation for the single frame in the bitstream;

rounding the offset down to the nearest memory boundary;

rounding the size up to the nearest boundary; and

performing a read operation on the bitstream using the rounded offset and rounded size.

2. The method of claim 1 , wherein the bitstream further comprises alpha information corresponding to each frame of image data, wherein the alpha information for a frame is subsequent to and contiguous in the bitstream with the first data portion for the corresponding frame, the method further comprising:

determining an offset and a size of n-bit alpha information in the bitstream;

rounding up the size to the nearest memory boundary;

performing a read operation on the bitstream using the offset and the rounded size.

3. The method of claim 1 , further comprising accessing an n-bit representation of additional frames of image data, comprising:

determining an offset and a size of the n-bit image data for each additional frame in the bitstream;

rounding the offset down to the nearest memory boundary;

rounding the size up to the nearest memory boundary;

determining an offset and a size for other data in the bitstream corresponding to each additional frame; and

instructing an operating system to read the bitstream including the other data and the n-bit image data for each additional frame using a scatter/gather operation so as to discard the other data and retain the n-bit image data in a memory.

4. The method of claim 1 , wherein the bitstream is part of the file format for video data stored in a data file.

5. A computer program product, comprising:

a computer readable medium;

computer program instructions stored on the computer readable medium that, when interpreted by a computer, instruct the computer to perform method for reading a bitstream of m-bit image data, wherein the bitstream comprises, for each frame of image data, a first data portion including n most significant bits of the m-bit image data for all pixels in the frame in a contiguous block, wherein n is an integer and a power of two, a second data portion including k least significant bits of the m-bit image data for all pixels in the frame in a contiguous block, wherein k equals the difference between m and n, wherein the first data portion ends on a memory boundary; and wherein the second data portion precedes and is contiguous with the first data portion in the bitstream, the method for reading comprising:

accessing an n-bit representation for a single frame of image data, including:

determine the offset and size of the n-bit representation for the single frame in the bitstream;

rounding the offset down to the nearest memory boundary;

rounding the size up to the nearest memory boundary; and

performing a read operation on the bitstream using the rounded offset and the rounded size.

6. The method of claim 5 , wherein the bitstream is part of the file format for video data stored in a data file.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Jan 5, 2021
From: CERBERUS BUSINESS FINANCE, LLC
To: AVID TECHNOLOGY, INC.
Reel/Frame 055731/0019 →
RELEASE OF SECURITY INTEREST IN UNITED STATES PATENTS Recorded Mar 1, 2016
From: KEYBANK NATIONAL ASSOCIATION
To: AVID TECHNOLOGY, INC.
Reel/Frame 037970/0201 →
ASSIGNMENT FOR SECURITY -- PATENTS Recorded Feb 26, 2016
From: AVID TECHNOLOGY, INC.
To: CERBERUS BUSINESS FINANCE, LLC, AS COLLATERAL AGENT
Reel/Frame 037939/0958 →
PATENT SECURITY AGREEMENT Recorded Jun 23, 2015
From: AVID TECHNOLOGY, INC.
To: KEYBANK NATIONAL ASSOCIATION, AS THE ADMINISTRATIVE AGENT
Reel/Frame 036008/0824 →