Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Zeeshan Ali
gstreamer-rs
Commits
150527f7
Commit
150527f7
authored
Sep 10, 2017
by
Sebastian Dröge
🍵
Browse files
Fix Player constructor on GStreamer 1.12 if a video renderer or signal dispatcher are given
parent
b4cb81cd
Changes
1
Hide whitespace changes
Inline
Side-by-side
gstreamer-player/src/player.rs
View file @
150527f7
...
...
@@ -19,17 +19,16 @@ impl Player {
signal_dispatcher
:
Option
<&
PlayerSignalDispatcher
>
,
)
->
Player
{
assert_initialized_main_thread!
();
let
video_renderer
=
video_renderer
.to_glib_full
();
let
signal_dispatcher
=
signal_dispatcher
.to_glib_full
();
let
(
major
,
minor
,
_
,
_
)
=
gst
::
version
();
if
(
major
,
minor
)
>
(
1
,
12
)
{
let
video_renderer
=
video_renderer
.to_glib_full
();
let
signal_dispatcher
=
signal_dispatcher
.to_glib_full
();
unsafe
{
from_glib_full
(
ffi
::
gst_player_new
(
video_renderer
,
signal_dispatcher
))
}
}
else
{
// Workaround for bad floating reference handling in 1.12. This issue was fixed for 1.13 in
// https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/gst-libs/gst/player/gstplayer.c?id=634cd87c76f58b5e1383715bafd5614db825c7d1
let
video_renderer
=
video_renderer
.to_glib_none
();
let
signal_dispatcher
=
signal_dispatcher
.to_glib_none
();
unsafe
{
from_glib_none
(
ffi
::
gst_player_new
(
video_renderer
.0
,
signal_dispatcher
.0
))
}
unsafe
{
from_glib_none
(
ffi
::
gst_player_new
(
video_renderer
,
signal_dispatcher
))
}
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment