Merge pull request #585 from rosenbjerg/fix-fps-handling-in-join-image-sequence

Fix fps handling in JoinImageSequence
This commit is contained in:
Malte Rosenbjerg 2025-10-18 01:04:10 +02:00 committed by GitHub
commit a599c48511
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 7 additions and 7 deletions

View file

@ -766,7 +766,7 @@ public class VideoTest
Assert.IsTrue(success); Assert.IsTrue(success);
var result = FFProbe.Analyse(outputFile); var result = FFProbe.Analyse(outputFile);
Assert.AreEqual(1, result.Duration.Seconds); Assert.AreEqual(3, result.Duration.Seconds);
Assert.AreEqual(imageAnalysis.PrimaryVideoStream!.Width, result.PrimaryVideoStream!.Width); Assert.AreEqual(imageAnalysis.PrimaryVideoStream!.Width, result.PrimaryVideoStream!.Width);
Assert.AreEqual(imageAnalysis.PrimaryVideoStream!.Height, result.PrimaryVideoStream.Height); Assert.AreEqual(imageAnalysis.PrimaryVideoStream!.Height, result.PrimaryVideoStream.Height);
} }

View file

@ -4,12 +4,11 @@ namespace FFMpegCore.Arguments;
public class GifPaletteArgument : IArgument public class GifPaletteArgument : IArgument
{ {
private readonly int _fps; private readonly double _fps;
private readonly Size? _size; private readonly Size? _size;
private readonly int _streamIndex; private readonly int _streamIndex;
public GifPaletteArgument(int streamIndex, int fps, Size? size) public GifPaletteArgument(int streamIndex, double fps, Size? size)
{ {
_streamIndex = streamIndex; _streamIndex = streamIndex;
_fps = fps; _fps = fps;

View file

@ -132,7 +132,8 @@ public static class FFMpeg
} }
return FFMpegArguments return FFMpegArguments
.FromFileInput(Path.Combine(tempFolderName, $"%09d{fileExtension}"), false) .FromFileInput(Path.Combine(tempFolderName, $"%09d{fileExtension}"), false, options => options
.WithFramerate(frameRate))
.OutputToFile(output, true, options => options .OutputToFile(output, true, options => options
.ForcePixelFormat("yuv420p") .ForcePixelFormat("yuv420p")
.Resize(width!.Value, height!.Value) .Resize(width!.Value, height!.Value)

View file

@ -258,7 +258,7 @@ public class FFMpegArgumentOptions : FFMpegArgumentsBase
return WithArgument(new ID3V2VersionArgument(id3v2Version)); return WithArgument(new ID3V2VersionArgument(id3v2Version));
} }
public FFMpegArgumentOptions WithGifPaletteArgument(int streamIndex, Size? size, int fps = 12) public FFMpegArgumentOptions WithGifPaletteArgument(int streamIndex, Size? size, double fps = 12)
{ {
return WithArgument(new GifPaletteArgument(streamIndex, fps, size)); return WithArgument(new GifPaletteArgument(streamIndex, fps, size));
} }

View file

@ -62,7 +62,7 @@ public static class SnapshotArgumentBuilder
TimeSpan? captureTime = null, TimeSpan? captureTime = null,
TimeSpan? duration = null, TimeSpan? duration = null,
int? streamIndex = null, int? streamIndex = null,
int fps = 12) double fps = 12)
{ {
var defaultGifOutputSize = new Size(480, -1); var defaultGifOutputSize = new Size(480, -1);