Commit Graph

18291 Commits

Author SHA1 Message Date
Max Kellermann
199037c682 config: allow configuring partitions
This just allows creating empty partitions.  More features to come.
2022-07-13 15:18:06 +02:00
Max Kellermann
64f84d5468 player/Listener: add virtual method OnPlayerState(), wrapping IDLE_PLAYER
This eliminates most of the remaining global "player" idle events.
2022-07-13 14:11:36 +02:00
Max Kellermann
047561dc22 player/Listener: add virtual method OnPlayerError()
Replaces two global idle_add() calls.
2022-07-13 14:11:36 +02:00
Max Kellermann
a542a0804a Partition: OnPlayerTagModified() emits IDLE_PLAYER
Replaces one global idle_add() call.
2022-07-13 14:11:36 +02:00
Max Kellermann
cddeb2a0df io/BufferedOutputStream: add missing #include 2022-07-13 14:11:36 +02:00
Max Kellermann
de1d443db1 output/Multiple: use std::size_t 2022-07-13 13:26:27 +02:00
Max Kellermann
e2040ed395 output/Multiple: use [[gnu::pure]] 2022-07-13 13:25:17 +02:00
Max Kellermann
8a0ba7a725 output/Control: GetName() returns std::string& 2022-07-13 13:23:21 +02:00
Max Kellermann
e74788ea32 output/Control: inline GetName() 2022-07-13 13:13:23 +02:00
Max Kellermann
fef79931c5 output/Multiple: pass std::string_view to FindByName() 2022-07-13 13:13:21 +02:00
Max Kellermann
b52b0ac85a *: use BufferedOutputStream::Fmt() 2022-07-13 13:10:14 +02:00
Max Kellermann
9a30286289 io/BufferedOutputStream: add libfmt support 2022-07-13 12:52:20 +02:00
Max Kellermann
20310437d0 .github/workflows/build.yml: build with Ubuntu 22.04 as well 2022-07-13 12:41:04 +02:00
Max Kellermann
d29e1544bf .github/workflows/build.yml: explicitly select ubuntu-20.04
According to https://github.com/actions/virtual-environments
"ubuntu-latest" maps to "ubuntu-20.04", even though "ubuntu-22.04" is
also available.  Since our job description is very specific to
"ubuntu-20.04", let's select this explicitly.
2022-07-13 12:37:02 +02:00
Max Kellermann
ae4f4d3533 config/Data: add WithEach(ConfigBlockOption)
To improve error messages without making callers more complex.
2022-07-13 11:05:21 +02:00
Max Kellermann
89a18b49a7 Merge branch 'v0.23.x' 2022-07-12 14:00:00 +02:00
guihkx
956c5faebb output/PipeWire: set app icon
Closes #1564
2022-07-12 13:59:05 +02:00
Max Kellermann
eb589b0a46 output/osx: fix CI failure 2022-07-12 13:37:46 +02:00
Max Kellermann
52eff41379 remove Haiku support
Haiku support has been unmaintained for many years, and this issue has
been open for more than 5 years, but apparently the Haiku people have
lost interest:

 https://github.com/MusicPlayerDaemon/MPD/pull/183

Haiku support was therefore deprecated by this commit 4 years ago:
7de8fd04a4 - but in those 4 years, nobody stepped up to adopt
maintainership.

I don't have any computer (or VM) with Haiku and there is no CI with
Haiku support, so I'm unable to adapt the Haiku specific code to API
changes.

