mirror of
https://github.com/sle118/squeezelite-esp32.git
synced 2025-12-07 12:07:09 +03:00
duration is now 1ms units & don't get cspot artwork when display disabled
This commit is contained in:
@@ -728,7 +728,7 @@ CONFIG_ESP_EVENT_POST_FROM_IRAM_ISR=y
|
|||||||
#
|
#
|
||||||
# ESP HTTP client
|
# ESP HTTP client
|
||||||
#
|
#
|
||||||
CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS
|
CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS=y
|
||||||
# CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH is not set
|
# CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH is not set
|
||||||
# end of ESP HTTP client
|
# end of ESP HTTP client
|
||||||
|
|
||||||
|
|||||||
@@ -700,7 +700,7 @@ CONFIG_ESP_EVENT_POST_FROM_IRAM_ISR=y
|
|||||||
#
|
#
|
||||||
# ESP HTTP client
|
# ESP HTTP client
|
||||||
#
|
#
|
||||||
CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS
|
CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS=y
|
||||||
# CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH is not set
|
# CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH is not set
|
||||||
# end of ESP HTTP client
|
# end of ESP HTTP client
|
||||||
|
|
||||||
|
|||||||
@@ -281,6 +281,13 @@ void displayer_artwork(uint8_t *data) {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/****************************************************************************************
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
bool displayer_can_artwork(void) {
|
||||||
|
return displayer.artwork.active;
|
||||||
|
}
|
||||||
|
|
||||||
/****************************************************************************************
|
/****************************************************************************************
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -40,4 +40,5 @@ void displayer_control(enum displayer_cmd_e cmd, ...);
|
|||||||
void displayer_metadata(char *artist, char *album, char *title);
|
void displayer_metadata(char *artist, char *album, char *title);
|
||||||
void displayer_artwork(uint8_t *data);
|
void displayer_artwork(uint8_t *data);
|
||||||
void displayer_timer(enum displayer_time_e mode, int elapsed, int duration);
|
void displayer_timer(enum displayer_time_e mode, int elapsed, int duration);
|
||||||
|
bool displayer_can_artwork(void);
|
||||||
char * display_get_supported_drivers(void);
|
char * display_get_supported_drivers(void);
|
||||||
|
|||||||
@@ -119,8 +119,7 @@ static void cspotTask(void *pvParameters) {
|
|||||||
switch (event.eventType) {
|
switch (event.eventType) {
|
||||||
case CSpotEventType::TRACK_INFO: {
|
case CSpotEventType::TRACK_INFO: {
|
||||||
TrackInfo track = std::get<TrackInfo>(event.data);
|
TrackInfo track = std::get<TrackInfo>(event.data);
|
||||||
// duration is in chunks of 0.5 ms
|
cspot.cHandler(CSPOT_TRACK, 44100, track.duration, track.artist.c_str(),
|
||||||
cspot.cHandler(CSPOT_TRACK, 44100, track.duration / 2, track.artist.c_str(),
|
|
||||||
track.album.c_str(), track.name.c_str(), track.imageUrl.c_str());
|
track.album.c_str(), track.name.c_str(), track.imageUrl.c_str());
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -144,7 +144,7 @@ static bool cmd_handler(cspot_event_t event, ...) {
|
|||||||
int duration = va_arg(args, int);
|
int duration = va_arg(args, int);
|
||||||
char *artist = va_arg(args, char*), *album = va_arg(args, char*), *title = va_arg(args, char*);
|
char *artist = va_arg(args, char*), *album = va_arg(args, char*), *title = va_arg(args, char*);
|
||||||
char *artwork = va_arg(args, char*);
|
char *artwork = va_arg(args, char*);
|
||||||
if (artwork) {
|
if (artwork && displayer_can_artwork()) {
|
||||||
ESP_LOGI(TAG, "requesting artwork %s", artwork);
|
ESP_LOGI(TAG, "requesting artwork %s", artwork);
|
||||||
http_download(artwork, 128*1024, got_artwork, NULL);
|
http_download(artwork, 128*1024, got_artwork, NULL);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user