#! /bin/zsh # # this file: # http://user.it.uu.se/~embe8573/conf/.zsh/audio # https://dataswamp.org/~incal/conf/.zsh/audio space () { local snd=~/mm/white/space.webm pl --volume=30 --loop $snd } rm-audio () { local file=$1 local name=${file:r} local ext=${file:e} local video=${name}-mute.${ext} ffmpeg -i $file -an $video } put-audio-into-video () { local audio=$1 local video=$2 local start=${3:-0} local audio_name=${audio:r} local video_name=${video:r} local video_ext=${video:e} ffmpeg \ -i $audio \ -ss $start \ -i $video \ -strict experimental \ ${video_name}-${audio_name}.${video_ext} } # does this work? img-audio () { local img=$1 local img_name=${img:r} local audio=$2 local audio_name=${audio:r} local sec=$(video-seconds $audio) local out=${audio_name}-${img_name}.mp4 ffmpeg -y \ -loop 1 \ -i $img \ -i $audio \ -c:v libx264 \ -tune stillimage \ -t $sec \ -c:a aac \ -strict experimental \ -b:a 192k \ -pix_fmt yuv420p \ -vf scale=1280:720 \ -shortest $out }