Commit graph

7 commits

Author SHA1 Message Date
milaq 72a8df3ed9 Add initial support for station icon proxying and conversion
Station icons now get converted to a JPEG with a maxmimum dimension of 290 on icon request.
Although we need to implement caching and aspect ratio keeping, this should fix issues with incompatible station icons and HTTPS icon URLs.

Adds a new package dependency: Pillow
2019-08-25 17:02:41 +02:00
milaq c6f4fe1691 Custom stations: Revisit checksum generation
Some AVRs do not allow an ID larger than 15 characters. Thanks to Marc for pointing that out.
Use a MD5 hash (128), XOR fold it (64) and cut it to size (48). This way we _should_ still have enough uniqueness and can generate a checksum which fits the limits.
2019-08-25 13:42:31 +02:00
milaq 3c80bd2500 My Stations: Change the default config filename 2019-08-22 20:40:49 +02:00
milaq 2349e06a2e Add custom station ID generation
Generate IDs by hashing the station name and URL.
These IDs should be sufficiently unique.

We _may_ run into performance issues with a very large definition, but it should be fine for a sane amount of custom stations.
Revisit once we implement a custom station database.
2019-08-22 20:38:56 +02:00
milaq 803964ecb4 Unify station id generation 2019-08-19 13:57:35 +02:00
milaq 16387a3f50 Rework directory handling
This greatly improves loading times and takes some load off the APIs.

 * Add generic directory class to also hold item count
 * Radiobrowser: Get station count directly from API
 * Optionally show broken stations and their count
 * Remove minimum station bitrate to not filter away some listings
 * Improve code wording
 * Log API requests
2019-08-18 13:50:38 +02:00
milaq 1316bb65d0 Decouple 'My Stations' feature from server module
Also add in check whether to show the respective link or just
a disclaimer on the landing page.
2019-08-14 16:11:17 +02:00