mfvideosrc: Fix for negative MF stride

Negative stride value can be used in MediaFoundation to inform
whether memory layout is top-down or bottom-up manner. Note that
negative stride is allowed only for RGB, system memory.

See also
https://docs.microsoft.com/en-us/windows/win32/medfound/image-stride

Fixes: gstreamer/gst-plugins-bad#1646
Part-of: <gstreamer/gst-plugins-bad!2477>
29 jobs for !2477 with backport-mr-2473-into-1.18-mfvideosrc-negative-stride in 36 minutes and 6 seconds (queued for 2 seconds)
detached
Status Name Job ID Coverage
  Build Docker
passed alpine amd64 manifest builder docker #12978969

00:00:38

passed android docker #12978968

00:00:16

passed cerbero fedora amd64 docker #12978967

00:00:35

passed fedora amd64 docker #12978966

00:00:14

passed gst-indent amd64 docker #12978970

00:00:17

 
  Preparation
passed gst indent #12978972

00:00:16

passed manifest #12978971

00:00:41

 
  Build
passed build cerbero cross-android universal #12978981
gstreamer

00:09:48

passed build cerbero cross-ios universal #12978985
gst-ios-14.3

00:29:35

passed build cerbero cross win32 #12978982
gstreamer

00:07:38

passed build cerbero cross win64 #12978983
gstreamer

00:06:45

passed build cerbero fedora x86_64 #12978980
gstreamer

00:05:46

passed build cerbero macos x86_64 #12978984
gst-macos-11.1

00:19:35

passed build clang fedora x86_64 #12978976

00:06:13

manual build msys2 #12978979
docker windows 1809 allowed to fail manual
passed build nodebug fedora x86_64 #12978973

00:04:03

passed build static fedora x86_64 #12978974

00:03:35

passed build static nodebug fedora x86_64 #12978975

00:03:34

passed build vs2017 amd64 #12978977
docker windows 1809

00:09:06

passed build vs2017 x86 #12978978
docker windows 1809

00:09:22

 
  Test
passed check fedora #12978986
gstreamer

00:06:17

passed integration testsuites fedora 1/4 #12978987
gstreamer

00:07:33

passed integration testsuites fedora 2/4 #12978988
gstreamer

00:07:20

passed integration testsuites fedora 3/4 #12978989
gstreamer

00:06:30

passed integration testsuites fedora 4/4 #12978990
gstreamer

00:04:51

passed valgrind bad #12978991
gstreamer

00:05:39

 
  Integrate
passed cross-android universal examples #12978992

00:06:57

passed cross-ios universal examples #12978994
gst-ios-14.3

00:04:33

passed documentation #12978993

00:16:53