Wim Taymans
41c63149f9
audioconvert: remove unused fields
2018-08-03 17:39:28 +02:00
Wim Taymans
a63523650d
hooks: enforce version on hook emission
...
Pass the minimum required version to the hook emission and only call
events when the handler is recent enough.
Add some macros to make event emission easier to read.
2018-08-01 21:41:25 +02:00
Wim Taymans
a72e3cefd7
fmt: fix 24 bits audio
2018-08-01 18:15:17 +02:00
Wim Taymans
ea66ac4075
alsa: update write offset after each write
2018-07-31 17:40:32 +02:00
Wim Taymans
ca898a00db
work on separating port mixers
...
Make it possible to assign an arbitary node as the port mixer.
Also remove dynamically added ports.
Improve negotiation and allocation on the mixer ports
Add some more SSE optimisations
Move float mixer from the audio dsp to the port
Remove pw_node_get_free_port() and do things more explicitly.
Handle mixer ports in client-node
2018-07-31 12:23:35 +02:00
Wim Taymans
0d148654c0
stream: add more timing info
...
Keep track of queued data in the stream
Pass delay field around to make it possible to know about the raw
software read/write pointer and the hardware one.
Start stream position at 0
2018-07-19 13:30:27 +02:00
Wim Taymans
d3c203b744
spa: use clock info
...
Use the port clock io area to get timing info and use this as
the time in the graph when we wake up.
2018-07-17 17:37:55 +02:00
Wim Taymans
fba00fb791
clock: remove clock interface
...
Remove the clock interface, we need to get timing information with an io
area to get the required precision and performance.
2018-07-17 09:50:51 +02:00
Wim Taymans
c98fbfe0a9
meta: make safer find_meta_data function
2018-07-09 12:04:23 +02:00
Wim Taymans
8f97e0dd31
audioconvert: add volume control
2018-07-03 21:34:22 +02:00
Wim Taymans
2fe392dd30
alsa: limit silence to threshold and available size
2018-06-27 11:11:00 +02:00
Wim Taymans
a13b5cfdc3
increase number of buffers
2018-06-26 16:54:18 +02:00
Wim Taymans
1a786e04f9
resample: improve output buffer size
...
If we don't have an output size configued, produce output as soon as we
can.
2018-06-25 17:09:45 +02:00
Wim Taymans
9773e2245f
fmtconvert: implement merge and convert
2018-06-25 17:09:11 +02:00
Wim Taymans
e9885a8ebb
fmt-ops: fix f32 to u8 conversion
2018-06-25 17:08:34 +02:00
Wim Taymans
8f41031933
alsa: clamp threshold to configured max
2018-06-25 17:07:59 +02:00
Wim Taymans
75a18d5c7f
audioconvert: fix s24 samples
...
Various cleanups
2018-06-25 14:34:36 +02:00
Wim Taymans
725e41d715
audioconvert: improve scheduling
2018-06-22 17:27:57 +02:00
Wim Taymans
4afda5405f
alsa: fill silence when nothing written
2018-06-22 17:23:52 +02:00
Wim Taymans
91a10d7c9e
v4l2: Check device node
...
Check the device node on init.
Only remove the source once
2018-06-18 11:33:06 +02:00
Wim Taymans
18f0194008
audioconvert: apply ouput range to resampler as well
2018-06-15 12:45:04 +02:00
Wim Taymans
4ac21aea53
stream: remove conversion
...
Improve audioconvert to also split the output.
Remove the format conversion from the stream and move into the
server client-stream.
2018-06-15 11:31:42 +02:00
Wim Taymans
0c359a6819
spa: make a #define for default rate and channels
2018-06-15 11:26:03 +02:00
Wim Taymans
1b37db8add
resample: fix resample length
...
Don't use output sizes as input size for the next channel.
2018-06-08 12:27:19 +02:00
Wim Taymans
1bfb1d9228
loop: return number of dispatched fds and update docs
2018-06-01 11:16:53 +02:00
Wim Taymans
b6500bcb80
audioconvert: fix max number of links
2018-05-24 18:09:54 +02:00
Wim Taymans
2e0e68e46e
prefer 48KHz and 32 bit samples when we can
2018-05-24 16:14:53 +02:00
Wim Taymans
2d34a405e8
audioconvert: improve negotiation
2018-05-24 16:09:31 +02:00
Wim Taymans
69d4144932
audioconvert: handle cleanup and renegotiation
2018-05-17 17:27:14 +02:00
Wim Taymans
c61d579d99
small cleanups
2018-05-17 17:26:09 +02:00
Wim Taymans
e02b3181da
audio-session - >media-session
...
Also implement video in the media session
Small cleanups
Improve exclusive mode
2018-05-14 13:07:01 +02:00
Wim Taymans
bd3b7e8ee4
alsa: cleanups
...
Use a periodic timer to catch underruns
Small cleanups
2018-05-11 09:56:46 +02:00
Wim Taymans
97473c8e8b
audioconvert: fix scheduling
2018-05-10 11:28:59 +02:00
Wim Taymans
22b8a6f01a
logger: make info lines green
2018-05-10 11:28:25 +02:00
Wim Taymans
6d79ce2589
small cleanups
2018-05-10 11:28:02 +02:00
Wim Taymans
1ede97577b
small cleanups
2018-05-08 12:23:23 +02:00
Wim Taymans
7bb0e4da85
small cleanups
2018-05-08 10:42:17 +02:00
Wim Taymans
b8a37381da
alsa: adjust latency based on buffer size
2018-04-30 09:27:20 +02:00
Wim Taymans
c2cd56d903
loop: inline frequently used function
2018-04-27 17:29:39 +02:00
Wim Taymans
3e68dee7ff
alsa-source: don't use htimestamp, it's not accurate
2018-04-27 17:29:11 +02:00
Wim Taymans
db77de9258
fmtconvert: only produce output when need_buffer
2018-04-26 17:23:47 +02:00
Wim Taymans
60d74d442f
alsa: fix capture
2018-04-26 17:22:17 +02:00
Wim Taymans
8961e6d1c7
logger: add colors
...
Add colors and option to enable them
2018-04-26 09:47:24 +02:00
Wim Taymans
e74c41bdf6
splitter: fix bpf
...
Number of channels does not influence bytes-per-frame for
non-interleaved audio.
Add layout to get_format
2018-04-26 09:29:10 +02:00
Wim Taymans
f9bda23e56
a2dp-sink: remove sources only once
2018-04-24 17:21:23 +02:00
Wim Taymans
08484b92f5
bluez5: handle remove of devices
...
Fix a2dp-sink for new scheduling
2018-04-24 17:02:19 +02:00
Wim Taymans
4c9c939527
alsa-monitor: keep track of cards and devices
...
Keep better track of cards and devices so that we can remove them
without having to open (the removed device).
2018-04-24 17:01:04 +02:00
Wim Taymans
0eb73f0f06
loop: add back the destroy loop
...
We need to keep the sources around until all sources are dispatched. If
not: source A and B are active after poll, A is dispatched first and
removes B, when B is then dispatched, the memory is gone. We don't
free the source but simply mark the fd invalid and move it do a
destroy list. After all sources are dispatched we destroy.
This is safe because removing a source is either done from the poll
context (with invoke) or when holding the right locks.
2018-04-20 16:28:47 +02:00
Wim Taymans
d165b3b842
pipewire: improve memory cleanup
...
Add method to unload a spa interface.
Various other memory cleanups
2018-04-20 16:27:19 +02:00
Wim Taymans
ebd13a2a74
loop: blocking wait
...
Release the locks before waiting.
2018-04-19 22:01:18 +02:00