Wim Taymans
e9c72a6102
output: send output properties in start
...
Also send the output properties in start, along with the format.
2015-08-21 11:45:38 +02:00
Wim Taymans
104632ea7a
m4: add m4 macros
2015-08-20 11:01:26 +02:00
Wim Taymans
6611061683
Improve state management
...
Split setup of pipeline and state change to inspect the pipeline formats
and properties. Pass the device monitor caps to the gstreamer source so
that we don't have to query that again.
Work on adding time provider to the sender pipeline. Send the port and
address to the client in the source-output object properties.
Improve properties API and add some more docs.
2015-08-13 11:37:10 +02:00
Wim Taymans
1c2fbac587
deviceprovider: change debug message
2015-08-12 11:49:54 +02:00
Wim Taymans
b0e4cb4288
Add object paths to introspection
...
Clean up headers, avoid exposing DBus api.
Remove notify should not have property changes
2015-08-12 11:34:29 +02:00
Wim Taymans
e61cbb3931
monitor: move subscribe test to monitor tool
2015-08-12 09:54:10 +02:00
Wim Taymans
7cf87d902e
source: add GError to get_formats
...
Add GError to get_formats to get more error information.
Update the source possible formats when source-output is active
2015-08-11 16:09:05 +02:00
Wim Taymans
0378dcd4b7
deviceprovider: update to new method name
2015-08-08 15:22:10 +02:00
Wim Taymans
4edda643e8
introspect: avoid NULL pointers
2015-08-05 12:04:09 +02:00
Wim Taymans
b055748b1c
introspect: add change_mask to introspect
...
Add a bitmask field to mark what fields have changed since the last
introspection call. We can then remove the properties from the subscribe
call.
2015-08-05 11:57:02 +02:00
Wim Taymans
8361f74646
introspect: improve instrospection
...
Pass changed properties around so that we can print them
2015-08-04 17:37:25 +02:00
Wim Taymans
51f18b540a
introspect: add state and format for output source
...
Add state and negotiated format to output source properties.
2015-08-04 15:59:36 +02:00
Wim Taymans
95f479a760
deviceprovider: update for new API
2015-08-04 15:59:21 +02:00
Wim Taymans
13d846ec38
Improve introspection
...
Add instrospection of client and source-output.
Add properties to source-output and to CreateSourceOutput/Input
Add helper to fill properties of context.
Add client-name to pinossrc and pinossink
Improve test-subscribe to show all new introspection details.
2015-07-28 17:05:03 +02:00
Wim Taymans
85e09e7a5b
source-output: fix wrongly marked property
2015-07-17 17:14:57 +02:00
Wim Taymans
1378a65fb7
devicemonitor: various improvements
...
Set the active device providers as a property on the daemon. In the
device monitor we can then obsolete the already monitored devices.
Copy all device properties to the source. Set the device class as
a property on the monitored devices.
2015-07-17 17:01:46 +02:00
Wim Taymans
191909cb05
introspect: add api get daemon info
2015-07-17 16:58:42 +02:00
Wim Taymans
31da833069
properties: pass PinosProperties around
...
Pass PinosProperties around instead of GVariant. This is much easier to
deal with.
2015-07-17 16:57:01 +02:00
Wim Taymans
c77d7718a2
properties: add generic property bag
...
Add a structure to hold string key/value pairs. This is basically a thin
wrapper around GHashTable with some extra API.
2015-07-17 16:52:16 +02:00
Wim Taymans
81924afc39
gst-source: query the caps only once
...
Query the caps only once at startup and keep them around.
2015-07-16 17:19:32 +02:00
Wim Taymans
619c1f83d0
deamon: remove obsolete method
2015-07-16 17:19:05 +02:00
Wim Taymans
12301b6ef1
source: add method to mark a source idle or busy
...
Marking a source idle will start an idle timeout to suspend the source.
2015-07-16 17:18:01 +02:00
Wim Taymans
04eca27890
device-provider: small cleanup
2015-07-14 15:50:08 +02:00
Wim Taymans
cc3f49e177
pinossrc: wait for streaming
...
Wait for the streaming state before completing the negotiation or else
we might start reading before we are ready and error out.
2015-07-14 15:47:18 +02:00
Wim Taymans
1b74396562
gst: fix the timestamping
...
We want to store the absolute time against some clock in the message
timestamp.
2015-07-14 15:46:25 +02:00
Wim Taymans
9425a2bd2f
dbus-xml: remove introspection API
...
We use the ObjectManager and its signals for introspection.
2015-07-14 15:44:51 +02:00
Wim Taymans
aa558bf105
client-source: fix state changes
...
Keep the client-source in the playing state for as long as the input is
streaming. Pausing the pipeline when there are no more readers causes
data to bunch up in the socket that gets bursted to new clients when
they connect.
2015-07-14 15:42:47 +02:00
Wim Taymans
1fec75d2a5
client-source: set format on client source
...
Set the format on the client source when it is created so that other
clients can inspect the format. It also makes client sources show up in
the device monitor.
2015-07-14 11:34:59 +02:00
Wim Taymans
81b7f15a0c
pinossrc: also start streaming when caps don't change
2015-07-10 15:32:59 +02:00
Wim Taymans
bd9fa1da65
pinossrc: fix debug
2015-07-10 15:32:12 +02:00
Wim Taymans
88ce3637bc
deviceprovider: fix path argument
2015-07-10 15:31:51 +02:00
Wim Taymans
f268cdfda6
Try to use source_path consistently
2015-07-09 17:58:54 +02:00
Wim Taymans
1e4e4ef185
client-source: handle NULL filter
2015-07-09 17:58:40 +02:00
Wim Taymans
ba15f1f977
gst-source: handle NULL filters
2015-07-09 17:36:17 +02:00
Wim Taymans
b85fd0ed25
source: set our possible-formats
2015-07-09 17:36:00 +02:00
Wim Taymans
9895395ab9
manager: disable our own provider
...
Disable our own provider or else we would react to our own sources.
2015-07-09 17:35:13 +02:00
Wim Taymans
be762c326c
deviceprovider: reorganize the code a little
2015-07-09 17:34:01 +02:00
Wim Taymans
3ddbea9874
subscribe: disconnect signals
2015-07-09 17:33:05 +02:00
Wim Taymans
533ec2c19d
stream: Use path as the string identifier for a source
...
Cleanup headers
avoid strlen because we can
2015-07-09 17:31:31 +02:00
Wim Taymans
cca0e8eb15
introspect: improve introspect
...
Use the values from the proxy
2015-07-09 17:30:37 +02:00
Wim Taymans
5d4350a38f
deviceprovider: fix device provider
2015-07-09 11:35:18 +02:00
Wim Taymans
53bc0f7848
Improve default source state
...
Default source state should be SUSPENDED
2015-07-09 11:34:34 +02:00
Wim Taymans
4199d5652e
introspect: implement get_source_info_by_id
2015-07-09 11:33:45 +02:00
Wim Taymans
7159ea8408
deviceprovider: add device provider
...
Add device provider
Clean up states
Make generic object id instead of exposing GDBusProxy
Add more introspection API
2015-07-08 17:40:37 +02:00
Wim Taymans
cbeee04809
mainloop: add threaded mainloop
...
Add a mainloop wrapper that runs the mainloop in a separate thread and
has some synchronization primitives.
Use new mainloop in gstreamer source and sink elements
2015-07-08 12:11:55 +02:00
Wim Taymans
a3505fb880
more rename PV -> PINOS, Pv -> Pinos, pv -> pinos
2015-07-07 16:46:23 +02:00
Wim Taymans
0dd41f5e40
gst: fix fixation
...
Implement fixate for video and audio caps
2015-06-30 18:14:36 +02:00
Wim Taymans
4b72848a1a
Rename pulsevideo to pinos
2015-06-30 18:06:36 +02:00
Wim Taymans
b68b62740c
Fix locking and threadsafety
...
Emit all notify in the context thread.
Handle error cases better.
Make sure we hold the lock when running the mainloop, this will cause
all of the signals to be emited with the lock. Make sure we call all
methods with the lock.
2015-06-12 12:10:27 +02:00
Wim Taymans
83223f0a83
pvsink: fix cleanup
2015-06-05 18:21:18 +02:00