Skip to content

nibesh0/cometconnect

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CometConnect

video link

CometConnect is a secure and fast peer-to-peer (P2P) communication project designed for Linux. It utilizes PortAudio, OpenCV, and PThreads to enable efficient and reliable communication between peers.

Description

CometConnect is a robust P2P communication solution that ensures secure and seamless data transfer. Built specifically for Linux, this project leverages PortAudio for audio processing, OpenCV for video processing, and PThreads for multi-threading capabilities. The aim is to provide real-time communication with low latency and powerfull and fast file sharing, while prioritizing data privacy and security.

Features

  • Secure P2P Communication: CometConnect facilitates secure communication between peers, ensuring that data remains confidential and protected.
  • Real-time Audio and Video: Enjoy real-time audio and video streaming capabilities for an immersive communication experience.
  • Share file with maximum speed possible.
  • Low Latency: CometConnect focuses on minimizing latency to deliver fast and responsive communication.
  • Multi-threading Support: The integration of PThreads allows for efficient utilization of system resources and enhances overall application performance.
  • Linux Compatibility: Developed specifically for Linux, CometConnect ensures seamless integration and optimal performance on the platform.

Installation

To use CometConnect, follow these steps:

  1. Clone the repository:
git clone https://github.com/nibesh0/cometconnect.git
  1. Install required dependencies:
sudo apt-get update
sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
  1. Install PortAudio:
sudo apt-get install portaudio19-dev
  1. Install OpenCV:
sudo apt-get install libopencv-dev

Usage

To use CometConnect , follow these steps:

  1. install the required library.
  2. To compile the server use the following command
g++ mainserver.c -o server `pkg-config --libs --cflags opencv4` -pthread -lportaudio
  1. To compile the client use the following command
g++ mainclient.c -o client `pkg-config --libs --cflags opencv4` -pthread -lportaudio
  1. Give executable permission to client and server .the server should do the first move.
chmod +x client
chmod +x server
  1. Usage of server and client
./server <ip of server>
./client <ip of server>
  1. Establish a P2P connection between peers using the provided functions.
  2. Terminate the communication and release any allocated resources using the provided cleanup functions.

Contributing

Contributions to CometConnect are welcome! To contribute, follow these steps:

  1. Fork the repository.
  2. Create a new branch: git checkout -b feature/your-feature
  3. Make your changes and commit them: git commit -m 'Add your feature'
  4. Push the changes to your forked repository: git push origin feature/your-feature
  5. Open a pull request on the main repository.

Please ensure that your contributions align with the project's coding standards and guidelines.

License

CometConnect is licensed under the MIT License.

Support

For any questions, issues, or support related to CometConnect, please refer to the issue tracker on GitHub.

Roadmap

The future roadmap for CometConnect includes the following:

  • Implementing end-to-end encryption for enhanced security.
  • Adding a better audio streaming.
  • Enhancing the user interface and experience.
  • Optimizing performance and reducing latency.

Your feedback are invaluable in shaping the future development of CometConnect.

Authors

CometConnect is developed and maintained by the following authors:

Credits

CometConnect is developed as a capstone project. We would like to thank the following individuals and resources for their contributions:

  • PortAudio: Library for audio processing.
  • OpenCV: Library for computer vision and video processing.
  • PThreads: Library for multi-threading support.

Thank you for using CometConnect!

About

cometconnect

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •