[MPlayer-users] VDPAU decoding in MPlayer broken by recent FFmpeg changes
Reimar Döffinger
Reimar.Doeffinger at gmx.de
Wed Aug 21 20:15:29 CEST 2013
On Wed, Aug 14, 2013 at 08:26:04PM +0200, Ilja Sekler wrote:
> Am 14.08.2013 18:57, schrieb Reimar Döffinger:
>
> >Ok, something completely different then:
> >--- a/libavcodec/h263dec.c
> >+++ b/libavcodec/h263dec.c
> >@@ -168,7 +168,10 @@ static int decode_slice(MpegEncContext *s){
> > const uint8_t *start= s->gb.buffer + get_bits_count(&s->gb)/8;
> > const uint8_t *end = ff_h263_find_resync_marker(s, start + 1, s->gb.buffer_end);
> > skip_bits_long(&s->gb, 8*(end - start));
> >- return s->avctx->hwaccel->decode_slice(s->avctx, start, end - start);
> >+ ret = s->avctx->hwaccel->decode_slice(s->avctx, start, end - start);
> >+ // ensure we exit decode loop
> >+ if (get_bits_left(&s->gb) <= 0) s->mb_y = s->mb_height;
> >+ return ret;
> > }
> >
> > if(s->partitioned_frame){
>
> This works for me as far as the "marker does not match f_code"
> messages are concerned, thanks.
>
> But I see a very strange effect when playing DivX videos through
> ffodivxvdpau now: it looks as if every second frame were dropped and
> the first one instead duplicated (or even worse), all movements look
> choppy. This is not related to this patch. It doesn't happen with
> the software decoder and doesn't happen with the VDPAU decoder and
> r36171 from Fedora repositories.
Hm, my suspicion is that this means there is an issue with
decoding B-frames (does it say something about "invalid packed
B-frames" when this issue shows up or does this happen for all files?).
However without being able to run it myself I don't have
good ideas on how to debug it really.
I guess there is no useful output? Maybe you could post it
anyway?
But not much of an idea what to do about this really.
More information about the MPlayer-users
mailing list