Commit graph

255 commits

Author SHA1 Message Date
Jaroslav Kysela
2cdc7a7767 Removed unfinished sequencer sync code. 2000-01-10 13:08:38 +00:00
Jaroslav Kysela
938bf0eab9 0.5.0pre1 2000-01-10 13:08:18 +00:00
Jaroslav Kysela
944f6f31ca Fixed I/O plugin insert 2000-01-10 10:57:12 +00:00
Jaroslav Kysela
a6aee7bee0 Added the support for the hardware depedent interface. 2000-01-10 10:07:53 +00:00
Abramo Bagnara
c569de6883 get rid of a gcc warning 2000-01-09 22:45:28 +00:00
Abramo Bagnara
d2911f9f34 uniformed alsa-lib interfaces 2000-01-09 22:44:52 +00:00
Abramo Bagnara
fc0a0352db Get rid of compiler warning 2000-01-08 21:59:57 +00:00
Jaroslav Kysela
393acc198e Compilation fix (removed snd_rawmidi_[output|input]_info_t). 2000-01-08 21:51:25 +00:00
Abramo Bagnara
63f5a79562 - splitted pcm channels in two different devices to handle mmap correctly
- removed mmap control device
- reordered pcm shared and not shared code
- changed O_WRONLY oss pcm modifier in a more symmetric and elegant way
- changed slightly control interface
- added snd-debug-check
- uniformed null pointer check
- fixed a typo in linear plugin
2000-01-08 20:11:33 +00:00
Jaroslav Kysela
62380b0f43 Moved aconnect and aseqnet sequencer utilities into the alsa-utils package. 2000-01-04 12:38:59 +00:00
Jaroslav Kysela
7ab9b22d88 Takashi Iwai <iwai@ww.uni-erlangen.de>
Initial code.
2000-01-03 22:44:19 +00:00
Jaroslav Kysela
d117462cb9 Takashi Iwai <iwai@ww.uni-erlangen.de>
Mon, 03 Jan 2000 10:47:02 +0100
- bugfix: proper handling of exclusive subscription
- bugfix and update: alsa-lib/test/seq* stuff
- minor updates (long option support, etc) of aconnect and aseqnet
- man pages for aconnect and aseqnet are added
2000-01-03 10:25:56 +00:00
Jaroslav Kysela
e4b58d20f1 Takashi Iwai <iwai@ww.uni-erlangen.de>
Thu, 30 Dec 1999 16:07:12 +0100
- fix of memory leak in seq_midi
- snd_seq_extract_output() accepts NULL ev_res argument (for removing the
  error event without malloc).
- addition of snd_seq_drain_input_buffer() and snd_seq_drain_output_buffer()
  functions in alsa-lib
1999-12-30 15:21:52 +00:00
Abramo Bagnara
b841d2677b Fixed #ifdef 1999-12-30 12:27:38 +00:00
Abramo Bagnara
b494e44894 Fixed a few typos and hwparams strategy 1999-12-28 14:51:00 +00:00
Abramo Bagnara
077ba9f7f4 Order and indentation fix 1999-12-27 22:22:13 +00:00
Abramo Bagnara
5b0c6ba74a Added 24 bit sample support 1999-12-27 22:06:24 +00:00
Jaroslav Kysela
51dacc8e0e MMAP changes (/dev/snd/pcmcontrol).
Removed unregister callback from snd_minor_t.
1999-12-26 17:27:43 +00:00
Abramo Bagnara
8738da23d8 Completed linear plugin 1999-12-25 15:25:46 +00:00
Abramo Bagnara
cde18e13bc Fixed return value for plugin transfer function 1999-12-25 15:23:47 +00:00
Abramo Bagnara
3696e16613 Added snd_pcm_build_linear_format 1999-12-25 15:22:21 +00:00
Jaroslav Kysela
244d345fda Takashi Iwai <iwai@ww.uni-erlangen.de>
Wed, 22 Dec 1999 15:51:37 +0100
Changes in alsa-driver:

1. SND_SEQ_DEST_DIRECT was removed.  For direct dispatching, specify
   the scheduling queue as SND_SEQ_QUEUE_DIRECT.
   Source compatibility is kept if alsa-lib functions are used to set
   or check direct mode.
   Tested: pmidi, playmidi1, aconnect, aseqview, OSS emulation

2. The error event can be bounced to the sender as an encapsulated
   event with SND_SEQ_EVENT_BOUNCE type.  If the orignal event is
   variable length (like SYSEX), the data body is added after the
   copied event data.  (To access to it, use
   snd_seq_event_bounce_ext_data() macro.)
   This feature is enabled only when the sender is opened with read
   flag and has a client-filter flag SND_SEQ_FILTER_BOUNCE, so that
   as default it is disabled.

3. Maximum size of VARIABLE length event is defined as 2048 bytes.
   Larger events will be refused.
   Note that this is not the size of VARUSR nor VARIPC event.

4. Return error code was revised.
   Possible errors for read():
        -ENXIO  invalid client or file open mode
        -ENOSPC FIFO overflow (the flag is cleared after this error report)
        -EINVAL no enough user-space buffer to write the whole event
        -EFAULT seg. fault during copy to user space
   Possible errors for write():
        -ENXIO  invalid client or file open mode
        -ENOMEM malloc failed
        -EFAULT seg. fault during copy from user space
        -EINVAL invalid event
        -EAGAIN no space in output pool
        -EINTR  interrupts while sleep
        -EMLINK too many hops

        others  depends on return value from driver event_input callback

Changes in alsa-lib:

5. Behavior of snd_seq_flush_output() was changed.
   It flushes data in output buffer as much as possible.  This has
   two advantages.  One is that most data can be sent at one call,
   and another is that the error in write() can be detected directly
   from this function.
   The demerit of this implementation is that in non-blocking mode, it
   tries twice write() even if write pool of sequencer is full, which
   is not actually error.  In this case, flush_output() always returns
   -EAGAIN error code.
   After an error is detected (except for -EAGAIN in non-blocking
   mode), you should remove the error event via
   snd_seq_extract_output() as below.  Otherwise, it'll remain in
   output buffer and cause the same error again.

6. Some functions were added:
   snd_seq_exract_output(seq, &event)
        This extracts the first event on *output* buffer.  This will
        be useful to know (and remove) the event which causes error in
        write().
   snd_seq_event_input_pending(seq, fetch)
        Retunrs the number of events on input buffer.
        If no events exist in input buffer, it fetches from sequencer
        (only when flag is true).
   snd_seq_event_input_selective(seq, &ev, type, blocking)
        Retrieve the event from input with the given event type.
        If blocking is true, it waits until the target event is
        received.  It'll be useful for checking bounced error or
        waiting for hand-shake results (eg. loading insruments).
