- Precache m3u8 playlists
- Adds caching of HLS chunks to HLS proxy to make it more resilient to network issues
- HLS chunk caching can be disabled with -n or --no-precache
- Speeds up XMLiveChannel.get_latest_cut
- Fixes secondary HLS URL generation
- Pulls tune_time from wallClockRenderTime
- Adds primary_hls and seconary_hls
- Adds quality selection
- Overhauls time/datetime management
- Adds automatic failover to secondary HLS
- Fixes pydantic issue in XMLiveChannel
- Adjusts selected HLS stream to (hopefully) fix radio_time
- Switches HTTP server to using aiohttp
- Adds SXMClientAsync
- Splits typer params out into seperate variables
- Adds type stubs
- Fixes authentication (thanks @Lustyn)
- Replaces setuptools with filt
- Replaces click with typer
- Replaces requests with httpx
- Updates linting
- Replaces TravisCI with Github Actions
- Adds Pydantic for SXM models
- First release on PyPI.