Commit graph

92 commits

Author SHA1 Message Date
Jaroslav Kysela
4a4cc2a301 The rate plugin was redesigned. Now only whole periods are resampled to
avoid rounding problems and to allow using other "block" algorithms.
2004-02-04 09:21:11 +00:00
Takashi Iwai
8bcadcb2a6 - fixed the calculation of snd_pcm_avail() with plugin.
this will fix the slow playback problem on mplayer.
- the delay calculation is optimized a bit.
2003-10-30 18:46:32 +00:00
Takashi Iwai
7716fd1e3d fixes by Art Haas <ahaas@airmail.net>:
rewritten with C99 struct initialization style.
2003-07-25 17:02:00 +00:00
Jaroslav Kysela
157107491c Added snd_pcm_type_name()
Fixed rate conversion plugin (SIGSEGV) - rounding problem
2003-03-08 16:35:18 +00:00
Jaroslav Kysela
7ecb338398 Use internal snd_pcm_forward() version... 2003-03-07 18:46:25 +00:00
Jaroslav Kysela
7b09000813 Removed snd_pcm_hwdiff() function 2003-02-22 17:53:01 +00:00
Jaroslav Kysela
2dab1dfbc3 Removed snd_pcm_hwptr().
Added snd_pcm_hwdiff() and snd_pcm_forward().
Returned the behaviour for snd_pcm_mmap_begin().
2003-02-22 17:19:02 +00:00
Jaroslav Kysela
fbd99fdec0 Added snd_pcm_hwptr() and enhanced snd_pcm_mmap_begin() for no xrun mode. 2003-02-22 10:19:53 +00:00
Jaroslav Kysela
af89cefd99 More changes for dmix plugin:
- added poll_events to main pcm structure
  - added poll_revents callback to pcm->ops structure
  - fixed snd_pcm_wait() - call revents function and enhanced
    error code reporting
