IP Library Granted Patent US 9,866,656
Granted Patent B2
US 9,866,656 · App. 14/411,143 · Granted Jan 9, 2018

System and method for single KVM client accommodating multiple different video compression technologies

Inventors: Craig S. Siegman (Pembroke Pines, FL); Joseph Amirthasamy (Plantation, FL); George N. Griffin (Coral Springs, FL)
Assignee: AVOCENT HUNTSVILLE, LLC
H04L69/162G06F17/2247H04L67/02H04N21/2343H04N21/2393H04N21/4143H04N21/437H04N21/4402H04N21/4622H04N21/4782H04N21/64322H04N21/8193H04N21/8543
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,866,656
App. No.
14/411,143
Granted
Jan 9, 2018
Kind
B2
Abstract

A method is disclosed for providing compressed video to a personal electronic device of a user using one of a plurality of different video compression protocols, and wherein the personal electronic device has a web browser. The method may involve using the personal electronic device to transmit a request for video content from a server via a remotely located controller. The controller may be used to serve up HTML5 client code to the browser. The browser may use the HTML5 client code to create a web socket connection with the server and to establish a web socket in the browser. The HTML5 client code, the web socket connection and the web socket may be used to receive the compressed video, and the HTML5 client code may be used to decompress the compressed video for display on the personal electronic device.

Claims (42)

1. A method for providing compressed video to a personal electronic device of a user using one of a plurality of different video compression protocols, and wherein the personal electronic device includes a web browser, the method comprising:

using the personal electronic device to transmit a request for video content from a server via a remotely located controller;

using the remotely located controller having a processor and memory to serve up HTML5 client code to the browser;

causing the browser to use the HTML5 client code to create a web socket connection with the server and to establish a web socket in the browser; and

using the HTML5 client code, the web socket connection and the web socket to receive the compressed video at the personal electronic device, and to use the HTML5 client code running in the browser to determine a specific type of compression engine being used to compress the compressed video, to select a specific decompression protocol to use to decompress the compressed video, and to decompress the compressed video, using the selected specific decompression protocol, for display on the personal electronic device; and

wherein the operation of displaying the video content on the personal electronic device after the compressed video is decompressed, comprises using an HTML5 canvas, provided to the browser in the HTML5 client code, to render the decompressed video.

2. The method of claim 1 , wherein the operation of using the remotely located controller to serve up HTML5 client code comprises serving up HTML5 client code including a port number and an address for the server.

3. The method of claim 1 , wherein the operation of using the remotely located controller to serve up HTML5 client code comprises serving up HTML5 client code that includes JavaScript code.

4. The method of claim 1 , wherein the operation of using the personal electronic device to transmit a request for video content to a server, via a remotely located controller, comprises using the personal electronic device to transmit a request for video content to a server via a remotely located keyboard, video mouse (KVM) appliance.

5. The method of claim 1 , wherein the operation of using the personal electronic device to transmit a request for video content to a server, via a remotely located controller, comprises using the personal electronic device to transmit a request for video content to a server via a baseband management controller.

6. The method of claim 1 , wherein the specific type of compression engine being used comprises at least one of:

Dambrackas video compression (DVC);

JPEG compression; and

Run Length Encoding (RLE) compression.

7. A method for providing compressed video to a personal electronic device of a user using one of a plurality of different video compression protocols, and wherein the personal electronic device includes a web browser, the method comprising:

using the personal electronic device to transmit a request for video content via a remotely located controller;

using the remotely located controller to serve up HTML5 client code to the web browser of the personal electronic device, the HTML5 client code including a port number and an address for the video server that the personal electronic device requesting video content from;

causing the browser to use the HTML5 client code to establish a web socket connection with the video server using the port number and the address provided in the HTML5 client code, and to establish a web socket in the browser;

using the video server to compress the video content and to provide the video content in compressed form to the browser using the browser's web socket; and

causing the personal electronic device to use the HTML5 client code running in the browser to determine a specific type of compression engine being used, from a plurality of different available compression engines, on the received video content, and further using the HTML5 client code running in the browser to decompress the video content using an appropriate decompression protocol, and to render the decompressed video content to a HTML5 canvas of the browser, to enable the browser to display the decompressed video on the user's personal electronic device.

8. The method of claim 7 , wherein the serving up HTML5 client code to the browser of the user's personal electronic device comprises serving up HTML5 client code which includes JavaScript code, and wherein the JavaScript code includes the port number and the address for the video server.

9. The method of claim 7 , wherein the operation of using the HTML5 client code running in the browser to determine a specific type of compression comprises using JavaScript code included in the HTML5 client code to determine the type of compression engine being used to create the compressed video content received by the browser.

10. The method of claim 9 , wherein the operation of rendering the decompressed video content to the browser for display comprises using the JavaScript code to render the decompressed video content to an HTML5 canvas running within the browser.

11. The method of claim 10 , wherein the operation of using the personal electronic device to transmit a request for video content via a remotely located controller comprises using the personal electronic device to transmit a request for video content to a remote keyboard, video mouse (KVM) appliance.

12. The method of claim 10 , wherein the operation of using the personal electronic device to transmit a request for video content via a remotely located controller comprises using the personal electronic device to transmit a request for video content to a baseband management controller.

13. The method of claim 7 , wherein the plurality of different compression engines comprises at least one of:

Dambrackas video compression (DVC);

JPEG compression; and

Run Length Encoding (RLE) compression.

14. A system for providing compressed video to a personal electronic device of a user using one of a plurality of different video compression protocols, and wherein the personal electronic device includes a web browser, the system comprising:

a remotely located controller having a processor, memory and a HTML5 client code;

a personal electronic device having a processor and memory configured to:

transmit a request for video content from a server via the remotely located controller;

receive from the remotely located controller HTML5 client code, the HTML5 client code including JavaScript code which includes a port number and an address of the server;

have a browser of the personal electronic device use the HTML5 client code to create a web socket connection with the server and to establish a web socket in the browser;

use the HTML5 client code, the web socket connection and the web socket to receive the compressed video through the web socket;

the browser further being configured to use the JavaScript code of the HTML5 client code running within the browser to determine a specific compression engine that was used to compress the compressed video, and to select a specific decompression protocol from a plurality of decompression protocols to use to decompress the compressed video for display on the personal electronic device, and to render the decompressed video to HTML5 canvas running within the browser; and

the browser further being configured to display the uncompressed video on a display system associated with the personal electronic device.

15. The system of claim 14 , wherein the specific compression engine comprises at least one of:

Dambrackas video compression (DVC);

JPEG compression; and

Run Length Encoding (RLE) compression.

Assignments (15)
RELEASE OF SECURITY INTEREST RECORDED AT 052076/0874 Recorded Mar 5, 2026
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: ENERGY LABS, INC.; VERTIV CORPORATION; ELECTRICAL RELIABILITY SERVICES, INC.
Reel/Frame 075019/0524 →
RELEASE OF SECURITY INTEREST Recorded Mar 4, 2026
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: ENERGY LABS, INC.; ELECTRICAL RELIABILITY SERVICES, INC.; VERTIV CORPORATION
Reel/Frame 075022/0655 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2024
From: VERTIV IT SYSTEMS, INC.
To: VERTIV CORPORATION
Reel/Frame 069695/0620 →
SECURITY INTEREST Recorded Oct 26, 2021
From: VERTIV CORPORATION; VERTIV IT SYSTEMS, INC.; ELECTRICAL RELIABILITY SERVICES, INC.; ENERGY LABS, INC.
To: UMB BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 057923/0782 →
SECURITY AGREEMENT Recorded Mar 3, 2020
From: ELECTRICAL RELIABILITY SERVICES, INC.; ENERGY LABS, INC.; VERTIV CORPORATION; VERTIV IT SYSTEMS, INC.
To: CITIBANK, N.A.
Reel/Frame 052076/0874 →
RELEASE OF SECURITY INTEREST Recorded Mar 2, 2020
From: THE BANK OF NEW YORK MELLON TRUST COMPANY N.A.
To: VERTIV CORPORATION; VERTIV IT SYSTEMS, INC.; ELECTRICAL RELIABILITY SERVICES, INC.
Reel/Frame 052071/0913 →
RELEASE OF SECURITY INTEREST Recorded Mar 2, 2020
From: JPMORGAN CHASE BANK, N.A.
To: VERTIV CORPORATION (F/K/A ALBER CORP.); VERTIV IT SYSTEMS, INC. (F/K/A AVOCENT CORPORATION); VERTIV IT SYSTEMS, INC. (F/K/A AVOCENT FREMONT, LLC); VERTIV IT SYSTEMS, INC. (F/K/A AVOCENT HUNTSVILLE, LLC); VERTIV IT SYSTEMS, INC. (F/K/A AVOCENT REDMOND CORP.); ELECTRICAL RELIABILITY SERVICES, INC.; VERTIV CORPORATION (F/K/A EMERSON NETWORK POWER, ENERGY SYSTEMS, NORTH AMERICA, INC.); VERTIV CORPORATION (F/K/A LIEBERT CORPORATION)
Reel/Frame 052065/0666 →
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY DATA PREVIOUSLY RECORDED AT REEL: 048245 FRAME: 0783. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Jun 14, 2019
From: AVOCENT CORPORATION
To: VERTIV IT SYSTEMS, INC.
Reel/Frame 051692/0965 →
SECOND LIEN SECURITY AGREEMENT Recorded Jun 10, 2019
From: VERTIV IT SYSTEMS, INC.; VERTIV CORPORATION; VERTIV NORTH AMERICA, INC.; ELECTRICAL RELIABILITY SERVICES, INC.; VERTIV ENERGY SYSTEMS, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049415/0262 →
CHANGE OF NAME Recorded Feb 4, 2019
From: AVOCENT CORPORATION
To: AVOCENT HUNTSVILLE, LLC; VERTIV IT SYSTEMS, INC.
Reel/Frame 048245/0783 →
MERGER Recorded Jan 30, 2019
From: AVOCENT HUNTSVILLE, LLC
To: AVOCENT CORPORATION
Reel/Frame 048191/0640 →
SECURITY AGREEMENT Recorded Dec 2, 2016
From: ALBER CORP.; ASCO POWER TECHNOLOGIES, L.P.; AVOCENT CORPORATION; AVOCENT FREMONT, LLC; AVOCENT HUNTSVILLE, LLC; AVOCENT REDMOND CORP.; ELECTRICAL RELIABILITY SERVICES, INC.; EMERSON NETWORK POWER, ENERGY SYSTEMS, NORTH AMERICA, INC.; LIEBERT CORPORATION; LIEBERT NORTH AMERICA, INC.; NORTHERN TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 040797/0615 →
SECURITY AGREEMENT Recorded Dec 1, 2016
From: ALBER CORP.; ASCO POWER TECHNOLOGIES, L.P.; AVOCENT CORPORATION; AVOCENT FREMONT, LLC; AVOCENT HUNTSVILLE, LLC; AVOCENT REDMOND CORP.; ELECTRICAL RELIABILITY SERVICES, INC.; EMERSON NETWORK POWER, ENERGY SYSTEMS, NORTH AMERICA, INC.; LIEBERT CORPORATION; LIEBERT NORTH AMERICA, INC.; NORTHERN TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 040783/0148 →
CHANGE OF NAME Recorded Sep 30, 2016
From: AVOCENT HUNTSVILLE CORP.
To: AVOCENT HUNTSVILLE, LLC
Reel/Frame 039906/0726 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 24, 2014
From: SIEGMAN, CRAIG S.; AMIRTHASAMY, JOSEPH; GRIFFIN, GEORGE N.
To: AVOCENT HUNTSVILLE CORP.
Reel/Frame 034582/0389 →
Continuity (2)
Provisional Application 61666308 · Jun 29, 2012
Related Publication 20150207904A1 · Jul 23, 2015