Index: stream/tvi_v4l2.c
===================================================================
--- stream/tvi_v4l2.c	(revision 31931)
+++ stream/tvi_v4l2.c	(working copy)
@@ -1807,8 +1807,15 @@
 {
     /*
       this routine will be called before grab_video_frame
-      thus let's return topmost frame's size
+      thus let's return topmost frame's size.
+      wait for a frame if none are available, since compressed 
+      formats must have an accurate framesize for -ovc copy
     */
+    int loop_cnt = 0;
+    while (priv->video_cnt == 0) {
+        usleep(10000);
+        if (loop_cnt++ > MAX_LOOP) break;
+    }
     if (priv->video_cnt)
         return priv->video_ringbuffer[priv->video_head].framesize;
     /*
