summaryrefslogtreecommitdiffstats
path: root/contrib/ntp/util/audio-pcm.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/ntp/util/audio-pcm.c')
-rw-r--r--contrib/ntp/util/audio-pcm.c154
1 files changed, 0 insertions, 154 deletions
diff --git a/contrib/ntp/util/audio-pcm.c b/contrib/ntp/util/audio-pcm.c
deleted file mode 100644
index 6f2e4fa..0000000
--- a/contrib/ntp/util/audio-pcm.c
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
- * audio-pcm.c - Scope out the PCM audio stuff
- */
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#if defined(HAVE_MACHINE_SOUNDCARD_H) || defined(HAVE_SYS_SOUNDCARD_H)
-
-#include "audio.h"
-#include "ntp_stdlib.h"
-#include "ntp_syslog.h"
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-#include <stdio.h>
-#include "ntp_string.h"
-
-#ifdef HAVE_SYS_IOCTL_H
-#include <sys/ioctl.h>
-#endif /* HAVE_SYS_IOCTL_H */
-
-#include <fcntl.h>
-
-#ifdef HAVE_MACHINE_SOUNDCARD_H
-# include <machine/soundcard.h>
-# define PCM_STYLE_SOUND
-#else
-# ifdef HAVE_SYS_SOUNDCARD_H
-# include <sys/soundcard.h>
-# define PCM_STYLE_SOUND
-# endif
-#endif
-
-/*
- * Global variables
- */
-static int ctl_fd; /* audio control file descriptor */
-
-const char *m_names[SOUND_MIXER_NRDEVICES] = SOUND_DEVICE_NAMES ;
-
-void
-d_fmt(
- unsigned int format
- )
-{
-
- if (format & AFMT_MU_LAW) printf("MU_LAW ");
- if (format & AFMT_A_LAW) printf("A_LAW ");
- if (format & AFMT_IMA_ADPCM) printf("IMA_ADPCM ");
- if (format & AFMT_U8) printf("U8 ");
- if (format & AFMT_S16_LE) printf("S16_LE ");
- if (format & AFMT_S16_BE) printf("S16_BE ");
- if (format & AFMT_S8) printf("S8 ");
- if (format & AFMT_U16_LE) printf("U16_LE ");
- if (format & AFMT_U16_BE) printf("U16_BE ");
- if (format & AFMT_MPEG) printf("MPEG ");
- if (format & AFMT_AC3) printf("AC3 ");
- printf("\n");
-}
-
-void
-d_mixer(
- unsigned int mixer
- )
-{
- int i;
- int n = 0;
-
- for (i = 0; i < SOUND_MIXER_NRDEVICES; ++i)
- if ((1 << i) & mixer) {
- if (n)
- printf(", ");
- printf("%s", m_names[i]);
- n = 1;
- }
- printf("\n");
-}
-
-int
-main( )
-{
- int unit = 0; /* device unit (0-3) */
-# define AI_DEV "/dev/audio%d"
-# define AC_DEV "/dev/mixer%d"
- char ai_dev[30];
- char ac_dev[30];
- struct snd_size s_size;
- snd_chan_param s_c_p;
- snd_capabilities s_c;
- int fd;
- int rval;
- char *dname = ai_dev; /* device name */
- char *actl = ac_dev;
- int devmask = 0, recmask = 0, recsrc = 0;
-
- (void)sprintf(ai_dev, AI_DEV, unit);
- (void)sprintf(ac_dev, AC_DEV, unit);
-
- /*
- * Open audio device. Do not complain if not there.
- */
- fd = open(dname, O_RDWR | O_NONBLOCK, 0777);
- if (fd < 0)
- return (fd);
-
- /*
- * Open audio control device.
- */
- ctl_fd = open(actl, O_RDWR);
- if (ctl_fd < 0) {
- fprintf(stderr, "invalid control device <%s>\n", actl);
- close(fd);
- return(ctl_fd);
- }
-
- printf("input: <%s> %d\n", dname, fd);
- printf("control: <%s> %d\n", actl, ctl_fd);
-
- if (ioctl(ctl_fd, SOUND_MIXER_READ_DEVMASK, &devmask) == -1)
- printf("SOUND_MIXER_READ_DEVMASK: %s\n", strerror(errno));
- if (ioctl(ctl_fd, SOUND_MIXER_READ_RECMASK, &recmask) == -1)
- printf("SOUND_MIXER_READ_RECMASK: %s\n", strerror(errno));
- if (ioctl(ctl_fd, SOUND_MIXER_READ_RECSRC, &recsrc) == -1)
- printf("SOUND_MIXER_READ_RECSRC: %s\n", strerror(errno));
-
- printf("devmask: %#x recmask: %#x recsrc: %#x\n",
- devmask, recmask, recsrc);
- printf("Devmask: "); d_mixer(devmask);
- printf("Recmask: "); d_mixer(recmask);
- printf("RecSrc: "); d_mixer(recsrc);
-
- /*
- * Set audio device parameters.
- */
- rval = fd;
-
- if (ioctl(fd, AIOGSIZE, &s_size) == -1)
- printf("AIOGSIZE: %s\n", strerror(errno));
- else
- printf("play_size %d, rec_size %d\n",
- s_size.play_size, s_size.rec_size);
-
- if (ioctl(fd, AIOGFMT, &s_c_p) == -1)
- printf("AIOGFMT: %s\n", strerror(errno));
- else {
- printf("play_rate %lu, rec_rate %lu, play_format %#lx, rec_format %#lx\n",
- s_c_p.play_rate, s_c_p.rec_rate, s_c_p.play_format, s_c_p.rec_format);
- printf("Play format: "); d_fmt(s_c_p.play_format);
- printf("Rec format: "); d_fmt(s_c_p.rec_format);
- }
-
-}
-#endif /* HAVE_{MACHINE_SOUNDCARD,SYS_SOUNDCARD}_H */
OpenPOWER on IntegriCloud