fix segfault

This commit is contained in:
pigeatgarlic 2023-12-20 13:20:00 +07:00
parent 3164a3201f
commit 09ff00fe2d
3 changed files with 4 additions and 7 deletions

View File

@ -74,11 +74,12 @@ extern VideoPipeline *__cdecl StartQueue(int video_codec,
break;
}
auto dispname = std::string(display_name);
auto thread = std::thread{[&](){
video::capture(
pipeline.mail,
pipeline.monitor,
std::string(display_name),
dispname,
NULL); }};
thread.detach();

View File

@ -44,11 +44,7 @@ __declspec(dllexport) void __cdecl WaitEvent(VideoPipeline* pipeline,
__declspec(dllexport) int __cdecl PeekEvent(VideoPipeline* pipeline,
EventType event);
typedef VideoPipeline* (*STARTQUEUE) ( int video_width,
int video_height,
int video_bitrate,
int video_framerate,
int video_codec,
typedef VideoPipeline* (*STARTQUEUE) ( int video_codec,
char* display_name);
typedef int (*POPFROMQUEUE) (VideoPipeline* pipeline,

View File

@ -52,7 +52,7 @@ int main(int argc, char *argv[])
// second encode session
for (int i =0; i < 30; i++)
{
VideoPipeline *pipeline = callstart(1920, 1080, 6000, 60, 1,"\\\\.\\DISPLAY1");
VideoPipeline *pipeline = callstart(1,"\\\\.\\DISPLAY1");
auto video = std::thread{[&]() {
// Video traffic is sent on this thread
int duration = 0;