summaryrefslogtreecommitdiff
path: root/audio/sox/patches/patch-aa
blob: fa4d416c2cc0d404ed3c41de49c97bbc728071cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
$NetBSD: patch-aa,v 1.3 1998/08/07 10:36:11 agc Exp $

--- sbdsp.c.orig	Wed Aug 17 23:11:01 1994
+++ sbdsp.c	Fri Jun 19 19:01:35 1998
@@ -21,7 +21,12 @@
 #include <i386/isa/sblast.h>
 #else
 #ifdef LINUXSOUND
-#include <linux/soundcard.h>
+#ifdef __NetBSD__
+#include <sys/ioctl.h>
+#include <soundcard.h>
+#else
+#include <machine/soundcard.h>
+#endif
 #else
 #include <sys/sb.h>
 #endif
@@ -77,8 +82,18 @@
 	ioctl(fileno(ft->fp), DSP_IOCTL_VOICE, &off);
 	ioctl(fileno(ft->fp), DSP_IOCTL_SPEED, &ft->info.rate);
 #else
+#ifdef __NetBSD__
+	{
+		int fmt = AFMT_U8;
+		ioctl(fileno(ft->fp), SNDCTL_DSP_SETFMT, &fmt);
+	}
+#endif
 #if defined(LINUXSOUND)
-	ioctl(fileno(ft->fp), SNDCTL_DSP_SPEED, ft->info.rate);
+  #if SOUND_VERSION >= 200
+	ioctl(fileno(ft->fp), SOUND_PCM_WRITE_RATE, &ft->info.rate);
+  #else
+	ioctl(fileno(ft->fp), SOUND_PCM_WRITE_RATE, ft->info.rate);
+  #endif
 #else
 	ioctl(fileno(ft->fp), DSP_IOCTL_VOICE, 0);
 	ioctl(fileno(ft->fp), DSP_IOCTL_SPEED, ft->info.rate);
@@ -146,9 +161,19 @@
 	ioctl(fileno(ft->fp), DSP_IOCTL_VOICE, &on);
 	ioctl(fileno(ft->fp), DSP_IOCTL_SPEED, &ft->info.rate);
 #else
+#ifdef __NetBSD__
+	{
+		int fmt = AFMT_U8;
+		ioctl(fileno(ft->fp), SNDCTL_DSP_SETFMT, &fmt);
+	}
+#endif
 #if defined(LINUXSOUND)
 	ioctl(fileno(ft->fp), SNDCTL_DSP_SYNC, 0);
-	ioctl(fileno(ft->fp), SNDCTL_DSP_SPEED, ft->info.rate);
+  #if SOUND_VERSION >= 200
+	ioctl(fileno(ft->fp), SOUND_PCM_WRITE_RATE, &ft->info.rate);
+  #else
+	ioctl(fileno(ft->fp), SOUND_PCM_WRITE_RATE, ft->info.rate);
+  #endif
 #else
 	ioctl(fileno(ft->fp), DSP_IOCTL_VOICE, 1);
 	ioctl(fileno(ft->fp), DSP_IOCTL_SPEED, ft->info.rate);