-
Notifications
You must be signed in to change notification settings - Fork 178
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Windows Media Foundation Hook #59
Comments
@grill2010 might be worth seeing if the COMClassInfo helper is of any use here: http://easyhook.github.io/api/html/T_EasyHook_COMClassInfo.htm |
Thank you, I will check if it helps. |
In general, I wonder if there is any "better" way to capture the screen for example as a video stream and not as single image frames. Although it works very well in combination with your SharedMemory project but as I also need to stream the captured images over the network it would be better to stream it in a more compressed way like as a video stream. I also tried FFmpeg to convert the bitmap sequence in a video stream but it looks like it is to slow as I need to receive the content of the hooked application in real time (but could also be my fault due miss configuration of FFmpeg). Do you know any other possibilities or is this already the recommended way to capture the screen? Thank you anyway for your help during the development of my app. |
@grill2010 yes, you can look at using Desktop Duplication API to grab the frame and feed into MediaFoundation. Either way you need to first grab the individual frames and add them to your stream. |
Hi, I found your project and it is really helpful so far. I found out that the application which I'm trying to intercept is using some Windows Media Foundation functions like the IDirectXVideoProcessor::VideoProcessBlt method. The idea which I have is basically the same as you did in your Direct3DHook project. I would like to create a managed VideoProcessor object, get the virtual method table addresses and hook into some calls.
Unfortunately I'm not able to create the VideoProcessor object, I've even tried it on several PCs. The error message which I receive is this:
I could not find a single example of SharpDX which uses the VideoProcessor interface so I really hope you can help me out. Below you can find some code of my example project. I use SharpDX version v4.0.1.
I seems in regard to the error message that some parameters are invalid or not correct but as I'm a beginner in DirectX I don't know what I should do. Sorry if it is maybe obvious but I'm really lost now. Thank you for your help.
EDIT: I've also posted an issue in the SharpDX repo which you can find here:
sharpdx/SharpDX#955
It seems that you have to manually handle the marshalling of arguments. I hope this will solve the problem. Do you have any experience with this issue?
The text was updated successfully, but these errors were encountered: