Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
drivers
staging
line6
playback.h
Go to the documentation of this file.
1
/*
2
* Line6 Linux USB driver - 0.9.1beta
3
*
4
* Copyright (C) 2004-2010 Markus Grabner (
[email protected]
)
5
*
6
* This program is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU General Public License as
8
* published by the Free Software Foundation, version 2.
9
*
10
*/
11
12
#ifndef PLAYBACK_H
13
#define PLAYBACK_H
14
15
#include <
sound/pcm.h
>
16
17
#include "
driver.h
"
18
19
/*
20
* When the TonePort is used with jack in full duplex mode and the outputs are
21
* not connected, the software monitor produces an ugly noise since everything
22
* written to the output buffer (i.e., the input signal) will be repeated in
23
* the next period (sounds like a delay effect). As a workaround, the output
24
* buffer is cleared after the data have been read, but there must be a better
25
* solution. Until one is found, this workaround can be used to fix the
26
* problem.
27
*/
28
#define USE_CLEAR_BUFFER_WORKAROUND 1
29
30
extern
struct
snd_pcm_ops
snd_line6_playback_ops
;
31
32
extern
int
line6_create_audio_out_urbs
(
struct
snd_line6_pcm
*line6pcm);
33
extern
void
line6_free_playback_buffer
(
struct
snd_line6_pcm
*line6pcm);
34
extern
int
line6_submit_audio_out_all_urbs
(
struct
snd_line6_pcm
*line6pcm);
35
extern
void
line6_unlink_audio_out_urbs
(
struct
snd_line6_pcm
*line6pcm);
36
extern
void
line6_unlink_wait_clear_audio_out_urbs
(
struct
snd_line6_pcm
37
*line6pcm);
38
extern
void
line6_wait_clear_audio_out_urbs
(
struct
snd_line6_pcm
*line6pcm);
39
extern
int
snd_line6_playback_trigger
(
struct
snd_line6_pcm
*line6pcm,
int
cmd
);
40
41
#endif
Generated on Thu Jan 10 2013 14:29:16 for Linux Kernel by
1.8.2