Commit graph

176 commits

Author SHA1 Message Date
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
Alexandre Moreno
3542cae138 playback/player: qt: add position update interval property 2015-10-24 11:25:41 +03:00
Sebastian Dröge
13156a713d playback/player: qt: Fix -Wunused-variable compiler warnings 2015-10-23 21:54:05 +03:00
Alexandre Moreno
c8d7277d70 playback/player: qt: add stream selection support 2015-10-23 00:20:17 +03:00
Alexandre Moreno
2ea1c9aee7 playback/player: qt: emit player signals from Qt event loop 2015-10-06 16:40:27 +01:00
Alexandre Moreno
82b2c53618 playback/player: Add Qt bindings and player 2015-10-04 19:09:50 +01:00
Jimmy Ohn
09864feff4 playback/player: gst-play: trivial cleanup 2015-10-04 18:54:54 +01:00
Sebastian Dröge
15d62dcfe6 playback/player: gtk-play: Run gst-indent 2015-09-21 14:20:24 +02:00
Hyunjun Ko
5903c7cd5e playback/player: gtk-play: change to use valid macro function 2015-09-17 15:45:24 +02:00
Jimmy Ohn
4dcc43b935 playback/player: gtk-play: Modify switch statement in stream_info_get_string
In stream_info_get_string function, buffer variable is used
all switch case repeatedly. Also, return used in switch statement.
So, I have modified that cases.
2015-09-15 17:49:22 +02:00
Jimmy Ohn
c454b2914e playback/player: gst-play: Check if the stream list is empty in print_all_stream_info
Add a check condition if the stream list is empty before using it.
2015-09-15 17:49:22 +02:00
Sebastian Dröge
b5c10865aa playback/player: gtk-play: Add compiler warning flags to the build and fix the warnings 2015-09-04 18:11:25 +03:00
Justin Kim
0caa80c26f playback/player: ios: remove implicit conversion of UIView to c pointer 2015-09-04 12:12:52 +03:00
Alexandre Moreno
6e9e9228bd playback/player: gtk-play: Remove unused variable 2015-09-01 21:45:50 +03:00
Sebastian Dröge
371f4ec378 playback/player: gst-play: Remove useless variable initializations
They are set to something in the next line anyway.
2015-08-27 10:54:52 +03:00
Jimmy Ohn
50099a3aa1 playback/player: gst-play: Check if the stream list is empty in print_all_stream_info before using it 2015-08-27 10:54:11 +03:00
Sebastian Dröge
e2581982a6 playback/player: gst-play: Fix leak of GError and GOptionContext on parsing errors 2015-08-20 10:50:30 +03:00
Sebastian Dröge
c581233464 playback/player: android: Fix video rendering after GstPlayerVideoRenderer refactoring 2015-08-18 13:20:15 +03:00
Sebastian Dröge
80e4c1abff playback/player: ios: Fix video rendering after GstPlayerVideoRenderer refactoring 2015-08-18 13:17:57 +03:00
trungdoan
2da236d871 playback/player: iOS: Fix build issue
Fix build issue on iOS by adding additional files in lib/gst/player to
the iOS project.
2015-08-18 13:02:41 +03:00
Sebastian Dröge
a8f8d1b032 playback/player: player: Refactor video rendering API
There's a GstPlayerVideoRenderer interface now, which defines how video
rendering happens in GstPlayer. Included is an implementation for the
GstVideoOverlay interface, and inside the GTK example application one for
gtksink/gtkglsink.
2015-08-14 17:13:39 +02:00
Sebastian Dröge
6ed6b58929 playback/player: player: Abstract the signal emission dispatching to a new interface
This allows to implement signal dispatching to other event loop systems than
GLib without having direct GLib support in the base GstPlayer class. A
implementation for the GLib main context is provided and used in the
applications and tests.
2015-08-12 18:13:31 +02:00
Sebastian Dröge
f68bac6318 playback/player: gtk-play: Fix indention 2015-07-30 15:54:26 +03:00
Brijesh Singh
7a874938a0 playback/player: gtk-play: if title is NULL then use uri basename in toolbar label
If stream title is not available in the stream then use file basename in
toolbar title label and full uri in window title bar.
2015-07-30 15:54:16 +03:00
Brijesh Singh
a18cefb73c playback/player: gtk-play: fix elapsed and remain time label
If elapsed or remain time is greater than 60 mins then add hours in
label text.
2015-07-30 15:54:16 +03:00
Víctor Manuel Jáquez Leal
a8bb7e0199 playback/player: gtk-play: handle keys
Add a mplayer alike key-binding.
2015-07-26 19:51:36 +03:00
Víctor Manuel Jáquez Leal
64a73ff36b playback/player: gtk-play: remove unused callback 2015-07-20 20:31:45 +03:00
Víctor Manuel Jáquez Leal
0a38d36996 playback/player: gtk-play: remove unused variables 2015-07-20 20:31:45 +03:00
Brijesh Singh
b59a893da7 playback/player: gtk-play: add support to build UI through gtkbuilder
- build toolbar ui from glade generated xml files
- build media info dialog from glade generated xml files
- add support to apply css style on widget
- multiple cleanups
2015-07-07 23:49:09 +03:00
Sebastian Dröge
cce3ab6381 playback/player: gtk-play: Add close button to the playback speed dialog 2015-06-16 09:54:25 +02:00
Brijesh Singh
efd3c03ab2 playback/player: gtk-play: add playback rate control menu item 2015-06-16 09:52:18 +02:00
Sebastian Dröge
3afafa30c6 playback/player: gtk: Also use gtksink if available 2015-06-15 20:55:29 +02:00
Víctor Manuel Jáquez Leal
ba1ea11823 playback/player: gtk-play: remove unused variables 2015-06-11 20:11:31 +02:00
Sebastian Dröge
40e21cea24 playback/player: gtk: Inhibit the screen saver when playing something 2015-06-11 18:52:12 +02:00
Sebastian Dröge
b5e35ad70b playback/player: gtk: Port to GtkApplication
And also clean up some other things.

https://github.com/sdroege/gst-player/issues/56
2015-06-11 18:42:38 +02:00
Sebastian Dröge
362b5ce2a5 playback/player: gtk: Remove redundant code 2015-06-11 16:25:49 +02:00
Sebastian Dröge
78142bf4ea playback/player: gtk: Use gtkglsink if available 2015-06-11 15:12:56 +02:00
Brijesh Singh
2a2c10ac25 playback/player: gtk-play: use volume-changed signal from player to update the volume slider. 2015-06-11 14:32:25 +02:00
Víctor Manuel Jáquez Leal
80eefca0d1 playback/player: gtk-play: color balance dialog 2015-06-11 14:27:38 +02:00
Sebastian Dröge
b647f6858a playback/player: gtk: Only go to PLAYING with the next file if we were in PLAYING state before
Otherwise setting a subtitle URI in PAUSED will automatically go to PLAYING.
2015-06-11 13:09:25 +02:00
Víctor Manuel Jáquez Leal
91379afe55 playback/player: gtk-play: remove unused variables 2015-06-10 22:38:35 +02:00
Víctor Manuel Jáquez Leal
ddc42da7fe playback/player: gtk-play: destroy dialog's parent window 2015-06-10 22:38:09 +02:00
danny song
07a074be04 playback/player: gtk-play: remove duplicate code 2015-06-10 22:33:21 +02:00
danny song
76fb77bfe8 playback/player: gtk-play: move play_current_uri after the signal handler registration 2015-06-10 22:30:09 +02:00
Sebastian Dröge
5aa6c468a0 playback/player: player: Change visualization API a bit to be more user friendly and fix some leaks and other bugs 2015-05-30 11:35:25 +02:00
Sebastian Dröge
999365f0d2 playback/player: Fix indention 2015-05-30 10:48:34 +02:00
Brijesh Singh
b69cbd6b70 playback/player: gtk-player: add visualization selection menu item. 2015-05-20 08:24:52 -05:00
Brijesh Singh
571cdae9da playback/player: gtk-play: add external subtitle selection menu 2015-05-19 10:34:49 -05:00
Sebastian Dröge
ddd7213959 playback/player: ios: Cast the seek slider value from float to integer after scaling
https://github.com/sdroege/gst-player/issues/33
2015-05-13 22:30:48 +03:00
Brijesh Singh
75404ed8e3 playback/player: gtk-play: move duplicate code into one function 2015-05-12 10:59:16 +03:00
Sebastian Dröge
21eb4b1ac7 playback/player: android: Unref player in native_free()
This makes sure it is actually shut down and does not emit any signals anymore
later, and also prevents a memory leak.
2015-05-11 09:23:27 +02:00
Sebastian Roth
4e899336b3 playback/player: README.md formatting. 2015-05-11 08:50:41 +02:00
Brijesh Singh
562c06c150 playback/player: gtk-play: add Open, Quit, Next and Previous menu items in popup menu. 2015-05-11 08:48:12 +02:00
Brijesh Singh
329902bcda playback/player: gtk-play: hide toolbar in fullscreen mode. 2015-05-11 08:48:12 +02:00
Brijesh Singh
f904897493 playback/player: gtk-play: add fullscreen button 2015-05-08 15:50:07 +02:00
Brijesh Singh
eb42154608 playback/player: gst-play: add playlist loop command line option 2015-05-08 15:50:07 +02:00
Brijesh Singh
9a7d2f031f playback/player: gtk-play: add playlist loop button. 2015-05-08 15:50:07 +02:00
Brijesh Singh
15b1167746 playback/player: gtk-play: do not set window title in resume button cb.
Window title is set from media-info-updated signal hence
updating the window title in resume button callback will override
the title set from media-info-updated signal.
2015-05-08 10:12:31 +02:00
Brijesh Singh
1b1aed87c5 playback/player: gtk-play: display cover art
We maintain two drawing widgets, image and video. Cover art is drawn in
image widget and video is rendered in video widget. Based on the following
conditions we show either image or video widget:

