feat: yt-dlp prefers H.264, falls back to built-in, no pipe hang (v1.0.0.13)
Some checks failed
Publish Release / release (push) Failing after 8s

- Format string prefers avc1 video + m4a audio, then any codec. The RTX 2070
  host can hardware-transcode H.264 but not AV1.
- Pass Jellyfin's ffmpeg via --ffmpeg-location instead of relying on PATH.
- If yt-dlp fails, retry with the built-in YoutubeExplode downloader.
- Read stdout/stderr while yt-dlp runs (and add --no-progress); before,
  stdout was never read, so a full pipe buffer could block yt-dlp forever.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Martin
2026-10-05 18:01:33 -04:00
parent 6002ce7b46
commit 4145e1f1dd
3 changed files with 24 additions and 15 deletions

View File

@@ -1,5 +1,5 @@
---
version: 1.0.0.12
version: 1.0.0.13
name: CinemaTrailers4Jellyfins
guid: b581493e-1046-40ed-b6dc-cb8027624984
description: >
@@ -12,12 +12,12 @@ category: General
owner: 514mart
targetAbi: 10.11.0.0
changelog:
- Anime trailers now only play before anime. Western animation (Pixar,
Disney, ...) is no longer blocked and follows the normal genre filter
again. A trailer counts as anime when TMDB tags it "anime" or "based on
manga", or it is animation in Japanese, Chinese or Korean; it is marked
with a ct4j-anime tag in its NFO at download time. Your anime is
recognised by the "Anime" genre or the same TMDB keywords
- yt-dlp now prefers H.264 + AAC (plays or hardware-transcodes on every
client; VP9/AV1 often needed a CPU transcode) and uses Jellyfin's own
ffmpeg for the merge
- If yt-dlp fails, the built-in downloader is tried instead
- Fix a possible hang: yt-dlp's output is now read while it runs, so a
full output buffer can no longer block it
dotnetProjects:
- name: Jellyfin.Plugin.CinemaTrailers4Jellyfins