Allow sample rate, number of channels and bps to change and in that case update the caps accordingly. Also move (non-fatal) validity checks and storing of the header values outside the actual parsing once we actually know that a valid frame is available. And also don't warn on the last frame with fixed block size blocking strategy that the block size has changed: the last frame is allowed to be smaller. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3281 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8075>