- if media info does not have active video stream then hide video widget
  and show image widget.
- if media info contains active video stream then show video widget and
  hide the image widget.
2015-05-08 10:12:31 +02:00
Sebastian Roth
d33cc6c876 playback/player: android: Fix Windows build of the app
Fixes #36
2015-05-08 10:06:11 +02:00
Sebastian Roth
a31f95d06d playback/player: android: Use gradle & ndk-build combo to generate the Android App
Also add a video List selector.
2015-05-07 14:58:03 +02:00
Sebastian Dröge
59d822fc2b playback/player: gtk-play: Fix compiler warning
gtk-play.c:269:60: warning: passing 'gint *' (aka 'int *') to parameter of type 'guint *' (aka 'unsigned int *') converts between pointers to integer types
      with different sign [-Wpointer-sign]
      gst_player_video_info_get_pixel_aspect_ratio (video, &par_n, &par_d);
                                                           ^~~~~~
../lib/gst/player/gstplayer-media-info.h:92:57: note: passing argument to parameter 'par_n' here
                (const GstPlayerVideoInfo* info, guint *par_n, guint *par_d);
                                                        ^
gtk-play.c:269:68: warning: passing 'gint *' (aka 'int *') to parameter of type 'guint *' (aka 'unsigned int *') converts between pointers to integer types
      with different sign [-Wpointer-sign]
      gst_player_video_info_get_pixel_aspect_ratio (video, &par_n, &par_d);
                                                                   ^~~~~~
../lib/gst/player/gstplayer-media-info.h:92:71: note: passing argument to parameter 'par_d' here
                (const GstPlayerVideoInfo* info, guint *par_n, guint *par_d);
                                                                      ^
