IP Library Granted Patent US 8,509,315
Granted Patent B1
US 8,509,315 · App. 12/565,699 · Granted Aug 13, 2013

Maintaining synchronization of compressed data and associated metadata

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,509,315
App. No.
12/565,699
Granted
Aug 13, 2013
Kind
B1
Abstract

Synchronization of data streams is enabled. Synchronized data streams may include compressed data streams. Conventional data compression components may be utilized to generate the compressed data streams. As an example, compressed digitized video and associated metadata may be synchronized in this way. Synchronization may be enabled based on causing data compression components to generate detectable data units. For example, patterns of data units having well characterized entropies may be passed through data compression components to generate detectable patterns of compressed data units.

Claims (52)

1. A method of synchronizing a plurality of data streams including an uncompressed data stream and a supplementary data stream comprising:

causing a data stream compressor to output a compressed data stream based at least in part on the uncompressed data stream;

causing the data stream compressor to output a distinguished data unit in the compressed data stream at least in part by modifying the uncompressed data stream with a transcompression tracker prior to compression;

detecting the distinguished data unit in the compressed data stream with the transcompression tracker; and

synchronizing the compressed data stream and the supplementary data stream based at least in part on the detection,

wherein the transcompression tracker comprises a pre-compression data unit counter maintaining a first count and a post-compression data unit counter maintaining a second count, and the transcompression tracker generates synchronization information based at least in part on the first count and the second count.

2. The method of claim 1 , wherein modifying the uncompressed data stream comprises overwriting at least one data unit in the uncompressed data stream.

3. The method of claim 2 , wherein the at least one data unit is overwritten with at least one low entropy data unit, and at least one high entropy data unit.

4. The method of claim 3 , wherein:

the uncompressed data stream comprises a plurality of digitized video frames;

the at least one low entropy data unit comprises a low entropy digitized video frame; and

the at least one high entropy data unit comprises a high entropy digitized video frame.

5. The method of claim 1 , wherein:

the compressed data stream comprises a plurality of compressed data units including at least one compressed data unit based on the uncompressed data stream and the distinguished data unit; and

detecting the distinguished data unit comprises distinguishing the distinguished data unit from the at least one compressed data unit based on the uncompressed data stream.

6. The method of claim 5 , wherein:

each of the plurality of compressed data units has a size; and

distinguishing the distinguished data unit from the at least one compressed data unit based on the uncompressed data stream comprises distinguishing the distinguished data unit based at least in part on the size of the distinguished data unit.

7. The method of claim 6 , wherein:

sizes of data units are classified into a plurality of size classes; and

distinguishing the distinguished data unit comprises detecting a pattern of size classes among the sizes of the plurality of compressed data units.

8. The method of claim 7 , wherein:

the plurality of size classes includes a small class and a large class; and

the pattern of size classes includes at least one of the small class and at least one of the large class.

9. The method of claim 8 , wherein the pattern of size classes comprises a sequence of size classes including a sequence of the at least one of the small class followed by the at least one of the large class.

10. The method of claim 9 , wherein:

at least one of the plurality of compressed data units having a size in the small class corresponds to at least one low entropy data unit in the uncompressed data stream; and

at least one of the plurality of compressed data units having a size in the large class corresponds to at least one high entropy data unit in the uncompressed data stream.

11. A system comprising a receiving module configured to, at least, receive the plurality of data streams synchronized with the method of claim 1 .

12. At least one tangible non-transitory computer-readable medium having thereon computer-executable instructions that configure a computerized system to, at least, perform the method of claim 1 .

13. The method of claim 1 , wherein transcompression tracker adjusts the first count or the second count based at least in part on the detection of the distinguished data unit in the compressed data stream.

14. The method of claim 1 , further comprising, responsive to the detection of the distinguished data unit in the compressed data stream, filtering out the distinguished data unit from the compressed data stream.

15. A system for synchronizing a plurality of data streams including an uncompressed data stream and a supplementary data stream, the system comprising:

a data stream compressor configured to, at least, compress the uncompressed data stream to generate a compressed data stream; and

a data stream synchronizer configured to, at least:

cause the data stream compressor to output a distinguished data unit in the compressed data stream at least in part by modifying the uncompressed data stream with a transcompression tracker prior to compression;

detect the distinguished data unit in the compressed data stream with the transcompression tracker; and

synchronize the compressed data stream and the supplementary data stream based at least in part on the detection,

wherein the transcompression tracker comprises a pre-compression data unit counter maintaining a first count and a post-compression data unit counter maintaining a second count, and the transcompression tracker generates synchronization information based at least in part on the first count and the second count.

16. A user interface that, at least, configures the system of claim 15 .

17. A system for synchronizing a plurality of data streams including an uncompressed data stream, the system comprising:

a data stream compressor;

a data stream multiplexer;

a control logic component configured to, at least:

cause the data stream multiplexer to route the uncompressed data stream to the data stream compressor; and

cause the data stream multiplexer to route a high entropy data unit to the data stream compressor thereby modifying the uncompressed data stream received by the data stream compressor; and

a marker detector configured at least to detect a distinguished output in a compressed data stream from the data stream compressor, the distinguished output in the compressed data stream corresponding to a sequence of uncompressed data units received by the data stream compressor including the high entropy data unit.

18. A method of synchronizing a plurality of data streams including an uncompressed data stream and a supplementary data stream comprising:

causing a data stream compressor to output a compressed data stream based at least in part on the uncompressed data stream;

causing the data stream compressor to output a marker pattern of data units including a distinguished data unit in the compressed data stream at least in part by modifying the uncompressed data stream prior to compression; and

detecting the marker pattern of data units in the compressed data stream; and

synchronizing the compressed data stream and the supplementary data stream based at least in part on the detection.

Assignments (4)
SECURITY AGREEMENT Recorded Jun 1, 2023
From: VIASAT, INC.
To: BANK OF AMERICA, N.A., AS AGENT
Reel/Frame 063822/0446 →
SECURITY AGREEMENT Recorded Mar 7, 2022
From: VIASAT, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 059332/0558 →
SECURITY INTEREST Recorded Mar 27, 2019
From: VIASAT, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL TRUSTEE
Reel/Frame 048715/0589 →
SECURITY AGREEMENT Recorded Dec 23, 2013
From: VIASAT, INC.
To: UNION BANK, N.A., AS AGENT FOR THE SECURED PARTIES
Reel/Frame 031868/0789 →