aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/MediaEncoding
AgeCommit message (Collapse)Author
3 daysBackport pull request #15670 from jellyfin/release-10.11.znyanmisaka
Fix the empty output of trickplay on RK3576 Original-merge: 98d1d0cb35a56eadfde335916a937940faf75a23 Merged-by: nielsvanvelzen <nielsvanvelzen@users.noreply.github.com> Backported-by: Bond_009 <bond.009@outlook.com>
3 daysBackport pull request #15556 from jellyfin/release-10.11.zgnattu
Prevent copying HDR streams when only SDR is supported Original-merge: 1e7e46cb8212385f86564b92d111ad80464f45d0 Merged-by: crobibero <cody@robibe.ro> Backported-by: Bond_009 <bond.009@outlook.com>
2025-10-27Backport pull request #15072 from jellyfin/release-10.11.znyanmisaka
Reject stream copy of HDR10+ video if the client does not support HDR10 Original-merge: a725220c219d98ea69bc01d2664e68d58d0230f0 Merged-by: crobibero <cody@robibe.ro> Backported-by: Bond_009 <bond.009@outlook.com>
2025-10-04Limit decoder thread count on AMD AMF to save VRAM (#14943)Nyanmisaka
2025-09-26Expose ExtractAllExtractableSubtitles (#14876)Tim Eisele
2025-09-20Fix CA1051 warnings in EncodingJobInfo.csThomas Jones
Convert public fields to auto-properties and fix member ordering Co-authored-by: Derpipose <90276123+Derpipose@users.noreply.github.com>
2025-09-12Avoid constant arrays as arguments (#14784)Bond-009
2025-07-07Only enable VAAPI MJPEG encoder on Intel iHD driver (#14433)Nyanmisaka
2025-06-26Fix -fps_mode option being applied on input (#14379)Nyanmisaka
2025-06-19Merge pull request #14322 from gnattu/disable-hdr-non-hdr-clientsBond-009
Don't check dynamic metadata removal for static HDR formats
2025-06-17Fix QSV "static surface pool size exceeded" on WindowsNyanmisaka
d3d11va doesn't support dynamic pool size, use vpp filter ctx to relay to prevent encoder async and bframes from exhausting the decoder pool.
2025-06-17Don't check dynamic metadata removal for static HDR formatsgnattu
Those videos have no metadata to be removed at all, just force transcoding when the client does not support it.
2025-06-08Don't attempt to do metadata removal for dovi without fallback (#14240)gnattu
2025-05-26Fix RKRGA 2pass scaling issue caused by auto AR reductionnyanmisaka
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2025-05-26Offload 1080p+ subtitle scaling to RKRGAnyanmisaka
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2025-05-20Enable OpenCL deinterlacer for AMF on Windows when availablenyanmisaka
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2025-05-08Use VBR and MBBRC in QSV encoders for better quality (#14079)Nyanmisaka
2025-05-03Fix the transparency issue of ASS subtitle rendering in HWA (#14024)Nyanmisaka
2025-04-26Merge pull request #13847 from Shadowghost/rework-chapter-managementTim Eisele
Rework chapter management
2025-04-13Add DoVi Profile 5 support for Rockchip RKMPP (#13911)Nyanmisaka
2025-04-08Fix seeking beyond EOF again (#13871)Nyanmisaka
2025-04-05Merge commit from forkJoshua M. Boniface
Fix validation of API parameters passed to FFmpeg
2025-04-03Update MediaBrowser.Controller/MediaEncoding/EncodingHelper.csTim Eisele
Co-authored-by: Cody Robibero <cody@robibe.ro>
2025-04-03Make ReadInputAtNativeFramerate configurable for M3U tuner (#13773)timminator
2025-04-03Cleanup extracted files (#13760)Tim Eisele
* Cleanup extracted files * Pagination and fixes * Add migration for attachments to MigrateLibraryDb * Unify attachment handling * Don't extract again if files were already extracted * Fix MKS attachment extraction * Always run full extraction on mks * Don't try to extract mjpeg streams as attachments * Fallback to check if attachments were extracted to cache folder * Fixup
2025-04-02Improve dynamic HDR metadata handling (#13277)gnattu
* Add support for bitstream filter to remove dynamic hdr metadata * Add support for ffprobe's only_first_vframe for HDR10+ detection * Add BitStreamFilterOptionType for metadata removal check * Map HDR10+ metadata to VideoRangeType.cs Current implementation uses a hack that abuses the EL flag to avoid database schema changes. Should add proper field once EFCore migration is merged. * Add more Dolby Vision Range types Out of spec ones are problematic and should be marked as a dedicated invalid type and handled by the server to not crash the player. Profile 7 videos should not be treated as normal HDR10 videos at all and should remove the metadata before serving. * Remove dynamic hdr metadata when necessary * Allow direct playback of HDR10+ videos on HDR10 clients * Only use dovi codec tag when dovi metadata is not removed * Handle DV Profile 7 Videos better * Fix HDR10+ with new bitmask * Indicate the presence of HDR10+ in HLS SUPPLEMENTAL-CODECS * Fix Dovi 8.4 not labeled as HLG in HLS * Fallback to dovi_rpu bsf for av1 when possible * Fix dovi_rpu cli for av1 * Use correct EFCore db column for HDR10+ * Undo outdated migration * Add proper hdr10+ migration * Remove outdated migration * Rebase to new db code * Add migrations for Hdr10PlusPresentFlag * Directly use bsf enum * Add xmldocs for SupportsBitStreamFilterWithOption * Make `VideoRangeType.Unknown` explicitly default on api models. * Unset default for non-api model class * Use tuples for bsf dictionary for now
2025-03-31Use pattern matching for null checks (#13793)Bond-009
Fix the few that slipped through
2025-03-30Merge pull request #13194 from gnattu/av1-videotoolboxBond-009
Enable VideoToolbox AV1 decode
2025-03-28Add validation for level inputShadowghost
2025-03-28Rename ValidationRegex to ContainerValidationRegexShadowghost
2025-03-27Fix validation of VAAPI/QSV render node path (#13786)Nyanmisaka
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2025-03-25Fixed namespacesJPVenson
2025-03-25WIP fixed namespacesJPVenson
2025-02-05Merge remote-tracking branch 'jellyfinorigin/master' into feature/pgsql_providerJPVenson
2025-02-03Backport pull request #13313 from jellyfin/release-10.10.zgnattu
Use nv15 as intermediate format for 2-pass rkrga scaling Original-merge: 5c6317f68d6e255189ceb64e49500afd046e3a50 Merged-by: crobibero <cody@robibe.ro> Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-03Backport pull request #13288 from jellyfin/release-10.10.zShadowghost
Fix DTS in HLS Original-merge: cea0c9594220778658c30acf640108c26191706e Merged-by: crobibero <cody@robibe.ro> Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-03Backport pull request #13262 from jellyfin/release-10.10.zgnattu
Don't use custom params on ultrafast x265 preset Original-merge: 86160cd99c3134f2ca62e5fc9fac60d9ef702fb0 Merged-by: Bond-009 <bond.009@outlook.com> Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-03Backport pull request #13151 from jellyfin/release-10.10.znyanmisaka
Always do tone-mapping for HDR transcoding when software pipeline is used Original-merge: b31f1696f2cad1ebf37ad33af82161d52c9ca9e9 Merged-by: Bond-009 <bond.009@outlook.com> Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-02Merge remote-tracking branch 'jellyfinorigin/master' into feature/pgsql_providerJPVenson
2025-01-28Fix spelling (#13444)Josh Soref
* spelling: anamorphic Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: associated Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: channelinfo Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: eagerly Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: enumerable Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: greater than/less than Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: greater Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: lineup Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: logs out Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: names Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: paging Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: playlist Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: sanitized Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: saving Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> --------- Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2025-01-26Prepared Seperation of Database components for future multi provider supportJPVenson
2025-01-26Fix typosluzpaz
Found via `codespell -q 3 -D ../../dictionary.txt -S "./Emby.Server.Implementations/Localization" -L allready,childrens,groupe,inh,raisons,re-use,som,supercede,superceded,thirdparty,whoknows`
2025-01-25chore: fix spellingJosh Soref
* a * acceleration * addition * altogether * api clients * artist * associated * bandwidth * cannot * capabilities * case-insensitive * case-sensitive * configuration * delimiter * dependent * diacritics * directors * enable * explicitly * filters * finish * have * hierarchy * implicit * include * information * into * its * keepalive * localization * macos * manual * matching * metadata * nonexistent * options * overridden * parsed * parser * playback * preferring * processes * processing * provider * ratings * retrieval * running * segments * separate * should * station * subdirectories * superseded * supported * system * than * the * throws * transpose * valid * was link: forum or chat rooms Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2024-12-12move to new System.Threading.Lock type for better performanceDaniyar Alpyspayev
2024-12-09Enable VideoToolbox AV1 decodegnattu
This decoder differs from others provided by VideoToolbox in that it lacks any software fallback. To achieve consistent behavior with other VideoToolbox decoders, this PR implemented additional checking on the server to simulate the software fallback provided by VideoToolbox. The current fallback checking mechanism is a temporary solution. In the long term, it should be replaced with a more capable hardware capability checking system.
2024-11-19Backport pull request #13026 from jellyfin/release-10.10.znyanmisaka
Fix missing procamp vaapi filter Original-merge: cf11a2dc1eec3cde51713df745934933102a2dd5 Merged-by: crobibero <cody@robibe.ro> Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-11-19Backport pull request #12991 from jellyfin/release-10.10.zgnattu
Use invariant culture for tonemap options Original-merge: d292fde9e29609b58278e46e4edb155698b2fe1c Merged-by: crobibero <cody@robibe.ro> Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-11-19Backport pull request #12989 from jellyfin/release-10.10.znyanmisaka
Fix InvariantCulture in VPP tonemap options Original-merge: 25321d7f80a3b065a8d3061a93adb78d701b7412 Merged-by: crobibero <cody@robibe.ro> Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-11-19Backport pull request #12973 from jellyfin/release-10.10.znyanmisaka
Fix pixel format in HEVC RExt SDR transcoding Original-merge: aa08d3f2bf155d55f748bff1f0a0c7f071f79ae7 Merged-by: crobibero <cody@robibe.ro> Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-11-19Backport pull request #12947 from jellyfin/release-10.10.zgnattu
Add a small tolerance value to remux fps check Original-merge: 954950dc145db4edf85cc2c1e3ce068274097b71 Merged-by: crobibero <cody@robibe.ro> Backported-by: Joshua M. Boniface <joshua@boniface.me>