Commit Graph

3162 Commits

Author SHA1 Message Date
Cody Robibero
c207404089
Merge pull request #11511 from jellyfin/trickplay-keyframe-only 2024-07-17 12:28:58 -04:00
Cody Robibero
b026772764
Move external url listing to provider for plugin use (#12279) 2024-07-17 09:48:31 -04:00
Bond_009
ecd2dab0a2 Add TrySetProviderId extension 2024-07-17 15:48:21 +02:00
gnattu
7ad432be23 Default EnableAudioVbrEncoding to true in TranscodingProfile
This will match the old behavior when user takes no action for clients

Signed-off-by: gnattu <gnattuoc@me.com>
2024-07-17 21:27:35 +08:00
gnattu
0381c5a288 Add EnableAudioVbrEncoding to TranscodingProfile
This will allow the client selectively disable VBR audio when it causes problems.

Signed-off-by: gnattu <gnattuoc@me.com>
2024-07-17 21:27:35 +08:00
gnattu
c8f157444c Make comment better
Signed-off-by: gnattu <gnattuoc@me.com>
2024-07-17 14:08:39 +08:00
gnattu
ed9d27bb3a Correctly set bitrate limit for remuxing
Signed-off-by: gnattu <gnattuoc@me.com>
2024-07-17 13:35:59 +08:00
gnattu
a16d3d4887 Allow clients to send audio container override for HLS
This will improve flexibility due to overcome the complex compatibility situation of HLS

Signed-off-by: gnattu <gnattuoc@me.com>
2024-07-17 13:35:59 +08:00
gnattu
e4101128e0 feat: add audio remux to UniversalAudioController
Signed-off-by: gnattu <gnattuoc@me.com>
2024-07-17 13:35:59 +08:00
Cody Robibero
042d3e3f93
Don't include new internal MediaStream properties in api spec (#12288) 2024-07-16 12:57:02 -04:00
gnattu
68bfabbaba Add option to extract keyframe only during trickplay image generation
This would be significantly faster than decoding every frame, but it does have compatibility issues. Not all decoders support this mode, notably the VP9 decoder, CUVID decoders, and QSV decoders.

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

Signed-off-by: gnattu <gnattuoc@me.com>
2024-07-17 00:47:22 +08:00
Bond-009
f68038f2cf
Run DeleteTranscodeFileTask on startup (#12239) 2024-07-15 08:55:31 -04:00
David Schulte
fc1bee30a6
Allow streaming of raw PGS subtitles without transcoding (#12056) 2024-07-15 08:48:09 -04:00
Erwin de Haan
3262f8dc2a
Add check for ProviderIds to prevent '=' from appearing in keys, also support '=' in the values. (#12274) 2024-07-15 08:44:22 -04:00
nyanmisaka
d37c5d8921 Backport pull request #12149 from jellyfin/release-10.9.z
Fix MicroDVD being recognized as DVDSUB subtitles

Original-merge: 6010bc01c3

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

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-06-23 11:40:59 -04:00
Bond_009
e2c4e52f39 Add regressions tests for update library endpoint 2024-06-02 18:18:13 +02:00
crobibero
35bc6866d5 Backport pull request #11802 from jellyfin/release-10.9.z
Mark SearchHint.MatchedTerm as nullable

Original-merge: ab6c2424db

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

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-05-25 11:46:26 -04:00
Bond_009
69ae006f37 Prefer profile over codec for display title
FFmpeg 6.1 and newer can recognize Dolby Atmos and DTS:X.
This change makes it possible to see if a track has one of these technologies
if the used FFmpeg supports it.
2024-05-21 14:55:42 +02:00
gnattu
5df171b3f9 Add remuxing support for VP9
Add VP9 as a valid HLS format to enable remuxing. This is useful when audio processing is required, but the VP9 video can be passed as-is to avoid unnecessary video transcoding.

No VP9 encoder is enabled and should not be enabled. AV1 and HEVC should be preferred over VP9 if video transcoding is required.

Signed-off-by: gnattu <gnattuoc@me.com>
2024-05-16 09:34:21 +08:00
Cody Robibero
23d0537fb3
Fix reference to deprecated package (#11530) 2024-05-14 16:55:29 -06:00
Jellyfin Release Bot
04022f85af Bump version to 10.10.0 2024-05-11 14:23:59 -04:00
gnattu
145dc31ccb
Default to not extract lyrics (#11523) 2024-05-10 09:03:09 -06:00
gnattu
688a734895
Don't close inactive session on default (#11491) 2024-05-05 19:21:44 -06:00
Bond_009
2ad872001d Address comments 2024-04-28 17:16:33 +02:00
Bond_009
88a38a61b5 Improve audio normalization
* Move calculation of LUFS to a scheduled task as it's pretty slow
* Correctly calculate album LUFS
* Don't try to convert replaygain tags to LUFS values
2024-04-28 15:18:53 +02:00
Bond-009
428283f787
Always scan ReplayGain tag (#11418) 2024-04-24 08:09:01 -06:00
GeorgeH005
e93fa27e4c
Add support for out-of-spec but existent, Dolby Vision Profile 8 CCid 6 media. (#11334) 2024-04-10 13:33:24 -06:00
Joshua M. Boniface
ee1d6332ee
Merge pull request #11220 from Shadowghost/add-playlist-acl-api
Add playlist ACL endpoints
2024-04-10 12:52:01 -04:00
Shadowghost
8cf77424f6 Apply review suggestions 2024-04-02 08:08:36 +02:00
Shadowghost
c1dbb49315 Implement update endpoint 2024-04-01 20:43:05 +02:00
Shadowghost
bff37ed13a Apply review suggestions 2024-04-01 19:59:48 +02:00
Cody Robibero
3ade3a8e63
Lowercase CollectionTypeOptions to match legacy experience (#11272) 2024-03-31 21:58:06 -06:00
Niels van Velzen
84b933d835
Use enum for BaseItemDto.ExtraType (#11261) 2024-03-31 14:48:46 -06:00
nyanmisaka
bf654bde60 Add json parser for video rotation side data
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-03-30 06:09:58 +08:00
gnattu
be21d51742
fix: move trickplay specific option into TrickplayOptions (#11229) 2024-03-28 09:26:01 -06:00
Niels van Velzen
8d02c45e6c
Fix default values missing in ClientCapabilities(Dto) (#11232) 2024-03-27 15:36:30 -06:00
Shadowghost
2aaa9f669a Apply review suggestions 2024-03-27 06:39:14 +01:00
Shadowghost
56c432a843 Apply review suggestions 2024-03-26 23:45:14 +01:00
Shadowghost
f1dc1610a2 Extend playlist creation capabilities 2024-03-26 16:13:07 +01:00
Shadowghost
88b3490d17 Add playlist ACL endpoints 2024-03-26 15:49:18 +01:00
vedant
3bbb57eb83
Add new VideoRangeTypes to fully support DoVi on webOS (#10469) 2024-03-23 07:39:49 -06:00
Bond-009
adb08c0aaa
Merge pull request #11149 from Bond-009/nullable4
Enable nullable for more files
2024-03-17 18:00:10 +01:00
btopherjohnson
9a40a67c60
Add ability to enable/disable libraries (#11037)
Co-authored-by: Bond-009 <bond.009@outlook.com>
Co-authored-by: Cody Robibero <cody@robibe.ro>
2024-03-17 09:50:48 -06:00
standstaff
64b7f0f721 chore: remove repetitive words
Signed-off-by: standstaff <zhengxingru@yeah.net>
2024-03-15 17:08:03 +08:00
Bond_009
651681c276 Enable nullable for more files 2024-03-13 14:56:51 +01:00
Bond-009
d910c78fe5
Merge pull request #11126 from crobibero/lowercase-protocol
Lowercase MediaStreamProtocol for backwards compatibility
2024-03-09 21:17:10 +01:00
Cody Robibero
a92de9b2e3
Merge pull request #11014 from gnattu/vf-videotoolbox 2024-03-09 09:19:36 -07:00
Cody Robibero
e731250342 Lowercase MediaStreamProtocol for backwards compatibility 2024-03-08 15:29:22 -07:00
Niels van Velzen
407cf5d0bf
Add MediaStreamProtocol enum (#10153)
* Add MediaStreamProtocol enum

* Add default handling for enum during deserialization

---------

Co-authored-by: Cody Robibero <cody@robibe.ro>
2024-03-04 16:44:54 -07:00
gnattu
a30dc81b28 fix: stack overflow
Signed-off-by: gnattu <gnattuoc@me.com>
2024-02-29 09:03:00 +08:00
Cody Robibero
a8a9f66878 standardize docs 2024-02-28 17:39:09 -07:00
Cody Robibero
c5e723bccd Add support for converting from svg to other image types 2024-02-28 09:56:02 -07:00
Cody Robibero
0bc41c015f
Store lyrics in the database as media streams (#9951) 2024-02-26 05:09:40 -07:00
Bond-009
1dfaa171a9
Merge pull request #10934 from dkacperski97/session-shuffle-mode
Add PlaybackOrder to Session state
2024-02-21 19:56:07 +01:00
Cody Robibero
31715c6b8a
Merge pull request #10981 from barronpm/livetv-listingsmanager
Add IListingsManager Service
2024-02-20 10:44:46 -08:00
Robert Lützner
2bd85df383
Add missing MIME types for comicbook formats (#11010)
* Correct MIME types for comicbook file extensions

cb7, cba, cbr, cbt and cbz all refer to different types of digital
comicbooks. The last letter of the extension indicates the compression
algorithm that was used: 7zip, arc, rar, tar or zip.

All these filetypes used to have the `application/x-cbr` MIME type
assigned to them. However, that has since been deprecated and was
replaced with

- `application/vnd.comicbook-rar` for rar compressed files and
- `application/vnd.comicbook+zip` for rar compressed files.

Only these two are officially listed by IANA

https://www.iana.org/assignments/media-types/application/vnd.comicbook+zip

. cbr and cbz are by far the most common file extensions for comicbooks.

There's no official MIME type for cb7, cba or cbt files. However, with
rar being a proprietary compression algorithm, FOSS applications will
often refuse to handle files that identify themselves as
`application/x-cbr`, so I decided to assign extension specific MIME
types to them. I've seen these being used by other applications,
specifically comic book readers.

I've read through the docs on iana.org, but haven't figured out why they
chose `-rar`, but `+zip`.

* Add conversions from MIME type to file extensions for comicbook formats

cb7, cba, cbr, cbt and cbz all refer to different types of digital
comicbooks. The last letter of the extension indicates the compression
algorithm that was used: 7zip, arc, rar, tar or zip.

All these filetypes used to have the `application/x-cbr` MIME type
assigned to them. However, that has since been deprecated and was
replaced with

- `application/vnd.comicbook-rar` for rar compressed files and
- `application/vnd.comicbook+zip` for rar compressed files.

Only these two are officially listed by IANA

https://www.iana.org/assignments/media-types/application/vnd.comicbook+zip

. cbr and cbz are by far the most common file extensions for comicbooks.

There's no official MIME type for cb7, cba or cbt files. However, with
rar being a proprietary compression algorithm, FOSS applications will
often refuse to handle files that identify themselves as
`application/x-cbr`, so I decided to assign extension specific MIME
types to them. I've seen these being used by other applications,
specifically comic book readers.

* Update CONTRIBUTORS.md
2024-02-15 23:15:14 +01:00
gnattu
5c743f2b4d feat: separate videotoolbox tone mapping option
Signed-off-by: gnattu <gnattuoc@me.com>
2024-02-16 00:16:59 +08:00
felix920506
aaa9345a53
Correct m4b mimetype (#10980) 2024-02-10 21:39:30 -07:00
Damian Kacperski
59a9586dbd Add PlaybackOrder to Session state 2024-02-09 20:41:32 +01:00
Patrick Barron
42b052a5a6 Add IListingsManager service 2024-02-08 15:20:46 -05:00
Bond-009
e50170a417
Merge pull request #10973 from nielsvanvelzen/api-dep-fixes
Fix some incompatible API deprecations
2024-02-07 19:32:17 +01:00
Bond-009
143ef71528
Merge pull request #10969 from barronpm/progress-cleanup
Progress cleanup
2024-02-07 16:24:36 +01:00
Niels van Velzen
be29b4a0c4 Fix some incompatible API deprecations 2024-02-06 22:23:31 +01:00
Patrick Barron
6d8062116c Remove some unused model code 2024-02-06 10:15:29 -05:00
nyanmisaka
be265cd87f Add EqualsAny for VideoCodecTag condition
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-02-05 23:41:43 +08:00
nyanmisaka
d423efd2ea Add a new HWA type RKMPP
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-02-01 18:59:27 +08:00
Cody Robibero
e7b8d45bbb
Use helper function to compare guid (#10825) 2024-01-17 08:51:39 -07:00
Patrick Barron
c101d287f2 Remove unused Live TV code 2024-01-15 13:29:55 -05:00
Patrick Barron
68fd9c469f
Remove DLNA-specific DeviceProfile code (#10850)
* Remove DLNA-specific methods from DeviceProfile

* Remove DLNA-specific fields from DeviceProfile

* Remove unused DLNA models
2024-01-12 09:24:32 -07:00
Mohamed Akram
f49de51225
Detect audio spatial format (#9996)
* Detect audio spatial format

* Update MediaBrowser.Model/Entities/MediaStream.cs

* Update MediaStream.cs

---------

Co-authored-by: Cody Robibero <cody@robibe.ro>
2024-01-06 14:11:08 -07:00
TelepathicWalrus
7b5c41c2a5
Add option to use replaygain tags for audio (#10566)
* Add option to use replaygain tags for audio

* Change regex to be specific

* Use ffprobe for faster metadata grabs

* Change regex to .Match
2024-01-06 13:59:56 -07:00
Niels van Velzen
55916a09eb
Remove some unused client capabilities and sync code (#10812) 2024-01-06 13:33:48 -07:00
Bond-009
21374775e5
Merge pull request #10422 from scampower3/api-update
Update /Device endpoint to return CustomName
2023-12-18 21:06:30 +01:00
Bond-009
24cbd64450
Merge pull request #10573 from arabcoders/master
Add new API endpoint to view/update Item UserData
2023-12-15 18:00:50 +01:00
Patrick Barron
0d5bbfda32
Remove unused DLNA models (#10685)
* Remove unused DLNA models

* Remove IDlnaManager
2023-12-06 16:06:42 -07:00
Bond-009
cc276838b4
Merge pull request #10558 from barronpm/dlna-plugin2
Move DLNA to Plugin (Part 2)
2023-11-30 17:40:06 +01:00
Claus Vium
0be2817ccb
Merge pull request #10371 from Pithaya/feat/book-persons
Allow persons on books
2023-11-23 23:09:06 +01:00
Abdulmohsen
9d5dc4d71b
Merge branch 'jellyfin:master' into master 2023-11-24 00:00:53 +03:00
ArabCoders
324c86e14d Made key & itemId nullable 2023-11-23 14:37:37 +03:00
ArabCoders
22c90141e7 Made UpdateUserItemDataDto standalone object. 2023-11-23 12:14:31 +03:00
Patrick Barron
e46e3be667 Remove DLNA socket code 2023-11-15 20:54:03 -05:00
Bond_009
faa22cdb84 Update deps
* Removes SourceLink as it should work automagically with .NET 8
2023-11-16 00:50:48 +01:00
Bond_009
efec6e7a23 Address review comment 2023-11-15 15:22:51 +01:00
ArabCoders
c4013d2e10 Updated the summary and the Dto name. 2023-11-15 13:55:14 +03:00
Bond_009
635d67d458 Revert "Use System.Net.IPNetwork"
This reverts commit 117d05d288da1d412159a29c0cb8d5c8259e48ae.
2023-11-14 21:16:33 +01:00
Bond_009
b62b0ec2b5 Fix warnings 2023-11-14 21:14:21 +01:00
Bond_009
99e0d46ad9 Use System.Net.IPNetwork 2023-11-14 21:13:51 +01:00
Bond_009
eb022c49cc Update to .NET 8 2023-11-14 21:12:16 +01:00
Pithaya
eb2bcc91c5
Merge branch 'master' into feat/book-persons 2023-11-13 18:07:23 +01:00
ArabCoders
07db2025a1 Refactored the code to not use reflection. 2023-11-13 17:32:24 +03:00
ArabCoders
2a25c5a2e3 Refactored api call logic handling. 2023-11-13 15:51:06 +03:00
ArabCoders
bce22fcc2a Added new API endpoint to update User item data 2023-11-12 17:52:24 +03:00
Bond-009
4288106acd
Merge pull request #9762 from crobibero/media-type
Convert string MediaType to enum MediaType
2023-11-12 12:17:46 +01:00
Chris H
3fd505a454
Validate AuthenticationProviderId and PasswordResetProviderId (#10553) 2023-11-10 07:51:44 -07:00
Cody Robibero
892973a9e3
Merge branch 'master' into media-type 2023-11-09 22:03:55 -07:00
Cody Robibero
906f701fa8
Convert CollectionType, SpecialFolderType to enum (#9764)
* Convert CollectionType, SpecialFolderType to enum

* Hide internal enum CollectionType values

* Apply suggestions from code review

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

* Fix recent change

* Update Jellyfin.Data/Attributes/OpenApiIgnoreEnumAttribute.cs

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

---------

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

* Rename Unknown to Default
2023-11-09 14:00:13 -07:00
Bond_009
a9ef103c95 Add IDisposableAnalyzers to more projects 2023-11-05 02:01:14 +01:00
Claus Vium
0973f1e0ba
Merge pull request #10357 from herby2212/kill-inactive-streams-v2
Add auto close of an inactive session after X minutes
2023-10-27 09:47:43 +02:00
Claus Vium
db4605609c
Merge pull request #10410 from Ch1nkara/add-users-permission-to-edit-subtitles
add EnableSubtitleManagement permission
2023-10-27 09:44:52 +02:00