Git Product home page Git Product logo

chronolapse's Introduction

Chronolapse

Chronolapse makes it easy to record screenshots and camera captures on a schedule then combine them into timelapse videos. Chronolapse provides the tools for capturing the images, lightly processing them, adding optional 'picture in picture', rendering the images into video, and adding audio.

Chronolapse uses MEncoder to render the captured images into video - make sure you have MEncoder installed and on your path. Alternatively, you can select the MEncoder executable on the Chronolapse video tab. Additionally, Chronolapse can save image files in either timestamp format or sequential integer format so the resulting images can be combined using other external tools like VirtualDub.

Chronolapse 2.0 is a rewrite of the original Chronolapse codebase with generally cleaner code, much better configuration control, some new functionality, and some old, unused features pruned away.

Most significantly, Chronolapse 2.0 uses the OpenCV library to support webcam captures on all platforms.

Command Line Options

  • -a / --autostart Automatically starts capturing immediately

  • -b / --background Starts Chronolapse in the background without showing the frame at all. You can open the Chronolapse window from the taskbar on supported systems.

  • --config_file The location of the configuration file. If not found, a new one will be created at this location. This must be writable. Defaults to 'chronolapse.config'

  • --sequential_image_format Sets the format string for sequential image filenames using python's string formatting and passing in the next integer number. Defaults to '%05d'

  • --timestamp_filename_format Sets the format string for rendering timestamps on images using python's datetime.strftime function. Defaults to '%Y-%m-%d %H:%M:%S'

  • -v / --verbose Increases command line output

  • -d / --debug Greatly increases command line output. Helpful for debugging.

Configuration Hacks

Some configuration is only exposed via Chronolapse's configuration file, which defaults to chronolapse.config in the chronolapse folder. The file is a simple json file - you can carefully edit it by hand (you may want to use a json formatter to make it easier on yourself).

The configuration file contains a top level key 'chronolapse' and a long list of simple key: values underneath it.

Example:

{
    "chronolapse": {
        "use_webcam': true
    }
}

Most of the configuration keys are automatically handled by the user interface and will be overwritten when you change them in Chronolapse itself. However, there are several advanced options that can only be changed by editing the configuration.

Changing Camera

OpenCV does not do a great job of enumerating the available capture devices, but it is possible to manually specify the device number you wish to use by editing the webcam_device_number field. The default device number is 0.

chronolapse's People

Contributors

aaronbamberger avatar collingreen avatar lunaphied avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

chronolapse's Issues

Ability to automatically ignore duplicate frames.

At the moment I tend to just trim manually, or remember to stop the capture. It would be pretty nice if there were an option to ignore encoding frames if they haven't changed for a specified period of time. Basically would make chronolapse fire and forget, no need to stop/start manually if you get up and go for a coffee, whilst reducing time spent on a blank or still screen.

Windows Explorer Crashes when opening result file

I tried using the 1.0.7 version of Chronolapse on my Windows 10 PC. After creating a video from the screenshots, I tried opening it, but my Windows Explorer restarted after opening it. I tried right-clicking file and the same thing happened.

Synchronisation between multiple device.

Not sure about others, but I sometimes work across more than 1 device. Would be handy if capture could be synchronized across multiple machines, treating them as additional monitors.

feature request - no screenshots if idle

I wanted to make a small feature request. Could you add an option that
would make it so chronolapse will only take another screenshot when
there has been keyboard activity since the last screenshot that was
taken? When I use chronolapse I typically just set it for a 2-second
(or so) screenshot interval and let it go.

The reason I think this would be a very useful feature is because
there are usually long periods of time when I'm not actually doing
anything (writing any code) on my computer (e.g. maybe I'm reading
physical datasheets or just away from my desk) and I don't want
chronolapse to keep taking a bunch of screenshots at the pre-set
interval when nothing on the screen has changed. This feature would be
awesome because it would drastically reduce the number of
screenshots taken and the amount of space that they consume over any
period of time.

Another good reason is one time I forgot to stop chronolapse from
capturing one night and woke up the next morning to find a bazillion
screenshots had been taken. Lol.

monitor settings can break dual monitors

for example, duplicating your screen in windows will show up as having multiple displays but error if you try to access display 1 (which is how CL grabs the second monitor).

short term it would be nice to take the monitor number from an optional config
long term it would be better to enumerate the displays and allow configuring as many as necessary

Installing on Windows 8.1

How do I get this to work? I gather this is a Python 2 script, so I tried installing wxpython with the Python 2.7 pip, but I get a build error since I only have VS 2015 (and 2019) and not the ancient VC++9 build environment.

Running with Python 3 (which somehow can install wxpython just fine) doesn't seem too workable either, even with 2to3. I'm not much of a Python programmer, so AttributeError: module 'wx' has no attribute 'TaskBarIcon' on line 1892 is pretty daunting.

I have an issue with it crashing

Okay, so currently I'm using this program and windows 7 Latitude E6530 dell laptop, and a Logitech HD Pro Webcam C920. What happens is I launch the program and set up the settings I need for my Lapse. But something weird happens. At first my test webcam crashed, So I thought okay I've had issues before with this webcam, and this program. Then when I started it, it would run until it takes a photo at that point it would crash. Mind you I have no build in webcam, but I do have a mic array. If you could get back to me quick this is for an environmental club Plant growth time lapse. So I don't know how much more time I have until they sprout.

Support video game capture

Perhaps it could be possible for Chronolapse to capture the framebuffer from the GPU in a similar way to OpenBroadcasterSoftware. That way video games would be correctly captured rather than remaining a static frame.

Saving Schedules

Is there a way to save schedules after closing/relaunching the software? If I were to setup a week long schedule but shutdown my machine each day, is there a way when the software launches on the next boot the schedule would be retained and start capturing again?

support more than 2 screens

Ideally support any number of screens.

Consider saving each screen as an individual screenshot. This will require tools to stitch them back together but will also provide much more flexibility.

Mouse follow for screen capture.

Someone asked about this in #ludumdare. The ability to perhaps only capture the screen that mouse is on at the moment, meaning there is no need to capture all monitors. Some of us have 2+ monitor setups. Should also be restricted to disable capture of a specific monitor (i.e. done pointlessly show switching back and forth to IRC/email/etc).

How to use Schedule tab?

ChronoLapse is really great. Exactly what I am looking for. Today, I installed it the first time but I have an issue with configuring the Schedule tab. I have set-up Start Date-Time, End Date-Time and clicked "Activate Schedule".
Once the start time is reached - nothing happens. Do I have to active something more somewhere?

yes - I have read the manual ;-)
The Start Capture and Force Capture works fine.

ChronoLapse win 1.0.7, Windows 7 Home Premium, ASUS Notebook K52N, Logitech C920

No webcam found on your system

I get this error:

image description

I have two webcams actually. I have Czech windows, but I think this screenshot from device manager is obvious:

image description

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.