mirror of
https://github.com/sle118/squeezelite-esp32.git
synced 2025-12-31 11:56:32 +03:00
Compare commits
6 Commits
I2S-4MFlas
...
SqueezeAmp
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
df36b65916 | ||
|
|
d9a6b37d19 | ||
|
|
0629b017b1 | ||
|
|
43aa62ac56 | ||
|
|
22c2044f17 | ||
|
|
5066351b24 |
@@ -2,6 +2,9 @@ cmake_minimum_required(VERSION 3.5)
|
|||||||
set(EXTRA_COMPONENT_DIRS components/platform_console/app_recovery components/platform_console/app_squeezelite )
|
set(EXTRA_COMPONENT_DIRS components/platform_console/app_recovery components/platform_console/app_squeezelite )
|
||||||
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
|
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
|
||||||
add_definitions(-DMODEL_NAME=SqueezeESP32)
|
add_definitions(-DMODEL_NAME=SqueezeESP32)
|
||||||
|
if(NOT DEFINED DEPTH)
|
||||||
|
set(DEPTH "16")
|
||||||
|
endif()
|
||||||
message(STATUS "Building RECOVERY")
|
message(STATUS "Building RECOVERY")
|
||||||
project(recovery)
|
project(recovery)
|
||||||
set_property(TARGET recovery.elf PROPERTY RECOVERY_PREFIX app_recovery )
|
set_property(TARGET recovery.elf PROPERTY RECOVERY_PREFIX app_recovery )
|
||||||
|
|||||||
@@ -387,6 +387,7 @@ int set_squeezelite_player_name(FILE * f,const char * name){
|
|||||||
|
|
||||||
FREE_AND_NULL(nvs_config);
|
FREE_AND_NULL(nvs_config);
|
||||||
FREE_AND_NULL(argv);
|
FREE_AND_NULL(argv);
|
||||||
|
free(cleaned_name);
|
||||||
return nerrors;
|
return nerrors;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,10 +30,11 @@ set_source_files_properties(flac.c
|
|||||||
)
|
)
|
||||||
|
|
||||||
add_definitions(-DLINKALL -DLOOPBACK -DNO_FAAD -DEMBEDDED -DTREMOR_ONLY -DCUSTOM_VERSION=${BUILD_NUMBER})
|
add_definitions(-DLINKALL -DLOOPBACK -DNO_FAAD -DEMBEDDED -DTREMOR_ONLY -DCUSTOM_VERSION=${BUILD_NUMBER})
|
||||||
if(DEFINED DEPTH AND ${DEPTH} EQUAL "32")
|
|
||||||
add_definitions(-DBYTES_PER_FRAME=8)
|
if (${DEPTH} EQUAL "32")
|
||||||
else()
|
add_definitions(-DBYTES_PER_FRAME=8)
|
||||||
add_definitions(-DRESAMPLE16 -DBYTES_PER_FRAME=4)
|
else()
|
||||||
endif()
|
add_definitions(-DRESAMPLE16 -DBYTES_PER_FRAME=4)
|
||||||
|
endif()
|
||||||
|
|
||||||
add_compile_options (-O3 )
|
add_compile_options (-O3 )
|
||||||
|
|||||||
@@ -15,6 +15,7 @@
|
|||||||
#include "esp_timer.h"
|
#include "esp_timer.h"
|
||||||
#include "esp_wifi.h"
|
#include "esp_wifi.h"
|
||||||
#include "monitor.h"
|
#include "monitor.h"
|
||||||
|
#include "platform_config.h"
|
||||||
|
|
||||||
mutex_type slimp_mutex;
|
mutex_type slimp_mutex;
|
||||||
|
|
||||||
@@ -69,3 +70,27 @@ u16_t get_plugged(void) {
|
|||||||
u8_t get_battery(void) {
|
u8_t get_battery(void) {
|
||||||
return (battery_level_svc() * 16) / 100;
|
return (battery_level_svc() * 16) / 100;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void set_name(char *name) {
|
||||||
|
char *cmd = config_alloc_get(NVS_TYPE_STR, "autoexec1");
|
||||||
|
char *p, *q;
|
||||||
|
|
||||||
|
if (!cmd) return;
|
||||||
|
|
||||||
|
if ((p = strstr(cmd, " -n")) != NULL) {
|
||||||
|
q = p + 3;
|
||||||
|
// in case some smart dude has a " -" in player's name
|
||||||
|
while ((q = strstr(q, " -")) != NULL) {
|
||||||
|
if (!strchr(q, '"') || !strchr(q+1, '"')) break;
|
||||||
|
q++;
|
||||||
|
}
|
||||||
|
if (q) memmove(p, q, strlen(q) + 1);
|
||||||
|
else *p = '\0';
|
||||||
|
}
|
||||||
|
|
||||||
|
asprintf(&q, "%s -n \"%s\"", cmd, name);
|
||||||
|
config_set_value(NVS_TYPE_STR, "autoexec1", q);
|
||||||
|
|
||||||
|
free(q);
|
||||||
|
free(cmd);
|
||||||
|
}
|
||||||
|
|||||||
@@ -79,6 +79,9 @@ u16_t get_RSSI(void); // must provide or define as 0xffff
|
|||||||
u16_t get_plugged(void); // must provide or define as 0x0
|
u16_t get_plugged(void); // must provide or define as 0x0
|
||||||
u8_t get_battery(void); // must provide 0..15 or define as 0x0
|
u8_t get_battery(void); // must provide 0..15 or define as 0x0
|
||||||
|
|
||||||
|
// set name
|
||||||
|
void set_name(char *name); // can be defined as an empty macro
|
||||||
|
|
||||||
// to be defined to nothing if you don't want to support these
|
// to be defined to nothing if you don't want to support these
|
||||||
extern struct visu_export_s {
|
extern struct visu_export_s {
|
||||||
pthread_mutex_t mutex;
|
pthread_mutex_t mutex;
|
||||||
|
|||||||
@@ -114,7 +114,11 @@ void set_volume(unsigned left, unsigned right) {
|
|||||||
bool test_open(const char *device, unsigned rates[], bool userdef_rates) {
|
bool test_open(const char *device, unsigned rates[], bool userdef_rates) {
|
||||||
memset(rates, 0, MAX_SUPPORTED_SAMPLERATES * sizeof(unsigned));
|
memset(rates, 0, MAX_SUPPORTED_SAMPLERATES * sizeof(unsigned));
|
||||||
if (!strcasecmp(device, "I2S")) {
|
if (!strcasecmp(device, "I2S")) {
|
||||||
unsigned _rates[] = { 192000, 176400, 96000, 88200, 48000,
|
unsigned _rates[] = {
|
||||||
|
#if BYTES_PER_FRAME == 4
|
||||||
|
192000, 176400,
|
||||||
|
#endif
|
||||||
|
96000, 88200, 48000,
|
||||||
44100, 32000, 24000, 22050, 16000,
|
44100, 32000, 24000, 22050, 16000,
|
||||||
12000, 11025, 8000, 0 };
|
12000, 11025, 8000, 0 };
|
||||||
memcpy(rates, _rates, sizeof(_rates));
|
memcpy(rates, _rates, sizeof(_rates));
|
||||||
|
|||||||
@@ -480,6 +480,9 @@ static void process_setd(u8_t *pkt, int len) {
|
|||||||
LOG_INFO("set name: %s", setd->data);
|
LOG_INFO("set name: %s", setd->data);
|
||||||
// confirm change to server
|
// confirm change to server
|
||||||
sendSETDName(setd->data);
|
sendSETDName(setd->data);
|
||||||
|
#if EMBEDDED
|
||||||
|
set_name(player_name);
|
||||||
|
#endif
|
||||||
// write name to name_file if -N option set
|
// write name to name_file if -N option set
|
||||||
if (name_file) {
|
if (name_file) {
|
||||||
FILE *fp = fopen(name_file, "w");
|
FILE *fp = fopen(name_file, "w");
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ body {
|
|||||||
margin-bottom:50px;
|
margin-bottom:50px;
|
||||||
padding-left: 12px;
|
padding-left: 12px;
|
||||||
padding-right: 12px;
|
padding-right: 12px;
|
||||||
|
padding-bottom: 45px;
|
||||||
}
|
}
|
||||||
a {
|
a {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
|
|||||||
Reference in New Issue
Block a user