[1.0] gst/src: Avoid unnecessary renegotiations during streaming
Backport of !1956 (merged) and !1970 (merged)
The reason that it doesn't apply cleanly is that the more involved !1881 (merged) is not (yet?) backported.
Apart of avoiding stream restart in many situations - like taking a photo in apps like Snapshot or Cheese - it seems to also work around some race conditions (which should of course still get fixed, see #3987 (comment 2396936))