Compare commits

..

3923 Commits

Author SHA1 Message Date
Joshua M. Boniface
e93d03d8cb Bump version to 10.8.13 2023-11-28 22:21:57 -05:00
Joshua M. Boniface
a656799dc8 Merge pull request from GHSA-866x-wj5j-2vf4
Validate codec and container
2023-11-28 22:20:32 -05:00
Joshua M. Boniface
83d2c69516 Merge pull request from GHSA-rr9h-w522-cvmr
Remove the functionality of /System/MediaEncoder/Path
2023-11-28 22:19:55 -05:00
Cody Robibero
204fdeb035 Validate codec and container 2023-11-28 15:21:32 -07:00
Joshua M. Boniface
c4cdcb73fc Merge pull request #10625 from ilovepilav/fix-alerts-missing-from-admin-dashboard
Fix: Plugin Installed Alerts missing from Admin Dashboard #10620
(cherry picked from commit 2f6536e34b)
Signed-off-by: Joshua M. Boniface <joshua@boniface.me>
2023-11-27 00:19:32 -05:00
Joshua M. Boniface
1e0bd32358 Set Path endpoint obsolete 2023-11-26 18:33:13 -05:00
Joshua M. Boniface
bf5f00a383 Restore original flag behaviour 2023-11-23 13:25:36 -05:00
Joshua M. Boniface
0430ffecb6 Restore ordering 2023-11-23 01:44:35 -05:00
Joshua M. Boniface
85cfd080f1 Remove the functionality of /System/MediaEncoder/Path
Eliminate this endpoint by having it perform no action, pending total
removal in the next major version (10.9.0).

Further, adjust the MediaEncoder startup options to completely ignore
what is in the XML currently, and respect only the "--ffmpeg" arg, which
is set on most of our platforms, falling back to system "ffmpeg" in
$PATH if not found. This ensures that, should the "--ffmpeg" arg be
changed by an administrator wishing to alter the default FFmpeg binary,
this change will be reflected properly on next startup.
2023-11-22 21:29:32 -05:00
Joshua M. Boniface
a173d01139 Revert "Merge pull request #10514 from Bond-009/skia3"
This reverts commit 0bac1eab98, reversing
changes made to 4df1003029.

Causes segfaults on startup.
2023-11-05 11:47:36 -05:00
Joshua M. Boniface
3e7fad55de Bump version to 10.8.12 2023-11-04 14:42:59 -04:00
Joshua M. Boniface
8cd685a4e9 Merge pull request #10528 from nyanmisaka/backport-10451
Fix mismatched intel VAAPI UMD/KMD - Backport #10451
2023-11-04 14:36:05 -04:00
Joshua M. Boniface
9d565bbb83 Merge pull request #10454 from Shadowghost/env
Add MALLOC_TRIM_THRESHOLD_ to default ENV
2023-11-04 14:16:10 -04:00
nyanmisaka
ab855af95e Fix mismatched intel VAAPI UMD/KMD introduced by pull request #10451
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-11-05 01:09:07 +08:00
Claus Vium
0bac1eab98 Merge pull request #10514 from Bond-009/skia3
Update SkiaSharp (v2.88.6) and BlurHashSharp (v1.3.1)
2023-11-02 08:58:34 +01:00
Bond_009
97c2ba0115 Update SkiaSharp (v2.88.6) and BlurHashSharp (v1.3.1) 2023-11-01 23:47:04 +01:00
Cody Robibero
4df1003029 Merge pull request #10487 from thornbill/backport-9485
Fix scaleFactor limit - Backport #9738
2023-10-28 08:44:56 -06:00
Oliver Weyhmüller
3269ce56ca Fix scaleFactor limitation to 1 introduced by pull request #9485 2023-10-28 01:02:27 -04:00
Claus Vium
ce8eddd484 Merge pull request #10406 from thornbill/fix-playlists
Fix playlist listings
2023-10-27 09:47:11 +02:00
Shadowghost
5e2872509a Add MALLOC_TRIM_THRESHOLD_=131072 to default ENV 2023-10-22 17:55:36 +02:00
Bill Thornton
d3f4dcf6f6 Revert "Don't ignore parentId for playlists"
This reverts commit 98c6c34fbb.
2023-10-15 02:16:27 -04:00
Joshua M. Boniface
be5e10ac37 Bump version to 10.8.11 2023-09-23 21:40:40 -04:00
Cody Robibero
b85a0288a7 Merge pull request #10265 from Shadowghost/backport-10173 2023-09-23 09:14:30 -06:00
Shadowghost
f8fd851961 Backport #10173 2023-09-23 13:46:49 +02:00
Bond-009
757f88b1a2 Merge pull request #10151 from jellyfin/faster-tm-qsv-windows 2023-08-27 10:17:47 +02:00
Nyanmisaka
fa732bf4a1 Fix performance loss of QSV HDR tone-mapping on Windows
jellyfin-ffmpeg 5.1.3-5, 6.0-6 or newer contains a more efficient fix than this one.
2023-08-26 03:06:16 +08:00
Cody Robibero
4f6edd9c3c Merge pull request #9952 from Bond-009/backportfix9503
fix for #9503
2023-07-02 18:18:21 -06:00
Bond_009
768497d0ff Backport fix for #9503 2023-07-03 00:07:04 +02:00
Bond-009
f1dc7d3a66 Merge pull request #9916 from Bond-009/playlist-backport 2023-06-27 16:22:14 +02:00
Bond-009
a732a28229 Merge pull request #9928 from nyanmisaka/disable-amd-global-header 2023-06-27 15:58:22 +02:00
nyanmisaka
17626b8e48 Disable global_header on AMD VA-API encoder
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-06-25 21:46:14 +08:00
Bond_009
98c6c34fbb Don't ignore parentId for playlists 2023-06-22 00:43:32 +02:00
Bond-009
bec8d7b3f5 Merge pull request #9723 from dmitrylyzo/fix-multiple-codec-checking 2023-06-13 14:54:57 +02:00
Bond-009
2acae258b8 Check for Imdb id for series (#9829) 2023-05-29 18:40:07 -06:00
Bond-009
643df48707 Don't crash when IPv6 subnet in LocalNetworkSubnets (backport) (#9832) 2023-05-29 18:38:59 -06:00
Bond-009
2b98ce052e Allow webp for local images (backport) (#9831) 2023-05-29 18:38:43 -06:00
Bond-009
702347df50 Don't add .spc audio files (backport) (#9830) 2023-05-29 18:38:29 -06:00
Dmitry Lyzo
9e5aa3e87e Fix multiple codec checking in CodecProfiles conditions
Partial revert 6d662b6587
2023-05-03 00:53:20 +03:00
Joshua M. Boniface
2cd29d1cfd Bump version to 10.8.10 2023-04-23 11:03:46 -04:00
Joshua M. Boniface
eba95cc7f0 Merge pull request #9671 from nyanmisaka/fix-canvas-dvbsub 2023-04-23 11:03:17 -04:00
Joshua M. Boniface
82ad2633fd Merge pull request from GHSA-9p5f-5x8v-x65m
Throw exception on path traversal in WriteDocumentAsync
2023-04-23 10:59:32 -04:00
nyanmisaka
d9f5619c9a Fix the canvas size for DVBSUB and DVDSUB subtitles
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-04-23 20:15:12 +08:00
Cody Robibero
d5a8419bc5 Merge pull request #9642 from nyanmisaka/tonemap-mode-selection
Fix the brightness of VPP tonemap and add the tonemap mode
2023-04-14 14:58:19 -06:00
nyanmisaka
c448a4f6a5 Fix the brightness of VPP tonemap and add the tonemap mode
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-04-14 19:34:47 +08:00
David Ullmer
faac37bcf9 Throw exception on path traversal in WriteDocumentAsync
This commit is not tested on a Windows machine. I however checked the
same behavior with UNIX paths and a client name resembling path traversal
path. With this change, an exception is thrown if the full path does not
start with the log directory path.
2023-04-12 16:57:45 +02:00
Bond-009
5921379a29 Merge pull request #9411 from nyanmisaka/next-fixes 2023-04-12 16:35:20 +02:00
Cody Robibero
79bb7560dc Merge pull request #9538 from TheTyrius/fix-nvenc-preset-order
Fix nvenc preset order
2023-03-25 09:04:08 -06:00
TheTyrius
bf37db7f42 Add self to CONTRIBUTORS.md as per dev docs 2023-03-25 15:39:00 +01:00
TheTyrius
0ad70bb699 Fix nvenc preset ordering 2023-03-25 15:28:01 +01:00
Bond-009
e6313d01eb Merge pull request #9409 from Shadowghost/output-bitrate-channels-release
Multiple HLS codec and bitrate fixes (10.8.z)
2023-03-19 15:30:53 +01:00
Shadowghost
876a6b9aec Add DCA and TrueHD to fMP4 audio codecs to support remuxing 2023-03-19 15:07:20 +01:00
Cody Robibero
e0344353cd Apply suggestions from code review
Co-authored-by: Bond-009 <bond.009@outlook.com>
2023-03-17 12:26:42 +01:00
nyanmisaka
9799136daf Add support for OPUS and fixes for FLAC case issue in HLS
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-03-17 12:26:40 +01:00
Shadowghost
3a5503be5f Fix condition in CanStreamCopyAudio 2023-03-17 12:16:50 +01:00
Shadowghost
2cc0869144 Prefer other codecs over DTS and TrueHD on transcode 2023-03-17 12:16:48 +01:00
Shadowghost
3d735e242a Use source audio bitrate if requested codec is lossless 2023-03-17 12:15:48 +01:00
Shadowghost
31712e5da9 Apply review suggestions 2023-03-17 12:01:34 +01:00
Shadowghost
060097703b Enforce HLS codec restrictions 2023-03-17 11:58:38 +01:00
Shadowghost
233e079e58 Add DTS and TrueHD bitrate limits, enforce bitrate limits if no bitrate is requested 2023-03-17 11:58:25 +01:00
Shadowghost
eafd785eb6 Fix encoder checks for DTS and TrueHD 2023-03-17 11:58:09 +01:00
Shadowghost
9908dad045 Take channels into account when calculating fallback audio bitrate 2023-03-17 11:57:51 +01:00
knackebrot
2b4bf81575 Calculate output bitrate from output channel count 2023-03-17 11:57:41 +01:00
Nyanmisaka
0c7ceb1545 Backport HWA permissions fix (#9006) to 10.8.z (#9433)
Co-authored-by: Shadowghost <Shadowghost@users.noreply.github.com>
fix (#9006) to 10.8.z
2023-03-14 16:29:50 -06:00
Nyanmisaka
173a963dbf Fix the bitrate scale factor for h264-to-hevc transcoding (#9485) 2023-03-14 16:06:10 -06:00
Bond-009
6821a2ab35 Merge pull request #9422 from nyanmisaka/fix-stream-map-filter-complex 2023-03-07 16:25:30 +01:00
Bond-009
efc79295de Merge pull request #9430 from nyanmisaka/livetv-hwdec 2023-03-07 16:25:11 +01:00
nyanmisaka
4d1a583297 Fix LiveTV hardware decoding
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-03-05 03:51:14 +08:00
nyanmisaka
c94a99fced Tiny optimizations for FFmpeg 6.0 2023-03-03 00:24:43 +08:00
nyanmisaka
5fdea32dca Add tests for FFmpeg version 5.1.2 and 6.0
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-03-02 21:21:44 +08:00
nyanmisaka
d1c668e230 Fix stream map when using filter_complex with unlabeled output
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-03-02 21:15:16 +08:00
nyanmisaka
6d662b6587 Fix codec checking in CodecProfiles conditions
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-02-28 03:49:19 +08:00
Bond-009
22a8283a9e Merge pull request #9391 from nyanmisaka/next-fixes 2023-02-25 16:44:47 +01:00
nyanmisaka
0d9d2e0690 Enable enhanced Nvdec by default for using DoVi tone-mapping
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-02-24 23:39:32 +08:00
nyanmisaka
edaba7dbe5 Fix H.264 baseline profile hwaccel
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-02-24 23:38:46 +08:00
Bond-009
e8b0ae07af Merge pull request #9351 from Shadowghost/condition-fix 2023-02-20 10:27:58 +01:00
Bond-009
c807712246 Merge pull request #9355 from nyanmisaka/va-vpp-pool-size 2023-02-20 10:27:47 +01:00
Shadowghost
9a14a624a8 Apply review suggestions 2023-02-19 15:11:15 +01:00
Shadowghost
037eeed746 Fix EqualsAny condition check for int and double 2023-02-19 14:59:30 +01:00
nyanmisaka
8ecb9558e2 Use CL_MAP_READ on OCL to reduce bandwidth overhead
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-02-19 21:26:15 +08:00
nyanmisaka
8d04c98e35 Increase pool size for VAAPI VPP
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-02-19 21:16:17 +08:00
Dmitry Lyzo
09f1c7f535 Escape the path to pass as a command line argument (#9178) 2023-01-28 07:42:58 -07:00
Joshua M. Boniface
0ac18a50f5 Bump version to 10.8.9 2023-01-22 14:09:40 -05:00
Joshua M. Boniface
4ebae248df Merge pull request #9130 from Shadowghost/livetv-security 2023-01-22 14:02:34 -05:00
Joshua M. Boniface
fbb9acf58b Merge pull request #9145 from nyanmisaka/fix-pgs-8602 2023-01-21 15:48:54 -05:00
nyanmisaka
87f081c8ac Fix PGS position issue in sw decoding #8602
Partially revert #7736

Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-01-21 22:34:46 +08:00
Shadowghost
44077b4f5c Apply review suggestions 2023-01-20 01:27:39 +01:00
Shadowghost
060a80bef7 Enforce download permission on download policy 2023-01-20 00:58:47 +01:00
Shadowghost
885a1b02c1 Secure endpoints in LiveTvController 2023-01-20 00:58:41 +01:00
Joshua M. Boniface
1dea309ae4 Merge pull request #9051 from dmitrylyzo/fix-transcode-reasons 2023-01-19 15:32:40 -05:00
Joshua M. Boniface
32227c76b7 Merge pull request #9112 from nyanmisaka/win-ffmpeg-link 2023-01-17 12:56:06 -05:00
Shadowghost
a7c43643a4 Fix Windows FFmpeg download link 2023-01-18 01:47:52 +08:00
Dmitry Lyzo
2a5efeb3bb Don't add additional entries if HEVC encoding is disabled (#9092) 2023-01-14 14:37:11 -07:00
Bond-009
464136cfc9 Merge pull request #9050 from nyanmisaka/update-wa-i915-hang 2023-01-10 20:54:47 +01:00
Bill Thornton
31673cc27d Disable splash screen image by default (#9060) 2023-01-10 09:15:21 -07:00
Dmitry Lyzo
6a909f956e cleanup: remove redundant condition 2023-01-09 23:21:57 +03:00
Dmitry Lyzo
20e9db8308 fix transcode reasons 2023-01-09 23:21:57 +03:00
nyanmisaka
f8b8fdace6 Update workaround for the i915 hang
The issue has been fixed in linux 6.2:
https://github.com/torvalds/linux/commit/3f882f2

And the fix was cherry picked into 6.0.18 and
6.1.4 (may be used by debian bookworm).

Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-01-10 03:41:20 +08:00
Cody Robibero
2a6e292153 Merge pull request #9049 from Shadowghost/codec-fix
Fixes https://github.com/jellyfin/jellyfin-androidtv/issues/2396
2023-01-09 12:18:09 -07:00
Shadowghost
c9f3d9bdde Add truehd to list of audio codecs which require strict -2 2023-01-09 20:07:17 +01:00
David Fairbrother
8d49e0099c Add DavidFair to contributors
Add myself to the list of contributors, as per the development
guidelines found on the JF website.
2023-01-09 19:50:46 +01:00
David Fairbrother
76e3da6a40 Add dts to list of audio codecs which require strict -2
Adds dts to the list of audio codecs where ffmpeg will throw asking us
to opt into experimental support. This is seen when the original content
is based on dts and we don't acopy using ffmpeg.
2023-01-09 19:50:37 +01:00
Bond-009
f0faddcc44 Backport 8726: Fix incorrect starting offset of buffer span in CheckTunerAvailability. (#9020)
Co-authored-by: Michael Powers <swedishborgie@gmail.com>
2023-01-07 11:30:34 -07:00
Bond-009
e6606d41ce Merge pull request #9009 from dmitrylyzo/fix-secondary-audio 2023-01-05 22:57:49 +01:00
Dmitry Lyzo
7c8aea7859 fix tests 2023-01-05 01:15:58 +03:00
Dmitry Lyzo
c4c5af40a1 fix secondary audio
Browsers (Chrome, Firefox) can only play the first track,
even if the second track is the default.

Ignore default flag when testing on secondary audio.

External audio tracks are not secondary.
2023-01-05 01:15:58 +03:00
Joshua M. Boniface
383d514353 Bump version to 10.8.8 2022-11-29 13:42:58 -05:00
Bond-009
6fc8237242 Merge pull request #8753 from thornbill/fix-items-access-backport 2022-11-22 21:52:53 +01:00
Bill Thornton
79d7a4d4df Remove unused using statement 2022-11-16 10:27:41 -05:00
Bill Thornton
e90031b4cc Use elevated access control for media folders endpoint 2022-11-15 16:52:49 -05:00
Bill Thornton
4f3d562d75 Fix media folders endpoint access control 2022-11-15 16:49:03 -05:00
Bill Thornton
6c8b40f413 Fix items endpoint not honoring library access control 2022-11-15 16:35:05 -05:00
Joshua M. Boniface
ec81dc9be2 Bump version to 10.8.7 2022-10-31 23:07:09 -04:00
Joshua M. Boniface
45f3fb1cfc Merge pull request #8662 from cvium/this_next_up_fix_wont_work_either 2022-10-31 17:05:38 -04:00
Cody Robibero
f83a24ec43 Merge pull request #8667 from daullmer/backport-omdb-fix 2022-10-31 14:33:33 -06:00
Joshua M. Boniface
84c03a2d93 Merge pull request #8649 from jellyfin/revert-8480-revert-data-streams 2022-10-31 12:55:56 -04:00
David Ullmer
bc8e249080 Enable OMDB plot for non-English languages as fallback 2022-10-31 13:10:00 +01:00
cvium
5ea9a74289 fix: use a combination of ParentIndexNumber and IndexNumber to determine next up episodes 2022-10-30 16:06:47 +01:00
Niels van Velzen
987d31ea16 Revert "Revert "Merge pull request #8298 from lomion0815/fix-data-stream"" 2022-10-29 11:38:14 +02:00
Joshua M. Boniface
f850779781 Bump version to 10.8.6 2022-10-28 22:41:11 -04:00
Claus Vium
3bdc2bff5f Merge pull request #8620 from nyanmisaka/fix-dg2-tonemap-tearing
Fix the DG2 HDR TM tearing issue on Windows
2022-10-25 12:43:47 +02:00
nyanmisaka
5c6a84549a Fix some encoding presets
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2022-10-25 16:26:55 +08:00
nyanmisaka
48da35f91f Fix the DG2 HDR TM tearing issue on Windows
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2022-10-25 16:26:55 +08:00
Claus Vium
39b29eb9f1 Merge pull request #8608 from cvium/activitylog_datecreated_index
Add index for DateCreated on ActivityLogs
2022-10-24 18:46:54 +02:00
Anthony Lavado
a6740bf51e Merge pull request #8609 from anthonylavado/sd-image-fix 2022-10-23 13:37:29 -04:00
cvium
c7797d3ead fix build 2022-10-23 18:54:43 +02:00
Claus Vium
c86d5838be Merge pull request #8611 from nielsvanvelzen/transcodereasons 2022-10-22 14:17:47 +02:00
Niels van Velzen
43223b9036 Fix TranscodeReasons type in OpenAPI output 2022-10-22 13:59:24 +02:00
Anthony Lavado
c71385d2db Add token for program metadata download 2022-10-22 04:30:45 -04:00
Anthony Lavado
ad5becc524 Use token when retrieving images 2022-10-22 04:10:20 -04:00
cvium
7c75dcfb9c use filescoped namespace 2022-10-22 10:04:50 +02:00
cvium
7937e31a9b add index for DateCreated on ActivityLog 2022-10-22 10:02:52 +02:00
Claus Vium
1f1f26306b Merge pull request #8600 from Shadowghost/10.8-slow-load 2022-10-21 17:44:38 +02:00
Shadowghost
577399ca05 Prevent host lookup on GetSmartUrl for HTTP requests 2022-10-21 10:09:45 +02:00
Bond-009
e7ea7c0383 Merge pull request #8523 from Gylesie/tweak-lastplayeddate 2022-10-10 19:29:03 +02:00
Gylesie
9fe7751d05 Fallback only to the current time when marking item as watched 2022-10-09 11:28:49 +02:00
Claus Vium
bf129ab9b8 Merge pull request #8411 from Maxr1998/audio-stream-fix
Allow direct play even if no audio stream is available
2022-10-09 09:08:01 +02:00
Claus Vium
6d23de64c0 Merge pull request #8516 from cvium/kill_ffprobe_when_extraction_crashes 2022-10-09 08:27:34 +02:00
Claus Vium
e4f48bb486 Merge pull request #8517 from cvium/backport_8335 2022-10-09 08:27:22 +02:00
Andreas Egli
866b4460b1 change variable to camelCase 2022-10-08 19:00:36 +02:00
Andreas Egli
9db0b275ff allow additional flags after K_ for ffprobe keyframe extraction 2022-10-08 19:00:23 +02:00
Andreas Egli
14008fd7d0 add gentps flag to ffprobe for keyframe extraction 2022-10-08 19:00:02 +02:00
Andreas Egli
8532d88a71 add TryParse to FFProbe Keyframe extraction 2022-10-08 18:59:43 +02:00
cvium
737c739d33 fix: kill ffprobe if keyframe parsing fails 2022-10-08 18:56:07 +02:00
Claus Vium
679e83082f Merge pull request #8501 from cvium/fix_nextup 2022-10-07 07:50:04 +02:00
Claus Vium
d8e53f35a5 Merge pull request #8499 from cvium/add_basque_language 2022-10-07 07:49:17 +02:00
cvium
7a0e7b3cf8 add MinParentIndexNumber 2022-10-06 14:21:21 +02:00
cvium
373c63bcc7 fix: set MinIndexNumber for the next up query 2022-10-06 14:06:24 +02:00
cvium
be5d343efb chore: add Basque to the list of localization options 2022-10-06 09:44:11 +02:00
Cody Robibero
c9c91cc34e Merge pull request #8480 from thornbill/revert-data-streams 2022-10-01 08:52:39 -06:00
Bill Thornton
774b4a0d3f Revert "Merge pull request #8298 from lomion0815/fix-data-stream"
This reverts commit 848ea703bc, reversing
changes made to af87706379.
2022-10-01 00:56:46 -04:00
Joshua M. Boniface
a26cded0f5 Bump version to 10.8.5 2022-09-24 22:01:59 -04:00
Joshua M. Boniface
4ec82ec662 Merge pull request #8433 from jellyfin/dotnet-6.0.9 2022-09-20 09:45:01 -04:00
Cody Robibero
879787212e Update to dotnet 6.0.9 2022-09-19 08:19:32 -06:00
Maxr1998
23100c9b86 Use ICollection for candidateAudioStreams 2022-09-18 22:56:38 +02:00
Bond-009
e6124bc154 Merge pull request #8399 from cvium/respectTagRestrictions 2022-09-15 14:08:50 +02:00
Maxr1998
8753b7200f Allow direct play even if no audio stream is available 2022-09-15 02:04:12 +02:00
Bond-009
88d5230bab Merge pull request #8348 from jellyfin/revert-7985-revert-7961-next_up_idk 2022-09-14 01:54:45 +02:00
LogicalPhallacy
2920c52d61 Reorder and check for query user null to avoid null ref issues 2022-09-13 09:12:38 +02:00
LogicalPhallacy
de196a7687 Forces respecting IsVisible on people 2022-09-13 09:12:38 +02:00
Claus Vium
ba026716c1 Merge pull request #8213 from nyanmisaka/pause-cpu
Fix high single thread usage in throttler
2022-09-13 08:07:04 +02:00
Joshua M. Boniface
125ee88311 Merge pull request #8321 from strugee/fix-systemd-whitespace 2022-09-11 16:55:21 -04:00
nyanmisaka
c53f6a2890 Fix high single thread usage in throttler
this requires jellyfin-ffmpeg >= 5.0.1-8
2022-09-09 21:14:02 +08:00
Bond-009
649b4c49e0 Merge pull request #8327 from RealGreenDragon/subtitle-extraction-timeout-10.8.z 2022-09-09 12:51:25 +02:00
Cody Robibero
848ea703bc Merge pull request #8298 from lomion0815/fix-data-stream 2022-09-05 08:51:48 -06:00
AJ Jordan
0adadff3e7 Fix systemd not breaking whitespace in env vars
This is particularly important for JELLYFIN_ADDITIONAL_OPTS, where the
user is most likely to want to specify more than one word.
2022-08-27 16:20:06 -04:00
MagicGreenDragon
ffdc3a6734 Increased subtitle extraction timeout to 30 min 2022-08-27 18:10:42 +02:00
lomion0815
a51cd4f8db Improved error log as suggested by crobibero in the PR #8298 review 2022-08-24 21:01:32 +02:00
Bond-009
af87706379 Merge pull request #8214 from nielsvanvelzen/optional-userid 2022-08-22 18:25:20 +02:00
Niels van Velzen
8422ab687b Update Jellyfin.Api/Controllers/UniversalAudioController.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2022-08-22 17:47:59 +02:00
markus
64753cfc7f Streams with CodecType "data" (like "epg" streams in DVB recordings) get ignored. This results in wrong stream specifiers for all subsequential streams. This fix correctly handles "data" streams without any further processing. 2022-08-22 14:58:30 +02:00
Claus Vium
632fb05f46 Merge pull request #8280 from thornbill/fix-analyze-duration-priority
Fix ffmpeg analyze duration env var taking priority over media source
2022-08-18 08:08:58 +02:00
Claus Vium
527ed0607d Merge pull request #8189 from lukefor/getitems-outofrange
Fix GetItems IndexOutOfRangeException when IDs do not exist
2022-08-18 08:07:51 +02:00
Luke F
b59daab273 Tab -> space 2022-08-18 00:26:55 +01:00
Luke F
8f28d52929 Code review - simplify SortItemsByRequest to a single roughly-equivalent linq expression 2022-08-18 00:15:57 +01:00
Luke F
749b263c48 Merge remote-tracking branch 'upstream/release-10.8.z' into getitems-outofrange 2022-08-18 00:14:01 +01:00
Bill Thornton
80c68b8948 Fix ffmpeg analyze duration env var taking priority over media source 2022-08-17 15:04:51 -04:00
Claus Vium
a5687793c9 Revert "Revert "refactor: use season number and episode number for NextUp ordering instead of SortName"" 2022-08-15 14:10:42 +02:00
Joshua Boniface
b344771f8a Bump version to 10.8.4 2022-08-13 21:51:50 -04:00
Joshua Boniface
3ff78b687d Revert "Restore "Merge pull request #8087 from cvium/generic_subtitleparser""
This reverts commit 5bcab0f0f8.
2022-08-13 21:51:23 -04:00
Joshua M. Boniface
d260f30810 Merge pull request #8257 from joshuaboniface/fix-dotnetargs 2022-08-13 21:45:57 -04:00
Cody Robibero
7ffdde9a0b Merge pull request #8212 from SenorSmartyPants/Add384ResolutionText
Add resolution text for 384 sized video
2022-08-13 18:34:17 -07:00
Joshua M. Boniface
e14194bfe2 Fix remaining instances in root package configs 2022-08-13 21:23:01 -04:00
Joshua M. Boniface
3bf1a7e445 Use separate args for dotnet publish commands
Fixes #8245
2022-08-13 21:18:28 -04:00
Bond-009
1faee43b11 Merge pull request #8182 from Shadowghost/fix-sub-characterset 2022-08-12 19:47:42 +02:00
Joshua M. Boniface
31f9938e3a Merge pull request #8234 from crobibero/dotnet-6.0.8 2022-08-11 22:46:31 -04:00
Cody Robibero
ae9fd4ab35 update remaining dependencies 2022-08-09 17:57:51 -06:00
Cody Robibero
71ed7f7676 update to dotnet 6.0.8 2022-08-09 17:57:21 -06:00
SenorSmartyPants
3b6e003029 Add 404p Resolution Text 2022-08-09 12:09:29 -05:00
Claus Vium
9357d610b1 Merge pull request #8209 from Shadowghost/fix-playback
Fix series query including missing episodes when it should not
2022-08-08 22:57:56 +02:00
Joshua M. Boniface
1d4755894e Merge pull request #8219 from nyanmisaka/fedora-hardening
Move Fedora service hardening options to override config
2022-08-07 21:10:03 -04:00
nyanmisaka
2320f06666 Move Fedora service hardening options to override config 2022-08-07 18:01:26 +08:00
Niels van Velzen
8296f07a39 Make userId truly optional in UniversalAudioController 2022-08-06 14:17:04 +02:00
SenorSmartyPants
30f6263806 Add resolution text for 384 sized video 2022-08-05 23:32:22 -05:00
Shadowghost
a9249393e1 Fix series query including missing episodes when it should not 2022-08-05 19:38:33 +02:00
Shadowghost
f49a051a5f Respect timestamps when extracting subtitles 2022-08-02 13:21:10 +02:00
Joshua Boniface
5bcab0f0f8 Restore "Merge pull request #8087 from cvium/generic_subtitleparser"
After tagging v10.8.3, this can be restored to how it was and corrected
as required in a separate PR.

This reverts commit 494ed7e4d2.
2022-08-01 20:40:54 -04:00
Joshua Boniface
c5a2ff8ac4 Bump version to 10.8.3 2022-08-01 20:20:00 -04:00
Joshua Boniface
494ed7e4d2 Revert "Merge pull request #8087 from cvium/generic_subtitleparser"
This PR was causing breakage in installs - ref #8198

This reverts commit 7323ccfc23, reversing
changes made to 77a007a24d.
2022-08-01 20:19:16 -04:00
Joshua M. Boniface
dd97e6bc45 Bump version to 10.8.2 2022-08-01 14:27:30 -04:00
Bond-009
7323ccfc23 Merge pull request #8087 from cvium/generic_subtitleparser 2022-08-01 19:24:45 +02:00
Claus Vium
d258a87fda Update MediaBrowser.MediaEncoding/Subtitles/SubtitleEditParser.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2022-08-01 18:30:32 +02:00
Bond-009
77a007a24d Merge pull request #8191 from cvium/remove_not_missing_episodes 2022-08-01 18:19:13 +02:00
cvium
a380153f92 remove redundant null check 2022-07-30 21:54:03 +02:00
cvium
56c81696d3 fix: remove Virtual episodes when their physical counterpart exists 2022-07-30 21:50:53 +02:00
Bond-009
7297431f23 Merge pull request #8174 from nyanmisaka/fixes
Disable auto inserted SW scaler for HW decoders
2022-07-30 15:00:41 +02:00
Claus Vium
f2c7bccb89 Update MediaBrowser.MediaEncoding/Subtitles/SubtitleEditParser.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2022-07-30 14:59:28 +02:00
Claus Vium
b0b4068ddf Update MediaBrowser.MediaEncoding/Subtitles/SubtitleEditParser.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2022-07-30 14:59:00 +02:00
Luke F
3bd2cc9860 Resolve a System.IndexOutOfRangeException when requesting IDs that do not exist via /Users/.../Items. Previously it was possible for the 'index' values in 'positions' to refer beyond 'size'.
[ERR] Error processing request. URL "GET" "/Users/.../Items".
System.IndexOutOfRangeException: Index was outside the bounds of the array.
   at MediaBrowser.Controller.Entities.Folder.SortItemsByRequest(InternalItemsQuery query, IReadOnlyList`1 items)
   at MediaBrowser.Controller.Entities.Folder.GetItems(InternalItemsQuery query)
   at Jellyfin.Api.Controllers.ItemsController.GetItems
2022-07-29 20:43:38 +01:00
Shadowghost
feb035b9e0 Extract external subs from container before determining character set 2022-07-27 10:08:53 +02:00
nyanmisaka
82f362abd9 Fix DV P5 MKV remuxing 2022-07-26 23:06:22 +08:00
nyanmisaka
04b73cace6 Disable auto inserted SW scaler for HW decoders in case of changed resolution 2022-07-26 23:06:11 +08:00
cvium
3b69f38a1f fix tests 2022-07-25 09:51:03 +02:00
cvium
126da94020 use reflection to get all subtitle formats without causing libse configuration loading 2022-07-25 09:47:21 +02:00
Bond-009
f9dffa767f Merge pull request #8167 from crobibero/plugin-library-scan 2022-07-24 22:59:21 +02:00
Claus Vium
444b0ea310 Merge pull request #8163 from daullmer/cover-m3u
Don't refresh playlists on album refresh
2022-07-24 19:38:54 +02:00
Claus Vium
484427b4aa Merge pull request #8127 from jellyfin/wa-i915-hang 2022-07-24 19:18:14 +02:00
David Ullmer
c3f0649fde Update MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-07-24 19:17:21 +02:00
Nyanmisaka
e877486056 Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-07-25 00:56:40 +08:00
Claus Vium
9854751137 Merge pull request #8061 from jellyfin/fix-long-time-interop
Fix intel dx11-ocl interop taking too long to initialize on windows
2022-07-24 18:54:04 +02:00
Claus Vium
057e8ef240 Merge pull request #8166 from joseph39/people-query-fix-10.8.z
Bind @userid only when it's in the statement
2022-07-24 18:27:59 +02:00
Cody Robibero
205783f46f re-add library scan from library manager 2022-07-23 18:59:30 -06:00
Cody Robibero
b2fb96ffed Merge pull request #8152 from thornbill/fix-rtsp-over-tcp
Fix support for rtsp streams over tcp
2022-07-23 18:24:35 -06:00
Cody Robibero
ee22feb89a Merge pull request #7732 from LewkyB/fix-websockets-close-gracefully-on-shutdown 2022-07-23 18:24:12 -06:00
Joseph
ca5979cd77 Bind @userid only when it's in the statement
This commit fixes a case where SqliteItemRepository attempts to bind @userid even when such parameter may not appear in the query; fixes https://github.com/jellyfin/jellyfin/issues/8141
2022-07-23 16:06:36 -07:00
David Ullmer
d36f49589a Don't refresh playlists on album refresh 2022-07-23 13:51:07 +02:00
luke brown
70f37f0527 Merge branch 'release-10.8.z' of github.com:jellyfin/jellyfin into fix-websockets-close-gracefully-on-shutdown 2022-07-22 18:16:55 -05:00
Bill Thornton
dfe0aef530 Fix support for rtsp streams over tcp 2022-07-20 15:13:11 -04:00
Luke Brown
9e31d5a73f relocated Dispose 2022-07-19 21:49:17 -05:00
Luke Brown
f088ca5555 add Dispose in DisposeAsyncCore 2022-07-19 17:31:00 -05:00
Bond-009
2b46917dcf Merge pull request #8104 from Shadowghost/resolution-fix 2022-07-17 23:52:49 +02:00
nyanmisaka
7bae6eff95 Fix intel dx11-ocl interop taking too long to initialize on windows 2022-07-17 11:47:17 +08:00
Joshua M. Boniface
d0fd23bb4b Merge pull request #8115 from crobibero/dotnet-6.0.7
Update to dotnet 6.0.7
2022-07-16 15:39:11 -04:00
Shadowghost
d694a6c09a Add more MediaStream resolution tests, sort them by width 2022-07-16 10:16:33 +02:00
nyanmisaka
58f61ed118 Workaround for linux 5.18+ i915 hang at cost of performance 2022-07-16 15:18:49 +08:00
Cody Robibero
b9da0e7f83 Update remaining dependencies 2022-07-12 17:41:32 -06:00
Cody Robibero
7eaa0600e0 Update to dotnet 6.0.7 2022-07-12 17:41:22 -06:00
Bond-009
47c2c536e4 Merge pull request #8078 from Andy2244/fix-stream_copy 2022-07-13 00:33:00 +02:00
Bond-009
7ef9e95d75 Merge pull request #8092 from Andy2244/fix-audio_codec_bitrate 2022-07-13 00:29:09 +02:00
Shadowghost
f8ea4577ab Add resolution text output for more resolutions 2022-07-11 15:45:11 +02:00
Andy Walsh
72da42cb0a allow higher opus, vorbis transcode bitrates 2022-07-10 02:14:49 +02:00
cvium
dbfa0f3027 fix unsupported 2022-07-08 20:12:00 +02:00
cvium
78f437401b loop over all compatible SubtitleFormats 2022-07-08 20:11:00 +02:00
cvium
1db748399c feat: make subtitleeditparser generic 2022-07-08 19:44:15 +02:00
Andy Walsh
a41c67d16b fix copy&paste error for requestedRangeTypes preventing stream copy
- add >=0 check to subtitle index check
- fixes #8070, #7880
2022-07-08 13:56:09 +02:00
Bond-009
84a1674f39 Merge pull request #8013 from daullmer/parental_password_fix 2022-07-07 12:42:20 +02:00
David Ullmer
81e535fc62 Rollback changes in IUserManager 2022-07-04 19:19:46 +02:00
David Ullmer
f9d26ea1bc Use IsInRole 2022-07-04 19:08:40 +02:00
David Ullmer
5f3dbd8294 Allow administrator to always change password 2022-07-04 18:16:36 +02:00
Claus Vium
9cebdfdec0 Merge pull request #8038 from Shadowghost/secure-sudoers 2022-06-30 16:40:59 +02:00
Shadowghost
891ccd7bb2 Remove mount and unmount permissions for jellyfin group from sudoers 2022-06-30 14:57:16 +02:00
Joshua M. Boniface
54778d875d Bump version to 10.8.1 2022-06-26 21:00:05 -04:00
Joshua M. Boniface
39d185c7b1 Merge pull request #7964 from jellyfin/dovi-side-data 2022-06-26 20:55:36 -04:00
Joshua M. Boniface
a7d45b5d3a Merge pull request #7994 from nyanmisaka/fix-throttler 2022-06-26 20:53:03 -04:00
David Ullmer
7efa4e38c1 Fix password change during parental schedule 2022-06-26 14:06:40 +02:00
nyanmisaka
506ed6940b Detach TranscodingJob from StreamState 2022-06-26 16:01:46 +08:00
nyanmisaka
5dbe16d3e6 Re-enable throttler for HWA and Copy 2022-06-26 16:01:46 +08:00
nyanmisaka
4c178e9188 Remove 'using' from HLS/Progressive StreamState 2022-06-26 16:01:46 +08:00
nyanmisaka
50bc41d84d Add VideoDoViTitle to display DV compatibility 2022-06-25 18:43:32 +08:00
nyanmisaka
e931f5a32b Add tests 2022-06-25 18:43:32 +08:00
nyanmisaka
d2caed25fb Register DOVI side_data in db 2022-06-25 18:43:32 +08:00
nyanmisaka
3f37ef70e1 Add json parser for DOVI side_data 2022-06-25 18:43:32 +08:00
Claus Vium
d342b79218 Merge pull request #8001 from jellyfin/fix-yuvj420p-hwdec
Fix yuvj420p pixel format hardware decoding
2022-06-24 14:49:27 +02:00
nyanmisaka
c35fc382d4 Fix yuvj420p pixel format hardware decoding 2022-06-24 19:33:53 +08:00
Cody Robibero
cb6e6879e2 Merge pull request #7614 from mihawk90/fedora-spec-rework 2022-06-23 08:04:54 -06:00
Bond-009
a71b190142 Merge pull request #7988 from jellyfin/external-streams-exceptions 2022-06-23 15:45:55 +02:00
Bond-009
910df89cce Merge pull request #7975 from jellyfin/libva-driver-env 2022-06-23 15:33:14 +02:00
Bond-009
5f15339919 Merge pull request #7968 from jellyfin/fix-hwa-bluray 2022-06-23 15:32:35 +02:00
Joshua M. Boniface
56e7b323de Merge pull request #7984 from crobibero/dotnet-6.0.6
Upgrade to dotnet 6.0.6, update remaining dependencies
2022-06-23 09:13:35 -04:00
Cody Robibero
a3a751a4f5 Merge pull request #7985 from jellyfin/revert-7961-next_up_idk
Revert "refactor: use season number and episode number for NextUp ordering instead of SortName"
2022-06-21 06:05:26 -06:00
nyanmisaka
c85255a615 Log external streams exceptions 2022-06-21 19:59:23 +08:00
nyanmisaka
8ea8dcf128 Catch external streams exceptions 2022-06-21 19:56:32 +08:00
Cody Robibero
7884e7e829 Revert "refactor: use season number and episode number for NextUp ordering instead of SortName" 2022-06-20 08:55:19 -06:00
Cody Robibero
3478554249 Fix build 2022-06-20 08:54:46 -06:00
Cody Robibero
9898c10880 Update remaining dependencies 2022-06-20 08:52:30 -06:00
Cody Robibero
ec2ad4ec8c Upgrade to dotnet 6.0.6 2022-06-20 08:48:40 -06:00
Joshua M. Boniface
1ffc77b43d Merge pull request #7961 from cvium/next_up_idk
refactor: use season number and episode number for NextUp ordering instead of SortName
2022-06-20 09:58:27 -04:00
Joshua M. Boniface
ae79bbc34c Merge pull request #7960 from Shadowghost/subrip-encoder-fix 2022-06-20 09:57:57 -04:00
Joshua M. Boniface
52704e8dd0 Merge pull request #7955 from nyanmisaka/fix-ext 2022-06-20 09:57:43 -04:00
Joshua M. Boniface
294ab0757e Merge pull request #7887 from joshuaboniface/fix-restart.sh 2022-06-20 09:57:18 -04:00
nyanmisaka
bdd52df230 Override the VAAPI driver env if i965 device is known 2022-06-20 18:59:54 +08:00
Nyanmisaka
73117b079c Fix HWA decoders are not applied to BluRay folders
fixes #6834
2022-06-19 19:14:55 +08:00
Shadowghost
b60905f991 Add barebone ASS/SSA writers to SubtitleEncoder 2022-06-19 08:59:48 +02:00
Tarulia
6d5c697183 Add make in Fedora Docker install
Fedora 36 doesn't seem to ship make, so add it manually.
2022-06-18 22:35:36 +02:00
Shadowghost
24c56328f2 Add subrip to SubtitleFormat 2022-06-18 01:20:05 +02:00
cvium
ef037ad371 refactor: use season number and episode number for NextUp ordering instead of SortName 2022-06-18 00:07:54 +02:00
Shadowghost
a64e21f57a Fix subtitle encoder if subrip is requested 2022-06-17 23:17:23 +02:00
nyanmisaka
56e135f5e6 Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-06-18 01:50:08 +08:00
nyanmisaka
ae22d0b7a5 Fix output extension if user has no transcoding permission 2022-06-18 00:25:55 +08:00
Cody Robibero
b36543275f Merge pull request #7950 from nyanmisaka/brighter-vpp-tonemap 2022-06-17 10:01:37 -06:00
Cody Robibero
2c0c3eb3ee Merge pull request #7954 from cvium/fix_7953_dlna_url 2022-06-17 10:01:20 -06:00
Cody Robibero
f1d56aa5ce Merge pull request #7947 from nyanmisaka/video-range-condition 2022-06-17 10:01:06 -06:00
Nyanmisaka
0b6fbebf72 Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-06-17 16:49:16 +08:00
Claus Vium
db714f967e Merge pull request #7939 from 1337joe/track-selector-fix
Track selector fix
2022-06-17 10:23:53 +02:00
cvium
f020bd6f3b use ignore case for scheme comparison 2022-06-17 09:00:59 +02:00
cvium
3275f83c3b fix: use proper bind address for DLNA location url (#7953) 2022-06-17 08:57:59 +02:00
nyanmisaka
f7813803c2 Brighter VPP tone-mapping on Intel 2022-06-16 23:29:36 +08:00
nyanmisaka
477b922e4a Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-06-16 22:11:06 +08:00
nyanmisaka
be72001ff9 Add VideoRangeType to video conditions
This is used to distinguish whether the client supports specific VideoRangeType,
such as SDR, HDR10, HLG and DOVI. Usage is similar to Video Profile condition.
2022-06-16 21:32:54 +08:00
Cody Robibero
6749313249 Merge pull request #7940 from Shadowghost/fix-recommendations 2022-06-16 07:15:39 -06:00
Cody Robibero
4ebe70cf6a Merge pull request #7946 from cvium/svg 2022-06-16 07:14:56 -06:00
cvium
c4051ac16d fix release build 2022-06-16 12:31:50 +02:00
cvium
3491f0968b feat: partially handle SVG files and remove exceptions from blurhash and dimensions 2022-06-16 12:22:46 +02:00
Cody Robibero
fd4ffc6ba3 Merge pull request #7941 from jellyfin/fix-overflow 2022-06-15 15:27:07 -06:00
Tarulia
5912a49d1d Further cleanup of Fedora spec-file
* Replaced shell script used to start JF with a symlink, since it didn't
  do anything else.
* Sorted installs by category/path to make it easier to maintain the
  spec.
* Defined `%defattr` in file section so we don't need to set it on a
  by-file level. This also helps with the messed up default file
  permissions `dotnet publish` produces.
* Removed some duplicate attribute definitions in `%install` and
  `%files` sections. They are now all in the `%install` section because
  of `%defattr` being specified and overriding them otherwise.
2022-06-15 23:12:12 +02:00
Tarulia
f336647d57 Remove env-var after moving web-files on Fedora
* when running Jellyfin as a user from a terminal without passing
  arguments, it would not find the web-files. They were moved in the
  JF-web build for Fedora, so this env-var would point to an invalid
  location. By removing it, JF now checks the default location.
* fixes jellyfin/jellyfin-web#2059
2022-06-15 23:12:12 +02:00
Tarulia
9b805c9e83 Use Fedora 36 image in Fedora Docker builds
* fixes #7504
2022-06-15 23:11:47 +02:00
Tarulia
19ccf414ac Fedora build: Filter dependency to fix F36 build
* fixes #7471
* Filter for F36+ since we don't know when (if ever) this issue will be
  fixed (it's up to .NET SDK). If it's ever fixed we can adjust or
  remove this condition.
2022-06-15 23:09:26 +02:00
Tarulia
0504ed9fe6 Standardise and cleanup Fedora build
* Remove additional dotnet-preview repo from Makefile
  * Repo doesn't seem maintained, and maintainers actively discourage
    the usage in production in its description
  * Considering this, we should build with stable .NET releases, which
    Fedora and RHEL 8+ repos already provide
* Use Fedora-version-specific runtime-identifier for `dotnet publish`
  * This has no actual effect right now judging by the [RID
    catalog](3efd59151a/docs/core/rid-catalog.md),
    so this is just future proofing.
* Remove AutoReqProv
  * There's rarely a reason to use this feature, this is not one of them
  * In the [proposal of this
    feature](https://fedoraproject.org/wiki/AutoReqProv_(draft)#Usage)
    it is stated that this is not to be used on packages with binaries
    in /usr/bin and others, which is the case in this package.
  * also didn't seem to work since we were still having dependency
    issues with implicit dependencies (see jellyfin/jellyfin#7471 )
* Removed DOTNET_SKIP_FIRST_TIME_EXPERIENCE as it is unused in .NET SDK
  * see dotnet/sdk#9945
  * it's already merged for removal in future versions
* Move building process `dotnet publish` to %build section
  * Also removed `--output` from this due to an outstanding bug on SDK's
    side. This also separates building and installing as intended
* define LICENSE as %license, which automatically puts it in a
  standardised directory
2022-06-15 23:09:26 +02:00
Tarulia
c243f588a0 Adjust license in Fedora Spec according to LICENSE 2022-06-15 23:09:26 +02:00
Tarulia
46491d0813 Rewrite Fedora build version detection
Rewrite so we don't need to constantly update with every new Fedora
release. This is especially useful when Fedora and Jellyfin release
cycles don't line up.

Version selection is as follows:
* TARGET environment variable, which is currently used already
* Currently running Fedora version
* Hardcoded Fallback version that can be updated occasionally
2022-06-15 23:09:26 +02:00
nyanmisaka
c7c0cdad95 Fix the map index of externel audio 2022-06-15 23:39:27 +08:00
nyanmisaka
255f5a6707 Fix the int overflow issue in encoder bufsize 2022-06-15 23:27:49 +08:00
Shadowghost
3f497459cb Fix recommendations 2022-06-15 12:34:04 +02:00
Joe Rogers
5d66c84f2d Fix default audio selection ignoring type 2022-06-15 11:58:12 +02:00
Joe Rogers
052a59ac3e Add tests for preferred audio language selection 2022-06-15 11:58:01 +02:00
Claus Vium
1b8a251991 Merge pull request #7934 from Bond-009/xmlasync2
Enable XmlReaderSettings.Async, fixes #7929
2022-06-14 21:24:19 +02:00
Bond-009
1a787e273a Merge pull request #7873 from cvium/fix_nfo_remoteimages 2022-06-14 19:11:37 +02:00
Bond_009
16fba6035c Enable XmlReaderSettings.Async, fixes #7929 2022-06-14 18:16:49 +02:00
Cody Robibero
d73e9f3af5 Fix splashscreen (#7895) 2022-06-14 08:18:35 -06:00
Cody Robibero
2888080098 Merge pull request #7924 from jellyfin/improve-swdec-amf-tonemap 2022-06-14 08:18:22 -06:00
Nyanmisaka
c8282e8441 Apply suggestions from code review
Co-authored-by: Bond-009 <bond.009@outlook.com>
2022-06-14 17:41:16 +08:00
Cody Robibero
b295b0478c Merge pull request #7925 from nyanmisaka/remove-mpeg4-amf 2022-06-13 16:27:45 -06:00
Cody Robibero
42aaea3556 Merge pull request #7913 from cvium/fix_response_logging 2022-06-13 16:27:38 -06:00
Cody Robibero
07b39655eb Merge pull request #7911 from cvium/fix_keyframe_transcode 2022-06-13 16:27:31 -06:00
Cody Robibero
0f75f17736 Merge pull request #7894 from crobibero/search-hints 2022-06-13 16:27:16 -06:00
nyanmisaka
83d8dbf93e Remove MPEG4 hwaccel from AMF 2022-06-14 02:21:00 +08:00
Nyanmisaka
e5aa708cb9 Improve AMF tonemap speed when using sw decoding
Reduce memory copy-back, also set the target device of hwupload explicitly.
2022-06-14 00:48:16 +08:00
cvium
ac760b9c86 fix: read configuration during Invoke instead of during construction 2022-06-13 11:53:19 +02:00
cvium
c07c7b753c fix: only use keyframes when remuxing video 2022-06-13 10:32:34 +02:00
Claus Vium
8b69b0f521 Merge pull request #7885 from iwalton3/fix-navigation-buttons
Prevent 400 error when using navigation buttons.
2022-06-13 09:47:25 +02:00
Cody Robibero
079fac4a54 Switch to FirstOrDefault extension 2022-06-12 09:17:18 -06:00
Cody Robibero
21afec3225 Merge pull request #7892 from cvium/fix_tv_multi 2022-06-12 07:54:32 -06:00
Ian Walton
11c5a0b182 Prevent 400 error when using navigation buttons.
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-06-12 09:00:35 -04:00
cvium
f318417c4f fix: tv shows do not support multi edition 2022-06-12 13:55:17 +02:00
Joshua M. Boniface
874fcaba69 Move service hardening options to override config
Some combination of these options were causing problems with the
functionality of restart.sh as described in the comment and in detail in
issue #7503.

While these seem OK on their face, the implications of this breaking
restart.sh means that they could potentially break other things too.

Thus, we should move these into the optional override file which is in
the administrator's full control, instead of in the default unit, and
leave them off unless a user or package maintainer (e.g. NixOS as
described in the original issue #6952) wants to enable them.

Fixes #7503
2022-06-12 01:05:29 -04:00
cvium
5204863705 fix: respect the image refresh options when parsing remote images from NFO 2022-06-11 15:08:07 +02:00
Joshua M. Boniface
93941f9728 Bump version to 10.8.0 2022-06-10 22:16:13 -04:00
Joshua M. Boniface
aa0f6cb5eb Merge pull request #7868 from cvium/disable_dlna 2022-06-10 21:59:21 -04:00
Cody Robibero
69cc1e0bd8 Merge pull request #7867 from crobibero/name-guid-pair 2022-06-10 10:39:51 -06:00
cvium
007856e61a actually disable DLNA... 2022-06-10 09:04:07 +02:00
cvium
b4954985be chore: disable DLNA by default 2022-06-10 08:56:58 +02:00
Cody Robibero
6b16d90b9b Don't add MigrationOptions to the api spec 2022-06-09 14:26:05 -06:00
Luke Brown
0f7ba42987 move the Dispose logic into DisposeAsyncCore 2022-06-06 23:59:09 -05:00
Cody Robibero
2a89683e80 Merge pull request #7854 from cvium/enable_mkv_keyframe_extraction 2022-06-06 09:40:38 -06:00
Bond-009
8595a979a8 Merge pull request #7828 from nyanmisaka/fix-dovi-tonemap
Fix Dolby Vision profile 5 and 8 to SDR HW tone-mapping
2022-06-06 17:29:39 +02:00
nyanmisaka
1900096012 Fix the too high default qmin option in amf encoders 2022-06-06 21:46:36 +08:00
nyanmisaka
0e8da3e805 Remove the redundant -sc_threshold from hw encoders 2022-06-06 21:46:36 +08:00
nyanmisaka
84c9e7a22b Fix thumbnail extraction in DoVi 2022-06-06 21:46:36 +08:00
nyanmisaka
be28f940b7 Fix the issue that analyzeduration env is not applied 2022-06-06 21:46:36 +08:00
nyanmisaka
fb95fb1a73 Update DoVi 10bit codec tags and remove extra -strict options 2022-06-06 21:46:36 +08:00
nyanmisaka
910995f922 Fix Dolby Vision profile 5 and 8 to SDR HW tone-mapping 2022-06-06 21:46:36 +08:00
cvium
4f0666ac5c chore: enable on demand keyframe extraction for mkv 2022-06-06 15:41:01 +02:00
Joshua M. Boniface
4bfadbc636 Merge pull request #7852 from nyanmisaka/fix-skia
Fix the PNG image decoding issue in Skia
2022-06-06 09:02:51 -04:00
nyanmisaka
2cc896251f Fix the PNG image decoding issue in Skia
Regression was introduced in 2.88.0: https://github.com/mono/SkiaSharp/issues/2095
2022-06-06 19:47:50 +08:00
Cody Robibero
5e343d30e1 Merge pull request #7810 from Bond-009/unaccpattern 2022-06-04 17:23:40 -06:00
Cody Robibero
df6c5b6d42 Merge pull request #7842 from crobibero/dependency-backport 2022-06-04 17:23:04 -06:00
Bond_009
754bda8f73 IAsyncDisposable is one big pitfall
https://docs.microsoft.com/en-us/dotnet/standard/garbage-collection/implementing-disposeasync#unacceptable-pattern

Regex used:
```
await using \(.+\)
\W+await using
```
2022-06-04 14:34:59 +02:00
Cody Robibero
3721b5e985 Backport all dependency updates 2022-06-03 18:53:05 -06:00
Luke Brown
3e8fe1ce11 change placeholder text in LogDebug message 2022-05-31 21:49:01 -05:00
Cody Robibero
77c73e241f Merge pull request #7781 from crobibero/live-tv-infinite 2022-05-29 08:49:50 -06:00
Cody Robibero
9954cbd550 Merge pull request #7802 from jellyfin/external 2022-05-29 08:49:36 -06:00
Cody Robibero
d8f1a87c85 Update Emby.Server.Implementations/Session/SessionManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-05-27 16:25:31 -06:00
Cody Robibero
bf0a7c374c Close live stream on session end 2022-05-27 15:58:31 -06:00
Cody Robibero
8a6b26cd42 initial patch 2022-05-27 15:57:51 -06:00
Joe Rogers
b369194710 Fix tests 2022-05-27 06:12:16 +08:00
Nyanmisaka
293bcfb342 Exclude streams with mismatched types in external files 2022-05-27 06:12:10 +08:00
Cody Robibero
1c5571b24e Remove conditional skia inclusion (#7799) 2022-05-26 16:32:37 +02:00
Cody Robibero
b507d1a780 Merge pull request #7792 from crobibero/skia-native
Conditionally include platform specific Skia assets
2022-05-24 19:40:05 -06:00
Cody Robibero
d471be8d92 Merge pull request #7784 from crobibero/support-transcoding 2022-05-24 14:01:40 -06:00
Cody Robibero
3c5b4b9a27 Conditionally include platform specific Skia assets 2022-05-24 11:19:17 -06:00
Cody Robibero
c9491cf317 Merge pull request #7785 from dmitrylyzo/clear-transcodinginfo
Clear TranscodingInfo if play method changed
2022-05-24 07:59:13 -06:00
Dmitry Lyzo
c5dae18034 Apply suggestions from review 2022-05-23 07:49:54 -06:00
Dmitry Lyzo
ff4f624850 Clear TranscodingInfo if play method changed 2022-05-22 22:17:03 +03:00
Cody Robibero
d29a423475 Enable SupportsTranscoding if device has transcoding profiles 2022-05-22 11:06:38 -06:00
Cody Robibero
4c0510ee6d Merge pull request #7775 from crobibero/openapi-version 2022-05-21 08:59:24 -06:00
Cody Robibero
492c6bbd7e Merge pull request #7780 from 1337joe/fix-tv-guide-search-2 2022-05-21 08:59:13 -06:00
Joe Rogers
84878f537c Support searching with tv program filters 2022-05-21 13:11:26 +02:00
Cody Robibero
825e6460c9 Merge pull request #7774 from crobibero/api-authinfo 2022-05-20 20:49:25 -06:00
Cody Robibero
760b021032 Manually describe Version for openapi 2022-05-20 16:29:43 -06:00
Cody Robibero
a532a866e3 Populate authentication info with server details if using API key 2022-05-19 17:50:29 -06:00
Joshua M. Boniface
71bf567045 Merge pull request #7766 from crobibero/dotnet-6.0.5 2022-05-19 19:06:40 -04:00
Luke Brown
044ff0542b adding interface changes 2022-05-19 16:40:48 -05:00
Luke Brown
abfbd04782 Moved IAsyncDisposable and IDisposable from WebSocketConnection to it's interface. Added private variable and guard statement to avoid disposing of WebSocketConnection unnecessarily. 2022-05-18 21:04:22 -05:00
Luke Brown
8d0024ec49 change logging back to debug 2022-05-16 22:35:45 -05:00
Luke Brown
8f761a64f5 revert changes to SessionManager 2022-05-16 22:33:04 -05:00
Luke Brown
a64eebe79f changes to use dispose 2022-05-16 22:09:41 -05:00
Cody Robibero
a82e378da9 Update to dotnet 6.0.5 2022-05-16 14:14:26 -06:00
Joshua M. Boniface
884a59da07 Merge pull request #7724 from jtcasper/perms 2022-05-15 20:26:00 -04:00
Joshua M. Boniface
5a9e5e0d5d Merge pull request #7712 from jellyfin/fix-hevc-disable-option 2022-05-15 20:25:01 -04:00
Joshua M. Boniface
85cfea4c50 Merge branch 'release-10.8.z' into fix-hevc-disable-option 2022-05-15 20:24:52 -04:00
Joshua M. Boniface
3ea67374ae Merge pull request #7741 from LewkyB/fix-improperly-labeled-four-digit-episode-numbering
Fix to allow for episode numbering over 999 in certain scenarios
2022-05-15 20:23:59 -04:00
Joshua M. Boniface
5da4bcc782 Merge pull request #7736 from jellyfin/fix-swscale-pgs 2022-05-15 20:22:24 -04:00
Joshua M. Boniface
b46d61dfdf Merge pull request #7699 from Shadowghost/streambuilder-fix 2022-05-15 20:22:13 -04:00
Joshua M. Boniface
8119e4a573 Merge pull request #7749 from cvium/disable_auto_add_collection 2022-05-15 20:21:40 -04:00
Joshua M. Boniface
de3c68d474 Bump version to 10.8.0-beta3 2022-05-15 20:16:25 -04:00
cvium
7aa0db24d8 fix: disable "Automatically add to collection" by default 2022-05-15 14:53:40 +02:00
Luke Brown
be832e82cc change capture groups to take up to 4 digits and adding inline data to test 2022-05-11 22:22:52 -05:00
nyanmisaka
368d10d042 Fix the mismatched resolution in sw PGS burn-in 2022-05-11 19:18:31 +08:00
Nyanmisaka
9523a1682b Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-05-11 16:38:30 +08:00
Luke Brown
8bb4cd017c applied reviewer suggestions: removing unnecessary async and adding necessary async 2022-05-10 08:28:01 -05:00
Luke Brown
c5f09ab650 Fix broken CI by adding await 2022-05-09 23:59:31 -05:00
luke92brown
99df9c8fcd Replace redundant xml comments with inheritdoc. Make async changes to CloseSocket. 2022-05-09 23:44:37 -05:00
luke brown
4b563f4d7e Fix web sockets closing ungracefully 2022-05-09 23:44:24 -05:00
Jacob Casper
e67d8ce077 Don't let permission denied kill library scans
I have a single `./Movies` directory that contains symlinks to many
other directories, some of which are in shared paths. Other daemons
sometimes overwrite permissions on these paths and prevent Jellyfin from
being able to scan. Because this exception is unhandled within a LINQ
statement it can randomly kill the metadata refresh for my entire Movies
library.

Running with this patch has allowed me to at least add + scan for
movies in directories that Jellyfin can currently access and gives me
some notification of the symlinks failing due to permissions errors.

(cherry picked from commit 193cc8690a60bc2a432df14d256f00371e055c90)
2022-05-09 10:49:52 -05:00
Cody Robibero
39196bb5e2 Merge pull request #7723 from crobibero/tmdb-lib 2022-05-09 07:32:36 -06:00
Nyanmisaka
5386f06095 Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-05-09 17:09:03 +08:00
Cody Robibero
5a9afb0874 Merge pull request #7716 from Shadowghost/opus-fix
Respect limited opus sampling rates when building trancoding command
2022-05-08 15:23:58 -06:00
Shadowghost
029be321d1 Respect limited opus sampling rates when building trancoding command 2022-05-08 22:28:45 +02:00
Cody Robibero
96b7c46df4 Update TMDbLib to 1.9.2 2022-05-08 13:28:57 -06:00
Bond-009
f7ef7d9eda Merge pull request #7718 from jellyfin/dovi-hevc-remux 2022-05-08 21:06:03 +02:00
Nyanmisaka
c69e79f64d Fix the disordered color in Dolby Vision remuxing on Safari 2022-05-07 22:43:32 +08:00
nyanmisaka
4b1256e67b Fix the issue that HEVC transcoding can't be disabled 2022-05-06 02:27:16 +08:00
Bond-009
8d1d973438 Merge pull request #7604 from Jellifi007/fixes-diactritics
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-05-05 19:59:17 +02:00
Cody Robibero
60affd0965 Merge pull request #7529 from Shadowghost/strm-ffprobe-external-fix 2022-05-04 08:20:48 -06:00
Cody Robibero
8a1eca0913 Merge pull request #7544 from jaantaponen/long-filename-fix 2022-05-04 08:19:43 -06:00
Shadowghost
a4e4b761d5 Apply review suggestions 2022-05-04 16:13:06 +02:00
Shadowghost
2be9a34b26 Fix tests and profiles 2022-05-03 22:22:46 +02:00
Shadowghost
0c8b9091a5 Fix streambuilder reasons for direct playback checks 2022-05-03 15:48:46 +02:00
Shadowghost
128d54622a Fix stream index and subtitle container handling, preserve attachments and nonexternal streams between scans 2022-05-03 11:10:58 +02:00
Shadowghost
21ce0e58c6 Properly handle stream addition and removal for strm use cases 2022-05-03 11:10:58 +02:00
Cody Robibero
3229ba4918 Merge pull request #7693 from crobibero/auth-migrate 2022-05-02 07:41:13 -06:00
Cody Robibero
105f057512 Don't migrate auth token if user doesn't exist 2022-05-01 17:55:20 -06:00
Jaan Taponen
b6a2640f22 Update Emby.Server.Implementations/LiveTv/EmbyTV/RecordingHelper.cs
Co-authored-by: Joe Rogers <1337joe@users.noreply.github.com>
2022-04-30 22:24:11 +03:00
Cody Robibero
a2abae3014 Merge pull request #7654 from Shadowghost/nfo-provider-fix
Prefer MetadataProvider enum as provider id key over arbitrary strings
2022-04-27 18:16:31 -06:00
Shadowghost
7084541508 Prefer MetadataProvider enum as provider id key over arbitrary strings 2022-04-24 21:27:17 +02:00
Joshua M. Boniface
e87240b374 Merge pull request #7648 from jellyfin/libssl3-jammy
Add libssl3 as an alternative dependency for Ubuntu 22.04 LTS
2022-04-23 10:53:25 -04:00
Nyanmisaka
057d5dfc25 Add libssl3 as an alternative dependency for Ubuntu 22.04 LTS 2022-04-23 18:53:59 +08:00
Cody Robibero
12f9132975 Merge pull request #7643 from jellyfin/h264-level 2022-04-22 16:40:53 -06:00
Nyanmisaka
4a1aa619d2 Fix H264 level on safari fmp4 2022-04-22 17:36:36 +08:00
Jellifi007
1002d1d193 Update src/Jellyfin.Extensions/StringExtensions.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-04-22 09:01:19 +02:00
Cody Robibero
7c91543694 Merge pull request #7638 from 1337joe/fix-quick-connect-tests 2022-04-21 17:48:29 -06:00
Joe Rogers
b04211a707 Fix quick connect tests 2022-04-21 23:24:45 +02:00
Cody Robibero
fcb65ac38d Merge pull request #7634 from neilsb/patch-1
Correct LocalTrailerCount in API
2022-04-21 14:26:17 -06:00
Jellifi007
727402f7f7 Adding Korean language tests Addresses #6393 2022-04-21 22:17:25 +02:00
Neil Burrows
2a1ca4badc Use already defined variable
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-04-21 11:11:25 +01:00
Neil Burrows
7f52f77ef5 Correct LocalTrailerCount in API
Revert a change which resulted in the `LocalTrailerCount` including the count of Local and Remote trailers which had been introduced in 10.8.
2022-04-21 11:03:33 +01:00
Cody Robibero
1d5961126e Merge pull request #7624 from nielsvanvelzen/quickconnect-enable-d 2022-04-20 17:37:53 -06:00
Cody Robibero
ec6f7bdcff Merge pull request #7625 from crobibero/xml-cache-delete 2022-04-20 17:37:44 -06:00
Cody Robibero
65c47c79da Only delete cache file if exist 2022-04-20 17:37:26 -06:00
Niels van Velzen
5d9df10e27 Enable Quick Connect by default 2022-04-19 21:48:11 +02:00
Joshua M. Boniface
d45d228b36 Bump version to 10.8.0-beta2 2022-04-17 15:52:43 -04:00
JaanTaponen
2b7d139b5b Fix XMLTV edge case where title & sub-title causes a too long filename error
Limit the series title to 241 bytes (so file extensions can be added).
If the end result is longer, the title will be dropped and only series name
with timestamp is used.
2022-04-17 16:46:01 +03:00
Cody Robibero
a280ff603f Merge pull request #7543 from daullmer/nfo-datefix 2022-04-17 06:40:28 -06:00
Cody Robibero
9beb3aff4e Merge pull request #7605 from crobibero/playback-start-stop
Add missing properties to PlaybackStart, PlaybackStop
2022-04-16 06:03:05 -06:00
Cody Robibero
066bdc1e72 Add missing properties to PlaybackStart, PlaybackStop 2022-04-15 17:44:30 -06:00
Cody Robibero
5833c70725 Merge pull request #7537 from dmitrylyzo/fix-streambuilder 2022-04-15 13:29:20 -06:00
Cody Robibero
cd93f49fa8 Merge pull request #7592 from 1337joe/live-tv-fixes 2022-04-15 13:29:10 -06:00
Cody Robibero
93009682b3 Merge pull request #7591 from 1337joe/update-xmltv 2022-04-15 13:29:00 -06:00
Jellifi007
56573f14b0 Fixes diactritics regressions 2022-04-15 20:14:13 +02:00
Joe Rogers
9001eaa67e Check cache file age directly and replace if old 2022-04-13 22:45:17 +02:00
Joe Rogers
76010e80dd Update Jellyfin.XmlTv to 10.8.0 2022-04-13 20:07:14 +02:00
Joshua M. Boniface
5778541d2f Merge pull request #7590 from crobibero/dotnet-6.0.4 2022-04-13 12:06:56 -04:00
Cody Robibero
cb0baddde3 Update to dotnet 6.0.4 2022-04-12 17:34:08 -06:00
Dmitry Lyzo
0ff37413b0 fix: Fix transcode reasons
Don't add codec failure reasons if the codec isn't supported.
2022-04-12 22:56:23 +03:00
Dmitry Lyzo
d5434988d7 test: Add tests for Tizen 3/4 2022-04-12 22:56:23 +03:00
Dmitry Lyzo
847518701d fix: Fix codec conditions
`ApplyConditions` is used to determine the applicability of
the current codec (`Conditions`).
`Conditions` is the actual conditions for the stream.

`CodecType.VideoAudio` (not `CodecType.Video`) must be used
for the audio tracks in the video.
2022-04-12 22:56:23 +03:00
Cody Robibero
c5212a20a3 Merge pull request #7580 from jellyfin/external-audio-map 2022-04-12 13:41:21 -06:00
Cody Robibero
385a0b9437 Merge pull request #7567 from cvium/fix_xmltv_caching 2022-04-12 13:40:05 -06:00
Nyanmisaka
884ba4f3ed Fix the wrong external audio map index if text subtitle exists 2022-04-10 22:49:40 +08:00
Cody Robibero
cba6a4e3f3 Merge pull request #7578 from Shadowghost/extension-parser-fix
Remove mp2 from video file extensions
2022-04-10 06:24:50 -06:00
Shadowghost
d5f44f7a5c Remove mp2 from video file extensions 2022-04-10 14:02:17 +02:00
Cody Robibero
bf1ccf7493 Merge pull request #7521 from 1337joe/image-mime-fallback
Add fallback for image downloads with bad reported MediaType
2022-04-09 08:46:06 -06:00
Cody Robibero
d7c548f3db Merge pull request #7561 from DMouse10462/named-config-api-fix
Fix NamedConfiguration API Generation
2022-04-09 08:45:13 -06:00
Joshua M. Boniface
a7abdca47a Merge pull request #7569 from crobibero/repo-auth 2022-04-08 11:23:30 -04:00
Cody Robibero
7a8eaa8811 Require elevation to save the list of plugin repositories 2022-04-08 08:46:55 -06:00
cvium
045dca49d0 fix: use the checksum as temp folder name when extracting xmltv listings 2022-04-07 22:12:12 +02:00
David Mouse
e9ce82445e Add ConfigurationType Types to generated OpenAPI
This allows clients to see and work with the associated types for each NamedConfiguration key, even if the UpdateNamedConfiguration endpoint doesn't properly advertise its types.
2022-04-05 23:19:27 -04:00
David Mouse
2133c6e348 Parameterize request body of UpdateNamedConfiguration
This gives OpenAPI clients the knowledge that they should provide a body of some kind.
2022-04-05 23:19:27 -04:00
Cody Robibero
5de2db9f52 Merge pull request #7507 from crobibero/studio-image-plugin
Fix StudioImageProvider
2022-04-05 05:52:48 -06:00
Cody Robibero
620625c4c1 Merge pull request #7557 from jellyfin/pgs-qsv-iris655 2022-04-04 16:05:50 -06:00
Nyanmisaka
e0b035e34e Apply suggestions from code review
Co-authored-by: Shadowghost <Shadowghost@users.noreply.github.com>
2022-04-05 00:02:13 +08:00
Nyanmisaka
1946414e14 Fix PGS burn-in on certain iGPU such as Iris Plus 655 2022-04-04 23:48:12 +08:00
Cody Robibero
132c85e554 Merge pull request #7542 from 1337joe/make-recording-stop
Make recording stop at scheduled stop time
2022-04-04 07:20:20 -06:00
Joe Rogers
9d1049e83f Make Record call block until finished as expected 2022-04-04 14:43:14 +02:00
Cody Robibero
72aca15191 Merge pull request #7548 from 1337joe/comparer-null-fix 2022-04-04 06:30:24 -06:00
Cody Robibero
577325b788 Merge pull request #7523 from crobibero/null-stream
Allow media without streams to playback
2022-04-04 05:45:45 -06:00
Cody Robibero
fec2cf5060 Merge pull request #7551 from cvium/fix_trailertype
fix: remove (incorrect) negation of bool expression
2022-04-04 05:02:58 -06:00
cvium
53b06ce4e3 fix: remove (incorrect) negation of bool expression 2022-04-04 08:35:41 +02:00
Cody Robibero
bdb85aeecf Merge pull request #7549 from cvium/fix_isinlocalnetwork 2022-04-03 16:38:04 -06:00
cvium
e299adc819 fix: use stdlib IPAddress.IsLoopback 2022-04-04 00:03:54 +02:00
Joe Rogers
0674f84e9e Add check so nulls will result in valid sort 2022-04-03 22:50:32 +02:00
David Ullmer
b6086398d3 Write Global Date to nfo files 2022-04-02 19:46:15 +02:00
Cody Robibero
1d585146d6 Merge pull request #7519 from nielsvanvelzen/resolverpriority-plugin2 2022-03-30 20:11:46 -06:00
Cody Robibero
aa1b1c6bbb Merge pull request #7527 from Shadowghost/mediaresolver-fix 2022-03-30 20:10:36 -06:00
Cody Robibero
bebe1808ce Merge pull request #7525 from 1337joe/fix-duplicate-library-media-paths 2022-03-30 20:10:12 -06:00
Shadowghost
fb2e4c2e1a Remove video file from file list before processing external files 2022-03-30 22:48:48 +02:00
Joe Rogers
784ed796ce Update name so media paths store to correct library 2022-03-30 15:20:57 +02:00
Cody Robibero
579155a571 Allow media without streams to playback 2022-03-29 20:17:12 -06:00
Joe Rogers
ca16a55a47 Add fallback for image downloads with bad MediaType 2022-03-29 21:42:54 +02:00
Niels van Velzen
e2ffd41141 Add new priority level to ResolverPriority for plugins 2022-03-29 20:00:50 +02:00
Cody Robibero
ca67a48140 Merge pull request #7512 from crobibero/update-plugin 2022-03-28 16:34:46 -06:00
Claus Vium
d2ce315c1d Merge pull request #7506 from crobibero/set-permissions
Safely get/set User permission/preference
2022-03-28 23:02:42 +02:00
Cody Robibero
6a6874aa16 Catch checksum mismatch when updating plugins 2022-03-28 06:48:21 -06:00
Cody Robibero
6f45848b51 Safely set/get user permission 2022-03-28 06:45:47 -06:00
Cody Robibero
23ba15ccfb Fix StudiosImageProvider 2022-03-27 21:42:35 -06:00
Joshua M. Boniface
5376c37d42 Bump packaging version to 10.8.0~beta1 2022-03-27 12:12:24 -04:00
Saiyd
a0eb1fd28b Translated using Weblate (Portuguese (Brazil))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pt_BR/
2022-03-26 19:06:12 -04:00
Cody Robibero
130c935bc3 Merge pull request #7495 from crobibero/fix-entrypoint 2022-03-26 14:33:02 -06:00
Cody Robibero
003c48e351 Merge pull request #7496 from crobibero/transcode-reason 2022-03-26 14:32:54 -06:00
Cody Robibero
96a03776e1 Fix TranscodeReasons property name 2022-03-26 12:20:29 -06:00
Cody Robibero
ac33adf219 Learn how DllImport works before making changes 2022-03-26 12:14:09 -06:00
Cody Robibero
4fa7f49ffc Merge pull request #7202 from knackebrot/unix-perms 2022-03-26 07:24:06 -06:00
Cody Robibero
0a068b924f Fix casing of chmod 2022-03-26 07:12:35 -06:00
Cody Robibero
d80c4ee381 Merge pull request #7492 from crobibero/sort-by 2022-03-25 13:33:29 -06:00
Cody Robibero
e6014bb8d3 Merge pull request #7493 from Shadowghost/dlna-fix 2022-03-25 13:33:20 -06:00
Cody Robibero
8056b0e961 Merge pull request #7443 from whiteowl3/strm-probe 2022-03-25 13:33:10 -06:00
whiteowl3
6a7775de6e empty line required by linter 2022-03-25 19:08:03 +00:00
Shadowghost
4e91c3ebdc Fix DLNA DirectPlay 2022-03-25 18:02:31 +01:00
Cody Robibero
78a8c26690 Don't allow unknown sort-by 2022-03-25 09:18:18 -06:00
Joshua M. Boniface
c229f3ae0a Merge pull request #7333 from eyezak/hls/audio-bitstream-fmp4 2022-03-25 10:13:58 -04:00
Nyanmisaka
3cea6c61f3 Apply suggestions from code review 2022-03-25 22:12:56 +08:00
Joshua M. Boniface
8197e5921e Merge pull request #7198 from dmitrylyzo/transcode-conditions 2022-03-25 10:11:45 -04:00
Jason S
5f7ffd7863 Translated using Weblate (Kannada)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kn/
2022-03-25 05:51:28 -04:00
Jason S
c28025ba5e Added translation using Weblate (Kannada) 2022-03-25 04:44:39 -04:00
Rhodri
af5200857e Translated using Weblate (Welsh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cy/
2022-03-23 20:24:28 -04:00
Joshua M. Boniface
97d3212410 Merge pull request #7437 from Nalsai/mks-attachments 2022-03-23 20:19:32 -04:00
Rhodri
8780fc0ea1 Translated using Weblate (Welsh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cy/
2022-03-23 17:28:09 -04:00
Joshua M. Boniface
570660099b Merge pull request #7483 from jellyfin/swdec-cu-tonemap 2022-03-23 15:25:39 -04:00
Joshua M. Boniface
945fb8b72e Merge pull request #7488 from crobibero/flag-enum-openapi 2022-03-23 15:24:31 -04:00
whiteowl3
16a449a023 Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-03-23 13:19:05 -04:00
whiteowl3
669029595b Update MediaBrowser.Providers/MediaInfo/MediaInfoResolver.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-03-23 13:18:34 -04:00
Cody Robibero
72cfa6d7c9 Fix spec generation for TranscodeReason 2022-03-23 08:32:33 -06:00
Cody Robibero
7fb21132dd Merge pull request #7487 from InvoxiPlayGames/dlna-fix 2022-03-22 19:10:08 -06:00
Mocanu Marian
3bf5a7b801 Translated using Weblate (Romanian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ro/
2022-03-22 20:13:37 -04:00
tokiedokie
74bdad82c1 Translated using Weblate (Japanese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ja/
2022-03-22 20:13:37 -04:00
nextlooper42
c59087606c Translated using Weblate (Slovak)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sk/
2022-03-22 20:13:37 -04:00
Nils Fürniß
d7d36a102a Fix releasing lock 2022-03-22 19:17:49 +01:00
Nils Fürniß
b4bb82b6d7 Improve code 2022-03-22 19:17:48 +01:00
Nils Fürniß
eb44f892b8 Only extract attachments from external .mks file 2022-03-22 19:17:48 +01:00
Nils Fürniß
90463d5e4f Pass CancellationToken to ExtractAllAttachments 2022-03-22 19:17:48 +01:00
Nils Fürniß
6904edf68c add extracting attachments from external subs 2022-03-22 19:17:48 +01:00
InvoxiPlayGames
dc8fdb154a get DLNA profile in XML request, correctly format UUID 2022-03-22 16:04:55 +00:00
Cody Robibero
c512e783b3 Merge pull request #7480 from jellyfin/dependabot/nuget/StyleCop.Analyzers-1.2.0-beta.406 2022-03-21 11:10:06 -06:00
Cody Robibero
4398475aac Merge pull request #7481 from jellyfin/dependabot/nuget/libse-3.6.5 2022-03-21 11:09:38 -06:00
Nyanmisaka
fb8ae0e9a1 Improve fps for cuda tonemap in sw decoding
avoid second copy if subtitle is not applied.
2022-03-22 00:45:07 +08:00
dependabot[bot]
5d44e45b90 Bump libse from 3.6.4 to 3.6.5
Bumps [libse](https://github.com/SubtitleEdit/subtitleedit) from 3.6.4 to 3.6.5.
- [Release notes](https://github.com/SubtitleEdit/subtitleedit/releases)
- [Changelog](https://github.com/SubtitleEdit/subtitleedit/blob/master/Changelog.txt)
- [Commits](https://github.com/SubtitleEdit/subtitleedit/compare/3.6.4...3.6.5)

---
updated-dependencies:
- dependency-name: libse
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-21 12:22:20 +00:00
dependabot[bot]
dde984bd0e Bump StyleCop.Analyzers from 1.2.0-beta.376 to 1.2.0-beta.406
Bumps [StyleCop.Analyzers](https://github.com/DotNetAnalyzers/StyleCopAnalyzers) from 1.2.0-beta.376 to 1.2.0-beta.406.
- [Release notes](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/releases)
- [Commits](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/compare/1.2.0-beta.376...1.2.0-beta.406)

---
updated-dependencies:
- dependency-name: StyleCop.Analyzers
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-21 12:22:11 +00:00
Cody Robibero
ba11add83b Merge pull request #7445 from Bond-009/baseitem 2022-03-20 08:01:31 -06:00
lyaschuchenko
e86e64807d Translated using Weblate (Ukrainian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/uk/
2022-03-20 04:13:37 -04:00
fatihbural
320ab8db6a Translated using Weblate (Turkish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/tr/
2022-03-20 04:13:37 -04:00
Henrik Söderlund
60e0becc54 Translated using Weblate (Swedish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sv/
2022-03-20 04:13:37 -04:00
millallo
acd4a97e65 Translated using Weblate (Italian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/it/
2022-03-20 04:13:37 -04:00
Joel Tony
009e3a6c72 Translated using Weblate (English (United Kingdom))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/en_GB/
2022-03-20 04:13:37 -04:00
xnick
f8b5631d62 Translated using Weblate (Greek)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/el/
2022-03-20 04:13:37 -04:00
3ole
8871e5af4b Translated using Weblate (German)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/de/
2022-03-20 04:13:36 -04:00
Xavier Rosell
4c117b0259 Translated using Weblate (Catalan)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ca/
2022-03-20 04:13:36 -04:00
Dmitry Lyzo
e4137a6279 Fix remuxing 2022-03-20 09:11:46 +03:00
Dmitry Lyzo
1fe82d0deb Add TranscodingProfile conditions 2022-03-20 09:11:46 +03:00
Cody Robibero
588c349eb4 Merge pull request #7477 from crobibero/requested-bitrate 2022-03-19 17:41:29 -06:00
Cody Robibero
b9c3a497d5 Use requested bitrate for calculations 2022-03-19 12:08:42 -06:00
Joshua M. Boniface
dd6845b8f3 Merge pull request #7476 from crobibero/tmdb-ended 2022-03-19 12:33:23 -04:00
Joshua M. Boniface
464ebf93dd Merge pull request #6985 from joshuaboniface/unharden-for-lxc 2022-03-19 12:31:33 -04:00
Joshua M. Boniface
93f569d286 Add comment about sysv options 2022-03-19 12:27:48 -04:00
Cody Robibero
0e2b20e6d6 tmdb - update available series end status 2022-03-18 18:49:12 -06:00
Cody Robibero
e1527857e9 Merge pull request #7468 from jakobkukla/master 2022-03-18 16:55:21 -06:00
Cody Robibero
6a567e8c76 Merge pull request #7474 from nielsvanvelzen/api-secure 2022-03-18 16:52:59 -06:00
dependabot[bot]
4b5148c69e Bump Swashbuckle.AspNetCore.ReDoc from 6.2.3 to 6.3.0 (#7457)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-18 22:38:55 +01:00
Niels van Velzen
8a827ba995 Update tests 2022-03-18 22:21:08 +01:00
Bond-009
bb7068cb63 Move StreamBuilderTests to correct project (#7461) 2022-03-18 22:19:02 +01:00
Niels van Velzen
46798cb918 Remove check for non-existent "emby rt" client in UserViewsController (#7470) 2022-03-18 22:16:08 +01:00
Niels van Velzen
5ece92d635 Add authorization attribute to UserViewsController 2022-03-18 21:56:42 +01:00
Niels van Velzen
9fbd675bed Add authorization attribute to GetConfigurationPages 2022-03-18 21:54:25 +01:00
Cody Robibero
5cf0c1b8f8 Merge pull request #7466 from jellyfin/prefer-cuvid
Prefer Cuvid to Nvdec by default for better performance
2022-03-18 05:45:41 -06:00
Josu Igoa
c8a8a85944 Translated using Weblate (Basque)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/eu/
2022-03-18 06:26:41 -04:00
Josu Igoa
9f147216be Translated using Weblate (Basque)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/eu/
2022-03-18 05:56:13 -04:00
Josu Igoa
db60c9da25 Added translation using Weblate (Basque) 2022-03-18 05:51:16 -04:00
jakobkukla
75475285da Fix supportsTranscoding not reflecting user permissions sometimes 2022-03-17 17:24:30 +01:00
Nyanmisaka
18c7dc210c Prefer Cuvid to Nvdec by default for better performance 2022-03-17 18:01:58 +08:00
Freethefire
ca517af0d9 Translated using Weblate (Swedish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sv/
2022-03-17 03:14:57 -04:00
SeanPai
fccf3ac3eb Translated using Weblate (Chinese (Traditional))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zh_Hant/
2022-03-17 01:13:34 -04:00
Joshua M. Boniface
1d7a524d82 Add SuccessExitStatus for exit 143
Fixes #3182
2022-03-15 20:27:38 -04:00
WWWesten
6a3da3a031 Translated using Weblate (Esperanto)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/eo/
2022-03-14 17:21:44 -04:00
hoanghuy309
456d95c878 Translated using Weblate (Vietnamese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/vi/
2022-03-14 17:21:44 -04:00
Oatavandi
36040832cc Translated using Weblate (Tamil)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ta/
2022-03-14 17:21:44 -04:00
Oskari Lavinto
cb91ad184e Translated using Weblate (Finnish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fi/
2022-03-14 17:21:44 -04:00
Magnetogenerator
122f6acb15 Translated using Weblate (Chinese (Simplified))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zh_Hans/
2022-03-14 17:21:44 -04:00
WWWesten
b4913aad30 Translated using Weblate (Russian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ru/
2022-03-14 17:21:44 -04:00
WWWesten
6fa38e300a Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2022-03-14 17:21:44 -04:00
Csaba
fbbb0368f7 Translated using Weblate (Hungarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hu/
2022-03-14 17:21:44 -04:00
Ali Dastpour
67a0a998cc Translated using Weblate (Persian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fa/
2022-03-14 17:21:44 -04:00
Lukáš Kucharczyk
95e97fea01 Translated using Weblate (Czech)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cs/
2022-03-14 17:21:44 -04:00
Cody Robibero
cf47ee6261 Merge pull request #7449 from crobibero/revert-clamp 2022-03-13 12:46:30 -06:00
Cody Robibero
d29c7c1d9e Revert using Math.Clamp 2022-03-13 12:46:13 -06:00
Rasmus
72165ae96f Translated using Weblate (Pirate)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pr/
2022-03-12 15:33:47 -05:00
WWWesten
34af6c48d7 Translated using Weblate (English (United Kingdom))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/en_GB/
2022-03-12 15:33:47 -05:00
Cody Robibero
e6df698df1 Merge pull request #7325 from eyezak/issue/6450 2022-03-12 09:08:25 -07:00
Cody Robibero
8ddcdc7430 Merge pull request #7448 from nielsvanvelzen/itemfreshcontroller 2022-03-12 08:56:45 -07:00
Niels van Velzen
d659b9b9ab Restrict item refreshing to administrators 2022-03-12 15:47:30 +01:00
Niels van Velzen
6bb50d5728 Change operation name in ItemRefreshController 2022-03-12 15:43:29 +01:00
Cody Robibero
3ea4174d12 Fix flipped Clamp args 2022-03-12 07:17:59 -07:00
Cody Robibero
5319f1571f Merge pull request #7444 from Bond-009/baseurl 2022-03-11 18:42:14 -07:00
Joshua M. Boniface
6e80c9b25f Merge pull request #6528 from oledfish/additional-episode-orders 2022-03-11 14:35:29 -05:00
Bond_009
7fdc0e3c3d BaseItem: remove unused function 2022-03-11 16:21:32 +01:00
Cody Robibero
28223704f3 Merge pull request #7441 from 1337joe/add-external-stream-indicator
Add label for external audio/sub tracks
2022-03-11 07:48:23 -07:00
Bond_009
edeb198313 Add tests for BaseUrl normalization 2022-03-11 15:44:16 +01:00
Joe Rogers
f671eeb6b2 Add self to CONTRIBUTORS.md 2022-03-11 15:23:17 +01:00
xnick
3342c29f4f Translated using Weblate (Greek)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/el/
2022-03-11 09:13:33 -05:00
Shadowghost
b2188c8676 Translated using Weblate (German)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/de/
2022-03-11 09:13:33 -05:00
Claus Vium
53209830e7 Merge pull request #7346 from Bond-009/guid
Optimize Guid comparisons
2022-03-11 08:15:12 +01:00
Claus Vium
21ef6661d6 Merge pull request #7440 from 1337joe/fix-add-external-audio
Match external sub/audio stream adding logic
2022-03-11 08:03:18 +01:00
whiteowl3
6f25291931 allow strm probe to succeed 2022-03-11 06:54:25 +00:00
Joe Rogers
1a307db7eb Add label for external audio/sub tracks 2022-03-10 22:20:35 +01:00
Cody Robibero
a5ffde0e9c Merge pull request #7432 from Bond-009/socketfactory 2022-03-10 14:19:08 -07:00
Joe Rogers
ac83effd44 Match external sub/audio stream adding logic 2022-03-10 22:02:46 +01:00
Mayur Panchal
96de01ce01 ProbeResultNormalizer: fix framerate compare + tests (#7167) 2022-03-10 20:55:30 +01:00
Bond_009
470d175f32 ExclusiveAddressUse: cheated by the docs 2022-03-10 20:51:22 +01:00
Joshua M. Boniface
388e0cba9f Merge pull request #7434 from crobibero/dotnet-6.0.3 2022-03-10 12:47:18 -05:00
Joshua M. Boniface
11fc84eebe Merge pull request #7435 from nyanmisaka/seek-fmp4 2022-03-10 12:44:28 -05:00
sabretou
1e80ba0462 Translated using Weblate (Marathi)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/mr/
2022-03-09 22:12:40 -05:00
Cody Robibero
a397cec981 Merge pull request #7410 from MinecraftPlaye/show-diff-dts-versions 2022-03-09 07:18:13 -07:00
nyanmisaka
b2c58338f2 Fix the fMP4 HLS audio sync issue on Safari 2022-03-09 21:28:58 +08:00
Cody Robibero
965bf7332f Update to dotnet 6.0.3 2022-03-08 17:16:33 -07:00
Cody Robibero
dacbfc83ff Merge pull request #7431 from Bond-009/autodiscovery 2022-03-08 14:37:01 -07:00
Bond_009
1d018c5575 SocketFactory: Remove redundant code
ExclusiveAddressUse should be false by default afaik
2022-03-08 22:20:43 +01:00
Bond_009
16e0d46771 UdpServerEntryPoint: Fix typo 2022-03-08 22:11:06 +01:00
Nyanmisaka
4f1efb3996 Re-enable the legacy NVIDIA CUVID decoder in full HWA pipeline (#7413) 2022-03-08 16:36:30 +01:00
Bill Thornton
c5ca29d2e2 Remove unused poster support from StudiosImageProvider (#7423) 2022-03-08 16:36:05 +01:00
Bond-009
03f1eff21a Implement TransportState according to spec (#7426) 2022-03-08 16:12:03 +01:00
Mattias
e3ea899bcc Translated using Weblate (Swedish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sv/
2022-03-08 03:52:36 -05:00
Thomas Schwery
88c4e38ce2 Translated using Weblate (French)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr/
2022-03-07 17:54:08 -05:00
Cody Robibero
ea7e6aeae0 Merge pull request #7425 from Bond-009/aurating 2022-03-07 13:45:30 -07:00
Bond_009
f48c8d4802 Remove none existing Australian rating
I'm not sure the numbers here are correct
2022-03-07 21:00:13 +01:00
Ali Dastpour
0ef35286c5 Translated using Weblate (Persian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fa/
2022-03-07 11:58:16 -05:00
dependabot[bot]
1ec3e899d6 Bump actions/checkout from 2 to 3 (#7420)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-07 16:44:10 +01:00
dependabot[bot]
023eddbef5 Bump actions/stale from 4.1.0 to 5 (#7421)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-07 16:43:59 +01:00
Cody Robibero
10d1c7b25d Merge pull request #7418 from jellyfin/dependabot/nuget/prometheus-net.AspNetCore-6.0.0
Bump prometheus-net.AspNetCore from 5.0.2 to 6.0.0
2022-03-07 07:47:15 -07:00
dependabot[bot]
de766e687d Bump prometheus-net.AspNetCore from 5.0.2 to 6.0.0
Bumps [prometheus-net.AspNetCore](https://github.com/prometheus-net/prometheus-net) from 5.0.2 to 6.0.0.
- [Release notes](https://github.com/prometheus-net/prometheus-net/releases)
- [Changelog](https://github.com/prometheus-net/prometheus-net/blob/master/History)
- [Commits](https://github.com/prometheus-net/prometheus-net/compare/v5.0.2...v6.0.0)

---
updated-dependencies:
- dependency-name: prometheus-net.AspNetCore
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-07 13:25:23 +00:00
dependabot[bot]
bb83e9f2d9 Bump prometheus-net from 5.0.2 to 6.0.0 (#7417)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-07 14:24:21 +01:00
dependabot[bot]
4c4f5dfe81 Bump Moq from 4.17.1 to 4.17.2 (#7416)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-07 14:23:43 +01:00
Cody Robibero
da41cd365c Suggestions from review 2022-03-06 18:17:49 -07:00
Cody Robibero
dbea7cac67 Use Enum.GetValues<T>() 2022-03-06 18:13:54 -07:00
Cody Robibero
bbd5d11d3b Remove TranscodeReason.None, Add JsonFlagEnum tests 2022-03-06 18:13:54 -07:00
Cody Robibero
c331e11c24 Clean up EnumFlags serialization 2022-03-06 18:13:54 -07:00
Isaac Gordezky
9ebd521754 Update MediaBrowser.Model/Dlna/StreamBuilder.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-03-06 18:13:54 -07:00
Isaac Gordezky
84a3db6f84 Fix transcode video matching and add tests for Transcode and Safari 2022-03-06 18:13:54 -07:00
Isaac Gordezky
5e779f20ee Series: issue-6450
Issue: https://github.com/jellyfin/jellyfin/issues/6450

Enable DirectPlay responses
Rewrite DirectPlay and DirectStream resolution
Prefer copy transcode video codec options
Enhance condition processor
Support DirectStream and Transcode with parity
Rework audio stream selection and add tests for ExternalAudio
Update MediaInfoHelper to only call StreamBuilder once
2022-03-06 18:13:54 -07:00
Isaac Gordezky
d871dded9f Convert TranscodeReason to Flags 2022-03-06 18:13:54 -07:00
Isaac Gordezky
a3057afde8 StreamBuilder basic tests 2022-03-06 18:13:54 -07:00
Patrick Farwick
27b81a535c Let the UI show which DTS profile is in use
There are different profiles for DTS. For example, both DTS and DTS-HD
MA use the same codec, but provide a different profile.

Some files may provide both a DTS and DTS-HD MA audio track. With this
change, the UI shows which track is using which profile to allow the
user to choose between them.
2022-03-06 19:11:02 +00:00
Cody Robibero
1dcd537ea2 Merge pull request #7411 from jellyfin/revert-7240-add-readonly-connection 2022-03-06 11:04:36 -07:00
Cody Robibero
0a8bec1af4 Revert "chore: Add a read only connection for routes like Shows/NextUp" 2022-03-06 09:30:47 -07:00
Cody Robibero
973781c482 Merge pull request #7406 from crobibero/fix-build
Fix build
2022-03-06 06:47:32 -07:00
Cody Robibero
b37052a4a6 Fix build 2022-03-06 06:34:04 -07:00
Cody Robibero
15cae4ef00 Merge pull request #7405 from StollD/fix-strm-files 2022-03-05 15:03:45 -07:00
Dorian Stoll
7af1cae883 Add myself to CONTRIBUTORS.md 2022-03-05 22:15:43 +01:00
Dorian Stoll
178d00b14d Readd .strm as an allowed extension for videos 2022-03-05 22:05:26 +01:00
Cody Robibero
bc3cb04c0b Merge pull request #7240 from jaysonsantos/add-readonly-connection 2022-03-05 13:36:40 -07:00
Bond-009
2579b2db56 Merge pull request #7137 from SenorSmartyPants/master 2022-03-05 20:54:36 +01:00
Cody Robibero
3dc0cfc36e Merge pull request #7388 from GermanCoding/iso639-undefined 2022-03-05 12:43:51 -07:00
Cody Robibero
4791d56f6c Merge pull request #7403 from 1337joe/fix-external-file-prefix-check 2022-03-05 12:43:29 -07:00
Cody Robibero
b705ace262 Apply suggestions from code review 2022-03-05 12:37:23 -07:00
Joshua M. Boniface
947ff9defe Merge pull request #7404 from nyanmisaka/omx 2022-03-05 14:35:41 -05:00
Joshua M. Boniface
414004f83d Merge pull request #7397 from jellyfin/intel-vaapi 2022-03-05 14:30:30 -05:00
Joshua M. Boniface
e3d9c53baa Merge pull request #7396 from thornbill/update-artwork-repository 2022-03-05 14:30:21 -05:00
Joshua M. Boniface
a123391e7e Merge pull request #7383 from thornbill/next-up-rewatching 2022-03-05 14:29:49 -05:00
Rhodri
9f027bae41 Translated using Weblate (Welsh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cy/
2022-03-05 13:13:31 -05:00
Ray Cheung
5eda32980c Translated using Weblate (Chinese (Hong Kong))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zh_Hant_HK/
2022-03-05 13:13:31 -05:00
Jorge IG
76019d3a34 Translated using Weblate (Spanish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/es/
2022-03-05 13:13:31 -05:00
nyanmisaka
3bf83025f2 Fallback to no HWA when reporting transcoding info 2022-03-06 00:12:16 +08:00
nyanmisaka
bfc27e494b Remove the deprecated OMX and MMAL HWA 2022-03-05 21:47:59 +08:00
Joe Rogers
f7118bebfd Fix external file check for shorter names 2022-03-05 12:39:03 +01:00
Claus Vium
fab5f37e0e Merge pull request #7394 from 1337joe/remove-external-file-fuzzy-matching
Strip out external file fuzzy name matching
2022-03-05 09:26:55 +01:00
nyanmisaka
de4a084b03 Set the name of intel vaapi driver explicitly
Fix crashes on older intel gfx when both iHD and i965 driver are existed.
2022-03-05 01:32:06 +08:00
GermanCoding
3f6a14e1fd Use extension method for list search 2022-03-04 16:44:55 +01:00
Joe Rogers
dad7a6fdf6 Switch to using spans for string comparison 2022-03-04 15:58:01 +01:00
Joe Rogers
3205e97e1e Strip out external file fuzzy matching
Convert MediaFlagDelimiter back to char
2022-03-04 10:52:21 +01:00
Claus Vium
136eab9b1e Merge pull request #7370 from crobibero/internal-metadata-path
Only add internal files if the internal metadata path exists
2022-03-04 08:13:58 +01:00
Bill Thornton
46ef68d589 Update artwork repository urls 2022-03-04 01:39:21 -05:00
WWWesten
f712c554ab Translated using Weblate (Esperanto)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/eo/
2022-03-03 19:21:04 -05:00
hoanghuy309
e58f7ae5da Translated using Weblate (Vietnamese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/vi/
2022-03-03 19:21:04 -05:00
Oatavandi
92fd6475fa Translated using Weblate (Tamil)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ta/
2022-03-03 19:21:04 -05:00
Oskari Lavinto
8121635d8c Translated using Weblate (Finnish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fi/
2022-03-03 19:21:04 -05:00
小造xu_zh
9025cd13c5 Translated using Weblate (Chinese (Simplified))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zh_Hans/
2022-03-03 19:21:04 -05:00
WWWesten
2ce0389d59 Translated using Weblate (Russian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ru/
2022-03-03 19:21:04 -05:00
WWWesten
957199dcba Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2022-03-03 19:21:03 -05:00
Csaba
73805e0b4a Translated using Weblate (Hungarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hu/
2022-03-03 19:21:03 -05:00
Page Asgardius
f3de108617 Translated using Weblate (Spanish (Mexico))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/es_MX/
2022-03-03 19:21:03 -05:00
Lukáš Kucharczyk
94793e6c6b Translated using Weblate (Czech)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cs/
2022-03-03 19:21:03 -05:00
GermanCoding
e09641b452 Hide ISO 639-2 special codes in display titles
They are still shown in associated metadata, just hidden from the more visible display titles.
2022-03-04 00:55:20 +01:00
Bond-009
b356c2b212 Merge pull request #7324 from Maxr1998/sort-by-index 2022-03-03 13:55:45 +01:00
Bond-009
2dbb32976c Merge pull request #7380 from crobibero/general-command 2022-03-03 13:55:33 +01:00
Bond-009
6e91657f01 Merge pull request #7381 from crobibero/migrate-datetime 2022-03-03 13:55:09 +01:00
Cody Robibero
1b3e56bae3 Split DirectoryExists and FileExists 2022-03-02 19:55:44 -07:00
Bill Thornton
df70d7bdf1 Use IReadOnlyList for seriesKeys 2022-03-02 10:17:24 -05:00
DetermineAbsurd
d16bdfbc05 Translated using Weblate (Pirate)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pr/
2022-03-02 08:13:30 -05:00
Aman Setia
fe53243cfb Translated using Weblate (Hindi)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hi/
2022-03-02 08:13:30 -05:00
Claus Vium
6498a5baca Merge pull request #7387 from jellyfin/nvdec-threads 2022-03-01 16:53:23 +01:00
Cody Robibero
71a9ae3150 Update MediaBrowser.Controller/Providers/DirectoryService.cs
Co-authored-by: Joe Rogers <1337joe@users.noreply.github.com>
2022-03-01 08:30:26 -07:00
Nyanmisaka
4239f80c81 Lowering the VRAM usage on NVDEC decoder 2022-03-01 23:14:35 +08:00
Cody Robibero
f0c28019dc Merge pull request #7386 from jellyfin/fonts 2022-03-01 08:13:53 -07:00
Nyanmisaka
ba8e478a2f Fix the path to the extracted fonts on Windows 2022-03-01 22:41:54 +08:00
Cody Robibero
0a953aca8a Merge pull request #7372 from jellyfin/dependabot/github_actions/actions/setup-dotnet-2 2022-03-01 06:45:00 -07:00
Bond-009
7d226e8eef Merge pull request #7376 from GermanCoding/fix_soundhandler 2022-03-01 11:24:20 +01:00
Bond-009
eff3d3e67e Merge pull request #7275 from Nalsai/burn-subtitle-attached-fonts 2022-03-01 11:21:19 +01:00
Bond-009
ef99a53abb Merge pull request #7366 from 1337joe/filter-theme-song-and-video 2022-03-01 11:12:32 +01:00
Bond-009
1e98f168c9 Merge pull request #7363 from 1337joe/ffmpeg-5-long-chapter-id 2022-03-01 11:11:23 +01:00
Bond-009
2bc8383968 Merge pull request #7382 from crobibero/keyframe-extractor 2022-03-01 10:55:02 +01:00
Bill Thornton
055c63bdee Include played and unplayed results in the same next up request 2022-03-01 00:50:16 -05:00
Joshua M. Boniface
7c9aa63382 Merge pull request #6058 from ferferga/deprecate-queueitem 2022-02-28 23:54:50 -05:00
Cody Robibero
5e1f956fe0 Allow KeyframeExtractor to be localized 2022-02-28 20:59:36 -07:00
Cody Robibero
89c29a7ed8 Fix migration of DateTime to EF 2022-02-28 20:44:17 -07:00
Cody Robibero
fe99800bde Merge pull request #7221 from SenorSmartyPants/UserViewThumb 2022-02-28 20:17:30 -07:00
Cody Robibero
3c0c7572ef Merge pull request #7338 from mueslimak3r/hls-remove-seek-param 2022-02-28 20:16:19 -07:00
Cody Robibero
3f441a44ba Merge pull request #7374 from jellyfin/intel-ocl 2022-02-28 20:15:32 -07:00
Cody Robibero
aec1ee5869 Merge pull request #7375 from jellyfin/presets-nvenc 2022-02-28 20:15:14 -07:00
Cody Robibero
c0b02ff0e5 Merge pull request #7378 from thornbill/fix-default-home-sections 2022-02-28 20:15:04 -07:00
Cody Robibero
dc1b224667 Add JsonConstructor 2022-02-28 17:30:17 -07:00
Cody Robibero
fc5c6c0404 Use IFileSystem 2022-02-28 17:14:33 -07:00
Bill Thornton
f32b2cb592 Add resume book as default home section 2022-02-28 16:33:17 -05:00
Joe Rogers
1d367712bb Improve tests 2022-02-28 10:00:23 -07:00
Cody Robibero
c9d5cfff1d Update MediaBrowser.Providers/MediaInfo/MediaInfoResolver.cs
Co-authored-by: Joe Rogers <1337joe@users.noreply.github.com>
2022-02-28 09:58:11 -07:00
GermanCoding
847d705969 Update CONTRIBUTORS.md (adding myself) 2022-02-28 17:47:57 +01:00
GermanCoding
11bb834957 Remove superfluous "SoundHandler" from audio stream names 2022-02-28 17:44:23 +01:00
Cody Robibero
40e413d575 Only add internal files if the internal metadata path exists
Signed-off-by: Cody Robibero <cody@robibe.ro>
2022-02-28 08:22:52 -07:00
Bond-009
cd4d51a515 Merge pull request #7371 from jellyfin/dependabot/nuget/Moq-4.17.1 2022-02-28 16:12:16 +01:00
Cody Robibero
f1808f6ae4 Merge pull request #7369 from Bond-009/jellyplus 2022-02-28 08:09:59 -07:00
Nyanmisaka
9251c875b1 Update presets for NVENC encoder 2022-02-28 23:05:08 +08:00
Nyanmisaka
10282dc444 Update intel compute runtime to 22.08.22549 2022-02-28 22:50:27 +08:00
Nyanmisaka
3fb3d7159c Update intel compute runtime to 22.05.22297 2022-02-28 21:13:06 +08:00
dependabot[bot]
11092a72a4 Bump actions/setup-dotnet from 1 to 2
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 1 to 2.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v1...v2)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-28 12:06:19 +00:00
dependabot[bot]
ee24b85f49 Bump Moq from 4.16.1 to 4.17.1
Bumps [Moq](https://github.com/moq/moq4) from 4.16.1 to 4.17.1.
- [Release notes](https://github.com/moq/moq4/releases)
- [Changelog](https://github.com/moq/moq4/blob/main/CHANGELOG.md)
- [Commits](https://github.com/moq/moq4/compare/v4.16.1...v4.17.1)

---
updated-dependencies:
- dependency-name: Moq
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-28 12:01:22 +00:00
Bond_009
acf30e00ce Remove obsolete code for premium plugins 2022-02-28 00:46:34 +01:00
Joe Rogers
354f22d065 Add post filtering for theme song and video 2022-02-27 23:38:00 +01:00
Joe Rogers
175ddff169 Switch chapter id to long to not break on ffmpeg 5.0 2022-02-27 21:04:11 +01:00
Joshua M. Boniface
e26446f9c0 Merge pull request #7112 from stanionascu/bdiso-playback 2022-02-26 12:53:34 -05:00
Cody Robibero
d7cbb25d0b Merge pull request #7291 from aolszowka/aolszowka-EncodingHelperChanges 2022-02-26 10:52:35 -07:00
Ali Dastpour
536ad62ea8 Translated using Weblate (Persian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fa/
2022-02-26 08:31:06 -05:00
Bond-009
ce62a4465a Merge pull request #7349 from 1337joe/MediaInfoResolver-tests 2022-02-22 19:44:36 +01:00
Joe Rogers
a9a3f6bf02 Split match/rejected tests, add wider sampling of extensions 2022-02-22 15:13:44 +01:00
Joe Rogers
cf033b25f8 Require delimiter immediately after filename match 2022-02-21 22:27:28 +01:00
Joe Rogers
15053516f8 Rewrite tests for coverage and less duplication
Address minor warnings
Revert making GetInternalMetadataPath mockable
2022-02-21 22:25:58 +01:00
Joshua M. Boniface
59040bfa7d Merge pull request #7255 from Shadowghost/external-sub-audio 2022-02-21 12:42:49 -05:00
Cody Robibero
d1f6a7f497 Merge pull request #7344 from jellyfin/dependabot/nuget/Microsoft.NET.Test.Sdk-17.1.0 2022-02-21 07:37:28 -07:00
Bond_009
f50a250cd9 Optimize Guid comparisons
* Use Guid.Equals(Guid) instead of the == override
* Ban the usage of Guid.Equals(Object) to prevent accidental boxing
* Compare to default(Guid) instead of Guid.Empty
2022-02-21 14:15:09 +01:00
Isaac Gordezky
def8500dd0 Update MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-02-21 07:54:13 -05:00
dependabot[bot]
06f259001c Bump Microsoft.NET.Test.Sdk from 17.0.0 to 17.1.0
Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 17.0.0 to 17.1.0.
- [Release notes](https://github.com/microsoft/vstest/releases)
- [Commits](https://github.com/microsoft/vstest/compare/v17.0.0...v17.1.0)

---
updated-dependencies:
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-21 12:01:10 +00:00
SenorSmartyPants
bbac59c6d6 Rewatching next up (#7253) 2022-02-20 18:05:57 +01:00
Cody Robibero
a61b42f7ef Merge pull request #7332 from eyezak/transcode-reporting 2022-02-20 09:32:09 -07:00
Stanislav Ionascu
554d1b2ca8 Fix #7100 by catching the exception on opening invalid UDF images
When an invalid UDF image is opened by the UdfReader, it may throw
and exception. This change is to catch and log the exception.
2022-02-20 13:30:55 +00:00
Shadowghost
bbb3117f83 Update MediaBrowser.Providers/MediaInfo/MediaInfoResolver.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2022-02-19 23:47:11 +01:00
Niels van Velzen
6a8a6a1325 Use sha hash instead of branch name for OpenAPI workflow head reference (#7340) 2022-02-19 17:36:53 +01:00
cameron
36cdeaa53c dont use noaccurate_seek for hls 2022-02-18 23:18:28 -08:00
Shadowghost
a36e34fbd2 fix(external-media): implement review suggestions 2022-02-18 22:19:33 +01:00
Shadowghost
719b707281 feat(external-media): refactor to generic provider, extend tests and file recognition, consolidate and extend NamingOptions 2022-02-18 22:19:33 +01:00
Joe Rogers
f1878c43a4 feat(external-media): add tests for external audio and subtitle provider 2022-02-18 22:19:33 +01:00
Shadowghost
ca5112f45a feat(external-media): refactor external subtitle and audio provider 2022-02-18 22:19:24 +01:00
Isaac Gordezky
151ddd400d [Bugfix] Provile bitStreamArgs for HLS fMP4
Enable the audio bitstream arguments to ffmpeg for both ts and fMP4 HLS streaming
2022-02-18 13:18:08 +00:00
Isaac Gordezky
48a7d3f48f [Bugfix] Report transcoding complete
Currently, when transcoding finishes it is not reported - leaving the UI with an incomplete transcode %
This change reports transcoding progress as empty / complete when the transcoding job finishes
2022-02-18 13:01:19 +00:00
Cody Robibero
b92e1baa3c Merge pull request #7326 from Bond-009/deadcode2 2022-02-17 18:07:49 -07:00
Bond_009
adad13b865 Remove some dead code 2022-02-17 08:15:26 +01:00
Cody Robibero
7ccf7e6157 Merge pull request #7322 from Bond-009/db2 2022-02-16 20:47:33 -07:00
Cody Robibero
9930efec22 Merge pull request #7321 from Bond-009/warn61 2022-02-16 20:47:22 -07:00
Maxr1998
0aaf2f470a Implement Comparers for (Parent)IndexNumber
Can be used in item queries to sort by ParentIndexNumber and IndexNumber (used for disc and track numbers for example).
2022-02-17 01:35:59 +01:00
Bond_009
23ea14aa27 Clean up SqliteItemRepository
* remove dead code
* reduce allocations
2022-02-15 22:27:38 +01:00
Bond_009
5732e6188c Fix some warnings 2022-02-15 18:59:46 +01:00
Lukáš Kucharczyk
5825a0572b Translated using Weblate (Czech)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cs/
2022-02-15 01:13:23 -05:00
Cody Robibero
4ef0099598 Merge pull request #7233 from Bond-009/warn60 2022-02-14 16:57:00 -07:00
Cody Robibero
4acab00963 Merge pull request #7038 from Bond-009/serverdiscovery 2022-02-14 16:56:29 -07:00
Joshua M. Boniface
94b5334da5 Merge pull request #7290 from crobibero/dotnet-6.0.2 2022-02-14 11:01:55 -05:00
Victor Gambier
dbf9e49258 Increase timeout for subtitle extraction to 30min (#7153) 2022-02-14 16:33:11 +01:00
Bond_009
5d28c5547e Fix indentation 2022-02-14 16:31:07 +01:00
Bond_009
dbd7be091d Fix MediaStreamSelector 2022-02-14 15:03:08 +01:00
Bond_009
8b2556adba Fix display preferences 2022-02-14 14:46:04 +01:00
Bond_009
1c14c86b20 Fix some warnings 2022-02-14 14:46:04 +01:00
Bond_009
3cb49d6df0 Fix option to disable server discovery 2022-02-14 14:39:33 +01:00
dependabot[bot]
68e7072698 Bump MimeTypes from 2.2.1 to 2.3.0 (#7309)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-14 14:14:04 +01:00
Bond-009
69e7deb07d Merge pull request #7300 from cvium/fix_keepreading 2022-02-12 20:24:02 +01:00
cvium
8ec71c094a Change KeepReading to StopReading and use bytes read as an indicator 2022-02-12 09:51:47 +01:00
dottokuya
8a2ebae74d Translated using Weblate (Vietnamese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/vi/
2022-02-11 23:21:28 -05:00
Cody Robibero
603b6fe173 Merge pull request #7054 from matthew-jones-uk/disable-embedded-subs 2022-02-11 13:20:37 -07:00
knackebrot
52c61bd06f Add option to change unix socket permissions
There is probably no way to do it when creating the socket
2022-02-10 02:07:12 +01:00
Nils Fürniß
ab40554759 add extracting attachments for ffmpeg to burn subs 2022-02-10 01:01:08 +01:00
Matthew Jones
b7cab46b4a Added values to EmbeddedSubtitleOptions enum 2022-02-09 23:33:46 +00:00
Bond-009
bb7916767c Merge pull request #7286 from daullmer/sonarr-thumb 2022-02-09 19:09:53 +01:00
David Ullmer
a00e6ff426 Update tests/Jellyfin.XbmcMetadata.Tests/Parsers/EpisodeNfoProviderTests.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-02-09 13:39:39 +01:00
Cody Robibero
b98cc71c3b Update to dotnet 6.0.2
Signed-off-by: Cody Robibero <cody@robibe.ro>
2022-02-08 17:36:20 -07:00
Cody Robibero
103a8e69a7 Merge pull request #7282 from jellyfin/dependabot/nuget/System.Linq.Async-6.0.1
Bump System.Linq.Async from 5.1.0 to 6.0.1
2022-02-08 05:43:53 -07:00
Cody Robibero
75cdfe4daf Merge pull request #7283 from jellyfin/dependabot/nuget/coverlet.collector-3.1.2
Bump coverlet.collector from 3.1.1 to 3.1.2
2022-02-08 05:43:08 -07:00
Cody Robibero
d855b6872a Merge pull request #7284 from jellyfin/dependabot/nuget/prometheus-net.DotNetRuntime-4.2.3
Bump prometheus-net.DotNetRuntime from 4.2.2 to 4.2.3
2022-02-08 05:42:46 -07:00
David Ullmer
fdfcb45c2a Add regression test for #7285 2022-02-08 09:09:33 +01:00
David Ullmer
7885167f54 Fix nfo thumb tags without aspect 2022-02-08 09:08:35 +01:00
Ace Olszowka
ea7e5e639d Fix h264_v4l2m2m acceleration in Raspberry Pi 4 2022-02-07 20:41:07 -07:00
dependabot[bot]
08e90039b1 Bump prometheus-net.DotNetRuntime from 4.2.2 to 4.2.3
Bumps [prometheus-net.DotNetRuntime](https://github.com/djluck/prometheus-net.DotNetRuntime) from 4.2.2 to 4.2.3.
- [Release notes](https://github.com/djluck/prometheus-net.DotNetRuntime/releases)
- [Commits](https://github.com/djluck/prometheus-net.DotNetRuntime/compare/4.2.2...4.2.3)

---
updated-dependencies:
- dependency-name: prometheus-net.DotNetRuntime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-07 12:01:14 +00:00
dependabot[bot]
7649391b9d Bump coverlet.collector from 3.1.1 to 3.1.2
Bumps [coverlet.collector](https://github.com/coverlet-coverage/coverlet) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/coverlet-coverage/coverlet/releases)
- [Commits](https://github.com/coverlet-coverage/coverlet/commits)

---
updated-dependencies:
- dependency-name: coverlet.collector
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-07 12:01:11 +00:00
dependabot[bot]
0c89459d5b Bump System.Linq.Async from 5.1.0 to 6.0.1
Bumps [System.Linq.Async](https://github.com/dotnet/reactive) from 5.1.0 to 6.0.1.
- [Release notes](https://github.com/dotnet/reactive/releases)
- [Commits](https://github.com/dotnet/reactive/compare/ixnet-v5.1.0...ixnet-v6.0.1)

---
updated-dependencies:
- dependency-name: System.Linq.Async
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-07 12:01:03 +00:00
Cody Robibero
b6489e73ab Merge pull request #7241 from Bond-009/async5 2022-02-06 15:25:48 -07:00
Cody Robibero
10d52d16a8 Fix invalid cref (#7277) 2022-02-06 22:21:17 +01:00
Emil Manea
f3c3402984 Translated using Weblate (Romanian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ro/
2022-02-04 16:13:20 -05:00
SenorSmartyPants
2b769aae69 TV extras (#7178) 2022-02-04 20:44:38 +01:00
Cody Robibero
c16d71562e Prevent additional errors on startup/shutdown (#6788) 2022-02-04 20:36:17 +01:00
Cody Robibero
a2127a48ef Remove unused docker volumes (#7030) 2022-02-02 23:27:46 +01:00
SenorSmartyPants
509d66dcb5 Fix #7147: Don't return subtitles in mismatched format (#7149) 2022-02-02 23:24:10 +01:00
Nyanmisaka
6c53420fe3 Fix the broken fMP4 main playlist (#7263) 2022-02-01 22:30:19 +01:00
dependabot[bot]
6af7d5445f Bump coverlet.collector from 3.1.0 to 3.1.1 (#7266)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-01 22:29:41 +01:00
Cody Robibero
f863ca1f2d Merge pull request #7245 from h1dden-da3m0n/chore/stale-check-workflow 2022-01-28 08:12:44 -07:00
Cody Robibero
e5701c396a Merge pull request #6436 from daullmer/splashscreen 2022-01-28 08:12:21 -07:00
Claus Vium
488ce51032 Remove some allocations (#7246) 2022-01-28 12:21:40 +01:00
Bond-009
42724ef411 Merge pull request #7257 from Shadowghost/slash-artists 2022-01-28 12:17:08 +01:00
Shadowghost
4a3f1a51d2 chore(artist-split): add more artists to split whitelist 2022-01-27 22:01:40 +01:00
abdulla
83605affa0 Translated using Weblate (Uyghur)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ug/
2022-01-27 07:13:16 -05:00
Matthew Jones
91d143d6ee Changed boolean options to enums 2022-01-26 16:09:05 +00:00
abdulla
29f92724ef Added translation using Weblate (Uyghur) 2022-01-26 05:56:56 -05:00
K3rnelPan1c
614abddd64 remove obsolete permissions block
we use the JF_BOT_TOKEN PAT and not the default GITHUB_TOKEN
2022-01-25 22:53:09 +01:00
K3rnelPan1c
fabe7e1fb9 add org filter to stale workflow 2022-01-25 18:32:46 +01:00
Yohann Yo
887beee614 Translated using Weblate (French)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr/
2022-01-25 11:29:36 -05:00
K3rnelPan1c
0c665af124 change PAT use for stale action 2022-01-23 18:19:39 +01:00
h1dden-da3m0n
28f4d574f7 add stale issue check workflow
this should replace the functionality of the discontinued stale-bot
2022-01-23 17:02:41 +01:00
Jayson Reis
09b8cde6aa fix: Avoid opening read connections without mutexes 2022-01-23 11:59:12 +01:00
Cody Robibero
ea3d79c0eb Merge pull request #7235 from Bond-009/async4 2022-01-22 15:52:12 -07:00
Cody Robibero
3c746f2743 Merge pull request #7236 from Bond-009/taskcompletionsource 2022-01-22 15:46:19 -07:00
Cody Robibero
da49437549 Merge pull request #7238 from 1337joe/ffprobe-metadata-merge 2022-01-22 15:46:04 -07:00
Cody Robibero
26ba99e420 Merge pull request #7239 from nielsvanvelzen/parent-guid 2022-01-22 15:44:55 -07:00
Bond_009
e7be01d7a5 Flush to disk async where possible 2022-01-22 23:36:42 +01:00
Jayson Reis
2e4dd02f76 chore: Add a read only connection for routes like Shows/NextUp 2022-01-22 21:52:30 +00:00
Niels van Velzen
2afcaa6ae1 Use Guid for BaseItemDto parent ids 2022-01-22 22:29:02 +01:00
Joe Rogers
fbd243e315 Make ffprobe consistent with MetadataService.MergeData 2022-01-22 21:59:17 +01:00
Bond-009
4f1eed862e Merge pull request #7234 from nielsvanvelzen/baseitemperson-guid 2022-01-22 17:08:02 +01:00
Bond_009
832da133d8 Always create TaskCompletionSource<T> with TaskCreationOptions.RunContinuationsAsynchronously 2022-01-22 17:06:57 +01:00
Bond_009
2dcb2f8a9f Ban the usage of Task.Result
If the calling function can't be made async easily you can still use
.GetAwaiter().GetResult(), which is way easier to find in the future
2022-01-22 16:48:31 +01:00
Niels van Velzen
e86f778c05 Use Guid for BaseItemPerson.Id 2022-01-22 15:46:12 +01:00
Bond-009
cd675475bc Merge pull request #7225 from crobibero/query-result 2022-01-21 19:50:08 +01:00
Cody Robibero
34ee6d82fb Merge pull request #6600 from cvium/keyframe_extraction_v1 2022-01-20 08:54:40 -07:00
Cody Robibero
a4246648f4 Merge pull request #7219 from 1337joe/tmdb-image-provider-logo 2022-01-20 08:54:07 -07:00
Cody Robibero
ee43b5117d Merge pull request #7217 from SenorSmartyPants/LibraryImages 2022-01-20 08:53:53 -07:00
Cody Robibero
a60cb280a3 Properly populate QueryResult 2022-01-20 08:53:06 -07:00
Joe Rogers
375903b215 Bump TMDbLib version 2022-01-20 11:43:26 +01:00
Lukáš Kucharczyk
cd4587b43f Translated using Weblate (Czech)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cs/
2022-01-20 03:13:14 -05:00
SenorSmartyPants
5d9e1bfcea Shuffle items with images
They were always returning in the same order so thumb would never change.
2022-01-19 19:16:36 -06:00
SenorSmartyPants
b15ab397c7 User Backdrop for UserView, like CollectionFolder 2022-01-19 19:15:44 -06:00
Bond-009
3aeae150f8 Merge pull request #7176 from dmitrylyzo/fix-trailers-1 2022-01-19 22:47:08 +01:00
Claus Vium
8b36bc0ade Merge pull request #7203 from 1337joe/fix-resolving-local-alternates
Fix resolving local alternates
2022-01-19 14:36:50 +01:00
Joe Rogers
239b516659 Add TMDb logo handling 2022-01-19 09:54:52 +01:00
SenorSmartyPants
5c3119cf02 Generate cover image for music video type libraries. 2022-01-18 19:46:03 -06:00
Claus Vium
1a32153a31 Merge pull request #7197 from dmitrylyzo/fix-max-resolution
Fix maximum video resolution for dynamic HLS controller
2022-01-18 07:54:48 +01:00
oledfish
47269d5ec6 Add all TMDB episode orders 2022-01-18 01:02:45 -03:00
oledfish
3b075a5802 Merge branch 'jellyfin:master' into additional-episode-orders 2022-01-16 21:33:18 -03:00
Bond-009
ef0708d876 Merge pull request #7078 from 1337joe/metadata-merge-data 2022-01-16 23:17:40 +01:00
Joe Rogers
8b706cebef Add alternate resolver test, generate extra folder names 2022-01-16 23:00:30 +01:00
Joe Rogers
e762454787 Restore resolver that handles alternate videos
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-01-16 22:59:14 +01:00
cvium
90736ee346 Add pagination and fixes 2022-01-16 22:10:22 +01:00
Dmitry Lyzo
000b7ba62b Fix maximum video resolution for dynamic HLS controller 2022-01-16 21:42:04 +03:00
Joe Rogers
f87e780fb5 Address review comments
Co-authored-by: Bond-009 <bond.009@outlook.com>
2022-01-16 13:21:24 +01:00
Dmitry Lyzo
60fe77c089 Remove unnecessary array allocation
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-01-16 13:34:52 +03:00
Suphanath Kaewboonrung
7500c2b28b Translated using Weblate (Thai)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/th/
2022-01-16 03:13:12 -05:00
Claus Vium
1d7ec1071f Merge pull request #7186 from 1337joe/extra-rule-reorder
Order extra rules so directory takes precedence over naming
2022-01-15 20:24:14 +01:00
Joe Rogers
19b9646d72 Add -extra suffix for consistency 2022-01-15 15:43:06 +01:00
Joe Rogers
f11fa59b15 Order rules so directory takes precedence over naming 2022-01-15 15:16:11 +01:00
Cody Robibero
d88e39b71d Merge pull request #7185 from dmitrylyzo/warn-sa1642
Fix SA1642 warning
2022-01-15 06:32:07 -07:00
Dmitry Lyzo
54549cd5b5 Remove unnecessary array allocation
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-01-15 15:54:14 +03:00
Dmitry Lyzo
ea1f3fe6bd Fix SA1642 warning 2022-01-15 15:33:54 +03:00
Cody Robibero
ee32e46dde Merge pull request #7172 from SenorSmartyPants/SeasonName 2022-01-14 13:15:53 -07:00
Dmitry Lyzo
5aa748058e Fix duplication of local trailers 2022-01-14 23:06:45 +03:00
Dmitry Lyzo
112db30ff2 Fix duplication of remote trailers 2022-01-14 22:53:54 +03:00
Bond-009
3b486fc0ee Merge pull request #7175 from dmitrylyzo/fix-self-locking 2022-01-14 20:41:59 +01:00
Dmitry Lyzo
f28384ba30 Ignore JSON serialization for special features of movie.
When refreshing the metadata of the video with a local trailer, the server gets
stuck trying to read the database and save the item at the same time.
2022-01-14 22:15:14 +03:00
Cody Robibero
ee46754238 Fix build and clean up 2022-01-14 08:14:31 -07:00
Fernando Fernández
5df6058a8e Add FullNowPlayingQueue property 2022-01-14 14:40:27 +00:00
Matthew Jones
61d8d40a4a Added type options to disable embedded subs 2022-01-14 11:25:08 +00:00
Matt
126274c4ea Add video path to DisableEmbeddedSubtitles log
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-01-14 11:25:08 +00:00
Matthew Jones
3f7bd7b63e Changed DisableEmbeddedSubtitles logging to debug 2022-01-14 11:25:08 +00:00
Matthew Jones
aeed255bbf Update CONTRIBUTORS.md 2022-01-14 11:25:08 +00:00
Matthew Jones
4df7590e52 Add DisableEmbeddedSubtitles setting
Disables embedded subs being added to metadata
2022-01-14 11:25:08 +00:00
Claus Vium
70751722d2 Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-01-14 08:24:15 +01:00
SenorSmartyPants
c32db3ea26 Fix build error 2022-01-13 22:51:38 -06:00
SenorSmartyPants
a19b6a7f61 Config option to import season name from TMDB 2022-01-13 22:31:37 -06:00
Joe Rogers
62dc4a79ff Fix comment typo
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-01-13 23:21:02 +01:00
Dzonkins
07e9568de8 Translated using Weblate (Serbian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sr/
2022-01-12 16:13:11 -05:00
cvium
7ba9a24736 Fix bool 2022-01-12 20:10:35 +01:00
cvium
b9d4cbf3e8 Fix progress 2022-01-12 18:35:55 +01:00
Claus Vium
768b76b999 Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-01-12 17:27:02 +01:00
Cody Robibero
a0f248e200 Merge pull request #7134 from adavier/trakt-episode-links 2022-01-11 16:11:25 -07:00
cvium
f92806c246 Use local var for the length 2022-01-11 23:32:39 +01:00
cvium
9a5a079f42 Add progress report 2022-01-11 23:31:55 +01:00
cvium
6ffa9539bb Refactor and add scheduled task 2022-01-11 23:30:30 +01:00
Cody Robibero
307679afef Merge pull request #7131 from Bond-009/warn58 2022-01-10 17:05:20 -07:00
Cody Robibero
8a36fe7ed5 Use png for storage 2022-01-10 17:01:17 -07:00
Cody Robibero
0d335082c8 suggestions from review 2022-01-10 10:59:32 -07:00
Cody Robibero
6520ad03f0 Fix release build 2022-01-10 08:30:55 -07:00
Cody Robibero
ecb73168b3 Suggestions from review 2022-01-10 08:26:30 -07:00
Bond-009
4823e68a94 Merge pull request #7151 from jellyfin/dependabot/nuget/FsCheck.Xunit-2.16.4 2022-01-10 14:19:16 +01:00
dependabot[bot]
88e02c5290 Bump FsCheck.Xunit from 2.16.3 to 2.16.4
Bumps [FsCheck.Xunit](https://github.com/fsharp/FsCheck) from 2.16.3 to 2.16.4.
- [Release notes](https://github.com/fsharp/FsCheck/releases)
- [Changelog](https://github.com/fscheck/FsCheck/blob/master/FsCheck%20Release%20Notes.md)
- [Commits](https://github.com/fsharp/FsCheck/compare/2.16.3...2.16.4)

---
updated-dependencies:
- dependency-name: FsCheck.Xunit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-10 12:01:16 +00:00
Bond_009
05836c8cd3 Fix warning SA1414 and CA1849 2022-01-10 10:57:32 +01:00
Cody Robibero
d24683f0ab Merge pull request #7141 from nyanmisaka/seek-audio
Seek the external audio stream
2022-01-09 06:57:01 -07:00
nyanmisaka
8c3f98f41b Also seek the external audio stream 2022-01-09 13:49:40 +08:00
SenorSmartyPants
d5e7e75421 Remove unused httpContext parameter 2022-01-08 19:53:53 -06:00
Cody Robibero
54d24ddeaf Merge pull request #6866 from Bond-009/timeout 2022-01-08 10:53:58 -07:00
Cody Robibero
188f9632f8 Merge pull request #7138 from nyanmisaka/10bit-boxes 2022-01-08 08:55:52 -07:00
nyanmisaka
ddc2569258 Fix the wrong logic in HEVC VP9 10bit hwdec boxes 2022-01-08 22:31:45 +08:00
Joe Rogers
b43f46d5c9 Make identify flag describe purpose, not source 2022-01-08 14:03:59 +01:00
Cody Robibero
620a5d5e83 Merge pull request #7136 from 1337joe/fix-show-library-scan
Fix stuck show library scans
2022-01-08 04:46:19 -07:00
Cody Robibero
9b1965b48a Merge pull request #7101 from Bond-009/imagejpg
Remove incorrect mime type image/jpg
2022-01-08 04:45:58 -07:00
SenorSmartyPants
3ea54a8009 Remove isHeadRequest from GetStaticFile method signatures 2022-01-07 18:21:48 -06:00
SenorSmartyPants
bd2bec4d4a Remove special HTTP HEAD processing
removing this allows HTTP 206 Partial Content responses and lets some clients(popcorn hour namely) play videos from JF.
2022-01-07 16:29:22 -06:00
Joe Rogers
a26509a98a Keep from serializing trailers into database 2022-01-07 22:33:31 +01:00
Aragon
ce61dff4aa Translated using Weblate (Hebrew)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/he/
2022-01-07 15:13:09 -05:00
adavier
9574d13059 Implement trakt episode links using the implementation from Series.cs
The code is the same as `MediaBrowser.Controller/Entities/TV/Series.cs`, using the imdbID to generate Trakt links.
The trakt url for episodes is `https://trakt.tv/episodes/{0}`.
2022-01-07 19:47:36 +00:00
Anthony Lavado
565ebbb643 Merge pull request #7132 from Bond-009/readme
Update README.md
2022-01-07 09:11:15 -05:00
Bond_009
4234a657c8 Update README.md 2022-01-07 15:06:49 +01:00
Bond_009
3ab0afdc6b Remove task cancellation hacks 2022-01-07 11:24:36 +01:00
Bond-009
98962cc21f Merge pull request #7129 from crobibero/null-check 2022-01-07 10:31:19 +01:00
cvium
c658a883a2 Merge branch 'master' into keyframe_extraction_v1
# Conflicts:
#	Jellyfin.Api/Controllers/DynamicHlsController.cs
#	MediaBrowser.Controller/MediaEncoding/IMediaEncoder.cs
#	MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs
2022-01-07 10:23:22 +01:00
Cody Robibero
82260e22a2 ADd more null check 2022-01-06 21:49:13 -07:00
Cody Robibero
6b4f5a8663 Merge pull request #7118 from crobibero/audio-stream-null 2022-01-06 10:36:10 -07:00
Shin Khant Maung
f8a6b3b27b Translated using Weblate (Burmese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/my/
2022-01-06 10:18:40 -05:00
Cody Robibero
904efeaddc Add null check for audio stream 2022-01-06 08:15:37 -07:00
Cody Robibero
b6b7a89bf2 Merge pull request #7121 from Bond-009/warn57 2022-01-05 16:18:08 -07:00
Bond_009
77c615ba42 Error on SA1316 2022-01-05 10:58:57 +01:00
Joshua M. Boniface
a2b51d551f Merge pull request #7115 from joshuaboniface/i-hate-ci-in-code 2022-01-04 20:02:17 -05:00
Joshua M. Boniface
e300b98573 Remove bump-version junk
This didn't work, and won't matter for beta1 so just scrap it.
2022-01-04 19:58:20 -05:00
WWWesten
75a46a1072 Translated using Weblate (Burmese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/my/
2022-01-04 18:55:29 -05:00
hoanghuy309
6aa37ebb8f Translated using Weblate (Vietnamese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/vi/
2022-01-04 18:55:29 -05:00
Joshua M. Boniface
072526d798 Merge pull request #7107 from Bond-009/namingtests 2022-01-04 18:17:16 -05:00
Joshua M. Boniface
4da240d731 Merge pull request #7105 from 1337joe/specials-folder-lock 2022-01-04 18:16:57 -05:00
Cody Robibero
b5b4e2ea89 Merge pull request #7109 from crobibero/yep
Use provided SortOrder
2022-01-04 15:53:33 -07:00
Cody Robibero
7d63377194 Use provided SortOrder 2022-01-04 13:07:51 -07:00
Bond_009
71ebe220f0 Speed up Jellyfin.Naming.Tests
In my limited testing this saves ~4 seconds, from 19 to 15 seconds (in
        Xunit itself)
2022-01-04 17:59:30 +01:00
Joe Rogers
3eb4bbbb86 Respect lock state when updating season 0 name 2022-01-04 16:58:14 +01:00
Cody Robibero
360fd70fc7 Clean up 2022-01-04 08:44:03 -07:00
Joe Rogers
b17fe35e2e Clean up list handling
Co-authored-by: Cody Robibero <cody@robibe.ro>
2022-01-04 16:25:36 +01:00
David Ullmer
9e0958d822 Apply suggestions from code review 2022-01-04 08:20:16 -07:00
David Ullmer
9e23af5636 Add missing xml doc 2022-01-04 08:20:16 -07:00
David Ullmer
6ad020acb2 Include Splashscreen url in the branding endpoint 2022-01-04 08:20:16 -07:00
David Ullmer
c70452b4a4 Add missing response code documentation 2022-01-04 08:20:16 -07:00
David Ullmer
045ef4b726 Generate Splashscreen during RefreshMediaLibrary scheduled task 2022-01-04 08:20:16 -07:00
David Ullmer
68db3be0e7 Remove darkening filter from Splashscreen
Using the foregroundLayer parameter has the same effect
2022-01-04 08:20:16 -07:00
David Ullmer
e026ba84c5 Add Splashscreen API endpoint to ImageController 2022-01-04 08:20:16 -07:00
David Ullmer
3fb3ee074a Remove splashscreen generation from IImageEncoder and add IImageGenerator 2022-01-04 08:20:16 -07:00
David Ullmer
0fd4ff4451 Always use 1080p, add max parental rating 2022-01-04 08:20:16 -07:00
David Ullmer
c934269a6e Add api controller for splashscreen 2022-01-04 08:20:16 -07:00
David Ullmer
4ba168c8a1 Add splashscreen builder 2022-01-04 08:20:16 -07:00
Bond_009
dc222b75c5 Remove incorrect mime type image/jpg 2022-01-04 10:40:16 +01:00
Cody Robibero
c6a1dcf420 Merge pull request #7080 from crobibero/ws-token 2022-01-03 17:48:21 -07:00
Cody Robibero
fddcaf17e1 Merge pull request #7092 from crobibero/orderby-flip 2022-01-03 17:48:11 -07:00
Cody Robibero
b9cd9487bd Merge pull request #7095 from crobibero/gif 2022-01-03 17:48:02 -07:00
Cody Robibero
fcb8ff7c0f Merge pull request #7052 from crobibero/image.jpeg 2022-01-03 17:47:52 -07:00
Cody Robibero
e51777fe4b Merge pull request #7093 from ilaborde/fix-5355 2022-01-03 17:16:04 -07:00
Joe Rogers
1dfbeae045 Embed ProviderUtils into MetadataService 2022-01-04 00:44:03 +01:00
Joe Rogers
19164378f2 Clean up warnings 2022-01-04 00:21:45 +01:00
Joe Rogers
c81d2e9dec Remove existing images when applying identify 2022-01-03 23:41:13 +01:00
Joe Rogers
ce66df2c92 Clean up warnings, simplify 2022-01-03 22:59:58 +01:00
Cody Robibero
6d299eed49 Don't transform gif 2022-01-03 12:23:55 -07:00
ignacio laborde
8952819494 remove unnecessary ToList in DlnaManager 2022-01-03 15:31:08 -03:00
Cody Robibero
f802763e8f Reverse all order-by 2022-01-03 07:59:50 -07:00
Cody Robibero
37061e5b6b Merge pull request #7091 from jellyfin/dependabot/nuget/Serilog.Sinks.Graylog-2.3.0
Bump Serilog.Sinks.Graylog from 2.2.2 to 2.3.0
2022-01-03 06:02:16 -07:00
dependabot[bot]
1c5c0ebb0f Bump Serilog.Sinks.Graylog from 2.2.2 to 2.3.0
Bumps [Serilog.Sinks.Graylog](https://github.com/whir1/serilog-sinks-graylog) from 2.2.2 to 2.3.0.
- [Release notes](https://github.com/whir1/serilog-sinks-graylog/releases)
- [Commits](https://github.com/whir1/serilog-sinks-graylog/commits)

---
updated-dependencies:
- dependency-name: Serilog.Sinks.Graylog
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-03 12:00:59 +00:00
Weevild
0c4b5a5ce8 Translated using Weblate (Swedish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sv/
2022-01-02 17:05:58 -05:00
WWWesten
65bf393efb Translated using Weblate (Russian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ru/
2022-01-02 17:05:58 -05:00
Shadowghost
38d4300309 Translated using Weblate (German)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/de/
2022-01-02 17:05:58 -05:00
Joe Rogers
29755c9384 Merge a couple tests, extract duplicate code 2022-01-02 22:24:04 +01:00
Joe Rogers
608a91162a Add test for #6830 2022-01-02 22:23:47 +01:00
Joe Rogers
853ef727da Add refresh flag to remove existing data/images
Fixes #7040
2022-01-02 22:21:05 +01:00
Bond-009
11d0c6827f Merge pull request #7058 from cvium/the_most_important_feature 2022-01-02 12:31:20 +01:00
Cody Robibero
0765fd568f Use IAuthorizationContext for websocket 2022-01-01 12:34:22 -07:00
cvium
28c2ac9cc0 Remove file extension filter and fix build 2022-01-01 20:07:03 +01:00
Claus Vium
58b9e5af79 Update Emby.Server.Implementations/Library/Resolvers/GenericVideoResolver.cs
Co-authored-by: Joe Rogers <1337joe@users.noreply.github.com>
2022-01-01 14:52:54 +01:00
Claus Vium
1725b2ee69 Merge pull request #7076 from crobibero/providerid 2021-12-31 21:03:30 +01:00
Cody Robibero
25abe479eb Add ability to search by - 2021-12-31 08:51:50 -07:00
Claus Vium
1b9cb8cca6 Merge pull request #7075 from crobibero/sort 2021-12-31 16:32:26 +01:00
Cody Robibero
c3071f8996 Fix orderby query 2021-12-31 08:03:08 -07:00
Joshua M. Boniface
dc9e1ece29 Merge pull request #7070 from thornbill/fix-ci-builds 2021-12-31 03:47:06 -05:00
Joe Rogers
76e640b0b9 Add tests and documentation for ProviderUtils 2021-12-31 00:10:35 +01:00
Bill Thornton
226a43619f Fix fedora build version 2021-12-30 16:54:59 -05:00
WWWesten
53447976f0 Added translation using Weblate (Burmese) 2021-12-30 16:15:37 -05:00
Bond-009
b2a2bdb088 Merge pull request #7049 from crobibero/warn40219 2021-12-30 13:50:39 +01:00
WWWesten
bb713d1931 Translated using Weblate (Malayalam)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ml/
2021-12-28 10:05:57 -05:00
WWWesten
73a5fc6e26 Translated using Weblate (Thai)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/th/
2021-12-28 10:05:57 -05:00
WWWesten
019b631d7b Translated using Weblate (Urdu (Pakistan))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ur_PK/
2021-12-28 10:05:57 -05:00
WWWesten
6f4a0683ed Translated using Weblate (Lithuanian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/lt/
2021-12-28 10:05:57 -05:00
WWWesten
5a1b347b83 Translated using Weblate (Korean)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ko/
2021-12-28 10:05:57 -05:00
WWWesten
828bf1f0ac Translated using Weblate (Hebrew)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/he/
2021-12-28 10:05:57 -05:00
WWWesten
4ec7488bab Translated using Weblate (German (Swiss))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/gsw/
2021-12-28 10:05:57 -05:00
WWWesten
7ad1527fd0 Translated using Weblate (Greek)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/el/
2021-12-28 10:05:57 -05:00
WWWesten
80fce87f7a Translated using Weblate (Catalan)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ca/
2021-12-28 10:05:57 -05:00
Joe Rogers
e3a7c9238d Pull default MergeData implementation to parent 2021-12-28 15:12:09 +01:00
Bond-009
2ab3bf97ef Merge pull request #7059 from crobibero/device-order 2021-12-28 13:56:51 +01:00
Cody Robibero
57db188c2e Fix device ordering 2021-12-27 16:43:29 -07:00
cvium
2749509f00 Use dedicated resolvers for extras 2021-12-28 00:37:40 +01:00
Cody Robibero
7bfc6b5679 Remove more warnings 2021-12-27 07:38:06 -07:00
Cody Robibero
251b9a5235 Merge pull request #7004 from Bond-009/cleanup2 2021-12-27 07:33:11 -07:00
Bond_009
ea8f40e84a More cleanup 2021-12-27 14:20:05 +00:00
Bond-009
4441513ca4 Merge pull request #7055 from crobibero/fix-build-589710 2021-12-27 11:48:51 +00:00
Cody Robibero
ebbde383e8 Fix analysis issues 2021-12-26 11:08:43 -07:00
Cody Robibero
78bb581f0c Merge pull request #6934 from nyanmisaka/hwa
HWA pipeline refactor, AMD/Intel/Nvidia full hardware filtering support, AV1 hwdec
2021-12-26 17:32:06 +00:00
Cody Robibero
a615f87680 Merge pull request #7044 from 1337joe/fix-trailers-v2
Fix trailers v2
2021-12-25 23:31:46 +00:00
Cody Robibero
d594f81f65 Merge pull request #7048 from Bond-009/warn56 2021-12-25 18:46:08 +00:00
Cody Robibero
6804624c15 Add image/jpg to extension lookup 2021-12-25 11:41:39 -07:00
Joe Rogers
cf29aae690 Add rule to pick up theme videos 2021-12-24 21:21:19 +00:00
Joe Rogers
c0ab54f0bd Fix resolved type for Trailers 2021-12-24 21:21:19 +00:00
WWWesten
60e75f7b70 Translated using Weblate (Welsh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cy/
2021-12-24 13:05:54 -05:00
itsddpanda
17e6bd5f88 Translated using Weblate (Hindi)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hi/
2021-12-24 13:05:54 -05:00
WWWesten
42c661e30f Translated using Weblate (Urdu (Pakistan))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ur_PK/
2021-12-24 13:05:54 -05:00
blob03
9f5873b8c4 Translated using Weblate (French)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr/
2021-12-24 13:05:54 -05:00
Bond_009
cbfa355e31 Update StyleCop 2021-12-24 18:28:27 +01:00
nyanmisaka
728a5988b3 Merge remote-tracking branch 'origin/master' into hwa 2021-12-25 00:33:17 +08:00
Bond-009
2e7d173188 Merge pull request #7047 from Bond-009/fixbuild2 2021-12-24 15:42:19 +00:00
Bond_009
ec2645c0c0 Fix build 2021-12-24 16:35:57 +01:00
nyanmisaka
7db753d247 reduce tonemap cpu usage, add deint and AR support in thumbnails
Co-authored-by: Orry Verducci <orry@orryverducci.co.uk>
2021-12-24 17:03:57 +08:00
Claus Vium
d0832c60d4 Merge DynamicHlsController and VideoHlsController (#119)
* Merge DynamicHlsController and VideoHlsController

Co-authored-by: Nyanmisaka <nst799610810@gmail.com>
2021-12-24 17:03:57 +08:00
nyanmisaka
b2d85a02c2 Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
Co-authored-by: Bond_009 <bond.009@outlook.com>
2021-12-24 17:03:57 +08:00
nyanmisaka
4b9c84c52e EncodingHelper hwaccel pipelines refactor
separate the HW pipeline according to HWA method for maintainability.
2021-12-24 17:03:57 +08:00
Claus Vium
daa76d3d34 Merge pull request #7042 from crobibero/fix-build 2021-12-24 10:00:43 +01:00
Cody Robibero
599fc9e671 Merge pull request #5836 from BaronGreenback/comparisons 2021-12-24 02:43:18 +00:00
Cody Robibero
17f43c8e01 Update Jellyfin.Api/Controllers/VideoHlsController.cs 2021-12-24 02:42:43 +00:00
Cody Robibero
634ce40c2f Merge branch 'master' into comparisons 2021-12-24 02:41:50 +00:00
Cody Robibero
b5459f49d3 Merge pull request #5009 from MrTimscampi/studios-images-plugin 2021-12-24 02:40:59 +00:00
Cody Robibero
932c2c6665 Fix config.html 2021-12-23 19:40:24 -07:00
Cody Robibero
a04ab6b876 Merge branch 'master' into studios-images-plugin
# Conflicts:
#	MediaBrowser.Providers/MediaBrowser.Providers.csproj
2021-12-23 19:38:10 -07:00
Cody Robibero
a8a8ce4e7b Fix build from PR merging 2021-12-23 19:27:51 -07:00
Cody Robibero
8c7dd0a691 Merge pull request #6819 from cvium/why_should_we_use_the_imageinfo_when_we_can_guess 2021-12-24 02:02:37 +00:00
Cody Robibero
55b429edb7 Merge pull request #6920 from marius-luca-87/subtitle_drop 2021-12-24 02:01:44 +00:00
Cody Robibero
cecfdeeec3 Merge branch 'master' into unharden-for-lxc 2021-12-24 02:01:06 +00:00
Cody Robibero
076a13abeb Merge pull request #7029 from cvium/allocations_maybe 2021-12-24 01:59:25 +00:00
Cody Robibero
259bc231d6 Merge pull request #6867 from yresquirol/related-media 2021-12-24 01:59:11 +00:00
Cody Robibero
7774cb2067 Update Jellyfin.Api/Controllers/LibraryController.cs 2021-12-23 20:46:27 +00:00
Cody Robibero
00211ca056 Merge pull request #7028 from cvium/everything_went_wrong 2021-12-22 17:57:00 +00:00
Cody Robibero
ca4769ab68 Merge pull request #7035 from cvium/force_remux_or_transcode 2021-12-21 11:23:02 -07:00
Bond-009
84ac692312 Merge pull request #7034 from cvium/dont_die 2021-12-21 14:57:04 +00:00
cvium
a7a7173cd5 Force a remux/transcode with external audio files 2021-12-21 14:35:58 +01:00
cvium
c86b064f80 Catch HttpRequestException when saving images from local provider 2021-12-21 12:29:09 +01:00
cvium
05c8834a3a Don't cache special feature ids 2021-12-21 00:10:58 +01:00
cvium
9158511017 Don't skip extras refresh when replacing metadata or doing a full refresh 2021-12-20 23:58:09 +01:00
Kichirou Hoshino
afaff1310f Translated using Weblate (Filipino)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fil/
2021-12-20 13:03:17 -05:00
cvium
b880dc8a4a Use our own Contains extension 2021-12-20 13:31:07 +01:00
cvium
91292b8ea5 Fix build 2021-12-20 12:34:16 +01:00
cvium
83a94aa612 Fix extras folders 2021-12-20 12:15:20 +01:00
Cody Robibero
cb41dda5b3 Merge pull request #7015 from Bond-009/zip 2021-12-19 11:32:12 -07:00
Cody Robibero
a633a3052f Merge pull request #7013 from 1337joe/increment-library-names 2021-12-19 11:32:06 -07:00
Cody Robibero
e8ae501430 Merge pull request #7018 from Bond-009/json2 2021-12-19 11:32:00 -07:00
Cody Robibero
db46eaa744 Merge pull request #7021 from cvium/baseitem_closure 2021-12-19 11:31:54 -07:00
Cody Robibero
71f6326e1a Merge pull request #7012 from nnnlog/remove-protect-clock 2021-12-19 11:13:47 -07:00
cvium
91f3ce3109 Use == instead of Object.Equals to avoid closure allocation 2021-12-19 18:24:05 +01:00
Bond-009
3f3295a5d6 Merge pull request #7020 from cvium/static_anon 2021-12-19 14:42:28 +00:00
cvium
76c2775d8c Use static lambdas 2021-12-19 10:27:57 +01:00
Claus Vium
cd760943a9 Merge pull request #7017 from crobibero/typo 2021-12-19 07:22:19 +01:00
Bond_009
ea9fc9f9cc Remove unreachable branches from JsonConverters
* If the type is a reference type we don't have to handle null ourselves
* reader.ValueSpan is only valid if reader.HasValueSequence is false
2021-12-19 02:20:46 +01:00
Cody Robibero
d9bc65469f Fix query param spelling 2021-12-18 17:17:03 -07:00
Joe Rogers
077f13ae4c Increment library number instead of appending 2021-12-18 20:50:36 +01:00
Bond_009
a4565da4a9 Use System.IO.Compression instead of SharpCompress for zips
Also removes unused methods from ZipClient
2021-12-18 17:52:38 +01:00
WWWesten
c35b704a83 Translated using Weblate (Welsh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cy/
2021-12-18 11:05:53 -05:00
Oatavandi
55146334e8 Translated using Weblate (Tamil)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ta/
2021-12-18 11:05:53 -05:00
Cody Robibero
232a148d3f Merge pull request #6978 from Bond-009/framerate
Add tests for ProbeResultNormalizer.GetFrameRate
2021-12-18 07:18:36 -07:00
Bond_009
968c534864 Return null on division by zero 2021-12-18 14:56:10 +01:00
Bond_009
f8fcbc88fc Add tests for ProbeResultNormalizer.GetFrameRate 2021-12-18 14:56:10 +01:00
nlog
92448ffabd Remove ProtectClock for hardware encoding 2021-12-18 13:00:51 +09:00
Cody Robibero
923720c988 Merge pull request #6956 from cvium/what_could_go_wrong 2021-12-17 07:51:32 -07:00
Bond-009
16bf4a013b Merge pull request #7005 from 1337joe/deprecate-enableinternetproviders 2021-12-16 22:49:19 +00:00
Bond-009
b3c48e8e78 Merge pull request #7006 from crobibero/base-item-kind-fixed 2021-12-16 22:43:22 +00:00
Joshua M. Boniface
42a7318fd0 Merge pull request #7000 from brianjmurrell/update-build-for-el7
Fix build on EL7
2021-12-16 17:01:15 -05:00
Cody Robibero
8ddba55214 Use string builder instead of string interpolation 2021-12-16 09:18:51 -07:00
Cody Robibero
0dd304f86c Log warning for unknown BaseItemKind to Type mapping 2021-12-16 07:54:22 -07:00
Cody Robibero
249a1ca955 Add mapping from BaseItemKind to Type.FullName for querying 2021-12-15 17:57:39 -07:00
Joe Rogers
dea5a3f3bc Deprecate LibraryOptions.EnableInternetProviders 2021-12-16 00:52:18 +01:00
WWWesten
b5d4fdb56e Translated using Weblate (Welsh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cy/
2021-12-15 13:05:52 -05:00
WWWesten
e34fd15196 Translated using Weblate (Malay)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ms/
2021-12-15 13:05:52 -05:00
Joshua M. Boniface
7405450da2 Merge pull request #7002 from crobibero/dotnet-6.0.1 2021-12-15 10:36:18 -05:00
Claus Vium
9a0618552b Merge branch 'master' into what_could_go_wrong 2021-12-15 08:38:39 +01:00
Claus Vium
4a58582ad5 Merge pull request #6912 from crobibero/filename-tvmaze
Add additional provider id parsing to file name
2021-12-15 08:37:34 +01:00
Claus Vium
4c9bd905c6 Merge pull request #6979 from crobibero/baseitemkind
Use BaseItemKind where possible
2021-12-15 08:28:44 +01:00
Cody Robibero
5e8aaa68cf Update to dotnet 6.0.1 2021-12-14 23:47:07 -07:00
Brian J. Murrell
543b0127b3 Fix build on EL7
Add /usr/local/bin to $PATH.

Update fedora/Makefile with enhancements from jellyfin-web.
2021-12-14 17:50:58 -05:00
Cody Robibero
87439665d7 Use array instead of HashSet 2021-12-14 15:10:40 -07:00
cvium
c3c4dc6839 Review 2021-12-14 23:05:45 +01:00
Claus Vium
e575d815cc Update MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs
Co-authored-by: Joe Rogers <1337joe@users.noreply.github.com>
2021-12-14 22:57:01 +01:00
Cody Robibero
ec9cff29df Merge pull request #6998 from 1337joe/dont-crash-on-missing-server-config
Fix crash on missing server config file
2021-12-14 11:56:44 -07:00
Joe Rogers
0f4da9f635 Fix crash on missing server config file 2021-12-14 19:29:31 +01:00
Cody Robibero
0edf77994a Cache BaseItemKind 2021-12-14 07:41:29 -07:00
Cody Robibero
38f0e611c8 Merge pull request #6994 from Tedyst/master
Fixed crash in MigrationRunner by checking migration for file existance
2021-12-14 05:02:31 -07:00
Stoica Tedy
4e03801931 Update Jellyfin.Server/Migrations/MigrationRunner.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-12-14 09:57:20 +02:00
Stoica Tedy
250332104b Fixed crash in MigrationRunner
The crashed was caused by importing the migrationOptions even if the
migrations.xml file is non existant.
[Issue]: ~/.config/jellyfin/migrations.xml not found #6992
2021-12-14 09:31:35 +02:00
Bond-009
0872ede57b Merge pull request #6988 from jellyfin/dependabot/nuget/System.Linq.Async-5.1.0 2021-12-13 21:25:21 +00:00
dependabot[bot]
0120d80b78 Bump System.Linq.Async from 5.0.0 to 5.1.0
Bumps [System.Linq.Async](https://github.com/dotnet/reactive) from 5.0.0 to 5.1.0.
- [Release notes](https://github.com/dotnet/reactive/releases)
- [Commits](https://github.com/dotnet/reactive/compare/ixnet-v5.0.0...ixnet-v5.1.0)

---
updated-dependencies:
- dependency-name: System.Linq.Async
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-13 12:00:51 +00:00
cvium
9e665ff520 Fix usage of RegexOptions.Compiled 2021-12-13 08:27:20 +01:00
Claus Vium
5c3d0b5510 Update Emby.Naming/Video/ExtraResolver.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-12-13 08:22:17 +01:00
cvium
3a4e7fb075 semi undo 2021-12-13 00:26:54 +01:00
Joshua M. Boniface
fcf5b9b46e Unify and standardize unit files between deb/rpm
Ensures that the RPM service unit has all the tweaks from the Deb
service unit, and some in the other direction too.
2021-12-12 17:01:35 -05:00
Joshua M. Boniface
9a2b88cb1f Revert some hardening that breaks LXC
For each of these, we should be OK since we run as an unprivileged user
anyways.
2021-12-12 16:57:35 -05:00
cvium
c5569c701c Folder can't have extras 2021-12-12 19:04:22 +01:00
Cody Robibero
32629cd7da Use BaseItemKind where possible 2021-12-12 06:11:27 -07:00
Claus Vium
2c6d6dbbf8 Merge pull request #6976 from Bond-009/float 2021-12-12 07:49:23 +01:00
Claus Vium
bdf9bdb9e6 Merge pull request #6977 from Bond-009/mime 2021-12-12 07:46:16 +01:00
Cody Robibero
0e8c97ed60 Merge pull request #5894 from brianjmurrell/bmurrell/setcap-low-port 2021-12-11 22:12:19 -07:00
Cody Robibero
843ba4506e Merge pull request #6980 from brianjmurrell/ci-autoversion-packages 2021-12-11 22:10:54 -07:00
Brian J. Murrell
3699fa43f0 Merge branch 'jellyfin:master' into ci-autoversion-packages 2021-12-11 23:09:43 -05:00
Brian J. Murrell
296a61cbc4 Run bump_version in make srpm
Also add an "rpms" target that builds the RPMs using mock in a target
environment.

Signed-off-by: Brian J. Murrell <brian@interlinx.bc.ca>
2021-12-11 22:49:19 -05:00
Cody Robibero
a04f8f5efb Fix new test 2021-12-11 20:35:43 -07:00
Cody Robibero
58f788e8ab Update tests/Jellyfin.Server.Implementations.Tests/Library/PathExtensionsTests.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-12-11 19:43:01 -07:00
Bond_009
7ee96a59d3 Use correct jpeg MIME type
image/jpg isn't a valid MIME type
2021-12-12 02:07:35 +01:00
Bond_009
510f92f4c5 Don't check floats for equality 2021-12-12 01:26:47 +01:00
WWWesten
a90614d194 Translated using Weblate (Zulu)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zu/
2021-12-11 16:05:50 -05:00
INOUE Daisuke
5e8f27d473 Translated using Weblate (Japanese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ja/
2021-12-11 16:05:50 -05:00
WWWesten
1f02ab83cb Translated using Weblate (Persian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fa/
2021-12-11 16:05:50 -05:00
Cody Robibero
2a82f8dc40 Merge pull request #6222 from orryverducci/mbaff-interlace-detection 2021-12-11 13:54:52 -07:00
Joshua M. Boniface
584cf47ef5 Show detailed git status 2021-12-11 15:03:07 -05:00
Joshua M. Boniface
3223ef0e49 Properly handle the -1 tag
Avoids breaking Fedora/CentOS while preserving Debian.
2021-12-11 14:58:20 -05:00
Joshua M. Boniface
3797879d05 Automatically bump stable versions in build
Should prevent strangeness with building these for pre-releases or
actual release versions. Whatever the Git tag is, becomes the package
version.
2021-12-11 14:54:15 -05:00
Cody Robibero
8b4a36d6f7 Merge pull request #6898 from jonas-resch/support-external-audio-files
Add support for external audio files
2021-12-11 12:05:34 -07:00
Cody Robibero
4d1b824651 Merge pull request #6902 from cvium/migrate_networkconfig
Migrate network configuration safely
2021-12-11 12:04:58 -07:00
Cody Robibero
fbc79cb4ce Merge pull request #6965 from bendardenne/patch-1
Add artist to '/' split whitelist
2021-12-11 12:04:39 -07:00
cvium
6d6fb1bba3 Rename unknown parttype to "unknown" 2021-12-11 16:02:51 +01:00
cvium
681bfbd535 Remove duplication 2021-12-10 14:34:46 +01:00
cvium
220443eca1 Simplify StackResolver 2021-12-10 14:23:31 +01:00
WWWesten
4d446eb614 Translated using Weblate (Esperanto)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/eo/
2021-12-10 02:05:47 -05:00
Cody Robibero
d707a201c9 update tests 2021-12-09 12:31:32 -07:00
Marius Luca
7d86ef6f22 - add an option for dropping specific subtitle formats using the DLNA SubtitleProfile 2021-12-09 17:52:51 +02:00
Cody Robibero
eeb8192602 Add StringComparison 2021-12-09 08:38:00 -07:00
Benoît Dardenne
de2d292197 Added artist to '/' split whitelist 2021-12-09 16:07:57 +01:00
Cody Robibero
593b2fd359 Add more speed and more tests 2021-12-09 08:06:06 -07:00
WWWesten
13ac3e3665 Translated using Weblate (Macedonian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/mk/
2021-12-08 14:05:53 -05:00
WWWesten
5c407dbab6 Translated using Weblate (Romanian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ro/
2021-12-08 14:05:53 -05:00
Weevild
f50b2f7959 Translated using Weblate (Swedish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sv/
2021-12-08 14:05:53 -05:00
archon eleven
1acb9e1d45 Translated using Weblate (Malay)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ms/
2021-12-08 14:05:53 -05:00
WWWesten
6640f3f782 Translated using Weblate (Malay)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ms/
2021-12-08 14:05:53 -05:00
WWWesten
8aef2cb282 Translated using Weblate (Lithuanian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/lt/
2021-12-08 14:05:53 -05:00
WWWesten
8bd331f5fa Translated using Weblate (Croatian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hr/
2021-12-08 14:05:53 -05:00
Muhammed Aljailane
ee80602a0d Translated using Weblate (Arabic)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ar/
2021-12-08 14:05:53 -05:00
Jonas Resch
03b3f08354 Format code in MediaBrowser.Providers/MediaInfo/AudioResolver.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-12-08 18:55:28 +01:00
Jonas Resch
65833076db Add "Async" suffix to AddExternalAudio method
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-12-08 16:49:27 +01:00
Jonas Resch
e18d966874 Add "Async" suffix to AddExternalAudio method
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-12-08 16:49:20 +01:00
Jonas Resch
4cdb590291 Exclude .strm files when searching for external audio files 2021-12-08 10:18:09 +01:00
Jonas Resch
d47811bdaf Fix wrong ffmpeg map argument due to wrong calculation 2021-12-08 10:17:25 +01:00
Jonas Resch
01a0a4a87c Add audioResolver argument to FFProbeVideoInfo initialization 2021-12-08 10:16:48 +01:00
Jonas Resch
87a6fdf847 Merge branch 'support-external-audio-files' of github.com:jonas-resch/jellyfin into support-external-audio-files 2021-12-08 09:55:16 +01:00
Cody Robibero
3513f5a84b Search for attribute text 2021-12-07 17:10:27 -07:00
Claus Vium
a327b43ab7 Update MediaBrowser.Providers/MediaInfo/FFProbeProvider.cs 2021-12-07 20:28:51 +01:00
Claus Vium
3f69eeab27 Merge branch 'master' into support-external-audio-files 2021-12-07 20:16:32 +01:00
Claus Vium
dd8b9e9d23 Merge pull request #6953 from matthiasdv/mdv/harden-systemd-service
Add more hardening to systemd service
2021-12-07 19:46:45 +01:00
cvium
6030946d78 Fixes 2021-12-07 19:23:30 +01:00
cvium
fde84a1e00 Refactor extras parsing 2021-12-07 15:24:57 +01:00
matthiasdv
3176a4ddd9 add more hardening to systemd service 2021-12-06 22:40:00 +01:00
Bond-009
9cafa2cab4 Merge pull request #6946 from jellyfin/dependabot/nuget/libse-3.6.4 2021-12-06 14:46:10 +01:00
dependabot[bot]
c4c7d7431f Bump libse from 3.6.2 to 3.6.4
Bumps [libse](https://github.com/SubtitleEdit/subtitleedit) from 3.6.2 to 3.6.4.
- [Release notes](https://github.com/SubtitleEdit/subtitleedit/releases)
- [Changelog](https://github.com/SubtitleEdit/subtitleedit/blob/master/Changelog.txt)
- [Commits](https://github.com/SubtitleEdit/subtitleedit/compare/3.6.2...3.6.4)

---
updated-dependencies:
- dependency-name: libse
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-06 13:29:10 +00:00
Bond-009
f2648f3eee Merge pull request #6947 from jellyfin/dependabot/nuget/BDInfo-0.7.6.2 2021-12-06 14:28:17 +01:00
dependabot[bot]
29095ab390 Bump BDInfo from 0.7.6.1 to 0.7.6.2
Bumps [BDInfo](https://github.com/jellyfin/BDInfo) from 0.7.6.1 to 0.7.6.2.
- [Release notes](https://github.com/jellyfin/BDInfo/releases)
- [Commits](https://github.com/jellyfin/BDInfo/commits)

---
updated-dependencies:
- dependency-name: BDInfo
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-06 12:01:19 +00:00
WWWesten
b9b3959223 Translated using Weblate (Punjabi)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pa/
2021-12-06 03:45:54 -05:00
WWWesten
9b71bf8cfe Translated using Weblate (Nepali)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ne/
2021-12-06 03:45:54 -05:00
WWWesten
5eff80fb8c Translated using Weblate (Macedonian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/mk/
2021-12-06 03:45:54 -05:00
mikixd586
2d77c729f2 Translated using Weblate (Serbian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sr/
2021-12-06 03:45:54 -05:00
mio2
9d387c542a Translated using Weblate (Japanese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ja/
2021-12-06 03:45:54 -05:00
Bas Goos
60f4d70cc5 Translated using Weblate (Dutch)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nl/
2021-12-06 03:45:54 -05:00
oxixes
bd48b74d5b Translated using Weblate (Spanish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/es/
2021-12-06 03:45:54 -05:00
Mehyar
838adaea48 Translated using Weblate (Arabic)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ar/
2021-12-06 03:45:54 -05:00
archon eleven
46543ead27 Translated using Weblate (Malay)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ms/
2021-12-06 03:45:54 -05:00
Cody Robibero
707e5bab97 Merge pull request #6941 from holahmeds/mime-type
Use MimeTypes package to determine MIME type
2021-12-04 17:55:24 -07:00
Ahmed Rafiq
cf75f99f0e Update unit test name
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-12-04 21:14:52 +06:00
Ahmed Rafiq
fa6f6515a6 Update unit test name
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-12-04 21:14:16 +06:00
Ahmed Rafiq
0e491025ae Refactor MimeTypes.ToExtension()
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-12-04 21:13:18 +06:00
Ahmed Rafiq
40e05a7993 Update documentation 2021-12-04 21:06:51 +06:00
Ahmed Rafiq
6193fdea69 Use MimeTypes package to determine MIME type
This simplifies the code since we don't have to keep large mappings of extensions and MIME types.

We still keep the ability to override the mappings for:
- filling in entries not present in the package, for e.g. ".azw3"
- picking preferred extensions, for e.g. MimeTypes provides ".conf" as a possible extionsion for "text/plain", and while that is correct, ".txt" would be preferrable
- compatibility reasons
2021-12-04 20:08:16 +06:00
Jonas Resch
ca2d94ee97 Merge branch 'support-external-audio-files' of github.com:jonas-resch/jellyfin into support-external-audio-files 2021-12-03 19:19:53 +01:00
Jonas Resch
99a48554a6 Optimize calculation of external audio stream index in MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-12-03 19:19:22 +01:00
Jonas Resch
120828d8d0 Replace escaped quote string with quote character in MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-12-03 19:18:43 +01:00
Cody Robibero
9cea773d29 Merge pull request #6874 from 1337joe/tmdb-image-size-options 2021-12-03 07:03:02 -07:00
Cody Robibero
a474e4cf3b Merge pull request #6914 from marius-luca-87/dlna 2021-12-02 06:56:07 -07:00
Cody Robibero
b1025121b8 Merge pull request #6929 from Bond-009/jsoncontent 2021-12-02 06:55:28 -07:00
Bond-009
2029076ce8 Merge pull request #6936 from cvium/ffprobeprovider_tweak 2021-12-02 13:42:45 +01:00
cvium
5535b9c01f Reduce allocations 2021-12-02 11:21:59 +01:00
Orry Verducci
e446e9fde9 Merge branch 'master' into mbaff-interlace-detection 2021-12-01 22:13:52 +00:00
Jonas Resch
180e2dc329 Prevent crashes in specific scenarios 2021-12-01 21:05:43 +01:00
Bond_009
40be86eec0 Use PostAsJsonAsync where possible 2021-12-01 15:58:23 +01:00
Bond_009
beafd6eaab Use JsonContent where possible
Should reduce the # of allocated bytes
2021-12-01 15:40:06 +01:00
hoanghuy309
f6d8c19a7a Translated using Weblate (Vietnamese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/vi/
2021-11-30 17:48:37 -05:00
snieguzary
2da7777e6d Translated using Weblate (Polish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pl/
2021-11-30 17:48:37 -05:00
WWWesten
a0df79d8a5 Translated using Weblate (Persian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fa/
2021-11-30 17:48:37 -05:00
Bond-009
01b95cf8e6 Merge pull request #6927 from 1337joe/use-ssl-for-tmdb-images 2021-11-30 23:43:26 +01:00
Jonas Resch
6bbfcf1906 Add documentation to AudioResolver class 2021-11-30 21:05:43 +01:00
Jonas Resch
7b50048020 Add ConfigureAwait true in MediaBrowser.Providers/MediaInfo/AudioResolver.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-11-30 20:45:47 +01:00
Jonas Resch
a9a53dc657 Add ConfigureAwait true in MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-11-30 20:45:21 +01:00
Jonas Resch
0d8170cedb Move variable in MediaBrowser.Providers/MediaInfo/AudioResolver.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-11-30 20:44:57 +01:00
Jonas Resch
1a35690834 Don't disable warnings in MediaBrowser.Providers/MediaInfo/AudioResolver.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-11-30 20:44:16 +01:00
Jonas Resch
c61b9ef05a Fix warning due to new line after opening bracket 2021-11-30 19:52:44 +01:00
Jonas Resch
b5b994b22f Fix compiler warning due to missing EnumeratorCancellation attribute 2021-11-30 19:31:46 +01:00
Jonas Resch
0894a6193f Implement coding standards from 2nd code feedback 2021-11-30 19:31:46 +01:00
Jonas Resch
9d34d6339a Change return type from List<string> to IEnumerable<string> in MediaBrowser.Providers/MediaInfo/AudioResolver.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-11-30 19:31:46 +01:00
Jonas Resch
bbf1399826 Check language for null or empty instead of only null in MediaBrowser.Providers/MediaInfo/AudioResolver.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-11-30 19:31:46 +01:00
Jonas Resch
d016d483ae Change return type from Task<List<MediaStream>> to Task<IAsyncEnumerable<MediaStream>> in MediaBrowser.Providers/MediaInfo/AudioResolver.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-11-30 19:31:46 +01:00
Jonas Resch
61b191d345 Fix indentation in MediaBrowser.Providers/MediaInfo/AudioResolver.cs
If statement which checks if filename of audio and video file match or if audio file starts with video filename

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-11-30 19:31:46 +01:00
Jonas Resch
9433072f90 Only search in video folder for external audio files
Don't search in video metadata folder since audio files won't be stored there

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-11-30 19:31:46 +01:00
Jonas Resch
a3c5afa443 Add ConfigureAwait false MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-11-30 19:31:46 +01:00
Jonas Resch
f1862f9b1a Add ConfigureAwait false to MediaBrowser.Providers/MediaInfo/AudioResolver.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-11-30 19:31:46 +01:00
Jonas Resch
a68e58556c Implement code feedback
- Rewrite AudioResolver
- Use async & await instead of .Result
- Add support for audio containers with multiple audio streams (e.g.
  mka)
- Fix bug when using external subtitle and external audio streams at the
  same time
2021-11-30 19:31:46 +01:00
Jonas Resch
5e91f50c43 Update CONTRIBUTORS.md 2021-11-30 19:31:46 +01:00
Jonas Resch
c1a8385c9c Shorten calculation of audio startIndex in MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-11-30 19:31:46 +01:00
Jonas Resch
9978164438 Add support for external audio files 2021-11-30 19:31:46 +01:00
Marius Luca
eaa003775f - take into account the streams dlnaheaders query parameter set by the DidlBuilder NormalizeDlnaMediaUrl function 2021-11-30 16:09:02 +02:00
Joe Rogers
e778462955 Use SSL for tmdb images 2021-11-30 14:31:32 +01:00
Brian J. Murrell
148fcb1bb8 Put low port privilege into an optional subpackage
Move "AmbientCapabilities=CAP_NET_BIND_SERVICE" to the "[Service]"
section of the optional "lowport" unit drop-in file and package that
drop-in in a separate, optionally installable jellyfin-server-lowports
subpackage.

This isolates the CAP_NET_BIND_SERVICE capability to only installations
that desire it.

Signed-off-by: Brian J. Murrell <brian@interlinx.bc.ca>
2021-11-30 01:18:27 -05:00
Brian J. Murrell
757970bfc1 Merge remote-tracking branch 'origin/master' into HEAD 2021-11-29 17:53:26 -05:00
WWWesten
c677b4f6b7 Translated using Weblate (Mongolian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/mn/
2021-11-29 07:05:47 -05:00
WWWesten
20b0499b00 Translated using Weblate (Telugu)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/te/
2021-11-29 07:05:47 -05:00
rimasx
09f2456919 Translated using Weblate (Estonian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/et/
2021-11-29 07:05:47 -05:00
WWWesten
bcd84dedda Translated using Weblate (Pirate)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pr/
2021-11-29 07:05:47 -05:00
WWWesten
2496c5d589 Translated using Weblate (Vietnamese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/vi/
2021-11-29 07:05:47 -05:00
WWWesten
19c9319d2c Translated using Weblate (Albanian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sq/
2021-11-29 07:05:47 -05:00
WWWesten
6ef9ac6e53 Translated using Weblate (Tamil)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ta/
2021-11-29 07:05:47 -05:00
WontTell
502a5fc932 Translated using Weblate (Spanish (Latin America))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/es_419/
2021-11-29 07:05:47 -05:00
WWWesten
02ce95edaf Translated using Weblate (Serbian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sr/
2021-11-29 07:05:47 -05:00
WWWesten
5addb24e9b Translated using Weblate (Portuguese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pt/
2021-11-29 07:05:47 -05:00
wolong gl
dc27e7618f Translated using Weblate (Chinese (Simplified))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zh_Hans/
2021-11-29 07:05:47 -05:00
Weevild
3e1bbdd3d4 Translated using Weblate (Swedish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sv/
2021-11-29 07:05:47 -05:00
WWWesten
2ff786fd3d Translated using Weblate (Malay)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ms/
2021-11-29 07:05:47 -05:00
Bond-009
2a09d4244c Merge pull request #6923 from cvium/query_a_bit_less 2021-11-29 13:00:38 +01:00
cvium
beef6f0855 Don't query series twice 2021-11-28 19:56:31 +01:00
Cody Robibero
80c7119537 Merge pull request #6915 from 1337joe/subtitle-parsing-fix 2021-11-27 16:55:51 -07:00
Cody Robibero
1df56335ee Add more tests 2021-11-27 16:25:21 -07:00
Claus Vium
065d3fa837 performance++ 2021-11-27 16:10:43 -07:00
Joe Rogers
1df5b5034b Address suppressed warnings 2021-11-27 20:35:18 +01:00
Joe Rogers
4a20ae6cb4 Allow default/forced tag without setting language 2021-11-27 20:13:21 +01:00
Claus Vium
a87b87825d Update Jellyfin.Server/Migrations/MigrationRunner.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-11-27 16:01:27 +01:00
Cody Robibero
976e3160b8 Merge pull request #6907 from marius-luca-87/dlna 2021-11-27 07:47:54 -07:00
Cody Robibero
4890454935 Add additional provider parsing to series file name 2021-11-27 07:44:12 -07:00
Claus Vium
ca887518dd Use the Memory overload for ReadAsync (#6865) 2021-11-27 03:23:46 +01:00
Marius Luca
5b5ae1ef52 - enable seek function when direct streaming over DLNA 2021-11-26 18:09:34 +02:00
WWWesten
3eec137100 Translated using Weblate (Spanish (Latin America))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/es_419/
2021-11-26 04:09:26 -05:00
WontTell
402a3797a4 Translated using Weblate (Spanish (Latin America))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/es_419/
2021-11-26 04:09:26 -05:00
cvium
0b871505a6 Remove stray datamember 2021-11-24 14:36:01 +01:00
cvium
0485ff1899 Create a store key constant for network 2021-11-24 13:42:14 +01:00
cvium
69df004b9f Migrate network configuration safely 2021-11-24 13:00:12 +01:00
N4v41
8b9ff893b3 Translated using Weblate (Portuguese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pt/
2021-11-24 06:28:00 -05:00
Pedro Almeida
b3d5383073 Translated using Weblate (Portuguese (Portugal))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pt_PT/
2021-11-24 06:28:00 -05:00
Csaba
9d5f328a09 Translated using Weblate (Hungarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hu/
2021-11-24 06:27:59 -05:00
WWWesten
f469ee3010 Translated using Weblate (English)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/en/
2021-11-24 06:27:59 -05:00
Bond-009
e30ac91f16 Merge pull request #6900 from ianjazz246/local-time-test 2021-11-24 09:14:22 +01:00
ianjazz246
95183c365a Use local time for RecordingHelperTests 2021-11-23 12:57:05 -08:00
Joe Rogers
0af5e60094 Address review comments
Store null instead of calculating scaled image sizes.
Add endpoint to provide TMDb image size options.
2021-11-22 21:08:07 +01:00
Cody Robibero
3c030740ea Merge pull request #6895 from jellyfin/dependabot/nuget/prometheus-net.AspNetCore-5.0.2
Bump prometheus-net.AspNetCore from 5.0.1 to 5.0.2
2021-11-22 06:50:16 -07:00
dependabot[bot]
bb9ce98379 Bump prometheus-net.AspNetCore from 5.0.1 to 5.0.2
Bumps [prometheus-net.AspNetCore](https://github.com/prometheus-net/prometheus-net) from 5.0.1 to 5.0.2.
- [Release notes](https://github.com/prometheus-net/prometheus-net/releases)
- [Changelog](https://github.com/prometheus-net/prometheus-net/blob/master/History)
- [Commits](https://github.com/prometheus-net/prometheus-net/compare/v5.0.1...v5.0.2)

---
updated-dependencies:
- dependency-name: prometheus-net.AspNetCore
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-22 13:33:18 +00:00
Cody Robibero
02fda265b8 Merge pull request #6894 from jellyfin/dependabot/nuget/prometheus-net-5.0.2
Bump prometheus-net from 5.0.1 to 5.0.2
2021-11-22 06:32:48 -07:00
Cody Robibero
501919df35 Merge pull request #6893 from jellyfin/dependabot/nuget/sharpcompress-0.30.1
Bump sharpcompress from 0.30.0 to 0.30.1
2021-11-22 06:32:35 -07:00
Cody Robibero
107909de30 Merge pull request #6896 from jellyfin/dependabot/nuget/Serilog.Sinks.Console-4.0.1
Bump Serilog.Sinks.Console from 4.0.0 to 4.0.1
2021-11-22 06:32:19 -07:00
dependabot[bot]
052b667d6a Bump Serilog.Sinks.Console from 4.0.0 to 4.0.1
Bumps [Serilog.Sinks.Console](https://github.com/serilog/serilog-sinks-console) from 4.0.0 to 4.0.1.
- [Release notes](https://github.com/serilog/serilog-sinks-console/releases)
- [Commits](https://github.com/serilog/serilog-sinks-console/compare/v4.0.0...v4.0.1)

---
updated-dependencies:
- dependency-name: Serilog.Sinks.Console
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-22 12:01:30 +00:00
dependabot[bot]
e5ea607853 Bump prometheus-net from 5.0.1 to 5.0.2
Bumps [prometheus-net](https://github.com/prometheus-net/prometheus-net) from 5.0.1 to 5.0.2.
- [Release notes](https://github.com/prometheus-net/prometheus-net/releases)
- [Changelog](https://github.com/prometheus-net/prometheus-net/blob/master/History)
- [Commits](https://github.com/prometheus-net/prometheus-net/compare/v5.0.1...v5.0.2)

---
updated-dependencies:
- dependency-name: prometheus-net
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-22 12:01:20 +00:00
dependabot[bot]
223cc8314a Bump sharpcompress from 0.30.0 to 0.30.1
Bumps [sharpcompress](https://github.com/adamhathcock/sharpcompress) from 0.30.0 to 0.30.1.
- [Release notes](https://github.com/adamhathcock/sharpcompress/releases)
- [Commits](https://github.com/adamhathcock/sharpcompress/compare/0.30...0.30.1)

---
updated-dependencies:
- dependency-name: sharpcompress
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-22 12:01:01 +00:00
Claus Vium
39e6658d01 Merge pull request #6879 from crobibero/client-log-cleanup
Remove ClientLog endpoints
2021-11-21 23:57:13 +01:00
Claus Vium
8f051c86f7 Merge pull request #6873 from crobibero/resume-ignore-active
Add ability to exclude active sessions from resumable items
2021-11-21 23:54:17 +01:00
Claus Vium
11419cbbfd Merge pull request #6890 from crobibero/dlna-create
Fix creating DLNA profiles
2021-11-21 20:46:41 +01:00
Cody Robibero
5b7e8a27fb Fix creating DLNA profiles 2021-11-21 11:48:30 -07:00
WWWesten
718e4b8665 Translated using Weblate (Mongolian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/mn/
2021-11-20 14:05:43 -05:00
hoanghuy309
d387d4df92 Translated using Weblate (Vietnamese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/vi/
2021-11-20 14:05:43 -05:00
WWWesten
1fa845de6e Translated using Weblate (Ukrainian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/uk/
2021-11-20 14:05:43 -05:00
WWWesten
7126f9dffc Translated using Weblate (English (United Kingdom))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/en_GB/
2021-11-20 14:05:43 -05:00
Cody Robibero
b2b4bd82d7 Merge pull request #6862 from 1337joe/query-instead-of-filtering 2021-11-20 08:50:39 -07:00
Cody Robibero
03c7bcf9c6 Merge pull request #6870 from cvium/fix_omdb_image_provider 2021-11-20 08:50:22 -07:00
Cody Robibero
ea355b4262 Remove ClientLog endpoints 2021-11-20 08:47:05 -07:00
cvium
71a0abe211 Remove unnecessary N/A checks (converter changes them to null) 2021-11-20 08:32:07 +01:00
cvium
d8c3b8e7f8 Don't use AppendFormat 2021-11-20 08:24:52 +01:00
Joe Rogers
88baff5693 Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-11-19 22:40:42 +01:00
Joe Rogers
6d3b129666 Add image scaling options for tmdb 2021-11-19 22:21:21 +01:00
Cody Robibero
8295a3be0d Add ability to exclude active sessions from resumable items 2021-11-19 14:07:50 -07:00
WWWesten
17a273d237 Update LocalizationManager.cs (#6839) 2021-11-19 18:00:20 +01:00
Cody Robibero
752bb88445 Merge pull request #6871 from cvium/fix_localapiurl 2021-11-19 09:18:25 -07:00
cvium
a263f3978b Only force scheme and port when HTTPS is disallowed 2021-11-19 16:57:48 +01:00
Cody Robibero
0009e5cc27 Merge pull request #6850 from PetrusZ/collection-validator 2021-11-19 07:54:41 -07:00
cvium
96ea865681 Refactor omdb providers 2021-11-19 15:32:07 +01:00
Cody Robibero
4a7498a0be Merge pull request #6869 from cvium/optimize_childcount
Small optimization to child count field
2021-11-19 05:07:54 -07:00
cvium
e3f0a53f59 Small optimization to child count field 2021-11-19 09:15:06 +01:00
Yordany Rodriguez Esquirol
3734c95fd4 Related media according to genre 2021-11-18 15:23:47 -05:00
Joe Rogers
9ba7bf96ef Query MediaSourceManager directly in image providers
Add doc comments/minor tweaks to AudioImageProvider
2021-11-18 15:11:50 +01:00
Joe Rogers
bff5ff0cb8 Merge similar tests with Theories 2021-11-18 14:29:22 +01:00
Petrus.Z
acb86066ff Replace library option to AutomaticallyAddToCollection
Signed-off-by: Petrus.Z <silencly07@gmail.com>
2021-11-18 16:00:14 +08:00
Petrus.Z
263bbf897a Reduce one query
Signed-off-by: Petrus.Z <silencly07@gmail.com>
2021-11-18 15:34:35 +08:00
Joe Rogers
97124f5fce Add missed override 2021-11-18 07:42:04 +01:00
Petrus.Z
6565b0cfbe Fix style issues
Signed-off-by: Petrus.Z <silencly07@gmail.com>
2021-11-18 13:33:44 +08:00
Petrus.Z
b635b5a7e3 Paginate movies query
Signed-off-by: Petrus.Z <silencly07@gmail.com>
2021-11-18 13:08:56 +08:00
Petrus.Z
6d74c83ddb Fix issues mentioned in review, except for option name
Signed-off-by: Petrus.Z <silencly07@gmail.com>
2021-11-18 12:07:27 +08:00
Joe Rogers
7cf5767949 Query media streams by type instead of filtering 2021-11-17 22:34:04 +01:00
Cody Robibero
fa366f0099 Merge pull request #6860 from cvium/fix_xml_endless_loops 2021-11-17 08:39:49 -07:00
Petrus.Z
989013c974 Add new line at end of file
Signed-off-by: Petrus.Z <silencly07@gmail.com>
2021-11-17 22:22:52 +08:00
Petrus.Z
c09e999916 Use List<Gid> instead of List<Movie>
Signed-off-by: Petrus.Z <silencly07@gmail.com>
2021-11-17 22:18:59 +08:00
cvium
61b75c82ce Read past empty elements 2021-11-17 14:49:30 +01:00
rimasx
773a4ae1f3 Translated using Weblate (Estonian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/et/
2021-11-17 08:48:37 -05:00
WWWesten
38ac84ad71 Translated using Weblate (Esperanto)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/eo/
2021-11-17 08:48:37 -05:00
WWWesten
054ca6a8fb Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2021-11-17 08:48:37 -05:00
millallo
3d9f865247 Translated using Weblate (Italian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/it/
2021-11-17 08:48:37 -05:00
Csaba
5cd6fba11a Translated using Weblate (Hungarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hu/
2021-11-17 08:48:37 -05:00
blob03
f7b18d97a7 Translated using Weblate (French)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr/
2021-11-17 08:48:37 -05:00
Lukáš Kucharczyk
45e6e2adee Translated using Weblate (Czech)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cs/
2021-11-17 08:48:37 -05:00
blob03
704c1539a2 Translated using Weblate (English)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/en/
2021-11-17 08:48:37 -05:00
WWWesten
00b293d2e9 Added translation using Weblate (Mongolian) 2021-11-17 08:48:37 -05:00
Petrus.Z
52e9dc66f5 Remove extra blank line
Signed-off-by: Petrus.Z <silencly07@gmail.com>
2021-11-17 21:07:02 +08:00
Petrus.Z
3c8f7d380f Improve performance
Signed-off-by: Petrus.Z <silencly07@gmail.com>
2021-11-17 20:56:14 +08:00
Petrus.Z
0a0ddb0eaf Add AutoCollection option
it can determine whether auto create/add movies to collection

Signed-off-by: Petrus.Z <silencly07@gmail.com>
2021-11-17 14:02:07 +08:00
Cody Robibero
84b8c9c2bc Merge pull request #6857 from Bond-009/warn56 2021-11-16 12:25:54 -07:00
Bond_009
257e1be95f Fix some warnings 2021-11-16 16:31:57 +01:00
rimasx
6003289717 Translated using Weblate (Estonian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/et/
2021-11-16 09:50:35 -05:00
WWWesten
19d285149b Translated using Weblate (Macedonian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/mk/
2021-11-16 09:50:35 -05:00
blob03
33a2e1bd50 Translated using Weblate (French)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr/
2021-11-16 09:50:35 -05:00
emmanuel billeaud
b8507371d5 Translated using Weblate (French)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr/
2021-11-16 09:50:35 -05:00
Bond-009
bddded96ff Merge pull request #6856 from cvium/unused_deps 2021-11-16 15:42:32 +01:00
cvium
24024706bf Fix release build 2021-11-16 12:55:35 +01:00
cvium
93fd1c7075 Fix 2021-11-16 12:27:27 +01:00
cvium
5b1b2621ab Fix build 2021-11-16 12:25:46 +01:00
cvium
b50c3852ef Remove unused dependencies 2021-11-16 12:24:17 +01:00
Petrus.Z
1924d0740d Fix style and performance issues mentioned in review
Signed-off-by: Petrus.Z <silencly07@gmail.com>
2021-11-16 19:03:18 +08:00
Petrus.Z
74459ec403 Fix issues mentioned in review
Signed-off-by: Petrus.Z <silencly07@gmail.com>
2021-11-16 11:50:04 +08:00
Cody Robibero
c32a421ea7 Merge pull request #6851 from cvium/remove_references_to_ilibrarymanager 2021-11-15 15:45:49 -07:00
Cody Robibero
4cfe8fe588 Merge pull request #6831 from 1337joe/image-provider-cleanup 2021-11-15 15:45:33 -07:00
Cody Robibero
06c82973c6 Merge pull request #6854 from 1337joe/add-customprefs-set 2021-11-15 15:45:21 -07:00
Claus Vium
f638cd08ea Merge pull request #6852 from Bond-009/warn54
Fix some warnings
2021-11-15 23:35:53 +01:00
Claus Vium
31b87130a2 Merge pull request #6848 from marius-luca-87/dlna
Ensure the proper StartTimeTicks variable is forwarded to the AddDlnaHeaders function
2021-11-15 23:34:34 +01:00
Joe Rogers
ca99a27611 Add setter for CustomPrefs 2021-11-15 22:03:19 +01:00
Petrus.Z
5eb1fde88c Add Collection Validator, create collection based on nfo
Based on nfo's set element, automatically add movie to collection.

Signed-off-by: Petrus.Z <silencly07@gmail.com>
2021-11-16 00:17:14 +08:00
cvium
24679af2e8 Fix comment 2021-11-15 16:01:34 +01:00
Bond_009
474b035d99 Fix some warnings 2021-11-15 15:57:07 +01:00
cvium
4f45c52674 Remove ILibraryManager as a dependency in resolvers etc. 2021-11-15 15:56:02 +01:00
Joe Rogers
f059be8e4d Add logging and fast return 2021-11-15 15:30:43 +01:00
Cody Robibero
03435641c8 Merge pull request #6849 from 1337joe/server-disabled-metadata 2021-11-15 07:25:56 -07:00
Joe Rogers
58be1d7759 Actually check server disabled metadata providers 2021-11-15 14:47:06 +01:00
Marius Luca
4e0edaf544 - ensure the proper StartTimeTicks variable is forwarded to the AddDlnaHeaders function 2021-11-15 15:34:02 +02:00
rimasx
9c74103fbe Translated using Weblate (Estonian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/et/
2021-11-15 07:48:24 -05:00
WWWesten
551c6f02a2 Added translation using Weblate (Assamese) 2021-11-15 07:48:24 -05:00
Bond-009
358cf48506 Merge pull request #6847 from jellyfin/dependabot/nuget/Microsoft.SourceLink.GitHub-1.1.1 2021-11-15 13:31:56 +01:00
Bond-009
331d4ad849 Merge pull request #6846 from jellyfin/dependabot/nuget/Diacritics-3.3.10 2021-11-15 13:31:05 +01:00
dependabot[bot]
bd32cecf7a Bump Microsoft.SourceLink.GitHub from 1.1.0 to 1.1.1
Bumps [Microsoft.SourceLink.GitHub](https://github.com/dotnet/sourcelink) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/dotnet/sourcelink/releases)
- [Commits](https://github.com/dotnet/sourcelink/compare/1.1.0...1.1.1)

---
updated-dependencies:
- dependency-name: Microsoft.SourceLink.GitHub
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-15 12:01:08 +00:00
dependabot[bot]
c84f2e48b0 Bump Diacritics from 3.3.4 to 3.3.10
Bumps [Diacritics](https://github.com/thomasgalliker/Diacritics.NET) from 3.3.4 to 3.3.10.
- [Release notes](https://github.com/thomasgalliker/Diacritics.NET/releases)
- [Commits](https://github.com/thomasgalliker/Diacritics.NET/commits)

---
updated-dependencies:
- dependency-name: Diacritics
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-15 12:00:50 +00:00
Joe Rogers
370b7f8e12 Handle unexpected case more gracefully 2021-11-14 23:13:45 +01:00
Cody Robibero
4cb649853d Merge pull request #6845 from marius-luca-87/dlna
Flush the XmlWriter before calling the StringBuilder ToString() method
2021-11-14 13:02:46 -07:00
Marius Luca
a774d1fa10 - flush the XmlWriter before calling the StringBuilder ToString() method 2021-11-14 20:46:17 +02:00
Haadiy Rozzaq
5254e74719 Translated using Weblate (Indonesian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/id/
2021-11-14 01:36:37 -05:00
WWWesten
14b5e85461 Translated using Weblate (Belarusian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/be/
2021-11-14 01:36:37 -05:00
WWWesten
25f1cdbcb5 Translated using Weblate (Catalan)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ca/
2021-11-14 01:36:37 -05:00
Cody Robibero
34df1a030b Merge pull request #6818 from Bond-009/password 2021-11-13 16:56:25 -07:00
Joshua M. Boniface
761a4e8415 Merge pull request #6837 from crobibero/auth-exception 2021-11-13 15:31:14 -05:00
Joshua M. Boniface
f0028c728f Merge pull request #6841 from joshuaboniface/azure-pre 2021-11-13 15:28:10 -05:00
Joshua M. Boniface
fb0f3c3a76 Send SourceBranch to collect-server.azure.sh 2021-11-13 14:45:02 -05:00
Claus Vium
2f92ee374a Merge pull request #6838 from crobibero/openapi-nullable
Add nullable dictionary openapi mapping
2021-11-13 19:32:11 +01:00
Cody Robibero
bb377b1466 Add nullable dictionary openapi mapping 2021-11-13 07:29:58 -07:00
Cody Robibero
4a28f46cac Don't throw exception on unauthenticated requests 2021-11-13 07:27:28 -07:00
Cody Robibero
8868b34d78 Merge pull request #6822 from NickSica/master 2021-11-13 07:03:40 -07:00
Cody Robibero
01a1209f0e Merge pull request #6836 from cvium/apphost_light_cleanup 2021-11-13 07:02:39 -07:00
cvium
5a65bc1e69 Very light cleanup in applicationhost 2021-11-13 14:37:26 +01:00
Nicholas Sica
8ae5316198 Fix Ombi auth through Jellyfin 2021-11-12 16:23:58 -05:00
WWWesten
1fbe1266e2 Added translation using Weblate (Telugu) 2021-11-12 12:56:18 -05:00
WWWesten
412ae7f4d2 Added translation using Weblate (Zulu) 2021-11-12 12:55:27 -05:00
WWWesten
26001fca93 Added translation using Weblate (Belarusian) 2021-11-12 12:09:25 -05:00
Claus Vium
8579c8f9ce Merge pull request #6830 from crobibero/remote-image
Fix filtering images without dimensions
2021-11-12 16:32:53 +01:00
Joe Rogers
1d729b2b0f Use codec to determine image format 2021-11-12 16:30:30 +01:00
Joe Rogers
f73a7a6ed8 Use ImageFormat instead of string for extension 2021-11-12 16:22:11 +01:00
Claus Vium
fcfc774da1 Merge pull request #6829 from crobibero/obsolete-enum
Remove Obsolete attribute on enum
2021-11-12 15:46:17 +01:00
Cody Robibero
14c072dd32 Fix filtering images without dimensions 2021-11-12 07:21:46 -07:00
Cody Robibero
132440c683 Remove Obsolete attribute on enum 2021-11-12 06:58:18 -07:00
Joe Rogers
de9bf327c6 Merge similar tests with Theories 2021-11-12 13:44:48 +01:00
Claus Vium
7b1314aff5 Merge pull request #6823 from crobibero/displaypreferencesdto
Fix nullability on DisplayPreferencesDto
2021-11-11 19:29:49 +01:00
Nicholas Sica
c5e42ddcc6 Fix Ombi auth through Jellyfin
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-11-11 11:03:27 -05:00
Cody Robibero
3de86ffdb4 Fix nullability on DisplayPreferencesDto
Remove duplicate, fix namespace
2021-11-11 07:34:36 -07:00
NickSica
4b2c40f717 Fixes Ombi auth through Jellyfin 2021-11-11 00:43:43 -05:00
cvium
5d19c26d59 Simplify 2021-11-10 23:46:56 +01:00
cvium
0415d1ccef Reduce indentation 2021-11-10 23:29:41 +01:00
cvium
d10de5b7f9 Try to use Width and Height from ImageInfo to determine aspect ratio 2021-11-10 23:25:01 +01:00
Bond_009
5265b3eee7 Replace PBKDF2-SHA1 with PBKDF2-SHA512
This also migrates already created passwords on login

Source for the number of iterations:
https://cheatsheetseries.owasp.org/cheatsheets/Password_Storage_Cheat_Sheet.html#pbkdf2
2021-11-10 22:34:54 +01:00
Cody Robibero
4c88bf3fe3 Merge pull request #6808 from cvium/dlnope_never_again 2021-11-09 20:34:09 -07:00
Cody Robibero
57d5423d64 Merge pull request #6816 from Bond-009/warn55
Fix some warnings
2021-11-09 18:36:00 -07:00
cvium
efa76c0b63 Remove unused field 2021-11-09 23:17:27 +01:00
cvium
3f09fb8d70 length 2021-11-09 22:45:34 +01:00
Bond_009
1d19a5be61 Fix some warnings
down to 580
2021-11-09 22:29:33 +01:00
Cody Robibero
a7a6a22109 Merge pull request #6814 from thornbill/fix-issue-template 2021-11-09 13:21:39 -07:00
Bill Thornton
97508c6f42 Fix yaml format issue in issue template 2021-11-09 15:17:10 -05:00
Bond-009
296ba26b19 Merge pull request #6507 from Artiume/patch-6 2021-11-09 19:56:35 +01:00
Claus Vium
c3523e7cf7 Merge pull request #5905 from BaronGreenback/TVFix
Fix for Livetv and DLNA when bind interfaces specified.
2021-11-09 19:53:21 +01:00
Claus Vium
c50c9c3dbf Merge pull request #6794 from Bond-009/dead
Remove some dead code
2021-11-09 19:47:34 +01:00
cvium
a90735bc5a Last small fixes 2021-11-09 19:44:21 +01:00
cvium
37a04d5dbf Reduce indentation 2021-11-09 19:40:36 +01:00
cvium
e1f7f1405e Use GetOrderBy in GetChildrenSorted 2021-11-09 19:33:15 +01:00
cvium
6985a4f255 Fix SortCriteria and refactor SetSorting 2021-11-09 19:31:54 +01:00
cvium
53c16c2342 Build an array instead of using LINQ 2021-11-09 19:22:16 +01:00
cvium
c1c77c8762 comments 2021-11-09 19:19:48 +01:00
WWWesten
6bd108877e Translated using Weblate (Russian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ru/
2021-11-09 12:45:38 -05:00
Bond_009
994101fcf4 Remove some dead code 2021-11-09 16:28:39 +01:00
Bond-009
1cfd11b98c Merge pull request #6811 from jellyfin/dependabot/nuget/Mono.Nat-3.0.2 2021-11-09 16:24:13 +01:00
cvium
2b02b53fc0 Merge branch 'master' into dlnope_never_again 2021-11-09 16:00:14 +01:00
cvium
996500b2f8 review stuff 2021-11-09 15:57:39 +01:00
dependabot[bot]
ce1c36dbf2 Bump Mono.Nat from 3.0.1 to 3.0.2
Bumps [Mono.Nat](https://github.com/mono/Mono.Nat) from 3.0.1 to 3.0.2.
- [Release notes](https://github.com/mono/Mono.Nat/releases)
- [Commits](https://github.com/mono/Mono.Nat/compare/release-v3.0.1...release-v3.0.2)

---
updated-dependencies:
- dependency-name: Mono.Nat
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-09 14:26:19 +00:00
Claus Vium
04040b25e0 Merge pull request #6810 from jellyfin/dependabot/nuget/Microsoft.SourceLink.GitHub-1.1.0
Bump Microsoft.SourceLink.GitHub from 1.0.0 to 1.1.0
2021-11-09 15:25:30 +01:00
Claus Vium
66912deb84 Apply suggestions from code review 2021-11-09 14:47:42 +01:00
Claus Vium
ac06022e0f Update Emby.Dlna/ContentDirectory/ControlHandler.cs 2021-11-09 14:40:51 +01:00
dependabot[bot]
c2d99dc3f0 Bump Microsoft.SourceLink.GitHub from 1.0.0 to 1.1.0
Bumps [Microsoft.SourceLink.GitHub](https://github.com/dotnet/sourcelink) from 1.0.0 to 1.1.0.
- [Release notes](https://github.com/dotnet/sourcelink/releases)
- [Commits](https://github.com/dotnet/sourcelink/compare/1.0.0...1.1.0)

---
updated-dependencies:
- dependency-name: Microsoft.SourceLink.GitHub
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-09 13:11:42 +00:00
Claus Vium
ca6211ad61 Merge pull request #6813 from Bond-009/warn54
Fix some warnings
2021-11-09 14:02:38 +01:00
Bond_009
5726535a26 Fix some warnings
609 left
2021-11-09 13:14:31 +01:00
Claus Vium
6f85e30475 Merge pull request #6806 from crobibero/dotnet6
Update to full dotnet 6
2021-11-09 08:35:33 +01:00
cvium
a236f52c31 Simplify and reduce LOC in ControlHandler 2021-11-08 23:13:12 +01:00
Cody Robibero
64652b6392 Fix and disable new dotnet6 warnings 2021-11-08 12:40:52 -07:00
hoanghuy309
958a4f509c Translated using Weblate (Vietnamese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/vi/
2021-11-08 13:30:56 -05:00
Cody Robibero
40045d2147 Update to full dotnet 6 2021-11-08 09:40:12 -07:00
Cody Robibero
65971eb27e Merge pull request #6795 from LinFor/pr-dlna
Fix DLNA on older Samsung TVs
2021-11-08 05:38:22 -07:00
rimasx
15dd23e4da Translated using Weblate (Estonian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/et/
2021-11-08 04:58:49 -05:00
cvium
1c47211a9e Merge remote-tracking branch 'BaronGreenback/TVFix' into TVFix 2021-11-08 10:58:28 +01:00
cvium
82e6a21f3b Use the new method in DLNA 2021-11-08 10:58:04 +01:00
cvium
f03e77a4d5 Merge branch 'master' into TVFix 2021-11-08 10:38:08 +01:00
LinFor
5c69d110cc Samsung DLNA fixes 2021-11-08 11:24:33 +03:00
Claus Vium
3906343c91 Merge pull request #6793 from Bond-009/rootedpath
Add some docs and tests
2021-11-08 07:49:36 +01:00
Claus Vium
0ee43f897b Merge pull request #5918 from crobibero/client-logger
Add endpoint to log client events
2021-11-08 07:46:51 +01:00
Bond_009
4dfb7b18ae Add some docs and tests 2021-11-07 22:32:08 +01:00
Cody Robibero
666e95e27f Add randomization to generated filename 2021-11-07 11:41:56 -07:00
Claus Vium
195831ad4a Merge pull request #6792 from Bond-009/authex
Fix UnauthorizedAccessException in GetDrives
2021-11-07 19:36:09 +01:00
Cody Robibero
892b05c5e6 Clean up redundant code 2021-11-07 08:20:11 -07:00
Bond_009
0f52896691 Fix UnauthorizedAccessException in GetDrives
```
[15:01:24] [ERR] [55] Jellyfin.Server.Middleware.ExceptionMiddleware: Error processing request. URL GET /Environment/Drives.
System.UnauthorizedAccessException: Access to the path is denied.
 ---> System.IO.IOException: Operation not permitted
   --- End of inner exception stack trace ---
   at System.IO.DriveInfo.CheckStatfsResultAndThrowIfNecessary(Int32 result)
   at System.IO.DriveInfo.get_TotalSize()
   at Emby.Server.Implementations.IO.ManagedFileSystem.<>c.<GetDrives>b__32_0(DriveInfo d) in /home/bond/dev/jellyfin/Emby.Server.Implementations/IO/ManagedFileSystem.cs:line 583
   at System.Linq.Enumerable.WhereSelectArrayIterator`2.ToList()
   at Emby.Server.Implementations.IO.ManagedFileSystem.GetDrives() in /home/bond/dev/jellyfin/Emby.Server.Implementations/IO/ManagedFileSystem.cs:line 583
   at Jellyfin.Api.Controllers.EnvironmentController.GetDrives() in /home/bond/dev/jellyfin/Jellyfin.Api/Controllers/EnvironmentController.cs:line 153
   at lambda_method559(Closure , Object , Object[] )
   at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.SyncObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeActionMethodAsync()
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync()
```
2021-11-07 15:33:39 +01:00
Bond-009
83859a1e6d Merge pull request #6783 from 1337joe/purge-screenshot 2021-11-06 23:07:11 +01:00
Bond-009
8d8e113771 Merge pull request #6791 from cvium/fix_plugin_loading 2021-11-06 23:06:08 +01:00
cvium
d95c281142 Load all types when checking plugin DLLs 2021-11-06 22:44:05 +01:00
Cody Robibero
b217f84d50 Merge pull request #6778 from jvoisin/patch-1
Add a bit of hardening to the systemd service
2021-11-06 15:21:52 -06:00
Joe Rogers
b4bf5af7c8 Remove ImageType.Screenshot and ItemFields.Screenshot 2021-11-06 20:43:20 +01:00
Cody Robibero
c8bd676b14 Merge remote-tracking branch 'upstream/master' into client-logger 2021-11-05 22:25:48 -06:00
Cody Robibero
3c69283e2c Merge pull request #6784 from nielsvanvelzen/openapi-head-checkout
Fix OpenAPI workflow fork cloning
2021-11-05 17:50:58 -06:00
Niels van Velzen
07b9ba2bb4 Set GITHUB_TOKEN permissions to read only in OpenAPI workflow 2021-11-05 22:43:09 +01:00
Niels van Velzen
2491dd513c Specify repository info in openapi head checkout 2021-11-05 22:12:43 +01:00
Cody Robibero
d3d9311f48 Merge remote-tracking branch 'upstream/master' into client-logger 2021-11-05 13:12:37 -06:00
Cody Robibero
17264a6020 Use client info from claims 2021-11-05 12:57:24 -06:00
Claus Vium
b64d9bcd40 Merge pull request #6782 from nielsvanvelzen/openapi-pr-target 2021-11-05 19:37:30 +01:00
Niels van Velzen
44dc647adb Fix OpenAPI workflow not working with pull requests from forks 2021-11-05 19:10:40 +01:00
Cody Robibero
0cd817bba3 Merge pull request #6781 from 1337joe/tmdb-settings
Add MaxCastMembers to TMDb Plugin Settings
2021-11-05 05:56:51 -06:00
WWWesten
1e93c6ae30 Translated using Weblate (Esperanto)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/eo/
2021-11-05 07:05:36 -04:00
WWWesten
13668a6ecb Translated using Weblate (Russian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ru/
2021-11-05 07:05:36 -04:00
Joe Rogers
c8eba90c17 Add cast limit to tmdb plugin settings 2021-11-05 00:38:50 +01:00
Joe Rogers
6c76d30538 Add missing checkboxes 2021-11-04 23:58:32 +01:00
Claus Vium
a870f4ce70 Merge pull request #6777 from ThibaultNocchi/fix/webvtt_region 2021-11-04 23:37:36 +01:00
Bond-009
e3e6953c6d Merge pull request #6774 from cvium/fix_no_thumb_in_fanart 2021-11-04 17:50:33 +01:00
Julien Voisin
564990964d Add a bit of hardening to the systemd service
Tested in an unprivileged lxc container, so it shouldn't™ break anything.
2021-11-04 16:15:42 +01:00
Thibault Nocchi
f91839dd8c Fix WebVTT region to spec 2021-11-04 15:44:15 +01:00
cvium
c0bab5c173 Make sure ReadToDescendant was successful, #6773 2021-11-04 11:50:46 +01:00
WWWesten
5aadf8c291 Translated using Weblate (Esperanto)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/eo/
2021-11-04 04:56:26 -04:00
WWWesten
654bd6fff1 Translated using Weblate (Turkish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/tr/
2021-11-04 04:56:26 -04:00
nextlooper42
70b9f9bf56 Translated using Weblate (Slovak)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sk/
2021-11-04 04:56:26 -04:00
Claus Vium
ad7ed95b98 Merge pull request #6769 from Bond-009/hasscreenshots 2021-11-04 09:21:36 +01:00
Bond_009
924c6682b9 Remove unused IHasScreenshots interface 2021-11-04 01:06:21 +01:00
Claus Vium
5c5d49ee60 Merge pull request #6763 from 1337joe/tmdb-image-provider-dedup 2021-11-04 00:22:08 +01:00
Claus Vium
4279f13c67 Merge pull request #6766 from Bond-009/minor12 2021-11-04 00:18:34 +01:00
Joe Rogers
4fc0521d69 Move ConvertToRemoteImage to TmdbClientManager 2021-11-03 17:16:40 +01:00
Cody Robibero
3398f7f953 Merge branch 'master' into client-logger 2021-11-03 07:52:06 -06:00
Bond_009
416894008e Minor improvements
* Removed some allocations
* Removed some useless abstractions
2021-11-03 14:02:57 +01:00
Claus Vium
45ceba7ad1 Merge pull request #6764 from zehnerGIT/logspam 2021-11-03 13:02:15 +01:00
Claus Vium
6822693bd6 Merge pull request #6748 from ptalmeida/master 2021-11-03 13:01:53 +01:00
Claus Vium
0187500373 Merge pull request #6761 from Bond-009/startup2 2021-11-03 13:01:37 +01:00
Claus Vium
869d537aaa Merge pull request #6752 from 1337joe/fix-metadata-refresh-deletes-backgrounds 2021-11-03 13:01:23 +01:00
Cody Robibero
f444e93a56 Merge remote-tracking branch 'upstream/master' into client-logger 2021-11-02 17:56:12 -06:00
Joe Rogers
149c77d9b1 Remove commented theory data, merge tests 2021-11-02 22:46:53 +01:00
Joe Rogers
2b283d249f Switch to method per image conversion 2021-11-02 21:12:13 +01:00
Claus Vium
2c42d75288 Merge pull request #6027 from fredriklindberg/improve-series-matching 2021-11-02 20:17:49 +01:00
Claus Vium
a9c38870f9 Merge pull request #6379 from dearjoey/master 2021-11-02 20:12:42 +01:00
Claus Vium
77634d3b52 Merge pull request #6765 from zehnerGIT/tmdbtags 2021-11-02 20:04:58 +01:00
Claus Vium
eec4293e6f Merge pull request #6308 from nielsvanvelzen/openapi 2021-11-02 19:43:57 +01:00
Niels van Velzen
63eeb73608 Update openapi workflow to use .NET 6 2021-11-02 18:58:31 +01:00
Joe Rogers
7fcf01235c Change RemoveImages to array, improve download test 2021-11-02 16:16:06 +01:00
Bond_009
104e36f2f9 Streamline startup code 2021-11-02 16:02:52 +01:00
zehner
3d858955b6 Make tags import from TMDB configurable
new settings added
2021-11-02 15:11:01 +01:00
zehner
bbf40d6be2 Update StreamBuilder.cs
LogLevel INFO => DEBUG
2021-11-02 09:35:09 +01:00
Joe Rogers
7da6bd905a Fix edge case in multi-image replacing 2021-11-02 00:31:59 +01:00
Claus Vium
838225e962 Merge pull request #6762 from WWWesten/master
Add missing localization options
2021-11-02 00:06:27 +01:00
Joe Rogers
4a5e8b99a0 Extract duplicate code, add test 2021-11-01 23:17:00 +01:00
Pedro Almeida
5529625025 Translated using Weblate (Portuguese (Portugal))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pt_PT/
2021-11-01 17:05:34 -04:00
WWWesten
967fd66ca9 Update LocalizationManager.cs 2021-11-02 00:22:16 +05:00
WWWesten
a229526454 Update LocalizationManager.cs 2021-11-01 23:47:31 +05:00
WWWesten
0a14279e2a Merge branch 'jellyfin:master' into master 2021-11-01 23:43:29 +05:00
Claus Vium
76eeb8f655 Merge pull request #6745 from crobibero/dlna-profile-save
Use correct id when finding existing dlna profile
2021-11-01 17:19:43 +01:00
Joe Rogers
6881cf6874 Merge remote-tracking branch 'origin/master' into fix-metadata-refresh-deletes-backgrounds 2021-11-01 16:41:05 +01:00
Bond-009
e8efc433fa Merge pull request #6757 from jellyfin/dependabot/nuget/Microsoft.NET.Test.Sdk-17.0.0 2021-11-01 16:19:36 +01:00
Bond-009
98587da53d Merge pull request #6759 from jellyfin/dependabot/nuget/UTF.Unknown-2.5.0 2021-11-01 16:19:01 +01:00
Bond-009
09909d4df2 Merge pull request #6758 from jellyfin/dependabot/nuget/SQLitePCLRaw.bundle_e_sqlite3-2.0.7 2021-11-01 16:17:54 +01:00
dependabot[bot]
2372931b13 Bump UTF.Unknown from 2.4.0 to 2.5.0
Bumps [UTF.Unknown](https://github.com/CharsetDetector/UTF-unknown) from 2.4.0 to 2.5.0.
- [Release notes](https://github.com/CharsetDetector/UTF-unknown/releases)
- [Commits](https://github.com/CharsetDetector/UTF-unknown/compare/v2.4...v2.5)

---
updated-dependencies:
- dependency-name: UTF.Unknown
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-01 12:01:04 +00:00
dependabot[bot]
8e046ce22b Bump SQLitePCLRaw.bundle_e_sqlite3 from 2.0.6 to 2.0.7
Bumps [SQLitePCLRaw.bundle_e_sqlite3](https://github.com/ericsink/SQLitePCL.raw) from 2.0.6 to 2.0.7.
- [Release notes](https://github.com/ericsink/SQLitePCL.raw/releases)
- [Commits](https://github.com/ericsink/SQLitePCL.raw/compare/v2.0.6...v2.0.7)

---
updated-dependencies:
- dependency-name: SQLitePCLRaw.bundle_e_sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-01 12:00:57 +00:00
dependabot[bot]
baafa10e87 Bump Microsoft.NET.Test.Sdk from 16.11.0 to 17.0.0
Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 16.11.0 to 17.0.0.
- [Release notes](https://github.com/microsoft/vstest/releases)
- [Commits](https://github.com/microsoft/vstest/compare/v16.11.0...v17.0.0)

---
updated-dependencies:
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-01 12:00:53 +00:00
Joe Rogers
b478b115e3 Refactor to validate all images up front 2021-11-01 11:53:31 +01:00
Anthony Lavado
022e2d9f97 Merge pull request #6740 from zirdum/master 2021-10-31 21:36:07 -04:00
Joe Rogers
0fbd8d85c8 Validate multi-images, lazy-delete bg on refresh
Fix failing test: Invalid background images not purged by validate
Fixes #6310: Background images only delete when using "Replace existing images" when new image(s) is found to replace them
2021-11-01 00:16:11 +01:00
Joe Rogers
080b02cc4c Add comments, minor cleanup, add tests 2021-10-31 23:56:50 +01:00
Cody Robibero
7b89e0e3a5 Fix tests 2021-10-31 11:06:47 -06:00
Orry Verducci
9abe9e7e54 Add rounding to the time base check 2021-10-31 17:04:04 +00:00
Pedro Almeida
10a173c011 Add pt-pt as culture
Makes pt-pt selectable as metadata language
2021-10-31 15:28:51 +00:00
Pedro Almeida
a22c57ff33 Fix localization typo with Réunion 2021-10-31 15:13:23 +00:00
Cody Robibero
2f6437a987 Use correct id when finding existing dlna profile 2021-10-31 08:49:24 -06:00
Orry Verducci
3a89e88033 Merge remote-tracking branch 'upstream/master' into mbaff-interlace-detection 2021-10-31 10:04:14 +00:00
Cody Robibero
f4844c08a5 Update Jellyfin.Api/Models/ClientLogDtos/ClientLogDocumentResponseDto.cs
Co-authored-by: Niels van Velzen <nielsvanvelzen@users.noreply.github.com>
2021-10-30 11:29:22 -06:00
Alan Azar
5a7433472e Translated using Weblate (Arabic)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ar/
2021-10-30 01:05:32 -04:00
Cody Robibero
73201ed498 Default log upload to enabled 2021-10-29 06:33:46 -06:00
Cody Robibero
bcb1c9b652 Use response dto 2021-10-29 06:33:34 -06:00
Cody Robibero
0e584f6840 Update documentation; use information from authorization; return generated filename 2021-10-28 16:13:37 -06:00
Kenneth SB
17973964fa Translated using Weblate (Danish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/da/
2021-10-28 13:05:32 -04:00
Alan Azar
fc2e826b4d Translated using Weblate (Arabic)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ar/
2021-10-28 13:05:32 -04:00
Cody Robibero
91204fc9f0 Fix logfile name if api key is used 2021-10-27 19:40:35 -06:00
Cody Robibero
c534c45033 Suggestions from review 2021-10-27 19:20:14 -06:00
zirdum
71ed47a5d3 Update README.md
The link with 'blob' specified in the URL doesn't work for the current version of unRaid. Switching it to 'tree' (which is where the 'blob' link resolves to) works fine.

Changes
Changed link referenced: https://github.com/jellyfin/jellyfin/blob/master/deployment/unraid/docker-templates

To this link: https://github.com/jellyfin/jellyfin/tree/master/deployment/unraid/docker-templates

Issues
Fixes template showing up in unRaid with the changes applied.
2021-10-27 10:54:54 -07:00
zirdum
4885f5e6c9 Update README.md
The link with 'blob' specified in the URL doesn't work for the current version of unRaid. Switching it to 'tree' (which is where the 'blob' link resolves to) works fine.

Changes
Changed link referenced: https://github.com/jellyfin/jellyfin/blob/master/deployment/unraid/docker-templates

To this link: https://github.com/jellyfin/jellyfin/tree/master/deployment/unraid/docker-templates

Issues
Fixes template showing up in unRaid with the changes applied.
2021-10-27 10:54:18 -07:00
De sousa John
4599ce659c Translated using Weblate (French)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr/
2021-10-27 08:05:33 -04:00
WWWesten
91655bb5fe Translated using Weblate (Esperanto)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/eo/
2021-10-27 08:05:33 -04:00
Alan Azar
a1b63aaa08 Translated using Weblate (Arabic)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ar/
2021-10-27 08:05:33 -04:00
Claus Vium
b0e0eba667 Merge pull request #6737 from Bond-009/nullable9
Enable nullable for MediaBrowser.Providers
2021-10-27 09:04:18 +02:00
Bond-009
2d4066748d Merge pull request #6446 from Deathspike/master 2021-10-27 09:01:00 +02:00
Cody Robibero
a6357f89ab Add ability to upload entire file 2021-10-26 18:42:17 -06:00
Cody Robibero
f78f1e834c Merge remote-tracking branch 'upstream/master' into client-logger 2021-10-26 17:43:36 -06:00
Deathspike
2410b3a3cf Resolve subtitle selection feedback (#6446) 2021-10-26 20:51:35 +02:00
Bond_009
f5ca9cbc3b Enable nullable for MediaBrowser.Providers 2021-10-26 15:49:01 +02:00
Claus Vium
39d5bdac96 Change ReadOnlySpan to string following PR 6383 (#6734) 2021-10-26 14:47:34 +02:00
Claus Vium
1b478cfdec Merge pull request #6735 from Bond-009/nullable8
Enable nullable for more files
2021-10-26 14:35:32 +02:00
Bond_009
1b6eb2ff2d Enable nullable for more files 2021-10-26 13:56:30 +02:00
Roel van Uden
b830d38a34 Rework subtitle selection to reduce code clutter 2021-10-26 12:59:11 +02:00
Claus Vium
dc72d90703 Merge pull request #6383 from sushilicious/master
Made default parser a tiny bit mroe robust
2021-10-26 12:10:57 +02:00
Claus Vium
deb349f4c5 Merge pull request #5755 from BaronGreenback/NetworkAccessPolicy 2021-10-26 00:06:31 +02:00
Claus Vium
26cfde8765 Merge pull request #6551 from MrChip53/xmltv-improve 2021-10-26 00:03:37 +02:00
Claus Vium
8b2309df82 Merge pull request #6535 from Bond-009/dlnacontrollertests 2021-10-25 23:47:37 +02:00
Claus Vium
5eda5eb636 Merge pull request #6486 from fredriklindberg/support-forwarded-headers-for-api-url 2021-10-25 22:41:32 +02:00
Joshua M. Boniface
da6225fb73 Merge pull request #6680 from MarcelCoding/master
Add Docker Healthcheck
2021-10-24 12:03:53 -04:00
Bond-009
ca217270b7 Merge pull request #6544 from cvium/fix_ffmpeg_path_updating 2021-10-24 01:09:44 +02:00
ButterflyOfFire
f2656b7ee2 Translated using Weblate (Arabic)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ar/
2021-10-23 10:36:41 -04:00
WWWesten
d4c1912e64 Translated using Weblate (Esperanto)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/eo/
2021-10-23 06:39:31 -04:00
rimasx
1e69530752 Translated using Weblate (Estonian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/et/
2021-10-22 08:05:31 -04:00
WWWesten
b53dea7113 Translated using Weblate (Esperanto)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/eo/
2021-10-22 08:05:31 -04:00
Claus Vium
768ec60e11 Merge pull request #6689 from 1337joe/expand-image-extraction 2021-10-21 23:05:32 +02:00
Bond-009
197325020e Merge pull request #6716 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore.ReDoc-6.2.3 2021-10-20 14:43:15 +02:00
dependabot[bot]
1cf2ec26a3 Bump Swashbuckle.AspNetCore.ReDoc from 6.2.2 to 6.2.3
Bumps [Swashbuckle.AspNetCore.ReDoc](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.2.2 to 6.2.3.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.2.2...v6.2.3)

---
updated-dependencies:
- dependency-name: Swashbuckle.AspNetCore.ReDoc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-20 12:24:31 +00:00
Bond-009
4979a9597a Merge pull request #6714 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore-6.2.3 2021-10-20 14:23:54 +02:00
Bond-009
4cb0f6facf Merge pull request #6715 from jellyfin/dependabot/nuget/prometheus-net.DotNetRuntime-4.2.2 2021-10-20 14:23:35 +02:00
Bond-009
39bd559001 Merge pull request #6718 from MBR-0001/master 2021-10-20 14:22:59 +02:00
Joe Rogers
31baea072a Address review comments
Clean up style
Fix references in class summaries
Combine Where+FirstOrDefault queries
Break up large method, long lines
Add validation on file extension
Apply test naming conventions
Extract mock of Movie class, comment on why not mocking interface

Co-authored-by: Cody Robibero <cody@robibe.ro>
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-10-20 14:10:16 +02:00
Sindre S. Kjær
7d8fb947b6 Translated using Weblate (Norwegian Bokmål)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nb_NO/
2021-10-19 15:25:05 -04:00
MBR-0001
ade3afad41 Add IsAutomated to SubtitleSearchRequest 2021-10-19 21:06:05 +02:00
Jessica
8388f7c462 Translated using Weblate (Welsh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cy/
2021-10-19 00:18:49 -04:00
WWWesten
4d32470715 Translated using Weblate (Esperanto)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/eo/
2021-10-18 14:01:35 -04:00
Jessica
dd0c1d3d27 Added translation using Weblate (Welsh) 2021-10-18 14:01:35 -04:00
dependabot[bot]
b084afa1a0 Bump prometheus-net.DotNetRuntime from 4.2.1 to 4.2.2
Bumps [prometheus-net.DotNetRuntime](https://github.com/djluck/prometheus-net.DotNetRuntime) from 4.2.1 to 4.2.2.
- [Release notes](https://github.com/djluck/prometheus-net.DotNetRuntime/releases)
- [Commits](https://github.com/djluck/prometheus-net.DotNetRuntime/compare/4.2.1...4.2.2)

---
updated-dependencies:
- dependency-name: prometheus-net.DotNetRuntime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-18 12:01:09 +00:00
dependabot[bot]
0b937c32d5 Bump Swashbuckle.AspNetCore from 6.2.2 to 6.2.3
Bumps [Swashbuckle.AspNetCore](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.2.2 to 6.2.3.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.2.2...v6.2.3)

---
updated-dependencies:
- dependency-name: Swashbuckle.AspNetCore
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-18 12:00:59 +00:00
Joshua M. Boniface
5395892f66 Merge pull request #6695 from crobibero/dotnet6-rc2 2021-10-16 00:34:35 -04:00
rimasx
6cc4be85fc Translated using Weblate (Estonian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/et/
2021-10-14 16:05:30 -04:00
lyaschuchenko
a720b12ec3 Translated using Weblate (Ukrainian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/uk/
2021-10-14 16:05:30 -04:00
JULIAN AUGUSTO RUIZ MARTINEZ
e88e1fa8e9 Translated using Weblate (Pirate)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pr/
2021-10-14 16:05:30 -04:00
Cody Robibero
2b10251b32 Update to dotnet6.rc2 2021-10-12 18:31:58 -06:00
Claus Vium
09f33d3b87 Merge pull request #6558 from dmitrylyzo/ffmpeg-exitcode 2021-10-13 00:04:09 +02:00
Claus Vium
6ab412ed00 Merge pull request #6681 from dmitrylyzo/fix-latest-sort-order 2021-10-13 00:02:03 +02:00
rimasx
e3edd7ae2c Added translation using Weblate (Estonian) 2021-10-11 15:39:58 -04:00
Bond-009
646733d298 Merge pull request #6687 from jellyfin/dependabot/nuget/Diacritics-3.3.4 2021-10-11 14:56:50 +02:00
Bond-009
12d9859113 Merge pull request #6688 from jellyfin/dependabot/nuget/Serilog.Settings.Configuration-3.3.0 2021-10-11 14:56:10 +02:00
Joe Rogers
e3eee10d05 Add image provider tests and clean up 2021-10-11 14:09:02 +02:00
Joe Rogers
8d70cc2dde Add support for non-jpg image extractions 2021-10-11 14:09:02 +02:00
Joe Rogers
6ce8cce12c Add handling for embedded background and logo 2021-10-11 14:09:01 +02:00
Joe Rogers
be9ed29f63 Split EmbeddedImage extracting to new provider 2021-10-11 14:09:01 +02:00
dependabot[bot]
37a87a41ba Bump Serilog.Settings.Configuration from 3.2.0 to 3.3.0
Bumps [Serilog.Settings.Configuration](https://github.com/serilog/serilog-settings-configuration) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/serilog/serilog-settings-configuration/releases)
- [Changelog](https://github.com/serilog/serilog-settings-configuration/blob/dev/CHANGES.md)
- [Commits](https://github.com/serilog/serilog-settings-configuration/commits)

---
updated-dependencies:
- dependency-name: Serilog.Settings.Configuration
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-11 12:00:53 +00:00
dependabot[bot]
59e3beb5fe Bump Diacritics from 2.1.20036.1 to 3.3.4
Bumps [Diacritics](https://github.com/thomasgalliker/Diacritics.NET) from 2.1.20036.1 to 3.3.4.
- [Release notes](https://github.com/thomasgalliker/Diacritics.NET/releases)
- [Commits](https://github.com/thomasgalliker/Diacritics.NET/commits)

---
updated-dependencies:
- dependency-name: Diacritics
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-11 12:00:48 +00:00
Dmitry Lyzo
32f3d60a84 Throw on FFmpeg non-zero exit code 2021-10-10 19:53:32 +03:00
Dmitry Lyzo
c26e6d89b4 Move FfmpegException to MediaBrowser.Common 2021-10-10 19:48:11 +03:00
Marcel
b225c3fd3c Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-10-10 17:26:06 +02:00
Marcel
f750235933 Added healthcheck url environemnt variable 2021-10-10 15:15:43 +00:00
TheGoose
aa93774b29 Translated using Weblate (English (United Kingdom))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/en_GB/
2021-10-10 07:05:27 -04:00
Claus Vium
8fc4a48070 Merge pull request #6501 from crobibero/schedules-direct 2021-10-09 23:21:09 +02:00
Marcel
5d11fd68c6 Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-10-09 21:41:46 +02:00
Dmitry Lyzo
2b004e1f76 Add more sorting to Latest 2021-10-09 21:36:39 +03:00
Marcel
32d6e7db7c Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-10-09 17:00:20 +02:00
Cody Robibero
a81dfabdb6 Fix indentation and build errors 2021-10-09 07:16:50 -06:00
Claus Vium
e775286de5 Merge pull request #6646 from 1337joe/test-mp4-metadata 2021-10-09 12:48:30 +02:00
Claus Vium
1156699481 Merge pull request #6657 from Bond-009/dotnetbug 2021-10-09 12:19:44 +02:00
Marcel
fe461ff66b Added Docker Healthcheck 2021-10-09 08:25:22 +00:00
Claus Vium
1bfe6342df Merge pull request #6676 from Bond-009/rng
Use static crypto rng
2021-10-09 08:11:22 +02:00
Claus Vium
b16e6621b3 Merge pull request #6663 from crobibero/dotnet-6-rc1
Reference dotnet6-rc1 packages
2021-10-08 16:06:15 +02:00
Claus Vium
eea2ba9b68 Merge pull request #6678 from Bond-009/random
Use new Random.Shared instead of creating new instances
2021-10-08 16:04:23 +02:00
Claus Vium
851a5f3b55 Merge pull request #6665 from Bond-009/tests6
Improve test coverage for QuickConnectManager
2021-10-08 15:53:13 +02:00
Claus Vium
098b598293 Merge pull request #6677 from Bond-009/shuffle2
Remove duplicate Fisher–Yates shuffle impl
2021-10-08 15:51:51 +02:00
Cody Robibero
3bbd98cc3f Merge remote-tracking branch 'upstream/master' into schedules-direct 2021-10-08 07:49:40 -06:00
Bond-009
a01f9775ff Merge pull request #6667 from Bond-009/warn53 2021-10-08 15:43:38 +02:00
Bond_009
d05062fec0 Use new Random.Shared instead of creating new instances 2021-10-08 15:40:13 +02:00
Bond_009
dc8feca6bb Remove duplicate Fisher–Yates shuffle impl 2021-10-08 15:20:11 +02:00
Bond_009
3b492d4af8 Use static crypto rng 2021-10-08 15:02:58 +02:00
Bond-009
556ef5f157 Merge pull request #6673 from cvium/pinfile 2021-10-08 11:51:04 +02:00
cvium
3add805cbf Return the path to the pinfile in forgot password 2021-10-07 23:20:54 +02:00
Claus Vium
93198787d1 Merge pull request #6666 from Bond-009/issue6123 2021-10-07 21:56:37 +02:00
Bond-009
68aa5db2b5 Merge pull request #6670 from lyarenei/update-split-whitelist
Update artist split whitelist
2021-10-07 14:47:26 +02:00
Systerm
6297fa5bf7 Translated using Weblate (Portuguese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pt/
2021-10-06 17:39:23 -04:00
Bond_009
f7ae3c6a85 Set AnalysisMode to AllEnabledByDefault 2021-10-06 11:39:54 +02:00
Bond_009
03f933aaa0 Fix the last few warnings
Enables TreatWarningsAsErrors for all projects
2021-10-06 11:30:45 +02:00
Bond-009
c5285cee1c Merge pull request #6664 from cvium/subtitle_refresh 2021-10-06 10:48:32 +02:00
Bond-009
a1246ba3a0 Merge pull request #6649 from barronpm/implementations-warn2 2021-10-06 10:47:40 +02:00
Dominik Krivohlavek
ef99225c40 Add 22/7 to split whitelist 2021-10-06 10:32:28 +02:00
Patrick Barron
e0db541381 Update indentation 2021-10-05 22:07:16 -04:00
Bond_009
67147400bf Fix issue #6123 2021-10-05 21:47:59 +02:00
cvium
7abdf71c49 Revert to old line 2021-10-05 19:49:43 +02:00
Bond_009
74d75fad46 Improve test coverage for QuickConnectManager 2021-10-05 16:59:11 +02:00
cvium
229917a2f8 Queue refresh after subtitle upload + minor fixes 2021-10-04 21:12:09 +02:00
joanMelchor
d245e45254 Translated using Weblate (Catalan)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ca/
2021-10-04 14:05:26 -04:00
Cody Robibero
017380f1dd Reference dotnet6-rc1 packages 2021-10-04 07:43:40 -06:00
Bond-009
647c080ef7 Merge pull request #6662 from jellyfin/dependabot/nuget/DotNet.Glob-3.1.3 2021-10-04 15:07:37 +02:00
Bond-009
62d5315b0b Merge pull request #6661 from jellyfin/dependabot/nuget/sharpcompress-0.30.0 2021-10-04 15:07:11 +02:00
dependabot[bot]
fc96305e78 Bump DotNet.Glob from 3.1.2 to 3.1.3
Bumps [DotNet.Glob](https://github.com/dazinator/DotNet.Glob) from 3.1.2 to 3.1.3.
- [Release notes](https://github.com/dazinator/DotNet.Glob/releases)
- [Changelog](https://github.com/dazinator/DotNet.Glob/blob/develop/ReleaseNotes.md)
- [Commits](https://github.com/dazinator/DotNet.Glob/compare/3.1.2...3.1.3)

---
updated-dependencies:
- dependency-name: DotNet.Glob
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-04 12:01:09 +00:00
dependabot[bot]
2b61fad3a0 Bump sharpcompress from 0.29.0 to 0.30.0
Bumps [sharpcompress](https://github.com/adamhathcock/sharpcompress) from 0.29.0 to 0.30.0.
- [Release notes](https://github.com/adamhathcock/sharpcompress/releases)
- [Commits](https://github.com/adamhathcock/sharpcompress/compare/0.29...0.30)

---
updated-dependencies:
- dependency-name: sharpcompress
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-04 12:00:56 +00:00
Patrick Barron
232e48f5e8 Fix warnings in EmbyTV 2021-10-03 21:41:22 -04:00
Patrick Barron
25b68bc3b2 Fix warnings in ChannelManager 2021-10-03 21:41:22 -04:00
Patrick Barron
b7e405889d Fix warnings in LibraryChangedNotifier 2021-10-03 21:41:22 -04:00
Patrick Barron
6cc69b80b6 Fix warnings in DeviceId 2021-10-03 21:41:22 -04:00
Patrick Barron
80223c548c Fix warnings in WebSocketConnection 2021-10-03 21:41:22 -04:00
Patrick Barron
7180983654 Fix warnings in SessionManager 2021-10-03 21:41:22 -04:00
Patrick Barron
876a902356 Fix warnings in Library 2021-10-03 21:41:22 -04:00
Patrick Barron
aa3c33060d Fix warnings in Playlists 2021-10-03 21:41:22 -04:00
Patrick Barron
7ea4c844c8 Fix warnings in InstallationManager 2021-10-03 21:41:22 -04:00
Patrick Barron
b17a452d16 Fix warnings in ServerApplicationPaths 2021-10-03 21:41:22 -04:00
Patrick Barron
7ae055f740 Fix warnings in UdpServer 2021-10-03 21:41:22 -04:00
Patrick Barron
8c8ca9aded Fix warnings in UdpSocket 2021-10-03 21:41:22 -04:00
Patrick Barron
c09ef74b51 Fix warnings in IO 2021-10-03 21:41:22 -04:00
Patrick Barron
078200d8d4 Fix warnings in Sorting 2021-10-03 21:41:22 -04:00
Bond-009
1888e7ac21 Merge pull request #6656 from daullmer/vsc-net6 2021-10-03 20:28:10 +02:00
Bond_009
9af16fcb6c Remove workaround for dotnet/runtime#42790 2021-10-03 19:52:38 +02:00
David Ullmer
d284e09a8a Change .vscode/launch.json to use .NET 6 2021-10-03 18:38:21 +02:00
Bond-009
9718c0b2ee Merge pull request #6651 from KonH/fix_common_warnings 2021-10-03 17:17:56 +02:00
Bond-009
6a575b3f77 Merge pull request #6648 from barronpm/implementations-warn1 2021-10-03 17:13:39 +02:00
Claus Vium
c60428f869 Merge pull request #6580 from Artiume/patch-1 2021-10-03 14:04:45 +02:00
Claus Vium
4fb4ceab04 Merge pull request #6644 from Bond-009/nullable7 2021-10-03 14:03:56 +02:00
Claus Vium
1f779ce7cd Merge pull request #6641 from Bond-009/convertfrom 2021-10-03 14:03:46 +02:00
KonH
6cbfdea4c0 Fix warning: Type cast is redundant (#2149) 2021-10-03 11:05:18 +07:00
KonH
d45fcdd5af Fix warning: Redundant control flow jump statement (#2149) 2021-10-03 11:02:53 +07:00
KonH
e3fccd5ae6 Fix warning: Qualifier is redundant (#2149) 2021-10-03 11:01:40 +07:00
KonH
b6bf43af45 Fix warning: Using directive is not required by the code and can be safely removed (#2149) 2021-10-03 10:49:41 +07:00
KonH
7c282ec369 Fix warning: The nullable warning suppression expression is redundant (#2149) 2021-10-03 10:43:41 +07:00
Patrick Barron
21007aec20 Fix warnings in Data 2021-10-02 13:03:04 -04:00
Patrick Barron
4ba9b6c305 Fix warnings in ScheduledTasks 2021-10-02 12:53:51 -04:00
Patrick Barron
5043a887cc Document IStartupOptions 2021-10-02 11:54:31 -04:00
Joe Rogers
4c2adc39c7 Add test data and unit test for mp4 metadata probe 2021-10-01 22:03:12 +02:00
Bond_009
1ee58bf020 Enable nullable for ItemDataProvider 2021-10-01 11:21:22 +02:00
Bond_009
d4373a2ddb Use ConvertFrom with invariant culture instead of current culture 2021-10-01 10:54:06 +02:00
Claus Vium
531efc345a Merge pull request #6639 from 1337joe/mp4-track-title-fallback
Add mp4 track title fallback
2021-10-01 08:15:34 +02:00
Joe Rogers
ce0457faf5 Add mp4 track title fallback (#6638) 2021-09-30 23:53:33 +02:00
Tim040
7bf2ece20e Translated using Weblate (Dutch)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nl/
2021-09-30 10:30:07 -04:00
Bond-009
dd5e9e3fc6 Merge pull request #6631 from GodTamIt/dotnet-version 2021-09-30 11:05:59 +02:00
Chris Tam
1a70ba6a48 Update README for .NET version 2021-09-29 16:31:17 -04:00
Bond-009
be6fe62d52 Merge pull request #6629 from crobibero/globalize 2021-09-29 09:42:47 +02:00
Cody Robibero
6fb3ec0319 Disable DOTNET_SYSTEM_GLOBALIZATION_INVARIANT in docker images 2021-09-28 19:09:37 -06:00
Claus Vium
fa506b1ff6 Merge pull request #6627 from Bond-009/empty
Add regression test for #6560
2021-09-28 13:17:06 +02:00
Bond_009
055e04338e Add regression test for #6560 2021-09-28 12:03:32 +02:00
Bond-009
94b1236459 Merge pull request #6623 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore.ReDoc-6.2.2 2021-09-28 11:15:35 +02:00
dependabot[bot]
3d098173ff Bump Swashbuckle.AspNetCore.ReDoc from 6.2.1 to 6.2.2
Bumps [Swashbuckle.AspNetCore.ReDoc](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.2.1 to 6.2.2.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.2.1...v6.2.2)

---
updated-dependencies:
- dependency-name: Swashbuckle.AspNetCore.ReDoc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-28 09:11:16 +00:00
Bond-009
a085e5a62c Merge pull request #6622 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore-6.2.2 2021-09-28 11:10:35 +02:00
Bond-009
2def7043ce Merge pull request #6546 from ianjazz246/theorydata 2021-09-28 10:59:25 +02:00
dependabot[bot]
5b1feb1cea Bump Swashbuckle.AspNetCore from 6.2.1 to 6.2.2
Bumps [Swashbuckle.AspNetCore](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.2.1 to 6.2.2.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.2.1...v6.2.2)

---
updated-dependencies:
- dependency-name: Swashbuckle.AspNetCore
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-27 12:00:58 +00:00
Claus Vium
60f3d7ca6c Merge pull request #6618 from crobibero/zip-dir 2021-09-27 09:21:48 +02:00
Cody Robibero
7668cd13f5 Create output directory when extracting archive files 2021-09-26 16:23:43 -06:00
cvium
2899b77cd5 Implement FfProbeKeyframeExtractor and add tests for it 2021-09-26 21:07:30 +02:00
Bond-009
837d8feddc Merge pull request #6616 from crobibero/culture-info 2021-09-26 17:52:34 +02:00
Cody Robibero
9234e5bf80 Remove all instances of en-US culture 2021-09-26 09:11:25 -06:00
cvium
41383e6fe4 Review comment 2021-09-25 23:37:41 +02:00
cvium
64a13a5d42 Add ComputeSegments test 2021-09-25 23:28:10 +02:00
Bond-009
8858d8e597 Merge branch 'master' into theorydata 2021-09-25 22:24:57 +02:00
Bond-009
82cb685178 Merge pull request #6596 from crobibero/jeff-ext
Add Jellyfin.Extensions to nuget package publish
2021-09-25 22:18:28 +02:00
cvium
43ea4af30f Update to .net 6 2021-09-25 20:55:48 +02:00
cvium
30f3be1da0 Merge branch 'master' into keyframe_extraction_v1 2021-09-25 20:52:09 +02:00
Claus Vium
17273a6075 Merge pull request #6614 from Bond-009/warn36 2021-09-25 20:50:31 +02:00
Claus Vium
c5491dc46c Merge pull request #6613 from Bond-009/randomaccess 2021-09-25 20:34:21 +02:00
Bond_009
79642af3b8 Fix some warnings 2021-09-25 20:32:53 +02:00
Claus Vium
b37829dfbf Merge pull request #6611 from Bond-009/error 2021-09-25 20:25:42 +02:00
Claus Vium
e6f3531f40 Merge pull request #6612 from Bond-009/async3 2021-09-25 20:22:42 +02:00
Bond_009
a4eede29ab Use RandomAccess instead of a FileStream where it makes sense 2021-09-25 20:17:12 +02:00
Bond_009
f31224fa8f Remove sync FileStream hack 2021-09-25 19:44:40 +02:00
Bond_009
65665de660 Fix user DB migration 2021-09-25 19:39:24 +02:00
Bond-009
2ee3e9e00f Merge pull request #6590 from jellyfin/dotnet6 2021-09-25 19:21:37 +02:00
Bond_009
4643fd5dcb Address comments 2021-09-25 18:15:46 +02:00
Cody Robibero
5e8d58a6a6 Update path for openapi spec 2021-09-25 07:51:55 -06:00
Mislav Milinković
d81c9a7a8c Translated using Weblate (Croatian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hr/
2021-09-25 09:30:05 -04:00
Ouail Ouazani
984f17c64f Translated using Weblate (Arabic)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ar/
2021-09-25 09:30:05 -04:00
Cody Robibero
d156d49113 Update codeql dotnet version 2021-09-25 06:40:19 -06:00
Cody Robibero
4fc3de9b75 Fix builds for dotnet6 (#6595)
* Target net6.0

* Use new Enum.TryParse(ReadOnlySpan<char>) overload

* Replace RNGCryptoServiceProvider with RandomNumberGenerator

* ci - target net6.0 (#6594)

* Update deployment for dotnet6

* Use generic 6.0.x preview for CI

* Update direct dotnet download links

Co-authored-by: Bond_009 <bond.009@outlook.com>
2021-09-25 06:21:48 -06:00
Bond_009
e627b1b154 Fix failing tests 2021-09-25 13:58:16 +02:00
cvium
3e5cb8e04e Add tests for ComputeEqualLengthSegments and fix bug 2021-09-25 11:47:44 +02:00
cvium
c7b25a9fe4 Add first test 2021-09-25 11:17:16 +02:00
cvium
fa38b741ce Restructure the code to make it more testable 2021-09-25 10:54:54 +02:00
cvium
be233b49b6 Fixes 2021-09-25 10:41:36 +02:00
Bond_009
5fd315b17c Address comments 2021-09-24 20:15:46 +02:00
Bond_009
086d5925c9 Update Jellyfin.Extensions to .Net6 2021-09-24 20:15:46 +02:00
Cody Robibero
be00480fe2 ci - target net6.0 (#6594) 2021-09-24 20:15:46 +02:00
Bond_009
fb2f07dc84 Replace RNGCryptoServiceProvider with RandomNumberGenerator 2021-09-24 20:15:46 +02:00
Bond_009
4d1d9f23d5 Use new Enum.TryParse(ReadOnlySpan<char>) overload 2021-09-24 20:15:46 +02:00
Bond_009
13fbfe6091 Target net6.0 2021-09-24 20:15:46 +02:00
cvium
35c0801d6c More fixes 2021-09-23 18:59:34 +02:00
cvium
ee8bd9b3b5 Fix xmldoc issues 2021-09-23 18:49:48 +02:00
cvium
30230aff73 Fix build? 2021-09-23 17:00:39 +02:00
cvium
d995f0e092 Add dto changes 2021-09-23 15:51:46 +02:00
cvium
6e77d50563 Remove path hinting 2021-09-23 15:39:49 +02:00
cvium
3531dc85ae Fix build 2021-09-23 15:37:33 +02:00
cvium
9c15f96e12 Add first draft of keyframe extraction for Matroska 2021-09-23 15:29:12 +02:00
Claus Vium
1ebd3c9ac3 Merge pull request #6593 from Bond-009/ex 2021-09-22 09:21:41 +02:00
Claus Vium
7c8a81f7bc Merge pull request #6592 from Bond-009/dlna3 2021-09-22 09:19:24 +02:00
Claus Vium
8d9114dea3 Merge pull request #6597 from Bond-009/subs 2021-09-22 08:20:57 +02:00
Bond_009
dc1b726ef8 Add regression test for #5323 2021-09-22 02:00:17 +02:00
Cody Robibero
a605a38499 Add Jellyfin.Extensions to nuget package publish 2021-09-21 17:05:34 -06:00
Bond-009
12a54c070e Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-09-21 23:12:38 +02:00
Claus Vium
a353081ea3 Update MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs 2021-09-21 22:54:11 +02:00
Bond_009
8fec510971 ItemImageProvider: improve HTTP error handling 2021-09-21 22:47:30 +02:00
Bond_009
ec45808275 SsdpHttpClient: Ensure successful status code before reading response 2021-09-21 22:32:14 +02:00
cvium
95f344722c Don't set ffmpeg path from null to its Display value + add 404 2021-09-21 18:51:15 +00:00
Claus Vium
b4c0518001 Merge pull request #6588 from Bond-009/escape
Fix issue #6587
2021-09-21 20:49:14 +02:00
Claus Vium
46701e16b5 Merge pull request #6589 from Bond-009/ffmpeg3 2021-09-21 20:49:02 +02:00
evlian
f1498d49ca Translated using Weblate (Albanian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sq/
2021-09-21 12:30:06 -04:00
artiume
5b1813b699 update armv8 2021-09-21 11:46:01 -04:00
artiume
9e54ee1829 update armv7 2021-09-21 11:44:20 -04:00
Bond_009
52585a865e Validate ffmpeg path 2021-09-21 13:28:34 +02:00
Bond_009
f6622bd810 Fix issue #6587 2021-09-21 13:22:40 +02:00
Claus Vium
b598f0e9fb Merge pull request #6584 from Bond-009/datetime
Specify DateTimeStyles when possible
2021-09-21 08:17:55 +02:00
Joshua M. Boniface
18506f7c21 Merge pull request #6569 from crobibero/dotnet-5.0.10
Update to dotnet 5.0.10
2021-09-21 02:11:27 -04:00
Claus Vium
c38d19682c Merge pull request #6553 from ankenyr/master 2021-09-21 08:09:41 +02:00
Bond_009
653df7d8e5 Specify DateTimeStyles when possible 2021-09-21 01:21:45 +02:00
Claus Vium
9bb222b408 Merge pull request #6582 from Bond-009/shutdown
Allow shutdown while starting WebHost
2021-09-20 23:40:58 +02:00
Bond-009
747d464be3 Merge pull request #6541 from cvium/symlink_workaround 2021-09-20 22:39:35 +02:00
Bond-009
32ea4806f8 Merge pull request #6538 from cvium/livetv_oh_no 2021-09-20 22:38:44 +02:00
Bond_009
520aeb9a8e Allow shutdown while starting WebHost 2021-09-20 22:27:20 +02:00
Claus Vium
1b0e6b871b Merge pull request #6571 from Dixin/master
Fix extra folder name and type mapping.
2021-09-20 21:25:12 +02:00
Bond-009
eb0f7e071b Merge pull request #6576 from jellyfin/dependabot/nuget/DiscUtils.Udf-0.16.13
Bump DiscUtils.Udf from 0.16.4 to 0.16.13
2021-09-20 14:41:30 +02:00
artiume
7e8557fec6 Update Docker Image 2021-09-20 08:30:47 -04:00
dependabot[bot]
a77c38a813 Bump DiscUtils.Udf from 0.16.4 to 0.16.13
Bumps [DiscUtils.Udf](https://github.com/DiscUtils/DiscUtils) from 0.16.4 to 0.16.13.
- [Release notes](https://github.com/DiscUtils/DiscUtils/releases)
- [Changelog](https://github.com/DiscUtils/DiscUtils/blob/develop/Changelog.txt)
- [Commits](https://github.com/DiscUtils/DiscUtils/commits)

---
updated-dependencies:
- dependency-name: DiscUtils.Udf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-20 12:01:05 +00:00
Claus Vium
b51a3cbf98 Merge pull request #6567 from Bond-009/alloc 2021-09-20 09:43:04 +02:00
Dixin
27e32083a1 Update LINQ query according to code review feedback.
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-09-20 00:27:51 -07:00
Dixin
dc8420c7a2 Fix extra folder type resolving. 2021-09-19 16:54:00 -07:00
Cody Robibero
e7d6c45509 Upgrade to dotnet 5.0.10 2021-09-19 15:06:27 -06:00
Bond_009
9148820d89 Add more tests 2021-09-19 21:26:00 +02:00
Bond_009
a6d1e542e6 Reduce allocations 2021-09-19 20:53:31 +02:00
Claus Vium
a3a8e058bc Merge pull request #6563 from Bond-009/subtitleencoder 2021-09-19 10:35:03 +02:00
Claus Vium
e2b746dfce Merge pull request #6564 from Bond-009/azure
Fix Azure CI
2021-09-18 16:57:38 +02:00
Bond_009
d283702cac Fix Azure CI 2021-09-18 16:21:54 +02:00
Bond_009
b0194bce6c Add regression test for issue #5168 2021-09-18 15:31:45 +02:00
Bond_009
34b38454e0 Fix SubtitleEncoder and add regression tests 2021-09-18 15:23:55 +02:00
Bond_009
69cf8c1947 Add tests for DlnaController 2021-09-17 20:53:52 +02:00
gbrea
8d57afb55f Translated using Weblate (Galician)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/gl/
2021-09-17 03:30:05 -04:00
Claus Vium
9d46b3695f Merge pull request #6556 from nielsvanvelzen/openapi-security-scheme
Use standard Authorization header in OpenAPI specification
2021-09-16 08:14:58 +02:00
Meem Khan
b9407779e4 Translated using Weblate (Urdu (Pakistan))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ur_PK/
2021-09-15 17:30:00 -04:00
Niels van Velzen
e6c9add45a Use more specific test command 2021-09-15 19:32:55 +02:00
Niels van Velzen
be946cef87 Use standard Authorization header in OpenAPI specification 2021-09-15 19:28:20 +02:00
Fredrik Lindberg
90174f68e2 Dynamically populate LocalAddress based on HTTP request
Support populating the LocalAddress field in the system info
endpoint based on the x-forwarded-host and x-forwarded-proto header.

The x-forwarded-host header must contain both the host and port for
the url to be properly constructed.

Behind network configuration option that is disabled by default.
2021-09-14 21:38:11 +02:00
emmanuel billeaud
fffdf9f7b6 Translated using Weblate (French)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr/
2021-09-14 08:30:06 -04:00
Claus Vium
fffb57bb15 Merge pull request #6502 from crobibero/publish-jeff-extension
Add Jellyfin.Extensions to package publish
2021-09-14 13:44:46 +02:00
Claus Vium
97b8a672b5 Merge pull request #6555 from jellyfin/dependabot/nuget/libse-3.6.2 2021-09-13 18:39:30 +02:00
Claus Vium
da7a6e9fe4 Merge pull request #6554 from jellyfin/dependabot/nuget/sharpcompress-0.29.0 2021-09-13 18:39:09 +02:00
Fredrik Lindberg
ea439c5ccf Improve series name matching
Add a series path resolver that attempts to extract only the series
name from a path that contains more information that just the name.
2021-09-13 17:59:33 +02:00
Rob
d557a5371e Update Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-09-13 08:32:28 -07:00
Rob
8d45656c51 Update Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-09-13 08:32:18 -07:00
Rob
96bc24b1dc Update Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-09-13 08:32:12 -07:00
Cody Robibero
ea3e66e918 Fix namespace 2021-09-13 06:32:26 -06:00
dependabot[bot]
b53c36ee4a Bump libse from 3.6.0 to 3.6.2
Bumps [libse](https://github.com/SubtitleEdit/subtitleedit) from 3.6.0 to 3.6.2.
- [Release notes](https://github.com/SubtitleEdit/subtitleedit/releases)
- [Changelog](https://github.com/SubtitleEdit/subtitleedit/blob/master/Changelog.txt)
- [Commits](https://github.com/SubtitleEdit/subtitleedit/compare/3.6.0...3.6.2)

---
updated-dependencies:
- dependency-name: libse
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-13 12:01:30 +00:00
dependabot[bot]
65e10946d8 Bump sharpcompress from 0.28.3 to 0.29.0
Bumps [sharpcompress](https://github.com/adamhathcock/sharpcompress) from 0.28.3 to 0.29.0.
- [Release notes](https://github.com/adamhathcock/sharpcompress/releases)
- [Commits](https://github.com/adamhathcock/sharpcompress/compare/0.28.3...0.29)

---
updated-dependencies:
- dependency-name: sharpcompress
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-13 12:01:22 +00:00
cocool97
83b4d4d25a Translated using Weblate (French (Canada))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr_CA/
2021-09-13 04:30:03 -04:00
ankenyr
2b5f3f294e Fixing #6269 by comparing PremiereDate when episode comparison would otherwise be equal. 2021-09-12 15:05:37 -07:00
Cody Robibero
7a7fe3e681 Fix types and property names 2021-09-12 13:56:26 -06:00
Mr. Chip53
1a8dcae5e4 Fix #6171 2021-09-12 13:30:53 -05:00
Claus Vium
f11f572997 Merge pull request #6457 from Izumiko/adult 2021-09-11 23:00:11 +02:00
ianjazz246
19b8bcaec4 Use TheoryData instead of MemberData and ClassData 2021-09-11 13:31:24 -07:00
ianjazz246
3313efce19 Revert "Use TheoryData in UrlDecodeQueryFeatureTest"
This reverts commit c5393b2579.
2021-09-11 13:29:58 -07:00
Claus Vium
62113c4603 Update Jellyfin.Server/Infrastructure/SymlinkFollowingPhysicalFileResultExecutor.cs 2021-09-11 15:07:09 +02:00
Claus Vium
cec0dd94ba Update Jellyfin.Server/Infrastructure/SymlinkFollowingPhysicalFileResultExecutor.cs 2021-09-11 15:06:56 +02:00
Claus Vium
6b8b7f1426 Update Jellyfin.Server/Infrastructure/SymlinkFollowingPhysicalFileResultExecutor.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-09-11 14:19:50 +02:00
cvium
e34aa22dc1 Remove AsyncFile.OpenRead 2021-09-11 14:09:22 +02:00
cvium
794b73c62d Use File.GetAttributes instead of creating a new FileInfo 2021-09-11 13:32:59 +02:00
cvium
3bc9f38833 Fix SA1614 and SA1116 2021-09-11 12:47:01 +02:00
cvium
30152c8d96 Include the MIT license 2021-09-11 12:39:52 +02:00
cvium
6a2df35b37 Read file length for symlinks, supersedes #5775 and #5824 2021-09-11 12:31:29 +02:00
ianjazz246
c5393b2579 Use TheoryData in UrlDecodeQueryFeatureTest 2021-09-10 20:11:16 -07:00
Claus Vium
00f7f68e53 Merge pull request #5648 from OancaAndrei/syncplay-sessions-fix
Fix session references in SyncPlay
2021-09-10 17:44:44 +02:00
Bond-009
d7109d4d82 Merge pull request #6531 from GodTamIt/img-lang
Fix images "not loading" after manual identification
2021-09-10 13:35:03 +02:00
cvium
ae0055c494 Missing linebreaks that Rider apparently can't just do for me? 2021-09-10 13:09:24 +02:00
cvium
ff328fefc5 Replace GetDirectStreamProviderByUniqueId with GetLiveStreamInfoByUniqueId 2021-09-10 12:53:45 +02:00
cvium
026a7af0e8 Don't throw when livestream file isn't found 2021-09-10 11:54:26 +02:00
cvium
a60a1ab89b Fix xmldoc 2021-09-10 11:46:08 +02:00
cvium
6637a3096a Remove the dependency on BaseAuthorizationHandler 2021-09-10 11:44:50 +02:00
cvium
8496d7638a Merge branch 'master' into NetworkAccessPolicy 2021-09-10 11:40:28 +02:00
hoanghuy309
7ce62194d1 Translated using Weblate (Vietnamese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/vi/
2021-09-10 04:30:00 -04:00
cvium
1a5a74d2a9 Remove more unused args 2021-09-10 10:03:42 +02:00
cvium
f3573b061c Remove the unused arg 2021-09-10 09:56:48 +02:00
cvium
1603d1928e Kill ProgressiveFileCopier and seek to end for ongoing livetv 2021-09-10 09:29:14 +02:00
Chris Tam
b0cd1f5e39 Fix images "not loading" after manual identification 2021-09-09 19:16:15 -04:00
Claus Vium
b96dbbf553 Merge pull request #6534 from Bond-009/warn35 2021-09-09 19:40:21 +02:00
Bond_009
0d16c48998 Fix some warnings 2021-09-09 15:59:13 +02:00
Bond-009
448125f2b4 Merge pull request #6523 from cvium/fix_livetv_cts_disposed 2021-09-09 13:46:26 +02:00
hoanghuy309
1a5d8e89da Translated using Weblate (Vietnamese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/vi/
2021-09-08 13:30:00 -04:00
Lukáš Kucharczyk
95f287e819 Translated using Weblate (Czech)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cs/
2021-09-08 13:30:00 -04:00
oledfish
86a5e72a65 Add "Production" and "TV" episode orders. 2021-09-07 16:38:18 -03:00
Claus Vium
4f51a22081 Update Jellyfin.Networking/Manager/NetworkManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-09-07 19:52:17 +02:00
Claus Vium
c794e48562 Merge pull request #6522 from ferferga/efcore-improvements 2021-09-07 19:40:03 +02:00
Fernando Fernández
e5980f8686 Fix typo in comment and remove useless ones 2021-09-07 19:25:04 +02:00
Claus Vium
9c628cad22 Merge pull request #6526 from jellyfin/Bond-009-patch-2 2021-09-07 14:49:50 +02:00
Bond-009
71ab4a5754 Fix it for real(tm) this time 2021-09-07 14:18:04 +02:00
Bond-009
8dc0911374 Fix log message 2021-09-07 14:03:32 +02:00
cvium
153e920239 Ignore published server url for local access 2021-09-07 11:48:06 +02:00
cvium
be9663ae89 Use GetSmartApiUrl instead (hopefully it works) 2021-09-07 10:27:55 +02:00
cvium
fdab8eebc9 Fix disposed exception when ffmpeg exits early in GetLiveHlsStream 2021-09-07 08:54:58 +02:00
Fernando Fernández
154b7d8505 Fix identation 2021-09-06 21:35:54 +02:00
Fernando Fernández
f4af78817d Move model configuration to its own classes 2021-09-06 21:15:31 +02:00
Fernando Fernández
c2652d21e1 Log EFCore migrations 2021-09-06 21:15:31 +02:00
Fernando Fernández
3d0b1ccae6 Remove all unused usings 2021-09-06 21:15:30 +02:00
Fernando Fernández
59b67584fc Use appHost.Resolve for accessing the context in Program.cs 2021-09-06 20:35:02 +02:00
Cody Robibero
23e6c918a2 Remove Linq to index search 2021-09-06 11:08:40 -06:00
Claus Vium
ec35b8b425 Merge pull request #6521 from ferferga/fix-typos
Fix Dockerfile typos
2021-09-06 18:23:19 +02:00
Fernando Fernández
488e276f01 Fix Dockerfile typos 2021-09-06 17:51:08 +02:00
artiume
d7b2fa62a3 10.7.7 2021-09-06 09:41:29 -04:00
Bond-009
92aa820f37 Merge pull request #6520 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore.ReDoc-6.2.1
Bump Swashbuckle.AspNetCore.ReDoc from 6.1.5 to 6.2.1
2021-09-06 15:08:03 +02:00
Bond-009
18bac550de Merge pull request #6519 from jellyfin/dependabot/nuget/FsCheck.Xunit-2.16.3
Bump FsCheck.Xunit from 2.16.1 to 2.16.3
2021-09-06 14:28:19 +02:00
dependabot[bot]
5f1b5cd305 Bump Swashbuckle.AspNetCore.ReDoc from 6.1.5 to 6.2.1
Bumps [Swashbuckle.AspNetCore.ReDoc](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.1.5 to 6.2.1.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.1.5...v6.2.1)

---
updated-dependencies:
- dependency-name: Swashbuckle.AspNetCore.ReDoc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-06 12:17:43 +00:00
Bond-009
9ea42c8b6c Merge pull request #6517 from jellyfin/dependabot/nuget/prometheus-net.DotNetRuntime-4.2.1
Bump prometheus-net.DotNetRuntime from 4.2.0 to 4.2.1
2021-09-06 14:17:04 +02:00
Bond-009
dddfac9ac4 Merge pull request #6516 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore-6.2.1
Bump Swashbuckle.AspNetCore from 6.1.5 to 6.2.1
2021-09-06 14:16:58 +02:00
Bond-009
a26b03b9d7 Merge pull request #6518 from jellyfin/dependabot/nuget/SQLitePCLRaw.bundle_e_sqlite3-2.0.6
Bump SQLitePCLRaw.bundle_e_sqlite3 from 2.0.5 to 2.0.6
2021-09-06 14:16:46 +02:00
dependabot[bot]
c52fc714aa Bump FsCheck.Xunit from 2.16.1 to 2.16.3
Bumps [FsCheck.Xunit](https://github.com/fsharp/FsCheck) from 2.16.1 to 2.16.3.
- [Release notes](https://github.com/fsharp/FsCheck/releases)
- [Changelog](https://github.com/fscheck/FsCheck/blob/master/FsCheck%20Release%20Notes.md)
- [Commits](https://github.com/fsharp/FsCheck/compare/2.16.1...2.16.3)

---
updated-dependencies:
- dependency-name: FsCheck.Xunit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-06 12:01:04 +00:00
dependabot[bot]
fdec42bccc Bump SQLitePCLRaw.bundle_e_sqlite3 from 2.0.5 to 2.0.6
Bumps [SQLitePCLRaw.bundle_e_sqlite3](https://github.com/ericsink/SQLitePCL.raw) from 2.0.5 to 2.0.6.
- [Release notes](https://github.com/ericsink/SQLitePCL.raw/releases)
- [Commits](https://github.com/ericsink/SQLitePCL.raw/compare/v2.0.5...v2.0.6)

---
updated-dependencies:
- dependency-name: SQLitePCLRaw.bundle_e_sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-06 12:00:58 +00:00
dependabot[bot]
9e96f36131 Bump prometheus-net.DotNetRuntime from 4.2.0 to 4.2.1
Bumps [prometheus-net.DotNetRuntime](https://github.com/djluck/prometheus-net.DotNetRuntime) from 4.2.0 to 4.2.1.
- [Release notes](https://github.com/djluck/prometheus-net.DotNetRuntime/releases)
- [Commits](https://github.com/djluck/prometheus-net.DotNetRuntime/compare/4.2.0...4.2.1)

---
updated-dependencies:
- dependency-name: prometheus-net.DotNetRuntime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-06 12:00:55 +00:00
dependabot[bot]
4a4a291aa9 Bump Swashbuckle.AspNetCore from 6.1.5 to 6.2.1
Bumps [Swashbuckle.AspNetCore](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.1.5 to 6.2.1.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.1.5...v6.2.1)

---
updated-dependencies:
- dependency-name: Swashbuckle.AspNetCore
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-06 12:00:53 +00:00
Claus Vium
74fef6c05b Merge pull request #6177 from Bond-009/async
Use async FileStreams where it makes sense
2021-09-06 13:55:34 +02:00
Claus Vium
bf0a0c8b62 Merge pull request #6494 from Bond-009/cleanup 2021-09-06 13:55:16 +02:00
Claus Vium
06242121c5 Merge pull request #4615 from strugee/fix-restart.sh 2021-09-06 13:53:23 +02:00
Claus Vium
7d8efa35fa Merge pull request #5092 from OancaAndrei/syncplay-clear-queue 2021-09-06 13:51:07 +02:00
Claus Vium
ba90b1215b Merge pull request #6515 from Maeur1/master
Update Intel Compute Runtime Resources
2021-09-06 13:50:03 +02:00
Mayur Panchal
cee884613d Update Intel Compute Runtime Resources 2021-09-06 20:55:00 +10:00
dkanada
f6c0db4bb5 merge branch 'master' into syncplay-sessions-fix 2021-09-06 13:42:48 +09:00
dkanada
5e3905d41a merge branch 'master' into syncplay-clear-queue 2021-09-06 13:35:58 +09:00
dkanada
e9508616cc Merge pull request #4005 from cromefire/patch-2
Add additional opts for systemd / upstart
2021-09-06 13:31:44 +09:00
dkanada
1716137a89 Merge pull request #6066 from jellyfin/dependabot/github_actions/cirrus-actions/rebase-1.5
Bump cirrus-actions/rebase from 1.4 to 1.5
2021-09-06 02:31:59 +09:00
dkanada
b8eb8940c7 Merge pull request #6257 from MrTimscampi/music-library-backdrop
Use artist backdrop for generated library image
2021-09-06 02:30:49 +09:00
Claus Vium
66659b0842 Merge pull request #6089 from BaronGreenback/IsRoot_fix
Set UserRootFolder.IsRoot to true
2021-09-05 15:25:40 +02:00
cvium
ffe5ae8056 Merge branch 'master' into TVFix 2021-09-05 10:11:17 +02:00
artiume
711db363aa Update issue report.yml 2021-09-04 15:31:24 -04:00
artiume
957c5ee061 Delete bug_report.md 2021-09-04 14:46:49 -04:00
artiume
37e388dec1 Convert Issue Template to YAML 2021-09-04 14:46:22 -04:00
Bond-009
ff83fabac3 Merge pull request #6456 from GodTamIt/vp8-vp9
Disambiguate vpx to vp8 or vp9
2021-09-04 16:26:07 +02:00
Bond-009
a569e5860f Merge pull request #6506 from Artiume/patch-5 2021-09-04 16:17:55 +02:00
artiume
30bc5369ca Update bug_report.md 2021-09-04 09:43:39 -04:00
artiume
0c1f27d2db Request FFmpeg version 2021-09-04 09:33:02 -04:00
Chris Tam
b205d5a032 Disambiguate vpx to vp8 or vp9 2021-09-04 07:36:17 -04:00
Claus Vium
8c463b9b81 Merge pull request #4799 from tommasodotNET/bug/authorization-header-issue
Authorization header parsing
2021-09-04 00:31:13 +02:00
cvium
907d9fa195 remove some newlines 2021-09-03 23:58:07 +02:00
cvium
1172ece856 remove leading and trailing whitespace from the key 2021-09-03 23:56:19 +02:00
Cody Robibero
7a0a675bd5 Add Jellyfin.Extensions to package publish 2021-09-03 14:21:33 -06:00
Cody Robibero
04973a489f use JsonOptions 2021-09-03 13:56:51 -06:00
cvium
60185f99c4 fix the build 2021-09-03 21:43:06 +02:00
Cody Robibero
0587b539ec Suggestions from review 2021-09-03 13:36:07 -06:00
cvium
6b3ecf2533 Merge branch 'master' into bug/authorization-header-issue 2021-09-03 21:33:41 +02:00
cvium
048c478b0d Merge branch 'master' into bug/authorization-header-issue 2021-09-03 21:25:18 +02:00
Claus Vium
e229f6d9bb Merge pull request #6499 from Bond-009/warn34
Fix some warnings
2021-09-03 21:14:10 +02:00
Cody Robibero
47e24a2cf7 Add SchedulesDirect json tests 2021-09-03 12:35:52 -06:00
Cody Robibero
058baf5abd Add IReadOnlyList extensions 2021-09-03 12:35:32 -06:00
Bond_009
637e86478f Fix some warnings 2021-09-03 19:32:11 +02:00
Claus Vium
fb5385f1df Merge pull request #6201 from barronpm/authenticationdb-efcore
Migrate Authentication DB to EF Core
2021-09-03 19:17:13 +02:00
Cody Robibero
ff9d14c811 Merge remote-tracking branch 'upstream/master' into authenticationdb-efcore 2021-09-03 11:01:55 -06:00
Cody Robibero
47be1bf69f Enable nullable for SchedulesDirect 2021-09-03 10:59:40 -06:00
Claus Vium
95ca1d5487 Merge pull request #6498 from Bond-009/invalidop
Fix InvalidOperationException when serializing MediaPathInfo
2021-09-03 18:45:06 +02:00
Bond-009
3ec7ecf399 Merge pull request #6358 from MrTimscampi/audio-people 2021-09-03 17:15:58 +02:00
Bond_009
b458f85c47 Fix InvalidOperationException when serializing MediaPathInfo 2021-09-03 16:39:03 +02:00
Bond-009
79e51b7fa2 Merge pull request #6475 from crobibero/warn-259810
Remove more and more warnings
2021-09-03 16:17:02 +02:00
siankatabg
2f360151c2 Translated using Weblate (Bulgarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/bg/
2021-09-03 09:29:58 -04:00
Cody Robibero
bfb37a9ed9 Fix typos 2021-09-03 07:21:21 -06:00
Cody Robibero
3f2c706575 Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-09-03 07:19:50 -06:00
Cody Robibero
611c20dba8 Fix indentation 2021-09-03 06:57:33 -06:00
Cody Robibero
8e498b01e7 Fix issues from merge 2021-09-03 06:57:04 -06:00
Cody Robibero
ec13412155 Merge remote-tracking branch 'upstream/master' into warn-259810 2021-09-03 06:56:45 -06:00
Patrick Barron
88157fcc77 Re-add documentation 2021-09-02 20:22:08 -04:00
Patrick Barron
098bd5cfa9 Remove IAuditableEntity 2021-09-02 20:18:46 -04:00
Claus Vium
b1e7cfd84c Merge pull request #6497 from Bond-009/fuzz1
Add SqliteItemRepository.ItemImageInfoFromValueString as a fuzzing target
2021-09-02 21:48:46 +02:00
Bond_009
286dabdc4b Add SqliteItemRepository.ItemImageInfoFromValueString as a fuzzing
target

and add test cases
2021-09-02 21:28:00 +02:00
Bond_009
e3dac4fda2 Use async FileStreams where it makes sense 2021-09-02 14:02:04 +02:00
Bond-009
620dd94970 Merge pull request #6495 from qsniyg/zero-activity-days
Allow zero activity log retention days
2021-09-02 13:15:37 +02:00
Gokdag Goktepe
4bed19e22f Translated using Weblate (Turkish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/tr/
2021-09-02 04:29:58 -04:00
Claus Vium
ffef1baa2f Merge pull request #6485 from markshark05/patch-1
Update M3U Channel Name Precedence
2021-09-02 08:39:18 +02:00
qsniyg
2cf08dcd34 Allow zero activity log retention days 2021-09-01 15:52:59 -07:00
Mike
cf9c678406 Add subtitle format(codec) to stream display title (#5853)
Co-authored-by: Michał Kurek <michal.kurek@mail.com>
2021-09-01 18:59:59 +02:00
Bond_009
6f405dc36d Clean up VideoImageProvider 2021-09-01 18:47:24 +02:00
Bond-009
855f9c4a8e Merge pull request #6425 from boolemancer/boolemancer/fix_image_extractor
Fix explicit stream selection in MediaEncoder.ExtractImageInternal
2021-09-01 18:24:29 +02:00
Claus Vium
5ca88a835e Merge pull request #6492 from Bond-009/gitignore
Ignore Omnisharp crash logs
2021-09-01 14:45:05 +02:00
Bond_009
55c8fb7814 Ignore Omnisharp crash logs 2021-09-01 12:28:52 +00:00
Claus Vium
8ae1eb6c50 Merge pull request #6491 from Bond-009/fixbuild
Fix build
2021-09-01 14:23:50 +02:00
Bond_009
07f64102dd Fix build 2021-09-01 14:06:09 +02:00
Claus Vium
4cd372109d Merge pull request #6473 from Bond-009/nullable7
Enable nullable for more files
2021-09-01 09:28:19 +02:00
Claus Vium
501c7a639f Merge pull request #6474 from Bond-009/tests11 2021-09-01 09:24:57 +02:00
Patrick Barron
cb52ccc699 Update Jellyfin.Server.Implementations/Devices/DeviceManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-08-31 10:57:48 -04:00
Mark Titorenkov
a0ee16d38d Update M3U Channel Name Precedence
Sets the ExtInf display name to have a higher precedence than the `tvg-name` attribute for channel names.

Usually `namInExtInf` is a more descriptive and human readable name if both it and `tvg-name` are available. `tvg-name` is more likely to be an internal identifier such as just the channel number with a prefix in my provider's case.
2021-08-31 15:12:09 +03:00
Claus Vium
e83d7a8667 Merge pull request #6327 from nyanmisaka/tonemap-overlay 2021-08-30 20:41:12 +02:00
Claus Vium
ae031fdd28 Merge branch 'master' into tonemap-overlay 2021-08-30 20:02:31 +02:00
Claus Vium
442e756395 Merge pull request #6183 from stanionascu/bdiso-playback 2021-08-30 19:54:06 +02:00
Claus Vium
b7e13f3a03 Merge pull request #5697 from Bond-009/ffmpeg2
Simplify the way we choose our ffmpeg
2021-08-30 19:36:51 +02:00
Bond_009
963ab2dab6 Simplify the way we choose our ffmpeg
* no longer search $PATH
* no longer require a full path
* don't fall back
2021-08-30 15:40:52 +02:00
Cody Robibero
ecb4b8e0aa Apply suggestions from code review
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-08-30 07:11:34 -06:00
Bond-009
9bf2769cdb Merge pull request #6434 from crobibero/docker-bullseye 2021-08-30 15:09:47 +02:00
Bond-009
bb685e4920 Merge pull request #6422 from daullmer/nfo-fanart 2021-08-30 15:02:25 +02:00
Bond-009
32a11c006d Merge pull request #6480 from jellyfin/dependabot/nuget/prometheus-net.DotNetRuntime-4.2.0
Bump prometheus-net.DotNetRuntime from 4.1.0 to 4.2.0
2021-08-30 14:25:30 +02:00
Bond-009
d07a6eb7e0 Merge pull request #6481 from jellyfin/dependabot/nuget/SQLitePCLRaw.bundle_e_sqlite3-2.0.5
Bump SQLitePCLRaw.bundle_e_sqlite3 from 2.0.4 to 2.0.5
2021-08-30 14:25:12 +02:00
Bond-009
07c7ee8f9f Merge pull request #6479 from jellyfin/dependabot/nuget/FsCheck.Xunit-2.16.1
Bump FsCheck.Xunit from 2.16.0 to 2.16.1
2021-08-30 14:24:48 +02:00
dependabot[bot]
e2fdab4be4 Bump SQLitePCLRaw.bundle_e_sqlite3 from 2.0.4 to 2.0.5
Bumps [SQLitePCLRaw.bundle_e_sqlite3](https://github.com/ericsink/SQLitePCL.raw) from 2.0.4 to 2.0.5.
- [Release notes](https://github.com/ericsink/SQLitePCL.raw/releases)
- [Commits](https://github.com/ericsink/SQLitePCL.raw/commits)

---
updated-dependencies:
- dependency-name: SQLitePCLRaw.bundle_e_sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-30 12:01:04 +00:00
dependabot[bot]
4c5f7207e3 Bump prometheus-net.DotNetRuntime from 4.1.0 to 4.2.0
Bumps [prometheus-net.DotNetRuntime](https://github.com/djluck/prometheus-net.DotNetRuntime) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/djluck/prometheus-net.DotNetRuntime/releases)
- [Commits](https://github.com/djluck/prometheus-net.DotNetRuntime/compare/4.1.0...4.2.0)

---
updated-dependencies:
- dependency-name: prometheus-net.DotNetRuntime
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-30 12:00:56 +00:00
dependabot[bot]
e40fde04d6 Bump FsCheck.Xunit from 2.16.0 to 2.16.1
Bumps [FsCheck.Xunit](https://github.com/fsharp/FsCheck) from 2.16.0 to 2.16.1.
- [Release notes](https://github.com/fsharp/FsCheck/releases)
- [Changelog](https://github.com/fscheck/FsCheck/blob/master/FsCheck%20Release%20Notes.md)
- [Commits](https://github.com/fsharp/FsCheck/compare/2.16.0...2.16.1)

---
updated-dependencies:
- dependency-name: FsCheck.Xunit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-30 12:00:52 +00:00
Cody Robibero
d7459fa2ec Add missing xmldoc 2021-08-28 23:02:13 -06:00
Cody Robibero
cba07b1ca6 Remove more and more warnings 2021-08-28 16:32:50 -06:00
Bond_009
0f7c875076 Fix test 2021-08-28 20:53:34 +02:00
Bond_009
69ba539c70 Add more tests for LibraryStructureController 2021-08-28 20:12:25 +02:00
Bond_009
909573f2f1 Add tests for LibraryStructureController 2021-08-28 19:30:57 +02:00
Bond_009
645825db36 Enable nullable for more files 2021-08-28 17:32:09 +02:00
TheFeelTrain
e88367fe70 Translated using Weblate (Japanese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ja/
2021-08-28 07:29:55 -04:00
Bond-009
48fdc63367 Merge pull request #6461 from jellyfin/dependabot/nuget/prometheus-net.AspNetCore-5.0.1
Bump prometheus-net.AspNetCore from 4.2.0 to 5.0.1
2021-08-27 18:33:54 +02:00
dependabot[bot]
41712e16be Bump prometheus-net.AspNetCore from 4.2.0 to 5.0.1
Bumps [prometheus-net.AspNetCore](https://github.com/prometheus-net/prometheus-net) from 4.2.0 to 5.0.1.
- [Release notes](https://github.com/prometheus-net/prometheus-net/releases)
- [Changelog](https://github.com/prometheus-net/prometheus-net/blob/master/History)
- [Commits](https://github.com/prometheus-net/prometheus-net/compare/v4.2.0...v5.0.1)

---
updated-dependencies:
- dependency-name: prometheus-net.AspNetCore
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-27 15:32:56 +00:00
Bond-009
72c6e4920d Merge pull request #6462 from jellyfin/dependabot/nuget/prometheus-net-5.0.1
Bump prometheus-net from 4.2.0 to 5.0.1
2021-08-27 17:32:24 +02:00
wolong gl
59b8056add Translated using Weblate (Chinese (Simplified))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zh_Hans/
2021-08-26 21:29:56 -04:00
Vinícius Costa
5bcd1648cb Translated using Weblate (Portuguese (Brazil))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pt_BR/
2021-08-26 21:29:56 -04:00
SeanPai
c2bcceaa21 Translated using Weblate (Chinese (Traditional))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zh_Hant/
2021-08-26 21:29:56 -04:00
Changho Park
80dc92238a Translated using Weblate (Korean)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ko/
2021-08-26 21:29:56 -04:00
lsousa
3ebede56fe Translated using Weblate (Portuguese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pt/
2021-08-26 21:29:56 -04:00
Weevild
6c7b9d4044 Translated using Weblate (Swedish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sv/
2021-08-26 21:29:56 -04:00
Lukáš Kucharczyk
d3527334bc Translated using Weblate (Czech)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cs/
2021-08-26 21:29:56 -04:00
Kaiay
74d22d2f9a Translated using Weblate (Chinese (Hong Kong))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zh_Hant_HK/
2021-08-26 21:29:56 -04:00
Izumiko
7027e2feb2 Add 'includeAdult' option for TheMovieDb 2021-08-25 20:46:51 +08:00
Claus Vium
e15fea5dad Merge pull request #5228 from lbenini/baseitemkind-fixes 2021-08-23 22:30:05 +02:00
dependabot[bot]
efed4728e6 Bump prometheus-net from 4.2.0 to 5.0.1
Bumps [prometheus-net](https://github.com/prometheus-net/prometheus-net) from 4.2.0 to 5.0.1.
- [Release notes](https://github.com/prometheus-net/prometheus-net/releases)
- [Changelog](https://github.com/prometheus-net/prometheus-net/blob/master/History)
- [Commits](https://github.com/prometheus-net/prometheus-net/compare/v4.2.0...v5.0.1)

---
updated-dependencies:
- dependency-name: prometheus-net
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-23 12:00:54 +00:00
wolong gl
98b72019e6 Translated using Weblate (Chinese (Simplified))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zh_Hans/
2021-08-23 03:29:54 -04:00
Marcin Woliński
7c7ad820c2 Translated using Weblate (Polish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pl/
2021-08-23 03:29:54 -04:00
Cody Robibero
50b3d74c95 Switch to TheoryData and clean up tests 2021-08-21 17:31:06 -06:00
Bond-009
8a460fc6ba Merge pull request #6444 from cvium/fix_liverecordingsplayback
Use ProgressiveFileStream for LiveRecordings endpoint
2021-08-21 16:15:15 +02:00
Bond-009
ec649fcaf5 Merge pull request #6445 from cvium/progressivefilestream_timeout
Add timeout to ProgressiveFileStream
2021-08-21 16:14:34 +02:00
cvium
468283bfb2 Move test to TypedBaseItem folder to avoid conflicts 2021-08-18 20:11:28 +02:00
Claus Vium
663c79cba8 Merge branch 'master' into baseitemkind-fixes 2021-08-18 18:25:48 +02:00
Joshua M. Boniface
72d3f7020a Merge branch 'master' into patch-2 2021-08-18 02:46:59 -04:00
Joshua M. Boniface
e5cbafdb6b Merge pull request #5606 from lmnotran/feature/delay-service-start
Delay starting service until after network is online
2021-08-18 02:25:54 -04:00
Oatavandi
6438410111 Translated using Weblate (Malayalam)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ml/
2021-08-17 22:29:54 -04:00
hoanghuy309
6de2a519f2 Translated using Weblate (Vietnamese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/vi/
2021-08-17 22:29:54 -04:00
aqweg
2a8cb5d795 Translated using Weblate (Afrikaans)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/af/
2021-08-17 22:29:54 -04:00
nextlooper42
0c54708e1c Translated using Weblate (Slovak)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sk/
2021-08-17 22:29:54 -04:00
WWWesten
2e5cb8d8b1 Translated using Weblate (Russian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ru/
2021-08-17 22:29:54 -04:00
WWWesten
a311116f51 Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2021-08-17 22:29:54 -04:00
millallo
c842a2efa2 Translated using Weblate (Italian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/it/
2021-08-17 22:29:54 -04:00
Adam Bokor
61aa992628 Translated using Weblate (Hungarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hu/
2021-08-17 22:29:54 -04:00
Henry Moritz
88b2b9a82a Translated using Weblate (Spanish (Mexico))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/es_MX/
2021-08-17 22:29:54 -04:00
FancyNerd92
9d445cf7fb Translated using Weblate (Greek)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/el/
2021-08-17 22:29:54 -04:00
Deathspike
95988ce33d Fix embedded subtitles taking priority over external ones 2021-08-17 20:15:16 +02:00
cvium
12a7fda0a6 Add timeout to ProgressiveFileStream 2021-08-17 19:18:26 +02:00
cvium
f23ef1f1b9 Use ProgressiveFileStream for LiveRecordings endpoint 2021-08-17 13:38:28 +02:00
Bond-009
2e7418142a Merge pull request #6437 from jellyfin/dependabot/nuget/Serilog.Settings.Configuration-3.2.0
Bump Serilog.Settings.Configuration from 3.1.0 to 3.2.0
2021-08-16 14:54:28 +02:00
Bond-009
d9f7b84156 Merge pull request #6438 from jellyfin/dependabot/nuget/FsCheck.Xunit-2.16.0
Bump FsCheck.Xunit from 2.15.3 to 2.16.0
2021-08-16 14:53:56 +02:00
Bond-009
b5157004c4 Merge pull request #6439 from jellyfin/dependabot/nuget/Microsoft.NET.Test.Sdk-16.11.0
Bump Microsoft.NET.Test.Sdk from 16.10.0 to 16.11.0
2021-08-16 14:53:39 +02:00
dependabot[bot]
ee37784a35 Bump Microsoft.NET.Test.Sdk from 16.10.0 to 16.11.0
Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 16.10.0 to 16.11.0.
- [Release notes](https://github.com/microsoft/vstest/releases)
- [Commits](https://github.com/microsoft/vstest/compare/v16.10.0...v16.11.0)

---
updated-dependencies:
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-16 12:01:04 +00:00
dependabot[bot]
4077cb2648 Bump FsCheck.Xunit from 2.15.3 to 2.16.0
Bumps [FsCheck.Xunit](https://github.com/fsharp/FsCheck) from 2.15.3 to 2.16.0.
- [Release notes](https://github.com/fsharp/FsCheck/releases)
- [Changelog](https://github.com/fscheck/FsCheck/blob/master/FsCheck%20Release%20Notes.md)
- [Commits](https://github.com/fsharp/FsCheck/compare/2.15.3...2.16.0)

---
updated-dependencies:
- dependency-name: FsCheck.Xunit
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-16 12:00:55 +00:00
dependabot[bot]
05103a483e Bump Serilog.Settings.Configuration from 3.1.0 to 3.2.0
Bumps [Serilog.Settings.Configuration](https://github.com/serilog/serilog-settings-configuration) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/serilog/serilog-settings-configuration/releases)
- [Changelog](https://github.com/serilog/serilog-settings-configuration/blob/dev/CHANGES.md)
- [Commits](https://github.com/serilog/serilog-settings-configuration/compare/v3.1.0...v3.2.0)

---
updated-dependencies:
- dependency-name: Serilog.Settings.Configuration
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-16 12:00:51 +00:00
Claus Vium
52e27da921 Merge pull request #6239 from jvoisin/patch-1
Add a LGTM.com badge
2021-08-16 09:19:59 +02:00
Claus Vium
aac1435502 Merge pull request #6397 from MrChip53/m3u-improvements 2021-08-16 09:12:43 +02:00
Claus Vium
fb5db696eb Merge pull request #6403 from ankenyr/master 2021-08-16 09:03:34 +02:00
Claus Vium
fa77902955 Merge pull request #6430 from Bond-009/minor17
Minor improvements
2021-08-16 08:59:43 +02:00
Claus Vium
e3c2a8a3be Update Emby.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs 2021-08-16 08:52:16 +02:00
Cody Robibero
b504d1f724 Also update arm, arm64 Dockerfile 2021-08-15 19:32:45 -06:00
Cody Robibero
33bf8e34d1 Update Dockerfile to use debian:bullseye-slim 2021-08-15 18:57:14 -06:00
ankenyr
6ba7db3d55 Removing if statement and always testing reverse of x and y. 2021-08-15 15:48:01 -07:00
ankenyr
0f9e95b4c5 Breaking up the test theory so episodes and the results are on their own lines. 2021-08-15 15:31:58 -07:00
Rob
9220682fd1 Update tests/Jellyfin.Server.Implementations.Tests/Sorting/AiredEpisodeOrderComparerTests.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-08-15 15:26:00 -07:00
Rob
10fbb4d48d Update tests/Jellyfin.Server.Implementations.Tests/Sorting/AiredEpisodeOrderComparerTests.cs
Thanks for this suggestion. I will try to keep this in mind going forward with future PRs

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-08-15 15:23:18 -07:00
MrTimscampi
7f52cda03c Make performer regex static 2021-08-16 00:22:36 +02:00
MrTimscampi
d82c2e4237 Address comments 2021-08-16 00:22:36 +02:00
MrTimscampi
8594ee7a22 Fix documentation for lyricist and arranger 2021-08-16 00:22:36 +02:00
MrTimscampi
c9b1cd1d8c Add some new music-related person types and parse from ffprobe 2021-08-16 00:22:36 +02:00
MrTimscampi
f35a527608 Add performers to the ffprobe normalization for audio 2021-08-16 00:22:36 +02:00
MrTimscampi
24083d2e38 Address comments 2021-08-16 00:22:36 +02:00
MrTimscampi
7e71c25059 Add test for audio file ffprobe normalization 2021-08-16 00:22:34 +02:00
MrTimscampi
3300d2d7d3 Enable people for audio files 2021-08-16 00:20:48 +02:00
Bond-009
db0d5b048a Merge pull request #6423 from richlander/mediabrowser-controller
Fix warnings in MediaBrowser.Controller
2021-08-16 00:06:40 +02:00
Bond_009
19824bff94 Minor improvements 2021-08-15 23:48:19 +02:00
Claus Vium
d3f291f159 Merge pull request #6392 from Bond-009/tests9
ApiServiceCollectionExtensions.AddProxyAddresses: Add more tests
2021-08-15 19:56:08 +02:00
Joshua M. Boniface
84d7db7a31 Merge pull request #6427 from winterqt/patch-1
Disable UseAppHost in portable deployment
2021-08-15 13:34:47 -04:00
Joshua M. Boniface
7fabb32482 Merge pull request #6429 from crobibero/dotnet-5.0.9
Update to dotnet 5.0.9
2021-08-15 13:34:04 -04:00
Rich Lander
e7a3552aae Update per feedback 2021-08-15 10:32:23 -07:00
Rich Lander
312e2685f8 Update MediaBrowser.Controller/Entities/IHasMediaSources.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-08-15 10:30:12 -07:00
dkanada
3cc1df68ac Merge pull request #6428 from Bond-009/tests10
Fix PasswordHash tests
2021-08-16 01:43:30 +09:00
Cody Robibero
709f8e9faa Update to dotnet 5.0.9 2021-08-15 08:30:15 -06:00
Bond-009
fc9f45b42d Merge pull request #6381 from Bond-009/nullable5
Enable nullable for DlnaManager
2021-08-15 14:14:33 +02:00
Bond_009
e8e0836f95 Fix PasswordHash tests 2021-08-15 14:13:20 +02:00
Winter
890e99725e Disable UseAppHost in portable deployment 2021-08-14 19:29:31 -04:00
dtorner
c80930c6d4 Translated using Weblate (Spanish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/es/
2021-08-14 06:21:47 -04:00
Daniel
585207e05b Translated using Weblate (Catalan)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ca/
2021-08-14 06:21:47 -04:00
FancyNerd92
7eb4da4eef Translated using Weblate (Greek)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/el/
2021-08-14 06:21:47 -04:00
cotlol
b6691d3fe9 Translated using Weblate (Swedish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sv/
2021-08-14 06:21:47 -04:00
FancyNerd92
9b451f357f Translated using Weblate (English)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/en/
2021-08-14 06:21:47 -04:00
artiume
7ee404ec98 Added translation using Weblate (Pirate) 2021-08-14 06:21:47 -04:00
boolemancer
2345646ff1 Fix explicit stream selection in MediaEncoder.ExtractImageInternal 2021-08-14 02:55:51 -07:00
Rich Lander
e3df4dcaae Fix warnings in MediaBrowser.Controller 2021-08-13 20:34:36 -07:00
Patrick Barron
8a1e55251e Fix devices migration 2021-08-13 21:28:17 -04:00
Patrick Barron
1615663bd2 Remove old response code documentation 2021-08-13 21:08:49 -04:00
Patrick Barron
1b197a2c2a Fix QuickConnect tests, move class to proper namespace 2021-08-13 21:08:38 -04:00
Patrick Barron
45f478f63e Merge branch 'master' into authenticationdb-efcore
# Conflicts:
#	Jellyfin.Server.Implementations/Security/AuthorizationContext.cs
#	MediaBrowser.Controller/Library/IUserManager.cs
#	MediaBrowser.Controller/Security/IAuthenticationRepository.cs
#	MediaBrowser.Controller/Session/ISessionManager.cs
2021-08-13 21:08:24 -04:00
Patrick Barron
15baf04bd2 Add IAuditableEntity 2021-08-13 20:35:31 -04:00
David Ullmer
bf441e49b9 Add test for fanart tag 2021-08-13 20:36:14 +02:00
David Ullmer
12e58840eb Modify FetchThumbNode method to read children of fanart tag 2021-08-13 20:33:53 +02:00
David Ullmer
577d665192 Move thumb tag parsing to separate method 2021-08-13 20:16:05 +02:00
Bond-009
04571e93f8 Merge pull request #6339 from richlander/mediabrowser-controller-entities 2021-08-13 18:07:19 +02:00
Bond-009
d639b030ac Merge pull request #6335 from richlander/media-provides-analysis-fixes 2021-08-13 17:56:39 +02:00
Nyanmisaka
a84dc794c6 Merge branch 'master' into tonemap-overlay 2021-08-13 15:01:06 +08:00
Bond-009
e33901b9f5 Merge pull request #6267 from Bond-009/minor15
Minor fixes
2021-08-13 01:31:42 +02:00
Bond-009
e5a29824e5 Merge branch 'master' into minor15 2021-08-13 00:33:18 +02:00
Bond_009
4c1286fd24 Address comment 2021-08-12 21:38:54 +02:00
Bond-009
f83a5bb08e Merge pull request #6414 from richlander/mediabrowser-controller-mediaencoding 2021-08-12 17:30:30 +02:00
Rich Lander
ad6f27143f Update MediaBrowser.Controller/Entities/Folder.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-08-11 13:38:23 -07:00
Rich Lander
1ac2524844 Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-08-11 13:37:46 -07:00
ankenyr
78bbfca990 Separating out error cases from good cases. 2021-08-11 09:56:36 -07:00
Claus Vium
8458960e57 Merge pull request #6377 from richlander/optimize-docker
Optimize Dockerfiles
2021-08-11 18:29:07 +02:00
Joshua M. Boniface
ac8a768747 Merge pull request #6394 from h1dden-da3m0n/ci/noisy-container 2021-08-11 12:06:10 -04:00
Claus Vium
0216c452f1 Merge pull request #6025 from daullmer/localization-test 2021-08-11 13:14:39 +02:00
Claus Vium
3a47ad11e9 Apply suggestions from code review 2021-08-11 12:57:31 +02:00
Claus Vium
a29f702432 Merge pull request #6258 from gnuyent/feat/hardware-encode-status 2021-08-11 12:54:27 +02:00
Claus Vium
08152d2a98 Apply suggestions from code review 2021-08-11 12:50:35 +02:00
Claus Vium
408d5c78a9 Merge pull request #6262 from MrTimscampi/scanner-prefer-original-date 2021-08-11 12:39:05 +02:00
Julien Machiels
8d5b87025b Update tests/Jellyfin.MediaEncoding.Tests/Probing/ProbeResultNormalizerTests.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-08-11 09:42:40 +02:00
Claus Vium
c2de5f2c23 Merge pull request #6412 from richlander/mediabrowser-controller-session 2021-08-11 08:37:18 +02:00
Rich Lander
32d27d71a8 Fix warnings in MediaBrowser.Controller/MediaEncoding directory 2021-08-10 14:29:48 -07:00
David Ullmer
d7c9b14175 Apply suggestions from code review 2021-08-10 20:28:57 +02:00
Bond-009
589ad56a8c Merge pull request #6409 from jellyfin/dependabot/nuget/UTF.Unknown-2.4.0
Bump UTF.Unknown from 2.3.0 to 2.4.0
2021-08-10 20:00:48 +02:00
David Ullmer
45e0f7893b Merge remote-tracking branch 'upstream/master' into localization-test 2021-08-10 14:03:21 +02:00
David Ullmer
b5880c2680 Minor improvements 2021-08-10 14:03:15 +02:00
David Ullmer
6b61b50b53 Revert "Refactor LocalizationManager and remove dead method"
This reverts commit db2b53a4b5.
2021-08-10 13:39:51 +02:00
David Ullmer
77aee515a2 Use correct string comparison 2021-08-10 13:37:33 +02:00
Erdinc
854bb79ae8 Translated using Weblate (Turkish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/tr/
2021-08-10 05:29:48 -04:00
Rich Lander
9951a51395 Fix warnings in MediaBrowser.Controller/Session 2021-08-09 19:47:26 -07:00
Rich Lander
cb990ae973 Update per feedback 2021-08-09 18:52:38 -07:00
Rich Lander
870887046c Update MediaBrowser.Providers/Plugins/Tmdb/TmdbClientManager.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-08-09 18:50:41 -07:00
ankenyr
67f81e8c07 Changing test name to be more descrptive. 2021-08-09 11:27:19 -07:00
Rob
579ed5c1fc Update tests/Jellyfin.Server.Implementations.Tests/Sorting/AiredEpisodeOrderComparerTests.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-08-09 11:27:40 -07:00
dependabot[bot]
c4d8e6f056 Bump UTF.Unknown from 2.3.0 to 2.4.0
Bumps [UTF.Unknown](https://github.com/CharsetDetector/UTF-unknown) from 2.3.0 to 2.4.0.
- [Release notes](https://github.com/CharsetDetector/UTF-unknown/releases)
- [Commits](https://github.com/CharsetDetector/UTF-unknown/compare/v2.3...v2.4)

---
updated-dependencies:
- dependency-name: UTF.Unknown
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-09 12:00:53 +00:00
millallo
55389453be Translated using Weblate (Italian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/it/
2021-08-08 13:29:50 -04:00
Julien Machiels
6c2cbafee0 Update MediaBrowser.MediaEncoding/Probing/FFProbeHelpers.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-08-08 16:37:35 +02:00
Bond-009
ab88e30cfa Merge pull request #6404 from crobibero/redirect-base-url
Fix redirect logic if request path is exactly the base url
2021-08-08 14:53:19 +02:00
ankenyr
5eac267569 Reverting sln file. 2021-08-07 15:55:52 -07:00
ankenyr
8e6436d8dd Removing moved files. 2021-08-07 15:36:23 -07:00
ankenyr
8b4d9339cf Changing namespace to be within Jellyfin.Server.Implementations.Tests 2021-08-07 15:07:12 -07:00
MrTimscampi
924dfe1db0 Add test for year-only parsing for FFProbe 2021-08-07 22:24:10 +02:00
MrTimscampi
ba609aefea Attempt to parse YYYY format dates in GetDictionaryDateTime
DateTime.TryParse doesn't properly parse year-only dates, so parsing results from FFProbe sometimes returns null (for example, some music tagged with Beets has yyyy format dates for release dates).
As a result, Jellyfin would previously no get the date from the FFProbe results.
This adds DateTime.TryParseExact with a format of 'yyyy' as a fallback, to attempt to properly parse the value, even if it's only a year.
2021-08-07 22:11:32 +02:00
MrTimscampi
534e088105 Prefer original data when getting premiere date from ffprobe 2021-08-07 22:02:43 +02:00
Cody Robibero
bdbac12d4f Update Jellyfin.Server/Middleware/BaseUrlRedirectionMiddleware.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-08-07 09:06:31 -06:00
Cody Robibero
a7585dd2d6 Fix redirect logic if request path is exactly the base url 2021-08-07 07:36:45 -06:00
ankenyr
14a53fe402 Adding tests for AiredEpisodeOrderComparer. 2021-08-06 23:12:29 -07:00
Anthony Lavado
3ee0c68cb7 Merge pull request #6402 from jellyfin/README-links
Add sponsor links
2021-08-06 14:49:31 -04:00
Anthony Lavado
439ae4ec6f Add sponsor links
Adds a horizontal line after project description and the rest of the readme, and another at the end before including DO and JB sponsorship links with images.
2021-08-06 14:32:04 -04:00
Bond-009
971c2bc7de Merge pull request #6328 from Bond-009/epparser
Improve episode parser
2021-08-06 17:29:34 +02:00
MrChip53
eaa5575b23 Add comment 2021-08-06 10:07:50 -05:00
Chris Simoni
883d28d03d Update Emby.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-08-06 08:10:28 -05:00
h1dden-da3m0n
ed2a637ce3 fix missing build dependencies
needed by the build sh-scripts
2021-08-06 01:48:06 +02:00
sushilicious
6bc7d78f6f Update Emby.Naming/Video/CleanStringParser.cs
Cleaned up code a bit

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-08-05 13:09:42 -07:00
sushilicious
b2a10609af Made CleanStringParser go through regexps only once 2021-08-04 23:25:54 -07:00
sushilicious
7fdef4b82b Merge branch 'master' of https://github.com/jellyfin/jellyfin into HEAD 2021-08-04 23:15:48 -07:00
MrChip53
6c42d2345d Properly stream M3U file over http 2021-08-04 19:19:03 -05:00
h1dden-da3m0n
ea798de61f remove packages bundled in dotnet/sdk base image 2021-08-05 00:25:58 +02:00
h1dden-da3m0n
6a3ec7b479 change OS packaging images to be quiet
also uses the base dotnet/sdk image where possible
2021-08-04 23:34:12 +02:00
Bond_009
60053c7f3d Fix log messages 2021-08-04 18:49:54 +02:00
Bond_009
442dc10aac ApiServiceCollectionExtensions.AddProxyAddresses: Add more tests 2021-08-04 18:43:26 +02:00
Bond-009
2521a13d7d Merge pull request #6388 from Bond-009/minor16
Minor improvements
2021-08-04 18:40:13 +02:00
Bond_009
f1f72c3060 Minor improvements 2021-08-04 14:40:09 +02:00
Cody Robibero
398ca85944 Merge remote-tracking branch 'upstream/master' into baseitemkind-fixes 2021-08-04 06:24:58 -06:00
Cody Robibero
d212b6fb08 Clean test 2021-08-04 06:24:25 -06:00
Bond-009
1b8eb1aefe Merge pull request #6386 from richlander/mediabrowser-controller-livetv
Fix warnings in MediaBrowser.Controller/LiveTv
2021-08-04 13:13:34 +02:00
Nyanmisaka
d4f09c6c9b Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-08-04 16:25:17 +08:00
Rich Lander
06679eeebf Fix warnings for MediaBrowser.Controller/LiveTv 2021-08-03 21:13:49 -07:00
sushilicious
460fe76467 Merge branch 'master' of https://github.com/jellyfin/jellyfin 2021-08-03 14:30:20 -07:00
sushilicious
26f8b501e7 Made CleanStringParser more robust
Now it can handle [...] at beginning of string
2021-08-03 14:19:36 -07:00
Bond_009
4e9fbabef2 Enable nullable for DlnaManager 2021-08-03 17:54:55 +02:00
Bond-009
008c6a843e Merge pull request #6342 from richlander/mediabrowser-controller-library 2021-08-03 17:06:25 +02:00
New Jorciks
fc5841242e Translated using Weblate (Latvian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/lv/
2021-08-03 08:29:49 -04:00
Winnie
8997d7ffc4 Translated using Weblate (Spanish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/es/
2021-08-03 08:29:49 -04:00
Max
a8c47159ea Translated using Weblate (Danish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/da/
2021-08-03 08:29:49 -04:00
joey
0c9b64de4b optimize episode parser 2021-08-03 13:25:23 +08:00
Rich Lander
3daf9e5afe Optimize Dockerfiles 2021-08-02 13:15:51 -07:00
Bond-009
0c9f824d0a Merge pull request #6375 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore.ReDoc-6.1.5
Bump Swashbuckle.AspNetCore.ReDoc from 6.1.4 to 6.1.5
2021-08-02 19:16:51 +02:00
dependabot[bot]
16ae8cd200 Bump Swashbuckle.AspNetCore.ReDoc from 6.1.4 to 6.1.5
Bumps [Swashbuckle.AspNetCore.ReDoc](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.1.4 to 6.1.5.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.1.4...v6.1.5)

---
updated-dependencies:
- dependency-name: Swashbuckle.AspNetCore.ReDoc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-02 17:15:58 +00:00
Bond-009
21e108ee84 Merge pull request #6376 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore-6.1.5
Bump Swashbuckle.AspNetCore from 6.1.4 to 6.1.5
2021-08-02 19:15:14 +02:00
dependabot[bot]
3254b5f8cb Bump Swashbuckle.AspNetCore from 6.1.4 to 6.1.5
Bumps [Swashbuckle.AspNetCore](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.1.4 to 6.1.5.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.1.4...v6.1.5)

---
updated-dependencies:
- dependency-name: Swashbuckle.AspNetCore
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-02 12:00:57 +00:00
TheFeelTrain
9f378feb82 Translated using Weblate (Japanese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ja/
2021-07-31 19:29:46 -04:00
Ali Amer
eadad73ee7 Translated using Weblate (Arabic)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ar/
2021-07-31 19:29:45 -04:00
Rich Lander
47da13613b Merge branch 'master' into media-provides-analysis-fixes 2021-07-30 10:44:43 -07:00
Sverre
0ee74b293d Translated using Weblate (Norwegian Bokmål)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nb_NO/
2021-07-30 05:29:48 -04:00
Maxim Ivanov
448ce64a56 Translated using Weblate (Bulgarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/bg/
2021-07-30 05:29:48 -04:00
Bond-009
00c90cfb21 Merge pull request #6354 from Bond-009/nullable4
Enable nullable in more files
2021-07-30 09:49:40 +02:00
Rich Lander
c07e83fdf8 Invert code and style analysis configuration (#6334)
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-07-30 09:49:28 +02:00
Bond-009
92c2d20609 Merge pull request #6355 from Bond-009/opt
EnsureLibraryFolder: Minor optimization
2021-07-27 21:46:30 +02:00
Rich Lander
e72868f72b Update AggregateFolder.cs 2021-07-26 18:13:37 -07:00
Rich Lander
a0678a9261 Update ILibraryManager.cs 2021-07-26 17:58:56 -07:00
Rich Lander
092e7c91b4 Update ILibraryManager.cs 2021-07-26 17:07:47 -07:00
Rich Lander
6a005f6a4f Update ILibraryManager.cs 2021-07-26 16:40:05 -07:00
Rich Lander
dfaf89a681 Update ILibraryManager.cs 2021-07-26 16:31:25 -07:00
Rich Lander
5110835031 Update ILibraryManager.cs 2021-07-26 16:19:50 -07:00
Rich Lander
0bb6999d59 Update ILibraryManager.cs 2021-07-26 16:02:17 -07:00
Bond_009
a13a569ca4 EnsureLibraryFolder: Minor optimization 2021-07-26 23:25:21 +02:00
Bond_009
501de7b6dc Enable nullable in more files 2021-07-26 23:02:32 +02:00
Rich Lander
3e0aab390a Merge branch 'master' into mediabrowser-controller-entities 2021-07-26 13:08:27 -07:00
Bond-009
85e705d09e Merge pull request #6352 from jellyfin/dependabot/nuget/coverlet.collector-3.1.0
Bump coverlet.collector from 3.0.3 to 3.1.0
2021-07-26 21:26:12 +02:00
dependabot[bot]
33359d45be Bump coverlet.collector from 3.0.3 to 3.1.0
Bumps [coverlet.collector](https://github.com/coverlet-coverage/coverlet) from 3.0.3 to 3.1.0.
- [Release notes](https://github.com/coverlet-coverage/coverlet/releases)
- [Commits](https://github.com/coverlet-coverage/coverlet/commits/v3.1.0)

---
updated-dependencies:
- dependency-name: coverlet.collector
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-26 12:00:45 +00:00
nyanmisaka
19e3c38fa8 Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-07-26 03:09:44 +08:00
SaddFox
b024059f71 Translated using Weblate (Slovenian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sl/
2021-07-25 09:29:45 -04:00
Bond-009
439916f4ff Merge pull request #6336 from richlander/mediabrowser-controller-channels
Fix warning in MediaBrowser.Controllers/Channels
2021-07-25 14:57:45 +02:00
Bond-009
311774e75f Merge pull request #6338 from richlander/mediabrowser-controller-providers
Fix warnings for MediaBrowser.Controller/Providers directory
2021-07-25 14:57:14 +02:00
Bond-009
90aba79fb9 Merge pull request #6346 from richlander/mediabrowser-controller-drawing
Fix warnings in MediaBrowser.Controller/Drawing
2021-07-25 14:55:59 +02:00
Bond-009
5e2975661d Merge pull request #6344 from richlander/update-sdk 2021-07-25 14:41:26 +02:00
Claus Vium
50b41dd4e7 Merge pull request #6329 from Bond-009/restests 2021-07-25 14:21:00 +02:00
Rich Lander
9aebb86a68 Fix warnings in MediaBrowser.Controller/Drawing 2021-07-24 20:33:58 -07:00
Rich Lander
e91a2b1085 Update to later .NET SDK 2021-07-24 16:42:02 -07:00
Rich Lander
5920f68ca9 Fix warnings in MediaBrowser.Controller/Library 2021-07-24 10:58:50 -07:00
nyanmisaka
3beda02d92 add support for cuda tonemap and overlay 2021-07-25 00:52:16 +08:00
nyanmisaka
aaab6a3518 add tests for FFmpeg 4.4 and 4.3.2 2021-07-25 00:52:03 +08:00
Bond-009
f3b51dd77b Update tests/Jellyfin.Model.Tests/Entities/MediaStreamTests.cs
Co-authored-by: Max Rumpf <max.rumpf1998@gmail.com>
2021-07-24 14:03:08 +02:00
Rich Lander
0ce7a15534 Fix more warnings 2021-07-23 16:36:27 -07:00
Rich Lander
a16e66615c Update MediaBrowser.Controller/Entities/AggregateFolder.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-07-23 14:19:48 -07:00
Rich Lander
32616d15f2 Update MediaBrowser.Controller/Entities/AggregateFolder.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-07-23 14:19:44 -07:00
Rich Lander
a7cc77e7fa Fix partial set of MediaBrowser.Controller/Entities warnings 2021-07-23 13:49:18 -07:00
Claus Vium
5a9bd712b3 Merge pull request #6296 from Bond-009/oscheck
Improve platform checks
2021-07-23 20:54:13 +02:00
Rich Lander
717ff4ec62 Fix warnings for MediaBrowser.Controller/Providers directory 2021-07-23 09:16:48 -07:00
Rich Lander
67efed39f2 Fix warning in m-b/channels 2021-07-22 20:37:05 -07:00
Rich Lander
927b003143 Fix remaining MediaBrowser.Providers warnings 2021-07-22 20:16:38 -07:00
Rich Lander
fb92eab69b Fix analysis issues 2021-07-22 17:33:19 -07:00
Niels van Velzen
2cd1c70e55 Add OpenAPI workflow 2021-07-22 21:19:10 +02:00
Bond_009
0512f74459 Add tests for GetResolutionText 2021-07-20 23:04:49 +02:00
Bond-009
0e2a6f8216 Merge pull request #6279 from Bond-009/tests8 2021-07-20 21:24:19 +02:00
Bond-009
c22582b5aa Merge pull request #6281 from crobibero/controller-warn-04 2021-07-20 21:24:08 +02:00
Bond-009
c817c63696 Merge pull request #6256 from MrTimscampi/better-resolution-text 2021-07-20 19:08:37 +02:00
Shin Yunho
0f0c62be68 Translated using Weblate (Korean)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ko/
2021-07-20 12:29:43 -04:00
Bond_009
ef3b651aad Improve episode parser 2021-07-20 00:25:30 +02:00
Bond-009
7d9a1269f1 Merge pull request #6325 from jellyfin/dependabot/github_actions/alex-page/github-project-automation-plus-0.8.1
Bump alex-page/github-project-automation-plus from 0.7.1 to 0.8.1
2021-07-19 20:07:01 +02:00
Joshua M. Boniface
71158dfb3f Merge pull request #6326 from crobibero/5.0.8
Update to dotnet 5.0.8
2021-07-19 13:25:41 -04:00
Bond-009
95832e4d2f Merge pull request #6320 from jellyfin/dependabot/nuget/Serilog.Sinks.Console-4.0.0
Bump Serilog.Sinks.Console from 3.1.1 to 4.0.0
2021-07-19 19:25:07 +02:00
Claus Vium
d55b152e86 Merge pull request #6297 from Bond-009/parser
Fix episode parser
2021-07-19 17:46:40 +02:00
Cody Robibero
de12ee5dba Update to dotnet 5.0.8 2021-07-19 08:08:02 -06:00
dependabot[bot]
dddf216ec8 Bump alex-page/github-project-automation-plus from 0.7.1 to 0.8.1
Bumps [alex-page/github-project-automation-plus](https://github.com/alex-page/github-project-automation-plus) from 0.7.1 to 0.8.1.
- [Release notes](https://github.com/alex-page/github-project-automation-plus/releases)
- [Commits](https://github.com/alex-page/github-project-automation-plus/compare/v0.7.1...v0.8.1)

---
updated-dependencies:
- dependency-name: alex-page/github-project-automation-plus
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-19 12:03:27 +00:00
dependabot[bot]
cd541f105c Bump Serilog.Sinks.Console from 3.1.1 to 4.0.0
Bumps [Serilog.Sinks.Console](https://github.com/serilog/serilog-sinks-console) from 3.1.1 to 4.0.0.
- [Release notes](https://github.com/serilog/serilog-sinks-console/releases)
- [Commits](https://github.com/serilog/serilog-sinks-console/compare/v3.1.1...v4.0.0)

---
updated-dependencies:
- dependency-name: Serilog.Sinks.Console
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-19 12:00:49 +00:00
Fawrrax
e36345b9f2 Translated using Weblate (Finnish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fi/
2021-07-18 15:29:42 -04:00
Bond-009
ea7c7ea48c Merge pull request #5864 from DeeJayBro/return-on-error
Fix ArgumentOutOfRangeException when getting PostedPlaybackInfo
2021-07-17 20:54:07 +02:00
Jelly Don
0e8537a6a5 Translated using Weblate (Albanian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sq/
2021-07-17 11:29:43 -04:00
SaddFox
0c26fdac37 Translated using Weblate (Slovenian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sl/
2021-07-17 11:29:43 -04:00
Joost
1dde41902a Translated using Weblate (Dutch)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nl/
2021-07-17 11:29:43 -04:00
memnos
de9c367bc3 Translated using Weblate (Italian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/it/
2021-07-17 11:29:43 -04:00
Vorboid
eb9244746c Translated using Weblate (English (United Kingdom))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/en_GB/
2021-07-17 11:29:43 -04:00
Albert Chaos
5ba93da8b6 Translated using Weblate (Catalan)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ca/
2021-07-17 11:29:43 -04:00
Bond-009
430b28a8f9 Merge pull request #6298 from crobibero/instantmix 2021-07-17 00:42:54 +02:00
Cody Robibero
b44f191d54 Remove obsolete attribute, clean controller name 2021-07-16 08:58:04 -06:00
Claus Vium
313e5ce1af Merge pull request #6304 from Bond-009/cleanstring
Add h265 to CleanStrings
2021-07-16 13:18:21 +02:00
DeeJayBro
0ad62e7af9 Fix ArgumentOutOfRangeException when getting PostedPlaybackInfo 2021-07-16 11:48:08 +02:00
Bond_009
b9b4f3aa85 Add h265 to CleanStrings 2021-07-15 16:20:50 +02:00
Bond_009
b202bfebce Fix episode parser 2021-07-15 16:05:57 +02:00
Bill Thornton
da1dafe4cc Merge pull request #6303 from Artiume/patch-4
update bug report to ask for hwaccel
2021-07-15 10:05:50 -04:00
artiume
8af7e5fe3a update bug report to ask for hwaccel 2021-07-15 09:50:38 -04:00
Anthony Lavado
607df7899f Merge pull request #6300 from thornbill/update-stale 2021-07-14 15:25:46 -04:00
Bill Thornton
75551f04ca Disable automatic closing of PRs 2021-07-14 14:37:48 -04:00
Oatavandi
273afe8a52 Translated using Weblate (Malayalam)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ml/
2021-07-14 04:29:44 -04:00
danielxb-ar
7f06cdc83f Translated using Weblate (Spanish (Argentina))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/es_AR/
2021-07-14 04:29:44 -04:00
nextlooper42
74d45636b5 Translated using Weblate (Slovak)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sk/
2021-07-14 04:29:44 -04:00
jtasseroul
1d4d508f30 Translated using Weblate (French)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr/
2021-07-14 04:29:44 -04:00
Lukáš Kucharczyk
5debcf0763 Translated using Weblate (Czech)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cs/
2021-07-14 04:29:44 -04:00
WWWesten
39bc4bf9e3 Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2021-07-14 04:29:44 -04:00
wolong gl
87ba51f6e4 Translated using Weblate (Chinese (Simplified))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zh_Hans/
2021-07-14 04:29:44 -04:00
WWWesten
93a6f13a3d Translated using Weblate (Russian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ru/
2021-07-14 04:29:44 -04:00
Larvitar
e977665e5d Translated using Weblate (Polish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pl/
2021-07-14 04:29:44 -04:00
danielxb-ar
09904857b5 Translated using Weblate (Spanish (Latin America))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/es_419/
2021-07-14 04:29:44 -04:00
Csaba
ab85baf6eb Translated using Weblate (Hungarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hu/
2021-07-14 04:29:44 -04:00
Oatavandi
502c656874 Translated using Weblate (Tamil)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ta/
2021-07-14 04:29:44 -04:00
Moritz
31c65058a4 Translated using Weblate (German)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/de/
2021-07-14 04:29:43 -04:00
hoanghuy309
927ec5a363 Translated using Weblate (Vietnamese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/vi/
2021-07-14 04:29:43 -04:00
Patrick Barron
60ce0c9fa9 Add dto for device options 2021-07-13 19:30:11 -04:00
Bond-009
db579e6eee Merge pull request #6292 from jellyfin/dependabot/nuget/prometheus-net.AspNetCore-4.2.0 2021-07-13 01:28:07 +02:00
Bond-009
62536196df Merge pull request #6295 from jellyfin/dependabot/nuget/SkiaSharp.NativeAssets.Linux-2.80.3 2021-07-13 01:27:56 +02:00
Cody Robibero
24c861c23b Remove extra endpoint 2021-07-12 17:22:01 -06:00
dependabot[bot]
00b1f96ed0 Bump prometheus-net.AspNetCore from 4.1.1 to 4.2.0
Bumps [prometheus-net.AspNetCore](https://github.com/prometheus-net/prometheus-net) from 4.1.1 to 4.2.0.
- [Release notes](https://github.com/prometheus-net/prometheus-net/releases)
- [Changelog](https://github.com/prometheus-net/prometheus-net/blob/master/History)
- [Commits](https://github.com/prometheus-net/prometheus-net/compare/v4.1.1...v4.2.0)

---
updated-dependencies:
- dependency-name: prometheus-net.AspNetCore
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 21:54:28 +00:00
dependabot[bot]
903628af76 Bump SkiaSharp.NativeAssets.Linux from 2.80.2 to 2.80.3
Bumps SkiaSharp.NativeAssets.Linux from 2.80.2 to 2.80.3.

---
updated-dependencies:
- dependency-name: SkiaSharp.NativeAssets.Linux
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 21:54:28 +00:00
Bond-009
b20977dc25 Merge pull request #6289 from Bond-009/warn33
Fix some warnings
2021-07-12 23:53:52 +02:00
Bond-009
34fba1a787 Merge pull request #6294 from jellyfin/dependabot/nuget/SkiaSharp-2.80.3 2021-07-12 23:53:29 +02:00
Bond-009
03279d711f Merge pull request #6293 from jellyfin/dependabot/nuget/prometheus-net-4.2.0
Bump prometheus-net from 4.1.1 to 4.2.0
2021-07-12 23:53:17 +02:00
Bond_009
8528e9bddb Improve platform checks 2021-07-12 20:21:51 +02:00
dependabot[bot]
26f6c5520c Bump SkiaSharp from 2.80.2 to 2.80.3
Bumps SkiaSharp from 2.80.2 to 2.80.3.

---
updated-dependencies:
- dependency-name: SkiaSharp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 12:00:57 +00:00
dependabot[bot]
e757c58e86 Bump prometheus-net from 4.1.1 to 4.2.0
Bumps [prometheus-net](https://github.com/prometheus-net/prometheus-net) from 4.1.1 to 4.2.0.
- [Release notes](https://github.com/prometheus-net/prometheus-net/releases)
- [Changelog](https://github.com/prometheus-net/prometheus-net/blob/master/History)
- [Commits](https://github.com/prometheus-net/prometheus-net/compare/v4.1.1...v4.2.0)

---
updated-dependencies:
- dependency-name: prometheus-net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 12:00:56 +00:00
Claus Vium
951a9f39c0 Merge pull request #6240 from Bond-009/quickconnecttests
Add tests for QuickConnectManager
2021-07-12 09:39:11 +02:00
Claus Vium
b6006742fa Merge pull request #6290 from Bond-009/update2
Remove old "has update available" code
2021-07-12 09:34:34 +02:00
Bond_009
915141f196 Fix some warnings 2021-07-11 22:51:36 +02:00
Bond_009
b91c4be74c Remove old "has update available" code
This is the job of a package manager (or maybe the tray app for windows)
2021-07-11 22:42:02 +02:00
Bond_009
8b1a211081 MediaInfoControllerTests: Check Content-Length 2021-07-11 22:06:01 +02:00
Brandon Nguyen
c6bac31042 Add int values to HardwareEncodingType enum 2021-07-11 11:59:52 -07:00
Bond-009
203c46de33 Merge pull request #6283 from natedawg/master 2021-07-11 13:07:57 +02:00
natedawg
6957bc9a12 Fix spelling of artist K/DA in splitting whitelist 2021-07-10 16:26:42 -07:00
Cody Robibero
65f8d8c0cd [CA1801] Parameter is never used. Remove the parameter or use it in the method body. 2021-07-10 10:09:02 -06:00
Cody Robibero
4281722d5a Fix [SA1629] Documentation text should end with a period 2021-07-10 10:05:41 -06:00
Bond-009
61141314e8 Merge pull request #6280 from MrTimscampi/audio-exceptions
Add more artist names to the splitting whitelist
2021-07-10 17:39:06 +02:00
MrTimscampi
020c0fc4cb Add more artist names to the splitting whitelist 2021-07-10 17:09:44 +02:00
Bond_009
abbcf5e4f7 Add tests for Playback/BitrateTest endpoint 2021-07-10 15:09:56 +02:00
Bond-009
c47390914c Merge pull request #6276 from crobibero/bitrate-test 2021-07-10 15:08:47 +02:00
Bond-009
94d5d630a8 Merge pull request #6115 from Maxr1998/refactor-proberesultnormalizer
Refactor ProbeResultNormalizer
2021-07-10 14:05:16 +02:00
Cody Robibero
43b0d0fa95 Fix error message, use range parameters 2021-07-10 05:34:15 -06:00
Tim040
ff010c16aa Translated using Weblate (Dutch)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nl/
2021-07-09 23:45:39 -04:00
aqilisk
0f57959c55 Translated using Weblate (Malay)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ms/
2021-07-09 23:45:39 -04:00
Kachelkaiser
7bf9cc6887 Translated using Weblate (German)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/de/
2021-07-09 23:45:39 -04:00
Benito Sebe
faa3ec14e9 Translated using Weblate (Galician)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/gl/
2021-07-09 23:45:39 -04:00
Rajmond Burgaj
ff1a78a82f Translated using Weblate (Albanian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sq/
2021-07-09 23:45:39 -04:00
Fabrício Jácome
f282f6f924 Translated using Weblate (Portuguese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pt/
2021-07-09 23:45:39 -04:00
Hannes
7a2791e904 Translated using Weblate (Dutch)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nl/
2021-07-09 23:45:39 -04:00
Cody Robibero
e7022cc3fc Use asp validation and increase max size 2021-07-09 09:07:22 -06:00
Bond-009
d8b9f4dc2d Merge pull request #6274 from thornbill/restore-max-resolution-params
Restore max width and height params
2021-07-09 13:44:27 +02:00
Maxr1998
11a5551218 Refactor ProbeResultNormalizer
Improve code structure and readability
2021-07-09 02:06:38 +02:00
Bill Thornton
3090971feb Restore max width and height params 2021-07-08 14:53:56 -04:00
Bond-009
40c73e96a9 Merge pull request #6268 from Bond-009/redirecttest
Add test for RobotsRedirectionMiddleware
2021-07-08 16:16:04 +02:00
Brandon Nguyen
d0c5e25ec0 Use nullable enum type instead of strings 2021-07-05 16:52:52 -07:00
Bond_009
e19dce3c53 Add test for RobotsRedirectionMiddleware 2021-07-06 01:07:10 +02:00
Bond_009
5bd8ba886a Add tests for QuickConnectManager 2021-07-06 00:02:54 +02:00
Bond_009
1f99c9b90c Minor fixes 2021-07-06 00:01:33 +02:00
Bond-009
a9aeb6570b Merge pull request #6233 from Bond-009/warn32
MediaBrowser.Providers: Remove some warnings
2021-07-05 23:59:08 +02:00
MrTimscampi
3b8947aba6 Add using keywords to non-disposed objects in BuildThumbCollageBitmap 2021-07-05 19:41:10 +02:00
MrTimscampi
a25c3d1cda Remove usage of this in GetResolutionText 2021-07-04 10:22:17 +02:00
Brandon Nguyen
df17c67f11 Use hardware encoding string over boolean 2021-07-03 15:29:07 -07:00
Brandon Nguyen
7e3c94d094 Add hardware encoding status to playback data
Resolves #6087
2021-07-03 01:12:09 -07:00
MrTimscampi
8a65a6dfc3 Use artist backdrop for generated library image 2021-07-03 02:50:28 +02:00
MrTimscampi
bcae195cc3 Refactor GetResolutionText
This improves GetResolutionText a little by making it easier to read and better parsing resolutions (Also adding a few new ones like PAL resolutions and 8K)

Co-authored-by: Maxr1998 <max.rumpf1998@gmail.com>
2021-07-03 01:45:24 +02:00
Bond-009
1dcf03e33c Merge pull request #6236 from Bond-009/quickconnect
Fix QuickConnect
2021-06-30 01:05:24 +02:00
Bond-009
539dc2ba82 Merge pull request #6241 from jellyfin/dependabot/nuget/Serilog.Sinks.Async-1.5.0
Bump Serilog.Sinks.Async from 1.4.0 to 1.5.0
2021-06-28 21:18:24 +02:00
Bond-009
3100ecd145 Merge pull request #6242 from jellyfin/dependabot/nuget/Serilog.Sinks.File-5.0.0
Bump Serilog.Sinks.File from 4.1.0 to 5.0.0
2021-06-28 21:17:30 +02:00
dependabot[bot]
b434b16ddc Bump Serilog.Sinks.File from 4.1.0 to 5.0.0
Bumps [Serilog.Sinks.File](https://github.com/serilog/serilog-sinks-file) from 4.1.0 to 5.0.0.
- [Release notes](https://github.com/serilog/serilog-sinks-file/releases)
- [Changelog](https://github.com/serilog/serilog-sinks-file/blob/dev/CHANGES.md)
- [Commits](https://github.com/serilog/serilog-sinks-file/compare/v4.1.0...v5.0.0)

---
updated-dependencies:
- dependency-name: Serilog.Sinks.File
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-28 12:00:58 +00:00
dependabot[bot]
d933262c2b Bump Serilog.Sinks.Async from 1.4.0 to 1.5.0
Bumps [Serilog.Sinks.Async](https://github.com/serilog/serilog-sinks-async) from 1.4.0 to 1.5.0.
- [Release notes](https://github.com/serilog/serilog-sinks-async/releases)
- [Commits](https://github.com/serilog/serilog-sinks-async/compare/v1.4.0...v1.5.0)

---
updated-dependencies:
- dependency-name: Serilog.Sinks.Async
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-28 12:00:51 +00:00
Julien Voisin
66e452422c Add a LGTM.com badge 2021-06-28 06:15:07 +00:00
Patrick Barron
06d682c296 Merge remote-tracking branch 'origin/authenticationdb-efcore' into authenticationdb-efcore 2021-06-27 16:46:09 -04:00
Patrick Barron
af2e7aec2e Add missing service registration for IAuthenticationManager 2021-06-27 16:45:41 -04:00
Patrick Barron
fdba71e133 Fix Api Key authentication 2021-06-27 16:44:34 -04:00
Patrick Barron
bbac9ff67e GetDeviceOptions always returns an instance of DeviceOptions 2021-06-27 16:42:26 -04:00
Bond_009
4e80eac5f3 Fix QuickConnect 2021-06-27 18:20:37 +02:00
Bond_009
cf061f7563 MediaBrowser.Providers: Remove some warnings 2021-06-27 02:00:27 +02:00
Patrick Barron
5d1139ec62 Update Jellyfin.Server.Implementations/Devices/DeviceManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-06-26 15:17:57 -04:00
Patrick Barron
befedaf6fc Update Emby.Server.Implementations/Session/SessionManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-06-25 21:13:38 -04:00
Orry Verducci
d5b63092ed Add H.264 MBAFF interlace check
Use the codec time base to determine if a MBAFF coded H.264 file is interlaced.
2021-06-24 17:51:35 +01:00
Patrick Barron
dbfd30ec4c Migrate DeviceOptions 2021-06-24 09:38:37 -04:00
Patrick Barron
d3e02e918d Merge pull request #166 from crobibero/authdb-qc
Fix QuickConnect interation with AuthenticationDb
2021-06-24 06:21:41 -04:00
crobibero
397868be95 Fix issues with QuickConnect and AuthenticationDb 2021-06-23 21:07:08 -06:00
Patrick Barron
ae878fa051 Merge branch 'master' into authenticationdb-efcore
# Conflicts:
#	Emby.Server.Implementations/QuickConnect/QuickConnectManager.cs
#	Emby.Server.Implementations/Session/SessionManager.cs
#	Jellyfin.Server.Implementations/Security/AuthorizationContext.cs
2021-06-23 20:22:12 -04:00
Claus Vium
9405604913 Merge pull request #6174 from Bond-009/diacritics
Remove our own RemoveDiacritcs string extension in favor of Diacritics.Net
2021-06-22 12:25:59 +02:00
Bond_009
981cf4cfa0 Remove our own RemoveDiacritcs string extension in favor of Diacritics.Net 2021-06-22 09:48:40 +02:00
Claus Vium
a41065a248 Merge pull request #6200 from nielsvanvelzen/fix-quickconnect
Refactor Quick Connect
2021-06-22 09:43:14 +02:00
Niels van Velzen
7d46ca9317 Refactor Quick Connect 2021-06-22 09:13:14 +02:00
Claus Vium
f50bdb0f32 Merge pull request #6204 from Bond-009/extensions 2021-06-22 07:38:08 +02:00
Patrick Barron
f96722fa74 Fix migration 2021-06-21 19:06:21 -04:00
Patrick Barron
3884837513 Convert method group to lambda in DeviceManager 2021-06-21 19:01:34 -04:00
Patrick Barron
784f29f753 Use named tuple for QuickConnect 2021-06-21 19:00:24 -04:00
Patrick Barron
544e059395 Revert unintended change in SchedulesDirect 2021-06-21 18:57:59 -04:00
crobibero
39e84ba4ab Suggestions from review 2021-06-21 16:06:54 -06:00
Cody Robibero
fa7b7b84e7 Update CONTRIBUTORS.md
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-06-21 16:06:25 -06:00
Bond_009
db716bde95 Jellyfin.Extensions: Enable analyzers for release mode 2021-06-22 00:01:27 +02:00
Joshua M. Boniface
026d8d28b7 Merge pull request #6210 from bellegarde-c/master
debian: Add maxcpucount option to override_dh_auto_build. Fix #5234
2021-06-21 17:08:39 -04:00
Cédric Bellegarde
46665168a7 debian: Add maxcpucount option to override_dh_auto_build. Fix #5234 2021-06-21 11:39:51 +02:00
Claus Vium
96b2887a15 Merge pull request #6208 from h1dden-da3m0n/ci/no-automation-in-forks 2021-06-21 08:49:37 +02:00
h1dden-da3m0n
44b54a2637 disable project automation in forks
these workflows always fail in forks due to missing tokens etc.
2021-06-20 19:42:52 +02:00
crobibero
ac76519081 Enhance BaseItemKindTests 2021-06-20 07:15:46 -06:00
crobibero
790b284184 Add missing BaseItemKind 2021-06-20 07:15:32 -06:00
crobibero
23dd6e2d9f Merge remote-tracking branch 'upstream/master' into baseitemkind-fixes 2021-06-20 07:09:24 -06:00
Patrick Barron
d64e14fcb8 Use ReadOnlySpan in GetImagesForPrograms 2021-06-19 15:26:24 -04:00
Patrick Barron
67308f489f Implement DeleteDevice 2021-06-19 15:24:53 -04:00
Patrick Barron
2a9474f6e7 Count records before skipping 2021-06-19 15:24:42 -04:00
Patrick Barron
6b24cc6d1f Fix UpdateDeviceOptions 2021-06-19 15:24:26 -04:00
Patrick Barron
3123ea2a94 Add missing ConfigureAwait call 2021-06-19 15:09:16 -04:00
Bond_009
6f8ccab788 Move non-jellyfin extensions to separate project 2021-06-19 18:04:46 +02:00
BaronGreenback
6648b7d7da Merge branch 'master' into comparisons 2021-06-19 15:04:30 +01:00
Patrick Barron
54fdc2fd88 Use ExecuteSqlInterpolated instead of ExecuteSqlRaw
oop
2021-06-18 19:15:08 -04:00
Patrick Barron
be88efce3c Merge branch 'master' into authenticationdb-efcore
# Conflicts:
#	Emby.Server.Implementations/Devices/DeviceManager.cs
#	Emby.Server.Implementations/HttpServer/Security/SessionContext.cs
#	Emby.Server.Implementations/Security/AuthenticationRepository.cs
#	Emby.Server.Implementations/Session/SessionManager.cs
#	Jellyfin.Server.Implementations/Security/AuthorizationContext.cs
#	MediaBrowser.Controller/Library/IUserManager.cs
#	MediaBrowser.Controller/Net/ISessionContext.cs
2021-06-18 18:56:10 -04:00
Bond-009
0c3dcdf77b Merge pull request #6197 from MrTimscampi/sub-delivery-docs
Document SubtitleDeliveryMethod
2021-06-19 00:42:54 +02:00
Patrick Barron
336ba2879f Re-add support for API keys 2021-06-18 18:26:58 -04:00
Patrick Barron
0292936c65 Use consistent name for db context 2021-06-18 17:09:59 -04:00
Patrick Barron
4206c0e091 Combine if statements 2021-06-18 17:09:39 -04:00
Patrick Barron
3264575047 Add data migration 2021-06-18 17:07:30 -04:00
Patrick Barron
3fd0b1a359 Recreate devices migration with missing fields 2021-06-18 17:07:22 -04:00
Patrick Barron
3d9c16ba6b Fix concurrency issues 2021-06-18 17:06:38 -04:00
Patrick Barron
373155a063 Correctly handle devices without custom names 2021-06-18 16:57:46 -04:00
MrTimscampi
22efb69e92 Document SubtitleDeliveryMethod 2021-06-18 18:26:14 +02:00
Joshua M. Boniface
c791c3a215 Merge pull request #6191 from crobibero/5.0.7
Update to dotnet 5.0.7
2021-06-18 11:29:55 -04:00
Bond-009
004c53a5a5 Merge pull request #6180 from crobibero/test-controller
Ignore Test Controllers
2021-06-18 11:44:45 +02:00
Claus Vium
cd36b8067f Merge pull request #5988 from Bond-009/fuzz
Add fuzzing infrastructure
2021-06-14 19:30:05 +02:00
crobibero
e021a0e9ce Update to dotnet 5.0.7 2021-06-14 06:44:55 -06:00
Stanislav Ionascu
351ae66509 Better detection of the ISO DVD/BD types
The ISO image will be opened and checked for disc-type specific
folders.
Can be overridden using NAME.dvd.iso / NAME.bluray.iso
2021-06-13 19:24:06 +02:00
Bond-009
aaa9cc604f Merge pull request #6176 from nielsvanvelzen/userid-required
Require userId in getItems and getTrailers endpoints
2021-06-13 15:06:30 +02:00
crobibero
d32bbf181a Ignore all test controllers 2021-06-13 06:32:28 -06:00
Bond-009
04daf0ff49 Merge pull request #6175 from nielsvanvelzen/crobibero-is-stupid
Fix routeMediaSourceId route parameter in SubtitleController GetSubtitle
2021-06-12 17:02:33 +02:00
Niels van Velzen
226abde3f7 Change userId to required in operations that would otherwise throw exceptions 2021-06-12 16:19:34 +02:00
Niels van Velzen
0a0e10e854 Fix routeMediaSourceId route parameter in SubtitleController GetSubtitle 2021-06-12 15:38:13 +02:00
Claus Vium
93dbbfea03 Merge pull request #6173 from Bond-009/tests5
Add test for ReadOnlySpan.Count extension
2021-06-12 08:08:46 +02:00
Bond-009
83e492b72b Merge pull request #5384 from Larvitar/season-metadata-fix 2021-06-12 00:58:58 +02:00
Bond_009
5fb72951a0 Add test for ReadOnlySpan.Count extension 2021-06-12 00:56:09 +02:00
Claus Vium
8daa679a26 Update MediaBrowser.Providers/Manager/MetadataService.cs 2021-06-12 00:22:55 +02:00
Claus Vium
cb77f8ee28 Merge pull request #6172 from Bond-009/nullable6
Remove useless nullable directives
2021-06-12 00:22:30 +02:00
Bond-009
cfad97ff28 Merge pull request #6096 from cvium/saving_private_ram 2021-06-12 00:20:54 +02:00
cvium
66de842896 Use stackalloc in Format3DParser.Parse 2021-06-12 00:16:33 +02:00
Bond_009
383c2d7374 Remove useless nullable directives 2021-06-11 23:36:10 +02:00
Stan
adf406b182 Fix playback of complex BluRay ISOs (#6166) 2021-06-10 20:07:28 +02:00
Claus Vium
d366fd3fd7 Merge pull request #6165 from Bond-009/tests4
Fix duplicate keys causing an exception
2021-06-09 10:23:29 +02:00
Bond_009
06401ffa0d Fix duplicate keys causing an exception 2021-06-09 09:59:30 +02:00
Bond_009
f7392394fd Add fuzzing infra 2021-06-08 22:22:32 +02:00
Claus Vium
b986cb57b7 Merge pull request #6163 from Bond-009/tests3
Fix index out of range and add reg tests
2021-06-08 15:53:34 +02:00
Bond_009
2fc14375f8 Fix index out of range and add reg tests 2021-06-08 15:35:49 +02:00
Claus Vium
ed2f08d05f Merge pull request #6156 from Bond-009/minor14
Minor fixes
2021-06-07 23:09:50 +02:00
Claus Vium
93387ba235 Merge pull request #5990 from BaronGreenback/UrlDecoding 2021-06-07 23:07:59 +02:00
Claus Vium
19a1889906 Merge pull request #6162 from crobibero/no-base-redirect
Redirect to default if root is requested
2021-06-07 23:06:33 +02:00
BaronGreenback
147612f59b Update Jellyfin.Server/Middleware/UrlDecodeQueryFeature.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-06-07 16:22:37 +01:00
BaronGreenback
37326a8099 Update Jellyfin.Server/Middleware/UrlDecodeQueryFeature.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-06-07 16:22:28 +01:00
BaronGreenback
ada052fcb1 Update Jellyfin.Server/Middleware/UrlDecodeQueryFeature.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-06-07 16:22:17 +01:00
BaronGreenback
c1fa7cbbf8 Update Jellyfin.Server/Middleware/UrlDecodeQueryFeature.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-06-07 16:22:11 +01:00
BaronGreenback
371f8629b1 Update Jellyfin.Server/Middleware/UrlDecodeQueryFeature.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-06-07 16:21:47 +01:00
BaronGreenback
133ce65e28 Update tests/Jellyfin.Server.Integration.Tests/Controllers/EncoderController.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-06-07 16:21:30 +01:00
BaronGreenback
e71c10df46 Update tests/Jellyfin.Server.Integration.Tests/Controllers/EncoderController.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-06-07 16:21:22 +01:00
BaronGreenback
e1a0b5d2a1 Update Jellyfin.Server/Middleware/UrlDecodeQueryFeature.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-06-07 16:21:15 +01:00
BaronGreenback
cc2166550f Update Jellyfin.Server/Middleware/QueryStringDecodingMiddleware.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-06-07 16:20:44 +01:00
BaronGreenback
b59e81dcdf Update Jellyfin.Server/Middleware/QueryStringDecodingMiddleware.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-06-07 16:20:37 +01:00
dependabot[bot]
4e9570598b Bump cirrus-actions/rebase from 1.4 to 1.5
Bumps [cirrus-actions/rebase](https://github.com/cirrus-actions/rebase) from 1.4 to 1.5.
- [Release notes](https://github.com/cirrus-actions/rebase/releases)
- [Commits](https://github.com/cirrus-actions/rebase/compare/1.4...1.5)

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-07 14:17:50 +00:00
Joshua M. Boniface
cee8b87330 Merge pull request #6137 from ferferga/actions
Refactor Github Actions
2021-06-07 10:17:11 -04:00
crobibero
dfc776e451 Redirect to default if root is requested 2021-06-07 07:47:49 -06:00
Bond-009
2b5762fc68 Merge pull request #6160 from jellyfin/dependabot/nuget/sharpcompress-0.28.3
Bump sharpcompress from 0.28.2 to 0.28.3
2021-06-07 15:30:19 +02:00
dependabot[bot]
2245c6c43e Bump sharpcompress from 0.28.2 to 0.28.3
Bumps [sharpcompress](https://github.com/adamhathcock/sharpcompress) from 0.28.2 to 0.28.3.
- [Release notes](https://github.com/adamhathcock/sharpcompress/releases)
- [Commits](https://github.com/adamhathcock/sharpcompress/compare/0.28.2...0.28.3)

---
updated-dependencies:
- dependency-name: sharpcompress
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-07 13:27:11 +00:00
Bond-009
5075c04d23 Merge pull request #6161 from jellyfin/dependabot/nuget/SQLitePCL.pretty.netstandard-3.1.0 2021-06-07 15:26:12 +02:00
dependabot[bot]
e81eb2f065 Bump SQLitePCL.pretty.netstandard from 3.0.1 to 3.1.0
Bumps [SQLitePCL.pretty.netstandard](https://github.com/jellyfin/SQLitePCL.pretty.netstandard) from 3.0.1 to 3.1.0.
- [Release notes](https://github.com/jellyfin/SQLitePCL.pretty.netstandard/releases)
- [Commits](https://github.com/jellyfin/SQLitePCL.pretty.netstandard/commits)

---
updated-dependencies:
- dependency-name: SQLitePCL.pretty.netstandard
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-07 12:00:45 +00:00
Claus Vium
f17d43c564 Merge pull request #6071 from BaronGreenback/DLNAFolderFixPart1
Make DLNA folders to work as expected.
2021-06-07 09:55:58 +02:00
Claus Vium
9963d0ce5e Merge pull request #5803 from crobibero/healthy-base-url 2021-06-07 09:54:44 +02:00
Claus Vium
1c6bf16d15 Merge pull request #6150 from Bond-009/proptest 2021-06-07 09:46:46 +02:00
Claus Vium
b8f5a14384 Merge pull request #6117 from LinFor/pr_originaltitle_in_lookupinfo
Add OriginalTitle to ItemLookupInfo
2021-06-07 09:37:49 +02:00
Bond-009
ce434ebc7a Add comment 2021-06-06 19:30:43 +02:00
Bond_009
c78457e6d3 Minor fixes 2021-06-06 18:11:51 +02:00
Cody Robibero
d461e3912a Remove warninigs from MediaBrowser.Controller (Part 3) (#6078)
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-06-06 17:16:41 +02:00
cvium
9111730a0a More review 2021-06-05 20:16:04 +02:00
Bond_009
915855e422 Add property based testing 2021-06-05 13:32:22 +02:00
Cody Robibero
9154f20b34 Don't dispose managed CancellationTokenSource (#6139) 2021-06-04 14:36:58 +02:00
Tommaso Stocchi
02a56d8cf7 Changed return type desc in GetParts() summary 2021-06-03 17:45:22 +02:00
Tommaso Stocchi
2a72c33ba6 authorizationheader as readonlyspan<char> instead of string 2021-06-03 17:43:50 +02:00
Tommaso Stocchi
d1b34a1e97 -fix authorizationHeader is no longer a string 2021-06-03 17:37:42 +02:00
Tommaso Stocchi
2b232df07f Merge branch 'master' into bug/authorization-header-issue 2021-06-03 17:15:32 +02:00
Tommaso Stocchi
dc261b815f -fix AuthorizationHeader parameter name 2021-06-03 17:12:16 +02:00
Tommaso Stocchi
d86964eb6a Merge branch 'bug/authorization-header-issue' of https://github.com/tommasodotNET/jellyfin into bug/authorization-header-issue 2021-06-03 17:10:22 +02:00
Tommaso Stocchi
3c019d1324 Using for instead of while 2021-06-03 17:10:19 +02:00
Tommaso Stocchi
3951546b1f Update Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs
Co-authored-by: artiume <siderite@gmail.com>
2021-06-03 17:07:25 +02:00
Joshua M. Boniface
b060d9d0f1 Merge pull request #6131 from BaronGreenback/Fix_NetworkFlooding
Fix network flooding issue
2021-06-02 22:07:58 -04:00
Bond-009
1e1e9dbb58 Merge pull request #6135 from jellyfin/dependabot/nuget/Microsoft.NET.Test.Sdk-16.10.0
Bump Microsoft.NET.Test.Sdk from 16.9.4 to 16.10.0
2021-06-01 22:53:14 +02:00
Fernando Fernández
854a12b312 Refactor Github Actions 2021-05-31 22:44:59 +02:00
cvium
cfba7daa50 revert test change 2021-05-31 14:27:26 +02:00
dependabot[bot]
38ebd6147a Bump Microsoft.NET.Test.Sdk from 16.9.4 to 16.10.0
Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 16.9.4 to 16.10.0.
- [Release notes](https://github.com/microsoft/vstest/releases)
- [Commits](https://github.com/microsoft/vstest/compare/v16.9.4...v16.10.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-31 12:01:11 +00:00
cvium
0835b26889 review 2021-05-31 13:55:54 +02:00
Joshua M. Boniface
80875e2573 Merge pull request #6133 from ferferga/pull_request_target 2021-05-30 18:59:27 -04:00
Fernando Fernández
d9bd162739 Don't trigger workflows in unnecessary events and always use jellyfin-bot 2021-05-31 00:40:02 +02:00
Fernando Fernández
a29ee991a4 Use pull_request_target instead of pull_request 2021-05-31 00:35:41 +02:00
Joshua M. Boniface
499dee0100 Add workflow for checking stable backports (#6056)
Co-authored-by: h1dden-da3m0n <33120068+h1dden-da3m0n@users.noreply.github.com>
2021-05-30 13:50:50 -04:00
BaronGreenback
40a43f9485 remove link between ssdp and upnp 2021-05-30 15:43:16 +01:00
Bond-009
9712fa85c4 Merge pull request #6121 from Bond-009/warn52
Fix some warnings
2021-05-30 10:11:05 +02:00
Mariusz Chryc
d44025c620 Clear episode and season provider IDs during ApplySearchResult 2021-05-29 10:56:38 +02:00
Claus Vium
3b5214e595 Update Emby.Naming/Video/VideoListResolver.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-05-28 19:01:29 +02:00
Claus Vium
2d5ed7cb95 Apply suggestions from code review
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-05-28 19:01:08 +02:00
Bond_009
0bc0601442 Fix some warnings 2021-05-28 14:33:54 +02:00
crobibero
9595aa258e Simplify BaseUrlRedirectionMiddleware 2021-05-27 06:31:00 -06:00
crobibero
01e8ff8ddf Merge remote-tracking branch 'upstream/master' into healthy-base-url 2021-05-27 06:07:57 -06:00
Bond-009
71c98d2f81 Merge pull request #6116 from Maxr1998/contribs
Fix broken link in CONTRIBUTORS and add myself
2021-05-27 13:12:53 +02:00
PingWin
05c241da78 Add OriginalTitle to ItemLookupInfo 2021-05-27 10:36:56 +00:00
Maxr1998
2c161fc4f1 Fix broken link in CONTRIBUTORS and add myself 2021-05-27 12:12:44 +02:00
Claus Vium
b12f509de3 Merge pull request #5696 from Maxr1998/fix-music-video-metadata-probing 2021-05-27 10:20:22 +02:00
Claus Vium
6b9251fa10 Merge pull request #6102 from LinFor/pr_dont_prefer_omdb_rating
Don't prefer OMDB rating over all other providers
2021-05-27 08:28:16 +02:00
Claus Vium
6080093b51 Merge pull request #6094 from crobibero/album-artist-sort
Add sorting to /Artists/AlbumArtists
2021-05-27 07:23:34 +02:00
Claus Vium
61346dd2e2 Merge pull request #5828 from jackrvan/issue-5813
Add NextUpCutoffDate to NextUpQuery
2021-05-27 07:22:06 +02:00
Jack
accb974605 Add optional back 2021-05-26 22:49:53 -04:00
Jack
e3ff473bd4 Review notes to set value to Datetime min value instead of null 2021-05-25 20:46:29 -04:00
PingWin
7cba148a30 Don't prefer OMDB rating over all other providers 2021-05-25 14:38:02 +00:00
David Ullmer
e33e3ba610 Make localizationManager local instead of field 2021-05-25 12:33:55 +02:00
Claus Vium
8a58d552a6 Update tests/Jellyfin.Api.Tests/Jellyfin.Api.Tests.csproj 2021-05-25 00:35:16 +02:00
Claus Vium
75704effae Merge pull request #5659 from ssenart/feature/5644-dlna_next_track 2021-05-24 20:35:07 +02:00
Claus Vium
2f9034c94b Update Emby.Dlna/PlayTo/Device.cs 2021-05-24 19:37:23 +02:00
Claus Vium
e134a3677c Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-05-24 19:29:29 +02:00
Claus Vium
ffe2770388 Merge pull request #6043 from peterspenler/feature/chromecast-aac-handling
Reorder requested audio channels checks
2021-05-24 19:24:40 +02:00
Claus Vium
de80ce93db Merge pull request #6031 from ferferga/sql-optimization
Run SQLite query planner optimization at shutdown/restart
2021-05-24 13:50:34 +02:00
Fernando Fernández
6db229af5d Address review comments 2021-05-24 10:48:01 +02:00
Fernando Fernández
3b822116ed Create scheduled task for database optimization 2021-05-24 10:45:21 +02:00
Fernando Fernández
69baa9c467 Run SQLite query planner optimization at shutdown/restart 2021-05-24 10:45:21 +02:00
Claus Vium
74ba079c5c Merge pull request #5886 from Artiume/patch-3
Request all the logs
2021-05-24 08:53:29 +02:00
Claus Vium
9f2e8063ec Merge pull request #5997 from JKI12/master
Fixes for Book Progress
2021-05-24 08:52:38 +02:00
Claus Vium
1594385497 Merge pull request #6038 from crobibero/delete-existing-sessions
Don't logout if deviceId is null
2021-05-24 08:43:44 +02:00
Claus Vium
45e27a3bc4 Merge pull request #6075 from MrTimscampi/codec-tag-hdr
Properly detect Dolby Vision files derived from AV1, AVC and HEVC
2021-05-24 08:27:22 +02:00
cvium
1580bf5469 Fix property instantiation order 2021-05-24 08:03:24 +02:00
cvium
42a2cc1747 Remove some unnecessary allocations 2021-05-24 00:30:41 +02:00
crobibero
e01ce826e0 Allow sorting for AlbumArtist 2021-05-23 08:38:05 -06:00
BaronGreenback
51fb6e1d2d Merge branch 'master' into IsRoot_fix 2021-05-22 22:01:03 +01:00
Bond-009
db9d3b8653 Merge pull request #6090 from cvium/bump_sqlitepclpretty
Bump SQLitePCL.pretty.netstandard to 3.0.1
2021-05-21 23:16:30 +02:00
cvium
3b59064f97 Bump SQLitePCL.pretty.netstandard to 3.0.1 2021-05-21 19:35:00 +02:00
BaronGreenback
d0537a3271 Set isRoot to true 2021-05-21 15:07:35 +01:00
Marius Lindvall
19e2e0b7b8 Translated using Weblate (Norwegian Nynorsk)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nn/
2021-05-21 08:31:01 -04:00
TokieSan
d6ab9ab328 Translated using Weblate (Arabic)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ar/
2021-05-21 08:31:01 -04:00
Bond-009
0a30d8dd98 Merge pull request #6086 from Bond-009/deadcode
Remove dead code
2021-05-21 13:52:37 +02:00
Bond_009
9b8eb1ba53 Remove dead code 2021-05-21 13:43:49 +02:00
Bond-009
8046143158 Merge pull request #6084 from Bond-009/nullable5
Enable nullable reference types for MediaBrowser.MediaEncoding
2021-05-21 13:05:13 +02:00
Bond-009
d61530eb4b Merge pull request #6083 from Bond-009/nullable4
Enable nullable reference types for Emby.Server.Implementations
2021-05-21 13:05:03 +02:00
Patrick Barron
37a8a82ac5 Make methods static in AuthenticationContext 2021-05-21 00:19:54 -04:00
Patrick Barron
b6446c06ee Merge branch 'master' into authenticationdb-efcore
# Conflicts:
#	Emby.Server.Implementations/Security/AuthenticationRepository.cs
#	Jellyfin.Server.Implementations/Security/AuthorizationContext.cs
#	MediaBrowser.Controller/Devices/IDeviceManager.cs
2021-05-21 00:19:07 -04:00
Patrick Barron
a0c6f72762 Migrate authentication db to EF Core 2021-05-20 23:56:59 -04:00
Patrick Barron
b03f2353d8 Generate Access token in constructor 2021-05-20 20:57:10 -04:00
Patrick Barron
f4d1c3ef7a Add device query class 2021-05-20 20:48:53 -04:00
Patrick Barron
ab63a7745c Add PaginatedQuery abstract class, change startIndex to skip 2021-05-20 20:48:41 -04:00
Patrick Barron
e1f7086077 Remove unnecessary query class 2021-05-20 20:39:22 -04:00
Bond-009
a937a854f2 Merge pull request #6013 from Bond-009/minor13 2021-05-21 01:29:36 +02:00
Bond-009
95b909546d Merge pull request #6033 from Ullmie02/tmdb-person-language 2021-05-20 22:50:42 +02:00
Bond_009
7e8428e588 Enable nullable reference types for Emby.Server.Implementations 2021-05-20 22:48:53 +02:00
Bond-009
a7b7ff000b Merge branch 'master' into tmdb-person-language 2021-05-20 22:46:40 +02:00
Bond-009
e8790bfa96 Merge pull request #6054 from cvium/allocationz_2_extreme_db_plsdonthurtme 2021-05-20 22:40:25 +02:00
Bond_009
26d7fc8280 Enable nullable reference types for MediaBrowser.MediaEncoding.Subtitles 2021-05-20 22:10:19 +02:00
Sanaf Raw
c6ca722e57 Translated using Weblate (Bengali)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/bn/
2021-05-19 16:30:58 -04:00
cvium
e0f793799a Fix build 2021-05-19 19:52:45 +02:00
cvium
7e6a45c402 Review changes 2021-05-19 19:33:24 +02:00
cvium
1027792b16 Review changes 2021-05-19 08:51:46 +02:00
Patrick Barron
a225f34796 Merge branch 'master' into authenticationdb-efcore
# Conflicts:
#	Jellyfin.Api/Helpers/RequestHelpers.cs
2021-05-18 18:09:46 -04:00
Bond-009
8d2e5ef8c6 Merge pull request #6042 from crobibero/mbc-warn-2 2021-05-18 21:21:26 +02:00
David Ullmer
ee7a95e088 Move GetMetadataLanguage 2021-05-18 13:44:38 +02:00
Bond-009
19e9bef256 Merge pull request #6074 from Bond-009/nullablequery
Enable nullable for InternalItemsQuery
2021-05-18 13:23:01 +02:00
David Ullmer
6353966abd Fix cache key 2021-05-18 13:17:34 +02:00
MrTimscampi
8407c3d558 Properly detect Dolby Vision files derived from AV1, AVC and HEVC 2021-05-18 12:37:00 +02:00
Bond_009
2b321d8b89 Enable nullable for InternalItemsQuery 2021-05-18 12:23:26 +02:00
Bond-009
44087da17a Merge pull request #6072 from crobibero/dotnet-5.0.6 2021-05-18 07:52:44 +02:00
Jack
7a17de84d9 Add optional to nextUpDateCutoff help text 2021-05-17 21:35:58 -04:00
crobibero
be17028e22 Remove erroneous newline 2021-05-17 18:34:44 -06:00
Joshua M. Boniface
24ddcd5955 Merge pull request #6047 from crobibero/dotnet-5.0.6
Update to Dotnet 5.0.6
2021-05-17 19:56:14 -04:00
BaronGreenback
48bb338352 Enable child items to be returned if a musicAlbum 2021-05-17 23:34:50 +01:00
Bond-009
c64bdbb4ff Merge pull request #6051 from Bond-009/tests7
Add tests for Recordinghelper
2021-05-18 00:05:33 +02:00
siankatabg
0cb69e28b9 Translated using Weblate (Bulgarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/bg/
2021-05-17 12:13:49 -04:00
David Ullmer
96e05e5b66 Add tests for NoralizeLanguage 2021-05-17 12:55:27 +02:00
Anthony Lavado
92b606d7c0 Merge pull request #6037 from ferferga/pat_token 2021-05-16 14:38:11 -04:00
cvium
81ac11828b Fix ArrayIndexOutOfBounds 2021-05-16 20:16:47 +02:00
cvium
be4aeb5c2c Rename SQL extension methods 2021-05-16 19:06:10 +02:00
Claus Vium
652909e8a5 Update Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-05-16 15:27:31 +02:00
cvium
415e8fc0f3 Forward 2021-05-16 14:54:36 +02:00
cvium
eaafbdd623 Remove some leftover junk from a project that isn't in the sln 2021-05-16 14:52:56 +02:00
cvium
1b49435a0e Reduce some allocations 2021-05-16 14:49:11 +02:00
Bond-009
9b82b37095 Merge pull request #6053 from jellyfin/cuda-fix
Fix the 'No decoder surfaces left' error on Cuda
2021-05-16 11:58:28 +00:00
nyanmisaka
ffc5aba023 Fix the 'No decoder surfaces left' error on Cuda 2021-05-16 18:40:28 +08:00
Bond-009
5acb4e9491 Merge pull request #5999 from Bond-009/legacyhdhomerun
Add support for legacy HDhomerun DUAl
2021-05-16 10:29:28 +00:00
Bond-009
f06f3450c1 Merge pull request #5307 from barronpm/using-declarations 2021-05-16 09:58:10 +00:00
Bond_009
a9f44c21eb Add tests for Recordinghelper 2021-05-16 01:24:49 +02:00
crobibero
b6dda30a33 Fix suggestions from review 2021-05-15 15:33:50 -06:00
Bond-009
ca92a9a80c Merge pull request #6050 from Bond-009/ruleset3
Fully disable stupid rules
2021-05-15 20:55:41 +00:00
BaronGreenback
53bfe0e77d Changes as requested 2021-05-15 20:24:41 +01:00
Bond_009
42be818a09 Fully disable stupid rules 2021-05-15 20:38:29 +02:00
crobibero
66b185898f Update to dotnet5.0.6 2021-05-14 17:28:36 -06:00
Fernando Fernández
73654481e2 chore: replace GH_TOKEN with JF_BOT_TOKEN 2021-05-13 18:43:28 +02:00
Patrick Barron
81992ef205 Fix build 2021-05-13 10:47:00 -04:00
peterspenler
3c981cf41f Reorder requested audio channels checks 2021-05-13 09:55:31 -04:00
crobibero
6bcbc2b88a Reduce warnings in MediaBrowser.Controller 2021-05-13 07:33:11 -06:00
Haziq Rohaizan
88a7875a27 Translated using Weblate (Malay)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ms/
2021-05-13 04:29:07 -04:00
archon eleven
abbdaa997e Translated using Weblate (Malay)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ms/
2021-05-13 04:29:07 -04:00
Benjamin Vraspillai
59c4170966 Translated using Weblate (Norwegian Nynorsk)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nn/
2021-05-13 04:29:07 -04:00
crobibero
f53aa55bdb Don't logout if deviceId is null. 2021-05-12 13:32:54 -06:00
BaronGreenback
d0bfb56d2e changed to slice. 2021-05-12 16:19:08 +01:00
David Ullmer
c584d36fd4 Fix Tmdb person language 2021-05-12 14:57:58 +02:00
BaronGreenback
85ecea7722 corrected tests 2021-05-11 21:45:15 +01:00
Cody Robibero
2888567ea5 Update Jellyfin.Api/Models/ClientLogDtos/ClientLogEventDto.cs
Co-authored-by: dkanada <dkanada@users.noreply.github.com>
2021-05-11 08:21:04 -06:00
Joshua M. Boniface
6f3bd59aac Merge pull request #5995 from tuky/patch-1
Respect configured JELLYFIN_USER in Debian's postinst
2021-05-11 09:20:06 -04:00
Bond-009
50f617357b Merge pull request #5929 from crobibero/sort 2021-05-11 12:41:25 +00:00
dkanada
138c564e8f Merge pull request #6023 from jellyfin/dependabot/nuget/prometheus-net.DotNetRuntime-4.1.0
Bump prometheus-net.DotNetRuntime from 4.0.0 to 4.1.0
2021-05-11 21:07:00 +09:00
dkanada
708e2de44d Merge pull request #6010 from crobibero/🐄
Mooooove the label commenter config
2021-05-11 21:06:33 +09:00
dkanada
720b364aa1 Merge pull request #5975 from thornbill/fix-web-docker-build
Fix web build in dockerfiles
2021-05-11 21:05:59 +09:00
Bond-009
c10f86960d Merge pull request #6026 from Ullmie02/tv-parental-rating-fix
Use TMDb parental rating building from movies for shows
2021-05-11 11:56:34 +00:00
Cody Robibero
e3f55a0c54 Reduce warnings in MediaBrowser.Controller (#6006)
Co-authored-by: Patrick Barron <18354464+barronpm@users.noreply.github.com>
2021-05-11 13:55:46 +02:00
Haziq Rohaizan
a84e8c3884 Translated using Weblate (Malay)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ms/
2021-05-10 17:16:08 -04:00
archon eleven
c9db6a78ee Translated using Weblate (Malay)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ms/
2021-05-10 17:16:08 -04:00
archon eleven
af5b09bd97 Translated using Weblate (Malay)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ms/
2021-05-10 17:01:33 -04:00
Haziq Rohaizan
5b08bdda37 Translated using Weblate (Malay)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ms/
2021-05-10 17:00:38 -04:00
David Ullmer
cb01dd8684 Use TMDb parental rating building from movies for shows 2021-05-10 20:56:20 +02:00
David Ullmer
db2b53a4b5 Refactor LocalizationManager and remove dead method 2021-05-10 18:05:35 +02:00
David Ullmer
88bfd1bcf4 Add tests for LocalizationManager 2021-05-10 17:58:21 +02:00
Ishan Badgainya
b9163ff2aa Translated using Weblate (Hindi)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hi/
2021-05-10 11:30:58 -04:00
Erikas
289c06adca Translated using Weblate (Lithuanian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/lt/
2021-05-10 11:30:58 -04:00
thecoldicelander
a315ab4fa4 Translated using Weblate (Icelandic)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/is/
2021-05-10 11:30:58 -04:00
Benjamin Vraspillai
b0a12c0bb0 Translated using Weblate (Norwegian Bokmål)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nb_NO/
2021-05-10 11:30:58 -04:00
Benjamin Vraspillai
0115ca9bc2 Translated using Weblate (Norwegian Nynorsk)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nn/
2021-05-10 11:30:58 -04:00
Daniel Wykerd
b281488d36 Translated using Weblate (Afrikaans)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/af/
2021-05-10 11:30:58 -04:00
emmanuel billeaud
323bc75c13 Translated using Weblate (French)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr/
2021-05-10 11:30:58 -04:00
Benjamin Vraspillai
ba8ff2a7bc Translated using Weblate (Norwegian Nynorsk)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nn/
2021-05-10 11:30:58 -04:00
Dan Johansen
0668ab6721 Translated using Weblate (Danish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/da/
2021-05-10 11:30:58 -04:00
Levi
9c0d1f676d Translated using Weblate (Swedish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sv/
2021-05-10 11:30:58 -04:00
Marcus Hsu
566ad0907b Translated using Weblate (Chinese (Traditional))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zh_Hant/
2021-05-10 11:30:58 -04:00
Lukáš Kucharczyk
d2e8df1a48 Translated using Weblate (Czech)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/cs/
2021-05-10 11:30:58 -04:00
WWWesten
7af45a8f01 Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2021-05-10 11:30:58 -04:00
0TTA
07ea5e2472 Translated using Weblate (Arabic)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ar/
2021-05-10 11:30:58 -04:00
a19guillermobf
85c771e64b Translated using Weblate (Galician)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/gl/
2021-05-10 11:30:58 -04:00
Oskari Lavinto
9b2a87f981 Translated using Weblate (Finnish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fi/
2021-05-10 11:30:58 -04:00
Federico Antoniazzi
7dc721923e Translated using Weblate (Italian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/it/
2021-05-10 11:30:58 -04:00
radiusgreenhill
2bf2746231 Translated using Weblate (Thai)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/th/
2021-05-10 11:30:58 -04:00
Koos van Riemsdijk
1237a7b82a Translated using Weblate (Dutch)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nl/
2021-05-10 11:30:58 -04:00
WWWesten
dc15cc1370 Translated using Weblate (Bengali)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/bn/
2021-05-10 11:30:58 -04:00
Robolov
061016a2a9 Translated using Weblate (French)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr/
2021-05-10 11:30:58 -04:00
Manjot Singh
0158f74d37 Translated using Weblate (Punjabi)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pa/
2021-05-10 11:30:58 -04:00
flackseven
b5bde8d46e Translated using Weblate (Ukrainian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/uk/
2021-05-10 11:30:58 -04:00
WWWesten
eaa102fc74 Translated using Weblate (Bengali)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/bn/
2021-05-10 11:30:58 -04:00
WWWesten
90a8cd83f4 Translated using Weblate (Norwegian Bokmål)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nb_NO/
2021-05-10 11:30:58 -04:00
Csaba
da5ca3f769 Translated using Weblate (Hungarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hu/
2021-05-10 11:30:58 -04:00
WWWesten
95f25467c8 Translated using Weblate (Persian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fa/
2021-05-10 11:30:58 -04:00
millallo
55f3dd4f2c Translated using Weblate (Italian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/it/
2021-05-10 11:30:58 -04:00
Oatavandi
f56898a563 Translated using Weblate (Tamil)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ta/
2021-05-10 11:30:58 -04:00
WWWesten
2c66d36f10 Translated using Weblate (Russian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ru/
2021-05-10 11:30:58 -04:00
Csaba
c5783da4f6 Translated using Weblate (Hungarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hu/
2021-05-10 11:30:58 -04:00
Baptiste
c78f584a99 Translated using Weblate (French)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr/
2021-05-10 11:30:58 -04:00
bvd13
7ebe30f0ab Translated using Weblate (Dutch)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nl/
2021-05-10 11:30:58 -04:00
Patrick Barron
e55f35b62e Merge branch 'master' into using-declarations 2021-05-10 09:05:12 -04:00
dependabot[bot]
62a93d494b Bump prometheus-net.DotNetRuntime from 4.0.0 to 4.1.0
Bumps [prometheus-net.DotNetRuntime](https://github.com/djluck/prometheus-net.DotNetRuntime) from 4.0.0 to 4.1.0.
- [Release notes](https://github.com/djluck/prometheus-net.DotNetRuntime/releases)
- [Commits](https://github.com/djluck/prometheus-net.DotNetRuntime/compare/4.0.0...4.1.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-10 12:19:21 +00:00
BaronGreenback
97c2c523a8 Merge branch 'master' into comparisons 2021-05-08 17:11:21 +01:00
BaronGreenback
903bf2a086 changed to use index 2021-05-08 16:00:41 +01:00
BaronGreenback
cb74a86975 Moved test 2021-05-08 13:33:47 +01:00
BaronGreenback
bd71de131c Changed to use span 2021-05-08 12:52:25 +01:00
BaronGreenback
7185de970c Merge remote-tracking branch 'upstream/master' into UrlDecoding 2021-05-08 12:22:09 +01:00
Bond_009
56ac64e70a Minor improvements
* properly dispose CancellationTokenSource
* rewrite DynamicHlsController.GetSegmentLengths
* remove dead code
2021-05-08 00:33:24 +02:00
Bond-009
d4a50be22c Merge pull request #6009 from jellyfin/nielsvanvelzen-disable-automation-ci
Disable automation CI on issues
2021-05-07 22:14:57 +02:00
crobibero
ce0e890d8d Mooooove the label commenter config 2021-05-07 13:39:38 -06:00
BaronGreenback
dca0298710 changed 2021-05-07 20:11:32 +01:00
Niels van Velzen
d21d1978a3 Disable automation CI on issues 2021-05-07 21:09:05 +02:00
BaronGreenback
8b34f76b63 Update Jellyfin.Api/Controllers/TestController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-05-07 18:51:31 +01:00
BaronGreenback
4c8cfaa61c Update Jellyfin.Api/Controllers/TestController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-05-07 18:51:15 +01:00
BaronGreenback
5ad8b53f5d Update Jellyfin.Api/Controllers/TestController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-05-07 18:51:04 +01:00
BaronGreenback
5f70b4ead1 Update tests/Jellyfin.Api.Tests/Controllers/EncodedQueryStringTest.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-05-07 18:50:38 +01:00
BaronGreenback
043e69d252 Update tests/Jellyfin.Api.Tests/Controllers/EncodedQueryStringTest.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-05-07 18:49:57 +01:00
BaronGreenback
af1fe1af6f Moved into test controller. 2021-05-07 14:37:26 +01:00
Bond-009
2f0ec9a70b Merge pull request #6005 from Bond-009/nullable3
Enable nullable reference types for Emby.Dlna
2021-05-07 15:14:30 +02:00
BaronGreenback
4f5c9e9504 tests and small fix. 2021-05-07 14:02:42 +01:00
Bond_009
06caee28b7 Enable nullable reference types for Emby.Dlna 2021-05-07 14:43:50 +02:00
Bond-009
a3c9edde34 Merge pull request #6000 from Bond-009/nullable2 2021-05-07 14:09:12 +02:00
Jake King
bc017737e6 Changed condition for readbility
- Refactored check if item is not audio book or book to be more readable
2021-05-07 10:35:03 +01:00
Bond_009
4367b97a54 Fix build 2021-05-07 00:52:06 +02:00
Bond_009
fb090df0b5 Enable nullable reference types for MediaBrowser.Controller 2021-05-07 00:39:20 +02:00
Bond_009
ead4e1e977 Add support for legacy HDhomerun DUAl 2021-05-06 23:54:42 +02:00
Bond-009
a4a3f598af Merge pull request #5982 from Bond-009/nullable 2021-05-06 23:33:41 +02:00
Bond_009
4b9a64c18c Abstract JsonDelimitedArrayConverter 2021-05-06 23:16:52 +02:00
wehrstedt
ad1d9d9a23 fixed no channel icons when using tvheadend (#5996)
Co-authored-by: Cody Robibero <cody@robibe.ro>
Co-authored-by: Maximilian Wehrstedt <wehrstedt.coding@outlook.de>
2021-05-06 23:07:32 +02:00
Jake King
3cd57cb287 Fixes for Book Progress
- Ignore Books when checking for minium progress
2021-05-06 19:50:00 +01:00
Tobias Krönke
8eee32c8c2 Respect configured JELLYFIN_USER in Debian's postinst
In my setup I configured a different user. But updates keep "stealing" file permissions for my `$PROGRAMDATA $CONFIGDATA $LOGDATA $CACHEDATA` directories.
2021-05-06 18:56:13 +02:00
Bond-009
4b31c007e3 Merge pull request #4986 from Bond-009/readalllines
Use new ReadAllLines extensions
2021-05-06 17:10:41 +02:00
Bond_009
ddb04dc12b Use new ReadAllLines extensions 2021-05-06 14:12:43 +02:00
BaronGreenback
e682c230bd Merge branch 'master' into comparisons 2021-05-05 23:22:54 +01:00
BaronGreenback
c8061f92be slight format correction. 2021-05-05 23:15:24 +01:00
BaronGreenback
dabeabc553 corrected comments 2021-05-05 23:14:05 +01:00
BaronGreenback
a7bccd4fe0 removed unneeded logger. 2021-05-05 23:09:04 +01:00
BaronGreenback
81d675990f Enable automatic url decoding 2021-05-05 22:52:39 +01:00
Bond-009
95b1cf532b Merge pull request #5985 from Bond-009/minor11 2021-05-05 19:22:01 +02:00
Bond-009
a6ee4632ce Merge pull request #5987 from Bond-009/ioob
PathExtensions: Fix index out of bounds in TryReplaceSubPath
2021-05-05 17:20:14 +02:00
Bond_009
47e7c1356c PathExtensions: Fix index out of bounds in TryReplaceSubPath
Fixes #5977
2021-05-05 16:45:04 +02:00
Bond_009
bcb4010db6 More improvements 2021-05-05 15:30:32 +02:00
Bond_009
787bcd4a83 Remove dead code 2021-05-05 14:45:08 +02:00
Bond_009
4479713e04 MediaStream: Replace string.IndexOf with string.Contains where possible 2021-05-05 14:44:53 +02:00
Bond_009
e432796f6f Minor improvements 2021-05-05 14:39:50 +02:00
Bond-009
d729a76707 Merge pull request #5934 from Bond-009/utf8
SqliteItemRepository: Parse ChannelId directly from utf-8 data
2021-05-05 14:04:20 +02:00
Bond-009
b6df851363 Merge pull request #5984 from Bond-009/container
Add regression test for ContainerProfile.ContainsContainer
2021-05-05 13:51:34 +02:00
BaronGreenback
2e98de9062 Code Clean up: Convert to null-coalescing operator ?? (#5845)
Co-authored-by: Cody Robibero <cody@robibe.ro>
Co-authored-by: Patrick Barron <18354464+barronpm@users.noreply.github.com>
2021-05-05 13:51:14 +02:00
Bond-009
04447ed014 Merge pull request #5979 from Ullmie02/nfo-fanart
Add support for fanart aspect in thumb tag
2021-05-05 13:39:56 +02:00
BaronGreenback
f2c10471bf Code Clean up: Use Pattern Matching (#5838)
Co-authored-by: Cody Robibero <cody@robibe.ro>
Co-authored-by: Patrick Barron <18354464+barronpm@users.noreply.github.com>
2021-05-05 13:37:36 +02:00
Bond_009
39931fe3ad Add regression test for ContainerProfile.ContainsContainer 2021-05-05 13:33:34 +02:00
Bond-009
18d799b22a Merge pull request #5980 from Maxr1998/fix-direct-play
Fix direct play for DirectPlayProfiles without any codecs set
2021-05-05 13:28:51 +02:00
Bond_009
91c2a57b28 Enable nullable reference types for MediaBrowser.Common 2021-05-05 12:57:01 +02:00
Maxr1998
65a9a4771a Fix direct play for DirectPlayProfiles without any codecs set
70771fdcd6 broke direct play by treating empty container/codec strings as unsupported in `ContainerProfile.ContainsContainer()`` (which is also used for video and audio codec checks). Instead, they should be treated as supported, for both the positive and negative list option.
2021-05-05 12:25:54 +02:00
David Ullmer
e57b80b8e2 Add support for fanart aspect in thumb tag 2021-05-05 10:11:31 +02:00
Bond-009
48e81e65e8 Merge pull request #5938 from cvium/allocationz 2021-05-05 09:35:30 +02:00
Bill Thornton
260782349c Fix web build in dockerfiles 2021-05-05 00:58:12 -04:00
Bill Thornton
52db719f50 Merge pull request #5963 from jellyfin/dependabot/github_actions/alex-page/github-project-automation-plus-v0.7.1
Bump alex-page/github-project-automation-plus from v0.6.0 to v0.7.1
2021-05-05 00:21:36 -04:00
Bill Thornton
f7435a605d Merge pull request #5944 from shortspider/ContinueReading
Add ResumeBook Section
2021-05-05 00:20:42 -04:00
Bill Thornton
df40828e1f Merge pull request #5941 from Maxr1998/device-profile-docs
Improve documentation for DeviceProfile
2021-05-05 00:19:49 -04:00
Bill Thornton
7fdd8df8a5 Merge pull request #5779 from joshuaboniface/issue-comments
Add label commenter workflow
2021-05-05 00:11:47 -04:00
Bill Thornton
7d8fca92f9 Merge pull request #5762 from BaronGreenback/networkTestHardening
Fix network test on dns failure
2021-05-05 00:10:11 -04:00
Bill Thornton
cd543f7e50 Merge pull request #5738 from cvium/resolve-from-path
Resolve name from episode folder
2021-05-05 00:08:40 -04:00
Bill Thornton
77f0f89e45 Merge pull request #5623 from barronpm/ef-cleanup2
EF Core Cleanup 2
2021-05-04 23:59:15 -04:00
Bill Thornton
9d02ebb577 Merge pull request #4981 from Ullmie02/nfo-ratings
Add .nfo ratings tag
2021-05-04 23:55:33 -04:00
Joshua M. Boniface
d655145867 Merge pull request #5973 from crobibero/legacy-ci-apiclient
Kill the CI
2021-05-04 21:32:08 -04:00
crobibero
08213f2368 Fully remove reference. 2021-05-04 19:30:51 -06:00
Joshua M. Boniface
a598a8071b Merge pull request #5968 from crobibero/legacy-ci-apiclient 2021-05-04 21:19:07 -04:00
Cody Robibero
08d0765623 Restore launchSettings.json 2021-05-04 19:17:16 -06:00
Joshua M. Boniface
fe0fce26e4 Merge pull request #5969 from crobibero/required-revert
Remove Required attributes
2021-05-04 21:14:23 -04:00
crobibero
1a178e8490 Remove Required attributes 2021-05-04 19:11:01 -06:00
crobibero
31cf9f4b76 Remove legacy apiclient generation 2021-05-04 18:21:08 -06:00
Maxr1998
031a5c122d Improve documentation for DeviceProfile 2021-05-05 00:58:43 +02:00
Bond-009
9d3f614527 Merge pull request #5943 from Maxr1998/device-profile-defaults 2021-05-05 00:40:32 +02:00
Maxr1998
b2bb062ced Revert shortened 'is ... or' check 2021-05-04 23:38:17 +02:00
Maxr1998
244ad5b225 Apply review feedback 2021-05-04 22:57:27 +02:00
cvium
ad3e835bcf remove redundant code 2021-05-04 19:57:03 +02:00
BaronGreenback
417a7011c7 changed to first 2021-05-04 16:32:17 +01:00
crobibero
3c8abeda7d Require Authorization for the ClientLogController 2021-05-04 07:16:35 -06:00
Bond-009
2390583b35 Merge pull request #5961 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore.ReDoc-6.1.4
Bump Swashbuckle.AspNetCore.ReDoc from 6.1.3 to 6.1.4
2021-05-04 11:16:35 +02:00
dependabot[bot]
ee92dffa82 Bump Swashbuckle.AspNetCore.ReDoc from 6.1.3 to 6.1.4
Bumps [Swashbuckle.AspNetCore.ReDoc](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.1.3 to 6.1.4.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.1.3...v6.1.4)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-04 09:01:23 +00:00
Bond-009
ca5b86b1af Merge pull request #5960 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore-6.1.4
Bump Swashbuckle.AspNetCore from 6.1.3 to 6.1.4
2021-05-04 10:54:22 +02:00
cvium
c0feb3694b rename to SplitEnumerator and fix test 2021-05-03 23:51:45 +02:00
Claus Vium
b9d18f0fa7 Merge branch 'master' into allocationz 2021-05-03 22:52:31 +02:00
BaronGreenback
7ff52bf755 Renamed 2021-05-03 19:30:56 +01:00
BaronGreenback
7936ea59eb Changed selection method 2021-05-03 17:27:23 +01:00
Bond-009
8bcffdc52e Merge pull request #5962 from jellyfin/dependabot/nuget/SQLitePCL.pretty.netstandard-2.2.0 2021-05-03 17:31:09 +02:00
dependabot[bot]
2ee33bd602 Bump alex-page/github-project-automation-plus from v0.6.0 to v0.7.1
Bumps [alex-page/github-project-automation-plus](https://github.com/alex-page/github-project-automation-plus) from v0.6.0 to v0.7.1.
- [Release notes](https://github.com/alex-page/github-project-automation-plus/releases)
- [Commits](https://github.com/alex-page/github-project-automation-plus/compare/v0.6.0...50502d399cbb98cefe7ce1f99f93f78c6756562e)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-03 12:03:25 +00:00
dependabot[bot]
9b1243cf5e Bump SQLitePCL.pretty.netstandard from 2.1.0 to 2.2.0
Bumps [SQLitePCL.pretty.netstandard](https://github.com/jellyfin/SQLitePCL.pretty.netstandard) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/jellyfin/SQLitePCL.pretty.netstandard/releases)
- [Commits](https://github.com/jellyfin/SQLitePCL.pretty.netstandard/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-03 12:00:50 +00:00
dependabot[bot]
6f722bac0f Bump Swashbuckle.AspNetCore from 6.1.3 to 6.1.4
Bumps [Swashbuckle.AspNetCore](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.1.3 to 6.1.4.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.1.3...v6.1.4)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-03 12:00:39 +00:00
Bond-009
e042651c54 Merge pull request #5956 from BaronGreenback/MultipleInstanciations
Minor optimization.
2021-05-03 09:50:47 +02:00
Joshua M. Boniface
e71cd8274a Merge pull request from GHSA-rgjw-4fwc-9v96
Remove /Images/Remote API endpoint
2021-05-02 16:53:36 -04:00
Bond-009
f6d967ded6 Merge pull request #5954 from Bond-009/tests5
Add tests for SqliteItemRepository.(De)SerializeProviderIds
2021-05-02 21:18:33 +02:00
BaronGreenback
bcba501dfb minor optimization. 2021-05-02 19:25:04 +01:00
Bond-009
7eb9f579a8 Merge pull request #5955 from Bond-009/tests6
Don't run integration tests in parallel
2021-05-02 17:48:45 +02:00
Bond_009
bdd7a37794 Don't run integration tests in parallel
* Easier to debug failing tests when the logs aren't scrambled
* Static properties could cause issues
2021-05-02 13:04:35 +02:00
Bond_009
874f92e93a Add tests for SqliteItemRepository.(De)SerializeProviderIds 2021-05-02 12:45:02 +02:00
Bond-009
ea5bc90189 Merge pull request #5952 from Bond-009/tests4 2021-05-02 11:35:21 +02:00
Joshua M. Boniface
3e4c860986 Remove /Items/RemoteSearch/Image API endpoint 2021-05-02 01:22:52 -04:00
Joshua M. Boniface
dc81d576ab Remove /Images/Remote API endpoint 2021-05-02 01:20:58 -04:00
Bond-009
266913c5d8 Merge pull request #5937 from Maxr1998/videoscontroller-api-fix
Remove extraneous 'stream' parameter
2021-05-02 00:43:41 +02:00
Bond_009
8a6b9e1fb6 Add tests for SqliteItemRepository.(De)SerializeImages 2021-05-02 00:26:30 +02:00
BaronGreenback
2e01fb3cda Update tests/Jellyfin.Networking.Tests/NetworkParseTests.cs
Co-authored-by: David Ullmer <davidullmer@outlook.de>
2021-05-01 17:16:25 +01:00
BaronGreenback
2fbc1190bc Update LiveTvMediaSourceProvider.cs 2021-05-01 17:15:45 +01:00
BaronGreenback
a5aabbb885 Update ApplicationHost.cs
Renamed method
2021-05-01 17:14:37 +01:00
Bond-009
9a8c08b3e7 Merge pull request #5945 from Bond-009/fix
Fix scanning
2021-05-01 17:43:12 +02:00
Bond-009
214ab0b45f Merge pull request #5946 from Bond-009/tmdbutils
TmdbUtils: Use ordinal string compare
2021-05-01 17:43:05 +02:00
BaronGreenback
975d1537d4 Update tests/Jellyfin.Networking.Tests/NetworkParseTests.cs
Co-authored-by: David Ullmer <davidullmer@outlook.de>
2021-05-01 16:29:28 +01:00
BaronGreenback
b4ab75cd69 Update tests/Jellyfin.Networking.Tests/NetworkParseTests.cs
Co-authored-by: David Ullmer <davidullmer@outlook.de>
2021-05-01 16:29:22 +01:00
BaronGreenback
a49ded84c6 Update tests/Jellyfin.Networking.Tests/NetworkParseTests.cs
Co-authored-by: David Ullmer <davidullmer@outlook.de>
2021-05-01 16:29:13 +01:00
Bond_009
e128b6d997 TmdbUtils: Use ordinal string compare 2021-05-01 15:59:21 +02:00
Bond_009
c608d5104d Fix scanning 2021-05-01 15:56:16 +02:00
Maxr1998
70771fdcd6 Nullability handling for device profile classes 2021-05-01 13:06:10 +02:00
cvium
716cbb0695 remove span based setproviderid 2021-04-30 23:35:29 +02:00
Bond-009
360d80c873 Merge pull request #5890 from Bond-009/filesystem
Reduce string allocations/fs lookups in resolve code
2021-04-30 20:45:43 +02:00
cvium
ba2e346d12 prevent cancellationtoken leakage 2021-04-30 15:27:07 +02:00
cvium
a6726730fc revert the last bits of the getcount experiment 2021-04-30 15:11:16 +02:00
cvium
608cba817c Reduce some allocations with the magic of spans etc. 2021-04-30 15:09:36 +02:00
Maxr1998
e90fbe90f9 Remove extraneous 'stream' parameter
The argument isn't passed to the method but causes the API generator to include an unnecessary parameter.
Also fixes some typos in the documentation comments.
2021-04-30 15:07:27 +02:00
Bond-009
13d09cbc47 Merge pull request #5911 from jellyfin/dependabot/nuget/AutoFixture.AutoMoq-4.17.0
Bump AutoFixture.AutoMoq from 4.16.0 to 4.17.0
2021-04-30 12:47:42 +02:00
dependabot[bot]
182117d0a7 Bump AutoFixture.AutoMoq from 4.16.0 to 4.17.0
Bumps [AutoFixture.AutoMoq](https://github.com/AutoFixture/AutoFixture) from 4.16.0 to 4.17.0.
- [Release notes](https://github.com/AutoFixture/AutoFixture/releases)
- [Commits](https://github.com/AutoFixture/AutoFixture/compare/v4.16.0...v4.17.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-30 08:47:38 +00:00
Bond-009
a4837475d3 Merge pull request #5913 from jellyfin/dependabot/nuget/AutoFixture.Xunit2-4.17.0
Bump AutoFixture.Xunit2 from 4.16.0 to 4.17.0
2021-04-30 10:32:26 +02:00
BaronGreenback
2182640519 Update Emby.Server.Implementations/ApplicationHost.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-04-30 09:08:56 +01:00
Nathan Mascitelli
bdab8d1edb Add ResumeBook section 2021-04-29 22:35:57 -04:00
Bond-009
eeb5d4bd1e Merge pull request #5842 from BaronGreenback/optimization
Code Clean up: Group Methods
2021-04-29 21:14:57 +02:00
Bond-009
78e66325fd Merge pull request #5891 from Bond-009/filesystem2 2021-04-29 21:14:14 +02:00
Bond-009
7195d3e42f Merge pull request #5893 from Bond-009/db
SqliteItemRepository: remove redundant operations
2021-04-29 21:13:24 +02:00
Bond_009
34313ef216 SqliteItemRepository: Parse ChannelId directly from utf-8 data 2021-04-29 16:23:29 +02:00
Bond-009
dcc2df75ec Merge pull request #5903 from iwalton3/auto-leave-syncplay
Leave SyncPlay group on session disconnect.
2021-04-29 14:19:07 +02:00
Cody Robibero
69e91c33d8 Update Jellyfin.Api/Controllers/GenresController.cs 2021-04-29 04:10:26 -06:00
crobibero
d27ca993a5 Add ability to sort on Genre, MusicGenre, Artist 2021-04-28 18:33:30 -06:00
dependabot[bot]
c1563d9303 Bump AutoFixture.Xunit2 from 4.16.0 to 4.17.0
Bumps [AutoFixture.Xunit2](https://github.com/AutoFixture/AutoFixture) from 4.16.0 to 4.17.0.
- [Release notes](https://github.com/AutoFixture/AutoFixture/releases)
- [Commits](https://github.com/AutoFixture/AutoFixture/compare/v4.16.0...v4.17.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-27 13:35:13 +00:00
Bond-009
adfc03ac9d Merge pull request #5651 from jellyfin/dependabot/nuget/prometheus-net.DotNetRuntime-4.0.0
Bump prometheus-net.DotNetRuntime from 3.4.1 to 4.0.0
2021-04-27 15:34:38 +02:00
Bond-009
bca06cb1d7 Merge pull request #5912 from jellyfin/dependabot/nuget/AutoFixture-4.17.0
Bump AutoFixture from 4.16.0 to 4.17.0
2021-04-27 15:34:26 +02:00
crobibero
f8cfc55a36 Clean client filename generation 2021-04-26 17:02:25 -06:00
Bond-009
b95ae84319 Merge pull request #5915 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore.ReDoc-6.1.3
Bump Swashbuckle.AspNetCore.ReDoc from 6.0.7 to 6.1.3
2021-04-26 23:57:49 +02:00
dependabot[bot]
a3cb8dbc9d Bump Swashbuckle.AspNetCore.ReDoc from 6.0.7 to 6.1.3
Bumps [Swashbuckle.AspNetCore.ReDoc](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.0.7 to 6.1.3.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.0.7...v6.1.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-26 21:47:14 +00:00
Bond-009
1c4e7f6e10 Merge pull request #5917 from jellyfin/dependabot/github_actions/alex-page/github-project-automation-plus-v0.6.0
Bump alex-page/github-project-automation-plus from v0.5.1 to v0.6.0
2021-04-26 23:46:27 +02:00
Bond-009
ad3fc093b1 Merge pull request #5914 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore-6.1.3
Bump Swashbuckle.AspNetCore from 6.0.7 to 6.1.3
2021-04-26 23:46:09 +02:00
BaronGreenback
851f610e11 Changed other method to match for consistency. 2021-04-26 19:59:35 +01:00
BaronGreenback
78e97dbaa9 updated comment 2021-04-26 19:56:15 +01:00
BaronGreenback
f30bbef781 Fixed test 2021-04-26 17:28:32 +01:00
BaronGreenback
2b85f43cab removed unused usings 2021-04-26 17:17:48 +01:00
BaronGreenback
5741fa7dfa Fix url for LiveTV 2021-04-26 17:13:45 +01:00
dependabot[bot]
47c54166e1 Bump prometheus-net.DotNetRuntime from 3.4.1 to 4.0.0
Bumps [prometheus-net.DotNetRuntime](https://github.com/djluck/prometheus-net.DotNetRuntime) from 3.4.1 to 4.0.0.
- [Release notes](https://github.com/djluck/prometheus-net.DotNetRuntime/releases)
- [Commits](https://github.com/djluck/prometheus-net.DotNetRuntime/compare/3.4.1...4.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-26 14:43:14 +00:00
Bond-009
b54f799121 Merge pull request #5916 from jellyfin/dependabot/nuget/sharpcompress-0.28.2
Bump sharpcompress from 0.28.1 to 0.28.2
2021-04-26 16:42:27 +02:00
crobibero
1d6224c9c6 Add endpoint to log client events 2021-04-26 07:02:26 -06:00
dependabot[bot]
e409d89138 Bump alex-page/github-project-automation-plus from v0.5.1 to v0.6.0
Bumps [alex-page/github-project-automation-plus](https://github.com/alex-page/github-project-automation-plus) from v0.5.1 to v0.6.0.
- [Release notes](https://github.com/alex-page/github-project-automation-plus/releases)
- [Commits](https://github.com/alex-page/github-project-automation-plus/compare/v0.5.1...4230e39aec629f1b622666350cdbdf29ff149aca)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-26 12:03:24 +00:00
dependabot[bot]
24a05bc9f8 Bump sharpcompress from 0.28.1 to 0.28.2
Bumps [sharpcompress](https://github.com/adamhathcock/sharpcompress) from 0.28.1 to 0.28.2.
- [Release notes](https://github.com/adamhathcock/sharpcompress/releases)
- [Commits](https://github.com/adamhathcock/sharpcompress/compare/0.28.1...0.28.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-26 12:00:57 +00:00
dependabot[bot]
d5037a8988 Bump Swashbuckle.AspNetCore from 6.0.7 to 6.1.3
Bumps [Swashbuckle.AspNetCore](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.0.7 to 6.1.3.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.0.7...v6.1.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-26 12:00:48 +00:00
dependabot[bot]
eee3b385da Bump AutoFixture from 4.16.0 to 4.17.0
Bumps [AutoFixture](https://github.com/AutoFixture/AutoFixture) from 4.16.0 to 4.17.0.
- [Release notes](https://github.com/AutoFixture/AutoFixture/releases)
- [Commits](https://github.com/AutoFixture/AutoFixture/compare/v4.16.0...v4.17.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-26 12:00:42 +00:00
Bond-009
5df87b3e0d Merge pull request #5904 from cvium/fix-updatepeople-questionmark
add UpdatePeopleAsync and add people to both tables
2021-04-25 18:53:28 +02:00
Bond-009
f4a59c92e6 Merge pull request #5826 from BaronGreenback/ssdpFix
PlayTo Fix: Use external ip not internal interface
2021-04-25 18:51:11 +02:00
Claus Vium
12496677bd Merge pull request #5861 from BaronGreenback/ProfileMatch
Change profile matching to match what the web interface says.
2021-04-25 17:27:32 +02:00
cvium
77261a8445 add UpdatePeopleAsync and add people to both tables 2021-04-24 20:22:23 +02:00
Ian Walton
e4691d45f5 Leave SyncPlay group on session disconnect. 2021-04-24 11:32:34 -04:00
Bond-009
224c48821e Merge pull request #5887 from Bond-009/perf
Improve perf of db save and query
2021-04-24 15:57:51 +02:00
Bond-009
1a54338e38 Merge pull request #5892 from crobibero/password-obsolete 2021-04-23 10:17:49 +02:00
Bond-009
184e05aeb6 Merge pull request #5681 from BaronGreenback/ContentFeatureOptimization
Various DLNA Optimizations
2021-04-22 16:45:36 +02:00
Bond-009
d83b2b1b2e Merge pull request #5889 from Bond-009/di
Remove unused/duplicate services
2021-04-22 16:36:39 +02:00
Brian J. Murrell
a3a4689af2 Allow to bind to priveleged ports (i.e. 80/443)
Add "AmbientCapabilities=CAP_NET_BIND_SERVICE" to the "[Service]"
section of the unit file to allow the server to bind to ports 80 and 443.

Signed-off-by: Brian J. Murrell <brian@interlinx.bc.ca>
2021-04-22 10:07:51 -04:00
Bond_009
a02e37daa0 SqliteItemRepository: remove redundant operations
removed:
* nameof -> FullName lookup
* IndexOf before Replace
* Enum.GetNames -> Enum.Parse roundtrip
2021-04-22 16:05:12 +02:00
crobibero
940c30081e Mark PasswordSha1 as obsolete 2021-04-22 06:49:54 -06:00
crobibero
856819e58f Don't use obsolete Password property 2021-04-22 06:49:42 -06:00
Bond_009
33327aa1a9 Improve fast path of ManagedFileSystem.GetValidFilename
|                      Method |          Data |        Mean |     Error |    StdDev |      Median |  Gen 0 | Gen 1 | Gen 2 | Allocated |
|---------------------------- |-------------- |------------:|----------:|----------:|------------:|-------:|------:|------:|----------:|
|       GetValidFilenameBench |    AC/DCKD/A |    52.29 ns |  0.537 ns |  0.448 ns |    52.35 ns | 0.0255 |     - |     - |      80 B |
|    GetValidFilenameOldBench |    AC/DCKD/A |    86.68 ns |  1.205 ns |  1.127 ns |    86.33 ns | 0.0587 |     - |     - |     184 B |
|    GetValidFilenameWinBench |    AC/DCKD/A |   448.55 ns |  1.228 ns |  1.088 ns |   448.33 ns | 0.0505 |     - |     - |     160 B |
| GetValidFilenameOldWinBench |    AC/DCKD/A |   865.21 ns |  5.734 ns |  5.083 ns |   866.60 ns | 0.0839 |     - |     - |     264 B |
|       GetValidFilenameBench | ValidFileName |    16.00 ns |  0.234 ns |  0.207 ns |    16.02 ns | 0.0102 |     - |     - |      32 B |
|    GetValidFilenameOldBench | ValidFileName |   100.66 ns |  1.255 ns |  1.174 ns |   101.21 ns | 0.0587 |     - |     - |     184 B |
|    GetValidFilenameWinBench | ValidFileName |   116.60 ns |  1.624 ns |  1.519 ns |   116.88 ns | 0.0356 |     - |     - |     112 B |
| GetValidFilenameOldWinBench | ValidFileName | 1,052.66 ns | 18.077 ns | 33.056 ns | 1,037.25 ns | 0.0839 |     - |     - |     264 B |
2021-04-22 12:31:47 +02:00
crobibero
5b0dc21c64 Mark password property as obsolete 2021-04-21 20:46:15 -06:00
Bond_009
81209258ab ManagedFileSystem: Rewrite GetValidFilename and more improvements 2021-04-22 03:11:21 +02:00
Bond_009
b323044139 Reduce string allocations/fs lookups in resolve code 2021-04-22 01:24:21 +02:00
Bond_009
b0914f9f2c Remove unused/duplicate services 2021-04-22 01:20:55 +02:00
Bond_009
f46195899e Improve perf of db save and query 2021-04-21 22:25:08 +02:00
Bond-009
95ab603a40 Merge pull request #5878 from Artiume/patch-2 2021-04-21 20:05:42 +02:00
artiume
831e768ee7 Request more logs 2021-04-21 13:15:03 -04:00
Bond-009
e19d89bb4f Merge pull request #5881 from cvium/tmdb-episode-externalids
Add tvrage and imdb ids for episodes
2021-04-21 16:15:53 +02:00
Bond-009
aa992efd31 Update MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbEpisodeProvider.cs 2021-04-21 16:15:31 +02:00
Bond-009
d5163b4167 Merge pull request #5877 from Bond-009/circ1
EncodingHelper: Fix circular dependency
2021-04-21 15:49:17 +02:00
Bond-009
24103d0953 Merge pull request #5876 from Bond-009/nullref5
DeepCopy: Throw ArgumentNullException if one of the args is null
2021-04-21 14:08:36 +02:00
Bond-009
86a2e6eeda Merge pull request #5867 from Bond-009/provider
ProviderManager: fix discard and 2 warnings
2021-04-21 13:53:53 +02:00
Bond-009
6b103f7ab2 Merge pull request #5870 from cvium/fix-tmdbpersonprovider 2021-04-21 13:53:41 +02:00
Bond-009
18cf030c77 Merge pull request #5866 from Bond-009/httpmsghandler
Switch from HttpClientHandler to SocketsHttpHandler
2021-04-21 13:53:03 +02:00
Bond-009
48ed4b016c Merge pull request #5808 from cvium/semi-fix-collection-perf 2021-04-21 13:52:51 +02:00
Bond-009
da78a96312 Merge pull request #5807 from Bond-009/refreshdelay
Remove throttle in refresh code
2021-04-21 13:52:05 +02:00
artiume
005ae80b31 Update var names 2021-04-21 07:11:14 -04:00
BaronGreenback
20e19ae9b3 Moved Assert 2021-04-21 12:08:02 +01:00
BaronGreenback
53e1b302cc Changes as requested 2021-04-21 10:18:29 +01:00
BaronGreenback
39eb5da44f Update tests/Jellyfin.Dlna.Tests/ProfileTester.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-04-21 10:09:21 +01:00
BaronGreenback
740e5ec167 Update tests/Jellyfin.Dlna.Tests/ProfileTester.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-04-21 10:09:14 +01:00
BaronGreenback
2559ceffab Update tests/Jellyfin.Dlna.Tests/ProfileTester.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-04-21 10:09:05 +01:00
cvium
96348ed744 Add tvrage and imdb ids for episodes 2021-04-21 08:33:29 +02:00
artiume
dcd96909cd Fix Audiobook Resume
https://github.com/jellyfin/jellyfin/issues/5703
2021-04-20 19:28:18 -04:00
Bond_009
499bac5185 EncodingHelper: Fix circular dependency 2021-04-20 23:03:36 +02:00
Bond_009
63e9b1ae2d DeepCopy: Throw ArgumentNullException if one of the args is null 2021-04-20 22:59:51 +02:00
BaronGreenback
522d5a7158 Fixed indent 2021-04-20 18:17:48 +01:00
BaronGreenback
41246909dc fixed merge 2021-04-20 18:14:50 +01:00
BaronGreenback
f8b717e7c5 Merge branch 'master' into ProfileMatch 2021-04-20 18:10:38 +01:00
BaronGreenback
7848ea1484 missed one. 2021-04-20 18:08:19 +01:00
BaronGreenback
a99caa0daa Changed testing 2021-04-20 18:05:38 +01:00
Bond-009
5a6e60b414 Merge pull request #5859 from cvium/fix-streambuilder-permissions
Respect user settings for transcode and remux
2021-04-20 17:56:12 +02:00
Bond-009
233900401e Merge pull request #5873 from cvium/fix-displaypref-migration 2021-04-20 15:51:57 +02:00
cvium
4d7c1fbdca use int.Parse 2021-04-20 13:43:05 +02:00
cvium
c0ea56a10d use int.Parse 2021-04-20 13:35:08 +02:00
Bond-009
94d339cf12 Merge pull request #5744 from mohd-akram/absolute-dvd-order 2021-04-20 13:29:31 +02:00
cvium
cbb855e65f Check for empty string when migrating displaypreferences 2021-04-20 13:24:15 +02:00
BaronGreenback
092c610fbf Update Emby.Dlna/DlnaManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-04-20 08:26:41 +01:00
cvium
06b8cf42d1 Fix TMDb Person Provider 2021-04-20 08:59:15 +02:00
Bond_009
dcd6ab769b ProviderManager: fix discard and 2 warnings 2021-04-19 23:52:58 +02:00
Bond_009
500c2e5224 Switch from HttpClientHandler to SocketsHttpHandler
SocketsHttpHandler is the default for .Net Core 2.1 and newer

Set RequestHeaderEncoding to UTF-8 by default
2021-04-19 22:37:24 +02:00
BaronGreenback
4449217f8f simplified isMatch 2021-04-19 14:24:58 +01:00
Bond-009
4c915f5edf Merge pull request #5683 from jellyfin/dependabot/nuget/Newtonsoft.Json-13.0.1
Bump Newtonsoft.Json from 12.0.3 to 13.0.1
2021-04-19 15:11:11 +02:00
Bond-009
83f20fee4a Merge pull request #5799 from jellyfin/dependabot/nuget/AutoFixture.Xunit2-4.16.0
Bump AutoFixture.Xunit2 from 4.15.0 to 4.16.0
2021-04-19 15:10:11 +02:00
dependabot[bot]
dc628d1e1c Bump AutoFixture.Xunit2 from 4.15.0 to 4.16.0
Bumps [AutoFixture.Xunit2](https://github.com/AutoFixture/AutoFixture) from 4.15.0 to 4.16.0.
- [Release notes](https://github.com/AutoFixture/AutoFixture/releases)
- [Commits](https://github.com/AutoFixture/AutoFixture/compare/v4.15.0...v4.16.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-19 13:07:31 +00:00
BaronGreenback
95b733ad4c reworked code 2021-04-19 14:07:14 +01:00
Bond-009
8e6d79aa3e Merge pull request #5690 from jellyfin/dependabot/nuget/AutoFixture.AutoMoq-4.16.0
Bump AutoFixture.AutoMoq from 4.15.0 to 4.16.0
2021-04-19 15:06:45 +02:00
Bond-009
5a4cfe11cf Merge pull request #5863 from cvium/fix-index-migration
use IF NOT EXISTS in migration
2021-04-19 15:06:08 +02:00
Mohamed Akram
64071873a0 Use StringComparison.Ordinal 2021-04-19 16:51:44 +04:00
Bond-009
4eeb69233d Merge pull request #5852 from cvium/fix-person-creation
Add Person to TypedBaseItems if it's new
2021-04-19 14:28:57 +02:00
dependabot[bot]
442bc8671b Bump AutoFixture.AutoMoq from 4.15.0 to 4.16.0
Bumps [AutoFixture.AutoMoq](https://github.com/AutoFixture/AutoFixture) from 4.15.0 to 4.16.0.
- [Release notes](https://github.com/AutoFixture/AutoFixture/releases)
- [Commits](https://github.com/AutoFixture/AutoFixture/compare/v4.15.0...v4.16.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-19 12:08:51 +00:00
Bond-009
8536418553 Merge pull request #5809 from jellyfin/dependabot/nuget/AutoFixture-4.16.0
Bump AutoFixture from 4.15.0 to 4.16.0
2021-04-19 14:07:57 +02:00
Bond-009
ebe8301404 Merge pull request #5860 from cvium/fix-notification-user-list
Fix notification disabled users list
2021-04-19 14:07:18 +02:00
cvium
586e1fc58a use IF NOT EXISTS in migration 2021-04-19 13:51:55 +02:00
BaronGreenback
c68f616377 Flip fields 2021-04-19 12:36:30 +01:00
Mohamed Akram
90b941b3f6 Add review changes 2021-04-19 14:59:24 +04:00
cvium
a9ca3c8b01 Fix notification disabled users list 2021-04-19 11:38:27 +02:00
BaronGreenback
107412f2f2 Update FFProbeVideoInfo.cs 2021-04-19 10:23:05 +01:00
BaronGreenback
6b2b484987 Update SubtitleScheduledTask.cs 2021-04-19 10:22:32 +01:00
cvium
8933389753 Respect user settings for transcode and remux 2021-04-19 10:49:52 +02:00
Claus Vium
665220c4fb Merge pull request #5848 from sgmoore/IndexError
Fix ArgumentOutOfRangeException scanning AudioBooks
2021-04-19 08:29:28 +02:00
cvium
351b987982 Add Person to TypedBaseItems if it's new 2021-04-18 12:34:33 +02:00
Stephen Moore
e841922ffd Fix ArgumentOutOfRangeException scanning AudioBooks
AudioResolver.ResolveMultipleAudio method can attempt to access the first item in a List without checking if the list is empty which throws an ArgumentOutOfRangeException and stops the 'Scan Library' process.
2021-04-17 17:21:40 +01:00
Bond-009
990e4e8e58 Merge pull request #5843 from BaronGreenback/Cleanup4
Code Clean up: Remove unused using directives
2021-04-17 14:51:33 +02:00
BaronGreenback
bc1cc2d04a Remove unused using directives 2021-04-17 11:37:55 +01:00
BaronGreenback
bb6fddde9a Group Methods 2021-04-17 11:19:09 +01:00
BaronGreenback
80877aa945 Cleaned up "value assigned is not used in any execution path" 2021-04-17 09:27:58 +01:00
Jack
198cc6e76a Some code cleanup. Allow NextUpDateCutoff to be null 2021-04-16 13:57:22 -04:00
Jack
d7855500c2 Add NextUpCutoffDate to NextUpQuery 2021-04-15 14:48:21 -04:00
BaronGreenback
3199d1c902 Fix: PlayTo using external ip not internal 2021-04-15 18:36:47 +01:00
Cody Robibero
b63f615fd4 Enable nullability for ServerDiscoveryInfo (#5804) 2021-04-15 15:39:59 +02:00
Bond-009
91d6ffd731 Merge pull request #5810 from jellyfin/dependabot/github_actions/eps1lon/actions-label-merge-conflict-v2.0.1
Bump eps1lon/actions-label-merge-conflict from v2.0.0 to v2.0.1
2021-04-14 22:47:48 +02:00
Joshua M. Boniface
e2cfc308ea Merge pull request #5729 from crobibero/dotnet5.0.5
Update to dotnet 5.0.5
2021-04-14 09:49:43 -04:00
Bond-009
159431ad2a Merge pull request #5612 from Bond-009/passwordhash 2021-04-14 15:41:23 +02:00
dependabot[bot]
1d4c8dcde3 Bump eps1lon/actions-label-merge-conflict from v2.0.0 to v2.0.1
Bumps [eps1lon/actions-label-merge-conflict](https://github.com/eps1lon/actions-label-merge-conflict) from v2.0.0 to v2.0.1.
- [Release notes](https://github.com/eps1lon/actions-label-merge-conflict/releases)
- [Changelog](https://github.com/eps1lon/actions-label-merge-conflict/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eps1lon/actions-label-merge-conflict/compare/v2.0.0...b8bf8341285ec9a4567d4318ba474fee998a6919)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-14 12:51:54 +00:00
Bond-009
9b4f1bbf19 Add workflows for rebase and automation (#5451)
Add workflows for rebase and automation
2021-04-14 14:51:27 +02:00
crobibero
78791a932f Simplify baseUrl check 2021-04-14 06:44:11 -06:00
Fernando Fernández
55700e0d1c Add workflows for rebase and project automation 2021-04-14 14:14:17 +02:00
BaronGreenback
0b774eac12 Enables the ability to bind to loopback address. (#5773) 2021-04-14 11:26:05 +02:00
Patrick Barron
12fa5c0c41 Add AccessToken to device 2021-04-13 20:01:31 -04:00
Patrick Barron
75df6965a0 Don't use database for QuickConnect 2021-04-13 20:01:21 -04:00
cvium
d44b2e2ee5 fixes 2021-04-13 20:12:50 +02:00
Bond_009
3d0a42da9e Remove throttle in refresh code 2021-04-13 20:09:50 +02:00
dependabot[bot]
d459f625d5 Bump Newtonsoft.Json from 12.0.3 to 13.0.1
Bumps [Newtonsoft.Json](https://github.com/JamesNK/Newtonsoft.Json) from 12.0.3 to 13.0.1.
- [Release notes](https://github.com/JamesNK/Newtonsoft.Json/releases)
- [Commits](https://github.com/JamesNK/Newtonsoft.Json/compare/12.0.3...13.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-13 17:11:49 +00:00
dependabot[bot]
27202ae8aa Bump AutoFixture from 4.15.0 to 4.16.0
Bumps [AutoFixture](https://github.com/AutoFixture/AutoFixture) from 4.15.0 to 4.16.0.
- [Release notes](https://github.com/AutoFixture/AutoFixture/releases)
- [Commits](https://github.com/AutoFixture/AutoFixture/compare/v4.15.0...v4.16.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-13 17:11:34 +00:00
Bond-009
51af569159 Merge pull request #5802 from jellyfin/dependabot/nuget/TMDbLib-1.8.1
Bump TMDbLib from 1.7.3-alpha to 1.8.1
2021-04-13 19:10:59 +02:00
Bond-009
7c9772ac81 Merge pull request #5713 from Bond-009/websocketauth
Add tests for unauthenticated websocket access
2021-04-13 18:29:29 +02:00
Bond-009
ba2a1c0209 Merge pull request #5806 from Bond-009/nullref5
Fix possible ArgumentNullException
2021-04-13 18:00:33 +02:00
Bond_009
2b948aead9 Fix possible ArgumentNullException
```
System.ArgumentNullException: Value cannot be null. (Parameter 'source')
   at System.Linq.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument)
   at System.Linq.Enumerable.Where[TSource](IEnumerable`1 source, Func`2 predicate)
   at MediaBrowser.Providers.Manager.ProviderManager.GetImages(BaseItem
           item, IRemoteImageProvider provider, IReadOnlyCollection`1
           preferredLanguages, CancellationToken cancellationToken,
           Nullable`1 type) in
   /home/bond/dev/jellyfin/MediaBrowser.Providers/Manager/ProviderManager.cs:line
   280
```
2021-04-13 19:53:09 +02:00
Bond-009
4d014e3e5a Merge pull request #5653 from jellyfin/dependabot/nuget/BlurHashSharp.SkiaSharp-1.2.0
Bump BlurHashSharp.SkiaSharp from 1.1.1 to 1.2.0
2021-04-13 16:34:51 +02:00
cvium
723b6abcb3 Optimize the way items are grouped into collections 2021-04-13 15:38:13 +02:00
crobibero
b11718a01d Properly redirect healthcheck endpoint if using BaseUrl 2021-04-13 07:12:49 -06:00
dependabot[bot]
f1c4b541c1 Bump TMDbLib from 1.7.3-alpha to 1.8.1
Bumps [TMDbLib](https://github.com/LordMike/TMDbLib) from 1.7.3-alpha to 1.8.1.
- [Release notes](https://github.com/LordMike/TMDbLib/releases)
- [Commits](https://github.com/LordMike/TMDbLib/compare/v1.7.3-alpha...v1.8.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-13 13:09:28 +00:00
dependabot[bot]
63355af518 Bump BlurHashSharp.SkiaSharp from 1.1.1 to 1.2.0
Bumps [BlurHashSharp.SkiaSharp](https://github.com/Bond-009/BlurHashSharp) from 1.1.1 to 1.2.0.
- [Release notes](https://github.com/Bond-009/BlurHashSharp/releases)
- [Commits](https://github.com/Bond-009/BlurHashSharp/commits/v1.2.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-13 13:09:10 +00:00
Bond-009
89ae336694 Merge pull request #5654 from jellyfin/dependabot/nuget/BlurHashSharp-1.2.0
Bump BlurHashSharp from 1.1.1 to 1.2.0
2021-04-13 15:08:25 +02:00
Bond-009
8fdb3c88c4 Merge pull request #5794 from richlander/patch-1
Remove coupling to distro
2021-04-13 14:51:38 +02:00
Bond-009
0dbaa97d0d Merge pull request #5792 from Bond-009/nullref4 2021-04-13 11:25:51 +02:00
Rich Lander
fe54e9ae9d Remove coupling to distro
- The substring `-buster-slim` isn't useful/correct. 
- .NET 6 (from my team) is based exclusively on bullseye.
- If you update just `DOTNET_VERSION` to `6.0`, `docker build` will fail. 
- If the goal is to force using `buster` throughout the Dockerfile, then making `DOTNET_VERSION` configurable isn't correct.
- Context: https://github.com/dotnet/dotnet-docker/blob/main/src/runtime-deps/6.0/bullseye-slim/amd64/Dockerfile#L1

Just saw this as a drive by look at your code. Is intended as helpful context.
2021-04-12 17:16:26 -07:00
Bond-009
8a73e19f5e Merge pull request #5768 from Bond-009/dangling 2021-04-12 22:43:26 +02:00
Bond_009
8045a488ce Fix possible ArgumentNullException
```
  Error Message:
   System.ArgumentNullException : Value cannot be null. (Parameter 'source')
  Stack Trace:
     at System.Linq.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument)
   at System.Linq.Enumerable.Select[TSource,TResult](IEnumerable`1 source, Func`2 selector)
   at Emby.Server.Implementations.Library.LibraryManager.ResolveItem(ItemResolveArgs args, IItemResolver[] resolvers) in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 475
   at Emby.Server.Implementations.Library.LibraryManager.ResolvePath(FileSystemMetadata fileInfo, IDirectoryService directoryService, IItemResolver[] resolvers, Folder parent, String collectionType, LibraryOptions libraryOptions) in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 618
   at Emby.Server.Implementations.Library.LibraryManager.ResolvePath(FileSystemMetadata fileInfo, Folder parent) in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 536
   at Emby.Server.Implementations.Library.LibraryManager.GetUserRootFolder() in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 812
   at Emby.Server.Implementations.Library.LibraryManager.GetCollectionFolders(BaseItem item) in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 2080
   at Emby.Server.Implementations.Library.LibraryManager.GetLibraryOptions(BaseItem item) in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 2116
   at MediaBrowser.Providers.Manager.ProviderManager.SaveMetadata(BaseItem item, ItemUpdateType updateType, IEnumerable`1 savers) in /home/vsts/work/1/s/MediaBrowser.Providers/Manager/ProviderManager.cs:line 672
   at MediaBrowser.Providers.Manager.ProviderManager.SaveMetadata(BaseItem item, ItemUpdateType updateType) in /home/vsts/work/1/s/MediaBrowser.Providers/Manager/ProviderManager.cs:line 655
   at Emby.Server.Implementations.Library.LibraryManager.RunMetadataSavers(BaseItem item, ItemUpdateType updateReason) in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 2017
   at Emby.Server.Implementations.Library.LibraryManager.UpdateItemsAsync(IReadOnlyList`1 items, BaseItem parent, ItemUpdateType updateReason, CancellationToken cancellationToken) in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 1975
   at Emby.Server.Implementations.Library.LibraryManager.CreateRootFolder() in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 775
   at Emby.Server.Implementations.Library.LibraryManager.get_RootFolder() in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 180
   at Emby.Server.Implementations.IO.LibraryMonitor.Start() in /home/vsts/work/1/s/Emby.Server.Implementations/IO/LibraryMonitor.cs:line 135
   at Emby.Server.Implementations.IO.LibraryMonitorStartup.RunAsync() in /home/vsts/work/1/s/Emby.Server.Implementations/IO/LibraryMonitorStartup.cs:line 26
   at Emby.Server.Implementations.ApplicationHost.StartEntryPoints(IEnumerable`1 entryPoints, Boolean isBeforeStartup)+MoveNext() in /home/vsts/work/1/s/Emby.Server.Implementations/ApplicationHost.cs:line 518
   at System.Threading.Tasks.Task.WhenAll(IEnumerable`1 tasks)
   at Emby.Server.Implementations.ApplicationHost.RunStartupTasksAsync(CancellationToken cancellationToken) in /home/vsts/work/1/s/Emby.Server.Implementations/ApplicationHost.cs:line 502
   at Jellyfin.Server.Integration.Tests.JellyfinApplicationFactory.CreateServer(IWebHostBuilder builder) in /home/vsts/work/1/s/tests/Jellyfin.Server.Integration.Tests/JellyfinApplicationFactory.cs:line 101
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.EnsureServer()
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateDefaultClient(DelegatingHandler[] handlers)
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateDefaultClient(Uri baseAddress, DelegatingHandler[] handlers)
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateClient(WebApplicationFactoryClientOptions options)
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateClient()
   at Jellyfin.Server.Integration.Tests.Controllers.ActivityLogControllerTests.ActivityLog_GetEntries_Ok() in /home/vsts/work/1/s/tests/Jellyfin.Server.Integration.Tests/Controllers/ActivityLogControllerTests.cs:line 21
--- End of stack trace from previous location ---
```
2021-04-12 22:01:35 +02:00
Claus Vium
dc4714fe40 fix webp compatibility testing (#5787) 2021-04-12 19:54:32 +02:00
Cody Robibero
cc59abd54e Mark cropWhitespace parameter as obsolete (#5751) 2021-04-12 15:50:24 +02:00
Bond-009
b94218849c Merge pull request #5784 from Bond-009/racecondition
Fix random failing of tests
2021-04-12 15:47:37 +02:00
BaronGreenback
10d358c8da Update tests/Jellyfin.Networking.Tests/NetworkParseTests.cs
Co-authored-by: Odd Stråbø <oddstr13@openshell.no>
2021-04-12 10:28:24 +01:00
Bond_009
a4ffc7a813 Fix random failing of tests
Fully initialize the configuration manager at the init stage

```
Failed Jellyfin.Server.Integration.Tests.Controllers.ActivityLogControllerTests.ActivityLog_GetEntries_Ok [2 s]
  Error Message:
   MediaBrowser.Common.Extensions.ResourceNotFoundException : Configuration with key metadata not found.
  Stack Trace:
     at Emby.Server.Implementations.AppBase.BaseConfigurationManager.<>c__DisplayClass43_0.<GetConfiguration>b__0(String k) in D:\a\1\s\Emby.Server.Implementations\AppBase\BaseConfigurationManager.cs:line 309
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Emby.Server.Implementations.AppBase.BaseConfigurationManager.GetConfiguration(String key) in D:\a\1\s\Emby.Server.Implementations\AppBase\BaseConfigurationManager.cs:line 300
   at MediaBrowser.Common.Configuration.ConfigurationManagerExtensions.GetConfiguration[T](IConfigurationManager manager, String key) in D:\a\1\s\MediaBrowser.Common\Configuration\IConfigurationManager.cs:line 88
   at MediaBrowser.Controller.Library.MetadataConfigurationExtensions.GetMetadataConfiguration(IConfigurationManager config) in D:\a\1\s\MediaBrowser.Controller\Library\MetadataConfigurationStore.cs:line 28
   at Emby.Server.Implementations.Library.ResolverHelper.SetDateCreated(BaseItem item, IFileSystem fileSystem, FileSystemMetadata info) in D:\a\1\s\Emby.Server.Implementations\Library\ResolverHelper.cs:line 159
   at Emby.Server.Implementations.Library.ResolverHelper.EnsureDates(IFileSystem fileSystem, BaseItem item, ItemResolveArgs args) in D:\a\1\s\Emby.Server.Implementations\Library\ResolverHelper.cs:line 153
   at Emby.Server.Implementations.Library.ResolverHelper.SetInitialItemValues(BaseItem item, ItemResolveArgs args, IFileSystem fileSystem, ILibraryManager libraryManager) in D:\a\1\s\Emby.Server.Implementations\Library\ResolverHelper.cs:line 81
   at Emby.Server.Implementations.Library.LibraryManager.ResolveItem(ItemResolveArgs args, IItemResolver[] resolvers) in D:\a\1\s\Emby.Server.Implementations\Library\LibraryManager.cs:line 480
   at Emby.Server.Implementations.Library.LibraryManager.ResolvePath(FileSystemMetadata fileInfo, IDirectoryService directoryService, IItemResolver[] resolvers, Folder parent, String collectionType, LibraryOptions libraryOptions) in D:\a\1\s\Emby.Server.Implementations\Library\LibraryManager.cs:line 618
   at Emby.Server.Implementations.Library.LibraryManager.ResolvePath(FileSystemMetadata fileInfo, Folder parent) in D:\a\1\s\Emby.Server.Implementations\Library\LibraryManager.cs:line 536
   at Emby.Server.Implementations.Library.LibraryManager.CreateRootFolder() in D:\a\1\s\Emby.Server.Implementations\Library\LibraryManager.cs:line 732
   at Emby.Server.Implementations.Library.LibraryManager.get_RootFolder() in D:\a\1\s\Emby.Server.Implementations\Library\LibraryManager.cs:line 180
   at Emby.Server.Implementations.IO.LibraryMonitor.Start() in D:\a\1\s\Emby.Server.Implementations\IO\LibraryMonitor.cs:line 135
   at Emby.Server.Implementations.IO.LibraryMonitorStartup.RunAsync() in D:\a\1\s\Emby.Server.Implementations\IO\LibraryMonitorStartup.cs:line 26
   at Emby.Server.Implementations.ApplicationHost.StartEntryPoints(IEnumerable`1 entryPoints, Boolean isBeforeStartup)+MoveNext() in D:\a\1\s\Emby.Server.Implementations\ApplicationHost.cs:line 541
   at System.Threading.Tasks.Task.WhenAll(IEnumerable`1 tasks)
   at Emby.Server.Implementations.ApplicationHost.RunStartupTasksAsync(CancellationToken cancellationToken) in D:\a\1\s\Emby.Server.Implementations\ApplicationHost.cs:line 525
   at Jellyfin.Server.Integration.Tests.JellyfinApplicationFactory.CreateServer(IWebHostBuilder builder) in D:\a\1\s\tests\Jellyfin.Server.Integration.Tests\JellyfinApplicationFactory.cs:line 101
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.EnsureServer()
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateDefaultClient(DelegatingHandler[] handlers)
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateDefaultClient(Uri baseAddress, DelegatingHandler[] handlers)
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateClient(WebApplicationFactoryClientOptions options)
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateClient()
   at Jellyfin.Server.Integration.Tests.Controllers.ActivityLogControllerTests.ActivityLog_GetEntries_Ok() in D:\a\1\s\tests\Jellyfin.Server.Integration.Tests\Controllers\ActivityLogControllerTests.cs:line 21
--- End of stack trace from previous location ---

```
2021-04-12 00:28:17 +02:00
Bond-009
1361ccd9ea Merge pull request #5763 from Bond-009/ipobjects
Minor improvements to IPObjects
2021-04-11 23:31:03 +02:00
Joshua M. Boniface
4deccd451e Mention testing too 2021-04-11 16:31:10 -04:00
Joshua M. Boniface
f381c53634 Fix typo 2021-04-11 14:51:45 -04:00
Joshua M. Boniface
7aa53b060e Add label commenter workflow
Right now the main purpose is to handle instructions for stable
backports. Can be expanded in the future.
2021-04-11 14:46:43 -04:00
Joshua M. Boniface
770c123d12 Merge pull request #5764 from cvium/fix-folders-perms
Do not check permissions for Folders collectiontype
2021-04-11 13:30:15 -04:00
Joshua M. Boniface
19e7ebb279 Merge pull request #5416 from BaronGreenback/SubnetOverlappFix 2021-04-11 13:29:00 -04:00
Joshua M. Boniface
cd0daa7985 Merge pull request #5748 from cvium/playlist-audio-type
Set mediatype to Audio for playlists in a music library
2021-04-11 13:28:49 -04:00
BaronGreenback
fb7587dd84 Renamed 2021-04-11 17:17:05 +01:00
Bond-009
58fb3e9610 Merge pull request #5767 from cvium/dont-delete-artwork
Do not touch "old" local artwork unless saving locally
2021-04-11 17:56:01 +02:00
Bond-009
790f7430aa Merge pull request #5556 from oddstr13/image-fill-resize 2021-04-11 13:34:22 +02:00
Bond-009
f0625bb023 Merge pull request #5769 from cvium/workstation-gc
Enable Workstation GC mode
2021-04-11 13:33:42 +02:00
cvium
01491796a2 Enable Workstation GC mode 2021-04-11 12:57:28 +02:00
Odd Stråbø
d0857cf655 Fix build, increase StringBuilder starting size 2021-04-11 08:21:23 +02:00
Odd Stråbø
e0edbc5754 Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-04-11 08:21:23 +02:00
Odd Stråbø
afff226514 Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-04-11 08:21:23 +02:00
Odd Stråbø
e57c1655fb Remove GetSizeEstimate & GetEstimatedAspectRatio
from MediaBrowser.Controller.Drawing.ImageHelper

Rework GetCacheFilePath to take requested with and height parameters
in stead of using estimated output size
2021-04-11 08:21:23 +02:00
Odd Stråbø
13d0837b78 (mostly)Fix ResizeFill 2021-04-11 08:21:23 +02:00
Odd Stråbø
383aa4e4d9 Add Resize to fill box alternative to image endpoints 2021-04-11 08:20:47 +02:00
Bond-009
240e67d485 Merge pull request #5747 from cvium/more-convertimage-fixes
Catch IOException and include stack trace when saving images
2021-04-11 00:58:49 +02:00
Bond-009
f4654aaeb1 Merge pull request #5766 from cvium/fix-scheduledtaskworker
Use sync Serialize when writing scheduled tasks to disk
2021-04-11 00:38:44 +02:00
Bond_009
5fc664fd4f Add test for handling dangling symlinks 2021-04-11 00:35:32 +02:00
cvium
35cfd760d4 Do not touch "old" local artwork unless saving locally 2021-04-11 00:27:53 +02:00
cvium
42bcf171d9 Use sync Serialize when writing scheduled tasks to disk 2021-04-10 23:54:35 +02:00
Bond-009
62117a6c12 Merge pull request #5746 from cvium/dangling-symlinks 2021-04-10 23:18:55 +02:00
Patrick Barron
ed0b5ff017 Fix builds 2021-04-10 17:11:59 -04:00
Claus Vium
bf510ca04e Merge pull request #5750 from iwalton3/fix-audio-selection-uns
Fix setting audio stream in PlaybackInfo for jellyfin-web.
2021-04-10 23:10:16 +02:00
Patrick Barron
3ebc047434 Convert UpdateUser to solely async 2021-04-10 16:59:41 -04:00
cvium
f2e7491755 Do not check permissions for Folders collectiontype 2021-04-10 22:58:32 +02:00
Patrick Barron
8607b52541 Make device/session code async 2021-04-10 16:57:25 -04:00
Bond_009
be9cb7af2c Minor improvements to IPObjects 2021-04-10 22:42:09 +02:00
Patrick Barron
44e71774b1 Rewrite device manager using EF Core 2021-04-10 16:17:36 -04:00
Patrick Barron
f47fe308b1 Add navigation property to device entity 2021-04-10 16:17:02 -04:00
Patrick Barron
98e19c9fd3 Add device indexes 2021-04-10 16:16:08 -04:00
Patrick Barron
e6f1ffdc8d Add device entities to schema. 2021-04-10 16:15:59 -04:00
Patrick Barron
9cd5352358 Add device options entity 2021-04-10 16:03:20 -04:00
BaronGreenback
1fe26fe352 Work through dns failure on test. 2021-04-10 19:44:09 +01:00
BaronGreenback
af027b6283 Fixed after accepting suggestion. 2021-04-10 19:23:27 +01:00
BaronGreenback
0db5df86df Update Jellyfin.Api/Constants/Policies.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-04-10 18:49:18 +01:00
Bond-009
85daaec318 Merge pull request #5759 from Bond-009/logging
Fix LogUnmatchedProfile formatting
2021-04-10 17:17:24 +02:00
Bond_009
117736aac9 Fix LogUnmatchedProfile formatting 2021-04-10 17:09:45 +02:00
BaronGreenback
cf3aff93f2 revert change error 2021-04-10 12:09:24 +01:00
BaronGreenback
5fb7557763 Network Access Policy 2021-04-10 12:03:52 +01:00
Patrick Barron
271b4cadb7 Add device entity. 2021-04-09 23:16:07 -04:00
Bond-009
b2fbf97abd Merge pull request #4988 from Bond-009/crop 2021-04-10 02:57:43 +02:00
Bond-009
9d548c62ba Merge pull request #5258 from Smith00101010/next-up-specials-fix 2021-04-10 01:38:57 +02:00
Ian Walton
321e383965 Fix setting audio stream in PlaybackInfo for jellyfin-web. 2021-04-09 19:24:41 -04:00
Claus Vium
f99237cf9b Update Emby.Server.Implementations/IO/ManagedFileSystem.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-04-10 00:16:37 +02:00
cvium
ef527df28f Set mediatype to Audio for playlists in a music library 2021-04-10 00:06:48 +02:00
cvium
f2cba352e5 catch ioexception and include stack trace 2021-04-09 23:30:07 +02:00
Claus Vium
1a92d94e92 Merge pull request #5712 from BaronGreenback/5700 2021-04-09 23:06:40 +02:00
Claus Vium
d532e95410 Merge pull request #5734 from jellyfin/fix-isplayed-itemvalues
move IsPlayed to outerquery
2021-04-09 23:05:43 +02:00
cvium
1a3352003d don't die on dangling symlinks 2021-04-09 23:02:36 +02:00
Mohamed Akram
ce4f730221 Add support for TMDB series absolute and DVD order 2021-04-09 20:02:23 +04:00
cvium
381db60ed3 fix test 2021-04-09 15:05:39 +02:00
cvium
5c4be2416d Remove unused import 2021-04-09 13:48:25 +02:00
cvium
53db1a1ffc ... 2021-04-09 13:47:47 +02:00
cvium
457229c56d Simplification 2021-04-09 13:43:40 +02:00
cvium
69d2368fbc Copy paste error 2021-04-09 13:31:17 +02:00
cvium
e7fc18d0f3 Fix type check 2021-04-09 13:28:27 +02:00
cvium
08ccf2a49c Resolve name from episode folder 2021-04-09 13:20:12 +02:00
Bond-009
6577f1deb2 Merge pull request #5736 from jellyfin/catch-httprequestex-librarymanager
fetching images should not kill the scanner
2021-04-09 12:41:17 +02:00
Bond-009
900793e25d Merge pull request #5731 from Bond-009/usertests
Add tests for UserController
2021-04-09 12:04:13 +02:00
Claus Vium
a21b2714e7 fetching images should not kill the scanner 2021-04-09 12:03:56 +02:00
Claus Vium
db530e61f5 move IsPlayed to outerquery
IsPlayed is a column in UserDatas and does not belong in the inner query. None of the other UserDatas columns are in the innerquery.
2021-04-09 11:32:19 +02:00
Bond_009
391554d391 Add tests for UserController 2021-04-09 01:04:49 +02:00
Bond-009
a19a97ca42 Merge pull request #5721 from Bond-009/authenticatedtests
Add code to test authenticated endpoints
2021-04-08 23:33:18 +02:00
Bond-009
9bf3ec4ae2 Merge pull request #5730 from thornbill/disable-hevc-encoding
Disable HEVC encoding by default
2021-04-08 18:16:04 +02:00
Bill Thornton
cc0f191228 Disable hevc encoding by default 2021-04-08 09:57:17 -04:00
BaronGreenback
b645bb20de Update Emby.Server.Implementations/Updates/InstallationManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-04-08 14:38:25 +01:00
crobibero
b1faf8c2e8 Update to dotnet 5.0.5 2021-04-08 07:36:13 -06:00
Claus Vium
9d0467addf Merge pull request #5725 from BrianCArnold/Fix2845_PlaylistDeletion 2021-04-08 14:25:51 +02:00
Bond-009
47bbe4c146 Merge pull request #5717 from cvium/nullable-custompref-value 2021-04-08 13:15:02 +02:00
Brian Arnold
a2acfb02e9 Can't reference System.IO.Path as 'Path', even though System.IO is in the usings, because there is a Path property of the class. 2021-04-08 05:19:28 -04:00
BrianCArnold
2314487e38 Update MediaBrowser.Controller/Playlists/Playlist.cs
Included suggested change from cvium

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-04-08 04:03:43 -04:00
Brian Arnold
7c457da9ab Fixed issue with determining if a directory was a directory or file when it contained a '.' character in the directory path.
Resolves: #2845
2021-04-08 02:49:41 -04:00
Joshua M. Boniface
14f94b6793 Merge pull request #5707 from ferferga/deyarn 2021-04-07 18:51:22 -04:00
Bond-009
631df8c560 Merge pull request #5520 from Bond-009/hdhomerun2 2021-04-08 00:27:58 +02:00
Bond_009
45a16c19a7 Add code to test authenticated endpoints 2021-04-07 21:35:54 +02:00
Bond-009
51a075a895 Merge pull request #5711 from jellyfin/dependabot/nuget/Microsoft.AspNetCore.Mvc.Testing-5.0.5
Bump Microsoft.AspNetCore.Mvc.Testing from 5.0.3 to 5.0.5
2021-04-07 17:42:38 +02:00
Bond-009
5042246360 Merge pull request #5710 from jellyfin/dependabot/nuget/Microsoft.AspNetCore.Authorization-5.0.5
Bump Microsoft.AspNetCore.Authorization from 5.0.3 to 5.0.5
2021-04-07 17:42:27 +02:00
Claus Vium
f718735b4e Merge pull request #5688 from crobibero/api-docs-sever-discovery
Add SessionDiscoveryInfo to generated api-docs
2021-04-07 14:36:49 +02:00
Claus Vium
a1718e392b Merge pull request #5631 from BrianCArnold/FixMessageCommand 2021-04-07 14:36:08 +02:00
cvium
4892e0cf06 fix build...somehow 2021-04-07 13:17:59 +02:00
cvium
d772fddfb3 make custompref value nullable 2021-04-07 13:09:00 +02:00
Bond_009
fbd9141ecd Add tests for unauthenticated websocket access 2021-04-06 22:46:54 +02:00
BaronGreenback
65f880be32 Keep plugin status after update. 2021-04-06 20:59:47 +01:00
dependabot[bot]
3651ee5ed3 Bump Microsoft.AspNetCore.Mvc.Testing from 5.0.3 to 5.0.5
Bumps [Microsoft.AspNetCore.Mvc.Testing](https://github.com/dotnet/aspnetcore) from 5.0.3 to 5.0.5.
- [Release notes](https://github.com/dotnet/aspnetcore/releases)
- [Commits](https://github.com/dotnet/aspnetcore/compare/v5.0.3...v5.0.5)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-06 18:35:51 +00:00
dependabot[bot]
e85ac4d975 Bump Microsoft.AspNetCore.Authorization from 5.0.3 to 5.0.5
Bumps [Microsoft.AspNetCore.Authorization](https://github.com/dotnet/aspnetcore) from 5.0.3 to 5.0.5.
- [Release notes](https://github.com/dotnet/aspnetcore/releases)
- [Commits](https://github.com/dotnet/aspnetcore/compare/v5.0.3...v5.0.5)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-06 18:35:36 +00:00
Bond-009
221d9373e8 Merge pull request #5708 from Bond-009/netanalyzers
Enable NetAnalyzers for more projects
2021-04-06 20:34:30 +02:00
Bond_009
95327b842e Enable NetAnalyzers for more projects 2021-04-06 20:02:06 +02:00
Fernando Fernández
8d6713af65 Use npm ci instead of npm i 2021-04-06 17:37:50 +02:00
Fernando Fernández
ba958c70d5 (jellyfin-web): Switch to npm 2021-04-06 17:24:01 +02:00
Maxr1998
a7c8bc632f Fix typo in test data filename 2021-04-06 15:34:29 +02:00
Maxr1998
07751768f4 Add tests for music video metadata 2021-04-06 15:34:29 +02:00
Maxr1998
24ac8a1223 Improve metadata probing to better support music videos 2021-04-06 15:34:29 +02:00
Bond-009
3412120c61 Merge pull request #5702 from cvium/ws-auth
add simple auth handling to websocketmanager
2021-04-05 17:31:10 +02:00
cvium
14d0acf285 add simple auth handling to websocketmanager 2021-04-05 15:12:47 +02:00
Bond-009
d748d6cf3f Merge pull request #5699 from Bond-009/ffprobetests 2021-04-05 13:50:44 +02:00
Bond_009
e6d487f7ea Add test for ProbeResultNormalizer.GetMediaInfo 2021-04-05 01:53:00 +02:00
Bond-009
7978f30ff7 Merge pull request #5693 from Maxr1998/probe-result-tweaks 2021-04-04 17:16:17 +02:00
Maxr1998
873ad72c18 Support MKV DATE_RELEASED tag for PremiereDate
https://www.matroska.org/technical/tagging.html#temporal-information
2021-04-04 15:41:01 +02:00
Maxr1998
8d27e10cb6 Interpret ffprobe date as UTC
Currently, dates are parsed according to the local time, which results in potentially wrong data being stored in the database after normalizing to UTC - e.g. 2021-04-04 would be stored as '2021-04-03 22:00:00Z' and displayed in the UI as 03.04.2021.
2021-04-04 15:13:54 +02:00
Maxr1998
e0f513232b Reduce nesting 2021-04-04 15:13:54 +02:00
Bond-009
8eaefce14e Merge pull request #5691 from Bond-009/nullref3
Fix possible nullref
2021-04-04 13:22:49 +02:00
Bond_009
2ed0801be2 Fix possible nullref
when `ProviderManager.SaveMetadata` gets called before
`ProviderManager.AddParts`

```
Error Message:
   System.ArgumentNullException : Value cannot be null. (Parameter 'source')
  Stack Trace:
     at System.Linq.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument)
   at System.Linq.Enumerable.Where[TSource](IEnumerable`1 source, Func`2 predicate)
   at MediaBrowser.Providers.Manager.ProviderManager.SaveMetadata(BaseItem item, ItemUpdateType updateType, IEnumerable`1 savers) in D:\a\1\s\MediaBrowser.Providers\Manager\ProviderManager.cs:line 674
   at MediaBrowser.Providers.Manager.ProviderManager.SaveMetadata(BaseItem item, ItemUpdateType updateType) in D:\a\1\s\MediaBrowser.Providers\Manager\ProviderManager.cs:line 655
   at Emby.Server.Implementations.Library.LibraryManager.RunMetadataSavers(BaseItem item, ItemUpdateType updateReason) in D:\a\1\s\Emby.Server.Implementations\Library\LibraryManager.cs:line 2012
   at Emby.Server.Implementations.Library.LibraryManager.UpdateItemsAsync(IReadOnlyList`1 items, BaseItem parent, ItemUpdateType updateReason, CancellationToken cancellationToken) in D:\a\1\s\Emby.Server.Implementations\Library\LibraryManager.cs:line 1970
   at Emby.Server.Implementations.Library.LibraryManager.CreateRootFolder() in D:\a\1\s\Emby.Server.Implementations\Library\LibraryManager.cs:line 775
   at Emby.Server.Implementations.Library.LibraryManager.get_RootFolder() in D:\a\1\s\Emby.Server.Implementations\Library\LibraryManager.cs:line 180
   at Emby.Server.Implementations.IO.LibraryMonitor.Start() in D:\a\1\s\Emby.Server.Implementations\IO\LibraryMonitor.cs:line 135
   at Emby.Server.Implementations.IO.LibraryMonitorStartup.RunAsync() in D:\a\1\s\Emby.Server.Implementations\IO\LibraryMonitorStartup.cs:line 26
   at Emby.Server.Implementations.ApplicationHost.StartEntryPoints(IEnumerable`1 entryPoints, Boolean isBeforeStartup)+MoveNext() in D:\a\1\s\Emby.Server.Implementations\ApplicationHost.cs:line 541
   at System.Threading.Tasks.Task.WhenAll(IEnumerable`1 tasks)
   at Emby.Server.Implementations.ApplicationHost.RunStartupTasksAsync(CancellationToken cancellationToken) in D:\a\1\s\Emby.Server.Implementations\ApplicationHost.cs:line 525
   at Jellyfin.Server.Integration.Tests.JellyfinApplicationFactory.CreateServer(IWebHostBuilder builder) in D:\a\1\s\tests\Jellyfin.Server.Integration.Tests\JellyfinApplicationFactory.cs:line 101
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.EnsureServer()
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateDefaultClient(DelegatingHandler[] handlers)
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateDefaultClient(Uri baseAddress, DelegatingHandler[] handlers)
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateClient(WebApplicationFactoryClientOptions options)
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateClient()
   at Jellyfin.Server.Integration.Tests.OpenApiSpecTests.GetSpec_ReturnsCorrectResponse() in D:\a\1\s\tests\Jellyfin.Server.Integration.Tests\OpenApiSpecTests.cs:line 26
--- End of stack trace from previous location ---
```
2021-04-04 01:45:15 +02:00
Bond-009
fa64d8e4f2 Merge pull request #5637 from dmitrylyzo/check-media-type 2021-04-04 01:25:09 +02:00
Dmitry Lyzo
36da7a06d7 Less negation
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-04-04 02:09:57 +03:00
Bond-009
ea2bd3398b Merge pull request #5685 from Bond-009/uselessnullcheck
Remove useless null check
2021-04-03 23:50:00 +02:00
Bond-009
cb111eb767 Merge pull request #5661 from ferferga/openapi-product-version
Return Major.Minor.Build instead of Major.Minor.Build.Revision for OpenAPI
2021-04-03 22:07:47 +02:00
Bond-009
4f387dca6e Merge pull request #5598 from cvium/fix_hls_default_values 2021-04-03 19:36:41 +02:00
Bond-009
9f21dd63ae Merge pull request #5684 from jellyfin/dependabot/nuget/Microsoft.NET.Test.Sdk-16.9.4
Bump Microsoft.NET.Test.Sdk from 16.9.1 to 16.9.4
2021-04-03 19:25:25 +02:00
crobibero
31d1dbfda6 Add SessionDiscoveryInfo to generated api-docs 2021-04-03 06:54:09 -06:00
Bond-009
959a09bdb0 Merge pull request #5676 from Bond-009/useless 2021-04-03 02:00:03 +02:00
Bond_009
0a00a73fec Remove useless null check 2021-04-03 01:46:31 +02:00
dependabot[bot]
7c70205326 Bump Microsoft.NET.Test.Sdk from 16.9.1 to 16.9.4
Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 16.9.1 to 16.9.4.
- [Release notes](https://github.com/microsoft/vstest/releases)
- [Commits](https://github.com/microsoft/vstest/compare/v16.9.1...v16.9.4)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-02 22:42:12 +00:00
Bond-009
8cb3dc8469 Merge pull request #5590 from jellyfin/dependabot/nuget/Microsoft.Extensions.Diagnostics.HealthChecks-5.0.4
Bump Microsoft.Extensions.Diagnostics.HealthChecks from 5.0.3 to 5.0.4
2021-04-03 00:41:40 +02:00
Bond-009
ec0ef1530c Merge pull request #5602 from Ullmie02/IP-string-IP 2021-04-03 00:32:43 +02:00
dependabot[bot]
820a373016 Bump Microsoft.Extensions.Diagnostics.HealthChecks from 5.0.3 to 5.0.4
Bumps [Microsoft.Extensions.Diagnostics.HealthChecks](https://github.com/dotnet/aspnetcore) from 5.0.3 to 5.0.4.
- [Release notes](https://github.com/dotnet/aspnetcore/releases)
- [Commits](https://github.com/dotnet/aspnetcore/compare/v5.0.3...v5.0.4)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-02 22:27:11 +00:00
Bond-009
a92736baad Merge pull request #5174 from barronpm/authenticateuser-cleanup 2021-04-03 00:26:56 +02:00
Bond-009
fd66ca25cd Merge pull request #5652 from jellyfin/dependabot/nuget/Serilog.AspNetCore-4.1.0
Bump Serilog.AspNetCore from 3.4.0 to 4.1.0
2021-04-03 00:26:00 +02:00
BaronGreenback
d9a50cb510 Various DLNA Optimizations 2021-04-02 19:06:38 +01:00
Bond-009
6f373f615b Merge pull request #5675 from Bond-009/copytotests
Add tests for CopyToExtensions
2021-04-02 16:38:30 +02:00
Patrick Barron
499785bebb Use new entities for API key endpoints 2021-04-01 17:08:22 -04:00
Patrick Barron
1c501b17d7 Add ApiKey entity and associated relationships 2021-04-01 17:05:54 -04:00
Bond-009
a0258618ac Update Emby.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-04-01 21:24:34 +02:00
Bond_009
c533b20496 Remove ManagedFileSystem.IsRootPath
`Path.IsPathRooted` should be used instead
2021-04-01 19:39:00 +02:00
Max Rumpf
21e7ceae8e StreamBuilder tweaks (#5668)
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-04-01 19:18:14 +02:00
Bond_009
aa76957338 Remove useless code 2021-04-01 19:16:00 +02:00
Bond_009
11f7ab4dd4 Add tests for CopyToExtensions 2021-04-01 19:13:03 +02:00
Bond-009
7c51d0a50e Merge pull request #5671 from jellyfin/tmdbmovieprovider-originaltitle
set original title in tmdbmovieprovider
2021-04-01 17:39:22 +02:00
Bond-009
38913a42b4 Merge pull request #5672 from jellyfin/skip-bad-images
ensure only valid images are saved in ItemImageProvider
2021-04-01 17:38:05 +02:00
Patrick Barron
16ca8c7536 Remove unused SessionManager methods 2021-04-01 10:49:09 -04:00
Claus Vium
df60d176b8 ensure only valid images are saved in ItemImageProvider 2021-04-01 15:27:28 +02:00
Claus Vium
28a0eb6d53 set original title in tmdbmovieprovider 2021-04-01 14:28:03 +02:00
Brian C. Arnold
3820671724 Merge remote-tracking branch 'main/master' into FixMessageCommand 2021-03-31 08:08:27 -04:00
BrianCArnold
4fa2a32d81 Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-03-31 01:24:38 -04:00
BrianCArnold
af03b280bc Update SessionController.cs 2021-03-31 01:23:51 -04:00
Stéphane Senart
3164781ce0 [5644] [DLNA] [Music] Next track command from any DLNA device does not do anything. 2021-03-30 22:18:32 +02:00
Bond-009
b49d50e634 Merge pull request #5467 from Ullmie02/nfo-fixes 2021-03-30 15:35:56 +02:00
Fernando Fernández
8c6bd2537c Return Major.Minor.Build instead of Major.Minor.Build.Revision for OpenAPI version 2021-03-30 15:15:16 +02:00
BrianCArnold
80fe48fda9 Update SessionController.cs
Removed unnecessary construction of POCO to represent data from POST body
2021-03-30 07:29:40 -04:00
Stéphane Senart
ec113816aa [5644] [DLNA] [Music] Next track command from any DLNA device does not do anything. 2021-03-29 23:43:02 +02:00
Brian Arnold
54107ae882 Fix spacing requirement for MessageCommand. 2021-03-29 11:40:07 -04:00
Brian Arnold
ca25301e64 Added Required attribute to Text property of MessageCommand. 2021-03-29 10:10:44 -04:00
dependabot[bot]
949ef2ed10 Bump BlurHashSharp from 1.1.1 to 1.2.0
Bumps [BlurHashSharp](https://github.com/Bond-009/BlurHashSharp) from 1.1.1 to 1.2.0.
- [Release notes](https://github.com/Bond-009/BlurHashSharp/releases)
- [Commits](https://github.com/Bond-009/BlurHashSharp/commits/v1.2.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-29 12:00:57 +00:00
dependabot[bot]
023467ebce Bump Serilog.AspNetCore from 3.4.0 to 4.1.0
Bumps [Serilog.AspNetCore](https://github.com/serilog/serilog-aspnetcore) from 3.4.0 to 4.1.0.
- [Release notes](https://github.com/serilog/serilog-aspnetcore/releases)
- [Commits](https://github.com/serilog/serilog-aspnetcore/compare/v3.4.0...v4.1.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-29 12:00:44 +00:00
Stéphane Senart
a7c82b2681 [5644] [DLNA] [Music] Next track command from any DLNA device does not do anything. 2021-03-29 12:11:38 +02:00
Ionut Andrei Oanca
776ce7c660 Send playing item status in SyncPlay group update 2021-03-29 11:29:48 +02:00
David
1669cb6618 Split valid and invalid tests 2021-03-29 10:35:29 +02:00
Ionut Andrei Oanca
9eb740ba57 Fix storing outdated sessions in SyncPlay 2021-03-28 13:25:40 +02:00
Brian C. Arnold
998833ea6e Removed null check for body object and user [Required] attribute in replacement. 2021-03-27 23:29:24 -04:00
Brian Arnold
f114ba57dd Fixed comment and code block runes to match coding
standards required by Jellyfin team.
2021-03-27 23:29:24 -04:00
Brian Arnold
81e3e5ca48 Changed SessionController.SendMessageCommand
implementation receive data in the POST body, as that is how the
jellyfin-web client currently posts the data to the server.

Resolves: #5628
2021-03-27 23:29:24 -04:00
Bond-009
a890a85092 Merge pull request #5495 from BaronGreenback/RemoteAccessFix 2021-03-27 17:24:47 +01:00
Dmitry Lyzo
364e8931af Check appropriate profile type 2021-03-27 11:53:57 +03:00
Claus Vium
9144d11a9d Merge pull request #5624 from crobibero/subtitle-format 2021-03-27 09:25:34 +01:00
BaronGreenback
aae2aad0f2 changed split to single quotes 2021-03-27 08:16:48 +00:00
Bond-009
1de031a7c3 Merge pull request #5634 from cvium/directoryservice-case-sensitive
make directoryservice cache case sensitive
2021-03-27 00:51:52 +01:00
crobibero
afe3b5999e Fix route naming 2021-03-26 17:40:55 -06:00
Claus Vium
90d9530aed Merge pull request #5629 from lmaonator/fix-cast-stream-selection 2021-03-27 00:34:57 +01:00
cvium
7670189561 make directoryservice cache case sensitive 2021-03-27 00:26:56 +01:00
David
78f7fdeacc Rename methods and optimize allocations 2021-03-26 17:16:29 +01:00
lmaonator
694d772b11 Update Jellyfin.Api/Controllers/SessionController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-03-26 14:13:45 +01:00
crobibero
5b758c4711 Mark query parameters as obsolete 2021-03-26 07:07:45 -06:00
lmaonator
db2fbcef2b Fix stream selection having no effect when casting
When casting to jellyfin-mpv-shim from jellyfin-web in the browser,
jellyfin-web sends data about which version (for grouped items) and
which streams the user selected in the browser to the
"Sessions/{sessionId}/Playing" API endpoint.

The API endpoint currently doesn't forward them to jellyfin-mpv-shim
through the Play command, which results in the default streams being
played instead of the browser selected ones.

PlayRequest already has the properties and they are already sent to the
cast client by SendPlayCommand when present.
jellyfin-mpv-shim will already use them to select the wanted streams
when it receives the Play command.

All that's needed to make it work is to take the parameters and assign
them to PlayRequest.
2021-03-26 13:41:34 +01:00
crobibero
e0ff51cf2a Mark query parameters as obsolete 2021-03-25 20:30:15 -06:00
crobibero
73fe9d3f69 Allow subtitle format to be set from query parameter. 2021-03-25 18:06:25 -06:00
Patrick Barron
7364155579 Clean up user deletion 2021-03-25 19:51:27 -04:00
Patrick Barron
a7b29e2fe0 Clean up user renaming 2021-03-25 19:51:27 -04:00
Patrick Barron
daa21c9e99 Add migration 2021-03-25 19:51:27 -04:00
Patrick Barron
ea0a9c2cca Properly configure foreign keys 2021-03-25 19:51:27 -04:00
Patrick Barron
a07ad71222 Use NOCASE collation and index on username field 2021-03-25 19:51:27 -04:00
Patrick Barron
3c4187e780 Add indexes for user permissions and preferences 2021-03-25 19:51:27 -04:00
Patrick Barron
f1cadb27d9 Add id properties for preferences and permissions 2021-03-25 19:51:27 -04:00
Patrick Barron
0a579e5bbd Configure user deletion behavior 2021-03-25 19:51:27 -04:00
Patrick Barron
3ffef5794e Delete unnecessary indexes
Multicolumn indexes can be queried on the first column without needing a separate index
2021-03-25 19:51:26 -04:00
Patrick Barron
36669ff451 Use correct setter access modifiers 2021-03-25 19:51:26 -04:00
Bond-009
6946e58ca4 Merge pull request #5614 from jellyfin/Bond-009-patch-2 2021-03-25 23:55:54 +01:00
Bond-009
4cea6d9ccf Apply suggestions from code review
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-03-25 18:53:36 +01:00
Claus Vium
411570e6d4 Merge pull request #5621 from cvium/enable-range-processing-download
enable range processing for download endpoints
2021-03-25 17:01:18 +01:00
Claus Vium
a76d997a86 Merge pull request #5620 from MrTimscampi/iso-ignore 2021-03-25 17:00:32 +01:00
cvium
b3d084044e enable range processing for download endpoints 2021-03-25 15:09:37 +01:00
MrTimscampi
5bb7d99b48 Remove DVDs from files exempt from chapter image extraction 2021-03-25 13:16:09 +01:00
MrTimscampi
ef9eba8bc9 Ignore format for ISO files 2021-03-25 12:23:29 +01:00
Bond-009
6d0b2ed080 Merge pull request #5579 from cocool97/master 2021-03-25 01:45:43 +01:00
Bond-009
55102973d6 Merge pull request #5596 from BaronGreenback/DLNA_Hardening
Implemented DLNA exception handling
2021-03-25 01:29:10 +01:00
Bond-009
16011d96a0 Merge pull request #5321 from Ullmie02/nfo-thumb 2021-03-25 01:10:37 +01:00
Claus Vium
e64f9f2f66 Merge pull request #5613 from accek/accek-samsung-dlna-fix 2021-03-24 23:04:28 +01:00
Szymon Acedański
b1e8a8565f Update Jellyfin.Api/Helpers/FileStreamResponseHelpers.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-03-24 22:46:08 +01:00
cocool97
86852178c2 Update MediaBrowser.Controller/LiveTv/ChannelInfo.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-03-24 21:23:59 +01:00
Bond-009
066c19a26b Fix possible null ref exception 2021-03-24 21:06:03 +01:00
Szymon Acedański
136136dea9 Fix incorrect responses for HEAD /audio/<id>/stream
Without this fix my Samsung Soundbar (HW-Q80R) fails to play using DLNA
and returns "Error: Resource not found (716)" instead.

I had a look on tcpdump network logs between Jellyfin and the soundbar
and noticed that the device performs a HEAD request for the media before
responding to the DLNA UPNP control request from Jellyfin (or BubbleUPNP
Android App).

Jellyfin retuns 204 No Content response, which is unusual.  Common web
servers generally return 200 OK if the GET would return content, and
this is not-very-clearly suggested [in HTTP
spec](https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1)

The other patch is to ensure, that invalid Content-Length: 0 is not
returned with the HEAD response in the streaming case.

I think in both cases we still don't return the same headers with HEAD
as with GET (e.g. Content-Length or Accept-Ranges), but at least we
don't return anything misleading.
2021-03-24 20:43:54 +01:00
Bond_009
c2cd7fa0b2 Add more PasswordHash tests 2021-03-24 18:39:33 +01:00
Bond_009
d77507ba09 Rewrite PasswordHash.Parse to work with ReadOnlySpans 2021-03-24 18:21:14 +01:00
Mason Tran
415b03d719 Delay starting services until after network is online 2021-03-24 02:35:44 -04:00
David
a4cac09d5b Use |= 2021-03-23 19:25:32 +01:00
David
c2af50c51d Add tests for IsInNetwork 2021-03-23 17:39:55 +01:00
David
19e4ef82dd Remove conversion from IPAddress to string to IPAddress 2021-03-23 17:16:10 +01:00
David
572600b38e Use conditional operator instead of if/else block 2021-03-23 15:47:55 +01:00
BaronGreenback
6765f6ab17 fix compilation 2021-03-23 00:12:14 +00:00
Bond-009
8410a9a266 Merge pull request #5586 from nyanmisaka/disable-autorotate 2021-03-22 22:59:01 +01:00
cvium
74e14b4ca5 fix isdirectstream default 2021-03-22 22:34:47 +01:00
cvium
7dedeb6c79 change HLS endpoint defaults to false 2021-03-22 20:53:55 +01:00
Kenneth SB
4637bbc723 Translated using Weblate (Danish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/da/
2021-03-22 13:34:36 -04:00
BaronGreenback
4bd345fbab DLNA Exception catching 2021-03-22 17:21:12 +00:00
BaronGreenback
5d16d1f66d Merge branch 'master' into RemoteAccessFix 2021-03-22 17:05:44 +00:00
BaronGreenback
7fa525c83b Added more tests 2021-03-22 17:04:09 +00:00
Nyanmisaka
0853d1265c Disable auto rotation for some HWA methods (#5586)
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-03-22 17:59:57 +01:00
Bond-009
f6671e05fd Merge pull request #5580 from Bond-009/integrationtests2 2021-03-22 17:57:14 +01:00
Bond_009
5253483ce4 Improve naming 2021-03-22 13:49:00 +01:00
Nyanmisaka
fab4bf184e Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-03-22 19:47:05 +08:00
Nyanmisaka
a6bc191607 Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-03-22 19:25:41 +08:00
nyanmisaka
fcb070abf7 disable auto rotation for some HWA methods 2021-03-22 18:36:04 +08:00
Joshua M. Boniface
fe8cf29cad Merge pull request from GHSA-wg4c-c9g9-rxhx
Fix issues 1 through 5 from GHSL-2021-050
2021-03-21 19:12:14 -04:00
Joshua M. Boniface
890a490776 Merge pull request #5532 from cvium/fix_episode_extras_questionmark 2021-03-21 15:13:56 -04:00
Bond_009
c5079ebed5 Add tests for GetFirstUser, UpdateStartupUser and CompleteWizard 2021-03-21 03:59:31 +01:00
Bond_009
849ced470a Add StartupControllerTests 2021-03-21 03:26:51 +01:00
LIAUD
72db3df605 Changed CONTRIBUTORS.md 2021-03-20 20:31:38 +01:00
LIAUD
32853ca244 Add 'group-title' channel parsing 2021-03-20 20:15:19 +01:00
Bill Thornton
9fe3ca7a92 Merge pull request #5476 from jellyfin/EraYaN-nuget-ci
Remove BuildPackage dependency for PublishNuget in CI
2021-03-19 20:50:42 -04:00
Erwin de Haan
1f3aa3fe6f Apply review suggestions 2021-03-20 01:28:14 +01:00
Erwin de Haan
470305f75e Authenticated arbitrary file overwrite in SubtitleController -> SubtitleManager
GHSL-2021-050: Issue 5 Arbitrary file overwrite.
2021-03-20 01:14:59 +01:00
Erwin de Haan
239a7156cc Fix arbitrary image file reads in ImageByNameController
GHSL-2021-050: Issue 4 Arbitrary image file read and directory traversal.
2021-03-20 01:14:59 +01:00
Erwin de Haan
f61d18612b Fix directory traversal in the HlsSegmentController in a fairly rudimentary but working way.
GHSL-2021-050: Issue 1,2,3 Arbitrary file read and directory traversal.
The segment id's can probably just be verified to be an actual ID or to not contain any forward or backward slashes
2021-03-20 01:14:59 +01:00
Bond-009
1a0ce16f4d Merge pull request #5504 from crobibero/json-string-converter 2021-03-20 00:48:41 +01:00
David
7685569480 Rollback char.IsDigit 2021-03-19 12:34:21 +01:00
Claus Vium
9360fecb31 Merge pull request #5559 from cvium/fix-tmdb-search-clean
Clean the entity name for non-words before searching
2021-03-19 09:24:20 +01:00
Claus Vium
e1c6bb0482 Merge pull request #5561 from barronpm/permissions-fix 2021-03-19 09:23:32 +01:00
andrewthemeow
9857c21717 Translated using Weblate (Lithuanian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/lt/
2021-03-19 02:50:08 -04:00
David
59641e5c76 Use ReadOnlySpan<char> and char.IsDigit 2021-03-18 20:52:56 +01:00
David
840eeff2af Apply suggestions from code review 2021-03-18 11:25:58 +01:00
Patrick Barron
85da0b50e2 Fix user mocking 2021-03-17 21:24:14 -04:00
Patrick Barron
12b8e29aef Fix duplicate permissions 2021-03-17 17:42:45 -04:00
cvium
151156f227 Clean the entity name for non-words before searching 2021-03-17 10:29:45 +01:00
Vitorvlv
37aa3e8735 Translated using Weblate (Portuguese (Brazil))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pt_BR/
2021-03-16 23:19:43 -04:00
David
14cbd22fbe Use Helper Methods for provider url parsing 2021-03-16 21:45:12 +01:00
Alyssa Ross
e14311ca8b Translated using Weblate (Esperanto)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/eo/
2021-03-16 15:19:34 -04:00
Bond-009
f42cee4790 Merge pull request #5550 from cvium/revert_underscore_multiversion 2021-03-16 14:38:29 +01:00
cvium
23c3188501 revert underscore as a multiversion separator 2021-03-15 23:24:59 +01:00
Claus Vium
94820f569b Merge pull request #5512 from crobibero/api-spec-version 2021-03-15 18:01:20 +01:00
Claus Vium
baa43c6b41 Merge pull request #5475 from BaronGreenback/SSDPFix 2021-03-15 09:06:15 +01:00
cvium
025e351f61 add unit tests 2021-03-15 08:25:20 +01:00
cvium
ab0cff8556 do not resolve episode-like files if they are in extras folders 2021-03-14 19:56:45 +01:00
BaronGreenback
4c7680e186 Merge remote-tracking branch 'upstream/master' into SubnetOverlappFix 2021-03-14 18:40:44 +00:00
Bond-009
f2125da9f9 Merge pull request #5395 from barronpm/ef-cleanup 2021-03-14 19:08:50 +01:00
BaronGreenback
6087831aa6 Fixed selection of correct interface ip 2021-03-14 17:30:25 +00:00
Patrick Barron
e5380c653b Merge branch 'master' into ef-cleanup
# Conflicts:
#	Jellyfin.Data/Entities/Libraries/MediaFileStream.cs
#	Jellyfin.Data/Jellyfin.Data.csproj
2021-03-14 10:19:35 -04:00
Claus Vium
109f24514f Merge pull request #5510 from BaronGreenback/DlnaFirstFix
Fix: Streaming crashing due to no deviceProfileId match.
2021-03-14 15:07:31 +01:00
Claus Vium
bd70f56218 Merge pull request #5324 from danieladov/master
Fix duplicated movies when group movies into collections is enabled
2021-03-14 13:37:00 +01:00
Bond-009
0e5d4a3bcf Merge pull request #5422 from Bond-009/warn51 2021-03-14 00:41:40 +01:00
Bond-009
5c0c205bed Merge pull request #5522 from Bond-009/integrationtests
Fix integration test project
2021-03-14 00:21:51 +01:00
Bond_009
72d3eed15c Fix integration test project 2021-03-14 01:07:53 +01:00
BaronGreenback
b1f0c5eb49 Update NetworkExtensions.cs
changed description
2021-03-13 22:16:12 +00:00
Bond-009
8bb2420a25 Merge pull request #5518 from crobibero/missing-endpoints
Add missing InstantMix endpoints
2021-03-13 22:59:47 +01:00
Bond_009
01dfa8801a Fix GetDaysOfWeek behavior 2021-03-13 22:40:23 +01:00
Bond_009
46a41ecba6 Sunday isn't a weekend 2021-03-13 22:33:28 +01:00
Bond_009
a8ed753f6c FxCop -> Net Analyzers (part 2) 2021-03-13 22:33:28 +01:00
Bond_009
d9eb7ae6dc Fix invalid crc in TryGetReturnValueOfGetSet_InvalidPacketType test 2021-03-13 21:28:04 +01:00
Bond_009
f9640f4366 Rewrite HdHomerunManager.ParseReturnMessage 2021-03-13 21:12:11 +01:00
Mister Rajoy
8883aa4a37 Merge branch 'master' of https://github.com/danieladov/jellyfin 2021-03-13 20:35:52 +01:00
Mister Rajoy
4cc3b938fa Change Guid.Parse to Guid.TryParse 2021-03-13 20:33:05 +01:00
Bond_009
e8b18e5f8f Add test for HdHomerunManager.ParseReturnMessage 2021-03-13 19:32:40 +01:00
Bond_009
7fb3a354fd Add test for HdHomerunManager.WriteSetMessage with lockkey 2021-03-13 19:24:47 +01:00
Daniel
7a3109104b Remove empty line
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-03-13 19:24:02 +01:00
Daniel
4b17648df3 Remove empty line
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-03-13 19:23:52 +01:00
Bond_009
f5789483fd Add test for HdHomerunManager.WriteSetMessage 2021-03-13 19:21:29 +01:00
crobibero
9ac9543ee2 Add missing InstantMix endpoints 2021-03-13 09:09:22 -07:00
crobibero
1169a0214b Set default version 2021-03-13 08:43:14 -07:00
crobibero
37b1b31a46 Convert full ValueSequence 2021-03-13 08:41:16 -07:00
Bond-009
260b48ef9d Merge pull request #5515 from jellyfin/fix-refresh-endpoint
fix refresh endpoint
2021-03-13 15:07:42 +01:00
Bond-009
b755c25217 Merge pull request #5220 from Bond-009/hdhomerun 2021-03-13 15:05:18 +01:00
Bond-009
7a988ef77d Merge pull request #5500 from crobibero/api-integration-fix
Fix third party integration
2021-03-13 15:03:06 +01:00
Claus Vium
fe2a310fe2 fix refresh endpoint
It was originally a POST 9af6eda0b4/MediaBrowser.Api/Library/LibraryService.cs (L155)
2021-03-13 09:13:45 +01:00
crobibero
500832bdfd Set openapi version to server version 2021-03-12 17:11:43 -07:00
BaronGreenback
1d5b7b61fb Change First to FirstOrDefault 2021-03-12 22:20:13 +00:00
BaronGreenback
4cf88f67ba Update NetworkManager.cs 2021-03-12 14:58:04 +00:00
BaronGreenback
b7fb152faf Update tests/Jellyfin.Networking.Tests/NetworkParseTests.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-03-12 14:44:05 +00:00
crobibero
e814d8e2cf Add JsonStringConverter 2021-03-12 06:43:57 -07:00
WWWesten
80846a1c66 Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2021-03-12 08:21:06 -05:00
Bond-009
a037e30b41 Merge pull request #5457 from cvium/fix_double_artist 2021-03-12 13:18:12 +01:00
crobibero
eef15dc7ac Fix third part integration 2021-03-11 22:45:58 -07:00
Bond-009
d7f0aaaec1 Merge pull request #5417 from Bond-009/codeanal
Add code analysis attributes where appropriate
2021-03-12 00:15:12 +01:00
BaronGreenback
e5914fd28c split tests 2021-03-11 22:47:37 +00:00
BaronGreenback
3fa84500cf Update Jellyfin.Networking/Manager/NetworkManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-03-11 22:46:24 +00:00
BaronGreenback
f66cb9777d Update Jellyfin.Networking/Manager/NetworkManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-03-11 22:46:07 +00:00
BaronGreenback
034ee38583 Update Jellyfin.sln
reverted
2021-03-11 21:42:01 +00:00
BaronGreenback
3fdf0de6e3 Fix remote access 2021-03-11 21:36:58 +00:00
Bond-009
e3adc9ab74 Merge pull request #5480 from crobibero/api-session-message-type
Add SessionMessageType to generated openapi spec
2021-03-11 22:35:33 +01:00
Bond-009
d967267cef Merge pull request #5461 from cvium/fix_multiversion 2021-03-11 22:31:06 +01:00
Anthony Lavado
227eaca99c Merge pull request #5490 from thornbill/remove-forum-badge 2021-03-11 10:45:06 -05:00
Bill Thornton
e6407b414b Remove forum badge 2021-03-11 09:34:10 -05:00
crobibero
8e09276d7d Add websocket session message type to generated openapi.json 2021-03-10 16:33:46 -07:00
Erwin de Haan
b827913fcf Run CollectArtifacts taks regardless of result from BuildPackage and BuildDocker 2021-03-10 21:09:45 +01:00
Erwin de Haan
e6f49f5009 Remove BuildPackage dependeny for PublishNuget in CI 2021-03-10 21:00:33 +01:00
BaronGreenback
1723ed1604 removed the space AGAIN!!! 2021-03-10 19:59:58 +00:00
BaronGreenback
5db998e135 removed space. 2021-03-10 19:59:18 +00:00
BaronGreenback
0960c945d0 Revert "removed space"
This reverts commit a324d8a9c5.
2021-03-10 19:58:45 +00:00
BaronGreenback
a324d8a9c5 removed space 2021-03-10 19:57:32 +00:00
BaronGreenback
1dd6036765 Fixed false starts 2021-03-10 19:56:33 +00:00
BaronGreenback
2f843b3b48 Hide msg if dlna disabled 2021-03-10 19:32:13 +00:00
BaronGreenback
eafb8cf652 Null Pointer fix 2021-03-10 19:27:22 +00:00
cvium
7d69c2550c fix copy/paste error in test 2021-03-10 19:30:23 +01:00
cvium
b0af11c34e make the eligibility check more strict wrt. brackets 2021-03-10 19:29:52 +01:00
David
954148eb6d Fix Radarr url nfo files 2021-03-10 17:08:24 +01:00
David
8a74d76598 Fix id tag setting IMDb id when it is TMDb id 2021-03-10 17:03:19 +01:00
BaronGreenback
2fe26ef136 removed parameter preset 2021-03-10 13:28:18 +00:00
Claus Vium
5592967497 Merge pull request #5403 from BaronGreenback/DLNAProfileFix 2021-03-10 11:50:08 +01:00
cvium
3824c09e77 fix multiversion eligibility check for complex folder names 2021-03-10 10:47:35 +01:00
BaronGreenback
84da57cd48 Update StreamingHelpers.cs
Updated condition
2021-03-10 09:07:11 +00:00
Claus Vium
84e16a8535 Merge pull request #5431 from cvium/fix_tmdb_imdbid
Use imdbid as fallback in movie provider
2021-03-10 08:37:00 +01:00
cvium
c5a870051a Use distinct for artists to avoid double refreshing 2021-03-10 08:20:02 +01:00
Claus Vium
88a8fa7100 Merge pull request #5447 from joshuaboniface/fix-fedora-build
Remove Microsoft repo from install step
2021-03-09 19:41:25 +01:00
Claus Vium
329edd9dbe Merge pull request #5444 from Ullmie02/hdhr-fix 2021-03-09 19:41:01 +01:00
Joshua M. Boniface
235b36a4c7 Remove Microsoft repo from install step
This was breaking Fedora builds due to a mismatch. We can use the .NET
SDK 5.0 from the Fedora 33 repos instead and this seems to work.
2021-03-09 12:41:51 -05:00
David
ece0d67f99 Use FileShare.Read for log files 2021-03-09 17:31:31 +01:00
David
eca3b37d6e Use FileShare.Read to fix HdHomeRun 2021-03-09 17:01:05 +01:00
Bond-009
97fd136a8c Merge pull request #5428 from cvium/fix_tmdb_year
Default to the searchinfo year, fallback to parsed year
2021-03-09 15:59:37 +01:00
Bond-009
087e98d78a Merge pull request #5336 from Bond-009/integration 2021-03-09 14:51:45 +01:00
Bond_009
a618d6053f Move TestPluginWithoutPages to the correct project 2021-03-09 14:24:19 +01:00
Bond_009
37eb7d6d49 Perform static initialization only once 2021-03-09 14:24:19 +01:00
Bond_009
b9577d0fd9 Check for specific status code instead of success 2021-03-09 14:24:19 +01:00
Bond_009
3471ddfc84 Fix duplicate project id in sln 2021-03-09 14:24:17 +01:00
Bond_009
bbbb811e72 Fix azure 2021-03-09 14:21:30 +01:00
Bond_009
afc70b28d4 Add Jellyfin.Server.Tests to solution 2021-03-09 14:21:28 +01:00
Bond_009
fa8bfece4e Split integration tests from unit tests 2021-03-09 14:17:59 +01:00
cvium
880c8636bc Use imdbid as fallback in movie provider
Includes post-ProviderIdExtensions cleanup
2021-03-09 11:44:39 +01:00
cvium
80fb52e64f Default to the searchinfo year, fallback to parsed year 2021-03-09 10:46:54 +01:00
Bond-009
94db751f4b Merge pull request #4754 from jellyfin/warn50 2021-03-09 05:58:01 +01:00
pkreuzt
e89bd8ba02 Translated using Weblate (Galician)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/gl/
2021-03-08 23:04:24 -05:00
Bond_009
d202df6e8a Remove useless line 2021-03-09 03:22:51 +01:00
Bond_009
9ed7f429c0 FxCop -> Net Analyzers (part 1) 2021-03-09 03:04:47 +01:00
Bond_009
5241bd41ef Add code analysis attributes where appropriate 2021-03-09 01:28:21 +01:00
BaronGreenback
a031f7e410 Fix for multiple ip's in the same subnet per interface. 2021-03-09 00:07:21 +00:00
Joshua M. Boniface
3c46f10e3d Merge pull request #5315 from BaronGreenback/FixFor5280Part2 2021-03-08 18:06:40 -05:00
Joshua M. Boniface
0ef8bea125 Merge pull request #5406 from cvium/trycleanstring-dont-die-on-me 2021-03-08 16:54:26 -05:00
Joshua M. Boniface
82d88bdec6 Merge pull request #5409 from ikomhoog/master 2021-03-08 16:39:40 -05:00
Claus Vium
90cdd1345d Merge pull request #5407 from Bond-009/hack 2021-03-08 21:23:14 +01:00
BaronGreenback
d3390302f9 Update ApplicationHost.cs 2021-03-08 11:43:59 +00:00
Bond_009
54f81c4da4 Call ToLower on CollectionTypeOptions.ToString 2021-03-08 12:08:17 +01:00
Ikomhoog
02122f28cc Update contributors 2021-03-08 11:14:01 +01:00
Ikomhoog
d4201f812c Changed string.Length == 0 to string.IsNullOrEmpty in case of null 2021-03-08 11:02:51 +01:00
Bond_009
2e62c09f2e Fix casing CollectionType 2021-03-08 02:16:35 +01:00
Joshua M. Boniface
480dd66428 Merge pull request #5402 from Ullmie02/fix-null-size
Use FileShare.None when creating files
2021-03-07 19:37:21 -05:00
WWWesten
bc95268bd6 Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2021-03-07 17:24:42 -05:00
cvium
fcacae8cde return empty span instead of null for backwards compat 2021-03-07 22:59:08 +01:00
cvium
e0db17a935 do not throw ArgumentNullException in TryCleanString 2021-03-07 22:49:31 +01:00
BaronGreenback
75c9659e05 Fix unreachable code & assign id to each profile. 2021-03-07 14:17:32 +00:00
David
60ffa6f514 Use FileShare.None when creating files 2021-03-07 14:43:28 +01:00
Bond-009
a1cdc2c63f Merge pull request #5385 from Bond-009/dlna2
Use XDocument.LoadAsync instead of XDocument.Parse
2021-03-07 02:38:05 +01:00
Patrick Barron
7c413a323b Move EF Core dependency out of Jellyfin.Data 2021-03-06 20:33:11 -05:00
Patrick Barron
7b37ae94f7 Remove unused factory method 2021-03-06 20:02:42 -05:00
Patrick Barron
f638ee6b09 Enable nullable for Jellyfin.Data and remove unnecessary attributes 2021-03-06 17:43:01 -05:00
Patrick Barron
287dab4655 Remove constructor side effects and remove unneeded parameterless constructors 2021-03-06 17:37:47 -05:00
Bond-009
497ea57fd2 Merge pull request #5381 from cvium/fix-network-substitution 2021-03-06 21:38:32 +01:00
cvium
946411be8e Remove redundant check 2021-03-06 21:18:20 +01:00
cvium
67af30d1ff Remove redundant checks 2021-03-06 20:53:50 +01:00
cvium
54211b921c rider is a prick 2021-03-06 19:07:02 +01:00
David Ullmer
b8d52dafa9 Update MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-03-06 16:02:52 +01:00
David
6f898145af Use Uri.TryCreate and ImageType helper method 2021-03-06 14:50:27 +01:00
cvium
bc661c16e1 simplify 2021-03-06 14:01:37 +01:00
dkanada
22402650cb Merge pull request #5354 from shortspider/AddFfmpegToReadme
Update README to include ffmpeg
2021-03-06 13:40:08 +09:00
Nathan Mascitelli
10229e1afe Link to jellyfin-ffmpeg 2021-03-05 23:09:35 -05:00
Bond_009
e8413ed8c0 Use XDocument.LoadAsync instead of XDocument.Parse 2021-03-06 03:33:52 +01:00
Bond-009
e839929b91 Merge pull request #5380 from Bond-009/plugins
100% branch coverage for DashboardController
2021-03-06 00:59:28 +01:00
Bond-009
db2d1bca33 Merge pull request #5382 from crobibero/json-version-converter 2021-03-06 00:03:08 +01:00
Smith00101010
6293629d32 Apply suggested formatting changes
Co-authored-by: BaronGreenback <jimcartlidge@yahoo.co.uk>
2021-03-05 22:51:08 +01:00
Bond-009
3741be51ec Merge pull request #5383 from cvium/fix-mergeversions-overflow
do not pick a linked item as primary when merging versions
2021-03-05 21:57:22 +01:00
Bond-009
1d87274cc2 Merge pull request #5377 from cvium/fix-tmdb-image-languages
Do not use language or imagelanguages when searching for images with TMDb
2021-03-05 21:56:09 +01:00
cvium
59814bd55e do not pick a linked item as primary when merging versions 2021-03-05 19:57:48 +01:00
Claus Vium
d0a2d00b29 Fix UpdateMediaPath model binding (#5378) 2021-03-05 16:56:21 +01:00
Cody Robibero
df1951cfe2 Apply suggestions from code review
Co-authored-by: dkanada <dkanada@users.noreply.github.com>
2021-03-05 08:30:49 -07:00
crobibero
fd0b3ca5ef Add JsonVersionConverter and tests 2021-03-05 07:48:45 -07:00
cvium
37e374d33d make sure network path substitution matches correctly 2021-03-05 14:09:23 +01:00
Bond_009
a6d0db5d04 100% branch coverage for DashboardController 2021-03-05 11:15:14 +01:00
Bond-009
a0f6bc14a2 Merge pull request #5375 from crobibero/default-api-value
Specify defaults or set query parameter to nullable
2021-03-05 11:04:47 +01:00
Nichgon
ed7154db68 Translated using Weblate (Thai)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/th/
2021-03-05 02:54:45 -05:00
cvium
ba366118f9 Do not use language or imagelanguages when searching for images
TMDb API returns all images if languages are excluded, which is needed for the All Languages toggle in Identify.
2021-03-05 08:18:04 +01:00
crobibero
858c91ab48 Specify defaults or set query parameter to nullable 2021-03-04 18:25:52 -07:00
dkanada
8615847a8a Merge pull request #5345 from BaronGreenback/IP6Fix
Dual IP4 / IP6 server fails on non-windows platforms
2021-03-04 17:03:53 +09:00
dkanada
74a927db3e Merge pull request #5362 from crobibero/case-json
Fix case-sensitive json parsing
2021-03-04 17:02:16 +09:00
crobibero
631c0a35f6 Always use case insensitive json parsing for api 2021-03-03 17:11:19 -07:00
Claus Vium
ddc62a89ba Merge pull request #5356 from cvium/fix_provideridextensions
return false when providerid is null or empty
2021-03-03 17:24:58 +01:00
BaronGreenback
d819a1d928 Remove Content-Length header from DLNA HEAD request (#5335) 2021-03-03 15:41:18 +01:00
Bond-009
72d063c563 Merge pull request #5359 from cvium/fix_broadcasttimer_disposed
Do nothing in timer callback when device locator is disposed
2021-03-03 15:27:46 +01:00
cvium
610a30d791 Do nothing in timer callback when device locator is disposed 2021-03-03 15:13:43 +01:00
cvium
8b72b902f5 fix HasProviderId and add tests 2021-03-03 12:28:40 +01:00
cvium
a49f5d2a44 revert removal of null check 2021-03-03 09:37:21 +01:00
cvium
664c5da317 return false when providerid is null or empty 2021-03-03 09:09:57 +01:00
Nathan Mascitelli
bfe84affb3 Update README to include ffmpeg 2021-03-02 22:20:41 -05:00
David Ullmer
8f99bdd07c Fix TMDb search name containing year (#5349) 2021-03-02 21:17:25 +01:00
BaronGreenback
c275c5c1ea Update Jellyfin.Server/Program.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-03-02 08:57:27 +00:00
Claus Vium
e858e5f0b8 Merge pull request #5339 from Bond-009/hasproviderids
Revert breaking change to HasProviderId
2021-03-02 09:35:51 +01:00
Bond-009
1f0bbe266c Merge pull request #5342 from BaronGreenback/errorMessageCorrection
Corrected logging message
2021-03-02 03:07:45 +01:00
Patrick Barron
b5e3c02865 Move IHasPermissions.cs to correct namespace 2021-03-01 19:37:46 -05:00
BaronGreenback
5942948714 Kestrel workaround 2021-03-01 23:42:04 +00:00
Claus Vium
0b1b99c2ca Merge pull request #5338 from Bond-009/ssatests
Remove tests that are upstreamed
2021-03-01 23:40:11 +01:00
BaronGreenback
dedc94ec91 correction of ip6 loopback 2021-03-01 21:32:49 +00:00
BaronGreenback
fdd4b6b3f1 Changed message 2021-03-01 21:02:20 +00:00
Bond_009
ba62d9d1fe Revert breaking change 2021-03-01 20:35:38 +01:00
Bond_009
ed0267252f Remove tests that are upstreamed
libse (the SSA parser we use) has these same tests now
2021-03-01 20:00:00 +01:00
Bond-009
9390dd2df8 Merge pull request #5317 from Bond-009/notnullwhen
MaybeNullWhen(false) -> NotNullWhen(true)
2021-03-01 18:58:46 +01:00
Bond-009
c2af32d035 Merge pull request #5299 from Bond-009/tests13 2021-03-01 18:51:09 +01:00
Bond-009
557a2ad715 Merge pull request #5328 from jellyfin/dependabot/nuget/Moq-4.16.1
Bump Moq from 4.16.0 to 4.16.1
2021-03-01 15:51:27 +01:00
dependabot[bot]
b0d391427b Bump Moq from 4.16.0 to 4.16.1
Bumps [Moq](https://github.com/moq/moq4) from 4.16.0 to 4.16.1.
- [Release notes](https://github.com/moq/moq4/releases)
- [Changelog](https://github.com/moq/moq4/blob/main/CHANGELOG.md)
- [Commits](https://github.com/moq/moq4/compare/v4.16.0...v4.16.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-01 14:06:48 +00:00
Bond-009
640f341ce5 Merge pull request #5327 from jellyfin/dependabot/nuget/Microsoft.NET.Test.Sdk-16.9.1
Bump Microsoft.NET.Test.Sdk from 16.8.3 to 16.9.1
2021-03-01 15:06:03 +01:00
Bond-009
153021eec6 Merge pull request #5326 from jellyfin/dependabot/nuget/libse-3.6.0
Bump libse from 3.5.8 to 3.6.0
2021-03-01 14:30:59 +01:00
dependabot[bot]
829442c419 Bump Microsoft.NET.Test.Sdk from 16.8.3 to 16.9.1
Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 16.8.3 to 16.9.1.
- [Release notes](https://github.com/microsoft/vstest/releases)
- [Commits](https://github.com/microsoft/vstest/compare/v16.8.3...v16.9.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-01 12:00:38 +00:00
dependabot[bot]
fef43c556d Bump libse from 3.5.8 to 3.6.0
Bumps [libse](https://github.com/SubtitleEdit/subtitleedit) from 3.5.8 to 3.6.0.
- [Release notes](https://github.com/SubtitleEdit/subtitleedit/releases)
- [Changelog](https://github.com/SubtitleEdit/subtitleedit/blob/master/Changelog.txt)
- [Commits](https://github.com/SubtitleEdit/subtitleedit/compare/3.5.8...3.6.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-01 12:00:38 +00:00
Csaba
f6c49f1373 Translated using Weblate (Hungarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hu/
2021-03-01 04:54:59 -05:00
Mister Rajoy
18cd634ec8 Fix duplicated movies when group movies into collections is enabled 2021-02-28 23:03:28 +01:00
Moshe Schmidt
4bbfcaef83 Include specials in the calculation for the "Next Up" episode. Fixes #1479 2021-02-28 21:21:26 +01:00
Sebastian
0fde0a82e4 Translated using Weblate (Swedish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sv/
2021-02-28 10:01:34 -05:00
David
16694b0cfc Add nfo thumb tag support 2021-02-28 15:00:17 +01:00
dkanada
0cf4c7857b Merge pull request #5314 from barronpm/cleanup
Remove unused entity
2021-02-28 19:27:48 +09:00
BaronGreenback
8836242559 fixed tests 2021-02-28 10:25:14 +00:00
BaronGreenback
caa8e7cdf3 fixed build 2021-02-28 10:16:28 +00:00
BaronGreenback
159ecb882f Fixed bad sync 2021-02-28 10:14:05 +00:00
BaronGreenback
80ca3da55c Merge remote-tracking branch 'upstream/master' into FixFor5280Part2 2021-02-28 10:12:14 +00:00
BaronGreenback
1d6f489f17 comment change 2021-02-28 10:11:37 +00:00
BaronGreenback
f666b7e102 fix 2021-02-27 23:32:22 +00:00
Bond_009
02848189e3 MaybeNullWhen(false) -> NotNullWhen(true) 2021-02-28 00:10:36 +01:00
Claus Vium
f8c9c37c29 Merge pull request #5181 from BaronGreenback/Fix_IPHostIP6Parsing 2021-02-27 22:52:24 +01:00
Claus Vium
14605280a0 Merge pull request #5274 from BaronGreenback/bindfix 2021-02-27 22:51:45 +01:00
BaronGreenback
5074d67379 performance 2021-02-27 21:17:58 +00:00
BaronGreenback
cc19d281e7 Update Jellyfin.Networking/Manager/NetworkManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-02-27 19:10:58 +00:00
BaronGreenback
d99d95422e Update Jellyfin.Networking/Manager/NetworkManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-02-27 19:10:53 +00:00
Claus Vium
64730b5661 Merge pull request #5278 from BaronGreenback/STRMFix
Fix for #5168
2021-02-27 20:07:45 +01:00
Claus Vium
9e77fdc70d Merge pull request #5312 from BaronGreenback/FixFor5280 2021-02-27 20:01:51 +01:00
Claus Vium
e5f99762e2 Merge pull request #5073 from BaronGreenback/ffmpeg
Fix for 4933: Alternative ffmpeg fix
2021-02-27 19:55:52 +01:00
BaronGreenback
73ca367bf9 Update Emby.Server.Implementations/ApplicationHost.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-02-27 17:34:48 +00:00
BaronGreenback
9f03064ad8 Update MediaBrowser.Controller/IServerApplicationHost.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-02-27 17:34:44 +00:00
Patrick Barron
ebb6467db4 Remove unused entity 2021-02-27 11:42:37 -05:00
BaronGreenback
d95ca20fc7 removed bad merge code 2021-02-27 14:05:13 +00:00
BaronGreenback
a25e3c0256 fix for override ports contained in PublishedServerUrl 2021-02-27 13:56:21 +00:00
Eben van Deventer
0a1b91f084 Translated using Weblate (Afrikaans)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/af/
2021-02-26 15:41:34 -05:00
BaronGreenback
414e918c01 Optimized and added test 2021-02-26 14:30:00 +00:00
Patrick Barron
9413d974f3 Switch to using declarations in MediaBrowser.Providers 2021-02-25 20:38:18 -05:00
Patrick Barron
03cc6b1d78 Make styling more consistent 2021-02-25 19:02:27 -05:00
dkanada
c54ca489f1 Merge pull request #5217 from jellyfin/auto-manifest
handle plugin manifests automatically
2021-02-25 17:17:34 +09:00
Raúl Estévez
bae97322a0 Translated using Weblate (Galician)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/gl/
2021-02-24 17:17:00 -05:00
Bond_009
2bc1eef4dd Clean up code 2021-02-24 22:18:59 +01:00
Bond-009
5860979500 Merge pull request #5301 from Bond-009/validinput 2021-02-24 22:02:47 +01:00
sebastianporta
1569cc301c Translated using Weblate (Spanish (Mexico))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/es_MX/
2021-02-24 10:50:20 -05:00
BaronGreenback
039a4fb22d renamed method 2021-02-24 11:42:09 +00:00
Bond-009
bc7e31a1bc Merge pull request #5285 from Bond-009/tests11 2021-02-24 12:15:06 +01:00
Bond_009
81f527f808 CollectionType can be null 2021-02-24 11:57:04 +01:00
Bond_009
1c74e2f40e Fix build 2021-02-24 02:57:10 +01:00
Christopher G
82634a9934 Translated using Weblate (Indonesian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/id/
2021-02-23 20:28:45 -05:00
Bond_009
914e891689 Fix unchecked input 2021-02-24 02:05:12 +01:00
BaronGreenback
b5c6e5fb97 Update Jellyfin.Networking/Manager/NetworkManager.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-02-23 20:34:42 +00:00
BaronGreenback
f67137004c Update Jellyfin.Networking/Manager/NetworkManager.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-02-23 20:34:32 +00:00
BaronGreenback
ff7cae8a13 renamed method 2021-02-23 17:06:40 +00:00
Bond_009
032d72a8a7 Pls fix race condition 2021-02-23 17:30:24 +01:00
Bond_009
acac21d8dc Improve tests 2021-02-23 16:45:10 +01:00
dkanada
9bfe945f6c catch http exception and fix possible issues 2021-02-24 00:03:26 +09:00
dkanada
fb2d178242 add await directive for image download
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-02-23 23:39:33 +09:00
dkanada
e9030a62fb remove useless call to dispose
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-02-23 23:37:32 +09:00
dkanada
454deece13 improve performance in the wrong place
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-02-23 23:36:49 +09:00
dkanada
64cc5889f2 add suggested changes 2021-02-23 23:11:17 +09:00
Bond_009
aff0aea60f Improve branch coverage 2021-02-23 14:14:02 +01:00
Bond-009
92e5a5c6e8 Merge pull request #5166 from netpok/index-number-end-from-nfo 2021-02-23 13:00:16 +01:00
Bond-009
e09e67deae Merge branch 'master' into tests11 2021-02-23 12:54:05 +01:00
dkanada
b18bb3d0de update timestamp parse for plugins 2021-02-23 19:22:20 +09:00
dkanada
bc746b4d05 merge branch 'master' into auto-manifest 2021-02-23 19:19:38 +09:00
Balázs Váradi
a015caba3f Remove unnecessary sanity check 2021-02-23 06:34:46 +01:00
Joshua M. Boniface
7ece3c5523 Merge pull request #5273 from Bond-009/warn31 2021-02-22 21:00:46 -05:00
Joshua M. Boniface
c0c4aff8a6 Merge pull request #5276 from Bond-009/minor12 2021-02-22 21:00:34 -05:00
Joshua M. Boniface
da55462d92 Merge pull request #5291 from Bond-009/tests12 2021-02-22 21:00:15 -05:00
Joshua M. Boniface
1442a63556 Merge pull request #5290 from Bond-009/nullref
Fix possible null ref exception
2021-02-22 21:00:04 -05:00
Joshua M. Boniface
5ce4df4178 Merge pull request #5270 from Bond-009/imdb 2021-02-22 20:59:57 -05:00
Joshua M. Boniface
23ff1fab46 Merge pull request #4984 from Bond-009/subtitleedit 2021-02-22 20:59:49 -05:00
Bond-009
6cfec511c3 Merge pull request #5287 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore-6.0.7
Bump Swashbuckle.AspNetCore from 6.0.5 to 6.0.7
2021-02-22 17:13:01 +01:00
dependabot[bot]
875e02318c Bump Swashbuckle.AspNetCore from 6.0.5 to 6.0.7
Bumps [Swashbuckle.AspNetCore](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.0.5 to 6.0.7.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.0.5...v6.0.7)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-22 16:11:56 +00:00
Bond-009
accb0ad08b Merge pull request #5289 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore.ReDoc-6.0.7
Bump Swashbuckle.AspNetCore.ReDoc from 6.0.5 to 6.0.7
2021-02-22 17:11:21 +01:00
Bond-009
003945f25b Update MediaBrowser.Model/LiveTv/LiveTvChannelQuery.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-02-22 17:10:42 +01:00
Bond_009
baadc48f43 Address comments 2021-02-22 16:27:02 +01:00
Bond-009
799fd8f545 Merge pull request #5288 from jellyfin/dependabot/nuget/sharpcompress-0.28.1
Bump sharpcompress from 0.28.0 to 0.28.1
2021-02-22 14:16:22 +01:00
Bond-009
c9ea66f0bd Merge pull request #5286 from jellyfin/dependabot/nuget/coverlet.collector-3.0.3
Bump coverlet.collector from 3.0.2 to 3.0.3
2021-02-22 14:15:22 +01:00
Bond_009
ec3237ba55 Fix tests 2021-02-22 13:46:40 +01:00
Bond_009
57102090d3 Add tests for DashboardController 2021-02-22 13:15:29 +01:00
Bond_009
93a1f434a3 Fix possible null ref exception 2021-02-22 13:13:31 +01:00
dependabot[bot]
29fb2c57c8 Bump Swashbuckle.AspNetCore.ReDoc from 6.0.5 to 6.0.7
Bumps [Swashbuckle.AspNetCore.ReDoc](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.0.5 to 6.0.7.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.0.5...v6.0.7)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-22 12:00:48 +00:00
dependabot[bot]
35f460998b Bump sharpcompress from 0.28.0 to 0.28.1
Bumps [sharpcompress](https://github.com/adamhathcock/sharpcompress) from 0.28.0 to 0.28.1.
- [Release notes](https://github.com/adamhathcock/sharpcompress/releases)
- [Commits](https://github.com/adamhathcock/sharpcompress/compare/0.28...0.28.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-22 12:00:47 +00:00
dependabot[bot]
d033c30cd7 Bump coverlet.collector from 3.0.2 to 3.0.3
Bumps [coverlet.collector](https://github.com/coverlet-coverage/coverlet) from 3.0.2 to 3.0.3.
- [Release notes](https://github.com/coverlet-coverage/coverlet/releases)
- [Commits](https://github.com/coverlet-coverage/coverlet/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-22 12:00:42 +00:00
Bond_009
ff10dd9e12 Update deps Jellyfin.Model.Tests 2021-02-22 09:58:23 +01:00
Bond-009
0beda0e32c Merge pull request #5275 from BaronGreenback/upnpStartupFix
Fixes #5148
2021-02-21 19:59:15 +01:00
BaronGreenback
473a995650 Update SubtitleEncoder.cs 2021-02-21 15:53:20 +00:00
denikrejn1000
0d3606a746 Translated using Weblate (Serbian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sr/
2021-02-21 10:42:19 -05:00
BaronGreenback
7bfc59b562 Fixed test data. 2021-02-21 13:41:37 +00:00
Claus Vium
c715bc6dd9 Merge pull request #5277 from Bond-009/modeltests
Add Jellyfin.Model.Tests project to the solution
2021-02-21 07:57:57 +01:00
Bond_009
b489761658 Add Jellyfin.Model.Tests project to the solution 2021-02-21 03:06:59 +01:00
Bond_009
b1fe28d0a6 Use GetEncodingOptions where possible 2021-02-21 02:58:30 +01:00
Bond_009
eba859e33e Minor improvements 2021-02-21 02:49:52 +01:00
BaronGreenback
5756c6dbad Merge branch 'master' into bindfix 2021-02-21 00:44:14 +00:00
BaronGreenback
cb09096a59 optimized 2021-02-21 00:42:06 +00:00
BaronGreenback
b03bd7a299 Fix testing 2021-02-21 00:41:14 +00:00
BaronGreenback
c50d0dbc72 Fixed startup racing issue 2021-02-20 23:06:48 +00:00
BaronGreenback
605bd80251 Fix for ignoreVirtualInterfaces 2021-02-20 22:46:16 +00:00
Bond_009
401bafbfd0 Address comments 2021-02-20 23:36:22 +01:00
hoanghuy309
55dd0da5da Translated using Weblate (Vietnamese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/vi/
2021-02-20 17:34:16 -05:00
Bond_009
40b9e7592f Fix build 2021-02-20 23:34:15 +01:00
Bond_009
141efafd3d Enable TreatWarningsAsErrors for MediaBrowser.Model 2021-02-20 23:29:33 +01:00
dkanada
13d65318eb Merge pull request #5223 from Bond-009/minor10
Minor improvements
2021-02-20 10:56:55 +09:00
dkanada
175e2a5249 Merge pull request #5242 from jellyfin/cancellationtokens
Properly forward cancellationTokens
2021-02-20 10:52:30 +09:00
Bond_009
2b131ddaac Cover all branches 2021-02-19 17:26:34 +01:00
Bond_009
941d3f6217 Add tests for ProviderIdsExtensions 2021-02-19 17:01:52 +01:00
Bond_009
b2700ecf44 TMDB: Also search with IMDB or TVDB Id if specified 2021-02-19 16:09:23 +01:00
Andrew Rabert
5379fa0bd0 Merge pull request #5263 from Bond-009/tmdb
TMDB: Include year in search
2021-02-18 17:29:32 -05:00
Bond_009
c1b17b2fa4 TMDB: Include year in search 2021-02-18 22:58:18 +01:00
Bond-009
ae30eaf320 Merge pull request #5255 from cvium/fix_renameuser 2021-02-18 17:52:25 +01:00
Bond-009
4996c997d7 Merge pull request #5253 from jellyfin/tests10
Fix broken test
2021-02-18 17:47:57 +01:00
cvium
2112d2a9a0 Restructure tests 2021-02-17 11:51:15 +01:00
cvium
442e770688 Validate the new username when renaming 2021-02-17 11:30:14 +01:00
Bond_009
54eee41207 Fix broken test 2021-02-17 10:38:44 +01:00
Bond-009
467cd9227e Merge pull request #5251 from crobibero/vpp-null-ref
Fix vpp null reference
2021-02-17 10:07:54 +01:00
dkanada
b4c2086138 Merge pull request #5250 from barronpm/user-rename-fix
Fix user renaming logic
2021-02-17 11:49:59 +09:00
dkanada
1e2ce4e698 Merge pull request #5243 from crobibero/wish-i-had-my-swagger-back
Bump Swashbuckle.AspNetCore to 6.0.5
2021-02-17 11:48:05 +09:00
crobibero
0cce843f07 Fix vpp null reference 2021-02-16 19:14:17 -07:00
Patrick Barron
f127096660 Don't allow new users to be created with the same name as an existing user. 2021-02-16 20:48:41 -05:00
Patrick Barron
1171b5ab92 Fix user renaming logic 2021-02-16 20:41:53 -05:00
Bond-009
91ee1b1d02 Merge pull request #5235 from Ullmie02/nfo-tests 2021-02-15 20:17:57 +01:00
crobibero
9da972682c Enable non-nullable reference types in generated api spec 2021-02-15 10:08:38 -07:00
crobibero
6ad2544a30 Bump Swashbuckle.AspNetCore to 6.0.5 2021-02-15 10:07:50 -07:00
Bond-009
32934cb33d Merge pull request #5230 from orryverducci/double-rate-deint-fix
Fix double rate deinterlacing for some TS files
2021-02-15 14:35:07 +01:00
Bond-009
4770085c63 Merge pull request #5239 from jellyfin/dependabot/nuget/sharpcompress-0.28.0
Bump sharpcompress from 0.27.1 to 0.28.0
2021-02-15 14:33:51 +01:00
Bond-009
d1888d6d10 Merge pull request #5241 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore.ReDoc-6.0.5
Bump Swashbuckle.AspNetCore.ReDoc from 6.0.2 to 6.0.5
2021-02-15 14:33:03 +01:00
Bond_009
e9f22303a4 Properly forward cancellationTokens 2021-02-15 14:19:17 +01:00
dependabot[bot]
7feef9a01b Bump Swashbuckle.AspNetCore.ReDoc from 6.0.2 to 6.0.5
Bumps [Swashbuckle.AspNetCore.ReDoc](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 6.0.2 to 6.0.5.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v6.0.2...v6.0.5)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-15 12:00:48 +00:00
dependabot[bot]
8a22913c84 Bump sharpcompress from 0.27.1 to 0.28.0
Bumps [sharpcompress](https://github.com/adamhathcock/sharpcompress) from 0.27.1 to 0.28.0.
- [Release notes](https://github.com/adamhathcock/sharpcompress/releases)
- [Commits](https://github.com/adamhathcock/sharpcompress/compare/0.27.1...0.28)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-15 12:00:40 +00:00
David
9379f535c2 Merge remote-tracking branch 'jellyfin/master' into nfo-tests 2021-02-15 12:00:51 +01:00
David
e924545ae2 Fix tests for UNIX 2021-02-15 11:39:00 +01:00
Bond-009
30372fcd68 Merge pull request #5194 from Ullmie02/nfo-watched 2021-02-14 18:25:41 +01:00
Luca Benini
078b6244ee Restored GUID in Jellyfin.XbmcMetadata.Tests
Restored the project type guid as by review
See https://github.com/dotnet/project-system/issues/1821
2021-02-14 12:46:28 +01:00
Luca Benini
1664109d14 Merge branch 'baseitemkind-fixes' of github.com:lbenini/jellyfin into baseitemkind-fixes 2021-02-14 12:40:33 +01:00
Luca Benini
2f8d15ed08 Moved test to Jellyfin.Server.Implementation.Tests as by review
Aligned code base to review comments:
	Jellyfin.Server.Implementation.Tests is the correct place
2021-02-14 12:40:08 +01:00
Luca Benini
c4d142eda1 Fix BaseItemKind conversion for PlaylistsFolder
Return the correct ClientTypeName to allow Enum Parse
Added dynamic unit tests to ensure all BaseItem concrete descend
2021-02-14 12:40:08 +01:00
dkanada
75ec8b0c8c Merge pull request #5207 from matthin/default-language
Default to English metadata during the setup wizard.
2021-02-14 16:06:27 +09:00
dkanada
8d2b9ba657 Merge pull request #5222 from Bond-009/jsoncase
Don't enable case-insensitivity for json by default
2021-02-14 15:56:03 +09:00
dkanada
8301dabca6 Merge pull request #5226 from Bond-009/null
100% branch coverage for Emby.Naming
2021-02-14 15:49:41 +09:00
dkanada
d671a74c02 Merge pull request #5218 from jellyfin/totally-unnecessary
rename the solution file
2021-02-14 15:44:46 +09:00
David
fc7377fb9b Merge remote-tracking branch 'jellyfin/master' into nfo-tests
# Conflicts:
#	tests/Jellyfin.XbmcMetadata.Tests/Parsers/EpisodeNfoProviderTests.cs
#	tests/Jellyfin.XbmcMetadata.Tests/Parsers/SeriesNfoParserTests.cs
2021-02-13 22:55:33 +01:00
David
7f12b27319 Add nfo location tests 2021-02-13 22:48:29 +01:00
David
36d91a1601 Add test for music video nfo 2021-02-13 22:41:38 +01:00
David
eecdc3c110 Add more tags to nfo tests 2021-02-13 22:41:12 +01:00
Luca Benini
c8395899ba Moved test to Jellyfin.Server.Implementation.Tests as by review
Aligned code base to review comments:
	Jellyfin.Server.Implementation.Tests is the correct place
2021-02-13 19:40:15 +01:00
Orry Verducci
b718eed314 Use average frame rate when determining deinterlace mode 2021-02-13 15:27:19 +00:00
Luca Benini
991adc8efe Fix BaseItemKind conversion for PlaylistsFolder
Return the correct ClientTypeName to allow Enum Parse
Added dynamic unit tests to ensure all BaseItem concrete descend
2021-02-13 15:28:37 +01:00
Bond_009
dc9e2ad1a4 Add some more Crc32 tests 2021-02-13 11:46:38 +01:00
Bond_009
8a6242826f 100% branch coverage for Emby.Naming 2021-02-13 11:38:17 +01:00
Bond-009
6616add8c8 Merge pull request #5213 from Bond-009/tests9
Add tests for RequestHelpers.GetItemTypeStrings
2021-02-13 11:10:28 +01:00
Dar Donkov
cd612edbf0 Translated using Weblate (Bulgarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/bg/
2021-02-12 23:30:50 -05:00
dkanada
542401c7f4 Merge pull request #5216 from jellyfin/remove-old-settings
remove deprecated settings from server config
2021-02-13 10:52:50 +09:00
Bond_009
65bab55ca0 Minor improvements 2021-02-13 00:39:18 +01:00
Bond_009
fd7b215c28 Don't enable case-insensitivity for json by default 2021-02-13 00:22:58 +01:00
Dar Donkov
0a8587295e Translated using Weblate (Bulgarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/bg/
2021-02-12 13:00:37 -05:00
Bond_009
e1bc322b70 Add test for WriteGetMessage 2021-02-12 18:35:54 +01:00
Bond_009
3a9fcb6abd Rewrite packet writing code for HdHomerun 2021-02-12 17:34:51 +01:00
dkanada
9caf311925 handle plugin manifests automatically 2021-02-12 22:33:10 +09:00
dkanada
57091d2854 rename the solution file 2021-02-12 22:25:43 +09:00
dkanada
9fcdbd4c4b remove deprecated settings from server config 2021-02-12 21:58:37 +09:00
Bond_009
97935d2cd2 Add tests for RequestHelpers.GetItemTypeStrings 2021-02-11 18:21:08 +01:00
Bond-009
76d66e0dee Merge pull request #5208 from crobibero/api-post-image
Add image file accept to openapi
2021-02-11 17:42:28 +01:00
Bond-009
a2ac4d3dd7 Merge pull request #5209 from crobibero/base-item-kind
Create BaseItemKind enum
2021-02-11 17:12:35 +01:00
David Ullmer
eaaab10cf3 Don't split playcount 2021-02-11 14:15:11 +01:00
David Ullmer
ab5fb1b1f2 Merge branch 'master' of github.com:jellyfin/jellyfin into nfo-watched 2021-02-11 13:48:58 +01:00
David Ullmer
ae57ed4ac7 Add nfo user data tests 2021-02-11 13:36:35 +01:00
David Ullmer
dc2f8b5e6b Fix xml loop 2021-02-11 12:43:36 +01:00
Manjot Singh
d490c1c2bc Translated using Weblate (Hindi)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hi/
2021-02-11 02:20:32 -05:00
crobibero
223b42aed3 Create BaseItemKind enum 2021-02-10 17:09:23 -07:00
crobibero
d5f0b046bb Add image file accept to openapi 2021-02-10 16:12:52 -07:00
me@justinharrison.ca
90236efdf2 Default to English metadata during the setup wizard. 2021-02-10 17:08:55 -05:00
Joshua M. Boniface
bd8c269ea2 Merge pull request #5107 from jellyfin/enhanced-nvdec-vpp-tonemap 2021-02-10 01:24:51 -05:00
Joshua M. Boniface
426b55052f Merge pull request #5200 from crobibero/dotnet-5.0.3
Update to dotnet 5.0.3
2021-02-10 01:22:48 -05:00
crobibero
407c35f087 Update to dotnet 5.0.3 2021-02-09 19:02:02 -07:00
Bond-009
f2e5b14db7 Merge pull request #5193 from Ullmie02/nfo-id-test
Add test for generic nfo provider id parsing
2021-02-09 16:45:22 +01:00
Bond_009
9e5c4439b9 Comment out broken tests 2021-02-09 15:12:43 +01:00
Bond_009
f81bcf7f35 Fix tests on windows 2021-02-09 15:12:43 +01:00
Bond_009
be965e35b6 Log subtitle errors 2021-02-09 15:12:43 +01:00
Bond_009
ed8fce2dce Use SubtitleEdit to parse subtitles 2021-02-09 15:12:41 +01:00
David
3a4c33ca5f Add nfo parsing for watched, playcount and lastplayed 2021-02-09 12:42:55 +01:00
David Ullmer
086254821f Add test for generic nfo provider id parsing 2021-02-09 11:19:19 +01:00
Balázs Váradi
7ba53548a2 Fix typos in nfo tests 2021-02-09 07:21:08 +01:00
dkanada
995b370017 Merge pull request #4663 from joshuaboniface/bump-version-10.8.0
Bump version to 10.8.0 for next release
2021-02-09 11:38:31 +09:00
dkanada
7f1243978c Merge pull request #5012 from jellyfin/ws
Improve WebSocket Message Deserialization
2021-02-09 11:10:52 +09:00
dkanada
bb33d5f190 Merge pull request #5190 from jellyfin/regressiontest
Add regression test for PluginManager.SaveManifest
2021-02-09 11:04:02 +09:00
netpok
c97edc96eb Fix typo
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-02-08 21:02:54 +01:00
Balázs Váradi
351d61a318 Add test for multiepisode nfo parsing 2021-02-08 19:40:17 +01:00
Balázs Váradi
094ffafb24 Comment and simplify code 2021-02-08 18:56:06 +01:00
Bond_009
13c1c2815f Add regression test for PluginManager.SaveManifest 2021-02-08 17:10:20 +01:00
dkanada
76fdf73991 Merge pull request #5189 from jellyfin/antiunicode
Remove last usage of \d
2021-02-09 00:47:03 +09:00
dkanada
f0212d377e Merge pull request #5186 from jellyfin/dependabot/nuget/Swashbuckle.AspNetCore.ReDoc-6.0.2
Bump Swashbuckle.AspNetCore.ReDoc from 5.6.3 to 6.0.2
2021-02-09 00:45:32 +09:00
Bond_009
88f37833df Remove last usage of \d 2021-02-08 16:33:37 +01:00
Bond-009
fba80cf6f9 Merge pull request #5188 from cvium/fix_manifest_bom
Exclude BOM when writing meta.json plugin manifest
2021-02-08 16:22:37 +01:00
cvium
311b2f5012 Exclude BOM when writing meta.json plugin manifest 2021-02-08 15:38:06 +01:00
dkanada
158e69c6f0 Merge pull request #4935 from ConfusedPolarBear/quickconnect-cleanup
Remove used quick connect tokens
2021-02-08 22:54:53 +09:00
dkanada
aea1c4f310 Merge pull request #5142 from M0ssTee/updateRegex
Replaced /d with [0-9], see issue #2923
2021-02-08 22:52:58 +09:00
dependabot[bot]
df121c1516 Bump Swashbuckle.AspNetCore.ReDoc from 5.6.3 to 6.0.2
Bumps [Swashbuckle.AspNetCore.ReDoc](https://github.com/domaindrivendev/Swashbuckle.AspNetCore) from 5.6.3 to 6.0.2.
- [Release notes](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/releases)
- [Commits](https://github.com/domaindrivendev/Swashbuckle.AspNetCore/compare/v5.6.3...v6.0.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-08 12:00:45 +00:00
Nyanmisaka
22e8667105 Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-02-08 16:41:38 +08:00
Jakub Fabijan
6c2eb5fc7e Translated using Weblate (Esperanto)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/eo/
2021-02-08 00:30:44 -05:00
Jakub Fabijan
e8fd4531ed Added translation using Weblate (Esperanto) 2021-02-07 14:57:33 -05:00
BaronGreenback
053063fd47 Fixed IP6 host parsing 2021-02-07 17:42:23 +00:00
Oskari Lavinto
49b08798e6 Translated using Weblate (Finnish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fi/
2021-02-07 10:57:52 -05:00
Patrick Barron
a5e55ba859 Clean up UserManager.AuthenticateUser 2021-02-06 15:59:27 -05:00
Bond-009
34e10622c6 Merge pull request #5171 from Ullmie02/reset-fix 2021-02-06 18:56:36 +01:00
David Ullmer
07f1a2c2dc Update Jellyfin.Api/Controllers/UserController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-02-06 18:36:18 +01:00
David
eb0ff0c370 Fix forgot password pin request 2021-02-06 17:18:37 +01:00
nyanmisaka
3052068161 hybird vpp tonemapping for QSV on Linux 2021-02-06 13:21:50 +08:00
nyanmisaka
b0e0e19468 add cuda format converter 2021-02-06 13:21:40 +08:00
nyanmisaka
09b9fa3ce1 add vpp tonemapping for vaapi 2021-02-06 13:21:30 +08:00
Balázs Váradi
b646787ab6 Get IndexNumberEnd from nfo 2021-02-05 20:02:47 +01:00
WWWesten
f8283d8c20 Translated using Weblate (Russian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ru/
2021-02-05 05:55:58 -05:00
WWWesten
9eabad685e Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2021-02-05 05:55:58 -05:00
dkanada
54a3ab15a3 Merge pull request #5005 from jellyfin/bytes
JsonSerializer deserialize from bytes where possible
2021-02-05 11:47:06 +09:00
dkanada
2e9661c415 Merge pull request #5043 from senritsu/improve-episode-number-parsing-with-digits-in-names
adjust episode path expression to allow digits in series names
2021-02-05 11:43:32 +09:00
dkanada
86859a3926 Merge pull request #5010 from BaronGreenback/Remove_IPluginConfigurationPage
Removal of IPluginConfigurationPage
2021-02-05 11:38:44 +09:00
M0ssTee
256bb3ee98 Update MediaBrowser.MediaEncoding/Subtitles/AssParser.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-02-04 16:14:57 -05:00
dkanada
ad203d011b Merge pull request #5006 from jellyfin/roundtrip
Use JsonSerializer.SerializeToUtf8Bytes when doing a round trip
2021-02-04 23:28:20 +09:00
dkanada
bfbbee0bc9 Merge pull request #5085 from Ullmie02/nfo-actor-type
Process actor type in nfo files
2021-02-04 23:27:34 +09:00
dkanada
cfe37474f1 Merge pull request #5088 from Ullmie02/nfo-watched
Fix nfo saving during UserDataSaved event
2021-02-04 23:24:53 +09:00
dkanada
793ae6f7a6 Merge pull request #5112 from jellyfin/shuffle
Add test for ShuffleExtensions
2021-02-04 23:23:11 +09:00
dkanada
6afbc98b60 Merge pull request #5159 from Ullmie02/unused
Remove unused files
2021-02-04 23:21:17 +09:00
Bond-009
28ffbf6945 Merge pull request #5106 from BaronGreenback/FileShareTest2 2021-02-03 19:16:22 +01:00
BaronGreenback
8d12e6d6eb Update BaseNfoSaver.cs 2021-02-03 10:42:17 +00:00
David
f854a1ce1f Remove unused files 2021-02-03 11:34:21 +01:00
Claus Vium
3fd0987ee3 Merge pull request #5111 from Larvitar/tmdb-season-name-fix
Remove season name from metadata result
2021-02-03 08:20:21 +01:00
Claus Vium
5f63c33557 Merge pull request #5154 from crobibero/skip-attributes 2021-02-03 08:18:39 +01:00
M0ssTee
8f88d0d2cb Update Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-02-03 00:57:04 -05:00
crobibero
8d902478a0 Don't skip hidden files 2021-02-02 07:14:11 -07:00
Troy
8c640a1492 Replaced /d with [0-9], see issue #2923 2021-02-01 02:49:23 +00:00
Tomi
4bcf684b72 Translated using Weblate (Finnish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fi/
2021-01-31 11:30:29 -05:00
Jacob Adlers
edc7efe4d7 Translated using Weblate (Swedish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sv/
2021-01-31 11:30:29 -05:00
WWWesten
fa59d2afe3 Translated using Weblate (Russian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ru/
2021-01-31 11:30:29 -05:00
WWWesten
027ef41d87 Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2021-01-31 11:30:29 -05:00
WWWesten
a50459a2a1 Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2021-01-29 01:31:43 -05:00
Claus Vium
63be326302 Merge pull request #5117 from jellyfin/fix-framerate-locale
Make FRAME-RATE field culture invariant
2021-01-28 15:35:23 +01:00
nyanmisaka
3ce0d589ba make FRAME-RATE field culture invariant 2021-01-28 01:00:55 +08:00
Bond_009
bf4829a38c Remove redundant statement 2021-01-26 20:28:35 +01:00
Bond_009
80e22d9670 Add test for ShuffleExtensions 2021-01-26 20:21:07 +01:00
Mariusz Chryc
0d1f356373 Remove season name from metadata result 2021-01-26 19:04:20 +01:00
Bond-009
4a2678e63b Merge pull request #5097 from Bond-009/cleanup4
Remove useless abstraction and clean up formatting
2021-01-26 17:44:49 +01:00
Bond-009
51b9e62830 Merge pull request #5104 from jellyfin/dependabot/nuget/coverlet.collector-3.0.2
Bump coverlet.collector from 3.0.1 to 3.0.2
2021-01-25 22:08:34 +01:00
Claus Vium
e7e385d7a2 Merge pull request #5105 from crobibero/image-null-ref
Add null check for ImageTags
2021-01-25 19:27:59 +01:00
BaronGreenback
21d15989f5 1 attempted fix 2021-01-25 17:34:11 +00:00
crobibero
4e2d029b3d Add null check for ImageTags 2021-01-25 08:48:24 -07:00
dependabot[bot]
09471a206a Bump coverlet.collector from 3.0.1 to 3.0.2
Bumps [coverlet.collector](https://github.com/coverlet-coverage/coverlet) from 3.0.1 to 3.0.2.
- [Release notes](https://github.com/coverlet-coverage/coverlet/releases)
- [Commits](https://github.com/coverlet-coverage/coverlet/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-25 12:00:44 +00:00
Claus Vium
e5828cdbf1 Merge pull request #5099 from crobibero/non-required-query-param 2021-01-25 12:55:06 +01:00
Claus Vium
f82e6ee8cc Merge pull request #5090 from Ullmie02/plugin-startup-fix 2021-01-25 12:04:25 +01:00
David Ullmer
b014f2309d Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-01-25 09:44:06 +01:00
crobibero
77b417e41e Mark non-nullable body as null 2021-01-24 15:02:56 -07:00
crobibero
ef97ead707 Fix openapi nullable properties 2021-01-24 14:36:36 -07:00
nyanmisaka
326fa8ce38 add an enhanced nvdec decoder 2021-01-25 03:40:34 +08:00
Claus Vium
98a4e1b840 Merge pull request #5095 from Bond-009/sortorder 2021-01-24 19:04:12 +01:00
Bond_009
f6b293203a Restore weird behaviour 2021-01-24 17:55:25 +01:00
Bond-009
3806cc5b3f Merge pull request #5074 from jellyfin/cov
100% branch coverage for Jellyfin.Naming
2021-01-24 14:11:48 +01:00
David Ullmer
39f9a7981a Update MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-01-24 13:35:08 +01:00
David
677bba742e Remove try-catch nesting 2021-01-24 13:34:22 +01:00
Bond_009
1c2cd7efa0 Remove useless abstraction and clean up formatting 2021-01-24 13:32:29 +01:00
David
80f3e20394 Change plugin error message 2021-01-24 13:22:04 +01:00
Bond_009
d24e7f60c7 Fix GetOrderBy and add tests 2021-01-24 11:43:05 +01:00
Bond-009
b4d04f9ca5 Merge pull request #5091 from crobibero/query-param-array
Use ArrayModelBinder for sortBy and sortOrder
2021-01-24 11:13:18 +01:00
crobibero
55670b91b2 Use ArrayModelBinder for sortBy and sortOrder 2021-01-23 17:32:13 -07:00
Ionut Andrei Oanca
68969c9530 Clear playlist in SyncPlay group 2021-01-24 01:05:17 +01:00
David Ullmer
4adbbb9f51 Catch TypeLoadException during plugin loading 2021-01-24 00:58:52 +01:00
Karandeep Singh Grewal
4aaf71b873 Translated using Weblate (Hindi)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hi/
2021-01-23 18:12:17 -05:00
Bond-009
6e9cebaf74 Merge pull request #5084 from Ullmie02/nfo-tagline
Don't write tagline in <outline> in nfo files
2021-01-23 23:57:53 +01:00
David Ullmer
3838e8ac15 Update MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-01-23 23:36:51 +01:00
Joshua M. Boniface
3fda50de6d Merge pull request #5064 from BaronGreenback/PluginFix
Plugin bug fixes
2021-01-23 15:24:10 -05:00
Joshua M. Boniface
4b6b90e0b1 Merge pull request #5069 from crobibero/obsolete-param 2021-01-23 14:45:18 -05:00
Joshua M. Boniface
4d13cad7af Merge pull request #5062 from crobibero/delete_log_task 2021-01-23 14:43:09 -05:00
Joshua M. Boniface
3bf7e18886 Merge pull request #5031 from crobibero/5.0.2
Update to dotnet 5.0.2
2021-01-23 14:41:03 -05:00
Joshua M. Boniface
c5e9d56028 Merge pull request #4911 from Ullmie02/nuget_again 2021-01-23 14:40:06 -05:00
David
18e33b6b2d Remove check for wrong metadata saving property 2021-01-23 19:05:55 +01:00
David
454d82c52c Process actor type in nfo files 2021-01-23 18:06:26 +01:00
David
b2f2126edd Don't write tagline in <outline> in nfo files 2021-01-23 17:35:06 +01:00
Bond-009
828b0be254 Merge pull request #5047 from jellyfin/dependabot/nuget/Moq-4.16.0
Bump Moq from 4.15.2 to 4.16.0
2021-01-23 15:05:18 +01:00
dependabot[bot]
1bc1d1c07b Bump Moq from 4.15.2 to 4.16.0
Bumps [Moq](https://github.com/moq/moq4) from 4.15.2 to 4.16.0.
- [Release notes](https://github.com/moq/moq4/releases)
- [Changelog](https://github.com/moq/moq4/blob/main/CHANGELOG.md)
- [Commits](https://github.com/moq/moq4/compare/v4.15.2...v4.16.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-23 13:43:41 +00:00
Bond-009
7c3db79535 Merge pull request #5053 from jellyfin/dependabot/nuget/coverlet.collector-3.0.1
Bump coverlet.collector from 3.0.0 to 3.0.1
2021-01-23 14:43:11 +01:00
Bond-009
27f8823cbe Merge pull request #5055 from jellyfin/dependabot/nuget/sharpcompress-0.27.1
Bump sharpcompress from 0.26.0 to 0.27.1
2021-01-23 14:42:29 +01:00
Bond-009
827f39f54b Merge pull request #5068 from Ullmie02/nfo-tests 2021-01-23 13:52:33 +01:00
David
7297412195 Fix indentation 2021-01-23 12:02:22 +01:00
WWWesten
91abc09e79 Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2021-01-22 17:25:47 -05:00
Wong To Han, Toby
84f6d683f2 Translated using Weblate (Chinese (Hong Kong))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zh_Hant_HK/
2021-01-22 02:44:01 -05:00
Arian Ar
d80daa3bec Translated using Weblate (Persian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fa/
2021-01-21 18:58:04 -05:00
Rodlan Bernabe
17cff101ce Translated using Weblate (Filipino)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fil/
2021-01-21 15:21:29 -05:00
Bond_009
956ca0e5aa 100% branch coverage for Jellyfin.Naming 2021-01-21 15:46:10 +01:00
Cody Robibero
91a9af95c2 Apply suggestions from code review
Co-authored-by: dkanada <dkanada@users.noreply.github.com>
2021-01-21 07:01:51 -07:00
BaronGreenback
df402df908 fix return 2021-01-21 12:48:43 +00:00
crobibero
59ff2c5b4b Add ability to mark query parameter as obsolete. 2021-01-20 16:24:15 -07:00
ImSoSx
215554bb41 Translated using Weblate (Spanish (Latin America))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/es_419/
2021-01-20 18:07:16 -05:00
David
cf9a03790b Check rating name for "audience" 2021-01-20 20:32:45 +01:00
David
d71dce50ca Add music album nfo parser test 2021-01-20 20:02:35 +01:00
David
ccea02fbb2 Add season nfo parser test 2021-01-20 20:02:03 +01:00
David
dbd70bd394 Add episode nfo parser test 2021-01-20 19:47:31 +01:00
David
0279af5f6b Move existing tests to correct namespace 2021-01-20 19:46:44 +01:00
David
07613f0821 Translated using Weblate (German)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/de/
2021-01-20 12:06:25 -05:00
AdmiralAnimE
27cbd14377 Translated using Weblate (Bulgarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/bg/
2021-01-20 06:35:27 -05:00
AdmiralAnimE
b3059238e3 Translated using Weblate (Bulgarian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/bg/
2021-01-20 04:43:28 -05:00
BaronGreenback
89046e1d97 Bug fixes 2021-01-19 21:15:40 +00:00
Claus Vium
14bd4a110f Merge pull request #4978 from BaronGreenback/MultipeProxies 2021-01-19 20:55:21 +01:00
BaronGreenback
25eaf21a8f renamed func in test 2021-01-19 19:32:46 +00:00
BaronGreenback
ab632b96fe renamed. 2021-01-19 19:31:55 +00:00
BaronGreenback
9db8a4d88d reverted 2021-01-19 13:56:16 +00:00
BaronGreenback
82d365045a Removed systemIp6 functionality. 2021-01-19 12:50:11 +00:00
BaronGreenback
821473557c Changed mapping logic 2021-01-19 11:31:40 +00:00
BaronGreenback
dd089fd27a Changed test 2021-01-19 10:50:17 +00:00
BaronGreenback
6a7623da02 Simplified Code 2021-01-19 10:36:37 +00:00
BaronGreenback
8b2b3b77a5 Removed duplication 2021-01-19 10:29:17 +00:00
crobibero
6abee2dd22 fix delete log task 2021-01-18 19:42:50 -07:00
Claus Vium
65c09f82c5 Merge pull request #5027 from crobibero/episode-first-up 2021-01-18 15:48:53 +01:00
crobibero
1455c2aa10 Remove commented code 2021-01-18 06:47:18 -07:00
Claus Vium
b9691e8712 Merge pull request #5025 from BaronGreenback/DlnaFix 2021-01-18 14:24:35 +01:00
BaronGreenback
49e3b70722 Moved InternalsVisibleTo 2021-01-18 13:03:37 +00:00
BaronGreenback
e81b7c8f4f reverted 2021-01-18 12:17:18 +00:00
dependabot[bot]
4e13b41eed Bump sharpcompress from 0.26.0 to 0.27.1
Bumps [sharpcompress](https://github.com/adamhathcock/sharpcompress) from 0.26.0 to 0.27.1.
- [Release notes](https://github.com/adamhathcock/sharpcompress/releases)
- [Commits](https://github.com/adamhathcock/sharpcompress/compare/0.26...0.27.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-18 12:01:04 +00:00
dependabot[bot]
0cb80d3815 Bump coverlet.collector from 3.0.0 to 3.0.1
Bumps [coverlet.collector](https://github.com/coverlet-coverage/coverlet) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/coverlet-coverage/coverlet/releases)
- [Commits](https://github.com/coverlet-coverage/coverlet/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-18 12:01:03 +00:00
Oriol Serra
01836e55e4 Translated using Weblate (Catalan)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ca/
2021-01-17 19:28:35 -05:00
BaronGreenback
828a9b7c75 rollback 2021-01-17 23:30:56 +00:00
BaronGreenback
13012bfa27 Fix bug in GetItemId 2021-01-17 22:43:05 +00:00
senritsu
4e21b49994 adjust episode path expression to allow digits in series names
The previous expression was too greedy to consume digits, because the hyphen was optional. This lead to incorrect episode numbers for certain series with digits in their names, in those cases each episode was recognized as the same episode number (the digit from the series name).

The rule, which matches most standard  anime filenames, also had a lower priority than one of the Kodi rules, leading to incorrect recognition for absolute numbered episodes with triple digits and higher (first digit was used as season number, rest of digits as episode number). This also resolves one of the TODO test cases.

Additional test cases were added to ensure that both hyphens in different parts of the filename, as well as names without hyphens, still work correctly. All previous test cases still pass.

Unfortunately another TODO (EpisodeNumberTests.cs@L76, Uchuu Senkan Yamato 2199) with the same issue (digits in the series name) could not be trivially fixed in the same change, due to the significantly different formatting. Attempts to resolve this case did not work out for now.
2021-01-17 20:24:23 +01:00
Sinan
d8d9d90469 Translated using Weblate (Turkish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/tr/
2021-01-17 11:09:42 -05:00
BaronGreenback
b9f0f4f53b reverted 2021-01-17 13:35:30 +00:00
BaronGreenback
688e7c6a2d Moved internalVisibleToAttribute to .csj 2021-01-17 12:45:11 +00:00
Joshua M. Boniface
03242a6afd Merge pull request #5007 from jellyfin/create 2021-01-16 13:28:48 -05:00
Joshua M. Boniface
fe9096be94 Merge pull request #4970 from BaronGreenback/networkTestCorrection 2021-01-16 13:28:34 -05:00
Joshua M. Boniface
3204ce71b3 Merge pull request #4956 from jceresini/master
Fix rpm package dependencies
2021-01-16 13:27:36 -05:00
crobibero
a087ab389a dotnet 5.0.2 2021-01-16 10:17:33 -07:00
crobibero
3b9567d583 Add query parameter to disable returning first episode as next up 2021-01-15 15:08:48 -07:00
crobibero
3d754fa5bf Revert "Don't return first episodes in next up" 2021-01-15 15:06:11 -07:00
BaronGreenback
620648fe81 Fixed for no data. 2021-01-15 18:55:52 +00:00
BaronGreenback
16d092a8a7 Fixed encoding issue 2021-01-15 12:17:50 +00:00
BaronGreenback
a4e838fbf5 Remoed configurationPageType 2021-01-15 10:36:44 +00:00
BaronGreenback
8ef37f6b0e Rename IPluginConfigurationPage.cs to ConfigurationPageType.cs.cs
Renamed file.
2021-01-15 10:26:00 +00:00
BaronGreenback
bced1eab54 Assert.True 2021-01-13 21:16:04 +00:00
Alexander Brissman
549160b9b9 Translated using Weblate (Norwegian Bokmål)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nb_NO/
2021-01-13 14:35:17 -05:00
BaronGreenback
4bc8a1e77b updated 2021-01-13 15:29:57 +00:00
BaronGreenback
9a730241b1 Changed to address. 2021-01-13 15:14:04 +00:00
Deniz
eb82879a4f Translated using Weblate (Turkish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/tr/
2021-01-13 02:59:55 -05:00
Bond_009
9a5ceb34d1 Improve WebSocket Deserialization 2021-01-13 01:11:25 +01:00
BaronGreenback
c6aa6ceed9 Removal of IPluginConfigurationPage 2021-01-12 22:10:23 +00:00
MrTimscampi
c52a2f2f7b Move studios image providers to plugin 2021-01-12 22:45:28 +01:00
趙映翔
f7aae0e876 Translated using Weblate (Chinese (Traditional))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zh_Hant/
2021-01-12 16:28:17 -05:00
Oriol Serra
580b90aa4c Translated using Weblate (Catalan)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ca/
2021-01-12 16:28:17 -05:00
BaronGreenback
d66bc3fb3e Fixed indentation 2021-01-12 20:43:25 +00:00
BaronGreenback
dfd7ff5732 Update MediaBrowser.Common/Net/INetworkManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-01-12 20:41:48 +00:00
BaronGreenback
94cc5b9d8b Update MediaBrowser.Common/Net/INetworkManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-01-12 20:41:40 +00:00
BaronGreenback
08e83cfa54 Remove additional debug logging. 2021-01-12 18:52:48 +00:00
Bond_009
eeff9f52c6 Fix Omdb caching 2021-01-12 16:27:38 +01:00
Bond-009
bffebce909 Merge pull request #5004 from jellyfin/camera-upload
remove unused notification type
2021-01-12 16:13:21 +01:00
Bond_009
1fdd2d6e05 Handle IO errors in LoadManifest 2021-01-12 16:03:13 +01:00
Bond_009
1752423e52 Open FileStream with FileMode.Create instead of FileMode.OpenOrCreate
> The OpenWrite method opens a file if one already exists for the file path,
    or creates a new file if one does not exist. For an existing file,
    it does not append the new text to the existing text. Instead,
    it overwrites the existing characters with the new characters.
    If you overwrite a longer string
    (such as "This is a test of the OpenWrite method") with a shorter string
    (such as "Second run"), the file will contain a mix of the strings
    ("Second runtest of the OpenWrite method").

Ref: https://docs.microsoft.com/en-us/dotnet/api/system.io.file.openwrite?view=net-5.0#remarks
2021-01-12 15:51:32 +01:00
Bond_009
a9b497720d Use JsonSerializer.SerializeToUtf8Bytes when doing a round trip
This test uses a very small object (CountryInfo), using a bigger object
would increase the difference in allocated memory.

```
BenchmarkDotNet=v0.12.1, OS=fedora 32
Intel Core i7-6700HQ CPU 2.60GHz (Skylake), 1 CPU, 8 logical and 4 physical cores
.NET Core SDK=5.0.100
  [Host]     : .NET Core 5.0.0 (CoreCLR 5.0.20.51904, CoreFX 5.0.20.51904), X64 RyuJIT
  DefaultJob : .NET Core 5.0.0 (CoreCLR 5.0.20.51904, CoreFX 5.0.20.51904), X64 RyuJIT

|          Method |       Mean |    Error |   StdDev |  Gen 0 | Gen 1 | Gen 2 | Allocated |
|---------------- |-----------:|---------:|---------:|-------:|------:|------:|----------:|
|  RoundTripBytes |   932.0 ns |  5.09 ns |  4.25 ns | 0.1173 |     - |     - |     368 B |
| RoundTripString | 1,114.8 ns | 22.19 ns | 23.74 ns | 0.1469 |     - |     - |     464 B |
```
2021-01-12 15:37:18 +01:00
Bond_009
1ea2b200c0 JsonSerializer deserialize from bytes where possible
This is faster and uses way less memory
```
BenchmarkDotNet=v0.12.1, OS=fedora 32
Intel Core i7-6700HQ CPU 2.60GHz (Skylake), 1 CPU, 8 logical and 4 physical cores
.NET Core SDK=5.0.100
  [Host]     : .NET Core 5.0.0 (CoreCLR 5.0.20.51904, CoreFX 5.0.20.51904), X64 RyuJIT
  DefaultJob : .NET Core 5.0.0 (CoreCLR 5.0.20.51904, CoreFX 5.0.20.51904), X64 RyuJIT

| Method |     Mean |   Error |  StdDev |   Gen 0 | Gen 1 | Gen 2 | Allocated |
|------- |---------:|--------:|--------:|--------:|------:|------:|----------:|
|  Bytes | 158.4 us | 2.56 us | 2.14 us | 16.8457 |     - |     - |  52.08 KB |
| String | 172.8 us | 0.78 us | 0.70 us | 41.5039 |     - |     - | 127.82 KB |
| Custom | 155.5 us | 2.95 us | 2.76 us | 10.0098 |     - |     - |  31.27 KB |
```
2021-01-12 15:28:02 +01:00
BaronGreenback
2979c8dd37 Fixed test on Mac 2021-01-12 13:23:10 +00:00
BaronGreenback
35a30c9d09 Impliments KnownNetworks and KnownProxies 2021-01-12 13:07:34 +00:00
dkanada
cac33ef105 remove unused notification type 2021-01-12 12:28:21 +09:00
Bond-009
aaf889f683 Merge pull request #5002 from jellyfin/dependabot/nuget/coverlet.collector-3.0.0
Bump coverlet.collector from 1.3.0 to 3.0.0
2021-01-11 14:58:23 +01:00
dependabot[bot]
b00f3334f2 Bump coverlet.collector from 1.3.0 to 3.0.0
Bumps [coverlet.collector](https://github.com/coverlet-coverage/coverlet) from 1.3.0 to 3.0.0.
- [Release notes](https://github.com/coverlet-coverage/coverlet/releases)
- [Commits](https://github.com/coverlet-coverage/coverlet/commits/v3.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-11 12:01:03 +00:00
Claus Vium
5c00b4175a Merge pull request #4997 from crobibero/subtitle-upload-auth
Require elevated auth to upload subtitles
2021-01-10 20:45:15 +01:00
crobibero
5f998bdd1f Require elevated auth to upload subtitles 2021-01-10 10:48:37 -07:00
Claus Vium
9970b87439 Merge pull request #4994 from Bond-009/artistnfo
Add tests for artist nfo
2021-01-10 10:33:31 +01:00
Bond_009
4c3fa21e97 Add tests for artist nfo 2021-01-09 21:49:36 +01:00
Claus Vium
75a25de991 Merge pull request #4992 from Bond-009/seriesnfo
Add tests for series nfo
2021-01-09 20:43:15 +01:00
Bond_009
585821954d Add tests for series nfo 2021-01-09 20:15:16 +01:00
Bond-009
8d4312d739 Merge pull request #4989 from Bond-009/nfotests 2021-01-09 19:35:24 +01:00
Bond-009
0bb0dd646f Merge pull request #4980 from Ullmie02/chinese
Add additional chinese languages
2021-01-09 18:55:57 +01:00
Bond-009
2e33e14bb2 Merge pull request #4899 from jellyfin/nullableguid
Cover all branches in JsonNullableGuidConverter
2021-01-09 17:37:23 +01:00
Bond-009
2c74262f7c Merge pull request #4945 from obradovichv/fix-string-culture-specificity 2021-01-09 16:21:19 +01:00
David
262c6ae249 Remove ',' hack 2021-01-09 15:33:39 +01:00
Bond_009
be511ca162 Fix release build ... again 2021-01-09 15:14:26 +01:00
Bond_009
3a9ce6d366 Fix release build 2021-01-09 15:08:48 +01:00
Bond_009
d07eef4f25 Add tests for NFO parsers 2021-01-09 15:00:59 +01:00
Bond_009
620fbf0f89 Remove CropWhitespace function 2021-01-09 10:51:59 +01:00
Bond-009
a8230c07ea Merge pull request #4961 from crobibero/person-blurhash-null-ref
Fix potential null reference
2021-01-09 00:41:16 +01:00
Bond-009
45c6d79dc9 Merge pull request #4877 from jellyfin/ass 2021-01-08 21:43:45 +01:00
Bond-009
efa2dc6829 Merge pull request #4878 from jellyfin/srt
Add tests for srt parser
2021-01-08 21:43:36 +01:00
Bond-009
a554423163 Merge pull request #4976 from BaronGreenback/dlnaPortFix
Fixed DLNA Server on RC2
2021-01-08 21:06:14 +01:00
Bond-009
4549c96f6d Merge pull request #4906 from Spacetech/library_scan_ignore_inaccessible
Ignore inaccessible files & folders during library scans
2021-01-08 21:01:32 +01:00
David
357429b8ea Add .nfo ratings tag 2021-01-08 14:55:16 +01:00
Christian
cb6ae4a188 Translated using Weblate (German)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/de/
2021-01-08 07:48:22 -05:00
David Ullmer
87c2802984 Add additional chinese languages 2021-01-08 11:25:23 +01:00
BaronGreenback
192efff791 Update DlnaEntryPoint.cs 2021-01-07 17:17:22 +00:00
minystory
7acee4070e Translated using Weblate (Korean)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ko/
2021-01-07 10:48:05 -05:00
Oatavandi
0ac993e1b3 Translated using Weblate (Malayalam)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ml/
2021-01-07 09:37:18 -05:00
Bond-009
07650d91da Merge pull request #4962 from thornbill/fix-playstate-name
Fix capitalization of Playstate message
2021-01-07 10:04:02 +01:00
Bond-009
7758c61ea8 Merge pull request #4968 from ianjazz246/fix-music-album-display
Fix library with music directly under artist folder
2021-01-07 10:02:23 +01:00
BaronGreenback
a664aac881 optimization 2021-01-06 20:46:22 +00:00
BaronGreenback
90d72d6628 Update NetworkManager.cs
Changed split character
2021-01-06 20:39:25 +00:00
BaronGreenback
8044f1f72f Update NetworkParseTests.cs 2021-01-06 20:30:57 +00:00
Bond-009
6f0a6fdd5d Merge pull request #4943 from crobibero/omdb-fix 2021-01-06 20:28:29 +01:00
Ian
0f4bbbc63c Fix 3169 and 2879 by making MusicArtistResolver run ahead of MusicAlbumResolver 2021-01-06 10:58:07 -08:00
Oatavandi
66ab4e77cd Added translation using Weblate (Malayalam) 2021-01-06 11:57:06 -05:00
crobibero
75ed532fca Add serialize test 2021-01-06 07:07:38 -07:00
GlibTongue
162e8d3045 Translated using Weblate (Urdu (Pakistan))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ur_PK/
2021-01-05 23:06:44 -05:00
David
989c6dcffa Update azure-pipelines-package.yml 2021-01-05 23:01:46 +01:00
Bill Thornton
cfca27e99a Fix capitalization of Playstate message 2021-01-05 10:06:55 -05:00
crobibero
13f347a813 Fix potential null reference 2021-01-05 07:00:48 -07:00
Joe Ceresini
530c4dc11b Use variables for version, and fix conflict 2021-01-05 00:32:46 -05:00
suelio bertulino lima
a4a261e940 Translated using Weblate (Portuguese (Brazil))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pt_BR/
2021-01-04 12:06:45 -05:00
Aron Szakacs
12144d2d9e Translated using Weblate (German (Swiss))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/gsw/
2021-01-04 12:06:45 -05:00
crobibero
c1d1b6e9f4 Fix serialization loop 2021-01-04 07:52:44 -07:00
Tommaso Stocchi
452af30511 Added UrlDecode for authorization parts 2021-01-03 19:32:58 +01:00
obradovichv
d45e2fe95a Update contributors 2021-01-03 20:32:33 +02:00
obradovichv
0282a1ed09 Fix string culture specificity
Fix bug in SsaParser.cs primary color {\1c} formatting that would leave
behind the {\1c} closing token and instead append </font> token
unconditionally to the dialogue text. Add tests.

Change AlphanumComparatorTests.cs complementary test data generation
from an array shuffle to an array reversal. Although it was previously
using a seeded Random, the shuffle itself could result in no
rearrangement of elements if the seed or test data changed over time.
The reversal guarantees reordering of elements and has the added benefit
of simplifying the test code since no special handling is needed for
arrays of 2 elements.

Change DailyTrigger.cs logging of TriggerDate format to
"yyyy-MM-dd HH:mm:ss.fff zzz" for consistency with configured log
timestamp format and change DueTime format to culture-invariant "c"
format.
2021-01-03 20:17:27 +02:00
Bond-009
841996c642 Merge pull request #4936 from crobibero/series-start-item-id
Fix inverted SkipWhile
2021-01-03 17:40:22 +01:00
crobibero
a3a31952f4 Fix OMDb converter 2021-01-03 09:35:22 -07:00
crobibero
a15e126ef8 Fix inverted SkipWhile 2021-01-02 19:23:54 -07:00
Azunyan-
d1da1aa407 Translated using Weblate (Swedish)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sv/
2021-01-02 21:11:01 -05:00
lemmens95
e15b2ea10f Translated using Weblate (Dutch)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nl/
2021-01-02 21:11:00 -05:00
Matt Montgomery
8dd83327b5 Remove quick connect tokens after usage 2021-01-02 16:37:43 -06:00
Manjot Singh
5932b967b7 Translated using Weblate (Punjabi)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/pa/
2021-01-02 13:23:32 -05:00
Tommaso Stocchi
a03880b687 Improve get auth header parts using substring 2021-01-02 18:18:47 +01:00
Manjot Singh
cf52503630 Added translation using Weblate (Punjabi) 2021-01-02 06:00:18 -05:00
dkanada
c117b12b6b Merge pull request #4920 from crobibero/person-blurhash
Attach correct Blurhash to BaseItemPerson
2021-01-02 15:45:02 +09:00
crobibero
d077c425d3 Add only correct person blurhash 2021-01-01 12:35:03 -07:00
Bond-009
9a10a18db1 Merge pull request #4905 from BaronGreenback/streamingHelper
Null exception fix
2021-01-01 18:21:21 +01:00
Bond-009
9265dd68a4 Change converter log level (#4916)
Change converter log level
2021-01-01 18:21:06 +01:00
crobibero
1b894798b1 Change log level for converters 2021-01-01 09:34:39 -07:00
David
f154c0dfad Change stable ci nuget build command 2021-01-01 14:56:14 +01:00
Gary Wilber
1fdeac0a7d Ignore inaccessible files during library scans 2020-12-31 18:40:24 -08:00
BaronGreenback
11700db312 Update StreamingHelpers.cs
Null exception fix
2021-01-01 00:25:47 +00:00
Joshua M. Boniface
406ae3e43a Merge pull request #4709 from BaronGreenback/PluginDowngrade 2020-12-31 18:47:05 -05:00
BaronGreenback
bd1c115e46 renamed imagePath to imageUrl 2020-12-31 15:59:48 +00:00
dkanada
e006cc8ac3 Merge pull request #4840 from jellyfin/dependabot/nuget/AutoFixture.AutoMoq-4.15.0
Bump AutoFixture.AutoMoq from 4.14.0 to 4.15.0
2020-12-31 23:14:19 +09:00
dependabot[bot]
6717b8c91a Bump AutoFixture.AutoMoq from 4.14.0 to 4.15.0
Bumps [AutoFixture.AutoMoq](https://github.com/AutoFixture/AutoFixture) from 4.14.0 to 4.15.0.
- [Release notes](https://github.com/AutoFixture/AutoFixture/releases)
- [Commits](https://github.com/AutoFixture/AutoFixture/compare/v4.14.0...v4.15.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-31 14:13:22 +00:00
dkanada
d6db0e4b02 Merge pull request #4902 from BaronGreenback/NetmaskFix
Fixed loopback subnet
2020-12-31 23:13:07 +09:00
dkanada
ac7648ab29 Merge pull request #4841 from jellyfin/dependabot/nuget/AutoFixture.Xunit2-4.15.0
Bump AutoFixture.Xunit2 from 4.14.0 to 4.15.0
2020-12-31 23:12:23 +09:00
dkanada
8365d99e52 Merge pull request #4788 from jellyfin/dependabot/nuget/prometheus-net.AspNetCore-4.1.1
Bump prometheus-net.AspNetCore from 4.0.0 to 4.1.1
2020-12-31 23:12:09 +09:00
BaronGreenback
c76faa9708 Update IPNetAddress.cs
Corrected loopback subnet
2020-12-31 13:18:13 +00:00
BaronGreenback
149c2b2169 Added referenced assembly failure detection, and DI failure protection. 2020-12-31 11:39:34 +00:00
martinek-stepan
cc92f7afe5 Enable nullable for MediaBrowser.XbmcMetadata project (#4612)
Co-authored-by: Cody Robibero <cody@robibe.ro>
Co-authored-by: Stepan <ste.martinek+git@gmail.com>
2020-12-31 12:09:25 +01:00
Bond_009
45331ad83a Cover all branches in JsonNullableGuidConverter 2020-12-31 11:32:32 +01:00
dependabot[bot]
fdb3632e7a Bump prometheus-net.AspNetCore from 4.0.0 to 4.1.1
Bumps [prometheus-net.AspNetCore](https://github.com/prometheus-net/prometheus-net) from 4.0.0 to 4.1.1.
- [Release notes](https://github.com/prometheus-net/prometheus-net/releases)
- [Changelog](https://github.com/prometheus-net/prometheus-net/blob/master/History)
- [Commits](https://github.com/prometheus-net/prometheus-net/compare/v4.0.0...v4.1.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-31 06:45:10 +00:00
dependabot[bot]
79227fcfef Bump AutoFixture.Xunit2 from 4.14.0 to 4.15.0
Bumps [AutoFixture.Xunit2](https://github.com/AutoFixture/AutoFixture) from 4.14.0 to 4.15.0.
- [Release notes](https://github.com/AutoFixture/AutoFixture/releases)
- [Commits](https://github.com/AutoFixture/AutoFixture/compare/v4.14.0...v4.15.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-31 06:43:16 +00:00
dkanada
1327bd9f7d Merge pull request #4787 from jellyfin/dependabot/nuget/prometheus-net-4.1.1
Bump prometheus-net from 4.0.0 to 4.1.1
2020-12-31 15:36:22 +09:00
dkanada
e53379502c Merge pull request #4876 from jellyfin/dependabot/nuget/DotNet.Glob-3.1.2
Bump DotNet.Glob from 3.1.0 to 3.1.2
2020-12-31 15:33:51 +09:00
dkanada
72f1bcb742 Merge pull request #4839 from jellyfin/dependabot/nuget/AutoFixture-4.15.0
Bump AutoFixture from 4.14.0 to 4.15.0
2020-12-31 15:33:30 +09:00
crobibero
dbfbf9fb5b Fix bad merge 2020-12-30 19:45:31 -07:00
Cody Robibero
5c57569692 Merge branch 'master' into PluginDowngrade 2020-12-30 18:11:37 -07:00
Joshua M. Boniface
ccc1b8bf92 Merge pull request #4729 from BaronGreenback/19.0RC---Fix-networkInterfaceFix 2020-12-30 19:57:53 -05:00
Joshua M. Boniface
0de45d8724 Merge pull request #4884 from crobibero/json-nullable-guid-converter
Add JsonConverter for Nullable Guids
2020-12-30 19:56:04 -05:00
Joshua M. Boniface
7caba04c3c Merge pull request #4890 from nielsvanvelzen/4888-fix-search-hints
Fix search hint endpoint error
2020-12-30 19:55:57 -05:00
Joshua M. Boniface
eb084f9021 Merge pull request #4891 from Artiume/patch-1 2020-12-30 19:12:40 -05:00
BaronGreenback
4c291da45c Encoding fix for System Logs. (#4564) 2020-12-30 18:31:26 +01:00
artiume
f411353c8c Update Emby.Server.Implementations/Library/UserDataManager.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2020-12-30 09:30:02 -05:00
artiume
c7cb177260 Update Emby.Server.Implementations/Library/UserDataManager.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2020-12-30 09:12:36 -05:00
artiume
77b478c726 Update Emby.Server.Implementations/Library/UserDataManager.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2020-12-30 09:12:13 -05:00
artiume
cd979e6b62 Add default of 5 minutes 2020-12-30 08:52:11 -05:00
artiume
99adbf0497 Split resume function for Audiobooks 2020-12-30 08:48:33 -05:00
Niels van Velzen
2bb84c0675 Fix limit parameter error for search hints endpoint 2020-12-30 11:16:09 +01:00
dependabot[bot]
9460611fbb Bump prometheus-net from 4.0.0 to 4.1.1
Bumps [prometheus-net](https://github.com/prometheus-net/prometheus-net) from 4.0.0 to 4.1.1.
- [Release notes](https://github.com/prometheus-net/prometheus-net/releases)
- [Changelog](https://github.com/prometheus-net/prometheus-net/blob/master/History)
- [Commits](https://github.com/prometheus-net/prometheus-net/compare/v4.0.0...v4.1.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-30 09:34:28 +00:00
dependabot[bot]
633507eee1 Bump DotNet.Glob from 3.1.0 to 3.1.2
Bumps [DotNet.Glob](https://github.com/dazinator/DotNet.Glob) from 3.1.0 to 3.1.2.
- [Release notes](https://github.com/dazinator/DotNet.Glob/releases)
- [Changelog](https://github.com/dazinator/DotNet.Glob/blob/develop/ReleaseNotes.md)
- [Commits](https://github.com/dazinator/DotNet.Glob/compare/3.1.0...3.1.2)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-30 09:34:26 +00:00
Bond-009
054adf6379 Merge pull request #4853 from Ullmie02/servicestack-json 2020-12-30 10:33:32 +01:00
crobibero
cae38f3a7e Add JsonConverter for Nullable Guids 2020-12-29 16:08:16 -07:00
Shaunak Basu
8dfe89ea52 Translated using Weblate (Hindi)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hi/
2020-12-29 11:33:54 -05:00
Shaunak Basu
782c233389 Translated using Weblate (Bengali)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/bn/
2020-12-29 11:33:54 -05:00
David
3dec1fd6b2 Use UTF8 encoding and async correctly 2020-12-29 00:35:59 +01:00
David
8ac1ed16ca Use Theory instead of Fact for unit tests 2020-12-29 00:15:36 +01:00
David
9e0f425783 Make RootObject and SeasonRootObject internal again 2020-12-28 23:41:46 +01:00
Bond-009
4ed20c75f7 Merge pull request #4872 from BaronGreenback/NetworkManagerFix
Removed workaround code as web is now fixed.
2020-12-28 15:45:05 +01:00
Bond-009
f8681aa518 Merge pull request #4874 from MrTimscampi/enable-tmdb-omdb
Enable TMDB and OMDB by default
2020-12-28 15:44:45 +01:00
Bond_009
5ac36a8b58 Add tests for srt parser 2020-12-28 15:43:55 +01:00
Bond_009
07cc28946b Add tests for ass parser 2020-12-28 15:33:36 +01:00
Bond_009
d0382db37d Minor improvements to ass parser 2020-12-28 15:33:15 +01:00
Bond_009
bad516d473 Disable broken rule 2020-12-28 15:32:50 +01:00
Bond-009
3542985360 Merge pull request #4857 from crobibero/dep-2 2020-12-28 11:03:16 +01:00
MrTimscampi
48d8536d2f Enable TMDB and OMDB by default 2020-12-28 09:19:08 +01:00
dkanada
2913e2604c Merge pull request #4860 from nyanmisaka/3ch-transcode-hls
Avoid transcoding to 3ch audio for HLS streaming
2020-12-28 13:38:04 +09:00
Joshua M. Boniface
f2e05bd183 Merge pull request #4863 from nyanmisaka/boxes-backdrop
Fix boxes in library name backdrop
2020-12-27 22:29:35 -05:00
WWWesten
926c70f9f7 Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2020-12-27 13:17:19 -05:00
BaronGreenback
d96c8d7efd Remove todo 2020-12-27 15:57:27 +00:00
David
21fd124bca Code revie 2020-12-27 11:15:46 +01:00
David
f73bb92ce3 Remove manual N/A removal and write directly to stream 2020-12-26 20:00:54 +01:00
mahi160
108d2da0aa Translated using Weblate (Bengali)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/bn/
2020-12-25 15:12:49 -05:00
Mislav Milinković
41324300ec Translated using Weblate (Croatian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/hr/
2020-12-25 15:12:49 -05:00
David
e0499f8769 Remove attributes 2020-12-25 19:37:38 +01:00
Nyanmisaka
470f40442c not apply to progressive playback 2020-12-26 02:28:38 +08:00
David
dfd5a118ca Merge branch 'servicestack-json' of github.com:Ullmie02/jellyfin into servicestack-json 2020-12-25 19:22:30 +01:00
David
aacda01ca5 Add more tests 2020-12-25 19:21:58 +01:00
nyanmisaka
4839c2006b fix boxes in library name backdrop for CJK character 2020-12-26 01:24:25 +08:00
David
af62ab490c Update tests/Jellyfin.Common.Tests/Jellyfin.Common.Tests.csproj
Co-authored-by: Bond-009 <bond.009@outlook.com>
2020-12-25 15:21:57 +01:00
crobibero
e09dd5aa87 Add targeted tests 2020-12-25 14:43:10 +01:00
crobibero
fc212e5e5f Remove JsonOmdbNotAvailableConverterFactory 2020-12-25 14:43:10 +01:00
crobibero
6ddbe8420f Add tests for special Omdb json 2020-12-25 14:43:10 +01:00
Joshua M. Boniface
93b754c366 Merge pull request #4861 from crobibero/null-ref
Fix null reference when logging
2020-12-24 12:19:02 -05:00
crobibero
c8a95e0926 Fix null reference when logging 2020-12-24 10:05:06 -07:00
Joshua M. Boniface
7227d0d48b Merge pull request #4859 from Ullmie02/ci
Don't build unstable Nuget packages on tags
2020-12-24 09:54:15 -05:00
nyanmisaka
ae1187042a also avoid 7ch transcoding 2020-12-24 20:06:55 +08:00
nyanmisaka
bc6ec08322 avoid transcoding to 3ch audio for HLS streaming 2020-12-24 19:41:02 +08:00
David
043d045448 Put json serializer options in private field 2020-12-24 11:22:34 +01:00
David
e835dfb27d Use sync string instead of file 2020-12-24 10:31:51 +01:00
David
20993412f2 Add unstable nuget condition 2020-12-24 10:18:32 +01:00
David
a714008b59 Add missing FileStreams 2020-12-23 21:00:50 +01:00
crobibero
570b4dc0d0 Explicity reference Newtonsoft.Json 2020-12-23 12:34:07 -07:00
crobibero
79cf57ce16 Remove SQLitePCLRaw.provider.sqlite3.netstandard11 2020-12-23 12:33:50 -07:00
Claus Vium
afdc98746b Merge pull request #4856 from nyanmisaka/amf-profile
Fix some profiles for H264 AMF encoder
2020-12-23 19:30:45 +01:00
David
2a574914ea Use streams instead of strings 2020-12-23 19:24:58 +01:00
BaronGreenback
21f6d39432 copy constructor 2020-12-23 17:43:29 +00:00
nyanmisaka
b61541b6f7 fix some profiles for H264 AMF encoder 2020-12-24 01:32:23 +08:00
BaronGreenback
dae6798a18 Making it work 2020-12-23 17:25:41 +00:00
BaronGreenback
889e988167 Updated to latest unstable. 2020-12-23 17:25:34 +00:00
Bond-009
f42208673f Merge pull request #4855 from crobibero/cache-json-serializer
Initialize JsonSerializerOptions statically
2020-12-23 18:09:39 +01:00
BaronGreenback
62702fa3eb Changes as requested 2020-12-23 16:28:50 +00:00
crobibero
af8acf7128 Initialize JsonSerializerOptions statically 2020-12-23 09:01:24 -07:00
David
f38970cbd3 Remove xml docs 2020-12-23 15:03:14 +01:00
David
e2d338412f Fix OMDb "N/A" 2020-12-23 14:45:05 +01:00
David
276b219fbd Add missing options 2020-12-23 13:47:57 +01:00
David
62fcc84bf4 Remove nuget reference 2020-12-23 13:35:49 +01:00
David
b9dbdc7e54 Remove custom Json serializer from MediaBrowser.Controller 2020-12-23 13:25:49 +01:00
David
e9902e9d35 Remove custom Json serializer 2020-12-23 13:24:34 +01:00
David
196388d607 Remove custom Json serializer from Emby.Server.Implementations 2020-12-23 13:14:40 +01:00
David
bc0976ceac Remove custom Json serializer from Dlna 2020-12-23 13:14:40 +01:00
David
e09d3ba9ef Remove custom Json serializer from Providers 2020-12-23 13:14:39 +01:00
Bond-009
3a452463fc Merge pull request #4849 from crobibero/clean-deps
Remove unused dependencies
2020-12-23 11:51:41 +01:00
BaronGreenback
d98f42a6aa Update PackageInfo.cs
uncommented attribute.
2020-12-23 10:36:34 +00:00
BaronGreenback
e8df9551ef Update PluginManager.cs
Changed a to i
2020-12-23 10:31:11 +00:00
BaronGreenback
9a97933499 Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2020-12-23 10:29:21 +00:00
BaronGreenback
8e04e6c837 Update Emby.Server.Implementations/Updates/InstallationManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2020-12-23 10:27:27 +00:00
BaronGreenback
63c290f878 Update Emby.Server.Implementations/Updates/InstallationManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2020-12-23 10:26:20 +00:00
BaronGreenback
4ba4eefeeb Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2020-12-23 10:26:02 +00:00
BaronGreenback
66d98cb8e4 Update Emby.Server.Implementations/ApplicationHost.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2020-12-23 10:24:30 +00:00
Claus Vium
e36881f4fd Merge pull request #4852 from ryanpetris/fix-schedulesdirect-refresh
SchedulesDirect no longer refreshes channels properly
2020-12-23 11:08:18 +01:00
Ryan Petris
c0c0eaec05 new List(int) does not pre-allocate indicies like Arrays, it merely sets the initial capacity. 2020-12-22 20:37:07 -07:00
Joshua M. Boniface
bfdd4727b5 Merge pull request #4850 from BaronGreenback/NetworkApiFix
Null reference fix
2020-12-22 22:21:59 -05:00
Joshua M. Boniface
ca535b2fbe Merge pull request #4847 from crobibero/display-prefs-migration-x251256
Fix another key collision in MigrateDisplayPreferencesDatabase
2020-12-22 22:21:16 -05:00
Joshua M. Boniface
a77788906c Merge pull request #4821 from BaronGreenback/disableDlna 2020-12-22 22:20:44 -05:00
BaronGreenback
e113a50597 Possible null reference fix. 2020-12-22 16:14:06 +00:00
crobibero
1dac2226c4 Remove unused deps 2020-12-22 08:57:51 -07:00
BaronGreenback
bc9462981e changed to constants 2020-12-22 15:33:25 +00:00
BaronGreenback
bf24929d27 Changed to 503. 2020-12-22 15:23:55 +00:00
BaronGreenback
1f2ecd0775 Fix for DI. 2020-12-22 15:01:26 +00:00
BaronGreenback
621e6d28cd Fallback to default guid 2020-12-22 14:07:01 +00:00
crobibero
3a6501abe0 Fix another key collision in MigrateDisplayPreferencesDatabase 2020-12-21 17:28:06 -07:00
Claus Vium
c8a89b0fe3 Merge pull request #4842 from crobibero/date-time-formatter
Add JsonDateTimeConverter
2020-12-21 23:11:54 +01:00
Claus Vium
53119ed2a1 Merge pull request #4824 from crobibero/livestream-post-body
Add request parameters to OpenLiveStreamDto
2020-12-21 23:10:46 +01:00
crobibero
d3b6a24f78 Add JsonDateTimeConverter 2020-12-21 08:41:13 -07:00
crobibero
242b5a45ab Add JsonDateTimeConverter 2020-12-21 08:12:32 -07:00
dependabot[bot]
fd488cd3ff Bump AutoFixture from 4.14.0 to 4.15.0
Bumps [AutoFixture](https://github.com/AutoFixture/AutoFixture) from 4.14.0 to 4.15.0.
- [Release notes](https://github.com/AutoFixture/AutoFixture/releases)
- [Commits](https://github.com/AutoFixture/AutoFixture/compare/v4.14.0...v4.15.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-21 12:00:39 +00:00
BaronGreenback
3633996a53 New json converter implemented. 2020-12-21 09:01:59 +00:00
Predrag Ljubenović
e778fda843 Translated using Weblate (Serbian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sr/
2020-12-21 02:25:41 -05:00
Page Asgardius
3df97d5441 Translated using Weblate (Spanish (Latin America))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/es_419/
2020-12-21 02:25:41 -05:00
Claus Vium
98da2c67a5 Merge pull request #4836 from crobibero/dashboard-theme
Return dashboardTheme when requesting DisplayPreferences
2020-12-21 00:14:30 +01:00
Claus Vium
c90c382e2f Merge pull request #4833 from Ullmie02/similar-fix
Fix similar items endpoint for movies and TV
2020-12-21 00:14:07 +01:00
David
13de663201 Fix similar endpoint for TV 2020-12-20 22:21:11 +01:00
crobibero
a682fc4516 Return dashboardTheme when requesting DisplayPreferences 2020-12-20 12:59:44 -07:00
BaronGreenback
7a66761981 write json files indented. 2020-12-20 19:30:48 +00:00
BaronGreenback
53e280b80f json name override. 2020-12-20 16:29:28 +00:00
David
eba403158e Re-add IsMovie 2020-12-20 17:00:27 +01:00
David
f4d1e33010 Fix similar items endpoint for movies and TV 2020-12-20 15:37:44 +01:00
Claus Vium
e9db47cd20 Merge pull request #4816 from nyanmisaka/profiles
Fix some video profiles for Android client
2020-12-20 13:57:25 +01:00
Claus Vium
6274cf8fcc Merge pull request #4803 from ryanpetris/fix-getuser
Fix Live TV Recording Scheduling
2020-12-20 13:54:32 +01:00
WWWesten
cc5d0af4c1 Translated using Weblate (Russian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ru/
2020-12-20 03:50:47 -05:00
WWWesten
1d50c2ad63 Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2020-12-20 03:50:47 -05:00
WWWesten
b8ef0823fa Translated using Weblate (Kazakh)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2020-12-19 19:14:28 -05:00
Bond-009
2e8e96874f Merge pull request #4828 from joshuaboniface/linux-alt-arch 2020-12-19 23:06:34 +01:00
Joshua M. Boniface
704d627f3a Add Azure pipeline configs for new arches 2020-12-19 15:57:08 -05:00
Joshua M. Boniface
841df64e9f Add static Linux builds for arm and musl 2020-12-19 15:56:08 -05:00
crobibero
4539164d38 Add request parameters to OpenLiveStreamDto 2020-12-19 10:55:07 -07:00
BaronGreenback
9470712118 Added xml docs 2020-12-19 17:38:46 +00:00
BaronGreenback
3d0b9f9ea1 Did the other API, 2020-12-19 09:34:04 +00:00
BaronGreenback
c98144c60d Updated docs. 2020-12-18 23:59:21 +00:00
BaronGreenback
46c7499e2b reverted change 2020-12-18 23:55:23 +00:00
BaronGreenback
bae8f0c4ec corrected. 2020-12-18 23:52:19 +00:00
BaronGreenback
f06d52c475 Disable API if dlna is disabled. 2020-12-18 23:29:21 +00:00
Greenback
d34428f2f7 removed exception 2020-12-18 22:17:50 +00:00
BaronGreenback
9bf970e5c6 Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 21:59:14 +00:00
BaronGreenback
a293024efd Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 21:56:54 +00:00
BaronGreenback
5c3ebb63e6 Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 21:56:35 +00:00
BaronGreenback
09f219bbce Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 21:56:15 +00:00
BaronGreenback
3708ca8dbb Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 21:56:03 +00:00
BaronGreenback
4757824a82 Update Emby.Server.Implementations/Updates/InstallationManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 21:55:50 +00:00
Greenback
4cc19be173 removed compiler directives. 2020-12-18 21:14:38 +00:00
Greenback
cb793af30e Renamed guid to id 2020-12-18 21:11:29 +00:00
BaronGreenback
46a64deb66 Update MediaBrowser.Model/Updates/PackageInfo.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 21:07:24 +00:00
Greenback
5c4fdaa253 MaxAbi property removed. 2020-12-18 21:05:27 +00:00
Greenback
5d748c0e9f Renamed to ImagePath 2020-12-18 20:52:44 +00:00
Greenback
ce19f2be55 Renamed Guid property to Id 2020-12-18 20:37:35 +00:00
Predrag Ljubenović
07ee98b65f Translated using Weblate (Serbian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sr/
2020-12-18 15:04:11 -05:00
Nyanmisaka
ac03ef57c9 allow empty video encoder profile
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-19 01:47:31 +08:00
Greenback
486148dd6b Removed maxAbi 2020-12-18 09:44:57 +00:00
Greenback
5a3efc5266 Changes as required. 2020-12-18 09:04:40 +00:00
BaronGreenback
4153551dfc Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 08:26:11 +00:00
BaronGreenback
0dcf6b09c1 Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 08:25:39 +00:00
BaronGreenback
8ce765c4d1 Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 08:25:04 +00:00
BaronGreenback
591ad3b04b Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 08:24:26 +00:00
BaronGreenback
30645e7265 Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 08:24:12 +00:00
BaronGreenback
2d094bedf5 Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 08:24:00 +00:00
BaronGreenback
3a8d395c9c Update Emby.Server.Implementations/Plugins/PluginManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 08:23:46 +00:00
BaronGreenback
5d5b198525 Update Jellyfin.Api/Controllers/PluginsController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 08:23:28 +00:00
BaronGreenback
e445c2932a Update Jellyfin.Api/Controllers/PluginsController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-18 08:23:15 +00:00
Joshua M. Boniface
668e168c47 Merge pull request #4819 from crobibero/download-name
Set filename when downloading file
2020-12-18 02:17:24 -05:00
SecularSteve
be3129e012 Translated using Weblate (English (United Kingdom))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/en_GB/
2020-12-17 16:54:00 -05:00
crobibero
56ae63433f Set filename when downloading file 2020-12-17 13:05:44 -07:00
Miko Dela Cruz
e515b696d1 Translated using Weblate (Japanese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ja/
2020-12-17 11:49:03 -05:00
nlspln
9bf51aeb6b Translated using Weblate (Dutch)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/nl/
2020-12-17 11:49:03 -05:00
nyanmisaka
cf8aa37f5b Fix some video profile for Android client
* Fix constrained high profile for some encoders
* Extended profile is not supported by any known h264 encoders
* Replace HEVC 10-bit profiles with main profile
2020-12-17 23:33:44 +08:00
BaronGreenback
0ed3c2def2 Update MediaBrowser.sln 2020-12-17 13:50:24 +00:00
Greenback
a4a40407a0 Change PluginStatus states. 2020-12-17 13:44:53 +00:00
BaronGreenback
212c76102d Update PluginManifest.cs 2020-12-17 13:37:13 +00:00
Greenback
d9aaba36ec Copy previous plugin settings if they don't exist. 2020-12-16 23:19:09 +00:00
Greenback
1ed25ebd9a Corrections as recommended. 2020-12-16 22:36:25 +00:00
Greenback
ebbb57efc3 Change json default settings. 2020-12-16 21:40:52 +00:00
Claus Vium
21d2e9ff0c Merge pull request #4771 from crobibero/typed-get-preference
Use typed UserManager GetPreference
2020-12-16 22:15:56 +01:00
Greenback
6d3e1d6b57 Small Optimization 2020-12-16 19:37:23 +00:00
Claus Vium
1f2488d7d9 Merge pull request #4807 from nyanmisaka/ps4-dlna
Correct DLNA audio codecs for PS3 and PS4
2020-12-16 15:52:16 +01:00
nyanmisaka
7c3f2e7c59 Correct DLNA audio codecs for PS3 and PS4
* https://manuals.playstation.net/document/en/ps3/current/video/filetypes.html
* https://manuals.playstation.net/document/en/ps4/music/mp_format_m.html
2020-12-16 21:20:29 +08:00
Ryan Petris
875562e580 This is only used in one place and therefore will always be HttpRequest. 2020-12-15 22:17:04 -07:00
Ryan Petris
1b3fcab6a4 If requestContext is HttpRequest, get the context from it properly. 2020-12-15 22:02:08 -07:00
Greenback
5323887540 Replaced TryGetPlugin with GetPlugin 2020-12-15 20:27:42 +00:00
Tommaso Stocchi
7c7f2316fa Added comments 2020-12-15 21:06:47 +01:00
Tommaso Stocchi
c6eefaac09 Added function to split the authorization header parts 2020-12-15 21:01:42 +01:00
Greenback
0337e39bae Updated JsonDefaults 2020-12-15 19:39:41 +00:00
Greenback
00ff3b9096 remove attribute 2020-12-15 19:35:30 +00:00
BaronGreenback
aecd35d306 Update Jellyfin.Api/Controllers/PluginsController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-15 19:31:36 +00:00
BaronGreenback
24ab152e9d Update Jellyfin.Api/Controllers/PluginsController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-15 19:30:23 +00:00
Bond-009
8eeed82523 Merge pull request #4792 from cvium/fix_missing_seasons
Add missing seasons during AfterMetadataRefresh
2020-12-15 20:30:13 +01:00
BaronGreenback
e4993ae574 Update Jellyfin.Api/Controllers/PluginsController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-15 19:24:52 +00:00
BaronGreenback
2afa963fc1 Update Jellyfin.Api/Controllers/PluginsController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-15 19:24:39 +00:00
BaronGreenback
3f1ad7f963 Update Jellyfin.Api/Controllers/PluginsController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-15 19:22:54 +00:00
Greenback
c197dca759 Changed PluginId to guid so its the same type as plugin.id 2020-12-15 18:27:31 +00:00
Greenback
eb2439f23b Changes as recommended. 2020-12-15 16:37:11 +00:00
Bond-009
e84622b4ab Merge pull request #4794 from cvium/fix_image_upload
Convert from base64 when saving item images
2020-12-15 12:24:05 +01:00
Bond-009
906ee4f962 Merge pull request #4781 from crobibero/map-xmltv
Use request body for mapping xml channels
2020-12-15 12:22:39 +01:00
Greenback
c761cbff0e more changes. 2020-12-15 10:20:28 +00:00
Greenback
208d545cfe Changed as suggested. 2020-12-15 10:05:04 +00:00
Greenback
dddcfa6dbb Suggested changes. 2020-12-15 09:30:19 +00:00
BaronGreenback
41466c430d Update Jellyfin.Api/Controllers/PluginsController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-15 09:17:06 +00:00
cvium
5b4eef741a Convert from base64 when saving item images 2020-12-15 09:27:33 +01:00
Claus Vium
bc8f1bdcac Merge pull request #4789 from crobibero/provider-search
Fix get provider id extension
2020-12-15 09:10:12 +01:00
BaronGreenback
33385c1b8c Update Jellyfin.Api/Controllers/PluginsController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-15 07:55:14 +00:00
BaronGreenback
1c6529c9eb Update Jellyfin.Api/Controllers/PluginsController.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-15 07:54:49 +00:00
cvium
9f6000d845 Add missing seasons during AfterMetadataRefresh 2020-12-15 08:18:36 +01:00
BaronGreenback
3cff64ee32 Delete disabled.png
Should have a capital letter
2020-12-15 01:32:43 +00:00
BaronGreenback
2bb12793b2 Add files via upload 2020-12-15 01:31:56 +00:00
Greenback
cddc87e2af Fixed gitmerge. 2020-12-15 01:23:52 +00:00
BaronGreenback
67c480ad53 Merge branch 'master' into PluginDowngrade 2020-12-15 01:15:54 +00:00
Greenback
0d4aa6bad6 Enable local file repositories 2020-12-15 01:13:11 +00:00
Greenback
356d92cd71 Fixed repository listing 2020-12-15 00:49:14 +00:00
Greenback
fbb20ebef6 Plugin setting migration to folders. 2020-12-15 00:42:59 +00:00
Greenback
494ace7984 Mark plugin failure on DI Loop. 2020-12-14 23:39:47 +00:00
Greenback
d2d45295fc Rollback change. 2020-12-14 23:13:29 +00:00
Greenback
a246a77ada Delete plugin working. 2020-12-14 23:08:04 +00:00
Greenback
7986465cf7 Initial upload 2020-12-14 16:14:39 +00:00
crobibero
e051090904 Use proper array setter 2020-12-14 09:03:36 -07:00
crobibero
a515ecbada Use range operator to get subarray 2020-12-14 07:53:56 -07:00
crobibero
ca5f87c7eb Fix get provider id extension 2020-12-14 07:20:16 -07:00
Tommaso Stocchi
6e2cfc6569 Url decode for auth value 2020-12-14 14:05:53 +01:00
Tommaso Stocchi
b611a108f8 -fix split on comma and double quotes 2020-12-14 13:15:21 +01:00
Tommaso Stocchi
305e5ebaf4 Allow commas in auth values when wappred in a double quote 2020-12-14 13:14:18 +01:00
Tommaso Stocchi
13bc57ecc3 No need to double check param length 2020-12-14 13:08:07 +01:00
Tommaso Stocchi
064a9cedbd No htlml encoding on server side 2020-12-14 13:07:39 +01:00
Joshua M. Boniface
4f6a585424 Merge pull request #4716 from OancaAndrei/syncplay-new-auth-policies 2020-12-13 16:58:28 -05:00
Joshua M. Boniface
e7ae712437 Merge pull request #4773 from Artiume/patch-10
Remove opf extension for book types
2020-12-13 16:57:50 -05:00
Joshua M. Boniface
7b5319bb07 Merge pull request #4750 from crobibero/skia
Fix blueberry
2020-12-13 16:56:23 -05:00
Joshua M. Boniface
adf3ee9eeb Merge pull request #4718 from jellyfin/dependabot/nuget/Microsoft.NET.Test.Sdk-16.8.3
Bump Microsoft.NET.Test.Sdk from 16.8.0 to 16.8.3
2020-12-13 16:55:47 -05:00
Joshua M. Boniface
d0ccea934f Merge pull request #4720 from MrTimscampi/activity-log-levels
Add overloaded constructor for ActivityLog levels
2020-12-13 16:55:34 -05:00
A Foley
a83a4f55d9 Translated using Weblate (French (Canada))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr_CA/
2020-12-13 16:46:42 -05:00
Claus Vium
a3a7467f49 Merge pull request #4713 from crobibero/robots 2020-12-13 20:12:07 +01:00
crobibero
c6b381db10 Use request body for mapping xml channels 2020-12-13 08:32:33 -07:00
crobibero
ee23d06154 Use a more descriptive function name 2020-12-13 08:15:26 -07:00
Claus Vium
8c00fbea9c Merge pull request #4675 from BaronGreenback/ProxyDNS 2020-12-13 14:22:27 +01:00
Claus Vium
4ecb30ef10 Merge pull request #4769 from crobibero/typo
Check correct fetcher list for provider name
2020-12-13 14:13:01 +01:00
Claus Vium
c5a5f77b9e Merge pull request #4726 from BaronGreenback/19.0RC--Fix-CertificateLoadError
Fix - Access Denied on using certificates in windows as user.
2020-12-13 13:35:02 +01:00
Claus Vium
13bb5e1ead Merge pull request #4761 from crobibero/playlist 2020-12-13 13:34:04 +01:00
Claus Vium
f8ef38c0ea Merge pull request #4758 from nyanmisaka/fix-landingScreen-options 2020-12-13 13:29:11 +01:00
Claus Vium
f9a78625b7 Merge pull request #4767 from nyanmisaka/fix-ssl-save 2020-12-13 13:25:21 +01:00
Bond-009
381341c83b Merge pull request #4774 from nyanmisaka/finetune-tonemap
Fine tune some tone mapping params
2020-12-13 11:57:32 +01:00
Bill Thornton
42beaddb45 Merge pull request #4731 from Sylk/readme-modification
Modified ReadMe with updated command line command
2020-12-12 23:34:45 -05:00
Bond-009
cb36feaa0f Merge pull request #4775 from barronpm/nullable-jellyfinserverimplementations
Enable Nullable for Jellyfin.Server.Implementations
2020-12-12 19:22:08 +01:00
crobibero
8f4a4a3cc5 Convert values without throwing exception 2020-12-12 10:36:17 -07:00
Patrick Barron
d9263dacd5 Enable nullable for Jellyfin.Server.Implementations 2020-12-12 11:20:48 -05:00
nyanmisaka
7be3276dff Fine tune some tone mapping params
*Set recommand algorithm to Hable
*Set recommand tone mapping peak to 100
2020-12-12 18:26:52 +08:00
artiume
297cb27ab6 remove opf extension for book types 2020-12-11 21:13:28 -05:00
crobibero
f5cce9e630 Use typed UserManager GetPreference 2020-12-11 15:04:14 -07:00
crobibero
b670937c3d Use typed UserManager GetPreference 2020-12-11 15:00:43 -07:00
Bond-009
b3caa51173 Merge pull request #4699 from crobibero/display_prefs_index
Fix CustomItemDisplayPreferences unique key collision in the migration
2020-12-11 22:29:07 +01:00
crobibero
7d24460fac Fix copy-paste error 2020-12-11 14:03:10 -07:00
Bond-009
04ba59ab40 Merge pull request #4766 from barronpm/usermanager-async
Convert DeleteUser to async
2020-12-11 21:29:20 +01:00
Nyanmisaka
d701b67de1 Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2020-12-12 02:36:31 +08:00
nyanmisaka
41218c5613 fix ssl certificate cannot be saved 2020-12-11 23:52:09 +08:00
Patrick Barron
76f61eb0d6 Convert DeleteUser to async 2020-12-11 10:15:43 -05:00
crobibero
ac2593e370 Set convolveAlpha to true 2020-12-11 08:06:04 -07:00
crobibero
69d581033b Use a more descriptive middleware name 2020-12-11 07:17:06 -07:00
Claus Vium
a57e465de9 Merge pull request #4710 from OancaAndrei/syncplay-fix-session-restore
Restore sessions in SyncPlay groups upon reconnection
2020-12-11 09:57:14 +01:00
Claus Vium
e6ea5a776d Merge pull request #4724 from BaronGreenback/17.0RC----DLNA_PlayTo_Fix 2020-12-11 09:56:39 +01:00
Claus Vium
c1bb29532f Merge pull request #4756 from crobibero/api-key-inverted-condition
Fix inverted condition when authenticating with an ApiKey
2020-12-11 09:54:15 +01:00
Claus Vium
f322866127 Merge pull request #4737 from crobibero/missing-ensure-success 2020-12-11 09:53:43 +01:00
Claus Vium
0cddfbcff5 Merge pull request #4757 from cvium/semi_revert_defer_image_loading 2020-12-11 08:11:38 +01:00
Claus Vium
b56feac841 Merge pull request #4762 from crobibero/api-file-return
Fix openapi file schema
2020-12-11 08:11:25 +01:00
Nyanmisaka
a79c210c76 fix typo
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2020-12-11 11:35:00 +08:00
crobibero
34029f860c Fix openapi file schema 2020-12-10 19:05:49 -07:00
kaboom83
abcbb9f156 Translated using Weblate (Slovenian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/sl/
2020-12-10 16:47:20 -05:00
Bond-009
933e7fa159 Merge pull request #4749 from crobibero/guid-standard 2020-12-10 21:53:32 +01:00
crobibero
297b7ea6fa Fix empty body for PlaybackInfo 2020-12-10 11:36:58 -07:00
crobibero
0d2106a272 Allow playlist to be created by query string 2020-12-10 11:36:31 -07:00
cvium
15a3d8d626 Forgot to revert some other changes, dunno if needed 2020-12-10 18:02:12 +01:00
crobibero
a9aafbaf5a Don't throw exception unless needed 2020-12-10 08:25:05 -07:00
crobibero
b66abf0556 Add support back for /emby and /mediabrowser routes 2020-12-10 08:17:02 -07:00
nyanmisaka
0332b72502 fix landing screen options 2020-12-10 22:41:00 +08:00
cvium
3f6e6c4839 Simplify 2020-12-10 14:47:47 +01:00
dependabot[bot]
3e062bc0cd Bump Microsoft.NET.Test.Sdk from 16.8.0 to 16.8.3
Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 16.8.0 to 16.8.3.
- [Release notes](https://github.com/microsoft/vstest/releases)
- [Commits](https://github.com/microsoft/vstest/compare/v16.8.0...v16.8.3)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-10 12:57:44 +00:00
Claus Vium
a56ac65449 Merge pull request #4753 from crobibero/5.0.1
Update to dotnet 5.0.1
2020-12-10 13:56:54 +01:00
Claus Vium
7455de1f85 Merge pull request #4701 from crobibero/plugin-version 2020-12-10 13:53:24 +01:00
cvium
dd238937f4 Remember to await the async task 2020-12-10 13:44:58 +01:00
cvium
3c5bbeb80c Remove ImageFetcherPostScanTask 2020-12-10 13:38:33 +01:00
crobibero
2478c8fa64 Fix inverted condition when authenticating with an ApiKey 2020-12-09 23:15:33 -07:00
crobibero
681a0f3e75 Add nullable guid test 2020-12-09 19:57:25 -07:00
crobibero
aa5fa7cb8f Update to dotnet 5.0.1 2020-12-09 07:36:31 -07:00
Bond-009
9e601ba731 Merge pull request #4751 from nyanmisaka/mpegts-batchsize 2020-12-09 14:37:44 +01:00
Nyanmisaka
060f6c194f Apply suggestions from code review
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2020-12-09 16:37:15 +08:00
Claus Vium
e85884ddb9 Merge pull request #4743 from crobibero/metadata-options
Actually use library options when filtering metadata providers
2020-12-09 08:34:01 +01:00
Claus Vium
31e8273795 Merge pull request #4741 from jellyfin/tests8
Add tests for HdHomerunHost.GetLineup
2020-12-09 08:16:40 +01:00
nyanmisaka
ebd9ab3ccc use larger batch size on mpegts to avoid corrupted thumbnails 2020-12-09 14:39:41 +08:00
crobibero
c955f19634 Serialize GUID without dashes 2020-12-08 19:33:26 -07:00
crobibero
75aa3718dc Actually use library options when filtering metadata providers 2020-12-08 17:47:13 -07:00
Bond_009
c0fde3496c Add tests for HdHomerunHost.TryGetTunerHostInfo 2020-12-09 01:24:30 +01:00
Bond_009
514d95e5aa Add tests for HdHomerunHost.GetLineup 2020-12-09 01:08:41 +01:00
Bond-009
87e13b858a Merge pull request #4733 from crobibero/omdb-null
Fix potential null reference in OMDB
2020-12-09 00:28:32 +01:00
Claus Vium
e6650651b3 Merge pull request #4738 from jellyfin/tests8
Add tests for HdHomerunHost.GetModelInfo
2020-12-08 20:20:33 +01:00
Bond_009
7027561e19 Add tests for HdHomerunHost.GetModelInfo 2020-12-08 18:53:38 +01:00
Claus Vium
b83bc0a589 Merge pull request #4736 from nyanmisaka/fix-custom-order
Fix custom library order
2020-12-08 18:22:43 +01:00
Claus Vium
b6ecaccf92 Merge pull request #4730 from crobibero/base-item-dto-guid-nullable
Don't serialize empty GUID to null
2020-12-08 18:22:18 +01:00
Anthony Lavado
94d805d03d Merge pull request #4735 from crobibero/json-recursion
Fix JsonConverter recursion
2020-12-08 12:08:24 -05:00
crobibero
e621244405 Add missing EnsureSuccessStatusCode 2020-12-08 08:28:19 -07:00
nyanmisaka
020fe37dfe fix custom library order 2020-12-08 22:33:52 +08:00
crobibero
26e5aacb90 Fix JsonConverter recursion 2020-12-08 07:18:25 -07:00
Claus Vium
80ff564143 Merge pull request #4722 from crobibero/forbid
Fix API forbidden response
2020-12-08 10:11:14 +01:00
Claus Vium
0aad17554c Merge pull request #4715 from crobibero/hdhr-json-bool
Add number to bool json converter
2020-12-08 08:58:01 +01:00
Claus Vium
0d5f651ae9 Merge pull request #4706 from cvium/fix_aspectratio_again
Only apply series image aspect ratio if episode/season has no primary image
2020-12-08 08:46:05 +01:00
Claus Vium
885d42cb65 Merge pull request #4678 from BaronGreenback/network_routing_fix_17.0rc
Change logging level and message in NetworkManager
2020-12-08 08:37:51 +01:00
Claus Vium
4c199ac9a5 Merge pull request #4711 from barronpm/api-fixes
Add required attributes to parameters
2020-12-08 08:36:32 +01:00
crobibero
d12fa01d7a Fix potential null reference 2020-12-07 19:10:35 -07:00
Matthew Bauer
2c947630a7 Modified ReadMe with updated command line command
Also removed old documentation about placing the built dist into the jellyfin-server directory
2020-12-07 16:04:20 -07:00
BaronGreenback
af37cc2339 Merge branch 'master' into ProxyDNS 2020-12-07 22:54:51 +00:00
BaronGreenback
acc45b7307 Update Jellyfin.Networking/Configuration/NetworkConfiguration.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-07 22:29:19 +00:00
crobibero
8517b28eba Make BaseItemDto Guids nullable 2020-12-07 15:23:40 -07:00
crobibero
6722fcec36 Revert #4568 2020-12-07 15:23:25 -07:00
Greenback
e34adc12d9 reverted change. 2020-12-07 22:16:25 +00:00
BaronGreenback
57cb3a67bc Update ApplicationHost.cs
Removed previous change, use for testing.
2020-12-07 22:12:43 +00:00
Greenback
d69f2d7d7f DNLA over HTTP only 2020-12-07 22:06:28 +00:00
crobibero
6e98378447 Simplify converter 2020-12-07 14:58:27 -07:00
BaronGreenback
b485520537 Update ApplicationHost.cs
Added X509KeyStorageFlags.UserKeySet
2020-12-07 20:25:41 +00:00
Greenback
8999871b68 cleaned change 2020-12-07 18:31:45 +00:00
Greenback
d14d8145d5 Fixed createPlayList 2020-12-07 18:27:22 +00:00
crobibero
5150598c6d Fix API forbidden response 2020-12-07 08:55:42 -07:00
Ionut Andrei Oanca
fbeb0228a2 Minor code style related change 2020-12-07 16:15:56 +01:00
MrTimscampi
f97182c768 Add log level parameter to ActivityLog constructor 2020-12-07 15:28:29 +01:00
Ionut Andrei Oanca
499f3ee950 Update authorization policies for SyncPlay 2020-12-07 10:33:15 +01:00
crobibero
66a1880a58 Add number to bool json converter 2020-12-06 20:26:21 -07:00
crobibero
d65e8d7044 Redirect robots.txt if hosting web content 2020-12-06 19:40:43 -07:00
Patrick Barron
391870ebae Add required attributes to parameters 2020-12-06 20:05:55 -05:00
Ionut Andrei Oanca
0825ce687d Add SessionControllerConnected event 2020-12-07 01:04:48 +01:00
cvium
a0fbf0f539 Only apply series image aspect ratio if episode/season has no primary image 2020-12-06 22:49:00 +01:00
crobibero
8df2213d6b Don't return plugin versions that target newer Jellyfin version 2020-12-06 10:13:08 -07:00
crobibero
eefe87f537 Remove CustomItemDisplayPreferences unique key collision 2020-12-06 09:11:00 -07:00
Artūrs Jānis Ņikitins
a7b461adb4 Translated using Weblate (Latvian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/lv/
2020-12-06 09:38:27 -05:00
Artūrs Jānis Ņikitins
b9107e847a Translated using Weblate (Latvian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/lv/
2020-12-05 19:15:09 -05:00
Saman Dadmand
34cd89058a Translated using Weblate (Persian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fa/
2020-12-05 19:15:08 -05:00
rwctrjotovxqqqyqod
4d56afa712 Translated using Weblate (French (Canada))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/fr_CA/
2020-12-05 13:58:38 -05:00
BaronGreenback
abacae4520 Update NetworkManager.cs
Changed logging type.
2020-12-05 16:28:14 +00:00
BaronGreenback
1a44d34f50 Update ApiServiceCollectionExtensions.cs 2020-12-05 16:00:34 +00:00
Bond-009
804dd00425 Merge pull request #4671 from cvium/allow_proxy
Clear KnownNetworks and KnownProxies if none are configured explicitly
2020-12-05 16:22:11 +01:00
Bond-009
26919eed26 Merge pull request #4672 from cvium/fix_mergeversions_which_was_unrelated_to_my_bughunt
Fix MergeVersions endpoint
2020-12-05 15:06:41 +01:00
cvium
ba7a1c8b7b Fix MergeVersions endpoint 2020-12-05 13:54:19 +01:00
cvium
41cd4d0a39 Clear KnownNetworks and KnownProxies if none are configured explicitly 2020-12-05 10:18:56 +01:00
Joshua M. Boniface
f2c2beca0f Merge pull request #4667 from joshuaboniface/fix-nuget-ci
Remove obsolete erroring command
2020-12-05 01:34:49 -05:00
Joshua M. Boniface
8976b22ac4 Merge pull request #4669 from MrTimscampi/fix-npm-public
Fix NPM command in CI
2020-12-05 01:31:02 -05:00
MrTimscampi
048de2f3b7 Fix NPM command in CI 2020-12-05 07:25:41 +01:00
Joshua M. Boniface
599f36f57f Remove obsolete erroring command
This is not required for stable pushes.
2020-12-05 01:21:52 -05:00
Joshua M. Boniface
e3a1991fe9 Merge pull request #4662 from joshuaboniface/fix-bump-version
Fix bad do in bump_version
2020-12-05 01:12:18 -05:00
Joshua M. Boniface
1af0139ae7 Merge pull request #4665 from anthonylavado/ci-npm-fix
Fix the NPM publish scope to public
2020-12-05 01:08:14 -05:00
Anthony Lavado
c9832bb98a Fix the NPM publish scope to public 2020-12-04 22:36:11 -05:00
Anthony Lavado
8b55ff2e6e Merge pull request #4664 from joshuaboniface/codeown-ci
Make me codeowner of the .ci dir
2020-12-04 22:07:40 -05:00
Joshua M. Boniface
d838a27e6d Make me codeowner of the .ci dir
I need to know when stuff changes.
2020-12-04 22:05:37 -05:00
Joshua M. Boniface
5f2cd11199 Bump version to 10.8.0 for next release 2020-12-04 21:56:24 -05:00
Joshua M. Boniface
495c0ba1f1 Fix bad do in bump_version 2020-12-04 21:53:48 -05:00
AJ Jordan
bab389114b Use a service unit, not a scope unit, to restart
Reportedly `systemd-run --scope` still got killed by the service
manager; see #4615. The suspected cause is that `scope` units are run by
the `systemd-run` process itself and inherit the caller's execution
environment (see systemd-run(1)). To fix this, we use a systemd
`service` unit instead, which is run and managed by PID 1 - hopefully
this will isolate us sufficiently so that we don't get terminated along
with `jellyfin.service`.
2020-12-04 16:33:24 -08:00
AJ Jordan
d251c701b9 Use systemd-run(1) in restart.sh
systemd-run(1) runs `systemctl restart` in an isolated systemd unit
that is not subject to process termination as jellyfin.service is shut
down. We adjust the sudoers configuration for this new usage, removing
the old config, since restart.sh is the only user of the sudoers
policy.

Additionally we change `systemctl start` to `systemctl restart` since
there was a race condition where jellyfin.service was not fully
stopped by the time this ran, so `systemctl start` became a noop.
`systemctl restart` on the other hand works whether jellyfin.service is
stopped or not.

The at(1) hack (and the usage of `start` instead of `restart`) is left
in for other init systems since I cannot test on those systems, and
because I don't know of any systemd-run(1) equivalent (although it may
be a non-issue since alternate init systems do not keep track of daemon
children nearly as aggressively as systemd does).
2020-12-04 16:18:26 -08:00
AJ Jordan
b528816b2a Add sudo to package dependencies
It's used in the restart.sh script.

For Debian, this is a Recommends because virtually everyone will need
this (default APT policy is to install recommended packages so this
works ok), but technically you can configure the server to run as root
and then you wouldn't need it.

For Fedora... frankly I got confused by their Weak Dependencies etc. so
I just made it a hard dependency.
2020-11-29 04:15:11 -05:00
AJ Jordan
2911dfc37d Don't restart with sudo(8) if it's not available
Some environments, like system containers, have no reason to have
sudo(8) installed. In these environments restart.sh will silently fail
because /usr/bin/sudo does not exist to execute, so test that sudo
exists and don't try to use it otherwise.

Note also that hardcoding sudo's path is wrong: it can be installed in
other places. On FreeBSD, for example, it is /usr/local/bin/sudo when
installed from ports.
2020-11-29 04:04:38 -05:00
AJ Jordan
ce82932c9a Remove useless which(1) calls in restart.sh
at(1) runs commandlines with /bin/sh anyway, which resolves paths. No
need to do it ourselves.
2020-11-29 04:04:22 -05:00
AJ Jordan
a4e1732e35 Fix restart.sh to look at what's actually booted
The old code was wrong because e.g. systemd can be *installed* on the
system, but not actually used as PID1. In that case we would pick
`systemctl`, but it wouldn't actually work because PID1 was some other
init system.
2020-11-29 03:43:03 -05:00
Cromefire_
7aef0fce44 Use consistent style 2020-11-24 12:24:42 +01:00
Cromefire_
7396fcfb84 Removed bash style vars 2020-11-24 12:23:44 +01:00
Cromefire_
1897455004 Update debian/conf/jellyfin
Co-authored-by: Odd Stråbø <oddstr13@openshell.no>
2020-11-23 20:17:40 +01:00
Cromefire_
20b1f985f0 Added JELLYFIN_ADDITIONAL_OPTS to default file 2020-08-28 21:24:21 +02:00
Cromefire_
c0a8118c51 Added additional opts to service file 2020-08-28 21:19:42 +02:00
WWWesten
f2817fef74 Merge pull request #1 from jellyfin/master
Merge from upstream
2019-02-23 18:58:38 +05:00
1705 changed files with 85340 additions and 35431 deletions

View File

@@ -7,7 +7,7 @@ parameters:
default: "ubuntu-latest"
- name: DotNetSdkVersion
type: string
default: 5.0.100
default: 6.0.x
jobs:
- job: CompatibilityCheck

View File

@@ -1,59 +0,0 @@
parameters:
- name: LinuxImage
type: string
default: "ubuntu-latest"
- name: GeneratorVersion
type: string
default: "5.0.0-beta2"
jobs:
- job: GenerateApiClients
displayName: 'Generate Api Clients'
condition: startsWith(variables['Build.SourceBranch'], 'refs/tags/v')
dependsOn: Test
pool:
vmImage: "${{ parameters.LinuxImage }}"
steps:
- task: DownloadPipelineArtifact@2
displayName: 'Download OpenAPI Spec Artifact'
inputs:
source: 'current'
artifact: "OpenAPI Spec"
path: "$(System.ArtifactsDirectory)/openapispec"
runVersion: "latest"
- task: CmdLine@2
displayName: 'Download OpenApi Generator'
inputs:
script: "wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/${{ parameters.GeneratorVersion }}/openapi-generator-cli-${{ parameters.GeneratorVersion }}.jar -O openapi-generator-cli.jar"
## Authenticate with npm registry
- task: npmAuthenticate@0
inputs:
workingFile: ./.npmrc
customEndpoint: 'jellyfin-bot for NPM'
## Generate npm api client
- task: CmdLine@2
displayName: 'Build stable typescript axios client'
inputs:
script: "bash ./apiclient/templates/typescript/axios/generate.sh $(System.ArtifactsDirectory)"
## Run npm install
- task: Npm@1
displayName: 'Install npm dependencies'
inputs:
command: install
workingDir: ./apiclient/generated/typescript/axios
## Publish npm packages
- task: Npm@1
displayName: 'Publish stable typescript axios client'
inputs:
command: custom
customCommand: publish --access public
publishRegistry: useExternalRegistry
publishEndpoint: 'jellyfin-bot for NPM'
workingDir: ./apiclient/generated/typescript/axios

View File

@@ -1,7 +1,7 @@
parameters:
LinuxImage: 'ubuntu-latest'
RestoreBuildProjects: 'Jellyfin.Server/Jellyfin.Server.csproj'
DotNetSdkVersion: 5.0.100
DotNetSdkVersion: 6.0.x
jobs:
- job: Build
@@ -91,3 +91,10 @@ jobs:
inputs:
targetPath: '$(build.ArtifactStagingDirectory)/Jellyfin.Server/MediaBrowser.Common.dll'
artifactName: 'Jellyfin.Common'
- task: PublishPipelineArtifact@1
displayName: 'Publish Artifact Extensions'
condition: and(succeeded(), eq(variables['BuildConfiguration'], 'Release'))
inputs:
targetPath: '$(build.ArtifactStagingDirectory)/Jellyfin.Server/Jellyfin.Extensions.dll'
artifactName: 'Jellyfin.Extensions'

View File

@@ -39,6 +39,10 @@ jobs:
vmImage: 'ubuntu-latest'
steps:
- script: echo "##vso[task.setvariable variable=JellyfinVersion]$( awk -F '/' '{ print $NF }' <<<'$(Build.SourceBranch)' | sed 's/^v//' )"
displayName: Set release version (stable)
condition: startsWith(variables['Build.SourceBranch'], 'refs/tags/v')
- script: 'docker build -f deployment/Dockerfile.$(BuildConfiguration) -t jellyfin-server-$(BuildConfiguration) deployment'
displayName: 'Build Dockerfile'
@@ -80,6 +84,10 @@ jobs:
vmImage: 'ubuntu-latest'
steps:
- script: echo "##vso[task.setvariable variable=JellyfinVersion]$( awk -F '/' '{ print $NF }' <<<'$(Build.SourceBranch)' | sed 's/^v//' )"
displayName: Set release version (stable)
condition: startsWith(variables['Build.SourceBranch'], 'refs/tags/v')
- task: DownloadPipelineArtifact@2
displayName: 'Download OpenAPI Spec'
inputs:
@@ -160,7 +168,6 @@ jobs:
dependsOn:
- BuildPackage
- BuildDocker
condition: and(succeeded('BuildPackage'), succeeded('BuildDocker'))
pool:
vmImage: 'ubuntu-latest'
@@ -182,34 +189,28 @@ jobs:
inputs:
sshEndpoint: repository
runOptions: 'commands'
commands: nohup sudo /srv/repository/collect-server.azure.sh /srv/repository/incoming/azure $(Build.BuildNumber) &
commands: nohup sudo /srv/repository/collect-server.azure.sh /srv/repository/incoming/azure $(Build.BuildNumber) $(Build.SourceBranch) &
- job: PublishNuget
displayName: 'Publish NuGet packages'
dependsOn:
- BuildPackage
condition: succeeded('BuildPackage')
pool:
vmImage: 'ubuntu-latest'
variables:
- name: JellyfinVersion
value: $[replace(variables['Build.SourceBranch'],'refs/tags/v','')]
steps:
- task: UseDotNet@2
displayName: 'Use .NET 5.0 sdk'
displayName: 'Use .NET 6.0 sdk'
inputs:
packageType: 'sdk'
version: '5.0.x'
version: '6.0.x'
- task: DotNetCoreCLI@2
displayName: 'Build Stable Nuget packages'
condition: startsWith(variables['Build.SourceBranch'], 'refs/tags/v')
inputs:
command: 'pack'
packagesToPack: 'Jellyfin.Data/Jellyfin.Data.csproj;MediaBrowser.Common/MediaBrowser.Common.csproj;MediaBrowser.Controller/MediaBrowser.Controller.csproj;MediaBrowser.Model/MediaBrowser.Model.csproj;Emby.Naming/Emby.Naming.csproj'
versioningScheme: 'off'
- task: DotNetCoreCLI@2
displayName: 'Build Unstable Nuget packages'
inputs:
command: 'custom'
projects: |
@@ -218,6 +219,22 @@ jobs:
MediaBrowser.Controller/MediaBrowser.Controller.csproj
MediaBrowser.Model/MediaBrowser.Model.csproj
Emby.Naming/Emby.Naming.csproj
src/Jellyfin.Extensions/Jellyfin.Extensions.csproj
custom: 'pack'
arguments: -o $(Build.ArtifactStagingDirectory) -p:Version=$(JellyfinVersion)
- task: DotNetCoreCLI@2
displayName: 'Build Unstable Nuget packages'
condition: startsWith(variables['Build.SourceBranch'], 'refs/heads/master')
inputs:
command: 'custom'
projects: |
Jellyfin.Data/Jellyfin.Data.csproj
MediaBrowser.Common/MediaBrowser.Common.csproj
MediaBrowser.Controller/MediaBrowser.Controller.csproj
MediaBrowser.Model/MediaBrowser.Model.csproj
Emby.Naming/Emby.Naming.csproj
src/Jellyfin.Extensions/Jellyfin.Extensions.csproj
custom: 'pack'
arguments: '--version-suffix $(Build.BuildNumber) -o $(Build.ArtifactStagingDirectory) -p:Stability=Unstable'
@@ -232,7 +249,7 @@ jobs:
condition: startsWith(variables['Build.SourceBranch'], 'refs/tags/v')
inputs:
command: 'push'
packagesToPush: '$(Build.ArtifactStagingDirectory)/**/*.nupkg;$(Build.ArtifactStagingDirectory)/**/*.snupkg'
packagesToPush: '$(Build.ArtifactStagingDirectory)/**/*.nupkg'
nuGetFeedType: 'external'
publishFeedCredentials: 'NugetOrg'
allowPackageConflicts: true # This ignores an error if the version already exists

View File

@@ -10,7 +10,7 @@ parameters:
default: "tests/**/*Tests.csproj"
- name: DotNetSdkVersion
type: string
default: 5.0.100
default: 6.0.x
jobs:
- job: Test
@@ -94,5 +94,5 @@ jobs:
displayName: 'Publish OpenAPI Artifact'
condition: and(succeeded(), eq(variables['Agent.OS'], 'Linux'))
inputs:
targetPath: "tests/Jellyfin.Api.Tests/bin/Release/net5.0/openapi.json"
targetPath: "tests/Jellyfin.Server.Integration.Tests/bin/Release/net6.0/openapi.json"
artifactName: 'OpenAPI Spec'

View File

@@ -5,8 +5,6 @@ variables:
value: 'tests/**/*Tests.csproj'
- name: RestoreBuildProjects
value: 'Jellyfin.Server/Jellyfin.Server.csproj'
- name: DotNetSdkVersion
value: 5.0.100
pr:
autoCancel: true
@@ -57,10 +55,10 @@ jobs:
Common:
NugetPackageName: Jellyfin.Common
AssemblyFileName: MediaBrowser.Common.dll
Extensions:
NugetPackageName: Jellyfin.Extensions
AssemblyFileName: Jellyfin.Extensions.dll
LinuxImage: 'ubuntu-latest'
- ${{ if or(startsWith(variables['Build.SourceBranch'], 'refs/tags/v'), startsWith(variables['Build.SourceBranch'], 'refs/heads/master')) }}:
- template: azure-pipelines-package.yml
- ${{ if or(startsWith(variables['Build.SourceBranch'], 'refs/tags/v'), startsWith(variables['Build.SourceBranch'], 'refs/heads/master')) }}:
- template: azure-pipelines-api-client.yml

1
.copr Symbolic link
View File

@@ -0,0 +1 @@
fedora

View File

@@ -1 +0,0 @@
../fedora/Makefile

View File

@@ -1,30 +0,0 @@
---
kind: pipeline
name: build-debug
steps:
- name: submodules
image: docker:git
commands:
- git submodule update --init --recursive
- name: build
image: microsoft/dotnet:2-sdk
commands:
- dotnet publish "Jellyfin.Server" --configuration Debug --output "../ci/ci-debug"
---
kind: pipeline
name: build-release
steps:
- name: submodules
image: docker:git
commands:
- git submodule update --init --recursive
- name: build
image: microsoft/dotnet:2-sdk
commands:
- dotnet publish "Jellyfin.Server" --configuration Release --output "../ci/ci-release"

1
.github/CODEOWNERS vendored
View File

@@ -1,3 +1,4 @@
# Joshua must review all changes to deployment and build.sh
.ci/* @joshuaboniface
deployment/* @joshuaboniface
build.sh @joshuaboniface

View File

@@ -1,43 +0,0 @@
---
name: Bug report
about: Create a bug report
title: ''
labels: bug
assignees: ''
---
**Describe the bug**
<!-- A clear and concise description of what the bug is. -->
**System (please complete the following information):**
- OS: [e.g. Debian, Windows]
- Virtualization: [e.g. Docker, KVM, LXC]
- Clients: [Browser, Android, Fire Stick, etc.]
- Browser: [e.g. Firefox 72, Chrome 80, Safari 13]
- Jellyfin Version: [e.g. 10.4.3, nightly 20191231]
- Playback: [Direct Play, Remux, Direct Stream, Transcode]
- Installed Plugins: [e.g. none, Fanart, Anime, etc.]
- Reverse Proxy: [e.g. none, nginx, apache, etc.]
- Base URL: [e.g. none, yes: /example]
- Networking: [e.g. Host, Bridge/NAT]
- Storage: [e.g. local, NFS, cloud]
**To Reproduce**
<!-- Steps to reproduce the behavior: -->
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
<!-- A clear and concise description of what you expected to happen. -->
**Logs**
<!-- Please paste any log errors. -->
**Screenshots**
<!-- If applicable, add screenshots to help explain your problem. -->
**Additional context**
<!-- Add any other context about the problem here. -->

106
.github/ISSUE_TEMPLATE/issue report.yml vendored Normal file
View File

@@ -0,0 +1,106 @@
name: Issue Report
description: File an issue report
title: "[Issue]: "
labels: [bug, triage]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report! Please provide as much detail as necessary, most questions may not be applicable to you. If you need real-time help, join us on [Matrix](https://matrix.to/#/#jellyfin-troubleshooting:matrix.org) or [Discord](https://discord.gg/zHBxVSXdBV).
- type: textarea
id: what-happened
attributes:
label: Please describe your bug
description: Also tell us, what did you expect to happen?
placeholder: |
The more information that you are able to provide, the better. Did you do anything before this happened? Did you upgrade or change anything? Any screenshots or logs you can provide will be helpful.
This is my issue.
Steps to Reproduce
1. In this environment...
2. With this config...
3. Run '...'
4. See error...
validations:
required: true
- type: dropdown
id: version
attributes:
label: Jellyfin Version
description: What version of Jellyfin are you running?
options:
- 10.7.7
- 10.7.z
- 10.6.4
- Other
validations:
required: true
- type: input
id: version-other
attributes:
label: "if other:"
placeholder: Other
- type: textarea
attributes:
label: Environment
description: |
Examples:
- **OS**: [e.g. Debian, Windows]
- **Virtualization**: [e.g. Docker, KVM, LXC]
- **Clients**: [Browser, Android, Fire Stick, etc.]
- **Browser**: [e.g. Firefox 91, Chrome 93, Safari 13]
- **FFmpeg Version**: [e.g. 4.3.2-Jellyfin]
- **Playback**: [Direct Play, Remux, Direct Stream, Transcode]
- **Hardware Acceleration**: [e.g. none, VAAPI, NVENC, etc.]
- **Installed Plugins**: [e.g. none, Fanart, Anime, etc.]
- **Reverse Proxy**: [e.g. none, nginx, apache, etc.]
- **Base URL**: [e.g. none, yes: /example]
- **Networking**: [e.g. Host, Bridge/NAT]
- **Storage**: [e.g. local, NFS, cloud]
value: |
- OS:
- Virtualization:
- Clients:
- Browser:
- FFmpeg Version:
- Playback Method:
- Hardware Acceleration:
- Plugins:
- Reverse Proxy:
- Base URL:
- Networking:
- Storage:
render: markdown
- type: textarea
id: logs
attributes:
label: Jellyfin logs
description: Please copy and paste any relevant log output. This can be found in Dashboard > Logs.
placeholder: For playback issues, browser/client and FFmpeg logs may be more useful.
render: shell
- type: textarea
id: ffmpeg-logs
attributes:
label: FFmpeg logs
description: Please copy and paste any relevant log output. This can be found in Dashboard > Logs.
placeholder: It's important to include the specific codec details. If no FFmpeg logs appear, the file was Direct Played and did not use FFmpeg.
render: shell
- type: textarea
id: browserlogs
attributes:
label: Please attach any browser or client logs here
placeholder: Access browser logs by using the F12 to bring up the console. Screenshots are typically easier to read than raw logs. For clients such as Android or iOS, please see our documentation.
- type: textarea
id: screenshots
attributes:
label: Please attach any screenshots here
placeholder: Images can be pasted directly into the textbox and will be hosted by github.
- type: checkboxes
id: terms
attributes:
label: Code of Conduct
description: By submitting this issue, you agree to follow our [Code of Conduct](https://jellyfin.org/docs/general/community-standards.html#code-of-conduct)
options:
- label: I agree to follow this project's Code of Conduct
required: true

View File

@@ -6,4 +6,10 @@ updates:
interval: weekly
time: '12:00'
open-pull-requests-limit: 10
- package-ecosystem: github-actions
directory: '/'
schedule:
interval: weekly
time: '12:00'
open-pull-requests-limit: 10

25
.github/stale.yml vendored
View File

@@ -1,25 +0,0 @@
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 120
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 21
# Issues with these labels will never be considered stale
exemptLabels:
- regression
- security
- dotnet-3.0-future
- roadmap
- future
- feature
- enhancement
- confirmed
# Label to use when marking an issue as stale
staleLabel: stale
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments.
If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or nightlies, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label.
This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on [Matrix or Social Media](https://docs.jellyfin.org/general/getting-help.html).
# Comment to post when closing a stale issue. Set to `false` to disable
closeComment: false

76
.github/workflows/automation.yml vendored Normal file
View File

@@ -0,0 +1,76 @@
name: Automation
on:
push:
branches:
- master
pull_request_target:
issue_comment:
jobs:
label:
name: Labeling
runs-on: ubuntu-latest
if: ${{ github.repository == 'jellyfin/jellyfin' }}
steps:
- name: Apply label
uses: eps1lon/actions-label-merge-conflict@v2.0.1
if: ${{ github.event_name == 'push' || github.event_name == 'pull_request_target'}}
with:
dirtyLabel: 'merge conflict'
repoToken: ${{ secrets.JF_BOT_TOKEN }}
project:
name: Project board
runs-on: ubuntu-latest
if: ${{ github.repository == 'jellyfin/jellyfin' }}
steps:
- name: Remove from 'Current Release' project
uses: alex-page/github-project-automation-plus@v0.8.1
if: (github.event.pull_request || github.event.issue.pull_request) && !contains(github.event.*.labels.*.name, 'stable backport')
continue-on-error: true
with:
project: Current Release
action: delete
repo-token: ${{ secrets.JF_BOT_TOKEN }}
- name: Add to 'Release Next' project
uses: alex-page/github-project-automation-plus@v0.8.1
if: (github.event.pull_request || github.event.issue.pull_request) && github.event.action == 'opened'
continue-on-error: true
with:
project: Release Next
column: In progress
repo-token: ${{ secrets.JF_BOT_TOKEN }}
- name: Add to 'Current Release' project
uses: alex-page/github-project-automation-plus@v0.8.1
if: (github.event.pull_request || github.event.issue.pull_request) && !contains(github.event.*.labels.*.name, 'stable backport')
continue-on-error: true
with:
project: Current Release
column: In progress
repo-token: ${{ secrets.JF_BOT_TOKEN }}
- name: Check number of comments from the team member
if: github.event.issue.pull_request == '' && github.event.comment.author_association == 'MEMBER'
id: member_comments
run: echo "::set-output name=number::$(curl -s ${{ github.event.issue.comments_url }} | jq '.[] | select(.author_association == "MEMBER") | .author_association' | wc -l)"
- name: Move issue to needs triage
uses: alex-page/github-project-automation-plus@v0.8.1
if: github.event.issue.pull_request == '' && github.event.comment.author_association == 'MEMBER' && steps.member_comments.outputs.number <= 1
continue-on-error: true
with:
project: Issue Triage for Main Repo
column: Needs triage
repo-token: ${{ secrets.JF_BOT_TOKEN }}
- name: Add issue to triage project
uses: alex-page/github-project-automation-plus@v0.8.1
if: github.event.issue.pull_request == '' && github.event.action == 'opened'
continue-on-error: true
with:
project: Issue Triage for Main Repo
column: Pending response
repo-token: ${{ secrets.JF_BOT_TOKEN }}

View File

@@ -20,11 +20,12 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
uses: actions/setup-dotnet@v2
with:
dotnet-version: '5.0.100'
dotnet-version: '6.0.x'
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:

119
.github/workflows/commands.yml vendored Normal file
View File

@@ -0,0 +1,119 @@
name: Commands
on:
issue_comment:
types:
- created
- edited
pull_request_target:
types:
- labeled
- synchronize
jobs:
rebase:
name: Rebase
if: github.event.issue.pull_request != '' && contains(github.event.comment.body, '@jellyfin-bot rebase') && github.event.comment.author_association == 'MEMBER'
runs-on: ubuntu-latest
steps:
- name: Notify as seen
uses: peter-evans/create-or-update-comment@v1.4.5
with:
token: ${{ secrets.JF_BOT_TOKEN }}
comment-id: ${{ github.event.comment.id }}
reactions: '+1'
- name: Checkout the latest code
uses: actions/checkout@v3
with:
token: ${{ secrets.JF_BOT_TOKEN }}
fetch-depth: 0
- name: Automatic Rebase
uses: cirrus-actions/rebase@1.5
env:
GITHUB_TOKEN: ${{ secrets.JF_BOT_TOKEN }}
check-backport:
name: Check Backport
if: ${{ ( github.event.issue.pull_request && contains(github.event.comment.body, '@jellyfin-bot check backport') ) || github.event.label.name == 'stable backport' || contains(github.event.pull_request.labels.*.name, 'stable backport' ) }}
runs-on: ubuntu-latest
steps:
- name: Notify as seen
uses: peter-evans/create-or-update-comment@v1.4.5
if: ${{ github.event.comment != null }}
with:
token: ${{ secrets.JF_BOT_TOKEN }}
comment-id: ${{ github.event.comment.id }}
reactions: eyes
- name: Checkout the latest code
uses: actions/checkout@v3
with:
token: ${{ secrets.JF_BOT_TOKEN }}
fetch-depth: 0
- name: Notify as running
id: comment_running
uses: peter-evans/create-or-update-comment@v1.4.5
if: ${{ github.event.comment != null }}
with:
token: ${{ secrets.JF_BOT_TOKEN }}
issue-number: ${{ github.event.issue.number }}
body: |
Running backport tests...
- name: Perform test backport
id: run_tests
run: |
set +o errexit
git config --global user.name "Jellyfin Bot"
git config --global user.email "team@jellyfin.org"
CURRENT_BRANCH="origin/${GITHUB_HEAD_REF}"
git checkout master
git merge --no-ff ${CURRENT_BRANCH}
MERGE_COMMIT_HASH=$( git log -q -1 | head -1 | awk '{ print $2 }' )
git fetch --all
CURRENT_STABLE=$( git branch -r | grep 'origin/release' | sort -rV | head -1 | awk -F '/' '{ print $NF }' )
stable_branch="Current stable release branch: ${CURRENT_STABLE}"
echo ${stable_branch}
echo ::set-output name=branch::${stable_branch}
git checkout -t origin/${CURRENT_STABLE} -b ${CURRENT_STABLE}
git cherry-pick -sx -m1 ${MERGE_COMMIT_HASH} &>output.txt
retcode=$?
cat output.txt | grep -v 'hint:'
output="$( grep -v 'hint:' output.txt )"
output="${output//'%'/'%25'}"
output="${output//$'\n'/'%0A'}"
output="${output//$'\r'/'%0D'}"
echo ::set-output name=output::$output
exit ${retcode}
- name: Notify with result success
uses: peter-evans/create-or-update-comment@v1.4.5
if: ${{ github.event.comment != null && success() }}
with:
token: ${{ secrets.JF_BOT_TOKEN }}
comment-id: ${{ steps.comment_running.outputs.comment-id }}
body: |
${{ steps.run_tests.outputs.branch }}
Output from `git cherry-pick`:
---
${{ steps.run_tests.outputs.output }}
reactions: hooray
- name: Notify with result failure
uses: peter-evans/create-or-update-comment@v1.4.5
if: ${{ github.event.comment != null && failure() }}
with:
token: ${{ secrets.JF_BOT_TOKEN }}
comment-id: ${{ steps.comment_running.outputs.comment-id }}
body: |
${{ steps.run_tests.outputs.branch }}
Output from `git cherry-pick`:
---
${{ steps.run_tests.outputs.output }}
reactions: confused

124
.github/workflows/openapi.yml vendored Normal file
View File

@@ -0,0 +1,124 @@
name: OpenAPI
on:
push:
branches:
- master
pull_request_target:
jobs:
openapi-head:
name: OpenAPI - HEAD
runs-on: ubuntu-latest
permissions: read-all
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.sha }}
repository: ${{ github.event.pull_request.head.repo.full_name }}
- name: Setup .NET Core
uses: actions/setup-dotnet@v2
with:
dotnet-version: '6.0.x'
- name: Generate openapi.json
run: dotnet test tests/Jellyfin.Server.Integration.Tests/Jellyfin.Server.Integration.Tests.csproj -c Release --filter "Jellyfin.Server.Integration.Tests.OpenApiSpecTests"
- name: Upload openapi.json
uses: actions/upload-artifact@v2
with:
name: openapi-head
retention-days: 14
if-no-files-found: error
path: tests/Jellyfin.Server.Integration.Tests/bin/Release/net6.0/openapi.json
openapi-base:
name: OpenAPI - BASE
if: ${{ github.base_ref != '' }}
runs-on: ubuntu-latest
permissions: read-all
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
ref: ${{ github.base_ref }}
- name: Setup .NET Core
uses: actions/setup-dotnet@v2
with:
dotnet-version: '6.0.x'
- name: Generate openapi.json
run: dotnet test tests/Jellyfin.Server.Integration.Tests/Jellyfin.Server.Integration.Tests.csproj -c Release --filter "Jellyfin.Server.Integration.Tests.OpenApiSpecTests"
- name: Upload openapi.json
uses: actions/upload-artifact@v2
with:
name: openapi-base
retention-days: 14
if-no-files-found: error
path: tests/Jellyfin.Server.Integration.Tests/bin/Release/net6.0/openapi.json
openapi-diff:
name: OpenAPI - Difference
if: ${{ github.event_name == 'pull_request_target' }}
runs-on: ubuntu-latest
needs:
- openapi-head
- openapi-base
steps:
- name: Download openapi-head
uses: actions/download-artifact@v2
with:
name: openapi-head
path: openapi-head
- name: Download openapi-base
uses: actions/download-artifact@v2
with:
name: openapi-base
path: openapi-base
- name: Workaround openapi-diff issue
run: |
sed -i 's/"allOf"/"oneOf"/g' openapi-head/openapi.json
sed -i 's/"allOf"/"oneOf"/g' openapi-base/openapi.json
- name: Calculate OpenAPI difference
uses: docker://openapitools/openapi-diff
continue-on-error: true
with:
args: --fail-on-changed --markdown openapi-changes.md openapi-base/openapi.json openapi-head/openapi.json
- id: read-diff
name: Read openapi-diff output
run: |
body=$(cat openapi-changes.md)
body="${body//'%'/'%25'}"
body="${body//$'\n'/'%0A'}"
body="${body//$'\r'/'%0D'}"
echo ::set-output name=body::$body
- name: Find difference comment
uses: peter-evans/find-comment@v1
id: find-comment
with:
issue-number: ${{ github.event.pull_request.number }}
direction: last
body-includes: openapi-diff-workflow-comment
- name: Reply or edit difference comment (changed)
uses: peter-evans/create-or-update-comment@v1.4.5
if: ${{ steps.read-diff.outputs.body != '' }}
with:
issue-number: ${{ github.event.pull_request.number }}
comment-id: ${{ steps.find-comment.outputs.comment-id }}
edit-mode: replace
body: |
<!--openapi-diff-workflow-comment-->
<details>
<summary>Changes in OpenAPI specification found. Expand to see details.</summary>
${{ steps.read-diff.outputs.body }}
</details>
- name: Edit difference comment (unchanged)
uses: peter-evans/create-or-update-comment@v1.4.5
if: ${{ steps.read-diff.outputs.body == '' && steps.find-comment.outputs.comment-id != '' }}
with:
issue-number: ${{ github.event.pull_request.number }}
comment-id: ${{ steps.find-comment.outputs.comment-id }}
edit-mode: replace
body: |
<!--openapi-diff-workflow-comment-->
No changes to OpenAPI specification found. See history of this comment for previous changes.

27
.github/workflows/repo-stale.yaml vendored Normal file
View File

@@ -0,0 +1,27 @@
name: Issue Stale Check
on:
schedule:
- cron: '30 1 * * *'
workflow_dispatch:
jobs:
stale:
runs-on: ubuntu-latest
if: ${{ contains(github.repository, 'jellyfin/') }}
steps:
- uses: actions/stale@v5
with:
repo-token: ${{ secrets.JF_BOT_TOKEN }}
days-before-stale: 120
days-before-pr-stale: -1
days-before-close: 21
days-before-pr-close: -1
exempt-issue-labels: regression,security,roadmap,future,feature,enhancement,confirmed
stale-issue-label: stale
stale-issue-message: |-
This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments.
If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or master branch, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label.
This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on [Matrix or Social Media](https://docs.jellyfin.org/general/getting-help.html).

4
.gitignore vendored
View File

@@ -268,6 +268,7 @@ doc/
# Deployment artifacts
dist
*.exe
*.dll
# BenchmarkDotNet artifacts
BenchmarkDotNet.Artifacts
@@ -277,3 +278,6 @@ web/
web-src.*
MediaBrowser.WebDashboard/jellyfin-web
apiclient/generated
# Omnisharp crash logs
mono_crash.*.json

4
.vscode/launch.json vendored
View File

@@ -6,7 +6,7 @@
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build",
"program": "${workspaceFolder}/Jellyfin.Server/bin/Debug/net5.0/jellyfin.dll",
"program": "${workspaceFolder}/Jellyfin.Server/bin/Debug/net6.0/jellyfin.dll",
"args": [],
"cwd": "${workspaceFolder}/Jellyfin.Server",
"console": "internalConsole",
@@ -22,7 +22,7 @@
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build",
"program": "${workspaceFolder}/Jellyfin.Server/bin/Debug/net5.0/jellyfin.dll",
"program": "${workspaceFolder}/Jellyfin.Server/bin/Debug/net6.0/jellyfin.dll",
"args": ["--nowebclient"],
"cwd": "${workspaceFolder}/Jellyfin.Server",
"console": "internalConsole",

4
BannedSymbols.txt Normal file
View File

@@ -0,0 +1,4 @@
P:System.Threading.Tasks.Task`1.Result
M:System.Guid.op_Equality(System.Guid,System.Guid)
M:System.Guid.op_Inequality(System.Guid,System.Guid)
M:System.Guid.Equals(System.Object)

View File

@@ -1,5 +1,6 @@
# Jellyfin Contributors
- [1337joe](https://github.com/1337joe)
- [97carmine](https://github.com/97carmine)
- [Abbe98](https://github.com/Abbe98)
- [agrenott](https://github.com/agrenott)
@@ -17,6 +18,7 @@
- [bugfixin](https://github.com/bugfixin)
- [chaosinnovator](https://github.com/chaosinnovator)
- [ckcr4lyf](https://github.com/ckcr4lyf)
- [cocool97](https://github.com/cocool97)
- [ConfusedPolarBear](https://github.com/ConfusedPolarBear)
- [crankdoofus](https://github.com/crankdoofus)
- [crobibero](https://github.com/crobibero)
@@ -25,6 +27,7 @@
- [cvium](https://github.com/cvium)
- [dannymichel](https://github.com/dannymichel)
- [DaveChild](https://github.com/DaveChild)
- [DavidFair](https://github.com/DavidFair)
- [Delgan](https://github.com/Delgan)
- [dcrdev](https://github.com/dcrdev)
- [dhartung](https://github.com/dhartung)
@@ -34,6 +37,7 @@
- [dmitrylyzo](https://github.com/dmitrylyzo)
- [DMouse10462](https://github.com/DMouse10462)
- [DrPandemic](https://github.com/DrPandemic)
- [eglia](https://github.com/eglia)
- [EraYaN](https://github.com/EraYaN)
- [escabe](https://github.com/escabe)
- [excelite](https://github.com/excelite)
@@ -44,11 +48,14 @@
- [Froghut](https://github.com/Froghut)
- [fruhnow](https://github.com/fruhnow)
- [geilername](https://github.com/geilername)
- [GermanCoding](https://github.com/GermanCoding)
- [gnattu](https://github.com/gnattu)
- [GodTamIt](https://github.com/GodTamIt)
- [grafixeyehero](https://github.com/grafixeyehero)
- [h1nk](https://github.com/h1nk)
- [hawken93](https://github.com/hawken93)
- [HelloWorld017](https://github.com/HelloWorld017)
- [ikomhoog](https://github.com/ikomhoog)
- [jftuga](https://github.com/jftuga)
- [joern-h](https://github.com/joern-h)
- [joshuaboniface](https://github.com/joshuaboniface)
@@ -68,10 +75,12 @@
- [marius-luca-87](https://github.com/marius-luca-87)
- [mark-monteiro](https://github.com/mark-monteiro)
- [Matt07211](https://github.com/Matt07211)
- [Maxr1998](https://github.com/Maxr1998)
- [mcarlton00](https://github.com/mcarlton00)
- [mitchfizz05](https://github.com/mitchfizz05)
- [MrTimscampi](https://github.com/MrTimscampi)
- [n8225](https://github.com/n8225)
- [Nalsai](https://github.com/Nalsai)
- [Narfinger](https://github.com/Narfinger)
- [NathanPickard](https://github.com/NathanPickard)
- [neilsb](https://github.com/neilsb)
@@ -80,6 +89,7 @@
- [nvllsvm](https://github.com/nvllsvm)
- [nyanmisaka](https://github.com/nyanmisaka)
- [OancaAndrei](https://github.com/OancaAndrei)
- [obradovichv](https://github.com/obradovichv)
- [oddstr13](https://github.com/oddstr13)
- [orryverducci](https://github.com/orryverducci)
- [petermcneil](https://github.com/petermcneil)
@@ -103,12 +113,14 @@
- [shemanaev](https://github.com/shemanaev)
- [skaro13](https://github.com/skaro13)
- [sl1288](https://github.com/sl1288)
- [Smith00101010](https://github.com/Smith00101010)
- [sorinyo2004](https://github.com/sorinyo2004)
- [sparky8251](https://github.com/sparky8251)
- [spookbits](https://github.com/spookbits)
- [ssenart] (https://github.com/ssenart)
- [ssenart](https://github.com/ssenart)
- [stanionascu](https://github.com/stanionascu)
- [stevehayles](https://github.com/stevehayles)
- [StollD](https://github.com/StollD)
- [SuperSandro2000](https://github.com/SuperSandro2000)
- [tbraeutigam](https://github.com/tbraeutigam)
- [teacupx](https://github.com/teacupx)
@@ -141,6 +153,15 @@
- [Pusta](https://github.com/pusta)
- [nielsvanvelzen](https://github.com/nielsvanvelzen)
- [skyfrk](https://github.com/skyfrk)
- [ianjazz246](https://github.com/ianjazz246)
- [peterspenler](https://github.com/peterspenler)
- [MBR-0001](https://github.com/MBR-0001)
- [jonas-resch](https://github.com/jonas-resch)
- [vgambier](https://github.com/vgambier)
- [MinecraftPlaye](https://github.com/MinecraftPlaye)
- [RealGreenDragon](https://github.com/RealGreenDragon)
- [TheTyrius](https://github.com/TheTyrius)
- [Çağrı Sakaoğlu](https://github.com/ilovepilav)
# Emby Contributors
@@ -205,3 +226,10 @@
- [Tim Hobbs](https://github.com/timhobbs)
- [SvenVandenbrande](https://github.com/SvenVandenbrande)
- [olsh](https://github.com/olsh)
- [lbenini](https://github.com/lbenini)
- [gnuyent](https://github.com/gnuyent)
- [Matthew Jones](https://github.com/matthew-jones-uk)
- [Jakob Kukla](https://github.com/jakobkukla)
- [Utku Özdemir](https://github.com/utkuozdemir)
- [JPUC1143](https://github.com/Jpuc1143/)
- [0x25CBFC4F](https://github.com/0x25CBFC4F)

21
Directory.Build.props Normal file
View File

@@ -0,0 +1,21 @@
<Project>
<!-- Sets defaults for all projects in the repo -->
<PropertyGroup>
<Nullable>enable</Nullable>
<CodeAnalysisRuleSet>$(MSBuildThisFileDirectory)/jellyfin.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>
<PropertyGroup>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<AnalysisMode>AllEnabledByDefault</AnalysisMode>
</PropertyGroup>
<ItemGroup>
<AdditionalFiles Include="$(SolutionDir)/BannedSymbols.txt" />
</ItemGroup>
</Project>

View File

@@ -1,22 +1,18 @@
ARG DOTNET_VERSION=5.0
# DESIGNED FOR BUILDING ON AMD64 ONLY
#####################################
# Requires binfm_misc registration
# https://github.com/multiarch/qemu-user-static#binfmt_misc-register
ARG DOTNET_VERSION=6.0
FROM node:alpine as web-builder
FROM node:lts-alpine as web-builder
ARG JELLYFIN_WEB_VERSION=master
RUN apk add curl git zlib zlib-dev autoconf g++ make libpng-dev gifsicle alpine-sdk automake libtool make gcc musl-dev nasm python \
RUN apk add curl git zlib zlib-dev autoconf g++ make libpng-dev gifsicle alpine-sdk automake libtool make gcc musl-dev nasm python3 \
&& curl -L https://github.com/jellyfin/jellyfin-web/archive/${JELLYFIN_WEB_VERSION}.tar.gz | tar zxf - \
&& cd jellyfin-web-* \
&& yarn install \
&& npm ci --no-audit --unsafe-perm \
&& mv dist /dist
FROM mcr.microsoft.com/dotnet/sdk:${DOTNET_VERSION}-buster-slim as builder
WORKDIR /repo
COPY . .
ENV DOTNET_CLI_TELEMETRY_OPTOUT=1
# because of changes in docker and systemd we need to not build in parallel at the moment
# see https://success.docker.com/article/how-to-reserve-resource-temporarily-unavailable-errors-due-to-tasksmax-setting
RUN dotnet publish Jellyfin.Server --disable-parallel --configuration Release --output="/jellyfin" --self-contained --runtime linux-x64 "-p:DebugSymbols=false;DebugType=none"
FROM debian:buster-slim
FROM debian:stable-slim as app
# https://askubuntu.com/questions/972516/debian-frontend-environment-variable
ARG DEBIAN_FRONTEND="noninteractive"
@@ -25,19 +21,17 @@ ARG APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=DontWarn
# https://github.com/NVIDIA/nvidia-docker/wiki/Installation-(Native-GPU-Support)
ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility"
COPY --from=builder /jellyfin /jellyfin
COPY --from=web-builder /dist /jellyfin/jellyfin-web
# https://github.com/intel/compute-runtime/releases
ARG GMMLIB_VERSION=20.3.2
ARG IGC_VERSION=1.0.5435
ARG NEO_VERSION=20.46.18421
ARG LEVEL_ZERO_VERSION=1.0.18421
ARG GMMLIB_VERSION=22.0.2
ARG IGC_VERSION=1.0.10395
ARG NEO_VERSION=22.08.22549
ARG LEVEL_ZERO_VERSION=1.3.22549
# Install dependencies:
# mesa-va-drivers: needed for AMD VAAPI. Mesa >= 20.1 is required for HEVC transcoding.
# curl: healthcheck
RUN apt-get update \
&& apt-get install --no-install-recommends --no-install-suggests -y ca-certificates gnupg wget apt-transport-https \
&& apt-get install --no-install-recommends --no-install-suggests -y ca-certificates gnupg wget apt-transport-https curl \
&& wget -O - https://repo.jellyfin.org/jellyfin_team.gpg.key | apt-key add - \
&& echo "deb [arch=$( dpkg --print-architecture )] https://repo.jellyfin.org/$( awk -F'=' '/^ID=/{ print $NF }' /etc/os-release ) $( awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release ) main" | tee /etc/apt/sources.list.d/jellyfin.list \
&& apt-get update \
@@ -54,8 +48,7 @@ RUN apt-get update \
&& wget https://github.com/intel/compute-runtime/releases/download/${NEO_VERSION}/intel-gmmlib_${GMMLIB_VERSION}_amd64.deb \
&& wget https://github.com/intel/intel-graphics-compiler/releases/download/igc-${IGC_VERSION}/intel-igc-core_${IGC_VERSION}_amd64.deb \
&& wget https://github.com/intel/intel-graphics-compiler/releases/download/igc-${IGC_VERSION}/intel-igc-opencl_${IGC_VERSION}_amd64.deb \
&& wget https://github.com/intel/compute-runtime/releases/download/${NEO_VERSION}/intel-opencl_${NEO_VERSION}_amd64.deb \
&& wget https://github.com/intel/compute-runtime/releases/download/${NEO_VERSION}/intel-ocloc_${NEO_VERSION}_amd64.deb \
&& wget https://github.com/intel/compute-runtime/releases/download/${NEO_VERSION}/intel-opencl-icd_${NEO_VERSION}_amd64.deb \
&& wget https://github.com/intel/compute-runtime/releases/download/${NEO_VERSION}/intel-level-zero-gpu_${LEVEL_ZERO_VERSION}_amd64.deb \
&& dpkg -i *.deb \
&& cd .. \
@@ -68,14 +61,32 @@ RUN apt-get update \
&& chmod 777 /cache /config /media \
&& sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && locale-gen
ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1
# ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1
ENV LC_ALL en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
FROM mcr.microsoft.com/dotnet/sdk:${DOTNET_VERSION} as builder
WORKDIR /repo
COPY . .
ENV DOTNET_CLI_TELEMETRY_OPTOUT=1
# because of changes in docker and systemd we need to not build in parallel at the moment
# see https://success.docker.com/article/how-to-reserve-resource-temporarily-unavailable-errors-due-to-tasksmax-setting
RUN dotnet publish Jellyfin.Server --disable-parallel --configuration Release --output="/jellyfin" --self-contained --runtime linux-x64 -p:DebugSymbols=false -p:DebugType=none
FROM app
ENV HEALTHCHECK_URL=http://localhost:8096/health
COPY --from=builder /jellyfin /jellyfin
COPY --from=web-builder /dist /jellyfin/jellyfin-web
EXPOSE 8096
VOLUME /cache /config /media
VOLUME /cache /config
ENTRYPOINT ["./jellyfin/jellyfin", \
"--datadir", "/config", \
"--cachedir", "/cache", \
"--ffmpeg", "/usr/lib/jellyfin-ffmpeg/ffmpeg"]
HEALTHCHECK --interval=30s --timeout=30s --start-period=10s --retries=3 \
CMD curl -Lk "${HEALTHCHECK_URL}" || exit 1

View File

@@ -1,31 +1,20 @@
# DESIGNED FOR BUILDING ON AMD64 ONLY
# DESIGNED FOR BUILDING ON ARM ONLY
#####################################
# Requires binfm_misc registration
# https://github.com/multiarch/qemu-user-static#binfmt_misc-register
ARG DOTNET_VERSION=5.0
ARG DOTNET_VERSION=6.0
FROM node:alpine as web-builder
FROM node:lts-alpine as web-builder
ARG JELLYFIN_WEB_VERSION=master
RUN apk add curl git zlib zlib-dev autoconf g++ make libpng-dev gifsicle alpine-sdk automake libtool make gcc musl-dev nasm python \
RUN apk add curl git zlib zlib-dev autoconf g++ make libpng-dev gifsicle alpine-sdk automake libtool make gcc musl-dev nasm python3 \
&& curl -L https://github.com/jellyfin/jellyfin-web/archive/${JELLYFIN_WEB_VERSION}.tar.gz | tar zxf - \
&& cd jellyfin-web-* \
&& yarn install \
&& npm ci --no-audit --unsafe-perm \
&& mv dist /dist
FROM mcr.microsoft.com/dotnet/sdk:${DOTNET_VERSION} as builder
WORKDIR /repo
COPY . .
ENV DOTNET_CLI_TELEMETRY_OPTOUT=1
# Discard objs - may cause failures if exists
RUN find . -type d -name obj | xargs -r rm -r
# Build
RUN dotnet publish Jellyfin.Server --configuration Release --output="/jellyfin" --self-contained --runtime linux-arm "-p:DebugSymbols=false;DebugType=none"
FROM multiarch/qemu-user-static:x86_64-arm as qemu
FROM arm32v7/debian:buster-slim
FROM arm32v7/debian:stable-slim as app
# https://askubuntu.com/questions/972516/debian-frontend-environment-variable
ARG DEBIAN_FRONTEND="noninteractive"
@@ -35,6 +24,8 @@ ARG APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=DontWarn
ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility"
COPY --from=qemu /usr/bin/qemu-arm-static /usr/bin
# curl: setup & healthcheck
RUN apt-get update \
&& apt-get install --no-install-recommends --no-install-suggests -y ca-certificates gnupg curl && \
curl -ks https://repo.jellyfin.org/debian/jellyfin_team.gpg.key | apt-key add - && \
@@ -53,7 +44,7 @@ RUN apt-get update \
vainfo \
libva2 \
locales \
&& apt-get remove curl gnupg -y \
&& apt-get remove gnupg -y \
&& apt-get clean autoclean -y \
&& apt-get autoremove -y \
&& rm -rf /var/lib/apt/lists/* \
@@ -61,17 +52,33 @@ RUN apt-get update \
&& chmod 777 /cache /config /media \
&& sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && locale-gen
COPY --from=builder /jellyfin /jellyfin
COPY --from=web-builder /dist /jellyfin/jellyfin-web
ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1
# ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1
ENV LC_ALL en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
FROM mcr.microsoft.com/dotnet/sdk:${DOTNET_VERSION} as builder
WORKDIR /repo
COPY . .
ENV DOTNET_CLI_TELEMETRY_OPTOUT=1
# Discard objs - may cause failures if exists
RUN find . -type d -name obj | xargs -r rm -r
# Build
RUN dotnet publish Jellyfin.Server --configuration Release --output="/jellyfin" --self-contained --runtime linux-arm -p:DebugSymbols=false -p:DebugType=none
FROM app
ENV HEALTHCHECK_URL=http://localhost:8096/health
COPY --from=builder /jellyfin /jellyfin
COPY --from=web-builder /dist /jellyfin/jellyfin-web
EXPOSE 8096
VOLUME /cache /config /media
VOLUME /cache /config
ENTRYPOINT ["./jellyfin/jellyfin", \
"--datadir", "/config", \
"--cachedir", "/cache", \
"--ffmpeg", "/usr/lib/jellyfin-ffmpeg/ffmpeg"]
HEALTHCHECK --interval=30s --timeout=30s --start-period=10s --retries=3 \
CMD curl -Lk "${HEALTHCHECK_URL}" || exit 1

View File

@@ -1,30 +1,20 @@
# DESIGNED FOR BUILDING ON AMD64 ONLY
# DESIGNED FOR BUILDING ON ARM64 ONLY
#####################################
# Requires binfm_misc registration
# https://github.com/multiarch/qemu-user-static#binfmt_misc-register
ARG DOTNET_VERSION=5.0
ARG DOTNET_VERSION=6.0
FROM node:alpine as web-builder
FROM node:lts-alpine as web-builder
ARG JELLYFIN_WEB_VERSION=master
RUN apk add curl git zlib zlib-dev autoconf g++ make libpng-dev gifsicle alpine-sdk automake libtool make gcc musl-dev nasm python \
RUN apk add curl git zlib zlib-dev autoconf g++ make libpng-dev gifsicle alpine-sdk automake libtool make gcc musl-dev nasm python3 \
&& curl -L https://github.com/jellyfin/jellyfin-web/archive/${JELLYFIN_WEB_VERSION}.tar.gz | tar zxf - \
&& cd jellyfin-web-* \
&& yarn install \
&& npm ci --no-audit --unsafe-perm \
&& mv dist /dist
FROM mcr.microsoft.com/dotnet/sdk:${DOTNET_VERSION} as builder
WORKDIR /repo
COPY . .
ENV DOTNET_CLI_TELEMETRY_OPTOUT=1
# Discard objs - may cause failures if exists
RUN find . -type d -name obj | xargs -r rm -r
# Build
RUN dotnet publish Jellyfin.Server --configuration Release --output="/jellyfin" --self-contained --runtime linux-arm64 "-p:DebugSymbols=false;DebugType=none"
FROM multiarch/qemu-user-static:x86_64-aarch64 as qemu
FROM arm64v8/debian:buster-slim
FROM arm64v8/debian:stable-slim as app
# https://askubuntu.com/questions/972516/debian-frontend-environment-variable
ARG DEBIAN_FRONTEND="noninteractive"
@@ -34,6 +24,8 @@ ARG APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=DontWarn
ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility"
COPY --from=qemu /usr/bin/qemu-aarch64-static /usr/bin
# curl: healcheck
RUN apt-get update && apt-get install --no-install-recommends --no-install-suggests -y \
ffmpeg \
libssl-dev \
@@ -43,6 +35,7 @@ RUN apt-get update && apt-get install --no-install-recommends --no-install-sugge
libomxil-bellagio0 \
libomxil-bellagio-bin \
locales \
curl \
&& apt-get clean autoclean -y \
&& apt-get autoremove -y \
&& rm -rf /var/lib/apt/lists/* \
@@ -50,17 +43,33 @@ RUN apt-get update && apt-get install --no-install-recommends --no-install-sugge
&& chmod 777 /cache /config /media \
&& sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && locale-gen
COPY --from=builder /jellyfin /jellyfin
COPY --from=web-builder /dist /jellyfin/jellyfin-web
ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1
# ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1
ENV LC_ALL en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
FROM mcr.microsoft.com/dotnet/sdk:${DOTNET_VERSION} as builder
WORKDIR /repo
COPY . .
ENV DOTNET_CLI_TELEMETRY_OPTOUT=1
# Discard objs - may cause failures if exists
RUN find . -type d -name obj | xargs -r rm -r
# Build
RUN dotnet publish Jellyfin.Server --configuration Release --output="/jellyfin" --self-contained --runtime linux-arm64 -p:DebugSymbols=false -p:DebugType=none
FROM app
ENV HEALTHCHECK_URL=http://localhost:8096/health
COPY --from=builder /jellyfin /jellyfin
COPY --from=web-builder /dist /jellyfin/jellyfin-web
EXPOSE 8096
VOLUME /cache /config /media
VOLUME /cache /config
ENTRYPOINT ["./jellyfin/jellyfin", \
"--datadir", "/config", \
"--cachedir", "/cache", \
"--ffmpeg", "/usr/bin/ffmpeg"]
HEALTHCHECK --interval=30s --timeout=30s --start-period=10s --retries=3 \
CMD curl -Lk "${HEALTHCHECK_URL}" || exit 1

View File

@@ -10,10 +10,11 @@
</ItemGroup>
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<TargetFramework>net6.0</TargetFramework>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<AnalysisMode>AllDisabledByDefault</AnalysisMode>
<Nullable>disable</Nullable>
</PropertyGroup>
</Project>

View File

@@ -2,6 +2,7 @@
using System;
using System.Collections.Generic;
using System.Globalization;
using System.IO;
using System.Linq;
@@ -76,7 +77,7 @@ namespace DvdLib.Ifo
private void ReadVTS(ushort vtsNum, IReadOnlyList<FileInfo> allFiles)
{
var filename = string.Format("VTS_{0:00}_0.IFO", vtsNum);
var filename = string.Format(CultureInfo.InvariantCulture, "VTS_{0:00}_0.IFO", vtsNum);
var vtsPath = allFiles.FirstOrDefault(i => string.Equals(i.Name, filename, StringComparison.OrdinalIgnoreCase)) ??
allFiles.FirstOrDefault(i => string.Equals(i.Name, Path.ChangeExtension(filename, ".bup"), StringComparison.OrdinalIgnoreCase));

View File

@@ -13,7 +13,7 @@ namespace Emby.Dlna.Configuration
public DlnaOptions()
{
EnablePlayTo = true;
EnableServer = true;
EnableServer = false;
BlastAliveMessages = true;
SendOnlyMatchedHost = true;
ClientDiscoveryIntervalSeconds = 60;
@@ -72,7 +72,7 @@ namespace Emby.Dlna.Configuration
/// <summary>
/// Gets or sets the default user account that the dlna server uses.
/// </summary>
public string DefaultUserId { get; set; }
public string? DefaultUserId { get; set; }
/// <summary>
/// Gets or sets a value indicating whether playTo device profiles should be created.

View File

@@ -1,4 +1,3 @@
#nullable enable
#pragma warning disable CS1591
using Emby.Dlna.Configuration;

View File

@@ -31,7 +31,7 @@ namespace Emby.Dlna.ConnectionManager
}
/// <inheritdoc />
protected override void WriteResult(string methodName, IDictionary<string, string> methodParams, XmlWriter xmlWriter)
protected override void WriteResult(string methodName, IReadOnlyDictionary<string, string> methodParams, XmlWriter xmlWriter)
{
if (string.Equals(methodName, "GetProtocolInfo", StringComparison.OrdinalIgnoreCase))
{

View File

@@ -138,7 +138,7 @@ namespace Emby.Dlna.ContentDirectory
/// </summary>
/// <param name="profile">The <see cref="DeviceProfile"/>.</param>
/// <returns>The <see cref="User"/>.</returns>
private User GetUser(DeviceProfile profile)
private User? GetUser(DeviceProfile profile)
{
if (!string.IsNullOrEmpty(profile.UserId))
{

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,3 @@
#pragma warning disable CS1591
using MediaBrowser.Controller.Entities;
namespace Emby.Dlna.ContentDirectory
@@ -13,24 +11,29 @@ namespace Emby.Dlna.ContentDirectory
/// Initializes a new instance of the <see cref="ServerItem"/> class.
/// </summary>
/// <param name="item">The <see cref="BaseItem"/>.</param>
public ServerItem(BaseItem item)
/// <param name="stubType">The stub type.</param>
public ServerItem(BaseItem item, StubType? stubType)
{
Item = item;
if (item is IItemByName && !(item is Folder))
if (stubType.HasValue)
{
StubType = stubType;
}
else if (item is IItemByName and not Folder)
{
StubType = Dlna.ContentDirectory.StubType.Folder;
}
}
/// <summary>
/// Gets or sets the underlying base item.
/// Gets the underlying base item.
/// </summary>
public BaseItem Item { get; set; }
public BaseItem Item { get; }
/// <summary>
/// Gets or sets the DLNA item type.
/// Gets the DLNA item type.
/// </summary>
public StubType? StubType { get; set; }
public StubType? StubType { get; }
}
}

View File

@@ -1,5 +1,4 @@
#pragma warning disable CS1591
#pragma warning disable SA1602
namespace Emby.Dlna.ContentDirectory
{

View File

@@ -1,3 +1,5 @@
#nullable disable
#pragma warning disable CS1591
using System.IO;

View File

@@ -6,9 +6,11 @@ namespace Emby.Dlna
{
public class ControlResponse
{
public ControlResponse()
public ControlResponse(string xml, bool isSuccessful)
{
Headers = new Dictionary<string, string>();
Xml = xml;
IsSuccessful = isSuccessful;
}
public IDictionary<string, string> Headers { get; }

View File

@@ -1,3 +1,5 @@
#nullable disable
#pragma warning disable CS1591
using System;
@@ -39,8 +41,6 @@ namespace Emby.Dlna.Didl
private const string NsUpnp = "urn:schemas-upnp-org:metadata-1-0/upnp/";
private const string NsDlna = "urn:schemas-dlna-org:metadata-1-0/";
private readonly CultureInfo _usCulture = new CultureInfo("en-US");
private readonly DeviceProfile _profile;
private readonly IImageProcessor _imageProcessor;
private readonly string _serverAddress;
@@ -96,6 +96,7 @@ namespace Emby.Dlna.Didl
using (StringWriter builder = new StringWriterWithEncoding(Encoding.UTF8))
{
// If this using are changed to single lines, then write.Flush needs to be appended before the return.
using (var writer = XmlWriter.Create(builder, settings))
{
// writer.WriteStartDocument();
@@ -159,7 +160,7 @@ namespace Emby.Dlna.Didl
else
{
var parent = item.DisplayParentId;
if (!parent.Equals(Guid.Empty))
if (!parent.Equals(default))
{
writer.WriteAttributeString("parentID", GetClientId(parent, null));
}
@@ -207,7 +208,8 @@ namespace Emby.Dlna.Didl
var targetWidth = streamInfo.TargetWidth;
var targetHeight = streamInfo.TargetHeight;
var contentFeatureList = new ContentFeatureBuilder(_profile).BuildVideoHeader(
var contentFeatureList = ContentFeatureBuilder.BuildVideoHeader(
_profile,
streamInfo.Container,
streamInfo.TargetVideoCodec.FirstOrDefault(),
streamInfo.TargetAudioCodec.FirstOrDefault(),
@@ -219,6 +221,7 @@ namespace Emby.Dlna.Didl
streamInfo.IsDirectStream,
streamInfo.RunTimeTicks ?? 0,
streamInfo.TargetVideoProfile,
streamInfo.TargetVideoRangeType,
streamInfo.TargetVideoLevel,
streamInfo.TargetFramerate ?? 0,
streamInfo.TargetPacketLength,
@@ -313,7 +316,7 @@ namespace Emby.Dlna.Didl
if (mediaSource.RunTimeTicks.HasValue)
{
writer.WriteAttributeString("duration", TimeSpan.FromTicks(mediaSource.RunTimeTicks.Value).ToString("c", _usCulture));
writer.WriteAttributeString("duration", TimeSpan.FromTicks(mediaSource.RunTimeTicks.Value).ToString("c", CultureInfo.InvariantCulture));
}
if (filter.Contains("res@size"))
@@ -324,7 +327,7 @@ namespace Emby.Dlna.Didl
if (size.HasValue)
{
writer.WriteAttributeString("size", size.Value.ToString(_usCulture));
writer.WriteAttributeString("size", size.Value.ToString(CultureInfo.InvariantCulture));
}
}
}
@@ -338,7 +341,7 @@ namespace Emby.Dlna.Didl
if (targetChannels.HasValue)
{
writer.WriteAttributeString("nrAudioChannels", targetChannels.Value.ToString(_usCulture));
writer.WriteAttributeString("nrAudioChannels", targetChannels.Value.ToString(CultureInfo.InvariantCulture));
}
if (filter.Contains("res@resolution"))
@@ -357,12 +360,12 @@ namespace Emby.Dlna.Didl
if (targetSampleRate.HasValue)
{
writer.WriteAttributeString("sampleFrequency", targetSampleRate.Value.ToString(_usCulture));
writer.WriteAttributeString("sampleFrequency", targetSampleRate.Value.ToString(CultureInfo.InvariantCulture));
}
if (totalBitrate.HasValue)
{
writer.WriteAttributeString("bitrate", totalBitrate.Value.ToString(_usCulture));
writer.WriteAttributeString("bitrate", totalBitrate.Value.ToString(CultureInfo.InvariantCulture));
}
var mediaProfile = _profile.GetVideoMediaProfile(
@@ -374,6 +377,7 @@ namespace Emby.Dlna.Didl
targetHeight,
streamInfo.TargetVideoBitDepth,
streamInfo.TargetVideoProfile,
streamInfo.TargetVideoRangeType,
streamInfo.TargetVideoLevel,
streamInfo.TargetFramerate ?? 0,
streamInfo.TargetPacketLength,
@@ -548,7 +552,7 @@ namespace Emby.Dlna.Didl
if (mediaSource.RunTimeTicks.HasValue)
{
writer.WriteAttributeString("duration", TimeSpan.FromTicks(mediaSource.RunTimeTicks.Value).ToString("c", _usCulture));
writer.WriteAttributeString("duration", TimeSpan.FromTicks(mediaSource.RunTimeTicks.Value).ToString("c", CultureInfo.InvariantCulture));
}
if (filter.Contains("res@size"))
@@ -559,7 +563,7 @@ namespace Emby.Dlna.Didl
if (size.HasValue)
{
writer.WriteAttributeString("size", size.Value.ToString(_usCulture));
writer.WriteAttributeString("size", size.Value.ToString(CultureInfo.InvariantCulture));
}
}
}
@@ -571,17 +575,17 @@ namespace Emby.Dlna.Didl
if (targetChannels.HasValue)
{
writer.WriteAttributeString("nrAudioChannels", targetChannels.Value.ToString(_usCulture));
writer.WriteAttributeString("nrAudioChannels", targetChannels.Value.ToString(CultureInfo.InvariantCulture));
}
if (targetSampleRate.HasValue)
{
writer.WriteAttributeString("sampleFrequency", targetSampleRate.Value.ToString(_usCulture));
writer.WriteAttributeString("sampleFrequency", targetSampleRate.Value.ToString(CultureInfo.InvariantCulture));
}
if (targetAudioBitrate.HasValue)
{
writer.WriteAttributeString("bitrate", targetAudioBitrate.Value.ToString(_usCulture));
writer.WriteAttributeString("bitrate", targetAudioBitrate.Value.ToString(CultureInfo.InvariantCulture));
}
var mediaProfile = _profile.GetAudioMediaProfile(
@@ -598,7 +602,8 @@ namespace Emby.Dlna.Didl
? MimeTypes.GetMimeType(filename)
: mediaProfile.MimeType;
var contentFeatures = new ContentFeatureBuilder(_profile).BuildAudioHeader(
var contentFeatures = ContentFeatureBuilder.BuildAudioHeader(
_profile,
streamInfo.Container,
streamInfo.TargetAudioCodec.FirstOrDefault(),
targetAudioBitrate,
@@ -634,7 +639,7 @@ namespace Emby.Dlna.Didl
writer.WriteAttributeString("restricted", "1");
writer.WriteAttributeString("searchable", "1");
writer.WriteAttributeString("childCount", childCount.ToString(_usCulture));
writer.WriteAttributeString("childCount", childCount.ToString(CultureInfo.InvariantCulture));
var clientId = GetClientId(folder, stubType);
@@ -654,7 +659,7 @@ namespace Emby.Dlna.Didl
else
{
var parent = folder.DisplayParentId;
if (parent.Equals(Guid.Empty))
if (parent.Equals(default))
{
writer.WriteAttributeString("parentID", "0");
}
@@ -726,7 +731,7 @@ namespace Emby.Dlna.Didl
{
if (item.PremiereDate.HasValue)
{
AddValue(writer, "dc", "date", item.PremiereDate.Value.ToString("o", CultureInfo.InvariantCulture), NsDc);
AddValue(writer, "dc", "date", item.PremiereDate.Value.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture), NsDc);
}
}
@@ -743,7 +748,7 @@ namespace Emby.Dlna.Didl
AddValue(writer, "upnp", "publisher", studio, NsUpnp);
}
if (!(item is Folder))
if (item is not Folder)
{
if (filter.Contains("dc:description"))
{
@@ -926,11 +931,11 @@ namespace Emby.Dlna.Didl
if (item.IndexNumber.HasValue)
{
AddValue(writer, "upnp", "originalTrackNumber", item.IndexNumber.Value.ToString(_usCulture), NsUpnp);
AddValue(writer, "upnp", "originalTrackNumber", item.IndexNumber.Value.ToString(CultureInfo.InvariantCulture), NsUpnp);
if (item is Episode)
{
AddValue(writer, "upnp", "episodeNumber", item.IndexNumber.Value.ToString(_usCulture), NsUpnp);
AddValue(writer, "upnp", "episodeNumber", item.IndexNumber.Value.ToString(CultureInfo.InvariantCulture), NsUpnp);
}
}
}
@@ -973,16 +978,29 @@ namespace Emby.Dlna.Didl
return;
}
var albumartUrlInfo = GetImageUrl(imageInfo, _profile.MaxAlbumArtWidth, _profile.MaxAlbumArtHeight, "jpg");
// TODO: Remove these default values
var albumArtUrlInfo = GetImageUrl(
imageInfo,
_profile.MaxAlbumArtWidth ?? 10000,
_profile.MaxAlbumArtHeight ?? 10000,
"jpg");
writer.WriteStartElement("upnp", "albumArtURI", NsUpnp);
writer.WriteAttributeString("dlna", "profileID", NsDlna, _profile.AlbumArtPn);
writer.WriteString(albumartUrlInfo.url);
if (!string.IsNullOrEmpty(_profile.AlbumArtPn))
{
writer.WriteAttributeString("dlna", "profileID", NsDlna, _profile.AlbumArtPn);
}
writer.WriteString(albumArtUrlInfo.Url);
writer.WriteFullEndElement();
// TOOD: Remove these default values
var iconUrlInfo = GetImageUrl(imageInfo, _profile.MaxIconWidth ?? 48, _profile.MaxIconHeight ?? 48, "jpg");
writer.WriteElementString("upnp", "icon", NsUpnp, iconUrlInfo.url);
// TODO: Remove these default values
var iconUrlInfo = GetImageUrl(
imageInfo,
_profile.MaxIconWidth ?? 48,
_profile.MaxIconHeight ?? 48,
"jpg");
writer.WriteElementString("upnp", "icon", NsUpnp, iconUrlInfo.Url);
if (!_profile.EnableAlbumArtInDidl)
{
@@ -1029,11 +1047,10 @@ namespace Emby.Dlna.Didl
// Images must have a reported size or many clients (Bubble upnp), will only use the first thumbnail
// rather than using a larger one when available
var width = albumartUrlInfo.width ?? maxWidth;
var height = albumartUrlInfo.height ?? maxHeight;
var width = albumartUrlInfo.Width ?? maxWidth;
var height = albumartUrlInfo.Height ?? maxHeight;
var contentFeatures = new ContentFeatureBuilder(_profile)
.BuildImageHeader(format, width, height, imageInfo.IsDirectStream, org_Pn);
var contentFeatures = ContentFeatureBuilder.BuildImageHeader(_profile, format, width, height, imageInfo.IsDirectStream, org_Pn);
writer.WriteAttributeString(
"protocolInfo",
@@ -1047,7 +1064,7 @@ namespace Emby.Dlna.Didl
"resolution",
string.Format(CultureInfo.InvariantCulture, "{0}x{1}", width, height));
writer.WriteString(albumartUrlInfo.url);
writer.WriteString(albumartUrlInfo.Url);
writer.WriteFullEndElement();
}
@@ -1185,7 +1202,7 @@ namespace Emby.Dlna.Didl
return id;
}
private (string url, int? width, int? height) GetImageUrl(ImageDownloadInfo info, int maxWidth, int maxHeight, string format)
private (string Url, int? Width, int? Height) GetImageUrl(ImageDownloadInfo info, int maxWidth, int maxHeight, string format)
{
var url = string.Format(
CultureInfo.InvariantCulture,
@@ -1205,8 +1222,7 @@ namespace Emby.Dlna.Didl
if (width.HasValue && height.HasValue)
{
var newSize = DrawingUtils.Resize(
new ImageDimensions(width.Value, height.Value), 0, 0, maxWidth, maxHeight);
var newSize = DrawingUtils.Resize(new ImageDimensions(width.Value, height.Value), 0, 0, maxWidth, maxHeight);
width = newSize.Width;
height = newSize.Height;

View File

@@ -17,8 +17,7 @@ namespace Emby.Dlna.Didl
public Filter(string filter)
{
_all = string.Equals(filter, "*", StringComparison.OrdinalIgnoreCase);
_fields = (filter ?? string.Empty).Split(',', StringSplitOptions.RemoveEmptyEntries);
_fields = filter.Split(',', StringSplitOptions.RemoveEmptyEntries);
}
public bool Contains(string field)

View File

@@ -9,7 +9,7 @@ namespace Emby.Dlna.Didl
{
public class StringWriterWithEncoding : StringWriter
{
private readonly Encoding _encoding;
private readonly Encoding? _encoding;
public StringWriterWithEncoding()
{

View File

@@ -1,4 +1,3 @@
#nullable enable
#pragma warning disable CS1591
using System.Collections.Generic;

View File

@@ -1,16 +1,16 @@
#pragma warning disable CS1591
using System;
using System.Collections.Generic;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Text.Json;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using Emby.Dlna.Profiles;
using Emby.Dlna.Server;
using Jellyfin.Extensions.Json;
using MediaBrowser.Common.Configuration;
using MediaBrowser.Common.Extensions;
using MediaBrowser.Controller;
@@ -32,9 +32,9 @@ namespace Emby.Dlna
private readonly IXmlSerializer _xmlSerializer;
private readonly IFileSystem _fileSystem;
private readonly ILogger<DlnaManager> _logger;
private readonly IJsonSerializer _jsonSerializer;
private readonly IServerApplicationHost _appHost;
private static readonly Assembly _assembly = typeof(DlnaManager).Assembly;
private readonly JsonSerializerOptions _jsonOptions = JsonDefaults.Options;
private readonly Dictionary<string, Tuple<InternalProfileInfo, DeviceProfile>> _profiles = new Dictionary<string, Tuple<InternalProfileInfo, DeviceProfile>>(StringComparer.Ordinal);
@@ -43,14 +43,12 @@ namespace Emby.Dlna
IFileSystem fileSystem,
IApplicationPaths appPaths,
ILoggerFactory loggerFactory,
IJsonSerializer jsonSerializer,
IServerApplicationHost appHost)
{
_xmlSerializer = xmlSerializer;
_fileSystem = fileSystem;
_appPaths = appPaths;
_logger = loggerFactory.CreateLogger<DlnaManager>();
_jsonSerializer = jsonSerializer;
_appHost = appHost;
}
@@ -85,8 +83,7 @@ namespace Emby.Dlna
{
lock (_profiles)
{
var list = _profiles.Values.ToList();
return list
return _profiles.Values
.OrderBy(i => i.Item1.Info.Type == DeviceProfileType.User ? 0 : 1)
.ThenBy(i => i.Item1.Info.Name)
.Select(i => i.Item2)
@@ -94,12 +91,14 @@ namespace Emby.Dlna
}
}
/// <inheritdoc />
public DeviceProfile GetDefaultProfile()
{
return new DefaultProfile();
}
public DeviceProfile GetProfile(DeviceIdentification deviceInfo)
/// <inheritdoc />
public DeviceProfile? GetProfile(DeviceIdentification deviceInfo)
{
if (deviceInfo == null)
{
@@ -109,109 +108,57 @@ namespace Emby.Dlna
var profile = GetProfiles()
.FirstOrDefault(i => i.Identification != null && IsMatch(deviceInfo, i.Identification));
if (profile != null)
if (profile == null)
{
_logger.LogDebug("Found matching device profile: {0}", profile.Name);
_logger.LogInformation("No matching device profile found. The default will need to be used. \n{@Profile}", deviceInfo);
}
else
{
LogUnmatchedProfile(deviceInfo);
_logger.LogDebug("Found matching device profile: {ProfileName}", profile.Name);
}
return profile;
}
private void LogUnmatchedProfile(DeviceIdentification profile)
/// <summary>
/// Attempts to match a device with a profile.
/// Rules:
/// - If the profile field has no value, the field matches irregardless of its contents.
/// - the profile field can be an exact match, or a reg exp.
/// </summary>
/// <param name="deviceInfo">The <see cref="DeviceIdentification"/> of the device.</param>
/// <param name="profileInfo">The <see cref="DeviceIdentification"/> of the profile.</param>
/// <returns><b>True</b> if they match.</returns>
public bool IsMatch(DeviceIdentification deviceInfo, DeviceIdentification profileInfo)
{
var builder = new StringBuilder();
builder.AppendLine("No matching device profile found. The default will need to be used.");
builder.Append("FriendlyName:").AppendLine(profile.FriendlyName);
builder.Append("Manufacturer:").AppendLine(profile.Manufacturer);
builder.Append("ManufacturerUrl:").AppendLine(profile.ManufacturerUrl);
builder.Append("ModelDescription:").AppendLine(profile.ModelDescription);
builder.Append("ModelName:").AppendLine(profile.ModelName);
builder.Append("ModelNumber:").AppendLine(profile.ModelNumber);
builder.Append("ModelUrl:").AppendLine(profile.ModelUrl);
builder.Append("SerialNumber:").AppendLine(profile.SerialNumber);
_logger.LogInformation(builder.ToString());
}
private bool IsMatch(DeviceIdentification deviceInfo, DeviceIdentification profileInfo)
{
if (!string.IsNullOrEmpty(profileInfo.FriendlyName))
{
if (deviceInfo.FriendlyName == null || !IsRegexOrSubstringMatch(deviceInfo.FriendlyName, profileInfo.FriendlyName))
{
return false;
}
}
if (!string.IsNullOrEmpty(profileInfo.Manufacturer))
{
if (deviceInfo.Manufacturer == null || !IsRegexOrSubstringMatch(deviceInfo.Manufacturer, profileInfo.Manufacturer))
{
return false;
}
}
if (!string.IsNullOrEmpty(profileInfo.ManufacturerUrl))
{
if (deviceInfo.ManufacturerUrl == null || !IsRegexOrSubstringMatch(deviceInfo.ManufacturerUrl, profileInfo.ManufacturerUrl))
{
return false;
}
}
if (!string.IsNullOrEmpty(profileInfo.ModelDescription))
{
if (deviceInfo.ModelDescription == null || !IsRegexOrSubstringMatch(deviceInfo.ModelDescription, profileInfo.ModelDescription))
{
return false;
}
}
if (!string.IsNullOrEmpty(profileInfo.ModelName))
{
if (deviceInfo.ModelName == null || !IsRegexOrSubstringMatch(deviceInfo.ModelName, profileInfo.ModelName))
{
return false;
}
}
if (!string.IsNullOrEmpty(profileInfo.ModelNumber))
{
if (deviceInfo.ModelNumber == null || !IsRegexOrSubstringMatch(deviceInfo.ModelNumber, profileInfo.ModelNumber))
{
return false;
}
}
if (!string.IsNullOrEmpty(profileInfo.ModelUrl))
{
if (deviceInfo.ModelUrl == null || !IsRegexOrSubstringMatch(deviceInfo.ModelUrl, profileInfo.ModelUrl))
{
return false;
}
}
if (!string.IsNullOrEmpty(profileInfo.SerialNumber))
{
if (deviceInfo.SerialNumber == null || !IsRegexOrSubstringMatch(deviceInfo.SerialNumber, profileInfo.SerialNumber))
{
return false;
}
}
return true;
return IsRegexOrSubstringMatch(deviceInfo.FriendlyName, profileInfo.FriendlyName)
&& IsRegexOrSubstringMatch(deviceInfo.Manufacturer, profileInfo.Manufacturer)
&& IsRegexOrSubstringMatch(deviceInfo.ManufacturerUrl, profileInfo.ManufacturerUrl)
&& IsRegexOrSubstringMatch(deviceInfo.ModelDescription, profileInfo.ModelDescription)
&& IsRegexOrSubstringMatch(deviceInfo.ModelName, profileInfo.ModelName)
&& IsRegexOrSubstringMatch(deviceInfo.ModelNumber, profileInfo.ModelNumber)
&& IsRegexOrSubstringMatch(deviceInfo.ModelUrl, profileInfo.ModelUrl)
&& IsRegexOrSubstringMatch(deviceInfo.SerialNumber, profileInfo.SerialNumber);
}
private bool IsRegexOrSubstringMatch(string input, string pattern)
{
if (string.IsNullOrEmpty(pattern))
{
// In profile identification: An empty pattern matches anything.
return true;
}
if (string.IsNullOrEmpty(input))
{
// The profile contains a value, and the device doesn't.
return false;
}
try
{
return input.Contains(pattern, StringComparison.OrdinalIgnoreCase) || Regex.IsMatch(input, pattern, RegexOptions.IgnoreCase | RegexOptions.CultureInvariant);
return input.Equals(pattern, StringComparison.OrdinalIgnoreCase)
|| Regex.IsMatch(input, pattern, RegexOptions.IgnoreCase | RegexOptions.CultureInvariant);
}
catch (ArgumentException ex)
{
@@ -220,7 +167,8 @@ namespace Emby.Dlna
}
}
public DeviceProfile GetProfile(IHeaderDictionary headers)
/// <inheritdoc />
public DeviceProfile? GetProfile(IHeaderDictionary headers)
{
if (headers == null)
{
@@ -228,15 +176,13 @@ namespace Emby.Dlna
}
var profile = GetProfiles().FirstOrDefault(i => i.Identification != null && IsMatch(headers, i.Identification));
if (profile != null)
if (profile == null)
{
_logger.LogDebug("Found matching device profile: {0}", profile.Name);
_logger.LogDebug("No matching device profile found. {@Headers}", headers);
}
else
{
var headerString = string.Join(", ", headers.Select(i => string.Format(CultureInfo.InvariantCulture, "{0}={1}", i.Key, i.Value)));
_logger.LogDebug("No matching device profile found. {0}", headerString);
_logger.LogDebug("Found matching device profile: {0}", profile.Name);
}
return profile;
@@ -279,37 +225,31 @@ namespace Emby.Dlna
{
try
{
var xmlFies = _fileSystem.GetFilePaths(path)
return _fileSystem.GetFilePaths(path)
.Where(i => string.Equals(Path.GetExtension(i), ".xml", StringComparison.OrdinalIgnoreCase))
.ToList();
return xmlFies
.Select(i => ParseProfileFile(i, type))
.Where(i => i != null)
.ToList();
.ToList()!; // We just filtered out all the nulls
}
catch (IOException)
{
return new List<DeviceProfile>();
return Array.Empty<DeviceProfile>();
}
}
private DeviceProfile ParseProfileFile(string path, DeviceProfileType type)
private DeviceProfile? ParseProfileFile(string path, DeviceProfileType type)
{
lock (_profiles)
{
if (_profiles.TryGetValue(path, out Tuple<InternalProfileInfo, DeviceProfile> profileTuple))
if (_profiles.TryGetValue(path, out Tuple<InternalProfileInfo, DeviceProfile>? profileTuple))
{
return profileTuple.Item2;
}
try
{
DeviceProfile profile;
var tempProfile = (DeviceProfile)_xmlSerializer.DeserializeFromFile(typeof(DeviceProfile), path);
profile = ReserializeProfile(tempProfile);
var profile = ReserializeProfile(tempProfile);
profile.Id = path.ToLowerInvariant().GetMD5().ToString("N", CultureInfo.InvariantCulture);
@@ -326,14 +266,20 @@ namespace Emby.Dlna
}
}
public DeviceProfile GetProfile(string id)
/// <inheritdoc />
public DeviceProfile? GetProfile(string id)
{
if (string.IsNullOrEmpty(id))
{
throw new ArgumentNullException(nameof(id));
}
var info = GetProfileInfosInternal().First(i => string.Equals(i.Info.Id, id, StringComparison.OrdinalIgnoreCase));
var info = GetProfileInfosInternal().FirstOrDefault(i => string.Equals(i.Info.Id, id, StringComparison.OrdinalIgnoreCase));
if (info == null)
{
return null;
}
return ParseProfileFile(info.Path, info.Info.Type);
}
@@ -342,14 +288,14 @@ namespace Emby.Dlna
{
lock (_profiles)
{
var list = _profiles.Values.ToList();
return list
return _profiles.Values
.Select(i => i.Item1)
.OrderBy(i => i.Info.Type == DeviceProfileType.User ? 0 : 1)
.ThenBy(i => i.Info.Name);
}
}
/// <inheritdoc />
public IEnumerable<DeviceProfileInfo> GetProfileInfos()
{
return GetProfileInfosInternal().Select(i => i.Info);
@@ -357,17 +303,14 @@ namespace Emby.Dlna
private InternalProfileInfo GetInternalProfileInfo(FileSystemMetadata file, DeviceProfileType type)
{
return new InternalProfileInfo
{
Path = file.FullName,
Info = new DeviceProfileInfo
return new InternalProfileInfo(
new DeviceProfileInfo
{
Id = file.FullName.ToLowerInvariant().GetMD5().ToString("N", CultureInfo.InvariantCulture),
Name = _fileSystem.GetFileNameWithoutExtension(file),
Type = type
}
};
},
file.FullName);
}
private async Task ExtractSystemProfilesAsync()
@@ -387,15 +330,21 @@ namespace Emby.Dlna
systemProfilesPath,
Path.GetFileName(name.AsSpan()).Slice(namespaceName.Length));
using (var stream = _assembly.GetManifestResourceStream(name))
// The stream should exist as we just got its name from GetManifestResourceNames
using (var stream = _assembly.GetManifestResourceStream(name)!)
{
var length = stream.Length;
var fileInfo = _fileSystem.GetFileInfo(path);
if (!fileInfo.Exists || fileInfo.Length != stream.Length)
if (!fileInfo.Exists || fileInfo.Length != length)
{
Directory.CreateDirectory(systemProfilesPath);
using (var fileStream = new FileStream(path, FileMode.Create, FileAccess.Write, FileShare.Read))
var fileOptions = AsyncFile.WriteOptions;
fileOptions.Mode = FileMode.Create;
fileOptions.PreallocationSize = length;
var fileStream = new FileStream(path, fileOptions);
await using (fileStream.ConfigureAwait(false))
{
await stream.CopyToAsync(fileStream).ConfigureAwait(false);
}
@@ -407,6 +356,7 @@ namespace Emby.Dlna
Directory.CreateDirectory(UserProfilesPath);
}
/// <inheritdoc />
public void DeleteProfile(string id)
{
var info = GetProfileInfosInternal().First(i => string.Equals(id, i.Info.Id, StringComparison.OrdinalIgnoreCase));
@@ -424,6 +374,7 @@ namespace Emby.Dlna
}
}
/// <inheritdoc />
public void CreateProfile(DeviceProfile profile)
{
profile = ReserializeProfile(profile);
@@ -439,7 +390,8 @@ namespace Emby.Dlna
SaveProfile(profile, path, DeviceProfileType.User);
}
public void UpdateProfile(DeviceProfile profile)
/// <inheritdoc />
public void UpdateProfile(string profileId, DeviceProfile profile)
{
profile = ReserializeProfile(profile);
@@ -453,7 +405,7 @@ namespace Emby.Dlna
throw new ArgumentException("Profile is missing Name");
}
var current = GetProfileInfosInternal().First(i => string.Equals(i.Info.Id, profile.Id, StringComparison.OrdinalIgnoreCase));
var current = GetProfileInfosInternal().First(i => string.Equals(i.Info.Id, profileId, StringComparison.OrdinalIgnoreCase));
var newFilename = _fileSystem.GetValidFilename(profile.Name) + ".xml";
var path = Path.Combine(UserProfilesPath, newFilename);
@@ -495,40 +447,53 @@ namespace Emby.Dlna
return profile;
}
var json = _jsonSerializer.SerializeToString(profile);
var json = JsonSerializer.Serialize(profile, _jsonOptions);
return _jsonSerializer.DeserializeFromString<DeviceProfile>(json);
// Output can't be null if the input isn't null
return JsonSerializer.Deserialize<DeviceProfile>(json, _jsonOptions)!;
}
/// <inheritdoc />
public string GetServerDescriptionXml(IHeaderDictionary headers, string serverUuId, string serverAddress)
{
var profile = GetDefaultProfile();
var profile = GetProfile(headers) ?? GetDefaultProfile();
var serverId = _appHost.SystemId;
return new DescriptionXmlBuilder(profile, serverUuId, serverAddress, _appHost.FriendlyName, serverId).GetXml();
}
public ImageStream GetIcon(string filename)
/// <inheritdoc />
public ImageStream? GetIcon(string filename)
{
var format = filename.EndsWith(".png", StringComparison.OrdinalIgnoreCase)
? ImageFormat.Png
: ImageFormat.Jpg;
var resource = GetType().Namespace + ".Images." + filename.ToLowerInvariant();
return new ImageStream
var stream = _assembly.GetManifestResourceStream(resource);
if (stream == null)
{
Format = format,
Stream = _assembly.GetManifestResourceStream(resource)
return null;
}
return new ImageStream(stream)
{
Format = format
};
}
private class InternalProfileInfo
{
internal DeviceProfileInfo Info { get; set; }
internal InternalProfileInfo(DeviceProfileInfo info, string path)
{
Info = info;
Path = path;
}
internal string Path { get; set; }
internal DeviceProfileInfo Info { get; }
internal string Path { get; }
}
}
@@ -553,7 +518,7 @@ namespace Emby.Dlna
private void DumpProfiles()
{
DeviceProfile[] list = new []
DeviceProfile[] list = new[]
{
new SamsungSmartTvProfile(),
new XboxOneProfile(),

View File

@@ -17,24 +17,26 @@
</ItemGroup>
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<TargetFramework>net6.0</TargetFramework>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
</PropertyGroup>
<!-- Code Analyzers-->
<ItemGroup Condition=" '$(Configuration)' == 'Debug' ">
<PackageReference Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="2.9.8" PrivateAssets="All" />
<PackageReference Include="Microsoft.CodeAnalysis.BannedApiAnalyzers" Version="3.3.3">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
<PackageReference Include="SerilogAnalyzer" Version="0.15.0" PrivateAssets="All" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="All" />
<PackageReference Include="StyleCop.Analyzers" Version="1.2.0-beta.406" PrivateAssets="All" />
<PackageReference Include="SmartAnalyzers.MultithreadingAnalyzer" Version="1.1.31" PrivateAssets="All" />
</ItemGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<CodeAnalysisRuleSet>../jellyfin.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>
<ItemGroup>
<EmbeddedResource Include="Images\logo120.jpg" />
<EmbeddedResource Include="Images\logo120.png" />
@@ -78,9 +80,7 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Http" Version="2.2.2" />
<PackageReference Include="Microsoft.AspNetCore.WebUtilities" Version="2.2.0" />
<PackageReference Include="Microsoft.Extensions.Http" Version="3.1.6" />
<PackageReference Include="Microsoft.Extensions.Http" Version="6.0.0" />
</ItemGroup>
</Project>

View File

@@ -6,8 +6,10 @@ namespace Emby.Dlna
{
public class EventSubscriptionResponse
{
public EventSubscriptionResponse()
public EventSubscriptionResponse(string content, string contentType)
{
Content = content;
ContentType = contentType;
Headers = new Dictionary<string, string>();
}

View File

@@ -1,3 +1,5 @@
#nullable disable
#pragma warning disable CS1591
using System;
@@ -9,6 +11,7 @@ using System.Net.Http;
using System.Net.Mime;
using System.Text;
using System.Threading.Tasks;
using Jellyfin.Extensions;
using MediaBrowser.Common.Extensions;
using MediaBrowser.Common.Net;
using Microsoft.Extensions.Logging;
@@ -23,8 +26,6 @@ namespace Emby.Dlna.Eventing
private readonly ILogger _logger;
private readonly IHttpClientFactory _httpClientFactory;
private readonly CultureInfo _usCulture = new CultureInfo("en-US");
public DlnaEventManager(ILogger logger, IHttpClientFactory httpClientFactory)
{
_httpClientFactory = httpClientFactory;
@@ -49,11 +50,7 @@ namespace Emby.Dlna.Eventing
return GetEventSubscriptionResponse(subscriptionId, requestedTimeoutString, timeoutSeconds);
}
return new EventSubscriptionResponse
{
Content = string.Empty,
ContentType = "text/plain"
};
return new EventSubscriptionResponse(string.Empty, "text/plain");
}
public EventSubscriptionResponse CreateEventSubscription(string notificationType, string requestedTimeoutString, string callbackUrl)
@@ -84,9 +81,7 @@ namespace Emby.Dlna.Eventing
if (!string.IsNullOrEmpty(header))
{
// Starts with SECOND-
header = header.Split('-')[^1];
if (int.TryParse(header, NumberStyles.Integer, _usCulture, out var val))
if (int.TryParse(header.AsSpan().RightPart('-'), NumberStyles.Integer, CultureInfo.InvariantCulture, out var val))
{
return val;
}
@@ -101,23 +96,15 @@ namespace Emby.Dlna.Eventing
_subscriptions.TryRemove(subscriptionId, out _);
return new EventSubscriptionResponse
{
Content = string.Empty,
ContentType = "text/plain"
};
return new EventSubscriptionResponse(string.Empty, "text/plain");
}
private EventSubscriptionResponse GetEventSubscriptionResponse(string subscriptionId, string requestedTimeoutString, int timeoutSeconds)
{
var response = new EventSubscriptionResponse
{
Content = string.Empty,
ContentType = "text/plain"
};
var response = new EventSubscriptionResponse(string.Empty, "text/plain");
response.Headers["SID"] = subscriptionId;
response.Headers["TIMEOUT"] = string.IsNullOrEmpty(requestedTimeoutString) ? ("SECOND-" + timeoutSeconds.ToString(_usCulture)) : requestedTimeoutString;
response.Headers["TIMEOUT"] = string.IsNullOrEmpty(requestedTimeoutString) ? ("SECOND-" + timeoutSeconds.ToString(CultureInfo.InvariantCulture)) : requestedTimeoutString;
return response;
}
@@ -174,7 +161,7 @@ namespace Emby.Dlna.Eventing
options.Headers.TryAddWithoutValidation("NT", subscription.NotificationType);
options.Headers.TryAddWithoutValidation("NTS", "upnp:propchange");
options.Headers.TryAddWithoutValidation("SID", subscription.Id);
options.Headers.TryAddWithoutValidation("SEQ", subscription.TriggerCount.ToString(_usCulture));
options.Headers.TryAddWithoutValidation("SEQ", subscription.TriggerCount.ToString(CultureInfo.InvariantCulture));
try
{

View File

@@ -1,3 +1,5 @@
#nullable disable
#pragma warning disable CS1591
using System;

View File

@@ -1,3 +1,5 @@
#nullable disable
#pragma warning disable CS1591
using System;
@@ -5,7 +7,6 @@ using System.Globalization;
using System.Linq;
using System.Net.Http;
using System.Net.Sockets;
using System.Threading;
using System.Threading.Tasks;
using Emby.Dlna.PlayTo;
using Emby.Dlna.Ssdp;
@@ -26,11 +27,9 @@ using MediaBrowser.Controller.TV;
using MediaBrowser.Model.Dlna;
using MediaBrowser.Model.Globalization;
using MediaBrowser.Model.Net;
using MediaBrowser.Model.System;
using Microsoft.Extensions.Logging;
using Rssdp;
using Rssdp.Infrastructure;
using OperatingSystem = MediaBrowser.Common.System.OperatingSystem;
namespace Emby.Dlna.Main
{
@@ -53,7 +52,6 @@ namespace Emby.Dlna.Main
private readonly ISocketFactory _socketFactory;
private readonly INetworkManager _networkManager;
private readonly object _syncLock = new object();
private readonly NetworkConfiguration _netConfig;
private readonly bool _disabled;
private PlayToManager _manager;
@@ -126,9 +124,10 @@ namespace Emby.Dlna.Main
config);
Current = this;
_netConfig = config.GetConfiguration<NetworkConfiguration>("network");
_disabled = appHost.ListenWithHttps && _netConfig.RequireHttps;
if (_disabled)
var netConfig = config.GetConfiguration<NetworkConfiguration>(NetworkConfigurationStore.StoreKey);
_disabled = appHost.ListenWithHttps && netConfig.RequireHttps;
if (_disabled && _config.GetDlnaConfiguration().EnableServer)
{
_logger.LogError("The DLNA specification does not support HTTPS.");
}
@@ -202,8 +201,8 @@ namespace Emby.Dlna.Main
{
if (_communicationsServer == null)
{
var enableMultiSocketBinding = OperatingSystem.Id == OperatingSystemId.Windows ||
OperatingSystem.Id == OperatingSystemId.Linux;
var enableMultiSocketBinding = OperatingSystem.IsWindows() ||
OperatingSystem.IsLinux();
_communicationsServer = new SsdpCommunicationsServer(_socketFactory, _networkManager, _logger, enableMultiSocketBinding)
{
@@ -219,16 +218,14 @@ namespace Emby.Dlna.Main
}
}
private void LogMessage(string msg)
{
_logger.LogDebug(msg);
}
private void StartDeviceDiscovery(ISsdpCommunicationsServer communicationsServer)
{
try
{
((DeviceDiscovery)_deviceDiscovery).Start(communicationsServer);
if (communicationsServer != null)
{
((DeviceDiscovery)_deviceDiscovery).Start(communicationsServer);
}
}
catch (Exception ex)
{
@@ -263,9 +260,13 @@ namespace Emby.Dlna.Main
try
{
_publisher = new SsdpDevicePublisher(_communicationsServer, _networkManager, OperatingSystem.Name, Environment.OSVersion.VersionString, _config.GetDlnaConfiguration().SendOnlyMatchedHost)
_publisher = new SsdpDevicePublisher(
_communicationsServer,
MediaBrowser.Common.System.OperatingSystem.Name,
Environment.OSVersion.VersionString,
_config.GetDlnaConfiguration().SendOnlyMatchedHost)
{
LogFunction = LogMessage,
LogFunction = (msg) => _logger.LogDebug("{Msg}", msg),
SupportPnpRootDevice = false
};
@@ -310,12 +311,9 @@ namespace Emby.Dlna.Main
var fullService = "urn:schemas-upnp-org:device:MediaServer:1";
_logger.LogInformation("Registering publisher for {0} on {1}", fullService, address);
_logger.LogInformation("Registering publisher for {ResourceName} on {DeviceAddress}", fullService, address);
var uri = new UriBuilder(_appHost.GetSmartApiUrl(address.Address) + descriptorUri);
// DLNA will only work over http, so we must reset to http:// : {port}
uri.Scheme = "http://";
uri.Port = _netConfig.PublicPort;
var uri = new UriBuilder(_appHost.GetApiUrlForLocalAccess(address, false) + descriptorUri);
var device = new SsdpRootDevice
{
@@ -364,7 +362,7 @@ namespace Emby.Dlna.Main
guid = text.GetMD5();
}
return guid.ToString("N", CultureInfo.InvariantCulture);
return guid.ToString("D", CultureInfo.InvariantCulture);
}
private void SetProperies(SsdpDevice device, string fullDeviceType)
@@ -401,7 +399,6 @@ namespace Emby.Dlna.Main
_imageProcessor,
_deviceDiscovery,
_httpClientFactory,
_config,
_userDataManager,
_localization,
_mediaSourceManager,

View File

@@ -24,7 +24,7 @@ namespace Emby.Dlna.MediaReceiverRegistrar
}
/// <inheritdoc />
protected override void WriteResult(string methodName, IDictionary<string, string> methodParams, XmlWriter xmlWriter)
protected override void WriteResult(string methodName, IReadOnlyDictionary<string, string> methodParams, XmlWriter xmlWriter)
{
if (string.Equals(methodName, "IsAuthorized", StringComparison.OrdinalIgnoreCase))
{

View File

@@ -1,7 +1,6 @@
using System.Collections.Generic;
using Emby.Dlna.Common;
using Emby.Dlna.Service;
using MediaBrowser.Model.Dlna;
namespace Emby.Dlna.MediaReceiverRegistrar
{

View File

@@ -1,3 +1,5 @@
#nullable disable
#pragma warning disable CS1591
using System;
@@ -18,8 +20,6 @@ namespace Emby.Dlna.PlayTo
{
public class Device : IDisposable
{
private static readonly CultureInfo UsCulture = new CultureInfo("en-US");
private readonly IHttpClientFactory _httpClientFactory;
private readonly ILogger _logger;
@@ -69,11 +69,11 @@ namespace Emby.Dlna.PlayTo
public TransportState TransportState { get; private set; }
public bool IsPlaying => TransportState == TransportState.Playing;
public bool IsPlaying => TransportState == TransportState.PLAYING;
public bool IsPaused => TransportState == TransportState.Paused || TransportState == TransportState.PausedPlayback;
public bool IsPaused => TransportState == TransportState.PAUSED_PLAYBACK;
public bool IsStopped => TransportState == TransportState.Stopped;
public bool IsStopped => TransportState == TransportState.STOPPED;
public Action OnDeviceUnavailable { get; set; }
@@ -219,7 +219,7 @@ namespace Emby.Dlna.PlayTo
{
var rendererCommands = await GetRenderingProtocolAsync(cancellationToken).ConfigureAwait(false);
var command = rendererCommands.ServiceActions.FirstOrDefault(c => c.Name == "SetMute");
var command = rendererCommands?.ServiceActions.FirstOrDefault(c => c.Name == "SetMute");
if (command == null)
{
return false;
@@ -235,7 +235,13 @@ namespace Emby.Dlna.PlayTo
_logger.LogDebug("Setting mute");
var value = mute ? 1 : 0;
await new SsdpHttpClient(_httpClientFactory).SendCommandAsync(Properties.BaseUrl, service, command.Name, rendererCommands.BuildPost(command, service.ServiceType, value))
await new SsdpHttpClient(_httpClientFactory)
.SendCommandAsync(
Properties.BaseUrl,
service,
command.Name,
rendererCommands.BuildPost(command, service.ServiceType, value),
cancellationToken: cancellationToken)
.ConfigureAwait(false);
IsMuted = mute;
@@ -253,7 +259,7 @@ namespace Emby.Dlna.PlayTo
{
var rendererCommands = await GetRenderingProtocolAsync(cancellationToken).ConfigureAwait(false);
var command = rendererCommands.ServiceActions.FirstOrDefault(c => c.Name == "SetVolume");
var command = rendererCommands?.ServiceActions.FirstOrDefault(c => c.Name == "SetVolume");
if (command == null)
{
return;
@@ -270,7 +276,13 @@ namespace Emby.Dlna.PlayTo
// Remote control will perform better
Volume = value;
await new SsdpHttpClient(_httpClientFactory).SendCommandAsync(Properties.BaseUrl, service, command.Name, rendererCommands.BuildPost(command, service.ServiceType, value))
await new SsdpHttpClient(_httpClientFactory)
.SendCommandAsync(
Properties.BaseUrl,
service,
command.Name,
rendererCommands.BuildPost(command, service.ServiceType, value),
cancellationToken: cancellationToken)
.ConfigureAwait(false);
}
@@ -278,7 +290,7 @@ namespace Emby.Dlna.PlayTo
{
var avCommands = await GetAVProtocolAsync(cancellationToken).ConfigureAwait(false);
var command = avCommands.ServiceActions.FirstOrDefault(c => c.Name == "Seek");
var command = avCommands?.ServiceActions.FirstOrDefault(c => c.Name == "Seek");
if (command == null)
{
return;
@@ -291,7 +303,13 @@ namespace Emby.Dlna.PlayTo
throw new InvalidOperationException("Unable to find service");
}
await new SsdpHttpClient(_httpClientFactory).SendCommandAsync(Properties.BaseUrl, service, command.Name, avCommands.BuildPost(command, service.ServiceType, string.Format(CultureInfo.InvariantCulture, "{0:hh}:{0:mm}:{0:ss}", value), "REL_TIME"))
await new SsdpHttpClient(_httpClientFactory)
.SendCommandAsync(
Properties.BaseUrl,
service,
command.Name,
avCommands.BuildPost(command, service.ServiceType, string.Format(CultureInfo.InvariantCulture, "{0:hh}:{0:mm}:{0:ss}", value), "REL_TIME"),
cancellationToken: cancellationToken)
.ConfigureAwait(false);
RestartTimer(true);
@@ -305,7 +323,7 @@ namespace Emby.Dlna.PlayTo
_logger.LogDebug("{0} - SetAvTransport Uri: {1} DlnaHeaders: {2}", Properties.Name, url, header);
var command = avCommands.ServiceActions.FirstOrDefault(c => c.Name == "SetAVTransportURI");
var command = avCommands?.ServiceActions.FirstOrDefault(c => c.Name == "SetAVTransportURI");
if (command == null)
{
return;
@@ -325,14 +343,21 @@ namespace Emby.Dlna.PlayTo
}
var post = avCommands.BuildPost(command, service.ServiceType, url, dictionary);
await new SsdpHttpClient(_httpClientFactory).SendCommandAsync(Properties.BaseUrl, service, command.Name, post, header: header)
await new SsdpHttpClient(_httpClientFactory)
.SendCommandAsync(
Properties.BaseUrl,
service,
command.Name,
post,
header: header,
cancellationToken: cancellationToken)
.ConfigureAwait(false);
await Task.Delay(50).ConfigureAwait(false);
await Task.Delay(50, cancellationToken).ConfigureAwait(false);
try
{
await SetPlay(avCommands, CancellationToken.None).ConfigureAwait(false);
await SetPlay(avCommands, cancellationToken).ConfigureAwait(false);
}
catch
{
@@ -343,6 +368,42 @@ namespace Emby.Dlna.PlayTo
RestartTimer(true);
}
/*
* SetNextAvTransport is used to specify to the DLNA device what is the next track to play.
* Without that information, the next track command on the device does not work.
*/
public async Task SetNextAvTransport(string url, string header, string metaData, CancellationToken cancellationToken = default)
{
var avCommands = await GetAVProtocolAsync(cancellationToken).ConfigureAwait(false);
url = url.Replace("&", "&amp;", StringComparison.Ordinal);
_logger.LogDebug("{PropertyName} - SetNextAvTransport Uri: {Url} DlnaHeaders: {Header}", Properties.Name, url, header);
var command = avCommands.ServiceActions.FirstOrDefault(c => string.Equals(c.Name, "SetNextAVTransportURI", StringComparison.OrdinalIgnoreCase));
if (command == null)
{
return;
}
var dictionary = new Dictionary<string, string>
{
{ "NextURI", url },
{ "NextURIMetaData", CreateDidlMeta(metaData) }
};
var service = GetAvTransportService();
if (service == null)
{
throw new InvalidOperationException("Unable to find service");
}
var post = avCommands.BuildPost(command, service.ServiceType, url, dictionary);
await new SsdpHttpClient(_httpClientFactory).SendCommandAsync(Properties.BaseUrl, service, command.Name, post, header: header, cancellationToken)
.ConfigureAwait(false);
}
private static string CreateDidlMeta(string value)
{
if (string.IsNullOrEmpty(value))
@@ -378,6 +439,10 @@ namespace Emby.Dlna.PlayTo
public async Task SetPlay(CancellationToken cancellationToken)
{
var avCommands = await GetAVProtocolAsync(cancellationToken).ConfigureAwait(false);
if (avCommands == null)
{
return;
}
await SetPlay(avCommands, cancellationToken).ConfigureAwait(false);
@@ -388,7 +453,7 @@ namespace Emby.Dlna.PlayTo
{
var avCommands = await GetAVProtocolAsync(cancellationToken).ConfigureAwait(false);
var command = avCommands.ServiceActions.FirstOrDefault(c => c.Name == "Stop");
var command = avCommands?.ServiceActions.FirstOrDefault(c => c.Name == "Stop");
if (command == null)
{
return;
@@ -396,7 +461,13 @@ namespace Emby.Dlna.PlayTo
var service = GetAvTransportService();
await new SsdpHttpClient(_httpClientFactory).SendCommandAsync(Properties.BaseUrl, service, command.Name, avCommands.BuildPost(command, service.ServiceType, 1))
await new SsdpHttpClient(_httpClientFactory)
.SendCommandAsync(
Properties.BaseUrl,
service,
command.Name,
avCommands.BuildPost(command, service.ServiceType, 1),
cancellationToken: cancellationToken)
.ConfigureAwait(false);
RestartTimer(true);
@@ -406,7 +477,7 @@ namespace Emby.Dlna.PlayTo
{
var avCommands = await GetAVProtocolAsync(cancellationToken).ConfigureAwait(false);
var command = avCommands.ServiceActions.FirstOrDefault(c => c.Name == "Pause");
var command = avCommands?.ServiceActions.FirstOrDefault(c => c.Name == "Pause");
if (command == null)
{
return;
@@ -414,10 +485,16 @@ namespace Emby.Dlna.PlayTo
var service = GetAvTransportService();
await new SsdpHttpClient(_httpClientFactory).SendCommandAsync(Properties.BaseUrl, service, command.Name, avCommands.BuildPost(command, service.ServiceType, 1))
await new SsdpHttpClient(_httpClientFactory)
.SendCommandAsync(
Properties.BaseUrl,
service,
command.Name,
avCommands.BuildPost(command, service.ServiceType, 1),
cancellationToken: cancellationToken)
.ConfigureAwait(false);
TransportState = TransportState.Paused;
TransportState = TransportState.PAUSED_PLAYBACK;
RestartTimer(true);
}
@@ -450,7 +527,7 @@ namespace Emby.Dlna.PlayTo
if (transportState.HasValue)
{
// If we're not playing anything no need to get additional data
if (transportState.Value == TransportState.Stopped)
if (transportState.Value == TransportState.STOPPED)
{
UpdateMediaInfo(null, transportState.Value);
}
@@ -458,9 +535,9 @@ namespace Emby.Dlna.PlayTo
{
var tuple = await GetPositionInfo(avCommands, cancellationToken).ConfigureAwait(false);
var currentObject = tuple.Item2;
var currentObject = tuple.Track;
if (tuple.Item1 && currentObject == null)
if (tuple.Success && currentObject == null)
{
currentObject = await GetMediaInfo(avCommands, cancellationToken).ConfigureAwait(false);
}
@@ -479,7 +556,7 @@ namespace Emby.Dlna.PlayTo
}
// If we're not playing anything make sure we don't get data more often than necessary to keep the Session alive
if (transportState.Value == TransportState.Stopped)
if (transportState.Value == TransportState.STOPPED)
{
RestartTimerInactive();
}
@@ -528,7 +605,7 @@ namespace Emby.Dlna.PlayTo
var rendererCommands = await GetRenderingProtocolAsync(cancellationToken).ConfigureAwait(false);
var command = rendererCommands.ServiceActions.FirstOrDefault(c => c.Name == "GetVolume");
var command = rendererCommands?.ServiceActions.FirstOrDefault(c => c.Name == "GetVolume");
if (command == null)
{
return;
@@ -561,7 +638,7 @@ namespace Emby.Dlna.PlayTo
return;
}
Volume = int.Parse(volumeValue, UsCulture);
Volume = int.Parse(volumeValue, CultureInfo.InvariantCulture);
if (Volume > 0)
{
@@ -578,7 +655,7 @@ namespace Emby.Dlna.PlayTo
var rendererCommands = await GetRenderingProtocolAsync(cancellationToken).ConfigureAwait(false);
var command = rendererCommands.ServiceActions.FirstOrDefault(c => c.Name == "GetMute");
var command = rendererCommands?.ServiceActions.FirstOrDefault(c => c.Name == "GetMute");
if (command == null)
{
return;
@@ -665,6 +742,10 @@ namespace Emby.Dlna.PlayTo
}
var rendererCommands = await GetRenderingProtocolAsync(cancellationToken).ConfigureAwait(false);
if (rendererCommands == null)
{
return null;
}
var result = await new SsdpHttpClient(_httpClientFactory).SendCommandAsync(
Properties.BaseUrl,
@@ -716,7 +797,7 @@ namespace Emby.Dlna.PlayTo
return null;
}
private async Task<(bool, UBaseObject)> GetPositionInfo(TransportCommands avCommands, CancellationToken cancellationToken)
private async Task<(bool Success, UBaseObject Track)> GetPositionInfo(TransportCommands avCommands, CancellationToken cancellationToken)
{
var command = avCommands.ServiceActions.FirstOrDefault(c => c.Name == "GetPositionInfo");
if (command == null)
@@ -733,6 +814,11 @@ namespace Emby.Dlna.PlayTo
var rendererCommands = await GetRenderingProtocolAsync(cancellationToken).ConfigureAwait(false);
if (rendererCommands == null)
{
return (false, null);
}
var result = await new SsdpHttpClient(_httpClientFactory).SendCommandAsync(
Properties.BaseUrl,
service,
@@ -754,7 +840,7 @@ namespace Emby.Dlna.PlayTo
if (!string.IsNullOrWhiteSpace(duration)
&& !string.Equals(duration, "NOT_IMPLEMENTED", StringComparison.OrdinalIgnoreCase))
{
Duration = TimeSpan.Parse(duration, UsCulture);
Duration = TimeSpan.Parse(duration, CultureInfo.InvariantCulture);
}
else
{
@@ -766,7 +852,7 @@ namespace Emby.Dlna.PlayTo
if (!string.IsNullOrWhiteSpace(position) && !string.Equals(position, "NOT_IMPLEMENTED", StringComparison.OrdinalIgnoreCase))
{
Position = TimeSpan.Parse(position, UsCulture);
Position = TimeSpan.Parse(position, CultureInfo.InvariantCulture);
}
var track = result.Document.Descendants("TrackMetaData").FirstOrDefault();
@@ -914,6 +1000,10 @@ namespace Emby.Dlna.PlayTo
var httpClient = new SsdpHttpClient(_httpClientFactory);
var document = await httpClient.GetDataAsync(url, cancellationToken).ConfigureAwait(false);
if (document == null)
{
return null;
}
AvCommands = TransportCommands.Create(document);
return AvCommands;
@@ -942,6 +1032,10 @@ namespace Emby.Dlna.PlayTo
var httpClient = new SsdpHttpClient(_httpClientFactory);
_logger.LogDebug("Dlna Device.GetRenderingProtocolAsync");
var document = await httpClient.GetDataAsync(url, cancellationToken).ConfigureAwait(false);
if (document == null)
{
return null;
}
RendererCommands = TransportCommands.Create(document);
return RendererCommands;
@@ -973,6 +1067,10 @@ namespace Emby.Dlna.PlayTo
var ssdpHttpClient = new SsdpHttpClient(httpClientFactory);
var document = await ssdpHttpClient.GetDataAsync(url.ToString(), cancellationToken).ConfigureAwait(false);
if (document == null)
{
return null;
}
var friendlyNames = new List<string>();
@@ -990,7 +1088,7 @@ namespace Emby.Dlna.PlayTo
var deviceProperties = new DeviceInfo()
{
Name = string.Join(" ", friendlyNames),
Name = string.Join(' ', friendlyNames),
BaseUrl = string.Format(CultureInfo.InvariantCulture, "http://{0}:{1}", url.Host, url.Port)
};
@@ -1081,6 +1179,7 @@ namespace Emby.Dlna.PlayTo
return new Device(deviceProperties, httpClientFactory, logger);
}
#nullable enable
private static DeviceIcon CreateIcon(XElement element)
{
if (element == null)
@@ -1088,69 +1187,61 @@ namespace Emby.Dlna.PlayTo
throw new ArgumentNullException(nameof(element));
}
var mimeType = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("mimetype"));
var width = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("width"));
var height = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("height"));
var depth = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("depth"));
var url = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("url"));
var widthValue = int.Parse(width, NumberStyles.Integer, UsCulture);
var heightValue = int.Parse(height, NumberStyles.Integer, UsCulture);
_ = int.TryParse(width, NumberStyles.Integer, CultureInfo.InvariantCulture, out var widthValue);
_ = int.TryParse(height, NumberStyles.Integer, CultureInfo.InvariantCulture, out var heightValue);
return new DeviceIcon
{
Depth = depth,
Depth = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("depth")) ?? string.Empty,
Height = heightValue,
MimeType = mimeType,
Url = url,
MimeType = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("mimetype")) ?? string.Empty,
Url = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("url")) ?? string.Empty,
Width = widthValue
};
}
private static DeviceService Create(XElement element)
{
var type = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("serviceType"));
var id = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("serviceId"));
var scpdUrl = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("SCPDURL"));
var controlURL = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("controlURL"));
var eventSubURL = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("eventSubURL"));
return new DeviceService
=> new DeviceService()
{
ControlUrl = controlURL,
EventSubUrl = eventSubURL,
ScpdUrl = scpdUrl,
ServiceId = id,
ServiceType = type
ControlUrl = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("controlURL")) ?? string.Empty,
EventSubUrl = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("eventSubURL")) ?? string.Empty,
ScpdUrl = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("SCPDURL")) ?? string.Empty,
ServiceId = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("serviceId")) ?? string.Empty,
ServiceType = element.GetDescendantValue(UPnpNamespaces.Ud.GetName("serviceType")) ?? string.Empty
};
}
private void UpdateMediaInfo(UBaseObject mediaInfo, TransportState state)
private void UpdateMediaInfo(UBaseObject? mediaInfo, TransportState state)
{
TransportState = state;
var previousMediaInfo = CurrentMediaInfo;
CurrentMediaInfo = mediaInfo;
if (previousMediaInfo == null && mediaInfo != null)
if (mediaInfo == null)
{
if (state != TransportState.Stopped)
if (previousMediaInfo != null)
{
OnPlaybackStop(previousMediaInfo);
}
}
else if (previousMediaInfo == null)
{
if (state != TransportState.STOPPED)
{
OnPlaybackStart(mediaInfo);
}
}
else if (mediaInfo != null && previousMediaInfo != null && !mediaInfo.Equals(previousMediaInfo))
{
OnMediaChanged(previousMediaInfo, mediaInfo);
}
else if (mediaInfo == null && previousMediaInfo != null)
{
OnPlaybackStop(previousMediaInfo);
}
else if (mediaInfo != null && mediaInfo.Equals(previousMediaInfo))
else if (mediaInfo.Equals(previousMediaInfo))
{
OnPlaybackProgress(mediaInfo);
}
else
{
OnMediaChanged(previousMediaInfo, mediaInfo);
}
}
private void OnPlaybackStart(UBaseObject mediaInfo)
@@ -1160,10 +1251,7 @@ namespace Emby.Dlna.PlayTo
return;
}
PlaybackStart?.Invoke(this, new PlaybackStartEventArgs
{
MediaInfo = mediaInfo
});
PlaybackStart?.Invoke(this, new PlaybackStartEventArgs(mediaInfo));
}
private void OnPlaybackProgress(UBaseObject mediaInfo)
@@ -1173,27 +1261,17 @@ namespace Emby.Dlna.PlayTo
return;
}
PlaybackProgress?.Invoke(this, new PlaybackProgressEventArgs
{
MediaInfo = mediaInfo
});
PlaybackProgress?.Invoke(this, new PlaybackProgressEventArgs(mediaInfo));
}
private void OnPlaybackStop(UBaseObject mediaInfo)
{
PlaybackStopped?.Invoke(this, new PlaybackStoppedEventArgs
{
MediaInfo = mediaInfo
});
PlaybackStopped?.Invoke(this, new PlaybackStoppedEventArgs(mediaInfo));
}
private void OnMediaChanged(UBaseObject old, UBaseObject newMedia)
{
MediaChanged?.Invoke(this, new MediaChangedEventArgs
{
OldMediaInfo = old,
NewMediaInfo = newMedia
});
MediaChanged?.Invoke(this, new MediaChangedEventArgs(old, newMedia));
}
/// <inheritdoc />

View File

@@ -1,3 +1,5 @@
#nullable disable
#pragma warning disable CS1591
using System.Collections.Generic;

View File

@@ -1,4 +1,4 @@
#pragma warning disable CS1591
#pragma warning disable CS1591
using System;
@@ -6,6 +6,12 @@ namespace Emby.Dlna.PlayTo
{
public class MediaChangedEventArgs : EventArgs
{
public MediaChangedEventArgs(UBaseObject oldMediaInfo, UBaseObject newMediaInfo)
{
OldMediaInfo = oldMediaInfo;
NewMediaInfo = newMediaInfo;
}
public UBaseObject OldMediaInfo { get; set; }
public UBaseObject NewMediaInfo { get; set; }

View File

@@ -1,3 +1,5 @@
#nullable disable
#pragma warning disable CS1591
using System;
@@ -28,8 +30,6 @@ namespace Emby.Dlna.PlayTo
{
public class PlayToController : ISessionController, IDisposable
{
private static readonly CultureInfo _usCulture = CultureInfo.ReadOnly(new CultureInfo("en-US"));
private readonly SessionInfo _session;
private readonly ISessionManager _sessionManager;
private readonly ILibraryManager _libraryManager;
@@ -102,6 +102,22 @@ namespace Emby.Dlna.PlayTo
_deviceDiscovery.DeviceLeft += OnDeviceDiscoveryDeviceLeft;
}
/*
* Send a message to the DLNA device to notify what is the next track in the playlist.
*/
private async Task SendNextTrackMessage(int currentPlayListItemIndex, CancellationToken cancellationToken)
{
if (currentPlayListItemIndex >= 0 && currentPlayListItemIndex < _playlist.Count - 1)
{
// The current playing item is indeed in the play list and we are not yet at the end of the playlist.
var nextItemIndex = currentPlayListItemIndex + 1;
var nextItem = _playlist[nextItemIndex];
// Send the SetNextAvTransport message.
await _device.SetNextAvTransport(nextItem.StreamUrl, GetDlnaHeaders(nextItem), nextItem.Didl, cancellationToken).ConfigureAwait(false);
}
}
private void OnDeviceUnavailable()
{
try
@@ -132,7 +148,7 @@ namespace Emby.Dlna.PlayTo
private async void OnDeviceMediaChanged(object sender, MediaChangedEventArgs e)
{
if (_disposed)
if (_disposed || string.IsNullOrEmpty(e.OldMediaInfo.Url))
{
return;
}
@@ -156,6 +172,15 @@ namespace Emby.Dlna.PlayTo
var newItemProgress = GetProgressInfo(streamInfo);
await _sessionManager.OnPlaybackStart(newItemProgress).ConfigureAwait(false);
// Send a message to the DLNA device to notify what is the next track in the playlist.
var currentItemIndex = _playlist.FindIndex(item => item.StreamInfo.ItemId.Equals(streamInfo.ItemId));
if (currentItemIndex >= 0)
{
_currentPlaylistIndex = currentItemIndex;
}
await SendNextTrackMessage(currentItemIndex, CancellationToken.None).ConfigureAwait(false);
}
catch (Exception ex)
{
@@ -185,9 +210,9 @@ namespace Emby.Dlna.PlayTo
var mediaSource = await streamInfo.GetMediaSource(CancellationToken.None).ConfigureAwait(false);
var duration = mediaSource == null ?
(_device.Duration == null ? (long?)null : _device.Duration.Value.Ticks) :
mediaSource.RunTimeTicks;
var duration = mediaSource == null
? _device.Duration?.Ticks
: mediaSource.RunTimeTicks;
var playedToCompletion = positionTicks.HasValue && positionTicks.Value == 0;
@@ -324,7 +349,9 @@ namespace Emby.Dlna.PlayTo
{
_logger.LogDebug("{0} - Received PlayRequest: {1}", _session.DeviceName, command.PlayCommand);
var user = command.ControllingUserId.Equals(Guid.Empty) ? null : _userManager.GetUserById(command.ControllingUserId);
var user = command.ControllingUserId.Equals(default)
? null :
_userManager.GetUserById(command.ControllingUserId);
var items = new List<BaseItem>();
foreach (var id in command.ItemIds)
@@ -367,7 +394,7 @@ namespace Emby.Dlna.PlayTo
_playlist.AddRange(playlist);
}
if (!command.ControllingUserId.Equals(Guid.Empty))
if (!command.ControllingUserId.Equals(default))
{
_sessionManager.LogSessionActivity(
_session.Client,
@@ -421,10 +448,17 @@ namespace Emby.Dlna.PlayTo
if (info.Item != null && !EnableClientSideSeek(info))
{
var user = !_session.UserId.Equals(Guid.Empty) ? _userManager.GetUserById(_session.UserId) : null;
var user = _session.UserId.Equals(default)
? null
: _userManager.GetUserById(_session.UserId);
var newItem = CreatePlaylistItem(info.Item, user, newPosition, info.MediaSourceId, info.AudioStreamIndex, info.SubtitleStreamIndex);
await _device.SetAvTransport(newItem.StreamUrl, GetDlnaHeaders(newItem), newItem.Didl, CancellationToken.None).ConfigureAwait(false);
// Send a message to the DLNA device to notify what is the next track in the play list.
var newItemIndex = _playlist.FindIndex(item => item.StreamUrl == newItem.StreamUrl);
await SendNextTrackMessage(newItemIndex, CancellationToken.None).ConfigureAwait(false);
return;
}
@@ -499,8 +533,8 @@ namespace Emby.Dlna.PlayTo
if (streamInfo.MediaType == DlnaProfileType.Audio)
{
return new ContentFeatureBuilder(profile)
.BuildAudioHeader(
return ContentFeatureBuilder.BuildAudioHeader(
profile,
streamInfo.Container,
streamInfo.TargetAudioCodec.FirstOrDefault(),
streamInfo.TargetAudioBitrate,
@@ -514,8 +548,8 @@ namespace Emby.Dlna.PlayTo
if (streamInfo.MediaType == DlnaProfileType.Video)
{
var list = new ContentFeatureBuilder(profile)
.BuildVideoHeader(
var list = ContentFeatureBuilder.BuildVideoHeader(
profile,
streamInfo.Container,
streamInfo.TargetVideoCodec.FirstOrDefault(),
streamInfo.TargetAudioCodec.FirstOrDefault(),
@@ -527,6 +561,7 @@ namespace Emby.Dlna.PlayTo
streamInfo.IsDirectStream,
streamInfo.RunTimeTicks ?? 0,
streamInfo.TargetVideoProfile,
streamInfo.TargetVideoRangeType,
streamInfo.TargetVideoLevel,
streamInfo.TargetFramerate ?? 0,
streamInfo.TargetPacketLength,
@@ -539,7 +574,7 @@ namespace Emby.Dlna.PlayTo
streamInfo.TargetVideoCodecTag,
streamInfo.IsTargetAVC);
return list.Count == 0 ? null : list[0];
return list.FirstOrDefault();
}
return null;
@@ -623,6 +658,9 @@ namespace Emby.Dlna.PlayTo
await _device.SetAvTransport(currentitem.StreamUrl, GetDlnaHeaders(currentitem), currentitem.Didl, cancellationToken).ConfigureAwait(false);
// Send a message to the DLNA device to notify what is the next track in the play list.
await SendNextTrackMessage(index, cancellationToken).ConfigureAwait(false);
var streamInfo = currentitem.StreamInfo;
if (streamInfo.StartPositionTicks > 0 && EnableClientSideSeek(streamInfo))
{
@@ -681,7 +719,7 @@ namespace Emby.Dlna.PlayTo
case GeneralCommandType.SetAudioStreamIndex:
if (command.Arguments.TryGetValue("Index", out string index))
{
if (int.TryParse(index, NumberStyles.Integer, _usCulture, out var val))
if (int.TryParse(index, NumberStyles.Integer, CultureInfo.InvariantCulture, out var val))
{
return SetAudioStreamIndex(val);
}
@@ -693,7 +731,7 @@ namespace Emby.Dlna.PlayTo
case GeneralCommandType.SetSubtitleStreamIndex:
if (command.Arguments.TryGetValue("Index", out index))
{
if (int.TryParse(index, NumberStyles.Integer, _usCulture, out var val))
if (int.TryParse(index, NumberStyles.Integer, CultureInfo.InvariantCulture, out var val))
{
return SetSubtitleStreamIndex(val);
}
@@ -705,7 +743,7 @@ namespace Emby.Dlna.PlayTo
case GeneralCommandType.SetVolume:
if (command.Arguments.TryGetValue("Volume", out string vol))
{
if (int.TryParse(vol, NumberStyles.Integer, _usCulture, out var volume))
if (int.TryParse(vol, NumberStyles.Integer, CultureInfo.InvariantCulture, out var volume))
{
return _device.SetVolume(volume, cancellationToken);
}
@@ -731,11 +769,17 @@ namespace Emby.Dlna.PlayTo
{
var newPosition = GetProgressPositionTicks(info) ?? 0;
var user = !_session.UserId.Equals(Guid.Empty) ? _userManager.GetUserById(_session.UserId) : null;
var user = _session.UserId.Equals(default)
? null
: _userManager.GetUserById(_session.UserId);
var newItem = CreatePlaylistItem(info.Item, user, newPosition, info.MediaSourceId, newIndex, info.SubtitleStreamIndex);
await _device.SetAvTransport(newItem.StreamUrl, GetDlnaHeaders(newItem), newItem.Didl, CancellationToken.None).ConfigureAwait(false);
// Send a message to the DLNA device to notify what is the next track in the play list.
var newItemIndex = _playlist.FindIndex(item => item.StreamUrl == newItem.StreamUrl);
await SendNextTrackMessage(newItemIndex, CancellationToken.None).ConfigureAwait(false);
if (EnableClientSideSeek(newItem.StreamInfo))
{
await SeekAfterTransportChange(newPosition, CancellationToken.None).ConfigureAwait(false);
@@ -756,11 +800,17 @@ namespace Emby.Dlna.PlayTo
{
var newPosition = GetProgressPositionTicks(info) ?? 0;
var user = !_session.UserId.Equals(Guid.Empty) ? _userManager.GetUserById(_session.UserId) : null;
var user = _session.UserId.Equals(default)
? null
: _userManager.GetUserById(_session.UserId);
var newItem = CreatePlaylistItem(info.Item, user, newPosition, info.MediaSourceId, info.AudioStreamIndex, newIndex);
await _device.SetAvTransport(newItem.StreamUrl, GetDlnaHeaders(newItem), newItem.Didl, CancellationToken.None).ConfigureAwait(false);
// Send a message to the DLNA device to notify what is the next track in the play list.
var newItemIndex = _playlist.FindIndex(item => item.StreamUrl == newItem.StreamUrl);
await SendNextTrackMessage(newItemIndex, CancellationToken.None).ConfigureAwait(false);
if (EnableClientSideSeek(newItem.StreamInfo) && newPosition > 0)
{
await SeekAfterTransportChange(newPosition, CancellationToken.None).ConfigureAwait(false);
@@ -775,9 +825,9 @@ namespace Emby.Dlna.PlayTo
const int Interval = 500;
var currentWait = 0;
while (_device.TransportState != TransportState.Playing && currentWait < MaxWait)
while (_device.TransportState != TransportState.PLAYING && currentWait < MaxWait)
{
await Task.Delay(Interval).ConfigureAwait(false);
await Task.Delay(Interval, cancellationToken).ConfigureAwait(false);
currentWait += Interval;
}
@@ -826,7 +876,7 @@ namespace Emby.Dlna.PlayTo
return SendPlayCommand(data as PlayRequest, cancellationToken);
}
if (name == SessionMessageType.PlayState)
if (name == SessionMessageType.Playstate)
{
return SendPlaystateCommand(data as PlaystateRequest, cancellationToken);
}
@@ -842,7 +892,7 @@ namespace Emby.Dlna.PlayTo
private class StreamParams
{
private MediaSourceInfo mediaSource;
private MediaSourceInfo _mediaSource;
private IMediaSourceManager _mediaSourceManager;
public Guid ItemId { get; set; }
@@ -867,24 +917,22 @@ namespace Emby.Dlna.PlayTo
public async Task<MediaSourceInfo> GetMediaSource(CancellationToken cancellationToken)
{
if (mediaSource != null)
if (_mediaSource != null)
{
return mediaSource;
return _mediaSource;
}
var hasMediaSources = Item as IHasMediaSources;
if (hasMediaSources == null)
if (Item is not IHasMediaSources)
{
return null;
}
if (_mediaSourceManager != null)
{
mediaSource = await _mediaSourceManager.GetMediaSource(Item, MediaSourceId, LiveStreamId, false, cancellationToken).ConfigureAwait(false);
_mediaSource = await _mediaSourceManager.GetMediaSource(Item, MediaSourceId, LiveStreamId, false, cancellationToken).ConfigureAwait(false);
}
return mediaSource;
return _mediaSource;
}
private static Guid GetItemId(string url)
@@ -896,21 +944,21 @@ namespace Emby.Dlna.PlayTo
var parts = url.Split('/');
for (var i = 0; i < parts.Length; i++)
for (var i = 0; i < parts.Length - 1; i++)
{
var part = parts[i];
if (string.Equals(part, "audio", StringComparison.OrdinalIgnoreCase) ||
string.Equals(part, "videos", StringComparison.OrdinalIgnoreCase))
{
if (parts.Length > i + 1)
if (Guid.TryParse(parts[i + 1], out var result))
{
return Guid.Parse(parts[i + 1]);
return result;
}
}
}
return Guid.Empty;
return default;
}
public static StreamParams ParseFromUrl(string url, ILibraryManager libraryManager, IMediaSourceManager mediaSourceManager)
@@ -925,7 +973,7 @@ namespace Emby.Dlna.PlayTo
ItemId = GetItemId(url)
};
if (request.ItemId.Equals(Guid.Empty))
if (request.ItemId.Equals(default))
{
return request;
}
@@ -943,11 +991,7 @@ namespace Emby.Dlna.PlayTo
request.DeviceId = values.GetValueOrDefault("DeviceId");
request.MediaSourceId = values.GetValueOrDefault("MediaSourceId");
request.LiveStreamId = values.GetValueOrDefault("LiveStreamId");
// Be careful, IsDirectStream==true by default (Static != false or not in query).
// See initialization of StreamingRequestDto in AudioController.GetAudioStream() method : Static = @static ?? true.
request.IsDirectStream = !string.Equals("false", values.GetValueOrDefault("Static"), StringComparison.OrdinalIgnoreCase);
request.IsDirectStream = string.Equals("true", values.GetValueOrDefault("Static"), StringComparison.OrdinalIgnoreCase);
request.AudioStreamIndex = GetIntValue(values, "AudioStreamIndex");
request.SubtitleStreamIndex = GetIntValue(values, "SubtitleStreamIndex");
request.StartPositionTicks = GetLongValue(values, "StartPositionTicks");

View File

@@ -1,3 +1,5 @@
#nullable disable
#pragma warning disable CS1591
using System;
@@ -9,7 +11,6 @@ using System.Threading.Tasks;
using Jellyfin.Data.Events;
using MediaBrowser.Common.Extensions;
using MediaBrowser.Controller;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Dlna;
using MediaBrowser.Controller.Drawing;
using MediaBrowser.Controller.Library;
@@ -33,7 +34,6 @@ namespace Emby.Dlna.PlayTo
private readonly IServerApplicationHost _appHost;
private readonly IImageProcessor _imageProcessor;
private readonly IHttpClientFactory _httpClientFactory;
private readonly IServerConfigurationManager _config;
private readonly IUserDataManager _userDataManager;
private readonly ILocalizationManager _localization;
@@ -45,7 +45,7 @@ namespace Emby.Dlna.PlayTo
private SemaphoreSlim _sessionLock = new SemaphoreSlim(1, 1);
private CancellationTokenSource _disposeCancellationTokenSource = new CancellationTokenSource();
public PlayToManager(ILogger logger, ISessionManager sessionManager, ILibraryManager libraryManager, IUserManager userManager, IDlnaManager dlnaManager, IServerApplicationHost appHost, IImageProcessor imageProcessor, IDeviceDiscovery deviceDiscovery, IHttpClientFactory httpClientFactory, IServerConfigurationManager config, IUserDataManager userDataManager, ILocalizationManager localization, IMediaSourceManager mediaSourceManager, IMediaEncoder mediaEncoder)
public PlayToManager(ILogger logger, ISessionManager sessionManager, ILibraryManager libraryManager, IUserManager userManager, IDlnaManager dlnaManager, IServerApplicationHost appHost, IImageProcessor imageProcessor, IDeviceDiscovery deviceDiscovery, IHttpClientFactory httpClientFactory, IUserDataManager userDataManager, ILocalizationManager localization, IMediaSourceManager mediaSourceManager, IMediaEncoder mediaEncoder)
{
_logger = logger;
_sessionManager = sessionManager;
@@ -56,7 +56,6 @@ namespace Emby.Dlna.PlayTo
_imageProcessor = imageProcessor;
_deviceDiscovery = deviceDiscovery;
_httpClientFactory = httpClientFactory;
_config = config;
_userDataManager = userDataManager;
_localization = localization;
_mediaSourceManager = mediaSourceManager;
@@ -171,19 +170,26 @@ namespace Emby.Dlna.PlayTo
uuid = uri.ToString().GetMD5().ToString("N", CultureInfo.InvariantCulture);
}
var sessionInfo = _sessionManager.LogSessionActivity("DLNA", _appHost.ApplicationVersionString, uuid, null, uri.OriginalString, null);
var sessionInfo = await _sessionManager
.LogSessionActivity("DLNA", _appHost.ApplicationVersionString, uuid, null, uri.OriginalString, null)
.ConfigureAwait(false);
var controller = sessionInfo.SessionControllers.OfType<PlayToController>().FirstOrDefault();
if (controller == null)
{
var device = await Device.CreateuPnpDeviceAsync(uri, _httpClientFactory, _logger, cancellationToken).ConfigureAwait(false);
if (device == null)
{
_logger.LogError("Ignoring device as xml response is invalid.");
return;
}
string deviceName = device.Properties.Name;
_sessionManager.UpdateDeviceName(sessionInfo.Id, deviceName);
string serverAddress = _appHost.GetSmartApiUrl(info.LocalIpAddress);
string serverAddress = _appHost.GetSmartApiUrl(info.RemoteIpAddress);
controller = new PlayToController(
sessionInfo,

View File

@@ -6,6 +6,11 @@ namespace Emby.Dlna.PlayTo
{
public class PlaybackProgressEventArgs : EventArgs
{
public PlaybackProgressEventArgs(UBaseObject mediaInfo)
{
MediaInfo = mediaInfo;
}
public UBaseObject MediaInfo { get; set; }
}
}

View File

@@ -6,6 +6,11 @@ namespace Emby.Dlna.PlayTo
{
public class PlaybackStartEventArgs : EventArgs
{
public PlaybackStartEventArgs(UBaseObject mediaInfo)
{
MediaInfo = mediaInfo;
}
public UBaseObject MediaInfo { get; set; }
}
}

View File

@@ -6,6 +6,11 @@ namespace Emby.Dlna.PlayTo
{
public class PlaybackStoppedEventArgs : EventArgs
{
public PlaybackStoppedEventArgs(UBaseObject mediaInfo)
{
MediaInfo = mediaInfo;
}
public UBaseObject MediaInfo { get; set; }
}
}

View File

@@ -1,3 +1,5 @@
#nullable disable
#pragma warning disable CS1591
using MediaBrowser.Model.Dlna;

View File

@@ -1,3 +1,5 @@
#nullable disable
#pragma warning disable CS1591
using System.IO;

View File

@@ -1,8 +1,9 @@
#nullable disable
#pragma warning disable CS1591
using System;
using System.Globalization;
using System.IO;
using System.Net.Http;
using System.Net.Mime;
using System.Text;
@@ -19,8 +20,6 @@ namespace Emby.Dlna.PlayTo
private const string USERAGENT = "Microsoft-Windows/6.2 UPnP/1.0 Microsoft-DLNA DLNADOC/1.50";
private const string FriendlyName = "Jellyfin";
private readonly CultureInfo _usCulture = new CultureInfo("en-US");
private readonly IHttpClientFactory _httpClientFactory;
public SsdpHttpClient(IHttpClientFactory httpClientFactory)
@@ -44,11 +43,13 @@ namespace Emby.Dlna.PlayTo
header,
cancellationToken)
.ConfigureAwait(false);
response.EnsureSuccessStatusCode();
await using var stream = await response.Content.ReadAsStreamAsync(cancellationToken).ConfigureAwait(false);
using var reader = new StreamReader(stream, Encoding.UTF8);
return XDocument.Parse(
await reader.ReadToEndAsync().ConfigureAwait(false),
LoadOptions.PreserveWhitespace);
return await XDocument.LoadAsync(
stream,
LoadOptions.None,
cancellationToken).ConfigureAwait(false);
}
private static string NormalizeServiceUrl(string baseUrl, string serviceUrl)
@@ -77,14 +78,15 @@ namespace Emby.Dlna.PlayTo
{
using var options = new HttpRequestMessage(new HttpMethod("SUBSCRIBE"), url);
options.Headers.UserAgent.ParseAdd(USERAGENT);
options.Headers.TryAddWithoutValidation("HOST", ip + ":" + port.ToString(_usCulture));
options.Headers.TryAddWithoutValidation("CALLBACK", "<" + localIp + ":" + eventport.ToString(_usCulture) + ">");
options.Headers.TryAddWithoutValidation("HOST", ip + ":" + port.ToString(CultureInfo.InvariantCulture));
options.Headers.TryAddWithoutValidation("CALLBACK", "<" + localIp + ":" + eventport.ToString(CultureInfo.InvariantCulture) + ">");
options.Headers.TryAddWithoutValidation("NT", "upnp:event");
options.Headers.TryAddWithoutValidation("TIMEOUT", "Second-" + timeOut.ToString(_usCulture));
options.Headers.TryAddWithoutValidation("TIMEOUT", "Second-" + timeOut.ToString(CultureInfo.InvariantCulture));
using var response = await _httpClientFactory.CreateClient(NamedClient.Default)
.SendAsync(options, HttpCompletionOption.ResponseHeadersRead)
.ConfigureAwait(false);
response.EnsureSuccessStatusCode();
}
public async Task<XDocument> GetDataAsync(string url, CancellationToken cancellationToken)
@@ -93,11 +95,19 @@ namespace Emby.Dlna.PlayTo
options.Headers.UserAgent.ParseAdd(USERAGENT);
options.Headers.TryAddWithoutValidation("FriendlyName.DLNA.ORG", FriendlyName);
using var response = await _httpClientFactory.CreateClient(NamedClient.Default).SendAsync(options, HttpCompletionOption.ResponseHeadersRead, cancellationToken).ConfigureAwait(false);
response.EnsureSuccessStatusCode();
await using var stream = await response.Content.ReadAsStreamAsync(cancellationToken).ConfigureAwait(false);
using var reader = new StreamReader(stream, Encoding.UTF8);
return XDocument.Parse(
await reader.ReadToEndAsync().ConfigureAwait(false),
LoadOptions.PreserveWhitespace);
try
{
return await XDocument.LoadAsync(
stream,
LoadOptions.None,
cancellationToken).ConfigureAwait(false);
}
catch
{
return null;
}
}
private async Task<HttpResponseMessage> PostSoapDataAsync(

View File

@@ -13,12 +13,10 @@ namespace Emby.Dlna.PlayTo
public class TransportCommands
{
private const string CommandBase = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n" + "<SOAP-ENV:Envelope xmlns:SOAP-ENV=\"http://schemas.xmlsoap.org/soap/envelope/\" SOAP-ENV:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\">" + "<SOAP-ENV:Body>" + "<m:{0} xmlns:m=\"{1}\">" + "{2}" + "</m:{0}>" + "</SOAP-ENV:Body></SOAP-ENV:Envelope>";
private List<StateVariable> _stateVariables = new List<StateVariable>();
private List<ServiceAction> _serviceActions = new List<ServiceAction>();
public List<StateVariable> StateVariables => _stateVariables;
public List<StateVariable> StateVariables { get; } = new List<StateVariable>();
public List<ServiceAction> ServiceActions => _serviceActions;
public List<ServiceAction> ServiceActions { get; } = new List<ServiceAction>();
public static TransportCommands Create(XDocument document)
{
@@ -48,7 +46,7 @@ namespace Emby.Dlna.PlayTo
{
var serviceAction = new ServiceAction
{
Name = container.GetValue(UPnpNamespaces.Svc + "name"),
Name = container.GetValue(UPnpNamespaces.Svc + "name") ?? string.Empty,
};
var argumentList = serviceAction.ArgumentList;
@@ -70,9 +68,9 @@ namespace Emby.Dlna.PlayTo
return new Argument
{
Name = container.GetValue(UPnpNamespaces.Svc + "name"),
Direction = container.GetValue(UPnpNamespaces.Svc + "direction"),
RelatedStateVariable = container.GetValue(UPnpNamespaces.Svc + "relatedStateVariable")
Name = container.GetValue(UPnpNamespaces.Svc + "name") ?? string.Empty,
Direction = container.GetValue(UPnpNamespaces.Svc + "direction") ?? string.Empty,
RelatedStateVariable = container.GetValue(UPnpNamespaces.Svc + "relatedStateVariable") ?? string.Empty
};
}
@@ -91,8 +89,8 @@ namespace Emby.Dlna.PlayTo
return new StateVariable
{
Name = container.GetValue(UPnpNamespaces.Svc + "name"),
DataType = container.GetValue(UPnpNamespaces.Svc + "dataType"),
Name = container.GetValue(UPnpNamespaces.Svc + "name") ?? string.Empty,
DataType = container.GetValue(UPnpNamespaces.Svc + "dataType") ?? string.Empty,
AllowedValues = allowedValues
};
}
@@ -168,7 +166,7 @@ namespace Emby.Dlna.PlayTo
return string.Format(CultureInfo.InvariantCulture, CommandBase, action.Name, xmlNamesapce, stateString);
}
private string BuildArgumentXml(Argument argument, string value, string commandParameter = "")
private string BuildArgumentXml(Argument argument, string? value, string commandParameter = "")
{
var state = StateVariables.FirstOrDefault(a => string.Equals(a.Name, argument.RelatedStateVariable, StringComparison.OrdinalIgnoreCase));
@@ -177,7 +175,7 @@ namespace Emby.Dlna.PlayTo
var sendValue = state.AllowedValues.FirstOrDefault(a => string.Equals(a, commandParameter, StringComparison.OrdinalIgnoreCase)) ??
(state.AllowedValues.Count > 0 ? state.AllowedValues[0] : value);
return string.Format(CultureInfo.InvariantCulture, "<{0} xmlns:dt=\"urn:schemas-microsoft-com:datatypes\" dt:dt=\"{1}\">{2}</{0}>", argument.Name, state.DataType ?? "string", sendValue);
return string.Format(CultureInfo.InvariantCulture, "<{0} xmlns:dt=\"urn:schemas-microsoft-com:datatypes\" dt:dt=\"{1}\">{2}</{0}>", argument.Name, state.DataType, sendValue);
}
return string.Format(CultureInfo.InvariantCulture, "<{0}>{1}</{0}>", argument.Name, value);

View File

@@ -1,14 +1,16 @@
#pragma warning disable CS1591
#pragma warning disable SA1602
namespace Emby.Dlna.PlayTo
{
/// <summary>
/// Core of the AVTransport service. It defines the conceptually top-
/// level state of the transport, for example, whether it is playing, recording, etc.
/// </summary>
public enum TransportState
{
Stopped,
Playing,
Transitioning,
PausedPlayback,
Paused
STOPPED,
PLAYING,
TRANSITIONING,
PAUSED_PLAYBACK
}
}

View File

@@ -1,3 +1,5 @@
#nullable disable
#pragma warning disable CS1591
using System;

View File

@@ -1,5 +1,7 @@
#pragma warning disable CS1591
using System;
using System.Globalization;
using System.Linq;
using MediaBrowser.Model.Dlna;
@@ -10,6 +12,7 @@ namespace Emby.Dlna.Profiles
{
public DefaultProfile()
{
Id = Guid.NewGuid().ToString("N", CultureInfo.InvariantCulture);
Name = "Generic Device";
ProtocolInfo = "http-get:*:video/mpeg:*,http-get:*:video/mp4:*,http-get:*:video/vnd.dlna.mpeg-tts:*,http-get:*:video/avi:*,http-get:*:video/x-matroska:*,http-get:*:video/x-ms-wmv:*,http-get:*:video/wtv:*,http-get:*:audio/mpeg:*,http-get:*:audio/mp3:*,http-get:*:audio/mp4:*,http-get:*:audio/x-ms-wma:*,http-get:*:audio/wav:*,http-get:*:audio/L16:*,http-get:*:image/jpeg:*,http-get:*:image/png:*,http-get:*:image/gif:*,http-get:*:image/tiff:*";
@@ -164,8 +167,7 @@ namespace Emby.Dlna.Profiles
public void AddXmlRootAttribute(string name, string value)
{
var atts = XmlRootAttributes ?? System.Array.Empty<XmlAttribute>();
var list = atts.ToList();
var list = XmlRootAttributes.ToList();
list.Add(new XmlAttribute
{

View File

@@ -13,7 +13,7 @@ namespace Emby.Dlna.Profiles
Identification = new DeviceIdentification
{
FriendlyName = @"KDL-\d{2}[EHLNPB]X\d[01]\d.*",
FriendlyName = @"KDL-[0-9]{2}[EHLNPB]X[0-9][01][0-9].*",
Manufacturer = "Sony",
Headers = new[]
@@ -21,7 +21,7 @@ namespace Emby.Dlna.Profiles
new HttpHeaderInfo
{
Name = "X-AV-Client-Info",
Value = @".*KDL-\d{2}[EHLNPB]X\d[01]\d.*",
Value = @".*KDL-[0-9]{2}[EHLNPB]X[0-9][01][0-9].*",
Match = HeaderMatchType.Regex
}
}

View File

@@ -13,7 +13,7 @@ namespace Emby.Dlna.Profiles
Identification = new DeviceIdentification
{
FriendlyName = @"KDL-\d{2}([A-Z]X\d2\d|CX400).*",
FriendlyName = @"KDL-[0-9]{2}([A-Z]X[0-9]2[0-9]|CX400).*",
Manufacturer = "Sony",
Headers = new[]
@@ -21,7 +21,7 @@ namespace Emby.Dlna.Profiles
new HttpHeaderInfo
{
Name = "X-AV-Client-Info",
Value = @".*KDL-\d{2}([A-Z]X\d2\d|CX400).*",
Value = @".*KDL-[0-9]{2}([A-Z]X[0-9]2[0-9]|CX400).*",
Match = HeaderMatchType.Regex
}
}

View File

@@ -13,7 +13,7 @@ namespace Emby.Dlna.Profiles
Identification = new DeviceIdentification
{
FriendlyName = @"KDL-\d{2}[A-Z]X\d5(\d|G).*",
FriendlyName = @"KDL-[0-9]{2}[A-Z]X[0-9]5([0-9]|G).*",
Manufacturer = "Sony",
Headers = new[]
@@ -21,7 +21,7 @@ namespace Emby.Dlna.Profiles
new HttpHeaderInfo
{
Name = "X-AV-Client-Info",
Value = @".*KDL-\d{2}[A-Z]X\d5(\d|G).*",
Value = @".*KDL-[0-9]{2}[A-Z]X[0-9]5([0-9]|G).*",
Match = HeaderMatchType.Regex
}
}

View File

@@ -13,7 +13,7 @@ namespace Emby.Dlna.Profiles
Identification = new DeviceIdentification
{
FriendlyName = @"KDL-\d{2}[WR][5689]\d{2}A.*",
FriendlyName = @"KDL-[0-9]{2}[WR][5689][0-9]{2}A.*",
Manufacturer = "Sony",
Headers = new[]
@@ -21,7 +21,7 @@ namespace Emby.Dlna.Profiles
new HttpHeaderInfo
{
Name = "X-AV-Client-Info",
Value = @".*KDL-\d{2}[WR][5689]\d{2}A.*",
Value = @".*KDL-[0-9]{2}[WR][5689][0-9]{2}A.*",
Match = HeaderMatchType.Regex
}
}

View File

@@ -13,7 +13,7 @@ namespace Emby.Dlna.Profiles
Identification = new DeviceIdentification
{
FriendlyName = @"(KDL-\d{2}W[5-9]\d{2}B|KDL-\d{2}R480|XBR-\d{2}X[89]\d{2}B|KD-\d{2}[SX][89]\d{3}B).*",
FriendlyName = @"(KDL-[0-9]{2}W[5-9][0-9]{2}B|KDL-[0-9]{2}R480|XBR-[0-9]{2}X[89][0-9]{2}B|KD-[0-9]{2}[SX][89][0-9]{3}B).*",
Manufacturer = "Sony",
Headers = new[]
@@ -21,7 +21,7 @@ namespace Emby.Dlna.Profiles
new HttpHeaderInfo
{
Name = "X-AV-Client-Info",
Value = @".*(KDL-\d{2}W[5-9]\d{2}B|KDL-\d{2}R480|XBR-\d{2}X[89]\d{2}B|KD-\d{2}[SX][89]\d{3}B).*",
Value = @".*(KDL-[0-9]{2}W[5-9][0-9]{2}B|KDL-[0-9]{2}R480|XBR-[0-9]{2}X[89][0-9]{2}B|KD-[0-9]{2}[SX][89][0-9]{3}B).*",
Match = HeaderMatchType.Regex
}
}

View File

@@ -3,10 +3,10 @@
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Name>Sony Bravia (2010)</Name>
<Identification>
<FriendlyName>KDL-\d{2}[EHLNPB]X\d[01]\d.*</FriendlyName>
<FriendlyName>KDL-[0-9]{2}[EHLNPB]X[0-9][01][0-9].*</FriendlyName>
<Manufacturer>Sony</Manufacturer>
<Headers>
<HttpHeaderInfo name="X-AV-Client-Info" value=".*KDL-\d{2}[EHLNPB]X\d[01]\d.*" match="Regex" />
<HttpHeaderInfo name="X-AV-Client-Info" value=".*KDL-[0-9]{2}[EHLNPB]X[0-9][01][0-9].*" match="Regex" />
</Headers>
</Identification>
<Manufacturer>Microsoft Corporation</Manufacturer>

View File

@@ -3,10 +3,10 @@
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Name>Sony Bravia (2011)</Name>
<Identification>
<FriendlyName>KDL-\d{2}([A-Z]X\d2\d|CX400).*</FriendlyName>
<FriendlyName>KDL-[0-9]{2}([A-Z]X[0-9]2[0-9]|CX400).*</FriendlyName>
<Manufacturer>Sony</Manufacturer>
<Headers>
<HttpHeaderInfo name="X-AV-Client-Info" value=".*KDL-\d{2}([A-Z]X\d2\d|CX400).*" match="Regex" />
<HttpHeaderInfo name="X-AV-Client-Info" value=".*KDL-[0-9]{2}([A-Z]X[0-9]2[0-9]|CX400).*" match="Regex" />
</Headers>
</Identification>
<Manufacturer>Microsoft Corporation</Manufacturer>

View File

@@ -3,10 +3,10 @@
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Name>Sony Bravia (2012)</Name>
<Identification>
<FriendlyName>KDL-\d{2}[A-Z]X\d5(\d|G).*</FriendlyName>
<FriendlyName>KDL-[0-9]{2}[A-Z]X[0-9]5([0-9]|G).*</FriendlyName>
<Manufacturer>Sony</Manufacturer>
<Headers>
<HttpHeaderInfo name="X-AV-Client-Info" value=".*KDL-\d{2}[A-Z]X\d5(\d|G).*" match="Regex" />
<HttpHeaderInfo name="X-AV-Client-Info" value=".*KDL-[0-9]{2}[A-Z]X[0-9]5([0-9]|G).*" match="Regex" />
</Headers>
</Identification>
<Manufacturer>Microsoft Corporation</Manufacturer>

View File

@@ -3,10 +3,10 @@
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Name>Sony Bravia (2013)</Name>
<Identification>
<FriendlyName>KDL-\d{2}[WR][5689]\d{2}A.*</FriendlyName>
<FriendlyName>KDL-[0-9]{2}[WR][5689][0-9]{2}A.*</FriendlyName>
<Manufacturer>Sony</Manufacturer>
<Headers>
<HttpHeaderInfo name="X-AV-Client-Info" value=".*KDL-\d{2}[WR][5689]\d{2}A.*" match="Regex" />
<HttpHeaderInfo name="X-AV-Client-Info" value=".*KDL-[0-9]{2}[WR][5689][0-9]{2}A.*" match="Regex" />
</Headers>
</Identification>
<Manufacturer>Microsoft Corporation</Manufacturer>

View File

@@ -3,10 +3,10 @@
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Name>Sony Bravia (2014)</Name>
<Identification>
<FriendlyName>(KDL-\d{2}W[5-9]\d{2}B|KDL-\d{2}R480|XBR-\d{2}X[89]\d{2}B|KD-\d{2}[SX][89]\d{3}B).*</FriendlyName>
<FriendlyName>(KDL-[0-9]{2}W[5-9][0-9]{2}B|KDL-[0-9]{2}R480|XBR-[0-9]{2}X[89][0-9]{2}B|KD-[0-9]{2}[SX][89][0-9]{3}B).*</FriendlyName>
<Manufacturer>Sony</Manufacturer>
<Headers>
<HttpHeaderInfo name="X-AV-Client-Info" value=".*(KDL-\d{2}W[5-9]\d{2}B|KDL-\d{2}R480|XBR-\d{2}X[89]\d{2}B|KD-\d{2}[SX][89]\d{3}B).*" match="Regex" />
<HttpHeaderInfo name="X-AV-Client-Info" value=".*(KDL-[0-9]{2}W[5-9][0-9]{2}B|KDL-[0-9]{2}R480|XBR-[0-9]{2}X[89][0-9]{2}B|KD-[0-9]{2}[SX][89][0-9]{3}B).*" match="Regex" />
</Headers>
</Identification>
<Manufacturer>Microsoft Corporation</Manufacturer>

View File

@@ -15,7 +15,6 @@ namespace Emby.Dlna.Server
{
private readonly DeviceProfile _profile;
private readonly CultureInfo _usCulture = new CultureInfo("en-US");
private readonly string _serverUdn;
private readonly string _serverAddress;
private readonly string _serverName;
@@ -190,16 +189,16 @@ namespace Emby.Dlna.Server
builder.Append("<icon>");
builder.Append("<mimetype>")
.Append(SecurityElement.Escape(icon.MimeType ?? string.Empty))
.Append(SecurityElement.Escape(icon.MimeType))
.Append("</mimetype>");
builder.Append("<width>")
.Append(SecurityElement.Escape(icon.Width.ToString(_usCulture)))
.Append(SecurityElement.Escape(icon.Width.ToString(CultureInfo.InvariantCulture)))
.Append("</width>");
builder.Append("<height>")
.Append(SecurityElement.Escape(icon.Height.ToString(_usCulture)))
.Append(SecurityElement.Escape(icon.Height.ToString(CultureInfo.InvariantCulture)))
.Append("</height>");
builder.Append("<depth>")
.Append(SecurityElement.Escape(icon.Depth ?? string.Empty))
.Append(SecurityElement.Escape(icon.Depth))
.Append("</depth>");
builder.Append("<url>")
.Append(BuildUrl(icon.Url))
@@ -220,10 +219,10 @@ namespace Emby.Dlna.Server
builder.Append("<service>");
builder.Append("<serviceType>")
.Append(SecurityElement.Escape(service.ServiceType ?? string.Empty))
.Append(SecurityElement.Escape(service.ServiceType))
.Append("</serviceType>");
builder.Append("<serviceId>")
.Append(SecurityElement.Escape(service.ServiceId ?? string.Empty))
.Append(SecurityElement.Escape(service.ServiceId))
.Append("</serviceId>");
builder.Append("<SCPDURL>")
.Append(BuildUrl(service.ScpdUrl))

View File

@@ -7,8 +7,8 @@ using System.Text;
using System.Threading.Tasks;
using System.Xml;
using Emby.Dlna.Didl;
using Jellyfin.Extensions;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Extensions;
using Microsoft.Extensions.Logging;
namespace Emby.Dlna.Service
@@ -47,9 +47,9 @@ namespace Emby.Dlna.Service
private async Task<ControlResponse> ProcessControlRequestInternalAsync(ControlRequest request)
{
ControlRequestInfo requestInfo = null;
ControlRequestInfo requestInfo;
using (var streamReader = new StreamReader(request.InputXml))
using (var streamReader = new StreamReader(request.InputXml, Encoding.UTF8))
{
var readerSettings = new XmlReaderSettings()
{
@@ -64,8 +64,13 @@ namespace Emby.Dlna.Service
requestInfo = await ParseRequestAsync(reader).ConfigureAwait(false);
}
Logger.LogDebug("Received control request {0}", requestInfo.LocalName);
Logger.LogDebug("Received control request {LocalName}, params: {@Headers}", requestInfo.LocalName, requestInfo.Headers);
return CreateControlResponse(requestInfo);
}
private ControlResponse CreateControlResponse(ControlRequestInfo requestInfo)
{
var settings = new XmlWriterSettings
{
Encoding = Encoding.UTF8,
@@ -95,11 +100,7 @@ namespace Emby.Dlna.Service
var xml = builder.ToString().Replace("xmlns:m=", "xmlns:u=", StringComparison.Ordinal);
var controlResponse = new ControlResponse
{
Xml = xml,
IsSuccessful = true
};
var controlResponse = new ControlResponse(xml, true);
controlResponse.Headers.Add("EXT", string.Empty);
@@ -116,29 +117,19 @@ namespace Emby.Dlna.Service
{
if (reader.NodeType == XmlNodeType.Element)
{
switch (reader.LocalName)
if (string.Equals(reader.LocalName, "Body", StringComparison.Ordinal))
{
case "Body":
{
if (!reader.IsEmptyElement)
{
using var subReader = reader.ReadSubtree();
return await ParseBodyTagAsync(subReader).ConfigureAwait(false);
}
else
{
await reader.ReadAsync().ConfigureAwait(false);
}
if (reader.IsEmptyElement)
{
await reader.ReadAsync().ConfigureAwait(false);
continue;
}
break;
}
default:
{
await reader.SkipAsync().ConfigureAwait(false);
break;
}
using var subReader = reader.ReadSubtree();
return await ParseBodyTagAsync(subReader).ConfigureAwait(false);
}
await reader.SkipAsync().ConfigureAwait(false);
}
else
{
@@ -151,7 +142,7 @@ namespace Emby.Dlna.Service
private async Task<ControlRequestInfo> ParseBodyTagAsync(XmlReader reader)
{
string namespaceURI = null, localName = null;
string? namespaceURI = null, localName = null;
await reader.MoveToContentAsync().ConfigureAwait(false);
await reader.ReadAsync().ConfigureAwait(false);
@@ -164,17 +155,17 @@ namespace Emby.Dlna.Service
localName = reader.LocalName;
namespaceURI = reader.NamespaceURI;
if (!reader.IsEmptyElement)
if (reader.IsEmptyElement)
{
await reader.ReadAsync().ConfigureAwait(false);
}
else
{
var result = new ControlRequestInfo(localName, namespaceURI);
using var subReader = reader.ReadSubtree();
await ParseFirstBodyChildAsync(subReader, result.Headers).ConfigureAwait(false);
return result;
}
else
{
await reader.ReadAsync().ConfigureAwait(false);
}
}
else
{
@@ -210,7 +201,7 @@ namespace Emby.Dlna.Service
}
}
protected abstract void WriteResult(string methodName, IDictionary<string, string> methodParams, XmlWriter xmlWriter);
protected abstract void WriteResult(string methodName, IReadOnlyDictionary<string, string> methodParams, XmlWriter xmlWriter);
private void LogRequest(ControlRequest request)
{

View File

@@ -23,14 +23,14 @@ namespace Emby.Dlna.Service
return EventManager.CancelEventSubscription(subscriptionId);
}
public EventSubscriptionResponse RenewEventSubscription(string subscriptionId, string notificationType, string timeoutString, string callbackUrl)
public EventSubscriptionResponse RenewEventSubscription(string subscriptionId, string notificationType, string requestedTimeoutString, string callbackUrl)
{
return EventManager.RenewEventSubscription(subscriptionId, notificationType, timeoutString, callbackUrl);
return EventManager.RenewEventSubscription(subscriptionId, notificationType, requestedTimeoutString, callbackUrl);
}
public EventSubscriptionResponse CreateEventSubscription(string notificationType, string timeoutString, string callbackUrl)
public EventSubscriptionResponse CreateEventSubscription(string notificationType, string requestedTimeoutString, string callbackUrl)
{
return EventManager.CreateEventSubscription(notificationType, timeoutString, callbackUrl);
return EventManager.CreateEventSubscription(notificationType, requestedTimeoutString, callbackUrl);
}
}
}

View File

@@ -46,11 +46,7 @@ namespace Emby.Dlna.Service
writer.WriteEndDocument();
}
return new ControlResponse
{
Xml = builder.ToString(),
IsSuccessful = false
};
return new ControlResponse(builder.ToString(), false);
}
}
}

View File

@@ -38,7 +38,7 @@ namespace Emby.Dlna.Service
builder.Append("<action>");
builder.Append("<name>")
.Append(SecurityElement.Escape(item.Name ?? string.Empty))
.Append(SecurityElement.Escape(item.Name))
.Append("</name>");
builder.Append("<argumentList>");
@@ -48,13 +48,13 @@ namespace Emby.Dlna.Service
builder.Append("<argument>");
builder.Append("<name>")
.Append(SecurityElement.Escape(argument.Name ?? string.Empty))
.Append(SecurityElement.Escape(argument.Name))
.Append("</name>");
builder.Append("<direction>")
.Append(SecurityElement.Escape(argument.Direction ?? string.Empty))
.Append(SecurityElement.Escape(argument.Direction))
.Append("</direction>");
builder.Append("<relatedStateVariable>")
.Append(SecurityElement.Escape(argument.RelatedStateVariable ?? string.Empty))
.Append(SecurityElement.Escape(argument.RelatedStateVariable))
.Append("</relatedStateVariable>");
builder.Append("</argument>");
@@ -81,10 +81,10 @@ namespace Emby.Dlna.Service
.Append("\">");
builder.Append("<name>")
.Append(SecurityElement.Escape(item.Name ?? string.Empty))
.Append(SecurityElement.Escape(item.Name))
.Append("</name>");
builder.Append("<dataType>")
.Append(SecurityElement.Escape(item.DataType ?? string.Empty))
.Append(SecurityElement.Escape(item.DataType))
.Append("</dataType>");
if (item.AllowedValues.Count > 0)

View File

@@ -1,3 +1,5 @@
#nullable disable
#pragma warning disable CS1591
using System;
@@ -69,7 +71,7 @@ namespace Emby.Dlna.Ssdp
{
lock (_syncLock)
{
if (_listenerCount > 0 && _deviceLocator == null)
if (_listenerCount > 0 && _deviceLocator == null && _commsServer != null)
{
_deviceLocator = new SsdpDeviceLocator(_commsServer);
@@ -104,7 +106,7 @@ namespace Emby.Dlna.Ssdp
{
Location = e.DiscoveredDevice.DescriptionLocation,
Headers = headers,
LocalIpAddress = e.LocalIpAddress
RemoteIpAddress = e.RemoteIpAddress
});
DeviceDiscoveredInternal?.Invoke(this, args);

View File

@@ -7,21 +7,21 @@ namespace Emby.Dlna.Ssdp
{
public static class SsdpExtensions
{
public static string GetValue(this XElement container, XName name)
public static string? GetValue(this XElement container, XName name)
{
var node = container.Element(name);
return node?.Value;
}
public static string GetAttributeValue(this XElement container, XName name)
public static string? GetAttributeValue(this XElement container, XName name)
{
var node = container.Attribute(name);
return node?.Value;
}
public static string GetDescendantValue(this XElement container, XName name)
public static string? GetDescendantValue(this XElement container, XName name)
=> container.Descendants(name).FirstOrDefault()?.Value;
}
}

View File

@@ -6,11 +6,13 @@
</PropertyGroup>
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<TargetFramework>net6.0</TargetFramework>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<Nullable>enable</Nullable>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
</PropertyGroup>
<ItemGroup>
@@ -25,14 +27,13 @@
<!-- Code analysers-->
<ItemGroup Condition=" '$(Configuration)' == 'Debug' ">
<PackageReference Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="2.9.8" PrivateAssets="All" />
<PackageReference Include="Microsoft.CodeAnalysis.BannedApiAnalyzers" Version="3.3.3">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
<PackageReference Include="SerilogAnalyzer" Version="0.15.0" PrivateAssets="All" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="All" />
<PackageReference Include="StyleCop.Analyzers" Version="1.2.0-beta.406" PrivateAssets="All" />
<PackageReference Include="SmartAnalyzers.MultithreadingAnalyzer" Version="1.1.31" PrivateAssets="All" />
</ItemGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<CodeAnalysisRuleSet>../jellyfin.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>
</Project>

View File

@@ -3,6 +3,8 @@ using System.Collections.Generic;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Net.Mime;
using System.Text;
using System.Threading.Tasks;
using Jellyfin.Data.Entities;
using MediaBrowser.Common.Extensions;
@@ -25,7 +27,7 @@ namespace Emby.Drawing
public sealed class ImageProcessor : IImageProcessor, IDisposable
{
// Increment this when there's a change requiring caches to be invalidated
private const string Version = "3";
private const char Version = '3';
private static readonly HashSet<string> _transparentImageTypes
= new HashSet<string>(StringComparer.OrdinalIgnoreCase) { ".png", ".webp", ".gif" };
@@ -100,8 +102,7 @@ namespace Emby.Drawing
public async Task ProcessImage(ImageProcessingOptions options, Stream toStream)
{
var file = await ProcessImage(options).ConfigureAwait(false);
using (var fileStream = new FileStream(file.Item1, FileMode.Open, FileAccess.Read, FileShare.Read, IODefaults.FileStreamBufferSize, true))
using (var fileStream = AsyncFile.OpenRead(file.Path))
{
await fileStream.CopyToAsync(toStream).ConfigureAwait(false);
}
@@ -116,7 +117,7 @@ namespace Emby.Drawing
=> _transparentImageTypes.Contains(Path.GetExtension(path));
/// <inheritdoc />
public async Task<(string path, string? mimeType, DateTime dateModified)> ProcessImage(ImageProcessingOptions options)
public async Task<(string Path, string? MimeType, DateTime DateModified)> ProcessImage(ImageProcessingOptions options)
{
ItemImageInfo originalImage = options.Image;
BaseItem item = options.Item;
@@ -129,20 +130,22 @@ namespace Emby.Drawing
originalImageSize = new ImageDimensions(originalImage.Width, originalImage.Height);
}
var mimeType = MimeTypes.GetMimeType(originalImagePath);
if (!_imageEncoder.SupportsImageEncoding)
{
return (originalImagePath, MimeTypes.GetMimeType(originalImagePath), dateModified);
return (originalImagePath, mimeType, dateModified);
}
var supportedImageInfo = await GetSupportedImage(originalImagePath, dateModified).ConfigureAwait(false);
originalImagePath = supportedImageInfo.path;
originalImagePath = supportedImageInfo.Path;
if (!File.Exists(originalImagePath))
// Original file doesn't exist, or original file is gif.
if (!File.Exists(originalImagePath) || string.Equals(mimeType, MediaTypeNames.Image.Gif, StringComparison.OrdinalIgnoreCase))
{
return (originalImagePath, MimeTypes.GetMimeType(originalImagePath), dateModified);
return (originalImagePath, mimeType, dateModified);
}
dateModified = supportedImageInfo.dateModified;
dateModified = supportedImageInfo.DateModified;
bool requiresTransparency = _transparentImageTypes.Contains(Path.GetExtension(originalImagePath));
bool autoOrient = false;
@@ -171,21 +174,31 @@ namespace Emby.Drawing
return (originalImagePath, MimeTypes.GetMimeType(originalImagePath), dateModified);
}
ImageDimensions newSize = ImageHelper.GetNewImageSize(options, null);
int quality = options.Quality;
ImageFormat outputFormat = GetOutputFormat(options.SupportedOutputFormats, requiresTransparency);
string cacheFilePath = GetCacheFilePath(originalImagePath, newSize, quality, dateModified, outputFormat, options.AddPlayedIndicator, options.PercentPlayed, options.UnplayedCount, options.Blur, options.BackgroundColor, options.ForegroundLayer);
string cacheFilePath = GetCacheFilePath(
originalImagePath,
options.Width,
options.Height,
options.MaxWidth,
options.MaxHeight,
options.FillWidth,
options.FillHeight,
quality,
dateModified,
outputFormat,
options.AddPlayedIndicator,
options.PercentPlayed,
options.UnplayedCount,
options.Blur,
options.BackgroundColor,
options.ForegroundLayer);
try
{
if (!File.Exists(cacheFilePath))
{
if (options.CropWhiteSpace && !SupportsTransparency(originalImagePath))
{
options.CropWhiteSpace = false;
}
string resultPath = _imageEncoder.EncodeImage(originalImagePath, dateModified, cacheFilePath, autoOrient, orientation, quality, options, outputFormat);
if (string.Equals(resultPath, originalImagePath, StringComparison.OrdinalIgnoreCase))
@@ -232,7 +245,7 @@ namespace Emby.Drawing
return ImageFormat.Jpg;
}
private string? GetMimeType(ImageFormat format, string path)
private string GetMimeType(ImageFormat format, string path)
=> format switch
{
ImageFormat.Bmp => MimeTypes.GetMimeType("i.bmp"),
@@ -246,48 +259,111 @@ namespace Emby.Drawing
/// <summary>
/// Gets the cache file path based on a set of parameters.
/// </summary>
private string GetCacheFilePath(string originalPath, ImageDimensions outputSize, int quality, DateTime dateModified, ImageFormat format, bool addPlayedIndicator, double percentPlayed, int? unwatchedCount, int? blur, string backgroundColor, string foregroundLayer)
private string GetCacheFilePath(
string originalPath,
int? width,
int? height,
int? maxWidth,
int? maxHeight,
int? fillWidth,
int? fillHeight,
int quality,
DateTime dateModified,
ImageFormat format,
bool addPlayedIndicator,
double percentPlayed,
int? unwatchedCount,
int? blur,
string backgroundColor,
string foregroundLayer)
{
var filename = originalPath
+ "width=" + outputSize.Width
+ "height=" + outputSize.Height
+ "quality=" + quality
+ "datemodified=" + dateModified.Ticks
+ "f=" + format;
var filename = new StringBuilder(256);
filename.Append(originalPath);
filename.Append(",quality=");
filename.Append(quality);
filename.Append(",datemodified=");
filename.Append(dateModified.Ticks);
filename.Append(",f=");
filename.Append(format);
if (width.HasValue)
{
filename.Append(",width=");
filename.Append(width.Value);
}
if (height.HasValue)
{
filename.Append(",height=");
filename.Append(height.Value);
}
if (maxWidth.HasValue)
{
filename.Append(",maxwidth=");
filename.Append(maxWidth.Value);
}
if (maxHeight.HasValue)
{
filename.Append(",maxheight=");
filename.Append(maxHeight.Value);
}
if (fillWidth.HasValue)
{
filename.Append(",fillwidth=");
filename.Append(fillWidth.Value);
}
if (fillHeight.HasValue)
{
filename.Append(",fillheight=");
filename.Append(fillHeight.Value);
}
if (addPlayedIndicator)
{
filename += "pl=true";
filename.Append(",pl=true");
}
if (percentPlayed > 0)
{
filename += "p=" + percentPlayed;
filename.Append(",p=");
filename.Append(percentPlayed);
}
if (unwatchedCount.HasValue)
{
filename += "p=" + unwatchedCount.Value;
filename.Append(",p=");
filename.Append(unwatchedCount.Value);
}
if (blur.HasValue)
{
filename += "blur=" + blur.Value;
filename.Append(",blur=");
filename.Append(blur.Value);
}
if (!string.IsNullOrEmpty(backgroundColor))
{
filename += "b=" + backgroundColor;
filename.Append(",b=");
filename.Append(backgroundColor);
}
if (!string.IsNullOrEmpty(foregroundLayer))
{
filename += "fl=" + foregroundLayer;
filename.Append(",fl=");
filename.Append(foregroundLayer);
}
filename += "v=" + Version;
filename.Append(",v=");
filename.Append(Version);
return GetCachePath(ResizedImageCachePath, filename, "." + format.ToString().ToLowerInvariant());
return GetCachePath(ResizedImageCachePath, filename.ToString(), "." + format.ToString().ToLowerInvariant());
}
/// <inheritdoc />
@@ -319,7 +395,13 @@ namespace Emby.Drawing
public string GetImageBlurHash(string path)
{
var size = GetImageDimensions(path);
if (size.Width <= 0 || size.Height <= 0)
return GetImageBlurHash(path, size);
}
/// <inheritdoc />
public string GetImageBlurHash(string path, ImageDimensions imageDimensions)
{
if (imageDimensions.Width <= 0 || imageDimensions.Height <= 0)
{
return string.Empty;
}
@@ -327,8 +409,8 @@ namespace Emby.Drawing
// We want tiles to be as close to square as possible, and to *mostly* keep under 16 tiles for performance.
// One tile is (width / xComp) x (height / yComp) pixels, which means that ideally yComp = xComp * height / width.
// See more at https://github.com/woltapp/blurhash/#how-do-i-pick-the-number-of-x-and-y-components
float xCompF = MathF.Sqrt(16.0f * size.Width / size.Height);
float yCompF = xCompF * size.Height / size.Width;
float xCompF = MathF.Sqrt(16.0f * imageDimensions.Width / imageDimensions.Height);
float yCompF = xCompF * imageDimensions.Height / imageDimensions.Width;
int xComp = Math.Min((int)xCompF + 1, 9);
int yComp = Math.Min((int)yCompF + 1, 9);
@@ -352,53 +434,57 @@ namespace Emby.Drawing
}
/// <inheritdoc />
public string GetImageCacheTag(User user)
public string? GetImageCacheTag(User user)
{
if (user.ProfileImage == null)
{
return null;
}
return (user.ProfileImage.Path + user.ProfileImage.LastModified.Ticks).GetMD5()
.ToString("N", CultureInfo.InvariantCulture);
}
private async Task<(string path, DateTime dateModified)> GetSupportedImage(string originalImagePath, DateTime dateModified)
private Task<(string Path, DateTime DateModified)> GetSupportedImage(string originalImagePath, DateTime dateModified)
{
var inputFormat = Path.GetExtension(originalImagePath)
.TrimStart('.')
.Replace("jpeg", "jpg", StringComparison.OrdinalIgnoreCase);
var inputFormat = Path.GetExtension(originalImagePath.AsSpan()).TrimStart('.').ToString();
// These are just jpg files renamed as tbn
if (string.Equals(inputFormat, "tbn", StringComparison.OrdinalIgnoreCase))
{
return (originalImagePath, dateModified);
return Task.FromResult((originalImagePath, dateModified));
}
if (!_imageEncoder.SupportedInputFormats.Contains(inputFormat))
{
try
{
string filename = (originalImagePath + dateModified.Ticks.ToString(CultureInfo.InvariantCulture)).GetMD5().ToString("N", CultureInfo.InvariantCulture);
// TODO _mediaEncoder.ConvertImage is not implemented
// if (!_imageEncoder.SupportedInputFormats.Contains(inputFormat))
// {
// try
// {
// string filename = (originalImagePath + dateModified.Ticks.ToString(CultureInfo.InvariantCulture)).GetMD5().ToString("N", CultureInfo.InvariantCulture);
//
// string cacheExtension = _mediaEncoder.SupportsEncoder("libwebp") ? ".webp" : ".png";
// var outputPath = Path.Combine(_appPaths.ImageCachePath, "converted-images", filename + cacheExtension);
//
// var file = _fileSystem.GetFileInfo(outputPath);
// if (!file.Exists)
// {
// await _mediaEncoder.ConvertImage(originalImagePath, outputPath).ConfigureAwait(false);
// dateModified = _fileSystem.GetLastWriteTimeUtc(outputPath);
// }
// else
// {
// dateModified = file.LastWriteTimeUtc;
// }
//
// originalImagePath = outputPath;
// }
// catch (Exception ex)
// {
// _logger.LogError(ex, "Image conversion failed for {Path}", originalImagePath);
// }
// }
string cacheExtension = _mediaEncoder.SupportsEncoder("libwebp") ? ".webp" : ".png";
var outputPath = Path.Combine(_appPaths.ImageCachePath, "converted-images", filename + cacheExtension);
var file = _fileSystem.GetFileInfo(outputPath);
if (!file.Exists)
{
await _mediaEncoder.ConvertImage(originalImagePath, outputPath).ConfigureAwait(false);
dateModified = _fileSystem.GetLastWriteTimeUtc(outputPath);
}
else
{
dateModified = file.LastWriteTimeUtc;
}
originalImagePath = outputPath;
}
catch (Exception ex)
{
_logger.LogError(ex, "Image conversion failed for {Path}", originalImagePath);
}
}
return (originalImagePath, dateModified);
return Task.FromResult((originalImagePath, dateModified));
}
/// <summary>

View File

@@ -32,7 +32,7 @@ namespace Emby.Drawing
=> throw new NotImplementedException();
/// <inheritdoc />
public string EncodeImage(string inputPath, DateTime dateModified, string outputPath, bool autoOrient, ImageOrientation? orientation, int quality, ImageProcessingOptions options, ImageFormat selectedOutputFormat)
public string EncodeImage(string inputPath, DateTime dateModified, string outputPath, bool autoOrient, ImageOrientation? orientation, int quality, ImageProcessingOptions options, ImageFormat outputFormat)
{
throw new NotImplementedException();
}
@@ -43,6 +43,12 @@ namespace Emby.Drawing
throw new NotImplementedException();
}
/// <inheritdoc />
public void CreateSplashscreen(IReadOnlyList<string> posters, IReadOnlyList<string> backdrops)
{
throw new NotImplementedException();
}
/// <inheritdoc />
public string GetImageBlurHash(int xComp, int yComp, string path)
{

View File

@@ -1,7 +1,7 @@
using System;
using System.IO;
using System.Linq;
using Emby.Naming.Common;
using Jellyfin.Extensions;
namespace Emby.Naming.Audio
{
@@ -18,8 +18,8 @@ namespace Emby.Naming.Audio
/// <returns>True if file at path is audio file.</returns>
public static bool IsAudioFile(string path, NamingOptions options)
{
var extension = Path.GetExtension(path);
return options.AudioFileExtensions.Contains(extension, StringComparer.OrdinalIgnoreCase);
var extension = Path.GetExtension(path.AsSpan());
return options.AudioFileExtensions.Contains(extension, StringComparison.OrdinalIgnoreCase);
}
}
}

View File

@@ -15,13 +15,13 @@ namespace Emby.Naming.AudioBook
/// <param name="files">List of files composing the actual audiobook.</param>
/// <param name="extras">List of extra files.</param>
/// <param name="alternateVersions">Alternative version of files.</param>
public AudioBookInfo(string name, int? year, List<AudioBookFileInfo>? files, List<AudioBookFileInfo>? extras, List<AudioBookFileInfo>? alternateVersions)
public AudioBookInfo(string name, int? year, IReadOnlyList<AudioBookFileInfo> files, IReadOnlyList<AudioBookFileInfo> extras, IReadOnlyList<AudioBookFileInfo> alternateVersions)
{
Name = name;
Year = year;
Files = files ?? new List<AudioBookFileInfo>();
Extras = extras ?? new List<AudioBookFileInfo>();
AlternateVersions = alternateVersions ?? new List<AudioBookFileInfo>();
Files = files;
Extras = extras;
AlternateVersions = alternateVersions;
}
/// <summary>
@@ -39,18 +39,18 @@ namespace Emby.Naming.AudioBook
/// Gets or sets the files.
/// </summary>
/// <value>The files.</value>
public List<AudioBookFileInfo> Files { get; set; }
public IReadOnlyList<AudioBookFileInfo> Files { get; set; }
/// <summary>
/// Gets or sets the extras.
/// </summary>
/// <value>The extras.</value>
public List<AudioBookFileInfo> Extras { get; set; }
public IReadOnlyList<AudioBookFileInfo> Extras { get; set; }
/// <summary>
/// Gets or sets the alternate versions.
/// </summary>
/// <value>The alternate versions.</value>
public List<AudioBookFileInfo> AlternateVersions { get; set; }
public IReadOnlyList<AudioBookFileInfo> AlternateVersions { get; set; }
}
}

View File

@@ -14,6 +14,7 @@ namespace Emby.Naming.AudioBook
public class AudioBookListResolver
{
private readonly NamingOptions _options;
private readonly AudioBookResolver _audioBookResolver;
/// <summary>
/// Initializes a new instance of the <see cref="AudioBookListResolver"/> class.
@@ -22,6 +23,7 @@ namespace Emby.Naming.AudioBook
public AudioBookListResolver(NamingOptions options)
{
_options = options;
_audioBookResolver = new AudioBookResolver(_options);
}
/// <summary>
@@ -31,21 +33,18 @@ namespace Emby.Naming.AudioBook
/// <returns>Returns IEnumerable of <see cref="AudioBookInfo"/>.</returns>
public IEnumerable<AudioBookInfo> Resolve(IEnumerable<FileSystemMetadata> files)
{
var audioBookResolver = new AudioBookResolver(_options);
// File with empty fullname will be sorted out here.
var audiobookFileInfos = files
.Select(i => audioBookResolver.Resolve(i.FullName))
.Select(i => _audioBookResolver.Resolve(i.FullName))
.OfType<AudioBookFileInfo>()
.ToList();
var stackResult = new StackResolver(_options)
.ResolveAudioBooks(audiobookFileInfos);
var stackResult = StackResolver.ResolveAudioBooks(audiobookFileInfos);
foreach (var stack in stackResult)
{
var stackFiles = stack.Files
.Select(i => audioBookResolver.Resolve(i))
.Select(i => _audioBookResolver.Resolve(i))
.OfType<AudioBookFileInfo>()
.ToList();
@@ -73,7 +72,7 @@ namespace Emby.Naming.AudioBook
var haveChaptersOrPages = stackFiles.Any(x => x.ChapterNumber != null || x.PartNumber != null);
var groupedBy = stackFiles.GroupBy(file => new { file.ChapterNumber, file.PartNumber });
var nameWithReplacedDots = nameParserResult.Name.Replace(" ", ".");
var nameWithReplacedDots = nameParserResult.Name.Replace(' ', '.');
foreach (var group in groupedBy)
{
@@ -87,7 +86,7 @@ namespace Emby.Naming.AudioBook
foreach (var audioFile in group)
{
var name = Path.GetFileNameWithoutExtension(audioFile.Path);
if (name.Equals("audiobook") ||
if (name.Equals("audiobook", StringComparison.OrdinalIgnoreCase) ||
name.Contains(nameParserResult.Name, StringComparison.OrdinalIgnoreCase) ||
name.Contains(nameWithReplacedDots, StringComparison.OrdinalIgnoreCase))
{

View File

@@ -1,7 +1,7 @@
using System;
using System.IO;
using System.Linq;
using Emby.Naming.Common;
using Jellyfin.Extensions;
namespace Emby.Naming.AudioBook
{
@@ -37,7 +37,7 @@ namespace Emby.Naming.AudioBook
var extension = Path.GetExtension(path);
// Check supported extensions
if (!_options.AudioFileExtensions.Contains(extension, StringComparer.OrdinalIgnoreCase))
if (!_options.AudioFileExtensions.Contains(extension, StringComparison.OrdinalIgnoreCase))
{
return null;
}

View File

@@ -1,4 +1,7 @@
#pragma warning disable CA1819
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
using Emby.Naming.Video;
@@ -20,47 +23,60 @@ namespace Emby.Naming.Common
{
VideoFileExtensions = new[]
{
".m4v",
".001",
".3g2",
".3gp",
".nsv",
".ts",
".ty",
".strm",
".rm",
".rmvb",
".ifo",
".mov",
".qt",
".divx",
".xvid",
".bivx",
".vob",
".nrg",
".img",
".iso",
".pva",
".wmv",
".amv",
".asf",
".asx",
".ogm",
".m2v",
".avi",
".bin",
".dvr-ms",
".mpg",
".mpeg",
".mp4",
".mkv",
".avc",
".vp3",
".svq3",
".nuv",
".viv",
".bivx",
".divx",
".dv",
".dvr-ms",
".f4v",
".fli",
".flv",
".001",
".tp"
".ifo",
".img",
".iso",
".m2t",
".m2ts",
".m2v",
".m4v",
".mkv",
".mk3d",
".mov",
".mp4",
".mpe",
".mpeg",
".mpg",
".mts",
".mxf",
".nrg",
".nsv",
".nuv",
".ogg",
".ogm",
".ogv",
".pva",
".qt",
".rec",
".rm",
".rmvb",
".strm",
".svq3",
".tp",
".ts",
".ty",
".viv",
".vob",
".vp3",
".webm",
".wmv",
".wtv",
".xvid"
};
VideoFlagDelimiters = new[]
@@ -122,11 +138,11 @@ namespace Emby.Naming.Common
token: "DSR")
};
VideoFileStackingExpressions = new[]
VideoFileStackingRules = new[]
{
"(?<title>.*?)(?<volume>[ _.-]*(?:cd|dvd|p(?:ar)?t|dis[ck])[ _.-]*[0-9]+)(?<ignore>.*?)(?<extension>\\.[^.]+)$",
"(?<title>.*?)(?<volume>[ _.-]*(?:cd|dvd|p(?:ar)?t|dis[ck])[ _.-]*[a-d])(?<ignore>.*?)(?<extension>\\.[^.]+)$",
"(?<title>.*?)(?<volume>[ ._-]*[a-d])(?<ignore>.*?)(?<extension>\\.[^.]+)$"
new FileStackRule(@"^(?<filename>.*?)(?:(?<=[\]\)\}])|[ _.-]+)[\(\[]?(?<parttype>cd|dvd|part|pt|dis[ck])[ _.-]*(?<number>[0-9]+)[\)\]]?(?:\.[^.]+)?$", true),
new FileStackRule(@"^(?<filename>.*?)(?:(?<=[\]\)\}])|[ _.-]+)[\(\[]?(?<parttype>cd|dvd|part|pt|dis[ck])[ _.-]*(?<number>[a-d])[\)\]]?(?:\.[^.]+)?$", false),
new FileStackRule(@"^(?<filename>.*?)(?:(?<=[\]\)\}])|[ _.-]?)(?<number>[a-d])(?:\.[^.]+)?$", false)
};
CleanDateTimes = new[]
@@ -137,38 +153,29 @@ namespace Emby.Naming.Common
CleanStrings = new[]
{
@"[ _\,\.\(\)\[\]\-](3d|sbs|tab|hsbs|htab|mvc|HDR|HDC|UHD|UltraHD|4k|ac3|dts|custom|dc|divx|divx5|dsr|dsrip|dutch|dvd|dvdrip|dvdscr|dvdscreener|screener|dvdivx|cam|fragment|fs|hdtv|hdrip|hdtvrip|internal|limited|multisubs|ntsc|ogg|ogm|pal|pdtv|proper|repack|rerip|retail|cd[1-9]|r3|r5|bd5|bd|se|svcd|swedish|german|read.nfo|nfofix|unrated|ws|telesync|ts|telecine|tc|brrip|bdrip|480p|480i|576p|576i|720p|720i|1080p|1080i|2160p|hrhd|hrhdtv|hddvd|bluray|blu-ray|x264|x265|h264|xvid|xvidvd|xxx|www.www|AAC|DTS|\[.*\])([ _\,\.\(\)\[\]\-]|$)",
@"(\[.*\])"
@"^\s*(?<cleaned>.+?)[ _\,\.\(\)\[\]\-](3d|sbs|tab|hsbs|htab|mvc|HDR|HDC|UHD|UltraHD|4k|ac3|dts|custom|dc|divx|divx5|dsr|dsrip|dutch|dvd|dvdrip|dvdscr|dvdscreener|screener|dvdivx|cam|fragment|fs|hdtv|hdrip|hdtvrip|internal|limited|multisubs|ntsc|ogg|ogm|pal|pdtv|proper|repack|rerip|retail|cd[1-9]|r3|r5|bd5|bd|se|svcd|swedish|german|read.nfo|nfofix|unrated|ws|telesync|ts|telecine|tc|brrip|bdrip|480p|480i|576p|576i|720p|720i|1080p|1080i|2160p|hrhd|hrhdtv|hddvd|bluray|blu-ray|x264|x265|h264|h265|xvid|xvidvd|xxx|www.www|AAC|DTS|\[.*\])([ _\,\.\(\)\[\]\-]|$)",
@"^(?<cleaned>.+?)(\[.*\])",
@"^\s*(?<cleaned>.+?)\WE[0-9]+(-|~)E?[0-9]+(\W|$)",
@"^\s*\[[^\]]+\](?!\.\w+$)\s*(?<cleaned>.+)",
@"^\s*(?<cleaned>.+?)\s+-\s+[0-9]+\s*$"
};
SubtitleFileExtensions = new[]
{
".ass",
".mks",
".sami",
".smi",
".srt",
".ssa",
".ass",
".sub"
};
SubtitleFlagDelimiters = new[]
{
'.'
};
SubtitleForcedFlags = new[]
{
"foreign",
"forced"
};
SubtitleDefaultFlags = new[]
{
"default"
".sub",
".vtt",
};
AlbumStackingPrefixes = new[]
{
"disc",
"cd",
"disc",
"disk",
"vol",
"volume"
@@ -176,68 +183,100 @@ namespace Emby.Naming.Common
AudioFileExtensions = new[]
{
".nsv",
".m4a",
".flac",
".aac",
".strm",
".pls",
".rm",
".mpa",
".wav",
".wma",
".ogg",
".opus",
".mp3",
".mp2",
".mod",
".amf",
".669",
".3gp",
".aa",
".aac",
".aax",
".ac3",
".act",
".adp",
".adplug",
".adx",
".afc",
".amf",
".aif",
".aiff",
".alac",
".amr",
".ape",
".ast",
".au",
".awb",
".cda",
".cue",
".dmf",
".dsf",
".dsm",
".dsp",
".dts",
".dvf",
".far",
".flac",
".gdm",
".gsm",
".gym",
".hps",
".imf",
".it",
".m15",
".m4a",
".m4b",
".mac",
".med",
".mka",
".mmf",
".mod",
".mogg",
".mp2",
".mp3",
".mpa",
".mpc",
".mpp",
".mp+",
".msv",
".nmf",
".nsf",
".nsv",
".oga",
".ogg",
".okt",
".opus",
".pls",
".ra",
".rf64",
".rm",
".s3m",
".stm",
".sfx",
".shn",
".sid",
".stm",
".strm",
".ult",
".uni",
".xm",
".sid",
".ac3",
".dts",
".cue",
".aif",
".aiff",
".ape",
".mac",
".mpc",
".mp+",
".mpp",
".shn",
".vox",
".wav",
".wma",
".wv",
".nsf",
".spc",
".gym",
".adplug",
".adx",
".dsp",
".adp",
".ymf",
".ast",
".afc",
".hps",
".xm",
".xsp",
".acc",
".m4b",
".oga",
".dsf",
".mka"
".ymf"
};
MediaFlagDelimiters = new[]
{
'.'
};
MediaForcedFlags = new[]
{
"foreign",
"forced"
};
MediaDefaultFlags = new[]
{
"default"
};
EpisodeExpressions = new[]
@@ -250,6 +289,8 @@ namespace Emby.Naming.Common
},
// <!-- foo.ep01, foo.EP_01 -->
new EpisodeExpression(@"[\._ -]()[Ee][Pp]_?([0-9]+)([^\\/]*)$"),
// <!-- foo.E01., foo.e01. -->
new EpisodeExpression(@"[^\\/]*?()\.?[Ee]([0-9]+)\.([^\\/]*)$"),
new EpisodeExpression("(?<year>[0-9]{4})[\\.-](?<month>[0-9]{2})[\\.-](?<day>[0-9]{2})", true)
{
DateTimeFormats = new[]
@@ -272,17 +313,23 @@ namespace Emby.Naming.Common
// This isn't a Kodi naming rule, but the expression below causes false positives,
// so we make sure this one gets tested first.
// "Foo Bar 889"
new EpisodeExpression(@".*[\\\/](?![Ee]pisode)(?<seriesname>[\w\s]+?)\s(?<epnumber>[0-9]{1,3})(-(?<endingepnumber>[0-9]{2,3}))*[^\\\/x]*$")
new EpisodeExpression(@".*[\\\/](?![Ee]pisode)(?<seriesname>[\w\s]+?)\s(?<epnumber>[0-9]{1,4})(-(?<endingepnumber>[0-9]{2,4}))*[^\\\/x]*$")
{
IsNamed = true
},
new EpisodeExpression("[\\\\/\\._ \\[\\(-]([0-9]+)x([0-9]+(?:(?:[a-i]|\\.[1-9])(?![0-9]))?)([^\\\\/]*)$")
new EpisodeExpression(@"[\\\/\._ \[\(-]([0-9]+)x([0-9]+(?:(?:[a-i]|\.[1-9])(?![0-9]))?)([^\\\/]*)$")
{
SupportsAbsoluteEpisodeNumbers = true
},
// Case Closed (1996-2007)/Case Closed - 317.mkv
// Not a Kodi rule as well, but below rule also causes false positives for triple-digit episode names
// [bar] Foo - 1 [baz] special case of below expression to prevent false positives with digits in the series name
new EpisodeExpression(@".*[\\\/]?.*?(\[.*?\])+.*?(?<seriesname>[-\w\s]+?)[\s_]*-[\s_]*(?<epnumber>[0-9]+).*$")
{
IsNamed = true
},
// /server/anything_102.mp4
// /server/james.corden.2017.04.20.anne.hathaway.720p.hdtv.x264-crooks.mkv
// /server/anything_1996.11.14.mp4
@@ -299,11 +346,12 @@ namespace Emby.Naming.Common
// *** End Kodi Standard Naming
// [bar] Foo - 1 [baz]
new EpisodeExpression(@".*?(\[.*?\])+.*?(?<seriesname>[\w\s]+?)[-\s_]+(?<epnumber>[0-9]+).*$")
// "Episode 16", "Episode 16 - Title"
new EpisodeExpression(@"[Ee]pisode (?<epnumber>[0-9]+)(-(?<endingepnumber>[0-9]+))?[^\\\/]*$")
{
IsNamed = true
},
new EpisodeExpression(@".*(\\|\/)[sS]?(?<seasonnumber>[0-9]+)[xX](?<epnumber>[0-9]+)[^\\\/]*$")
{
IsNamed = true
@@ -361,12 +409,20 @@ namespace Emby.Naming.Common
IsOptimistic = true,
IsNamed = true
},
// "Episode 16", "Episode 16 - Title"
new EpisodeExpression(@".*[\\\/][^\\\/]* (?<epnumber>[0-9]{1,3})(-(?<endingepnumber>[0-9]{2,3}))*[^\\\/]*$")
// Series and season only expression
// "the show/season 1", "the show/s01"
new EpisodeExpression(@"(.*(\\|\/))*(?<seriesname>.+)\/[Ss](eason)?[\. _\-]*(?<seasonnumber>[0-9]+)")
{
IsOptimistic = true,
IsNamed = true
}
},
// Series and season only expression
// "the show S01", "the show season 1"
new EpisodeExpression(@"(.*(\\|\/))*(?<seriesname>.+)[\. _\-]+[sS](eason)?[\. _\-]*(?<seasonnumber>[0-9]+)")
{
IsNamed = true
},
};
EpisodeWithoutSeasonExpressions = new[]
@@ -381,6 +437,72 @@ namespace Emby.Naming.Common
VideoExtraRules = new[]
{
new ExtraRule(
ExtraType.Trailer,
ExtraRuleType.DirectoryName,
"trailers",
MediaType.Video),
new ExtraRule(
ExtraType.ThemeVideo,
ExtraRuleType.DirectoryName,
"backdrops",
MediaType.Video),
new ExtraRule(
ExtraType.ThemeSong,
ExtraRuleType.DirectoryName,
"theme-music",
MediaType.Audio),
new ExtraRule(
ExtraType.BehindTheScenes,
ExtraRuleType.DirectoryName,
"behind the scenes",
MediaType.Video),
new ExtraRule(
ExtraType.DeletedScene,
ExtraRuleType.DirectoryName,
"deleted scenes",
MediaType.Video),
new ExtraRule(
ExtraType.Interview,
ExtraRuleType.DirectoryName,
"interviews",
MediaType.Video),
new ExtraRule(
ExtraType.Scene,
ExtraRuleType.DirectoryName,
"scenes",
MediaType.Video),
new ExtraRule(
ExtraType.Sample,
ExtraRuleType.DirectoryName,
"samples",
MediaType.Video),
new ExtraRule(
ExtraType.Clip,
ExtraRuleType.DirectoryName,
"shorts",
MediaType.Video),
new ExtraRule(
ExtraType.Clip,
ExtraRuleType.DirectoryName,
"featurettes",
MediaType.Video),
new ExtraRule(
ExtraType.Unknown,
ExtraRuleType.DirectoryName,
"extras",
MediaType.Video),
new ExtraRule(
ExtraType.Trailer,
ExtraRuleType.Filename,
@@ -477,6 +599,12 @@ namespace Emby.Naming.Common
"-deleted",
MediaType.Video),
new ExtraRule(
ExtraType.DeletedScene,
ExtraRuleType.Suffix,
"-deletedscene",
MediaType.Video),
new ExtraRule(
ExtraType.Clip,
ExtraRuleType.Suffix,
@@ -489,55 +617,17 @@ namespace Emby.Naming.Common
"-short",
MediaType.Video),
new ExtraRule(
ExtraType.BehindTheScenes,
ExtraRuleType.DirectoryName,
"behind the scenes",
MediaType.Video),
new ExtraRule(
ExtraType.DeletedScene,
ExtraRuleType.DirectoryName,
"deleted scenes",
MediaType.Video),
new ExtraRule(
ExtraType.Interview,
ExtraRuleType.DirectoryName,
"interviews",
MediaType.Video),
new ExtraRule(
ExtraType.Scene,
ExtraRuleType.DirectoryName,
"scenes",
MediaType.Video),
new ExtraRule(
ExtraType.Sample,
ExtraRuleType.DirectoryName,
"samples",
MediaType.Video),
new ExtraRule(
ExtraType.Clip,
ExtraRuleType.DirectoryName,
"shorts",
MediaType.Video),
new ExtraRule(
ExtraType.Clip,
ExtraRuleType.DirectoryName,
"featurettes",
MediaType.Video),
new ExtraRule(
ExtraType.Unknown,
ExtraRuleType.DirectoryName,
"extras",
MediaType.Video),
ExtraRuleType.Suffix,
"-extra",
MediaType.Video)
};
AllExtrasTypesFolderNames = VideoExtraRules
.Where(i => i.RuleType == ExtraRuleType.DirectoryName)
.ToDictionary(i => i.Token, i => i.ExtraType, StringComparer.OrdinalIgnoreCase);
Format3DRules = new[]
{
// Kodi rules:
@@ -587,45 +677,10 @@ namespace Emby.Naming.Common
AudioBookNamesExpressions = new[]
{
// Detect year usually in brackets after name Batman (2020)
@"^(?<name>.+?)\s*\(\s*(?<year>\d{4})\s*\)\s*$",
@"^(?<name>.+?)\s*\(\s*(?<year>[0-9]{4})\s*\)\s*$",
@"^\s*(?<name>[^ ].*?)\s*$"
};
var extensions = VideoFileExtensions.ToList();
extensions.AddRange(new[]
{
".mkv",
".m2t",
".m2ts",
".img",
".iso",
".mk3d",
".ts",
".rmvb",
".mov",
".avi",
".mpg",
".mpeg",
".wmv",
".mp4",
".divx",
".dvr-ms",
".wtv",
".ogm",
".ogv",
".asf",
".m4v",
".flv",
".f4v",
".3gp",
".webm",
".mts",
".m2v",
".rec",
".mxf"
});
MultipleEpisodeExpressions = new[]
{
@".*(\\|\/)[sS]?(?<seasonnumber>[0-9]{1,4})[xX](?<epnumber>[0-9]{1,3})((-| - )[0-9]{1,4}[eExX](?<endingepnumber>[0-9]{1,3}))+[^\\\/]*$",
@@ -643,18 +698,34 @@ namespace Emby.Naming.Common
IsNamed = true
}).ToArray();
VideoFileExtensions = extensions
.Distinct(StringComparer.OrdinalIgnoreCase)
.ToArray();
Compile();
}
/// <summary>
/// Gets or sets the folder name to extra types mapping.
/// </summary>
public Dictionary<string, ExtraType> AllExtrasTypesFolderNames { get; set; }
/// <summary>
/// Gets or sets list of audio file extensions.
/// </summary>
public string[] AudioFileExtensions { get; set; }
/// <summary>
/// Gets or sets list of external media flag delimiters.
/// </summary>
public char[] MediaFlagDelimiters { get; set; }
/// <summary>
/// Gets or sets list of external media forced flags.
/// </summary>
public string[] MediaForcedFlags { get; set; }
/// <summary>
/// Gets or sets list of external media default flags.
/// </summary>
public string[] MediaDefaultFlags { get; set; }
/// <summary>
/// Gets or sets list of album stacking prefixes.
/// </summary>
@@ -665,21 +736,6 @@ namespace Emby.Naming.Common
/// </summary>
public string[] SubtitleFileExtensions { get; set; }
/// <summary>
/// Gets or sets list of subtitles flag delimiters.
/// </summary>
public char[] SubtitleFlagDelimiters { get; set; }
/// <summary>
/// Gets or sets list of subtitle forced flags.
/// </summary>
public string[] SubtitleForcedFlags { get; set; }
/// <summary>
/// Gets or sets list of subtitle default flags.
/// </summary>
public string[] SubtitleDefaultFlags { get; set; }
/// <summary>
/// Gets or sets list of episode regular expressions.
/// </summary>
@@ -731,9 +787,9 @@ namespace Emby.Naming.Common
public Format3DRule[] Format3DRules { get; set; }
/// <summary>
/// Gets or sets list of raw video file-stacking expressions strings.
/// Gets the file stacking rules.
/// </summary>
public string[] VideoFileStackingExpressions { get; set; }
public FileStackRule[] VideoFileStackingRules { get; }
/// <summary>
/// Gets or sets list of raw clean DateTimes regular expressions strings.
@@ -755,11 +811,6 @@ namespace Emby.Naming.Common
/// </summary>
public ExtraRule[] VideoExtraRules { get; set; }
/// <summary>
/// Gets list of video file-stack regular expressions.
/// </summary>
public Regex[] VideoFileStackingRegexes { get; private set; } = Array.Empty<Regex>();
/// <summary>
/// Gets list of clean datetime regular expressions.
/// </summary>
@@ -785,7 +836,6 @@ namespace Emby.Naming.Common
/// </summary>
public void Compile()
{
VideoFileStackingRegexes = VideoFileStackingExpressions.Select(Compile).ToArray();
CleanDateTimeRegexes = CleanDateTimes.Select(Compile).ToArray();
CleanStringRegexes = CleanStrings.Select(Compile).ToArray();
EpisodeWithoutSeasonRegexes = EpisodeWithoutSeasonExpressions.Select(Compile).ToArray();

View File

@@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">
<!-- ProjectGuid is only included as a requirement for SonarQube analysis -->
<PropertyGroup>
@@ -6,15 +6,17 @@
</PropertyGroup>
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<TargetFramework>net6.0</TargetFramework>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
<Nullable>enable</Nullable>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
</PropertyGroup>
<PropertyGroup Condition=" '$(Stability)'=='Unstable'">
@@ -23,35 +25,35 @@
</PropertyGroup>
<ItemGroup>
<Compile Include="..\SharedVersion.cs" />
<Compile Include="../SharedVersion.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj" />
<ProjectReference Include="../MediaBrowser.Common/MediaBrowser.Common.csproj" />
<ProjectReference Include="../MediaBrowser.Model/MediaBrowser.Model.csproj" />
</ItemGroup>
<PropertyGroup>
<Authors>Jellyfin Contributors</Authors>
<PackageId>Jellyfin.Naming</PackageId>
<VersionPrefix>10.7.0</VersionPrefix>
<VersionPrefix>10.8.13</VersionPrefix>
<RepositoryUrl>https://github.com/jellyfin/jellyfin</RepositoryUrl>
<PackageLicenseExpression>GPL-3.0-only</PackageLicenseExpression>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="All" />
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1" PrivateAssets="All" />
</ItemGroup>
<!-- Code Analyzers-->
<ItemGroup Condition=" '$(Configuration)' == 'Debug' ">
<!-- TODO: <PackageReference Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="2.9.8" PrivateAssets="All" /> -->
<PackageReference Include="Microsoft.CodeAnalysis.BannedApiAnalyzers" Version="3.3.3">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
<PackageReference Include="SerilogAnalyzer" Version="0.15.0" PrivateAssets="All" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="All" />
<PackageReference Include="StyleCop.Analyzers" Version="1.2.0-beta.406" PrivateAssets="All" />
<PackageReference Include="SmartAnalyzers.MultithreadingAnalyzer" Version="1.1.31" PrivateAssets="All" />
</ItemGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<CodeAnalysisRuleSet>../jellyfin.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,116 @@
using System;
using System.IO;
using System.Linq;
using Emby.Naming.Common;
using Jellyfin.Extensions;
using MediaBrowser.Model.Dlna;
using MediaBrowser.Model.Globalization;
namespace Emby.Naming.ExternalFiles
{
/// <summary>
/// External media file parser class.
/// </summary>
public class ExternalPathParser
{
private readonly NamingOptions _namingOptions;
private readonly DlnaProfileType _type;
private readonly ILocalizationManager _localizationManager;
/// <summary>
/// Initializes a new instance of the <see cref="ExternalPathParser"/> class.
/// </summary>
/// <param name="localizationManager">The localization manager.</param>
/// <param name="namingOptions">The <see cref="NamingOptions"/> object containing FileExtensions, MediaDefaultFlags, MediaForcedFlags and MediaFlagDelimiters.</param>
/// <param name="type">The <see cref="DlnaProfileType"/> of the parsed file.</param>
public ExternalPathParser(NamingOptions namingOptions, ILocalizationManager localizationManager, DlnaProfileType type)
{
_localizationManager = localizationManager;
_namingOptions = namingOptions;
_type = type;
}
/// <summary>
/// Parse filename and extract information.
/// </summary>
/// <param name="path">Path to file.</param>
/// <param name="extraString">Part of the filename only containing the extra information.</param>
/// <returns>Returns null or an <see cref="ExternalPathParserResult"/> object if parsing is successful.</returns>
public ExternalPathParserResult? ParseFile(string path, string? extraString)
{
if (path.Length == 0)
{
return null;
}
var extension = Path.GetExtension(path);
if (!(_type == DlnaProfileType.Subtitle && _namingOptions.SubtitleFileExtensions.Contains(extension, StringComparison.OrdinalIgnoreCase))
&& !(_type == DlnaProfileType.Audio && _namingOptions.AudioFileExtensions.Contains(extension, StringComparison.OrdinalIgnoreCase)))
{
return null;
}
var pathInfo = new ExternalPathParserResult(path);
if (string.IsNullOrEmpty(extraString))
{
return pathInfo;
}
foreach (var separator in _namingOptions.MediaFlagDelimiters)
{
var languageString = extraString;
var titleString = string.Empty;
const int SeparatorLength = 1;
while (languageString.Length > 0)
{
int lastSeparator = languageString.LastIndexOf(separator);
if (lastSeparator == -1)
{
break;
}
string currentSlice = languageString[lastSeparator..];
string currentSliceWithoutSeparator = currentSlice[SeparatorLength..];
if (_namingOptions.MediaDefaultFlags.Any(s => currentSliceWithoutSeparator.Contains(s, StringComparison.OrdinalIgnoreCase)))
{
pathInfo.IsDefault = true;
extraString = extraString.Replace(currentSlice, string.Empty, StringComparison.OrdinalIgnoreCase);
languageString = languageString[..lastSeparator];
continue;
}
if (_namingOptions.MediaForcedFlags.Any(s => currentSliceWithoutSeparator.Contains(s, StringComparison.OrdinalIgnoreCase)))
{
pathInfo.IsForced = true;
extraString = extraString.Replace(currentSlice, string.Empty, StringComparison.OrdinalIgnoreCase);
languageString = languageString[..lastSeparator];
continue;
}
// Try to translate to three character code
var culture = _localizationManager.FindLanguageInfo(currentSliceWithoutSeparator);
if (culture != null && pathInfo.Language == null)
{
pathInfo.Language = culture.ThreeLetterISOLanguageName;
extraString = extraString.Replace(currentSlice, string.Empty, StringComparison.OrdinalIgnoreCase);
}
else
{
titleString = currentSlice + titleString;
}
languageString = languageString[..lastSeparator];
}
pathInfo.Title = titleString.Length >= SeparatorLength ? titleString[SeparatorLength..] : null;
}
return pathInfo;
}
}
}

View File

@@ -1,17 +1,17 @@
namespace Emby.Naming.Subtitles
namespace Emby.Naming.ExternalFiles
{
/// <summary>
/// Class holding information about subtitle.
/// Class holding information about external files.
/// </summary>
public class SubtitleInfo
public class ExternalPathParserResult
{
/// <summary>
/// Initializes a new instance of the <see cref="SubtitleInfo"/> class.
/// Initializes a new instance of the <see cref="ExternalPathParserResult"/> class.
/// </summary>
/// <param name="path">Path to file.</param>
/// <param name="isDefault">Is subtitle default.</param>
/// <param name="isForced">Is subtitle forced.</param>
public SubtitleInfo(string path, bool isDefault, bool isForced)
/// <param name="isDefault">Is default.</param>
/// <param name="isForced">Is forced.</param>
public ExternalPathParserResult(string path, bool isDefault = false, bool isForced = false)
{
Path = path;
IsDefault = isDefault;
@@ -30,6 +30,12 @@ namespace Emby.Naming.Subtitles
/// <value>The language.</value>
public string? Language { get; set; }
/// <summary>
/// Gets or sets the title.
/// </summary>
/// <value>The title.</value>
public string? Title { get; set; }
/// <summary>
/// Gets or sets a value indicating whether this instance is default.
/// </summary>

View File

@@ -1,70 +0,0 @@
using System;
using System.IO;
using System.Linq;
using Emby.Naming.Common;
namespace Emby.Naming.Subtitles
{
/// <summary>
/// Subtitle Parser class.
/// </summary>
public class SubtitleParser
{
private readonly NamingOptions _options;
/// <summary>
/// Initializes a new instance of the <see cref="SubtitleParser"/> class.
/// </summary>
/// <param name="options"><see cref="NamingOptions"/> object containing SubtitleFileExtensions, SubtitleDefaultFlags, SubtitleForcedFlags and SubtitleFlagDelimiters.</param>
public SubtitleParser(NamingOptions options)
{
_options = options;
}
/// <summary>
/// Parse file to determine if is subtitle and <see cref="SubtitleInfo"/>.
/// </summary>
/// <param name="path">Path to file.</param>
/// <returns>Returns null or <see cref="SubtitleInfo"/> object if parsing is successful.</returns>
public SubtitleInfo? ParseFile(string path)
{
if (path.Length == 0)
{
return null;
}
var extension = Path.GetExtension(path);
if (!_options.SubtitleFileExtensions.Contains(extension, StringComparer.OrdinalIgnoreCase))
{
return null;
}
var flags = GetFlags(path);
var info = new SubtitleInfo(
path,
_options.SubtitleDefaultFlags.Any(i => flags.Contains(i, StringComparer.OrdinalIgnoreCase)),
_options.SubtitleForcedFlags.Any(i => flags.Contains(i, StringComparer.OrdinalIgnoreCase)));
var parts = flags.Where(i => !_options.SubtitleDefaultFlags.Contains(i, StringComparer.OrdinalIgnoreCase)
&& !_options.SubtitleForcedFlags.Contains(i, StringComparer.OrdinalIgnoreCase))
.ToList();
// Should have a name, language and file extension
if (parts.Count >= 3)
{
info.Language = parts[^2];
}
return info;
}
private string[] GetFlags(string path)
{
// Note: the tags need be surrounded be either a space ( ), hyphen -, dot . or underscore _.
var file = Path.GetFileName(path);
return file.Split(_options.SubtitleFlagDelimiters, StringSplitOptions.RemoveEmptyEntries);
}
}
}

View File

@@ -1,8 +1,8 @@
using System;
using System.IO;
using System.Linq;
using Emby.Naming.Common;
using Emby.Naming.Video;
using Jellyfin.Extensions;
namespace Emby.Naming.TV
{
@@ -16,7 +16,7 @@ namespace Emby.Naming.TV
/// <summary>
/// Initializes a new instance of the <see cref="EpisodeResolver"/> class.
/// </summary>
/// <param name="options"><see cref="NamingOptions"/> object containing VideoFileExtensions and passed to <see cref="StubResolver"/>, <see cref="FlagParser"/>, <see cref="Format3DParser"/> and <see cref="EpisodePathParser"/>.</param>
/// <param name="options"><see cref="NamingOptions"/> object containing VideoFileExtensions and passed to <see cref="StubResolver"/>, <see cref="Format3DParser"/> and <see cref="EpisodePathParser"/>.</param>
public EpisodeResolver(NamingOptions options)
{
_options = options;
@@ -48,7 +48,7 @@ namespace Emby.Naming.TV
{
var extension = Path.GetExtension(path);
// Check supported extensions
if (!_options.VideoFileExtensions.Contains(extension, StringComparer.OrdinalIgnoreCase))
if (!_options.VideoFileExtensions.Contains(extension, StringComparison.OrdinalIgnoreCase))
{
// It's not supported. Check stub extensions
if (!StubResolver.TryResolveFile(path, _options, out stubType))
@@ -62,12 +62,16 @@ namespace Emby.Naming.TV
container = extension.TrimStart('.');
}
var flags = new FlagParser(_options).GetFlags(path);
var format3DResult = new Format3DParser(_options).Parse(flags);
var format3DResult = Format3DParser.Parse(path, _options);
var parsingResult = new EpisodePathParser(_options)
.Parse(path, isDirectory, isNamed, isOptimistic, supportsAbsoluteNumbers, fillExtendedInfo);
if (!parsingResult.Success && !isStub)
{
return null;
}
return new EpisodeInfo(path)
{
Container = container,

View File

@@ -55,12 +55,12 @@ namespace Emby.Naming.TV
/// <param name="supportSpecialAliases">if set to <c>true</c> [support special aliases].</param>
/// <param name="supportNumericSeasonFolders">if set to <c>true</c> [support numeric season folders].</param>
/// <returns>System.Nullable{System.Int32}.</returns>
private static (int? seasonNumber, bool isSeasonFolder) GetSeasonNumberFromPath(
private static (int? SeasonNumber, bool IsSeasonFolder) GetSeasonNumberFromPath(
string path,
bool supportSpecialAliases,
bool supportNumericSeasonFolders)
{
var filename = Path.GetFileName(path) ?? string.Empty;
string filename = Path.GetFileName(path);
if (supportSpecialAliases)
{
@@ -99,7 +99,7 @@ namespace Emby.Naming.TV
if (filename.Contains(name, StringComparison.OrdinalIgnoreCase))
{
var result = GetSeasonNumberFromPathSubstring(filename.Replace(name, " ", StringComparison.OrdinalIgnoreCase));
if (result.seasonNumber.HasValue)
if (result.SeasonNumber.HasValue)
{
return result;
}
@@ -142,7 +142,7 @@ namespace Emby.Naming.TV
/// </summary>
/// <param name="path">The path.</param>
/// <returns>System.Nullable{System.Int32}.</returns>
private static (int? seasonNumber, bool isSeasonFolder) GetSeasonNumberFromPathSubstring(ReadOnlySpan<char> path)
private static (int? SeasonNumber, bool IsSeasonFolder) GetSeasonNumberFromPathSubstring(ReadOnlySpan<char> path)
{
var numericStart = -1;
var length = 0;

View File

@@ -0,0 +1,29 @@
namespace Emby.Naming.TV
{
/// <summary>
/// Holder object for Series information.
/// </summary>
public class SeriesInfo
{
/// <summary>
/// Initializes a new instance of the <see cref="SeriesInfo"/> class.
/// </summary>
/// <param name="path">Path to the file.</param>
public SeriesInfo(string path)
{
Path = path;
}
/// <summary>
/// Gets or sets the path.
/// </summary>
/// <value>The path.</value>
public string Path { get; set; }
/// <summary>
/// Gets or sets the name of the series.
/// </summary>
/// <value>The name of the series.</value>
public string? Name { get; set; }
}
}

View File

@@ -0,0 +1,60 @@
using Emby.Naming.Common;
namespace Emby.Naming.TV
{
/// <summary>
/// Used to parse information about series from paths containing more information that only the series name.
/// Uses the same regular expressions as the EpisodePathParser but have different success criteria.
/// </summary>
public static class SeriesPathParser
{
/// <summary>
/// Parses information about series from path.
/// </summary>
/// <param name="options"><see cref="NamingOptions"/> object containing EpisodeExpressions and MultipleEpisodeExpressions.</param>
/// <param name="path">Path.</param>
/// <returns>Returns <see cref="SeriesPathParserResult"/> object.</returns>
public static SeriesPathParserResult Parse(NamingOptions options, string path)
{
SeriesPathParserResult? result = null;
foreach (var expression in options.EpisodeExpressions)
{
var currentResult = Parse(path, expression);
if (currentResult.Success)
{
result = currentResult;
break;
}
}
if (result != null)
{
if (!string.IsNullOrEmpty(result.SeriesName))
{
result.SeriesName = result.SeriesName.Trim(' ', '_', '.', '-');
}
}
return result ?? new SeriesPathParserResult();
}
private static SeriesPathParserResult Parse(string name, EpisodeExpression expression)
{
var result = new SeriesPathParserResult();
var match = expression.Regex.Match(name);
if (match.Success && match.Groups.Count >= 3)
{
if (expression.IsNamed)
{
result.SeriesName = match.Groups["seriesname"].Value;
result.Success = !string.IsNullOrEmpty(result.SeriesName) && !match.Groups["seasonnumber"].ValueSpan.IsEmpty;
}
}
return result;
}
}
}

View File

@@ -0,0 +1,19 @@
namespace Emby.Naming.TV
{
/// <summary>
/// Holder object for <see cref="SeriesPathParser"/> result.
/// </summary>
public class SeriesPathParserResult
{
/// <summary>
/// Gets or sets the name of the series.
/// </summary>
/// <value>The name of the series.</value>
public string? SeriesName { get; set; }
/// <summary>
/// Gets or sets a value indicating whether parsing was successful.
/// </summary>
public bool Success { get; set; }
}
}

View File

@@ -0,0 +1,49 @@
using System.IO;
using System.Text.RegularExpressions;
using Emby.Naming.Common;
namespace Emby.Naming.TV
{
/// <summary>
/// Used to resolve information about series from path.
/// </summary>
public static class SeriesResolver
{
/// <summary>
/// Regex that matches strings of at least 2 characters separated by a dot or underscore.
/// Used for removing separators between words, i.e turns "The_show" into "The show" while
/// preserving namings like "S.H.O.W".
/// </summary>
private static readonly Regex _seriesNameRegex = new Regex(@"((?<a>[^\._]{2,})[\._]*)|([\._](?<b>[^\._]{2,}))");
/// <summary>
/// Resolve information about series from path.
/// </summary>
/// <param name="options"><see cref="NamingOptions"/> object passed to <see cref="SeriesPathParser"/>.</param>
/// <param name="path">Path to series.</param>
/// <returns>SeriesInfo.</returns>
public static SeriesInfo Resolve(NamingOptions options, string path)
{
string seriesName = Path.GetFileName(path);
SeriesPathParserResult result = SeriesPathParser.Parse(options, path);
if (result.Success)
{
if (!string.IsNullOrEmpty(result.SeriesName))
{
seriesName = result.SeriesName;
}
}
if (!string.IsNullOrEmpty(seriesName))
{
seriesName = _seriesNameRegex.Replace(seriesName, "${a} ${b}").Trim();
}
return new SeriesInfo(path)
{
Name = seriesName
};
}
}
}

Some files were not shown because too many files have changed in this diff Show More