456 Commits

Author SHA1 Message Date
JPVenson
b09a41ad1f WIP porting new Repository structure 2024-10-09 10:36:08 +00:00
JPVenson
be48cdd9e9 Naming refactoring and WIP porting of new interface repositories 2024-10-09 09:53:39 +00:00
JPVenson
15bf43e3ad Removed BaseSqliteRepository 2024-10-08 19:53:26 +00:00
JPVenson
6acd146d17 WIP migration sqlite item repository to efcore 2024-10-08 19:11:31 +00:00
JPVenson
ea81db67f4 Added Sorting and Grouping 2024-10-08 16:27:47 +00:00
JPVenson
90103165e2 Removed SimilarityScore and ported Search function 2024-10-08 15:16:03 +00:00
JPVenson
527998cd0c WIP port search function 2024-10-08 13:46:21 +00:00
JPVenson
d5409a26ea WIP Search refactoring and Provider ID refactoring 2024-10-08 13:18:48 +00:00
JPVenson
6c819fe516 WIP BaseItem search refactoring 2024-10-08 12:27:27 +00:00
JPVenson
d3a3d9fce3 Merge remote-tracking branch 'jellyfinorigin/master' into feature/EFUserData 2024-10-08 09:34:34 +00:00
Cody Robibero
6a9a9546fd
Clean up logging in MediaSegmentManager (#12776) 2024-10-06 16:20:14 -06:00
Tim Eisele
c8c58d6aac
Add missing migration for SegmentProviderId (#12735) 2024-09-28 03:56:11 -06:00
gnattu
38d0b004ba
Only move trickplay file should not be saved with media to metadata dir (#12704) 2024-09-24 08:12:04 -06:00
Cody Robibero
3c639c2e80
Tweak Trickplay migration for speed (#12643) 2024-09-23 09:09:23 -06:00
Shadowghost
7a2427bf07 Add SessionInfoDto, DeviceInfoDto and implement JsonDelimitedArrayConverter.Write 2024-09-18 15:42:15 +02:00
Shadowghost
2351eeba56 Rework PR 6203 2024-09-17 20:35:23 +02:00
JPVenson
ee1bdf4e22
WIP move baseitem to jellyfin.db 2024-09-08 16:56:14 +00:00
JPVenson
5ceedced1c
Feature/media segments plugin api (#12359) 2024-09-07 14:56:51 -06:00
JPVenson
d0b4b2ddb3
Migrated UserData from library sqlite db to jellyfin.db 2024-09-07 19:07:34 +00:00
Tim Eisele
c56dbc1c44
Enhance Trickplay (#11883) 2024-09-07 11:23:48 -06:00
Niels van Velzen
bafbc2372c
Merge pull request #12552 from Bond-009/passwordhashing
Increase password hash iterations
2024-09-06 21:57:35 +02:00
Niels van Velzen
2b492ed8cd
Merge pull request #12545 from Bond-009/sha1
Remove passwordSha1 param from AuthenticateUser function
2024-09-06 21:56:59 +02:00
Bond_009
e69e097e19 Increase password hash iterations
It has been a while since this was last updated: https://github.com/jellyfin/jellyfin/pull/6818
Recommendations have changed since: https://cheatsheetseries.owasp.org/cheatsheets/Password_Storage_Cheat_Sheet.html#pbkdf2
2024-08-30 19:29:23 +02:00
Bond_009
97a02f5803 Remove BOM from UTF-8 files
I think some people need to change their IDE configuration ;)
2024-08-30 15:29:48 +02:00
Bond_009
eca5abe4bb Remove passwordSha1 param from AuthenticateUser function 2024-08-30 14:27:30 +02:00
gnattu
22d8528d90 Backport pull request #11901 from jellyfin/release-10.9.z
Implement Device Cache to replace EFCoreSecondLevelCacheInterceptor

Original-merge: b7bc0e1c96553675a490c0bd92a58ad9c5f0d0e1

Merged-by: joshuaboniface <joshua@boniface.me>

Backported-by: Bond_009 <bond.009@outlook.com>
2024-08-05 10:58:22 -04:00
JPVenson
00eb6c0d6f
Add media segments API (#12345)
* Added Media segment manager

* Added "HasSegments" to MediaSourceInfo when requesting though baseitem

* Fixed ordering of Media Segements

* Added media segment API controller

* Added .ConfigureAwait(false) on media segments manager

* renamed MediaSegmentsController
removed empty route

* Added Model layer for Media Segments
Fixed review comments Media segments

* Updated media segment naming
refactored api and manager usage

* Added mediaSegment type filter

* Fixed codesmell

* Fixed naming and typos

* Added EF Migration

* Added Identity Generation for MediaSegments
Made mediasegment filter optional

* Fixed optional filter parameter

* refactored segment namespace

* Added SegmentProviderId to MediaSegment

* Media segment comment indentation

* Added MediaSegmentManager query notracking
2024-08-05 14:20:27 +02:00
Cody Robibero
c207404089
Merge pull request #11511 from jellyfin/trickplay-keyframe-only 2024-07-17 12:28:58 -04:00
gnattu
68bfabbaba Add option to extract keyframe only during trickplay image generation
This would be significantly faster than decoding every frame, but it does have compatibility issues. Not all decoders support this mode, notably the VP9 decoder, CUVID decoders, and QSV decoders.

Some videos with very long key-frame intervals may also perform poorly with this mode, as the image timing could become too inaccurate to reflect the actual frame.

Signed-off-by: gnattu <gnattuoc@me.com>
2024-07-17 00:47:22 +08:00
Bond-009
c666f9d050
Use real temp dir instead of cache dir for temp files (#12226) 2024-07-15 08:44:14 -04:00
gnattu
9563e4f85e Backport pull request #11823 from jellyfin/release-10.9.z
Add Env Var to disable second level cache

Original-merge: 95c7d997c13cfcd4038174ba00525d5628475fb7

Merged-by: joshuaboniface <joshua@boniface.me>

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-06-01 18:41:02 -04:00
gnattu
e6dab2fa11 Backport pull request #11788 from jellyfin/release-10.9.z
Override too small trickplay image interval

Original-merge: 60232ce9be8d26926ed81294b93a77da02b5a2fe

Merged-by: Bond-009 <bond.009@outlook.com>

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-05-25 11:46:18 -04:00
Bond_009
1f2c73b40a Only log item id in trackplay warning
Turns out it's the same
`[WRN] [53] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "17a76092102691425e94624a69247057" not found at "/mnt/USBshare/Movies/Top Gun (1986)/extras/Top Gun_t04.mkv" for item 17a76092-1026-9142-5e94-624a69247057`
2024-05-18 13:13:34 +02:00
gnattu
5fe7d7f0bf Backport pull request #11670 from jellyfin/release-10.9.z
Restore caching for UserManager

Original-merge: f8b67ec44cc6432d89d918f54caffa45eef037d0

Merged-by: nielsvanvelzen <nielsvanvelzen@users.noreply.github.com>

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-05-17 13:51:47 -04:00
Bond-009
8139179780 Backport pull request #11653 from jellyfin/release-10.9.z
Don't generate TrickPlay images for files that don't exist

Original-merge: c1615419b9e2ca127315e0e85394581bb427415c

Merged-by: crobibero <cody@robibe.ro>

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-05-17 13:51:45 -04:00
crobibero
77c3ddc7ca Backport pull request #11633 from jellyfin/release-10.9.z
Allow empty user id when getting device list

Original-merge: a5d60c4521dd94b084fd8eb7ca99f93d4eda99fa

Merged-by: crobibero <cody@robibe.ro>

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-05-17 13:51:39 -04:00
gnattu
6f78ac2ff3
Use more accurate rounding in GetFixedOutputSize (#11435)
* Use more accurate rounding in GetFixedOutputSize

Signed-off-by: gnattu <gnattuoc@me.com>

* Force trickplay thumbnails to have even width

Signed-off-by: gnattu <gnattuoc@me.com>

* Use Convert.ToInt32

Signed-off-by: gnattu <gnattuoc@me.com>

* Force video size as thumbnail size if the trickplay width setting is larger

This will fix an issue when the trickplay setting contains a very huge width, but the video has a lower resolution than that setting. Our scaling filter logic will not do any upscale, and we have to force to use the video width

Signed-off-by: gnattu <gnattuoc@me.com>

---------

Signed-off-by: gnattu <gnattuoc@me.com>
2024-04-30 13:41:46 +02:00
renovate[bot]
9a4db80085
chore(deps): update dependency efcoresecondlevelcacheinterceptor to v4.4.1 (#11306)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Cody Robibero <cody@robibe.ro>
2024-04-14 08:18:09 -06:00
gnattu
be21d51742
fix: move trickplay specific option into TrickplayOptions (#11229) 2024-03-28 09:26:01 -06:00
Cody Robibero
0bc41c015f
Store lyrics in the database as media streams (#9951) 2024-02-26 05:09:40 -07:00
Nick
ac906a04e2 Fix tiles playlist not using relative paths 2024-02-12 09:30:47 -08:00
Patrick Barron
d986a824cd Use IHostedService for device access management 2024-02-07 10:52:36 -05:00
Mark Cilia Vincenti
f26fc7dfb2 Merge changes 2024-02-03 08:45:14 +01:00
Cody Robibero
e7b8d45bbb
Use helper function to compare guid (#10825) 2024-01-17 08:51:39 -07:00
Mark Cilia Vincenti
e47144e7c7 Updated contributors, upgraded to AsyncKeyedLocker 6.3.0 which now supports non-keyed locking using a similar interface and changed SemaphoreSlim-based locks to using AsyncNonKeyedLocker. 2024-01-14 12:11:16 +01:00
Patrick Barron
04dddd3a7b
Remove UserManager Cache (#10781)
* Remove redundant user cache

* Use DI for IPasswordResetProvider and IAuthenticationProvider
2024-01-06 13:43:48 -07:00
Niels van Velzen
55916a09eb
Remove some unused client capabilities and sync code (#10812) 2024-01-06 13:33:48 -07:00
Bond-009
21374775e5
Merge pull request #10422 from scampower3/api-update
Update /Device endpoint to return CustomName
2023-12-18 21:06:30 +01:00
Patrick Barron
ad58d1f77c Use ExecuteDelete for removing API keys 2023-11-22 09:40:49 -05:00
Patrick Barron
c9c133bc43 Use ExecuteDelete for cleaning activity logs 2023-11-22 09:35:35 -05:00