Official website for CamerArch, the webcam image archiver for Linux.

Charles Gregory
Computer/Internet Programmer,
Hamilton Falconwatch Webmaster


and Legal Stuff

Webcam Archiving Software

News: If you are reading this, CamerArch is still under initial development, and not yet ready for download.

CamerArch is a set of Perl scripts, including a Linux Server "Daemon" for saving uploaded/captured image files from a webcam or other video source into a date/time sorted archive, plus CGI scripts to search the archive contents, and display the results on web pages. Indexes are dynamically generated, so that no manual intervention is needed to maintain the 'album' of archived photos. Functionality is included to easily copy individual photos to a 'favorites' album/directory.

The original site on which these scripts were developed, and the best working example of them in action, is the webcam page for the Hamilton Community Peregrine Project FalconCam. To see the CamerArch features in action, click on the "Gallery" Button (top-right), and choose the options to view "Favorites" or "Full Archive" for any recent year.... The nominations function is not visible to regular visitors. A working example of this functionality will be avaialable soon.

Basic features of CamerArch (V 0.5), currently in development:

  • The CamerArch Dameon, monitors the currency of the uploaded/captured image file, and when it detects a new upload/save, it:
    • Makes a copy of the image, optionally adding text such as copyright notices and a date/timestamp,
    • Creates a thumbnail image of the photo,
    • Saves the copy of the photo and thumbnail, with a date-based name, suitable for sorting and searching, into an archive directory tree.
  • The CamerArch CGI Scripts are designed to be incorporated into a framed website design, with "indexes" in a column, and full-size images displayed in a separate frame beside. The CGI programs:
    • Generate on-the-fly index lists, with thumbnail links, from the directory contents, using date/time search criteria. The dynamic generation allows even the most recent photos to be instantly viewable without any manual web page regeneration being needed.
    • Display the full size image in a separate frame, so that the index remains in view, and does not need to be reloaded.
    • Enable web site visitors (possibly limited by HTTP authorization) to "nominate" photos for saving in a separate directory of favorites.
    • Enable the administrator, via web, to pick and choose among the nominations, saving their choices as a 'favorite' and saving the rest in a separate directory archive of nominations.
    • FUTURE VERSION: Tools to manage the directory tree, deleting files according to various criteria, such as date or time of day.

What it does not do: These scripts do not access any webcam or video hardware directly. CamerArch's job begins when it detects an uploaded/updated file. That file can come from any source. You will even be able to archive third-party camera images, if you use 'wget' to retrieve them onto the same server as the Daemon. One of my first pet projects will be to see if I can make an archive of the Kilauea Volcano Lava Lake, for personal review. The scripts do not save any "album" web pages. All index pages are generated dynamically in CGI modules. :)

Requirements: The server Daemon requires the "ImageMagick" suite of tools to perform manipulation of images (resize/thumbnail/timestamp). ImageMagick is availabale HERE.


In the year 2000, I began working on the webcam and related web pages for the Hamilton Community Peregrine Project FalconCam. In the beginning it was a simple upload with archival photos being stored on the local (webcam) computer. During occasional visits to the webcam, I would review and upload any "good" photos from the computer to the website, for a "gallery".

V 0.2: In 2005 I decided that the manual process was too time-intensive, and too often delayed for several days when I could not find time to get to the camera site. So I created the Archiving Daemon program, and web pages to allow the full archive to be accessible online, and to make selection of 'favorites' for a gallery an easy web-based process. I added a 'nominations' feature, so that a small group of trusted volunteers could 'suggest' photos for favorites, and then I could pick and choose the best for the actual gallery.

V 0.3: In 2011 the Project added a second video camera, which necessitated modifications to the scripts to handle multiple image sources, as well as different mechanisms for detecting the completion of uploads. At this time, the effort was begun to make the daemon more readily configurable. The first step towards a generally usable CamerArch system....

V 0.4: November, 2012. I am now beginning the process of breaking the 'custom' software scripts out of their mold, and making them even more flexible and configurable..... Suggestions for features are welcome!