Timelapse: Frequently Asked Questions

Using Timelapse in a large organizations and on different computers
Is Timelapse suitable for large organizational uses? Especially where there are many users, many projects, many images, lots of analysis methods.

The answer is 'it depends'. The good news is that Timelase is being used in very large organizations with many analysts, millions of iamges, etc. across a variety of projects. The bad news is that it does require some discipline in how Timelapse is used.

But, some background is necessary. An 'ideal' system would be one where a person could just log onto it and do their work, with the system taking care of multiple users, conflict resolution (e.g., several people working on the same images at the same time), storage, software updates, and so on. This would normally be built as a centralized system accessed via the internet. Indeed, some folks are working on systems such as these. But there are issues.

  • They are usually complex to build and maintain.
  • They run into the usual internet problems, such as:
    • reviewing and tagging high resoution images may be slow, as each image must be downloaded
    • working offline is not an option (although some future systems may allow you to 'check out' files)
    • working in remote locations with poor or sporadic internet connections is problematic
  • They usually impose a particular workflow and are often inflexible, for example:
    • tagging is constrained to a few fixed fields
    • the workflow may not match what you are doing
    • some operations may not be possible
    • some extra steps must be done that you don't really need for your task
  • If it is a 3rd party system:
    • they may charge you
    • there could be privacy or security concerns behind uploading your images/data to their site
    • there are no guarantees the 3rd party will be around in a few years (or that the system will be maintained)
    • changes may occur that could hinder your future work
  • No 'one size fits all' system is currently available
    • some organizatons are working on it, but I am not aware of a clear 'winner'.

Timelapse was developed as a stand-along applicaton to get around some of the above issues. In particular, it

  • is optimized for rapid tagging (virtually everyone who uses Timelapse says so)
  • provides tagging flexibility – you get to decide the tagging fields you want
  • lets you develop your own workflow (although several are recommended to get you going)
  • is based on a simple folder/files structure
    • this can be maintained on local computers, the organization’s file server, etc
    • files/folders and timelapse files can be coppied/moved etc. and it all still works
    • users can download the program and run it on their local machine.
    • getting up and going is fast.
    • no internet is necessary to run it.
    • it can be run in a virtual machine, or if a network server is used, it can just be pointed to the file location
    • tagging data can be exported as CSV files, and then analyzed, imported into another system, etc.
    • has been used by very large organizations with many analyzers and millions of images.

Of course, its all about tradeoffs. SOme Timelapse issues are listed below, although simple workarounds exist that are mentioned shortly.

  • It only runs in Windows. Workaroudns include using a virtual machine (e.g., running on the Mac)
  • While multiple users can access a Timelapse database file (e.g., if its stored on a network server), conflicts can occur when people try to alter the same data.
  • It can slow down after a million or slow records (but only on certain functions).
  • Its up to you on how you want to organize your folders and files (this is both an advantage and disadvantage). THis requires some discipline and thought.

The common way around the above tradeoffs is to split up your images into a folder / subfolder structure, where you create Timelapse database in that folder. For example, if you have multiple projects, each project could have its own Timelapse database. Alternately, if you have multiple sites, you may decide to create a Timelapse database per site. An analyst can then copy that folder to their own machine (or access it via a file server) and analyze them. The Timelapse data files can then be copied back when complete (or emailed to the project manager). Assigning different folders to different people eliminates or reduces conflict possibilities) but its not optimal. There are then several strategies for what to do with the individual Timelapse data files. - export them as CSV files, and use another system to either store that data or analyze it - create a merged database (available within Timelapse) that merges the separate databases into a single database - import your data files into a central server system that does the analysis (we are currently working with various folks to allow this)

These strategues do work, but do require discipline and thought in how folders and files are organized and given out, and what you need to do with them after tagging is done.

Can Timelapse run on an Apple computer or Linux? Or perhaps even accessed through the cloud?

Timelapse is PC-oriented, as it was developed to run within most versions of Microsoft Windows. Thus it won't run directly on the native operating system of an Apple or Linux computer.

But there are workarounds!

  1. Run a Windows emulator on your Apple or Linux computer (e.g., commercially available software such as Parallels or VMWare). Timelapse can then be downloaded and run within the emulator.
  2. Have your organization create a Windows-based Virtual Machine that is accessible through the cloud. You can then connect to that virtual machine via your Apple or Linux computer.

