config/fish/functions/video_compress.fish

21 lines
624 B
Fish

function video_compress --argument-names srcfile
if test -z "$srcfile"
echo "Error: missing argument"
return 1
end
if not test -f "$srcfile"
echo "Error: not a regular file: $srcfile"
return 2
end
if not command --search --quiet HandBrakeCLI
echo "Error: HandBrakeCLI is required"
return 3
end
# Output: srcfile.extension -> srcfile-compressed.mp4
set --local dstfile (string split -r -m1 . $srcfile)[1]-compressed.mp4
set --local preset 'Vimeo YouTube HQ 720p60'
HandBrakeCLI --preset $preset --input $srcfile --output $dstfile
end