gnattu
ac0064110b
Backport pull request #11798 from jellyfin/release-10.9.z
...
Recalculate trickplay image height for anamorphic videos
Original-merge: d9232e05f1
Merged-by: Bond-009 <bond.009@outlook.com>
Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-05-25 11:46:22 -04:00
NotSaifA
833a1da355
Backport pull request #11790 from jellyfin/release-10.9.z
...
Trickplay: kill ffmpeg when task is cancelled
Original-merge: 4a344bebc0
Merged-by: crobibero <cody@robibe.ro>
Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-05-25 11:46:19 -04:00
Bond-009
5c828df567
Backport pull request #11781 from jellyfin/release-10.9.z
...
Retain order blu-ray segments
Original-merge: 2ddf2a7866
Merged-by: Bond-009 <bond.009@outlook.com>
Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-05-25 11:46:16 -04:00
Shadowghost
debd9eb8ce
Backport pull request #11754 from jellyfin/release-10.9.z
...
Fix BD/DVD folder chapter image extraction
Original-merge: 52be8be28f
Merged-by: Bond-009 <bond.009@outlook.com>
Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-05-25 11:46:12 -04:00
gnattu
7336427ce6
Backport pull request #11675 from jellyfin/release-10.9.z
...
Fix quality parameter for vaapi_mjpeg
Original-merge: ddd5c302b4
Merged-by: nielsvanvelzen <nielsvanvelzen@users.noreply.github.com>
Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-05-17 13:51:51 -04:00
gnattu
4044431610
Fix broken hardware encoder and filter for trickplay ( #11506 )
2024-05-07 07:23:28 -06:00
Mark Cilia Vincenti
af74aa35d7
Clean up synchronization ( #11458 )
2024-05-05 19:21:54 -06:00
Bond-009
ac108690a8
Use StringSplitOptions.TrimEntries where possible ( #11421 )
2024-04-24 08:35:15 -06:00
gnattu
658a454d81
fix: don't extract external sub ( #11373 )
2024-04-17 10:44:04 -06:00
Bond_009
e9ae2d6a1e
Write JSON directly to logfile
...
Can't be worse than serializing to a string, concatenating and converting to utf8, right?
2024-04-14 23:19:38 +02:00
gnattu
6b6aab04ce
Fix apple audio codecs ( #11315 )
2024-04-08 07:42:47 -06:00
Caidy
4440600379
fix: rtsp live stream ffprobe timeout ( #11279 )
2024-04-02 07:04:25 -06:00
nyanmisaka
deb36eeeda
Add HWA video transpose support (+-90/180)
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-03-30 06:09:58 +08: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
gnattu
e2e366f6d0
fix: prefer cli ffmpeg path over config file ( #11219 )
2024-03-26 13:11:51 -06:00
Nyanmisaka
775815d09c
Fix sar->dar typo in #11185 ( #11210 )
2024-03-25 05:36:18 -06:00
gnattu
b1870792b1
fix: use Metal tonemap instead of OpenCL ( #11198 )
2024-03-24 08:20:05 -06:00
gnattu
bf285a572d
fix: make sure the dimension is divisible by two for zscale ( #11185 )
2024-03-19 15:42:45 -06:00
Cody Robibero
833bc06eb4
Merge pull request #11161 from nyanmisaka/fix-segment-deletion
...
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2024-03-18 08:37:02 -06:00
Bond-009
8070aabe1b
Merge pull request #11165 from vessd/transcoding-exception
...
Catch delete encoded media file exceptions
2024-03-17 17:38:42 +01:00
nyanmisaka
ae7c0c83e9
Bump the required minimum ffmpeg version to 4.4
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-03-17 21:30:42 +08:00
nyanmisaka
557b8f0c78
Apply suggestions from code review
...
Drop the unnecessary initial capacity from the list.
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-03-17 20:45:00 +08:00
Sergey Veselkov
78643b4b2a
Catch delete file exceptions
2024-03-16 09:56:06 +03:00
nyanmisaka
eca9bf41bc
Add TranscodingSegmentCleaner to replace ffmpeg's hlsenc deletion
...
FFmpeg deletes segments based on its own transcoding progress,
but we need to delete segments based on client download progress.
Since disk and GPU speeds vary, using hlsenc's built-in deletion
will result in premature deletion of some segments. As a consequence,
the server has to constantly respin new ffmpeg instances, resulting
in choppy video playback.
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-03-16 07:35:05 +08:00
Joe Rogers
4f7a341c14
Add LSR/CITY to artist whitelist
2024-03-15 14:05:38 -04:00
Bond-009
9dbef98a15
Merge pull request #11129 from crobibero/extract-concat
...
Specify file as concat when extracting attachments
2024-03-09 21:18:06 +01:00
Cody Robibero
a92de9b2e3
Merge pull request #11014 from gnattu/vf-videotoolbox
2024-03-09 09:19:36 -07:00
Cody Robibero
814fc6864d
Specify file as concat when extracting attachments
2024-03-08 18:10:31 -07:00
Attila Szakacs
8d40d431e8
Extract and cache all media attachments in bulk ( #11029 )
...
Similar to https://github.com/jellyfin/jellyfin/pull/10884
---
Jellyfin clients need fonts for subtitles, and each font is a separate
attachment, which causes a lot of re-reads of the file. Certain contents,
like anime in a lot of cases, contain 50-80 different attachments.
Spawning 80 ffmpeg processes at the same time on the same file might
cause swapping on slower HDDs and can bring disk subsystem to a crawl.
(For more info, see https://github.com/jellyfin/jellyfin/3215 )
This change helps a lot in this scenario.
Signed-off-by: Attila Szakacs <szakacs.attila96@gmail.com>
2024-03-03 13:33:54 -07:00
gnattu
1cb7264f0d
feat: fully support videotoolbox hardware filters
...
Signed-off-by: gnattu <gnattuoc@me.com>
2024-02-28 17:56:59 +08:00
Shadowghost
36f298e417
Do not dispose the ffmpeg process
2024-02-25 17:24:54 +01:00
gnattu
44cb9f5fdd
feat: add hw scale filter for videotoolbox
...
Signed-off-by: gnattu <gnattuoc@me.com>
2024-02-15 21:52:41 +08:00
Bond-009
0bf1c10c44
Merge pull request #10990 from Shadowghost/bdmv-fixes
...
BDMV fixes
2024-02-14 11:24:35 +01:00
felix920506
3cf0070287
Escape subtitle extraction input path ( #10992 )
2024-02-10 22:51:09 -07:00
Bond-009
f888ee3dfc
Merge pull request #10772 from dmitrylyzo/normalize-mkv-webm
...
Discard WebM if there is an unsupported codec
2024-02-11 00:26:19 +01:00
Shadowghost
52c79c050b
Order files before creating concat config
2024-02-10 16:53:38 +01:00
Shadowghost
f34c56282d
Use concat config for BDMV/DVD folder attachment extraction
2024-02-10 16:52:21 +01:00
Mark Cilia Vincenti
f26fc7dfb2
Merge changes
2024-02-03 08:45:14 +01:00
Cody Robibero
81cf4b6c50
Merge pull request #10884 from alltilla/extract-all-subtitles
...
Extract all subtitle streams simultaneously
2024-02-02 17:00:01 -07:00
nyanmisaka
52da00c3c7
Register RKMPP HW codecs and filters
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-02-01 18:59:27 +08:00
Attila Szakacs
ce81e2aeab
Add alltilla to CONTRIBUTORS.md
...
Signed-off-by: Attila Szakacs <szakacs.attila96@gmail.com>
2024-01-31 19:18:38 +01:00
nyanmisaka
9323390add
Fix the display aspect ratio of PGSSUB subtitle burn-in
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-01-28 20:06:42 +08:00
Attila Szakacs
8fea819b51
Extract all subtitle streams simultaneously
...
Extracting a subtitle stream is a disk I/O bottlenecked operation as
ffmpeg has to read through the whole file, but usually there is nothing
CPU intensive to do.
If a file has multiple subtitle streams, and we want to extract more
of them, extracting them one-by-one results in reading the whole file
again and again.
However ffmpeg can extract multiple streams at once.
We can optimize this by extracting the subtitle streams all at once
when only one of them gets queried, then we will have all of them
cached for later use.
It is useful for people switching subtitles during playback.
It is even more useful for people who extract all the subtitle streams
in advance, for example with the "Subtitle Extract" plugin.
In this case we reduce the extraction time significantly based on the
number of subtitle streams in the files, which can be 5-10 in many
cases.
Signed-off-by: Attila Szakacs <szakacs.attila96@gmail.com>
2024-01-18 17:29:45 +01:00
Dmitry Lyzo
ba877283a1
fix: add av1 to webm
...
At least AV1 in WebM is supported by Chrome and Firefox.
2024-01-18 08:01:06 +03:00
Cody Robibero
e7b8d45bbb
Use helper function to compare guid ( #10825 )
2024-01-17 08:51:39 -07:00
Mark Cilia Vincenti
e47144e7c7
Updated contributors, upgraded to AsyncKeyedLocker 6.3.0 which now supports non-keyed locking using a similar interface and changed SemaphoreSlim-based locks to using AsyncNonKeyedLocker.
2024-01-14 12:11:16 +01:00
Dmitry Lyzo
39088b5ad2
fix: discard webm if there is an unsupported codec
2024-01-09 10:39:31 +03:00
Mark Cilia Vincenti
d1677dc680
AsyncKeyedLock migration
2024-01-03 16:47:25 +01:00
Patrick Barron
9215a4d40a
Add ITranscodeManager service
2023-12-21 12:53:50 -05:00
Bond_009
635d67d458
Revert "Use System.Net.IPNetwork"
...
This reverts commit 117d05d288da1d412159a29c0cb8d5c8259e48ae.
2023-11-14 21:16:33 +01:00
Bond_009
b62b0ec2b5
Fix warnings
2023-11-14 21:14:21 +01:00
Bond_009
eb022c49cc
Update to .NET 8
2023-11-14 21:12:16 +01:00
Bond_009
a9ef103c95
Add IDisposableAnalyzers to more projects
2023-11-05 02:01:14 +01:00
Vincent Lark
123c6e7d1b
Extract the MediaEncoder probing command arguments builder
2023-10-26 20:06:45 +02:00
Vincent Lark
8ee9a0adf9
Forward user_agent config to ffprobe
2023-10-21 23:57:05 +02:00
Nick
6b94d55e1e
Fix for new WaitForExitAsync method
2023-10-18 20:01:40 -07:00
Nick
cd662506a1
Merge branch 'master' into trickplay
2023-10-18 19:27:05 -07:00
Stepan Goremykin
8d7e4229ca
Merge branch 'master' into fix-resharper-warnings
...
# Conflicts:
# Emby.Server.Implementations/Net/SocketFactory.cs
# RSSDP/SsdpCommunicationsServer.cs
# RSSDP/SsdpDeviceLocator.cs
# RSSDP/SsdpDevicePublisher.cs
2023-10-12 20:11:16 +02:00
Claus Vium
733ee12ee4
Merge pull request #10378 from Bond-009/waitforexitasync
...
Use Process.WaitForExitAsync added in .NET 5
2023-10-10 20:12:07 +02:00
Bond_009
4757ce105b
Use Process.WaitForExitAsync added in .NET 5
2023-10-10 00:18:50 +02:00
Bond_009
c707baed83
Jellyfin.Drawing minor improvements
...
Reduce duplicate/dead code
2023-10-08 17:10:04 +02:00
Bond-009
0b31997b2f
Merge pull request #10348 from Bond-009/strings
2023-10-08 14:07:30 +02:00
Stepan Goremykin
212976277d
Remove redundant ToString call for value types
2023-10-08 01:17:32 +02:00
Stepan Goremykin
2d7835c848
Join declaration and assignment
2023-10-08 01:16:43 +02:00
Stepan Goremykin
3259d484ff
Use generated regex
2023-10-08 01:16:00 +02:00
Stepan Goremykin
526f9a825c
Make files readonly
2023-10-08 00:40:58 +02:00
Stepan Goremykin
8ea812b65d
Reduce string literal length by using verbatim string
2023-10-08 00:26:12 +02:00
Stepan Goremykin
0870af330d
Remove redundant verbatim string prefixes
2023-10-08 00:15:38 +02:00
Claus Vium
0d2202de4f
Merge pull request #10255 from thomasjohansen/fix/probesize
...
Fix/probesize
2023-10-06 11:38:45 +02:00
Bond_009
b176beb88e
Reduce string allocations
...
Some simple changes to reduce the number of allocated strings
2023-10-06 01:04:25 +02:00
Joe Rogers
b95040bc5e
Add We;Na to split whitelist
2023-10-02 23:00:51 -04:00
Thomas Johansen
d0dc080c93
I think this is better
2023-09-29 14:41:35 +02:00
Nick
f97e844c4f
Minor code review changes (cvium)
2023-09-04 13:14:45 -07:00
Nyanmisaka
debbfaa502
Fix MJPEG video is recognized as embedded image ( #10173 )
...
fixes 1d729b2
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-08-30 17:19:52 -06:00
Claus Vium
956e3dab43
fix: accessing Standard* of a Process requires manually disposing them afterwards ( #10125 )
2023-08-20 20:06:57 +02:00
Claus Vium
710f5916f0
Merge pull request #9669 from sleepycatcoding/master
...
Fix subtitle encoder if webvtt is requested
2023-08-10 11:35:20 +02:00
nyanmisaka
5b71cd8af9
Expand AMD VA-API Vulkan filtering support to Polaris/gfx8
...
ROCm OpenCL runtime is not needed anymore when using HDR tone-mapping on Polaris/gfx8.
This change requires jellyfin-ffmpeg5 5.1.3-4 or jellyfin-ffmpeg6 6.0-5
or newer versions.
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-08-03 06:24:02 +08:00
sleepycatcoding
62be2a2ea9
Fix subtitle encoder if webvtt is requested
2023-08-02 15:15:41 +03:00
Shadowghost
f20856411e
Fix format normalizer for multiple input formats
2023-07-28 22:52:54 +02:00
Bond-009
b95fa294c9
Merge pull request #9799 from Bond-009/genregex
2023-07-06 19:56:00 +02:00
Nick
6d9e43cfe0
Merge branch 'master' into trickplay
2023-06-28 21:43:23 -07:00
Bond-009
e53e53eb29
Merge pull request #9907 from nyanmisaka/av1e
2023-06-28 17:34:20 +02:00
Bond_009
b5f0760db8
Use RegexGenerator where possible
2023-06-28 17:07:57 +02:00
Nick
3377032228
crobibero styling, format, code suggestions
2023-06-22 16:23:52 -07:00
Nick
dd8ef08592
Move fps filter to GetVideoProcessingFilterParam
2023-06-22 16:23:52 -07:00
nicknsy
6744e712d3
Use config values
2023-06-22 16:23:51 -07:00
nicknsy
6c649a7e72
Options
2023-06-22 16:19:59 -07:00
nicknsy
ca7d1a1300
Trickplay generation, manager, storage
2023-06-22 16:19:59 -07:00
Bond-009
3982b0e057
Reduce bottlenecks scan code ( #9863 )
2023-06-21 21:01:47 -06:00
nyanmisaka
be01aeecd9
Add AV1 hardware and software encoding
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-06-20 03:50:02 +08:00
Joe Rogers
ba336c25e1
Whitelist Smith/Kotzen
2023-05-04 15:04:38 -04:00
Michael Fuchs
a59ae91d5d
Add artist to artist split whitelist
...
# Changes
Added an artist whose name has forward slashes in it to the artist "/" split whitelist
# Issues
Related to issue #2305
2023-04-29 13:47:09 +02:00
Penelope Gwen / Pogmommy
20cf27f637
Add artist to artist split whitelist ( #9659 )
2023-04-20 07:39:34 -06:00
Stepan Goremykin
910617bbc3
Remove redundant 'else' keywords
2023-04-06 19:38:34 +02:00
Stepan Goremykin
08ce477226
Fix duplicate properties in message template warning
2023-04-06 19:17:28 +02:00
Stepan Goremykin
5508efc2e2
Remove bitwise operator on enum that is not marked by [Flags] attribute
2023-04-06 19:17:28 +02:00
Stepan Goremykin
1c0bb828d2
Fix argument is not used in message template warning
2023-04-06 19:17:28 +02:00
Stepan Goremykin
26958162d0
Remove unused using directives
2023-04-06 19:17:28 +02:00
Stepan Goremykin
779a22a76a
Remove redundant Cast
2023-04-06 19:17:27 +02:00