Commit graph

701 commits

Author SHA1 Message Date
Sebastian Dröge 6d5bded7b3 Get rid of lifetime for the Meta structs
The structs themselves don't reference the buffer, the reference to
these structs is borrowed from the buffer.
2018-09-30 01:17:12 +03:00
Sebastian Dröge 7270a837d1 Fix namespace error in previous commit 2018-09-29 12:19:47 +03:00
Sebastian Dröge 62074ba1ed Add bindings for VideoMeta and VideoOverlayCompositionMeta 2018-09-29 12:01:26 +03:00
Sebastian Dröge cb23d20270 Implement support for buffer Metas
Fixes https://github.com/sdroege/gstreamer-rs/issues/103
2018-09-29 11:44:55 +03:00
Sebastian Dröge ad62d08d65 Implement Display for Caps and TagList 2018-09-28 19:14:35 +03:00
Sebastian Dröge 2b029bcdd4 Remove unused imports 2018-09-28 18:15:29 +03:00
Sebastian Dröge 6fd0ed4cb3 Move all minobjects to newtype wrapper types
For consistency with external crates and to help rustdoc, which gets
confused on impl blocks for type aliases.
2018-09-28 18:11:46 +03:00
Sebastian Dröge 26ee546d1a Always derive Clone for miniobject wrappers 2018-09-28 17:42:52 +03:00
Sebastian Dröge 0b58bf5c2f Add bindings for VideoOverlayComposition and VideoOverlayRectangle
... the missing file.
2018-09-28 17:42:45 +03:00
Sebastian Dröge cfe1bd452f Add bindings for VideoOverlayComposition and VideoOverlayRectangle 2018-09-28 17:37:27 +03:00
Sebastian Dröge 74024447fe Add macro to define newtype wrappers around MiniObjects
To allow implementing them in a meaningful way in external crates.
2018-09-28 17:37:27 +03:00
Sebastian Dröge bc8da095c3 Add functions to get the FFI pointer behind a VideoFrame/VideoFrameRef 2018-09-28 17:35:48 +03:00
Sebastian Dröge f1f278271e Run tests on travis with G_DEBUG=fatal_warnings 2018-09-28 13:15:18 +03:00
Sebastian Dröge a43c78f2c5 Run everything through rustfmt 2018-09-28 13:15:18 +03:00
Sebastian Dröge 564f9faf84 Add support for CapsFeatures
Fixes https://github.com/sdroege/gstreamer-rs/issues/13
2018-09-28 13:15:18 +03:00
Sebastian Dröge 857ed8609c Structure is Sync, and StructureRef is Send+Sync 2018-09-22 11:00:17 +03:00
Sebastian Dröge 255243c16a Implement Sync for VideoInfo and AudioInfo
They are immutable on the Rust side after all.
2018-09-22 10:56:25 +03:00
Sebastian Dröge 3be4dc56b3 Update travis to use GStreamer 1.14.3 binaries (including OpenGL library) 2018-09-21 17:45:23 +03:00
Sebastian Dröge 05b591c709 Update CHANGELOG.md for 0.12.1 2018-09-21 11:43:01 +03:00
Sebastian Dröge 0628961c94 Add bindings for is_video_overlay_prepare_window_handle_message() 2018-09-13 22:56:47 +03:00
Sebastian Dröge 6cf34b1b39 Add VideoOverlay::prepare_window_handle() and got_window_handle() 2018-09-13 22:53:13 +03:00
Sebastian Dröge 0ddab16801 Update versions to 0.13.0 2018-09-10 01:54:25 +03:00
Sebastian Dröge 7606e6f346 Add README.md to gstreamer-webrtc 2018-09-10 01:54:07 +03:00
Sebastian Dröge a2a7eac8a8 Update CHANGELOG.md for 0.12.0 2018-09-10 01:54:07 +03:00
Víctor Manuel Jáquez Leal 4bbd7fefc6 Update gir-files to 1.14.2
Using Debian gir files
2018-09-07 19:17:32 +03:00
Sebastian Dröge 08dcd9f22e Update ron dependency (for tests) to 0.4 2018-09-06 14:10:30 +03:00
Sebastian Dröge 3119593292 Add pango-cairo example 2018-08-30 11:14:59 +03:00
Sebastian Dröge 2e139bd202 Update CHANGELOG.md for 0.11.6 2018-08-27 10:04:16 +03:00
Arun Raghavan acdc837a15 examples: Explicitly define [bin] section for discoverer 2018-08-18 11:45:10 +03:00
Sebastian Dröge 3c900e6102 Regenerate with latest gir 2018-08-18 00:25:12 +03:00
Sebastian Dröge 06bd23f833 Fix compilation of iterator example 2018-08-13 23:46:22 +03:00
Sebastian Dröge a6d9fe4b0a Remove std::iter::Iterator impl from gst::Iterator
It does not work well with possibly errors during iteration and
requiring to possibly resync.
2018-08-13 20:35:28 +03:00
Sebastian Dröge 0d70950821 Implement Pad::sticky_events_foreach() 2018-08-13 19:58:30 +03:00
Sebastian Dröge 999c84f0a0 Implement ValueExt::compare() around std::cmp::Ordering and implement an eq() function
No need for a custom enum
2018-08-10 14:22:15 +03:00
Sebastian Dröge dba110e8ad Fix build with two-phase-borrows/NLL 2018-08-08 09:16:18 +02:00
Sebastian Dröge cf9e875878 Implement Ord/PartialOrd on Seqnum 2018-08-06 11:25:44 +03:00
Philippe Normand 58741b7ea2 gstreamer: Implement deinit() function
This function is especially usefull when using the leaks tracer. It was removed
in commit e7a0543c.
2018-08-04 18:39:53 +03:00
Sebastian Dröge ccca8248c3 Add getter for the current pad mode 2018-08-01 19:28:57 +03:00
Sebastian Dröge 9e90a1264f Add getter for the aggregator pad segment 2018-08-01 19:24:54 +03:00
Sebastian Dröge c7fa48984e Aggregator is only available from gstreamer-base since 1.14 2018-07-31 00:05:40 +03:00
François Laignel 0eb6bcf0c0 serde: restrain unneeded visibilities 2018-07-30 23:18:30 +03:00
François Laignel 68263ffc7d Buffer: serde: add a TODO for a future better design attempt
Serialization and deserialization are asymetrical: ser uses string literals
and de uses a dedicated `struct`, leading to possible inconsistencies.

The idea is to rely on a single `struct` for both ser and de. The only
problem is that, in order to avoid unneeded copies, `buffer` requires an owned
`ByteBuf` for de and a borrowed `Bytes` for ser. `Either` could help adapting
to both situations.
2018-07-30 23:18:30 +03:00
François Laignel 3ed7257da9 DateTime: serde: use an enum 2018-07-30 23:18:30 +03:00
François Laignel 9fd5392a16 value: serde: use stringify for types 2018-07-30 23:18:30 +03:00
François Laignel 6bda3ef174 serde: add roundtrip tests
This allows making sure serialization and deserialization are in sync for
types with asymetrical implementations.
2018-07-30 23:18:30 +03:00
François Laignel 64ea419839 Caps: serde as an enum
`Caps` can be `any`, `empty` or matching a list of `Structures`.
2018-07-30 23:18:30 +03:00
François Laignel 9f2f684188 format: serde: avoid redundant () for some types 2018-07-30 23:18:30 +03:00
François Laignel dfc961679f segment: serde FormattedSegments too
... and use the same `struct` for serialization and deserialization so
that fields mapping consistency is ensured at compilation time.
2018-07-30 23:18:30 +03:00
François Laignel ab9cd29bd6 serde: fmt pass
Note: clippy didn't raise any warning
2018-07-30 23:18:30 +03:00
François Laignel d4fb10ef4c Toc: serde: rename loop_ to loop 2018-07-30 23:18:30 +03:00