Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gboudreau/hdhomerun-plain-scheduler
Recordings scheduling system using plain-text files for HDHomeRun tuners
https://github.com/gboudreau/hdhomerun-plain-scheduler
dvr hdhomerun php
Last synced: about 1 month ago
JSON representation
Recordings scheduling system using plain-text files for HDHomeRun tuners
- Host: GitHub
- URL: https://github.com/gboudreau/hdhomerun-plain-scheduler
- Owner: gboudreau
- License: gpl-3.0
- Created: 2017-08-18T01:06:34.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2024-02-18T17:24:23.000Z (9 months ago)
- Last Synced: 2024-05-02T01:27:55.604Z (7 months ago)
- Topics: dvr, hdhomerun, php
- Language: PHP
- Size: 103 KB
- Stars: 9
- Watchers: 3
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# HDHomeRun Plain-Text Scheduler
Recordings scheduling system using plain-text files for HDHomeRun tuners## Example recording schedule:
See the [schedules.example.txt](https://github.com/gboudreau/hdhomerun-plain-scheduler/blob/master/schedules.example.txt) file for more examples, and more details about the file format (eg. how to use comments).
```
Record
serie Game of Thrones
episode S7E08
named The Final FINAL episode
on channel 17.1
on date 2017-08-19
at 09:00
duration 1h07m
save to /path/to/recordings/
```Episode name is optional, as is the episode ID (SxxEyy); if not specified, the date of the recording will be used (SyyyyEmmdd).
`Save to` path is also optional, if you define a default in the `config.php` file.
The final recorded file will be saved as `/path/to/recordings/Serie/Season xx/Serie SxxEyy Ep name.ts`## Requirements:
- Linux ([PR for Windows compatibility are welcome](https://github.com/gboudreau/hdhomerun-plain-scheduler/wiki/Windows-compatibility))
- PHP 7.x
- cURL module for PHP
- `exec()` available (it is used to spawn new PHP processes to handle individual recordings)
- Optional: web server (Apache, nginx, ...)## Install
- Copy `config.example.php` to `config.php`, and edit as required;
- Copy `schedules.example.txt` to `schedules.txt`, and edit to list all the recordings you'd like to schedule;
- Install [composer](https://getcomposer.org/) (if you don't already have it), and run: `composer install`
- Add a cron job that will run every minute, to start recordings as needed:```
crontab -l > mycron
echo >> mycron
echo '# HDHomeRun Plain-Text Scheduler' >> mycron
echo '* * * * * php /path/to/hdhomerun-plain-scheduler/bin/cron.php' >> mycron
crontab mycron
rm mycron
```## Web UI
There is a very simple web UI to monitor your scheduled recording, and add new ones.
To use it, simply point your favorite HTTP server to the `web/` sub-folder. It contains an `index.php` file that will be used to serve web content.
Of note: make sure the user running the HTTP server can read your schedules & log files, and optionally write to your schedules file (if you want to be able to create new schedules from the web).