Skip to content

Mave9055/OSINT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Image to Video Converter

Capitol Contracts LLC Logo

A powerful web application that converts multiple images into professional videos with smooth transitions and customizable settings.

Features

  • Drag & Drop Interface: Easy-to-use interface for uploading images
  • Multiple Transition Effects:
    • Fade
    • Slide Left
    • Slide Right
    • Zoom
    • None (instant cut)
  • Customizable Settings:
    • Frame rate (24, 30, 60 FPS)
    • Duration per image (1-10 seconds)
    • Multiple resolutions (HD, Full HD, 2K, 4K)
  • Supported Image Formats: JPG, PNG, GIF, BMP, WEBP
  • Real-time Progress: Visual feedback during video generation
  • Instant Download: Download generated videos immediately

Technologies Used

  • Backend: Flask (Python web framework)
  • Video Processing: OpenCV
  • Image Processing: Pillow
  • Frontend: HTML5, CSS3, JavaScript
  • UI Design: Modern gradient design with responsive layout

Installation

Prerequisites

  • Python 3.8 or higher
  • pip (Python package manager)

Setup Steps

  1. Clone or download the repository
cd OSINT
  1. Create a virtual environment (recommended)
python -m venv venv

# On Linux/Mac:
source venv/bin/activate

# On Windows:
venv\Scripts\activate
  1. Install dependencies
pip install -r requirements.txt

Usage

Starting the Application

  1. Run the Flask application
python app.py
  1. Open your browser and navigate to:
http://localhost:5000

Creating a Video

  1. Upload Images:

    • Drag and drop images onto the upload area, or
    • Click the upload area to browse and select images
    • Supported formats: JPG, PNG, GIF, BMP, WEBP
  2. Configure Settings:

    • Frame Rate: Choose between 24, 30, or 60 FPS
    • Duration: Set how long each image displays (1-10 seconds)
    • Transition: Select transition effect between images
    • Resolution: Choose video quality (HD to 4K)
  3. Generate Video:

    • Click the "Generate Video" button
    • Wait for the progress bar to complete
    • Video processing time depends on:
      • Number of images
      • Selected resolution
      • Transition complexity
  4. Download:

    • Once complete, click "Download Video" to save your creation
    • Videos are saved in MP4 format

Tips for Best Results

  • Use images with similar aspect ratios for best results
  • Higher resolutions take longer to process
  • Fade transitions work well for smooth, professional videos
  • 3 seconds per image is a good default duration
  • For social media: Use 1920x1080 (Full HD) resolution

Project Structure

OSINT/
├── app.py                 # Main Flask application
├── requirements.txt       # Python dependencies
├── README.md             # This file
├── .gitignore            # Git ignore rules
├── templates/
│   └── index.html        # Main HTML template
├── static/
│   ├── css/
│   │   └── style.css     # Stylesheet
│   └── js/
│       └── script.js     # Frontend JavaScript
├── uploads/              # Temporary image storage (auto-created)
└── outputs/              # Generated videos (auto-created)

API Endpoints

POST /upload

Upload images to the server.

Request: multipart/form-data with 'images' files

Response:

{
  "success": true,
  "files": ["image1.jpg", "image2.jpg"],
  "count": 2
}

POST /generate

Generate video from uploaded images.

Request:

{
  "fps": 30,
  "duration": 3,
  "transition": "fade",
  "resolution": "1920x1080"
}

Response:

{
  "success": true,
  "filename": "video_20231031_120000.mp4",
  "message": "Video generated successfully"
}

GET /download/

Download a generated video.

POST /clear

Clear all uploaded images and generated videos.

Configuration

You can modify the following settings in app.py:

  • MAX_CONTENT_LENGTH: Maximum upload size (default: 50MB)
  • ALLOWED_EXTENSIONS: Supported image formats
  • Default video settings (FPS, duration, resolution, etc.)

Troubleshooting

Common Issues

Images not uploading:

  • Check file format is supported
  • Ensure total upload size is under 50MB
  • Check browser console for errors

Video generation fails:

  • Verify all uploaded images are valid
  • Check available disk space
  • Review server logs for error messages

Video quality issues:

  • Use higher resolution images
  • Select higher output resolution
  • Ensure images have similar dimensions

Performance Tips

  • For faster processing, use lower resolutions during testing
  • Batch upload all images at once rather than one-by-one
  • Close other resource-intensive applications
  • Use SSD storage for faster read/write operations

Security Notes

  • Files are stored temporarily and should be cleared regularly
  • The application accepts only image files (validated by extension)
  • Upload size is limited to 50MB by default
  • Consider adding authentication for production use

Future Enhancements

Potential features for future versions:

  • Audio/music support
  • Text overlays
  • More transition effects
  • Image filters and effects
  • Batch processing
  • Video preview before download
  • Cloud storage integration
  • User accounts and project saving

License

This project is open source and available for educational and commercial use.

Contributing

Contributions are welcome! Feel free to:

  • Report bugs
  • Suggest new features
  • Submit pull requests
  • Improve documentation

Support

For issues or questions:

  1. Check the troubleshooting section
  2. Review error messages in browser console
  3. Check server logs for detailed error information

Credits

Built with:

  • Flask - Web framework
  • OpenCV - Video processing
  • Pillow - Image processing
  • Modern CSS3 - Styling
  • Vanilla JavaScript - Interactivity

Enjoy creating amazing videos from your images!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors