nvidia encoding

This commit is contained in:
Danilo Reyes
2026-02-25 14:11:02 -06:00
parent 155967f8e9
commit 7b6e411ebc

View File

@@ -40,6 +40,21 @@ convert_mp4() {
mv -i "$file_tempdest" "$file_destination"
}
convert_e265_nvenc() {
local file_newname
file_newname=$(replace_extension "$1" mp4)
local file_tempdest=/dev/shm/$file_newname
local file_destination
file_destination=$(dirname "$(realpath "$1")")/$file_newname
ffpb -i "$1" \
-c:v hevc_nvenc \
-preset p7 -rc vbr_hq -cq 19 -b:v 0 \
-spatial_aq 1 -aq-strength 8 \
"$file_tempdest"
trash "$1"
mv -i "$file_tempdest" "$file_destination"
}
convert_discord() {
local file_newname
file_newname=$2_$(replace_extension "$1" mp4)
@@ -54,7 +69,7 @@ convert_discord() {
command rm -rf "$dir_ram"
}
operation=$(gum choose mp4 av1 discord nitro gif enc265)
operation=$(gum choose mp4 av1 discord nitro gif enc265 e265_nvidia)
case $operation in
1 | mp4)
@@ -116,6 +131,20 @@ case $operation in
convert_mp4 "$file"
done
;;
7 | e265_nvidia)
to_convert=()
extensions=(flv m4v mpg avi mov ts mkv mp4 webm)
for ext in "${extensions[@]}"; do
while IFS= read -r file; do
if ! (mediainfo "$file" | grep Writing\ library | grep -q x265); then
to_convert+=("$file")
fi
done < <(fd . -e "$ext" -tf -aL)
done
for file in "${to_convert[@]}"; do
convert_e265_nvenc "$file"
done
;;
*)
echo -n "Please select a valid input"
;;