Detailed Description
The following files must be built with any user project that uses this module:
- LUFA/Drivers/USB/Class/Device/Audio.c
Device Mode USB Class driver framework interface, for the Audio USB Class driver.
Function Documentation
Configures the endpoints of a given Audio interface, ready for use. This should be linked to the library EVENT_USB_Device_ConfigurationChanged() event so that the endpoints are configured when the configuration containing the given Audio interface is selected.
- Parameters:
-
[in,out] | AudioInterfaceInfo | Pointer to a structure containing an Audio Class configuration and state |
- Returns:
- Boolean true if the endpoints were successfully configured, false otherwise
Determines if the given audio interface is ready to accept the next sample to be written to it, and selects the streaming IN endpoint ready for writing.
- Parameters:
-
[in,out] | AudioInterfaceInfo | Pointer to a structure containing an Audio Class configuration and state |
- Returns:
- Boolean true if the given Audio interface is ready to accept the next sample, false otherwise
Determines if the given audio interface is ready for a sample to be read from it, and selects the streaming OUT endpoint ready for reading.
- Parameters:
-
[in,out] | AudioInterfaceInfo | Pointer to a structure containing an Audio Class configuration and state |
- Returns:
- Boolean true if the given Audio interface has a sample to be read, false otherwise
Processes incoming control requests from the host, that are directed to the given Audio class interface. This should be linked to the library EVENT_USB_Device_UnhandledControlRequest() event.
- Parameters:
-
[in,out] | AudioInterfaceInfo | Pointer to a structure containing an Audio Class configuration and state |
Reads the next 16-bit audio sample from the current audio interface.
- Note:
- This should be preceded immediately by a call to the USB_Audio_IsSampleReceived() function to ensure that the correct endpoint is selected and ready for data.
- Parameters:
-
[in,out] | AudioInterfaceInfo | Pointer to a structure containing an Audio Class configuration and state |
- Returns:
- Signed 16-bit audio sample from the audio interface
Reads the next 24-bit audio sample from the current audio interface.
- Note:
- This should be preceded immediately by a call to the USB_Audio_IsSampleReceived() function to ensure that the correct endpoint is selected and ready for data.
- Parameters:
-
[in,out] | AudioInterfaceInfo | Pointer to a structure containing an Audio Class configuration and state |
- Returns:
- Signed 24-bit audio sample from the audio interface
Reads the next 8-bit audio sample from the current audio interface.
- Note:
- This should be preceded immediately by a call to the USB_Audio_IsSampleReceived() function to ensure that the correct endpoint is selected and ready for data.
- Parameters:
-
[in,out] | AudioInterfaceInfo | Pointer to a structure containing an Audio Class configuration and state |
- Returns:
- Signed 8-bit audio sample from the audio interface
General management task for a given Audio class interface, required for the correct operation of the interface. This should be called frequently in the main program loop, before the master USB management task USB_USBTask().
- Parameters:
-
[in,out] | AudioInterfaceInfo | Pointer to a structure containing an Audio Class configuration and state |
Writes the next 16-bit audio sample to the current audio interface.
- Note:
- This should be preceded immediately by a call to the USB_Audio_IsReadyForNextSample() function to ensure that the correct endpoint is selected and ready for data.
- Parameters:
-
[in,out] | AudioInterfaceInfo | Pointer to a structure containing an Audio Class configuration and state |
[in] | Sample | Signed 16-bit audio sample |
Writes the next 24-bit audio sample to the current audio interface.
- Note:
- This should be preceded immediately by a call to the USB_Audio_IsReadyForNextSample() function to ensure that the correct endpoint is selected and ready for data.
- Parameters:
-
[in,out] | AudioInterfaceInfo | Pointer to a structure containing an Audio Class configuration and state |
[in] | Sample | Signed 24-bit audio sample |
Writes the next 8-bit audio sample to the current audio interface.
- Note:
- This should be preceded immediately by a call to the USB_Audio_IsReadyForNextSample() function to ensure that the correct endpoint is selected and ready for data.
- Parameters:
-
[in,out] | AudioInterfaceInfo | Pointer to a structure containing an Audio Class configuration and state |
[in] | Sample | Signed 8-bit audio sample |