Which is the best API/Library to use when accessing a WebCam in .Net?
-
19-08-2019 - |
Question
Which is the best API to use when accessing a WebCam in .Net? (I know they can be webcam specific, I am willing to buy a new webcam if it means better results).
I want to write a desktop application that will take video from a webcam and store it in MPEG4 formats (DivX, Xvid, etc...). I would also like to access bitmap stills from the device so I can do image comparison between frames.
I have tried various libraries, and none have really been a great fit (some have performance issues (very inconsistent framerates), some have image quality limitations, some just crash out for seemingly no reason. I want to get high quality video (as high as I can get) and a decent framerate.
My webcam is more than up to the job and I was hoping that there would be a nice Managed .Net library around that would help my cause.
Are webcam APIs all just incredibly bad?
Solution
You never said which ones you have already used but I recommend you might want to try out DirectShow.NET for capturing the device and FFMPEG for your video conversions. You will find both these libraries on SourceForge.
OTHER TIPS
Use OpenCV. It is a computer vision library that can receive input from webcams, images and videos, and output videos and images. It also comes with a lot of image manipulation functions so it would probably be ideal for what you are wanting.