Lines Matching +full:gain +full:- +full:scaling +full:- +full:p

5 /*-
6 * SPDX-License-Identifier: BSD-2-Clause
8 * Copyright by Hannu Savolainen 1993 / 4Front Technologies 1993-2006
55 * snd-sdk-doc-0.1.ps.gz (gzipped postscript). It contains
122 * number of bytes for a write operation to be non-blocking.
146 * format. We extend it by using bit 31 (RO) to indicate full-duplex
153 * o 8 bits for 8-bit formats, mu-law and A-law,
154 * o 16 bits for the 16-bit formats, and
155 * o 32 bits for the 24/32-bit formats.
160 #define AFMT_MU_LAW 0x00000001 /* Logarithmic mu-law */
161 #define AFMT_A_LAW 0x00000002 /* Logarithmic A-law */
162 #define AFMT_IMA_ADPCM 0x00000004 /* A 4:1 compressed format where 16-bit
165 #define AFMT_U8 0x00000008 /* Unsigned 8-bit */
166 #define AFMT_S16_LE 0x00000010 /* Little endian signed 16-bit */
167 #define AFMT_S16_BE 0x00000020 /* Big endian signed 16-bit */
168 #define AFMT_S8 0x00000040 /* Signed 8-bit */
169 #define AFMT_U16_LE 0x00000080 /* Little endian unsigned 16-bit */
170 #define AFMT_U16_BE 0x00000100 /* Big endian unsigned 16-bit */
175 * 32-bit formats below used for 24-bit audio data where the data is stored
179 #define AFMT_S32_LE 0x00001000 /* Little endian signed 32-bit */
180 #define AFMT_S32_BE 0x00002000 /* Big endian signed 32-bit */
181 #define AFMT_U32_LE 0x00004000 /* Little endian unsigned 32-bit */
182 #define AFMT_U32_BE 0x00008000 /* Big endian unsigned 32-bit */
183 #define AFMT_S24_LE 0x00010000 /* Little endian signed 24-bit */
184 #define AFMT_S24_BE 0x00020000 /* Big endian signed 24-bit */
185 #define AFMT_U24_LE 0x00040000 /* Little endian unsigned 24-bit */
186 #define AFMT_U24_BE 0x00080000 /* Big endian unsigned 24-bit */
297 u_long rate_min, rate_max; /* min-max sampling rate */
387 #define WAVE_UNSIGNED 0x02 /* bit 1 = Signed - Unsigned data. */
388 #define WAVE_LOOPING 0x04 /* bit 2 = looping enabled-1. */
392 #define WAVE_ENVELOPES 0x40 /* bit 6 = Enable envelopes - 1 */
397 #define WAVE_SCALE 0x00040000 /* The scaling info is valid */
423 int panning; /* -128=left, 127=right */
474 #define SNDCTL_PMGR_IFACE _IOWR('P', 1, struct patmgr_info)
504 #define PMTYPE_FM4 2 /* Mixed 4 or 2 op FM (OPL-3) */
605 /* undefined 0x0c - 0x0f */
610 /* undefined 0x14 - 0x1f */
630 /* undefined 0x46 - 0x4f */
636 /* undefined 0x54 - 0x5a */
649 /* undefined 0x66 - 0x78 */
650 /* reserved 0x79 - 0x7f */
712 short device; /* Synth# (0-4) */
720 int device; /* 0-N. INITIALIZE BEFORE CALLING */
753 int device; /* 0-N. INITIALIZE BEFORE CALLING */
778 #define SNDCTL_DSP_HALT _IO ('P', 0)
780 #define SNDCTL_DSP_SYNC _IO ('P', 1)
781 #define SNDCTL_DSP_SPEED _IOWR('P', 2, int)
782 #define SNDCTL_DSP_STEREO _IOWR('P', 3, int)
783 #define SNDCTL_DSP_GETBLKSIZE _IOR('P', 4, int)
784 #define SNDCTL_DSP_SETBLKSIZE _IOW('P', 4, int)
785 #define SNDCTL_DSP_SETFMT _IOWR('P',5, int) /* Selects ONE fmt*/
791 #define SOUND_PCM_WRITE_CHANNELS _IOWR('P', 6, int)
793 #define SOUND_PCM_WRITE_FILTER _IOWR('P', 7, int)
794 #define SNDCTL_DSP_POST _IO ('P', 8)
800 #define SNDCTL_DSP_SUBDIVIDE _IOWR('P', 9, int)
801 #define SNDCTL_DSP_SETFRAGMENT _IOWR('P',10, int)
803 #define SNDCTL_DSP_GETFMTS _IOR ('P',11, int) /* Returns a mask */
816 #define SNDCTL_DSP_GETOSPACE _IOR ('P',12, audio_buf_info)
817 #define SNDCTL_DSP_GETISPACE _IOR ('P',13, audio_buf_info)
824 #define SNDCTL_DSP_NONBLOCK _IO ('P',14)
826 #define SNDCTL_DSP_GETCAPS _IOR ('P',15, int)
916 #define SNDCTL_DSP_GETTRIGGER _IOR ('P',16, int)
917 #define SNDCTL_DSP_SETTRIGGER _IOW ('P',16, int)
930 #define SNDCTL_DSP_GETIPTR _IOR ('P',17, count_info)
931 #define SNDCTL_DSP_GETOPTR _IOR ('P',18, count_info)
938 #define SNDCTL_DSP_MAPINBUF _IOR ('P', 19, buffmem_desc)
939 #define SNDCTL_DSP_MAPOUTBUF _IOR ('P', 20, buffmem_desc)
940 #define SNDCTL_DSP_SETSYNCRO _IO ('P', 21)
941 #define SNDCTL_DSP_SETDUPLEX _IO ('P', 22)
942 #define SNDCTL_DSP_GETODELAY _IOR ('P', 23, int)
948 #define SOUND_PCM_READ_RATE _IOR ('P', 2, int)
949 #define SOUND_PCM_READ_CHANNELS _IOR ('P', 6, int)
950 #define SOUND_PCM_READ_BITS _IOR ('P', 5, int)
951 #define SOUND_PCM_READ_FILTER _IOR ('P', 7, int)
1026 #define SOUND_MIXER_IGAIN 12 /* Input gain */
1027 #define SOUND_MIXER_OGAIN 13 /* Output gain */
1047 * Some on/off settings (SOUND_SPECIAL_MIN - SOUND_SPECIAL_MAX)
1275 * SEQ_DEFINEBUF (2048); -- Defines a buffer for 2048 bytes
1277 * int seqfd; -- The file descriptor for /dev/sequencer.
1283 * if (write (seqfd, _seqbuf, _seqbufptr) == -1)
1286 * exit (-1);
1392 * and the last byte (buf[len-1] of the last fragment must be 0xf7. No byte
1503 if (write(seqfd, (char*)(patchx), len)==-1) \
1542 * XXX OSSv4 defines -- some bits taken straight out of the new
1591 #define SNDCTL_DSP_GETPLAYVOL _IOR ('P', 24, int)
1592 #define SNDCTL_DSP_SETPLAYVOL _IOWR('P', 24, int)
1593 #define SNDCTL_DSP_GETERROR _IOR ('P', 25, audio_errinfo)
1606 #define SNDCTL_DSP_SYNCGROUP _IOWR('P', 28, oss_syncgroup)
1607 #define SNDCTL_DSP_SYNCSTART _IOW ('P', 29, int)
1623 #define SNDCTL_DSP_COOKEDMODE _IOW ('P', 30, int)
1631 #define SNDCTL_DSP_SILENCE _IO ('P', 31)
1632 #define SNDCTL_DSP_SKIP _IO ('P', 32)
1638 #define SNDCTL_DSP_HALT_INPUT _IO ('P', 33)
1640 #define SNDCTL_DSP_HALT_OUTPUT _IO ('P', 34)
1647 #define SNDCTL_DSP_LOW_WATER _IOW ('P', 34, int)
1664 #define SNDCTL_DSP_CURRENT_IPTR _IOR ('P', 35, oss_count_t)
1665 #define SNDCTL_DSP_CURRENT_OPTR _IOR ('P', 36, oss_count_t)
1672 #define SNDCTL_DSP_GET_RECSRC_NAMES _IOR ('P', 37, oss_mixer_enuminfo)
1673 #define SNDCTL_DSP_GET_RECSRC _IOR ('P', 38, int)
1674 #define SNDCTL_DSP_SET_RECSRC _IOWR('P', 38, int)
1676 #define SNDCTL_DSP_GET_PLAYTGT_NAMES _IOR ('P', 39, oss_mixer_enuminfo)
1677 #define SNDCTL_DSP_GET_PLAYTGT _IOR ('P', 40, int)
1678 #define SNDCTL_DSP_SET_PLAYTGT _IOWR('P', 40, int)
1679 #define SNDCTL_DSP_GETRECVOL _IOR ('P', 41, int)
1680 #define SNDCTL_DSP_SETRECVOL _IOWR('P', 41, int)
1686 #define SNDCTL_DSP_GET_CHNORDER _IOR ('P', 42, unsigned long long)
1687 #define SNDCTL_DSP_SET_CHNORDER _IOWR('P', 42, unsigned long long)
1702 #define SNDCTL_DSP_GETIPEAKS _IOR('P', 43, oss_peaks_t)
1703 #define SNDCTL_DSP_GETOPEAKS _IOR('P', 44, oss_peaks_t)
1704 #define SNDCTL_DSP_POLICY _IOW('P', 45, int) /* See the manual */
1711 #define SNDCTL_DSP_GETCHANNELMASK _IOWR('P', 64, int)
1712 #define SNDCTL_DSP_BIND_CHANNEL _IOWR('P', 65, int)
1759 int filler[172]; /* For future expansion (set to -1) */
1782 # define MIXT_MONODB 15 /* Mono atten. slider (0 to -144) */
1783 # define MIXT_STEREODB 16 /* Stereo atten. slider (dual 0 to -144) */
1803 int parent; /* Entry# of parent (group) node (-1 if root) */
1812 /* (-1 means not indicated) */
1885 int flags; /* For internal use only - no practical
1899 int latency; /* In usecs, -1=unknown */
1925 * most preferred one. -2 or less means that this device cannot be used
1958 int flags; /* For internal use only - no practical meaning */
1962 int latency; /* In usecs, -1=unknown */