Metadata-Version: 2.1
Name: earhorn
Version: 0.5.0
Summary: Listen, monitor and archive your streams!
Author: Joola
Author-email: jooola@users.noreply.github.com
Requires-Python: >=3.7,<4.0
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Requires-Dist: click (>=8.0.1,<9.0.0)
Requires-Dist: httpx (>=0.21.1,<0.22.0)
Requires-Dist: loguru (>=0.5.3,<0.6.0)
Requires-Dist: more-itertools (>=8.10.0,<9.0.0)
Requires-Dist: pydantic (>=1.9.0,<2.0.0)
Description-Content-Type: text/markdown

# earhorn

Listen, monitor and archive your streams!

[![](https://mermaid.ink/svg/eyJjb2RlIjoic3RhdGVEaWFncmFtLXYyXG4gICAgc3RhdGUgXCJTdGFydCBldmVudCBoYW5kbGVyXCIgYXMgc3RhcnRfaGFuZGxlclxuICAgIFsqXSAtLT4gc3RhcnRfaGFuZGxlclxuXG4gICAgc3RhdGUgXCJDaGVjayByZW1vdGUgc3RyZWFtXCIgYXMgY2hlY2tfc3RyZWFtXG4gICAgc3RhcnRfaGFuZGxlciAtLT4gY2hlY2tfc3RyZWFtXG5cbiAgICBzdGF0ZSBpZl9zdHJlYW1fb2sgPDxjaG9pY2U-PlxuICAgIHN0YXRlIHN0YXJ0IDw8Zm9yaz4-XG4gICAgY2hlY2tfc3RyZWFtIC0tPiBpZl9zdHJlYW1fb2s6IElzIHRoZSBzdHJlYW0gb2sgP1xuXG4gICAgaWZfc3RyZWFtX29rIC0tPiBzdGFydDogWWVzXG4gICAgc3RhdGUgXCJTdGFydCBsaXN0ZW5lclwiIGFzIHN0YXJ0X2xpc3RlbmVyXG4gICAgc3RhdGUgXCJTdGFydCByZWNvcmRlclwiIGFzIHN0YXJ0X3JlY29yZGVyXG4gICAgc3RhcnQgLS0-IHN0YXJ0X2xpc3RlbmVyXG4gICAgc3RhcnQgLS0-IHN0YXJ0X3JlY29yZGVyXG5cbiAgICBzdGF0ZSBcIlNlbmQgZXJyb3IgdG8gZXZlbnQgaGFuZGxlclwiIGFzIHNlbmRfZXJyb3JcbiAgICBzdGF0ZSBcIldhaXQgZm9yIDUgc2Vjb25kc1wiIGFzIHdhaXRfc3RyZWFtX29rXG4gICAgaWZfc3RyZWFtX29rIC0tPiBzZW5kX2Vycm9yOiBOb1xuICAgIHNlbmRfZXJyb3IgLS0-IHdhaXRfc3RyZWFtX29rXG4gICAgd2FpdF9zdHJlYW1fb2sgLS0-IGNoZWNrX3N0cmVhbVxuXG4gICAgc3RhdGUgXCJSdW4gKHVudGlsIGV4aXQgb3IgZXJyb3IgcmFpc2VkKVwiIGFzIHJ1bm5pbmdcbiAgICBzdGFydF9saXN0ZW5lciAtLT4gcnVubmluZ1xuICAgIHN0YXJ0X3JlY29yZGVyIC0tPiBydW5uaW5nXG5cbiAgICBydW5uaW5nIC0tPiBjaGVja19zdHJlYW06IEVycm9yIHJhaXNlZFxuXG4gICAgcnVubmluZyAtLT4gWypdIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifSwidXBkYXRlRWRpdG9yIjpmYWxzZSwiYXV0b1N5bmMiOnRydWUsInVwZGF0ZURpYWdyYW0iOmZhbHNlfQ)](https://mermaid.live/edit#eyJjb2RlIjoic3RhdGVEaWFncmFtLXYyXG4gICAgc3RhdGUgXCJTdGFydCBldmVudCBoYW5kbGVyXCIgYXMgc3RhcnRfaGFuZGxlclxuICAgIFsqXSAtLT4gc3RhcnRfaGFuZGxlclxuXG4gICAgc3RhdGUgXCJDaGVjayByZW1vdGUgc3RyZWFtXCIgYXMgY2hlY2tfc3RyZWFtXG4gICAgc3RhcnRfaGFuZGxlciAtLT4gY2hlY2tfc3RyZWFtXG5cbiAgICBzdGF0ZSBpZl9zdHJlYW1fb2sgPDxjaG9pY2U-PlxuICAgIHN0YXRlIHN0YXJ0IDw8Zm9yaz4-XG4gICAgY2hlY2tfc3RyZWFtIC0tPiBpZl9zdHJlYW1fb2s6IElzIHRoZSBzdHJlYW0gb2sgP1xuXG4gICAgaWZfc3RyZWFtX29rIC0tPiBzdGFydDogWWVzXG4gICAgc3RhdGUgXCJTdGFydCBsaXN0ZW5lclwiIGFzIHN0YXJ0X2xpc3RlbmVyXG4gICAgc3RhdGUgXCJTdGFydCByZWNvcmRlclwiIGFzIHN0YXJ0X3JlY29yZGVyXG4gICAgc3RhcnQgLS0-IHN0YXJ0X2xpc3RlbmVyXG4gICAgc3RhcnQgLS0-IHN0YXJ0X3JlY29yZGVyXG5cbiAgICBzdGF0ZSBcIlNlbmQgZXJyb3IgdG8gZXZlbnQgaGFuZGxlclwiIGFzIHNlbmRfZXJyb3JcbiAgICBzdGF0ZSBcIldhaXQgZm9yIDUgc2Vjb25kc1wiIGFzIHdhaXRfc3RyZWFtX29rXG4gICAgaWZfc3RyZWFtX29rIC0tPiBzZW5kX2Vycm9yOiBOb1xuICAgIHNlbmRfZXJyb3IgLS0-IHdhaXRfc3RyZWFtX29rXG4gICAgd2FpdF9zdHJlYW1fb2sgLS0-IGNoZWNrX3N0cmVhbVxuXG4gICAgc3RhdGUgXCJSdW4gKHVudGlsIGV4aXQgb3IgZXJyb3IgcmFpc2VkKVwiIGFzIHJ1bm5pbmdcbiAgICBzdGFydF9saXN0ZW5lciAtLT4gcnVubmluZ1xuICAgIHN0YXJ0X3JlY29yZGVyIC0tPiBydW5uaW5nXG5cbiAgICBydW5uaW5nIC0tPiBjaGVja19zdHJlYW06IEVycm9yIHJhaXNlZFxuXG4gICAgcnVubmluZyAtLT4gWypdIiwibWVybWFpZCI6IntcbiAgXCJ0aGVtZVwiOiBcImRlZmF1bHRcIlxufSIsInVwZGF0ZUVkaXRvciI6ZmFsc2UsImF1dG9TeW5jIjp0cnVlLCJ1cGRhdGVEaWFncmFtIjpmYWxzZX0)

## Usage

```
Usage: earhorn [OPTIONS] URL

  URL of the stream.

Options:
  --hook PATH                     Hook to run to handle events.
  --archive-path PATH             Path to the archive directory.
  --archive-segment-size INTEGER  Archive segment size in seconds.
  --archive-segment-filename TEXT
                                  Archive segment filename.
  --archive-segment-format TEXT   Archive segment format.
  --help                          Show this message and exit.

```

## Releases

To release a new version, first bump the version number in `pyproject.toml` by hand or by using:

```sh
# poetry version --help
poetry version <patch|minor|major>
```

Run the release target:

```sh
make release
```

Finally, push the release commit and tag to publish them to Pypi:

```sh
git push --follow-tags
```

