Wim Taymans
a37694fde5
alsa: handle invalid timestamp from broken drivers
2018-08-14 16:07:27 +02:00
Wim Taymans
c710b6f6a4
debug: add specific format debug
2018-08-14 15:30:48 +02:00
Wim Taymans
a6ad8f747f
remove spalib
2018-08-14 15:29:25 +02:00
Wim Taymans
f532fd8681
don't link with spalib when we don't have to
2018-08-14 14:54:31 +02:00
Wim Taymans
3b1c40f17f
pod: move compare and filter functions out of the library
2018-08-14 14:52:32 +02:00
Wim Taymans
60d4473e7b
make spa-lib versioned
...
Fixes #60
2018-08-14 14:41:50 +02:00
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
f55cb422cb
hook: add priv fields for future expansion
2018-07-20 10:34:27 +02:00
Wim Taymans
b67fb6fa5b
io: add latency io area
2018-07-19 15:17:21 +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
e5807cd467
small cleanups
2018-07-13 11:43:06 +02:00
Wim Taymans
5a3eee9cac
command: remove clock-update
2018-07-12 13:22:50 +02:00
Wim Taymans
f49ab32874
meta: add video damage region metadata
...
Add damage region meta
Implement damage region in video-src and export-sink
2018-07-09 12:07:30 +02:00
Wim Taymans
c98fbfe0a9
meta: make safer find_meta_data function
2018-07-09 12:04:23 +02:00
Wim Taymans
33427b4cd3
small cleanups
2018-07-08 15:23:56 +02:00
Wim Taymans
8f97e0dd31
audioconvert: add volume control
2018-07-03 21:34:22 +02:00
Wim Taymans
e5c2896fca
pod: add padding to float pod
2018-07-03 21:28:48 +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
b53f96eae9
alloc: fix buffer data mem
...
We also need to skip over the metadata and chunk memory
2018-06-15 11:13:02 +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
6f5a2701f3
utils: add some more helpers
2018-06-01 11:08:25 +02:00
Wim Taymans
b6500bcb80
audioconvert: fix max number of links
2018-05-24 18:09:54 +02:00
Wim Taymans
5a1bd77fb5
buffer: add dummy field for better alignment
2018-05-24 16:15:40 +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
ef9fcd1093
node: keep better track of driver node
...
When a session disappears, try to move nodes to another session.
2018-05-17 17:40:08 +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
65e00631da
hook: make safer
...
Also protect against removal of the next hook by using a cursor.
2018-05-17 17:21:30 +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