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.
| | |
| ------------- | ----------------------------------------------------- |
| ------------- | ------------------------------------------------------ |
| `/nitro` | Increase the file limit to 500Mo |
| `/nitrobasic` | Increase the file limit to 50Mo |
| | |
| `/nvenc_h264` | Enable NVenc with H.264 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) |
> NVenc support is experimental, but faster than CPU counterparts.
> NVidia and AMD hardware accelerators support is experimental, but faster
> than CPU counterparts.
## 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] If already under the limit, the file won't be compressed
- [x] NVenc support
- [x] AMD cards acceleration support
- [x] Nitro suppport
- [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)

88
package-lock.json generated
View file

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

View file

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

View file

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