IP Library Granted Patent US 9,961,350
Granted Patent B2
US 9,961,350 · App. 15/095,810 · Granted May 1, 2018

Method and apparatus for automatic discovery of elements in a system of encoders

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,961,350
App. No.
15/095,810
Granted
May 1, 2018
Kind
B2
Abstract

A method and system is provided for automatic discovery of elements in a system of encoders optionally controlled by a statmux controller. Discovery is implemented by sniffing a multicast IP address used by the elements of the system to communicate metadata.

Claims (59)

1. A method of automatically discovering and obtaining data from geographically distributed elements of a closed loop statistical multiplexing system comprising a plurality of encoders and at least one statmux controller communicatively coupled by a network, comprising:

sniffing multicast messages transmitted via the network to identify each of the plurality of encoders and the at least one statmux controller of the closed loop statistical multiplexing system;

parsing the multicast messages in the network to identify each of a plurality of program data streams from each of the identified plurality of encoders;

correlating each of the identified plurality of program data streams with one of the plurality of encoders and an associated statmux controller;

synchronizing the identified correlated program data streams; and

multiplexing the synchronized, correlated program data streams into assembled data streams,

wherein the sniffed multicast messages comprise metadata multicast messages transmitted from the encoders and the at least one statmux controller to only one metadata multicast address, and

wherein the multicast messages transmitted from the encoders each comprise:

a first program source identifier;

an encoder packet timestamp; and

a bit rate request;

each of the multicast messages transmitted from the at least one statmux controller each comprise:

a second program source identifier;

a statmux packet timestamp; and

a bitrate allocation.

2. The method of claim 1 , wherein the at least one statmux controller comprises a plurality of statmux controllers, and each of the multicast messages transmitted from the plurality of controllers further comprises:

a statmux pool identifier for the statmux controller transmitting the multicast message of the plurality of statmux controllers.

3. The method of claim 1 , wherein parsing the multicast messages in the network to identify each of the plurality of program streams from each of the plurality of encoders comprises:

parsing the multicast messages for the first program source identifiers and the second program source identifiers;

identifying the program data streams according to the first program source identifiers and the second program source identifiers.

4. The method of claim 3 , wherein parsing the multicast messages for the first program source identifiers and the second program source identifiers comprises:

spawning an encoder multicast sniffer thread to parse the multicast messages for the first program source identifiers from the encoders;

spawning a statmux controller multicast sniffer thread to parse the multicast messages for the second program source identifiers from the at least one statmux controller.

5. The method of claim 3 , wherein correlating each of the plurality of program data streams with the one of the plurality of encoders and the associated statmux decoder comprises:

matching the multicast messages transmitted from the encoders with multicast messages transmitted from the at least one statmux encoder at least in part by matching the first program source identifiers to the second program source identifiers; and

temporally correlating the encoder packet timestamps of the multicast messages having matching first program source identifiers and second program source identifiers with the statmux packet timestamp.

6. The method of claim 5 , wherein correlating each of the plurality of program data streams with the one of the plurality of encoders and the associated statmux decoder further comprises:

spawning a program correlation thread for each of the identified plurality of program data streams, each program correlation thread matching the multicast messages transmitted from the encoders with multicast messages transmitted from the at least one statmux encoder at least in part by matching the first program source identifiers to the second program source identifiers and temporally correlating the encoder packet timestamps of the multicast messages having matching first program source identifiers and second program source identifiers with the statmux timestamp for each of the identified plurality of program data streams;

correlating each of the identified plurality of program data streams with the encoder and the associated statmux controller using the spawned program correlation thread associated with the program data stream.

7. The method of claim 4 , wherein synchronizing the identified correlated program data streams comprises:

buffering the identified correlated plurality of program streams; and

synchronizing the buffered correlated plurality of program streams at least in part according to the encoder packet timestamp and the statmux packet timestamp.

8. An apparatus for automatically discovering and obtaining data from geographically distributed elements of a closed loop statistical multiplexing system comprising a plurality of encoders and at least one statmux controller communicatively coupled by a network, comprising:

a processor, communicatively coupled to the network;

a memory, storing processor instructions comprising processor instructions for:

sniffing multicast messages transmitted via the network to identify each of the plurality of encoders and the at least one statmux controller of the closed loop statistical multiplexing system;

parsing the multicast messages in the network to identify each of a plurality of program data streams from each of the identified plurality of encoders;

correlating each of the identified plurality of program data streams with one of the plurality of encoders and an associated statmux controller;

