Commit Graph

59 Commits

Author SHA1 Message Date
Rafostar
7431f58034 Prefer "set_playlist" over "set_media" method 2020-12-15 18:15:40 +01:00
Rafostar
b4e52d654b Pass WebSocket data without additional signal connection 2020-12-15 12:36:06 +01:00
Rafostar
660b5c6c48 Use underscore in WebSocket API 2020-12-12 20:10:06 +01:00
Rafostar
ea7b712b2e Send player state via WebSockets 2020-12-12 19:37:07 +01:00
Rafostar
d5d5aa9bac Integrate basic web server functionality into player 2020-12-11 23:38:49 +01:00
Rafostar
73b803abdb Compatibility with latest GTK4 git 2020-12-10 11:51:55 +01:00
Rafostar
c3d60a600e Wait for stop after playback instead of forcing it 2020-12-03 11:20:42 +01:00
Rafostar
7a66da1fed Add option to close player after playback 2020-12-03 11:04:37 +01:00
Rafostar
58afaa2c76 Apply custom initial volume on realize 2020-11-30 11:26:38 +01:00
Rafostar
5206dc543d Properly store and restore last volume value on startup
We cannot depend on the value saved by GStreamer, cause it is shared with all GStreamer based apps. Lets save the last value to gsettings instead to make sure this is the volume we used with this app. With this change we can also see the right volume on startup before media file is loaded (previously it was shown always as muted).
2020-11-30 11:16:21 +01:00
Rafostar
e7ad0143a5 Use cubic scale for volume. Fixes #21
Volume sliders should usually adjust volume using cubic scale. This also changes max volume to 150% which should be louder than previous value anyway.
2020-11-30 09:26:27 +01:00
Rafostar
3fcd612e6e Support loading external subtitles and multiple videos 2020-11-24 11:12:43 +01:00
Rafostar
1947140def Toggle fullscreen with "f" key 2020-11-18 17:05:12 +01:00
Rafostar
6788f234aa Flatpak: add more black rendering improvements to patch 2020-11-17 13:20:03 +01:00
Rafostar
7226a59cea Set (un)inhibit screen earlier 2020-11-10 23:16:45 +01:00
Rafostar
f644710762 Set popover parent only once and unset on app close 2020-11-10 18:11:59 +01:00
Rafostar
0c307bc606 Ignore state change signals during app exit 2020-11-09 21:45:59 +01:00
Rafostar
314b66b7fd Disconnect close-request signal before exit 2020-11-09 21:35:17 +01:00
Rafostar
9be93c66f1 Improve obtaining initial player dragging coords 2020-11-06 20:33:14 +01:00
Rafostar
868c39f1cf Store and restore floating window size 2020-11-06 19:43:38 +01:00
Rafostar
eb1a495907 Reduce number of source files (cleanup) 2020-11-06 17:04:54 +01:00
Rafostar
da21c2fafc Add fast seeking support as a patch 2020-11-05 16:13:57 +01:00
Rafostar
de7a850cc2 Create gio settings only once 2020-11-04 15:05:16 +01:00
Rafostar
ff58713426 Add "Floating Window Mode"
A simple borderless window floating on desktop. Window can be resized and moved by dragging. It also has some minimalistic controls showing on top of the video when cursor is hovering over it.\n\n This was a feature originally requested by @zahid1905.
2020-11-03 17:40:19 +01:00
Rafostar
a019ef90ca Remember and restore last window dimensions on launch 2020-10-31 09:04:41 +01:00
Rafostar
19e1a20bf7 Start fullscreen playback after toplevel state is changed 2020-10-30 22:51:30 +01:00
Rafostar
556809c1f4 Add GStreamer plugin ranking to preferences 2020-10-26 16:45:37 +01:00
Rafostar
31f208006f Add startup fullscreen and volume preferences 2020-10-26 11:07:01 +01:00
Rafostar
9354042379 Add preferences dialog
Allows customizing various settings. For now it includes player seeking times and mode customization. More options will be added in the future.
2020-10-25 10:14:14 +01:00
Rafostar
576440faff Fix update media end time 2020-10-23 10:26:11 +02:00
Rafostar
cc4757aef5 Do not hide controls while navigating panel 2020-10-21 13:19:38 +02:00
Rafostar
0291377389 Major code cleanup 2020-10-20 22:30:15 +02:00
Rafostar
c9d9927bb1 Remove unused mainloop 2020-10-16 21:45:32 +02:00
Rafostar
7f1264ae27 Add fast seeking (disabled by default)
The fast seeking option. It seeks to the next keyframe which reduces seeking delay over 10 times, but makes the seeking very inaccurate as a side effect (usually up to few seconds from requested position).
2020-10-16 20:00:22 +02:00
Rafostar
8297be45ba Add player seek_done property 2020-10-16 13:24:18 +02:00
Rafostar
eafc65d15d Go back to beginning after playback ends 2020-10-16 12:13:00 +02:00
Rafostar
12c1251c9b Update video info during non-local file playback
With this player will always show current video resolution when playing fragmented media like HLS or MPD online videos
2020-10-16 00:21:43 +02:00
Rafostar
fa07c4532c Fix player process not exiting after window close 2020-10-15 17:54:28 +02:00
Rafostar
1f6a9b59d6 Restore button presses 2020-10-13 23:47:13 +02:00
Rafostar
b1ca9c15bc Restore scrolling on player 2020-10-13 22:07:22 +02:00
Rafostar
3e96a13f00 Restore window dragging by drag on player 2020-10-13 20:32:59 +02:00
Rafostar
d3e4f3bb0f Add player motion and key controllers 2020-10-12 16:25:54 +02:00
Rafostar
352eff89b7 Fix volume button icon and window key events 2020-10-07 18:18:44 +02:00
Rafostar
bae0b805ea Initial GTK4 port
Port most of the player to GTK4. Some things are still broken or disabled due to GTK change, but will be gradually fixed.
2020-10-05 21:19:29 +02:00
Rafostar
1ce533259b Auto initialize Gst and change one player function name 2020-09-21 20:51:01 +02:00
Rafostar
2225aa2343 Fix playlist file relative path handling 2020-09-17 13:00:45 +02:00
Rafostar
71659491c0 Support changing rank of codecs
The used GStreamer codecs are picked using rank hierarchy. When there are 2 or more decoders available that can handle the same stream type, the one with higher rank is always picked. This commit adds a function for the codec rank manipulation that can be used for e.g. force disable/enable VAAPI. Should be a neat feature once we have a settings dialog where it can be used.
2020-09-13 20:21:46 +02:00
Rafostar
c34df72f96 Drop all player signals on destroy 2020-09-13 17:20:07 +02:00
Rafostar
1860114b7c Trim playlist from whitespaces 2020-09-13 11:23:55 +02:00
Rafostar
059ee932fe Skip non-existing files in playlist 2020-09-13 11:13:04 +02:00