Sebastian Dröge
3cd902513d
Update for glib::Object::new() API changes
2022-10-07 21:45:01 +03:00
François Laignel
57d8d46ab6
gst/format: fix some ops and add others
...
Some operations were implemented on types that wouldn't result in
the expected physical unit. E.g.:
- `ClockTime / ClockTime` results in a unit-less factor.
- `u64 / ClockTime` would result in a `1 / ClockTime`. Since we don't
use any `Frequency` type, this operation is removed. Users should
use the `ClockTime` accessors to compute the expected value.
This commit also adds:
- multiplications with integers as the left hand side operands.
- `Partial{Eq,Ord} for `Signed<T>` with `T` as left hand side operand.
- `opt_add` / `opt_sub` for `Signed<T>` with `T` as left or right hand
side operands.
- missing tests for `Partial{Eq,Ord}` and `OptionOrd`.
This implementation can interfere with unrelated code and was removed:
- `Signed<usize>.` `PartialOrd` makes existing code computing the len
of slices needing type annotation because the len is later used in
a comparison for which the compiler is unable to determine if
the len is `Signed<usize>` or `usize`.
2022-10-01 13:15:11 +02:00
François Laignel
a787197254
Use CompatibleFormattedValue where applicable
...
See https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1059
2022-07-11 19:45:52 +02:00
Piotrek Brzeziński
1d78ac9323
examples: Update playback-tutorial-6 with new getters
2021-11-28 21:00:05 +01:00
Piotrek Brzeziński
31b78f483e
examples/tutorials: Add missing playback tutorials
2021-11-25 00:13:19 +01:00
Sebastian Dröge
27613a8901
examples/tutorials: The get-XXX-tags
signals on playbin can return a None
taglist
2021-11-21 18:38:39 +02:00
Bilal Elmoussaoui
1ffcea4da7
manual changes post ObjectExt::emit_by_name update
2021-11-21 09:40:27 +01:00
Bilal Elmoussaoui
e3a65a3a88
gst object: add a panicking variant of set_property_from_str
...
Similar to what was added to ObjectExt
2021-11-08 14:42:59 +01:00
Bilal Elmoussaoui
213020165a
manual changes post ObjectExt improvements
2021-11-08 14:42:59 +01:00
Sebastian Dröge
92f9f3be39
Remove various unnecessary & from property/structure field related code
2021-10-24 20:52:23 +03:00
François Laignel
f83b385487
tutorial: take advantage of Div impl on Percent
2021-10-18 14:30:59 +02:00
François Laignel
986a136492
clock_time & format: basic opt-ops impl
...
The option-operations crate provides traits to improve usability
when dealing with `Option`s, which is often the case with
`ClockTime` & most formats.
2021-10-18 14:30:59 +02:00
Sebastian Dröge
37c3d2d8e0
Update for glib::source_remove() removal
2021-10-12 09:30:10 +03:00
Sebastian Dröge
bdccaeee0d
gstreamer: Manually implement Object::set_property_from_str() to be able to catch deserialization errors
2021-08-17 09:12:38 +03:00
Sebastian Dröge
a091ea201c
examples/tutorials: Use cocoa crate to initialize the shared NSApplication instance
...
This is required for OpenGL to work nowadays on macOS. Simply running an
CFRunLoop on the main thread is not sufficient.
Thanks to Philippe Normand for testing this on macOS and making sure it
actually compiles and works.
2021-07-13 07:42:46 +00:00
Marijn Suijten
bea15b8ebd
tutorials/13: Use nested or patterns, available since Rust 1.53
2021-07-05 06:36:57 +00:00
François Laignel
e31ce9d07b
Manual ClockTime updates
2021-06-04 22:09:38 +02:00
François Laignel
90bb458e64
Rework ClockTime & FormattedValues
2021-06-04 22:09:38 +02:00
Sebastian Dröge
04e6c1b547
app: Remove signals bindings from appsrc/appsink for the signals that also have callbacks
...
The callbacks are more flexible and performant.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/338
2021-05-30 23:00:44 +03:00
Sebastian Dröge
b1088a6d11
tutorials/basic-tutorial-13: Make sure that acquiring the main context actually succeeds
2021-05-18 12:16:59 +03:00
Sebastian Dröge
6b8bfd2701
tutorials/basic-tutorial-13: Store the main context acquire guard in a variable
...
Otherwise it will be immediately released again.
2021-05-18 11:43:37 +03:00
François Laignel
49583597ed
manual code: fix-getters-def doc aliases
2021-05-03 20:46:57 +02:00
Marijn Suijten
f89e840d27
Remove redundant prelude imports
...
When importing the prelude of a crate like `gst` the `glib` prelude is
provided too. Shedding these imports saves quite a few lines and
adheres to keeping it simple; we're not reexporting base/parent preludes
for no reason :)
2021-04-29 12:05:13 +02:00
yatinmaan
ffe6821813
tutorials: Add playback-tutorial-1
2021-04-28 02:28:38 +05:30
Sebastian Dröge
eda1d3d4a7
Update for Value trait refactoring
2021-04-25 14:45:08 +03:00
François Laignel
1395d773c3
manual fixes remove get prefix round 2
2021-04-20 18:18:02 +02:00
François Laignel
6ab9164dca
fix-getters-calls 0.3.0 pass
2021-04-20 18:18:02 +02:00
François Laignel
e80a29372a
fix-getters-def 0.3.0 pass
2021-04-20 18:18:02 +02:00
François Laignel
99616ec0b4
post fix-getters manual updates
2021-04-13 17:54:40 +02:00
François Laignel
53be8e5f58
fix-getters-{def,calls} pass
2021-04-13 17:54:40 +02:00
Sebastian Dröge
8b71f5331a
examples/tutorials: Update for new Bus::connect_message() API that takes signal details
2021-02-28 19:08:50 +02:00
Sebastian Dröge
efb249f7b9
tutorials: Change from set_property_with_value() to set_property_from_value()
2021-02-23 12:11:48 +02:00
Sebastian Dröge
b5d5838d96
examples/tutorials: Change from emit() to emit_by_name()
...
And set_property_generic() to set_property_with_value()
2021-02-22 17:28:05 +02:00
Guillaume Gomez
a3f6f710a9
tutorials/basic-tutorial-13: Add "\r" at each println to fix the raw terminal display
2021-01-09 16:08:06 +01:00
Guillaume Gomez
2fcaaa53ce
Add basic tutorial 13 from C gstreamer examples
2021-01-08 15:49:30 +01:00
Sebastian Dröge
d84336dc12
tutorials/basic-tutorial-5: Don't unnecessarily cast float literals to f64
...
error: casting float literal to `f64` is unnecessary
--> tutorials/src/bin/basic-tutorial-5.rs:141:13
|
141 | 1.0 as f64,
| ^^^^^^^^^^ help: try: `1.0_f64`
|
2020-12-29 16:56:13 +02:00
Fernando Jiménez Moreno
dfa3812ccc
Playback tutorial 4: Progressive streaming
2020-12-16 11:10:51 +00:00
Marijn Suijten
5afca49a7b
gstreamer: Propagate nullability changes into manual code
2020-12-04 19:37:07 +01:00
Sebastian Dröge
a6c8fe0c8a
Use repr(transparent) where it is more correct and get rid of some unneeded repr(C)
2020-10-24 17:09:10 +00:00
Sebastian Dröge
ad1d78b599
examples: Move to Rust 2018 edition
2020-10-10 11:00:48 +03:00
Sebastian Dröge
096ce958a4
tutorials: Move from failure to anyhow
2020-10-10 10:52:15 +03:00
Sebastian Dröge
fb779b42a8
Use glib::timeout_add_local() instead of removed gtk::timeout_add()
2020-08-27 09:49:27 +03:00
Guillaume Gomez
6752ef8a69
tutorials: Add resample element to the pipeline in tutorials 3
2020-07-10 11:12:38 +02:00
Guillaume Gomez
7d28106c2e
tutorials: Improve code of tutorial 3 a bit by removing unneeded downgrades and
...
using closure parameters instead of capturing variables
2020-07-10 11:12:36 +02:00
Sebastian Dröge
9cc99b27e0
gstreamer/element: Let post_message() and post_error_message() take ownership of the message
...
This is more in line with the C API and simplifies callers in Rust.
2020-06-30 23:55:02 +03:00
Sebastian Dröge
947ac8db5c
Name functions returning a builder builder(), not new()
...
And also make the video event API more consistent with the normal event
API.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/269
2020-06-25 19:42:33 +03:00
François Laignel
c94baa4fe8
query: add constructor on target types
...
... and deprecate the `Query::new_*` forms.
2020-06-25 10:48:25 +02:00
François Laignel
f421d878b6
message: add constructor on target types
...
... and deprecate the `Message::new_*` forms.
2020-06-25 10:48:20 +02:00
Sebastian Dröge
bfde1fd9d5
Update for new_with_XXX/new_from_XXX function renaming
2020-06-16 11:45:12 +03:00
alleynb
86e6d3afa4
tutorials/tutorial-6: Improve caps output
...
Fixed printing of pad capabilites in tutorial6.
Output now displays the capability lists eg:
layout:{ (string)interleaved, (string)non-interleaved }
The origional broken output was being displayed as:
layout:SendValue(Value(GString(Foreign(0x557140c99d00, 40))))
2020-04-21 12:01:41 +01:00