summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* reolink: Show small images by defaultHEADmainJon duSaint2023-11-03
|
* Reolink.pm: Images should be TrueColorJon duSaint2023-11-03
|
* reolink: Revamp web pageJon duSaint2023-10-02
| | | | | The generated web page now supports multiple cameras and is usable on idevices.
* reolink: Security fixes for LWP::UserAgentJon duSaint2023-10-02
| | | | Modify pledge/unveil calls so LWP::UserAgent will work.
* reolink: Don't die when camera unavailableJon duSaint2023-10-02
| | | | | Now that multiple cameras are supported, keep going when one can't be reached for some reason.
* reolink: Set default retention to 72 hoursJon duSaint2023-10-02
| | | | There's plenty of storage; may as well keep images around longer.
* reolink: Simplify child process handlingJon duSaint2023-09-16
| | | | | | | Since all we care about is whether the video-generating process is still running, we can remove the SIGCHLD handling that updates the list of child processes in favor of directly checking them when decideding whether to generate a video or not.
* reolink: Minor fixesJon duSaint2023-09-16
| | | | | | * Pass along camera quality kludge flag to Snap. * Print an error when waitpid finds a child not in the list * More directly search for today's video
* Reolink.pm: Clean up args in newJon duSaint2023-09-16
| | | | Make the previous change here more tidy.
* reolnk: Support multiple camerasJon duSaint2023-09-14
| | | | | | Multiple cameras can now have snapshots taken and videos generated. The cameras are hardcoded for now. Images and videos go into a per-camera spool.
* reolink: Fix local import pathJon duSaint2023-09-14
| | | | | Derp error caused the local module not to be imported when --debug was specified.
* Reolink.pm: Add additional parameters to new()Jon duSaint2023-09-14
| | | | | | | | | | | | | | | | * debug => [0|1] Enable/disable debug printing. Not much of this so far. * image_quality_workaround => [0|1] Newer Reolink firmware (unknown which versions or when it started) generate JPEG images with empty or missing quantization tables. This is probably fine, except a years-old bug in ffmpeg's mjpeg module causes it to choke when this field is missing, so timelapse videos can't be created. Setting this flag causes the image data to get run through Image::Magick, setting a quality of 99, before saving.
* Reolink.pm: Support HTTPSJon duSaint2023-09-12
| | | | | | Newer Reolink firmware supports HTTPS and ships with HTTP API access disabled by default. Switch to LWP::UserAgent for HTTPS support and redirect to HTTPS if needed.
* reolink: Fixes for video format switchJon duSaint2023-09-06
| | | | | All the things that prevented the previous commit from working. The iDevice can now play video, as can Firefox.
* reolink: Change video formatJon duSaint2023-08-30
| | | | | | | | | | | | | | | | | | The state of video in the browser is a hot mess. And not in a good way. Google and Mozilla support the fancy VP9 encoding. Apple does not. Sadly, since the videos have reasonably good quality and small size. Apple supports H.265, also a fancy encoding. But neither Google nor Mozilla support that. What they all can agree on is H.264. Which isn't bad, but isn't great either. But since those dorks can't get their act together, then H.264 it is for the rest of us. The "front end" people do stupid tricks like encode each video in several different formats and let the browser choose, but come on, really?
* reolink: switch reolink_ip to ntp_ipJon duSaint2023-08-20
| | | | | The value is used to set the NTP server for the cameras, so may as call call it by a name that corresponds.
* jobmon: A simple job monitorJon duSaint2023-07-04
| | | | | | The usual rc scripts don't seem to restart failed jobs (there might be a way, but I haven't found it). So, write a small job monitor that restarts jobs of interest.
* weewx: setup scripts and patchesJon duSaint2023-07-04
| | | | Make installation on OpenBSD easier.
* netmon: ifconfig works better when you tell it what interface to useJon duSaint2022-11-27
|
* netmon: Network interface monitorJon duSaint2022-11-23
| | | | | Monitor a network interface. If the IP address disappears, reconfigure the interface.
* reolink: add video tabJon duSaint2022-07-24
| | | | | | | The output web page now has slideshow and video tabs. The video tab lets you select from and play existing videos. N.b. videos that are still being generated will show up.
* reolink: switch to small videos onlyJon duSaint2022-07-24
| | | | | | Full size takes forever to generate (which will eat into the power budget once remote) and is larger than needed for what it is. Switch to generate the small size only.
* reolink: Fix video generation and add enhancementsJon duSaint2022-07-24
| | | | | | | When the spool was different from default, the process child found no screenshots as it wasn't loading the config file. Fix that. Also add a `"timelapse"` command to trigger generation (primarily for debugging), and save off a "keyframe" for each video generated.
* reolink: generate simple slideshow web pageJon duSaint2022-07-18
| | | | | Static page with simple slideshow, generated after each snapshot and respool.
* reolink: minor input validation improvementsJon duSaint2022-07-17
|
* reolink: sandbox fixesJon duSaint2022-07-17
| | | | Enable config file creation and exec (for video creation).
* reolink: Allow reloadJon duSaint2022-07-17
| | | | | Turns out support for reload was present since the beginning, so enable the rc "reload" action.
* reolink: Add spool retention policyJon duSaint2022-07-17
| | | | | Default now is to keep images in spool only for 24 hours. This can be changed via a client command or the config file.
* reolink: rearrange sandbox code so it works with daemonizeJon duSaint2022-07-16
|
* reolink: remove chroot refsJon duSaint2022-07-16
|
* reolink: Sandbox server with unveilJon duSaint2022-07-16
|
* reolink: Hoist load_params to mainJon duSaint2022-07-16
| | | | Prepare for use by Client.
* reolink: Fix more missing spool dir bugsJon duSaint2022-07-16
|
* reolink: Install reolink.conf.5 to correct directoryJon duSaint2022-07-16
|
* reolink: Add man pages and example configurationJon duSaint2022-07-16
|
* reolink: Fix missing spool dir bugJon duSaint2022-07-16
| | | | | Add `spool_dir` to `%default_config` and `%debug_config` so as not to store snapshots in `/`.
* reolink: Install and rc scriptsJon duSaint2022-07-15
|
* reolink: Add timelapse video generationJon duSaint2022-07-09
|
* reolink: client/server to take snapshots from a Reolink IP cameraJon duSaint2022-05-17
|
* Move Reolink to its own subdirJon duSaint2022-05-01
|
* Reolink perl module: client APIJon duSaint2022-04-30