Repository navigation
Can Screen Capture be improved? #23
Description
Activity
hi @vuduong1124
Can you share block code to convert FrameBuffer to image
It seems this tutorial is not correct
System.Drawing.Image img = client.GetFrameBufferAsync(device, CancellationToken.None).GetAwaiter().GetResult();It seems this tutorial is not correct
(Well, I just tried this library out, I have been using python and an adb library for python before but wanted to give this library a shot).
About the tutorial not being correct, I assume you're reffering to the examples and that you get an error that
FrameBuffercan't be made into anImage? There's an explicit conversion implemented (there seems to be other conversions too , depending on need, not onlyImage).You can do either of this to get around this problem and make the compiler happy:
Image image = (Image) client.GetFrameBufferAsync(device, CancellationToken.None).GetAwaiter().GetResult();
or
Image image = client.GetFrameBufferAsync(device, CancellationToken.None).GetAwaiter().GetResult().ToImage();
This will, in theory, make it work - I assume this is the intended way to do it.
However, I get an exception when I execute the above code, trying to grab a screenshot (from a device with verified working ADB connection). The
Framebuffergets disposed at some point and the library throws exception about. I haven't tested much so I might as well mention it.I can see in the source code of the library where it does this but I haven't tried to understand why this happen. Also noted that there's no unit test implemented for
GetFrameBufferAsyncso maybe the error is actually a bug not being detected. But honestly, I don't know. (Actually, this is why I ended up here, to see if anyone else have mentioned this exception or if created an issue ticket for it.)- Reacted by Jens
Nice one! Started diggin into the workings and realized there were plenty of stuff probably missing. Interesting to see what it actually was. Great work!
It is good, Do you have plan to include this commit in release version.
Describe your feature request
Is it possible to capture screen devices faster?Feature title
Specifically, it currently takes 180 ~ 200ms for 1 screen capture
How important is this to you?
Nice-to-have
Describe the solution you'd like
No response
Describe alternatives you've considered
No response
Additional context
No response