Commit Graph

1066 Commits

Author SHA1 Message Date
Bond_009
5bab02fa54 Fix localization of audio title
Maybe passing ILocalizationManager into the ctor of MediaStream is a better solution for master?
2024-07-15 14:27:12 +02:00
Nyanmisaka
6010bc01c3
Fix MicroDVD being recognized as DVDSUB subtitles (#12149) 2024-06-21 09:07:25 -06:00
Bond-009
f2a5ccf102
Merge pull request #12065 from Rivenlalala/fix-bdmv-file-extension-case-issue
Make m2ts extension case-insensitive
2024-06-15 17:52:05 +02:00
Bond-009
37b7e953f7
Merge pull request #12031 from jellyfin/fix-video-embedded-image
Fix video embedded image detection
2024-06-15 17:36:19 +02:00
Rivenlalala
fcec1fcc4d Make m2ts extension case-insensitive 2024-06-12 04:16:50 +08:00
gnattu
8e5a2f565c Fix mpeg-ts detection
When the container name is `mpeg`, it means it is MPEG-PS, while the TS container should have the explicit name `mpeg-ts`.

Signed-off-by: gnattu <gnattuoc@me.com>
2024-06-09 21:23:13 +08:00
nyanmisaka
99a04e23d9 Fix video embedded image detection
Fixes debbfaa. Embedded images also exist in video.

Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-06-08 16:55:27 +08:00
gnattu
d07ec4ad0f Fix ffprobe -user_agent parameter
The PR #10448 was doing it wrong and actually did not work. Even its unit testing was testing for a wrong output.

Signed-off-by: gnattu <gnattuoc@me.com>
2024-05-28 03:18:46 +08:00
gnattu
45e8872cc0
Extract media attachment one by one if the filename appears to be a path (#11812) 2024-05-26 11:40:28 -06:00
NotSaifA
4a344bebc0
Trickplay: kill ffmpeg when task is cancelled (#11790) 2024-05-24 07:50:55 -06:00
Bond-009
d9232e05f1
Merge pull request #11798 from gnattu/fix-trickplay-image-height
Recalculate trickplay image height for anamorphic videos
2024-05-24 14:19:37 +02:00
Bond-009
52be8be28f
Merge pull request #11754 from Shadowghost/fix-bd-chapter-images
Fix BD/DVD folder chapter image extraction
2024-05-24 14:18:10 +02:00
gnattu
952995f796 Ignore NullOrEmpty imageStream.AspectRatio
Signed-off-by: gnattu <gnattuoc@me.com>
2024-05-23 23:08:29 +08:00
gnattu
933a285bf5 Use single quote
Signed-off-by: gnattu <gnattuoc@me.com>
2024-05-23 23:03:35 +08:00
gnattu
f8da69f8e5 Allow decimal aspect ratio
Signed-off-by: gnattu <gnattuoc@me.com>
2024-05-23 23:02:57 +08:00
gnattu
c6e29647fc Recalculate trickplay image height for anamorphic videos
Signed-off-by: gnattu <gnattuoc@me.com>
2024-05-23 12:36:43 +08:00
Bond_009
6777f47e0e Retain order blu-ray segments 2024-05-21 20:19:15 +02:00
Shadowghost
77abafca8e Fix BD/DVD folder chapter image extraction 2024-05-20 13:19:05 +02:00
gnattu
9b65d243a8 Use OrdinalIgnoreCase comparison
Signed-off-by: gnattu <gnattuoc@me.com>
2024-05-16 20:18:36 +08:00
gnattu
20a1da1855 fix quality parameter for vaapi
Hardware encoders has different expectations about quality input. VAAPI's mjpeg encoder excepts JPEG quality divided by QP2LAMBDA as input.

Signed-off-by: gnattu <gnattuoc@me.com>
2024-05-16 11:49:41 +08: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
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