{"id":15197113,"url":"https://github.com/meinside/rpi-camera-timelapse-go","last_synced_at":"2025-10-28T07:31:08.453Z","repository":{"id":57520789,"uuid":"63130730","full_name":"meinside/rpi-camera-timelapse-go","owner":"meinside","description":"Timelapse image capture daemon for Raspberry Pi Camera Module, built with Go","archived":false,"fork":false,"pushed_at":"2024-03-17T23:46:39.000Z","size":86,"stargazers_count":11,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-01T12:44:10.580Z","etag":null,"topics":["golang","raspberry-pi","raspberry-pi-camera"],"latest_commit_sha":null,"homepage":null,"language":"Go","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/meinside.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":"2016-07-12T06:00:01.000Z","updated_at":"2024-09-25T00:28:15.000Z","dependencies_parsed_at":"2024-06-20T15:41:53.252Z","dependency_job_id":"fc91c595-1c40-47a4-baf2-d65afea3f73e","html_url":"https://github.com/meinside/rpi-camera-timelapse-go","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meinside%2Frpi-camera-timelapse-go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meinside%2Frpi-camera-timelapse-go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meinside%2Frpi-camera-timelapse-go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meinside%2Frpi-camera-timelapse-go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/meinside","download_url":"https://codeload.github.com/meinside/rpi-camera-timelapse-go/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238614397,"owners_count":19501450,"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":["golang","raspberry-pi","raspberry-pi-camera"],"created_at":"2024-09-28T00:42:44.659Z","updated_at":"2025-10-28T07:31:08.145Z","avatar_url":"https://github.com/meinside.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Raspberry Pi: Timelapse Camera Daemon\n\n## 0. What is it for?\n\nIt is for capturing images with some interval, using Raspberry Pi Camera Module.\n\nThese captured images can be used as each frame of a timelapse video.\n\n## 1. What do I need before running it?\n\nYou need:\n\n* Raspberry Pi\n* Raspberry Pi Camera Module enabled, and its cable correctly connected\n* [golang installed on Raspberry Pi](https://github.com/meinside/dotfiles/blob/master/bin/install_go.sh)\n* and this README.md.\n\n## 2. How can I configure it?\n\nYou need to create your own config file.\n\nSample file is included, so feel free to copy it and change values as you want.\n\n```bash\n$ cp config.json.sample config.json\n$ vi config.json\n```\n\nYou can configure it to save files locally, send via SMTP, upload to Dropbox or S3 like this:\n\n```json\n\"storages\": [\n\t{\n\t\t\"type\": \"local\",\n\t\t\"path\": \"/home/meinside/photos/timelapse\"\n\t},\n\t{\n\t\t\"type\": \"smtp\",\n\t\t\"smtp_recipients\": \"recipient-email-address1@outlook.com,recipient-email-address2@yahoo.com\",\n\t\t\"smtp_email\": \"sender-email-address@email.com\",\n\t\t\"smtp_passwd\": \"sender-email-password\",\n\t\t\"smtp_server\": \"sender.smtp-server.com:587\"\n\t},\n\t{\n\t\t\"type\": \"dropbox\",\n\t\t\"path\": \"/timelapse\",\n\t\t\"dropbox_token\": \"Tttttttt_oOOOOOOO-kkkkkkkk-eeeeeee_NNNNNNNN\"\n\t},\n\t{\n\t\t\"type\": \"s3\",\n\t\t\"path\": \"/optional/directory/in/bucket\",\n\t\t\"s3_bucket\": \"my-s3-bucket-name\"\n\t}\n]\n```\n\nWhen not needed, just remove the unwanted one from __storages__.\n\n## 3. How can I build it?\n\n### A. Manually\n\n```bash\n$ go get -d github.com/meinside/rpi-camera-timelapse-go\n$ cd $GOPATH/src/github.com/meinside/rpi-camera-timelapse-go\n$ go build\n```\n\n### B. With docker-compose\n\n#### a. Raspberry Pi 3B, 3B+, 4B\n\n```bash\n$ docker-compose build\n```\n\n#### b. Raspberry Pi 2\n\n```bash\n$ docker-compose build --build-arg RPI=raspberry-pi2\n```\n\n#### c. Raspberry Pi B / Zero\n\n```bash\n$ docker-compose build --build-arg RPI=raspberry-pi\n```\n\n## 4. How can I run it?\n\n### A. Manually\n\nJust execute the compiled binary:\n\n```bash\n$ ./rpi-camera-timelapse-go\n```\n\nIf nothing goes wrong, images will be captured and stored periodically as you configured.\n\n### B. With docker-compose\n\n```bash\n$ docker-compose up\n```\n\n## 4. How can I run it as a service?\n\n### A. With systemd\n\n```bash\n$ sudo cp systemd/rpi-camera-timelapse-go.service /etc/systemd/system/\n$ sudo vi /etc/systemd/system/rpi-camera-timelapse-go.service\n```\n\nand edit **User**, **Group**, **WorkingDirectory**, and **ExecStart** values.\n\nYou can simply start/stop it with:\n\n```\n$ sudo systemctl start rpi-camera-timelapse-go.service\n$ sudo systemctl stop rpi-camera-timelapse-go.service\n```\n\nIf you want to launch it automatically on boot:\n\n```bash\n$ sudo systemctl enable rpi-camera-timelapse-go.service\n```\n\n### B. With docker-compose\n\n```bash\n$ docker-compose up -d\n```\n\n## 5. How do I merge captured images to a timelapse video?\n\nUse ffmpeg:\n\n```bash\n$ ffmpeg -framerate 30 -pattern_type glob -i '*.jpg' -c:v libx264 timelapse.mp4\n```\n\n## 998. Any trouble?\n\nPlease open an issue.\n\n## 999. License?\n\nMIT\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeinside%2Frpi-camera-timelapse-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmeinside%2Frpi-camera-timelapse-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeinside%2Frpi-camera-timelapse-go/lists"}