baseparse: sub-optimal pull-mode behaviour
This can be seen with filesrc location=my.mp3 ! mpegaudioparse ! fakesink
. This makes mpegaudioparse
/GstBaseParse
work in pull-mode.
The problem is that:
- baseparse pulls 64 kB
- mpegaudioparse properly handles/pushes a small mp3 fragment
- baseparse then ... queries 64 kB from that new offset
Ideally baseparse should try to call the subclass as often as possible for those 64kB it grabbed instead of discarding pretty much all of it and requesting 64 kB again from a new offset.