Closes https://github.com/MusicPlayerDaemon/MPD/issues/182
Closes https://github.com/MusicPlayerDaemon/MPD/issues/185
2022-07-12 13:14:49 +02:00
Max Kellermann
45071607aa output/Interface: pass std::span to Play() 2022-07-12 12:59:47 +02:00
Max Kellermann
f5d104e7af output/ao: simplify write_size checks 2022-07-12 12:58:19 +02:00
Max Kellermann
4f8d2a8b1c output/alsa: use std::byte instead of uint8_t 2022-07-12 12:36:39 +02:00
Max Kellermann
0158a2b6b9 encoder/flac: refactor input buffer conversion 2022-07-12 12:31:08 +02:00
Max Kellermann
00b8ced09f encoder/flac: Read() returns the internal buffer 2022-07-12 12:19:55 +02:00
Max Kellermann
5f51be43cf decoder/flac: add noexcept and inline 2022-07-12 12:15:06 +02:00
Max Kellermann
3e2de560ca encoder/lame: eliminate the audio_format field 2022-07-12 12:08:46 +02:00
Max Kellermann
c266fb7758 encoder/lame: Read() returns the internal buffer
Eliminate memcpy() calls.
2022-07-12 12:01:31 +02:00
Max Kellermann
0d09f307b2 encoder/Interface: update API docs 2022-07-12 12:00:02 +02:00
Max Kellermann
eb7d321cb8 Merge branch 'v0.23.x' 2022-07-12 11:59:49 +02:00
Max Kellermann
cd0396c1f1 test/run_decoder: remove bogus assert() 2022-07-12 11:59:14 +02:00
Max Kellermann
79f9b268bb increment version number to 0.23.9 2022-07-12 11:50:47 +02:00
Max Kellermann
b45f3c8deb Android release 0.23.8 2022-07-12 11:48:41 +02:00
Max Kellermann
f8a8de87e4 android/AndroidManifest.xml: update targetSdkVersion to 30
Required by Google Play.
2022-07-12 11:48:41 +02:00
Max Kellermann
2183f0553c android/meson.build: use apksigner instead of jarsigner
This is required for targetSdkVersion=30.

apksigner requires running zipalign first.
2022-07-12 11:48:41 +02:00
Max Kellermann
7e14f8f830 encoder/Interface: pass std::span to Write() and Read() 2022-07-12 10:33:59 +02:00
Max Kellermann
28e044a36a encoder/lame: use std::size_t 2022-07-12 10:14:10 +02:00
Max Kellermann
4e91d8279b encoder/vorbis: use std::size_t 2022-07-12 10:11:30 +02:00
Max Kellermann
ff3d8509ac output/httpd: move buffer to stack 2022-07-12 10:08:26 +02:00
Max Kellermann
e861d4f83d encoder/interface: make Read() noexcept (all implementations are) 2022-07-12 10:07:38 +02:00
Max Kellermann
31d89b36cf encoder/flac: use std::size_t 2022-07-12 09:53:16 +02:00
Max Kellermann
6b24344031 output/shout: move buffer to stack 2022-07-12 09:48:02 +02:00
Max Kellermann
c55e250c45 encoder/Interface: include cleanup 2022-07-11 22:38:24 +02:00
Max Kellermann
cd241a93c1 util/DynamicFifoBuffer: pass std::span to Append() 2022-07-11 22:38:24 +02:00
Max Kellermann
53acf7ae82 encoder/*: use std::byte instead of uint8_t 2022-07-11 22:38:24 +02:00
Max Kellermann
c34f6ed8c0 decoder/Client: pass std::span to SubmitData() 2022-07-11 22:37:38 +02:00
Max Kellermann
329c448d30 decoder/wavpack: use [[gnu::pure]] 2022-07-11 22:11:42 +02:00
Max Kellermann
a6619e9a13 decoder/wavpack: add "constexpr" and "const_cast" 2022-07-11 22:10:11 +02:00
Max Kellermann
24ce5da2b8 decoder/wavpack: convert pointer to reference 2022-07-11 22:08:49 +02:00
Max Kellermann
b4f751080d decoder/wavpack: add noexcept 2022-07-11 22:06:10 +02:00
Max Kellermann
6d02edebc9 decoder/wavpack: rename "samples" to "frames" 2022-07-11 22:05:49 +02:00