avvidec: Ensure skipping strategy gets properly reset
authorEdward Hervey <edward@centricular.com>
Thu, 4 Aug 2016 08:45:14 +0000 (10:45 +0200)
committerEdward Hervey <bilboed@bilboed.com>
Thu, 4 Aug 2016 08:45:14 +0000 (10:45 +0200)
commit8b374b3f82b5c558078bf0bb8adf9c76aa988e5e
tree17b95813f750c86f088c9bc029e41433e588c858
parent2d79bc3a58201abca1470cce3f172dc9a9daaf4f
avvidec: Ensure skipping strategy gets properly reset

When switching playback modes, like from TRICKMODE or TRICKMODE_KEY_UNITS
back to regular playback, we need to make sure we set the skip mode
back to the default setting.

While this field would be properly reset when we *have* feedback from
downstream (i.e. diff != G_MAXINT64), it would not be reset during
the initial phase (i.e. when the decoder hasn't pushed a buffer yet,
and therefore the sink hasn't sent back QoS information).

This avoids dropping plenty of frames when going back to regular playback
ext/libav/gstavviddec.c