There are a lot of ways to add an image overlay on a video. Many of them are GUI based and may be expensive. Here I am going to talk about quick, easy and free option I found to overlay a logo on a video.
FFmpeg is a complete, cross-platform solution to record, convert and stream audio and video. To install it on windows all you need to do is download it from here and unzip it. There is a ffmpeg.exe that can be used directly from windows command prompt.
Once you have a logo image to overlay on a video. All you need to do is to call this command.
ffmpeg.exe -i video.mp4 -i logo.png -filter_complex “overlay=X:Y” output.mp4
where -i is used to supply the input video and image. filter_complex is the option to specify that you want to overlay an image and where is specified by X and Y. X and Y is the number of pixels from the top-left corner of the video where you want to place the top-left corner of the image.
Here is a video on which I have overlaid a sample logo.