Android project with OpenCV, Camera X Api for User Authentication.
The app will start recording the screen containing the face of the user while he is drawing the signature.
When the user clicks on the Save button video recording will be saved and you can share the generated video.
- Navigation Component: To navigate between fragments
- Koin: For Dependency Injection
- Permission Manager: Manage Camera and Location Permission while using the app
- Android Lifecycle: Performing threading operation with lifecycle awareness
- Location Tracking: Track user location and add the longitude and latitude coordinates to the video generated
- Kotlin Coroutines: Library for executing multi-thread operations
- FFMPEG: OpenCV library for generating video and manipulating frames
- Camera X: Jetpack Library to use the camera of Android phone for recording video
When the Screen recorder page starts, the app will check that all required permissions are granted
- Get the current location of the user
- Initialize camera
- Display signature tab
- Record the signature tab and the user face
- Merge the 2 frames and add the date, uuid, and (longitude latitude) into one frame
- Assynchronisly repeat steps 4 & 5 every n seconds (Depending on the frame per second setup of the video)
- Pressing the Save button will generate the video
- Share the generated video
You can change the frame per second by modifying the variable "FRAME_PER_SECOND" property in the VideoRecorder.kt class.
The app will automatically calculate how many times frames should be generated per second based on the FRAME_PER_SECOND property