Microsoft had an API as part of DirectX called DirectShow, specifically geared toward encoding, decoding and editing sound and video. Unfortunately, it is no longer being actively developed, but there is a .NET wrapper available here if you'd like to experiment:
http://directshownet.sourceforge.net/
I've also found a wrapper around AVIFile, but that is pretty old, too:
http://www.codeproject.com/KB/audio-video/avifilewrapper.aspx
The codeproject article details adding bitmaps to video files, so it may be a useful resource for you. Best of luck!