Compare commits

...

3 commits

Author SHA1 Message Date
0010aa0a33
bump dependencie to 1.11.3
All checks were successful
Upload release / build (push) Successful in 2m31s
2024-11-13 02:02:12 +01:00
74b5be4e3b
add amd support 2024-11-13 02:02:01 +01:00
e1aad3fb1e
update dependencies 2024-11-13 01:42:08 +01:00
4 changed files with 58 additions and 68 deletions

View file

@ -20,15 +20,18 @@ Tool for sharing video to Discord.
You can add thoses flags in the `Target` field of your Windows shortcut. You can add thoses flags in the `Target` field of your Windows shortcut.
| | | | | |
| ------------- | ----------------------------------------------------- | | ------------- | ------------------------------------------------------ |
| `/nitro` | Increase the file limit to 500Mo | | `/nitro` | Increase the file limit to 500Mo |
| `/nitrobasic` | Increase the file limit to 50Mo | | `/nitrobasic` | Increase the file limit to 50Mo |
| | | | | |
| `/nvenc_h264` | Enable NVenc with H.264 encoder (NVidia GPU required) | | `/nvenc_h264` | Enable NVenc with H.264 encoder (NVidia GPU required) |
| `/nvenc_h265` | Enable NVenc with H.265 encoder (NVidia GPU required) | | `/nvenc_h265` | Enable NVenc with H.265 encoder (NVidia GPU required) |
| `/amd_h264` | Enable AMF using DX11 with H.264 encoder (for AMD GPU) |
| `/amd_h265` | Enable AMF using DX11 with H.265 encoder (for AMD GPU) |
| `/h265` | Enable the H.265 CPU encoder (slow compression) | | `/h265` | Enable the H.265 CPU encoder (slow compression) |
> NVenc support is experimental, but faster than CPU counterparts. > NVidia and AMD hardware accelerators support is experimental, but faster
> than CPU counterparts.
## More info ## More info
@ -38,6 +41,7 @@ You can add thoses flags in the `Target` field of your Windows shortcut.
- [x] Defaults to H.264 CPU encoder - [x] Defaults to H.264 CPU encoder
- [x] If already under the limit, the file won't be compressed - [x] If already under the limit, the file won't be compressed
- [x] NVenc support - [x] NVenc support
- [x] AMD cards acceleration support
- [x] Nitro suppport - [x] Nitro suppport
- [x] Merge 2 audio files into one track when recorded with system audio and microphone - [x] Merge 2 audio files into one track when recorded with system audio and microphone
split up, while keeping the original ones (with conveniant metadata) split up, while keeping the original ones (with conveniant metadata)

88
package-lock.json generated
View file

