TeamGleason / SpeakFaster

MIT License
6 stars 4 forks source link

Add 'selfie' image shots #16

Open TeamGleasonDev opened 3 years ago

TeamGleasonDev commented 3 years ago

WebCam image samples, jpeg compressed

joncamp commented 3 years ago

Will need to ensure correct camera is set. For example, Surface book and Surface tablets often have their front facing camera as a different order

joncamp commented 3 years ago

Note that this could potentially cause conflicts with other camera applications. Need to ensure that the windows camera app will still work while selfie image shots are enabled

caisq commented 3 years ago

@joncamp What's the status of this feature request?

TeamGleasonDev commented 3 years ago

Good thought @joncamp about camera app conflict. Cameras are one consumer devices, so there will be a conflict.

One approach, could continuously open and close the camera and fail gracefully when camera is in use.

Will still have issues where the Camera app fails to acquire the camera device because it's locked by this app though. One thought is that SPO could detect the Camera app process and release the camera, but it would be difficult to get the timing right here -- perhaps there's enough grace time between app launch and camera enumeration that it would work out, but we would likely need a higher speed process poll to detect the new process as early as possible. Would likely need to extend this detection though to Zoom and maybe other apps (Teams? Meet/Chrome?)

Workaround may be that user has to manually pause SPO every time they want to use the selfie camera.

TeamGleasonDev commented 3 years ago

@caisq Working on a screen capture using the AForge.Net library for video frame capture.

See https://github.com/TeamGleasonDev/AForge.NET

TeamGleasonDev commented 3 years ago

Work on investigating how quickly we can open and close the cameras, look into taking snapshots spaced 10 seconds apart.

Need to investigate a 'second level' of recording UX that exposes when keystrokes vs audio/video is being recorded.