Skip to content

Commit 9efb4e3

Browse files
committed
Special version using images from a folder instead of extracting them from a video
Images are sorted by name. Most features should work as expected.
1 parent 7475c96 commit 9efb4e3

14 files changed

+114
-325
lines changed

MovieBarCodeGenerator.Tests/DebugTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public void Generate_All_Barcode_Settings_Combinations()
5757
{
5858
Assert.Inconclusive("Uncomment me to run the test");
5959

60-
var ffmpegWrapper = new FfmpegWrapper(FfmpegExecutablePath);
60+
var ffmpegWrapper = new ImageProvider();
6161
var streamProcessor = new ImageStreamProcessor();
6262

6363
var allGenerators = new List<IBarGenerator>();

MovieBarCodeGenerator.Tests/VideoProcessingTests.cs

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -50,17 +50,6 @@ public void TestFileCanBeCreated()
5050
Assert.IsTrue(File.Exists(TestVideoFileName));
5151
}
5252

53-
[Test]
54-
public void FfmpegWrapper_GetMediaDuration_Returns_Correct_Value()
55-
{
56-
CreateTestVideoIfNecessary();
57-
var ffmpegWrapper = new FfmpegWrapper(FfmpegExecutablePath);
58-
59-
var duration = ffmpegWrapper.GetMediaDuration(TestVideoFileName, CancellationToken.None);
60-
61-
Assert.AreEqual(TimeSpan.FromSeconds(TestVideoDuration), duration);
62-
}
63-
6453
[Test]
6554
[TestCase(1)]
6655
[TestCase(2)]
@@ -70,7 +59,7 @@ public void FfmpegWrapper_GetMediaDuration_Returns_Correct_Value()
7059
public async Task FfmpegWrapper_GetImagesFromMedia_Returns_Expected_Values(int requestedFrameCount)
7160
{
7261
CreateTestVideoIfNecessary();
73-
var ffmpegWrapper = new FfmpegWrapper(FfmpegExecutablePath);
62+
var ffmpegWrapper = new ImageProvider();
7463

7564
var images = ffmpegWrapper.GetImagesFromMedia(
7665
TestVideoFileName,

MovieBarCodeGenerator/CLI/CLIBatchProcessor.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ namespace MovieBarCodeGenerator.CLI
3535
public class CLIBatchProcessor
3636
{
3737
private BarCodeParametersValidator _barCodeParametersValidator = new BarCodeParametersValidator();
38-
private FfmpegWrapper _ffmpegWrapper = new FfmpegWrapper("ffmpeg.exe");
38+
private ImageProvider _imageProvider = new ImageProvider();
3939
private ImageStreamProcessor _imageProcessor = new ImageStreamProcessor();
4040

4141
public void Process(string[] args)
@@ -168,7 +168,6 @@ private void DealWithOneInputFile(RawArguments arguments)
168168
rawBarWidth: arguments.RawBarWidth,
169169
rawImageWidth: arguments.RawWidth,
170170
rawImageHeight: arguments.RawHeight,
171-
useInputHeightForOutput: arguments.UseInputHeight,
172171
// Choosing whether to overwrite or not is done after validating parameters, not here
173172
shouldOverwriteOutputPaths: x => { existingOutputs = x; return true; },
174173
generators);
@@ -191,7 +190,7 @@ private void DealWithOneInputFile(RawArguments arguments)
191190
{
192191
result = _imageProcessor.CreateBarCodes(
193192
parameters,
194-
_ffmpegWrapper,
193+
_imageProvider,
195194
CancellationToken.None,
196195
null,
197196
x => Console.WriteLine(x));

MovieBarCodeGenerator/Core/BarCodeParametersValidator.cs

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@ public BarCodeParameters GetValidatedParameters(
3333
string rawBarWidth,
3434
string rawImageWidth,
3535
string rawImageHeight,
36-
bool useInputHeightForOutput,
3736
Func<IReadOnlyCollection<string>, bool> shouldOverwriteOutputPaths,
3837
IEnumerable<IBarGenerator> barGenerators)
3938
{
@@ -84,16 +83,13 @@ public BarCodeParameters GetValidatedParameters(
8483
}
8584

8685
int? imageHeight = null;
87-
if (!useInputHeightForOutput)
86+
if (int.TryParse(rawImageHeight, out var nonNullableImageHeight) && nonNullableImageHeight > 0)
8887
{
89-
if (int.TryParse(rawImageHeight, out var nonNullableImageHeight) && nonNullableImageHeight > 0)
90-
{
91-
imageHeight = nonNullableImageHeight;
92-
}
93-
else
94-
{
95-
throw new ParameterValidationException("Invalid output height.");
96-
}
88+
imageHeight = nonNullableImageHeight;
89+
}
90+
else
91+
{
92+
throw new ParameterValidationException("Invalid output height.");
9793
}
9894

9995
return new BarCodeParameters

MovieBarCodeGenerator/Core/BitmapStream.cs

Lines changed: 0 additions & 116 deletions
This file was deleted.

MovieBarCodeGenerator/Core/FfmpegWrapper.cs

Lines changed: 0 additions & 145 deletions
This file was deleted.

MovieBarCodeGenerator/Core/GdiBarGenerator.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
using System.Drawing;
2222
using System.Drawing.Drawing2D;
2323
using System.Drawing.Imaging;
24+
using System.IO;
2425
using System.Linq;
2526
using System.Text;
2627
using System.Threading.Tasks;
@@ -89,7 +90,7 @@ public GdiBarGenerator(
8990
public string DisplayName => _displayName ?? Name;
9091
public string FileNameSuffix { get; }
9192

92-
public Image GetBar(BitmapStream source, int barWidth, int barHeight)
93+
public Image GetBar(FileStream source, int barWidth, int barHeight)
9394
{
9495
var sourceImage = Image.FromStream(source, true, false);
9596
var useSaneDefaults = ScalingMode == ScalingMode.Sane;

0 commit comments

Comments
 (0)