@ -1,12 +1,12 @@
{ {
"name": "dsr", "name": "dsr",
"version": "1.11.2", "version": "1.11.3",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "dsr", "name": "dsr",
"version": "1.11.2", "version": "1.11.3",
"license": "AGPL-3.0-or-later", "license": "AGPL-3.0-or-later",
"dependencies": { "dependencies": {
"@electron-forge/maker-zip": "^7.5", "@electron-forge/maker-zip": "^7.5",
@ -17,7 +17,7 @@
"devDependencies": { "devDependencies": {
"@electron-forge/cli": "^7.5", "@electron-forge/cli": "^7.5",
"@types/ffprobe-static": "^2.0", "@types/ffprobe-static": "^2.0",
"electron": "^33.0" "electron": "^33.2"
} }
}, },
"node_modules/@derhuerst/http-basic": { "node_modules/@derhuerst/http-basic": {
@ -311,12 +311,11 @@
} }
}, },
"node_modules/@electron/asar": { "node_modules/@electron/asar": {
"version": "3.2.13", "version": "3.2.17",
"resolved": "https://registry.npmjs.org/@electron/asar/-/asar-3.2.13.tgz", "resolved": "https://registry.npmjs.org/@electron/asar/-/asar-3.2.17.tgz",
"integrity": "sha512-pY5z2qQSwbFzJsBdgfJIzXf5ElHTVMutC2dxh0FD60njknMu3n1NnTABOcQwbb5/v5soqE79m9UjaJryBf3epg==", "integrity": "sha512-OcWImUI686w8LkghQj9R2ynZ2ME693Ek6L1SiaAgqGKzBaTIZw3fHDqN82Rcl+EU1Gm9EgkJ5KLIY/q5DCRbbA==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@types/glob": "^7.1.0",
"commander": "^5.0.0", "commander": "^5.0.0",
"glob": "^7.1.6", "glob": "^7.1.6",
"minimatch": "^3.0.4" "minimatch": "^3.0.4"
@ -515,9 +514,9 @@
} }
}, },
"node_modules/@electron/packager": { "node_modules/@electron/packager": {
"version": "18.3.5", "version": "18.3.6",
"resolved": "https://registry.npmjs.org/@electron/packager/-/packager-18.3.5.tgz", "resolved": "https://registry.npmjs.org/@electron/packager/-/packager-18.3.6.tgz",
"integrity": "sha512-ClgTxXTt3MesWAcjIxIkgxELjTcllw1FRoVsihP7uT48kpDMqI71p4XvnMWbq8PvU57TcrKICAaLkxRhbc+/wQ==", "integrity": "sha512-1eXHB5t+SQKvUiDpWGpvr90ZSSbXj+isrh3YbjCTjKT4bE4SQrKSBfukEAaBvp67+GXHFtCHjQgN9qSTFIge+Q==",
"license": "BSD-2-Clause", "license": "BSD-2-Clause",
"dependencies": { "dependencies": {
"@electron/asar": "^3.2.13", "@electron/asar": "^3.2.13",
@ -565,9 +564,9 @@
} }
}, },
"node_modules/@electron/rebuild": { "node_modules/@electron/rebuild": {
"version": "3.7.0", "version": "3.7.1",
"resolved": "https://registry.npmjs.org/@electron/rebuild/-/rebuild-3.7.0.tgz", "resolved": "https://registry.npmjs.org/@electron/rebuild/-/rebuild-3.7.1.tgz",
"integrity": "sha512-VW++CNSlZwMYP7MyXEbrKjpzEwhB5kDNbzGtiPEjwYysqyTCF+YbNJ210Dj3AjWsGSV4iEEwNkmJN9yGZmVvmw==", "integrity": "sha512-sKGD+xav4Gh25+LcLY0rjIwcCFTw+f/HU1pB48UVbwxXXRGaXEqIH0AaYKN46dgd/7+6kuiDXzoyAEvx1zCsdw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@electron/node-gyp": "git+https://github.com/electron/node-gyp.git#06b29aafb7708acef8b3669835c8a7857ebc92d2", "@electron/node-gyp": "git+https://github.com/electron/node-gyp.git#06b29aafb7708acef8b3669835c8a7857ebc92d2",
@ -649,9 +648,9 @@
} }
}, },
"node_modules/@electron/windows-sign": { "node_modules/@electron/windows-sign": {
"version": "1.1.3", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/@electron/windows-sign/-/windows-sign-1.1.3.tgz", "resolved": "https://registry.npmjs.org/@electron/windows-sign/-/windows-sign-1.2.0.tgz",
"integrity": "sha512-OqVSdAe+/88fIjvTDWiy+5Ho1nXsiBhE5RTsIQ6M/zcxcDAEP2TlQCkOyusItnmzXRN+XTFaK9gKhiZ6KGyXQw==", "integrity": "sha512-5zfLHfD6kGgsXzuYlKwlWWO8w6dboKy4dhd7rGnR4rQYumuDgPAF2TYjEa8LUi89KdHxtDy2btq02KvbjhK9Iw==",
"license": "BSD-2-Clause", "license": "BSD-2-Clause",
"dependencies": { "dependencies": {
"cross-dirname": "^0.1.0", "cross-dirname": "^0.1.0",
@ -826,16 +825,6 @@
"dev": true, "dev": true,
"license": "MIT" "license": "MIT"
}, },
"node_modules/@types/glob": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz",
"integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==",
"license": "MIT",
"dependencies": {
"@types/minimatch": "*",
"@types/node": "*"
}
},
"node_modules/@types/http-cache-semantics": { "node_modules/@types/http-cache-semantics": {
"version": "4.0.4", "version": "4.0.4",
"resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz",
@ -851,16 +840,10 @@
"@types/node": "*" "@types/node": "*"
} }
}, },
"node_modules/@types/minimatch": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz",
"integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==",
"license": "MIT"
},
"node_modules/@types/node": { "node_modules/@types/node": {
"version": "22.7.5", "version": "20.17.6",
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.6.tgz",
"integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", "integrity": "sha512-VEI7OdvK2wP7XHnsuXbAJnEpEkF6NjSN45QJlL4VGqZSXsnicpesdTWsg9RISeSdYd3yeRj/y3k5KGjUXYnFwQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"undici-types": "~6.19.2" "undici-types": "~6.19.2"
@ -1044,6 +1027,7 @@
"version": "3.2.0", "version": "3.2.0",
"resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz", "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz",
"integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==",
"deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.",
"license": "MIT", "license": "MIT",
"optional": true "optional": true
}, },
@ -1471,9 +1455,9 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/cross-spawn": { "node_modules/cross-spawn": {
"version": "7.0.3", "version": "7.0.5",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.5.tgz",
"integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "integrity": "sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"path-key": "^3.1.0", "path-key": "^3.1.0",
@ -1641,9 +1625,9 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/electron": { "node_modules/electron": {
"version": "33.0.0", "version": "33.2.0",
"resolved": "https://registry.npmjs.org/electron/-/electron-33.0.0.tgz", "resolved": "https://registry.npmjs.org/electron/-/electron-33.2.0.tgz",
"integrity": "sha512-OdLLR/zAVuNfKahSSYokZmSi7uK2wEYTbCoiIdqWLsOWmCqO9j0JC2XkYQmXQcAk2BJY0ri4lxwAfc5pzPDYsA==", "integrity": "sha512-PVw1ICAQDPsnnsmpNFX/b1i/49h67pbSPxuIENd9K9WpGO1tsRaQt+K2bmXqTuoMJsbzIc75Ce8zqtuwBPqawA==",
"dev": true, "dev": true,
"hasInstallScript": true, "hasInstallScript": true,
"license": "MIT", "license": "MIT",
@ -1681,16 +1665,6 @@
"global-agent": "^3.0.0" "global-agent": "^3.0.0"
} }
}, },
"node_modules/electron/node_modules/@types/node": {
"version": "20.16.11",
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.11.tgz",
"integrity": "sha512-y+cTCACu92FyA5fgQSAI8A1H429g7aSK2HsO7K4XYUWc4dY5IUz55JSDIYT6/VsOLfGy8vmvQYC2hfb0iF16Uw==",
"dev": true,
"license": "MIT",
"dependencies": {
"undici-types": "~6.19.2"
}
},
"node_modules/electron/node_modules/fs-extra": { "node_modules/electron/node_modules/fs-extra": {
"version": "8.1.0", "version": "8.1.0",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
@ -3198,9 +3172,9 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/negotiator": { "node_modules/negotiator": {
"version": "0.6.3", "version": "0.6.4",
"resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz",
"integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==",
"license": "MIT", "license": "MIT",
"engines": { "engines": {
"node": ">= 0.6" "node": ">= 0.6"
@ -3214,9 +3188,9 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/node-abi": { "node_modules/node-abi": {
"version": "3.70.0", "version": "3.71.0",
"resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.70.0.tgz", "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.71.0.tgz",
"integrity": "sha512-xMTIZdvAyzGyxwOwxXv/8V/f/KAqKWNCeNIIFu2doEtQp9wvMUTam036At/iVtJqum6n5ljbAhUmXAUOhyivSA==", "integrity": "sha512-SZ40vRiy/+wRTf21hxkkEjPJZpARzUMVcJoQse2EF8qkUWbbO2z7vd5oA/H6bVH6SZQ5STGcu0KRDS7biNRfxw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"semver": "^7.3.5" "semver": "^7.3.5"

View file

@ -1,6 +1,6 @@
{ {
"name": "dsr", "name": "dsr",
"version": "1.11.2", "version": "1.11.3",
"description": "Discord Video Sharing", "description": "Discord Video Sharing",
"main": "./dist/main.js", "main": "./dist/main.js",
"scripts": { "scripts": {
@ -26,7 +26,7 @@
"devDependencies": { "devDependencies": {
"@electron-forge/cli": "^7.5", "@electron-forge/cli": "^7.5",
"@types/ffprobe-static": "^2.0", "@types/ffprobe-static": "^2.0",
"electron": "^33.0" "electron": "^33.2"
}, },
"config": { "config": {
"forge": { "forge": {

View file

@ -182,12 +182,24 @@ app.whenReady().then(() => {
hwAcc = "-hwaccel cuda"; hwAcc = "-hwaccel cuda";
} }
if (argv.includes("/amd_h264")) {
// Use AMF H.264
codec = "h264_amf";
hwAcc = "-hwaccel d3d11va";
}
if (argv.includes("/nvenc_h265")) { if (argv.includes("/nvenc_h265")) {
// Use NVenc H.265 // Use NVenc H.265
codec = "hevc_nvenc"; codec = "hevc_nvenc";
hwAcc = "-hwaccel cuda"; hwAcc = "-hwaccel cuda";
} }
if (argv.includes("/amd_h265")) {
// Use AMF H.265
codec = "hevc_amf";
hwAcc = "-hwaccel d3d11va";
}
if (argv.includes("/h265")) { if (argv.includes("/h265")) {
// Use H.265 encoder // Use H.265 encoder
codec = "libx265"; codec = "libx265";