synchronizing the identified correlated program data streams; and

multiplexing the synchronized, correlated program data streams into assembled data streams,

wherein the sniffed multicast messages comprise metadata multicast messages transmitted from the encoders and the at least one statmux controller to only one metadata multicast address,

wherein the multicast messages transmitted from the encoders each comprise:

a first program source identifier;

an encoder packet timestamp; and

a bit rate request;

each of the multicast messages transmitted from the at least one statmux controller each comprise:

a second program source identifier;

a statmux packet timestamp; and

a bitmap allocation.

9. The apparatus of claim 8 , wherein the at least one statmux controller comprises a plurality of statmux controllers, and each of the multicast messages transmitted from the plurality of controllers further comprises:

a statmux pool identifier for the statmux controller transmitting the multicast message of the plurality of statmux controllers.

10. The apparatus of claim 8 , wherein the instructions for parsing the multicast messages in the network to identify each of the plurality of program streams from each of the plurality of encoders comprises instructions for:

parsing the multicast messages for the first program source identifiers and the second program source identifiers.

11. The apparatus of claim 10 , wherein the instructions for correlating each of the plurality of program data streams with the one of the plurality of encoders and the associated statmux decoder comprises:

instructions for matching the multicast messages transmitted from the encoders with multicast messages transmitted from the at least one statmux encoder at least in part by matching the first program source identifiers to the second program source identifiers; and

instructions for temporally correlating the encoder packet timestamps of the multicast messages having matching first program source identifiers and second program source identifiers with the statmux timestamp.

12. The apparatus of claim 11 , wherein the instructions for synchronizing the identified correlated program data streams comprises instructions for:

buffering the identified correlated plurality of program streams; and

synchronizing the buffered correlated plurality of program streams at least in part according to the encoder packet timestamp and the statmux packet timestamp.

Assignments (9)
RELEASE OF SECURITY INTEREST AT REEL/FRAME 049905/0504 Recorded Dec 19, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: ARRIS ENTERPRISES LLC (F/K/A ARRIS ENTERPRISES, INC.); ARRIS TECHNOLOGY, INC.; ARRIS SOLUTIONS, INC.; COMMSCOPE, INC. OF NORTH CAROLINA; COMMSCOPE TECHNOLOGIES LLC; RUCKUS WIRELESS, LLC (F/K/A RUCKUS WIRELESS, INC.)
Reel/Frame 071477/0255 →
SECURITY INTEREST Recorded Dec 17, 2024
From: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE INC., OF NORTH CAROLINA; OUTDOOR WIRELESS NETWORKS LLC; RUCKUS IP HOLDINGS LLC
To: APOLLO ADMINISTRATIVE AGENCY LLC
Reel/Frame 069889/0114 →
SECURITY INTEREST Recorded Nov 19, 2021
From: ARRIS SOLUTIONS, INC.; ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE, INC. OF NORTH CAROLINA; RUCKUS WIRELESS, INC.
To: WILMINGTON TRUST
Reel/Frame 060752/0001 →
PATENT SECURITY AGREEMENT Recorded Jul 3, 2019
From: ARRIS ENTERPRISES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 049820/0495 →
ABL SECURITY AGREEMENT Recorded Jul 3, 2019
From: COMMSCOPE, INC. OF NORTH CAROLINA; COMMSCOPE TECHNOLOGIES LLC; ARRIS ENTERPRISES LLC; ARRIS TECHNOLOGY, INC.; RUCKUS WIRELESS, INC.; ARRIS SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 049892/0396 →
TERM LOAN SECURITY AGREEMENT Recorded Jul 3, 2019
From: COMMSCOPE, INC. OF NORTH CAROLINA; COMMSCOPE TECHNOLOGIES LLC; ARRIS ENTERPRISES LLC; ARRIS TECHNOLOGY, INC.; RUCKUS WIRELESS, INC.; ARRIS SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 049905/0504 →
CHANGE OF NAME Recorded Jun 25, 2019
From: ARRIS ENTERPRISES, INC.
To: ARRIS ENTERPRISES LLC
Reel/Frame 049586/0470 →
CHANGE OF NAME Recorded Mar 14, 2017
From: ARRIS ENTERPRISES INC
To: ARRIS ENTERPRISES LLC
Reel/Frame 041995/0031 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2016
From: MCCARTHY, SEAN T.; TURMEL, FREDERIC
To: ARRIS ENTERPRISES LLC
Reel/Frame 038589/0589 →