Mercurial > hg > sv-dependency-builds
comparison src/portaudio/include/pa_linux_alsa.h @ 4:e13257ea84a4
Add bzip2, zlib, liblo, portaudio sources
author | Chris Cannam |
---|---|
date | Wed, 20 Mar 2013 13:59:52 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
3:6c505a35919a | 4:e13257ea84a4 |
---|---|
1 #ifndef PA_LINUX_ALSA_H | |
2 #define PA_LINUX_ALSA_H | |
3 | |
4 /* | |
5 * $Id: pa_linux_alsa.h 1597 2011-02-11 00:15:51Z dmitrykos $ | |
6 * PortAudio Portable Real-Time Audio Library | |
7 * ALSA-specific extensions | |
8 * | |
9 * Copyright (c) 1999-2000 Ross Bencina and Phil Burk | |
10 * | |
11 * Permission is hereby granted, free of charge, to any person obtaining | |
12 * a copy of this software and associated documentation files | |
13 * (the "Software"), to deal in the Software without restriction, | |
14 * including without limitation the rights to use, copy, modify, merge, | |
15 * publish, distribute, sublicense, and/or sell copies of the Software, | |
16 * and to permit persons to whom the Software is furnished to do so, | |
17 * subject to the following conditions: | |
18 * | |
19 * The above copyright notice and this permission notice shall be | |
20 * included in all copies or substantial portions of the Software. | |
21 * | |
22 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | |
23 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | |
24 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | |
25 * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR | |
26 * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF | |
27 * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION | |
28 * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | |
29 */ | |
30 | |
31 /* | |
32 * The text above constitutes the entire PortAudio license; however, | |
33 * the PortAudio community also makes the following non-binding requests: | |
34 * | |
35 * Any person wishing to distribute modifications to the Software is | |
36 * requested to send the modifications to the original developer so that | |
37 * they can be incorporated into the canonical version. It is also | |
38 * requested that these non-binding requests be included along with the | |
39 * license above. | |
40 */ | |
41 | |
42 /** @file | |
43 * @ingroup public_header | |
44 * @brief ALSA-specific PortAudio API extension header file. | |
45 */ | |
46 | |
47 #include "portaudio.h" | |
48 | |
49 #ifdef __cplusplus | |
50 extern "C" { | |
51 #endif | |
52 | |
53 typedef struct PaAlsaStreamInfo | |
54 { | |
55 unsigned long size; | |
56 PaHostApiTypeId hostApiType; | |
57 unsigned long version; | |
58 | |
59 const char *deviceString; | |
60 } | |
61 PaAlsaStreamInfo; | |
62 | |
63 /** Initialize host API specific structure, call this before setting relevant attributes. */ | |
64 void PaAlsa_InitializeStreamInfo( PaAlsaStreamInfo *info ); | |
65 | |
66 /** Instruct whether to enable real-time priority when starting the audio thread. | |
67 * | |
68 * If this is turned on by the stream is started, the audio callback thread will be created | |
69 * with the FIFO scheduling policy, which is suitable for realtime operation. | |
70 **/ | |
71 void PaAlsa_EnableRealtimeScheduling( PaStream *s, int enable ); | |
72 | |
73 #if 0 | |
74 void PaAlsa_EnableWatchdog( PaStream *s, int enable ); | |
75 #endif | |
76 | |
77 /** Get the ALSA-lib card index of this stream's input device. */ | |
78 PaError PaAlsa_GetStreamInputCard( PaStream *s, int *card ); | |
79 | |
80 /** Get the ALSA-lib card index of this stream's output device. */ | |
81 PaError PaAlsa_GetStreamOutputCard( PaStream *s, int *card ); | |
82 | |
83 /** Set the number of periods (buffer fragments) to configure devices with. | |
84 * | |
85 * By default the number of periods is 4, this is the lowest number of periods that works well on | |
86 * the author's soundcard. | |
87 * @param numPeriods The number of periods. | |
88 */ | |
89 PaError PaAlsa_SetNumPeriods( int numPeriods ); | |
90 | |
91 /** Set the maximum number of times to retry opening busy device (sleeping for a | |
92 * short interval inbetween). | |
93 */ | |
94 PaError PaAlsa_SetRetriesBusy( int retries ); | |
95 | |
96 /** Set the path and name of ALSA library file if PortAudio is configured to load it dynamically (see | |
97 * PA_ALSA_DYNAMIC). This setting will overwrite the default name set by PA_ALSA_PATHNAME define. | |
98 * @param pathName Full path with filename. Only filename can be used, but dlopen() will lookup default | |
99 * searchable directories (/usr/lib;/usr/local/lib) then. | |
100 */ | |
101 void PaAlsa_SetLibraryPathName( const char *pathName ); | |
102 | |
103 #ifdef __cplusplus | |
104 } | |
105 #endif | |
106 | |
107 #endif |