Commit Graph

660 Commits

Author SHA1 Message Date
Nyanmisaka aa71129cff
Use -noauto{scale,rotate} for disabling auto filters (#10810)
`-auto{scale,rotate} 0` has been dropped in upstream FFmpeg.

Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-01-04 16:31:45 -07:00
Patrick Barron 9215a4d40a Add ITranscodeManager service 2023-12-21 12:53:50 -05:00
Patrick Barron c2081955c8 Rename and clean up TranscodingJob 2023-12-21 12:53:50 -05:00
Patrick Barron abd74fd5a4 Move TranscodingJobDto and TranscodingThrottler to Controller 2023-12-21 12:53:49 -05:00
jkhsjdhjs 547d97d602
Use `eof_action=pass` when overlaying subtitles
The previous behavior using `eof_action=endall` and `shortest=1` would
end the video stream if one of the input stream (video, subtitle) ends.
In some cases the duration of the overlayed subtitles is shorter than the
video stream, causing the output to end when the subtitles end and dropping
the remaining video stream.

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

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

Fix #10698

[1] https://ffmpeg.org/ffmpeg-filters.html#Options-for-filters-with-several-inputs-_0028framesync_0029
2023-12-13 13:11:42 +01:00
Bond_009 b62b0ec2b5 Fix warnings 2023-11-14 21:14:21 +01:00
nyanmisaka 9c270b149c Fix mismatch between intel VAAPI UMD/KMD in rare cases
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-10-22 19:06:35 +08:00
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
Bond-009 0b31997b2f
Merge pull request #10348 from Bond-009/strings 2023-10-08 14:07:30 +02:00
Stepan Goremykin 2d7835c848 Join declaration and assignment 2023-10-08 01:16:43 +02:00
Stepan Goremykin 8ea812b65d Reduce string literal length by using verbatim string 2023-10-08 00:26:12 +02:00
Bond-009 1141883f77
Merge pull request #10321 from feilongfl/master 2023-10-07 00:15:01 +02:00
Claus Vium 6593aa1255
Merge pull request #10135 from 0x25CBFC4F/fix/ffmpeg-probesize
Fixed probesize argument passing to FFmpeg
2023-10-06 11:38:31 +02:00
Claus Vium a18b3fbe70
simplify the if 2023-10-06 10:49:20 +02:00
Bond_009 b176beb88e Reduce string allocations
Some simple changes to reduce the number of allocated strings
2023-10-06 01:04:25 +02:00
fei long 33b3331c72
change Substring to AsSpan
Co-authored-by: Bond-009 <bond.009@outlook.com>
2023-10-06 06:26:52 +08:00
YuLong Yao 808e59fdda
add pcm format when codec is pcm_* 2023-10-02 13:14:53 +08:00
Nyanmisaka 99cc1ed13a
Fix A53 CC SEI breaking H26x_VAAPI hardware encode
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-09-25 22:56:59 +08:00
Nyanmisaka 5ba855098d Backport pull request #10151 from jellyfin/release-10.8.z
Fix performance loss of QSV HDR tone-mapping on Windows

Original-merge: 757f88b1a2

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

Backported-by: Bond_009 <bond.009@outlook.com>
2023-09-21 15:35:39 -04:00
Nyanmisaka 3c2b1b5e97
Fix AV1 NVENC encoder profile option (#10199) 2023-09-08 18:20:11 -06:00
nyanmisaka 31d2f653fa Fix H264 QSV encoding when the bitrate is too low
h264_qsv expects a bitrate equal or higher than 1000k, or it fails.

Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-09-02 00:25:40 +08:00
Bond_009 97d92e7087 Use the correct trancode path
EncodingOptions.TranscodingTempPath can be empty (and is by default),
the correct way to get the trancode path is
EncodingConfigurationExtensions.GetTranscodePath which falls back to $CACHEPATH/transcodes
when EncodingOptions.TranscodingTempPath is null or empty.
2023-08-27 17:27:03 +02:00
Bond_009 18a311d32f == null -> is null 2023-08-22 21:14:54 +02:00
Claus Vium 956e3dab43
fix: accessing Standard* of a Process requires manually disposing them afterwards (#10125) 2023-08-20 20:06:57 +02:00
null 8dc58e8f04
Added handling of FFmpeg:probesize variable 2023-08-20 21:31:14 +04:00
nyanmisaka 44946ded4e Disable AMD EFC feature since it's still unstable in upstream
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-08-03 19:16:46 +08:00
nyanmisaka 5b71cd8af9 Expand AMD VA-API Vulkan filtering support to Polaris/gfx8
ROCm OpenCL runtime is not needed anymore when using HDR tone-mapping on Polaris/gfx8.

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

Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-08-03 06:24:02 +08:00
Nyanmisaka 148c86ee0d
Only disable the global_header for AMD HEVC encoder (#10045) 2023-07-29 06:52:58 -06:00
Bond-009 b95fa294c9
Merge pull request #9799 from Bond-009/genregex 2023-07-06 19:56:00 +02:00
nyanmisaka 76538aacb9 Backport pull request #9928 from jellyfin/release-10.8.z
Disable global_header on AMD VA-API encoder

Original-merge: a732a28229

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

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2023-07-02 01:41:17 -04:00
Nick 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 4ac07f6c76
Merge pull request #9890 from Shadowghost/videorange-rework 2023-06-28 17:30:26 +02:00
Bond_009 b5f0760db8 Use RegexGenerator where possible 2023-06-28 17:07:57 +02:00
Shadowghost 20a4509991 Migrate VideoRange and VideoRangeType to Enum 2023-06-28 12:02:20 +02:00
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 ca7d1a1300 Trickplay generation, manager, storage 2023-06-22 16:19:59 -07:00
nyanmisaka 27d0d8a7f2 Refine SwDec and QSV encoding
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-06-20 03:50:02 +08:00
nyanmisaka be01aeecd9 Add AV1 hardware and software encoding
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-06-20 03:50:02 +08:00
Cody Robibero 4972fbf2a3
Merge pull request #8744 from DomiStyle/segment-deletion 2023-06-19 06:50:13 -06:00
nyanmisaka f81b004d3f Removed unused lines
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-06-18 10:00:53 +08:00
nyanmisaka a81f3e7c97 Fix #9642 backport
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-06-18 09:59:55 +08:00
Dominik 17f1e8d19b
Merge branch 'master' into segment-deletion 2023-06-15 19:38:42 +02:00
nyanmisaka 23b9055547 Rearrage the Amd vaapi-vulkan pipeline for synchronization
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2023-06-13 23:15:30 +08:00
nyanmisaka fdc16e23c4 Backport pull request #9671 from jellyfin/release-10.8.z
Fix the canvas size for DVBSUB and DVDSUB subtitles

Original-merge: eba95cc7f0

Merged-by: Joshua M. Boniface <joshua@boniface.me>

Backported-by: Bond_009 <bond.009@outlook.com>
2023-06-13 10:55:15 -04:00
nyanmisaka 4c8d382765 Backport pull request #9642 from jellyfin/release-10.8.z
Fix the brightness of VPP tonemap and add the tonemap mode

Original-merge: d5a8419bc5

Merged-by: Cody Robibero <cody@robibe.ro>

Backported-by: Bond_009 <bond.009@outlook.com>
2023-06-13 10:53:35 -04:00
TheTyrius 67bc81ec96 Backport pull request #9538 from jellyfin/release-10.8.z
Fix nvenc preset order

Original-merge: 79bb7560dc

Merged-by: Cody Robibero <cody@robibe.ro>

Backported-by: Bond_009 <bond.009@outlook.com>
2023-06-13 10:44:06 -04:00