Bytescout Image To Video SDK can show conversion progress during images to video conversion.

The VB.NET and C# sample codes below demonstrate how to read conversion progress when you convert JPG, PNG, BMP images to AVI or WMV video with Image To Video SDK.

Visual Basic .NET

Imports System.Diagnostics
Imports System.Threading
Imports BytescoutImageToVideoLib

Class Program
Friend Shared Sub Main(ByVal args As String())

Console.WriteLine("Converting JPG slides into video, please wait..")

' Create BytescoutImageToVideoLib.ImageToVideo object instance
Dim converter As New ImageToVideo()

' Activate the component
converter.RegistrationName = "demo"
converter.RegistrationKey = "demo"

' set default in effect for slides (you can also set effects for each single slide)
converter.Slides.DefaultSlideInEffect = 1 ' teFadeIn (1) - fades in effect for slides transition
converter.Slides.DefaultSlideInEffectDuration = 500 ' 500 msec for in effect

' Add images and set the duration for every slide
Dim slide As Slide
slide = DirectCast(converter.AddImageFromFileName("........slide1.jpg"), Slide)

slide.Duration = 3000 ' 3000ms = 3s
slide = DirectCast(converter.AddImageFromFileName("........slide2.jpg"), Slide)

slide.Duration = 3000
slide = DirectCast(converter.AddImageFromFileName("........slide3.jpg"), Slide)

slide.Duration = 3000

' Set output video size
converter.OutputWidth = 400

converter.OutputHeight = 300

' Set output video file name
converter.OutputVideoFileName = "result.wmv"

Console.WriteLine("Conversion started. Hit a key to abort...")

' Run the conversion
converter.Run()

' Show conversion progress:

Dim i As Integer = 0

Dim spin As Char() = New Char() {"|"c, "/"c, "-"c, ""c}

While Not Console.KeyAvailable AndAlso converter.IsRunning
Dim progress As Single = converter.ConversionProgress
Console.WriteLine([String].Format("Converting images {0}% {1}", progress, spin(i)))

Console.CursorTop -= 1
i = i + 1

i = i Mod 4
Thread.Sleep(50)

End While

If converter.IsRunning Then
converter.Stop()

Console.WriteLine("Conversion aborted by user.")
Else
Console.WriteLine("Conversion competed successfully.")

End If

' Open the result video file in default media player
Process.Start("result.wmv")

Console.WriteLine()
Console.WriteLine("Hit any key...")
Console.ReadKey()

End Sub
End Class 

Visual C#

using System;

using System.Diagnostics;
using System.Threading;
using BytescoutImageToVideoLib;

namespace ConversionProgress
{
class Program
{
static void Main(string[] args)

{

Console.Write("Converting JPG slides into video, please wait..");

// Create BytescoutImageToVideoLib.ImageToVideo object instance

ImageToVideo converter = new ImageToVideo();

// Activate the component
converter.RegistrationName = "demo";

converter.RegistrationKey = "demo";

// Add images and set the duration for every slide
Slide slide;

slide = (Slide)converter.AddImageFromFileName("..\..\..\..\slide1.jpg");

slide.Duration = 3000; // 3000ms = 3s
slide = (Slide)converter.AddImageFromFileName("..\..\..\..\slide2.jpg");

slide.Duration = 3000;
slide = (Slide)converter.AddImageFromFileName("..\..\..\..\slide3.jpg");

slide.Duration = 3000;

// Set output video size
converter.OutputWidth = 400;

converter.OutputHeight = 300;

// Set output video file name
converter.OutputVideoFileName = "result.wmv";

Console.WriteLine("Conversion started. Hit a key to abort...");

// Run the conversion
converter.Run();

// Show conversion progress:

int i = 0;
char[] spin = new char[] { '|', '/', '-', '\' };

while (!Console.KeyAvailable && converter.IsRunning)
{

float progress = converter.ConversionProgress;
Console.WriteLine(String.Format("Converting images {0}% {1}", progress, spin[i++]));

Console.CursorTop--;
i %= 4;
Thread.Sleep(50);

}

if (converter.IsRunning)
{
converter.Stop();

Console.WriteLine("Conversion aborted by user.");
}
else

{
Console.WriteLine("Conversion competed successfully.");
}

// Open the result video file in default media player
Process.Start("result.wmv");

Console.WriteLine();

Console.WriteLine("Hit any key...");
Console.ReadKey();

}
}
}