This repository contains the source code for a video player app built using ExoPlayer, capable of playing M3U8 videos and converting MP4 files to M3U8 format within the app.
- M3U8 Video Playback: Play M3U8 (HLS) streams seamlessly using ExoPlayer.
- MP4 to M3U8 Conversion: Convert user-selected MP4 files to M3U8 format with a simple in-app interface.
- User-friendly Interface: Easy to navigate and select videos for playback and conversion.
- Progress Feedback: A circular progress indicator is displayed during video conversion to inform the user of the ongoing process.
-
Home Screen
The main screen is where users can select video files or start a new conversion. -
Video Playback
Playback of an M3U8 video using ExoPlayer. -
MP4 to M3U8 Conversion
Circular progress indicator shown during video conversion. -
Conversion Complete
Success message when the conversion process finishes.
- Android Studio
- Kotlin 1.9
- Gradle 7.x
- FFmpeg for video conversion
- Clone the repository:
git clone https://github.com/yourusername/videoplayer.git
Open the project in Android Studio and sync the Gradle files.
Build and run the app on an emulator or a physical Android device.
Usage Playing M3U8 Videos:
On the home screen, tap on the "Play M3U8" button. Select an M3U8 file from your internal storage or enter the URL of the HLS stream. The video will start playing using ExoPlayer. Converting MP4 to M3U8:
Tap on the "Convert MP4" button. Select an MP4 file from your device. A circular progress bar will indicate the conversion process. Once the conversion is complete, the M3U8 file will be saved and ready for playback.
Dependencies ExoPlayer for video playback. FFmpegKit for video conversion.