Commit graph

181 commits

Author SHA1 Message Date
luis
82c788e77f network/http-launch: Defer the "200 OK" response until caps have been resolved, in order to
populate the HTTP content-type header, both on a "HEAD" or a "GET"
request.
2015-05-10 17:53:03 +02:00
luis
911a010532 network/http-launch: Encapsulate sending http responses in their own function, so they can be easily deferred (future work) 2015-05-10 14:28:15 +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
luis
58a2c722d9 network/http-launch: Make GList clients consistent (items valid always). 2015-05-05 13:45:49 +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
Luis de Arquer
ebe2883488 network/http-launch: Content-type header creation now happens into notify::caps signal handler 2015-03-18 21:39:26 +00: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
Sebastian Dröge
b7a1198170 playback/player: Add copyright header to GTK player 2015-03-01 14:04:00 +01:00
Sebastian Dröge
0b7383c104 playback/player: Make it possible to call play()/pause() after EOS to restart playback from the beginning 2015-03-01 14:01:17 +01:00
Sebastian Dröge
6342159440 playback/player: Fix indention 2015-03-01 13:59:03 +01:00
Sebastian Dröge
6f88388819 playback/player: Remove gst_player_is_playing()
The current state is now notified via the state-changed signal, and in
the GTK UI it was only used to keep track of the desired state.
2015-02-27 09:46:02 +02:00
Ross Burton
d0ef447da9 playback/player: gtk-play: show a file chooser if no URIs were passed 2015-02-27 09:41:17 +02:00
Luis de Arquer
d72375c22d network/http-launch: Minor format changes 2015-02-21 13:49:58 +00:00
Luis de Arquer
bb90ddfad1 network/http-launch: Content-type boundary tag is now taken from the multipartmux "boundary" property 2015-02-21 13:04:19 +00:00
Luis de Arquer
9da0c14273 network/http-launch: Add support for MJPEG streams using multipartmux 2015-02-21 12:33:17 +00:00
Sebastian Dröge
d828730591 playback/player: Don't skip to next track immediately in gst-play when seeking after the duration
Instead wait for end-of-stream for switching.
2015-02-08 11:52:11 +01:00
Sebastian Dröge
ae46c50138 playback/player: Make state handling more robust and notify the application about our states
The application now will get one of 4 states via a signal:
STOPPED: After EOS, error and when explicitely stopped
BUFFERING: When moving to the lower states, or we get buffering messages,
           also when seeking.
PAUSED and PLAYING: When having reached that state and it's our target

Also we now always first go to PAUSED state before we seek, and also before we
go to PLAYING. This allows us to deterministically change states and makes
everything a bit more robust.

As a side-effect, get rid of the is-playing property. Applications can now get
this from the corresponding signal if they need to know.

Additionally now notify the application about the buffering percentage.

Also fix a few bugs related to state handling and buffering.
2015-02-08 11:52:10 +01:00
Victor Sergienko
aaaea24c21 network/http-launch: segfault on GStreamer warnings because of wrong parsing function 2015-01-27 22:34:57 +01:00
Thibault Saunier
97c4cfc670 playback/player: android: Link against GLib 2.0 as it is necessary 2014-11-12 16:36:39 +01:00
Guillaume Seguin
28507ed0cf network/http-launch: Fix segfault
Message len was not updated when iterating in on_read_bytes
2014-10-17 14:43:25 +02:00