Commit Graph

18721 Commits

Author SHA1 Message Date
Max Kellermann
a4ead670ed subprojects: add libmpdclient wrap 2023-12-20 17:15:29 +01:00
Max Kellermann
303d981099 subprojects: add lame 2023-12-20 16:50:13 +01:00
Max Kellermann
7727311df7 meson.build: disable "openssl:asm"
Work around "call to undeclared function "asm" on Android.
2023-12-20 16:30:16 +01:00
Max Kellermann
5f54a8e94e release v0.23.15
-----BEGIN PGP SIGNATURE-----
 
 iQJBBAABCgArFiEEA5IzWngIOJSkMBxDI26KWMbbRRIFAmWDBpUNHG1heEBibGFy
 Zy5kZQAKCRAjbopYxttFEm/yD/oCg59J/hUm+pyVtS9X74UAaoVH+icwZetvj5Ui
 DMFCZ7N3sCeXq+at7ZBsSCFXEIynjMZwyXMusJbz3lGmjOC7eZ5QH/jNlMNu1ERg
 m3cninK3MJ5+hWQoKJJGbSkLHCwer2gBBI7NMe1w9evZLXLAZd6+YHV3xTeBSm1d
 uAaIJgVe6qM6UTRKn8x5XBK3KK8f2joXSaWF+gKrZELEEo4zrVHR3ANqajxpSN+j
 QA3rcWghUD9pDilpDZoV5/DxkMDceuK10uM5Bxfjstq4EUpk6QvSf37CPOtYs5FE
 52X68yWix7HsNjljC2TYSogmBqzhRc9JnYM4lP8d7XE0y3mrF+Xsc8psfZAjFE0v
 TKxQKJRjXJnl6/2k7zTOV5hE5HNEouIuJg7QtQa2Z1mWv95k+iqVYO4xbBPKWt+7
 VboWGTHZMOmOWReweDnDcJ092f1AAfIe3oItjjkMWwRC2yhNLb+6tlM4UtHS4Wga
 2eZHYUAnk80vI/l4Bly5KLvR9WBv5x0nDe5sWaZ1k3heSUxtQrtm0LzFG/bXcyoD
 rgz0N6wRoHKvg3Ztobe4N1RqtcLCLlO8s9ZvlgPsjQH0+QJaJ+xxRJiu976VxD+C
 UOCBedcLuJLZF+rXh1EJAxrAwYm3y3QZ6KH6TJvgVK8vGQXz505dhFIbMM5ks2vl
 DkTq2Q==
 =n4dl
 -----END PGP SIGNATURE-----

Merge tag 'v0.23.15'

release v0.23.15
2023-12-20 16:23:58 +01:00
Max Kellermann
b8bfc98618 release v0.23.15 2023-12-20 16:21:57 +01:00
Max Kellermann
6e6f72a521 win32/HResult: convert assert() to runtime check to work around -Walloc-size-larger-than 2023-12-20 16:15:58 +01:00
Max Kellermann
a654c5d643 Revert "android: Fix MPD shutdown from settings UI"
This reverts commit 94b5b9f370.  It was
not necessary for branch v0.23.x because there, Break() is
thread-safe; this was only changed later by commit
a3b32819b1
2023-12-20 16:15:58 +01:00
Max Kellermann
c5d6aa169f lib/curl/patches: refresh no_CMAKE_C_IMPLICIT_LINK_LIBRARIES.patch for 7.85.0 2023-12-20 13:43:20 +01:00
Max Kellermann
c1c67286d3 python/build/libs.py: update CURL to 8.5.0 2023-12-20 13:28:54 +01:00
borine
2fb34697c7 input/plugins/Alsa: catch all exceptions
snd_pcm_poll_descriptors_revents() may return any error code; the
ALSA docs do not constrain the permitted values. A 'hw' device
will only ever return an error if the pfd array passed in is
invalid (-EINVAL), but other I/O plugins may return arbitary
errors. For example a network-based device may return -EPIPE etc.
The resulting exception thrown by
AlsaNonBlockPcm::DispatchSockets() must be caught to prevent the
mpd process from being aborted.
2023-12-20 13:27:25 +01:00
Colin Edwards
94b5b9f370 android: Fix MPD shutdown from settings UI 2023-12-20 13:27:16 +01:00
Max Kellermann
a9467513e1 doc/developer.rst: add missing return type to code style sample 2023-12-20 13:26:48 +01:00
borine
17d944f6ce input/plugins/Alsa: limit ALSA buffer time to 2 seconds maximum
Some ALSA capture devices can have very large buffers, holding 10
seconds or more audio. Using the maximum buffer size with such
devices leads to unacceptably large, and unnecessary, latency.
Also, some ALSA drivers (e.g. HDA Intel PCH) report an invalid
maximum period size, and the period size that mpd calculates from
the maximum buffer size results in "Invalid argument" error when
applying the hw_params. Note that the "default" capture device on
many cards includes the "dsnoop" plugin which imposes a buffer
size of 16384 frames, so that "alsa://" works OK but
"alsa://plughw" or "alsa://hw" both fail.

Limit the maximum buffer time for ALSA input devices to a more useable
2 seconds, thereby avoiding both the above problems.
2023-12-20 13:26:24 +01:00
Max Kellermann
0f82f18652 python/build/libs.py: update CURL to 8.4.0 2023-12-20 13:25:08 +01:00
Max Kellermann
3db3e577f1 python/build/libs.py: update OpenSSL to 3.1.4 2023-12-20 13:25:04 +01:00
Max Kellermann
37ee821947 python/build/libs.py: update FFmpeg to 6.1 2023-12-20 13:25:00 +01:00
Max Kellermann
916ab9a7e6 python/build/libs.py: update openmpt to 0.7.3 2023-12-20 13:24:57 +01:00
Max Kellermann
1802cf9fd1 python/build/cmake.py: add CMAKE_FIND_ROOT_PATH on Windows
Works around CURL build failure because cmake insists on using
/usr/include/zlib.h.
2023-12-20 13:24:53 +01:00
Max Kellermann
1bf7d30623 subprojects: update fmt to 10.1.1-1 2023-12-20 13:24:14 +01:00
naglis
b2d89253a6 doc/protocol.rst: mention song id lifetime 2023-12-20 13:23:03 +01:00
Max Kellermann
7727630f24 Merge branch 'alsa_input_exception' of https://github.com/borine/MPD 2023-12-20 13:21:37 +01:00
Max Kellermann
e2f8c9a4c2 Merge branch 'android_action' of https://github.com/DDRBoxman/MPD 2023-12-20 10:55:44 +01:00
Max Kellermann
22dbfec126 Merge branch 'android_shutdown' of https://github.com/DDRBoxman/MPD 2023-12-20 10:54:35 +01:00
Max Kellermann
efc462eebf Merge branch 'doc-features' of https://github.com/mxjeff/MPD 2023-12-20 10:53:34 +01:00
Max Kellermann
c3883e2fe0
Merge pull request #1911 from MusicPlayerDaemon/dependabot/github_actions/actions/setup-python-5
build(deps): bump actions/setup-python from 4 to 5
2023-12-20 10:53:16 +01:00
Colin Edwards
16c91a3f4b android: Fix MPD shutdown from settings UI 2023-12-19 22:05:03 -06:00
Colin Edwards
80bb5a0542 android: Add github action
This lives under a separate workflow so it can have different ignore paths.
2023-12-19 17:25:25 -06:00
Colin Edwards
906d58a918 android: migrate app build system to use gradle
Most of the Android specific meson code has been removed and replaced with
the grade build system.

The new meson build scripts build and move the libmpd.so binaries into the correct
location that gradle expects. After than gradle handles building the rest of the Android app.

Icons and banners have been updated for the modern app packaging expectations.

For reference here was the figma template Google provides that I used to back the png versions
for older versions of Android <https://www.figma.com/community/file/1283953738855070149>
2023-12-17 22:38:34 -06:00
kaliko
23b34fe142 Document new added-since filter introduced in 1615fbc 2023-12-17 10:00:19 +01:00
Colin Edwards
8d6f503e04 android: require NDK r26b
This fixes `no member named 'invocable' in namespace 'std'`
2023-12-13 12:01:30 -06:00
Colin Edwards
3284a61f43 android: build with java 8 target
The latest Android `sdkmanager` tool requires a version of the jdk that no longer
supports Java 7 as a target
2023-12-13 11:50:21 -06:00
Colin Edwards
c1a852d0e8 android: Pick toolchain based on current OS 2023-12-13 11:48:22 -06:00
Colin Edwards
4c90ad3704 android: realdir doesn't accept nonexistant files on macOS 2023-12-13 11:47:18 -06:00
Colin Edwards
a92a801f08 android: List additional build dependencies in instructions 2023-12-13 10:38:51 -06:00
Colin Edwards
9059c6c657 android: find apksigner in build tools folder 2023-12-13 10:35:52 -06:00
dependabot[bot]
bd6f8cd585
build(deps): bump actions/setup-python from 4 to 5
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-11 15:18:48 +00:00
Max Kellermann
a6024f476a subprojects: add openssl 2023-12-11 11:01:32 +01:00
Max Kellermann
dfef30a737 subprojects: add curl 2023-12-11 10:53:43 +01:00
Max Kellermann
55ca3709ef subprojects: add ogg, flac, opus 2023-12-11 10:53:43 +01:00
Max Kellermann
ab6ae7520d doc/developer.rst: add missing return type to code style sample 2023-12-10 08:24:05 +01:00
Max Kellermann
c7a300d12d meson.build: static liburing wrap build 2023-12-09 21:00:18 +01:00
Max Kellermann
babf322695 subprojects: update liburing to 2.4-2 2023-12-09 20:55:13 +01:00
Max Kellermann
642de1510b lib/curl/Request: remove redundant CurlEasy wrapper methods 2023-12-09 20:54:21 +01:00
borine
f61eed1a82 input/plugins/Alsa: catch all exceptions
snd_pcm_poll_descriptors_revents() may return any error code; the
ALSA docs do not constrain the permitted values. A 'hw' device
will only ever return an error if the pfd array passed in is
invalid (-EINVAL), but other I/O plugins may return arbitary
errors. For example a network-based device may return -EPIPE etc.
The resulting exception thrown by
AlsaNonBlockPcm::DispatchSockets() must be caught to prevent the
mpd process from being aborted.
2023-11-26 15:36:42 +00:00
Max Kellermann
e9c40dead8 output/SharedPipeConsumer: add noexcept 2023-11-26 08:48:45 +01:00
Max Kellermann
31bf6d29b9 BulkEdit: forbid copying 2023-11-26 08:47:06 +01:00
Max Kellermann
571b6f0cdb queue/IdTable: add constexpr (because we can) 2023-11-26 08:43:50 +01:00
Max Kellermann
e7b9e8de14 queue/IdTable: add API docs 2023-11-26 08:43:20 +01:00
Max Kellermann
321553d5f9 queue/IdTable: add explicit 2023-11-26 08:41:57 +01:00
Max Kellermann
4d23068c5c queue/IdTable: use C++11 initializer 2023-11-26 08:41:19 +01:00