Commit Graph

5966 Commits

Author SHA1 Message Date
ejurgensen
4ae73fa9b4 [httpd] Move internal declarations to httpd_internal.h 2023-03-07 21:01:10 +01:00
ejurgensen
2778088c52 [httpd] Refactor to use modules for daap, dacp, json api etc.
Removes a lot of code duplication which hopefully will make it easier to add
support for evhtp as http engine.
2023-03-07 21:01:10 +01:00
ejurgensen
83b8a4eb3f [http] Use curl for URL parsing instead of depending on httpd
Makes it easier to make the httpd parsing internal.
2023-03-07 21:01:10 +01:00
ejurgensen
2e31a3d4f3 [misc] 'unsigned short' instead of 'short unsigned' as arg to net_evhttp_bind() 2023-03-07 21:01:10 +01:00
ejurgensen
316d932d99 [dmap] Move dmap_send_error() to dacp_send_error()
Means dmap_common doesn't need a dependency to httpd and http replying is kept
within httpd_xxx modules.
2023-03-07 21:01:10 +01:00
ejurgensen
631996f133 [mpd] Decouple mpd and httpd
mpd is based on evhttp, so if httpd should use another backend they need to be
decoupled. No need to use httpd_send_reply/error, since CORS headers are not
relevant to MPD artwork serving.
2023-03-07 21:01:10 +01:00
ejurgensen
23979d223c [httpd] Refactor http handlers so they are initialized centrally
Means regex.h doesn't need to be in httpd.h making it easier to e.g. experiment
with evhtp.
2023-03-07 21:01:10 +01:00
ejurgensen
5f342ea60b [httpd/artwork] Drop support for libevent <2.1.4 2023-03-07 21:01:10 +01:00
Diederik de Haas
d38b07bbad Stop ignoring changes to debian dir
This project has no `debian` directory (anymore?), so there's no need to
ignore what happens there.
Removing it would also make packaging for Debian (based) distros easier.
2023-03-05 20:46:34 +01:00
ejurgensen
f9c50b80fc Bump version to 28.6 2023-03-02 23:25:23 +01:00
ejurgensen
e02d891130 ChangeLog for OwnTone 28.6 2023-03-02 23:23:26 +01:00
ejurgensen
6ade24c935 [xcode] Support for user-configured ffmpeg filters
Closes #1583 and #290
2023-02-25 16:48:17 +01:00
ejurgensen
2272f99599 [artwork] Fix for --disable-spotify broken in commit c8e46aa 2023-02-06 22:59:27 +01:00
ejurgensen
070cf6a5fc [spotify] Some cleanup of webapi client 2023-02-06 22:38:44 +01:00
ejurgensen
eee011180f [spotify] Make web api client thread safe
Protect http_session with a lock and don't use mutating globals in utility
functions where it is less clear if they are protected.
2023-02-06 22:38:44 +01:00
ejurgensen
c8e46aad42 [artwork] Make Spotify online artwork getter thread safe
By making the global struct online_source's read-only. Before, the Spotify
handler was modifying auth_secret in a non-thread safe way.
2023-02-06 22:38:44 +01:00
whatdoineed2do/Ray
cc3cceaa99 [web-src] remove absolute paths in index.html and force vite generation to allow reverse proxy from an subpath 2023-02-05 17:16:07 +01:00
ejurgensen
8b6336b91d [xcode] Protect against memleak if future ffmpeg doesn't free options
Can happen if ffmpeg doesn't recognize all the options
2023-02-05 17:14:17 +01:00
ejurgensen
aa2512837e
Merge pull request #1574 from LordMyschkin/german
[web-ui] Minor improvements to german translation
2023-01-24 13:31:23 -08:00
lordmyschkin
6ac88d677b minor improvments to german translation 2023-01-23 18:58:42 +01:00
Alain Nussbaumer
879feab518 [web] Fix for error messages not displaying #1500 2023-01-23 04:37:43 -08:00
ejurgensen
40ac39b6df
Merge pull request #1572 from whatdoineed2do/web-directory-fix
[web] directory modal handling fix
2023-01-23 04:35:00 -08:00
whatdoineed2do/Ray
dd1b39b347 [web] directory modal handling fix 2023-01-21 21:46:14 +00:00
LordMyschkin
4f848948e7
[web] German translation
German translation

Co-authored-by: lordmyschkin <martin@dieroths.at>
2023-01-21 16:50:06 +01:00
ejurgensen
0d15e2a34d [docs] Fix typo in json-api.md 2023-01-10 16:55:18 +01:00
ejurgensen
dbbe0a519d
[docs] Update installation.md, new OpenWrt instructions 2023-01-06 11:42:07 -08:00
ejurgensen
e18ef0edd9
[docs] Update installation.md, OwnTone broken in OpenWrt 22.03.2 2023-01-01 19:02:30 +01:00
ejurgensen
af07f9eeb4 [scan] Changes to commit 9a3cb3b7
* 'split_genre' -> 'only_first_genre' + changed description
* fix memleak on multiple genre tags
2022-12-29 20:07:30 +01:00
whatdoineed2do/Ray
0c43de9735 [scan] option to use first genre on multi token genres
multiple genres are either supported by format (see flac/orbis) or are
handled by convention (see mp3) - ffmpeg presents either case as a
single string, seperated by ';' (ie "Pop;Rock")

Currently the server/db does not support multiple genres and will store
the ffmpeg string as-is which is unlikely the user intention.

Introduce 'split_genre' to take the first genre token
2022-12-29 20:07:30 +01:00
ejurgensen
46f87720fb [docs] Add JSON API documentation of api/library/add
Closes #1561
2022-12-28 12:31:38 +01:00
ejurgensen
c23c2fdc45 [httpd] Addendum to commit 017e09d: More fixing up of libevent warnings 2022-12-26 17:16:58 +01:00
ejurgensen
fc83d807e0 [docs] Note in installation.md about login requirement to get GH artifacts
Closes #1560
2022-12-26 10:09:11 +01:00
ejurgensen
b9b5f8b113 [cfg] Set AM_SILENT_RULES to yes 2022-12-26 10:04:07 +01:00
ejurgensen
017e09d7c3 [httpd] Fix evhttp_connection_get_peer() const char warning for newer libevent 2022-12-25 20:09:38 +01:00
ejurgensen
b70188f4b8 [spotify] Fix commit 5e7bf182 to avoid picking too large images 2022-12-21 23:29:44 +01:00
ejurgensen
5e7bf1826c [spotify] Fix poor artwork resolution on playback from playlist start
Closes #1559
2022-12-21 17:39:41 +01:00
ejurgensen
82a5672d99 [docs] Fix markdown 2022-12-20 17:40:57 +01:00
ejurgensen
c8455f936a [docs] Add building.md to mkdocs navigation 2022-12-20 17:26:36 +01:00
ejurgensen
ecc2912155 [docs] Simplify install instructions
Many users probably just want the simple apt approach for RPi, or alternatively
some other precomiled solution, so let installation.md focus on them and put the
build instructions in a separate building.md.
2022-12-20 17:14:12 +01:00
ejurgensen
9ca6eb906f
[docs] Fix link in README to the docs 2022-12-20 14:59:37 +01:00
ejurgensen
10a51a0af9
Merge pull request #1556 from whatdoineed2do/before-epoch-date_released
[db,scan,jsonapi] bug fix to handle date_released before 1970
2022-12-14 22:38:58 +01:00
whatdoineed2do/Ray
7d26c2c954 [db,scan,jsonapi] bug fix to handle date_released before 1970, storing -ve values in db 2022-12-13 17:38:07 +00:00
ejurgensen
1357fdf78e
Merge pull request #1557 from pgenera/patch-1
Fix typo: "runnning"
2022-12-12 22:30:51 +01:00
Phil Genera
cfd63faf75
Fix typo: "runnning" 2022-12-12 11:40:38 -05:00
ejurgensen
7c0474b743 [player] Don't stop/clear queue on speaker 'prevent-playback' or 'busy'
When 'prevent-playback' or 'busy' is sent by a single playing speaker, we just
want to pause playback and not clear the queue

Closes #1553
2022-11-20 22:38:33 +01:00
ejurgensen
d468fd358e [spotify] Select best artwork size even when not ordered descending
Spotify web API docs say that images are ordered wideest first, but that isn't
happening right now, so don't rely on that for size selection.

Also makes sure we pick an image even when max_w is smaller than smallest
available image.
2022-10-30 20:31:58 +01:00
ejurgensen
49f442bf9e
Merge pull request #1547 from owntone/xcode_fixup1
Adjustments to ffmpeg/transcoding
2022-10-28 21:19:58 +02:00
ejurgensen
1379914857 [xcode] See if we can do without asking decoder for specific sample rate/channels
We use filters now, so shouldn't be necessary.

request_sample_fmt and request_channel_layout was added with commit 73b2d08.
2022-10-26 17:22:41 +02:00
ejurgensen
684f55f603 [xcode] Align how ffmpeg API checks are done 2022-10-26 17:22:41 +02:00
ejurgensen
4ff850cd3d [xcode] A bit of refactoring 2022-10-26 17:22:29 +02:00