Commit graph

539 commits

Author SHA1 Message Date
c2eb46106b
Merge pull request #1127 from oddstr13/pr-black-3
Run the black formatter
2026-04-25 00:53:34 +02:00
ca93299b4c
Merge pull request #1121 from mcarlton00/websocket-authentication
Fix websocket authentication
2026-04-08 23:44:54 +02:00
01bdd435c8 Tool: black 2026-04-08 15:30:47 +02:00
mcarlton00
c352251b5d Implement proper websocket KeepAlive messages 2026-04-05 16:03:08 -04:00
Michał Kopeć
1d6517d197
Add Quick Connect support (#1117) 2026-04-05 15:01:53 -04:00
Erwin Broekhuis
f36c490ac6
Fix: map gueststar person type to actor for Kodi artwork. (#1124) 2026-04-05 10:55:58 -04:00
mcarlton00
7a38aad0cc Fix websocket authentication 2026-03-27 17:47:24 -04:00
Rijul
fa0ccfd8f6
fix(player): re-detect audio and subs (#1115)
* fix(player): re-detect audio and subs

In the event that another addon (or even the user) sets the subtitles or
the audio before this addon does, such a change is not detected
correctly.

This PR fixes that by reloading that information from Kodi before
calling `set_audio_subs`

* fix: build

* Revert "fix: build"

This reverts commit 665037ab6c.
2026-03-25 18:30:25 -04:00
mcarlton00
ff79f67f0b
Merge pull request #1111 from ErwinBr/feature/gueststars-in-tv-episodes
Support "GuestStar" person type in TV episode actors
2026-03-25 18:26:16 -04:00
mcarlton00
b8b081975b
Merge pull request #1108 from csaavedra/update-album-title
queries_music: update album title when album updated in jellyfin
2026-03-25 17:34:28 -04:00
Erwin Broekhuis
26bc46a2f3 Style: fixed trailing whitespaces and ran Black to apply formatting. 2026-03-21 12:43:11 +01:00
Erwin Broekhuis
2ab4df5a53 Support GuestStar person type in TV episode actors 2026-03-17 14:54:21 +01:00
Claudio Saavedra
ae340f88c8 queries_music: update album title when album updated in jellyfin
When adding a new album to jellyfin, if jellyfin-kodi adds it
to the Kodi database before all metadata is fetched in the Jellyfin
server, it is possible that it uses the directory name as the album
name, as that's what the server uses before all metadata is loaded.

Once jellyfin updates the metadata, jellyfin-kodi does an update
to the album and its tracks, but during this update the album name
is not updated. This can leave the directory name as the album
name in Kodi.

This patch fixes this by adding the album title to the data that
is modified in tue queries to update an album.

Fixes #763
2026-03-15 15:32:03 +02:00
Claudio Saavedra
c65e073033 music.py: fix addition of song artist different from album artist
When adding a Various Artists album (or an album with guest artists)
where song artists are different from the album artist, the codepath
followed to add the artist if it's missing was broken:

  Traceback (most recent call last):
    File "jellyfin_kodi/objects/music.py", line 460, in song_artist_link
      temp_obj["ArtistId"] = self.jellyfin_db.get_item_by_id(
  TypeError: 'NoneType' object is not subscriptable

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "jellyfin_kodi/objects/music.py", line 467, in song_artist_link
      temp_obj["ArtistId"] = self.jellyfin_db.get_item_by_id(
    TypeError: 'NoneType' object is not subscriptable

Passing the library used for the song when trying to fetch the artist
so that it's used fixes this for me.

Fixes #913 and #837
2026-03-15 14:57:08 +02:00
mcarlton00
682e5cef9e
Merge pull request #1094 from kontell/patch-1
Select mp4 container when transcoding to AV1
2026-02-13 09:28:50 -05:00
c276d00894
Merge pull request #1097 from mcarlton00/legacy-auth
Migrate to current auth methods
2026-02-11 19:31:43 +01:00
091f409f94 Tool: black 2026-02-11 00:48:18 +01:00
24d76d0aac Fix import groups 2026-02-11 00:26:24 +01:00
0bd2e18c47 Tool: black 2026-02-11 00:25:51 +01:00
mcarlton00
555566a0f0
Update jellyfin_kodi/helper/playutils.py
Co-authored-by: Odd Stråbø <oddstr13@openshell.no>
2026-02-10 18:06:39 -05:00
mcarlton00
bb4221122e Migrate to current auth methods 2026-02-10 17:36:12 -05:00
mcarlton00
a431ecc534 Don't assume Path always exists in playback objects 2026-02-10 17:12:27 -05:00
Tim
41a3a375f9 fix(player): remove redundant mediaSegmentsEnabled checks 2026-02-10 17:15:41 +11:00
kontell
ee7251b51c
Select mp4 container when transcoding to AV1 2026-02-04 11:36:59 +00:00
Tim C
bcf880df36 fix(player): use boolean not constant. re-inline report_playback 2026-02-03 14:51:08 +11:00
Tim C
1d42d3f444 fix: minor linting 2026-02-03 14:08:43 +11:00
Tim Coombs
d0eb706596
Merge branch 'master' into master 2026-02-01 13:54:34 +11:00
Tim
8a45ae6396 fix(mediasegment): fix failed merge, add auto-skip notification 2026-02-01 13:43:15 +11:00
Tim
3e47af95d6 Merge branch 'master' of github.com:ticoombs/jellyfin-kodi 2026-02-01 13:16:54 +11:00
Tim C
82eccce9ab feat(media-segments): use standard auto-skip,ask,never 2026-02-01 13:09:37 +11:00
mcarlton00
a985cd24fd
Merge pull request #1085 from VergilGao/fix-strm-file-play
fix: strm file with local file path fails to play
2026-01-31 19:34:19 -05:00
Tim C
e4e0176eba chore(intro-skipper): extract report_playback and check_skip_segments to reduce complexity. & other linting requirements 2026-01-29 10:44:01 +11:00
Tim
0fdb99e2a6 fix: use mediasegments instead of introskipper 2026-01-01 21:05:35 +11:00
Tim
34cd23ea72 chore(intro-skipper): change debug logging from INFO to DEBUG
Keep meaningful user events as INFO (segment load, skip actions).
Change internal debugging/tracing to DEBUG level.
2026-01-01 14:58:20 +11:00
Tim
b408729818 fix(intro-skipper): improve skip segment detection timing
- Check skip segments on every 10s poll instead of every 30s
- Add immediate skip check on playback start for intros at 0:00
- Add skip check after seek for catching credits when fast-forwarding
- Fixes segments being missed due to infrequent polling
2026-01-01 14:55:53 +11:00
Tim
b0aa205ffc fix(intro-skipper): fix OSD skip button display using service.upnext pattern
- Remove window id and type from XML to allow proper OSD overlay display
- Simplify skip dialog following service.upnext popup implementation
- Use Window.Property for dynamic button labels
- Shorten segment labels (Introduction->Intro, Credits->Outro)
- Widen button to fit full label text
- Fix trigger window to detect segment anywhere within bounds
- Add try-except around session_playing to prevent blocking segment fetch
- Fix string vs integer comparison for skip mode setting
2026-01-01 14:40:56 +11:00
Tim
6a2c1264de feat(intro-skipper): initial support for introskipper 2026-01-01 13:12:46 +11:00
VergilGao
1523955ecc fix: strm file with local file path fails to play 2025-12-16 10:39:34 +08:00
Hustin Jeffers
5ec920eec2 hjpaul7: fix Cinema mode with playlist method 2025-12-06 13:11:43 -05:00
cd0c8af25e Escape null character in log output 2025-10-19 00:32:14 +02:00
4ad56c9ee0 Split and index in a way that gracefully falls back to no split
Fixes #734
2025-10-18 23:14:00 +02:00
bossanova808@gmail.com
8319a4b82c Remove setting of StartPercent given an accurate resumetime is available 2025-10-11 16:01:04 +11:00
ae543f86f0 Fix spelling 2025-09-18 22:41:24 +02:00
308daec219 Add functools wraps 2025-09-18 22:33:30 +02:00
8c467be69f Remove missed references to LibraryException.status 2025-09-18 21:28:33 +02:00
402be319ca Gate stubs behind TYPE_CHECKING 2025-09-18 17:32:28 +02:00
614c5ec02b Fix flake8 complaints 2025-09-16 05:26:28 +02:00
36652fc5cd Add stubs to LazyLogger for code completion 2025-09-15 06:32:10 +02:00
3de5b2e43d Restructure stop decorator and LibraryException 2025-09-15 02:43:39 +02:00
1447061201
Merge pull request #993 from JeroenED/JeroenED-patch-no-movies
Fix movies sync for Kodi 22 Piers
2025-09-14 06:40:05 +02:00