IP Library Granted Patent US 8,788,683
Granted Patent B2
US 8,788,683 · App. 13/211,831 · Granted Jul 22, 2014

Scalable transcoding for streaming audio

Inventors: Simon Ball (Carlisle, MA); Adrian Roe (Eastleigh Hants, GB); Dom Robinson (East Sussex, GB); Steve Strong (Malaga, ES)
Assignee: The NASDAQ OMX Group, Inc.
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,788,683
App. No.
13/211,831
Granted
Jul 22, 2014
Kind
B2
Abstract

Systems and techniques for capturing audio and delivering the audio in digital streaming media formats are disclosed. Several aspects of the systems and techniques operate in a cloud computing environment where computational power is allocated, utilized, and paid for entirely on demand. The systems and techniques enable a call to be made directly from a virtual machine out to a Public Switch Telephone Network (PSTN) via a common Session Interface Protocol (SIP) to PSTN Breakout service, and the audio to be delivered onward to one or more Content Delivery Network (CDN). An audio call capture interface is also provided to initiate and manage the digital streaming media formats.

Claims (64)

1. A method of streaming information comprising:

establishing a set of connections between a first public switched telephone network (PSTN) breakout service and a set of machines, a first machine in the set of machines being a first virtual machine instantiated in a first cloud computing environment, the first PSTN breakout service being connected to a conference call;

receiving a digital data stream in the first virtual machines, the digital data stream having been encoded according to a first encoding protocol, wherein the digital data stream is received over one of a set of connections between the first PSTN breakout service and the first virtual machine;

audio encoding the digital data stream on the first virtual machine to generate an encoded digital data stream, the encoding being done according to a second encoding protocol;

transmitting the encoded digital data stream from the first virtual machine to a content delivery network (CDN);

receiving the digital data stream encoded according to the first encoding protocol at a second virtual machine, and when an event affects a performance of the first virtual machine, audio encoding the digital data stream on the second virtual machine to generate an encoded digital data stream, the encoding being done according to the second encoding protocol, and transmitting the encoded data stream from the second virtual machine to the CDN; and

providing a session initiation protocol (SIP) application in each of the first and second virtual machines for receiving and managing the digital data stream in the first encoding protocol.

2. The method of claim 1 , wherein the SIP application in the first virtual machine relays the received audio signal to the second virtual machine.

3. The method of claim 1 , wherein the second virtual machine is instantiated in the first cloud computing environment or a second cloud computing environment different from the first cloud computing environment.

4. The method of claim 1 , further comprising instantiating the first virtual machine in response to a request from a call control interface module.

5. The method of claim 4 , comprising instantiating the second virtual machine from at least one of the call control interface module and the first virtual machine.

6. The method of claim 1 , comprising receiving the digital data stream at the second virtual machine from the first virtual machine.

7. The method of claim 1 , comprising receiving the digital data stream at the second virtual machine from the first PSTN breakout service.

8. The method of claim 1 , comprising receiving the digital data stream from a second PSTN breakout service, the second PSTN breakout service being connected to the conference call.

9. The method of claim 1 , comprising transmitting the digital data stream to the second virtual machine from the first PSTN breakout service upon at least one of a failure and delay in one of the data connections between the first data connection and the first virtual machine.

10. The method of claim 1 , wherein the digital data stream is received using a speech codec.

11. The method of claim 10 , wherein the codec is selected from the group consisting of G.722, G.719, G.711, SPEEX and GSM.

12. The method of claim 1 , further comprising providing an operating system (OS) audio bus for transmitting the digital data stream in each of the first and second virtual machines, the OS audio bus being a software audio driver.

13. The method of claim 12 , wherein the software audio driver is a Windows Driver Model (WDM) audio driver.

14. The method of claim 1 , comprising encoding the digital data stream into a Windows Media Audio (WMA) file.

15. The method of claim 1 , further comprising:

providing a plurality of audio encoders for encoding the digital data stream into at least one third encoding protocol different from the first encoding protocol and the second encoding protocol;

encoding the digital data stream using the third encoding protocol; and

transmitting the encoded digital data stream according to the third protocol to the CDN.

16. The method of claim 15 , wherein a first encoder of the plurality of audio encoders is a Windows Media encoder and a second encoder of the plurality of audio encoders is a Flash Media encoder.

17. The method of claim 16 , comprising encoding the digital data stream into a Flash Media audio file.

18. The method of claim 1 , further comprising providing an audio server in each of the first and second virtual machines, the audio server transmitting the encoded digital data stream to the CDN.

19. The method of claim 18 , wherein the audio server is a flash media server and the encoded digital data stream is a flash media file.

20. The method of claim 1 , further comprising: generating, from the SIP Application, an MP3 audio file from the received digital data stream in the first encoding format; and storing the MP3 audio file in a data store associated with each of the first and second virtual machines.

21. The method of claim 20 , further comprising audio scrubbing the MP3 audio file.

22. A system for streaming information comprising:

a call processor configured to initiate a set of connections between a first public switched telephone network (PSTN) breakout service and a set of machines,

a first machine in the set of machines being a first virtual machine instantiated in a first cloud computing environment, the first PSTN breakout service being connected to a conference call;

the first virtual machine including:

a receiver configured to receive a digital data stream having been encoded according to a first encoding protocol;

an audio encoder configured to encode, according to a second encoding protocol, the digital data stream to generate an encoded digital data stream;

a transmitter configured to transmit the encoded digital data stream to a content delivery network (CDN),

wherein the first virtual machine is configured to encode the digital data stream on the first virtual machine in response to receiving the digital data stream over one of the set of connections between the PSTN breakout service and the first virtual machine, and

a transmitter configured to transmit the encoded digital data stream from the first virtual machine to the CDN, and

a second virtual machine including:

a receiver configured to receive the digital data stream having been encoded according to the first encoding protocol;

an audio encoder configured to encode, according to a second encoding protocol, the digital data stream to generate a second encoded digital data stream, when an event affects a performance of the first virtual machine; and

a transmitter configured to transmit the encoded data stream from the second virtual machine to the CDN,

a session initiation protocol (SIP) application included in each of a respective one of the first and second virtual machines, which when implemented by the respective virtual machine, causes the respective virtual machine to receive and manage the digital data stream in the first encoding protocol.

23. The system of claim 22 , wherein the SIP application is configured in the first virtual machine to relay the received audio signal to the second virtual machine.

24. The system of claim 22 , wherein the second virtual machine is instantiated in the first cloud computing environment or a second cloud computing environment different from the first cloud computing environment.

25. The system of claim 22 , comprising means for instantiating the first virtual machine in response to a request from a call control interface module.

26. The system of claim 25 , comprising means for instantiating the second virtual machine from at least one of the call control interface module and the first virtual machine.

27. The system of claim 22 , comprising means for receiving the digital data stream at the second virtual machine from the first virtual machine.

28. The system of claim 22 , comprising means for receiving the digital data stream at the second virtual machine from the first PSTN breakout service.

29. The system of claim 22 , comprising means for receiving the digital data stream from a second PSTN breakout service, the second PSTN breakout service being connected to the conference call.

30. The system of claim 22 , wherein the digital data stream is transmitted to the second virtual machine from the first PSTN breakout service upon at least one of a failure and delay in one of the data connections between the first data connection and the first virtual machine.

31. The system of claim 22 , wherein the digital data stream is received using a speech codec.

32. The system of claim 31 , wherein the codec is selected from the group consisting of G.722, G.719, G.711, SPEEX and GSM.

33. The system of claim 22 , further comprising an operating system (OS) audio bus for transmitting the digital data stream in each of the first and second virtual machines, the OS audio bus being a software audio driver.

34. The system of claim 33 , wherein the software audio driver is a Windows Driver Model (WDM) audio driver.

35. The system of claim 22 , comprising means for encoding the digital data stream into a Windows Media Audio (WMA) file.

36. The system of claim 22 , further comprising a plurality of audio encoders in which a first encoder of the plurality of encoders encodes the digital data stream into at least one third encoding protocol different from the first encoding protocol and the second encoding protocol, and transmits the encoded digital data stream according to the third protocol to the CDN.

37. The system of claim 36 , wherein the first encoder of the plurality of audio encoders is a Windows Media encoder and a second encoder of the plurality of audio encoders is a Flash Media encoder.

38. The system of claim 36 , wherein the digital data stream is encoded into a Flash Media audio file.

39. The system of claim 22 , further comprising an audio server in each of the first and second virtual machines, the audio server configured to transmit the encoded digital data stream to the CDN.

40. The system of claim 39 , wherein the audio server is a flash media server and the encoded digital data stream is a flash media file.

41. The system of claim 22 , wherein the SIP Application generates an MP3 audio file from the received digital data stream in the first encoding format, and stores the MP3 audio file in a data store associated with each of the first and second virtual machines.

42. The system of claim 41 , further comprising means for audio scrubbing the MP3 audio file.

Assignments (14)
FIRST LIEN INTELLECTUAL PROPERTY AGREEMENT SUPPLEMENT Recorded Jul 7, 2025
From: DIGITAL MEDIA INNOVATIONS, LLC
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 071813/0783 →
NOTICE OF PARTIAL RELEASE OF SECURITY INTEREST IN PATENTS Recorded May 5, 2025
From: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, IN ITS CAPACITY AS COLLATERAL AGENT
To: DIGITAL MEDIA INNOVATIONS, LLC
Reel/Frame 071168/0942 →
NOTICE OF PARTIAL RELEASE OF SECURITY INTEREST IN PATENTS Recorded May 5, 2025
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, IN ITS CAPACITY AS COLLATERAL AGENT
To: DIGITAL MEDIA INNOVATIONS, LLC
Reel/Frame 071168/0961 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2025
From: WEST TECHNOLOGY GROUP, LLC
To: DIGITAL MEDIA INNOVATIONS, LLC
Reel/Frame 070333/0647 →
CHANGE OF NAME Recorded Apr 3, 2023
From: INTRADO CORPORATION
To: WEST TECHNOLOGY GROUP, LLC
Reel/Frame 063239/0876 →
CHANGE OF NAME Recorded Apr 3, 2023
From: WEST CORPORATION
To: INTRADO CORPORATION
Reel/Frame 063239/0900 →
NOTICE OF GRANT OF SECURITY INTEREST (SECOND LIEN) IN PATENTS Recorded Jan 31, 2023
From: CX360, INC.; WEST TECHNOLOGY GROUP, LLC (FKA INTRADO CORPORATION, FKA WEST CORPORATION); INTRADO INTERACTIVE SERVICES CORPORATION (FKA WEST INTERACTIVE SERVICES CORPORATION, FKA COBALT ACQUISITION COMPANY)
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 062571/0018 →
SECURITY INTEREST Recorded Aug 17, 2018
From: WEST CORPORATION
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 046859/0884 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2018
From: NASDAQ, INC.
To: WEST CORPORATION
Reel/Frame 046086/0060 →
CHANGE OF NAME Recorded Oct 9, 2015
From: THE NASDAQ OMX GROUP, INC.
To: NASDAQ, INC.
Reel/Frame 036822/0452 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 12, 2013
From: NASDAQ OMX CORPORATE SOLUTIONS, LLC
To: THE NASDAQ OMX GROUP, INC.
Reel/Frame 031195/0059 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2013
From: THOMSON REUTERS GLOBAL RESOURCES
To: NASDAQ OMX CORPORATE SOLUTIONS, LLC
Reel/Frame 030986/0497 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2012
From: BALL, SIMON; ROE, ADRIAN; ROBINSON, DOM; STRONG, STEVE
To: THOMSON REUTERS (MARKETS) LLC
Reel/Frame 029386/0202 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2012
From: THOMSON REUTERS (MARKETS) LLC
To: THOMSON REUTERS GLOBAL RESOURCES
Reel/Frame 029386/0451 →
Continuity (1)
Related Publication 20130046896A1 · Feb 21, 2013