Commit graph

2083 commits

Author SHA1 Message Date
Jaroslav Kysela
597b4d0942 big simple mixer update
- exported all necessary functions to create a mixer module outside alsa-lib
- separated simple mixer API from the simple mixer implementation
  (using callbacks as usuall)
  - src/mixer/simple.c is the core
  - src/mixer/simple_none.c is the current (no-abstraction) implementation
    based on control names; note that this module does not depend on
    internal ALSA structures now
  - src/mixer/simple_abst.c is the ongoing abstraction which will use
    external dynamic modules; src/conf/smixer.conf will describe which
    modules will be used depending on the components from the driver
2005-06-03 13:33:04 +00:00
Takashi Iwai
ae07fd40fb Remove obsolete ordinary_* entries
Remove obsolete ordinary_* entries.
2005-06-01 12:34:51 +00:00
Takashi Iwai
009911ed1c Remove obsolete ordinary_* entries from configure.in
Remove obsolete ordinary_* entries from configure.in.
2005-06-01 12:31:52 +00:00
Takashi Iwai
b69ab56881 Fix bugs in the last change of ipc_gid option
- Fix semaphore gid control
- Do semaphore discard for all semaphores (although currently defined as 1)
- Fix the wrong check of return value from shmctl
2005-05-30 17:56:12 +00:00
Takashi Iwai
270da603fd Add description for perm option of file plugin
Added the description for the new "perm" option of file plugin.
2005-05-30 17:03:00 +00:00
Takashi Iwai
bf5d2bfe47 Remove obsolete *_ordinary.h files
Remove obsolete *_ordinary.h files.
2005-05-30 16:21:25 +00:00
Jaroslav Kysela
41398ceb9c removed ordinary stuff 2005-05-30 11:57:26 +00:00
Jaroslav Kysela
ff9fd33190 a bit reordered code to fix bug #838 2005-05-30 11:38:54 +00:00
Jaroslav Kysela
02b6b9f616 Corrected ipc_gid 2005-05-30 11:36:27 +00:00
Jaroslav Kysela
d5e434c427 Added ipc_gid 2005-05-30 11:35:44 +00:00
Jaroslav Kysela
9bae1c874f fix warnings (bug #829) 2005-05-30 11:16:20 +00:00
Jaroslav Kysela
3d1fa92490 added support for more sample widths
- patch taken from ALSA bug #1140
2005-05-30 10:22:18 +00:00
Jaroslav Kysela
3a763ae3c5 use ipc_gid for dmix and dsnoop
- added ipc_gid audio
- removed ipc_key_add_uid
2005-05-30 10:16:59 +00:00
Jaroslav Kysela
4b7e3cff81 added ipc_gid for direct plugins 2005-05-30 10:13:54 +00:00
Jaroslav Kysela
d7ef50f5ee name clash (WINE, icc), interface -> iface renamed
Fix ALSA bug #1139.
2005-05-29 14:26:20 +00:00
Jaroslav Kysela
e789209314 name clash (WINE, icc) interface -> iface rename
Fixes ALSA bug #1139.
2005-05-29 14:24:51 +00:00
Jaroslav Kysela
c072e76136 release: 1.0.9 2005-05-27 12:58:02 +00:00
Takashi Iwai
98ecc868ec Fix compile without debug option
Fixed the compile error (missing function) without debug option.
2005-05-27 09:25:16 +00:00
Takashi Iwai
aad10fb49b Fix a typo
Fix a typo.
2005-05-24 14:50:21 +00:00
Takashi Iwai
087184b0f9 Fix doxygen documents
Fix the warnings of doxygen parsing.
Add some missing documentation.
2005-05-24 14:14:28 +00:00
Takashi Iwai
7651690858 Fix documentation of external PCM plugin SDK
Fix documentation of external PCM plugin SDK.
2005-05-24 09:42:01 +00:00
Jaroslav Kysela
8b76989e19 release: 1.0.9rc4 2005-05-23 11:32:35 +00:00
Takashi Iwai
6e1bc68070 Minor clean up
Minor clean up.
2005-05-23 09:04:15 +00:00
Takashi Iwai
dd37bb20ee Move poll_* callbacks to fast_ops
Moved poll_* callbacks to fast_ops.
These callbacks may be called frequently indeed.
2005-05-23 09:03:16 +00:00
Takashi Iwai
dae58c0192 Add area synchronization in poll_rsync of rate plugin
Try to sync areas as much as possible in poll_rsync callback of rate plugin.
2005-05-23 09:01:31 +00:00
Takashi Iwai
67420b8882 Fix poll of dsnoop plugin
Fixed the poll behavior of dsnoop plugin after commit.
2005-05-23 08:58:04 +00:00
Takashi Iwai
a3ae02d884 Fix semaphore deadlocks
- Fixed unbalanced semaphores (which may cause deadlock)
- Do semaphore-up before blocking calls for communication with the server
- Don't discard semaphores on the client side
- Open slave PCMs always in non-blocking mode to avoid blocking by semaphore
  with the secondary open
2005-05-23 08:56:48 +00:00
Takashi Iwai
ddd9c29a0d Fix dshare plugin codes
Modify dshare plugin codes to follow the recent change of dmix:
proper XRUN and poll handling, async data transfer.
2005-05-23 08:51:59 +00:00
Takashi Iwai
1661759351 Minor clean up of dmix codes
Minor clean up of dmix codes.
2005-05-23 08:49:58 +00:00
Takashi Iwai
4c6809bf30 Fix poll after XRUN with dmix
Fix the behavior of poll after XRUN with dmix plugin.
Poll should return immediately with an XRUN stream.
2005-05-23 08:48:46 +00:00
James Courtier-Dutton
b0ee34e757 Implement surround71 output for SB Live 24 bit.
Note: Requires updated alsa-kernel as well.
2005-05-21 15:21:04 +00:00
Takashi Iwai
4d7c53d280 Add snd_pcm_hw_params_get/set_export_buffer()
Add snd_pcm_hw_params_get/set_export_buffer() API functions.
They control to ensure the buffer export to other processes.
If this flag is set, the local buffer of a plugin is exported over IPC shm.
Otherwise the buffer can be handled only locally (no shm).

Also fixed Version file for 1.0.9.
2005-05-19 16:59:04 +00:00
Takashi Iwai
18053076e2 Fix generic channel_info callbacks
Fixed generic channel_info callbacks for many plugins.
The allocation of unnecessary internal buffers is avoided.
2005-05-19 16:50:24 +00:00
Takashi Iwai
d81d6940ca Fix bugs in perm option
Fixed silly bugs in perm option.
2005-05-19 15:14:05 +00:00
Takashi Iwai
4e1723f9a5 More strict permission for IPC shm and sem
Use more strict permission for IPC shm and sem, too.
The permission follows to the value of ipc_perm config option, as
default 0600.
2005-05-19 14:36:04 +00:00
Takashi Iwai
13c7364997 Revert the shmget permission
Oops, a part of another patch was merged accidentally.  Reverted.
2005-05-19 14:20:07 +00:00
Takashi Iwai
5227c7e170 Fix possible noises and optimization with dmix
dmix transfers data in asynchronously so that it doesn't write on the
last active period.  This will allow the arbitrary buffer size in
future, too.

The hwsync call to slave is removed from commit and hwsync callbacks.
This hack was added to fix the noisy output (typically on xmms/bmp)
but it doesn't happen any more.  Now the hwsync behavior is as same as
on 1.0.8 (i.e. hwsync is called only when slowptr option is set).
2005-05-19 14:14:04 +00:00
Takashi Iwai
1cd04dba82 Add perm option
Added "perm" option to file plugin to specify the file permission.
Changed the default permission to 0600.
2005-05-19 13:59:43 +00:00
Takashi Iwai
d5b9823447 Fix snd_pcm_wait() for multiple pollfd's
Fixed snd_pcm_wait() to handle multiple pollfd's.
2005-05-18 13:28:06 +00:00
Takashi Iwai
a6d3b9e4e0 Remove poll_ask callback
Removed poll_ask callbacks.
poll_ask function is merged to poll_descriptors callbacks.
2005-05-18 10:50:09 +00:00
Takashi Iwai
e61d385993 Add protocl version check
- Added protocl version check.  The caller of snd_pcm_{io|ext}plug_create()
  must fill version field with SND_PCM_{IO|EXT}PLUG_VERSION beforehand.

- Added poll_descriptors and poll_descriptors_count callbacks for ioplug.
2005-05-18 10:47:52 +00:00
Takashi Iwai
97010dbfdb Use snd_pcm_generic_t and its callbacks
Use snd_pcm_generic_t and its callbacks.
2005-05-18 10:46:03 +00:00
Takashi Iwai
842b573424 Add poll_descriptors and poll_descriptors_count callbacks
Added poll_descriptors and poll_descriptors_count callbacks for multiple
poll_fd's.
2005-05-18 10:45:06 +00:00
Takashi Iwai
cf4f4bc9c4 Fix drain of dmix without data
Fixed the drain of dmix plugin without any data.
It should return immediately.
2005-05-17 15:36:18 +00:00
Takashi Iwai
2ada7a8b81 Fix snd_mixer_sort()
Fixed the wrong pointer use in snd_mixer_sort().
(Patch from https://bugs.gentoo.org/attachment.cgi?id=58918)
2005-05-17 09:34:18 +00:00
Takashi Iwai
51313cb2dd Remove pause and fix timer initialization in prepare
- Removed broken pause implementations.
- Fixed the timer initialization in prepare callback so that poll
  works again after prepare.
2005-05-17 09:28:29 +00:00
Takashi Iwai
e76bbd74d7 Set up pcm->info properly
Set up pcm->info properly for ioplug according to the avaialbe callbacks.
2005-05-17 09:27:17 +00:00
Takashi Iwai
3092edabf2 Propagate pcm->info
Propate pcm->info bit flags from the slave PCM in refine.
This will fix the bug indicating bogus pause/resume capabilities.
2005-05-17 09:26:34 +00:00
Takashi Iwai
8c09d72743 Add $include/alsa to the include path
Added $include/alsa to the include path again for backward compatibility.
Some apps fail to be built without this.
2005-05-15 14:49:11 +00:00
Takashi Iwai
48bff53b36 Check timer version for read-block workaround
Check the timer protocl version whether to use poll for a workaround
of read-block problems.
2005-05-15 14:48:19 +00:00