-
Notifications
You must be signed in to change notification settings - Fork 4
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
Documentation #2
Comments
Hi Lenny, It's just a experimental project and more complex than it may seem. If you still want to play around with the code, here're some workflows I illustrated below Overview The whole system is consisted of three logic modules: hook manager, audio input stream mixer and audio output streams(being hooked processes). In normal case hook manager and input stream mixer can be combined into one executive as the server, and the clients would be the running processes attached by standalone hook DLL.
Build the source code from dir
#include "hookserver.h"
#include "audiostream/include/AudioMixer.h"
// Instantiate HookTask (@param offset LoadLibraryW RVA)
...
// Invoke _Run_ and return hooked corresponding process info if no exception been thrown
...
auto mixer = new AudioMixer;
// waveInfo your wave format
mixer->Open(&waveInfo, waveFilePath);
// Instantiate AudioInputStream for each hooked process
for (…) {
auto stream = new AudioInputStream ;
stream->Open("audiohook", pid);
mixer->AddStream(stream);
}
// record into wave file until you stop the process
mixer->Update(); Sorry for late reply and I devote too much time to civilization 6 great game though |
I forget to say you need to remove some pieces of code for building // file hookserver.h L:6
#include "Promise.h"
// file hookserver.h L:14
: public Task<HookedProcess>
// file hookserver.h L:34
: public Task<void> Promise is another async calling framework |
I figured taking out the promise stuff myself 8) |
Awkwardly yes or no... yes for it's originally designed for multi source streams mixing into one stream with format conversions. And no for i just find some format conversion bugs by revisiting the code. You can look into this method _AppendBuffer which reads incoming buffer and converts to your desired format |
I follwed your steps, except the Using another injector lib I had lying around I got it injected, but the program I'm trying to capture just hanged and the hookserver just exited. It did save a corrupted 44 byte file however! Ok through advanced out-commenting of code I came to the conclusion that the hang is caused by the DirectSoundCreate call in audiohook.dll |
Sorry my bad This program is intended to run on WinXP cuz later Windows versions officially provide audio hook and mixer APIs Eh, I don't know what you're trying to achieve and maybe i could give you some help |
Hey,
I couldn't find a way to contact you so I will ask here.
Could you supply any documentation on how to use this? I tried to play around with the code but it doesn't really seem finished
The text was updated successfully, but these errors were encountered: