summaryrefslogtreecommitdiff
path: root/bin/tc
diff options
context:
space:
mode:
Diffstat (limited to 'bin/tc')
-rwxr-xr-xbin/tc39
1 files changed, 39 insertions, 0 deletions
diff --git a/bin/tc b/bin/tc
new file mode 100755
index 0000000..bf013eb
--- /dev/null
+++ b/bin/tc
@@ -0,0 +1,39 @@
+#!/bin/sh
+for dir in ./*; do
+ cd "$dir"
+ mkdir -p output
+ for file in *.*; do
+ STRIPPED_NAME=${file%.*}
+
+ # CPU
+
+ ffmpeg -n -i "$file" \
+ -init_hw_device vulkan=vk:0 \
+ -c:a copy -c:v libsvtav1 -crf "$CRF" -preset "$PRESET" \
+ -svtav1-params "tune=0:lookahead=120:scm=1" \
+ output/"$STRIPPED_NAME".mkv
+
+ # -init_hw_device vulkan=vk:0
+ # platform-agnostic hardware accelerated decoding with vulkan
+ # only available for h264,h265, and experimentally av1
+
+ # parameters
+ ## temporal filtering: averages frames
+ # enable-tf=0
+ ## screen content mode: optimization for screen captures (goated?)
+ # scm=1
+
+ # 10 bit color
+ #-pix_fmt yuv420p10le \
+
+ # VAAPI
+ #ffmpeg -hwaccel vaapi -hwaccel_output_format vaapi \
+ #-i "$file" -c:a copy -c:v av1_vaapi -crf 20 -b:v 30M "output/$file"
+ #ffmpeg -hwaccel vaapi -hwaccel_output_format vaapi \
+ #-i "$file" -c:a copy -c:v av1_vaapi -rc_mode VBR -b:v 30M -maxrate 35M "output/$file"
+ # NVENC
+ #ffmpeg -i "$file" \
+ #-c:a copy -c:v hevc_nvenc -preset p7 -rc vbr -maxrate 1M output/"$file".mkv
+ done
+ cd ..
+done