简体   繁体   中英

Send bitmap to directshow source filter

Looking for a way to send bitmap from code without saving it to file as directshow output source.

I found example "PushSource" from Windows7.1SDK but its written on C++, and won`t even compile.

The question is overly broad for detailed reply, but I will still outline the steps.

First, Push Source Filters are in good standing. They are buildable, but you might need to build BaseClasses project there first because it's a required dependency.

Then, PushSourceBitmap shows how to inject a bitmap into streaming pipeline. You are to extend the filter to be able to accept a bitmap externally, esp. with C# friendly interface such as COM interface.

Next thing is to realize that a filter is operating in a process that streaming pipeline, which might be different from the application that sends/produces the bitmap. If this is the case you are to care about interprocess communication, which might be not that trivial. Also, if multiple processes are involved there is a question of potential bitness mismatch and/or multiple senders.

As you mentioned source filter and C#, you might also be interested in looking at DirectShow.NET's GSSF: Generic Sample Source Filter:

The Generic Sample Source Filter - A way to implement a source filter in c#

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM