Commit graph

261 commits

Author SHA1 Message Date
Wim Taymans
b4fdcbd322 Debug: remove logger
Make a default logger and mapper in a .h file to be used by examples
Remove logger and mapper from libs
Make method to set the default mapper for the debug methods
2017-06-06 13:30:34 +02:00
Wim Taymans
4433203d5f Small fixes
Init ptr in mem
Use a default memory size when no params
Improve debug
Always push after we have a buffer from pull
2017-06-06 09:10:42 +02:00
Wim Taymans
1feec309ec logger: add loadable logger 2017-06-05 15:59:11 +02:00
Wim Taymans
ebaaedef75 Fix change mask names 2017-05-30 20:33:32 +02:00
Wim Taymans
783bbe6c64 Small cleanups 2017-05-30 20:01:37 +02:00
Wim Taymans
f6ca32cdcf Improve debug
Add proxy destroy function and use it to free proxy user_data.
Destroy sources from the poll thread.
Fix format init
2017-05-29 10:32:07 +02:00
Wim Taymans
cf94117244 improve props test 2017-05-26 20:52:04 +02:00
Wim Taymans
ded1ea69a1 indent 2017-05-26 18:19:51 +02:00
Wim Taymans
08522a162e indent 2017-05-26 17:25:58 +02:00
Wim Taymans
6b2d77e64d small cleanups 2017-05-26 15:55:23 +02:00
Wim Taymans
0f6b3a7cab indent 2017-05-26 09:09:31 +02:00
Wim Taymans
5b037661d9 indent 2017-05-26 08:05:01 +02:00
Wim Taymans
d1a06ae247 indent -kr -i8 -l100 2017-05-25 16:23:13 +02:00
Wim Taymans
11f23a3ffa spa: don't use typedef for struct and enum 2017-05-25 13:28:15 +02:00
Wim Taymans
83964cec87 pinos -> pipewire 2017-05-23 19:15:33 +02:00
Wim Taymans
f12a5ffc80 Remove redundant fields from PortInfo 2017-05-22 18:02:31 +02:00
Wim Taymans
d1a6d6e03f param: add more generic port params
Remove port properties and replace them with port params. Move the
params from the PortInfo to enum_params.
Use the Param ranges to specify possible sizes etc.
2017-05-22 13:06:18 +02:00
Wim Taymans
12effccb06 Add fakesrc ! fakesink test
Add fakesrc and fakesink and some performance test
Small cleanups
2017-05-19 12:48:51 +02:00
Wim Taymans
6691eb7845 graph: add graph datastructure and scheduler
Improve event and command init so that it can be used more easily
as compound literals.
Improve volume
Make it possible to use graph scheduler in test-mixer
2017-05-18 17:16:48 +02:00
Wim Taymans
53dd63eb3a type: improve type check 2017-05-17 12:47:33 +02:00
Jonas Ådahl
0855ca0050 spa: Include type-map.h where necesarry
These include files need type declarations in type-map.h. Don't require
includers to know that; just include dependencies directly.
2017-05-17 11:56:38 +02:00
Linus Svensson
e27ec1a203 Only use string literals as format
Fixes -Wformat-security error.
2017-05-16 09:31:50 +02:00
Linus Svensson
a5c9ba1e5b Install all header files 2017-05-16 09:24:21 +02:00
Linus Svensson
cba22d0e39 spa/plugins/videotestsrc: Draw correctly for all resolutions
Use an incremented variable to support all resolutions. If the width of
the pludge part of the test image was not dividable by three, a
rounding error made the resulting pattern containing noise.
2017-05-16 09:14:36 +02:00
Linus Svensson
04ffc679fc spa: Include version in libspa-lib.so 2017-05-16 09:12:53 +02:00
Wim Taymans
b80fc0b08e defs: remove invalid direction
Anything not in the enum is invalid
2017-05-16 09:06:37 +02:00
Wim Taymans
05adcb31e5 v4l2: no range for fixed framerates
Print fixed values correctly
2017-05-12 13:00:33 +02:00
Wim Taymans
6cbf398ad4 node: the callbacks determine async operation 2017-05-11 16:11:08 +02:00
Jonas Ådahl
d26eb2da23 meson.build: Add missing header files 2017-05-11 11:42:57 +02:00
Wim Taymans
01246f399e test: pass device in args 2017-05-11 11:41:39 +02:00
Wim Taymans
3b33e3d362 node: improve callbacks
Make separate callbacks for events and RT notifications.
2017-05-11 10:29:20 +02:00
Wim Taymans
3d54d31fac tests: fix for port status changes
We now need to tell the node we consumed a buffer by setting the status
back to NEED_BUFFER.
2017-04-28 17:37:16 +02:00
Wim Taymans
fe68ca1be3 audiomixer: small improvements
Improve the audiomixer state handling
Improve PortIO status handling.
2017-04-28 17:22:23 +02:00
Wim Taymans
308acaf0ad alsa: fix offset 2017-04-28 12:12:14 +02:00
Wim Taymans
cc8a5da9c7 Rename buffer status to make it more symetrical
Only try to pull once in a timeout.
We can reuse the last returned state as our internal state in
audiomixer.
2017-04-28 11:49:13 +02:00
Wim Taymans
430b749d53 fix trace logging 2017-04-27 18:56:59 +02:00
Wim Taymans
214a0e27d8 Add support for trace logging in lockfree ringbuffer
Fix some crashes when the connection is dead.
Small cleanups in the audio mixer
Only propose alloc_buffer when we are using export_buf in v4l2
2017-04-27 17:17:47 +02:00
Wim Taymans
b51d3e4862 buffer: make data and meta types dynamic
Use dynamic types for the data and meta types.
Move the meta into a separate header.
Remove port state, we can keep track of that ourselves.
Add size to MetaDataEnable params
2017-04-26 18:54:18 +02:00
Wim Taymans
edb21a0ff8 ringbuffer: small optimization 2017-04-26 09:36:01 +02:00
Wim Taymans
63d060a63e ringbuffer: add stress test 2017-04-25 19:22:06 +02:00
Wim Taymans
8804980c8f work on state changes
Make things work better after errors
2017-04-25 13:00:09 +02:00
Wim Taymans
baada0a330 ringbuffer: use gcc atomic operations
Remove barrier, use GCC atomic operations for ringbuffer
2017-04-24 13:18:57 +02:00
Wim Taymans
7d1d3bd666 stream: use 2 eventfds for client <-> server signaling 2017-04-21 10:24:42 +02:00
Wim Taymans
f0aafb5b51 alsa: work on ringbuffer data transport
Add ringbuffer test
2017-04-20 19:25:14 +02:00
Wim Taymans
0b508db9fc ringbuffer: simplify the API
Use absolute indexes that we let wrap around. We can then easily detect
how much we under of overflowed by using serial number arithmetic.
Remove the Areas, we can trivially compute this ourselves, move the
logic in read/write_data.
2017-04-20 11:25:24 +02:00
Wim Taymans
90ea120d3c audiomixer: don't mix when no input
Give the app a chance to provide some input when there is nothing to mix
anymore in process_output.
alsa: fix buffer size
2017-04-19 13:06:03 +02:00
Wim Taymans
e864836300 fix formats 2017-04-19 12:33:42 +02:00
Wim Taymans
db16de85bb examples: add video upload example
Add an example of a node that makes a video available.
Improve buffer reuse in stream.
Add more video formats
2017-04-18 18:05:45 +02:00
Wim Taymans
be528ba7c2 flatpak: add flatpak module
Pass LoopUtils to callbacks to make it easier to reschedule timeouts.
2017-04-17 16:32:25 +02:00
Wim Taymans
d9bb116d27 node: schedule upstream first
In pull mode, schedule all upstream nodes first, if any of them
produce output, push it into the current node.
Underrun streams without input on audiomixer, avoids glitch when
starting a new stream.
2017-04-12 11:24:11 +02:00