Commit Graph

4319 Commits

Author SHA1 Message Date
Patrick Barron
34269dee58 Use DI for ILiveTvService 2024-02-02 20:13:24 -05:00
Patrick Barron
efd024bafe Use DI for IListingsProvider 2024-02-02 20:13:24 -05:00
Cody Robibero
bf4c3bb1e4
Merge pull request #10878 from barronpm/livetv-guidemanager
Add IGuideManager service
2024-02-02 16:57:54 -07:00
nyanmisaka
e62dab627e Add full HWA transcoding pipeline for RKMPP
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-02-01 18:59:27 +08:00
nyanmisaka
92c0ec0c1b Use video framerate for ASS subtitle HW burn-in
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-01-28 20:06:42 +08:00
nyanmisaka
9323390add Fix the display aspect ratio of PGSSUB subtitle burn-in
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-01-28 20:06:42 +08:00
Patrick Barron
4399b51dca Merge branch 'master' into livetv-guidemanager
# Conflicts:
#	src/Jellyfin.LiveTv/LiveTvManager.cs
2024-01-17 12:08:01 -05:00
Cody Robibero
e7b8d45bbb
Use helper function to compare guid (#10825) 2024-01-17 08:51:39 -07:00
Patrick Barron
59c2ae944d Add IGuideManager service 2024-01-17 09:52:11 -05:00
Bond-009
484ccf7f28
Merge pull request #10858 from barronpm/livetv-tunerhostmanager
Add ITunerHostManager service and minor LiveTv cleanup
2024-01-17 15:42:37 +01:00
Patrick Barron
c101d287f2 Remove unused Live TV code 2024-01-15 13:29:55 -05:00
Patrick Barron
c23a038ba8 Remove unnecessary allocations in TunerHostManager 2024-01-15 09:37:03 -05:00
JPVenson
3ce16713dd
Fixed disposable not being called (#10613)
* Fixed disposable not being called

* PulledUp usage of IAsyncDisposable for sessioninfo

Co-authored-by: Patrick Barron <barronpm@gmail.com>
2024-01-14 16:50:09 +01: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
Mark Cilia Vincenti
6a257e1b40 Merge branch 'master' into AsyncKeyedLock-migration 2024-01-14 11:45:19 +01:00
Patrick Barron
9c2c066e6f Add ITunerHostManager service 2024-01-12 21:17:09 -05:00
Patrick Barron
051fa04a80 Move GetRecordingStreamMediaSources to IMediaSourceManager 2024-01-09 09:47:07 -05:00
Patrick Barron
82f93afa22
Fix More Live TV Warnings (#10818)
* Fix CA1819 in LiveTvManager

* Call ConfigureAwait in ChannelManager
2024-01-06 13:33:58 -07:00
Niels van Velzen
55916a09eb
Remove some unused client capabilities and sync code (#10812) 2024-01-06 13:33:48 -07:00
Nyanmisaka
aa71129cff
Use -noauto{scale,rotate} for disabling auto filters (#10810)
`-auto{scale,rotate} 0` has been dropped in upstream FFmpeg.

Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-01-04 16:31:45 -07:00
Mark Cilia Vincenti
d1677dc680 AsyncKeyedLock migration 2024-01-03 16:47:25 +01:00
Patrick Barron
c49539cbe0 Move ProgressiveFileStream to Controller 2023-12-21 12:53:50 -05:00
Patrick Barron
9215a4d40a Add ITranscodeManager service 2023-12-21 12:53:50 -05:00
Patrick Barron
c2081955c8 Rename and clean up TranscodingJob 2023-12-21 12:53:50 -05:00
Patrick Barron
abd74fd5a4 Move TranscodingJobDto and TranscodingThrottler to Controller 2023-12-21 12:53:49 -05:00
Bond-009
053c3392f4
Merge pull request #10682 from barronpm/livetv-warnings
Fix some warnings in LiveTV
2023-12-18 23:21:45 +01:00
Bond-009
ce45b73c8b
Merge pull request #10702 from crobibero/collection-type-lowercase
Convert CollectionType to use lowercase enum names
2023-12-18 19:38:44 +01:00
Bond-009
24cbd64450
Merge pull request #10573 from arabcoders/master
Add new API endpoint to view/update Item UserData
2023-12-15 18:00:50 +01:00
jkhsjdhjs
547d97d602
Use eof_action=pass when overlaying subtitles
The previous behavior using `eof_action=endall` and `shortest=1` would
end the video stream if one of the input stream (video, subtitle) ends.
In some cases the duration of the overlayed subtitles is shorter than the
video stream, causing the output to end when the subtitles end and dropping
the remaining video stream.

This commit changes this behavior so `eof_action=pass` is used instead,
which continues passing the video stream through even if the subtitles end
earlier [1]. `shortest=1` is also removed, as this option implies
`eof_action=endall`.

If the subtitle stream has a higher duration than the video stream, the output
will also end with the video stream without `shortest=1`, as the video stream
is the primary input to the `overlay` filter.

Fix #10698

[1] https://ffmpeg.org/ffmpeg-filters.html#Options-for-filters-with-several-inputs-_0028framesync_0029
2023-12-13 13:11:42 +01:00
Cody Robibero
033cfa59c4 Convert CollectionType to use lowercase enum names 2023-12-08 15:45:36 -07:00
Patrick Barron
0d5bbfda32
Remove unused DLNA models (#10685)
* Remove unused DLNA models

* Remove IDlnaManager
2023-12-06 16:06:42 -07:00
Patrick Barron
192559db32 Make ILiveStream an IDisposable 2023-12-05 14:26:35 -05:00
Patrick Barron
5c593b120a Don't use List directly in ITunerHost method signatures 2023-12-05 13:35:18 -05:00
Claus Vium
0be2817ccb
Merge pull request #10371 from Pithaya/feat/book-persons
Allow persons on books
2023-11-23 23:09:06 +01:00
Abdulmohsen
9d5dc4d71b
Merge branch 'jellyfin:master' into master 2023-11-24 00:00:53 +03:00
Bond_009
faa22cdb84 Update deps
* Removes SourceLink as it should work automagically with .NET 8
2023-11-16 00:50:48 +01:00
ArabCoders
c4013d2e10 Updated the summary and the Dto name. 2023-11-15 13:55:14 +03: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
Pithaya
eb2bcc91c5
Merge branch 'master' into feat/book-persons 2023-11-13 18:07:23 +01:00
ArabCoders
2a25c5a2e3 Refactored api call logic handling. 2023-11-13 15:51:06 +03:00
Bond-009
fc694289a9
Merge pull request #10557 from barronpm/dlna-plugin
Move DLNA to Plugin (Part 1)
2023-11-12 16:23:11 +01:00
Patrick Barron
1e1e1560a4 Add IServerApplicationHost parameter to IPluginServiceRegistrator 2023-11-10 07:43:46 -05:00
Cody Robibero
892973a9e3
Merge branch 'master' into media-type 2023-11-09 22:03:55 -07:00
Cody Robibero
906f701fa8
Convert CollectionType, SpecialFolderType to enum (#9764)
* Convert CollectionType, SpecialFolderType to enum

* Hide internal enum CollectionType values

* Apply suggestions from code review

Co-authored-by: Shadowghost <Shadowghost@users.noreply.github.com>

* Fix recent change

* Update Jellyfin.Data/Attributes/OpenApiIgnoreEnumAttribute.cs

Co-authored-by: Patrick Barron <barronpm@gmail.com>

---------

Co-authored-by: Shadowghost <Shadowghost@users.noreply.github.com>
Co-authored-by: Patrick Barron <barronpm@gmail.com>
2023-11-09 14:00:29 -07:00
Cody Robibero
c7a94d48ae
Convert ItemSortBy to enum (#9765)
* Convert ItemSortBy to enum

* Rename Unknown to Default
2023-11-09 14:00:13 -07:00
Bond_009
a9ef103c95 Add IDisposableAnalyzers to more projects 2023-11-05 02:01:14 +01:00
Claus Vium
0973f1e0ba
Merge pull request #10357 from herby2212/kill-inactive-streams-v2
Add auto close of an inactive session after X minutes
2023-10-27 09:47:43 +02:00
nyanmisaka
9c270b149c Fix mismatch between intel VAAPI UMD/KMD in rare cases
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-10-22 19:06:35 +08:00
herby2212
27ceee8b6c update to current master to resolve merge conflict 2023-10-21 01:20:59 +02:00
Nick
cd662506a1 Merge branch 'master' into trickplay 2023-10-18 19:27:05 -07:00
Stepan Goremykin
38d962242a Merge branch 'master' into fix-resharper-warnings
# Conflicts:
#	Emby.Server.Implementations/Updates/InstallationManager.cs
#	tests/Jellyfin.Server.Integration.Tests/OpenApiSpecTests.cs
2023-10-14 00:45:52 +02: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
Bond_009
d7748cfa04 Multiple Stream changes
* Remove useless MemoryStream in DlnaHttpClient
* Use HttpContent.ReadFromJsonAsync extension
* Call ConfigureAwait for IAsyncDisposable
* Use HttpContent.CopyToAsync where possible
2023-10-11 18:32:57 +02:00
Cody Robibero
2920611ffc Convert string MediaType to enum MediaType 2023-10-10 15:57:15 -06:00
Patrick Barron
1ce49b4a04
Merge branch 'master' into xml-parsing-cleanup 2023-10-10 12:00:45 -04:00
Bond-009
6b06a43c3f
Merge pull request #10347 from Bond-009/drawing 2023-10-10 13:12:53 +02:00
Bond-009
fc1f0a31a1
Merge pull request #10337 from barronpm/system-manager 2023-10-10 13:12:43 +02:00
Bond_009
c707baed83 Jellyfin.Drawing minor improvements
Reduce duplicate/dead code
2023-10-08 17:10:04 +02:00
Bond-009
0b31997b2f
Merge pull request #10348 from Bond-009/strings 2023-10-08 14:07:30 +02:00
Stepan Goremykin
fdef9356b9 Use null propagation 2023-10-08 01:25:37 +02:00
Stepan Goremykin
2d7835c848 Join declaration and assignment 2023-10-08 01:16:43 +02:00
Pithaya
cc590f82b9 Allow people on books 2023-10-08 01:08:03 +02:00
Stepan Goremykin
6512f85ccb Pass cancellation token 2023-10-08 00:55:14 +02:00
Stepan Goremykin
f84469d500 Remove redundant using directives 2023-10-08 00:50:02 +02:00
Stepan Goremykin
526f9a825c Make files readonly 2023-10-08 00:40:58 +02:00
Stepan Goremykin
8ea812b65d Reduce string literal length by using verbatim string 2023-10-08 00:26:12 +02:00
herby2212
db5c2f738e integrate development from v1 2023-10-07 21:18:21 +02:00
Bond-009
1141883f77
Merge pull request #10321 from feilongfl/master 2023-10-07 00:15:01 +02:00
Patrick Barron
c38fbece03 Remove unnecessary Trim() from GetPersonFromXmlNode 2023-10-06 16:57:36 -04:00
Patrick Barron
40e1c5f4c6 Remove logger parameter from XmlReaderExtensions.TryReadDateTime 2023-10-06 16:56:50 -04:00
Patrick Barron
1dd6442e89 Use extension methods in GetPersonFromXmlNode 2023-10-06 16:43:50 -04:00
Patrick Barron
0e51ffa169 Add TryReadInt to XmlReaderExtensions 2023-10-06 15:35:26 -04:00
Patrick Barron
8a7a1cc723 Add ReadNormalizedString to XmlReaderExtensions 2023-10-06 15:12:49 -04:00
Patrick Barron
99832642ce Add TryParseDateTime and TryParseDateTimeExact to XmlReaderExtensions 2023-10-06 14:18:56 -04:00
Patrick Barron
1a6ec2c740 Add GetStringArray and GetPersonArray to XmlReaderExtensions 2023-10-06 13:40:08 -04:00
Patrick Barron
bdca4ed322 Add XmlReader.GetPersonFromXmlNode 2023-10-06 12:46:35 -04:00
Claus Vium
6593aa1255
Merge pull request #10135 from 0x25CBFC4F/fix/ffmpeg-probesize
Fixed probesize argument passing to FFmpeg
2023-10-06 11:38:31 +02:00
Claus Vium
a18b3fbe70
simplify the if 2023-10-06 10:49:20 +02:00
Bond_009
b176beb88e Reduce string allocations
Some simple changes to reduce the number of allocated strings
2023-10-06 01:04:25 +02:00
fei long
33b3331c72
change Substring to AsSpan
Co-authored-by: Bond-009 <bond.009@outlook.com>
2023-10-06 06:26:52 +08:00
Patrick Barron
6f7413812f Add SystemManager service 2023-10-04 14:40:00 -04:00
Claus Vium
467aa40d21
Merge pull request #10222 from Bond-009/photos 2023-10-03 19:23:35 +02:00
Bond-009
14b06ecbe2
Merge pull request #10261 from barronpm/ihostlifetime 2023-10-03 11:05:10 +02:00
YuLong Yao
808e59fdda
add pcm format when codec is pcm_* 2023-10-02 13:14:53 +08:00
Bond_009
57891e7639 PhotoResolver: change how generated images are detected
Backdrops/fanart are generated as (backdrop)|(fanart)[0-9]*.extension

Fixes #7830
2023-09-27 17:20:55 +02:00
Bond-009
2bb534d5e3
Merge pull request #10275 from jellyfin/disable-a53cc-sei-on-h26x-vaapi 2023-09-27 17:10:35 +02:00
Bond_009
526c918524 CollectionFolder: replace Dictionary + locks with ConcurrentDictionary
This should be faster (and still safe I hope)
2023-09-25 18:12:12 +02:00
Nyanmisaka
99cc1ed13a
Fix A53 CC SEI breaking H26x_VAAPI hardware encode
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-09-25 22:56:59 +08:00
Patrick Barron
493de3297a Use IHostLifetime to handle restarting and shutting down 2023-09-23 11:57:38 -04:00
Cody Robibero
3a2799e61b
Merge pull request #10234 from Shadowghost/cleanup-playlists-task 2023-09-22 06:55:11 -06:00
Nyanmisaka
5ba855098d Backport pull request #10151 from jellyfin/release-10.8.z
Fix performance loss of QSV HDR tone-mapping on Windows

Original-merge: 757f88b1a2

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

Backported-by: Bond_009 <bond.009@outlook.com>
2023-09-21 15:35:39 -04:00
Shadowghost
f7720e7c99 Extend collections cleanup task to include playlists too 2023-09-16 15:09:19 +02:00
Bond-009
3087881d93
Merge pull request #10056 from Bond-009/nullable2 2023-09-12 11:09:20 +02:00
Nyanmisaka
3c2b1b5e97
Fix AV1 NVENC encoder profile option (#10199) 2023-09-08 18:20:11 -06:00
Nick
5a860710a8 Make TrickplayManifest dictionary key a string rather than Guid 2023-09-04 12:30:20 -07:00
nyanmisaka
31d2f653fa Fix H264 QSV encoding when the bitrate is too low
h264_qsv expects a bitrate equal or higher than 1000k, or it fails.

Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-09-02 00:25:40 +08:00
Bond_009
97d92e7087 Use the correct trancode path
EncodingOptions.TranscodingTempPath can be empty (and is by default),
the correct way to get the trancode path is
EncodingConfigurationExtensions.GetTranscodePath which falls back to $CACHEPATH/transcodes
when EncodingOptions.TranscodingTempPath is null or empty.
2023-08-27 17:27:03 +02:00
Bond-009
9ae429b6f6
Merge pull request #10141 from Bond-009/nullable3 2023-08-26 17:28:34 +02:00
Bond_009
18a311d32f == null -> is null 2023-08-22 21:14:54 +02:00
Bond_009
d92e9ae85e Enable nullable for more files and add tests
Adds basic tests for FFProbeVideoInfo.CreateDummyChapters
Fixed error message CreateDummyChapters instead of reporting the total minutes it only reported the minute component
2023-08-22 18:11:34 +02:00
Bond_009
a963bce9be Reduce log spam on failed logins
Failed logins already get logged higher up the call chain
2023-08-21 19:09:32 +02:00
Claus Vium
956e3dab43
fix: accessing Standard* of a Process requires manually disposing them afterwards (#10125) 2023-08-20 20:06:57 +02:00
null
8dc58e8f04
Added handling of FFmpeg:probesize variable 2023-08-20 21:31:14 +04:00
TelepathicWalrus
4c7fb8f452
Album gain (#10085)
* Add LUFSAlbum DTO

* Get loudest track for smallest gain

* Move gain search to musicalbum
use baseitem LUFS for album

* Use .Max for enumerable

* Update DTO to be consistent with other DTOs

* Remove albumlufs,
Move dto for all types
2023-08-18 10:25:56 +02:00
nyanmisaka
44946ded4e Disable AMD EFC feature since it's still unstable in upstream
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-08-03 19:16:46 +08:00
nyanmisaka
5b71cd8af9 Expand AMD VA-API Vulkan filtering support to Polaris/gfx8
ROCm OpenCL runtime is not needed anymore when using HDR tone-mapping on Polaris/gfx8.

This change requires jellyfin-ffmpeg5 5.1.3-4 or jellyfin-ffmpeg6 6.0-5
or newer versions.

Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-08-03 06:24:02 +08:00
Bond-009
07727e1d63
Merge pull request #9875 from Shadowghost/fixes 2023-08-01 20:26:21 +02:00
Bond_009
5677566a41 Enable nullable for more files 2023-07-29 21:35:38 +02:00
Nyanmisaka
148c86ee0d
Only disable the global_header for AMD HEVC encoder (#10045) 2023-07-29 06:52:58 -06:00
MBR-0001
9564248b10
Add ability to upload (and save) SDH subtitles (#10036) 2023-07-29 06:52:35 -06:00
Shadowghost
4bb17039d7 Apply review suggestions 2023-07-29 13:50:55 +02:00
Shadowghost
368f9202ce Apply review suggestions 2023-07-15 20:15:11 +02:00
Shadowghost
05d98fe24c Enforce permissions on websocket connections 2023-07-07 08:50:37 +02:00
Shadowghost
958f8f71e8 Add wrapper object for authentication event information 2023-07-07 08:50:37 +02:00
Bond-009
b95fa294c9
Merge pull request #9799 from Bond-009/genregex 2023-07-06 19:56:00 +02:00
Joshua M. Boniface
93b400343e
Merge pull request #8147 from Shadowghost/network-rewrite 2023-07-03 13:16:21 -04:00
Cody Robibero
52252fcd55
Fix sending websocket messages (#9948) 2023-07-02 16:14:44 -06:00
nyanmisaka
76538aacb9 Backport pull request #9928 from jellyfin/release-10.8.z
Disable global_header on AMD VA-API encoder

Original-merge: a732a28229

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

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2023-07-02 01:41:17 -04:00
Nick
0e1ae2def2 Add CreateTiles to ITrickplayManager 2023-07-01 16:16:41 -07:00
Claus Vium
eae92c5acc
Merge pull request #9920 from nielsvanvelzen/lyric-parser 2023-07-01 18:28:35 +02:00
Niels van Velzen
0ae4d175a1 Check for empty string in DefaultLyricProvider 2023-07-01 11:16:21 +02:00
Cody Robibero
b5bbb98175
Fix Websocket OpenApi (#9935)
* Further split inbound and outbound messages

* Fix datatype for inbound start messages

* fixes from review
2023-06-29 05:44:36 -06:00
Nick
6d9e43cfe0 Merge branch 'master' into trickplay 2023-06-28 21:43:23 -07:00
Joshua M. Boniface
76939bbd9b
Merge pull request #9231 from JPVenson/bugfix/1907_CleanupCollections 2023-06-28 17:44:11 -04:00
Bond-009
e53e53eb29
Merge pull request #9907 from nyanmisaka/av1e 2023-06-28 17:34:20 +02:00
Bond-009
4ac07f6c76
Merge pull request #9890 from Shadowghost/videorange-rework 2023-06-28 17:30:26 +02:00
Bond_009
b5f0760db8 Use RegexGenerator where possible 2023-06-28 17:07:57 +02:00
Shadowghost
20a4509991 Migrate VideoRange and VideoRangeType to Enum 2023-06-28 12:02:20 +02:00
Shadowghost
a6e9824e8a Merge branch 'master' into network-rewrite 2023-06-27 16:15:57 +02:00
Nick
ab20ceaad6 Migrate to trickplay table to EF. Rename vars/methods/members to have consistent use of tile and thumbnail 2023-06-26 17:40:10 -07:00
Nick
619d1d47f2 Move GetHlsPlaylist to ITrickplayManager 2023-06-23 14:22:00 -07:00
Niels van Velzen
6de56f0518 Add support for lyric provider plugins 2023-06-23 21:13:20 +02:00
Nick
0e2c362078 Move SkiaSharp related code to Jellyfin.Drawing and IImageEncoder 2023-06-22 16:23:52 -07:00
Nick
3377032228 crobibero styling, format, code suggestions 2023-06-22 16:23:52 -07:00
Nick
dd8ef08592 Move fps filter to GetVideoProcessingFilterParam 2023-06-22 16:23:52 -07:00
nicknsy
6744e712d3 Use config values 2023-06-22 16:23:51 -07:00
nicknsy
16ea7baad4 Stay consistent with patch branch 2023-06-22 16:19:59 -07:00
nicknsy
31a858f520 IsAutomated not set on copy 2023-06-22 16:19:59 -07:00
nicknsy
ca7d1a1300 Trickplay generation, manager, storage 2023-06-22 16:19:59 -07:00
Bond-009
3982b0e057
Reduce bottlenecks scan code (#9863) 2023-06-21 21:01:47 -06:00
Shadowghost
67a58df1a3 Merge branch 'master' into network-rewrite 2023-06-21 07:57:00 +02:00
nyanmisaka
27d0d8a7f2 Refine SwDec and QSV encoding
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-06-20 03:50:02 +08:00
nyanmisaka
be01aeecd9 Add AV1 hardware and software encoding
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-06-20 03:50:02 +08:00
Cody Robibero
4972fbf2a3
Merge pull request #8744 from DomiStyle/segment-deletion 2023-06-19 06:50:13 -06:00
nyanmisaka
f81b004d3f Removed unused lines
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-06-18 10:00:53 +08:00
nyanmisaka
a81f3e7c97 Fix #9642 backport
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-06-18 09:59:55 +08:00
Dominik
17f1e8d19b
Merge branch 'master' into segment-deletion 2023-06-15 19:38:42 +02:00
Shadowghost
32499f0e98 Merge branch 'master' into network-rewrite 2023-06-15 17:53:52 +02:00
nyanmisaka
23b9055547 Rearrage the Amd vaapi-vulkan pipeline for synchronization
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-06-13 23:15:30 +08:00