diff --git a/mise.toml b/mise.toml index a52e4a5..89978a8 100644 --- a/mise.toml +++ b/mise.toml @@ -3,3 +3,4 @@ bun = "1.2.2" [env] JWT_SECRET = "JustForDevelopmentPurposesOnlyChangeMeInProduction!" +FFMPEG_ARGS = "-preset veryfast -threads 2" diff --git a/src/converters/ffmpeg.ts b/src/converters/ffmpeg.ts index f7d183f..fc9618b 100644 --- a/src/converters/ffmpeg.ts +++ b/src/converters/ffmpeg.ts @@ -699,7 +699,7 @@ export async function convert( let message = "Done"; if (convertTo === "ico") { - // make sure image is 256x256 or smaller + // Make sure image is 256x256 or smaller extraArgs = [ "-filter:v", "scale='min(256,iw)':min'(256,ih)':force_original_aspect_ratio=decrease", @@ -708,7 +708,7 @@ export async function convert( } if (convertTo.split(".").length > 1) { - // support av1.mkv and av1.mp4 and h265.mp4 etc. + // Support av1.mkv and av1.mp4 and h265.mp4 etc. const split = convertTo.split("."); const codec_short = split[0]; @@ -734,7 +734,7 @@ export async function convert( return new Promise((resolve, reject) => { execFile( "ffmpeg", - [...ffmpegArgs, "-i", filePath, ...extraArgs, targetPath], + ["-i", filePath, ...ffmpegArgs, ...extraArgs, targetPath], (error, stdout, stderr) => { if (error) { reject(`error: ${error}`); diff --git a/tests/converters/ffmpeg.test.ts b/tests/converters/ffmpeg.test.ts index 6f0afc6..e841459 100644 --- a/tests/converters/ffmpeg.test.ts +++ b/tests/converters/ffmpeg.test.ts @@ -135,7 +135,7 @@ test("respects FFMPEG_ARGS", async () => { console.log = originalConsoleLog; - expect(calls[0]?.slice(0, 2)).toEqual(["-hide_banner", "-y"]); + expect(calls[0]?.slice(2, 4)).toEqual(["-hide_banner", "-y"]); expect(loggedMessage).toBe("stdout: Fake stdout"); });