You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-15 14:13:16 +02:00
tests/tiny_psnr: do not ignore errors from run_psnr
failure to calculate psnr should not result in tiny_psnr returning success Reviewed-by: Timothy Gu <timothygu99@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
@@ -150,16 +150,16 @@ static int run_psnr(FILE *f[2], int len, int shift, int skip_bytes)
|
|||||||
for (i = 0; i < 2; i++) {
|
for (i = 0; i < 2; i++) {
|
||||||
uint8_t *p = buf[i];
|
uint8_t *p = buf[i];
|
||||||
if (fread(p, 1, 12, f[i]) != 12)
|
if (fread(p, 1, 12, f[i]) != 12)
|
||||||
return 1;
|
return -1;
|
||||||
if (!memcmp(p, "RIFF", 4) &&
|
if (!memcmp(p, "RIFF", 4) &&
|
||||||
!memcmp(p + 8, "WAVE", 4)) {
|
!memcmp(p + 8, "WAVE", 4)) {
|
||||||
if (fread(p, 1, 8, f[i]) != 8)
|
if (fread(p, 1, 8, f[i]) != 8)
|
||||||
return 1;
|
return -1;
|
||||||
while (memcmp(p, "data", 4)) {
|
while (memcmp(p, "data", 4)) {
|
||||||
int s = p[4] | p[5] << 8 | p[6] << 16 | p[7] << 24;
|
int s = p[4] | p[5] << 8 | p[6] << 16 | p[7] << 24;
|
||||||
fseek(f[i], s, SEEK_CUR);
|
fseek(f[i], s, SEEK_CUR);
|
||||||
if (fread(p, 1, 8, f[i]) != 8)
|
if (fread(p, 1, 8, f[i]) != 8)
|
||||||
return 1;
|
return -1;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
fseek(f[i], -12, SEEK_CUR);
|
fseek(f[i], -12, SEEK_CUR);
|
||||||
@@ -315,6 +315,9 @@ int main(int argc, char *argv[])
|
|||||||
max_psnr_shift = shift;
|
max_psnr_shift = shift;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (max_psnr < 0)
|
||||||
|
return 2;
|
||||||
|
|
||||||
if (shift_last > shift_first)
|
if (shift_last > shift_first)
|
||||||
printf("Best PSNR is %3d.%02d for shift %i\n", (int)(max_psnr / F), (int)(max_psnr % F), max_psnr_shift);
|
printf("Best PSNR is %3d.%02d for shift %i\n", (int)(max_psnr / F), (int)(max_psnr % F), max_psnr_shift);
|
||||||
return 0;
|
return 0;
|
||||||
|
Reference in New Issue
Block a user