Privacy and Security
What about privacy and security? Being paranoid in this age of viruses and ransomware.

Timelapse is just a standard bit of software, with no special security measures. As far as I know there have been no security or privacy problems reported from its many users. Still, here are some things that may lessen your concerns if you are worried about security or privacy (although the usual no guarantees caveat applies).

  1. Timelapse executables downloaded from this web site are
    • located on my (reasonably secure https) university web site
    • based on source code that only I wrote and have access to
    • personally compiled on my own reasonably secure machine
    • zipped and placed on the web site by me
    • not usually mirrored
  2. When run, Timelapse:
    • does not do anything requiring elevated security, i.e., it runs under the standard user level.
    • creates, reads and writes files only in a folder (and its sub-folders) as directed by the user, i.e., to save tagged image into an SQL database file, to create backup files, etc. No files are written outside that folder or its subfolders, and no images or data is shared.
    • stores benign user settings in the registry so it can restore settings when the user opens timelapse again (e.g., window location)
    • only attempts one external network connection, where it reads a file on my website to see if a software update is available. If so, the user is informed via a dialog box. However, downloading any updates is a completely manual user-driven process, which is done separately by the user visiting the web site's download page.
    • does not request, store or look up any personal information about the user, domain, organization etc.
  3. But Timelapse ...
    • is unsigned, simply because getting a yearly license is too expensive for free software.
    • incorporates several 3rd party dlls (e.g., Xceed WPF Toolkit), and executables (e.g., ffmpeg, Exiftool), although I usually check to ensure that the authors are reputable and that there are no reported problems.
    • uses zip files instead of an install package as this (normally) allows users to install it on locked down machines

If you are concerned, the source is available on GitHub, should you wish to examine or compile it yourself. The license terms also list the various 3rd party software packages used. I'd be happy to talk over any concerns (or take any suggestions) you may have.

Security warning on opening Timelapse. Why does Windows display a security warning when I download or update Timelapse?

Recent versions of Windows always warns about programs that were not installed through its installation packages. Yet Timelapse installs through a zip file rather than an installation package. This is because installation packages often require administrative privileges to run on locked-down institutional machines, i.e., where an end-user would have to ask (and wait for) a systems person to do the installation. Although installation is required, it does mean that the end user has to give Windows permission to run Timelapse whenever it is downloaded afresh.

Can I make Timelapse's first-time load of my images faster? Especially when I have hundreds of thousands to load.

When Timelapse loads your files (images and videos) for the first time, it opens and analyzes each file in order to extract some data. The time taken is greatly affected by where your images are located and the speed of your disk drive.

Understanding how image location affects performance If your images are stored on your local computer's drive or a drive attached to your computer, performance will usually depend upon the speed of your storage medium. If your images are stored on a network drive or cloud, the time it takes to upload each image will also be affected by the speed of your network and how fast the network can deliver each image.

  • As a rule of thumb, from fastest to slowest:
    • internal SSD drive >>> internal traditional hard drive > external hard drive > portable USB hard drive >> SSD camera cards > Network hard drives

Other things that can affect performance

  • The computer's performance: Newer or higher end computers with faster processors and more memory will normally be somewhat faster at processing images than older or more basic ones. Having said that, Timelapse seems to run reasonably well on very basic machines.
  • The typical size of each image: lower resolution images are faster to process than larger ones

Example performance differences
Tests of Timelapse loading 36,073 files for the first time on a 5 year old higher-end computer. Images totalled 31 GB, with each image ranging from 500 - 1200 KB (2048 x 1536 - 2560 x 1920 pixels) in size.

  • Image location | Time to load:
    • my local SSD hard drive:............... 0.5 minutes | 1.25 seconds / 1000 images
    • my local conventional hard drive... 5.5 minutes | 9.15 seconds / 1000 images
    • portable USB drive........................ 7.0 minutes | 11.6 seconds / 1000 images
    • camera SD card (SDHC)............. 11.5 minutes | 19 seconds / 1000 images
    • my network hard drive:................ 12.0 minutes | 20 seconds / 1000 images

As you can see, there is a ~24x difference in the times taken to load images depending upon what device my images were on.

