diff options
author | Jonathan Sieber <mail@strfry.org> | 2018-01-07 16:51:40 +0100 |
---|---|---|
committer | Alfred E. Heggestad <alfred.heggestad@gmail.com> | 2018-01-07 16:51:40 +0100 |
commit | 369b0c0f0e96c529823a11cfc9ab55ce7ade4451 (patch) | |
tree | fce59eca0d7d0b5ca32c6838d788aeb5c1e8705c | |
parent | abc990ae7290aad4c4c4e26dd1ac291ad9ac722a (diff) |
avcodec: Return EPROTO when encountering missing fragments in H264 stream, to trigger intra-frame request (#339)
-rw-r--r-- | modules/avcodec/decode.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/modules/avcodec/decode.c b/modules/avcodec/decode.c index 77e6e77..badb192 100644 --- a/modules/avcodec/decode.c +++ b/modules/avcodec/decode.c @@ -333,6 +333,7 @@ int decode_h264(struct viddec_state *st, struct vidframe *frame, " ignoring NAL\n"); fragment_rewind(st); ++st->stats.n_lost; + return EPROTO; } st->frag_start = st->mb->pos; @@ -351,7 +352,7 @@ int decode_h264(struct viddec_state *st, struct vidframe *frame, if (!st->frag) { debug("avcodec: ignoring fragment\n"); ++st->stats.n_lost; - return 0; + return EPROTO; } if (seq_diff(st->frag_seq, seq) != 1) { @@ -359,7 +360,7 @@ int decode_h264(struct viddec_state *st, struct vidframe *frame, fragment_rewind(st); st->frag = false; ++st->stats.n_lost; - return 0; + return EPROTO; } } |