tools/dav1d: continue on recoverable bitstream decoding errors

Fixes inconsistent output frame count depending on --threads=X value
for the sample in #244.
This commit is contained in:
Ronald S. Bultje
2022-02-07 13:39:58 -05:00
parent 1f09a9119f
commit a363374a83
+3 -2
View File
@@ -272,7 +272,7 @@ int main(const int argc, char *const *const argv) {
if (res != DAV1D_ERR(EAGAIN)) {
fprintf(stderr, "Error decoding frame: %s\n",
strerror(DAV1D_ERR(res)));
break;
if (res != DAV1D_ERR(EINVAL)) break;
}
}
@@ -280,7 +280,7 @@ int main(const int argc, char *const *const argv) {
if (res != DAV1D_ERR(EAGAIN)) {
fprintf(stderr, "Error decoding frame: %s\n",
strerror(DAV1D_ERR(res)));
break;
if (res == DAV1D_ERR(EINVAL)) break;
}
res = 0;
} else {
@@ -316,6 +316,7 @@ int main(const int argc, char *const *const argv) {
if (res != DAV1D_ERR(EAGAIN)) {
fprintf(stderr, "Error decoding frame: %s\n",
strerror(DAV1D_ERR(res)));
if (res != DAV1D_ERR(EINVAL)) break;
} else {
res = 0;
break;