Mivel egyesek szkeptikusak voltak az mjpg-streamer képességeivel szemben, ezért megkértem Bench Márk barátomat, hogy cáfolja meg ezeket a vádakat.

A tesztelést a Debreni Egyetem Szilárdtestfizika Tanszékének DSP laborjában végeztem el.
A kliensek mezei PC-k, Windows XP SP3-at futtatnak. Nincsenek felspywarezve, köszönhetően a SteadyStatenek. Változatos processzorok (Intel Dual Core <) és némisok RAM (512MB=<) található benük. A gépek egy Linksys 10/100-as switchen keresztül vannak összekapcsolva, tehát a szerver és bármely kliens közti hálózati távolság 1 hop. Ebbe a hálózatba kapcsoltam be a tesztelés alá helyezett mjpg-streamer futtató vasat, illetve a benchmarkszervret.

A benchmark program


A képletöltés sebességét egy általam a Qt keretrendszert használva C++-ban írt programmal teszteltem.

Lefordításához Qt 4.7.0, és a Qwt szükséges. A pro fájlban a qwt és a qimagegrabber elérési útja hardcodolva van a marsos build rendszeremben található elérési utakhoz, ezért valószínűsítem, hogy másnál így ebben a formában nem fog lefordulni. A pro fileban kell átírni a -L ../libs/bin-t a qwt-t és a qimagegrabbert tartalmazó elérési utakra.
Forráskód itt.

A tesztelési eredmények könnyű összesítéséhez írtam egy szerver programot, amely képes a kliensek által mért FPS adatokat begyűjteni TCP-n keresztül, majd kimenteni azokat.

Forrás itt.


A program a QImageGrabber osztályt használja a képek letöltésére ami szintén az én művem elérhető itt.
Qt 4.7.0 alattiu verziójival az MJPG mód nem megy egy bug miatt.

Teszthardverek


Teszthardver A:
Linksys NSLU2
Processzor: Intel PXA 266 Mhz-re felhúzva.
RAM: 32 MB 

Operációs rendszer: OpenWRT rev. 25044
Mjpg-streamer rev 136. stable

Eredmények:
Egy kliens esetén hozza ugyanazt mint amit a notimon hozott:
Stabil 30 FPS kicsi lagg:



A baj akkor kezdődik amikor több klienst csatlakoztatok:



A képen látható  mérés során a klienseket a benchmarkserverren sorban kapcsolgattam be. A mérés végén 7 kliens volt csatlakoztatva fps leesett 16 körülire.

A mérési adatok CSV fájlban itt.

Teszthardver B:
DELL D630
Processzor: Intel Core2 DUO T7100
RAM: 4 GB
Mjpg-streamer rev 136. stable

1 klienssel az eredmény hasonló az NSLU2 eredményeihez.
A különbség a több klienssel történő megterheléskor viszont ordtí:

Eredmények:



CSV eredmények itt

Konklúziók

Az embedded vas jó, azonban több kliens esetén kezd csökkenni a teljestmény.
A marsi műholdPCnek tehát maradnia kellene.

A kamerának át lehet álltani az expozciós idejét fixre, és le lehet venni úgy hogy a sebesség nőjön de a képminőség ne romoljon.

A Logitech Quickcam Fusion nagyon jó cucc, csak a kép minősége elég gyatra.