DMIX plugin:
  - more complete code (works at least for one instance)
  - still no "mix" code (it's silent)
2003-02-11 18:14:43 +00:00
Jaroslav Kysela
8720faaccb Cleanups in IPC stuff.
Cleanups in snd_pcm_close().
Added initial code for dmix plugin:
  - only skeleton, but all major problems should be solved
2003-02-04 14:48:51 +00:00
Jaroslav Kysela
8205a95376 Replaced snd_pcm_avail() with snd_pcm_hwsync() 2002-10-12 11:49:53 +00:00
Jaroslav Kysela
e859cf2644 Implemented snd_pcm_avail() function.
More documentation updates for snd_pcm_avail_update() and snd_pcm_delay().
Updated behaviour of read/write functions (wait when buffer is full) to
follow kernel.
2002-10-11 18:39:24 +00:00
Takashi Iwai
12e89c5307 fixed compile warning (conversion between signed and unsigned). 2002-06-18 16:06:14 +00:00
Jaroslav Kysela
c941c548f8 Moved ring buffer pointers and added a mechanism to transfer them via shm 2002-04-23 15:51:29 +00:00
Jaroslav Kysela
6746dabeb1 Fixed capture for plugins 2002-04-16 19:24:58 +00:00
Jaroslav Kysela
c31a3bff06 Fixed typo 2002-03-11 13:19:28 +00:00
Takashi Iwai
9fc594f47b fixed segfault in rate conversions. 2002-03-08 14:29:09 +00:00
Jaroslav Kysela
aeeb396002 Added abort when no more frames can be processed 2002-03-03 09:24:14 +00:00
Jaroslav Kysela
4a0e9058a9 Fixed xfer variable initialization for capture in avail_update() 2002-02-21 15:03:50 +00:00
Jaroslav Kysela
e128bf856e Cleaned the mmap_commit implementations in plugins.
Added undo callbacks for snd_pcm_plugin based plugins.
  - helpers when mmap_commit proceed only a partial transfer
Fixes to avail_update implementation in pcm_hw.c.
2002-02-21 15:01:34 +00:00
Jaroslav Kysela
a24b602f28 Added initial comments for PCM plugins 2002-01-16 16:42:40 +00:00
Jaroslav Kysela
8c1887d7af Moved some prototypes from src/pcm/pcm_plugin.h to include/pcm_plugin.h.
Merged src/pcm/atomic.h to include/iatomic.h.
Added initial description of hw and hooks plugins.
2002-01-12 10:52:42 +00:00
Jaroslav Kysela
3e3df2d32b Updated GNU GPL license (address).
Changed GNU LGPL licence from 2.0 to 2.1.
2001-12-30 09:22:54 +00:00
Jaroslav Kysela
b7b11c3558 - added snd_pcm_mmap_begin_avail function; it is optimized for use after
snd_pcm_avail_update() call
- fixed broken hw_ptr management inside snd_pcm_plugin code
2001-12-09 18:41:23 +00:00
Jaroslav Kysela
b63e44aab0 Synchronized snd_pcm_write_areas and snd_pcm_read_areas with the kernel
write/read functions.
Changed snd_pcm_xfer_areas_func_t to return snd_pcm_sframes_t (pass errors).
2001-12-09 12:32:42 +00:00
Jaroslav Kysela
0917ba63b0 Changed result of mmap_commit callback
(follows description of snd_pcm_mmap_commit function).
2001-12-08 21:02:20 +00:00
Jaroslav Kysela
3c59c6b11d Added power management functions and defines. 2001-09-26 13:57:04 +00:00
Abramo Bagnara
c51095434d Fixed missing frames count initialization 2001-06-30 08:24:41 +00:00
Abramo Bagnara
6a3b962d06 Better PCM mmap API. Fixed pcm_multi 2001-04-13 15:40:53 +00:00
Abramo Bagnara
5b50ec848a Lot of cleanings with the help of gcc3 2001-03-29 17:50:28 +00:00
Abramo Bagnara
d87059867b Added pcm_meter skeleton 2001-03-01 22:47:34 +00:00
Abramo Bagnara
a02e742609 Added multithread aware status for plugins 2001-02-27 18:21:31 +00:00
Abramo Bagnara
3196ef28ae Typo 2001-02-27 17:02:56 +00:00
Abramo Bagnara
3830b168ef Improved plugin code (simpler, faster and multithread ready) 2001-02-27 13:42:12 +00:00
Abramo Bagnara
460660d4b4 More generic support for poll descriptors 2001-02-12 23:51:49 +00:00
Abramo Bagnara
a2d3434961 Completed mixer API. Improved iterators. Renamed control values struct. Rewritten simple elements implementation 2001-02-11 15:45:35 +00:00
Abramo Bagnara
a83b209df2 Fixed repeated prepare call 2001-02-05 09:35:17 +00:00
Abramo Bagnara
a7561a9c7e Corrected and completed encapsulation for PCM and rawmidi. Remove SND_PCM_HW_PARAM_* and use functions. Separated rawmidi info between streams 2001-02-04 17:03:17 +00:00
Abramo Bagnara
de19407578 Removed card type from devices info. Added card number to devices info. Completed encapsulation of PCM API. Removed snd_pcm_card(). All copy functions now have the form copy(dst, src). 2001-01-31 17:26:56 +00:00
Abramo Bagnara
c07201926b Promoted plugin helpers to general use 2001-01-26 09:56:30 +00:00
Abramo Bagnara
f12a252f20 Added support for hw_free in alsa-lib 2001-01-19 13:10:50 +00:00
Abramo Bagnara
3126678e72 Major cleaning to hw_params mechanism for plugins 2001-01-18 18:20:31 +00:00
Abramo Bagnara
cc90e32557 New PCM model with fragment concept removal and two interrupt sources
Renamed size_t/ssize_t to snd_pcm_sframes_t/snd_pcm_uframes_t
2001-01-15 11:06:53 +00:00
Abramo Bagnara
7e4938fa0e Use enum instead of #define where appropriate 2001-01-08 15:31:34 +00:00
Abramo Bagnara
8f1b27dfb8 PCM API cleaning. silencing implementation. xfer_min removal 2000-12-29 15:00:53 +00:00
Jaroslav Kysela
9acdef38c9 Added snd_*_card() functions. 2000-12-22 14:03:01 +00:00
Jaroslav Kysela
c268a4bf56 Removed dig_info & dig_params.. 2000-12-21 21:52:40 +00:00
Abramo Bagnara
5860beac69 Some cleaning to mmap 2000-12-11 15:54:55 +00:00
Abramo Bagnara
8c080ce9dd Added snd_pcm_reset to API 2000-11-24 17:08:03 +00:00
Jaroslav Kysela
41bb7068f2 Merged pcmfinal branch. 2000-11-20 20:10:46 +00:00