Skip to content

mikeldev0/media-converter

Repository files navigation

🎬 Media Converter

A web-based tool for high-performance media file conversion and manipulation, built using the Mediabunny JavaScript library. Mediabunny provides a complete toolkit for working with media files (e.g. MP4, WebM) directly in the browser, without the need for external dependencies or bloated bundle sizes.

Media Converter Interface

Features

  • 🌐 Browser-Based Processing: Convert media files entirely in your browser without uploading to servers
  • 🚀 High Performance: Powered by Mediabunny for efficient media processing
  • 📁 Drag & Drop Interface: Simply drag files or click to browse
  • 🎯 Multiple Formats: Support for MP4, WebM, AVI, MOV, MP3, WAV, and more
  • ⚙️ Customizable Settings: Quality, resolution, and bitrate controls
  • 📱 Responsive Design: Works on desktop and mobile devices
  • 🔒 Privacy-First: All processing happens locally in your browser

Supported Formats

Input Formats

  • Video: MP4, WebM, AVI, MOV, QuickTime
  • Audio: MP3, WAV, MPEG, OGG, M4A

Output Formats

  • Video: MP4 (H.264), WebM (VP9), AVI, MOV
  • Audio: MP3, WAV

Getting Started

Prerequisites

  • Modern web browser (Chrome, Firefox, Safari, Edge)
  • No server-side dependencies required

Installation

  1. Clone the repository:
git clone https://github.com/mikeldev0/media-converter.git
cd media-converter
  1. Start a local web server:
# Using Python 3
python3 -m http.server 8000

# Using Node.js (if you have http-server installed)
npx http-server

# Using PHP
php -S localhost:8000
  1. Open your browser and navigate to http://localhost:8000

Usage

  1. Upload Files: Drag and drop media files onto the upload area or click "Browse Files"
  2. Configure Settings: Choose output format, quality, resolution, and bitrate
  3. Start Conversion: Click "Start Conversion" to begin processing
  4. Download Results: Download converted files when processing is complete

Configuration Options

Output Formats

  • MP4 (H.264): Universal compatibility, good compression
  • WebM (VP9): Modern format, excellent compression for web
  • AVI: Uncompressed format for editing
  • MOV: Apple QuickTime format
  • MP3: Audio-only, widely supported
  • WAV: Uncompressed audio

Quality Settings

  • High Quality: Best visual/audio quality, larger file size
  • Medium Quality: Balanced quality and file size (recommended)
  • Low Quality: Smaller file size, reduced quality
  • Custom: Specify custom bitrate settings

Resolution Options

  • Keep Original: Maintain source resolution
  • 1080p (1920x1080): Full HD
  • 720p (1280x720): HD
  • 480p (854x480): Standard definition
  • 360p (640x360): Mobile-friendly

Technology Stack

  • Frontend: HTML5, CSS3, JavaScript (ES6+)
  • Media Processing: Mediabunny JavaScript library
  • Styling: Custom CSS with responsive design
  • File Handling: HTML5 File API, Drag & Drop API

Browser Compatibility

  • Chrome 60+
  • Firefox 55+
  • Safari 11+
  • Edge 79+

Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • Mediabunny for the powerful browser-based media processing library
  • Modern web APIs for enabling client-side media conversion

Roadmap

  • Batch processing improvements
  • Additional output formats
  • Advanced filtering options
  • Video preview functionality
  • Compression ratio optimization
  • Service Worker for offline support

About

A web-based tool for high-performance media file conversion and manipulation, built using the Mediabunny JavaScript library. Mediabunny provides a complete toolkit for working with media files (e.g. MP4, WebM) directly in the browser, without the need for external dependencies or bloated bundle sizes.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors