Commit Graph

6705 Commits

Author SHA1 Message Date
Alain Nussbaumer 8b586728b6 [web] Change to Pinia store 2024-08-22 21:34:45 +02:00
ejurgensen ed16cc7928 [scan] Fix playlist scanner ignoring lines starting with non-ascii chars
Resolves #1795
2024-08-20 19:05:36 +02:00
ejurgensen 92495a7fac [httpd] Fix crash if websocket init fails, e.g. port can't be bound
Ref PR #1792
2024-08-14 17:44:22 +02:00
Fabian Groffen 282e227c64 [mpd] bump supported version to 0.22.4
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
2024-08-13 16:10:56 +02:00
Fabian Groffen a0d7c1a34f [mpd] add binarylimit command (unused still)
Maintain the binary limit, and use the default MPD uses too.  This comes
in handy when we are going to send binary responses such as in PR #1780

Signed-off-by: Fabian Groffen <grobian@gentoo.org>
2024-08-13 16:10:56 +02:00
Fabian Groffen 42ac0528a9 [mpd] update server version to 0.21.0
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
2024-08-12 10:40:36 +02:00
Fabian Groffen c0331f527e [mpd] implement oneshot for single mode as noop for 0.21 protocol
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
2024-08-12 10:40:36 +02:00
Fabian Groffen 8eae74257d [mpd] add "httpd" output plugin when enable_http_plugin
Return MPD-compatible output of plugin type "httpd" when
enable_http_plugin in mpd section of the config is set.

Signed-off-by: Fabian Groffen <grobian@gentoo.org>
2024-08-10 20:38:41 +02:00
Fabian Groffen 8f3c99ec43 [mpd] add option enable_httpd_plugin
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
2024-08-10 20:38:41 +02:00
Fabian Groffen 5e68381fe4 [mpd] add "plugin" to outputs response
The plugin key is used by some clients to determine whether local
playback is possible via HTTP stream, so mimick it.

Signed-off-by: Fabian Groffen <grobian@gentoo.org>
2024-08-10 20:38:41 +02:00
Fabian Groffen b2a957cdec [mpd] return outputs by ascending ID
Simply casting the speaker ID from a 64-bits int to an unsigned short
and hoping that there will be no clashes is just optimistic.  Use an
ascending number instead which is what MPD does too.  The MPD server
specifically documents no persistence in these IDs so we can simply
enumerate the speakers to meet the requirements.

Signed-off-by: Fabian Groffen <grobian@gentoo.org>
2024-08-10 20:38:41 +02:00
ejurgensen d672332750 [xcode] Fix last seconds being skipped when custom filters enabled
Seems EOF was not marked towards the ffmpeg filtergraph via a NULL frame to
av_buffersrc_add_frame(). This meant that the end of the track would get
stuck in the filters.

Fixes #1787
2024-08-09 17:42:58 +02:00
ejurgensen 297de1409a [xcode] Fix comment 2024-08-09 16:03:11 +02:00
ejurgensen dab9089f8e [rcp] Fix for RCP devices not getting removed 2024-08-08 00:22:41 +02:00
github-actions[bot] 96cd401852 [web] Rebuild web interface 2024-08-05 19:23:12 +00:00
Alain Nussbaumer 56cea74f38 [i18n] Add traditional Chinese 2024-08-05 21:22:42 +02:00
github-actions[bot] cdd81af979 [web] Rebuild web interface 2024-08-05 19:19:17 +00:00
Alain Nussbaumer 2f21e91610
Merge pull request #1789 from dwong33/master
Amendement of translation and introduction of Traditional Chinese translation
2024-08-05 21:18:48 +02:00
Alain Nussbaumer cabd8a3497
Missing traditional Chinese translation 2024-08-05 21:18:09 +02:00
Alain Nussbaumer def9c7c513
Update zh-TW.json
Using hyphens instead of underscores.
2024-08-05 21:15:43 +02:00
Dwong33 5924e001df
Update index.js to add Traditional Chinese translation 2024-08-05 10:38:38 -04:00
Dwong33 1129e65f61
Introduction to Traditional Chinese translation
Introduction to traditional Chinese, it is a variation of Chinese mainly used in Taiwan, Hong Kong and overseas Chinese communities.
2024-08-05 10:32:42 -04:00
Dwong33 74f82c396e
Update and rename zh.json to zh-CN.json
Introduction of Traditional Chinese, so change the name to to zh-CN. Also a correction to a translation.
2024-08-05 10:28:55 -04:00
ejurgensen cab0204d29 [httpd] Fix for password-based auth for Apple Music
Adds handling of the username from Apple Music that contain colon. Example:
iTunes_Music/1.4.5 (Macintosh; OS X 14.5) AppleWebKit/618.2.12.11.6 build/36 (dt:1):password

Closes #1778
2024-08-02 16:34:57 +02:00
ejurgensen 59bba5e261 [scan] Fix missing rescan if a file is modified quickly multiple times
If db_timestamp == file_mtime we didn't rescan, just pinged the file in the db

Fixes #1782
2024-07-26 16:04:01 +02:00
ejurgensen 90a79090ea [docs] Add documentation of --mdns-no-xxx options to command line help
Closes #1781
2024-07-25 22:53:56 +02:00
Alain Nussbaumer 53b06e26e3 [doc] Fix notes style 2024-07-20 23:05:35 +02:00
Alain Nussbaumer 9fe89a028e [doc] Add note for playback on iOS devices 2024-07-20 23:02:06 +02:00
ejurgensen 13131f43ef [httpd] Workaround evhttp_connection_get_addr() issue in libevent 2.1.6 and 8
Fixes #1775
2024-07-05 16:02:06 +02:00
ejurgensen be1bacf278 [cfg] Add "none" as "trusted_networks" option 2024-07-05 16:00:47 +02:00
ejurgensen bcdd3b2f65 [cache] Silence false gcc maybe-uninitialized warning 2024-06-25 23:39:06 +02:00
ejurgensen f87b65f086 [misc] Add missing include of stdlib
Thanks @LordMyschkin. Closes #1772.
2024-06-25 23:38:24 +02:00
github-actions[bot] d9818434a0 [web] Rebuild web interface 2024-06-25 18:55:16 +00:00
Alain Nussbaumer fc0c6cca77 [web] Update to newer versions of library for security reason 2024-06-25 20:54:46 +02:00
ejurgensen 5542492d33 [xcode] Fix calculation of estimated wav sizes (causing M1001 crash)
Fix regression from commit 3ee9204 where wav size calculation was changed. The
new method caused Soundbridge M1001 to reboot, and the likely cause seems to be
that the sizes in the wav header may not be multiples of channels x
bytes_per_sample, so typically 4.

Resolves #1770
2024-06-24 23:55:32 +02:00
ejurgensen 7ddb4e9bbb [httpd] Fix startup crash after merge commit 4cbce79
With debug level loggint, the crash would be preceeded with "Checking if client
'(null)' is a speaker"

Resolves #1771
2024-06-22 17:34:04 +02:00
ejurgensen d6d46de399 [misc] Fixup missing "== 0" in commit c30f44f 2024-06-17 23:35:03 +02:00
ejurgensen 82a0e77eb6 [config] Keep "cache_path" option but mark as deprecated
So OwnTone will still start if user has previously configured "cache_path"
2024-06-17 23:04:20 +02:00
ejurgensen 4cbce79a0f Merge branch 'rsp_daap_format3' 2024-06-17 22:37:52 +02:00
ejurgensen 7dd34792ea [cache] Multitreaded header encoding 2024-06-17 22:25:20 +02:00
ejurgensen 088c393dd6 [httpd/cache] Misc fixing up 2024-06-17 22:25:20 +02:00
ejurgensen 2d9200fcdf [cache] Try to fix cache thread blocking the rest of the server 2024-06-17 22:25:20 +02:00
ejurgensen ff2d0b4ab1 [httpd] Check speaker settings to determine DAAP/RSP stream format 2024-06-17 22:25:20 +02:00
ejurgensen 62b42ce354 [misc/player] Introduce output ability to announce supported formats
Also introduce default output format and selected device format, should the
user want another format.

As part of this, change enum player_format in player.h to enum media_format in
misc.h so that it is akin to struct media_quality.

Modify json API to support this.
2024-06-17 22:25:20 +02:00
ejurgensen 9f719ca155 [player/jsonapi/db] Add interface to get and set an output format 2024-06-17 22:25:20 +02:00
ejurgensen c079df5da7 [cache/config] Refactor cache so daap/artwork/xcode is cached in separate db's
Also change config so that the user can just configure a data directory instead
of complete path to each database.
2024-06-17 22:25:20 +02:00
ejurgensen 2efad1466f [cache] Add support for storing MP4 headers 2024-06-17 22:05:07 +02:00
ejurgensen 4a08644806 [xcode] Change the signature of transcode_setup/transcode_en/decode_setup()
Should make it easier to add/remove parameters without changing all calls to the
functions throughout the code.

Also adds an interface through which to call make_mp4_header().
2024-06-17 22:05:07 +02:00
ejurgensen 9dbec4b99e [misc] Move endianess utils from rtp_common.h to misc.h
So that transcode.c can also use them.
2024-06-17 22:05:07 +02:00
ejurgensen 725419d4ac [xcode] Do without _GNU_SOURCE, MacOS doesn't like it 2024-06-17 22:05:07 +02:00