#2867 closed defect (invalid)
Ffmpeg doesn't understand pattern, like "photo*.jpg" and syntax like "photo%03d.jpg"
Reported by: | amitoria | Owned by: | |
---|---|---|---|
Priority: | minor | Component: | ffmpeg |
Version: | 1.2.2 | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | yes | |
Analyzed by developer: | yes |
Description
- I am trying to create video from *.jpg
- a)Ffmpeg doesn't understand pattern, like "photo*.jpg"
b)Ffmpeg doesn't understand syntax like "photo%03d.jpg"
- I used the following commads:
a)ffmpeg -f image2 -y -i "photo*.jpg" -r 0.5 -s 640x480 foo.avi
b)ffmpeg -f image2 -y -i "photo%03d.jpg" -r 0.5 -s 640x480 foo.avi
At the same folder I placed photos(with names photoA.jpg, photoB.jpg, photoC.jpg, photo001, photo002, photo003 and like that).
- Batch file's name is batfile.bat. Command: ffmpeg -v 9 -loglevel 99 -f image2 -y -i "photo%03d.jpg" -r 0.5 -s 640x480 foo.avi.
ffmpeg version 1.2 Copyright (c) 2000-2013 the FFmpeg developers
built on Mar 28 2013 00:28:48 with gcc 4.8.0 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-av
isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
le-libass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libg
sm --enable-libilbc --enable-libmp3lame --enable-libopencore-amrnb --enable-libo
pencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-li
bschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-lib
twolame --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enabl
e-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
libavutil 52. 18.100 / 52. 18.100
libavcodec 54. 92.100 / 54. 92.100
libavformat 54. 63.104 / 54. 63.104
libavdevice 54. 3.103 / 54. 3.103
libavfilter 3. 42.103 / 3. 42.103
libswscale 2. 2.100 / 2. 2.100
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 2.100 / 52. 2.100
Splitting the commandline.
Reading option '-v' ... matched as option 'v' (set libav* logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set libav* logginglevel) with argument '99'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'image2'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option '-i' ... matched as input file with argument 'photoE:\copy_result\bug\batfile.bat3d.jpg'.
Reading option '-r' ... matched as option 'r' (set frame rate (Hz value, fraction or abbreviation)) with argument '0.5'.
Reading option '-s' ... matched as option 's' (set frame size (WxH or abbreviation)) with argument '640x480'.
Reading option 'foo.avi' ... matched as output file.Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set libav* logging level) with argument 9.
Applying option y (overwrite output files) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input file photoE:\copy_result\bug\batfile.bat3d.jpg.
Applying option f (force format) with argument image2.
Successfully parsed a group of options.
Opening an input file: photoE:\copy_result\bug\batfile.bat3d.jpg.
[image2 @ 02597dc0] Could find no file with with path 'photoE:\copy_result\bug\batfile.bat3d.jpg' and index in the range 0-4
photoE:\copy_result\bug\batfile.bat3d.jpg: No such file or directory
Attachments (1)
Change History (7)
follow-up: 2 comment:1 by , 11 years ago
comment:2 by , 11 years ago
Replying to thilo.borgmann:
Replying to amitoria:
- Batch file's name is batfile.bat. Command: ffmpeg -v 9 -loglevel 99 -f image2 -y -i "photo%03d.jpg" -r 0.5 -s 640x480 foo.avi.
Reading option '-i' ... matched as input file with argument 'photoE:\copy_result\bug\batfile.bat3d.jpg'.
These look like you're pasting the wrong command line parameter to the call of ffmpeg in your .bat file. This looks like you're using $0 instead of $1 or something similar. Please check.
And with "you're pasting" I mean, your shell seems to paste for you before ffmpeg is even called... looks like windows uses "%03"?
-Thilo
by , 11 years ago
Attachment: | batfile.bat added |
---|
follow-up: 4 comment:3 by , 11 years ago
When I write %1 instead %0, command line correctly sends options to ffmpeg, but I can't use % in that options second time. For "photo%13d.jpg" ffmpeg writes that:
[image2 @ 02957800] Could find no file with path 'photo3d.jpg' and index in the
range 0-4
photo3d.jpg: No such file or directory
For bug report I use example from official doc-s (at bottom of http://ffmpeg.org/ffmpeg.html page).
I think, it would be nice to exclude from ffmpeg's command syntax the '%' symbol, because it used by command shell.
comment:4 by , 11 years ago
Replying to amitoria:
[...]
I think, it would be nice to exclude from ffmpeg's command syntax the '%' symbol, because it used by command shell.
All you need to do is to escape your '%' symbol properly if that symbol is to be used by the program invoked and not meant to be handled by the shell.
In your case escape % with % and type: "photo%%03d.jpg".
-Thilo
comment:5 by , 11 years ago
Analyzed by developer: | set |
---|---|
Priority: | important → minor |
Reproduced by developer: | set |
Resolution: | → invalid |
Status: | new → closed |
Replying to amitoria:
These look like you're pasting the wrong command line parameter to the call of ffmpeg in your .bat file. This looks like you're using $0 instead of $1 or something similar. Please check.
If this is not the case, attach your .bat file to this bug report.
-Thilo