|
@@ -625,7 +625,7 @@ namespace MediaBrowser.MediaEncoding.Encoder
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
- return await ExtractImageInternal(inputArgument, container, videoStream, imageStreamIndex, threedFormat, offset, true, targetFormat, cancellationToken).ConfigureAwait(false);
|
|
|
+ return await ExtractImageInternal(inputArgument, container, videoStream, imageStreamIndex, threedFormat, offset, true, targetFormat, false, cancellationToken).ConfigureAwait(false);
|
|
|
}
|
|
|
catch (ArgumentException)
|
|
|
{
|
|
@@ -637,7 +637,7 @@ namespace MediaBrowser.MediaEncoding.Encoder
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- return await ExtractImageInternal(inputArgument, container, videoStream, imageStreamIndex, threedFormat, offset, false, targetFormat, cancellationToken).ConfigureAwait(false);
|
|
|
+ return await ExtractImageInternal(inputArgument, container, videoStream, imageStreamIndex, threedFormat, offset, false, targetFormat, isAudio, cancellationToken).ConfigureAwait(false);
|
|
|
}
|
|
|
|
|
|
private string GetImageResolutionParameter()
|
|
@@ -663,7 +663,17 @@ namespace MediaBrowser.MediaEncoding.Encoder
|
|
|
return imageResolutionParameter;
|
|
|
}
|
|
|
|
|
|
- private async Task<string> ExtractImageInternal(string inputPath, string container, MediaStream videoStream, int? imageStreamIndex, Video3DFormat? threedFormat, TimeSpan? offset, bool useIFrame, ImageFormat? targetFormat, CancellationToken cancellationToken)
|
|
|
+ private async Task<string> ExtractImageInternal(
|
|
|
+ string inputPath,
|
|
|
+ string container,
|
|
|
+ MediaStream videoStream,
|
|
|
+ int? imageStreamIndex,
|
|
|
+ Video3DFormat? threedFormat,
|
|
|
+ TimeSpan? offset,
|
|
|
+ bool useIFrame,
|
|
|
+ ImageFormat? targetFormat,
|
|
|
+ bool isAudio,
|
|
|
+ CancellationToken cancellationToken)
|
|
|
{
|
|
|
ArgumentException.ThrowIfNullOrEmpty(inputPath);
|
|
|
|
|
@@ -722,7 +732,7 @@ namespace MediaBrowser.MediaEncoding.Encoder
|
|
|
|
|
|
var vf = string.Join(',', filters);
|
|
|
var mapArg = imageStreamIndex.HasValue ? (" -map 0:" + imageStreamIndex.Value.ToString(CultureInfo.InvariantCulture)) : string.Empty;
|
|
|
- var args = string.Format(CultureInfo.InvariantCulture, "-i {0}{3} -threads {4} -v quiet -vframes 1 -vf {2}{5} -f image2 \"{1}\"", inputPath, tempExtractPath, vf, mapArg, _threads, GetImageResolutionParameter());
|
|
|
+ var args = string.Format(CultureInfo.InvariantCulture, "-i {0}{3} -threads {4} -v quiet -vframes 1 -vf {2}{5} -f image2 \"{1}\"", inputPath, tempExtractPath, vf, mapArg, _threads, isAudio ? string.Empty : GetImageResolutionParameter());
|
|
|
|
|
|
if (offset.HasValue)
|
|
|
{
|