Plugin Management
MediaProc uses a plugin-based architecture that allows you to install only the functionality you need. This guide covers how to manage plugins effectively.
Overview
Plugins extend MediaProc's functionality by adding commands for specific media types or workflows. Each plugin is a self-contained package that can be installed, updated, or removed independently.
Installing Plugins
Install Single Plugin
Install a specific plugin:
mediaproc install <plugin-name>
Example:
mediaproc install image
Install Multiple Plugins
Install several plugins at once:
mediaproc install image video audio
Install All Available Plugins
Install every available plugin:
mediaproc install --all
Install with Options
Specify additional options during installation:
# Install with verbose output
mediaproc install image --verbose
# Install and skip dependency check
mediaproc install image --no-deps
# Install specific version
mediaproc install image@1.2.3
Listing Plugins
List Installed Plugins
View all currently installed plugins:
mediaproc list
Output:
Installed Plugins:
┌────────────┬──────────┬─────────────┬──────────┐
│ Plugin │ Version │ Commands │ Status │
├────────────┼──────────┼─────────────┼──────────┤
│ image │ 1.2.0 │ 49 │ Active │
│ video │ 1.1.5 │ 32 │ Active │
│ audio │ 1.0.8 │ 18 │ Active │
└────────────┴──────────┴─────────────┴──────────┘
List Available Plugins
See all plugins available for installation:
mediaproc list --available
Output:
Available Plugins:
┌────────────┬──────────┬────────────────────────────────┐
│ Plugin │ Version │ Description │
├────────────┼──────────┼────────────────────────────────┤
│ image │ 1.2.0 │ Image processing & manipulation│
│ video │ 1.1.5 │ Video conversion & editing │
│ audio │ 1.0.8 │ Audio processing & conversion │
│ animation │ 0.9.2 │ GIF & animation creation │
│ 3d │ 0.8.5 │ 3D model processing │
│ ai │ 0.7.3 │ AI-powered operations │
│ document │ 0.6.1 │ Document conversion │
│ metadata │ 1.0.2 │ Metadata extraction │
│ pipeline │ 0.5.0 │ Operation chaining │
│ stream │ 0.4.8 │ Real-time streaming │
└────────────┴──────────┴────────────────────────────────┘
List Plugin Commands
View all commands provided by a plugin:
mediaproc list image
Output:
Image Plugin Commands:
┌────────────────┬─────────────────────────────────────┐
│ Command │ Description │
├────────────────┼─────────────────────────────────────┤
│ resize │ Resize image to specific dimensions │
│ crop │ Crop image to region │
│ rotate │ Rotate image by angle │
│ optimize │ Optimize image file size │
│ convert │ Convert image format │
│ ... │ ... │
└────────────────┴─────────────────────────────────────┘
Updating Plugins
Update Single Plugin
Update a specific plugin to the latest version:
mediaproc update <plugin-name>
Example:
mediaproc update image
Update All Plugins
Update all installed plugins:
mediaproc update --all
Check for Updates
See which plugins have available updates without installing them:
mediaproc update --check
Output:
Updates Available:
┌────────────┬─────────────┬────────────┐
│ Plugin │ Current │ Latest │
├────────────┼─────────────┼────────────┤
│ image │ 1.1.5 │ 1.2.0 │
│ video │ 1.0.8 │ 1.1.5 │
└────────────┴─────────────┴────────────┘
Update to Specific Version
Install a particular version of a plugin:
mediaproc update image@1.2.0
Uninstalling Plugins
Uninstall Single Plugin
Remove a specific plugin:
mediaproc uninstall <plugin-name>
Example:
mediaproc uninstall image
Uninstall Multiple Plugins
Remove several plugins at once:
mediaproc uninstall image video audio
Uninstall with Confirmation
Skip confirmation prompt:
mediaproc uninstall image --yes
Uninstall and Clean
Remove plugin and clear cache:
mediaproc uninstall image --clean
Plugin Information
View Plugin Details
Get detailed information about a plugin:
mediaproc info <plugin-name>
Example:
mediaproc info image
Output:
Plugin: image
Version: 1.2.0
Description: Comprehensive image processing and manipulation toolkit
Author: MediaProc Team
License: MIT
Homepage: https://mediaproc.dev/docs/plugins/image
Commands: 49
Dependencies:
- sharp: ^0.33.0
- exiftool-vendored: ^24.0.0
Installation Date: 2025-12-15
Last Updated: 2025-12-20
Size: 12.5 MB
View Plugin Dependencies
Check what other plugins or packages a plugin requires:
mediaproc info image --deps
Plugin Search
Search Available Plugins
Find plugins matching a keyword:
mediaproc search <keyword>
Example:
mediaproc search video
Output:
Search Results for "video":
┌────────────┬────────────────────────────────────────┐
│ Plugin │ Description │
├────────────┼────────────────────────────────────────┤
│ video │ Video conversion and editing │
│ animation │ Create animations from videos │
│ stream │ Stream video in real-time │
└────────────┴────────────────────────────────────────┘
Search by Tag
Find plugins with specific tags:
mediaproc search --tag conversion
mediaproc search --tag optimization
Plugin Configuration
Configure Plugin Settings
Each plugin can have its own configuration:
# Set plugin-specific option
mediaproc config set image.defaultQuality 90
mediaproc config set video.defaultCodec h264
# View plugin configuration
mediaproc config get image
Plugin-Specific Config File
Create plugin configuration in .mediaprocrc.json:
{
"image": {
"defaultQuality": 90,
"defaultFormat": "webp",
"stripMetadata": true
},
"video": {
"defaultCodec": "h264",
"preset": "medium",
"crf": 23
}
}
Troubleshooting
Verify Installation
Check if a plugin is properly installed:
mediaproc validate --plugin image
Repair Plugin
Fix a corrupted plugin installation:
mediaproc repair image
Reinstall Plugin
Completely remove and reinstall a plugin:
mediaproc uninstall image --clean
mediaproc install image
Clear Plugin Cache
Remove cached data for a plugin:
mediaproc cache clear --plugin image
Check Compatibility
Ensure plugin is compatible with your system:
mediaproc info image --compat
Advanced Usage
Install from Git
Install a plugin from a Git repository:
mediaproc install git+https://github.com/user/custom-plugin.git
Install from Local Directory
Install a plugin from local filesystem:
mediaproc install /path/to/plugin
Development Mode
Link a local plugin for development:
mediaproc link /path/to/plugin
Plugin Aliases
Create shortcuts for frequently used plugins:
mediaproc alias img=image
mediaproc alias vid=video
Then use:
mediaproc img resize input.jpg output.jpg --width 800
Plugin Ecosystem
Official Plugins
Maintained by the MediaProc team:
- image - Image processing (Sharp-based)
- video - Video conversion (FFmpeg-based)
- audio - Audio processing (FFmpeg-based)
- animation - GIF creation (FFmpeg + Gifski)
- 3d - 3D model processing (Blender-based)
- ai - AI operations (TensorFlow)
- document - Document conversion (Pandoc)
- metadata - Metadata extraction (ExifTool)
- pipeline - Operation chaining
- stream - Real-time streaming
Community Plugins
Browse community plugins:
mediaproc search --community
Creating Your Own Plugin
See Creating Plugins guide to build custom plugins.
Best Practices
1. Install Only What You Need
Don't install all plugins if you only need image processing:
# ❌ Unnecessary
mediaproc install --all
# ✅ Better
mediaproc install image
2. Keep Plugins Updated
Regularly update to get bug fixes and new features:
mediaproc update --all
3. Check Compatibility
Before updating, check for breaking changes:
mediaproc info image --changelog
4. Use Configuration Files
Store plugin settings in .mediaprocrc.json for consistency across team:
{
"plugins": ["image", "video"],
"image": {
"defaultQuality": 90
}
}
5. Version Lock in Production
Pin specific versions in CI/CD:
mediaproc install image@1.2.0 video@1.1.5
Common Workflows
New Project Setup
# Initialize project
mediaproc init
# Install core plugins
mediaproc install image video
# Configure defaults
mediaproc config set image.defaultQuality 85
mediaproc config set video.defaultCodec h264
Check Plugin Health
# List installed plugins
mediaproc list
# Check for updates
mediaproc update --check
# Validate installations
mediaproc validate --all
Plugin Maintenance
# Update all plugins
mediaproc update --all
# Clear caches
mediaproc cache clear --all
# Verify installations
mediaproc validate --all
See Also
- CLI Overview - General CLI usage
- Universal Commands - Core commands
- Creating Plugins - Build custom plugins
- Plugin Guidelines - Best practices