Commit graph

69 commits

Author SHA1 Message Date
krakotay
e040f7fbc7
fix: playback of malformed MP4 files with invalid framerates
- [x] I have disclosed use of any AI generated code in my commit
messages.
- If you are using an LLM, and do not fully understand the changes it is
making to the code base, do not create a PR.
- In our experience, AI generated code often results in overly complex
code that lacks enough context for a proper fix or feature inclusion.
This results in considerably longer code reviews. Due to this, AI
authored or partially authored PRs may be closed without comment.
- [x] I understand these changes in full and will be able to respond to
review comments.
- [x] My change is accurately described in the commit message.
- [x] My contribution is tested and working as described.
- [x] I have read the [Developer Certificate of
Origin](https://developercertificate.org/) and certify my contribution
under its conditions.

Some malformed MP4 files previously wouldn't play at all because they
reported a 0/1 framerate.
Other files suffered from severe audio stuttering caused by repeated
long GAP events emitted from malformed edit lists.
This patch treats invalid framerates as unknown (allowing the existing
fallback to be used) and suppresses suspicious long audio GAP events
before they reach the audio sink.
As a result, both kinds of videos now play correctly.
2026-08-29 02:31:43 +02:00
Jeremy Soller
c9cba75c84 Epoch 1.7.0 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-08-25 12:11:05 -06:00
Jeremy Soller
55ecae4644 Epoch 1.6.0 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-08-18 13:38:32 -06:00
Jeremy Soller
ea17341561 Epoch 1.5.0 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-07-28 09:14:39 -06:00
Jeremy Soller
bfbf2a1387 Epoch 1.4.0 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-07-20 14:36:38 -06:00
Jeremy Soller
d910353b6f Epoch 1.3.0 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-07-13 10:29:00 -06:00
Ashley Wulber
8eb774ebca chore: update libcosmic 2026-07-09 18:23:34 -04:00
Ashley Wulber
e3b610271f fix: custom style with transparent clear is buggy 2026-07-07 20:48:00 +02:00
Ashley Wulber
54ed6b0a93 feat: blur 2026-07-01 22:59:45 -04:00
Jeremy Soller
b162e335db Epoch 1.2.0 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-06-30 13:24:24 -06:00
Jeremy Soller
f6d3554788 Epoch 1.1.0 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-06-23 10:39:31 -06:00
Jeremy Soller
c0b1bda86b Epoch 1.0.16 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-06-09 12:23:41 -06:00
Jeremy Soller
ddf43efc48 Epoch 1.0.15 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-06-02 11:58:44 -06:00
Jeremy Soller
67eda26107 Epoch 1.0.14 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-05-26 08:31:21 -06:00
Jeremy Soller
d1f63c570c Epoch 1.0.13 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-05-12 12:18:30 -06:00
Jeremy Soller
fab830c994 Translate desktop and metainfo with xdgen 2026-05-07 17:23:41 -06:00
Jeremy Soller
468b5f1459 Epoch 1.0.12 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-05-05 12:18:59 -06:00
Vukašin Vojinović
2aa2c841fa chore: update dependencies 2026-04-30 01:33:39 +02:00
Jeremy Soller
a8d9416754 Epoch 1.0.11 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-04-15 13:03:33 -06:00
Ashley Wulber
bc9d118de0 chore: update libcosmic after reexports 2026-04-09 16:05:48 -06:00
Jeremy Soller
887901b323 Epoch 1.0.9 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-04-07 10:33:19 -06:00
Ashley Wulber
283e592ac3 chore: enable wayland by default 2026-04-06 15:07:48 -04:00
Ashley Wulber
2c6f8599ee fix: audio player interface issues
the video player doesn't draw when playing audio, so the logic for emitting new frame messages is broken.
2026-04-06 12:40:34 -04:00
Ashley Wulber
0d8d6298d7 chore: update libcosmic 2026-03-27 16:43:03 -04:00
Ashley Wulber
a0cc650659 chore: update libcosmic 2026-03-26 11:12:11 -04:00
Ashley Wulber
00395d27dc chore: thumbnails and patches 2026-03-20 18:18:32 -04:00
Ashley Wulber
6c401d7030 chore: update iced 2026-03-20 18:11:32 -04:00
Jeremy Soller
73be6bfaa7 Epoch 1.0.8 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-02-23 08:13:29 -07:00
Jeremy Soller
c87fe43aeb Epoch 1.0.7 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-02-17 10:54:39 -07:00
Jeremy Soller
e8ad32f507 Epoch 1.0.6 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-02-09 14:33:14 -07:00
Jeremy Soller
f4a57ed013
Epoch 1.0.5 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-01-30 17:16:39 -07:00
Jeremy Soller
0c26bf4e1b
Revert cosmic-text to version compatible with older libcosmic 2026-01-27 09:55:15 -07:00
Jeremy Soller
dc73ef3745
Epoch 1.0.4 version update
Generated by cosmic-epoch scripts/version-update.sh
2026-01-21 10:16:56 -07:00
Josh Megnauth
bb087578df
Prevent screen turning off during playback
Closes: #157

XDG portals expose a D-Bus interface allowing apps to prevent screen
idling, user switching, and other actions. That interface,
org.freedesktop.portal.Inhibit, does all of the heavy lifting here.

Idling = the screen dimming or shutting off.

Idling is inhibited when a video is actively playing.
Idling is NOT inhibited when videos aren't playing - this includes
paused or stopped videos.
2025-11-13 13:26:23 -05:00
Josh Megnauth
27ea8d2770
Clean up dependencies, lints
`lazy_static` and `smol_str` weren't used. COSMIC Player used `dirs`
once to find the user's home directory. Rust fixed and undeprecated its
`home_dir` function in 1.85, which released earlier this year and is the
MSRV of libcosmic.
2025-11-03 16:12:38 -05:00
Jeremy Soller
18be235628
Update libcosmic, fixes #121 2025-10-09 13:22:44 -06:00
Jeremy Soller
58c778832b
Respond to duration changes, fixes #107 2025-08-15 10:15:28 -06:00
LinuxBoy-96
01be9152a7
feat: add help and version flags to argument parser 2025-03-26 16:42:39 +01:00
Hugo
07ed2615d0 Add daemon mode support 2025-03-22 19:22:22 +00:00
Josh Megnauth
3fd8641df2 Parse multiple URLs via command line
Closes: #44, #47

I used pico-args over clap because the former only adds about 1KB of
binary bloat whereas clap adds almost 1MB.
2025-03-13 12:17:54 -06:00
Jeremy Soller
841816e8d1
Add tree view, fixes #52, fixes #53 2025-01-24 14:05:50 -07:00
Jeremy Soller
0169cccfa2
Add recent media, part of #53 2025-01-24 12:49:02 -07:00
Jeremy Soller
73f524c95e
Implement MPRIS and album art, fixes #57, fixes #59, part of #56 2025-01-18 08:47:47 -07:00
Jeremy Soller
2c0545f6a8 Update dependencies 2025-01-10 10:04:40 -07:00
Jeremy Soller
4667c03f92
Revert Cargo.lock to version 3 2025-01-09 11:45:45 -07:00
Jeremy Soller
93db103a0c
Update iced_video_player 2024-12-30 12:57:03 -07:00
Jeremy Soller
7f9d56ae0c
Add file menu, improve naming of subtitles 2024-12-05 12:20:37 -07:00
Jeremy Soller
214e894491
Update iced video player 2024-12-03 15:41:52 -07:00
Jeremy Soller
352b98fde1
Use prev-master branch of libcosmic 2024-12-03 15:27:56 -07:00
Jeremy Soller
9ab453a3bb
Update dependencies 2024-10-10 11:22:22 -06:00