View Single Post
Old 04.07.2019, 19:02
dnav5 dnav5 is offline
Modem User
Join Date: Jul 2019
Posts: 1
Default Convert AAC/M4A/OGG files to MP3 with Tempo Speed

Hi everyone,

I have been using Convert AAC/M4A/OGG files to MP3 script by mgpai for a while, and it has been great. I mainly use it to download newscast and listen them while in the gym/driving.
Is it possible to speed up the audio by adding ATEMPO settings?

I spent some time trying to add it, but can't get it to work. Can someone help?

// Convert aac/m4a/ogg files to mp3.
// Trigger required: "A Download Stopped".
// Requires ffmpeg/ffprobe. Uses JD ffmpeg/ffprobe settings if available.
// Overwrites destination file (mp3) if it already exists.

if (link.isFinished()) {
var fileName =\..+$)/, "$1");
var fileType =\..+$)/, "$2");
var sourceFile = link.getDownloadPath();
var audioFile = /\.(aac|m4a|ogg)$/.test(sourceFile);

if (audioFile) {
var downloadFolder = package.getDownloadFolder();
var destFile = downloadFolder + "/" + fileName + ".mp3";
var ffmpeg = callAPI("config", "get", "org.jdownloader.controlling.ffmpeg.FFmpegSetup", null, "binarypath");
var ffprobe = callAPI("config", "get", "org.jdownloader.controlling.ffmpeg.FFmpegSetup", null, "binarypathprobe");
var data = JSON.parse(callSync(ffprobe, "-v", "quiet", "-print_format", "json", "-show_streams", "-show_format", sourceFile));
var streamsBitrate = data.streams[0].bit_rate ? data.streams[0].bit_rate : 0;
var formatBitrate = data.format.bit_rate ? data.format.bit_rate : 0;
var bitrate = Math.max(streamsBitrate, formatBitrate) / 1000;
var deleteSourceFile = true; // Set this to true to delete source file after conversion.

if (bitrate > 0) {
callSync(ffmpeg, "-y", "-i", sourceFile, "-b:a", bitrate + "k", atempo="1.5", destFile);
if (deleteSourceFile && getPath(destFile).exists()) deleteFile(sourceFile, false);
Reply With Quote