Commit graph

162 commits

Author SHA1 Message Date
Víctor Manuel Jáquez Leal
dbb0375bfe playback/player: don't unref a contained widget
In the GTK+ model, when a wiget is created, it is floating, thus
when it is added to a widget container, this container is the owner
of the widget.

The video_area widget is created in two different paths:

1\ when the renderer element is also a GTK+ widget and we are
   the owners.
2\ when the renderer element is an overlay an video area a new
   widget owned by the container.

In the first code path, there was a memory leak fixed on commit
f8d4796a, but it didn't consider the second path, leading to a
segmentation fault because the owner of the widget is not us.

This patch unrefs early the video area widget in the first path
avoiding to unref it twice in the second path.

https://bugzilla.gnome.org/show_bug.cgi?id=781904
2017-05-02 14:11:30 +03:00
Víctor Manuel Jáquez Leal
ff1a6546da playback/player: don't unref gtk_sink but sink it
Commit 5b8ba60c was added because of a memory leak when gtksink was
used as renderer. Nonetheless the patch didn't consider two facts:

1\ that the gtk_sink element was in floating state
2\ there is another code path where the gtk_sink element is already
   sank

Thus the correct fix, is not to ref and unref gtk_sink, but sink it.

https://bugzilla.gnome.org/show_bug.cgi?id=781904
2017-05-02 14:11:30 +03:00
Carlos Rafael Giani
175f7c8da1 playback/player: qt: use QApplication instead of QGuiApplication
This avoids the following fatal error:

"QWidget: Cannot create a QWidget without QApplication"

https://bugzilla.gnome.org/show_bug.cgi?id=781789
2017-04-27 12:27:49 +03:00
Arun Raghavan
71d85d3393 playback/player/android: Make plugin list in Android.mk easier to read
Minor Makefile reformatting to make how users can select what plugins
they want easier to figure out.
2017-04-03 13:23:50 +05:30
Sebastian Dröge
5fc4fd5958 playback/player/qt: Fix build with new GstPlayer API
Configuration has a separate interface now.
2017-03-08 17:12:02 +02:00
Arun Raghavan
e17b52b501 playback/player/android: Fix assets directory
Needed with GStreamer <= 1.10 and newer Android Studio so that we
correctly place the assets with respect to the rest of the code.
2017-01-06 19:00:17 +05:30
Arun Raghavan
0ede8b3796 playback/player/android: Force externalNativeBuild before Java building
This is needed so that we copy over the Java files from gst-android that
include the GStreamer class which is used while compiling app.
2017-01-02 11:21:11 +05:30
Sebastian Dröge
4cd72781af playback/player/android: Add .gitignore 2016-10-03 13:15:27 +03:00
Sebastian Dröge
8b0ea8257f playback/player/android: Switch to native gradle ndk-build support
Based on a patch by Olivier Crete for another project
  be9470a7e1
2016-10-03 13:15:19 +03:00
Arun Raghavan
a5cdde9119 playback/player/android: Switch to building against universal packages 2016-09-04 10:12:52 +03:00
Sebastian Dröge
fc41dd802f Add meson build system for playback/player/{gst-play,gtk} and network/http-launch 2016-08-26 19:02:24 +03:00
Sebastian Dröge
f6cf0dd997 playback/player: gtk: Remove unused variable 2016-08-23 23:48:26 +03:00
Sebastian Dröge
d30c65f9f8 playback/player: Block value-changed signal when playing an URI to prevent spurious seeks 2016-08-23 19:02:53 +03:00
Arun Raghavan
5743b39d4e playback/player: android: Update build tools and gradle
New build tools needed for Instant Run, and Android Studio wants us to
update that and the gradle version.
2016-08-23 09:52:00 +03:00
Sebastian Dröge
1d760d92ed playback/player: gtk: Block value-change signal handler while updating the range of the seekbar too
I.e. when updating the duration. Changing the range might also change the
value, which would then trigger a seek.
2016-08-22 16:19:59 +03:00
Sebastian Dröge
89c74b3dd8 playback/player: gtk: Use GQueue instead of g_list_append() or the prepend-reverse trick 2016-08-18 15:48:57 +03:00
Maxin B. John
e82333ab70 playback/player: gtk-play: provide similar behaviour for quit and close
In x86 targets, gtk-play just pause rather than quitting the application
when we click the close button (delete-event). Change the callback function
to get similar behaviour when we click on "Quit" menu option.
2016-08-08 11:43:32 +02:00
Guillaume Desmottes
f8d4796a57 playback/player: gtk: fix widget leak
The ref returned by gst_player_gtk_video_renderer_get_widget() was never
released.
2016-07-21 20:34:40 +03:00
Guillaume Desmottes
5b8ba60c46 playback/player: gtk: fix gtkglsink leak
The ref returned by gst_element_factory_make() was leaked.
2016-07-21 20:34:40 +03:00
Guillaume Desmottes
10dd3a2177 playback/player: Call gst_deinit() in all applications at the end of main()
Needed to be able to track leaks using valgrind or the leaks tracer.
2016-07-21 20:32:43 +03:00
Sebastian Dröge
2435b0e37c playback/player: android: Update build tools version and ship gradle wrapper script 2016-05-10 22:01:54 +03:00
Emmanuel Imbernon
9c64ebb048 playback/player: ios: Sync gst_ios_init.[mh] with latest version
Fixes https://github.com/sdroege/gst-player/pull/154
2016-03-28 20:07:08 +03:00
Mariusz Wasak
edc4734383 playback/player: Changing icons names to make it visible on gtk player
Fixes https://github.com/sdroege/gst-player/pull/150
2016-03-22 18:30:27 +02:00
Mariusz Wasak
b46d26b81f playback/player: gtk: Change True to glib TRUE to make gtk player project compile
https://github.com/sdroege/gst-player/pull/149
2016-03-16 17:12:34 +02:00
Arun Raghavan
e8906735ae playback/player: android: Move to gradle based build 2016-02-11 21:52:44 +05:30
Sebastian Dröge
048de74441 playback/player: android: Register native_stop() with JNI
https://github.com/sdroege/gst-player/issues/143
2016-01-07 00:22:26 +02:00
Sebastian Dröge
f509043c1d playback/player: player: Build against GstPlayer version from gst-plugins-bad everywhere
The old version with everything included and buildable against GStreamer 1.6
can still be found in the gst-player-0.1 branch and will be continued to be
updated for a while.
2016-01-04 10:21:21 +02:00
Sebastian Dröge
addb63586b playback/player: player: Remove gst_player_new() and make gst_player_new_full() the normal constructor
In very few cases the simple version was actually needed and having the
parameters hidden by a _full() version caused application that actually needed
it to not use it.
2016-01-04 09:59:40 +02:00
Sebastian Dröge
8ccf31fcf9 playback/player: android: Fix compilation 2015-12-22 12:08:53 +01:00
Sebastian Dröge
af371bf38e playback/player: android: Allow building for multiple Android ABIs 2015-12-09 09:48:38 +02:00
Sebastian Dröge
eaed96145e playback/player: android: Don't do custom surface width/height calculations if we have no media width/height 2015-11-13 10:36:52 +01:00
Sebastian Dröge
00cad0da11 playback/player: android: Add more URI schemes, mimetypes and file extensions
Based on the AndroidManifest.xml of VLC for Android.
2015-11-13 10:36:24 +01:00
Sebastian Dröge
171c723592 playback/player: gtk: Remove double assignment of a variable 2015-11-09 21:35:57 +01:00
caseten
de7130efc2 playback/player: android: Fix typo for restricted codecs plugin 2015-11-08 15:22:51 +01:00
Sebastian Dröge
1d5a020a03 playback/player: Revert "android: Use gradle & ndk-build combo to generate the Android App"
This reverts commit a95ee9c61c371ec2b8d4ff59cace26451b11225a.

The gradle based build system has various problems currently.
2015-11-06 11:04:17 +01:00
Sebastian Dröge
9d8f476174 playback/player: Revert "android: Fix Windows build of the app"
This reverts commit 5d8c1868beec85ac02bcc6e0bfd0ad9dbb99a3b8.

The gradle based build system has various problems currently.
2015-11-06 11:04:14 +01:00
Sebastian Dröge
9ffdefc14f playback/player: Revert "README.md formatting."
This reverts commit 499f68c42371081204b6285227073a7eb165c652.

The gradle based build system has various problems currently.
2015-11-06 11:03:56 +01:00
Justin Kim
6cc6793d1f playback/player: gtk-play: change print format of guint64
guint64 type usually corresponds with 'G_GUINT64_FORMAT'.
2015-11-05 08:31:42 +01:00
Alexandre Moreno
e4ae2c3c7b playback/player: qt: add new qml item to render media info sample
when video is not available it will try to display the sample image
returned by media info object.
2015-11-02 09:28:51 +02:00
Alexandre Moreno
8853575547 playback/player: qt: accept a list of uris or files as command line parameters 2015-11-01 11:25:27 +02:00
Alexandre Moreno
1cebdf926c playback/player: qt: add simple playlist support and wire buttons 2015-11-01 11:25:27 +02:00
Alexandre Moreno
16a9b70155 playback/player: qt: add autoPlay property
When set to true will play current media set immediately, and if set to false
will show first frame (i.e. go to pause state)
2015-11-01 11:25:27 +02:00
Alexandre Moreno
736ba93518 playback/player: qt: seek while dragging seek bar
removed time label on top the seek bar, should be placed elsewhere
2015-11-01 11:23:09 +02:00
Alexandre Moreno
a8f242d48c playback/player: qt: do not hide playbar if it contains cursor 2015-11-01 11:21:35 +02:00
Sebastian Dröge
afd72fe79e playback/player: qt: Return a new reference to the renderer from VideoRenderer::renderer()
gst_player_new_full() takes ownership of it, and that's where it is usually
used. Without this we would create assertions on application shutdown.

Fixes #129
2015-10-27 19:01:58 +02:00
Alexandre Moreno
d0bc110836 playback/player: qt: add a destructor and release resources
Fixes #129
2015-10-27 18:51:53 +02:00
Alex Moreno
5dbeabcb76 playback/player: qt: consistent use of pixel sizes
See #124. We should switch everything to be device independent
at some point, but this at least gives us a consistent UI for the time being.
2015-10-27 17:35:49 +02:00
Alexandre Moreno
dbc1f82678 playback/player: qt: hide playbar properly
Fixes #120
2015-10-24 20:40:01 +03:00
Alexandre Moreno
d623c45b76 playback/player: qt: bind video item size to window
Fixes #119
2015-10-24 20:38:35 +03:00
Alexandre Moreno
512051bdd6 playback/player: qt: elide long titles
Fixes #121
2015-10-24 20:37:05 +03:00