1999-12-22 15:05:51 +00:00
Jaroslav Kysela
b4bbbdbc9b Steve Ratcliffe <steve@parabola.demon.co.uk>
Sorry, small correction to my previous patch.
1999-12-19 09:49:35 +00:00
Jaroslav Kysela
e4572ec719 Reset all protocol versions to 1.0.0. 1999-12-16 14:14:16 +00:00
Frank van de Pol
a6cd55dcfe small sequencer fixes 1999-12-15 23:37:12 +00:00
Jaroslav Kysela
a3aaf0582a Takashi Iwai <iwai@ww.uni-erlangen.de>
Frank van de Pol <frank@vande-pol.demon.nl>
Major sequencer changes and cleanups for 1.0.0.
1999-12-15 18:34:12 +00:00
Jaroslav Kysela
7b0898c17d Steve Ratcliffe <steve@parabola.demon.co.uk>
There is a bug in the alsa-lib remove events function.
1999-12-15 08:56:29 +00:00
Jaroslav Kysela
b2b360fc66 Uros Bizjak <uros@kss-loka.si>
Tue, 14 Dec 1999 09:44:18 +0100 (CET)
Endianness fixes...
1999-12-14 17:12:23 +00:00
Jaroslav Kysela
c5b58cf7ca Removed debug output. 1999-12-12 20:25:53 +00:00
Jaroslav Kysela
637a8dd5b0 Uros Bizjak <uros@kss-loka.si>
Sun, 12 Dec 1999 17:30:00 +0100 (CET)
Submitted adpcm.c has messed source - it is OK, but 'indent' wrapped all
long lines. I corrected that, and please find a patch to current CVS which
cleans this mess.
1999-12-12 17:26:13 +00:00
Jaroslav Kysela
b563621421 Abramo Bagnara <abramo@alsa-project.org>
- cleaned oss capture
- fixed conversion plugin insertion
card share:
- fixed bugs in group control
- give to OSS mixer a chance to control as more elements as possible
1999-12-12 17:23:44 +00:00
Jaroslav Kysela
76d4466882 Small fix for the capture direction.. 1999-12-11 21:20:03 +00:00
Jaroslav Kysela
d33c93096a Added snd_pcm_get_format_name() to alsa-lib. 1999-12-11 20:36:13 +00:00
Jaroslav Kysela
a3b8114c84 Uros Bizjak <uros@kss-loka.si>
Sat, 11 Dec 1999 19:16:00 +0100 (CET)
Attached is a diff for new adpcm implementation. Sun's CCITT g721 adpcm
codec is NOT IMA adpcm. IMA codec is very simple and better than g721, so
I replaced g721 with included one. Implementation has been tested against
some test files which I got, and should work according to IMA
specification.
1999-12-11 20:21:55 +00:00
Jaroslav Kysela
00f2df9954 Abramo Bagnara <abramo@alsa-project.org>
Sat, 11 Dec 1999 16:16:34 +0100
- PCM plugin fixes
1999-12-11 20:08:34 +00:00
Jaroslav Kysela
20ebae20a7 Abramo Bagnara <abramo@alsa-project.org>
Sat, 11 Dec 1999 08:45:24 +0100
- changed lowlevel drivers to use pcm_misc.c functions
- fixed some bugs in pcm_plugin_build
- the plugin code is shared between alsa-lib and alsa-driver
1999-12-11 11:46:05 +00:00
Jaroslav Kysela
0f0ce09509 Added 'snd_card_get_name' & 'snd_card_get_longname'. 1999-12-11 10:50:39 +00:00
Jaroslav Kysela
dc490583b2 - recoded the capture order plugin calls
- the rate resampling is much more smoother for "downsampling" (shrinking)
1999-12-10 14:43:25 +00:00
Jaroslav Kysela
d0fc70a1c7 Next plugin fixes... 1999-12-10 00:13:46 +00:00
Jaroslav Kysela
7da5d03952 . 1999-12-10 00:13:46 +00:00
Jaroslav Kysela
15c2b15ba1 Abramo Bagnara <abramo@alsa-project.org>
Thu, 09 Dec 1999 09:56:47 +0100
Rate plugin is now ready for optimizations (I've verified reading asm
generated that loop unrolling is not fully satisfactory, I'll try
another solution later today).
1999-12-09 09:21:56 +00:00
Jaroslav Kysela
4ec59e7283 Added back commented code (latency change) 1999-12-08 21:58:27 +00:00
Jaroslav Kysela
9d8af2f147 NO FILL mode selected... 1999-12-08 19:22:10 +00:00
Jaroslav Kysela
883678c5e3 Abramo Bagnara <abramo@alsa-project.org>
Tue, 07 Dec 1999 08:44:05 +0100
- pcm mixer elements splitted for subchannel handling
- small fix to pcm device element
1999-12-07 10:10:07 +00:00
Jaroslav Kysela
bfa1aaa8c3 Next plugin fixes... 1999-12-06 00:01:27 +00:00
Jaroslav Kysela
6aabe84a5e Abramo Bagnara <abbagnara@racine.ra.it>
Sun, 05 Dec 1999 19:02:01 +0100

Bug fixed:
- duplicated deallocation for mmap'ed area
- missing deallocation in es18xx
- some bugs in volbal conversion

New features:
- virtual mixer for card-share (it seems to work, but I feel that it
  need further testing)

Misc:
- reorganization and extension of rate.c

Jaroslav changes:
- volbal source is mostly reverted back (no card-share mixer polling)
1999-12-06 00:01:26 +00:00
Jaroslav Kysela
863412f63e Added more open modes (O_APPEND).. 1999-12-05 21:12:24 +00:00
Jaroslav Kysela
2f68297615 Small fixes.. 1999-12-05 21:11:59 +00:00
Jaroslav Kysela
a581f75a8c Fixed small bug in 'format change' section 1999-12-04 10:50:47 +00:00
Jaroslav Kysela
78dc424b72 PCM plugin patches made by Abramo Bagnara.
Added new plugin - voice & balance.
1999-12-02 14:31:26 +00:00