Oddly enough, that's what a lot of my handheld system videos looked like *before* the changes I made. I did test on Windows 10, but I didn't have any of the funky-resolution handheld system videos on that machine, so I'll have to see if I can reproduce it there with the videos I've got. It's definitely an error relating to the embedded padding that occurs when the video resolution isn't a power-of-2, and this also throws off the offsets of the various layers in the buffer, so the chroma samples aren't applied properly.
I think what happened is that whichever codec got loaded in your pipeline didn't set the VideoMeta on the buffer that would describe how the layers are packed in the buffer, so the code assumed that they were packed contiguously. But I previously wrote some code that can figure out the packing just based on the resolution and the buffer size, so I should be able to slip that in for the case where the size doesn't match what we expect for a contiguously-packed buffer.