Commit Graph

430 Commits

Author SHA1 Message Date
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: 95c7d997c1

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: 60232ce9be

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: f8b67ec44c

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: c1615419b9

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: a5d60c4521

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
Patrick Barron
6b940e141e Remove unnecessary AsQueryable() 2023-11-22 09:34:14 -05:00
Bond_009
635d67d458 Revert "Use System.Net.IPNetwork"
This reverts commit 117d05d288da1d412159a29c0cb8d5c8259e48ae.
2023-11-14 21:16:33 +01:00
Bond_009
b62b0ec2b5 Fix warnings 2023-11-14 21:14:21 +01:00
Bond_009
eb022c49cc Update to .NET 8 2023-11-14 21:12:16 +01:00
Cody Robibero
892973a9e3
Merge branch 'master' into media-type 2023-11-09 22:03:55 -07:00
Bond_009
a9ef103c95 Add IDisposableAnalyzers to more projects 2023-11-05 02:01:14 +01:00
Claus Vium
db4605609c
Merge pull request #10410 from Ch1nkara/add-users-permission-to-edit-subtitles
add EnableSubtitleManagement permission
2023-10-27 09:44:52 +02:00
cvium
1009836a79 add IAsyncDisposable to DisplayPreferencesManager
Properly dispose dbcontext
Add IDisposableAnalyzer to Jellyfin.Server.Implementations
2023-10-22 22:28:45 +02:00
Nick
cd662506a1 Merge branch 'master' into trickplay 2023-10-18 19:27:05 -07:00
chinkara
9f259aa404 add EnableSubtitleManagement permission 2023-10-18 18:31:31 +02:00
LJQ
98bc2fea8b Removed dupe ToDeviceInfo 2023-10-18 01:40:36 +08:00
LJQ
2f9b44fcd0 Switch to LINQ and updated /Device/Info endpoint to return in accordance to the updated API doc 2023-10-18 00:41:33 +08:00
Bond-009
84bbf757fa
Merge pull request #10366 from goremykin/fix-resharper-warnings 2023-10-17 14:31:35 +02:00
LJQ
259fe4522c Update /Device endpoint to return CustomName 2023-10-17 17:25:41 +08:00
Cody Robibero
13f46e3fff Shorten lines from review 2023-10-14 10:55:12 -06:00
Stepan Goremykin
8d7e4229ca Merge branch 'master' into fix-resharper-warnings
# Conflicts:
#	Emby.Server.Implementations/Net/SocketFactory.cs
#	RSSDP/SsdpCommunicationsServer.cs
#	RSSDP/SsdpDeviceLocator.cs
#	RSSDP/SsdpDevicePublisher.cs
2023-10-12 20:11:16 +02:00
Cody Robibero
6bd6fb6e0a Merge branch 'master' into chromecast-config
# Conflicts:
#	Emby.Server.Implementations/ApplicationHost.cs
2023-10-10 15:59:34 -06:00
Cody Robibero
2920611ffc Convert string MediaType to enum MediaType 2023-10-10 15:57:15 -06:00
Stepan Goremykin
f84469d500 Remove redundant using directives 2023-10-08 00:50:02 +02:00
Stepan Goremykin
8ea812b65d Reduce string literal length by using verbatim string 2023-10-08 00:26:12 +02:00
Bond-009
b87765bace
Update Jellyfin.Server.Implementations/Security/AuthorizationContext.cs
Co-authored-by: Patrick Barron <barronpm@gmail.com>
2023-10-05 18:21:43 +02:00
Bond_009
76c64516a7 Simplify some stuff in AuthorizationContext 2023-10-04 16:18:14 +02:00
Patrick Barron
1ca9f8b04b Remove unused fields and parameters 2023-10-03 09:26:20 -04:00
Cody Robibero
bc88c96cbe Validate cast receiver id on get/set 2023-09-23 16:14:03 -06:00
Cody Robibero
ba7e3bfd82 Migrate to customizable cast receiver config 2023-09-23 11:04:53 -06:00
Nick
f97e844c4f Minor code review changes (cvium) 2023-09-04 13:14:45 -07:00