This project demonstrates the implementation of a multi QR code recognition system using Jetpack Compose, ExoPlayer, and ML Kit. The application captures video frames and processes them to detect QR codes in real-time.
- Plays video using ExoPlayer.
- Captures frames from the video for QR code detection.
- Detects multiple QR codes using Google's ML Kit.
- Displays detected QR codes on the screen.
- Handles camera permissions.
- Supports both HTTP and HTTPS video links.
- MVVM (Model-View-ViewModel): For structured and maintainable code
- Jetpack Compose: For building the UI
- ExoPlayer: For video playback
- ML Kit: For QR code detection
- Hilt: For dependency injection
- Timber: For logging
- Android Studio Arctic Fox or later.
- Minimum SDK level 29.
- Ensure you have an internet connection to download the dependencies.
-
Clone the repository:
git clone https://github.com/shehroz-ameer/MultiQRRecognition.git cd MultiQRRecognition
-
Open the project in Android Studio.
-
Build the project:
Android Studio will automatically download the necessary dependencies and build the project.
-
Grant Camera Permission:
The app requires camera permission to capture and process video frames for QR code detection. Ensure you grant this permission when prompted.
-
Run the App:
Once the app is running, it will automatically start playing a video and processing frames for QR code detection. Detected QR codes will be displayed on the screen.
You can find the source code for this project at https://github.com/shehroz-ameer/MultiQRRecognition.git.