Commit graph

28 commits

Author SHA1 Message Date
Sebastian Dröge
62a237ff0c Implement a generic Element implementation infrastructure
And implement the Demuxer base class on top of that, with no unsafe code
left whatsoever
2017-09-19 14:56:04 +03:00
Sebastian Dröge
2781e0b3d8 Port demuxer to plain Rust 2017-09-18 21:29:42 +03:00
Sebastian Dröge
7e7433037d Port everything over to gstreamer-rs
And remove all unneeded code and unused external crates.
2017-09-16 20:35:01 +03:00
Sebastian Dröge
5ae66e191c Run everything through latest rustfmt-nightly 2017-09-15 11:54:38 +03:00
Sebastian Dröge
37a673ce24 Use muldiv crate for timestamp calculations 2017-08-18 12:55:24 +03:00
Sebastian Dröge
d68effa8e4 Update all kinds of dependencies 2017-08-18 12:52:17 +03:00
Sebastian Dröge
6f04ddf797 Run everything through rustfmt-nightly 2017-07-31 14:36:35 +01:00
Sebastian Dröge
94016c39b0 Update to nom 3.0, bitflags 0.9 2017-06-06 13:29:19 +03:00
Sebastian Dröge
df51424631 Structure/Caps API improvements 2017-04-21 12:18:41 +01:00
Sebastian Dröge
021de8af1f Update to slog 2.0 2017-04-12 16:44:34 +03:00
Sebastian Dröge
d72f1f716b Port C code for the source to pure Rust 2017-04-10 19:52:00 +03:00
Sebastian Dröge
98d2175ef5 Switch back to Geal's flavors repository after all my changes are merged 2017-04-06 15:10:13 +03:00
Sebastian Dröge
e64facc254 Change license from LGPLv2.1+ to Apache2/MIT
https://github.com/sdroege/rsplugin/issues/7
2017-02-16 17:52:27 +02:00
Sebastian Dröge
7b5764e759 Implement GstRc/GstRef wrapper for GstMiniObject
Keeps the miniobject specific code local and provides a more similar API
to Rc/Arc. Also makes it impossible to accidentially try writing to an
unwritable miniobject.
2017-02-03 15:57:49 +01:00
Sebastian Dröge
aa54f1a4e6 Use num_rational instead of home-baked (u32, u32) fractions 2017-01-15 20:56:20 +01:00
Sebastian Dröge
620cf7c5f7 Minor cleanup 2017-01-14 18:15:06 +01:00
Sebastian Dröge
3e17102166 Add API to create a Buffer from a Vec<u8> with memory reuse and use it for the Speex headers 2017-01-14 18:04:55 +01:00
Sebastian Dröge
745a6a3c17 Implement From<_> for Value to simplify code a lot 2017-01-13 21:45:23 +01:00
Sebastian Dröge
ac9ba47403 Move Value code into its own module 2017-01-13 19:16:12 +02:00
Sebastian Dröge
93f09c8a4a Add support for Speex to FLV demuxer
... and arrays of values in caps while at the same time refactoring the
Value code a bit.
2017-01-13 19:04:51 +02:00
Sebastian Dröge
3b299f3fb6 Simplify caps a bit by using slices instead of IntoIterator
IntoIterator did not work as expected anyway and would require usage of
AsRef, which then breaks type inference for empty slices for example.
2017-01-09 20:55:10 +02:00
Sebastian Dröge
fc7116c4e1 Fix for flavors API fixups related to strict arrays 2017-01-09 01:44:55 +02:00
Sebastian Dröge
e9cf54d43b Add support for AAC and AVC/H264 in FLV 2017-01-06 00:46:59 +02:00
Sebastian Dröge
80ba9a8b8f Use caps also for the demuxer sink/src pad templates instead of strings 2016-12-30 19:02:31 +02:00
Sebastian Dröge
e26cdc9187 Implement a minimal GstCaps binding and use it in the demuxer 2016-12-30 12:11:30 +01:00
Sebastian Dröge
ec0539de0a Add logging to FLV demuxer 2016-12-27 17:14:39 +01:00
Sebastian Dröge
8ee1f72184 Add support for logging via slog 2016-12-25 12:16:12 +01:00
Sebastian Dröge
89b0220e26 Build each component into its own GStreamer plugin 2016-12-23 19:04:32 +02:00