Support broken v4l2 webcams

This fixes "The v4l2 frame is %d bytes, but %d bytes are expected" when using a cheap webcam with v4l2.

It will try 3 times before failing instead of failing right away.

Example (src = `Cubeternet GL-UPC822 UVC WebCam`, dst = `v4l2loopback max_width=320 max_height=240`):

    ffmpeg -re -s 640x480 -f v4l2 -i /dev/video0 -f v4l2 -s 320x240 -r 15 -pix_fmt yuv420p /dev/video1
    ...........
    [video4linux2,v4l2 @ 0x1ad8060] The v4l2 frame is 1628 bytes, but 614400 bytes are expected

then exits.