2 Commits

Author SHA1 Message Date
Martin
c83d7cbdde fix: use jellyfin-ffmpeg and explicit -f mp4 for fake-movie generation
All checks were successful
Publish Release / release (push) Successful in 10s
Two issues prevented fake-movie generation:
- ffmpeg was invoked by bare name, but only /usr/lib/jellyfin-ffmpeg/ffmpeg
  exists on the host (Jellyfin's bundled copy, not on PATH). Now probing that
  path first with fallback to PATH.
- The temp file extension .tmp caused ffmpeg to fail with "Unable to choose an
  output format" since it auto-detects the container from the extension. Added
  -f mp4 to specify the format explicitly.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-08 16:48:44 -04:00
gitea-actions
f1b36f6d0a chore: update manifest.json for v1.0.0.0 2026-06-08 20:31:51 +00:00
2 changed files with 18 additions and 3 deletions

View File

@@ -97,13 +97,19 @@ namespace Jellyfin.Plugin.CinemaTrailers4Jellyfins.Services
"-shortest", "-shortest",
"-c:v libx264 -tune stillimage -pix_fmt yuv420p", "-c:v libx264 -tune stillimage -pix_fmt yuv420p",
"-c:a aac -b:a 64k", "-c:a aac -b:a 64k",
"-f mp4",
$"\"{tempPath}\""); $"\"{tempPath}\"");
// Prefer Jellyfin's bundled ffmpeg; fall back to whatever is on PATH.
var ffmpegPath = File.Exists("/usr/lib/jellyfin-ffmpeg/ffmpeg")
? "/usr/lib/jellyfin-ffmpeg/ffmpeg"
: "ffmpeg";
using var process = new Process using var process = new Process
{ {
StartInfo = new ProcessStartInfo StartInfo = new ProcessStartInfo
{ {
FileName = "ffmpeg", FileName = ffmpegPath,
Arguments = args, Arguments = args,
RedirectStandardOutput = true, RedirectStandardOutput = true,
RedirectStandardError = true, RedirectStandardError = true,
@@ -135,7 +141,7 @@ namespace Jellyfin.Plugin.CinemaTrailers4Jellyfins.Services
} }
catch (Exception ex) catch (Exception ex)
{ {
_logger.LogError(ex, "|CinemaTrailers4Jellyfins| Failed to generate the master fake-movie file. Is ffmpeg installed and on PATH?"); _logger.LogError(ex, "|CinemaTrailers4Jellyfins| Failed to generate the master fake-movie file.");
return false; return false;
} }
finally finally

View File

@@ -7,6 +7,15 @@
"overview": "Builds a self-contained trailer library for Cinema Mode pre-roll plugins", "overview": "Builds a self-contained trailer library for Cinema Mode pre-roll plugins",
"owner": "514mart", "owner": "514mart",
"imageUrl": "https://www.git.quarantinedstudio.com/mvezina/CinemaTrailers4Jellyfins/raw/branch/main/Jellyfin.Plugin.CinemaTrailers4Jellyfins/Images/logo.svg", "imageUrl": "https://www.git.quarantinedstudio.com/mvezina/CinemaTrailers4Jellyfins/raw/branch/main/Jellyfin.Plugin.CinemaTrailers4Jellyfins/Images/logo.svg",
"versions": [] "versions": [
{
"checksum": "b8a6e246b2f07dadafb196c120dab2f6",
"changelog": "- Initial release based on Trailers4Jellyfin \u2014 TMDB/YouTube trailer downloads, scheduled task, language/date filters, and trailer rotation, repackaged so each trailer ships inside its own fake-movie folder (placeholder video + locked NFO + trailer) for use with a Cinema Mode pre-roll plugin\n",
"targetAbi": "10.11.0.0",
"sourceUrl": "https://www.git.quarantinedstudio.com/mvezina/CinemaTrailers4Jellyfins/releases/download/v1.0.0.0/cinematrailers4jellyfins_1.0.0.0.zip",
"timestamp": "2026-06-08T20:31:51Z",
"version": "1.0.0.0"
}
]
} }
] ]