Rafał Dzięgiel
79e12a6e36
YT: support obtaining info from player API
2021-03-19 10:26:46 +01:00
Rafał Dzięgiel
36d4a5c848
YT: replace some URL chars with slashes instead encoding it
...
Avoid dashdemux string query omission bug by using URL path with slashes instead of query string
2021-03-18 09:40:46 +01:00
Rafał Dzięgiel
38e5bae199
Replace lookbehind regexp
...
This was only supported in latest GJS version
2021-03-18 09:28:00 +01:00
Rafał Dzięgiel
fcff4b4450
Store all temp files in app named temp subdirectory
2021-03-17 11:57:02 +01:00
Rafał Dzięgiel
4021745a56
YT: set the same user agent as in player client
2021-03-17 10:47:38 +01:00
Rafał Dzięgiel
bd20d305ba
YT: store reusable alive info in temp folder
2021-03-17 10:38:39 +01:00
Rafał Dzięgiel
d9b35b7fb8
YT: try only once
...
Avoid triggering 429 ban, by not trying second time
2021-03-16 19:45:33 +01:00
Rafał Dzięgiel
f1e00434ba
Fix reference to undefined object
2021-03-16 13:44:22 +01:00
Rafał Dzięgiel
918157be04
Cooooookies!!!
2021-03-16 13:12:44 +01:00
Rafał Dzięgiel
72b55939b4
YT: abort on 429 error
2021-03-16 10:33:31 +01:00
Rafał Dzięgiel
e0a3ef78db
YT: pass download info using object intead of array
2021-03-16 10:20:01 +01:00
Rafał Dzięgiel
4f46a7eaa8
YT: handle embedded videos URIs
2021-03-15 20:15:24 +01:00
Rafał Dzięgiel
050ef440dc
Merge pull request #54 from Rafostar/yt-cache
...
YouTube cache
2021-03-15 16:37:55 +01:00
Rafał Dzięgiel
a4d55f8114
YT: store and load decipher actions from Clapper cache dir
2021-03-15 16:35:36 +01:00
Rafał Dzięgiel
aa60c56a58
Treat "yt" and "youtube" URI schemes as YouTube videos
...
You can set URI to "yt://VIDEO_ID" for YouTube videos
2021-03-15 13:40:50 +01:00
Rafał Dzięgiel
8c307dc90f
YT: save decipher actions only after successful deciphering
2021-03-15 13:14:41 +01:00
Rafał Dzięgiel
5b6141ee8c
YT: do not check player ID if actions are cached
2021-03-15 13:07:12 +01:00
Rafał Dzięgiel
8f294604dc
Remove drop target from top revealer
...
It is causing various issues unfortunately
2021-03-14 23:33:29 +01:00
Rafostar
06f8e5d259
YT: cache current decipher actions
2021-03-14 21:00:18 +01:00
Rafostar
6370e1126b
YT: check if decipher produced result
2021-03-14 16:50:23 +01:00
Rafostar
270e59137d
YT: check if player URI is valid
2021-03-14 16:39:22 +01:00
Rafostar
ec18ca989a
YT: decipher videos with signatures
...
Increase amount of playable YouTube videos by deciphering the ones that require to do so.
Many thanks to "node-ytdl-core" devs for JS regular expressions needed for YouTube player parsing.
2021-03-14 15:51:19 +01:00
Rafał Dzięgiel
46d24536c0
Do not keep invalid YT video info
2021-03-12 15:10:18 +01:00
Rafał Dzięgiel
c89d488c30
Prefetch YouTube video info on hover
...
Speed up loading of YouTube videos by downloading and parsing their info before video is dropped into player.
2021-03-12 13:05:58 +01:00
Rafał Dzięgiel
01c26cbbc3
Small text formatting fix
2021-03-12 08:50:52 +01:00
Rafał Dzięgiel
4375077dbc
Decode custom video title from info
...
The values in JSON info are URI encoded with "+" signs, add custom decode function that decodes them.
2021-03-11 18:49:08 +01:00
Rafał Dzięgiel
fceb8ff70a
YouTube support. Closes #46
2021-03-11 17:34:54 +01:00
Rafał Dzięgiel
6dc37088cf
Fix error when playback finishes during controls reveal animation
2021-03-08 10:37:40 +01:00
Rafostar
4e85f6b749
API: set some common user agent
...
Some internet sites might prevent us from access unless some sort of a user agent is set
2021-03-07 21:37:01 +01:00
Rafostar
0cd82b1b8a
API: remove video sink plugin selection
...
Clapper only has and supports one video sink. I would rather replace it than forcing support for multiple plugins.
2021-03-06 22:09:27 +01:00
Rafostar
39da52dd62
Sink: unlock widget before setting queue
...
Let GTK handle setting queue resize/render on the widget. We are not accessing widget values at this time, so it can be unlocked. It will be locked back during the render.
2021-03-06 19:16:28 +01:00
Rafał Dzięgiel
9c12afbf80
Sink: rename into GstClapperGLSink
...
The customized GTK4 sink version has few differences from the one shipped as part of GStreamer. Rename custom sink to GstClapperGLSink to avoid confusion.
2021-03-06 00:24:31 +01:00
Rafał Dzięgiel
e3c9b112e2
Sink: remove gtkconfig header
...
Remove another leftover meant for GTK3 compatibility
2021-03-05 23:27:08 +01:00
Rafał Dzięgiel
13d675beff
Sink: merge gtkwidget into single class
...
Same as with video sink. Clapper uses only one so no need for subclassing.
2021-03-05 23:23:34 +01:00
Rafał Dzięgiel
95c3845398
Sink: merge gstsink into single class
...
Clapper only uses single video sink. No need for subclassing it.
2021-03-05 21:06:03 +01:00
Rafał Dzięgiel
93549a67af
Sink: remove ignore_alpha property
...
GTK4 no longer supports ignoring alpha
2021-03-05 19:26:29 +01:00
Rafał Dzięgiel
07fb0a9a46
Sink: remove GTK4 if-defs
...
Clapper works with GTK4, so reduce codebase by removing GTK3 leftovers
2021-03-05 19:02:14 +01:00
Rafał Dzięgiel
fe3fd32932
Sink: keep track of widget allocation size
...
Instead of obtaining allocation size on each frame draw, keep track of its current size and update value on its change.
2021-03-05 18:41:26 +01:00
Rafał Dzięgiel
637212f7e8
Sink: move GL drawing logic into single function
...
No need having it in another function with additional call if it is used only from single place.
2021-03-05 18:10:35 +01:00
Rafał Dzięgiel
8b2e63ac48
Update README.md
2021-02-28 14:56:19 +01:00
Rafał Dzięgiel
f4968e28ab
0.1.0
0.1.0
2021-02-26 10:19:03 +01:00
Rafał Dzięgiel
68e10f1af4
Revert "Flatpak: update GStreamer to 1.18.3"
...
This reverts commit b3b0371c76
.
It seems that newer GStreamer version has more new bugs then noticeable fixes.
2021-02-25 21:02:34 +01:00
Rafał Dzięgiel
2f3fac7d81
Flatpak: add broadway variable type fix patch
2021-02-25 09:51:24 +01:00
Rafał Dzięgiel
6b4521c49a
Make video chapter popover easier to read when fullscreen
2021-02-25 09:27:07 +01:00
Rafał Dzięgiel
a0cd05fbe3
Workaround GTK4 revealers transition switch bug
...
Changing transition in middle or when not fully revealed has dire consequences, seems to be a GTK4 bug. Workaround this bug by switching top revealer transition type only when fully revealed.
2021-02-25 09:24:02 +01:00
Rafał Dzięgiel
d2d43db2c9
Do not update time if top grid is invisible
2021-02-24 18:27:40 +01:00
Rafał Dzięgiel
b7b1dad81c
Allow adjusting playback speed with scroll
2021-02-24 17:29:24 +01:00
Rafał Dzięgiel
e859f5d518
Fix opening files from web application
...
It was trying to send GioFiles over WebSocket. The idea of doing that seems so dumb, that I do not know why I did not notice this issue earlier.
2021-02-24 17:05:49 +01:00
Rafał Dzięgiel
53ad4da7c6
Remove useless run method override
2021-02-24 16:46:25 +01:00
Rafał Dzięgiel
db8d060841
Mark as optimized for Phosh
...
Player window is considered mobile friendly with its transitions and touch/swipes gestures implemented. The only missing part now is preferences window that needs moving to libadwaita. Due to video playback being mobile friendly, mark this app as Purism Mobile compatible which will allow the app to appear on mobile app store and show the app icon in app launcher.
2021-02-24 15:58:37 +01:00