diff options
author | Ronald S. Bultje <rsbultje@gmail.com> | 2022-02-07 21:03:49 +0300 |
---|---|---|
committer | Ronald S. Bultje <rsbultje@gmail.com> | 2022-02-07 21:39:58 +0300 |
commit | a363374a83b5961b2526e5e241272f260246e780 (patch) | |
tree | 1cff148dd6c8a5547defdafd96deeb425a324c44 /tools | |
parent | 1f09a9119fb794ab41b1e527d848c2a210ca43d4 (diff) |
tools/dav1d: continue on recoverable bitstream decoding errors
Fixes inconsistent output frame count depending on --threads=X value
for the sample in #244.
Diffstat (limited to 'tools')
-rw-r--r-- | tools/dav1d.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/tools/dav1d.c b/tools/dav1d.c index 5087180..6f57faa 100644 --- a/tools/dav1d.c +++ b/tools/dav1d.c @@ -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; |