Sebastian Dröge
c99928d030
Change FormatValue related API to be more convenient to use
...
FormatValue is now renamed to GenericFormattedValue and the API slightly
changed. In addition there is now a FormattedValue trait, and a
SpecificFormattedValue trait plus types for Bytes, Buffers and the
existing ClockTime.
This allows to create functions like
Pad::query_duration<F: SpecificFormattedValue>() -> Option<F>
and doesn't require the caller to unwrap the generic value anymore,
which is completely unneeded in these cases.
In addition, Segment became FormattedSegment<T> with API to
upcast/downcast between the specific formatted values and the generic
formatted value. This greatly simplifies usage of Segments.
2017-12-09 19:45:18 +02:00
Sebastian Dröge
520a9bb879
Use downcast_unchecked() for sender in deep-notify signal handler
...
This is guaranteed to be of the correct type.
2017-12-09 18:08:57 +02:00
Sebastian Dröge
d7792a4fca
Fix calculation for buffer duration in basic-tutorial-8
...
We need to scale the number of samples, not the buffer size.
2017-12-09 14:03:18 +02:00
Sebastian Dröge
963557b79f
Query::get_structure() can also return NULL
2017-12-06 13:43:37 +02:00
Sebastian Dröge
1f80df493a
Let the glib::Value destructor clean up our values instead of doing so manually
2017-12-06 11:17:59 +02:00
Sebastian Dröge
ad7b21ba55
Use unwrap_or_else() for the default value in the DateTime Display impl
2017-12-05 23:20:10 +02:00
Sebastian Dröge
05c51dd778
Change all values in Segment to FormatValue
2017-12-05 23:16:12 +02:00
Sebastian Dröge
e6da3554ee
Use ClockTime for the Duration tag
...
And implement the Value traits for ClockTime
2017-12-05 22:54:03 +02:00
Sebastian Dröge
f1c6c4fd06
Change various integers to FormatValue and ClockTime in events/queries/messages
2017-12-05 22:43:37 +02:00
Sebastian Dröge
801a7ed43c
Use ClockTime instead of u64 for the Gap event
2017-12-05 21:36:56 +02:00
Sebastian Dröge
55f044dd83
Add newtype wrappers and INVALID constants for event/message GroupId and Seqnum
2017-12-05 21:33:04 +02:00
Sebastian Dröge
97b786a0c7
Regenerate element bindings for gst_element_remove_pad() annotation fix
2017-12-04 18:12:55 +02:00
Sebastian Dröge
03fed8131d
Fix ownership transfer of the pad in gir-files in gst_pad_remove()
2017-12-04 18:12:30 +02:00
Sebastian Dröge
c965422410
Update to lazy_static 1.0
2017-12-04 11:11:26 +02:00
Sebastian Dröge
88ff4289d1
Add Event::set_running_time_offset()
2017-12-03 17:13:46 +02:00
Sebastian Dröge
e5bbf93670
Registry::scan_path() returning false is not an error
2017-12-03 14:54:52 +02:00
Sebastian Dröge
6015e74f0e
Regenerate with gir filename/utf8 fixes
2017-12-03 14:51:16 +02:00
Sebastian Dröge
7c75d3d8e2
Update gir-files with filename/utf8 type fixes
2017-12-03 14:50:52 +02:00
Sebastian Dröge
49e1fe1c3f
Add bindings for Registry and PluginFeature
2017-12-03 14:40:38 +02:00
Sebastian Dröge
c6c7693550
Add Buffer::get_dts_or_pts()
2017-12-02 12:15:07 +02:00
Sebastian Dröge
411f54afed
Run everything to rustfmt again
2017-12-01 19:02:53 +02:00
Sebastian Dröge
0920008869
Print clock times as actual time in Segment/Buffer/BufferList debug output
2017-12-01 19:02:29 +02:00
Sebastian Dröge
77d439338b
Fix build after Event/Message::get_structure() API change
2017-12-01 17:31:47 +02:00
Sebastian Dröge
fccb1eca5e
Implement fmt::Debug more consistently for miniobjects and various other types
2017-12-01 11:34:01 +02:00
Sebastian Dröge
c57d5523d2
Implement ToOwned for Message/Event/QueryRef
2017-12-01 11:34:01 +02:00
Sebastian Dröge
1576ff6c32
Event/Message::get_structure() can return None
2017-12-01 11:33:21 +02:00
Sebastian Dröge
7342a0fb98
Implement some functions on EventType and implement PartialOrd for serialized events
2017-11-29 18:55:56 +02:00
Sebastian Dröge
8a2e78e586
Regenerate with latest GIR to fix various issues with property getters
...
Get rid of unneeded transmutes and actually initialize flags/enum
GValues with the correct type instead of using integers.
2017-11-27 19:16:34 +02:00
Sebastian Dröge
b198ee21da
Let Sample::new(), TagList::add(), Structure::set() and others take more values by reference instead of by value
2017-11-27 14:34:02 +02:00
Sebastian Dröge
b6d13272df
Fix some clippy warnings in examples/tutorials
2017-11-27 14:03:33 +02:00
Sebastian Dröge
2508f432f4
Remove some unneeded lifetime annotations
2017-11-27 14:03:33 +02:00
Sebastian Dröge
3c9b7a395b
Get rid of some unneeded transmute() in VideoInfo
2017-11-27 14:03:33 +02:00
Sebastian Dröge
52d13c010a
Add TagListRef::merge() and ::insert()
2017-11-27 14:03:33 +02:00
Sebastian Dröge
029527a6d4
Toc::merge() doesn't take ownership of the taglist
2017-11-27 14:03:33 +02:00
Sebastian Dröge
8c697b3a27
Use Arc::clone(&val) instead of val.clone() to make it more explicit that only the Arc cloned here
2017-11-27 14:03:33 +02:00
Sebastian Dröge
34f70ee0d7
Derive more useful traits for various enums
2017-11-27 14:03:30 +02:00
Sebastian Dröge
80ebc86e94
Update CHANGELOG.md from 0.9.1
2017-11-26 20:42:53 +02:00
Sebastian Dröge
eee82fd402
Export FlowError/Success, ClockError/Success, PadLinkError/Success too
2017-11-26 20:40:05 +02:00
Sebastian Dröge
ea3d08d65a
Update CHANGELOG.md with 0.9.0
2017-11-26 19:49:56 +02:00
Sebastian Dröge
58d6b87844
Update docs
2017-11-26 18:37:09 +02:00
Sebastian Dröge
f1e095eb0e
Update versions to 0.10.0
2017-11-26 18:33:12 +02:00
Sebastian Dröge
8014b387c4
Don't list versions for the glib/gtk/gio GIT repositories
2017-11-26 18:32:14 +02:00
Sebastian Dröge
ef24828b40
Correctly ignore Pad::peer_query_* and query_*
...
These are manually bound now due to gst::FormatValue
2017-11-26 18:19:00 +02:00
Sebastian Dröge
94ba143c74
Allow anything that implements Into<Option<&str>> to be used for creating new pads
2017-11-21 16:16:56 +02:00
Sebastian Dröge
483b40679a
Flush stdout after writing every * in basic-tutorial-8
2017-11-17 20:43:13 +02:00
Guillaume Desmottes
82681d2b24
Add basic-tutorial-8
...
Fixes https://github.com/sdroege/gstreamer-rs/pull/52
2017-11-17 20:43:08 +02:00
Sebastian Dröge
c9636bca2e
Allow None caps for appsrc/appsink
...
Thanks to Guillaume Desmottes for noticing
2017-11-17 16:53:37 +02:00
Sebastian Dröge
e6d72527c4
Switch to failure/failure_derive from crates.io in the examples
2017-11-17 15:08:58 +02:00
Sebastian Dröge
f895f484cc
Fix up tutorials and examples for Message::get_src() returning an Option now
2017-11-16 13:58:56 +02:00
Sebastian Dröge
1dbc63dcb3
Message::get_src() can return None
...
The src is optional
2017-11-16 13:58:42 +02:00