Jaroslav Kysela
d3c5e9e009
rawmidi: rename enum snd_rawmidi_framing to snd_rawmidi_read_mode
...
We hide the internal data transfers using the data frames. Rename
the snd_rawmidi_framing enum to snd_rawmidi_read_mode to make
API more straight and understandable.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2021-10-28 08:40:20 +02:00
Jaroslav Kysela
5a5c2953ea
rawmidi: define more abstract API for the timestamp reads
...
The frame structure is a bit internal thing for the kernel
data transfer implementation. Introduce snd_rawmidi_tread()
function which is straight for the application usage and hides
the framing data transfers (kernel space API).
The current code implements the read cache and does the merging
of the frame reads with the similar timestamps (opposite
to the kernel data split for big chunks).
If the application wants to use super-duper-lighting-fast reads,
the snd_rawmidi_read() may be used, but the structure must be
defined on it's own, because this mechanism is not preferred
and unsupported.
BugLink: https://github.com/alsa-project/alsa-lib/issues/172
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2021-10-28 08:40:20 +02:00
Takashi Iwai
754c696aef
rawmidi: Use the standard types for snd_rawmidi_framing_tstamp_t definition
...
Using the kernel-specific types like __u8 breaks the compilation of
applications. Also we need the packed attribute.
Although we may want to move to an opaque type later, let's put the
workaround at first.
Fixes: https://github.com/alsa-project/alsa-lib/issues/172
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2021-08-24 10:40:14 +02:00
David Henningsson
95eb312fad
rawmidi: Add rawmidi framing API
...
Optionally, incoming rawmidi bytes can be put inside a frame of type
snd_rawmidi_framing_tstamp_t.
The main current benefit is that can enable in-kernel timestamping of
incoming bytes, and that timestamp is likely to be more precise than
what userspace can offer.
Tstamp type framing requires a kernel >= 5.14 and a buffer size that
is a multiple of sizeof(snd_rawmidi_framing_tstamp_t). It is only
available on input streams.
Signed-off-by: David Henningsson <coding@diwic.se>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2021-08-20 08:46:26 +02:00
Jaroslav Kysela
5b9041bced
Change FSF address (Franklin Street)
...
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2017-11-14 14:29:26 +01:00
Takashi Iwai
68e5771a6f
Remove assert from header files
...
Putting assert in the public macros isn't good idea at all.
Let's get rid of them.
Also, clean up snd*_alloca() functions to use a helper macro
instead of copy and paste.
2007-10-25 15:36:03 +02:00
Jaroslav Kysela
d25e281230
Changed Jaroslav Kysela's e-mail from perex@suse.cz to perex@perex.cz
2007-10-15 10:24:55 +02:00
Clemens Ladisch
04c2de32c1
fix some file paths in comments
...
doxygen complains if the file name specified with \file does
not match the real file name, so fix it
2005-01-17 17:34:31 +00:00
Takashi Iwai
bffffeef45
- missing changes from virt to virtual rawmidi.
2003-08-06 14:46:33 +00:00
Takashi Iwai
f9a954fd6e
added SND_RAWMIDI_TYPE_VIRTUAL.
2003-07-29 17:15:58 +00:00
Jaroslav Kysela
cf9e518d51
Timestamp update (struct timeval -> struct timespec).
2003-02-28 17:23:28 +00:00
Jaroslav Kysela
2ca5ace9cb
More documentation changes (rawmidi, timer)
2002-02-11 18:11:16 +00:00
Takashi Iwai
6ce9436b13
removed comma from last element of enums.
2002-02-05 11:36:20 +00:00
Jaroslav Kysela
d57853a90a
Added more informative comments to open mode flags
2002-01-28 18:11:45 +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
ddb7209e9a
Added snd_*_poll_descriptors_revents functions.
2001-11-30 17:36:45 +00:00
Jaroslav Kysela
c33c5760ab
Added snd_*_open_lconf functions.
...
Some minor changes in config interface documentation.
2001-11-24 17:47:01 +00:00
Jaroslav Kysela
87b5b249a5
pcm.h - major documentation updates and reordering
...
Cleanup for __cplusplus defines.
2001-11-14 11:40:46 +00:00
Jaroslav Kysela
58345ae4f4
Separated asoundlib.h to small files.
2001-09-13 11:38:32 +00:00
Jaroslav Kysela
79531a4eb0
The main header file is not dependant on asound.h from driver.
2001-08-20 13:15:30 +00:00
Jaroslav Kysela
b45c08611c
Added symbol versioning for dlsym-callbacks.
...
Removed snd_config_refer_load from confmisc.c and pcm.c.
2001-08-15 12:12:16 +00:00
Jaroslav Kysela
3590f6ecd3
More documentation enhancements / removal of non-existent functions.
2001-07-11 15:48:27 +00:00
Jaroslav Kysela
7025482a40
Added SND_RAWMIDI_SYNC flag.
2001-04-24 19:27:45 +00:00
Jaroslav Kysela
f65b035a45
Improved in-source documentation (interfaces are divided into modules).
2001-04-24 13:02:58 +00:00
Abramo Bagnara
5b50ec848a
Lot of cleanings with the help of gcc3
2001-03-29 17:50:28 +00:00
Abramo Bagnara
78af661d60
More documentation
2001-03-29 09:44:29 +00:00
Jaroslav Kysela
e8a01ea4ed
Merged rawmidi M4 files into the main ones.
...
The first attempt to create documentation for the RawMidi API.
2001-03-20 16:46:45 +00:00
Abramo Bagnara
191d03501e
Changed descriptors_count
2001-02-18 18:32:30 +00:00
Jaroslav Kysela
cc956312b3
Changed behaviour of poll_descriptors function (returns the filled count of fds).
...
Added poll_descriptors_count functions.
Added snd_mixer_elem_count function.
2001-02-14 12:15:03 +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
66f13f6115
Splitted rawmidi streams. Removed stream constraint on config files
2001-02-07 13:30:40 +00:00
Abramo Bagnara
8f0cb26fdf
Control API encapsulation. Better names for kernel API. Simpler PCM hw_params API. Added missing const.
2001-02-06 23:48:10 +00:00
Abramo Bagnara
5bf23ae9a1
Encapsulated hwdep. Converted all enums to type safety
2001-02-05 15:44:42 +00:00
Abramo Bagnara
4c9fd35a60
Added missing rawmidi functions. Cleaned PCM use of masks
2001-02-04 18:57:05 +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
8712ffc6a5
Added snd_ prefix to mask and interval. Divided header.h wrappers
2001-01-30 16:51:26 +00:00
Jaroslav Kysela
9acdef38c9
Added snd_*_card() functions.
2000-12-22 14:03:01 +00:00
Jaroslav Kysela
41bb7068f2
Merged pcmfinal branch.
2000-11-20 20:10:46 +00:00
Jaroslav Kysela
cc214bdfea
Big rawmidi update - added subdevices support.
2000-11-03 10:11:50 +00:00
Jaroslav Kysela
0e561770c6
Added functions:
...
snd_ctl_rawmidi_prefer_subdevice
snd_rawmidi_open_subdevice
Fixed functions:
snd_pcm_hw_open - fixed prefer subdevice code
2000-10-30 12:15:18 +00:00
Abramo Bagnara
2ea3fd4bb3
Completed renaming drain->stop, flush->drain (PCM). Done renaming drain->drop, flush->drain (rawmidi and seq). Removed wrong module usage count inc/dec from mmap
2000-09-29 20:49:18 +00:00
Jaroslav Kysela
6962a9d6ce
Merged pcmplug branch.
2000-09-24 09:57:26 +00:00
Abramo Bagnara
1a7f88d10e
Better names for ALSA API. Added min_fragments, max_fragments.
2000-05-27 16:52:17 +00:00
Jaroslav Kysela
986c1500d2
Another API cleanups.
...
Added setup functions for rawmidi and timer interfaces.
2000-04-18 15:20:12 +00:00
Abramo Bagnara
d2911f9f34
uniformed alsa-lib interfaces
2000-01-09 22:44:52 +00:00
Jaroslav Kysela
863412f63e
Added more open modes (O_APPEND)..
1999-12-05 21:12:24 +00:00
Frank van de Pol
19811bb9b4
Changed data type of alsa-lib handles from 'void *' to the specific type for
...
the handle in use. This should be more type-safe as the compiler will perform
checking on type now.
1999-06-02 00:40:30 +00:00
Jaroslav Kysela
6e72ca3977
Recoded the universal switch interface...
1999-05-04 19:21:28 +00:00
Jaroslav Kysela
3f541735e3
New universal switch v2.0 interface.
1999-03-27 19:44:51 +00:00