2010-03-04 3 views
0

J'écris une application qui sera essentiellement comme Fraps, mais elle va pousser les cadres vidéo comme une source de capture DirectShow. Cela facilitera la diffusion de jeux sur des sites comme ustream, justin.tv, etc. Je me demande quelle serait la meilleure façon de faire de la communication interprocessus. La vitesse est très importante. En ce moment j'ai une DLL qui est injectée et croise d3d pour attraper le tampon d'image. J'ai besoin d'un moyen d'envoyer ça à un filtre DirectShow. DirectShow est vraiment déroutant pour moi, mais j'ai implémenté CSource CSourceStream (dans une autre DLL).C++ IPC - hook d3d et source de capture directhow

Répondre

1

Si vous voulez de la vitesse, utilisez shared memory. Combinez cela avec COM pour une communication normale et vous avez une approche IPC Windows standard.

Si vous voulez envelopper avec un style C++ plus moderne, jetez un oeil à Boost.Interprocess 'primitives.