Aly*_*Aly 22 video ubuntu avconv
我正在尝试使用avconv将一堆png转换成视频,png的编号是filename_<number>这样的,我通常只使用命令:
avconv -r 10 -i filename_%d.png -b:v 1000k test.mp4
我现在想要从文件的子集制作一个视频filename_8- filename_50比方说,所以我将这些文件复制到一个新目录并尝试了相同的命令,但现在我收到了错误:
filename_%d.png: No such file or directory
Run Code Online (Sandbox Code Playgroud)
我认为这是因为编号不是从1开始的?
我怎样才能做到这一点?
mar*_*k4o 30
avconv -r 10 -start_number 8 -i filename_%d.png -b:v 1000k test.mp4
Run Code Online (Sandbox Code Playgroud)
您将需要最新的9.x版本的avconv作为-start_number选项; 它不是0.8.x版本.或者,您可以使用最新版本的ffmpeg.或者将文件重命名为以0到4之间的数字开头,因为它将默认检查这些名称.
小智 7
您可以使用cat连接文件,然后使用image2pipe demuxer在avconv中读取它们.喜欢cat filename* | avconv -f image2pipe -i - ...
小智 5
看一下这个; 根据ffmpeg,这是他们如何做它并且它的工作原理
img1.jpg, img2.jpg, img3.jpg, ...然后你可以运行:
ffmpeg -f image2 -i img%d.jpg /tmp/a.mpg
Run Code Online (Sandbox Code Playgroud)
请注意,%d它由图像编号替换.
img%03d.jpg指序列img001.jpg,
img002.jpg等.
使用'-start_number'选项声明序列的起始编号.如果序列不是img001.jpg以数字顺序开头但仍处于数字顺序,则此选项非常有用
.以下示例将从以下开始img100.jpg:
ffmpeg -f image2 -start_number 100 -i img%d.jpg /tmp/a.mpg
Run Code Online (Sandbox Code Playgroud)如果要重命名大量图片,可以使用以下命令来减轻负担.该命令使用bourne shell语法,将当前目录中与*jpg匹配的所有文件符号链接到/tmp序列中的目录
img001.jpg,img002.jpg依此类推.
x=1;
for i in *jpg;
do counter=$(printf %03d $x);
ln -s "$i" /tmp/img"$counter".jpg;
x=$(($x+1));
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
56203 次 |
| 最近记录: |