161864d84STakashi Iwai /* 2c078a4aaSChris Rorvick * Line 6 Linux USB driver 361864d84STakashi Iwai * 461864d84STakashi Iwai * Copyright (C) 2004-2010 Markus Grabner (grabner@icg.tugraz.at) 561864d84STakashi Iwai * 661864d84STakashi Iwai * This program is free software; you can redistribute it and/or 761864d84STakashi Iwai * modify it under the terms of the GNU General Public License as 861864d84STakashi Iwai * published by the Free Software Foundation, version 2. 961864d84STakashi Iwai * 1061864d84STakashi Iwai */ 1161864d84STakashi Iwai 1261864d84STakashi Iwai #ifndef PLAYBACK_H 1361864d84STakashi Iwai #define PLAYBACK_H 1461864d84STakashi Iwai 1561864d84STakashi Iwai #include <sound/pcm.h> 1661864d84STakashi Iwai 1761864d84STakashi Iwai #include "driver.h" 1861864d84STakashi Iwai 1961864d84STakashi Iwai /* 2061864d84STakashi Iwai * When the TonePort is used with jack in full duplex mode and the outputs are 2161864d84STakashi Iwai * not connected, the software monitor produces an ugly noise since everything 2261864d84STakashi Iwai * written to the output buffer (i.e., the input signal) will be repeated in 2361864d84STakashi Iwai * the next period (sounds like a delay effect). As a workaround, the output 2461864d84STakashi Iwai * buffer is cleared after the data have been read, but there must be a better 2561864d84STakashi Iwai * solution. Until one is found, this workaround can be used to fix the 2661864d84STakashi Iwai * problem. 2761864d84STakashi Iwai */ 2861864d84STakashi Iwai #define USE_CLEAR_BUFFER_WORKAROUND 1 2961864d84STakashi Iwai 30e195a331SBhumika Goyal extern const struct snd_pcm_ops snd_line6_playback_ops; 3161864d84STakashi Iwai 3261864d84STakashi Iwai extern int line6_create_audio_out_urbs(struct snd_line6_pcm *line6pcm); 3361864d84STakashi Iwai extern int line6_submit_audio_out_all_urbs(struct snd_line6_pcm *line6pcm); 3461864d84STakashi Iwai 3561864d84STakashi Iwai #endif 36