OpenBSD CVS

CVS log for src/lib/libsndio/amsg.h


[BACK] Up to [local] / src / lib / libsndio

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.16 / (download) - annotate - [select for diffs], Fri May 24 15:16:09 2024 UTC (2 weeks, 3 days ago) by ratchov
Branch: MAIN
CVS Tags: HEAD
Changes since 1.15: +12 -3 lines
Diff to previous 1.15 (colored)

sndiod: Propagate the controls' display string to clients.

with help from edd@ and armani@

Revision 1.15 / (download) - annotate - [select for diffs], Fri Apr 29 08:30:48 2022 UTC (2 years, 1 month ago) by ratchov
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, OPENBSD_7_4_BASE, OPENBSD_7_4, OPENBSD_7_3_BASE, OPENBSD_7_3, OPENBSD_7_2_BASE, OPENBSD_7_2
Changes since 1.14: +4 -1 lines
Diff to previous 1.14 (colored)

Add sio_flush(3) function to stop playback immediately

The new sio_flush(3) functions works the same way as sio_stop(3),
except that it doesn't wait for play buffer to be drained. Instead,
it discards its contents and returns immediately.

Revision 1.14 / (download) - annotate - [select for diffs], Mon Nov 1 14:43:24 2021 UTC (2 years, 7 months ago) by ratchov
Branch: MAIN
CVS Tags: OPENBSD_7_1_BASE, OPENBSD_7_1
Changes since 1.13: +2 -1 lines
Diff to previous 1.13 (colored)

Stop binding audio devices exposed by sndiod to physical devices

This a shift towards a new model: clients connect to logical devices
(created with -s option) then the server routes data to/from the
underlying physical device (registered with -f option). The binding
may be changed at run-time with the server.device control exposed by
sndioctl(1).

As audio devices exposed by sndiod(8) are not bound to fixed physical
devices anymore, the physical audio device number component of
sndio(7) descriptors was removed.

fixes, help from and ok denis, edd

Revision 1.13 / (download) - annotate - [select for diffs], Wed Feb 26 13:53:58 2020 UTC (4 years, 3 months ago) by ratchov
Branch: MAIN
CVS Tags: OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9, OPENBSD_6_8_BASE, OPENBSD_6_8, OPENBSD_6_7_BASE, OPENBSD_6_7
Changes since 1.12: +40 -1 lines
Diff to previous 1.12 (colored)

Add API to control audio device parameters exposed by sndiod.

The API exposes controls of modern audio hardware and sndiod software
volume knobs in a uniform way.  Hardware knobs are exposed through
sndiod.  Multiple programs may use the controls at the same time
without the need to continuously scan the controls.

For now sndiod exposes only its own controls and the master output and
input volumes of the underlying hardware (if any), i.e. those
typically exposed by acpi volume keys.

ok deraadt

Revision 1.12 / (download) - annotate - [select for diffs], Fri Jul 12 06:30:55 2019 UTC (4 years, 11 months ago) by ratchov
Branch: MAIN
CVS Tags: OPENBSD_6_6_BASE, OPENBSD_6_6
Changes since 1.11: +2 -2 lines
Diff to previous 1.11 (colored)

Add affinity between the program and its mixer control.

Currently, if there are two instances of the same program, sndiod will
allocate one volume control to each. If both programs disconnect and
reconnect, the information of which control is assigned to which
program is lost. This makes difficult to run two instances of a player
and crossfade between each other with a MIDI controller.

To address this, the program chooses a 32-bit "id" (for now the
process pid) and sends it to the server. The server records the id in
the client's slot structure.  When the server accepts a new
connection, it uses the id to identify the slot the client used during
the previous connection; if it was not recycled yet, it's assigned to
the program.

Revision 1.11 / (download) - annotate - [select for diffs], Sat Jul 28 09:07:48 2018 UTC (5 years, 10 months ago) by ratchov
Branch: MAIN
CVS Tags: OPENBSD_6_5_BASE, OPENBSD_6_5, OPENBSD_6_4_BASE, OPENBSD_6_4
Changes since 1.10: +4 -4 lines
Diff to previous 1.10 (colored)

Rename the sndiod unix domain socket to /tmp/sndio/sockN to avoid
wondering what are these "aucat" files in /tmp.

"make sense" deraadt

Revision 1.10 / (download) - annotate - [select for diffs], Sat Jan 9 08:27:24 2016 UTC (8 years, 5 months ago) by ratchov
Branch: MAIN
CVS Tags: OPENBSD_6_3_BASE, OPENBSD_6_3, OPENBSD_6_2_BASE, OPENBSD_6_2, OPENBSD_6_1_BASE, OPENBSD_6_1, OPENBSD_6_0_BASE, OPENBSD_6_0, OPENBSD_5_9_BASE, OPENBSD_5_9
Changes since 1.9: +1 -1 lines
Diff to previous 1.9 (colored)

Make code fit in 80 columns, remove trailing spaces & tabs.

Revision 1.9 / (download) - annotate - [select for diffs], Fri Oct 2 09:36:24 2015 UTC (8 years, 8 months ago) by ratchov
Branch: MAIN
Changes since 1.8: +8 -1 lines
Diff to previous 1.8 (colored)

As the socket path is known, use its size rather that PATH_MAX.

Revision 1.8 / (download) - annotate - [select for diffs], Fri Oct 2 09:21:46 2015 UTC (8 years, 8 months ago) by ratchov
Branch: MAIN
Changes since 1.7: +13 -3 lines
Diff to previous 1.7 (colored)

use macros instead of hard-coded strings for unix sockets paths

Revision 1.7 / (download) - annotate - [select for diffs], Fri Oct 2 09:04:36 2015 UTC (8 years, 8 months ago) by ratchov
Branch: MAIN
Changes since 1.6: +1 -2 lines
Diff to previous 1.6 (colored)

remove unused DEFAULT_OPT macro

Revision 1.6 / (download) - annotate - [select for diffs], Fri Nov 23 06:40:26 2012 UTC (11 years, 6 months ago) by ratchov
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE, OPENBSD_5_8, OPENBSD_5_7_BASE, OPENBSD_5_7, OPENBSD_5_6_BASE, OPENBSD_5_6, OPENBSD_5_5_BASE, OPENBSD_5_5, OPENBSD_5_4_BASE, OPENBSD_5_4, OPENBSD_5_3_BASE, OPENBSD_5_3
Changes since 1.5: +2 -2 lines
Diff to previous 1.5 (colored)

Make the client wait for the first flow control message rather than
assuming it can send a full initial data buffer. This requires protocol
version bump (but no library version bump).

Revision 1.5 / (download) - annotate - [select for diffs], Fri Nov 2 10:24:58 2012 UTC (11 years, 7 months ago) by ratchov
Branch: MAIN
Changes since 1.4: +3 -3 lines
Diff to previous 1.4 (colored)

Use dedicated messages for flow control instead of abusing clock tick
messages and enable flow control for MIDI. Since this requires protocol
version bump, both sndiod and libsndio must be kept up to date to work
together.

Revision 1.4 / (download) - annotate - [select for diffs], Tue Nov 15 08:05:22 2011 UTC (12 years, 6 months ago) by ratchov
Branch: MAIN
CVS Tags: OPENBSD_5_2_BASE, OPENBSD_5_2, OPENBSD_5_1_BASE, OPENBSD_5_1
Changes since 1.3: +5 -3 lines
Diff to previous 1.3 (colored)

Add a "device number" component in sndio(7) device names, allowing a
single aucat instance to handle all audio and MIDI services. Since
this partially breaks compatibility, this is a opportunitiy to fix few
other design mistakes (eg ':' being used by inet6, type name vs api
name confusion, etc..). This leads to the following names:

        type[@hostname][,unit]/devnum[.option]

The device number is the minor device number for direct hardware
access (ie the 'N' in /dev/audioN). For aucat, this is the occurence
number of the -f (or -M) option.

There's a compatibility hook to keep old names working if only one
aucat server is running.

Revision 1.3 / (download) - annotate - [select for diffs], Mon Oct 17 21:09:11 2011 UTC (12 years, 7 months ago) by ratchov
Branch: MAIN
Changes since 1.2: +1 -3 lines
Diff to previous 1.2 (colored)

Remove midicat since aucat can now be used instead of midicat
with almost the same syntax (roughly an extra -M option).
Thru boxes are created with aucat, and corresponding MIDI port
names have the "aucat" prefix instead of "midithru". The old
device name will still work some time for backward compatibility.

ok deraadt

Revision 1.2 / (download) - annotate - [select for diffs], Thu Apr 28 06:19:57 2011 UTC (13 years, 1 month ago) by ratchov
Branch: MAIN
CVS Tags: OPENBSD_5_0_BASE, OPENBSD_5_0
Changes since 1.1: +3 -1 lines
Diff to previous 1.1 (colored)

Implement a new authentication method allowing aucat and midicat to
work over TCP, for instance, to expose the sound card of one machine
with other machines of the network.

The first client generates a 128-bit random number (aka the
session cookie), saves it in $HOME/.aucat_cookie and sends it to the
server. Successive clients load the cookie from $HOME/.aucat_cookie
and send it to the server but the server accepts only clients whose
cookie matches the session cookie. When all clients are gone, the
session is over, and another cookie could start a new session, and so
on.

TCP is enabled on the server with the new -L option, and on the client
side hostnames are specified with a new optional component in the
device name.

hints from damien, dlg and deraadt, tweaks from jmc

Revision 1.1 / (download) - annotate - [select for diffs], Wed Apr 27 21:20:36 2011 UTC (13 years, 1 month ago) by ratchov
Branch: MAIN

move amsg.h containing protocol defs from aucat side to libsndio side.

requested by deraadt

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.