2015-05-07 13:21:52 +02:00
Sebastian Dröge
7396c221ed playback/player: Fix indention 2015-05-07 13:21:02 +02:00
Brijesh Singh
1232e80e20 playback/player: gtk-play: add track selection menu 2015-05-07 13:20:35 +02:00
Brijesh Singh
bbc6f056b1 playback/player: gtk-play: variable rename for consistency
rename media_info varible holding button state to be consistent with others.
2015-05-07 13:20:35 +02:00
Brijesh Singh
653c8c973e playback/player: gtk-play: handle duplicate uri in playlist
current logic does not play all the files from playlist if the list contains
a duplicate uris.
2015-05-07 13:20:35 +02:00
Brijesh Singh
88e7131ae7 playback/player: gtk-play: set window title from media information
If media contains title then use it to set player window title.
2015-05-07 13:20:35 +02:00
Brijesh Singh
611f3cde4b playback/player: gtk-play: remove gtk deprecated API. 2015-05-07 13:20:35 +02:00
Sebastian Dröge
544c51fe11 playback/player: Fix indention 2015-05-06 10:58:27 +02:00
Brijesh Singh
ef751e3dfd playback/player: gst-play: display global taglist 2015-05-06 10:55:08 +02:00
Alex Moreno
696e1c9ab8 playback/player: android: fixed compilation error 2015-05-06 10:43:28 +02:00
Alex Moreno
261081aade playback/player: android: check return values from JNI methods in 'JNI_OnLoad' 2015-05-06 10:43:28 +02:00
Alex Moreno
c3928830cf playback/player: android: remove unused variable 'gst_app_thread' 2015-05-06 10:43:28 +02:00
Sebastian Dröge
2a5ba6574f playback/player: android: Add gstplayer-media-info.c to the build
JNI bindings still need updating for the new media info API.

https://github.com/sdroege/gst-player/issues/30
2015-05-04 22:38:15 +02:00
Sebastian Dröge
bf8604dcf3 playback/player: player/gtk: Fix indention 2015-04-26 18:33:00 +02:00
Brijesh Singh
81238fdbcd playback/player: gtk-play: add media information window 2015-04-26 18:33:00 +02:00
Sebastian Dröge
3180177fc7 playback/player: player: Rename some more functions for consistency 2015-04-25 19:37:39 +02:00
Sebastian Dröge
2cfa987d89 playback/player: player: Rename gst_player_subtitle_get_language() to gst_player_subtitle_info_get_language() 2015-04-25 19:30:55 +02:00
Sebastian Dröge
da76b893c7 playback/player: gst-play: Add copyright notice for Brijesh Singh 2015-04-25 14:32:52 +02:00
Brijesh Singh
34c7b45906 playback/player: player: Add media information API
https://github.com/sdroege/gst-player/pull/21
2015-04-25 14:16:08 +02:00
Sebastian Dröge
7ca4b495c2 playback/player: gst-play: Fix compiler warning
gst-play.c:89:11: error: comparison of unsigned expression >= 0 is always true
      [-Werror,-Wtautological-compare]
  if (pos >= 0 && dur > 0) {
      ~~~ ^  ~
2015-04-25 14:03:12 +02:00
Jan Berkel
d270aec9d1 playback/player: ios: Make sure dimensions are valid
Layouting code crashes if 0/0 get passed

https://github.com/sdroege/gst-player/pull/22
2015-04-23 16:27:33 +02:00
Jan Berkel
109e63d7d7 playback/player: ios: Extract online media into plist
https://github.com/sdroege/gst-player/pull/20
2015-04-23 16:25:59 +02:00
Sebastian Dröge
7638d52c47 playback/player: Add VideoToolbox to the iOS project linker flags 2015-04-22 09:35:24 +02:00
Sebastian Dröge
8ba8714b20 playback/player: Stop using GSlice for allocations, it's deprecated soon and slower than malloc in most places 2015-03-06 09:38:16 +01:00
Xavier Claessens
8b41422c77 playback/player: android: Cast pointers to gintptr to simplify code 2015-03-03 18:04:36 +01:00
Sebastian Dröge
5035124050 playback/player: Update Android bindings to the latest API 2015-03-01 14:20:17 +01:00