Maximizing performance
If things are going reasonably fast or if you don't have massive numbers of images, then just keep going as you are. If you do need a performance boost, here are some options.

  • Simplest is to just run the first-time load of a large image set over-night. For example, start the operation at the end of your day. Subsequent loads of that image set will be much faster.
  • Try to run your own benchmarks on your own devices by seeing how long it takes to load (say) 15,000 images. This will give you an idea of where to best locate your images for processing and whether the gain by moving them around is worth it.
  • Computers with SSD (solid state) drives are considerably faster than any other medium. 1 - 2 TB disks are now available. If you are an employee, justify the cost of an SSD drive against how much you were paid while waiting for images to load. Your conventionalhard drive is still ok, but notably slower than SSD.
  • if your images are stored on a slow network or on a portable disc, consider copying the image set folder to your local hard drive and then processing them there. You can always copy the .tdb and .ddb files back to the original disc when you are done.
  • If you are using a bottom-of-the-line or very old computer, consider doing your work on a better computer.
  • If your camera has different resolution settings, consider whether you really need a ridiculously high resolution (i.e., a very large image file) for what you are trying to do, or if a lesser resolution image will suffice.

Technical note
If you run your own tests, be aware that you can get substantial time differences from those reported above. It depends on your own computer, its cpu, available memory, the disc technology holding your files, your network performance, etc. Also, if you run the same test twice in a row on the same files (after deleting the .ddb file), you may see the performance times improve dramatically. This is a red herring: Windows caches files it has recently seen in memory, so the 2nd time you do the test it just gets them from memory rather than disc.

Timelapse file management on local disks, network drives, and the cloud
Location of images. Can Timelapse use images that are located outside of the folder containing the template (e.g., images on a network drive, template on my local machine)?

No, but there is a work-around to fool Timelapse into doing this.

To help you understand the workaround, you need to know that Timelapse requires images to be located in your template's folder.That is, Timelapse expects all images to be in the same folder (the root folder) containing the template, or in that folder's sub-folders. This allows Timelapse to be able to find all your files by their relative path location even if you move that root folder and its sub-folders elsewhere. The workaround below fools Timelapse into thinking that your image folder is actually a sub-folder.

The Workaround. Use symbolic links to point to the actual location of your images. Let's say your folders are located on a network folder called \\network\images, but your template is in a folder on your local machine called 'timelapse_stuff'. You would create a symbolic link called (say) images in timelapse_stuff that links to \\network\\images. The process of doing so is somewhat harder than using shortcuts (which don't work), but is explained in this link . For example,

  • Open a CMD shell as Administrator
    • Press Windows+R to open the “Run” box.
    • Type “cmd” into the box and then press Ctrl+Shift+Enter to run the command as an administrator.
  • Run the mklink command using three arguments:
    • /D to say that you are linking folders
    • The full path (in quotes) to the studentfolder plus some meaning folder name (e.g. images)
    • The full path (in quotes) to the network drive containing your images
  • For example, in my case the complete command is:
    • C:\Windows\system32>mklink /D "C:\Users\Owner\Desktop\timelapse_stuff" "\\network\\images"

Note: check with your systems administrator on how to do this if you have a locked down machine.

Timelapse cannot write its data. Timelapse seems to fail writing its data into the database (.ddb) file. Why?

The usual cause is that the permissions on your folder or file are not set correctly. This sometimes happens when your root folder and images is located on a network drive or the cloud (e.g., Dropbox, OneDrive), as the default configuration is often read-only. The problem is that unless you are systems-savvy, it may be difficult for you to figure out the permissions, and even harder for you to change them.

There are two solutions.

  1. If you have a systems person, tell them you need full edit permission on the folders and files.
  2. However, a better and easier solution is to merely copy the folder / sub-folder to your own local drive (the added benefit is that everything will run faster). After you are done analyzing the images, you only have to copy the .ddb file back to the network drive or cloud.

I want to change my file names of files previously loaded into Timelapse. How do I do that while still keeping previously entered data?

Timelapse associates your image and video file data with that file's name and the relative path (i.e. where it is in sub-folders) to it. If you change your file name(s), Timelapse won't be able to find your file(s).

