/[rdesktop]/sourceforge.net/trunk/rdesktop/rdpsnd.h
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Annotation of /sourceforge.net/trunk/rdesktop/rdpsnd.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1260 - (hide annotations)
Sun Sep 17 15:25:10 2006 UTC (17 years, 8 months ago) by stargo
File MIME type: text/plain
File size: 1886 byte(s)
unify audio-byteswapping as a dsp-function

1 stargo 1254 /*
2     rdesktop: A Remote Desktop Protocol client.
3     Sound infrastructure
4     Copyright (C) Michael Gernoth 2006
5    
6     This program is free software; you can redistribute it and/or modify
7     it under the terms of the GNU General Public License as published by
8     the Free Software Foundation; either version 2 of the License, or
9     (at your option) any later version.
10    
11     This program is distributed in the hope that it will be useful,
12     but WITHOUT ANY WARRANTY; without even the implied warranty of
13     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14     GNU General Public License for more details.
15    
16     You should have received a copy of the GNU General Public License
17     along with this program; if not, write to the Free Software
18     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19     */
20    
21     struct audio_packet
22     {
23     struct stream s;
24     uint16 tick;
25     uint8 index;
26     };
27    
28 stargo 1255 struct audio_driver
29     {
30     void (*wave_out_write) (STREAM s, uint16 tick, uint8 index);
31 stargo 1258 BOOL(*wave_out_open) (void);
32 stargo 1255 void (*wave_out_close) (void);
33 stargo 1258 BOOL(*wave_out_format_supported) (WAVEFORMATEX * pwfx);
34     BOOL(*wave_out_set_format) (WAVEFORMATEX * pwfx);
35 stargo 1255 void (*wave_out_volume) (uint16 left, uint16 right);
36     void (*wave_out_play) (void);
37     char *name;
38     char *description;
39 stargo 1260 int need_byteswap_on_be;
40 stargo 1255 struct audio_driver *next;
41     };
42    
43 stargo 1254 extern BOOL g_dsp_busy;
44     extern int g_dsp_fd;
45    
46     void rdpsnd_queue_write(STREAM s, uint16 tick, uint8 index);
47 stargo 1256 struct audio_packet *rdpsnd_queue_current_packet(void);
48     BOOL rdpsnd_queue_empty(void);
49     void rdpsnd_queue_init(void);
50     void rdpsnd_queue_next(void);
51     int rdpsnd_queue_next_tick(void);
52 stargo 1255
53     /* Driver register functions */
54     struct audio_driver *alsa_register(char *options);
55     struct audio_driver *libao_register(char *options);
56     struct audio_driver *oss_register(char *options);
57     struct audio_driver *sgi_register(char *options);
58     struct audio_driver *sun_register(char *options);

  ViewVC Help
Powered by ViewVC 1.1.26