Wim Taymans
d776a0917d
alsa: refactor dll code
2020-12-09 12:09:40 +01:00
Wim Taymans
7d88c37e5b
alsa-seq: clear the midi event queue on close to avoid leak
2020-06-02 17:13:53 +02:00
Wim Taymans
a19bab4b16
avoid following NULL pointers
2020-05-20 15:24:25 +02:00
Wim Taymans
8dcd6c4417
improve debug
2020-05-09 19:21:55 +02:00
Wim Taymans
995fafa5be
alsa-seq: remove the queue for system announce port
...
The announce messages are not put in a queue so we don't need
to allocate one (and a timer). Without the timer, we avoid wakeups
and consume less power.
See #225
2020-05-06 11:19:46 +02:00
Wim Taymans
aafd1e7298
improve debug
...
Improve log so that debug level 3 gives a reasonably readable overview
of what is going on.
2020-04-22 12:47:18 +02:00
Wim Taymans
74665de68e
alsa-seq: keep track of last port
...
Keep track of the last port and only iterate until that port.
2020-03-31 17:52:22 +02:00
Wim Taymans
e6675ff2a8
alsa-seq: unsubscribe when paused/suspended
...
When we are suspended or paused, unsubscribe from the ports so that
we don't block the hardware devices.
See #225
2020-03-31 12:14:52 +02:00
Wim Taymans
a528189d26
slave -> follower
...
We use master/follower terminology everywhere.
2020-02-21 10:47:32 +01:00
Philipp Zabel
cb1071bce7
alsa-seq: fix seq_open error path
...
If snd_seq_open fails, do not call snd_seq_close(NULL).
2020-02-07 19:07:14 +01:00
Wim Taymans
50ce87df32
node: we are supposed to produce data when != HAVE_DATA
...
We can produce data whenever the io area status != HAVE_DATA. We
don't need to look for NEED_DATA.
Also recycling buffer happens whenever the status != HAVE_DATA.
2020-02-04 12:59:16 +01:00
Wim Taymans
9657486a81
alsa-seq: update duration when slaved as well
2019-12-18 13:27:29 +01:00
Wim Taymans
3131acea46
alsa-seq: close seq device
...
When we unload, close the seq device again so that the source is
removed from the main loop.
2019-11-28 11:21:41 +01:00
Wim Taymans
d94019ccd2
io: Add current video frame size to position
...
Add some padding, tweak some padding
Remove count in the clock, it's useless
For video frames we will want to use metadata to place
this on individual buffers.
2019-10-29 14:08:40 +01:00
Wim Taymans
9ffec214b8
fix includes
2019-10-25 15:01:02 +02:00
Wim Taymans
fa25900682
alsa-seq: fix for being a slave
2019-10-22 12:24:04 +02:00
Wim Taymans
b37bf7e068
alsa-seq: ask for more data when consumed
2019-10-16 10:44:40 +02:00
Wim Taymans
93a2defbb8
alsa-seq: reset buffers
2019-10-02 18:02:40 +02:00
Wim Taymans
6e0ffb0c47
flags: change flag macros
...
SPA_FLAG_CHECK -> SPA_FLAG_IS_SET
SPA_FLAG_UNSET -> SPA_FLAG_CLEAR
Add SPA_FLAG_UPDATE
2019-10-02 18:00:42 +02:00
Wim Taymans
44840c4a55
alsa-seq: add some comments
2019-09-26 15:17:00 +02:00
Wim Taymans
f539b42a03
alsa: improve midi
...
Add some debug
Ignore ports without buffers.
2019-09-26 11:57:25 +02:00
Wim Taymans
8d472befaa
alsa-seq: Improve connection setup
2019-09-25 10:48:25 +02:00
Wim Taymans
f0b3ed5257
alsa-seq: improve timings
...
Track the position of the clock instead of our own timer.
Implement stop.
2019-09-25 10:14:25 +02:00
Wim Taymans
387b281f5c
alsa-seq: use dll to track queue timer
...
Also increase timer resolution to get less jitter.
2019-09-24 17:23:39 +02:00
Wim Taymans
818fb9e904
alsa: add midi bridge
...
Add a node that exposes all midi input and output ports and converts to
and from PipeWire control streams.
2019-09-19 16:57:00 +02:00