Commit graph

588 commits

Author SHA1 Message Date
Sebastian Dröge
dc219af36e Add another comment to the appsrc example about the need-data callback not being mandatory 2018-05-18 11:42:24 +03:00
Sebastian Dröge
7734725da1 Change appsrc example to directly push data from the need-data callback
There's no need to start yet another thread just to push data in this
case, we can simply use the callback and store the frame counter in the
mutable environment of the closure.
2018-05-18 11:38:50 +03:00
Thibault Saunier
a10532c379 video_info: Implement fmt::Debug 2018-05-14 09:22:25 +03:00
Thibault Saunier
2962f186f7 Print pointer value when formatting debug strings 2018-05-14 09:22:25 +03:00
Sebastian Dröge
be646e78d9 Update to muldiv 0.2 2018-05-11 10:37:19 +03:00
Sebastian Dröge
7429138274 Update CHANGELOG.md for 0.11.2 2018-05-09 12:48:33 +03:00
Sebastian Dröge
c31921e093 Further work-arounds for floating reference handling changes between 1.12 and 1.14
This fixes various memory-safety issues caused by broken reference
counting. We have to handle pre-1.14 and post-1.14 differently in
constructors.

See https://bugzilla.gnome.org/show_bug.cgi?id=743062#c30
2018-05-09 12:20:59 +03:00
Sebastian Dröge
2cefd9aea6 Re-run everything through rustfmt 2018-04-25 11:13:14 +03:00
Sebastian Dröge
062403bdac appsrc need-data and all appsink callbacks can only be called from a single thread at a time
As such, make them FnMut and remove the Sync requirement from them. We
can only do this for the callbacks and not the signals, because the
signals can in theory be emitted from anybody (outside the object!)
at any time.
2018-04-25 11:13:14 +03:00
Sebastian Dröge
5ef13a11b0 Fix compiler warning about too many parenthesis 2018-04-23 20:46:29 +03:00
Sebastian Dröge
2d260b4f0c Rename manual files with too many underscores 2018-04-23 20:45:15 +03:00
Sebastian Dröge
46d27e3e75 Regenerate everything with latest GIR 2018-04-23 20:45:15 +03:00
Sebastian Dröge
a4c3c7cd76 Add futures example using the GLib futures executor 2018-04-23 20:31:27 +03:00
Sebastian Dröge
4b4f369200 Rename tokio example to futures
It has nothing to do with tokio anymore with the newer futures version,
tokio would only come in if actual tokio API (e.g. for sockets) is used.
2018-04-23 20:27:51 +03:00
Sebastian Dröge
a276c226fd Port BusStream to futures 0.2 2018-04-23 20:27:17 +03:00
Sebastian Dröge
5dd17d6248 Update CHANGELOG.md for 0.11.1 2018-04-07 20:32:28 +03:00
Sebastian Dröge
3784b0a97d Add CHANGELOG.md/README.md to pbutils 2018-04-07 20:32:22 +03:00
Sebastian Dröge
03055f4e84 Change Structure/StructureRef to_string() to the minimal required fix
And add a comment to why we need it. No other struct with a to_string()
function is affected.

https://github.com/sdroege/gstreamer-rs/issues/101
2018-04-07 13:37:44 +03:00
Sebastian Dröge
ce9b98f338 Add Display impl for StructureRef too 2018-04-06 13:22:08 +03:00
Sebastian Dröge
f346d57b4f Fix infinite recursion in Structure::to_string()
Instead of StructureRef's to_string(), we were calling
ToString::to_string() in the Display impl. Which then called into itself
again.

Fixes https://github.com/sdroege/gstreamer-rs/issues/101
2018-04-06 13:22:08 +03:00
Guillaume Desmottes
c5617f6a47 WIP: test Structure string conversions 2018-04-06 13:22:08 +03:00
Sebastian Dröge
2fe925927b Add missing imports to sdp library and fix build 2018-04-05 23:06:18 +03:00
Sebastian Dröge
ad038cb54d Update webrtc/sdp docs 2018-04-05 22:25:13 +03:00
Sebastian Dröge
d850a4d50a Add missing file 2018-04-05 21:22:40 +03:00
Sebastian Dröge
fb73d1bc15 Get rid of GstSDPResult enum 2018-04-05 21:06:49 +03:00
Sebastian Dröge
19b6987012 Fix various compiler warnings 2018-04-05 21:06:49 +03:00
Sebastian Dröge
57c62789d9 Finish WebRTC library 2018-04-05 21:06:49 +03:00
Sebastian Dröge
0ff3dd150c Re-export all public API from the SDP library 2018-04-05 21:06:49 +03:00
Sebastian Dröge
873ddf0de6 Run gstreamer-sdp and gstreamer-webrtc through rustfmt 2018-04-05 21:06:49 +03:00
Sebastian Dröge
2de1f6f7a5 Use correct branches for gstreamer-webrtc for the -sys dependencies 2018-04-05 21:06:49 +03:00
Bo Du
05fec4d927 Free on error. Use pub(crate). Minor fixes. 2018-04-05 21:06:49 +03:00
Bo Du
3ecd67ee46 Address PR comments and fix compilation errors 2018-04-05 21:06:49 +03:00
Bo Du
36d538c0a0 Add SDPMessage definition and other manual SDP definitions. 2018-04-05 21:06:49 +03:00
Bo Du
92016945fc Update auto-gen'ed files. 2018-04-05 21:06:49 +03:00
Sebastian Dröge
3a0c972304 WebRTC/SDP WIP 2018-04-05 21:06:49 +03:00
Sebastian Dröge
9a3ef2e9f1 Regenerate with latest GIR and update for the non-bitflags flags in -sys now 2018-04-04 10:47:12 +03:00
Sebastian Dröge
492c3d656c Run everything through rustfmt again 2018-04-01 11:57:58 +03:00
Sebastian Dröge
fca0287dec Use ptr::NonNull in various places 2018-04-01 11:29:55 +03:00
Fernando Jiménez Moreno
b6a80b59fa Update homebrew instructions to install optional plugins 2018-03-21 11:54:42 +02:00
Sebastian Dröge
15116d0f98 Update CHANGELOG.md for 0.11.0 2018-03-20 12:47:58 +02:00
Sebastian Dröge
6d5f7337fc Update version to 0.12.0 2018-03-20 12:37:24 +02:00
Sebastian Dröge
f3924399aa Update docs to 1.14.0 2018-03-20 12:36:29 +02:00
Sebastian Dröge
68ba4d23bb Update to using the master branch of gstreamer-sys again 2018-03-20 12:04:16 +02:00
Sebastian Dröge
a6edcf4371 Update .travis.yml for the new 1.14 paths 2018-03-20 11:54:19 +02:00
Sebastian Dröge
a33fd41d02 Regenerate everything with latest gir 2018-03-20 11:52:29 +02:00
Sebastian Dröge
185fdd0226 Update gir-files with gstreamer 1.14.0 2018-03-20 11:51:58 +02:00
François Laignel
cd56d60352 Bus::get_pollfd generate doc for both unix & windows
There are different implementations and signatures for `get_pollfd` depending
on whether the target platform is unix or windows. When generating the doc,
we need both implementations to appear regardless of the target platform. This
commit is inspired by the way Rust `std` library deals with `process::Command`
OS dependent variants
(https://doc.rust-lang.org/std/process/struct.Command.html#impl-CommandExt).

Documentation can't be accurate though as we can't use the`std::os::windows`
on `unix` and vice versa. As a workaround a fake fd class matching the other
platform is declared.

This could be further enhanced once `#[doc(cfg(...))]` is stabilized
(https://github.com/rust-lang/rust/issues/43781) by declaring `#[doc(cfg(unix))]`
or `#[doc(cfg(windows))]` instead of the hard coded comments `This is supported
on **Windows/Unix** only`. Unfortunately, these comments disappear when
generating will `--all-features` because they are not part of the documentation
in the gir file.
2018-03-19 13:48:59 +02:00
François Laignel
406eb119d3 message: add test_other_fields
Fixes https://github.com/sdroege/gstreamer-rs/pull/93
2018-03-19 10:32:07 +02:00
Sebastian Dröge
3a755219f4 Add Promise bindings 2018-03-19 10:32:07 +02:00
Sebastian Dröge
0112d22804 Various manual 1.14 API additions and remove deprecated functions 2018-03-19 10:32:07 +02:00