However, there is a work-around that will allow you to rename your files. This can be straight-forward if you are using a systematic way of renaming your files.

  1. Before changing your file names
    • Back up your .tdb, .ddb and (if you have one) your .csv files. If things go wrong you can then just copy them back into your root folderlater.
    • Export all your existing data from Timelapse to a CSV file (i.e. a file that can be opened in Excel, R, or equivalent). YOu can do this with File | Export to .csv...
  2. Change your file names (and folder names), as desired in Windows or through whatever renaming software you use.
  3. After your files are renamed
    • Remove your .ddb file (i.e., that contains your data) out of your root folder. Remember that you have made a backup!
    • Open the CSV file, and change the file names (and the RelativePath if needed) in each row so they match the new names and paths
    • Start Timelapse and load your template. Since your .ddb file isn't there, it will create a new database file using the (now renamed) files that it found.
    • Select File | Import from a .csv file... and import the modified CSV file.
    • Check to see if your data was updated. If the file names match, it should have updated your data to include the 'old' data recorded in the CSV file.

FYI: When Timelapse imports a CSV file, it compares each row's file name and relative path with what is in the data base. If there is no match, it will skip that row. This is why you have to create a new .ddb (database) file recording the new file names above. I may fix this in the future, but that's the way it works for now.

Metadata Questions
Metadata field is not listed. I asked Timelapse to show an image's metadata, but a field that I thought should be included isn't listed. For example, the actual image displays the current temperature, but temperature is not listed in the image's metadata.

There are two probable causes to this.

  1. The camera vendor burns the information onto the image, but does not store it in the image's metadata.
  2. The camera vendor does store the information in the image's metadata, but its in a camera-specific format (e.g. often - but not always - in a field called 'MakerNotes'). Decoding that format usually requires camera-specific software. Extracting camera-specific metadata is also more difficult for video files, as the metadata standard is not well-specified.

Timelapse provides two tools for examining an image's metadata. ExifTool is the most powerful, as it knows how to decode camera-specific data from a broad variety of cameras. If ExifTool doesn't display the metadata you want, its likely that other general metadata extraction tools won't show it either.

There are two alternatives.

  1. Contact the vendor and ask them if they do record that metadata. If they do, ask if they have software that can extract that information.
  2. Try Jason Karl's software to extract image banner information (see the FAQ entry: Can I extract information visually stamped in an image's banner?")
Can I extract information visually burnt into the image's banner (the black stripe)? Camera trap images often display information in a banner, e.g., a date stamp, and perhaps other camera specific information such as temperature, moon phase, etc. This is normally- but not always - available as metadata.

If the image metadata can't be used, Jason Karl (University of Idaho) developed a solution to extract information from the burnt-in text on the image. While his solution is camera specific (the Browning Strik Force camera), you may be able to modify his program. I haven't tried it myself, but here is the link to it: Browning Camera Photo Processing

Camera-specific Questions
Can Timelapse read Browning TLS files? Browning seems to have its own proprietary image format - can Timelapse deal with them?

TLS files are actually AVI video files, where images are stored as frames in the video. To use them with Timelapse, you have to extract those images. A description of how to do that is found on this page: Extracting images from TLS

Dates and Times
Images not ordered by date. Why don't my images show up in date order?

By default, Timelapse orders images by date. However, if you have changed the Sort order (see Sort menu), then it will resort the images by the sort criteria you have set. The sort order of an image set is also remembered between Timelapse sessions. To change how images are sorted, use the desired sort options on the Sort menu, for example, by Date.

Incorrect video dates. Why are the dates on my videos incorrect?

Video dates can be problematic, While photos usually embed a standardized ‘time stamp’ of the date taken in its metadata, videos either don't include the date, or place the date in a non-standard field. This makes it difficult or impossible for Timelapse to know what the creation date is. Consequently, Timelapse uses the file creation time, which usually matches the time the images was taken. Unfortunately, file manipulations may not preserve the original file creation time. It may change when copying videos from your camera card to your computer, or across networks and discs, or when emailing them, or when converting your video from one format to another, etc. What that means is that for some videos, the correct date information may simply be unavailable (even if you see the correct date burnt into the video image). However, here are three work-arounds you can try:

  • do some tests to see if and where your video date is changed, and alter your workflow to try to ensure the correct date e.g., how files are copied.
  • if you do have the correct date when your videos are stored in one location but need to move them elsewhere, load your videos as an image set into Timelapse there, as it will extract and record that date. Moving your image set around afterwards (e.g., for later analysis on a different machine) will then preserve the dates as part of its data, as it will already have been recorded.
  • use the Timelapse Edit| Dates |Read date and time from metadata... option. This will list all metadata fields that could be read as dates or times. If one contains the correct date/time, you can select that and ask Timelapse to scan all files and update the date to whatever is in the selected metadata field. Files missing that metadata field will be ignored.

Using the arrow keys.How can I use the arrow keys to move between images when I have selected a data field?

When you select a field, such as a Note, it becomes the input focus. Thus the arrow key moves back and forward through its text so you can edit it. However, a SHIFT-Arrow key will always move to the previous/ next image

Image Recognition Questions
Does image recognition provide provable benefits?

Mitch Fennell and others from UBC did a study on the Megadetector image recognizer on a real image set. They found an increase in efficiency of 500% over purely manual labeling. Their article reports details, and is worth reading.

  • View the article.
  • Mitchell Fennell, Christopher Beirne and A. Cole Burton, Use of object detection in camera trap image identification: Assessing a method to rapidly and accurately classify human and animal detections for research and application in recreation ecology, Global Ecology and Conservation, 10.1016/j.gecco.2022.e02104, 35, e02104, 1-Jun-(2022).
Import image recognition data not working. After trying to import a .json recognition file, I get a warning that no recognition data was found.

The problem is almost certainly due to a mismatch between how files and paths are named in the .json file vs. how they are named in the Timelapse database. To explain:

  1. Timelapse locates files by its relative path to the folder holding the template. For example, if the template is in the folder MyImages, and IMG_01.JPG is located in a subfolder named Station1, the image location is recorded relative to the MyImages folder:
    • its relative path is Station1
    • its File name is IMG_01.JPG
    • so its location is simply Station1/IMG_01.JPG
  2. The paths written to describe a file’s location in the JSON file must exactly match the above location.
  3. Make a copy of the recognition.json file. Open that copy in a text editor.
    • If you are able to open the .json file in a text editor (which can be difficult if its really really large – I use a free editor called EditPad Lite)
  4. Check if the paths are what would be expected (the path for each file is recorded in the "file" field). Often, a prefix to the path is either added or missing due to how files were submitted to Megadetector. For example,
    • a correct path would be recorded as: "file": "Station1/IMG_01.JPG".
    • an incorrect path, which in this case includes the root folder name, would be "file": "MyImages/Station1/IMG_01.JPG"
  5. Do a global replace to add or remove the appropriate prefix. Then try to import the .json file back into Timelapse.
  6. Alternately, Megadetector provides an application for adjusting paths, as it recognizes this as a common problem. For replacing parts of a path, there is a checkbox named 'enable replacement'. The app is a bit complex to use, but it handles many complex situations, such as when you split your folders up to contain multiple Timelapse database. See this page.
Is it possible to add a 2nd JSON file to the image set? I previously created an image set and loaded a recognition file for it. I just added additional images. What happens when I load a new JSON file for those additional images?

Adding a 2nd JSON file particular to those images will clear the original detection data, as Timelapse starts afresh whenever it reads the json file. It takes this strategy as it doesn’t know if the new file should take precedence over the old file.

