Video capture and streaming from Webcam

Posted on 2002-06-07
Medium Priority
Last Modified: 2013-11-13
I'm currently trying to write a piece of software that will capture video from a webcam, and stream this over a LAN to other computers on the network.

So far, I've managed to write code that will capture an AVI file, and code that will send this AVI to any other machine that requests it. However, I need to take this a step further and make this a real time process, letting other users on the LAN watch the video live, as it happens.

After a little research, it seems that I must capture the AVI to memory, rather than to a file. The OCX I was using doesn't support this, so I feel like I'm back to square one. Thus the first part of my question, can anyone recommend an OCX that will let me save the file to ram instead?

Now, when it comes to streaming, I know little more than it's usually (or possibly always?) done with the UDP protocol. Again, this shouldn't prove to be a problem, since I'm quite comfortable with the use of the winsock control for TCP and UDP communication.

However, I still need to figure out:

1) How to capture the AVI to RAM
2) How to prepare this stream / retreive the data to be sent via the winsock control

Full points will be given to anyone who can offer me relative code, otherwise I will drop the points available and allocate them to anyone who can point me to another site with references to this subject that prove useful in the final solution.

Thanks in advance,

Stephen Sherlock
Question by:stesherlock
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Expert Comment

ID: 7064157
Have a look at the Windows Media packes on the MS sites.

Windows Media Encoder is free to download, and works very well.  I have many servers spread across the country streaming 28kbps HTTP programs 24x7x365

If you can't get WME to recognise your Webcam drivers, you may be better off getting a low cost compatible encoder card (many listed on WME site) and going that way.  The quality and reliability will be well worth the difference.


Author Comment

ID: 7064620
I'm afraid neither of those suggestions appear to acheive my desired result.

I need to be able to code this feature into an existing project to provide additional functionality, so the MS WME is out of the question (unless I've overlooked something on the site? Some more accurate links would be appreciated if this is the case).

The second method seems to only capture shots at certain intervals, which is again not really what I'm looking for since the video will ideally be real time, around the 15-25 FPS mark.

Thanks for trying.
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Author Comment

ID: 7066022
I may be wrong, but I've just downloaded the DirectX SDK again, and this DirectShow side of things seems to look promising.

Has anyone had any expereience with DirectShow from VB? Any relevant code would be greatly appreciated.

Author Comment

ID: 7068555
Since I believe the way to go with this is now to use DirectShow, I'm going to delete this question and post another with a different "topic" that may promote more interest.


Accepted Solution

Un1 earned 750 total points
ID: 7145138
Did you try the AVPhone controls?


Author Comment

ID: 7146798
Well, since it was the AV Phone control that I ended up using (and forgot about this question in the process :() I'll give the points to UN1 for being the first to suggest it...

Featured Post

On Demand Webinar: Networking for the Cloud Era

Did you know SD-WANs can improve network connectivity? Check out this webinar to learn how an SD-WAN simplified, one-click tool can help you migrate and manage data in the cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
Since upgrading to Office 2013 or higher installing the Smart Indenter addin will fail. This article will explain how to install it so it will work regardless of the Office version installed.
This theoretical tutorial explains exceptions, reasons for exceptions, different categories of exception and exception hierarchy.
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…
Suggested Courses

801 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question