{"id":19362411,"url":"https://github.com/alancunningham/rtsp-timelapse","last_synced_at":"2025-04-13T11:10:23.888Z","repository":{"id":89430890,"uuid":"564055764","full_name":"AlanCunningham/rtsp-timelapse","owner":"AlanCunningham","description":"Connects to an RTSP stream, takes a photo, and stitches it together to make a timelapse.  Then sends the timelapse video to your favourite service using Apprise.","archived":false,"fork":false,"pushed_at":"2023-09-22T21:16:36.000Z","size":11,"stargazers_count":18,"open_issues_count":3,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-27T02:21:13.973Z","etag":null,"topics":["ffmpeg","ip-camera","python","python3","raspberry-pi","rtsp","rtsp-camera","timelapse"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AlanCunningham.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-11-09T22:32:33.000Z","updated_at":"2025-02-21T13:32:27.000Z","dependencies_parsed_at":null,"dependency_job_id":"ac463514-a5e8-4071-bd85-c9223811ebd1","html_url":"https://github.com/AlanCunningham/rtsp-timelapse","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlanCunningham%2Frtsp-timelapse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlanCunningham%2Frtsp-timelapse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlanCunningham%2Frtsp-timelapse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlanCunningham%2Frtsp-timelapse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AlanCunningham","download_url":"https://codeload.github.com/AlanCunningham/rtsp-timelapse/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248703199,"owners_count":21148118,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ffmpeg","ip-camera","python","python3","raspberry-pi","rtsp","rtsp-camera","timelapse"],"created_at":"2024-11-10T07:28:16.664Z","updated_at":"2025-04-13T11:10:23.858Z","avatar_url":"https://github.com/AlanCunningham.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RTSP Timelapse\n\nConnects to an RTSP stream, takes a photo, and stitches it together to make a timelapse.\nThen sends a the timelapse video to your favourite service [using Apprise](https://github.com/caronc/apprise).\n\n## Hardware\n- Personally, I have this running on a Raspberry Pi (any model will probably do)\n- An IP camera that supports RTSP\n\n## Installation\n- Create a python3 virtual environment and install the project's requirements:\n```\n$ python3 -m venv rtsp_timelapse\n$ source rtsp_timelapse/bin/activate\n(rtsp_timelapse) $ pip install -r requirements.txt\n```\n- You will also need [ffmpeg](https://ffmpeg.org/) installed on your machine.  This can usually be\ninstalled using a package manager.  For example:\n```\n$ sudo apt-get install ffmpeg\n```\n- Open config.py and enter the camera's\n  - RTSP username\n  - RTSP password\n  - IP address\n- Also in config.py, enter where you want your timelapse videos to be sent. See\n[Apprise's github page](https://github.com/caronc/apprise) for examples. An\nexample for Telegram and Discord would look something like this:\n```\n# The list of services to notify\napprise_services = [\n    \"tgram://bottoken/ChatID\",\n    \"discord://webhook_id/webhook_token\",\n]\n```\n- You should now be able to start the program:\n```\n(rtsp_timelapse) $ python main.py\n```\n\n# Creating the timelapses\nThe script is intended to be run regularly on a cronjob.  It will connect to the IP camera, take a photo \nand save the image to the **input** folder.\n\nOnce a week's worth of photos have been taken, the script will stitch the photos together using\n[ffmpeg](https://ffmpeg.org/) and save the video to the **output** directory.  Once saved, it will send the videos to\nthe Apprise services set in config.py.  The images used to create the timelapse will then be\ndeleted.\n\nTwo copies of the timelapse will be created in the **output** directory.\n- normal_timelapse - This contains timelapses at the default framerate - 24fps\n- forced_fps - This contains timelapses at a framerate of 60fps\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falancunningham%2Frtsp-timelapse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falancunningham%2Frtsp-timelapse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falancunningham%2Frtsp-timelapse/lists"}