diff --git a/README.md b/README.md index 919b245..968726e 100644 --- a/README.md +++ b/README.md @@ -1 +1,30 @@ # synchronized-video-streaming + +This project is a simple web application that allows users to watch videos together in real-time, ensuring a synchronized viewing experience. This project is built in Node.js, and utilizes Web-Sockets in order to send real time updated between the client and the server. + +## Features +* Real-time Synchronization: All participants are watching the same video at the same time, eliminating any delays or discrepancies. +* User-friendly Interface: The web app offers an intuitive and user-friendly interface, making it easy for users to navigate and enjoy their shared video experience. +* Multi-User Support: Multiple users can join the same video session, allowing friends, family, or colleagues to watch videos together from different locations. +* Video Playback Controls: Users have full control over the video playback, including play, pause and seek, ensuring a personalized viewing experience. +* Simple Login System: A simple login page is implemented in order to allow only known people to join the hosted watch-together room. + + +## Installation & Usage +1. Make sure Node.js is installed, if not visit [https://nodejs.org/en/download](https://nodejs.org/en/download) +2. Clone the repository ``` git clone https://github.com/ShakedAp/synchronized-video-streaming.git``` +3. Add your video to `/videos`, in `mp4` format +4. Modify `settings.json`: + - Set `ip` to your ip + - Set `port` to the host port (make sure it is unused) + - Set `video_path` to the path to your video: `videos/.mp4` + - Set password to a string you like +5. Start the server: `npm start` or `node src/index.js` + +## Screenshots +4 Clients Synchronized: +![4 clients sync](./screenshots/sync4clients.gif) +Login Page: +![login page](./screenshots/loginpage.png) +2 Clients Synchronized: +![2 clients sync](./screenshots/sync2clients.gif) \ No newline at end of file diff --git a/screenshots/loginpage.png b/screenshots/loginpage.png new file mode 100644 index 0000000..6b0018f Binary files /dev/null and b/screenshots/loginpage.png differ diff --git a/screenshots/sync2clients.gif b/screenshots/sync2clients.gif new file mode 100644 index 0000000..955f091 Binary files /dev/null and b/screenshots/sync2clients.gif differ diff --git a/screenshots/sync4clients.gif b/screenshots/sync4clients.gif new file mode 100644 index 0000000..fcf5be7 Binary files /dev/null and b/screenshots/sync4clients.gif differ diff --git a/settings.json b/settings.json index 328388e..ed0c8af 100644 --- a/settings.json +++ b/settings.json @@ -2,5 +2,5 @@ "server_ip": "192.168.68.118", "server_port": 3000, "video_path": "videos/shrek.mp4", - "password": "" + "password": "password" }