2009-05-07 57 views
6

Tôi đã tìm thấy một example để truy cập webcam trong C#. Ví dụ này sử dụng thư viện DirectShow.NET. Tôi đã cố gắng để hiểu mã, nhưng cho đến nay điều duy nhất tôi có thể tìm ra là bằng cách nào đó các usercontrol gọi directshow để vẽ trực tiếp đến bề mặt của điều khiển người dùng.C# + DirectShow.NET = Truy cập WebCam đơn giản?

Tôi muốn truy cập từng khung và đặt nó vào đối tượng Bitmap. Làm cách nào tôi có thể biết khi nào một khung hình mới đến? Làm thế nào tôi có thể nắm bắt khung mới này vào một đối tượng Bitmap?

Điều này có thể đơn giản để trả lời nếu bạn biết cách của bạn xung quanh DirectShow.NET.

+0

Bây giờ ngày DirectShow.NET là một dự án đã chết. Xin lỗi ... –

Trả lời

5

Bạn sẽ cần sử dụng giao diện ISampleGrabber có nhiều ví dụ trên mạng về cách sử dụng nó, nó sẽ cung cấp cho bạn dữ liệu ở định dạng thô RGB mà bạn có thể nạp vào lớp Bitmap.

Ngoài ra còn có một thư viện mã nguồn mở được gọi là Touchless nó có một dự án trong mã mà có một cam web và cung cấp cho bạn một cuộc gọi lại mỗi khi một khung mới đến.

+0

Bạn có thể cho tôi biết nơi tôi có thể nhận được qedit.h cần thiết để biên dịch touchless 'WebCamLib không? Tôi đã tải về cả hai cửa sổ sdk và sdk directx, nhưng không thể tìm thấy nó ở bất cứ đâu. – George

+2

biết vấn đề, bạn cần một DirectX SDK tháng 8 năm 2007 cũ. http://www.microsoft.com/downloads/details.aspx?familyid=529F03BE-1339-48C4-BD5A-8506E5ACF571&displaylang=vi –

+0

Tôi đã cài đặt SDK tháng 8 năm 2007, nhưng không tìm thấy qedit.h trong bao gồm dir hoặc anywere khác. – George

Các vấn đề liên quan