Search code examples
c#.netvideovideo-encodingexpression-encoder-sdk

Generate Video in C# using Microsoft Expression Encoder and a series of bitmaps


I need to generate a video in C#. I am messing around with Microsoft Expression Encoder but what I have is a series of bitmaps at specific time indices. Is there a way to use the Microsoft Expression Encoder to encode a video using a series of bitmaps as I have described?


Solution

  • It CAN be done, but Expression Encoder isn't the right way to do it.

    From a Microsoft employee in their forums:

    This technique is called "time-lapse" or "stop-motion" and unfortunately Expression Encoder by itself isn't the right tool. You could use an AVSynth script as a source for Encoder if you want, but other tailored products to do this will just get you better results.

    and further from the same employee here:

    Unfortunately, Encoder doesn't directly support this scenario. Our pipeline just isn't built to deal with that many input files. There might be a way to do this with AVISynth (which we do support), otherwise it's likely that you'll need to use 3rd party tool to create a video file we can import. Besides using QTP, looks like people trying to do this are using Adobe AfterEffects to do this. Others are using freewares, like Photo Lapse 3 or VirtualDub.