Hmm. Previously, I build two nice webcam-servers out of Fonera 2.0g boxes (German posts: 1 & 2). cpuinfo of the Foneras is as follows:
root@cam-serv3:~# cat /proc/cpuinfo system type : Atheros AR2315 processor : 0 cpu model : MIPS 4KEc V6.4 BogoMIPS : 183.50 wait instruction : yes microsecond timers : yes tlb_entries : 16 extra interrupt vector : yes hardware watchpoint : no ASEs implemented : shadow register sets : 1 core : 0 VCED exceptions : not available VCEI exceptions : not available
There I run two jobs, for /dev/video0 and /dev/video1, of mjpg_streamer -i input_uvc.so -f 10 -r 960x720 ..., which results in this top output:
Mem: 19836K used, 10080K free, 0K shrd, 1140K buff, 6096K cached CPU: 19% usr 11% sys 0% nice 1% idle 0% io 31% irq 34% softirq Load average: 2.57 2.51 2.45 PID PPID USER STAT VSZ %MEM %CPU COMMAND 1518 1064 root R 8732 29% 33% mjpg_streamer -i input_uvc.so -d /dev 1517 1060 root R 8572 29% 26% mjpg_streamer -i input_uvc.so -f 10 - 1065 1064 root R 8732 29% 20% mjpg_streamer -i input_uvc.so -d /dev 1061 1060 root S 8572 29% 7% mjpg_streamer -i input_uvc.so -f 10 - 1577 1520 root R 1960 7% 6% top -d 2 1519 933 root S 1996 7% 1% /usr/sbin/dropbear -p 22 1064 1058 root S 8732 29% 0% mjpg_streamer -i input_uvc.so -d /dev 1058 1 root S 8732 29% 0% mjpg_streamer -i input_uvc.so -d /dev 1067 1064 root S 8732 29% 0% mjpg_streamer -i input_uvc.so -d /dev 1060 1056 root S 8572 29% 0% mjpg_streamer -i input_uvc.so -f 10 - 1056 1 root S 8572 29% 0% mjpg_streamer -i input_uvc.so -f 10 - 1066 1060 root S 8572 29% 0% mjpg_streamer -i input_uvc.so -f 10 - 1055 1 root S 1976 7% 0% udhcpc -t 0 -i ath0 -b -p /var/run/at 520 1 root S 1972 7% 0% udhcpc -t 0 -i eth0.1 -b -p /var/run/ [...]
Recently I joined the MR3020 hype, them being quite similar to the Fonera 2.0g systems, i. e. Atheros-based, supported by OpenWR, rather cheap (<30 EUR) and with USB; only drawback is the ridiculously small on-board Flash:
root@cam-serv5:~# cat /proc/cpuinfo system type : Atheros AR9330 rev 1 machine : TP-LINK TL-MR3020 processor : 0 cpu model : MIPS 24Kc V7.4 BogoMIPS : 265.42 wait instruction : yes microsecond timers : yes tlb_entries : 16 extra interrupt vector : yes hardware watchpoint : yes, count: 4, address/irw mask: [0x0000, 0x0280, 0x05d0, 0x0630] ASEs implemented : mips16 shadow register sets : 1 kscratch registers : 0 core : 0 VCED exceptions : not available VCEI exceptions : not available
But to my big disappointment, running even only one process of mjpg_streamer, /usr/bin/mjpg_streamer --input input_uvc.so --device /dev/video0 --fps 1 --resolution 1280x720 ..., seems to max the system out, and anything above 1 fps, I tested 2, 5, 10, gives quite chopy images, distorted in odd ways. top says:
Mem: 25868K used, 3308K free, 0K shrd, 1412K buff, 5392K cached CPU: 0% usr 0% sys 0% nic 97% idle 0% io 0% irq 0% sirq Load average: 0.06 0.11 0.11 1/41 1542 PID PPID USER STAT VSZ %VSZ %CPU COMMAND 1514 1 root S 24424 84% 0% /usr/bin/mjpg_streamer --input input_ 1541 1431 root R 1496 5% 0% top -d 2 1430 1362 root S 1216 4% 0% /usr/sbin/dropbear -P /var/run/dropbe 1431 1430 root S 1504 5% 0% -ash 592 1 root S 1504 5% 0% /sbin/syslogd -C16 1140 1 root S 1504 5% 0% /sbin/udhcpc -t 0 -i wlan0 -b -p /var ...
So, it does not seem to be a CPU limitation; the CPU should be even more powerful than the Fonera’s, and the minor increase in resolution, 1280×720 instead of 960×720, should be compensated by far by the two USB cams served by the Fonera. Any opinions or tips?