1
所以我写了一个bash脚本把新写的视频文件,并转码他们在我这里的服务器播放和流媒体是脚本Intepreting字符串中使用inotifywait和avconv
while true; do
printf -v filename '%q' "$(inotifywait --format "%w""%f" -r -e close_write /var/$
echo $filename
if [[ $filename == *".mp4"* ]]; then
echo "1"
avconv -i "$filename" "`echo ${filename%.mp4}.webm`"
fi
if [[ $filename == *".mkv"* ]]; then
echo "2"
avconv -i "$filename" "`echo ${filename%.mkv}.mp4`"
avconv -i "$filename" "`echo ${filename%.mkv}.webm`"
fi
if [[ "$filename" == *".avi"* ]]
then echo "3"
avconv -i "$filename" "`echo ${filename%.avi}.mp4`" &
avconv -i "$filename" "`echo ${filename%.avi}.webm`"&
fi
done
脚本工作还算不错但是如果$文件名中包含空格avconv休息和脚本返回:
Watches established.
/var/www/media2net/tv/The\ Daily.mkv
2
avconv version 0.8.4-4:0.8.4-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav s
built on Nov 6 2012 16:51:33 with gcc 4.6.3
/var/www/media2net/tv/The\: No such file or directory
avconv version 0.8.4-4:0.8.4-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav
built on Nov 6 2012 16:51:33 with gcc 4.6.3
/var/www/media2net/tv/The\ Daily.mkv: No such file or directory
Setting up watches. Beware: since -r was given, this may take a while!
Watches established.
然而,这是不正确的,因为我可以查看它的相应的目录里面说的文件,我还测试了avconv在以下外壳和一切正常工作y和avconv转码视频
avconv -i /var/www/media2net/The\ Daily.mkv /var/www/media2net/tv/The\ Daily.webm
基本上我想知道我在做什么错在我的脚本或者其他任何人经历了使用avconv或ffmpeg的(因为2非常相似,并avconv是Ubuntu的叉了类似的问题该项目)任何帮助将不胜感激! 在此先感谢 -brendan
谢谢,为此...你确实是正确的,对于迟到抱歉我真的不明白网站的细微差别! – brendosthoughts