media-converter
v1.1.7
Published
convert multimedia as easy as you like in nodejs (javascript on server): image, video and audio converter (with compression)
Downloads
60
Maintainers
Readme
Media Converter
Convert your multimedia in nodejs as easy as you like
Description
By installing this module, you can easily convert (with compression) your media in Node.JS.
This module uses two other main modules that are referred to, at the end of this page.
Besides, ffmpeg tools are utilized for having a better performance.
Install the module by using one of these commands:
npm install --save media-converter
OR
yarn add media-converter
Version 1.x.x
>> The conversion could be applied to these extensions:
- Images => (
"jpg", "jpeg", "png", "gif", "svg", "webp"
) - Videos => (
all formats supported by
ffmpeg) - Audios => (
all formats supported by
ffmpeg)
>> The compression is just being applied to the images (and not the other media)
Version 2.x.x
In Progress ...
Prerequisites
1. Install FFmpeg tools on your system
Its size is about 67.5M
You can find the installation solutions at their website here: ffmpeg
OR
You can do the following commands in preference to the first approach:
Windows :
first, you need to install a download package manager for windows (sth like apt for Linux).
I highly recommend you to download and installchoco
package manager from their website: chocolatey
after the installation, just open up a command line (cmd or PowerShell) as administrator and then do the commands below:choco install ffmpeg
Linux (Ubuntu) :
sudo apt update sudo apt install ffmpeg
Mac :
brew install ffmpeg --force brew link ffmpeg
Notice:
Make sure the FFmpeg address is added to the environment Path
Usage
This project has been accomplished with node v10.16.3.
If you cannot run (and having errors) just feel free to open an issue on its GitHub page.
var convert = require('media-converter');
/*
** input [string]: the input media path to the file
** output [string]: the path for the output media
** callback [function]: the callback function
** verbose [boolean]: whether print the logs or not
*/
convert(input, output, callback, verbose);
Examples
const convert = require('media-converter');
convert('dog.jpg', 'dog.png'); //with no callbacks
convert('dog.png', 'dog.webp', () => console.log("png => webp")); //with a simple callback
convert('drinking.mkv', 'drinking.mp4', (err) => {
if (!err){
console.log("Completed!")
}
}); //with a complete callback
convert('bad-guy-video.mp4', 'bad-guy-audio.mp3', null, false); //with no verbose
convert('billie-eilish.png', 'billie-eilish-compressed.png'); //just compressing
References
As I said before, this module uses some other tools:
- ffmpeg tools
- fluent-ffmpeg module
- imagemin module
Finally I thank the developers of the tools mentioned before.