Rafał Dzięgiel
ce102b9c76
workflows: Use flatpak-builder action master version
...
Since "flatpak-builder" action uses deprecated "upload-artifact"
version, that can stop working soon, disable it and upload ourselves.
This is supported in master, but not in any tagged version,
so for now switch to using action from master branch.
Also bump used runtime to GNOME 47 when building.
2025-01-19 17:42:08 +01:00
Rafał Dzięgiel
4df812066f
clapper: enhancers-loader: Support loading extra enhancers
...
Allow setting an additional dir(s) with "CLAPPER_ENHANCERS_EXTRA_PATH" env.
This should allow to add other enhancers without removing default ones.
If app/user needs to remove default ones, "CLAPPER_ENHANCERS_PATH" env
can be set to empty.
2025-01-19 15:48:45 +01:00
Rafał Dzięgiel
8752d08113
clapper: enhancers-loader: Fix default enhancers dir on Win32
2025-01-19 15:48:34 +01:00
Rafał Dzięgiel
fe30ba24fa
clapper-gtk: extra-menu-button: Drop popover focus on unmap
...
Fixes #496
2025-01-18 18:31:03 +01:00
Rafał Dzięgiel
4472d87f8b
clapper-app: Show sink bin child name in info window
...
Sinks that are bin types often take another configurable sink through a property.
We want to show what was set there in info window too.
2025-01-18 17:27:39 +01:00
Rafał Dzięgiel
e35d04a742
clapper-app: Fix internal functions visibility
...
We have to export functions that are used from UI files, otherwise they are
not accessible. For this reason add a special internal visibility header.
2025-01-18 15:59:12 +01:00
Rafał Dzięgiel
f017b23798
Merge pull request #518 from Rafostar/win-installer
...
Provide Windows installer
2025-01-18 11:50:42 +01:00
Rafał Dzięgiel
3513c37f97
clapper-app: Fix declaration-after-statement warning
2025-01-17 21:57:34 +01:00
Rafał Dzięgiel
2225cc68c4
workflows: windows: Add cleanup step
...
Removal of things that will not be used in an installed app
2025-01-17 21:57:11 +01:00
Rafał Dzięgiel
228ef3e556
workflows: windows: Create installer instead of portable
...
It makes things much easier for the user, such as automatically associating
video files with Clapper, makes menu entries, optional desktop icon and takes
care of eventual uninstall and/or update later.
2025-01-17 21:53:36 +01:00
Rafał Dzięgiel
21417a1ae7
pkgs: Generate Inno Setup based Windows installer
2025-01-17 21:53:20 +01:00
Rafał Dzięgiel
5906d1b78e
clapper-app: Add Windows icon
2025-01-17 21:51:16 +01:00
Rafał Dzięgiel
b7b33172fe
New Crowdin updates ( #514 )
...
* New translations clapper-gtk.pot (Romanian)
* New translations clapper-app.pot (Romanian)
* New translations clapper-gtk.pot (French)
* New translations clapper-app.pot (French)
* New translations clapper-gtk.pot (Spanish)
* New translations clapper-app.pot (Spanish)
* New translations clapper-gtk.pot (Afrikaans)
* New translations clapper-app.pot (Afrikaans)
* New translations clapper-gtk.pot (Arabic)
* New translations clapper-app.pot (Arabic)
* New translations clapper-gtk.pot (Catalan)
* New translations clapper-app.pot (Catalan)
* New translations clapper-gtk.pot (Czech)
* New translations clapper-app.pot (Czech)
* New translations clapper-gtk.pot (Danish)
* New translations clapper-app.pot (Danish)
* New translations clapper-gtk.pot (German)
* New translations clapper-app.pot (German)
* New translations clapper-gtk.pot (Greek)
* New translations clapper-app.pot (Greek)
* New translations clapper-gtk.pot (Basque)
* New translations clapper-app.pot (Basque)
* New translations clapper-gtk.pot (Finnish)
* New translations clapper-app.pot (Finnish)
* New translations clapper-gtk.pot (Hebrew)
* New translations clapper-app.pot (Hebrew)
* New translations clapper-gtk.pot (Hungarian)
* New translations clapper-app.pot (Hungarian)
* New translations clapper-gtk.pot (Italian)
* New translations clapper-app.pot (Italian)
* New translations clapper-gtk.pot (Japanese)
* New translations clapper-app.pot (Japanese)
* New translations clapper-gtk.pot (Korean)
* New translations clapper-app.pot (Korean)
* New translations clapper-gtk.pot (Lithuanian)
* New translations clapper-app.pot (Lithuanian)
* New translations clapper-gtk.pot (Dutch)
* New translations clapper-app.pot (Dutch)
* New translations clapper-gtk.pot (Norwegian)
* New translations clapper-app.pot (Norwegian)
* New translations clapper-gtk.pot (Polish)
* New translations clapper-app.pot (Polish)
* New translations clapper-gtk.pot (Portuguese)
* New translations clapper-app.pot (Portuguese)
* New translations clapper-gtk.pot (Russian)
* New translations clapper-app.pot (Russian)
* New translations clapper-gtk.pot (Slovak)
* New translations clapper-app.pot (Slovak)
* New translations clapper-gtk.pot (Serbian (Cyrillic))
* New translations clapper-app.pot (Serbian (Cyrillic))
* New translations clapper-gtk.pot (Swedish)
* New translations clapper-app.pot (Swedish)
* New translations clapper-gtk.pot (Turkish)
* New translations clapper-app.pot (Turkish)
* New translations clapper-gtk.pot (Ukrainian)
* New translations clapper-app.pot (Ukrainian)
* New translations clapper-gtk.pot (Chinese Simplified)
* New translations clapper-app.pot (Chinese Simplified)
* New translations clapper-gtk.pot (Chinese Traditional)
* New translations clapper-app.pot (Chinese Traditional)
* New translations clapper-gtk.pot (Vietnamese)
* New translations clapper-app.pot (Vietnamese)
* New translations clapper-gtk.pot (Portuguese, Brazilian)
* New translations clapper-app.pot (Portuguese, Brazilian)
* New translations clapper-gtk.pot (Persian)
* New translations clapper-app.pot (Persian)
* New translations clapper-gtk.pot (Croatian)
* New translations clapper-app.pot (Croatian)
* New translations clapper-gtk.pot (Hindi)
* New translations clapper-app.pot (Hindi)
* New translations clapper-gtk.pot (Asturian)
* New translations clapper-app.pot (Asturian)
* New translations clapper-gtk.pot (Occitan)
* New translations clapper-app.pot (Occitan)
2025-01-13 18:32:37 +01:00
Rafał Dzięgiel
d4d82034a4
Merge pull request #515 from Rafostar/win-hi-clock
...
clapper-app: Support high resolution clock on MS Windows
2025-01-12 20:47:59 +01:00
Rafał Dzięgiel
09b3ef8f39
clapper-app: Do not enforce GSK renderer on Windows
2025-01-12 17:12:33 +01:00
Rafał Dzięgiel
d9b20dcc18
clapper-app: Support Windows high resolution clock
...
Windows high resolution clock improves accuracy of various Windows
timer APIs and precision of GstSystemClock during playback
2025-01-12 17:12:24 +01:00
Rafał Dzięgiel
60e7d56611
clapper-app: Update POT file
2025-01-11 15:24:07 +01:00
Rafał Dzięgiel
e3bc87ba11
clapper-app: Add "Clear Queue" menu option
...
An option to clear playback queue from UI. This is quckier
and easier than manually dragging every item to bin.
Closes #434
2025-01-11 15:17:50 +01:00
Rafał Dzięgiel
b542aa1e76
clapper: Wait with flush after streams are selected
...
Instead flushing right after select streams request, wait until
they are selected before doing a flush.
This fixes a hang when changing audio language with hlsdemux2.
2025-01-10 23:54:29 +01:00
Rafał Dzięgiel
6534fb1e22
clapper-app: Update LINGUAS file
2025-01-07 19:22:15 +01:00
Rafał Dzięgiel
c8b3e28299
clapper-gtk: Update LINGUAS file
2025-01-07 19:21:58 +01:00
Rafał Dzięgiel
35424bf8cf
clapper-app: Update POT file
2025-01-07 19:06:11 +01:00
Rafał Dzięgiel
6989b86249
clapper-gtk: Update POT file
2025-01-07 19:05:57 +01:00
Rafał Dzięgiel
fed0c0a972
clapper-app: Add do not translate desktop app name comment
2025-01-07 19:03:10 +01:00
Rafał Dzięgiel
496cc60272
Merge pull request #512 from Rafostar/video-placeholder
...
clapper-gtk: Add video placeholder widget
2025-01-02 14:18:52 +01:00
Rafał Dzięgiel
a91ce5b0ab
clapper-gtk: Add video placeholder widget
...
A simple placeholder to be shown when "ClapperGtkVideo" is used with a video
sink that cannot be embedded in it (with a text explaining that).
2025-01-02 13:34:36 +01:00
Rafał Dzięgiel
93b1be3147
New Crowdin updates ( #503 )
...
* New translations clapper-app.pot (Turkish)
* New translations clapper-gtk.pot (Spanish)
* New translations clapper-app.pot (Spanish)
2024-11-22 22:41:54 +01:00
Rafał Dzięgiel
cca4b002b6
Merge pull request #492 from danialbehzadi/i18n
...
Make dektop file i18n.
2024-11-22 22:40:50 +01:00
Rafał Dzięgiel
8e6599ae81
Merge pull request #508 from Rafostar/nightly-fix
...
Update Flatpak Nightly
2024-11-16 22:33:31 +01:00
Rafał Dzięgiel
77ee519f8c
flatpak-nightly: Update manifest
...
Use 24.08 for ffmpeg and switch to Rust stable with added recommended env vars
2024-11-16 17:25:49 +01:00
Rafał Dzięgiel
c42e12d2be
workflows: Update nightly extensions to 24.08
...
Also change to Rust stable to fix build failing
2024-11-16 17:25:03 +01:00
Rafał Dzięgiel
2b916ef856
Merge pull request #506 from Rafostar/adaptive
...
Add adaptive streaming bitrate control to Clapper API
2024-11-16 16:15:19 +01:00
Rafał Dzięgiel
303bda4d65
clapper: Do not reset "adaptive-bandwidth" to zero
...
When new instance of adaptive demuxer is created (different video is played)
this prop value would become zero. We want to avoid that and instead report
only bandwidth after fragment is downloaded, so when video will be unplayable,
next one will not start from lowest quality.
2024-11-16 15:26:24 +01:00
Rafał Dzięgiel
22430620a8
clapper-app: Apply "adaptive-start-bitrate" on startup
...
Watch for "adaptive-bandwidth" changes during adaptive streaming, use these to
set "adaptive-start-bitrate" player property, so we do not always start streaming
from some constant bitrate value which might not be the best for everyone.
Additionally, store last value in GSettings on app exit and also add a command
line arg to set this too.
2024-11-15 23:39:00 +01:00
Rafał Dzięgiel
e4045b98b3
clapper: Add "adaptive-bandwidth" readable property
...
Apps can use it to determine and set an optimal value for
start bitrate instead of starting at some constant value.
2024-11-15 23:38:50 +01:00
Rafał Dzięgiel
aa819cf2d3
flatpak: Update runtime to 47
2024-11-14 23:19:38 +01:00
Rafał Dzięgiel
a065b81846
flatpak: Add GStreamer 1.24 for testing
...
We do not yet have GStreamer 1.24 in Flathub repo, so for testing purposes add it here temporarily
2024-11-14 23:18:16 +01:00
Rafał Dzięgiel
9fbba4d66a
meson: Bump min required GStreamer version
...
Setting "start-bitrate" property requires at least GStreamer 1.24.
We do not want to introduce APIs that work only if user has a certain
dependency version, thus this bump instead of version check.
Related work on GStreamer side:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3894
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3895
Since these were contributed to GStreamer almost 2 years ago with the intention
of using them in Clapper, I think its about time to start do so.
2024-11-14 22:28:21 +01:00
Rafał Dzięgiel
ab659d0951
clapper: Use playbin3 by default
...
New GStreamer adaptive demuxers work only within playbin3. In order to not
introduce new APIs (setting adaptive bitrate) that do not work by default
and to have the whole "clapper-enhancers" concept working correctly, its
about time to move on to playbin3.
2024-11-13 20:06:34 +01:00
Rafał Dzięgiel
bd3ce28716
clapper: Ability to request adaptive bitrates
...
Add APIs to allow apps to select start, min and max bitrates for adaptive streaming.
Combining min+max values can allow to implement a video quality selector,
although possible bitrates/qualities are not communicated with an app yet.
2024-11-13 20:00:59 +01:00
Rafał Dzięgiel
0a15e70d02
Merge pull request #501 from Rafostar/libpeas
...
Support libpeas based plugin system
2024-11-11 13:22:10 +01:00
Rafał Dzięgiel
d42b17a749
workflows: Add libpeas to windows build
...
Required for enhancers loader
2024-11-11 12:49:23 +01:00
Rafał Dzięgiel
719a4043b5
workflows: Disable "enhancers-loader" for docs build
...
Not needed to build the docs, so disable it
2024-11-11 12:49:19 +01:00
Rafał Dzięgiel
ee3d07b158
flatpak: Replace gtuber with Clapper enhancers
...
Also add all required dependencies
2024-11-11 12:49:17 +01:00
Rafał Dzięgiel
c8ef0f891d
clapper: Support libpeas based plugin system
...
Allow loading external plugins called "Enhancers" that as the name suggests,
enhance Clapper library capabilities.
Currently implemented is a "ClapperExtractable" interface meant to extract
an actual media that GStreamer can later play from an initial input URI.
Additionally, an internal GStreamer elements that work with it are ported/moved
here from "gtuber" library that this functionality replaces.
2024-11-11 12:49:07 +01:00
Rafał Dzięgiel
220913de14
Merge pull request #499 from Rafostar/esc-unfullscreen
...
clapper-app: Add unfullscreen keyboard shortcut
2024-10-15 19:53:32 +02:00
Rafał Dzięgiel
2d1f6f471b
clapper-app: Add unfullscreen keyboard shortcut
...
Unfullscreen with Escape key
Closes #494
2024-10-15 19:32:48 +02:00
Rafał Dzięgiel
af4a876edc
New Crowdin updates ( #473 )
...
* New translations clapper-gtk.pot (Hindi)
* New translations clapper-app.pot (Russian)
* New translations clapper-gtk.pot (Czech)
* New translations clapper-gtk.pot (Persian)
* New translations clapper-gtk.pot (Norwegian)
2024-10-10 20:23:28 +02:00
Danial Behzadi
e81bcb2f9a
Update src/bin/clapper-app/data/meson.build
...
Co-authored-by: Rafał Dzięgiel <40623528+Rafostar@users.noreply.github.com >
2024-09-28 13:02:29 +03:30
Danial Behzadi
ba64ff224e
Make dektop file i18n.
2024-09-28 03:37:21 +03:30