Este é o script de shell que estou escrevendo:
#FOR YOUTUBE-DL COMMAND
read -r -p "Do you want to download a link? [y/N] " response
if [[ "$response" =~ ^([yY][eE][sS]|[yY])+$ ]]; then
read -e -p "Enter Youtube link: " youtube_link
youtube-dl $youtube_link -o "/home/tex/catkin_ws/youtube_videos/%(title)s%(ext)s" -f mp4
fi
#FOR FFMPEG COMMAND
read -e -p "Enter video file dir: " video_dir
video_dir="${video_dir/#\~/$HOME}"
echo $video_dir
read -e -p "Enter fps: " fps
read -e -p "Enter video file image destination: " image_destination
image_destination="${image_destination/#\~/$HOME}"
image_format="image-%04d.jpeg"
image_destination=$(echo ${image_destination}${image_format})
ffmpeg -i $video_dir -r $fps $image_destination
É muito simples - estou apenas tentando automatizar alguns comandos em vez de escrevê-los várias vezes ...
Mas estou recebendo alguns erros estranhos. Este é meu primeiro script de shell, então não tenho certeza do que estou fazendo de errado.
Quando chego à última linha:
ffmpeg -i $video_dir -r $fps $image_destination
Eu recebo um problema em $video_dir
no comando ffmpeg. Primeiro de tudo, quando eu:
echo $video_dir
na linha 13 eu recebo:
/home/usr/ws/youtube_videos/AIRSOFT - 4 Player Split Screenmp4
No entanto,
ffmpeg está retornando um erro:
/home/usr/ws/youtube_videos/AIRSOFT: No such file or directory
É como se estivesse lendo apenas a primeira parte (AIRSOFT) e não o resto (AIRSOFT - 4 ....)
Existe uma razão para isso?