2010-01-30 5 views
0

Je fais un travail stéréoscopique, ce qui signifie que j'ai besoin de travailler avec deux instances de différents filtres (c'est-à-dire une source de caméra qui reçoit un flux IP), et cela s'avère non trivial.Comment puis-je cloner un filtre DirectShow de source vidéo?

J'ai même essayé de copier IPCamfilter.ax vers IPCamfilter.ax et de créer manuellement de nouvelles entrées CLSID dans le reg, et le clone apparaît, mais ne fonctionnera pas. Des idées?

Devrais-je modifier le binaire de filtres clones pour modifier son CLSID et l'enregistrer? Ou existe-t-il un moyen simple d'utiliser GraphEdit pour cela?

Répondre

0

Rien dans COM ne vous empêche de créer deux instances du même fichier clsid, vous résolvez donc le problème en essayant de changer le fichier clsid. Il doit y avoir quelque chose dans les éléments internes du filtre qui empêche l'utilisation multiple dans le même processus.

Si vous ne pouvez pas accéder à la source pour le réparer, vous pouvez avoir deux graphiques de capture dans des processus distincts et utiliser un pont quelconque pour combiner les deux sorties dans un troisième graphique (ou dans votre application) .

G

+0

Oui, vous avez raison de dire que la limitation est dans les filtres Source de capture que j'utilise. Par exemple, UScreenCapture crée une clé reg où elle conserve ses paramètres afin qu'un filtre cloné utilise la même clé reg. Je pense que j'ai besoin de ma propre source de capture .dll qui héberge le graphe de filtre de source de capture. – TwoPixelGrid

0

SplitCam est un clone visuel virtuel de freeware et pilote vidéo pour relier plusieurs applications à une source de capture vidéo unique. Habituellement, si vous avez une caméra connectée à votre PC, vous ne pouvez pas l'utiliser dans plusieurs applications en même temps, et aucune option Windows standard ne le permet. Split Camera vous permet de multiplier facilement votre source vidéo dans n'importe quel logiciel de conférence comme ICQ, Yahoo, MSN Messenger, ou autre. Video Processing Filter est un puissant filtre de transformation qui permet de faire pivoter la vidéo à 90, 180 et 270 degrés, de conserver les proportions lors de la rotation de la vidéo à 90 et à 270 degrés, de convertir la vidéo en niveaux de gris. et inverser la couleur. Support faire pivoter la vidéo en 90, 180 et 270 degrés dans toute application de base Directshow. Soutien garder le ratio d'aspect lors de la rotation de la vidéo à 90 et 270 degrés.

2

Travaillez-vous avec deux caméras ou avec une caméra et vous voulez avoir deux images. Dans le premier cas, il existe des filtres qui fonctionnent uniquement avec un périphérique connecté (dans le cas d'un firewire par exemple, les caméras doivent être connectées à deux contrôleurs différents).

Dans ce dernier cas, vous pouvez utiliser Infinite Pin Tee Filter pour obtenir deux flux d'un périphérique. Vous pouvez également tester cela dans GraphEdit.

Questions connexes