Commit graph

1032 commits

Author SHA1 Message Date
Sebastian Dröge
e2950749e8 Remove some unneeded lifetime annotations 2018-10-11 11:58:01 +03:00
Sebastian Dröge
d19c70694a Use ? operator instead of explictly propagating None 2018-10-11 11:58:01 +03:00
Sebastian Dröge
fa29872863 Fix various clippy warnings in the serde code 2018-10-11 11:58:01 +03:00
Sebastian Dröge
5d9a3b4272 Use ptr::add(i) instead of ptr::offset(i as isize) 2018-10-11 11:58:01 +03:00
Jordan Petridis
d085569b3e Add a rustfmt config
We stick to the default rustfmt style, but the config is needed
to ignore the auto-generated code.
2018-10-08 17:02:57 +03:00
Jordan Petridis
a585519db4 CI: Add a rustfmt check 2018-10-08 17:02:57 +03:00
Jordan Petridis
4127425f6b CI: Cache the cargo registry 2018-10-08 17:02:57 +03:00
Jordan Petridis
3acdf7b996 CI: add color to the cargo output 2018-10-08 17:02:57 +03:00
Jordan Petridis
7856442176 CI: Add initial gitlab-ci config
Duplicates the functionality of the travis config
2018-10-08 17:02:57 +03:00
Sebastian Dröge
eb0a804a50 Run everything through latest rustfmt 2018-10-08 15:02:23 +03:00
Sebastian Dröge
2c7dff3b45 Run everything through rustfmt again 2018-10-08 09:32:08 +03:00
Sebastian Dröge
2d45d3840f Clean up imports a bit 2018-10-08 09:31:39 +03:00
Sebastian Dröge
cb3cf66bd8 Onle re-export traits from the pbutils prelude 2018-10-08 09:26:53 +03:00
Sebastian Dröge
53cf6704e7 Remove EncodingTarget::add_profile() and consider it immutable 2018-10-08 09:23:48 +03:00
Sebastian Dröge
70fde430c9 Add copyright header 2018-10-08 09:22:32 +03:00
Sebastian Dröge
8e413fa3c9 Store encoding profiles inside the container builder as a Vec 2018-10-08 09:17:26 +03:00
Sebastian Dröge
5d17718e3b Remove unnecessary mut 2018-10-08 09:09:14 +03:00
Sebastian Dröge
3069af42bb Remove automatically inserted docs from git 2018-10-08 09:08:49 +03:00
Thiago Santos
382138b75a More encoding_profile binding improvements
- enable is_equal function again (unsure why it was disabled)
- remove restriction-caps property, encoding-profile objects are
immutable
- remove cast need by using IsA<EncodingProfile> in parameters and
returning the correct type of encodingprofile subclass from the build()
functions. It used a internal hack for storing those IsA objects in
order to keep the API clean and ready to be used, this should be sorted
out as soon as we figure out how to store them in the buidlers.
- encodebin example: remove Result error propagation when it is caused
by programming mistakes. A panic will happen in those cases.
- run rustfmt
2018-10-08 09:06:46 +03:00
Thiago Santos
43235969be encoding_profile: set_restriction is transfer-full not transfer-none
Avoid refcounting mistakes by using the right converting functions
before calling the ffi layer functions
2018-10-08 09:06:46 +03:00
Thiago Santos
f3c8dfeb9b EncodingProfile: remove setters and constructors, use builders
Provide builders for the EncodingProfile so that the created objects are
imutable and can have the Send and Sync traits
2018-10-08 09:06:46 +03:00
Thiago Santos
861f052c3d encoding_profile: add builders for all types 2018-10-08 09:06:46 +03:00
Thiago Santos
67bdfee1f6 encodebin: add an example for encodebin usage 2018-10-08 09:06:46 +03:00
Thiago Santos
485d7e4881 pbutils: adding encoding-profile bindings 2018-10-08 09:06:46 +03:00
Sebastian Dröge
7a0310a1f5 Remove travis cargo cache 2018-10-05 17:19:08 +03:00
Sebastian Dröge
c56e9ddfea Also implement copy() returning the wrapper miniobject on the reference type
This way CapsRef::copy() will return a Caps, and not a GstRc<CapsRef>.
2018-10-05 16:36:15 +03:00
Sebastian Dröge
9265cc8232 Correctly generate VideoOverlayFormatFlags as flags 2018-10-04 11:39:15 +03:00
Sebastian Dröge
30b9527112 Implement ::copy() directly on miniobject wrapper types
This provides the additional wrapping as the one via get via deref will
only give back a GstRc<T> without the additional wrapping.
2018-10-03 16:54:00 +03:00
Sebastian Dröge
8f71a81cb5 Regenerate with latest gir to get rid of unneeded notify signal connectors for construct-only properties 2018-10-03 13:57:07 +03:00
Sebastian Dröge
0f704646f6 Add more complete bindings for allocation query
Everything apart from allocators are covered now.
2018-10-01 22:56:32 +03:00
Sebastian Dröge
35353445de VideoOverlayComposition is supposed to be immutable
So remove the add() function and instead require an
IntoIterator<Item=&VideoOverlayRetangle> in the constructor, and require
at least one item in the iterator or return None.
2018-10-01 14:52:31 +03:00
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