Convio is a wrapper for ffmpeg developed for Windows 7 to 11 by Eduardo Pereira.
The idea is very simple: making the most common conversions of audio and video formats easily accessible through Windows' context menu.
If you like or hate the conversions, praise or hate the ffmpeg team. I'm just responsible for the UI and the integration with Windows.
This repository includes:
- assets/: Folder for the assets. Currently, just the program icon by Azland Studio
- dist/convio.exe: The app, compressed into an exe file using pyinstaller. To reproduce it, use the following command in the project's root folder:
pyinstaller --onefile --windowed --noconsole --noupx --noconfirm --icon=assets/convio.ico convio.py. You'll probably need to putconvio.exeas an exception on your antivirus to run it. More about that in ... - ffmpeg/: Folder with the ffmpeg tools used for the app. It's just so the user doesn't need to have ffmpeg previously installed in their machine to run the program. If you suspect of the files, you can download them from the original source, just make sure to adjust the files so they are in the same .
- languages/: Folder with jsons that define the texts in each language available in the software. Feel free to add new languages!
- config.json: A file to store the settings for the app. It currently only stores the language, but who knows... I might expand the software later...
- convio.py: The Python code for the UI
- convio_installer_64bits.nsi: NSI file for NSIS to generate an installer/setup executable. It facilitates the download of the app and configures the Windows registers so that the context menu suggests making the conversion. The installer compiled by NSIS is included in the Releases section of this repository.
- LICENSE: The Software's MIT License
- README.md: This file you're reading right now
To install the software, all you have to do is run the ConvioSetup64.exe file available at the Releases section of this repository. Alternatively, you can clone the repository and compile the convio_installer_64bits.nsi using NSIS. It'll generate the same file, and you can run it then.
To run Convio, all you have to do is right click a file which the extension is currently supported, and you'll find something like "Convert Video/Audio To..." (or something similar in another language) listed in the context menu. By hovering over it, you have the options of extensions to convert to. Currently supported extensions are:
- mp4
- mkv
- wmv
- avi
- mov
- mpeg
- mp3
- wav
- m4a
- ogg You can convert video files to video and audio formats, while audio files can only be converted to other audio formats. Currently, Convio does not support any advanced configuring, like resolution, different codecs, etc. Convio lets ffmpeg decide all of those.
WARNING: Currently, Convio doesn't have a certificate. This means that most antivirus will think it's suspicious and will quarantine the software. It is discussssed here, so you can check it for yourself and know I'm not making this up. Therefore, you'll have to add convio.exe to the exception list of your antivirus. The default installation folder is C:\Program Files (x86)\Convio\convio.exe, so add this to the exception list if you haven't changed the installation folder.
If you feel like it's suspicious (it is, I won't lie), download ffmpeg from the original source, and check the Python code. You'll see there's nothing malicious in the code itself. Then, you can run it using python convio.py <output_format> <absolute_input_path> to test it. After that, generate the executable file using pyinstaller --onefile --windowed --noconsole --noupx --noconfirm --icon=assets/convio.ico convio.py. This file will be considered suspicious because it was generated by pyinstaller. Then, download NSIS and compile convio_installer_64bits.nsi with it. Now you will have a ConvioSetup64.exe file 100% generated by you. You can now trust the installer and add the file to the exception list.
Everyone is invited to join the project. Follow the step by step guide to contribute to the project:
- Click the Fork button on GitHub to create your own copy of the project
- Clone the project with
git clone https://github.com/<your-username>/Convio.git - Reach the folder using
cd Convio - Make your improvements!
- Test your improvements by running it locally with:
python convio.py <output_format> <absolute_input_path> - Regenerate the executable using
pyinstaller --onefile --windowed --noconsole --noupx --noconfirm --icon=assets/convio.ico convio.py - Commit your changes using
git add .andgit commit -m "Add feature: example" - Push the changes to your github with
git push origin main - Open your repository and open a pull request. Your changes will be analysed and merged later.
