使用ffmpeg旋转图像

时间:2016-04-01 05:29:28

标签: ffmpeg

我只想弄清楚如何使用FFmpeg旋转图像。但问题是当Filename包含 “%” 符号时。那个命令不起作用。

ffmpeg -y -i '/mypath/Prat%eek.jpg' -vf transpose=2 '/mypath/Prat%eek.jpg'

1 个答案:

答案 0 :(得分:2)

根据documentation of ffmpeg,我们提到每个特殊字符%*?[]{}都应该由%转义。

  

所有glob特殊字符%*?[] {}必须以"%"为前缀。逃避文字"%"你应该使用" %%"。

所以上面的命令应该是

ffmpeg -y -i '/mypath/Prat%%eek.jpg' -vf transpose=2 '/mypath/Prat%%eek.jpg'

修改

在linux上使用上面的命令后我发现它无法正常工作,在文档中也提到了

  

例如,模式foo - %*。jpeg将匹配以" foo - "为前缀的所有文件名。并使用" .jpeg"和foo - %?%?%?. jpeg将匹配所有前缀为" foo - "的文件名,后跟三个字符的序列,并以" .jpeg"终止。

所以我尝试了这个命令,

ffmpeg -y -i '/mypath/Prat%?eek.jpg' -vf transpose=2 '/mypath/Prat%%eek.jpg'

以上命令有效。

修改

我没有在任何文档中发现源文件名应该以其他方式转义,并且目标路径应该以其他方式转义但是根据上述命令工作,我想是的,

  • 使用ffmpeg命令处理单个文件时,应使用?符号(在转义字符之后)转义所有源路径。
  • 目标路径应由目标路径中的%转义。