A wrapper for FFmpeg and libvips for video, audio, and image transcoding. Written in C#. Designed for media libraries.
⚠️ This project is an early work-in-progress. It is not stable software; features may be added or remove without warning, and bugs are to be expected. Use at your own risk.
- Powered by FFmpeg and libvips
- Easy-to-use command-line interface (CLI)
- Designed for bulk transcoding
- Automatic cropping
- Low overhead
- Cross-platform
Both FFmpeg and libvips are very powerful tools. MediaBox only provides a thin layer of abstraction on top of them. Since it was specifically designed for transcoding (converting between media formats), it only supports those features. The vast majority of FFmpeg and libvips functionality will not be accessible. Should you want access to the full feature set of either FFmpeg or libvps, you should use those directly.
Other limitations include:
- Quality/speed/size settings can only be changed via the built-in presets.
- Custom file names are not supported.
- When MediaBox exits, FFmpeg will not exit until it finishes with the file it's working on.
- Download FFmpeg and extract it to a location on your system. Add the
bin
directory of the FFmpeg installation to your system's PATH environment variable. - Download MediaBox and extract it to a location on your system. The archive includes all dependencies besides FFmpeg.
- Open a terminal or command prompt and navigate to the extracted MediaBox directory.
- Run the command
MediaBox --help
to verify that the installation was successful.
MediaBox.exe transcode -t <type> -p <path> -d <destination>
transcode
: The command to transcode media files.-t <type>
: The type of media to transcode. Must be one ofvideo
,audio
, orimage
.-p <path>
: The path to the input media file or directory of media files.-d <destination>
: The path to the output directory.
Please do not submit pull requests. This project is hosted on my private Forgejo server and mirrored to GitHub. Any pull requests merged on GitHub will be automatically overwritten the next time Forgejo pushes changes to the repository.
Should you want to test the software on sample data, a
collection of media is
available. This media, created by Kevin MacLeod and the Blender Foundation, is,
to the best of my knowledge, made available under Creative Commons licenses. For
attribution information, consult the ThirdPartyNotices.txt
file included with
the media bundle.
Should any author(s) of the provided media wish to have it removed, please notify me by email at timberfang.code@pm.me.
MediaBox is licensed under the MIT License. See the LICENSE file for details.