IP Library Granted Patent US 10,547,491
Granted Patent B2
US 10,547,491 · App. 15/688,531 · Granted Jan 28, 2020

Transcoding with a vector processing unit

Inventor: Francois Caron (Montreal, CA)
Assignee: GENBAND US LLC
H04L29/06006H04N19/40H04L29/06027
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 10,547,491
App. No.
15/688,531
Granted
Jan 28, 2020
Kind
B2
Abstract

A method includes, with a computing system, receiving a plurality of packets for transcoding, the plurality of packets comprising a first set of packets having data in a first format and a second set of packets having data in a second format, with the computing system, placing the first set of packets in a first queue, the first queue comprising packets from more than one communication session, with the computing system, placing the second set of packets in a second queue, the second queue having packets from more than one communication session, with the computing system, processing packets of the first queue with a graphics processing unit, and with the computing system, after processing the packets of the first queue with the graphics processing unit, processing packets of the second queue with the graphics processing unit.

Claims (41)

1. A method for transcoding media, the method performed by a computing system, the method comprising:

receiving a plurality of packets for transcoding, the plurality of packets comprising a first set of packets from a first telecommunication network, the first set of packets having data in a first codec and a second set of packets from a second telecommunication network, the second set of packets having data in a second codec, the second codec being different than the first codec;

placing the first set of packets in a first queue, the first queue comprising packets from more than one communication session;

placing the second set of packets in a second queue, the second queue having packets from more than one communication session;

transcoding packets of the first queue with a graphics processing unit;

after transcoding the packets of the first queue with the graphics processing unit, transcoding packets of the second queue with the graphics processing unit; and

transmitting transcoded packets to respective destinations between the first telecommunication network and second telecommunication network.

2. The method of claim 1 , wherein the first set of packets includes packets being transmitted from a first endpoint to a second endpoint, and wherein the second set of packets includes packets being transmitted from the second endpoint to the first endpoint.

3. The method of claim 1 , wherein the graphics processing unit applies a series of functions to the packets of the first queue to transcode data in the packets of the first queue from the first codec to the second codec.

4. The method of claim 1 , wherein the graphics processing unit applies a series of functions to the packets of the second queue to transcode data in the packets of the second queue from the second codec to the first codec.

5. The method of claim 1 , wherein the graphics processing unit uses a single vector instruction to perform a single process to multiple data points within a vector.

6. The method of claim 1 , wherein the first codec comprises one of: a landline codec, a mobile phone codec, and a Voice over Internet Protocol (VoIP) codec.

7. The method of claim 1 , further comprising, placing additional sets of packets in additional queues, each additional queue being associated with a different codec.

8. The method of claim 7 , further comprising, serially processing packets in each of the first queue, the second queue, and the additional queues with the graphics processing unit.

9. The method of claim 8 , wherein serially processing the packets is performed in a round-robin manner with respect to the first queue, the second queue, and the additional queues.

10. A method for transcoding media, the method performed by a network node, the method comprising:

receiving a first set of packets from a first endpoint to a second endpoint, the first endpoint connected to the network node through a first type of communication network, the second endpoint connected to the network node through a second type of communication network;

receiving a second set of packets from the second endpoint to the first endpoint;

placing the first set of packets in a first queue;

placing the second set of packets in a second queue;

with a vector processing unit associated with the network node, transcoding the first set of packets from a first codec associated with the first type of communication network to a second codec associated with the second type of communication network, the first codec being different than the second codec;

with the vector processing unit associated with the network node, transcoding the second set of packets from the second codec to the first codec; and

transmitting processed packets to respective destinations between the first type of communication network and second type of communication network.

11. The method of claim 10 , wherein the first queue includes packets from a third endpoint associated with the first type of communication network to a fourth endpoint associated with the second type of communication network.

12. The method of claim 11 , wherein the second queue includes packets from the fourth endpoint destined for the third endpoint.

13. The method of claim 10 , wherein the vector processing unit is a graphics processing unit.

14. The method of claim 10 , wherein the first codec comprises one of: landline codec, a mobile phone codec, and a Voice over Internet Protocol (VoIP) codec.

15. The method of claim 10 , wherein the vector processing unit applies a series of functions to the packets of the first queue to transcode data in the packets of the first queue from the first codec to the second codec.

16. The method of claim 10 , further comprising, placing additional sets of packets in additional queues, each additional queue being associated with a different transcoding scenario.

17. The method of claim 16 , further comprising, serially processing packets in each of the first queue, the second queue, and the additional queues with the vector processing unit in a round-robin manner.

18. A system comprising:

a processor; and

a memory with machine readable instructions that when executed by the processor, cause the system to:

receive a plurality of packets for transcoding, the plurality of packets comprising a first set of packets having data in a first codec and a second set of packets having data in a second codec, the first codec being different than the second codec, the first set of packets being from a first telecommunication network that uses the first codec and the second set of packets being from a second telecommunication network that uses the second codec;

place the first set of packets in a first queue, the first queue comprising packets from more than one communication session;

place the second set of packets in a second queue, the second queue having packets from more than one communication session;

transcode packets of the first queue with a vector processing unit;

transcode packets of the second queue with the vector processing unit after transcoding the packets of the first queue with the vector processing unit; and

transmit transcoded packets to respective destinations between the first telecommunication network and second telecommunication network.

19. The system of claim 18 , wherein the system comprises a physical server in a communication network.

20. The system of claim 18 , further comprising a Virtual Network Function (VNF) component executed by the processor to execute the machine readable instructions.

Assignments (7)
SHORT-FORM PATENTS SECURITY AGREEMENT Recorded Sep 5, 2024
From: RIBBON COMMUNICATIONS OPERATING COMPANY, INC.
To: HPS INVESTMENT PARTNERS, LLC, AS ADMINISTRATIVE AGENT
Reel/Frame 068857/0290 →
RELEASE OF SECURITY INTEREST Recorded Jun 24, 2024
From: CITIZENS BANK, N.A.
To: RIBBON COMMUNICATIONS OPERATING COMPANY, INC. (F/K/A GENBAND US LLC AND SONUS NETWORKS, INC.)
Reel/Frame 067822/0433 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 044978/0801 Recorded Dec 6, 2021
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: RIBBON COMMUNICATIONS OPERATING COMPANY, INC. (F/K/A GENBAND US LLC AND SONUS NETWORKS, INC.)
Reel/Frame 058949/0497 →
MERGER Recorded Jul 15, 2020
From: GENBAND US LLC
To: RIBBON COMMUNICATIONS OPERATING COMPANY, INC.
Reel/Frame 053223/0260 →
SECURITY INTEREST Recorded Mar 3, 2020
From: RIBBON COMMUNICATIONS OPERATING COMPANY, INC.
To: CITIZENS BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 052076/0905 →
SECURITY INTEREST Recorded Jan 2, 2018
From: GENBAND US LLC; SONUS NETWORKS, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 044978/0801 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 29, 2017
From: CARON, FRANCOIS
To: GENBAND US LLC
Reel/Frame 043437/0900 →
Continuity (1)
Related Publication 20190068431A1 · Feb 28, 2019
Cited By (2)
US 12,259,832 US 12,699,664