Skip to content

Real-time communication has become an integral part of web applications. Whether it’s for video conferencing, online gaming, or telehealth, the need for robust and efficient streaming solutions is evident. WebRTC (Web Real-Time Communication) is a powerful technology that enables peer-to-peer communication directly between browsers without the need

License

Notifications You must be signed in to change notification settings

1saptarshi/webrtc-video-streaming

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

# WebRTC Video Streaming App

## Overview

This project is a WebRTC-based video streaming application that allows users to initiate a video call, send text messages, mute/unmute audio, toggle video, and share their screen. The app leverages the power of WebRTC for real-time peer-to-peer communication and Tailwind CSS for modern, responsive UI design.

## Features

- **Video Streaming**: Real-time video call between two peers.
- **Text Chat**: Send and receive messages during the video call.
- **Mute/Unmute Audio**: Toggle audio on/off during the call.
- **Toggle Video**: Enable or disable the video stream.
- **Screen Sharing**: Share your screen during the call.
- **Responsive UI**: Designed using Tailwind CSS for a modern and responsive interface.

## Project Structure

webrtc-video-streaming/ ├── css/ │ └── styles.css ├── js/ │ └── main.js ├── index.html ├── tailwind.config.js ├── package.json └── README.md


## Getting Started

### Prerequisites

Make sure you have Node.js installed. You can download it from [Node.js](https://nodejs.org/).

### Installation

1. Clone the repository:

    ```bash
    git clone https://github.com/1saptarshi/webrtc-video-streaming.git
    cd webrtc-video-streaming
    ```

2. Install the necessary dependencies:

    ```bash
    npm install
    ```

3. Install Tailwind CSS:

    ```bash
    npm install tailwindcss
    ```

4. Generate the Tailwind CSS configuration file:

    ```bash
    npx tailwindcss init
    ```

### Running the Application

1. Compile the Tailwind CSS:

    ```bash
    npx tailwindcss -i ./css/styles.css -o ./css/tailwind.output.css --watch
    ```

2. Open `index.html` in your browser to view the application.

## Usage

### Starting a Call

1. Click the "Start" button to access your webcam and microphone.
2. Click the "Call" button to initiate a call.
3. The "Hang Up" button ends the call.

### Text Chat

- Type a message in the input box and click "Send" to send a message during the call.

### Audio and Video Controls

- **Mute**: Click the "Mute" button to toggle audio on/off.
- **Toggle Video**: Click the "Toggle Video" button to enable/disable the video stream.

### Screen Sharing

- Click the "Share Screen" button to share your screen. Click "Stop Sharing" to revert to the webcam stream.

## Contributing

Contributions are welcome! Please fork the repository and submit a pull request for any improvements or bug fixes.

## License

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.

## Acknowledgements

- [WebRTC](https://webrtc.org/)
- [Tailwind CSS](https://tailwindcss.com/)
- [Font Awesome](https://fontawesome.com/)

## Contact

For any inquiries or feedback, please contact [Saptarshi Chowdhury]([email protected]).

(1saptarshi, Saptarshi Chowdhury, [email protected])
image

About

Real-time communication has become an integral part of web applications. Whether it’s for video conferencing, online gaming, or telehealth, the need for robust and efficient streaming solutions is evident. WebRTC (Web Real-Time Communication) is a powerful technology that enables peer-to-peer communication directly between browsers without the need

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published