* Extend the syntax of a filename for the img reader to allow looping. Thus

%125*d means substitute the frame number MOD 125 into the filename. This
  is a cheap method of having an infinite stream.

Originally committed as revision 1332 to svn://svn.ffmpeg.org/ffmpeg/trunk
pull/126/head
Philip Gladstone 23 years ago
parent 38758ab0cd
commit c9646fda01
  1. 19
      libavformat/utils.c

@ -1089,11 +1089,20 @@ int get_frame_filename(char *buf, int buf_size,
if (c == '\0') if (c == '\0')
break; break;
if (c == '%') { if (c == '%') {
nd = 0; do {
while (*p >= '0' && *p <= '9') { nd = 0;
nd = nd * 10 + *p++ - '0'; while (isdigit(*p)) {
} nd = nd * 10 + *p++ - '0';
c = *p++; }
c = *p++;
if (c == '*' && nd > 0) {
// The nd field is actually the modulus
number = number % nd;
c = *p++;
nd = 0;
}
} while (isdigit(c));
switch(c) { switch(c) {
case '%': case '%':
goto addchar; goto addchar;

Loading…
Cancel
Save