There are several solutions to this.

  1. Use a text editor (eg., EditPadLite) to merge the old and new JSON files. If you open the json file in the editor, you will see all detections stored between
          "images": [
                <detection data >
To merge two files, copy the detection data from one file (i.e., everything between the opening and closing brackets in the ‘images’ field) and paste it into the other file in the same spot (leaving the existing detection data there as is). Make sure you are choosing the correct brackets, and that the relative paths and file names are correct so that the files can be located.
  1. Use Megadetector's supplied Python script for merging the JSON files. If you have someone who is comfortable running Python code, it should be relatively self-explanatory, but if not, Dan is happy to walk you through setting up a Python environment and running that script. If this is a one-time affair, its simpler to just use a text editor to merge the files. However, if you want to be able to do this regularly and have a bit of computer savvy, using the script is faster.
  2. Use the Timelapse Merge capabilities. You would create a new database in a sub-folder of the original image set, and add the detections to it. You can then use Timelapse to create a merged database containing the the original Timelapse database and your new one. However, the edit method is likely easier an less error-prone.

Video Playback Questions
My videos won't play properly They either don't appear or are jumbled.

The software Timelapse uses to play / show videos is the one supplied by the Windows operating system: As Timelapse doesn't do anything else with the video, the problem usually stems from your computer either missing or using an out of date video codec (compresseor/decompressor). If the videos play on a different computer, then its almost certainly a an issue with Windows (not Timelapse).

Likely causes.

Missing Media Player Timelapse uses Microsoft's internal Windows Media Player to display videos. If the Windows Media Player is not installed, then Timelapse cannot play the videos.

Codec issues. Videos come in a massive number of formats, each requiring a codec to play it correctly. Codecs aren't specific to your video suffix. For example, two different .avi files may each be based on different codecs. To play videos, Windows has to have the correct codecs. If the codec is not installed on that particular windows machine, or is corrupted or somehow not working properly, your video either won't play (it will be black) or will be jumbled.

There are several tests to see if it is a Timelapse problem or a Windows system problem due to one of the issues above.

  1. Try playing the video on a different computer using Timelapse. If it plays, then its liekly a system problem.
  2. Download VLC (https://www.videolan.org/), an open source video play that has tons of codecs installed with it. If the video plays in VLC but not in Timelapse, then its liekly a system problem..


Several possible solutions are listed below. The first one fixing the potentially missing Microsoft Media player is the most likely to solve your problem. If that doesn't work, try the various codec options.

  1. Install or upgrade your installation of Windows Media player as described here and repeated below.
    1. Click the Start button, type features, and then select Turn Windows features on or off.
    2. Expand Media Features and see whether the Windows Media Player check box is selected.
    3. If it is not selected, it means the Windows Media Player is not installed. To install it:
      1. Select the check box. Click OK and restart your computer.
    4. If it selected, try to reinstall the latest version of Windows Media Player
      1. Clear the check box. Click OK and restart your computer, which will remove your current version of Windows Media Player.
      2. Repeat step one above to then install the latest version of Windows Media Player, where you check the check box, click OK and restart your computer.
    5. Fire up Timelapse, and see if it now plays your video files.
  2. One user reported success after downloading the K-lite coded pack, which includes a variety of standard audio and video playback codecs.
  3. Check out this (untested) link: it looks informative. Install missing codecs in Windows
  4. Similar to the above, there are other online packages out there that install various codecs (e.g. https://www.free-codecs.com/motion_jpeg_codec_download.htm). I haven’t tried any of them, as videos work on my machine. Be careful to check whether its a legit site - for example, I haven't tested the free-codec site.
  5. If it works on a different computer, just use that if you can.
  6. If it loads up in VLC, make that your windows default video player, You can then use the 'Play External' button in the Timelapse video player to view the video.
  7. Could it be a Driver issue? If nothing above seems to work, another possibility is that your display driver is having issues. Maybe its an old machine, or you haven't updated things for a long while. You can try to reinstalling your display driver.
    • Right click on Start button and click on Device Manager.
    • Select the Graphic driver from the list by extending Display adapters.
    • Right click on the Graphic driver and click on Update Driver Software.

TimelapseTemplateEditor Questions
Default values.I changed the default value for a field in the template, but my previously loaded images show the old default value, not the new one.

Defaults are used to populate fields only when images are loaded for the first time. If you want to change all your defaults to a new value, try the following workaround. Let's assume:

  • You had set a default (for example, a text field called ‘Comment’ to ‘SomeDefaultText’)
  • You had then opened up an image set
  • You started coding up images, where you had changed some of the Comment fields
  • You now want to change all of ‘SomeDefaultText’ to ‘NewDefaultText’ but leave the modified text alone.


  • Choose Select | Custom Select
  • Click the ‘Comment’ field to use it
  • Make sure its set to ‘=’
  • Enter the text ‘SomeDefaultText’
  • Click Ok

The images displayed will be filtered, so that only the ones with ‘SomeDefaultText’ will be present You can then change one of the Comment fields to ‘NewDefaultText’ and do the Copy to All…