tiny_psnr: support unseekable raw files.

If either one of the files if not seekable,
do not try to read headers.

It allows to use it with pipes on whole rawvideo data.
pull/5/head
Nicolas George 13 years ago
parent 93927eb334
commit e6f7e22d18
  1. 8
      tests/tiny_psnr.c

@ -114,10 +114,13 @@ static int run_psnr(FILE *f[2], int len, int shift, int skip_bytes)
int size0 = 0;
int size1 = 0;
int maxdist = 0;
int noseek;
rewind(f[0]);
rewind(f[1]);
noseek = fseek(f[0], 0, SEEK_SET) ||
fseek(f[1], 0, SEEK_SET);
if (!noseek) {
/* TODO reindent */
for (i = 0; i < 2; i++) {
uint8_t *p = buf[i];
if (fread(p, 1, 12, f[i]) != 12)
@ -141,6 +144,7 @@ static int run_psnr(FILE *f[2], int len, int shift, int skip_bytes)
fseek(f[0], skip_bytes, SEEK_CUR);
fseek(f[1], skip_bytes, SEEK_CUR);
}
for (;;) {
int s0 = fread(buf[0], 1, SIZE, f[0]);

Loading…
Cancel
Save