gnattu
487dbf3e85
Fix Videotoolbox Hi10P hardware decoding
...
We need to mark h264 as 10bit supported for videotoolbox
Signed-off-by: gnattu <gnattuoc@me.com>
6 months ago
gnattu
808cd6f06a
Fix software decoder with videotoolbox encoder
...
Format should be placed before hwupload to support some software decoders
Signed-off-by: gnattu <gnattuoc@me.com>
6 months ago
gnattu
447dd3aed7
Use Math.Min
...
Co-authored-by: Bond-009 <bond.009@outlook.com>
6 months ago
gnattu
058a3dcc6a
Remove legacy encoders
...
Signed-off-by: gnattu <gnattuoc@me.com>
6 months ago
gnattu
1f819d3382
Remove VPx encoders
...
Signed-off-by: gnattu <gnattuoc@me.com>
6 months ago
Nyanmisaka
2aa9cf4007
Merge branch 'master' into fix-hwa-video-rotation
6 months ago
gnattu
7ea91dfcc4
Update VideoToolbox pipeline for jellyfin-ffmpeg7 ( #12380 )
6 months ago
Evan Jarrett
0d8669fbe8
Add a new EncodingOption for QsvDevice
6 months ago
Evan Jarrett
51433528a1
Allow QSV to use the renderNodePath instead of defaulting to the first available device
6 months ago
gnattu
3788ccd447
Add comments for Dave750/NightmodeDialogue 7.1 downmix
...
Signed-off-by: gnattu <gnattuoc@me.com>
6 months ago
gnattu
c171b6def2
fix space
...
Signed-off-by: gnattu <gnattuoc@me.com>
6 months ago
gnattu
31dccaca0f
Add 5.0 and 7.0 support to ac4 downmix
...
Signed-off-by: gnattu <gnattuoc@me.com>
6 months ago
gnattu
daf8d649f2
Add AC4 downmix
...
Signed-off-by: gnattu <gnattuoc@me.com>
6 months ago
gnattu
0a1a109b2e
Add RFC7845 downmix algorithm ( #12300 )
6 months ago
Nyanmisaka
00088c2954
Merge branch 'master' into fix-hwa-video-rotation
7 months ago
Bond-009
d5cf0ad2c8
Merge pull request #11492 from jellyfin/better-vbr-settings
...
Add better audio VBR settings
7 months ago
gnattu
efee37a632
Simplify EnableAudioVbrEncoding getter
...
Co-authored-by: Bond-009 <bond.009@outlook.com>
7 months ago
gnattu
5262439300
Enable hardware Trickplay processing pipeline for VideoToolbox ( #11510 )
7 months ago
Cody Robibero
c207404089
Merge pull request #11511 from jellyfin/trickplay-keyframe-only
7 months ago
gnattu
24910348a1
Force channel to be >= 1
...
Co-authored-by: Cody Robibero <cody@robibe.ro>
7 months ago
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>
7 months ago
gnattu
78929418cc
Use better audio VBR settings
...
LAME's VBR mode only has advantage over a certain bitrate range. For very low and very high bitrate, use the ABR mode instead.
aac_at's CVBR mode produces very good quality and is not worse than its TVBR mode in blind testing. Use this mode for convenience.
The ffmpeg native aac encoder will have quality regression with its VBR mode. Always use CBR mode for ffmpeg's native aac encoder.
Signed-off-by: gnattu <gnattuoc@me.com>
7 months ago
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>
7 months ago
Bond-009
c666f9d050
Use real temp dir instead of cache dir for temp files ( #12226 )
7 months ago
gnattu
2dee5b8d04
Correctly specify format for tonemap
...
Signed-off-by: gnattu <gnattuoc@me.com>
7 months ago
gnattu
016dc9d86c
Add SIMD optimized software tonemap support
...
Signed-off-by: gnattu <gnattuoc@me.com>
7 months ago
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>
8 months ago
Bond-009
92dcf0c13b
Merge pull request #12124 from gnattu/enable-hi10p-vt
...
Enable H.264 Hi10P hardware decode for Apple Silicon on macOS >=14.6
8 months ago
gnattu
9792fb117c
Enable H.264 Hi10P hardware decode for Apple Silicon on macOS >=14.6
...
macOS 14.6 beta and macOS 15 beta enables h264 10bit hardware decode on Apple Silicon.
Signed-off-by: gnattu <gnattuoc@me.com>
8 months ago
gnattu
4fa3c30df2
Backport pull request #11894 from jellyfin/release-10.9.z
...
Escape tmpConcatPath for DVD and BD folder
Original-merge: 26419c64f5
Merged-by: crobibero <cody@robibe.ro>
Backported-by: Joshua M. Boniface <joshua@boniface.me>
8 months ago
gnattu
b123f7ffcd
Backport pull request #11851 from jellyfin/release-10.9.z
...
Relax remuxing requirement for LiveTV
Original-merge: 0392daa103
Merged-by: crobibero <cody@robibe.ro>
Backported-by: Joshua M. Boniface <joshua@boniface.me>
8 months ago
nyanmisaka
fc14c08bcc
Backport pull request #11830 from jellyfin/release-10.9.z
...
Fix the IOSurf error in QSV transcoding
Original-merge: 5e7514243c
Merged-by: crobibero <cody@robibe.ro>
Backported-by: Joshua M. Boniface <joshua@boniface.me>
9 months ago
nyanmisaka
2faa8c141f
Backport pull request #11799 from jellyfin/release-10.9.z
...
Disable VA-VK interop on not supported kernel versions
Original-merge: eb437e7163
Merged-by: Bond-009 <bond.009@outlook.com>
Backported-by: Joshua M. Boniface <joshua@boniface.me>
9 months ago
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>
9 months ago
Bond-009
c7e0be3c3b
Backport pull request #11774 from jellyfin/release-10.9.z
...
Apply audio boost when downmixing regardless of downmixalgo
Original-merge: 06a5ddda5e
Merged-by: nielsvanvelzen <nielsvanvelzen@users.noreply.github.com>
Backported-by: Joshua M. Boniface <joshua@boniface.me>
9 months ago
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>
9 months ago
gnattu
487ebd3ca8
Backport pull request #11713 from jellyfin/release-10.9.z
...
Fix VideoToolbox H264 constrained profile option
Original-merge: d608f1e3cc
Merged-by: Bond-009 <bond.009@outlook.com>
Backported-by: Joshua M. Boniface <joshua@boniface.me>
9 months ago
gnattu
424ca49c26
Backport pull request #11689 from jellyfin/release-10.9.z
...
Workaround ffmpeg keyframe seeking for external subtitles
Original-merge: 02937873b1
Merged-by: nielsvanvelzen <nielsvanvelzen@users.noreply.github.com>
Backported-by: Joshua M. Boniface <joshua@boniface.me>
9 months ago
gnattu
6f78ac2ff3
Use more accurate rounding in GetFixedOutputSize ( #11435 )
...
* Use more accurate rounding in GetFixedOutputSize
Signed-off-by: gnattu <gnattuoc@me.com>
* Force trickplay thumbnails to have even width
Signed-off-by: gnattu <gnattuoc@me.com>
* Use Convert.ToInt32
Signed-off-by: gnattu <gnattuoc@me.com>
* Force video size as thumbnail size if the trickplay width setting is larger
This will fix an issue when the trickplay setting contains a very huge width, but the video has a lower resolution than that setting. Our scaling filter logic will not do any upscale, and we have to force to use the video width
Signed-off-by: gnattu <gnattuoc@me.com>
---------
Signed-off-by: gnattu <gnattuoc@me.com>
9 months ago
gnattu
374b6ca0e2
Only apply custom downmix to 5.1 audios ( #11401 )
10 months ago
Bond-009
7d28d08e08
Enable more warnings as errors ( #11288 )
10 months ago
gnattu
6b6aab04ce
Fix apple audio codecs ( #11315 )
10 months ago
gnattu
fe88a484d1
fix: don't do empty hwupload for VT ( #11235 )
10 months ago
gnattu
a8f1668540
fix: unset qmin and qmax for vt ( #11246 )
...
Co-authored-by: Nyanmisaka <nst799610810@gmail.com>
10 months ago
nyanmisaka
deb36eeeda
Add HWA video transpose support (+-90/180)
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
10 months ago
Nyanmisaka
16e72d6883
Fix the broken codecs shifting ( #11243 )
11 months ago
gnattu
5db0c5a0e4
fix: forward port patch for GHSA-866x-wj5j-2vf4 ( #11228 )
11 months ago
gnattu
be21d51742
fix: move trickplay specific option into TrickplayOptions ( #11229 )
11 months ago
gnattu
2e9aa146a5
fix: remove legacy codecs ( #11217 )
11 months ago
gnattu
b1870792b1
fix: use Metal tonemap instead of OpenCL ( #11198 )
11 months ago
gnattu
cf16110a56
fix: map encoder preset to quality setting for VideoToolbox ( #11205 )
11 months ago
vedant
3bbb57eb83
Add new VideoRangeTypes to fully support DoVi on webOS ( #10469 )
11 months ago
nyanmisaka
ae7c0c83e9
Bump the required minimum ffmpeg version to 4.4
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
11 months ago
nyanmisaka
557b8f0c78
Apply suggestions from code review
...
Drop the unnecessary initial capacity from the list.
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
11 months ago
nyanmisaka
47a77974b8
Apply suggestions from code review
...
Drop excludeFilePaths and lower the log level to debug to avoid
spamming in the log file.
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
11 months ago
nyanmisaka
50541aea91
Apply suggestions from code review
...
Add excludeFilePaths to skip segment files in which IOException occurred.
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
11 months ago
nyanmisaka
39b953e41c
Set input readrate for using SegmentDeletion with stream-copy
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
11 months ago
nyanmisaka
55fd6b5cb9
Add sanity check for ThrottleDelaySeconds
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
11 months ago
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>
11 months ago
Cody Robibero
a92de9b2e3
Merge pull request #11014 from gnattu/vf-videotoolbox
11 months ago
gnattu
0909ee7208
fix: convert all non-yuv420 inputs to nv12
...
Signed-off-by: gnattu <gnattuoc@me.com>
11 months ago
gnattu
e6dee627e3
fix: force a pixel format for 10-bit inputs
...
Signed-off-by: gnattu <gnattuoc@me.com>
11 months ago
gnattu
d10ad6c383
fix: no need to check filters prematurely
...
Signed-off-by: gnattu <gnattuoc@me.com>
11 months ago
gnattu
2f66871040
fix: also check if we are doing scaling
...
Signed-off-by: gnattu <gnattuoc@me.com>
11 months ago
gnattu
f31549cc0d
fix: code clean up
...
Co-authored-by: nyanmisaka <nst799610810@gmail.com>
Signed-off-by: gnattu <gnattuoc@me.com>
11 months ago
gnattu
a30dc81b28
fix: stack overflow
...
Signed-off-by: gnattu <gnattuoc@me.com>
11 months ago
gnattu
ec896a901c
fix: code style
...
Signed-off-by: gnattu <gnattuoc@me.com>
11 months ago
gnattu
1cb7264f0d
feat: fully support videotoolbox hardware filters
...
Signed-off-by: gnattu <gnattuoc@me.com>
12 months ago
Nyanmisaka
aa3aaa94fe
Fix the preproc filters for dvbsub burn-in ( #11034 )
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
12 months ago
gnattu
21bf557145
fix: use hardware videotoolbox filter even only scale is available
...
Signed-off-by: gnattu <gnattuoc@me.com>
12 months ago
gnattu
0a8560f64a
fix: use hardware filter option name explicitly
...
Signed-off-by: gnattu <gnattuoc@me.com>
12 months ago
gnattu
2f3e5cfa06
fix: correctly set the supported formats of videotoolbox tone mapping
...
Signed-off-by: gnattu <gnattuoc@me.com>
12 months ago
gnattu
0a4457dd68
fix: typo
...
Signed-off-by: gnattu <gnattuoc@me.com>
12 months ago
gnattu
5c743f2b4d
feat: separate videotoolbox tone mapping option
...
Signed-off-by: gnattu <gnattuoc@me.com>
12 months ago
gnattu
cf3e3e2c3d
fix: code style
...
Signed-off-by: gnattu <gnattuoc@me.com>
12 months ago
gnattu
c18ef13b3b
feat: add tone mapping for videotoolbox
...
Signed-off-by: gnattu <gnattuoc@me.com>
12 months ago
gnattu
44cb9f5fdd
feat: add hw scale filter for videotoolbox
...
Signed-off-by: gnattu <gnattuoc@me.com>
12 months ago
Shadowghost
9230472056
Fix file extension based on container
1 year ago
Bond-009
143ef71528
Merge pull request #10969 from barronpm/progress-cleanup
...
Progress cleanup
1 year ago
Patrick Barron
a54c08209e
Remove some unused media encoding code
1 year ago
nyanmisaka
be265cd87f
Add EqualsAny for VideoCodecTag condition
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
1 year ago
Mark Cilia Vincenti
f26fc7dfb2
Merge changes
1 year ago
nyanmisaka
e62dab627e
Add full HWA transcoding pipeline for RKMPP
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
1 year ago
nyanmisaka
92c0ec0c1b
Use video framerate for ASS subtitle HW burn-in
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
1 year ago
nyanmisaka
9323390add
Fix the display aspect ratio of PGSSUB subtitle burn-in
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
1 year ago
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.
1 year ago
Mark Cilia Vincenti
6a257e1b40
Merge branch 'master' into AsyncKeyedLock-migration
1 year ago
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>
1 year ago
Mark Cilia Vincenti
d1677dc680
AsyncKeyedLock migration
1 year ago
Patrick Barron
9215a4d40a
Add ITranscodeManager service
1 year ago
Patrick Barron
c2081955c8
Rename and clean up TranscodingJob
1 year ago
Patrick Barron
abd74fd5a4
Move TranscodingJobDto and TranscodingThrottler to Controller
1 year ago
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
1 year ago
Bond_009
b62b0ec2b5
Fix warnings
1 year ago
nyanmisaka
9c270b149c
Fix mismatch between intel VAAPI UMD/KMD in rare cases
...
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
1 year ago
Nick
cd662506a1
Merge branch 'master' into trickplay
1 year ago
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
1 year ago
Bond-009
0b31997b2f
Merge pull request #10348 from Bond-009/strings
1 year ago
Stepan Goremykin
2d7835c848
Join declaration and assignment
1 year ago
Stepan Goremykin
8ea812b65d
Reduce string literal length by using verbatim string
1 year ago