svn commit: r188029 - head/usr.sbin/fwcontrol

Sean Bruno sbruno at FreeBSD.org
Mon Feb 2 13:05:14 PST 2009


Author: sbruno
Date: Mon Feb  2 21:05:12 2009
New Revision: 188029
URL: http://svn.freebsd.org/changeset/base/188029

Log:
  Begin basic improvements to fwcontrol in the area of handling
  video streams from cameras.
  
  This patch changes the displayed timer to a time stamp and corrects
  one or two mishandled errors.
  
  Submitted by:	imp

Modified:
  head/usr.sbin/fwcontrol/fwdv.c
  head/usr.sbin/fwcontrol/fwmpegts.c

Modified: head/usr.sbin/fwcontrol/fwdv.c
==============================================================================
--- head/usr.sbin/fwcontrol/fwdv.c	Mon Feb  2 21:02:23 2009	(r188028)
+++ head/usr.sbin/fwcontrol/fwdv.c	Mon Feb  2 21:05:12 2009	(r188029)
@@ -202,15 +202,20 @@ again:
 					(dv->payload[0] & DV_DSF_12) == 0)
 					dv->payload[0] |= DV_DSF_12;
 				nb = nblocks[system];
-				fprintf(stderr, "%d", k%10);
+ 				fprintf(stderr, "%d:%02d:%02d %d\r",
+					k / (3600 * frame_rate[system]),
+					(k / (60 * frame_rate[system])) % 60,
+					(k / frame_rate[system]) % 60,
+					k % frame_rate[system]);
+
 #if FIX_FRAME
 				if (m > 0 && m != nb) {
 					/* padding bad frame */
 					npad = ((nb - m) % nb);
 					if (npad < 0)
 						npad += nb;
-					fprintf(stderr, "(%d blocks padded)",
-								npad);
+					fprintf(stderr, "\n%d blocks padded\n",
+					    npad);
 					npad *= DSIZE;
 					wbuf[vec].iov_base = pad;
 					wbuf[vec++].iov_len = npad;
@@ -221,10 +226,6 @@ again:
 				}
 #endif
 				k++;
-				if (k % frame_rate[system] == 0) {
-					/* every second */
-					fprintf(stderr, "\n");
-				}
 				fflush(stderr);
 				m = 0;
 			}
@@ -245,9 +246,8 @@ next:
 		if (vec > 0)
 			writev(fd, wbuf, vec);
 	}
-	if(fd != STDOUT_FILENO) {
+	if (fd != STDOUT_FILENO)
 		close(fd);
-	}
 	fprintf(stderr, "\n");
 }
 

Modified: head/usr.sbin/fwcontrol/fwmpegts.c
==============================================================================
--- head/usr.sbin/fwcontrol/fwmpegts.c	Mon Feb  2 21:02:23 2009	(r188028)
+++ head/usr.sbin/fwcontrol/fwmpegts.c	Mon Feb  2 21:05:12 2009	(r188029)
@@ -195,10 +195,9 @@ mpegtsrecv(int d, const char *filename, 
 		if (len < 0) {
 			if (errno == EAGAIN) {
 				fprintf(stderr, "(EAGAIN) - push 'Play'?\n");
-				if (len <= 0)
-					continue;
-			} else
-				err(1, "read failed");
+				continue;
+			}
+			err(1, "read failed");
 		}
 		ptr = (uint32_t *) buf;
 


More information about the svn-src-head mailing list