Controller integrated audio codec for advanced audio distribution profile audio streaming applications
First Claim
1. A method of encoding streaming audio in a controller coupled to a communications channel, said method comprising the steps of:
- receiving audio streaming data from a host system;
encoding said audio streaming data to generate encoded audio data therefrom; and
assembling transmit packets incorporating said encoded audio data for transmission over said communications channel.
1 Assignment
0 Petitions
Accused Products
Abstract
A novel and useful apparatus for and method of integrating the advanced audio distribution profile (A2DP) audio codec into a Bluetooth controller for audio streaming applications. The mechanism functions to break the prior art Bluetooth protocol stack by integrating a profile packet composer into the controller. The profile/stack control signaling is performed by the host while the profile data packet composer is implemented in the controller. The integrated data packet composer does not break the data path and flow control over the standard HCI. Further, the integrated packet composer allows the controller to open a dedicated data interface for specific applications (e.g., PCM/I2S for audio data).
76 Citations
50 Claims
-
1. A method of encoding streaming audio in a controller coupled to a communications channel, said method comprising the steps of:
-
receiving audio streaming data from a host system; encoding said audio streaming data to generate encoded audio data therefrom; and assembling transmit packets incorporating said encoded audio data for transmission over said communications channel. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of encoding streaming audio in a Bluetooth controller, said method comprising the steps of:
-
receiving pulse code modulated (PCM) format audio streaming data from a host system utilizing a host control application programming interface (API); encoding said PCM audio streaming data to subband codec (SBC) format; and generating transmit packets incorporating said SBC encoded audio data for transmission over a Bluetooth link. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A Bluetooth subband codec (SBC) encoder, comprising:
-
a host interface operative to receive a pulse code modulated (PCM) format input audio data stream from a host system; a SBC codec operative to encode said PCM audio data stream into SBC format; and a profile data packet composer operative to encapsulate said SBC formatted audio data stream to generate Bluetooth transmit packets therefrom. - View Dependent Claims (18, 19, 20, 21)
-
-
22. A single chip Bluetooth controller, comprising:
-
a Bluetooth radio for establishing a link to a remote device; a host interface operative to receive a pulse code modulated (PCM) format input audio data stream from a host system; an audio encoder operative to encode said audio data stream into subband codec (SBC) format; and a profile data packet composer operative to encapsulate said SBC formatted audio data stream to generate Bluetooth packets therefrom for transmission by said Bluetooth radio over said link to said remote device. - View Dependent Claims (23, 24)
-
-
25. A software program product embodied in a computer-readable medium, comprising program instructions executable to implement:
-
a host interface for receiving pulse code modulated (PCM) format audio streaming data from a host system utilizing a host control application programming interface (API); an encoder operative to encode said PCM audio streaming data to subband codec (SBC) format; and a profile data packet composer operative to encapsulate said SBC formatted audio data stream to generate transmit packets therefrom for transmission over a communications link to a remote device.
-
-
26. A software program product embodied in a computer-readable medium, comprising program instructions executable to implement:
-
a host control application programming interface (API); and wherein said API defines a plurality of commands for controlling and configuring a Bluetooth controller comprising an interface for receiving a pulse code modulated (PCM) audio data stream from a host system, an encoder for generating subband coding (SBC) formatted audio data and a profile data packet composer operative to encapsulate said SBC formatted audio data to generate Bluetooth packets therefrom. - View Dependent Claims (27, 28, 29, 30, 31, 32)
-
-
33. A method of communicating between an application layer in a host system and a single chip Bluetooth controller incorporating an audio streaming codec and profile data packet composer, said method comprising the steps of:
-
opening an advanced audio distribution profile (A2DP) signaling and data channel, wherein data channel processing is performed by said Bluetooth controller while control functions and associated signaling channel are performed by said host system; opening an A2DP stream between said host system and said Bluetooth controller; configuring a plurality of subband codec (SBC) format encoder parameters, said SBC encoder integrated within said Bluetooth controller; starting said A2DP stream; and receiving pulse code modulated (PCM) audio data, encoding said PCM audio data to SBC formatted audio data and composing Bluetooth transmit packets encapsulating said SBC formatted audio data. - View Dependent Claims (34, 35, 36)
-
-
37. A computer implemented method for processing pulse code modulated (PCM) audio streaming data in a Bluetooth controller, comprising:
-
receiving PCM audio streaming data from a host system utilizing a host control application programming interface (API), wherein said host control API defines a plurality of commands for controlling and configuring a Bluetooth controller, said controller comprising an integrated interface for receiving said PCM audio data stream from a host system, an integrated encoder for generating subband coding (SBC) formatted audio data and an integrated profile data packet composer operative to encapsulate said SBC formatted audio data to generate Bluetooth packets therefrom; wherein said API comprises a command for opening an advanced audio distribution profile (A2DP) channel between said host system and a remote Bluetooth device; wherein said API comprises a command for opening an A2DP stream between said host system and said Bluetooth controller; wherein said API comprises a command for configuring said Bluetooth controller with one or more related parameters; wherein said API comprises a command for starting an A2DP stream between said host system and said Bluetooth controller; and receiving pulse code modulated (PCM) audio data, encoding said PCM audio data to SBC formatted audio data and composing Bluetooth transmit packets encapsulating said SBC formatted audio data. - View Dependent Claims (38, 39, 40)
-
-
41. A single chip Bluetooth controller, comprising:
-
a Bluetooth radio for establishing a link to a remote device; a host control application programming interface (API) defining a plurality of commands for controlling and configuring said Bluetooth controller; a host interface operative to receive a pulse code modulated (PCM) format input audio data stream from a host system utilizing said host control API; an audio encoder operative to encode said audio data stream into subband codec (SBC) format; and a profile data packet composer operative to encapsulate said SBC formatted audio data stream to generate Bluetooth transmit packets therefrom for transmission by said Bluetooth radio over said link to said remote device. - View Dependent Claims (42, 43, 44, 45, 46, 47, 48)
-
-
49. A method of decoding streaming audio in a controller coupled to a communications channel, said method comprising the steps of:
-
parsing receive packets incorporating encoded audio received over said communications channel; decoding said audio streaming data to generate decoded audio data therefrom; and sending said decoded audio stream data to a host system.
-
-
50. A method of decoding streaming audio in a Bluetooth controller, said method comprising the steps of:
-
parsing receive packets incorporating subband codec (SBC) encoded audio data received over a Bluetooth link; decoding said SBC format data to pulse code modulated (PCM) format audio streaming data; and sending said PCM format audio streaming data to a host system utilizing a host control application programming interface (API).
-
Specification