Sebastian Dröge
dd5af12ebe
Rename used crates (gst -> gst_ffi, etc) and import gstreamer code
2017-07-31 23:26:52 +01:00
Sebastian Dröge
6f04ddf797
Run everything through rustfmt-nightly
2017-07-31 14:36:35 +01:00
Sebastian Dröge
3c27685e38
Update gst-plugin-http to reqwest 0.7
2017-07-31 14:29:11 +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
340e8836bb
Update to reqwest 0.6
2017-05-10 11:26:45 +02:00
Sebastian Dröge
d962acc8c3
Update to released versions of glib-sys/gstreamer-sys
2017-05-10 11:25:17 +02:00
Sebastian Dröge
52981968f6
Use raw pointers instead of &'static references
...
&'static is wrong here is the pointers are only valid for the lifetime
of the surrounding struct.
Also place a PhantomData<T> inside the structs as conceptually we own a
T, see std::ptr::Unique and
https://github.com/rust-lang/rfcs/blob/master/text/0769-sound-generic-drop.md#phantom-data
Need to add the PhantomData<T> elsewhere too.
2017-04-27 12:33:28 +03:00
Sebastian Dröge
c6addbfe48
Remove From<&T> impls for GstRc<T>
...
Instead of this, ToOwned should be used.
2017-04-24 17:28:26 +03:00
Sebastian Dröge
139c9be958
Minor cleanup
2017-04-24 10:13:32 +01:00
Sebastian Dröge
9b593136da
Rewrite MiniObject bindings
...
These now use references were applicable and GstRef became useless
2017-04-24 10:06:38 +01:00
Sebastian Dröge
2232af41b6
Refactor Structure bindings and allow getting Structures from Caps
2017-04-21 22:04:08 +01:00
Sebastian Dröge
df51424631
Structure/Caps API improvements
2017-04-21 12:18:41 +01:00
Sebastian Dröge
757d7532c1
Fix various clippy warnings
2017-04-20 20:37:08 +01:00
Sebastian Dröge
154e996e2d
Implement Iterator::size_hint(), ExactSizeIterator and DoubleEndedIterator for our iterators
2017-04-20 20:28:03 +01:00
Sebastian Dröge
deef22cd28
Add bindings for GstStructure
2017-04-19 20:57:33 +01:00
Sebastian Dröge
8ea9e66797
Add Tag iterator for iterating one specific tag
2017-04-19 12:26:33 +01:00
Sebastian Dröge
e45ff7241e
Remove some unneeded trait bounds in the taglist bindings
2017-04-19 12:11:31 +01:00
Sebastian Dröge
1bf20bfea4
Implement ValueRef and TypedValueRef for wrapping around a unowned GValue pointer without copying
...
Also rename new_from*() functions to from*() for consistency.
2017-04-19 11:59:44 +01:00
Sebastian Dröge
2d97baaf96
Rewrite GValue bindings
2017-04-18 20:42:23 +01:00
Sebastian Dröge
a808c34794
Use g_strndup() instead of creating a CString and then g_strdup() it
...
Creating a CString involves potentially some additional allocations.
2017-04-14 12:41:39 +03:00
Sebastian Dröge
9864413be2
Run everything through new rustfmt
2017-04-12 16:46:11 +03:00
Sebastian Dröge
021de8af1f
Update to slog 2.0
2017-04-12 16:44:34 +03:00
Sebastian Dröge
0cf169aa20
Fix some clippy warnings
2017-04-10 20:00:22 +03:00
Sebastian Dröge
7139551773
Port sink C code to Rust
2017-04-10 19:52:00 +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
50829bdec9
Store GWeakRef in a Box
...
Its memory location is important, and having it stored directly inside
the struct allows it to possible be moved to a different address.
2017-04-10 16:59:34 +03:00
Sebastian Dröge
24a10bb614
Port everything else over to glib/gobject/gstreamer-sys
2017-04-10 00:29:07 +03:00
Sebastian Dröge
e4ababa98f
Switch to gstreamer-sys crate and port buffer bindings to it
2017-04-06 15:10:22 +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
1a5fede4a7
Update to reqwest 0.5
2017-04-06 15:10:13 +03:00
Sebastian Dröge
1dda357b86
Move MiniObject::is_writable() from the trait to the reference containers
2017-04-05 23:52:38 +03:00
Sebastian Dröge
2b799910fc
Update to bitflags 0.8
2017-02-19 12:12:06 +02:00
Sebastian Dröge
b3e01add5c
Remove FlowError::NotLinked
...
This will never appear in Rust code as all forwarding of buffers will
happen at the C/Rust binding layer.
2017-02-16 17:54:20 +02: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
6b7e6d8e6c
Add unit test for buffers that checks the miniobject writability wrapping
2017-02-04 17:51:05 +01:00
Sebastian Dröge
9e59eff973
Fix some clippy warnings
2017-02-03 15:57:49 +01: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
99a9b7fedc
Update to reqwest 0.4
2017-02-03 16:34:01 +02:00
Sebastian Dröge
19936e4eae
Do LTO for release builds
2017-02-02 21:11:06 +02:00
Sebastian Dröge
974a689fd7
Keep amount of unsafe code a bit smaller for the GstStream* stream IDs
2017-01-23 21:17:36 +02:00
Sebastian Dröge
2ec438e5b8
Add Eq/PartialEq instances for TagList and Caps
2017-01-23 18:31:51 +02:00
Sebastian Dröge
1ee7c8b9e3
Return stream IDs directly instead of creating an owned String
2017-01-23 18:26:42 +02:00
Sebastian Dröge
7a33a4177f
Improve C string handling a bit
...
These are always going to be valid UTF-8 or things are very wrong.
2017-01-23 14:35:16 +02:00
Sebastian Dröge
e2b18a91e0
Add bindings for GstStream and GstStreamCollection
...
To be used in the demuxer for tracking streams and their related
information.
2017-01-22 20:13:07 +02:00
Sebastian Dröge
509810e87a
Add tags support
2017-01-18 14:36:11 +02: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