dev-toolkit-cli 1.0.2 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/actions/action-compress.js +1 -0
- package/bin/actions/action-compress.js.map +1 -1
- package/bin/actions/index.js +1 -0
- package/bin/lib/bash.js +45 -3
- package/bin/lib/bash.js.map +1 -1
- package/bin/lib/constants.js +1 -0
- package/bin/lib/utils/index.js +2 -0
- package/bin/lib/utils/index.js.map +1 -1
- package/bin/lib/validation.js +1 -0
- package/bin/main.js +1 -0
- package/bin/main.js.map +1 -1
- package/package.json +2 -2
- package/src/lib/bash.ts +51 -5
- package/src/lib/utils/index.ts +2 -0
- package/tsconfig.json +3 -2
- package/bin/actions/action-compress.d.ts +0 -13
- package/bin/actions/action-compress.d.ts.map +0 -1
- package/bin/actions/index.d.ts +0 -2
- package/bin/actions/index.d.ts.map +0 -1
- package/bin/lib/bash.d.ts +0 -5
- package/bin/lib/bash.d.ts.map +0 -1
- package/bin/lib/constants.d.ts +0 -37
- package/bin/lib/constants.d.ts.map +0 -1
- package/bin/lib/utils/index.d.ts +0 -13
- package/bin/lib/utils/index.d.ts.map +0 -1
- package/bin/lib/utils 16-28-47-345/index.js +0 -89
- package/bin/lib/validation.d.ts +0 -4
- package/bin/lib/validation.d.ts.map +0 -1
- package/bin/main.d.ts +0 -2
- package/bin/main.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-compress.js","sourceRoot":"","sources":["../../src/actions/action-compress.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,IAAI,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"action-compress.js","sourceRoot":"","sources":["../../src/actions/action-compress.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,WAAW,EACX,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AAExB,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,OAAO,CAAU,CAAC;AAGpD,MAAM,kBAAkB,GAAoC;IAC1D,KAAK,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,eAAe,CAAC;IACnD,KAAK,EAAE,EAAE;CACV,CAAC;AAEF,MAAM,oBAAoB,GAAG,aAAsB,CAAC;AACpD,MAAM,kBAAkB,GAAG,OAAgB,CAAC;AAU5C,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,QAAgB,EAChB,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAoB;IAElE,MAAM,kBAAkB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAErC,IAAI,KAAK;QAAE,OAAO,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;IAChE,IAAI,UAAU;QAAE,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;IAExE,IAAI,aAAa,GAAG,EAAE,CAAC;IAEvB,MAAM,YAAY,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAE1D,KAAK,IAAI,QAAQ,IAAI,YAAY,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ;YAAE,SAAS;QACxB,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAa,CAAC;QACpD,IACE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAoB,CAAC;YAC1D,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACvD,CAAC,CAAC,KAAK;gBACL,CAAC,oBAAoB,EAAE,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CACrD,WAAW,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CACrC,CAAC;YAEJ,SAAS;QAEX,MAAM,KAAK,GAAG,QAAQ;aACnB,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;aAC1B,KAAK,CAAC,GAAG,CAAC;aACV,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;aACrB,IAAI,CAAC,GAAG,CAAC,CAAC;QAEb,IAAI,KAAK,KAAK,aAAa;YACzB,OAAO,CAAC,GAAG,CAAC,eAAe,QAAQ,MAAM,EAAE,KAAK,CAAC,CAAC;QAEpD,aAAa,GAAG,KAAK,CAAC;QAEtB,IAAI,CAAC;YACH,IAAI,QAAQ,KAAK,OAAO;gBAAE,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;iBACnD,IAAI,QAAQ,KAAK,OAAO;gBAC3B,MAAM,aAAa,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,IAAI,QAAQ,GAAG,CAAC,CAAC;YACxD,oEAAoE;QACtE,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;AACxD,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,QAAgB;IAC3C,wBAAwB;IACxB,YAAY;IACZ,yDAAyD;IACzD,MAAM,oBAAoB,CACxB,QAAQ,EACR,wBAAwB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAC3C,CAAC;IACF,MAAM,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;AACxB,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,QAAgB,EAChB,UAAsB,EACtB,KAAe;IAEf,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAEvD,IAAI,QAAQ,KAAK,kBAAkB,EAAE,CAAC;QACpC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACnD,MAAM,WAAW,GAAG,MAAM,oBAAoB,CAC5C,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,kBAAkB,CAAC,CACzC,CAAC;QAEF,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,cAAc,CACtB,CAAC,EACD,MAAM,EACN,uCAAuC,CACxC,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CACT,yBAAyB,EACzB,IAAI,QAAQ,CAAC,IAAI,EAAE,GAAG,EACtB,KAAK,EACL,IAAI,WAAW,CAAC,IAAI,EAAE,GAAG,CAC1B,CAAC;QAEF,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAC1C,QAAQ,GAAG,WAAW,CAAC;IACzB,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;IAE5D,MAAM,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,KAAK,CACjE,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,MAAM,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QACpB,MAAM,GAAG,CAAC;IACZ,CAAC,CACF,CAAC;IAEF,MAAM,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IACnB,MAAM,EAAE,CAAC,MAAM,CACb,MAAM,EACN,iBAAiB,CACf,oBAAoB,CAAC,KAAK,EAAE,oBAAoB,CAAC,EACjD,oBAAoB,CACrB,CACF,CAAC;AACJ,CAAC"}
|
package/bin/actions/index.js
CHANGED
package/bin/lib/bash.js
CHANGED
|
@@ -25,12 +25,54 @@ export async function check_dependencies(dependencies = globalDependencies) {
|
|
|
25
25
|
throw new CommanderError(1, "missing_dependencies", missing_dependencies.map((dep) => `'${dep}'`).join(", "));
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
|
+
async function getBestEncoder() {
|
|
29
|
+
try {
|
|
30
|
+
const { stdout } = (await execAsync("ffmpeg -encoders"));
|
|
31
|
+
// Prioridade para AMD (Windows: amf | Linux: vaapi)
|
|
32
|
+
if (stdout.includes("h264_amf"))
|
|
33
|
+
return "h264_amf";
|
|
34
|
+
if (stdout.includes("h264_vaapi"))
|
|
35
|
+
return "h264_vaapi";
|
|
36
|
+
// Outros hardwares
|
|
37
|
+
if (stdout.includes("h264_nvenc"))
|
|
38
|
+
return "h264_nvenc";
|
|
39
|
+
if (stdout.includes("h264_qsv"))
|
|
40
|
+
return "h264_qsv";
|
|
41
|
+
if (stdout.includes("h264_videotoolbox"))
|
|
42
|
+
return "h264_videotoolbox";
|
|
43
|
+
return "libx264"; // Fallback
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
return "libx264";
|
|
47
|
+
}
|
|
48
|
+
}
|
|
28
49
|
export async function ffmpeg_video_compress(input, output, resolution = "480p", forceResolution) {
|
|
29
50
|
const { w, h } = resolutionMapping[resolution];
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
51
|
+
const encoder = await getBestEncoder();
|
|
52
|
+
// No VA-API (Linux), o redimensionamento deve ser feito via hardware para máxima performance
|
|
53
|
+
let filter = forceResolution ? `scale=${w}:${h}` : `scale=-1:${h}`;
|
|
54
|
+
if (encoder === "h264_vaapi") {
|
|
55
|
+
// Adiciona upload para hardware se usar vaapi
|
|
56
|
+
filter = `format=nv12,hwupload,scale_vaapi=w=${forceResolution ? w : -1}:h=${h}`;
|
|
57
|
+
}
|
|
58
|
+
const vaapiOpts = encoder === "h264_vaapi" ? "-vaapi_device /dev/dri/renderD128" : "";
|
|
59
|
+
console.log("Compressing video using: ", encoder);
|
|
60
|
+
return execAsync(`ffmpeg ${vaapiOpts} -i "${input}" -vf "${filter}" -c:v ${encoder} -pix_fmt yuv420p -acodec copy -y "${output}"`);
|
|
33
61
|
}
|
|
62
|
+
// export async function ffmpeg_video_compress(
|
|
63
|
+
// input: string,
|
|
64
|
+
// output: string,
|
|
65
|
+
// resolution: Resolution = "480p",
|
|
66
|
+
// forceResolution?: boolean
|
|
67
|
+
// ) {
|
|
68
|
+
// const { w, h } = resolutionMapping[resolution];
|
|
69
|
+
// return execAsync(
|
|
70
|
+
// forceResolution
|
|
71
|
+
// ? `ffmpeg -i "${input}" -s ${w}x${h} -acodec copy -y "${output}"`
|
|
72
|
+
// : `ffmpeg -i "${input}" -filter:v scale=-1:${h} -acodec copy -y "${output}"`
|
|
73
|
+
// );
|
|
74
|
+
// }
|
|
34
75
|
export async function ffmpeg_image_to_webp(input, output) {
|
|
35
76
|
return execAsync(`ffmpeg -i "${input}" -c:v libwebp "${output}"`);
|
|
36
77
|
}
|
|
78
|
+
//# sourceMappingURL=bash.js.map
|
package/bin/lib/bash.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bash.js","sourceRoot":"","sources":["../../src/lib/bash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAc,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,OAAe,EAAE,EAAE,CAC3C,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;QACtC,IAAI,KAAK;YAAE,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;;YAChC,OAAO,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,MAAM,kBAAkB,GAAG,CAAC,QAAQ,CAAC,CAAC;AAEtC,KAAK,UAAU,gBAAgB,CAAC,UAAkB;IAChD,OAAO,SAAS,CAAC,GAAG,UAAU,KAAK,CAAC;SACjC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;SAChB,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,YAAY,GAAG,kBAAkB;IACxE,MAAM,oBAAoB,GAAG,EAAE,CAAC;IAEhC,KAAK,IAAI,GAAG,IAAI,YAAY,EAAE,CAAC;QAC7B,IAAI,CAAC,CAAC,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;YAAE,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,cAAc,CACtB,CAAC,EACD,sBAAsB,EACtB,oBAAoB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACzD,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAa,EACb,MAAc,EACd,aAAyB,MAAM,EAC/B,eAAyB;IAEzB,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"bash.js","sourceRoot":"","sources":["../../src/lib/bash.ts"],"names":[],"mappings":"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"}
|
package/bin/lib/constants.js
CHANGED
package/bin/lib/utils/index.js
CHANGED
|
@@ -28,6 +28,7 @@ export async function getFolderList(pathname) {
|
|
|
28
28
|
export function getFilenameExtension(filename) {
|
|
29
29
|
return ((filename.includes(".") && filename.split(".").slice(-1)[0]) || undefined);
|
|
30
30
|
}
|
|
31
|
+
// export function getIgnoreList(pathname: string) {x}
|
|
31
32
|
export function replaceFilenameExtension(filename, newExtension) {
|
|
32
33
|
return `${getFilenameWithoutExtension(filename)}.${newExtension}`;
|
|
33
34
|
}
|
|
@@ -87,3 +88,4 @@ export function normalizeFilename(filename) {
|
|
|
87
88
|
// Remove all not alphanumeric characters on start
|
|
88
89
|
.replace(/^[^0-9a-zA-Z]/g, ""));
|
|
89
90
|
}
|
|
91
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/utils/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/utils/index.ts"],"names":[],"mappings":"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"}
|
package/bin/lib/validation.js
CHANGED
package/bin/main.js
CHANGED
package/bin/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACpD,kCAAkC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAE9E,YAAY;AACZ,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAC9B,OAAO;KACJ,IAAI,CAAC,aAAa,CAAC;KACnB,WAAW,CAAC,qDAAqD,CAAC,CAAC;AAEtE,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,8CAA8C,CAAC;KAC3D,QAAQ,CAAC,YAAY,EAAE,UAAU,EAAE,YAAY,CAAC;KAChD,MAAM,CACL,wBAAwB,EACxB,0BAA0B,EAC1B,aAAa,EACb,EAAE,CACH;KACA,MAAM,CAAC,qBAAqB,EAAE,WAAW,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;KAChE,MAAM,CACL,2BAA2B,EAC3B,YAAY,EACZ,UAAU,CAAC,UAAU,CAAC,EACtB,MAAM,CACP;KACA,MAAM,CAAC,aAAa,EAAE,yBAAyB,CAAC;KAChD,MAAM,CAAC,kBAAkB,EAAE,oCAAoC,CAAC;KAChE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAEjC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IAC7C,IAAI,GAAG,YAAY,cAAc,EAAE,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IACrD,CAAC;SAAM,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;QAChC,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;YAC3C,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dev-toolkit-cli",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.4",
|
|
4
4
|
"repository": "https://github.com/daviinacio/dev-toolkit",
|
|
5
5
|
"author": "Davi Inácio <aazz6850@gmail.com>",
|
|
6
6
|
"license": "MIT",
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"type": "module",
|
|
12
12
|
"scripts": {
|
|
13
13
|
"dev": "tsc -w",
|
|
14
|
-
"build": "tsc",
|
|
14
|
+
"build": "rm -rf bin && tsc",
|
|
15
15
|
"unlink-cli": "yarn --global unlink dev-toolkit-cli",
|
|
16
16
|
"link-cli": "(yarn unlink-cli || true) && chmod +x bin/main.js && yarn --global link",
|
|
17
17
|
"prepublish": "yarn build",
|
package/src/lib/bash.ts
CHANGED
|
@@ -29,25 +29,71 @@ export async function check_dependencies(dependencies = globalDependencies) {
|
|
|
29
29
|
throw new CommanderError(
|
|
30
30
|
1,
|
|
31
31
|
"missing_dependencies",
|
|
32
|
-
missing_dependencies.map((dep) => `'${dep}'`).join(", ")
|
|
32
|
+
missing_dependencies.map((dep) => `'${dep}'`).join(", "),
|
|
33
33
|
);
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
+
async function getBestEncoder(): Promise<string> {
|
|
38
|
+
try {
|
|
39
|
+
const { stdout } = (await execAsync("ffmpeg -encoders")) as {
|
|
40
|
+
stdout: string;
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
// Prioridade para AMD (Windows: amf | Linux: vaapi)
|
|
44
|
+
if (stdout.includes("h264_amf")) return "h264_amf";
|
|
45
|
+
if (stdout.includes("h264_vaapi")) return "h264_vaapi";
|
|
46
|
+
|
|
47
|
+
// Outros hardwares
|
|
48
|
+
if (stdout.includes("h264_nvenc")) return "h264_nvenc";
|
|
49
|
+
if (stdout.includes("h264_qsv")) return "h264_qsv";
|
|
50
|
+
if (stdout.includes("h264_videotoolbox")) return "h264_videotoolbox";
|
|
51
|
+
|
|
52
|
+
return "libx264"; // Fallback
|
|
53
|
+
} catch {
|
|
54
|
+
return "libx264";
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
37
58
|
export async function ffmpeg_video_compress(
|
|
38
59
|
input: string,
|
|
39
60
|
output: string,
|
|
40
61
|
resolution: Resolution = "480p",
|
|
41
|
-
forceResolution?: boolean
|
|
62
|
+
forceResolution?: boolean,
|
|
42
63
|
) {
|
|
43
64
|
const { w, h } = resolutionMapping[resolution];
|
|
65
|
+
const encoder = await getBestEncoder();
|
|
66
|
+
|
|
67
|
+
// No VA-API (Linux), o redimensionamento deve ser feito via hardware para máxima performance
|
|
68
|
+
let filter = forceResolution ? `scale=${w}:${h}` : `scale=-1:${h}`;
|
|
69
|
+
if (encoder === "h264_vaapi") {
|
|
70
|
+
// Adiciona upload para hardware se usar vaapi
|
|
71
|
+
filter = `format=nv12,hwupload,scale_vaapi=w=${forceResolution ? w : -1}:h=${h}`;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
const vaapiOpts =
|
|
75
|
+
encoder === "h264_vaapi" ? "-vaapi_device /dev/dri/renderD128" : "";
|
|
76
|
+
|
|
77
|
+
console.log("Compressing video using: ", encoder);
|
|
44
78
|
|
|
45
79
|
return execAsync(
|
|
46
|
-
|
|
47
|
-
? `ffmpeg -i "${input}" -s ${w}x${h} -acodec copy -y "${output}"`
|
|
48
|
-
: `ffmpeg -i "${input}" -filter:v scale=-1:${h} -acodec copy -y "${output}"`
|
|
80
|
+
`ffmpeg ${vaapiOpts} -i "${input}" -vf "${filter}" -c:v ${encoder} -pix_fmt yuv420p -acodec copy -y "${output}"`,
|
|
49
81
|
);
|
|
50
82
|
}
|
|
83
|
+
// export async function ffmpeg_video_compress(
|
|
84
|
+
// input: string,
|
|
85
|
+
// output: string,
|
|
86
|
+
// resolution: Resolution = "480p",
|
|
87
|
+
// forceResolution?: boolean
|
|
88
|
+
// ) {
|
|
89
|
+
// const { w, h } = resolutionMapping[resolution];
|
|
90
|
+
|
|
91
|
+
// return execAsync(
|
|
92
|
+
// forceResolution
|
|
93
|
+
// ? `ffmpeg -i "${input}" -s ${w}x${h} -acodec copy -y "${output}"`
|
|
94
|
+
// : `ffmpeg -i "${input}" -filter:v scale=-1:${h} -acodec copy -y "${output}"`
|
|
95
|
+
// );
|
|
96
|
+
// }
|
|
51
97
|
|
|
52
98
|
export async function ffmpeg_image_to_webp(input: string, output: string) {
|
|
53
99
|
return execAsync(`ffmpeg -i "${input}" -c:v libwebp "${output}"`);
|
package/src/lib/utils/index.ts
CHANGED
package/tsconfig.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"compilerOptions": {
|
|
3
|
-
"target": "
|
|
3
|
+
"target": "es2022",
|
|
4
4
|
"module": "Node16",
|
|
5
5
|
"outDir": "./bin",
|
|
6
6
|
"rootDir": "./src",
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
"forceConsistentCasingInFileNames": true,
|
|
9
9
|
"strict": true,
|
|
10
10
|
"skipLibCheck": true,
|
|
11
|
-
"resolveJsonModule": true
|
|
11
|
+
"resolveJsonModule": true,
|
|
12
|
+
"sourceMap": true
|
|
12
13
|
}
|
|
13
14
|
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { Resolution } from "../lib/constants";
|
|
2
|
-
export declare const FileType: readonly ["image", "video"];
|
|
3
|
-
type FileType = (typeof FileType)[number];
|
|
4
|
-
export type CompressFileArgs = {
|
|
5
|
-
verbose: number;
|
|
6
|
-
type: FileType;
|
|
7
|
-
resolution: Resolution;
|
|
8
|
-
force: boolean;
|
|
9
|
-
horizontal: boolean;
|
|
10
|
-
};
|
|
11
|
-
export declare function file(pathname: string, { verbose, type, resolution, force, horizontal }: CompressFileArgs): Promise<void>;
|
|
12
|
-
export {};
|
|
13
|
-
//# sourceMappingURL=action-compress.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"action-compress.d.ts","sourceRoot":"","sources":["../../src/actions/action-compress.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAa9C,eAAO,MAAM,QAAQ,6BAA8B,CAAC;AACpD,KAAK,QAAQ,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AAU1C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,wBAAsB,IAAI,CACxB,QAAQ,EAAE,MAAM,EAChB,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,gBAAgB,iBA+CnE"}
|
package/bin/actions/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/actions/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC"}
|
package/bin/lib/bash.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { Resolution } from "./constants.js";
|
|
2
|
-
export declare const execAsync: (command: string) => Promise<unknown>;
|
|
3
|
-
export declare function check_dependencies(dependencies?: string[]): Promise<void>;
|
|
4
|
-
export declare function ffmpeg_video_compress(input: string, output: string, resolution?: Resolution, forceResolution?: boolean): Promise<unknown>;
|
|
5
|
-
//# sourceMappingURL=bash.d.ts.map
|
package/bin/lib/bash.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bash.d.ts","sourceRoot":"","sources":["../../src/lib/bash.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAqB,MAAM,gBAAgB,CAAC;AAG/D,eAAO,MAAM,SAAS,YAAa,MAAM,qBAMrC,CAAC;AAUL,wBAAsB,kBAAkB,CAAC,YAAY,WAAqB,iBAczE;AAED,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,UAAU,GAAE,UAAmB,EAC/B,eAAe,CAAC,EAAE,OAAO,oBAS1B"}
|
package/bin/lib/constants.d.ts
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
export declare const resolutionMapping: {
|
|
2
|
-
readonly "4320p": {
|
|
3
|
-
readonly w: 7680;
|
|
4
|
-
readonly h: 4320;
|
|
5
|
-
};
|
|
6
|
-
readonly "2160p": {
|
|
7
|
-
readonly w: 3840;
|
|
8
|
-
readonly h: 2160;
|
|
9
|
-
};
|
|
10
|
-
readonly "1440p": {
|
|
11
|
-
readonly w: 2560;
|
|
12
|
-
readonly h: 1440;
|
|
13
|
-
};
|
|
14
|
-
readonly "1080p": {
|
|
15
|
-
readonly w: 1920;
|
|
16
|
-
readonly h: 1080;
|
|
17
|
-
};
|
|
18
|
-
readonly "720p": {
|
|
19
|
-
readonly w: 1280;
|
|
20
|
-
readonly h: 720;
|
|
21
|
-
};
|
|
22
|
-
readonly "480p": {
|
|
23
|
-
readonly w: 854;
|
|
24
|
-
readonly h: 480;
|
|
25
|
-
};
|
|
26
|
-
readonly "360p": {
|
|
27
|
-
readonly w: 640;
|
|
28
|
-
readonly h: 360;
|
|
29
|
-
};
|
|
30
|
-
readonly "240p": {
|
|
31
|
-
readonly w: 426;
|
|
32
|
-
readonly h: 240;
|
|
33
|
-
};
|
|
34
|
-
};
|
|
35
|
-
export declare const Resolution: readonly ["4320p", "2160p", "1440p", "1080p", "720p", "480p", "360p", "240p"];
|
|
36
|
-
export type Resolution = (typeof Resolution)[number];
|
|
37
|
-
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiCpB,CAAC;AAEX,eAAO,MAAM,UAAU,+EASb,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC"}
|
package/bin/lib/utils/index.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export declare function getFolderFiles(pathname: string, recursive?: boolean): Promise<Array<string>>;
|
|
2
|
-
export declare function getFolderList(pathname: string): Promise<string[]>;
|
|
3
|
-
export declare function getFilenameExtension(filename: string): string | undefined;
|
|
4
|
-
export declare function replaceFilenameExtension(filename: string, newExtension: string): string;
|
|
5
|
-
export declare function addFilenameSuffix(pathname: string, suffix: string): string;
|
|
6
|
-
export declare function addFilenamePrefix(pathname: string, prefix: string): string;
|
|
7
|
-
export declare function removeFilenamePrefix(pathname: string, prefix: string): string;
|
|
8
|
-
export declare function getFilenameWithoutExtension(filename: string): string;
|
|
9
|
-
export declare function getAvailablePathname(pathname: string): Promise<string | null>;
|
|
10
|
-
export declare function getFilename(pathname: string): string;
|
|
11
|
-
export declare function getDirectory(pathname: string): string;
|
|
12
|
-
export declare function normalizeFilename(filename: string): string;
|
|
13
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/index.ts"],"names":[],"mappings":"AAMA,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,SAAS,UAAQ,GAChB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CA4BxB;AAED,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,qBAWnD;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,sBAIpD;AAED,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,UAGrB;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UASjE;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAIjE;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAKpE;AAED,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,UAK3D;AAED,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,0BAQ1D;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,UAE3C;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,UAE5C;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,UAoBjD"}
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import fs from "fs/promises";
|
|
2
|
-
import fsSync from "fs";
|
|
3
|
-
import path from "path";
|
|
4
|
-
export async function getFolderFiles(pathname, recursive = false) {
|
|
5
|
-
const list = await fs.readdir(pathname);
|
|
6
|
-
let { folder_list, file_list } = await list.reduce(async (_acc, name) => {
|
|
7
|
-
const acc = await _acc;
|
|
8
|
-
const is_directory = (await fs.lstat(path.join(pathname, name))).isDirectory();
|
|
9
|
-
if (is_directory)
|
|
10
|
-
acc.folder_list.push(name);
|
|
11
|
-
else
|
|
12
|
-
acc.file_list.push(name);
|
|
13
|
-
return acc;
|
|
14
|
-
}, Promise.resolve({ folder_list: [], file_list: [] }));
|
|
15
|
-
file_list = file_list.map((name) => path.join(pathname, name));
|
|
16
|
-
if (!recursive)
|
|
17
|
-
return file_list;
|
|
18
|
-
const subfolder_file_list = await Promise.all(folder_list.map((folder_name) => getFolderFiles(path.join(pathname, folder_name), recursive))).then((l) => l.flatMap((l) => l));
|
|
19
|
-
file_list.push(...subfolder_file_list);
|
|
20
|
-
return file_list;
|
|
21
|
-
}
|
|
22
|
-
export async function getFolderList(pathname) {
|
|
23
|
-
return Promise.all((await fs.readdir(pathname)).map(async (name) => {
|
|
24
|
-
const is_directory = (await fs.lstat(path.join(pathname, name))).isDirectory();
|
|
25
|
-
return { name, is_directory };
|
|
26
|
-
})).then((result) => result.filter((it) => it.is_directory).map((it) => it.name));
|
|
27
|
-
}
|
|
28
|
-
export function getFilenameExtension(filename) {
|
|
29
|
-
return ((filename.includes(".") && filename.split(".").slice(-1)[0]) || undefined);
|
|
30
|
-
}
|
|
31
|
-
export function replaceFilenameExtension(filename, newExtension) {
|
|
32
|
-
return `${getFilenameWithoutExtension(filename)}.${newExtension}`;
|
|
33
|
-
}
|
|
34
|
-
export function addFilenameSuffix(pathname, suffix) {
|
|
35
|
-
const directory = getDirectory(pathname);
|
|
36
|
-
const filename = getFilename(pathname);
|
|
37
|
-
const extension = getFilenameExtension(filename);
|
|
38
|
-
const filenameWithoutExtension = getFilenameWithoutExtension(filename);
|
|
39
|
-
return path.join(directory, `${filenameWithoutExtension}${suffix}.${extension}`);
|
|
40
|
-
}
|
|
41
|
-
export function addFilenamePrefix(pathname, prefix) {
|
|
42
|
-
const directory = getDirectory(pathname);
|
|
43
|
-
const filename = getFilename(pathname);
|
|
44
|
-
return path.join(directory, `${prefix}${filename}`);
|
|
45
|
-
}
|
|
46
|
-
export function removeFilenamePrefix(pathname, prefix) {
|
|
47
|
-
const directory = getDirectory(pathname);
|
|
48
|
-
const filename = getFilename(pathname);
|
|
49
|
-
if (!filename.startsWith(prefix))
|
|
50
|
-
return pathname;
|
|
51
|
-
return path.join(directory, filename.substring(prefix.length));
|
|
52
|
-
}
|
|
53
|
-
export function getFilenameWithoutExtension(filename) {
|
|
54
|
-
return ((filename.includes(".") && filename.split(".").slice(0, -1).join(".")) ||
|
|
55
|
-
filename);
|
|
56
|
-
}
|
|
57
|
-
export async function getAvailablePathname(pathname) {
|
|
58
|
-
for (let i = 0; i < Number.MAX_SAFE_INTEGER; i++) {
|
|
59
|
-
const availablePathname = i === 0 ? pathname : addFilenameSuffix(pathname, ` (${i})`);
|
|
60
|
-
if (!fsSync.existsSync(availablePathname))
|
|
61
|
-
return availablePathname;
|
|
62
|
-
}
|
|
63
|
-
return null;
|
|
64
|
-
}
|
|
65
|
-
export function getFilename(pathname) {
|
|
66
|
-
return pathname.split("/").slice(-1)[0];
|
|
67
|
-
}
|
|
68
|
-
export function getDirectory(pathname) {
|
|
69
|
-
return pathname.split("/").slice(0, -1).join("/");
|
|
70
|
-
}
|
|
71
|
-
export function normalizeFilename(filename) {
|
|
72
|
-
return (filename
|
|
73
|
-
.normalize("NFD")
|
|
74
|
-
.replace(/[\u0300-\u036f]/g, "")
|
|
75
|
-
// Avoid multiple characters
|
|
76
|
-
.replace(/[ ]{2,}/g, " ")
|
|
77
|
-
.replace(/[.]{2,}/g, ".")
|
|
78
|
-
.replace(/[-]{2,}/g, "-")
|
|
79
|
-
// Replace ' - ' to '-'
|
|
80
|
-
.replace(/[ ][-][ ]/g, "-")
|
|
81
|
-
.replace(/[-][ ]/g, "-")
|
|
82
|
-
.replace(/[ ][-]/g, "-")
|
|
83
|
-
// Replace space to '_'
|
|
84
|
-
.replace(/[ ]/g, "_")
|
|
85
|
-
// Remove all not allowed characters
|
|
86
|
-
.replace(/[^-.0-9_a-zA-Z[]]/g, "")
|
|
87
|
-
// Remove all not alphanumeric characters on start
|
|
88
|
-
.replace(/^[^0-9a-zA-Z]/g, ""));
|
|
89
|
-
}
|
package/bin/lib/validation.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export declare function PathArgument(previous: string): string;
|
|
2
|
-
export declare function NumericOption(previous: string): number;
|
|
3
|
-
export declare function EnumOption<E extends readonly string[], T extends E[number]>(enumerator: E): (previous: string) => T;
|
|
4
|
-
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/lib/validation.ts"],"names":[],"mappings":"AAGA,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,UAI5C;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,UAK7C;AAED,wBAAgB,UAAU,CAAC,CAAC,SAAS,SAAS,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EACzE,UAAU,EAAE,CAAC,cAEK,MAAM,KAAG,CAAC,CAQ7B"}
|
package/bin/main.d.ts
DELETED
package/bin/main.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":""}
|