Fix accidental struct copies on the stack in the old RNDISEthernet demo TCP code.
[pub/USBasp.git] / Demos / Device / ClassDriver / AudioInput / Descriptors.h
index fdf4835..a3f7f26 100644 (file)
@@ -1,13 +1,13 @@
 /*
              LUFA Library
-     Copyright (C) Dean Camera, 2011.
+     Copyright (C) Dean Camera, 2012.
 
   dean [at] fourwalledcubicle [dot] com
            www.lufa-lib.org
 */
 
 /*
-  Copyright 2011  Dean Camera (dean [at] fourwalledcubicle [dot] com)
+  Copyright 2012  Dean Camera (dean [at] fourwalledcubicle [dot] com)
 
   Permission to use, copy, modify, distribute, and sell this
   software and its documentation for any purpose is hereby granted
 
                #include <avr/pgmspace.h>
 
-       /* Macros: */
-               /** Endpoint number of the Audio isochronous streaming data endpoint. */
-               #define AUDIO_STREAM_EPNUM           1
+               #include "Config/AppConfig.h"
 
-               /** Endpoint size in bytes of the Audio isochronous streaming data endpoint. The Windows audio stack requires
-                *  at least 192 bytes for correct output, thus the smaller 128 byte maximum endpoint size on some of the smaller
-                *  USB AVR models will result in unavoidable distorted output.
-                */
-               #define AUDIO_STREAM_EPSIZE          ENDPOINT_MAX_SIZE(AUDIO_STREAM_EPNUM)
+       /* Macros: */
+               /** Endpoint address of the Audio isochronous streaming data IN endpoint. */
+               #define AUDIO_STREAM_EPADDR           (ENDPOINT_DIR_IN | 1)
 
-               /** Sample frequency of the data being transmitted through the streaming endpoint. */
-               #define AUDIO_SAMPLE_FREQUENCY       48000
+               /** Endpoint size in bytes of the Audio isochronous streaming data endpoint. */
+               #define AUDIO_STREAM_EPSIZE           256
 
        /* Type Defines: */
                /** Type define for the device configuration descriptor structure. This must be defined in the
                typedef struct
                {
                        USB_Descriptor_Configuration_Header_t     Config;
+
+                       // Audio Control Interface
                        USB_Descriptor_Interface_t                Audio_ControlInterface;
                        USB_Audio_Descriptor_Interface_AC_t       Audio_ControlInterface_SPC;
                        USB_Audio_Descriptor_InputTerminal_t      Audio_InputTerminal;
                        USB_Audio_Descriptor_OutputTerminal_t     Audio_OutputTerminal;
+
+                       // Audio Streaming Interface
                        USB_Descriptor_Interface_t                Audio_StreamInterface_Alt0;
                        USB_Descriptor_Interface_t                Audio_StreamInterface_Alt1;
                        USB_Audio_Descriptor_Interface_AS_t       Audio_StreamInterface_SPC;
                        USB_Audio_Descriptor_Format_t             Audio_AudioFormat;
+                       USB_Audio_SampleFreq_t                    Audio_AudioFormatSampleRates[5];
                        USB_Audio_Descriptor_StreamEndpoint_Std_t Audio_StreamEndpoint;
                        USB_Audio_Descriptor_StreamEndpoint_Spc_t Audio_StreamEndpoint_SPC;
                } USB_Descriptor_Configuration_t;