This repository contains a ReactJS-based Video Player that utilizes HTML5 Canvas for rendering video and audio features. The assignment is divided into two parts, each focusing on different functionalities.
-
Take video file as an input:
- Users can input a video file through the provided UI.
-
Display video metadata:
- Display video metadata, including duration, on the user interface.
-
Display video on the screen:
- Render the selected video on the screen using the HTML5 Canvas element.
-
Play/Pause functionality:
- Implement a play/pause button in the middle of the video container.
- The video should play or pause on clicking the button.
-
Detect audio presence:
- Ensure the uploaded video has audio before allowing the upload.
-
Display audio waveform:
- If audio is present, display the waveform in a box below the video.
- Used wavesurfer.js options and events inorder to play it with sync of video.
- Host the code on a platform like Vercel: https://twinshu-vidyoai.vercel.app/
-
Clone the repository:
git clone https://github.com/your-username/frontend-internship-assignment.git
-
Navigate to the project directory:
cd frontend-internship-assignment
-
Install dependencies:
npm install
-
Run the development server:
npm start