Buffer monitor

From ElphelWiki
Jump to: navigation, search


The program monitors and displays 3 camera parameters QUALITY,FRAME_SIZE and (FREECIRCBUF/CIRCBUFSIZE)*100% over time measured in frames.

How it works

  • The "buffer_monitor" - a C program that runs as a daemon in the camera. It saves the monitored values in a log file ("/usr/html/var/buffer_monitor.log")
  • There's also a PHP program "/usr/html/buffer_monitor.php" on the camera that can launch/stop the "buffer_monitor" application.
  • In the user's PC web server ("/var/www") there are "elphel_buffer_monitor.html" and "elphel_buffer_monitor.php" that provide control and display the log file as a chart (using the flot).


  • The camera part is installed with the firmware (starting with - should be downloaded/checked out from the CVS and built from 'scratch')
  • Get flot. Extract the content to the web server folder (the result will look like "/var/www/flot")
  • The PC part can be downloaded/checked out from the CVS. Copy all the files to the PC's web server folder ("/var/www").


  • Set the correct IP address
  • Set the preferred parameters and press "start"
Fig.1 Elphel Buffer Monitor page


  • Quality Adjust - when checked enables the buffer_monitor to change quality by analyzing other parameters. If unchecked - works in the monitor mode only.
  • Log records - maximum number of records in the log file. It is rewritten after.
  • Image Size max - if the image size is more than this value the Quality will be reduced (if Quality Adjust is checked). If the (FREECIRCBUF/CIRCBUFSIZE > 0.5) the quality is reduced by 1%, else - by 5%.
  • Image Size min - if the image size is less than this value the Quality will be increased until either image size becomes more than the minimum or the Quality goal is reached (Quality Adjust should be checked).
  • Quality goal - Quality upper limit