2009-06-18 58 views
2

我有一個想法,但不知道是否有可能做到這一點:「中間人」的驅動程序?

是否有可能編碼一個可以將視頻源複用到需要它的任何軟件的USB攝像頭驅動程序? 一種「中間人」的驅動程序:)

回答

1

如果您需要Linux驅動程序,請查看v4l loopback驅動程序:

http://www.lavrsen.dk/foswiki/bin/view/Motion/VideoFourLinuxLoopbackDevice

它應該能夠結合起來,與一些用戶空間代碼,做你想做的。

對於Windows,您可能可以在使用DirectShow的用戶空間中執行某些操作。

+0

太棒了!謝謝 ! 我爲什麼要重新發明輪子? :) – Armageddon 2009-06-18 13:07:39

+0

如果有人知道類似的Windows下.. – Armageddon 2009-06-18 13:10:37

1

是的。至於這是如何依賴系統的。你甚至不會說你在說什麼操作系統。無論如何,Windows和Linux都支持調用其他驅動程序的驅動程序。

+0

我雖然關於Windows,但它可能會有趣的任何操作系統.. – Armageddon 2009-06-18 12:48:50

0

Hrm,如果它是GNU/Linux,MacOS或任何其他支持的操作系統,則可能將設備節點與足夠簡單的FUSE模塊進行復用......如果明天沒有沿此線路做出反應,我會嘗試敲了一點Perl(如果我能找到我的凸輪...):)

前段時間我考慮過編寫類似的東西(作爲一個內核模塊),但它結束了後面的燃燒器 - 這個想法是實際上可用於網絡攝像機,但可用於提供多路複用的只讀設備節點,抽象出提供數據流的任何其他設備節點...

1

這也應該可以在Windows驅動程序模型中使用。它被稱爲「上層過濾驅動程序」,位於普通驅動程序和用戶空間之間。

底層驅動程序顯然是排他性的,而你的過濾器不應該是。這是明智的,然後閱讀this blogpost如何使驅動程序(非)獨佔。