From 943309a8ded8007c83b4fb1c0679ddb3635eafa5 Mon Sep 17 00:00:00 2001 From: Arsimael Inshan Date: Wed, 2 Feb 2022 22:54:08 +0100 Subject: [PATCH] workaround trace --- ...batch_convert.sh => batch_convert_hevc.sh} | 35 +++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) rename Linux Desktop scripts/{batch_convert.sh => batch_convert_hevc.sh} (70%) diff --git a/Linux Desktop scripts/batch_convert.sh b/Linux Desktop scripts/batch_convert_hevc.sh similarity index 70% rename from Linux Desktop scripts/batch_convert.sh rename to Linux Desktop scripts/batch_convert_hevc.sh index d551d7a..43b140a 100755 --- a/Linux Desktop scripts/batch_convert.sh +++ b/Linux Desktop scripts/batch_convert_hevc.sh @@ -1,4 +1,7 @@ #!/bin/bash + +GPU=nv #Which Hardware to use? nv = nvidia, amd = amdgpu; intel = intel qsv; cpu = CPU encoding + BASEFOLDER_SOURCE="/path/to/source" BASEFOLDER_DESTIN="/path/to/destination" FOLDERS_TO_SCAN=( @@ -6,9 +9,8 @@ FOLDERS_TO_SCAN=( "Folder 2" "Also a Folder" ) -GPU=nv #Which Hardware to use? nv = nvidia, amd = amdgpu; intel = intel qsv; cpu = CPU encoding -#---------- NO EDIT BELOW HERE ---------- +#---------- DO NOT EDIT BELOW HERE EXCEPT YOU KNOW WHAT YOU ARE DOING ---------- BFSL=$(expr length ${BASEFOLDER_SOURCE}) BFSL=$((BFSL + 1)) @@ -17,6 +19,8 @@ ffmpeg_input_opts_amd=( -hwaccel vaapi -hwaccel_output_format vaapi -hwaccel_device amdgpu + -nostdin + -stats ) ffmpeg_output_opts_amd=( @@ -29,6 +33,9 @@ ffmpeg_output_opts_amd=( ) ffmpeg_input_opts_nv=( + -nostdin + -stats + ) ffmpeg_output_opts_nv=( @@ -40,6 +47,8 @@ ffmpeg_output_opts_nv=( ffmpeg_input_opts_intel=( -hwaccel qsv + -nostdin + -stats ) ffmpeg_output_opts_intel=( @@ -49,6 +58,18 @@ ffmpeg_output_opts_intel=( -c:s copy ) +ffmpeg_input_opts_cpu=( + -nostdin + -stats +) + +ffmpeg_output_opts_cpu=( + -map 0 + -c:v libx265 + -c:a copy + -c:s copy +) + for i in "${FOLDERS_TO_SCAN[@]}"; do find ${BASEFOLDER_SOURCE}/"${i}" -type f >temp.txt while IFS= read -r LINE; do @@ -60,19 +81,29 @@ for i in "${FOLDERS_TO_SCAN[@]}"; do case ${GPU} in nv) echo -n "Using nVidia cuda" + echo "Encoding file ${FILE}" ffmpeg ${ffmpeg_input_opts_nv[@]} -i "${SPATH}/${FILE}" ${ffmpeg_output_opts_nv[@]} "${DPATH}/${FILE}" + echo -e "------------------\n\n" ;; amd) echo -n "using AMDGPU" + echo "Encoding file ${FILE}" ffmpeg ${ffmpeg_input_opts_amd[@]} -i "${SPATH}/${FILE}" ${ffmpeg_output_opts_amd[@]} "${DPATH}/${FILE}" + echo -e "------------------\n\n" ;; intel) echo -n "Using Intel QSV" + echo "Encoding file ${FILE}" ffmpeg ${ffmpeg_input_opts_intel[@]} -i "${SPATH}/${FILE}" ${ffmpeg_output_opts_intel[@]} "${DPATH}/${FILE}" + echo -e "------------------\n\n" ;; *) echo -n "Using CPU encoding" ;; + echo -n "Using CPU" + echo "Encoding file ${FILE}" + ffmpeg ${ffmpeg_input_opts_cpu[@]} -i "${SPATH}/${FILE}" ${ffmpeg_output_opts_cpu[@]} "${DPATH}/${FILE}" + echo -e "------------------\n\n" esac done < temp.txt