Throw on FFmpeg non-zero exit code
This commit is contained in:
parent
c26e6d89b4
commit
32f3d60a84
|
@ -11,6 +11,7 @@ using System.Threading.Tasks;
|
|||
using Jellyfin.Api.Models.PlaybackDtos;
|
||||
using Jellyfin.Api.Models.StreamingDtos;
|
||||
using Jellyfin.Data.Enums;
|
||||
using MediaBrowser.Common;
|
||||
using MediaBrowser.Common.Configuration;
|
||||
using MediaBrowser.Controller.Configuration;
|
||||
using MediaBrowser.Controller.Library;
|
||||
|
@ -607,6 +608,10 @@ namespace Jellyfin.Api.Helpers
|
|||
{
|
||||
StartThrottler(state, transcodingJob);
|
||||
}
|
||||
else if (transcodingJob.ExitCode != 0)
|
||||
{
|
||||
throw new FfmpegException(string.Format(CultureInfo.InvariantCulture, "FFmpeg exited with code {0}", transcodingJob.ExitCode));
|
||||
}
|
||||
|
||||
_logger.LogDebug("StartFfMpeg() finished successfully");
|
||||
|
||||
|
@ -743,6 +748,7 @@ namespace Jellyfin.Api.Helpers
|
|||
private void OnFfMpegProcessExited(Process process, TranscodingJobDto job, StreamState state)
|
||||
{
|
||||
job.HasExited = true;
|
||||
job.ExitCode = process.ExitCode;
|
||||
|
||||
_logger.LogDebug("Disposing stream resources");
|
||||
state.Dispose();
|
||||
|
|
|
@ -106,6 +106,11 @@ namespace Jellyfin.Api.Models.PlaybackDtos
|
|||
/// </summary>
|
||||
public bool HasExited { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets exit code.
|
||||
/// </summary>
|
||||
public int ExitCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether is user paused.
|
||||
/// </summary>
|
||||
|
|
Loading…
Reference in New Issue
Block a user