CaptureX is a Kivy application designed for capturing images using either an external webcam connected via IP or the computer's built-in camera. It provides functionalities for starting and stopping the camera feed, capturing images, and sharing captured images through shareable links. Built using the Kivy framework, the application offers a user-friendly interface that allows users to interact seamlessly with the camera feed and captured images.
- Camera Feed: Start and stop the camera feed to view live video streams.
- Image Capture: Capture images from the camera feed.
- Image Sharing: Generate shareable links for captured images and copy them to the clipboard.
- Open Image Link: Open the shareable image link in the default web browser.
- Home Navigation: Navigate back to the camera feed screen.
- filestack-python: A library for integrating with the Filestack file handling service.
- Kivy: An open-source Python framework for developing multitouch applications.
- opencv-python: A library for computer vision and image processing.
- python-dotenv: A library for managing environment variables in .env files.
- webbrowser: A module for displaying web-based documents.
- Clone the repository.
- Ensure Python 3.x is installed.
- Install the required dependencies using
pip install -r requirements.txt
. - Configure the necessary parameters such as
DROIDCAM_IP_ADDRESS
,DROIDCAM_PORT_NUMBER
, andFILESTACK_API_KEY
inconstants.py
. - Run the script using
python main.py
.- By default, the application uses an external webcam with an IP address (similar to DroidCam). Users can switch to using the computer's built-in camera by uncommenting the relative line in
main.py
to usegui_cam.py
, which is integrated with the necessary KV file for the computer camera widget.
- By default, the application uses an external webcam with an IP address (similar to DroidCam). Users can switch to using the computer's built-in camera by uncommenting the relative line in
- Run the script using
python main.py
. - Use the
Start Camera
button to start the camera feed. - Use the
Capture
button to capture images from the camera feed. - Navigate to the
Image
screen to view captured images and share them. - Use the
Create Shareable Link
button to generate a shareable link for the captured image. - Use the
Copy Link
button to copy the shareable link to the clipboard. - Use the
Open Link
button to open the shareable image link in the default web browser. - Use the
Stop Camera
button to stop the camera feed when done. - Use the
Home
button to navigate back to the camera feed screen.
Users can customize the appearance and behavior of the application by modifying the KV file front_end.kv
located in the data
directory.
The application uses filestack cloud service to generate shareable links for captured images by default. However, users can choose any cloud service and adjust the FileShare
class accordingly in the classes.py
file to integrate with their preferred cloud storage solution.
Contributions are welcome! Here are some ways you can contribute to the project:
- Report bugs and issues
- Suggest new features or improvements
- Submit pull requests with bug fixes or enhancements
This project is licensed under the MIT License, which grants permission for free use, modification, distribution, and sublicense of the code, provided that the copyright notice (attributed to emads22) and permission notice are included in all copies or substantial portions of the software. This license is permissive and allows users to utilize the code for both commercial and non-commercial purposes.
Please see the LICENSE file for more details.